From ca0e3515be0accaef2e63ae1bdf01a082a359f35 Mon Sep 17 00:00:00 2001 From: Superminaren Date: Sat, 23 May 2026 22:36:06 +0200 Subject: [PATCH] Cleanup --- hardware_test/.pio/build/project.checksum | 1 - .../.pio/build/rp2040_usb/.sconsign314.dblite | Bin 311100 -> 0 bytes .../FrameworkArduino/BluetoothDebug.cpp.o | Bin 680 -> 0 bytes .../rp2040_usb/FrameworkArduino/Bootsel.cpp.o | Bin 1628 -> 0 bytes .../FrameworkArduino/CoreMutex.cpp.o | Bin 1304 -> 0 bytes .../rp2040_usb/FrameworkArduino/FS.cpp.o | Bin 19028 -> 0 bytes .../FrameworkArduino/PIOProgram.cpp.o | Bin 4976 -> 0 bytes .../FrameworkArduino/RP2040Support.cpp.o | Bin 992 -> 0 bytes .../FrameworkArduino/Semihosting.cpp.o | Bin 24936 -> 0 bytes .../FrameworkArduino/SerialPIO.cpp.o | Bin 11328 -> 0 bytes .../FrameworkArduino/SerialUART.cpp.o | Bin 11736 -> 0 bytes .../FrameworkArduino/SerialUSB.cpp.o | Bin 9372 -> 0 bytes .../FrameworkArduino/StackThunk.cpp.o | Bin 3260 -> 0 bytes .../rp2040_usb/FrameworkArduino/Tone.cpp.o | Bin 5544 -> 0 bytes .../rp2040_usb/FrameworkArduino/USB.cpp.o | Bin 13404 -> 0 bytes .../rp2040_usb/FrameworkArduino/WMath.cpp.o | Bin 1324 -> 0 bytes .../FrameworkArduino/_freertos.cpp.o | Bin 672 -> 0 bytes .../FrameworkArduino/api/Common.cpp.o | Bin 1148 -> 0 bytes .../FrameworkArduino/api/IPAddress.cpp.o | Bin 5892 -> 0 bytes .../FrameworkArduino/api/PluggableUSB.cpp.o | Bin 2640 -> 0 bytes .../FrameworkArduino/api/Print.cpp.o | Bin 11056 -> 0 bytes .../FrameworkArduino/api/Stream.cpp.o | Bin 5668 -> 0 bytes .../FrameworkArduino/api/String.cpp.o | Bin 22472 -> 0 bytes .../FrameworkArduino/cyw43_wrappers.cpp.o | Bin 680 -> 0 bytes .../rp2040_usb/FrameworkArduino/delay.cpp.o | Bin 1636 -> 0 bytes .../FrameworkArduino/freertos/croutine.c.o | Bin 672 -> 0 bytes .../freertos/event_groups.c.o | Bin 676 -> 0 bytes .../freertos/freertos-lwip.cpp.o | Bin 676 -> 0 bytes .../freertos/freertos-main.cpp.o | Bin 676 -> 0 bytes .../FrameworkArduino/freertos/heap_3a.c.o | Bin 668 -> 0 bytes .../FrameworkArduino/freertos/list.c.o | Bin 668 -> 0 bytes .../freertos/lwip_freertos.c.o | Bin 676 -> 0 bytes .../freertos/mpu_wrappers_v2_asm.c.o | Bin 680 -> 0 bytes .../FrameworkArduino/freertos/port.c.o | Bin 668 -> 0 bytes .../FrameworkArduino/freertos/portASM.S.o | Bin 544 -> 0 bytes .../FrameworkArduino/freertos/portasm.c.o | Bin 668 -> 0 bytes .../FrameworkArduino/freertos/queue.c.o | Bin 668 -> 0 bytes .../freertos/stream_buffer.c.o | Bin 676 -> 0 bytes .../FrameworkArduino/freertos/tasks.c.o | Bin 668 -> 0 bytes .../FrameworkArduino/freertos/timers.c.o | Bin 668 -> 0 bytes .../freertos/variantHooks.cpp.o | Bin 676 -> 0 bytes .../FrameworkArduino/gprof_gmon.c.o | Bin 4456 -> 0 bytes .../FrameworkArduino/gprof_shim.S.o | Bin 788 -> 0 bytes .../FrameworkArduino/libb64/cdecode.cpp.o | Bin 2280 -> 0 bytes .../FrameworkArduino/libb64/cencode.cpp.o | Bin 2104 -> 0 bytes .../rp2040_usb/FrameworkArduino/lock.cpp.o | Bin 3456 -> 0 bytes .../FrameworkArduino/lwip/src/api/api_lib.c.o | Bin 668 -> 0 bytes .../FrameworkArduino/lwip/src/api/api_msg.c.o | Bin 668 -> 0 bytes .../FrameworkArduino/lwip/src/api/err.c.o | Bin 664 -> 0 bytes .../FrameworkArduino/lwip/src/api/if_api.c.o | Bin 668 -> 0 bytes .../FrameworkArduino/lwip/src/api/netbuf.c.o | Bin 668 -> 0 bytes .../FrameworkArduino/lwip/src/api/netdb.c.o | Bin 668 -> 0 bytes .../lwip/src/api/netifapi.c.o | Bin 672 -> 0 bytes .../FrameworkArduino/lwip/src/api/sockets.c.o | Bin 668 -> 0 bytes .../FrameworkArduino/lwip/src/api/tcpip.c.o | Bin 668 -> 0 bytes .../src/apps/altcp_tls/altcp_tls_mbedtls.c.o | Bin 680 -> 0 bytes .../apps/altcp_tls/altcp_tls_mbedtls_mem.c.o | Bin 684 -> 0 bytes .../lwip/src/apps/lwiperf/lwiperf.c.o | Bin 9560 -> 0 bytes .../lwip/src/apps/mdns/mdns.c.o | Bin 20740 -> 0 bytes .../lwip/src/apps/mdns/mdns_domain.c.o | Bin 6540 -> 0 bytes .../lwip/src/apps/mdns/mdns_out.c.o | Bin 8892 -> 0 bytes .../lwip/src/apps/mqtt/mqtt.c.o | Bin 10420 -> 0 bytes .../lwip/src/apps/netbiosns/netbiosns.c.o | Bin 2864 -> 0 bytes .../lwip/src/apps/smtp/smtp.c.o | Bin 11256 -> 0 bytes .../lwip/src/apps/snmp/snmp_asn1.c.o | Bin 672 -> 0 bytes .../lwip/src/apps/snmp/snmp_core.c.o | Bin 672 -> 0 bytes .../lwip/src/apps/snmp/snmp_mib2.c.o | Bin 672 -> 0 bytes .../lwip/src/apps/snmp/snmp_mib2_icmp.c.o | Bin 676 -> 0 bytes .../src/apps/snmp/snmp_mib2_interfaces.c.o | Bin 684 -> 0 bytes .../lwip/src/apps/snmp/snmp_mib2_ip.c.o | Bin 676 -> 0 bytes .../lwip/src/apps/snmp/snmp_mib2_snmp.c.o | Bin 676 -> 0 bytes .../lwip/src/apps/snmp/snmp_mib2_system.c.o | Bin 680 -> 0 bytes .../lwip/src/apps/snmp/snmp_mib2_tcp.c.o | Bin 676 -> 0 bytes .../lwip/src/apps/snmp/snmp_mib2_udp.c.o | Bin 676 -> 0 bytes .../lwip/src/apps/snmp/snmp_msg.c.o | Bin 672 -> 0 bytes .../lwip/src/apps/snmp/snmp_netconn.c.o | Bin 676 -> 0 bytes .../lwip/src/apps/snmp/snmp_pbuf_stream.c.o | Bin 680 -> 0 bytes .../lwip/src/apps/snmp/snmp_raw.c.o | Bin 672 -> 0 bytes .../lwip/src/apps/snmp/snmp_scalar.c.o | Bin 672 -> 0 bytes .../src/apps/snmp/snmp_snmpv2_framework.c.o | Bin 684 -> 0 bytes .../lwip/src/apps/snmp/snmp_snmpv2_usm.c.o | Bin 676 -> 0 bytes .../lwip/src/apps/snmp/snmp_table.c.o | Bin 672 -> 0 bytes .../lwip/src/apps/snmp/snmp_threadsync.c.o | Bin 676 -> 0 bytes .../lwip/src/apps/snmp/snmp_traps.c.o | Bin 672 -> 0 bytes .../lwip/src/apps/snmp/snmpv3.c.o | Bin 668 -> 0 bytes .../lwip/src/apps/snmp/snmpv3_mbedtls.c.o | Bin 676 -> 0 bytes .../lwip/src/apps/sntp/sntp.c.o | Bin 6764 -> 0 bytes .../lwip/src/apps/tftp/tftp.c.o | Bin 7032 -> 0 bytes .../FrameworkArduino/lwip/src/core/altcp.c.o | Bin 668 -> 0 bytes .../lwip/src/core/altcp_alloc.c.o | Bin 672 -> 0 bytes .../lwip/src/core/altcp_tcp.c.o | Bin 672 -> 0 bytes .../FrameworkArduino/lwip/src/core/def.c.o | Bin 2344 -> 0 bytes .../FrameworkArduino/lwip/src/core/dns.c.o | Bin 7104 -> 0 bytes .../lwip/src/core/inet_chksum.c.o | Bin 2488 -> 0 bytes .../FrameworkArduino/lwip/src/core/init.c.o | Bin 1144 -> 0 bytes .../FrameworkArduino/lwip/src/core/ip.c.o | Bin 776 -> 0 bytes .../lwip/src/core/ipv4/acd.c.o | Bin 664 -> 0 bytes .../lwip/src/core/ipv4/autoip.c.o | Bin 668 -> 0 bytes .../lwip/src/core/ipv4/dhcp.c.o | Bin 13512 -> 0 bytes .../lwip/src/core/ipv4/etharp.c.o | Bin 6072 -> 0 bytes .../lwip/src/core/ipv4/icmp.c.o | Bin 2764 -> 0 bytes .../lwip/src/core/ipv4/igmp.c.o | Bin 5376 -> 0 bytes .../lwip/src/core/ipv4/ip4.c.o | Bin 5076 -> 0 bytes .../lwip/src/core/ipv4/ip4_addr.c.o | Bin 3044 -> 0 bytes .../lwip/src/core/ipv4/ip4_frag.c.o | Bin 5212 -> 0 bytes .../lwip/src/core/ipv6/dhcp6.c.o | Bin 668 -> 0 bytes .../lwip/src/core/ipv6/ethip6.c.o | Bin 668 -> 0 bytes .../lwip/src/core/ipv6/icmp6.c.o | Bin 668 -> 0 bytes .../lwip/src/core/ipv6/inet6.c.o | Bin 668 -> 0 bytes .../lwip/src/core/ipv6/ip6.c.o | Bin 664 -> 0 bytes .../lwip/src/core/ipv6/ip6_addr.c.o | Bin 672 -> 0 bytes .../lwip/src/core/ipv6/ip6_frag.c.o | Bin 672 -> 0 bytes .../lwip/src/core/ipv6/mld6.c.o | Bin 668 -> 0 bytes .../lwip/src/core/ipv6/nd6.c.o | Bin 664 -> 0 bytes .../FrameworkArduino/lwip/src/core/mem.c.o | Bin 3340 -> 0 bytes .../FrameworkArduino/lwip/src/core/memp.c.o | Bin 7516 -> 0 bytes .../FrameworkArduino/lwip/src/core/netif.c.o | Bin 7544 -> 0 bytes .../FrameworkArduino/lwip/src/core/pbuf.c.o | Bin 9392 -> 0 bytes .../FrameworkArduino/lwip/src/core/raw.c.o | Bin 4288 -> 0 bytes .../FrameworkArduino/lwip/src/core/stats.c.o | Bin 668 -> 0 bytes .../FrameworkArduino/lwip/src/core/sys.c.o | Bin 664 -> 0 bytes .../FrameworkArduino/lwip/src/core/tcp.c.o | Bin 18096 -> 0 bytes .../FrameworkArduino/lwip/src/core/tcp_in.c.o | Bin 13064 -> 0 bytes .../lwip/src/core/tcp_out.c.o | Bin 10872 -> 0 bytes .../lwip/src/core/timeouts.c.o | Bin 4772 -> 0 bytes .../FrameworkArduino/lwip/src/core/udp.c.o | Bin 5956 -> 0 bytes .../lwip/src/netif/bridgeif.c.o | Bin 4316 -> 0 bytes .../lwip/src/netif/bridgeif_fdb.c.o | Bin 2232 -> 0 bytes .../lwip/src/netif/ethernet.c.o | Bin 1992 -> 0 bytes .../lwip/src/netif/lowpan6.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/lowpan6_ble.c.o | Bin 672 -> 0 bytes .../lwip/src/netif/lowpan6_common.c.o | Bin 676 -> 0 bytes .../lwip/src/netif/ppp/auth.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/ccp.c.o | Bin 664 -> 0 bytes .../lwip/src/netif/ppp/chap-md5.c.o | Bin 672 -> 0 bytes .../lwip/src/netif/ppp/chap-new.c.o | Bin 672 -> 0 bytes .../lwip/src/netif/ppp/chap_ms.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/demand.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/eap.c.o | Bin 664 -> 0 bytes .../lwip/src/netif/ppp/ecp.c.o | Bin 664 -> 0 bytes .../lwip/src/netif/ppp/eui64.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/fsm.c.o | Bin 664 -> 0 bytes .../lwip/src/netif/ppp/ipcp.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/ipv6cp.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/lcp.c.o | Bin 664 -> 0 bytes .../lwip/src/netif/ppp/magic.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/mppe.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/multilink.c.o | Bin 672 -> 0 bytes .../lwip/src/netif/ppp/polarssl/arc4.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/polarssl/des.c.o | Bin 664 -> 0 bytes .../lwip/src/netif/ppp/polarssl/md4.c.o | Bin 664 -> 0 bytes .../lwip/src/netif/ppp/polarssl/md5.c.o | Bin 664 -> 0 bytes .../lwip/src/netif/ppp/polarssl/sha1.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/ppp.c.o | Bin 664 -> 0 bytes .../lwip/src/netif/ppp/pppapi.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/pppcrypt.c.o | Bin 672 -> 0 bytes .../lwip/src/netif/ppp/pppoe.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/pppol2tp.c.o | Bin 672 -> 0 bytes .../lwip/src/netif/ppp/pppos.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/upap.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/utils.c.o | Bin 668 -> 0 bytes .../lwip/src/netif/ppp/vj.c.o | Bin 664 -> 0 bytes .../lwip/src/netif/slipif.c.o | Bin 2288 -> 0 bytes .../FrameworkArduino/lwip/src/netif/zepif.c.o | Bin 668 -> 0 bytes .../FrameworkArduino/lwip_wrap.cpp.o | Bin 21460 -> 0 bytes .../rp2040_usb/FrameworkArduino/main.cpp.o | Bin 7960 -> 0 bytes .../FrameworkArduino/malloc-lock.cpp.o | Bin 2328 -> 0 bytes .../rp2040_usb/FrameworkArduino/posix.cpp.o | Bin 5204 -> 0 bytes .../rp2040_usb/FrameworkArduino/psram.cpp.o | Bin 668 -> 0 bytes .../FrameworkArduino/rp2350-memcpy.S.o | Bin 544 -> 0 bytes .../sdkoverride/async_context_freertos.c.o | Bin 684 -> 0 bytes .../async_context_threadsafe_background.c.o | Bin 11148 -> 0 bytes .../sdkoverride/btstack_flash_bank.cpp.o | Bin 684 -> 0 bytes .../btstack_run_loop_async_context.cpp.o | Bin 696 -> 0 bytes .../sdkoverride/cyw43_arch_freertos.c.o | Bin 680 -> 0 bytes .../cyw43_arch_threadsafe_background.c.o | Bin 2068 -> 0 bytes .../sdkoverride/cyw43_driver_freertos.cpp.o | Bin 684 -> 0 bytes .../sdkoverride/hid_device.c.o | Bin 1412 -> 0 bytes .../sdkoverride/inet_chksum.cpp.o | Bin 1036 -> 0 bytes .../sdkoverride/midi_device.c.o | Bin 1428 -> 0 bytes .../sdkoverride/msc_device.c.o | Bin 1412 -> 0 bytes .../sdkoverride/ncm_device.c.o | Bin 1412 -> 0 bytes .../sdkoverride/newlib_interface.c.o | Bin 1540 -> 0 bytes .../pico_bootsel_via_double_reset.c.o | Bin 1220 -> 0 bytes .../FrameworkArduino/stdlib_noniso.cpp.o | Bin 2976 -> 0 bytes .../FrameworkArduino/wiring_analog.cpp.o | Bin 6092 -> 0 bytes .../FrameworkArduino/wiring_digital.cpp.o | Bin 1992 -> 0 bytes .../FrameworkArduino/wiring_private.cpp.o | Bin 4364 -> 0 bytes .../FrameworkArduino/wiring_pulse.cpp.o | Bin 1300 -> 0 bytes .../FrameworkArduino/wiring_shift.cpp.o | Bin 1252 -> 0 bytes .../boot2_w25q080_2_padded_checksum.S.o | Bin 888 -> 0 bytes .../.pio/build/rp2040_usb/firmware.bin | Bin 84452 -> 0 bytes .../.pio/build/rp2040_usb/firmware.elf | Bin 908464 -> 0 bytes .../.pio/build/rp2040_usb/firmware.uf2 | Bin 168960 -> 0 bytes .../Adafruit_BusIO_Register.cpp.o | Bin 7212 -> 0 bytes .../Adafruit_GenericDevice.cpp.o | Bin 2236 -> 0 bytes .../Adafruit BusIO/Adafruit_I2CDevice.cpp.o | Bin 3000 -> 0 bytes .../Adafruit BusIO/Adafruit_SPIDevice.cpp.o | Bin 5864 -> 0 bytes .../rp2040_usb/lib0fd/libAdafruit BusIO.a | Bin 22016 -> 0 bytes .../build/rp2040_usb/lib153/SPI/SPI.cpp.o | Bin 17760 -> 0 bytes .../.pio/build/rp2040_usb/lib153/libSPI.a | Bin 19260 -> 0 bytes .../build/rp2040_usb/lib8d1/Wire/Wire.cpp.o | Bin 17124 -> 0 bytes .../.pio/build/rp2040_usb/lib8d1/libWire.a | Bin 18532 -> 0 bytes .../Adafruit GFX Library/Adafruit_GFX.cpp.o | Bin 34768 -> 0 bytes .../Adafruit_GrayOLED.cpp.o | Bin 7836 -> 0 bytes .../Adafruit_SPITFT.cpp.o | Bin 18072 -> 0 bytes .../lib903/Adafruit GFX Library/glcdfont.c.o | Bin 672 -> 0 bytes .../lib903/libAdafruit GFX Library.a | Bin 68858 -> 0 bytes .../build/rp2040_usb/libFrameworkArduino.a | Bin 600918 -> 0 bytes .../Adafruit_IS31FL3731.cpp.o | Bin 7264 -> 0 bytes .../libcd5/libAdafruit IS31FL3731 Library.a | Bin 8248 -> 0 bytes .../.pio/build/rp2040_usb/memmap_default.ld | 304 -- .../.pio/build/rp2040_usb/src/main.cpp.o | Bin 11076 -> 0 bytes .../rp2040_swd/Adafruit BusIO/.clang-format | 243 -- .../Adafruit BusIO/.github/ISSUE_TEMPLATE.md | 46 - .../.github/PULL_REQUEST_TEMPLATE.md | 26 - .../.github/workflows/githubci.yml | 33 - .../libdeps/rp2040_swd/Adafruit BusIO/.piopm | 1 - .../Adafruit_BusIO_Register.cpp | 384 --- .../Adafruit BusIO/Adafruit_BusIO_Register.h | 117 - .../Adafruit BusIO/Adafruit_GenericDevice.cpp | 90 - .../Adafruit BusIO/Adafruit_GenericDevice.h | 56 - .../Adafruit BusIO/Adafruit_I2CDevice.cpp | 320 -- .../Adafruit BusIO/Adafruit_I2CDevice.h | 36 - .../Adafruit BusIO/Adafruit_I2CRegister.h | 10 - .../Adafruit BusIO/Adafruit_SPIDevice.cpp | 512 --- .../Adafruit BusIO/Adafruit_SPIDevice.h | 149 - .../rp2040_swd/Adafruit BusIO/CMakeLists.txt | 11 - .../libdeps/rp2040_swd/Adafruit BusIO/LICENSE | 21 - .../rp2040_swd/Adafruit BusIO/README.md | 8 - .../rp2040_swd/Adafruit BusIO/component.mk | 1 - .../genericdevice_uartregtest/.uno.test.skip | 0 .../genericdevice_uartregtest.ino | 219 -- .../genericdevice_uarttest/.uno.test.skip | 0 .../genericdevice_uarttest.ino | 98 - .../i2c_address_detect/i2c_address_detect.ino | 22 - .../examples/i2c_readwrite/i2c_readwrite.ino | 45 - .../examples/i2c_registers/i2c_registers.ino | 43 - .../i2corspi_register/i2corspi_register.ino | 40 - .../examples/spi_modetest/spi_modetest.ino | 35 - .../examples/spi_readwrite/spi_readwrite.ino | 43 - .../spi_register_bits/spi_register_bits.ino | 268 -- .../examples/spi_registers/spi_registers.ino | 40 - .../Adafruit BusIO/library.properties | 9 - .../Adafruit GFX Library/.clang-format | 239 -- .../.github/ISSUE_TEMPLATE.md | 46 - .../.github/PULL_REQUEST_TEMPLATE.md | 26 - .../.github/workflows/githubci.yml | 36 - .../Adafruit GFX Library/.gitignore | 6 - .../rp2040_swd/Adafruit GFX Library/.piopm | 1 - .../Adafruit GFX Library/Adafruit_GFX.cpp | 2952 ----------------- .../Adafruit GFX Library/Adafruit_GFX.h | 406 --- .../Adafruit_GrayOLED.cpp | 422 --- .../Adafruit GFX Library/Adafruit_GrayOLED.h | 101 - .../Adafruit GFX Library/Adafruit_SPITFT.cpp | 2621 --------------- .../Adafruit GFX Library/Adafruit_SPITFT.h | 541 --- .../Adafruit_SPITFT_Macros.h | 6 - .../Adafruit GFX Library/CMakeLists.txt | 11 - .../Fonts/FreeMono12pt7b.h | 229 -- .../Fonts/FreeMono18pt7b.h | 365 -- .../Fonts/FreeMono24pt7b.h | 579 ---- .../Fonts/FreeMono9pt7b.h | 178 - .../Fonts/FreeMonoBold12pt7b.h | 252 -- .../Fonts/FreeMonoBold18pt7b.h | 425 --- .../Fonts/FreeMonoBold24pt7b.h | 674 ---- .../Fonts/FreeMonoBold9pt7b.h | 191 -- .../Fonts/FreeMonoBoldOblique12pt7b.h | 271 -- .../Fonts/FreeMonoBoldOblique18pt7b.h | 462 --- .../Fonts/FreeMonoBoldOblique24pt7b.h | 744 ----- .../Fonts/FreeMonoBoldOblique9pt7b.h | 205 -- .../Fonts/FreeMonoOblique12pt7b.h | 250 -- .../Fonts/FreeMonoOblique18pt7b.h | 400 --- .../Fonts/FreeMonoOblique24pt7b.h | 645 ---- .../Fonts/FreeMonoOblique9pt7b.h | 189 -- .../Fonts/FreeSans12pt7b.h | 272 -- .../Fonts/FreeSans18pt7b.h | 454 --- .../Fonts/FreeSans24pt7b.h | 729 ---- .../Fonts/FreeSans9pt7b.h | 203 -- .../Fonts/FreeSansBold12pt7b.h | 290 -- .../Fonts/FreeSansBold18pt7b.h | 483 --- .../Fonts/FreeSansBold24pt7b.h | 786 ----- .../Fonts/FreeSansBold9pt7b.h | 210 -- .../Fonts/FreeSansBoldOblique12pt7b.h | 319 -- .../Fonts/FreeSansBoldOblique18pt7b.h | 547 --- .../Fonts/FreeSansBoldOblique24pt7b.h | 895 ----- .../Fonts/FreeSansBoldOblique9pt7b.h | 229 -- .../Fonts/FreeSansOblique12pt7b.h | 304 -- .../Fonts/FreeSansOblique18pt7b.h | 520 --- .../Fonts/FreeSansOblique24pt7b.h | 842 ----- .../Fonts/FreeSansOblique9pt7b.h | 222 -- .../Fonts/FreeSerif12pt7b.h | 261 -- .../Fonts/FreeSerif18pt7b.h | 431 --- .../Fonts/FreeSerif24pt7b.h | 692 ---- .../Fonts/FreeSerif9pt7b.h | 197 -- .../Fonts/FreeSerifBold12pt7b.h | 273 -- .../Fonts/FreeSerifBold18pt7b.h | 464 --- .../Fonts/FreeSerifBold24pt7b.h | 761 ----- .../Fonts/FreeSerifBold9pt7b.h | 204 -- .../Fonts/FreeSerifBoldItalic12pt7b.h | 294 -- .../Fonts/FreeSerifBoldItalic18pt7b.h | 502 --- .../Fonts/FreeSerifBoldItalic24pt7b.h | 795 ----- .../Fonts/FreeSerifBoldItalic9pt7b.h | 217 -- .../Fonts/FreeSerifItalic12pt7b.h | 273 -- .../Fonts/FreeSerifItalic18pt7b.h | 452 --- .../Fonts/FreeSerifItalic24pt7b.h | 739 ----- .../Fonts/FreeSerifItalic9pt7b.h | 204 -- .../Adafruit GFX Library/Fonts/Org_01.h | 131 - .../Adafruit GFX Library/Fonts/Picopixel.h | 123 - .../Fonts/Tiny3x3a2pt7b.h | 133 - .../Adafruit GFX Library/Fonts/TomThumb.h | 477 --- .../rp2040_swd/Adafruit GFX Library/README.md | 47 - .../Adafruit GFX Library/component.mk | 1 - .../examples/GFXcanvas/GFXcanvas.ino | 113 - .../GFXcanvas/GFXcanvasSerialDemo.cpp | 92 - .../examples/GFXcanvas/GFXcanvasSerialDemo.h | 65 - .../examples/mock_ili9341/mock_ili9341.ino | 365 -- .../Adafruit GFX Library/fontconvert/Makefile | 12 - .../fontconvert/bdf2adafruit.py | 135 - .../fontconvert/fontconvert.c | 291 -- .../fontconvert/fontconvert_win.md | 88 - .../fontconvert/makefonts.sh | 38 - .../rp2040_swd/Adafruit GFX Library/gfxfont.h | 29 - .../Adafruit GFX Library/glcdfont.c | 143 - .../Adafruit GFX Library/library.properties | 10 - .../Adafruit GFX Library/license.txt | 24 - .../.github/ISSUE_TEMPLATE.md | 46 - .../.github/PULL_REQUEST_TEMPLATE.md | 26 - .../.github/workflows/githubci.yml | 32 - .../Adafruit IS31FL3731 Library/.piopm | 1 - .../Adafruit_IS31FL3731.cpp | 273 -- .../Adafruit_IS31FL3731.h | 65 - .../CODE_OF_CONDUCT.md | 137 - .../Adafruit IS31FL3731 Library/LICENSE | 21 - .../Adafruit IS31FL3731 Library/README.md | 1 - .../examples/gfxdemo/gfxdemo.ino | 107 - .../examples/manualanim/manualanim.ino | 43 - .../examples/swirldemo/swirldemo.ino | 32 - .../library.properties | 10 - .../.pio/libdeps/rp2040_swd/integrity.dat | 2 - .../rp2040_usb/Adafruit BusIO/.clang-format | 243 -- .../Adafruit BusIO/.github/ISSUE_TEMPLATE.md | 46 - .../.github/PULL_REQUEST_TEMPLATE.md | 26 - .../.github/workflows/githubci.yml | 33 - .../libdeps/rp2040_usb/Adafruit BusIO/.piopm | 1 - .../Adafruit_BusIO_Register.cpp | 384 --- .../Adafruit BusIO/Adafruit_BusIO_Register.h | 117 - .../Adafruit BusIO/Adafruit_GenericDevice.cpp | 90 - .../Adafruit BusIO/Adafruit_GenericDevice.h | 56 - .../Adafruit BusIO/Adafruit_I2CDevice.cpp | 320 -- .../Adafruit BusIO/Adafruit_I2CDevice.h | 36 - .../Adafruit BusIO/Adafruit_I2CRegister.h | 10 - .../Adafruit BusIO/Adafruit_SPIDevice.cpp | 512 --- .../Adafruit BusIO/Adafruit_SPIDevice.h | 149 - .../rp2040_usb/Adafruit BusIO/CMakeLists.txt | 11 - .../libdeps/rp2040_usb/Adafruit BusIO/LICENSE | 21 - .../rp2040_usb/Adafruit BusIO/README.md | 8 - .../rp2040_usb/Adafruit BusIO/component.mk | 1 - .../genericdevice_uartregtest/.uno.test.skip | 0 .../genericdevice_uartregtest.ino | 219 -- .../genericdevice_uarttest/.uno.test.skip | 0 .../genericdevice_uarttest.ino | 98 - .../i2c_address_detect/i2c_address_detect.ino | 22 - .../examples/i2c_readwrite/i2c_readwrite.ino | 45 - .../examples/i2c_registers/i2c_registers.ino | 43 - .../i2corspi_register/i2corspi_register.ino | 40 - .../examples/spi_modetest/spi_modetest.ino | 35 - .../examples/spi_readwrite/spi_readwrite.ino | 43 - .../spi_register_bits/spi_register_bits.ino | 268 -- .../examples/spi_registers/spi_registers.ino | 40 - .../Adafruit BusIO/library.properties | 9 - .../Adafruit GFX Library/.clang-format | 239 -- .../.github/ISSUE_TEMPLATE.md | 46 - .../.github/PULL_REQUEST_TEMPLATE.md | 26 - .../.github/workflows/githubci.yml | 36 - .../Adafruit GFX Library/.gitignore | 6 - .../rp2040_usb/Adafruit GFX Library/.piopm | 1 - .../Adafruit GFX Library/Adafruit_GFX.cpp | 2952 ----------------- .../Adafruit GFX Library/Adafruit_GFX.h | 406 --- .../Adafruit_GrayOLED.cpp | 422 --- .../Adafruit GFX Library/Adafruit_GrayOLED.h | 101 - .../Adafruit GFX Library/Adafruit_SPITFT.cpp | 2621 --------------- .../Adafruit GFX Library/Adafruit_SPITFT.h | 541 --- .../Adafruit_SPITFT_Macros.h | 6 - .../Adafruit GFX Library/CMakeLists.txt | 11 - .../Fonts/FreeMono12pt7b.h | 229 -- .../Fonts/FreeMono18pt7b.h | 365 -- .../Fonts/FreeMono24pt7b.h | 579 ---- .../Fonts/FreeMono9pt7b.h | 178 - .../Fonts/FreeMonoBold12pt7b.h | 252 -- .../Fonts/FreeMonoBold18pt7b.h | 425 --- .../Fonts/FreeMonoBold24pt7b.h | 674 ---- .../Fonts/FreeMonoBold9pt7b.h | 191 -- .../Fonts/FreeMonoBoldOblique12pt7b.h | 271 -- .../Fonts/FreeMonoBoldOblique18pt7b.h | 462 --- .../Fonts/FreeMonoBoldOblique24pt7b.h | 744 ----- .../Fonts/FreeMonoBoldOblique9pt7b.h | 205 -- .../Fonts/FreeMonoOblique12pt7b.h | 250 -- .../Fonts/FreeMonoOblique18pt7b.h | 400 --- .../Fonts/FreeMonoOblique24pt7b.h | 645 ---- .../Fonts/FreeMonoOblique9pt7b.h | 189 -- .../Fonts/FreeSans12pt7b.h | 272 -- .../Fonts/FreeSans18pt7b.h | 454 --- .../Fonts/FreeSans24pt7b.h | 729 ---- .../Fonts/FreeSans9pt7b.h | 203 -- .../Fonts/FreeSansBold12pt7b.h | 290 -- .../Fonts/FreeSansBold18pt7b.h | 483 --- .../Fonts/FreeSansBold24pt7b.h | 786 ----- .../Fonts/FreeSansBold9pt7b.h | 210 -- .../Fonts/FreeSansBoldOblique12pt7b.h | 319 -- .../Fonts/FreeSansBoldOblique18pt7b.h | 547 --- .../Fonts/FreeSansBoldOblique24pt7b.h | 895 ----- .../Fonts/FreeSansBoldOblique9pt7b.h | 229 -- .../Fonts/FreeSansOblique12pt7b.h | 304 -- .../Fonts/FreeSansOblique18pt7b.h | 520 --- .../Fonts/FreeSansOblique24pt7b.h | 842 ----- .../Fonts/FreeSansOblique9pt7b.h | 222 -- .../Fonts/FreeSerif12pt7b.h | 261 -- .../Fonts/FreeSerif18pt7b.h | 431 --- .../Fonts/FreeSerif24pt7b.h | 692 ---- .../Fonts/FreeSerif9pt7b.h | 197 -- .../Fonts/FreeSerifBold12pt7b.h | 273 -- .../Fonts/FreeSerifBold18pt7b.h | 464 --- .../Fonts/FreeSerifBold24pt7b.h | 761 ----- .../Fonts/FreeSerifBold9pt7b.h | 204 -- .../Fonts/FreeSerifBoldItalic12pt7b.h | 294 -- .../Fonts/FreeSerifBoldItalic18pt7b.h | 502 --- .../Fonts/FreeSerifBoldItalic24pt7b.h | 795 ----- .../Fonts/FreeSerifBoldItalic9pt7b.h | 217 -- .../Fonts/FreeSerifItalic12pt7b.h | 273 -- .../Fonts/FreeSerifItalic18pt7b.h | 452 --- .../Fonts/FreeSerifItalic24pt7b.h | 739 ----- .../Fonts/FreeSerifItalic9pt7b.h | 204 -- .../Adafruit GFX Library/Fonts/Org_01.h | 131 - .../Adafruit GFX Library/Fonts/Picopixel.h | 123 - .../Fonts/Tiny3x3a2pt7b.h | 133 - .../Adafruit GFX Library/Fonts/TomThumb.h | 477 --- .../rp2040_usb/Adafruit GFX Library/README.md | 47 - .../Adafruit GFX Library/component.mk | 1 - .../examples/GFXcanvas/GFXcanvas.ino | 113 - .../GFXcanvas/GFXcanvasSerialDemo.cpp | 92 - .../examples/GFXcanvas/GFXcanvasSerialDemo.h | 65 - .../examples/mock_ili9341/mock_ili9341.ino | 365 -- .../Adafruit GFX Library/fontconvert/Makefile | 12 - .../fontconvert/bdf2adafruit.py | 135 - .../fontconvert/fontconvert.c | 291 -- .../fontconvert/fontconvert_win.md | 88 - .../fontconvert/makefonts.sh | 38 - .../rp2040_usb/Adafruit GFX Library/gfxfont.h | 29 - .../Adafruit GFX Library/glcdfont.c | 143 - .../Adafruit GFX Library/library.properties | 10 - .../Adafruit GFX Library/license.txt | 24 - .../.github/ISSUE_TEMPLATE.md | 46 - .../.github/PULL_REQUEST_TEMPLATE.md | 26 - .../.github/workflows/githubci.yml | 32 - .../Adafruit IS31FL3731 Library/.piopm | 1 - .../Adafruit_IS31FL3731.cpp | 273 -- .../Adafruit_IS31FL3731.h | 65 - .../CODE_OF_CONDUCT.md | 137 - .../Adafruit IS31FL3731 Library/LICENSE | 21 - .../Adafruit IS31FL3731 Library/README.md | 1 - .../examples/gfxdemo/gfxdemo.ino | 107 - .../examples/manualanim/manualanim.ino | 43 - .../examples/swirldemo/swirldemo.ino | 32 - .../library.properties | 10 - .../.pio/libdeps/rp2040_usb/integrity.dat | 2 - hardware_test/pioold/build/project.checksum | 1 - .../build/rp2040_swd/.sconsign314.dblite | Bin 38459 -> 0 bytes .../build/rp2040_swd/cpp.linker_script.ld | 160 - .../Adafruit GFX Library/Adafruit_GFX.cpp.o | Bin 34784 -> 0 bytes .../Adafruit_GrayOLED.cpp.o | Bin 8012 -> 0 bytes .../Adafruit_SPITFT.cpp.o | Bin 16776 -> 0 bytes .../build/rp2040_swd/lib52c/SPI/SPI.cpp.o | Bin 5180 -> 0 bytes .../build/rp2040_swd/lib6f7/Wire/Wire.cpp.o | Bin 14040 -> 0 bytes .../Adafruit_BusIO_Register.cpp.o | Bin 7312 -> 0 bytes .../Adafruit_GenericDevice.cpp.o | Bin 2320 -> 0 bytes .../Adafruit BusIO/Adafruit_I2CDevice.cpp.o | Bin 3128 -> 0 bytes .../Adafruit BusIO/Adafruit_SPIDevice.cpp.o | Bin 5964 -> 0 bytes .../rp2040_swd/Adafruit BusIO/.clang-format | 243 -- .../Adafruit BusIO/.github/ISSUE_TEMPLATE.md | 46 - .../.github/PULL_REQUEST_TEMPLATE.md | 26 - .../.github/workflows/githubci.yml | 33 - .../libdeps/rp2040_swd/Adafruit BusIO/.piopm | 1 - .../Adafruit_BusIO_Register.cpp | 384 --- .../Adafruit BusIO/Adafruit_BusIO_Register.h | 117 - .../Adafruit BusIO/Adafruit_GenericDevice.cpp | 90 - .../Adafruit BusIO/Adafruit_GenericDevice.h | 56 - .../Adafruit BusIO/Adafruit_I2CDevice.cpp | 320 -- .../Adafruit BusIO/Adafruit_I2CDevice.h | 36 - .../Adafruit BusIO/Adafruit_I2CRegister.h | 10 - .../Adafruit BusIO/Adafruit_SPIDevice.cpp | 512 --- .../Adafruit BusIO/Adafruit_SPIDevice.h | 149 - .../rp2040_swd/Adafruit BusIO/CMakeLists.txt | 11 - .../libdeps/rp2040_swd/Adafruit BusIO/LICENSE | 21 - .../rp2040_swd/Adafruit BusIO/README.md | 8 - .../rp2040_swd/Adafruit BusIO/component.mk | 1 - .../genericdevice_uartregtest/.uno.test.skip | 0 .../genericdevice_uartregtest.ino | 219 -- .../genericdevice_uarttest/.uno.test.skip | 0 .../genericdevice_uarttest.ino | 98 - .../i2c_address_detect/i2c_address_detect.ino | 22 - .../examples/i2c_readwrite/i2c_readwrite.ino | 45 - .../examples/i2c_registers/i2c_registers.ino | 43 - .../i2corspi_register/i2corspi_register.ino | 40 - .../examples/spi_modetest/spi_modetest.ino | 35 - .../examples/spi_readwrite/spi_readwrite.ino | 43 - .../spi_register_bits/spi_register_bits.ino | 268 -- .../examples/spi_registers/spi_registers.ino | 40 - .../Adafruit BusIO/library.properties | 9 - .../Adafruit GFX Library/.clang-format | 239 -- .../.github/ISSUE_TEMPLATE.md | 46 - .../.github/PULL_REQUEST_TEMPLATE.md | 26 - .../.github/workflows/githubci.yml | 36 - .../Adafruit GFX Library/.gitignore | 6 - .../rp2040_swd/Adafruit GFX Library/.piopm | 1 - .../Adafruit GFX Library/Adafruit_GFX.cpp | 2952 ----------------- .../Adafruit GFX Library/Adafruit_GFX.h | 406 --- .../Adafruit_GrayOLED.cpp | 422 --- .../Adafruit GFX Library/Adafruit_GrayOLED.h | 101 - .../Adafruit GFX Library/Adafruit_SPITFT.cpp | 2621 --------------- .../Adafruit GFX Library/Adafruit_SPITFT.h | 541 --- .../Adafruit_SPITFT_Macros.h | 6 - .../Adafruit GFX Library/CMakeLists.txt | 11 - .../Fonts/FreeMono12pt7b.h | 229 -- .../Fonts/FreeMono18pt7b.h | 365 -- .../Fonts/FreeMono24pt7b.h | 579 ---- .../Fonts/FreeMono9pt7b.h | 178 - .../Fonts/FreeMonoBold12pt7b.h | 252 -- .../Fonts/FreeMonoBold18pt7b.h | 425 --- .../Fonts/FreeMonoBold24pt7b.h | 674 ---- .../Fonts/FreeMonoBold9pt7b.h | 191 -- .../Fonts/FreeMonoBoldOblique12pt7b.h | 271 -- .../Fonts/FreeMonoBoldOblique18pt7b.h | 462 --- .../Fonts/FreeMonoBoldOblique24pt7b.h | 744 ----- .../Fonts/FreeMonoBoldOblique9pt7b.h | 205 -- .../Fonts/FreeMonoOblique12pt7b.h | 250 -- .../Fonts/FreeMonoOblique18pt7b.h | 400 --- .../Fonts/FreeMonoOblique24pt7b.h | 645 ---- .../Fonts/FreeMonoOblique9pt7b.h | 189 -- .../Fonts/FreeSans12pt7b.h | 272 -- .../Fonts/FreeSans18pt7b.h | 454 --- .../Fonts/FreeSans24pt7b.h | 729 ---- .../Fonts/FreeSans9pt7b.h | 203 -- .../Fonts/FreeSansBold12pt7b.h | 290 -- .../Fonts/FreeSansBold18pt7b.h | 483 --- .../Fonts/FreeSansBold24pt7b.h | 786 ----- .../Fonts/FreeSansBold9pt7b.h | 210 -- .../Fonts/FreeSansBoldOblique12pt7b.h | 319 -- .../Fonts/FreeSansBoldOblique18pt7b.h | 547 --- .../Fonts/FreeSansBoldOblique24pt7b.h | 895 ----- .../Fonts/FreeSansBoldOblique9pt7b.h | 229 -- .../Fonts/FreeSansOblique12pt7b.h | 304 -- .../Fonts/FreeSansOblique18pt7b.h | 520 --- .../Fonts/FreeSansOblique24pt7b.h | 842 ----- .../Fonts/FreeSansOblique9pt7b.h | 222 -- .../Fonts/FreeSerif12pt7b.h | 261 -- .../Fonts/FreeSerif18pt7b.h | 431 --- .../Fonts/FreeSerif24pt7b.h | 692 ---- .../Fonts/FreeSerif9pt7b.h | 197 -- .../Fonts/FreeSerifBold12pt7b.h | 273 -- .../Fonts/FreeSerifBold18pt7b.h | 464 --- .../Fonts/FreeSerifBold24pt7b.h | 761 ----- .../Fonts/FreeSerifBold9pt7b.h | 204 -- .../Fonts/FreeSerifBoldItalic12pt7b.h | 294 -- .../Fonts/FreeSerifBoldItalic18pt7b.h | 502 --- .../Fonts/FreeSerifBoldItalic24pt7b.h | 795 ----- .../Fonts/FreeSerifBoldItalic9pt7b.h | 217 -- .../Fonts/FreeSerifItalic12pt7b.h | 273 -- .../Fonts/FreeSerifItalic18pt7b.h | 452 --- .../Fonts/FreeSerifItalic24pt7b.h | 739 ----- .../Fonts/FreeSerifItalic9pt7b.h | 204 -- .../Adafruit GFX Library/Fonts/Org_01.h | 131 - .../Adafruit GFX Library/Fonts/Picopixel.h | 123 - .../Fonts/Tiny3x3a2pt7b.h | 133 - .../Adafruit GFX Library/Fonts/TomThumb.h | 477 --- .../rp2040_swd/Adafruit GFX Library/README.md | 47 - .../Adafruit GFX Library/component.mk | 1 - .../examples/GFXcanvas/GFXcanvas.ino | 113 - .../GFXcanvas/GFXcanvasSerialDemo.cpp | 92 - .../examples/GFXcanvas/GFXcanvasSerialDemo.h | 65 - .../examples/mock_ili9341/mock_ili9341.ino | 365 -- .../Adafruit GFX Library/fontconvert/Makefile | 12 - .../fontconvert/bdf2adafruit.py | 135 - .../fontconvert/fontconvert.c | 291 -- .../fontconvert/fontconvert_win.md | 88 - .../fontconvert/makefonts.sh | 38 - .../rp2040_swd/Adafruit GFX Library/gfxfont.h | 29 - .../Adafruit GFX Library/glcdfont.c | 143 - .../Adafruit GFX Library/library.properties | 10 - .../Adafruit GFX Library/license.txt | 24 - .../.github/ISSUE_TEMPLATE.md | 46 - .../.github/PULL_REQUEST_TEMPLATE.md | 26 - .../.github/workflows/githubci.yml | 32 - .../Adafruit IS31FL3731 Library/.piopm | 1 - .../Adafruit_IS31FL3731.cpp | 273 -- .../Adafruit_IS31FL3731.h | 65 - .../CODE_OF_CONDUCT.md | 137 - .../Adafruit IS31FL3731 Library/LICENSE | 21 - .../Adafruit IS31FL3731 Library/README.md | 1 - .../examples/gfxdemo/gfxdemo.ino | 107 - .../examples/manualanim/manualanim.ino | 43 - .../examples/swirldemo/swirldemo.ino | 32 - .../library.properties | 10 - .../pioold/libdeps/rp2040_swd/integrity.dat | 2 - hardware_test/platformio.ini | 19 - hardware_test/src/main.cpp | 400 --- rp2040_badge_primary/js/index.html | 1034 ------ rp2040_badge_primary/platformio.ini | 12 - rp2040_badge_primary/src/main.cpp | 830 ----- welcome_demo/.pio/build/project.checksum | 2 +- .../.pio/build/rp2040_usb/.sconsign314.dblite | Bin 319809 -> 323086 bytes .../.pio/build/rp2040_usb/firmware.elf | Bin 907816 -> 1045492 bytes .../.pio/build/rp2040_usb/firmware.uf2 | Bin 173056 -> 271360 bytes .../rp2040_usb/lib0b0/libAdafruit BusIO.a | Bin 22016 -> 22016 bytes .../lib0fd/libAdafruit IS31FL3731 Library.a | Bin 8248 -> 8248 bytes .../.pio/build/rp2040_usb/lib11a/libEEPROM.a | Bin 3862 -> 3862 bytes .../.pio/build/rp2040_usb/lib153/libSPI.a | Bin 19260 -> 19260 bytes .../lib5a0/libAdafruit GFX Library.a | Bin 68858 -> 68858 bytes .../.pio/build/rp2040_usb/lib8d1/libWire.a | Bin 18532 -> 18532 bytes .../build/rp2040_usb/libFrameworkArduino.a | Bin 600918 -> 600918 bytes .../.pio/build/rp2040_usb/src/main.cpp.o | Bin 14944 -> 20272 bytes .../build/rp2040_usb/src/serial_games.cpp.o | Bin 0 -> 21904 bytes .../build/rp2040_usb/src/text_adventure.cpp.o | Bin 0 -> 43372 bytes welcome_demo/flash.sh | 5 + welcome_demo/src/badge_config.h | 74 + welcome_demo/src/main.cpp | 318 +- welcome_demo/src/serial_games.cpp | 770 +++++ welcome_demo/src/serial_games.h | 129 + welcome_demo/src/text_adventure.cpp | 1181 +++++++ welcome_demo/src/text_adventure.h | 115 + 629 files changed, 2558 insertions(+), 103525 deletions(-) delete mode 100644 hardware_test/.pio/build/project.checksum delete mode 100644 hardware_test/.pio/build/rp2040_usb/.sconsign314.dblite delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/BluetoothDebug.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/Bootsel.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/CoreMutex.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/FS.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/PIOProgram.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/RP2040Support.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/Semihosting.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/SerialPIO.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/SerialUART.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/SerialUSB.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/StackThunk.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/Tone.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/USB.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/WMath.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/_freertos.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/Common.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/IPAddress.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/PluggableUSB.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/Print.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/Stream.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/String.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/cyw43_wrappers.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/delay.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/croutine.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/event_groups.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/freertos-lwip.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/freertos-main.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/heap_3a.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/list.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/lwip_freertos.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/mpu_wrappers_v2_asm.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/port.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/portASM.S.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/portasm.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/queue.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/stream_buffer.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/tasks.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/timers.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/variantHooks.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/gprof_gmon.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/gprof_shim.S.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/libb64/cdecode.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/libb64/cencode.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lock.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/api_lib.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/api_msg.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/err.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/if_api.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/netbuf.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/netdb.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/netifapi.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/sockets.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/tcpip.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/altcp_tls/altcp_tls_mbedtls.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/altcp_tls/altcp_tls_mbedtls_mem.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/lwiperf/lwiperf.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/mdns/mdns.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/mdns/mdns_domain.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/mdns/mdns_out.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/mqtt/mqtt.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/netbiosns/netbiosns.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/smtp/smtp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_asn1.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_core.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_icmp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_interfaces.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_ip.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_snmp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_system.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_tcp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_udp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_msg.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_netconn.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_pbuf_stream.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_raw.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_scalar.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_snmpv2_framework.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_snmpv2_usm.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_table.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_threadsync.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_traps.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmpv3.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmpv3_mbedtls.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/sntp/sntp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/tftp/tftp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/altcp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/altcp_alloc.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/altcp_tcp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/def.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/dns.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/inet_chksum.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/init.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ip.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/acd.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/autoip.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/dhcp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/etharp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/icmp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/igmp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/ip4.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/ip4_addr.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/ip4_frag.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/dhcp6.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/ethip6.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/icmp6.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/inet6.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/ip6.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/ip6_addr.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/ip6_frag.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/mld6.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/nd6.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/mem.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/memp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/netif.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/pbuf.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/raw.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/stats.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/sys.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/tcp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/tcp_in.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/tcp_out.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/timeouts.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/udp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/bridgeif.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/bridgeif_fdb.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ethernet.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/lowpan6.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/lowpan6_ble.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/lowpan6_common.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/auth.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/ccp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/chap-md5.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/chap-new.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/chap_ms.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/demand.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/eap.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/ecp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/eui64.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/fsm.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/ipcp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/ipv6cp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/lcp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/magic.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/mppe.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/multilink.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/arc4.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/des.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/md4.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/md5.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/sha1.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/ppp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/pppapi.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/pppcrypt.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/pppoe.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/pppol2tp.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/pppos.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/upap.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/utils.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/vj.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/slipif.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/zepif.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip_wrap.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/main.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/malloc-lock.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/posix.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/psram.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/rp2350-memcpy.S.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/async_context_freertos.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/async_context_threadsafe_background.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/btstack_flash_bank.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/btstack_run_loop_async_context.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/cyw43_arch_freertos.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/cyw43_arch_threadsafe_background.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/cyw43_driver_freertos.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/hid_device.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/inet_chksum.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/midi_device.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/msc_device.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/ncm_device.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/newlib_interface.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/pico_bootsel_via_double_reset.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/stdlib_noniso.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_analog.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_digital.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_private.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_pulse.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_shift.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/FrameworkArduinoBootloader/boot2_w25q080_2_padded_checksum.S.o delete mode 100755 hardware_test/.pio/build/rp2040_usb/firmware.bin delete mode 100755 hardware_test/.pio/build/rp2040_usb/firmware.elf delete mode 100644 hardware_test/.pio/build/rp2040_usb/firmware.uf2 delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib0fd/Adafruit BusIO/Adafruit_BusIO_Register.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib0fd/Adafruit BusIO/Adafruit_GenericDevice.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib0fd/Adafruit BusIO/Adafruit_I2CDevice.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib0fd/Adafruit BusIO/Adafruit_SPIDevice.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib0fd/libAdafruit BusIO.a delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib153/SPI/SPI.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib153/libSPI.a delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib8d1/Wire/Wire.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib8d1/libWire.a delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib903/Adafruit GFX Library/Adafruit_GFX.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib903/Adafruit GFX Library/Adafruit_GrayOLED.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib903/Adafruit GFX Library/Adafruit_SPITFT.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib903/Adafruit GFX Library/glcdfont.c.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/lib903/libAdafruit GFX Library.a delete mode 100644 hardware_test/.pio/build/rp2040_usb/libFrameworkArduino.a delete mode 100644 hardware_test/.pio/build/rp2040_usb/libcd5/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp.o delete mode 100644 hardware_test/.pio/build/rp2040_usb/libcd5/libAdafruit IS31FL3731 Library.a delete mode 100644 hardware_test/.pio/build/rp2040_usb/memmap_default.ld delete mode 100644 hardware_test/.pio/build/rp2040_usb/src/main.cpp.o delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.clang-format delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/ISSUE_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/workflows/githubci.yml delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.piopm delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CRegister.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/CMakeLists.txt delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/LICENSE delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/README.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/component.mk delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/.uno.test.skip delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/.uno.test.skip delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_registers/spi_registers.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/library.properties delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.clang-format delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/workflows/githubci.yml delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.gitignore delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.piopm delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT_Macros.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/CMakeLists.txt delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Org_01.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Picopixel.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/TomThumb.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/README.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/component.mk delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/Makefile delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/bdf2adafruit.py delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert.c delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert_win.md delete mode 100755 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/makefonts.sh delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/gfxfont.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/glcdfont.c delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/library.properties delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/license.txt delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.piopm delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/LICENSE delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/README.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/library.properties delete mode 100644 hardware_test/.pio/libdeps/rp2040_swd/integrity.dat delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.clang-format delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/ISSUE_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/workflows/githubci.yml delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.piopm delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_BusIO_Register.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_BusIO_Register.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_GenericDevice.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_GenericDevice.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CDevice.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CDevice.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CRegister.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_SPIDevice.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_SPIDevice.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/CMakeLists.txt delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/LICENSE delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/README.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/component.mk delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uartregtest/.uno.test.skip delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uarttest/.uno.test.skip delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_registers/spi_registers.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/library.properties delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.clang-format delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/workflows/githubci.yml delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.gitignore delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.piopm delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GFX.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GFX.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GrayOLED.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GrayOLED.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT_Macros.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/CMakeLists.txt delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Org_01.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Picopixel.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/TomThumb.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/README.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/component.mk delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/Makefile delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/bdf2adafruit.py delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/fontconvert.c delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/fontconvert_win.md delete mode 100755 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/makefonts.sh delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/gfxfont.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/glcdfont.c delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/library.properties delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/license.txt delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.piopm delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/LICENSE delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/README.md delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/library.properties delete mode 100644 hardware_test/.pio/libdeps/rp2040_usb/integrity.dat delete mode 100644 hardware_test/pioold/build/project.checksum delete mode 100644 hardware_test/pioold/build/rp2040_swd/.sconsign314.dblite delete mode 100644 hardware_test/pioold/build/rp2040_swd/cpp.linker_script.ld delete mode 100644 hardware_test/pioold/build/rp2040_swd/lib23c/Adafruit GFX Library/Adafruit_GFX.cpp.o delete mode 100644 hardware_test/pioold/build/rp2040_swd/lib23c/Adafruit GFX Library/Adafruit_GrayOLED.cpp.o delete mode 100644 hardware_test/pioold/build/rp2040_swd/lib23c/Adafruit GFX Library/Adafruit_SPITFT.cpp.o delete mode 100644 hardware_test/pioold/build/rp2040_swd/lib52c/SPI/SPI.cpp.o delete mode 100644 hardware_test/pioold/build/rp2040_swd/lib6f7/Wire/Wire.cpp.o delete mode 100644 hardware_test/pioold/build/rp2040_swd/libe40/Adafruit BusIO/Adafruit_BusIO_Register.cpp.o delete mode 100644 hardware_test/pioold/build/rp2040_swd/libe40/Adafruit BusIO/Adafruit_GenericDevice.cpp.o delete mode 100644 hardware_test/pioold/build/rp2040_swd/libe40/Adafruit BusIO/Adafruit_I2CDevice.cpp.o delete mode 100644 hardware_test/pioold/build/rp2040_swd/libe40/Adafruit BusIO/Adafruit_SPIDevice.cpp.o delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.clang-format delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/ISSUE_TEMPLATE.md delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/workflows/githubci.yml delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.piopm delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.cpp delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.cpp delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.cpp delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CRegister.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.cpp delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/CMakeLists.txt delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/LICENSE delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/README.md delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/component.mk delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/.uno.test.skip delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/.uno.test.skip delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_registers/spi_registers.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/library.properties delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.clang-format delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/workflows/githubci.yml delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.gitignore delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.piopm delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.cpp delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.cpp delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.cpp delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT_Macros.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/CMakeLists.txt delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Org_01.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Picopixel.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/TomThumb.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/README.md delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/component.mk delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/Makefile delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/bdf2adafruit.py delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert.c delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert_win.md delete mode 100755 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/makefonts.sh delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/gfxfont.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/glcdfont.c delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/library.properties delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/license.txt delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.piopm delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/LICENSE delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/README.md delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/library.properties delete mode 100644 hardware_test/pioold/libdeps/rp2040_swd/integrity.dat delete mode 100644 hardware_test/platformio.ini delete mode 100644 hardware_test/src/main.cpp delete mode 100644 rp2040_badge_primary/js/index.html delete mode 100644 rp2040_badge_primary/platformio.ini delete mode 100644 rp2040_badge_primary/src/main.cpp create mode 100644 welcome_demo/.pio/build/rp2040_usb/src/serial_games.cpp.o create mode 100644 welcome_demo/.pio/build/rp2040_usb/src/text_adventure.cpp.o create mode 100755 welcome_demo/flash.sh create mode 100644 welcome_demo/src/badge_config.h create mode 100644 welcome_demo/src/serial_games.cpp create mode 100644 welcome_demo/src/serial_games.h create mode 100644 welcome_demo/src/text_adventure.cpp create mode 100644 welcome_demo/src/text_adventure.h diff --git a/hardware_test/.pio/build/project.checksum b/hardware_test/.pio/build/project.checksum deleted file mode 100644 index 208c892..0000000 --- a/hardware_test/.pio/build/project.checksum +++ /dev/null @@ -1 +0,0 @@ -f2e09038d8857e032d921a1f405da7e5d195b764 \ No newline at end of file diff --git a/hardware_test/.pio/build/rp2040_usb/.sconsign314.dblite b/hardware_test/.pio/build/rp2040_usb/.sconsign314.dblite deleted file mode 100644 index ec89f1288ccaa3d5e72ae49179542b9b64e2d750..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 311100 zcmeFa3zTKoS>GvS$!fhN>tR{Oaan3xGFEq;_rn-)cd1+Im(=QRS#4~&yw9u8EmhUM zzE#yN0S3c_6;@mUvnU6aaVAb6tb};QtQlbJ!5Bgu$3w{QOfVj2h6H;;!te@@WSGfh ze&2cAdrsZcUAOMJ)xznk$L*@F+WYLYAK(7=xBuV&|A8AmeEMs?<~sT3{acT2Y6p9r z?tHM(S&ruWJwvm!#f`OK{%BvV#Fx7L7Y_BKjm~QKaJRd@+*MKB-#Yx;uek2I58UwK zf5{(ZEpG_;xv_Z3u-~V7+M==8Q&AL0i(wjvFRX2>96Y?&{jX?6Y%Wb!+qX z^2;Nu>;0Fueqig(-?=4Cx-saiCf)Mq2cPOj@xh~1aQo5Da(q}?dQ5&k`2AahweChg zjMq9B*0!GC+PpQ0;$FNOmEYeUbXI!Hov^cB{>@E+3gw%vr#APMg{9=avZQ=-^PpH( z>Egw>zt-ulE_R}=6W4D9n>Vgz%}n=g-X;x`X4czvLnx2foKv=DIF1&Xjuo0#psPr8 zG)o1_ielZceIB*mS&7%y)k<&c_#?fWmNsu#>wHVRb?RqdnLa4b%0D+B-m#YtcDK?S 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⪼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 z

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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/BluetoothDebug.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/BluetoothDebug.cpp.o deleted file mode 100644 index 85ba81958dcdaf20d5c41f817a771fe084893900..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 680 zcmah`Jx{|x4E2$uB@zQ4MSMx9OauX^A_@Z&rIaj$0mKiuloPE)NYz{1U+r4TA;luM$^Q%%RS*7s;vWIz^vsUQrK4*t`Dq0@tc&d3F@9GdW_!0|sCq=y$dNQiFF^TMl z>Jcsw*b^6HEks9W*|;xxzANPnf)3RS(DqjmK7wb!5WW!&3JT+TYskyGU*tU&p=aGc D&SWs= diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/Bootsel.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/Bootsel.cpp.o deleted file mode 100644 index fe1a98ab66aaad617ed510ae015d630f6b61ee31..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1628 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/PIOProgram.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/PIOProgram.cpp.o deleted file mode 100644 index 086a085f6a5572d892b3ddfcec654d047f79287c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4976 zcmd5->20x%IE02K}3W|L`g_nSokw!=2Kcf+x* z6<|T=aKSU_CTNEH($KwY1-iuI@6uPo?qUGe?tQ%GRNn}<-4Z&5MJT)$b``tTm%~3F zekv?1di|yyn)?KBzw3Up3!ospNNq_~=u67?mVN4_u?gIzCAMb2R|B zSG5~1fPJu{E&nFHcJCi+KS=w*+fIG=!QWP)b0jW&L5M#S*T$O>Ih2NgqxfA!e!S*~ z=H+%t($w5=CX-9bhLUv${NY_^_rcnyf1U1WM_1lF`+*&#z_; z`>)xs7kWfG&kQmv=W_b#{j#2# zSF<@yP3C%%IUQ}f)*I{(_EbU;lbVL}efP!-*WKT$S$HHuGu`y+hD931mdmi`xg#fz zK0I;%f^X@>RARJwv38+uQH0L4nufg{D?bbeioNP$c-MQig&o};ciw>JYlV|uaGCuf z(DtFL;95$?-Gx`;zIaW+8=qG<6t=~MT}`i&hXAx*zq?$oE`=TMHNiL2w^!dz-&%cY ztM`Dg$I<=H3he$83``Urhwknoc?jJ3F?x9UWP5tRTz3fUC_;Ow?s^^q-Vd3jGwr$R zS@d>37(KZ+JW)-;;*mfw~FBC{>93cg5w2Y(N}1^28;gm z#@8CI65hT2YO&!;T><=8!a`B-d!||@e2+nwyLhI(WuoP1>w|<6I(!e6JZ>xug(u?P zPVZ2I<*~8gUQ*C!YrJM@E7glc`DV>2}6u=+FJys^tX6Jd(Ja_;o@XFL6-ct%OCvJvixqf}(lF+=I=_%umT~{*I4~9QFsskDb`- z5A}!K z1kNfepzg4nQFn5>3(vP*TtIU{IpP9-4yg9;gc=TC16M8lb`xKNzZG%91`fZWV#Jyg z>NtBHXKMh@QyyD(Ud0yd=)0#=eh##gKYtlgN}x=2VsElnq?*kM9**Aw&mx|>c=2lI zyIp_O(rKg~+%Gw<{{_yzVCmmR5)ZO2bNKf;{g0gf5vMoXjts@?=kzagI&hhOrvcKb zV=-eunodZDt|*b{L?}eJk5;;pVn)9vt9oQ2)+?!FF(VX|VoF9y8lk)qi5-xzsXwFS z^AWU<#bmQ-EObzslGH3-P=++0RnN>TrS@2#6hVqZ%$cMbiY^;D-83i0jz1)cYF?Ky z3w;hz4Pa2{F0YJ5F^Il$5ZPR+6d&`wGllLa2kEw+nm3g5qz#yt_mr%W66&wM%0U{R zJRTmNl%)K8LW)Qjd?;9%>5<+sZdR*1jIO7{DU7+iN>WNm>dKswHE1Z6W*Ul=z#(Fk z*>g|eZ_MZ&ERWP$5;>cabR{8YC{4#CWJqPAXNjqLNTE*-sTwibJ9ZXm zBjx9C4(cYh7iILAF^IRW6|gUdjv&Q+&HRA(7_RWwwQ}Df)N~;qvc7PZcGp8 zX+E!{&}TK+^h9(?IV;Jj6x-cqPhKxE&ER36*lDtC2nk%W11ygW8;@o^Pk<&&cLnYmd z$=nbTxrlCvP5sb^UBX6dpJ8EKvtM_Eo~J^mc3|9J{i49N9?r;79Mr z&%y-}!~3OoGZW^Q-j4LL9kL9!@to7kisE)zANecdXXpD7>XZVQFuq@6gPrfs$VdH& zkMap|l0J=Oc0S^#cNP=IcY(v*K>+0;CJgsA#M%A+-R76tnco*JzFv#qE|%9A8I}|i zeeYX1ikajk)al*Eg!o8qVVm9WN9gxiY^U+kc$nV?43xSvz923j%{>#wSBp41-$neJ z!PbLb^o;Kq;z(!v;4!Q)4&tObeMdRImynOGN3(??{i|GjapWVvOc?hmj_>=n_~>3E z9Pxbzad_pF<2(N;@hx$DKeNS0>&*DBS@E&)K8+Rf!-U26I^w9E;VxnYo65qLu=pQv z!7{4km(<@{ewmH<=zk~^;-l|Rh(nXc+ApDEUti{zN_#wSA?`YU^uN6eKN<(E3+(}H ZE{lQpyku)&eD`y>w{ZUcWpluA{{~1?!0`Y8 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/RP2040Support.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/RP2040Support.cpp.o deleted file mode 100644 index ce3f058824024f08313123e1e02811e6ab5e94e6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 992 zcma)4&rcIU6n^8D-yA9;f+hwN5=+oYg$5H(Kt)Kj#FThY4rR8Tq>U}R*_{$OdG!zR z=#`_1|AJ@#3Qpdv-?wF8;R0Xs&3kX&H*enVo3GpN-YBKSLrF<4BazabEHhHcOi89> zQi8X|(?4xlQNIU&{|$;iMbw7uRI9HROFMfXmKR@C^qMZq<_gXjYr>AGCvZpB_n+5f zbb72dp=JuR>b`mq%&P_UP(3bW)$>cfhk~39^10wjha!OtoAjChJ9z|BkbC(J#B+#? z7kgLl4`lQrLnn|iS%76vv)~NQS7AM}I`#Lf^;5_3k3h>wX|{;zh7t F_a77yWvu`J diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/Semihosting.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/Semihosting.cpp.o deleted file mode 100644 index 41f2a155c72d064368f99a0abcfee6d5745dd35d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24936 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/SerialPIO.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/SerialPIO.cpp.o deleted file mode 100644 index 55a24cec9350ecfaae815a98ea07f4f06c1c3e47..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11328 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/SerialUART.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/SerialUART.cpp.o deleted file mode 100644 index 6cbac78611be405be6238465b0f3cb89fc024d8a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11736 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 CORuK@ diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/SerialUSB.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/SerialUSB.cpp.o deleted file mode 100644 index c7334875ff22bbb15aa62c476466ce174a03740c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9372 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 Rma)vc$LIWwNODee{|A_qnb-gT diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/Tone.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/Tone.cpp.o deleted file mode 100644 index f646027c75603c468c458c3235f4721bd0b9a6ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5544 zcmcIoZ%kX)6+h4a00WH^NN`ACw#f*A#KM>+B-tOZp+F79!eg0a=iKLK zKkk~XAG(`9&OPV+?(dv??tS+@_xYi*M+89tqY2Of6%F8ui+Sw5Omu(;z5uS3IsmU{ z-Yac zrFg9eEVqxIhA!KBACPXpc5k(1VjpxfZCAtwLSZpVh z7olrp9Xh|Z_ObF>$iAj$WnH)$+J19yd%wUwc;3cj4*DWJ>nQ`e(K`XovEGD3CXoeexuReqUKt$MHcbh zxW8d#qg<<%csc^Wu|aY6zBRo3A`D-9$uI*9hr>ra9m5k}-{%SR`h)&%80bQ;BumpO z2wv>k55^9RgQKo$yhhk&YZSH%O;)$CQ)m`ijSMPuLZu5f_yD6;nsw6&0$>G8#fd#D z{xdf`CBSJmpk9wU#puMxg1Wg`!NK7j_&(_P{S5Cg!!cSFhp&QXO88cWuj24E9KHtr zjEKcDss{dA>Q|!_pcy_X>29WPFKN24;x5@dzgos;E0?7fYDxvglNI@PaO3N_@%7Mz zcp9S5x1RCsE|02*K#5P!uc_>zjuo~re8sq>(q;awT)eF?Sc*q6EU=Z0Z!C}6TJBND z3Jn~81Lxn)`T2V7;QV|&nmB(GJXxBrUca4Oyqz4L_cwF?W^Vj0PTvjBmEw_uuE=FGPQa?hoF+=? zM5PYX4;UNk7O4W7nv%u2ym+v;JpW{BE@`g5lt}2M7p4EG1g&f&5TH4i_txfGu_dNE z(ix!h3S|$lThJK0e0qCxF9@OtVCxQn_KLqe7$v%K-l7|7(Byrp+l1Bg*O8Qxn z$ctZnEDqi0mIDBko+n@f+X_O zw}rDG;AN7S$2pRi_eGMJ?=ndw`whtffOklS0Pd3v<2>--cH-pdjv@YUlN`cvByl|5 z9Zvkxe2e5Tz`GDNUM2spWL37(INuHSi}SO#=UP zJ`et!ob;2?|EY(x;rjm^)#l)zM}*IOXqy9<4@0xDd@NUtc}>b`b6Nj`k8p;i6GD`7 zIq9^iw(`7+1va1kn~rlf5HB*-7>FxF>ruHyXsyU%x=PrfT!xmCtsQrH_$#jedR6$@ ziEjjsXHs;Mfq!6f+%IWbPMyXJA+PVP&+?bP)bMp+dzSF}|F@u?-tZM*&5M5tXM8sB zIPy{3i%&H^{|iTF1Ru8(ZALTV?ngrnKK&)fIee+;`=lnkI^VcYCZ&+`7R@07VX4G zcESq8<}QMWuNEJJFUs*P;KG>eV(?KMbAJCozK#+fcFTMV zh@<<(Sl=tyF*wl7`lQcue7kWF&5!b#Z5AN`s# z_*M`{{6>Die?WfMIle(tehntR8;GO44Ze4neUItXO3%ZodYGDF^{_sh#1l z6Gj}mXbZFUF)HSLMHp)4+(_@h#INB)?;L)*uzAq?Omjtwa=VR1`IX6F@X=bE%y1m* L5;G==J_Gk}ub2+X diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/USB.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/USB.cpp.o deleted file mode 100644 index 53c4eeef33b86445871d24e980e9195f4915592c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13404 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/WMath.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/WMath.cpp.o deleted file mode 100644 index 1957952a65392f684245aa2e5a22806c3af26e03..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1324 zcma)4!EVz)5S_(Nnx=trWKjBW+xb>mW~{Zu80~Cr-E4Y05BDxN*Vgq7 z?bGHJsD@G4?UPzTTH4sX)}eB3rZcM++(mU(op+Yh1+}ait~r1DVbAH(kBQxNrfxyx zP<9dFI6!Q3$fY?OKy8~tt(1bNYyLPq><#1HDC)(OZ~=590|yiY=2ry$UjJ1* zv|9th?TM-w*hCD+GgnW;InLvulQ(f1b`jHY77rv#qt_|vUYLfYyGcTN91S#sx;T^F z`7_twzyay~VH`(?5Z-*$(P5g7``wpmlwg$qwTmF~4#}U)cKrBl*%)3;=E=qsd9sJA z;P7An7thc2>~r~hipjZG0nEbNdBa14^_k1t$-lK#p0OU! zB6rZeW;7LSwK9}#sv&p|eO5ee`&q;2ghc%w!-G%r^At4IyH#lW|Q~&?~ diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/_freertos.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/_freertos.cpp.o deleted file mode 100644 index 6a2452a8e9a46249123427acff2057b722168384..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`O-sW-5S?j~)_~wQeu31J5p}6pMZA?#b1@zi&$6j2_7Gc=74+nv^$&XXYb}35kU+gfGGpG%!$_?3j*+A0U+#lubM%4`*7GiZL2fYg3b}; zwbAhaaGyf&;{GIp`eGyUan)VN4cv6La2t1U&y`jaU+(9^_wOV@fm68+^IADg+?nCk z`VM#ikI$(wsU2pjKN?5%{CU4W+zer@wy9M>6tp*im8L0j+Nz5z#>)b_3TbmBz zH*2y=&;Q6SC3(JjAb1zTalN&1lz+G$M$P5(17h#Em!ld2`@v`oRcuz#+MfV5DKra9Q diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/Common.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/Common.cpp.o deleted file mode 100644 index 427898ee857a8bf657509e814e04e7b1b7a785fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1148 zcma)4-D(p-6#gcgCQWTM#^0tQEeNKlL#0*3E9;^GX#^`p@g{7Vg)Hqh%Vre45_|?P zd;nj;OW(&!z4FfZo!y;uvNw9*%=!D~{LGn;PxhWFrC>>+gHsDIl`OKblZg&iu#D!n zYw+8ZFE83yd+kqu|CwU7`90~Pvgq^d`u@Z9PWSo2=K9?oy{)&fdyBV&Fc?Ho8&ntW zzr52!ZMoiSs8;o&x}>gnSJkR&tLxRQ&ivu_Q^l{T8};V81w7;pTZ~7KOCGA6z@_<$ z9%`j{%>^@Cy%evP;)^A_fphf84426*)?afFP3j%8#HI5V>)$JEsoY{c_~SSppXkFR z!3~4{o9#GAj)ll>>_-dRE1vN89Bj7A^Ey>C{3Enk=0E2 z-aron6F?6p6X-NN*5cG|N$Z)V=bZvHbFrd6WYggZgS-1Z9T<~FgSRG}u!a96c_(=n zyMg=MelqaMf+#KSFL6(0&;S4c diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/IPAddress.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/IPAddress.cpp.o deleted file mode 100644 index d811a6970ff9ad5e0a042043bb785a514bc0af35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5892 zcmb7IU2GiH6+W}GcCz-$aW=Si;<#S_#B36GwCmVTOCoA}y>`snj;mEW1p8I|GJNNhOj(?Mw98(m9geerEvPab2Xd*TJW)Y!YI!eBzI-ktM=X2v% z$98i&d|$HFY=I9`JL4G&D<@`0{xmW)eDz9hoG7}XzN=1kmulvf{7C-!{Iz^^6Z~OT zs$q@#lA2GJ;`!f~p3i??`Xn#(sWZ2+kNi}3Xm^Ps{u}BM<;Ly263uPaQuI+J7SMLx zd@de6(c1FoEBBAy{X2#4-O(cdW!`_T&m4TSWnZ4UKE876PUFV?e}8|!akJhWDWcYA zhB8+V#7CaAMi`lx39qjf)5c*sv_zEK2-1s}Yp8ibxrm-&!Y4(3biJo-cmJ_cV@K#Q zzll)Sug3hBl#9yXSHA}5?U9BXypESpS8qiqFoBw-5~1CfbDLU+<$ZnU>KN85$Pd=N zontCwVag>dqTlwzN#oX^*GHPa*cPZkBoDt5hrT zYbAcI=xCNIuZUOQyFw}jBs^g1J>;kaoEj=B)l2+(2@gtm(9~;jSml{ndJPi4!C_kX z9tro(My0(HzE|oWl5nhU*;Lvm;rq%U*HkL61OSzqBz}`Qzl_tX$*EcVW{KY{;rk_g zzl66+c&miBNqCz%p7JiYN&I$+-_A3#?r1lcK5Cctt6l2fVdCXRT%WS3)Ft6vWsqws z9g^@v65b=>Jre$~qkb$-AX z_+M=wCnv=B>89=DOo#aX{7dpf+!_6Gb3=SzVzz(K^n)}d`B~dPW#SF=vh8CJae64>jm$`V$q4|;nC6A z)bR8#J%fnFY+(BIbRuEici#!?-lIhB@jYtgRrtuCD3LDe_}3!xL)|2D1eZg^H=oNX zqCu3?Wajm{(?m=$d9x^Ih~`l~PL$!&$6r^=cA2wF{8r-&;`@O)>j zyj}NmdwlF8Z~LAk3Zvxl!g@3-Klv~St$1O@&=Yga&#)3DkrJzEM%q^M{8?-D(8`%wU9Nok=mL&c97hXMYa*QbIJCM zmGbZ^teTxyw89#83|mxzR7sd!ALyf%S@`{eJOS&s3g=V&-09#J@a&%}TX?`=_yvnxvlB1M964?yw+X}V zKUgn6cuO1N2lfKLl0pA4Kj7ej&ne8KH_ASK;|ddcXSl(w_XpNPT9%vVFuW{Y2_kv4s5|akjGYo(-bv=U`6cUjW=Cu8C) zLR09yB=NqpHNb%h-g^@7d&b;v-GX<+=JlDq`TLoD_uDtS)_QOU)Ww(%vSZkNP>6N* zG0#2U_j$fJGl%)XJE)j%pQMNPp-#qyF>IP9=>>VSaIT<-w``&JtfY5^^{}tPgx;d0 z*UcpC8}#s2F7#fL^!`>w?~jsRuS*X(Md*Dd>3t#Tfd~6k((8BW;Vob2-IMfgvR=2T zV0{R^Zza8xtQTeq=8Ly}p%>*uh4Ufu)&E#eXmGPxhu_PD0GC7jz@B!EuY-M|H^e-a zaLywtOm$3XpOo~LTzXy17J54Kuuoi=7Gyp5eG_`WeL&t{n1}Hp|H7c>{;v=)Jnt}% z|8n5K+L_mDRn1RuU?>@KY?7UqYlx0;%Om_?e8{g@JJxgTn_WZ~T@6AH|KV~q(=xBi Jhpq;}`#(uJp?3fP diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/PluggableUSB.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/PluggableUSB.cpp.o deleted file mode 100644 index ee2991a00881bc56422512378dcb24dea699e442..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2640 zcma)7&u<$=6n>NSkHk0y(iYrSDw`$&mo%$74khB0IyIrFj-psaRgiGj>q*v?9dFj_ z$l(A;aO)ocQp$lVIUp6~f{4UFfWRk^(qkn{NR=o^v=S2Gz4cBrnI?9hynge|_q{i> z@9oZhn!WKZV+@2bNWuXExE1x8@RaY8a1w^V**O6)cFl%Mtd#_3cf?MC4jF zM@FBMqMz(!ns+t_fqlG{2m$DKGAHg^_UD;+i!a0LBhB0Ee{7DgZzV>Y?al8q(chW= zWcLi_hw*<~KQBLQZ`=1^x%u0z{m1|9N0+T8yTa0z^Uu9@8}J^Zxg-!1xdF-Wuev|( z%+S4vdcoZ6>^pjLZvN&)JvC*djmvO#97&U##WJvA9EPvtCvp&pM{@&gD0GUQX0K`q zc7~m0=W*AH$+Zu`qkWmy4s`}VgFcx?tSLBz-IDF_dK!ckJ}iqdTSVa_3LjPY&ch-^ z8uTlCzo2}tK}_Lea2gr?sVWAEU`#t_5QoVC$9+5)ppMg!r}zUS)q!a+sPJk$KG%|I z@FKjAn0oRiUPBOqjR5OD4#Rf=KJViQ>;+i&aTH#_V2WSzaX(}U1ojg8#eh%ZcnIrJ zQuwBVzf>?RR2r+RX0gI=<}-%nI56tLXbB2Sa~~|FCS`Ubo30gaBXivR{M)8mYLwS% zsk9tdNKLMC@A{g@-4)Z~*##SO9IH*E_8PBSZrSl_Zgz1#UzoZ`J*5&z*b9!6IcBa4V^4`Ob2+Qlr9YSJT|dG*(u)OZ8F828DvvGz+T@ ztWLqS)*EG)ciG%*D!Xwg#N`!k);Yj?*yGr1fNvH0Vd^*f3*bNFv60Sm-**aN6zBV1 z!9SzES@p~!de7~6TZ}y3^uQ>Yo(V>=UI&9Fj4pk7riVQvx_7c?_%r?N6>)S|4J==; z$X@-GbEwUw>S5iEds_lpeI`1ul3~@VRlbIexVo4#OwV)6#fHc0*t+Mnb10-&TAZw% z@9aUeIN|Ye@pa;aS9Ri8cms8G%J$M-3i8S8(itaAtosp8$onI#3lVyu`x?ix?i0jx zCJGa}UvNU!-9@Ym5qhB;K#{Eb5ji?Tg$Z34MFTiF6A%^rgwg%e*-Del1}9#|@maiRUAiZ#owx@a!cPdcMH0kfNO7|6 MF4pA-K}x#+0mJ3LzW@LL diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/Print.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/Print.cpp.o deleted file mode 100644 index 07e8e13f430c91430bf208d86e767b3011b48457..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11056 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 E4^oHeR{#J2 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/Stream.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/api/Stream.cpp.o deleted file mode 100644 index d93efd34490b12aedeaddd3344685a5dc06bd231..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5668 zcma)9eN0=|6+h3<2FynaE+6Kj)EE*R3~x3NLegv@_6%tWjFm=9GE{7^6FbFVfmv5= z+LEnRyRNE8s8j;gDy{n?OCycaTHB;pB~7ONu}XXFOR(;bOi5=cnpFC+7445?=RCh_ zo-fAah|9g_p5OhQbHC1g{-Nhsw;%|>L;xFXY5;}Bip9{bR5oaYJy0Ce!~HMs-M{6n z4_e^cp}8Kg<^7#{ZU>jE-U`mSKKrv^>2ejv(~%2VkP+l8f^x7Z%NsuL5i7d1f$-0)D6=P?GEpOG(d!y^4T>W2J6t@!OH4=Xq&cS(aq-P^m4q!DX zjL_h&sg)by#?rekBXU=%+~R6}{gAuC>^Ni(+LXE26nxTiV(rG#&s=w8_zK8=mjyQB zLgU@UdhEqT{Y61#)&p2ZYrY|awWAjo=b|tR_0XuB6=(JHx0hyJR=K75ge*0mlP@>6!hhS@bdNA5QT$60N z72^B7ob-1?7Eu%Bb9Kg?@0lM>apW$p$H7|MyUA%mR^Ag>jY>SfO9=Ji>`nZyo4uY` z?gm&tJb#Jgw}$~5x&V%LZNw<9GE}d+gcVvHhr;Ks*^oPr3+!ED-tV$+{cq=E4d5q8sd$_uP-If#pfxU5pm^;H-^;7*O%T= z;)ukP=uefn@eJ3m#|GUmEdId^vxT^-x*3?CcU7$F)JQ6EXFgaGE>iCoYqi1opfLB& z(0NzM%E_S6I`4hirI!oaK1rMkLX%;o>}YlMLh%W=0oSvzZ7l&!>$0%>o3)p`ks;yD z-?++FV6SdPu+Dq$B*5})rTF^(p=;gZn}>(4d9dGc-u2(r^R7>1VP8JnP6+#8@Bdc* zn0Wijl`HG9pDaFvvw8%C8QoQ|7p%PH)m<3z)`4K9eR8`_99dp6qTgaG)afr%->wDS z>pCkU=1zM*_SXCE;+p3`9_~t^vO2kVp9yD&g8(yicp6B%7k@N{d-Aq$L3gnd*~Qm3 z`Spv%aYxJmFD&M%98fR(@~Bs^+Tf>NL4!0bI^xjdb|19Zdisy=wK&_QHpu};?6{Y{ zfNvxOLLD{@9fK`>kW-l3XB15OQlU(!5Y0lRP$ksj-Qh%=d-U+>eXUtc%S-?w=(J|k zMNZe_478H&PlO!Ko}&dL8?As=^6-PNE6V%db@ZgrXO~EmhA$5);0NrJ4&t{B@k(!s!P&y_?eq zQKv4NnF&`vs_M!4l)xLRZd2@~5GSxI-jqM>lW|75`D_k0J!p|P>h)V8RBK;RifZ6$HGMbOkA_-^#;p);YVr+;wR z*>-GV;u&8MiTft}0nbRLVUDRl^eOZ|F&*`UGXOdxzR9V;7m?I+PLJV-vpZ z#tbXjci11E9)n?33AN(VFoVypQCd%L8m6W*P2vD9vETJvG%)2E7(JUQruG!#_;@rl z<{8}v=O7&JN@)Dd)>Xz%x6?DwyJgmB=op-VUdP3WcND^XDX9rt{&q6p5#tq#Oj98e8PL2h}GeFxZ5}IeG zrA!$CvkO2zCR56yRP#E$F8M8hSp{n;nR`fA`cWUC{#JlfRJQ?)sQNh7_(6Y;YQ!&5 zy$|36suBMo)reoE8gaL%?f{_dpO25b5)amjU;M1trS{Vu&3_C(_ORAfV4HNb(>Uv;q5F<)tSwZ3P31uxv$Js^O+6Qm`bMyhPA2Oh zYen(Gg5>u_eISiYO@TBS7?Y?|+Iq#)^2E+SHC1E-K2XxwE*xii>d5A2ha{41=+5aR z+h{H`WP>_0<_KwWf;K0^ZaC9&1#PWUa%SDX^by&i8B#{J;CD(MJC5bj$b;i4lVn4u z^2ON)gMl=PB_XByx%75W5WDWelcR{QVnkuBy$JlAH7=0-$^W5zNb;o#CII~wR~4K ze6$9{Nqj%TqUC!Db;`j^2uJb*ELy&6$VcNTKB^ht``FgV$o(@2nM-(KeU+BJOiONjAZQ~B`eQ{*M&!>*K2o65S1 zWAk_gakdmH$w%tH5vN_3L+ICn{j@IhhBCj^svpMp9_n<)nGlYo0{gXmLmEDMiy2=p z$9D(y%L+sCALHxc_`a`M7qf=%MUL+kyrA70J~S)xV~+26!ubBl@mFF&E`bbHm@S1BcHj=Gf6cjy@!ZU-W( z?5fB)F=n30jFviF6Dy%i+ZsWdBb+@={;Pq95FW(7I_C>l+fG|tsCdmPUo z#k!_bh=TTsh{`#o*gkIe-0*QPl`uIFsfz50918bGNF`1zS{a(iR?KOXLH*2h<@J~L zNpGw(i$>4`;SmY4x%?7)M&!7CGE#4ELpwROkD*nDBlZWvS&3mbP0LIiR=(U`oafV& zSow}_N&Q_#JZYF`q?#}WwY8od9ScN86W6&W=H&iT*JSRcl58qLPaKa}-*N8iYi0-c z8kJjPD~Q@>sGhTu{g&Gi z>niX3X-5HVIGIVgRJe=#fNMR*A(Xsx>hOfXbL&pg(sv@57PztXu=T!OKB(|Rj-t~a-HuRTnS z1s>s9l#Q{(+$k7~rRrO(YdE2Ire&xZ7NC5LnW3HAmYun6=xnRFK>3X7;=a!*&L-Wb z&eiF8zTdcvsg28=@y$KXW8!~L;Z}J7y~U*jPG%NUdqxR=*X^6F#?J%j7pUmBT*@fP zES4TT%12G&R*ZEybCOC&B~IAYXiL2=oKFNXze8wE&V3@%--?+|>y~CDR|a=An%2Ko zIP;B4FC_ZV_I^2-OanOoKko+Y9E=aFDl>*AXxgZrd+ltZ>BAEFyM~_4o|Kh%)Xs-( zC9-!d4(E2|t2X+ymsedU$4ECvHgXI>j?6^PF3v%TwT3^B)34c7@>n>thufhlykW^J zr+6&xaY#K@kfsGt3M<{Ga=Y+U;Q6rYLNELOp*KLWPAj-CJQ8c)ew%{F!r47mIZe+> zOt44V!CiQUz>cZ)a0r#|;#}4oYwp*>=MxnC80+kP_E_3$2k5y%3Z4iLf4j)epOlUD zlxvw^prh(O#jCB3Ht=?#sbIU1hPc;ZbTf_}+Ne9iu5 zIO8;)oUvG!weZ)4kA>;XShDP5dL!SN=~Oaf{rO&Q&-U=pGnw{NDk6TiQc-S~6v>OdpH|@!v^u}>)c~!(O7Cn`Aq4({aN1+~*5_>SpiV}yz1*cDj>GY;aLv3s70=lE1A#AlP8^R8IpZ!*$LnrF%9D>zz9DELkt*RAF-Fcj3&M1&M3i|&!&EPqQ(u?U_5s9`*%Mp-K$v<8W7h0^jH14t3%%!2%3Sj3eFobmW74UH%1C{_hio#3g@V zl-&D2C|T1V?(JVgDbe2hvYJs?Z|NK1yfZXCH?gg-9c?`ZJE;!}j}*L||7_8T$la<2 z8KbVUI3;cB9pR!?7-HLqOF zb}IdIk9Fmh1wq#u*<;N)R`hJ-`{BS_AzI+9?o+1QC$YQxRqxZ`k4{@xp2JE;!Q9S0 z;f#c{w(-h?SyJjeFJT2~3eOvk*@>Gd2lJLcw7jZnVX$=hwdZxvXD)+9W~M6wJ!lYalXVNxJvhfT0E zOc^%TB_jo}UmRiB1lvpj;(e!?(5^-b&`_ZdHB>Htn9zp_eYntv3w@-}vDO(WfLWay z-zA31<&PHnXrYf0`WT^)6Z$xzj~DuQp%)0fKV?w3jK1SUoP}%LZ2q|8A9io(Vqe|OX#!uMSKg;6+*v4=pmtpgg#s7 zvxPoa=yQcWU+D8OB1z3c>~App<_rHy;a@5AMM7UB^s9vKyhLlK09_;WYqX@U0a_yT zB|@(fdX>K`(CdXB6?#ua-zN0igx)6fHlfFb9w$D(;<@gmcyh+`bK0VBX+d2Bv{U5Y zDfHWge!I|j3w^iH?-2SOLcde!cMAP3q2DF+dxU{XwBW zDD-{8-Y@+3tNvP$^xB{N#$N*Tknn#<=no71VWA%o`T?Q03%yXeHwo%opgo371sIuHBX4^r%5l*`U;;{5rr`Bo`Dc{H5n zx;9P@VUMJB!hfTyJN!$iP1xUX?aNgD(e$*)|D4c&?AlKGW9To!KLf7-e9PgDqsguv zRQ&O@(6z@ZyMWdUJLcNF&(5PF+UwfI%AQEaU3-GEC)104+&>Fd{#i6j*wwCGtn@2rr)xX?6{2qo`?PC2@yw=AT-)itximh@ zDbJY?l{7cSUPRZswlhAjqGs1FROMeo52n~l=tPQLMK7n=)%2gPJyqpjPJec7r#>rb z+z=-oUX$~%|6AqSPI+tSZ(Q3MU)RyMUE7)O*V9i@>>B!0ioKpD40ZU9|BY0YVsE6a zDfZ2DAjRH9FQnMD^ota`j)FJ}<^G$e;;*Nruyx|`waV4Y@jVZ#RkLe5_1i)Zxpt}2 z8|gXMUaahGbOyFg%=@LQ&&2mUYNqUAS|$7~0w35MkJEoGG|#oCEC1VQqiZ|kp^bLC zw$r|Gdc?Jz@wJnlacvGGk8Y>eT$}ejd9<5)Ve7=@f8^?u@I8<2pi$}&#PMK#9Bht{ zZ|BjSG~2a<%D#)fEc`d6_}@c!xwf;u?xEwt|D>xs^}COL;@WE!|9-mQ+Bj`Q`47^> z;Z8ixeA!P|ySCGQ578~IeHntzqlf8k*gA229&mN1Jr2+b*LKQprF>wsS1I-r zl*Nv2V%|vD+&=5@$)iJbxzMk0b!Yw_p;ba(>*`Mb9i}YP@U3+_LW4!Lxrf6-wUDxVCt*WTLuBN=!O9}ZYODn2( z(&pA^)Fao@5VV28hsqnb@2qQTY^aMzy&WnL;Px%i@Q%%!qpj6jsWn>H)YMY%!J6M1 zZHu<Tyg$l9g(IpktjW#v@GX%w)<$QHVg94B3j(vF{SbS-BS9&-z}v}{M}M|$KNfbqx{`c z`pn-grThHdQhL(gZIF4iO6&+K>sy+!6Nui>;;!lZAZdEP$!lRxAFR&Lqe(i*L*Yr}&}J)Yt%O)a-a)!suQL*;F8>}1+*Y>eBE_f~$wZuhCg zKzFaIE{JY#Fo@>Rc87aqTQpvU?a-2V_12W3>gv3K@*?})pT~PEhIwULuq7G~?~X^? zs@K|E-Re2J64@H_8@D$^cU`x+8haP+N!zo{`n|kLORB2v6$hxnJ-s|aA?#J+D^r5< zi%R$oj&tMl7^=e8Ig>tomjx*qYC9c+29=Af$0*f}@0wZ%{? z_K+m~vhY3*s$HTXx`O!0}OQmxRoZw=8RF!D|M>bvG&v6)CHnJ4q@k zmWEf?u3567c4>9h$~8+?*REZ?q^i0mznh5Pi`iBj!=KMXa$X^IzRG;Xg&)5+GLK)wa$a-( zLZ9=ho4?!T!jIqI*-w@KhFk8xIOhO4uoW-i^0WN8|dXkbBt6c|W`kt<&#Sc6%5o1J# zJ}^V-JeL0Qti^9rm3rcm60y=s$}|DMh-8Q<=2B$ukwXos!Ug z$Mmh1^ivP4LAoT>IXyV_=wz^Ph4&XhUrgYsc>Qc{;axg!&1K`IoagW!KU5Y6R8I&xz6%%)aJ{Q956JW|ZP1+dX+| zl-A2UI!fzkoFDP47ntTj14L`(V~H>JztckEP#lk?{2cDyt$S+}OF zE{?;sTX*1$7Vn}Ln~LCww^H@q&3WeVKStvBcurIBVZQ(yNYalrPM71u@9cy5&4iCE zmw$t!lP-5HZkT?51)I-MbkcsSabp-hi(Mfx-HGFA*jf1S`3lFyzvwl2x4_QFM<>l| z#toBq+Th_QK1tp;@!jObVSDio3f@_R$K~kw-VnU~u=(soCmr8wxM9Y3&fwuEBuU~O9S>(+-}eOXQP^WO3|Gy2SMb&v@f8@nQOE$-He5#@bvFbhq#P?18;%{?|Q-8WyCkx;O!Lg zo%e~aRq*ZxPmjMT2JfKY<-wln5#M8i_lUtOF?jm-vbw(We0bjzyr&G_r3UY3@Iw`o z{doelJ!r(nAcne{B&0qfAv02~T znf>c&$l(2l;9U#btNs36@bbaa<9W8h3!tOT{@9CrUhBc&z9H`n0l-!JR&{I|&G z_57HIa?Sdd8}ZFIc(;i7z6+k${$PXPEjHq-G2Z<1}`jl3w(H23*I9JuiD`8fBiP&TL<1$=sM~4YY@Drz|-r?ayTQK zYQKjBkAHvfwI1vhycdl4RvNtL1@9nu3v_U}>i9YY?{y=-RR-^mg2&^>t3S>Q-dQ8Q zH3lz)iEFmsZ^83={?3A**}vxv-gO4ALGXqk4zKrsh~VMB{wCL}>kZ!Hg2&_0i+4cq zat&UM!TYh`Rrv6JBzQrCx8C4=B6ur&cz+PQa)WoH!7Ihfh}j=s@!?H{pV=Ra4c{`k7!MGW31gZGl)J>|puzTm|SUai49nPz{y3En*DI_dd48-8YgJOUoSpFWLGJwBLL%8m+N2F67>G@UfBPVf#I zyeOPC?||S{fakRyd_(Y_GI(1I-VX(DHF%{uI9zpnF9_Z<2CvcJy(@Te@D_XUekphz z;OYI#HiK7$MmGE7dGN3lC6kVCJp9c5=r-bOHh8NA?<{y;`YYqFzFmTsFnD~Xq5JoQ;1y%sj!4q_`{Q4QUpf5Db)0#e{#lfJ+9;RLI&``33*Kt* zy!NsD|9#B`at+=dgI6hdK~%zP zJkJ%pe1mtN!P_i&Gr?O6T_@ciw+dd+;N1^r-F^oJ@2lXA(lA^#?=itEHFysiyw_Zw zZnM4M@qE#Vzw_tMqTK!PGvD(#K2CoU<(8vdy^q}wUDqRsMrAIRAC+DQ&vRW9erMsw zKWoxS*LNxW%>G@0ayP(<$KS*F=yG=o-Vls4uld_5cuyJacfjBs6}*Mu;Z`!~_znr) zGX}5S;JqSv%fRz`UjC!tbr`(I4c2Yw#;9VnlZ-VFbKD|irP8;zZF?dnI`#E@C&xJa{J8STc8oY-D?_==LRLP|K zcdy``15fV{o-}x;;D;fc{CmY`;2Fa?`TbqDT+PRSWBPs({AOyy^D$rXY?t6}ZrXRRDi5xbC?A{nJV3!c#rfh5jk! zb*#e?;1Pw+)#G^pjkRXb!cDu4+qh%x;vVkfp)IXuzS_@*pTAjx0;_f#<}1}SachCs z>s#OeM3b@Cdmd*xP2((AQJMm%e3BR)k~dl5UnMf}rvde%jRqCwIjHD8N#Zy9*MA6< zHYOW|A12OgjhB!E%JZC!QdjJAen_U`<*`ntTGYv|j!8o=u~c_f*6WgI<9b`usQ7R_ z#wCGz(qanp$?;h+>C0a3$~i;eL(LMr{dGc%ATv-1--I>?rAfUF;#J)*@u7&wi|!w> CjWE^# diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/delay.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/delay.cpp.o deleted file mode 100644 index 1646a1858e948f3556b80aa7c2ecdeaa5a66ffa8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1636 zcma)6O=}ZT6uqyL)F!POqop5$B(-3QI#dl^sEd?hBWQ|P3hu%rGtiNlCS)dJpdh#t z7lJFn-_c!#{)GGs*RIqqtmn++HIv!sg**42ch9>YZ{EziC(pN)QldpkMaD?v*oY$8 zYGf*MMG8_ll8PFh{rq!Q_(p$fDCHP+>xCnFvX&j5uE@>L60e_@KSbW|@9No?*WLQb zw$!pUsc&sPELG||duye8Rr7(lE}OSe$8xNeE2<1PyRmz>A=7gg8aY+WTvPLE!B|vF zYFXXLL>(m`$-Xo4<1867CZ-ZGWGWd3jtA9?hGb+`gUC+SGh{jypPpbFGLwqWq~f_$ zJeP{krsA`535;=;$?go9OYOgicO}u(jI3aug#@DjzXau(F>ev`+=tb|_#-IeJgF5_ z-W=f)Y*BLZ6jlrQyBfd}+bP@wWt9Fbf@EoVx^n(~S+;*=M zIPK1X9gIT#KnAYk+2XsN=LQnGzSHan&5f!wo6+TI_C4Eu<9F=wf{O)gU^2GFx0Syd zpJ#qPo-w}|_nlu7S!SFMGZ^@x)q)LsvEA2R=)4WZw5`w*vlRql_8iaTq8SaA#uJmo zym*Z9zR^H&aMY~X?)biQfJ&P$8>SV8J-5{looEX5_aAZ{9G<(rq4Bpo-l)HX@`$Iu zgfx#iD7T=zhyUWOgOjeCyrsJC9q@SjYf#EB1el-ql3yK_xCTw;BPK_S&i5D#$$V^7 z=i?dZe6Qdq^X&lZ9B|M5{S@y7a0#kK@8Nw<)}29JT&bu>uIsve_{q9m;N-cGM|lq= zkLO4^gyPDc3uDxeP?TbtNIv1oGu1*4g;w`Ud<;Fo;$_$(lywVG_Nw14Tsg$10iBWP ReEh#8c_o0angpwPe*sf@rzrpc diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/croutine.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/croutine.c.o deleted file mode 100644 index e9118c027f004c0596e2363762aaf798381882a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`OHRW;47Ewp5~&Nm;wPc9A_y22Q4nHRRizuk0>l9(Are`nMafhuD=y0c-~?cI z;x_4~mK?tqzp=-jufgL3B7zt~01F0iXNlLH2?Fq89bnk+-?xL|)9YFLs;jP52YTm} z*NKi&z!QSr?aO5djaD=Cam(GoUEFi_@c<9;*p*iESncP+@83K@z^UDa`C2ti+*#uF z`VM#iaXy}ybd;zVKoy^v(Gf+H+xRZXBvS+GO&bj=Dhg2XILnd|{p&r4N*j}>(ZnQ0 zt>FrCM0uXCQR?g-7l&jTUK;CUnq{5r=#(_{0xNYFWxWnXHmkN3!2_b-wWuV(`U)6)|-Q!XHtf|j+1Fd6< zo7hBsr~`7n%ZJktm6dAft97@gHr1B1t#;I|+IOYZ)E4`>`1zX#$Z<-qVZ2lf6L#is zxxNDrh~MKk`}8szjEAZ20XqFmtcl3lQD$Gov+;+8em2%XM`;S(8zc#3L$~fjZLA&j zqp^+CQqu)skK#OICFfXXV0u@??t5E8eJ55zl1wNA}hRqEA}sb diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/freertos-lwip.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/freertos-lwip.cpp.o deleted file mode 100644 index 82adca1d9d9ba2f1aa66d4872780f8d0db0d973f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmah`Jx{|x4E2$uB@zQ4t@x5qnFxZOiYN?-rK(C6!T{n2T*@IL5gH|jfT@3$KfuHY zb`!Tr2C(#Ezw`X`3S3(G26X3yu0bJ(9>CXfnxUdZ14~G{W&%e1p?40!FsqDev z2=hv-FaoiUp>uxM4WO~o3|z5pw?tcPT3cdU?1(*^Tg`pBpABC>^8^M~~a&dzvqQ#MpC#vgsPY0;Mzwoc_xTx1dPe%1NW>Nm3 zdW16s_Qb8^=A)y#Y}}VTzm;+ZL6@2ZX!ENG7r`@N2%m_0Upikyly%?8N0cax`~Cv8 CU@(>d diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/freertos-main.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/freertos-main.cpp.o deleted file mode 100644 index 9fb8491057223c93f7ab29a36f12730dd02d5528..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmah`Jx{|x47Ewp5{ZFN@g<=$5d=LIQ5X0+=&^>wT=Zbuv=J$pk><@2S->d7BmfMIvk7ET|`KHK;hxK@G=gYDRR{yN{H% zHcR4HYx0G@f02Dk@{EmARP1toLnh+Iu}&tc>ts(yq@lm?ukN(0*CEfw^){wa@!@)m z3j+0|trQlL^lq+|QY5A*pgAK7bK-?lK|nq&6ZN~@t47ejeK={Hhq|p>)Hy}o zBqkn_Izs4O-Zvwvt=1!7ZMa)%TkSZzYESK}LsweOe7T=X-#@bi0;lpC=1b)?xU;~k z^&RqvhKU(Jwv8ST>FhnVCWg0@+z%zP$(tqpWUL__XBp|iOPVInIP2U++E_ao#jiHW zD*gT<2T1a4wL+BdaDGE3;f1kICRxz uw<6%XV$zqryp?kn;7j!ayzw=_2V@3>^a-qRP?*$P2QTZsz&3v_=OTT}!1Olh_8s;n2G`O?C z>-8P-h+fm&>LHQNKQn7$csnZmi$pe=SklkN8q#r|lODcjS@MRn?n9)FwWBm1+a#|w zTS5+y=h+&iuGr!Hl1#!2W1UR0sFVF1Lxb%v)t!~~I`C{wpi)3<&8P;P;A2y$u{xbwA*J5y6Y@AI?%N0RR91 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/lwip_freertos.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/lwip_freertos.c.o deleted file mode 100644 index 129e5c83339bfcf8724d159d641acd3f726ef5d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmah`Jx{|x47Ewp5{ZG2BEBS4CW3%d5rqM;>$riNxa~@-i7)qa;p=CTAmUX1hU2+%nqp@r zuGV+J19*CkM|TgYF{vG9Y5<_J_r&UmyiIfeD9oBS3+i554JyhqP=jHTm}ffcT!%_q zo5sSRy5q@h>%S9egp?7|F6hdvO9{OU{ZHRTzbT-7M*b+M~x0=RsKNr4!rU?X2XCR^RBImG1@GTkBn^cWc z?rkWQwb>{h+r(6Q|3$VjNpsc;QNGXF37(3UM>?KrUdOxILk+&fzq-SsUK=AB)mxjO z{6qD~&(N`Fn*YToMnGrTxGzP%E9ERY9jX^j+h0ca(Rl`h@QL0eP#D)+L0;BUD9iA0CcDmf&W__K^G{RQyc z#BI{0mR{_4erKPZ@BYKRQi{YB1+-v9VL`lbCJ4xri)eo4Oas zo5aK;Ql|*L+vlr@8XL{XSKIEc+Ee?^fjU%2>co{+b6@S}()4ehK;YC~!+fop26vWt zy}m;p(PW%iJtWfkS87cRZ?nR`No12xOZwGVLpsiL(!+6@Chs`wK1JGCn~mZRo8+}- zE66eOJX@pG6+2v9l1X@BtdmKWb+Vr`Xt4d2y34X&8=j5p?aZR$!}S<90D4Y}Q~Xv0 sd{<2RvX{4V&H{X?S%Npd3HX4_fRKIwey^C++rmLr_Y2+^5xnUB0o}bU3IG5A diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/portASM.S.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/portASM.S.o deleted file mode 100644 index 1079e672c12227b9ef504819b88ade1bb36759ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 544 zcmah`F%E)25S$ZHh>f;dS!tnH87mtKtt2u2;D{trm>4({t^A7q%%`}^u>ow{WN&t| zv&(Sz-0pWuDM%>HQ8VD<8vd%pIRf+%jft4lBpK9@N`JkK(Hr#RusP`lo2S>>40z}? z+r+&e-X*S!$Hkh2(B=-$QrYxwp-;vd=%gs1qhqX%wRx7@Y+AII{UH%q!KSm*}+`u P5!FrIoA`zWRfz5j@zWlk diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/portasm.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/portasm.c.o deleted file mode 100644 index 05b7d64621a7ba4bda068fb43d20a09bcf61437e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x4E2$uC4zxZ@g<=$5d=LI5g6F2s&pX?Ab!B5M504z)f^H`{j=;9zW|<_ zxJ^2Mr5F31-`Qtp(!IY^N|BhNfEJ7>%!wDy1OfT9O4RFgZW}@G;rXm_8R{$DqV_rR zCNc4V)CofG=BXJ`ZM`1(YRlbGyK2wbR|o1)9lO$M?#umL`u>?G5IB|BFkdOB!JQ>u zt?!UWG#ZYr$x_`X(%ENfO$={w#{N|zn|xT(FUA_uah8$p57RVx!&&<=(#G2HAbz(= zR_XT_IYN?Ws}-Vrhl?9B2``LwGRd+|_Hzmiw*Rm0qNvw`XXAR?vnc;?J;pVFo}>H} uzZC)B6_dW~<*l5v0AH#X;EitpJ|Ht7q%UBNgTkcVCU{vl1@DRoUUa{>j4e?B diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/queue.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/queue.c.o deleted file mode 100644 index 2c535628a8256466b09082809328a93404232807..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIiZ2P3i6G!qL||a6s?vopfcOEIauOZFM{|*2;?J@&@C(3h z;x_F7mK?u#erKPZkKXl_QVL=U5vB}?OA^FmL4**CK)>6)Y(@Q>`@`00tj}~Cog>N{ zYtkXqKEdGP?j%8DshNao)n8W|YSY_N+iFMc`O<0<>-~Iu|4b4DyqVW9U#O>vdvkoY zzJ~yKEo@=+0MPk+=1fY_jmr2a$k{gs{a~DdPV*dk@SJ7#iOxE=i8juShH2q!KGW@Q zvP)^6tx?I!9Zv7aB)l-z$t3eS+0OxKX#4-_j;nfYifmkOZH&qf*JD2?r=Bn6Dg9Og td{<2Ra+J4n&XMz_X63x`W%7_*W*~^q>Wnd))LS83*L@N1v7j>1{Q_yiENlP( diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/stream_buffer.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/stream_buffer.c.o deleted file mode 100644 index e6ce8dd130cdcb87c9a81a654f4b336bd0c8710f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmah`Jx{|x47Ewp5{ZFN@g<=$5d@ryC=7_Ds!A8a0AfaW{6O%tQE3+m$N%E5igE)GSR$F_H;lRdWC;=$3?v+c{Z-MHevaP>oLv= z)N_=d((@AGyJFIpz5FZZ9Dy&@3-IQb2_ZpdAPS#^6()sAJw7YzzA5gCh`i{20f;d# A!~g&Q diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/tasks.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/tasks.c.o deleted file mode 100644 index a2ccdacceb8c69431dacdcaa133e14b3d9bcfae1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIiZ2P3i6G!qL||a6s?vopfcOEI5{U{0Q16h+#Ghql;1_`1 z#BI_6EIEGf{LVf*AHC}N7bJ)$f(RiNfqu7p*^2r%_lK?1SfA-OI!BZ@ znMsFG`vilFyORWsrDhVURexP=s7-H6ZL1x%=S!<;toHNq{WDDv@M^DNzEDjQ_vU!L zzJ~yC#y(j+0JMG2ok=OWQ4t>nxoqs9AB;25skP99mpsp&>8x{`Xye>yn7+Bp*1G*o zb}7xXHA-2r!`U5~gcrs-nPgrk`#B&DZU0~0aapfTk&WxEO;GXSdhF-q)bq7CrQb?` s?}|xZj`CK{IdZ<#ES)#LOdgWU3Hwj4ao3HgwcL(;wdQW9O||80s~xqg_FZW;_4R%(eg8}o2%N@im@m}R;LaRx z)_2GwvT2s&g&q^>;ytq_hPQd?A0@KMn)%G&SevKut4)eV zyFbYuvOHU>Qk6TLU6Dz6VXTu$=5?~4Luj!5e|0BSy&gOp*IS=N<%jDr&H?m%DNpfR t5%66x>C0Z;$~g=0rFI40_zK_yG6O>T1eQ3cOzN$I*L7duLlMD??iUWcEZqPA diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/variantHooks.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/freertos/variantHooks.cpp.o deleted file mode 100644 index 783a4177dbdbf9868937d48f3607b4955ffa63ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 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 DD41f# diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/libb64/cencode.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/libb64/cencode.cpp.o deleted file mode 100644 index b7d5c531a83380156b2ee720692fd10a928491a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2104 zcma)7PiPcp6o22$ZZ>Odjj7g6GA*OK=(c00TQ;OpW87q`8?5O;>$RKN&A_hNY(93! zc1xiZtWXLC>s-VE8|b055gL?$m(Wvh3fWsOg~ zMP;~k1KXTTG281c!u?T_b0gD5qP{EWaX~Y03d@Dq!G&@9D$d*BHca85DoF(0TWGR z=n3&Xf^w}4u@D~%@$nEJ5Al5=zAwagk6wnCp&v77jdr6BKm>0{5J%wyA0Kx49w_>F z!^JUZ`gqjEarnl^Z@L)!FPru9!mO#6Ifs-5C8KGMjufl)s#Wxure#>>PVr)Wp>BR! ztJck?Nby<~KQU^T{%hvPO0|XZTqw_tnf2LFxLh$BH1=`SUHbtn-`@7^J>Sy$5U=|7 zRkHYT@c{&S^Rs!&D513)o~;PaGFuktvxa4WUTQW$r+~iG3Ott$u0vO1*J|huv-T|3 zTbJjuv_d;2cx$DX7v|^9I?ia~+_Y|3R-;AVXO{hq-pr<J^Z_O<;`LNS&+yH_g|NvQTPA= diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lock.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lock.cpp.o deleted file mode 100644 index b5b2359a180a6ac83bb9123d24c68f2922816feb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3456 zcma)8&u<%55T0e-G>Jmxx+YCqs2nMPDRdP?get@#RYOw=QleH!fDo%^dugot7wb*c zpbC26zyS#){s_2mEC(bw^}>Y<5^&%T;EFhKBYd;F6VHx+&?i05eD9n0&HFLl-A`V7 zf@kf?cC2Hi!NM+pzx;}=ec@nf0>_6;u4Vqv71&!;)V&lRG5nm7Es;TH^_ zU6=&E{?DA} zo2cM?H&nqfUjpW#j4#s#!*At$mcK%u8UDQjU!{)?|5c88{z+Pt|@#92US;i9e7>gUEoU!cY!w*rcS?kJ7^9Dw3g6Xi^4FD5*Oc!l8~9O-D@Wk z2NBoYkB99$5gmD9cRz{lPM*{3^oP-yQaY-nYWi^yI_P#m$Y_^;-RIcCbj4Gp$y* z=Z1TBIQhtqM7=wsbe8P84)mt;E(vk^C<0!Vo$PSa7&XT}TH^47!3>hiYK%r{(&Bka zpX!UX+^*&J8GavtN3o~&LO%XNZUd0P@SvNx25b^%c27L4Hld*95=TK}IHUlV5%6GO zOD?VW+4N}TG+84n_8FX3n7R_F&*_U9{~Jt?RaHG>_bTd<)+n_;J@0tc2iar7#j!h} zpxN(s@js&A@{OIqB}v?F;3+c1bv|l4hd?|Q@ixy|_Pvw?7_KXBtLPjjUkNsjId0FQ z^Yi!r;`ljh^YT1tk{2aP{AIA26XoNX{uyAdW$rxhO?0jIYCaB=Hqm<>Nb9XAJw5}` zOW#M2t@q1O)_lMEjouc=<(W@&x{$din zd2Cki_ib>TPnztV-|>2V>q?KmutYB~dJS-s^!OV=>s?ZMWu^DN(d&Slbbjv|y-lUZ zUvRR%`$muNdy?Kgqjyc|Rh8a1xt`ShJ#c)-(l{@-2YDRVKevbIr&2Hb0iE8%k8q$h z5b8HL{9lm9aopI--7x0+xsQow;XlO~ozIcaSk?xYJ_Yf)nkafFP24W_`?HYX#QhI) C<{FFu diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/api_lib.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/api_lib.c.o deleted file mode 100644 index 7298476ddc65997b1bfbf951f510460d0f2335be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`O-sW-5S=wiYtVzA_ytl=M%1NZ^x&JXLcqZy{k*56p1McXv&Dff_ULr5RgyvME!2}q80S7?+#igp+41Z>Kr0( z5)-GS_7HmKx5p7R7Mqc;R@^nUt~Q)awWYSzt}Cr3zS_^F@1IEmfm3@8^SNpo+?nC^ z`VM(`*f70+N@G1B()oL4O$={Gg@2UDCU2JXgRzEmoadwmFIkp6@7?fk!=8$0G&$1(a0X#Qx zn{)t6FZMgXv(L^)@9I)1MPiBqnlhrWAYM2Y1mx2^QNP>0Xa)W2yMxwAs84m9I)})c z#KbA7J%rx*?Qukn#b)HI6?aXos|{yUZK-Xw>q@JMul954`)86s;M88je6E@XcV>9K zzC#`!Hcaoc{80~xbpD=M6T{n4;h!Y3$(tqpV5}h>=Q-)YOO_?iIP2U*+E_bE<5!#H zwSIq*9VB_SMky+GIK3g0@WNOplg#R5Kl{*N`~T{W%6e^hHm`2g^2qFq;k!aZOUv{G5&HZ8Lw5!i_OuZxI zO=i+DseOdO#ob9lt)+Gns#SkoZKzFeOKqziwdYH#sjv6*>HBAzK;SiA!+fEh2KVN8 zv%W_GQC1XsM5N32+?o{L7S2CPWV1I*`oUO3IxS1mqvt%&o^aN?O|-GL7^kl`D;vH3 zBD+ZPT&+sv_BXpBQ}D7_CsWMpWH$%UVDta#j;nexJR8?rn?&xz^%&;>dcL?*{89vb qS4{e{m$!1x0(_}mfw#R3gn-O|kUjy{h)KN_9MpAR-~$oCi|!YJ{ws(8 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/if_api.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/if_api.c.o deleted file mode 100644 index 5ec4d9e97f418afc7dfc8461db15b252edebc375..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmLLW`#g~N2L=bQ)A~3L3Rp~+)K+Nb;g2)i4nnQw#Kg*27F95rV z+oS_nda>X6oqcvbdRLc9DTpZqm@*(Nh!>6p0es8@{ciW774)y~4q7LnKGkh>4k>RE z6Q@vn6nf{k#}OKf&B#|P?wVRx8_uTMQrl|Rl~xm9?dRhAXOf`6slA5zTs2MHnc?;N z4m==zyf?#C4*;FNXV%2z?Wpii64~UW<2KZSrhfZ*?3MAFjtZBT&y_aZ10H u0=_FIec8)fIcEucsab+IzC`c|G6RM9BrI@Hn$%k+Ue$dO?}>=K=zamio-DBd diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/netbuf.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/netbuf.c.o deleted file mode 100644 index 2be2134fc197f5e92eb4c4e29d4aee96a8ff1e67..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x4E2$uC5VAf@g<=$5d@rC5g6F2s&pX?Ab!B51koV{HCG8H{%mI?egQl; zahr4iOE302zq8NIXZQ9-DMez60-7_TFehF(6$IqdGEuM7xo!l#yT_A8E7TXdN$peQ zO=98!sUw8m)x&v2wbgp$s||NcZL1w;SM8~Nb?8c~nJ@Qq>HBAvK;Tqf!+fcn26q;C zwZ20h(J-;`_*wUfboP;26T{n4?q4Lb$-5=}WUL__XBp}KYnmoQoVD*GZLA#);;~J# zO1nSF0kS+>tx)AVoL`YicwwxQNfvdopJQmS{eN|5MZG3G8`s;MM)`;9F)ji0e9KSq uTM_VGG3m=*-pV-(@TGbI-uN2e12O|bngA;t6eji7!OOZY@UDp9MfVHyaV*UM diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/netdb.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/netdb.c.o deleted file mode 100644 index 32c1cfe65ed175786120b2a21070e54b5d9c9f96..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIiZ2P3i6G!qL||a6s?vopfcOD-Z6rFRpyrTZ;?J@&@C(3h z;x_33mK?u#erKPZkKXN#QVL=U5#|ht3lhXrL4**?K)>6)ZbkjO$K%#{tS@vMofFEN z)YuW!A;IA4;VeO8rJ00k-QQGOYTMgUyJ}Az_|j??tNna@|I88uyxMD+FICgTy#-#c z?;!xjsT*270CfJIIb$ihNfDm}x%ACJ4~;X>HqW64&smm^>8x{~Xye>uWM5sH*Sh^p z_9@M?HA-2r!}%SVgcrs-nPgEX`#B;FZU0~0X<4sLk&WwZOi}USdhD0v)bph{rQb?` s?}|xZj`CK{IdZ<#ES)#LN*Cw`U>fG>b? z6Sqk(wd8mvp0(HBuipKgQi{YB1vFl+e|SD=UbOY4Zc*nH zc@vu`A$0`kT|b?NRBO~jUv0QsYFq6%yJ}DEt3y{>&0@KqOTT}!1b|by4fB<98r)gn z)%p&3M8nu7uV$3!0g=u=Q)?nbJI>>qARB*J(l5pu(ovR?9=xY%JjB1wW2lX_<0P8c zIIA>VLJpAU`D%qO-{bs{Ov6iKolLW+lN}vHgBMt;J1gq75ZSoi<`m^0uE%}_N6%6I w7f%boXT_v1N4YEKESwM33+Jt`!F{;Q07&2P27|(+-a2?$_XFM&5u)h+0mYszp#T5? diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/sockets.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/sockets.c.o deleted file mode 100644 index 7c6edd8b7a77020543c2baa533a9703ed457188f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x47Ewp62ZWy_>xeW2!fu92n=jhRk{!c5I^7&PNG7gsCP&(@n_i)zX0qe zZj%mR>BWBMclO!&=wDwUB8VYGFk=95L4tT9h#-VTfI+W!*@^}?_eZVMSe>a3bdM>o zjZTMv2NVVuckKik%grRjHGcy)am(Ar9o)rzUs_FlwVw~)Khp#SUhOr^7piIE-W;#j z_aFeUqwL8zt1(@@$P#RP1neLnh&cu}&tL*U5ekNkiNJS9em@>yT&Tdh3&@_;5YOIe~h<6sPoC uDd4+e(wDuwm2-~3mzpJb<12)aATv-1pM)h2N|So4#H+e5;(Za37u_$XW-Uhm diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/tcpip.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/api/tcpip.c.o deleted file mode 100644 index 1aebb2c2171494b6d22c2bb0a4162e8d451fc791..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIiZ2P3i6G!qL||a6s?vopfcOEI5{V3fsJTio@n=~X_yu4$ zahr4iOOD?=zq8NI$KduxDFrcw0CNU}CGoU%X*{t>(dhO! z*{3wm)~aOX4(E4d5?&bVWRgXl?B|FywEcf|r&YZ!MK-RtF-7Hv>#<*wQ_s9SrQb?` s?}|xZj`CK{S#rMAuADc%O74@(3UtuFGX8-^I diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/altcp_tls/altcp_tls_mbedtls.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/altcp_tls/altcp_tls_mbedtls.c.o deleted file mode 100644 index 44040a326f75577c73865665432c202b5589d49b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 680 zcmah`Jx{|x4E2$ur4j>Q6<-o66G6bKh{C``Rh2G;0mNKg(nwTlplS{YCjKmcfRPEF zo48FnfTb7v#qaF1@1uKrqm&{sMLx|L(RD_=)>PnAjh2aeoz7Lm@7+BfHO^Z4TsNtG zjJ%0WI3#s|(7Sv%4XCnG4QguL-Bfk82`kxt(eYeINC$^4T z^%xfbdXBTdcwz*6R!sV`m%DP#0(_{NgSWp5)Bu?QA$@S^(# DvxPBx diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/altcp_tls/altcp_tls_mbedtls_mem.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/altcp_tls/altcp_tls_mbedtls_mem.c.o deleted file mode 100644 index c65f7d2e45b457ed95f97df0a2d31d350a51faed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 684 zcmah`O;5ux40UL`QHcYef`Np_i6S5xVsPL#jj;>m0OCBQT_h&0Fs(*{6MvRJzz;xR zxAoTU0G3|t7r)qX^3l7!QA&ZBf&k_W;5sK>I}-%p!!kg>+r4TA{kzAb=2=^x>lSp5 zDQ~QaMxYKT^e!JxL#VCPLtm}Cn`%pKJ3FeOcGbQst!BR5&xNm_S%LzmavSDL3mAp}|36Qg4lTS@%u6CnEBq F`vuSxGbI23 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/lwiperf/lwiperf.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/lwiperf/lwiperf.c.o deleted file mode 100644 index 23a586cd79b7297d8cd80bf6c2c2a7397e028ce5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9560 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/mdns/mdns.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/mdns/mdns.c.o deleted file mode 100644 index 8f776c30bc1013de2295a0f24118e6030136b98f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20740 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/mdns/mdns_domain.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/mdns/mdns_domain.c.o deleted file mode 100644 index ff9253394116c7934b9183b1be39dd8d760d242d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6540 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/mdns/mdns_out.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/mdns/mdns_out.c.o deleted file mode 100644 index ffb2a088f3378be26a5cd8014547a0a8aa59bdaf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8892 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/netbiosns/netbiosns.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/netbiosns/netbiosns.c.o deleted file mode 100644 index cc6ce55b8abc160159fd6cf1a5bf5d181a33cc12..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2864 zcma)8TWl0n82;z7+ja}Iwk6Q6)afplh1N;C+hD20wB1suu$Tz?fR$x-cbeT~FSD~# z*aZ`tzym}RmA+^T@k(L>iGZo`g`~degURlj3MMK+3{e6v+6N>4|ID22FlnNHa^}B% z=R4>8=d%0yo&ysc#{m-#La^civ^JU<&!DM7&;jl6VDYW1-nov;{^OYPtI0#>@NtY3Tj4$}JpCF9)xceb6=1Id;D`+f%CaSN!}W2+=pj zeyv4dZKM_b1g-Ib0r3`}y{0Q1kne+Nq!fuZ(@Hy%yo$yQ6I>s>Msi z+r=%qs$bIY=skh8{nRsZY8M1c!a`SBT=18vcL3yYJ2D*7A~3MCKhjl>*ztZl9t1HE zjvUd7!}D4!{DZbNyh+6gv#LYp zd}DW)CTJ_z911#Yx`m*?Pm=Li>|Fk?Y|l~xcwKy6vwvS5<%MT#n^wlT&;nQ&jll(Iav_>bz99y{ zyi){dcHx^%d`BJBT(`&&5KZe_k;khcz&cmnz226Uu4oBZy*-Wy)#wG6|EkMRyZnO7 zKk4$%y8O4%r|qGdv|;_;R$g4&oQz+$2auPNhD{fp@lgD9m$`Q#Hl1et7S8}Q&s3jAiC1$4M)4Hkx zUDBWKPf0NO~*k>XU7$C zoH03B$mP^LE@kw^n5-Cvo=MCYY6%zr{{*+mJo{c7Zv8)4>C0YUEU$@Uudf@2TWiWT z{5E3yFC6VL^>L0%?==%TBP4Vt=!G1?Mv}q~`%piDjWE<`yh&_Mz9n?%Jz>K5=xuZI zT|qvY3-Qrh7~fH}i7$+eWEmZgWtv~gQ9EO6whq98jhhJT!^WLO*E#Mj?0`qw9GBv3 z+z-(vUdA_$eDp3cVSE=c;N%nWp3qxG>!4o<#`gu<&i$A|KE{Emy8X>6IO1bMb0WEo zjclqJ3GuaCrun5DwcoMf8PLoiehP?N`3T&^{C2VaNp|eSIrFqa=*_lEU Yrf@SFsIx81r1d*-9atCVd(LqG0y0XwCIA2c diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/smtp/smtp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/smtp/smtp.c.o deleted file mode 100644 index c2686331a3d76f35531e37035d92af709933859f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11256 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_asn1.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_asn1.c.o deleted file mode 100644 index 62e3a4d7f1a31c19c5b319388c0d20335c888ef8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`O-sW-5S=keYe2zI`~s;bBkIy(74cR|?ZtRdJj>;sqSJ0Dx)<4i+pflY} zoAjUqlX)-mc4lYxt9N&ch#-a#!JGkHI})^~f(Sxb2IzOYH;t%&|8&x5wbg}cLg$q7 zI@QS#@Q7e=^>`jbZKWQExZ!W%Htu-4xQF|A=u4|vEcf$a@-s^i@G7@qzEn;V_ZE1y zz6Sw-$+OY3HhD`80F?R6tWGG}v5T*QZ2DnAy=bdJCB}dnyk%LM)4$F`thBY`Ve)QM zQ|b6OIiNJpS1V+0kMlD!4KIy#GR>k+c63Y{dVzm+XGOgxMK-RtIYsWn_1G`TsprW3 xrKcspXT_v1N4YEKEIA*l7tUK>BM-@C27>TSzRI95skctNteX(;iHM@;egPYmE#m+H diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_core.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_core.c.o deleted file mode 100644 index ebb8420f82fa59d4c5101b3ef687b32c10ceba3b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`O-sW-5PfTs)_{Va_ytl=M%1NZ74cR|?ZtRdJj*5q>>+JwR?w4w)<4i+pfgRT zO?uFQ$-I|&JF_$U)xEz{N#1iK(EueZ3MlC=aa@oOJC|H+NYE^ ziHZ79M+Cj=r}GfCm3ru_4R=dzs~u-o?Wuir=t`?uEcbIU`I#jMIF;KlUn-}GI}5y8 z-+>2YgLL!~566j)0iAuO)^soIGYGduVAHCZo zt91OE98j9)s}-_*kMlD!4KIy#GR>k+c63Y{dVzm+XGOgxMK-RtIYs%0>#<*vQ_oTU xm!6gYpB0n79ObT@v*diJUN~=kjoc@f83^K=e3e0AQg5AjSvMix6%j?z{Q`GcE*Ss- diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2.c.o deleted file mode 100644 index 586e889b69636714e5bb4d5699dc9ca348b9723d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`O-sW-5S=wiYe2zI`~s;bBkEGMig+uf_F_CJo@G-5=8#&N74+nv^$+wH=$j_f zCOzoDWZuiXo!OcF>fYTdrASOsKr=>kofEG$5d`GZB2ll?xoHHw`=_JESxaB&Cbf@| zH?fHlQU`$E)#GVMwWWIKt2K8+ZK^G2TkWV_weL!+X)O11Y5X%y063M~FkdLA!JRo? zt?!UWlnv71bDBiwx=*CD&(xX-(T?)?D#*qkmh_9UhIEu=r2B7a8V~TV{Sazn?I?-f zZJbp){!R9f=J{%cEZ^hoj7-BzW1UPhuag}eLW39hS9em>Ya+67z4ZyoKU|Of5{{n3 x{4bssfX|9aUygED&RIAgsu#{%UxE8@nE{Z#;mZsPlX|P*W!)IOD`^AR>q%1TbR&*9Gx96F~qzECURBy{lF*xO+Toop#i@YD4#k z@;cE`3b;?uyL>nap|(;FeQdZ*+`vs|3%79x_grZ;jn#fGeEm!l1f03sFkh;si8~8? zzP=IVc3i|~K{k1_pq{kVprSkn6~7phjObtYK2+M; zaT>kaB%f>hC)uSe&sZx}#V%(@WFlT1>tv!uo$Tp=H1rDp>W<5LZHjDMZ+(J_57%SA zAg7*L@t2;L0G}0;z8vMQoU`P7s9rj6ewExOml+7cCwYTGX;N>EcvbgJye}e(qWcB5 C_Al@N diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_interfaces.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_interfaces.c.o deleted file mode 100644 index 2c5febdf1cff3080711660a834ce5f0b0cd6bb28..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 684 zcmah`Jx{|h5IvKmB@zRlqJV_TL=a#VC=6^>DP0Hyh`Dlt5g8Jy*hnz(XZZu{NO0HW z+N4WQI^TP~=R2SMHMqMKLI9h90A>u}rXXH-A_%~TWq@J7f87p-_fJRdv#z|59q1in zUTGC2APx|ESC6M5G*+6SFV@{nu_d;hme>)yV&COf(^&22!q49{fxxNVhWJu7jog{z z_4*EY047Vvqcn-mM@eRN{-R=SWDFq9XKGc1(dI>bWn}e-1^KM30vQ9Zxo|Uz#LLTvx1)dv;G0WyMEJT z+N75bd^@jiXLe@4diQrqDH2iS)665f%^j~jA^6mwWukt!d(-s$56{QV^R~X!E$W;g zZz2=Mqz++v*H32w)mG|3L#?};YD;Z9J8D<$sRLJ9O?A1SOFw_p1PrJ08upjUY52~Z zU#;(uN0g0{bdbd1#UM`gkVt2ri8Ud#9q0O0EE|1T(l5pu(qWd79=;_>G(xQN7-(bd zI1b-!lvSE8aQ2bs8EXYE-{tI*OvH<0o=h~)lRX`QgI`$4J1y$9pjo)y#>C1GuE)3n y&@;`W_+A)%S48@`Ts;YD$3?Sy}QXIIXPs>ETPUor-^zI%H8>cOOuA9_8 zLf*tC8j{)v^e!JxLaMA(LtoY0y4p~i&X(F%J8I9BR%0g+DM6Kf(wJIUg+ARE6~(oe=3(ovd{9=s$;Ji@>BeW;DK zlVS8~tv!uo$ToV8oa{4y5qcF6OoPUtxr+*;d<;B zaP%B!fAPEkd{#{Qa+JGr&cgXnHFw_pD%^+541n|ruQA9?>aBqnb>HA!5h0517uv)y A1poj5 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_system.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_system.c.o deleted file mode 100644 index 4bfa726cc075054827ece66747bd69670a3f670a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 680 zcmah`Jx{|x47Ewp5{ZG2BEBS4CW3%dfx^HnT>+ zxlxvUxYU*!FChn%=Q%5dF5lU986X3IA(wC#$m2-}q4^<22?XQ!E2DA6MOV+`vs|3%79x_grZ;_0@hZeEm!lM4Z~+aJ*1WQ|!#e z_4*EY0QtydLz6~lLmOu*22lCCu{t7e$Ay0uW|KDy>PcG-D#~+E@ryCZh|aqAq0-il z)9BSEd9CZ;!7inF#zrYCb~(Ev6Y=6$Clk%hW1s_f2tMMC3*H3n(2g Ai~s-t diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_udp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_mib2_udp.c.o deleted file mode 100644 index 8b13b9e9adc2bd9c660ae8f590b5fc4f271b31c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmah`Jx{|x47Ewp5{ZFN@g<=$5d@qH6b8gnRiz7I05MmWHWC@GM9o!#i9gF9U|oVV1aYC`*j z@;cU00(eN&yM8(gp|(;FeOz}paSOMd9o)q|JaDDe%$NJQ@bxoG5OFGh!|_r%O|i2O zSL-|A0c0bS_DvF9^e4kq4FFX3Zmf>T+i~t+gxUDbf*NY8K}A^xYVc}IJfgGqW2m&X z<0P8cIIDF1JJ_c*&sZyD`7Y;oWFlT1>tv!uo$Tp|H1rDp>Q0M#P4aA9Z)3{x57%Q{ z5vXUHpVIRZ;k#nem%aQe=PZFQ)eG?ER|!5rW*`cmgf%9GNj*L*>%J-Oiio`EegP|n BFOC2J diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_msg.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_msg.c.o deleted file mode 100644 index f0225989043d8f37afa98a72c7d439425f8b252a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`O-sW-5PfTs)<6$_;ulCgSy7jYRm58XSNHZtDFrcw24)Pn%1F?f2pR~n4D>pk>w2Si_jpu4Yw2^{MEjWX zCNc2<>VRNy`EVMcQmaOxTJty5rrPqh)sEU#`@XcA#$rDozkkyN0k3o$=1aviac_>7 z>w5?QJ4{DUseRFXK-z_G53JG-0|8|f{zAPfqu7p+w}X7FQ?7Rw!YFWbj~Pm zViOLaj>+_Ho-YE_*6Kk+ZMxfPN9{U$YF{0wBUf6@bh)34pTAjx45#uM_E*Yj@|^|0 zTHk>OWN9*bO=BAk(^N-*&OQ@sLeh4e>vyqi{9&Qrj5W|a|F-aJ{Xml^aZR9} yqdZFAO9tN+k-n_ut(>z2zEm&3n_nk12r>hi_$F{%MCxr&pv?Ovzb7Qp!utmjpD%9! diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_pbuf_stream.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_pbuf_stream.c.o deleted file mode 100644 index a966d8b0e90b4804bd0c366019329b0a1eb817c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 680 zcmah`Jx{|x47Ewp5{ZG2BEBS4CW3%d5ru(?sw!Ow1Bki0lps2!M7gU36MvRJz{Uo4 z6Sqm1T5|ke{LVi6zIyj}hzMc`0n8b|ZBD%QR1kmoOd5KLrMk1CUW+0d*V~$+{KNIw zugIxqn*XIICctOKq%TLgE9WdZAF3D5+g~U5$z=wD@J-%eP?*%)AYRt}67PwKqUins DF+?#Q diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_raw.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_raw.c.o deleted file mode 100644 index 371c7c87bb9245ad94983dabd265c4b2264f8d3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`O-sW-5PfTs)<6$_;ulCg8Bv#tRm58a^kfof&f02fqu7p-32kjayxBvhE diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_scalar.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_scalar.c.o deleted file mode 100644 index 9b19436644951150e45e4a0bf65bdbbd67fe56ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`O-sW-5S=keYe4WDzd-8Ah`Lm)BHl`=y%-OQXW7Jn1yf6Qh4$p1^$&EQ0<-}`E1OfQ42+-?vt{Xw`?(wK`)>7xH3GHLb z>qJL=zypHb<-=(RwWWIK(@_e;Il<#qNLZ;!Ru}-F$*U63!NkcF2ukNI%*QChC_0}gS|8PC_3v%i? z%>UBU65z99(wC#$m2;My57i6jt*?;#ko2QrhnKh0&Qq+Ta5RWtR2M)c?~%~~MH8p-S&#|G2GpZA8dQ)Zpt^%73j4Iz zxbu}ZChi5VCQJ(5|0X+>=2=UbEPd128JUb9kaaTIyiVS0pEUFv|LTsidNqn{TyJfH z(uM1>pOaJ1VY*A-On}ddNneg~SI!x7K2*+}e_)y1C6^fp!Y6r!L1t2Kg?L`~O}r%{ HilX}k)59us z;x@?umcFxn{%oIpADz2fL~I`nc|H;udZ@JGhH`c;HH_xz6`<;p=A}Aj2uVhW({{n0%+? z7wbFV0hnPj>hbZ`=uJ$b`T)vI6RRWAcAV-Lv26TqK|O1$K}E)Z>c1vQJfyqUL#VX1 z<3TjBu_^TZ%h{(O&sfPw=`I%;G7&G1c`{L%Cwn>~4*kNvywj{+oiq#A+n8DD!SxuI z1nN0TZ|Qr<;9L>u%Ua&bF-zd2Y6jl?D#0hn3}nJ5q1>16*9dvuH~Ae7WFmck0lmX8 Ang9R* diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_table.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_table.c.o deleted file mode 100644 index 44e88b6b2fa746c958b46fee3a2a5de0ebdee200..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`O-sW-5S=wiYe2+L`~s;bBkEGIig+uf_F_CJo@G-57ECS83hl{1>mSfRpl_N? zoAjUqlX)-mc4lYxqkVg$lp--j0nHfERYttVL=ccqi$tAP>$(>(o3( z-oz&AkvahME+0-qsw`DQU#+F!&S#C`m0-iO*)JM2a8 zHcm?||0H|J@_dzCmF;nMM5f`Tu}-F$*U63!p}`CMt2@c-)e+ga-ueV(AFjuK0Y}e4 x_7_hJz-PszFGsm6=PaBLRdeU9ufTn{%m7HA@MQ+MNxfC@qV5~KEh0qG{Q?0{E_wg} diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_threadsync.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_threadsync.c.o deleted file mode 100644 index 97267023578bd4b00edc00c94de4ed50531105b7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmah`Jx{|x47Ewp5{ZFN@g<=$5d@ryC=7_Ds!A8a0Afa$G*UYxRJp4}C;lvdfQb?8 zUan0tfTb7P=XZXw@1y^4kBDFmA%JBDaAy*)GbaS#!z#d_*Sl>6gU6TC)@4Uri8gf4 zs4f#3jRB7-^lqLnLTIctLmxNYZQQ|KXAk%B0FPWNweV#<7ruTL1qz(X-*CQCE>rH* z@@jtvJOGuYlUF^;6FF3~EEX|+;3|hnGg44 zToXuhVovFKDd4--tS)=|uUyjvzSJzhn_nmR1UmzT@JXoa^7#g#%=@Oi&xOLQ?l0@c BFtq>x diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_traps.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmp_traps.c.o deleted file mode 100644 index 9e4cbff9391babc492d9a9b16cee3a1373650213..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`O-sW-5S=keYe2-0ieDi0WJJ5PSVg>*QhPBT6wk7$0eeUd*%kEUpY;#uAJCa5 z(1@)w@1{E0tYV?vM@r3^M?n0%l&BoEI zjZLNHpJbo1JYTI)<$IhTk!g5otdnULb+V%)($EY1t2-^~wJEZ3z0E1gKU|OfoSb^5 y`Cock0(@3X`f`-Ja?Xj)NS2D=alj$ zG4T-Uh(ho3z8RsmT916S;clsIwd3rnJ+-e6U1>G*<$f-{e`W~^oXTsMFO}28odsU4 z@4y4HQ96EY>j9v%_tcu0yq)C!Ng|uPS?EV&4RoAk(1YhRO-6Lqxr?;1b~21#Y?4*l z{Yefe%d^!ARldXd6`6z=#yXi~Q78L3CJk->U)@upY>{KNGa7X<1#&QIyL uQowh`q%V7UE9WeMFVze1#@7fwL1v&3pM(_-3X^*4#LK!b;yn?O7u_$yj4ZGK diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmpv3_mbedtls.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/snmp/snmpv3_mbedtls.c.o deleted file mode 100644 index 8c558d44404f2184638a30530507ebfb53fd87cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmah`Jx{|x47Ewp5{Usy5nmE26G6bKs4W9xsjAY2Fo2lRrHw=-QmWp8VB*j62fDC= z-NbFu0W3LwFMemAeV^T%YeWPwga8%{;3_3vb0!GDhgE=Hr*l~gdbbb9wezNGs5-Py zD6eB34FL}cdKdR+A(Yn2p^p`}id(qt?BFi$;ejiy<}u&Th3U^cLBJ{8hWSc9P25@H z#rh6-0A`eo-x`le6c6mPQGEbqJ`$@ViguF5CqXuTx1a{vYEY3ep!zRK5|8L#`z}=4 z+Q~3_wXrF*{gdodmS-$ws&to&BQg;$j&(B8vQGANL>hX9e|4u>y*foUuD3Zu>4)pF zx5%mIIQ>h{OMuUcNneg~SI${-K2*+}H@{BqlgkVQ;fuV&ATz1AK|HVfCf*ehMbZ5N D@UJiu diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/sntp/sntp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/sntp/sntp.c.o deleted file mode 100644 index eb734995160dd1cd06a4b2308feb106de31e3697..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6764 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 T*3(h)@fqU9y@t-!O>qAOXrSyH diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/tftp/tftp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/apps/tftp/tftp.c.o deleted file mode 100644 index 1d4ee7aa58b9ca02816026323d0550974e72c94a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7032 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/altcp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/altcp.c.o deleted file mode 100644 index 62f7c4664019210798608acb5f201045300df493..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x47Ewp5{ZGYiZ2P3i6G!qL||a6s?vopfcOEI5Q$0zs^*Yj;?J@&@C%CF zJGV&(u;lo?^E>s+TpzypH8<^5>_jg@8+;<~?yE!^_9aR+yC-Wk%fAMBtN0i$uLn=c?}aZXb^7r!9S^o76r= z-b5xCkU9W#FYX(CsxH;~o?5GHs7Y8s3ED)jX;O#nEh+b~}!roo*# zUas$ui;KlJ96g#i9)>z3(&>9*O@L^}S$q~`qc=O9UVf07x-6qlGke@vT?oj3CccPkNq5u zo}=t9o)&=5ib-FNa#zk-I3KFz&RbuBdvKWnkUrtd404lttKdc5H+WY>h@$%if9@{T diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/altcp_tcp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/altcp_tcp.c.o deleted file mode 100644 index 89a1feb57c3f63fe72ccd1868437f55f71266b5d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`O-sW-5S=wiYe2zI`~s;bBkEGIig+uf_F_CJo@EmQ7K|;;3VQO-`Um<8^i7j# zlOA;7W#(nx&g{&7b#HH!QY5A*pcx~&%8A#S2moG0>^c?1Y v@w5o|teEs=FL&jf1^7_C0B?N-@Bx_tA$8}n;6%~K*2eC|s{aFx^WGWOv7=mO@Haj-fA+mbTd%5k++dvQ8ch2X0 z&OP_s^X|PTpL=mi2mvVqDQqF2H{>$GjH^=Ei5-}{aOz7thYNP@_HqEd*oE!bSiiGj z#Y2fmOULb%iNz%|)Or+8KzA9WZZt(ExrhUS=7;fj&1)Aie5Jh?m)mR0NCu!kcq#u~ z{ zUZq<9q}2luZ;Sofs%RmZwAWX9fRSy#j3#q?HCvo}HSy!%&#_k~k^Cf{wlUh@Ja1mP zm_pwWcSjr^8&6@}_D~Sl+G*;C)*4GcX}@W&w#B(|{1$s0@9g2|X4|IKpldi|qGhlA zp8p{)(#I!L*;{Sove^kel{@;V8gIY9rXXcbFkh#@kAj~yGGMkvxV9Tw5R zPO(c2YB3QPyG4Ss`b7QT0bJiuX|3xt02;QbG-1t$1E8)b(!HLBppU1&sfdP%jA@hk$w3`{-jd-l#go5@~0_)AQ1DtVIXLT+u1QC^Z@|*kLHW@Hr|l7OaZm z(?-#87RsgLj@6*u{%@fc zZk}bHq@GR2@^zqAx^eP#@W=6aVtJSb-{Aj>J4i7+N4^G}PugT|uKP6EY8?Mx^#zjk z&G_OD6XyFPMaCT^2frYb9pVxt<2!Oc4PKvfbN%v;$(l})kME}xnQxICYJFc2zSp{^ zeQ|4q`94dL`S`A?^{pxO@!6O4eMYvr?m+@InT)i|_c7UOK6;)IBOmXVUqYGhYqHgR zO9c3RkRtQ_L=KJ{>kwZN*dc>D9P_`@pfg}g>RWR1KbOKWEUaa2#y80^NscJlgEY9l g0UEpqd8WujhKSGE=!ne6`%>d#wBM^Th_sCR7aX%%3IG5A diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/dns.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/dns.c.o deleted file mode 100644 index 287c3a036cd688ed638634e0d18f252bb8c6f900..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7104 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/init.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/init.c.o deleted file mode 100644 index 91b7fa9e6bdd1328ccc4a697ffe286d06c289d11..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1144 zcma)4O-md>5Ph9lHIACBUojex6&75HX%r=g;6V{1LN)H%b{Soq2t^#m_aINTLlb?@lHFFGGtC@C zU*a6K+DRr#u9FiJ#o>9^HA1;#pgv3!XE{mNgR{=U?h1V@i{Ojk(VNO;*ayA zlk3<74Mx++;#Z4Icx9klfeD}+Ndnyo&$J|U|5&-yux~=`X4vgtUjjjn3R{n2$ zMWxJ;ec5cD`@h?Xk--$5otUD|&fy|8GDH8;t>pFGzA{7BY~N)jhUuI6LX``GrH4$X zxZq8?>_O^^$y`jPDEr8o_#T~myU4P@Hv;Kl&7MOdTix4tq6(9;7jfy!r%bUuD=B_b Vb1EP=TThfI^Q^7Ub&ER3 z;Daa#V^Vtvor{N4pDHVhepRj6b+w^3t%llC+iKUAQd2C}v+3)5N+7UGui<>5NF%rA za+@lpopL>koDyq6jgC@lV674K@ksY+e*kM|8+QwULff7d>t4wj>9(-C3(Srzz#G#AL%LkhuJ}y1`nNeGL3m1b8Lt3CHP;u zlV5Z^A2FHgB{ul(R!(r;^*m-^j{O>rnj=7J9#*a)ChudEo|rT6PdLAs|B36a=CSmE XlUD98i@`8)LbQ)__J(G{RQyc z#BI_6EWOz8{LVf*pZ&XAr4)%N3TVNI!h(36nIIsaR*43^-c2hQ+&`VRE<3udL+YL( zZ&DMFNF5{et{*QVYOFOQUv0YEYDeuldum@Ds3TWe&3(0>OVgiu0)bO|4fB<18r)gp z_4*EZcvv#j36ah}GHYUZJ1+dQL^gf5q=&{D(s7=XPF}MteZg7xA=1X$@hG0yG_Upg ziyR`!b2Um)vA@L)nSz(aI+we+ zo5aK^sUw8m_2YR&jn!u4s||NcZL1w;SM8~Nb?8c~nXmS9>HBAvK;YC~!+fcl26q;C zy}m;p9yYPVbfgDFI)BfsiQ(f~Hr9^Qcw&>h z*6vSofGp3}C{@J{=T~GBUKs0Sl0}{D=NKAn|6ko%S+5Px#`QL*QSsq=j4J>=N5v_A uD+0bNCVknB?W>6W$KvcK=X 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/etharp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/etharp.c.o deleted file mode 100644 index 5442696f39563cd1d38457085d8ae9d0c48e9968..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6072 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/icmp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/icmp.c.o deleted file mode 100644 index ef98d4fc407a6c855f70ebf152b27a4359ad05db..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2764 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 NO}Mo0iy&e`{SWhfbzcAg diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/ip4.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv4/ip4.c.o deleted file mode 100644 index 98496fc815fc302ec694c15b64ad110c029692b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5076 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/inet6.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/inet6.c.o deleted file mode 100644 index 3dd47052d483a628dfca50a3ba4fd013709c9882..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIiZ2P3i6G!q)X;&gs!A8a0OAK+N+dF*pyrTZ;?J@&^cR5L z#BI_6EIEGf{LVf*pM%>Qr4+;z0xTF17Q_o@f&e~NfnmRY-3o?xkEgB6P29kXwd?GueRZIYTxm6r)qXCfKl20ur}i4=E7de{XNlMA zJMe&XoY<}&0XqN4tcfYwNfDm~+2q|qKN)MF<2;8Ry<}N3rnBCCq>Z(cG=8&5UhDQZ zIixht)+lAg4i|T15?&bVWRhi_?B|3uwEcf|=ViS%MK-RtHABUR>#<*vQ_t7plzuA# tzAGkuIm%l(XUX|evvl70I=N3SGZ4gAdB&Jc>TM9N>b{8&SWueiegXb)EG+;4 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/ip6.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/ip6.c.o deleted file mode 100644 index cd018ca28409b5b18ce024139bc4e2ecfe660cdc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 664 zcmah`Jx{|x4E2$uB@zRl;!8qhA_zDIwRB*ss?vopfcOEI5{V3fsyQT>__J(G{RQyc z#BI_6EWOz8{LVf*pM%>Qr4)%N3TVNI!h(36nIIsaR*8oF{&g!D-aVeSE<3udL+YI& zZxR!yq>d4K-G_^a8f(qSSDWs(+EKgCp4wLj>d2K=b6@S}()4GZK;YC~!+fQh26vWt zy}m;pQ9ADG5s}V6GHYUZJ1P9LL^gT1q@Rp6q~km%J$lWutu>$o$TfW8f^Yw-FaCrglFS=TeGP6a6QHqfS%*x6u%S! r-xZU-?B%VTvjAUemf&r#13n-#AfzvVHDXe40|!;zH~2tA@S^(#AL=Vk diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/ip6_addr.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/ip6_addr.c.o deleted file mode 100644 index 0c30a826f0a6dcb6efa8608673e6365ae633999f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`Jx{|x47Ewp5~%~9;!8qhA_zDYQ7Xh%Riz7I05PLW6NwCgDmf&W__O=~_yu71 z;x_40OOD@*-`Qv1*YNHZ5kU+gfH?!Ww#4gB1p)Z53NRWBZrZ`<{^_KB(N&kK1N~FV z>qJK>;1NNu_jn#cqty(3+;F#W8+V*t+{1l5bfwiSR{Oc|`!`DvaB8<Q{clO!$)xWt$L=Zy=V8#G0E%DkDK>$810}Oh-t7b5`eK=~Kwbi+5LHC&Q zI@VDFctFtW+@FR}Yt%y@*W3-<#4TqVcW@W?U1>Fq<$f;w{!J4EoXTyOFO}28ojG2u z?|=u8j609dnSN120F{5HMn@D)X5*_M6Mq;`PugfuQJ#Yuj?y%KqkrAIP-$bbBziY- zUTL_1>`|WQs}(xC$Jrs7hL^@VnPy%mJ31r{y}&}N&Q5 w>1he@SuyF$QSQn)L(Yflh4a=|$bE8|fgpU7Hy9Kq^;U_Obw9-WBBCg|e^d%BUjP6A diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/mld6.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/mld6.c.o deleted file mode 100644 index c6c2bb7201b57ae83a084c9a72e8de40007b16ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIiZ2P3i6G!q)X;&gs!A8a0OAK++DKF)fSRiW6MvSm3%>yD zCT^21we(`Y^E>o)zWR+$s z$T8)4wpyXfceuDDlkmb=CzCAeWIt!5q3y5KT^9A4pq?N3Dg9Oo s_^z1rWiM~#oF(w3dI8?}Cc!7j3>4yr!0#24dRuf*)=i1`L_}V6|55lWxBvhE diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/nd6.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/ipv6/nd6.c.o deleted file mode 100644 index bce7b19ef9ceff7c78701c88b500b00972706352..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 664 zcmah`Jx{|x4E2$uB@zRl;!8qhA_zF8qI6)Zs?vopfcOEIHWD3DP;-@F;?H(t;upYk z6SqkRu=HZT^E>8@RNJUWzS?$o)t=gS4%DGKQYWsoTKIB5m%e`%2?S2%HO$w_X>ezS zSL-|E5sim!Js{HAM`}$BZzs8bk;o?Rmh{kALpshf(u3DDO~yFuJVx4BI~m1On`D(< zf01J(d9GR^%J;XtAye?OSSM4g>SQ-(&|vfb>Mo0VAv_z`+nGoChwCwJ0Q7vzPw`6; r@Le(K%U<5fIScTmdI8?{Cg1}y145bstPzuXTR14|zQB7Tf*0K{6cH;& diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/mem.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/mem.c.o deleted file mode 100644 index 3e005c8fcd220efed867037fa79c1643d825ab7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3340 zcma)7eQZ-z6hF7G+uE(j+5vm*2=-&Z#_(lhl@NwH-ok*f@nuxPh_q}qZ)V>sA4^al zm}rCk0UHvwE<`enM*cC4@P|qyk@%7DN4u#hVpNo*nwTI_12G0X=l0$1wZVkb+@6nn z?(f`t>nZ8`@hLV<3n@4a{i(?RLIX6y&T1WT*tmZ{MPO$6IV|msv#!{GOqbHn;2y z6}QPD&vxc79V%+82n}wO1Ss)l{2=un>=`6}_X5<|lCPGOB-d`bf9KwPvF={7!s-s& zx;kxIy`6r%%~9{vj;O!S`bS~KZ%N(1EH=YVsW;Q1*m3nn`e)Br;;3p#%Da!N-=*U2 z36wiysH*cyM4Cll4}zAekODs4i39q;Z7g<5TT z4M4SRjbmu5ZqaqGJ$9KLQNKub%DeR|nM#iGPR0)lR*fYl)sNGJbW_#?=MvdC^SQ?( zo0~M7=5Zg#dX$F1=Ny6wd+b@=sl$Xr&*t@*I+cved-RD1H zoZ4N7ozRhj_@ACmd0O2xOK%uggR{#3;3E=t;h62 zH*_<@PCGTwmW+bJl5eOi)fD<6Qx*G6{yPIF&OIO(dSHFa;Dt`hJgm!vYMY5As0XY| zq~r zmvsSK$SNh7xtWJ8v6@?z%jUUYh1>Vd4pQFK0Fc09-bOud8lYx{k~|M9l%kHkW{?%| zeVphf44n8e>*e6i)8`vnmPt@tpqCWHE8+3}%6aAAMgn_*zn%Lp&Ltr`7{zf3$_o6; zxc|Sx0r$-$;p_4viq~enB$&_7&z&iJUwOfP`J5|C5@w6?IY%OUS&Ia&f_>MVD@qbn z6zB`!QMAzW*Wq$u{Y0%QngOG^puyO;qLT|>w-$9lbh~DuASb<}K;MNr;jiT9?GQF} z2iMD>*U<6ziTLy2AaX(c^?i{(r3BmLdb`@(P}0=T=kr@tr4%~~Wp z$Sr(pFx=nM1^ok?`=gQJ;r)Zr5$Kr{>0orYr;q#hg?oDky13Yt6GtLZya?sP;>Y_F zuL7tij!n9TcqM=Xd1-a_?WIcr7LbmQIbhh28hp&))SDJ;o4dpjk9vvlC`p7DM3L}X zi6dScam3RN`{xG#)!@{-gySWSIMu`vzsA5jZ1{ataQ>>H^Z0mP#HTvbd7FVp9aM@* zSV9~}5hx?0ebMkf{bFaI>JRldonTE5Y!AH`R)Ey6|7HA3MRRLIJkM(G;p>x=Z`?bq+@P{L7+wr_tl zGJ@}YNHS8Gn^06oGl|LRLnEd(H#rOaXpd+)E*mZ}VgJvM`jO5Q<02wI`Yj8hIZH(S zOVh0x7g0M7DlhVdxX6bV#d``D;jO|&G>EH+OW7~lqt$6}5%&=4)H{Mi+~?3>j@yfI zx1){X(ySD5`%$Lj0`D*?G&2MVycf}6#{0yCM|OdC1Z6YcdsqOPIf4YwIg0R+6a&S4Ful1D4Xm1J>rQw;Z{ygJfz>J z59#;i1N>;#3lb^%77Zj*e-Y9B%>N#=N9#vixJ7Nk=@u%~Yk~wGagih1Ta1tW01b;! k_Ti$pQ=TYy2$7?!*bp!0v}{aL>7UQ+w+EAX>j8fM0mI263;+NC diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/memp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/memp.c.o deleted file mode 100644 index 9c40ab23780067891ddd75625c40cf1eb089aa61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7516 zcma)AU2Ggz6+XMOj-8F0+Nr5s+f6o(m24Wb*~BKXQd(kf9Fr2)+pMh`fmqwgmNoLv z*51$rTAH>9B6uK3RaM|6!VxNv2Y9eVks>Mqq5>q0@=`<|`he6vKt-fh(1Hl(yK~RZ zowKvhBhAh|=X~e8-@P+)=gvMmcKT#279+73r77@;hVC($rXh1m(+C}>#itf3aN9N# zbmt%cxwBsGEz`i3&AxK??0R#2)B7Z%I8xMhk6m6NmH;Ck-FoBhmv@4ZD-*+`sDOvHYV>g%H){IO!|(|&(D6Pw5+2+T3l&-+|O zZ&2zsLg5L<+NLB?G!cD+HE`o zVkrtR*Bnfmngv3=l&H07JeNC`N{>G}y+3tmC^MMJ(#QeM&Xwlo7bv!yn@vXwADy5r zt<4i#V>=QZv5&+$y{_1OvF_MThsQFy_e+9q-w8Uxb#b%s<8GRLPx)bfkH-^?4$vmr z#=l@4;3LldE~k9L@REzQ1b9(AaE2lZJ1u1t*X zb>Yl+ufpqmr^sI(~h1dBWmG4pYy(-^Jxln&Q6@I6}>-;X2$K4p1 zM=6z0(Tq*|^C`3I2R)wcFoVwTQTaVVXWa6rU*-F0G1T8)h2N|2I=@fl_o@1{%BShs zP=607`~wQF^9NKOD^p+|KlS1H8K5gR?ayZ>0CUTujKb^uL6twK>a!}JrB_1z9ai|m z3a|5nDnF>|hg5!uUJdnkMB$Gpyv`q0`J<|SSmlT5x1s)yDf}^o*ZBuk{y|m$apgZm ze|92Rt=?AtJIa5beXReuQ+Hr}X9s?-@mpvI9JVwc?To;R8RV06e+b`7`>j9BIG~3^ zejAOVm<=m+I}Ouh$RDE5hWsoog!}<|Cgi8-8zH}+z7z6O^uv(fOFs|!UG%Gv-$6I6 zzy2-g>!f$A@A0{vdMIIExi^jeU9{W!FBpFhJ!JiLwA1|rvvn)_=fKwecSp+ zJ>&=JN7nB#`J?np>#rF;zWz(4rAp>3^;hZKN)b+RX>M_G(j36RV|?gNN%Uq)$T=QiOrkr~nquCK7y!B60wlPnQo z7m|E}2)l#i=l!)O&RbFJ9+PF_T@~+Dzd(e2BFrd{a{~+et-uL)HP??28DuF+eyI?nsN z@h=jkQ2!M1E`!e(EYC&D!%56X{7cs7t%C8tY<(7O{HLwY8$IJcV|{)#82>BQ&sm>0 z6g(vqf5iHitpAwxpR@jq^`EzXk&7~G7ngWt;d6D>KbNIdEnTQm=Ge*bBH0O#SH4AK;&m?kGcO82PL(HLt|p@YN+6LWl+&zjfhD2>~<`M-(P7A z)C~uZGlrir(C{K0#5o!9tVdFs$qchOA(zNJb9Eff^5E1#SailRI!XW0tRoJV7R4Kx zu(Uz00c&khQlwFF%UMe`pp@l0n0}1DK5FSgYhT@{kqs6=C9+}Cp$>}whg`gV>g9%` ziZlA^%Zn{cRv)!wp;fwW?DEPClhsEpS!iX?oLyO3DlPL0F>+=iGgqyyF3g{=mawV$ zkk-RE-V&L$9wk_VU9;OH+RZ`WcspfG^T2DmE!Zme1I1?=vv|fyuw%J_Fg{3WV~PFfQ!4r zKHghm(l0OLp?+t%U%cngFZz>yzsqfx?>hTYd@pg_9mfTSFX`}YD8APl@cmTrU12`F zzo8G`3Zn0K+;;W-h5cbZ#ALj`;ee~}D)Xf|20nbl2p{TQzFu~s_}*lk%lEp&2c5$A zPs=CQXNvjIubAk2mjf=}-4mizuP`@#WEX+Io+!#9x_r;W{X18va zH_#S+;EU4tFOIwVDvrJs*NeVRCUW&%=Q`1Z4yB!qz`X!~HE4oOGY)Oh2fiqMk1@d2 zcgfM$&-J2jQT6+?2Kv4lfm??lYohNJ#<}{y7p3o-(s#wtmu61UcSH4y{|98w(6zL0 zM&R&`FDCllPe41D+aP4kN! zjvV7yVntHTd_Us869Wc@vvZr%5Ib2G{0WZpr?MFb-aEJ!%vZB>yeYWl6bfIv!oA7! KQeZ7&g8MJm2e4uQ diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/netif.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/netif.c.o deleted file mode 100644 index d4ffbfd99417da890007903ec417571088a88718..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7544 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 CW2CbH diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/pbuf.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/pbuf.c.o deleted file mode 100644 index c3b663b8728f124fad7b3a94cd20d49a04e4a40d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9392 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 y{!@J1tDH0THQ<%bD9?NDJ@)mb z2;S)AydTeb&U?;z&$<5U)1P=oQ52G*P>OmM(Y2t6_+~|yq6B?_&YZ8-+1%NhTKM{= zkM`-GtJ3;|_x|-j{T3w#Xi0xzRau`{7}aU&h&kR;Hr8`T+sRd$95Ct13;OAq{TGy( z8?SHV(rtBPT&Kw~lhOy4 zn)E@Rc}u@vcw`}_j~3o8C<))@&Nik0U=BR{JVstOAE(>;&pS)H2XlK&-$~BSlepUv z%fP>|R8l^Z4yk5PR|}M=&-)YE-2F~4u9~N(gCa|{QOBG^Kn(zuYt0pu@#x%~(L>X? zlAJ53jk(r3{Pp=0#jh1H2K)1kO+STb5Bb(9wP@001?w!Cp(~Wmo4J-}d^a7)#&ThE z;c_&6`Z^_jR}xrh=(Q**YqZ8W`{^(ZU~PfR2NyPSp6klQx!k?Z@K}O4N~tOHYVr^z z6Klfu#s6-OU#7Ij9253V@+tl0Ry2F(*rU0mc{81CFMTOC_fqq2%eRpt&)Shz=rv{S z^;KFsCh&gxUhdasO6b4n&T^0_b=~xfJ$$osGyNy??&=>q{)wMd_-$_QZH`A&;^Pf9c zTh_?8+xI%L1Dy_^%3nL)#Qjcq%X5HZ;ccSevkFD^@YbcAul-9siu1E0>G#bT-Owq0 z&-`ZY{q}G5w+cJRl{2kx`N+a~<3V#YNnp!&9j4{r^MEP1~0 z7Nvrw3f@6fgCEsE$l1TJA3e3h+oQTie>JDH1A44*L;r_WYx8q+#}cXePk!c5VtO_+ zlQ~Q$(#WHz6-!l8#-RF+e(H%+Q} zh)T{VkxHJvu_`=HQK_F_B_9nq0k8wGf7JE)=n-4zkqX7S5mr=;?jPT8sWj+{54y$= zx#B~vc)%6s?0TY7&=t2HFNsib7yB~`iS^x<0K}c5qN4lpyPRRHH|&acUloBpwDLLOZ)&xQv68PY=9>*>oz1VDH84LsR4<)fS9CFEUlp}ubk855MG!y1&O@!FKR}y*0MVvqtqq|(_QSYXw}`Bn;1Tdnzi8$4qCY5zx+L7~Km|&lWY-Z`zgCbIJni zc^p;ObBfyQpRKC`0M?@a9le) z<_H=K^Px1m!ZB_iw|ki%%2a$)&6qNtuWF_&t++VURibcEHE= zB1Q6r0CMsTgO7h5G2bwnfw0%d=+tDsazX nV!k7jXq*F|5AQKTUD?48?3X18yi$D>x)XOC>%Am{4&1*1Yx1M! diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/stats.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/stats.c.o deleted file mode 100644 index 97d4c59ac42193ff26f0ed5b567134da1c23e8b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/tcp_out.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/tcp_out.c.o deleted file mode 100644 index a9dc64a1f22140079e9325a301f6ced967bb246c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10872 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/timeouts.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/timeouts.c.o deleted file mode 100644 index 073395f4de226dc42df1aed3a326f23fac8e9e00..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4772 zcma)9TWDNG82-HFG-598+G@SFVlHZ%n^vtL5!v1Bo_ZFuo8#`r zS`cg>EWXqig%Zek;rLowPuDN~d)?k_ zS6cV7=AELxmWeAopE*d22_H**_k*VlX3}dgYG);02cBN6Y4a-*F)p#rwnxH<$M>T$xS9FOZjZ-}? z4cnElXhX|{exV7!PjIp$b!|oARqHKTw}+Q5^ zbEJ8)&85NU@|1fa)^fJdJ?2JJ;mL6PJGUdnaoV=Byq!MW^YaScmL}1q#_27XUqrBM zacAAbv01mhYc|ERzEV-^qHv88_ng}m`>NI2)in}5WyMFvuF3Zq2KQCT|BLM_s!jds z+keRomo;#-XMFs@_`sgWpBaqr*qOLHv7JVTfk`{*xg1%&P($}Vy={gX)`Vx8toGnK zYrWNJcUj$5%-S53Y_+CtU(+AgYY`&5Zr8IN(8I80^3rQlJ-eJD)lt=0v2n`P=f7Uy`>Uw+Rn5nD8u(5F-)Z2xMZD(h zuBp&$iWzb9{q`7fb3bh~;sI>GbsxFm|?$V*zdsR{lR;v z9sBVEY3~+xGkuO$3G;oU476;YHSF`SnUCK=JF4w>8RvK2hWYSkjpIIl8?~|_h55Q= zd>VQ?_QO^qzT2?(OFY+HJN84a&hDhc63_L}MjPq4(f>We{=~4qFzjy)`v=3OaxU*I zES5`&4E2|(bf}b+o@9EiMEzMRIIonIPkgqMnM0ZRTt@hclvykmokA6n%q}`2LgkE? z^OE@Wfys2HoO{_Z-IRCoUNWDapI^w3moDToB8S4lK|L4lC20zdlXbGf;WH+^3=$Q9 zgPNW%>I9`^u8=FQPQN5Tiv>AnKbr$Z#}WRF>ttROPg=m(y)636(!!+w68&t2>vmAuGb@L~|I#mKnN!|@UB_XrXG#60(Mi^0Tt0MB{z z{7pN^e&o4^TXf=e3rzTV2PS2|DVg`QoaYQciPE8bIX#EAT=ZL4X=PLpC9>&qni6xR z5+#ZYY@kP7v2o8Gi5&<#^9k-_0<;KUpX;`a7Sm`o@2U!_4TF$gsahwEN>)&<7sqOa zQ|~tlr#`rPekmdhmeTYonUJ5#R{%2JdulhKdTlQuP(EY&*QkG z#OPBqiFCPK%*`#9of0;{tqFfo`3P>1aNh5_@P20L#ltvtV>EFbW4QxQBcA`mah-7= zt{)cWL-|&PWBfcJTa_P5Q`|k#2;ur*K?&gN>(?3E@4|?q?Zv~qjN`m=c$io5y$zjf zU5Vmz;L!O_YJ7bESA4HS*ZEGv=D8_Rd`IBW`Oa&6>{op1KB4lvh#1dViQ+pBhtBs8 zi~;y~zRh?P-)GSE{P;e=XP^?r_bD7YUq22aUKi%WF<0eVhOYBvVf4eNMDd-0L+9HM zzApHfk8imuzu%zid~d+G(R_aaPUo8kUlcy(<6E%e3!=ZycN)et;!0G04AS{t)#l5$ zWX0EO@I_G&yv|A#-zJ0aV=X_vMJv7$gYW*E@bNuO&+nwhhtF4)?|I;OU#ogcfluYc zIV%0oE#mlocPo4!0f#^Fz2k9iHtrb%mqmUz+JD~wr_c8c=F7NVJbY_c>$f8LcyF@2 z3qJk78iYk&7olKHJORSbC&1}-$v75n5vt007#A>DA3V6Gh;ezJac*jjq0&hl0zWAd R*h=NSsN;fMjM@MS_aCo>s1X1F diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/udp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/core/udp.c.o deleted file mode 100644 index 38cd8df6ede75d6490956ec541d1cc0c5102ebf7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5956 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 K_Nz&!E$+WK<}zLY diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/bridgeif_fdb.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/bridgeif_fdb.c.o deleted file mode 100644 index 845ee8902788cf69da8fce029f9691655b3ef4a9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2232 zcma)6O>7%g5T56?V<#?c<0iokC~^`*P2Da@9aX5|kUIULYJ;GZ6P4_>y^ROrq8FDhADaWKJM*UQ|ZkPzowctpg-Ty*o`#}dvV^1xA zk&XNc|9)bOq8FA3zPX++9}?fizrRZ9aO+~3(!rLPzL=*pwWFpuac}F}a}GU!w%3A0 zPY;s#5S8Q0bdx^)Iy<~c<8P&RNTnFX`*_2U7Y-3OJsiB+Fs*r zC%bEScKP$HvWa{rIdu2+^0@ffVT`pbW<1dH&QGauTO_T8m6?01s7TO*busn(7SYm} zA|e@c?Q$SQE2}rNfsH<=Z=)mqOdrkq7LIH1@W5pNm@412Nm7%;3)K%FWyf_JR{i4abJAO7oYXTFLR9jzReor{TRNybBWwB z@Ly*I{w3BJ@9!fwKI6nu`i!j<;Hl6sO7psLEqAR{P>YnbcSp2&J!e-Nlq`{{)r=z5 z>KAIZ-e@#U+ahDvwHB?MZB+Go(^JiSxu#jtY&~Z+id5CBMRUZJU9cGX9gA|s9$&|SF3uBSA6>N zoT}M&!zeUu-Qqp|PkDlIID?jFW(9i zBzO#bc$p;Md+dAphB&~QrAWSac)-hd$HRwl$+ybBm#@sh8A;~i5Prq#<=bR}6pvwj zche8Vhv4~H75E{=nGk0e*D0<*<&Uemt z&$;*9xx4S2Id@jmG$_%KM}&a2l%Gj0`6iE19E5$N^g$8_FjAQPdAWABqjydvj+O3p zP)K%%@N#jctrhRNdi$5m&~2?S-YvCJNO#|Dzgp0{<<9x%$4eD=z!=^6@%XR!V&&*g z4tozD?M>cI&rQ5Q5BWd31INpq-*yYQAk~U14|Yao0~YeT-4h7?oP8@`%w+D|ju=1n z7!P*2?JIB8ZQ6%7v`+@UOJnN&gTTk^G%}mQGk$mEr@L>}(sNI^C$rkM94wdl^c=2z zd6Zre8?uvhA+eKMBYqYO_@RDv_0g?FZh7S|zYlu=d%j?`RC+F#Up@cQiQM9nQ8X5C zx*%E8GRt*nv*M;sT{yXp^l)Z4)JEVNJh?<9#o_xh9iz8eE{ zB>K~W^%zcKcwZzbw+ejUi|y~PBi+l;(UFO*&-m*v_E?#o7w`xDd=wmvT=8^dV|XZr zhcPA*&fvP}7?R)sm5hqR*(xD^S^=@dXJYup7*>1dNe{_>>SEdNlIWP6cU!Cy)_YF@ zvBaOo@aHl7RfvQ7a(>IJSx(dPj0)yG%vXDX&3e<`@?e*@E^l6TEDH^*QEAvgz_A*w z*R9Q(WmYW*b$cmfOEuH6BT#l)X0>9vUR1WV<*_aw!)DEEHQk`1S*@yaY-Df4HkuEpB^5G%FXt8D+Km?KEJ}&OlyVVAp6L z59%fc1Q_mi!!yfbJtwd=<#|@ygHbg-6Gqu}VK~+mgF!U$87WxP8!_hR2N~_VZnzEJC8|#MYc}~5&H57zWBjk zg*YP2QEQ=9eSa5xNmL2zQL3W-eJ@IaduCt$nvlo7Z;P_7n$tM}sWo5qjWORizig0mKJvN+c@LhnhveiJ#?;_yQO= zahvo2mL~SBXYIA~(Yd)+N|BhNfaZ)S%!n6G1p)cAOw?_+uWCW}_Ti*<9_kC-pw=n! zCNXiJ)Dc3jd0&sHvRaLNwc&25ZMEasBlcN zNlX3yA_qwFY?WM;?QniWCgFv#P9|B@$$pNZ!S?^vo#pi!@N8Ufa~fqIuE)3p&~u!f v;&+MZA?#dodmq&$6ij3r$;^74_tw^$&XNBiblDMez6sx)Inmnre;6G4@HS|sYUT33~7=l0>Ka#q*px<<`o zAQ%CIFnmZJ00Q)8Nh= zFV=U+BkB)dM`qA?4EvGp66xeUwkAZh<1{`CveBC*{bZ~m9VQ9s?l6v{0sb}b0&T1v z_rez&C54`Ukv$}NzEUPi_c%Kt)9}(*C)3R9WJib4;06BGon-ZDh-_SMeS*>t*JHnc zqvt67i>C$PvtrVhquiBq7S4ytne*0H;67Yt0Hja&GK0*d-YR%r_YK|_5u)gR0YO|Y AumAu6 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/lowpan6_common.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/lowpan6_common.c.o deleted file mode 100644 index 238e73bddcda80e4846b5c6f5fd6a136de7b207d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmah`Jx{|x47Ewp5{Usy5nmE26G6bKh|&SER8{Fh7(mSEQX)}_Bvo?=nE12(16^3b zZsIoS0G53AJ3rfJ-&gPU1`$C7!Gi??xXysnnh`v3VHKd??Orv!{@vqo@W7T!dEJ%s?(oNNeomBK0;17kS@=dqN^BykG54 BFc1I$ diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/auth.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/auth.c.o deleted file mode 100644 index 616c12ce3f53d8fae8e4dedc5962cc43063303cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`xlY4C5S_(#f+Y%0aY-mt7y+vw38 zN$fNk>3L>$-kkpG-QOvtNJLRYbB`!?P7qHC5rwo$)bDn0TT%bv`LuNz>nq)+&Kcq+ zGwF!bG0foR=^~-VS~CgNroXLr)ULOu_SJzp@}<>GSNr+&`!@@~@M_brzfuju_ZIwm zeUAbRHnBrJAkxKWZcPep$4(E$ve}0v{bH;kofZY@!CRhZuXyV`CfZm#9;FkT6}4td zoI}KUw?@fxH=HNQCVVjF$tH_Dxz7nWxc*Y!d0DRw&BFDzrk49~J;pVFp6~7zzZC}O qib!A9GAqX{z)8&#eDQT41Y`%8^bPR5B2sSy4^`d|{GO1Yh4&A=LM!(G diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/ccp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/ccp.c.o deleted file mode 100644 index 26b6d93158fbd6e76bcf833aba70c4d1b0b4e5a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 664 zcmah`Jx{|x4E2$uB@zRl;!8qhA_zDIwJ@+%Rp~+)K>UD9h(w1#)m$Z*__J(G{RQyc z#BI_6EWOz8{LVf*pZ&XAr4)%N3TVNI!h(36nIIsaR*43^-c2hQ+&`VRE<3udL+YL( zZ&DKvNgX5ft{*QVYOFOQUv0YEYDeuldum@Ds3TWe&3(0>OVgiu0)bO|4fB<18r)gp z_4*EZL`gEz36ah}GHYUZJ1+c-L^gf5q@Rs7q~km%oxEjP`iiseL!^zh<6%6pXB&pY;dmFVHu% z11%ROna+Eiw=+AlU%kf%r4)%N3TVlQ?lR)F=7NBH+9c|CyZ7~=|MYrMzi#Op-K5SX z@+LOXnA91dcl*)^sZy(kzS?p3)V?}!4%Lx5R;RACTEt>Mmwx{i2>_>b8|E9uG`O?E z%k>@dhz27wX(Yq89uVpDGqEN@w9_n(1ljn*k{%jsNJnW(dhnhk@f-eio~wuS)*()qA}hGK`z#V#vib)P2f-@bcuTM&-w%O7w8+> zftCxCOy|AM+nJr&uinGGQi{YB`Ltj}w;A!;Gl5SvS|{pvyLS!0|M+s&xNPey-J;Gp z@+LOnkkkpFck|o~s8X*6HMQmLs9m+^?5hKHsE%D}HIK!9F8%(^697)>Hq6(GX>ezW zm+L#^5k&(tZjR!29TDmDGqEN_w393j1ljn*l72PTkPg$7bo7=a@d*DqPk}bpPKM#s z#%ZbH3UY)z&sWKH*&Y{%WEx%?>tvc`o$Tlo8oaTQA-bwA)e5h051A6%dpF diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/chap_ms.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/chap_ms.c.o deleted file mode 100644 index 33480fb1d86dd13e7770e4c63937782bec2c1da4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x4E2$uC4zxZ@g<=$5d@ry2n=jhRk{!c5Hq@jNbL})nnQw#Kg*8z1@PR& zZPEcOz1Z*k&OSRIy_;*L6p1McXvT=bf_ULX5RgxcME!2}sulEaAC6jQp+47b>Kr3) zQWFnJ9U$~B?@uFYEH@)xt+^X&Q*AlhYDev=eOFpdeYKxU-#^m?0;l#G<_py{xHHG= z^&Rqvl7SgLX1Pv?bpD=M6T{na;Rh1g^v#lfGS-le^PF_@l4a>L&N_FIHr9@Z@vBYq zTED-@9+Es;qZAc8oZXN~cwwxQN#=F3pF?P{{eN{QWxX~$8`oQ(M8${eF)je~92KYd utqAz8nDk{YZ{?f?_)@b3Z+r#t0hs|IeF94ylqU67!K=D2@Scd^MfVGD1}!E4 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/demand.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/demand.c.o deleted file mode 100644 index e642c30720f04c6f52a88b62d3c456178b462607..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmLLW`#g~N2L=f~;L||a6s?vopfcOEICK4S|P;*Ey@n@Nl_yu4$ zahr4iOE302zq8NINB{OlDFrcw0CNU}1@XeEAb^i$V9@Jbw}Qdl<4Nm0)EByg?kVL> zYT^;p5ry8>LpwrawHf(p!`)KbYRB1Cdum@Dy3%UqtNmPj|I88;IJMU>U#g~wI}5yC z-+>1tX=cWW9s)Xl&#Z~b+ezV{B(mw7g-(n$&~cta51+Fv9n)F&KGMe8$tZrcXtvEeo$TkBG_?JHb!TP04tX}Nw>gc957%Q{5~$}(aZ10H u0=_FIec8)fIcEucsab+IzDDo~G6RM9B&={yn$%k-Ue$dO?~91M=zamkTP(5w diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/eap.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/eap.c.o deleted file mode 100644 index 9c52748f77e8e37d42f707b59a1900e5ed9c5d88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 664 zcmah`Jx{|x4E2$uB@zRl;!8qhA_zDIQ5e{&s&pX?Ab!B5M505WYOWGY{8=_8egQo9 z;x_33mR{_4erKPZkKXN#Qi{YBMKotbu_HlyDu^hgWukt!d);a?=O>AQt~Hr7DLc@CYtWm)=4XWfTL8*9hIcw*DM*6S~F zNJ*ZnQHqNFEpEsZye!tq6w5l<%?W8}^Z)A3%X%SsHmWiBgs diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/eui64.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/eui64.c.o deleted file mode 100644 index 5c5a30d6955d1dc78f3d091c7be0c17780e24606..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIiZ2P3i6G!q)X;&gs!A8a0OAK+N+dD_P;-@F;?J@&^cR5L z#BI_6EIEGf{LVf*pM%>Qr4+;z0xTF17Q_o@f&e~NfnmRY-3o?xkEgB6P29kXwd?GueRZIYTxm6r)qXCfKl20ur}i4=E7de{XNlMA zJMe&Hl6FHq0(Ab7Srb#V<03u_vdO!JelpfT$9WDtdd;%rh0c2Skv7(j(|BT&yw>e+ za!6^Otx?K~9WL(3B)l-z$t24<+0O}SX#4-_&dYjjifmkOYleys*JHmTr=D-cDg9Og td{<2Ra+J4n&XV(`X6d}~b#k9vW*~^K@{BQ?)Y~9j)qN8mu%I;2{Q{k2EA#*W diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/fsm.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/fsm.c.o deleted file mode 100644 index 5535200d6a8de83a38b7848a76117f66c8177406..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 664 zcmah`Jx{|x41GtEmPibIiZ2P3i6GzK#&<__J(G`~t9> zxJ^2Mr5F31-`Qv9qj!C!l!BN-gc$?kf&}e}AVP>mpx^CYwxa&c{bB30t-ARJRQZotFs=ux_)TXzkw$+Z>^QG0)SNr++{+T8y@M^DNzEDjQ_vU!L zzJ~yKw7DJt+P>$`q~zVG@J|xCZ0w*Pj5E-wwa|l?JkOr#taF=aQ=D*$tV3m&H1nVqPb^IUo&f{$Jg3SuZBf#`V@FQSsq=jB^6@d@WAtmr}rY q#iTELc`N4}fiE>n@V1u;Awg!K5T69rh)KN_I;iTti1$Q9UUa{F?kj}= diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/ipcp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/ipcp.c.o deleted file mode 100644 index 02ca82d28a3461cbb5b4cebc64f352f11c3c70be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIiZ2P3i6G!qL||a6s?vopfcOEI5Qz+ds<}!q@n;!X_yu4$ zahr6hr5F31-`Qv9YjA(3l!BN-fH?!gl6c`%5WvSOFzoklJHhbb`LuHx>MPwv?~L*$ zHE{-YOrdx4bP=Jo){cC&>29kXwd?GueRZIYTxm7)^?ojX|7HmaoW^UIuhi4Todw>k z@4y4HQ8LmApo`DknwY#Dm;O~En|@g67h?@{TolmBd!DCnbk=)}w6S)a#S@zrjb=;8 zA?10tR;4RxeW2m($;gbr*~Rk{!c5I^7&B9S2wH3x!;Kg*27F95q2 zw@C-E^kTpBJNxW>46m;c5yTJzm@$CR5-*$x0`OrGU^Ez9c7oB({ZZ#EROhM-{bS1O zRL2?M0fk=g?lgkday#;I&E3FF+;X;Y2X}Gbl~z+<@8`nz&on`S(|8T@g?gH}Gsm0t z9q<6M;WCjZ1ld!}=Wm0dIcwP5Jd?+IFqWcA?h%BK1 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/lcp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/lcp.c.o deleted file mode 100644 index 3c1646e85e5947398e50c0c3c5a5bbda9810f78b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 664 zcmah`Jx{|x41GtEmPibIReVXPOauX^APNIpRh2G;0mKiugh*5(P&J1H6MvSCiC<9c zCT^1sVCltv=Xdtm`Rw0ZE2SW&5Ma)LupnM%DhS|X85s0>SM6YM`*74g>*#YGqI*nv zlbU!4bwHtad4C$AvC@ouweD`JmfCW*)sEU#`>wQ_`D#BGKa*L40;l#G=1bKyac6pSp(=VYW4K<6KsH8FWRF8q^3Hhs6ykH#A4IM1Pz*DOn4=&XAeX=Ckp7{A#xul4$i z>`{{EYLud4fAbqM1uu(rGR2}!c5_G?+Wfz|ld@h&o{j5mOrzq%^%xff>NzS->6cQ# rcg3VHdwDD8EP*dIOYpW=2|ht)pb%dK)`&^HH9Dy3zKQomL|$~iaT6Qz@9eYlF}S``NEQ5NxX0(2;gH8820;@onUx#f7m$<^_lLXcSL!U znmB{nC+J<=okVCYwIg4xy6b8~Z8}?OTkWVlS6WSDy`PKkpJ{@C(|8T@g?gH}Gsm0t z9e6-)9iJrp(r+ce scg3VHM|msfEID6lSI!$>Cilr@27>sk&KR>vy%oZB-52oz3n~-cFDybVNB{r; diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/mppe.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/mppe.c.o deleted file mode 100644 index ed92bb34c5180b71bf330f4cfe4eeab2ad26a002..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIiZ2P3i6G!q)WE=2Riz7I0PzDZB@!J1QFE1G;?FX&^cR5L z#BI{0mR{_4erKPZ@BYKRQVL=U0Tv7h3*v<{K>#1?z@XQ=YXyVHm-E(js5`oi?giyd zV&W0hDTUtc^Hqe#Ml>8U#q5xJ4?J? z-+>3DS(fM_p!2WPnwY#D7yeBmn|xa6S7QxyoafNPk2Fo*>8$${X=Ckp6i;lD*P5*$ z$CT&U8l|q-;o_1^!V6=aOtP$#{hX18w!cz$S=MWlXXAQ1v#9uRJ;n`zdS=Bb{Z{Sxnsh`i|j0lio&_W%F@ diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/multilink.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/multilink.c.o deleted file mode 100644 index 006db04fcb08b4382ab83f7396bc12ccfcc283c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`+e*Vg5S=wiYe2y(-azV;6?LgtMSLrz_Qm+1_yL<5Fxa%xY(by=S%08kpl6y) zoAf~kCUZ{a?99&WSLgmtDMez6>NICWHyQDoQ$d}4S|;kY+qboP_u=`ZcG1+AxezO zm+L#^5hdfkjr;N7P4|d&`k7c0BHB?FUj^Cd!;*e6){qXT91J?){f$E zY@@W)@o#c~G|yMbW!WC*XJi^)8tY`5MV;*E7#h65zq+%$UIUSh>upX^_ThT$S8()v x&;H_R0r;$#^yMgb<(!4{p=$2D^)tM{Uery%J0e09-7lBqE-U~5 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/arc4.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/arc4.c.o deleted file mode 100644 index 3cde8929dddea1d29125f1f7e4419a3befb97793..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`yH3MU4D}^ROC$zf6)y>ui6G#rh`_*BRiz7I0Pz7gArc(|D7i>w;%6CI_yRa? z;x_40ODDFkkDvJ(-rXvtNJLRUbB`!29WR^`0`h5O_SC*Qbfwiy*ZaBj`!@@~a2nIFzfupwcNY9+ zeTO^@mM5W3h;;FpSrbFsywopZ*>qw_KO1XE$3;OpdCRi&6>t5ANE>VOar|M^qS0)L zbAUMS)~a~r4d+R+2_KAkvdJP(?sE(duD_IbR@Li4vv9qwsa1Zs9^(o?&-d~bzZC}O qib!A9GAqX{z)9^2eDQU_2V@7B^bPR5B2sSy4|U!T{GpJbh4&9aiz}}H diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/des.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/des.c.o deleted file mode 100644 index bf383329ed60e51db9e89c34c472dd2e7f544a57..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 664 zcmah`Jx{|x41GtEmPibIiZ2P3i6Gz6)ZbkjO$K%#{TVLoHofFEN z%%mfzLkfedhqDBYm1YvEb$?TBscmmZ?W#R>;7hBSulDot{WD8Y;MHEke5sly?k(_o zeGdUJ%nCgKbn%{BlajY%=bt39*_(wP8f&1_qJSQ}n@U~Y8Awg!K5T69rh)KOQI;iTti1$Q9UUa`}@+*4) diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/md4.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/md4.c.o deleted file mode 100644 index 62804eee26d76e76e5dc943de8cd8052552b4fc3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 664 zcmah`Jx{|x4E2$uB@zRl;!8qhA_zDIH88MMRp~+)K>UD98;K49)LbQ)__J(G{RQyc z#BI_6EWOz8{LVf*pS`^7_ofx}@1IUvmyvGkkUD3` zo75yDQpX6r>&J_j8f(qiSDWs(+EKgCp4wLj>d2K=b6@S}()4GZK;YC~!+fQh26vWt zy}m;pQ8tY9fJo;bnKcQ#9T)ytBAdQj(nDhn=_Jod4_>n@eZg7hA=bv)@hF+tG_Upg ziyR`!b2Um)vA@L)nSz(aI+UD98;K49)Ep8_{8=_8egQo9 z;x_33mR{_4erKPZkN(ZIQi{YBMKotbu_HlyDu^hgWuif^ch!mpw-3jy^R~XwF?COn zH}Nso**q|>4xJ$%md>tu>Wo$Tfa8f^Yw-Dz1bhG*k?8`H>rxE`Yepy!J_#VP4Cyy$)b5Undk diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/sha1.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/polarssl/sha1.c.o deleted file mode 100644 index 3d4ef335c71463b34cfc48e9e746b5ea71668528..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIiZ2P3i6G$Aion2DRiz7I0PzDZB~m*CP;*Ey@n;!X_yu71 z;x_40OE302zq8NISO4x-DFrcw2y+I+js)>k5Fx}WFzEGeTG8PC>9o~}^`&m3dq#Pa znRE2IqYwd?JveRZIYd}%fF)qXyH|7HmayxMD+uT;~-y#-#c z?;!w+k?H6mpo`Dknv}eqI6soeW*-*%*;oUe76tV1HP5pbI_o|p+E_aor|&i^YR#6A zL(21PjZ)`!IKL#5@WNOplPv0FKPRN2?Jw1xm-X7@*|^@;G;$xV$G9R;&o_5Uzm)>M rD<*x}%Ud~T34Ezpf;YZS2njL+h4?1$d&Q*Q1|3v&Kg9bYA}_jsN5?C& diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/ppp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/ppp.c.o deleted file mode 100644 index f0bf788851f50fca9261045e4f0ad1e5ce028bfe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 664 zcmah`Jx{|x4E2$uB@zRl;!8qhA_zDIwJ@+%Rp~+)K>UD9iA0A$)LbQ)__J(G{RQyc z#BI_6EWOz8{LVf*pZ&XAr4)%N3TVNI!h(36nIIsaR*43^-c2hQ+&`VRE<3udL+YL( zZxR!aNF5{et{*QVYOFOQUv0YEYDeuldum@Ds3TWe&3(0>OVgiu0)bO|4fB<18r)gp z_4*EZL|K;UA(75MQfp#(J1+c-L^gT1q@Rs7q~km%J$y^k+lf2gJ zFLH<^&($bJ#r_sIWC~su>tu>$o$TfW8f^Yw-FaCrglFS=TeGP6a6QHqfSy@#ieHL= r?}|xZ_VQNFS%5D!OYpYW0UwYV5YiXG8ZoK2frF~<8@w+fc+vd=jp-|o diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/pppapi.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/pppapi.c.o deleted file mode 100644 index 73a0b1c04640bb870e02935f4d2d66a394e55c45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmLLW`#g~N2L=bQ)A~3L3Rp~+)K>UD9iA07#)Ep8_{8?rsegW7` z+$J5s(u@7h@9eYlF}S%_NEQ5NxX0(2;gH8820;DonUzTaMU>q^||h%cT9Pc zm^g(xpwPR#KaJ2@Zb!aab2rqc+H$tlj@niGuC$u^dOsK6Khp#SPUAJq7wT!^&Kz&n zci;heo|`qcq-eDJ zlk8EJXKPiea)+}kG6^q?bu!7kPWE$18ruH9x|6D2mpmKSTc1SbhwCve2-Gt#PwBT( tz<0%@FMD|_=PZFQwJY$(R|q~qW}pzCge49tlX|Pf>$)%E0}+uI-7o#XEYko0 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/pppcrypt.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/pppcrypt.c.o deleted file mode 100644 index b98e7d94ca1da0a67b770a44699b597ae772a79e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`%TB{U44frNOQarnikF1Si6CHAL_vsKRh3={2M`~yDUs+Q5G9L5Py8$&0AB!h z6Sqk(wd8mvp0(HBufhGDQVL=U0p<+2DTvpd3Ih081&00pZ95n~JfE~Ly82Rg&^x8P ziA^+yIwI&@Kb?nYw3?x>Hry?>t#+JUwWs#gp)0LsvD(kY@82vzz^UDa`ARiS+*#oD z`VKrGP18{}Nv$3MI-exgL=&2uoZ4%cuT;~-oh4qc z@4y4HEE^|!2;jQ z$swhAwnix{cDT4Blkmb=CzCAeWIrdQq3!>xJ1^_CDY9|Btr;plT#x;VoO))(Dg9Og td{<2Ra+J4n&XV(`X6d}~b#k9vW*~^K@{BQ?)Y~9j)qNB1v!FE5{Q_tVENcJ& diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/pppol2tp.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/pppol2tp.c.o deleted file mode 100644 index 0d82ceb00c43f702993f9fbc6eb3bb5825438f7b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`O-sW-5PfTs)<6$_;ulCg8Bv$2Rm58bz=E-%SwTXSMTmtDFrcw05b+$=frDI1Oa?31O0CIrWy3_pN^VmZGE9z=p0kt z#3mX-9T4=c9#2Em8uiduYwm{HR9nur+EKe|-<4L=SnlWI_ivgY;8bqIe5sr!?#%IO zeFq+prs?SQ+@^W}=&2uoZ4%cuT;~-oh4qc z@4y4HEF0%~2;jQ z$swhAwnix{cDT4Blkmb=CzCAeWIrdQq3!>xJ1^_CDY9|Btr;plT#x;VoO))(Dg9Og td{<2Ra+J4n&XV(`X6d}~b#k9vW*~^K@{BQ?)Y~9j)qNB1v!FE5{Q`g1EO`I` diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/upap.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/upap.c.o deleted file mode 100644 index 86b6b6a1cb623f5db873932d43bb8cbda070c1df..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIiZ2P3i6G!q)WE=2Riz7I0PzDZB@!J1QFE1G;?FX&^cR5L z#BI{0mR{_4erKPZ@BYKRQVL=U0Tv7h3*v<{K>#1?z@XQ=YXyVHm-E(js5`oi?giyd zV&W0hDTUtc^Hqe#Ml>8U#q5xJ4?J? z-+>2AGLz{cp!2WPnwY#D7yeBmn|xa6S7QxyoafNPk2Fo*>8$${X=Ckp6i;lD*P5*$ z$CT&U8l|q-;o_1^!V6=aOtP$#{hX18w!cz$S=MWlXXAQ1v#9uRJ;n`zdS=Bb{Z{Sxnsh`i|j0mLyY`v3p{ diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/utils.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/utils.c.o deleted file mode 100644 index 2eb9021dc110e0ab3b403aa40e815a91e17c1c0f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 zcmah`Jx{|x41GtEmPibIReVXPOauX^q6P-Gsw!Ow1Bf4RDUpao05w+$CjKld1HS<5 zCT^1sV9D`&=Xdtm`50VZDWxE$5Ma)LupnMI6$J3H3=I4I%XTolxj$;3g}SRd=p9qu zBqmOw4hVV|cc&2=E6vDP>+Ys%sV!$)?WkR~?@Fs#toC#9{WD7taB8n%zEn*UcNTcP zz5@@K*z_saBS7cxnKdy*J1*j*Ae+2d=m%pBbe!kVqn9j8p6RT28);+hIE^PZ$!p#I zCVQ0T*&3y+*x~$+Ou`FeolLT*ll>f$hPMB&?xd{Op~%MdHm0cfa6R^Oa_ae7oYHS4 tz<0%@FGqPR=PWs2YL?C$UnTd+Wd?%yEYBFTNxe0~Roxfy0SihK-7kJJEO-C_ diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/vj.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/ppp/vj.c.o deleted file mode 100644 index 6daf5387b018c716cefe7907a2d7dfc1892e6377..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 664 zcmah`Jx{|x41GtEmPibIiZ2P3i6Gzl?SAXHtxt4}&H?33 zX3`_hxv# zzJ~yKeb56y7w@?>DS10`{$3)Ry;9uy-|eNdzoOHiK-tl)zn$gEGnq!QYP0Yyj=RD3X=^UwUdn+<{o&Ys(M zF8^)zt!F3B2!a5d1PDRJ0x;@W#6QeL2!ik+q+iz!GL0|&&53{c6LbzuCnz)ZeSq1k|&Ib!rx~bAZ~^;l>E2%Hs|O1FVU1ShD^^5yaA`8mT+pyN@);2 zTKc9(dhVEbmdzt{$?{Lu4GlsGwj+f2(Hcl}uU?P;uysMZyYj)g-c>~tV!g}vR)pC4 z#=WJ)%6swR7W5p^?k=sxBi8wq>+zFTO8&|&N`U zKamHP?In;tvIZdnVg21PJp9tS9buEaWA9-09b~}lPwis=-}ZL@U-pOc7j{y<=I+nW zxG%IfFn0R%Q(|ar>ZL(3IxNMc2#ki&t*A;;2ca8P{}V5soP@f@`pE{N$=58j2q(O) zLYvSobonrRkgD&X5AN?*N4*DbDBc6`REN>_*4PK@d%+KZ0|-AHMVopqB6~32h4Kor zL$tsOd7-{0znZ7h8hiu82g{3WsKFnpu^WLlkW&zq0dAlqJAzE*4CE%9 z?`f2rC_cswlw`k9W1mNx@;mUS3FlR7;;+`&mA!H5U9E|~U1LKbtsDBRl!89f)u(d{ zrmW)eGt?~e&E{2=1C3ld&9cq> z<-Dq3z2w5|w3EctlwvwQjIvV9%Szxk3<6C6t*-2GJ52V87jHx71nt4ZRTr<^6CP*`iseqI$6hO-7$dH`ls2l;MMx`jm)wD!OhY*KD z>~Ibxu#=EdxlBgQV(ZbflagYZc|Eycss$YO{}C>i-ACu|$Jxv3Opj}HyEy*ho&Tu{ zlI}DSy%*f_@|WSiaC8Qg^B6J_;b@CFQH+@04@o{By|+bVPW+2Afew1zBW}Ql#l}&m z?+w)@9L+V4TwU*Lv<+lVyxv80RM(rpA`$day?SI`ZwdA4dP8W?+vddUy@`(MdRMCE zBR{XVhB~EFFQRcg0KEETq8Rb}$aogz(Jvs5_LLJJfh0deid{ov7oEpY$E(l!22s)s c{A^JL4F{qgoOr#5&{2*17T0l$gHUqZzavzZ(f|Me diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/zepif.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/lwip/src/netif/zepif.c.o deleted file mode 100644 index fda99058c96255009f1e3a91199375ece36224aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 668 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/main.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/main.cpp.o deleted file mode 100644 index 5e7f4f1b7a9830b6f9fdc86228b548218f135202..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7960 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 RK8NIMS8%^T=QhlP`!D^A>!$z! diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/malloc-lock.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/malloc-lock.cpp.o deleted file mode 100644 index ce763474a8c1741e2780c2fd7453efcb296af6f4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2328 zcma)7&ubGw6n<;c+AOi8v9+~INwwA%+qGg55d=%sDzqLHJr&|6-P&k=ESoJ>5IlJ8 zMZv3h5ClE z?V5t(NUlW-^Ydp46AM?aPZmzhIwzeOnmdLSyPjLBkTr^F*QsmMOVpj+y_B)?>3(a# z8cYpY`>kPXBptn5@<-o;G=1CF*;HbOh*Gpmr-4%jPE%hZlB}4bZiDYmWT&Xd;Cl={ zWAGV+w+-Gl_^iQa4ZhdldksEk;69uZigsxTV;-mCke0#O#|?bez?Xoz2M6JK?9UB@ zUr{{oWFGrdP2dcL3dhge^blB#>pzCGKCd%RS$c|5jQN*v=EvcA>ZR8h#h8C503+j1 z2L5Vbs=3u_qdX12^C_~2;~sRxN80g(PC-2f9f|YTVB>)CskIMtzc7vwp+po%39^q6 zL6W!*In8^u&@EvMgLqt%S?Fzqsi#&*NO_ghIlZTGEOR zv8WLp(Vd-k%8go$8{*7eU2@zo3@WAd&}-t={?`s5kH1Yl3ep+s{QI#h*nwiHM zY)9eThkxbGAjhoBEfJHtQwZ=ac1{t?Xg23@Z@KU6Tu<%^d5=ZJ_?s6Kz4Hj@dZDJr z&x+nM=KA{96o(-)(Yp<#=kfi+8e)=n9|1kj2maIgHW1g>x2dg}5YYABK;SfD+zL^1 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/posix.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/posix.cpp.o deleted file mode 100644 index d0e47a111ece262732935f9527be6080b240a7eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5204 zcmb_fO>9(E6h5!7?X(muo!YdeDV+{u9cvwnG^83#rVwe5Mb4 z&@K!$E@Wkpu&6sE#IRHo5{MGrn2<lAfl1&exzZy9OsAZ#ZDlplVJe8z9Yu&43h=gVnvsY#*v~dgL#}BsBW>ufojZiYd z{J#!Ppb2%{xp8*&?}+n_>mLOh4zlb z_Qi&2?0KGl!cEMj$m-{2!~SD0%uwU@z)Z6htbf|-usZE7tJ~UT?XJh8R+-G1dbidbLB$*BDdrbb6&)L@dfOCG{D9&I6u(*Vn-#xV@mmzX zMe(bj#-<&LzeDkNDE(H&Z&mza4x3IkwJCm^&mS@bj<=QCO_&ti>qxe0F->dk&ir=gF zeTv_w_i-E7WJobQV1e0{MJ;+9Rr^bFT{>)_21=3giR@APp4zG7vA?`1BP zc!1&p2dSARs&ES(5jf1}`Gmkh{(8Jq!Zvm!@_GBRgb@q#dAccZkk8Av0*9%GzOTZ)bf*gU(N87Z$aR?d>26g#Outp( z2;Hl~19V^DAm1T21r8JMKTjU>$9#j>ja;^nT8Yi)auo3>vOvz8(|bo8$4h101vl*_ zoaF*JXY(n~C1*aFJ-bA1KEIS@kj@s^=dQT(XShC{%`ftA!Ap4Lyz6?o6l-w}q3r2} z#44f1YR>)o&t@|2 z5^veq>oYM<{(Nd~+2b63T*FruXCChq7;;aVxdryK6FhSZ)I7vs&vHRNKZ=Jlp~uDf zFlNSml^v2d${6n_W2O(j4Y={eOMx{8n8#i&xM_k1Y`zKRc_-MnmEI)#rQUg=hnuL; zbGR+%cd~}wTT1VO(8D-J?>(iLtf7}tdh0?DH(8_ifzn&4q4&PhyDao@(=~b*mEQRp zdLJvjYeEk8&%Cxdk5VG8e2GZJ_u~#@e6Niey&LS1 zdbfpMJI9RP&)k-JO$x~v5YUm9qy)L1Lo4?UJp!6;FE zdY>!3do}c~D7^`xhi{O{gRhu}^JTtUn~W4t?+~zjR<4Y#Jf=Pj`H*VVSYfGqT=&pFro2f^ zJcc@;(7U`pjnGS^N69B=k_ z-~m~Yn^cdo4A8}UYE4XN^AevVvdNo;el*rV$3+1>dP&pdnf~?fB5kbA$MLI8ipIRZ z$Q~tmw^k)8Z#b)vP55A}lTGGza-T!e(Dnb-omBmLglybzeG-))?#F&XPBZB$rG*4s sD<*Rp<*l5vf;dS!tnH87mtKtt2u2;D{trm>4({t^A7q%%`}^u>ow{WN&t| zv&(Sz-0pWuDM%>HQ8VD<8vd%pIRf+%jft4lBpK9@N`JkK(Hr#RusP`lo2S>>40z}? z+r+&e-X*S!$Hkh2(B=-$QrYxwp-;vd=%gs1qhqX%wRx7@Y+AII{UH%q!KSm*}+`u P5!FrIoA`zWRfz5j@zWlk diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/async_context_freertos.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/async_context_freertos.c.o deleted file mode 100644 index 842b2f6da4065b8b9f9917fcc945b4dd8f53c991..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 684 zcmah`O;5ux40UL`QHcYe0)~Xfi6S5xVsPL#jj;>m0OCBQC5Ro`q9#b}#GmC4@CN{U zt+#duu=HZT_{ENskHPJY5CYf)1Tbd+*9GyqQ$YYeECUSt{i}8`yn8%qpLONA>_G1r z^Gd5|4B`Mo@ABa^gvLrU^u@ZnDYnG6vm>09RUji{K*m{;=oI&Q z_n}nQ=HuwiYEx_fC)vX+&Dtnc#hcEL@MQFWq~pmJb^Kn3sKMX(S9em@>!2s2dK=TI zSg0Q10)ahWi(UL?4CpKy_a)DFrJP03p=JsCfmMW$;2AK4PehA?(zxCl@~Z9|`G7^} GS@#RXhBL$f diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/async_context_threadsafe_background.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/async_context_threadsafe_background.c.o deleted file mode 100644 index 105ae15a9361a12de5037fedc021d176412b6688..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11148 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/btstack_flash_bank.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/btstack_flash_bank.cpp.o deleted file mode 100644 index 0a7aa7780d20065f0450e0f5a771bcbf672a4537..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 684 zcmah`Jx{|x4E2$uB@zRlqJV_TL=bQ)qA;*krDP!tAm-{W1hpz@tKK2O#GmC4up@!p z#BI{0mR{@^zq8N2ug?9Q5CYf)1Tbd+w;A!8Q$YYetOA7X_DwwqAD&O@7fpF78_+t% zyh@brgE+#_yM8*4pt4qte6i_niyg7+)Wn|H7l$sln)zZs7k>U`2@IUlZHTWF)5x6# zUas$e2cWI7DjsxS-<0WfwHgj&JRSo`^O;(u(c4MpdmP#1!-9NKR)N&UfQ(0Jnhfz@ z>oJnb+DTu(+r*TbFChn*r&%kxF5Bt+5Kl%6Bppw-sN;PdqXu7NsqQSV*FaB3^|q!_ z_Mv)&D+Kn$#bg$uqqA(>mptE9{V_zJILvd_!t2tNuneh8JPoQJeZbR`}HI1>c z6xZt;U;zX=*DCz*vq|iKCQ0h6d>V&-n8Z5z(lSg_0GUt6S_Q~DEBKu~5`lbET7eAm z9Aub`$5D*``p=$JT4$qRqNBWakrlxa=4tLmsVnxoIK)%ZGD*i%F6(%AXQ;uKS*g1$ z>vfUIsNVL>D?U_@aD%{}xR}CRBs$B+eTn(5l+y@0)GR@-v4OA=JOjG$gE%FpG_JRa OaaGsC#E?bEtosKyr8g7+ diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/cyw43_arch_freertos.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/cyw43_arch_freertos.c.o deleted file mode 100644 index cad218ef2b9bc7a78a80c04efeb2b309ab2f1be2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 680 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 U;u+tMy&1o57B_#uMHsp608Ybz_5c6? diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/midi_device.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/midi_device.c.o deleted file mode 100644 index d146192cae7ad53cdd51270be178e86244bfe408..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1428 zcma)5OKTKC5UzIiX?!IrCW^8Ng6pe^7;*>^T%wK#S40UOJS_8QaUi=p%(M~@;?rEKl#x;?N;tbR}y6x>(cgN5<)gAZMO6!8Us4fMo zYE4~M*IHF||Ks=2f?vOVENFBH5Woo^#<*^plL54_Z(o}G1<)3F+b3hSj=(zt?+Uyt z@SebX0`CjFFYuEhUV;_O&>7L>8#v!p7t>@LIL|E?*LVlE8+aE+jkpJ|8!_%b&C+a= znh#lGbOP6Hl}IPqEMqq{UQn3QFfh-}%+Zti%og*5$>Cd5Op@4TIRagNoZ2WxYm3^x zW6zpH3p$N#1UfED(3H^Bm21LJxK{jB-H@ND+VT^!IUnN|buyn$%?w)^y&UVv+9HeJ zTT|k3{kL2}CjBeEHT7FMTF$q3-SPPLN*>i9xq(VI=wG}$$dUW%)syW+nP zUh_imcDx$sF6zaCw~O)L>d_(k{XIN}_f_y79mD(Xc$;WRo}!+wy!u0Xk^Vr%v&-u& zz#DYvtXPOcLY8Nz_zUVcOrAzdb!nz^sPtO-U!V)CxX6&>gzGJ1?DIY$?dA|_@fCa!VmfD#VGg9KqbxFl#ekvN%|ZNnt)&Sa(~c=BpE z@d93b1mDXi(5mUF-JXsFJE^Xp@9XO7pZd1{?m!3uJOuP%<^c@65@~Lgst>ne0Wx3o zGC%VH=c)L6dpo_pe|Y??x49)>$_?0kj%z{{MhS?=Xg0S$tPi1et3B+BJB_>Ip1AL= zhzDX-JZhBL?a8j80l)v)m{+S1z=Js(M&A_8K@S>OwLR+ldC+w5rcK6dEeCHoc-z6- z4&HI_j)Qj{yzAgM9RDUPVTA68PQHfcdsz8&vNb%<)5Bn5h8&vu1eR(g0rd`5s&%ABK?2h0y zhfcm7D+ij>e1XHG{Qt_AI=t6c@GczQn=5!fD&7Wa8gEgSOUq1jej1mDXi(5mUF-JT{v8>;K)`?|XNr_Nr#dn1GZ9s-6i_W(v-g|xRSHH4dR19D#s zazFP0=b89>dpm=nzyIOMU~@}8mm9GA6xW0*j1mx!&}?tNUmru~dUxCxORd}Dj=1Zs zh7=2ST2R&$E)%Ixa=Rw=S+cp`qbsW6o;9Upr zI(W~)dk)@r@VG=41^*J$JM*>tTd67N4f(gaJnjK{OZqYY;*IKj_P)FqLbER6w`blqVs=OH zntdnVj+Fz=S-!yGQT~haWe)G`$@E4b*0jCycB>QS3_g1lc$Le0Ft-ynjX diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/newlib_interface.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/newlib_interface.c.o deleted file mode 100644 index 27a504e6872fb34e4bb71b77953d9437b8eb4022..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1540 zcma)5OKTHR6h1eTN!nU9_CX(lq!KYw9a=0RBGLz%YEu_2uBSK2l@3kPGIL8?H!gG` z=nrrq=nrt~(r(;#p}6rMbSa{sAR50jncGYTK@Xfc=R41P?z!{uX8D#7f(!{NQU?*e zwnC3R6N)08q!UE@zYeo^EXu7@QGCcO=GHQ|-;F+<7oP^#wn`#DJOA_0)MJ@@^ZBd& zh$iVh?YF-FZdv8@(u;Zen0woE@VxY+6I)tXxRx)L?%unQpPq3pJ5w|_iF~PK#Un8R z)xNTNX_+$p+2vj_kRB4lV#FF1V`5yKNpq_%iqDazFRi%K>Y9?sqEy@s+#cK*ElSgn z0io>fXOW%o+cbi>{85fgLVR2g!HB z{m#k~9-6(qvnEdUg_8JP=F#uy|@MPV4p!@(S z?02Q_%RM*H(nqbh2~EPCr0|RjIA01&<#|%WME#I`SX!R(XyhLQaDu&tmK8|tx8=Ig zwA$6=)TEZ=RDysUHaP7e9ADKV9FEh$U9)hW6T1PYy4h%`Cd$sOEIU$b->YnE72qKM zN2d|Sd&)%N?SHqEYhL<96lY#~GLCC7od@@T{}spYDA||anjzEoIt=l+tH7LV$mFn{ zU-fL{_=W;lOSmT+lH>SXWpKP+4VZUo$kbbeAzrT^1DSgKcbR%F^!U8bA|FIZrrstH z_nm5+iQ@(%odx@tcfn}21rgFqeB<+S3=>OpM~n}^uV6e5IRNIq{9o}5W*1PYj-)57 QL}con0*=QO0R9&D2b_zW`2YX_ diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/pico_bootsel_via_double_reset.c.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/sdkoverride/pico_bootsel_via_double_reset.c.o deleted file mode 100644 index b21597f2946e475e17b66a95b700e70406ba9f49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1220 zcma)4OKTHR6h7lj+9ak;THh5)N@Gn?hls(2D6}cIRT~i>sGv;lBm)^tI$`EUjUeL2 zwF`0M4{+zsofQ}UfuL)DLtVKuerKjPnHE70eD|Kmch5QZp8MkR#;T@iq(q}4jVz*1 z`@%?~9BxILpbT|BW;e3cg=Y3jZasHx>gtC|x&q&Uk^k}X@V0?{@twbw#QyB_{cokaiKvaWm6Z$m;@b5)i}|x< z^PE|tqSZ2JM(x#1r+9BDou7oC!E6V+055+3gP0Wghvmtu?@ z^c#C@>bP~!vOP}*PRn}i3ajCD?UrNtPT)whP6bJY1~EZJr07`nrc-}JzSoX;RyVN2 zBxHAkp7lhy5-u*a0Hh~~_z$Ef*#ln&iy8FVQrOs~AMH)0N$05~vmvA)(+&bMeWzuz z6I|iTZpZw4J0Z{AL~Y^wqDN-kYqyp+_7yhrAIouY_&wFjM}K*A zP)(fY$~-mky*!Sw@O*e`|KgRv*;|)qszm*i({QAKrJXw$BpR#oUGRHK424WKjA$I!HB8N^#{&M)Q1xIdl_pL=Q9?pmScMF%pCe3sI z1_FNPunK(Jv!_)g-8BZLkd8axozxPx`% zWzWH~$F{J4z%|WL*R*|RX&yOoiPo4G8~<#E5B?Cg7Uvb*pPy*0v7KyO1L3EYpPgt$ z8@%6Hk$XS9dx6J?ch>+jbz{5MN3@~cG-;mN`W$>)2PG3{S|+VirfKtq;;cFsxGj7e z1{rTJ?Su_puPYZ_U5BQo@0+pC^XsktUskpBx^gW|wCC%2e`xo6kh{|;cDk>F(4~Ty zoGrlT85EnC>(1<_1+mF;*?MKZ(3ln*Zx-Y%%q_jMH9`DV<3Bt*+9J+|{N{dtn%81o zK&LtX0r?dFXqs7g#jIb0^77qN7Ojq!b^(Fj2Xi)9JYuRL@AA0w z%wQ#4n-|(X+o^5OBk)$(@>6HC+VpwYbR7Y%nr-kxl=kF)UhKG6z~27;ZQkJCXJ6>> zcJ(M5l@R*Y(@2q6WF!vJN=@tLgPlXLx$HwV!fj~~E5#~vqi7P%!c&}+HnH-L{tj4h zZ@CJiOUkJWKoRkj%pL%et?Ws(_AL)@5cbOrEvVP1Y{W>H{hfJzhS`d8t{1o{?LFwGvI3m z{DT2666X0oL+Yj*^M@gR+klZ#qlx&)a59yQXHv>&I*oveKor?TLQO?5Jgn9Ja5fQ* zzcQAJBF^5d7Rz!os-`mP__1 zSJ7@`>jCz#T?0hfdVxu{t-v%}AMgoVKkyY>BLA_3e`ZU0&2%Un?_t{p9A(=MB-pM6 z)KYwctckA8J0-h<`*#%UobA($>0<^Zb7D-5jF45wi}q#NQe&^GP@)kv0%atVfifOT zDC|^9hgxwI4_Sx#NGq^-&dPX-$&}Jj^N3wamo81#K&2z4XuGeBrpCr%Nt#aIfgvTL zs^jsItQyPE0{)-K`z&9w;{S(AU-@FTl8d&i{9+pOIL1O-t=)b3vi?_Ii1N6Peq4To zq{wlfBu5QtZz=FGb>O#!-(gEh8TXOu`M7?1Nu@}>o#fE-&FJ`eF3ib%`$_eD`I4WE zCX#Q6ke=_Vj*odH-%)Do`EC&AxD?69d!XmLrsLzUh2%?6oB6s)S$-$g^Kp#zbjkAC zSZW zNxqM$&3s%BEZ-0T=Sblg>kKK?R9gBMDUWMI3g@t}m2+V1piVR7XrMMdN7}gcWO;6~ cMyZLbR$z%6C6Rpm#nk7eX&u*O5?Pt|FIp_q-T(jq diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_analog.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_analog.cpp.o deleted file mode 100644 index d92833287d1fcbc61047b860f187941e640933f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6092 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 diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_digital.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_digital.cpp.o deleted file mode 100644 index f04c19c53c05d3034dcc4fe145ee856b98ebbb06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1992 zcma)6&1(};5TBP#Vj8Wj@uRkylB`8rjEkir#naYS3)-q!Mf_ZLlQmgLwrld@7lH>t zJb9^tcoGyuy@|z(LjQms;;n-Bc<`bK){Av!_q}GDiw?ZZ?>F9&qkTiYM@EmGgpAMGu7>(t zPsQgfP&2T}k7bUh&-Ugbp9976N1@DiL1Xtz{a~Dw?=7nK-u&7WS+z%Ivod?b{4BE= zBfZ>h##$5^$bJ_nlKm!-l5IAr4R1aM8}R&{OR+3Hz5aMZJ%5?)O2yyk%8>F2aNfJ}OCVyU5~;-^YXeX4is&J+ zDH8YV=>&a?OW=D25^efKTfW18z7-63dNmN7pUx84+IcCElnLJ}upU%IG{Xg4DeO0g zURpPT!;+vUKGnuAwsE(O4U(3S=REN2Ll`i3SeBA8Zo>I7>4J#)3XH|QPHg%yi~7P!$#h$*+%`E14Yl7 zH5}LB0jk;D@apAq4GRp97)HKqo7J(2@l%dlYAFg;=eljwc-3}`yo8m-{^zO=w_CES zbvMtQS+^xPZJPyb!JlPv8$bqe5di^xQ-8_z^x6 z{I&4!gr{#c(gk>@QHLLjE;wklTNQ3v=y^5pC5gCwlY>?;xe1z8tASRv%Nhl>)-1!Z zHN8ur2>Sg}6-~YmEk9eS*e>occ6wSfIj=fao!d1$*nip%)X_I3Zx78bZ1R?8F-SUj z%iDF7Bin7$1($J#)CUAx8{S+~DzLAbh z#}%%(hzYujRF7sL>zzj&t~ZK=?u|4#mkI{L{hmQx>pvr?LC@UAMfIp}GSY1hp#Mub zTK90_?5IWGiWsCBNFxmyd3grnk1)`UflkC*aZw-C7xgON1wwd%WS)R9S#J~auM Kn3E#(Quh~29UY$l diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_private.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_private.cpp.o deleted file mode 100644 index 57de88cbdbc5b5a0580eab414751bd5cf10846ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4364 zcma)8TWnKx82?UBSK6+l-HolAV0Q^_ZXDLJ0mECz*{yUV<+3Vg)1N|z(v zNCi}@o@HqEH|+-UHS5#*ZS`~2_wD1QyF&!wfb1ePIl;_@@@Tmp#oWqBx$0f^#BRW& z33n{0zoAQ!>PS$PmTwMcm&#&4Puv{->(>GXYsLIqZfSHi>h6*25S-{*gm%xeYgFoM zI1-GHyEh+@S{fo3Rs$EimUvF|;DJysuT8%bnmv^?-cHY+1}I?oqSs+^BCzOx(ec1L zLfw1z%}+#NKK}b^V9xmJtu1r?^AjO;K0Y}ibx+0v7A9e@EWW?sxFub7LLEK9=3tZ% zI?h5z+p=@})`!g?g`kOSE~t*d<)7XpImDh)AO`b6eNqpr4%PL|Mx6bm{)Ku0WnWCX z_9;AwhY+z3JTc0l(Z=%17FJ4npguUQEPlA)yydX^X^hHOD3dzsz>eBWI;xFHB^_18 zBwI&*TSpZ!2kXceldpxaGwRDL^tIuC`l9}JEvARca7Ox&hdreh>`8u5cow^sit{6B z)m(GQ;d8qAYh;B@c!}kP`F3gp>#oi2b#5{HkAUY3B|IVhqjG@%eP_7BUL$T zq*|#?u9t#RgS5p-2qk3S^G^8ViQOreoCp9Jcd?yhwAe`oC)C&tsMn!RHD1QyKz%3j z-8c&5gg#TEIZ74&T$oQi+&1+xjto%w#B0+wtehrH+29@px8EOT8Z84PLZ4&(A`qc@3 z+FeDGpQhp#QCq5=rthY;h^(D z&$tTr=SEW>V0t+;lG7x@Z!-OtP_BXs2n+swf<7bY=gj<1SiT>wnmWDbs<1;ioib9H zV~MPhI;G{4%5*jht$9dHj&}DXjwbO9qDM3Nq+y)Q=9!Su(mJ#rrHF8E;#f8{8#PW0 zX0)kvk{L0L8F|t`Dwoyr(|Xc4KEslB@}%)xGOig~!P=cj87B_W3+wP~mg4#>gQbm~ z%qP!)dg%4T>WI?4!;*R-kzn^>BAw2qfyyUx$vgohlDspsQ*|%!`s&_7`4n$82bo!G zvN_0Vnbb6B`I2XV&Ft?}XN@FlMhy?fduOOEea*6o)2Y0knAXziDV$kp?m&3(l!#tv zNOHUh_?fb631Y=?;K%(PU72voq6v| zCJx%!U5!UKV*0C)dtWi@A$~XMdkXPh{2+Rp^j86n6UPfZOZ+te+VhTW0PhlS1vpO} z`o8ob zLuZBRTqTb4pC^v>@W<-a6Gxma#IYDcuzIWytkZ=$;e(PpJCoO@kmrp8*SUmCo(JWq zme)X;%H=>Yl4*sE$}^6R82I0Zr5I`3p^7m}MHTx_rS`%~*w%yHYcq>`xmZE)6!u}! zE$&F(Me!`sLr}z%B^cS0qURHS`VJ_Bu63s3pm_3o)t&?PpnI4 zl#|mGI+1&DL`?k-g45pKjDuomP`x8K?09ru<2X2Rym2(x@qWPMHnb5QJp+#S9?EvS zyQovooH*V&G}!U}M!W#p2#@;Wcyvw)kM0?w6&&_29rDrm(&T(SoM;?C8z)|O0S)%L zK2$%;fy0>+(Tp28om+rQ4Z18c+)J|`}x*BSQ##^JA|KaN3|yuT{~-q$#fwc%o2SBX`>3{so+@e3JkG diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_pulse.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_pulse.cpp.o deleted file mode 100644 index 0dc330e188235815c2e11dfdd2818226b64c4090..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1300 zcma)5O=uHQ5T2J!wsAl z#=SDx#gdt?S^4Rdbj_`nmz>;igeZ*~EazRh=E_&D{OroFuHPxK-$%w zT$Y+`uGyqLF>Hghf@P6bHCHrtYI3N*JkCto;%cd6mXVvepVbW8t`-Y5+qBT_&~ye! z-i_RH@838`m$y0L;^b}maa@Bb0p>mb4>t*nzc1gPB-!^893gPp4LnBRI`lA@Uk)?( z)4|?)9oG-xkgRtTmbczp1UR4T@eX9Y2hh15&&j01IMGv`lVi*aV0>%EapD+(lV_I1 s7$%l-2Db0Q@e`7t1~d2Nx5~50-9e=!lDxZ?^^W^+?}00Ef=d$j2c`JFCIA2c diff --git a/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_shift.cpp.o b/hardware_test/.pio/build/rp2040_usb/FrameworkArduino/wiring_shift.cpp.o deleted file mode 100644 index c234b459107e4d5ee5331b18babf9a5f3f6425e8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1252 zcma)4&rcIk5dNN9x)gz6wNh+q+E~M4byEW&VEob2C`znGjM3=9Z0QPXXl>d@)QkQP zc#-fAcsAk4)jOPO;?abJ#6(W@M4j2)7nZ%~B-5F1=Ii%n=e>`&@81zZK$(DnBLw_7 z;dc6_++bh`gXnJQ7zT1;J#CD3(i4e}ez5?N?R5`(Vsi$_5ASfUUwD!FT#S^FE#T)@ zw|irMH-p1%&c757_PSe9QWWd>ls1y2bhe}C#JJc*KE8tueKM6AD-|$XWd1Bo#t~UB zitGEk-EC}SOTYFoUoKzE81oOFOk}Q3nUiJ#r94e+*;dt|$tdlcete~Z=%8MSiFo9U zNQhA_DaOP(aX#XH+wq^^4k9?{1-sg@4FMXwB`JfsNv%JG zV@ObiXIvnUlU_Q&7@_=92u~Ac{$27oorkwh%V{jXY_B-4q`A~=A}8U3dkxf_Wk*`8 zPg{<(6O7Vwyw>a@l>761R4^;_Rxmt&7h0{^eBP0uuI7AWNo^SnCz?|l0X5X9Ho!Nc+;L$@N1dIr*ViExvD?*aR z$gCm_2k39?%6!c~Ik4n$`NaS1yFo4Rb|HJdCHDd$hlSpgwMy0(T)CUa@P23&-j|jJ zDVc3zSPZi*p}oA@Tw%P7BWW%tzGA%X|a~X+gnCv8QV;}Ikub-=+POCa2dtf}CPr=&{Q~3WW&auEi0U>|F>CZbCMl*PJu1yJ9nJI1sBV(Om-S!X zdR%X2UsEK;Xs}7;o-eeorAQ91b}S}ETXR+o*0`XP_!=VBlg?1nRMP`poRc?w3#Q)H OIo>A%Wt|X<;r#{mn`|8b diff --git a/hardware_test/.pio/build/rp2040_usb/firmware.bin b/hardware_test/.pio/build/rp2040_usb/firmware.bin deleted file mode 100755 index 4cb88351f49a33cce4b359da505e2429c904d6d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 84452 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 bgGy{oDlPj#FMe(L^Er`EPMdC(&UgD8BC}cr diff --git a/hardware_test/.pio/build/rp2040_usb/firmware.elf b/hardware_test/.pio/build/rp2040_usb/firmware.elf deleted file mode 100755 index e635f3f74dc50957ec2a160138a8e3783a035153..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 908464 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

Ifu{FtA~K##gscwTz_8nxQWh(TwZ~hF%NXN% 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%0DO_wwr*ZL)5GWR>oF~)hx|tvT8OsjThuB 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 z�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

Kh+`?m(vC_@<3@|URPAJ==$^?ENyjExxh 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 Xatf*+buk&s6${@iW9d^(694}ViN%i* diff --git a/hardware_test/.pio/build/rp2040_usb/lib0fd/Adafruit BusIO/Adafruit_BusIO_Register.cpp.o b/hardware_test/.pio/build/rp2040_usb/lib0fd/Adafruit BusIO/Adafruit_BusIO_Register.cpp.o deleted file mode 100644 index 949b12a92250573c4cfe17beb8418d01cd9e36af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7212 zcmcIoeQaA-6+h3<&WD@O)Y(ElXzRpY>LjfbCrw+(XdJtV6`HhG0|Fr=$B7@a*Clu3bE?71BgeI=M@JsMyAD#9XT7h&2`}lcxu)< zzwG=$?b@y%9$Fe+@-96W7hZ`dZ>?TdLem0qmG^W18^?}uR<|O-5k?!kzN0{I?blz}JcMZV`IL z!o|*kphx~^(T4q%&c)C`c(W+l6lsV;jZim3zgNlpNVu zZ-O^pxP09X=sUT``PDJ;d%wHkT%onhWWftpg_qe{rg1I%@&}%o!L{rv2;L{g9uL>a zld{l%-{AeFxZ;K0nmn!KqW561PTs(kyjKW%6QP5+s_!P@&>i&b1Gq|le^Zp#9nd(~ z1-7hRoh|qp^5FJl+gh%LpdjbImBj^j+Y8^!HiU&CVelWt?xlN0!5s{3plv&dyBW5j9DIofDLPMEem9e!GlG_2b(hqNle)3JOdII}Da<%7+^hTL6T zBP2D?f~R}=9HPQdE40Jw!It2Q;VSq^(3cE^ZCSFun}e(z5fnM{#;P0{!B&nyBpm*P z+ZQ?YnJ#zWuz$ec2O~W=m$($4NrBLgUB{8BLz7TdS3OxPxa^Mzj|v|Zn}rskRoI8~ z;>7%n+2QZ^&9GSV1OkY71I!}gh*?Ci!(Q_M>Shta!Qq$z7o#25zCwqyamB<#dcTVR zs;)n)>hN@4k1$*EXU8kMpf=0Nh>t0oFf`6gT zg#5WoC4%%rsFQyc!~HCA_^OW6lkb97c!SdgEGcBK#czWyUGG!*d*O_((==STU(c85 zZg{msZ--x&=p6tfiTD@O3n?WQTF8u_j-8R7NM#f$?Vpup@G9U3~;tjafEtxOBNRP)GO1YZY~B5w_5Kg^rKNZx z9G^`}iP1$%hlh!2weWxzGNvS@`Itt=97Hh<W#?y&~)cm<4QwmObZj|!C#s;HAV$_qfWwE)GQ&X!9xLkyu{Yl`t2k_*TPA7nd@7+Nx7pywGLrIH zm1li>1ARywNhH!zCNpZiT>^t!RL!-5=Ow+fI6nyxq848;zC`UX;9D8C_(DKuyfX|i zLG1~EEVZLR|6IX|Mtn|Hwy6fRC5{Lp3N2G3Je}lk~OQ05>G1&vj4;S-{GGj!QO)0ucMv&zT>2l+gvDk5 z>Dm0ENT4%}3FEzm17?3|)alG&!gxoJWaeE%0-cpi81DkddmRav7zta(TSi_j>Omd5 zjh~t5Z0y8~@<8VzwXbphj-!spvLVdh_c?!mM1N#Y{^)FF{{F!E%c4#g6XtI>b`Ub| z?+PlTGY*90{YV z0SBpNabHB97j-7&kE9NH<~%=waosph_m{p9vba&s-;dBAQVl^>l?l$@VI&cc{LwyS z{=UZfyNwPge@vLaI~?y<2s|i%zvbedz@Y4YP)%WRo!Bwwfpc=tG7C-T^wXpXFZTK^Wta^XXs z`3p1UjIPfi4<6Q4x|&GP)}yhRrm7AP5Q~ zc<-ebJqX2<2)zjPqT)42{{c^)1n>G@veQh4HtRtjynXYV-*4W0Ja*X&_94 z1Pla7vWqTn3G1w3J3asa>XBBNdQ2A7W<2rAd8h)ptW%f~QQwMkqi9q+3ecgFw z#}(Bl--kFb^ZE0033K`Cskv0v$QVh; zoyOH!%&Iz|&0{lku5@+@!V{6Ds1^@SYE#-FeOf!L9nofkNUJ9AHwZs}%e+2x8UQ*3 zWEwHtg6c&b#uR=`;iC#4Rrqm*A6NK2 z3Z8&t*h6PHi5|!OwiW!Z_o22iZw24Dy@`Z3xd0ra@JL!^&?h)$bH%8>M72Vn{y4RjA=`H9z#)Dp)0?3T(@P_2hE4d4gFcERh(+^&qI-%7 JJ_u6M{Q(%0fM@^! diff --git a/hardware_test/.pio/build/rp2040_usb/lib0fd/Adafruit BusIO/Adafruit_I2CDevice.cpp.o b/hardware_test/.pio/build/rp2040_usb/lib0fd/Adafruit BusIO/Adafruit_I2CDevice.cpp.o deleted file mode 100644 index ce03902423a88f114c5a7cb690ef51fb3154caed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3000 zcma)8PfQ$D82=u#yM^samj!H*SO+1x6q$4v+M)-u46YlaG(<|Oa@arY(^)EXGdrcI zhaS{;ZLJ4N6Ji=PP3@r};oxBt6A~|8pkA!rdMF2Cqh27XDSqGVJo5jV|C1G)*r}ZNO5j1HDtaw_|sCj%sRF=A8$kS&$X@fqU+%q zKxJVr#dO_<-nvyCNKq_rE;lT&t1DJ3eBI`QLojc$d!RoqCw6>;5njt!$ME@AVceQa z-83H}X4f>UeP_l8>-E>6X9FXOqptoM>F$`nuianYS`J|Rhrow3ES`(a-d*}O1zlg7 zb!*?5b-%GL9k$9viXLMd7-Rj5OaH8IE+2qafG)VguHH7;uMFdPWEt%XCfqxU>vOC9 z8*_Y+%@06x0_L0A;_kaZbYpd~?ZJ8p-xu`fA@D=um-bn987^1e6{7xC))|LxsNk70 z%obA#3)j=Sj%&#Da2ZlVL$B%4)akKqJ=SmZ8OLF;2Xm9<*<1lw2X_4@M|+1M5IQj2 zz#_gD*2)fRM_3zsjvd8$6_a!AgTJ?BS_7E{(4bDH5o-$e!I51fyXVuuukij|Y7GJk zA5i#ug|BQ*A<`hI@IgVjtp*1b{-DB#6h5TzjSAnW@L`1yD}0l}Hz|BX!OhT)Ba{W2 zDFXPVDVTeho{Zr7e(vGpE)Kx=9>!gXd_DZ^;f#xe@X*8beMfM8ns73j?{yc4pwGj{ zT-*rU!<5+wgyAa>SK`C>8O&!tv@aB#^jq947XRc1>&7N7R~;k?y+p33I)HZPT`tU-x8qeYHuFopSh39sM_ z;O@yFZjdr zJ8Wbf$1db9IJ|_p-=~Q>B`S91f8oi);^e^X<<=K*a;Q2iC$7DWcdG8Sbg!U>o{{I3 ztFoB)tfDg!%hgusE-AV*h^dwe6S~iEpaHLhNBoON8O2NA4#h(Ck??K2Ah&}#9qcOj39AKI6*AB Q^hY4;x^P_{2~yJi2hM5#asU7T diff --git a/hardware_test/.pio/build/rp2040_usb/lib0fd/Adafruit BusIO/Adafruit_SPIDevice.cpp.o b/hardware_test/.pio/build/rp2040_usb/lib0fd/Adafruit BusIO/Adafruit_SPIDevice.cpp.o deleted file mode 100644 index 50fa1485637df7a2bf3d046b92c8ffc6c1429188..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5864 zcmb_fU2q#$6+Ww#CE1A^|HVIXoUCl8wd+K+V&{h>fNWWDTjJEzpy`1z0a`dbSK=Omb&1s#JH*+ z<50d#9M#N!KL-}~y*$7&=7jh**bZNR3p$)RIo_QoPD*mZCbtxUDA@&BhSd! zj%IGeYXhVGBYh*!-dk|Z5aYSy(l?tgIcBDt+%xXEpZ33-gC~z>~(X_J9)Wlua(`IbE3DC zRmM5Qj2l<-tJO+wu}ZS}V)5pB3uU~UPk3(TZyi@|xS@9O-0?rP+&wR~dV%&!$<$|M zJejIRIu%F!<#^p$*PZKwRaw*Lz>|9U>@3<wtx$^f^?PgdFDQ7%=UYhq`AK|&i7X=b+dVr@+jMxv91q1$b0#9@89#O#Y%8O zJv8AH#VTgM`=Jxe4Cb$-q_PhecY^2525{b~gyxJ3;Ht##o)4NRBW#$l8>H76drIp4 z8|HLECFUegp-ibk7z_rFC>?_*Ki8@Fdwo5=Zs_a6XFH-s#x;<J>`hqMcy1wrh+!U_LevBUDZP68l)v^z_$r_m4H_Xc(s6=&6o$t zP%GfI9Aa9=uC;!@whMTJfHw$ulYln~c(Z`hZmo$7Edt)M2I7?ry9InV>_R_nH{B@? z#O)%3VmEQV7xtlt;*a2{!TV*x7D2n2#$m^QWZ6%nuEG21o?w?@FvZs~+znnbEFr#5 z0S{R=<*C8@OBLc1g8d~c{x#G!um!#=;6D`Xp9}UKw8>@GR|yX+yPoCW20L)$2&Y3aSauD=YvKFr?CtQLWd|7E02TO%5}&zWO|aMY$Wo3T3xA%)H-l=~3bXON z`(lw-(o>od9vOaaK)s+vRbMoff_4MiV-OxZ@j`#!iEvn-8V^4g4v(JnAAWp7aDOP0 zINYxpFQj8?IzD{zP$V6j(vp*Y|Fd{?F_Ko1JOts<M&4^5#PHTo*th~cUI+E01 zQPZK}IA#sA#vh*2V%i0WsS}Y)Ls~RFsjJb+WK8FbFRBqdtil_+Mi?&^;y=hLJw=%# zQA3-gqKnY^d(~uYbCEr|Y6Rn2YDAq-qee(8M%m*R)1TIic%QDTX+uk%362!6rpLd& z8k#tuMm96`z(qQS(C}yCXGi?uq6gfY#=WJph(kh6;EIZ^!fz6WjkuZ&o0E{5O)R>V ztb}kR8M7wfiKDdRsK5t$E9qy3=ZI1D}2=VMNAJ8);L=`IVt&4DiJwMg)B0x(>dyI^iRyugKwU zwkeh*5qee0#H?$Tj9TqYB_r4R2Q{SsAv_KnuB~9x*?7j|t*2x;{>Pe7$tjy@N1Gri z-Iz*}h%Kt*1Y5Hz8M{HhDm}NiK<6^gPB$WHV=CqQ|Gql-qLYb)n#4!2@5Lcs#4ys@ z_>`gQ_|R@n=*<_~5$iQHgL;Bp@U@DG7k?>^zeb61gpoXjgZfCRxNeLQ^HN{t!t+v( zqpzKS1$>B~GQ>|kjrt`GvZrv^`I2bkzlv4id_O>sJ#H55y45K2{hiF4IP7`~y!3(tE89duH~&PVUfh1T1SL3X}hA|Kyp`a0x%pB4CihJ5r6&jn2;mxZ|BBS7!nTzK41 zgt&JRC{*9uLVdrn)kj~KyuQB*d>!?zE&KyI5^)kH~~XfpAQe- z*oFAIFwVYzf41?_*DL2U1il@}7eJf~!c0;E--pPjAkvD1zIHj^O^mbGH;R0P?)w`8 zUmYGQ=cBJ<&bK7+T|vI*5$A$1livz_y*57TDV(no=iBT19omXX!G1YkIr{DUcMAFF z{i78JevPg2eOlmqfHvnKLVi7G#ZjLjSw@@Al?&BG;|=uVUyA!>EPO9FtQayWmUENc rjd3*E@VXNRt(Wc}S_AT}${0RG-?BM~hlK7~n;Rx@y+5`&c-(&hgW$AY diff --git a/hardware_test/.pio/build/rp2040_usb/lib0fd/libAdafruit BusIO.a b/hardware_test/.pio/build/rp2040_usb/lib0fd/libAdafruit BusIO.a deleted file mode 100644 index 954cc019da74d9d636add09dfed5ba7eb1ad2a20..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22016 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 diff --git a/hardware_test/.pio/build/rp2040_usb/lib153/libSPI.a b/hardware_test/.pio/build/rp2040_usb/lib153/libSPI.a deleted file mode 100644 index e8224a0c0b303687e503c174596ff2fcd524773d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19260 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 diff --git a/hardware_test/.pio/build/rp2040_usb/lib8d1/Wire/Wire.cpp.o b/hardware_test/.pio/build/rp2040_usb/lib8d1/Wire/Wire.cpp.o deleted file mode 100644 index 803b8770cbb06f0ded35a02c4d70f6a199c249b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17124 zcmcIr4RoAUnSQ_dGD(yEP17Q2l9n%-1d@j4r%BsT3Qi_%+N3{*wn$5H=O;7mOfpHv z$)qV%O!yJlMc3AHG;L6$;)+|4E)sQ>x=~#Jbtfn;w4U9Z6^y&G$|?s~VCg>Z_uV`5 z&CL{9&)Iv<*Z02neeQGL`~NfP=+>Pbnx>Hq8r4unBYM8sv^ZN#QA2+6nRX}ZMtqxV zN{>9)r@1G$xz2H1t0?OmNBp%ZCoQFS5mi0m)n*KO?Oa`?hOT*ES!8@0)x46@TK+Jn zlVg;OJH3w7v%O_~)1~okdc-wV7R@8ZI8*MvVDEwQik{Rhu5+5<@xC!pKFRLwTg?czID-cEhZSe$K&VpQK~CQJ%xYsW}XV_JzDb}BTtQ(^&Pz$-w=>TASFiA!n)R>deqqEt@GOWqE;6e9T6Mp- zIus67lXhkIdcS}2-pSBxs6Orw_Y4~&3wF$o%m%f_i;b1T6@kwMCWDs02F1a-0Od~J zqtQ!K`E>7D$0JM0RcX+w&Q-e@)jX=5q`J#y%DS4PnlVv&vv+SBRa~G=^n3~1-H{Sc zPh_QMLA##XIII~3XJ0zkeET=N|DDoKt&1++LA8acS~}2l8e_MXZfdHbcq8Ytr){FV z?VL8B(}*9R`p{W=?5O`( zq%2w%xzPKD|BVRM(ab%wZ$$DcmwQT6$0Fx@k3}YWPkUYGEmT?bmyaKd96;*%-tO{a zk!OR;=|?4%<)v|bRwCYr7|30O+z0!3R(;gh?(b1ODkQguw(`8 zFd4tIw5sHg>-ozYslv>M_10Xgta(c{SIv-HJ1MQLM5a~h5-s&skz49Dq?`CwA+_^#yJ^sZF%fLDEh>w@h=d^zgWrR=J``UHW+@C3&2N=**ey0Of{F!6jobt zZFO17iaANESvW(2LDmiI=F07k7+8y~5)HZ#9pCodIlpOr>wyrTS}UXw8PyUA-s0tv}PF`6t_Z3r^k@Szxxt>y_lrJMKL3 zF_gJroZBVuv~yytA zIa6Lk&y8|!s(LX7GlMts@LaQ=(V|v7cY)lzOiR{2Gtd(ev6%NX^O6VvG=jj z-;F%sT{zQ9y|>riekQ6_F_Ygj>6w02HI)E059lFecd7SJQjtx>P&-Y)ah~u}079mH9YzfUrUv|Cl+u z##Y`c+Ui{>cL`ztd{0^A=0Vq*!kOE8wU2$=``WW#@5LG9Y3=mKy?;ot#gSSS&Z#s4(NnLayf~SBEBMU5{}4Wr$LY~3b*yqFgLmZrV5z5|%QL;y z<%w_WZlt3)QEVg9vCCiATy~V|YEusCUbh@E19PQ4Hd%GbvuxM%&cF?>&I#>c$yh~a z-s;E_@0+mdu~VMF4Mpkn@<=r;_AK(gKEtKm*SyM4?x#ky=H+qT7q{dQEh6e}3!_B% zgYy(HrGCx*?GXp9{HL@2 zz_pQPuQOG!qa;E#T8eueDW19;UPC#HP>u|LPM$dS$m`bE9|cYQ(i!XQWrVcGLU9h$ z$saOeH zKmB#2JTY4tExwi3I8$SlpNTz93+{8Y7mZQ}dbt9>)aL<)_BnpN%=L zyW!vjEo|Sr*B|5BhGW)Rd{uNum*M^dPJxc*&aMl(%d?_VZ(rVCOU{R#<~lNITpRgJ zY})y#wzkB1+SS~)yVl?5*Cy6^&iIYkngFv^r`a~9*;>1_W|zmPyr5_EIZthhG%}vIrMz?yx{i~4G3X>sRU1qB0UI?|%y>`oIV+ZKIJzDeib6<#Q>yGYmG_}pu z`8EHOn6Eq%el|LbrQ}~P{tA-EeO?uHUon;cNYzot15~9wKo4-6m3J-oTcgo{w*?oN&oKKM}yzu|uC9 zakOwrF94x6PLE>kachlyUqTyUPr-^*ucgL%L(#*&p>WbCGu4Fp1FYEX$u(CS!_k3cEj8RY6iy5^ z^aK*IBZ0)>z8F#)>f^CM^3Y(SKRVbD5A^f}4u^*t4kZHp;gP{a-`YSTgv^8SXb;Tz zXYEj^uVEpzo5gZ>xScbsSEn9e} zAnIt_*S2$$(Uwex`{T*zz+nS*N1cqDqKR8VehV;ei3z-%$>5L}Rh= z;XurYM+c1R5LF^@dH3CSA79=6G)w!=|7*F(F~3~e*51C!sM)sr##*DPrM|hok=p7| zejpqOMsapV)VX2r+Fg{ts9;y2R-Cs&yG*-WFVR+NrP^w&Tt6+N3zCnptUAlZyw*NTQ+k%ewuWWnvBa2QYioJyDk$)`BQDRP9 z_RodSL06FnGNV^R%LE;@$u6&y-UBn^8}T_{XZ|XDR^Zxaf{y!acK&kegPHSl9tZ54 zzZ{Q?r7%9*ZShrxwL-y&`Aq z>lOQYt9>MZ)~90}(P@K%-=NqxD)x;gACG-2Y?KjG>X`M}?cHkP@dhD6EB%#-=z_znf%VdD3tQRdM+t?9H~!EaC7IHFURV((Jy zI~4m4#lBOqXI3hUf45@aO)ta1&3QFG2kkcf&#Z#GIa@mD)NR_+3DE69r#*^&kKK&= z?NjWTmSUhzH!AiUmHh8j?CSWsNwKTrdB0-cukasG><1M4&5HeI#ePuHZ&7rOR->`G zy?Ops;=Hs~=)6W3<9rmz(hF!z=vAhD0ewQ~#im|Jj|tr{^&yF25M33nvUnGW{vW`J{q@BDf$M75!R8-zM^x09%anMMUV9e=BHI!5M`khh_Xc6-k-iM$doy%y zFKNF?=nt59gJKHbkfM(%`aN0sD``ULjVPoT`~71A&m(miO5K>H-$+veA2IQ@^pvmz zZl1Azr0CBo`U{HwJLp`$AL1*<{>|@VtUqY#YpIq8jtJbo8x(!Fz&`?8G4|_z#eR>l z^B!M})8J{L^GUK8`|nwy^U1y#`|VGJ9y9gzG$(Wj*s*`&ioyQ1nEFOMHre%7+M1|wFyj4FBt-_Uu{k7(cm#z`| zB+`m$3w7JBMC?zGu=`DW2MsIsF=4m(x6_1Te^S^vxfuJ)d7)eFyMtaAI-i4!X(wH7 zyK-^)#P{a=woP0O$Y-;xP#0Go%_9heIWKSeQRUuBk#)l_^ zP%NBiJd&k09Ukka| zar(OEO!^4?^+gAUl7WGqaCWAqOJr*DDVetIe2=$nr_VPu9Q1Yid^hjjxNl^T8=`&P z*6vmmZx(?1vPnE?tnW_X{iA7P;7A}E3j|}~j={uDiD)vsl^Y?=(A1O&zkfJ9l zCIhiOaKp~fv@sYy939B2r`3|8kz2vm&ckYJKXF?#c`z^>N(7SJq3NbvZ}Px(t3#s6 zG7MkZHem#2RirMfTrL<+62o6Upz4w3`Zl8DB;Cw7dM6I4|7na3yFrJM`$P( z4#&}JcFLv}(FXg_ql3fAt-&m-GK^uAUiS~j%#PsU=L>Q_;+4%eJdljWvKZzK_Mn-~ z9OQ44Pt1a>>Te7V4|QU}$sWc{&4;1`(V<8<)HZbMK#yW<3=YoObj zyJ>^9-eA;-mChtz*OXa?cti;s&;N|cT7+z-bk8<5ngd$8WG;uXK(rriH#`&$$%oji zbrNHaA?7d*ghIX{Je~q7=(F0p#cWxgjaCVf?j1*Z_cr-@gISC{v2b7j%ln~3IBT{w zHJbTtd9wz@HQe3Ocm$lb=4!>VCTqp*k_h(?+NPKd*$gC_k|%U1j6T5h%8dM`M$8mB z8vCsh#NxYwcc4IjHXIFpYe;nV4cf~zDVXg5s67{nD8qo)ZG|NGLvm8jX9F%*U z^Fv?3xE%R!6ZyvkE{g~GO&;WzJb8@&x_BG?hINNY>rWDHGq8V?_^{Z4 zXPzQFV3_SZjW>MOzeTtOTj~2)B2!4D$3(i>p1^%T=Z zEyBKu`Mycy6|##Z{M{quewN4=5^_MuOV#^t*bYCw#PVB2=wef!7J5BP%nuLC?}+jF zk7C?>Tg(&uB4_pkaAx_y-O2dxS^ZuFoY|kSV+fl(re8=eW&J1OE#riEBmRhz{!x*B zznF(J*86V}hmL_CtxpnhUiI_jYMXDUyVH6A4o4^iS&AwNPmcBis)-Be?jKmp64OIf3ZJHnCIuB z9*|Y6pBLqVuZ4BgXA4W{X8%I>vkpGfU+|do6!qfq%k?_W67_n3CF(WK67}No>_ENp zAd8+8?S=BzvHm6NH;1BMivGp8+Ro{a`#2xU;r`_H<`$OdJkx(PLOJ8$PZ7%}ME^o^ zy5rx7436jGj<7WV>AG)s6TNz&H!x(CiS+O6O_4rT-t12H|Dik`qE*~n7RDpwx8R8R{^`hepRuj zr<**-O(ZvN-kl^jY~GB(L`@GPTl1xF8uMyyyKl_1&A)Zbhh*P9=G!lE1DOxZbq}%E zC3Eet9!%2Lj@%&SZej;zdL#Rmk{k0jca7W`a$GKQ0_R;ba-!@Pj+_8-&&X-ZzC>Vb zq*rLU=+3`O%*W)qQRFUe-rXVt!y{HAIUKL|z2gTdGcRA9e1SwFaH}=26N9|pV3V=E zP4MPZZ@m_zqvnnTnC(4HeHt^dS%^mE@k}C`(r1d|b|-!r_Q#l`9HhKK4fjSuXzyW%thmeUSt~O58ET?YNzn zz)dPRK9^PDlR@(FAII7GJ^;N~f*>UhN2V;?Uqd(W$slnrBf-vxBcttaFEV_K0kY$M z2%O|#P8q*S!TlJvTw1DC6v`+zHi&4Z6a^2*G(S_++g;Qq&d=gF$a zEYe!>$sp@-r^5FE@EHK{IOXvx`6d;<66htc%OLrFq~NUIk|ZkAe%}MmUXKTD^;iM8 zEcZo)&kKD^hA!P7zft%e0$(F=To1mpNxmXD3TS%1-3R43bQu`OAs;xqe?JGGAL-1; z^_F}!3SS9yE>{N0SEcZ^V4^Y)^YPtL^6ggmwnMLyWCF)(m%_Ibd~$s$7dY1Ohw54N zjX~eX1R_ZPh7`Vi;Bx`P{;kF*{d-X1n}+^?;9?>9#udI0_&l&PpMg*EeM8~fhlMK_ z-&YmBhrqX8@KxIQexdOF27EjQWq{cXFDtkb{8q;Gl|k0yCE)Di;6+=zR0AyQu^8pp z$5qWG_zHou^Sx=~Lp05IrNY+=KK`9m2I*g=!nddf?F$^Yb1gpU-}MULWWMz~tK^gI zvPt2)8YFRmn6J*pcSzxj6@rBczf}01 z1Rttw@-;w8zON{JPk?V+k_jBEk1Kr7gHO)OCV@j%N-2Ch3$1m9IXKAndr`p!f#du# zNZe95Y9B8#;9?R4DeK#y;GP9e+88eR_A9tw0@sp*?@k5h!ox={+y{XJ1$hL=o3)vC zX+;|Q!1elq!nfrTe4kVJR;zF&gR54#MEo`7XRe-2c2oTq*W5wH~?3-3T0y7ukMX-xMc^ zz#JUjEpXhY9A;gFzgWuz&cfez;Lvt)Y55~?_VFUAS;{gQYv8cnh`##^#K-ZmugGeS dQP~$z@gK9WhM^1@Bp;vk?YO&9s4oZZe*x`oNsIsh diff --git a/hardware_test/.pio/build/rp2040_usb/lib8d1/libWire.a b/hardware_test/.pio/build/rp2040_usb/lib8d1/libWire.a deleted file mode 100644 index 570cb33e10ded201932eb52a489e41a8e4f69ebb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18532 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 F{{Voz^>F|I diff --git a/hardware_test/.pio/build/rp2040_usb/lib903/Adafruit GFX Library/Adafruit_GFX.cpp.o b/hardware_test/.pio/build/rp2040_usb/lib903/Adafruit GFX Library/Adafruit_GFX.cpp.o deleted file mode 100644 index e35fc8f044d8d5f43d7e73e423ce1be672d8ddce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34768 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 diff --git a/hardware_test/.pio/build/rp2040_usb/lib903/Adafruit GFX Library/glcdfont.c.o b/hardware_test/.pio/build/rp2040_usb/lib903/Adafruit GFX Library/glcdfont.c.o deleted file mode 100644 index f0cde40c8557e8d9d5503380a07532a194b6edb3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 672 zcmah`%TB{U4D^zuB~lMO#Y;lvL=dnlq9DYrs!A_}1BegUqyZ|?7B!0mCw`U>fG>b? z6Sqk(wd8mvp0(HBug>j_Qi{YB1vFzsR~hk|6G1>eEfaOy?dy8by?Z>WpEdQlZcytO zd6Sr^PwD{ByL>nesZy(kzFKoP)TY{Uw$+Z>Rr{{An#N*3mwx}I2>_>b8|F*JG`KUz z%k>@dh@M~L-qUDkbxfqw&w(`&q8(@PMUYKCEa{%HhIEvsq~p@S`cfX|9aUygED&RIAgs^-pHUxE8@nE{Z#;WY-iNxfC@qV5O0BO*l6{R77QEusJb diff --git a/hardware_test/.pio/build/rp2040_usb/lib903/libAdafruit GFX Library.a b/hardware_test/.pio/build/rp2040_usb/lib903/libAdafruit GFX Library.a deleted file mode 100644 index 7bde813ea60e3d038c23312bd1e2f5fb5f42a9a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68858 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≧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 z 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 diff --git a/hardware_test/.pio/build/rp2040_usb/libcd5/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp.o b/hardware_test/.pio/build/rp2040_usb/libcd5/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp.o deleted file mode 100644 index 70fafeb842d23f67adc6cfeee5fcb3f7a05da056..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7264 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 FLASH - - .boot2 : { - __boot2_start__ = .; - KEEP (*(.boot2)) - __boot2_end__ = .; - } > FLASH - - ASSERT(__boot2_end__ - __boot2_start__ == 256, - "ERROR: Pico second stage bootloader must be 256 bytes in size") - - .ota : { - /* Start image with OTA */ - KEEP (*(.OTA)) - } > FLASH - - .partition : { - /* Align to the last 16-bytes of the OTA region */ - /* If anyone has a better way of doing this, please submit a PR! */ - . = __flash_binary_start + 0x2ff0; - LONG(270528512) - LONG(270528512) - LONG(270528512) - LONG(2093056) - } > FLASH - - /* The second stage will always enter the image at the start of .text. - The debugger will use the ELF entry point, which is the _entry_point - symbol if present, otherwise defaults to start of .text. - This can be used to transfer control back to the bootrom on debugger - launches only, to perform proper flash setup. - */ - - .text : { - __logical_binary_start = .; - KEEP (*(.vectors)) - KEEP (*(.binary_info_header)) - __binary_info_header_end = .; - KEEP (*(.embedded_block)) - __embedded_block_end = .; - KEEP (*(.reset)) - /* TODO revisit this now memset/memcpy/float in ROM */ - /* bit of a hack right now to exclude all floating point and time critical (e.g. memset, memcpy) code from - * FLASH ... we will include any thing excluded here in .data below by default */ - *(.init) - /* Some of these excludes required for PicoDVI library, won't affect most code */ - *(EXCLUDE_FILE(*libgcc.a: *libc.a:*lib_a-mem*.o *libm.a: *interp.c.obj *divider.S.obj *PicoDVI.cpp.o *dvi.c.o) .text*) - - *(.fini) - /* Pull all c'tors into .text */ - *crtbegin.o(.ctors) - *crtbegin?.o(.ctors) - *(EXCLUDE_FILE(*crtend?.o *crtend.o) .ctors) - *(SORT(.ctors.*)) - *(.ctors) - /* Followed by destructors */ - *crtbegin.o(.dtors) - *crtbegin?.o(.dtors) - *(EXCLUDE_FILE(*crtend?.o *crtend.o) .dtors) - *(SORT(.dtors.*)) - *(.dtors) - - . = ALIGN(4); - /* preinit data */ - PROVIDE_HIDDEN (__preinit_array_start = .); - KEEP(*(SORT(.preinit_array.*))) - KEEP(*(.preinit_array)) - PROVIDE_HIDDEN (__preinit_array_end = .); - - . = ALIGN(4); - /* init data */ - PROVIDE_HIDDEN (__init_array_start = .); - KEEP(*(SORT(.init_array.*))) - KEEP(*(.init_array)) - PROVIDE_HIDDEN (__init_array_end = .); - - . = ALIGN(4); - /* finit data */ - PROVIDE_HIDDEN (__fini_array_start = .); - *(SORT(.fini_array.*)) - *(.fini_array) - PROVIDE_HIDDEN (__fini_array_end = .); - - *(.eh_frame*) - . = ALIGN(4); - } > FLASH - - .rodata : { - *(EXCLUDE_FILE(*libgcc.a: *libc.a:*lib_a-mem*.o *libm.a:) .rodata* .big_const*) - . = ALIGN(4); - *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.flashdata*))) - . = ALIGN(4); - } > FLASH - - .ARM.extab : - { - *(.ARM.extab* .gnu.linkonce.armextab.*) - } > FLASH - - __exidx_start = .; - .ARM.exidx : - { - *(.ARM.exidx* .gnu.linkonce.armexidx.*) - } > FLASH - __exidx_end = .; - - . = ALIGN(4); - - .ram_vector_table (NOLOAD): { - *(.ram_vector_table) - } > RAM - - .data : { - __data_start__ = .; - *(vtable) - - *(.time_critical*) - - /* remaining .text and .rodata; i.e. stuff we exclude above because we want it in RAM */ - *(.text*) - . = ALIGN(4); - *(.rodata*) - . = ALIGN(4); - - *(.data*) - - . = ALIGN(4); - *(.after_data.*) - - . = ALIGN(4); - /* preinit data */ - PROVIDE_HIDDEN (__mutex_array_start = .); - KEEP(*(SORT(.mutex_array.*))) - KEEP(*(.mutex_array)) - PROVIDE_HIDDEN (__mutex_array_end = .); - - . = ALIGN(4); - *(.jcr) - . = ALIGN(4); - } > RAM AT> FLASH - - .tdata : { - . = ALIGN(4); - *(.tdata .tdata.* .gnu.linkonce.td.*) - /* All data end */ - __tdata_end = .; - } > RAM AT> FLASH - PROVIDE(__data_end__ = .); - - /* __etext is (for backwards compatibility) the name of the .data init source pointer (...) */ - __etext = LOADADDR(.data); - - .tbss (NOLOAD) : { - . = ALIGN(4); - __bss_start__ = .; - __tls_base = .; - *(.tbss .tbss.* .gnu.linkonce.tb.*) - *(.tcommon) - - __tls_end = .; - } > RAM - - .bss (NOLOAD) : { - . = ALIGN(4); - __tbss_end = .; - - *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.bss*))) - *(COMMON) - . = ALIGN(4); - __bss_end__ = .; - } > RAM - - /* At most one of the following two will be engaged, depending on the SDK version */ - .uninitialized_ram MAX(0x20003000, .) (NOLOAD) : { - *(.uninitialized_ram*) - } > RAM - - .uninitialized_data MAX(0x20003000, .) (NOLOAD) : { - *(.uninitialized_data*) - } > RAM - - .heap (NOLOAD): - { - __end__ = .; - end = __end__; - KEEP(*(.heap*)) - /* historically on GCC sbrk was growing past __HeapLimit to __StackLimit, however - to be more compatible, we now set __HeapLimit explicitly to where the end of the heap is */ - . = ORIGIN(RAM) + LENGTH(RAM); - __HeapLimit = .; - } > RAM - - /* Start and end symbols must be word-aligned */ - .scratch_x : { - __scratch_x_start__ = .; - *(.scratch_x.*) - . = ALIGN(4); - __scratch_x_end__ = .; - } > SCRATCH_X AT > FLASH - __scratch_x_source__ = LOADADDR(.scratch_x); - - .scratch_y : { - __scratch_y_start__ = .; - *(.scratch_y.*) - . = ALIGN(4); - __scratch_y_end__ = .; - } > SCRATCH_Y AT > FLASH - __scratch_y_source__ = LOADADDR(.scratch_y); - - /* .stack*_dummy section doesn't contains any symbols. It is only - * used for linker to calculate size of stack sections, and assign - * values to stack symbols later - * - * stack1 section may be empty/missing if platform_launch_core1 is not used */ - - /* by default we put core 0 stack at the end of scratch Y, so that if core 1 - * stack is not used then all of SCRATCH_X is free. - */ - .stack1_dummy (NOLOAD): - { - *(.stack1*) - } > SCRATCH_X - .stack_dummy (NOLOAD): - { - KEEP(*(.stack*)) - } > SCRATCH_Y - - .flash_end : { - KEEP(*(.embedded_end_block*)) - PROVIDE(__flash_binary_end = .); - } > FLASH - - /* stack limit is poorly named, but historically is maximum heap ptr */ - __StackLimit = ORIGIN(RAM) + LENGTH(RAM); - __StackOneTop = ORIGIN(SCRATCH_X) + LENGTH(SCRATCH_X); - __StackTop = ORIGIN(SCRATCH_Y) + LENGTH(SCRATCH_Y); - __StackOneBottom = __StackOneTop - SIZEOF(.stack1_dummy); - __StackBottom = __StackTop - SIZEOF(.stack_dummy); - PROVIDE(__stack = __StackTop); - - /* picolibc and LLVM */ - PROVIDE (__heap_start = __end__); - PROVIDE (__heap_end = __HeapLimit); - PROVIDE( __tls_align = MAX(ALIGNOF(.tdata), ALIGNOF(.tbss)) ); - PROVIDE( __tls_size_align = (__tls_size + __tls_align - 1) & ~(__tls_align - 1)); - PROVIDE( __arm32_tls_tcb_offset = MAX(8, __tls_align) ); - - /* llvm-libc */ - PROVIDE (_end = __end__); - PROVIDE (__llvm_libc_heap_limit = __HeapLimit); - - /* Check if data + heap + stack exceeds RAM limit */ - ASSERT(__StackLimit >= __HeapLimit, "region RAM overflowed") - - ASSERT( __binary_info_header_end - __logical_binary_start <= 256, "Binary info must be in first 256 bytes of the binary") - /* todo assert on extra code */ -} - diff --git a/hardware_test/.pio/build/rp2040_usb/src/main.cpp.o b/hardware_test/.pio/build/rp2040_usb/src/main.cpp.o deleted file mode 100644 index 76876733036b76efcd4df06eca39c7b11e020240..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11076 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 diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.clang-format b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.clang-format deleted file mode 100644 index c6cdd16..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.clang-format +++ /dev/null @@ -1,243 +0,0 @@ -Language: Cpp -# BasedOnStyle: LLVM -AccessModifierOffset: -2 -AlignAfterOpenBracket: Align -AlignArrayOfStructures: None -AlignConsecutiveAssignments: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: true -AlignConsecutiveBitFields: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: false -AlignConsecutiveDeclarations: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: false -AlignConsecutiveMacros: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: false -AlignConsecutiveShortCaseStatements: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCaseColons: false -AlignEscapedNewlines: Right -AlignOperands: Align -AlignTrailingComments: - Kind: Always - OverEmptyLines: 0 -AllowAllArgumentsOnNextLine: true -AllowAllParametersOfDeclarationOnNextLine: true -AllowBreakBeforeNoexceptSpecifier: Never -AllowShortBlocksOnASingleLine: Never -AllowShortCaseLabelsOnASingleLine: false -AllowShortCompoundRequirementOnASingleLine: true -AllowShortEnumsOnASingleLine: true -AllowShortFunctionsOnASingleLine: All -AllowShortIfStatementsOnASingleLine: Never -AllowShortLambdasOnASingleLine: All -AllowShortLoopsOnASingleLine: false -AlwaysBreakAfterDefinitionReturnType: None -AlwaysBreakAfterReturnType: None -AlwaysBreakBeforeMultilineStrings: false -AlwaysBreakTemplateDeclarations: MultiLine -AttributeMacros: - - __capability -BinPackArguments: true -BinPackParameters: true -BitFieldColonSpacing: Both -BraceWrapping: - AfterCaseLabel: false - AfterClass: false - AfterControlStatement: Never - AfterEnum: false - AfterExternBlock: false - AfterFunction: false - AfterNamespace: false - AfterObjCDeclaration: false - AfterStruct: false - AfterUnion: false - BeforeCatch: false - BeforeElse: false - BeforeLambdaBody: false - BeforeWhile: false - IndentBraces: false - SplitEmptyFunction: true - SplitEmptyRecord: true - SplitEmptyNamespace: true -BreakAdjacentStringLiterals: true -BreakAfterAttributes: Leave -BreakAfterJavaFieldAnnotations: false -BreakArrays: true -BreakBeforeBinaryOperators: None -BreakBeforeConceptDeclarations: Always -BreakBeforeBraces: Attach -BreakBeforeInlineASMColon: OnlyMultiline -BreakBeforeTernaryOperators: true -BreakConstructorInitializers: BeforeColon -BreakInheritanceList: BeforeColon -BreakStringLiterals: true -ColumnLimit: 80 -CommentPragmas: '^ IWYU pragma:' -CompactNamespaces: false -ConstructorInitializerIndentWidth: 4 -ContinuationIndentWidth: 4 -Cpp11BracedListStyle: true -DerivePointerAlignment: false -DisableFormat: false -EmptyLineAfterAccessModifier: Never -EmptyLineBeforeAccessModifier: LogicalBlock -ExperimentalAutoDetectBinPacking: false -FixNamespaceComments: true -ForEachMacros: - - foreach - - Q_FOREACH - - BOOST_FOREACH -IfMacros: - - KJ_IF_MAYBE -IncludeBlocks: Preserve -IncludeCategories: - - Regex: '^"(llvm|llvm-c|clang|clang-c)/' - Priority: 2 - SortPriority: 0 - CaseSensitive: false - - Regex: '^(<|"(gtest|gmock|isl|json)/)' - Priority: 3 - SortPriority: 0 - CaseSensitive: false - - Regex: '.*' - Priority: 1 - SortPriority: 0 - CaseSensitive: false -IncludeIsMainRegex: '(Test)?$' -IncludeIsMainSourceRegex: '' -IndentAccessModifiers: false -IndentCaseBlocks: false -IndentCaseLabels: false -IndentExternBlock: AfterExternBlock -IndentGotoLabels: true -IndentPPDirectives: None -IndentRequiresClause: true -IndentWidth: 2 -IndentWrappedFunctionNames: false -InsertBraces: false -InsertNewlineAtEOF: false -InsertTrailingCommas: None -IntegerLiteralSeparator: - Binary: 0 - BinaryMinDigits: 0 - Decimal: 0 - DecimalMinDigits: 0 - Hex: 0 - HexMinDigits: 0 -JavaScriptQuotes: Leave -JavaScriptWrapImports: true -KeepEmptyLinesAtTheStartOfBlocks: true -KeepEmptyLinesAtEOF: false -LambdaBodyIndentation: Signature -LineEnding: DeriveLF -MacroBlockBegin: '' -MacroBlockEnd: '' -MaxEmptyLinesToKeep: 1 -NamespaceIndentation: None -ObjCBinPackProtocolList: Auto -ObjCBlockIndentWidth: 2 -ObjCBreakBeforeNestedBlockParam: true -ObjCSpaceAfterProperty: false -ObjCSpaceBeforeProtocolList: true -PackConstructorInitializers: BinPack -PenaltyBreakAssignment: 2 -PenaltyBreakBeforeFirstCallParameter: 19 -PenaltyBreakComment: 300 -PenaltyBreakFirstLessLess: 120 -PenaltyBreakOpenParenthesis: 0 -PenaltyBreakScopeResolution: 500 -PenaltyBreakString: 1000 -PenaltyBreakTemplateDeclaration: 10 -PenaltyExcessCharacter: 1000000 -PenaltyIndentedWhitespace: 0 -PenaltyReturnTypeOnItsOwnLine: 60 -PointerAlignment: Right -PPIndentWidth: -1 -QualifierAlignment: Leave -ReferenceAlignment: Pointer -ReflowComments: true -RemoveBracesLLVM: false -RemoveParentheses: Leave -RemoveSemicolon: false -RequiresClausePosition: OwnLine -RequiresExpressionIndentation: OuterScope -SeparateDefinitionBlocks: Leave -ShortNamespaceLines: 1 -SkipMacroDefinitionBody: false -SortIncludes: CaseSensitive -SortJavaStaticImport: Before -SortUsingDeclarations: LexicographicNumeric -SpaceAfterCStyleCast: false -SpaceAfterLogicalNot: false -SpaceAfterTemplateKeyword: true -SpaceAroundPointerQualifiers: Default -SpaceBeforeAssignmentOperators: true -SpaceBeforeCaseColon: false -SpaceBeforeCpp11BracedList: false -SpaceBeforeCtorInitializerColon: true -SpaceBeforeInheritanceColon: true -SpaceBeforeJsonColon: false -SpaceBeforeParens: ControlStatements -SpaceBeforeParensOptions: - AfterControlStatements: true - AfterForeachMacros: true - AfterFunctionDefinitionName: false - AfterFunctionDeclarationName: false - AfterIfMacros: true - AfterOverloadedOperator: false - AfterPlacementOperator: true - AfterRequiresInClause: false - AfterRequiresInExpression: false - BeforeNonEmptyParentheses: false -SpaceBeforeRangeBasedForLoopColon: true -SpaceBeforeSquareBrackets: false -SpaceInEmptyBlock: false -SpacesBeforeTrailingComments: 1 -SpacesInAngles: Never -SpacesInContainerLiterals: true -SpacesInLineCommentPrefix: - Minimum: 1 - Maximum: -1 -SpacesInParens: Never -SpacesInParensOptions: - InCStyleCasts: false - InConditionalStatements: false - InEmptyParentheses: false - Other: false -SpacesInSquareBrackets: false -Standard: Latest -StatementAttributeLikeMacros: - - Q_EMIT -StatementMacros: - - Q_UNUSED - - QT_REQUIRE_VERSION -TabWidth: 8 -UseTab: Never -VerilogBreakBetweenInstancePorts: true -WhitespaceSensitiveMacros: - - BOOST_PP_STRINGIZE - - CF_SWIFT_NAME - - NS_SWIFT_NAME - - PP_STRINGIZE - - STRINGIZE \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/ISSUE_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index f0e2614..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,46 +0,0 @@ -Thank you for opening an issue on an Adafruit Arduino library repository. To -improve the speed of resolution please review the following guidelines and -common troubleshooting steps below before creating the issue: - -- **Do not use GitHub issues for troubleshooting projects and issues.** Instead use - the forums at http://forums.adafruit.com to ask questions and troubleshoot why - something isn't working as expected. In many cases the problem is a common issue - that you will more quickly receive help from the forum community. GitHub issues - are meant for known defects in the code. If you don't know if there is a defect - in the code then start with troubleshooting on the forum first. - -- **If following a tutorial or guide be sure you didn't miss a step.** Carefully - check all of the steps and commands to run have been followed. Consult the - forum if you're unsure or have questions about steps in a guide/tutorial. - -- **For Arduino projects check these very common issues to ensure they don't apply**: - - - For uploading sketches or communicating with the board make sure you're using - a **USB data cable** and **not** a **USB charge-only cable**. It is sometimes - very hard to tell the difference between a data and charge cable! Try using the - cable with other devices or swapping to another cable to confirm it is not - the problem. - - - **Be sure you are supplying adequate power to the board.** Check the specs of - your board and plug in an external power supply. In many cases just - plugging a board into your computer is not enough to power it and other - peripherals. - - - **Double check all soldering joints and connections.** Flakey connections - cause many mysterious problems. See the [guide to excellent soldering](https://learn.adafruit.com/adafruit-guide-excellent-soldering/tools) for examples of good solder joints. - - - **Ensure you are using an official Arduino or Adafruit board.** We can't - guarantee a clone board will have the same functionality and work as expected - with this code and don't support them. - -If you're sure this issue is a defect in the code and checked the steps above -please fill in the following fields to provide enough troubleshooting information. -You may delete the guideline and text above to just leave the following details: - -- Arduino board: **INSERT ARDUINO BOARD NAME/TYPE HERE** - -- Arduino IDE version (found in Arduino -> About Arduino menu): **INSERT ARDUINO - VERSION HERE** - -- List the steps to reproduce the problem below (if possible attach a sketch or - copy the sketch code in too): **LIST REPRO STEPS BELOW** diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 7b641eb..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,26 +0,0 @@ -Thank you for creating a pull request to contribute to Adafruit's GitHub code! -Before you open the request please review the following guidelines and tips to -help it be more easily integrated: - -- **Describe the scope of your change--i.e. what the change does and what parts - of the code were modified.** This will help us understand any risks of integrating - the code. - -- **Describe any known limitations with your change.** For example if the change - doesn't apply to a supported platform of the library please mention it. - -- **Please run any tests or examples that can exercise your modified code.** We - strive to not break users of the code and running tests/examples helps with this - process. - -Thank you again for contributing! We will try to test and integrate the change -as soon as we can, but be aware we have many GitHub repositories to manage and -can't immediately respond to every request. There is no need to bump or check in -on a pull request (it will clutter the discussion of the request). - -Also don't be worried if the request is closed or not integrated--sometimes the -priorities of Adafruit's GitHub code (education, ease of use) might not match the -priorities of the pull request. Don't fret, the open source community thrives on -forks and GitHub makes it easy to keep your changes in a forked repo. - -After reviewing the guidelines above you can delete this text from the pull request. diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/workflows/githubci.yml b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/workflows/githubci.yml deleted file mode 100644 index 8a57d75..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.github/workflows/githubci.yml +++ /dev/null @@ -1,33 +0,0 @@ -name: Arduino Library CI - -on: [pull_request, push, repository_dispatch] - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/setup-python@v4 - with: - python-version: '3.x' - - uses: actions/checkout@v3 - - uses: actions/checkout@v3 - with: - repository: adafruit/ci-arduino - path: ci - - - name: Install the prerequisites - run: bash ci/actions_install.sh - - - name: Check for correct code formatting with clang-format - run: python3 ci/run-clang-format.py -e "ci/*" -e "bin/*" -r . - - - name: Check for correct documentation with doxygen - env: - GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }} - PRETTYNAME : "Adafruit Bus IO Library" - run: bash ci/doxy_gen_and_deploy.sh - - - name: Test the code on supported platforms - run: python3 ci/build_platform.py main_platforms zero feather32u4 - diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.piopm b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.piopm deleted file mode 100644 index 6bd37c1..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/.piopm +++ /dev/null @@ -1 +0,0 @@ -{"type": "library", "name": "Adafruit BusIO", "version": "1.17.4", "spec": {"owner": "adafruit", "id": 6214, "name": "Adafruit BusIO", "requirements": null, "uri": null}} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.cpp b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.cpp deleted file mode 100644 index f3e8187..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.cpp +++ /dev/null @@ -1,384 +0,0 @@ -#include - -#if !defined(SPI_INTERFACES_COUNT) || \ - (defined(SPI_INTERFACES_COUNT) && (SPI_INTERFACES_COUNT > 0)) - -/*! - * @brief Create a register we access over an I2C Device (which defines the - * bus and address) - * @param i2cdevice The I2CDevice to use for underlying I2C access - * @param reg_addr The address pointer value for the I2C/SMBus register, can - * be 8 or 16 bits - * @param width The width of the register data itself, defaults to 1 byte - * @param byteorder The byte order of the register (used when width is > 1), - * defaults to LSBFIRST - * @param address_width The width of the register address itself, defaults - * to 1 byte - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register(Adafruit_I2CDevice *i2cdevice, - uint16_t reg_addr, - uint8_t width, - uint8_t byteorder, - uint8_t address_width) { - _i2cdevice = i2cdevice; - _spidevice = nullptr; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Create a register we access over an SPI Device (which defines the - * bus and CS pin) - * @param spidevice The SPIDevice to use for underlying SPI access - * @param reg_addr The address pointer value for the SPI register, can - * be 8 or 16 bits - * @param type The method we use to read/write data to SPI (which is not - * as well defined as I2C) - * @param width The width of the register data itself, defaults to 1 byte - * @param byteorder The byte order of the register (used when width is > 1), - * defaults to LSBFIRST - * @param address_width The width of the register address itself, defaults - * to 1 byte - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register(Adafruit_SPIDevice *spidevice, - uint16_t reg_addr, - Adafruit_BusIO_SPIRegType type, - uint8_t width, - uint8_t byteorder, - uint8_t address_width) { - _spidevice = spidevice; - _spiregtype = type; - _i2cdevice = nullptr; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Create a register we access over an I2C or SPI Device. This is a - * handy function because we can pass in nullptr for the unused interface, - * allowing libraries to mass-define all the registers - * @param i2cdevice The I2CDevice to use for underlying I2C access, if - * nullptr we use SPI - * @param spidevice The SPIDevice to use for underlying SPI access, if - * nullptr we use I2C - * @param reg_addr The address pointer value for the I2C/SMBus/SPI register, - * can be 8 or 16 bits - * @param type The method we use to read/write data to SPI (which is not - * as well defined as I2C) - * @param width The width of the register data itself, defaults to 1 byte - * @param byteorder The byte order of the register (used when width is > 1), - * defaults to LSBFIRST - * @param address_width The width of the register address itself, defaults - * to 1 byte - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register( - Adafruit_I2CDevice *i2cdevice, Adafruit_SPIDevice *spidevice, - Adafruit_BusIO_SPIRegType type, uint16_t reg_addr, uint8_t width, - uint8_t byteorder, uint8_t address_width) { - _spidevice = spidevice; - _i2cdevice = i2cdevice; - _spiregtype = type; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Create a register we access over a GenericDevice - * @param genericdevice Generic device to use - * @param reg_addr Register address we will read/write - * @param width Width of the register in bytes (1-4) - * @param byteorder Byte order of register data (LSBFIRST or MSBFIRST) - * @param address_width Width of the register address in bytes (1 or 2) - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register( - Adafruit_GenericDevice *genericdevice, uint16_t reg_addr, uint8_t width, - uint8_t byteorder, uint8_t address_width) { - _i2cdevice = nullptr; - _spidevice = nullptr; - _genericdevice = genericdevice; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Write a buffer of data to the register location - * @param buffer Pointer to data to write - * @param len Number of bytes to write - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::write(uint8_t *buffer, uint8_t len) { - uint8_t addrbuffer[2] = {(uint8_t)(_address & 0xFF), - (uint8_t)(_address >> 8)}; - if (_i2cdevice) { - return _i2cdevice->write(buffer, len, true, addrbuffer, _addrwidth); - } - if (_spidevice) { - if (_spiregtype == ADDRESSED_OPCODE_BIT0_LOW_TO_WRITE) { - // very special case! - // pass the special opcode address which we set as the high byte of the - // regaddr - addrbuffer[0] = - (uint8_t)(_address >> 8) & ~0x01; // set bottom bit low to write - // the 'actual' reg addr is the second byte then - addrbuffer[1] = (uint8_t)(_address & 0xFF); - // the address appears to be a byte longer - return _spidevice->write(buffer, len, addrbuffer, _addrwidth + 1); - } - if (_spiregtype == ADDRBIT8_HIGH_TOREAD) { - addrbuffer[0] &= ~0x80; - } - if (_spiregtype == ADDRBIT8_HIGH_TOWRITE) { - addrbuffer[0] |= 0x80; - } - if (_spiregtype == AD8_HIGH_TOREAD_AD7_HIGH_TOINC) { - addrbuffer[0] &= ~0x80; - addrbuffer[0] |= 0x40; - } - return _spidevice->write(buffer, len, addrbuffer, _addrwidth); - } - if (_genericdevice) { - return _genericdevice->writeRegister(addrbuffer, _addrwidth, buffer, len); - } - return false; -} - -/*! - * @brief Write up to 4 bytes of data to the register location - * @param value Data to write - * @param numbytes How many bytes from 'value' to write - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::write(uint32_t value, uint8_t numbytes) { - if (numbytes == 0) { - numbytes = _width; - } - if (numbytes > 4) { - return false; - } - - // store a copy - _cached = value; - - for (int i = 0; i < numbytes; i++) { - if (_byteorder == LSBFIRST) { - _buffer[i] = value & 0xFF; - } else { - _buffer[numbytes - i - 1] = value & 0xFF; - } - value >>= 8; - } - return write(_buffer, numbytes); -} - -/*! - * @brief Read data from the register location. This does not do any error - * checking! - * @return Returns 0xFFFFFFFF on failure, value otherwise - */ -uint32_t Adafruit_BusIO_Register::read(void) { - if (!read(_buffer, _width)) { - return -1; - } - - uint32_t value = 0; - - for (int i = 0; i < _width; i++) { - value <<= 8; - if (_byteorder == LSBFIRST) { - value |= _buffer[_width - i - 1]; - } else { - value |= _buffer[i]; - } - } - - return value; -} - -/*! - * @brief Read cached data from last time we wrote to this register - * @return Returns 0xFFFFFFFF on failure, value otherwise - */ -uint32_t Adafruit_BusIO_Register::readCached(void) { return _cached; } - -/*! - @brief Read a number of bytes from a register into a buffer - @param buffer Buffer to read data into - @param len Number of bytes to read into the buffer - @return true on successful read, otherwise false -*/ -bool Adafruit_BusIO_Register::read(uint8_t *buffer, uint8_t len) { - uint8_t addrbuffer[2] = {(uint8_t)(_address & 0xFF), - (uint8_t)(_address >> 8)}; - if (_i2cdevice) { - return _i2cdevice->write_then_read(addrbuffer, _addrwidth, buffer, len); - } - if (_spidevice) { - if (_spiregtype == ADDRESSED_OPCODE_BIT0_LOW_TO_WRITE) { - // very special case! - // pass the special opcode address which we set as the high byte of the - // regaddr - addrbuffer[0] = - (uint8_t)(_address >> 8) | 0x01; // set bottom bit high to read - // the 'actual' reg addr is the second byte then - addrbuffer[1] = (uint8_t)(_address & 0xFF); - // the address appears to be a byte longer - return _spidevice->write_then_read(addrbuffer, _addrwidth + 1, buffer, - len); - } - if (_spiregtype == ADDRBIT8_HIGH_TOREAD) { - addrbuffer[0] |= 0x80; - } - if (_spiregtype == ADDRBIT8_HIGH_TOWRITE) { - addrbuffer[0] &= ~0x80; - } - if (_spiregtype == AD8_HIGH_TOREAD_AD7_HIGH_TOINC) { - addrbuffer[0] |= 0x80 | 0x40; - } - return _spidevice->write_then_read(addrbuffer, _addrwidth, buffer, len); - } - if (_genericdevice) { - return _genericdevice->readRegister(addrbuffer, _addrwidth, buffer, len); - } - return false; -} - -/*! - * @brief Read 2 bytes of data from the register location - * @param value Pointer to uint16_t variable to read into - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::read(uint16_t *value) { - if (!read(_buffer, 2)) { - return false; - } - - if (_byteorder == LSBFIRST) { - *value = _buffer[1]; - *value <<= 8; - *value |= _buffer[0]; - } else { - *value = _buffer[0]; - *value <<= 8; - *value |= _buffer[1]; - } - return true; -} - -/*! - * @brief Read 1 byte of data from the register location - * @param value Pointer to uint8_t variable to read into - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::read(uint8_t *value) { - if (!read(_buffer, 1)) { - return false; - } - - *value = _buffer[0]; - return true; -} - -/*! - * @brief Pretty printer for this register - * @param s The Stream to print to, defaults to &Serial - */ -void Adafruit_BusIO_Register::print(Stream *s) { - uint32_t val = read(); - s->print("0x"); - s->print(val, HEX); -} - -/*! - * @brief Pretty printer for this register - * @param s The Stream to print to, defaults to &Serial - */ -void Adafruit_BusIO_Register::println(Stream *s) { - print(s); - s->println(); -} - -/*! - * @brief Create a slice of the register that we can address without - * touching other bits - * @param reg The Adafruit_BusIO_Register which defines the bus/register - * @param bits The number of bits wide we are slicing - * @param shift The number of bits that our bit-slice is shifted from LSB - */ -Adafruit_BusIO_RegisterBits::Adafruit_BusIO_RegisterBits( - Adafruit_BusIO_Register *reg, uint8_t bits, uint8_t shift) { - _register = reg; - _bits = bits; - _shift = shift; -} - -/*! - * @brief Read 4 bytes of data from the register - * @return data The 4 bytes to read - */ -uint32_t Adafruit_BusIO_RegisterBits::read(void) { - uint32_t val = _register->read(); - val >>= _shift; - return val & ((1 << (_bits)) - 1); -} - -/*! - * @brief Write 4 bytes of data to the register - * @param data The 4 bytes to write - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_RegisterBits::write(uint32_t data) { - uint32_t val = _register->read(); - - // mask off the data before writing - uint32_t mask = (1 << (_bits)) - 1; - data &= mask; - - mask <<= _shift; - val &= ~mask; // remove the current data at that spot - val |= data << _shift; // and add in the new data - - return _register->write(val, _register->width()); -} - -/*! - * @brief The width of the register data, helpful for doing calculations - * @returns The data width used when initializing the register - */ -uint8_t Adafruit_BusIO_Register::width(void) { return _width; } - -/*! - * @brief Set the default width of data - * @param width the default width of data read from register - */ -void Adafruit_BusIO_Register::setWidth(uint8_t width) { _width = width; } - -/*! - * @brief Set register address - * @param address the address from register - */ -void Adafruit_BusIO_Register::setAddress(uint16_t address) { - _address = address; -} - -/*! - * @brief Set the width of register address - * @param address_width the width for register address - */ -void Adafruit_BusIO_Register::setAddressWidth(uint16_t address_width) { - _addrwidth = address_width; -} - -#endif // SPI exists diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.h deleted file mode 100644 index 046e04c..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.h +++ /dev/null @@ -1,117 +0,0 @@ -#ifndef Adafruit_BusIO_Register_h -#define Adafruit_BusIO_Register_h - -#include - -#if !defined(SPI_INTERFACES_COUNT) || \ - (defined(SPI_INTERFACES_COUNT) && (SPI_INTERFACES_COUNT > 0)) - -#include -#include -#include - -typedef enum _Adafruit_BusIO_SPIRegType { - ADDRBIT8_HIGH_TOREAD = 0, - /*!< - * ADDRBIT8_HIGH_TOREAD - * When reading a register you must actually send the value 0x80 + register - * address to the device. e.g. To read the register 0x0B the register value - * 0x8B is sent and to write 0x0B is sent. - */ - AD8_HIGH_TOREAD_AD7_HIGH_TOINC = 1, - - /*!< - * ADDRBIT8_HIGH_TOWRITE - * When writing to a register you must actually send the value 0x80 + - * the register address to the device. e.g. To write to the register 0x19 the - * register value 0x99 is sent and to read 0x19 is sent. - */ - ADDRBIT8_HIGH_TOWRITE = 2, - - /*!< - * ADDRESSED_OPCODE_LOWBIT_TO_WRITE - * Used by the MCP23S series, we send 0x40 |'rd with the opcode - * Then set the lowest bit to write - */ - ADDRESSED_OPCODE_BIT0_LOW_TO_WRITE = 3, - -} Adafruit_BusIO_SPIRegType; - -/*! - * @brief The class which defines a device register (a location to read/write - * data from) - */ -class Adafruit_BusIO_Register { -public: - Adafruit_BusIO_Register(Adafruit_I2CDevice *i2cdevice, uint16_t reg_addr, - uint8_t width = 1, uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - Adafruit_BusIO_Register(Adafruit_SPIDevice *spidevice, uint16_t reg_addr, - Adafruit_BusIO_SPIRegType type, uint8_t width = 1, - uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - Adafruit_BusIO_Register(Adafruit_I2CDevice *i2cdevice, - Adafruit_SPIDevice *spidevice, - Adafruit_BusIO_SPIRegType type, uint16_t reg_addr, - uint8_t width = 1, uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - Adafruit_BusIO_Register(Adafruit_GenericDevice *genericdevice, - uint16_t reg_addr, uint8_t width = 1, - uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - bool read(uint8_t *buffer, uint8_t len); - bool read(uint8_t *value); - bool read(uint16_t *value); - uint32_t read(void); - uint32_t readCached(void); - bool write(uint8_t *buffer, uint8_t len); - bool write(uint32_t value, uint8_t numbytes = 0); - - uint8_t width(void); - - void setWidth(uint8_t width); - void setAddress(uint16_t address); - void setAddressWidth(uint16_t address_width); - -#if !defined(NO_GLOBAL_INSTANCES) && !defined(NO_GLOBAL_SERIAL) - void print(Stream *s = &Serial); - void println(Stream *s = &Serial); -#else - void print(Stream *s); - void println(Stream *s); -#endif - -private: - Adafruit_I2CDevice *_i2cdevice; - Adafruit_SPIDevice *_spidevice; - Adafruit_GenericDevice *_genericdevice; - Adafruit_BusIO_SPIRegType _spiregtype; - uint16_t _address; - uint8_t _width, _addrwidth, _byteorder; - uint8_t _buffer[4]; // we won't support anything larger than uint32 for - // non-buffered read - uint32_t _cached = 0; -}; - -/*! - * @brief The class which defines a slice of bits from within a device register - * (a location to read/write data from) - */ -class Adafruit_BusIO_RegisterBits { -public: - Adafruit_BusIO_RegisterBits(Adafruit_BusIO_Register *reg, uint8_t bits, - uint8_t shift); - bool write(uint32_t value); - uint32_t read(void); - -private: - Adafruit_BusIO_Register *_register; - uint8_t _bits, _shift; -}; - -#endif // SPI exists -#endif // BusIO_Register_h diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.cpp b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.cpp deleted file mode 100644 index 37f9cfd..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.cpp +++ /dev/null @@ -1,90 +0,0 @@ -/* - Written with help by Claude! - https://claude.ai/chat/335f50b1-3dd8-435e-9139-57ec7ca26a3c (at this time - chats are not shareable :( -*/ - -#include "Adafruit_GenericDevice.h" - -/*! - * @brief Create a Generic device with the provided read/write functions - * @param obj Pointer to object instance - * @param read_func Function pointer for reading raw data - * @param write_func Function pointer for writing raw data - * @param readreg_func Function pointer for reading registers (optional) - * @param writereg_func Function pointer for writing registers (optional) */ -Adafruit_GenericDevice::Adafruit_GenericDevice( - void *obj, busio_genericdevice_read_t read_func, - busio_genericdevice_write_t write_func, - busio_genericdevice_readreg_t readreg_func, - busio_genericdevice_writereg_t writereg_func) { - _obj = obj; - _read_func = read_func; - _write_func = write_func; - _readreg_func = readreg_func; - _writereg_func = writereg_func; - _begun = false; -} - -/*! @brief Simple begin function (doesn't do much at this time) - @return true always -*/ -bool Adafruit_GenericDevice::begin(void) { - _begun = true; - return true; -} - -/*! -@brief Marks the GenericDevice as no longer in use. -@note: Since this is a GenericDevice, if you are using this with a Serial -object, this does NOT disable serial communication or release the RX/TX pins. -That must be done manually by calling Serial.end(). -*/ -void Adafruit_GenericDevice::end(void) { _begun = false; } - -/*! @brief Write a buffer of data - @param buffer Pointer to buffer of data to write - @param len Number of bytes to write - @return true if write was successful, otherwise false */ -bool Adafruit_GenericDevice::write(const uint8_t *buffer, size_t len) { - if (!_begun) - return false; - return _write_func(_obj, buffer, len); -} - -/*! @brief Read data into a buffer - @param buffer Pointer to buffer to read data into - @param len Number of bytes to read - @return true if read was successful, otherwise false */ -bool Adafruit_GenericDevice::read(uint8_t *buffer, size_t len) { - if (!_begun) - return false; - return _read_func(_obj, buffer, len); -} - -/*! @brief Read from a register location - @param addr_buf Buffer containing register address - @param addrsiz Size of register address in bytes - @param buf Buffer to store read data - @param bufsiz Size of data to read in bytes - @return true if read was successful, otherwise false */ -bool Adafruit_GenericDevice::readRegister(uint8_t *addr_buf, uint8_t addrsiz, - uint8_t *buf, uint16_t bufsiz) { - if (!_begun || !_readreg_func) - return false; - return _readreg_func(_obj, addr_buf, addrsiz, buf, bufsiz); -} - -/*! @brief Write to a register location - @param addr_buf Buffer containing register address - @param addrsiz Size of register address in bytes - @param buf Buffer containing data to write - @param bufsiz Size of data to write in bytes - @return true if write was successful, otherwise false */ -bool Adafruit_GenericDevice::writeRegister(uint8_t *addr_buf, uint8_t addrsiz, - const uint8_t *buf, - uint16_t bufsiz) { - if (!_begun || !_writereg_func) - return false; - return _writereg_func(_obj, addr_buf, addrsiz, buf, bufsiz); -} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.h deleted file mode 100644 index d5cb326..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef ADAFRUIT_GENERICDEVICE_H -#define ADAFRUIT_GENERICDEVICE_H - -#include - -typedef bool (*busio_genericdevice_read_t)(void *obj, uint8_t *buffer, - size_t len); -typedef bool (*busio_genericdevice_write_t)(void *obj, const uint8_t *buffer, - size_t len); -typedef bool (*busio_genericdevice_readreg_t)(void *obj, uint8_t *addr_buf, - uint8_t addrsiz, uint8_t *data, - uint16_t datalen); -typedef bool (*busio_genericdevice_writereg_t)(void *obj, uint8_t *addr_buf, - uint8_t addrsiz, - const uint8_t *data, - uint16_t datalen); - -/*! - * @brief Class for communicating with a device via generic read/write functions - */ -class Adafruit_GenericDevice { -public: - Adafruit_GenericDevice( - void *obj, busio_genericdevice_read_t read_func, - busio_genericdevice_write_t write_func, - busio_genericdevice_readreg_t readreg_func = nullptr, - busio_genericdevice_writereg_t writereg_func = nullptr); - - bool begin(void); - void end(void); - - bool read(uint8_t *buffer, size_t len); - bool write(const uint8_t *buffer, size_t len); - bool readRegister(uint8_t *addr_buf, uint8_t addrsiz, uint8_t *buf, - uint16_t bufsiz); - bool writeRegister(uint8_t *addr_buf, uint8_t addrsiz, const uint8_t *buf, - uint16_t bufsiz); - -protected: - /*! @brief Function pointer for reading raw data from the device */ - busio_genericdevice_read_t _read_func; - /*! @brief Function pointer for writing raw data to the device */ - busio_genericdevice_write_t _write_func; - /*! @brief Function pointer for reading a 'register' from the device */ - busio_genericdevice_readreg_t _readreg_func; - /*! @brief Function pointer for writing a 'register' to the device */ - busio_genericdevice_writereg_t _writereg_func; - - bool _begun; ///< whether we have initialized yet (in case the function needs - ///< to do something) - -private: - void *_obj; ///< Pointer to object instance -}; - -#endif // ADAFRUIT_GENERICDEVICE_H diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.cpp b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.cpp deleted file mode 100644 index 2633cf1..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.cpp +++ /dev/null @@ -1,320 +0,0 @@ -#include "Adafruit_I2CDevice.h" - -// #define DEBUG_SERIAL Serial - -/*! - * @brief Create an I2C device at a given address - * @param addr The 7-bit I2C address for the device - * @param theWire The I2C bus to use, defaults to &Wire - */ -Adafruit_I2CDevice::Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire) { - _addr = addr; - _wire = theWire; - _begun = false; -#ifdef ARDUINO_ARCH_SAMD - _maxBufferSize = 250; // as defined in Wire.h's RingBuffer -#elif defined(ESP32) - _maxBufferSize = I2C_BUFFER_LENGTH; -#else - _maxBufferSize = 32; -#endif -} - -/*! - * @brief Initializes and does basic address detection - * @param addr_detect Whether we should attempt to detect the I2C address - * with a scan. 99% of sensors/devices don't mind, but once in a while they - * don't respond well to a scan! - * @return True if I2C initialized and a device with the addr found - */ -bool Adafruit_I2CDevice::begin(bool addr_detect) { - _wire->begin(); - _begun = true; - - if (addr_detect) { - return detected(); - } - return true; -} - -/*! - * @brief De-initialize device, turn off the Wire interface - */ -void Adafruit_I2CDevice::end(void) { - // Not all port implement Wire::end(), such as - // - ESP8266 - // - AVR core without WIRE_HAS_END - // - ESP32: end() is implemented since 2.0.1 which is latest at the moment. - // Temporarily disable for now to give time for user to update. -#if !(defined(ESP8266) || \ - (defined(ARDUINO_ARCH_AVR) && !defined(WIRE_HAS_END)) || \ - defined(ARDUINO_ARCH_ESP32)) - _wire->end(); - _begun = false; -#endif -} - -/*! - * @brief Scans I2C for the address - note will give a false-positive - * if there's no pullups on I2C - * @return True if I2C initialized and a device with the addr found - */ -bool Adafruit_I2CDevice::detected(void) { - // Init I2C if not done yet - if (!_begun && !begin()) { - return false; - } - - // A basic scanner, see if it ACK's - _wire->beginTransmission(_addr); -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("Address 0x")); - DEBUG_SERIAL.print(_addr, HEX); -#endif -#ifdef ARDUINO_ARCH_MBED - _wire->write(0); // forces a write request instead of a read -#endif - if (_wire->endTransmission() == 0) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F(" Detected")); -#endif - return true; - } -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F(" Not detected")); -#endif - return false; -} - -/*! - * @brief Write a buffer or two to the I2C device. Cannot be more than - * maxBufferSize() bytes. - * @param buffer Pointer to buffer of data to write. This is const to - * ensure the content of this buffer doesn't change. - * @param len Number of bytes from buffer to write - * @param prefix_buffer Pointer to optional array of data to write before - * buffer. Cannot be more than maxBufferSize() bytes. This is const to - * ensure the content of this buffer doesn't change. - * @param prefix_len Number of bytes from prefix buffer to write - * @param stop Whether to send an I2C STOP signal on write - * @return True if write was successful, otherwise false. - */ -bool Adafruit_I2CDevice::write(const uint8_t *buffer, size_t len, bool stop, - const uint8_t *prefix_buffer, - size_t prefix_len) { - if ((len + prefix_len) > maxBufferSize()) { - // currently not guaranteed to work if more than 32 bytes! - // we will need to find out if some platforms have larger - // I2C buffer sizes :/ -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F("\tI2CDevice could not write such a large buffer")); -#endif - return false; - } - - _wire->beginTransmission(_addr); - - // Write the prefix data (usually an address) - if ((prefix_len != 0) && (prefix_buffer != nullptr)) { - if (_wire->write(prefix_buffer, prefix_len) != prefix_len) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F("\tI2CDevice failed to write")); -#endif - return false; - } - } - - // Write the data itself - if (_wire->write(buffer, len) != len) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F("\tI2CDevice failed to write")); -#endif - return false; - } - -#ifdef DEBUG_SERIAL - - DEBUG_SERIAL.print(F("\tI2CWRITE @ 0x")); - DEBUG_SERIAL.print(_addr, HEX); - DEBUG_SERIAL.print(F(" :: ")); - if ((prefix_len != 0) && (prefix_buffer != nullptr)) { - for (uint16_t i = 0; i < prefix_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(prefix_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - } - } - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (i % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - - if (stop) { - DEBUG_SERIAL.print("\tSTOP"); - } -#endif - - if (_wire->endTransmission(stop) == 0) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(); - // DEBUG_SERIAL.println("Sent!"); -#endif - return true; - } else { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println("\tFailed to send!"); -#endif - return false; - } -} - -/*! - * @brief Read from I2C into a buffer from the I2C device. - * Cannot be more than maxBufferSize() bytes. - * @param buffer Pointer to buffer of data to read into - * @param len Number of bytes from buffer to read. - * @param stop Whether to send an I2C STOP signal on read - * @return True if read was successful, otherwise false. - */ -bool Adafruit_I2CDevice::read(uint8_t *buffer, size_t len, bool stop) { - size_t pos = 0; - while (pos < len) { - size_t read_len = - ((len - pos) > maxBufferSize()) ? maxBufferSize() : (len - pos); - bool read_stop = (pos < (len - read_len)) ? false : stop; - if (!_read(buffer + pos, read_len, read_stop)) - return false; - pos += read_len; - } - return true; -} - -bool Adafruit_I2CDevice::_read(uint8_t *buffer, size_t len, bool stop) { -#if defined(TinyWireM_h) - size_t recv = _wire->requestFrom((uint8_t)_addr, (uint8_t)len); -#elif defined(ARDUINO_ARCH_MEGAAVR) - size_t recv = _wire->requestFrom(_addr, len, stop); -#else - size_t recv = _wire->requestFrom((uint8_t)_addr, (uint8_t)len, (uint8_t)stop); -#endif - - if (recv != len) { - // Not enough data available to fulfill our obligation! -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tI2CDevice did not receive enough data: ")); - DEBUG_SERIAL.println(recv); -#endif - return false; - } - - for (uint16_t i = 0; i < len; i++) { - buffer[i] = _wire->read(); - } - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tI2CREAD @ 0x")); - DEBUG_SERIAL.print(_addr, HEX); - DEBUG_SERIAL.print(F(" :: ")); - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - return true; -} - -/*! - * @brief Write some data, then read some data from I2C into another buffer. - * Cannot be more than maxBufferSize() bytes. The buffers can point to - * same/overlapping locations. - * @param write_buffer Pointer to buffer of data to write from - * @param write_len Number of bytes from buffer to write. - * @param read_buffer Pointer to buffer of data to read into. - * @param read_len Number of bytes from buffer to read. - * @param stop Whether to send an I2C STOP signal between the write and read - * @return True if write & read was successful, otherwise false. - */ -bool Adafruit_I2CDevice::write_then_read(const uint8_t *write_buffer, - size_t write_len, uint8_t *read_buffer, - size_t read_len, bool stop) { - if (!write(write_buffer, write_len, stop)) { - return false; - } - - return read(read_buffer, read_len); -} - -/*! - * @brief Returns the 7-bit address of this device - * @return The 7-bit address of this device - */ -uint8_t Adafruit_I2CDevice::address(void) { return _addr; } - -/*! - * @brief Change the I2C clock speed to desired (relies on - * underlying Wire support! - * @param desiredclk The desired I2C SCL frequency - * @return True if this platform supports changing I2C speed. - * Not necessarily that the speed was achieved! - */ -bool Adafruit_I2CDevice::setSpeed(uint32_t desiredclk) { -#if defined(__AVR_ATmega328__) || \ - defined(__AVR_ATmega328P__) // fix arduino core set clock - // calculate TWBR correctly - - if ((F_CPU / 18) < desiredclk) { -#ifdef DEBUG_SERIAL - Serial.println(F("I2C.setSpeed too high.")); -#endif - return false; - } - uint32_t atwbr = ((F_CPU / desiredclk) - 16) / 2; - if (atwbr > 16320) { -#ifdef DEBUG_SERIAL - Serial.println(F("I2C.setSpeed too low.")); -#endif - return false; - } - - if (atwbr <= 255) { - atwbr /= 1; - TWSR = 0x0; - } else if (atwbr <= 1020) { - atwbr /= 4; - TWSR = 0x1; - } else if (atwbr <= 4080) { - atwbr /= 16; - TWSR = 0x2; - } else { // if (atwbr <= 16320) - atwbr /= 64; - TWSR = 0x3; - } - TWBR = atwbr; - -#ifdef DEBUG_SERIAL - Serial.print(F("TWSR prescaler = ")); - Serial.println(pow(4, TWSR)); - Serial.print(F("TWBR = ")); - Serial.println(atwbr); -#endif - return true; -#elif (ARDUINO >= 157) && !defined(ARDUINO_STM32_FEATHER) && \ - !defined(TinyWireM_h) - _wire->setClock(desiredclk); - return true; - -#else - (void)desiredclk; - return false; -#endif -} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.h deleted file mode 100644 index 6bda7ba..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.h +++ /dev/null @@ -1,36 +0,0 @@ -#ifndef Adafruit_I2CDevice_h -#define Adafruit_I2CDevice_h - -#include -#include - -///< The class which defines how we will talk to this device over I2C -class Adafruit_I2CDevice { -public: - Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire); - uint8_t address(void); - bool begin(bool addr_detect = true); - void end(void); - bool detected(void); - - bool read(uint8_t *buffer, size_t len, bool stop = true); - bool write(const uint8_t *buffer, size_t len, bool stop = true, - const uint8_t *prefix_buffer = nullptr, size_t prefix_len = 0); - bool write_then_read(const uint8_t *write_buffer, size_t write_len, - uint8_t *read_buffer, size_t read_len, - bool stop = false); - bool setSpeed(uint32_t desiredclk); - - /*! @brief How many bytes we can read in a transaction - * @return The size of the Wire receive/transmit buffer */ - size_t maxBufferSize() { return _maxBufferSize; } - -private: - uint8_t _addr; - TwoWire *_wire; - bool _begun; - size_t _maxBufferSize; - bool _read(uint8_t *buffer, size_t len, bool stop); -}; - -#endif // Adafruit_I2CDevice_h diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CRegister.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CRegister.h deleted file mode 100644 index 186850f..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CRegister.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef _ADAFRUIT_I2C_REGISTER_H_ -#define _ADAFRUIT_I2C_REGISTER_H_ - -#include -#include - -typedef Adafruit_BusIO_Register Adafruit_I2CRegister; -typedef Adafruit_BusIO_RegisterBits Adafruit_I2CRegisterBits; - -#endif diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.cpp b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.cpp deleted file mode 100644 index 3283de6..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.cpp +++ /dev/null @@ -1,512 +0,0 @@ -#include "Adafruit_SPIDevice.h" - -// #define DEBUG_SERIAL Serial - -#ifdef BUSIO_USE_FAST_PINIO -#define BUSIO_SET_CLOCK_LOW() (*clkPort = *clkPort & ~clkPinMask) -#define BUSIO_SET_CLOCK_HIGH() (*clkPort = *clkPort | clkPinMask) -#define BUSIO_READ_MISO() (*misoPort & misoPinMask) -#define BUSIO_WRITE_MOSI(value) \ - do { \ - if (value) \ - *mosiPort = *mosiPort | mosiPinMask; \ - else \ - *mosiPort = *mosiPort & ~mosiPinMask; \ - } while (0) -#else -#define BUSIO_SET_CLOCK_LOW() digitalWrite(_sck, LOW) -#define BUSIO_SET_CLOCK_HIGH() digitalWrite(_sck, HIGH) -#define BUSIO_READ_MISO() digitalRead(_miso) -#define BUSIO_WRITE_MOSI(value) digitalWrite(_mosi, value) -#endif - -/*! - * @brief Create an SPI device with the given CS pin and settings - * @param cspin The arduino pin number to use for chip select - * @param freq The SPI clock frequency to use, defaults to 1MHz - * @param dataOrder The SPI data order to use for bits within each byte, - * defaults to SPI_BITORDER_MSBFIRST - * @param dataMode The SPI mode to use, defaults to SPI_MODE0 - * @param theSPI The SPI bus to use, defaults to &theSPI - */ -Adafruit_SPIDevice::Adafruit_SPIDevice(int8_t cspin, uint32_t freq, - BusIOBitOrder dataOrder, - uint8_t dataMode, SPIClass *theSPI) { -#ifdef BUSIO_HAS_HW_SPI - _cs = cspin; - _sck = _mosi = _miso = -1; - _spi = theSPI; - _begun = false; - _spiSetting = new SPISettings(freq, dataOrder, dataMode); - _freq = freq; - _dataOrder = dataOrder; - _dataMode = dataMode; -#else - // unused, but needed to suppress compiler warns - (void)cspin; - (void)freq; - (void)dataOrder; - (void)dataMode; - (void)theSPI; -#endif -} - -/*! - * @brief Create an SPI device with the given CS pin and settings - * @param cspin The arduino pin number to use for chip select - * @param sckpin The arduino pin number to use for SCK - * @param misopin The arduino pin number to use for MISO, set to -1 if not - * used - * @param mosipin The arduino pin number to use for MOSI, set to -1 if not - * used - * @param freq The SPI clock frequency to use, defaults to 1MHz - * @param dataOrder The SPI data order to use for bits within each byte, - * defaults to SPI_BITORDER_MSBFIRST - * @param dataMode The SPI mode to use, defaults to SPI_MODE0 - */ -Adafruit_SPIDevice::Adafruit_SPIDevice(int8_t cspin, int8_t sckpin, - int8_t misopin, int8_t mosipin, - uint32_t freq, BusIOBitOrder dataOrder, - uint8_t dataMode) { - _cs = cspin; - _sck = sckpin; - _miso = misopin; - _mosi = mosipin; - -#ifdef BUSIO_USE_FAST_PINIO - csPort = (BusIO_PortReg *)portOutputRegister(digitalPinToPort(cspin)); - csPinMask = digitalPinToBitMask(cspin); - if (mosipin != -1) { - mosiPort = (BusIO_PortReg *)portOutputRegister(digitalPinToPort(mosipin)); - mosiPinMask = digitalPinToBitMask(mosipin); - } - if (misopin != -1) { - misoPort = (BusIO_PortReg *)portInputRegister(digitalPinToPort(misopin)); - misoPinMask = digitalPinToBitMask(misopin); - } - clkPort = (BusIO_PortReg *)portOutputRegister(digitalPinToPort(sckpin)); - clkPinMask = digitalPinToBitMask(sckpin); -#endif - - _freq = freq; - _dataOrder = dataOrder; - _dataMode = dataMode; - _begun = false; -} - -/*! - * @brief Release memory allocated in constructors - */ -Adafruit_SPIDevice::~Adafruit_SPIDevice() { - if (_spiSetting) - delete _spiSetting; -} - -/*! - * @brief Initializes SPI bus and sets CS pin high - * @return Always returns true because there's no way to test success of SPI - * init - */ -bool Adafruit_SPIDevice::begin(void) { - if (_cs != -1) { - pinMode(_cs, OUTPUT); - digitalWrite(_cs, HIGH); - } - - if (_spi) { // hardware SPI -#ifdef BUSIO_HAS_HW_SPI - _spi->begin(); -#endif - } else { - pinMode(_sck, OUTPUT); - - if ((_dataMode == SPI_MODE0) || (_dataMode == SPI_MODE1)) { - // idle low on mode 0 and 1 - digitalWrite(_sck, LOW); - } else { - // idle high on mode 2 or 3 - digitalWrite(_sck, HIGH); - } - if (_mosi != -1) { - pinMode(_mosi, OUTPUT); - digitalWrite(_mosi, HIGH); - } - if (_miso != -1) { - pinMode(_miso, INPUT); - } - } - - _begun = true; - return true; -} - -/*! - * @brief Transfer (send/receive) a buffer over hard/soft SPI, without - * transaction management - * @param buffer The buffer to send and receive at the same time - * @param len The number of bytes to transfer - */ -void Adafruit_SPIDevice::transfer(uint8_t *buffer, size_t len) { - // - // HARDWARE SPI - // - if (_spi) { -#ifdef BUSIO_HAS_HW_SPI -#if defined(SPARK) - _spi->transfer(buffer, buffer, len, nullptr); -#elif defined(STM32) - for (size_t i = 0; i < len; i++) { - _spi->transfer(buffer[i]); - } -#else - _spi->transfer(buffer, len); -#endif - return; -#endif - } - - // - // SOFTWARE SPI - // - uint8_t startbit; - if (_dataOrder == SPI_BITORDER_LSBFIRST) { - startbit = 0x1; - } else { - startbit = 0x80; - } - - bool towrite, lastmosi = !(buffer[0] & startbit); - uint8_t bitdelay_us = (1000000 / _freq) / 2; - - for (size_t i = 0; i < len; i++) { - uint8_t reply = 0; - uint8_t send = buffer[i]; - - /* - Serial.print("\tSending software SPI byte 0x"); - Serial.print(send, HEX); - Serial.print(" -> 0x"); - */ - - // Serial.print(send, HEX); - for (uint8_t b = startbit; b != 0; - b = (_dataOrder == SPI_BITORDER_LSBFIRST) ? b << 1 : b >> 1) { - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_dataMode == SPI_MODE0 || _dataMode == SPI_MODE2) { - towrite = send & b; - if ((_mosi != -1) && (lastmosi != towrite)) { - BUSIO_WRITE_MOSI(towrite); - lastmosi = towrite; - } - - BUSIO_SET_CLOCK_HIGH(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_miso != -1) { - if (BUSIO_READ_MISO()) - reply |= b; - } - - BUSIO_SET_CLOCK_LOW(); - - } else if (_dataMode == SPI_MODE3) { - - if (_mosi != -1) { // transmit on falling edge - BUSIO_WRITE_MOSI(send & b); - } - - BUSIO_SET_CLOCK_LOW(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - BUSIO_SET_CLOCK_HIGH(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_miso != -1) { // read on rising edge - if (BUSIO_READ_MISO()) { - reply |= b; - } - } - - } else { // || _dataMode == SPI_MODE1) - - BUSIO_SET_CLOCK_HIGH(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_mosi != -1) { - BUSIO_WRITE_MOSI(send & b); - } - - BUSIO_SET_CLOCK_LOW(); - - if (_miso != -1) { - if (BUSIO_READ_MISO()) { - reply |= b; - } - } - } - } - if (_miso != -1) { - buffer[i] = reply; - } - } - return; -} - -/*! - * @brief Transfer (send/receive) one byte over hard/soft SPI, without - * transaction management - * @param send The byte to send - * @return The byte received while transmitting - */ -uint8_t Adafruit_SPIDevice::transfer(uint8_t send) { - uint8_t data = send; - transfer(&data, 1); - return data; -} - -/*! - * @brief Manually begin a transaction (calls beginTransaction if hardware - * SPI) - */ -void Adafruit_SPIDevice::beginTransaction(void) { - if (_spi) { -#ifdef BUSIO_HAS_HW_SPI - _spi->beginTransaction(*_spiSetting); -#endif - } -} - -/*! - * @brief Manually end a transaction (calls endTransaction if hardware SPI) - */ -void Adafruit_SPIDevice::endTransaction(void) { - if (_spi) { -#ifdef BUSIO_HAS_HW_SPI - _spi->endTransaction(); -#endif - } -} - -/*! - * @brief Assert/Deassert the CS pin if it is defined - * @param value The state the CS is set to - */ -void Adafruit_SPIDevice::setChipSelect(int value) { - if (_cs != -1) { - digitalWrite(_cs, value); - } -} - -/*! - * @brief Write a buffer or two to the SPI device, with transaction - * management. - * @brief Manually begin a transaction (calls beginTransaction if hardware - * SPI) with asserting the CS pin - */ -void Adafruit_SPIDevice::beginTransactionWithAssertingCS() { - beginTransaction(); - setChipSelect(LOW); -} - -/*! - * @brief Manually end a transaction (calls endTransaction if hardware SPI) - * with deasserting the CS pin - */ -void Adafruit_SPIDevice::endTransactionWithDeassertingCS() { - setChipSelect(HIGH); - endTransaction(); -} - -/*! - * @brief Write a buffer or two to the SPI device, with transaction - * management. - * @param buffer Pointer to buffer of data to write - * @param len Number of bytes from buffer to write - * @param prefix_buffer Pointer to optional array of data to write before - * buffer. - * @param prefix_len Number of bytes from prefix buffer to write - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::write(const uint8_t *buffer, size_t len, - const uint8_t *prefix_buffer, - size_t prefix_len) { - beginTransactionWithAssertingCS(); - - // do the writing -#if defined(ARDUINO_ARCH_ESP32) - if (_spi) { - if (prefix_len > 0) { - _spi->transferBytes((uint8_t *)prefix_buffer, nullptr, prefix_len); - } - if (len > 0) { - _spi->transferBytes((uint8_t *)buffer, nullptr, len); - } - } else -#endif - { - for (size_t i = 0; i < prefix_len; i++) { - transfer(prefix_buffer[i]); - } - for (size_t i = 0; i < len; i++) { - transfer(buffer[i]); - } - } - endTransactionWithDeassertingCS(); - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Wrote: ")); - if ((prefix_len != 0) && (prefix_buffer != nullptr)) { - for (uint16_t i = 0; i < prefix_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(prefix_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - } - } - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (i % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - return true; -} - -/*! - * @brief Read from SPI into a buffer from the SPI device, with transaction - * management. - * @param buffer Pointer to buffer of data to read into - * @param len Number of bytes from buffer to read. - * @param sendvalue The 8-bits of data to write when doing the data read, - * defaults to 0xFF - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::read(uint8_t *buffer, size_t len, uint8_t sendvalue) { - memset(buffer, sendvalue, len); // clear out existing buffer - - beginTransactionWithAssertingCS(); - transfer(buffer, len); - endTransactionWithDeassertingCS(); - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Read: ")); - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - return true; -} - -/*! - * @brief Write some data, then read some data from SPI into another buffer, - * with transaction management. The buffers can point to same/overlapping - * locations. This does not transmit-receive at the same time! - * @param write_buffer Pointer to buffer of data to write from - * @param write_len Number of bytes from buffer to write. - * @param read_buffer Pointer to buffer of data to read into. - * @param read_len Number of bytes from buffer to read. - * @param sendvalue The 8-bits of data to write when doing the data read, - * defaults to 0xFF - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::write_then_read(const uint8_t *write_buffer, - size_t write_len, uint8_t *read_buffer, - size_t read_len, uint8_t sendvalue) { - beginTransactionWithAssertingCS(); - // do the writing -#if defined(ARDUINO_ARCH_ESP32) - if (_spi) { - if (write_len > 0) { - _spi->transferBytes((uint8_t *)write_buffer, nullptr, write_len); - } - } else -#endif - { - for (size_t i = 0; i < write_len; i++) { - transfer(write_buffer[i]); - } - } - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Wrote: ")); - for (uint16_t i = 0; i < write_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(write_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (write_len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - // do the reading - for (size_t i = 0; i < read_len; i++) { - read_buffer[i] = transfer(sendvalue); - } - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Read: ")); - for (uint16_t i = 0; i < read_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(read_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (read_len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - endTransactionWithDeassertingCS(); - - return true; -} - -/*! - * @brief Write some data and read some data at the same time from SPI - * into the same buffer, with transaction management. This is basicaly a wrapper - * for transfer() with CS-pin and transaction management. This /does/ - * transmit-receive at the same time! - * @param buffer Pointer to buffer of data to write/read to/from - * @param len Number of bytes from buffer to write/read. - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::write_and_read(uint8_t *buffer, size_t len) { - beginTransactionWithAssertingCS(); - transfer(buffer, len); - endTransactionWithDeassertingCS(); - - return true; -} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.h deleted file mode 100644 index 82a0281..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.h +++ /dev/null @@ -1,149 +0,0 @@ -#ifndef Adafruit_SPIDevice_h -#define Adafruit_SPIDevice_h - -#include - -#if !defined(SPI_INTERFACES_COUNT) || \ - (defined(SPI_INTERFACES_COUNT) && (SPI_INTERFACES_COUNT > 0)) -// HW SPI available -#include -#define BUSIO_HAS_HW_SPI -#else -// SW SPI ONLY -enum { SPI_MODE0, SPI_MODE1, SPI_MODE2, SPI_MODE3 }; -typedef uint8_t SPIClass; -#endif - -// some modern SPI definitions don't have BitOrder enum -#if (defined(__AVR__) && !defined(ARDUINO_ARCH_MEGAAVR)) || \ - defined(ESP8266) || defined(TEENSYDUINO) || defined(SPARK) || \ - defined(ARDUINO_ARCH_SPRESENSE) || defined(MEGATINYCORE) || \ - defined(DXCORE) || defined(ARDUINO_AVR_ATmega4809) || \ - defined(ARDUINO_AVR_ATmega4808) || defined(ARDUINO_AVR_ATmega3209) || \ - defined(ARDUINO_AVR_ATmega3208) || defined(ARDUINO_AVR_ATmega1609) || \ - defined(ARDUINO_AVR_ATmega1608) || defined(ARDUINO_AVR_ATmega809) || \ - defined(ARDUINO_AVR_ATmega808) || defined(ARDUINO_ARCH_ARC32) || \ - defined(ARDUINO_ARCH_XMC) - -typedef enum _BitOrder { - SPI_BITORDER_MSBFIRST = MSBFIRST, - SPI_BITORDER_LSBFIRST = LSBFIRST, -} BusIOBitOrder; - -#elif defined(ESP32) || defined(__ASR6501__) || defined(__ASR6502__) - -// some modern SPI definitions don't have BitOrder enum and have different SPI -// mode defines -typedef enum _BitOrder { - SPI_BITORDER_MSBFIRST = SPI_MSBFIRST, - SPI_BITORDER_LSBFIRST = SPI_LSBFIRST, -} BusIOBitOrder; - -#else -// Some platforms have a BitOrder enum but its named MSBFIRST/LSBFIRST -#define SPI_BITORDER_MSBFIRST MSBFIRST -#define SPI_BITORDER_LSBFIRST LSBFIRST -typedef BitOrder BusIOBitOrder; -#endif - -#if defined(__IMXRT1062__) // Teensy 4.x -// *Warning* I disabled the usage of FAST_PINIO as the set/clear operations -// used in the cpp file are not atomic and can effect multiple IO pins -// and if an interrupt happens in between the time the code reads the register -// and writes out the updated value, that changes one or more other IO pins -// on that same IO port, those change will be clobbered when the updated -// values are written back. A fast version can be implemented that uses the -// ports set and clear registers which are atomic. -// typedef volatile uint32_t BusIO_PortReg; -// typedef uint32_t BusIO_PortMask; -// #define BUSIO_USE_FAST_PINIO - -#elif defined(__MBED__) || defined(__ZEPHYR__) -// Boards based on RTOS cores like mbed or Zephyr are not going to expose the -// low level registers needed for fast pin manipulation -#undef BUSIO_USE_FAST_PINIO - -#elif defined(ARDUINO_ARCH_XMC) -#undef BUSIO_USE_FAST_PINIO - -#elif defined(__AVR__) || defined(TEENSYDUINO) -typedef volatile uint8_t BusIO_PortReg; -typedef uint8_t BusIO_PortMask; -#define BUSIO_USE_FAST_PINIO - -#elif defined(ESP8266) || defined(ESP32) || defined(__SAM3X8E__) || \ - defined(ARDUINO_ARCH_SAMD) -typedef volatile uint32_t BusIO_PortReg; -typedef uint32_t BusIO_PortMask; -#define BUSIO_USE_FAST_PINIO - -#elif (defined(__arm__) || defined(ARDUINO_FEATHER52)) && \ - !defined(ARDUINO_ARCH_RP2040) && !defined(ARDUINO_SILABS) && \ - !defined(ARDUINO_UNOR4_MINIMA) && !defined(ARDUINO_UNOR4_WIFI) && \ - !defined(PORTDUINO) -typedef volatile uint32_t BusIO_PortReg; -typedef uint32_t BusIO_PortMask; -#if !defined(__ASR6501__) && !defined(__ASR6502__) -#define BUSIO_USE_FAST_PINIO -#endif - -#else -#undef BUSIO_USE_FAST_PINIO -#endif - -/**! The class which defines how we will talk to this device over SPI **/ -class Adafruit_SPIDevice { -public: -#ifdef BUSIO_HAS_HW_SPI - Adafruit_SPIDevice(int8_t cspin, uint32_t freq = 1000000, - BusIOBitOrder dataOrder = SPI_BITORDER_MSBFIRST, - uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI); -#else - Adafruit_SPIDevice(int8_t cspin, uint32_t freq = 1000000, - BusIOBitOrder dataOrder = SPI_BITORDER_MSBFIRST, - uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = nullptr); -#endif - Adafruit_SPIDevice(int8_t cspin, int8_t sck, int8_t miso, int8_t mosi, - uint32_t freq = 1000000, - BusIOBitOrder dataOrder = SPI_BITORDER_MSBFIRST, - uint8_t dataMode = SPI_MODE0); - ~Adafruit_SPIDevice(); - - bool begin(void); - bool read(uint8_t *buffer, size_t len, uint8_t sendvalue = 0xFF); - bool write(const uint8_t *buffer, size_t len, - const uint8_t *prefix_buffer = nullptr, size_t prefix_len = 0); - bool write_then_read(const uint8_t *write_buffer, size_t write_len, - uint8_t *read_buffer, size_t read_len, - uint8_t sendvalue = 0xFF); - bool write_and_read(uint8_t *buffer, size_t len); - - uint8_t transfer(uint8_t send); - void transfer(uint8_t *buffer, size_t len); - void beginTransaction(void); - void endTransaction(void); - void beginTransactionWithAssertingCS(); - void endTransactionWithDeassertingCS(); - -private: -#ifdef BUSIO_HAS_HW_SPI - SPIClass *_spi = nullptr; - SPISettings *_spiSetting = nullptr; -#else - uint8_t *_spi = nullptr; - uint8_t *_spiSetting = nullptr; -#endif - uint32_t _freq; - BusIOBitOrder _dataOrder; - uint8_t _dataMode; - void setChipSelect(int value); - - int8_t _cs, _sck, _mosi, _miso; -#ifdef BUSIO_USE_FAST_PINIO - BusIO_PortReg *mosiPort, *clkPort, *misoPort, *csPort; - BusIO_PortMask mosiPinMask, misoPinMask, clkPinMask, csPinMask; -#endif - bool _begun; -}; - -#endif // Adafruit_SPIDevice_h diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/CMakeLists.txt b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/CMakeLists.txt deleted file mode 100644 index 3fcb0b8..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/CMakeLists.txt +++ /dev/null @@ -1,11 +0,0 @@ -# Adafruit Bus IO Library -# https://github.com/adafruit/Adafruit_BusIO -# MIT License - -cmake_minimum_required(VERSION 3.5) - -idf_component_register(SRCS "Adafruit_I2CDevice.cpp" "Adafruit_BusIO_Register.cpp" "Adafruit_SPIDevice.cpp" "Adafruit_GenericDevice.cpp" - INCLUDE_DIRS "." - REQUIRES arduino-esp32) - -project(Adafruit_BusIO) diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/LICENSE b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/LICENSE deleted file mode 100644 index 860e3e2..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2017 Adafruit Industries - -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. \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/README.md b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/README.md deleted file mode 100644 index 59712ff..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/README.md +++ /dev/null @@ -1,8 +0,0 @@ -# Adafruit Bus IO Library [![Build Status](https://github.com/adafruit/Adafruit_BusIO/workflows/Arduino%20Library%20CI/badge.svg)](https://github.com/adafruit/Adafruit_BusIO/actions) - - -This is a helper library to abstract away I2C, SPI, and 'generic transport' (e.g. UART) transactions and registers - -Adafruit invests time and resources providing this open source code, please support Adafruit and open-source hardware by purchasing products from Adafruit! - -MIT license, all text above must be included in any redistribution diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/component.mk b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/component.mk deleted file mode 100644 index 049f190..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/component.mk +++ /dev/null @@ -1 +0,0 @@ -COMPONENT_ADD_INCLUDEDIRS = . diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/.uno.test.skip b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/.uno.test.skip deleted file mode 100644 index e69de29..0000000 diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino deleted file mode 100644 index 59af308..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino +++ /dev/null @@ -1,219 +0,0 @@ -/* - Advanced example of using bstracted transport for reading and writing - register data from a UART-based device such as a TMC2209 - - Written with help by Claude! - https://claude.ai/chat/335f50b1-3dd8-435e-9139-57ec7ca26a3c (at this time - chats are not shareable :( -*/ - -#include "Adafruit_BusIO_Register.h" -#include "Adafruit_GenericDevice.h" - -// Debugging macros -#define DEBUG_SERIAL Serial - -#ifdef DEBUG_SERIAL -#define DEBUG_PRINT(x) DEBUG_SERIAL.print(x) -#define DEBUG_PRINTLN(x) DEBUG_SERIAL.println(x) -#define DEBUG_PRINT_HEX(x) \ - do { \ - if (x < 0x10) \ - DEBUG_SERIAL.print('0'); \ - DEBUG_SERIAL.print(x, HEX); \ - DEBUG_SERIAL.print(' '); \ - } while (0) -#else -#define DEBUG_PRINT(x) -#define DEBUG_PRINTLN(x) -#define DEBUG_PRINT_HEX(x) -#endif - -#define TMC2209_IOIN 0x06 - -class TMC2209_UART { -private: - Stream *_uart_stream; - uint8_t _addr; - - static bool uart_read(void *thiz, uint8_t *buffer, size_t len) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - uint16_t timeout = 100; - while (dev->_uart_stream->available() < len && timeout--) { - delay(1); - } - if (timeout == 0) { - DEBUG_PRINTLN("Read timeout!"); - return false; - } - - DEBUG_PRINT("Reading: "); - for (size_t i = 0; i < len; i++) { - buffer[i] = dev->_uart_stream->read(); - DEBUG_PRINT_HEX(buffer[i]); - } - DEBUG_PRINTLN(""); - - return true; - } - - static bool uart_write(void *thiz, const uint8_t *buffer, size_t len) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - DEBUG_PRINT("Writing: "); - for (size_t i = 0; i < len; i++) { - DEBUG_PRINT_HEX(buffer[i]); - } - DEBUG_PRINTLN(""); - - dev->_uart_stream->write(buffer, len); - return true; - } - - static bool uart_readreg(void *thiz, uint8_t *addr_buf, uint8_t addrsiz, - uint8_t *data, uint16_t datalen) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - while (dev->_uart_stream->available()) - dev->_uart_stream->read(); - - uint8_t packet[4] = {0x05, uint8_t(dev->_addr << 1), addr_buf[0], 0x00}; - - packet[3] = calcCRC(packet, 3); - if (!uart_write(thiz, packet, 4)) - return false; - - // Read back echo - uint8_t echo[4]; - if (!uart_read(thiz, echo, 4)) - return false; - - // Verify echo - for (uint8_t i = 0; i < 4; i++) { - if (echo[i] != packet[i]) { - DEBUG_PRINTLN("Echo mismatch"); - return false; - } - } - - uint8_t response[8]; // sync + 0xFF + reg + 4 data bytes + CRC - if (!uart_read(thiz, response, 8)) - return false; - - // Verify response - if (response[0] != 0x05) { - DEBUG_PRINTLN("Invalid sync byte"); - return false; - } - - if (response[1] != 0xFF) { - DEBUG_PRINTLN("Invalid reply address"); - return false; - } - - if (response[2] != addr_buf[0]) { - DEBUG_PRINTLN("Register mismatch"); - return false; - } - - uint8_t crc = calcCRC(response, 7); - if (crc != response[7]) { - DEBUG_PRINTLN("CRC mismatch"); - return false; - } - - memcpy(data, &response[3], 4); - return true; - } - - static bool uart_writereg(void *thiz, uint8_t *addr_buf, uint8_t addrsiz, - const uint8_t *data, uint16_t datalen) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - while (dev->_uart_stream->available()) - dev->_uart_stream->read(); - - uint8_t packet[8] = {0x05, - uint8_t(dev->_addr << 1), - uint8_t(addr_buf[0] | 0x80), - data[0], - data[1], - data[2], - data[3], - 0x00}; - - packet[7] = calcCRC(packet, 7); - if (!uart_write(thiz, packet, 8)) - return false; - - uint8_t echo[8]; - if (!uart_read(thiz, echo, 8)) - return false; - - for (uint8_t i = 0; i < 8; i++) { - if (echo[i] != packet[i]) { - DEBUG_PRINTLN("Write echo mismatch"); - return false; - } - } - - return true; - } - - static uint8_t calcCRC(uint8_t *data, uint8_t length) { - uint8_t crc = 0; - for (uint8_t i = 0; i < length; i++) { - uint8_t currentByte = data[i]; - for (uint8_t j = 0; j < 8; j++) { - if ((crc >> 7) ^ (currentByte & 0x01)) { - crc = (crc << 1) ^ 0x07; - } else { - crc = crc << 1; - } - currentByte = currentByte >> 1; - } - } - return crc; - } - -public: - TMC2209_UART(Stream *serial, uint8_t addr) - : _uart_stream(serial), _addr(addr) {} - - Adafruit_GenericDevice *createDevice() { - return new Adafruit_GenericDevice(this, uart_read, uart_write, uart_readreg, - uart_writereg); - } -}; - -void setup() { - Serial.begin(115200); - while (!Serial) - ; - delay(100); - Serial.println("TMC2209 Generic Device register read/write test!"); - - Serial1.begin(115200); - - TMC2209_UART uart(&Serial1, 0); - Adafruit_GenericDevice *device = uart.createDevice(); - device->begin(); - - // Create register object for IOIN - Adafruit_BusIO_Register ioin_reg(device, - TMC2209_IOIN, // device and register address - 4, // width = 4 bytes - MSBFIRST, // byte order - 1); // address width = 1 byte - Serial.print("IOIN = 0x"); - Serial.println(ioin_reg.read(), HEX); - - // Create RegisterBits for VERSION field (bits 31:24) - Adafruit_BusIO_RegisterBits version_bits( - &ioin_reg, 8, 24); // 8 bits wide, starting at bit 24 - - Serial.println("Reading VERSION..."); - uint8_t version = version_bits.read(); - - Serial.print("VERSION = 0x"); - Serial.println(version, HEX); -} - -void loop() { delay(1000); } \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/.uno.test.skip b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/.uno.test.skip deleted file mode 100644 index e69de29..0000000 diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino deleted file mode 100644 index 6a11dbf..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino +++ /dev/null @@ -1,98 +0,0 @@ -/* - Abstracted transport for reading and writing data from a UART-based - device such as a TMC2209 - - Written with help by Claude! - https://claude.ai/chat/335f50b1-3dd8-435e-9139-57ec7ca26a3c (at this time - chats are not shareable :( -*/ - -#include "Adafruit_GenericDevice.h" - -/** - * Basic UART device class that demonstrates using GenericDevice with a Stream - * interface. This example shows how to wrap a Stream (like HardwareSerial or - * SoftwareSerial) with read/write callbacks that can be used by BusIO's - * register functions. - */ -class UARTDevice { -public: - UARTDevice(Stream *serial) : _serial(serial) {} - - // Static callback for writing data to UART - // Called by GenericDevice when data needs to be sent - static bool uart_write(void *thiz, const uint8_t *buffer, size_t len) { - UARTDevice *dev = (UARTDevice *)thiz; - dev->_serial->write(buffer, len); - return true; - } - - // Static callback for reading data from UART - // Includes timeout and will return false if not enough data available - static bool uart_read(void *thiz, uint8_t *buffer, size_t len) { - UARTDevice *dev = (UARTDevice *)thiz; - uint16_t timeout = 100; - while (dev->_serial->available() < len && timeout--) { - delay(1); - } - if (timeout == 0) { - return false; - } - for (size_t i = 0; i < len; i++) { - buffer[i] = dev->_serial->read(); - } - return true; - } - - // Create a GenericDevice instance using our callbacks - Adafruit_GenericDevice *createDevice() { - return new Adafruit_GenericDevice(this, uart_read, uart_write); - } - -private: - Stream *_serial; // Underlying Stream instance (HardwareSerial, etc) -}; - -void setup() { - Serial.begin(115200); - while (!Serial) - ; - delay(100); - - Serial.println("Generic Device test!"); - - // Initialize UART for device communication - Serial1.begin(115200); - - // Create UART wrapper and BusIO device - UARTDevice uart(&Serial1); - Adafruit_GenericDevice *device = uart.createDevice(); - device->begin(); - - // Test write/read cycle - uint8_t write_buf[4] = {0x5, 0x0, 0x0, 0x48}; - uint8_t read_buf[8]; - - Serial.println("Writing data..."); - if (!device->write(write_buf, 4)) { - Serial.println("Write failed!"); - return; - } - - Serial.println("Reading response..."); - if (!device->read(read_buf, 8)) { - Serial.println("Read failed!"); - return; - } - - // Print response bytes - Serial.print("Got response: "); - for (int i = 0; i < 8; i++) { - Serial.print("0x"); - Serial.print(read_buf[i], HEX); - Serial.print(" "); - } - Serial.println(); -} - -void loop() { delay(1000); } \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino deleted file mode 100644 index f2e6ba7..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino +++ /dev/null @@ -1,22 +0,0 @@ -#include - -Adafruit_I2CDevice i2c_dev = Adafruit_I2CDevice(0x10); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C address detection test"); - - if (!i2c_dev.begin()) { - Serial.print("Did not find device at 0x"); - Serial.println(i2c_dev.address(), HEX); - while (1) - ; - } - Serial.print("Device found on address 0x"); - Serial.println(i2c_dev.address(), HEX); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino deleted file mode 100644 index 4ac2626..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino +++ /dev/null @@ -1,45 +0,0 @@ -#include - -#define I2C_ADDRESS 0x60 -Adafruit_I2CDevice i2c_dev = Adafruit_I2CDevice(I2C_ADDRESS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C device read and write test"); - - if (!i2c_dev.begin()) { - Serial.print("Did not find device at 0x"); - Serial.println(i2c_dev.address(), HEX); - while (1) - ; - } - Serial.print("Device found on address 0x"); - Serial.println(i2c_dev.address(), HEX); - - uint8_t buffer[32]; - // Try to read 32 bytes - i2c_dev.read(buffer, 32); - Serial.print("Read: "); - for (uint8_t i = 0; i < 32; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); - - // read a register by writing first, then reading - buffer[0] = 0x0C; // we'll reuse the same buffer - i2c_dev.write_then_read(buffer, 1, buffer, 2, false); - Serial.print("Write then Read: "); - for (uint8_t i = 0; i < 2; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino deleted file mode 100644 index 2d44c83..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino +++ /dev/null @@ -1,43 +0,0 @@ -#include -#include - -#define I2C_ADDRESS 0x60 -Adafruit_I2CDevice i2c_dev = Adafruit_I2CDevice(I2C_ADDRESS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C device register test"); - - if (!i2c_dev.begin()) { - Serial.print("Did not find device at 0x"); - Serial.println(i2c_dev.address(), HEX); - while (1) - ; - } - Serial.print("Device found on address 0x"); - Serial.println(i2c_dev.address(), HEX); - - Adafruit_BusIO_Register id_reg = - Adafruit_BusIO_Register(&i2c_dev, 0x0C, 2, LSBFIRST); - uint16_t id; - id_reg.read(&id); - Serial.print("ID register = 0x"); - Serial.println(id, HEX); - - Adafruit_BusIO_Register thresh_reg = - Adafruit_BusIO_Register(&i2c_dev, 0x01, 2, LSBFIRST); - uint16_t thresh; - thresh_reg.read(&thresh); - Serial.print("Initial threshold register = 0x"); - Serial.println(thresh, HEX); - - thresh_reg.write(~thresh); - - Serial.print("Post threshold register = 0x"); - Serial.println(thresh_reg.read(), HEX); -} - -void loop() {} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino deleted file mode 100644 index be04606..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino +++ /dev/null @@ -1,40 +0,0 @@ -#include - -// Define which interface to use by setting the unused interface to NULL! - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice *spi_dev = NULL; // new Adafruit_SPIDevice(SPIDEVICE_CS); - -#define I2C_ADDRESS 0x5D -Adafruit_I2CDevice *i2c_dev = new Adafruit_I2CDevice(I2C_ADDRESS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C or SPI device register test"); - - if (spi_dev && !spi_dev->begin()) { - Serial.println("Could not initialize SPI device"); - } - - if (i2c_dev) { - if (i2c_dev->begin()) { - Serial.print("Device found on I2C address 0x"); - Serial.println(i2c_dev->address(), HEX); - } else { - Serial.print("Did not find I2C device at 0x"); - Serial.println(i2c_dev->address(), HEX); - } - } - - Adafruit_BusIO_Register id_reg = - Adafruit_BusIO_Register(i2c_dev, spi_dev, ADDRBIT8_HIGH_TOREAD, 0x0F); - uint8_t id = 0; - id_reg.read(&id); - Serial.print("ID register = 0x"); - Serial.println(id, HEX); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino deleted file mode 100644 index ebf14f9..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino +++ /dev/null @@ -1,35 +0,0 @@ -#include - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice spi_dev = - Adafruit_SPIDevice(SPIDEVICE_CS, 100000, SPI_BITORDER_MSBFIRST, SPI_MODE1); -// Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice(SPIDEVICE_CS, 13, 12, 11, -// 100000, SPI_BITORDER_MSBFIRST, SPI_MODE1); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI device mode test"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } -} - -void loop() { - Serial.println("\n\nTransfer test"); - for (uint16_t x = 0; x <= 0xFF; x++) { - uint8_t i = x; - Serial.print("0x"); - Serial.print(i, HEX); - spi_dev.read(&i, 1, i); - Serial.print("/"); - Serial.print(i, HEX); - Serial.print(", "); - delay(25); - } -} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino deleted file mode 100644 index 4b9ecf1..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino +++ /dev/null @@ -1,43 +0,0 @@ -#include - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice(SPIDEVICE_CS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI device read and write test"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } - - uint8_t buffer[32]; - - // Try to read 32 bytes - spi_dev.read(buffer, 32); - Serial.print("Read: "); - for (uint8_t i = 0; i < 32; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); - - // read a register by writing first, then reading - buffer[0] = 0x8F; // we'll reuse the same buffer - spi_dev.write_then_read(buffer, 1, buffer, 2, false); - Serial.print("Write then Read: "); - for (uint8_t i = 0; i < 2; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino deleted file mode 100644 index d11b440..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino +++ /dev/null @@ -1,268 +0,0 @@ -/*************************************************** - - This is an example for how to use Adafruit_BusIO_RegisterBits from - Adafruit_BusIO library. - - Designed specifically to work with the Adafruit RTD Sensor - ----> https://www.adafruit.com/products/3328 - uisng a MAX31865 RTD-to-Digital Converter - ----> https://datasheets.maximintegrated.com/en/ds/MAX31865.pdf - - This sensor uses SPI to communicate, 4 pins are required to - interface. - A fifth pin helps to detect when a new conversion is ready. - - Adafruit invests time and resources providing this open source code, - please support Adafruit and open-source hardware by purchasing - products from Adafruit! - - Example written (2020/3) by Andreas Hardtung/AnHard. - BSD license, all text above must be included in any redistribution - ****************************************************/ - -#include -#include - -#define MAX31865_SPI_SPEED (5000000) -#define MAX31865_SPI_BITORDER (SPI_BITORDER_MSBFIRST) -#define MAX31865_SPI_MODE (SPI_MODE1) - -#define MAX31865_SPI_CS (10) -#define MAX31865_READY_PIN (2) - -Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice( - MAX31865_SPI_CS, MAX31865_SPI_SPEED, MAX31865_SPI_BITORDER, - MAX31865_SPI_MODE, &SPI); // Hardware SPI -// Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice( MAX31865_SPI_CS, 13, 12, 11, -// MAX31865_SPI_SPEED, MAX31865_SPI_BITORDER, MAX31865_SPI_MODE); // Software -// SPI - -// MAX31865 chip related -// ********************************************************************************************* -Adafruit_BusIO_Register config_reg = - Adafruit_BusIO_Register(&spi_dev, 0x00, ADDRBIT8_HIGH_TOWRITE, 1, MSBFIRST); -Adafruit_BusIO_RegisterBits bias_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 7); -Adafruit_BusIO_RegisterBits auto_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 6); -Adafruit_BusIO_RegisterBits oneS_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 5); -Adafruit_BusIO_RegisterBits wire_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 4); -Adafruit_BusIO_RegisterBits faultT_bits = - Adafruit_BusIO_RegisterBits(&config_reg, 2, 2); -Adafruit_BusIO_RegisterBits faultR_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 1); -Adafruit_BusIO_RegisterBits fi50hz_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 0); - -Adafruit_BusIO_Register rRatio_reg = - Adafruit_BusIO_Register(&spi_dev, 0x01, ADDRBIT8_HIGH_TOWRITE, 2, MSBFIRST); -Adafruit_BusIO_RegisterBits rRatio_bits = - Adafruit_BusIO_RegisterBits(&rRatio_reg, 15, 1); -Adafruit_BusIO_RegisterBits fault_bit = - Adafruit_BusIO_RegisterBits(&rRatio_reg, 1, 0); - -Adafruit_BusIO_Register maxRratio_reg = - Adafruit_BusIO_Register(&spi_dev, 0x03, ADDRBIT8_HIGH_TOWRITE, 2, MSBFIRST); -Adafruit_BusIO_RegisterBits maxRratio_bits = - Adafruit_BusIO_RegisterBits(&maxRratio_reg, 15, 1); - -Adafruit_BusIO_Register minRratio_reg = - Adafruit_BusIO_Register(&spi_dev, 0x05, ADDRBIT8_HIGH_TOWRITE, 2, MSBFIRST); -Adafruit_BusIO_RegisterBits minRratio_bits = - Adafruit_BusIO_RegisterBits(&minRratio_reg, 15, 1); - -Adafruit_BusIO_Register fault_reg = - Adafruit_BusIO_Register(&spi_dev, 0x07, ADDRBIT8_HIGH_TOWRITE, 1, MSBFIRST); -Adafruit_BusIO_RegisterBits range_high_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 7); -Adafruit_BusIO_RegisterBits range_low_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 6); -Adafruit_BusIO_RegisterBits refin_high_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 5); -Adafruit_BusIO_RegisterBits refin_low_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 4); -Adafruit_BusIO_RegisterBits rtdin_low_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 3); -Adafruit_BusIO_RegisterBits voltage_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 2); - -// Print the details of the configuration register. -void printConfig(void) { - Serial.print("BIAS: "); - if (bias_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", AUTO: "); - if (auto_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", ONES: "); - if (oneS_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", WIRE: "); - if (wire_bit.read()) - Serial.print("3"); - else - Serial.print("2/4"); - Serial.print(", FAULTCLEAR: "); - if (faultR_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", "); - if (fi50hz_bit.read()) - Serial.print("50HZ"); - else - Serial.print("60HZ"); - Serial.println(); -} - -// Check and print faults. Then clear them. -void checkFaults(void) { - if (fault_bit.read()) { - Serial.print("MAX: "); - Serial.println(maxRratio_bits.read()); - Serial.print("VAL: "); - Serial.println(rRatio_bits.read()); - Serial.print("MIN: "); - Serial.println(minRratio_bits.read()); - - if (range_high_fault_bit.read()) - Serial.println("Range high fault"); - if (range_low_fault_bit.read()) - Serial.println("Range low fault"); - if (refin_high_fault_bit.read()) - Serial.println("REFIN high fault"); - if (refin_low_fault_bit.read()) - Serial.println("REFIN low fault"); - if (rtdin_low_fault_bit.read()) - Serial.println("RTDIN low fault"); - if (voltage_fault_bit.read()) - Serial.println("Voltage fault"); - - faultR_bit.write(1); // clear fault - } -} - -void setup() { -#if (MAX31865_1_READY_PIN != -1) - pinMode(MAX31865_READY_PIN, INPUT_PULLUP); -#endif - - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI Adafruit_BusIO_RegisterBits test on MAX31865"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } - - // Set up for automode 50Hz. We don't care about selfheating. We want the - // highest possible sampling rate. - auto_bit.write(0); // Don't switch filtermode while auto_mode is on. - fi50hz_bit.write(1); // Set filter to 50Hz mode. - faultR_bit.write(1); // Clear faults. - bias_bit.write(1); // In automode we want to have the bias current always on. - delay(5); // Wait until bias current settles down. - // 10.5 time constants of the input RC network is required. - // 10ms worst case for 10kω reference resistor and a 0.1µF capacitor - // across the RTD inputs. Adafruit Module has 0.1µF and only - // 430/4300ω So here 0.43/4.3ms - auto_bit.write( - 1); // Now we can set automode. Automatically starting first conversion. - -// Test the READY_PIN -#if (defined(MAX31865_READY_PIN) && (MAX31865_READY_PIN != -1)) - int i = 0; - while (digitalRead(MAX31865_READY_PIN) && i++ <= 100) { - delay(1); - } - if (i >= 100) { - Serial.print("ERROR: Max31865 Pin detection does not work. PIN:"); - Serial.println(MAX31865_READY_PIN); - } -#else - delay(100); -#endif - - // Set ratio range. - // Setting the temperatures would need some more calculation - not related to - // Adafruit_BusIO_RegisterBits. - uint16_t ratio = rRatio_bits.read(); - maxRratio_bits.write((ratio < 0x8fffu - 1000u) ? ratio + 1000u : 0x8fffu); - minRratio_bits.write((ratio > 1000u) ? ratio - 1000u : 0u); - - printConfig(); - checkFaults(); -} - -void loop() { -#if (defined(MAX31865_READY_PIN) && (MAX31865_1_READY_PIN != -1)) - // Is conversion ready? - if (!digitalRead(MAX31865_READY_PIN)) -#else - // Warant conversion is ready. - delay(21); // 21ms for 50Hz-mode. 19ms in 60Hz-mode. -#endif - { - // Read ratio, calculate temperature, scale, filter and print. - Serial.println(rRatio2C(rRatio_bits.read()) * 100.0f, - 0); // Temperature scaled by 100 - // Check, print, clear faults. - checkFaults(); - } - - // Do something else. - // delay(15000); -} - -// Module/Sensor related. Here Adafruit PT100 module with a 2_Wire PT100 Class C -// ***************************** -float rRatio2C(uint16_t ratio) { - // A simple linear conversion. - const float R0 = 100.0f; - const float Rref = 430.0f; - const float alphaPT = 0.003850f; - const float ADCmax = (1u << 15) - 1.0f; - const float rscale = Rref / ADCmax; - // Measured temperature in boiling water 101.08°C with factor a = 1 and b = 0. - // Rref and MAX at about 22±2°C. Measured temperature in ice/water bath 0.76°C - // with factor a = 1 and b = 0. Rref and MAX at about 22±2°C. - // const float a = 1.0f / (alphaPT * R0); - const float a = (100.0f / 101.08f) / (alphaPT * R0); - // const float b = 0.0f; // 101.08 - const float b = -0.76f; // 100.32 > 101.08 - - return filterRing(((ratio * rscale) - R0) * a + b); -} - -// General purpose -// ********************************************************************************************* -#define RINGLENGTH 250 -float filterRing(float newVal) { - static float ring[RINGLENGTH] = {0.0}; - static uint8_t ringIndex = 0; - static bool ringFull = false; - - if (ringIndex == RINGLENGTH) { - ringFull = true; - ringIndex = 0; - } - ring[ringIndex] = newVal; - uint8_t loopEnd = (ringFull) ? RINGLENGTH : ringIndex + 1; - float ringSum = 0.0f; - for (uint8_t i = 0; i < loopEnd; i++) - ringSum += ring[i]; - ringIndex++; - return ringSum / loopEnd; -} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_registers/spi_registers.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_registers/spi_registers.ino deleted file mode 100644 index af6069b..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_registers/spi_registers.ino +++ /dev/null @@ -1,40 +0,0 @@ -#include -#include - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice(SPIDEVICE_CS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI device register test"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } - - Adafruit_BusIO_Register id_reg = - Adafruit_BusIO_Register(&spi_dev, 0x0F, ADDRBIT8_HIGH_TOREAD); - uint8_t id = 0; - id_reg.read(&id); - Serial.print("ID register = 0x"); - Serial.println(id, HEX); - - Adafruit_BusIO_Register thresh_reg = Adafruit_BusIO_Register( - &spi_dev, 0x0C, ADDRBIT8_HIGH_TOREAD, 2, LSBFIRST); - uint16_t thresh = 0; - thresh_reg.read(&thresh); - Serial.print("Initial threshold register = 0x"); - Serial.println(thresh, HEX); - - thresh_reg.write(~thresh); - - Serial.print("Post threshold register = 0x"); - Serial.println(thresh_reg.read(), HEX); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/library.properties b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/library.properties deleted file mode 100644 index 1615468..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit BusIO/library.properties +++ /dev/null @@ -1,9 +0,0 @@ -name=Adafruit BusIO -version=1.17.4 -author=Adafruit -maintainer=Adafruit -sentence=This is a library for abstracting away UART, I2C and SPI interfacing -paragraph=This is a library for abstracting away UART, I2C and SPI interfacing -category=Signal Input/Output -url=https://github.com/adafruit/Adafruit_BusIO -architectures=* diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.clang-format b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.clang-format deleted file mode 100644 index e1b53a0..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.clang-format +++ /dev/null @@ -1,239 +0,0 @@ -Language: Cpp -# BasedOnStyle: LLVM -AccessModifierOffset: -2 -AlignAfterOpenBracket: Align -AlignArrayOfStructures: None -AlignConsecutiveAssignments: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: true -AlignConsecutiveBitFields: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: false -AlignConsecutiveDeclarations: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: false -AlignConsecutiveMacros: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: false -AlignConsecutiveShortCaseStatements: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCaseColons: false -AlignEscapedNewlines: Right -AlignOperands: Align -AlignTrailingComments: - Kind: Always - OverEmptyLines: 0 -AllowAllArgumentsOnNextLine: true -AllowAllParametersOfDeclarationOnNextLine: true -AllowBreakBeforeNoexceptSpecifier: Never -AllowShortBlocksOnASingleLine: Never -AllowShortCaseLabelsOnASingleLine: false -AllowShortCompoundRequirementOnASingleLine: true -AllowShortEnumsOnASingleLine: true -AllowShortFunctionsOnASingleLine: All -AllowShortIfStatementsOnASingleLine: Never -AllowShortLambdasOnASingleLine: All -AllowShortLoopsOnASingleLine: false -AlwaysBreakAfterDefinitionReturnType: None -AlwaysBreakAfterReturnType: None -AlwaysBreakBeforeMultilineStrings: false -AlwaysBreakTemplateDeclarations: MultiLine -AttributeMacros: - - __capability -BinPackArguments: true -BinPackParameters: true -BitFieldColonSpacing: Both -BraceWrapping: - AfterCaseLabel: false - AfterClass: false - AfterControlStatement: Never - AfterEnum: false - AfterExternBlock: false - AfterFunction: false - AfterNamespace: false - AfterObjCDeclaration: false - AfterStruct: false - AfterUnion: false - BeforeCatch: false - BeforeElse: false - BeforeLambdaBody: false - BeforeWhile: false - IndentBraces: false - SplitEmptyFunction: true - SplitEmptyRecord: true - SplitEmptyNamespace: true -BreakAdjacentStringLiterals: true -BreakAfterAttributes: Leave -BreakAfterJavaFieldAnnotations: false -BreakArrays: true -BreakBeforeBinaryOperators: None -BreakBeforeConceptDeclarations: Always -BreakBeforeBraces: Attach -BreakBeforeInlineASMColon: OnlyMultiline -BreakBeforeTernaryOperators: true -BreakConstructorInitializers: BeforeColon -BreakInheritanceList: BeforeColon -BreakStringLiterals: true -ColumnLimit: 80 -CommentPragmas: '^ IWYU pragma:' -CompactNamespaces: false -ConstructorInitializerIndentWidth: 4 -ContinuationIndentWidth: 4 -Cpp11BracedListStyle: true -DerivePointerAlignment: false -DisableFormat: false -EmptyLineAfterAccessModifier: Never -EmptyLineBeforeAccessModifier: LogicalBlock -ExperimentalAutoDetectBinPacking: false -FixNamespaceComments: true -ForEachMacros: - - foreach - - Q_FOREACH - - BOOST_FOREACH -IfMacros: - - KJ_IF_MAYBE -IncludeBlocks: Preserve -IncludeCategories: - - Regex: '^"(llvm|llvm-c|clang|clang-c)/' - Priority: 2 - SortPriority: 0 - CaseSensitive: false - - Regex: '^(<|"(gtest|gmock|isl|json)/)' - Priority: 3 - SortPriority: 0 - CaseSensitive: false - - Regex: '.*' - Priority: 1 - SortPriority: 0 - CaseSensitive: false -IncludeIsMainRegex: '(Test)?$' -IncludeIsMainSourceRegex: '' -IndentAccessModifiers: false -IndentCaseBlocks: false -IndentCaseLabels: false -IndentExternBlock: AfterExternBlock -IndentGotoLabels: true -IndentPPDirectives: None -IndentRequiresClause: true -IndentWidth: 2 -IndentWrappedFunctionNames: false -InsertBraces: false -InsertNewlineAtEOF: false -InsertTrailingCommas: None -IntegerLiteralSeparator: - Binary: 0 - BinaryMinDigits: 0 - Decimal: 0 - DecimalMinDigits: 0 - Hex: 0 - HexMinDigits: 0 -JavaScriptQuotes: Leave -JavaScriptWrapImports: true -KeepEmptyLinesAtTheStartOfBlocks: true -KeepEmptyLinesAtEOF: false -LambdaBodyIndentation: Signature -LineEnding: DeriveLF -MacroBlockBegin: '' -MacroBlockEnd: '' -MaxEmptyLinesToKeep: 1 -NamespaceIndentation: None -ObjCBinPackProtocolList: Auto -ObjCBlockIndentWidth: 2 -ObjCBreakBeforeNestedBlockParam: true -ObjCSpaceAfterProperty: false -ObjCSpaceBeforeProtocolList: true -PackConstructorInitializers: BinPack -PenaltyBreakAssignment: 2 -PenaltyBreakBeforeFirstCallParameter: 19 -PenaltyBreakComment: 300 -PenaltyBreakFirstLessLess: 120 -PenaltyBreakOpenParenthesis: 0 -PenaltyBreakScopeResolution: 500 -PenaltyBreakString: 1000 -PenaltyBreakTemplateDeclaration: 10 -PenaltyExcessCharacter: 1000000 -PenaltyIndentedWhitespace: 0 -PenaltyReturnTypeOnItsOwnLine: 60 -PointerAlignment: Right -PPIndentWidth: -1 -QualifierAlignment: Leave -ReferenceAlignment: Pointer -ReflowComments: true -RemoveBracesLLVM: false -RemoveParentheses: Leave -RemoveSemicolon: false -RequiresClausePosition: OwnLine -RequiresExpressionIndentation: OuterScope -SeparateDefinitionBlocks: Leave -ShortNamespaceLines: 1 -SkipMacroDefinitionBody: false -SortIncludes: CaseSensitive -SortJavaStaticImport: Before -SortUsingDeclarations: LexicographicNumeric -SpaceAfterCStyleCast: false -SpaceAfterLogicalNot: false -SpaceAfterTemplateKeyword: true -SpaceAroundPointerQualifiers: Default -SpaceBeforeAssignmentOperators: true -SpaceBeforeCaseColon: false -SpaceBeforeCpp11BracedList: false -SpaceBeforeCtorInitializerColon: true -SpaceBeforeInheritanceColon: true -SpaceBeforeJsonColon: false -SpaceBeforeParens: ControlStatements -SpaceBeforeParensOptions: - AfterControlStatements: true - AfterForeachMacros: true - AfterFunctionDefinitionName: false - AfterFunctionDeclarationName: false - AfterIfMacros: true - AfterOverloadedOperator: false - AfterPlacementOperator: true - AfterRequiresInClause: false - AfterRequiresInExpression: false - BeforeNonEmptyParentheses: false -SpaceBeforeRangeBasedForLoopColon: true -SpaceBeforeSquareBrackets: false -SpaceInEmptyBlock: false -SpacesBeforeTrailingComments: 1 -SpacesInAngles: Never -SpacesInContainerLiterals: true -SpacesInLineCommentPrefix: - Minimum: 1 - Maximum: -1 -SpacesInParens: Never -SpacesInParensOptions: - InCStyleCasts: false - InConditionalStatements: false - InEmptyParentheses: false - Other: false -SpacesInSquareBrackets: false -Standard: Latest -StatementAttributeLikeMacros: - - Q_EMIT -StatementMacros: - - Q_UNUSED - - QT_REQUIRE_VERSION -TabWidth: 8 -UseTab: Never -VerilogBreakBetweenInstancePorts: true -WhitespaceSensitiveMacros: - - BOOST_PP_STRINGIZE - - CF_SWIFT_NAME - - NS_SWIFT_NAME - - PP_STRINGIZE - - STRINGIZE diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index f0e2614..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,46 +0,0 @@ -Thank you for opening an issue on an Adafruit Arduino library repository. To -improve the speed of resolution please review the following guidelines and -common troubleshooting steps below before creating the issue: - -- **Do not use GitHub issues for troubleshooting projects and issues.** Instead use - the forums at http://forums.adafruit.com to ask questions and troubleshoot why - something isn't working as expected. In many cases the problem is a common issue - that you will more quickly receive help from the forum community. GitHub issues - are meant for known defects in the code. If you don't know if there is a defect - in the code then start with troubleshooting on the forum first. - -- **If following a tutorial or guide be sure you didn't miss a step.** Carefully - check all of the steps and commands to run have been followed. Consult the - forum if you're unsure or have questions about steps in a guide/tutorial. - -- **For Arduino projects check these very common issues to ensure they don't apply**: - - - For uploading sketches or communicating with the board make sure you're using - a **USB data cable** and **not** a **USB charge-only cable**. It is sometimes - very hard to tell the difference between a data and charge cable! Try using the - cable with other devices or swapping to another cable to confirm it is not - the problem. - - - **Be sure you are supplying adequate power to the board.** Check the specs of - your board and plug in an external power supply. In many cases just - plugging a board into your computer is not enough to power it and other - peripherals. - - - **Double check all soldering joints and connections.** Flakey connections - cause many mysterious problems. See the [guide to excellent soldering](https://learn.adafruit.com/adafruit-guide-excellent-soldering/tools) for examples of good solder joints. - - - **Ensure you are using an official Arduino or Adafruit board.** We can't - guarantee a clone board will have the same functionality and work as expected - with this code and don't support them. - -If you're sure this issue is a defect in the code and checked the steps above -please fill in the following fields to provide enough troubleshooting information. -You may delete the guideline and text above to just leave the following details: - -- Arduino board: **INSERT ARDUINO BOARD NAME/TYPE HERE** - -- Arduino IDE version (found in Arduino -> About Arduino menu): **INSERT ARDUINO - VERSION HERE** - -- List the steps to reproduce the problem below (if possible attach a sketch or - copy the sketch code in too): **LIST REPRO STEPS BELOW** diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 7b641eb..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,26 +0,0 @@ -Thank you for creating a pull request to contribute to Adafruit's GitHub code! -Before you open the request please review the following guidelines and tips to -help it be more easily integrated: - -- **Describe the scope of your change--i.e. what the change does and what parts - of the code were modified.** This will help us understand any risks of integrating - the code. - -- **Describe any known limitations with your change.** For example if the change - doesn't apply to a supported platform of the library please mention it. - -- **Please run any tests or examples that can exercise your modified code.** We - strive to not break users of the code and running tests/examples helps with this - process. - -Thank you again for contributing! We will try to test and integrate the change -as soon as we can, but be aware we have many GitHub repositories to manage and -can't immediately respond to every request. There is no need to bump or check in -on a pull request (it will clutter the discussion of the request). - -Also don't be worried if the request is closed or not integrated--sometimes the -priorities of Adafruit's GitHub code (education, ease of use) might not match the -priorities of the pull request. Don't fret, the open source community thrives on -forks and GitHub makes it easy to keep your changes in a forked repo. - -After reviewing the guidelines above you can delete this text from the pull request. diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/workflows/githubci.yml b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/workflows/githubci.yml deleted file mode 100644 index a04a162..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.github/workflows/githubci.yml +++ /dev/null @@ -1,36 +0,0 @@ -name: Arduino Library CI - -on: [pull_request, push, repository_dispatch] - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/setup-python@v4 - with: - python-version: '3.x' - - uses: actions/checkout@v3 - - uses: actions/checkout@v3 - with: - repository: adafruit/ci-arduino - path: ci - - - name: pre-install - run: bash ci/actions_install.sh - - - name: extra libraries - run: | - git clone --quiet https://github.com/adafruit/Adafruit_ILI9341.git /home/runner/Arduino/libraries/Adafruit_ILI9341 - - - name: test platforms - run: python3 ci/build_platform.py main_platforms - - - name: clang - run: python3 ci/run-clang-format.py -e "ci/*" -e "bin/*" -r . - - - name: doxygen - env: - GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }} - PRETTYNAME : "Adafruit GFX Library" - run: bash ci/doxy_gen_and_deploy.sh diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.gitignore b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.gitignore deleted file mode 100644 index 469bb73..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -default.vim -fontconvert/fontconvert -# Our handy .gitignore for automation ease -Doxyfile* -doxygen_sqlite3.db -html \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.piopm b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.piopm deleted file mode 100644 index 9ed8464..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/.piopm +++ /dev/null @@ -1 +0,0 @@ -{"type": "library", "name": "Adafruit GFX Library", "version": "1.12.6", "spec": {"owner": "adafruit", "id": 13, "name": "Adafruit GFX Library", "requirements": null, "uri": null}} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.cpp b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.cpp deleted file mode 100644 index ae26bf1..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.cpp +++ /dev/null @@ -1,2952 +0,0 @@ -/* -This is the core graphics library for all our displays, providing a common -set of graphics primitives (points, lines, circles, etc.). It needs to be -paired with a hardware-specific library for each display device we carry -(to handle the lower-level functions). - -Adafruit invests time and resources providing this open source code, please -support Adafruit & open-source hardware by purchasing products from Adafruit! - -Copyright (c) 2013 Adafruit Industries. 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 "Adafruit_GFX.h" -#include "glcdfont.c" -#ifdef __AVR__ -#include -#elif defined(ESP8266) || defined(ESP32) -#include -#endif - -// Many (but maybe not all) non-AVR board installs define macros -// for compatibility with existing PROGMEM-reading AVR code. -// Do our own checks and defines here for good measure... - -#ifndef pgm_read_byte -#define pgm_read_byte(addr) (*(const unsigned char *)(addr)) -#endif -#ifndef pgm_read_word -#define pgm_read_word(addr) (*(const unsigned short *)(addr)) -#endif -#ifndef pgm_read_dword -#define pgm_read_dword(addr) (*(const unsigned long *)(addr)) -#endif - -// Pointers are a peculiar case...typically 16-bit on AVR boards, -// 32 bits elsewhere. Try to accommodate both... - -#if !defined(__INT_MAX__) || (__INT_MAX__ > 0xFFFF) -#define pgm_read_pointer(addr) ((void *)pgm_read_dword(addr)) -#else -#define pgm_read_pointer(addr) ((void *)pgm_read_word(addr)) -#endif - -inline GFXglyph *pgm_read_glyph_ptr(const GFXfont *gfxFont, uint8_t c) { -#ifdef __AVR__ - return &(((GFXglyph *)pgm_read_pointer(&gfxFont->glyph))[c]); -#else - // expression in __AVR__ section may generate "dereferencing type-punned - // pointer will break strict-aliasing rules" warning In fact, on other - // platforms (such as STM32) there is no need to do this pointer magic as - // program memory may be read in a usual way So expression may be simplified - return gfxFont->glyph + c; -#endif //__AVR__ -} - -inline uint8_t *pgm_read_bitmap_ptr(const GFXfont *gfxFont) { -#ifdef __AVR__ - return (uint8_t *)pgm_read_pointer(&gfxFont->bitmap); -#else - // expression in __AVR__ section generates "dereferencing type-punned pointer - // will break strict-aliasing rules" warning In fact, on other platforms (such - // as STM32) there is no need to do this pointer magic as program memory may - // be read in a usual way So expression may be simplified - return gfxFont->bitmap; -#endif //__AVR__ -} - -#ifndef min -#define min(a, b) (((a) < (b)) ? (a) : (b)) -#endif - -#ifndef _swap_int16_t -#define _swap_int16_t(a, b) \ - { \ - int16_t t = a; \ - a = b; \ - b = t; \ - } -#endif - -/**************************************************************************/ -/*! - @brief Instatiate a GFX context for graphics! Can only be done by a - superclass - @param w Display width, in pixels - @param h Display height, in pixels -*/ -/**************************************************************************/ -Adafruit_GFX::Adafruit_GFX(int16_t w, int16_t h) : WIDTH(w), HEIGHT(h) { - _width = WIDTH; - _height = HEIGHT; - rotation = 0; - cursor_y = cursor_x = 0; - textsize_x = textsize_y = 1; - textcolor = textbgcolor = 0xFFFF; - wrap = true; - _cp437 = false; - gfxFont = NULL; -} - -/**************************************************************************/ -/*! - @brief Write a line. Bresenham's algorithm - thx wikpedia - @param x0 Start point x coordinate - @param y0 Start point y coordinate - @param x1 End point x coordinate - @param y1 End point y coordinate - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - int16_t steep = abs(y1 - y0) > abs(x1 - x0); - if (steep) { - _swap_int16_t(x0, y0); - _swap_int16_t(x1, y1); - } - - if (x0 > x1) { - _swap_int16_t(x0, x1); - _swap_int16_t(y0, y1); - } - - int16_t dx, dy; - dx = x1 - x0; - dy = abs(y1 - y0); - - int16_t err = dx / 2; - int16_t ystep; - - if (y0 < y1) { - ystep = 1; - } else { - ystep = -1; - } - - for (; x0 <= x1; x0++) { - if (steep) { - writePixel(y0, x0, color); - } else { - writePixel(x0, y0, color); - } - err -= dy; - if (err < 0) { - y0 += ystep; - err += dx; - } - } -} - -/**************************************************************************/ -/*! - @brief Start a display-writing routine, overwrite in subclasses. -*/ -/**************************************************************************/ -void Adafruit_GFX::startWrite() {} - -/**************************************************************************/ -/*! - @brief Write a pixel, overwrite in subclasses if startWrite is defined! - @param x x coordinate - @param y y coordinate - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writePixel(int16_t x, int16_t y, uint16_t color) { - drawPixel(x, y, color); -} - -/**************************************************************************/ -/*! - @brief Write a perfectly vertical line, overwrite in subclasses if - startWrite is defined! - @param x Top-most x coordinate - @param y Top-most y coordinate - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // Overwrite in subclasses if startWrite is defined! - // Can be just writeLine(x, y, x, y+h-1, color); - // or writeFillRect(x, y, 1, h, color); - drawFastVLine(x, y, h, color); -} - -/**************************************************************************/ -/*! - @brief Write a perfectly horizontal line, overwrite in subclasses if - startWrite is defined! - @param x Left-most x coordinate - @param y Left-most y coordinate - @param w Width in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // Overwrite in subclasses if startWrite is defined! - // Example: writeLine(x, y, x+w-1, y, color); - // or writeFillRect(x, y, w, 1, color); - drawFastHLine(x, y, w, color); -} - -/**************************************************************************/ -/*! - @brief Write a rectangle completely with one color, overwrite in - subclasses if startWrite is defined! - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - // Overwrite in subclasses if desired! - fillRect(x, y, w, h, color); -} - -/**************************************************************************/ -/*! - @brief End a display-writing routine, overwrite in subclasses if - startWrite is defined! -*/ -/**************************************************************************/ -void Adafruit_GFX::endWrite() {} - -/**************************************************************************/ -/*! - @brief Draw a perfectly vertical line (this is often optimized in a - subclass!) - @param x Top-most x coordinate - @param y Top-most y coordinate - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - startWrite(); - writeLine(x, y, x, y + h - 1, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a perfectly horizontal line (this is often optimized in a - subclass!) - @param x Left-most x coordinate - @param y Left-most y coordinate - @param w Width in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - startWrite(); - writeLine(x, y, x + w - 1, y, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Fill a rectangle completely with one color. Update in subclasses if - desired! - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - startWrite(); - for (int16_t i = x; i < x + w; i++) { - writeFastVLine(i, y, h, color); - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Fill the screen completely with one color. Update in subclasses if - desired! - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillScreen(uint16_t color) { - fillRect(0, 0, _width, _height, color); -} - -/**************************************************************************/ -/*! - @brief Draw a line - @param x0 Start point x coordinate - @param y0 Start point y coordinate - @param x1 End point x coordinate - @param y1 End point y coordinate - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color) { - // Update in subclasses if desired! - if (x0 == x1) { - if (y0 > y1) - _swap_int16_t(y0, y1); - drawFastVLine(x0, y0, y1 - y0 + 1, color); - } else if (y0 == y1) { - if (x0 > x1) - _swap_int16_t(x0, x1); - drawFastHLine(x0, y0, x1 - x0 + 1, color); - } else { - startWrite(); - writeLine(x0, y0, x1, y1, color); - endWrite(); - } -} - -/**************************************************************************/ -/*! - @brief Draw an ellipse outline - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param rw Horizontal radius of ellipse - @param rh Vertical radius of ellipse - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - // Bresenham's ellipse algorithm - int16_t x = 0, y = rh; - int32_t rw2 = rw * rw, rh2 = rh * rh; - int32_t twoRw2 = 2 * rw2, twoRh2 = 2 * rh2; - - int32_t decision = rh2 - (rw2 * rh) + (rw2 / 4); - - startWrite(); - - // region 1 - while ((twoRh2 * x) < (twoRw2 * y)) { - writePixel(x0 + x, y0 + y, color); - writePixel(x0 - x, y0 + y, color); - writePixel(x0 + x, y0 - y, color); - writePixel(x0 - x, y0 - y, color); - x++; - if (decision < 0) { - decision += rh2 + (twoRh2 * x); - } else { - decision += rh2 + (twoRh2 * x) - (twoRw2 * y); - y--; - } - } - - // region 2 - decision = ((rh2 * (2 * x + 1) * (2 * x + 1)) >> 2) + - (rw2 * (y - 1) * (y - 1)) - (rw2 * rh2); - while (y >= 0) { - writePixel(x0 + x, y0 + y, color); - writePixel(x0 - x, y0 + y, color); - writePixel(x0 + x, y0 - y, color); - writePixel(x0 - x, y0 - y, color); - y--; - if (decision > 0) { - decision += rw2 - (twoRw2 * y); - } else { - decision += rw2 + (twoRh2 * x) - (twoRw2 * y); - x++; - } - } - - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw an ellipse with filled colour - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param rw Horizontal radius of ellipse - @param rh Vertical radius of ellipse - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - // Bresenham's ellipse algorithm - int16_t x = 0, y = rh; - int32_t rw2 = rw * rw, rh2 = rh * rh; - int32_t twoRw2 = 2 * rw2, twoRh2 = 2 * rh2; - - int32_t decision = rh2 - (rw2 * rh) + (rw2 / 4); - - startWrite(); - - // region 1 - while ((twoRh2 * x) < (twoRw2 * y)) { - x++; - if (decision < 0) { - decision += rh2 + (twoRh2 * x); - } else { - decision += rh2 + (twoRh2 * x) - (twoRw2 * y); - drawFastHLine(x0 - (x - 1), y0 + y, 2 * (x - 1) + 1, color); - drawFastHLine(x0 - (x - 1), y0 - y, 2 * (x - 1) + 1, color); - y--; - } - } - - // region 2 - decision = ((rh2 * (2 * x + 1) * (2 * x + 1)) >> 2) + - (rw2 * (y - 1) * (y - 1)) - (rw2 * rh2); - while (y >= 0) { - drawFastHLine(x0 - x, y0 + y, 2 * x + 1, color); - drawFastHLine(x0 - x, y0 - y, 2 * x + 1, color); - - y--; - if (decision > 0) { - decision += rw2 - (twoRw2 * y); - } else { - decision += rw2 + (twoRh2 * x) - (twoRw2 * y); - x++; - } - } - - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a circle outline - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawCircle(int16_t x0, int16_t y0, int16_t r, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - int16_t f = 1 - r; - int16_t ddF_x = 1; - int16_t ddF_y = -2 * r; - int16_t x = 0; - int16_t y = r; - - startWrite(); - writePixel(x0, y0 + r, color); - writePixel(x0, y0 - r, color); - writePixel(x0 + r, y0, color); - writePixel(x0 - r, y0, color); - - while (x < y) { - if (f >= 0) { - y--; - ddF_y += 2; - f += ddF_y; - } - x++; - ddF_x += 2; - f += ddF_x; - - writePixel(x0 + x, y0 + y, color); - writePixel(x0 - x, y0 + y, color); - writePixel(x0 + x, y0 - y, color); - writePixel(x0 - x, y0 - y, color); - writePixel(x0 + y, y0 + x, color); - writePixel(x0 - y, y0 + x, color); - writePixel(x0 + y, y0 - x, color); - writePixel(x0 - y, y0 - x, color); - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Quarter-circle drawer, used to do circles and roundrects - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param cornername Mask bit #1, #2, #4, and #8 to indicate which quarters - of the circle we're doing - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawCircleHelper(int16_t x0, int16_t y0, int16_t r, - uint8_t cornername, uint16_t color) { - int16_t f = 1 - r; - int16_t ddF_x = 1; - int16_t ddF_y = -2 * r; - int16_t x = 0; - int16_t y = r; - - while (x < y) { - if (f >= 0) { - y--; - ddF_y += 2; - f += ddF_y; - } - x++; - ddF_x += 2; - f += ddF_x; - if (cornername & 0x4) { - writePixel(x0 + x, y0 + y, color); - writePixel(x0 + y, y0 + x, color); - } - if (cornername & 0x2) { - writePixel(x0 + x, y0 - y, color); - writePixel(x0 + y, y0 - x, color); - } - if (cornername & 0x8) { - writePixel(x0 - y, y0 + x, color); - writePixel(x0 - x, y0 + y, color); - } - if (cornername & 0x1) { - writePixel(x0 - y, y0 - x, color); - writePixel(x0 - x, y0 - y, color); - } - } -} - -/**************************************************************************/ -/*! - @brief Draw a circle with filled color - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillCircle(int16_t x0, int16_t y0, int16_t r, - uint16_t color) { - startWrite(); - writeFastVLine(x0, y0 - r, 2 * r + 1, color); - fillCircleHelper(x0, y0, r, 3, 0, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Half-circle drawer with fill, used for circles and roundrects - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param corners Mask bits indicating which sides of the circle we are - doing, left (1) and/or right (2) - @param delta Offset from center-point, used for round-rects - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillCircleHelper(int16_t x0, int16_t y0, int16_t r, - uint8_t corners, int16_t delta, - uint16_t color) { - - int16_t f = 1 - r; - int16_t ddF_x = 1; - int16_t ddF_y = -2 * r; - int16_t x = 0; - int16_t y = r; - int16_t px = x; - int16_t py = y; - - delta++; // Avoid some +1's in the loop - - while (x < y) { - if (f >= 0) { - y--; - ddF_y += 2; - f += ddF_y; - } - x++; - ddF_x += 2; - f += ddF_x; - // These checks avoid double-drawing certain lines, important - // for the SSD1306 library which has an INVERT drawing mode. - if (x < (y + 1)) { - if (corners & 1) - writeFastVLine(x0 + x, y0 - y, 2 * y + delta, color); - if (corners & 2) - writeFastVLine(x0 - x, y0 - y, 2 * y + delta, color); - } - if (y != py) { - if (corners & 1) - writeFastVLine(x0 + py, y0 - px, 2 * px + delta, color); - if (corners & 2) - writeFastVLine(x0 - py, y0 - px, 2 * px + delta, color); - py = y; - } - px = x; - } -} - -/**************************************************************************/ -/*! - @brief Draw a rectangle with no fill color - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - startWrite(); - writeFastHLine(x, y, w, color); - writeFastHLine(x, y + h - 1, w, color); - writeFastVLine(x, y, h, color); - writeFastVLine(x + w - 1, y, h, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a rounded rectangle with no fill color - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param r Radius of corner rounding - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRoundRect(int16_t x, int16_t y, int16_t w, int16_t h, - int16_t r, uint16_t color) { - int16_t max_radius = ((w < h) ? w : h) / 2; // 1/2 minor axis - if (r > max_radius) - r = max_radius; - // smarter version - startWrite(); - writeFastHLine(x + r, y, w - 2 * r, color); // Top - writeFastHLine(x + r, y + h - 1, w - 2 * r, color); // Bottom - writeFastVLine(x, y + r, h - 2 * r, color); // Left - writeFastVLine(x + w - 1, y + r, h - 2 * r, color); // Right - // draw four corners - drawCircleHelper(x + r, y + r, r, 1, color); - drawCircleHelper(x + w - r - 1, y + r, r, 2, color); - drawCircleHelper(x + w - r - 1, y + h - r - 1, r, 4, color); - drawCircleHelper(x + r, y + h - r - 1, r, 8, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a rounded rectangle with fill color - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param r Radius of corner rounding - @param color 16-bit 5-6-5 Color to draw/fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillRoundRect(int16_t x, int16_t y, int16_t w, int16_t h, - int16_t r, uint16_t color) { - int16_t max_radius = ((w < h) ? w : h) / 2; // 1/2 minor axis - if (r > max_radius) - r = max_radius; - // smarter version - startWrite(); - writeFillRect(x + r, y, w - 2 * r, h, color); - // draw four corners - fillCircleHelper(x + w - r - 1, y + r, r, 1, h - 2 * r - 1, color); - fillCircleHelper(x + r, y + r, r, 2, h - 2 * r - 1, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a rotated rectangle - @param cenX x coordinate of center of rectangle. - For even width rectangles, this point - represents the pixel to the left of - true center. - @param cenY y coordinate of center of rectangle. - For even height rectangles, this point - represents the pixel above - true center. - @param w width of rectangle - @param h height of rectangle - @param angleDeg angle of rotation of rectangle - @param color 16-bit 5-6-5 Color to fill/draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRotatedRect(int16_t cenX, int16_t cenY, int16_t w, - int16_t h, int16_t angleDeg, - uint16_t color) { - - if (w < 1 || h < 1) - return; // We don't draw zero dimensioned objects - - int16_t W = w - 1; - int16_t H = h - 1; - - int16_t halfW = (W / 2); // Midpoint should always be integer - int16_t halfH = (H / 2); // Midpoint should always be integer - - int16_t x0 = W - halfW; // bottom-right - int16_t y0 = H - halfH; // bottom-right - int16_t x1 = -halfW; // bottom-left - int16_t y1 = H - halfH; // bottom-left - int16_t x2 = -halfW; // top-left - int16_t y2 = -halfH; // top-left - int16_t x3 = W - halfW; // top-right - int16_t y3 = -halfH; // top-right - - rotatePoint(x0, y0, angleDeg); - rotatePoint(x1, y1, angleDeg); - rotatePoint(x2, y2, angleDeg); - rotatePoint(x3, y3, angleDeg); - - x0 += cenX; - x1 += cenX; - x2 += cenX; - x3 += cenX; - - y0 += cenY; - y1 += cenY; - y2 += cenY; - y3 += cenY; - - drawLine(x0, y0, x1, y1, color); // bottom right to bottom left - drawLine(x1, y1, x2, y2, color); // bottom left to top left - drawLine(x2, y2, x3, y3, color); // top left to top right - drawLine(x3, y3, x0, y0, color); // top right to bottom right -} - -/**************************************************************************/ -/*! - @brief Draw a filled rotated rectangle - @param cenX x coordinate of center of rectangle. - For even width rectangles, this point - represents the pixel to the left of - true center. - @param cenY y coordinate of center of rectangle. - For even height rectangles, this point - represents the pixel above - true center. - @param w width of rectangle - @param h height of rectangle - @param angleDeg angle of rotation of rectangle - @param color 16-bit 5-6-5 Color to fill/draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillRotatedRect(int16_t cenX, int16_t cenY, int16_t w, - int16_t h, int16_t angleDeg, - uint16_t color) { - - if (w < 1 || h < 1) - return; // We don't draw zero dimensioned objects - - int16_t W = w - 1; - int16_t H = h - 1; - - int16_t halfW = (W / 2); // Midpoint should always be integer - int16_t halfH = (H / 2); // Midpoint should always be integer - - int16_t x0 = W - halfW; // bottom-right - int16_t y0 = H - halfH; // bottom-right - int16_t x1 = -halfW; // bottom-left - int16_t y1 = H - halfH; // bottom-left - int16_t x2 = -halfW; // top-left - int16_t y2 = -halfH; // top-left - int16_t x3 = W - halfW; // top-right - int16_t y3 = -halfH; // top-right - - rotatePoint(x0, y0, angleDeg); - rotatePoint(x1, y1, angleDeg); - rotatePoint(x2, y2, angleDeg); - rotatePoint(x3, y3, angleDeg); - - x0 += cenX; - x1 += cenX; - x2 += cenX; - x3 += cenX; - - y0 += cenY; - y1 += cenY; - y2 += cenY; - y3 += cenY; - - fillTriangle(x0, y0, x1, y1, x2, y2, color); - fillTriangle(x2, y2, x3, y3, x0, y0, color); -} - -/**************************************************************************/ -/*! - @brief Rotate a point in standard position - @param x0 x coordinate of point to rotate. This is passed by reference - and updated upon return - @param y0 y coordinate of point to rotate. This is passed by reference - and updated upon return - @param angleDeg angle to rotate the point by (degrees) -*/ -/**************************************************************************/ -void Adafruit_GFX::rotatePoint(int16_t &x0, int16_t &y0, int16_t angleDeg) { - float angleRad = radians(angleDeg); - float s = sin(angleRad); - float c = cos(angleRad); - - float x = x0; - float y = y0; - - // Rotate point - x0 = (int16_t)((x * c) - (y * s)); - y0 = (int16_t)((x * s) + (y * c)); -} - -/**************************************************************************/ -/*! - @brief Draw a triangle with no fill color - @param x0 Vertex #0 x coordinate - @param y0 Vertex #0 y coordinate - @param x1 Vertex #1 x coordinate - @param y1 Vertex #1 y coordinate - @param x2 Vertex #2 x coordinate - @param y2 Vertex #2 y coordinate - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - int16_t x2, int16_t y2, uint16_t color) { - drawLine(x0, y0, x1, y1, color); - drawLine(x1, y1, x2, y2, color); - drawLine(x2, y2, x0, y0, color); -} - -/**************************************************************************/ -/*! - @brief Draw a triangle with color-fill - @param x0 Vertex #0 x coordinate - @param y0 Vertex #0 y coordinate - @param x1 Vertex #1 x coordinate - @param y1 Vertex #1 y coordinate - @param x2 Vertex #2 x coordinate - @param y2 Vertex #2 y coordinate - @param color 16-bit 5-6-5 Color to fill/draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - int16_t x2, int16_t y2, uint16_t color) { - - int16_t a, b, y, last; - - // Sort coordinates by Y order (y2 >= y1 >= y0) - if (y0 > y1) { - _swap_int16_t(y0, y1); - _swap_int16_t(x0, x1); - } - if (y1 > y2) { - _swap_int16_t(y2, y1); - _swap_int16_t(x2, x1); - } - if (y0 > y1) { - _swap_int16_t(y0, y1); - _swap_int16_t(x0, x1); - } - - startWrite(); - if (y0 == y2) { // Handle awkward all-on-same-line case as its own thing - a = b = x0; - if (x1 < a) - a = x1; - else if (x1 > b) - b = x1; - if (x2 < a) - a = x2; - else if (x2 > b) - b = x2; - writeFastHLine(a, y0, b - a + 1, color); - endWrite(); - return; - } - - int16_t dx01 = x1 - x0, dy01 = y1 - y0, dx02 = x2 - x0, dy02 = y2 - y0, - dx12 = x2 - x1, dy12 = y2 - y1; - int32_t sa = 0, sb = 0; - - // For upper part of triangle, find scanline crossings for segments - // 0-1 and 0-2. If y1=y2 (flat-bottomed triangle), the scanline y1 - // is included here (and second loop will be skipped, avoiding a /0 - // error there), otherwise scanline y1 is skipped here and handled - // in the second loop...which also avoids a /0 error here if y0=y1 - // (flat-topped triangle). - if (y1 == y2) - last = y1; // Include y1 scanline - else - last = y1 - 1; // Skip it - - for (y = y0; y <= last; y++) { - a = x0 + sa / dy01; - b = x0 + sb / dy02; - sa += dx01; - sb += dx02; - /* longhand: - a = x0 + (x1 - x0) * (y - y0) / (y1 - y0); - b = x0 + (x2 - x0) * (y - y0) / (y2 - y0); - */ - if (a > b) - _swap_int16_t(a, b); - writeFastHLine(a, y, b - a + 1, color); - } - - // For lower part of triangle, find scanline crossings for segments - // 0-2 and 1-2. This loop is skipped if y1=y2. - sa = (int32_t)dx12 * (y - y1); - sb = (int32_t)dx02 * (y - y0); - for (; y <= y2; y++) { - a = x1 + sa / dy12; - b = x0 + sb / dy02; - sa += dx12; - sb += dx02; - /* longhand: - a = x1 + (x2 - x1) * (y - y1) / (y2 - y1); - b = x0 + (x2 - x0) * (y - y0) / (y2 - y0); - */ - if (a > b) - _swap_int16_t(a, b); - writeFastHLine(a, y, b - a + 1, color); - } - endWrite(); -} - -// BITMAP / XBITMAP / GRAYSCALE / RGB BITMAP FUNCTIONS --------------------- - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 1-bit image at the specified (x,y) - position, using the specified foreground color (unset bits are transparent). - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h, uint16_t color) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); - if (b & 0x80) - writePixel(x + i, y, color); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 1-bit image at the specified (x,y) - position, using the specified foreground (for set bits) and background (unset - bits) colors. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw pixels with - @param bg 16-bit 5-6-5 Color to draw background with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h, uint16_t color, - uint16_t bg) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); - writePixel(x + i, y, (b & 0x80) ? color : bg); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 1-bit image at the specified (x,y) position, - using the specified foreground color (unset bits are transparent). - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, - int16_t h, uint16_t color) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = bitmap[j * byteWidth + i / 8]; - if (b & 0x80) - writePixel(x + i, y, color); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 1-bit image at the specified (x,y) position, - using the specified foreground (for set bits) and background (unset bits) - colors. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw pixels with - @param bg 16-bit 5-6-5 Color to draw background with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, - int16_t h, uint16_t color, uint16_t bg) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = bitmap[j * byteWidth + i / 8]; - writePixel(x + i, y, (b & 0x80) ? color : bg); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw PROGMEM-resident XBitMap Files (*.xbm), exported from GIMP. - Usage: Export from GIMP to *.xbm, rename *.xbm to *.c and open in editor. - C Array can be directly used with this function. - There is no RAM-resident version of this function; if generating bitmaps - in RAM, use the format defined by drawBitmap() and call that instead. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw pixels with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawXBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h, uint16_t color) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b >>= 1; - else - b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); - // Nearly identical to drawBitmap(), only the bit order - // is reversed here (left-to-right = LSB to MSB): - if (b & 0x01) - writePixel(x + i, y, color); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 8-bit image (grayscale) at the specified - (x,y) pos. Specifically for 8-bit display devices such as IS31FL3731; no - color reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, - const uint8_t bitmap[], int16_t w, - int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, (uint8_t)pgm_read_byte(&bitmap[j * w + i])); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 8-bit image (grayscale) at the specified (x,y) - pos. Specifically for 8-bit display devices such as IS31FL3731; no color - reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, - int16_t w, int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 8-bit image (grayscale) with a 1-bit mask - (set bits = opaque, unset bits = clear) at the specified (x,y) position. - BOTH buffers (grayscale and mask) must be PROGMEM-resident. - Specifically for 8-bit display devices such as IS31FL3731; no color - reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param mask byte array with mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, - const uint8_t bitmap[], - const uint8_t mask[], int16_t w, - int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&mask[j * bw + i / 8]); - if (b & 0x80) { - writePixel(x + i, y, (uint8_t)pgm_read_byte(&bitmap[j * w + i])); - } - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 8-bit image (grayscale) with a 1-bit mask - (set bits = opaque, unset bits = clear) at the specified (x,y) position. - BOTH buffers (grayscale and mask) must be RAM-residentt, no mix-and-match - Specifically for 8-bit display devices such as IS31FL3731; no color - reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param mask byte array with mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, - uint8_t *mask, int16_t w, int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = mask[j * bw + i / 8]; - if (b & 0x80) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 16-bit image (RGB 5/6/5) at the specified - (x,y) position. For 16-bit display devices; no color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], - int16_t w, int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, pgm_read_word(&bitmap[j * w + i])); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 16-bit image (RGB 5/6/5) at the specified (x,y) - position. For 16-bit display devices; no color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, - int16_t w, int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 16-bit image (RGB 5/6/5) with a 1-bit mask - (set bits = opaque, unset bits = clear) at the specified (x,y) position. BOTH - buffers (color and mask) must be PROGMEM-resident. For 16-bit display - devices; no color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param mask byte array with monochrome mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], - const uint8_t mask[], int16_t w, int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&mask[j * bw + i / 8]); - if (b & 0x80) { - writePixel(x + i, y, pgm_read_word(&bitmap[j * w + i])); - } - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 16-bit image (RGB 5/6/5) with a 1-bit mask (set - bits = opaque, unset bits = clear) at the specified (x,y) position. BOTH - buffers (color and mask) must be RAM-resident. For 16-bit display devices; no - color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param mask byte array with monochrome mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, - uint8_t *mask, int16_t w, int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = mask[j * bw + i / 8]; - if (b & 0x80) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - } - endWrite(); -} - -// TEXT- AND CHARACTER-HANDLING FUNCTIONS ---------------------------------- - -// Draw a character -/**************************************************************************/ -/*! - @brief Draw a single character - @param x Bottom left corner x coordinate - @param y Bottom left corner y coordinate - @param c The 8-bit font-indexed character (likely ascii) - @param color 16-bit 5-6-5 Color to draw chraracter with - @param bg 16-bit 5-6-5 Color to fill background with (if same as color, - no background) - @param size Font magnification level, 1 is 'original' size -*/ -/**************************************************************************/ -void Adafruit_GFX::drawChar(int16_t x, int16_t y, unsigned char c, - uint16_t color, uint16_t bg, uint8_t size) { - drawChar(x, y, c, color, bg, size, size); -} - -// Draw a character -/**************************************************************************/ -/*! - @brief Draw a single character - @param x Bottom left corner x coordinate - @param y Bottom left corner y coordinate - @param c The 8-bit font-indexed character (likely ascii) - @param color 16-bit 5-6-5 Color to draw chraracter with - @param bg 16-bit 5-6-5 Color to fill background with (if same as color, - no background) - @param size_x Font magnification level in X-axis, 1 is 'original' size - @param size_y Font magnification level in Y-axis, 1 is 'original' size -*/ -/**************************************************************************/ -void Adafruit_GFX::drawChar(int16_t x, int16_t y, unsigned char c, - uint16_t color, uint16_t bg, uint8_t size_x, - uint8_t size_y) { - - if (!gfxFont) { // 'Classic' built-in font - - if ((x >= _width) || // Clip right - (y >= _height) || // Clip bottom - ((x + 6 * size_x - 1) < 0) || // Clip left - ((y + 8 * size_y - 1) < 0)) // Clip top - return; - - if (!_cp437 && (c >= 176)) - c++; // Handle 'classic' charset behavior - - startWrite(); - for (int8_t i = 0; i < 5; i++) { // Char bitmap = 5 columns - uint8_t line = pgm_read_byte(&font[c * 5 + i]); - for (int8_t j = 0; j < 8; j++, line >>= 1) { - if (line & 1) { - if (size_x == 1 && size_y == 1) - writePixel(x + i, y + j, color); - else - writeFillRect(x + i * size_x, y + j * size_y, size_x, size_y, - color); - } else if (bg != color) { - if (size_x == 1 && size_y == 1) - writePixel(x + i, y + j, bg); - else - writeFillRect(x + i * size_x, y + j * size_y, size_x, size_y, bg); - } - } - } - if (bg != color) { // If opaque, draw vertical line for last column - if (size_x == 1 && size_y == 1) - writeFastVLine(x + 5, y, 8, bg); - else - writeFillRect(x + 5 * size_x, y, size_x, 8 * size_y, bg); - } - endWrite(); - - } else { // Custom font - - // Character is assumed previously filtered by write() to eliminate - // newlines, returns, non-printable characters, etc. Calling - // drawChar() directly with 'bad' characters of font may cause mayhem! - - c -= (uint8_t)pgm_read_byte(&gfxFont->first); - GFXglyph *glyph = pgm_read_glyph_ptr(gfxFont, c); - uint8_t *bitmap = pgm_read_bitmap_ptr(gfxFont); - - uint16_t bo = pgm_read_word(&glyph->bitmapOffset); - uint8_t w = pgm_read_byte(&glyph->width), h = pgm_read_byte(&glyph->height); - int8_t xo = pgm_read_byte(&glyph->xOffset), - yo = pgm_read_byte(&glyph->yOffset); - uint8_t xx, yy, bits = 0, bit = 0; - int16_t xo16 = 0, yo16 = 0; - - if (size_x > 1 || size_y > 1) { - xo16 = xo; - yo16 = yo; - } - - // Todo: Add character clipping here - - // NOTE: THERE IS NO 'BACKGROUND' COLOR OPTION ON CUSTOM FONTS. - // THIS IS ON PURPOSE AND BY DESIGN. The background color feature - // has typically been used with the 'classic' font to overwrite old - // screen contents with new data. This ONLY works because the - // characters are a uniform size; it's not a sensible thing to do with - // proportionally-spaced fonts with glyphs of varying sizes (and that - // may overlap). To replace previously-drawn text when using a custom - // font, use the getTextBounds() function to determine the smallest - // rectangle encompassing a string, erase the area with fillRect(), - // then draw new text. This WILL infortunately 'blink' the text, but - // is unavoidable. Drawing 'background' pixels will NOT fix this, - // only creates a new set of problems. Have an idea to work around - // this (a canvas object type for MCUs that can afford the RAM and - // displays supporting setAddrWindow() and pushColors()), but haven't - // implemented this yet. - - startWrite(); - for (yy = 0; yy < h; yy++) { - for (xx = 0; xx < w; xx++) { - if (!(bit++ & 7)) { - bits = pgm_read_byte(&bitmap[bo++]); - } - if (bits & 0x80) { - if (size_x == 1 && size_y == 1) { - writePixel(x + xo + xx, y + yo + yy, color); - } else { - writeFillRect(x + (xo16 + xx) * size_x, y + (yo16 + yy) * size_y, - size_x, size_y, color); - } - } - bits <<= 1; - } - } - endWrite(); - - } // End classic vs custom font -} -/**************************************************************************/ -/*! - @brief Print one byte/character of data, used to support print() - @param c The 8-bit ascii character to write -*/ -/**************************************************************************/ -size_t Adafruit_GFX::write(uint8_t c) { - if (!gfxFont) { // 'Classic' built-in font - - if (c == '\n') { // Newline? - cursor_x = 0; // Reset x to zero, - cursor_y += textsize_y * 8; // advance y one line - } else if (c != '\r') { // Ignore carriage returns - if (wrap && ((cursor_x + textsize_x * 6) > _width)) { // Off right? - cursor_x = 0; // Reset x to zero, - cursor_y += textsize_y * 8; // advance y one line - } - drawChar(cursor_x, cursor_y, c, textcolor, textbgcolor, textsize_x, - textsize_y); - cursor_x += textsize_x * 6; // Advance x one char - } - - } else { // Custom font - - if (c == '\n') { - cursor_x = 0; - cursor_y += - (int16_t)textsize_y * (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } else if (c != '\r') { - uint8_t first = pgm_read_byte(&gfxFont->first); - if ((c >= first) && (c <= (uint8_t)pgm_read_byte(&gfxFont->last))) { - GFXglyph *glyph = pgm_read_glyph_ptr(gfxFont, c - first); - uint8_t w = pgm_read_byte(&glyph->width), - h = pgm_read_byte(&glyph->height); - if ((w > 0) && (h > 0)) { // Is there an associated bitmap? - int16_t xo = (int8_t)pgm_read_byte(&glyph->xOffset); // sic - if (wrap && ((cursor_x + textsize_x * (xo + w)) > _width)) { - cursor_x = 0; - cursor_y += (int16_t)textsize_y * - (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } - drawChar(cursor_x, cursor_y, c, textcolor, textbgcolor, textsize_x, - textsize_y); - } - cursor_x += - (uint8_t)pgm_read_byte(&glyph->xAdvance) * (int16_t)textsize_x; - } - } - } - return 1; -} - -/**************************************************************************/ -/*! - @brief Set text 'magnification' size. Each increase in s makes 1 pixel - that much bigger. - @param s Desired text size. 1 is default 6x8, 2 is 12x16, 3 is 18x24, etc -*/ -/**************************************************************************/ -void Adafruit_GFX::setTextSize(uint8_t s) { setTextSize(s, s); } - -/**************************************************************************/ -/*! - @brief Set text 'magnification' size. Each increase in s makes 1 pixel - that much bigger. - @param s_x Desired text width magnification level in X-axis. 1 is default - @param s_y Desired text width magnification level in Y-axis. 1 is default -*/ -/**************************************************************************/ -void Adafruit_GFX::setTextSize(uint8_t s_x, uint8_t s_y) { - textsize_x = (s_x > 0) ? s_x : 1; - textsize_y = (s_y > 0) ? s_y : 1; -} - -/**************************************************************************/ -/*! - @brief Set rotation setting for display - @param x 0 thru 3 corresponding to 4 cardinal rotations -*/ -/**************************************************************************/ -void Adafruit_GFX::setRotation(uint8_t x) { - rotation = (x & 3); - switch (rotation) { - case 0: - case 2: - _width = WIDTH; - _height = HEIGHT; - break; - case 1: - case 3: - _width = HEIGHT; - _height = WIDTH; - break; - } -} - -/**************************************************************************/ -/*! - @brief Set the font to display when print()ing, either custom or default - @param f The GFXfont object, if NULL use built in 6x8 font -*/ -/**************************************************************************/ -void Adafruit_GFX::setFont(const GFXfont *f) { - if (f) { // Font struct pointer passed in? - if (!gfxFont) { // And no current font struct? - // Switching from classic to new font behavior. - // Move cursor pos down 6 pixels so it's on baseline. - cursor_y += 6; - } - } else if (gfxFont) { // NULL passed. Current font struct defined? - // Switching from new to classic font behavior. - // Move cursor pos up 6 pixels so it's at top-left of char. - cursor_y -= 6; - } - gfxFont = (GFXfont *)f; -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a character with current font/size. - Broke this out as it's used by both the PROGMEM- and RAM-resident - getTextBounds() functions. - @param c The ASCII character in question - @param x Pointer to x location of character. Value is modified by - this function to advance to next character. - @param y Pointer to y location of character. Value is modified by - this function to advance to next character. - @param minx Pointer to minimum X coordinate, passed in to AND returned - by this function -- this is used to incrementally build a - bounding rectangle for a string. - @param miny Pointer to minimum Y coord, passed in AND returned. - @param maxx Pointer to maximum X coord, passed in AND returned. - @param maxy Pointer to maximum Y coord, passed in AND returned. -*/ -/**************************************************************************/ -void Adafruit_GFX::charBounds(unsigned char c, int16_t *x, int16_t *y, - int16_t *minx, int16_t *miny, int16_t *maxx, - int16_t *maxy) { - - if (gfxFont) { - - if (c == '\n') { // Newline? - *x = 0; // Reset x to zero, advance y by one line - *y += textsize_y * (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } else if (c != '\r') { // Not a carriage return; is normal char - uint8_t first = pgm_read_byte(&gfxFont->first), - last = pgm_read_byte(&gfxFont->last); - if ((c >= first) && (c <= last)) { // Char present in this font? - GFXglyph *glyph = pgm_read_glyph_ptr(gfxFont, c - first); - uint8_t gw = pgm_read_byte(&glyph->width), - gh = pgm_read_byte(&glyph->height), - xa = pgm_read_byte(&glyph->xAdvance); - int8_t xo = pgm_read_byte(&glyph->xOffset), - yo = pgm_read_byte(&glyph->yOffset); - if (wrap && ((*x + (((int16_t)xo + gw) * textsize_x)) > _width)) { - *x = 0; // Reset x to zero, advance y by one line - *y += textsize_y * (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } - int16_t tsx = (int16_t)textsize_x, tsy = (int16_t)textsize_y, - x1 = *x + xo * tsx, y1 = *y + yo * tsy, x2 = x1 + gw * tsx - 1, - y2 = y1 + gh * tsy - 1; - if (x1 < *minx) - *minx = x1; - if (y1 < *miny) - *miny = y1; - if (x2 > *maxx) - *maxx = x2; - if (y2 > *maxy) - *maxy = y2; - *x += xa * tsx; - } - } - - } else { // Default font - - if (c == '\n') { // Newline? - *x = 0; // Reset x to zero, - *y += textsize_y * 8; // advance y one line - // min/max x/y unchaged -- that waits for next 'normal' character - } else if (c != '\r') { // Normal char; ignore carriage returns - if (wrap && ((*x + textsize_x * 6) > _width)) { // Off right? - *x = 0; // Reset x to zero, - *y += textsize_y * 8; // advance y one line - } - int x2 = *x + textsize_x * 6 - 1, // Lower-right pixel of char - y2 = *y + textsize_y * 8 - 1; - if (x2 > *maxx) - *maxx = x2; // Track max x, y - if (y2 > *maxy) - *maxy = y2; - if (*x < *minx) - *minx = *x; // Track min x, y - if (*y < *miny) - *miny = *y; - *x += textsize_x * 6; // Advance x one char - } - } -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a string with current font/size. - Pass string and a cursor position, returns UL corner and W,H. - @param str The ASCII string to measure - @param x The current cursor X - @param y The current cursor Y - @param x1 The boundary X coordinate, returned by function - @param y1 The boundary Y coordinate, returned by function - @param w The boundary width, returned by function - @param h The boundary height, returned by function -*/ -/**************************************************************************/ -void Adafruit_GFX::getTextBounds(const char *str, int16_t x, int16_t y, - int16_t *x1, int16_t *y1, uint16_t *w, - uint16_t *h) { - - uint8_t c; // Current character - int16_t minx = 0x7FFF, miny = 0x7FFF, maxx = -1, maxy = -1; // Bound rect - // Bound rect is intentionally initialized inverted, so 1st char sets it - - *x1 = x; // Initial position is value passed in - *y1 = y; - *w = *h = 0; // Initial size is zero - - while ((c = *str++)) { - // charBounds() modifies x/y to advance for each character, - // and min/max x/y are updated to incrementally build bounding rect. - charBounds(c, &x, &y, &minx, &miny, &maxx, &maxy); - } - - if (maxx >= minx) { // If legit string bounds were found... - *x1 = minx; // Update x1 to least X coord, - *w = maxx - minx + 1; // And w to bound rect width - } - if (maxy >= miny) { // Same for height - *y1 = miny; - *h = maxy - miny + 1; - } -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a string with current font/size. Pass - string and a cursor position, returns UL corner and W,H. - @param str The ascii string to measure (as an arduino String() class) - @param x The current cursor X - @param y The current cursor Y - @param x1 The boundary X coordinate, set by function - @param y1 The boundary Y coordinate, set by function - @param w The boundary width, set by function - @param h The boundary height, set by function -*/ -/**************************************************************************/ -void Adafruit_GFX::getTextBounds(const String &str, int16_t x, int16_t y, - int16_t *x1, int16_t *y1, uint16_t *w, - uint16_t *h) { - if (str.length() != 0) { - getTextBounds(const_cast(str.c_str()), x, y, x1, y1, w, h); - } -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a PROGMEM string with current - font/size. Pass string and a cursor position, returns UL corner and W,H. - @param str The flash-memory ascii string to measure - @param x The current cursor X - @param y The current cursor Y - @param x1 The boundary X coordinate, set by function - @param y1 The boundary Y coordinate, set by function - @param w The boundary width, set by function - @param h The boundary height, set by function -*/ -/**************************************************************************/ -void Adafruit_GFX::getTextBounds(const __FlashStringHelper *str, int16_t x, - int16_t y, int16_t *x1, int16_t *y1, - uint16_t *w, uint16_t *h) { - uint8_t *s = (uint8_t *)str, c; - - *x1 = x; - *y1 = y; - *w = *h = 0; - - int16_t minx = _width, miny = _height, maxx = -1, maxy = -1; - - while ((c = pgm_read_byte(s++))) - charBounds(c, &x, &y, &minx, &miny, &maxx, &maxy); - - if (maxx >= minx) { - *x1 = minx; - *w = maxx - minx + 1; - } - if (maxy >= miny) { - *y1 = miny; - *h = maxy - miny + 1; - } -} - -/**************************************************************************/ -/*! - @brief Invert the display (ideally using built-in hardware command) - @param i True if you want to invert, false to make 'normal' -*/ -/**************************************************************************/ -void Adafruit_GFX::invertDisplay(bool i) { - // Do nothing, must be subclassed if supported by hardware - (void)i; // disable -Wunused-parameter warning -} - -/***************************************************************************/ - -/**************************************************************************/ -/*! - @brief Create a simple drawn button UI element -*/ -/**************************************************************************/ -Adafruit_GFX_Button::Adafruit_GFX_Button(void) { _gfx = 0; } - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings - @param gfx Pointer to our display so we can draw to it! - @param x The X coordinate of the center of the button - @param y The Y coordinate of the center of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize The font magnification of the label text -*/ -/**************************************************************************/ -// Classic initButton() function: pass center & size -void Adafruit_GFX_Button::initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, - uint16_t w, uint16_t h, uint16_t outline, - uint16_t fill, uint16_t textcolor, - char *label, uint8_t textsize) { - // Tweak arguments and pass to the newer initButtonUL() function... - initButtonUL(gfx, x - (w / 2), y - (h / 2), w, h, outline, fill, textcolor, - label, textsize); -} - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings - @param gfx Pointer to our display so we can draw to it! - @param x The X coordinate of the center of the button - @param y The Y coordinate of the center of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize_x The font magnification in X-axis of the label text - @param textsize_y The font magnification in Y-axis of the label text -*/ -/**************************************************************************/ -// Classic initButton() function: pass center & size -void Adafruit_GFX_Button::initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, - uint16_t w, uint16_t h, uint16_t outline, - uint16_t fill, uint16_t textcolor, - char *label, uint8_t textsize_x, - uint8_t textsize_y) { - // Tweak arguments and pass to the newer initButtonUL() function... - initButtonUL(gfx, x - (w / 2), y - (h / 2), w, h, outline, fill, textcolor, - label, textsize_x, textsize_y); -} - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings, with - upper-left coordinates - @param gfx Pointer to our display so we can draw to it! - @param x1 The X coordinate of the Upper-Left corner of the button - @param y1 The Y coordinate of the Upper-Left corner of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize The font magnification of the label text -*/ -/**************************************************************************/ -void Adafruit_GFX_Button::initButtonUL(Adafruit_GFX *gfx, int16_t x1, - int16_t y1, uint16_t w, uint16_t h, - uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, - uint8_t textsize) { - initButtonUL(gfx, x1, y1, w, h, outline, fill, textcolor, label, textsize, - textsize); -} - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings, with - upper-left coordinates - @param gfx Pointer to our display so we can draw to it! - @param x1 The X coordinate of the Upper-Left corner of the button - @param y1 The Y coordinate of the Upper-Left corner of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize_x The font magnification in X-axis of the label text - @param textsize_y The font magnification in Y-axis of the label text -*/ -/**************************************************************************/ -void Adafruit_GFX_Button::initButtonUL(Adafruit_GFX *gfx, int16_t x1, - int16_t y1, uint16_t w, uint16_t h, - uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, - uint8_t textsize_x, uint8_t textsize_y) { - _x1 = x1; - _y1 = y1; - _w = w; - _h = h; - _outlinecolor = outline; - _fillcolor = fill; - _textcolor = textcolor; - _textsize_x = textsize_x; - _textsize_y = textsize_y; - _gfx = gfx; - strncpy(_label, label, 9); - _label[9] = 0; // strncpy does not place a null at the end. - // When 'label' is >9 characters, _label is not terminated. -} - -/**************************************************************************/ -/*! - @brief Draw the button on the screen - @param inverted Whether to draw with fill/text swapped to indicate - 'pressed' -*/ -/**************************************************************************/ -void Adafruit_GFX_Button::drawButton(bool inverted) { - uint16_t fill, outline, text; - - if (!inverted) { - fill = _fillcolor; - outline = _outlinecolor; - text = _textcolor; - } else { - fill = _textcolor; - outline = _outlinecolor; - text = _fillcolor; - } - - uint8_t r = min(_w, _h) / 4; // Corner radius - _gfx->fillRoundRect(_x1, _y1, _w, _h, r, fill); - _gfx->drawRoundRect(_x1, _y1, _w, _h, r, outline); - - _gfx->setCursor(_x1 + (_w / 2) - (strlen(_label) * 3 * _textsize_x), - _y1 + (_h / 2) - (4 * _textsize_y)); - _gfx->setTextColor(text); - _gfx->setTextSize(_textsize_x, _textsize_y); - _gfx->print(_label); -} - -/**************************************************************************/ -/*! - @brief Helper to let us know if a coordinate is within the bounds of the - button - @param x The X coordinate to check - @param y The Y coordinate to check - @returns True if within button graphics outline -*/ -/**************************************************************************/ -bool Adafruit_GFX_Button::contains(int16_t x, int16_t y) { - return ((x >= _x1) && (x < (int16_t)(_x1 + _w)) && (y >= _y1) && - (y < (int16_t)(_y1 + _h))); -} - -/**************************************************************************/ -/*! - @brief Query whether the button was pressed since we last checked state - @returns True if was not-pressed before, now is. -*/ -/**************************************************************************/ -bool Adafruit_GFX_Button::justPressed() { return (currstate && !laststate); } - -/**************************************************************************/ -/*! - @brief Query whether the button was released since we last checked state - @returns True if was pressed before, now is not. -*/ -/**************************************************************************/ -bool Adafruit_GFX_Button::justReleased() { return (!currstate && laststate); } - -// ------------------------------------------------------------------------- - -// GFXcanvas1, GFXcanvas8 and GFXcanvas16 (currently a WIP, don't get too -// comfy with the implementation) provide 1-, 8- and 16-bit offscreen -// canvases, the address of which can be passed to drawBitmap() or -// pushColors() (the latter appears only in a couple of GFX-subclassed TFT -// libraries at this time). This is here mostly to help with the recently- -// added proportionally-spaced fonts; adds a way to refresh a section of the -// screen without a massive flickering clear-and-redraw...but maybe you'll -// find other uses too. VERY RAM-intensive, since the buffer is in MCU -// memory and not the display driver...GXFcanvas1 might be minimally useful -// on an Uno-class board, but this and the others are much more likely to -// require at least a Mega or various recent ARM-type boards (recommended, -// as the text+bitmap draw can be pokey). GFXcanvas1 requires 1 bit per -// pixel (rounded up to nearest byte per scanline), GFXcanvas8 is 1 byte -// per pixel (no scanline pad), and GFXcanvas16 uses 2 bytes per pixel (no -// scanline pad). -// NOT EXTENSIVELY TESTED YET. MAY CONTAIN WORST BUGS KNOWN TO HUMANKIND. - -#ifdef __AVR__ -// Bitmask tables of 0x80>>X and ~(0x80>>X), because X>>Y is slow on AVR -const uint8_t PROGMEM GFXcanvas1::GFXsetBit[] = {0x80, 0x40, 0x20, 0x10, - 0x08, 0x04, 0x02, 0x01}; -const uint8_t PROGMEM GFXcanvas1::GFXclrBit[] = {0x7F, 0xBF, 0xDF, 0xEF, - 0xF7, 0xFB, 0xFD, 0xFE}; -#endif - -/**************************************************************************/ -/*! - @brief Instatiate a GFX 1-bit canvas context for graphics - @param w Display width, in pixels - @param h Display height, in pixels - @param allocate_buffer If true, a buffer is allocated with malloc. If - false, the subclass must initialize the buffer before any drawing operation, - and free it in the destructor. If false (the default), the buffer is - allocated and freed by the library. -*/ -/**************************************************************************/ -GFXcanvas1::GFXcanvas1(uint16_t w, uint16_t h, bool allocate_buffer) - : Adafruit_GFX(w, h), buffer_owned(allocate_buffer) { - if (allocate_buffer) { - uint32_t bytes = ((w + 7) / 8) * h; - if ((buffer = (uint8_t *)malloc(bytes))) { - memset(buffer, 0, bytes); - } - } else { - buffer = nullptr; - } -} - -/**************************************************************************/ -/*! - @brief Delete the canvas, free memory -*/ -/**************************************************************************/ -GFXcanvas1::~GFXcanvas1(void) { - if (buffer && buffer_owned) - free(buffer); -} - -/**************************************************************************/ -/*! - @brief Draw a pixel to the canvas framebuffer - @param x x coordinate - @param y y coordinate - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawPixel(int16_t x, int16_t y, uint16_t color) { - if (buffer) { - if ((x < 0) || (y < 0) || (x >= _width) || (y >= _height)) - return; - - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - - uint8_t *ptr = &buffer[(x / 8) + y * ((WIDTH + 7) / 8)]; -#ifdef __AVR__ - if (color) - *ptr |= pgm_read_byte(&GFXsetBit[x & 7]); - else - *ptr &= pgm_read_byte(&GFXclrBit[x & 7]); -#else - if (color) - *ptr |= 0x80 >> (x & 7); - else - *ptr &= ~(0x80 >> (x & 7)); -#endif - } -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given coordinate - @param x x coordinate - @param y y coordinate - @returns The desired pixel's binary color value, either 0x1 (on) or 0x0 - (off) -*/ -/**********************************************************************/ -bool GFXcanvas1::getPixel(int16_t x, int16_t y) const { - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - return getRawPixel(x, y); -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given, unrotated coordinate. - This method is intended for hardware drivers to get pixel value - in physical coordinates. - @param x x coordinate - @param y y coordinate - @returns The desired pixel's binary color value, either 0x1 (on) or 0x0 - (off) -*/ -/**********************************************************************/ -bool GFXcanvas1::getRawPixel(int16_t x, int16_t y) const { - if ((x < 0) || (y < 0) || (x >= WIDTH) || (y >= HEIGHT)) - return 0; - if (buffer) { - uint8_t *ptr = &buffer[(x / 8) + y * ((WIDTH + 7) / 8)]; - -#ifdef __AVR__ - return ((*ptr) & pgm_read_byte(&GFXsetBit[x & 7])) != 0; -#else - return ((*ptr) & (0x80 >> (x & 7))) != 0; -#endif - } - return 0; -} - -/**************************************************************************/ -/*! - @brief Fill the framebuffer completely with one color - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::fillScreen(uint16_t color) { - if (buffer) { - uint32_t bytes = ((WIDTH + 7) / 8) * HEIGHT; - memset(buffer, color ? 0xFF : 0x00, bytes); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param h Length of vertical line to be drawn, including first point - @param color Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - - if (h < 0) { // Convert negative heights to positive equivalent - h *= -1; - y -= h - 1; - if (y < 0) { - h += y; - y = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((x < 0) || (x >= width()) || (y >= height()) || ((y + h - 1) < 0)) { - return; - } - - if (y < 0) { // Clip top - h += y; - y = 0; - } - if (y + h > height()) { // Clip bottom - h = height() - y; - } - - if (getRotation() == 0) { - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - x -= h - 1; - drawFastRawHLine(x, y, h, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - y -= h - 1; - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - drawFastRawHLine(x, y, h, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param w Length of horizontal line to be drawn, including first point - @param color Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if (w < 0) { // Convert negative widths to positive equivalent - w *= -1; - x -= w - 1; - if (x < 0) { - w += x; - x = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((y < 0) || (y >= height()) || (x >= width()) || ((x + w - 1) < 0)) { - return; - } - - if (x < 0) { // Clip left - w += x; - x = 0; - } - if (x + w >= width()) { // Clip right - w = width() - x; - } - - if (getRotation() == 0) { - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - drawFastRawVLine(x, y, w, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - x -= w - 1; - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - y -= w - 1; - drawFastRawVLine(x, y, w, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastRawVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - int16_t row_bytes = ((WIDTH + 7) / 8); - uint8_t *ptr = &buffer[(x / 8) + y * row_bytes]; - - if (color > 0) { -#ifdef __AVR__ - uint8_t bit_mask = pgm_read_byte(&GFXsetBit[x & 7]); -#else - uint8_t bit_mask = (0x80 >> (x & 7)); -#endif - for (int16_t i = 0; i < h; i++) { - *ptr |= bit_mask; - ptr += row_bytes; - } - } else { -#ifdef __AVR__ - uint8_t bit_mask = pgm_read_byte(&GFXclrBit[x & 7]); -#else - uint8_t bit_mask = ~(0x80 >> (x & 7)); -#endif - for (int16_t i = 0; i < h; i++) { - *ptr &= bit_mask; - ptr += row_bytes; - } - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param w length of horizontal line to be drawn, including first point - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastRawHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - int16_t rowBytes = ((WIDTH + 7) / 8); - uint8_t *ptr = &buffer[(x / 8) + y * rowBytes]; - size_t remainingWidthBits = w; - - // check to see if first byte needs to be partially filled - if ((x & 7) > 0) { - // create bit mask for first byte - uint8_t startByteBitMask = 0x00; - for (int8_t i = (x & 7); ((i < 8) && (remainingWidthBits > 0)); i++) { -#ifdef __AVR__ - startByteBitMask |= pgm_read_byte(&GFXsetBit[i]); -#else - startByteBitMask |= (0x80 >> i); -#endif - remainingWidthBits--; - } - if (color > 0) { - *ptr |= startByteBitMask; - } else { - *ptr &= ~startByteBitMask; - } - - ptr++; - } - - // do the next remainingWidthBits bits - if (remainingWidthBits > 0) { - size_t remainingWholeBytes = remainingWidthBits / 8; - size_t lastByteBits = remainingWidthBits % 8; - uint8_t wholeByteColor = color > 0 ? 0xFF : 0x00; - - memset(ptr, wholeByteColor, remainingWholeBytes); - - if (lastByteBits > 0) { - uint8_t lastByteBitMask = 0x00; - for (size_t i = 0; i < lastByteBits; i++) { -#ifdef __AVR__ - lastByteBitMask |= pgm_read_byte(&GFXsetBit[i]); -#else - lastByteBitMask |= (0x80 >> i); -#endif - } - ptr += remainingWholeBytes; - - if (color > 0) { - *ptr |= lastByteBitMask; - } else { - *ptr &= ~lastByteBitMask; - } - } - } -} - -/**************************************************************************/ -/*! - @brief Instatiate a GFX 8-bit canvas context for graphics - @param w Display width, in pixels - @param h Display height, in pixels - @param allocate_buffer If true, a buffer is allocated with malloc. If - false, the subclass must initialize the buffer before any drawing operation, - and free it in the destructor. If false (the default), the buffer is - allocated and freed by the library. -*/ -/**************************************************************************/ -GFXcanvas8::GFXcanvas8(uint16_t w, uint16_t h, bool allocate_buffer) - : Adafruit_GFX(w, h), buffer_owned(allocate_buffer) { - if (allocate_buffer) { - uint32_t bytes = w * h; - if ((buffer = (uint8_t *)malloc(bytes))) { - memset(buffer, 0, bytes); - } - } else - buffer = nullptr; -} - -/**************************************************************************/ -/*! - @brief Delete the canvas, free memory -*/ -/**************************************************************************/ -GFXcanvas8::~GFXcanvas8(void) { - if (buffer && buffer_owned) - free(buffer); -} - -/**************************************************************************/ -/*! - @brief Draw a pixel to the canvas framebuffer - @param x x coordinate - @param y y coordinate - @param color 8-bit Color to fill with. Only lower byte of uint16_t is used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawPixel(int16_t x, int16_t y, uint16_t color) { - if (buffer) { - if ((x < 0) || (y < 0) || (x >= _width) || (y >= _height)) - return; - - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - - buffer[x + y * WIDTH] = color; - } -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given coordinate - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 8-bit color value -*/ -/**********************************************************************/ -uint8_t GFXcanvas8::getPixel(int16_t x, int16_t y) const { - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - return getRawPixel(x, y); -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given, unrotated coordinate. - This method is intended for hardware drivers to get pixel value - in physical coordinates. - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 8-bit color value -*/ -/**********************************************************************/ -uint8_t GFXcanvas8::getRawPixel(int16_t x, int16_t y) const { - if ((x < 0) || (y < 0) || (x >= WIDTH) || (y >= HEIGHT)) - return 0; - if (buffer) { - return buffer[x + y * WIDTH]; - } - return 0; -} - -/**************************************************************************/ -/*! - @brief Fill the framebuffer completely with one color - @param color 8-bit Color to fill with. Only lower byte of uint16_t is used. -*/ -/**************************************************************************/ -void GFXcanvas8::fillScreen(uint16_t color) { - if (buffer) { - memset(buffer, color, WIDTH * HEIGHT); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param h Length of vertical line to be drawn, including first point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if (h < 0) { // Convert negative heights to positive equivalent - h *= -1; - y -= h - 1; - if (y < 0) { - h += y; - y = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((x < 0) || (x >= width()) || (y >= height()) || ((y + h - 1) < 0)) { - return; - } - - if (y < 0) { // Clip top - h += y; - y = 0; - } - if (y + h > height()) { // Clip bottom - h = height() - y; - } - - if (getRotation() == 0) { - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - x -= h - 1; - drawFastRawHLine(x, y, h, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - y -= h - 1; - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - drawFastRawHLine(x, y, h, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param w Length of horizontal line to be drawn, including 1st point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - - if (w < 0) { // Convert negative widths to positive equivalent - w *= -1; - x -= w - 1; - if (x < 0) { - w += x; - x = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((y < 0) || (y >= height()) || (x >= width()) || ((x + w - 1) < 0)) { - return; - } - - if (x < 0) { // Clip left - w += x; - x = 0; - } - if (x + w >= width()) { // Clip right - w = width() - x; - } - - if (getRotation() == 0) { - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - drawFastRawVLine(x, y, w, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - x -= w - 1; - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - y -= w - 1; - drawFastRawVLine(x, y, w, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastRawVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - uint8_t *buffer_ptr = buffer + y * WIDTH + x; - for (int16_t i = 0; i < h; i++) { - (*buffer_ptr) = color; - buffer_ptr += WIDTH; - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param w length of horizontal line to be drawn, including first point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastRawHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - memset(buffer + y * WIDTH + x, color, w); -} - -/**************************************************************************/ -/*! - @brief Instatiate a GFX 16-bit canvas context for graphics - @param w Display width, in pixels - @param h Display height, in pixels - @param allocate_buffer If true, a buffer is allocated with malloc. If - false, the subclass must initialize the buffer before any drawing operation, - and free it in the destructor. If false (the default), the buffer is - allocated and freed by the library. -*/ -/**************************************************************************/ -GFXcanvas16::GFXcanvas16(uint16_t w, uint16_t h, bool allocate_buffer) - : Adafruit_GFX(w, h), buffer_owned(allocate_buffer) { - if (allocate_buffer) { - uint32_t bytes = w * h * 2; - if ((buffer = (uint16_t *)malloc(bytes))) { - memset(buffer, 0, bytes); - } - } else { - buffer = nullptr; - } -} - -/**************************************************************************/ -/*! - @brief Delete the canvas, free memory -*/ -/**************************************************************************/ -GFXcanvas16::~GFXcanvas16(void) { - if (buffer && buffer_owned) - free(buffer); -} - -/**************************************************************************/ -/*! - @brief Draw a pixel to the canvas framebuffer - @param x x coordinate - @param y y coordinate - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas16::drawPixel(int16_t x, int16_t y, uint16_t color) { - if (buffer) { - if ((x < 0) || (y < 0) || (x >= _width) || (y >= _height)) - return; - - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - - buffer[x + y * WIDTH] = color; - } -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given coordinate - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 16-bit 5-6-5 color value -*/ -/**********************************************************************/ -uint16_t GFXcanvas16::getPixel(int16_t x, int16_t y) const { - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - return getRawPixel(x, y); -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given, unrotated coordinate. - This method is intended for hardware drivers to get pixel value - in physical coordinates. - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 16-bit 5-6-5 color value -*/ -/**********************************************************************/ -uint16_t GFXcanvas16::getRawPixel(int16_t x, int16_t y) const { - if ((x < 0) || (y < 0) || (x >= WIDTH) || (y >= HEIGHT)) - return 0; - if (buffer) { - return buffer[x + y * WIDTH]; - } - return 0; -} - -/**************************************************************************/ -/*! - @brief Fill the framebuffer completely with one color - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas16::fillScreen(uint16_t color) { - if (buffer) { - uint8_t hi = color >> 8, lo = color & 0xFF; - if (hi == lo) { - memset(buffer, lo, WIDTH * HEIGHT * 2); - } else { - uint32_t i, pixels = WIDTH * HEIGHT; - for (i = 0; i < pixels; i++) - buffer[i] = color; - } - } -} - -/**************************************************************************/ -/*! - @brief Reverses the "endian-ness" of each 16-bit pixel within the - canvas; little-endian to big-endian, or big-endian to little. - Most microcontrollers (such as SAMD) are little-endian, while - most displays tend toward big-endianness. All the drawing - functions (including RGB bitmap drawing) take care of this - automatically, but some specialized code (usually involving - DMA) can benefit from having pixel data already in the - display-native order. Note that this does NOT convert to a - SPECIFIC endian-ness, it just flips the bytes within each word. -*/ -/**************************************************************************/ -void GFXcanvas16::byteSwap(void) { - if (buffer) { - uint32_t i, pixels = WIDTH * HEIGHT; - for (i = 0; i < pixels; i++) - buffer[i] = __builtin_bswap16(buffer[i]); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if (h < 0) { // Convert negative heights to positive equivalent - h *= -1; - y -= h - 1; - if (y < 0) { - h += y; - y = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((x < 0) || (x >= width()) || (y >= height()) || ((y + h - 1) < 0)) { - return; - } - - if (y < 0) { // Clip top - h += y; - y = 0; - } - if (y + h > height()) { // Clip bottom - h = height() - y; - } - - if (getRotation() == 0) { - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - x -= h - 1; - drawFastRawHLine(x, y, h, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - y -= h - 1; - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - drawFastRawHLine(x, y, h, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param w Length of horizontal line to be drawn, including 1st point - @param color Color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if (w < 0) { // Convert negative widths to positive equivalent - w *= -1; - x -= w - 1; - if (x < 0) { - w += x; - x = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((y < 0) || (y >= height()) || (x >= width()) || ((x + w - 1) < 0)) { - return; - } - - if (x < 0) { // Clip left - w += x; - x = 0; - } - if (x + w >= width()) { // Clip right - w = width() - x; - } - - if (getRotation() == 0) { - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - drawFastRawVLine(x, y, w, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - x -= w - 1; - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - y -= w - 1; - drawFastRawVLine(x, y, w, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastRawVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - uint16_t *buffer_ptr = buffer + y * WIDTH + x; - for (int16_t i = 0; i < h; i++) { - (*buffer_ptr) = color; - buffer_ptr += WIDTH; - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param w length of horizontal line to be drawn, including first point - @param color color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastRawHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - uint32_t buffer_index = y * WIDTH + x; - for (uint32_t i = buffer_index; i < buffer_index + w; i++) { - buffer[i] = color; - } -} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.h deleted file mode 100644 index dd9dc0d..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.h +++ /dev/null @@ -1,406 +0,0 @@ -#ifndef _ADAFRUIT_GFX_H -#define _ADAFRUIT_GFX_H - -#if ARDUINO >= 100 -#include "Arduino.h" -#include "Print.h" -#else -#include "WProgram.h" -#endif -#include "gfxfont.h" - -#include -#include - -/// A generic graphics superclass that can handle all sorts of drawing. At a -/// minimum you can subclass and provide drawPixel(). At a maximum you can do a -/// ton of overriding to optimize. Used for any/all Adafruit displays! -class Adafruit_GFX : public Print { - -public: - Adafruit_GFX(int16_t w, int16_t h); // Constructor - - /**********************************************************************/ - /*! - @brief Draw to the screen/framebuffer/etc. - Must be overridden in subclass. - @param x X coordinate in pixels - @param y Y coordinate in pixels - @param color 16-bit pixel color. - */ - /**********************************************************************/ - virtual void drawPixel(int16_t x, int16_t y, uint16_t color) = 0; - - // TRANSACTION API / CORE DRAW API - // These MAY be overridden by the subclass to provide device-specific - // optimized code. Otherwise 'generic' versions are used. - virtual void startWrite(void); - virtual void writePixel(int16_t x, int16_t y, uint16_t color); - virtual void writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - virtual void writeFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - virtual void writeFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - virtual void writeLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color); - virtual void endWrite(void); - - // CONTROL API - // These MAY be overridden by the subclass to provide device-specific - // optimized code. Otherwise 'generic' versions are used. - virtual void setRotation(uint8_t r); - virtual void invertDisplay(bool i); - - // BASIC DRAW API - // These MAY be overridden by the subclass to provide device-specific - // optimized code. Otherwise 'generic' versions are used. - - // It's good to implement those, even if using transaction API - virtual void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - virtual void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - virtual void fillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - virtual void fillScreen(uint16_t color); - // Optional and probably not necessary to change - virtual void drawLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color); - virtual void drawRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - - // These exist only with Adafruit_GFX (no subclass overrides) - void drawCircle(int16_t x0, int16_t y0, int16_t r, uint16_t color); - void drawCircleHelper(int16_t x0, int16_t y0, int16_t r, uint8_t cornername, - uint16_t color); - void fillCircle(int16_t x0, int16_t y0, int16_t r, uint16_t color); - void fillCircleHelper(int16_t x0, int16_t y0, int16_t r, uint8_t cornername, - int16_t delta, uint16_t color); - void drawEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color); - void fillEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color); - void drawTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, - int16_t y2, uint16_t color); - void fillTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, - int16_t y2, uint16_t color); - void drawRoundRect(int16_t x0, int16_t y0, int16_t w, int16_t h, - int16_t radius, uint16_t color); - void fillRoundRect(int16_t x0, int16_t y0, int16_t w, int16_t h, - int16_t radius, uint16_t color); - void drawRotatedRect(int16_t cenX, int16_t cenY, int16_t w, int16_t h, - int16_t angleDeg, uint16_t color); - void fillRotatedRect(int16_t cenX, int16_t cenY, int16_t w, int16_t h, - int16_t angleDeg, uint16_t color); - void rotatePoint(int16_t &x0, int16_t &y0, int16_t angleDeg); - void drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, - int16_t h, uint16_t color); - void drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, - int16_t h, uint16_t color, uint16_t bg); - void drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, int16_t h, - uint16_t color); - void drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, int16_t h, - uint16_t color, uint16_t bg); - void drawXBitmap(int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, - int16_t h, uint16_t color); - void drawGrayscaleBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h); - void drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, - int16_t h); - void drawGrayscaleBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - const uint8_t mask[], int16_t w, int16_t h); - void drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, uint8_t *mask, - int16_t w, int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], int16_t w, - int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, int16_t w, - int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], - const uint8_t mask[], int16_t w, int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, uint8_t *mask, - int16_t w, int16_t h); - void drawChar(int16_t x, int16_t y, unsigned char c, uint16_t color, - uint16_t bg, uint8_t size); - void drawChar(int16_t x, int16_t y, unsigned char c, uint16_t color, - uint16_t bg, uint8_t size_x, uint8_t size_y); - void getTextBounds(const char *string, int16_t x, int16_t y, int16_t *x1, - int16_t *y1, uint16_t *w, uint16_t *h); - void getTextBounds(const __FlashStringHelper *s, int16_t x, int16_t y, - int16_t *x1, int16_t *y1, uint16_t *w, uint16_t *h); - void getTextBounds(const String &str, int16_t x, int16_t y, int16_t *x1, - int16_t *y1, uint16_t *w, uint16_t *h); - void setTextSize(uint8_t s); - void setTextSize(uint8_t sx, uint8_t sy); - void setFont(const GFXfont *f = NULL); - - /**********************************************************************/ - /*! - @brief Set text cursor location - @param x X coordinate in pixels - @param y Y coordinate in pixels - */ - /**********************************************************************/ - void setCursor(int16_t x, int16_t y) { - cursor_x = x; - cursor_y = y; - } - - /**********************************************************************/ - /*! - @brief Set text font color with transparant background - @param c 16-bit 5-6-5 Color to draw text with - @note For 'transparent' background, background and foreground - are set to same color rather than using a separate flag. - */ - /**********************************************************************/ - void setTextColor(uint16_t c) { textcolor = textbgcolor = c; } - - /**********************************************************************/ - /*! - @brief Set text font color with custom background color - @param c 16-bit 5-6-5 Color to draw text with - @param bg 16-bit 5-6-5 Color to draw background/fill with - */ - /**********************************************************************/ - void setTextColor(uint16_t c, uint16_t bg) { - textcolor = c; - textbgcolor = bg; - } - - /**********************************************************************/ - /*! - @brief Set whether text that is too long for the screen width should - automatically wrap around to the next line (else clip right). - @param w true for wrapping, false for clipping - */ - /**********************************************************************/ - void setTextWrap(bool w) { wrap = w; } - - /**********************************************************************/ - /*! - @brief Enable (or disable) Code Page 437-compatible charset. - There was an error in glcdfont.c for the longest time -- one - character (#176, the 'light shade' block) was missing -- this - threw off the index of every character that followed it. - But a TON of code has been written with the erroneous - character indices. By default, the library uses the original - 'wrong' behavior and old sketches will still work. Pass - 'true' to this function to use correct CP437 character values - in your code. - @param x true = enable (new behavior), false = disable (old behavior) - */ - /**********************************************************************/ - void cp437(bool x = true) { _cp437 = x; } - - using Print::write; -#if ARDUINO >= 100 - virtual size_t write(uint8_t); -#else - virtual void write(uint8_t); -#endif - - /************************************************************************/ - /*! - @brief Get width of the display, accounting for current rotation - @returns Width in pixels - */ - /************************************************************************/ - int16_t width(void) const { return _width; }; - - /************************************************************************/ - /*! - @brief Get height of the display, accounting for current rotation - @returns Height in pixels - */ - /************************************************************************/ - int16_t height(void) const { return _height; } - - /************************************************************************/ - /*! - @brief Get rotation setting for display - @returns 0 thru 3 corresponding to 4 cardinal rotations - */ - /************************************************************************/ - uint8_t getRotation(void) const { return rotation; } - - // get current cursor position (get rotation safe maximum values, - // using: width() for x, height() for y) - /************************************************************************/ - /*! - @brief Get text cursor X location - @returns X coordinate in pixels - */ - /************************************************************************/ - int16_t getCursorX(void) const { return cursor_x; } - - /************************************************************************/ - /*! - @brief Get text cursor Y location - @returns Y coordinate in pixels - */ - /************************************************************************/ - int16_t getCursorY(void) const { return cursor_y; }; - -protected: - void charBounds(unsigned char c, int16_t *x, int16_t *y, int16_t *minx, - int16_t *miny, int16_t *maxx, int16_t *maxy); - int16_t WIDTH; ///< This is the 'raw' display width - never changes - int16_t HEIGHT; ///< This is the 'raw' display height - never changes - int16_t _width; ///< Display width as modified by current rotation - int16_t _height; ///< Display height as modified by current rotation - int16_t cursor_x; ///< x location to start print()ing text - int16_t cursor_y; ///< y location to start print()ing text - uint16_t textcolor; ///< 16-bit background color for print() - uint16_t textbgcolor; ///< 16-bit text color for print() - uint8_t textsize_x; ///< Desired magnification in X-axis of text to print() - uint8_t textsize_y; ///< Desired magnification in Y-axis of text to print() - uint8_t rotation; ///< Display rotation (0 thru 3) - bool wrap; ///< If set, 'wrap' text at right edge of display - bool _cp437; ///< If set, use correct CP437 charset (default is off) - GFXfont *gfxFont; ///< Pointer to special font -}; - -/// A simple drawn button UI element -class Adafruit_GFX_Button { - -public: - Adafruit_GFX_Button(void); - // "Classic" initButton() uses center & size - void initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize); - void initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize_x, - uint8_t textsize_y); - // New/alt initButton() uses upper-left corner & size - void initButtonUL(Adafruit_GFX *gfx, int16_t x1, int16_t y1, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize); - void initButtonUL(Adafruit_GFX *gfx, int16_t x1, int16_t y1, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize_x, - uint8_t textsize_y); - void drawButton(bool inverted = false); - bool contains(int16_t x, int16_t y); - - /**********************************************************************/ - /*! - @brief Sets button state, should be done by some touch function - @param p True for pressed, false for not. - */ - /**********************************************************************/ - void press(bool p) { - laststate = currstate; - currstate = p; - } - - bool justPressed(); - bool justReleased(); - - /**********************************************************************/ - /*! - @brief Query whether the button is currently pressed - @returns True if pressed - */ - /**********************************************************************/ - bool isPressed(void) { return currstate; }; - -private: - Adafruit_GFX *_gfx; - int16_t _x1, _y1; // Coordinates of top-left corner - uint16_t _w, _h; - uint8_t _textsize_x; - uint8_t _textsize_y; - uint16_t _outlinecolor, _fillcolor, _textcolor; - char _label[10]; - - bool currstate, laststate; -}; - -/// A GFX 1-bit canvas context for graphics -class GFXcanvas1 : public Adafruit_GFX { -public: - GFXcanvas1(uint16_t w, uint16_t h, bool allocate_buffer = true); - ~GFXcanvas1(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillScreen(uint16_t color); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - bool getPixel(int16_t x, int16_t y) const; - /**********************************************************************/ - /*! - @brief Get a pointer to the internal buffer memory - @returns A pointer to the allocated buffer - */ - /**********************************************************************/ - uint8_t *getBuffer(void) const { return buffer; } - -protected: - bool getRawPixel(int16_t x, int16_t y) const; - void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint8_t *buffer; ///< Raster data: no longer private, allow subclass access - bool buffer_owned; ///< If true, destructor will free buffer, else it will do - ///< nothing - -private: -#ifdef __AVR__ - // Bitmask tables of 0x80>>X and ~(0x80>>X), because X>>Y is slow on AVR - static const uint8_t PROGMEM GFXsetBit[], GFXclrBit[]; -#endif -}; - -/// A GFX 8-bit canvas context for graphics -class GFXcanvas8 : public Adafruit_GFX { -public: - GFXcanvas8(uint16_t w, uint16_t h, bool allocate_buffer = true); - ~GFXcanvas8(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillScreen(uint16_t color); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint8_t getPixel(int16_t x, int16_t y) const; - /**********************************************************************/ - /*! - @brief Get a pointer to the internal buffer memory - @returns A pointer to the allocated buffer - */ - /**********************************************************************/ - uint8_t *getBuffer(void) const { return buffer; } - -protected: - uint8_t getRawPixel(int16_t x, int16_t y) const; - void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint8_t *buffer; ///< Raster data: no longer private, allow subclass access - bool buffer_owned; ///< If true, destructor will free buffer, else it will do - ///< nothing -}; - -/// A GFX 16-bit canvas context for graphics -class GFXcanvas16 : public Adafruit_GFX { -public: - GFXcanvas16(uint16_t w, uint16_t h, bool allocate_buffer = true); - ~GFXcanvas16(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillScreen(uint16_t color); - void byteSwap(void); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint16_t getPixel(int16_t x, int16_t y) const; - /**********************************************************************/ - /*! - @brief Get a pointer to the internal buffer memory - @returns A pointer to the allocated buffer - */ - /**********************************************************************/ - uint16_t *getBuffer(void) const { return buffer; } - -protected: - uint16_t getRawPixel(int16_t x, int16_t y) const; - void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint16_t *buffer; ///< Raster data: no longer private, allow subclass access - bool buffer_owned; ///< If true, destructor will free buffer, else it will do - ///< nothing -}; - -#endif // _ADAFRUIT_GFX_H diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.cpp b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.cpp deleted file mode 100644 index e3cbc72..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.cpp +++ /dev/null @@ -1,422 +0,0 @@ -/*! - * @file Adafruit_GrayOLED.cpp - * - * This is documentation for Adafruit's generic library for grayscale - * OLED displays: http://www.adafruit.com/category/63_98 - * - * These displays use I2C or SPI to communicate. I2C requires 2 pins - * (SCL+SDA) and optionally a RESET pin. SPI requires 4 pins (MOSI, SCK, - * select, data/command) and optionally a reset pin. Hardware SPI or - * 'bitbang' software SPI are both supported. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - * - */ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include "Adafruit_GrayOLED.h" -#include - -// SOME DEFINES AND STATIC VARIABLES USED INTERNALLY ----------------------- - -#define grayoled_swap(a, b) \ - (((a) ^= (b)), ((b) ^= (a)), ((a) ^= (b))) ///< No-temp-var swap operation - -// CONSTRUCTORS, DESTRUCTOR ------------------------------------------------ - -/*! - @brief Constructor for I2C-interfaced OLED displays. - @param bpp Bits per pixel, 1 for monochrome, 4 for 16-gray - @param w - Display width in pixels - @param h - Display height in pixels - @param twi - Pointer to an existing TwoWire instance (e.g. &Wire, the - microcontroller's primary I2C bus). - @param rst_pin - Reset pin (using Arduino pin numbering), or -1 if not used - (some displays might be wired to share the microcontroller's - reset pin). - @param clkDuring - Speed (in Hz) for Wire transmissions in library calls. - Defaults to 400000 (400 KHz), a known 'safe' value for most - microcontrollers, and meets the OLED datasheet spec. - Some systems can operate I2C faster (800 KHz for ESP32, 1 MHz - for many other 32-bit MCUs), and some (perhaps not all) - Many OLED's can work with this -- so it's optionally be specified - here and is not a default behavior. (Ignored if using pre-1.5.7 - Arduino software, which operates I2C at a fixed 100 KHz.) - @param clkAfter - Speed (in Hz) for Wire transmissions following library - calls. Defaults to 100000 (100 KHz), the default Arduino Wire - speed. This is done rather than leaving it at the 'during' speed - because other devices on the I2C bus might not be compatible - with the faster rate. (Ignored if using pre-1.5.7 Arduino - software, which operates I2C at a fixed 100 KHz.) - @note Call the object's begin() function before use -- buffer - allocation is performed there! -*/ -Adafruit_GrayOLED::Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, - TwoWire *twi, int16_t rst_pin, - uint32_t clkDuring, uint32_t clkAfter) - : Adafruit_GFX(w, h), i2c_preclk(clkDuring), i2c_postclk(clkAfter), - buffer(NULL), dcPin(-1), csPin(-1), rstPin(rst_pin), _bpp(bpp) { - i2c_dev = NULL; - _theWire = twi; -} - -/*! - @brief Constructor for SPI GrayOLED displays, using software (bitbang) - SPI. - @param bpp Bits per pixel, 1 for monochrome, 4 for 16-gray - @param w - Display width in pixels - @param h - Display height in pixels - @param mosi_pin - MOSI (master out, slave in) pin (using Arduino pin numbering). - This transfers serial data from microcontroller to display. - @param sclk_pin - SCLK (serial clock) pin (using Arduino pin numbering). - This clocks each bit from MOSI. - @param dc_pin - Data/command pin (using Arduino pin numbering), selects whether - display is receiving commands (low) or data (high). - @param rst_pin - Reset pin (using Arduino pin numbering), or -1 if not used - (some displays might be wired to share the microcontroller's - reset pin). - @param cs_pin - Chip-select pin (using Arduino pin numbering) for sharing the - bus with other devices. Active low. - @note Call the object's begin() function before use -- buffer - allocation is performed there! -*/ -Adafruit_GrayOLED::Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, - int16_t mosi_pin, int16_t sclk_pin, - int16_t dc_pin, int16_t rst_pin, - int16_t cs_pin) - : Adafruit_GFX(w, h), dcPin(dc_pin), csPin(cs_pin), rstPin(rst_pin), - _bpp(bpp) { - - spi_dev = new Adafruit_SPIDevice(cs_pin, sclk_pin, -1, mosi_pin, 1000000); -} - -/*! - @brief Constructor for SPI GrayOLED displays, using native hardware SPI. - @param bpp Bits per pixel, 1 for monochrome, 4 for 16-gray - @param w - Display width in pixels - @param h - Display height in pixels - @param spi - Pointer to an existing SPIClass instance (e.g. &SPI, the - microcontroller's primary SPI bus). - @param dc_pin - Data/command pin (using Arduino pin numbering), selects whether - display is receiving commands (low) or data (high). - @param rst_pin - Reset pin (using Arduino pin numbering), or -1 if not used - (some displays might be wired to share the microcontroller's - reset pin). - @param cs_pin - Chip-select pin (using Arduino pin numbering) for sharing the - bus with other devices. Active low. - @param bitrate - SPI clock rate for transfers to this display. Default if - unspecified is 8000000UL (8 MHz). - @note Call the object's begin() function before use -- buffer - allocation is performed there! -*/ -Adafruit_GrayOLED::Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, - SPIClass *spi, int16_t dc_pin, - int16_t rst_pin, int16_t cs_pin, - uint32_t bitrate) - : Adafruit_GFX(w, h), dcPin(dc_pin), csPin(cs_pin), rstPin(rst_pin), - _bpp(bpp) { - - spi_dev = new Adafruit_SPIDevice(cs_pin, bitrate, SPI_BITORDER_MSBFIRST, - SPI_MODE0, spi); -} - -/*! - @brief Destructor for Adafruit_GrayOLED object. -*/ -Adafruit_GrayOLED::~Adafruit_GrayOLED(void) { - if (buffer) { - free(buffer); - buffer = NULL; - } - if (spi_dev) - delete spi_dev; - if (i2c_dev) - delete i2c_dev; -} - -// LOW-LEVEL UTILS --------------------------------------------------------- - -/*! - @brief Issue single command byte to OLED, using I2C or hard/soft SPI as - needed. - @param c The single byte command -*/ -void Adafruit_GrayOLED::oled_command(uint8_t c) { - if (i2c_dev) { // I2C - uint8_t buf[2] = {0x00, c}; // Co = 0, D/C = 0 - i2c_dev->write(buf, 2); - } else { // SPI (hw or soft) -- transaction started in calling function - digitalWrite(dcPin, LOW); - spi_dev->write(&c, 1); - } -} - -// Issue list of commands to GrayOLED -/*! - @brief Issue multiple bytes of commands OLED, using I2C or hard/soft SPI as - needed. - @param c Pointer to the command array - @param n The number of bytes in the command array - @returns True for success on ability to write the data in I2C. -*/ - -bool Adafruit_GrayOLED::oled_commandList(const uint8_t *c, uint8_t n) { - if (i2c_dev) { // I2C - uint8_t dc_byte = 0x00; // Co = 0, D/C = 0 - if (!i2c_dev->write((uint8_t *)c, n, true, &dc_byte, 1)) { - return false; - } - } else { // SPI -- transaction started in calling function - digitalWrite(dcPin, LOW); - if (!spi_dev->write((uint8_t *)c, n)) { - return false; - } - } - return true; -} - -// ALLOCATE & INIT DISPLAY ------------------------------------------------- - -/*! - @brief Allocate RAM for image buffer, initialize peripherals and pins. - Note that subclasses must call this before other begin() init - @param addr - I2C address of corresponding oled display. - SPI displays (hardware or software) do not use addresses, but - this argument is still required. Default if unspecified is 0x3C. - @param reset - If true, and if the reset pin passed to the constructor is - valid, a hard reset will be performed before initializing the - display. If using multiple oled displays on the same bus, and - if they all share the same reset pin, you should only pass true - on the first display being initialized, false on all others, - else the already-initialized displays would be reset. Default if - unspecified is true. - @return true on successful allocation/init, false otherwise. - Well-behaved code should check the return value before - proceeding. - @note MUST call this function before any drawing or updates! -*/ -bool Adafruit_GrayOLED::_init(uint8_t addr, bool reset) { - - // attempt to malloc the bitmap framebuffer - if ((!buffer) && - !(buffer = (uint8_t *)malloc(_bpp * WIDTH * ((HEIGHT + 7) / 8)))) { - return false; - } - - // Reset OLED if requested and reset pin specified in constructor - if (reset && (rstPin >= 0)) { - pinMode(rstPin, OUTPUT); - digitalWrite(rstPin, HIGH); - delay(10); // VDD goes high at start, pause - digitalWrite(rstPin, LOW); // Bring reset low - delay(10); // Wait 10 ms - digitalWrite(rstPin, HIGH); // Bring out of reset - delay(10); - } - - // Setup pin directions - if (_theWire) { // using I2C - i2c_dev = new Adafruit_I2CDevice(addr, _theWire); - // look for i2c address: - if (!i2c_dev || !i2c_dev->begin()) { - return false; - } - } else { // Using one of the SPI modes, either soft or hardware - if (!spi_dev || !spi_dev->begin()) { - return false; - } - pinMode(dcPin, OUTPUT); // Set data/command pin as output - } - - clearDisplay(); - - // set max dirty window - window_x1 = 0; - window_y1 = 0; - window_x2 = WIDTH - 1; - window_y2 = HEIGHT - 1; - - return true; // Success -} - -// DRAWING FUNCTIONS ------------------------------------------------------- - -/*! - @brief Set/clear/invert a single pixel. This is also invoked by the - Adafruit_GFX library in generating many higher-level graphics - primitives. - @param x - Column of display -- 0 at left to (screen width - 1) at right. - @param y - Row of display -- 0 at top to (screen height -1) at bottom. - @param color - Pixel color, one of: MONOOLED_BLACK, MONOOLED_WHITE or - MONOOLED_INVERT. - @note Changes buffer contents only, no immediate effect on display. - Follow up with a call to display(), or with other graphics - commands as needed by one's own application. -*/ -void Adafruit_GrayOLED::drawPixel(int16_t x, int16_t y, uint16_t color) { - if ((x >= 0) && (x < width()) && (y >= 0) && (y < height())) { - // Pixel is in-bounds. Rotate coordinates if needed. - switch (getRotation()) { - case 1: - grayoled_swap(x, y); - x = WIDTH - x - 1; - break; - case 2: - x = WIDTH - x - 1; - y = HEIGHT - y - 1; - break; - case 3: - grayoled_swap(x, y); - y = HEIGHT - y - 1; - break; - } - - // adjust dirty window - window_x1 = min(window_x1, x); - window_y1 = min(window_y1, y); - window_x2 = max(window_x2, x); - window_y2 = max(window_y2, y); - - if (_bpp == 1) { - switch (color) { - case MONOOLED_WHITE: - buffer[x + (y / 8) * WIDTH] |= (1 << (y & 7)); - break; - case MONOOLED_BLACK: - buffer[x + (y / 8) * WIDTH] &= ~(1 << (y & 7)); - break; - case MONOOLED_INVERSE: - buffer[x + (y / 8) * WIDTH] ^= (1 << (y & 7)); - break; - } - } - if (_bpp == 4) { - uint8_t *pixelptr = &buffer[x / 2 + (y * WIDTH / 2)]; - // Serial.printf("(%d, %d) -> offset %d\n", x, y, x/2 + (y * WIDTH / 2)); - if (x % 2 == 0) { // even, left nibble - uint8_t t = pixelptr[0] & 0x0F; - t |= (color & 0xF) << 4; - pixelptr[0] = t; - } else { // odd, right lower nibble - uint8_t t = pixelptr[0] & 0xF0; - t |= color & 0xF; - pixelptr[0] = t; - } - } - } -} - -/*! - @brief Clear contents of display buffer (set all pixels to off). - @note Changes buffer contents only, no immediate effect on display. - Follow up with a call to display(), or with other graphics - commands as needed by one's own application. -*/ -void Adafruit_GrayOLED::clearDisplay(void) { - memset(buffer, 0, _bpp * WIDTH * ((HEIGHT + 7) / 8)); - // set max dirty window - window_x1 = 0; - window_y1 = 0; - window_x2 = WIDTH - 1; - window_y2 = HEIGHT - 1; -} - -/*! - @brief Return color of a single pixel in display buffer. - @param x - Column of display -- 0 at left to (screen width - 1) at right. - @param y - Row of display -- 0 at top to (screen height -1) at bottom. - @return true if pixel is set (usually MONOOLED_WHITE, unless display invert - mode is enabled), false if clear (MONOOLED_BLACK). - @note Reads from buffer contents; may not reflect current contents of - screen if display() has not been called. -*/ -bool Adafruit_GrayOLED::getPixel(int16_t x, int16_t y) { - if ((x >= 0) && (x < width()) && (y >= 0) && (y < height())) { - // Pixel is in-bounds. Rotate coordinates if needed. - switch (getRotation()) { - case 1: - grayoled_swap(x, y); - x = WIDTH - x - 1; - break; - case 2: - x = WIDTH - x - 1; - y = HEIGHT - y - 1; - break; - case 3: - grayoled_swap(x, y); - y = HEIGHT - y - 1; - break; - } - return (buffer[x + (y / 8) * WIDTH] & (1 << (y & 7))); - } - return false; // Pixel out of bounds -} - -/*! - @brief Get base address of display buffer for direct reading or writing. - @return Pointer to an unsigned 8-bit array, column-major, columns padded - to full byte boundary if needed. -*/ -uint8_t *Adafruit_GrayOLED::getBuffer(void) { return buffer; } - -// OTHER HARDWARE SETTINGS ------------------------------------------------- - -/*! - @brief Enable or disable display invert mode (white-on-black vs - black-on-white). Handy for testing! - @param i - If true, switch to invert mode (black-on-white), else normal - mode (white-on-black). - @note This has an immediate effect on the display, no need to call the - display() function -- buffer contents are not changed, rather a - different pixel mode of the display hardware is used. When - enabled, drawing MONOOLED_BLACK (value 0) pixels will actually draw - white, MONOOLED_WHITE (value 1) will draw black. -*/ -void Adafruit_GrayOLED::invertDisplay(bool i) { - oled_command(i ? GRAYOLED_INVERTDISPLAY : GRAYOLED_NORMALDISPLAY); -} - -/*! - @brief Adjust the display contrast. - @param level The contrast level from 0 to 0x7F - @note This has an immediate effect on the display, no need to call the - display() function -- buffer contents are not changed. -*/ -void Adafruit_GrayOLED::setContrast(uint8_t level) { - uint8_t cmd[] = {GRAYOLED_SETCONTRAST, level}; - oled_commandList(cmd, 2); -} - -#endif /* ATTIN85 not supported */ diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.h deleted file mode 100644 index 4c836a4..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.h +++ /dev/null @@ -1,101 +0,0 @@ -/*! - * @file Adafruit_GrayOLED.h - * - * This is part of for Adafruit's GFX library, supplying generic support - * for grayscale OLED displays: http://www.adafruit.com/category/63_98 - * - * These displays use I2C or SPI to communicate. I2C requires 2 pins - * (SCL+SDA) and optionally a RESET pin. SPI requires 4 pins (MOSI, SCK, - * select, data/command) and optionally a reset pin. Hardware SPI or - * 'bitbang' software SPI are both supported. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - * - * Written by Limor Fried/Ladyada for Adafruit Industries, with - * contributions from the open source community. - * - * BSD license, all text above, and the splash screen header file, - * must be included in any redistribution. - * - */ - -#ifndef _Adafruit_GRAYOLED_H_ -#define _Adafruit_GRAYOLED_H_ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include -#include -#include -#include -#include - -#define GRAYOLED_SETCONTRAST 0x81 ///< Generic contrast for almost all OLEDs -#define GRAYOLED_NORMALDISPLAY 0xA6 ///< Generic non-invert for almost all OLEDs -#define GRAYOLED_INVERTDISPLAY 0xA7 ///< Generic invert for almost all OLEDs - -#define MONOOLED_BLACK 0 ///< Default black 'color' for monochrome OLEDS -#define MONOOLED_WHITE 1 ///< Default white 'color' for monochrome OLEDS -#define MONOOLED_INVERSE 2 ///< Default inversion command for monochrome OLEDS - -/*! - @brief Class that stores state and functions for interacting with - generic grayscale OLED displays. -*/ -class Adafruit_GrayOLED : public Adafruit_GFX { -public: - Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, TwoWire *twi = &Wire, - int16_t rst_pin = -1, uint32_t preclk = 400000, - uint32_t postclk = 100000); - Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, int16_t mosi_pin, - int16_t sclk_pin, int16_t dc_pin, int16_t rst_pin, - int16_t cs_pin); - Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, SPIClass *spi, - int16_t dc_pin, int16_t rst_pin, int16_t cs_pin, - uint32_t bitrate = 8000000UL); - - ~Adafruit_GrayOLED(void); - - /** - @brief The function that sub-classes define that writes out the buffer to - the display over I2C or SPI - **/ - virtual void display(void) = 0; - void clearDisplay(void); - void invertDisplay(bool i); - void setContrast(uint8_t contrastlevel); - void drawPixel(int16_t x, int16_t y, uint16_t color); - bool getPixel(int16_t x, int16_t y); - uint8_t *getBuffer(void); - - void oled_command(uint8_t c); - bool oled_commandList(const uint8_t *c, uint8_t n); - -protected: - bool _init(uint8_t i2caddr = 0x3C, bool reset = true); - - Adafruit_SPIDevice *spi_dev = NULL; ///< The SPI interface BusIO device - Adafruit_I2CDevice *i2c_dev = NULL; ///< The I2C interface BusIO device - int32_t i2c_preclk = 400000, ///< Configurable 'high speed' I2C rate - i2c_postclk = 100000; ///< Configurable 'low speed' I2C rate - uint8_t *buffer = NULL; ///< Internal 1:1 framebuffer of display mem - - int16_t window_x1, ///< Dirty tracking window minimum x - window_y1, ///< Dirty tracking window minimum y - window_x2, ///< Dirty tracking window maximum x - window_y2; ///< Dirty tracking window maximum y - - int dcPin, ///< The Arduino pin connected to D/C (for SPI) - csPin, ///< The Arduino pin connected to CS (for SPI) - rstPin; ///< The Arduino pin connected to reset (-1 if unused) - - uint8_t _bpp = 1; ///< Bits per pixel color for this display -private: - TwoWire *_theWire = NULL; ///< The underlying hardware I2C -}; - -#endif // end __AVR_ATtiny85__ __AVR_ATtiny84__ -#endif // _Adafruit_GrayOLED_H_ diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.cpp b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.cpp deleted file mode 100644 index 870979b..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.cpp +++ /dev/null @@ -1,2621 +0,0 @@ -/*! - * @file Adafruit_SPITFT.cpp - * - * @mainpage Adafruit SPI TFT Displays (and some others) - * - * @section intro_sec Introduction - * - * Part of Adafruit's GFX graphics library. Originally this class was - * written to handle a range of color TFT displays connected via SPI, - * but over time this library and some display-specific subclasses have - * mutated to include some color OLEDs as well as parallel-interfaced - * displays. The name's been kept for the sake of older code. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - - * @section dependencies Dependencies - * - * This library depends on - * Adafruit_GFX - * being present on your system. Please make sure you have installed the latest - * version before using this library. - * - * @section author Author - * - * Written by Limor "ladyada" Fried for Adafruit Industries, - * with contributions from the open source community. - * - * @section license License - * - * BSD license, all text here must be included in any redistribution. - */ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include "Adafruit_SPITFT.h" - -#if defined(__AVR__) -#if defined(__AVR_XMEGA__) // only tested with __AVR_ATmega4809__ -#define AVR_WRITESPI(x) \ - for (SPI0_DATA = (x); (!(SPI0_INTFLAGS & _BV(SPI_IF_bp)));) -#elif defined(__LGT8F__) -#define AVR_WRITESPI(x) \ - SPDR = (x); \ - asm volatile("nop"); \ - while ((SPFR & _BV(RDEMPT))) \ - ; \ - SPFR = _BV(RDEMPT) | _BV(WREMPT) -#else -#define AVR_WRITESPI(x) for (SPDR = (x); (!(SPSR & _BV(SPIF)));) -#endif -#endif - -#if defined(PORT_IOBUS) -// On SAMD21, redefine digitalPinToPort() to use the slightly-faster -// PORT_IOBUS rather than PORT (not needed on SAMD51). -#undef digitalPinToPort -#define digitalPinToPort(P) (&(PORT_IOBUS->Group[g_APinDescription[P].ulPort])) -#endif // end PORT_IOBUS - -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) -// #pragma message ("GFX DMA IS ENABLED. HIGHLY EXPERIMENTAL.") -#include "wiring_private.h" // pinPeripheral() function -#include -#include // memalign() function -#define tcNum 2 // Timer/Counter for parallel write strobe PWM -#define wrPeripheral PIO_CCL // Use CCL to invert write strobe - -// DMA transfer-in-progress indicator and callback -static volatile bool dma_busy = false; -static void dma_callback(Adafruit_ZeroDMA *dma) { dma_busy = false; } - -#if defined(__SAMD51__) -// Timer/counter info by index # -static const struct { - Tc *tc; // -> Timer/Counter base address - int gclk; // GCLK ID - int evu; // EVSYS user ID -} tcList[] = {{TC0, TC0_GCLK_ID, EVSYS_ID_USER_TC0_EVU}, - {TC1, TC1_GCLK_ID, EVSYS_ID_USER_TC1_EVU}, - {TC2, TC2_GCLK_ID, EVSYS_ID_USER_TC2_EVU}, - {TC3, TC3_GCLK_ID, EVSYS_ID_USER_TC3_EVU}, -#if defined(TC4) - {TC4, TC4_GCLK_ID, EVSYS_ID_USER_TC4_EVU}, -#endif -#if defined(TC5) - {TC5, TC5_GCLK_ID, EVSYS_ID_USER_TC5_EVU}, -#endif -#if defined(TC6) - {TC6, TC6_GCLK_ID, EVSYS_ID_USER_TC6_EVU}, -#endif -#if defined(TC7) - {TC7, TC7_GCLK_ID, EVSYS_ID_USER_TC7_EVU} -#endif -}; -#define NUM_TIMERS (sizeof tcList / sizeof tcList[0]) ///< # timer/counters -#endif // end __SAMD51__ - -#endif // end USE_SPI_DMA - -// Possible values for Adafruit_SPITFT.connection: -#define TFT_HARD_SPI 0 ///< Display interface = hardware SPI -#define TFT_SOFT_SPI 1 ///< Display interface = software SPI -#define TFT_PARALLEL 2 ///< Display interface = 8- or 16-bit parallel - -// CONSTRUCTORS ------------------------------------------------------------ - -/*! - @brief Adafruit_SPITFT constructor for software (bitbang) SPI. - @param w Display width in pixels at default rotation setting (0). - @param h Display height in pixels at default rotation setting (0). - @param cs Arduino pin # for chip-select (-1 if unused, tie CS low). - @param dc Arduino pin # for data/command select (required). - @param mosi Arduino pin # for bitbang SPI MOSI signal (required). - @param sck Arduino pin # for bitbang SPI SCK signal (required). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @param miso Arduino pin # for bitbang SPI MISO signal (optional, - -1 default, many displays don't support SPI read). - @note Output pins are not initialized; application typically will - need to call subclass' begin() function, which in turn calls - this library's initSPI() function to initialize pins. -*/ -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t mosi, int8_t sck, int8_t rst, - int8_t miso) - : Adafruit_GFX(w, h), connection(TFT_SOFT_SPI), _rst(rst), _cs(cs), - _dc(dc) { - swspi._sck = sck; - swspi._mosi = mosi; - swspi._miso = miso; -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(CORE_TEENSY) -#if !defined(KINETISK) - dcPinMask = digitalPinToBitMask(dc); - swspi.sckPinMask = digitalPinToBitMask(sck); - swspi.mosiPinMask = digitalPinToBitMask(mosi); -#endif - dcPortSet = portSetRegister(dc); - dcPortClr = portClearRegister(dc); - swspi.sckPortSet = portSetRegister(sck); - swspi.sckPortClr = portClearRegister(sck); - swspi.mosiPortSet = portSetRegister(mosi); - swspi.mosiPortClr = portClearRegister(mosi); - if (cs >= 0) { -#if !defined(KINETISK) - csPinMask = digitalPinToBitMask(cs); -#endif - csPortSet = portSetRegister(cs); - csPortClr = portClearRegister(cs); - } else { -#if !defined(KINETISK) - csPinMask = 0; -#endif - csPortSet = dcPortSet; - csPortClr = dcPortClr; - } - if (miso >= 0) { - swspi.misoPort = portInputRegister(miso); -#if !defined(KINETISK) - swspi.misoPinMask = digitalPinToBitMask(miso); -#endif - } else { - swspi.misoPort = portInputRegister(dc); - } -#else // !CORE_TEENSY - dcPinMask = digitalPinToBitMask(dc); - swspi.sckPinMask = digitalPinToBitMask(sck); - swspi.mosiPinMask = digitalPinToBitMask(mosi); - dcPortSet = &(PORT->Group[g_APinDescription[dc].ulPort].OUTSET.reg); - dcPortClr = &(PORT->Group[g_APinDescription[dc].ulPort].OUTCLR.reg); - swspi.sckPortSet = &(PORT->Group[g_APinDescription[sck].ulPort].OUTSET.reg); - swspi.sckPortClr = &(PORT->Group[g_APinDescription[sck].ulPort].OUTCLR.reg); - swspi.mosiPortSet = &(PORT->Group[g_APinDescription[mosi].ulPort].OUTSET.reg); - swspi.mosiPortClr = &(PORT->Group[g_APinDescription[mosi].ulPort].OUTCLR.reg); - if (cs >= 0) { - csPinMask = digitalPinToBitMask(cs); - csPortSet = &(PORT->Group[g_APinDescription[cs].ulPort].OUTSET.reg); - csPortClr = &(PORT->Group[g_APinDescription[cs].ulPort].OUTCLR.reg); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPortSet = dcPortSet; - csPortClr = dcPortClr; - csPinMask = 0; - } - if (miso >= 0) { - swspi.misoPinMask = digitalPinToBitMask(miso); - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(miso)); - } else { - swspi.misoPinMask = 0; - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(dc)); - } -#endif // end !CORE_TEENSY -#else // !HAS_PORT_SET_CLR - dcPort = (PORTreg_t)portOutputRegister(digitalPinToPort(dc)); - dcPinMaskSet = digitalPinToBitMask(dc); - swspi.sckPort = (PORTreg_t)portOutputRegister(digitalPinToPort(sck)); - swspi.sckPinMaskSet = digitalPinToBitMask(sck); - swspi.mosiPort = (PORTreg_t)portOutputRegister(digitalPinToPort(mosi)); - swspi.mosiPinMaskSet = digitalPinToBitMask(mosi); - if (cs >= 0) { - csPort = (PORTreg_t)portOutputRegister(digitalPinToPort(cs)); - csPinMaskSet = digitalPinToBitMask(cs); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPort = dcPort; - csPinMaskSet = 0; - } - if (miso >= 0) { - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(miso)); - swspi.misoPinMask = digitalPinToBitMask(miso); - } else { - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(dc)); - swspi.misoPinMask = 0; - } - csPinMaskClr = ~csPinMaskSet; - dcPinMaskClr = ~dcPinMaskSet; - swspi.sckPinMaskClr = ~swspi.sckPinMaskSet; - swspi.mosiPinMaskClr = ~swspi.mosiPinMaskSet; -#endif // !end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -} - -/*! - @brief Adafruit_SPITFT constructor for hardware SPI using the board's - default SPI peripheral. - @param w Display width in pixels at default rotation setting (0). - @param h Display height in pixels at default rotation setting (0). - @param cs Arduino pin # for chip-select (-1 if unused, tie CS low). - @param dc Arduino pin # for data/command select (required). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @note Output pins are not initialized; application typically will - need to call subclass' begin() function, which in turn calls - this library's initSPI() function to initialize pins. -*/ -#if defined(ESP8266) // See notes below -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t rst) - : Adafruit_GFX(w, h), connection(TFT_HARD_SPI), _rst(rst), _cs(cs), - _dc(dc) { - hwspi._spi = &SPI; -} -#else // !ESP8266 -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t rst) - : Adafruit_SPITFT(w, h, &SPI, cs, dc, rst) { - // This just invokes the hardware SPI constructor below, - // passing the default SPI device (&SPI). -} -#endif // end !ESP8266 - -#if !defined(ESP8266) -// ESP8266 compiler freaks out at this constructor -- it can't disambiguate -// beteween the SPIClass pointer (argument #3) and a regular integer. -// Solution here it to just not offer this variant on the ESP8266. You can -// use the default hardware SPI peripheral, or you can use software SPI, -// but if there's any library out there that creates a 'virtual' SPIClass -// peripheral and drives it with software bitbanging, that's not supported. -/*! - @brief Adafruit_SPITFT constructor for hardware SPI using a specific - SPI peripheral. - @param w Display width in pixels at default rotation (0). - @param h Display height in pixels at default rotation (0). - @param spiClass Pointer to SPIClass type (e.g. &SPI or &SPI1). - @param cs Arduino pin # for chip-select (-1 if unused, tie CS low). - @param dc Arduino pin # for data/command select (required). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @note Output pins are not initialized in constructor; application - typically will need to call subclass' begin() function, which - in turn calls this library's initSPI() function to initialize - pins. EXCEPT...if you have built your own SERCOM SPI peripheral - (calling the SPIClass constructor) rather than one of the - built-in SPI devices (e.g. &SPI, &SPI1 and so forth), you will - need to call the begin() function for your object as well as - pinPeripheral() for the MOSI, MISO and SCK pins to configure - GPIO manually. Do this BEFORE calling the display-specific - begin or init function. Unfortunate but unavoidable. -*/ -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, SPIClass *spiClass, - int8_t cs, int8_t dc, int8_t rst) - : Adafruit_GFX(w, h), connection(TFT_HARD_SPI), _rst(rst), _cs(cs), - _dc(dc) { - hwspi._spi = spiClass; -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(CORE_TEENSY) -#if !defined(KINETISK) - dcPinMask = digitalPinToBitMask(dc); -#endif - dcPortSet = portSetRegister(dc); - dcPortClr = portClearRegister(dc); - if (cs >= 0) { -#if !defined(KINETISK) - csPinMask = digitalPinToBitMask(cs); -#endif - csPortSet = portSetRegister(cs); - csPortClr = portClearRegister(cs); - } else { // see comments below -#if !defined(KINETISK) - csPinMask = 0; -#endif - csPortSet = dcPortSet; - csPortClr = dcPortClr; - } -#else // !CORE_TEENSY - dcPinMask = digitalPinToBitMask(dc); - dcPortSet = &(PORT->Group[g_APinDescription[dc].ulPort].OUTSET.reg); - dcPortClr = &(PORT->Group[g_APinDescription[dc].ulPort].OUTCLR.reg); - if (cs >= 0) { - csPinMask = digitalPinToBitMask(cs); - csPortSet = &(PORT->Group[g_APinDescription[cs].ulPort].OUTSET.reg); - csPortClr = &(PORT->Group[g_APinDescription[cs].ulPort].OUTCLR.reg); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPortSet = dcPortSet; - csPortClr = dcPortClr; - csPinMask = 0; - } -#endif // end !CORE_TEENSY -#else // !HAS_PORT_SET_CLR - dcPort = (PORTreg_t)portOutputRegister(digitalPinToPort(dc)); - dcPinMaskSet = digitalPinToBitMask(dc); - if (cs >= 0) { - csPort = (PORTreg_t)portOutputRegister(digitalPinToPort(cs)); - csPinMaskSet = digitalPinToBitMask(cs); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPort = dcPort; - csPinMaskSet = 0; - } - csPinMaskClr = ~csPinMaskSet; - dcPinMaskClr = ~dcPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -} -#endif // end !ESP8266 - -/*! - @brief Adafruit_SPITFT constructor for parallel display connection. - @param w Display width in pixels at default rotation (0). - @param h Display height in pixels at default rotation (0). - @param busWidth If tft16 (enumeration in header file), is a 16-bit - parallel connection, else 8-bit. - 16-bit isn't fully implemented or tested yet so - applications should pass "tft8bitbus" for now...needed to - stick a required enum argument in there to - disambiguate this constructor from the soft-SPI case. - Argument is ignored on 8-bit architectures (no 'wide' - support there since PORTs are 8 bits anyway). - @param d0 Arduino pin # for data bit 0 (1+ are extrapolated). - The 8 (or 16) data bits MUST be contiguous and byte- - aligned (or word-aligned for wide interface) within - the same PORT register (might not correspond to - Arduino pin sequence). - @param wr Arduino pin # for write strobe (required). - @param dc Arduino pin # for data/command select (required). - @param cs Arduino pin # for chip-select (optional, -1 if unused, - tie CS low). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @param rd Arduino pin # for read strobe (optional, -1 if unused). - @note Output pins are not initialized; application typically will need - to call subclass' begin() function, which in turn calls this - library's initSPI() function to initialize pins. - Yes, the name is a misnomer...this library originally handled - only SPI displays, parallel being a recent addition (but not - wanting to break existing code). -*/ -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, tftBusWidth busWidth, - int8_t d0, int8_t wr, int8_t dc, int8_t cs, - int8_t rst, int8_t rd) - : Adafruit_GFX(w, h), connection(TFT_PARALLEL), _rst(rst), _cs(cs), - _dc(dc) { - tft8._d0 = d0; - tft8._wr = wr; - tft8._rd = rd; - tft8.wide = (busWidth == tft16bitbus); -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(CORE_TEENSY) - tft8.wrPortSet = portSetRegister(wr); - tft8.wrPortClr = portClearRegister(wr); -#if !defined(KINETISK) - dcPinMask = digitalPinToBitMask(dc); -#endif - dcPortSet = portSetRegister(dc); - dcPortClr = portClearRegister(dc); - if (cs >= 0) { -#if !defined(KINETISK) - csPinMask = digitalPinToBitMask(cs); -#endif - csPortSet = portSetRegister(cs); - csPortClr = portClearRegister(cs); - } else { // see comments below -#if !defined(KINETISK) - csPinMask = 0; -#endif - csPortSet = dcPortSet; - csPortClr = dcPortClr; - } - if (rd >= 0) { // if read-strobe pin specified... -#if defined(KINETISK) - tft8.rdPinMask = 1; -#else // !KINETISK - tft8.rdPinMask = digitalPinToBitMask(rd); -#endif - tft8.rdPortSet = portSetRegister(rd); - tft8.rdPortClr = portClearRegister(rd); - } else { - tft8.rdPinMask = 0; - tft8.rdPortSet = dcPortSet; - tft8.rdPortClr = dcPortClr; - } - // These are all uint8_t* pointers -- elsewhere they're recast - // as necessary if a 'wide' 16-bit interface is in use. - tft8.writePort = portOutputRegister(d0); - tft8.readPort = portInputRegister(d0); - tft8.dirSet = portModeRegister(d0); - tft8.dirClr = portModeRegister(d0); -#else // !CORE_TEENSY - tft8.wrPinMask = digitalPinToBitMask(wr); - tft8.wrPortSet = &(PORT->Group[g_APinDescription[wr].ulPort].OUTSET.reg); - tft8.wrPortClr = &(PORT->Group[g_APinDescription[wr].ulPort].OUTCLR.reg); - dcPinMask = digitalPinToBitMask(dc); - dcPortSet = &(PORT->Group[g_APinDescription[dc].ulPort].OUTSET.reg); - dcPortClr = &(PORT->Group[g_APinDescription[dc].ulPort].OUTCLR.reg); - if (cs >= 0) { - csPinMask = digitalPinToBitMask(cs); - csPortSet = &(PORT->Group[g_APinDescription[cs].ulPort].OUTSET.reg); - csPortClr = &(PORT->Group[g_APinDescription[cs].ulPort].OUTCLR.reg); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPortSet = dcPortSet; - csPortClr = dcPortClr; - csPinMask = 0; - } - if (rd >= 0) { // if read-strobe pin specified... - tft8.rdPinMask = digitalPinToBitMask(rd); - tft8.rdPortSet = &(PORT->Group[g_APinDescription[rd].ulPort].OUTSET.reg); - tft8.rdPortClr = &(PORT->Group[g_APinDescription[rd].ulPort].OUTCLR.reg); - } else { - tft8.rdPinMask = 0; - tft8.rdPortSet = dcPortSet; - tft8.rdPortClr = dcPortClr; - } - // Get pointers to PORT write/read/dir bytes within 32-bit PORT - uint8_t dBit = g_APinDescription[d0].ulPin; // d0 bit # in PORT - PortGroup *p = (&(PORT->Group[g_APinDescription[d0].ulPort])); - uint8_t offset = dBit / 8; // d[7:0] byte # within PORT - if (tft8.wide) - offset &= ~1; // d[15:8] byte # within PORT - // These are all uint8_t* pointers -- elsewhere they're recast - // as necessary if a 'wide' 16-bit interface is in use. - tft8.writePort = (volatile uint8_t *)&(p->OUT.reg) + offset; - tft8.readPort = (volatile uint8_t *)&(p->IN.reg) + offset; - tft8.dirSet = (volatile uint8_t *)&(p->DIRSET.reg) + offset; - tft8.dirClr = (volatile uint8_t *)&(p->DIRCLR.reg) + offset; -#endif // end !CORE_TEENSY -#else // !HAS_PORT_SET_CLR - tft8.wrPort = (PORTreg_t)portOutputRegister(digitalPinToPort(wr)); - tft8.wrPinMaskSet = digitalPinToBitMask(wr); - dcPort = (PORTreg_t)portOutputRegister(digitalPinToPort(dc)); - dcPinMaskSet = digitalPinToBitMask(dc); - if (cs >= 0) { - csPort = (PORTreg_t)portOutputRegister(digitalPinToPort(cs)); - csPinMaskSet = digitalPinToBitMask(cs); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPort = dcPort; - csPinMaskSet = 0; - } - if (rd >= 0) { // if read-strobe pin specified... - tft8.rdPort = (PORTreg_t)portOutputRegister(digitalPinToPort(rd)); - tft8.rdPinMaskSet = digitalPinToBitMask(rd); - } else { - tft8.rdPort = dcPort; - tft8.rdPinMaskSet = 0; - } - csPinMaskClr = ~csPinMaskSet; - dcPinMaskClr = ~dcPinMaskSet; - tft8.wrPinMaskClr = ~tft8.wrPinMaskSet; - tft8.rdPinMaskClr = ~tft8.rdPinMaskSet; - tft8.writePort = (PORTreg_t)portOutputRegister(digitalPinToPort(d0)); - tft8.readPort = (PORTreg_t)portInputRegister(digitalPinToPort(d0)); - tft8.portDir = (PORTreg_t)portModeRegister(digitalPinToPort(d0)); -#endif // end !HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -} - -// end constructors ------- - -// CLASS MEMBER FUNCTIONS -------------------------------------------------- - -// begin() and setAddrWindow() MUST be declared by any subclass. - -/*! - @brief Configure microcontroller pins for TFT interfacing. Typically - called by a subclass' begin() function. - @param freq SPI frequency when using hardware SPI. If default (0) - is passed, will fall back on a device-specific value. - Value is ignored when using software SPI or parallel - connection. - @param spiMode SPI mode when using hardware SPI. MUST be one of the - values SPI_MODE0, SPI_MODE1, SPI_MODE2 or SPI_MODE3 - defined in SPI.h. Do NOT attempt to pass '0' for - SPI_MODE0 and so forth...the values are NOT the same! - Use ONLY the defines! (Pity it's not an enum.) - @note Another anachronistically-named function; this is called even - when the display connection is parallel (not SPI). Also, this - could probably be made private...quite a few class functions - were generously put in the public section. -*/ -void Adafruit_SPITFT::initSPI(uint32_t freq, uint8_t spiMode) { - - if (!freq) - freq = DEFAULT_SPI_FREQ; // If no freq specified, use default - - // Init basic control pins common to all connection types - if (_cs >= 0) { - pinMode(_cs, OUTPUT); - digitalWrite(_cs, HIGH); // Deselect - } - pinMode(_dc, OUTPUT); - digitalWrite(_dc, HIGH); // Data mode - - if (connection == TFT_HARD_SPI) { - -#if defined(SPI_HAS_TRANSACTION) - hwspi.settings = SPISettings(freq, MSBFIRST, spiMode); -#else - hwspi._freq = freq; // Save freq value for later -#endif - hwspi._mode = spiMode; // Save spiMode value for later - // Call hwspi._spi->begin() ONLY if this is among the 'established' - // SPI interfaces in variant.h. For DIY roll-your-own SERCOM SPIs, - // begin() and pinPeripheral() calls MUST be made in one's calling - // code, BEFORE the screen-specific begin/init function is called. - // Reason for this is that SPI::begin() makes its own calls to - // pinPeripheral() based on g_APinDescription[n].ulPinType, which - // on non-established SPI interface pins will always be PIO_DIGITAL - // or similar, while we need PIO_SERCOM or PIO_SERCOM_ALT...it's - // highly unique between devices and variants for each pin or - // SERCOM so we can't make those calls ourselves here. And the SPI - // device needs to be set up before calling this because it's - // immediately followed with initialization commands. Blargh. - if ( -#if !defined(SPI_INTERFACES_COUNT) - 1 -#else -#if SPI_INTERFACES_COUNT > 0 - (hwspi._spi == &SPI) -#endif -#if SPI_INTERFACES_COUNT > 1 - || (hwspi._spi == &SPI1) -#endif -#if SPI_INTERFACES_COUNT > 2 - || (hwspi._spi == &SPI2) -#endif -#if SPI_INTERFACES_COUNT > 3 - || (hwspi._spi == &SPI3) -#endif -#if SPI_INTERFACES_COUNT > 4 - || (hwspi._spi == &SPI4) -#endif -#if SPI_INTERFACES_COUNT > 5 - || (hwspi._spi == &SPI5) -#endif -#endif // end SPI_INTERFACES_COUNT - ) { - hwspi._spi->begin(); - } - } else if (connection == TFT_SOFT_SPI) { - - pinMode(swspi._mosi, OUTPUT); - digitalWrite(swspi._mosi, LOW); - pinMode(swspi._sck, OUTPUT); - digitalWrite(swspi._sck, LOW); - if (swspi._miso >= 0) { - pinMode(swspi._miso, INPUT); - } - - } else { // TFT_PARALLEL - // Initialize data pins. We were only passed d0, so scan - // the pin description list looking for the other pins. - // They'll be on the same PORT, and within the next 7 (or 15) bits - // (because we need to write to a contiguous PORT byte or word). -#if defined(__AVR__) - // PORT registers are 8 bits wide, so just need a register match... - for (uint8_t i = 0; i < NUM_DIGITAL_PINS; i++) { - if ((PORTreg_t)portOutputRegister(digitalPinToPort(i)) == - tft8.writePort) { - pinMode(i, OUTPUT); - digitalWrite(i, LOW); - } - } -#elif defined(USE_FAST_PINIO) -#if defined(CORE_TEENSY) - if (!tft8.wide) { - *tft8.dirSet = 0xFF; // Set port to output - *tft8.writePort = 0x00; // Write all 0s - } else { - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; - *(volatile uint16_t *)tft8.writePort = 0x0000; - } -#else // !CORE_TEENSY - uint8_t portNum = g_APinDescription[tft8._d0].ulPort, // d0 PORT # - dBit = g_APinDescription[tft8._d0].ulPin, // d0 bit in PORT - lastBit = dBit + (tft8.wide ? 15 : 7); - for (uint8_t i = 0; i < PINS_COUNT; i++) { - if ((g_APinDescription[i].ulPort == portNum) && - (g_APinDescription[i].ulPin >= dBit) && - (g_APinDescription[i].ulPin <= (uint32_t)lastBit)) { - pinMode(i, OUTPUT); - digitalWrite(i, LOW); - } - } -#endif // end !CORE_TEENSY -#endif - pinMode(tft8._wr, OUTPUT); - digitalWrite(tft8._wr, HIGH); - if (tft8._rd >= 0) { - pinMode(tft8._rd, OUTPUT); - digitalWrite(tft8._rd, HIGH); - } - } - - if (_rst >= 0) { - // Toggle _rst low to reset - pinMode(_rst, OUTPUT); - digitalWrite(_rst, HIGH); - delay(100); - digitalWrite(_rst, LOW); - delay(100); - digitalWrite(_rst, HIGH); - delay(200); - } - -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - if (((connection == TFT_HARD_SPI) || (connection == TFT_PARALLEL)) && - (dma.allocate() == DMA_STATUS_OK)) { // Allocate channel - // The DMA library needs to alloc at least one valid descriptor, - // so we do that here. It's not used in the usual sense though, - // just before a transfer we copy descriptor[0] to this address. - if (dptr = dma.addDescriptor(NULL, NULL, 42, DMA_BEAT_SIZE_BYTE, false, - false)) { - // Alloc 2 scanlines worth of pixels on display's major axis, - // whichever that is, rounding each up to 2-pixel boundary. - int major = (WIDTH > HEIGHT) ? WIDTH : HEIGHT; - major += (major & 1); // -> next 2-pixel bound, if needed. - maxFillLen = major * 2; // 2 scanlines - // Note to future self: if you decide to make the pixel buffer - // much larger, remember that DMA transfer descriptors can't - // exceed 65,535 bytes (not 65,536), meaning 32,767 pixels max. - // Not that we have that kind of RAM to throw around right now. - if ((pixelBuf[0] = (uint16_t *)malloc(maxFillLen * sizeof(uint16_t)))) { - // Alloc OK. Get pointer to start of second scanline. - pixelBuf[1] = &pixelBuf[0][major]; - // Determine number of DMA descriptors needed to cover - // entire screen when entire 2-line pixelBuf is used - // (round up for fractional last descriptor). - int numDescriptors = (WIDTH * HEIGHT + (maxFillLen - 1)) / maxFillLen; - // DMA descriptors MUST be 128-bit (16 byte) aligned. - // memalign() is considered obsolete but it's replacements - // (aligned_alloc() or posix_memalign()) are not currently - // available in the version of ARM GCC in use, but this - // is, so here we are. - if ((descriptor = (DmacDescriptor *)memalign( - 16, numDescriptors * sizeof(DmacDescriptor)))) { - int dmac_id; - volatile uint32_t *data_reg; - - if (connection == TFT_HARD_SPI) { - // THIS IS AN AFFRONT TO NATURE, but I don't know - // any "clean" way to get the sercom number from the - // the SPIClass pointer (e.g. &SPI or &SPI1), which - // is all we have to work with. SPIClass does contain - // a SERCOM pointer but it is a PRIVATE member! - // Doing an UNSPEAKABLY HORRIBLE THING here, directly - // accessing the first 32-bit value in the SPIClass - // structure, knowing that's (currently) where the - // SERCOM pointer lives, but this ENTIRELY DEPENDS on - // that structure not changing nor the compiler - // rearranging things. Oh the humanity! - - if (*(SERCOM **)hwspi._spi == &sercom0) { - dmac_id = SERCOM0_DMAC_ID_TX; - data_reg = &SERCOM0->SPI.DATA.reg; -#if defined SERCOM1 - } else if (*(SERCOM **)hwspi._spi == &sercom1) { - dmac_id = SERCOM1_DMAC_ID_TX; - data_reg = &SERCOM1->SPI.DATA.reg; -#endif -#if defined SERCOM2 - } else if (*(SERCOM **)hwspi._spi == &sercom2) { - dmac_id = SERCOM2_DMAC_ID_TX; - data_reg = &SERCOM2->SPI.DATA.reg; -#endif -#if defined SERCOM3 - } else if (*(SERCOM **)hwspi._spi == &sercom3) { - dmac_id = SERCOM3_DMAC_ID_TX; - data_reg = &SERCOM3->SPI.DATA.reg; -#endif -#if defined SERCOM4 - } else if (*(SERCOM **)hwspi._spi == &sercom4) { - dmac_id = SERCOM4_DMAC_ID_TX; - data_reg = &SERCOM4->SPI.DATA.reg; -#endif -#if defined SERCOM5 - } else if (*(SERCOM **)hwspi._spi == &sercom5) { - dmac_id = SERCOM5_DMAC_ID_TX; - data_reg = &SERCOM5->SPI.DATA.reg; -#endif -#if defined SERCOM6 - } else if (*(SERCOM **)hwspi._spi == &sercom6) { - dmac_id = SERCOM6_DMAC_ID_TX; - data_reg = &SERCOM6->SPI.DATA.reg; -#endif -#if defined SERCOM7 - } else if (*(SERCOM **)hwspi._spi == &sercom7) { - dmac_id = SERCOM7_DMAC_ID_TX; - data_reg = &SERCOM7->SPI.DATA.reg; -#endif - } - dma.setPriority(DMA_PRIORITY_3); - dma.setTrigger(dmac_id); - dma.setAction(DMA_TRIGGER_ACTON_BEAT); - - // Initialize descriptor list. - for (int d = 0; d < numDescriptors; d++) { - // No need to set SRCADDR, DESCADDR or BTCNT -- - // those are done in the pixel-writing functions. - descriptor[d].BTCTRL.bit.VALID = true; - descriptor[d].BTCTRL.bit.EVOSEL = DMA_EVENT_OUTPUT_DISABLE; - descriptor[d].BTCTRL.bit.BLOCKACT = DMA_BLOCK_ACTION_NOACT; - descriptor[d].BTCTRL.bit.BEATSIZE = DMA_BEAT_SIZE_BYTE; - descriptor[d].BTCTRL.bit.DSTINC = 0; - descriptor[d].BTCTRL.bit.STEPSEL = DMA_STEPSEL_SRC; - descriptor[d].BTCTRL.bit.STEPSIZE = - DMA_ADDRESS_INCREMENT_STEP_SIZE_1; - descriptor[d].DSTADDR.reg = (uint32_t)data_reg; - } - - } else { // Parallel connection - -#if defined(__SAMD51__) - int dmaChannel = dma.getChannel(); - // Enable event output, use EVOSEL output - DMAC->Channel[dmaChannel].CHEVCTRL.bit.EVOE = 1; - DMAC->Channel[dmaChannel].CHEVCTRL.bit.EVOMODE = 0; - - // CONFIGURE TIMER/COUNTER (for write strobe) - - Tc *timer = tcList[tcNum].tc; // -> Timer struct - int id = tcList[tcNum].gclk; // Timer GCLK ID - GCLK_PCHCTRL_Type pchctrl; - - // Set up timer clock source from GCLK - GCLK->PCHCTRL[id].bit.CHEN = 0; // Stop timer - while (GCLK->PCHCTRL[id].bit.CHEN) - ; // Wait for it - pchctrl.bit.GEN = GCLK_PCHCTRL_GEN_GCLK0_Val; - pchctrl.bit.CHEN = 1; // Enable - GCLK->PCHCTRL[id].reg = pchctrl.reg; - while (!GCLK->PCHCTRL[id].bit.CHEN) - ; // Wait for it - - // Disable timer/counter before configuring it - timer->COUNT8.CTRLA.bit.ENABLE = 0; - while (timer->COUNT8.SYNCBUSY.bit.STATUS) - ; - - timer->COUNT8.WAVE.bit.WAVEGEN = 2; // NPWM - timer->COUNT8.CTRLA.bit.MODE = 1; // 8-bit - timer->COUNT8.CTRLA.bit.PRESCALER = 0; // 1:1 - while (timer->COUNT8.SYNCBUSY.bit.STATUS) - ; - - timer->COUNT8.CTRLBCLR.bit.DIR = 1; // Count UP - while (timer->COUNT8.SYNCBUSY.bit.CTRLB) - ; - timer->COUNT8.CTRLBSET.bit.ONESHOT = 1; // One-shot - while (timer->COUNT8.SYNCBUSY.bit.CTRLB) - ; - timer->COUNT8.PER.reg = 6; // PWM top - while (timer->COUNT8.SYNCBUSY.bit.PER) - ; - timer->COUNT8.CC[0].reg = 2; // Compare - while (timer->COUNT8.SYNCBUSY.bit.CC0) - ; - // Enable async input events, - // event action = restart. - timer->COUNT8.EVCTRL.bit.TCEI = 1; - timer->COUNT8.EVCTRL.bit.EVACT = 1; - - // Enable timer - timer->COUNT8.CTRLA.reg |= TC_CTRLA_ENABLE; - while (timer->COUNT8.SYNCBUSY.bit.STATUS) - ; - -#if (wrPeripheral == PIO_CCL) - // CONFIGURE CCL (inverts timer/counter output) - - MCLK->APBCMASK.bit.CCL_ = 1; // Enable CCL clock - CCL->CTRL.bit.ENABLE = 0; // Disable to config - CCL->CTRL.bit.SWRST = 1; // Reset CCL registers - CCL->LUTCTRL[tcNum].bit.ENABLE = 0; // Disable LUT - CCL->LUTCTRL[tcNum].bit.FILTSEL = 0; // No filter - CCL->LUTCTRL[tcNum].bit.INSEL0 = 6; // TC input - CCL->LUTCTRL[tcNum].bit.INSEL1 = 0; // MASK - CCL->LUTCTRL[tcNum].bit.INSEL2 = 0; // MASK - CCL->LUTCTRL[tcNum].bit.TRUTH = 1; // Invert in 0 - CCL->LUTCTRL[tcNum].bit.ENABLE = 1; // Enable LUT - CCL->CTRL.bit.ENABLE = 1; // Enable CCL -#endif - - // CONFIGURE EVENT SYSTEM - - // Set up event system clock source from GCLK... - // Disable EVSYS, wait for disable - GCLK->PCHCTRL[EVSYS_GCLK_ID_0].bit.CHEN = 0; - while (GCLK->PCHCTRL[EVSYS_GCLK_ID_0].bit.CHEN) - ; - pchctrl.bit.GEN = GCLK_PCHCTRL_GEN_GCLK0_Val; - pchctrl.bit.CHEN = 1; // Re-enable - GCLK->PCHCTRL[EVSYS_GCLK_ID_0].reg = pchctrl.reg; - // Wait for it, then enable EVSYS clock - while (!GCLK->PCHCTRL[EVSYS_GCLK_ID_0].bit.CHEN) - ; - MCLK->APBBMASK.bit.EVSYS_ = 1; - - // Connect Timer EVU to ch 0 - EVSYS->USER[tcList[tcNum].evu].reg = 1; - // Datasheet recommends single write operation; - // reg instead of bit. Also datasheet: PATH bits - // must be zero when using async! - EVSYS_CHANNEL_Type ev; - ev.reg = 0; - ev.bit.PATH = 2; // Asynchronous - ev.bit.EVGEN = 0x22 + dmaChannel; // DMA channel 0+ - EVSYS->Channel[0].CHANNEL.reg = ev.reg; - - // Initialize descriptor list. - for (int d = 0; d < numDescriptors; d++) { - // No need to set SRCADDR, DESCADDR or BTCNT -- - // those are done in the pixel-writing functions. - descriptor[d].BTCTRL.bit.VALID = true; - // Event strobe on beat xfer: - descriptor[d].BTCTRL.bit.EVOSEL = 0x3; - descriptor[d].BTCTRL.bit.BLOCKACT = DMA_BLOCK_ACTION_NOACT; - descriptor[d].BTCTRL.bit.BEATSIZE = - tft8.wide ? DMA_BEAT_SIZE_HWORD : DMA_BEAT_SIZE_BYTE; - descriptor[d].BTCTRL.bit.SRCINC = 1; - descriptor[d].BTCTRL.bit.DSTINC = 0; - descriptor[d].BTCTRL.bit.STEPSEL = DMA_STEPSEL_SRC; - descriptor[d].BTCTRL.bit.STEPSIZE = - DMA_ADDRESS_INCREMENT_STEP_SIZE_1; - descriptor[d].DSTADDR.reg = (uint32_t)tft8.writePort; - } -#endif // __SAMD51 - } // end parallel-specific DMA setup - - lastFillColor = 0x0000; - lastFillLen = 0; - dma.setCallback(dma_callback); - return; // Success! - // else clean up any partial allocation... - } // end descriptor memalign() - free(pixelBuf[0]); - pixelBuf[0] = pixelBuf[1] = NULL; - } // end pixelBuf malloc() - // Don't currently have a descriptor delete function in - // ZeroDMA lib, but if we did, it would be called here. - } // end addDescriptor() - dma.free(); // Deallocate DMA channel - } -#endif // end USE_SPI_DMA -} - -/*! - @brief Allow changing the SPI clock speed after initialization - @param freq Desired frequency of SPI clock, may not be the - end frequency you get based on what the chip can do! -*/ -void Adafruit_SPITFT::setSPISpeed(uint32_t freq) { -#if defined(SPI_HAS_TRANSACTION) - hwspi.settings = SPISettings(freq, MSBFIRST, hwspi._mode); -#else - hwspi._freq = freq; // Save freq value for later -#endif -} - -/*! - @brief Call before issuing command(s) or data to display. Performs - chip-select (if required) and starts an SPI transaction (if - using hardware SPI and transactions are supported). Required - for all display types; not an SPI-specific function. -*/ -void Adafruit_SPITFT::startWrite(void) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); -} - -/*! - @brief Call after issuing command(s) or data to display. Performs - chip-deselect (if required) and ends an SPI transaction (if - using hardware SPI and transactions are supported). Required - for all display types; not an SPI-specific function. -*/ -void Adafruit_SPITFT::endWrite(void) { - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -// ------------------------------------------------------------------------- -// Lower-level graphics operations. These functions require a chip-select -// and/or SPI transaction around them (via startWrite(), endWrite() above). -// Higher-level graphics primitives might start a single transaction and -// then make multiple calls to these functions (e.g. circle or text -// rendering might make repeated lines or rects) before ending the -// transaction. It's more efficient than starting a transaction every time. - -/*! - @brief Draw a single pixel to the display at requested coordinates. - Not self-contained; should follow a startWrite() call. - @param x Horizontal position (0 = left). - @param y Vertical position (0 = top). - @param color 16-bit pixel color in '565' RGB format. -*/ -void Adafruit_SPITFT::writePixel(int16_t x, int16_t y, uint16_t color) { - if ((x >= 0) && (x < _width) && (y >= 0) && (y < _height)) { - setAddrWindow(x, y, 1, 1); - SPI_WRITE16(color); - } -} - -/*! - @brief Swap bytes in an array of pixels; converts little-to-big or - big-to-little endian. Used by writePixels() below in some - situations, but may also be helpful for user code occasionally. - @param src Source address of 16-bit pixels buffer. - @param len Number of pixels to byte-swap. - @param dest Optional destination address if different than src -- - otherwise, if NULL (default) or same address is passed, - pixel buffer is overwritten in-place. -*/ -void Adafruit_SPITFT::swapBytes(uint16_t *src, uint32_t len, uint16_t *dest) { - if (!dest) - dest = src; // NULL -> overwrite src buffer - for (uint32_t i = 0; i < len; i++) { - dest[i] = __builtin_bswap16(src[i]); - } -} - -/*! - @brief Issue a series of pixels from memory to the display. Not self- - contained; should follow startWrite() and setAddrWindow() calls. - @param colors Pointer to array of 16-bit pixel values in '565' RGB - format. - @param len Number of elements in 'colors' array. - @param block If true (default case if unspecified), function blocks - until DMA transfer is complete. This is simply IGNORED - if DMA is not enabled. If false, the function returns - immediately after the last DMA transfer is started, - and one should use the dmaWait() function before - doing ANY other display-related activities (or even - any SPI-related activities, if using an SPI display - that shares the bus with other devices). - @param bigEndian If true, bitmap in memory is in big-endian order (most - significant byte first). By default this is false, as - most microcontrollers seem to be little-endian and - 16-bit pixel values must be byte-swapped before - issuing to the display (which tend toward big-endian - when using SPI or 8-bit parallel). If an application - can optimize around this -- for example, a bitmap in a - uint16_t array having the byte values already ordered - big-endian, this can save time here, ESPECIALLY if - using this function's non-blocking DMA mode. -*/ -void Adafruit_SPITFT::writePixels(uint16_t *colors, uint32_t len, bool block, - bool bigEndian) { - - if (!len) - return; // Avoid 0-byte transfers - - // avoid paramater-not-used complaints - (void)block; - (void)bigEndian; - -#if defined(ESP32) - if (connection == TFT_HARD_SPI) { - if (!bigEndian) { - hwspi._spi->writePixels(colors, len * 2); // Inbuilt endian-swap - } else { - hwspi._spi->writeBytes((uint8_t *)colors, len * 2); // Issue bytes direct - } - return; - } -#elif defined(ARDUINO_NRF52_ADAFRUIT) && \ - defined(NRF52840_XXAA) // Adafruit nRF52 use SPIM3 DMA at 32Mhz - if (!bigEndian) { - swapBytes(colors, len); // convert little-to-big endian for display - } - hwspi._spi->transfer(colors, NULL, 2 * len); // NULL RX to avoid overwrite - if (!bigEndian) { - swapBytes(colors, len); // big-to-little endian to restore pixel buffer - } - - return; -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - - if (!bigEndian) { - // switch to 16-bit writes - hw_write_masked(&spi_get_hw(pi_spi)->cr0, 15 << SPI_SSPCR0_DSS_LSB, - SPI_SSPCR0_DSS_BITS); - spi_write16_blocking(pi_spi, colors, len); - // switch back to 8-bit - hw_write_masked(&spi_get_hw(pi_spi)->cr0, 7 << SPI_SSPCR0_DSS_LSB, - SPI_SSPCR0_DSS_BITS); - } else { - spi_write_blocking(pi_spi, (uint8_t *)colors, len * 2); - } - return; -#elif defined(ARDUINO_ARCH_RTTHREAD) - if (!bigEndian) { - swapBytes(colors, len); // convert little-to-big endian for display - } - hwspi._spi->transfer(colors, 2 * len); - if (!bigEndian) { - swapBytes(colors, len); // big-to-little endian to restore pixel buffer - } - return; -#elif defined(USE_SPI_DMA) && \ - (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - if ((connection == TFT_HARD_SPI) || (connection == TFT_PARALLEL)) { - int maxSpan = maxFillLen / 2; // One scanline max - uint8_t pixelBufIdx = 0; // Active pixel buffer number -#if defined(__SAMD51__) - if (connection == TFT_PARALLEL) { - // Switch WR pin to PWM or CCL - pinPeripheral(tft8._wr, wrPeripheral); - } -#endif // end __SAMD51__ - if (!bigEndian) { // Normal little-endian situation... - while (len) { - int count = (len < maxSpan) ? len : maxSpan; - - // Because TFT and SAMD endianisms are different, must swap - // bytes from the 'colors' array passed into a DMA working - // buffer. This can take place while the prior DMA transfer - // is in progress, hence the need for two pixelBufs. - swapBytes(colors, count, pixelBuf[pixelBufIdx]); - colors += count; - - // The transfers themselves are relatively small, so we don't - // need a long descriptor list. We just alternate between the - // first two, sharing pixelBufIdx for that purpose. - descriptor[pixelBufIdx].SRCADDR.reg = - (uint32_t)pixelBuf[pixelBufIdx] + count * 2; - descriptor[pixelBufIdx].BTCTRL.bit.SRCINC = 1; - descriptor[pixelBufIdx].BTCNT.reg = count * 2; - descriptor[pixelBufIdx].DESCADDR.reg = 0; - - while (dma_busy) - ; // Wait for prior line to finish - - // Move new descriptor into place... - memcpy(dptr, &descriptor[pixelBufIdx], sizeof(DmacDescriptor)); - dma_busy = true; - dma.startJob(); // Trigger SPI DMA transfer - if (connection == TFT_PARALLEL) - dma.trigger(); - pixelBufIdx = 1 - pixelBufIdx; // Swap DMA pixel buffers - - len -= count; - } - } else { // bigEndian == true - // With big-endian pixel data, this can be handled as a single - // DMA transfer using chained descriptors. Even full screen, this - // needs only a relatively short descriptor list, each - // transferring a max of 32,767 (not 32,768) pixels. The list - // was allocated large enough to accommodate a full screen's - // worth of data, so this won't run past the end of the list. - int d, numDescriptors = (len + 32766) / 32767; - for (d = 0; d < numDescriptors; d++) { - int count = (len < 32767) ? len : 32767; - descriptor[d].SRCADDR.reg = (uint32_t)colors + count * 2; - descriptor[d].BTCTRL.bit.SRCINC = 1; - descriptor[d].BTCNT.reg = count * 2; - descriptor[d].DESCADDR.reg = (uint32_t)&descriptor[d + 1]; - len -= count; - colors += count; - } - descriptor[d - 1].DESCADDR.reg = 0; - - while (dma_busy) - ; // Wait for prior transfer (if any) to finish - - // Move first descriptor into place and start transfer... - memcpy(dptr, &descriptor[0], sizeof(DmacDescriptor)); - dma_busy = true; - dma.startJob(); // Trigger SPI DMA transfer - if (connection == TFT_PARALLEL) - dma.trigger(); - } // end bigEndian - - lastFillColor = 0x0000; // pixelBuf has been sullied - lastFillLen = 0; - if (block) { - while (dma_busy) - ; // Wait for last line to complete -#if defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO) - if (connection == TFT_HARD_SPI) { - // See SAMD51/21 note in writeColor() - hwspi._spi->setDataMode(hwspi._mode); - } else { - pinPeripheral(tft8._wr, PIO_OUTPUT); // Switch WR back to GPIO - } -#endif // end __SAMD51__ || ARDUINO_SAMD_ZERO - } - return; - } -#endif // end USE_SPI_DMA - - // All other cases (bitbang SPI or non-DMA hard SPI or parallel), - // use a loop with the normal 16-bit data write function: - - if (!bigEndian) { - while (len--) { - SPI_WRITE16(*colors++); - } - } else { - // Well this is awkward. SPI_WRITE16() was designed for little-endian - // hosts and big-endian displays as that's nearly always the typical - // case. If the bigEndian flag was set, data is already in display's - // order...so each pixel needs byte-swapping before being issued. - // Rather than having a separate big-endian SPI_WRITE16 (adding more - // bloat), it's preferred if calling function is smart and only uses - // bigEndian where DMA is supported. But we gotta handle this... - while (len--) { - SPI_WRITE16(__builtin_bswap16(*colors++)); - } - } -} - -/*! - @brief Wait for the last DMA transfer in a prior non-blocking - writePixels() call to complete. This does nothing if DMA - is not enabled, and is not needed if blocking writePixels() - was used (as is the default case). -*/ -void Adafruit_SPITFT::dmaWait(void) { -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - while (dma_busy) - ; -#if defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO) - if (connection == TFT_HARD_SPI) { - // See SAMD51/21 note in writeColor() - hwspi._spi->setDataMode(hwspi._mode); - } else { - pinPeripheral(tft8._wr, PIO_OUTPUT); // Switch WR back to GPIO - } -#endif // end __SAMD51__ || ARDUINO_SAMD_ZERO -#endif -} - -/*! - @brief Check if DMA transfer is active. Always returts false if DMA - is not enabled. - @return true if DMA is enabled and transmitting data, false otherwise. -*/ -bool Adafruit_SPITFT::dmaBusy(void) const { -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - return dma_busy; -#else - return false; -#endif -} - -/*! - @brief Issue a series of pixels, all the same color. Not self- - contained; should follow startWrite() and setAddrWindow() calls. - @param color 16-bit pixel color in '565' RGB format. - @param len Number of pixels to draw. -*/ -void Adafruit_SPITFT::writeColor(uint16_t color, uint32_t len) { - - if (!len) - return; // Avoid 0-byte transfers - - uint8_t hi = color >> 8, lo = color; - -#if defined(ESP32) // ESP32 has a special SPI pixel-writing function... - if (connection == TFT_HARD_SPI) { -#define SPI_MAX_PIXELS_AT_ONCE 32 -#define TMPBUF_LONGWORDS (SPI_MAX_PIXELS_AT_ONCE + 1) / 2 -#define TMPBUF_PIXELS (TMPBUF_LONGWORDS * 2) - static uint32_t temp[TMPBUF_LONGWORDS]; - uint32_t c32 = color * 0x00010001; - uint16_t bufLen = (len < TMPBUF_PIXELS) ? len : TMPBUF_PIXELS, xferLen, - fillLen; - // Fill temp buffer 32 bits at a time - fillLen = (bufLen + 1) / 2; // Round up to next 32-bit boundary - for (uint32_t t = 0; t < fillLen; t++) { - temp[t] = c32; - } - // Issue pixels in blocks from temp buffer - while (len) { // While pixels remain - xferLen = (bufLen < len) ? bufLen : len; // How many this pass? - writePixels((uint16_t *)temp, xferLen); - len -= xferLen; - } - return; - } -#elif defined(ARDUINO_NRF52_ADAFRUIT) && \ - defined(NRF52840_XXAA) // Adafruit nRF52840 use SPIM3 DMA at 32Mhz - // at most 2 scan lines - uint32_t const pixbufcount = min(len, ((uint32_t)2 * width())); - uint16_t *pixbuf = (uint16_t *)rtos_malloc(2 * pixbufcount); - - // use SPI3 DMA if we could allocate buffer, else fall back to writing each - // pixel loop below - if (pixbuf) { - uint16_t const swap_color = __builtin_bswap16(color); - - // fill buffer with color - for (uint32_t i = 0; i < pixbufcount; i++) { - pixbuf[i] = swap_color; - } - - while (len) { - uint32_t const count = min(len, pixbufcount); - writePixels(pixbuf, count, true, true); - len -= count; - } - - rtos_free(pixbuf); - return; - } -#elif defined(ARDUINO_ARCH_RTTHREAD) - uint16_t pixbufcount; - uint16_t *pixbuf; - int16_t lines = height() / 4; -#define QUICKPATH_MAX_LEN 16 - uint16_t quickpath_buffer[QUICKPATH_MAX_LEN]; - - do { - pixbufcount = min(len, (lines * width())); - if (pixbufcount > QUICKPATH_MAX_LEN) { - pixbuf = (uint16_t *)rt_malloc(2 * pixbufcount); - } else { - pixbuf = quickpath_buffer; - } - lines -= 2; - } while (!pixbuf && lines > 0); - - if (pixbuf) { - uint16_t const swap_color = __builtin_bswap16(color); - - while (len) { - uint16_t count = min(len, pixbufcount); - // fill buffer with color - for (uint16_t i = 0; i < count; i++) { - pixbuf[i] = swap_color; - } - // Don't need to swap color inside the function - // It has been done outside this function - writePixels(pixbuf, count, true, true); - len -= count; - } - if (pixbufcount > QUICKPATH_MAX_LEN) { - rt_free(pixbuf); - } -#undef QUICKPATH_MAX_LEN - return; - } -#else // !ESP32 -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - if (((connection == TFT_HARD_SPI) || (connection == TFT_PARALLEL)) && - (len >= 16)) { // Don't bother with DMA on short pixel runs - int i, d, numDescriptors; - if (hi == lo) { // If high & low bytes are same... - onePixelBuf = color; - // Can do this with a relatively short descriptor list, - // each transferring a max of 32,767 (not 32,768) pixels. - // This won't run off the end of the allocated descriptor list, - // since we're using much larger chunks per descriptor here. - numDescriptors = (len + 32766) / 32767; - for (d = 0; d < numDescriptors; d++) { - int count = (len < 32767) ? len : 32767; - descriptor[d].SRCADDR.reg = (uint32_t)&onePixelBuf; - descriptor[d].BTCTRL.bit.SRCINC = 0; - descriptor[d].BTCNT.reg = count * 2; - descriptor[d].DESCADDR.reg = (uint32_t)&descriptor[d + 1]; - len -= count; - } - descriptor[d - 1].DESCADDR.reg = 0; - } else { - // If high and low bytes are distinct, it's necessary to fill - // a buffer with pixel data (swapping high and low bytes because - // TFT and SAMD are different endianisms) and create a longer - // descriptor list pointing repeatedly to this data. We can do - // this slightly faster working 2 pixels (32 bits) at a time. - uint32_t *pixelPtr = (uint32_t *)pixelBuf[0], - twoPixels = __builtin_bswap16(color) * 0x00010001; - // We can avoid some or all of the buffer-filling if the color - // is the same as last time... - if (color == lastFillColor) { - // If length is longer than prior instance, fill only the - // additional pixels in the buffer and update lastFillLen. - if (len > lastFillLen) { - int fillStart = lastFillLen / 2, - fillEnd = (((len < maxFillLen) ? len : maxFillLen) + 1) / 2; - for (i = fillStart; i < fillEnd; i++) - pixelPtr[i] = twoPixels; - lastFillLen = fillEnd * 2; - } // else do nothing, don't set pixels or change lastFillLen - } else { - int fillEnd = (((len < maxFillLen) ? len : maxFillLen) + 1) / 2; - for (i = 0; i < fillEnd; i++) - pixelPtr[i] = twoPixels; - lastFillLen = fillEnd * 2; - lastFillColor = color; - } - - numDescriptors = (len + maxFillLen - 1) / maxFillLen; - for (d = 0; d < numDescriptors; d++) { - int pixels = (len < maxFillLen) ? len : maxFillLen, bytes = pixels * 2; - descriptor[d].SRCADDR.reg = (uint32_t)pixelPtr + bytes; - descriptor[d].BTCTRL.bit.SRCINC = 1; - descriptor[d].BTCNT.reg = bytes; - descriptor[d].DESCADDR.reg = (uint32_t)&descriptor[d + 1]; - len -= pixels; - } - descriptor[d - 1].DESCADDR.reg = 0; - } - memcpy(dptr, &descriptor[0], sizeof(DmacDescriptor)); -#if defined(__SAMD51__) - if (connection == TFT_PARALLEL) { - // Switch WR pin to PWM or CCL - pinPeripheral(tft8._wr, wrPeripheral); - } -#endif // end __SAMD51__ - - dma_busy = true; - dma.startJob(); - if (connection == TFT_PARALLEL) - dma.trigger(); - while (dma_busy) - ; // Wait for completion - // Unfortunately blocking is necessary. An earlier version returned - // immediately and checked dma_busy on startWrite() instead, but it - // turns out to be MUCH slower on many graphics operations (as when - // drawing lines, pixel-by-pixel), perhaps because it's a volatile - // type and doesn't cache. Working on this. -#if defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO) - if (connection == TFT_HARD_SPI) { - // SAMD51: SPI DMA seems to leave the SPI peripheral in a freaky - // state on completion. Workaround is to explicitly set it back... - // (5/17/2019: apparently SAMD21 too, in certain cases, observed - // with ST7789 display.) - hwspi._spi->setDataMode(hwspi._mode); - } else { - pinPeripheral(tft8._wr, PIO_OUTPUT); // Switch WR back to GPIO - } -#endif // end __SAMD51__ - return; - } -#endif // end USE_SPI_DMA -#endif // end !ESP32 - - // All other cases (non-DMA hard SPI, bitbang SPI, parallel)... - - if (connection == TFT_HARD_SPI) { -#if defined(ESP8266) - do { - uint32_t pixelsThisPass = len; - if (pixelsThisPass > 50000) - pixelsThisPass = 50000; - len -= pixelsThisPass; - delay(1); // Periodic delay on long fills - while (pixelsThisPass--) { - hwspi._spi->write(hi); - hwspi._spi->write(lo); - } - } while (len); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - color = __builtin_bswap16(color); - - while (len--) - spi_write_blocking(pi_spi, (uint8_t *)&color, 2); -#else // !ESP8266 && !ARDUINO_ARCH_RP2040 - while (len--) { -#if defined(__AVR__) - AVR_WRITESPI(hi); - AVR_WRITESPI(lo); -#elif defined(ESP32) - hwspi._spi->write(hi); - hwspi._spi->write(lo); -#else - hwspi._spi->transfer(hi); - hwspi._spi->transfer(lo); -#endif - } -#endif // end !ESP8266 - } else if (connection == TFT_SOFT_SPI) { -#if defined(ESP8266) - do { - uint32_t pixelsThisPass = len; - if (pixelsThisPass > 20000) - pixelsThisPass = 20000; - len -= pixelsThisPass; - yield(); // Periodic yield() on long fills - while (pixelsThisPass--) { - for (uint16_t bit = 0, x = color; bit < 16; bit++) { - if (x & 0x8000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - x <<= 1; - } - } - } while (len); -#else // !ESP8266 - while (len--) { -#if defined(__AVR__) - for (uint8_t bit = 0, x = hi; bit < 8; bit++) { - if (x & 0x80) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - x <<= 1; - } - for (uint8_t bit = 0, x = lo; bit < 8; bit++) { - if (x & 0x80) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - x <<= 1; - } -#else // !__AVR__ - for (uint16_t bit = 0, x = color; bit < 16; bit++) { - if (x & 0x8000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - x <<= 1; - SPI_SCK_LOW(); - } -#endif // end !__AVR__ - } -#endif // end !ESP8266 - } else { // PARALLEL - if (hi == lo) { -#if defined(__AVR__) - len *= 2; - *tft8.writePort = hi; - while (len--) { - TFT_WR_STROBE(); - } -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - len *= 2; - *tft8.writePort = hi; - } else { - *(volatile uint16_t *)tft8.writePort = color; - } - while (len--) { - TFT_WR_STROBE(); - } -#endif - } else { - while (len--) { -#if defined(__AVR__) - *tft8.writePort = hi; - TFT_WR_STROBE(); - *tft8.writePort = lo; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - *tft8.writePort = hi; - TFT_WR_STROBE(); - *tft8.writePort = lo; - } else { - *(volatile uint16_t *)tft8.writePort = color; - } -#endif - TFT_WR_STROBE(); - } - } - } -} - -/*! - @brief Draw a filled rectangle to the display. Not self-contained; - should follow startWrite(). Typically used by higher-level - graphics primitives; user code shouldn't need to call this and - is likely to use the self-contained fillRect() instead. - writeFillRect() performs its own edge clipping and rejection; - see writeFillRectPreclipped() for a more 'raw' implementation. - @param x Horizontal position of first corner. - @param y Vertical position of first corner. - @param w Rectangle width in pixels (positive = right of first - corner, negative = left of first corner). - @param h Rectangle height in pixels (positive = below first - corner, negative = above first corner). - @param color 16-bit fill color in '565' RGB format. - @note Written in this deep-nested way because C by definition will - optimize for the 'if' case, not the 'else' -- avoids branches - and rejects clipped rectangles at the least-work possibility. -*/ -void Adafruit_SPITFT::writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - if (w && h) { // Nonzero width and height? - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Rectangle partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (x2 >= _width) { - w = _width - x; - } // Clip right - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - writeFillRectPreclipped(x, y, w, h, color); - } - } - } - } - } -} - -/*! - @brief Draw a horizontal line on the display. Performs edge clipping - and rejection. Not self-contained; should follow startWrite(). - Typically used by higher-level graphics primitives; user code - shouldn't need to call this and is likely to use the self- - contained drawFastHLine() instead. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param w Line width in pixels (positive = right of first point, - negative = point of first corner). - @param color 16-bit line color in '565' RGB format. -*/ -void inline Adafruit_SPITFT::writeFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if ((y >= 0) && (y < _height) && w) { // Y on screen, nonzero width - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - // Line partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (x2 >= _width) { - w = _width - x; - } // Clip right - writeFillRectPreclipped(x, y, w, 1, color); - } - } - } -} - -/*! - @brief Draw a vertical line on the display. Performs edge clipping and - rejection. Not self-contained; should follow startWrite(). - Typically used by higher-level graphics primitives; user code - shouldn't need to call this and is likely to use the self- - contained drawFastVLine() instead. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param h Line height in pixels (positive = below first point, - negative = above first point). - @param color 16-bit line color in '565' RGB format. -*/ -void inline Adafruit_SPITFT::writeFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if ((x >= 0) && (x < _width) && h) { // X on screen, nonzero height - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Line partly or fully overlaps screen - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - writeFillRectPreclipped(x, y, 1, h, color); - } - } - } -} - -/*! - @brief A lower-level version of writeFillRect(). This version requires - all inputs are in-bounds, that width and height are positive, - and no part extends offscreen. NO EDGE CLIPPING OR REJECTION IS - PERFORMED. If higher-level graphics primitives are written to - handle their own clipping earlier in the drawing process, this - can avoid unnecessary function calls and repeated clipping - operations in the lower-level functions. - @param x Horizontal position of first corner. MUST BE WITHIN - SCREEN BOUNDS. - @param y Vertical position of first corner. MUST BE WITHIN SCREEN - BOUNDS. - @param w Rectangle width in pixels. MUST BE POSITIVE AND NOT - EXTEND OFF SCREEN. - @param h Rectangle height in pixels. MUST BE POSITIVE AND NOT - EXTEND OFF SCREEN. - @param color 16-bit fill color in '565' RGB format. - @note This is a new function, no graphics primitives besides rects - and horizontal/vertical lines are written to best use this yet. -*/ -inline void Adafruit_SPITFT::writeFillRectPreclipped(int16_t x, int16_t y, - int16_t w, int16_t h, - uint16_t color) { - setAddrWindow(x, y, w, h); - writeColor(color, (uint32_t)w * h); -} - -// ------------------------------------------------------------------------- -// Ever-so-slightly higher-level graphics operations. Similar to the 'write' -// functions above, but these contain their own chip-select and SPI -// transactions as needed (via startWrite(), endWrite()). They're typically -// used solo -- as graphics primitives in themselves, not invoked by higher- -// level primitives (which should use the functions above for better -// performance). - -/*! - @brief Draw a single pixel to the display at requested coordinates. - Self-contained and provides its own transaction as needed - (see writePixel(x,y,color) for a lower-level variant). - Edge clipping is performed here. - @param x Horizontal position (0 = left). - @param y Vertical position (0 = top). - @param color 16-bit pixel color in '565' RGB format. -*/ -void Adafruit_SPITFT::drawPixel(int16_t x, int16_t y, uint16_t color) { - // Clip first... - if ((x >= 0) && (x < _width) && (y >= 0) && (y < _height)) { - // THEN set up transaction (if needed) and draw... - startWrite(); - setAddrWindow(x, y, 1, 1); - SPI_WRITE16(color); - endWrite(); - } -} - -/*! - @brief Draw a filled rectangle to the display. Self-contained and - provides its own transaction as needed (see writeFillRect() or - writeFillRectPreclipped() for lower-level variants). Edge - clipping and rejection is performed here. - @param x Horizontal position of first corner. - @param y Vertical position of first corner. - @param w Rectangle width in pixels (positive = right of first - corner, negative = left of first corner). - @param h Rectangle height in pixels (positive = below first - corner, negative = above first corner). - @param color 16-bit fill color in '565' RGB format. - @note This repeats the writeFillRect() function almost in its entirety, - with the addition of a transaction start/end. It's done this way - (rather than starting the transaction and calling writeFillRect() - to handle clipping and so forth) so that the transaction isn't - performed at all if the rectangle is rejected. It's really not - that much code. -*/ -void Adafruit_SPITFT::fillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - if (w && h) { // Nonzero width and height? - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Rectangle partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (x2 >= _width) { - w = _width - x; - } // Clip right - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - startWrite(); - writeFillRectPreclipped(x, y, w, h, color); - endWrite(); - } - } - } - } - } -} - -/*! - @brief Draw a horizontal line on the display. Self-contained and - provides its own transaction as needed (see writeFastHLine() for - a lower-level variant). Edge clipping and rejection is performed - here. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param w Line width in pixels (positive = right of first point, - negative = point of first corner). - @param color 16-bit line color in '565' RGB format. - @note This repeats the writeFastHLine() function almost in its - entirety, with the addition of a transaction start/end. It's - done this way (rather than starting the transaction and calling - writeFastHLine() to handle clipping and so forth) so that the - transaction isn't performed at all if the line is rejected. -*/ -void Adafruit_SPITFT::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if ((y >= 0) && (y < _height) && w) { // Y on screen, nonzero width - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - // Line partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (x2 >= _width) { - w = _width - x; - } // Clip right - startWrite(); - writeFillRectPreclipped(x, y, w, 1, color); - endWrite(); - } - } - } -} - -/*! - @brief Draw a vertical line on the display. Self-contained and provides - its own transaction as needed (see writeFastHLine() for a lower- - level variant). Edge clipping and rejection is performed here. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param h Line height in pixels (positive = below first point, - negative = above first point). - @param color 16-bit line color in '565' RGB format. - @note This repeats the writeFastVLine() function almost in its - entirety, with the addition of a transaction start/end. It's - done this way (rather than starting the transaction and calling - writeFastVLine() to handle clipping and so forth) so that the - transaction isn't performed at all if the line is rejected. -*/ -void Adafruit_SPITFT::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if ((x >= 0) && (x < _width) && h) { // X on screen, nonzero height - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Line partly or fully overlaps screen - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - startWrite(); - writeFillRectPreclipped(x, y, 1, h, color); - endWrite(); - } - } - } -} - -/*! - @brief Essentially writePixel() with a transaction around it. I don't - think this is in use by any of our code anymore (believe it was - for some older BMP-reading examples), but is kept here in case - any user code relies on it. Consider it DEPRECATED. - @param color 16-bit pixel color in '565' RGB format. -*/ -void Adafruit_SPITFT::pushColor(uint16_t color) { - startWrite(); - SPI_WRITE16(color); - endWrite(); -} - -/*! - @brief Draw a 16-bit image (565 RGB) at the specified (x,y) position. - For 16-bit display devices; no color reduction performed. - Adapted from https://github.com/PaulStoffregen/ILI9341_t3 - by Marc MERLIN. See examples/pictureEmbed to use this. - 5/6/2017: function name and arguments have changed for - compatibility with current GFX library and to avoid naming - problems in prior implementation. Formerly drawBitmap() with - arguments in different order. Handles its own transaction and - edge clipping/rejection. - @param x Top left corner horizontal coordinate. - @param y Top left corner vertical coordinate. - @param pcolors Pointer to 16-bit array of pixel values. - @param w Width of bitmap in pixels. - @param h Height of bitmap in pixels. -*/ -void Adafruit_SPITFT::drawRGBBitmap(int16_t x, int16_t y, uint16_t *pcolors, - int16_t w, int16_t h) { - - int16_t x2, y2; // Lower-right coord - if ((x >= _width) || // Off-edge right - (y >= _height) || // " top - ((x2 = (x + w - 1)) < 0) || // " left - ((y2 = (y + h - 1)) < 0)) - return; // " bottom - - int16_t bx1 = 0, by1 = 0, // Clipped top-left within bitmap - saveW = w; // Save original bitmap width value - if (x < 0) { // Clip left - w += x; - bx1 = -x; - x = 0; - } - if (y < 0) { // Clip top - h += y; - by1 = -y; - y = 0; - } - if (x2 >= _width) - w = _width - x; // Clip right - if (y2 >= _height) - h = _height - y; // Clip bottom - - pcolors += by1 * saveW + bx1; // Offset bitmap ptr to clipped top-left - startWrite(); - setAddrWindow(x, y, w, h); // Clipped area - while (h--) { // For each (clipped) scanline... - writePixels(pcolors, w); // Push one (clipped) row - pcolors += saveW; // Advance pointer by one full (unclipped) line - } - endWrite(); -} - -// ------------------------------------------------------------------------- -// Miscellaneous class member functions that don't draw anything. - -/*! - @brief Invert the colors of the display (if supported by hardware). - Self-contained, no transaction setup required. - @param i true = inverted display, false = normal display. -*/ -void Adafruit_SPITFT::invertDisplay(bool i) { - startWrite(); - writeCommand(i ? invertOnCommand : invertOffCommand); - endWrite(); -} - -/*! - @brief Given 8-bit red, green and blue values, return a 'packed' - 16-bit color value in '565' RGB format (5 bits red, 6 bits - green, 5 bits blue). This is just a mathematical operation, - no hardware is touched. - @param red 8-bit red brightnesss (0 = off, 255 = max). - @param green 8-bit green brightnesss (0 = off, 255 = max). - @param blue 8-bit blue brightnesss (0 = off, 255 = max). - @return 'Packed' 16-bit color value (565 format). -*/ -uint16_t Adafruit_SPITFT::color565(uint8_t red, uint8_t green, uint8_t blue) { - return ((red & 0xF8) << 8) | ((green & 0xFC) << 3) | (blue >> 3); -} - -/*! -@brief Adafruit_SPITFT Send Command handles complete sending of commands and -data -@param commandByte The Command Byte -@param dataBytes A pointer to the Data bytes to send -@param numDataBytes The number of bytes we should send -*/ -void Adafruit_SPITFT::sendCommand(uint8_t commandByte, uint8_t *dataBytes, - uint8_t numDataBytes) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); - - SPI_DC_LOW(); // Command mode - spiWrite(commandByte); // Send the command byte - - SPI_DC_HIGH(); - for (int i = 0; i < numDataBytes; i++) { - if ((connection == TFT_PARALLEL) && tft8.wide) { - SPI_WRITE16(*(uint16_t *)dataBytes); - dataBytes += 2; - } else { - spiWrite(*dataBytes); // Send the data bytes - dataBytes++; - } - } - - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -/*! - @brief Adafruit_SPITFT Send Command handles complete sending of commands and - data - @param commandByte The Command Byte - @param dataBytes A pointer to the Data bytes to send - @param numDataBytes The number of bytes we should send - */ -void Adafruit_SPITFT::sendCommand(uint8_t commandByte, const uint8_t *dataBytes, - uint8_t numDataBytes) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); - - SPI_DC_LOW(); // Command mode - spiWrite(commandByte); // Send the command byte - - SPI_DC_HIGH(); - for (int i = 0; i < numDataBytes; i++) { - if ((connection == TFT_PARALLEL) && tft8.wide) { - SPI_WRITE16(*(uint16_t *)dataBytes); - dataBytes += 2; - } else { - spiWrite(pgm_read_byte(dataBytes++)); - } - } - - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -/*! - @brief Adafruit_SPITFT sendCommand16 handles complete sending of - commands and data for 16-bit parallel displays. Currently somewhat - rigged for the NT35510, which has the odd behavior of wanting - commands 16-bit, but subsequent data as 8-bit values, despite - the 16-bit bus (high byte is always 0). Also seems to require - issuing and incrementing address with each transfer. - @param commandWord The command word (16 bits) - @param dataBytes A pointer to the data bytes to send - @param numDataBytes The number of bytes we should send - */ -void Adafruit_SPITFT::sendCommand16(uint16_t commandWord, - const uint8_t *dataBytes, - uint8_t numDataBytes) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); - - if (numDataBytes == 0) { - SPI_DC_LOW(); // Command mode - SPI_WRITE16(commandWord); // Send the command word - SPI_DC_HIGH(); // Data mode - } - for (int i = 0; i < numDataBytes; i++) { - SPI_DC_LOW(); // Command mode - SPI_WRITE16(commandWord); // Send the command word - SPI_DC_HIGH(); // Data mode - commandWord++; - SPI_WRITE16((uint16_t)pgm_read_byte(dataBytes++)); - } - - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -/*! - @brief Read 8 bits of data from display configuration memory (not RAM). - This is highly undocumented/supported and should be avoided, - function is only included because some of the examples use it. - @param commandByte - The command register to read data from. - @param index - The byte index into the command to read from. - @return Unsigned 8-bit data read from display register. - */ -/**************************************************************************/ -uint8_t Adafruit_SPITFT::readcommand8(uint8_t commandByte, uint8_t index) { - uint8_t result; - startWrite(); - SPI_DC_LOW(); // Command mode - spiWrite(commandByte); - SPI_DC_HIGH(); // Data mode - do { - result = spiRead(); - } while (index--); // Discard bytes up to index'th - endWrite(); - return result; -} - -/*! - @brief Read 16 bits of data from display register. - For 16-bit parallel displays only. - @param addr Command/register to access. - @return Unsigned 16-bit data. - */ -uint16_t Adafruit_SPITFT::readcommand16(uint16_t addr) { -#if defined(USE_FAST_PINIO) // NOT SUPPORTED without USE_FAST_PINIO - uint16_t result = 0; - if ((connection == TFT_PARALLEL) && tft8.wide) { - startWrite(); - SPI_DC_LOW(); // Command mode - SPI_WRITE16(addr); - SPI_DC_HIGH(); // Data mode - TFT_RD_LOW(); // Read line LOW -#if defined(HAS_PORT_SET_CLR) - *(volatile uint16_t *)tft8.dirClr = 0xFFFF; // Input state - result = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; // Output state -#else // !HAS_PORT_SET_CLR - *(volatile uint16_t *)tft8.portDir = 0x0000; // Input state - result = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.portDir = 0xFFFF; // Output state -#endif // end !HAS_PORT_SET_CLR - TFT_RD_HIGH(); // Read line HIGH - endWrite(); - } - return result; -#else - (void)addr; // disable -Wunused-parameter warning - return 0; -#endif // end !USE_FAST_PINIO -} - -// ------------------------------------------------------------------------- -// Lowest-level hardware-interfacing functions. Many of these are inline and -// compile to different things based on #defines -- typically just a few -// instructions. Others, not so much, those are not inlined. - -/*! - @brief Start an SPI transaction if using the hardware SPI interface to - the display. If using an earlier version of the Arduino platform - (before the addition of SPI transactions), this instead attempts - to set up the SPI clock and mode. No action is taken if the - connection is not hardware SPI-based. This does NOT include a - chip-select operation -- see startWrite() for a function that - encapsulated both actions. -*/ -inline void Adafruit_SPITFT::SPI_BEGIN_TRANSACTION(void) { - if (connection == TFT_HARD_SPI) { -#if defined(SPI_HAS_TRANSACTION) - hwspi._spi->beginTransaction(hwspi.settings); -#else // No transactions, configure SPI manually... -#if defined(__AVR__) || defined(TEENSYDUINO) || defined(ARDUINO_ARCH_STM32F1) - hwspi._spi->setClockDivider(SPI_CLOCK_DIV2); -#elif defined(__arm__) - hwspi._spi->setClockDivider(11); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->setFrequency(hwspi._freq); -#elif defined(RASPI) || defined(ARDUINO_ARCH_STM32F1) - hwspi._spi->setClock(hwspi._freq); -#endif - hwspi._spi->setBitOrder(MSBFIRST); - hwspi._spi->setDataMode(hwspi._mode); -#endif // end !SPI_HAS_TRANSACTION - } -} - -/*! - @brief End an SPI transaction if using the hardware SPI interface to - the display. No action is taken if the connection is not - hardware SPI-based or if using an earlier version of the Arduino - platform (before the addition of SPI transactions). This does - NOT include a chip-deselect operation -- see endWrite() for a - function that encapsulated both actions. -*/ -inline void Adafruit_SPITFT::SPI_END_TRANSACTION(void) { -#if defined(SPI_HAS_TRANSACTION) - if (connection == TFT_HARD_SPI) { - hwspi._spi->endTransaction(); - } -#endif -} - -/*! - @brief Issue a single 8-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the byte. This is another of - those functions in the library with a now-not-accurate name - that's being maintained for compatibility with outside code. - This function is used even if display connection is parallel. - @param b 8-bit value to write. -*/ -void Adafruit_SPITFT::spiWrite(uint8_t b) { - if (connection == TFT_HARD_SPI) { -#if defined(__AVR__) - AVR_WRITESPI(b); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->write(b); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - spi_write_blocking(pi_spi, &b, 1); -#else - hwspi._spi->transfer(b); -#endif - } else if (connection == TFT_SOFT_SPI) { - for (uint8_t bit = 0; bit < 8; bit++) { - if (b & 0x80) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - b <<= 1; - SPI_SCK_LOW(); - } - } else { // TFT_PARALLEL -#if defined(__AVR__) - *tft8.writePort = b; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) - *tft8.writePort = b; - else - *(volatile uint16_t *)tft8.writePort = b; -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Write a single command byte to the display. Chip-select and - transaction must have been previously set -- this ONLY sets - the device to COMMAND mode, issues the byte and then restores - DATA mode. There is no corresponding explicit writeData() - function -- just use spiWrite(). - @param cmd 8-bit command to write. -*/ -void Adafruit_SPITFT::writeCommand(uint8_t cmd) { - SPI_DC_LOW(); - spiWrite(cmd); - SPI_DC_HIGH(); -} - -/*! - @brief Read a single 8-bit value from the display. Chip-select and - transaction must have been previously set -- this ONLY reads - the byte. This is another of those functions in the library - with a now-not-accurate name that's being maintained for - compatibility with outside code. This function is used even if - display connection is parallel. - @return Unsigned 8-bit value read (always zero if USE_FAST_PINIO is - not supported by the MCU architecture). -*/ -uint8_t Adafruit_SPITFT::spiRead(void) { - uint8_t b = 0; - uint16_t w = 0; - if (connection == TFT_HARD_SPI) { - return hwspi._spi->transfer((uint8_t)0); - } else if (connection == TFT_SOFT_SPI) { - if (swspi._miso >= 0) { - for (uint8_t i = 0; i < 8; i++) { - SPI_SCK_HIGH(); - b <<= 1; - if (SPI_MISO_READ()) - b++; - SPI_SCK_LOW(); - } - } - return b; - } else { // TFT_PARALLEL - if (tft8._rd >= 0) { -#if defined(USE_FAST_PINIO) - TFT_RD_LOW(); // Read line LOW -#if defined(__AVR__) - *tft8.portDir = 0x00; // Set port to input state - w = *tft8.readPort; // Read value from port - *tft8.portDir = 0xFF; // Restore port to output -#else // !__AVR__ - if (!tft8.wide) { // 8-bit TFT connection -#if defined(HAS_PORT_SET_CLR) - *tft8.dirClr = 0xFF; // Set port to input state - w = *tft8.readPort; // Read value from port - *tft8.dirSet = 0xFF; // Restore port to output -#else // !HAS_PORT_SET_CLR - *tft8.portDir = 0x00; // Set port to input state - w = *tft8.readPort; // Read value from port - *tft8.portDir = 0xFF; // Restore port to output -#endif // end HAS_PORT_SET_CLR - } else { // 16-bit TFT connection -#if defined(HAS_PORT_SET_CLR) - *(volatile uint16_t *)tft8.dirClr = 0xFFFF; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; // Output state -#else // !HAS_PORT_SET_CLR - *(volatile uint16_t *)tft8.portDir = 0x0000; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.portDir = 0xFFFF; // Output state -#endif // end !HAS_PORT_SET_CLR - } - TFT_RD_HIGH(); // Read line HIGH -#endif // end !__AVR__ -#else // !USE_FAST_PINIO - w = 0; // Parallel TFT is NOT SUPPORTED without USE_FAST_PINIO -#endif // end !USE_FAST_PINIO - } - return w; - } -} - -/*! - @brief Issue a single 16-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the word. - Thus operates ONLY on 'wide' (16-bit) parallel displays! - @param w 16-bit value to write. -*/ -void Adafruit_SPITFT::write16(uint16_t w) { - if (connection == TFT_PARALLEL) { -#if defined(USE_FAST_PINIO) - if (tft8.wide) - *(volatile uint16_t *)tft8.writePort = w; -#else - (void)w; // disable -Wunused-parameter warning -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Write a single command word to the display. Chip-select and - transaction must have been previously set -- this ONLY sets - the device to COMMAND mode, issues the byte and then restores - DATA mode. This operates ONLY on 'wide' (16-bit) parallel - displays! - @param cmd 16-bit command to write. -*/ -void Adafruit_SPITFT::writeCommand16(uint16_t cmd) { - SPI_DC_LOW(); - write16(cmd); - SPI_DC_HIGH(); -} - -/*! - @brief Read a single 16-bit value from the display. Chip-select and - transaction must have been previously set -- this ONLY reads - the byte. This operates ONLY on 'wide' (16-bit) parallel - displays! - @return Unsigned 16-bit value read (always zero if USE_FAST_PINIO is - not supported by the MCU architecture). -*/ -uint16_t Adafruit_SPITFT::read16(void) { - uint16_t w = 0; - if (connection == TFT_PARALLEL) { - if (tft8._rd >= 0) { -#if defined(USE_FAST_PINIO) - TFT_RD_LOW(); // Read line LOW - if (tft8.wide) { // 16-bit TFT connection -#if defined(HAS_PORT_SET_CLR) - *(volatile uint16_t *)tft8.dirClr = 0xFFFF; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; // Output state -#else // !HAS_PORT_SET_CLR - *(volatile uint16_t *)tft8.portDir = 0x0000; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.portDir = 0xFFFF; // Output state -#endif // end !HAS_PORT_SET_CLR - } - TFT_RD_HIGH(); // Read line HIGH -#else // !USE_FAST_PINIO - w = 0; // Parallel TFT is NOT SUPPORTED without USE_FAST_PINIO -#endif // end !USE_FAST_PINIO - } - } - return w; -} - -/*! - @brief Set the software (bitbang) SPI MOSI line HIGH. -*/ -inline void Adafruit_SPITFT::SPI_MOSI_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.mosiPortSet = 1; -#else // !KINETISK - *swspi.mosiPortSet = swspi.mosiPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.mosiPort |= swspi.mosiPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._mosi, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the software (bitbang) SPI MOSI line LOW. -*/ -inline void Adafruit_SPITFT::SPI_MOSI_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.mosiPortClr = 1; -#else // !KINETISK - *swspi.mosiPortClr = swspi.mosiPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.mosiPort &= swspi.mosiPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._mosi, LOW); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the software (bitbang) SPI SCK line HIGH. -*/ -inline void Adafruit_SPITFT::SPI_SCK_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.sckPortSet = 1; -#else // !KINETISK - *swspi.sckPortSet = swspi.sckPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.sckPort |= swspi.sckPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._sck, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the software (bitbang) SPI SCK line LOW. -*/ -inline void Adafruit_SPITFT::SPI_SCK_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.sckPortClr = 1; -#else // !KINETISK - *swspi.sckPortClr = swspi.sckPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.sckPort &= swspi.sckPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._sck, LOW); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Read the state of the software (bitbang) SPI MISO line. - @return true if HIGH, false if LOW. -*/ -inline bool Adafruit_SPITFT::SPI_MISO_READ(void) { -#if defined(USE_FAST_PINIO) -#if defined(KINETISK) - return *swspi.misoPort; -#else // !KINETISK - return *swspi.misoPort & swspi.misoPinMask; -#endif // end !KINETISK -#else // !USE_FAST_PINIO - return digitalRead(swspi._miso); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Issue a single 16-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the word. Despite the name, - this function is used even if display connection is parallel; - name was maintaned for backward compatibility. Naming is also - not consistent with the 8-bit version, spiWrite(). Sorry about - that. Again, staying compatible with outside code. - @param w 16-bit value to write. -*/ -void Adafruit_SPITFT::SPI_WRITE16(uint16_t w) { - if (connection == TFT_HARD_SPI) { -#if defined(__AVR__) - AVR_WRITESPI(w >> 8); - AVR_WRITESPI(w); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->write16(w); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - w = __builtin_bswap16(w); - spi_write_blocking(pi_spi, (uint8_t *)&w, 2); -#elif defined(ARDUINO_ARCH_RTTHREAD) - hwspi._spi->transfer16(w); -#else - // MSB, LSB because TFTs are generally big-endian - hwspi._spi->transfer(w >> 8); - hwspi._spi->transfer(w); -#endif - } else if (connection == TFT_SOFT_SPI) { - for (uint8_t bit = 0; bit < 16; bit++) { - if (w & 0x8000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - w <<= 1; - } - } else { // TFT_PARALLEL -#if defined(__AVR__) - *tft8.writePort = w >> 8; - TFT_WR_STROBE(); - *tft8.writePort = w; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - *tft8.writePort = w >> 8; - TFT_WR_STROBE(); - *tft8.writePort = w; - } else { - *(volatile uint16_t *)tft8.writePort = w; - } -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Issue a single 32-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the longword. Despite the - name, this function is used even if display connection is - parallel; name was maintaned for backward compatibility. Naming - is also not consistent with the 8-bit version, spiWrite(). - Sorry about that. Again, staying compatible with outside code. - @param l 32-bit value to write. -*/ -void Adafruit_SPITFT::SPI_WRITE32(uint32_t l) { - if (connection == TFT_HARD_SPI) { -#if defined(__AVR__) - AVR_WRITESPI(l >> 24); - AVR_WRITESPI(l >> 16); - AVR_WRITESPI(l >> 8); - AVR_WRITESPI(l); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->write32(l); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - l = __builtin_bswap32(l); - spi_write_blocking(pi_spi, (uint8_t *)&l, 4); -#elif defined(ARDUINO_ARCH_RTTHREAD) - hwspi._spi->transfer16(l >> 16); - hwspi._spi->transfer16(l); -#else - hwspi._spi->transfer(l >> 24); - hwspi._spi->transfer(l >> 16); - hwspi._spi->transfer(l >> 8); - hwspi._spi->transfer(l); -#endif - } else if (connection == TFT_SOFT_SPI) { - for (uint8_t bit = 0; bit < 32; bit++) { - if (l & 0x80000000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - l <<= 1; - } - } else { // TFT_PARALLEL -#if defined(__AVR__) - *tft8.writePort = l >> 24; - TFT_WR_STROBE(); - *tft8.writePort = l >> 16; - TFT_WR_STROBE(); - *tft8.writePort = l >> 8; - TFT_WR_STROBE(); - *tft8.writePort = l; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - *tft8.writePort = l >> 24; - TFT_WR_STROBE(); - *tft8.writePort = l >> 16; - TFT_WR_STROBE(); - *tft8.writePort = l >> 8; - TFT_WR_STROBE(); - *tft8.writePort = l; - } else { - *(volatile uint16_t *)tft8.writePort = l >> 16; - TFT_WR_STROBE(); - *(volatile uint16_t *)tft8.writePort = l; - } -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Set the WR line LOW, then HIGH. Used for parallel-connected - interfaces when writing data. -*/ -inline void Adafruit_SPITFT::TFT_WR_STROBE(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *tft8.wrPortClr = 1; - *tft8.wrPortSet = 1; -#else // !KINETISK - *tft8.wrPortClr = tft8.wrPinMask; - *tft8.wrPortSet = tft8.wrPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *tft8.wrPort &= tft8.wrPinMaskClr; - *tft8.wrPort |= tft8.wrPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(tft8._wr, LOW); - digitalWrite(tft8._wr, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the RD line HIGH. Used for parallel-connected interfaces - when reading data. -*/ -inline void Adafruit_SPITFT::TFT_RD_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) - *tft8.rdPortSet = tft8.rdPinMask; -#else // !HAS_PORT_SET_CLR - *tft8.rdPort |= tft8.rdPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(tft8._rd, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the RD line LOW. Used for parallel-connected interfaces - when reading data. -*/ -inline void Adafruit_SPITFT::TFT_RD_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) - *tft8.rdPortClr = tft8.rdPinMask; -#else // !HAS_PORT_SET_CLR - *tft8.rdPort &= tft8.rdPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(tft8._rd, LOW); -#endif // end !USE_FAST_PINIO -} - -#endif // end __AVR_ATtiny85__ __AVR_ATtiny84__ diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.h deleted file mode 100644 index 7d0843e..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.h +++ /dev/null @@ -1,541 +0,0 @@ -/*! - * @file Adafruit_SPITFT.h - * - * Part of Adafruit's GFX graphics library. Originally this class was - * written to handle a range of color TFT displays connected via SPI, - * but over time this library and some display-specific subclasses have - * mutated to include some color OLEDs as well as parallel-interfaced - * displays. The name's been kept for the sake of older code. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - * - * Written by Limor "ladyada" Fried for Adafruit Industries, - * with contributions from the open source community. - * - * BSD license, all text here must be included in any redistribution. - */ - -#ifndef _ADAFRUIT_SPITFT_H_ -#define _ADAFRUIT_SPITFT_H_ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include "Adafruit_GFX.h" -#include - -// HARDWARE CONFIG --------------------------------------------------------- - -#if defined(__AVR__) -typedef uint8_t ADAGFX_PORT_t; ///< PORT values are 8-bit -#define USE_FAST_PINIO ///< Use direct PORT register access -#elif defined(ARDUINO_STM32_FEATHER) // WICED -typedef class HardwareSPI SPIClass; ///< SPI is a bit odd on WICED -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -#elif defined(__arm__) -#if defined(ARDUINO_ARCH_SAMD) -// Adafruit M0, M4 -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -#define USE_FAST_PINIO ///< Use direct PORT register access -#define HAS_PORT_SET_CLR ///< PORTs have set & clear registers -#elif defined(CORE_TEENSY) -// PJRC Teensy 4.x -#if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit - // PJRC Teensy 3.x -#else -typedef uint8_t ADAGFX_PORT_t; ///< PORT values are 8-bit -#endif -#define USE_FAST_PINIO ///< Use direct PORT register access -#define HAS_PORT_SET_CLR ///< PORTs have set & clear registers -#else -// Arduino Due? -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -// USE_FAST_PINIO not available here (yet)...Due has a totally different -// GPIO register set and will require some changes elsewhere (e.g. in -// constructors especially). -#endif -#else // !ARM -// Probably ESP8266 or ESP32. USE_FAST_PINIO is not available here (yet) -// but don't worry about it too much...the digitalWrite() implementation -// on these platforms is reasonably efficient and already RAM-resident, -// only gotcha then is no parallel connection support for now. -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -#endif // end !ARM -typedef volatile ADAGFX_PORT_t *PORTreg_t; ///< PORT register type - -#if defined(__AVR__) && !defined(__LGT8F__) -#define DEFAULT_SPI_FREQ 8000000L ///< Hardware SPI default speed -#else -#define DEFAULT_SPI_FREQ 16000000L ///< Hardware SPI default speed -#endif - -#if defined(ADAFRUIT_PYPORTAL) || defined(ADAFRUIT_PYPORTAL_M4_TITANO) || \ - defined(ADAFRUIT_PYBADGE_M4_EXPRESS) || \ - defined(ADAFRUIT_PYGAMER_M4_EXPRESS) || \ - defined(ADAFRUIT_MONSTER_M4SK_EXPRESS) || defined(NRF52_SERIES) || \ - defined(ADAFRUIT_CIRCUITPLAYGROUND_M0) -#define USE_SPI_DMA ///< Auto DMA -#else - // #define USE_SPI_DMA ///< If set, - // use DMA if available -#endif -// Another "oops" name -- this now also handles parallel DMA. -// If DMA is enabled, Arduino sketch MUST #include -// Estimated RAM usage: -// 4 bytes/pixel on display major axis + 8 bytes/pixel on minor axis, -// e.g. 320x240 pixels = 320 * 4 + 240 * 8 = 3,200 bytes. - -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) -#include -#endif - -// This is kind of a kludge. Needed a way to disambiguate the software SPI -// and parallel constructors via their argument lists. Originally tried a -// bool as the first argument to the parallel constructor (specifying 8-bit -// vs 16-bit interface) but the compiler regards this as equivalent to an -// integer and thus still ambiguous. SO...the parallel constructor requires -// an enumerated type as the first argument: tft8 (for 8-bit parallel) or -// tft16 (for 16-bit)...even though 16-bit isn't fully implemented or tested -// and might never be, still needed that disambiguation from soft SPI. -/*! For first arg to parallel constructor */ -enum tftBusWidth { tft8bitbus, tft16bitbus }; - -// SPI defaults for RP2040 -#if defined(ARDUINO_ARCH_RP2040) -#ifndef __SPI0_DEVICE -#define __SPI0_DEVICE spi0 -#endif -#ifndef __SPI1_DEVICE -#define __SPI1_DEVICE spi1 -#endif -#endif - -// CLASS DEFINITION -------------------------------------------------------- - -/*! - @brief Adafruit_SPITFT is an intermediary class between Adafruit_GFX - and various hardware-specific subclasses for different displays. - It handles certain operations that are common to a range of - displays (address window, area fills, etc.). Originally these were - all color TFT displays interfaced via SPI, but it's since expanded - to include color OLEDs and parallel-interfaced TFTs. THE NAME HAS - BEEN KEPT TO AVOID BREAKING A LOT OF SUBCLASSES AND EXAMPLE CODE. - Many of the class member functions similarly live on with names - that don't necessarily accurately describe what they're doing, - again to avoid breaking a lot of other code. If in doubt, read - the comments. -*/ -class Adafruit_SPITFT : public Adafruit_GFX { - -public: - // CONSTRUCTORS -------------------------------------------------------- - - // Software SPI constructor: expects width & height (at default rotation - // setting 0), 4 signal pins (cs, dc, mosi, sclk), 2 optional pins - // (reset, miso). cs argument is required but can be -1 if unused -- - // rather than moving it to the optional arguments, it was done this way - // to avoid breaking existing code (-1 option was a later addition). - Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, int8_t mosi, - int8_t sck, int8_t rst = -1, int8_t miso = -1); - - // Hardware SPI constructor using the default SPI port: expects width & - // height (at default rotation setting 0), 2 signal pins (cs, dc), - // optional reset pin. cs is required but can be -1 if unused -- rather - // than moving it to the optional arguments, it was done this way to - // avoid breaking existing code (-1 option was a later addition). - Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t rst = -1); - -#if !defined(ESP8266) // See notes in .cpp - // Hardware SPI constructor using an arbitrary SPI peripheral: expects - // width & height (rotation 0), SPIClass pointer, 2 signal pins (cs, dc) - // and optional reset pin. cs is required but can be -1 if unused. - Adafruit_SPITFT(uint16_t w, uint16_t h, SPIClass *spiClass, int8_t cs, - int8_t dc, int8_t rst = -1); -#endif // end !ESP8266 - - // Parallel constructor: expects width & height (rotation 0), flag - // indicating whether 16-bit (true) or 8-bit (false) interface, 3 signal - // pins (d0, wr, dc), 3 optional pins (cs, rst, rd). 16-bit parallel - // isn't even fully implemented but the 'wide' flag was added as a - // required argument to avoid ambiguity with other constructors. - Adafruit_SPITFT(uint16_t w, uint16_t h, tftBusWidth busWidth, int8_t d0, - int8_t wr, int8_t dc, int8_t cs = -1, int8_t rst = -1, - int8_t rd = -1); - - // DESTRUCTOR ---------------------------------------------------------- - - ~Adafruit_SPITFT(){}; - - // CLASS MEMBER FUNCTIONS ---------------------------------------------- - - // These first two functions MUST be declared by subclasses: - - /*! - @brief Display-specific initialization function. - @param freq SPI frequency, in hz (or 0 for default or unused). - */ - virtual void begin(uint32_t freq) = 0; - - /*! - @brief Set up the specific display hardware's "address window" - for subsequent pixel-pushing operations. - @param x Leftmost pixel of area to be drawn (MUST be within - display bounds at current rotation setting). - @param y Topmost pixel of area to be drawn (MUST be within - display bounds at current rotation setting). - @param w Width of area to be drawn, in pixels (MUST be >0 and, - added to x, within display bounds at current rotation). - @param h Height of area to be drawn, in pixels (MUST be >0 and, - added to x, within display bounds at current rotation). - */ - virtual void setAddrWindow(uint16_t x, uint16_t y, uint16_t w, - uint16_t h) = 0; - - // Remaining functions do not need to be declared in subclasses - // unless they wish to provide hardware-specific optimizations. - // Brief comments here...documented more thoroughly in .cpp file. - - // Subclass' begin() function invokes this to initialize hardware. - // freq=0 to use default SPI speed. spiMode must be one of the SPI_MODEn - // values defined in SPI.h, which are NOT the same as 0 for SPI_MODE0, - // 1 for SPI_MODE1, etc...use ONLY the SPI_MODEn defines! Only! - // Name is outdated (interface may be parallel) but for compatibility: - void initSPI(uint32_t freq = 0, uint8_t spiMode = SPI_MODE0); - void setSPISpeed(uint32_t freq); - // Chip select and/or hardware SPI transaction start as needed: - void startWrite(void); - // Chip deselect and/or hardware SPI transaction end as needed: - void endWrite(void); - void sendCommand(uint8_t commandByte, uint8_t *dataBytes, - uint8_t numDataBytes); - void sendCommand(uint8_t commandByte, const uint8_t *dataBytes = NULL, - uint8_t numDataBytes = 0); - void sendCommand16(uint16_t commandWord, const uint8_t *dataBytes = NULL, - uint8_t numDataBytes = 0); - uint8_t readcommand8(uint8_t commandByte, uint8_t index = 0); - uint16_t readcommand16(uint16_t addr); - - // These functions require a chip-select and/or SPI transaction - // around them. Higher-level graphics primitives might start a - // single transaction and then make multiple calls to these functions - // (e.g. circle or text rendering might make repeated lines or rects) - // before ending the transaction. It's more efficient than starting a - // transaction every time. - void writePixel(int16_t x, int16_t y, uint16_t color); - void writePixels(uint16_t *colors, uint32_t len, bool block = true, - bool bigEndian = false); - void writeColor(uint16_t color, uint32_t len); - void writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - void writeFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - void writeFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - // This is a new function, similar to writeFillRect() except that - // all arguments MUST be onscreen, sorted and clipped. If higher-level - // primitives can handle their own sorting/clipping, it avoids repeating - // such operations in the low-level code, making it potentially faster. - // CALLING THIS WITH UNCLIPPED OR NEGATIVE VALUES COULD BE DISASTROUS. - inline void writeFillRectPreclipped(int16_t x, int16_t y, int16_t w, - int16_t h, uint16_t color); - // Another new function, companion to the new non-blocking - // writePixels() variant. - void dmaWait(void); - // Used by writePixels() in some situations, but might have rare need in - // user code, so it's public... - bool dmaBusy(void) const; // true if DMA is used and busy, false otherwise - void swapBytes(uint16_t *src, uint32_t len, uint16_t *dest = NULL); - - // These functions are similar to the 'write' functions above, but with - // a chip-select and/or SPI transaction built-in. They're typically used - // solo -- that is, as graphics primitives in themselves, not invoked by - // higher-level primitives (which should use the functions above). - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - // A single-pixel push encapsulated in a transaction. I don't think - // this is used anymore (BMP demos might've used it?) but is provided - // for backward compatibility, consider it deprecated: - void pushColor(uint16_t color); - - using Adafruit_GFX::drawRGBBitmap; // Check base class first - void drawRGBBitmap(int16_t x, int16_t y, uint16_t *pcolors, int16_t w, - int16_t h); - - void invertDisplay(bool i); - uint16_t color565(uint8_t r, uint8_t g, uint8_t b); - - // Despite parallel additions, function names kept for compatibility: - void spiWrite(uint8_t b); // Write single byte as DATA - void writeCommand(uint8_t cmd); // Write single byte as COMMAND - uint8_t spiRead(void); // Read single byte of data - void write16(uint16_t w); // Write 16-bit value as DATA - void writeCommand16(uint16_t cmd); // Write 16-bit value as COMMAND - uint16_t read16(void); // Read single 16-bit value - - // Most of these low-level functions were formerly macros in - // Adafruit_SPITFT_Macros.h. Some have been made into inline functions - // to avoid macro mishaps. Despite the addition of code for a parallel - // display interface, the names have been kept for backward - // compatibility (some subclasses may be invoking these): - void SPI_WRITE16(uint16_t w); // Not inline - void SPI_WRITE32(uint32_t l); // Not inline - // Old code had both a spiWrite16() function and SPI_WRITE16 macro - // in addition to the SPI_WRITE32 macro. The latter two have been - // made into functions here, and spiWrite16() removed (use SPI_WRITE16() - // instead). It looks like most subclasses had gotten comfortable with - // SPI_WRITE16 and SPI_WRITE32 anyway so those names were kept rather - // than the less-obnoxious camelcase variants, oh well. - - // Placing these functions entirely in the class definition inlines - // them implicitly them while allowing their use in other code: - - /*! - @brief Set the chip-select line HIGH. Does NOT check whether CS pin - is set (>=0), that should be handled in calling function. - Despite function name, this is used even if the display - connection is parallel. - */ - void SPI_CS_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *csPortSet = 1; -#else // !KINETISK - *csPortSet = csPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *csPort |= csPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_cs, HIGH); -#endif // end !USE_FAST_PINIO - } - - /*! - @brief Set the chip-select line LOW. Does NOT check whether CS pin - is set (>=0), that should be handled in calling function. - Despite function name, this is used even if the display - connection is parallel. - */ - void SPI_CS_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *csPortClr = 1; -#else // !KINETISK - *csPortClr = csPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *csPort &= csPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_cs, LOW); -#endif // end !USE_FAST_PINIO - } - - /*! - @brief Set the data/command line HIGH (data mode). - */ - void SPI_DC_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *dcPortSet = 1; -#else // !KINETISK - *dcPortSet = dcPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *dcPort |= dcPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_dc, HIGH); -#endif // end !USE_FAST_PINIO - } - - /*! - @brief Set the data/command line LOW (command mode). - */ - void SPI_DC_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *dcPortClr = 1; -#else // !KINETISK - *dcPortClr = dcPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *dcPort &= dcPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_dc, LOW); -#endif // end !USE_FAST_PINIO - } - -protected: - // A few more low-level member functions -- some may have previously - // been macros. Shouldn't have a need to access these externally, so - // they've been moved to the protected section. Additionally, they're - // declared inline here and the code is in the .cpp file, since outside - // code doesn't need to see these. - inline void SPI_MOSI_HIGH(void); - inline void SPI_MOSI_LOW(void); - inline void SPI_SCK_HIGH(void); - inline void SPI_SCK_LOW(void); - inline bool SPI_MISO_READ(void); - inline void SPI_BEGIN_TRANSACTION(void); - inline void SPI_END_TRANSACTION(void); - inline void TFT_WR_STROBE(void); // Parallel interface write strobe - inline void TFT_RD_HIGH(void); // Parallel interface read high - inline void TFT_RD_LOW(void); // Parallel interface read low - - // CLASS INSTANCE VARIABLES -------------------------------------------- - - // Here be dragons! There's a big union of three structures here -- - // one each for hardware SPI, software (bitbang) SPI, and parallel - // interfaces. This is to save some memory, since a display's connection - // will be only one of these. The order of some things is a little weird - // in an attempt to get values to align and pack better in RAM. - -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) - PORTreg_t csPortSet; ///< PORT register for chip select SET - PORTreg_t csPortClr; ///< PORT register for chip select CLEAR - PORTreg_t dcPortSet; ///< PORT register for data/command SET - PORTreg_t dcPortClr; ///< PORT register for data/command CLEAR -#else // !HAS_PORT_SET_CLR - PORTreg_t csPort; ///< PORT register for chip select - PORTreg_t dcPort; ///< PORT register for data/command -#endif // end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -#if defined(__cplusplus) && (__cplusplus >= 201100) - union { -#endif - struct { // Values specific to HARDWARE SPI: - SPIClass *_spi; ///< SPI class pointer -#if defined(SPI_HAS_TRANSACTION) - SPISettings settings; ///< SPI transaction settings -#else - uint32_t _freq; ///< SPI bitrate (if no SPI transactions) -#endif - uint32_t _mode; ///< SPI data mode (transactions or no) - } hwspi; ///< Hardware SPI values - struct { // Values specific to SOFTWARE SPI: -#if defined(USE_FAST_PINIO) - PORTreg_t misoPort; ///< PORT (PIN) register for MISO -#if defined(HAS_PORT_SET_CLR) - PORTreg_t mosiPortSet; ///< PORT register for MOSI SET - PORTreg_t mosiPortClr; ///< PORT register for MOSI CLEAR - PORTreg_t sckPortSet; ///< PORT register for SCK SET - PORTreg_t sckPortClr; ///< PORT register for SCK CLEAR -#if !defined(KINETISK) - ADAGFX_PORT_t mosiPinMask; ///< Bitmask for MOSI - ADAGFX_PORT_t sckPinMask; ///< Bitmask for SCK -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - PORTreg_t mosiPort; ///< PORT register for MOSI - PORTreg_t sckPort; ///< PORT register for SCK - ADAGFX_PORT_t mosiPinMaskSet; ///< Bitmask for MOSI SET (OR) - ADAGFX_PORT_t mosiPinMaskClr; ///< Bitmask for MOSI CLEAR (AND) - ADAGFX_PORT_t sckPinMaskSet; ///< Bitmask for SCK SET (OR bitmask) - ADAGFX_PORT_t sckPinMaskClr; ///< Bitmask for SCK CLEAR (AND) -#endif // end HAS_PORT_SET_CLR -#if !defined(KINETISK) - ADAGFX_PORT_t misoPinMask; ///< Bitmask for MISO -#endif // end !KINETISK -#endif // end USE_FAST_PINIO - int8_t _mosi; ///< MOSI pin # - int8_t _miso; ///< MISO pin # - int8_t _sck; ///< SCK pin # - } swspi; ///< Software SPI values - struct { // Values specific to 8-bit parallel: -#if defined(USE_FAST_PINIO) - -#if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x - volatile uint32_t *writePort; ///< PORT register for DATA WRITE - volatile uint32_t *readPort; ///< PORT (PIN) register for DATA READ -#else - volatile uint8_t *writePort; ///< PORT register for DATA WRITE - volatile uint8_t *readPort; ///< PORT (PIN) register for DATA READ -#endif -#if defined(HAS_PORT_SET_CLR) - // Port direction register pointers are always 8-bit regardless of - // PORTreg_t -- even if 32-bit port, we modify a byte-aligned 8 bits. -#if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x - volatile uint32_t *dirSet; ///< PORT byte data direction SET - volatile uint32_t *dirClr; ///< PORT byte data direction CLEAR -#else - volatile uint8_t *dirSet; ///< PORT byte data direction SET - volatile uint8_t *dirClr; ///< PORT byte data direction CLEAR -#endif - PORTreg_t wrPortSet; ///< PORT register for write strobe SET - PORTreg_t wrPortClr; ///< PORT register for write strobe CLEAR - PORTreg_t rdPortSet; ///< PORT register for read strobe SET - PORTreg_t rdPortClr; ///< PORT register for read strobe CLEAR -#if !defined(KINETISK) - ADAGFX_PORT_t wrPinMask; ///< Bitmask for write strobe -#endif // end !KINETISK - ADAGFX_PORT_t rdPinMask; ///< Bitmask for read strobe -#else // !HAS_PORT_SET_CLR - // Port direction register pointer is always 8-bit regardless of - // PORTreg_t -- even if 32-bit port, we modify a byte-aligned 8 bits. - volatile uint8_t *portDir; ///< PORT direction register - PORTreg_t wrPort; ///< PORT register for write strobe - PORTreg_t rdPort; ///< PORT register for read strobe - ADAGFX_PORT_t wrPinMaskSet; ///< Bitmask for write strobe SET (OR) - ADAGFX_PORT_t wrPinMaskClr; ///< Bitmask for write strobe CLEAR (AND) - ADAGFX_PORT_t rdPinMaskSet; ///< Bitmask for read strobe SET (OR) - ADAGFX_PORT_t rdPinMaskClr; ///< Bitmask for read strobe CLEAR (AND) -#endif // end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO - int8_t _d0; ///< Data pin 0 # - int8_t _wr; ///< Write strobe pin # - int8_t _rd; ///< Read strobe pin # (or -1) - bool wide = 0; ///< If true, is 16-bit interface - } tft8; ///< Parallel interface settings -#if defined(__cplusplus) && (__cplusplus >= 201100) - }; ///< Only one interface is active -#endif -#if defined(USE_SPI_DMA) && \ - (defined(__SAMD51__) || \ - defined(ARDUINO_SAMD_ZERO)) // Used by hardware SPI and tft8 - Adafruit_ZeroDMA dma; ///< DMA instance - DmacDescriptor *dptr = NULL; ///< 1st descriptor - DmacDescriptor *descriptor = NULL; ///< Allocated descriptor list - uint16_t *pixelBuf[2]; ///< Working buffers - uint16_t maxFillLen; ///< Max pixels per DMA xfer - uint16_t lastFillColor = 0; ///< Last color used w/fill - uint32_t lastFillLen = 0; ///< # of pixels w/last fill - uint8_t onePixelBuf; ///< For hi==lo fill -#endif -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if !defined(KINETISK) - ADAGFX_PORT_t csPinMask; ///< Bitmask for chip select - ADAGFX_PORT_t dcPinMask; ///< Bitmask for data/command -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - ADAGFX_PORT_t csPinMaskSet; ///< Bitmask for chip select SET (OR) - ADAGFX_PORT_t csPinMaskClr; ///< Bitmask for chip select CLEAR (AND) - ADAGFX_PORT_t dcPinMaskSet; ///< Bitmask for data/command SET (OR) - ADAGFX_PORT_t dcPinMaskClr; ///< Bitmask for data/command CLEAR (AND) -#endif // end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO - uint8_t connection; ///< TFT_HARD_SPI, TFT_SOFT_SPI, etc. - int8_t _rst; ///< Reset pin # (or -1) - int8_t _cs; ///< Chip select pin # (or -1) - int8_t _dc; ///< Data/command pin # - - int16_t _xstart = 0; ///< Internal framebuffer X offset - int16_t _ystart = 0; ///< Internal framebuffer Y offset - uint8_t invertOnCommand = 0; ///< Command to enable invert mode - uint8_t invertOffCommand = 0; ///< Command to disable invert mode - - uint32_t _freq = 0; ///< Dummy var to keep subclasses happy -}; - -#endif // end __AVR_ATtiny85__ __AVR_ATtiny84__ -#endif // end _ADAFRUIT_SPITFT_H_ diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT_Macros.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT_Macros.h deleted file mode 100644 index fcd6253..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT_Macros.h +++ /dev/null @@ -1,6 +0,0 @@ -// THIS FILE INTENTIONALLY LEFT BLANK. - -// Macros previously #defined here have been made into (mostly) inline -// functions in the Adafruit_SPITFT class. Other libraries might still -// contain code trying to #include this header file, so until everything's -// updated this file still exists (but doing nothing) to avoid trouble. diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/CMakeLists.txt b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/CMakeLists.txt deleted file mode 100644 index 531c721..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/CMakeLists.txt +++ /dev/null @@ -1,11 +0,0 @@ -# Adafruit GFX Library -# https://github.com/adafruit/Adafruit-GFX-Library -# BSD License - -cmake_minimum_required(VERSION 3.5) - -idf_component_register(SRCS "Adafruit_GFX.cpp" "Adafruit_GrayOLED.cpp" "Adafruit_SPITFT.cpp" "glcdfont.c" - INCLUDE_DIRS "." - REQUIRES arduino Adafruit_BusIO) - -project(Adafruit-GFX-Library) diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono12pt7b.h deleted file mode 100644 index d124f20..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono12pt7b.h +++ /dev/null @@ -1,229 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono12pt7bBitmaps[] PROGMEM = { - 0x49, 0x24, 0x92, 0x48, 0x01, 0xF8, 0xE7, 0xE7, 0x67, 0x42, 0x42, 0x42, - 0x42, 0x09, 0x02, 0x41, 0x10, 0x44, 0x11, 0x1F, 0xF1, 0x10, 0x4C, 0x12, - 0x3F, 0xE1, 0x20, 0x48, 0x12, 0x04, 0x81, 0x20, 0x48, 0x04, 0x07, 0xA2, - 0x19, 0x02, 0x40, 0x10, 0x03, 0x00, 0x3C, 0x00, 0x80, 0x10, 0x06, 0x01, - 0xE0, 0xA7, 0xC0, 0x40, 0x10, 0x04, 0x00, 0x3C, 0x19, 0x84, 0x21, 0x08, - 0x66, 0x0F, 0x00, 0x0C, 0x1C, 0x78, 0x01, 0xE0, 0xCC, 0x21, 0x08, 0x43, - 0x30, 0x78, 0x3E, 0x30, 0x10, 0x08, 0x02, 0x03, 0x03, 0x47, 0x14, 0x8A, - 0x43, 0x11, 0x8F, 0x60, 0xFD, 0xA4, 0x90, 0x05, 0x25, 0x24, 0x92, 0x48, - 0x92, 0x24, 0x11, 0x24, 0x89, 0x24, 0x92, 0x92, 0x90, 0x00, 0x04, 0x02, - 0x11, 0x07, 0xF0, 0xC0, 0x50, 0x48, 0x42, 0x00, 0x08, 0x04, 0x02, 0x01, - 0x00, 0x87, 0xFC, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, 0x3B, 0x9C, 0xCE, - 0x62, 0x00, 0xFF, 0xE0, 0xFF, 0x80, 0x00, 0x80, 0xC0, 0x40, 0x20, 0x20, - 0x10, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0x00, 0x80, - 0x80, 0x40, 0x00, 0x1C, 0x31, 0x90, 0x58, 0x38, 0x0C, 0x06, 0x03, 0x01, - 0x80, 0xC0, 0x60, 0x30, 0x34, 0x13, 0x18, 0x70, 0x30, 0xE1, 0x44, 0x81, - 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x81, 0x1F, 0xC0, 0x1E, 0x10, 0x90, - 0x68, 0x10, 0x08, 0x0C, 0x04, 0x04, 0x04, 0x06, 0x06, 0x06, 0x06, 0x0E, - 0x07, 0xFE, 0x3E, 0x10, 0x40, 0x08, 0x02, 0x00, 0x80, 0x40, 0xE0, 0x04, - 0x00, 0x80, 0x10, 0x04, 0x01, 0x00, 0xD8, 0x63, 0xE0, 0x06, 0x0A, 0x0A, - 0x12, 0x22, 0x22, 0x42, 0x42, 0x82, 0x82, 0xFF, 0x02, 0x02, 0x02, 0x0F, - 0x7F, 0x20, 0x10, 0x08, 0x04, 0x02, 0xF1, 0x8C, 0x03, 0x00, 0x80, 0x40, - 0x20, 0x18, 0x16, 0x18, 0xF0, 0x0F, 0x8C, 0x08, 0x08, 0x04, 0x04, 0x02, - 0x79, 0x46, 0xC1, 0xE0, 0x60, 0x28, 0x14, 0x19, 0x08, 0x78, 0xFF, 0x81, - 0x81, 0x02, 0x02, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08, - 0x08, 0x3E, 0x31, 0xB0, 0x70, 0x18, 0x0C, 0x05, 0x8C, 0x38, 0x63, 0x40, - 0x60, 0x30, 0x18, 0x1B, 0x18, 0xF8, 0x3C, 0x31, 0x30, 0x50, 0x28, 0x0C, - 0x0F, 0x06, 0x85, 0x3C, 0x80, 0x40, 0x40, 0x20, 0x20, 0x63, 0xE0, 0xFF, - 0x80, 0x07, 0xFC, 0x39, 0xCE, 0x00, 0x00, 0x06, 0x33, 0x98, 0xC4, 0x00, - 0x00, 0xC0, 0x60, 0x18, 0x0C, 0x06, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, - 0x00, 0x30, 0x01, 0x00, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xC0, 0x06, - 0x00, 0x30, 0x01, 0x80, 0x18, 0x01, 0x80, 0xC0, 0x30, 0x18, 0x0C, 0x02, - 0x00, 0x00, 0x3E, 0x60, 0xA0, 0x20, 0x10, 0x08, 0x08, 0x18, 0x10, 0x08, - 0x00, 0x00, 0x00, 0x01, 0xC0, 0xE0, 0x1C, 0x31, 0x10, 0x50, 0x28, 0x14, - 0x3A, 0x25, 0x22, 0x91, 0x4C, 0xA3, 0xF0, 0x08, 0x02, 0x01, 0x80, 0x7C, - 0x3F, 0x00, 0x0C, 0x00, 0x48, 0x01, 0x20, 0x04, 0x40, 0x21, 0x00, 0x84, - 0x04, 0x08, 0x1F, 0xE0, 0x40, 0x82, 0x01, 0x08, 0x04, 0x20, 0x13, 0xE1, - 0xF0, 0xFF, 0x08, 0x11, 0x01, 0x20, 0x24, 0x04, 0x81, 0x1F, 0xC2, 0x06, - 0x40, 0x68, 0x05, 0x00, 0xA0, 0x14, 0x05, 0xFF, 0x00, 0x1E, 0x48, 0x74, - 0x05, 0x01, 0x80, 0x20, 0x08, 0x02, 0x00, 0x80, 0x20, 0x04, 0x01, 0x01, - 0x30, 0x87, 0xC0, 0xFE, 0x10, 0x44, 0x09, 0x02, 0x40, 0x50, 0x14, 0x05, - 0x01, 0x40, 0x50, 0x14, 0x0D, 0x02, 0x41, 0x3F, 0x80, 0xFF, 0xC8, 0x09, - 0x01, 0x20, 0x04, 0x00, 0x88, 0x1F, 0x02, 0x20, 0x40, 0x08, 0x01, 0x00, - 0xA0, 0x14, 0x03, 0xFF, 0xC0, 0xFF, 0xE8, 0x05, 0x00, 0xA0, 0x04, 0x00, - 0x88, 0x1F, 0x02, 0x20, 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x01, 0xF0, - 0x00, 0x1F, 0x46, 0x19, 0x01, 0x60, 0x28, 0x01, 0x00, 0x20, 0x04, 0x00, - 0x83, 0xF0, 0x0B, 0x01, 0x20, 0x23, 0x0C, 0x3E, 0x00, 0xE1, 0xD0, 0x24, - 0x09, 0x02, 0x40, 0x90, 0x27, 0xF9, 0x02, 0x40, 0x90, 0x24, 0x09, 0x02, - 0x40, 0xB8, 0x70, 0xFE, 0x20, 0x40, 0x81, 0x02, 0x04, 0x08, 0x10, 0x20, - 0x40, 0x81, 0x1F, 0xC0, 0x0F, 0xE0, 0x10, 0x02, 0x00, 0x40, 0x08, 0x01, - 0x00, 0x20, 0x04, 0x80, 0x90, 0x12, 0x02, 0x40, 0xC6, 0x30, 0x7C, 0x00, - 0xF1, 0xE4, 0x0C, 0x41, 0x04, 0x20, 0x44, 0x04, 0x80, 0x5C, 0x06, 0x60, - 0x43, 0x04, 0x10, 0x40, 0x84, 0x08, 0x40, 0xCF, 0x07, 0xF8, 0x04, 0x00, - 0x80, 0x10, 0x02, 0x00, 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x04, 0x80, - 0x90, 0x12, 0x03, 0xFF, 0xC0, 0xE0, 0x3B, 0x01, 0x94, 0x14, 0xA0, 0xA4, - 0x89, 0x24, 0x49, 0x14, 0x48, 0xA2, 0x45, 0x12, 0x10, 0x90, 0x04, 0x80, - 0x24, 0x01, 0x78, 0x3C, 0xE0, 0xF6, 0x02, 0x50, 0x25, 0x02, 0x48, 0x24, - 0xC2, 0x44, 0x24, 0x22, 0x43, 0x24, 0x12, 0x40, 0xA4, 0x0A, 0x40, 0x6F, - 0x06, 0x0F, 0x03, 0x0C, 0x60, 0x64, 0x02, 0x80, 0x18, 0x01, 0x80, 0x18, - 0x01, 0x80, 0x18, 0x01, 0x40, 0x26, 0x06, 0x30, 0xC0, 0xF0, 0xFF, 0x10, - 0x64, 0x05, 0x01, 0x40, 0x50, 0x34, 0x19, 0xFC, 0x40, 0x10, 0x04, 0x01, - 0x00, 0x40, 0x3E, 0x00, 0x0F, 0x03, 0x0C, 0x60, 0x64, 0x02, 0x80, 0x18, - 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x01, 0x40, 0x26, 0x06, 0x30, 0xC1, - 0xF0, 0x0C, 0x01, 0xF1, 0x30, 0xE0, 0xFF, 0x04, 0x18, 0x40, 0xC4, 0x04, - 0x40, 0x44, 0x0C, 0x41, 0x87, 0xE0, 0x43, 0x04, 0x10, 0x40, 0x84, 0x04, - 0x40, 0x4F, 0x03, 0x1F, 0x48, 0x34, 0x05, 0x01, 0x40, 0x08, 0x01, 0xC0, - 0x0E, 0x00, 0x40, 0x18, 0x06, 0x01, 0xE1, 0xA7, 0xC0, 0xFF, 0xF0, 0x86, - 0x10, 0x82, 0x00, 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, - 0x02, 0x00, 0x40, 0x7F, 0x00, 0xF0, 0xF4, 0x02, 0x40, 0x24, 0x02, 0x40, - 0x24, 0x02, 0x40, 0x24, 0x02, 0x40, 0x24, 0x02, 0x40, 0x22, 0x04, 0x30, - 0xC0, 0xF0, 0xF8, 0x7C, 0x80, 0x22, 0x01, 0x04, 0x04, 0x10, 0x20, 0x40, - 0x80, 0x82, 0x02, 0x10, 0x08, 0x40, 0x11, 0x00, 0x48, 0x01, 0xA0, 0x03, - 0x00, 0x0C, 0x00, 0xF8, 0x7C, 0x80, 0x22, 0x00, 0x88, 0xC2, 0x23, 0x10, - 0x8E, 0x42, 0x29, 0x09, 0x24, 0x24, 0x90, 0x91, 0x41, 0x85, 0x06, 0x14, - 0x18, 0x70, 0x60, 0x80, 0xF0, 0xF2, 0x06, 0x30, 0x41, 0x08, 0x09, 0x80, - 0x50, 0x06, 0x00, 0x60, 0x0D, 0x00, 0x88, 0x10, 0xC2, 0x04, 0x60, 0x2F, - 0x0F, 0xF0, 0xF2, 0x02, 0x10, 0x41, 0x04, 0x08, 0x80, 0x50, 0x05, 0x00, - 0x20, 0x02, 0x00, 0x20, 0x02, 0x00, 0x20, 0x02, 0x01, 0xFC, 0xFF, 0x40, - 0xA0, 0x90, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x10, 0x50, 0x30, 0x18, - 0x0F, 0xFC, 0xF2, 0x49, 0x24, 0x92, 0x49, 0x24, 0x9C, 0x80, 0x60, 0x10, - 0x08, 0x02, 0x01, 0x00, 0x40, 0x20, 0x08, 0x04, 0x01, 0x00, 0x80, 0x20, - 0x10, 0x04, 0x02, 0x00, 0x80, 0x40, 0xE4, 0x92, 0x49, 0x24, 0x92, 0x49, - 0x3C, 0x08, 0x0C, 0x09, 0x0C, 0x4C, 0x14, 0x04, 0xFF, 0xFC, 0x84, 0x21, - 0x3E, 0x00, 0x60, 0x08, 0x02, 0x3F, 0x98, 0x28, 0x0A, 0x02, 0xC3, 0x9F, - 0x30, 0xE0, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, 0x13, 0xE0, 0xA0, - 0x86, 0x02, 0x20, 0x09, 0x00, 0x48, 0x02, 0x40, 0x13, 0x01, 0x14, 0x1B, - 0x9F, 0x00, 0x1F, 0x4C, 0x19, 0x01, 0x40, 0x28, 0x01, 0x00, 0x20, 0x02, - 0x00, 0x60, 0x43, 0xF0, 0x00, 0xC0, 0x08, 0x01, 0x00, 0x20, 0x04, 0x3C, - 0x98, 0x52, 0x06, 0x80, 0x50, 0x0A, 0x01, 0x40, 0x24, 0x0C, 0xC2, 0x87, - 0x98, 0x3F, 0x18, 0x68, 0x06, 0x01, 0xFF, 0xE0, 0x08, 0x03, 0x00, 0x60, - 0xC7, 0xC0, 0x0F, 0x98, 0x08, 0x04, 0x02, 0x07, 0xF8, 0x80, 0x40, 0x20, - 0x10, 0x08, 0x04, 0x02, 0x01, 0x03, 0xF8, 0x1E, 0x6C, 0x39, 0x03, 0x40, - 0x28, 0x05, 0x00, 0xA0, 0x12, 0x06, 0x61, 0x43, 0xC8, 0x01, 0x00, 0x20, - 0x08, 0x3E, 0x00, 0xC0, 0x10, 0x04, 0x01, 0x00, 0x40, 0x13, 0x87, 0x11, - 0x82, 0x40, 0x90, 0x24, 0x09, 0x02, 0x40, 0x90, 0x2E, 0x1C, 0x08, 0x04, - 0x02, 0x00, 0x00, 0x03, 0xC0, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00, - 0x80, 0x43, 0xFE, 0x04, 0x08, 0x10, 0x00, 0x1F, 0xC0, 0x81, 0x02, 0x04, - 0x08, 0x10, 0x20, 0x40, 0x81, 0x02, 0x0B, 0xE0, 0xE0, 0x02, 0x00, 0x20, - 0x02, 0x00, 0x20, 0x02, 0x3C, 0x21, 0x02, 0x60, 0x2C, 0x03, 0x80, 0x24, - 0x02, 0x20, 0x21, 0x02, 0x08, 0xE1, 0xF0, 0x78, 0x04, 0x02, 0x01, 0x00, - 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00, 0x80, 0x43, 0xFE, - 0xDC, 0xE3, 0x19, 0x90, 0x84, 0x84, 0x24, 0x21, 0x21, 0x09, 0x08, 0x48, - 0x42, 0x42, 0x17, 0x18, 0xC0, 0x67, 0x83, 0x84, 0x20, 0x22, 0x02, 0x20, - 0x22, 0x02, 0x20, 0x22, 0x02, 0x20, 0x2F, 0x07, 0x1F, 0x04, 0x11, 0x01, - 0x40, 0x18, 0x03, 0x00, 0x60, 0x0A, 0x02, 0x20, 0x83, 0xE0, 0xCF, 0x85, - 0x06, 0x60, 0x24, 0x01, 0x40, 0x14, 0x01, 0x40, 0x16, 0x02, 0x50, 0x44, - 0xF8, 0x40, 0x04, 0x00, 0x40, 0x0F, 0x00, 0x1E, 0x6C, 0x3B, 0x03, 0x40, - 0x28, 0x05, 0x00, 0xA0, 0x12, 0x06, 0x61, 0x43, 0xC8, 0x01, 0x00, 0x20, - 0x04, 0x03, 0xC0, 0xE3, 0x8B, 0x13, 0x80, 0x80, 0x20, 0x08, 0x02, 0x00, - 0x80, 0x20, 0x3F, 0x80, 0x1F, 0x58, 0x34, 0x05, 0x80, 0x1E, 0x00, 0x60, - 0x06, 0x01, 0xC0, 0xAF, 0xC0, 0x20, 0x04, 0x00, 0x80, 0x10, 0x0F, 0xF0, - 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, 0x03, 0x04, 0x3F, - 0x00, 0xC1, 0xC8, 0x09, 0x01, 0x20, 0x24, 0x04, 0x80, 0x90, 0x12, 0x02, - 0x61, 0xC7, 0xCC, 0xF8, 0xF9, 0x01, 0x08, 0x10, 0x60, 0x81, 0x08, 0x08, - 0x40, 0x22, 0x01, 0x20, 0x05, 0x00, 0x30, 0x00, 0xF0, 0x7A, 0x01, 0x10, - 0x08, 0x8C, 0x42, 0x62, 0x12, 0x90, 0xA5, 0x05, 0x18, 0x28, 0xC0, 0x86, - 0x00, 0x78, 0xF3, 0x04, 0x18, 0x80, 0xD0, 0x06, 0x00, 0x70, 0x09, 0x81, - 0x0C, 0x20, 0x6F, 0x8F, 0xF0, 0xF2, 0x02, 0x20, 0x41, 0x04, 0x10, 0x80, - 0x88, 0x09, 0x00, 0x50, 0x06, 0x00, 0x20, 0x04, 0x00, 0x40, 0x08, 0x0F, - 0xE0, 0xFF, 0x41, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0xBF, - 0xC0, 0x19, 0x08, 0x42, 0x10, 0x84, 0x64, 0x18, 0x42, 0x10, 0x84, 0x20, - 0xC0, 0xFF, 0xFF, 0xC0, 0xC1, 0x08, 0x42, 0x10, 0x84, 0x10, 0x4C, 0x42, - 0x10, 0x84, 0x26, 0x00, 0x38, 0x13, 0x38, 0x38}; - -const GFXglyph FreeMono12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 3, 15, 14, 6, -14}, // 0x21 '!' - {6, 8, 7, 14, 3, -14}, // 0x22 '"' - {13, 10, 16, 14, 2, -14}, // 0x23 '#' - {33, 10, 17, 14, 2, -14}, // 0x24 '$' - {55, 10, 15, 14, 2, -14}, // 0x25 '%' - {74, 9, 12, 14, 3, -11}, // 0x26 '&' - {88, 3, 7, 14, 5, -14}, // 0x27 ''' - {91, 3, 18, 14, 7, -14}, // 0x28 '(' - {98, 3, 18, 14, 4, -14}, // 0x29 ')' - {105, 9, 9, 14, 3, -14}, // 0x2A '*' - {116, 9, 11, 14, 3, -11}, // 0x2B '+' - {129, 5, 7, 14, 3, -3}, // 0x2C ',' - {134, 11, 1, 14, 2, -6}, // 0x2D '-' - {136, 3, 3, 14, 5, -2}, // 0x2E '.' - {138, 9, 18, 14, 3, -15}, // 0x2F '/' - {159, 9, 15, 14, 3, -14}, // 0x30 '0' - {176, 7, 14, 14, 4, -13}, // 0x31 '1' - {189, 9, 15, 14, 2, -14}, // 0x32 '2' - {206, 10, 15, 14, 2, -14}, // 0x33 '3' - {225, 8, 15, 14, 3, -14}, // 0x34 '4' - {240, 9, 15, 14, 3, -14}, // 0x35 '5' - {257, 9, 15, 14, 3, -14}, // 0x36 '6' - {274, 8, 15, 14, 3, -14}, // 0x37 '7' - {289, 9, 15, 14, 3, -14}, // 0x38 '8' - {306, 9, 15, 14, 3, -14}, // 0x39 '9' - {323, 3, 10, 14, 5, -9}, // 0x3A ':' - {327, 5, 13, 14, 3, -9}, // 0x3B ';' - {336, 11, 11, 14, 2, -11}, // 0x3C '<' - {352, 12, 4, 14, 1, -8}, // 0x3D '=' - {358, 11, 11, 14, 2, -11}, // 0x3E '>' - {374, 9, 14, 14, 3, -13}, // 0x3F '?' - {390, 9, 16, 14, 3, -14}, // 0x40 '@' - {408, 14, 14, 14, 0, -13}, // 0x41 'A' - {433, 11, 14, 14, 2, -13}, // 0x42 'B' - {453, 10, 14, 14, 2, -13}, // 0x43 'C' - {471, 10, 14, 14, 2, -13}, // 0x44 'D' - {489, 11, 14, 14, 2, -13}, // 0x45 'E' - {509, 11, 14, 14, 2, -13}, // 0x46 'F' - {529, 11, 14, 14, 2, -13}, // 0x47 'G' - {549, 10, 14, 14, 2, -13}, // 0x48 'H' - {567, 7, 14, 14, 4, -13}, // 0x49 'I' - {580, 11, 14, 14, 2, -13}, // 0x4A 'J' - {600, 12, 14, 14, 2, -13}, // 0x4B 'K' - {621, 11, 14, 14, 2, -13}, // 0x4C 'L' - {641, 13, 14, 14, 1, -13}, // 0x4D 'M' - {664, 12, 14, 14, 1, -13}, // 0x4E 'N' - {685, 12, 14, 14, 1, -13}, // 0x4F 'O' - {706, 10, 14, 14, 2, -13}, // 0x50 'P' - {724, 12, 17, 14, 1, -13}, // 0x51 'Q' - {750, 12, 14, 14, 2, -13}, // 0x52 'R' - {771, 10, 14, 14, 2, -13}, // 0x53 'S' - {789, 11, 14, 14, 2, -13}, // 0x54 'T' - {809, 12, 14, 14, 1, -13}, // 0x55 'U' - {830, 14, 14, 14, 0, -13}, // 0x56 'V' - {855, 14, 14, 14, 0, -13}, // 0x57 'W' - {880, 12, 14, 14, 1, -13}, // 0x58 'X' - {901, 12, 14, 14, 1, -13}, // 0x59 'Y' - {922, 9, 14, 14, 3, -13}, // 0x5A 'Z' - {938, 3, 18, 14, 7, -14}, // 0x5B '[' - {945, 9, 18, 14, 3, -15}, // 0x5C '\' - {966, 3, 18, 14, 5, -14}, // 0x5D ']' - {973, 9, 6, 14, 3, -14}, // 0x5E '^' - {980, 14, 1, 14, 0, 3}, // 0x5F '_' - {982, 4, 4, 14, 4, -15}, // 0x60 '`' - {984, 10, 10, 14, 2, -9}, // 0x61 'a' - {997, 13, 15, 14, 0, -14}, // 0x62 'b' - {1022, 11, 10, 14, 2, -9}, // 0x63 'c' - {1036, 11, 15, 14, 2, -14}, // 0x64 'd' - {1057, 10, 10, 14, 2, -9}, // 0x65 'e' - {1070, 9, 15, 14, 4, -14}, // 0x66 'f' - {1087, 11, 14, 14, 2, -9}, // 0x67 'g' - {1107, 10, 15, 14, 2, -14}, // 0x68 'h' - {1126, 9, 15, 14, 3, -14}, // 0x69 'i' - {1143, 7, 19, 14, 3, -14}, // 0x6A 'j' - {1160, 12, 15, 14, 1, -14}, // 0x6B 'k' - {1183, 9, 15, 14, 3, -14}, // 0x6C 'l' - {1200, 13, 10, 14, 1, -9}, // 0x6D 'm' - {1217, 12, 10, 14, 1, -9}, // 0x6E 'n' - {1232, 11, 10, 14, 2, -9}, // 0x6F 'o' - {1246, 12, 14, 14, 1, -9}, // 0x70 'p' - {1267, 11, 14, 14, 2, -9}, // 0x71 'q' - {1287, 10, 10, 14, 3, -9}, // 0x72 'r' - {1300, 10, 10, 14, 2, -9}, // 0x73 's' - {1313, 11, 14, 14, 1, -13}, // 0x74 't' - {1333, 11, 10, 14, 2, -9}, // 0x75 'u' - {1347, 13, 10, 14, 1, -9}, // 0x76 'v' - {1364, 13, 10, 14, 1, -9}, // 0x77 'w' - {1381, 12, 10, 14, 1, -9}, // 0x78 'x' - {1396, 12, 14, 14, 1, -9}, // 0x79 'y' - {1417, 9, 10, 14, 3, -9}, // 0x7A 'z' - {1429, 5, 18, 14, 5, -14}, // 0x7B '{' - {1441, 1, 18, 14, 7, -14}, // 0x7C '|' - {1444, 5, 18, 14, 5, -14}, // 0x7D '}' - {1456, 10, 3, 14, 2, -7}}; // 0x7E '~' - -const GFXfont FreeMono12pt7b PROGMEM = {(uint8_t *)FreeMono12pt7bBitmaps, - (GFXglyph *)FreeMono12pt7bGlyphs, 0x20, - 0x7E, 24}; - -// Approx. 2132 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono18pt7b.h deleted file mode 100644 index 6a3641c..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono18pt7b.h +++ /dev/null @@ -1,365 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono18pt7bBitmaps[] PROGMEM = { - 0x27, 0x77, 0x77, 0x77, 0x77, 0x22, 0x22, 0x20, 0x00, 0x6F, 0xF6, 0xF1, - 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1E, 0xC3, 0x98, 0x33, 0x06, 0x60, 0xCC, - 0x18, 0x04, 0x20, 0x10, 0x80, 0x42, 0x01, 0x08, 0x04, 0x20, 0x10, 0x80, - 0x42, 0x01, 0x10, 0x04, 0x41, 0xFF, 0xF0, 0x44, 0x02, 0x10, 0x08, 0x40, - 0x21, 0x0F, 0xFF, 0xC2, 0x10, 0x08, 0x40, 0x21, 0x00, 0x84, 0x02, 0x10, - 0x08, 0x40, 0x23, 0x00, 0x88, 0x02, 0x20, 0x02, 0x00, 0x10, 0x00, 0x80, - 0x1F, 0xA3, 0x07, 0x10, 0x09, 0x00, 0x48, 0x00, 0x40, 0x03, 0x00, 0x0C, - 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x18, 0x00, 0x20, 0x01, 0x80, 0x0C, 0x00, - 0x70, 0x05, 0xE0, 0xC9, 0xF8, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, - 0x10, 0x00, 0x1E, 0x00, 0x42, 0x01, 0x02, 0x02, 0x04, 0x04, 0x08, 0x08, - 0x10, 0x08, 0x40, 0x0F, 0x00, 0x00, 0x1E, 0x01, 0xF0, 0x1F, 0x01, 0xE0, - 0x0E, 0x00, 0x00, 0x3C, 0x00, 0x86, 0x02, 0x06, 0x04, 0x04, 0x08, 0x08, - 0x10, 0x30, 0x10, 0xC0, 0x1E, 0x00, 0x0F, 0xC1, 0x00, 0x20, 0x02, 0x00, - 0x20, 0x02, 0x00, 0x10, 0x01, 0x00, 0x08, 0x03, 0xC0, 0x6C, 0x3C, 0x62, - 0x82, 0x68, 0x34, 0x81, 0xCC, 0x08, 0x61, 0xC3, 0xE7, 0xFF, 0xFF, 0xF6, - 0x66, 0x66, 0x08, 0xC4, 0x62, 0x31, 0x8C, 0xC6, 0x31, 0x8C, 0x63, 0x18, - 0xC3, 0x18, 0xC2, 0x18, 0xC3, 0x18, 0x86, 0x10, 0xC2, 0x18, 0xC6, 0x10, - 0xC6, 0x31, 0x8C, 0x63, 0x18, 0x8C, 0x62, 0x31, 0x98, 0x80, 0x02, 0x00, - 0x10, 0x00, 0x80, 0x04, 0x0C, 0x21, 0x9D, 0x70, 0x1C, 0x00, 0xA0, 0x0D, - 0x80, 0xC6, 0x04, 0x10, 0x40, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, - 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0xFF, 0xFE, 0x02, - 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, - 0x01, 0x00, 0x3E, 0x78, 0xF3, 0xC7, 0x8E, 0x18, 0x70, 0xC1, 0x80, 0xFF, - 0xFE, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x08, 0x00, 0xC0, 0x04, 0x00, 0x60, - 0x02, 0x00, 0x30, 0x01, 0x00, 0x18, 0x00, 0x80, 0x0C, 0x00, 0x40, 0x02, - 0x00, 0x20, 0x01, 0x00, 0x10, 0x00, 0x80, 0x08, 0x00, 0x40, 0x04, 0x00, - 0x20, 0x02, 0x00, 0x10, 0x01, 0x00, 0x08, 0x00, 0x80, 0x04, 0x00, 0x00, - 0x0F, 0x81, 0x82, 0x08, 0x08, 0x80, 0x24, 0x01, 0x60, 0x0E, 0x00, 0x30, - 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x06, 0x00, - 0x30, 0x03, 0x40, 0x12, 0x00, 0x88, 0x08, 0x60, 0xC0, 0xF8, 0x00, 0x06, - 0x00, 0x70, 0x06, 0x80, 0x64, 0x06, 0x20, 0x31, 0x00, 0x08, 0x00, 0x40, - 0x02, 0x00, 0x10, 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, - 0x40, 0x02, 0x00, 0x10, 0x00, 0x80, 0x04, 0x0F, 0xFF, 0x80, 0x0F, 0x80, - 0xC3, 0x08, 0x04, 0x80, 0x24, 0x00, 0x80, 0x04, 0x00, 0x20, 0x02, 0x00, - 0x10, 0x01, 0x00, 0x10, 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x01, 0x80, - 0x18, 0x01, 0x80, 0x58, 0x03, 0x80, 0x1F, 0xFF, 0x80, 0x0F, 0xC0, 0xC0, - 0x86, 0x01, 0x00, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x04, 0x00, - 0x20, 0x0F, 0x00, 0x06, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x40, - 0x01, 0x00, 0x04, 0x00, 0x2C, 0x01, 0x9C, 0x0C, 0x0F, 0xC0, 0x01, 0xC0, - 0x14, 0x02, 0x40, 0x64, 0x04, 0x40, 0xC4, 0x08, 0x41, 0x84, 0x10, 0x42, - 0x04, 0x20, 0x44, 0x04, 0x40, 0x48, 0x04, 0xFF, 0xF0, 0x04, 0x00, 0x40, - 0x04, 0x00, 0x40, 0x04, 0x07, 0xF0, 0x3F, 0xF0, 0x80, 0x02, 0x00, 0x08, - 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x0B, 0xF0, 0x30, 0x30, 0x00, 0x60, - 0x00, 0x80, 0x01, 0x00, 0x04, 0x00, 0x10, 0x00, 0x40, 0x01, 0x00, 0x0E, - 0x00, 0x2C, 0x01, 0x0C, 0x18, 0x0F, 0xC0, 0x01, 0xF0, 0x60, 0x18, 0x03, - 0x00, 0x20, 0x04, 0x00, 0x40, 0x0C, 0x00, 0x80, 0x08, 0xF8, 0x98, 0x4A, - 0x02, 0xE0, 0x3C, 0x01, 0x80, 0x14, 0x01, 0x40, 0x14, 0x03, 0x20, 0x21, - 0x0C, 0x0F, 0x80, 0xFF, 0xF8, 0x01, 0x80, 0x18, 0x03, 0x00, 0x20, 0x02, - 0x00, 0x20, 0x04, 0x00, 0x40, 0x04, 0x00, 0xC0, 0x08, 0x00, 0x80, 0x18, - 0x01, 0x00, 0x10, 0x01, 0x00, 0x30, 0x02, 0x00, 0x20, 0x02, 0x00, 0x0F, - 0x81, 0x83, 0x10, 0x05, 0x80, 0x38, 0x00, 0xC0, 0x06, 0x00, 0x30, 0x03, - 0x40, 0x11, 0x83, 0x07, 0xF0, 0x60, 0xC4, 0x01, 0x60, 0x0E, 0x00, 0x30, - 0x01, 0x80, 0x0E, 0x00, 0xD0, 0x04, 0x60, 0xC1, 0xFC, 0x00, 0x1F, 0x03, - 0x08, 0x40, 0x4C, 0x02, 0x80, 0x28, 0x02, 0x80, 0x18, 0x03, 0xC0, 0x74, - 0x05, 0x21, 0x91, 0xF1, 0x00, 0x10, 0x03, 0x00, 0x20, 0x02, 0x00, 0x40, - 0x0C, 0x01, 0x80, 0x60, 0xF8, 0x00, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, - 0x1D, 0xFF, 0xFD, 0xC0, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, 0x00, - 0x00, 0xF1, 0xE3, 0x8F, 0x1C, 0x38, 0xE1, 0xC3, 0x06, 0x00, 0x00, 0x06, - 0x00, 0x18, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x06, 0x00, 0x38, - 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x18, 0x00, 0x1C, 0x00, 0x0E, - 0x00, 0x07, 0x00, 0x03, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x07, 0xFF, 0xFC, 0xC0, 0x00, 0xC0, 0x00, 0xE0, 0x00, 0x70, - 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0C, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x70, - 0x03, 0x80, 0x0C, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0x60, 0x00, 0x3F, - 0x8E, 0x0C, 0x80, 0x28, 0x01, 0x80, 0x10, 0x01, 0x00, 0x10, 0x02, 0x00, - 0xC0, 0x38, 0x06, 0x00, 0x40, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, - 0x01, 0xF0, 0x1F, 0x00, 0xE0, 0x0F, 0x01, 0x86, 0x08, 0x08, 0x80, 0x24, - 0x01, 0x40, 0x0A, 0x00, 0x50, 0x1E, 0x83, 0x14, 0x20, 0xA2, 0x05, 0x10, - 0x28, 0x81, 0x46, 0x0A, 0x18, 0x50, 0x3F, 0x80, 0x04, 0x00, 0x10, 0x00, - 0x80, 0x02, 0x00, 0x18, 0x18, 0x3F, 0x00, 0x1F, 0xF0, 0x00, 0x06, 0x80, - 0x00, 0x34, 0x00, 0x01, 0x30, 0x00, 0x18, 0x80, 0x00, 0x86, 0x00, 0x04, - 0x30, 0x00, 0x60, 0x80, 0x02, 0x06, 0x00, 0x10, 0x10, 0x01, 0x80, 0x80, - 0x08, 0x06, 0x00, 0x7F, 0xF0, 0x06, 0x00, 0x80, 0x20, 0x06, 0x01, 0x00, - 0x10, 0x18, 0x00, 0xC0, 0x80, 0x06, 0x04, 0x00, 0x11, 0xFC, 0x0F, 0xF0, - 0xFF, 0xF8, 0x04, 0x01, 0x01, 0x00, 0x20, 0x40, 0x04, 0x10, 0x01, 0x04, - 0x00, 0x41, 0x00, 0x10, 0x40, 0x08, 0x10, 0x0C, 0x07, 0xFF, 0x01, 0x00, - 0x70, 0x40, 0x06, 0x10, 0x00, 0x84, 0x00, 0x11, 0x00, 0x04, 0x40, 0x01, - 0x10, 0x00, 0x44, 0x00, 0x21, 0x00, 0x33, 0xFF, 0xF8, 0x03, 0xF1, 0x06, - 0x0E, 0x8C, 0x01, 0xC4, 0x00, 0x64, 0x00, 0x12, 0x00, 0x0A, 0x00, 0x01, - 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, 0x08, 0x00, - 0x04, 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x20, 0x01, 0x88, 0x01, 0x83, - 0x03, 0x80, 0x7E, 0x00, 0xFF, 0xE0, 0x20, 0x18, 0x20, 0x0C, 0x20, 0x04, - 0x20, 0x02, 0x20, 0x02, 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, - 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, 0x20, 0x02, 0x20, 0x02, - 0x20, 0x04, 0x20, 0x0C, 0x20, 0x18, 0xFF, 0xE0, 0xFF, 0xFF, 0x08, 0x00, - 0x84, 0x00, 0x42, 0x00, 0x21, 0x00, 0x10, 0x80, 0x00, 0x40, 0x00, 0x20, - 0x40, 0x10, 0x20, 0x0F, 0xF0, 0x04, 0x08, 0x02, 0x04, 0x01, 0x00, 0x00, - 0x80, 0x00, 0x40, 0x02, 0x20, 0x01, 0x10, 0x00, 0x88, 0x00, 0x44, 0x00, - 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0x88, 0x00, 0x44, 0x00, 0x22, 0x00, 0x11, - 0x00, 0x08, 0x80, 0x00, 0x40, 0x00, 0x20, 0x40, 0x10, 0x20, 0x0F, 0xF0, - 0x04, 0x08, 0x02, 0x04, 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, - 0x00, 0x10, 0x00, 0x08, 0x00, 0x04, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xF9, - 0x06, 0x07, 0x84, 0x00, 0xC4, 0x00, 0x24, 0x00, 0x12, 0x00, 0x02, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x0F, 0xF8, - 0x00, 0x14, 0x00, 0x09, 0x00, 0x04, 0x80, 0x02, 0x20, 0x01, 0x18, 0x00, - 0x83, 0x01, 0xC0, 0x7F, 0x00, 0xFC, 0x3F, 0x20, 0x04, 0x20, 0x04, 0x20, - 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x3F, - 0xFC, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, - 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0xFC, 0x3F, 0xFF, 0xF8, 0x10, - 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, - 0x10, 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, - 0x00, 0x10, 0x00, 0x81, 0xFF, 0xF0, 0x03, 0xFF, 0x80, 0x04, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, - 0x08, 0x00, 0x04, 0x00, 0x02, 0x10, 0x01, 0x08, 0x00, 0x84, 0x00, 0x42, - 0x00, 0x21, 0x00, 0x10, 0x80, 0x10, 0x20, 0x18, 0x0C, 0x18, 0x01, 0xF0, - 0x00, 0xFF, 0x1F, 0x84, 0x01, 0x81, 0x00, 0xC0, 0x40, 0x60, 0x10, 0x30, - 0x04, 0x18, 0x01, 0x0C, 0x00, 0x46, 0x00, 0x13, 0x00, 0x05, 0xF0, 0x01, - 0xC6, 0x00, 0x60, 0xC0, 0x10, 0x18, 0x04, 0x06, 0x01, 0x00, 0xC0, 0x40, - 0x30, 0x10, 0x04, 0x04, 0x01, 0x81, 0x00, 0x23, 0xFC, 0x0F, 0xFF, 0x80, - 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, - 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, - 0x42, 0x00, 0x84, 0x01, 0x08, 0x02, 0x10, 0x04, 0x20, 0x0F, 0xFF, 0xF0, - 0xF0, 0x01, 0xE7, 0x00, 0x70, 0xA0, 0x0A, 0x16, 0x03, 0x42, 0x40, 0x48, - 0x4C, 0x19, 0x08, 0x82, 0x21, 0x10, 0x44, 0x23, 0x18, 0x84, 0x22, 0x10, - 0x86, 0xC2, 0x10, 0x50, 0x42, 0x0E, 0x08, 0x41, 0xC1, 0x08, 0x00, 0x21, - 0x00, 0x04, 0x20, 0x00, 0x84, 0x00, 0x10, 0x80, 0x02, 0x7F, 0x03, 0xF0, - 0xF8, 0x1F, 0xC6, 0x00, 0x41, 0xC0, 0x10, 0x50, 0x04, 0x12, 0x01, 0x04, - 0xC0, 0x41, 0x10, 0x10, 0x46, 0x04, 0x10, 0x81, 0x04, 0x10, 0x41, 0x04, - 0x10, 0x40, 0x84, 0x10, 0x31, 0x04, 0x04, 0x41, 0x01, 0x90, 0x40, 0x24, - 0x10, 0x05, 0x04, 0x01, 0xC1, 0x00, 0x31, 0xFC, 0x0C, 0x03, 0xE0, 0x06, - 0x0C, 0x04, 0x01, 0x04, 0x00, 0x46, 0x00, 0x32, 0x00, 0x0B, 0x00, 0x05, - 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, - 0x0E, 0x00, 0x0D, 0x00, 0x04, 0xC0, 0x06, 0x20, 0x02, 0x08, 0x02, 0x03, - 0x06, 0x00, 0x7C, 0x00, 0xFF, 0xF0, 0x10, 0x0C, 0x10, 0x02, 0x10, 0x03, - 0x10, 0x01, 0x10, 0x01, 0x10, 0x01, 0x10, 0x03, 0x10, 0x06, 0x10, 0x0C, - 0x1F, 0xF0, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, - 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0xFF, 0xC0, 0x03, 0xE0, 0x06, 0x0C, - 0x04, 0x01, 0x04, 0x00, 0x46, 0x00, 0x32, 0x00, 0x0B, 0x00, 0x07, 0x00, - 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, 0x0E, - 0x00, 0x0D, 0x00, 0x04, 0xC0, 0x06, 0x20, 0x02, 0x08, 0x02, 0x03, 0x06, - 0x00, 0xFC, 0x00, 0x30, 0x00, 0x30, 0x00, 0x7F, 0xC6, 0x38, 0x1E, 0xFF, - 0xF0, 0x02, 0x01, 0x80, 0x40, 0x08, 0x08, 0x01, 0x81, 0x00, 0x10, 0x20, - 0x02, 0x04, 0x00, 0x40, 0x80, 0x18, 0x10, 0x06, 0x02, 0x03, 0x80, 0x7F, - 0xC0, 0x08, 0x18, 0x01, 0x01, 0x80, 0x20, 0x18, 0x04, 0x01, 0x80, 0x80, - 0x10, 0x10, 0x03, 0x02, 0x00, 0x20, 0x40, 0x06, 0x7F, 0x80, 0x70, 0x0F, - 0xC8, 0x61, 0xE2, 0x01, 0x90, 0x02, 0x40, 0x09, 0x00, 0x04, 0x00, 0x08, - 0x00, 0x38, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, - 0x00, 0x60, 0x01, 0x80, 0x0F, 0x00, 0x2B, 0x03, 0x23, 0xF0, 0xFF, 0xFF, - 0x02, 0x06, 0x04, 0x0C, 0x08, 0x18, 0x10, 0x20, 0x20, 0x00, 0x40, 0x00, - 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, - 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x01, 0xFF, 0xC0, - 0xFC, 0x1F, 0x90, 0x01, 0x08, 0x00, 0x84, 0x00, 0x42, 0x00, 0x21, 0x00, - 0x10, 0x80, 0x08, 0x40, 0x04, 0x20, 0x02, 0x10, 0x01, 0x08, 0x00, 0x84, - 0x00, 0x42, 0x00, 0x21, 0x00, 0x10, 0x80, 0x08, 0x40, 0x04, 0x10, 0x04, - 0x0C, 0x06, 0x03, 0x06, 0x00, 0x7C, 0x00, 0xFE, 0x03, 0xF8, 0x80, 0x02, - 0x04, 0x00, 0x10, 0x30, 0x01, 0x80, 0x80, 0x08, 0x06, 0x00, 0xC0, 0x30, - 0x06, 0x00, 0x80, 0x20, 0x06, 0x03, 0x00, 0x30, 0x10, 0x00, 0x80, 0x80, - 0x06, 0x0C, 0x00, 0x10, 0x40, 0x00, 0x86, 0x00, 0x06, 0x20, 0x00, 0x11, - 0x00, 0x00, 0xD8, 0x00, 0x06, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, - 0xFC, 0x0F, 0xE8, 0x00, 0x19, 0x00, 0x03, 0x10, 0x00, 0x62, 0x00, 0x08, - 0x41, 0x81, 0x08, 0x28, 0x21, 0x05, 0x04, 0x21, 0xA0, 0x84, 0x36, 0x30, - 0x84, 0x46, 0x08, 0x88, 0xC1, 0x31, 0x18, 0x24, 0x12, 0x04, 0x82, 0x40, - 0xB0, 0x48, 0x14, 0x09, 0x02, 0x80, 0xA0, 0x30, 0x1C, 0x06, 0x03, 0x80, - 0x7E, 0x0F, 0xC2, 0x00, 0x60, 0x60, 0x0C, 0x06, 0x03, 0x00, 0x60, 0xC0, - 0x0C, 0x10, 0x00, 0xC6, 0x00, 0x0D, 0x80, 0x00, 0xA0, 0x00, 0x1C, 0x00, - 0x03, 0x80, 0x00, 0xD8, 0x00, 0x11, 0x00, 0x06, 0x30, 0x01, 0x83, 0x00, - 0x60, 0x30, 0x08, 0x06, 0x03, 0x00, 0x60, 0xC0, 0x06, 0x7F, 0x07, 0xF0, - 0xFC, 0x1F, 0x98, 0x03, 0x04, 0x01, 0x03, 0x01, 0x80, 0xC1, 0x80, 0x20, - 0x80, 0x18, 0xC0, 0x04, 0x40, 0x03, 0x60, 0x00, 0xE0, 0x00, 0x20, 0x00, - 0x10, 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x80, - 0x00, 0x40, 0x00, 0x20, 0x03, 0xFF, 0x80, 0xFF, 0xF4, 0x00, 0xA0, 0x09, - 0x00, 0x48, 0x04, 0x40, 0x40, 0x02, 0x00, 0x20, 0x02, 0x00, 0x10, 0x01, - 0x00, 0x10, 0x00, 0x80, 0x08, 0x04, 0x80, 0x24, 0x01, 0x40, 0x0C, 0x00, - 0x60, 0x03, 0xFF, 0xF0, 0xFC, 0x21, 0x08, 0x42, 0x10, 0x84, 0x21, 0x08, - 0x42, 0x10, 0x84, 0x21, 0x08, 0x42, 0x10, 0xF8, 0x80, 0x02, 0x00, 0x10, - 0x00, 0xC0, 0x02, 0x00, 0x18, 0x00, 0x40, 0x03, 0x00, 0x08, 0x00, 0x40, - 0x01, 0x00, 0x08, 0x00, 0x20, 0x01, 0x00, 0x04, 0x00, 0x20, 0x00, 0x80, - 0x04, 0x00, 0x10, 0x00, 0x80, 0x02, 0x00, 0x10, 0x00, 0x40, 0x02, 0x00, - 0x08, 0x00, 0x40, 0xF8, 0x42, 0x10, 0x84, 0x21, 0x08, 0x42, 0x10, 0x84, - 0x21, 0x08, 0x42, 0x10, 0x84, 0x21, 0xF8, 0x02, 0x00, 0x38, 0x03, 0x60, - 0x11, 0x01, 0x8C, 0x18, 0x31, 0x80, 0xD8, 0x03, 0x80, 0x08, 0xFF, 0xFF, - 0xF8, 0xC1, 0x83, 0x06, 0x0C, 0x0F, 0xC0, 0x70, 0x30, 0x00, 0x10, 0x00, - 0x08, 0x00, 0x08, 0x00, 0x08, 0x0F, 0xF8, 0x30, 0x08, 0x40, 0x08, 0x80, - 0x08, 0x80, 0x08, 0x80, 0x08, 0x80, 0x38, 0x60, 0xE8, 0x3F, 0x8F, 0xF0, - 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x04, 0x00, - 0x01, 0x0F, 0x80, 0x4C, 0x18, 0x14, 0x01, 0x06, 0x00, 0x21, 0x80, 0x08, - 0x40, 0x01, 0x10, 0x00, 0x44, 0x00, 0x11, 0x00, 0x04, 0x40, 0x01, 0x18, - 0x00, 0x86, 0x00, 0x21, 0xC0, 0x10, 0x5C, 0x18, 0xF1, 0xF8, 0x00, 0x07, - 0xE4, 0x30, 0x78, 0x80, 0x32, 0x00, 0x24, 0x00, 0x50, 0x00, 0x20, 0x00, - 0x40, 0x00, 0x80, 0x01, 0x00, 0x03, 0x00, 0x02, 0x00, 0x12, 0x00, 0xC3, - 0x07, 0x01, 0xF8, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x80, 0x00, 0x20, 0x00, - 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x7C, 0x20, 0x60, 0xC8, 0x20, 0x0A, - 0x10, 0x01, 0x84, 0x00, 0x62, 0x00, 0x08, 0x80, 0x02, 0x20, 0x00, 0x88, - 0x00, 0x22, 0x00, 0x08, 0xC0, 0x06, 0x10, 0x01, 0x82, 0x00, 0xE0, 0x60, - 0xE8, 0x0F, 0xE3, 0xC0, 0x07, 0xE0, 0x1C, 0x18, 0x30, 0x0C, 0x60, 0x06, - 0x40, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0xFF, 0xFF, 0xC0, 0x00, 0xC0, 0x00, - 0x40, 0x00, 0x60, 0x00, 0x30, 0x03, 0x0C, 0x0E, 0x03, 0xF0, 0x03, 0xFC, - 0x18, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x0F, 0xFF, 0x82, 0x00, - 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, - 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0xFF, 0xF0, 0x0F, - 0xC7, 0x9C, 0x3A, 0x18, 0x07, 0x08, 0x01, 0x8C, 0x00, 0xC4, 0x00, 0x22, - 0x00, 0x11, 0x00, 0x08, 0x80, 0x04, 0x40, 0x02, 0x10, 0x03, 0x08, 0x01, - 0x82, 0x01, 0x40, 0xC3, 0x20, 0x3F, 0x10, 0x00, 0x08, 0x00, 0x04, 0x00, - 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x7F, 0x00, 0xF0, 0x00, - 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x47, - 0xC0, 0x2C, 0x18, 0x1C, 0x04, 0x0C, 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, - 0x00, 0x20, 0x80, 0x10, 0x40, 0x08, 0x20, 0x04, 0x10, 0x02, 0x08, 0x01, - 0x04, 0x00, 0x82, 0x00, 0x47, 0xC0, 0xF8, 0x06, 0x00, 0x18, 0x00, 0x60, - 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x02, 0x00, 0x08, - 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, - 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x03, 0xFF, 0xF0, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x40, 0x10, 0x04, - 0x01, 0x00, 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, 0x10, 0x04, 0x01, 0x00, - 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, 0x10, 0x08, 0x06, 0xFE, 0x00, 0xF0, - 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, - 0xFE, 0x10, 0x30, 0x10, 0xE0, 0x11, 0xC0, 0x13, 0x00, 0x16, 0x00, 0x1E, - 0x00, 0x1B, 0x00, 0x11, 0x80, 0x10, 0xC0, 0x10, 0x60, 0x10, 0x30, 0x10, - 0x18, 0x10, 0x1C, 0xF0, 0x3F, 0x7E, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, - 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, - 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, - 0x00, 0x20, 0x00, 0x80, 0xFF, 0xFC, 0xEF, 0x9E, 0x07, 0x1E, 0x20, 0xC1, - 0x82, 0x10, 0x20, 0x42, 0x04, 0x08, 0x40, 0x81, 0x08, 0x10, 0x21, 0x02, - 0x04, 0x20, 0x40, 0x84, 0x08, 0x10, 0x81, 0x02, 0x10, 0x20, 0x42, 0x04, - 0x08, 0x40, 0x81, 0x3E, 0x1C, 0x38, 0x71, 0xF0, 0x0B, 0x06, 0x07, 0x01, - 0x03, 0x00, 0x41, 0x00, 0x20, 0x80, 0x10, 0x40, 0x08, 0x20, 0x04, 0x10, - 0x02, 0x08, 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, 0x00, 0x20, 0x80, 0x13, - 0xF0, 0x3E, 0x07, 0xC0, 0x30, 0x60, 0x80, 0x22, 0x00, 0x24, 0x00, 0x50, - 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x05, 0x00, 0x12, 0x00, - 0x22, 0x00, 0x83, 0x06, 0x01, 0xF0, 0x00, 0xF1, 0xFC, 0x05, 0xC1, 0x81, - 0xC0, 0x10, 0x60, 0x02, 0x18, 0x00, 0xC4, 0x00, 0x11, 0x00, 0x04, 0x40, - 0x01, 0x10, 0x00, 0x44, 0x00, 0x11, 0x80, 0x08, 0x60, 0x02, 0x14, 0x01, - 0x04, 0xC1, 0x81, 0x0F, 0x80, 0x40, 0x00, 0x10, 0x00, 0x04, 0x00, 0x01, - 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xE3, 0xC6, - 0x0E, 0x86, 0x00, 0xE1, 0x00, 0x18, 0xC0, 0x06, 0x20, 0x00, 0x88, 0x00, - 0x22, 0x00, 0x08, 0x80, 0x02, 0x20, 0x00, 0x84, 0x00, 0x61, 0x00, 0x18, - 0x20, 0x0A, 0x06, 0x0C, 0x80, 0x7C, 0x20, 0x00, 0x08, 0x00, 0x02, 0x00, - 0x00, 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x02, 0x00, 0x0F, 0xF0, 0xF8, - 0x7C, 0x11, 0x8C, 0x2C, 0x00, 0x70, 0x00, 0xC0, 0x01, 0x00, 0x02, 0x00, - 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x01, - 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xD1, 0x83, 0x98, 0x04, 0x80, 0x24, 0x00, - 0x30, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0x30, 0x00, 0xE0, 0x03, 0x00, 0x1C, - 0x01, 0xF0, 0x1A, 0x7F, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, - 0x00, 0x08, 0x00, 0xFF, 0xFC, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, - 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, - 0x00, 0x08, 0x00, 0x08, 0x01, 0x06, 0x0F, 0x03, 0xF8, 0xF0, 0x3E, 0x08, - 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, 0x00, 0x20, 0x80, 0x10, 0x40, 0x08, - 0x20, 0x04, 0x10, 0x02, 0x08, 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, 0x00, - 0xE0, 0x41, 0xD0, 0x1F, 0x8E, 0xFE, 0x0F, 0xE2, 0x00, 0x20, 0x60, 0x0C, - 0x0C, 0x01, 0x80, 0x80, 0x20, 0x18, 0x0C, 0x01, 0x01, 0x00, 0x30, 0x60, - 0x02, 0x08, 0x00, 0x41, 0x00, 0x0C, 0x60, 0x00, 0x88, 0x00, 0x19, 0x00, - 0x01, 0x40, 0x00, 0x38, 0x00, 0xFC, 0x07, 0xE4, 0x00, 0x10, 0x80, 0x02, - 0x18, 0x20, 0xC3, 0x0E, 0x18, 0x21, 0x42, 0x04, 0x28, 0x40, 0x8D, 0x88, - 0x19, 0x93, 0x03, 0x22, 0x60, 0x2C, 0x68, 0x05, 0x85, 0x00, 0xA0, 0xA0, - 0x1C, 0x1C, 0x01, 0x81, 0x80, 0x7C, 0x1F, 0x18, 0x03, 0x06, 0x03, 0x01, - 0x83, 0x00, 0x63, 0x00, 0x1B, 0x00, 0x07, 0x00, 0x03, 0x80, 0x03, 0x60, - 0x03, 0x18, 0x03, 0x06, 0x03, 0x01, 0x83, 0x00, 0x61, 0x00, 0x33, 0xF0, - 0x7E, 0xFC, 0x1F, 0x90, 0x01, 0x8C, 0x00, 0x86, 0x00, 0xC1, 0x80, 0x40, - 0xC0, 0x60, 0x20, 0x20, 0x18, 0x30, 0x04, 0x10, 0x03, 0x08, 0x00, 0x8C, - 0x00, 0x64, 0x00, 0x16, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x01, 0x00, 0x01, - 0x80, 0x00, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x20, 0x07, 0xFE, 0x00, - 0xFF, 0xF4, 0x01, 0x20, 0x09, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x00, - 0xC0, 0x04, 0x00, 0x40, 0x04, 0x00, 0x40, 0x14, 0x00, 0xA0, 0x07, 0xFF, - 0xE0, 0x07, 0x0C, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x30, 0xC0, 0x30, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x0C, 0x07, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x08, 0x07, 0x0C, 0x10, 0x10, 0x10, 0x10, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x1C, 0x00, 0x44, 0x0D, 0x84, - 0x36, 0x04, 0x40, 0x07, 0x00}; - -const GFXglyph FreeMono18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 4, 22, 21, 8, -21}, // 0x21 '!' - {11, 11, 10, 21, 5, -20}, // 0x22 '"' - {25, 14, 24, 21, 3, -21}, // 0x23 '#' - {67, 13, 26, 21, 4, -22}, // 0x24 '$' - {110, 15, 21, 21, 3, -20}, // 0x25 '%' - {150, 12, 18, 21, 4, -17}, // 0x26 '&' - {177, 4, 10, 21, 8, -20}, // 0x27 ''' - {182, 5, 25, 21, 10, -20}, // 0x28 '(' - {198, 5, 25, 21, 6, -20}, // 0x29 ')' - {214, 13, 12, 21, 4, -20}, // 0x2A '*' - {234, 15, 17, 21, 3, -17}, // 0x2B '+' - {266, 7, 10, 21, 5, -4}, // 0x2C ',' - {275, 15, 1, 21, 3, -9}, // 0x2D '-' - {277, 5, 5, 21, 8, -4}, // 0x2E '.' - {281, 13, 26, 21, 4, -22}, // 0x2F '/' - {324, 13, 21, 21, 4, -20}, // 0x30 '0' - {359, 13, 21, 21, 4, -20}, // 0x31 '1' - {394, 13, 21, 21, 3, -20}, // 0x32 '2' - {429, 14, 21, 21, 3, -20}, // 0x33 '3' - {466, 12, 21, 21, 4, -20}, // 0x34 '4' - {498, 14, 21, 21, 3, -20}, // 0x35 '5' - {535, 12, 21, 21, 5, -20}, // 0x36 '6' - {567, 12, 21, 21, 4, -20}, // 0x37 '7' - {599, 13, 21, 21, 4, -20}, // 0x38 '8' - {634, 12, 21, 21, 5, -20}, // 0x39 '9' - {666, 5, 15, 21, 8, -14}, // 0x3A ':' - {676, 7, 20, 21, 5, -14}, // 0x3B ';' - {694, 15, 16, 21, 3, -17}, // 0x3C '<' - {724, 17, 6, 21, 2, -12}, // 0x3D '=' - {737, 15, 16, 21, 3, -17}, // 0x3E '>' - {767, 12, 20, 21, 5, -19}, // 0x3F '?' - {797, 13, 23, 21, 4, -20}, // 0x40 '@' - {835, 21, 20, 21, 0, -19}, // 0x41 'A' - {888, 18, 20, 21, 1, -19}, // 0x42 'B' - {933, 17, 20, 21, 2, -19}, // 0x43 'C' - {976, 16, 20, 21, 2, -19}, // 0x44 'D' - {1016, 17, 20, 21, 1, -19}, // 0x45 'E' - {1059, 17, 20, 21, 1, -19}, // 0x46 'F' - {1102, 17, 20, 21, 2, -19}, // 0x47 'G' - {1145, 16, 20, 21, 2, -19}, // 0x48 'H' - {1185, 13, 20, 21, 4, -19}, // 0x49 'I' - {1218, 17, 20, 21, 3, -19}, // 0x4A 'J' - {1261, 18, 20, 21, 1, -19}, // 0x4B 'K' - {1306, 15, 20, 21, 3, -19}, // 0x4C 'L' - {1344, 19, 20, 21, 1, -19}, // 0x4D 'M' - {1392, 18, 20, 21, 1, -19}, // 0x4E 'N' - {1437, 17, 20, 21, 2, -19}, // 0x4F 'O' - {1480, 16, 20, 21, 1, -19}, // 0x50 'P' - {1520, 17, 24, 21, 2, -19}, // 0x51 'Q' - {1571, 19, 20, 21, 1, -19}, // 0x52 'R' - {1619, 14, 20, 21, 3, -19}, // 0x53 'S' - {1654, 15, 20, 21, 3, -19}, // 0x54 'T' - {1692, 17, 20, 21, 2, -19}, // 0x55 'U' - {1735, 21, 20, 21, 0, -19}, // 0x56 'V' - {1788, 19, 20, 21, 1, -19}, // 0x57 'W' - {1836, 19, 20, 21, 1, -19}, // 0x58 'X' - {1884, 17, 20, 21, 2, -19}, // 0x59 'Y' - {1927, 13, 20, 21, 4, -19}, // 0x5A 'Z' - {1960, 5, 25, 21, 10, -20}, // 0x5B '[' - {1976, 13, 26, 21, 4, -22}, // 0x5C '\' - {2019, 5, 25, 21, 6, -20}, // 0x5D ']' - {2035, 13, 9, 21, 4, -20}, // 0x5E '^' - {2050, 21, 1, 21, 0, 4}, // 0x5F '_' - {2053, 6, 5, 21, 5, -21}, // 0x60 '`' - {2057, 16, 15, 21, 3, -14}, // 0x61 'a' - {2087, 18, 21, 21, 1, -20}, // 0x62 'b' - {2135, 15, 15, 21, 3, -14}, // 0x63 'c' - {2164, 18, 21, 21, 2, -20}, // 0x64 'd' - {2212, 16, 15, 21, 2, -14}, // 0x65 'e' - {2242, 14, 21, 21, 4, -20}, // 0x66 'f' - {2279, 17, 22, 21, 2, -14}, // 0x67 'g' - {2326, 17, 21, 21, 1, -20}, // 0x68 'h' - {2371, 14, 22, 21, 4, -21}, // 0x69 'i' - {2410, 10, 29, 21, 5, -21}, // 0x6A 'j' - {2447, 16, 21, 21, 2, -20}, // 0x6B 'k' - {2489, 14, 21, 21, 4, -20}, // 0x6C 'l' - {2526, 19, 15, 21, 1, -14}, // 0x6D 'm' - {2562, 17, 15, 21, 1, -14}, // 0x6E 'n' - {2594, 15, 15, 21, 3, -14}, // 0x6F 'o' - {2623, 18, 22, 21, 1, -14}, // 0x70 'p' - {2673, 18, 22, 21, 2, -14}, // 0x71 'q' - {2723, 15, 15, 21, 3, -14}, // 0x72 'r' - {2752, 13, 15, 21, 4, -14}, // 0x73 's' - {2777, 16, 20, 21, 1, -19}, // 0x74 't' - {2817, 17, 15, 21, 1, -14}, // 0x75 'u' - {2849, 19, 15, 21, 1, -14}, // 0x76 'v' - {2885, 19, 15, 21, 1, -14}, // 0x77 'w' - {2921, 17, 15, 21, 2, -14}, // 0x78 'x' - {2953, 17, 22, 21, 2, -14}, // 0x79 'y' - {3000, 13, 15, 21, 4, -14}, // 0x7A 'z' - {3025, 8, 25, 21, 6, -20}, // 0x7B '{' - {3050, 1, 25, 21, 10, -20}, // 0x7C '|' - {3054, 8, 25, 21, 7, -20}, // 0x7D '}' - {3079, 15, 5, 21, 3, -11}}; // 0x7E '~' - -const GFXfont FreeMono18pt7b PROGMEM = {(uint8_t *)FreeMono18pt7bBitmaps, - (GFXglyph *)FreeMono18pt7bGlyphs, 0x20, - 0x7E, 35}; - -// Approx. 3761 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono24pt7b.h deleted file mode 100644 index 2540ed4..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono24pt7b.h +++ /dev/null @@ -1,579 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono24pt7bBitmaps[] PROGMEM = { - 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x10, 0x84, 0x21, 0x08, - 0x00, 0x00, 0x00, 0x03, 0xBF, 0xFF, 0xB8, 0xFE, 0x7F, 0x7C, 0x3E, 0x7C, - 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x3C, - 0x3E, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x01, - 0x86, 0x00, 0x30, 0xC0, 0x06, 0x18, 0x00, 0xC3, 0x00, 0x18, 0x60, 0x03, - 0x0C, 0x00, 0x61, 0x80, 0x0C, 0x70, 0x01, 0x8C, 0x00, 0x61, 0x80, 0x0C, - 0x30, 0x3F, 0xFF, 0xF7, 0xFF, 0xFE, 0x06, 0x18, 0x00, 0xC3, 0x00, 0x18, - 0x60, 0x03, 0x0C, 0x00, 0x61, 0x80, 0x0C, 0x30, 0x7F, 0xFF, 0xEF, 0xFF, - 0xFC, 0x06, 0x18, 0x00, 0xC7, 0x00, 0x38, 0xC0, 0x06, 0x18, 0x00, 0xC3, - 0x00, 0x18, 0x60, 0x03, 0x0C, 0x00, 0x61, 0x80, 0x0C, 0x30, 0x01, 0x86, - 0x00, 0x30, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0F, 0xC0, - 0x0F, 0xFD, 0x87, 0x03, 0xE3, 0x80, 0x39, 0xC0, 0x06, 0x60, 0x01, 0x98, - 0x00, 0x06, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0xC0, 0x00, 0x7F, - 0x80, 0x03, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0x60, 0x00, 0x1C, 0x00, 0x03, - 0x80, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x80, 0x0E, 0xFC, 0x0F, 0x37, - 0xFF, 0x80, 0x7F, 0x80, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x07, 0x80, 0x01, 0xFE, 0x00, 0x38, - 0x70, 0x03, 0x03, 0x00, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x18, 0x06, - 0x01, 0x80, 0x30, 0x30, 0x03, 0x87, 0x00, 0x1F, 0xE0, 0x30, 0x78, 0x1F, - 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x00, 0xF8, 0x00, - 0x0C, 0x01, 0xE0, 0x00, 0x7F, 0x80, 0x0E, 0x1C, 0x00, 0xC0, 0xC0, 0x18, - 0x06, 0x01, 0x80, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x0C, 0x0E, 0x00, - 0xE1, 0xC0, 0x07, 0xF8, 0x00, 0x1E, 0x00, 0x03, 0xEC, 0x01, 0xFF, 0x00, - 0xE1, 0x00, 0x70, 0x00, 0x18, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x30, - 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x7C, 0x00, 0x3B, 0x83, - 0xD8, 0x60, 0xFE, 0x0C, 0x33, 0x03, 0x98, 0xC0, 0x66, 0x30, 0x0D, 0x8C, - 0x03, 0xC3, 0x00, 0x70, 0x60, 0x1C, 0x1C, 0x0F, 0x03, 0x87, 0x7C, 0x7F, - 0x9F, 0x07, 0x80, 0x00, 0xFE, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x3C, - 0x70, 0xE1, 0xC3, 0x87, 0x00, 0x06, 0x1C, 0x30, 0xE1, 0x87, 0x0E, 0x18, - 0x70, 0xE1, 0xC3, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0x87, 0x0E, 0x0C, - 0x1C, 0x38, 0x70, 0x60, 0xE1, 0xC1, 0x83, 0x83, 0x06, 0x06, 0x04, 0xC1, - 0xC1, 0x83, 0x83, 0x07, 0x0E, 0x0C, 0x1C, 0x38, 0x70, 0xE0, 0xE1, 0xC3, - 0x87, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0x87, 0x0E, 0x1C, 0x30, 0x61, 0xC3, - 0x0E, 0x18, 0x70, 0xC1, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x03, 0x00, 0x00, 0xC0, 0x10, 0x30, 0x3F, 0x8C, 0x7C, 0xFF, 0xFC, 0x07, - 0xF8, 0x00, 0x78, 0x00, 0x1F, 0x00, 0x0C, 0xC0, 0x06, 0x18, 0x03, 0x87, - 0x00, 0xC0, 0xC0, 0x60, 0x18, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, - 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, - 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, - 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, - 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, - 0x1F, 0x8F, 0x87, 0xC7, 0xC3, 0xE1, 0xE1, 0xF0, 0xF0, 0x78, 0x38, 0x3C, - 0x1C, 0x0E, 0x06, 0x00, 0x7F, 0xFF, 0xFD, 0xFF, 0xFF, 0xF0, 0x7D, 0xFF, - 0xFF, 0xFF, 0xEF, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x18, 0x00, 0x06, - 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x18, 0x00, 0x0E, 0x00, - 0x03, 0x00, 0x01, 0xC0, 0x00, 0x60, 0x00, 0x38, 0x00, 0x0C, 0x00, 0x07, - 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x00, 0x03, - 0xF0, 0x03, 0xFF, 0x01, 0xE1, 0xE0, 0xE0, 0x18, 0x30, 0x03, 0x1C, 0x00, - 0xE6, 0x00, 0x19, 0x80, 0x06, 0xE0, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, - 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, - 0x76, 0x00, 0x19, 0x80, 0x06, 0x70, 0x03, 0x8C, 0x00, 0xC3, 0x80, 0x60, - 0x78, 0x78, 0x0F, 0xFC, 0x00, 0xFC, 0x00, 0x03, 0x80, 0x07, 0x80, 0x0F, - 0x80, 0x1D, 0x80, 0x39, 0x80, 0x71, 0x80, 0xE1, 0x80, 0xC1, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xF0, 0x03, 0xFF, 0x01, 0xC0, 0xE0, - 0xC0, 0x1C, 0x60, 0x03, 0xB8, 0x00, 0x6C, 0x00, 0x0F, 0x00, 0x03, 0x00, - 0x00, 0xC0, 0x00, 0x30, 0x00, 0x18, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, - 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, - 0x00, 0xD0, 0x00, 0x38, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x03, - 0xF8, 0x01, 0xFF, 0xC0, 0x70, 0x3C, 0x18, 0x01, 0xC6, 0x00, 0x18, 0x00, - 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x01, 0xC0, 0x00, 0x70, 0x01, 0xFC, 0x00, 0x3F, 0x00, 0x00, - 0x78, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, - 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0xD8, 0x00, - 0x3B, 0x80, 0x0E, 0x3E, 0x07, 0x81, 0xFF, 0xE0, 0x07, 0xE0, 0x00, 0x00, - 0x3C, 0x00, 0x7C, 0x00, 0x6C, 0x00, 0xCC, 0x00, 0x8C, 0x01, 0x8C, 0x03, - 0x0C, 0x03, 0x0C, 0x06, 0x0C, 0x04, 0x0C, 0x0C, 0x0C, 0x08, 0x0C, 0x10, - 0x0C, 0x30, 0x0C, 0x20, 0x0C, 0x60, 0x0C, 0x40, 0x0C, 0x80, 0x0C, 0xFF, - 0xFF, 0xFF, 0xFF, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, - 0x0C, 0x00, 0x0C, 0x00, 0xFF, 0x00, 0xFF, 0x3F, 0xFF, 0x07, 0xFF, 0xE0, - 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x00, 0x01, - 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC7, 0xE0, 0x1F, 0xFF, 0x03, - 0x80, 0x70, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0x60, - 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x06, 0xC0, 0x01, 0xDC, 0x00, 0x71, 0xF0, 0x3C, 0x0F, - 0xFF, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x80, 0x3F, 0xF0, 0x3E, 0x00, 0x1E, - 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, - 0x18, 0x00, 0x06, 0x00, 0x03, 0x80, 0x00, 0xC1, 0xF8, 0x31, 0xFF, 0x0C, - 0xF0, 0xF3, 0x70, 0x0C, 0xD8, 0x01, 0xBC, 0x00, 0x6E, 0x00, 0x0F, 0x80, - 0x03, 0xC0, 0x00, 0xD8, 0x00, 0x36, 0x00, 0x0D, 0x80, 0x03, 0x30, 0x01, - 0x8E, 0x00, 0x61, 0xC0, 0x30, 0x38, 0x38, 0x07, 0xFC, 0x00, 0x7C, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xC0, - 0x00, 0x60, 0x00, 0x18, 0x00, 0x0E, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, - 0x30, 0x00, 0x18, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x30, - 0x00, 0x0C, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x03, 0xF0, 0x03, 0xFF, 0x03, 0xC0, 0xF1, 0xC0, 0x0E, - 0x60, 0x01, 0xB8, 0x00, 0x7C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x36, 0x00, 0x18, 0xC0, 0x0C, 0x1C, 0x0E, 0x03, 0xFF, 0x00, 0xFF, - 0xC0, 0x70, 0x38, 0x30, 0x03, 0x18, 0x00, 0x66, 0x00, 0x1B, 0x00, 0x03, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0x60, 0x01, 0x98, - 0x00, 0xE3, 0x00, 0x70, 0x70, 0x38, 0x0F, 0xFC, 0x00, 0xFC, 0x00, 0x07, - 0xE0, 0x03, 0xFE, 0x01, 0xC1, 0xC0, 0xC0, 0x38, 0x60, 0x07, 0x18, 0x00, - 0xCC, 0x00, 0x1B, 0x00, 0x06, 0xC0, 0x01, 0xB0, 0x00, 0x3C, 0x00, 0x1F, - 0x00, 0x07, 0x60, 0x03, 0xD8, 0x01, 0xB3, 0x00, 0xCC, 0xF0, 0xF3, 0x0F, - 0xF8, 0xC1, 0xF8, 0x30, 0x00, 0x1C, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, - 0xE0, 0x00, 0x30, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x07, 0x80, - 0x07, 0xC0, 0xFF, 0xC0, 0x1F, 0xC0, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, 0xEF, - 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0xFF, 0xFF, 0xFF, - 0xF7, 0xC0, 0x0F, 0x87, 0xF1, 0xFC, 0x7F, 0x1F, 0xC3, 0xE0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF1, 0xF8, 0x7C, 0x3F, 0x0F, - 0x83, 0xE0, 0xF0, 0x7C, 0x1E, 0x07, 0x81, 0xC0, 0xF0, 0x38, 0x04, 0x00, - 0x00, 0x00, 0x18, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, - 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x00, - 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x38, 0x00, 0x00, - 0x20, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, - 0xFF, 0x7F, 0xFF, 0xFF, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0E, 0x00, 0x00, 0x3C, 0x00, 0x01, 0xE0, - 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x01, 0xE0, - 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x0E, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x07, 0xF0, 0x1F, 0xFE, 0x3E, 0x07, 0x98, 0x00, 0xEC, 0x00, - 0x36, 0x00, 0x0F, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x01, 0xC0, - 0x00, 0xC0, 0x01, 0xC0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x00, 0x03, 0x00, - 0x01, 0x80, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x07, 0x80, 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, - 0x78, 0x00, 0x03, 0xF0, 0x03, 0xFF, 0x01, 0xE0, 0xE0, 0xE0, 0x1C, 0x30, - 0x03, 0x1C, 0x00, 0x66, 0x00, 0x19, 0x80, 0x06, 0xC0, 0x01, 0xB0, 0x07, - 0xEC, 0x07, 0xFB, 0x03, 0xC6, 0xC1, 0xC1, 0xB0, 0xE0, 0x6C, 0x30, 0x1B, - 0x0C, 0x06, 0xC3, 0x01, 0xB0, 0xC0, 0x6C, 0x18, 0x1B, 0x07, 0x86, 0xC0, - 0xFF, 0xF0, 0x0F, 0xFC, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x18, 0x00, - 0x07, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x80, 0xC0, 0xFF, 0xF0, - 0x0F, 0xE0, 0x07, 0xFF, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00, 0x1B, 0x00, - 0x00, 0x01, 0x98, 0x00, 0x00, 0x11, 0x80, 0x00, 0x03, 0x0C, 0x00, 0x00, - 0x30, 0xC0, 0x00, 0x06, 0x0C, 0x00, 0x00, 0x60, 0x60, 0x00, 0x06, 0x06, - 0x00, 0x00, 0xC0, 0x30, 0x00, 0x0C, 0x03, 0x00, 0x00, 0x80, 0x30, 0x00, - 0x18, 0x01, 0x80, 0x01, 0x80, 0x18, 0x00, 0x3F, 0xFF, 0x80, 0x03, 0xFF, - 0xFC, 0x00, 0x20, 0x00, 0xC0, 0x06, 0x00, 0x06, 0x00, 0x60, 0x00, 0x60, - 0x0C, 0x00, 0x06, 0x00, 0xC0, 0x00, 0x30, 0x0C, 0x00, 0x03, 0x01, 0x80, - 0x00, 0x18, 0x7F, 0xC0, 0x3F, 0xF7, 0xFC, 0x03, 0xFF, 0xFF, 0xFF, 0x03, - 0xFF, 0xFF, 0x01, 0x80, 0x0E, 0x06, 0x00, 0x1C, 0x18, 0x00, 0x38, 0x60, - 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, 0x00, 0x38, 0x60, 0x01, - 0xC1, 0x80, 0x1E, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, 0x60, 0x03, 0xC1, - 0x80, 0x03, 0x86, 0x00, 0x06, 0x18, 0x00, 0x1C, 0x60, 0x00, 0x31, 0x80, - 0x00, 0xC6, 0x00, 0x03, 0x18, 0x00, 0x0C, 0x60, 0x00, 0x61, 0x80, 0x03, - 0x86, 0x00, 0x1C, 0xFF, 0xFF, 0xE3, 0xFF, 0xFE, 0x00, 0x00, 0xFC, 0x00, - 0x0F, 0xFE, 0x60, 0xF0, 0x3D, 0x87, 0x00, 0x3E, 0x38, 0x00, 0x38, 0xC0, - 0x00, 0xE7, 0x00, 0x01, 0x98, 0x00, 0x06, 0x60, 0x00, 0x03, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, - 0xC7, 0x00, 0x06, 0x0E, 0x00, 0x70, 0x1E, 0x07, 0x80, 0x3F, 0xFC, 0x00, - 0x1F, 0x80, 0xFF, 0xFE, 0x03, 0xFF, 0xFE, 0x03, 0x00, 0x3C, 0x0C, 0x00, - 0x38, 0x30, 0x00, 0x70, 0xC0, 0x00, 0xC3, 0x00, 0x03, 0x8C, 0x00, 0x06, - 0x30, 0x00, 0x1C, 0xC0, 0x00, 0x33, 0x00, 0x00, 0xCC, 0x00, 0x03, 0x30, - 0x00, 0x0C, 0xC0, 0x00, 0x33, 0x00, 0x00, 0xCC, 0x00, 0x03, 0x30, 0x00, - 0x0C, 0xC0, 0x00, 0x33, 0x00, 0x01, 0x8C, 0x00, 0x06, 0x30, 0x00, 0x30, - 0xC0, 0x01, 0xC3, 0x00, 0x0E, 0x0C, 0x00, 0xF0, 0xFF, 0xFF, 0x83, 0xFF, - 0xF8, 0x00, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xE1, 0x80, 0x01, 0x86, 0x00, - 0x06, 0x18, 0x00, 0x18, 0x60, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x00, - 0x18, 0x0C, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x07, 0xFF, 0x00, 0x1F, - 0xFC, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x06, 0x03, 0x00, 0x18, 0x00, - 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0xC6, 0x00, 0x03, 0x18, 0x00, 0x0C, - 0x60, 0x00, 0x31, 0x80, 0x00, 0xC6, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF1, 0x80, 0x00, 0xC6, 0x00, - 0x03, 0x18, 0x00, 0x0C, 0x60, 0x00, 0x31, 0x80, 0x00, 0xC6, 0x00, 0x00, - 0x18, 0x0C, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x07, 0xFF, 0x00, 0x1F, - 0xFC, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x06, 0x03, 0x00, 0x18, 0x00, - 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0xFF, 0xF0, 0x03, 0xFF, - 0xC0, 0x00, 0x00, 0xFF, 0x00, 0x07, 0xFF, 0x98, 0x1E, 0x03, 0xF0, 0x70, - 0x01, 0xE1, 0x80, 0x01, 0xC6, 0x00, 0x01, 0x9C, 0x00, 0x03, 0x30, 0x00, - 0x00, 0x60, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, 0x03, 0xFF, - 0xC0, 0x07, 0xFF, 0x80, 0x00, 0x1B, 0x00, 0x00, 0x37, 0x00, 0x00, 0x66, - 0x00, 0x00, 0xCC, 0x00, 0x01, 0x8C, 0x00, 0x03, 0x1C, 0x00, 0x06, 0x1E, - 0x00, 0x0C, 0x0F, 0x00, 0xF8, 0x0F, 0xFF, 0xC0, 0x03, 0xFC, 0x00, 0x7F, - 0x01, 0xFC, 0xFE, 0x03, 0xF8, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, - 0x03, 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, - 0x30, 0x30, 0x00, 0x60, 0x60, 0x00, 0xC0, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, - 0x30, 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, 0x03, - 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0xFF, 0x01, 0xFF, 0xFE, - 0x03, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFE, 0x01, 0xFF, 0xFC, - 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, - 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x30, 0x60, 0x00, 0x60, 0xC0, 0x00, 0xC1, 0x80, 0x01, 0x83, 0x00, 0x03, - 0x06, 0x00, 0x06, 0x0C, 0x00, 0x0C, 0x18, 0x00, 0x30, 0x38, 0x00, 0x60, - 0x38, 0x01, 0x80, 0x3C, 0x0E, 0x00, 0x3F, 0xF8, 0x00, 0x0F, 0xC0, 0x00, - 0xFF, 0x81, 0xFE, 0xFF, 0x81, 0xFE, 0x18, 0x00, 0x30, 0x18, 0x00, 0xE0, - 0x18, 0x01, 0xC0, 0x18, 0x03, 0x80, 0x18, 0x07, 0x00, 0x18, 0x0E, 0x00, - 0x18, 0x18, 0x00, 0x18, 0x70, 0x00, 0x18, 0xE0, 0x00, 0x19, 0xE0, 0x00, - 0x1B, 0xF8, 0x00, 0x1F, 0x1C, 0x00, 0x1C, 0x06, 0x00, 0x18, 0x03, 0x00, - 0x18, 0x03, 0x80, 0x18, 0x01, 0x80, 0x18, 0x00, 0xC0, 0x18, 0x00, 0xC0, - 0x18, 0x00, 0x60, 0x18, 0x00, 0x60, 0x18, 0x00, 0x70, 0x18, 0x00, 0x30, - 0xFF, 0x80, 0x3F, 0xFF, 0x80, 0x1F, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x01, - 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, - 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, - 0x06, 0x00, 0x18, 0x30, 0x00, 0xC1, 0x80, 0x06, 0x0C, 0x00, 0x30, 0x60, - 0x01, 0x83, 0x00, 0x0C, 0x18, 0x00, 0x60, 0xC0, 0x03, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xC0, 0xFC, 0x00, 0x0F, 0xFF, 0x00, 0x03, 0xF3, 0x60, 0x01, - 0xB0, 0xD8, 0x00, 0x6C, 0x33, 0x00, 0x33, 0x0C, 0xC0, 0x0C, 0xC3, 0x38, - 0x07, 0x30, 0xC6, 0x01, 0x8C, 0x31, 0xC0, 0xE3, 0x0C, 0x30, 0x30, 0xC3, - 0x0C, 0x0C, 0x30, 0xC1, 0x86, 0x0C, 0x30, 0x61, 0x83, 0x0C, 0x0C, 0xC0, - 0xC3, 0x03, 0x30, 0x30, 0xC0, 0x78, 0x0C, 0x30, 0x1E, 0x03, 0x0C, 0x03, - 0x00, 0xC3, 0x00, 0x00, 0x30, 0xC0, 0x00, 0x0C, 0x30, 0x00, 0x03, 0x0C, - 0x00, 0x00, 0xC3, 0x00, 0x00, 0x30, 0xC0, 0x00, 0x0C, 0xFF, 0x00, 0x3F, - 0xFF, 0xC0, 0x0F, 0xF0, 0xFC, 0x00, 0xFF, 0xFC, 0x00, 0xFF, 0x1E, 0x00, - 0x0C, 0x1F, 0x00, 0x0C, 0x1B, 0x00, 0x0C, 0x19, 0x80, 0x0C, 0x19, 0xC0, - 0x0C, 0x18, 0xC0, 0x0C, 0x18, 0x60, 0x0C, 0x18, 0x60, 0x0C, 0x18, 0x30, - 0x0C, 0x18, 0x38, 0x0C, 0x18, 0x18, 0x0C, 0x18, 0x0C, 0x0C, 0x18, 0x0E, - 0x0C, 0x18, 0x06, 0x0C, 0x18, 0x03, 0x0C, 0x18, 0x03, 0x0C, 0x18, 0x01, - 0x8C, 0x18, 0x01, 0xCC, 0x18, 0x00, 0xCC, 0x18, 0x00, 0x6C, 0x18, 0x00, - 0x7C, 0x18, 0x00, 0x3C, 0x7F, 0x80, 0x1C, 0x7F, 0x80, 0x1C, 0x00, 0x7E, - 0x00, 0x01, 0xFF, 0xC0, 0x07, 0x81, 0xE0, 0x0E, 0x00, 0x70, 0x1C, 0x00, - 0x38, 0x38, 0x00, 0x1C, 0x30, 0x00, 0x0C, 0x70, 0x00, 0x0E, 0x60, 0x00, - 0x06, 0x60, 0x00, 0x06, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0x60, 0x00, 0x06, 0x60, 0x00, 0x06, 0x70, 0x00, - 0x0E, 0x30, 0x00, 0x0C, 0x38, 0x00, 0x1C, 0x1C, 0x00, 0x38, 0x0E, 0x00, - 0x70, 0x07, 0x81, 0xE0, 0x03, 0xFF, 0xC0, 0x00, 0x7E, 0x00, 0xFF, 0xFF, - 0x07, 0xFF, 0xFE, 0x06, 0x00, 0x78, 0x30, 0x00, 0xE1, 0x80, 0x03, 0x0C, - 0x00, 0x0C, 0x60, 0x00, 0x63, 0x00, 0x03, 0x18, 0x00, 0x18, 0xC0, 0x01, - 0xC6, 0x00, 0x0C, 0x30, 0x00, 0xC1, 0x80, 0x1E, 0x0F, 0xFF, 0xC0, 0x7F, - 0xF8, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, - 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, - 0x00, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x00, 0x00, 0x7E, 0x00, 0x01, 0xFF, - 0x80, 0x07, 0x81, 0xE0, 0x0E, 0x00, 0x70, 0x1C, 0x00, 0x38, 0x38, 0x00, - 0x1C, 0x30, 0x00, 0x0C, 0x70, 0x00, 0x0E, 0x60, 0x00, 0x06, 0x60, 0x00, - 0x06, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0x60, 0x00, 0x06, 0x60, 0x00, 0x06, 0x70, 0x00, 0x0E, 0x30, 0x00, - 0x0C, 0x18, 0x00, 0x1C, 0x0C, 0x00, 0x38, 0x06, 0x00, 0x70, 0x03, 0x81, - 0xE0, 0x00, 0xFF, 0xC0, 0x00, 0x7E, 0x00, 0x00, 0xE0, 0x00, 0x03, 0xFF, - 0x87, 0x07, 0xFF, 0xFE, 0x07, 0x00, 0xF8, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, - 0x80, 0x18, 0x03, 0xC0, 0x18, 0x00, 0xE0, 0x18, 0x00, 0x60, 0x18, 0x00, - 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, - 0x70, 0x18, 0x00, 0x60, 0x18, 0x01, 0xC0, 0x18, 0x07, 0x80, 0x1F, 0xFF, - 0x00, 0x1F, 0xFC, 0x00, 0x18, 0x0E, 0x00, 0x18, 0x07, 0x00, 0x18, 0x03, - 0x80, 0x18, 0x01, 0xC0, 0x18, 0x00, 0xE0, 0x18, 0x00, 0x60, 0x18, 0x00, - 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, 0x18, 0xFF, 0x80, 0x1F, 0xFF, 0x80, - 0x0F, 0x03, 0xF8, 0x00, 0xFF, 0xE6, 0x1E, 0x07, 0xE3, 0x80, 0x1E, 0x30, - 0x00, 0xE6, 0x00, 0x06, 0x60, 0x00, 0x66, 0x00, 0x06, 0x60, 0x00, 0x07, - 0x00, 0x00, 0x30, 0x00, 0x01, 0xC0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0xC0, - 0x00, 0x3F, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x30, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, 0x03, 0xE0, 0x00, 0x7E, 0x00, - 0x06, 0xF8, 0x01, 0xED, 0xE0, 0x7C, 0xCF, 0xFF, 0x00, 0x3F, 0xC0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x03, 0x00, 0xF0, 0x0C, 0x03, 0xC0, 0x30, - 0x0F, 0x00, 0xC0, 0x3C, 0x03, 0x00, 0xC0, 0x0C, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, - 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, - 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, - 0x03, 0x00, 0x00, 0x0C, 0x00, 0x0F, 0xFF, 0xC0, 0x3F, 0xFF, 0x00, 0xFF, - 0x01, 0xFF, 0xFE, 0x03, 0xFC, 0xC0, 0x00, 0x61, 0x80, 0x00, 0xC3, 0x00, - 0x01, 0x86, 0x00, 0x03, 0x0C, 0x00, 0x06, 0x18, 0x00, 0x0C, 0x30, 0x00, - 0x18, 0x60, 0x00, 0x30, 0xC0, 0x00, 0x61, 0x80, 0x00, 0xC3, 0x00, 0x01, - 0x86, 0x00, 0x03, 0x0C, 0x00, 0x06, 0x18, 0x00, 0x0C, 0x30, 0x00, 0x18, - 0x60, 0x00, 0x30, 0xC0, 0x00, 0x61, 0x80, 0x00, 0xC3, 0x80, 0x03, 0x83, - 0x00, 0x06, 0x07, 0x00, 0x1C, 0x07, 0x00, 0x70, 0x07, 0x83, 0xC0, 0x07, - 0xFF, 0x00, 0x03, 0xF8, 0x00, 0x7F, 0xC0, 0x3F, 0xF7, 0xFC, 0x03, 0xFF, - 0x18, 0x00, 0x01, 0x80, 0xC0, 0x00, 0x30, 0x0C, 0x00, 0x03, 0x00, 0x60, - 0x00, 0x30, 0x06, 0x00, 0x06, 0x00, 0x60, 0x00, 0x60, 0x03, 0x00, 0x0C, - 0x00, 0x30, 0x00, 0xC0, 0x03, 0x80, 0x0C, 0x00, 0x18, 0x01, 0x80, 0x01, - 0x80, 0x18, 0x00, 0x0C, 0x03, 0x00, 0x00, 0xC0, 0x30, 0x00, 0x0E, 0x03, - 0x00, 0x00, 0x60, 0x60, 0x00, 0x06, 0x06, 0x00, 0x00, 0x30, 0xC0, 0x00, - 0x03, 0x0C, 0x00, 0x00, 0x30, 0x80, 0x00, 0x01, 0x98, 0x00, 0x00, 0x19, - 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xE0, 0x00, - 0xFF, 0x80, 0x7F, 0xFF, 0xE0, 0x1F, 0xF3, 0x00, 0x00, 0x30, 0xC0, 0x00, - 0x0C, 0x30, 0x00, 0x03, 0x0C, 0x03, 0x80, 0xC3, 0x01, 0xE0, 0x30, 0x60, - 0x78, 0x0C, 0x18, 0x1F, 0x02, 0x06, 0x04, 0xC0, 0x81, 0x83, 0x30, 0x60, - 0x60, 0xCC, 0x18, 0x18, 0x31, 0x86, 0x06, 0x18, 0x61, 0x81, 0x86, 0x18, - 0x60, 0x71, 0x87, 0x18, 0x0C, 0x40, 0xC6, 0x03, 0x30, 0x31, 0x00, 0xCC, - 0x0C, 0xC0, 0x33, 0x01, 0xB0, 0x0D, 0x80, 0x6C, 0x03, 0x60, 0x1B, 0x00, - 0xD8, 0x06, 0xC0, 0x34, 0x00, 0xF0, 0x07, 0x00, 0x3C, 0x01, 0xC0, 0x0E, - 0x00, 0x7F, 0x00, 0xFF, 0x7F, 0x00, 0xFF, 0x18, 0x00, 0x18, 0x0C, 0x00, - 0x38, 0x0E, 0x00, 0x70, 0x07, 0x00, 0x60, 0x03, 0x00, 0xC0, 0x01, 0x81, - 0x80, 0x01, 0xC3, 0x80, 0x00, 0xE7, 0x00, 0x00, 0x76, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x66, - 0x00, 0x00, 0xC3, 0x00, 0x01, 0x81, 0x80, 0x03, 0x81, 0xC0, 0x07, 0x00, - 0xE0, 0x06, 0x00, 0x60, 0x0C, 0x00, 0x30, 0x18, 0x00, 0x18, 0x38, 0x00, - 0x1C, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x00, - 0xFF, 0x18, 0x00, 0x18, 0x0C, 0x00, 0x30, 0x0E, 0x00, 0x70, 0x06, 0x00, - 0x60, 0x03, 0x00, 0xC0, 0x03, 0x81, 0xC0, 0x01, 0x81, 0x80, 0x00, 0xC3, - 0x00, 0x00, 0xE7, 0x00, 0x00, 0x66, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x07, 0xFF, 0xE0, 0x07, 0xFF, - 0xE0, 0x7F, 0xFF, 0x9F, 0xFF, 0xE6, 0x00, 0x19, 0x80, 0x0C, 0x60, 0x07, - 0x18, 0x03, 0x86, 0x00, 0xC1, 0x80, 0x70, 0x00, 0x38, 0x00, 0x0C, 0x00, - 0x07, 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x38, 0x00, 0x1C, - 0x00, 0x06, 0x00, 0x03, 0x80, 0x31, 0xC0, 0x0C, 0x60, 0x03, 0x30, 0x00, - 0xDC, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0xFF, 0xFF, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, - 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x18, 0x30, 0x60, 0xFF, 0xFC, 0xC0, 0x00, 0x30, 0x00, 0x06, 0x00, - 0x01, 0x80, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x06, - 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x80, 0x00, 0x60, - 0x00, 0x1C, 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, 0x18, 0x00, 0x07, 0x00, - 0x00, 0xC0, 0x00, 0x30, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, - 0x0C, 0xFF, 0xFC, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, - 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, - 0x18, 0x30, 0x60, 0xC1, 0x83, 0xFF, 0xFC, 0x00, 0x40, 0x00, 0x30, 0x00, - 0x1E, 0x00, 0x0E, 0xC0, 0x07, 0x38, 0x01, 0x87, 0x00, 0xC0, 0xC0, 0x60, - 0x18, 0x38, 0x03, 0x1C, 0x00, 0xE6, 0x00, 0x1F, 0x00, 0x03, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xE0, 0x70, 0x3C, 0x0E, 0x07, 0x03, - 0x01, 0xFC, 0x00, 0x7F, 0xFC, 0x01, 0xC0, 0x3C, 0x00, 0x00, 0x30, 0x00, - 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x60, 0x0F, 0xF9, 0x81, 0xFF, 0xFE, 0x0F, 0x80, 0x38, 0x70, 0x00, 0x63, - 0x80, 0x01, 0x8C, 0x00, 0x06, 0x30, 0x00, 0x18, 0xC0, 0x00, 0xE3, 0x00, - 0x07, 0x86, 0x00, 0x76, 0x1E, 0x07, 0x9F, 0x3F, 0xF8, 0x7C, 0x3F, 0x80, - 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, - 0x01, 0x80, 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x1F, 0x80, - 0x18, 0xFF, 0xC0, 0x33, 0x81, 0xC0, 0x6E, 0x01, 0xC0, 0xF0, 0x00, 0xC1, - 0xE0, 0x01, 0xC3, 0x80, 0x01, 0x87, 0x00, 0x03, 0x8C, 0x00, 0x03, 0x18, - 0x00, 0x06, 0x30, 0x00, 0x0C, 0x60, 0x00, 0x18, 0xC0, 0x00, 0x31, 0x80, - 0x00, 0x63, 0x80, 0x01, 0x87, 0x00, 0x03, 0x0F, 0x00, 0x0E, 0x1F, 0x00, - 0x38, 0x37, 0x00, 0xE3, 0xE7, 0x03, 0x87, 0xC7, 0xFE, 0x00, 0x03, 0xF0, - 0x00, 0x01, 0xFC, 0x00, 0x3F, 0xF9, 0x83, 0xC0, 0xFC, 0x38, 0x01, 0xE3, - 0x00, 0x07, 0x38, 0x00, 0x19, 0x80, 0x00, 0xDC, 0x00, 0x06, 0xC0, 0x00, - 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, - 0x00, 0x03, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x70, 0x00, 0x01, 0x80, 0x00, - 0xC7, 0x00, 0x1E, 0x1E, 0x03, 0xC0, 0x7F, 0xFC, 0x00, 0xFF, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x01, 0xF8, 0x18, 0x07, - 0xFE, 0x18, 0x0F, 0x07, 0x98, 0x1C, 0x01, 0xD8, 0x38, 0x00, 0xF8, 0x70, - 0x00, 0x78, 0x60, 0x00, 0x38, 0xE0, 0x00, 0x38, 0xC0, 0x00, 0x18, 0xC0, - 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, - 0x00, 0x18, 0x60, 0x00, 0x38, 0x60, 0x00, 0x38, 0x70, 0x00, 0x78, 0x38, - 0x00, 0xD8, 0x1C, 0x01, 0xD8, 0x0F, 0x07, 0x9F, 0x07, 0xFE, 0x1F, 0x01, - 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x3F, 0xF8, 0x07, 0x80, 0xF0, 0x70, 0x01, - 0xC3, 0x00, 0x07, 0x30, 0x00, 0x19, 0x80, 0x00, 0x78, 0x00, 0x03, 0xC0, - 0x00, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x0C, 0x00, 0x00, - 0x60, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x01, 0xC0, - 0x00, 0xC7, 0x00, 0x0E, 0x1E, 0x03, 0xE0, 0x3F, 0xFC, 0x00, 0x7F, 0x00, - 0x00, 0x7F, 0xC0, 0x3F, 0xFC, 0x0E, 0x00, 0x03, 0x80, 0x00, 0x60, 0x00, - 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0xFF, 0xFF, 0x9F, 0xFF, 0xF0, - 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, - 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, - 0x60, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x03, 0xFF, 0xFC, 0x7F, 0xFF, 0x80, 0x01, 0xF8, 0x00, 0x0F, 0xFC, - 0x7C, 0x38, 0x1C, 0xF8, 0xE0, 0x0D, 0x83, 0x00, 0x0F, 0x0E, 0x00, 0x1E, - 0x18, 0x00, 0x1C, 0x70, 0x00, 0x38, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x63, - 0x00, 0x00, 0xC6, 0x00, 0x01, 0x8C, 0x00, 0x03, 0x18, 0x00, 0x06, 0x18, - 0x00, 0x1C, 0x30, 0x00, 0x38, 0x30, 0x00, 0xF0, 0x70, 0x03, 0x60, 0x78, - 0x1C, 0xC0, 0x3F, 0xF1, 0x80, 0x1F, 0x83, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, - 0x80, 0x00, 0x0E, 0x00, 0x3F, 0xF8, 0x00, 0x7F, 0xC0, 0x00, 0xF8, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, - 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x3F, 0x00, 0x18, 0xFF, 0x80, - 0x37, 0x03, 0x80, 0x7C, 0x03, 0x80, 0xF0, 0x03, 0x81, 0xC0, 0x03, 0x03, - 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, - 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, 0x03, 0x00, - 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, 0x00, - 0x63, 0xFC, 0x07, 0xFF, 0xF8, 0x0F, 0xF0, 0x01, 0xC0, 0x00, 0x70, 0x00, - 0x1C, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0x03, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, - 0xC0, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xC0, 0x03, 0x00, 0x0C, - 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, - 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, - 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, - 0x70, 0x03, 0x80, 0x1C, 0xFF, 0xE3, 0xFF, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, - 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x1F, 0xE0, 0x60, 0x7F, 0x81, - 0x80, 0x60, 0x06, 0x07, 0x00, 0x18, 0x38, 0x00, 0x61, 0xC0, 0x01, 0x8E, - 0x00, 0x06, 0x70, 0x00, 0x1B, 0x80, 0x00, 0x7F, 0x00, 0x01, 0xCE, 0x00, - 0x06, 0x1C, 0x00, 0x18, 0x38, 0x00, 0x60, 0x70, 0x01, 0x80, 0xE0, 0x06, - 0x01, 0xC0, 0x18, 0x03, 0x80, 0x60, 0x07, 0x0F, 0x80, 0x7F, 0xFE, 0x01, - 0xFF, 0x3F, 0xC0, 0x0F, 0xF0, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xF0, 0x3C, 0x0F, 0x9F, 0x87, 0xE0, 0xFB, - 0x1C, 0xC7, 0x01, 0xE0, 0xD8, 0x38, 0x1C, 0x07, 0x01, 0x81, 0x80, 0x60, - 0x18, 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x81, - 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, - 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, - 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x8F, 0xE0, - 0x7C, 0x1F, 0xFE, 0x07, 0xC1, 0xF0, 0x00, 0x1F, 0x00, 0xF8, 0xFF, 0x81, - 0xF3, 0x83, 0x80, 0x6C, 0x03, 0x80, 0xF0, 0x03, 0x81, 0xC0, 0x03, 0x03, - 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, - 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, 0x03, 0x00, - 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, 0x00, - 0x67, 0xFC, 0x03, 0xFF, 0xF8, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0xFE, - 0x00, 0xF0, 0x3C, 0x07, 0x00, 0x38, 0x38, 0x00, 0x71, 0xC0, 0x00, 0xE6, - 0x00, 0x01, 0x98, 0x00, 0x06, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x36, 0x00, 0x01, - 0x98, 0x00, 0x06, 0x70, 0x00, 0x38, 0xE0, 0x01, 0xC1, 0xC0, 0x0E, 0x03, - 0xC0, 0xF0, 0x07, 0xFF, 0x80, 0x03, 0xF0, 0x00, 0x00, 0x3F, 0x01, 0xF1, - 0xFF, 0x83, 0xE7, 0x03, 0x80, 0xD8, 0x01, 0x81, 0xE0, 0x01, 0x83, 0xC0, - 0x03, 0x87, 0x00, 0x03, 0x0E, 0x00, 0x07, 0x18, 0x00, 0x06, 0x30, 0x00, - 0x0C, 0x60, 0x00, 0x18, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x63, 0x00, 0x00, - 0xC7, 0x00, 0x03, 0x0E, 0x00, 0x06, 0x1E, 0x00, 0x18, 0x36, 0x00, 0x70, - 0x67, 0x03, 0xC0, 0xC7, 0xFE, 0x01, 0x83, 0xF0, 0x03, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, - 0x00, 0x00, 0xC0, 0x00, 0x0F, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x01, - 0xF8, 0x00, 0x07, 0xFF, 0x1F, 0x0F, 0x07, 0x9F, 0x1C, 0x01, 0xD8, 0x38, - 0x00, 0x78, 0x70, 0x00, 0x78, 0x60, 0x00, 0x38, 0xE0, 0x00, 0x38, 0xC0, - 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, - 0x00, 0x18, 0xC0, 0x00, 0x18, 0x60, 0x00, 0x38, 0x70, 0x00, 0x78, 0x30, - 0x00, 0x78, 0x1C, 0x01, 0xD8, 0x0F, 0x07, 0x98, 0x07, 0xFF, 0x18, 0x01, - 0xFC, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, - 0x03, 0xFF, 0x00, 0x03, 0xFF, 0x7E, 0x03, 0xC3, 0xF0, 0x7F, 0x81, 0x8F, - 0x0E, 0x0C, 0xE0, 0x00, 0x7E, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x00, - 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, - 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, - 0x00, 0x00, 0x30, 0x00, 0x3F, 0xFF, 0xC1, 0xFF, 0xFE, 0x00, 0x07, 0xF0, - 0x07, 0xFF, 0x63, 0xC0, 0xF9, 0xC0, 0x0E, 0x60, 0x01, 0x98, 0x00, 0x66, - 0x00, 0x19, 0xC0, 0x00, 0x38, 0x00, 0x07, 0xC0, 0x00, 0x7F, 0xC0, 0x00, - 0x7C, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, - 0xF8, 0x00, 0x7F, 0x00, 0x3B, 0xF0, 0x3C, 0xDF, 0xFE, 0x00, 0xFE, 0x00, - 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, - 0x00, 0x06, 0x00, 0x03, 0xFF, 0xFE, 0x1F, 0xFF, 0xF0, 0x0C, 0x00, 0x00, - 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, 0x00, - 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, - 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x07, 0x07, 0x01, 0xF0, 0x1F, 0xFF, 0x00, 0x3F, 0x80, 0xF8, - 0x03, 0xF1, 0xF0, 0x07, 0xE0, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, - 0x03, 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, - 0x30, 0x30, 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, - 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x38, 0x18, 0x00, 0xF0, - 0x18, 0x03, 0x60, 0x38, 0x3C, 0xF8, 0x3F, 0xF1, 0xF0, 0x1F, 0x00, 0x00, - 0x7F, 0xC0, 0xFF, 0xDF, 0xF0, 0x3F, 0xF0, 0xC0, 0x00, 0xC0, 0x30, 0x00, - 0x30, 0x06, 0x00, 0x1C, 0x01, 0x80, 0x06, 0x00, 0x30, 0x01, 0x80, 0x0C, - 0x00, 0xC0, 0x03, 0x80, 0x30, 0x00, 0x60, 0x18, 0x00, 0x18, 0x06, 0x00, - 0x03, 0x03, 0x00, 0x00, 0xC0, 0xC0, 0x00, 0x18, 0x30, 0x00, 0x06, 0x18, - 0x00, 0x00, 0xC6, 0x00, 0x00, 0x33, 0x00, 0x00, 0x0E, 0xC0, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x7F, 0x00, 0x3F, 0xDF, 0xC0, 0x0F, 0xF1, - 0x80, 0x00, 0x20, 0x60, 0x00, 0x18, 0x18, 0x00, 0x06, 0x06, 0x03, 0x01, - 0x80, 0x81, 0xE0, 0x60, 0x30, 0x78, 0x10, 0x0C, 0x1E, 0x0C, 0x03, 0x0C, - 0xC3, 0x00, 0xC3, 0x30, 0xC0, 0x10, 0xCC, 0x30, 0x06, 0x61, 0x98, 0x01, - 0x98, 0x66, 0x00, 0x66, 0x19, 0x80, 0x0B, 0x03, 0x60, 0x03, 0xC0, 0xD0, - 0x00, 0xF0, 0x1C, 0x00, 0x38, 0x07, 0x00, 0x0E, 0x01, 0xC0, 0x3F, 0x81, - 0xFE, 0x3F, 0x81, 0xFE, 0x0C, 0x00, 0x38, 0x06, 0x00, 0x70, 0x03, 0x00, - 0xE0, 0x01, 0x81, 0xC0, 0x00, 0xC3, 0x80, 0x00, 0x67, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x67, 0x00, 0x00, 0xC3, - 0x80, 0x01, 0x81, 0xC0, 0x03, 0x00, 0xE0, 0x06, 0x00, 0x70, 0x0C, 0x00, - 0x38, 0x18, 0x00, 0x1C, 0x7F, 0x81, 0xFF, 0x7F, 0x81, 0xFF, 0x7F, 0x00, - 0xFF, 0x7F, 0x00, 0xFF, 0x18, 0x00, 0x0C, 0x18, 0x00, 0x18, 0x0C, 0x00, - 0x18, 0x0C, 0x00, 0x30, 0x06, 0x00, 0x30, 0x06, 0x00, 0x60, 0x03, 0x00, - 0x60, 0x03, 0x00, 0xC0, 0x01, 0x80, 0xC0, 0x01, 0x81, 0x80, 0x00, 0xC1, - 0x80, 0x00, 0xC3, 0x00, 0x00, 0x63, 0x00, 0x00, 0x66, 0x00, 0x00, 0x36, - 0x00, 0x00, 0x34, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x7F, 0xFC, 0x00, 0x7F, 0xFC, - 0x00, 0xFF, 0xFF, 0x7F, 0xFF, 0xB0, 0x01, 0x98, 0x01, 0xCC, 0x01, 0xC0, - 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xE0, - 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x03, 0x70, - 0x01, 0xB0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xE0, 0x7C, 0x0C, - 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, - 0x00, 0x60, 0x0C, 0x03, 0x00, 0xE0, 0xF0, 0x1E, 0x00, 0x70, 0x06, 0x00, - 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, - 0x0C, 0x01, 0x80, 0x18, 0x03, 0xE0, 0x1C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0xE0, 0x1F, 0x00, 0x60, 0x06, 0x00, 0xC0, 0x18, - 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x01, - 0x80, 0x38, 0x01, 0xE0, 0x3C, 0x1C, 0x03, 0x00, 0xC0, 0x18, 0x03, 0x00, - 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0xC0, - 0xF8, 0x1C, 0x00, 0x0F, 0x00, 0x03, 0xFC, 0x03, 0x70, 0xE0, 0x76, 0x07, - 0x8E, 0xC0, 0x1F, 0xC0, 0x00, 0xF0}; - -const GFXglyph FreeMono24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 5, 30, 28, 11, -28}, // 0x21 '!' - {19, 16, 14, 28, 6, -28}, // 0x22 '"' - {47, 19, 32, 28, 4, -29}, // 0x23 '#' - {123, 18, 33, 28, 5, -29}, // 0x24 '$' - {198, 20, 29, 28, 4, -27}, // 0x25 '%' - {271, 18, 25, 28, 5, -23}, // 0x26 '&' - {328, 7, 14, 28, 11, -28}, // 0x27 ''' - {341, 7, 34, 28, 14, -27}, // 0x28 '(' - {371, 7, 34, 28, 8, -27}, // 0x29 ')' - {401, 18, 16, 28, 5, -27}, // 0x2A '*' - {437, 20, 22, 28, 4, -23}, // 0x2B '+' - {492, 9, 14, 28, 6, -6}, // 0x2C ',' - {508, 22, 2, 28, 3, -13}, // 0x2D '-' - {514, 7, 6, 28, 11, -4}, // 0x2E '.' - {520, 18, 35, 28, 5, -30}, // 0x2F '/' - {599, 18, 30, 28, 5, -28}, // 0x30 '0' - {667, 16, 29, 28, 6, -28}, // 0x31 '1' - {725, 18, 29, 28, 5, -28}, // 0x32 '2' - {791, 19, 30, 28, 5, -28}, // 0x33 '3' - {863, 16, 28, 28, 6, -27}, // 0x34 '4' - {919, 19, 29, 28, 5, -27}, // 0x35 '5' - {988, 18, 30, 28, 6, -28}, // 0x36 '6' - {1056, 18, 28, 28, 5, -27}, // 0x37 '7' - {1119, 18, 30, 28, 5, -28}, // 0x38 '8' - {1187, 18, 30, 28, 6, -28}, // 0x39 '9' - {1255, 7, 21, 28, 11, -19}, // 0x3A ':' - {1274, 10, 27, 28, 7, -19}, // 0x3B ';' - {1308, 22, 22, 28, 3, -23}, // 0x3C '<' - {1369, 24, 9, 28, 2, -17}, // 0x3D '=' - {1396, 21, 22, 28, 4, -23}, // 0x3E '>' - {1454, 17, 28, 28, 6, -26}, // 0x3F '?' - {1514, 18, 32, 28, 5, -28}, // 0x40 '@' - {1586, 28, 26, 28, 0, -25}, // 0x41 'A' - {1677, 22, 26, 28, 3, -25}, // 0x42 'B' - {1749, 22, 28, 28, 3, -26}, // 0x43 'C' - {1826, 22, 26, 28, 3, -25}, // 0x44 'D' - {1898, 22, 26, 28, 3, -25}, // 0x45 'E' - {1970, 22, 26, 28, 3, -25}, // 0x46 'F' - {2042, 23, 28, 28, 3, -26}, // 0x47 'G' - {2123, 23, 26, 28, 3, -25}, // 0x48 'H' - {2198, 16, 26, 28, 6, -25}, // 0x49 'I' - {2250, 23, 27, 28, 4, -25}, // 0x4A 'J' - {2328, 24, 26, 28, 3, -25}, // 0x4B 'K' - {2406, 21, 26, 28, 4, -25}, // 0x4C 'L' - {2475, 26, 26, 28, 1, -25}, // 0x4D 'M' - {2560, 24, 26, 28, 2, -25}, // 0x4E 'N' - {2638, 24, 28, 28, 2, -26}, // 0x4F 'O' - {2722, 21, 26, 28, 3, -25}, // 0x50 'P' - {2791, 24, 32, 28, 2, -26}, // 0x51 'Q' - {2887, 24, 26, 28, 3, -25}, // 0x52 'R' - {2965, 20, 28, 28, 4, -26}, // 0x53 'S' - {3035, 22, 26, 28, 3, -25}, // 0x54 'T' - {3107, 23, 27, 28, 3, -25}, // 0x55 'U' - {3185, 28, 26, 28, 0, -25}, // 0x56 'V' - {3276, 26, 26, 28, 1, -25}, // 0x57 'W' - {3361, 24, 26, 28, 2, -25}, // 0x58 'X' - {3439, 24, 26, 28, 2, -25}, // 0x59 'Y' - {3517, 18, 26, 28, 5, -25}, // 0x5A 'Z' - {3576, 7, 34, 28, 13, -27}, // 0x5B '[' - {3606, 18, 35, 28, 5, -30}, // 0x5C '\' - {3685, 7, 34, 28, 8, -27}, // 0x5D ']' - {3715, 18, 12, 28, 5, -28}, // 0x5E '^' - {3742, 28, 2, 28, 0, 5}, // 0x5F '_' - {3749, 8, 7, 28, 7, -29}, // 0x60 '`' - {3756, 22, 22, 28, 3, -20}, // 0x61 'a' - {3817, 23, 29, 28, 2, -27}, // 0x62 'b' - {3901, 21, 22, 28, 4, -20}, // 0x63 'c' - {3959, 24, 29, 28, 3, -27}, // 0x64 'd' - {4046, 21, 22, 28, 3, -20}, // 0x65 'e' - {4104, 19, 28, 28, 6, -27}, // 0x66 'f' - {4171, 23, 30, 28, 3, -20}, // 0x67 'g' - {4258, 23, 28, 28, 3, -27}, // 0x68 'h' - {4339, 18, 29, 28, 5, -28}, // 0x69 'i' - {4405, 14, 38, 28, 6, -28}, // 0x6A 'j' - {4472, 22, 28, 28, 4, -27}, // 0x6B 'k' - {4549, 18, 28, 28, 5, -27}, // 0x6C 'l' - {4612, 28, 21, 28, 0, -20}, // 0x6D 'm' - {4686, 23, 21, 28, 2, -20}, // 0x6E 'n' - {4747, 22, 22, 28, 3, -20}, // 0x6F 'o' - {4808, 23, 30, 28, 2, -20}, // 0x70 'p' - {4895, 24, 30, 28, 3, -20}, // 0x71 'q' - {4985, 21, 20, 28, 5, -19}, // 0x72 'r' - {5038, 18, 22, 28, 5, -20}, // 0x73 's' - {5088, 21, 27, 28, 3, -25}, // 0x74 't' - {5159, 23, 21, 28, 3, -19}, // 0x75 'u' - {5220, 26, 20, 28, 1, -19}, // 0x76 'v' - {5285, 26, 20, 28, 1, -19}, // 0x77 'w' - {5350, 24, 20, 28, 2, -19}, // 0x78 'x' - {5410, 24, 29, 28, 2, -19}, // 0x79 'y' - {5497, 17, 20, 28, 6, -19}, // 0x7A 'z' - {5540, 11, 34, 28, 8, -27}, // 0x7B '{' - {5587, 2, 34, 28, 13, -27}, // 0x7C '|' - {5596, 11, 34, 28, 9, -27}, // 0x7D '}' - {5643, 20, 6, 28, 4, -15}}; // 0x7E '~' - -const GFXfont FreeMono24pt7b PROGMEM = {(uint8_t *)FreeMono24pt7bBitmaps, - (GFXglyph *)FreeMono24pt7bGlyphs, 0x20, - 0x7E, 47}; - -// Approx. 6330 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono9pt7b.h deleted file mode 100644 index a2e9a00..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono9pt7b.h +++ /dev/null @@ -1,178 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono9pt7bBitmaps[] PROGMEM = { - 0xAA, 0xA8, 0x0C, 0xED, 0x24, 0x92, 0x48, 0x24, 0x48, 0x91, 0x2F, 0xE4, - 0x89, 0x7F, 0x28, 0x51, 0x22, 0x40, 0x08, 0x3E, 0x62, 0x40, 0x30, 0x0E, - 0x01, 0x81, 0xC3, 0xBE, 0x08, 0x08, 0x71, 0x12, 0x23, 0x80, 0x23, 0xB8, - 0x0E, 0x22, 0x44, 0x70, 0x38, 0x81, 0x02, 0x06, 0x1A, 0x65, 0x46, 0xC8, - 0xEC, 0xE9, 0x24, 0x5A, 0xAA, 0xA9, 0x40, 0xA9, 0x55, 0x5A, 0x80, 0x10, - 0x22, 0x4B, 0xE3, 0x05, 0x11, 0x00, 0x10, 0x20, 0x47, 0xF1, 0x02, 0x04, - 0x00, 0x6B, 0x48, 0xFF, 0x00, 0xF0, 0x02, 0x08, 0x10, 0x60, 0x81, 0x04, - 0x08, 0x20, 0x41, 0x02, 0x08, 0x00, 0x38, 0x8A, 0x0C, 0x18, 0x30, 0x60, - 0xC1, 0x82, 0x88, 0xE0, 0x27, 0x28, 0x42, 0x10, 0x84, 0x21, 0x3E, 0x38, - 0x8A, 0x08, 0x10, 0x20, 0x82, 0x08, 0x61, 0x03, 0xF8, 0x7C, 0x06, 0x02, - 0x02, 0x1C, 0x06, 0x01, 0x01, 0x01, 0x42, 0x3C, 0x18, 0xA2, 0x92, 0x8A, - 0x28, 0xBF, 0x08, 0x21, 0xC0, 0x7C, 0x81, 0x03, 0xE4, 0x40, 0x40, 0x81, - 0x03, 0x88, 0xE0, 0x1E, 0x41, 0x04, 0x0B, 0x98, 0xB0, 0xC1, 0xC2, 0x88, - 0xE0, 0xFE, 0x04, 0x08, 0x20, 0x40, 0x82, 0x04, 0x08, 0x20, 0x40, 0x38, - 0x8A, 0x0C, 0x14, 0x47, 0x11, 0x41, 0x83, 0x8C, 0xE0, 0x38, 0x8A, 0x1C, - 0x18, 0x68, 0xCE, 0x81, 0x04, 0x13, 0xC0, 0xF0, 0x0F, 0x6C, 0x00, 0xD2, - 0xD2, 0x00, 0x03, 0x04, 0x18, 0x60, 0x60, 0x18, 0x04, 0x03, 0xFF, 0x80, - 0x00, 0x1F, 0xF0, 0x40, 0x18, 0x03, 0x00, 0x60, 0x20, 0x60, 0xC0, 0x80, - 0x3D, 0x84, 0x08, 0x30, 0xC2, 0x00, 0x00, 0x00, 0x30, 0x3C, 0x46, 0x82, - 0x8E, 0xB2, 0xA2, 0xA2, 0x9F, 0x80, 0x80, 0x40, 0x3C, 0x3C, 0x01, 0x40, - 0x28, 0x09, 0x01, 0x10, 0x42, 0x0F, 0xC1, 0x04, 0x40, 0x9E, 0x3C, 0xFE, - 0x21, 0x90, 0x48, 0x67, 0xE2, 0x09, 0x02, 0x81, 0x41, 0xFF, 0x80, 0x3E, - 0xB0, 0xF0, 0x30, 0x08, 0x04, 0x02, 0x00, 0x80, 0x60, 0x8F, 0x80, 0xFE, - 0x21, 0x90, 0x68, 0x14, 0x0A, 0x05, 0x02, 0x83, 0x43, 0x7F, 0x00, 0xFF, - 0x20, 0x90, 0x08, 0x87, 0xC2, 0x21, 0x00, 0x81, 0x40, 0xFF, 0xC0, 0xFF, - 0xA0, 0x50, 0x08, 0x87, 0xC2, 0x21, 0x00, 0x80, 0x40, 0x78, 0x00, 0x1E, - 0x98, 0x6C, 0x0A, 0x00, 0x80, 0x20, 0xF8, 0x0B, 0x02, 0x60, 0x87, 0xC0, - 0xE3, 0xA0, 0x90, 0x48, 0x27, 0xF2, 0x09, 0x04, 0x82, 0x41, 0x71, 0xC0, - 0xF9, 0x08, 0x42, 0x10, 0x84, 0x27, 0xC0, 0x1F, 0x02, 0x02, 0x02, 0x02, - 0x02, 0x82, 0x82, 0xC6, 0x78, 0xE3, 0xA1, 0x11, 0x09, 0x05, 0x83, 0x21, - 0x08, 0x84, 0x41, 0x70, 0xC0, 0xE0, 0x40, 0x40, 0x40, 0x40, 0x40, 0x41, - 0x41, 0x41, 0xFF, 0xE0, 0xEC, 0x19, 0x45, 0x28, 0xA4, 0xA4, 0x94, 0x91, - 0x12, 0x02, 0x40, 0x5C, 0x1C, 0xC3, 0xB0, 0x94, 0x4A, 0x24, 0x92, 0x49, - 0x14, 0x8A, 0x43, 0x70, 0x80, 0x1E, 0x31, 0x90, 0x50, 0x18, 0x0C, 0x06, - 0x02, 0x82, 0x63, 0x0F, 0x00, 0xFE, 0x43, 0x41, 0x41, 0x42, 0x7C, 0x40, - 0x40, 0x40, 0xF0, 0x1C, 0x31, 0x90, 0x50, 0x18, 0x0C, 0x06, 0x02, 0x82, - 0x63, 0x1F, 0x04, 0x07, 0x92, 0x30, 0xFE, 0x21, 0x90, 0x48, 0x24, 0x23, - 0xE1, 0x10, 0x84, 0x41, 0x70, 0xC0, 0x3A, 0xCD, 0x0A, 0x03, 0x01, 0x80, - 0xC1, 0xC7, 0x78, 0xFF, 0xC4, 0x62, 0x21, 0x00, 0x80, 0x40, 0x20, 0x10, - 0x08, 0x1F, 0x00, 0xE3, 0xA0, 0x90, 0x48, 0x24, 0x12, 0x09, 0x04, 0x82, - 0x22, 0x0E, 0x00, 0xF1, 0xE8, 0x10, 0x82, 0x10, 0x42, 0x10, 0x22, 0x04, - 0x80, 0x50, 0x0C, 0x00, 0x80, 0xF1, 0xE8, 0x09, 0x11, 0x25, 0x44, 0xA8, - 0x55, 0x0C, 0xA1, 0x8C, 0x31, 0x84, 0x30, 0xE3, 0xA0, 0x88, 0x82, 0x80, - 0x80, 0xC0, 0x90, 0x44, 0x41, 0x71, 0xC0, 0xE3, 0xA0, 0x88, 0x82, 0x81, - 0x40, 0x40, 0x20, 0x10, 0x08, 0x1F, 0x00, 0xFD, 0x0A, 0x20, 0x81, 0x04, - 0x10, 0x21, 0x83, 0xFC, 0xEA, 0xAA, 0xAA, 0xC0, 0x80, 0x81, 0x03, 0x02, - 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0xD5, 0x55, 0x55, 0xC0, - 0x10, 0x51, 0x22, 0x28, 0x20, 0xFF, 0xE0, 0x88, 0x80, 0x7E, 0x00, 0x80, - 0x47, 0xEC, 0x14, 0x0A, 0x0C, 0xFB, 0xC0, 0x20, 0x10, 0x0B, 0xC6, 0x12, - 0x05, 0x02, 0x81, 0x40, 0xB0, 0xB7, 0x80, 0x3A, 0x8E, 0x0C, 0x08, 0x10, - 0x10, 0x9E, 0x03, 0x00, 0x80, 0x47, 0xA4, 0x34, 0x0A, 0x05, 0x02, 0x81, - 0x21, 0x8F, 0x60, 0x3C, 0x43, 0x81, 0xFF, 0x80, 0x80, 0x61, 0x3E, 0x3D, - 0x04, 0x3E, 0x41, 0x04, 0x10, 0x41, 0x0F, 0x80, 0x3D, 0xA1, 0xA0, 0x50, - 0x28, 0x14, 0x09, 0x0C, 0x7A, 0x01, 0x01, 0x87, 0x80, 0xC0, 0x20, 0x10, - 0x0B, 0xC6, 0x32, 0x09, 0x04, 0x82, 0x41, 0x20, 0xB8, 0xE0, 0x10, 0x01, - 0xC0, 0x81, 0x02, 0x04, 0x08, 0x11, 0xFC, 0x10, 0x3E, 0x10, 0x84, 0x21, - 0x08, 0x42, 0x3F, 0x00, 0xC0, 0x40, 0x40, 0x4F, 0x44, 0x58, 0x70, 0x48, - 0x44, 0x42, 0xC7, 0x70, 0x20, 0x40, 0x81, 0x02, 0x04, 0x08, 0x10, 0x23, - 0xF8, 0xB7, 0x64, 0x62, 0x31, 0x18, 0x8C, 0x46, 0x23, 0x91, 0x5E, 0x31, - 0x90, 0x48, 0x24, 0x12, 0x09, 0x05, 0xC7, 0x3E, 0x31, 0xA0, 0x30, 0x18, - 0x0C, 0x05, 0x8C, 0x7C, 0xDE, 0x30, 0x90, 0x28, 0x14, 0x0A, 0x05, 0x84, - 0xBC, 0x40, 0x20, 0x38, 0x00, 0x3D, 0xA1, 0xA0, 0x50, 0x28, 0x14, 0x09, - 0x0C, 0x7A, 0x01, 0x00, 0x80, 0xE0, 0xCE, 0xA1, 0x82, 0x04, 0x08, 0x10, - 0x7C, 0x3A, 0x8D, 0x0B, 0x80, 0xF0, 0x70, 0xDE, 0x40, 0x40, 0xFC, 0x40, - 0x40, 0x40, 0x40, 0x40, 0x41, 0x3E, 0xC3, 0x41, 0x41, 0x41, 0x41, 0x41, - 0x43, 0x3D, 0xE3, 0xA0, 0x90, 0x84, 0x42, 0x20, 0xA0, 0x50, 0x10, 0xE3, - 0xC0, 0x92, 0x4B, 0x25, 0x92, 0xA9, 0x98, 0x44, 0xE3, 0x31, 0x05, 0x01, - 0x01, 0x41, 0x11, 0x05, 0xC7, 0xE3, 0xA0, 0x90, 0x84, 0x42, 0x40, 0xA0, - 0x60, 0x10, 0x10, 0x08, 0x3E, 0x00, 0xFD, 0x08, 0x20, 0x82, 0x08, 0x10, - 0xBF, 0x29, 0x24, 0xA2, 0x49, 0x26, 0xFF, 0xF8, 0x89, 0x24, 0x8A, 0x49, - 0x2C, 0x61, 0x24, 0x30}; - -const GFXglyph FreeMono9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 2, 11, 11, 4, -10}, // 0x21 '!' - {3, 6, 5, 11, 2, -10}, // 0x22 '"' - {7, 7, 12, 11, 2, -10}, // 0x23 '#' - {18, 8, 12, 11, 1, -10}, // 0x24 '$' - {30, 7, 11, 11, 2, -10}, // 0x25 '%' - {40, 7, 10, 11, 2, -9}, // 0x26 '&' - {49, 3, 5, 11, 4, -10}, // 0x27 ''' - {51, 2, 13, 11, 5, -10}, // 0x28 '(' - {55, 2, 13, 11, 4, -10}, // 0x29 ')' - {59, 7, 7, 11, 2, -10}, // 0x2A '*' - {66, 7, 7, 11, 2, -8}, // 0x2B '+' - {73, 3, 5, 11, 2, -1}, // 0x2C ',' - {75, 9, 1, 11, 1, -5}, // 0x2D '-' - {77, 2, 2, 11, 4, -1}, // 0x2E '.' - {78, 7, 13, 11, 2, -11}, // 0x2F '/' - {90, 7, 11, 11, 2, -10}, // 0x30 '0' - {100, 5, 11, 11, 3, -10}, // 0x31 '1' - {107, 7, 11, 11, 2, -10}, // 0x32 '2' - {117, 8, 11, 11, 1, -10}, // 0x33 '3' - {128, 6, 11, 11, 3, -10}, // 0x34 '4' - {137, 7, 11, 11, 2, -10}, // 0x35 '5' - {147, 7, 11, 11, 2, -10}, // 0x36 '6' - {157, 7, 11, 11, 2, -10}, // 0x37 '7' - {167, 7, 11, 11, 2, -10}, // 0x38 '8' - {177, 7, 11, 11, 2, -10}, // 0x39 '9' - {187, 2, 8, 11, 4, -7}, // 0x3A ':' - {189, 3, 11, 11, 3, -7}, // 0x3B ';' - {194, 8, 8, 11, 1, -8}, // 0x3C '<' - {202, 9, 4, 11, 1, -6}, // 0x3D '=' - {207, 9, 8, 11, 1, -8}, // 0x3E '>' - {216, 7, 10, 11, 2, -9}, // 0x3F '?' - {225, 8, 12, 11, 2, -10}, // 0x40 '@' - {237, 11, 10, 11, 0, -9}, // 0x41 'A' - {251, 9, 10, 11, 1, -9}, // 0x42 'B' - {263, 9, 10, 11, 1, -9}, // 0x43 'C' - {275, 9, 10, 11, 1, -9}, // 0x44 'D' - {287, 9, 10, 11, 1, -9}, // 0x45 'E' - {299, 9, 10, 11, 1, -9}, // 0x46 'F' - {311, 10, 10, 11, 1, -9}, // 0x47 'G' - {324, 9, 10, 11, 1, -9}, // 0x48 'H' - {336, 5, 10, 11, 3, -9}, // 0x49 'I' - {343, 8, 10, 11, 2, -9}, // 0x4A 'J' - {353, 9, 10, 11, 1, -9}, // 0x4B 'K' - {365, 8, 10, 11, 2, -9}, // 0x4C 'L' - {375, 11, 10, 11, 0, -9}, // 0x4D 'M' - {389, 9, 10, 11, 1, -9}, // 0x4E 'N' - {401, 9, 10, 11, 1, -9}, // 0x4F 'O' - {413, 8, 10, 11, 1, -9}, // 0x50 'P' - {423, 9, 13, 11, 1, -9}, // 0x51 'Q' - {438, 9, 10, 11, 1, -9}, // 0x52 'R' - {450, 7, 10, 11, 2, -9}, // 0x53 'S' - {459, 9, 10, 11, 1, -9}, // 0x54 'T' - {471, 9, 10, 11, 1, -9}, // 0x55 'U' - {483, 11, 10, 11, 0, -9}, // 0x56 'V' - {497, 11, 10, 11, 0, -9}, // 0x57 'W' - {511, 9, 10, 11, 1, -9}, // 0x58 'X' - {523, 9, 10, 11, 1, -9}, // 0x59 'Y' - {535, 7, 10, 11, 2, -9}, // 0x5A 'Z' - {544, 2, 13, 11, 5, -10}, // 0x5B '[' - {548, 7, 13, 11, 2, -11}, // 0x5C '\' - {560, 2, 13, 11, 4, -10}, // 0x5D ']' - {564, 7, 5, 11, 2, -10}, // 0x5E '^' - {569, 11, 1, 11, 0, 2}, // 0x5F '_' - {571, 3, 3, 11, 3, -11}, // 0x60 '`' - {573, 9, 8, 11, 1, -7}, // 0x61 'a' - {582, 9, 11, 11, 1, -10}, // 0x62 'b' - {595, 7, 8, 11, 2, -7}, // 0x63 'c' - {602, 9, 11, 11, 1, -10}, // 0x64 'd' - {615, 8, 8, 11, 1, -7}, // 0x65 'e' - {623, 6, 11, 11, 3, -10}, // 0x66 'f' - {632, 9, 11, 11, 1, -7}, // 0x67 'g' - {645, 9, 11, 11, 1, -10}, // 0x68 'h' - {658, 7, 10, 11, 2, -9}, // 0x69 'i' - {667, 5, 13, 11, 3, -9}, // 0x6A 'j' - {676, 8, 11, 11, 2, -10}, // 0x6B 'k' - {687, 7, 11, 11, 2, -10}, // 0x6C 'l' - {697, 9, 8, 11, 1, -7}, // 0x6D 'm' - {706, 9, 8, 11, 1, -7}, // 0x6E 'n' - {715, 9, 8, 11, 1, -7}, // 0x6F 'o' - {724, 9, 11, 11, 1, -7}, // 0x70 'p' - {737, 9, 11, 11, 1, -7}, // 0x71 'q' - {750, 7, 8, 11, 3, -7}, // 0x72 'r' - {757, 7, 8, 11, 2, -7}, // 0x73 's' - {764, 8, 10, 11, 2, -9}, // 0x74 't' - {774, 8, 8, 11, 1, -7}, // 0x75 'u' - {782, 9, 8, 11, 1, -7}, // 0x76 'v' - {791, 9, 8, 11, 1, -7}, // 0x77 'w' - {800, 9, 8, 11, 1, -7}, // 0x78 'x' - {809, 9, 11, 11, 1, -7}, // 0x79 'y' - {822, 7, 8, 11, 2, -7}, // 0x7A 'z' - {829, 3, 13, 11, 4, -10}, // 0x7B '{' - {834, 1, 13, 11, 5, -10}, // 0x7C '|' - {836, 3, 13, 11, 4, -10}, // 0x7D '}' - {841, 7, 3, 11, 2, -6}}; // 0x7E '~' - -const GFXfont FreeMono9pt7b PROGMEM = {(uint8_t *)FreeMono9pt7bBitmaps, - (GFXglyph *)FreeMono9pt7bGlyphs, 0x20, - 0x7E, 18}; - -// Approx. 1516 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h deleted file mode 100644 index a205386..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h +++ /dev/null @@ -1,252 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xF6, 0x66, 0x60, 0x6F, 0x60, 0xE7, 0xE7, 0x62, 0x42, - 0x42, 0x42, 0x42, 0x11, 0x87, 0x30, 0xC6, 0x18, 0xC3, 0x31, 0xFF, 0xFF, - 0xF9, 0x98, 0x33, 0x06, 0x60, 0xCC, 0x7F, 0xEF, 0xFC, 0x66, 0x0C, 0xC3, - 0x98, 0x63, 0x04, 0x40, 0x0C, 0x03, 0x00, 0xC0, 0xFE, 0x7F, 0x9C, 0x66, - 0x09, 0x80, 0x78, 0x0F, 0xE0, 0x7F, 0x03, 0xE0, 0xF8, 0x7F, 0xFB, 0xFC, - 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x38, 0x1F, 0x0C, 0x42, 0x10, 0xC4, 0x1F, - 0x03, 0x9C, 0x3C, 0x7F, 0x33, 0xE0, 0x8C, 0x21, 0x08, 0xC3, 0xE0, 0x70, - 0x3E, 0x1F, 0xC6, 0x61, 0x80, 0x70, 0x0C, 0x07, 0x83, 0xEE, 0xDF, 0xB3, - 0xCC, 0x73, 0xFE, 0x7F, 0x80, 0xFD, 0x24, 0x90, 0x39, 0xDC, 0xE6, 0x73, - 0x18, 0xC6, 0x31, 0x8C, 0x31, 0x8E, 0x31, 0xC4, 0xE7, 0x1C, 0xE3, 0x1C, - 0x63, 0x18, 0xC6, 0x31, 0x98, 0xCE, 0x67, 0x10, 0x0C, 0x03, 0x00, 0xC3, - 0xB7, 0xFF, 0xDF, 0xE1, 0xE0, 0xFC, 0x33, 0x0C, 0xC0, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x00, 0x3B, 0x9C, 0xCE, 0x62, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0x80, 0x00, 0x40, 0x30, 0x1C, 0x07, 0x03, 0x80, 0xE0, 0x30, - 0x1C, 0x06, 0x03, 0x80, 0xC0, 0x70, 0x18, 0x0E, 0x03, 0x01, 0xC0, 0x60, - 0x38, 0x0E, 0x01, 0x00, 0x1E, 0x0F, 0xC6, 0x1B, 0x87, 0xC0, 0xF0, 0x3C, - 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x87, 0x61, 0x8F, 0xC1, 0xE0, 0x1C, - 0x0F, 0x0F, 0xC3, 0xB0, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x3F, 0xFF, 0xFC, 0x1F, 0x1F, 0xEE, 0x1F, 0x83, 0xC0, - 0xC0, 0x70, 0x38, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE3, 0xF0, 0xFF, 0xFF, - 0xFC, 0x3F, 0x0F, 0xF1, 0x87, 0x00, 0x60, 0x0C, 0x03, 0x83, 0xE0, 0x7C, - 0x01, 0xC0, 0x0C, 0x01, 0x80, 0x3C, 0x0F, 0xFF, 0x9F, 0xC0, 0x07, 0x07, - 0x83, 0xC3, 0xE1, 0xB1, 0xD8, 0xCC, 0xC6, 0xE3, 0x7F, 0xFF, 0xE0, 0x61, - 0xF8, 0xFC, 0x7F, 0x9F, 0xE6, 0x01, 0x80, 0x60, 0x1F, 0x87, 0xF9, 0x86, - 0x00, 0xC0, 0x30, 0x0C, 0x03, 0xC1, 0xBF, 0xE7, 0xE0, 0x07, 0xC7, 0xF3, - 0xC1, 0xC0, 0x60, 0x38, 0x0E, 0xF3, 0xFE, 0xF1, 0xF8, 0x3E, 0x0F, 0x83, - 0x71, 0xCF, 0xE1, 0xF0, 0xFF, 0xFF, 0xFC, 0x1F, 0x07, 0x01, 0x80, 0x60, - 0x38, 0x0C, 0x03, 0x01, 0xC0, 0x60, 0x18, 0x0E, 0x03, 0x00, 0xC0, 0x1E, - 0x1F, 0xEE, 0x1F, 0x03, 0xC0, 0xF0, 0x36, 0x19, 0xFE, 0x7F, 0xB8, 0x7C, - 0x0F, 0x03, 0xE1, 0xDF, 0xE3, 0xF0, 0x3E, 0x1F, 0xCE, 0x3B, 0x07, 0xC1, - 0xF0, 0x7E, 0x3D, 0xFF, 0x3D, 0xC0, 0x70, 0x18, 0x0E, 0x0F, 0x3F, 0x8F, - 0x80, 0xFF, 0x80, 0x00, 0xFF, 0x80, 0x77, 0x70, 0x00, 0x00, 0x76, 0x6C, - 0xC8, 0x80, 0x00, 0x30, 0x0F, 0x03, 0xE0, 0xF8, 0x3E, 0x0F, 0x80, 0x3E, - 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x00, 0x20, 0xFF, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x0F, 0x80, 0x3E, 0x00, 0xF8, - 0x03, 0xE0, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x0F, 0x00, 0x40, 0x00, 0x7C, - 0x7F, 0xB0, 0xF8, 0x30, 0x18, 0x1C, 0x3C, 0x3C, 0x18, 0x08, 0x00, 0x07, - 0x03, 0x81, 0xC0, 0x1E, 0x07, 0xF1, 0xC7, 0x30, 0x6C, 0x0D, 0x87, 0xB3, - 0xF6, 0xE6, 0xD8, 0xDB, 0x1B, 0x73, 0x67, 0xFC, 0x7F, 0x80, 0x30, 0x03, - 0x00, 0x71, 0xC7, 0xF8, 0x7C, 0x00, 0x3F, 0x80, 0x7F, 0x80, 0x1F, 0x00, - 0x76, 0x00, 0xEE, 0x01, 0x8C, 0x07, 0x18, 0x0E, 0x38, 0x1F, 0xF0, 0x7F, - 0xF0, 0xC0, 0x61, 0x80, 0xCF, 0xC7, 0xFF, 0x8F, 0xC0, 0xFF, 0xC7, 0xFF, - 0x0C, 0x1C, 0x60, 0x63, 0x03, 0x18, 0x38, 0xFF, 0x87, 0xFE, 0x30, 0x39, - 0x80, 0xCC, 0x06, 0x60, 0x7F, 0xFF, 0x7F, 0xF0, 0x0F, 0xF3, 0xFF, 0x70, - 0x76, 0x03, 0xC0, 0x3C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0x60, - 0x37, 0x07, 0x3F, 0xF0, 0xFC, 0xFF, 0x0F, 0xFC, 0x60, 0xE6, 0x06, 0x60, - 0x36, 0x03, 0x60, 0x36, 0x03, 0x60, 0x36, 0x03, 0x60, 0x76, 0x0E, 0xFF, - 0xCF, 0xF8, 0xFF, 0xF7, 0xFF, 0x8C, 0x0C, 0x60, 0x63, 0x1B, 0x18, 0xC0, - 0xFE, 0x07, 0xF0, 0x31, 0x81, 0x8C, 0xCC, 0x06, 0x60, 0x3F, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFF, 0xCC, 0x06, 0x60, 0x33, 0x19, 0x98, 0xC0, 0xFE, - 0x07, 0xF0, 0x31, 0x81, 0x8C, 0x0C, 0x00, 0x60, 0x0F, 0xF0, 0x7F, 0x80, - 0x0F, 0xF1, 0xFF, 0x9C, 0x1C, 0xC0, 0x6C, 0x03, 0x60, 0x03, 0x00, 0x18, - 0x7F, 0xC3, 0xFE, 0x01, 0xB8, 0x0C, 0xE0, 0xE3, 0xFF, 0x07, 0xE0, 0x7C, - 0xF9, 0xF3, 0xE3, 0x03, 0x0C, 0x0C, 0x30, 0x30, 0xC0, 0xC3, 0xFF, 0x0F, - 0xFC, 0x30, 0x30, 0xC0, 0xC3, 0x03, 0x0C, 0x0C, 0xFC, 0xFF, 0xF3, 0xF0, - 0xFF, 0xFF, 0xF0, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, - 0x00, 0xC0, 0x30, 0xFF, 0xFF, 0xF0, 0x0F, 0xF8, 0x7F, 0xC0, 0x30, 0x01, - 0x80, 0x0C, 0x00, 0x60, 0x03, 0x18, 0x18, 0xC0, 0xC6, 0x06, 0x30, 0x31, - 0xC3, 0x0F, 0xF8, 0x1F, 0x00, 0xFC, 0xFB, 0xF3, 0xE3, 0x0E, 0x0C, 0x70, - 0x33, 0x80, 0xFC, 0x03, 0xF0, 0x0F, 0xE0, 0x39, 0xC0, 0xC3, 0x03, 0x0E, - 0x0C, 0x18, 0xFC, 0x7F, 0xF0, 0xF0, 0xFF, 0x0F, 0xF0, 0x18, 0x01, 0x80, - 0x18, 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x31, 0x83, 0x18, 0x31, 0x83, - 0xFF, 0xFF, 0xFF, 0xF0, 0x3F, 0xC0, 0xF7, 0x87, 0x9E, 0x1E, 0x7C, 0xF9, - 0xB3, 0xE6, 0xFD, 0x99, 0xF6, 0x67, 0x99, 0x8E, 0x66, 0x31, 0x98, 0x06, - 0xFC, 0xFF, 0xF3, 0xF0, 0xF1, 0xFF, 0xCF, 0xCF, 0x0C, 0x78, 0x63, 0xE3, - 0x1B, 0x18, 0xDC, 0xC6, 0x76, 0x31, 0xB1, 0x8F, 0x8C, 0x3C, 0x61, 0xE7, - 0xE7, 0x3F, 0x18, 0x0F, 0x03, 0xFC, 0x70, 0xE6, 0x06, 0xE0, 0x7C, 0x03, - 0xC0, 0x3C, 0x03, 0xC0, 0x3E, 0x07, 0x60, 0x67, 0x0E, 0x3F, 0xC0, 0xF0, - 0xFF, 0x8F, 0xFE, 0x30, 0x73, 0x03, 0x30, 0x33, 0x03, 0x30, 0x73, 0xFE, - 0x3F, 0x83, 0x00, 0x30, 0x03, 0x00, 0xFF, 0x0F, 0xF0, 0x0F, 0x03, 0xFC, - 0x70, 0xE6, 0x06, 0xE0, 0x7C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3E, 0x07, - 0x60, 0x67, 0x0E, 0x3F, 0xC1, 0xF0, 0x18, 0x33, 0xFF, 0x3F, 0xE0, 0xFF, - 0x83, 0xFF, 0x83, 0x07, 0x0C, 0x0C, 0x30, 0x30, 0xC1, 0xC3, 0xFE, 0x0F, - 0xF0, 0x31, 0xE0, 0xC3, 0x83, 0x07, 0x0C, 0x0C, 0xFE, 0x3F, 0xF8, 0x70, - 0x3F, 0xDF, 0xFE, 0x1F, 0x03, 0xC0, 0xF8, 0x07, 0xE0, 0x7E, 0x01, 0xF0, - 0x3C, 0x0F, 0x87, 0xFF, 0xBF, 0xC0, 0xFF, 0xFF, 0xFF, 0xC6, 0x3C, 0x63, - 0xC6, 0x3C, 0x63, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x3F, 0xC3, 0xFC, 0xFF, 0xFF, 0xFF, 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, - 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, 0x60, 0x63, 0x9C, 0x1F, 0xC0, 0xF0, - 0xFC, 0x3F, 0xFC, 0x3F, 0x30, 0x0C, 0x38, 0x1C, 0x18, 0x18, 0x1C, 0x38, - 0x1C, 0x38, 0x0E, 0x70, 0x0E, 0x70, 0x0F, 0x60, 0x07, 0xE0, 0x07, 0xE0, - 0x03, 0xC0, 0x03, 0xC0, 0xFC, 0xFF, 0xF3, 0xF6, 0x01, 0xDC, 0xC6, 0x77, - 0x99, 0xDE, 0x67, 0x79, 0x8D, 0xFE, 0x3F, 0xF8, 0xF3, 0xE3, 0xCF, 0x8F, - 0x3C, 0x38, 0x70, 0xE1, 0xC0, 0xF8, 0xFB, 0xE3, 0xE3, 0x86, 0x0F, 0x38, - 0x1F, 0xC0, 0x3E, 0x00, 0x70, 0x03, 0xE0, 0x0F, 0x80, 0x77, 0x03, 0x8E, - 0x1E, 0x1C, 0xFC, 0xFF, 0xF3, 0xF0, 0xF9, 0xFF, 0x9F, 0x30, 0xC3, 0x9C, - 0x19, 0x81, 0xF8, 0x0F, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x3F, 0xC3, 0xFC, 0xFF, 0xBF, 0xEC, 0x3B, 0x0C, 0xC6, 0x33, 0x80, 0xC0, - 0x60, 0x38, 0xCC, 0x36, 0x0F, 0x03, 0xFF, 0xFF, 0xF0, 0xFF, 0xF1, 0x8C, - 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC7, 0xFE, 0x40, 0x30, 0x0E, - 0x01, 0x80, 0x70, 0x0C, 0x03, 0x80, 0x60, 0x1C, 0x03, 0x00, 0xE0, 0x18, - 0x07, 0x00, 0xC0, 0x38, 0x0E, 0x01, 0xC0, 0x70, 0x0C, 0x01, 0xFF, 0xC6, - 0x31, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x1F, 0xFE, 0x04, 0x03, - 0x01, 0xE0, 0xFC, 0x7B, 0x9C, 0x7E, 0x1F, 0x03, 0xFF, 0xFF, 0xFF, 0xF0, - 0xCE, 0x73, 0x3F, 0x07, 0xF8, 0x00, 0xC0, 0x0C, 0x1F, 0xC7, 0xFC, 0x60, - 0xCC, 0x0C, 0xC1, 0xCF, 0xFF, 0x3F, 0xF0, 0xF0, 0x07, 0x80, 0x0C, 0x00, - 0x60, 0x03, 0x7C, 0x1F, 0xF8, 0xF1, 0xC7, 0x07, 0x30, 0x19, 0x80, 0xCC, - 0x06, 0x60, 0x73, 0xC7, 0x7F, 0xFB, 0xDF, 0x00, 0x1F, 0xB3, 0xFF, 0x70, - 0xFE, 0x07, 0xC0, 0x3C, 0x00, 0xC0, 0x0C, 0x00, 0x70, 0x77, 0xFF, 0x1F, - 0xC0, 0x01, 0xE0, 0x0F, 0x00, 0x18, 0x00, 0xC1, 0xF6, 0x3F, 0xF1, 0xC7, - 0x9C, 0x1C, 0xC0, 0x66, 0x03, 0x30, 0x19, 0x81, 0xC7, 0x1E, 0x3F, 0xFC, - 0x7D, 0xE0, 0x1F, 0x83, 0xFC, 0x70, 0xEE, 0x07, 0xFF, 0xFF, 0xFF, 0xE0, - 0x0E, 0x00, 0x70, 0x73, 0xFF, 0x1F, 0xC0, 0x07, 0xC3, 0xFC, 0x60, 0x0C, - 0x0F, 0xFD, 0xFF, 0x86, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x01, - 0x81, 0xFF, 0xBF, 0xF0, 0x1F, 0x79, 0xFF, 0xDC, 0x79, 0x81, 0xCC, 0x06, - 0x60, 0x33, 0x01, 0x9C, 0x1C, 0x71, 0xE1, 0xFF, 0x07, 0xD8, 0x00, 0xC0, - 0x06, 0x00, 0x70, 0x7F, 0x03, 0xF0, 0xF0, 0x03, 0xC0, 0x03, 0x00, 0x0C, - 0x00, 0x37, 0xC0, 0xFF, 0x83, 0xC7, 0x0C, 0x0C, 0x30, 0x30, 0xC0, 0xC3, - 0x03, 0x0C, 0x0C, 0x30, 0x33, 0xF3, 0xFF, 0xCF, 0xC0, 0x06, 0x00, 0xC0, - 0x00, 0x3F, 0x07, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, - 0x03, 0x0F, 0xFF, 0xFF, 0xC0, 0x06, 0x06, 0x00, 0xFF, 0xFF, 0x03, 0x03, - 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0xFE, 0xFC, - 0xF0, 0x07, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x3F, 0x19, 0xF8, 0xDE, 0x07, - 0xE0, 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x6F, 0x03, 0x1C, 0x78, 0xFF, 0xC7, - 0xE0, 0x7E, 0x0F, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x61, 0xFF, 0xFF, 0xF8, 0xFE, 0xF1, - 0xFF, 0xF1, 0xCE, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC6, 0x31, - 0x8C, 0x63, 0x19, 0xF7, 0xBF, 0xEF, 0x78, 0x77, 0xC1, 0xFF, 0x83, 0xC7, - 0x0C, 0x0C, 0x30, 0x30, 0xC0, 0xC3, 0x03, 0x0C, 0x0C, 0x30, 0x33, 0xF1, - 0xFF, 0xC7, 0xC0, 0x1F, 0x83, 0xFC, 0x70, 0xEE, 0x07, 0xC0, 0x3C, 0x03, - 0xC0, 0x3E, 0x07, 0x70, 0xE3, 0xFC, 0x1F, 0x80, 0xF7, 0xE3, 0xFF, 0xC3, - 0xC3, 0x8E, 0x07, 0x30, 0x0C, 0xC0, 0x33, 0x00, 0xCE, 0x07, 0x3C, 0x38, - 0xFF, 0xC3, 0x7E, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x0F, 0xE0, 0x3F, 0x80, - 0x1F, 0xBC, 0xFF, 0xF7, 0x0F, 0x38, 0x1C, 0xC0, 0x33, 0x00, 0xCC, 0x03, - 0x38, 0x1C, 0x70, 0xF0, 0xFF, 0xC1, 0xFB, 0x00, 0x0C, 0x00, 0x30, 0x00, - 0xC0, 0x1F, 0xC0, 0x7F, 0x79, 0xE7, 0xFF, 0x1F, 0x31, 0xC0, 0x18, 0x01, - 0x80, 0x18, 0x01, 0x80, 0x18, 0x0F, 0xFC, 0xFF, 0xC0, 0x3F, 0x9F, 0xFE, - 0x1F, 0x82, 0xFE, 0x1F, 0xE0, 0xFF, 0x03, 0xE0, 0xFF, 0xFF, 0xF0, 0x30, - 0x06, 0x00, 0xC0, 0x7F, 0xEF, 0xFC, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, - 0x00, 0xC0, 0x18, 0x71, 0xFE, 0x1F, 0x00, 0xF1, 0xF7, 0x8F, 0x8C, 0x0C, - 0x60, 0x63, 0x03, 0x18, 0x18, 0xC0, 0xC6, 0x06, 0x38, 0xF0, 0xFF, 0xC3, - 0xEE, 0xFC, 0xFF, 0xF3, 0xF3, 0x87, 0x0E, 0x1C, 0x1C, 0x60, 0x73, 0x80, - 0xEC, 0x03, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x00, 0xF8, 0x7F, 0xE1, - 0xF7, 0x39, 0x8C, 0xE6, 0x37, 0xB0, 0xFF, 0xC3, 0xFF, 0x07, 0xBC, 0x1C, - 0xF0, 0x73, 0x81, 0x86, 0x00, 0x7C, 0xF9, 0xF3, 0xE3, 0xCF, 0x07, 0xF8, - 0x0F, 0xC0, 0x1E, 0x00, 0xFC, 0x07, 0x38, 0x38, 0x73, 0xF3, 0xFF, 0xCF, - 0xC0, 0xF9, 0xFF, 0x9F, 0x70, 0xE3, 0x0C, 0x39, 0xC1, 0x98, 0x19, 0x81, - 0xF8, 0x0F, 0x00, 0xF0, 0x06, 0x00, 0x60, 0x0E, 0x00, 0xC0, 0xFF, 0x0F, - 0xF0, 0x7F, 0xCF, 0xF9, 0x8E, 0x33, 0x80, 0x70, 0x1C, 0x07, 0x01, 0xC6, - 0x70, 0xFF, 0xFF, 0xFF, 0x80, 0x0E, 0x3C, 0x60, 0xC1, 0x83, 0x06, 0x0C, - 0x39, 0xE3, 0xC0, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x3C, 0x38, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0xE1, 0xC0, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x3C, - 0x79, 0x83, 0x06, 0x0C, 0x18, 0x31, 0xE3, 0x80, 0x3C, 0x37, 0xE7, 0x67, - 0xE6, 0x1C}; - -const GFXglyph FreeMonoBold12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 4, 15, 14, 5, -14}, // 0x21 '!' - {8, 8, 7, 14, 3, -13}, // 0x22 '"' - {15, 11, 18, 14, 2, -15}, // 0x23 '#' - {40, 10, 20, 14, 2, -16}, // 0x24 '$' - {65, 10, 15, 14, 2, -14}, // 0x25 '%' - {84, 10, 13, 14, 2, -12}, // 0x26 '&' - {101, 3, 7, 14, 5, -13}, // 0x27 ''' - {104, 5, 19, 14, 6, -14}, // 0x28 '(' - {116, 5, 19, 14, 3, -14}, // 0x29 ')' - {128, 10, 10, 14, 2, -14}, // 0x2A '*' - {141, 12, 13, 14, 1, -12}, // 0x2B '+' - {161, 5, 7, 14, 4, -2}, // 0x2C ',' - {166, 12, 2, 14, 1, -7}, // 0x2D '-' - {169, 3, 3, 14, 5, -2}, // 0x2E '.' - {171, 10, 20, 14, 2, -16}, // 0x2F '/' - {196, 10, 15, 14, 2, -14}, // 0x30 '0' - {215, 10, 15, 14, 2, -14}, // 0x31 '1' - {234, 10, 15, 14, 2, -14}, // 0x32 '2' - {253, 11, 15, 14, 1, -14}, // 0x33 '3' - {274, 9, 14, 14, 2, -13}, // 0x34 '4' - {290, 10, 15, 14, 2, -14}, // 0x35 '5' - {309, 10, 15, 14, 2, -14}, // 0x36 '6' - {328, 10, 15, 14, 2, -14}, // 0x37 '7' - {347, 10, 15, 14, 2, -14}, // 0x38 '8' - {366, 10, 15, 14, 3, -14}, // 0x39 '9' - {385, 3, 11, 14, 5, -10}, // 0x3A ':' - {390, 4, 15, 14, 4, -10}, // 0x3B ';' - {398, 12, 11, 14, 1, -11}, // 0x3C '<' - {415, 12, 7, 14, 1, -9}, // 0x3D '=' - {426, 12, 11, 14, 1, -11}, // 0x3E '>' - {443, 9, 14, 14, 3, -13}, // 0x3F '?' - {459, 11, 19, 14, 2, -14}, // 0x40 '@' - {486, 15, 14, 14, -1, -13}, // 0x41 'A' - {513, 13, 14, 14, 0, -13}, // 0x42 'B' - {536, 12, 14, 14, 1, -13}, // 0x43 'C' - {557, 12, 14, 14, 1, -13}, // 0x44 'D' - {578, 13, 14, 14, 0, -13}, // 0x45 'E' - {601, 13, 14, 14, 0, -13}, // 0x46 'F' - {624, 13, 14, 14, 1, -13}, // 0x47 'G' - {647, 14, 14, 14, 0, -13}, // 0x48 'H' - {672, 10, 14, 14, 2, -13}, // 0x49 'I' - {690, 13, 14, 14, 1, -13}, // 0x4A 'J' - {713, 14, 14, 14, 0, -13}, // 0x4B 'K' - {738, 12, 14, 14, 1, -13}, // 0x4C 'L' - {759, 14, 14, 14, 0, -13}, // 0x4D 'M' - {784, 13, 14, 14, 0, -13}, // 0x4E 'N' - {807, 12, 14, 14, 1, -13}, // 0x4F 'O' - {828, 12, 14, 14, 0, -13}, // 0x50 'P' - {849, 12, 17, 14, 1, -13}, // 0x51 'Q' - {875, 14, 14, 14, 0, -13}, // 0x52 'R' - {900, 10, 14, 14, 2, -13}, // 0x53 'S' - {918, 12, 14, 14, 1, -13}, // 0x54 'T' - {939, 12, 14, 14, 1, -13}, // 0x55 'U' - {960, 16, 14, 14, -1, -13}, // 0x56 'V' - {988, 14, 14, 14, 0, -13}, // 0x57 'W' - {1013, 14, 14, 14, 0, -13}, // 0x58 'X' - {1038, 12, 14, 14, 1, -13}, // 0x59 'Y' - {1059, 10, 14, 14, 2, -13}, // 0x5A 'Z' - {1077, 5, 19, 14, 6, -14}, // 0x5B '[' - {1089, 10, 20, 14, 2, -16}, // 0x5C '\' - {1114, 5, 19, 14, 3, -14}, // 0x5D ']' - {1126, 10, 8, 14, 2, -15}, // 0x5E '^' - {1136, 14, 2, 14, 0, 4}, // 0x5F '_' - {1140, 4, 4, 14, 4, -15}, // 0x60 '`' - {1142, 12, 11, 14, 1, -10}, // 0x61 'a' - {1159, 13, 15, 14, 0, -14}, // 0x62 'b' - {1184, 12, 11, 14, 1, -10}, // 0x63 'c' - {1201, 13, 15, 14, 1, -14}, // 0x64 'd' - {1226, 12, 11, 14, 1, -10}, // 0x65 'e' - {1243, 11, 15, 14, 2, -14}, // 0x66 'f' - {1264, 13, 16, 14, 1, -10}, // 0x67 'g' - {1290, 14, 15, 14, 0, -14}, // 0x68 'h' - {1317, 11, 14, 14, 1, -13}, // 0x69 'i' - {1337, 8, 19, 15, 3, -13}, // 0x6A 'j' - {1356, 13, 15, 14, 1, -14}, // 0x6B 'k' - {1381, 11, 15, 14, 1, -14}, // 0x6C 'l' - {1402, 15, 11, 14, 0, -10}, // 0x6D 'm' - {1423, 14, 11, 14, 0, -10}, // 0x6E 'n' - {1443, 12, 11, 14, 1, -10}, // 0x6F 'o' - {1460, 14, 16, 14, 0, -10}, // 0x70 'p' - {1488, 14, 16, 14, 0, -10}, // 0x71 'q' - {1516, 12, 11, 14, 1, -10}, // 0x72 'r' - {1533, 10, 11, 14, 2, -10}, // 0x73 's' - {1547, 11, 14, 14, 1, -13}, // 0x74 't' - {1567, 13, 11, 14, 0, -10}, // 0x75 'u' - {1585, 14, 11, 14, 0, -10}, // 0x76 'v' - {1605, 14, 11, 14, 0, -10}, // 0x77 'w' - {1625, 14, 11, 14, 0, -10}, // 0x78 'x' - {1645, 12, 16, 14, 1, -10}, // 0x79 'y' - {1669, 11, 11, 14, 1, -10}, // 0x7A 'z' - {1685, 7, 19, 14, 3, -14}, // 0x7B '{' - {1702, 2, 19, 14, 6, -14}, // 0x7C '|' - {1707, 7, 19, 14, 4, -14}, // 0x7D '}' - {1724, 12, 4, 14, 1, -7}}; // 0x7E '~' - -const GFXfont FreeMonoBold12pt7b PROGMEM = { - (uint8_t *)FreeMonoBold12pt7bBitmaps, (GFXglyph *)FreeMonoBold12pt7bGlyphs, - 0x20, 0x7E, 24}; - -// Approx. 2402 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h deleted file mode 100644 index 36664c1..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h +++ /dev/null @@ -1,425 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold18pt7bBitmaps[] PROGMEM = { - 0x77, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0x9C, 0xE7, 0x39, 0xC4, 0x03, 0xBF, - 0xFF, 0xB8, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1E, 0xC1, 0x98, 0x33, - 0x06, 0x60, 0xCC, 0x18, 0x0E, 0x1C, 0x0F, 0x3C, 0x1F, 0x3C, 0x1E, 0x3C, - 0x1E, 0x3C, 0x1E, 0x78, 0x1E, 0x78, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x1E, 0x78, 0x1E, 0x78, 0x1E, 0x78, 0x7F, 0xFE, 0x7F, 0xFE, - 0x7F, 0xFE, 0x7F, 0xFE, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0xF0, - 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x03, 0x00, 0x1E, 0x00, 0x78, 0x01, - 0xE0, 0x1F, 0xF1, 0xFF, 0xE7, 0xFF, 0xBE, 0x1E, 0xF0, 0x3B, 0xC0, 0xCF, - 0xE0, 0x3F, 0xF8, 0x7F, 0xF0, 0x7F, 0xE0, 0x1F, 0xF0, 0x0F, 0xE0, 0x3F, - 0x80, 0xFF, 0x87, 0xFF, 0xFE, 0xFF, 0xF3, 0x7F, 0x80, 0x78, 0x01, 0xE0, - 0x07, 0x80, 0x1E, 0x00, 0x78, 0x00, 0xC0, 0x1E, 0x00, 0xFF, 0x03, 0x86, - 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x18, 0x38, 0x70, 0x3F, 0xC2, 0x1E, 0x3E, - 0x03, 0xF8, 0x3F, 0x83, 0xF8, 0x0F, 0x8F, 0x18, 0x7F, 0x01, 0xC7, 0x03, - 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x1C, 0x70, 0x1F, 0xC0, 0x0F, 0x00, 0x03, - 0xD0, 0x1F, 0xF0, 0x7F, 0xE1, 0xFF, 0xC3, 0xE6, 0x07, 0x80, 0x0F, 0x00, - 0x0F, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0xFE, 0x03, 0xFE, 0xFF, 0xBD, 0xFE, - 0x3F, 0xFC, 0x3F, 0x7C, 0x7C, 0xFF, 0xFE, 0xFF, 0xFC, 0xFF, 0xF8, 0x7E, - 0xF0, 0xFF, 0xFF, 0xF6, 0x66, 0x66, 0x07, 0x0F, 0x1F, 0x1E, 0x3E, 0x3C, - 0x78, 0x78, 0x78, 0x70, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0x78, 0x78, 0x78, 0x3C, 0x3C, 0x1E, 0x1F, 0x0F, 0x07, 0xE0, 0xF0, 0xF8, - 0x78, 0x7C, 0x3C, 0x3E, 0x1E, 0x1E, 0x1E, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0E, 0x1E, 0x1E, 0x1E, 0x3C, 0x3C, 0x78, 0xF8, 0xF0, 0xE0, - 0x01, 0x80, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFF, - 0xFF, 0xFF, 0x7F, 0xFE, 0x1F, 0xF8, 0x07, 0xE0, 0x0F, 0xF0, 0x1F, 0xF8, - 0x1E, 0x78, 0x1C, 0x38, 0x18, 0x18, 0x01, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0x80, 0x3E, 0x78, 0xF3, 0xC7, - 0x8E, 0x1C, 0x70, 0xE1, 0x80, 0x7F, 0xFF, 0xDF, 0xFF, 0xF9, 0xFF, 0xFF, - 0x3F, 0xFF, 0xE0, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x0E, 0x00, 0x3C, 0x00, - 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x1E, 0x00, 0x38, 0x00, 0xF0, - 0x01, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x3C, 0x00, 0x78, 0x01, 0xE0, 0x03, - 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x78, 0x00, 0xF0, 0x03, 0xC0, 0x07, 0x80, - 0x1E, 0x00, 0x3C, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, 0x03, 0x00, 0x00, - 0x07, 0xE0, 0x1F, 0xF8, 0x3F, 0xFC, 0x3F, 0xFC, 0x7C, 0x3E, 0x78, 0x1E, - 0xF8, 0x1F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, - 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF8, 0x1F, 0x78, 0x1E, - 0x7C, 0x3E, 0x3F, 0xFC, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, 0x07, 0xC0, - 0x1F, 0x80, 0xFF, 0x03, 0xFE, 0x0F, 0xBC, 0x0C, 0x78, 0x00, 0xF0, 0x01, - 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x81, 0xFF, 0xFB, 0xFF, 0xF7, - 0xFF, 0xE7, 0xFF, 0x80, 0x0F, 0xC0, 0x7F, 0xE1, 0xFF, 0xE3, 0xFF, 0xEF, - 0x87, 0xDE, 0x07, 0xF8, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x01, - 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, - 0x78, 0x03, 0xE0, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, - 0x0F, 0xC0, 0x7F, 0xF0, 0xFF, 0xF8, 0xFF, 0xFC, 0x70, 0x3E, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x3C, 0x03, 0xFC, 0x03, 0xF0, 0x03, 0xF0, - 0x03, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, - 0xE0, 0x3F, 0xFF, 0xFE, 0xFF, 0xFC, 0x7F, 0xF8, 0x1F, 0xE0, 0x00, 0xF8, - 0x03, 0xF0, 0x07, 0xE0, 0x1F, 0xC0, 0x77, 0x80, 0xEF, 0x03, 0x9E, 0x0F, - 0x3C, 0x1C, 0x78, 0x70, 0xF1, 0xE1, 0xE3, 0x83, 0xCF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x78, 0x07, 0xFC, 0x0F, 0xF8, 0x1F, 0xF0, - 0x1F, 0xC0, 0x3F, 0xFC, 0x1F, 0xFE, 0x0F, 0xFF, 0x07, 0xFF, 0x83, 0xC0, - 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x7B, 0xE0, 0x3F, 0xFC, 0x1F, 0xFF, 0x0F, - 0xFF, 0xC3, 0x83, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, - 0x00, 0x0F, 0xB8, 0x0F, 0xBF, 0xFF, 0xCF, 0xFF, 0xC3, 0xFF, 0xC0, 0x7F, - 0x80, 0x00, 0xFC, 0x07, 0xFC, 0x3F, 0xF8, 0xFF, 0xF1, 0xF8, 0x07, 0xC0, - 0x1F, 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xE7, 0xC3, 0xDF, 0xC7, 0x7F, 0xCF, - 0xFF, 0xDF, 0x8F, 0xFC, 0x07, 0xF0, 0x0F, 0xF0, 0x1F, 0xE0, 0x3D, 0xE0, - 0xFB, 0xFF, 0xE3, 0xFF, 0xC3, 0xFF, 0x01, 0xF8, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x01, 0xE0, 0x03, 0x80, 0x0F, 0x00, 0x1E, - 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, - 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x38, - 0x00, 0x70, 0x00, 0x07, 0xC0, 0x3F, 0xE0, 0xFF, 0xE3, 0xFF, 0xEF, 0x83, - 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, 0xF0, 0x1E, 0xF0, 0x78, 0xFF, 0xE0, - 0xFF, 0x81, 0xFF, 0x0F, 0xFF, 0x9E, 0x0F, 0x78, 0x0F, 0xF0, 0x1F, 0xE0, - 0x3F, 0xE0, 0xFB, 0xFF, 0xE7, 0xFF, 0xC7, 0xFF, 0x03, 0xF8, 0x00, 0x0F, - 0xC0, 0x3F, 0xE0, 0xFF, 0xE3, 0xFF, 0xEF, 0xC3, 0xDF, 0x03, 0xBC, 0x07, - 0xF8, 0x0F, 0xF0, 0x1F, 0xF0, 0x3D, 0xF1, 0xFB, 0xFF, 0xF3, 0xFE, 0xE3, - 0xFB, 0xC3, 0xE7, 0x80, 0x1E, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xE7, 0xFF, - 0x8F, 0xFE, 0x1F, 0xF0, 0x1F, 0x80, 0x00, 0x77, 0xFF, 0xF7, 0x00, 0x00, - 0x00, 0x00, 0xEF, 0xFF, 0xEE, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xF3, 0xC7, 0x8E, 0x3C, 0x70, 0xE1, 0x87, 0x0C, 0x00, - 0x00, 0x00, 0x00, 0x80, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0xFE, - 0x00, 0xFE, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, - 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7C, 0x00, - 0x07, 0x7F, 0xFF, 0xDF, 0xFF, 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE0, 0x00, - 0x00, 0x00, 0x00, 0x1F, 0xFF, 0xF7, 0xFF, 0xFE, 0x7F, 0xFF, 0xCF, 0xFF, - 0xF8, 0x00, 0x00, 0x3C, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, - 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x3F, 0x80, - 0x3F, 0x80, 0x3F, 0x80, 0x3F, 0x80, 0x3F, 0x80, 0x0F, 0x80, 0x03, 0x80, - 0x00, 0x1F, 0xC0, 0xFF, 0xE3, 0xFF, 0xF7, 0xFF, 0xEF, 0x07, 0xFE, 0x03, - 0xDC, 0x07, 0x80, 0x0F, 0x00, 0x7C, 0x03, 0xF8, 0x1F, 0xC0, 0x1E, 0x00, - 0x30, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x1F, 0x00, 0x3E, - 0x00, 0x7C, 0x00, 0x70, 0x00, 0x07, 0xE0, 0x1F, 0xE0, 0x7F, 0xE1, 0xE1, - 0xC7, 0x83, 0xCE, 0x03, 0xBC, 0x07, 0x70, 0x0E, 0xE0, 0x7D, 0xC3, 0xFB, - 0x8F, 0xF7, 0x3C, 0xEE, 0x71, 0xDC, 0xE3, 0xB9, 0xC7, 0x73, 0xCE, 0xE3, - 0xFF, 0xC3, 0xFF, 0x83, 0xFF, 0x00, 0x07, 0x00, 0x0E, 0x00, 0x1E, 0x02, - 0x1E, 0x1E, 0x3F, 0xFC, 0x1F, 0xF0, 0x1F, 0x80, 0x0F, 0xF8, 0x00, 0x7F, - 0xF0, 0x01, 0xFF, 0xC0, 0x03, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x07, 0xF8, - 0x00, 0x1C, 0xF0, 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x1E, 0x1E, 0x00, - 0x78, 0x78, 0x03, 0xC0, 0xF0, 0x0F, 0xFF, 0xC0, 0x3F, 0xFF, 0x01, 0xFF, - 0xFE, 0x07, 0xFF, 0xF8, 0x3C, 0x00, 0xF3, 0xFC, 0x1F, 0xEF, 0xF8, 0x7F, - 0xFF, 0xE1, 0xFF, 0x7F, 0x03, 0xF8, 0x7F, 0xFC, 0x0F, 0xFF, 0xF0, 0xFF, - 0xFF, 0x8F, 0xFF, 0xF8, 0x3C, 0x07, 0xC3, 0xC0, 0x3C, 0x3C, 0x03, 0xC3, - 0xC0, 0x7C, 0x3F, 0xFF, 0x83, 0xFF, 0xF0, 0x3F, 0xFF, 0x83, 0xFF, 0xFE, - 0x3C, 0x03, 0xE3, 0xC0, 0x1F, 0x3C, 0x00, 0xF3, 0xC0, 0x0F, 0x3C, 0x01, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xEF, 0xFF, 0xFC, 0x7F, 0xFF, 0x00, 0x01, - 0xF8, 0xC1, 0xFF, 0xFC, 0x7F, 0xFF, 0x9F, 0xFF, 0xF7, 0xE0, 0x7E, 0xF8, - 0x07, 0xFE, 0x00, 0x7F, 0x80, 0x0E, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, - 0x07, 0x7F, 0x03, 0xE7, 0xFF, 0xFC, 0x7F, 0xFF, 0x03, 0xFF, 0xC0, 0x1F, - 0xE0, 0xFF, 0xF0, 0x3F, 0xFF, 0x0F, 0xFF, 0xE3, 0xFF, 0xFC, 0x78, 0x1F, - 0x9E, 0x03, 0xE7, 0x80, 0x79, 0xE0, 0x0F, 0x78, 0x03, 0xDE, 0x00, 0xF7, - 0x80, 0x3D, 0xE0, 0x0F, 0x78, 0x03, 0xDE, 0x00, 0xF7, 0x80, 0x7D, 0xE0, - 0x1E, 0x78, 0x1F, 0xBF, 0xFF, 0xCF, 0xFF, 0xF3, 0xFF, 0xF0, 0x7F, 0xF0, - 0x00, 0x7F, 0xFF, 0xDF, 0xFF, 0xFB, 0xFF, 0xFF, 0x7F, 0xFF, 0xE3, 0xC0, - 0x3C, 0x78, 0x07, 0x8F, 0x1C, 0xF1, 0xE3, 0xCC, 0x3F, 0xF8, 0x07, 0xFF, - 0x00, 0xFF, 0xE0, 0x1F, 0xFC, 0x03, 0xC7, 0x80, 0x78, 0xF1, 0x8F, 0x0C, - 0x79, 0xE0, 0x0F, 0x3C, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF7, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF3, 0xC0, 0x1E, 0x78, 0x63, 0xCF, 0x1E, 0x79, 0xE3, 0xC6, 0x3F, 0xF8, - 0x07, 0xFF, 0x00, 0xFF, 0xE0, 0x1F, 0xFC, 0x03, 0xC7, 0x80, 0x78, 0xE0, - 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x1F, 0xFC, 0x03, 0xFF, 0x80, - 0x7F, 0xF0, 0x07, 0xFC, 0x00, 0x01, 0xFC, 0xE0, 0x7F, 0xFE, 0x1F, 0xFF, - 0xE3, 0xFF, 0xFE, 0x7F, 0x03, 0xE7, 0xC0, 0x1E, 0xF8, 0x00, 0xEF, 0x00, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x03, 0xFE, 0xF0, - 0x3F, 0xFF, 0x03, 0xFF, 0xF8, 0x3F, 0xF7, 0x80, 0x1E, 0x7E, 0x01, 0xE3, - 0xFF, 0xFE, 0x1F, 0xFF, 0xE0, 0xFF, 0xF8, 0x01, 0xFE, 0x00, 0x7F, 0x0F, - 0xE3, 0xFC, 0x7F, 0x9F, 0xE3, 0xFC, 0x7F, 0x1F, 0xC1, 0xE0, 0x3C, 0x0F, - 0x01, 0xE0, 0x78, 0x0F, 0x03, 0xC0, 0x78, 0x1E, 0x03, 0xC0, 0xFF, 0xFE, - 0x07, 0xFF, 0xF0, 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x0F, 0x01, 0xE0, 0x78, - 0x0F, 0x03, 0xC0, 0x78, 0x1E, 0x03, 0xC3, 0xFC, 0x7F, 0xBF, 0xE3, 0xFF, - 0xFF, 0x1F, 0xF7, 0xF0, 0x7F, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, - 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x83, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xF8, 0x01, 0xFF, 0xE0, 0x3F, 0xFC, - 0x07, 0xFF, 0x80, 0xFF, 0xF0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x38, 0x07, 0x8F, - 0x00, 0xF1, 0xE0, 0x1E, 0x3C, 0x03, 0xC7, 0x80, 0xF8, 0xF8, 0x3F, 0x1F, - 0xFF, 0xC3, 0xFF, 0xF0, 0x1F, 0xFC, 0x00, 0x7E, 0x00, 0xFF, 0x0F, 0xCF, - 0xF9, 0xFE, 0xFF, 0x9F, 0xEF, 0xF8, 0xFC, 0x3C, 0x1F, 0x03, 0xC3, 0xE0, - 0x3C, 0x7C, 0x03, 0xCF, 0x80, 0x3D, 0xF0, 0x03, 0xFE, 0x00, 0x3F, 0xF8, - 0x03, 0xFF, 0x80, 0x3E, 0x7C, 0x03, 0xC3, 0xE0, 0x3C, 0x1E, 0x03, 0xC0, - 0xF0, 0x3C, 0x0F, 0x0F, 0xF8, 0x7E, 0xFF, 0x87, 0xFF, 0xF8, 0x7F, 0x7F, - 0x03, 0xE0, 0xFF, 0xC0, 0x3F, 0xF0, 0x0F, 0xFC, 0x03, 0xFF, 0x00, 0x1E, - 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, - 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x01, 0x87, 0x80, 0xF1, 0xE0, 0x3C, - 0x78, 0x0F, 0x1E, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xC0, 0x3E, 0x00, 0xF8, 0xFC, 0x01, 0xF9, 0xFC, 0x07, 0xF3, 0xF8, - 0x0F, 0xE3, 0xF8, 0x3F, 0x87, 0xF0, 0x7F, 0x0F, 0xF1, 0xFE, 0x1F, 0xE3, - 0xFC, 0x3D, 0xE7, 0x78, 0x7B, 0xDE, 0xF0, 0xF7, 0xBD, 0xE1, 0xE7, 0xF3, - 0xC3, 0xCF, 0xE7, 0x87, 0x8F, 0x8F, 0x0F, 0x1F, 0x1E, 0x1E, 0x1E, 0x3C, - 0x3C, 0x00, 0x79, 0xFF, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x1F, 0xF7, - 0xF0, 0x1F, 0xC0, 0xFC, 0x1F, 0xEF, 0xE1, 0xFF, 0xFE, 0x1F, 0xFF, 0xF1, - 0xFF, 0x3F, 0x83, 0xC3, 0xF8, 0x3C, 0x3F, 0xC3, 0xC3, 0xFC, 0x3C, 0x3D, - 0xE3, 0xC3, 0xDE, 0x3C, 0x3C, 0xF3, 0xC3, 0xC7, 0xBC, 0x3C, 0x7B, 0xC3, - 0xC3, 0xFC, 0x3C, 0x3F, 0xC3, 0xC1, 0xFC, 0x3C, 0x1F, 0xCF, 0xF8, 0xFC, - 0xFF, 0x87, 0xCF, 0xF8, 0x7C, 0x7F, 0x03, 0xC0, 0x01, 0xF8, 0x00, 0x7F, - 0xE0, 0x0F, 0xFF, 0x81, 0xFF, 0xFC, 0x3F, 0x0F, 0xC7, 0xC0, 0x3E, 0x78, - 0x01, 0xEF, 0x80, 0x1F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, - 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x1F, 0x78, 0x01, 0xE7, 0xC0, 0x3E, - 0x3F, 0x0F, 0xC1, 0xFF, 0xF8, 0x1F, 0xFF, 0x00, 0x7F, 0xE0, 0x01, 0xF8, - 0x00, 0x7F, 0xF8, 0x3F, 0xFF, 0x8F, 0xFF, 0xF3, 0xFF, 0xFE, 0x3C, 0x0F, - 0xCF, 0x00, 0xF3, 0xC0, 0x3C, 0xF0, 0x0F, 0x3C, 0x03, 0xCF, 0x03, 0xF3, - 0xFF, 0xF8, 0xFF, 0xFC, 0x3F, 0xFE, 0x0F, 0xFE, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x3C, 0x00, 0x3F, 0xF8, 0x0F, 0xFE, 0x03, 0xFF, 0x80, 0x7F, 0xC0, - 0x00, 0x01, 0xF8, 0x00, 0x7F, 0xE0, 0x0F, 0xFF, 0x01, 0xFF, 0xF8, 0x3F, - 0x0F, 0xC7, 0xC0, 0x3E, 0x78, 0x01, 0xEF, 0x80, 0x1F, 0xF0, 0x00, 0xFF, - 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x1F, - 0x78, 0x01, 0xE7, 0xC0, 0x3E, 0x3F, 0x0F, 0xC1, 0xFF, 0xF8, 0x0F, 0xFF, - 0x00, 0x7F, 0xE0, 0x03, 0xF8, 0x00, 0x3F, 0x8E, 0x07, 0xFF, 0xF0, 0xFF, - 0xFF, 0x0F, 0xFF, 0xE0, 0x60, 0x78, 0x7F, 0xF8, 0x07, 0xFF, 0xF0, 0x3F, - 0xFF, 0xE0, 0xFF, 0xFF, 0x01, 0xE0, 0x7C, 0x0F, 0x01, 0xE0, 0x78, 0x0F, - 0x03, 0xC0, 0x78, 0x1E, 0x0F, 0xC0, 0xFF, 0xFC, 0x07, 0xFF, 0xC0, 0x3F, - 0xF8, 0x01, 0xFF, 0xE0, 0x0F, 0x0F, 0x80, 0x78, 0x3C, 0x03, 0xC0, 0xF0, - 0x1E, 0x07, 0xC3, 0xFE, 0x1F, 0xBF, 0xF0, 0x7F, 0xFF, 0x83, 0xF7, 0xF8, - 0x0F, 0x00, 0x07, 0xE7, 0x07, 0xFF, 0x8F, 0xFF, 0xC7, 0xFF, 0xE7, 0xC1, - 0xF3, 0xC0, 0x79, 0xE0, 0x3C, 0xF8, 0x00, 0x7F, 0x80, 0x1F, 0xFC, 0x07, - 0xFF, 0x81, 0xFF, 0xE0, 0x0F, 0xFB, 0x00, 0x7F, 0xC0, 0x1F, 0xE0, 0x0F, - 0xFC, 0x1F, 0xFF, 0xFF, 0xBF, 0xFF, 0x8D, 0xFF, 0x80, 0x3F, 0x00, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x1F, 0xE1, - 0xE3, 0xFC, 0x3C, 0x7F, 0x87, 0x8F, 0x60, 0xF0, 0xC0, 0x1E, 0x00, 0x03, - 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, - 0x80, 0x00, 0xF0, 0x01, 0xFF, 0xE0, 0x3F, 0xFC, 0x07, 0xFF, 0x80, 0x7F, - 0xE0, 0xFF, 0x0F, 0xF7, 0xFC, 0x7F, 0xFF, 0xE3, 0xFE, 0xFF, 0x1F, 0xF3, - 0xC0, 0x1E, 0x1E, 0x00, 0xF0, 0xF0, 0x07, 0x87, 0x80, 0x3C, 0x3C, 0x01, - 0xE1, 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x78, 0x03, 0xC3, 0xC0, 0x1E, 0x1E, - 0x00, 0xF0, 0xF0, 0x07, 0x87, 0xC0, 0x7C, 0x1F, 0x07, 0xC0, 0xFF, 0xFE, - 0x03, 0xFF, 0xE0, 0x0F, 0xFE, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x03, 0xFD, - 0xFF, 0x07, 0xFF, 0xFE, 0x0F, 0xFB, 0xF8, 0x1F, 0xE1, 0xC0, 0x07, 0x03, - 0xC0, 0x1E, 0x07, 0x80, 0x3C, 0x07, 0x80, 0xF0, 0x0F, 0x01, 0xE0, 0x0F, - 0x03, 0x80, 0x1E, 0x0F, 0x00, 0x3E, 0x1E, 0x00, 0x3C, 0x78, 0x00, 0x78, - 0xF0, 0x00, 0x7B, 0xC0, 0x00, 0xF7, 0x80, 0x01, 0xFF, 0x00, 0x01, 0xFC, - 0x00, 0x03, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0xFF, 0x0F, - 0xF7, 0xFC, 0x7F, 0xFF, 0xE3, 0xFF, 0xFE, 0x0F, 0xF7, 0x80, 0x0F, 0x3C, - 0x38, 0x78, 0xE3, 0xE3, 0x87, 0x1F, 0x1C, 0x38, 0xF8, 0xE1, 0xEF, 0xE7, - 0x0F, 0x7F, 0x78, 0x7B, 0xBB, 0xC3, 0xFD, 0xFE, 0x0F, 0xEF, 0xF0, 0x7E, - 0x3F, 0x03, 0xF1, 0xF8, 0x1F, 0x8F, 0xC0, 0xFC, 0x3E, 0x07, 0xC1, 0xF0, - 0x3E, 0x0F, 0x81, 0xF0, 0x7C, 0x00, 0x7E, 0x0F, 0xDF, 0xE3, 0xFF, 0xFC, - 0x7F, 0xBF, 0x07, 0xE1, 0xE0, 0xF8, 0x3E, 0x3E, 0x03, 0xEF, 0x80, 0x3D, - 0xE0, 0x03, 0xF8, 0x00, 0x3E, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, 0x3F, - 0x80, 0x0F, 0x78, 0x03, 0xC7, 0x80, 0xF8, 0x78, 0x3E, 0x0F, 0x8F, 0xE3, - 0xFF, 0xFC, 0x7F, 0xFF, 0x8F, 0xF7, 0xE0, 0xFC, 0x7E, 0x07, 0xEF, 0xF0, - 0xFF, 0xFF, 0x0F, 0xF7, 0xE0, 0x7E, 0x1E, 0x07, 0x81, 0xF0, 0xF8, 0x0F, - 0x0F, 0x00, 0x79, 0xE0, 0x07, 0xFE, 0x00, 0x3F, 0xC0, 0x01, 0xF8, 0x00, - 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, - 0x00, 0xF0, 0x00, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0xFF, 0xF0, 0x07, 0xFE, - 0x00, 0xFF, 0xFC, 0xFF, 0xFC, 0xFF, 0xFC, 0xFF, 0xFC, 0xF0, 0x3C, 0xF0, - 0x78, 0xF0, 0xF0, 0x70, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, 0x80, 0x07, - 0x00, 0x0F, 0x00, 0x1E, 0x0E, 0x1C, 0x0F, 0x38, 0x0F, 0x78, 0x0F, 0x7F, - 0xFF, 0x7F, 0xFF, 0x7F, 0xFF, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFE, 0xFF, 0xFF, 0xFE, 0xE0, 0x01, - 0xE0, 0x03, 0xC0, 0x03, 0xC0, 0x07, 0x80, 0x07, 0x00, 0x0F, 0x00, 0x0E, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x78, 0x00, 0xF0, - 0x00, 0xF0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, 0xC0, 0x07, 0x80, - 0x07, 0x80, 0x0F, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x3C, 0x00, - 0x38, 0x00, 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x7F, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x07, 0x00, 0x1F, 0x00, - 0x7F, 0x00, 0xFE, 0x03, 0xDE, 0x0F, 0x1E, 0x3E, 0x3E, 0xF8, 0x3F, 0xE0, - 0x3F, 0x80, 0x38, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xC3, 0x87, 0x0E, 0x1C, 0x30, 0x01, 0xFC, 0x01, 0xFF, 0xC0, - 0x3F, 0xFC, 0x07, 0xFF, 0xC0, 0x00, 0x78, 0x0F, 0xFF, 0x07, 0xFF, 0xE1, - 0xFF, 0xFC, 0x7F, 0xFF, 0x9F, 0x80, 0xF3, 0xC0, 0x1E, 0x78, 0x0F, 0xCF, - 0xFF, 0xFE, 0xFF, 0xFF, 0xCF, 0xFF, 0xF8, 0x7F, 0x3E, 0x7C, 0x00, 0x1F, - 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0F, - 0x3F, 0x01, 0xFF, 0xF8, 0x3F, 0xFF, 0x87, 0xFF, 0xF0, 0xFC, 0x1F, 0x1F, - 0x01, 0xF3, 0xC0, 0x1E, 0x78, 0x03, 0xCF, 0x00, 0x79, 0xE0, 0x0F, 0x3E, - 0x03, 0xE7, 0xE0, 0xFB, 0xFF, 0xFF, 0x7F, 0xFF, 0xCF, 0xFF, 0xF0, 0xF9, - 0xF8, 0x00, 0x03, 0xF3, 0x87, 0xFF, 0xCF, 0xFF, 0xEF, 0xFF, 0xF7, 0xE0, - 0xFF, 0xC0, 0x3F, 0xC0, 0x0F, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3E, - 0x00, 0x4F, 0x80, 0xF7, 0xFF, 0xF9, 0xFF, 0xF8, 0x7F, 0xF8, 0x0F, 0xF0, - 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x03, 0xF3, 0xC0, 0xFF, 0xBC, 0x1F, 0xFF, 0xC3, 0xFF, - 0xFC, 0x7E, 0x0F, 0xC7, 0x80, 0x7C, 0xF0, 0x03, 0xCF, 0x00, 0x3C, 0xF0, - 0x03, 0xCF, 0x00, 0x3C, 0xF8, 0x07, 0xC7, 0xE0, 0xFC, 0x7F, 0xFF, 0xF3, - 0xFF, 0xFF, 0x0F, 0xFF, 0xF0, 0x3F, 0x3E, 0x03, 0xF0, 0x03, 0xFF, 0x01, - 0xFF, 0xE0, 0xFF, 0xFC, 0x7E, 0x0F, 0x9E, 0x01, 0xEF, 0x00, 0x3F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0xE0, 0x00, 0x7F, 0xFF, - 0xCF, 0xFF, 0xF1, 0xFF, 0xF8, 0x0F, 0xF0, 0x03, 0xFC, 0x07, 0xFF, 0x0F, - 0xFF, 0x1F, 0xFF, 0x1E, 0x00, 0x1E, 0x00, 0xFF, 0xF8, 0xFF, 0xFC, 0xFF, - 0xFC, 0xFF, 0xF8, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0xFF, 0xF8, 0xFF, 0xF8, 0xFF, - 0xF8, 0xFF, 0xF8, 0x07, 0xE7, 0xC3, 0xFF, 0xFC, 0xFF, 0xFF, 0xBF, 0xFF, - 0xF7, 0xC1, 0xF9, 0xF0, 0x1F, 0x3C, 0x01, 0xE7, 0x80, 0x3C, 0xF0, 0x07, - 0x9E, 0x00, 0xF3, 0xE0, 0x3E, 0x3E, 0x0F, 0xC7, 0xFF, 0xF8, 0x7F, 0xFF, - 0x07, 0xFD, 0xE0, 0x3F, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3E, - 0x03, 0xFF, 0x80, 0x7F, 0xF0, 0x0F, 0xFC, 0x00, 0xFE, 0x00, 0x3E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x00, 0x00, 0x78, 0xF8, 0x03, 0xDF, 0xE0, 0x1F, 0xFF, 0x80, 0xFF, 0xFE, - 0x07, 0xE1, 0xF0, 0x3E, 0x07, 0x81, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x78, - 0x0F, 0x03, 0xC0, 0x78, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x1F, 0xC1, 0xFD, - 0xFE, 0x0F, 0xFF, 0xF0, 0x7F, 0xBF, 0x01, 0xF8, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xC0, 0x3F, 0xC0, - 0x3F, 0xC0, 0x3F, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFE, 0xFF, 0xFF, - 0xFF, 0xFF, 0x7F, 0xFE, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, 0x00, 0xF0, 0x0F, 0x00, 0xF0, - 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, - 0x0F, 0x00, 0xF0, 0x0F, 0x01, 0xFF, 0xFE, 0xFF, 0xEF, 0xFC, 0x7F, 0x00, - 0x7C, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0x3C, 0x00, 0x0F, - 0x00, 0x03, 0xC7, 0xF0, 0xF3, 0xFC, 0x3C, 0xFF, 0x0F, 0x3F, 0x83, 0xDF, - 0x00, 0xFF, 0x80, 0x3F, 0xC0, 0x0F, 0xE0, 0x03, 0xFC, 0x00, 0xF7, 0x80, - 0x3C, 0xF0, 0x0F, 0x1F, 0x0F, 0xC3, 0xFB, 0xF1, 0xFF, 0xFC, 0x7F, 0xDF, - 0x0F, 0xE0, 0x3F, 0xC0, 0x3F, 0xC0, 0x3F, 0xC0, 0x3F, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFE, 0x3D, 0xE3, - 0xC1, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x1F, 0xFF, 0xFE, 0x3E, 0x3C, 0x78, - 0xF0, 0xF1, 0xE3, 0xC3, 0xC7, 0x8F, 0x0F, 0x1E, 0x3C, 0x3C, 0x78, 0xF0, - 0xF1, 0xE3, 0xC3, 0xC7, 0x8F, 0x0F, 0x1E, 0xFE, 0x3E, 0x7F, 0xF8, 0xF9, - 0xFF, 0xE3, 0xE7, 0xDF, 0x0F, 0x1E, 0x1E, 0x7C, 0x03, 0xEF, 0xF0, 0x3F, - 0xFF, 0x83, 0xFF, 0xFC, 0x1F, 0x87, 0xC1, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, - 0xE0, 0x3C, 0x1E, 0x03, 0xC1, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, 0xE0, 0x3C, - 0x7F, 0x0F, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xF7, 0xE0, 0x7E, 0x03, 0xF8, - 0x01, 0xFF, 0xC0, 0x7F, 0xFC, 0x1F, 0xFF, 0xC7, 0xE0, 0xFD, 0xF0, 0x07, - 0xFC, 0x00, 0x7F, 0x80, 0x0F, 0xF0, 0x01, 0xFE, 0x00, 0x3F, 0xE0, 0x0F, - 0xBF, 0x07, 0xE3, 0xFF, 0xF8, 0x3F, 0xFE, 0x03, 0xFF, 0x80, 0x1F, 0xC0, - 0x3E, 0x7E, 0x03, 0xF7, 0xFC, 0x1F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC1, 0xF8, - 0x3F, 0x0F, 0x80, 0x7C, 0x78, 0x01, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x78, - 0xF0, 0x03, 0xC7, 0xC0, 0x3E, 0x3F, 0x07, 0xE1, 0xFF, 0xFE, 0x0F, 0xFF, - 0xE0, 0x7B, 0xFE, 0x03, 0xCF, 0xC0, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, - 0x80, 0x00, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x01, 0xFE, 0x00, - 0x00, 0x03, 0xF3, 0xE0, 0x7F, 0xDF, 0x87, 0xFF, 0xFC, 0x7F, 0xFF, 0xE7, - 0xE0, 0xFC, 0x7C, 0x03, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x78, 0xF0, 0x03, - 0xC7, 0x80, 0x1E, 0x3E, 0x01, 0xF0, 0xFC, 0x1F, 0x83, 0xFF, 0xFC, 0x1F, - 0xFF, 0xE0, 0x3F, 0xEF, 0x00, 0x7E, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, - 0x00, 0x00, 0xF0, 0x00, 0x3F, 0xE0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, - 0x3F, 0xC0, 0x7E, 0x1E, 0x7F, 0x3F, 0xFF, 0xBF, 0xFF, 0xFF, 0xF1, 0xFE, - 0x00, 0xFC, 0x00, 0x7C, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, - 0x80, 0x03, 0xC0, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0xFF, 0xE1, 0xFF, 0xE0, - 0x07, 0xE6, 0x1F, 0xFE, 0x7F, 0xFE, 0x7F, 0xFE, 0x78, 0x1E, 0x78, 0x0E, - 0x7F, 0xE0, 0x3F, 0xFC, 0x03, 0xFE, 0x60, 0x1F, 0xE0, 0x0F, 0xF8, 0x1F, - 0xFF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFC, 0x07, 0xE0, 0x0C, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x07, 0xFF, 0xF3, 0xFF, 0xF9, 0xFF, - 0xFC, 0xFF, 0xFC, 0x0F, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x07, 0x8F, 0xFF, 0xC3, 0xFF, - 0xC1, 0xFF, 0xC0, 0x3F, 0x80, 0xFC, 0x1F, 0xBF, 0x0F, 0xEF, 0xC3, 0xFB, - 0xF0, 0xFE, 0x3C, 0x07, 0x8F, 0x01, 0xE3, 0xC0, 0x78, 0xF0, 0x1E, 0x3C, - 0x07, 0x8F, 0x01, 0xE3, 0xC0, 0x78, 0xF8, 0x7E, 0x3F, 0xFF, 0xC7, 0xFF, - 0xF0, 0xFF, 0x7C, 0x0F, 0x9E, 0x7F, 0x07, 0xF7, 0xFC, 0x7F, 0xFF, 0xE3, - 0xFE, 0xFE, 0x0F, 0xE1, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x1E, 0x01, - 0xE0, 0xF0, 0x07, 0x8F, 0x00, 0x3E, 0x78, 0x00, 0xF7, 0x80, 0x07, 0xFC, - 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x7E, - 0x03, 0xF7, 0xF8, 0x3F, 0xFF, 0xC1, 0xFE, 0xFC, 0x07, 0xF3, 0xC7, 0x0F, - 0x1E, 0x7C, 0xF0, 0x73, 0xE7, 0x83, 0x9F, 0x7C, 0x1F, 0xFF, 0xC0, 0xFF, - 0xFE, 0x03, 0xF7, 0xF0, 0x1F, 0xBF, 0x80, 0xFC, 0xF8, 0x07, 0xC7, 0xC0, - 0x1E, 0x3E, 0x00, 0xE0, 0xE0, 0x7E, 0x0F, 0xDF, 0xE3, 0xFF, 0xFC, 0x7F, - 0xBF, 0x07, 0xE1, 0xF1, 0xF0, 0x1F, 0xFC, 0x01, 0xFF, 0x00, 0x1F, 0xC0, - 0x07, 0xF8, 0x01, 0xFF, 0xC0, 0x7E, 0xFC, 0x1F, 0x8F, 0xC7, 0xE0, 0xFD, - 0xFE, 0x3F, 0xFF, 0xC7, 0xFF, 0xF0, 0x7F, 0x7E, 0x0F, 0xDF, 0xE3, 0xFF, - 0xFC, 0x7F, 0xBF, 0x07, 0xE3, 0xC0, 0x78, 0x3C, 0x0E, 0x07, 0x83, 0xC0, - 0x78, 0x70, 0x0F, 0x1E, 0x00, 0xE3, 0x80, 0x1E, 0xF0, 0x01, 0xDC, 0x00, - 0x3F, 0x80, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0x00, 0x01, 0xE0, 0x00, - 0x38, 0x00, 0x0F, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x01, 0xFF, 0xE0, 0x1F, - 0xF8, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF9, 0xC7, - 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x78, 0x03, 0xC0, 0x1E, 0x07, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x81, 0xF0, 0xFC, 0x7E, 0x1F, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0xF8, 0xFC, 0x3E, 0x0F, - 0x83, 0xF0, 0x3E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xF0, 0x7E, - 0x0F, 0xC3, 0xF0, 0x38, 0x6F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x70, 0x3E, 0x0F, 0xC1, 0xF8, 0x3E, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x7C, 0x0F, 0xC1, 0xF0, - 0x7C, 0x3F, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x83, 0xE1, 0xF8, - 0xFC, 0x3F, 0x07, 0x00, 0x1E, 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0xDF, 0xFC, - 0xFF, 0x3F, 0xFB, 0x0F, 0xF8, 0x03, 0xF8, 0x00, 0x78}; - -const GFXglyph FreeMonoBold18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 5, 22, 21, 8, -21}, // 0x21 '!' - {14, 11, 10, 21, 5, -20}, // 0x22 '"' - {28, 16, 25, 21, 3, -22}, // 0x23 '#' - {78, 14, 28, 21, 4, -23}, // 0x24 '$' - {127, 15, 21, 21, 3, -20}, // 0x25 '%' - {167, 15, 20, 21, 3, -19}, // 0x26 '&' - {205, 4, 10, 21, 8, -20}, // 0x27 ''' - {210, 8, 27, 21, 9, -21}, // 0x28 '(' - {237, 8, 27, 21, 4, -21}, // 0x29 ')' - {264, 16, 15, 21, 3, -21}, // 0x2A '*' - {294, 16, 19, 21, 3, -18}, // 0x2B '+' - {332, 7, 10, 21, 5, -3}, // 0x2C ',' - {341, 19, 4, 21, 1, -11}, // 0x2D '-' - {351, 5, 5, 21, 8, -4}, // 0x2E '.' - {355, 15, 28, 21, 3, -23}, // 0x2F '/' - {408, 16, 23, 21, 3, -22}, // 0x30 '0' - {454, 15, 22, 21, 3, -21}, // 0x31 '1' - {496, 15, 23, 21, 3, -22}, // 0x32 '2' - {540, 16, 23, 21, 3, -22}, // 0x33 '3' - {586, 15, 21, 21, 3, -20}, // 0x34 '4' - {626, 17, 22, 21, 2, -21}, // 0x35 '5' - {673, 15, 23, 21, 4, -22}, // 0x36 '6' - {717, 15, 22, 21, 3, -21}, // 0x37 '7' - {759, 15, 23, 21, 3, -22}, // 0x38 '8' - {803, 15, 23, 21, 4, -22}, // 0x39 '9' - {847, 5, 16, 21, 8, -15}, // 0x3A ':' - {857, 7, 22, 21, 5, -15}, // 0x3B ';' - {877, 18, 16, 21, 1, -17}, // 0x3C '<' - {913, 19, 10, 21, 1, -14}, // 0x3D '=' - {937, 18, 16, 21, 2, -17}, // 0x3E '>' - {973, 15, 21, 21, 4, -20}, // 0x3F '?' - {1013, 15, 27, 21, 3, -21}, // 0x40 '@' - {1064, 22, 21, 21, -1, -20}, // 0x41 'A' - {1122, 20, 21, 21, 1, -20}, // 0x42 'B' - {1175, 19, 21, 21, 1, -20}, // 0x43 'C' - {1225, 18, 21, 21, 2, -20}, // 0x44 'D' - {1273, 19, 21, 21, 1, -20}, // 0x45 'E' - {1323, 19, 21, 21, 1, -20}, // 0x46 'F' - {1373, 20, 21, 21, 1, -20}, // 0x47 'G' - {1426, 21, 21, 21, 0, -20}, // 0x48 'H' - {1482, 14, 21, 21, 4, -20}, // 0x49 'I' - {1519, 19, 21, 21, 2, -20}, // 0x4A 'J' - {1569, 20, 21, 21, 1, -20}, // 0x4B 'K' - {1622, 18, 21, 21, 2, -20}, // 0x4C 'L' - {1670, 23, 21, 21, -1, -20}, // 0x4D 'M' - {1731, 20, 21, 21, 1, -20}, // 0x4E 'N' - {1784, 20, 21, 21, 1, -20}, // 0x4F 'O' - {1837, 18, 21, 21, 1, -20}, // 0x50 'P' - {1885, 20, 26, 21, 1, -20}, // 0x51 'Q' - {1950, 21, 21, 21, 0, -20}, // 0x52 'R' - {2006, 17, 21, 21, 2, -20}, // 0x53 'S' - {2051, 19, 21, 21, 1, -20}, // 0x54 'T' - {2101, 21, 21, 21, 0, -20}, // 0x55 'U' - {2157, 23, 21, 21, -1, -20}, // 0x56 'V' - {2218, 21, 21, 21, 0, -20}, // 0x57 'W' - {2274, 19, 21, 21, 1, -20}, // 0x58 'X' - {2324, 20, 21, 21, 1, -20}, // 0x59 'Y' - {2377, 16, 21, 21, 3, -20}, // 0x5A 'Z' - {2419, 8, 27, 21, 9, -21}, // 0x5B '[' - {2446, 15, 28, 21, 3, -23}, // 0x5C '\' - {2499, 8, 27, 21, 4, -21}, // 0x5D ']' - {2526, 15, 11, 21, 3, -21}, // 0x5E '^' - {2547, 21, 4, 21, 0, 4}, // 0x5F '_' - {2558, 6, 6, 21, 6, -22}, // 0x60 '`' - {2563, 19, 16, 21, 1, -15}, // 0x61 'a' - {2601, 19, 22, 21, 1, -21}, // 0x62 'b' - {2654, 17, 16, 21, 2, -15}, // 0x63 'c' - {2688, 20, 22, 21, 1, -21}, // 0x64 'd' - {2743, 18, 16, 21, 1, -15}, // 0x65 'e' - {2779, 16, 22, 21, 4, -21}, // 0x66 'f' - {2823, 19, 23, 21, 1, -15}, // 0x67 'g' - {2878, 21, 22, 21, 0, -21}, // 0x68 'h' - {2936, 16, 22, 21, 3, -21}, // 0x69 'i' - {2980, 12, 29, 21, 5, -21}, // 0x6A 'j' - {3024, 18, 22, 21, 2, -21}, // 0x6B 'k' - {3074, 16, 22, 21, 3, -21}, // 0x6C 'l' - {3118, 22, 16, 21, -1, -15}, // 0x6D 'm' - {3162, 20, 16, 21, 0, -15}, // 0x6E 'n' - {3202, 19, 16, 21, 1, -15}, // 0x6F 'o' - {3240, 21, 23, 21, 0, -15}, // 0x70 'p' - {3301, 21, 23, 22, 1, -15}, // 0x71 'q' - {3362, 17, 16, 21, 3, -15}, // 0x72 'r' - {3396, 16, 16, 21, 3, -15}, // 0x73 's' - {3428, 17, 21, 21, 1, -20}, // 0x74 't' - {3473, 18, 16, 21, 1, -15}, // 0x75 'u' - {3509, 21, 16, 21, 0, -15}, // 0x76 'v' - {3551, 21, 16, 21, 0, -15}, // 0x77 'w' - {3593, 19, 16, 21, 1, -15}, // 0x78 'x' - {3631, 19, 23, 21, 1, -15}, // 0x79 'y' - {3686, 14, 16, 21, 3, -15}, // 0x7A 'z' - {3714, 10, 27, 21, 6, -21}, // 0x7B '{' - {3748, 4, 27, 21, 9, -21}, // 0x7C '|' - {3762, 10, 27, 21, 6, -21}, // 0x7D '}' - {3796, 17, 8, 21, 2, -13}}; // 0x7E '~' - -const GFXfont FreeMonoBold18pt7b PROGMEM = { - (uint8_t *)FreeMonoBold18pt7bBitmaps, (GFXglyph *)FreeMonoBold18pt7bGlyphs, - 0x20, 0x7E, 35}; - -// Approx. 4485 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h deleted file mode 100644 index eb79d6e..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h +++ /dev/null @@ -1,674 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold24pt7bBitmaps[] PROGMEM = { - 0x38, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0xF3, 0xE7, 0xCF, - 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE3, 0x82, 0x00, 0x00, 0x00, 0x71, 0xF7, - 0xFF, 0xEF, 0x9E, 0x00, 0xFC, 0x7E, 0xF8, 0x7D, 0xF0, 0xFB, 0xE1, 0xF7, - 0xC3, 0xEF, 0x87, 0xDF, 0x0F, 0xBE, 0x1F, 0x38, 0x1C, 0x70, 0x38, 0xE0, - 0x71, 0xC0, 0xE3, 0x81, 0xC7, 0x03, 0x80, 0x01, 0xC1, 0xC0, 0x0F, 0x8F, - 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xE0, 0x0F, 0x8F, 0x80, - 0x7E, 0x3E, 0x01, 0xF0, 0xF8, 0x07, 0xC7, 0xC0, 0x1F, 0x1F, 0x03, 0xFF, - 0xFF, 0x9F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFD, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, - 0x81, 0xF1, 0xF0, 0x07, 0xC7, 0xC0, 0x1F, 0x1F, 0x00, 0x7C, 0x7C, 0x1F, - 0xFF, 0xFC, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0x9F, 0xFF, - 0xFC, 0x0F, 0x8F, 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xE0, - 0x0F, 0x8F, 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xE0, 0x0F, - 0x8F, 0x80, 0x3C, 0x3C, 0x00, 0x00, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x1F, 0xFF, 0x07, 0xFF, 0xF1, 0xFF, 0xFE, - 0x7F, 0xFF, 0xDF, 0xC1, 0xFB, 0xF0, 0x1F, 0x7C, 0x01, 0xEF, 0x80, 0x39, - 0xF8, 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x03, 0xFF, 0xF0, - 0x0F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xC0, 0x07, 0xF8, 0x00, 0xFF, - 0x80, 0x1F, 0xF8, 0x07, 0xFF, 0x81, 0xFB, 0xFF, 0xFF, 0x7F, 0xFF, 0xCF, - 0xFF, 0xF1, 0xDF, 0xFC, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, - 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x01, 0xC0, 0x00, - 0x0F, 0x80, 0x00, 0xFF, 0x00, 0x1F, 0xFC, 0x00, 0xF0, 0xE0, 0x0F, 0x07, - 0x80, 0x70, 0x1C, 0x03, 0x80, 0xE0, 0x1C, 0x07, 0x00, 0xF0, 0x78, 0x03, - 0xC3, 0x80, 0x1F, 0xFC, 0x00, 0x7F, 0xC1, 0xF0, 0xF8, 0x7F, 0x00, 0x3F, - 0xF0, 0x0F, 0xFC, 0x03, 0xFF, 0x00, 0xFF, 0xC0, 0x07, 0xE0, 0xF8, 0x38, - 0x1F, 0xE0, 0x01, 0xFF, 0x80, 0x0F, 0x1E, 0x00, 0xF0, 0x78, 0x07, 0x01, - 0xC0, 0x38, 0x0E, 0x01, 0xC0, 0x70, 0x0F, 0x07, 0x80, 0x38, 0x78, 0x01, - 0xFF, 0xC0, 0x07, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0xFC, - 0x01, 0xFF, 0xE0, 0x1F, 0xFF, 0x00, 0xFF, 0xF8, 0x0F, 0xC7, 0x00, 0x7C, - 0x10, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0xFE, 0x00, 0x0F, 0xF8, 0x00, 0xFF, 0xC7, 0xCF, 0xFF, - 0x3F, 0x7E, 0xFF, 0xFF, 0xE7, 0xFF, 0xBE, 0x1F, 0xF9, 0xF0, 0x7F, 0x8F, - 0x83, 0xFC, 0x7C, 0x0F, 0xE3, 0xF0, 0x7F, 0xCF, 0xFF, 0xFF, 0x7F, 0xFF, - 0xF9, 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x0F, 0xE0, 0x00, 0xFD, 0xF7, 0xDF, - 0x7D, 0xF7, 0xDF, 0x38, 0xE3, 0x8E, 0x38, 0xE0, 0x01, 0x80, 0xF0, 0x7C, - 0x3F, 0x0F, 0xC7, 0xE1, 0xF8, 0xFC, 0x3E, 0x0F, 0x87, 0xC1, 0xF0, 0x7C, - 0x1F, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, - 0x81, 0xF0, 0x7C, 0x1F, 0x07, 0xC0, 0xF8, 0x3E, 0x0F, 0xC1, 0xF0, 0x7E, - 0x0F, 0x83, 0xF0, 0x7C, 0x1F, 0x03, 0xC0, 0x60, 0x3C, 0x0F, 0x83, 0xF0, - 0xFC, 0x1F, 0x83, 0xE0, 0xFC, 0x1F, 0x07, 0xC1, 0xF8, 0x3E, 0x0F, 0x83, - 0xE0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, - 0x1E, 0x0F, 0x83, 0xE0, 0xF8, 0x7C, 0x1F, 0x0F, 0xC3, 0xE1, 0xF8, 0x7C, - 0x3F, 0x0F, 0x83, 0xE0, 0xF0, 0x00, 0x00, 0x70, 0x00, 0x07, 0xC0, 0x00, - 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x10, 0x7C, 0x11, 0xF3, 0xE7, - 0xDF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0x87, 0xFF, 0xF0, 0x07, - 0xFC, 0x00, 0x3F, 0xE0, 0x03, 0xFF, 0x80, 0x3F, 0x7E, 0x01, 0xFB, 0xF0, - 0x1F, 0x8F, 0xC0, 0xF8, 0x3E, 0x03, 0x80, 0xE0, 0x00, 0x38, 0x00, 0x00, - 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, - 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, - 0x01, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xDF, 0xFF, 0xFF, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, - 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, - 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x70, 0x00, 0x1F, - 0x8F, 0x87, 0xC7, 0xC3, 0xE1, 0xE1, 0xF0, 0xF0, 0x78, 0x38, 0x3C, 0x1C, - 0x0E, 0x06, 0x00, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, 0x7D, 0xFF, 0xFF, 0xFF, 0xEF, 0x80, - 0x00, 0x00, 0x60, 0x00, 0x0F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, - 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0xC0, 0x00, 0xF8, 0x00, - 0x1F, 0x80, 0x01, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, - 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, - 0x00, 0xFC, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x83, 0xFF, 0xFE, - 0x1F, 0x83, 0xF1, 0xF8, 0x0F, 0xCF, 0x80, 0x3E, 0x7C, 0x01, 0xF7, 0xC0, - 0x07, 0xFE, 0x00, 0x3F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, - 0xE0, 0x03, 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0xFF, 0xC0, 0x07, 0xFE, 0x00, - 0x3F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7D, 0xF0, 0x07, 0xCF, - 0x80, 0x3E, 0x7E, 0x03, 0xF1, 0xF8, 0x3F, 0x0F, 0xFF, 0xF8, 0x3F, 0xFF, - 0x80, 0xFF, 0xF8, 0x03, 0xFF, 0x80, 0x07, 0xF0, 0x00, 0x01, 0xF8, 0x00, - 0x3F, 0x80, 0x0F, 0xF8, 0x01, 0xFF, 0x80, 0x7F, 0xF8, 0x0F, 0xEF, 0x80, - 0xFC, 0xF8, 0x07, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, - 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, - 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x3F, 0xFF, 0xE7, - 0xFF, 0xFF, 0x7F, 0xFF, 0xF7, 0xFF, 0xFF, 0x3F, 0xFF, 0xE0, 0x01, 0xFC, - 0x00, 0x3F, 0xF8, 0x07, 0xFF, 0xF0, 0x7F, 0xFF, 0xC7, 0xFF, 0xFF, 0x3F, - 0x03, 0xFB, 0xF0, 0x07, 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0xFB, 0x80, 0x07, - 0xC0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xF8, 0x00, - 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x00, - 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xE0, - 0x0E, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x03, 0xF8, 0x00, 0xFF, 0xF8, 0x0F, 0xFF, - 0xE0, 0xFF, 0xFF, 0x8F, 0xFF, 0xFE, 0x7E, 0x03, 0xF1, 0xC0, 0x0F, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x0F, - 0xC0, 0x0F, 0xFC, 0x00, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x3F, 0xF0, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F, - 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x01, 0xFF, 0xC0, - 0x3F, 0xBF, 0xFF, 0xFD, 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x1F, 0xFF, 0xC0, - 0x1F, 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x7F, 0x80, 0x07, - 0xF8, 0x00, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xEF, 0x80, 0x3E, 0xF8, 0x03, - 0xCF, 0x80, 0x7C, 0xF8, 0x0F, 0x8F, 0x80, 0xF0, 0xF8, 0x1F, 0x0F, 0x81, - 0xE0, 0xF8, 0x3E, 0x0F, 0x87, 0xC0, 0xF8, 0x78, 0x0F, 0x8F, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x0F, - 0x80, 0x07, 0xFE, 0x00, 0xFF, 0xF0, 0x0F, 0xFF, 0x00, 0xFF, 0xF0, 0x07, - 0xFE, 0x3F, 0xFF, 0xC1, 0xFF, 0xFF, 0x0F, 0xFF, 0xF8, 0x7F, 0xFF, 0xC3, - 0xFF, 0xFC, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, - 0x01, 0xF0, 0x00, 0x0F, 0xBF, 0x00, 0x7F, 0xFF, 0x03, 0xFF, 0xFC, 0x1F, - 0xFF, 0xF0, 0xFF, 0xFF, 0x83, 0xC0, 0xFE, 0x00, 0x01, 0xF0, 0x00, 0x0F, - 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, - 0x03, 0xE0, 0x00, 0x3F, 0xF0, 0x03, 0xF7, 0xE0, 0x3F, 0xBF, 0xFF, 0xF9, - 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x1F, 0xFF, 0x80, 0x1F, 0xF0, 0x00, 0x00, - 0x1F, 0xC0, 0x0F, 0xFF, 0x01, 0xFF, 0xF0, 0x7F, 0xFF, 0x0F, 0xFF, 0xE1, - 0xFF, 0x00, 0x1F, 0xC0, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, - 0x7C, 0x00, 0x0F, 0x8F, 0xC0, 0xF9, 0xFF, 0x0F, 0xFF, 0xF8, 0xFF, 0xFF, - 0xCF, 0xFF, 0xFC, 0xFF, 0x0F, 0xEF, 0xE0, 0x3E, 0xFC, 0x03, 0xFF, 0x80, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xF7, 0xC0, 0x3F, 0x7E, - 0x03, 0xF3, 0xF0, 0x7E, 0x3F, 0xFF, 0xE1, 0xFF, 0xFC, 0x0F, 0xFF, 0x80, - 0x7F, 0xF0, 0x01, 0xFC, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x1F, 0xF0, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, - 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, - 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x06, 0x00, 0x01, 0xF8, 0x00, 0xFF, - 0xF0, 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x7F, 0xFF, 0xE7, 0xE0, 0x7E, 0xFC, - 0x03, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xF7, - 0xC0, 0x3E, 0x7E, 0x07, 0xE3, 0xFF, 0xFC, 0x0F, 0xFF, 0x00, 0xFF, 0xF0, - 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x7F, 0x0F, 0xE7, 0xC0, 0x3E, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xFC, 0x03, 0xF7, 0xE0, - 0x7E, 0x7F, 0xFF, 0xE3, 0xFF, 0xFC, 0x1F, 0xFF, 0x80, 0xFF, 0xF0, 0x03, - 0xFC, 0x00, 0x03, 0xF8, 0x00, 0xFF, 0xE0, 0x1F, 0xFF, 0x83, 0xFF, 0xF8, - 0x7F, 0xFF, 0xC7, 0xE0, 0xFE, 0xFC, 0x03, 0xEF, 0x80, 0x3E, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x3F, 0xFC, 0x07, 0xF7, 0xE0, - 0xFF, 0x7F, 0xFF, 0xF3, 0xFF, 0xFF, 0x1F, 0xFF, 0xF0, 0xFF, 0x9F, 0x03, - 0xF1, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, - 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x0F, 0xF0, 0x7F, 0xFE, 0x0F, 0xFF, 0xC0, - 0xFF, 0xF8, 0x0F, 0xFF, 0x00, 0x3F, 0x80, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, - 0xEF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7D, 0xFF, - 0xFF, 0xFF, 0xEF, 0x80, 0x0F, 0x87, 0xF1, 0xFC, 0x7F, 0x1F, 0xC3, 0xE0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, - 0x1F, 0x87, 0xE1, 0xF0, 0xFC, 0x3E, 0x0F, 0x03, 0xC1, 0xE0, 0x78, 0x1C, - 0x07, 0x01, 0x80, 0x00, 0x00, 0x04, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x7F, - 0x00, 0x01, 0xFE, 0x00, 0x07, 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xC0, - 0x01, 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, 0x7F, 0xE0, 0x00, - 0xFF, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xFE, 0x00, 0x01, 0xFF, 0x80, - 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xFC, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1E, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x07, - 0xFC, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x7F, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, 0x3F, 0xF0, 0x01, - 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x7F, 0xC0, 0x03, 0xFE, 0x00, 0x1F, 0xF0, - 0x00, 0xFF, 0x80, 0x03, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x03, 0xF8, 0x01, 0xFF, 0xF0, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFC, 0xFF, 0xFF, 0xEF, 0xC0, 0x7E, 0xF8, 0x03, 0xFF, 0x80, 0x1F, - 0x70, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x3F, - 0xE0, 0x0F, 0xFC, 0x01, 0xFF, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x0F, - 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0x00, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, - 0x3F, 0x80, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0xFF, 0x80, 0x3F, 0xF8, - 0x0F, 0xFF, 0x83, 0xE0, 0xF8, 0x78, 0x07, 0x1E, 0x00, 0xF3, 0x80, 0x0E, - 0x70, 0x01, 0xDE, 0x00, 0x3B, 0x80, 0x3F, 0x70, 0x1F, 0xEE, 0x07, 0xFD, - 0xC1, 0xFF, 0xB8, 0x7E, 0x77, 0x0F, 0x0E, 0xE3, 0xC1, 0xDC, 0x70, 0x3B, - 0x8E, 0x07, 0x71, 0xC0, 0xEE, 0x3C, 0x1D, 0xC3, 0xC3, 0xB8, 0x7F, 0xF7, - 0x07, 0xFF, 0xE0, 0x7F, 0xFC, 0x03, 0xFB, 0xC0, 0x00, 0x38, 0x00, 0x07, - 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x61, 0xF0, 0x3E, 0x1F, 0xFF, 0xC3, - 0xFF, 0xF0, 0x1F, 0xFC, 0x01, 0xFC, 0x00, 0x07, 0xFF, 0x80, 0x00, 0x7F, - 0xFE, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x7F, 0xFE, - 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x0F, 0xBE, 0x00, - 0x00, 0x7D, 0xF8, 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x3E, 0x3E, 0x00, 0x03, - 0xE0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0xF0, 0x3F, 0x00, 0x0F, 0x80, - 0xF8, 0x00, 0x7F, 0xFF, 0xC0, 0x07, 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0xF8, - 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0x00, 0xF8, 0x00, 0xF8, 0x0F, - 0x80, 0x03, 0xE1, 0xFF, 0x80, 0xFF, 0xDF, 0xFE, 0x0F, 0xFF, 0xFF, 0xF0, - 0x7F, 0xFF, 0xFF, 0x83, 0xFF, 0xDF, 0xF8, 0x0F, 0xFC, 0x7F, 0xFF, 0xC0, - 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, - 0xFE, 0x07, 0xC0, 0x1F, 0xC1, 0xF0, 0x01, 0xF0, 0x7C, 0x00, 0x7C, 0x1F, - 0x00, 0x1F, 0x07, 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xE0, 0x7F, 0xFF, 0xF0, - 0x1F, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, - 0xFC, 0x1F, 0x00, 0x3F, 0x87, 0xC0, 0x03, 0xF1, 0xF0, 0x00, 0x7C, 0x7C, - 0x00, 0x1F, 0x1F, 0x00, 0x07, 0xC7, 0xC0, 0x03, 0xF7, 0xFF, 0xFF, 0xFB, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xE7, 0x01, 0xFF, 0xFF, 0xC1, 0xFF, - 0xFF, 0xE1, 0xFF, 0xFF, 0xF1, 0xFE, 0x07, 0xF8, 0xFC, 0x01, 0xFC, 0xFC, - 0x00, 0x7E, 0x7C, 0x00, 0x1F, 0x7E, 0x00, 0x0F, 0xBE, 0x00, 0x03, 0x9F, - 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x1F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x39, 0xFC, 0x00, - 0x7C, 0x7F, 0x80, 0xFF, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0x81, 0xFF, - 0xFF, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC1, - 0xF0, 0x0F, 0xF0, 0xF8, 0x01, 0xF8, 0x7C, 0x00, 0x7E, 0x3E, 0x00, 0x1F, - 0x1F, 0x00, 0x0F, 0xCF, 0x80, 0x03, 0xE7, 0xC0, 0x01, 0xF3, 0xE0, 0x00, - 0xF9, 0xF0, 0x00, 0x7C, 0xF8, 0x00, 0x3E, 0x7C, 0x00, 0x1F, 0x3E, 0x00, - 0x0F, 0x9F, 0x00, 0x07, 0xCF, 0x80, 0x07, 0xE7, 0xC0, 0x03, 0xE3, 0xE0, - 0x03, 0xF1, 0xF0, 0x07, 0xF1, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xFF, - 0x7F, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, - 0xF0, 0xF8, 0x00, 0xF8, 0x7C, 0x00, 0x7C, 0x3E, 0x0E, 0x3E, 0x1F, 0x0F, - 0x9F, 0x0F, 0x87, 0xC7, 0x07, 0xC3, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, - 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x3F, 0xFF, 0x00, 0x1F, - 0x0F, 0x80, 0x0F, 0x87, 0xC3, 0x87, 0xC1, 0xC3, 0xE3, 0xE0, 0x01, 0xF1, - 0xF0, 0x00, 0xF8, 0xF8, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, - 0xFF, 0xF8, 0xF8, 0x00, 0x7C, 0x7C, 0x00, 0x3E, 0x3E, 0x00, 0x1F, 0x1F, - 0x07, 0x0F, 0x8F, 0x87, 0xC3, 0x87, 0xC3, 0xE0, 0x03, 0xFF, 0xF0, 0x01, - 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x3F, 0xFF, 0x00, - 0x1F, 0x0F, 0x80, 0x0F, 0x87, 0xC0, 0x07, 0xC3, 0xE0, 0x03, 0xE0, 0xE0, - 0x01, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xFF, 0xF0, 0x01, 0xFF, 0xFC, - 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x00, - 0x7F, 0x8E, 0x00, 0xFF, 0xF7, 0x81, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE1, - 0xFF, 0xFF, 0xF1, 0xFE, 0x03, 0xF8, 0xFC, 0x00, 0xFC, 0xFC, 0x00, 0x3E, - 0x7C, 0x00, 0x1F, 0x7E, 0x00, 0x07, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x0F, - 0xFE, 0xF8, 0x0F, 0xFF, 0xFC, 0x07, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0x00, - 0xFF, 0xFF, 0xC0, 0x01, 0xF3, 0xF0, 0x00, 0xF9, 0xFC, 0x00, 0x7C, 0x7F, - 0x80, 0xFE, 0x3F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x80, - 0x7F, 0xFF, 0x00, 0x07, 0xFC, 0x00, 0x3F, 0xE1, 0xFF, 0x1F, 0xFC, 0xFF, - 0xE7, 0xFF, 0x3F, 0xF9, 0xFF, 0xCF, 0xFE, 0x3F, 0xE1, 0xFF, 0x07, 0xC0, - 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, 0x00, 0x3E, 0x07, - 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7F, 0xFF, 0xF8, 0x1F, 0xFF, 0xFE, - 0x07, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xF8, 0x1F, 0x00, - 0x3E, 0x07, 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, - 0x00, 0x3E, 0x07, 0xC0, 0x0F, 0x87, 0xFE, 0x1F, 0xFB, 0xFF, 0xCF, 0xFF, - 0xFF, 0xF3, 0xFF, 0xFF, 0xFC, 0xFF, 0xF7, 0xFE, 0x1F, 0xF8, 0x7F, 0xFF, - 0xDF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFC, 0x03, 0xE0, - 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x1F, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, - 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, - 0xE0, 0x3F, 0xFF, 0xF0, 0x0F, 0xFF, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x07, - 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x07, 0xC0, 0xE0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, 0x3E, - 0x00, 0x7C, 0x1F, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0x07, 0xC0, 0x1F, 0x83, - 0xF8, 0x3F, 0x81, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, - 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0xE0, 0xFF, 0x9F, 0xFE, - 0x3F, 0xFB, 0xFF, 0xC7, 0xFF, 0x7F, 0xF8, 0xFF, 0xE7, 0xFE, 0x0F, 0xF8, - 0x3E, 0x01, 0xF8, 0x07, 0xC0, 0xFE, 0x00, 0xF8, 0x3F, 0x80, 0x1F, 0x0F, - 0xE0, 0x03, 0xE3, 0xF8, 0x00, 0x7D, 0xFC, 0x00, 0x0F, 0xFF, 0x00, 0x01, - 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xF0, 0x00, 0xFE, 0x7F, - 0x00, 0x1F, 0x87, 0xF0, 0x03, 0xE0, 0x7E, 0x00, 0x7C, 0x07, 0xE0, 0x0F, - 0x80, 0x7E, 0x01, 0xF0, 0x0F, 0xC0, 0x3E, 0x00, 0xF8, 0x1F, 0xF8, 0x1F, - 0xF7, 0xFF, 0x81, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFE, 0x07, 0xFD, 0xFF, - 0x80, 0x7F, 0x00, 0x7F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x3F, 0xFF, 0x80, - 0x1F, 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x0F, 0x80, 0x0E, 0x07, 0xC0, 0x0F, 0x83, 0xE0, 0x07, 0xC1, - 0xF0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, 0x3E, 0x00, 0x7D, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xDF, 0xFF, 0xFF, 0xE0, 0x3F, 0x80, 0x03, 0xF8, 0xFF, 0x80, 0x0F, 0xF9, - 0xFF, 0x00, 0x1F, 0xF3, 0xFF, 0x00, 0x7F, 0xE3, 0xFE, 0x00, 0xFF, 0x83, - 0xFE, 0x03, 0xFE, 0x07, 0xFC, 0x07, 0xFC, 0x0F, 0xFC, 0x1F, 0xF8, 0x1F, - 0xF8, 0x3F, 0xF0, 0x3F, 0xF0, 0x7F, 0xE0, 0x7D, 0xF1, 0xF7, 0xC0, 0xFB, - 0xE3, 0xEF, 0x81, 0xF7, 0xEF, 0xDF, 0x03, 0xE7, 0xDF, 0x3E, 0x07, 0xCF, - 0xFE, 0x7C, 0x0F, 0x8F, 0xF8, 0xF8, 0x1F, 0x1F, 0xF1, 0xF0, 0x3E, 0x1F, - 0xE3, 0xE0, 0x7C, 0x3F, 0x87, 0xC0, 0xF8, 0x3F, 0x0F, 0x81, 0xF0, 0x00, - 0x1F, 0x03, 0xE0, 0x00, 0x3E, 0x1F, 0xF8, 0x03, 0xFF, 0x7F, 0xF8, 0x0F, - 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFD, 0xFF, 0x80, 0x3F, - 0xF0, 0x7F, 0x00, 0x7F, 0xEF, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, - 0xFC, 0x0F, 0xFF, 0x7F, 0xE0, 0x7F, 0xE1, 0xFF, 0x00, 0xF8, 0x1F, 0xF0, - 0x0F, 0x81, 0xFF, 0x80, 0xF8, 0x1F, 0xFC, 0x0F, 0x81, 0xFF, 0xC0, 0xF8, - 0x1F, 0x7E, 0x0F, 0x81, 0xF3, 0xF0, 0xF8, 0x1F, 0x3F, 0x0F, 0x81, 0xF1, - 0xF8, 0xF8, 0x1F, 0x0F, 0xCF, 0x81, 0xF0, 0xFC, 0xF8, 0x1F, 0x07, 0xEF, - 0x81, 0xF0, 0x3F, 0xF8, 0x1F, 0x03, 0xFF, 0x81, 0xF0, 0x1F, 0xF8, 0x1F, - 0x00, 0xFF, 0x81, 0xF0, 0x0F, 0xF8, 0x7F, 0xE0, 0x7F, 0x8F, 0xFF, 0x03, - 0xF8, 0xFF, 0xF0, 0x3F, 0x8F, 0xFF, 0x01, 0xF8, 0x7F, 0xE0, 0x0F, 0x80, - 0x00, 0x3F, 0x80, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, - 0xFE, 0x00, 0xFF, 0xFF, 0xE0, 0x3F, 0xC1, 0xFE, 0x0F, 0xE0, 0x0F, 0xE1, - 0xF8, 0x00, 0xFC, 0x7E, 0x00, 0x0F, 0xCF, 0x80, 0x00, 0xFB, 0xF0, 0x00, - 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x07, 0xFE, - 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xFF, 0x00, 0x00, - 0x7F, 0xF0, 0x00, 0x1F, 0xBE, 0x00, 0x03, 0xE7, 0xE0, 0x00, 0xFC, 0x7E, - 0x00, 0x3F, 0x0F, 0xE0, 0x0F, 0xE0, 0xFF, 0x07, 0xF8, 0x0F, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x00, 0xFF, 0xF8, 0x00, 0x03, - 0xF8, 0x00, 0x7F, 0xFF, 0x80, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xFC, 0x7F, 0xFF, 0xFE, 0x1F, 0x00, 0xFE, 0x1F, 0x00, 0x3F, 0x1F, - 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, - 0x00, 0x3F, 0x1F, 0x00, 0x7E, 0x1F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xF8, 0x1F, 0xFF, 0xF0, 0x1F, 0xFF, 0x80, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x7F, 0xFC, 0x00, 0xFF, - 0xFE, 0x00, 0xFF, 0xFE, 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFC, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0xE0, 0x3F, 0xC1, 0xFE, 0x0F, 0xE0, 0x0F, 0xE1, 0xF8, - 0x00, 0xFC, 0x7E, 0x00, 0x0F, 0xCF, 0x80, 0x00, 0xFB, 0xF0, 0x00, 0x1F, - 0xFC, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x07, 0xFE, 0x00, - 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x00, 0xFD, - 0xF0, 0x00, 0x1F, 0x3F, 0x00, 0x07, 0xE7, 0xF0, 0x01, 0xF8, 0x7F, 0x00, - 0x7F, 0x07, 0xF8, 0x3F, 0xC0, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFC, 0x00, - 0x7F, 0xFF, 0x00, 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x03, 0xFF, 0x87, 0x80, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0x07, - 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0x0F, 0x01, 0xF8, 0x00, 0x7F, 0xFF, - 0x80, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, - 0x7F, 0xFF, 0xFE, 0x00, 0xF8, 0x07, 0xE0, 0x0F, 0x80, 0x3F, 0x00, 0xF8, - 0x01, 0xF0, 0x0F, 0x80, 0x1F, 0x00, 0xF8, 0x01, 0xF0, 0x0F, 0x80, 0x3F, - 0x00, 0xF8, 0x0F, 0xE0, 0x0F, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xC0, 0x0F, - 0xFF, 0xF0, 0x00, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0xF8, 0x3F, - 0x80, 0x0F, 0x81, 0xFC, 0x00, 0xF8, 0x0F, 0xE0, 0x0F, 0x80, 0x7E, 0x00, - 0xF8, 0x03, 0xF0, 0x7F, 0xF0, 0x1F, 0xEF, 0xFF, 0x81, 0xFF, 0xFF, 0xF8, - 0x0F, 0xFF, 0xFF, 0x80, 0x7F, 0x7F, 0xF0, 0x07, 0xE0, 0x01, 0xFC, 0x70, - 0x1F, 0xFD, 0xE0, 0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, 0xFC, - 0x0F, 0xE7, 0xE0, 0x1F, 0x9F, 0x00, 0x3E, 0x7C, 0x00, 0xF9, 0xF0, 0x01, - 0xC7, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x7F, 0xFF, 0x00, - 0xFF, 0xFF, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xE0, 0x00, - 0x0F, 0xDC, 0x00, 0x1F, 0xF8, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0xC0, 0x0F, - 0xFF, 0xC0, 0xFE, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xCF, 0xFF, 0xFE, 0x1C, - 0xFF, 0xF0, 0x00, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC1, 0xF0, 0x7F, - 0xE0, 0xF8, 0x3F, 0xF0, 0x7C, 0x1F, 0xF8, 0x3E, 0x0F, 0xFC, 0x1F, 0x07, - 0xFE, 0x0F, 0x83, 0xEE, 0x07, 0xC0, 0xE0, 0x03, 0xE0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, - 0xF0, 0x00, 0x0F, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x07, 0xFF, 0xF0, 0x03, - 0xFF, 0xF8, 0x00, 0xFF, 0xF8, 0x00, 0x7F, 0xE0, 0x7F, 0xEF, 0xFF, 0x0F, - 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0xE0, 0x7F, 0xE1, - 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, - 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, - 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, - 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, - 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x80, 0x1F, 0x80, 0xF8, 0x01, 0xF0, 0x0F, - 0xE0, 0x7F, 0x00, 0x7F, 0xFF, 0xE0, 0x03, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, - 0x80, 0x00, 0xFF, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x7F, 0xE0, 0x1F, 0xFB, - 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFC, 0x0F, 0xFF, 0x7F, - 0xE0, 0x1F, 0xF8, 0x7C, 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x7C, 0x03, 0xE0, - 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7E, 0x00, - 0xF8, 0x00, 0xF8, 0x07, 0xC0, 0x03, 0xF0, 0x1F, 0x00, 0x07, 0xC0, 0xF8, - 0x00, 0x1F, 0x03, 0xE0, 0x00, 0x7E, 0x1F, 0x00, 0x00, 0xF8, 0x7C, 0x00, - 0x03, 0xF3, 0xF0, 0x00, 0x07, 0xCF, 0x80, 0x00, 0x1F, 0xBE, 0x00, 0x00, - 0x3F, 0xF0, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x07, - 0xF8, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0xFC, - 0x00, 0x00, 0x7F, 0xE0, 0x7F, 0xEF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, - 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0xE0, 0x7F, 0xE3, 0xE0, 0x00, 0x3C, 0x3E, - 0x0F, 0x83, 0xC3, 0xE1, 0xF8, 0x3C, 0x3E, 0x1F, 0x87, 0xC3, 0xE1, 0xFC, - 0x7C, 0x3E, 0x3F, 0xC7, 0xC1, 0xE3, 0xFC, 0x7C, 0x1F, 0x3F, 0xE7, 0xC1, - 0xF7, 0xFE, 0x78, 0x1F, 0x7F, 0xE7, 0x81, 0xF7, 0x9F, 0xF8, 0x1F, 0xF9, - 0xFF, 0x81, 0xFF, 0x9F, 0xF8, 0x0F, 0xF9, 0xFF, 0x80, 0xFF, 0x0F, 0xF8, - 0x0F, 0xF0, 0xFF, 0x80, 0xFF, 0x0F, 0xF0, 0x0F, 0xE0, 0x7F, 0x00, 0xFE, - 0x07, 0xF0, 0x0F, 0xE0, 0x7F, 0x00, 0xFC, 0x03, 0xF0, 0x07, 0xC0, 0x3F, - 0x00, 0x7F, 0x80, 0xFF, 0x3F, 0xF0, 0x7F, 0xEF, 0xFC, 0x1F, 0xFB, 0xFF, - 0x07, 0xFE, 0x7F, 0x80, 0xFF, 0x07, 0xE0, 0x3F, 0x00, 0xFC, 0x0F, 0x80, - 0x1F, 0x87, 0xC0, 0x03, 0xF3, 0xE0, 0x00, 0xFF, 0xF8, 0x00, 0x1F, 0xFC, - 0x00, 0x03, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, - 0xF0, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0xFC, 0xF8, 0x00, - 0x7E, 0x3F, 0x00, 0x3F, 0x07, 0xE0, 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0x1F, - 0x07, 0xFC, 0x0F, 0xFB, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF8, - 0x7F, 0xF7, 0xFC, 0x0F, 0xF8, 0x7F, 0x80, 0x7F, 0xBF, 0xF0, 0x3F, 0xFF, - 0xFC, 0x0F, 0xFF, 0xFF, 0x03, 0xFF, 0x7F, 0x80, 0x7F, 0x87, 0xE0, 0x1F, - 0x80, 0xFC, 0x07, 0xC0, 0x1F, 0x03, 0xE0, 0x03, 0xE1, 0xF8, 0x00, 0xFC, - 0x7C, 0x00, 0x1F, 0xBE, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x7F, 0xC0, 0x00, - 0x1F, 0xE0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0xFF, 0x00, 0x0F, 0xFF, 0xE0, 0x03, - 0xFF, 0xF8, 0x00, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0x00, 0x7F, 0xFF, 0xF3, - 0xFF, 0xFF, 0x9F, 0xFF, 0xFC, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0x3E, 0x03, - 0xF1, 0xF0, 0x1F, 0x8F, 0x81, 0xF8, 0x7C, 0x1F, 0x83, 0xE1, 0xF8, 0x0E, - 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, - 0x00, 0xFC, 0x00, 0x0F, 0xE0, 0x70, 0x7E, 0x07, 0xC7, 0xE0, 0x3E, 0x7E, - 0x01, 0xF7, 0xE0, 0x0F, 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xBF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xBE, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, - 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, - 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, - 0xFF, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x60, 0x00, 0x0F, 0x00, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, - 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xF0, - 0x00, 0x1F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x07, - 0xC0, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, - 0x1F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, - 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, - 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, - 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0x7F, 0xC0, 0x00, 0x40, 0x00, 0x06, 0x00, 0x00, 0xF0, - 0x00, 0x1F, 0x80, 0x03, 0xFC, 0x00, 0x7F, 0xE0, 0x0F, 0xFF, 0x00, 0xFF, - 0xF8, 0x1F, 0x9F, 0x83, 0xF0, 0xFC, 0x7E, 0x07, 0xEF, 0xC0, 0x3F, 0xF8, - 0x01, 0xFF, 0x80, 0x0F, 0x70, 0x00, 0x60, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0xE0, 0x78, 0x3E, 0x0F, 0xC3, 0xF0, 0x7C, 0x1E, 0x06, 0x01, 0xFF, - 0x00, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x0F, 0xFF, - 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x01, 0xFF, - 0xF8, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x7F, 0xFF, - 0xF8, 0x7F, 0x00, 0xF8, 0xFC, 0x00, 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x03, - 0xF8, 0xFC, 0x0F, 0xFE, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x3F, 0xFF, - 0xFF, 0x1F, 0xFE, 0xFE, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x1F, 0xE0, - 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x0F, - 0xE0, 0x03, 0xEF, 0xFF, 0x00, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0xF8, 0x3F, 0xE0, 0x7F, 0x07, 0xF0, 0x03, 0xF0, 0xFC, 0x00, - 0x3E, 0x1F, 0x80, 0x07, 0xE3, 0xE0, 0x00, 0x7C, 0x7C, 0x00, 0x0F, 0x8F, - 0x80, 0x01, 0xF1, 0xF0, 0x00, 0x3E, 0x3E, 0x00, 0x07, 0xC7, 0xE0, 0x01, - 0xF8, 0xFC, 0x00, 0x3E, 0x1F, 0xC0, 0x0F, 0xCF, 0xFE, 0x07, 0xF3, 0xFF, - 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0xE0, 0xFE, 0x7F, 0xF0, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFF, 0x18, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x3F, 0x81, 0xFC, 0x7E, 0x00, - 0x7C, 0x7C, 0x00, 0x7C, 0xFC, 0x00, 0x3C, 0xF8, 0x00, 0x38, 0xF8, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7C, 0x00, 0x06, 0x7E, 0x00, 0x1F, 0x7F, 0x80, 0x7F, 0x3F, 0xFF, - 0xFF, 0x1F, 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x07, 0xFF, 0xF8, 0x00, 0xFF, - 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0xF8, 0x00, 0xFE, 0x3E, 0x00, 0xFF, 0xEF, 0x80, 0xFF, 0xFF, - 0xE0, 0x7F, 0xFF, 0xF8, 0x3F, 0xFF, 0xFE, 0x1F, 0xE0, 0xFF, 0x87, 0xE0, - 0x0F, 0xE1, 0xF0, 0x01, 0xF8, 0xFC, 0x00, 0x7E, 0x3E, 0x00, 0x0F, 0x8F, - 0x80, 0x03, 0xE3, 0xE0, 0x00, 0xF8, 0xF8, 0x00, 0x3E, 0x3E, 0x00, 0x0F, - 0x8F, 0xC0, 0x07, 0xE1, 0xF0, 0x01, 0xF8, 0x7E, 0x00, 0xFE, 0x0F, 0xE0, - 0x7F, 0xE3, 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xC0, - 0xFF, 0xEF, 0xE0, 0x0F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x03, 0xFF, 0xC0, - 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x7F, 0x81, 0xFC, - 0x7E, 0x00, 0x7E, 0xFC, 0x00, 0x3E, 0xF8, 0x00, 0x3E, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, 0x80, 0x7E, - 0x3F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFE, 0x07, 0xFF, 0xF8, - 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xE0, 0x03, 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, - 0xFF, 0xFF, 0x07, 0xFF, 0xF8, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x01, 0xF0, - 0x00, 0x07, 0xC0, 0x01, 0xFF, 0xFF, 0x0F, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, - 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x07, - 0xC0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, - 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x01, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, 0xFF, 0xFF, 0xE1, 0xFF, - 0xFF, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xFF, 0xBF, 0x83, 0xFF, 0xFF, 0xE3, - 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xFB, 0xFC, 0x3F, 0xF9, 0xF8, 0x07, 0xF0, - 0xF8, 0x01, 0xF8, 0xFC, 0x00, 0xFC, 0x7C, 0x00, 0x3E, 0x3E, 0x00, 0x1F, - 0x1F, 0x00, 0x0F, 0x8F, 0x80, 0x07, 0xC7, 0xC0, 0x03, 0xE3, 0xF0, 0x03, - 0xF0, 0xF8, 0x01, 0xF8, 0x7E, 0x01, 0xFC, 0x3F, 0xC3, 0xFE, 0x0F, 0xFF, - 0xFF, 0x03, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xC0, 0x3F, 0xFB, 0xE0, 0x07, - 0xF1, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFE, 0x00, - 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0x00, 0x3F, 0xFE, 0x00, - 0x0F, 0xFC, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x0F, 0xC0, 0x07, 0xCF, 0xFC, 0x01, - 0xF7, 0xFF, 0x80, 0x7F, 0xFF, 0xF0, 0x1F, 0xFF, 0xFC, 0x07, 0xFC, 0x1F, - 0x81, 0xFC, 0x03, 0xE0, 0x7E, 0x00, 0xF8, 0x1F, 0x00, 0x3E, 0x07, 0xC0, - 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, 0x00, 0x3E, 0x07, - 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, 0x00, 0x3E, - 0x1F, 0xF0, 0x3F, 0xEF, 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, - 0xFF, 0xDF, 0xF0, 0x3F, 0xE0, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, - 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x0F, 0xFE, 0x00, 0x7F, 0xF0, - 0x01, 0xFF, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x7F, 0xFF, 0xF7, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0x00, 0x00, 0x7C, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, - 0xFF, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, - 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, - 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x3F, 0x00, 0x3F, 0xBF, 0xFF, 0xBF, 0xFF, - 0x9F, 0xFF, 0xCF, 0xFF, 0x83, 0xFF, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x80, - 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, - 0x87, 0xFC, 0x07, 0xC7, 0xFF, 0x03, 0xE3, 0xFF, 0x81, 0xF1, 0xFF, 0xC0, - 0xF8, 0x7F, 0xC0, 0x7C, 0xFE, 0x00, 0x3E, 0xFE, 0x00, 0x1F, 0xFE, 0x00, - 0x0F, 0xFE, 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xFF, 0xE0, - 0x00, 0xFF, 0xF8, 0x00, 0x7C, 0xFE, 0x00, 0x3E, 0x3F, 0x80, 0x1F, 0x0F, - 0xE0, 0x3F, 0x81, 0xFF, 0xBF, 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF0, - 0x7F, 0xFB, 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x0F, 0xFE, - 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, - 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x03, 0xFF, - 0xFF, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xF8, - 0x00, 0x3C, 0x1F, 0x00, 0xFD, 0xFC, 0xFF, 0x07, 0xFF, 0xFF, 0xFE, 0x1F, - 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFF, 0xF0, 0xFF, 0x1F, 0x87, 0xC1, 0xF8, - 0x7E, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, - 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, - 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, - 0x1F, 0x07, 0xC1, 0xF1, 0xFE, 0x1F, 0x87, 0xEF, 0xFC, 0x7F, 0x1F, 0xFF, - 0xF1, 0xFC, 0x7F, 0xFF, 0xC7, 0xF1, 0xFD, 0xFE, 0x1F, 0x87, 0xE0, 0x00, - 0x1F, 0x80, 0x1F, 0x9F, 0xF8, 0x1F, 0xDF, 0xFE, 0x0F, 0xFF, 0xFF, 0x87, - 0xFF, 0xFF, 0xC1, 0xFF, 0x07, 0xF0, 0x7F, 0x01, 0xF8, 0x3F, 0x00, 0x7C, - 0x1F, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0x07, 0xC0, 0x0F, 0x83, 0xE0, 0x07, - 0xC1, 0xF0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, 0x3E, 0x00, - 0x7C, 0x1F, 0x00, 0x3E, 0x3F, 0xE0, 0x7F, 0xBF, 0xF8, 0x7F, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFE, 0x1F, 0xFB, 0xFE, 0x07, 0xF8, 0x00, 0x7F, 0x00, 0x01, - 0xFF, 0xF0, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xC1, - 0xFE, 0x0F, 0xF1, 0xFC, 0x01, 0xFC, 0xFC, 0x00, 0x7E, 0xFC, 0x00, 0x1F, - 0xFC, 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0xF0, 0x00, 0x7E, 0xF8, 0x00, 0x7E, 0x7F, 0x00, - 0x7F, 0x1F, 0xC0, 0xFF, 0x07, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0x80, 0x7F, - 0xFF, 0x00, 0x1F, 0xFF, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x07, 0xE0, 0x03, - 0xF9, 0xFF, 0xC0, 0x7F, 0xBF, 0xFE, 0x07, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, - 0xFF, 0xC3, 0xFF, 0x83, 0xFC, 0x0F, 0xE0, 0x0F, 0xE0, 0xFC, 0x00, 0x7E, - 0x0F, 0xC0, 0x03, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF0, 0xF8, - 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x3F, 0x0F, 0xC0, 0x03, - 0xF0, 0xFE, 0x00, 0x7E, 0x0F, 0xF8, 0x1F, 0xE0, 0xFF, 0xFF, 0xFC, 0x0F, - 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xF0, 0x0F, 0x9F, 0xFC, 0x00, 0xF8, 0x7F, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x7F, 0xF8, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0xFF, 0xFC, - 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0x3F, 0xF9, 0xFC, 0x0F, 0xFF, 0xDF, 0xE1, 0xFF, 0xFF, 0xFE, 0x3F, - 0xFF, 0xFF, 0xE3, 0xF8, 0x1F, 0xFC, 0x7F, 0x00, 0x7F, 0x07, 0xC0, 0x03, - 0xF0, 0xFC, 0x00, 0x3F, 0x0F, 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, - 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, 0xC0, 0x01, 0xF0, 0xFC, 0x00, - 0x3F, 0x07, 0xE0, 0x07, 0xF0, 0x7F, 0x81, 0xFF, 0x03, 0xFF, 0xFF, 0xF0, - 0x1F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0x9F, 0x00, 0x0F, - 0xE1, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x3F, 0xFF, 0x00, - 0x03, 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x01, - 0xF0, 0x3F, 0xC7, 0xFC, 0x7F, 0xCF, 0xFE, 0x7F, 0xDF, 0xFF, 0x7F, 0xFF, - 0xFF, 0x3F, 0xFF, 0x0E, 0x07, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x07, 0xF0, - 0x00, 0x07, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, - 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, - 0x00, 0x7F, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, - 0xE0, 0x7F, 0xFF, 0xC0, 0x03, 0xFC, 0x60, 0x7F, 0xFF, 0x87, 0xFF, 0xFC, - 0x7F, 0xFF, 0xE7, 0xFF, 0xFF, 0x3F, 0x01, 0xF9, 0xF0, 0x07, 0xCF, 0xC0, - 0x1C, 0x7F, 0xF0, 0x03, 0xFF, 0xF8, 0x0F, 0xFF, 0xF0, 0x3F, 0xFF, 0xC0, - 0x3F, 0xFF, 0x00, 0x0F, 0xFD, 0xC0, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xEF, 0xFF, 0xFE, 0x3F, - 0xFF, 0xC0, 0x07, 0xF8, 0x00, 0x07, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0xFF, - 0xF8, 0x7F, 0xFF, 0xF8, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, - 0x80, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, - 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x03, 0x83, 0xF0, 0x1F, 0x87, - 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xF8, 0x07, 0xFF, 0xC0, 0x03, - 0xFC, 0x00, 0x7F, 0x01, 0xFE, 0x7F, 0x81, 0xFF, 0x3F, 0xC0, 0xFF, 0x9F, - 0xE0, 0x7F, 0xC7, 0xF0, 0x1F, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, - 0x3E, 0x00, 0x7C, 0x1F, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0x07, 0xC0, 0x0F, - 0x83, 0xE0, 0x07, 0xC1, 0xF0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x01, - 0xF8, 0x3F, 0x01, 0xFC, 0x1F, 0xC1, 0xFF, 0x07, 0xFF, 0xFF, 0xC3, 0xFF, - 0xFF, 0xE0, 0xFF, 0xF7, 0xF0, 0x3F, 0xF3, 0xF0, 0x03, 0xF0, 0x00, 0x7F, - 0xE0, 0x7F, 0xEF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x0F, - 0xFF, 0x7F, 0xE0, 0x7F, 0xE0, 0xF8, 0x01, 0xF0, 0x0F, 0xC0, 0x1F, 0x00, - 0x7C, 0x03, 0xE0, 0x07, 0xE0, 0x3E, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xF0, - 0x7C, 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF8, 0xF8, 0x00, 0x0F, 0x9F, 0x00, - 0x00, 0xFD, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x7F, 0x80, 0x1F, 0xEF, 0xFC, 0x03, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, - 0xFC, 0x03, 0xFF, 0x7F, 0x80, 0x1F, 0xE1, 0xF0, 0xF8, 0x7C, 0x1F, 0x1F, - 0x87, 0xC1, 0xF1, 0xF8, 0xFC, 0x1F, 0x1F, 0xCF, 0x80, 0xFB, 0xFC, 0xF8, - 0x0F, 0xBF, 0xDF, 0x80, 0xFB, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x00, 0x7F, - 0xDF, 0xF0, 0x07, 0xF9, 0xFF, 0x00, 0x7F, 0x9F, 0xE0, 0x07, 0xF0, 0xFE, - 0x00, 0x3F, 0x0F, 0xE0, 0x03, 0xF0, 0x7E, 0x00, 0x3E, 0x07, 0xC0, 0x03, - 0xE0, 0x3C, 0x00, 0x3F, 0xC0, 0xFF, 0x1F, 0xF8, 0x7F, 0xE7, 0xFE, 0x1F, - 0xF9, 0xFF, 0x87, 0xFE, 0x3F, 0xC0, 0xFF, 0x03, 0xF8, 0x7F, 0x00, 0x7F, - 0x3F, 0x80, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xE0, 0x00, 0x3F, 0xE0, 0x00, - 0x07, 0xF8, 0x00, 0x07, 0xFF, 0x00, 0x03, 0xFF, 0xE0, 0x01, 0xFF, 0xFE, - 0x00, 0xFE, 0x1F, 0xC0, 0x7F, 0x03, 0xF8, 0x7F, 0xC0, 0xFF, 0xBF, 0xF8, - 0x7F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0x7F, 0xC0, 0xFF, 0x80, - 0x7F, 0x80, 0x7F, 0xBF, 0xF0, 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0x03, - 0xFF, 0x7F, 0x80, 0x7F, 0x8F, 0xC0, 0x07, 0x81, 0xF0, 0x03, 0xE0, 0x7E, - 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xF0, 0x3E, 0x00, 0x7C, 0x0F, 0x80, - 0x0F, 0x87, 0xC0, 0x03, 0xE1, 0xF0, 0x00, 0x7C, 0xF8, 0x00, 0x1F, 0xFE, - 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x07, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x1F, 0xFF, 0x80, - 0x0F, 0xFF, 0xF0, 0x03, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, - 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0x3F, 0xBE, 0x0F, 0xC3, 0x83, 0xF0, 0x00, 0xFC, 0x00, - 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, - 0xC0, 0x3B, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x78, 0x03, 0xF0, 0x1F, 0xC0, 0xFF, 0x07, - 0xF8, 0x1F, 0x80, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, - 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x0F, 0x81, 0xFE, 0x0F, - 0xF0, 0x3F, 0x80, 0xFF, 0x01, 0xFE, 0x00, 0xFC, 0x01, 0xF0, 0x07, 0xC0, - 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF8, - 0x07, 0xF8, 0x0F, 0xF0, 0x3F, 0xC0, 0x7F, 0x00, 0x78, 0x77, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xE0, 0x78, 0x03, 0xF0, 0x0F, - 0xE0, 0x3F, 0xC0, 0x7F, 0x00, 0x7E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, - 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, - 0x07, 0xC0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x03, 0xFC, 0x1F, 0xE0, 0xFC, - 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0xF8, 0x07, 0xE0, 0x7F, 0x83, 0xFC, 0x0F, 0xF0, 0x3F, 0x80, 0x78, - 0x00, 0x07, 0x80, 0x00, 0x7F, 0x80, 0x03, 0xFF, 0x03, 0x9F, 0xFE, 0x1F, - 0xFF, 0xFC, 0xFF, 0xF3, 0xFF, 0xFF, 0x87, 0xFF, 0x9C, 0x0F, 0xFC, 0x00, - 0x0F, 0xE0, 0x00, 0x1F, 0x00}; - -const GFXglyph FreeMonoBold24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 7, 31, 28, 10, -29}, // 0x21 '!' - {28, 15, 14, 28, 6, -28}, // 0x22 '"' - {55, 22, 34, 28, 3, -30}, // 0x23 '#' - {149, 19, 38, 28, 5, -31}, // 0x24 '$' - {240, 21, 30, 28, 4, -28}, // 0x25 '%' - {319, 21, 28, 28, 4, -26}, // 0x26 '&' - {393, 6, 14, 28, 11, -28}, // 0x27 ''' - {404, 10, 37, 28, 12, -29}, // 0x28 '(' - {451, 10, 37, 28, 6, -29}, // 0x29 ')' - {498, 21, 19, 28, 4, -28}, // 0x2A '*' - {548, 23, 26, 28, 3, -25}, // 0x2B '+' - {623, 9, 14, 28, 7, -6}, // 0x2C ',' - {639, 24, 5, 28, 2, -15}, // 0x2D '-' - {654, 7, 6, 28, 11, -4}, // 0x2E '.' - {660, 20, 38, 28, 4, -32}, // 0x2F '/' - {755, 21, 31, 28, 4, -29}, // 0x30 '0' - {837, 20, 29, 28, 4, -28}, // 0x31 '1' - {910, 21, 30, 28, 3, -29}, // 0x32 '2' - {989, 21, 31, 28, 4, -29}, // 0x33 '3' - {1071, 20, 28, 28, 4, -27}, // 0x34 '4' - {1141, 21, 31, 28, 4, -29}, // 0x35 '5' - {1223, 20, 31, 28, 5, -29}, // 0x36 '6' - {1301, 20, 30, 28, 4, -29}, // 0x37 '7' - {1376, 20, 31, 28, 4, -29}, // 0x38 '8' - {1454, 20, 31, 28, 5, -29}, // 0x39 '9' - {1532, 7, 22, 28, 11, -20}, // 0x3A ':' - {1552, 10, 28, 28, 6, -20}, // 0x3B ';' - {1587, 24, 21, 28, 2, -23}, // 0x3C '<' - {1650, 24, 14, 28, 2, -19}, // 0x3D '=' - {1692, 23, 22, 28, 3, -23}, // 0x3E '>' - {1756, 20, 29, 28, 5, -27}, // 0x3F '?' - {1829, 19, 36, 28, 4, -28}, // 0x40 '@' - {1915, 29, 27, 28, -1, -26}, // 0x41 'A' - {2013, 26, 27, 28, 1, -26}, // 0x42 'B' - {2101, 25, 29, 28, 2, -27}, // 0x43 'C' - {2192, 25, 27, 28, 1, -26}, // 0x44 'D' - {2277, 25, 27, 28, 1, -26}, // 0x45 'E' - {2362, 25, 27, 28, 1, -26}, // 0x46 'F' - {2447, 25, 29, 28, 2, -27}, // 0x47 'G' - {2538, 26, 27, 28, 1, -26}, // 0x48 'H' - {2626, 19, 27, 28, 5, -26}, // 0x49 'I' - {2691, 25, 28, 28, 3, -26}, // 0x4A 'J' - {2779, 27, 27, 28, 1, -26}, // 0x4B 'K' - {2871, 25, 27, 28, 2, -26}, // 0x4C 'L' - {2956, 31, 27, 28, -1, -26}, // 0x4D 'M' - {3061, 28, 27, 28, 0, -26}, // 0x4E 'N' - {3156, 27, 29, 28, 1, -27}, // 0x4F 'O' - {3254, 24, 27, 28, 1, -26}, // 0x50 'P' - {3335, 27, 35, 28, 1, -27}, // 0x51 'Q' - {3454, 28, 27, 28, 0, -26}, // 0x52 'R' - {3549, 22, 29, 28, 3, -27}, // 0x53 'S' - {3629, 25, 27, 28, 2, -26}, // 0x54 'T' - {3714, 28, 28, 28, 0, -26}, // 0x55 'U' - {3812, 30, 27, 28, -1, -26}, // 0x56 'V' - {3914, 28, 27, 28, 0, -26}, // 0x57 'W' - {4009, 26, 27, 28, 1, -26}, // 0x58 'X' - {4097, 26, 27, 28, 1, -26}, // 0x59 'Y' - {4185, 21, 27, 28, 4, -26}, // 0x5A 'Z' - {4256, 10, 37, 28, 12, -29}, // 0x5B '[' - {4303, 20, 38, 28, 4, -32}, // 0x5C '\' - {4398, 10, 37, 28, 6, -29}, // 0x5D ']' - {4445, 20, 15, 28, 4, -29}, // 0x5E '^' - {4483, 28, 5, 28, 0, 5}, // 0x5F '_' - {4501, 9, 8, 28, 8, -30}, // 0x60 '`' - {4510, 24, 23, 28, 2, -21}, // 0x61 'a' - {4579, 27, 31, 28, 0, -29}, // 0x62 'b' - {4684, 24, 23, 28, 3, -21}, // 0x63 'c' - {4753, 26, 31, 28, 2, -29}, // 0x64 'd' - {4854, 24, 23, 28, 2, -21}, // 0x65 'e' - {4923, 22, 30, 28, 4, -29}, // 0x66 'f' - {5006, 25, 31, 28, 2, -21}, // 0x67 'g' - {5103, 26, 30, 28, 1, -29}, // 0x68 'h' - {5201, 21, 29, 28, 4, -28}, // 0x69 'i' - {5278, 17, 38, 28, 5, -28}, // 0x6A 'j' - {5359, 25, 30, 28, 2, -29}, // 0x6B 'k' - {5453, 21, 30, 28, 4, -29}, // 0x6C 'l' - {5532, 30, 22, 28, -1, -21}, // 0x6D 'm' - {5615, 25, 22, 28, 1, -21}, // 0x6E 'n' - {5684, 25, 23, 28, 2, -21}, // 0x6F 'o' - {5756, 28, 31, 28, 0, -21}, // 0x70 'p' - {5865, 28, 31, 28, 1, -21}, // 0x71 'q' - {5974, 24, 22, 28, 3, -21}, // 0x72 'r' - {6040, 21, 23, 28, 4, -21}, // 0x73 's' - {6101, 23, 28, 28, 1, -26}, // 0x74 't' - {6182, 25, 22, 28, 1, -20}, // 0x75 'u' - {6251, 28, 21, 28, 0, -20}, // 0x76 'v' - {6325, 28, 21, 28, 0, -20}, // 0x77 'w' - {6399, 26, 21, 28, 1, -20}, // 0x78 'x' - {6468, 26, 30, 28, 1, -20}, // 0x79 'y' - {6566, 19, 21, 28, 5, -20}, // 0x7A 'z' - {6616, 14, 37, 28, 7, -29}, // 0x7B '{' - {6681, 5, 36, 28, 12, -28}, // 0x7C '|' - {6704, 14, 37, 28, 8, -29}, // 0x7D '}' - {6769, 22, 10, 28, 3, -17}}; // 0x7E '~' - -const GFXfont FreeMonoBold24pt7b PROGMEM = { - (uint8_t *)FreeMonoBold24pt7bBitmaps, (GFXglyph *)FreeMonoBold24pt7bGlyphs, - 0x20, 0x7E, 47}; - -// Approx. 7469 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h deleted file mode 100644 index 44320f8..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h +++ /dev/null @@ -1,191 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xD2, 0x1F, 0x80, 0xEC, 0x89, 0x12, 0x24, 0x40, 0x36, 0x36, - 0x36, 0x7F, 0x7F, 0x36, 0xFF, 0xFF, 0x3C, 0x3C, 0x3C, 0x00, 0x18, 0xFF, - 0xFE, 0x3C, 0x1F, 0x1F, 0x83, 0x46, 0x8D, 0xF0, 0xC1, 0x83, 0x00, 0x61, - 0x22, 0x44, 0x86, 0x67, 0x37, 0x11, 0x22, 0x4C, 0x70, 0x3C, 0x7E, 0x60, - 0x60, 0x30, 0x7B, 0xDF, 0xCE, 0xFF, 0x7F, 0xC9, 0x24, 0x37, 0x66, 0xCC, - 0xCC, 0xCC, 0x66, 0x31, 0xCE, 0x66, 0x33, 0x33, 0x33, 0x66, 0xC8, 0x18, - 0x18, 0xFF, 0xFF, 0x3C, 0x3C, 0x66, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x18, - 0x18, 0x18, 0x18, 0x6B, 0x48, 0xFF, 0xFF, 0xC0, 0xF0, 0x02, 0x0C, 0x18, - 0x60, 0xC3, 0x06, 0x0C, 0x30, 0x61, 0x83, 0x0C, 0x18, 0x20, 0x00, 0x38, - 0xFB, 0xBE, 0x3C, 0x78, 0xF1, 0xE3, 0xC7, 0xDD, 0xF1, 0xC0, 0x38, 0xF3, - 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0xFD, 0xF8, 0x3C, 0xFE, 0xC7, 0x03, - 0x03, 0x06, 0x0C, 0x18, 0x70, 0xE3, 0xFF, 0xFF, 0x7C, 0xFE, 0x03, 0x03, - 0x03, 0x1E, 0x1E, 0x07, 0x03, 0x03, 0xFE, 0x7C, 0x1C, 0x38, 0xB1, 0x64, - 0xD9, 0xBF, 0xFF, 0x3E, 0x7C, 0x7E, 0x3F, 0x18, 0x0F, 0xC7, 0xF3, 0x1C, - 0x06, 0x03, 0xC3, 0xFF, 0x9F, 0x80, 0x0F, 0x3F, 0x30, 0x60, 0x60, 0xDC, - 0xFE, 0xE3, 0xC3, 0x63, 0x7E, 0x3C, 0xFF, 0xFF, 0xC3, 0x03, 0x06, 0x06, - 0x06, 0x0C, 0x0C, 0x0C, 0x18, 0x38, 0xFB, 0x1E, 0x3C, 0x6F, 0x9F, 0x63, - 0xC7, 0x8F, 0xF1, 0xC0, 0x3C, 0x7E, 0xE6, 0xC3, 0xC3, 0xE7, 0x7F, 0x3B, - 0x06, 0x0E, 0xFC, 0xF0, 0xF0, 0x0F, 0x6C, 0x00, 0x1A, 0xD2, 0x00, 0x01, - 0x83, 0x87, 0x0E, 0x0F, 0x80, 0xE0, 0x1C, 0x03, 0xFF, 0xFF, 0xC0, 0x00, - 0x0F, 0xFF, 0xFC, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0xF9, 0xE3, 0xC1, 0x80, - 0x7C, 0xFE, 0xC7, 0x03, 0x0E, 0x1C, 0x00, 0x00, 0x00, 0x30, 0x30, 0x1E, - 0x1F, 0x1C, 0xDC, 0x6C, 0x76, 0x7B, 0x6D, 0xB6, 0xDB, 0x6F, 0xF3, 0xFC, - 0x06, 0x33, 0xF8, 0x78, 0x3C, 0x07, 0xC0, 0x38, 0x05, 0x81, 0xB0, 0x36, - 0x0F, 0xE1, 0xFC, 0x71, 0xDF, 0x7F, 0xEF, 0x80, 0xFF, 0x3F, 0xE6, 0x19, - 0x86, 0x7F, 0x1F, 0xE6, 0x1D, 0x83, 0x60, 0xFF, 0xFF, 0xF0, 0x1F, 0xBF, - 0xD8, 0xF8, 0x3C, 0x06, 0x03, 0x01, 0x80, 0x61, 0xBF, 0xC7, 0xC0, 0xFE, - 0x3F, 0xE6, 0x19, 0x83, 0x60, 0xD8, 0x36, 0x0D, 0x83, 0x61, 0xBF, 0xEF, - 0xE0, 0xFF, 0xFF, 0xD8, 0x6D, 0xB7, 0xC3, 0xE1, 0xB0, 0xC3, 0x61, 0xFF, - 0xFF, 0xE0, 0xFF, 0xFF, 0xD8, 0x6D, 0xB7, 0xC3, 0xE1, 0xB0, 0xC0, 0x60, - 0x7C, 0x3E, 0x00, 0x1F, 0x9F, 0xE6, 0x1B, 0x06, 0xC0, 0x30, 0x0C, 0x7F, - 0x1F, 0xE1, 0x9F, 0xE3, 0xF0, 0xF7, 0xFB, 0xD8, 0xCC, 0x66, 0x33, 0xF9, - 0xFC, 0xC6, 0x63, 0x7B, 0xFD, 0xE0, 0xFF, 0xF3, 0x0C, 0x30, 0xC3, 0x0C, - 0x33, 0xFF, 0xC0, 0x1F, 0xC7, 0xF0, 0x30, 0x0C, 0x03, 0x00, 0xCC, 0x33, - 0x0C, 0xC7, 0x3F, 0x87, 0xC0, 0xF7, 0xBD, 0xE6, 0x61, 0xB0, 0x78, 0x1F, - 0x06, 0xE1, 0x98, 0x63, 0x3C, 0xFF, 0x3C, 0xFC, 0x7E, 0x0C, 0x06, 0x03, - 0x01, 0x80, 0xC6, 0x63, 0x31, 0xFF, 0xFF, 0xE0, 0xE0, 0xFE, 0x3D, 0xC7, - 0x3D, 0xE7, 0xBC, 0xD7, 0x9B, 0xB3, 0x76, 0x60, 0xDE, 0x3F, 0xC7, 0x80, - 0xE1, 0xFE, 0x3D, 0xE3, 0x3C, 0x66, 0xCC, 0xDD, 0x99, 0xB3, 0x1E, 0x63, - 0xDE, 0x3B, 0xC3, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x7C, 0x07, 0x80, - 0xF0, 0x1F, 0x07, 0x71, 0xC7, 0xF0, 0x7C, 0x00, 0xFE, 0x7F, 0x98, 0x6C, - 0x36, 0x1B, 0xF9, 0xF8, 0xC0, 0x60, 0x7C, 0x3E, 0x00, 0x1F, 0x07, 0xF1, - 0xC7, 0x70, 0x7C, 0x07, 0x80, 0xF0, 0x1F, 0x07, 0x71, 0xC7, 0xF0, 0x7C, - 0x0C, 0x33, 0xFE, 0x7F, 0x80, 0xFC, 0x7F, 0x18, 0xCC, 0x66, 0x73, 0xF1, - 0xF0, 0xCC, 0x63, 0x7D, 0xFE, 0x60, 0x3F, 0xBF, 0xF0, 0x78, 0x0F, 0x03, - 0xF8, 0x3F, 0x83, 0xC3, 0xFF, 0xBF, 0x80, 0xFF, 0xFF, 0xF6, 0x7B, 0x3D, - 0x98, 0xC0, 0x60, 0x30, 0x18, 0x3F, 0x1F, 0x80, 0xF1, 0xFE, 0x3D, 0x83, - 0x30, 0x66, 0x0C, 0xC1, 0x98, 0x33, 0x06, 0x60, 0xC7, 0xF0, 0x7C, 0x00, - 0xFB, 0xFF, 0x7D, 0xC3, 0x18, 0xC3, 0x18, 0x36, 0x06, 0xC0, 0x50, 0x0E, - 0x01, 0xC0, 0x10, 0x00, 0xFB, 0xFE, 0xF6, 0x0D, 0x93, 0x6E, 0xDB, 0xB7, - 0xAD, 0xEE, 0x7B, 0x8E, 0xE3, 0x18, 0xF3, 0xFC, 0xF7, 0x38, 0xFC, 0x1E, - 0x03, 0x01, 0xE0, 0xCC, 0x73, 0xBC, 0xFF, 0x3C, 0xF3, 0xFC, 0xF7, 0x38, - 0xCC, 0x1E, 0x07, 0x80, 0xC0, 0x30, 0x0C, 0x0F, 0xC3, 0xF0, 0xFE, 0xFE, - 0xC6, 0xCC, 0x18, 0x18, 0x30, 0x63, 0xC3, 0xFF, 0xFF, 0xFF, 0xCC, 0xCC, - 0xCC, 0xCC, 0xCC, 0xFF, 0x01, 0x03, 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x18, - 0x30, 0x30, 0x60, 0x60, 0xC0, 0x80, 0xFF, 0x33, 0x33, 0x33, 0x33, 0x33, - 0xFF, 0x10, 0x71, 0xE3, 0x6C, 0x70, 0x40, 0xFF, 0xFF, 0xFC, 0x88, 0x80, - 0x7E, 0x3F, 0x8F, 0xCF, 0xEE, 0x36, 0x1B, 0xFE, 0xFF, 0xE0, 0x38, 0x06, - 0x01, 0xBC, 0x7F, 0x9C, 0x76, 0x0D, 0x83, 0x71, 0xFF, 0xEE, 0xF0, 0x3F, - 0xBF, 0xF8, 0x78, 0x3C, 0x07, 0x05, 0xFE, 0x7E, 0x03, 0x80, 0xE0, 0x18, - 0xF6, 0x7F, 0xB8, 0xEC, 0x1B, 0x06, 0xE3, 0x9F, 0xF3, 0xFC, 0x3E, 0x3F, - 0xB0, 0xFF, 0xFF, 0xFE, 0x01, 0xFE, 0x7E, 0x1F, 0x3F, 0x30, 0x7E, 0x7E, - 0x30, 0x30, 0x30, 0x30, 0xFE, 0xFE, 0x3F, 0xBF, 0xF9, 0xD8, 0x6C, 0x37, - 0x39, 0xFC, 0x76, 0x03, 0x01, 0x8F, 0xC7, 0xC0, 0xE0, 0x70, 0x18, 0x0D, - 0xC7, 0xF3, 0x99, 0x8C, 0xC6, 0x63, 0x7B, 0xFD, 0xE0, 0x18, 0x18, 0x00, - 0x78, 0x78, 0x18, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x18, 0x60, 0x3F, 0xFC, - 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0F, 0xFF, 0x80, 0xE0, 0x70, 0x18, 0x0D, - 0xE6, 0xF3, 0xE1, 0xE0, 0xF8, 0x6E, 0x73, 0xF9, 0xE0, 0x78, 0x78, 0x18, - 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0xFD, 0x9F, 0xF9, 0x9B, - 0x33, 0x66, 0x6C, 0xCD, 0xBD, 0xFF, 0xBF, 0xEE, 0x7F, 0x98, 0xCC, 0x66, - 0x33, 0x1B, 0xDF, 0xEF, 0x3E, 0x3F, 0xB8, 0xF8, 0x3C, 0x1F, 0x1D, 0xFC, - 0x7C, 0xEF, 0x1F, 0xF9, 0xC3, 0xB0, 0x36, 0x06, 0xE1, 0xDF, 0xF3, 0x78, - 0x60, 0x0C, 0x03, 0xE0, 0x7C, 0x00, 0x1E, 0xEF, 0xFF, 0x87, 0x60, 0x6C, - 0x0D, 0xC3, 0x9F, 0xF0, 0xF6, 0x00, 0xC0, 0x18, 0x0F, 0x81, 0xF0, 0x77, - 0xBF, 0xCF, 0x06, 0x03, 0x01, 0x83, 0xF9, 0xFC, 0x3F, 0xFF, 0xC3, 0xFC, - 0x3F, 0xC3, 0xFF, 0xFC, 0x60, 0x60, 0x60, 0xFE, 0xFE, 0x60, 0x60, 0x60, - 0x61, 0x7F, 0x3E, 0xE7, 0x73, 0x98, 0xCC, 0x66, 0x33, 0x19, 0xFE, 0x7F, - 0xFB, 0xFF, 0x7C, 0xC6, 0x18, 0xC1, 0xB0, 0x36, 0x03, 0x80, 0x70, 0xF1, - 0xFE, 0x3D, 0xBB, 0x37, 0x63, 0xF8, 0x77, 0x0E, 0xE1, 0x8C, 0xF7, 0xFB, - 0xCD, 0x83, 0x83, 0xC3, 0xBB, 0xDF, 0xEF, 0xF3, 0xFC, 0xF6, 0x18, 0xCC, - 0x33, 0x07, 0x81, 0xE0, 0x30, 0x0C, 0x06, 0x0F, 0xC3, 0xF0, 0xFF, 0xFF, - 0x30, 0xC3, 0x0C, 0x7F, 0xFF, 0x37, 0x66, 0x66, 0xCC, 0x66, 0x66, 0x73, - 0xFF, 0xFF, 0xFF, 0xF0, 0xCE, 0x66, 0x66, 0x33, 0x66, 0x66, 0xEC, 0x70, - 0x7C, 0xF3, 0xC0, 0xC0}; - -const GFXglyph FreeMonoBold9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 3, 11, 11, 4, -10}, // 0x21 '!' - {5, 7, 5, 11, 2, -10}, // 0x22 '"' - {10, 8, 12, 11, 1, -10}, // 0x23 '#' - {22, 7, 14, 11, 2, -11}, // 0x24 '$' - {35, 7, 11, 11, 2, -10}, // 0x25 '%' - {45, 8, 10, 11, 1, -9}, // 0x26 '&' - {55, 3, 5, 11, 4, -10}, // 0x27 ''' - {57, 4, 14, 11, 5, -10}, // 0x28 '(' - {64, 4, 14, 11, 2, -10}, // 0x29 ')' - {71, 8, 7, 11, 2, -10}, // 0x2A '*' - {78, 8, 9, 11, 2, -8}, // 0x2B '+' - {87, 3, 5, 11, 3, -1}, // 0x2C ',' - {89, 9, 2, 11, 1, -5}, // 0x2D '-' - {92, 2, 2, 11, 4, -1}, // 0x2E '.' - {93, 7, 15, 11, 2, -12}, // 0x2F '/' - {107, 7, 12, 11, 2, -11}, // 0x30 '0' - {118, 7, 11, 11, 2, -10}, // 0x31 '1' - {128, 8, 12, 11, 1, -11}, // 0x32 '2' - {140, 8, 12, 11, 2, -11}, // 0x33 '3' - {152, 7, 10, 11, 2, -9}, // 0x34 '4' - {161, 9, 11, 11, 1, -10}, // 0x35 '5' - {174, 8, 12, 11, 2, -11}, // 0x36 '6' - {186, 8, 11, 11, 1, -10}, // 0x37 '7' - {197, 7, 12, 11, 2, -11}, // 0x38 '8' - {208, 8, 12, 11, 2, -11}, // 0x39 '9' - {220, 2, 8, 11, 4, -7}, // 0x3A ':' - {222, 3, 11, 11, 3, -7}, // 0x3B ';' - {227, 9, 8, 11, 1, -8}, // 0x3C '<' - {236, 9, 6, 11, 1, -7}, // 0x3D '=' - {243, 9, 8, 11, 1, -8}, // 0x3E '>' - {252, 8, 11, 11, 2, -10}, // 0x3F '?' - {263, 9, 15, 11, 1, -11}, // 0x40 '@' - {280, 11, 11, 11, 0, -10}, // 0x41 'A' - {296, 10, 11, 11, 1, -10}, // 0x42 'B' - {310, 9, 11, 11, 1, -10}, // 0x43 'C' - {323, 10, 11, 11, 0, -10}, // 0x44 'D' - {337, 9, 11, 11, 1, -10}, // 0x45 'E' - {350, 9, 11, 11, 1, -10}, // 0x46 'F' - {363, 10, 11, 11, 1, -10}, // 0x47 'G' - {377, 9, 11, 11, 1, -10}, // 0x48 'H' - {390, 6, 11, 11, 3, -10}, // 0x49 'I' - {399, 10, 11, 11, 1, -10}, // 0x4A 'J' - {413, 10, 11, 11, 1, -10}, // 0x4B 'K' - {427, 9, 11, 11, 1, -10}, // 0x4C 'L' - {440, 11, 11, 11, 0, -10}, // 0x4D 'M' - {456, 11, 11, 11, 0, -10}, // 0x4E 'N' - {472, 11, 11, 11, 0, -10}, // 0x4F 'O' - {488, 9, 11, 11, 1, -10}, // 0x50 'P' - {501, 11, 14, 11, 0, -10}, // 0x51 'Q' - {521, 9, 11, 11, 1, -10}, // 0x52 'R' - {534, 9, 11, 11, 1, -10}, // 0x53 'S' - {547, 9, 11, 11, 1, -10}, // 0x54 'T' - {560, 11, 11, 11, 0, -10}, // 0x55 'U' - {576, 11, 11, 11, 0, -10}, // 0x56 'V' - {592, 10, 11, 11, 0, -10}, // 0x57 'W' - {606, 10, 11, 11, 0, -10}, // 0x58 'X' - {620, 10, 11, 11, 0, -10}, // 0x59 'Y' - {634, 8, 11, 11, 2, -10}, // 0x5A 'Z' - {645, 4, 14, 11, 5, -10}, // 0x5B '[' - {652, 7, 15, 11, 2, -12}, // 0x5C '\' - {666, 4, 14, 11, 2, -10}, // 0x5D ']' - {673, 7, 6, 11, 2, -11}, // 0x5E '^' - {679, 11, 2, 11, 0, 3}, // 0x5F '_' - {682, 3, 3, 11, 3, -11}, // 0x60 '`' - {684, 9, 8, 11, 1, -7}, // 0x61 'a' - {693, 10, 11, 11, 0, -10}, // 0x62 'b' - {707, 9, 8, 11, 1, -7}, // 0x63 'c' - {716, 10, 11, 11, 1, -10}, // 0x64 'd' - {730, 9, 8, 11, 1, -7}, // 0x65 'e' - {739, 8, 11, 11, 2, -10}, // 0x66 'f' - {750, 9, 12, 11, 1, -7}, // 0x67 'g' - {764, 9, 11, 11, 1, -10}, // 0x68 'h' - {777, 8, 11, 11, 2, -10}, // 0x69 'i' - {788, 6, 15, 11, 2, -10}, // 0x6A 'j' - {800, 9, 11, 11, 1, -10}, // 0x6B 'k' - {813, 8, 11, 11, 2, -10}, // 0x6C 'l' - {824, 11, 8, 11, 0, -7}, // 0x6D 'm' - {835, 9, 8, 11, 1, -7}, // 0x6E 'n' - {844, 9, 8, 11, 1, -7}, // 0x6F 'o' - {853, 11, 12, 11, 0, -7}, // 0x70 'p' - {870, 11, 12, 11, 0, -7}, // 0x71 'q' - {887, 9, 8, 11, 1, -7}, // 0x72 'r' - {896, 8, 8, 11, 2, -7}, // 0x73 's' - {904, 8, 11, 11, 1, -10}, // 0x74 't' - {915, 9, 8, 11, 1, -7}, // 0x75 'u' - {924, 11, 8, 11, 0, -7}, // 0x76 'v' - {935, 11, 8, 11, 0, -7}, // 0x77 'w' - {946, 9, 8, 11, 1, -7}, // 0x78 'x' - {955, 10, 12, 11, 0, -7}, // 0x79 'y' - {970, 7, 8, 11, 2, -7}, // 0x7A 'z' - {977, 4, 14, 11, 3, -10}, // 0x7B '{' - {984, 2, 14, 11, 5, -10}, // 0x7C '|' - {988, 4, 14, 11, 4, -10}, // 0x7D '}' - {995, 9, 4, 11, 1, -6}}; // 0x7E '~' - -const GFXfont FreeMonoBold9pt7b PROGMEM = {(uint8_t *)FreeMonoBold9pt7bBitmaps, - (GFXglyph *)FreeMonoBold9pt7bGlyphs, - 0x20, 0x7E, 18}; - -// Approx. 1672 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h deleted file mode 100644 index 095fdd3..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h +++ /dev/null @@ -1,271 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique12pt7bBitmaps[] PROGMEM = { - 0x1C, 0xF3, 0xCE, 0x38, 0xE7, 0x1C, 0x61, 0x86, 0x00, 0x63, 0x8C, 0x00, - 0xE7, 0xE7, 0xE6, 0xC6, 0xC6, 0xC4, 0x84, 0x03, 0x30, 0x19, 0x81, 0xDC, - 0x0C, 0xE0, 0x66, 0x1F, 0xFC, 0xFF, 0xE1, 0x98, 0x0C, 0xC0, 0xEE, 0x06, - 0x70, 0xFF, 0xCF, 0xFE, 0x1D, 0xC0, 0xCC, 0x06, 0x60, 0x77, 0x03, 0x30, - 0x00, 0x01, 0x00, 0x70, 0x0C, 0x07, 0xF1, 0xFE, 0x71, 0xCC, 0x11, 0x80, - 0x3F, 0x03, 0xF0, 0x0F, 0x20, 0x6E, 0x0D, 0xC3, 0x3F, 0xE7, 0xF8, 0x1C, - 0x03, 0x00, 0x60, 0x0C, 0x00, 0x0E, 0x03, 0xE0, 0xC4, 0x10, 0x82, 0x30, - 0x7C, 0x07, 0x78, 0x7C, 0x7F, 0x19, 0xF0, 0x62, 0x08, 0x41, 0x18, 0x3E, - 0x03, 0x80, 0x07, 0xC1, 0xF8, 0x62, 0x0C, 0x01, 0x80, 0x38, 0x0F, 0x03, - 0xF7, 0x6F, 0xD8, 0xF3, 0x1E, 0x7F, 0xE7, 0xF8, 0xFF, 0x6D, 0x20, 0x06, - 0x1C, 0x70, 0xC3, 0x06, 0x18, 0x30, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, - 0x70, 0x60, 0xC1, 0x00, 0x0C, 0x18, 0x38, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x30, 0x61, 0xC3, 0x0E, 0x38, 0x61, 0xC2, 0x00, 0x06, 0x00, 0xC0, - 0x18, 0x3F, 0x7F, 0xFE, 0xFF, 0x07, 0x81, 0xF8, 0x77, 0x0C, 0x60, 0x03, - 0x00, 0x70, 0x07, 0x00, 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0xE0, 0x0C, - 0x00, 0xC0, 0x0C, 0x01, 0xC0, 0x18, 0x00, 0x1C, 0xE3, 0x1C, 0x63, 0x08, - 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x7F, 0x00, 0x00, 0x08, 0x00, 0x70, 0x01, - 0x80, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x0C, 0x00, 0x70, 0x03, 0x80, 0x0C, - 0x00, 0x70, 0x03, 0x80, 0x0C, 0x00, 0x70, 0x03, 0x80, 0x0C, 0x00, 0x70, - 0x03, 0x80, 0x0C, 0x00, 0x20, 0x00, 0x07, 0x83, 0xF8, 0xE3, 0x98, 0x37, - 0x06, 0xC0, 0xD8, 0x1B, 0x03, 0xE0, 0xF8, 0x1B, 0x03, 0x60, 0xEE, 0x38, - 0xFE, 0x0F, 0x00, 0x03, 0xC1, 0xF0, 0x7E, 0x0C, 0xC0, 0x38, 0x07, 0x00, - 0xC0, 0x18, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, 0x61, 0xFF, 0xFF, 0xF0, - 0x03, 0xE0, 0x3F, 0x83, 0x8E, 0x38, 0x31, 0x81, 0x80, 0x18, 0x01, 0xC0, - 0x1C, 0x01, 0xC0, 0x38, 0x03, 0x80, 0x38, 0x47, 0x87, 0x3F, 0xF3, 0xFF, - 0x80, 0x07, 0xC1, 0xFF, 0x18, 0x70, 0x03, 0x00, 0x30, 0x06, 0x07, 0xC0, - 0x7C, 0x00, 0xE0, 0x06, 0x00, 0x60, 0x06, 0xC1, 0xCF, 0xF8, 0x7E, 0x00, - 0x01, 0xE0, 0x3C, 0x0F, 0x03, 0x60, 0xCC, 0x3B, 0x8E, 0x63, 0x8C, 0x61, - 0x9F, 0xFB, 0xFF, 0x01, 0x81, 0xF8, 0x3F, 0x00, 0x0F, 0xF1, 0xFE, 0x18, - 0x01, 0x80, 0x18, 0x03, 0xF8, 0x3F, 0xC3, 0x8E, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x0C, 0xC1, 0xCF, 0xF8, 0x7E, 0x00, 0x03, 0xE1, 0xFC, 0x70, 0x1C, - 0x03, 0x00, 0xC0, 0x1B, 0xC7, 0xFC, 0xF3, 0x98, 0x33, 0x06, 0x60, 0xCE, - 0x30, 0xFC, 0x0F, 0x00, 0xFF, 0xFF, 0xFB, 0x07, 0x60, 0xC0, 0x38, 0x06, - 0x01, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x70, 0x1C, 0x03, 0x80, 0x60, 0x08, - 0x00, 0x07, 0x83, 0xF8, 0xE3, 0xB0, 0x36, 0x06, 0xC0, 0xDC, 0x31, 0xFC, - 0x3F, 0x8C, 0x3B, 0x03, 0x60, 0x6C, 0x39, 0xFE, 0x1F, 0x00, 0x07, 0x81, - 0xF8, 0x63, 0x98, 0x33, 0x06, 0x60, 0xCE, 0x79, 0xFF, 0x1E, 0xC0, 0x18, - 0x06, 0x01, 0xC0, 0x71, 0xFC, 0x3E, 0x00, 0x19, 0xCC, 0x00, 0x00, 0x00, - 0x67, 0x30, 0x06, 0x1C, 0x30, 0x00, 0x00, 0x00, 0x00, 0x38, 0x71, 0xC3, - 0x0E, 0x18, 0x20, 0x00, 0x00, 0x18, 0x03, 0xC0, 0x7C, 0x1F, 0x03, 0xE0, - 0x3E, 0x00, 0x7C, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0x80, 0x08, 0x7F, 0xFB, - 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFB, 0xFF, 0xC0, 0x30, 0x01, - 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0x7C, 0x1F, 0x03, 0xE0, 0x7C, - 0x07, 0x80, 0x20, 0x00, 0x3E, 0x7F, 0xB0, 0xF8, 0x30, 0x18, 0x1C, 0x1C, - 0x3C, 0x38, 0x18, 0x00, 0x06, 0x07, 0x03, 0x00, 0x03, 0xC0, 0x7E, 0x0C, - 0x71, 0x83, 0x30, 0x33, 0x0F, 0x33, 0xE6, 0x76, 0x6C, 0x66, 0xC6, 0x6C, - 0x6C, 0xFC, 0xC7, 0xEC, 0x00, 0xC0, 0x0C, 0x00, 0xE3, 0x07, 0xF0, 0x3C, - 0x00, 0x07, 0xF0, 0x1F, 0xE0, 0x07, 0xC0, 0x1F, 0x80, 0x3B, 0x00, 0xE7, - 0x01, 0x8E, 0x07, 0x1C, 0x1F, 0xF8, 0x3F, 0xF0, 0xE0, 0x71, 0x80, 0xEF, - 0xC7, 0xFF, 0x8F, 0xC0, 0x3F, 0xF1, 0xFF, 0xC3, 0x06, 0x38, 0x31, 0xC1, - 0x8C, 0x18, 0x7F, 0xC3, 0xFE, 0x38, 0x39, 0xC0, 0xCC, 0x06, 0x60, 0x6F, - 0xFF, 0x7F, 0xE0, 0x03, 0xEC, 0x3F, 0xF1, 0xC3, 0x8C, 0x06, 0x60, 0x19, - 0x80, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x03, 0x3C, 0x1C, - 0x7F, 0xE0, 0x7E, 0x00, 0x3F, 0xE1, 0xFF, 0x87, 0x0C, 0x30, 0x31, 0x81, - 0x8C, 0x0C, 0xE0, 0x67, 0x03, 0x30, 0x31, 0x81, 0x8C, 0x0C, 0xE1, 0xCF, - 0xFC, 0x7F, 0x80, 0x1F, 0xFE, 0x3F, 0xFC, 0x38, 0x38, 0x70, 0x70, 0xCC, - 0xC1, 0x98, 0x03, 0xF0, 0x0F, 0xE0, 0x1D, 0x80, 0x31, 0x18, 0x60, 0x70, - 0xC0, 0xE7, 0xFF, 0x9F, 0xFF, 0x00, 0x1F, 0xFF, 0x1F, 0xFE, 0x0E, 0x06, - 0x0C, 0x0E, 0x0C, 0xC4, 0x0C, 0xC0, 0x1F, 0xC0, 0x1F, 0xC0, 0x19, 0xC0, - 0x19, 0x80, 0x18, 0x00, 0x38, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x07, 0xEC, - 0x7F, 0xF3, 0x83, 0x9C, 0x06, 0x60, 0x19, 0x80, 0x0C, 0x00, 0x30, 0xFE, - 0xC3, 0xFB, 0x01, 0xCC, 0x07, 0x3C, 0x38, 0x7F, 0xE0, 0x7E, 0x00, 0x0F, - 0xBF, 0x1F, 0xBE, 0x0E, 0x0C, 0x0C, 0x0C, 0x0C, 0x1C, 0x0C, 0x1C, 0x1F, - 0xF8, 0x1F, 0xF8, 0x18, 0x18, 0x18, 0x38, 0x18, 0x38, 0x38, 0x30, 0x7C, - 0xFC, 0xFC, 0xF8, 0x3F, 0xF3, 0xFF, 0x03, 0x00, 0x70, 0x07, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xC0, 0xFF, 0xCF, 0xFC, - 0x03, 0xFF, 0x03, 0xFF, 0x00, 0x38, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, - 0x00, 0x70, 0x20, 0x70, 0x60, 0x60, 0x60, 0x60, 0x60, 0xE0, 0xE1, 0xC0, - 0xFF, 0x80, 0x3F, 0x00, 0x1F, 0x9F, 0x1F, 0x9E, 0x0E, 0x38, 0x0C, 0x70, - 0x0C, 0xE0, 0x0F, 0xC0, 0x1F, 0xC0, 0x1F, 0xE0, 0x1C, 0xE0, 0x18, 0x60, - 0x18, 0x70, 0x38, 0x70, 0xFE, 0x3C, 0xFC, 0x3C, 0x3F, 0xC1, 0xFE, 0x01, - 0x80, 0x1C, 0x00, 0xE0, 0x06, 0x00, 0x30, 0x01, 0x80, 0x1C, 0x18, 0xE0, - 0xC6, 0x06, 0x30, 0x7F, 0xFF, 0xFF, 0xF8, 0x1E, 0x07, 0x87, 0x81, 0xE0, - 0xF0, 0xF0, 0x7C, 0x7C, 0x1F, 0x1F, 0x06, 0xCF, 0x81, 0xBF, 0x60, 0xEF, - 0x98, 0x3B, 0xEE, 0x0C, 0x73, 0x83, 0x1C, 0xC0, 0xC0, 0x30, 0xFC, 0x7E, - 0x3F, 0x1F, 0x80, 0x3C, 0x3F, 0x3E, 0x3F, 0x1E, 0x0C, 0x1F, 0x1C, 0x1F, - 0x1C, 0x1B, 0x98, 0x3B, 0x98, 0x3B, 0x98, 0x31, 0xF8, 0x31, 0xF8, 0x30, - 0xF0, 0x70, 0xF0, 0xFC, 0x70, 0xF8, 0x70, 0x03, 0xE0, 0x3F, 0xE1, 0xC3, - 0x8C, 0x07, 0x60, 0x0D, 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1B, 0x00, - 0x6E, 0x03, 0x1C, 0x38, 0x7F, 0xC0, 0x7C, 0x00, 0x3F, 0xE1, 0xFF, 0x83, - 0x0E, 0x38, 0x31, 0xC1, 0x8C, 0x0C, 0x60, 0xC3, 0xFC, 0x3F, 0xC1, 0xC0, - 0x0C, 0x00, 0x60, 0x0F, 0xF0, 0x7F, 0x80, 0x03, 0xE0, 0x3F, 0xE1, 0xC3, - 0x8C, 0x07, 0x60, 0x0D, 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1B, 0x00, - 0x6E, 0x03, 0x1C, 0x38, 0x7F, 0xC0, 0xFC, 0x03, 0x02, 0x1F, 0xFC, 0xFF, - 0xE0, 0x1F, 0xF0, 0x3F, 0xF0, 0x38, 0x70, 0x60, 0x60, 0xC0, 0xC1, 0x87, - 0x07, 0xFC, 0x0F, 0xF0, 0x18, 0xF0, 0x30, 0xE0, 0x60, 0xC1, 0xC1, 0xCF, - 0xE1, 0xFF, 0xC3, 0xC0, 0x0F, 0xB1, 0xFF, 0x30, 0xE6, 0x06, 0x60, 0x67, - 0x80, 0x7F, 0x01, 0xFC, 0x01, 0xC4, 0x0C, 0xC0, 0xCE, 0x18, 0xFF, 0x8B, - 0xE0, 0x7F, 0xFB, 0xFF, 0xD9, 0xCF, 0xCE, 0x7C, 0x63, 0x63, 0x18, 0x18, - 0x01, 0xC0, 0x0E, 0x00, 0x60, 0x03, 0x00, 0x18, 0x0F, 0xF8, 0x7F, 0xC0, - 0x7E, 0xFF, 0xF3, 0xF3, 0x03, 0x1C, 0x0C, 0x60, 0x31, 0x81, 0xC6, 0x06, - 0x38, 0x18, 0xE0, 0x63, 0x03, 0x8C, 0x0C, 0x30, 0x70, 0x7F, 0x80, 0xF8, - 0x00, 0xFC, 0x7F, 0xF8, 0xFD, 0xC0, 0x61, 0x81, 0xC3, 0x87, 0x07, 0x0C, - 0x0E, 0x38, 0x0C, 0x60, 0x19, 0xC0, 0x3F, 0x00, 0x7C, 0x00, 0xF8, 0x00, - 0xE0, 0x01, 0x80, 0x00, 0x7E, 0x7E, 0xFC, 0xFD, 0xC0, 0x73, 0x9C, 0xE7, - 0x79, 0x8E, 0xF7, 0x1B, 0xEE, 0x36, 0xD8, 0x7D, 0xF0, 0xF3, 0xE1, 0xE7, - 0x83, 0x8F, 0x07, 0x1E, 0x1C, 0x38, 0x00, 0x1F, 0x1F, 0x1F, 0x1F, 0x0E, - 0x1C, 0x07, 0x38, 0x07, 0x70, 0x03, 0xE0, 0x03, 0xC0, 0x03, 0xC0, 0x07, - 0xE0, 0x0E, 0xE0, 0x1C, 0x70, 0x38, 0x70, 0xFC, 0xFC, 0xFC, 0xFC, 0xF8, - 0xFF, 0xC7, 0xCC, 0x38, 0x73, 0x83, 0x9C, 0x0F, 0xC0, 0x7C, 0x01, 0xC0, - 0x0C, 0x00, 0x60, 0x03, 0x00, 0x38, 0x0F, 0xF8, 0x7F, 0x80, 0x0F, 0xF8, - 0x7F, 0xE1, 0xC7, 0x86, 0x1C, 0x18, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, - 0x0E, 0x00, 0x70, 0xC3, 0x83, 0x1C, 0x1C, 0x7F, 0xF3, 0xFF, 0x80, 0x0F, - 0x87, 0xC3, 0x03, 0x81, 0xC0, 0xC0, 0x60, 0x30, 0x38, 0x1C, 0x0C, 0x06, - 0x03, 0x03, 0x81, 0xC0, 0xC0, 0x60, 0x3E, 0x3F, 0x00, 0x41, 0xC3, 0x83, - 0x07, 0x0E, 0x1C, 0x18, 0x38, 0x70, 0xE0, 0xC1, 0xC3, 0x83, 0x06, 0x0E, - 0x1C, 0x18, 0x20, 0x1F, 0x0F, 0x80, 0xC0, 0xE0, 0x70, 0x30, 0x18, 0x0C, - 0x0E, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xE0, 0x70, 0x30, 0x18, 0x7C, 0x3E, - 0x00, 0x02, 0x01, 0x80, 0xF0, 0x7E, 0x3B, 0x9C, 0x7E, 0x1F, 0x03, 0xFF, - 0xFF, 0xFF, 0xFC, 0xCE, 0x73, 0x1F, 0xC3, 0xFE, 0x00, 0x60, 0x06, 0x0F, - 0xE3, 0xFE, 0x70, 0xCC, 0x0C, 0xC3, 0xCF, 0xFF, 0x7F, 0xF0, 0x1E, 0x00, - 0x3C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xDF, 0x81, 0xFF, 0x83, 0xC3, 0x8F, - 0x03, 0x1C, 0x06, 0x38, 0x0C, 0x70, 0x18, 0xE0, 0x63, 0xE1, 0x9F, 0xFE, - 0x3D, 0xF8, 0x00, 0x0F, 0xF3, 0xFF, 0x30, 0x76, 0x07, 0xE0, 0x6C, 0x00, - 0xC0, 0x0C, 0x00, 0xE0, 0x67, 0xFE, 0x3F, 0x80, 0x00, 0x3C, 0x00, 0xF0, - 0x01, 0xC0, 0x06, 0x07, 0xD8, 0x7F, 0xE3, 0x0F, 0x98, 0x1E, 0x60, 0x73, - 0x01, 0xCC, 0x07, 0x30, 0x3C, 0xE1, 0xF1, 0xFF, 0xE3, 0xF7, 0x80, 0x0F, - 0xC1, 0xFE, 0x78, 0x76, 0x03, 0xFF, 0xFF, 0xFF, 0xC0, 0x0C, 0x00, 0xE0, - 0xE7, 0xFE, 0x1F, 0x80, 0x00, 0xFC, 0x07, 0xF8, 0x0C, 0x00, 0x38, 0x01, - 0xFF, 0x07, 0xFE, 0x01, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x18, 0x00, 0x30, - 0x00, 0x60, 0x01, 0xC0, 0x1F, 0xF8, 0x3F, 0xF0, 0x00, 0x0F, 0xBC, 0x7F, - 0xF3, 0x0F, 0x18, 0x1C, 0xC0, 0x73, 0x01, 0x8C, 0x0E, 0x30, 0x38, 0xE3, - 0xE1, 0xFF, 0x83, 0xEC, 0x00, 0x30, 0x01, 0xC0, 0x06, 0x07, 0xF0, 0x1F, - 0x80, 0x1E, 0x01, 0xF0, 0x03, 0x00, 0x18, 0x00, 0xDE, 0x0F, 0xF8, 0x78, - 0xC3, 0x86, 0x18, 0x30, 0xC1, 0x8E, 0x1C, 0x70, 0xE3, 0x06, 0x7E, 0xFF, - 0xE7, 0xE0, 0x03, 0x80, 0x70, 0x00, 0x0F, 0xC1, 0xF0, 0x06, 0x00, 0xC0, - 0x38, 0x07, 0x00, 0xC0, 0x18, 0x03, 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x70, - 0x07, 0x00, 0x00, 0xFF, 0x1F, 0xF0, 0x07, 0x00, 0x70, 0x06, 0x00, 0x60, - 0x06, 0x00, 0xE0, 0x0E, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x1C, 0x03, 0x87, - 0xF0, 0xFE, 0x00, 0x1E, 0x00, 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0C, 0xFC, - 0x33, 0xE0, 0xDE, 0x07, 0xE0, 0x1F, 0x00, 0x7C, 0x01, 0xF8, 0x06, 0xF0, - 0x39, 0xC3, 0xE7, 0xEF, 0x1F, 0x80, 0x0F, 0x81, 0xF0, 0x06, 0x01, 0xC0, - 0x38, 0x06, 0x00, 0xC0, 0x18, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, 0x61, - 0xFF, 0xFF, 0xF8, 0x3F, 0xBC, 0x7F, 0xFC, 0xF3, 0x98, 0xC6, 0x33, 0x9C, - 0xE7, 0x39, 0xCC, 0x63, 0x18, 0xC6, 0x31, 0x8D, 0xF7, 0xBF, 0xEF, 0x78, - 0x3D, 0xE1, 0xFF, 0x8F, 0x8C, 0x38, 0x61, 0x83, 0x0C, 0x18, 0xE1, 0xC7, - 0x0E, 0x30, 0x67, 0xEF, 0xFE, 0x7E, 0x07, 0xC1, 0xFE, 0x38, 0x76, 0x03, - 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x06, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x1E, - 0xFC, 0x1F, 0xFE, 0x0F, 0x87, 0x0F, 0x03, 0x0E, 0x03, 0x0E, 0x03, 0x0E, - 0x07, 0x0E, 0x06, 0x1F, 0x0C, 0x1F, 0xF8, 0x19, 0xF0, 0x18, 0x00, 0x18, - 0x00, 0x38, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0x0F, 0xDE, 0x3F, 0xFC, 0xC3, - 0xE3, 0x03, 0x84, 0x07, 0x18, 0x0E, 0x30, 0x1C, 0x60, 0x78, 0xE1, 0xE0, - 0xFF, 0xC0, 0xF9, 0x80, 0x03, 0x00, 0x0E, 0x00, 0x1C, 0x01, 0xFC, 0x03, - 0xF8, 0x1E, 0x78, 0x7F, 0xF0, 0x7C, 0xC3, 0xC0, 0x0E, 0x00, 0x30, 0x00, - 0xC0, 0x03, 0x00, 0x1C, 0x03, 0xFF, 0x0F, 0xFC, 0x00, 0x07, 0xF1, 0xFF, - 0x30, 0x73, 0x86, 0x3F, 0x81, 0xFE, 0x03, 0xE6, 0x06, 0xE0, 0xEF, 0xFC, - 0xFF, 0x00, 0x0C, 0x07, 0x01, 0x83, 0xFF, 0xFF, 0xCE, 0x03, 0x00, 0xC0, - 0x30, 0x1C, 0x07, 0x01, 0x83, 0x7F, 0xCF, 0xC0, 0xF0, 0xFF, 0x1F, 0x60, - 0x76, 0x07, 0x60, 0x76, 0x06, 0x60, 0x66, 0x0E, 0x61, 0xE7, 0xFF, 0x3E, - 0xF0, 0x7E, 0x7E, 0xFC, 0xFC, 0xE0, 0xC0, 0xC3, 0x81, 0x86, 0x03, 0x98, - 0x07, 0x70, 0x06, 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x38, 0x00, 0xF8, 0x7F, - 0xE3, 0xE6, 0x63, 0x1B, 0xDC, 0x6F, 0x61, 0xFF, 0x87, 0xFC, 0x1E, 0xF0, - 0x73, 0x81, 0xCE, 0x06, 0x38, 0x00, 0x3E, 0x7C, 0xF9, 0xF1, 0xE7, 0x03, - 0xF8, 0x07, 0xC0, 0x1F, 0x01, 0xFC, 0x0F, 0x38, 0x78, 0xFB, 0xF7, 0xEF, - 0x9F, 0x80, 0x1F, 0x1F, 0x3E, 0x1F, 0x1C, 0x1C, 0x0C, 0x18, 0x0E, 0x38, - 0x0E, 0x70, 0x06, 0x60, 0x07, 0xE0, 0x07, 0xC0, 0x07, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x07, 0x00, 0x0E, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x1F, 0xF1, - 0xFF, 0x38, 0xE3, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC6, 0x38, 0x67, - 0xFE, 0x7F, 0xE0, 0x01, 0xC0, 0xF0, 0x70, 0x18, 0x06, 0x03, 0x80, 0xE0, - 0x30, 0x1C, 0x3E, 0x0F, 0x00, 0x60, 0x18, 0x06, 0x03, 0x80, 0xC0, 0x30, - 0x0F, 0x01, 0xC0, 0x0C, 0x71, 0xC7, 0x18, 0x63, 0x8E, 0x30, 0xC3, 0x1C, - 0x71, 0x86, 0x38, 0xE3, 0x04, 0x00, 0x0E, 0x07, 0x80, 0xC0, 0x60, 0x70, - 0x30, 0x18, 0x0C, 0x06, 0x01, 0xC1, 0xE1, 0xC0, 0xC0, 0xE0, 0x70, 0x30, - 0x38, 0x78, 0x38, 0x00, 0x3C, 0x27, 0xE6, 0xEF, 0xCC, 0x38}; - -const GFXglyph FreeMonoBoldOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 6, 15, 14, 6, -14}, // 0x21 '!' - {12, 8, 7, 14, 6, -13}, // 0x22 '"' - {19, 13, 18, 14, 2, -15}, // 0x23 '#' - {49, 11, 20, 14, 3, -16}, // 0x24 '$' - {77, 11, 15, 14, 3, -14}, // 0x25 '%' - {98, 11, 13, 14, 2, -12}, // 0x26 '&' - {116, 3, 7, 14, 8, -13}, // 0x27 ''' - {119, 7, 19, 14, 7, -14}, // 0x28 '(' - {136, 7, 19, 14, 2, -14}, // 0x29 ')' - {153, 11, 10, 14, 4, -14}, // 0x2A '*' - {167, 12, 13, 14, 3, -12}, // 0x2B '+' - {187, 6, 7, 14, 3, -2}, // 0x2C ',' - {193, 13, 2, 14, 2, -7}, // 0x2D '-' - {197, 3, 3, 14, 6, -2}, // 0x2E '.' - {199, 14, 20, 14, 2, -16}, // 0x2F '/' - {234, 11, 15, 14, 3, -14}, // 0x30 '0' - {255, 11, 15, 14, 2, -14}, // 0x31 '1' - {276, 13, 15, 14, 1, -14}, // 0x32 '2' - {301, 12, 15, 14, 2, -14}, // 0x33 '3' - {324, 11, 14, 14, 3, -13}, // 0x34 '4' - {344, 12, 15, 14, 2, -14}, // 0x35 '5' - {367, 11, 15, 14, 4, -14}, // 0x36 '6' - {388, 11, 15, 14, 4, -14}, // 0x37 '7' - {409, 11, 15, 14, 3, -14}, // 0x38 '8' - {430, 11, 15, 14, 3, -14}, // 0x39 '9' - {451, 5, 11, 14, 5, -10}, // 0x3A ':' - {458, 7, 15, 14, 3, -10}, // 0x3B ';' - {472, 13, 11, 14, 2, -11}, // 0x3C '<' - {490, 13, 7, 14, 2, -9}, // 0x3D '=' - {502, 13, 11, 14, 2, -11}, // 0x3E '>' - {520, 9, 14, 14, 5, -13}, // 0x3F '?' - {536, 12, 19, 14, 2, -14}, // 0x40 '@' - {565, 15, 14, 14, 0, -13}, // 0x41 'A' - {592, 13, 14, 14, 1, -13}, // 0x42 'B' - {615, 14, 14, 14, 2, -13}, // 0x43 'C' - {640, 13, 14, 14, 1, -13}, // 0x44 'D' - {663, 15, 14, 14, 0, -13}, // 0x45 'E' - {690, 16, 14, 14, 0, -13}, // 0x46 'F' - {718, 14, 14, 14, 1, -13}, // 0x47 'G' - {743, 16, 14, 14, 0, -13}, // 0x48 'H' - {771, 12, 14, 14, 2, -13}, // 0x49 'I' - {792, 16, 14, 14, 0, -13}, // 0x4A 'J' - {820, 16, 14, 14, 0, -13}, // 0x4B 'K' - {848, 13, 14, 14, 1, -13}, // 0x4C 'L' - {871, 18, 14, 14, 0, -13}, // 0x4D 'M' - {903, 16, 14, 14, 1, -13}, // 0x4E 'N' - {931, 14, 14, 14, 1, -13}, // 0x4F 'O' - {956, 13, 14, 14, 1, -13}, // 0x50 'P' - {979, 14, 17, 14, 1, -13}, // 0x51 'Q' - {1009, 15, 14, 14, 0, -13}, // 0x52 'R' - {1036, 12, 14, 14, 3, -13}, // 0x53 'S' - {1057, 13, 14, 14, 2, -13}, // 0x54 'T' - {1080, 14, 14, 14, 2, -13}, // 0x55 'U' - {1105, 15, 14, 14, 1, -13}, // 0x56 'V' - {1132, 15, 14, 14, 1, -13}, // 0x57 'W' - {1159, 16, 14, 14, 0, -13}, // 0x58 'X' - {1187, 13, 14, 14, 2, -13}, // 0x59 'Y' - {1210, 14, 14, 14, 1, -13}, // 0x5A 'Z' - {1235, 9, 19, 14, 5, -14}, // 0x5B '[' - {1257, 7, 20, 14, 5, -16}, // 0x5C '\' - {1275, 9, 19, 14, 3, -14}, // 0x5D ']' - {1297, 10, 8, 14, 4, -15}, // 0x5E '^' - {1307, 15, 2, 14, -1, 4}, // 0x5F '_' - {1311, 4, 4, 14, 7, -15}, // 0x60 '`' - {1313, 12, 11, 14, 2, -10}, // 0x61 'a' - {1330, 15, 15, 14, -1, -14}, // 0x62 'b' - {1359, 12, 11, 14, 2, -10}, // 0x63 'c' - {1376, 14, 15, 14, 2, -14}, // 0x64 'd' - {1403, 12, 11, 14, 2, -10}, // 0x65 'e' - {1420, 15, 15, 14, 2, -14}, // 0x66 'f' - {1449, 14, 16, 14, 2, -10}, // 0x67 'g' - {1477, 13, 15, 14, 1, -14}, // 0x68 'h' - {1502, 11, 14, 14, 2, -13}, // 0x69 'i' - {1522, 12, 19, 14, 1, -13}, // 0x6A 'j' - {1551, 14, 15, 14, 1, -14}, // 0x6B 'k' - {1578, 11, 15, 14, 2, -14}, // 0x6C 'l' - {1599, 15, 11, 14, 0, -10}, // 0x6D 'm' - {1620, 13, 11, 14, 1, -10}, // 0x6E 'n' - {1638, 12, 11, 14, 2, -10}, // 0x6F 'o' - {1655, 16, 16, 14, -1, -10}, // 0x70 'p' - {1687, 15, 16, 14, 1, -10}, // 0x71 'q' - {1717, 14, 11, 14, 1, -10}, // 0x72 'r' - {1737, 12, 11, 14, 2, -10}, // 0x73 's' - {1754, 10, 14, 14, 2, -13}, // 0x74 't' - {1772, 12, 11, 14, 2, -10}, // 0x75 'u' - {1789, 15, 11, 14, 1, -10}, // 0x76 'v' - {1810, 14, 11, 14, 2, -10}, // 0x77 'w' - {1830, 14, 11, 14, 1, -10}, // 0x78 'x' - {1850, 16, 16, 14, 0, -10}, // 0x79 'y' - {1882, 12, 11, 14, 2, -10}, // 0x7A 'z' - {1899, 10, 19, 14, 4, -14}, // 0x7B '{' - {1923, 6, 19, 14, 5, -14}, // 0x7C '|' - {1938, 9, 19, 14, 3, -14}, // 0x7D '}' - {1960, 12, 4, 14, 3, -7}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique12pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique12pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique12pt7bGlyphs, 0x20, 0x7E, 24}; - -// Approx. 2638 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h deleted file mode 100644 index 0400f25..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h +++ /dev/null @@ -1,462 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique18pt7bBitmaps[] PROGMEM = { - 0x0F, 0x07, 0xC7, 0xE3, 0xF1, 0xF0, 0xF8, 0xFC, 0x7C, 0x3E, 0x1F, 0x0F, - 0x07, 0x87, 0xC3, 0xC1, 0xE0, 0x60, 0x00, 0x38, 0x3E, 0x1F, 0x0F, 0x83, - 0x80, 0xF8, 0xFF, 0x0E, 0xF1, 0xEF, 0x1E, 0xE1, 0xCE, 0x1C, 0xC1, 0xCC, - 0x18, 0xC1, 0x88, 0x18, 0x00, 0xE3, 0x80, 0x79, 0xE0, 0x1C, 0x70, 0x07, - 0x1C, 0x03, 0xCF, 0x00, 0xF3, 0xC0, 0x38, 0xE0, 0x7F, 0xFF, 0x3F, 0xFF, - 0xCF, 0xFF, 0xF3, 0xFF, 0xF8, 0x3C, 0xF0, 0x0F, 0x3C, 0x03, 0x8E, 0x0F, - 0xFF, 0xE3, 0xFF, 0xFC, 0xFF, 0xFF, 0x3F, 0xFF, 0x83, 0xCF, 0x00, 0xF3, - 0xC0, 0x38, 0xE0, 0x1E, 0x78, 0x07, 0x9E, 0x01, 0xC7, 0x00, 0x71, 0xC0, - 0x00, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x07, 0x80, 0x03, 0xF0, 0x03, 0xFF, - 0x81, 0xFF, 0xF0, 0xFF, 0xF8, 0x3C, 0x1E, 0x1E, 0x07, 0x87, 0x80, 0x01, - 0xF0, 0x00, 0x7F, 0xC0, 0x0F, 0xFC, 0x01, 0xFF, 0x80, 0x07, 0xF0, 0x00, - 0x3C, 0x70, 0x0F, 0x3C, 0x03, 0xCF, 0x83, 0xE3, 0xFF, 0xF8, 0xFF, 0xFC, - 0x3F, 0xFE, 0x0C, 0xFE, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, - 0xF0, 0x00, 0x18, 0x00, 0x03, 0xC0, 0x0F, 0xE0, 0x1C, 0x70, 0x30, 0x30, - 0x30, 0x30, 0x30, 0x70, 0x38, 0xE0, 0x1F, 0xC3, 0x0F, 0x1F, 0x01, 0xFC, - 0x0F, 0xE0, 0x7F, 0x00, 0xF8, 0xF0, 0x83, 0xF8, 0x07, 0x1C, 0x0E, 0x0C, - 0x0C, 0x0C, 0x0C, 0x1C, 0x0E, 0x38, 0x07, 0xF0, 0x03, 0xC0, 0x00, 0x7A, - 0x01, 0xFF, 0x03, 0xFF, 0x07, 0xFE, 0x0F, 0x9C, 0x0F, 0x00, 0x0F, 0x00, - 0x0F, 0x00, 0x07, 0x80, 0x1F, 0x80, 0x3F, 0xC0, 0x7F, 0xCF, 0x79, 0xFF, - 0xF1, 0xFE, 0xF1, 0xFC, 0xF0, 0xF8, 0xFF, 0xFE, 0xFF, 0xFE, 0x7F, 0xFE, - 0x1F, 0xBC, 0x7B, 0xFD, 0xEF, 0x73, 0x9C, 0xC6, 0x00, 0x01, 0xC0, 0xF0, - 0x3C, 0x1E, 0x0F, 0x03, 0xC1, 0xE0, 0x70, 0x3C, 0x0F, 0x07, 0x81, 0xE0, - 0x78, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3E, - 0x07, 0x81, 0xE0, 0x7C, 0x1F, 0x03, 0x80, 0x07, 0x03, 0xC0, 0xF8, 0x3E, - 0x07, 0x81, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, - 0xF0, 0x78, 0x1E, 0x07, 0x81, 0xC0, 0xF0, 0x3C, 0x1E, 0x07, 0x83, 0xC1, - 0xE0, 0x78, 0x3C, 0x0E, 0x00, 0x00, 0xC0, 0x03, 0xC0, 0x07, 0x00, 0x0E, - 0x02, 0x3C, 0x0F, 0xFF, 0xFF, 0xFF, 0xBF, 0xFE, 0x1F, 0xF0, 0x1F, 0x80, - 0x7F, 0x81, 0xEF, 0x07, 0x8F, 0x0F, 0x1E, 0x08, 0x10, 0x00, 0x00, 0x70, - 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x38, 0x00, - 0x1E, 0x03, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x0F, - 0x00, 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x07, 0x80, - 0x01, 0xC0, 0x00, 0x70, 0x00, 0x0F, 0x87, 0x87, 0x83, 0x83, 0xC1, 0xC1, - 0xC0, 0xC0, 0xE0, 0x60, 0x00, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, 0x38, 0x00, 0x03, 0xC0, - 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, - 0x78, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, - 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0xFC, 0x01, 0xFF, - 0x01, 0xFF, 0xC1, 0xFF, 0xE1, 0xF1, 0xF9, 0xE0, 0x7C, 0xF0, 0x1E, 0xF0, - 0x0F, 0x78, 0x07, 0xB8, 0x03, 0x9C, 0x03, 0xDE, 0x01, 0xCF, 0x00, 0xE7, - 0x00, 0x73, 0xC0, 0x79, 0xE0, 0x3C, 0xF0, 0x1C, 0x78, 0x1E, 0x3E, 0x1E, - 0x0F, 0xFF, 0x07, 0xFF, 0x01, 0xFF, 0x00, 0x7E, 0x00, 0x00, 0x7C, 0x03, - 0xF8, 0x0F, 0xE0, 0x7F, 0xC0, 0xF7, 0x81, 0x8F, 0x00, 0x1C, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, 0x00, 0x3C, 0x00, - 0x78, 0x00, 0xF0, 0x01, 0xC0, 0x03, 0x81, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xEF, 0xFF, 0xC0, 0x00, 0x1F, 0x00, 0x07, 0xFC, 0x00, 0xFF, 0xE0, 0x1F, - 0xFF, 0x03, 0xC1, 0xF0, 0x78, 0x0F, 0x07, 0x80, 0xF0, 0x70, 0x0F, 0x00, - 0x01, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x3F, 0x00, - 0x07, 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x07, 0xE0, 0x01, 0xF8, 0x00, - 0x3F, 0x03, 0x87, 0xFF, 0xF8, 0x7F, 0xFF, 0x87, 0xFF, 0xF8, 0xFF, 0xFF, - 0x00, 0x00, 0xFE, 0x00, 0xFF, 0xC0, 0x7F, 0xF8, 0x3F, 0xFF, 0x0E, 0x07, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x1F, 0xC0, - 0x0F, 0xE0, 0x03, 0xF0, 0x00, 0xFF, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, - 0x1E, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xF1, 0xFF, 0xF8, 0xFF, 0xFC, - 0x3F, 0xFE, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0x00, 0x3F, 0x00, 0x7F, 0x00, - 0xFE, 0x00, 0xFE, 0x01, 0xEE, 0x03, 0xDE, 0x07, 0x9E, 0x0F, 0x1C, 0x1E, - 0x1C, 0x3C, 0x3C, 0x78, 0x3C, 0xFF, 0xFE, 0xFF, 0xFE, 0xFF, 0xFE, 0xFF, - 0xFC, 0x00, 0x70, 0x03, 0xFC, 0x07, 0xFC, 0x07, 0xFC, 0x07, 0xF8, 0x07, - 0xFF, 0xC1, 0xFF, 0xF0, 0x7F, 0xFC, 0x3F, 0xFE, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xE0, 0x00, 0x3B, 0xE0, 0x1F, 0xFE, 0x07, 0xFF, 0xC1, 0xFF, 0xF8, - 0x78, 0x3E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, - 0x0F, 0x18, 0x0F, 0xCF, 0xFF, 0xE3, 0xFF, 0xF0, 0x7F, 0xF8, 0x07, 0xF0, - 0x00, 0x00, 0x0F, 0xC0, 0x0F, 0xFC, 0x03, 0xFF, 0x81, 0xFF, 0xE0, 0x7F, - 0x00, 0x1F, 0x80, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x9F, - 0x01, 0xEF, 0xF0, 0x3F, 0xFF, 0x0F, 0xFF, 0xF1, 0xFC, 0x3E, 0x3E, 0x03, - 0xC7, 0x80, 0x78, 0xF0, 0x0F, 0x1E, 0x03, 0xC3, 0xE0, 0xF8, 0x7F, 0xFE, - 0x07, 0xFF, 0x80, 0x7F, 0xE0, 0x07, 0xF0, 0x00, 0x7F, 0xFF, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x0E, 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x3C, - 0x00, 0x78, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xC0, - 0x03, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x0F, 0x00, 0x0E, 0x00, 0x1E, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x03, - 0xFF, 0xF0, 0xF8, 0x3E, 0x3E, 0x03, 0xC7, 0x80, 0x78, 0xF0, 0x0F, 0x1E, - 0x03, 0xC3, 0xE0, 0xF0, 0x3F, 0xFC, 0x03, 0xFF, 0x00, 0xFF, 0xE0, 0x7F, - 0xFE, 0x1F, 0x83, 0xE3, 0xC0, 0x3C, 0xF0, 0x07, 0x9E, 0x01, 0xF3, 0xE0, - 0x7C, 0x7F, 0xFF, 0x87, 0xFF, 0xE0, 0x7F, 0xF0, 0x03, 0xF8, 0x00, 0x00, - 0x7E, 0x00, 0x7F, 0xC0, 0x3F, 0xF8, 0x1F, 0xFE, 0x0F, 0x87, 0xC3, 0xC0, - 0xF1, 0xE0, 0x3C, 0x78, 0x0F, 0x1E, 0x03, 0xC7, 0x81, 0xF1, 0xF1, 0xFC, - 0x7F, 0xFE, 0x0F, 0xFF, 0x81, 0xFD, 0xE0, 0x3E, 0xF0, 0x00, 0x7C, 0x00, - 0x3E, 0x00, 0x1F, 0x00, 0x1F, 0x81, 0xFF, 0xC0, 0xFF, 0xE0, 0x3F, 0xE0, - 0x07, 0xE0, 0x00, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, 0x00, 0x00, - 0x03, 0x8F, 0x9F, 0x3E, 0x38, 0x01, 0xC0, 0x7C, 0x0F, 0x81, 0xF0, 0x3C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xC0, 0xF0, 0x1E, - 0x07, 0x80, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x30, 0x0E, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0xFE, 0x00, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, - 0x00, 0x1F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xF0, 0x00, 0x38, - 0x3F, 0xFF, 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0x9F, 0xFF, 0xE0, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0xFF, 0xF7, 0xFF, 0xFE, 0xFF, 0xFF, 0xDF, 0xFF, 0xF0, - 0x00, 0x00, 0x03, 0x80, 0x00, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0x00, - 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x0F, 0xE0, - 0x07, 0xF0, 0x07, 0xF8, 0x03, 0xF8, 0x01, 0xFC, 0x00, 0x3E, 0x00, 0x07, - 0x00, 0x00, 0x07, 0xE0, 0xFF, 0xC7, 0xFF, 0xBF, 0xFF, 0xF0, 0x7F, 0x80, - 0xFE, 0x03, 0xC0, 0x0F, 0x00, 0x78, 0x0F, 0xE1, 0xFE, 0x0F, 0xF0, 0x7E, - 0x01, 0xE0, 0x07, 0x00, 0x00, 0x00, 0x70, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0x70, 0x00, 0x00, 0x3E, 0x00, 0x3F, 0xE0, 0x1F, 0xF8, 0x0F, 0x0F, - 0x07, 0x01, 0xC3, 0x80, 0x71, 0xE0, 0x1C, 0x70, 0x0E, 0x18, 0x0F, 0x8E, - 0x1F, 0xE3, 0x8F, 0xF0, 0xE7, 0x9C, 0x33, 0xC7, 0x1C, 0xE1, 0xC7, 0x38, - 0x71, 0xCF, 0x18, 0x73, 0xFE, 0x38, 0x7F, 0xCE, 0x0F, 0xF3, 0x80, 0x00, - 0xE0, 0x00, 0x38, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0xC0, 0x7F, 0xF0, 0x0F, - 0xF8, 0x01, 0xF8, 0x00, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, 0xF8, - 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x07, 0xBC, 0x00, - 0x1C, 0xF0, 0x00, 0xF3, 0xC0, 0x07, 0x87, 0x80, 0x1E, 0x1E, 0x00, 0xF0, - 0x78, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0x80, 0xFF, 0xFF, 0x07, 0xFF, 0xFC, - 0x1E, 0x00, 0xF1, 0xFE, 0x1F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE1, 0xFF, 0xFF, - 0x07, 0xF8, 0x0F, 0xFF, 0xC0, 0x7F, 0xFF, 0x87, 0xFF, 0xFC, 0x1F, 0xFF, - 0xF0, 0x38, 0x0F, 0x81, 0xC0, 0x3C, 0x1E, 0x01, 0xE0, 0xF0, 0x3E, 0x07, - 0xFF, 0xE0, 0x3F, 0xFE, 0x03, 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0xE0, 0x1F, - 0x87, 0x00, 0x3C, 0x38, 0x01, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0xF3, 0xFF, - 0xFF, 0xBF, 0xFF, 0xF9, 0xFF, 0xFF, 0x8F, 0xFF, 0xF0, 0x00, 0x00, 0x7F, - 0x30, 0x0F, 0xFF, 0xC1, 0xFF, 0xFE, 0x1F, 0xFF, 0xF1, 0xF8, 0x3F, 0x1F, - 0x00, 0x78, 0xF0, 0x03, 0xCF, 0x80, 0x1C, 0x78, 0x00, 0x03, 0xC0, 0x00, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, - 0x00, 0x1F, 0x00, 0x38, 0x7E, 0x07, 0xC3, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, - 0x3F, 0xFC, 0x00, 0x7F, 0x80, 0x00, 0x0F, 0xFF, 0x80, 0x7F, 0xFE, 0x07, - 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0x78, 0x1F, 0x03, 0x80, 0x7C, 0x1C, 0x01, - 0xE1, 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x70, 0x03, 0xC3, 0x80, 0x1E, 0x1C, - 0x00, 0xF1, 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x70, 0x07, 0xC3, 0x80, 0x7C, - 0x3C, 0x07, 0xC3, 0xFF, 0xFC, 0x3F, 0xFF, 0xC1, 0xFF, 0xFC, 0x0F, 0xFF, - 0x80, 0x00, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC3, 0xFF, - 0xFF, 0x03, 0xC0, 0x3C, 0x0F, 0x00, 0xE0, 0x3C, 0x73, 0x80, 0xE3, 0xCC, - 0x03, 0xFF, 0x00, 0x1F, 0xFC, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, - 0x1E, 0x00, 0x3C, 0x70, 0x00, 0xF0, 0x07, 0x03, 0xC0, 0x1C, 0x0E, 0x00, - 0xF1, 0xFF, 0xFF, 0xC7, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE0, - 0x07, 0xFF, 0xFE, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, 0xE0, - 0x3C, 0x01, 0xC0, 0x70, 0x07, 0x80, 0xE1, 0x8E, 0x03, 0xC7, 0x1C, 0x07, - 0xFE, 0x00, 0x0F, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0xF1, - 0xC0, 0x01, 0xE3, 0x80, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0xFF, 0xE0, 0x03, 0xFF, 0xC0, 0x07, 0xFF, 0x80, 0x0F, 0xFE, 0x00, - 0x00, 0x00, 0x3F, 0x18, 0x0F, 0xFF, 0xC0, 0xFF, 0xFE, 0x0F, 0xFF, 0xF0, - 0xFC, 0x0F, 0x0F, 0x80, 0x38, 0xF8, 0x01, 0x87, 0x80, 0x00, 0x78, 0x00, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x7F, 0xEF, 0x07, 0xFF, 0x78, - 0x3F, 0xFB, 0xC0, 0xFF, 0x9E, 0x00, 0x38, 0xFC, 0x03, 0xC3, 0xFF, 0xFE, - 0x1F, 0xFF, 0xE0, 0x3F, 0xFC, 0x00, 0x7F, 0x80, 0x00, 0x03, 0xF8, 0xFE, - 0x0F, 0xF3, 0xFC, 0x1F, 0xE7, 0xF8, 0x3F, 0x8F, 0xE0, 0x3C, 0x07, 0x80, - 0x70, 0x0E, 0x00, 0xE0, 0x1C, 0x03, 0xC0, 0x78, 0x07, 0x80, 0xF0, 0x0F, - 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0xFF, 0xFE, 0x01, 0xE0, - 0x3C, 0x03, 0x80, 0x70, 0x07, 0x00, 0xE0, 0x1E, 0x03, 0xC0, 0xFF, 0x1F, - 0xE1, 0xFE, 0x7F, 0xC7, 0xFC, 0xFF, 0x87, 0xF1, 0xFE, 0x00, 0x07, 0xFF, - 0xE1, 0xFF, 0xFC, 0x3F, 0xFF, 0x87, 0xFF, 0xE0, 0x07, 0x80, 0x00, 0xE0, - 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0x80, - 0x00, 0x70, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0E, 0x00, - 0x01, 0xC0, 0x0F, 0xFF, 0xC3, 0xFF, 0xF8, 0x7F, 0xFF, 0x07, 0xFF, 0xE0, - 0x00, 0x3F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, - 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x80, 0x1C, 0x03, 0x80, - 0x78, 0x0F, 0x00, 0xF0, 0x1E, 0x01, 0xC0, 0x38, 0x07, 0x80, 0x70, 0x1F, - 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xF0, 0x03, 0xFF, 0xC0, 0x00, 0xFC, 0x00, - 0x00, 0x07, 0xF8, 0xFC, 0x1F, 0xFB, 0xFC, 0x3F, 0xE7, 0xF0, 0x7F, 0xCF, - 0xE0, 0x3C, 0x1E, 0x00, 0x70, 0xF8, 0x00, 0xE3, 0xE0, 0x03, 0xCF, 0x00, - 0x07, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xF0, 0x00, - 0xF9, 0xF0, 0x01, 0xE1, 0xE0, 0x03, 0x83, 0xE0, 0x07, 0x03, 0xC0, 0x1E, - 0x07, 0x80, 0xFF, 0x8F, 0xE3, 0xFF, 0x0F, 0xC7, 0xFE, 0x1F, 0x8F, 0xF8, - 0x3E, 0x00, 0x0F, 0xFE, 0x00, 0xFF, 0xF0, 0x1F, 0xFE, 0x00, 0xFF, 0xE0, - 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0xC0, - 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x80, 0x60, 0x78, - 0x0F, 0x07, 0x80, 0xF0, 0x70, 0x0E, 0x07, 0x00, 0xE7, 0xFF, 0xFE, 0xFF, - 0xFF, 0xEF, 0xFF, 0xFE, 0xFF, 0xFF, 0xC0, 0x0F, 0xC0, 0x1F, 0x87, 0xE0, - 0x0F, 0xC7, 0xF8, 0x0F, 0xE1, 0xFC, 0x0F, 0xE0, 0x7E, 0x07, 0xE0, 0x3F, - 0x07, 0xF0, 0x3F, 0xC7, 0xF8, 0x1F, 0xE3, 0xF8, 0x0E, 0xF3, 0xDC, 0x07, - 0x7B, 0xDE, 0x03, 0x9F, 0xEF, 0x03, 0xCF, 0xE7, 0x81, 0xE7, 0xE3, 0x80, - 0xE3, 0xF1, 0xC0, 0x70, 0xF1, 0xE0, 0x38, 0x70, 0xF0, 0x3C, 0x00, 0x70, - 0x3F, 0xC1, 0xFE, 0x3F, 0xE1, 0xFF, 0x1F, 0xF0, 0xFF, 0x8F, 0xF0, 0x7F, - 0x80, 0x0F, 0xC1, 0xFE, 0x1F, 0xC1, 0xFF, 0x1F, 0xC3, 0xFE, 0x1F, 0xE1, - 0xFE, 0x07, 0xE0, 0x38, 0x07, 0xF0, 0x78, 0x07, 0xF0, 0x78, 0x0F, 0xF8, - 0x70, 0x0F, 0x78, 0x70, 0x0E, 0x78, 0xF0, 0x0E, 0x7C, 0xF0, 0x1E, 0x3C, - 0xF0, 0x1E, 0x3E, 0xE0, 0x1E, 0x1E, 0xE0, 0x1C, 0x1F, 0xE0, 0x1C, 0x0F, - 0xE0, 0x3C, 0x0F, 0xE0, 0x7F, 0x87, 0xC0, 0xFF, 0x87, 0xC0, 0xFF, 0x87, - 0xC0, 0xFF, 0x03, 0xC0, 0x00, 0x7E, 0x00, 0x1F, 0xF8, 0x07, 0xFF, 0xC0, - 0xFF, 0xFE, 0x1F, 0x87, 0xE3, 0xE0, 0x1F, 0x3C, 0x01, 0xF7, 0xC0, 0x0F, - 0x78, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x01, - 0xEF, 0x00, 0x3E, 0xF8, 0x03, 0xCF, 0x80, 0x7C, 0x7C, 0x1F, 0x87, 0xFF, - 0xF0, 0x3F, 0xFE, 0x01, 0xFF, 0x80, 0x07, 0xE0, 0x00, 0x0F, 0xFF, 0x80, - 0x7F, 0xFF, 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x38, 0x0F, 0x81, 0xC0, - 0x3C, 0x1E, 0x01, 0xE0, 0xF0, 0x0F, 0x07, 0x00, 0xF0, 0x38, 0x0F, 0x83, - 0xFF, 0xF8, 0x1F, 0xFF, 0x80, 0xFF, 0xF8, 0x07, 0xFF, 0x00, 0x38, 0x00, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x03, 0xFF, 0x80, 0x3F, 0xFC, 0x01, 0xFF, - 0xE0, 0x0F, 0xFE, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x1F, 0xF8, 0x07, 0xFF, - 0xC0, 0xFF, 0xFE, 0x1F, 0x87, 0xE3, 0xE0, 0x1F, 0x3C, 0x01, 0xF7, 0xC0, - 0x0F, 0x78, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x01, 0xEF, 0x00, 0x3E, 0xF8, 0x03, 0xCF, 0x80, 0x7C, 0x7C, 0x1F, 0x87, - 0xFF, 0xF0, 0x3F, 0xFE, 0x01, 0xFF, 0x80, 0x07, 0xE0, 0x01, 0xFE, 0x30, - 0x3F, 0xFF, 0x87, 0xFF, 0xF0, 0x7F, 0xFF, 0x07, 0x83, 0xC0, 0x07, 0xFF, - 0x80, 0x3F, 0xFF, 0x80, 0xFF, 0xFF, 0x03, 0xFF, 0xFE, 0x03, 0xC0, 0xF8, - 0x0E, 0x01, 0xE0, 0x38, 0x07, 0x81, 0xE0, 0x3E, 0x07, 0x83, 0xF0, 0x1F, - 0xFF, 0x80, 0x7F, 0xFC, 0x01, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x3C, 0x3E, - 0x00, 0xE0, 0x7C, 0x03, 0x80, 0xF0, 0x1E, 0x03, 0xE1, 0xFF, 0x07, 0xFF, - 0xFC, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0x80, 0xF8, 0x00, 0x7C, 0xE0, 0x7F, - 0xFC, 0x1F, 0xFF, 0x87, 0xFF, 0xE0, 0xF8, 0x7C, 0x3C, 0x07, 0x87, 0x80, - 0xE0, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xFE, 0x00, 0x3F, 0xF8, 0x03, 0xFF, - 0x80, 0x07, 0xF8, 0x40, 0x1F, 0x3C, 0x01, 0xE7, 0x80, 0x3C, 0xFC, 0x1F, - 0x1F, 0xFF, 0xE3, 0xFF, 0xF8, 0x7F, 0xFE, 0x00, 0x7E, 0x00, 0x7F, 0xFF, - 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0x0E, 0x1F, 0xE1, 0xC3, - 0xBC, 0x78, 0x77, 0x0F, 0x1E, 0xE1, 0xC1, 0x80, 0x38, 0x00, 0x0F, 0x00, - 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x3C, 0x00, - 0x07, 0x80, 0x0F, 0xFE, 0x03, 0xFF, 0xE0, 0x7F, 0xFC, 0x0F, 0xFF, 0x00, - 0x7F, 0x8F, 0xF3, 0xFE, 0x7F, 0xDF, 0xF7, 0xFC, 0xFF, 0x1F, 0xE3, 0xC0, - 0x3C, 0x1C, 0x01, 0xE0, 0xE0, 0x0F, 0x0F, 0x00, 0x70, 0x78, 0x03, 0x83, - 0xC0, 0x3C, 0x1C, 0x01, 0xE0, 0xE0, 0x0E, 0x0F, 0x00, 0x70, 0x78, 0x03, - 0x83, 0xC0, 0x3C, 0x1F, 0x01, 0xC0, 0xFC, 0x3E, 0x03, 0xFF, 0xE0, 0x1F, - 0xFE, 0x00, 0x7F, 0xE0, 0x00, 0xFC, 0x00, 0x00, 0x7F, 0x81, 0xFE, 0xFF, - 0x87, 0xFF, 0xFF, 0x0F, 0xFB, 0xFC, 0x1F, 0xE1, 0xC0, 0x0F, 0x03, 0xC0, - 0x1C, 0x07, 0x80, 0x78, 0x0F, 0x01, 0xE0, 0x1E, 0x03, 0x80, 0x1E, 0x0F, - 0x00, 0x3C, 0x3C, 0x00, 0x78, 0x70, 0x00, 0xF1, 0xE0, 0x01, 0xE7, 0x80, - 0x01, 0xEF, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, - 0x0F, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x7F, 0x87, 0xFF, - 0xFF, 0x1F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE1, 0xFE, 0x78, 0x00, 0xF1, 0xE3, - 0xC3, 0x87, 0x8F, 0x0E, 0x1E, 0x7C, 0x78, 0x79, 0xF9, 0xC1, 0xEF, 0xEF, - 0x07, 0xBF, 0xBC, 0x1D, 0xFE, 0xE0, 0x77, 0x7F, 0x81, 0xFD, 0xFE, 0x07, - 0xE3, 0xF0, 0x3F, 0x8F, 0xC0, 0xFC, 0x3F, 0x03, 0xF0, 0xF8, 0x0F, 0x83, - 0xE0, 0x3E, 0x0F, 0x80, 0xF0, 0x3C, 0x00, 0x07, 0xE0, 0x7E, 0x0F, 0xF0, - 0xFF, 0x0F, 0xF0, 0xFE, 0x0F, 0xE0, 0xFE, 0x03, 0xC0, 0xF8, 0x01, 0xE1, - 0xE0, 0x01, 0xF3, 0xC0, 0x00, 0xF7, 0x80, 0x00, 0x7F, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xEF, - 0x00, 0x07, 0xCF, 0x80, 0x0F, 0x87, 0xC0, 0x1F, 0x03, 0xC0, 0x7F, 0x07, - 0xF0, 0xFF, 0x8F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xE0, 0x7E, 0x0F, - 0xEF, 0xF0, 0xFF, 0xFF, 0x0F, 0xEF, 0xE0, 0xFE, 0x3C, 0x0F, 0x01, 0xE1, - 0xE0, 0x1E, 0x3E, 0x00, 0xF7, 0xC0, 0x0F, 0xF8, 0x00, 0x7F, 0x00, 0x07, - 0xE0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, - 0x78, 0x00, 0x07, 0x00, 0x07, 0xFF, 0x00, 0xFF, 0xF8, 0x0F, 0xFF, 0x00, - 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xE0, 0xFF, 0xFC, 0x3F, 0xFF, 0x87, 0xFF, - 0xF0, 0xF0, 0x7C, 0x1C, 0x1F, 0x03, 0x87, 0xC0, 0x61, 0xF0, 0x00, 0x7C, - 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x07, - 0x07, 0xC0, 0xE1, 0xF0, 0x3C, 0x7C, 0x07, 0x9F, 0xFF, 0xF3, 0xFF, 0xFC, - 0x7F, 0xFF, 0x8F, 0xFF, 0xF0, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xE0, - 0x70, 0x07, 0x80, 0x3C, 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x3C, - 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x38, 0x01, 0xC0, 0x0E, 0x00, - 0xF0, 0x07, 0x80, 0x38, 0x01, 0xC0, 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, - 0x80, 0xE0, 0x38, 0x0F, 0x03, 0xC0, 0xF0, 0x1C, 0x07, 0x81, 0xE0, 0x78, - 0x0E, 0x03, 0xC0, 0xF0, 0x3C, 0x07, 0x01, 0xE0, 0x78, 0x1E, 0x03, 0x80, - 0xF0, 0x3C, 0x0F, 0x01, 0xE0, 0x78, 0x1E, 0x03, 0x80, 0xF0, 0x3C, 0x06, - 0x07, 0xF8, 0x3F, 0xC1, 0xFC, 0x0F, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, - 0x1C, 0x00, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0F, - 0x00, 0x78, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0F, 0x00, 0x70, 0x03, 0x80, - 0x1C, 0x0F, 0xE0, 0xFF, 0x07, 0xF0, 0x3F, 0x80, 0x00, 0x40, 0x01, 0x80, - 0x07, 0x80, 0x3F, 0x80, 0xFF, 0x03, 0xFF, 0x0F, 0x9F, 0x3E, 0x1E, 0xF8, - 0x3F, 0xE0, 0x3F, 0x00, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0xC3, 0xC7, 0x0E, 0x3C, 0x30, 0x00, 0xFE, 0x00, - 0x7F, 0xF0, 0x1F, 0xFF, 0x03, 0xFF, 0xE0, 0x00, 0x3C, 0x07, 0xFF, 0x83, - 0xFF, 0xF0, 0xFF, 0xFC, 0x3F, 0xFF, 0x8F, 0x80, 0xF3, 0xE0, 0x1E, 0x78, - 0x1F, 0x8F, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xFF, 0xF8, 0xFE, 0x7E, 0x07, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xC0, - 0x00, 0x0F, 0x00, 0x00, 0x3C, 0xFC, 0x00, 0xEF, 0xFC, 0x03, 0xFF, 0xF8, - 0x1F, 0xFF, 0xE0, 0x7E, 0x0F, 0xC1, 0xE0, 0x1F, 0x07, 0x00, 0x3C, 0x1C, - 0x00, 0xF0, 0xE0, 0x03, 0xC3, 0x80, 0x1E, 0x0F, 0x00, 0xF8, 0x3E, 0x07, - 0xC7, 0xFF, 0xFF, 0x3F, 0xFF, 0xF8, 0xFF, 0xFF, 0x81, 0xF1, 0xF8, 0x00, - 0x00, 0xFE, 0x60, 0xFF, 0xFC, 0x3F, 0xFF, 0x8F, 0xFF, 0xF3, 0xF0, 0x3C, - 0xF8, 0x03, 0x9E, 0x00, 0x67, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, - 0xC0, 0x00, 0x7E, 0x01, 0xC7, 0xFF, 0xF8, 0xFF, 0xFE, 0x0F, 0xFF, 0x80, - 0x7F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, 0x07, 0xE3, 0x80, 0xFF, 0xDC, 0x0F, - 0xFF, 0xE0, 0xFF, 0xFF, 0x0F, 0xC1, 0xF0, 0xF8, 0x07, 0x87, 0x80, 0x1C, - 0x78, 0x00, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x70, 0xF0, 0x07, 0x87, 0xE0, - 0xFC, 0x1F, 0xFF, 0xF8, 0xFF, 0xFF, 0xC3, 0xFF, 0xFE, 0x07, 0xE3, 0xE0, - 0x00, 0xFC, 0x01, 0xFF, 0xC0, 0xFF, 0xF8, 0x7F, 0xFE, 0x3E, 0x0F, 0xCE, - 0x00, 0xF7, 0x00, 0x3D, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xE0, 0x1E, 0xFF, 0xFF, 0x9F, 0xFF, 0xE3, 0xFF, 0xF0, 0x3F, 0xF0, - 0x00, 0x0F, 0xF0, 0x01, 0xFF, 0xC0, 0x1F, 0xFE, 0x01, 0xFF, 0xE0, 0x0F, - 0x00, 0x00, 0xF0, 0x00, 0x3F, 0xFF, 0x03, 0xFF, 0xF8, 0x1F, 0xFF, 0xC0, - 0xFF, 0xFC, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x01, 0xC0, - 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x1F, - 0xFF, 0x81, 0xFF, 0xFC, 0x0F, 0xFF, 0xE0, 0x7F, 0xFE, 0x00, 0x01, 0xF9, - 0xF8, 0x3F, 0xFF, 0xC3, 0xFF, 0xFE, 0x7F, 0xFF, 0xE3, 0xE0, 0xFC, 0x3E, - 0x03, 0xE1, 0xE0, 0x0E, 0x1E, 0x00, 0x70, 0xF0, 0x03, 0x87, 0x80, 0x3C, - 0x3E, 0x03, 0xE1, 0xF8, 0x7E, 0x07, 0xFF, 0xF0, 0x3F, 0xFF, 0x80, 0xFF, - 0xFC, 0x01, 0xF9, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, - 0x7F, 0xF8, 0x07, 0xFF, 0x80, 0x3F, 0xF8, 0x00, 0xFF, 0x00, 0x00, 0x0F, - 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x03, 0xC0, 0x00, - 0x38, 0x00, 0x03, 0x9F, 0x00, 0x7F, 0xFC, 0x07, 0xFF, 0xC0, 0x7F, 0xFE, - 0x07, 0xC3, 0xE0, 0x70, 0x1E, 0x0F, 0x01, 0xC0, 0xF0, 0x1C, 0x0E, 0x03, - 0xC0, 0xE0, 0x3C, 0x1E, 0x03, 0x81, 0xE0, 0x38, 0x7F, 0x0F, 0xFF, 0xF8, - 0xFF, 0xFF, 0x8F, 0xF7, 0xF0, 0xFE, 0x00, 0x78, 0x00, 0x78, 0x00, 0x78, - 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x0F, 0xF0, 0x1F, 0xF0, - 0x0F, 0xF0, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xE0, - 0x01, 0xE0, 0x01, 0xC0, 0x01, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFC, 0x3F, 0xFE, 0x0F, 0xFF, 0x81, 0xFF, - 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0xF0, - 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x78, 0x00, - 0x1E, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x1F, 0xFE, - 0x0F, 0xFF, 0x03, 0xFF, 0x80, 0x7F, 0x80, 0x00, 0x07, 0xE0, 0x00, 0xFE, - 0x00, 0x0F, 0xE0, 0x00, 0x7C, 0x00, 0x01, 0xC0, 0x00, 0x3C, 0x00, 0x03, - 0xCF, 0xF0, 0x3C, 0xFF, 0x03, 0x9F, 0xF0, 0x38, 0xFE, 0x07, 0xBF, 0x00, - 0x7F, 0xC0, 0x07, 0xF8, 0x00, 0x7F, 0x00, 0x07, 0xF8, 0x00, 0xFF, 0xC0, - 0x0F, 0x7E, 0x00, 0xE3, 0xF0, 0x7E, 0x1F, 0xE7, 0xE1, 0xFE, 0xFE, 0x3F, - 0xE7, 0xE1, 0xFC, 0x03, 0xFC, 0x07, 0xFC, 0x07, 0xF8, 0x07, 0xF8, 0x00, - 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0xF0, 0x00, - 0xF0, 0x00, 0xE0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, - 0xC0, 0x01, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, - 0x7C, 0x78, 0x7F, 0xFF, 0xF8, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xF0, 0xF1, - 0xF1, 0xE1, 0xC3, 0x83, 0xC7, 0x87, 0x07, 0x8F, 0x0E, 0x0E, 0x1C, 0x3C, - 0x1C, 0x38, 0x78, 0x78, 0x70, 0xE0, 0xF1, 0xE1, 0xC1, 0xC7, 0xE3, 0xC3, - 0xFF, 0xCF, 0xC7, 0xFF, 0x9F, 0x9F, 0xFF, 0x3E, 0x3E, 0x0F, 0x8F, 0x80, - 0xFD, 0xFF, 0x07, 0xFF, 0xF8, 0x3F, 0xFF, 0xE0, 0x7E, 0x1F, 0x07, 0xC0, - 0x78, 0x3C, 0x03, 0x81, 0xE0, 0x1C, 0x0E, 0x01, 0xE0, 0x70, 0x0F, 0x07, - 0x80, 0x70, 0x3C, 0x03, 0x87, 0xF0, 0x3F, 0x7F, 0xC3, 0xFF, 0xFE, 0x1F, - 0xEF, 0xE0, 0xFE, 0x01, 0xFC, 0x01, 0xFF, 0x80, 0xFF, 0xF8, 0x7F, 0xFE, - 0x3E, 0x0F, 0xDF, 0x01, 0xF7, 0x80, 0x3F, 0xC0, 0x0F, 0xF0, 0x03, 0xFC, - 0x01, 0xEF, 0x80, 0xFB, 0xF0, 0x7C, 0x7F, 0xFF, 0x1F, 0xFF, 0x03, 0xFF, - 0x80, 0x3F, 0x80, 0x07, 0xC7, 0xE0, 0x1F, 0xBF, 0xF0, 0x3F, 0xFF, 0xF0, - 0x7F, 0xFF, 0xE0, 0x3F, 0x07, 0xE0, 0x78, 0x03, 0xC0, 0xE0, 0x07, 0x81, - 0xC0, 0x0F, 0x07, 0x00, 0x1E, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xF0, 0x3E, - 0x07, 0xC0, 0xFF, 0xFF, 0x81, 0xFF, 0xFE, 0x03, 0xDF, 0xF0, 0x07, 0x1F, - 0x80, 0x0E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, 0x03, 0xFE, 0x00, - 0x0F, 0xFE, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x01, 0xF8, - 0xF8, 0x1F, 0xFF, 0xF1, 0xFF, 0xFF, 0xCF, 0xFF, 0xFE, 0x3E, 0x07, 0xC1, - 0xF0, 0x0F, 0x07, 0x80, 0x1C, 0x3C, 0x00, 0x70, 0xF0, 0x03, 0x83, 0xC0, - 0x0E, 0x0F, 0x80, 0x78, 0x3F, 0x07, 0xE0, 0x7F, 0xFF, 0x81, 0xFF, 0xFC, - 0x03, 0xFF, 0x70, 0x03, 0xF3, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xE0, 0x00, 0x3F, 0xE0, 0x01, 0xFF, 0xC0, 0x07, 0xFF, 0x00, 0x1F, - 0xF8, 0x00, 0x0F, 0xC3, 0xC1, 0xFC, 0xFF, 0x1F, 0xFF, 0xF1, 0xFF, 0xFE, - 0x03, 0xFC, 0x00, 0x3F, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x07, 0x80, - 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xF0, 0x00, 0xFF, 0xFC, 0x0F, 0xFF, - 0xE0, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, 0x03, 0xF3, 0x0F, 0xFF, 0x3F, 0xFF, - 0x3F, 0xFF, 0x7C, 0x0E, 0x78, 0x00, 0x7F, 0xE0, 0x3F, 0xFC, 0x1F, 0xFF, - 0x00, 0x3F, 0x70, 0x0F, 0xF8, 0x1F, 0xFF, 0xFE, 0xFF, 0xFC, 0xFF, 0xF8, - 0x0F, 0xE0, 0x06, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x7F, 0xFE, 0xFF, 0xFE, 0xFF, 0xFE, 0xFF, 0xFC, 0x1C, 0x00, 0x3C, 0x00, - 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x78, 0x00, 0x7C, 0x0E, - 0x7F, 0xFF, 0x7F, 0xFE, 0x3F, 0xFC, 0x0F, 0xE0, 0x7C, 0x0F, 0xFF, 0x07, - 0xFF, 0x81, 0xFF, 0xE0, 0x7E, 0x78, 0x03, 0x9E, 0x00, 0xE7, 0x80, 0x79, - 0xE0, 0x1E, 0x78, 0x07, 0x1E, 0x01, 0xC7, 0x80, 0xF1, 0xE0, 0xFC, 0x7F, - 0xFF, 0x9F, 0xFF, 0xE3, 0xFF, 0xF8, 0x3E, 0x7C, 0x7F, 0x87, 0xFF, 0xFC, - 0x7F, 0xFF, 0xE3, 0xFF, 0xFF, 0x1F, 0xE1, 0xE0, 0x3C, 0x0F, 0x03, 0xC0, - 0x78, 0x3C, 0x01, 0xE1, 0xC0, 0x0F, 0x1E, 0x00, 0x79, 0xE0, 0x03, 0xCE, - 0x00, 0x0F, 0xF0, 0x00, 0x7F, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0x80, 0x00, - 0x78, 0x00, 0x7E, 0x03, 0xF7, 0xF0, 0x3F, 0xFF, 0x81, 0xFD, 0xF8, 0x0F, - 0xE7, 0x8E, 0x1C, 0x3C, 0xF9, 0xE1, 0xE7, 0xCE, 0x0F, 0x7E, 0xF0, 0x7B, - 0xF7, 0x03, 0xFF, 0xF8, 0x1F, 0xDF, 0x80, 0xFC, 0xFC, 0x07, 0xE7, 0xE0, - 0x3E, 0x3E, 0x01, 0xF1, 0xF0, 0x0F, 0x07, 0x00, 0x0F, 0xE3, 0xF8, 0xFF, - 0x1F, 0xC7, 0xF9, 0xFE, 0x1F, 0x87, 0xF0, 0x7E, 0x7C, 0x01, 0xFF, 0xC0, - 0x07, 0xFC, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x1F, 0xF0, 0x01, 0xF7, - 0xC0, 0x1F, 0x1F, 0x03, 0xF0, 0x7C, 0x7F, 0xCF, 0xFB, 0xFE, 0x7F, 0xDF, - 0xE3, 0xFC, 0x07, 0xF0, 0x7F, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x07, - 0xE0, 0xFE, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0xF0, 0x01, - 0xE1, 0xE0, 0x01, 0xE1, 0xC0, 0x01, 0xE3, 0xC0, 0x00, 0xF7, 0x80, 0x00, - 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x7F, - 0xF0, 0x00, 0xFF, 0xF8, 0x00, 0xFF, 0xF0, 0x00, 0x7F, 0xF0, 0x00, 0x1F, - 0xFF, 0xC7, 0xFF, 0xF1, 0xFF, 0xF8, 0xFF, 0xFE, 0x3C, 0x1F, 0x0E, 0x1F, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0xF8, 0x3C, 0xFF, 0xFF, 0x3F, 0xFF, 0xCF, 0xFF, 0xE3, 0xFF, 0xF8, 0x00, - 0xF0, 0x1F, 0x03, 0xF0, 0x7E, 0x07, 0x80, 0x70, 0x0F, 0x00, 0xF0, 0x0E, - 0x00, 0xE0, 0x1E, 0x01, 0xC0, 0xFC, 0x0F, 0x80, 0xF8, 0x0F, 0xC0, 0x3C, - 0x03, 0xC0, 0x38, 0x03, 0x80, 0x78, 0x07, 0x80, 0x78, 0x07, 0xE0, 0x7E, - 0x03, 0xE0, 0x1C, 0x00, 0x02, 0x07, 0x07, 0x0F, 0x0F, 0x0E, 0x0E, 0x0E, - 0x1E, 0x1E, 0x1C, 0x1C, 0x1C, 0x3C, 0x3C, 0x38, 0x38, 0x38, 0x78, 0x78, - 0x70, 0x70, 0x70, 0xF0, 0xF0, 0xE0, 0xE0, 0x01, 0xC0, 0x1F, 0x00, 0xFC, - 0x07, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x0F, 0x00, - 0x78, 0x03, 0xC0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, 0x3F, 0x03, 0xC0, 0x1C, - 0x00, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x3C, 0x0F, 0xE0, 0x7E, 0x07, - 0xE0, 0x1E, 0x00, 0x0F, 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0xFF, 0xFC, 0xFF, - 0x3F, 0xFF, 0x0F, 0xF8, 0x03, 0xF8, 0x00, 0xF0}; - -const GFXglyph FreeMonoBoldOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 9, 22, 21, 9, -21}, // 0x21 '!' - {25, 12, 10, 21, 9, -20}, // 0x22 '"' - {40, 18, 25, 21, 4, -22}, // 0x23 '#' - {97, 18, 28, 21, 4, -23}, // 0x24 '$' - {160, 16, 21, 21, 5, -20}, // 0x25 '%' - {202, 16, 20, 21, 4, -19}, // 0x26 '&' - {242, 5, 10, 21, 12, -20}, // 0x27 ''' - {249, 10, 27, 21, 11, -21}, // 0x28 '(' - {283, 10, 27, 21, 4, -21}, // 0x29 ')' - {317, 15, 15, 21, 6, -21}, // 0x2A '*' - {346, 18, 19, 21, 4, -18}, // 0x2B '+' - {389, 9, 10, 21, 4, -3}, // 0x2C ',' - {401, 18, 4, 21, 4, -11}, // 0x2D '-' - {410, 5, 5, 21, 8, -4}, // 0x2E '.' - {414, 21, 28, 21, 2, -23}, // 0x2F '/' - {488, 17, 23, 21, 5, -22}, // 0x30 '0' - {537, 15, 22, 21, 3, -21}, // 0x31 '1' - {579, 20, 23, 21, 2, -22}, // 0x32 '2' - {637, 18, 23, 21, 3, -22}, // 0x33 '3' - {689, 16, 21, 21, 4, -20}, // 0x34 '4' - {731, 18, 22, 21, 4, -21}, // 0x35 '5' - {781, 19, 23, 21, 5, -22}, // 0x36 '6' - {836, 16, 22, 21, 6, -21}, // 0x37 '7' - {880, 19, 23, 21, 3, -22}, // 0x38 '8' - {935, 18, 23, 21, 4, -22}, // 0x39 '9' - {987, 7, 16, 21, 9, -15}, // 0x3A ':' - {1001, 11, 22, 21, 4, -15}, // 0x3B ';' - {1032, 18, 16, 21, 4, -17}, // 0x3C '<' - {1068, 19, 10, 21, 3, -14}, // 0x3D '=' - {1092, 19, 16, 21, 3, -17}, // 0x3E '>' - {1130, 14, 21, 21, 8, -20}, // 0x3F '?' - {1167, 18, 27, 21, 3, -21}, // 0x40 '@' - {1228, 22, 21, 21, 0, -20}, // 0x41 'A' - {1286, 21, 21, 21, 1, -20}, // 0x42 'B' - {1342, 21, 21, 21, 2, -20}, // 0x43 'C' - {1398, 21, 21, 21, 1, -20}, // 0x44 'D' - {1454, 22, 21, 21, 0, -20}, // 0x45 'E' - {1512, 23, 21, 21, 0, -20}, // 0x46 'F' - {1573, 21, 21, 21, 2, -20}, // 0x47 'G' - {1629, 23, 21, 21, 0, -20}, // 0x48 'H' - {1690, 19, 21, 21, 2, -20}, // 0x49 'I' - {1740, 23, 21, 21, 0, -20}, // 0x4A 'J' - {1801, 23, 21, 21, 0, -20}, // 0x4B 'K' - {1862, 20, 21, 21, 1, -20}, // 0x4C 'L' - {1915, 25, 21, 21, 0, -20}, // 0x4D 'M' - {1981, 24, 21, 21, 1, -20}, // 0x4E 'N' - {2044, 20, 21, 21, 2, -20}, // 0x4F 'O' - {2097, 21, 21, 21, 1, -20}, // 0x50 'P' - {2153, 20, 26, 21, 2, -20}, // 0x51 'Q' - {2218, 22, 21, 21, 0, -20}, // 0x52 'R' - {2276, 19, 21, 21, 3, -20}, // 0x53 'S' - {2326, 19, 21, 21, 3, -20}, // 0x54 'T' - {2376, 21, 21, 21, 3, -20}, // 0x55 'U' - {2432, 23, 21, 21, 1, -20}, // 0x56 'V' - {2493, 22, 21, 21, 2, -20}, // 0x57 'W' - {2551, 24, 21, 21, 0, -20}, // 0x58 'X' - {2614, 20, 21, 21, 3, -20}, // 0x59 'Y' - {2667, 19, 21, 21, 2, -20}, // 0x5A 'Z' - {2717, 13, 27, 21, 8, -21}, // 0x5B '[' - {2761, 10, 28, 21, 8, -23}, // 0x5C '\' - {2796, 13, 27, 21, 4, -21}, // 0x5D ']' - {2840, 15, 11, 21, 6, -21}, // 0x5E '^' - {2861, 21, 4, 21, -1, 4}, // 0x5F '_' - {2872, 6, 6, 21, 10, -22}, // 0x60 '`' - {2877, 19, 16, 21, 2, -15}, // 0x61 'a' - {2915, 22, 22, 21, 0, -21}, // 0x62 'b' - {2976, 19, 16, 21, 3, -15}, // 0x63 'c' - {3014, 21, 22, 21, 3, -21}, // 0x64 'd' - {3072, 18, 16, 21, 3, -15}, // 0x65 'e' - {3108, 21, 22, 21, 3, -21}, // 0x66 'f' - {3166, 21, 23, 21, 2, -15}, // 0x67 'g' - {3227, 20, 22, 21, 1, -21}, // 0x68 'h' - {3282, 16, 22, 21, 3, -21}, // 0x69 'i' - {3326, 18, 29, 21, 2, -21}, // 0x6A 'j' - {3392, 20, 22, 21, 1, -21}, // 0x6B 'k' - {3447, 16, 22, 21, 3, -21}, // 0x6C 'l' - {3491, 23, 16, 21, 0, -15}, // 0x6D 'm' - {3537, 21, 16, 21, 1, -15}, // 0x6E 'n' - {3579, 18, 16, 21, 3, -15}, // 0x6F 'o' - {3615, 23, 23, 21, -1, -15}, // 0x70 'p' - {3682, 22, 23, 21, 2, -15}, // 0x71 'q' - {3746, 20, 16, 21, 2, -15}, // 0x72 'r' - {3786, 16, 16, 21, 4, -15}, // 0x73 's' - {3818, 16, 21, 21, 4, -20}, // 0x74 't' - {3860, 18, 16, 21, 3, -15}, // 0x75 'u' - {3896, 21, 16, 21, 2, -15}, // 0x76 'v' - {3938, 21, 16, 21, 3, -15}, // 0x77 'w' - {3980, 21, 16, 21, 1, -15}, // 0x78 'x' - {4022, 24, 23, 21, -1, -15}, // 0x79 'y' - {4091, 18, 16, 21, 3, -15}, // 0x7A 'z' - {4127, 12, 27, 21, 8, -21}, // 0x7B '{' - {4168, 8, 27, 21, 8, -21}, // 0x7C '|' - {4195, 13, 27, 21, 4, -21}, // 0x7D '}' - {4239, 17, 8, 21, 4, -13}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique18pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique18pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique18pt7bGlyphs, 0x20, 0x7E, 35}; - -// Approx. 4928 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h deleted file mode 100644 index ac923bf..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h +++ /dev/null @@ -1,744 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xE0, 0x3F, 0x07, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xE0, 0xFE, - 0x0F, 0xE0, 0xFE, 0x0F, 0xC0, 0xFC, 0x1F, 0xC1, 0xF8, 0x1F, 0x81, 0xF8, - 0x1F, 0x81, 0xF0, 0x1F, 0x01, 0xF0, 0x1E, 0x00, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x03, 0xC0, 0x7E, 0x0F, 0xE0, 0xFE, 0x0F, 0xC0, 0x78, 0x00, 0x7E, - 0x1F, 0xBF, 0x0F, 0xDF, 0x87, 0xCF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF1, - 0xE0, 0xF8, 0xF0, 0x7C, 0x78, 0x3C, 0x38, 0x1E, 0x1C, 0x0F, 0x0E, 0x07, - 0x0E, 0x03, 0x83, 0x01, 0x80, 0x00, 0x1C, 0x1C, 0x00, 0x3E, 0x3E, 0x00, - 0x3E, 0x3E, 0x00, 0x3C, 0x3C, 0x00, 0x7C, 0x7C, 0x00, 0x7C, 0x7C, 0x00, - 0x7C, 0x7C, 0x00, 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x0F, - 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x1F, - 0xFF, 0xFE, 0x03, 0xE3, 0xE0, 0x03, 0xE3, 0xE0, 0x03, 0xC3, 0xC0, 0x07, - 0xC7, 0xC0, 0x7F, 0xFF, 0xF8, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xF8, 0xFF, 0xFF, 0xF0, 0x0F, 0x0F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, - 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x3E, 0x1E, 0x00, 0x3E, 0x3E, 0x00, 0x3E, - 0x3E, 0x00, 0x3C, 0x3C, 0x00, 0x7C, 0x7C, 0x00, 0x38, 0x38, 0x00, 0x00, - 0x00, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0xFF, 0x00, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, - 0x01, 0xFF, 0xFF, 0x81, 0xFC, 0x1F, 0xC1, 0xF8, 0x03, 0xC0, 0xF8, 0x01, - 0xE0, 0x7C, 0x00, 0x40, 0x3F, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xFF, - 0x80, 0x03, 0xFF, 0xF8, 0x00, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0x00, 0x00, - 0x7F, 0xC0, 0x00, 0x07, 0xE0, 0xE0, 0x01, 0xF0, 0xF0, 0x00, 0xF8, 0xF8, - 0x00, 0xFC, 0x7E, 0x00, 0xFC, 0x3F, 0x81, 0xFE, 0x1F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFE, 0x03, 0xFF, 0xFC, 0x00, 0x07, 0xF0, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0xF8, - 0x00, 0x0F, 0xF8, 0x00, 0x7F, 0xE0, 0x03, 0xC3, 0xC0, 0x0E, 0x07, 0x00, - 0x70, 0x1C, 0x01, 0xC0, 0x70, 0x07, 0x01, 0xC0, 0x1C, 0x0E, 0x00, 0x78, - 0x78, 0x00, 0xFF, 0xC0, 0x03, 0xFE, 0x1F, 0x03, 0xE3, 0xFC, 0x00, 0x7F, - 0xC0, 0x0F, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xC0, 0x03, 0xF8, 0x7C, 0x0F, - 0x07, 0xFC, 0x00, 0x3F, 0xF0, 0x01, 0xE1, 0xE0, 0x07, 0x03, 0x80, 0x38, - 0x0E, 0x00, 0xE0, 0x38, 0x03, 0x80, 0xE0, 0x0E, 0x07, 0x00, 0x3C, 0x3C, - 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, - 0x01, 0xFF, 0x80, 0x3F, 0xFC, 0x03, 0xFF, 0xE0, 0x1F, 0xFE, 0x01, 0xF1, - 0xE0, 0x1F, 0x04, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, - 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0xE3, - 0xE7, 0xFF, 0x3F, 0x7E, 0xFF, 0xFB, 0xE7, 0xFF, 0x9E, 0x1F, 0xF1, 0xF0, - 0xFF, 0x8F, 0x83, 0xF8, 0x7C, 0x1F, 0xC3, 0xF0, 0xFF, 0x9F, 0xFF, 0xFC, - 0x7F, 0xFF, 0xE3, 0xFF, 0xFF, 0x0F, 0xFD, 0xF0, 0x1F, 0x80, 0x00, 0x7E, - 0xFD, 0xF3, 0xE7, 0xCF, 0x3E, 0x7C, 0xF1, 0xE3, 0xC7, 0x0E, 0x18, 0x00, - 0x00, 0x18, 0x00, 0xF0, 0x07, 0xC0, 0x3F, 0x01, 0xF8, 0x07, 0xC0, 0x3E, - 0x01, 0xF8, 0x07, 0xC0, 0x3E, 0x00, 0xF8, 0x07, 0xC0, 0x1F, 0x00, 0xF8, - 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x3E, 0x00, 0xF8, - 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0xFC, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x80, 0x7E, 0x00, 0xFC, 0x03, - 0xF0, 0x07, 0xC0, 0x1E, 0x00, 0x00, 0xC0, 0x07, 0x80, 0x3F, 0x00, 0xFC, - 0x03, 0xF0, 0x07, 0xE0, 0x1F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xF0, 0x07, - 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, - 0xF0, 0x07, 0xC0, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x01, - 0xF0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, - 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x00, 0xF0, 0x00, 0x00, 0x3C, - 0x00, 0x01, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x08, - 0x3C, 0x09, 0xF9, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, - 0x87, 0xFF, 0xE0, 0x07, 0xF8, 0x00, 0x7F, 0xC0, 0x07, 0xFF, 0x00, 0x7F, - 0xF8, 0x07, 0xE7, 0xE0, 0x3E, 0x3F, 0x01, 0xE0, 0xF8, 0x0E, 0x07, 0x80, - 0x00, 0x07, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x0F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x3E, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x7C, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xF0, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0xE0, 0x00, 0x03, 0xF0, 0x7E, 0x07, 0xC0, 0xFC, - 0x0F, 0x81, 0xF0, 0x1E, 0x03, 0xE0, 0x3C, 0x07, 0x80, 0x78, 0x0F, 0x00, - 0xE0, 0x0C, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x3C, 0xFF, 0xFF, 0xFF, 0xCF, 0x00, - 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xE0, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x07, 0x00, 0x00, - 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x1F, 0xFF, - 0xE0, 0x7F, 0xFF, 0xC0, 0xFC, 0x1F, 0x83, 0xF0, 0x1F, 0x8F, 0xC0, 0x1F, - 0x1F, 0x00, 0x3E, 0x7C, 0x00, 0x7C, 0xF8, 0x00, 0xF9, 0xF0, 0x01, 0xF3, - 0xC0, 0x07, 0xCF, 0x80, 0x0F, 0x9F, 0x00, 0x1E, 0x3E, 0x00, 0x3C, 0x78, - 0x00, 0xF8, 0xF0, 0x01, 0xF3, 0xE0, 0x03, 0xE7, 0xC0, 0x07, 0x8F, 0x80, - 0x1F, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0xF8, 0x7C, 0x01, 0xF0, 0xFC, 0x07, - 0xC1, 0xFC, 0x3F, 0x81, 0xFF, 0xFE, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, - 0x03, 0xFF, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x7E, - 0x00, 0x0F, 0xF0, 0x01, 0xFF, 0x80, 0x1F, 0xFC, 0x03, 0xFB, 0xE0, 0x1F, - 0x9E, 0x00, 0xF1, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, - 0x00, 0x1E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, - 0xC0, 0x00, 0x1E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, - 0x03, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, - 0x01, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, - 0xFF, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x03, 0xFF, 0xF0, - 0x01, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x80, 0x7F, 0x07, 0xF0, 0x1F, 0x00, - 0xFC, 0x0F, 0x80, 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0xF0, 0x01, 0xF0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xF8, - 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x70, 0x3F, 0x80, 0x3E, 0x1F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFF, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xFE, 0x00, 0x1F, - 0xFF, 0x80, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x0F, 0x81, 0xFC, 0x07, - 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x0F, 0xC0, - 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xC0, 0x01, 0xFF, 0xC0, 0x01, 0xFF, 0xC0, - 0x00, 0xFF, 0x80, 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x3C, 0x01, - 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, - 0xFC, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x07, 0xF0, 0x00, - 0x3F, 0xC0, 0x01, 0xFE, 0x00, 0x0F, 0xF8, 0x00, 0x7F, 0xE0, 0x03, 0xFF, - 0x80, 0x1F, 0xBE, 0x00, 0x7C, 0xF0, 0x03, 0xE7, 0xC0, 0x1F, 0x1F, 0x00, - 0xF8, 0x7C, 0x07, 0xE1, 0xE0, 0x3F, 0x07, 0x81, 0xF8, 0x3E, 0x07, 0xC0, - 0xF8, 0x3E, 0x03, 0xC1, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFE, - 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0x80, 0x00, 0xF8, 0x00, 0x3F, 0xF8, 0x01, - 0xFF, 0xE0, 0x07, 0xFF, 0x80, 0x1F, 0xFE, 0x00, 0x7F, 0xF0, 0x01, 0xFF, - 0xFF, 0x00, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0xC0, 0x3F, 0xFF, 0xE0, 0x3F, - 0xFF, 0xE0, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, - 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF7, 0xF0, 0x00, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0x80, 0x3F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x0F, 0x01, 0xFC, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, - 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0xF8, 0x3C, 0x03, 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, - 0xFC, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xF8, 0x00, 0x3F, 0xE0, 0x00, 0x00, - 0x01, 0xFC, 0x00, 0x07, 0xFE, 0x00, 0x1F, 0xFF, 0x00, 0x7F, 0xFF, 0x00, - 0xFF, 0xFE, 0x01, 0xFE, 0x1C, 0x03, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x0F, - 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x3E, 0x00, 0x3E, - 0xFF, 0x80, 0x7D, 0xFF, 0xC0, 0x7F, 0xFF, 0xE0, 0x7F, 0xFF, 0xE0, 0x7F, - 0x87, 0xF0, 0xFF, 0x03, 0xF0, 0xFC, 0x01, 0xF0, 0xF8, 0x01, 0xF0, 0xF8, - 0x01, 0xF0, 0xF8, 0x01, 0xF0, 0xF8, 0x03, 0xE0, 0xF8, 0x03, 0xE0, 0xFC, - 0x07, 0xC0, 0xFE, 0x0F, 0xC0, 0x7F, 0xFF, 0x80, 0x7F, 0xFF, 0x00, 0x3F, - 0xFE, 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0xFF, 0xFD, 0xFF, - 0xFF, 0xE7, 0xFF, 0xFF, 0xBF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFB, 0xE0, 0x07, - 0xCF, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, - 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x1F, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0xFF, - 0xE0, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0xE0, 0x7F, 0xFF, 0xC0, 0xFC, 0x1F, - 0xC3, 0xF0, 0x1F, 0x8F, 0xC0, 0x1F, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0x7C, - 0x7C, 0x01, 0xF0, 0xFC, 0x07, 0xE0, 0xFC, 0x1F, 0x81, 0xFF, 0xFE, 0x01, - 0xFF, 0xF0, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x3F, 0xFF, 0xE0, 0xFE, - 0x0F, 0xC3, 0xF0, 0x0F, 0xC7, 0xC0, 0x0F, 0x9F, 0x00, 0x1F, 0x3E, 0x00, - 0x3E, 0x7C, 0x00, 0xFC, 0xFC, 0x03, 0xF1, 0xFC, 0x1F, 0xE3, 0xFF, 0xFF, - 0x83, 0xFF, 0xFE, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x01, 0xFC, 0x00, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0xF8, 0x00, 0xFF, 0xFC, 0x01, 0xFF, - 0xFE, 0x03, 0xFF, 0xFE, 0x03, 0xF0, 0x7F, 0x07, 0xE0, 0x3F, 0x07, 0xC0, - 0x1F, 0x0F, 0xC0, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, - 0x3F, 0x0F, 0xC0, 0x7F, 0x0F, 0xE1, 0xFF, 0x07, 0xFF, 0xFE, 0x07, 0xFF, - 0xFE, 0x03, 0xFF, 0xBE, 0x01, 0xFF, 0x7C, 0x00, 0xFC, 0x7C, 0x00, 0x00, - 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x0F, - 0xE0, 0x00, 0x1F, 0xC0, 0x38, 0x7F, 0x80, 0x7F, 0xFF, 0x00, 0xFF, 0xFE, - 0x00, 0xFF, 0xF8, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0x07, 0x83, - 0xF1, 0xFC, 0x7F, 0x1F, 0x83, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x1F, 0x8F, 0xE3, 0xF8, 0xFC, - 0x1E, 0x00, 0x00, 0x3C, 0x00, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xC0, - 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF8, 0x03, 0xE0, 0x0F, 0xC0, - 0x1F, 0x00, 0x7C, 0x00, 0xF0, 0x03, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xC0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, - 0x03, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xE0, 0x00, - 0x7F, 0xC0, 0x00, 0xFF, 0x80, 0x03, 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x0F, - 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, - 0x3F, 0xE0, 0x00, 0x0F, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x3F, 0xE0, - 0x00, 0x07, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, - 0x80, 0x1F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, - 0xF3, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x80, 0x00, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, - 0x00, 0x1F, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x7F, - 0xE0, 0x00, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x03, 0xFE, 0x00, 0x07, 0xFC, - 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0x80, - 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFC, 0x01, 0xFF, - 0xE1, 0xFF, 0xFE, 0x3F, 0xFF, 0xE7, 0xFF, 0xFF, 0xF8, 0x1F, 0xFE, 0x00, - 0xFF, 0x80, 0x1F, 0xF0, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x0F, - 0xE0, 0x07, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xC0, 0x0F, 0xE0, - 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xF0, 0x00, 0x3F, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x00, - 0x3F, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0xF0, 0x01, - 0xFF, 0xF0, 0x0F, 0xFF, 0xE0, 0x3F, 0x07, 0xE0, 0x7C, 0x07, 0xC1, 0xE0, - 0x07, 0x87, 0xC0, 0x0F, 0x0F, 0x00, 0x1C, 0x3C, 0x00, 0x78, 0x78, 0x07, - 0xF1, 0xE0, 0x3F, 0xE3, 0xC1, 0xFF, 0x87, 0x87, 0xFF, 0x0E, 0x1F, 0x9E, - 0x3C, 0x7C, 0x3C, 0x78, 0xF0, 0x78, 0xF3, 0xC0, 0xE1, 0xC7, 0x83, 0xC3, - 0x8F, 0x07, 0x8F, 0x1E, 0x0F, 0x1E, 0x3E, 0x1C, 0x3C, 0x7F, 0xFC, 0x78, - 0x7F, 0xFC, 0xF0, 0x7F, 0xF1, 0xE0, 0x3F, 0xE3, 0xC0, 0x00, 0x07, 0x80, - 0x00, 0x0F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3F, 0x01, - 0xC0, 0x7F, 0xFF, 0x80, 0x7F, 0xFE, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0x80, - 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xE0, - 0x00, 0x1F, 0xFF, 0x80, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x0F, 0xFC, 0x00, - 0x00, 0x7F, 0xF0, 0x00, 0x01, 0xE7, 0xC0, 0x00, 0x0F, 0x9F, 0x00, 0x00, - 0x7C, 0x7C, 0x00, 0x01, 0xE1, 0xF8, 0x00, 0x0F, 0x87, 0xE0, 0x00, 0x7C, - 0x0F, 0x80, 0x01, 0xF0, 0x3E, 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x3F, 0xFF, - 0xF0, 0x01, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0xFC, - 0x01, 0xFF, 0xFF, 0xF8, 0x0F, 0xC0, 0x07, 0xE0, 0x3E, 0x00, 0x0F, 0x87, - 0xFF, 0x03, 0xFF, 0xBF, 0xFC, 0x1F, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, - 0xC1, 0xFF, 0xEF, 0xFE, 0x07, 0xFF, 0x00, 0x03, 0xFF, 0xFF, 0x80, 0x3F, - 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, - 0xFF, 0x80, 0x7C, 0x00, 0xFC, 0x03, 0xE0, 0x03, 0xE0, 0x1E, 0x00, 0x1F, - 0x01, 0xF0, 0x00, 0xF8, 0x0F, 0x80, 0x0F, 0x80, 0x7C, 0x01, 0xF8, 0x03, - 0xFF, 0xFF, 0x80, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xFC, 0x03, 0xC0, 0x0F, 0xF0, 0x3E, 0x00, 0x1F, - 0x81, 0xF0, 0x00, 0x7C, 0x0F, 0x80, 0x03, 0xE0, 0x78, 0x00, 0x1F, 0x03, - 0xC0, 0x03, 0xF1, 0xFF, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, - 0xFF, 0x87, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFE, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x03, 0xFF, 0xE6, 0x00, 0x7F, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0x03, - 0xFF, 0xFF, 0xF0, 0x7F, 0x81, 0xFF, 0x0F, 0xE0, 0x07, 0xE1, 0xF8, 0x00, - 0x3E, 0x1F, 0x00, 0x03, 0xE3, 0xF0, 0x00, 0x3C, 0x3E, 0x00, 0x03, 0xC7, - 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0xC0, - 0x00, 0x70, 0x7E, 0x00, 0x1F, 0x07, 0xF8, 0x07, 0xF0, 0x3F, 0xFF, 0xFF, - 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x00, 0x7F, 0xFE, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0xF0, 0x07, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0x00, 0xFE, - 0x01, 0xF0, 0x07, 0xE0, 0x1E, 0x00, 0x3F, 0x01, 0xE0, 0x01, 0xF0, 0x3E, - 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xF0, 0x3E, 0x00, 0x1F, 0x03, 0xC0, 0x01, - 0xF0, 0x7C, 0x00, 0x1F, 0x07, 0xC0, 0x03, 0xF0, 0x7C, 0x00, 0x3E, 0x07, - 0x80, 0x03, 0xE0, 0x78, 0x00, 0x7E, 0x0F, 0x80, 0x07, 0xC0, 0xF8, 0x00, - 0xFC, 0x0F, 0x80, 0x1F, 0x80, 0xF0, 0x07, 0xF0, 0x7F, 0xFF, 0xFE, 0x07, - 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, - 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, - 0xFE, 0x1F, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0x00, 0x78, 0x00, 0xF8, - 0x07, 0xC0, 0x07, 0xC0, 0x3E, 0x00, 0x3E, 0x01, 0xF0, 0xF1, 0xE0, 0x0F, - 0x0F, 0x8E, 0x00, 0x78, 0x7C, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x3F, 0xFE, - 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0xFF, 0xFC, 0x00, - 0x07, 0xC3, 0xC0, 0x00, 0x3E, 0x1E, 0x1E, 0x01, 0xE0, 0xE0, 0xF0, 0x0F, - 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x7C, 0x07, 0xC0, 0x03, 0xE1, 0xFF, 0xFF, - 0xFE, 0x1F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xF8, - 0x1F, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0xC0, - 0x1F, 0x00, 0x0F, 0x80, 0x3E, 0x00, 0x1E, 0x00, 0x78, 0x00, 0x7C, 0x00, - 0xF0, 0x70, 0xF8, 0x03, 0xE1, 0xF0, 0xE0, 0x07, 0xC3, 0xC0, 0x00, 0x0F, - 0xFF, 0x80, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0xFF, - 0xFC, 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x03, 0xC3, 0xE0, 0x00, 0x07, 0x87, - 0xC0, 0x00, 0x1F, 0x07, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x3F, 0xFF, 0x80, - 0x00, 0xFF, 0xFF, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x01, 0xFF, 0xF8, 0x00, - 0x00, 0x00, 0x07, 0xF8, 0x60, 0x03, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xF0, - 0x1F, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xE0, 0x7F, 0x80, 0xFE, 0x0F, 0xE0, - 0x03, 0xE0, 0xF8, 0x00, 0x3C, 0x1F, 0x00, 0x03, 0xC3, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x7F, 0xFC, 0xF8, 0x0F, 0xFF, - 0xEF, 0x80, 0xFF, 0xFE, 0xF8, 0x0F, 0xFF, 0xCF, 0x80, 0x7F, 0xF8, 0xF8, - 0x00, 0x1F, 0x0F, 0xC0, 0x01, 0xF0, 0xFE, 0x00, 0x1F, 0x07, 0xF8, 0x07, - 0xE0, 0x7F, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFC, 0x00, - 0x7F, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x01, 0xFF, 0x0F, 0xF8, 0x0F, - 0xFC, 0x7F, 0xF0, 0x7F, 0xF1, 0xFF, 0xC1, 0xFF, 0xC7, 0xFE, 0x03, 0xFE, - 0x1F, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3C, 0x00, 0x78, 0x00, - 0xF0, 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, - 0x00, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0x80, 0x1F, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xC0, 0x07, 0x80, 0x1F, 0x00, 0x1E, - 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, - 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x07, 0xFE, 0x1F, 0xF8, 0x3F, 0xF8, 0xFF, - 0xF0, 0xFF, 0xE3, 0xFF, 0xC3, 0xFF, 0x8F, 0xFE, 0x0F, 0xFC, 0x3F, 0xF8, - 0x00, 0x03, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xF0, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x07, 0x80, 0x00, 0x07, 0xC0, 0x01, 0xFF, 0xFF, - 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x1F, 0xFF, - 0xF8, 0x00, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0xFC, 0x00, 0x3F, - 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xC0, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x0F, - 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0xC0, 0x07, 0x00, 0x0F, 0x80, - 0x1F, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x78, 0x00, 0x78, 0x01, - 0xF0, 0x01, 0xF0, 0x03, 0xE0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, 0x0F, - 0x80, 0x3F, 0x00, 0x1F, 0xC0, 0xFC, 0x00, 0x7F, 0xFF, 0xF8, 0x00, 0xFF, - 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xC3, 0xFE, 0x0F, 0xFF, 0x8F, 0xFC, 0x1F, - 0xFF, 0x3F, 0xF8, 0x3F, 0xFE, 0x7F, 0xF0, 0x7F, 0xF8, 0x7F, 0xC0, 0x1F, - 0x01, 0xFC, 0x00, 0x3E, 0x07, 0xF0, 0x00, 0x78, 0x3F, 0x80, 0x01, 0xF0, - 0xFE, 0x00, 0x03, 0xE3, 0xF0, 0x00, 0x07, 0xDF, 0xC0, 0x00, 0x0F, 0xFE, - 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0xFF, 0xFE, - 0x00, 0x01, 0xFC, 0xFC, 0x00, 0x03, 0xE0, 0xFC, 0x00, 0x0F, 0x81, 0xF8, - 0x00, 0x1F, 0x01, 0xF8, 0x00, 0x3E, 0x03, 0xF0, 0x00, 0x78, 0x03, 0xE0, - 0x00, 0xF0, 0x07, 0xE0, 0x1F, 0xFE, 0x0F, 0xF8, 0x7F, 0xFC, 0x1F, 0xF8, - 0xFF, 0xF8, 0x1F, 0xF1, 0xFF, 0xF0, 0x3F, 0xE1, 0xFF, 0xC0, 0x7F, 0x80, - 0x03, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0xE0, 0x03, 0xFF, - 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x0E, 0x00, 0xF0, 0x01, 0xE0, 0x3E, 0x00, - 0x7C, 0x07, 0xC0, 0x0F, 0x80, 0xF8, 0x01, 0xF0, 0x1E, 0x00, 0x7C, 0x07, - 0xC0, 0x0F, 0x9F, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, - 0x9F, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x3F, - 0xC1, 0xFF, 0x00, 0x1F, 0xF0, 0x7F, 0xC0, 0x07, 0xFC, 0x1F, 0xF0, 0x03, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x00, 0xFF, 0x80, 0xFF, 0x80, 0x3F, 0xE0, - 0x3F, 0xE0, 0x0F, 0xF8, 0x1F, 0xF0, 0x03, 0xFF, 0x0F, 0xFC, 0x00, 0xF7, - 0xC3, 0xFF, 0x00, 0x7D, 0xF1, 0xF7, 0xC0, 0x1F, 0x7C, 0xFD, 0xF0, 0x07, - 0xDF, 0xBE, 0x78, 0x01, 0xE3, 0xFF, 0x3E, 0x00, 0x78, 0xFF, 0xCF, 0x80, - 0x3E, 0x3F, 0xE3, 0xE0, 0x0F, 0x87, 0xF0, 0xF8, 0x03, 0xE1, 0xFC, 0x3C, - 0x00, 0xF0, 0x7E, 0x1F, 0x00, 0x7C, 0x1F, 0x07, 0xC0, 0x1F, 0x00, 0x01, - 0xF0, 0x07, 0xC0, 0x00, 0x78, 0x07, 0xFE, 0x01, 0xFF, 0x83, 0xFF, 0xC0, - 0xFF, 0xF0, 0xFF, 0xF0, 0x7F, 0xFC, 0x3F, 0xF8, 0x1F, 0xFE, 0x0F, 0xFC, - 0x03, 0xFF, 0x00, 0x07, 0xF8, 0x07, 0xFF, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, - 0xFC, 0x0F, 0xFF, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0xFE, 0x0F, 0xFE, 0x01, - 0xFE, 0x00, 0xF8, 0x01, 0xFF, 0x00, 0xF0, 0x01, 0xFF, 0x01, 0xF0, 0x03, - 0xFF, 0x81, 0xF0, 0x03, 0xFF, 0x81, 0xF0, 0x03, 0xEF, 0xC1, 0xF0, 0x03, - 0xCF, 0xC1, 0xE0, 0x07, 0xC7, 0xE3, 0xE0, 0x07, 0xC7, 0xE3, 0xE0, 0x07, - 0xC3, 0xF3, 0xE0, 0x07, 0xC3, 0xF3, 0xC0, 0x07, 0x81, 0xF7, 0xC0, 0x0F, - 0x81, 0xFF, 0xC0, 0x0F, 0x80, 0xFF, 0xC0, 0x0F, 0x80, 0xFF, 0xC0, 0x0F, - 0x00, 0xFF, 0x80, 0x0F, 0x00, 0x7F, 0x80, 0x7F, 0xF0, 0x7F, 0x80, 0xFF, - 0xF0, 0x3F, 0x80, 0xFF, 0xF0, 0x3F, 0x00, 0xFF, 0xF0, 0x1F, 0x00, 0x7F, - 0xE0, 0x1F, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xFF, - 0xF8, 0x00, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF8, 0x0F, 0xF0, 0x7F, 0x83, - 0xF8, 0x03, 0xF0, 0xFC, 0x00, 0x7E, 0x1F, 0x00, 0x07, 0xE7, 0xE0, 0x00, - 0x7C, 0xF8, 0x00, 0x0F, 0xBE, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x3E, 0xF0, - 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x3E, 0xF8, 0x00, 0x07, - 0xDF, 0x00, 0x00, 0xFB, 0xE0, 0x00, 0x3E, 0x7C, 0x00, 0x0F, 0xCF, 0xC0, - 0x01, 0xF0, 0xF8, 0x00, 0x7E, 0x1F, 0x80, 0x3F, 0x83, 0xFC, 0x1F, 0xE0, - 0x3F, 0xFF, 0xF8, 0x03, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0x00, 0x03, 0xFF, - 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xF8, - 0x07, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0xF0, 0x0F, - 0x80, 0x7F, 0x00, 0xF8, 0x01, 0xF0, 0x0F, 0x00, 0x1F, 0x01, 0xF0, 0x01, - 0xF0, 0x1F, 0x00, 0x1F, 0x01, 0xF0, 0x03, 0xE0, 0x1E, 0x00, 0x7E, 0x01, - 0xE0, 0x0F, 0xC0, 0x3F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, - 0xE0, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7F, 0xFF, - 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xF0, 0x00, - 0x7F, 0xFE, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xFF, 0x80, 0x03, - 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF8, 0x0F, 0xF0, 0x7F, - 0x83, 0xF8, 0x03, 0xF0, 0xFC, 0x00, 0x3F, 0x1F, 0x00, 0x07, 0xE7, 0xC0, - 0x00, 0x7D, 0xF8, 0x00, 0x0F, 0xBE, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x3F, - 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x3E, 0xF8, 0x00, - 0x07, 0xDF, 0x00, 0x01, 0xFB, 0xE0, 0x00, 0x3E, 0x7E, 0x00, 0x0F, 0x8F, - 0xC0, 0x03, 0xF0, 0xFC, 0x01, 0xFC, 0x1F, 0xE0, 0xFF, 0x01, 0xFF, 0xFF, - 0xC0, 0x1F, 0xFF, 0xF0, 0x01, 0xFF, 0xFC, 0x00, 0x1F, 0xFE, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1F, 0xF8, 0x38, 0x0F, 0xFF, 0xFF, - 0x81, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0x00, 0xF0, - 0x1F, 0x80, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x01, 0xFF, - 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0x00, 0x7C, 0x03, - 0xF8, 0x03, 0xE0, 0x07, 0xC0, 0x1E, 0x00, 0x3E, 0x00, 0xF0, 0x01, 0xF0, - 0x0F, 0x80, 0x1F, 0x80, 0x7C, 0x01, 0xF8, 0x03, 0xE0, 0x3F, 0x80, 0x1F, - 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, - 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x1E, 0x07, 0xF0, 0x01, 0xF0, 0x1F, 0xC0, - 0x0F, 0x80, 0x7E, 0x00, 0x7C, 0x03, 0xF8, 0x03, 0xC0, 0x0F, 0xC0, 0xFF, - 0xE0, 0x7F, 0xCF, 0xFF, 0x01, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, - 0x3F, 0xDF, 0xFC, 0x01, 0xFC, 0x00, 0x0F, 0xE1, 0x80, 0x0F, 0xFF, 0xF0, - 0x0F, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xC1, 0xFC, 0x0F, - 0xE0, 0x7C, 0x01, 0xF8, 0x3E, 0x00, 0x3E, 0x0F, 0x80, 0x0F, 0x03, 0xE0, - 0x03, 0xC0, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x07, 0xFF, 0x80, 0x01, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFE, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xE1, 0xE0, 0x00, 0xF8, 0xF8, 0x00, - 0x3E, 0x3E, 0x00, 0x1F, 0x8F, 0xC0, 0x0F, 0xC3, 0xFC, 0x0F, 0xF0, 0xFF, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFE, 0x03, 0x9F, 0xFE, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF7, 0xFF, - 0xFF, 0xFD, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0x9F, 0x07, 0x83, 0xE7, - 0x83, 0xE0, 0xFB, 0xE0, 0xF8, 0x3E, 0xF8, 0x3E, 0x0F, 0x3E, 0x0F, 0x07, - 0xCF, 0x07, 0xC1, 0xF3, 0x81, 0xF0, 0x38, 0x00, 0x7C, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x7C, 0x00, 0x07, 0xFF, 0xF8, 0x01, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, - 0x80, 0x3F, 0xFF, 0xE0, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xF0, 0x7F, 0xE7, - 0xFF, 0x8F, 0xFF, 0x7F, 0xF9, 0xFF, 0xF7, 0xFF, 0x1F, 0xFE, 0x7F, 0xF0, - 0xFF, 0xC1, 0xE0, 0x01, 0xF0, 0x1E, 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xF0, - 0x3E, 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xE0, 0x3C, 0x00, 0x3E, 0x07, 0xC0, - 0x03, 0xE0, 0x7C, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xC0, 0x7C, 0x00, 0x3C, - 0x07, 0x80, 0x07, 0xC0, 0xF8, 0x00, 0x7C, 0x0F, 0x80, 0x07, 0xC0, 0xF8, - 0x00, 0x78, 0x0F, 0x80, 0x0F, 0x80, 0xFC, 0x01, 0xF8, 0x0F, 0xC0, 0x3F, - 0x00, 0xFF, 0x07, 0xE0, 0x07, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xC0, 0x03, - 0xFF, 0xF0, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x7F, 0xF0, - 0x1F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFC, 0x0F, - 0xFF, 0x7F, 0xE0, 0x3F, 0xF8, 0x7C, 0x00, 0x1F, 0x01, 0xF0, 0x00, 0xF8, - 0x07, 0xC0, 0x03, 0xE0, 0x1F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0xF8, 0x00, - 0xF8, 0x03, 0xE0, 0x03, 0xE0, 0x1F, 0x00, 0x0F, 0xC0, 0xFC, 0x00, 0x1F, - 0x03, 0xE0, 0x00, 0x7C, 0x1F, 0x00, 0x01, 0xF0, 0xFC, 0x00, 0x07, 0xC3, - 0xE0, 0x00, 0x1F, 0x9F, 0x00, 0x00, 0x3E, 0xFC, 0x00, 0x00, 0xFB, 0xE0, - 0x00, 0x03, 0xFF, 0x00, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0x7F, 0xF0, 0x3F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0x1E, 0x00, - 0x01, 0xE0, 0xF0, 0x7C, 0x1F, 0x0F, 0x87, 0xE0, 0xF0, 0x7C, 0x3F, 0x0F, - 0x83, 0xE3, 0xF8, 0x7C, 0x1F, 0x1F, 0xE3, 0xC0, 0xF9, 0xFF, 0x3E, 0x07, - 0xCF, 0xF9, 0xF0, 0x3E, 0xFF, 0xCF, 0x01, 0xF7, 0xBE, 0xF8, 0x0F, 0xFD, - 0xF7, 0xC0, 0x7B, 0xCF, 0xFC, 0x03, 0xFE, 0x7F, 0xE0, 0x3F, 0xE3, 0xFF, - 0x01, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, 0x7F, 0x80, 0x7F, 0x83, 0xFC, 0x03, - 0xF8, 0x1F, 0xC0, 0x1F, 0xC0, 0xFE, 0x00, 0xFC, 0x07, 0xF0, 0x07, 0xE0, - 0x3F, 0x00, 0x3E, 0x01, 0xF8, 0x00, 0x01, 0xFE, 0x03, 0xFE, 0x03, 0xFF, - 0x07, 0xFF, 0x07, 0xFF, 0x07, 0xFF, 0x07, 0xFE, 0x07, 0xFE, 0x03, 0xFC, - 0x03, 0xFC, 0x00, 0xFC, 0x03, 0xF0, 0x00, 0xFE, 0x07, 0xE0, 0x00, 0x7E, - 0x1F, 0xC0, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x00, 0x1F, - 0xFC, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, - 0xF8, 0x00, 0x00, 0xFC, 0xFC, 0x00, 0x01, 0xF8, 0x7E, 0x00, 0x03, 0xF0, - 0x7E, 0x00, 0x07, 0xE0, 0x3F, 0x00, 0x0F, 0xC0, 0x1F, 0x80, 0x7F, 0xE0, - 0x7F, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, - 0xFF, 0xE0, 0x7F, 0xC0, 0xFF, 0xC0, 0x7F, 0xC0, 0x7F, 0xFF, 0xF0, 0x3F, - 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0x03, 0xFF, 0x7F, 0x80, 0xFF, 0x87, 0xC0, - 0x1F, 0x01, 0xF8, 0x0F, 0x80, 0x3E, 0x07, 0xC0, 0x0F, 0xC3, 0xE0, 0x01, - 0xF1, 0xF0, 0x00, 0x7E, 0xF8, 0x00, 0x0F, 0xFC, 0x00, 0x03, 0xFE, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x00, 0xF0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x07, 0xFF, 0xF0, 0x03, 0xFF, 0xFE, 0x00, - 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x00, 0x01, 0xFF, - 0xFF, 0xC0, 0x3F, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xE0, - 0x3F, 0xFF, 0xFC, 0x07, 0xC0, 0x3F, 0x00, 0xF8, 0x0F, 0xC0, 0x1F, 0x03, - 0xF0, 0x03, 0xC0, 0xFC, 0x00, 0xF8, 0x3F, 0x00, 0x0E, 0x0F, 0xC0, 0x00, - 0x03, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x07, 0xE0, 0x00, 0x01, 0xF8, 0x0E, 0x00, 0x7E, 0x03, 0xE0, 0x1F, - 0x80, 0x7C, 0x07, 0xE0, 0x0F, 0x01, 0xF8, 0x03, 0xE0, 0x7E, 0x00, 0x7C, - 0x1F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x0F, 0xFF, - 0xFF, 0x81, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, 0x0F, - 0xFC, 0x07, 0xFF, 0x01, 0xFF, 0x80, 0x7C, 0x00, 0x1E, 0x00, 0x07, 0x80, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0xC0, 0x01, - 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x03, 0xE0, 0x00, 0xF8, - 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, - 0x80, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, - 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x00, 0x20, 0x03, 0xC0, 0x3E, 0x01, 0xF0, - 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, 0x0F, 0x80, - 0x7C, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x03, - 0xE0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x03, 0xE0, 0x1F, - 0x00, 0xF8, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x1F, 0x00, 0xF8, - 0x07, 0xC0, 0x3E, 0x00, 0xF0, 0x07, 0x80, 0x38, 0x00, 0xFF, 0xC0, 0x7F, - 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x03, 0xE0, 0x00, 0xF0, - 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, - 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, - 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x7F, 0xE0, 0x3F, 0xF8, - 0x0F, 0xFC, 0x03, 0xFF, 0x00, 0xFF, 0xC0, 0x00, 0x00, 0x08, 0x00, 0x01, - 0xC0, 0x00, 0x3C, 0x00, 0x07, 0xE0, 0x00, 0xFE, 0x00, 0x1F, 0xF0, 0x03, - 0xFF, 0x80, 0xFF, 0xF8, 0x1F, 0xCF, 0xC3, 0xF8, 0xFE, 0x7E, 0x07, 0xEF, - 0xC0, 0x3F, 0xF8, 0x03, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0xE0, 0x7F, 0xFF, - 0xFF, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xEF, 0xFF, 0xFF, 0xFF, 0x00, 0x60, 0xF0, 0xF8, 0x7C, 0x3E, 0x1F, 0x0F, - 0x06, 0x00, 0x3F, 0xE0, 0x03, 0xFF, 0xF8, 0x07, 0xFF, 0xFC, 0x07, 0xFF, - 0xFE, 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x3E, 0x00, 0x7F, 0xFE, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, 0xFC, 0x1F, 0xFF, - 0xFC, 0x3F, 0xFF, 0xFC, 0x7F, 0x00, 0x78, 0x7C, 0x00, 0x78, 0xF8, 0x00, - 0xF8, 0xF8, 0x03, 0xF8, 0xFC, 0x0F, 0xFE, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, - 0xFF, 0x7F, 0xFF, 0xFF, 0x3F, 0xFD, 0xFE, 0x0F, 0xE0, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0xF0, 0xFE, 0x00, 0x0F, 0xBF, 0xFC, 0x00, 0x7F, - 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xC0, 0x1F, 0xFF, 0xFF, 0x00, 0xFF, 0x03, - 0xF8, 0x0F, 0xE0, 0x07, 0xE0, 0x7E, 0x00, 0x3F, 0x03, 0xE0, 0x00, 0xF8, - 0x1F, 0x00, 0x07, 0xC0, 0xF0, 0x00, 0x3E, 0x0F, 0x80, 0x01, 0xF0, 0x7C, - 0x00, 0x1F, 0x03, 0xE0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0xC0, 0xFC, 0x00, - 0x7C, 0x0F, 0xE0, 0x07, 0xE3, 0xFF, 0xC0, 0xFE, 0x3F, 0xFF, 0xFF, 0xE1, - 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xE0, 0x7F, 0x9F, 0xFC, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x00, 0x1F, 0xE3, 0x80, 0x7F, 0xFF, 0xC0, 0x7F, 0xFF, - 0xE0, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF8, 0xFF, 0x01, 0xFC, 0x7E, 0x00, - 0x7C, 0x7E, 0x00, 0x3E, 0x3E, 0x00, 0x0E, 0x3E, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, - 0x00, 0x01, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x0C, 0x7F, 0x80, 0x3F, 0x1F, - 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x00, - 0x0F, 0xFC, 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x7C, 0x00, 0x3F, 0x87, 0xC0, 0x0F, - 0xFF, 0x7C, 0x03, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, - 0x81, 0xFC, 0x0F, 0xF8, 0x3F, 0x00, 0x3F, 0x83, 0xE0, 0x01, 0xF0, 0x7C, - 0x00, 0x1F, 0x07, 0xC0, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, 0x80, 0x01, - 0xF0, 0xF8, 0x00, 0x1E, 0x0F, 0x80, 0x03, 0xE0, 0xF8, 0x00, 0x3E, 0x0F, - 0xC0, 0x07, 0xE0, 0xFC, 0x00, 0xFE, 0x07, 0xF0, 0x3F, 0xF8, 0x7F, 0xFF, - 0xFF, 0xC3, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xC0, 0xFF, 0xE7, 0xF8, - 0x03, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xF0, 0x03, 0xFF, - 0xF8, 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xFE, 0x1F, 0xE0, 0x7E, 0x3F, 0x80, - 0x1F, 0x3F, 0x00, 0x0F, 0x7E, 0x00, 0x0F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x1C, 0x7F, 0x01, 0xFE, 0x7F, 0xFF, - 0xFE, 0x3F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0x03, 0xFF, - 0x00, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xF0, - 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0xE0, 0x01, 0xF0, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x7F, 0xFF, 0xF0, - 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, - 0xFF, 0xE0, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x03, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x0F, - 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0x0F, 0xFE, 0xFF, 0x03, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, - 0x0F, 0xFF, 0xFF, 0xF1, 0xFC, 0x1F, 0xFE, 0x3F, 0x80, 0x7F, 0x03, 0xE0, - 0x03, 0xF0, 0x7E, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xE0, 0xF8, 0x00, 0x3E, - 0x0F, 0x80, 0x03, 0xE0, 0xF8, 0x00, 0x3E, 0x0F, 0x80, 0x03, 0xC0, 0xF8, - 0x00, 0x7C, 0x0F, 0xC0, 0x0F, 0xC0, 0xFC, 0x01, 0xFC, 0x07, 0xF0, 0x7F, - 0x80, 0x7F, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF8, 0x00, - 0xFF, 0xEF, 0x80, 0x03, 0xF0, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0x7E, 0x00, 0x1F, 0xFF, 0xE0, 0x03, 0xFF, 0xFC, 0x00, - 0x3F, 0xFF, 0x80, 0x03, 0xFF, 0xE0, 0x00, 0x3F, 0xF8, 0x00, 0x00, 0x03, - 0xF8, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xE0, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x01, 0xF1, 0xF8, 0x00, 0x79, 0xFF, 0x80, 0x1E, 0xFF, 0xF0, 0x0F, - 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0xFF, 0x07, 0xE0, 0x3F, 0x00, 0xF8, - 0x1F, 0x80, 0x3E, 0x07, 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xC0, 0x7C, 0x00, - 0xF0, 0x1E, 0x00, 0x7C, 0x0F, 0x80, 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0xF8, - 0x01, 0xE0, 0x3C, 0x00, 0xF8, 0x0F, 0x00, 0x3E, 0x1F, 0xF8, 0x3F, 0xEF, - 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0x3F, - 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x01, 0xFF, 0xC0, 0x07, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x1F, 0xFC, 0x00, - 0x3F, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, - 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x01, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x3F, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x07, - 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x01, 0xFF, 0xFE, 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xF8, 0x1F, 0xFF, 0xF0, - 0x3F, 0xFF, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xC0, 0x00, - 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF8, 0x00, 0x01, - 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, - 0xFF, 0xFF, 0x03, 0xFF, 0xFC, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0xC0, 0x0F, - 0xFC, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0xC0, - 0x00, 0x1F, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x3C, 0x3F, 0xF0, - 0x1F, 0x1F, 0xFC, 0x07, 0xC7, 0xFF, 0x01, 0xF1, 0xFF, 0xC0, 0x78, 0x7F, - 0xE0, 0x1E, 0x7F, 0x80, 0x0F, 0xBF, 0x80, 0x03, 0xFF, 0xC0, 0x00, 0xFF, - 0xC0, 0x00, 0x3F, 0xE0, 0x00, 0x0F, 0xFC, 0x00, 0x07, 0xFF, 0x80, 0x01, - 0xF7, 0xF0, 0x00, 0x7C, 0xFE, 0x00, 0x1E, 0x1F, 0xC0, 0x0F, 0x83, 0xF8, - 0x1F, 0xE0, 0xFF, 0xEF, 0xF8, 0x3F, 0xFB, 0xFE, 0x1F, 0xFE, 0xFF, 0x07, - 0xFF, 0x9F, 0xC0, 0xFF, 0xC0, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0xC0, 0x03, - 0xFF, 0x80, 0x07, 0xFF, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, - 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x7F, 0xFF, 0xF9, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0x00, 0x00, 0x07, 0x81, 0xE0, - 0x3F, 0xBF, 0x9F, 0xE1, 0xFF, 0xFE, 0xFF, 0x87, 0xFF, 0xFF, 0xFF, 0x1F, - 0xFF, 0xFF, 0xFC, 0x7F, 0xC7, 0xF1, 0xF0, 0x7E, 0x1F, 0x87, 0xC1, 0xF0, - 0x7C, 0x1F, 0x07, 0x81, 0xE0, 0x7C, 0x1E, 0x0F, 0x81, 0xE0, 0xF8, 0x3E, - 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3C, 0x0F, 0x03, - 0xC1, 0xF0, 0x7C, 0x0F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF1, - 0xFE, 0x1F, 0x87, 0xEF, 0xFC, 0x7F, 0x1F, 0xFF, 0xF3, 0xFC, 0x7F, 0xFF, - 0xCF, 0xF3, 0xFF, 0xFE, 0x3F, 0x8F, 0xE0, 0x00, 0x01, 0xF8, 0x01, 0xF9, - 0xFF, 0x80, 0xFE, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0x83, - 0xFF, 0x07, 0xE0, 0x3F, 0x00, 0xF8, 0x1F, 0x80, 0x3E, 0x07, 0xC0, 0x0F, - 0x81, 0xF0, 0x03, 0xC0, 0x7C, 0x00, 0xF0, 0x1E, 0x00, 0x7C, 0x0F, 0x80, - 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0xF8, 0x01, 0xE0, 0x3C, 0x00, 0xF8, 0x0F, - 0x00, 0x3E, 0x1F, 0xF8, 0x3F, 0xEF, 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, - 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0x3F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, - 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0xFF, - 0x03, 0xF8, 0xFE, 0x00, 0xFE, 0x7C, 0x00, 0x3F, 0x7C, 0x00, 0x0F, 0xBE, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, - 0xC0, 0x00, 0xFB, 0xE0, 0x00, 0xFD, 0xF8, 0x00, 0x7C, 0xFE, 0x00, 0xFE, - 0x3F, 0x81, 0xFE, 0x1F, 0xFF, 0xFE, 0x07, 0xFF, 0xFE, 0x01, 0xFF, 0xFC, - 0x00, 0x7F, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x07, - 0xF9, 0xFF, 0xC0, 0x1F, 0xF7, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0xC0, 0x7F, - 0xFF, 0xFF, 0xC0, 0x7F, 0xF0, 0x3F, 0x80, 0x3F, 0x80, 0x1F, 0x80, 0x7E, - 0x00, 0x3F, 0x00, 0xF8, 0x00, 0x3E, 0x01, 0xF0, 0x00, 0x7C, 0x03, 0xC0, - 0x00, 0xF8, 0x0F, 0x80, 0x01, 0xF0, 0x1F, 0x00, 0x07, 0xE0, 0x3E, 0x00, - 0x0F, 0x80, 0x7C, 0x00, 0x3F, 0x01, 0xFC, 0x00, 0xFC, 0x03, 0xFE, 0x07, - 0xF8, 0x07, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0x80, 0x1E, 0xFF, 0xFC, - 0x00, 0x7C, 0xFF, 0xF0, 0x00, 0xF8, 0x7F, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x1F, - 0xFF, 0x80, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x07, 0xFF, 0x3F, 0xC0, 0xFF, 0xFD, 0xFE, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, - 0xFF, 0xFF, 0x8F, 0xE0, 0x7F, 0xF8, 0xFC, 0x00, 0xFE, 0x07, 0xC0, 0x03, - 0xE0, 0x7C, 0x00, 0x1F, 0x03, 0xE0, 0x00, 0xF8, 0x1E, 0x00, 0x07, 0xC1, - 0xF0, 0x00, 0x3E, 0x0F, 0x80, 0x01, 0xE0, 0x7C, 0x00, 0x1F, 0x03, 0xF0, - 0x01, 0xF8, 0x1F, 0x80, 0x1F, 0xC0, 0xFF, 0x03, 0xFC, 0x03, 0xFF, 0xFF, - 0xE0, 0x1F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xF8, 0x00, 0xFF, 0xE7, 0xC0, - 0x01, 0xFC, 0x3C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xFF, 0x80, 0x00, 0x7F, - 0xFE, 0x00, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0xFF, 0xF0, - 0x00, 0x00, 0x00, 0x0F, 0x80, 0x3F, 0xC3, 0xFE, 0x07, 0xFC, 0xFF, 0xE0, - 0x7F, 0xDF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0x1C, 0x00, 0x7F, - 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xC0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, - 0xFF, 0xF0, 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xCE, 0x03, 0xFF, 0xFC, - 0x0F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC3, 0xF8, 0x0F, 0x87, - 0xC0, 0x0E, 0x0F, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xFF, 0x80, 0x3F, - 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, 0x1F, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x00, - 0x3F, 0x1C, 0x00, 0x3E, 0x7C, 0x00, 0x7C, 0xFC, 0x03, 0xF3, 0xFF, 0xFF, - 0xE7, 0xFF, 0xFF, 0x8F, 0xFF, 0xFE, 0x1F, 0xFF, 0xF0, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, - 0x80, 0x00, 0x78, 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xE1, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xE0, 0x00, - 0x1E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3C, 0x00, - 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, 0xF7, 0xFF, - 0xFF, 0x7F, 0xFF, 0xF3, 0xFF, 0xFE, 0x1F, 0xFF, 0x80, 0x7F, 0x80, 0x7F, - 0x01, 0xFF, 0xFE, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xE0, - 0x3F, 0xC7, 0xC0, 0x07, 0x8F, 0x80, 0x1F, 0x3E, 0x00, 0x3E, 0x7C, 0x00, - 0x7C, 0xF8, 0x00, 0xF1, 0xF0, 0x03, 0xE3, 0xE0, 0x07, 0xC7, 0xC0, 0x0F, - 0x8F, 0x80, 0x1F, 0x1F, 0x00, 0x7C, 0x3E, 0x01, 0xF8, 0x7E, 0x0F, 0xFC, - 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xF1, 0xFF, 0xEF, 0xE1, 0xFF, 0xBF, 0x80, - 0xFC, 0x00, 0x00, 0x7F, 0xF0, 0x7F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, - 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xE1, 0xF8, 0x03, 0xE0, - 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x07, 0xC0, 0x0F, 0x80, 0xF8, 0x00, 0xFC, - 0x1F, 0x80, 0x07, 0xC1, 0xF0, 0x00, 0x7C, 0x3E, 0x00, 0x07, 0xE7, 0xE0, - 0x00, 0x3E, 0x7C, 0x00, 0x03, 0xEF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x03, - 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7F, 0xC0, 0x1F, 0xEF, 0xFC, 0x03, 0xFF, - 0xFF, 0xC0, 0x7F, 0xFF, 0xFC, 0x07, 0xFE, 0x7F, 0x80, 0x3F, 0xC3, 0xE1, - 0xF0, 0xF8, 0x3E, 0x3F, 0x0F, 0x03, 0xE3, 0xF1, 0xF0, 0x3E, 0x7F, 0x1E, - 0x03, 0xE7, 0xF3, 0xE0, 0x3E, 0xFF, 0xBC, 0x03, 0xFF, 0xFF, 0xC0, 0x3F, - 0xFF, 0xFC, 0x03, 0xFE, 0xFF, 0x80, 0x3F, 0xEF, 0xF8, 0x03, 0xFC, 0xFF, - 0x00, 0x3F, 0x8F, 0xF0, 0x03, 0xF8, 0x7E, 0x00, 0x3F, 0x07, 0xE0, 0x01, - 0xF0, 0x7C, 0x00, 0x1E, 0x07, 0xC0, 0x00, 0x03, 0xFE, 0x0F, 0xF8, 0x3F, - 0xF0, 0xFF, 0xC1, 0xFF, 0x8F, 0xFE, 0x0F, 0xFC, 0x7F, 0xF0, 0x7F, 0xC1, - 0xFF, 0x00, 0xFE, 0x1F, 0xC0, 0x03, 0xF9, 0xFC, 0x00, 0x0F, 0xFF, 0xC0, - 0x00, 0x3F, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x7F, 0xE0, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0xFE, 0xFE, 0x00, 0x0F, 0xE3, - 0xF8, 0x00, 0xFE, 0x0F, 0xE0, 0x3F, 0xE0, 0x7F, 0xC3, 0xFF, 0x87, 0xFF, - 0x3F, 0xFC, 0x7F, 0xF9, 0xFF, 0xE3, 0xFF, 0x87, 0xFE, 0x0F, 0xF8, 0x00, - 0x01, 0xFE, 0x03, 0xFE, 0x03, 0xFF, 0x07, 0xFF, 0x07, 0xFF, 0x07, 0xFF, - 0x07, 0xFF, 0x07, 0xFE, 0x03, 0xFC, 0x03, 0xFC, 0x01, 0xF8, 0x01, 0xF0, - 0x00, 0xF8, 0x03, 0xF0, 0x00, 0xF8, 0x03, 0xE0, 0x00, 0xFC, 0x07, 0xC0, - 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x7E, 0x1F, 0x00, - 0x00, 0x7E, 0x3E, 0x00, 0x00, 0x3E, 0x7C, 0x00, 0x00, 0x3E, 0x7C, 0x00, - 0x00, 0x3F, 0xF8, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, - 0x07, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, - 0xE0, 0xFF, 0xFF, 0xE0, 0x7C, 0x0F, 0xE0, 0x3C, 0x0F, 0xE0, 0x1E, 0x0F, - 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, - 0x80, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0xF0, 0x3F, - 0x00, 0xF8, 0x3F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0x80, 0x00, 0x0F, 0x00, 0x1F, 0xC0, 0x1F, - 0xE0, 0x1F, 0xF0, 0x0F, 0xE0, 0x0F, 0xC0, 0x07, 0xC0, 0x07, 0xC0, 0x03, - 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x78, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x3F, 0x80, 0x3F, 0xC0, 0x1F, 0xC0, - 0x0F, 0xE0, 0x07, 0xF8, 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, - 0x80, 0x07, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, - 0x7E, 0x00, 0x3F, 0x80, 0x1F, 0xE0, 0x07, 0xF0, 0x03, 0xF8, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x3E, - 0x07, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0xF8, 0x1F, 0x03, 0xC0, 0x78, 0x0F, - 0x03, 0xE0, 0x7C, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xF0, 0x3C, 0x07, - 0x80, 0xF0, 0x3E, 0x07, 0xC0, 0xF0, 0x1E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, - 0xC0, 0x70, 0x00, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0x7F, 0x00, 0x3F, 0xC0, - 0x0F, 0xE0, 0x03, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x0F, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0xF8, 0x00, 0x7E, 0x00, 0x3F, 0xC0, 0x0F, 0xE0, 0x07, 0xF0, 0x07, 0xF8, - 0x07, 0xF8, 0x03, 0xE0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF0, 0x00, 0x78, - 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x1F, 0x80, 0x7F, - 0xC0, 0x7F, 0xC0, 0x3F, 0xC0, 0x1F, 0xC0, 0x07, 0x80, 0x00, 0x03, 0xE0, - 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xE0, 0x39, 0xFF, 0xE0, 0xF7, 0xFF, 0xE7, - 0xFF, 0xCF, 0xFF, 0xFE, 0x0F, 0xFF, 0x38, 0x0F, 0xFC, 0x00, 0x0F, 0xE0, - 0x00, 0x0F, 0x80}; - -const GFXglyph FreeMonoBoldOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 12, 31, 28, 12, -29}, // 0x21 '!' - {47, 17, 14, 28, 11, -28}, // 0x22 '"' - {77, 24, 34, 28, 5, -30}, // 0x23 '#' - {179, 25, 38, 28, 4, -31}, // 0x24 '$' - {298, 22, 30, 28, 6, -28}, // 0x25 '%' - {381, 21, 28, 28, 5, -26}, // 0x26 '&' - {455, 7, 14, 28, 16, -28}, // 0x27 ''' - {468, 14, 37, 28, 14, -29}, // 0x28 '(' - {533, 14, 37, 28, 5, -29}, // 0x29 ')' - {598, 21, 19, 28, 8, -28}, // 0x2A '*' - {648, 24, 26, 28, 5, -25}, // 0x2B '+' - {726, 12, 14, 28, 6, -6}, // 0x2C ',' - {747, 24, 5, 28, 5, -15}, // 0x2D '-' - {762, 7, 6, 28, 11, -4}, // 0x2E '.' - {768, 28, 38, 28, 3, -32}, // 0x2F '/' - {901, 23, 31, 28, 6, -29}, // 0x30 '0' - {991, 21, 30, 28, 4, -29}, // 0x31 '1' - {1070, 26, 30, 28, 3, -29}, // 0x32 '2' - {1168, 25, 31, 28, 4, -29}, // 0x33 '3' - {1265, 22, 28, 28, 5, -27}, // 0x34 '4' - {1342, 25, 31, 28, 4, -29}, // 0x35 '5' - {1439, 24, 31, 28, 7, -29}, // 0x36 '6' - {1532, 22, 30, 28, 9, -29}, // 0x37 '7' - {1615, 23, 31, 28, 6, -29}, // 0x38 '8' - {1705, 24, 31, 28, 5, -29}, // 0x39 '9' - {1798, 10, 22, 28, 11, -20}, // 0x3A ':' - {1826, 15, 28, 28, 5, -20}, // 0x3B ';' - {1879, 25, 21, 28, 5, -23}, // 0x3C '<' - {1945, 26, 14, 28, 4, -19}, // 0x3D '=' - {1991, 25, 22, 28, 4, -23}, // 0x3E '>' - {2060, 19, 29, 28, 10, -27}, // 0x3F '?' - {2129, 23, 36, 28, 5, -28}, // 0x40 '@' - {2233, 30, 27, 28, 0, -26}, // 0x41 'A' - {2335, 29, 27, 28, 1, -26}, // 0x42 'B' - {2433, 28, 29, 28, 3, -27}, // 0x43 'C' - {2535, 28, 27, 28, 1, -26}, // 0x44 'D' - {2630, 29, 27, 28, 1, -26}, // 0x45 'E' - {2728, 31, 27, 28, 0, -26}, // 0x46 'F' - {2833, 28, 29, 28, 3, -27}, // 0x47 'G' - {2935, 30, 27, 28, 1, -26}, // 0x48 'H' - {3037, 25, 27, 28, 3, -26}, // 0x49 'I' - {3122, 31, 28, 28, 0, -26}, // 0x4A 'J' - {3231, 31, 27, 28, 0, -26}, // 0x4B 'K' - {3336, 27, 27, 28, 1, -26}, // 0x4C 'L' - {3428, 34, 27, 28, 0, -26}, // 0x4D 'M' - {3543, 32, 27, 28, 1, -26}, // 0x4E 'N' - {3651, 27, 29, 28, 3, -27}, // 0x4F 'O' - {3749, 28, 27, 28, 1, -26}, // 0x50 'P' - {3844, 27, 35, 28, 3, -27}, // 0x51 'Q' - {3963, 29, 27, 28, 0, -26}, // 0x52 'R' - {4061, 26, 29, 28, 3, -27}, // 0x53 'S' - {4156, 26, 27, 28, 4, -26}, // 0x54 'T' - {4244, 28, 28, 28, 4, -26}, // 0x55 'U' - {4342, 30, 27, 28, 2, -26}, // 0x56 'V' - {4444, 29, 27, 28, 3, -26}, // 0x57 'W' - {4542, 32, 27, 28, 0, -26}, // 0x58 'X' - {4650, 26, 27, 28, 4, -26}, // 0x59 'Y' - {4738, 27, 27, 28, 2, -26}, // 0x5A 'Z' - {4830, 18, 37, 28, 10, -29}, // 0x5B '[' - {4914, 13, 38, 28, 10, -32}, // 0x5C '\' - {4976, 18, 37, 28, 5, -29}, // 0x5D ']' - {5060, 20, 15, 28, 8, -29}, // 0x5E '^' - {5098, 29, 5, 28, -2, 5}, // 0x5F '_' - {5117, 8, 8, 28, 13, -30}, // 0x60 '`' - {5125, 24, 23, 28, 3, -21}, // 0x61 'a' - {5194, 29, 31, 28, 0, -29}, // 0x62 'b' - {5307, 25, 23, 28, 3, -21}, // 0x63 'c' - {5379, 28, 31, 28, 3, -29}, // 0x64 'd' - {5488, 24, 23, 28, 3, -21}, // 0x65 'e' - {5557, 28, 30, 28, 4, -29}, // 0x66 'f' - {5662, 28, 31, 28, 3, -21}, // 0x67 'g' - {5771, 26, 30, 28, 2, -29}, // 0x68 'h' - {5869, 23, 29, 28, 3, -28}, // 0x69 'i' - {5953, 23, 38, 28, 3, -28}, // 0x6A 'j' - {6063, 26, 30, 28, 2, -29}, // 0x6B 'k' - {6161, 23, 30, 28, 3, -29}, // 0x6C 'l' - {6248, 30, 22, 28, 0, -21}, // 0x6D 'm' - {6331, 26, 22, 28, 2, -21}, // 0x6E 'n' - {6403, 25, 23, 28, 3, -21}, // 0x6F 'o' - {6475, 31, 31, 28, -1, -21}, // 0x70 'p' - {6596, 29, 31, 28, 2, -21}, // 0x71 'q' - {6709, 28, 22, 28, 2, -21}, // 0x72 'r' - {6786, 23, 23, 28, 4, -21}, // 0x73 's' - {6853, 20, 28, 28, 5, -26}, // 0x74 't' - {6923, 23, 22, 28, 5, -20}, // 0x75 'u' - {6987, 28, 21, 28, 3, -20}, // 0x76 'v' - {7061, 28, 21, 28, 3, -20}, // 0x77 'w' - {7135, 29, 21, 28, 1, -20}, // 0x78 'x' - {7212, 32, 30, 28, -1, -20}, // 0x79 'y' - {7332, 25, 21, 28, 4, -20}, // 0x7A 'z' - {7398, 17, 37, 28, 10, -29}, // 0x7B '{' - {7477, 11, 36, 28, 11, -28}, // 0x7C '|' - {7527, 17, 37, 28, 6, -29}, // 0x7D '}' - {7606, 23, 10, 28, 5, -17}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique24pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique24pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique24pt7bGlyphs, 0x20, 0x7E, 47}; - -// Approx. 8307 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h deleted file mode 100644 index 86d3e9c..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h +++ /dev/null @@ -1,205 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique9pt7bBitmaps[] PROGMEM = { - 0x39, 0xCC, 0x67, 0x31, 0x8C, 0x07, 0x38, 0x6C, 0xD9, 0x36, 0x48, 0x80, - 0x09, 0x0D, 0x86, 0xCF, 0xF7, 0xF9, 0xB3, 0xFD, 0xFE, 0x6C, 0x36, 0x1B, - 0x00, 0x00, 0x06, 0x07, 0x07, 0xE6, 0x33, 0x01, 0xE0, 0x7C, 0x06, 0x43, - 0x33, 0xBF, 0x83, 0x03, 0x00, 0x80, 0x1C, 0x11, 0x10, 0x88, 0x83, 0xB8, - 0xF3, 0xB8, 0x22, 0x21, 0x11, 0x07, 0x00, 0x0F, 0x1F, 0x30, 0x30, 0x38, - 0x7B, 0xDF, 0xCE, 0xFF, 0x7E, 0xFA, 0x80, 0x19, 0x8C, 0xC6, 0x63, 0x18, - 0xC6, 0x31, 0xC6, 0x30, 0x31, 0xC6, 0x31, 0x8C, 0x63, 0x31, 0x98, 0xCC, - 0x40, 0x08, 0x08, 0xFF, 0xFF, 0x38, 0x6C, 0x6C, 0x0C, 0x06, 0x03, 0x1F, - 0xFF, 0xF8, 0xC0, 0x60, 0x30, 0x10, 0x00, 0x36, 0x4C, 0x80, 0xFF, 0xFF, - 0xC0, 0xFC, 0x00, 0x00, 0x0C, 0x03, 0x00, 0xC0, 0x18, 0x06, 0x01, 0x80, - 0x30, 0x0C, 0x03, 0x00, 0x60, 0x18, 0x06, 0x00, 0xC0, 0x30, 0x00, 0x0F, - 0x0F, 0xCC, 0x6C, 0x36, 0x1B, 0x0D, 0x05, 0x86, 0xC3, 0x63, 0x3F, 0x8F, - 0x00, 0x06, 0x1C, 0x3C, 0x6C, 0x0C, 0x0C, 0x08, 0x18, 0x18, 0x18, 0xFE, - 0xFE, 0x07, 0x83, 0xF1, 0x8C, 0x43, 0x00, 0xC0, 0xE0, 0x70, 0x38, 0x38, - 0x1C, 0x6F, 0xF3, 0xFC, 0x1F, 0x1F, 0xC0, 0x60, 0x30, 0x30, 0x70, 0x38, - 0x06, 0x03, 0x03, 0xBF, 0x9F, 0x80, 0x03, 0x07, 0x0B, 0x1B, 0x32, 0x66, - 0xFF, 0xFF, 0x1E, 0x1E, 0x3F, 0x9F, 0x98, 0x0F, 0xC7, 0xF3, 0x18, 0x0C, - 0x06, 0x06, 0x7F, 0x1E, 0x00, 0x07, 0x87, 0xCE, 0x06, 0x06, 0x03, 0xF3, - 0xFD, 0xC6, 0xC3, 0x63, 0xBF, 0x8F, 0x80, 0xFF, 0xFF, 0xC3, 0x06, 0x06, - 0x0C, 0x18, 0x18, 0x30, 0x30, 0x60, 0x1F, 0x1F, 0xDC, 0x6C, 0x36, 0x31, - 0xF1, 0xF8, 0xC6, 0xC3, 0x63, 0xBF, 0x8F, 0x80, 0x1E, 0x3F, 0x33, 0x63, - 0x63, 0x67, 0x7F, 0x3E, 0x06, 0x1C, 0xF8, 0xF0, 0x77, 0x00, 0x00, 0xEE, - 0x1C, 0x70, 0x00, 0x00, 0x03, 0x0C, 0x61, 0x08, 0x00, 0x00, 0xC1, 0xE1, - 0xE1, 0xE0, 0xF0, 0x07, 0x00, 0xF0, 0x0C, 0x7F, 0xDF, 0xF0, 0x00, 0x00, - 0x7F, 0xFF, 0xF0, 0x30, 0x0F, 0x00, 0xE0, 0x1E, 0x07, 0xC7, 0x87, 0x83, - 0x00, 0x7D, 0xFF, 0x18, 0x30, 0xE3, 0x9C, 0x30, 0x01, 0xC3, 0x80, 0x0F, - 0x0F, 0xCC, 0x6C, 0x36, 0x72, 0x79, 0x7D, 0xB6, 0xDA, 0x6F, 0xB3, 0xD8, - 0x0C, 0x07, 0xE1, 0xE0, 0x0F, 0x83, 0xF0, 0x1E, 0x03, 0xC0, 0xD8, 0x31, - 0x87, 0xF1, 0xFE, 0x30, 0xDF, 0x3F, 0xC7, 0x80, 0x3F, 0xC7, 0xFC, 0x61, - 0x8C, 0x31, 0xFC, 0x3F, 0x84, 0x19, 0x83, 0x30, 0x6F, 0xFB, 0xFE, 0x00, - 0x0F, 0xF1, 0xFF, 0x30, 0x66, 0x06, 0x60, 0x0C, 0x00, 0xC0, 0x0C, 0x00, - 0xE0, 0xC7, 0xF8, 0x3F, 0x00, 0x3F, 0x87, 0xF8, 0x63, 0x8C, 0x31, 0x06, - 0x60, 0xCC, 0x19, 0x86, 0x31, 0xCF, 0xF3, 0xF8, 0x00, 0x3F, 0xE3, 0xFE, - 0x18, 0x61, 0xB6, 0x1F, 0x01, 0xF0, 0x32, 0x03, 0x00, 0x30, 0x4F, 0xFC, - 0xFF, 0xC0, 0x3F, 0xF3, 0xFE, 0x18, 0x61, 0xB6, 0x1F, 0x03, 0xF0, 0x32, - 0x03, 0x00, 0x30, 0x0F, 0xC0, 0xFC, 0x00, 0x0F, 0xE3, 0xFC, 0xC1, 0x30, - 0x06, 0x01, 0x80, 0x31, 0xF6, 0x3E, 0xE1, 0x9F, 0xF0, 0xF8, 0x00, 0x1E, - 0xF3, 0xCF, 0x18, 0x61, 0x84, 0x10, 0xC3, 0xFC, 0x3F, 0xC3, 0x08, 0x31, - 0x8F, 0xBC, 0xFB, 0xC0, 0x3F, 0xCF, 0xF0, 0x60, 0x10, 0x0C, 0x03, 0x00, - 0xC0, 0x20, 0x18, 0x3F, 0xCF, 0xF0, 0x07, 0xF0, 0x7F, 0x00, 0x80, 0x18, - 0x01, 0x80, 0x18, 0x61, 0x84, 0x10, 0xC3, 0x0F, 0xE0, 0x7C, 0x00, 0x3E, - 0xE7, 0xFC, 0x66, 0x0D, 0x81, 0x60, 0x7C, 0x0E, 0xC1, 0x98, 0x31, 0x1F, - 0x3B, 0xE7, 0x00, 0x3F, 0x07, 0xE0, 0x30, 0x06, 0x00, 0xC0, 0x10, 0x06, - 0x00, 0xC3, 0x18, 0x6F, 0xFB, 0xFF, 0x00, 0x38, 0x39, 0xC3, 0xC7, 0x3C, - 0x79, 0xE3, 0xDA, 0x1F, 0xF0, 0x9D, 0x8C, 0xCC, 0x60, 0x67, 0xCF, 0x3C, - 0x78, 0x3C, 0xF9, 0xE7, 0x87, 0x18, 0x3C, 0xC1, 0x66, 0x1B, 0xB0, 0xCD, - 0x06, 0x78, 0x31, 0xC3, 0xCE, 0x3E, 0x30, 0x0F, 0x0F, 0xE7, 0x1D, 0x83, - 0xC0, 0xF0, 0x3C, 0x0F, 0x06, 0xE3, 0x9F, 0xC3, 0xC0, 0x3F, 0xC7, 0xFC, - 0x61, 0x8C, 0x31, 0x8E, 0x3F, 0x87, 0xE1, 0x80, 0x30, 0x0F, 0xC3, 0xF0, - 0x00, 0x0F, 0x0F, 0xE7, 0x1D, 0x83, 0xC0, 0xF0, 0x3C, 0x0F, 0x06, 0xE3, - 0x1F, 0xC3, 0xC0, 0x80, 0x7F, 0x3F, 0xC0, 0x3F, 0xC3, 0xFE, 0x18, 0x61, - 0x86, 0x10, 0xE3, 0xFC, 0x3F, 0x83, 0x18, 0x31, 0xCF, 0x8F, 0xF8, 0x70, - 0x1E, 0xCF, 0xF7, 0x19, 0x80, 0x70, 0x1F, 0x81, 0xF3, 0x0C, 0xC3, 0x3F, - 0x8B, 0xC0, 0x7F, 0xCF, 0xF9, 0x93, 0x66, 0x60, 0xC0, 0x18, 0x02, 0x00, - 0xC0, 0x18, 0x0F, 0xC1, 0xF8, 0x00, 0xF9, 0xFF, 0x7D, 0x83, 0x30, 0x64, - 0x09, 0x83, 0x30, 0x66, 0x0C, 0xE3, 0x0F, 0xC0, 0xF0, 0x00, 0xF9, 0xFE, - 0x3D, 0x83, 0x30, 0xC6, 0x30, 0xE6, 0x0D, 0x81, 0xB0, 0x3C, 0x07, 0x00, - 0x60, 0x00, 0xF9, 0xFF, 0x3D, 0x83, 0x36, 0x64, 0xC8, 0xBF, 0x35, 0xE7, - 0xB8, 0xE7, 0x1C, 0xE3, 0x18, 0x00, 0x3C, 0xF3, 0xCF, 0x1C, 0xC0, 0xD8, - 0x0F, 0x00, 0x60, 0x0F, 0x01, 0xB8, 0x31, 0x8F, 0x3C, 0xF3, 0xC0, 0x79, - 0xEE, 0x38, 0xC6, 0x19, 0x81, 0xE0, 0x38, 0x06, 0x00, 0xC0, 0x18, 0x0F, - 0xC3, 0xF8, 0x00, 0x3F, 0xCF, 0xF3, 0x18, 0xCC, 0x06, 0x03, 0x01, 0x80, - 0xC6, 0x61, 0xBF, 0xCF, 0xF0, 0x1E, 0x3C, 0xC1, 0x83, 0x06, 0x08, 0x30, - 0x60, 0xC1, 0x06, 0x0F, 0x1E, 0x00, 0x06, 0x31, 0x86, 0x31, 0x8C, 0x31, - 0x8C, 0x61, 0x8C, 0x60, 0x1E, 0x78, 0x30, 0x60, 0xC1, 0x86, 0x0C, 0x18, - 0x30, 0x41, 0x8F, 0x1E, 0x00, 0x08, 0x1C, 0x3C, 0x76, 0xE7, 0xC3, 0x7F, - 0xFF, 0xFC, 0x88, 0x80, 0x0F, 0x07, 0xE1, 0xF9, 0xFE, 0xE3, 0x30, 0xCF, - 0xFD, 0xFF, 0x38, 0x07, 0x00, 0x60, 0x0F, 0xC1, 0xFC, 0x71, 0xCC, 0x19, - 0x83, 0x30, 0xDF, 0xFB, 0xBC, 0x00, 0x1F, 0xCF, 0xF6, 0x1B, 0x00, 0xC0, - 0x30, 0x0F, 0xF1, 0xF8, 0x01, 0xE0, 0x38, 0x03, 0x0F, 0x63, 0xFC, 0xC3, - 0x30, 0x66, 0x0C, 0xC3, 0x9F, 0xF9, 0xF7, 0x00, 0x1F, 0x1F, 0xD8, 0x3F, - 0xFF, 0xFE, 0x1B, 0xFC, 0xF8, 0x07, 0xC3, 0xF1, 0x81, 0xFE, 0x7F, 0x84, - 0x03, 0x00, 0xC0, 0x30, 0x3F, 0x8F, 0xE0, 0x1E, 0xE7, 0xFD, 0x86, 0x60, - 0xCC, 0x19, 0xC6, 0x3F, 0xC1, 0xD8, 0x03, 0x00, 0xE1, 0xF8, 0x3E, 0x00, - 0x38, 0x1E, 0x01, 0x00, 0xDC, 0x3F, 0x8C, 0x62, 0x19, 0x84, 0x63, 0x3D, - 0xFF, 0x7C, 0x06, 0x03, 0x00, 0x03, 0xC3, 0xE0, 0x20, 0x30, 0x18, 0x0C, - 0x3F, 0xFF, 0xE0, 0x01, 0x81, 0x80, 0x07, 0xF3, 0xF8, 0x0C, 0x04, 0x06, - 0x03, 0x01, 0x80, 0xC0, 0x40, 0x67, 0xE3, 0xE0, 0x38, 0x0E, 0x01, 0x80, - 0x4F, 0x37, 0xCF, 0x83, 0xC0, 0xF0, 0x26, 0x39, 0xEE, 0x78, 0x1F, 0x0F, - 0x01, 0x80, 0xC0, 0x60, 0x20, 0x30, 0x18, 0x0C, 0x3F, 0xFF, 0xE0, 0x7E, - 0xE7, 0xFF, 0x33, 0x32, 0x63, 0x66, 0x36, 0x62, 0xF7, 0x7F, 0x67, 0x77, - 0x8F, 0xF8, 0xC3, 0x10, 0x66, 0x08, 0xC3, 0x3C, 0x7F, 0x8F, 0x1F, 0x0F, - 0xE6, 0x1F, 0x03, 0xC0, 0xF8, 0x67, 0xF0, 0xF8, 0x3F, 0xE3, 0xFF, 0x1C, - 0x31, 0x83, 0x18, 0x31, 0x86, 0x3F, 0xE3, 0x78, 0x30, 0x03, 0x00, 0xFC, - 0x0F, 0x80, 0x1E, 0xEF, 0xFD, 0x86, 0x60, 0xCC, 0x19, 0xC7, 0x3F, 0xE1, - 0xE8, 0x03, 0x00, 0x60, 0x3E, 0x07, 0xC0, 0x39, 0xDF, 0xF1, 0xC0, 0x60, - 0x10, 0x0C, 0x0F, 0xF3, 0xF8, 0x1F, 0x7F, 0x63, 0x7E, 0x1F, 0xC3, 0xFE, - 0xFC, 0x10, 0x08, 0x0C, 0x1F, 0xEF, 0xF1, 0x80, 0x80, 0xC0, 0x60, 0x3F, - 0x8F, 0x80, 0xF3, 0xFC, 0xF6, 0x09, 0x86, 0x61, 0x98, 0xE7, 0xF8, 0xFE, - 0xFB, 0xFF, 0x7C, 0xC6, 0x19, 0x83, 0x60, 0x6C, 0x07, 0x00, 0xC0, 0xF1, - 0xFE, 0x3D, 0xB3, 0x37, 0xC7, 0xF8, 0xEE, 0x1D, 0xC3, 0x30, 0x79, 0xEF, - 0x38, 0xEE, 0x0F, 0x01, 0xE0, 0x6E, 0x3C, 0xE7, 0xBC, 0x3C, 0xF3, 0x8F, - 0x18, 0xC1, 0x9C, 0x19, 0x81, 0xF0, 0x0E, 0x00, 0xE0, 0x0C, 0x01, 0x80, - 0xFC, 0x0F, 0xC0, 0x7F, 0xBF, 0xD9, 0xC1, 0x83, 0x83, 0x1B, 0xFD, 0xFE, - 0x06, 0x1C, 0x60, 0xC1, 0x86, 0x3C, 0x70, 0x30, 0x41, 0x83, 0x07, 0x06, - 0x00, 0x33, 0x32, 0x26, 0x66, 0x44, 0xCC, 0xC8, 0x0C, 0x0E, 0x04, 0x0C, - 0x0C, 0x0C, 0x0F, 0x0F, 0x18, 0x18, 0x10, 0x30, 0xF0, 0xE0, 0x38, 0x7C, - 0xF7, 0xC1, 0xC0}; - -const GFXglyph FreeMonoBoldOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 5, 11, 11, 4, -10}, // 0x21 '!' - {7, 7, 5, 11, 4, -10}, // 0x22 '"' - {12, 9, 12, 11, 2, -10}, // 0x23 '#' - {26, 9, 14, 11, 2, -11}, // 0x24 '$' - {42, 9, 11, 11, 2, -10}, // 0x25 '%' - {55, 8, 10, 11, 2, -9}, // 0x26 '&' - {65, 2, 5, 11, 6, -10}, // 0x27 ''' - {67, 5, 14, 11, 5, -10}, // 0x28 '(' - {76, 5, 14, 11, 2, -10}, // 0x29 ')' - {85, 8, 7, 11, 3, -10}, // 0x2A '*' - {92, 9, 9, 11, 2, -8}, // 0x2B '+' - {103, 4, 5, 11, 2, -1}, // 0x2C ',' - {106, 9, 2, 11, 2, -5}, // 0x2D '-' - {109, 3, 2, 11, 4, -1}, // 0x2E '.' - {110, 11, 15, 11, 1, -12}, // 0x2F '/' - {131, 9, 12, 11, 2, -11}, // 0x30 '0' - {145, 8, 12, 11, 2, -11}, // 0x31 '1' - {157, 10, 12, 11, 1, -11}, // 0x32 '2' - {172, 9, 12, 11, 2, -11}, // 0x33 '3' - {186, 8, 10, 11, 2, -9}, // 0x34 '4' - {196, 9, 11, 11, 3, -10}, // 0x35 '5' - {209, 9, 12, 11, 3, -11}, // 0x36 '6' - {223, 8, 11, 11, 3, -10}, // 0x37 '7' - {234, 9, 12, 11, 2, -11}, // 0x38 '8' - {248, 8, 12, 11, 3, -11}, // 0x39 '9' - {260, 4, 8, 11, 4, -7}, // 0x3A ':' - {264, 6, 11, 11, 2, -7}, // 0x3B ';' - {273, 10, 8, 11, 2, -8}, // 0x3C '<' - {283, 10, 6, 11, 1, -7}, // 0x3D '=' - {291, 10, 8, 11, 1, -8}, // 0x3E '>' - {301, 7, 11, 11, 4, -10}, // 0x3F '?' - {311, 9, 15, 11, 2, -11}, // 0x40 '@' - {328, 11, 11, 11, 0, -10}, // 0x41 'A' - {344, 11, 11, 11, 0, -10}, // 0x42 'B' - {360, 12, 11, 11, 1, -10}, // 0x43 'C' - {377, 11, 11, 11, 0, -10}, // 0x44 'D' - {393, 12, 11, 11, 0, -10}, // 0x45 'E' - {410, 12, 11, 11, 0, -10}, // 0x46 'F' - {427, 11, 11, 11, 1, -10}, // 0x47 'G' - {443, 12, 11, 11, 0, -10}, // 0x48 'H' - {460, 10, 11, 11, 1, -10}, // 0x49 'I' - {474, 12, 11, 11, 0, -10}, // 0x4A 'J' - {491, 11, 11, 11, 0, -10}, // 0x4B 'K' - {507, 11, 11, 11, 0, -10}, // 0x4C 'L' - {523, 13, 11, 11, 0, -10}, // 0x4D 'M' - {541, 13, 11, 11, 0, -10}, // 0x4E 'N' - {559, 10, 11, 11, 1, -10}, // 0x4F 'O' - {573, 11, 11, 11, 0, -10}, // 0x50 'P' - {589, 10, 14, 11, 1, -10}, // 0x51 'Q' - {607, 12, 11, 11, 0, -10}, // 0x52 'R' - {624, 10, 11, 11, 2, -10}, // 0x53 'S' - {638, 11, 11, 11, 1, -10}, // 0x54 'T' - {654, 11, 11, 11, 1, -10}, // 0x55 'U' - {670, 11, 11, 11, 1, -10}, // 0x56 'V' - {686, 11, 11, 11, 1, -10}, // 0x57 'W' - {702, 12, 11, 11, 0, -10}, // 0x58 'X' - {719, 11, 11, 11, 1, -10}, // 0x59 'Y' - {735, 10, 11, 11, 1, -10}, // 0x5A 'Z' - {749, 7, 14, 11, 4, -10}, // 0x5B '[' - {762, 5, 15, 11, 4, -12}, // 0x5C '\' - {772, 7, 14, 11, 2, -10}, // 0x5D ']' - {785, 8, 6, 11, 3, -11}, // 0x5E '^' - {791, 11, 2, 11, -1, 3}, // 0x5F '_' - {794, 3, 3, 11, 5, -11}, // 0x60 '`' - {796, 10, 8, 11, 1, -7}, // 0x61 'a' - {806, 11, 11, 11, 0, -10}, // 0x62 'b' - {822, 10, 8, 11, 1, -7}, // 0x63 'c' - {832, 11, 11, 11, 1, -10}, // 0x64 'd' - {848, 9, 8, 11, 1, -7}, // 0x65 'e' - {857, 10, 11, 11, 2, -10}, // 0x66 'f' - {871, 11, 12, 11, 1, -7}, // 0x67 'g' - {888, 10, 11, 11, 1, -10}, // 0x68 'h' - {902, 9, 11, 11, 1, -10}, // 0x69 'i' - {915, 9, 15, 11, 1, -10}, // 0x6A 'j' - {932, 10, 11, 11, 1, -10}, // 0x6B 'k' - {946, 9, 11, 11, 1, -10}, // 0x6C 'l' - {959, 12, 8, 11, 0, -7}, // 0x6D 'm' - {971, 11, 8, 11, 1, -7}, // 0x6E 'n' - {982, 10, 8, 11, 1, -7}, // 0x6F 'o' - {992, 12, 12, 11, -1, -7}, // 0x70 'p' - {1010, 11, 12, 11, 1, -7}, // 0x71 'q' - {1027, 10, 8, 11, 1, -7}, // 0x72 'r' - {1037, 8, 8, 11, 2, -7}, // 0x73 's' - {1045, 9, 11, 11, 1, -10}, // 0x74 't' - {1058, 10, 8, 11, 1, -7}, // 0x75 'u' - {1068, 11, 8, 11, 1, -7}, // 0x76 'v' - {1079, 11, 8, 11, 1, -7}, // 0x77 'w' - {1090, 11, 8, 11, 1, -7}, // 0x78 'x' - {1101, 12, 12, 11, 0, -7}, // 0x79 'y' - {1119, 9, 8, 11, 2, -7}, // 0x7A 'z' - {1128, 7, 14, 11, 3, -10}, // 0x7B '{' - {1141, 4, 14, 11, 4, -10}, // 0x7C '|' - {1148, 8, 14, 11, 2, -10}, // 0x7D '}' - {1162, 9, 4, 11, 2, -6}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique9pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique9pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique9pt7bGlyphs, 0x20, 0x7E, 18}; - -// Approx. 1839 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h deleted file mode 100644 index 0617603..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h +++ /dev/null @@ -1,250 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique12pt7bBitmaps[] PROGMEM = { - 0x11, 0x11, 0x12, 0x22, 0x22, 0x00, 0x0E, 0xE0, 0xE7, 0xE7, 0xC6, 0xC6, - 0xC6, 0x84, 0x84, 0x02, 0x40, 0x88, 0x12, 0x02, 0x40, 0x48, 0x7F, 0xC2, - 0x40, 0x48, 0x11, 0x1F, 0xF8, 0x48, 0x09, 0x02, 0x40, 0x48, 0x09, 0x02, - 0x20, 0x02, 0x01, 0x00, 0xF4, 0xC3, 0x60, 0x50, 0x04, 0x00, 0xC0, 0x0F, - 0x00, 0x60, 0x0A, 0x02, 0x81, 0x30, 0xC7, 0xC0, 0x80, 0x20, 0x08, 0x00, - 0x0E, 0x02, 0x20, 0x84, 0x10, 0x82, 0x20, 0x38, 0x00, 0x38, 0x38, 0x38, - 0x08, 0xE0, 0x22, 0x08, 0x41, 0x08, 0x22, 0x03, 0x80, 0x07, 0x84, 0x04, - 0x02, 0x01, 0x00, 0xC1, 0xA2, 0x8A, 0x85, 0x43, 0x31, 0x8F, 0x60, 0xFF, - 0x6D, 0x20, 0x00, 0x44, 0x42, 0x21, 0x08, 0x84, 0x21, 0x08, 0x42, 0x10, - 0x42, 0x00, 0x00, 0x84, 0x10, 0x84, 0x21, 0x08, 0x46, 0x21, 0x10, 0x88, - 0x44, 0x00, 0x04, 0x02, 0x02, 0x1D, 0x13, 0xF0, 0x40, 0x50, 0x48, 0x44, - 0x00, 0x02, 0x00, 0x40, 0x08, 0x02, 0x00, 0x41, 0xFF, 0xC1, 0x00, 0x20, - 0x08, 0x01, 0x00, 0x20, 0x00, 0x1C, 0xE3, 0x18, 0x63, 0x08, 0x00, 0xFF, - 0xE0, 0x7F, 0x00, 0x00, 0x08, 0x00, 0x80, 0x04, 0x00, 0x40, 0x04, 0x00, - 0x60, 0x02, 0x00, 0x20, 0x03, 0x00, 0x10, 0x01, 0x00, 0x18, 0x00, 0x80, - 0x08, 0x00, 0x80, 0x04, 0x00, 0x40, 0x04, 0x00, 0x00, 0x07, 0x06, 0x23, - 0x04, 0x81, 0x40, 0x50, 0x14, 0x06, 0x02, 0x80, 0xA0, 0x28, 0x0A, 0x04, - 0x83, 0x11, 0x83, 0x80, 0x03, 0x03, 0x83, 0x83, 0x43, 0x20, 0x10, 0x08, - 0x08, 0x04, 0x02, 0x01, 0x01, 0x00, 0x80, 0x43, 0xFE, 0x01, 0xC0, 0x62, - 0x0C, 0x10, 0x81, 0x00, 0x10, 0x02, 0x00, 0x60, 0x0C, 0x01, 0x00, 0x20, - 0x0C, 0x01, 0x80, 0x20, 0x04, 0x04, 0xFF, 0xC0, 0x07, 0xC3, 0x0C, 0x00, - 0x80, 0x10, 0x06, 0x01, 0x81, 0xC0, 0x0C, 0x00, 0x40, 0x08, 0x01, 0x00, - 0x20, 0x09, 0x86, 0x0F, 0x00, 0x00, 0xC0, 0x50, 0x24, 0x12, 0x04, 0x82, - 0x21, 0x08, 0x82, 0x21, 0x10, 0x4F, 0xF8, 0x04, 0x01, 0x00, 0x80, 0xF8, - 0x0F, 0xE2, 0x00, 0x40, 0x08, 0x01, 0x00, 0x4E, 0x0E, 0x20, 0x02, 0x00, - 0x40, 0x08, 0x01, 0x00, 0x40, 0x19, 0x06, 0x1F, 0x00, 0x01, 0xE0, 0xC0, - 0x60, 0x18, 0x02, 0x00, 0x80, 0x13, 0xC5, 0x88, 0xE0, 0x98, 0x12, 0x02, - 0x40, 0x48, 0x10, 0x84, 0x0F, 0x00, 0xFF, 0xA0, 0x20, 0x08, 0x04, 0x01, - 0x00, 0x80, 0x20, 0x10, 0x04, 0x02, 0x00, 0x80, 0x40, 0x10, 0x08, 0x02, - 0x00, 0x07, 0x81, 0x08, 0x40, 0x90, 0x12, 0x02, 0x40, 0x84, 0x20, 0x78, - 0x30, 0x88, 0x0A, 0x01, 0x40, 0x28, 0x08, 0x82, 0x0F, 0x80, 0x07, 0x81, - 0x08, 0x40, 0x90, 0x12, 0x02, 0x40, 0xC8, 0x39, 0x8D, 0x1E, 0x40, 0x08, - 0x02, 0x00, 0xC0, 0x30, 0x18, 0x3E, 0x00, 0x19, 0xCC, 0x00, 0x00, 0x0C, - 0xE6, 0x00, 0x06, 0x1C, 0x30, 0x00, 0x00, 0x00, 0x1C, 0x30, 0xE1, 0x86, - 0x08, 0x00, 0x00, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x06, 0x00, 0x30, - 0x00, 0xC0, 0x06, 0x00, 0x18, 0x00, 0xC0, 0x7F, 0xF8, 0x00, 0x00, 0x01, - 0xFF, 0xE0, 0x18, 0x00, 0xC0, 0x03, 0x00, 0x18, 0x00, 0x60, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x00, 0x3E, 0xC3, 0x81, 0x01, 0x03, - 0x06, 0x18, 0x20, 0x20, 0x00, 0x00, 0x00, 0xE0, 0xE0, 0x07, 0x82, 0x31, - 0x04, 0x81, 0x20, 0x48, 0x74, 0x65, 0x21, 0x48, 0x92, 0x28, 0x7A, 0x00, - 0x80, 0x20, 0x04, 0x00, 0xF8, 0x07, 0xE0, 0x02, 0x80, 0x0A, 0x00, 0x48, - 0x01, 0x20, 0x08, 0x40, 0x41, 0x01, 0x04, 0x0F, 0xF0, 0x20, 0x41, 0x01, - 0x04, 0x02, 0x20, 0x0B, 0xE1, 0xF0, 0x1F, 0xF0, 0x40, 0xC2, 0x02, 0x10, - 0x10, 0x81, 0x84, 0x18, 0x7F, 0x82, 0x02, 0x10, 0x08, 0x80, 0x44, 0x02, - 0x60, 0x22, 0x03, 0x7F, 0xE0, 0x07, 0x91, 0x87, 0x20, 0x34, 0x02, 0x40, - 0x08, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x00, 0x80, 0x04, 0x04, 0x61, - 0x81, 0xE0, 0x1F, 0xE0, 0x41, 0x82, 0x06, 0x10, 0x11, 0x00, 0x88, 0x04, - 0x40, 0x22, 0x01, 0x10, 0x11, 0x00, 0x88, 0x08, 0x40, 0xC2, 0x0C, 0x7F, - 0x80, 0x1F, 0xFC, 0x20, 0x10, 0x80, 0x82, 0x00, 0x08, 0x00, 0x22, 0x01, - 0xF8, 0x04, 0x20, 0x10, 0x00, 0x40, 0x01, 0x01, 0x0C, 0x04, 0x20, 0x13, - 0xFF, 0xC0, 0x1F, 0xFC, 0x20, 0x10, 0x80, 0x42, 0x01, 0x08, 0x00, 0x22, - 0x01, 0xF8, 0x04, 0x20, 0x10, 0x00, 0x40, 0x01, 0x00, 0x0C, 0x00, 0x20, - 0x03, 0xF8, 0x00, 0x07, 0xD0, 0x83, 0x30, 0x12, 0x00, 0x40, 0x04, 0x00, - 0x80, 0x08, 0x00, 0x83, 0xE8, 0x04, 0x80, 0x4C, 0x04, 0x60, 0x41, 0xF8, - 0x0F, 0x3C, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0x81, 0x01, 0x02, 0x03, - 0xFC, 0x08, 0x08, 0x10, 0x10, 0x20, 0x40, 0x40, 0x80, 0x81, 0x02, 0x02, - 0x1F, 0x1E, 0x00, 0x3F, 0xE0, 0x40, 0x08, 0x01, 0x00, 0x20, 0x08, 0x01, - 0x00, 0x20, 0x04, 0x00, 0x80, 0x20, 0x04, 0x00, 0x81, 0xFF, 0x00, 0x03, - 0xFE, 0x00, 0x20, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, - 0x00, 0x20, 0x40, 0x40, 0x80, 0x81, 0x01, 0x02, 0x04, 0x06, 0x10, 0x07, - 0xC0, 0x00, 0x1F, 0x1E, 0x10, 0x10, 0x20, 0xC0, 0x43, 0x00, 0x88, 0x01, - 0x20, 0x07, 0xC0, 0x0C, 0x40, 0x10, 0x40, 0x20, 0x80, 0x41, 0x01, 0x81, - 0x02, 0x02, 0x1F, 0x87, 0x00, 0x3F, 0x80, 0x40, 0x04, 0x00, 0x40, 0x08, - 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x01, 0x01, 0x10, 0x11, 0x02, 0x10, - 0x2F, 0xFE, 0x1C, 0x03, 0x85, 0x03, 0x02, 0x82, 0x81, 0x41, 0x40, 0xA1, - 0x20, 0x89, 0x30, 0x44, 0x90, 0x22, 0x88, 0x11, 0x44, 0x08, 0x42, 0x08, - 0x03, 0x04, 0x01, 0x02, 0x00, 0x87, 0xC3, 0xE0, 0x3C, 0x3E, 0x18, 0x08, - 0x38, 0x20, 0x50, 0x41, 0x20, 0x82, 0x61, 0x04, 0x42, 0x08, 0x88, 0x10, - 0x90, 0x41, 0x20, 0x83, 0x41, 0x02, 0x82, 0x06, 0x1F, 0x04, 0x00, 0x03, - 0xC0, 0x61, 0x84, 0x04, 0x40, 0x14, 0x00, 0xA0, 0x06, 0x00, 0x30, 0x01, - 0x80, 0x14, 0x00, 0xA0, 0x08, 0x80, 0x86, 0x18, 0x0F, 0x00, 0x1F, 0xE0, - 0x40, 0x82, 0x02, 0x10, 0x10, 0x80, 0x84, 0x08, 0x40, 0x83, 0xF8, 0x10, - 0x00, 0x80, 0x04, 0x00, 0x60, 0x02, 0x00, 0x7F, 0x00, 0x03, 0xC0, 0x61, - 0x84, 0x04, 0x40, 0x14, 0x00, 0xA0, 0x06, 0x00, 0x30, 0x01, 0x80, 0x14, - 0x00, 0xA0, 0x08, 0x80, 0x86, 0x18, 0x1F, 0x00, 0x40, 0x0F, 0xC4, 0x41, - 0xC0, 0x1F, 0xE0, 0x40, 0x82, 0x02, 0x10, 0x10, 0x80, 0x84, 0x08, 0x60, - 0x83, 0xF8, 0x10, 0xC0, 0x82, 0x04, 0x08, 0x40, 0x42, 0x03, 0x7E, 0x0C, - 0x07, 0xA3, 0x0C, 0x40, 0x90, 0x12, 0x00, 0x40, 0x06, 0x00, 0x3C, 0x00, - 0x40, 0x0A, 0x01, 0x40, 0x4C, 0x11, 0x7C, 0x00, 0xFF, 0xE8, 0x42, 0x84, - 0x20, 0x40, 0x04, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x00, 0x80, 0x10, - 0x01, 0x00, 0x10, 0x0F, 0xE0, 0xF8, 0xF9, 0x00, 0x88, 0x08, 0x80, 0x44, - 0x02, 0x20, 0x11, 0x01, 0x08, 0x08, 0x80, 0x44, 0x02, 0x20, 0x31, 0x01, - 0x04, 0x30, 0x1E, 0x00, 0xF8, 0x7D, 0x00, 0x42, 0x01, 0x08, 0x08, 0x20, - 0x40, 0x81, 0x02, 0x08, 0x08, 0x20, 0x11, 0x00, 0x48, 0x01, 0x20, 0x05, - 0x00, 0x14, 0x00, 0x60, 0x00, 0xF8, 0x7D, 0x00, 0x44, 0x01, 0x11, 0x84, - 0x46, 0x21, 0x18, 0x84, 0xA2, 0x12, 0x90, 0x91, 0x42, 0x45, 0x0A, 0x14, - 0x28, 0x60, 0xC1, 0x83, 0x06, 0x00, 0x1E, 0x1E, 0x10, 0x10, 0x10, 0x40, - 0x21, 0x00, 0x24, 0x00, 0x78, 0x00, 0x60, 0x01, 0xC0, 0x06, 0x80, 0x09, - 0x80, 0x21, 0x00, 0x81, 0x02, 0x02, 0x1E, 0x1F, 0x00, 0xF0, 0xF4, 0x04, - 0x20, 0x82, 0x18, 0x11, 0x01, 0x20, 0x1C, 0x00, 0x80, 0x08, 0x00, 0x80, - 0x10, 0x01, 0x00, 0x10, 0x0F, 0xE0, 0x0F, 0xF1, 0x01, 0x10, 0x21, 0x04, - 0x00, 0x80, 0x10, 0x02, 0x00, 0x40, 0x0C, 0x01, 0x82, 0x10, 0x22, 0x04, - 0x40, 0x47, 0xFC, 0x0E, 0x20, 0x40, 0x81, 0x02, 0x08, 0x10, 0x20, 0x40, - 0x82, 0x04, 0x08, 0x10, 0x20, 0x81, 0xE0, 0x84, 0x20, 0x84, 0x20, 0x84, - 0x21, 0x04, 0x21, 0x08, 0x21, 0x08, 0x40, 0x1E, 0x04, 0x08, 0x20, 0x40, - 0x81, 0x02, 0x04, 0x10, 0x20, 0x40, 0x81, 0x02, 0x08, 0x11, 0xE0, 0x04, - 0x06, 0x04, 0x84, 0x44, 0x14, 0x0C, 0xFF, 0xFE, 0x99, 0x90, 0x1F, 0xC0, - 0x06, 0x00, 0x20, 0x02, 0x1F, 0xE6, 0x04, 0xC0, 0x48, 0x04, 0x81, 0xC7, - 0xEF, 0x18, 0x00, 0x40, 0x02, 0x00, 0x10, 0x00, 0x80, 0x09, 0xF0, 0x50, - 0xC3, 0x03, 0x10, 0x08, 0x80, 0x48, 0x02, 0x40, 0x23, 0x03, 0x1C, 0x33, - 0xBE, 0x00, 0x0F, 0xD3, 0x07, 0x60, 0x24, 0x02, 0x80, 0x08, 0x00, 0x80, - 0x08, 0x06, 0x41, 0xC3, 0xF0, 0x00, 0x38, 0x00, 0x40, 0x02, 0x00, 0x20, - 0x01, 0x07, 0xC8, 0x43, 0x44, 0x0E, 0x40, 0x24, 0x01, 0x20, 0x09, 0x00, - 0xC8, 0x0E, 0x20, 0xE0, 0xF9, 0xC0, 0x0F, 0x86, 0x09, 0x00, 0xA0, 0x1F, - 0xFF, 0x00, 0x20, 0x06, 0x00, 0x60, 0xC7, 0xE0, 0x01, 0xF8, 0x10, 0x01, - 0x00, 0x08, 0x00, 0x40, 0x1F, 0xF0, 0x20, 0x01, 0x00, 0x08, 0x00, 0x40, - 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x03, 0xFE, 0x00, 0x0F, 0x31, 0x86, - 0x10, 0x10, 0x80, 0x88, 0x04, 0x40, 0x22, 0x02, 0x10, 0x10, 0x43, 0x81, - 0xE4, 0x00, 0x40, 0x02, 0x00, 0x20, 0x3E, 0x00, 0x1C, 0x00, 0x20, 0x03, - 0x00, 0x10, 0x00, 0x80, 0x05, 0xF0, 0x30, 0xC3, 0x02, 0x10, 0x10, 0x80, - 0x84, 0x0C, 0x20, 0x63, 0x02, 0x10, 0x13, 0xE3, 0xE0, 0x01, 0x80, 0x40, - 0x10, 0x00, 0x00, 0x07, 0xC0, 0x20, 0x08, 0x02, 0x00, 0x80, 0x20, 0x10, - 0x04, 0x01, 0x0F, 0xFC, 0x00, 0x40, 0x10, 0x0C, 0x00, 0x00, 0x07, 0xF0, - 0x04, 0x01, 0x00, 0x40, 0x20, 0x08, 0x02, 0x00, 0x80, 0x20, 0x10, 0x04, - 0x01, 0x00, 0x8F, 0xC0, 0x18, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x01, - 0x1F, 0x10, 0x81, 0x30, 0x14, 0x01, 0xC0, 0x26, 0x02, 0x20, 0x21, 0x02, - 0x08, 0xE1, 0xE0, 0x0F, 0x80, 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, 0x20, - 0x08, 0x02, 0x00, 0x80, 0x20, 0x10, 0x04, 0x01, 0x0F, 0xFC, 0x3B, 0xB8, - 0x33, 0x91, 0x08, 0x44, 0x21, 0x10, 0x84, 0x42, 0x12, 0x10, 0x48, 0x42, - 0x21, 0x0B, 0xC6, 0x30, 0x19, 0xE0, 0xE3, 0x08, 0x11, 0x01, 0x10, 0x11, - 0x02, 0x10, 0x21, 0x02, 0x20, 0x2F, 0x87, 0x0F, 0x86, 0x19, 0x80, 0xA0, - 0x18, 0x03, 0x00, 0x60, 0x14, 0x06, 0x61, 0x87, 0xC0, 0x19, 0xF0, 0x28, - 0x20, 0xC0, 0x42, 0x01, 0x10, 0x04, 0x40, 0x11, 0x00, 0x86, 0x06, 0x14, - 0x30, 0xCF, 0x02, 0x00, 0x08, 0x00, 0x20, 0x03, 0xF0, 0x00, 0x0F, 0x39, - 0x85, 0x18, 0x18, 0x80, 0x88, 0x04, 0x40, 0x22, 0x01, 0x18, 0x18, 0x63, - 0x81, 0xE4, 0x00, 0x20, 0x01, 0x00, 0x10, 0x07, 0xE0, 0x1C, 0x78, 0x2C, - 0x01, 0x80, 0x18, 0x00, 0x80, 0x04, 0x00, 0x20, 0x02, 0x00, 0x10, 0x07, - 0xFC, 0x00, 0x0F, 0x44, 0x32, 0x04, 0x80, 0x1E, 0x00, 0x60, 0x0A, 0x02, - 0xC1, 0x2F, 0x80, 0x10, 0x08, 0x04, 0x02, 0x0F, 0xF9, 0x00, 0x80, 0x40, - 0x20, 0x20, 0x10, 0x08, 0x04, 0x19, 0xF0, 0xE0, 0xF2, 0x02, 0x40, 0x24, - 0x02, 0x40, 0x24, 0x06, 0x40, 0x44, 0x04, 0x41, 0xC3, 0xE6, 0xF8, 0xFA, - 0x01, 0x08, 0x10, 0x41, 0x02, 0x08, 0x10, 0x80, 0x48, 0x02, 0x40, 0x14, - 0x00, 0xC0, 0x00, 0xE0, 0x7A, 0x01, 0x10, 0x08, 0x8C, 0x84, 0xA4, 0x25, - 0x21, 0x4A, 0x0A, 0x50, 0x63, 0x02, 0x18, 0x00, 0x1E, 0x3C, 0x20, 0x40, - 0x46, 0x00, 0xB0, 0x03, 0x00, 0x0E, 0x00, 0xC8, 0x06, 0x10, 0x20, 0x23, - 0xE3, 0xC0, 0x3C, 0x3C, 0x40, 0x20, 0x81, 0x02, 0x08, 0x08, 0x20, 0x31, - 0x00, 0x48, 0x01, 0x40, 0x05, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, 0x08, - 0x03, 0xF0, 0x00, 0x3F, 0xC4, 0x18, 0x06, 0x01, 0x80, 0x60, 0x10, 0x04, - 0x01, 0x00, 0x40, 0x9F, 0xF0, 0x06, 0x10, 0x20, 0x41, 0x02, 0x04, 0x08, - 0x21, 0x80, 0x81, 0x02, 0x08, 0x10, 0x20, 0x40, 0xC0, 0x01, 0x11, 0x12, - 0x22, 0x24, 0x44, 0x44, 0x88, 0x80, 0x0C, 0x08, 0x10, 0x20, 0x40, 0x82, - 0x04, 0x08, 0x0C, 0x20, 0x81, 0x02, 0x04, 0x08, 0x21, 0x80, 0x38, 0x28, - 0x88, 0x0E, 0x00}; - -const GFXglyph FreeMonoOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 4, 15, 14, 6, -14}, // 0x21 '!' - {8, 8, 7, 14, 5, -14}, // 0x22 '"' - {15, 11, 16, 14, 3, -14}, // 0x23 '#' - {37, 10, 18, 14, 4, -15}, // 0x24 '$' - {60, 11, 15, 14, 3, -14}, // 0x25 '%' - {81, 9, 12, 14, 3, -11}, // 0x26 '&' - {95, 3, 7, 14, 8, -14}, // 0x27 ''' - {98, 5, 18, 14, 8, -14}, // 0x28 '(' - {110, 5, 18, 14, 4, -14}, // 0x29 ')' - {122, 9, 9, 14, 5, -14}, // 0x2A '*' - {133, 11, 11, 14, 3, -11}, // 0x2B '+' - {149, 6, 7, 14, 3, -3}, // 0x2C ',' - {155, 11, 1, 14, 3, -6}, // 0x2D '-' - {157, 3, 3, 14, 6, -2}, // 0x2E '.' - {159, 13, 18, 14, 2, -15}, // 0x2F '/' - {189, 10, 15, 14, 4, -14}, // 0x30 '0' - {208, 9, 15, 14, 3, -14}, // 0x31 '1' - {225, 12, 15, 14, 2, -14}, // 0x32 '2' - {248, 11, 15, 14, 3, -14}, // 0x33 '3' - {269, 10, 15, 14, 3, -14}, // 0x34 '4' - {288, 11, 15, 14, 3, -14}, // 0x35 '5' - {309, 11, 15, 14, 4, -14}, // 0x36 '6' - {330, 10, 15, 14, 5, -14}, // 0x37 '7' - {349, 11, 15, 14, 3, -14}, // 0x38 '8' - {370, 11, 15, 14, 3, -14}, // 0x39 '9' - {391, 5, 10, 14, 5, -9}, // 0x3A ':' - {398, 7, 13, 14, 3, -9}, // 0x3B ';' - {410, 12, 11, 14, 3, -11}, // 0x3C '<' - {427, 13, 4, 14, 2, -8}, // 0x3D '=' - {434, 12, 11, 14, 2, -11}, // 0x3E '>' - {451, 8, 14, 14, 6, -13}, // 0x3F '?' - {465, 10, 16, 14, 3, -14}, // 0x40 '@' - {485, 14, 14, 14, 0, -13}, // 0x41 'A' - {510, 13, 14, 14, 1, -13}, // 0x42 'B' - {533, 12, 14, 14, 3, -13}, // 0x43 'C' - {554, 13, 14, 14, 1, -13}, // 0x44 'D' - {577, 14, 14, 14, 1, -13}, // 0x45 'E' - {602, 14, 14, 14, 1, -13}, // 0x46 'F' - {627, 12, 14, 14, 3, -13}, // 0x47 'G' - {648, 15, 14, 14, 1, -13}, // 0x48 'H' - {675, 11, 14, 14, 3, -13}, // 0x49 'I' - {695, 15, 14, 14, 2, -13}, // 0x4A 'J' - {722, 15, 14, 14, 1, -13}, // 0x4B 'K' - {749, 12, 14, 14, 2, -13}, // 0x4C 'L' - {770, 17, 14, 14, 0, -13}, // 0x4D 'M' - {800, 15, 14, 14, 1, -13}, // 0x4E 'N' - {827, 13, 14, 14, 2, -13}, // 0x4F 'O' - {850, 13, 14, 14, 1, -13}, // 0x50 'P' - {873, 13, 17, 14, 2, -13}, // 0x51 'Q' - {901, 13, 14, 14, 1, -13}, // 0x52 'R' - {924, 11, 14, 14, 3, -13}, // 0x53 'S' - {944, 12, 14, 14, 4, -13}, // 0x54 'T' - {965, 13, 14, 14, 3, -13}, // 0x55 'U' - {988, 14, 14, 14, 3, -13}, // 0x56 'V' - {1013, 14, 14, 14, 3, -13}, // 0x57 'W' - {1038, 15, 14, 14, 1, -13}, // 0x58 'X' - {1065, 12, 14, 14, 4, -13}, // 0x59 'Y' - {1086, 12, 14, 14, 2, -13}, // 0x5A 'Z' - {1107, 7, 18, 14, 6, -14}, // 0x5B '[' - {1123, 5, 18, 14, 6, -15}, // 0x5C '\' - {1135, 7, 18, 14, 3, -14}, // 0x5D ']' - {1151, 9, 6, 14, 5, -14}, // 0x5E '^' - {1158, 15, 1, 14, -1, 3}, // 0x5F '_' - {1160, 3, 4, 14, 6, -15}, // 0x60 '`' - {1162, 12, 10, 14, 2, -9}, // 0x61 'a' - {1177, 13, 15, 14, 1, -14}, // 0x62 'b' - {1202, 12, 10, 14, 3, -9}, // 0x63 'c' - {1217, 13, 15, 14, 2, -14}, // 0x64 'd' - {1242, 11, 10, 14, 3, -9}, // 0x65 'e' - {1256, 13, 15, 14, 3, -14}, // 0x66 'f' - {1281, 13, 14, 14, 3, -9}, // 0x67 'g' - {1304, 13, 15, 14, 1, -14}, // 0x68 'h' - {1329, 10, 15, 14, 2, -14}, // 0x69 'i' - {1348, 10, 19, 14, 2, -14}, // 0x6A 'j' - {1372, 12, 15, 14, 2, -14}, // 0x6B 'k' - {1395, 10, 15, 14, 2, -14}, // 0x6C 'l' - {1414, 14, 10, 14, 0, -9}, // 0x6D 'm' - {1432, 12, 10, 14, 1, -9}, // 0x6E 'n' - {1447, 11, 10, 14, 3, -9}, // 0x6F 'o' - {1461, 14, 14, 14, 0, -9}, // 0x70 'p' - {1486, 13, 14, 14, 3, -9}, // 0x71 'q' - {1509, 13, 10, 14, 2, -9}, // 0x72 'r' - {1526, 10, 10, 14, 3, -9}, // 0x73 's' - {1539, 9, 14, 14, 3, -13}, // 0x74 't' - {1555, 12, 10, 14, 2, -9}, // 0x75 'u' - {1570, 13, 10, 14, 3, -9}, // 0x76 'v' - {1587, 13, 10, 14, 3, -9}, // 0x77 'w' - {1604, 14, 10, 14, 1, -9}, // 0x78 'x' - {1622, 14, 14, 14, 1, -9}, // 0x79 'y' - {1647, 11, 10, 14, 3, -9}, // 0x7A 'z' - {1661, 7, 18, 14, 5, -14}, // 0x7B '{' - {1677, 4, 17, 14, 6, -13}, // 0x7C '|' - {1686, 7, 18, 14, 4, -14}, // 0x7D '}' - {1702, 11, 3, 14, 3, -7}}; // 0x7E '~' - -const GFXfont FreeMonoOblique12pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique12pt7bBitmaps, - (GFXglyph *)FreeMonoOblique12pt7bGlyphs, 0x20, 0x7E, 24}; - -// Approx. 2379 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h deleted file mode 100644 index c12ae08..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h +++ /dev/null @@ -1,400 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique18pt7bBitmaps[] PROGMEM = { - 0x00, 0x1C, 0x38, 0x70, 0xC1, 0x83, 0x06, 0x18, 0x30, 0x60, 0xC1, 0x02, - 0x04, 0x00, 0x00, 0x01, 0xC7, 0x8F, 0x1C, 0x00, 0x78, 0x7B, 0xC3, 0xFC, - 0x3D, 0xE1, 0xEF, 0x0F, 0x70, 0x73, 0x83, 0x98, 0x18, 0xC0, 0xC6, 0x06, - 0x00, 0x00, 0x8C, 0x01, 0x18, 0x06, 0x20, 0x08, 0x40, 0x11, 0x80, 0x62, - 0x00, 0xC4, 0x01, 0x18, 0x02, 0x30, 0x7F, 0xFC, 0x10, 0x80, 0x23, 0x00, - 0xC4, 0x01, 0x88, 0x3F, 0xFF, 0x04, 0x60, 0x18, 0x80, 0x21, 0x00, 0x46, - 0x01, 0x88, 0x03, 0x10, 0x04, 0x60, 0x08, 0xC0, 0x31, 0x00, 0x00, 0x30, - 0x00, 0x20, 0x00, 0x20, 0x00, 0xF9, 0x03, 0x0F, 0x06, 0x03, 0x04, 0x03, - 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x03, 0xC0, 0x00, 0x78, - 0x00, 0x0C, 0x00, 0x04, 0x00, 0x04, 0x40, 0x04, 0x40, 0x08, 0x40, 0x18, - 0xF0, 0x60, 0x9F, 0x80, 0x02, 0x00, 0x06, 0x00, 0x04, 0x00, 0x04, 0x00, - 0x04, 0x00, 0x03, 0xC0, 0x0C, 0x60, 0x08, 0x20, 0x10, 0x20, 0x10, 0x20, - 0x10, 0x40, 0x18, 0x80, 0x0F, 0x00, 0x00, 0x0F, 0x00, 0x78, 0x07, 0xC0, - 0x3C, 0x00, 0xE0, 0x00, 0x01, 0xE0, 0x02, 0x18, 0x04, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x08, 0x10, 0x0C, 0x20, 0x07, 0xC0, 0x01, 0xF0, 0x11, 0x81, - 0x00, 0x10, 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x80, 0x04, 0x00, 0xF0, - 0x09, 0x86, 0x84, 0x48, 0x32, 0x40, 0xA2, 0x07, 0x10, 0x30, 0x43, 0x81, - 0xE7, 0x80, 0x7B, 0xFD, 0xEF, 0x73, 0x98, 0xC6, 0x00, 0x01, 0x02, 0x06, - 0x0C, 0x0C, 0x18, 0x10, 0x30, 0x30, 0x60, 0x60, 0x60, 0xC0, 0xC0, 0xC0, - 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x40, 0x60, 0x60, 0x20, 0x04, 0x06, - 0x06, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x06, - 0x06, 0x06, 0x0C, 0x0C, 0x0C, 0x18, 0x10, 0x30, 0x60, 0x40, 0xC0, 0x01, - 0x00, 0x04, 0x00, 0x10, 0x00, 0xC6, 0xE3, 0xF8, 0x7E, 0x00, 0x70, 0x03, - 0x40, 0x19, 0x80, 0xC2, 0x06, 0x0C, 0x00, 0x00, 0xC0, 0x01, 0x00, 0x02, - 0x00, 0x04, 0x00, 0x08, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0xFF, 0xFE, - 0x02, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x02, - 0x00, 0x04, 0x00, 0x0F, 0x87, 0x87, 0x83, 0x83, 0xC1, 0xC1, 0xC0, 0xC0, - 0xE0, 0x60, 0x00, 0xFF, 0xFF, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, 0x60, - 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x04, 0x00, - 0x01, 0x80, 0x00, 0x60, 0x00, 0x08, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, - 0x10, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x20, 0x00, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0x40, 0x00, 0x18, 0x00, 0x06, 0x00, 0x00, 0x80, 0x00, 0x20, - 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00, 0x01, - 0xF0, 0x18, 0x60, 0x80, 0x86, 0x01, 0x10, 0x04, 0x80, 0x12, 0x00, 0x50, - 0x01, 0x40, 0x0D, 0x00, 0x24, 0x00, 0xA0, 0x02, 0x80, 0x1A, 0x00, 0x48, - 0x01, 0x20, 0x0C, 0x80, 0x22, 0x01, 0x84, 0x0C, 0x18, 0x60, 0x3E, 0x00, - 0x00, 0x60, 0x07, 0x00, 0x68, 0x06, 0x40, 0xE4, 0x04, 0x20, 0x01, 0x00, - 0x08, 0x00, 0x40, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x80, 0x04, - 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x80, 0x04, 0x0F, 0xFF, 0x80, 0x00, - 0x3C, 0x00, 0x61, 0x80, 0x40, 0x40, 0x40, 0x10, 0x60, 0x08, 0x00, 0x04, - 0x00, 0x02, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03, 0x00, 0x07, 0x00, 0x07, - 0x00, 0x06, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x0C, - 0x00, 0x1C, 0x01, 0x1C, 0x00, 0x8F, 0xFF, 0xC0, 0x00, 0xFC, 0x03, 0x06, - 0x06, 0x03, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x00, 0x02, - 0x00, 0x0C, 0x00, 0xF0, 0x00, 0x18, 0x00, 0x04, 0x00, 0x02, 0x00, 0x02, - 0x00, 0x02, 0x00, 0x02, 0x00, 0x04, 0x00, 0x04, 0x40, 0x18, 0x70, 0x30, - 0x0F, 0xC0, 0x00, 0x1C, 0x00, 0xD0, 0x06, 0x80, 0x32, 0x00, 0x88, 0x04, - 0x20, 0x30, 0x81, 0x84, 0x04, 0x10, 0x20, 0x41, 0x81, 0x0C, 0x08, 0x60, - 0x21, 0x00, 0x8F, 0xFF, 0x80, 0x18, 0x00, 0x40, 0x01, 0x00, 0x04, 0x00, - 0x10, 0x07, 0xE0, 0x03, 0xFF, 0x03, 0x00, 0x01, 0x80, 0x00, 0x80, 0x00, - 0x40, 0x00, 0x20, 0x00, 0x30, 0x00, 0x1B, 0xE0, 0x0E, 0x0C, 0x00, 0x02, - 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, 0x08, 0x00, - 0x08, 0x00, 0x04, 0x60, 0x04, 0x18, 0x04, 0x06, 0x0C, 0x00, 0xF8, 0x00, - 0x00, 0x3F, 0x00, 0xC0, 0x03, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x30, 0x00, 0x20, 0x00, 0x40, 0x00, 0x43, 0xE0, 0x4C, 0x30, 0xB0, 0x18, - 0xE0, 0x08, 0xC0, 0x08, 0x80, 0x08, 0x80, 0x08, 0x80, 0x10, 0xC0, 0x10, - 0x40, 0x20, 0x20, 0xC0, 0x1F, 0x00, 0xFF, 0xFC, 0x00, 0xE0, 0x04, 0x00, - 0x60, 0x02, 0x00, 0x30, 0x01, 0x00, 0x18, 0x00, 0x80, 0x0C, 0x00, 0x40, - 0x06, 0x00, 0x20, 0x03, 0x00, 0x10, 0x01, 0x80, 0x08, 0x00, 0xC0, 0x04, - 0x00, 0x60, 0x02, 0x00, 0x00, 0x00, 0xF0, 0x06, 0x18, 0x10, 0x18, 0x40, - 0x11, 0x00, 0x22, 0x00, 0x44, 0x00, 0x88, 0x02, 0x18, 0x08, 0x18, 0x60, - 0x1F, 0x80, 0xC1, 0x82, 0x01, 0x88, 0x01, 0x20, 0x02, 0x40, 0x04, 0x80, - 0x09, 0x00, 0x23, 0x00, 0x83, 0x06, 0x01, 0xF0, 0x00, 0x00, 0xF0, 0x06, - 0x18, 0x10, 0x10, 0x40, 0x30, 0x80, 0x22, 0x00, 0x44, 0x00, 0x88, 0x03, - 0x10, 0x0E, 0x30, 0x34, 0x30, 0xD0, 0x3E, 0x20, 0x00, 0x40, 0x01, 0x00, - 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0xC0, 0x02, 0x00, 0x18, 0x0F, 0xC0, - 0x00, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, 0x00, 0x01, 0xC7, 0xCF, - 0x9F, 0x1C, 0x00, 0x01, 0xC0, 0x7C, 0x0F, 0x81, 0xF0, 0x1C, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x07, 0x81, 0xE0, 0x3C, 0x0F, 0x01, - 0xC0, 0x70, 0x0E, 0x03, 0x80, 0x60, 0x00, 0x00, 0x01, 0x80, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x07, - 0x00, 0x00, 0xE0, 0x00, 0x38, 0x7F, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x18, 0x00, 0x03, 0x80, - 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x00, 0xE0, - 0x00, 0x0E, 0x00, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, - 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x00, 0x1F, 0xCE, 0x06, 0x80, - 0x38, 0x01, 0x80, 0x10, 0x01, 0x00, 0x20, 0x04, 0x01, 0x80, 0xF0, 0x18, - 0x01, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x0F, 0x80, 0xF8, - 0x07, 0x00, 0x01, 0xF0, 0x0C, 0x30, 0x30, 0x30, 0x40, 0x21, 0x00, 0x44, - 0x00, 0x88, 0x01, 0x10, 0x1E, 0x40, 0xC4, 0x86, 0x11, 0x08, 0x22, 0x20, - 0x48, 0x40, 0x90, 0x82, 0x21, 0x84, 0x40, 0xFC, 0x80, 0x01, 0x00, 0x02, - 0x00, 0x04, 0x00, 0x04, 0x00, 0x0C, 0x18, 0x07, 0xC0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x68, 0x00, 0x06, 0x40, 0x00, 0x32, 0x00, 0x03, 0x10, 0x00, - 0x10, 0x80, 0x01, 0x84, 0x00, 0x18, 0x10, 0x00, 0xC0, 0x80, 0x0C, 0x04, - 0x00, 0x60, 0x20, 0x06, 0x01, 0x00, 0x3F, 0xFC, 0x02, 0x00, 0x20, 0x10, - 0x01, 0x01, 0x00, 0x08, 0x08, 0x00, 0x40, 0x80, 0x02, 0x0C, 0x00, 0x09, - 0xFC, 0x07, 0xF0, 0x0F, 0xFF, 0x00, 0x40, 0x60, 0x20, 0x0C, 0x08, 0x01, - 0x02, 0x00, 0x40, 0x80, 0x10, 0x40, 0x08, 0x10, 0x06, 0x04, 0x03, 0x01, - 0xFF, 0x80, 0x40, 0x38, 0x20, 0x02, 0x08, 0x00, 0x42, 0x00, 0x10, 0x80, - 0x04, 0x40, 0x01, 0x10, 0x00, 0x84, 0x00, 0x41, 0x00, 0x23, 0xFF, 0xF0, - 0x00, 0xFC, 0x40, 0xC1, 0xF0, 0xC0, 0x1C, 0x60, 0x06, 0x10, 0x00, 0x88, - 0x00, 0x24, 0x00, 0x01, 0x00, 0x00, 0x40, 0x00, 0x30, 0x00, 0x08, 0x00, - 0x02, 0x00, 0x00, 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x03, 0x00, 0x00, - 0x40, 0x06, 0x08, 0x03, 0x01, 0x83, 0x80, 0x3F, 0x00, 0x0F, 0xFE, 0x00, - 0x80, 0xC0, 0x20, 0x18, 0x10, 0x02, 0x04, 0x00, 0x41, 0x00, 0x10, 0x40, - 0x04, 0x20, 0x01, 0x08, 0x00, 0x42, 0x00, 0x10, 0x80, 0x08, 0x20, 0x02, - 0x10, 0x00, 0x84, 0x00, 0x21, 0x00, 0x10, 0x40, 0x08, 0x20, 0x06, 0x08, - 0x03, 0x02, 0x01, 0x83, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x10, 0x02, 0x02, - 0x00, 0x60, 0x20, 0x06, 0x02, 0x00, 0x60, 0x20, 0x00, 0x04, 0x00, 0x00, - 0x40, 0x80, 0x04, 0x10, 0x00, 0x7F, 0x00, 0x04, 0x10, 0x00, 0x81, 0x00, - 0x08, 0x00, 0x00, 0x80, 0x00, 0x08, 0x00, 0x81, 0x00, 0x08, 0x10, 0x00, - 0x81, 0x00, 0x18, 0x10, 0x01, 0x8F, 0xFF, 0xF0, 0x0F, 0xFF, 0xF0, 0x10, - 0x03, 0x02, 0x00, 0x30, 0x20, 0x03, 0x02, 0x00, 0x20, 0x20, 0x00, 0x04, - 0x00, 0x00, 0x40, 0x80, 0x04, 0x10, 0x00, 0x7F, 0x00, 0x04, 0x10, 0x00, - 0x81, 0x00, 0x08, 0x00, 0x00, 0x80, 0x00, 0x08, 0x00, 0x01, 0x00, 0x00, - 0x10, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFE, - 0x40, 0xC0, 0xF0, 0x40, 0x1C, 0x20, 0x03, 0x10, 0x00, 0x88, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x08, 0x00, 0x02, 0x01, - 0xFE, 0x80, 0x02, 0x20, 0x00, 0x88, 0x00, 0x22, 0x00, 0x08, 0x40, 0x04, - 0x18, 0x01, 0x03, 0x81, 0xC0, 0x3F, 0x80, 0x07, 0xE1, 0xF8, 0x08, 0x02, - 0x00, 0x80, 0x10, 0x04, 0x00, 0x80, 0x20, 0x04, 0x01, 0x00, 0x20, 0x18, - 0x02, 0x00, 0x80, 0x10, 0x04, 0x00, 0x80, 0x3F, 0xFC, 0x01, 0x00, 0x60, - 0x10, 0x02, 0x00, 0x80, 0x10, 0x04, 0x00, 0x80, 0x20, 0x04, 0x02, 0x00, - 0x40, 0x10, 0x02, 0x00, 0x80, 0x10, 0x04, 0x00, 0x81, 0xF8, 0x3F, 0x00, - 0x0F, 0xFF, 0x80, 0x10, 0x00, 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, - 0x10, 0x00, 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x1F, 0xFF, 0x00, 0x00, 0xFF, 0xF0, 0x00, 0x20, - 0x00, 0x02, 0x00, 0x00, 0x20, 0x00, 0x02, 0x00, 0x00, 0x20, 0x00, 0x04, - 0x00, 0x00, 0x40, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, 0x0C, 0x04, 0x00, - 0x80, 0x40, 0x08, 0x08, 0x00, 0x80, 0x80, 0x08, 0x08, 0x01, 0x00, 0x80, - 0x10, 0x0C, 0x02, 0x00, 0x60, 0xC0, 0x01, 0xF0, 0x00, 0x0F, 0xE1, 0xF8, - 0x08, 0x03, 0x00, 0x80, 0x60, 0x04, 0x06, 0x00, 0x20, 0x60, 0x01, 0x06, - 0x00, 0x10, 0xC0, 0x00, 0x8C, 0x00, 0x04, 0xC0, 0x00, 0x2F, 0x80, 0x01, - 0x8E, 0x00, 0x18, 0x30, 0x00, 0x80, 0xC0, 0x04, 0x06, 0x00, 0x20, 0x10, - 0x02, 0x00, 0xC0, 0x10, 0x06, 0x00, 0x80, 0x30, 0x04, 0x00, 0x81, 0xFC, - 0x07, 0x80, 0x07, 0xFC, 0x00, 0x10, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, - 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x40, - 0x00, 0x10, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x10, 0x20, 0x04, - 0x08, 0x01, 0x04, 0x00, 0x81, 0x00, 0x20, 0x40, 0x0B, 0xFF, 0xFE, 0x0F, - 0x00, 0x1E, 0x03, 0x00, 0x38, 0x05, 0x00, 0x68, 0x04, 0x80, 0x68, 0x04, - 0x80, 0xC8, 0x04, 0x80, 0x90, 0x04, 0x81, 0x90, 0x08, 0x43, 0x10, 0x08, - 0x42, 0x10, 0x08, 0x46, 0x10, 0x08, 0x4C, 0x20, 0x10, 0x2C, 0x20, 0x10, - 0x38, 0x20, 0x10, 0x30, 0x20, 0x10, 0x00, 0x40, 0x10, 0x00, 0x40, 0x20, - 0x00, 0x40, 0x20, 0x00, 0x40, 0x20, 0x00, 0x40, 0xFC, 0x07, 0xE0, 0x1F, - 0x01, 0xFC, 0x0C, 0x00, 0x80, 0x78, 0x02, 0x01, 0xE0, 0x18, 0x04, 0x80, - 0x60, 0x13, 0x01, 0x00, 0x4C, 0x04, 0x03, 0x18, 0x10, 0x0C, 0x60, 0xC0, - 0x20, 0x83, 0x00, 0x83, 0x08, 0x06, 0x0C, 0x20, 0x18, 0x18, 0x80, 0x40, - 0x66, 0x01, 0x00, 0x98, 0x04, 0x03, 0x40, 0x30, 0x0D, 0x00, 0xC0, 0x14, - 0x02, 0x00, 0x70, 0x3F, 0x80, 0xC0, 0x00, 0xF8, 0x01, 0x83, 0x01, 0x00, - 0xC1, 0x00, 0x21, 0x00, 0x19, 0x00, 0x04, 0x80, 0x02, 0x80, 0x01, 0x40, - 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x28, 0x00, 0x14, 0x00, 0x12, - 0x00, 0x09, 0x80, 0x08, 0x40, 0x08, 0x30, 0x08, 0x0C, 0x18, 0x01, 0xF0, - 0x00, 0x0F, 0xFE, 0x00, 0x40, 0x60, 0x20, 0x0C, 0x08, 0x01, 0x02, 0x00, - 0x40, 0x80, 0x10, 0x40, 0x04, 0x10, 0x02, 0x04, 0x01, 0x01, 0x01, 0x80, - 0x7F, 0x80, 0x20, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x40, - 0x00, 0x10, 0x00, 0x04, 0x00, 0x01, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xF8, - 0x01, 0x83, 0x01, 0x00, 0xC1, 0x00, 0x21, 0x00, 0x19, 0x00, 0x05, 0x00, - 0x02, 0x80, 0x01, 0x40, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x28, - 0x00, 0x14, 0x00, 0x12, 0x00, 0x09, 0x80, 0x08, 0x40, 0x08, 0x30, 0x08, - 0x0C, 0x18, 0x03, 0xF0, 0x00, 0xC0, 0x01, 0xC0, 0x01, 0xFE, 0x18, 0xC0, - 0xF0, 0x0F, 0xFE, 0x00, 0x40, 0x60, 0x20, 0x0C, 0x08, 0x01, 0x02, 0x00, - 0x40, 0x80, 0x10, 0x40, 0x04, 0x10, 0x02, 0x04, 0x01, 0x01, 0x01, 0x80, - 0x7F, 0x80, 0x20, 0x60, 0x08, 0x0C, 0x02, 0x03, 0x80, 0x80, 0x60, 0x40, - 0x18, 0x10, 0x03, 0x04, 0x00, 0xC1, 0x00, 0x1B, 0xF8, 0x07, 0x00, 0x7E, - 0x40, 0x60, 0xF0, 0x20, 0x1C, 0x10, 0x02, 0x08, 0x00, 0x82, 0x00, 0x00, - 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xC0, 0x00, - 0x18, 0x00, 0x01, 0x00, 0x00, 0x44, 0x00, 0x11, 0x00, 0x04, 0x40, 0x02, - 0x38, 0x01, 0x0B, 0x81, 0x82, 0x3F, 0x80, 0x3F, 0xFF, 0xA0, 0x20, 0x50, - 0x10, 0x28, 0x08, 0x24, 0x08, 0x10, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, 0x10, - 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x1F, - 0xFC, 0x00, 0x7E, 0x0F, 0xC4, 0x00, 0x42, 0x00, 0x10, 0x80, 0x08, 0x20, - 0x02, 0x08, 0x00, 0x82, 0x00, 0x21, 0x00, 0x08, 0x40, 0x04, 0x10, 0x01, - 0x04, 0x00, 0x41, 0x00, 0x10, 0x80, 0x0C, 0x20, 0x02, 0x08, 0x00, 0x82, - 0x00, 0x60, 0x80, 0x10, 0x10, 0x08, 0x06, 0x0C, 0x00, 0x7C, 0x00, 0xFE, - 0x03, 0xF9, 0x80, 0x02, 0x0C, 0x00, 0x30, 0x20, 0x01, 0x01, 0x00, 0x10, - 0x08, 0x01, 0x80, 0x60, 0x08, 0x03, 0x00, 0xC0, 0x18, 0x04, 0x00, 0x40, - 0x60, 0x02, 0x06, 0x00, 0x10, 0x20, 0x00, 0xC3, 0x00, 0x06, 0x10, 0x00, - 0x31, 0x80, 0x00, 0x88, 0x00, 0x04, 0x80, 0x00, 0x2C, 0x00, 0x01, 0xC0, - 0x00, 0x0E, 0x00, 0x00, 0x7F, 0x07, 0xF2, 0x00, 0x04, 0x20, 0x00, 0xC2, - 0x00, 0x08, 0x20, 0xC0, 0x82, 0x0C, 0x18, 0x21, 0xA1, 0x02, 0x1A, 0x10, - 0x23, 0x23, 0x04, 0x32, 0x30, 0x46, 0x22, 0x04, 0x62, 0x60, 0x4C, 0x26, - 0x04, 0xC2, 0x40, 0x58, 0x24, 0x05, 0x82, 0xC0, 0x70, 0x28, 0x07, 0x02, - 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x00, 0x0F, 0xC1, 0xF8, 0x30, 0x03, 0x00, - 0xC0, 0x30, 0x06, 0x03, 0x00, 0x18, 0x10, 0x00, 0xC1, 0x00, 0x03, 0x18, - 0x00, 0x09, 0x80, 0x00, 0x78, 0x00, 0x01, 0x80, 0x00, 0x1C, 0x00, 0x01, - 0xA0, 0x00, 0x19, 0x80, 0x01, 0x84, 0x00, 0x18, 0x30, 0x01, 0x80, 0xC0, - 0x08, 0x06, 0x00, 0x80, 0x18, 0x08, 0x00, 0xC1, 0xF8, 0x3F, 0x80, 0x7E, - 0x0F, 0xC4, 0x00, 0xC1, 0x80, 0x60, 0x20, 0x30, 0x0C, 0x08, 0x03, 0x04, - 0x00, 0x43, 0x00, 0x19, 0x80, 0x02, 0xC0, 0x00, 0xE0, 0x00, 0x10, 0x00, - 0x04, 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x40, 0x03, 0xFF, 0x80, 0x0F, 0xFF, 0x86, 0x00, - 0x82, 0x00, 0x81, 0x00, 0xC1, 0x80, 0xC0, 0xC0, 0xC0, 0x00, 0xC0, 0x00, - 0xC0, 0x00, 0x40, 0x00, 0x40, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, - 0x60, 0x10, 0x60, 0x18, 0x20, 0x08, 0x20, 0x04, 0x20, 0x02, 0x30, 0x03, - 0x1F, 0xFF, 0x80, 0x07, 0xE0, 0x80, 0x10, 0x02, 0x00, 0xC0, 0x18, 0x02, - 0x00, 0x40, 0x18, 0x03, 0x00, 0x40, 0x08, 0x01, 0x00, 0x60, 0x0C, 0x01, - 0x00, 0x20, 0x04, 0x01, 0x80, 0x30, 0x04, 0x00, 0x80, 0x10, 0x06, 0x00, - 0xFC, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, - 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, - 0x02, 0x02, 0x02, 0x02, 0x00, 0x07, 0xE0, 0x0C, 0x01, 0x00, 0x20, 0x04, - 0x01, 0x80, 0x30, 0x04, 0x00, 0x80, 0x30, 0x06, 0x00, 0x80, 0x10, 0x02, - 0x00, 0xC0, 0x18, 0x02, 0x00, 0x40, 0x18, 0x03, 0x00, 0x40, 0x08, 0x03, - 0x00, 0x60, 0xF8, 0x00, 0x01, 0x00, 0x1C, 0x01, 0xB0, 0x19, 0x81, 0x86, - 0x18, 0x11, 0x80, 0xD8, 0x03, 0x80, 0x18, 0xFF, 0xFF, 0xF8, 0xC7, 0x1C, - 0x71, 0x80, 0x03, 0xF8, 0x0C, 0x0C, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, - 0x00, 0x02, 0x07, 0xFC, 0x18, 0x0C, 0x20, 0x04, 0x40, 0x04, 0x80, 0x04, - 0x80, 0x08, 0x80, 0x38, 0xC0, 0xE8, 0x3F, 0x0F, 0x0F, 0x00, 0x00, 0x20, - 0x00, 0x04, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x04, 0x00, 0x00, 0x87, - 0xC0, 0x13, 0x0C, 0x06, 0x80, 0x40, 0xE0, 0x0C, 0x18, 0x00, 0x82, 0x00, - 0x10, 0xC0, 0x02, 0x10, 0x00, 0x42, 0x00, 0x08, 0x40, 0x02, 0x08, 0x00, - 0x43, 0x80, 0x10, 0x70, 0x04, 0x09, 0x83, 0x0F, 0x1F, 0x80, 0x01, 0xFC, - 0x83, 0x03, 0xC6, 0x00, 0xE4, 0x00, 0x22, 0x00, 0x12, 0x00, 0x01, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x18, 0x00, 0x64, - 0x00, 0x61, 0x81, 0xC0, 0x7F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x60, 0x3F, 0x18, 0x10, 0x64, - 0x18, 0x0D, 0x08, 0x01, 0xC2, 0x00, 0x71, 0x00, 0x0C, 0x80, 0x02, 0x20, - 0x00, 0x88, 0x00, 0x62, 0x00, 0x18, 0x80, 0x0E, 0x20, 0x03, 0x04, 0x03, - 0x40, 0xC1, 0xB0, 0x1F, 0x8F, 0x00, 0x01, 0xF0, 0x0E, 0x0C, 0x18, 0x06, - 0x30, 0x02, 0x60, 0x01, 0x40, 0x01, 0xC0, 0x01, 0xFF, 0xFF, 0x80, 0x00, - 0x80, 0x00, 0x80, 0x00, 0x40, 0x00, 0x60, 0x06, 0x30, 0x1C, 0x0F, 0xE0, - 0x00, 0x1F, 0xE0, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0x00, - 0x02, 0x00, 0x07, 0xFF, 0xC0, 0x08, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, - 0x08, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x00, 0x80, 0x00, - 0x20, 0x00, 0x04, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x04, 0x00, 0x0F, - 0xFF, 0x00, 0x03, 0xE3, 0xE1, 0x83, 0x60, 0x40, 0x38, 0x10, 0x03, 0x04, - 0x00, 0x60, 0x80, 0x0C, 0x20, 0x01, 0x84, 0x00, 0x20, 0x80, 0x04, 0x10, - 0x01, 0x82, 0x00, 0x30, 0x60, 0x0C, 0x04, 0x02, 0x80, 0x61, 0x90, 0x07, - 0xC6, 0x00, 0x00, 0xC0, 0x00, 0x10, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, - 0x30, 0x00, 0x0C, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x40, 0x00, - 0x10, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x23, 0xE0, 0x0B, - 0x0C, 0x05, 0x00, 0x81, 0x80, 0x20, 0x40, 0x08, 0x10, 0x02, 0x08, 0x00, - 0x82, 0x00, 0x60, 0x80, 0x18, 0x20, 0x06, 0x10, 0x01, 0x84, 0x00, 0x61, - 0x00, 0x30, 0x40, 0x0C, 0xFC, 0x1F, 0xC0, 0x00, 0x30, 0x00, 0x60, 0x00, - 0xC0, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x20, - 0x00, 0x40, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x40, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x08, 0x00, 0x10, 0x1F, 0xFF, - 0x80, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x07, 0xFE, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, - 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x20, 0x00, - 0x40, 0x00, 0x80, 0x01, 0x00, 0x06, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, - 0x00, 0x80, 0x03, 0x00, 0x0C, 0x0F, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x60, - 0x00, 0x10, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0xC0, 0x00, 0x30, 0xFC, - 0x08, 0x18, 0x02, 0x0C, 0x00, 0x8C, 0x00, 0x66, 0x00, 0x1B, 0x00, 0x05, - 0x80, 0x01, 0xB0, 0x00, 0x46, 0x00, 0x31, 0xC0, 0x0C, 0x30, 0x02, 0x06, - 0x00, 0x80, 0xC0, 0x60, 0x30, 0xF8, 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x20, - 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x20, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x20, - 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x04, 0x00, 0x08, 0x0F, 0xFF, 0xC0, - 0x1C, 0xF1, 0xE0, 0xF1, 0xE3, 0x0E, 0x1C, 0x10, 0xC1, 0x81, 0x08, 0x10, - 0x30, 0x81, 0x03, 0x18, 0x10, 0x21, 0x83, 0x02, 0x10, 0x30, 0x21, 0x02, - 0x06, 0x10, 0x20, 0x63, 0x02, 0x04, 0x30, 0x60, 0x42, 0x06, 0x04, 0xF8, - 0x70, 0xF0, 0x0E, 0x3E, 0x01, 0x60, 0x81, 0xC0, 0x20, 0xC0, 0x10, 0x40, - 0x08, 0x20, 0x04, 0x30, 0x02, 0x10, 0x02, 0x08, 0x01, 0x04, 0x00, 0x82, - 0x00, 0x42, 0x00, 0x21, 0x00, 0x20, 0x80, 0x13, 0xF0, 0x3E, 0x01, 0xF0, - 0x06, 0x0C, 0x18, 0x06, 0x20, 0x03, 0x60, 0x01, 0x40, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x02, 0x80, 0x06, 0xC0, 0x04, 0x40, 0x18, - 0x30, 0x60, 0x1F, 0x80, 0x0F, 0x1F, 0x80, 0x16, 0x0C, 0x01, 0xC0, 0x20, - 0x30, 0x03, 0x03, 0x00, 0x10, 0x20, 0x01, 0x02, 0x00, 0x10, 0x40, 0x01, - 0x04, 0x00, 0x10, 0x40, 0x02, 0x06, 0x00, 0x60, 0x60, 0x04, 0x0B, 0x00, - 0x80, 0x98, 0x30, 0x08, 0xFC, 0x00, 0x80, 0x00, 0x08, 0x00, 0x01, 0x00, - 0x00, 0x10, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x0F, 0xF0, 0x00, 0x03, - 0xF1, 0xE1, 0x83, 0x20, 0x40, 0x34, 0x10, 0x03, 0x84, 0x00, 0x30, 0x80, - 0x04, 0x20, 0x00, 0x84, 0x00, 0x10, 0x80, 0x06, 0x10, 0x00, 0xC2, 0x00, - 0x30, 0x60, 0x0E, 0x04, 0x03, 0x40, 0x60, 0xC8, 0x07, 0xE2, 0x00, 0x00, - 0x40, 0x00, 0x08, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, 0x08, 0x00, 0x01, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0x87, 0xC0, 0x23, 0x08, 0x04, 0xC0, 0x00, - 0xE0, 0x00, 0x18, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x02, - 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x02, 0x00, 0x00, 0x40, 0x00, 0x08, - 0x00, 0x3F, 0xFE, 0x00, 0x01, 0xFA, 0x0C, 0x1C, 0x20, 0x08, 0x80, 0x11, - 0x00, 0x03, 0x00, 0x03, 0xF8, 0x00, 0x7C, 0x00, 0x0C, 0x00, 0x09, 0x00, - 0x16, 0x00, 0x2C, 0x00, 0x9E, 0x06, 0x27, 0xF0, 0x00, 0x08, 0x00, 0x40, - 0x02, 0x00, 0x10, 0x00, 0x80, 0x7F, 0xFC, 0x40, 0x02, 0x00, 0x10, 0x00, - 0x80, 0x08, 0x00, 0x40, 0x02, 0x00, 0x10, 0x01, 0x00, 0x08, 0x00, 0x40, - 0x02, 0x00, 0xD8, 0x1C, 0x3F, 0x00, 0xF0, 0x1E, 0x20, 0x04, 0x80, 0x09, - 0x00, 0x12, 0x00, 0x24, 0x00, 0xC8, 0x01, 0x20, 0x02, 0x40, 0x04, 0x80, - 0x09, 0x00, 0x12, 0x00, 0x64, 0x03, 0x8C, 0x1D, 0x0F, 0xC3, 0x80, 0xFE, - 0x0F, 0xE6, 0x00, 0x20, 0x40, 0x08, 0x08, 0x03, 0x01, 0x80, 0x40, 0x30, - 0x18, 0x06, 0x02, 0x00, 0x40, 0x80, 0x08, 0x30, 0x01, 0x84, 0x00, 0x31, - 0x80, 0x02, 0x20, 0x00, 0x48, 0x00, 0x09, 0x00, 0x01, 0xC0, 0x00, 0xF8, - 0x0F, 0xA0, 0x01, 0x90, 0x00, 0x88, 0x40, 0xC4, 0x30, 0x42, 0x18, 0x61, - 0x1A, 0x20, 0x8D, 0x10, 0x4C, 0x98, 0x26, 0x48, 0x16, 0x2C, 0x0B, 0x14, - 0x07, 0x0A, 0x03, 0x07, 0x01, 0x81, 0x00, 0x0F, 0x83, 0xE0, 0xC0, 0x18, - 0x0C, 0x0C, 0x01, 0x83, 0x00, 0x18, 0xC0, 0x01, 0xB0, 0x00, 0x1C, 0x00, - 0x03, 0x00, 0x00, 0xF0, 0x00, 0x63, 0x00, 0x18, 0x30, 0x06, 0x06, 0x01, - 0x80, 0x60, 0x60, 0x06, 0x3F, 0x07, 0xE0, 0x0F, 0xC0, 0xF8, 0x30, 0x01, - 0x00, 0x80, 0x18, 0x04, 0x00, 0x80, 0x30, 0x0C, 0x01, 0x80, 0xC0, 0x04, - 0x04, 0x00, 0x30, 0x60, 0x01, 0x86, 0x00, 0x04, 0x20, 0x00, 0x23, 0x00, - 0x01, 0xB0, 0x00, 0x0D, 0x00, 0x00, 0x38, 0x00, 0x01, 0x80, 0x00, 0x08, - 0x00, 0x00, 0xC0, 0x00, 0x04, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, - 0x20, 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xFF, 0x10, 0x06, 0x10, 0x0C, 0x10, - 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, - 0x00, 0x0C, 0x00, 0x18, 0x04, 0x30, 0x0C, 0x60, 0x0C, 0xFF, 0xF8, 0x00, - 0xE0, 0x20, 0x08, 0x01, 0x00, 0x20, 0x04, 0x01, 0x00, 0x20, 0x04, 0x00, - 0x80, 0x20, 0x08, 0x0E, 0x00, 0x60, 0x04, 0x00, 0x80, 0x10, 0x02, 0x00, - 0x40, 0x08, 0x02, 0x00, 0x40, 0x08, 0x01, 0x00, 0x18, 0x00, 0x00, 0x10, - 0xC3, 0x08, 0x20, 0x86, 0x18, 0x41, 0x04, 0x30, 0xC2, 0x08, 0x21, 0x86, - 0x10, 0x43, 0x0C, 0x20, 0x06, 0x00, 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, - 0x10, 0x04, 0x02, 0x00, 0x80, 0x20, 0x0C, 0x01, 0xC0, 0xC0, 0x40, 0x10, - 0x04, 0x03, 0x00, 0x80, 0x20, 0x08, 0x02, 0x01, 0x00, 0xC0, 0xE0, 0x00, - 0x1E, 0x02, 0x66, 0x0D, 0x86, 0x16, 0x06, 0x48, 0x07, 0x00}; - -const GFXglyph FreeMonoOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 7, 22, 21, 9, -21}, // 0x21 '!' - {20, 13, 10, 21, 7, -20}, // 0x22 '"' - {37, 15, 24, 21, 5, -21}, // 0x23 '#' - {82, 16, 26, 21, 4, -22}, // 0x24 '$' - {134, 16, 21, 21, 5, -20}, // 0x25 '%' - {176, 13, 18, 21, 5, -17}, // 0x26 '&' - {206, 5, 10, 21, 12, -20}, // 0x27 ''' - {213, 8, 25, 21, 12, -20}, // 0x28 '(' - {238, 8, 25, 21, 5, -20}, // 0x29 ')' - {263, 14, 11, 21, 7, -19}, // 0x2A '*' - {283, 15, 17, 21, 5, -17}, // 0x2B '+' - {315, 9, 10, 21, 4, -4}, // 0x2C ',' - {327, 16, 1, 21, 5, -9}, // 0x2D '-' - {329, 5, 5, 21, 8, -4}, // 0x2E '.' - {333, 19, 26, 21, 3, -22}, // 0x2F '/' - {395, 14, 21, 21, 5, -20}, // 0x30 '0' - {432, 13, 21, 21, 4, -20}, // 0x31 '1' - {467, 17, 21, 21, 3, -20}, // 0x32 '2' - {512, 16, 21, 21, 3, -20}, // 0x33 '3' - {554, 14, 21, 21, 5, -20}, // 0x34 '4' - {591, 17, 21, 21, 4, -20}, // 0x35 '5' - {636, 16, 21, 21, 6, -20}, // 0x36 '6' - {678, 13, 21, 21, 8, -20}, // 0x37 '7' - {713, 15, 21, 21, 5, -20}, // 0x38 '8' - {753, 15, 21, 21, 5, -20}, // 0x39 '9' - {793, 7, 15, 21, 8, -14}, // 0x3A ':' - {807, 11, 20, 21, 4, -14}, // 0x3B ';' - {835, 17, 16, 21, 5, -17}, // 0x3C '<' - {869, 19, 6, 21, 3, -12}, // 0x3D '=' - {884, 18, 16, 21, 3, -17}, // 0x3E '>' - {920, 12, 20, 21, 8, -19}, // 0x3F '?' - {950, 15, 23, 21, 5, -20}, // 0x40 '@' - {994, 21, 20, 21, 0, -19}, // 0x41 'A' - {1047, 18, 20, 21, 2, -19}, // 0x42 'B' - {1092, 18, 20, 21, 4, -19}, // 0x43 'C' - {1137, 18, 20, 21, 2, -19}, // 0x44 'D' - {1182, 20, 20, 21, 2, -19}, // 0x45 'E' - {1232, 20, 20, 21, 2, -19}, // 0x46 'F' - {1282, 18, 20, 21, 4, -19}, // 0x47 'G' - {1327, 21, 20, 21, 2, -19}, // 0x48 'H' - {1380, 17, 20, 21, 4, -19}, // 0x49 'I' - {1423, 20, 20, 21, 4, -19}, // 0x4A 'J' - {1473, 21, 20, 21, 2, -19}, // 0x4B 'K' - {1526, 18, 20, 21, 2, -19}, // 0x4C 'L' - {1571, 24, 20, 21, 1, -19}, // 0x4D 'M' - {1631, 22, 20, 21, 2, -19}, // 0x4E 'N' - {1686, 17, 20, 21, 4, -19}, // 0x4F 'O' - {1729, 18, 20, 21, 2, -19}, // 0x50 'P' - {1774, 17, 24, 21, 4, -19}, // 0x51 'Q' - {1825, 18, 20, 21, 2, -19}, // 0x52 'R' - {1870, 18, 20, 21, 3, -19}, // 0x53 'S' - {1915, 17, 20, 21, 5, -19}, // 0x54 'T' - {1958, 18, 20, 21, 5, -19}, // 0x55 'U' - {2003, 21, 20, 21, 4, -19}, // 0x56 'V' - {2056, 20, 20, 21, 4, -19}, // 0x57 'W' - {2106, 21, 20, 21, 2, -19}, // 0x58 'X' - {2159, 18, 20, 21, 5, -19}, // 0x59 'Y' - {2204, 17, 20, 21, 4, -19}, // 0x5A 'Z' - {2247, 11, 25, 21, 9, -20}, // 0x5B '[' - {2282, 8, 27, 21, 9, -22}, // 0x5C '\' - {2309, 11, 25, 21, 5, -20}, // 0x5D ']' - {2344, 13, 9, 21, 7, -20}, // 0x5E '^' - {2359, 21, 1, 21, -1, 4}, // 0x5F '_' - {2362, 5, 5, 21, 9, -21}, // 0x60 '`' - {2366, 16, 15, 21, 3, -14}, // 0x61 'a' - {2396, 19, 21, 21, 1, -20}, // 0x62 'b' - {2446, 17, 15, 21, 4, -14}, // 0x63 'c' - {2478, 18, 21, 21, 4, -20}, // 0x64 'd' - {2526, 16, 15, 21, 4, -14}, // 0x65 'e' - {2556, 19, 21, 21, 4, -20}, // 0x66 'f' - {2606, 19, 22, 21, 4, -14}, // 0x67 'g' - {2659, 18, 21, 21, 2, -20}, // 0x68 'h' - {2707, 15, 22, 21, 3, -21}, // 0x69 'i' - {2749, 15, 29, 21, 3, -21}, // 0x6A 'j' - {2804, 18, 21, 21, 2, -20}, // 0x6B 'k' - {2852, 15, 21, 21, 3, -20}, // 0x6C 'l' - {2892, 20, 15, 21, 1, -14}, // 0x6D 'm' - {2930, 17, 15, 21, 2, -14}, // 0x6E 'n' - {2962, 16, 15, 21, 4, -14}, // 0x6F 'o' - {2992, 20, 22, 21, 0, -14}, // 0x70 'p' - {3047, 19, 22, 21, 4, -14}, // 0x71 'q' - {3100, 19, 15, 21, 3, -14}, // 0x72 'r' - {3136, 15, 15, 21, 4, -14}, // 0x73 's' - {3165, 13, 20, 21, 5, -19}, // 0x74 't' - {3198, 15, 15, 21, 4, -14}, // 0x75 'u' - {3227, 19, 15, 21, 4, -14}, // 0x76 'v' - {3263, 17, 15, 21, 5, -14}, // 0x77 'w' - {3295, 19, 15, 21, 2, -14}, // 0x78 'x' - {3331, 21, 22, 21, 1, -14}, // 0x79 'y' - {3389, 16, 15, 21, 4, -14}, // 0x7A 'z' - {3419, 11, 25, 21, 8, -20}, // 0x7B '{' - {3454, 6, 24, 21, 9, -19}, // 0x7C '|' - {3472, 10, 25, 21, 6, -20}, // 0x7D '}' - {3504, 15, 5, 21, 5, -11}}; // 0x7E '~' - -const GFXfont FreeMonoOblique18pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique18pt7bBitmaps, - (GFXglyph *)FreeMonoOblique18pt7bGlyphs, 0x20, 0x7E, 35}; - -// Approx. 4186 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h deleted file mode 100644 index 28bbf9e..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h +++ /dev/null @@ -1,645 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xC0, 0xF0, 0x3C, 0x0E, 0x03, 0x81, 0xE0, 0x78, 0x1C, 0x07, 0x01, - 0xC0, 0xE0, 0x38, 0x0E, 0x03, 0x00, 0xC0, 0x70, 0x1C, 0x06, 0x01, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x0F, 0x83, 0xE0, 0xF8, - 0x1C, 0x00, 0x7E, 0x3F, 0x7E, 0x3F, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, - 0x78, 0x3C, 0xF8, 0x7C, 0xF0, 0x78, 0xF0, 0x78, 0xF0, 0x78, 0xE0, 0x70, - 0xE0, 0x70, 0xE0, 0x70, 0xC0, 0x60, 0x00, 0x18, 0x30, 0x00, 0x61, 0x80, - 0x01, 0x86, 0x00, 0x04, 0x18, 0x00, 0x30, 0xC0, 0x00, 0xC3, 0x00, 0x03, - 0x0C, 0x00, 0x18, 0x30, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, - 0x07, 0xFF, 0xFF, 0x1F, 0xFF, 0xFC, 0x03, 0x0C, 0x00, 0x18, 0x30, 0x00, - 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, 0x00, 0x30, 0xC0, 0x1F, 0xFF, - 0xF8, 0x7F, 0xFF, 0xE0, 0x18, 0x30, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, - 0x06, 0x18, 0x00, 0x30, 0x40, 0x00, 0xC3, 0x00, 0x03, 0x0C, 0x00, 0x18, - 0x30, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x80, 0x00, 0x3F, 0x00, 0x07, 0xFD, 0x80, - 0x70, 0x7C, 0x06, 0x00, 0xE0, 0x60, 0x02, 0x07, 0x00, 0x10, 0x30, 0x00, - 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x70, 0x00, 0x01, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x18, - 0x00, 0x00, 0xC2, 0x00, 0x06, 0x30, 0x00, 0x61, 0x80, 0x03, 0x1E, 0x00, - 0x30, 0xFC, 0x07, 0x06, 0x7F, 0xF0, 0x00, 0xFE, 0x00, 0x01, 0x80, 0x00, - 0x0C, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, - 0x00, 0x00, 0x78, 0x00, 0x07, 0xF8, 0x00, 0x38, 0x60, 0x01, 0xC0, 0xC0, - 0x06, 0x03, 0x00, 0x30, 0x0C, 0x00, 0xC0, 0x30, 0x03, 0x01, 0x80, 0x0C, - 0x0E, 0x00, 0x38, 0x70, 0x00, 0x7F, 0x81, 0xC0, 0xF8, 0x3F, 0x00, 0x07, - 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xC0, 0x00, 0x78, 0x00, 0x01, - 0x00, 0x78, 0x00, 0x07, 0xF8, 0x00, 0x38, 0x60, 0x01, 0x80, 0xC0, 0x06, - 0x03, 0x00, 0x30, 0x0C, 0x00, 0xC0, 0x30, 0x03, 0x01, 0x80, 0x0C, 0x0E, - 0x00, 0x18, 0x70, 0x00, 0x7F, 0x80, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, - 0x0F, 0xF8, 0x03, 0x8E, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x01, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x03, - 0xE0, 0x01, 0xCC, 0x0E, 0x60, 0xC3, 0xD8, 0x18, 0x63, 0x03, 0x18, 0xC0, - 0x33, 0x18, 0x06, 0xC3, 0x00, 0x70, 0x60, 0x0E, 0x0C, 0x01, 0xC0, 0xC0, - 0x78, 0x1C, 0x3B, 0xE1, 0xFE, 0x3C, 0x1F, 0x00, 0x00, 0x7E, 0xFD, 0xF3, - 0xE7, 0xCF, 0x3E, 0x78, 0xF1, 0xE3, 0x87, 0x0E, 0x18, 0x00, 0x00, 0x60, - 0x18, 0x07, 0x00, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x70, 0x0C, 0x03, 0x80, - 0x60, 0x1C, 0x03, 0x80, 0xE0, 0x1C, 0x03, 0x80, 0xF0, 0x1C, 0x03, 0x80, - 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x30, 0x02, 0x00, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x07, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x00, - 0xE0, 0x3C, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x38, 0x0E, 0x01, - 0x80, 0x70, 0x0C, 0x03, 0x00, 0xC0, 0x10, 0x00, 0x00, 0x20, 0x00, 0x18, - 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x30, 0x0E, 0x0C, 0x0B, - 0xF3, 0x3E, 0x3F, 0xFE, 0x01, 0xFC, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x0E, - 0x60, 0x07, 0x18, 0x01, 0x83, 0x00, 0xC0, 0xC0, 0x60, 0x30, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x30, 0x00, 0x01, - 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, 0x80, - 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, - 0x03, 0xF0, 0x7E, 0x07, 0xC0, 0xF8, 0x0F, 0x81, 0xF0, 0x1E, 0x03, 0xE0, - 0x3C, 0x07, 0x80, 0x70, 0x0F, 0x00, 0xE0, 0x0C, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xE0, 0x3C, 0xFF, 0xFF, 0xFF, 0xCF, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x03, 0x00, - 0x00, 0x07, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x1C, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x70, 0x00, 0x00, 0x60, 0x00, - 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0x03, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, 0x00, 0x00, 0xE0, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x0F, 0xF8, 0x01, - 0xC1, 0xC0, 0x38, 0x0E, 0x07, 0x00, 0x60, 0xE0, 0x03, 0x0C, 0x00, 0x31, - 0x80, 0x03, 0x18, 0x00, 0x33, 0x00, 0x03, 0x30, 0x00, 0x33, 0x00, 0x03, - 0x20, 0x00, 0x26, 0x00, 0x06, 0x60, 0x00, 0x66, 0x00, 0x06, 0x40, 0x00, - 0x4C, 0x00, 0x0C, 0xC0, 0x00, 0xCC, 0x00, 0x0C, 0xC0, 0x01, 0x8C, 0x00, - 0x18, 0xC0, 0x01, 0x8C, 0x00, 0x30, 0xC0, 0x07, 0x06, 0x00, 0xE0, 0x60, - 0x1C, 0x03, 0x87, 0x80, 0x3F, 0xF0, 0x00, 0xFC, 0x00, 0x00, 0x0E, 0x00, - 0x0F, 0x00, 0x0F, 0x80, 0x0E, 0xC0, 0x1C, 0xC0, 0x1C, 0x60, 0x1C, 0x30, - 0x08, 0x18, 0x00, 0x1C, 0x00, 0x0C, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, - 0x80, 0x01, 0xC0, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, - 0x18, 0x00, 0x0C, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x01, 0x80, - 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x1F, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, - 0x07, 0xE0, 0x00, 0x3F, 0xE0, 0x01, 0xE0, 0xE0, 0x07, 0x00, 0xE0, 0x1C, - 0x00, 0xE0, 0x30, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x00, 0x03, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, - 0x70, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xE0, - 0x00, 0xC3, 0x80, 0x01, 0x87, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, 0x00, 0x00, - 0x0F, 0xC0, 0x01, 0xFF, 0xC0, 0x1E, 0x07, 0x80, 0xE0, 0x06, 0x03, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, - 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xE0, 0x00, 0x01, - 0x80, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, - 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xE3, 0x00, 0x07, 0x0E, 0x00, - 0x38, 0x1E, 0x03, 0xC0, 0x3F, 0xFC, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0xF8, 0x00, 0x1B, 0x00, 0x06, 0x60, 0x01, 0x8C, 0x00, 0x63, - 0x00, 0x18, 0x60, 0x07, 0x0C, 0x00, 0xC1, 0x80, 0x30, 0x30, 0x0C, 0x0C, - 0x03, 0x01, 0x80, 0xC0, 0x30, 0x18, 0x06, 0x06, 0x00, 0xC1, 0x80, 0x30, - 0x60, 0x06, 0x18, 0x00, 0xC3, 0xFF, 0xFE, 0x7F, 0xFF, 0xC0, 0x00, 0xC0, - 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x18, 0x00, 0x03, 0x00, - 0x0F, 0xFC, 0x01, 0xFF, 0x80, 0x01, 0xFF, 0xF8, 0x0F, 0xFF, 0xC0, 0x40, - 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, - 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0xBF, 0xC0, 0x0F, 0xFF, - 0x80, 0xF8, 0x1E, 0x02, 0x00, 0x30, 0x00, 0x01, 0xC0, 0x00, 0x06, 0x00, - 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x06, - 0x00, 0x00, 0x30, 0x00, 0x03, 0x80, 0x00, 0x18, 0xC0, 0x01, 0x87, 0x00, - 0x38, 0x1E, 0x07, 0x80, 0x7F, 0xF8, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x03, - 0xF0, 0x00, 0xFF, 0xC0, 0x1F, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x01, - 0x80, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x00, - 0x0E, 0x00, 0x00, 0x60, 0x00, 0x07, 0x0F, 0x80, 0x31, 0xFF, 0x01, 0x9C, - 0x3C, 0x0D, 0x80, 0x60, 0xD8, 0x03, 0x87, 0x80, 0x0C, 0x38, 0x00, 0x61, - 0xC0, 0x03, 0x0C, 0x00, 0x18, 0x60, 0x00, 0xC3, 0x00, 0x0C, 0x18, 0x00, - 0x60, 0xE0, 0x06, 0x03, 0x00, 0x30, 0x1C, 0x07, 0x00, 0x70, 0x70, 0x01, - 0xFF, 0x00, 0x07, 0xE0, 0x00, 0x7F, 0xFF, 0xDF, 0xFF, 0xFC, 0x00, 0x0F, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x00, 0x3F, 0x00, 0x0F, - 0xFC, 0x01, 0xC1, 0xE0, 0x70, 0x06, 0x06, 0x00, 0x30, 0xC0, 0x03, 0x1C, - 0x00, 0x31, 0x80, 0x03, 0x18, 0x00, 0x31, 0x80, 0x06, 0x18, 0x00, 0xE0, - 0xC0, 0x1C, 0x0F, 0x07, 0x80, 0x3F, 0xE0, 0x03, 0xFE, 0x00, 0xE0, 0x70, - 0x18, 0x03, 0x83, 0x00, 0x1C, 0x60, 0x00, 0xC6, 0x00, 0x0C, 0xC0, 0x00, - 0xCC, 0x00, 0x0C, 0xC0, 0x00, 0xCC, 0x00, 0x18, 0xC0, 0x03, 0x8E, 0x00, - 0x70, 0x60, 0x0E, 0x07, 0x83, 0xC0, 0x3F, 0xF0, 0x00, 0xFC, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0xFF, 0x80, 0x0F, 0x07, 0x00, 0x70, 0x0E, 0x03, 0x80, - 0x18, 0x0C, 0x00, 0x70, 0x60, 0x00, 0xC1, 0x80, 0x03, 0x0C, 0x00, 0x0C, - 0x30, 0x00, 0x30, 0xC0, 0x01, 0xC3, 0x00, 0x0F, 0x0C, 0x00, 0x6C, 0x38, - 0x03, 0xF0, 0x60, 0x1D, 0x81, 0xE1, 0xE6, 0x03, 0xFE, 0x18, 0x03, 0xE0, - 0xC0, 0x00, 0x03, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x03, - 0xC0, 0x00, 0x7C, 0x00, 0xFF, 0xC0, 0x01, 0xF8, 0x00, 0x00, 0x07, 0x83, - 0xF1, 0xFC, 0x7F, 0x1F, 0x83, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x7E, 0x3F, 0x8F, 0xE3, 0xF0, 0x78, - 0x00, 0x00, 0x3C, 0x00, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xC0, 0x0F, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x7E, 0x00, 0xFC, 0x03, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x3E, - 0x00, 0xF8, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x3C, 0x00, 0x70, 0x01, - 0xC0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0C, 0x00, 0x3F, 0xFF, 0xFF, 0x9F, - 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, - 0x00, 0x06, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, - 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x70, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x07, 0xF0, 0x3F, 0xFC, 0x78, - 0x1E, 0xC0, 0x07, 0xC0, 0x03, 0xC0, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, - 0x06, 0x00, 0x06, 0x00, 0x1C, 0x00, 0x38, 0x00, 0xE0, 0x07, 0xC0, 0x07, - 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x7E, 0x00, 0xFE, 0x00, 0xFE, - 0x00, 0x7C, 0x00, 0x00, 0x3F, 0x00, 0x1F, 0xF0, 0x07, 0x07, 0x01, 0xC0, - 0x70, 0x60, 0x06, 0x1C, 0x00, 0xC3, 0x00, 0x18, 0xC0, 0x03, 0x18, 0x00, - 0x66, 0x00, 0xFC, 0xC0, 0x7F, 0x98, 0x1C, 0x66, 0x06, 0x0C, 0xC1, 0x81, - 0x98, 0x30, 0x33, 0x0C, 0x0E, 0x61, 0x81, 0x98, 0x30, 0x33, 0x06, 0x06, - 0x60, 0xF0, 0xCC, 0x0F, 0xF9, 0x80, 0x7F, 0x30, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x03, 0x80, 0x00, 0x30, 0x00, 0x07, 0x00, 0x00, - 0x70, 0x18, 0x0F, 0xFE, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x0F, - 0xFE, 0x00, 0x00, 0x06, 0xC0, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x31, 0x80, - 0x00, 0x06, 0x30, 0x00, 0x01, 0x86, 0x00, 0x00, 0x60, 0xC0, 0x00, 0x0C, - 0x1C, 0x00, 0x03, 0x01, 0x80, 0x00, 0x40, 0x30, 0x00, 0x18, 0x06, 0x00, - 0x06, 0x00, 0xC0, 0x00, 0xC0, 0x18, 0x00, 0x30, 0x01, 0x80, 0x07, 0xFF, - 0xF0, 0x01, 0xFF, 0xFE, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x18, 0x03, - 0x00, 0x03, 0x00, 0x40, 0x00, 0x30, 0x18, 0x00, 0x06, 0x06, 0x00, 0x00, - 0xC0, 0xC0, 0x00, 0x18, 0xFF, 0x80, 0x7F, 0xFF, 0xF0, 0x0F, 0xFC, 0x03, - 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0xC0, 0x06, 0x00, 0x38, 0x01, 0x80, 0x07, - 0x00, 0xC0, 0x00, 0xC0, 0x30, 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x03, 0x00, - 0x03, 0x00, 0xC0, 0x01, 0x80, 0x60, 0x00, 0xC0, 0x18, 0x01, 0xE0, 0x07, - 0xFF, 0xE0, 0x01, 0xFF, 0xFC, 0x00, 0xE0, 0x03, 0x80, 0x30, 0x00, 0x70, - 0x0C, 0x00, 0x0E, 0x03, 0x00, 0x01, 0x80, 0xC0, 0x00, 0x60, 0x60, 0x00, - 0x18, 0x18, 0x00, 0x06, 0x06, 0x00, 0x03, 0x01, 0x80, 0x01, 0xC0, 0x60, - 0x00, 0xE0, 0x30, 0x00, 0x70, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0xFC, 0xC0, 0x3C, 0x0F, 0x60, 0x78, 0x01, - 0xF0, 0x70, 0x00, 0x70, 0x70, 0x00, 0x18, 0x30, 0x00, 0x0C, 0x30, 0x00, - 0x06, 0x38, 0x00, 0x02, 0x18, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x0C, 0x00, - 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, 0x00, 0x30, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x60, - 0x60, 0x00, 0x60, 0x38, 0x00, 0xE0, 0x0F, 0x01, 0xE0, 0x03, 0xFF, 0xC0, - 0x00, 0x3F, 0x00, 0x00, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0x00, 0x0C, - 0x00, 0xF0, 0x03, 0x00, 0x1C, 0x01, 0xC0, 0x03, 0x80, 0x60, 0x00, 0x60, - 0x18, 0x00, 0x1C, 0x06, 0x00, 0x03, 0x01, 0x80, 0x00, 0xC0, 0xC0, 0x00, - 0x30, 0x30, 0x00, 0x0C, 0x0C, 0x00, 0x03, 0x03, 0x00, 0x00, 0xC0, 0xC0, - 0x00, 0x60, 0x60, 0x00, 0x18, 0x18, 0x00, 0x06, 0x06, 0x00, 0x03, 0x01, - 0x80, 0x00, 0xC0, 0xE0, 0x00, 0x70, 0x30, 0x00, 0x18, 0x0C, 0x00, 0x0C, - 0x03, 0x00, 0x06, 0x00, 0xC0, 0x07, 0x00, 0x60, 0x07, 0x80, 0xFF, 0xFF, - 0xC0, 0x3F, 0xFF, 0x80, 0x00, 0x03, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFC, - 0x01, 0x80, 0x01, 0x80, 0x30, 0x00, 0x60, 0x0C, 0x00, 0x0C, 0x01, 0x80, - 0x01, 0x80, 0x30, 0x00, 0x30, 0x06, 0x00, 0x00, 0x00, 0xC0, 0xC0, 0x00, - 0x30, 0x18, 0x00, 0x06, 0x03, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x1F, 0xF8, - 0x00, 0x07, 0x03, 0x00, 0x00, 0xC0, 0x60, 0x00, 0x18, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x18, 0x00, 0x0C, 0x03, 0x00, 0x01, - 0x80, 0x60, 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x01, 0x80, 0x01, 0x80, 0x60, - 0x00, 0x30, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, - 0xF0, 0x7F, 0xFF, 0xFF, 0x00, 0x60, 0x00, 0x30, 0x06, 0x00, 0x06, 0x00, - 0xC0, 0x00, 0x60, 0x0C, 0x00, 0x06, 0x00, 0xC0, 0x00, 0x60, 0x0C, 0x00, - 0x00, 0x00, 0xC0, 0xC0, 0x00, 0x18, 0x0C, 0x00, 0x01, 0x80, 0xC0, 0x00, - 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x38, 0x18, 0x00, 0x03, 0x01, - 0x80, 0x00, 0x30, 0x18, 0x00, 0x03, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xFF, 0xFC, 0x00, - 0x0F, 0xFF, 0xC0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0xFC, 0xC0, 0x3C, - 0x0F, 0xE0, 0x78, 0x01, 0xF0, 0x70, 0x00, 0x30, 0x70, 0x00, 0x18, 0x70, - 0x00, 0x0C, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, - 0x80, 0x00, 0x01, 0x80, 0x1F, 0xFE, 0xC0, 0x0F, 0xFF, 0x60, 0x00, 0x06, - 0x30, 0x00, 0x06, 0x18, 0x00, 0x03, 0x0C, 0x00, 0x01, 0x87, 0x00, 0x00, - 0xC1, 0x80, 0x00, 0xE0, 0xE0, 0x00, 0x60, 0x38, 0x00, 0x70, 0x0F, 0x00, - 0xF8, 0x03, 0xFF, 0xF0, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xFC, 0x1F, 0xE0, - 0x7F, 0x83, 0xFC, 0x03, 0x00, 0x06, 0x00, 0x60, 0x01, 0x80, 0x1C, 0x00, - 0x30, 0x03, 0x00, 0x06, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x38, 0x01, - 0x80, 0x06, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x18, 0x01, 0xFF, 0xFF, - 0x00, 0x3F, 0xFF, 0xC0, 0x06, 0x00, 0x18, 0x01, 0x80, 0x03, 0x00, 0x30, - 0x00, 0x60, 0x06, 0x00, 0x0C, 0x00, 0xC0, 0x03, 0x00, 0x38, 0x00, 0x60, - 0x06, 0x00, 0x0C, 0x00, 0xC0, 0x01, 0x80, 0x18, 0x00, 0x70, 0x03, 0x00, - 0x0C, 0x00, 0xE0, 0x01, 0x80, 0xFF, 0x83, 0xFE, 0x1F, 0xF0, 0x7F, 0xC0, - 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x70, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, - 0x80, 0x00, 0x06, 0x00, 0x00, 0x38, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, - 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0xFF, 0xFF, 0x83, 0xFF, 0xFE, 0x00, - 0x00, 0x0F, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0x0C, 0x00, 0x00, - 0x00, 0xC0, 0x00, 0x00, 0x18, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x38, 0x00, 0x00, 0x03, 0x00, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x07, - 0x00, 0x20, 0x00, 0x60, 0x06, 0x00, 0x06, 0x00, 0x60, 0x00, 0x60, 0x06, - 0x00, 0x06, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x0C, 0x00, 0xC0, 0x00, - 0xC0, 0x0C, 0x00, 0x18, 0x00, 0xE0, 0x03, 0x00, 0x07, 0x00, 0x70, 0x00, - 0x3C, 0x1C, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x03, - 0xFF, 0x07, 0xF8, 0x3F, 0xF8, 0x3F, 0xC0, 0x18, 0x00, 0x70, 0x00, 0xC0, - 0x07, 0x00, 0x0C, 0x00, 0x60, 0x00, 0x60, 0x0E, 0x00, 0x03, 0x00, 0xE0, - 0x00, 0x18, 0x0C, 0x00, 0x00, 0xC1, 0xC0, 0x00, 0x0C, 0x1C, 0x00, 0x00, - 0x61, 0x80, 0x00, 0x03, 0x3C, 0x00, 0x00, 0x1B, 0x78, 0x00, 0x01, 0xF0, - 0xE0, 0x00, 0x0F, 0x03, 0x80, 0x00, 0x60, 0x0C, 0x00, 0x03, 0x00, 0x70, - 0x00, 0x18, 0x01, 0x80, 0x01, 0x80, 0x0C, 0x00, 0x0C, 0x00, 0x60, 0x00, - 0x60, 0x01, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x01, 0x80, - 0x03, 0x00, 0xFF, 0xE0, 0x1F, 0x87, 0xFF, 0x00, 0x7C, 0x00, 0x07, 0xFF, - 0xE0, 0x03, 0xFF, 0xF0, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x30, 0x00, 0x00, 0x18, 0x00, 0x00, 0x0C, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, - 0x00, 0xC0, 0x03, 0x00, 0x60, 0x01, 0x80, 0x60, 0x00, 0xC0, 0x30, 0x00, - 0x60, 0x18, 0x00, 0x30, 0x0C, 0x00, 0x30, 0x0E, 0x00, 0x18, 0x06, 0x00, - 0x0C, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0x00, 0x07, 0xF0, 0x00, 0x3F, - 0x07, 0xF0, 0x00, 0x7F, 0x01, 0xB0, 0x00, 0xD8, 0x01, 0xB0, 0x00, 0xD8, - 0x01, 0x98, 0x01, 0x98, 0x01, 0x98, 0x03, 0x30, 0x01, 0x98, 0x03, 0x30, - 0x03, 0x18, 0x06, 0x30, 0x03, 0x1C, 0x0C, 0x30, 0x03, 0x0C, 0x0C, 0x30, - 0x03, 0x0C, 0x18, 0x60, 0x07, 0x0C, 0x30, 0x60, 0x06, 0x0C, 0x30, 0x60, - 0x06, 0x06, 0x60, 0x60, 0x06, 0x06, 0xC0, 0x60, 0x06, 0x06, 0xC0, 0xC0, - 0x0C, 0x07, 0x80, 0xC0, 0x0C, 0x03, 0x00, 0xC0, 0x0C, 0x00, 0x00, 0xC0, - 0x0C, 0x00, 0x01, 0xC0, 0x0C, 0x00, 0x01, 0x80, 0x18, 0x00, 0x01, 0x80, - 0x18, 0x00, 0x01, 0x80, 0x18, 0x00, 0x01, 0x80, 0xFF, 0x80, 0x3F, 0xE0, - 0xFF, 0x80, 0x3F, 0xE0, 0x07, 0xE0, 0x0F, 0xFC, 0x3F, 0x80, 0x3F, 0xF0, - 0x0F, 0x00, 0x06, 0x00, 0x3C, 0x00, 0x10, 0x01, 0x98, 0x00, 0xC0, 0x06, - 0x60, 0x03, 0x00, 0x19, 0xC0, 0x0C, 0x00, 0x63, 0x00, 0x30, 0x01, 0x0C, - 0x01, 0x80, 0x0C, 0x18, 0x06, 0x00, 0x30, 0x60, 0x18, 0x00, 0xC1, 0xC0, - 0x60, 0x03, 0x03, 0x01, 0x00, 0x08, 0x0C, 0x0C, 0x00, 0x60, 0x18, 0x30, - 0x01, 0x80, 0x60, 0xC0, 0x06, 0x01, 0xC3, 0x00, 0x18, 0x03, 0x18, 0x00, - 0xC0, 0x0C, 0x60, 0x03, 0x00, 0x19, 0x80, 0x0C, 0x00, 0x66, 0x00, 0x30, - 0x01, 0xD8, 0x00, 0x80, 0x03, 0xC0, 0x06, 0x00, 0x0F, 0x00, 0xFF, 0xC0, - 0x1C, 0x03, 0xFE, 0x00, 0x70, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x7F, 0xF0, - 0x00, 0xF0, 0x78, 0x03, 0x80, 0x1C, 0x07, 0x00, 0x0E, 0x0E, 0x00, 0x06, - 0x0C, 0x00, 0x06, 0x18, 0x00, 0x07, 0x38, 0x00, 0x03, 0x30, 0x00, 0x03, - 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0xC0, 0x00, 0x03, - 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x06, 0xC0, 0x00, 0x06, 0xC0, 0x00, 0x06, - 0xC0, 0x00, 0x0C, 0xC0, 0x00, 0x1C, 0xC0, 0x00, 0x18, 0x60, 0x00, 0x30, - 0x60, 0x00, 0x70, 0x70, 0x00, 0xE0, 0x38, 0x01, 0xC0, 0x1E, 0x0F, 0x00, - 0x0F, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, - 0xC0, 0x06, 0x00, 0x78, 0x01, 0x80, 0x06, 0x00, 0xC0, 0x01, 0xC0, 0x30, - 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x03, 0x00, 0x03, 0x00, 0xC0, 0x01, 0xC0, - 0x60, 0x00, 0x60, 0x18, 0x00, 0x30, 0x06, 0x00, 0x18, 0x01, 0x80, 0x3C, - 0x00, 0xFF, 0xFE, 0x00, 0x3F, 0xFC, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, 0x00, 0x18, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x60, 0x00, 0x00, 0x30, 0x00, 0x00, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x7F, - 0xF0, 0x00, 0xF0, 0x78, 0x03, 0x80, 0x1C, 0x07, 0x00, 0x0E, 0x0E, 0x00, - 0x06, 0x0C, 0x00, 0x06, 0x18, 0x00, 0x03, 0x38, 0x00, 0x03, 0x30, 0x00, - 0x03, 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x06, 0xC0, 0x00, 0x06, 0xC0, 0x00, - 0x06, 0xC0, 0x00, 0x0C, 0xC0, 0x00, 0x1C, 0xC0, 0x00, 0x18, 0x60, 0x00, - 0x30, 0x60, 0x00, 0x70, 0x30, 0x00, 0xE0, 0x38, 0x01, 0xC0, 0x0E, 0x0F, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0x1F, 0xF8, - 0x30, 0x3F, 0xFF, 0xF0, 0x78, 0x0F, 0x80, 0x07, 0xFF, 0xFC, 0x01, 0xFF, - 0xFF, 0xC0, 0x06, 0x00, 0x78, 0x01, 0x80, 0x0E, 0x00, 0xC0, 0x01, 0xC0, - 0x30, 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x03, 0x00, 0x03, 0x00, 0xC0, 0x00, - 0xC0, 0x60, 0x00, 0x60, 0x18, 0x00, 0x30, 0x06, 0x00, 0x38, 0x01, 0x80, - 0x3C, 0x00, 0xFF, 0xFC, 0x00, 0x3F, 0xFC, 0x00, 0x0C, 0x07, 0x80, 0x03, - 0x00, 0x70, 0x00, 0xC0, 0x0E, 0x00, 0x60, 0x01, 0x80, 0x18, 0x00, 0x70, - 0x06, 0x00, 0x0C, 0x01, 0x80, 0x03, 0x80, 0x60, 0x00, 0x60, 0x30, 0x00, - 0x1C, 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x00, 0xF0, 0x00, 0x1F, 0xC0, 0x00, - 0x7F, 0xF3, 0x00, 0xE0, 0x3B, 0x03, 0x80, 0x0F, 0x07, 0x00, 0x0E, 0x06, - 0x00, 0x06, 0x0C, 0x00, 0x06, 0x0C, 0x00, 0x06, 0x0C, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x07, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x18, 0x20, 0x00, 0x18, 0x60, 0x00, 0x18, 0x60, - 0x00, 0x30, 0x60, 0x00, 0x70, 0xF0, 0x00, 0xE0, 0xF8, 0x01, 0xC0, 0xDC, - 0x07, 0x80, 0x8F, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0xFF, 0xFE, 0x3F, - 0xFF, 0xFE, 0x30, 0x18, 0x06, 0x60, 0x18, 0x06, 0x60, 0x18, 0x06, 0x60, - 0x38, 0x0C, 0x60, 0x30, 0x04, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x30, 0x00, 0x00, 0x70, 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, - 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0xFF, 0xFE, 0x00, 0xFF, - 0xFC, 0x00, 0x7F, 0xC0, 0xFF, 0xDF, 0xF0, 0x3F, 0xF1, 0x80, 0x00, 0x60, - 0x60, 0x00, 0x30, 0x18, 0x00, 0x0C, 0x06, 0x00, 0x03, 0x03, 0x80, 0x00, - 0xC0, 0xC0, 0x00, 0x30, 0x30, 0x00, 0x18, 0x0C, 0x00, 0x06, 0x03, 0x00, - 0x01, 0x81, 0xC0, 0x00, 0x60, 0x60, 0x00, 0x18, 0x18, 0x00, 0x0C, 0x06, - 0x00, 0x03, 0x01, 0x80, 0x00, 0xC0, 0xC0, 0x00, 0x30, 0x30, 0x00, 0x1C, - 0x0C, 0x00, 0x06, 0x03, 0x00, 0x01, 0x80, 0xC0, 0x00, 0xC0, 0x30, 0x00, - 0x70, 0x0E, 0x00, 0x38, 0x01, 0xC0, 0x1C, 0x00, 0x38, 0x1E, 0x00, 0x07, - 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFF, 0x80, 0x3F, 0xFF, 0xF0, 0x07, - 0xFC, 0xE0, 0x00, 0x0C, 0x0C, 0x00, 0x03, 0x01, 0x80, 0x00, 0x60, 0x30, - 0x00, 0x18, 0x06, 0x00, 0x02, 0x00, 0xC0, 0x00, 0xC0, 0x0C, 0x00, 0x30, - 0x01, 0x80, 0x06, 0x00, 0x30, 0x01, 0x80, 0x06, 0x00, 0x60, 0x00, 0xC0, - 0x0C, 0x00, 0x18, 0x03, 0x00, 0x01, 0x80, 0xC0, 0x00, 0x30, 0x18, 0x00, - 0x06, 0x06, 0x00, 0x00, 0xC0, 0xC0, 0x00, 0x18, 0x30, 0x00, 0x03, 0x8C, - 0x00, 0x00, 0x31, 0x80, 0x00, 0x06, 0x60, 0x00, 0x00, 0xD8, 0x00, 0x00, - 0x1B, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x38, 0x00, 0x00, 0xFF, 0xC0, - 0x7F, 0xFF, 0xF8, 0x0F, 0xF8, 0xC0, 0x00, 0x0C, 0x18, 0x00, 0x01, 0x83, - 0x00, 0x00, 0x30, 0x60, 0x08, 0x0C, 0x0C, 0x07, 0x01, 0x81, 0x81, 0xE0, - 0x30, 0x60, 0x2C, 0x0C, 0x0C, 0x0D, 0x81, 0x81, 0x81, 0x30, 0x30, 0x30, - 0x66, 0x0C, 0x06, 0x08, 0xC1, 0x80, 0xC3, 0x0C, 0x30, 0x18, 0x41, 0x8C, - 0x03, 0x18, 0x31, 0x80, 0x62, 0x06, 0x30, 0x0C, 0xC0, 0xCC, 0x03, 0x10, - 0x19, 0x80, 0x66, 0x03, 0x30, 0x0C, 0x80, 0x6C, 0x01, 0xB0, 0x0D, 0x80, - 0x34, 0x01, 0xB0, 0x07, 0x80, 0x3C, 0x00, 0xE0, 0x07, 0x80, 0x1C, 0x00, - 0xF0, 0x00, 0x03, 0xF8, 0x03, 0xF8, 0x1F, 0xC0, 0x3F, 0xC0, 0x30, 0x00, - 0x30, 0x01, 0xC0, 0x03, 0x00, 0x06, 0x00, 0x30, 0x00, 0x18, 0x03, 0x00, - 0x00, 0xE0, 0x30, 0x00, 0x03, 0x03, 0x00, 0x00, 0x1C, 0x30, 0x00, 0x00, - 0x63, 0x00, 0x00, 0x03, 0xB0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x30, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x36, 0x00, 0x00, 0x03, 0x38, 0x00, - 0x00, 0x30, 0xC0, 0x00, 0x03, 0x07, 0x00, 0x00, 0x30, 0x18, 0x00, 0x03, - 0x00, 0x60, 0x00, 0x30, 0x03, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, - 0x70, 0x03, 0x00, 0x01, 0x80, 0xFF, 0x80, 0xFF, 0x07, 0xFC, 0x07, 0xF8, - 0x00, 0x7F, 0x80, 0x7F, 0x7F, 0x00, 0x7F, 0x1C, 0x00, 0x18, 0x0C, 0x00, - 0x30, 0x0C, 0x00, 0x70, 0x06, 0x00, 0xE0, 0x06, 0x00, 0xC0, 0x03, 0x01, - 0x80, 0x03, 0x03, 0x00, 0x01, 0x86, 0x00, 0x01, 0x8C, 0x00, 0x00, 0xD8, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, - 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, - 0x00, 0xFF, 0xFE, 0x00, 0xFF, 0xFC, 0x00, 0x03, 0xFF, 0xFE, 0x07, 0xFF, - 0xF8, 0x0C, 0x00, 0x30, 0x10, 0x00, 0xC0, 0x60, 0x03, 0x80, 0xC0, 0x0E, - 0x01, 0x80, 0x38, 0x03, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, - 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x60, 0x18, - 0x00, 0xC0, 0x60, 0x01, 0x81, 0x80, 0x02, 0x06, 0x00, 0x0C, 0x18, 0x00, - 0x18, 0x60, 0x00, 0x30, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0x80, 0x01, 0xFE, - 0x03, 0xFC, 0x06, 0x00, 0x08, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, - 0x80, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x40, 0x01, 0x80, - 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x10, 0x00, 0x60, 0x00, 0xC0, 0x01, - 0x80, 0x03, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0x80, - 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x20, 0x00, 0xFF, 0x01, - 0xFE, 0x00, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x60, 0x18, 0x07, 0x00, 0xC0, - 0x30, 0x0C, 0x03, 0x80, 0x60, 0x18, 0x06, 0x00, 0xC0, 0x30, 0x0C, 0x03, - 0x00, 0x60, 0x18, 0x06, 0x01, 0x80, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x18, - 0x06, 0x01, 0x80, 0x60, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x04, 0x01, 0xFE, - 0x03, 0xFC, 0x00, 0x10, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x04, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x00, 0x06, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x06, 0x00, 0x08, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x06, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x01, 0x80, 0xFF, 0x01, - 0xFE, 0x00, 0x00, 0x10, 0x00, 0x0C, 0x00, 0x07, 0x80, 0x03, 0x60, 0x01, - 0x8C, 0x00, 0xC3, 0x80, 0xE0, 0x60, 0x70, 0x1C, 0x38, 0x03, 0x1C, 0x00, - 0x6E, 0x00, 0x1F, 0x00, 0x02, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xC3, 0x86, 0x0C, 0x18, 0x70, 0xC0, 0x00, 0x3F, 0x80, 0x0F, 0xFF, 0x80, - 0x78, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, - 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x38, 0x03, 0xFC, 0xC0, 0x7F, 0xFF, - 0x07, 0xC0, 0x0C, 0x38, 0x00, 0x31, 0xC0, 0x01, 0xCE, 0x00, 0x06, 0x30, - 0x00, 0x18, 0xC0, 0x00, 0xE3, 0x00, 0x07, 0x8E, 0x00, 0x7C, 0x1C, 0x0F, - 0x3F, 0x3F, 0xF0, 0xFC, 0x7F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x30, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x00, 0xC0, 0x00, 0x00, 0x10, 0x00, 0x00, 0x06, 0x07, 0xE0, 0x00, 0xC3, - 0xFF, 0x00, 0x19, 0xC0, 0xF0, 0x03, 0x60, 0x07, 0x00, 0xD8, 0x00, 0x60, - 0x1E, 0x00, 0x0E, 0x03, 0x80, 0x00, 0xC0, 0x60, 0x00, 0x18, 0x0C, 0x00, - 0x03, 0x03, 0x00, 0x00, 0x60, 0x60, 0x00, 0x0C, 0x0C, 0x00, 0x01, 0x81, - 0x80, 0x00, 0x60, 0x70, 0x00, 0x0C, 0x0E, 0x00, 0x03, 0x01, 0xC0, 0x00, - 0x60, 0x3C, 0x00, 0x18, 0x05, 0x80, 0x06, 0x01, 0xB8, 0x01, 0x83, 0xF3, - 0xC1, 0xE0, 0x7E, 0x3F, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3F, 0x00, - 0x07, 0xFF, 0x30, 0x38, 0x0F, 0xC1, 0x80, 0x1F, 0x0C, 0x00, 0x18, 0x60, - 0x00, 0x63, 0x00, 0x01, 0x9C, 0x00, 0x06, 0x60, 0x00, 0x01, 0x80, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x30, 0x00, 0x00, 0xE0, 0x00, 0x01, 0x80, 0x00, 0xC7, 0x00, - 0x0E, 0x0F, 0x01, 0xF0, 0x1F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x00, - 0x1F, 0x80, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x10, 0x00, 0x00, 0x18, 0x00, 0xFC, 0x0C, 0x01, - 0xFF, 0x86, 0x01, 0xC0, 0xE3, 0x03, 0x80, 0x1B, 0x03, 0x80, 0x05, 0x81, - 0x80, 0x03, 0xC1, 0x80, 0x00, 0xE1, 0x80, 0x00, 0x60, 0xC0, 0x00, 0x30, - 0x60, 0x00, 0x18, 0x60, 0x00, 0x0C, 0x30, 0x00, 0x06, 0x18, 0x00, 0x02, - 0x0C, 0x00, 0x03, 0x06, 0x00, 0x01, 0x83, 0x00, 0x01, 0xC1, 0xC0, 0x01, - 0xE0, 0x60, 0x01, 0xE0, 0x38, 0x01, 0xB0, 0x0F, 0x03, 0x9F, 0x03, 0xFF, - 0x0F, 0x80, 0x7E, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x07, 0xFF, 0x80, 0x78, - 0x0F, 0x03, 0x80, 0x0E, 0x1C, 0x00, 0x18, 0xE0, 0x00, 0x73, 0x00, 0x00, - 0xD8, 0x00, 0x03, 0x60, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x60, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x03, 0x07, 0x80, 0xF8, - 0x0F, 0xFF, 0x80, 0x0F, 0xF0, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, 0xFF, - 0xF0, 0x00, 0xF0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x18, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x07, 0xFF, 0xFC, 0x03, - 0xFF, 0xFF, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x60, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0xC0, - 0x00, 0x00, 0x30, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, - 0x80, 0x00, 0x00, 0x60, 0x00, 0x00, 0x18, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x01, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xFE, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFF, 0x87, 0xC1, 0xE0, 0xF3, 0xE1, 0xC0, - 0x1B, 0x01, 0xC0, 0x07, 0x81, 0xC0, 0x03, 0xC0, 0xC0, 0x00, 0xE0, 0xC0, - 0x00, 0x60, 0x60, 0x00, 0x30, 0x60, 0x00, 0x18, 0x30, 0x00, 0x0C, 0x18, - 0x00, 0x06, 0x0C, 0x00, 0x06, 0x06, 0x00, 0x03, 0x03, 0x00, 0x03, 0x81, - 0xC0, 0x01, 0xC0, 0x60, 0x01, 0xC0, 0x38, 0x03, 0x60, 0x0F, 0x07, 0x30, - 0x03, 0xFF, 0x18, 0x00, 0x7E, 0x0C, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x03, 0x80, 0x03, 0xFF, 0x80, 0x01, 0xFF, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, 0x83, 0xF0, 0x01, - 0x8F, 0xF8, 0x01, 0x98, 0x1C, 0x03, 0xB0, 0x0E, 0x03, 0x40, 0x06, 0x03, - 0x80, 0x06, 0x03, 0x00, 0x06, 0x03, 0x00, 0x06, 0x07, 0x00, 0x06, 0x06, - 0x00, 0x0E, 0x06, 0x00, 0x0E, 0x06, 0x00, 0x0E, 0x06, 0x00, 0x0C, 0x0C, - 0x00, 0x0C, 0x0C, 0x00, 0x1C, 0x0C, 0x00, 0x1C, 0x0C, 0x00, 0x18, 0x0C, - 0x00, 0x18, 0x18, 0x00, 0x18, 0xFF, 0x01, 0xFF, 0xFF, 0x01, 0xFF, 0x00, - 0x07, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x1F, - 0xF0, 0x00, 0x06, 0x00, 0x01, 0xC0, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x07, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, - 0x00, 0x00, 0x60, 0x00, 0x1C, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, - 0x00, 0x01, 0x80, 0x7F, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x70, 0x00, - 0x07, 0x00, 0x00, 0x70, 0x00, 0x06, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x03, 0xFF, 0xF0, - 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, - 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x0C, 0x00, 0x00, - 0xC0, 0x00, 0x0C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x01, 0x80, 0x00, - 0x18, 0x00, 0x01, 0x80, 0x00, 0x38, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, - 0x03, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, - 0x03, 0x80, 0xFF, 0xF0, 0x0F, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0xFF, 0x00, 0xC1, - 0xFF, 0x00, 0x80, 0x70, 0x01, 0x80, 0xC0, 0x01, 0x83, 0x80, 0x01, 0x87, - 0x00, 0x01, 0x8C, 0x00, 0x03, 0x38, 0x00, 0x03, 0x70, 0x00, 0x03, 0xF8, - 0x00, 0x03, 0x9C, 0x00, 0x03, 0x0C, 0x00, 0x06, 0x0E, 0x00, 0x06, 0x07, - 0x00, 0x06, 0x03, 0x80, 0x06, 0x01, 0x80, 0x04, 0x00, 0xC0, 0x0C, 0x00, - 0xE0, 0xFC, 0x03, 0xFE, 0xFC, 0x03, 0xFC, 0x01, 0xFF, 0x00, 0x3F, 0xE0, - 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x00, 0x01, 0x80, - 0x00, 0x70, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, - 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, - 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x03, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0x00, 0x1E, 0x07, 0x81, 0xE7, 0xE1, 0xF8, 0x3D, 0x8E, 0xE3, - 0x81, 0xE0, 0xF8, 0x30, 0x38, 0x1E, 0x06, 0x06, 0x03, 0x80, 0xC1, 0x80, - 0x60, 0x18, 0x30, 0x0C, 0x03, 0x06, 0x01, 0x80, 0x60, 0xC0, 0x30, 0x08, - 0x18, 0x0C, 0x03, 0x06, 0x01, 0x80, 0x60, 0xC0, 0x30, 0x0C, 0x18, 0x06, - 0x01, 0x83, 0x00, 0x80, 0x60, 0x40, 0x30, 0x0C, 0x18, 0x06, 0x01, 0x83, - 0x00, 0xC0, 0x30, 0x60, 0x18, 0x06, 0x7F, 0x03, 0xC1, 0xFF, 0xE0, 0xF8, - 0x3E, 0x00, 0x03, 0xE0, 0x1F, 0x1F, 0xF0, 0x3E, 0x60, 0x70, 0x0F, 0x80, - 0x70, 0x3C, 0x00, 0x60, 0x70, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, - 0x07, 0x00, 0x06, 0x0C, 0x00, 0x1C, 0x18, 0x00, 0x30, 0x30, 0x00, 0x60, - 0x60, 0x00, 0xC1, 0xC0, 0x01, 0x83, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, - 0x00, 0x18, 0x18, 0x00, 0x30, 0x70, 0x00, 0x67, 0xFC, 0x07, 0xFF, 0xF0, - 0x0F, 0xE0, 0x00, 0x3F, 0x00, 0x07, 0xFF, 0x00, 0x3C, 0x0F, 0x01, 0xC0, - 0x1C, 0x0C, 0x00, 0x38, 0x60, 0x00, 0x63, 0x00, 0x00, 0xDC, 0x00, 0x03, - 0x60, 0x00, 0x0D, 0x80, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, - 0x00, 0x1B, 0x00, 0x00, 0x6C, 0x00, 0x03, 0xB0, 0x00, 0x0C, 0x60, 0x00, - 0x61, 0xC0, 0x03, 0x03, 0x80, 0x38, 0x0F, 0x03, 0xC0, 0x0F, 0xFE, 0x00, - 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x1F, 0x8F, 0xFE, 0x00, 0xFC, - 0xE0, 0x78, 0x00, 0xCC, 0x00, 0xE0, 0x06, 0xC0, 0x03, 0x00, 0x3C, 0x00, - 0x1C, 0x01, 0xC0, 0x00, 0x60, 0x0C, 0x00, 0x03, 0x00, 0xE0, 0x00, 0x18, - 0x06, 0x00, 0x00, 0xC0, 0x30, 0x00, 0x06, 0x01, 0x80, 0x00, 0x30, 0x0C, - 0x00, 0x03, 0x00, 0xE0, 0x00, 0x18, 0x07, 0x00, 0x01, 0x80, 0x3C, 0x00, - 0x1C, 0x01, 0xE0, 0x01, 0xC0, 0x0D, 0x80, 0x1C, 0x00, 0xCF, 0x03, 0xC0, - 0x06, 0x3F, 0xF8, 0x00, 0x30, 0x7F, 0x00, 0x01, 0x80, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x30, 0x00, - 0x00, 0x01, 0x80, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x07, 0xFF, 0x00, 0x00, - 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, 0xE1, 0xF0, 0x78, - 0x1C, 0xFC, 0x38, 0x01, 0xB0, 0x1C, 0x00, 0x2C, 0x0E, 0x00, 0x0F, 0x03, - 0x00, 0x01, 0xC1, 0x80, 0x00, 0x60, 0x60, 0x00, 0x18, 0x30, 0x00, 0x06, - 0x0C, 0x00, 0x01, 0x83, 0x00, 0x00, 0x60, 0xC0, 0x00, 0x30, 0x30, 0x00, - 0x0C, 0x0C, 0x00, 0x07, 0x03, 0x80, 0x03, 0xC0, 0x60, 0x01, 0xB0, 0x1C, - 0x00, 0xD8, 0x03, 0xC0, 0xE6, 0x00, 0x7F, 0xF1, 0x80, 0x07, 0xE0, 0x60, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0x30, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x7F, 0xF8, 0x00, 0x1F, 0xFE, 0x00, 0x07, 0xF0, 0x3E, 0x03, 0xF8, 0x7F, - 0xC0, 0x18, 0xF0, 0x60, 0x0C, 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xC0, - 0x00, 0x03, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x30, 0x00, 0x00, 0x38, 0x00, 0x00, 0x18, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x03, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x3F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, 0x00, 0x00, 0x3F, 0x00, - 0x0F, 0xFE, 0xC0, 0xF0, 0x3E, 0x0E, 0x00, 0x70, 0xE0, 0x01, 0x06, 0x00, - 0x08, 0x30, 0x00, 0x41, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3F, 0xF0, 0x00, - 0x3F, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x18, 0x00, 0x00, - 0xCC, 0x00, 0x06, 0x60, 0x00, 0x33, 0x00, 0x03, 0x3C, 0x00, 0x71, 0xF8, - 0x0F, 0x0D, 0xFF, 0xF0, 0x01, 0xFC, 0x00, 0x03, 0x00, 0x03, 0x00, 0x01, - 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x70, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, - 0x0C, 0x00, 0x06, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0xC0, - 0x00, 0xE0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, 0x0C, 0x00, 0x0E, - 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x03, 0x38, 0x0F, - 0x9F, 0xFF, 0x03, 0xF8, 0x00, 0xFC, 0x03, 0xFF, 0xE0, 0x1F, 0xC6, 0x00, - 0x0C, 0x30, 0x00, 0x61, 0x80, 0x03, 0x0C, 0x00, 0x18, 0x60, 0x01, 0x86, - 0x00, 0x0C, 0x30, 0x00, 0x61, 0x80, 0x03, 0x0C, 0x00, 0x18, 0x60, 0x01, - 0x86, 0x00, 0x0C, 0x30, 0x00, 0x61, 0x80, 0x03, 0x0C, 0x00, 0x38, 0x60, - 0x07, 0x83, 0x80, 0x6C, 0x1E, 0x1E, 0x7C, 0x7F, 0xE3, 0xE0, 0xF8, 0x00, - 0x00, 0x7F, 0xC0, 0xFF, 0xFF, 0xF0, 0x3F, 0xF1, 0xC0, 0x00, 0xC0, 0x30, - 0x00, 0x60, 0x0C, 0x00, 0x18, 0x03, 0x00, 0x0C, 0x00, 0xE0, 0x06, 0x00, - 0x18, 0x01, 0x80, 0x06, 0x00, 0xC0, 0x01, 0x80, 0x30, 0x00, 0x60, 0x18, - 0x00, 0x0C, 0x0C, 0x00, 0x03, 0x03, 0x00, 0x00, 0xC1, 0x80, 0x00, 0x30, - 0xC0, 0x00, 0x06, 0x30, 0x00, 0x01, 0x98, 0x00, 0x00, 0x6C, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x07, 0x80, 0x00, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0x3F, - 0xCC, 0x00, 0x03, 0x06, 0x00, 0x01, 0x83, 0x00, 0x01, 0x81, 0x81, 0x80, - 0xC0, 0xC1, 0xE0, 0x60, 0x60, 0xF0, 0x60, 0x30, 0xD8, 0x30, 0x18, 0x6C, - 0x30, 0x0C, 0x66, 0x18, 0x06, 0x33, 0x18, 0x03, 0x31, 0x8C, 0x01, 0x98, - 0x66, 0x00, 0xD8, 0x36, 0x00, 0x6C, 0x1B, 0x00, 0x3C, 0x0F, 0x00, 0x1E, - 0x07, 0x80, 0x0E, 0x03, 0x80, 0x07, 0x01, 0xC0, 0x00, 0x07, 0xF0, 0x3F, - 0xC3, 0xFC, 0x0F, 0xF0, 0x38, 0x00, 0x60, 0x07, 0x00, 0x70, 0x00, 0xE0, - 0x38, 0x00, 0x18, 0x1C, 0x00, 0x03, 0x0C, 0x00, 0x00, 0xEE, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x03, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xDC, 0x00, - 0x00, 0xE3, 0x80, 0x00, 0x70, 0x70, 0x00, 0x38, 0x0E, 0x00, 0x18, 0x01, - 0x80, 0x1C, 0x00, 0x30, 0x0E, 0x00, 0x0E, 0x0F, 0xF0, 0x3F, 0xE3, 0xFC, - 0x0F, 0xF8, 0x03, 0xF8, 0x07, 0xF8, 0x3F, 0xC0, 0x3F, 0xC0, 0x60, 0x00, - 0x30, 0x01, 0x80, 0x01, 0x80, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x01, 0x80, - 0x03, 0x80, 0x0C, 0x00, 0x0C, 0x00, 0xC0, 0x00, 0x60, 0x0C, 0x00, 0x03, - 0x00, 0x60, 0x00, 0x0C, 0x06, 0x00, 0x00, 0x60, 0x60, 0x00, 0x03, 0x06, - 0x00, 0x00, 0x1C, 0x30, 0x00, 0x00, 0x63, 0x00, 0x00, 0x03, 0x30, 0x00, - 0x00, 0x19, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, - 0x1C, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x03, 0x00, 0x00, - 0x00, 0x30, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0x00, - 0x07, 0xFF, 0xF8, 0x3F, 0xFF, 0xC3, 0x00, 0x0C, 0x18, 0x00, 0xC0, 0xC0, - 0x0C, 0x00, 0x00, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, - 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x01, 0x80, - 0x00, 0x18, 0x00, 0x01, 0x80, 0x0C, 0x18, 0x00, 0x61, 0x80, 0x02, 0x1F, - 0xFF, 0xF0, 0xFF, 0xFF, 0x80, 0x00, 0x0E, 0x00, 0x7C, 0x01, 0xC0, 0x03, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x01, 0xC0, 0x03, 0x00, - 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x01, 0xC0, 0x0F, 0x00, 0xF8, - 0x01, 0xF0, 0x00, 0x30, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x80, - 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0xE0, 0x01, 0x80, 0x03, - 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x01, 0x80, 0xC0, - 0x60, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x06, 0x03, 0x01, 0x80, 0xC0, 0x40, - 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x60, - 0x30, 0x18, 0x08, 0x0C, 0x06, 0x03, 0x01, 0x80, 0x80, 0xC0, 0x60, 0x30, - 0x00, 0x01, 0xC0, 0x03, 0xC0, 0x01, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, - 0x00, 0x0C, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x0C, 0x00, 0x18, 0x00, 0x38, 0x00, 0x38, 0x00, 0x3E, 0x00, 0x7C, 0x03, - 0xC0, 0x0E, 0x00, 0x18, 0x00, 0x70, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x06, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x00, 0x0E, - 0x00, 0xF8, 0x01, 0xC0, 0x00, 0x0F, 0x00, 0x01, 0xFC, 0x03, 0x70, 0xE0, - 0x7E, 0x07, 0x1E, 0xC0, 0x3F, 0x80, 0x01, 0xE0}; - -const GFXglyph FreeMonoOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 10, 30, 28, 12, -28}, // 0x21 '!' - {38, 16, 14, 28, 10, -28}, // 0x22 '"' - {66, 22, 32, 28, 6, -29}, // 0x23 '#' - {154, 21, 33, 28, 6, -29}, // 0x24 '$' - {241, 22, 29, 28, 6, -27}, // 0x25 '%' - {321, 19, 25, 28, 6, -23}, // 0x26 '&' - {381, 7, 14, 28, 16, -28}, // 0x27 ''' - {394, 11, 34, 28, 16, -27}, // 0x28 '(' - {441, 11, 34, 28, 7, -27}, // 0x29 ')' - {488, 18, 17, 28, 10, -28}, // 0x2A '*' - {527, 22, 22, 28, 6, -23}, // 0x2B '+' - {588, 12, 14, 28, 5, -6}, // 0x2C ',' - {609, 22, 2, 28, 6, -13}, // 0x2D '-' - {615, 7, 6, 28, 11, -4}, // 0x2E '.' - {621, 24, 35, 28, 5, -30}, // 0x2F '/' - {726, 20, 30, 28, 7, -28}, // 0x30 '0' - {801, 17, 29, 28, 6, -28}, // 0x31 '1' - {863, 23, 29, 28, 4, -28}, // 0x32 '2' - {947, 22, 30, 28, 5, -28}, // 0x33 '3' - {1030, 19, 28, 28, 7, -27}, // 0x34 '4' - {1097, 21, 29, 28, 6, -27}, // 0x35 '5' - {1174, 21, 30, 28, 9, -28}, // 0x36 '6' - {1253, 18, 28, 28, 10, -27}, // 0x37 '7' - {1316, 20, 30, 28, 7, -28}, // 0x38 '8' - {1391, 22, 30, 28, 6, -28}, // 0x39 '9' - {1474, 10, 21, 28, 11, -19}, // 0x3A ':' - {1501, 15, 27, 28, 5, -19}, // 0x3B ';' - {1552, 23, 22, 28, 6, -23}, // 0x3C '<' - {1616, 25, 9, 28, 4, -17}, // 0x3D '=' - {1645, 24, 22, 28, 4, -23}, // 0x3E '>' - {1711, 16, 28, 28, 11, -26}, // 0x3F '?' - {1767, 19, 32, 28, 7, -28}, // 0x40 '@' - {1843, 27, 26, 28, 1, -25}, // 0x41 'A' - {1931, 26, 26, 28, 2, -25}, // 0x42 'B' - {2016, 25, 28, 28, 5, -26}, // 0x43 'C' - {2104, 26, 26, 28, 2, -25}, // 0x44 'D' - {2189, 27, 26, 28, 2, -25}, // 0x45 'E' - {2277, 28, 26, 28, 2, -25}, // 0x46 'F' - {2368, 25, 28, 28, 5, -26}, // 0x47 'G' - {2456, 27, 26, 28, 3, -25}, // 0x48 'H' - {2544, 22, 26, 28, 6, -25}, // 0x49 'I' - {2616, 28, 27, 28, 5, -25}, // 0x4A 'J' - {2711, 29, 26, 28, 2, -25}, // 0x4B 'K' - {2806, 25, 26, 28, 3, -25}, // 0x4C 'L' - {2888, 32, 26, 28, 1, -25}, // 0x4D 'M' - {2992, 30, 26, 28, 2, -25}, // 0x4E 'N' - {3090, 24, 28, 28, 5, -26}, // 0x4F 'O' - {3174, 26, 26, 28, 2, -25}, // 0x50 'P' - {3259, 24, 32, 28, 5, -26}, // 0x51 'Q' - {3355, 26, 26, 28, 2, -25}, // 0x52 'R' - {3440, 24, 28, 28, 5, -26}, // 0x53 'S' - {3524, 24, 26, 28, 7, -25}, // 0x54 'T' - {3602, 26, 27, 28, 6, -25}, // 0x55 'U' - {3690, 27, 26, 28, 6, -25}, // 0x56 'V' - {3778, 27, 26, 28, 6, -25}, // 0x57 'W' - {3866, 29, 26, 28, 2, -25}, // 0x58 'X' - {3961, 24, 26, 28, 7, -25}, // 0x59 'Y' - {4039, 23, 26, 28, 5, -25}, // 0x5A 'Z' - {4114, 15, 34, 28, 12, -27}, // 0x5B '[' - {4178, 10, 35, 28, 12, -30}, // 0x5C '\' - {4222, 15, 34, 28, 6, -27}, // 0x5D ']' - {4286, 18, 12, 28, 9, -28}, // 0x5E '^' - {4313, 28, 2, 28, -1, 5}, // 0x5F '_' - {4320, 6, 7, 28, 13, -29}, // 0x60 '`' - {4326, 22, 22, 28, 4, -20}, // 0x61 'a' - {4387, 27, 29, 28, 1, -27}, // 0x62 'b' - {4485, 22, 22, 28, 6, -20}, // 0x63 'c' - {4546, 25, 29, 28, 5, -27}, // 0x64 'd' - {4637, 22, 22, 28, 5, -20}, // 0x65 'e' - {4698, 26, 28, 28, 5, -27}, // 0x66 'f' - {4789, 25, 30, 28, 5, -20}, // 0x67 'g' - {4883, 24, 28, 28, 3, -27}, // 0x68 'h' - {4967, 19, 29, 28, 5, -28}, // 0x69 'i' - {5036, 20, 38, 28, 4, -28}, // 0x6A 'j' - {5131, 24, 28, 28, 3, -27}, // 0x6B 'k' - {5215, 19, 28, 28, 5, -27}, // 0x6C 'l' - {5282, 27, 21, 28, 1, -20}, // 0x6D 'm' - {5353, 23, 21, 28, 3, -20}, // 0x6E 'n' - {5414, 22, 22, 28, 5, -20}, // 0x6F 'o' - {5475, 29, 30, 28, -1, -20}, // 0x70 'p' - {5584, 26, 30, 28, 5, -20}, // 0x71 'q' - {5682, 25, 20, 28, 4, -19}, // 0x72 'r' - {5745, 21, 22, 28, 5, -20}, // 0x73 's' - {5803, 17, 27, 28, 7, -25}, // 0x74 't' - {5861, 21, 21, 28, 6, -19}, // 0x75 'u' - {5917, 26, 20, 28, 5, -19}, // 0x76 'v' - {5982, 25, 20, 28, 6, -19}, // 0x77 'w' - {6045, 26, 20, 28, 3, -19}, // 0x78 'x' - {6110, 29, 29, 28, 1, -19}, // 0x79 'y' - {6216, 21, 20, 28, 5, -19}, // 0x7A 'z' - {6269, 15, 34, 28, 10, -27}, // 0x7B '{' - {6333, 9, 35, 28, 12, -28}, // 0x7C '|' - {6373, 15, 34, 28, 8, -27}, // 0x7D '}' - {6437, 20, 6, 28, 7, -15}}; // 0x7E '~' - -const GFXfont FreeMonoOblique24pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique24pt7bBitmaps, - (GFXglyph *)FreeMonoOblique24pt7bGlyphs, 0x20, 0x7E, 47}; - -// Approx. 7124 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h deleted file mode 100644 index 1e82964..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h +++ /dev/null @@ -1,189 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique9pt7bBitmaps[] PROGMEM = { - 0x11, 0x22, 0x24, 0x40, 0x00, 0xC0, 0xDE, 0xE5, 0x29, 0x00, 0x09, 0x05, - 0x02, 0x82, 0x47, 0xF8, 0xA0, 0x51, 0xFE, 0x28, 0x14, 0x0A, 0x09, 0x00, - 0x08, 0x1D, 0x23, 0x40, 0x70, 0x1C, 0x02, 0x82, 0x84, 0x78, 0x20, 0x20, - 0x1C, 0x11, 0x08, 0x83, 0x80, 0x18, 0x71, 0xC0, 0x1C, 0x11, 0x08, 0x83, - 0x80, 0x1E, 0x60, 0x81, 0x03, 0x0A, 0x65, 0x46, 0x88, 0xE8, 0xFA, 0x80, - 0x12, 0x24, 0x48, 0x88, 0x88, 0x88, 0x80, 0x01, 0x11, 0x11, 0x11, 0x22, - 0x44, 0x80, 0x10, 0x22, 0x5B, 0xC3, 0x0A, 0x22, 0x00, 0x04, 0x02, 0x02, - 0x1F, 0xF0, 0x80, 0x40, 0x20, 0x00, 0x36, 0x4C, 0x80, 0xFF, 0x80, 0xF0, - 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, - 0x08, 0x08, 0x00, 0x1C, 0x45, 0x0A, 0x18, 0x30, 0x61, 0x42, 0x85, 0x11, - 0xC0, 0x04, 0x38, 0x90, 0x20, 0x81, 0x02, 0x04, 0x08, 0x23, 0xF8, 0x07, - 0x04, 0xC4, 0x20, 0x10, 0x10, 0x30, 0x20, 0x20, 0x60, 0x40, 0x3F, 0x80, - 0x0F, 0x00, 0x40, 0x20, 0x20, 0x60, 0x18, 0x04, 0x02, 0x01, 0x43, 0x1E, - 0x00, 0x03, 0x05, 0x0A, 0x12, 0x22, 0x22, 0x42, 0x7F, 0x04, 0x04, 0x1E, - 0x1F, 0x88, 0x08, 0x05, 0xC3, 0x30, 0x08, 0x04, 0x02, 0x02, 0x42, 0x1E, - 0x00, 0x07, 0x18, 0x20, 0x40, 0x5C, 0xA6, 0xC2, 0x82, 0x82, 0xC4, 0x78, - 0xFF, 0x04, 0x10, 0x20, 0x82, 0x04, 0x10, 0x20, 0x81, 0x00, 0x1E, 0x23, - 0x41, 0x41, 0x62, 0x1C, 0x66, 0x82, 0x82, 0x84, 0x78, 0x1E, 0x23, 0x41, - 0x41, 0x43, 0x65, 0x3A, 0x02, 0x04, 0x18, 0xE0, 0x6C, 0x00, 0x36, 0x18, - 0xC0, 0x00, 0x19, 0x8C, 0xC4, 0x00, 0x01, 0x83, 0x06, 0x0C, 0x06, 0x00, - 0x80, 0x30, 0x04, 0xFF, 0x80, 0x00, 0x1F, 0xF0, 0x20, 0x0C, 0x01, 0x00, - 0x60, 0x20, 0x60, 0xC1, 0x80, 0x3D, 0x8E, 0x08, 0x10, 0xC6, 0x08, 0x00, - 0x01, 0x80, 0x1C, 0x45, 0x0A, 0x79, 0x34, 0x69, 0x4E, 0x81, 0x03, 0x03, - 0xC0, 0x0F, 0x00, 0x60, 0x12, 0x02, 0x40, 0x88, 0x21, 0x07, 0xE1, 0x04, - 0x20, 0x5E, 0x3C, 0x3F, 0x84, 0x11, 0x04, 0x82, 0x3F, 0x88, 0x32, 0x04, - 0x81, 0x60, 0xBF, 0xC0, 0x1E, 0x98, 0xD0, 0x28, 0x08, 0x04, 0x02, 0x01, - 0x00, 0x41, 0x1F, 0x00, 0x3F, 0x0C, 0x22, 0x04, 0x81, 0x20, 0x48, 0x12, - 0x09, 0x02, 0x43, 0x3F, 0x00, 0x3F, 0xC4, 0x11, 0x00, 0x88, 0x3E, 0x08, - 0x82, 0x00, 0x82, 0x60, 0xBF, 0xE0, 0x3F, 0xE2, 0x08, 0x40, 0x11, 0x03, - 0xE0, 0x44, 0x08, 0x01, 0x00, 0x60, 0x1F, 0x00, 0x1E, 0x98, 0xD0, 0x08, - 0x08, 0x04, 0x7A, 0x05, 0x02, 0x41, 0x1F, 0x00, 0x3D, 0xE2, 0x18, 0x42, - 0x08, 0x43, 0xF8, 0x41, 0x08, 0x21, 0x08, 0x21, 0x1E, 0xF0, 0x3F, 0x82, - 0x02, 0x01, 0x00, 0x80, 0x40, 0x20, 0x20, 0x10, 0x7F, 0x00, 0x0F, 0xE0, - 0x20, 0x04, 0x00, 0x80, 0x10, 0x02, 0x20, 0x84, 0x10, 0x84, 0x0F, 0x00, - 0x3C, 0xE2, 0x10, 0x44, 0x11, 0x02, 0xC0, 0x64, 0x08, 0x81, 0x08, 0x61, - 0x1E, 0x38, 0x3E, 0x02, 0x00, 0x80, 0x20, 0x10, 0x04, 0x01, 0x04, 0x42, - 0x10, 0xBF, 0xE0, 0x38, 0x38, 0xC3, 0x05, 0x28, 0x29, 0x42, 0x52, 0x13, - 0x10, 0x99, 0x84, 0x08, 0x20, 0x47, 0x8F, 0x00, 0x70, 0xE6, 0x08, 0xA1, - 0x14, 0x22, 0x48, 0x49, 0x11, 0x22, 0x14, 0x43, 0x1E, 0x20, 0x1E, 0x18, - 0x90, 0x28, 0x18, 0x0C, 0x06, 0x05, 0x02, 0x46, 0x1E, 0x00, 0x3F, 0x84, - 0x31, 0x04, 0x81, 0x20, 0x8F, 0xC2, 0x00, 0x80, 0x60, 0x3E, 0x00, 0x1E, - 0x18, 0x90, 0x28, 0x18, 0x0C, 0x06, 0x05, 0x02, 0x46, 0x1E, 0x08, 0x0F, - 0x44, 0x60, 0x3F, 0x84, 0x31, 0x04, 0x81, 0x20, 0x8F, 0xC2, 0x10, 0x84, - 0x60, 0xBC, 0x10, 0x0F, 0x88, 0xC8, 0x24, 0x01, 0x80, 0x38, 0x05, 0x02, - 0xC2, 0x5E, 0x00, 0xFF, 0xC4, 0x44, 0x02, 0x01, 0x00, 0x80, 0x40, 0x60, - 0x20, 0x7E, 0x00, 0xF1, 0xD0, 0x24, 0x09, 0x02, 0x41, 0xA0, 0x48, 0x12, - 0x04, 0xC6, 0x1F, 0x00, 0xF1, 0xE8, 0x11, 0x02, 0x20, 0x82, 0x20, 0x44, - 0x09, 0x01, 0x40, 0x28, 0x02, 0x00, 0xF1, 0xE8, 0x09, 0x12, 0x26, 0x45, - 0x48, 0xAA, 0x29, 0x45, 0x28, 0xC6, 0x18, 0xC0, 0x38, 0xE2, 0x08, 0x26, - 0x05, 0x00, 0x40, 0x18, 0x04, 0x81, 0x08, 0x41, 0x1C, 0x70, 0xE3, 0xA0, - 0x90, 0x84, 0x81, 0x80, 0x80, 0x40, 0x20, 0x20, 0x7E, 0x00, 0x3F, 0x90, - 0x88, 0x80, 0x80, 0x80, 0x80, 0x80, 0x82, 0x82, 0x7F, 0x00, 0x39, 0x08, - 0x44, 0x21, 0x08, 0x42, 0x21, 0x0E, 0x00, 0x88, 0x44, 0x44, 0x22, 0x22, - 0x11, 0x11, 0x38, 0x42, 0x11, 0x08, 0x42, 0x10, 0x84, 0x2E, 0x00, 0x08, - 0x28, 0x92, 0x18, 0x20, 0xFF, 0xC0, 0xA4, 0x3E, 0x00, 0x80, 0x47, 0xA4, - 0x34, 0x12, 0x18, 0xF7, 0x38, 0x01, 0x00, 0x40, 0x09, 0xE1, 0xC6, 0x20, - 0x44, 0x09, 0x01, 0x30, 0x46, 0x13, 0xBC, 0x00, 0x1F, 0x48, 0x74, 0x0A, - 0x00, 0x80, 0x20, 0x0C, 0x18, 0xF8, 0x01, 0x80, 0x40, 0x23, 0x96, 0x32, - 0x0A, 0x05, 0x02, 0x81, 0x61, 0x1F, 0xE0, 0x1F, 0x30, 0xD0, 0x3F, 0xF8, - 0x04, 0x01, 0x00, 0x7C, 0x07, 0xC3, 0x00, 0x80, 0xFE, 0x10, 0x04, 0x01, - 0x00, 0x40, 0x10, 0x08, 0x0F, 0xE0, 0x1D, 0xD8, 0xC4, 0x12, 0x04, 0x82, - 0x20, 0x8C, 0x61, 0xE8, 0x02, 0x01, 0x07, 0x80, 0x30, 0x04, 0x01, 0x00, - 0x5C, 0x38, 0x88, 0x22, 0x08, 0x82, 0x21, 0x18, 0x4F, 0x3C, 0x04, 0x04, - 0x00, 0x38, 0x08, 0x08, 0x08, 0x08, 0x10, 0x10, 0xFF, 0x01, 0x00, 0x80, - 0x03, 0xF0, 0x10, 0x08, 0x04, 0x02, 0x02, 0x01, 0x00, 0x80, 0x40, 0x47, - 0xC0, 0x38, 0x08, 0x04, 0x02, 0x71, 0x20, 0xA0, 0xA0, 0x68, 0x24, 0x11, - 0x38, 0xE0, 0x3C, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x08, 0x10, 0x10, - 0xFF, 0x3E, 0xE2, 0x64, 0x88, 0x91, 0x12, 0x24, 0x48, 0x91, 0x17, 0x33, - 0x37, 0x14, 0x4C, 0x24, 0x12, 0x09, 0x08, 0x85, 0xE3, 0x1E, 0x10, 0x90, - 0x30, 0x18, 0x0C, 0x0B, 0x08, 0x78, 0x33, 0xC3, 0x8C, 0x40, 0x88, 0x12, - 0x02, 0x60, 0x8C, 0x31, 0x78, 0x20, 0x08, 0x03, 0xE0, 0x00, 0x1C, 0xD8, - 0xC4, 0x12, 0x04, 0x81, 0x20, 0x4C, 0x21, 0xF8, 0x02, 0x00, 0x81, 0xF0, - 0x73, 0x8E, 0x04, 0x04, 0x02, 0x01, 0x00, 0x81, 0xFC, 0x1F, 0x61, 0x40, - 0x3C, 0x03, 0x81, 0x82, 0xFC, 0x10, 0x63, 0xF9, 0x02, 0x04, 0x10, 0x20, - 0x40, 0x7C, 0xE3, 0x10, 0x90, 0x48, 0x24, 0x22, 0x11, 0x18, 0xF6, 0xF3, - 0xD0, 0x44, 0x10, 0x88, 0x24, 0x09, 0x02, 0x80, 0x40, 0xE1, 0xD0, 0x24, - 0x91, 0x24, 0x55, 0x19, 0x86, 0x61, 0x10, 0x39, 0xC4, 0x20, 0xB0, 0x30, - 0x0C, 0x04, 0x86, 0x13, 0x8E, 0x3C, 0x71, 0x04, 0x10, 0x40, 0x88, 0x09, - 0x00, 0xA0, 0x06, 0x00, 0x40, 0x08, 0x01, 0x00, 0xFC, 0x00, 0x7F, 0x42, - 0x04, 0x08, 0x10, 0x20, 0x42, 0xFE, 0x0C, 0x41, 0x04, 0x30, 0x8C, 0x08, - 0x21, 0x04, 0x10, 0x60, 0x24, 0x94, 0x92, 0x52, 0x40, 0x18, 0x20, 0x82, - 0x10, 0x40, 0xC4, 0x10, 0x82, 0x08, 0xC0, 0x61, 0x24, 0x30}; - -const GFXglyph FreeMonoOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 4, 11, 11, 4, -10}, // 0x21 '!' - {6, 5, 5, 11, 4, -10}, // 0x22 '"' - {10, 9, 12, 11, 2, -10}, // 0x23 '#' - {24, 8, 12, 11, 3, -10}, // 0x24 '$' - {36, 9, 11, 11, 2, -10}, // 0x25 '%' - {49, 7, 10, 11, 2, -9}, // 0x26 '&' - {58, 2, 5, 11, 6, -10}, // 0x27 ''' - {60, 4, 13, 11, 6, -10}, // 0x28 '(' - {67, 4, 13, 11, 3, -10}, // 0x29 ')' - {74, 7, 7, 11, 4, -10}, // 0x2A '*' - {81, 9, 8, 11, 2, -8}, // 0x2B '+' - {90, 4, 5, 11, 2, -1}, // 0x2C ',' - {93, 9, 1, 11, 2, -5}, // 0x2D '-' - {95, 2, 2, 11, 4, -1}, // 0x2E '.' - {96, 9, 13, 11, 2, -11}, // 0x2F '/' - {111, 7, 11, 11, 3, -10}, // 0x30 '0' - {121, 7, 11, 11, 2, -10}, // 0x31 '1' - {131, 9, 11, 11, 2, -10}, // 0x32 '2' - {144, 9, 11, 11, 2, -10}, // 0x33 '3' - {157, 8, 11, 11, 2, -10}, // 0x34 '4' - {168, 9, 11, 11, 2, -10}, // 0x35 '5' - {181, 8, 11, 11, 3, -10}, // 0x36 '6' - {192, 7, 11, 11, 4, -10}, // 0x37 '7' - {202, 8, 11, 11, 3, -10}, // 0x38 '8' - {213, 8, 11, 11, 3, -10}, // 0x39 '9' - {224, 3, 8, 11, 4, -7}, // 0x3A ':' - {227, 5, 11, 11, 2, -7}, // 0x3B ';' - {234, 9, 8, 11, 2, -8}, // 0x3C '<' - {243, 9, 4, 11, 2, -6}, // 0x3D '=' - {248, 9, 8, 11, 2, -8}, // 0x3E '>' - {257, 7, 10, 11, 4, -9}, // 0x3F '?' - {266, 7, 12, 11, 3, -10}, // 0x40 '@' - {277, 11, 10, 11, 0, -9}, // 0x41 'A' - {291, 10, 10, 11, 1, -9}, // 0x42 'B' - {304, 9, 10, 11, 2, -9}, // 0x43 'C' - {316, 10, 10, 11, 1, -9}, // 0x44 'D' - {329, 10, 10, 11, 1, -9}, // 0x45 'E' - {342, 11, 10, 11, 1, -9}, // 0x46 'F' - {356, 9, 10, 11, 2, -9}, // 0x47 'G' - {368, 11, 10, 11, 1, -9}, // 0x48 'H' - {382, 9, 10, 11, 2, -9}, // 0x49 'I' - {394, 11, 10, 11, 2, -9}, // 0x4A 'J' - {408, 11, 10, 11, 1, -9}, // 0x4B 'K' - {422, 10, 10, 11, 1, -9}, // 0x4C 'L' - {435, 13, 10, 11, 0, -9}, // 0x4D 'M' - {452, 11, 10, 11, 1, -9}, // 0x4E 'N' - {466, 9, 10, 11, 2, -9}, // 0x4F 'O' - {478, 10, 10, 11, 1, -9}, // 0x50 'P' - {491, 9, 13, 11, 2, -9}, // 0x51 'Q' - {506, 10, 10, 11, 1, -9}, // 0x52 'R' - {519, 9, 10, 11, 2, -9}, // 0x53 'S' - {531, 9, 10, 11, 3, -9}, // 0x54 'T' - {543, 10, 10, 11, 2, -9}, // 0x55 'U' - {556, 11, 10, 11, 2, -9}, // 0x56 'V' - {570, 11, 10, 11, 2, -9}, // 0x57 'W' - {584, 11, 10, 11, 1, -9}, // 0x58 'X' - {598, 9, 10, 11, 3, -9}, // 0x59 'Y' - {610, 9, 10, 11, 2, -9}, // 0x5A 'Z' - {622, 5, 13, 11, 5, -10}, // 0x5B '[' - {631, 4, 14, 11, 4, -11}, // 0x5C '\' - {638, 5, 13, 11, 2, -10}, // 0x5D ']' - {647, 7, 5, 11, 3, -10}, // 0x5E '^' - {652, 11, 1, 11, 0, 2}, // 0x5F '_' - {654, 2, 3, 11, 5, -11}, // 0x60 '`' - {655, 9, 8, 11, 2, -7}, // 0x61 'a' - {664, 11, 11, 11, 0, -10}, // 0x62 'b' - {680, 10, 8, 11, 2, -7}, // 0x63 'c' - {690, 9, 11, 11, 2, -10}, // 0x64 'd' - {703, 9, 8, 11, 2, -7}, // 0x65 'e' - {712, 10, 11, 11, 2, -10}, // 0x66 'f' - {726, 10, 11, 11, 2, -7}, // 0x67 'g' - {740, 10, 11, 11, 1, -10}, // 0x68 'h' - {754, 8, 11, 11, 2, -10}, // 0x69 'i' - {765, 9, 14, 11, 1, -10}, // 0x6A 'j' - {781, 9, 11, 11, 1, -10}, // 0x6B 'k' - {794, 8, 11, 11, 2, -10}, // 0x6C 'l' - {805, 11, 8, 11, 0, -7}, // 0x6D 'm' - {816, 9, 8, 11, 1, -7}, // 0x6E 'n' - {825, 9, 8, 11, 2, -7}, // 0x6F 'o' - {834, 11, 11, 11, 0, -7}, // 0x70 'p' - {850, 10, 11, 11, 2, -7}, // 0x71 'q' - {864, 9, 8, 11, 2, -7}, // 0x72 'r' - {873, 8, 8, 11, 2, -7}, // 0x73 's' - {881, 7, 10, 11, 2, -9}, // 0x74 't' - {890, 9, 8, 11, 2, -7}, // 0x75 'u' - {899, 10, 8, 11, 2, -7}, // 0x76 'v' - {909, 10, 8, 11, 2, -7}, // 0x77 'w' - {919, 10, 8, 11, 1, -7}, // 0x78 'x' - {929, 12, 11, 11, 0, -7}, // 0x79 'y' - {946, 8, 8, 11, 2, -7}, // 0x7A 'z' - {954, 6, 13, 11, 4, -10}, // 0x7B '{' - {964, 3, 12, 11, 5, -9}, // 0x7C '|' - {969, 6, 13, 11, 3, -10}, // 0x7D '}' - {979, 7, 3, 11, 3, -6}}; // 0x7E '~' - -const GFXfont FreeMonoOblique9pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique9pt7bBitmaps, - (GFXglyph *)FreeMonoOblique9pt7bGlyphs, 0x20, 0x7E, 18}; - -// Approx. 1654 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans12pt7b.h deleted file mode 100644 index 6e77392..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans12pt7b.h +++ /dev/null @@ -1,272 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xCF, 0x3C, 0xF3, 0x8A, 0x20, 0x06, 0x30, - 0x31, 0x03, 0x18, 0x18, 0xC7, 0xFF, 0xBF, 0xFC, 0x31, 0x03, 0x18, 0x18, - 0xC7, 0xFF, 0xBF, 0xFC, 0x31, 0x01, 0x18, 0x18, 0xC0, 0xC6, 0x06, 0x30, - 0x04, 0x03, 0xE1, 0xFF, 0x72, 0x6C, 0x47, 0x88, 0xF1, 0x07, 0x20, 0x7E, - 0x03, 0xF0, 0x17, 0x02, 0x3C, 0x47, 0x88, 0xF1, 0x1B, 0x26, 0x7F, 0xC3, - 0xE0, 0x10, 0x02, 0x00, 0x00, 0x06, 0x03, 0xC0, 0x40, 0x7E, 0x0C, 0x0E, - 0x70, 0x80, 0xC3, 0x18, 0x0C, 0x31, 0x00, 0xE7, 0x30, 0x07, 0xE6, 0x00, - 0x3C, 0x40, 0x00, 0x0C, 0x7C, 0x00, 0x8F, 0xE0, 0x19, 0xC7, 0x01, 0x18, - 0x30, 0x31, 0x83, 0x02, 0x1C, 0x70, 0x40, 0xFE, 0x04, 0x07, 0xC0, 0x0F, - 0x00, 0x7E, 0x03, 0x9C, 0x0C, 0x30, 0x30, 0xC0, 0xE7, 0x01, 0xF8, 0x03, - 0x80, 0x3E, 0x01, 0xCC, 0x6E, 0x19, 0xB0, 0x7C, 0xC0, 0xF3, 0x03, 0xCE, - 0x1F, 0x9F, 0xE6, 0x1E, 0x1C, 0xFF, 0xA0, 0x08, 0x8C, 0x66, 0x31, 0x98, - 0xC6, 0x31, 0x8C, 0x63, 0x08, 0x63, 0x08, 0x61, 0x0C, 0x20, 0x82, 0x18, - 0xC3, 0x18, 0xC3, 0x18, 0xC6, 0x31, 0x8C, 0x62, 0x31, 0x88, 0xC4, 0x62, - 0x00, 0x10, 0x23, 0x5B, 0xE3, 0x8D, 0x91, 0x00, 0x0C, 0x03, 0x00, 0xC0, - 0x30, 0xFF, 0xFF, 0xF0, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0xF5, 0x60, - 0xFF, 0xF0, 0xF0, 0x02, 0x0C, 0x10, 0x20, 0xC1, 0x02, 0x0C, 0x10, 0x20, - 0xC1, 0x02, 0x0C, 0x10, 0x20, 0xC1, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x30, - 0x6E, 0x0F, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, - 0x0E, 0xC1, 0x9C, 0x71, 0xFC, 0x1F, 0x00, 0x08, 0xCF, 0xFF, 0x8C, 0x63, - 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0x1F, 0x0F, 0xF9, 0x87, 0x60, 0x7C, - 0x06, 0x00, 0xC0, 0x18, 0x07, 0x01, 0xC0, 0xF0, 0x78, 0x1C, 0x06, 0x00, - 0x80, 0x30, 0x07, 0xFF, 0xFF, 0xE0, 0x3F, 0x0F, 0xF3, 0x87, 0x60, 0x6C, - 0x0C, 0x01, 0x80, 0x70, 0x7C, 0x0F, 0x80, 0x18, 0x01, 0x80, 0x3C, 0x07, - 0x80, 0xD8, 0x73, 0xFC, 0x1F, 0x00, 0x01, 0x80, 0x70, 0x0E, 0x03, 0xC0, - 0xD8, 0x1B, 0x06, 0x61, 0x8C, 0x21, 0x8C, 0x33, 0x06, 0x7F, 0xFF, 0xFE, - 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x3F, 0xCF, 0xF9, 0x80, 0x30, 0x06, - 0x00, 0xDE, 0x1F, 0xE7, 0x0E, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x07, - 0x81, 0xF8, 0x73, 0xFC, 0x1F, 0x00, 0x0F, 0x07, 0xF9, 0xC3, 0x30, 0x74, - 0x01, 0x80, 0x33, 0xC7, 0xFE, 0xF0, 0xDC, 0x1F, 0x01, 0xE0, 0x3C, 0x06, - 0xC1, 0xDC, 0x71, 0xFC, 0x1F, 0x00, 0xFF, 0xFF, 0xFC, 0x01, 0x00, 0x60, - 0x18, 0x02, 0x00, 0xC0, 0x30, 0x06, 0x01, 0x80, 0x30, 0x04, 0x01, 0x80, - 0x30, 0x06, 0x01, 0x80, 0x30, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x30, 0x66, - 0x0C, 0xC1, 0x8C, 0x61, 0xFC, 0x3F, 0x8E, 0x3B, 0x01, 0xE0, 0x3C, 0x07, - 0x80, 0xD8, 0x31, 0xFC, 0x1F, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x6C, - 0x07, 0x80, 0xF0, 0x1E, 0x07, 0x61, 0xEF, 0xFC, 0x79, 0x80, 0x30, 0x05, - 0x81, 0x98, 0x73, 0xFC, 0x1E, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0xF0, 0x00, - 0x0F, 0x56, 0x00, 0x00, 0x07, 0x01, 0xE0, 0xF8, 0x3C, 0x0F, 0x00, 0xE0, - 0x07, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xFF, 0xFF, 0xFF, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x0E, 0x00, 0x78, 0x01, 0xF0, 0x07, - 0xC0, 0x0F, 0x00, 0x70, 0x1E, 0x0F, 0x03, 0xC0, 0xF0, 0x08, 0x00, 0x1F, - 0x1F, 0xEE, 0x1B, 0x03, 0xC0, 0xC0, 0x30, 0x0C, 0x06, 0x03, 0x81, 0xC0, - 0xE0, 0x30, 0x0C, 0x03, 0x00, 0x00, 0x00, 0x0C, 0x03, 0x00, 0x00, 0xFE, - 0x00, 0x0F, 0xFE, 0x00, 0xF0, 0x3E, 0x07, 0x00, 0x3C, 0x38, 0x00, 0x30, - 0xC1, 0xE0, 0x66, 0x0F, 0xD9, 0xD8, 0x61, 0xC3, 0xC3, 0x07, 0x0F, 0x1C, - 0x1C, 0x3C, 0x60, 0x60, 0xF1, 0x81, 0x83, 0xC6, 0x06, 0x1B, 0x18, 0x38, - 0xEE, 0x71, 0xE7, 0x18, 0xFD, 0xF8, 0x71, 0xE7, 0xC0, 0xE0, 0x00, 0x01, - 0xE0, 0x00, 0x01, 0xFF, 0xC0, 0x01, 0xFC, 0x00, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x07, 0xE0, 0x06, 0x60, 0x06, 0x60, 0x0E, 0x70, 0x0C, 0x30, - 0x0C, 0x30, 0x1C, 0x38, 0x18, 0x18, 0x1F, 0xF8, 0x3F, 0xFC, 0x30, 0x1C, - 0x30, 0x0C, 0x70, 0x0E, 0x60, 0x06, 0x60, 0x06, 0xFF, 0xC7, 0xFF, 0x30, - 0x19, 0x80, 0x6C, 0x03, 0x60, 0x1B, 0x00, 0xD8, 0x0C, 0xFF, 0xC7, 0xFF, - 0x30, 0x0D, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x06, 0xFF, 0xF7, - 0xFE, 0x00, 0x07, 0xE0, 0x3F, 0xF0, 0xE0, 0x73, 0x80, 0x66, 0x00, 0x6C, - 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, 0x00, - 0x06, 0x00, 0x6C, 0x00, 0xDC, 0x03, 0x1E, 0x0E, 0x1F, 0xF8, 0x0F, 0xC0, - 0xFF, 0x83, 0xFF, 0x8C, 0x07, 0x30, 0x0E, 0xC0, 0x1B, 0x00, 0x7C, 0x00, - 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1F, 0x00, - 0x6C, 0x03, 0xB0, 0x1C, 0xFF, 0xE3, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xC0, - 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xFF, 0xEF, 0xFE, 0xC0, - 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xFF, 0xDF, - 0xFB, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x00, - 0x07, 0xF0, 0x1F, 0xFC, 0x3C, 0x1E, 0x70, 0x06, 0x60, 0x03, 0xE0, 0x00, - 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x7F, 0xC0, 0x7F, 0xC0, 0x03, 0xC0, 0x03, - 0x60, 0x03, 0x60, 0x07, 0x30, 0x0F, 0x3C, 0x1F, 0x1F, 0xFB, 0x07, 0xE1, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x03, 0xFF, 0xFF, 0xFF, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, - 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x01, - 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0x60, - 0x3C, 0x1E, 0x0F, 0x07, 0xC7, 0x7F, 0x1F, 0x00, 0xC0, 0x3B, 0x01, 0xCC, - 0x0E, 0x30, 0x70, 0xC3, 0x83, 0x1C, 0x0C, 0xE0, 0x33, 0x80, 0xDE, 0x03, - 0xDC, 0x0E, 0x38, 0x30, 0x60, 0xC1, 0xC3, 0x03, 0x8C, 0x06, 0x30, 0x1C, - 0xC0, 0x3B, 0x00, 0x60, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, - 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, - 0xFF, 0xFF, 0xF0, 0xE0, 0x07, 0xE0, 0x07, 0xF0, 0x0F, 0xF0, 0x0F, 0xD0, - 0x0F, 0xD8, 0x1B, 0xD8, 0x1B, 0xD8, 0x1B, 0xCC, 0x33, 0xCC, 0x33, 0xCC, - 0x33, 0xC6, 0x63, 0xC6, 0x63, 0xC6, 0x63, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC1, 0x83, 0xE0, 0x1F, 0x00, 0xFC, 0x07, 0xE0, 0x3D, 0x81, 0xEE, - 0x0F, 0x30, 0x79, 0xC3, 0xC6, 0x1E, 0x18, 0xF0, 0xE7, 0x83, 0x3C, 0x1D, - 0xE0, 0x6F, 0x01, 0xF8, 0x0F, 0xC0, 0x3E, 0x01, 0xC0, 0x03, 0xE0, 0x0F, - 0xFC, 0x0F, 0x07, 0x86, 0x00, 0xC6, 0x00, 0x33, 0x00, 0x1B, 0x00, 0x07, - 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x36, 0x00, - 0x33, 0x00, 0x18, 0xC0, 0x18, 0x78, 0x3C, 0x1F, 0xFC, 0x03, 0xF8, 0x00, - 0xFF, 0x8F, 0xFE, 0xC0, 0x6C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x07, - 0xFF, 0xEF, 0xFC, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, - 0xC0, 0x0C, 0x00, 0x03, 0xE0, 0x0F, 0xFC, 0x0F, 0x07, 0x86, 0x00, 0xC6, - 0x00, 0x33, 0x00, 0x1B, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0x78, 0x00, 0x36, 0x00, 0x33, 0x01, 0x98, 0xC0, 0xFC, 0x78, - 0x3C, 0x1F, 0xFF, 0x03, 0xF9, 0x80, 0x00, 0x40, 0xFF, 0xC3, 0xFF, 0xCC, - 0x03, 0xB0, 0x06, 0xC0, 0x1B, 0x00, 0x6C, 0x01, 0xB0, 0x0C, 0xFF, 0xE3, - 0xFF, 0xCC, 0x03, 0xB0, 0x06, 0xC0, 0x1B, 0x00, 0x6C, 0x01, 0xB0, 0x06, - 0xC0, 0x1B, 0x00, 0x70, 0x0F, 0xE0, 0x7F, 0xC3, 0x83, 0x9C, 0x07, 0x60, - 0x0D, 0x80, 0x06, 0x00, 0x1E, 0x00, 0x3F, 0x80, 0x3F, 0xC0, 0x0F, 0x80, - 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0xDE, 0x0E, 0x3F, 0xF0, 0x3F, 0x80, - 0xFF, 0xFF, 0xFF, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, - 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x80, 0xEE, 0x0E, 0x3F, 0xE0, 0x7C, 0x00, 0x60, 0x06, 0xC0, - 0x1D, 0xC0, 0x31, 0x80, 0x63, 0x01, 0xC7, 0x03, 0x06, 0x06, 0x0C, 0x1C, - 0x1C, 0x30, 0x18, 0x60, 0x31, 0xC0, 0x73, 0x00, 0x66, 0x00, 0xDC, 0x01, - 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0xE0, 0x30, 0x1D, 0x80, 0xE0, - 0x76, 0x07, 0x81, 0xD8, 0x1E, 0x06, 0x70, 0x7C, 0x18, 0xC1, 0xB0, 0xE3, - 0x0C, 0xC3, 0x8C, 0x33, 0x0C, 0x38, 0xC6, 0x30, 0x67, 0x18, 0xC1, 0x98, - 0x67, 0x06, 0x61, 0xD8, 0x1D, 0x83, 0x60, 0x3C, 0x0D, 0x80, 0xF0, 0x3E, - 0x03, 0xC0, 0x70, 0x0F, 0x01, 0xC0, 0x18, 0x07, 0x00, 0x70, 0x0E, 0x60, - 0x38, 0xE0, 0x60, 0xE1, 0xC0, 0xC3, 0x01, 0xCC, 0x01, 0xF8, 0x01, 0xE0, - 0x03, 0x80, 0x07, 0x80, 0x1F, 0x00, 0x33, 0x00, 0xE7, 0x03, 0x86, 0x06, - 0x0E, 0x1C, 0x0E, 0x70, 0x0C, 0xC0, 0x1C, 0x60, 0x06, 0x70, 0x0E, 0x30, - 0x1C, 0x38, 0x18, 0x1C, 0x38, 0x0C, 0x30, 0x0E, 0x70, 0x06, 0x60, 0x03, - 0xC0, 0x03, 0xC0, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xC0, 0x0E, - 0x00, 0xE0, 0x0E, 0x00, 0x60, 0x07, 0x00, 0x70, 0x07, 0x00, 0x30, 0x03, - 0x80, 0x38, 0x03, 0x80, 0x18, 0x01, 0xC0, 0x1C, 0x00, 0xFF, 0xFF, 0xFF, - 0xC0, 0xFF, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCF, - 0xF0, 0x81, 0x81, 0x02, 0x06, 0x04, 0x08, 0x18, 0x10, 0x20, 0x60, 0x40, - 0x81, 0x81, 0x02, 0x06, 0x04, 0xFF, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, - 0x33, 0x33, 0x33, 0x3F, 0xF0, 0x0C, 0x0E, 0x05, 0x86, 0xC3, 0x21, 0x19, - 0x8C, 0x83, 0xC1, 0x80, 0xFF, 0xFE, 0xE3, 0x8C, 0x30, 0x3F, 0x07, 0xF8, - 0xE1, 0xCC, 0x0C, 0x00, 0xC0, 0x1C, 0x3F, 0xCF, 0x8C, 0xC0, 0xCC, 0x0C, - 0xE3, 0xC7, 0xEF, 0x3C, 0x70, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, - 0x0C, 0xF8, 0xDF, 0xCF, 0x0E, 0xE0, 0x7C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xE0, 0x6F, 0x0E, 0xDF, 0xCC, 0xF8, 0x1F, 0x0F, 0xE7, 0x1B, - 0x83, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x38, 0x37, 0x1C, 0xFE, 0x1F, - 0x00, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x3C, 0xCF, 0xFB, 0x8F, - 0xE0, 0xF8, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF8, 0x3B, 0x8F, 0x3F, - 0x63, 0xCC, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x3C, 0x07, 0xFF, 0xFF, 0xFE, - 0x00, 0xC0, 0x1C, 0x0D, 0xC3, 0x1F, 0xE1, 0xF0, 0x3B, 0xD8, 0xC6, 0x7F, - 0xEC, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x00, 0x1E, 0x67, 0xFD, 0xC7, - 0xF0, 0x7C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x7C, 0x1D, 0xC7, 0x9F, - 0xB1, 0xE6, 0x00, 0xC0, 0x3E, 0x0E, 0x7F, 0xC7, 0xE0, 0xC0, 0x30, 0x0C, - 0x03, 0x00, 0xC0, 0x33, 0xCD, 0xFB, 0xC7, 0xE0, 0xF0, 0x3C, 0x0F, 0x03, - 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x30, 0xF0, 0x3F, 0xFF, 0xFF, - 0xF0, 0x33, 0x00, 0x03, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x3F, - 0xE0, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x01, 0x83, 0x30, 0xC6, 0x30, - 0xCC, 0x1B, 0x83, 0xF0, 0x77, 0x0C, 0x61, 0x8E, 0x30, 0xE6, 0x0C, 0xC1, - 0xD8, 0x18, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xCF, 0x1F, 0x6F, 0xDF, 0xFC, - 0x78, 0xFC, 0x18, 0x3C, 0x0C, 0x1E, 0x06, 0x0F, 0x03, 0x07, 0x81, 0x83, - 0xC0, 0xC1, 0xE0, 0x60, 0xF0, 0x30, 0x78, 0x18, 0x3C, 0x0C, 0x18, 0xCF, - 0x37, 0xEF, 0x1F, 0x83, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, - 0x0F, 0x03, 0xC0, 0xC0, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x7C, 0x07, 0x80, - 0xF0, 0x1E, 0x03, 0xC0, 0x7C, 0x1D, 0xC7, 0x1F, 0xC1, 0xF0, 0xCF, 0x8D, - 0xFC, 0xF0, 0xEE, 0x06, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3E, - 0x07, 0xF0, 0xEF, 0xFC, 0xCF, 0x8C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x00, - 0x1E, 0x67, 0xFD, 0xC7, 0xF0, 0x7C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, - 0x7C, 0x1D, 0xC7, 0x9F, 0xF1, 0xE6, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, - 0xCF, 0x7F, 0x38, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC0, 0x3E, 0x1F, - 0xEE, 0x1B, 0x00, 0xC0, 0x3C, 0x07, 0xF0, 0x3E, 0x01, 0xF0, 0x3E, 0x1D, - 0xFE, 0x3E, 0x00, 0x63, 0x19, 0xFF, 0xB1, 0x8C, 0x63, 0x18, 0xC6, 0x31, - 0xE7, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, - 0xF0, 0x7E, 0x3D, 0xFB, 0x3C, 0xC0, 0xE0, 0x66, 0x06, 0x60, 0x67, 0x0C, - 0x30, 0xC3, 0x0C, 0x39, 0x81, 0x98, 0x19, 0x81, 0xF0, 0x0F, 0x00, 0xE0, - 0x0E, 0x00, 0xC1, 0xC1, 0xB0, 0xE1, 0xD8, 0x70, 0xCC, 0x2C, 0x66, 0x36, - 0x31, 0x9B, 0x18, 0xCD, 0x98, 0x64, 0x6C, 0x16, 0x36, 0x0F, 0x1A, 0x07, - 0x8F, 0x03, 0x83, 0x80, 0xC1, 0xC0, 0x60, 0xEE, 0x18, 0xC6, 0x0C, 0xC1, - 0xF0, 0x1C, 0x01, 0x80, 0x78, 0x1B, 0x03, 0x30, 0xC7, 0x30, 0x66, 0x06, - 0xE0, 0x6C, 0x0D, 0x83, 0x38, 0x63, 0x0C, 0x63, 0x0E, 0x60, 0xCC, 0x1B, - 0x03, 0x60, 0x3C, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, 0xE0, 0x78, 0x0E, - 0x00, 0xFF, 0xFF, 0xF0, 0x18, 0x0C, 0x07, 0x03, 0x81, 0xC0, 0x60, 0x30, - 0x18, 0x0E, 0x03, 0xFF, 0xFF, 0xC0, 0x19, 0xCC, 0x63, 0x18, 0xC6, 0x31, - 0x99, 0x86, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x1C, 0x60, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0xC7, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x0C, 0x33, 0x31, - 0x8C, 0x63, 0x18, 0xC6, 0x73, 0x00, 0x70, 0x3E, 0x09, 0xE4, 0x1F, 0x03, - 0x80}; - -const GFXglyph FreeSans12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 2, 18, 8, 3, -17}, // 0x21 '!' - {5, 6, 6, 8, 1, -16}, // 0x22 '"' - {10, 13, 16, 13, 0, -15}, // 0x23 '#' - {36, 11, 20, 13, 1, -17}, // 0x24 '$' - {64, 20, 17, 21, 1, -16}, // 0x25 '%' - {107, 14, 17, 16, 1, -16}, // 0x26 '&' - {137, 2, 6, 5, 1, -16}, // 0x27 ''' - {139, 5, 23, 8, 2, -17}, // 0x28 '(' - {154, 5, 23, 8, 1, -17}, // 0x29 ')' - {169, 7, 7, 9, 1, -17}, // 0x2A '*' - {176, 10, 11, 14, 2, -10}, // 0x2B '+' - {190, 2, 6, 7, 2, -1}, // 0x2C ',' - {192, 6, 2, 8, 1, -7}, // 0x2D '-' - {194, 2, 2, 6, 2, -1}, // 0x2E '.' - {195, 7, 18, 7, 0, -17}, // 0x2F '/' - {211, 11, 17, 13, 1, -16}, // 0x30 '0' - {235, 5, 17, 13, 3, -16}, // 0x31 '1' - {246, 11, 17, 13, 1, -16}, // 0x32 '2' - {270, 11, 17, 13, 1, -16}, // 0x33 '3' - {294, 11, 17, 13, 1, -16}, // 0x34 '4' - {318, 11, 17, 13, 1, -16}, // 0x35 '5' - {342, 11, 17, 13, 1, -16}, // 0x36 '6' - {366, 11, 17, 13, 1, -16}, // 0x37 '7' - {390, 11, 17, 13, 1, -16}, // 0x38 '8' - {414, 11, 17, 13, 1, -16}, // 0x39 '9' - {438, 2, 13, 6, 2, -12}, // 0x3A ':' - {442, 2, 16, 6, 2, -11}, // 0x3B ';' - {446, 12, 12, 14, 1, -11}, // 0x3C '<' - {464, 12, 6, 14, 1, -8}, // 0x3D '=' - {473, 12, 12, 14, 1, -11}, // 0x3E '>' - {491, 10, 18, 13, 2, -17}, // 0x3F '?' - {514, 22, 21, 24, 1, -17}, // 0x40 '@' - {572, 16, 18, 16, 0, -17}, // 0x41 'A' - {608, 13, 18, 16, 2, -17}, // 0x42 'B' - {638, 15, 18, 17, 1, -17}, // 0x43 'C' - {672, 14, 18, 17, 2, -17}, // 0x44 'D' - {704, 12, 18, 15, 2, -17}, // 0x45 'E' - {731, 11, 18, 14, 2, -17}, // 0x46 'F' - {756, 16, 18, 18, 1, -17}, // 0x47 'G' - {792, 13, 18, 17, 2, -17}, // 0x48 'H' - {822, 2, 18, 7, 2, -17}, // 0x49 'I' - {827, 9, 18, 13, 1, -17}, // 0x4A 'J' - {848, 14, 18, 16, 2, -17}, // 0x4B 'K' - {880, 10, 18, 14, 2, -17}, // 0x4C 'L' - {903, 16, 18, 20, 2, -17}, // 0x4D 'M' - {939, 13, 18, 18, 2, -17}, // 0x4E 'N' - {969, 17, 18, 19, 1, -17}, // 0x4F 'O' - {1008, 12, 18, 16, 2, -17}, // 0x50 'P' - {1035, 17, 19, 19, 1, -17}, // 0x51 'Q' - {1076, 14, 18, 17, 2, -17}, // 0x52 'R' - {1108, 14, 18, 16, 1, -17}, // 0x53 'S' - {1140, 12, 18, 15, 1, -17}, // 0x54 'T' - {1167, 13, 18, 17, 2, -17}, // 0x55 'U' - {1197, 15, 18, 15, 0, -17}, // 0x56 'V' - {1231, 22, 18, 22, 0, -17}, // 0x57 'W' - {1281, 15, 18, 16, 0, -17}, // 0x58 'X' - {1315, 16, 18, 16, 0, -17}, // 0x59 'Y' - {1351, 13, 18, 15, 1, -17}, // 0x5A 'Z' - {1381, 4, 23, 7, 2, -17}, // 0x5B '[' - {1393, 7, 18, 7, 0, -17}, // 0x5C '\' - {1409, 4, 23, 7, 1, -17}, // 0x5D ']' - {1421, 9, 9, 11, 1, -16}, // 0x5E '^' - {1432, 15, 1, 13, -1, 4}, // 0x5F '_' - {1434, 5, 4, 6, 1, -17}, // 0x60 '`' - {1437, 12, 13, 13, 1, -12}, // 0x61 'a' - {1457, 12, 18, 13, 1, -17}, // 0x62 'b' - {1484, 10, 13, 12, 1, -12}, // 0x63 'c' - {1501, 11, 18, 13, 1, -17}, // 0x64 'd' - {1526, 11, 13, 13, 1, -12}, // 0x65 'e' - {1544, 5, 18, 7, 1, -17}, // 0x66 'f' - {1556, 11, 18, 13, 1, -12}, // 0x67 'g' - {1581, 10, 18, 13, 1, -17}, // 0x68 'h' - {1604, 2, 18, 5, 2, -17}, // 0x69 'i' - {1609, 4, 23, 6, 0, -17}, // 0x6A 'j' - {1621, 11, 18, 12, 1, -17}, // 0x6B 'k' - {1646, 2, 18, 5, 1, -17}, // 0x6C 'l' - {1651, 17, 13, 19, 1, -12}, // 0x6D 'm' - {1679, 10, 13, 13, 1, -12}, // 0x6E 'n' - {1696, 11, 13, 13, 1, -12}, // 0x6F 'o' - {1714, 12, 17, 13, 1, -12}, // 0x70 'p' - {1740, 11, 17, 13, 1, -12}, // 0x71 'q' - {1764, 6, 13, 8, 1, -12}, // 0x72 'r' - {1774, 10, 13, 12, 1, -12}, // 0x73 's' - {1791, 5, 16, 7, 1, -15}, // 0x74 't' - {1801, 10, 13, 13, 1, -12}, // 0x75 'u' - {1818, 12, 13, 12, 0, -12}, // 0x76 'v' - {1838, 17, 13, 17, 0, -12}, // 0x77 'w' - {1866, 11, 13, 11, 0, -12}, // 0x78 'x' - {1884, 11, 18, 11, 0, -12}, // 0x79 'y' - {1909, 10, 13, 12, 1, -12}, // 0x7A 'z' - {1926, 5, 23, 8, 1, -17}, // 0x7B '{' - {1941, 2, 23, 6, 2, -17}, // 0x7C '|' - {1947, 5, 23, 8, 2, -17}, // 0x7D '}' - {1962, 10, 5, 12, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSans12pt7b PROGMEM = {(uint8_t *)FreeSans12pt7bBitmaps, - (GFXglyph *)FreeSans12pt7bGlyphs, 0x20, - 0x7E, 29}; - -// Approx. 2641 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans18pt7b.h deleted file mode 100644 index f3a9606..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans18pt7b.h +++ /dev/null @@ -1,454 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans18pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE9, 0x20, 0x3F, 0xFC, 0xE3, 0xF1, - 0xF8, 0xFC, 0x7E, 0x3F, 0x1F, 0x8E, 0x82, 0x41, 0x00, 0x01, 0xC3, 0x80, - 0x38, 0x70, 0x06, 0x0E, 0x00, 0xC1, 0x80, 0x38, 0x70, 0x07, 0x0E, 0x0F, - 0xFF, 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE0, 0xE1, 0xC0, 0x1C, 0x38, 0x03, - 0x87, 0x00, 0x70, 0xE0, 0x0C, 0x18, 0x3F, 0xFF, 0xF7, 0xFF, 0xFE, 0xFF, - 0xFF, 0xC1, 0xC3, 0x80, 0x30, 0x60, 0x06, 0x0C, 0x01, 0xC3, 0x80, 0x38, - 0x70, 0x07, 0x0E, 0x00, 0xC1, 0x80, 0x03, 0x00, 0x0F, 0xC0, 0x3F, 0xF0, - 0x3F, 0xF8, 0x7B, 0x3C, 0xF3, 0x1C, 0xE3, 0x0E, 0xE3, 0x0E, 0xE3, 0x0E, - 0xE3, 0x00, 0xE3, 0x00, 0xF3, 0x00, 0x7B, 0x00, 0x7F, 0x80, 0x1F, 0xF0, - 0x07, 0xFC, 0x03, 0x7E, 0x03, 0x0F, 0x03, 0x07, 0xE3, 0x07, 0xE3, 0x07, - 0xE3, 0x07, 0xE3, 0x0F, 0x73, 0x3E, 0x7F, 0xFC, 0x3F, 0xF8, 0x0F, 0xE0, - 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x78, 0x00, - 0xE0, 0x0F, 0xF0, 0x06, 0x00, 0xFF, 0xC0, 0x70, 0x07, 0x0E, 0x07, 0x00, - 0x70, 0x38, 0x38, 0x03, 0x00, 0xC3, 0x80, 0x18, 0x06, 0x1C, 0x00, 0xE0, - 0x71, 0xC0, 0x03, 0x87, 0x8C, 0x00, 0x1F, 0xF8, 0xE0, 0x00, 0x7F, 0x86, - 0x00, 0x01, 0xF8, 0x70, 0x00, 0x00, 0x03, 0x03, 0xC0, 0x00, 0x38, 0x7F, - 0x80, 0x01, 0x87, 0xFE, 0x00, 0x1C, 0x38, 0x70, 0x00, 0xC3, 0x81, 0xC0, - 0x0E, 0x18, 0x06, 0x00, 0xE0, 0xC0, 0x30, 0x07, 0x07, 0x03, 0x80, 0x70, - 0x1C, 0x38, 0x03, 0x80, 0xFF, 0xC0, 0x38, 0x03, 0xFC, 0x01, 0x80, 0x07, - 0x80, 0x01, 0xF0, 0x00, 0x7F, 0x80, 0x0F, 0xFC, 0x01, 0xE1, 0xE0, 0x1C, - 0x0E, 0x01, 0xC0, 0xE0, 0x1C, 0x0E, 0x01, 0xE1, 0xE0, 0x0E, 0x3C, 0x00, - 0x77, 0x80, 0x07, 0xF0, 0x00, 0x7C, 0x00, 0x0F, 0xE0, 0x03, 0xCF, 0x1C, - 0x78, 0x79, 0xC7, 0x03, 0xDC, 0xE0, 0x1F, 0x8E, 0x00, 0xF8, 0xE0, 0x0F, - 0x0E, 0x00, 0x70, 0xF0, 0x0F, 0x87, 0xC3, 0xFC, 0x7F, 0xFD, 0xC3, 0xFF, - 0x0E, 0x0F, 0xC0, 0xF0, 0xFF, 0xFF, 0xFA, 0x40, 0x06, 0x06, 0x0C, 0x0C, - 0x18, 0x18, 0x38, 0x30, 0x70, 0x70, 0x70, 0x60, 0xE0, 0xE0, 0xE0, 0xE0, - 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x60, 0x70, 0x70, 0x70, 0x30, 0x38, 0x18, - 0x18, 0x0C, 0x0C, 0x06, 0x03, 0xC0, 0x60, 0x30, 0x30, 0x38, 0x18, 0x1C, - 0x0C, 0x0E, 0x0E, 0x0E, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, - 0x07, 0x07, 0x06, 0x0E, 0x0E, 0x0E, 0x0C, 0x1C, 0x18, 0x38, 0x30, 0x30, - 0x60, 0xC0, 0x0C, 0x03, 0x00, 0xC3, 0xB7, 0xFF, 0xC7, 0x81, 0xE0, 0xEC, - 0x73, 0x88, 0x40, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0xFF, - 0xF6, 0xDA, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xC0, 0x30, 0x18, - 0x06, 0x01, 0x80, 0xC0, 0x30, 0x0C, 0x06, 0x01, 0x80, 0x60, 0x30, 0x0C, - 0x03, 0x00, 0xC0, 0x60, 0x18, 0x06, 0x03, 0x00, 0xC0, 0x30, 0x18, 0x06, - 0x01, 0x80, 0xC0, 0x30, 0x00, 0x07, 0xE0, 0x0F, 0xF8, 0x1F, 0xFC, 0x3C, - 0x3C, 0x78, 0x1E, 0x70, 0x0E, 0x70, 0x0E, 0xE0, 0x07, 0xE0, 0x07, 0xE0, - 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, - 0x07, 0xE0, 0x07, 0xE0, 0x0F, 0x70, 0x0E, 0x70, 0x0E, 0x78, 0x1E, 0x3C, - 0x3C, 0x1F, 0xF8, 0x1F, 0xF0, 0x07, 0xE0, 0x03, 0x03, 0x07, 0x0F, 0x3F, - 0xFF, 0xFF, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0xE0, 0x1F, 0xF8, - 0x3F, 0xFC, 0x7C, 0x3E, 0x70, 0x0F, 0xF0, 0x0F, 0xE0, 0x07, 0xE0, 0x07, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF8, - 0x03, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x70, 0x00, - 0x60, 0x00, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xF0, - 0x07, 0xFE, 0x07, 0xFF, 0x87, 0x83, 0xC3, 0x80, 0xF3, 0x80, 0x39, 0xC0, - 0x1C, 0xE0, 0x0E, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x7F, 0x00, 0x3F, 0x00, - 0x1F, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, 0xF0, 0x01, - 0xF8, 0x00, 0xFE, 0x00, 0x77, 0x00, 0x73, 0xE0, 0xF8, 0xFF, 0xF8, 0x3F, - 0xF8, 0x07, 0xF0, 0x00, 0x00, 0x38, 0x00, 0x38, 0x00, 0x78, 0x00, 0xF8, - 0x00, 0xF8, 0x01, 0xF8, 0x03, 0xB8, 0x03, 0x38, 0x07, 0x38, 0x0E, 0x38, - 0x1C, 0x38, 0x18, 0x38, 0x38, 0x38, 0x70, 0x38, 0x60, 0x38, 0xE0, 0x38, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x1F, 0xFF, 0x0F, 0xFF, 0x8F, 0xFF, - 0xC7, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x39, - 0xF0, 0x3F, 0xFE, 0x1F, 0xFF, 0x8F, 0x83, 0xE7, 0x00, 0xF0, 0x00, 0x3C, - 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xFC, 0x00, - 0xEF, 0x00, 0x73, 0xC0, 0xF0, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xE0, 0x00, - 0x03, 0xE0, 0x0F, 0xF8, 0x1F, 0xFC, 0x3C, 0x1E, 0x38, 0x0E, 0x70, 0x0E, - 0x70, 0x00, 0x60, 0x00, 0xE0, 0x00, 0xE3, 0xE0, 0xEF, 0xF8, 0xFF, 0xFC, - 0xFC, 0x3E, 0xF0, 0x0E, 0xF0, 0x0F, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, - 0x60, 0x07, 0x70, 0x0F, 0x70, 0x0E, 0x3C, 0x3E, 0x3F, 0xFC, 0x1F, 0xF8, - 0x07, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x06, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x18, 0x00, 0x38, 0x00, 0x70, 0x00, 0x60, 0x00, 0xE0, - 0x00, 0xC0, 0x01, 0xC0, 0x01, 0x80, 0x03, 0x80, 0x03, 0x80, 0x07, 0x00, - 0x07, 0x00, 0x07, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, 0x87, 0x83, - 0xC7, 0x80, 0xF3, 0x80, 0x39, 0xC0, 0x1C, 0xE0, 0x0E, 0x78, 0x0F, 0x1E, - 0x0F, 0x07, 0xFF, 0x01, 0xFF, 0x03, 0xFF, 0xE3, 0xE0, 0xF9, 0xC0, 0x1D, - 0xC0, 0x0F, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0xF7, 0x00, - 0x73, 0xE0, 0xF8, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x07, 0xE0, - 0x1F, 0xF8, 0x3F, 0xFC, 0x7C, 0x3C, 0x70, 0x0E, 0xF0, 0x0E, 0xE0, 0x06, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x0F, 0x70, 0x0F, 0x78, 0x3F, - 0x3F, 0xFF, 0x1F, 0xF7, 0x07, 0xC7, 0x00, 0x07, 0x00, 0x06, 0x00, 0x0E, - 0x70, 0x0E, 0x70, 0x1C, 0x78, 0x3C, 0x3F, 0xF8, 0x1F, 0xF0, 0x07, 0xC0, - 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x07, 0xFF, 0x80, 0xFF, 0xF0, 0x00, 0x00, - 0x00, 0x07, 0xFF, 0xB6, 0xD6, 0x00, 0x00, 0x80, 0x03, 0xC0, 0x07, 0xE0, - 0x0F, 0xC0, 0x3F, 0x80, 0x7E, 0x00, 0xFC, 0x01, 0xF0, 0x00, 0xE0, 0x00, - 0x7C, 0x00, 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x07, 0xF0, 0x00, - 0x7E, 0x00, 0x0F, 0x00, 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x80, 0x80, 0x00, 0x70, 0x00, 0x3E, 0x00, 0x0F, 0xE0, 0x00, 0xFC, - 0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0x80, 0x0F, 0xC0, - 0x1F, 0x80, 0x7F, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x01, 0xC0, 0x00, - 0x80, 0x00, 0x00, 0x0F, 0xC0, 0x7F, 0xE1, 0xFF, 0xE3, 0xC3, 0xEF, 0x01, - 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0x00, 0x0E, 0x00, 0x38, 0x00, 0xF0, - 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x00, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x00, - 0x00, 0xFF, 0xFF, 0xC0, 0x01, 0xF8, 0x0F, 0xE0, 0x03, 0xE0, 0x01, 0xF0, - 0x07, 0x80, 0x00, 0xF8, 0x0F, 0x00, 0x00, 0x3C, 0x1E, 0x00, 0x00, 0x1E, - 0x3C, 0x03, 0xE0, 0x1E, 0x38, 0x0F, 0xF3, 0x8E, 0x78, 0x1E, 0x3F, 0x0F, - 0x70, 0x38, 0x1F, 0x07, 0x70, 0x78, 0x0F, 0x07, 0xE0, 0x70, 0x0E, 0x07, - 0xE0, 0x70, 0x0E, 0x07, 0xE0, 0xE0, 0x0E, 0x07, 0xE0, 0xE0, 0x1C, 0x07, - 0xE0, 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x38, 0x1C, - 0xF0, 0x70, 0x78, 0x3C, 0x70, 0x78, 0xFC, 0x78, 0x78, 0x3F, 0xDF, 0xF0, - 0x38, 0x1F, 0x0F, 0xC0, 0x3C, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x07, 0xF0, 0x0E, 0x00, 0x01, 0xFF, 0xFE, 0x00, - 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x03, - 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xDC, 0x00, 0x07, 0x78, - 0x00, 0x3C, 0xE0, 0x00, 0xE3, 0x80, 0x03, 0x8F, 0x00, 0x1E, 0x1C, 0x00, - 0x70, 0x70, 0x01, 0xC1, 0xE0, 0x0E, 0x03, 0x80, 0x38, 0x0E, 0x00, 0xE0, - 0x3C, 0x07, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0xFF, 0xFF, 0x83, 0xC0, 0x0E, - 0x0E, 0x00, 0x3C, 0x78, 0x00, 0xF1, 0xE0, 0x01, 0xC7, 0x00, 0x07, 0xBC, - 0x00, 0x1E, 0xF0, 0x00, 0x3B, 0x80, 0x00, 0xF0, 0xFF, 0xFC, 0x1F, 0xFF, - 0xE3, 0xFF, 0xFE, 0x70, 0x03, 0xCE, 0x00, 0x3D, 0xC0, 0x03, 0xB8, 0x00, - 0x77, 0x00, 0x0E, 0xE0, 0x01, 0xDC, 0x00, 0x73, 0x80, 0x1E, 0x7F, 0xFF, - 0x8F, 0xFF, 0xF1, 0xFF, 0xFF, 0x38, 0x00, 0xF7, 0x00, 0x0E, 0xE0, 0x00, - 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x03, - 0xF8, 0x00, 0xF7, 0xFF, 0xFC, 0xFF, 0xFF, 0x1F, 0xFF, 0x80, 0x00, 0xFF, - 0x00, 0x0F, 0xFF, 0x00, 0xFF, 0xFE, 0x07, 0xE0, 0x7C, 0x3E, 0x00, 0x78, - 0xF0, 0x00, 0xE7, 0x80, 0x03, 0xDC, 0x00, 0x07, 0x70, 0x00, 0x03, 0x80, - 0x00, 0x0E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, - 0x0E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x1D, 0xC0, 0x00, 0x77, - 0x00, 0x03, 0xDE, 0x00, 0x0E, 0x3C, 0x00, 0x78, 0xF8, 0x03, 0xC1, 0xF8, - 0x1F, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x03, 0xF8, 0x00, 0xFF, 0xF8, - 0x0F, 0xFF, 0xE0, 0xFF, 0xFF, 0x0E, 0x00, 0xF8, 0xE0, 0x03, 0xCE, 0x00, - 0x1C, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xFE, 0x00, 0x07, 0xE0, - 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, - 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x0F, 0xE0, 0x00, 0xEE, 0x00, 0x0E, - 0xE0, 0x01, 0xEE, 0x00, 0x3C, 0xE0, 0x0F, 0x8F, 0xFF, 0xF0, 0xFF, 0xFE, - 0x0F, 0xFF, 0x80, 0xFF, 0xFF, 0xBF, 0xFF, 0xEF, 0xFF, 0xFB, 0x80, 0x00, - 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, - 0x00, 0x0E, 0x00, 0x03, 0xFF, 0xFE, 0xFF, 0xFF, 0xBF, 0xFF, 0xEE, 0x00, - 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, - 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x0E, 0x00, - 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, - 0x00, 0x1F, 0xFF, 0xCF, 0xFF, 0xE7, 0xFF, 0xF3, 0x80, 0x01, 0xC0, 0x00, - 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, - 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x00, 0x00, 0x7F, - 0x80, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x0F, 0x80, 0xFC, 0x1E, 0x00, - 0x3E, 0x3C, 0x00, 0x0E, 0x78, 0x00, 0x0F, 0x70, 0x00, 0x07, 0x70, 0x00, - 0x00, 0xE0, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xE0, 0x03, - 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0x70, 0x00, 0x07, 0x70, 0x00, 0x0F, 0x78, 0x00, 0x0F, 0x3C, 0x00, - 0x1F, 0x1E, 0x00, 0x3F, 0x0F, 0xC0, 0xF7, 0x07, 0xFF, 0xE7, 0x03, 0xFF, - 0xC3, 0x00, 0xFF, 0x03, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, - 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, - 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, - 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, - 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, - 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1F, 0x80, 0x7E, - 0x01, 0xF8, 0x07, 0xE0, 0x1F, 0xC0, 0xF7, 0x87, 0x9F, 0xFE, 0x3F, 0xF0, - 0x3F, 0x00, 0xE0, 0x01, 0xEE, 0x00, 0x3C, 0xE0, 0x07, 0x8E, 0x00, 0xF0, - 0xE0, 0x1E, 0x0E, 0x03, 0xE0, 0xE0, 0x7C, 0x0E, 0x0F, 0x80, 0xE1, 0xF0, - 0x0E, 0x1E, 0x00, 0xE3, 0xC0, 0x0E, 0x7C, 0x00, 0xEF, 0xE0, 0x0F, 0xCE, - 0x00, 0xF8, 0xF0, 0x0F, 0x07, 0x80, 0xE0, 0x3C, 0x0E, 0x03, 0xC0, 0xE0, - 0x1E, 0x0E, 0x00, 0xF0, 0xE0, 0x0F, 0x0E, 0x00, 0x78, 0xE0, 0x03, 0xCE, - 0x00, 0x3C, 0xE0, 0x01, 0xEE, 0x00, 0x0F, 0xE0, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, - 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, - 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, - 0x38, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xF8, 0x00, 0x1F, 0xF8, - 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xFC, 0x00, 0x3F, 0xFC, 0x00, 0x3F, 0xFC, - 0x00, 0x3F, 0xEE, 0x00, 0x77, 0xEE, 0x00, 0x77, 0xEE, 0x00, 0x77, 0xE7, - 0x00, 0xE7, 0xE7, 0x00, 0xE7, 0xE7, 0x00, 0xE7, 0xE3, 0x81, 0xC7, 0xE3, - 0x81, 0xC7, 0xE3, 0x81, 0xC7, 0xE1, 0xC3, 0x87, 0xE1, 0xC3, 0x87, 0xE1, - 0xC3, 0x87, 0xE0, 0xE7, 0x07, 0xE0, 0xE7, 0x07, 0xE0, 0xE7, 0x07, 0xE0, - 0x7E, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x3C, 0x07, 0xE0, - 0x3C, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0xC0, 0x07, - 0xFC, 0x00, 0x7F, 0xE0, 0x07, 0xEF, 0x00, 0x7E, 0x70, 0x07, 0xE7, 0x80, - 0x7E, 0x3C, 0x07, 0xE1, 0xC0, 0x7E, 0x1E, 0x07, 0xE0, 0xE0, 0x7E, 0x0F, - 0x07, 0xE0, 0x78, 0x7E, 0x03, 0x87, 0xE0, 0x3C, 0x7E, 0x01, 0xE7, 0xE0, - 0x0E, 0x7E, 0x00, 0xF7, 0xE0, 0x07, 0xFE, 0x00, 0x3F, 0xE0, 0x03, 0xFE, - 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x0F, 0x00, 0x7F, 0x00, 0x01, 0xFF, - 0xF0, 0x01, 0xFF, 0xFC, 0x01, 0xF0, 0x1F, 0x01, 0xE0, 0x03, 0xC1, 0xE0, - 0x00, 0xF1, 0xE0, 0x00, 0x3C, 0xE0, 0x00, 0x0E, 0x70, 0x00, 0x07, 0x70, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, - 0xB8, 0x00, 0x03, 0x9C, 0x00, 0x01, 0xCF, 0x00, 0x01, 0xE3, 0xC0, 0x01, - 0xE0, 0xF0, 0x01, 0xE0, 0x3E, 0x03, 0xE0, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFF, 0xFC, 0x3F, 0xFF, 0x8F, 0xFF, 0xF3, - 0x80, 0x3E, 0xE0, 0x03, 0xF8, 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, - 0x01, 0xF8, 0x00, 0x7E, 0x00, 0x3F, 0x80, 0x1E, 0xFF, 0xFF, 0x3F, 0xFF, - 0x8F, 0xFF, 0xC3, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, - 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, - 0x00, 0x38, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xF0, 0x01, 0xFF, - 0xFC, 0x01, 0xF0, 0x1F, 0x01, 0xE0, 0x03, 0xC1, 0xE0, 0x00, 0xF1, 0xE0, - 0x00, 0x3C, 0xE0, 0x00, 0x0E, 0x70, 0x00, 0x07, 0x70, 0x00, 0x01, 0xF8, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xB8, 0x00, 0x03, - 0x9C, 0x00, 0x01, 0xCF, 0x00, 0x39, 0xE3, 0xC0, 0x1F, 0xE0, 0xF0, 0x07, - 0xE0, 0x3E, 0x03, 0xF0, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xEE, 0x00, 0x3F, - 0x83, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x20, 0xFF, 0xFE, 0x0F, 0xFF, - 0xF8, 0xFF, 0xFF, 0xCE, 0x00, 0x3C, 0xE0, 0x01, 0xEE, 0x00, 0x0E, 0xE0, - 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x01, 0xCE, - 0x00, 0x3C, 0xFF, 0xFF, 0x8F, 0xFF, 0xF0, 0xFF, 0xFF, 0x8E, 0x00, 0x3C, - 0xE0, 0x01, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, - 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xFE, 0x00, - 0x0F, 0x03, 0xFC, 0x00, 0xFF, 0xF0, 0x1F, 0xFF, 0x83, 0xE0, 0x7C, 0x38, - 0x01, 0xE7, 0x00, 0x0E, 0x70, 0x00, 0xE7, 0x00, 0x00, 0x70, 0x00, 0x07, - 0x80, 0x00, 0x3E, 0x00, 0x01, 0xFE, 0x00, 0x0F, 0xFE, 0x00, 0x3F, 0xF8, - 0x00, 0x3F, 0xE0, 0x00, 0x3E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0xE0, 0x00, - 0x7E, 0x00, 0x07, 0xF0, 0x00, 0x77, 0x80, 0x0E, 0x7C, 0x03, 0xE3, 0xFF, - 0xFC, 0x1F, 0xFF, 0x80, 0x3F, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x80, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, - 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, - 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, - 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x38, - 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0xE0, 0x00, 0xFC, 0x00, - 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, - 0x3F, 0x00, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, - 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, - 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x1E, 0xF0, 0x07, - 0x9F, 0x01, 0xF1, 0xFF, 0xFC, 0x1F, 0xFE, 0x00, 0x7F, 0x00, 0xE0, 0x00, - 0x7F, 0x80, 0x03, 0xFC, 0x00, 0x1C, 0xE0, 0x01, 0xE7, 0x80, 0x0F, 0x3C, - 0x00, 0x70, 0xE0, 0x07, 0x87, 0x80, 0x3C, 0x1C, 0x01, 0xC0, 0xE0, 0x0E, - 0x07, 0x80, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x83, 0x80, 0x1C, - 0x1C, 0x00, 0xE0, 0xE0, 0x07, 0x8E, 0x00, 0x1C, 0x70, 0x00, 0xE3, 0x80, - 0x07, 0xB8, 0x00, 0x1D, 0xC0, 0x00, 0xEE, 0x00, 0x07, 0xE0, 0x00, 0x1F, - 0x00, 0x00, 0xF8, 0x00, 0x03, 0x80, 0x00, 0x70, 0x03, 0xC0, 0x0F, 0x70, - 0x03, 0xC0, 0x0F, 0x78, 0x03, 0xE0, 0x0F, 0x78, 0x03, 0xE0, 0x0E, 0x38, - 0x07, 0xE0, 0x0E, 0x38, 0x07, 0xF0, 0x1E, 0x3C, 0x07, 0x70, 0x1E, 0x3C, - 0x07, 0x70, 0x1C, 0x1C, 0x0E, 0x70, 0x1C, 0x1C, 0x0E, 0x38, 0x3C, 0x1C, - 0x0E, 0x38, 0x3C, 0x1E, 0x1E, 0x38, 0x38, 0x0E, 0x1C, 0x38, 0x38, 0x0E, - 0x1C, 0x1C, 0x38, 0x0E, 0x1C, 0x1C, 0x78, 0x0F, 0x3C, 0x1C, 0x70, 0x07, - 0x38, 0x0E, 0x70, 0x07, 0x38, 0x0E, 0x70, 0x07, 0x38, 0x0E, 0x70, 0x07, - 0x70, 0x0E, 0xE0, 0x03, 0xF0, 0x07, 0xE0, 0x03, 0xF0, 0x07, 0xE0, 0x03, - 0xF0, 0x07, 0xE0, 0x03, 0xE0, 0x03, 0xC0, 0x01, 0xE0, 0x03, 0xC0, 0x01, - 0xE0, 0x03, 0xC0, 0xF0, 0x00, 0x7B, 0xC0, 0x07, 0x8F, 0x00, 0x38, 0x78, - 0x03, 0xC1, 0xE0, 0x3C, 0x07, 0x81, 0xC0, 0x3C, 0x1E, 0x00, 0xF1, 0xE0, - 0x03, 0x8E, 0x00, 0x1E, 0xF0, 0x00, 0x7F, 0x00, 0x01, 0xF0, 0x00, 0x0F, - 0x80, 0x00, 0x7C, 0x00, 0x07, 0xF0, 0x00, 0x3B, 0x80, 0x03, 0xDE, 0x00, - 0x3C, 0x78, 0x01, 0xC1, 0xC0, 0x1E, 0x0F, 0x01, 0xE0, 0x3C, 0x0E, 0x00, - 0xE0, 0xF0, 0x07, 0x8F, 0x00, 0x1E, 0x70, 0x00, 0xF7, 0x80, 0x03, 0xC0, - 0xF0, 0x00, 0x3C, 0xF0, 0x00, 0x78, 0xF0, 0x01, 0xE1, 0xE0, 0x03, 0x81, - 0xE0, 0x0F, 0x01, 0xC0, 0x1C, 0x03, 0xC0, 0x78, 0x03, 0xC1, 0xE0, 0x07, - 0x83, 0x80, 0x07, 0x8F, 0x00, 0x07, 0x1C, 0x00, 0x0F, 0x78, 0x00, 0x0E, - 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, - 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x70, 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0x80, 0x00, - 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, - 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x7C, 0x00, - 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xF8, 0xE3, 0x8E, 0x38, 0xE3, - 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, - 0x8E, 0x38, 0xE3, 0x8F, 0xFF, 0xFC, 0xC0, 0x30, 0x06, 0x01, 0x80, 0x60, - 0x0C, 0x03, 0x00, 0xC0, 0x18, 0x06, 0x01, 0x80, 0x20, 0x0C, 0x03, 0x00, - 0x40, 0x18, 0x06, 0x01, 0x80, 0x30, 0x0C, 0x03, 0x00, 0x60, 0x18, 0x06, - 0x00, 0xC0, 0x30, 0xFF, 0xFF, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, - 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, - 0x1C, 0x7F, 0xFF, 0xFC, 0x07, 0x00, 0x78, 0x03, 0xC0, 0x3F, 0x01, 0xD8, - 0x0C, 0xE0, 0xE3, 0x06, 0x1C, 0x70, 0xE3, 0x83, 0x18, 0x1D, 0xC0, 0x6C, - 0x03, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xF0, 0xF0, 0xE0, 0xE0, - 0xE0, 0x07, 0xF0, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0x03, 0xC7, 0x00, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0xFE, 0x0F, 0xFF, 0x1F, 0xF3, - 0x9F, 0x01, 0xCF, 0x00, 0xE7, 0x00, 0x73, 0x80, 0x79, 0xE0, 0xFC, 0x7F, - 0xEF, 0x9F, 0xE3, 0xC7, 0xE1, 0xE0, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE3, 0xE0, 0xEF, 0xF8, - 0xFF, 0xFC, 0xFC, 0x3E, 0xF8, 0x1E, 0xF0, 0x0E, 0xE0, 0x0F, 0xE0, 0x07, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xF0, 0x0E, - 0xF8, 0x1E, 0xFC, 0x3C, 0xEF, 0xFC, 0xEF, 0xF8, 0xE3, 0xE0, 0x07, 0xF0, - 0x1F, 0xF8, 0x3F, 0xFC, 0x3C, 0x1E, 0x78, 0x0E, 0x70, 0x07, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x07, - 0x70, 0x07, 0x78, 0x0E, 0x7C, 0x1E, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, - 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, - 0x1C, 0x00, 0x0E, 0x0F, 0xC7, 0x1F, 0xFB, 0x9F, 0xFF, 0xDF, 0x07, 0xEF, - 0x01, 0xF7, 0x00, 0x7F, 0x80, 0x3F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x03, - 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x77, 0x00, 0x7B, 0xC0, 0x7D, 0xF0, - 0x7E, 0x7F, 0xFB, 0x1F, 0xF9, 0x83, 0xF0, 0xC0, 0x07, 0xE0, 0x1F, 0xF8, - 0x3F, 0xFC, 0x7C, 0x1E, 0x70, 0x0E, 0x60, 0x06, 0xE0, 0x07, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0x70, 0x07, - 0x78, 0x0E, 0x3C, 0x1E, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, 0x0E, 0x3C, - 0xF9, 0xC3, 0x87, 0x0E, 0x7F, 0xFF, 0xFC, 0xE1, 0xC3, 0x87, 0x0E, 0x1C, - 0x38, 0x70, 0xE1, 0xC3, 0x87, 0x0E, 0x1C, 0x38, 0x70, 0x07, 0xC7, 0x1F, - 0xF7, 0x3F, 0xFF, 0x3C, 0x3F, 0x78, 0x0F, 0x70, 0x0F, 0xE0, 0x07, 0xE0, - 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0x70, - 0x0F, 0x78, 0x0F, 0x7C, 0x3F, 0x3F, 0xF7, 0x1F, 0xE7, 0x07, 0xC7, 0x00, - 0x07, 0x00, 0x07, 0x00, 0x0E, 0x70, 0x0E, 0x78, 0x1E, 0x3F, 0xFC, 0x1F, - 0xF8, 0x07, 0xE0, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, - 0x1C, 0x00, 0x38, 0x00, 0x71, 0xF8, 0xE7, 0xFD, 0xDF, 0xFB, 0xF0, 0xFF, - 0xC0, 0xFF, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, - 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, - 0xE0, 0x0F, 0xC0, 0x1C, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFC, 0x1C, 0x71, 0xC7, 0x00, 0x00, 0x07, 0x1C, 0x71, 0xC7, 0x1C, - 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, - 0x73, 0xFF, 0xFB, 0xC0, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x3C, 0xE0, 0x78, 0xE0, 0xF0, - 0xE1, 0xE0, 0xE3, 0xC0, 0xE7, 0x80, 0xEF, 0x00, 0xEF, 0x80, 0xFF, 0x80, - 0xFB, 0xC0, 0xF1, 0xE0, 0xE0, 0xE0, 0xE0, 0xF0, 0xE0, 0x70, 0xE0, 0x78, - 0xE0, 0x3C, 0xE0, 0x1C, 0xE0, 0x1E, 0xE0, 0x0E, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xE3, 0xE0, 0xF8, 0xE7, 0xF1, 0xFE, - 0xEF, 0xFB, 0xFE, 0xF8, 0x7F, 0x0F, 0xF0, 0x3E, 0x07, 0xF0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE3, 0xF1, 0xCF, 0xFB, 0xBF, 0xF7, 0xE1, 0xFF, 0x81, - 0xFE, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, - 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, - 0x1F, 0x80, 0x38, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, 0x87, 0x83, 0xC7, - 0x80, 0xF3, 0x80, 0x3B, 0x80, 0x1F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x01, - 0xF8, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0x3B, 0x80, 0x39, 0xE0, 0x3C, 0x78, - 0x3C, 0x3F, 0xFE, 0x0F, 0xFE, 0x01, 0xFC, 0x00, 0xE3, 0xE0, 0xE7, 0xF8, - 0xEF, 0xFC, 0xFC, 0x3E, 0xF8, 0x1E, 0xF0, 0x0E, 0xE0, 0x0F, 0xE0, 0x07, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xF0, 0x0E, - 0xF8, 0x1E, 0xFC, 0x3E, 0xFF, 0xFC, 0xEF, 0xF8, 0xE3, 0xE0, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0x07, 0xE1, - 0x8F, 0xFC, 0xCF, 0xFF, 0x67, 0x83, 0xF7, 0x80, 0xFB, 0x80, 0x3F, 0xC0, - 0x1F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x7E, - 0x00, 0x3B, 0x80, 0x3D, 0xE0, 0x3E, 0xF8, 0x3F, 0x3F, 0xFF, 0x8F, 0xFD, - 0xC1, 0xF8, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, - 0x07, 0x00, 0x03, 0x80, 0xE3, 0xF7, 0xFB, 0xFF, 0x8F, 0x07, 0x83, 0x81, - 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, - 0x38, 0x00, 0x0F, 0xC0, 0xFF, 0x87, 0xFF, 0x3C, 0x1E, 0xE0, 0x3B, 0x80, - 0x0E, 0x00, 0x3C, 0x00, 0x7F, 0x00, 0xFF, 0x80, 0xFF, 0x80, 0x7F, 0x00, - 0x3F, 0x80, 0x7E, 0x01, 0xFC, 0x1F, 0x7F, 0xF8, 0xFF, 0xC1, 0xFC, 0x00, - 0x38, 0x70, 0xE1, 0xCF, 0xFF, 0xFF, 0x9C, 0x38, 0x70, 0xE1, 0xC3, 0x87, - 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0xE7, 0xC7, 0x80, 0xE0, 0x0F, 0xC0, - 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, - 0xE0, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, 0xFC, 0x03, 0xFC, - 0x0F, 0xFC, 0x3F, 0x7F, 0xEE, 0xFF, 0x9C, 0x7E, 0x38, 0x70, 0x03, 0xB8, - 0x03, 0x9C, 0x01, 0xC7, 0x00, 0xE3, 0x80, 0xE1, 0xC0, 0x70, 0x70, 0x38, - 0x38, 0x38, 0x1C, 0x1C, 0x07, 0x0E, 0x03, 0x8E, 0x01, 0xC7, 0x00, 0x77, - 0x00, 0x3B, 0x80, 0x1D, 0xC0, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0x70, 0x00, 0xF0, 0x1C, 0x03, 0xB8, 0x1F, 0x03, 0xDC, 0x0F, 0x81, 0xCE, - 0x07, 0xC0, 0xE7, 0x83, 0xE0, 0x71, 0xC3, 0xB8, 0x70, 0xE1, 0xDC, 0x38, - 0x70, 0xEE, 0x1C, 0x1C, 0x63, 0x0E, 0x0E, 0x71, 0xCE, 0x07, 0x38, 0xE7, - 0x03, 0x9C, 0x73, 0x80, 0xEC, 0x19, 0x80, 0x7E, 0x0F, 0xC0, 0x3F, 0x07, - 0xE0, 0x0F, 0x83, 0xF0, 0x07, 0x80, 0xF0, 0x03, 0xC0, 0x78, 0x01, 0xE0, - 0x3C, 0x00, 0x70, 0x07, 0x38, 0x0E, 0x3C, 0x1C, 0x1C, 0x1C, 0x0E, 0x38, - 0x0F, 0x70, 0x07, 0x70, 0x03, 0xE0, 0x03, 0xC0, 0x01, 0xC0, 0x03, 0xE0, - 0x07, 0xE0, 0x07, 0x70, 0x0E, 0x78, 0x1E, 0x38, 0x1C, 0x1C, 0x38, 0x1E, - 0x78, 0x0E, 0x70, 0x07, 0x70, 0x07, 0x38, 0x03, 0x9C, 0x01, 0xC7, 0x01, - 0xC3, 0x80, 0xE1, 0xC0, 0x70, 0x70, 0x70, 0x38, 0x38, 0x1C, 0x3C, 0x07, - 0x1C, 0x03, 0x8E, 0x01, 0xCE, 0x00, 0x77, 0x00, 0x3B, 0x80, 0x1F, 0x80, - 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x38, - 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x0F, - 0x00, 0x00, 0x7F, 0xFC, 0xFF, 0xF9, 0xFF, 0xF0, 0x00, 0xE0, 0x03, 0x80, - 0x0E, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x1C, 0x00, 0x70, - 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF8, 0x07, 0x0F, 0x1F, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x38, 0xF8, 0xE0, 0xF8, 0x38, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1F, 0x0F, 0x07, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xE0, 0xF0, 0xF8, 0x38, - 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x1C, 0x1F, - 0x07, 0x1F, 0x1C, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, - 0x38, 0x38, 0xF8, 0xF0, 0xE0, 0x38, 0x00, 0xFC, 0x03, 0xFC, 0x1F, 0x3E, - 0x3C, 0x1F, 0xE0, 0x1F, 0x80, 0x1E, 0x00}; - -const GFXglyph FreeSans18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 3, 26, 12, 4, -25}, // 0x21 '!' - {10, 9, 9, 12, 1, -24}, // 0x22 '"' - {21, 19, 24, 19, 0, -23}, // 0x23 '#' - {78, 16, 30, 19, 2, -26}, // 0x24 '$' - {138, 29, 25, 31, 1, -24}, // 0x25 '%' - {229, 20, 25, 23, 2, -24}, // 0x26 '&' - {292, 3, 9, 7, 2, -24}, // 0x27 ''' - {296, 8, 33, 12, 3, -25}, // 0x28 '(' - {329, 8, 33, 12, 1, -25}, // 0x29 ')' - {362, 10, 10, 14, 2, -25}, // 0x2A '*' - {375, 16, 16, 20, 2, -15}, // 0x2B '+' - {407, 3, 9, 10, 3, -3}, // 0x2C ',' - {411, 8, 3, 12, 2, -10}, // 0x2D '-' - {414, 3, 4, 9, 3, -3}, // 0x2E '.' - {416, 10, 26, 10, 0, -25}, // 0x2F '/' - {449, 16, 25, 19, 2, -24}, // 0x30 '0' - {499, 8, 25, 19, 4, -24}, // 0x31 '1' - {524, 16, 25, 19, 2, -24}, // 0x32 '2' - {574, 17, 25, 19, 1, -24}, // 0x33 '3' - {628, 16, 25, 19, 1, -24}, // 0x34 '4' - {678, 17, 25, 19, 1, -24}, // 0x35 '5' - {732, 16, 25, 19, 2, -24}, // 0x36 '6' - {782, 16, 25, 19, 2, -24}, // 0x37 '7' - {832, 17, 25, 19, 1, -24}, // 0x38 '8' - {886, 16, 25, 19, 1, -24}, // 0x39 '9' - {936, 3, 19, 9, 3, -18}, // 0x3A ':' - {944, 3, 24, 9, 3, -18}, // 0x3B ';' - {953, 17, 17, 20, 2, -16}, // 0x3C '<' - {990, 17, 9, 20, 2, -12}, // 0x3D '=' - {1010, 17, 17, 20, 2, -16}, // 0x3E '>' - {1047, 15, 26, 19, 3, -25}, // 0x3F '?' - {1096, 32, 31, 36, 1, -25}, // 0x40 '@' - {1220, 22, 26, 23, 1, -25}, // 0x41 'A' - {1292, 19, 26, 23, 3, -25}, // 0x42 'B' - {1354, 22, 26, 25, 1, -25}, // 0x43 'C' - {1426, 20, 26, 24, 3, -25}, // 0x44 'D' - {1491, 18, 26, 22, 3, -25}, // 0x45 'E' - {1550, 17, 26, 21, 3, -25}, // 0x46 'F' - {1606, 24, 26, 27, 1, -25}, // 0x47 'G' - {1684, 19, 26, 25, 3, -25}, // 0x48 'H' - {1746, 3, 26, 10, 4, -25}, // 0x49 'I' - {1756, 14, 26, 18, 1, -25}, // 0x4A 'J' - {1802, 20, 26, 24, 3, -25}, // 0x4B 'K' - {1867, 15, 26, 20, 3, -25}, // 0x4C 'L' - {1916, 24, 26, 30, 3, -25}, // 0x4D 'M' - {1994, 20, 26, 26, 3, -25}, // 0x4E 'N' - {2059, 25, 26, 27, 1, -25}, // 0x4F 'O' - {2141, 18, 26, 23, 3, -25}, // 0x50 'P' - {2200, 25, 28, 27, 1, -25}, // 0x51 'Q' - {2288, 20, 26, 25, 3, -25}, // 0x52 'R' - {2353, 20, 26, 23, 1, -25}, // 0x53 'S' - {2418, 19, 26, 22, 1, -25}, // 0x54 'T' - {2480, 19, 26, 25, 3, -25}, // 0x55 'U' - {2542, 21, 26, 23, 1, -25}, // 0x56 'V' - {2611, 32, 26, 33, 0, -25}, // 0x57 'W' - {2715, 21, 26, 23, 1, -25}, // 0x58 'X' - {2784, 23, 26, 24, 0, -25}, // 0x59 'Y' - {2859, 19, 26, 22, 1, -25}, // 0x5A 'Z' - {2921, 6, 33, 10, 2, -25}, // 0x5B '[' - {2946, 10, 26, 10, 0, -25}, // 0x5C '\' - {2979, 6, 33, 10, 1, -25}, // 0x5D ']' - {3004, 13, 13, 16, 2, -24}, // 0x5E '^' - {3026, 21, 2, 19, -1, 5}, // 0x5F '_' - {3032, 7, 5, 9, 1, -25}, // 0x60 '`' - {3037, 17, 19, 19, 1, -18}, // 0x61 'a' - {3078, 16, 26, 20, 2, -25}, // 0x62 'b' - {3130, 16, 19, 18, 1, -18}, // 0x63 'c' - {3168, 17, 26, 20, 1, -25}, // 0x64 'd' - {3224, 16, 19, 19, 1, -18}, // 0x65 'e' - {3262, 7, 26, 10, 1, -25}, // 0x66 'f' - {3285, 16, 27, 19, 1, -18}, // 0x67 'g' - {3339, 15, 26, 19, 2, -25}, // 0x68 'h' - {3388, 3, 26, 8, 2, -25}, // 0x69 'i' - {3398, 6, 34, 9, 0, -25}, // 0x6A 'j' - {3424, 16, 26, 18, 2, -25}, // 0x6B 'k' - {3476, 3, 26, 7, 2, -25}, // 0x6C 'l' - {3486, 24, 19, 28, 2, -18}, // 0x6D 'm' - {3543, 15, 19, 19, 2, -18}, // 0x6E 'n' - {3579, 17, 19, 19, 1, -18}, // 0x6F 'o' - {3620, 16, 25, 20, 2, -18}, // 0x70 'p' - {3670, 17, 25, 20, 1, -18}, // 0x71 'q' - {3724, 9, 19, 12, 2, -18}, // 0x72 'r' - {3746, 14, 19, 17, 2, -18}, // 0x73 's' - {3780, 7, 23, 10, 1, -22}, // 0x74 't' - {3801, 15, 19, 19, 2, -18}, // 0x75 'u' - {3837, 17, 19, 17, 0, -18}, // 0x76 'v' - {3878, 25, 19, 25, 0, -18}, // 0x77 'w' - {3938, 16, 19, 17, 0, -18}, // 0x78 'x' - {3976, 17, 27, 17, 0, -18}, // 0x79 'y' - {4034, 15, 19, 17, 1, -18}, // 0x7A 'z' - {4070, 8, 33, 12, 1, -25}, // 0x7B '{' - {4103, 2, 33, 9, 3, -25}, // 0x7C '|' - {4112, 8, 33, 12, 3, -25}, // 0x7D '}' - {4145, 15, 7, 18, 1, -15}}; // 0x7E '~' - -const GFXfont FreeSans18pt7b PROGMEM = {(uint8_t *)FreeSans18pt7bBitmaps, - (GFXglyph *)FreeSans18pt7bGlyphs, 0x20, - 0x7E, 42}; - -// Approx. 4831 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans24pt7b.h deleted file mode 100644 index 3559530..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans24pt7b.h +++ /dev/null @@ -1,729 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans24pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x76, 0x66, - 0x66, 0x00, 0x0F, 0xFF, 0xFF, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1F, - 0xE3, 0xFC, 0x7F, 0x8F, 0xF1, 0xEC, 0x19, 0x83, 0x30, 0x60, 0x00, 0x70, - 0x3C, 0x00, 0x70, 0x3C, 0x00, 0xF0, 0x38, 0x00, 0xF0, 0x38, 0x00, 0xF0, - 0x78, 0x00, 0xE0, 0x78, 0x00, 0xE0, 0x78, 0x01, 0xE0, 0x70, 0x01, 0xE0, - 0x70, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x03, 0xC0, - 0xE0, 0x03, 0xC0, 0xE0, 0x03, 0xC0, 0xE0, 0x03, 0x81, 0xE0, 0x03, 0x81, - 0xE0, 0x03, 0x81, 0xE0, 0x07, 0x81, 0xC0, 0x07, 0x81, 0xC0, 0xFF, 0xFF, - 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0x0F, 0x03, 0x80, 0x0F, 0x03, - 0x80, 0x0F, 0x07, 0x80, 0x0E, 0x07, 0x80, 0x0E, 0x07, 0x80, 0x1E, 0x07, - 0x00, 0x1E, 0x07, 0x00, 0x1E, 0x07, 0x00, 0x1C, 0x0F, 0x00, 0x1C, 0x0F, - 0x00, 0x00, 0x38, 0x00, 0x01, 0xFC, 0x00, 0x1F, 0xFE, 0x00, 0x7F, 0xFE, - 0x01, 0xFF, 0xFE, 0x07, 0xE7, 0x3E, 0x0F, 0x8E, 0x3C, 0x3E, 0x1C, 0x3C, - 0x78, 0x38, 0x38, 0xF0, 0x70, 0x71, 0xE0, 0xE0, 0xE3, 0xC1, 0xC0, 0x07, - 0x83, 0x80, 0x0F, 0x87, 0x00, 0x0F, 0x8E, 0x00, 0x1F, 0xDC, 0x00, 0x1F, - 0xF8, 0x00, 0x1F, 0xFF, 0x00, 0x0F, 0xFF, 0x80, 0x07, 0xFF, 0x80, 0x03, - 0xFF, 0x80, 0x07, 0x1F, 0x80, 0x0E, 0x1F, 0x00, 0x1C, 0x1F, 0x00, 0x38, - 0x1F, 0xC0, 0x70, 0x3F, 0x80, 0xE0, 0x7F, 0x81, 0xC0, 0xFF, 0x03, 0x81, - 0xEF, 0x07, 0x07, 0x9F, 0x0E, 0x0F, 0x3E, 0x1C, 0x3E, 0x3F, 0x39, 0xF8, - 0x3F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x03, 0x80, 0x00, - 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, - 0x00, 0x00, 0x1C, 0x00, 0x0F, 0xC0, 0x00, 0x78, 0x00, 0x3F, 0xE0, 0x00, - 0xE0, 0x01, 0xFF, 0xE0, 0x03, 0x80, 0x03, 0xFF, 0xE0, 0x07, 0x00, 0x0F, - 0x87, 0xC0, 0x1C, 0x00, 0x3C, 0x03, 0xC0, 0x38, 0x00, 0x70, 0x03, 0x80, - 0xE0, 0x00, 0xE0, 0x07, 0x03, 0xC0, 0x01, 0xC0, 0x0E, 0x07, 0x00, 0x03, - 0x80, 0x1C, 0x1E, 0x00, 0x07, 0x80, 0x78, 0x38, 0x00, 0x07, 0xC3, 0xE0, - 0xF0, 0x00, 0x07, 0xFF, 0xC1, 0xC0, 0x00, 0x0F, 0xFF, 0x07, 0x80, 0x00, - 0x0F, 0xFC, 0x0E, 0x00, 0x00, 0x07, 0xE0, 0x38, 0x00, 0x00, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x3F, 0x00, 0x00, 0x03, 0x80, 0xFF, - 0x80, 0x00, 0x0E, 0x07, 0xFF, 0x80, 0x00, 0x3C, 0x0F, 0xFF, 0x80, 0x00, - 0x70, 0x3E, 0x1F, 0x00, 0x01, 0xE0, 0xF0, 0x0F, 0x00, 0x03, 0x81, 0xC0, - 0x0E, 0x00, 0x0F, 0x03, 0x80, 0x1C, 0x00, 0x1C, 0x07, 0x00, 0x38, 0x00, - 0x78, 0x0E, 0x00, 0x70, 0x00, 0xE0, 0x1E, 0x01, 0xE0, 0x03, 0x80, 0x1F, - 0x0F, 0x80, 0x07, 0x00, 0x1F, 0xFF, 0x00, 0x1C, 0x00, 0x3F, 0xFC, 0x00, - 0x38, 0x00, 0x1F, 0xF0, 0x00, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7E, 0x00, - 0x00, 0x1F, 0xF0, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x7F, 0xFC, 0x00, 0x07, - 0xC3, 0xC0, 0x00, 0xF8, 0x1E, 0x00, 0x0F, 0x00, 0xE0, 0x00, 0xF0, 0x0E, - 0x00, 0x0F, 0x00, 0xE0, 0x00, 0xF0, 0x0E, 0x00, 0x07, 0x81, 0xE0, 0x00, - 0x7C, 0x3C, 0x00, 0x03, 0xEF, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0xE0, 0x00, - 0x1F, 0x1E, 0x07, 0x83, 0xE0, 0xF0, 0x78, 0x7C, 0x0F, 0x8F, 0x87, 0x80, - 0x7C, 0xF0, 0xF0, 0x03, 0xFF, 0x0F, 0x00, 0x1F, 0xE0, 0xF0, 0x00, 0xFE, - 0x0F, 0x00, 0x0F, 0xC0, 0xF0, 0x00, 0x7E, 0x0F, 0x80, 0x0F, 0xF0, 0x7C, - 0x01, 0xFF, 0x07, 0xF0, 0x7D, 0xF8, 0x3F, 0xFF, 0x8F, 0xC1, 0xFF, 0xF0, - 0x7E, 0x0F, 0xFE, 0x03, 0xE0, 0x3F, 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF6, 0x66, 0x01, 0xC0, 0x70, 0x38, 0x1C, 0x07, 0x03, 0xC0, 0xE0, 0x78, - 0x1C, 0x07, 0x03, 0xC0, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x70, 0x3C, - 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, - 0xC0, 0x70, 0x1E, 0x07, 0x81, 0xE0, 0x38, 0x0F, 0x03, 0xC0, 0x70, 0x1E, - 0x03, 0x80, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x18, 0x07, 0xE0, 0x38, 0x07, - 0x01, 0xC0, 0x38, 0x0F, 0x01, 0xC0, 0x78, 0x0E, 0x03, 0x80, 0xF0, 0x1C, - 0x07, 0x01, 0xE0, 0x78, 0x1E, 0x03, 0x80, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, - 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x07, 0x81, 0xE0, 0x78, - 0x1E, 0x07, 0x03, 0xC0, 0xF0, 0x38, 0x1E, 0x07, 0x01, 0xC0, 0xE0, 0x38, - 0x1C, 0x06, 0x03, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x63, - 0x1B, 0xFF, 0xFF, 0xFF, 0xC3, 0xF0, 0x07, 0x80, 0x3F, 0x01, 0xCE, 0x07, - 0x3C, 0x38, 0x70, 0x21, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, - 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x0E, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0x00, 0x00, 0x0E, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, - 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0xFF, 0xFF, 0xF3, - 0x33, 0x36, 0xEC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF0, - 0x00, 0x38, 0x01, 0xC0, 0x0C, 0x00, 0xE0, 0x07, 0x00, 0x30, 0x03, 0x80, - 0x1C, 0x00, 0xC0, 0x06, 0x00, 0x70, 0x03, 0x80, 0x18, 0x01, 0xC0, 0x0E, - 0x00, 0x60, 0x03, 0x00, 0x38, 0x01, 0x80, 0x0C, 0x00, 0xE0, 0x07, 0x00, - 0x30, 0x03, 0x80, 0x1C, 0x00, 0xC0, 0x06, 0x00, 0x70, 0x03, 0x80, 0x18, - 0x01, 0xC0, 0x0E, 0x00, 0x60, 0x07, 0x00, 0x38, 0x00, 0x00, 0xFC, 0x00, - 0x0F, 0xFC, 0x00, 0xFF, 0xFC, 0x07, 0xFF, 0xF8, 0x1F, 0x87, 0xE0, 0xF8, - 0x07, 0xC3, 0xC0, 0x0F, 0x1F, 0x00, 0x3E, 0x78, 0x00, 0x79, 0xE0, 0x01, - 0xE7, 0x80, 0x07, 0xBC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, - 0xDE, 0x00, 0x1E, 0x78, 0x00, 0x79, 0xE0, 0x01, 0xE7, 0xC0, 0x0F, 0x8F, - 0x00, 0x3C, 0x3E, 0x01, 0xF0, 0x7C, 0x1F, 0x81, 0xFF, 0xFE, 0x03, 0xFF, - 0xF0, 0x03, 0xFF, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x60, 0x1C, 0x03, 0x80, - 0xF0, 0x3E, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x3C, 0x07, 0x80, 0xF0, - 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, - 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xFE, 0x01, 0xFF, - 0xFE, 0x0F, 0xFF, 0xFC, 0x3F, 0x03, 0xF9, 0xF0, 0x03, 0xE7, 0x80, 0x07, - 0xFE, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xC0, - 0x00, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, - 0x7C, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x80, 0x07, 0xF8, 0x00, 0x3F, 0xC0, - 0x03, 0xFC, 0x00, 0x1F, 0xC0, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x3E, - 0x00, 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, - 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, - 0x00, 0xFE, 0x00, 0x0F, 0xFF, 0x80, 0x3F, 0xFF, 0x80, 0xFF, 0xFF, 0x83, - 0xF0, 0x1F, 0x87, 0xC0, 0x1F, 0x1F, 0x00, 0x1F, 0x3C, 0x00, 0x1E, 0x78, - 0x00, 0x3C, 0xF0, 0x00, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0x80, 0x00, 0x7F, 0x00, 0x1F, 0xFC, 0x00, 0x3F, 0xE0, 0x00, 0x7F, - 0xE0, 0x00, 0xFF, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x03, - 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0xF0, 0x00, 0x1F, - 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0xFB, 0xC0, 0x01, 0xE7, 0xC0, 0x07, 0xC7, - 0xE0, 0x3F, 0x0F, 0xFF, 0xFE, 0x0F, 0xFF, 0xF8, 0x07, 0xFF, 0xC0, 0x03, - 0xFC, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x1F, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x3F, - 0xE0, 0x00, 0x7B, 0xC0, 0x01, 0xE7, 0x80, 0x07, 0x8F, 0x00, 0x0F, 0x1E, - 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0x78, 0x03, 0xC0, 0xF0, 0x07, 0x81, 0xE0, - 0x1E, 0x03, 0xC0, 0x78, 0x07, 0x81, 0xE0, 0x0F, 0x03, 0xC0, 0x1E, 0x0F, - 0x00, 0x3C, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x1F, 0xFF, 0xF0, 0x7F, 0xFF, 0xC1, 0xFF, 0xFF, 0x07, 0xFF, 0xFC, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x1F, 0x3F, 0x80, 0x7B, 0xFF, - 0x81, 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x1F, 0x80, 0xFC, 0x78, 0x01, 0xF8, - 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x80, 0x07, 0x9E, 0x00, 0x1E, 0x7C, 0x00, 0xF1, 0xFC, 0x0F, 0xC3, - 0xFF, 0xFE, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0x80, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x0F, 0xFE, 0x00, 0x7F, 0xFC, 0x03, 0xFF, 0xF8, 0x1F, 0x83, - 0xF0, 0xF8, 0x07, 0xC3, 0xC0, 0x0F, 0x8F, 0x00, 0x1E, 0x78, 0x00, 0x79, - 0xE0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0xFE, 0x03, 0xCF, - 0xFE, 0x0F, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0xFF, 0x03, 0xF3, 0xF0, 0x03, - 0xEF, 0x80, 0x07, 0xBE, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0x70, 0x00, 0x3D, 0xC0, 0x00, 0xF7, 0x80, - 0x07, 0x9F, 0x00, 0x3E, 0x3E, 0x00, 0xF8, 0xFC, 0x0F, 0xC1, 0xFF, 0xFE, - 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x07, 0xF8, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x07, 0x00, 0x00, - 0x78, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, - 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, - 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, - 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, - 0x01, 0xFE, 0x00, 0x1F, 0xFE, 0x00, 0xFF, 0xFC, 0x07, 0xFF, 0xF8, 0x3F, - 0x03, 0xF1, 0xF0, 0x03, 0xC7, 0xC0, 0x0F, 0x9E, 0x00, 0x1E, 0x78, 0x00, - 0x79, 0xE0, 0x01, 0xE7, 0x80, 0x0F, 0x8F, 0x00, 0x3C, 0x3F, 0x03, 0xF0, - 0x7F, 0xFF, 0x80, 0x7F, 0xF8, 0x03, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0xFC, - 0x0F, 0xC7, 0xC0, 0x0F, 0x9E, 0x00, 0x1E, 0xF8, 0x00, 0x7F, 0xC0, 0x00, - 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x80, 0x07, 0xDE, 0x00, 0x1E, 0x7C, 0x00, 0xF8, 0xFC, 0x0F, 0xC3, 0xFF, - 0xFF, 0x07, 0xFF, 0xF8, 0x07, 0xFF, 0x80, 0x07, 0xF8, 0x00, 0x01, 0xFC, - 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x83, 0xF0, 0x7E, 0x3E, - 0x00, 0xF1, 0xE0, 0x07, 0xCF, 0x00, 0x1E, 0xF0, 0x00, 0x77, 0x80, 0x03, - 0xBC, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xF8, 0x00, 0x3F, 0xE0, - 0x03, 0xEF, 0x00, 0x1F, 0x7C, 0x01, 0xF9, 0xF8, 0x3F, 0xCF, 0xFF, 0xFE, - 0x3F, 0xFE, 0xF0, 0xFF, 0xE7, 0x80, 0xFC, 0x3C, 0x00, 0x01, 0xE0, 0x00, - 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x9E, 0x00, 0x3C, 0xF0, 0x03, 0xC7, - 0xC0, 0x3E, 0x1F, 0x03, 0xE0, 0xFF, 0xFE, 0x03, 0xFF, 0xE0, 0x0F, 0xFE, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xF3, 0x33, 0x36, 0xEC, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0xC0, - 0x03, 0xFC, 0x00, 0x3F, 0xE0, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, - 0x80, 0x03, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xF0, - 0x00, 0x07, 0xFC, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, - 0xC0, 0x00, 0x3F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xC0, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0x80, 0x00, 0x01, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x3F, 0xC0, 0x00, 0x1F, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xF8, 0x00, - 0x01, 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0xC0, 0x03, 0xFC, 0x00, 0x1F, - 0xE0, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x07, 0xFC, 0x00, - 0x0F, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0xFF, 0xF0, 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x7E, 0x0F, 0xE7, 0x80, - 0x3E, 0x78, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x00, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, - 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xC0, - 0x00, 0x00, 0x3F, 0xFF, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x00, - 0x07, 0xFC, 0x03, 0xFF, 0x00, 0x01, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x7E, - 0x00, 0x00, 0x7F, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xF0, 0x07, 0xC0, 0x00, - 0x00, 0x3F, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xF0, 0x3C, 0x00, 0x7E, 0x00, - 0x3E, 0x0F, 0x00, 0x3F, 0xE3, 0xC3, 0xE3, 0xE0, 0x1F, 0xFE, 0x78, 0x3C, - 0x78, 0x07, 0xE1, 0xFF, 0x07, 0xDF, 0x01, 0xF0, 0x1F, 0xC0, 0xFB, 0xC0, - 0x7C, 0x01, 0xF8, 0x0F, 0x78, 0x0F, 0x00, 0x3F, 0x01, 0xEF, 0x03, 0xC0, - 0x07, 0xC0, 0x3F, 0xC0, 0x78, 0x00, 0xF8, 0x07, 0xF8, 0x0F, 0x00, 0x1F, - 0x00, 0xFF, 0x03, 0xC0, 0x03, 0xC0, 0x1F, 0xE0, 0x78, 0x00, 0x78, 0x07, - 0xFC, 0x0F, 0x00, 0x1F, 0x00, 0xF7, 0x81, 0xE0, 0x03, 0xC0, 0x1E, 0xF0, - 0x3C, 0x00, 0x78, 0x07, 0x9E, 0x07, 0x80, 0x1F, 0x01, 0xF3, 0xE0, 0xF8, - 0x07, 0xC0, 0x3C, 0x3C, 0x0F, 0x81, 0xF8, 0x0F, 0x87, 0x81, 0xF8, 0x7F, - 0x87, 0xE0, 0xF8, 0x1F, 0xFE, 0xFF, 0xF8, 0x0F, 0x01, 0xFF, 0x1F, 0xFC, - 0x01, 0xF0, 0x0F, 0x80, 0xFE, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x03, - 0xF0, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x03, 0xFE, 0x00, - 0x7C, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x80, 0x00, 0x01, 0xFF, 0xFF, 0xF8, - 0x00, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, - 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0xF7, 0xC0, 0x00, 0x03, - 0xDF, 0x00, 0x00, 0x1F, 0x3C, 0x00, 0x00, 0x78, 0xF8, 0x00, 0x01, 0xE3, - 0xE0, 0x00, 0x0F, 0x87, 0x80, 0x00, 0x3C, 0x1F, 0x00, 0x01, 0xF0, 0x7C, - 0x00, 0x07, 0x80, 0xF0, 0x00, 0x1E, 0x03, 0xE0, 0x00, 0xF8, 0x0F, 0x80, - 0x03, 0xC0, 0x1E, 0x00, 0x0F, 0x00, 0x7C, 0x00, 0x7C, 0x01, 0xF0, 0x01, - 0xE0, 0x03, 0xC0, 0x07, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xFE, 0x00, 0xFF, - 0xFF, 0xFC, 0x07, 0xFF, 0xFF, 0xF0, 0x1F, 0x00, 0x07, 0xC0, 0x78, 0x00, - 0x0F, 0x83, 0xE0, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0xF8, 0x3C, 0x00, 0x01, - 0xF1, 0xF0, 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x1F, 0x1E, 0x00, 0x00, 0x3E, - 0xF8, 0x00, 0x00, 0xFB, 0xE0, 0x00, 0x01, 0xE0, 0xFF, 0xFF, 0x80, 0x7F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0x0F, 0x00, 0x0F, 0xC7, - 0x80, 0x01, 0xE3, 0xC0, 0x00, 0xF9, 0xE0, 0x00, 0x3C, 0xF0, 0x00, 0x1E, - 0x78, 0x00, 0x0F, 0x3C, 0x00, 0x07, 0x9E, 0x00, 0x07, 0x8F, 0x00, 0x03, - 0xC7, 0x80, 0x07, 0xC3, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, - 0xF8, 0x7F, 0xFF, 0xFE, 0x3C, 0x00, 0x0F, 0x9E, 0x00, 0x03, 0xEF, 0x00, - 0x00, 0xF7, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, - 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x01, 0xFF, - 0x00, 0x01, 0xF7, 0x80, 0x01, 0xFB, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xF8, - 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x07, - 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0xFE, 0x01, - 0xF8, 0x07, 0xC0, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x3C, - 0x3C, 0x00, 0x01, 0xE3, 0xE0, 0x00, 0x07, 0x9E, 0x00, 0x00, 0x3C, 0xF0, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x03, 0xC0, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x0F, 0x78, 0x00, - 0x00, 0x7B, 0xC0, 0x00, 0x07, 0xDF, 0x00, 0x00, 0x3C, 0x78, 0x00, 0x01, - 0xE3, 0xE0, 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF0, 0x3E, 0x00, 0x1F, 0x81, - 0xFE, 0x03, 0xF8, 0x07, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, 0xF8, 0x00, 0x3F, - 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xFF, 0x80, 0x1F, 0xFF, 0xFE, - 0x03, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFE, 0x0F, 0x00, 0x0F, 0xE1, 0xE0, - 0x00, 0x7E, 0x3C, 0x00, 0x07, 0xE7, 0x80, 0x00, 0x7C, 0xF0, 0x00, 0x07, - 0xDE, 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x0F, 0x78, 0x00, 0x01, 0xEF, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x0F, - 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x07, 0xF8, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xF7, - 0x80, 0x00, 0x1E, 0xF0, 0x00, 0x03, 0xDE, 0x00, 0x00, 0xFB, 0xC0, 0x00, - 0x3E, 0x78, 0x00, 0x0F, 0xCF, 0x00, 0x03, 0xF1, 0xE0, 0x01, 0xFC, 0x3F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, - 0x00, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, - 0xFE, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xFF, 0xFF, - 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x3F, 0xFF, 0xFC, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0xFE, - 0x00, 0x07, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x7F, 0x80, 0x7F, - 0x01, 0xF8, 0x00, 0x3F, 0x07, 0xE0, 0x00, 0x1F, 0x0F, 0x80, 0x00, 0x1E, - 0x3E, 0x00, 0x00, 0x3E, 0x78, 0x00, 0x00, 0x3D, 0xF0, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0xFF, 0x80, 0x03, 0xFF, 0xFF, 0x00, - 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x07, 0xBC, 0x00, - 0x00, 0x0F, 0x78, 0x00, 0x00, 0x1E, 0xF8, 0x00, 0x00, 0x7D, 0xF0, 0x00, - 0x00, 0xF9, 0xF0, 0x00, 0x03, 0xF3, 0xF0, 0x00, 0x07, 0xE3, 0xF0, 0x00, - 0x1F, 0xC3, 0xF0, 0x00, 0xFF, 0x83, 0xFC, 0x07, 0xEF, 0x03, 0xFF, 0xFF, - 0x9E, 0x03, 0xFF, 0xFE, 0x1C, 0x01, 0xFF, 0xF0, 0x38, 0x00, 0x7F, 0x80, - 0x00, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0xE0, - 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, - 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x00, - 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, - 0x03, 0xC0, 0x00, 0x7F, 0x80, 0x0F, 0xF0, 0x01, 0xFE, 0x00, 0x3F, 0xC0, - 0x07, 0xF8, 0x01, 0xFF, 0x80, 0x3E, 0xF0, 0x0F, 0x9F, 0x83, 0xF1, 0xFF, - 0xFC, 0x3F, 0xFF, 0x01, 0xFF, 0xC0, 0x0F, 0xE0, 0x00, 0xF0, 0x00, 0x07, - 0xDE, 0x00, 0x01, 0xF3, 0xC0, 0x00, 0x7C, 0x78, 0x00, 0x1F, 0x0F, 0x00, - 0x07, 0xC1, 0xE0, 0x01, 0xF0, 0x3C, 0x00, 0x7C, 0x07, 0x80, 0x1F, 0x00, - 0xF0, 0x07, 0xC0, 0x1E, 0x01, 0xF0, 0x03, 0xC0, 0x7C, 0x00, 0x78, 0x1F, - 0x00, 0x0F, 0x07, 0xC0, 0x01, 0xE1, 0xF0, 0x00, 0x3C, 0x7E, 0x00, 0x07, - 0x9F, 0xE0, 0x00, 0xF7, 0xFE, 0x00, 0x1F, 0xF7, 0xC0, 0x03, 0xFC, 0x7C, - 0x00, 0x7F, 0x07, 0xC0, 0x0F, 0xC0, 0xF8, 0x01, 0xF0, 0x0F, 0x80, 0x3C, - 0x00, 0xF8, 0x07, 0x80, 0x1F, 0x80, 0xF0, 0x01, 0xF0, 0x1E, 0x00, 0x1F, - 0x03, 0xC0, 0x03, 0xF0, 0x78, 0x00, 0x3E, 0x0F, 0x00, 0x03, 0xE1, 0xE0, - 0x00, 0x3E, 0x3C, 0x00, 0x07, 0xC7, 0x80, 0x00, 0x7C, 0xF0, 0x00, 0x07, - 0xDE, 0x00, 0x00, 0xFC, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFC, 0x00, - 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x7F, 0xFE, 0x00, - 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, - 0x00, 0xFF, 0xF7, 0x00, 0x00, 0xEF, 0xF7, 0x80, 0x01, 0xEF, 0xF7, 0x80, - 0x01, 0xEF, 0xF3, 0xC0, 0x01, 0xCF, 0xF3, 0xC0, 0x03, 0xCF, 0xF3, 0xC0, - 0x03, 0xCF, 0xF1, 0xE0, 0x03, 0x8F, 0xF1, 0xE0, 0x07, 0x8F, 0xF1, 0xE0, - 0x07, 0x8F, 0xF0, 0xF0, 0x0F, 0x0F, 0xF0, 0xF0, 0x0F, 0x0F, 0xF0, 0xF0, - 0x0F, 0x0F, 0xF0, 0x78, 0x1E, 0x0F, 0xF0, 0x78, 0x1E, 0x0F, 0xF0, 0x78, - 0x1E, 0x0F, 0xF0, 0x3C, 0x3C, 0x0F, 0xF0, 0x3C, 0x3C, 0x0F, 0xF0, 0x3C, - 0x3C, 0x0F, 0xF0, 0x1E, 0x78, 0x0F, 0xF0, 0x1E, 0x78, 0x0F, 0xF0, 0x0E, - 0x78, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x07, - 0xF0, 0x0F, 0xF0, 0x07, 0xE0, 0x0F, 0xF0, 0x07, 0xE0, 0x0F, 0xF0, 0x03, - 0xE0, 0x0F, 0xF8, 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x3F, - 0xF8, 0x00, 0x0F, 0xFE, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0xFF, 0xF8, 0x00, - 0x3F, 0xDE, 0x00, 0x0F, 0xF7, 0xC0, 0x03, 0xFC, 0xF8, 0x00, 0xFF, 0x1E, - 0x00, 0x3F, 0xC7, 0xC0, 0x0F, 0xF0, 0xF0, 0x03, 0xFC, 0x3E, 0x00, 0xFF, - 0x07, 0xC0, 0x3F, 0xC0, 0xF0, 0x0F, 0xF0, 0x3E, 0x03, 0xFC, 0x07, 0xC0, - 0xFF, 0x00, 0xF0, 0x3F, 0xC0, 0x3E, 0x0F, 0xF0, 0x07, 0x83, 0xFC, 0x01, - 0xF0, 0xFF, 0x00, 0x3E, 0x3F, 0xC0, 0x07, 0x8F, 0xF0, 0x01, 0xF3, 0xFC, - 0x00, 0x3E, 0xFF, 0x00, 0x07, 0xBF, 0xC0, 0x01, 0xFF, 0xF0, 0x00, 0x3F, - 0xFC, 0x00, 0x0F, 0xFF, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x00, - 0x0F, 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, - 0x80, 0x00, 0x7F, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0x80, - 0xFF, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x7E, 0x00, 0x03, 0xF0, 0x3E, 0x00, - 0x00, 0xF8, 0x3E, 0x00, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0x0F, 0x1F, 0x00, - 0x00, 0x07, 0xCF, 0x00, 0x00, 0x01, 0xE7, 0x80, 0x00, 0x00, 0xF7, 0xC0, - 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x00, 0x3E, 0xF0, 0x00, 0x00, 0x1E, 0x78, 0x00, 0x00, 0x0F, - 0x3E, 0x00, 0x00, 0x0F, 0x8F, 0x00, 0x00, 0x07, 0x87, 0xC0, 0x00, 0x07, - 0xC1, 0xF0, 0x00, 0x07, 0xC0, 0xFC, 0x00, 0x07, 0xE0, 0x3F, 0x00, 0x07, - 0xE0, 0x0F, 0xF0, 0x1F, 0xE0, 0x03, 0xFF, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFC, 0xF0, 0x00, - 0xFE, 0xF0, 0x00, 0x3E, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, - 0x0F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, - 0x0F, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x3E, 0xF0, 0x00, 0xFE, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xC0, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x80, - 0x00, 0x7F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0x80, 0xFF, - 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x7E, 0x00, 0x03, 0xF0, 0x3E, 0x00, 0x00, - 0xF8, 0x3E, 0x00, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0x0F, 0x1F, 0x00, 0x00, - 0x07, 0xCF, 0x00, 0x00, 0x01, 0xE7, 0x80, 0x00, 0x00, 0xF7, 0xC0, 0x00, - 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x0F, 0xF0, 0x00, - 0x00, 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xFE, 0x00, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x00, 0x3E, 0xF0, 0x00, 0x00, 0x1E, 0x78, 0x00, 0x00, 0x0F, 0x3E, - 0x00, 0x00, 0x0F, 0x8F, 0x00, 0x03, 0x87, 0x87, 0xC0, 0x03, 0xE7, 0xC1, - 0xF0, 0x00, 0xFF, 0xC0, 0xFC, 0x00, 0x3F, 0xE0, 0x3F, 0x00, 0x0F, 0xE0, - 0x0F, 0xF0, 0x1F, 0xF0, 0x03, 0xFF, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0xFF, - 0x00, 0x1F, 0xFF, 0xC7, 0xC0, 0x01, 0xFF, 0x01, 0xE0, 0x00, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x00, 0x10, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xF8, 0xF0, 0x00, 0x3F, 0x3C, 0x00, 0x07, - 0xCF, 0x00, 0x00, 0xFB, 0xC0, 0x00, 0x1E, 0xF0, 0x00, 0x07, 0xBC, 0x00, - 0x01, 0xEF, 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x1E, 0xF0, 0x00, 0x07, 0xBC, - 0x00, 0x03, 0xCF, 0x00, 0x01, 0xF3, 0xC0, 0x00, 0xF8, 0xFF, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xF8, 0xF0, 0x00, - 0x3F, 0x3C, 0x00, 0x03, 0xCF, 0x00, 0x00, 0xFB, 0xC0, 0x00, 0x1E, 0xF0, - 0x00, 0x07, 0xBC, 0x00, 0x01, 0xEF, 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x1E, - 0xF0, 0x00, 0x07, 0xBC, 0x00, 0x01, 0xEF, 0x00, 0x00, 0x7B, 0xC0, 0x00, - 0x1E, 0xF0, 0x00, 0x07, 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x7F, 0xC0, 0x00, - 0x7F, 0xFF, 0x00, 0x1F, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x81, 0xF8, 0x07, - 0xF0, 0x7C, 0x00, 0x1F, 0x0F, 0x00, 0x01, 0xE3, 0xE0, 0x00, 0x3E, 0x78, - 0x00, 0x03, 0xCF, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x07, 0xC0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFF, - 0xE0, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x7F, 0xFF, 0x00, 0x01, 0xFF, 0xF8, - 0x00, 0x03, 0xFF, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x07, 0xF8, 0x00, 0x00, 0xF7, 0x80, 0x00, 0x3E, 0xF8, 0x00, - 0x07, 0x9F, 0x80, 0x01, 0xF1, 0xFE, 0x01, 0xFC, 0x1F, 0xFF, 0xFF, 0x01, - 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, - 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, - 0x00, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x7D, 0xE0, 0x00, 0x1E, 0x7C, 0x00, 0x0F, 0x9F, - 0x80, 0x07, 0xE3, 0xF8, 0x07, 0xF0, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFC, - 0x00, 0xFF, 0xFC, 0x00, 0x0F, 0xF8, 0x00, 0xF8, 0x00, 0x00, 0xF7, 0xC0, - 0x00, 0x0F, 0x9E, 0x00, 0x00, 0x7C, 0xF8, 0x00, 0x03, 0xC7, 0xC0, 0x00, - 0x3E, 0x1E, 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x0F, 0x07, 0xC0, 0x00, 0xF8, - 0x1E, 0x00, 0x07, 0xC0, 0xF8, 0x00, 0x3C, 0x07, 0xC0, 0x03, 0xE0, 0x1E, - 0x00, 0x1F, 0x00, 0xF8, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x80, 0x1E, 0x00, - 0x7C, 0x00, 0xF8, 0x03, 0xC0, 0x03, 0xC0, 0x1E, 0x00, 0x1F, 0x01, 0xF0, - 0x00, 0xF8, 0x0F, 0x00, 0x03, 0xC0, 0x78, 0x00, 0x1F, 0x07, 0x80, 0x00, - 0xF8, 0x3C, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x1F, 0x1E, 0x00, 0x00, 0x78, - 0xF0, 0x00, 0x03, 0xC7, 0x80, 0x00, 0x1F, 0x78, 0x00, 0x00, 0x7B, 0xC0, - 0x00, 0x03, 0xDE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, - 0x00, 0x3F, 0x00, 0x07, 0xFE, 0x00, 0x0F, 0xC0, 0x01, 0xFF, 0x80, 0x03, - 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xFC, 0x00, 0x1E, 0x7C, 0x00, 0x7F, 0x80, - 0x0F, 0x9F, 0x00, 0x1F, 0xE0, 0x03, 0xE7, 0xC0, 0x07, 0xF8, 0x00, 0xF8, - 0xF0, 0x01, 0xFF, 0x00, 0x3C, 0x3E, 0x00, 0xF3, 0xC0, 0x1F, 0x0F, 0x80, - 0x3C, 0xF0, 0x07, 0xC3, 0xE0, 0x0F, 0x3C, 0x01, 0xF0, 0x78, 0x07, 0xC7, - 0x80, 0x78, 0x1F, 0x01, 0xE1, 0xE0, 0x1E, 0x07, 0xC0, 0x78, 0x78, 0x0F, - 0x80, 0xF0, 0x1E, 0x1E, 0x03, 0xE0, 0x3C, 0x0F, 0x83, 0xC0, 0xF0, 0x0F, - 0x83, 0xC0, 0xF0, 0x3C, 0x03, 0xE0, 0xF0, 0x3C, 0x1F, 0x00, 0x78, 0x3C, - 0x0F, 0x87, 0xC0, 0x1E, 0x1E, 0x01, 0xE1, 0xE0, 0x07, 0x87, 0x80, 0x78, - 0x78, 0x01, 0xF1, 0xE0, 0x1E, 0x1E, 0x00, 0x3C, 0xF8, 0x03, 0xCF, 0x80, - 0x0F, 0x3C, 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x3C, 0xF0, 0x00, 0xFB, - 0xC0, 0x0F, 0xBC, 0x00, 0x1F, 0xF0, 0x01, 0xFF, 0x00, 0x07, 0xF8, 0x00, - 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x03, 0xF8, - 0x00, 0x0F, 0xC0, 0x00, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x00, - 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x01, 0xF3, 0xF0, 0x00, 0x1F, 0x8F, 0x80, 0x00, 0xF8, 0x3E, 0x00, 0x0F, - 0x80, 0xF8, 0x00, 0xF8, 0x07, 0xC0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x00, - 0x7C, 0x07, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x3E, - 0x3E, 0x00, 0x01, 0xF1, 0xF0, 0x00, 0x07, 0xDF, 0x00, 0x00, 0x1F, 0xF0, - 0x00, 0x00, 0xFF, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x07, - 0xDF, 0x00, 0x00, 0x7C, 0x78, 0x00, 0x03, 0xE3, 0xE0, 0x00, 0x3E, 0x0F, - 0x80, 0x03, 0xE0, 0x3E, 0x00, 0x1F, 0x01, 0xF0, 0x01, 0xF0, 0x07, 0xC0, - 0x1F, 0x00, 0x3F, 0x00, 0xF8, 0x00, 0xF8, 0x0F, 0x80, 0x03, 0xE0, 0xF8, - 0x00, 0x1F, 0x8F, 0xC0, 0x00, 0x7C, 0x7C, 0x00, 0x01, 0xF7, 0xC0, 0x00, - 0x0F, 0xC0, 0xFC, 0x00, 0x00, 0xFD, 0xF0, 0x00, 0x03, 0xE7, 0xE0, 0x00, - 0x1F, 0x0F, 0x80, 0x00, 0x7C, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x1F, - 0x00, 0xF8, 0x00, 0x7C, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, - 0x0F, 0x80, 0x7C, 0x00, 0x1E, 0x01, 0xE0, 0x00, 0x7C, 0x0F, 0x80, 0x00, - 0xF8, 0x7C, 0x00, 0x03, 0xE1, 0xE0, 0x00, 0x07, 0xCF, 0x80, 0x00, 0x0F, - 0x3C, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0xFC, - 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3F, 0xFF, - 0xFF, 0xC7, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0xE0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xF8, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xF0, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xFF, - 0xFF, 0xE0, 0x07, 0x00, 0x18, 0x00, 0xE0, 0x07, 0x00, 0x18, 0x00, 0xE0, - 0x07, 0x00, 0x18, 0x00, 0xC0, 0x07, 0x00, 0x38, 0x00, 0xC0, 0x07, 0x00, - 0x38, 0x00, 0xC0, 0x06, 0x00, 0x38, 0x00, 0xC0, 0x06, 0x00, 0x38, 0x01, - 0xC0, 0x06, 0x00, 0x38, 0x01, 0xC0, 0x06, 0x00, 0x30, 0x01, 0xC0, 0x0E, - 0x00, 0x30, 0x01, 0xC0, 0x0E, 0x00, 0x30, 0x01, 0xC0, 0x0E, 0xFF, 0xFF, - 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x3F, - 0x00, 0x0F, 0xC0, 0x07, 0xF8, 0x01, 0xCE, 0x00, 0x73, 0x80, 0x3C, 0x70, - 0x0E, 0x1C, 0x07, 0x87, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x38, 0x07, 0x0E, - 0x01, 0xC7, 0x80, 0x79, 0xC0, 0x0E, 0x70, 0x03, 0xB8, 0x00, 0x70, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x0F, 0x01, 0xE0, 0x3C, 0x07, - 0x00, 0xE0, 0x1C, 0x01, 0xFF, 0x00, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xE0, - 0x3F, 0xFF, 0xF0, 0x7E, 0x03, 0xF8, 0x7C, 0x00, 0xF8, 0x78, 0x00, 0x78, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF8, - 0x00, 0x03, 0xF8, 0x00, 0xFF, 0xF8, 0x0F, 0xFF, 0xF8, 0x3F, 0xFE, 0x78, - 0x7F, 0x80, 0x78, 0xFC, 0x00, 0x78, 0xF8, 0x00, 0x78, 0xF0, 0x00, 0x78, - 0xF0, 0x00, 0xF8, 0xF0, 0x00, 0xF8, 0xF8, 0x03, 0xF8, 0x7E, 0x0F, 0xF8, - 0x7F, 0xFF, 0x7F, 0x3F, 0xFE, 0x3F, 0x1F, 0xFC, 0x3F, 0x07, 0xE0, 0x1F, - 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, - 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x7E, - 0x03, 0xC7, 0xFE, 0x0F, 0x7F, 0xFC, 0x3D, 0xFF, 0xF8, 0xFF, 0x07, 0xF3, - 0xF8, 0x07, 0xCF, 0xC0, 0x0F, 0xBE, 0x00, 0x1E, 0xF8, 0x00, 0x7B, 0xE0, - 0x01, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x01, 0xFF, - 0x80, 0x07, 0xBE, 0x00, 0x1E, 0xFC, 0x00, 0xFB, 0xF8, 0x07, 0xCF, 0xF0, - 0x7F, 0x3B, 0xFF, 0xF8, 0xE7, 0xFF, 0xC3, 0x8F, 0xFE, 0x00, 0x0F, 0xE0, - 0x00, 0x00, 0xFE, 0x00, 0x3F, 0xFC, 0x03, 0xFF, 0xF0, 0x3F, 0xFF, 0xC3, - 0xF0, 0x3F, 0x1F, 0x00, 0xF9, 0xF0, 0x03, 0xCF, 0x00, 0x0F, 0x78, 0x00, - 0x07, 0xC0, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, - 0x1E, 0x00, 0x1E, 0xF0, 0x00, 0xF7, 0xC0, 0x0F, 0x9F, 0x00, 0xF8, 0xFC, - 0x0F, 0xC3, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, 0x3F, 0xFC, 0x00, 0x7F, 0x00, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF0, - 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x01, - 0xFC, 0x1E, 0x0F, 0xFE, 0x3C, 0x3F, 0xFF, 0x78, 0xFF, 0xFF, 0xF3, 0xF8, - 0x3F, 0xE7, 0xC0, 0x1F, 0xDF, 0x00, 0x1F, 0xBE, 0x00, 0x1F, 0x78, 0x00, - 0x3F, 0xF0, 0x00, 0x7F, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, - 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x1F, - 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xFB, 0xC0, 0x01, 0xF7, 0xC0, 0x07, 0xE7, - 0xC0, 0x1F, 0xCF, 0xE0, 0xFF, 0x8F, 0xFF, 0xF7, 0x0F, 0xFF, 0xCE, 0x0F, - 0xFF, 0x1C, 0x07, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x0F, 0xFE, 0x00, 0xFF, - 0xFC, 0x07, 0xFF, 0xF8, 0x1F, 0x83, 0xF0, 0xF8, 0x07, 0xC7, 0xC0, 0x0F, - 0x9E, 0x00, 0x1E, 0x78, 0x00, 0x7B, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xFC, - 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x1E, - 0x7C, 0x00, 0x78, 0xF8, 0x03, 0xE3, 0xF0, 0x3F, 0x07, 0xFF, 0xF8, 0x0F, - 0xFF, 0xE0, 0x1F, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x03, 0xC3, 0xF0, 0xFC, - 0x7F, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x3F, 0xFF, 0xFF, 0xFF, 0x1E, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, - 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, - 0x1E, 0x07, 0x80, 0x00, 0xFC, 0x00, 0x1F, 0xF8, 0xF0, 0xFF, 0xFB, 0xC7, - 0xFF, 0xFF, 0x3F, 0x83, 0xFC, 0xF8, 0x07, 0xF7, 0xC0, 0x0F, 0xDE, 0x00, - 0x1F, 0x78, 0x00, 0x7F, 0xE0, 0x00, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, - 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, - 0x00, 0x3F, 0xC0, 0x00, 0xF7, 0x80, 0x07, 0xDE, 0x00, 0x1F, 0x7C, 0x00, - 0xFC, 0xF8, 0x07, 0xF3, 0xF8, 0x3F, 0xC7, 0xFF, 0xEF, 0x0F, 0xFF, 0x3C, - 0x1F, 0xF8, 0xF0, 0x1F, 0x83, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x79, 0xE0, - 0x01, 0xE7, 0xC0, 0x0F, 0x8F, 0x80, 0xFC, 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, - 0x80, 0xFF, 0xFC, 0x00, 0x7F, 0x80, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, - 0x00, 0xF0, 0xFE, 0x1E, 0x3F, 0xE3, 0xCF, 0xFF, 0x7B, 0xFF, 0xEF, 0xF0, - 0xFF, 0xF8, 0x07, 0xFF, 0x00, 0x7F, 0xC0, 0x0F, 0xF8, 0x01, 0xFE, 0x00, - 0x3F, 0xC0, 0x07, 0xF8, 0x00, 0xFF, 0x00, 0x1F, 0xE0, 0x03, 0xFC, 0x00, - 0x7F, 0x80, 0x0F, 0xF0, 0x01, 0xFE, 0x00, 0x3F, 0xC0, 0x07, 0xF8, 0x00, - 0xFF, 0x00, 0x1F, 0xE0, 0x03, 0xFC, 0x00, 0x7F, 0x80, 0x0F, 0xF0, 0x01, - 0xFE, 0x00, 0x3C, 0xFF, 0xFF, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x1F, - 0xFF, 0xFE, 0xFE, 0xF8, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x1F, 0x3C, 0x01, 0xF1, 0xE0, 0x1F, 0x0F, - 0x01, 0xF0, 0x78, 0x1F, 0x03, 0xC1, 0xF0, 0x1E, 0x1F, 0x00, 0xF1, 0xF0, - 0x07, 0x9F, 0x00, 0x3D, 0xF8, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x7F, - 0x7C, 0x03, 0xF1, 0xF0, 0x1F, 0x07, 0xC0, 0xF0, 0x3E, 0x07, 0x80, 0xF8, - 0x3C, 0x03, 0xC1, 0xE0, 0x1F, 0x0F, 0x00, 0x7C, 0x78, 0x03, 0xE3, 0xC0, - 0x0F, 0x9E, 0x00, 0x3C, 0xF0, 0x01, 0xF7, 0x80, 0x07, 0xC0, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0x00, 0xFC, 0x03, 0xF0, 0xE3, 0xFE, 0x0F, 0xFC, 0xE7, - 0xFF, 0x1F, 0xFE, 0xEF, 0xFF, 0xBF, 0xFE, 0xFE, 0x0F, 0xF8, 0x3F, 0xFC, - 0x07, 0xF0, 0x1F, 0xF8, 0x03, 0xE0, 0x0F, 0xF8, 0x03, 0xE0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0x00, - 0x7E, 0x0E, 0x1F, 0xF8, 0xE7, 0xFF, 0xCE, 0xFF, 0xFE, 0xEF, 0x07, 0xFF, - 0xE0, 0x1F, 0xFC, 0x01, 0xFF, 0x80, 0x0F, 0xF8, 0x00, 0xFF, 0x00, 0x0F, - 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, - 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, - 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x00, 0xFF, 0x00, 0x0F, 0x00, 0xFE, 0x00, 0x07, 0xFF, 0x00, 0x3F, 0xFF, - 0x80, 0xFF, 0xFF, 0x83, 0xF8, 0x3F, 0x87, 0xC0, 0x1F, 0x1F, 0x00, 0x1F, - 0x3C, 0x00, 0x1E, 0x78, 0x00, 0x3D, 0xF0, 0x00, 0x7F, 0xC0, 0x00, 0x7F, - 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF8, - 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xF3, 0xC0, - 0x01, 0xE7, 0xC0, 0x07, 0xC7, 0xC0, 0x1F, 0x0F, 0xE0, 0xFE, 0x0F, 0xFF, - 0xF8, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x03, 0xF8, 0x00, 0x00, 0xFE, - 0x03, 0x8F, 0xFE, 0x0E, 0x7F, 0xFC, 0x3B, 0xFF, 0xF8, 0xFF, 0x87, 0xF3, - 0xF8, 0x07, 0xCF, 0xC0, 0x0F, 0xBE, 0x00, 0x1E, 0xF8, 0x00, 0x7B, 0xE0, - 0x01, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x01, 0xFF, - 0x80, 0x07, 0xBE, 0x00, 0x1E, 0xFC, 0x00, 0xFB, 0xF8, 0x07, 0xCF, 0xF0, - 0x7F, 0x3F, 0xFF, 0xF8, 0xF7, 0xFF, 0xC3, 0xC7, 0xFE, 0x0F, 0x07, 0xE0, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, - 0xFE, 0x00, 0x07, 0xFF, 0x1C, 0x3F, 0xFF, 0x38, 0xFF, 0xFF, 0x73, 0xF8, - 0x3F, 0xE7, 0xC0, 0x1F, 0xDF, 0x00, 0x1F, 0xBE, 0x00, 0x1F, 0x78, 0x00, - 0x3F, 0xF0, 0x00, 0x7F, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, - 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x1F, - 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xFB, 0xC0, 0x01, 0xF7, 0xC0, 0x07, 0xE7, - 0xC0, 0x1F, 0xCF, 0xE0, 0xFF, 0x8F, 0xFF, 0xEF, 0x0F, 0xFF, 0xDE, 0x0F, - 0xFE, 0x3C, 0x07, 0xF0, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x78, 0x00, 0xFE, 0x1F, 0xE7, 0xFE, 0xFF, 0xFF, 0x8F, - 0xC0, 0xF8, 0x0F, 0x80, 0xF8, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0x01, 0xFC, 0x00, 0xFF, 0xF0, - 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x3E, 0x07, 0xE7, 0xC0, 0x3E, 0x78, 0x01, - 0xE7, 0x80, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xFC, - 0x00, 0x1F, 0xFC, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x03, 0xFE, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, - 0x80, 0x1F, 0x7E, 0x07, 0xE7, 0xFF, 0xFE, 0x3F, 0xFF, 0xC1, 0xFF, 0xF0, - 0x03, 0xFC, 0x00, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x8F, 0xFF, - 0xFF, 0xFF, 0xC7, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, - 0xE0, 0x78, 0x1F, 0xC7, 0xF0, 0xFC, 0x1F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, - 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, - 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, - 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x00, 0xFF, 0x00, 0x1F, 0xF0, 0x01, 0xFF, 0x00, 0x3F, 0xF8, 0x07, 0xFF, - 0xE0, 0xFF, 0x7F, 0xFF, 0x77, 0xFF, 0xE7, 0x1F, 0xFC, 0x70, 0x7E, 0x00, - 0x78, 0x00, 0x3E, 0xF0, 0x00, 0x79, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xE3, - 0xC0, 0x07, 0x87, 0xC0, 0x0F, 0x07, 0x80, 0x3C, 0x0F, 0x00, 0x78, 0x1F, - 0x01, 0xF0, 0x1E, 0x03, 0xC0, 0x3C, 0x07, 0x80, 0x7C, 0x1F, 0x00, 0x78, - 0x3C, 0x00, 0xF0, 0x78, 0x01, 0xF1, 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, - 0x80, 0x03, 0xDE, 0x00, 0x07, 0xBC, 0x00, 0x0F, 0x70, 0x00, 0x0F, 0xE0, - 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, - 0xF8, 0x03, 0xE0, 0x07, 0x9E, 0x00, 0xFC, 0x01, 0xE7, 0x80, 0x3F, 0x00, - 0x79, 0xF0, 0x0F, 0xC0, 0x3E, 0x3C, 0x07, 0xF0, 0x0F, 0x0F, 0x01, 0xFE, - 0x03, 0xC3, 0xC0, 0x7F, 0x80, 0xF0, 0x78, 0x1D, 0xE0, 0x78, 0x1E, 0x0F, - 0x38, 0x1E, 0x07, 0x83, 0xCF, 0x07, 0x81, 0xE0, 0xF3, 0xC1, 0xE0, 0x3C, - 0x38, 0xF0, 0xF0, 0x0F, 0x1E, 0x1C, 0x3C, 0x03, 0xC7, 0x87, 0x8F, 0x00, - 0x71, 0xE1, 0xE3, 0x80, 0x1E, 0x70, 0x79, 0xE0, 0x07, 0xBC, 0x0E, 0x78, - 0x01, 0xEF, 0x03, 0xDE, 0x00, 0x3B, 0xC0, 0xF7, 0x00, 0x0F, 0xE0, 0x3F, - 0xC0, 0x03, 0xF8, 0x07, 0xF0, 0x00, 0x7E, 0x01, 0xF8, 0x00, 0x1F, 0x80, - 0x7E, 0x00, 0x07, 0xC0, 0x1F, 0x80, 0x01, 0xF0, 0x03, 0xC0, 0x00, 0x7C, - 0x00, 0x78, 0xF0, 0x03, 0xE1, 0xE0, 0x0F, 0x07, 0xC0, 0x78, 0x0F, 0x03, - 0xE0, 0x1E, 0x0F, 0x00, 0x7C, 0x78, 0x00, 0xF3, 0xE0, 0x01, 0xEF, 0x00, - 0x07, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x03, - 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0xC0, 0x03, 0xCF, 0x00, 0x0F, 0x1E, - 0x00, 0x78, 0x7C, 0x03, 0xE0, 0xF0, 0x0F, 0x03, 0xE0, 0x78, 0x07, 0xC3, - 0xE0, 0x0F, 0x1F, 0x00, 0x3E, 0x78, 0x00, 0x7C, 0x78, 0x00, 0x3D, 0xE0, - 0x01, 0xF7, 0x80, 0x07, 0x8F, 0x00, 0x1E, 0x3C, 0x00, 0xF0, 0xF0, 0x03, - 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x78, 0x1E, 0x01, 0xE0, 0x3C, 0x07, 0x80, - 0xF0, 0x3C, 0x03, 0xC0, 0xF0, 0x07, 0x87, 0xC0, 0x1E, 0x1E, 0x00, 0x78, - 0x78, 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x0F, 0x3C, 0x00, 0x1F, 0xE0, - 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, - 0x3E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x01, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3E, 0x00, 0x0F, 0xF0, 0x00, - 0x3F, 0xC0, 0x00, 0xFE, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x7F, 0xFF, 0xF7, - 0xFF, 0xFF, 0x7F, 0xFF, 0xF7, 0xFF, 0xFF, 0x00, 0x01, 0xE0, 0x00, 0x3E, - 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, - 0x00, 0x07, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, - 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xC0, 0x00, 0x7C, - 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0x01, 0xE0, 0xFC, 0x1F, 0x87, 0x80, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, - 0xC0, 0x78, 0x1E, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0xC0, 0x3C, 0x03, 0x80, - 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, - 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0F, 0x00, 0xFC, 0x1F, 0x80, - 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0x1F, 0x83, 0xF0, 0x0F, 0x00, - 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x1C, 0x03, 0xC0, 0x3E, 0x03, - 0xC0, 0x78, 0x1F, 0x07, 0x80, 0xE0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0x70, 0x1E, 0x1F, 0x83, 0xF0, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0xF0, 0x0D, - 0xFF, 0x01, 0xF0, 0xF8, 0x7C, 0x0F, 0xFD, 0x80, 0x7F, 0x80, 0x03, 0xE0}; - -const GFXglyph FreeSans24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 4, 34, 16, 6, -33}, // 0x21 '!' - {17, 11, 12, 16, 2, -32}, // 0x22 '"' - {34, 24, 33, 26, 1, -31}, // 0x23 '#' - {133, 23, 41, 26, 1, -34}, // 0x24 '$' - {251, 39, 34, 42, 1, -32}, // 0x25 '%' - {417, 28, 34, 31, 2, -32}, // 0x26 '&' - {536, 4, 12, 9, 2, -32}, // 0x27 ''' - {542, 10, 44, 16, 3, -33}, // 0x28 '(' - {597, 10, 44, 16, 2, -33}, // 0x29 ')' - {652, 14, 14, 18, 2, -33}, // 0x2A '*' - {677, 23, 22, 27, 2, -21}, // 0x2B '+' - {741, 4, 12, 13, 4, -4}, // 0x2C ',' - {747, 11, 4, 16, 2, -14}, // 0x2D '-' - {753, 4, 5, 12, 4, -4}, // 0x2E '.' - {756, 13, 35, 13, 0, -33}, // 0x2F '/' - {813, 22, 34, 26, 2, -32}, // 0x30 '0' - {907, 11, 33, 26, 5, -32}, // 0x31 '1' - {953, 22, 33, 26, 2, -32}, // 0x32 '2' - {1044, 23, 34, 26, 1, -32}, // 0x33 '3' - {1142, 23, 33, 26, 1, -32}, // 0x34 '4' - {1237, 22, 34, 26, 2, -32}, // 0x35 '5' - {1331, 22, 34, 26, 2, -32}, // 0x36 '6' - {1425, 21, 33, 26, 2, -32}, // 0x37 '7' - {1512, 22, 34, 26, 2, -32}, // 0x38 '8' - {1606, 21, 34, 26, 2, -32}, // 0x39 '9' - {1696, 4, 25, 12, 4, -24}, // 0x3A ':' - {1709, 4, 32, 12, 4, -24}, // 0x3B ';' - {1725, 23, 23, 27, 2, -22}, // 0x3C '<' - {1792, 23, 12, 27, 2, -16}, // 0x3D '=' - {1827, 23, 23, 27, 2, -22}, // 0x3E '>' - {1894, 20, 35, 26, 4, -34}, // 0x3F '?' - {1982, 43, 42, 48, 2, -34}, // 0x40 '@' - {2208, 30, 34, 31, 1, -33}, // 0x41 'A' - {2336, 25, 34, 31, 4, -33}, // 0x42 'B' - {2443, 29, 36, 33, 2, -34}, // 0x43 'C' - {2574, 27, 34, 33, 4, -33}, // 0x44 'D' - {2689, 24, 34, 30, 4, -33}, // 0x45 'E' - {2791, 22, 34, 28, 4, -33}, // 0x46 'F' - {2885, 31, 36, 36, 2, -34}, // 0x47 'G' - {3025, 26, 34, 34, 4, -33}, // 0x48 'H' - {3136, 4, 34, 13, 5, -33}, // 0x49 'I' - {3153, 19, 35, 25, 2, -33}, // 0x4A 'J' - {3237, 27, 34, 32, 4, -33}, // 0x4B 'K' - {3352, 21, 34, 26, 4, -33}, // 0x4C 'L' - {3442, 32, 34, 40, 4, -33}, // 0x4D 'M' - {3578, 26, 34, 34, 4, -33}, // 0x4E 'N' - {3689, 33, 36, 37, 2, -34}, // 0x4F 'O' - {3838, 24, 34, 31, 4, -33}, // 0x50 'P' - {3940, 33, 38, 37, 2, -34}, // 0x51 'Q' - {4097, 26, 34, 33, 4, -33}, // 0x52 'R' - {4208, 27, 36, 31, 2, -34}, // 0x53 'S' - {4330, 26, 34, 30, 2, -33}, // 0x54 'T' - {4441, 26, 35, 34, 4, -33}, // 0x55 'U' - {4555, 29, 34, 30, 1, -33}, // 0x56 'V' - {4679, 42, 34, 44, 1, -33}, // 0x57 'W' - {4858, 29, 34, 31, 1, -33}, // 0x58 'X' - {4982, 30, 34, 32, 1, -33}, // 0x59 'Y' - {5110, 27, 34, 29, 1, -33}, // 0x5A 'Z' - {5225, 8, 44, 13, 3, -33}, // 0x5B '[' - {5269, 13, 35, 13, 0, -33}, // 0x5C '\' - {5326, 8, 44, 13, 1, -33}, // 0x5D ']' - {5370, 18, 18, 22, 2, -32}, // 0x5E '^' - {5411, 28, 2, 26, -1, 7}, // 0x5F '_' - {5418, 10, 7, 12, 1, -34}, // 0x60 '`' - {5427, 24, 27, 26, 1, -25}, // 0x61 'a' - {5508, 22, 35, 26, 3, -33}, // 0x62 'b' - {5605, 21, 27, 24, 1, -25}, // 0x63 'c' - {5676, 23, 35, 26, 1, -33}, // 0x64 'd' - {5777, 22, 27, 25, 1, -25}, // 0x65 'e' - {5852, 10, 34, 13, 1, -33}, // 0x66 'f' - {5895, 22, 36, 26, 1, -25}, // 0x67 'g' - {5994, 19, 34, 25, 3, -33}, // 0x68 'h' - {6075, 4, 34, 10, 3, -33}, // 0x69 'i' - {6092, 8, 44, 11, 0, -33}, // 0x6A 'j' - {6136, 21, 34, 24, 3, -33}, // 0x6B 'k' - {6226, 4, 34, 10, 3, -33}, // 0x6C 'l' - {6243, 32, 26, 38, 3, -25}, // 0x6D 'm' - {6347, 20, 26, 25, 3, -25}, // 0x6E 'n' - {6412, 23, 27, 25, 1, -25}, // 0x6F 'o' - {6490, 22, 35, 26, 3, -25}, // 0x70 'p' - {6587, 23, 35, 26, 1, -25}, // 0x71 'q' - {6688, 12, 26, 16, 3, -25}, // 0x72 'r' - {6727, 20, 27, 23, 1, -25}, // 0x73 's' - {6795, 10, 32, 13, 1, -30}, // 0x74 't' - {6835, 20, 26, 25, 3, -24}, // 0x75 'u' - {6900, 23, 25, 23, 0, -24}, // 0x76 'v' - {6972, 34, 25, 34, 0, -24}, // 0x77 'w' - {7079, 22, 25, 22, 0, -24}, // 0x78 'x' - {7148, 22, 35, 22, 0, -24}, // 0x79 'y' - {7245, 20, 25, 23, 1, -24}, // 0x7A 'z' - {7308, 11, 44, 16, 2, -33}, // 0x7B '{' - {7369, 3, 44, 12, 4, -33}, // 0x7C '|' - {7386, 11, 44, 16, 2, -33}, // 0x7D '}' - {7447, 19, 7, 24, 2, -19}}; // 0x7E '~' - -const GFXfont FreeSans24pt7b PROGMEM = {(uint8_t *)FreeSans24pt7bBitmaps, - (GFXglyph *)FreeSans24pt7bGlyphs, 0x20, - 0x7E, 56}; - -// Approx. 8136 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans9pt7b.h deleted file mode 100644 index 91c33b0..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans9pt7b.h +++ /dev/null @@ -1,203 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xF8, 0xC0, 0xDE, 0xF7, 0x20, 0x09, 0x86, 0x41, 0x91, 0xFF, - 0x13, 0x04, 0xC3, 0x20, 0xC8, 0xFF, 0x89, 0x82, 0x61, 0x90, 0x10, 0x1F, - 0x14, 0xDA, 0x3D, 0x1E, 0x83, 0x40, 0x78, 0x17, 0x08, 0xF4, 0x7A, 0x35, - 0x33, 0xF0, 0x40, 0x20, 0x38, 0x10, 0xEC, 0x20, 0xC6, 0x20, 0xC6, 0x40, - 0xC6, 0x40, 0x6C, 0x80, 0x39, 0x00, 0x01, 0x3C, 0x02, 0x77, 0x02, 0x63, - 0x04, 0x63, 0x04, 0x77, 0x08, 0x3C, 0x0E, 0x06, 0x60, 0xCC, 0x19, 0x81, - 0xE0, 0x18, 0x0F, 0x03, 0x36, 0xC2, 0xD8, 0x73, 0x06, 0x31, 0xE3, 0xC4, - 0xFE, 0x13, 0x26, 0x6C, 0xCC, 0xCC, 0xC4, 0x66, 0x23, 0x10, 0x8C, 0x46, - 0x63, 0x33, 0x33, 0x32, 0x66, 0x4C, 0x80, 0x25, 0x7E, 0xA5, 0x00, 0x30, - 0xC3, 0x3F, 0x30, 0xC3, 0x0C, 0xD6, 0xF0, 0xC0, 0x08, 0x44, 0x21, 0x10, - 0x84, 0x42, 0x11, 0x08, 0x00, 0x3C, 0x66, 0x42, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC3, 0x42, 0x66, 0x3C, 0x11, 0x3F, 0x33, 0x33, 0x33, 0x33, - 0x30, 0x3E, 0x31, 0xB0, 0x78, 0x30, 0x18, 0x1C, 0x1C, 0x1C, 0x18, 0x18, - 0x10, 0x08, 0x07, 0xF8, 0x3C, 0x66, 0xC3, 0xC3, 0x03, 0x06, 0x1C, 0x07, - 0x03, 0xC3, 0xC3, 0x66, 0x3C, 0x0C, 0x18, 0x71, 0x62, 0xC9, 0xA3, 0x46, - 0xFE, 0x18, 0x30, 0x60, 0xC0, 0x7F, 0x20, 0x10, 0x08, 0x08, 0x07, 0xF3, - 0x8C, 0x03, 0x01, 0x80, 0xF0, 0x6C, 0x63, 0xE0, 0x1E, 0x31, 0x98, 0x78, - 0x0C, 0x06, 0xF3, 0x8D, 0x83, 0xC1, 0xE0, 0xD0, 0x6C, 0x63, 0xE0, 0xFF, - 0x03, 0x02, 0x06, 0x04, 0x0C, 0x08, 0x18, 0x18, 0x18, 0x10, 0x30, 0x30, - 0x3E, 0x31, 0xB0, 0x78, 0x3C, 0x1B, 0x18, 0xF8, 0xC6, 0xC1, 0xE0, 0xF0, - 0x6C, 0x63, 0xE0, 0x3C, 0x66, 0xC2, 0xC3, 0xC3, 0xC3, 0x67, 0x3B, 0x03, - 0x03, 0xC2, 0x66, 0x3C, 0xC0, 0x00, 0x30, 0xC0, 0x00, 0x00, 0x64, 0xA0, - 0x00, 0x81, 0xC7, 0x8E, 0x0C, 0x07, 0x80, 0x70, 0x0E, 0x01, 0x80, 0xFF, - 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x70, 0x0E, 0x01, 0xC0, 0x18, 0x38, 0x71, - 0xC0, 0x80, 0x00, 0x3E, 0x31, 0xB0, 0x78, 0x30, 0x18, 0x18, 0x38, 0x18, - 0x18, 0x0C, 0x00, 0x00, 0x01, 0x80, 0x03, 0xF0, 0x06, 0x0E, 0x06, 0x01, - 0x86, 0x00, 0x66, 0x1D, 0xBB, 0x31, 0xCF, 0x18, 0xC7, 0x98, 0x63, 0xCC, - 0x31, 0xE6, 0x11, 0xB3, 0x99, 0xCC, 0xF7, 0x86, 0x00, 0x01, 0x80, 0x00, - 0x70, 0x40, 0x0F, 0xE0, 0x06, 0x00, 0xF0, 0x0F, 0x00, 0x90, 0x19, 0x81, - 0x98, 0x10, 0x83, 0x0C, 0x3F, 0xC2, 0x04, 0x60, 0x66, 0x06, 0xC0, 0x30, - 0xFF, 0x18, 0x33, 0x03, 0x60, 0x6C, 0x0D, 0x83, 0x3F, 0xC6, 0x06, 0xC0, - 0x78, 0x0F, 0x01, 0xE0, 0x6F, 0xF8, 0x1F, 0x86, 0x19, 0x81, 0xA0, 0x3C, - 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x68, 0x0D, 0x83, 0x18, 0x61, 0xF0, - 0xFF, 0x18, 0x33, 0x03, 0x60, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, - 0x78, 0x0F, 0x03, 0x60, 0xCF, 0xF0, 0xFF, 0xE0, 0x30, 0x18, 0x0C, 0x06, - 0x03, 0xFD, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0F, 0xF8, 0xFF, 0xC0, 0xC0, - 0xC0, 0xC0, 0xC0, 0xFE, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x0F, 0x83, - 0x0E, 0x60, 0x66, 0x03, 0xC0, 0x0C, 0x00, 0xC1, 0xFC, 0x03, 0xC0, 0x36, - 0x03, 0x60, 0x73, 0x0F, 0x0F, 0x10, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, - 0x07, 0x80, 0xFF, 0xFE, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x06, - 0xFF, 0xFF, 0xFF, 0xC0, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x07, - 0x8F, 0x1E, 0x27, 0x80, 0xC0, 0xD8, 0x33, 0x0C, 0x63, 0x0C, 0xC1, 0xB8, - 0x3F, 0x07, 0x30, 0xC3, 0x18, 0x63, 0x06, 0x60, 0x6C, 0x0C, 0xC0, 0xC0, - 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xFF, 0xE0, - 0x3F, 0x01, 0xFC, 0x1F, 0xE0, 0xFD, 0x05, 0xEC, 0x6F, 0x63, 0x79, 0x13, - 0xCD, 0x9E, 0x6C, 0xF1, 0x47, 0x8E, 0x3C, 0x71, 0x80, 0xE0, 0x7C, 0x0F, - 0xC1, 0xE8, 0x3D, 0x87, 0x98, 0xF1, 0x1E, 0x33, 0xC3, 0x78, 0x6F, 0x07, - 0xE0, 0x7C, 0x0E, 0x0F, 0x81, 0x83, 0x18, 0x0C, 0xC0, 0x6C, 0x01, 0xE0, - 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1B, 0x01, 0x98, 0x0C, 0x60, 0xC0, 0xF8, - 0x00, 0xFF, 0x30, 0x6C, 0x0F, 0x03, 0xC0, 0xF0, 0x6F, 0xF3, 0x00, 0xC0, - 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x00, 0x0F, 0x81, 0x83, 0x18, 0x0C, 0xC0, - 0x6C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1B, 0x01, 0x98, 0x6C, - 0x60, 0xC0, 0xFB, 0x00, 0x08, 0xFF, 0x8C, 0x0E, 0xC0, 0x6C, 0x06, 0xC0, - 0x6C, 0x0C, 0xFF, 0x8C, 0x0E, 0xC0, 0x6C, 0x06, 0xC0, 0x6C, 0x06, 0xC0, - 0x70, 0x3F, 0x18, 0x6C, 0x0F, 0x03, 0xC0, 0x1E, 0x01, 0xF0, 0x0E, 0x00, - 0xF0, 0x3C, 0x0D, 0x86, 0x3F, 0x00, 0xFF, 0x86, 0x03, 0x01, 0x80, 0xC0, - 0x60, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x78, 0x0F, - 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xB0, 0x61, 0xF0, 0xC0, 0x6C, 0x0D, 0x81, 0x10, 0x63, 0x0C, 0x61, 0x04, - 0x60, 0xCC, 0x19, 0x01, 0x60, 0x3C, 0x07, 0x00, 0x60, 0xC1, 0x81, 0x30, - 0xE1, 0x98, 0x70, 0xCC, 0x28, 0x66, 0x26, 0x21, 0x13, 0x30, 0xC8, 0x98, - 0x6C, 0x4C, 0x14, 0x34, 0x0A, 0x1A, 0x07, 0x07, 0x03, 0x03, 0x80, 0x81, - 0x80, 0x60, 0x63, 0x0C, 0x30, 0xC1, 0x98, 0x0F, 0x00, 0xE0, 0x06, 0x00, - 0xF0, 0x19, 0x01, 0x98, 0x30, 0xC6, 0x0E, 0x60, 0x60, 0xC0, 0x36, 0x06, - 0x30, 0xC3, 0x0C, 0x19, 0x81, 0xD8, 0x0F, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x00, 0xFF, 0xC0, 0x60, 0x30, 0x0C, 0x06, 0x03, - 0x01, 0xC0, 0x60, 0x30, 0x18, 0x06, 0x03, 0x00, 0xFF, 0xC0, 0xFB, 0x6D, - 0xB6, 0xDB, 0x6D, 0xB6, 0xE0, 0x84, 0x10, 0x84, 0x10, 0x84, 0x10, 0x84, - 0x10, 0x80, 0xED, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0xE0, 0x30, 0x60, 0xA2, - 0x44, 0xD8, 0xA1, 0x80, 0xFF, 0xC0, 0xC6, 0x30, 0x7E, 0x71, 0xB0, 0xC0, - 0x60, 0xF3, 0xDB, 0x0D, 0x86, 0xC7, 0x3D, 0xC0, 0xC0, 0x60, 0x30, 0x1B, - 0xCE, 0x36, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x7C, 0x6D, 0xE0, 0x3C, - 0x66, 0xC3, 0xC0, 0xC0, 0xC0, 0xC0, 0xC3, 0x66, 0x3C, 0x03, 0x03, 0x03, - 0x3B, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x67, 0x3B, 0x3C, 0x66, - 0xC3, 0xC3, 0xFF, 0xC0, 0xC0, 0xC3, 0x66, 0x3C, 0x36, 0x6F, 0x66, 0x66, - 0x66, 0x66, 0x60, 0x3B, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x67, - 0x3B, 0x03, 0x03, 0xC6, 0x7C, 0xC0, 0xC0, 0xC0, 0xDE, 0xE3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xFF, 0xFF, 0xC0, 0x30, 0x03, - 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0xE0, 0xC0, 0x60, 0x30, 0x18, 0x4C, - 0x46, 0x63, 0x61, 0xF0, 0xEC, 0x62, 0x31, 0x98, 0x6C, 0x30, 0xFF, 0xFF, - 0xFF, 0xC0, 0xDE, 0xF7, 0x1C, 0xF0, 0xC7, 0x86, 0x3C, 0x31, 0xE1, 0x8F, - 0x0C, 0x78, 0x63, 0xC3, 0x1E, 0x18, 0xC0, 0xDE, 0xE3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x3C, 0x66, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0x66, 0x3C, 0xDE, 0x71, 0xB0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, - 0xE3, 0x6F, 0x30, 0x18, 0x0C, 0x00, 0x3B, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0x67, 0x3B, 0x03, 0x03, 0x03, 0xDF, 0x31, 0x8C, 0x63, 0x18, - 0xC6, 0x00, 0x3E, 0xE3, 0xC0, 0xC0, 0xE0, 0x3C, 0x07, 0xC3, 0xE3, 0x7E, - 0x66, 0xF6, 0x66, 0x66, 0x66, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC7, 0x7B, 0xC1, 0xA0, 0x98, 0xCC, 0x42, 0x21, 0xB0, 0xD0, - 0x28, 0x1C, 0x0C, 0x00, 0xC6, 0x1E, 0x38, 0x91, 0xC4, 0xCA, 0x66, 0xD3, - 0x16, 0xD0, 0xA6, 0x87, 0x1C, 0x38, 0xC0, 0xC6, 0x00, 0x43, 0x62, 0x36, - 0x1C, 0x18, 0x1C, 0x3C, 0x26, 0x62, 0x43, 0xC1, 0x21, 0x98, 0xCC, 0x42, - 0x61, 0xB0, 0xD0, 0x38, 0x1C, 0x0C, 0x06, 0x03, 0x01, 0x03, 0x00, 0xFE, - 0x0C, 0x30, 0xC1, 0x86, 0x18, 0x20, 0xC1, 0xFC, 0x36, 0x66, 0x66, 0x6E, - 0xCE, 0x66, 0x66, 0x66, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xC6, 0x66, - 0x66, 0x67, 0x37, 0x66, 0x66, 0x66, 0xC0, 0x61, 0x24, 0x38}; - -const GFXglyph FreeSans9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 2, 13, 6, 2, -12}, // 0x21 '!' - {4, 5, 4, 6, 1, -12}, // 0x22 '"' - {7, 10, 12, 10, 0, -11}, // 0x23 '#' - {22, 9, 16, 10, 1, -13}, // 0x24 '$' - {40, 16, 13, 16, 1, -12}, // 0x25 '%' - {66, 11, 13, 12, 1, -12}, // 0x26 '&' - {84, 2, 4, 4, 1, -12}, // 0x27 ''' - {85, 4, 17, 6, 1, -12}, // 0x28 '(' - {94, 4, 17, 6, 1, -12}, // 0x29 ')' - {103, 5, 5, 7, 1, -12}, // 0x2A '*' - {107, 6, 8, 11, 3, -7}, // 0x2B '+' - {113, 2, 4, 5, 2, 0}, // 0x2C ',' - {114, 4, 1, 6, 1, -4}, // 0x2D '-' - {115, 2, 1, 5, 1, 0}, // 0x2E '.' - {116, 5, 13, 5, 0, -12}, // 0x2F '/' - {125, 8, 13, 10, 1, -12}, // 0x30 '0' - {138, 4, 13, 10, 3, -12}, // 0x31 '1' - {145, 9, 13, 10, 1, -12}, // 0x32 '2' - {160, 8, 13, 10, 1, -12}, // 0x33 '3' - {173, 7, 13, 10, 2, -12}, // 0x34 '4' - {185, 9, 13, 10, 1, -12}, // 0x35 '5' - {200, 9, 13, 10, 1, -12}, // 0x36 '6' - {215, 8, 13, 10, 0, -12}, // 0x37 '7' - {228, 9, 13, 10, 1, -12}, // 0x38 '8' - {243, 8, 13, 10, 1, -12}, // 0x39 '9' - {256, 2, 10, 5, 1, -9}, // 0x3A ':' - {259, 3, 12, 5, 1, -8}, // 0x3B ';' - {264, 9, 9, 11, 1, -8}, // 0x3C '<' - {275, 9, 4, 11, 1, -5}, // 0x3D '=' - {280, 9, 9, 11, 1, -8}, // 0x3E '>' - {291, 9, 13, 10, 1, -12}, // 0x3F '?' - {306, 17, 16, 18, 1, -12}, // 0x40 '@' - {340, 12, 13, 12, 0, -12}, // 0x41 'A' - {360, 11, 13, 12, 1, -12}, // 0x42 'B' - {378, 11, 13, 13, 1, -12}, // 0x43 'C' - {396, 11, 13, 13, 1, -12}, // 0x44 'D' - {414, 9, 13, 11, 1, -12}, // 0x45 'E' - {429, 8, 13, 11, 1, -12}, // 0x46 'F' - {442, 12, 13, 14, 1, -12}, // 0x47 'G' - {462, 11, 13, 13, 1, -12}, // 0x48 'H' - {480, 2, 13, 5, 2, -12}, // 0x49 'I' - {484, 7, 13, 10, 1, -12}, // 0x4A 'J' - {496, 11, 13, 12, 1, -12}, // 0x4B 'K' - {514, 8, 13, 10, 1, -12}, // 0x4C 'L' - {527, 13, 13, 15, 1, -12}, // 0x4D 'M' - {549, 11, 13, 13, 1, -12}, // 0x4E 'N' - {567, 13, 13, 14, 1, -12}, // 0x4F 'O' - {589, 10, 13, 12, 1, -12}, // 0x50 'P' - {606, 13, 14, 14, 1, -12}, // 0x51 'Q' - {629, 12, 13, 13, 1, -12}, // 0x52 'R' - {649, 10, 13, 12, 1, -12}, // 0x53 'S' - {666, 9, 13, 11, 1, -12}, // 0x54 'T' - {681, 11, 13, 13, 1, -12}, // 0x55 'U' - {699, 11, 13, 12, 0, -12}, // 0x56 'V' - {717, 17, 13, 17, 0, -12}, // 0x57 'W' - {745, 12, 13, 12, 0, -12}, // 0x58 'X' - {765, 12, 13, 12, 0, -12}, // 0x59 'Y' - {785, 10, 13, 11, 1, -12}, // 0x5A 'Z' - {802, 3, 17, 5, 1, -12}, // 0x5B '[' - {809, 5, 13, 5, 0, -12}, // 0x5C '\' - {818, 3, 17, 5, 0, -12}, // 0x5D ']' - {825, 7, 7, 8, 1, -12}, // 0x5E '^' - {832, 10, 1, 10, 0, 3}, // 0x5F '_' - {834, 4, 3, 5, 0, -12}, // 0x60 '`' - {836, 9, 10, 10, 1, -9}, // 0x61 'a' - {848, 9, 13, 10, 1, -12}, // 0x62 'b' - {863, 8, 10, 9, 1, -9}, // 0x63 'c' - {873, 8, 13, 10, 1, -12}, // 0x64 'd' - {886, 8, 10, 10, 1, -9}, // 0x65 'e' - {896, 4, 13, 5, 1, -12}, // 0x66 'f' - {903, 8, 14, 10, 1, -9}, // 0x67 'g' - {917, 8, 13, 10, 1, -12}, // 0x68 'h' - {930, 2, 13, 4, 1, -12}, // 0x69 'i' - {934, 4, 17, 4, 0, -12}, // 0x6A 'j' - {943, 9, 13, 9, 1, -12}, // 0x6B 'k' - {958, 2, 13, 4, 1, -12}, // 0x6C 'l' - {962, 13, 10, 15, 1, -9}, // 0x6D 'm' - {979, 8, 10, 10, 1, -9}, // 0x6E 'n' - {989, 8, 10, 10, 1, -9}, // 0x6F 'o' - {999, 9, 13, 10, 1, -9}, // 0x70 'p' - {1014, 8, 13, 10, 1, -9}, // 0x71 'q' - {1027, 5, 10, 6, 1, -9}, // 0x72 'r' - {1034, 8, 10, 9, 1, -9}, // 0x73 's' - {1044, 4, 12, 5, 1, -11}, // 0x74 't' - {1050, 8, 10, 10, 1, -9}, // 0x75 'u' - {1060, 9, 10, 9, 0, -9}, // 0x76 'v' - {1072, 13, 10, 13, 0, -9}, // 0x77 'w' - {1089, 8, 10, 9, 0, -9}, // 0x78 'x' - {1099, 9, 14, 9, 0, -9}, // 0x79 'y' - {1115, 7, 10, 9, 1, -9}, // 0x7A 'z' - {1124, 4, 17, 6, 1, -12}, // 0x7B '{' - {1133, 2, 17, 4, 2, -12}, // 0x7C '|' - {1138, 4, 17, 6, 1, -12}, // 0x7D '}' - {1147, 7, 3, 9, 1, -7}}; // 0x7E '~' - -const GFXfont FreeSans9pt7b PROGMEM = {(uint8_t *)FreeSans9pt7bBitmaps, - (GFXglyph *)FreeSans9pt7bGlyphs, 0x20, - 0x7E, 22}; - -// Approx. 1822 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h deleted file mode 100644 index c1d6ef4..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h +++ /dev/null @@ -1,290 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0x76, 0x66, 0x60, 0xFF, 0xF0, 0xF3, 0xFC, 0xFF, - 0x3F, 0xCF, 0x61, 0x98, 0x60, 0x0E, 0x70, 0x73, 0x83, 0x18, 0xFF, 0xF7, - 0xFF, 0xBF, 0xFC, 0x73, 0x83, 0x18, 0x18, 0xC7, 0xFF, 0xBF, 0xFD, 0xFF, - 0xE3, 0x18, 0x39, 0xC1, 0xCE, 0x0E, 0x70, 0x02, 0x00, 0x7E, 0x0F, 0xF8, - 0x7F, 0xE7, 0xAF, 0xB9, 0x3D, 0xC8, 0x0F, 0x40, 0x3F, 0x00, 0xFF, 0x00, - 0xFC, 0x05, 0xFF, 0x27, 0xF9, 0x3F, 0xEB, 0xEF, 0xFE, 0x3F, 0xE0, 0x7C, - 0x00, 0x80, 0x04, 0x00, 0x3C, 0x06, 0x0F, 0xC1, 0x81, 0xFC, 0x30, 0x73, - 0x8C, 0x0C, 0x31, 0x81, 0xCE, 0x60, 0x1F, 0xCC, 0x03, 0xF3, 0x00, 0x3C, - 0x67, 0x80, 0x19, 0xF8, 0x02, 0x7F, 0x80, 0xCE, 0x70, 0x11, 0x86, 0x06, - 0x39, 0xC1, 0x87, 0xF8, 0x30, 0x7E, 0x0C, 0x07, 0x80, 0x07, 0x80, 0x1F, - 0xC0, 0x3F, 0xE0, 0x3C, 0xE0, 0x3C, 0xE0, 0x3E, 0xE0, 0x0F, 0xC0, 0x07, - 0x00, 0x3F, 0x8C, 0x7F, 0xCC, 0xF1, 0xFC, 0xF0, 0xF8, 0xF0, 0x78, 0xF8, - 0xF8, 0x7F, 0xFC, 0x3F, 0xDE, 0x1F, 0x8E, 0xFF, 0xFF, 0x66, 0x0C, 0x73, - 0x8E, 0x71, 0xC7, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x1C, 0x71, 0xC3, - 0x8E, 0x18, 0x70, 0xC3, 0x87, 0x1C, 0x38, 0xE3, 0x87, 0x1C, 0x71, 0xC7, - 0x1C, 0x71, 0xCE, 0x38, 0xE7, 0x1C, 0x63, 0x80, 0x10, 0x23, 0x5F, 0xF3, - 0x87, 0x1B, 0x14, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x0F, 0xFF, 0xFF, 0xFF, - 0xF8, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x00, 0xFF, 0xF3, 0x36, 0xC0, 0xFF, - 0xFF, 0xC0, 0xFF, 0xF0, 0x0C, 0x30, 0x86, 0x18, 0x61, 0x0C, 0x30, 0xC2, - 0x18, 0x61, 0x84, 0x30, 0xC0, 0x1F, 0x83, 0xFC, 0x7F, 0xE7, 0x9E, 0xF0, - 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, - 0xF7, 0x9E, 0x7F, 0xE3, 0xFC, 0x0F, 0x00, 0x06, 0x1C, 0x7F, 0xFF, 0xE3, - 0xC7, 0x8F, 0x1E, 0x3C, 0x78, 0xF1, 0xE3, 0xC7, 0x8F, 0x1E, 0x1F, 0x83, - 0xFC, 0x7F, 0xEF, 0x9F, 0xF0, 0xFF, 0x0F, 0x00, 0xF0, 0x0F, 0x01, 0xE0, - 0x3C, 0x0F, 0x81, 0xE0, 0x3C, 0x03, 0x80, 0x7F, 0xF7, 0xFF, 0x7F, 0xF0, - 0x1F, 0x07, 0xFC, 0xFF, 0xEF, 0x1E, 0xF1, 0xE0, 0x1E, 0x03, 0xC0, 0x78, - 0x07, 0xC0, 0x1E, 0x00, 0xF0, 0x0F, 0xF0, 0xFF, 0x1F, 0x7F, 0xE7, 0xFC, - 0x1F, 0x80, 0x03, 0xC0, 0xF8, 0x1F, 0x07, 0xE1, 0xBC, 0x27, 0x8C, 0xF3, - 0x1E, 0x63, 0xD8, 0x7B, 0xFF, 0xFF, 0xFF, 0xFE, 0x07, 0x80, 0xF0, 0x1E, - 0x03, 0xC0, 0x3F, 0xE7, 0xFE, 0x7F, 0xE7, 0x00, 0x60, 0x06, 0xF8, 0x7F, - 0xCF, 0xFE, 0xF1, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xFE, 0x1E, 0xFF, - 0xE7, 0xFC, 0x3F, 0x00, 0x0F, 0x83, 0xFC, 0x7F, 0xE7, 0x9F, 0xF0, 0x0F, - 0x78, 0xFF, 0xCF, 0xFE, 0xF9, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xF7, - 0x9F, 0x7F, 0xE3, 0xFC, 0x0F, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, - 0x1C, 0x07, 0x01, 0xE0, 0x38, 0x0F, 0x01, 0xC0, 0x78, 0x0F, 0x01, 0xE0, - 0x38, 0x0F, 0x01, 0xE0, 0x3C, 0x00, 0x0F, 0x03, 0xFC, 0x7F, 0xC7, 0x9E, - 0x70, 0xE7, 0x0E, 0x39, 0xC1, 0xF8, 0x3F, 0xC7, 0x9E, 0xF0, 0xFF, 0x0F, - 0xF0, 0xFF, 0x9F, 0x7F, 0xE3, 0xFC, 0x1F, 0x80, 0x1F, 0x03, 0xFC, 0x7F, - 0xEF, 0x9E, 0xF0, 0xEF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF9, 0xF7, 0xFF, 0x3F, - 0xF1, 0xEF, 0x00, 0xEF, 0x1E, 0x7F, 0xE7, 0xFC, 0x1F, 0x00, 0xFF, 0xF0, - 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0x11, 0x6C, - 0x00, 0x10, 0x07, 0x03, 0xF1, 0xFC, 0x7E, 0x0F, 0x80, 0xE0, 0x0F, 0xC0, - 0x3F, 0x80, 0x7F, 0x00, 0xF0, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x0E, 0x00, 0xFC, - 0x07, 0xF0, 0x0F, 0xE0, 0x1F, 0x00, 0xF0, 0x7F, 0x1F, 0x8F, 0xE0, 0xF0, - 0x08, 0x00, 0x1F, 0x07, 0xFC, 0x7F, 0xEF, 0x9F, 0xF0, 0xFF, 0x0F, 0x00, - 0xF0, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x0E, 0x00, 0xE0, 0x00, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x00, 0xFE, 0x00, 0x1F, 0xFC, 0x03, 0xC0, - 0xF0, 0x38, 0x01, 0xC3, 0x80, 0x07, 0x18, 0x3D, 0x99, 0x87, 0xEC, 0x6C, - 0x71, 0xC3, 0xC3, 0x06, 0x1E, 0x18, 0x30, 0xF1, 0x81, 0x87, 0x8C, 0x18, - 0x7C, 0x60, 0xC3, 0x63, 0x8E, 0x3B, 0x8F, 0xDF, 0x8C, 0x3C, 0xF0, 0x70, - 0x00, 0x01, 0xC0, 0x00, 0x07, 0x80, 0x80, 0x1F, 0xFE, 0x00, 0x1F, 0xC0, - 0x00, 0x03, 0xE0, 0x03, 0xE0, 0x03, 0xE0, 0x07, 0xF0, 0x07, 0xF0, 0x07, - 0x70, 0x0F, 0x78, 0x0E, 0x78, 0x0E, 0x38, 0x1E, 0x3C, 0x1C, 0x3C, 0x3F, - 0xFC, 0x3F, 0xFE, 0x3F, 0xFE, 0x78, 0x0E, 0x78, 0x0F, 0x70, 0x0F, 0xF0, - 0x07, 0xFF, 0xC3, 0xFF, 0xCF, 0xFF, 0x3C, 0x3E, 0xF0, 0x7B, 0xC1, 0xEF, - 0x0F, 0xBF, 0xFC, 0xFF, 0xE3, 0xFF, 0xCF, 0x07, 0xBC, 0x0F, 0xF0, 0x3F, - 0xC0, 0xFF, 0x07, 0xFF, 0xFE, 0xFF, 0xFB, 0xFF, 0x80, 0x07, 0xE0, 0x1F, - 0xF8, 0x3F, 0xFC, 0x7C, 0x3E, 0x78, 0x1F, 0xF8, 0x0F, 0xF0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF8, 0x0F, 0x78, - 0x1F, 0x7C, 0x3E, 0x3F, 0xFE, 0x1F, 0xFC, 0x07, 0xF0, 0xFF, 0xE1, 0xFF, - 0xE3, 0xFF, 0xE7, 0x83, 0xEF, 0x03, 0xDE, 0x07, 0xFC, 0x07, 0xF8, 0x0F, - 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x03, 0xFE, 0x07, 0xBC, - 0x1F, 0x7F, 0xFC, 0xFF, 0xF1, 0xFF, 0x80, 0xFF, 0xF7, 0xFF, 0xBF, 0xFD, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1F, 0xFC, 0xFF, 0xE7, 0xFF, 0x3C, - 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0xFE, 0xFF, 0xEF, 0xFE, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0x03, 0xF0, 0x0F, 0xFC, 0x3F, 0xFE, 0x3E, 0x1F, - 0x78, 0x07, 0x78, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x7F, 0xF0, 0x7F, - 0xF0, 0x7F, 0xF0, 0x07, 0x78, 0x07, 0x7C, 0x0F, 0x3E, 0x1F, 0x3F, 0xFB, - 0x0F, 0xFB, 0x03, 0xE3, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, - 0x3F, 0xC0, 0xFF, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xFC, - 0x0F, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xF0, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0xE0, 0x3C, - 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, - 0xF8, 0xFF, 0x1F, 0xE3, 0xFC, 0x7B, 0xFE, 0x7F, 0xC3, 0xE0, 0xF0, 0x3E, - 0xF0, 0x3C, 0xF0, 0x78, 0xF0, 0xF0, 0xF1, 0xE0, 0xF3, 0xC0, 0xF7, 0x80, - 0xFF, 0x00, 0xFF, 0x80, 0xFF, 0x80, 0xFB, 0xC0, 0xF1, 0xE0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0x78, 0xF0, 0x3C, 0xF0, 0x3E, 0xF0, 0x1E, 0xF0, 0x1E, - 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0xFF, 0xFF, 0xFF, 0xFC, 0xF8, - 0x1F, 0xFE, 0x0F, 0xFF, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0xFF, 0xE1, 0xFF, - 0xF9, 0xFF, 0xFC, 0xEF, 0xFE, 0x77, 0xFB, 0x3B, 0xFD, 0xDD, 0xFE, 0xFC, - 0xFF, 0x7E, 0x7F, 0x9F, 0x3F, 0xCF, 0x9F, 0xE7, 0x8F, 0xF3, 0xC7, 0xF8, - 0xE3, 0xC0, 0xF0, 0x1F, 0xF0, 0x3F, 0xF0, 0x7F, 0xE0, 0xFF, 0xE1, 0xFF, - 0xC3, 0xFD, 0xC7, 0xFB, 0x8F, 0xF3, 0x9F, 0xE7, 0x3F, 0xC7, 0x7F, 0x8F, - 0xFF, 0x0F, 0xFE, 0x1F, 0xFC, 0x1F, 0xF8, 0x1F, 0xF0, 0x3F, 0xE0, 0x3C, - 0x03, 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x87, 0xC7, 0xC7, 0x80, 0xF3, 0xC0, - 0x7B, 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x01, 0xFE, - 0x00, 0xF7, 0x80, 0xF3, 0xC0, 0x78, 0xF0, 0xF8, 0x7F, 0xFC, 0x1F, 0xFC, - 0x03, 0xF8, 0x00, 0xFF, 0xE3, 0xFF, 0xEF, 0xFF, 0xBC, 0x1F, 0xF0, 0x3F, - 0xC0, 0xFF, 0x03, 0xFC, 0x1F, 0xFF, 0xFB, 0xFF, 0xCF, 0xFE, 0x3C, 0x00, - 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x00, 0x03, - 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x87, 0xC7, 0xC7, 0x80, 0xF3, 0xC0, 0x7B, - 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x01, 0xFE, 0x04, - 0xF7, 0x87, 0xF3, 0xC3, 0xF8, 0xF0, 0xF8, 0x7F, 0xFC, 0x1F, 0xFF, 0x83, - 0xF1, 0x80, 0x00, 0x00, 0xFF, 0xF8, 0xFF, 0xFC, 0xFF, 0xFC, 0xF0, 0x3E, - 0xF0, 0x1E, 0xF0, 0x1E, 0xF0, 0x1E, 0xF0, 0x3C, 0xFF, 0xF8, 0xFF, 0xF0, - 0xFF, 0xF8, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, - 0xF0, 0x3C, 0xF0, 0x1F, 0x0F, 0xC0, 0x7F, 0xE1, 0xFF, 0xE7, 0xC3, 0xEF, - 0x03, 0xDE, 0x00, 0x3C, 0x00, 0x7F, 0x00, 0x7F, 0xF0, 0x3F, 0xF8, 0x0F, - 0xF8, 0x01, 0xF0, 0x01, 0xFE, 0x03, 0xDE, 0x0F, 0xBF, 0xFE, 0x3F, 0xF8, - 0x1F, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, - 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, - 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xF7, 0x87, 0x9F, 0xFE, 0x3F, 0xF0, 0x3F, - 0x00, 0x70, 0x0E, 0xF0, 0x3D, 0xE0, 0x79, 0xC0, 0xE3, 0x81, 0xC7, 0x87, - 0x87, 0x0E, 0x0E, 0x1C, 0x1E, 0x78, 0x1C, 0xE0, 0x39, 0xC0, 0x73, 0x80, - 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x70, - 0x38, 0x1C, 0xE0, 0xF0, 0x79, 0xE1, 0xF0, 0xF3, 0xC3, 0xE1, 0xE3, 0x87, - 0xC3, 0x87, 0x0F, 0x87, 0x0E, 0x3B, 0x9E, 0x1E, 0x77, 0x38, 0x1C, 0xEE, - 0x70, 0x39, 0xCC, 0xE0, 0x73, 0x99, 0xC0, 0x6E, 0x3F, 0x00, 0xFC, 0x7E, - 0x01, 0xF8, 0xFC, 0x03, 0xF0, 0xF8, 0x03, 0xE1, 0xE0, 0x07, 0x83, 0xC0, - 0x0F, 0x07, 0x80, 0xF0, 0x3C, 0xF0, 0xF9, 0xE1, 0xE1, 0xE7, 0x83, 0xCF, - 0x03, 0xFC, 0x03, 0xF0, 0x07, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x3F, 0x00, - 0xFF, 0x01, 0xFE, 0x07, 0x9E, 0x0F, 0x1E, 0x3C, 0x3C, 0xF8, 0x3D, 0xE0, - 0x78, 0xF0, 0x1E, 0x78, 0x1E, 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x78, 0x1E, - 0x78, 0x0E, 0x70, 0x0F, 0xF0, 0x07, 0xE0, 0x07, 0xE0, 0x03, 0xC0, 0x03, - 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, - 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x01, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF8, 0x07, 0x80, 0x78, 0x07, 0x80, 0x7C, 0x03, 0xC0, 0x3C, 0x03, - 0xC0, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFC, 0xF3, 0xCF, - 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xFF, 0xFF, - 0xC0, 0xC1, 0x81, 0x03, 0x06, 0x04, 0x0C, 0x18, 0x10, 0x30, 0x60, 0x40, - 0xC1, 0x81, 0x03, 0x06, 0xFF, 0xFF, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, - 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0xFF, 0xFF, 0xC0, 0x0F, 0x00, - 0xF0, 0x0F, 0x01, 0xF8, 0x1B, 0x83, 0x9C, 0x39, 0xC3, 0x0C, 0x70, 0xE7, - 0x0E, 0xE0, 0x70, 0xFF, 0xFF, 0xFF, 0xFC, 0xE6, 0x30, 0x1F, 0x83, 0xFF, - 0x1F, 0xFD, 0xE1, 0xE0, 0x0F, 0x03, 0xF9, 0xFF, 0xDF, 0x1E, 0xF0, 0xF7, - 0x8F, 0xBF, 0xFC, 0xFF, 0xE3, 0xCF, 0x80, 0xF0, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x7B, 0xC3, 0xFF, 0x9F, 0xFE, 0xF8, 0xF7, 0x83, 0xFC, - 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, 0xE3, 0xDF, 0xFE, 0xFF, 0xE7, 0xBE, - 0x00, 0x0F, 0x83, 0xFE, 0x7F, 0xF7, 0x8F, 0xF0, 0x7F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x77, 0x8F, 0x7F, 0xF3, 0xFE, 0x0F, 0x80, 0x00, 0x78, 0x03, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x8F, 0xBC, 0xFF, 0xEF, 0xFF, 0x78, 0xFF, - 0x83, 0xFC, 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3D, 0xE3, 0xEF, 0xFF, 0x3F, - 0xF8, 0xFB, 0xC0, 0x1F, 0x81, 0xFE, 0x1F, 0xF9, 0xF1, 0xCF, 0x07, 0x7F, - 0xFB, 0xFF, 0xDE, 0x00, 0xF0, 0x03, 0xC3, 0x9F, 0xFC, 0x7F, 0xC0, 0xF8, - 0x00, 0x3E, 0xFD, 0xFB, 0xC7, 0x9F, 0xBF, 0x3C, 0x78, 0xF1, 0xE3, 0xC7, - 0x8F, 0x1E, 0x3C, 0x78, 0xF0, 0x1E, 0x79, 0xFB, 0xDF, 0xFE, 0xF1, 0xFF, - 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7F, 0xC7, 0xDF, 0xFE, 0x7F, - 0xF1, 0xF7, 0x80, 0x3C, 0x01, 0xFF, 0x1E, 0x7F, 0xF0, 0xFE, 0x00, 0xF0, - 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x7C, 0xFF, 0xEF, 0xFF, 0xF9, - 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, - 0xFF, 0x0F, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3C, - 0xF3, 0xC0, 0x00, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, - 0xF3, 0xCF, 0xFF, 0xFF, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, - 0x0F, 0x0F, 0xF1, 0xEF, 0x3C, 0xF7, 0x8F, 0xF0, 0xFF, 0x0F, 0xF8, 0xFF, - 0x8F, 0x3C, 0xF1, 0xCF, 0x1E, 0xF0, 0xEF, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0x8F, 0x9F, 0xFB, 0xFB, 0xFF, 0xFF, - 0xFC, 0xF8, 0xFF, 0x1E, 0x1F, 0xE3, 0xC3, 0xFC, 0x78, 0x7F, 0x8F, 0x0F, - 0xF1, 0xE1, 0xFE, 0x3C, 0x3F, 0xC7, 0x87, 0xF8, 0xF0, 0xFF, 0x1E, 0x1E, - 0xF7, 0xCF, 0xFE, 0xFF, 0xFF, 0x9F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, - 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xF0, 0x0F, 0x81, 0xFF, 0x1F, - 0xFC, 0xF1, 0xEF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7B, 0xC7, - 0x9F, 0xFC, 0x7F, 0xC0, 0xF8, 0x00, 0xF7, 0xC7, 0xFF, 0x3F, 0xFD, 0xF1, - 0xEF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7F, 0xC7, 0xBF, 0xFD, - 0xFF, 0xCF, 0x78, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x00, - 0x0F, 0x79, 0xFF, 0xDF, 0xFE, 0xF1, 0xFF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, - 0x0F, 0xF0, 0x7B, 0xC7, 0xDF, 0xFE, 0x7F, 0xF1, 0xF7, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0xF3, 0xF7, 0xFF, 0xF8, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0x1F, 0x87, 0xFC, 0xFF, 0xEF, - 0x0F, 0xF8, 0x0F, 0xF0, 0x7F, 0xE0, 0xFF, 0x01, 0xFF, 0x0F, 0xFF, 0xE7, - 0xFE, 0x1F, 0x80, 0x79, 0xE7, 0xBF, 0xFD, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, - 0x7D, 0xF3, 0xC0, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, - 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x1F, 0xFF, 0xF7, 0xFF, 0x3E, 0xF0, 0xF0, - 0x7B, 0x83, 0x9E, 0x1C, 0xF1, 0xE3, 0x8E, 0x1C, 0x70, 0x77, 0x83, 0xB8, - 0x1D, 0xC0, 0x7E, 0x03, 0xE0, 0x1F, 0x00, 0x70, 0x00, 0xF0, 0xE1, 0xDC, - 0x78, 0x77, 0x1F, 0x3D, 0xE7, 0xCF, 0x79, 0xB3, 0x8E, 0x6C, 0xE3, 0xBB, - 0x38, 0xEE, 0xFC, 0x1F, 0x3F, 0x07, 0xC7, 0xC1, 0xF1, 0xF0, 0x7C, 0x78, - 0x0E, 0x1E, 0x00, 0x78, 0xF3, 0xC7, 0x8F, 0x78, 0x3B, 0x81, 0xFC, 0x07, - 0xC0, 0x1E, 0x01, 0xF0, 0x1F, 0xC0, 0xEF, 0x0F, 0x78, 0xF1, 0xE7, 0x87, - 0x00, 0xF0, 0x7B, 0x83, 0x9E, 0x1C, 0x71, 0xE3, 0x8E, 0x1E, 0x70, 0x73, - 0x83, 0xB8, 0x1F, 0xC0, 0x7E, 0x03, 0xE0, 0x0F, 0x00, 0x70, 0x03, 0x80, - 0x3C, 0x07, 0xC0, 0x3E, 0x01, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFC, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x0F, 0xFF, 0xFF, 0xFF, 0xC0, - 0x1C, 0xF3, 0xCE, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0xBC, 0xF0, 0xE3, 0x8E, - 0x38, 0xE3, 0x8E, 0x3C, 0xF1, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0xE3, 0x8F, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x0F, 0x3D, 0xC7, 0x1C, - 0x71, 0xC7, 0x1C, 0xF3, 0xCE, 0x00, 0x78, 0x0F, 0xE0, 0xCF, 0x30, 0x7F, - 0x01, 0xE0}; - -const GFXglyph FreeSansBold12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 7, 0, 1}, // 0x20 ' ' - {0, 4, 17, 8, 3, -16}, // 0x21 '!' - {9, 10, 6, 11, 1, -17}, // 0x22 '"' - {17, 13, 16, 13, 0, -15}, // 0x23 '#' - {43, 13, 20, 13, 0, -17}, // 0x24 '$' - {76, 19, 17, 21, 1, -16}, // 0x25 '%' - {117, 16, 17, 17, 1, -16}, // 0x26 '&' - {151, 4, 6, 6, 1, -17}, // 0x27 ''' - {154, 6, 22, 8, 1, -17}, // 0x28 '(' - {171, 6, 22, 8, 1, -17}, // 0x29 ')' - {188, 7, 8, 9, 1, -17}, // 0x2A '*' - {195, 11, 11, 14, 2, -10}, // 0x2B '+' - {211, 4, 7, 6, 1, -2}, // 0x2C ',' - {215, 6, 3, 8, 1, -7}, // 0x2D '-' - {218, 4, 3, 6, 1, -2}, // 0x2E '.' - {220, 6, 17, 7, 0, -16}, // 0x2F '/' - {233, 12, 17, 13, 1, -16}, // 0x30 '0' - {259, 7, 17, 14, 3, -16}, // 0x31 '1' - {274, 12, 17, 13, 1, -16}, // 0x32 '2' - {300, 12, 17, 13, 1, -16}, // 0x33 '3' - {326, 11, 17, 13, 1, -16}, // 0x34 '4' - {350, 12, 17, 13, 1, -16}, // 0x35 '5' - {376, 12, 17, 13, 1, -16}, // 0x36 '6' - {402, 11, 17, 13, 1, -16}, // 0x37 '7' - {426, 12, 17, 13, 1, -16}, // 0x38 '8' - {452, 12, 17, 13, 1, -16}, // 0x39 '9' - {478, 4, 12, 6, 1, -11}, // 0x3A ':' - {484, 4, 16, 6, 1, -11}, // 0x3B ';' - {492, 12, 12, 14, 1, -11}, // 0x3C '<' - {510, 12, 9, 14, 1, -9}, // 0x3D '=' - {524, 12, 12, 14, 1, -11}, // 0x3E '>' - {542, 12, 18, 15, 2, -17}, // 0x3F '?' - {569, 21, 21, 23, 1, -17}, // 0x40 '@' - {625, 16, 18, 17, 0, -17}, // 0x41 'A' - {661, 14, 18, 17, 2, -17}, // 0x42 'B' - {693, 16, 18, 17, 1, -17}, // 0x43 'C' - {729, 15, 18, 17, 2, -17}, // 0x44 'D' - {763, 13, 18, 16, 2, -17}, // 0x45 'E' - {793, 12, 18, 15, 2, -17}, // 0x46 'F' - {820, 16, 18, 18, 1, -17}, // 0x47 'G' - {856, 14, 18, 18, 2, -17}, // 0x48 'H' - {888, 4, 18, 7, 2, -17}, // 0x49 'I' - {897, 11, 18, 14, 1, -17}, // 0x4A 'J' - {922, 16, 18, 17, 2, -17}, // 0x4B 'K' - {958, 11, 18, 15, 2, -17}, // 0x4C 'L' - {983, 17, 18, 21, 2, -17}, // 0x4D 'M' - {1022, 15, 18, 18, 2, -17}, // 0x4E 'N' - {1056, 17, 18, 19, 1, -17}, // 0x4F 'O' - {1095, 14, 18, 16, 2, -17}, // 0x50 'P' - {1127, 17, 19, 19, 1, -17}, // 0x51 'Q' - {1168, 16, 18, 17, 2, -17}, // 0x52 'R' - {1204, 15, 18, 16, 1, -17}, // 0x53 'S' - {1238, 12, 18, 15, 2, -17}, // 0x54 'T' - {1265, 14, 18, 18, 2, -17}, // 0x55 'U' - {1297, 15, 18, 16, 0, -17}, // 0x56 'V' - {1331, 23, 18, 23, 0, -17}, // 0x57 'W' - {1383, 15, 18, 16, 1, -17}, // 0x58 'X' - {1417, 16, 18, 15, 0, -17}, // 0x59 'Y' - {1453, 13, 18, 15, 1, -17}, // 0x5A 'Z' - {1483, 6, 23, 8, 2, -17}, // 0x5B '[' - {1501, 7, 17, 7, 0, -16}, // 0x5C '\' - {1516, 6, 23, 8, 0, -17}, // 0x5D ']' - {1534, 12, 11, 14, 1, -16}, // 0x5E '^' - {1551, 15, 2, 13, -1, 4}, // 0x5F '_' - {1555, 4, 3, 6, 0, -17}, // 0x60 '`' - {1557, 13, 13, 14, 1, -12}, // 0x61 'a' - {1579, 13, 18, 15, 2, -17}, // 0x62 'b' - {1609, 12, 13, 13, 1, -12}, // 0x63 'c' - {1629, 13, 18, 15, 1, -17}, // 0x64 'd' - {1659, 13, 13, 14, 1, -12}, // 0x65 'e' - {1681, 7, 18, 8, 1, -17}, // 0x66 'f' - {1697, 13, 18, 15, 1, -12}, // 0x67 'g' - {1727, 12, 18, 14, 2, -17}, // 0x68 'h' - {1754, 4, 18, 7, 2, -17}, // 0x69 'i' - {1763, 6, 23, 7, 0, -17}, // 0x6A 'j' - {1781, 12, 18, 14, 2, -17}, // 0x6B 'k' - {1808, 4, 18, 6, 2, -17}, // 0x6C 'l' - {1817, 19, 13, 21, 2, -12}, // 0x6D 'm' - {1848, 12, 13, 15, 2, -12}, // 0x6E 'n' - {1868, 13, 13, 15, 1, -12}, // 0x6F 'o' - {1890, 13, 18, 15, 2, -12}, // 0x70 'p' - {1920, 13, 18, 15, 1, -12}, // 0x71 'q' - {1950, 8, 13, 9, 2, -12}, // 0x72 'r' - {1963, 12, 13, 13, 1, -12}, // 0x73 's' - {1983, 6, 15, 8, 1, -14}, // 0x74 't' - {1995, 12, 13, 15, 2, -12}, // 0x75 'u' - {2015, 13, 13, 13, 0, -12}, // 0x76 'v' - {2037, 18, 13, 19, 0, -12}, // 0x77 'w' - {2067, 13, 13, 13, 0, -12}, // 0x78 'x' - {2089, 13, 18, 13, 0, -12}, // 0x79 'y' - {2119, 10, 13, 12, 1, -12}, // 0x7A 'z' - {2136, 6, 23, 9, 1, -17}, // 0x7B '{' - {2154, 2, 22, 7, 2, -17}, // 0x7C '|' - {2160, 6, 23, 9, 3, -17}, // 0x7D '}' - {2178, 12, 5, 12, 0, -7}}; // 0x7E '~' - -const GFXfont FreeSansBold12pt7b PROGMEM = { - (uint8_t *)FreeSansBold12pt7bBitmaps, (GFXglyph *)FreeSansBold12pt7bGlyphs, - 0x20, 0x7E, 29}; - -// Approx. 2858 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h deleted file mode 100644 index f0e2807..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h +++ /dev/null @@ -1,483 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold18pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xE7, 0x39, 0xCE, 0x73, 0x80, - 0x0F, 0xFF, 0xFF, 0xF8, 0xF8, 0xFF, 0xC7, 0xFE, 0x3F, 0xF1, 0xFF, 0x8F, - 0xFC, 0x7D, 0xC1, 0xCE, 0x0E, 0x70, 0x70, 0x03, 0xC3, 0x80, 0x3C, 0x78, - 0x03, 0xC7, 0x80, 0x38, 0x78, 0x07, 0x87, 0x07, 0xFF, 0xFF, 0x7F, 0xFF, - 0xF7, 0xFF, 0xFF, 0x7F, 0xFF, 0xF0, 0xF0, 0xE0, 0x0F, 0x0E, 0x00, 0xF1, - 0xE0, 0x0F, 0x1E, 0x00, 0xE1, 0xE0, 0xFF, 0xFF, 0xCF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xCF, 0xFF, 0xFC, 0x1C, 0x3C, 0x03, 0xC3, 0x80, 0x3C, 0x78, 0x03, - 0xC7, 0x80, 0x38, 0x78, 0x03, 0x87, 0x80, 0x00, 0x60, 0x00, 0x7F, 0x80, - 0x3F, 0xFC, 0x0F, 0xFF, 0xC3, 0xFF, 0xFC, 0xFC, 0xDF, 0x9F, 0x19, 0xFB, - 0xC3, 0x1F, 0x78, 0x63, 0xEF, 0x8C, 0x01, 0xFD, 0x80, 0x1F, 0xF0, 0x01, - 0xFF, 0xC0, 0x1F, 0xFE, 0x00, 0x7F, 0xE0, 0x03, 0xFE, 0x00, 0x67, 0xE0, - 0x0C, 0x7F, 0xE1, 0x8F, 0xFC, 0x31, 0xFF, 0xC6, 0x3E, 0xFC, 0xDF, 0x9F, - 0xFF, 0xF1, 0xFF, 0xFC, 0x0F, 0xFF, 0x00, 0x7F, 0x80, 0x01, 0x80, 0x00, - 0x30, 0x00, 0x06, 0x00, 0x0F, 0x00, 0x1C, 0x01, 0xFE, 0x00, 0xE0, 0x1F, - 0xF8, 0x0E, 0x00, 0xFF, 0xC0, 0x70, 0x0F, 0x0F, 0x07, 0x00, 0x70, 0x38, - 0x38, 0x03, 0x81, 0xC3, 0x80, 0x1C, 0x0E, 0x3C, 0x00, 0xF0, 0xF1, 0xC0, - 0x03, 0xFF, 0x1C, 0x00, 0x1F, 0xF8, 0xE0, 0x00, 0x7F, 0x8E, 0x00, 0x00, - 0xF0, 0x70, 0xF8, 0x00, 0x07, 0x1F, 0xF0, 0x00, 0x39, 0xFF, 0xC0, 0x03, - 0x8F, 0xFE, 0x00, 0x1C, 0xF0, 0x78, 0x01, 0xC7, 0x01, 0xC0, 0x0C, 0x38, - 0x0E, 0x00, 0xE1, 0xC0, 0x70, 0x06, 0x0F, 0x07, 0x80, 0x70, 0x3F, 0xF8, - 0x07, 0x01, 0xFF, 0xC0, 0x38, 0x07, 0xFC, 0x03, 0x80, 0x0F, 0x80, 0x01, - 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0xC0, 0x03, 0xFF, 0x80, 0x1F, 0x1E, - 0x00, 0x7C, 0x78, 0x01, 0xF1, 0xE0, 0x07, 0xE7, 0x80, 0x0F, 0xBC, 0x00, - 0x1F, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xF0, 0xF0, 0xFF, - 0xE3, 0xC7, 0xE7, 0xCF, 0x3F, 0x0F, 0xF8, 0xF8, 0x3F, 0xE3, 0xE0, 0x7F, - 0x8F, 0x80, 0xFC, 0x3F, 0x03, 0xF0, 0x7E, 0x3F, 0xE1, 0xFF, 0xFF, 0x83, - 0xFF, 0xFF, 0x07, 0xFE, 0x7E, 0x07, 0xF0, 0xFC, 0xFF, 0xFF, 0xFF, 0xFD, - 0xCE, 0x70, 0x07, 0x87, 0x83, 0xC3, 0xC1, 0xE1, 0xE0, 0xF0, 0x78, 0x78, - 0x3C, 0x1E, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, - 0x0F, 0x03, 0x81, 0xE0, 0xF0, 0x78, 0x1E, 0x0F, 0x03, 0x81, 0xE0, 0x70, - 0x3C, 0x0E, 0x07, 0x80, 0xF0, 0x38, 0x1E, 0x07, 0x83, 0xC0, 0xF0, 0x78, - 0x3C, 0x0F, 0x07, 0x83, 0xC0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, - 0xC1, 0xE0, 0xF0, 0x78, 0x78, 0x3C, 0x1E, 0x0F, 0x0F, 0x07, 0x87, 0x83, - 0xC1, 0xC1, 0xE0, 0xE0, 0xF0, 0x00, 0x06, 0x00, 0x60, 0x06, 0x07, 0x6E, - 0x7F, 0xE3, 0xFC, 0x0F, 0x01, 0xF8, 0x1F, 0x83, 0x9C, 0x10, 0x80, 0x03, - 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0x03, 0xC0, 0x03, - 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0x8C, 0x63, - 0x37, 0xB0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x80, 0x01, - 0x81, 0xC0, 0xC0, 0x60, 0x70, 0x38, 0x18, 0x0C, 0x0E, 0x06, 0x03, 0x01, - 0x81, 0xC0, 0xC0, 0x60, 0x30, 0x38, 0x18, 0x0C, 0x0E, 0x07, 0x03, 0x01, - 0x81, 0xC0, 0xC0, 0x00, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, 0x87, 0xFF, - 0xC7, 0xE3, 0xF3, 0xE0, 0xF9, 0xF0, 0x7D, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, - 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, - 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xDF, 0x07, 0xCF, 0x83, 0xE7, 0xE3, - 0xF1, 0xFF, 0xF0, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x01, 0xC0, - 0xF0, 0x3C, 0x1F, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xC1, 0xF0, 0x7C, - 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, - 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC0, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, - 0x8F, 0xFF, 0xE7, 0xE3, 0xF7, 0xE0, 0xFF, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, - 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xE0, 0x03, 0xE0, 0x03, 0xF0, 0x03, 0xF0, - 0x07, 0xF0, 0x07, 0xF0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xC0, 0x07, 0xC0, - 0x03, 0xE0, 0x03, 0xFF, 0xFD, 0xFF, 0xFE, 0xFF, 0xFF, 0x7F, 0xFF, 0x80, - 0x07, 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0xFF, 0xCF, 0xC3, 0xF7, 0xC0, - 0xFB, 0xE0, 0x7D, 0xF0, 0x3E, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x0F, 0x80, - 0x3F, 0x80, 0x1F, 0xC0, 0x0F, 0xF0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, - 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x83, 0xF7, 0xC3, 0xF3, 0xFF, 0xF8, 0xFF, - 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0xFC, 0x01, 0xFC, - 0x01, 0xFC, 0x03, 0xFC, 0x07, 0x7C, 0x07, 0x7C, 0x0E, 0x7C, 0x0E, 0x7C, - 0x1C, 0x7C, 0x18, 0x7C, 0x38, 0x7C, 0x70, 0x7C, 0x60, 0x7C, 0xE0, 0x7C, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x7C, 0x00, 0x7C, - 0x00, 0x7C, 0x00, 0x7C, 0x00, 0x7C, 0x00, 0x7C, 0x1F, 0xFF, 0x0F, 0xFF, - 0x8F, 0xFF, 0xC7, 0xFF, 0xE3, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x00, 0x70, - 0x00, 0x79, 0xF0, 0x3F, 0xFE, 0x1F, 0xFF, 0x8F, 0xFF, 0xE7, 0xC3, 0xF0, - 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xFE, 0x03, - 0xFF, 0x03, 0xFF, 0xC3, 0xF3, 0xFF, 0xF1, 0xFF, 0xF8, 0x3F, 0xF0, 0x07, - 0xE0, 0x00, 0x03, 0xF8, 0x03, 0xFF, 0x81, 0xFF, 0xF0, 0xFF, 0xFE, 0x3E, - 0x1F, 0x9F, 0x03, 0xE7, 0xC0, 0x03, 0xE0, 0x00, 0xF8, 0xF8, 0x3E, 0xFF, - 0x8F, 0xFF, 0xF3, 0xFF, 0xFE, 0xFE, 0x1F, 0xBF, 0x03, 0xFF, 0x80, 0x7F, - 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xF7, 0x80, 0x7D, 0xF0, 0x3E, 0x7E, - 0x1F, 0x8F, 0xFF, 0xC1, 0xFF, 0xF0, 0x3F, 0xF0, 0x03, 0xF0, 0x00, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xF0, 0x00, 0xF8, - 0x00, 0xF8, 0x00, 0x78, 0x00, 0x7C, 0x00, 0x3C, 0x00, 0x3E, 0x00, 0x1E, - 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xC0, 0x03, - 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x78, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xE0, 0x07, 0xFC, 0x0F, 0xFF, 0x07, - 0xFF, 0xC7, 0xC3, 0xF3, 0xC0, 0xF9, 0xE0, 0x3C, 0xF0, 0x1E, 0x78, 0x1F, - 0x1E, 0x1F, 0x07, 0xFF, 0x01, 0xFF, 0x03, 0xFF, 0xE3, 0xF1, 0xF9, 0xF0, - 0x7D, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x83, 0xF7, - 0xC3, 0xF3, 0xFF, 0xF8, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x07, - 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0xFF, 0xC7, 0xE3, 0xF7, 0xE0, 0xFB, - 0xE0, 0x3D, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x83, - 0xF7, 0xE3, 0xFB, 0xFF, 0xFC, 0xFF, 0xFE, 0x3F, 0xDF, 0x07, 0xCF, 0x80, - 0x07, 0x80, 0x03, 0xDF, 0x03, 0xE7, 0xC3, 0xE3, 0xFF, 0xF0, 0xFF, 0xF0, - 0x3F, 0xF0, 0x07, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xC6, 0x33, 0x9B, 0xD8, 0x00, 0x00, 0xC0, 0x00, - 0xF0, 0x01, 0xFC, 0x03, 0xFF, 0x03, 0xFF, 0x07, 0xFE, 0x0F, 0xFC, 0x03, - 0xF8, 0x00, 0xF0, 0x00, 0x3F, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x07, - 0xFF, 0x00, 0x3F, 0xF0, 0x01, 0xFC, 0x00, 0x1F, 0x00, 0x00, 0xC0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0xC0, 0x00, 0x3C, 0x00, 0x0F, 0xE0, 0x03, 0xFF, 0x00, 0x3F, 0xF0, - 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0x00, 0x03, 0xC0, 0x07, 0xF0, - 0x0F, 0xFC, 0x1F, 0xF8, 0x3F, 0xF8, 0x3F, 0xF0, 0x0F, 0xE0, 0x03, 0xC0, - 0x00, 0xC0, 0x00, 0x00, 0x07, 0xF0, 0x07, 0xFF, 0x03, 0xFF, 0xF1, 0xFF, - 0xFC, 0x7E, 0x3F, 0xBF, 0x03, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, - 0xC0, 0x03, 0xF0, 0x01, 0xFC, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x80, - 0x1F, 0xC0, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, - 0x00, 0xF8, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, - 0xFF, 0xFF, 0xC0, 0x01, 0xF8, 0x07, 0xF0, 0x03, 0xE0, 0x01, 0xF8, 0x07, - 0x80, 0x00, 0x7C, 0x0F, 0x00, 0x00, 0x3C, 0x1E, 0x03, 0xE3, 0x9E, 0x3C, - 0x0F, 0xF7, 0x8E, 0x38, 0x1F, 0xFF, 0x0E, 0x78, 0x3E, 0x1F, 0x07, 0x70, - 0x38, 0x0F, 0x07, 0x70, 0x78, 0x0F, 0x07, 0xE0, 0x70, 0x0E, 0x07, 0xE0, - 0x70, 0x0E, 0x07, 0xE0, 0xE0, 0x0E, 0x07, 0xE0, 0xE0, 0x1E, 0x0F, 0xE0, - 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x3C, 0x1E, 0xE0, 0xF0, 0x3C, 0x3C, 0xF0, - 0xF0, 0xFC, 0x7C, 0x70, 0x7F, 0xFF, 0xF8, 0x78, 0x3F, 0xCF, 0xF0, 0x3C, - 0x1F, 0x07, 0xC0, 0x3E, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x0F, - 0xC0, 0x01, 0x00, 0x07, 0xF0, 0x0F, 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, - 0xFF, 0xFF, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0x80, 0x01, 0xFF, - 0x80, 0x01, 0xFF, 0x80, 0x01, 0xF7, 0xC0, 0x03, 0xE7, 0xC0, 0x03, 0xE7, - 0xC0, 0x03, 0xE3, 0xE0, 0x07, 0xC3, 0xE0, 0x07, 0xC3, 0xE0, 0x07, 0xC1, - 0xF0, 0x0F, 0x81, 0xF0, 0x0F, 0x81, 0xF0, 0x0F, 0xFF, 0xF8, 0x1F, 0xFF, - 0xF8, 0x1F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFC, 0x3E, 0x00, 0x7C, 0x3E, 0x00, - 0x7E, 0x3E, 0x00, 0x3E, 0x7C, 0x00, 0x3E, 0x7C, 0x00, 0x3F, 0x7C, 0x00, - 0x1F, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0xFF, 0xFF, 0x8F, 0xFF, 0xFC, 0xF8, - 0x07, 0xEF, 0x80, 0x3E, 0xF8, 0x03, 0xEF, 0x80, 0x3E, 0xF8, 0x03, 0xEF, - 0x80, 0x3E, 0xF8, 0x07, 0xCF, 0xFF, 0xF8, 0xFF, 0xFF, 0x0F, 0xFF, 0xF8, - 0xFF, 0xFF, 0xCF, 0x80, 0x7E, 0xF8, 0x01, 0xEF, 0x80, 0x1F, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x3E, 0xFF, 0xFF, 0xEF, 0xFF, - 0xFC, 0xFF, 0xFF, 0x8F, 0xFF, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xFF, 0x80, - 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0xC3, 0xF8, 0x1F, 0x87, 0xE0, 0x1F, 0x9F, - 0x80, 0x1F, 0x3E, 0x00, 0x1F, 0x7C, 0x00, 0x3F, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x7D, 0xF0, 0x00, - 0xFB, 0xF0, 0x03, 0xF3, 0xF0, 0x0F, 0xC7, 0xF0, 0x3F, 0x87, 0xFF, 0xFE, - 0x07, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x01, 0xFE, 0x00, 0xFF, 0xFC, 0x07, - 0xFF, 0xF8, 0x3F, 0xFF, 0xE1, 0xFF, 0xFF, 0x8F, 0x80, 0xFE, 0x7C, 0x01, - 0xF3, 0xE0, 0x07, 0xDF, 0x00, 0x3E, 0xF8, 0x01, 0xF7, 0xC0, 0x07, 0xFE, - 0x00, 0x3F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x03, - 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0xFF, 0xC0, 0x0F, 0xFE, 0x00, 0x7D, 0xF0, - 0x03, 0xEF, 0x80, 0x3E, 0x7C, 0x07, 0xF3, 0xFF, 0xFF, 0x1F, 0xFF, 0xF0, - 0xFF, 0xFF, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, 0xDF, 0xFF, 0xFB, 0xFF, - 0xFF, 0x7F, 0xFF, 0xEF, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7F, 0xFF, 0xCF, 0xFF, - 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE7, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, - 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0xFF, 0xEF, 0xFF, 0xF7, - 0xFF, 0xFB, 0xFF, 0xFD, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, - 0x00, 0x7C, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x03, 0xFF, 0xE0, 0x07, 0xFF, - 0xF8, 0x0F, 0xFF, 0xFC, 0x1F, 0xC0, 0xFE, 0x3F, 0x00, 0x7E, 0x7E, 0x00, - 0x3F, 0x7C, 0x00, 0x1F, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xF8, 0x03, - 0xFF, 0xF8, 0x03, 0xFF, 0xFC, 0x00, 0x0F, 0x7C, 0x00, 0x1F, 0x7C, 0x00, - 0x1F, 0x7E, 0x00, 0x3F, 0x3F, 0x00, 0x7F, 0x1F, 0xC1, 0xFF, 0x0F, 0xFF, - 0xFF, 0x07, 0xFF, 0xE7, 0x03, 0xFF, 0xC7, 0x00, 0xFF, 0x07, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x01, 0xFF, - 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, - 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F, - 0xF8, 0x1F, 0xFC, 0x3F, 0x7F, 0xFE, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, - 0xF8, 0x01, 0xFB, 0xE0, 0x0F, 0xCF, 0x80, 0x7E, 0x3E, 0x03, 0xF0, 0xF8, - 0x1F, 0x83, 0xE0, 0xFC, 0x0F, 0x87, 0xE0, 0x3E, 0x3F, 0x00, 0xF8, 0xF8, - 0x03, 0xE7, 0xE0, 0x0F, 0xBF, 0x00, 0x3F, 0xF8, 0x00, 0xFF, 0xF0, 0x03, - 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x3F, 0xBF, 0x00, 0xFC, 0x7E, 0x03, 0xE0, - 0xFC, 0x0F, 0x81, 0xF8, 0x3E, 0x07, 0xE0, 0xF8, 0x0F, 0xC3, 0xE0, 0x1F, - 0x8F, 0x80, 0x7F, 0x3E, 0x00, 0xFC, 0xF8, 0x01, 0xFB, 0xE0, 0x03, 0xF0, - 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, - 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, - 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0x00, 0xFF, 0xFF, - 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0x81, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0x81, 0xFF, 0xFB, 0xC3, 0xDF, 0xFB, - 0xC3, 0xDF, 0xFB, 0xC3, 0xDF, 0xFB, 0xC3, 0xDF, 0xF9, 0xC7, 0xDF, 0xF9, - 0xE7, 0x9F, 0xF9, 0xE7, 0x9F, 0xF9, 0xE7, 0x9F, 0xF9, 0xE7, 0x9F, 0xF8, - 0xFF, 0x1F, 0xF8, 0xFF, 0x1F, 0xF8, 0xFF, 0x1F, 0xF8, 0xFF, 0x1F, 0xF8, - 0x7F, 0x1F, 0xF8, 0x7E, 0x1F, 0xF8, 0x7E, 0x1F, 0xF8, 0x7E, 0x1F, 0xF8, - 0x3E, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x1F, 0xFE, 0x01, 0xFF, 0xE0, 0x1F, - 0xFF, 0x01, 0xFF, 0xF0, 0x1F, 0xFF, 0x81, 0xFF, 0xF8, 0x1F, 0xFF, 0xC1, - 0xFF, 0xBC, 0x1F, 0xFB, 0xE1, 0xFF, 0x9F, 0x1F, 0xF9, 0xF1, 0xFF, 0x8F, - 0x9F, 0xF8, 0x79, 0xFF, 0x87, 0xDF, 0xF8, 0x3D, 0xFF, 0x83, 0xFF, 0xF8, - 0x1F, 0xFF, 0x81, 0xFF, 0xF8, 0x0F, 0xFF, 0x80, 0xFF, 0xF8, 0x07, 0xFF, - 0x80, 0x3F, 0xF8, 0x03, 0xFF, 0x80, 0x1F, 0x00, 0x7F, 0x00, 0x01, 0xFF, - 0xF0, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x01, 0xFC, 0x1F, 0xC1, 0xF8, - 0x03, 0xF1, 0xF8, 0x00, 0xFC, 0xF8, 0x00, 0x3E, 0x7C, 0x00, 0x1F, 0x7C, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, - 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, 0x1F, 0xF8, 0x00, 0x0F, - 0xBE, 0x00, 0x0F, 0x9F, 0x00, 0x07, 0xCF, 0xC0, 0x07, 0xE3, 0xF0, 0x07, - 0xE0, 0xFE, 0x0F, 0xE0, 0x7F, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFF, 0xFC, 0x1F, 0xFF, 0xE3, 0xFF, 0xFE, - 0x7F, 0xFF, 0xEF, 0x80, 0xFF, 0xF0, 0x0F, 0xFE, 0x00, 0xFF, 0xC0, 0x1F, - 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xE0, 0x1F, 0xFC, 0x07, 0xEF, 0xFF, 0xFD, - 0xFF, 0xFF, 0x3F, 0xFF, 0xC7, 0xFF, 0xE0, 0xF8, 0x00, 0x1F, 0x00, 0x03, - 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, - 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFF, - 0xF0, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x01, 0xFC, 0x1F, 0xC1, 0xF8, - 0x03, 0xF1, 0xF8, 0x00, 0xFC, 0xF8, 0x00, 0x3E, 0x7C, 0x00, 0x1F, 0x7C, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, - 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, 0x1F, 0xF8, 0x01, 0x0F, - 0xBE, 0x01, 0xCF, 0x9F, 0x01, 0xFF, 0xCF, 0xC0, 0x7F, 0xE3, 0xF0, 0x1F, - 0xE0, 0xFE, 0x0F, 0xF0, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFE, 0x03, 0xFF, - 0xEF, 0x80, 0x3F, 0xC3, 0x80, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0x07, 0xFF, - 0xFE, 0x3F, 0xFF, 0xF9, 0xFF, 0xFF, 0xCF, 0x80, 0x3F, 0x7C, 0x00, 0xFB, - 0xE0, 0x07, 0xDF, 0x00, 0x3E, 0xF8, 0x01, 0xF7, 0xC0, 0x0F, 0x3E, 0x00, - 0xF9, 0xFF, 0xFF, 0x8F, 0xFF, 0xF8, 0x7F, 0xFF, 0xC3, 0xFF, 0xFF, 0x1F, - 0x00, 0xFC, 0xF8, 0x03, 0xE7, 0xC0, 0x1F, 0x3E, 0x00, 0xF9, 0xF0, 0x07, - 0xCF, 0x80, 0x3E, 0x7C, 0x01, 0xF3, 0xE0, 0x0F, 0x9F, 0x00, 0x7C, 0xF8, - 0x03, 0xF7, 0xC0, 0x0F, 0xC0, 0x07, 0xF8, 0x01, 0xFF, 0xF0, 0x3F, 0xFF, - 0x87, 0xFF, 0xFC, 0x7E, 0x0F, 0xCF, 0xC0, 0x7E, 0xF8, 0x03, 0xEF, 0x80, - 0x3E, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0x00, 0x07, 0xFF, 0xC0, 0x3F, - 0xFF, 0x81, 0xFF, 0xFC, 0x03, 0xFF, 0xE0, 0x01, 0xFF, 0x00, 0x03, 0xF0, - 0x00, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xFC, 0x03, 0xFF, 0xE0, 0x7E, - 0x7F, 0xFF, 0xE3, 0xFF, 0xFC, 0x1F, 0xFF, 0x00, 0x3F, 0xC0, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x1F, 0x00, 0x03, 0xE0, - 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, - 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, - 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, - 0x80, 0x1F, 0x7C, 0x03, 0xE7, 0xE0, 0x7E, 0x3F, 0xFF, 0xC3, 0xFF, 0xFC, - 0x0F, 0xFF, 0x00, 0x3F, 0xC0, 0xF8, 0x00, 0xFB, 0xE0, 0x03, 0xE7, 0xC0, - 0x1F, 0x9F, 0x00, 0x7C, 0x7C, 0x01, 0xF0, 0xF8, 0x07, 0xC3, 0xE0, 0x3E, - 0x0F, 0x80, 0xF8, 0x1E, 0x03, 0xE0, 0x7C, 0x1F, 0x01, 0xF0, 0x7C, 0x03, - 0xC1, 0xF0, 0x0F, 0x87, 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x01, 0xE3, - 0xC0, 0x07, 0xCF, 0x00, 0x1F, 0x7C, 0x00, 0x3D, 0xE0, 0x00, 0xFF, 0x80, - 0x03, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x00, - 0xF8, 0x00, 0x03, 0xE0, 0x00, 0xF8, 0x07, 0xC0, 0x3F, 0xF8, 0x07, 0xE0, - 0x3E, 0xFC, 0x07, 0xE0, 0x3E, 0x7C, 0x0F, 0xE0, 0x3E, 0x7C, 0x0F, 0xE0, - 0x7E, 0x7C, 0x0F, 0xE0, 0x7C, 0x7C, 0x0F, 0xF0, 0x7C, 0x3E, 0x0F, 0xF0, - 0x7C, 0x3E, 0x1E, 0xF0, 0x78, 0x3E, 0x1E, 0x70, 0xF8, 0x1E, 0x1E, 0x70, - 0xF8, 0x1E, 0x1E, 0x78, 0xF8, 0x1F, 0x1E, 0x78, 0xF0, 0x1F, 0x3C, 0x78, - 0xF0, 0x0F, 0x3C, 0x39, 0xF0, 0x0F, 0x3C, 0x3D, 0xF0, 0x0F, 0x3C, 0x3D, - 0xE0, 0x0F, 0xBC, 0x3D, 0xE0, 0x07, 0xF8, 0x3D, 0xE0, 0x07, 0xF8, 0x1F, - 0xE0, 0x07, 0xF8, 0x1F, 0xC0, 0x03, 0xF8, 0x1F, 0xC0, 0x03, 0xF8, 0x1F, - 0xC0, 0x03, 0xF0, 0x0F, 0x80, 0x03, 0xF0, 0x0F, 0x80, 0x01, 0xF0, 0x0F, - 0x80, 0xFE, 0x01, 0xF9, 0xF8, 0x07, 0xE3, 0xF0, 0x3F, 0x0F, 0xC0, 0xF8, - 0x1F, 0x87, 0xE0, 0x7E, 0x3F, 0x00, 0xFC, 0xFC, 0x01, 0xF7, 0xE0, 0x07, - 0xFF, 0x00, 0x0F, 0xFC, 0x00, 0x3F, 0xE0, 0x00, 0x7F, 0x00, 0x00, 0xFC, - 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0x80, 0x03, 0xFF, 0x00, - 0x1F, 0x7E, 0x00, 0xFC, 0xF8, 0x03, 0xE3, 0xF0, 0x1F, 0x87, 0xC0, 0x7C, - 0x1F, 0x83, 0xF0, 0x3F, 0x1F, 0x80, 0xFC, 0x7E, 0x01, 0xFB, 0xF0, 0x07, - 0xF0, 0xFC, 0x01, 0xFF, 0xE0, 0x0F, 0x9F, 0x00, 0xFC, 0xFC, 0x07, 0xC3, - 0xE0, 0x7E, 0x1F, 0x83, 0xE0, 0x7C, 0x1F, 0x03, 0xF1, 0xF0, 0x0F, 0x8F, - 0x80, 0x7E, 0xF8, 0x01, 0xF7, 0xC0, 0x0F, 0xFC, 0x00, 0x3F, 0xE0, 0x00, - 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x7E, 0x00, 0x1F, - 0x80, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF8, - 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x00, - 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, - 0xFC, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, - 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, - 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, - 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x38, 0x06, - 0x01, 0x80, 0x70, 0x0C, 0x03, 0x00, 0xE0, 0x18, 0x06, 0x01, 0xC0, 0x30, - 0x0C, 0x03, 0x00, 0xE0, 0x18, 0x06, 0x01, 0xC0, 0x30, 0x0C, 0x03, 0x80, - 0x60, 0x18, 0x07, 0x01, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x1F, 0x1F, - 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, - 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0xFF, 0xFF, - 0xFF, 0xFF, 0x03, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x0F, 0xF0, 0x0F, 0xF0, - 0x0F, 0x78, 0x1E, 0x78, 0x1E, 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x1E, - 0x78, 0x1E, 0x78, 0x1E, 0x70, 0x0F, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0xF8, 0xF0, 0xF0, 0xE0, 0xE0, 0x07, 0xF8, 0x07, - 0xFF, 0x83, 0xFF, 0xF1, 0xFF, 0xFE, 0x7C, 0x1F, 0xBE, 0x03, 0xE0, 0x00, - 0xF8, 0x01, 0xFE, 0x0F, 0xFF, 0x8F, 0xFF, 0xE7, 0xF8, 0xFB, 0xF0, 0x3E, - 0xF8, 0x0F, 0xBE, 0x07, 0xEF, 0xC3, 0xFB, 0xFF, 0xFE, 0x7F, 0xFF, 0x8F, - 0xFB, 0xF1, 0xF8, 0xFC, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE7, 0xE0, 0xFB, 0xFC, - 0x3F, 0xFF, 0xCF, 0xFF, 0xF3, 0xF8, 0x7E, 0xFC, 0x0F, 0xBF, 0x03, 0xFF, - 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xF0, - 0x3F, 0xFC, 0x0F, 0xBF, 0x87, 0xEF, 0xFF, 0xF3, 0xFF, 0xFC, 0xFB, 0xFC, - 0x3E, 0x7E, 0x00, 0x03, 0xF0, 0x07, 0xFE, 0x0F, 0xFF, 0x87, 0xFF, 0xE7, - 0xE1, 0xFB, 0xE0, 0x7F, 0xE0, 0x3F, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, - 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0xFB, 0xE0, 0x7D, 0xF8, 0x7E, 0x7F, - 0xFE, 0x3F, 0xFE, 0x0F, 0xFE, 0x00, 0xFC, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, - 0xF8, 0x1F, 0x1F, 0x0F, 0xFB, 0xE3, 0xFF, 0xFC, 0xFF, 0xFF, 0xBF, 0x8F, - 0xF7, 0xC0, 0x7F, 0xF8, 0x0F, 0xFE, 0x00, 0xFF, 0xC0, 0x1F, 0xF8, 0x03, - 0xFF, 0x00, 0x7F, 0xE0, 0x0F, 0xFE, 0x03, 0xF7, 0xC0, 0x7E, 0xFC, 0x3F, - 0xCF, 0xFF, 0xF8, 0xFF, 0xFF, 0x0F, 0xFB, 0xE0, 0xFC, 0x7C, 0x07, 0xE0, - 0x07, 0xFE, 0x03, 0xFF, 0xE0, 0xFF, 0xF8, 0x7E, 0x1F, 0x1F, 0x03, 0xCF, - 0x80, 0xFB, 0xE0, 0x1E, 0xFF, 0xFF, 0xBF, 0xFF, 0xEF, 0xFF, 0xFB, 0xE0, - 0x00, 0xF8, 0x00, 0x3F, 0x03, 0xE7, 0xE1, 0xF9, 0xFF, 0xFC, 0x3F, 0xFE, - 0x07, 0xFF, 0x00, 0x7F, 0x00, 0x0F, 0xC7, 0xF3, 0xFC, 0xFF, 0x3E, 0x0F, - 0x83, 0xE3, 0xFE, 0xFF, 0xBF, 0xE3, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, - 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, - 0x0F, 0x80, 0x07, 0xC7, 0xC3, 0xFD, 0xF3, 0xFF, 0xFC, 0xFF, 0xFF, 0x7E, - 0x1F, 0xDF, 0x03, 0xFF, 0xC0, 0xFF, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, - 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xFC, 0x0F, 0xDF, 0x03, 0xF7, 0xE1, 0xFD, - 0xFF, 0xFF, 0x3F, 0xFF, 0xC7, 0xFD, 0xF0, 0x7C, 0x7C, 0x00, 0x1F, 0x00, - 0x07, 0xFF, 0x03, 0xF7, 0xE1, 0xF9, 0xFF, 0xFC, 0x3F, 0xFE, 0x01, 0xFE, - 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, - 0xC0, 0x03, 0xE0, 0x01, 0xF1, 0xF0, 0xFB, 0xFE, 0x7F, 0xFF, 0xBF, 0xFF, - 0xDF, 0xC3, 0xFF, 0xC0, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, - 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, - 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xC0, 0xFF, 0xFF, 0xF0, - 0x00, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0x3E, 0x7C, 0xF9, 0xF0, 0x00, 0x00, 0x1F, 0x3E, 0x7C, 0xF9, - 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, - 0x7C, 0xF9, 0xF3, 0xFF, 0xFF, 0xFE, 0xF8, 0xF8, 0x00, 0x7C, 0x00, 0x3E, - 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x3E, - 0xF8, 0x3E, 0x7C, 0x3F, 0x3E, 0x3F, 0x1F, 0x3F, 0x0F, 0x9F, 0x07, 0xDF, - 0x03, 0xFF, 0x81, 0xFF, 0xC0, 0xFF, 0xF0, 0x7F, 0xF8, 0x3F, 0x7E, 0x1F, - 0x1F, 0x0F, 0x87, 0xC7, 0xC3, 0xF3, 0xE0, 0xF9, 0xF0, 0x7E, 0xF8, 0x1F, - 0x7C, 0x0F, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xF8, 0xF8, 0x3F, 0x1F, - 0x7F, 0x9F, 0xF3, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xC3, 0xF8, - 0x7F, 0xF8, 0x3F, 0x07, 0xFE, 0x07, 0xC0, 0xFF, 0xC0, 0xF8, 0x1F, 0xF8, - 0x1F, 0x03, 0xFF, 0x03, 0xE0, 0x7F, 0xE0, 0x7C, 0x0F, 0xFC, 0x0F, 0x81, - 0xFF, 0x81, 0xF0, 0x3F, 0xF0, 0x3E, 0x07, 0xFE, 0x07, 0xC0, 0xFF, 0xC0, - 0xF8, 0x1F, 0xF8, 0x1F, 0x03, 0xFF, 0x03, 0xE0, 0x7F, 0xE0, 0x7C, 0x0F, - 0x80, 0xF8, 0xF8, 0x7D, 0xFF, 0x3F, 0xFF, 0xDF, 0xFF, 0xEF, 0xE1, 0xFF, - 0xE0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, - 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, - 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xE0, 0x03, 0xF8, 0x01, 0xFF, 0xC0, 0x7F, - 0xFC, 0x1F, 0xFF, 0xC7, 0xF0, 0xFC, 0xF8, 0x0F, 0xBF, 0x01, 0xFF, 0xC0, - 0x1F, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xE0, 0x0F, 0xFC, 0x01, 0xFF, 0xC0, - 0x7E, 0xF8, 0x0F, 0x9F, 0x87, 0xF1, 0xFF, 0xFC, 0x1F, 0xFF, 0x01, 0xFF, - 0xC0, 0x0F, 0xE0, 0x00, 0xF8, 0xF8, 0x3E, 0xFF, 0x8F, 0xFF, 0xF3, 0xFF, - 0xFC, 0xFE, 0x1F, 0xBF, 0x03, 0xEF, 0xC0, 0xFF, 0xE0, 0x1F, 0xF8, 0x07, - 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xFC, 0x0F, 0xFF, 0x03, 0xEF, - 0xE1, 0xFB, 0xFF, 0xFC, 0xFF, 0xFF, 0x3E, 0xFF, 0x0F, 0x8F, 0x83, 0xE0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0xE3, 0xE1, 0xFF, 0x7C, 0x7F, 0xFF, 0x9F, 0xFF, - 0xF7, 0xF1, 0xFE, 0xF8, 0x0F, 0xFF, 0x01, 0xFF, 0xC0, 0x1F, 0xF8, 0x03, - 0xFF, 0x00, 0x7F, 0xE0, 0x0F, 0xFC, 0x01, 0xFF, 0xC0, 0x7E, 0xF8, 0x0F, - 0xDF, 0x83, 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE1, 0xFF, 0x7C, 0x1F, 0x8F, - 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, - 0x00, 0x03, 0xE0, 0x00, 0x7C, 0xF8, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xE1, - 0xF8, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, - 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x00, 0x07, 0xF0, 0x0F, 0xFE, - 0x0F, 0xFF, 0x87, 0xFF, 0xE7, 0xE1, 0xF3, 0xE0, 0x79, 0xF8, 0x00, 0xFF, - 0x80, 0x3F, 0xFC, 0x1F, 0xFF, 0x83, 0xFF, 0xC0, 0x3F, 0xF0, 0x01, 0xFF, - 0xC0, 0x7D, 0xF0, 0x7E, 0xFF, 0xFE, 0x3F, 0xFF, 0x0F, 0xFF, 0x01, 0xFE, - 0x00, 0x3E, 0x1F, 0x0F, 0x87, 0xC3, 0xE7, 0xFF, 0xFF, 0xFF, 0x3E, 0x1F, - 0x0F, 0x87, 0xC3, 0xE1, 0xF0, 0xF8, 0x7C, 0x3E, 0x1F, 0x0F, 0x87, 0xF3, - 0xF8, 0xFC, 0x3E, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, - 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, - 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0xFF, 0xF0, 0xFF, 0xFF, - 0xFF, 0x7F, 0xFF, 0x9F, 0xF7, 0xC7, 0xE3, 0xE0, 0x7C, 0x07, 0xCF, 0x80, - 0xF9, 0xF0, 0x1F, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, 0x7C, 0x1F, 0x07, 0x83, - 0xC0, 0xF8, 0xF8, 0x1F, 0x1F, 0x01, 0xE3, 0xC0, 0x3E, 0x78, 0x07, 0xDF, - 0x00, 0x7B, 0xC0, 0x0F, 0xF8, 0x01, 0xFF, 0x00, 0x1F, 0xC0, 0x03, 0xF8, - 0x00, 0x7F, 0x00, 0x07, 0xC0, 0x00, 0xFC, 0x1F, 0x03, 0xEF, 0x83, 0xE0, - 0x7D, 0xF0, 0x7E, 0x1F, 0x3E, 0x0F, 0xC3, 0xE3, 0xC3, 0xF8, 0x7C, 0x7C, - 0x7F, 0x0F, 0x0F, 0x8F, 0xF3, 0xE1, 0xF1, 0xDE, 0x7C, 0x1E, 0x7B, 0xCF, - 0x83, 0xEF, 0x39, 0xE0, 0x7D, 0xE7, 0x3C, 0x07, 0xB8, 0xFF, 0x80, 0xF7, - 0x1F, 0xE0, 0x1F, 0xE3, 0xFC, 0x03, 0xFC, 0x3F, 0x80, 0x3F, 0x07, 0xF0, - 0x07, 0xE0, 0xFC, 0x00, 0xFC, 0x1F, 0x80, 0x0F, 0x83, 0xF0, 0x00, 0xFC, - 0x1F, 0x9F, 0x07, 0xE7, 0xE3, 0xF0, 0xF8, 0xF8, 0x1F, 0x7E, 0x07, 0xDF, - 0x00, 0xFF, 0x80, 0x1F, 0xE0, 0x07, 0xF0, 0x00, 0xF8, 0x00, 0x7F, 0x00, - 0x3F, 0xE0, 0x0F, 0xF8, 0x07, 0xDF, 0x03, 0xF7, 0xE0, 0xF8, 0xF8, 0x7E, - 0x3F, 0x1F, 0x07, 0xEF, 0xC0, 0xF8, 0x7C, 0x03, 0xEF, 0x80, 0xF9, 0xF8, - 0x1F, 0x1F, 0x03, 0xE3, 0xE0, 0xF8, 0x7C, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, - 0x78, 0x0F, 0x1F, 0x01, 0xF3, 0xC0, 0x3E, 0x78, 0x03, 0xDF, 0x00, 0x7F, - 0xC0, 0x0F, 0xF8, 0x00, 0xFF, 0x00, 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, - 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x07, 0xF8, - 0x00, 0xFE, 0x00, 0x1F, 0x80, 0x03, 0xE0, 0x00, 0x7F, 0xFE, 0x7F, 0xFE, - 0x7F, 0xFE, 0x7F, 0xFE, 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, - 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, - 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x87, - 0xC7, 0xE3, 0xF1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC1, - 0xE0, 0xF0, 0xF9, 0xF8, 0xF0, 0x7E, 0x0F, 0x83, 0xC1, 0xE0, 0xF0, 0x78, - 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xFC, 0x7E, 0x1F, 0x07, 0x80, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xE0, 0xF0, 0x7C, 0x3E, 0x1F, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, - 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x7C, 0x1F, 0x83, 0xC7, 0xE7, 0xC3, - 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC7, 0xE3, 0xE1, - 0xF0, 0xF0, 0x00, 0x3C, 0x00, 0xFE, 0x0F, 0xFE, 0x1E, 0x1F, 0xFC, 0x0F, - 0xC0, 0x0F, 0x00}; - -const GFXglyph FreeSansBold18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 10, 0, 1}, // 0x20 ' ' - {0, 5, 25, 12, 4, -24}, // 0x21 '!' - {16, 13, 9, 17, 2, -25}, // 0x22 '"' - {31, 20, 24, 19, 0, -23}, // 0x23 '#' - {91, 19, 29, 19, 0, -25}, // 0x24 '$' - {160, 29, 25, 31, 1, -24}, // 0x25 '%' - {251, 22, 25, 25, 2, -24}, // 0x26 '&' - {320, 5, 9, 9, 2, -25}, // 0x27 ''' - {326, 9, 33, 12, 1, -25}, // 0x28 '(' - {364, 9, 33, 12, 1, -25}, // 0x29 ')' - {402, 12, 11, 14, 0, -25}, // 0x2A '*' - {419, 16, 16, 20, 2, -15}, // 0x2B '+' - {451, 5, 11, 9, 2, -4}, // 0x2C ',' - {458, 9, 4, 12, 1, -10}, // 0x2D '-' - {463, 5, 5, 9, 2, -4}, // 0x2E '.' - {467, 9, 25, 10, 0, -24}, // 0x2F '/' - {496, 17, 25, 19, 1, -24}, // 0x30 '0' - {550, 10, 25, 19, 3, -24}, // 0x31 '1' - {582, 17, 25, 19, 1, -24}, // 0x32 '2' - {636, 17, 25, 19, 1, -24}, // 0x33 '3' - {690, 16, 25, 19, 2, -24}, // 0x34 '4' - {740, 17, 25, 19, 1, -24}, // 0x35 '5' - {794, 18, 25, 19, 1, -24}, // 0x36 '6' - {851, 17, 25, 19, 1, -24}, // 0x37 '7' - {905, 17, 25, 19, 1, -24}, // 0x38 '8' - {959, 17, 25, 19, 1, -24}, // 0x39 '9' - {1013, 5, 18, 9, 2, -17}, // 0x3A ':' - {1025, 5, 24, 9, 2, -17}, // 0x3B ';' - {1040, 18, 17, 20, 1, -16}, // 0x3C '<' - {1079, 17, 12, 20, 2, -13}, // 0x3D '=' - {1105, 18, 17, 20, 1, -16}, // 0x3E '>' - {1144, 18, 26, 21, 2, -25}, // 0x3F '?' - {1203, 32, 31, 34, 1, -25}, // 0x40 '@' - {1327, 24, 26, 24, 0, -25}, // 0x41 'A' - {1405, 20, 26, 25, 3, -25}, // 0x42 'B' - {1470, 23, 26, 25, 1, -25}, // 0x43 'C' - {1545, 21, 26, 25, 3, -25}, // 0x44 'D' - {1614, 19, 26, 23, 3, -25}, // 0x45 'E' - {1676, 17, 26, 22, 3, -25}, // 0x46 'F' - {1732, 24, 26, 27, 1, -25}, // 0x47 'G' - {1810, 20, 26, 26, 3, -25}, // 0x48 'H' - {1875, 5, 26, 11, 3, -25}, // 0x49 'I' - {1892, 16, 26, 20, 1, -25}, // 0x4A 'J' - {1944, 22, 26, 25, 3, -25}, // 0x4B 'K' - {2016, 17, 26, 22, 3, -25}, // 0x4C 'L' - {2072, 24, 26, 30, 3, -25}, // 0x4D 'M' - {2150, 20, 26, 26, 3, -25}, // 0x4E 'N' - {2215, 25, 26, 27, 1, -25}, // 0x4F 'O' - {2297, 19, 26, 24, 3, -25}, // 0x50 'P' - {2359, 25, 27, 27, 1, -25}, // 0x51 'Q' - {2444, 21, 26, 25, 3, -25}, // 0x52 'R' - {2513, 20, 26, 24, 2, -25}, // 0x53 'S' - {2578, 19, 26, 23, 2, -25}, // 0x54 'T' - {2640, 20, 26, 26, 3, -25}, // 0x55 'U' - {2705, 22, 26, 23, 1, -25}, // 0x56 'V' - {2777, 32, 26, 34, 1, -25}, // 0x57 'W' - {2881, 22, 26, 24, 1, -25}, // 0x58 'X' - {2953, 21, 26, 22, 1, -25}, // 0x59 'Y' - {3022, 19, 26, 21, 1, -25}, // 0x5A 'Z' - {3084, 8, 33, 12, 2, -25}, // 0x5B '[' - {3117, 10, 25, 10, 0, -24}, // 0x5C '\' - {3149, 8, 33, 12, 1, -25}, // 0x5D ']' - {3182, 16, 15, 20, 2, -23}, // 0x5E '^' - {3212, 21, 3, 19, -1, 5}, // 0x5F '_' - {3220, 7, 5, 9, 1, -25}, // 0x60 '`' - {3225, 18, 19, 20, 1, -18}, // 0x61 'a' - {3268, 18, 26, 22, 2, -25}, // 0x62 'b' - {3327, 17, 19, 20, 1, -18}, // 0x63 'c' - {3368, 19, 26, 22, 1, -25}, // 0x64 'd' - {3430, 18, 19, 20, 1, -18}, // 0x65 'e' - {3473, 10, 26, 12, 1, -25}, // 0x66 'f' - {3506, 18, 26, 21, 1, -18}, // 0x67 'g' - {3565, 17, 26, 21, 2, -25}, // 0x68 'h' - {3621, 5, 26, 10, 2, -25}, // 0x69 'i' - {3638, 7, 33, 10, 0, -25}, // 0x6A 'j' - {3667, 17, 26, 20, 2, -25}, // 0x6B 'k' - {3723, 5, 26, 9, 2, -25}, // 0x6C 'l' - {3740, 27, 19, 31, 2, -18}, // 0x6D 'm' - {3805, 17, 19, 21, 2, -18}, // 0x6E 'n' - {3846, 19, 19, 21, 1, -18}, // 0x6F 'o' - {3892, 18, 26, 22, 2, -18}, // 0x70 'p' - {3951, 19, 26, 22, 1, -18}, // 0x71 'q' - {4013, 11, 19, 14, 2, -18}, // 0x72 'r' - {4040, 17, 19, 19, 1, -18}, // 0x73 's' - {4081, 9, 23, 12, 1, -22}, // 0x74 't' - {4107, 17, 19, 21, 2, -18}, // 0x75 'u' - {4148, 19, 19, 19, 0, -18}, // 0x76 'v' - {4194, 27, 19, 27, 0, -18}, // 0x77 'w' - {4259, 18, 19, 19, 1, -18}, // 0x78 'x' - {4302, 19, 26, 19, 0, -18}, // 0x79 'y' - {4364, 16, 19, 18, 1, -18}, // 0x7A 'z' - {4402, 9, 33, 14, 1, -25}, // 0x7B '{' - {4440, 3, 33, 10, 4, -25}, // 0x7C '|' - {4453, 9, 33, 14, 3, -25}, // 0x7D '}' - {4491, 15, 6, 18, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSansBold18pt7b PROGMEM = { - (uint8_t *)FreeSansBold18pt7bBitmaps, (GFXglyph *)FreeSansBold18pt7bGlyphs, - 0x20, 0x7E, 42}; - -// Approx. 5175 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h deleted file mode 100644 index 5dd7a54..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h +++ /dev/null @@ -1,786 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold24pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xDF, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xC7, 0x0E, 0x1C, 0x00, 0x00, 0x07, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFE, 0x1F, 0xFF, 0x87, 0xFF, 0xE1, - 0xFF, 0xF8, 0x7F, 0xFE, 0x1F, 0xFF, 0x87, 0xFF, 0xE1, 0xFD, 0xF0, 0x3E, - 0x7C, 0x0F, 0x9F, 0x03, 0xE3, 0x80, 0x70, 0xE0, 0x1C, 0x00, 0xF8, 0x3E, - 0x00, 0x3E, 0x0F, 0x80, 0x0F, 0x83, 0xE0, 0x03, 0xE0, 0xF8, 0x00, 0xF8, - 0x7C, 0x00, 0x7C, 0x1F, 0x00, 0x1F, 0x07, 0xC1, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xFF, - 0x03, 0xE0, 0xF8, 0x00, 0xF8, 0x3E, 0x00, 0x3E, 0x1F, 0x00, 0x1F, 0x07, - 0xC0, 0x07, 0xC1, 0xF0, 0x01, 0xF0, 0x7C, 0x00, 0x7C, 0x1F, 0x03, 0xFF, - 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF3, - 0xFF, 0xFF, 0xFC, 0x0F, 0x87, 0xC0, 0x07, 0xC1, 0xF0, 0x01, 0xF0, 0x7C, - 0x00, 0x7C, 0x1F, 0x00, 0x1F, 0x07, 0xC0, 0x07, 0xC3, 0xE0, 0x03, 0xE0, - 0xF8, 0x00, 0xF8, 0x3E, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF8, 0x7F, 0x73, 0xFE, 0x7F, 0x38, - 0xFF, 0x3F, 0x1C, 0x3F, 0xDF, 0x8E, 0x0F, 0xEF, 0xC7, 0x07, 0xF7, 0xE3, - 0x80, 0x03, 0xF9, 0xC0, 0x01, 0xFE, 0xE0, 0x00, 0x7F, 0xF0, 0x00, 0x3F, - 0xFC, 0x00, 0x0F, 0xFF, 0xC0, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0x80, - 0x0F, 0xFF, 0xE0, 0x01, 0xFF, 0xF8, 0x00, 0xE7, 0xFC, 0x00, 0x71, 0xFF, - 0x00, 0x38, 0x7F, 0xFF, 0x1C, 0x1F, 0xFF, 0x8E, 0x0F, 0xFF, 0xC7, 0x07, - 0xFF, 0xE3, 0x87, 0xFB, 0xF9, 0xC3, 0xF9, 0xFE, 0xE7, 0xFC, 0x7F, 0xFF, - 0xFC, 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x00, 0x3F, - 0xE0, 0x00, 0x03, 0x80, 0x00, 0x01, 0xC0, 0x00, 0x00, 0xE0, 0x00, 0x00, - 0x70, 0x00, 0x03, 0xE0, 0x00, 0x3C, 0x00, 0x1F, 0xF0, 0x00, 0x78, 0x00, - 0x7F, 0xF8, 0x01, 0xE0, 0x01, 0xFF, 0xF0, 0x03, 0xC0, 0x07, 0xFF, 0xF0, - 0x0F, 0x00, 0x0F, 0x83, 0xE0, 0x1E, 0x00, 0x3E, 0x03, 0xE0, 0x78, 0x00, - 0x78, 0x03, 0xC0, 0xF0, 0x00, 0xF0, 0x07, 0x83, 0xC0, 0x01, 0xE0, 0x0F, - 0x07, 0x80, 0x03, 0xE0, 0x3E, 0x1E, 0x00, 0x03, 0xE0, 0xF8, 0x3C, 0x00, - 0x07, 0xFF, 0xF0, 0xF0, 0x00, 0x07, 0xFF, 0xC1, 0xE0, 0x00, 0x07, 0xFF, - 0x07, 0x80, 0x00, 0x07, 0xFC, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x3C, 0x00, - 0x00, 0x00, 0x00, 0xF0, 0x1F, 0x00, 0x00, 0x01, 0xE0, 0xFF, 0x80, 0x00, - 0x07, 0x87, 0xFF, 0xC0, 0x00, 0x0F, 0x0F, 0xFF, 0x80, 0x00, 0x3C, 0x3F, - 0xFF, 0x80, 0x00, 0x78, 0xFC, 0x1F, 0x00, 0x01, 0xE1, 0xF0, 0x1F, 0x00, - 0x03, 0xC3, 0xC0, 0x1E, 0x00, 0x0F, 0x07, 0x80, 0x3C, 0x00, 0x1E, 0x0F, - 0x00, 0x78, 0x00, 0x78, 0x1F, 0x01, 0xF0, 0x00, 0xF0, 0x1F, 0x07, 0xC0, - 0x03, 0xC0, 0x3F, 0xFF, 0x80, 0x07, 0x80, 0x3F, 0xFE, 0x00, 0x1E, 0x00, - 0x7F, 0xF8, 0x00, 0x7C, 0x00, 0x3F, 0xE0, 0x00, 0xF0, 0x00, 0x1F, 0x00, - 0x00, 0x3F, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, - 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xCF, 0xC0, 0x00, 0xFE, - 0x1F, 0x00, 0x03, 0xF8, 0x7C, 0x00, 0x0F, 0xE1, 0xF0, 0x00, 0x3F, 0xC7, - 0xC0, 0x00, 0x7F, 0x3E, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x03, 0xFF, 0xC0, - 0x00, 0x07, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x07, 0xFF, 0x03, 0xE0, 0x3F, 0xFE, 0x0F, 0x83, 0xFF, 0xF8, 0x3E, 0x1F, - 0xF3, 0xF1, 0xF8, 0x7F, 0x07, 0xE7, 0xE3, 0xFC, 0x1F, 0xFF, 0x0F, 0xE0, - 0x3F, 0xFC, 0x3F, 0x80, 0x7F, 0xF0, 0xFE, 0x01, 0xFF, 0x83, 0xF8, 0x03, - 0xFE, 0x0F, 0xF0, 0x0F, 0xF0, 0x3F, 0xE0, 0x7F, 0xE0, 0x7F, 0xC3, 0xFF, - 0xC1, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFB, 0xFC, - 0x0F, 0xFF, 0xC7, 0xF8, 0x1F, 0xFE, 0x0F, 0xE0, 0x0F, 0xE0, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBE, 0x7C, 0xF8, 0xE1, 0xC0, 0x00, - 0xF0, 0x0F, 0x80, 0xF8, 0x07, 0xC0, 0x7C, 0x07, 0xE0, 0x3E, 0x03, 0xF0, - 0x1F, 0x80, 0xF8, 0x0F, 0xC0, 0x7E, 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x0F, - 0xC0, 0xFC, 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, - 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0x3F, 0x00, 0xF8, 0x07, 0xE0, 0x3F, 0x01, - 0xF8, 0x07, 0xC0, 0x3F, 0x01, 0xF8, 0x07, 0xC0, 0x3F, 0x00, 0xF8, 0x07, - 0xE0, 0x1F, 0x00, 0xF8, 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x01, 0xE0, 0x78, - 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, - 0x0F, 0xC0, 0x3E, 0x01, 0xF8, 0x0F, 0xC0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, - 0x7E, 0x01, 0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x1F, 0x80, 0xFC, 0x07, - 0xE0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xE0, 0x3F, 0x01, 0xF8, - 0x0F, 0xC0, 0x7C, 0x07, 0xE0, 0x3F, 0x01, 0xF0, 0x1F, 0x80, 0xF8, 0x0F, - 0xC0, 0x7C, 0x07, 0xE0, 0x3E, 0x03, 0xF0, 0x1F, 0x01, 0xF0, 0x00, 0x03, - 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x06, 0x38, 0xDF, 0xFF, 0xFF, 0xFF, - 0x9F, 0xFE, 0x07, 0xC0, 0x1F, 0xC0, 0x3F, 0x80, 0xF7, 0x83, 0xC7, 0x87, - 0x8F, 0x02, 0x08, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, - 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, - 0x00, 0x3E, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x1F, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x87, 0x0E, 0x1C, 0x78, 0xEF, 0xDF, 0x38, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x80, 0x00, 0x38, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0x00, - 0x70, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x38, - 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x38, 0x03, 0xC0, 0x1C, 0x00, - 0xE0, 0x07, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0E, 0x00, 0x70, - 0x03, 0x80, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x00, 0x00, - 0xFF, 0x00, 0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF8, 0x1F, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x3F, 0xC3, 0xFC, 0x7F, 0x81, 0xFE, 0x7F, - 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x7F, - 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x81, 0xFE, 0x3F, - 0xC3, 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, 0x1F, 0xFF, 0xF8, 0x0F, - 0xFF, 0xF0, 0x03, 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x00, 0x3C, 0x01, 0xF0, - 0x07, 0xC0, 0x3F, 0x01, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, - 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, - 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, - 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x01, 0xFE, 0x00, 0x0F, 0xFF, 0x80, - 0x3F, 0xFF, 0x80, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0x9F, - 0xE0, 0xFF, 0x7F, 0x80, 0xFF, 0xFE, 0x01, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, - 0x03, 0xFF, 0xF0, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x7F, 0x80, 0x00, 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x7F, - 0xC0, 0x01, 0xFF, 0x00, 0x07, 0xF8, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0x00, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x00, 0x01, - 0xFC, 0x00, 0x03, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xBF, - 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFC, 0x01, 0xFE, 0x00, 0x0F, - 0xFF, 0x80, 0x7F, 0xFF, 0x81, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0x8F, 0xFF, - 0xFF, 0x1F, 0xE1, 0xFF, 0x7F, 0x81, 0xFE, 0xFE, 0x01, 0xFD, 0xFC, 0x03, - 0xFB, 0xF8, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7F, - 0x00, 0x01, 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0xC0, - 0x00, 0xFF, 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0xC0, - 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, - 0x07, 0xFF, 0xF8, 0x0F, 0xF7, 0xF8, 0x3F, 0xCF, 0xFF, 0xFF, 0x9F, 0xFF, - 0xFE, 0x1F, 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x07, 0xF8, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x03, 0xFE, 0x00, 0x0F, 0xF8, - 0x00, 0x7F, 0xE0, 0x03, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x7B, 0xF8, 0x01, - 0xEF, 0xE0, 0x0F, 0x3F, 0x80, 0x78, 0xFE, 0x01, 0xE3, 0xF8, 0x0F, 0x0F, - 0xE0, 0x38, 0x3F, 0x81, 0xE0, 0xFE, 0x07, 0x03, 0xF8, 0x3C, 0x0F, 0xE1, - 0xE0, 0x3F, 0x87, 0x00, 0xFE, 0x3C, 0x03, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0x00, 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0x80, - 0x00, 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xE0, 0x1F, 0xFF, 0xFC, 0x3F, - 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0x8F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xF1, 0xF8, 0x03, 0xEF, 0xFE, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFE, - 0x1F, 0xFF, 0xFE, 0x7F, 0xFF, 0xFC, 0xFE, 0x07, 0xFC, 0x00, 0x07, 0xF8, - 0x00, 0x07, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, - 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xF8, - 0x0F, 0xF7, 0xF8, 0x3F, 0xEF, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0x0F, 0xFF, - 0xFC, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x03, 0xF8, 0x00, 0x00, 0xFF, - 0x00, 0x07, 0xFF, 0x80, 0x1F, 0xFF, 0xC0, 0x7F, 0xFF, 0x81, 0xFF, 0xFF, - 0x87, 0xFF, 0xFF, 0x8F, 0xF0, 0xFF, 0x3F, 0xC0, 0xFE, 0x7F, 0x00, 0x00, - 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE3, 0xF0, 0x1F, - 0xDF, 0xF8, 0x3F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0xFF, 0xFF, 0xF9, 0xFF, - 0x87, 0xFB, 0xFC, 0x07, 0xF7, 0xF8, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, - 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, 0x7E, 0x00, 0xFE, 0xFC, 0x01, - 0xFD, 0xFC, 0x07, 0xFB, 0xF8, 0x0F, 0xE3, 0xFC, 0x7F, 0xC7, 0xFF, 0xFF, - 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xF8, 0x0F, 0xFF, 0xE0, 0x07, 0xFF, 0x80, - 0x03, 0xF8, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x3F, 0x00, - 0x00, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, - 0x7F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, - 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xF8, 0x00, 0x07, 0xF0, - 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFC, 0x00, - 0x01, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x1F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x7F, 0x83, 0xFC, 0x7F, - 0x00, 0xFC, 0x7E, 0x00, 0xFC, 0x7E, 0x00, 0x7C, 0x7E, 0x00, 0x7C, 0x7E, - 0x00, 0xFC, 0x3F, 0x00, 0xF8, 0x3F, 0x83, 0xF8, 0x0F, 0xFF, 0xF0, 0x07, - 0xFF, 0xC0, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF8, 0x3F, 0xC3, 0xFC, 0x7F, - 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, - 0x00, 0xFE, 0x7F, 0x83, 0xFE, 0x7F, 0xFF, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xF8, 0x0F, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x00, - 0xFF, 0x00, 0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x3F, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x7F, 0xC3, 0xFC, 0x7F, 0x01, 0xFE, 0xFF, - 0x00, 0xFE, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0x7F, - 0x01, 0xFF, 0x7F, 0xC3, 0xFF, 0x7F, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x1F, - 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0x07, 0xFE, 0x7F, 0x01, 0xFC, 0x7E, 0x00, - 0x00, 0x7E, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x7F, 0x01, 0xFC, 0x7F, - 0x83, 0xFC, 0x7F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF0, 0x1F, - 0xFF, 0xE0, 0x07, 0xFF, 0x80, 0x01, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0x1C, 0x38, 0x71, 0xE7, 0xBF, 0x7C, 0xE0, 0x00, - 0x00, 0x02, 0x00, 0x00, 0x3C, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xF0, 0x01, - 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, 0x7F, 0xFC, - 0x01, 0xFF, 0xC0, 0x03, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xE0, 0x00, - 0x1F, 0xF8, 0x00, 0x3F, 0xFE, 0x00, 0x0F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, - 0x01, 0xFF, 0xF8, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x0F, 0xE0, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x80, 0x00, - 0x01, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xFE, 0x00, - 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xF0, 0x00, 0x7F, 0xFC, - 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0xE0, - 0x01, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0xFF, 0xF8, 0x0F, 0xFF, 0x80, 0xFF, - 0xFC, 0x03, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x1E, 0x00, - 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x07, 0xFF, 0xC0, 0x1F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0x7F, - 0x83, 0xFE, 0x7F, 0x01, 0xFE, 0xFF, 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x00, - 0x01, 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xF8, 0x00, - 0x3F, 0xF0, 0x00, 0x3F, 0xE0, 0x00, 0x7F, 0x80, 0x00, 0x7F, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xE0, - 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF8, 0x00, - 0x03, 0xFE, 0x01, 0xFF, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x7F, - 0x80, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x07, 0xF0, 0x00, - 0x00, 0x1F, 0x00, 0xFC, 0x00, 0x00, 0x01, 0xF0, 0x3F, 0x00, 0x00, 0x00, - 0x3E, 0x0F, 0xC0, 0x07, 0xE3, 0xC3, 0xE1, 0xF0, 0x03, 0xFE, 0xF8, 0x3C, - 0x7E, 0x01, 0xFF, 0xFF, 0x07, 0x8F, 0x80, 0x7E, 0x1F, 0xC0, 0x7B, 0xF0, - 0x1F, 0x81, 0xF8, 0x0F, 0x7C, 0x03, 0xE0, 0x1F, 0x01, 0xEF, 0x80, 0xF8, - 0x03, 0xC0, 0x3F, 0xF0, 0x1E, 0x00, 0x78, 0x07, 0xFC, 0x07, 0xC0, 0x0F, - 0x00, 0xFF, 0x80, 0xF0, 0x01, 0xE0, 0x1F, 0xF0, 0x1E, 0x00, 0x38, 0x07, - 0xFE, 0x07, 0xC0, 0x0F, 0x00, 0xFF, 0xC0, 0xF8, 0x01, 0xE0, 0x1E, 0xF8, - 0x1F, 0x00, 0x38, 0x07, 0xDF, 0x03, 0xE0, 0x0F, 0x00, 0xF3, 0xF0, 0x7C, - 0x03, 0xE0, 0x3E, 0x3E, 0x0F, 0xC0, 0xFC, 0x0F, 0x87, 0xC0, 0xFC, 0x3F, - 0xC7, 0xF0, 0xFC, 0x1F, 0xFF, 0xFF, 0xFC, 0x0F, 0xC1, 0xFF, 0xEF, 0xFF, - 0x01, 0xFC, 0x1F, 0xF8, 0xFF, 0x80, 0x1F, 0xC0, 0xFC, 0x07, 0xC0, 0x01, - 0xFC, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x60, 0x00, 0x01, 0xFF, 0xFF, - 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x7F, 0xFF, 0xF0, - 0x00, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, - 0x0F, 0xF8, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, - 0x1F, 0xFC, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, - 0x3F, 0xFE, 0x00, 0x00, 0x3F, 0x7E, 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, - 0x7F, 0x7F, 0x00, 0x00, 0x7E, 0x3F, 0x00, 0x00, 0xFE, 0x3F, 0x80, 0x00, - 0xFE, 0x3F, 0x80, 0x01, 0xFC, 0x1F, 0x80, 0x01, 0xFC, 0x1F, 0xC0, 0x01, - 0xF8, 0x1F, 0xC0, 0x03, 0xF8, 0x0F, 0xE0, 0x03, 0xF8, 0x0F, 0xE0, 0x03, - 0xF0, 0x0F, 0xE0, 0x07, 0xF0, 0x07, 0xF0, 0x07, 0xFF, 0xFF, 0xF0, 0x07, - 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xF8, 0x1F, - 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x3F, - 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x00, 0xFE, 0x3F, 0x80, 0x00, 0xFE, 0x7F, - 0x00, 0x00, 0xFE, 0x7F, 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x7F, 0xFF, - 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFF, - 0x8F, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFF, 0x3F, 0x80, 0x1F, 0xF7, 0xF0, - 0x01, 0xFE, 0xFE, 0x00, 0x1F, 0xDF, 0xC0, 0x03, 0xFB, 0xF8, 0x00, 0x7F, - 0x7F, 0x00, 0x1F, 0xCF, 0xE0, 0x07, 0xF9, 0xFF, 0xFF, 0xFE, 0x3F, 0xFF, - 0xFF, 0x87, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xE3, - 0xFF, 0xFF, 0xFE, 0x7F, 0x00, 0x1F, 0xEF, 0xE0, 0x01, 0xFD, 0xFC, 0x00, - 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, - 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0x00, 0x1F, 0xEF, 0xFF, 0xFF, - 0xFD, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xFC, 0x1F, 0xFF, 0xFC, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x03, 0xFF, - 0xF8, 0x00, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0xFF, 0xC1, 0xFF, 0x81, 0xFF, 0x0F, 0xF8, 0x01, 0xFE, - 0x3F, 0xC0, 0x07, 0xF9, 0xFE, 0x00, 0x0F, 0xE7, 0xF8, 0x00, 0x1F, 0xDF, - 0xC0, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x0F, 0xE0, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, - 0x7F, 0x00, 0x01, 0xFD, 0xFC, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x3F, 0xCF, - 0xF0, 0x00, 0xFE, 0x3F, 0xE0, 0x07, 0xF8, 0x7F, 0xE0, 0x7F, 0xC0, 0xFF, - 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0xC0, 0x07, 0xFF, - 0xFE, 0x00, 0x0F, 0xFF, 0xE0, 0x00, 0x07, 0xFC, 0x00, 0xFF, 0xFF, 0xC0, - 0x0F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF8, 0xFE, 0x00, 0xFF, 0xCF, 0xE0, 0x03, - 0xFC, 0xFE, 0x00, 0x1F, 0xEF, 0xE0, 0x01, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, - 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, - 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x7F, - 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xFF, 0xE0, - 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x1F, - 0xEF, 0xE0, 0x01, 0xFE, 0xFE, 0x00, 0x3F, 0xCF, 0xE0, 0x0F, 0xFC, 0xFF, - 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xF7, - 0xFF, 0xFF, 0xFB, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, - 0x07, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, - 0xFE, 0x7F, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x9F, 0xC0, 0x00, 0x0F, 0xE0, - 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFC, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xFF, - 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xFF, - 0x07, 0xFE, 0x03, 0xFF, 0x0F, 0xF0, 0x01, 0xFE, 0x3F, 0xC0, 0x01, 0xFC, - 0x7F, 0x00, 0x01, 0xFD, 0xFE, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x00, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0xF8, - 0x00, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0xC0, - 0x07, 0xFF, 0xFF, 0xC0, 0x00, 0x1F, 0xBF, 0x80, 0x00, 0x3F, 0x7F, 0x00, - 0x00, 0x7E, 0xFF, 0x00, 0x01, 0xFC, 0xFF, 0x00, 0x03, 0xF9, 0xFF, 0x00, - 0x0F, 0xF1, 0xFF, 0x00, 0x3F, 0xE3, 0xFF, 0x83, 0xFF, 0xC3, 0xFF, 0xFF, - 0xFF, 0x83, 0xFF, 0xFF, 0xDF, 0x03, 0xFF, 0xFF, 0x9E, 0x03, 0xFF, 0xFE, - 0x3C, 0x01, 0xFF, 0xF0, 0x78, 0x00, 0x7F, 0x80, 0x00, 0xFE, 0x00, 0x0F, - 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xE0, - 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, - 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, - 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, - 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, - 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, - 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, - 0xFF, 0xC0, 0x01, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x01, - 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, - 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, - 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, - 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, - 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xFF, 0xE0, - 0x1F, 0xFF, 0x80, 0x7F, 0xFE, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xE0, 0x1F, - 0xFF, 0xC0, 0xFF, 0xFF, 0x87, 0xFD, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFC, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0xFE, - 0x00, 0x0F, 0xF3, 0xF8, 0x00, 0x7F, 0x8F, 0xE0, 0x03, 0xFC, 0x3F, 0x80, - 0x1F, 0xE0, 0xFE, 0x00, 0xFF, 0x83, 0xF8, 0x07, 0xFC, 0x0F, 0xE0, 0x1F, - 0xE0, 0x3F, 0x80, 0xFF, 0x00, 0xFE, 0x07, 0xF8, 0x03, 0xF8, 0x3F, 0xC0, - 0x0F, 0xE1, 0xFE, 0x00, 0x3F, 0x8F, 0xF0, 0x00, 0xFE, 0x7F, 0x80, 0x03, - 0xFB, 0xFC, 0x00, 0x0F, 0xFF, 0xE0, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0xFF, - 0xFF, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x3F, 0xF7, - 0xF8, 0x00, 0xFF, 0x8F, 0xF0, 0x03, 0xFC, 0x3F, 0xC0, 0x0F, 0xE0, 0x7F, - 0x80, 0x3F, 0x80, 0xFF, 0x00, 0xFE, 0x01, 0xFE, 0x03, 0xF8, 0x07, 0xFC, - 0x0F, 0xE0, 0x0F, 0xF0, 0x3F, 0x80, 0x1F, 0xE0, 0xFE, 0x00, 0x3F, 0xC3, - 0xF8, 0x00, 0xFF, 0x8F, 0xE0, 0x01, 0xFE, 0x3F, 0x80, 0x03, 0xFC, 0xFE, - 0x00, 0x07, 0xFB, 0xF8, 0x00, 0x1F, 0xF0, 0xFE, 0x00, 0x01, 0xFC, 0x00, - 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, - 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, - 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, - 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, - 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, - 0x07, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xE0, 0x03, - 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0xFC, 0x00, - 0x7F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xFF, 0xC0, - 0x1F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFC, - 0x07, 0xFF, 0xFF, 0xBE, 0x03, 0xEF, 0xFF, 0xDF, 0x01, 0xF7, 0xFF, 0xEF, - 0x80, 0xFB, 0xFF, 0xF7, 0xC0, 0xFD, 0xFF, 0xFB, 0xF0, 0x7C, 0xFF, 0xFC, - 0xF8, 0x3E, 0x7F, 0xFE, 0x7C, 0x1F, 0x3F, 0xFF, 0x3E, 0x0F, 0x9F, 0xFF, - 0x9F, 0x8F, 0x8F, 0xFF, 0xC7, 0xC7, 0xC7, 0xFF, 0xE3, 0xE3, 0xE3, 0xFF, - 0xF1, 0xF1, 0xF1, 0xFF, 0xF8, 0xFC, 0xF8, 0xFF, 0xFC, 0x3E, 0xF8, 0x7F, - 0xFE, 0x1F, 0x7C, 0x3F, 0xFF, 0x0F, 0xBE, 0x1F, 0xFF, 0x87, 0xDF, 0x0F, - 0xFF, 0xC3, 0xFF, 0x07, 0xFF, 0xE0, 0xFF, 0x83, 0xFF, 0xF0, 0x7F, 0xC1, - 0xFF, 0xF8, 0x3F, 0xE0, 0xFF, 0xFC, 0x1F, 0xF0, 0x7F, 0xFE, 0x07, 0xF0, - 0x3F, 0xFF, 0x03, 0xF8, 0x1F, 0xC0, 0xFE, 0x00, 0x07, 0xFF, 0xF0, 0x00, - 0x7F, 0xFF, 0x80, 0x07, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0xC0, 0x07, 0xFF, - 0xFC, 0x00, 0x7F, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xF0, - 0x07, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0xF8, 0x07, 0xFF, 0xEF, 0xC0, 0x7F, - 0xFE, 0xFE, 0x07, 0xFF, 0xE7, 0xE0, 0x7F, 0xFE, 0x7F, 0x07, 0xFF, 0xE3, - 0xF0, 0x7F, 0xFE, 0x1F, 0x87, 0xFF, 0xE1, 0xFC, 0x7F, 0xFE, 0x0F, 0xC7, - 0xFF, 0xE0, 0xFE, 0x7F, 0xFE, 0x07, 0xE7, 0xFF, 0xE0, 0x3F, 0x7F, 0xFE, - 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xE0, 0x0F, - 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xE0, 0x07, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, - 0xE0, 0x03, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0xE0, 0x00, 0xFF, 0xFE, 0x00, - 0x0F, 0xFF, 0xE0, 0x00, 0x7F, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, - 0x80, 0x00, 0x7F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, - 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x3F, 0xC0, - 0x0F, 0xF8, 0x3F, 0xC0, 0x01, 0xFE, 0x1F, 0xC0, 0x00, 0x7F, 0x1F, 0xE0, - 0x00, 0x3F, 0xCF, 0xE0, 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x07, 0xF7, 0xF8, - 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x00, 0xFF, 0xFC, 0x00, 0x00, 0x7F, 0xFE, - 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x1F, 0xFF, 0x80, 0x00, 0x0F, 0xFF, - 0xC0, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x01, 0xFF, - 0xFC, 0x00, 0x01, 0xFE, 0xFE, 0x00, 0x00, 0xFE, 0x7F, 0x00, 0x00, 0x7F, - 0x3F, 0xC0, 0x00, 0x7F, 0x8F, 0xE0, 0x00, 0x3F, 0x87, 0xF8, 0x00, 0x3F, - 0xC1, 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xFF, 0xFF, - 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xEF, 0xE0, 0x0F, 0xFB, 0xF8, 0x00, 0xFF, - 0xFE, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xF8, 0x00, - 0x7F, 0xFE, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF8, - 0x03, 0xFE, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF3, - 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x0F, 0xE0, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, 0xE0, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, - 0xE0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x80, 0x00, 0x7F, 0xFF, - 0xE0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, - 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x3F, 0xC0, 0x07, 0xF8, 0x3F, 0xC0, - 0x01, 0xFE, 0x1F, 0xC0, 0x00, 0x7F, 0x1F, 0xE0, 0x00, 0x3F, 0xCF, 0xE0, - 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x03, 0xFF, 0xF8, - 0x00, 0x00, 0xFF, 0xFC, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x3F, 0xFF, - 0x00, 0x00, 0x1F, 0xFF, 0x80, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x01, 0xFF, 0xFC, 0x00, 0x21, 0xFE, - 0xFE, 0x00, 0x38, 0xFE, 0x7F, 0x00, 0x3E, 0x7F, 0x3F, 0xC0, 0x3F, 0xFF, - 0x8F, 0xE0, 0x0F, 0xFF, 0x87, 0xF8, 0x03, 0xFF, 0xC1, 0xFE, 0x00, 0xFF, - 0xC0, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, - 0xFC, 0x03, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xC0, 0x1F, 0xFF, - 0xCF, 0xC0, 0x01, 0xFF, 0x03, 0xC0, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, - 0xF8, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0xF8, - 0xFF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xFC, 0xFE, 0x00, 0x3F, 0xEF, 0xE0, - 0x01, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x0F, - 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, 0xE0, 0x01, 0xFC, 0xFE, - 0x00, 0x3F, 0xCF, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x8F, - 0xE0, 0x07, 0xF8, 0xFE, 0x00, 0x1F, 0xCF, 0xE0, 0x01, 0xFC, 0xFE, 0x00, - 0x1F, 0xCF, 0xE0, 0x01, 0xFC, 0xFE, 0x00, 0x1F, 0xCF, 0xE0, 0x01, 0xFC, - 0xFE, 0x00, 0x1F, 0xCF, 0xE0, 0x01, 0xFC, 0xFE, 0x00, 0x1F, 0xCF, 0xE0, - 0x01, 0xFC, 0xFE, 0x00, 0x1F, 0xEF, 0xE0, 0x00, 0xFF, 0x00, 0xFF, 0xC0, - 0x00, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xF0, 0x3F, - 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xFC, 0x7F, 0xC0, 0xFF, 0xCF, 0xF0, 0x03, - 0xFE, 0xFE, 0x00, 0x1F, 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, - 0xE0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x7F, 0xFC, - 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0xF0, - 0x07, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, - 0x03, 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x07, - 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, - 0x00, 0x0F, 0xE7, 0xFC, 0x03, 0xFE, 0x7F, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0xFC, 0x00, - 0x07, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0xFE, 0x00, - 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, - 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, - 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x80, 0x03, - 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, - 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, - 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, - 0x01, 0xFF, 0xFC, 0x00, 0x7F, 0xBF, 0xC0, 0x1F, 0xE7, 0xFC, 0x07, 0xFC, - 0x7F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, - 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x03, - 0xFF, 0xF0, 0x00, 0x1F, 0xDF, 0xC0, 0x01, 0xFC, 0xFE, 0x00, 0x0F, 0xE7, - 0xF0, 0x00, 0x7F, 0x1F, 0xC0, 0x03, 0xF0, 0xFE, 0x00, 0x3F, 0x87, 0xF0, - 0x01, 0xFC, 0x1F, 0xC0, 0x0F, 0xC0, 0xFE, 0x00, 0xFE, 0x03, 0xF0, 0x07, - 0xF0, 0x1F, 0x80, 0x3F, 0x00, 0xFE, 0x03, 0xF8, 0x03, 0xF0, 0x1F, 0xC0, - 0x1F, 0x80, 0xFC, 0x00, 0xFE, 0x07, 0xE0, 0x03, 0xF0, 0x7F, 0x00, 0x1F, - 0x83, 0xF0, 0x00, 0xFE, 0x1F, 0x80, 0x03, 0xF1, 0xF8, 0x00, 0x1F, 0x8F, - 0xC0, 0x00, 0xFC, 0x7E, 0x00, 0x03, 0xF3, 0xE0, 0x00, 0x1F, 0xBF, 0x00, - 0x00, 0xFD, 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x1F, 0xFC, 0x00, 0x00, - 0xFF, 0xE0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0xFF, - 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFF, 0x00, 0x3F, 0x80, 0x1F, 0xFF, 0xE0, 0x07, 0xF0, 0x03, 0xFD, - 0xFC, 0x01, 0xFE, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0xE0, 0x0F, 0xE7, 0xF0, - 0x07, 0xFC, 0x01, 0xFC, 0x7F, 0x00, 0xFF, 0x80, 0x7F, 0x8F, 0xE0, 0x1F, - 0xF0, 0x0F, 0xE1, 0xFC, 0x07, 0xFF, 0x01, 0xFC, 0x3F, 0x80, 0xFB, 0xE0, - 0x3F, 0x83, 0xF0, 0x1F, 0x7C, 0x07, 0xE0, 0x7F, 0x03, 0xEF, 0x81, 0xFC, - 0x0F, 0xE0, 0x7D, 0xF0, 0x3F, 0x80, 0xFC, 0x1F, 0x9F, 0x07, 0xF0, 0x1F, - 0x83, 0xE3, 0xE0, 0xFC, 0x03, 0xF0, 0x7C, 0x7C, 0x1F, 0x80, 0x7F, 0x0F, - 0x8F, 0x87, 0xF0, 0x07, 0xE1, 0xF0, 0xF8, 0xFC, 0x00, 0xFC, 0x7E, 0x1F, - 0x1F, 0x80, 0x1F, 0x8F, 0x83, 0xE3, 0xF0, 0x01, 0xF9, 0xF0, 0x7C, 0x7E, - 0x00, 0x3F, 0x3E, 0x0F, 0x9F, 0x80, 0x07, 0xE7, 0xC0, 0xFB, 0xF0, 0x00, - 0xFD, 0xF0, 0x1F, 0x7E, 0x00, 0x0F, 0xBE, 0x03, 0xEF, 0xC0, 0x01, 0xFF, - 0xC0, 0x7D, 0xF0, 0x00, 0x3F, 0xF8, 0x0F, 0xFE, 0x00, 0x03, 0xFF, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0xC0, 0x1F, 0xF0, 0x00, 0x0F, 0xF8, 0x03, 0xFE, - 0x00, 0x01, 0xFF, 0x00, 0x7F, 0xC0, 0x00, 0x1F, 0xE0, 0x07, 0xF8, 0x00, - 0x03, 0xFC, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x00, 0x07, - 0xE0, 0x03, 0xF8, 0x00, 0x7F, 0x80, 0x07, 0xF9, 0xFF, 0x00, 0x3F, 0xC3, - 0xFC, 0x00, 0xFF, 0x07, 0xF8, 0x07, 0xF8, 0x1F, 0xE0, 0x1F, 0xC0, 0x3F, - 0xC0, 0xFF, 0x00, 0xFF, 0x07, 0xF8, 0x01, 0xFE, 0x1F, 0xE0, 0x03, 0xF8, - 0xFF, 0x00, 0x0F, 0xF3, 0xF8, 0x00, 0x1F, 0xDF, 0xE0, 0x00, 0x3F, 0xFF, - 0x00, 0x00, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x07, 0xFF, 0x00, - 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x03, 0xFF, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x7F, 0xF8, 0x00, 0x03, - 0xFF, 0xF0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x7F, 0x7F, 0x80, 0x03, 0xF8, - 0xFF, 0x00, 0x1F, 0xE1, 0xFC, 0x00, 0x7F, 0x07, 0xF8, 0x03, 0xFC, 0x0F, - 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x80, 0x7F, 0x83, 0xFC, 0x01, 0xFE, - 0x0F, 0xF0, 0x03, 0xFC, 0x7F, 0x80, 0x0F, 0xFB, 0xFE, 0x00, 0x1F, 0xE0, - 0xFF, 0x00, 0x07, 0xFF, 0xF8, 0x00, 0x7F, 0x9F, 0xE0, 0x03, 0xFC, 0xFF, - 0x00, 0x3F, 0xC3, 0xFC, 0x01, 0xFE, 0x0F, 0xE0, 0x0F, 0xE0, 0x7F, 0x00, - 0xFF, 0x01, 0xFC, 0x07, 0xF0, 0x0F, 0xE0, 0x7F, 0x80, 0x3F, 0x83, 0xF8, - 0x01, 0xFC, 0x3F, 0xC0, 0x07, 0xF1, 0xFC, 0x00, 0x3F, 0x8F, 0xE0, 0x00, - 0xFE, 0xFE, 0x00, 0x07, 0xF7, 0xF0, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0xFF, - 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, 0xC0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xE0, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x3F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, - 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xC0, 0x00, - 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFE, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, - 0x00, 0x0F, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, - 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, - 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, - 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, 0x03, 0xC0, 0x07, 0x00, - 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x70, - 0x01, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0x70, 0x01, 0xC0, 0x07, - 0x00, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, - 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xE0, - 0x03, 0x80, 0x0E, 0x00, 0x3C, 0x00, 0x70, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, - 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, - 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, - 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xF0, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x80, 0x03, 0xFE, 0x00, 0x0F, 0xFC, 0x00, - 0x7D, 0xF0, 0x01, 0xF7, 0xC0, 0x0F, 0xDF, 0x80, 0x3E, 0x3E, 0x00, 0xF8, - 0xFC, 0x07, 0xE1, 0xF0, 0x1F, 0x07, 0xC0, 0xFC, 0x1F, 0x83, 0xE0, 0x3E, - 0x0F, 0x80, 0xFC, 0x7E, 0x01, 0xF1, 0xF0, 0x07, 0xC7, 0xC0, 0x1F, 0xBE, - 0x00, 0x3E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3E, 0x0F, 0x83, 0xC0, 0xF0, 0x38, 0x1E, - 0x01, 0xFF, 0x00, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, - 0x7F, 0xFF, 0xF8, 0x7F, 0xFF, 0xFC, 0x7F, 0x03, 0xFC, 0x7E, 0x01, 0xFC, - 0x00, 0x01, 0xFC, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xFC, 0x03, 0xFF, 0xFC, - 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x7F, 0xC1, 0xFC, 0xFF, 0x01, 0xFC, - 0xFE, 0x01, 0xFC, 0xFE, 0x03, 0xFC, 0xFE, 0x03, 0xFC, 0xFF, 0x07, 0xFC, - 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0x3F, 0xFD, 0xFE, - 0x1F, 0xF0, 0xFF, 0x07, 0xE0, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, - 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x0F, - 0xC0, 0x3F, 0x9F, 0xF8, 0x1F, 0xDF, 0xFF, 0x0F, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0xE3, 0xFF, 0xFF, 0xF9, 0xFF, 0x83, 0xFE, 0xFF, 0x80, 0xFF, 0x7F, - 0x80, 0x3F, 0xBF, 0xC0, 0x1F, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x03, 0xFF, - 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x3F, - 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x1F, 0xDF, 0xF0, 0x1F, 0xEF, 0xFC, 0x1F, - 0xF7, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xF8, 0xFE, 0xFF, - 0xF8, 0x7F, 0x3F, 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x00, 0xFF, 0x00, 0x07, - 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0x9F, 0xF0, 0x7F, 0xBF, 0xC0, 0x7F, 0x7F, 0x00, 0x7F, 0xFC, 0x00, - 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0xFD, - 0xFE, 0x03, 0xFB, 0xFE, 0x0F, 0xF3, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x87, - 0xFF, 0xFE, 0x07, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x01, 0xFE, 0x00, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, - 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x3F, 0x80, 0x7E, 0x1F, 0xC0, 0xFF, 0xCF, 0xE1, 0xFF, 0xF7, - 0xF1, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFE, 0xFF, 0x83, - 0xFF, 0x7F, 0x80, 0xFF, 0xBF, 0x80, 0x3F, 0xFF, 0xC0, 0x1F, 0xFF, 0xC0, - 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, - 0x00, 0x7F, 0xFE, 0x00, 0x3F, 0xFF, 0x80, 0x3F, 0xDF, 0xC0, 0x1F, 0xEF, - 0xF0, 0x1F, 0xF7, 0xFC, 0x1F, 0xF9, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFE, - 0x3F, 0xFF, 0xFF, 0x0F, 0xFF, 0xBF, 0x81, 0xFF, 0x9F, 0xC0, 0x3F, 0x00, - 0x00, 0x00, 0xFE, 0x00, 0x03, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, - 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xC3, 0xF8, 0x7F, 0x80, 0xFC, 0x7F, 0x00, - 0xFC, 0x7F, 0x00, 0x7C, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7E, 0xFF, 0xFF, - 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x7F, 0x7F, 0x00, - 0xFE, 0x3F, 0xC1, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, 0x0F, 0xFF, - 0xF0, 0x03, 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x01, 0xFC, 0x1F, 0xF0, 0xFF, - 0xC3, 0xFF, 0x1F, 0xFC, 0x7F, 0x81, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, - 0x0F, 0xFF, 0xBF, 0xFE, 0xFF, 0xFB, 0xFF, 0xE1, 0xFC, 0x07, 0xF0, 0x1F, - 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, - 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, - 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x00, 0x00, 0xF8, 0x7F, 0x07, 0xFE, - 0x7F, 0x0F, 0xFF, 0x7F, 0x1F, 0xFF, 0x7F, 0x3F, 0xFF, 0xFF, 0x3F, 0xFF, - 0xFF, 0x7F, 0xC3, 0xFF, 0x7F, 0x81, 0xFF, 0x7F, 0x00, 0xFF, 0xFF, 0x00, - 0xFF, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, - 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0xFF, 0xFF, 0x00, - 0xFF, 0x7F, 0x81, 0xFF, 0x7F, 0xC3, 0xFF, 0x3F, 0xFF, 0xFF, 0x3F, 0xFF, - 0xFF, 0x1F, 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0x07, 0xFE, 0x7F, 0x01, 0xF8, - 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x7F, 0x00, - 0xFF, 0x7F, 0x01, 0xFE, 0x7F, 0xC3, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, - 0xF8, 0x0F, 0xFF, 0xE0, 0x01, 0xFF, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, - 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x3F, 0x83, - 0xF8, 0xFF, 0xC7, 0xF7, 0xFF, 0xCF, 0xEF, 0xFF, 0xDF, 0xFF, 0xFF, 0xBF, - 0xFF, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0x01, 0xFF, 0xFE, 0x01, 0xFF, 0xF8, - 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, - 0x3F, 0xFF, 0x00, 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, - 0xFF, 0xF0, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, - 0xFF, 0x00, 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFC, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF0, 0x00, - 0x00, 0x00, 0x07, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, - 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, - 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, - 0x1F, 0xC7, 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFE, 0xFE, 0x00, - 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, - 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, - 0x00, 0x01, 0xFC, 0x03, 0xFB, 0xF8, 0x0F, 0xE7, 0xF0, 0x3F, 0xCF, 0xE0, - 0xFF, 0x1F, 0xC3, 0xFC, 0x3F, 0x87, 0xF0, 0x7F, 0x1F, 0xC0, 0xFE, 0x7F, - 0x01, 0xFD, 0xFC, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0xE0, - 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0xE0, 0x7F, 0xDF, 0xC0, 0xFF, 0x3F, 0xC1, - 0xFC, 0x3F, 0x83, 0xF8, 0x3F, 0x87, 0xF0, 0x7F, 0x8F, 0xE0, 0x7F, 0x1F, - 0xC0, 0xFF, 0x3F, 0x80, 0xFE, 0x7F, 0x01, 0xFE, 0xFE, 0x01, 0xFD, 0xFC, - 0x03, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFE, 0x1F, 0x80, 0x7E, - 0x0F, 0xE7, 0xFE, 0x1F, 0xF8, 0xFE, 0xFF, 0xF3, 0xFF, 0xCF, 0xFF, 0xFF, - 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0x83, 0xFF, 0x0F, 0xFF, 0xF0, 0x1F, 0xE0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, - 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, - 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, - 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, - 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, - 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, - 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, - 0xF0, 0xFE, 0x1F, 0xC1, 0xFC, 0xFF, 0xE3, 0xFB, 0xFF, 0xE7, 0xFF, 0xFF, - 0xEF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x80, 0xFF, - 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF, - 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, 0xFE, - 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xE0, - 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, 0xFE, 0x00, - 0xFE, 0x00, 0x7F, 0x80, 0x01, 0xFF, 0xF0, 0x01, 0xFF, 0xFE, 0x01, 0xFF, - 0xFF, 0x81, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF1, 0xFF, 0x07, 0xFC, 0xFF, - 0x01, 0xFE, 0x7F, 0x00, 0x7F, 0x7F, 0x80, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, - 0xC0, 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, - 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xBF, 0x80, 0x3F, 0x9F, 0xE0, 0x3F, - 0xCF, 0xF8, 0x3F, 0xE3, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, - 0xF0, 0x0F, 0xFF, 0xF0, 0x03, 0xFF, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0xFE, - 0x1F, 0x80, 0x7F, 0x3F, 0xF0, 0x3F, 0xBF, 0xFE, 0x1F, 0xDF, 0xFF, 0x8F, - 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xF3, 0xFF, 0x07, 0xFD, 0xFF, 0x01, 0xFE, - 0xFF, 0x00, 0x7F, 0x7F, 0x80, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, 0xC0, 0x07, - 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, - 0x7F, 0xFF, 0x00, 0x7F, 0xFF, 0x80, 0x3F, 0xBF, 0xE0, 0x3F, 0xDF, 0xF8, - 0x3F, 0xCF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xE3, 0xFB, 0xFF, 0xE1, 0xFD, - 0xFF, 0xF0, 0xFE, 0x7F, 0xE0, 0x7F, 0x0F, 0xC0, 0x3F, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x1F, 0xC0, 0x00, 0x00, 0x00, 0xFC, 0x3F, 0x81, 0xFF, 0x9F, 0xC3, 0xFF, - 0xEF, 0xE1, 0xFF, 0xF7, 0xF1, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFD, 0xFF, - 0x07, 0xFE, 0xFF, 0x01, 0xFF, 0x7F, 0x00, 0x7F, 0xFF, 0x80, 0x3F, 0xFF, - 0x80, 0x0F, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, - 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xBF, 0x80, 0x3F, - 0xDF, 0xE0, 0x3F, 0xEF, 0xF8, 0x3F, 0xF3, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, - 0xFC, 0x7F, 0xFE, 0xFE, 0x1F, 0xFF, 0x7F, 0x03, 0xFF, 0x3F, 0x80, 0x7E, - 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0xFE, 0x1F, 0xFC, - 0x7F, 0xFB, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x7F, 0x80, - 0xFF, 0x01, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xE0, 0x1F, 0xC0, 0x3F, - 0x80, 0x7F, 0x00, 0xFE, 0x01, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xE0, - 0x1F, 0xC0, 0x3F, 0x80, 0x7F, 0x00, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x07, - 0xFF, 0xE0, 0x0F, 0xFF, 0xF8, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x7F, - 0x81, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0xC0, 0x00, 0x7F, - 0xFC, 0x00, 0x7F, 0xFF, 0x80, 0x3F, 0xFF, 0xF0, 0x1F, 0xFF, 0xFC, 0x07, - 0xFF, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0x00, 0x01, 0xFF, 0x00, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x7F, 0x00, 0x7F, 0x7F, 0x81, 0xFE, 0x7F, - 0xFF, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, 0x0F, 0xFF, 0xF0, 0x01, - 0xFF, 0x80, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, - 0x8F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF3, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, - 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, - 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xFF, 0x3F, 0xF1, 0xFF, 0x0F, - 0xF0, 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, - 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, - 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, - 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, - 0xFE, 0x00, 0xFF, 0xFC, 0x03, 0xFF, 0xFC, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, - 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xDF, 0xFF, 0xBF, 0x9F, 0xFF, 0x7F, 0x1F, - 0xFC, 0xFE, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x3F, 0xBF, 0x80, 0x1F, 0x9F, - 0xC0, 0x1F, 0xC7, 0xE0, 0x0F, 0xE3, 0xF8, 0x07, 0xE1, 0xFC, 0x07, 0xF0, - 0x7E, 0x03, 0xF8, 0x3F, 0x81, 0xF8, 0x1F, 0xC0, 0xFC, 0x07, 0xE0, 0xFE, - 0x03, 0xF8, 0x7E, 0x00, 0xFC, 0x3F, 0x00, 0x7E, 0x1F, 0x80, 0x3F, 0x1F, - 0x80, 0x0F, 0xCF, 0xC0, 0x07, 0xE7, 0xE0, 0x03, 0xF7, 0xE0, 0x00, 0xFF, - 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0xF8, 0x00, 0x0F, 0xFC, 0x00, 0x07, - 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0xFC, 0x03, 0xF8, 0x0F, 0xFF, 0xC0, 0x7F, 0x01, 0xFF, 0xF8, 0x0F, 0xE0, - 0x3F, 0x3F, 0x03, 0xFE, 0x07, 0xE7, 0xE0, 0x7F, 0xC1, 0xFC, 0xFE, 0x0F, - 0xF8, 0x3F, 0x9F, 0xC1, 0xFF, 0x07, 0xE1, 0xF8, 0x3D, 0xE0, 0xFC, 0x3F, - 0x0F, 0xBE, 0x3F, 0x87, 0xF1, 0xF7, 0xC7, 0xE0, 0x7E, 0x3E, 0xF8, 0xFC, - 0x0F, 0xC7, 0xDF, 0x1F, 0x81, 0xF9, 0xF1, 0xE3, 0xF0, 0x3F, 0x3E, 0x3E, - 0xFC, 0x03, 0xF7, 0xC7, 0xDF, 0x80, 0x7E, 0xF8, 0xFB, 0xF0, 0x0F, 0xDE, - 0x1F, 0x7C, 0x00, 0xFF, 0xC1, 0xFF, 0x80, 0x1F, 0xF8, 0x3F, 0xF0, 0x03, - 0xFF, 0x07, 0xFE, 0x00, 0x7F, 0xC0, 0xFF, 0x80, 0x07, 0xF8, 0x1F, 0xF0, - 0x00, 0xFF, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, - 0xF0, 0x00, 0xFF, 0x00, 0xFF, 0x7F, 0x81, 0xFE, 0x3F, 0x81, 0xFC, 0x3F, - 0xC3, 0xFC, 0x1F, 0xC3, 0xF8, 0x0F, 0xE7, 0xF0, 0x0F, 0xEF, 0xF0, 0x07, - 0xFF, 0xE0, 0x03, 0xFF, 0xC0, 0x03, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x00, - 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x03, - 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x0F, 0xE7, 0xF0, 0x1F, - 0xE7, 0xF0, 0x1F, 0xC3, 0xF8, 0x3F, 0xC3, 0xFC, 0x7F, 0x81, 0xFC, 0x7F, - 0x01, 0xFE, 0xFF, 0x00, 0xFF, 0x7F, 0x00, 0x3F, 0xBF, 0x80, 0x1F, 0xDF, - 0xC0, 0x0F, 0xC7, 0xF0, 0x07, 0xE3, 0xF8, 0x07, 0xF1, 0xFC, 0x03, 0xF0, - 0x7F, 0x01, 0xF8, 0x3F, 0x81, 0xFC, 0x0F, 0xC0, 0xFC, 0x07, 0xF0, 0x7E, - 0x03, 0xF8, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0x7E, 0x1F, 0x80, 0x3F, 0x8F, - 0xC0, 0x0F, 0xCF, 0xC0, 0x07, 0xE7, 0xE0, 0x03, 0xFB, 0xF0, 0x00, 0xFD, - 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFC, 0x00, 0x07, - 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x1F, 0xC0, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x0F, 0xFC, 0x00, - 0x07, 0xFC, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x7F, 0xFF, - 0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xBF, - 0xFF, 0xFC, 0x00, 0x3F, 0xE0, 0x03, 0xFE, 0x00, 0x1F, 0xE0, 0x01, 0xFE, - 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x1F, - 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x01, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF8, 0x01, 0xF8, 0x1F, 0xC1, 0xFE, 0x0F, 0xF0, 0xFF, - 0x87, 0xE0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, - 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x3F, - 0x0F, 0xF0, 0x7F, 0x03, 0xF8, 0x1F, 0xE0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, - 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, - 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xE0, 0x3F, 0xE0, 0xFF, 0x07, 0xF8, 0x1F, - 0xC0, 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFC, 0x07, 0xF0, 0x3F, 0xC1, 0xFE, 0x0F, 0xF8, 0x0F, 0xC0, 0x3E, 0x01, - 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, - 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x80, 0x7F, 0x81, 0xFC, - 0x0F, 0xE0, 0xFF, 0x0F, 0xC0, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, - 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, - 0x0F, 0xC3, 0xFE, 0x1F, 0xE0, 0xFF, 0x07, 0xF0, 0x3F, 0x00, 0x1F, 0x00, - 0x03, 0xFE, 0x00, 0x1F, 0xF8, 0x0F, 0xFF, 0xF0, 0xFF, 0x0F, 0xFF, 0xF0, - 0x1F, 0xF8, 0x00, 0x7F, 0x80, 0x00, 0xF8}; - -const GFXglyph FreeSansBold24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 13, 0, 1}, // 0x20 ' ' - {0, 7, 34, 16, 5, -33}, // 0x21 '!' - {30, 18, 12, 22, 2, -33}, // 0x22 '"' - {57, 26, 33, 26, 0, -31}, // 0x23 '#' - {165, 25, 40, 26, 1, -34}, // 0x24 '$' - {290, 39, 34, 42, 1, -32}, // 0x25 '%' - {456, 30, 35, 34, 3, -33}, // 0x26 '&' - {588, 7, 12, 12, 3, -33}, // 0x27 ''' - {599, 13, 44, 16, 2, -33}, // 0x28 '(' - {671, 13, 44, 16, 1, -33}, // 0x29 ')' - {743, 15, 15, 18, 1, -33}, // 0x2A '*' - {772, 23, 22, 27, 2, -21}, // 0x2B '+' - {836, 7, 15, 12, 2, -6}, // 0x2C ',' - {850, 13, 6, 16, 1, -15}, // 0x2D '-' - {860, 7, 7, 12, 2, -6}, // 0x2E '.' - {867, 13, 34, 13, 0, -32}, // 0x2F '/' - {923, 24, 35, 26, 1, -33}, // 0x30 '0' - {1028, 14, 33, 26, 4, -32}, // 0x31 '1' - {1086, 23, 34, 26, 2, -33}, // 0x32 '2' - {1184, 23, 35, 26, 2, -33}, // 0x33 '3' - {1285, 22, 33, 26, 2, -32}, // 0x34 '4' - {1376, 23, 34, 26, 2, -32}, // 0x35 '5' - {1474, 23, 35, 26, 2, -33}, // 0x36 '6' - {1575, 23, 33, 26, 1, -32}, // 0x37 '7' - {1670, 24, 35, 26, 1, -33}, // 0x38 '8' - {1775, 24, 35, 26, 1, -33}, // 0x39 '9' - {1880, 7, 25, 12, 2, -24}, // 0x3A ':' - {1902, 7, 33, 12, 2, -24}, // 0x3B ';' - {1931, 23, 23, 27, 2, -22}, // 0x3C '<' - {1998, 23, 18, 27, 2, -19}, // 0x3D '=' - {2050, 23, 23, 27, 2, -22}, // 0x3E '>' - {2117, 24, 35, 29, 3, -34}, // 0x3F '?' - {2222, 43, 41, 46, 1, -34}, // 0x40 '@' - {2443, 32, 34, 33, 0, -33}, // 0x41 'A' - {2579, 27, 34, 33, 4, -33}, // 0x42 'B' - {2694, 30, 36, 34, 2, -34}, // 0x43 'C' - {2829, 28, 34, 34, 4, -33}, // 0x44 'D' - {2948, 25, 34, 31, 4, -33}, // 0x45 'E' - {3055, 24, 34, 30, 4, -33}, // 0x46 'F' - {3157, 31, 36, 36, 2, -34}, // 0x47 'G' - {3297, 27, 34, 35, 4, -33}, // 0x48 'H' - {3412, 7, 34, 15, 4, -33}, // 0x49 'I' - {3442, 22, 35, 27, 1, -33}, // 0x4A 'J' - {3539, 30, 34, 34, 4, -33}, // 0x4B 'K' - {3667, 23, 34, 29, 4, -33}, // 0x4C 'L' - {3765, 33, 34, 41, 4, -33}, // 0x4D 'M' - {3906, 28, 34, 35, 4, -33}, // 0x4E 'N' - {4025, 33, 36, 37, 2, -34}, // 0x4F 'O' - {4174, 26, 34, 32, 4, -33}, // 0x50 'P' - {4285, 33, 37, 37, 2, -34}, // 0x51 'Q' - {4438, 28, 34, 34, 4, -33}, // 0x52 'R' - {4557, 28, 36, 32, 2, -34}, // 0x53 'S' - {4683, 27, 34, 30, 2, -33}, // 0x54 'T' - {4798, 27, 35, 35, 4, -33}, // 0x55 'U' - {4917, 29, 34, 31, 1, -33}, // 0x56 'V' - {5041, 43, 34, 45, 1, -33}, // 0x57 'W' - {5224, 30, 34, 32, 1, -33}, // 0x58 'X' - {5352, 29, 34, 30, 1, -33}, // 0x59 'Y' - {5476, 26, 34, 29, 1, -33}, // 0x5A 'Z' - {5587, 11, 43, 16, 3, -33}, // 0x5B '[' - {5647, 14, 34, 13, -1, -32}, // 0x5C '\' - {5707, 11, 43, 16, 1, -33}, // 0x5D ']' - {5767, 22, 20, 27, 3, -32}, // 0x5E '^' - {5822, 28, 4, 26, -1, 6}, // 0x5F '_' - {5836, 9, 7, 12, 1, -35}, // 0x60 '`' - {5844, 24, 26, 27, 2, -24}, // 0x61 'a' - {5922, 25, 35, 29, 3, -33}, // 0x62 'b' - {6032, 23, 26, 26, 2, -24}, // 0x63 'c' - {6107, 25, 35, 29, 2, -33}, // 0x64 'd' - {6217, 24, 26, 27, 2, -24}, // 0x65 'e' - {6295, 14, 34, 16, 1, -33}, // 0x66 'f' - {6355, 24, 36, 29, 2, -24}, // 0x67 'g' - {6463, 23, 34, 28, 3, -33}, // 0x68 'h' - {6561, 7, 34, 13, 3, -33}, // 0x69 'i' - {6591, 10, 45, 13, 0, -33}, // 0x6A 'j' - {6648, 23, 34, 27, 3, -33}, // 0x6B 'k' - {6746, 7, 34, 13, 3, -33}, // 0x6C 'l' - {6776, 36, 25, 42, 3, -24}, // 0x6D 'm' - {6889, 23, 25, 29, 3, -24}, // 0x6E 'n' - {6961, 25, 26, 29, 2, -24}, // 0x6F 'o' - {7043, 25, 36, 29, 3, -24}, // 0x70 'p' - {7156, 25, 36, 29, 2, -24}, // 0x71 'q' - {7269, 15, 25, 18, 3, -24}, // 0x72 'r' - {7316, 24, 26, 26, 1, -24}, // 0x73 's' - {7394, 12, 32, 16, 2, -30}, // 0x74 't' - {7442, 23, 26, 29, 3, -24}, // 0x75 'u' - {7517, 25, 25, 25, 0, -24}, // 0x76 'v' - {7596, 35, 25, 37, 1, -24}, // 0x77 'w' - {7706, 24, 25, 26, 1, -24}, // 0x78 'x' - {7781, 25, 36, 26, 0, -24}, // 0x79 'y' - {7894, 21, 25, 24, 1, -24}, // 0x7A 'z' - {7960, 13, 43, 18, 2, -33}, // 0x7B '{' - {8030, 4, 44, 13, 5, -33}, // 0x7C '|' - {8052, 13, 43, 18, 3, -33}, // 0x7D '}' - {8122, 21, 8, 23, 1, -14}}; // 0x7E '~' - -const GFXfont FreeSansBold24pt7b PROGMEM = { - (uint8_t *)FreeSansBold24pt7bBitmaps, (GFXglyph *)FreeSansBold24pt7bGlyphs, - 0x20, 0x7E, 56}; - -// Approx. 8815 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h deleted file mode 100644 index cffb178..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h +++ /dev/null @@ -1,210 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFE, 0x48, 0x7E, 0xEF, 0xDF, 0xBF, 0x74, 0x40, 0x19, 0x86, - 0x67, 0xFD, 0xFF, 0x33, 0x0C, 0xC3, 0x33, 0xFE, 0xFF, 0x99, 0x86, 0x61, - 0x90, 0x10, 0x1F, 0x1F, 0xDE, 0xFF, 0x3F, 0x83, 0xC0, 0xFC, 0x1F, 0x09, - 0xFC, 0xFE, 0xF7, 0xF1, 0xE0, 0x40, 0x38, 0x10, 0x7C, 0x30, 0xC6, 0x20, - 0xC6, 0x40, 0xC6, 0x40, 0x7C, 0x80, 0x39, 0x9C, 0x01, 0x3E, 0x03, 0x63, - 0x02, 0x63, 0x04, 0x63, 0x0C, 0x3E, 0x08, 0x1C, 0x0E, 0x01, 0xF8, 0x3B, - 0x83, 0xB8, 0x3F, 0x01, 0xE0, 0x3E, 0x67, 0x76, 0xE3, 0xEE, 0x1C, 0xF3, - 0xC7, 0xFE, 0x3F, 0x70, 0xFF, 0xF4, 0x18, 0x63, 0x1C, 0x73, 0x8E, 0x38, - 0xE3, 0x8E, 0x18, 0x70, 0xC3, 0x06, 0x08, 0x61, 0x83, 0x0E, 0x38, 0x71, - 0xC7, 0x1C, 0x71, 0xC6, 0x38, 0xE3, 0x18, 0x40, 0x21, 0x3E, 0x45, 0x28, - 0x38, 0x70, 0xE7, 0xFF, 0xE7, 0x0E, 0x1C, 0xFC, 0x9C, 0xFF, 0xC0, 0xFC, - 0x08, 0xC4, 0x23, 0x10, 0x84, 0x62, 0x11, 0x88, 0x00, 0x3E, 0x3F, 0x9D, - 0xDC, 0x7E, 0x3F, 0x1F, 0x8F, 0xC7, 0xE3, 0xF1, 0xDD, 0xCF, 0xE3, 0xE0, - 0x08, 0xFF, 0xF3, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x80, 0x3E, 0x3F, 0xB8, - 0xFC, 0x70, 0x38, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x0F, 0xF7, 0xF8, - 0x3C, 0x7F, 0xE7, 0xE7, 0x07, 0x0C, 0x0E, 0x07, 0x07, 0xE7, 0xE7, 0x7E, - 0x3C, 0x0E, 0x1E, 0x1E, 0x2E, 0x2E, 0x4E, 0x4E, 0x8E, 0xFF, 0xFF, 0x0E, - 0x0E, 0x0E, 0x7F, 0x3F, 0x90, 0x18, 0x0D, 0xE7, 0xFB, 0x9E, 0x07, 0x03, - 0x81, 0xF1, 0xFF, 0xE7, 0xC0, 0x3E, 0x3F, 0x9C, 0xFC, 0x0E, 0xE7, 0xFB, - 0xDF, 0xC7, 0xE3, 0xF1, 0xDD, 0xEF, 0xE3, 0xE0, 0xFF, 0xFF, 0xC0, 0xE0, - 0xE0, 0x60, 0x70, 0x30, 0x38, 0x1C, 0x0C, 0x0E, 0x07, 0x03, 0x80, 0x3F, - 0x1F, 0xEE, 0x3F, 0x87, 0xE3, 0xCF, 0xC7, 0xFB, 0xCF, 0xE1, 0xF8, 0x7F, - 0x3D, 0xFE, 0x3F, 0x00, 0x3E, 0x3F, 0xBD, 0xDC, 0x7E, 0x3F, 0x1F, 0xDE, - 0xFF, 0x3B, 0x81, 0xF9, 0xCF, 0xE3, 0xC0, 0xFC, 0x00, 0x07, 0xE0, 0xFC, - 0x00, 0x07, 0xE5, 0xE0, 0x00, 0x83, 0xC7, 0xDF, 0x0C, 0x07, 0x80, 0xF8, - 0x1F, 0x01, 0x80, 0xFF, 0xFF, 0xC0, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x70, - 0x3F, 0x03, 0xE0, 0x38, 0x7D, 0xF1, 0xE0, 0x80, 0x00, 0x3E, 0x3F, 0xB8, - 0xFC, 0x70, 0x38, 0x1C, 0x1C, 0x1C, 0x1C, 0x0E, 0x00, 0x03, 0x81, 0xC0, - 0x03, 0xF0, 0x0F, 0xFC, 0x1E, 0x0E, 0x38, 0x02, 0x70, 0xE9, 0x63, 0x19, - 0xC2, 0x19, 0xC6, 0x11, 0xC6, 0x33, 0xC6, 0x32, 0x63, 0xFE, 0x73, 0xDC, - 0x3C, 0x00, 0x1F, 0xF8, 0x07, 0xF0, 0x07, 0x00, 0xF0, 0x0F, 0x80, 0xF8, - 0x1D, 0x81, 0x9C, 0x19, 0xC3, 0x8C, 0x3F, 0xE7, 0xFE, 0x70, 0x66, 0x07, - 0xE0, 0x70, 0xFF, 0x9F, 0xFB, 0x83, 0xF0, 0x7E, 0x0F, 0xFF, 0x3F, 0xF7, - 0x06, 0xE0, 0xFC, 0x1F, 0x83, 0xFF, 0xEF, 0xF8, 0x1F, 0x83, 0xFE, 0x78, - 0xE7, 0x07, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x07, 0x07, 0x78, - 0xF3, 0xFE, 0x1F, 0x80, 0xFF, 0x8F, 0xFC, 0xE0, 0xEE, 0x0E, 0xE0, 0x7E, - 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x0E, 0xE0, 0xEF, 0xFC, 0xFF, 0x80, - 0xFF, 0xFF, 0xF8, 0x1C, 0x0E, 0x07, 0xFB, 0xFD, 0xC0, 0xE0, 0x70, 0x38, - 0x1F, 0xFF, 0xF8, 0xFF, 0xFF, 0xF8, 0x1C, 0x0E, 0x07, 0xFB, 0xFD, 0xC0, - 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x00, 0x0F, 0x87, 0xF9, 0xE3, 0xB8, 0x3E, - 0x01, 0xC0, 0x38, 0xFF, 0x1F, 0xE0, 0x6E, 0x0D, 0xE3, 0x9F, 0xD0, 0xF2, - 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xFF, 0xFF, 0xFF, 0x07, 0xE0, - 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0xE7, 0xE7, 0xE7, 0x7E, 0x3C, - 0xE0, 0xEE, 0x1C, 0xE3, 0x8E, 0x70, 0xEE, 0x0F, 0xC0, 0xFE, 0x0F, 0x70, - 0xE7, 0x0E, 0x38, 0xE1, 0xCE, 0x0E, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, - 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xFF, 0xFF, 0xF8, 0x7F, 0xE1, - 0xFF, 0x87, 0xFE, 0x1F, 0xEC, 0x7F, 0xB3, 0x7E, 0xCD, 0xFB, 0x37, 0xEC, - 0xDF, 0x9E, 0x7E, 0x79, 0xF9, 0xE7, 0xE7, 0x9C, 0xE0, 0xFE, 0x1F, 0xC3, - 0xFC, 0x7F, 0xCF, 0xD9, 0xFB, 0xBF, 0x37, 0xE7, 0xFC, 0x7F, 0x87, 0xF0, - 0xFE, 0x0E, 0x0F, 0x81, 0xFF, 0x1E, 0x3C, 0xE0, 0xEE, 0x03, 0xF0, 0x1F, - 0x80, 0xFC, 0x07, 0xE0, 0x3B, 0x83, 0x9E, 0x3C, 0x7F, 0xC0, 0xF8, 0x00, - 0xFF, 0x9F, 0xFB, 0x87, 0xF0, 0x7E, 0x0F, 0xC3, 0xFF, 0xF7, 0xFC, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x00, 0x0F, 0x81, 0xFF, 0x1E, 0x3C, 0xE0, - 0xEE, 0x03, 0xF0, 0x1F, 0x80, 0xFC, 0x07, 0xE1, 0xBB, 0x8F, 0x9E, 0x3C, - 0x7F, 0xE0, 0xFB, 0x80, 0x08, 0xFF, 0x8F, 0xFC, 0xE0, 0xEE, 0x0E, 0xE0, - 0xEE, 0x0E, 0xFF, 0xCF, 0xFC, 0xE0, 0xEE, 0x0E, 0xE0, 0xEE, 0x0E, 0xE0, - 0xF0, 0x3F, 0x0F, 0xFB, 0xC7, 0xF0, 0x7E, 0x01, 0xFC, 0x1F, 0xF0, 0x3F, - 0x00, 0xFC, 0x1D, 0xC7, 0xBF, 0xE1, 0xF8, 0xFF, 0xFF, 0xC7, 0x03, 0x81, - 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0xFC, - 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, 0xFC, 0x1F, - 0xC7, 0xBF, 0xE1, 0xF0, 0x60, 0x67, 0x0E, 0x70, 0xE3, 0x0C, 0x30, 0xC3, - 0x9C, 0x19, 0x81, 0x98, 0x1F, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x06, 0x00, - 0x61, 0xC3, 0xB8, 0xE1, 0x9C, 0x70, 0xCE, 0x3C, 0xE3, 0x36, 0x71, 0x9B, - 0x30, 0xED, 0x98, 0x36, 0x7C, 0x1B, 0x3C, 0x0F, 0x1E, 0x07, 0x8F, 0x01, - 0xC3, 0x80, 0xE1, 0x80, 0x70, 0xE7, 0x8E, 0x39, 0xC1, 0xF8, 0x1F, 0x80, - 0xF0, 0x07, 0x00, 0xF0, 0x1F, 0x81, 0x9C, 0x39, 0xC7, 0x0E, 0x70, 0xE0, - 0xE0, 0xFC, 0x39, 0xC7, 0x18, 0xC3, 0xB8, 0x36, 0x07, 0xC0, 0x70, 0x0E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0xFF, 0xFF, 0xC0, 0xE0, 0xE0, 0xF0, - 0x70, 0x70, 0x70, 0x78, 0x38, 0x38, 0x1F, 0xFF, 0xF8, 0xFF, 0xEE, 0xEE, - 0xEE, 0xEE, 0xEE, 0xEE, 0xEF, 0xF0, 0x86, 0x10, 0x86, 0x10, 0x84, 0x30, - 0x84, 0x30, 0x80, 0xFF, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x7F, 0xF0, - 0x18, 0x1C, 0x3C, 0x3E, 0x36, 0x66, 0x63, 0xC3, 0xFF, 0xC0, 0xCC, 0x3F, - 0x1F, 0xEE, 0x38, 0x0E, 0x3F, 0x9E, 0xEE, 0x3B, 0x9E, 0xFF, 0x9E, 0xE0, - 0xE0, 0x38, 0x0E, 0x03, 0xBC, 0xFF, 0xBC, 0xEE, 0x1F, 0x87, 0xE1, 0xF8, - 0x7F, 0x3B, 0xFE, 0xEF, 0x00, 0x1F, 0x3F, 0xDC, 0x7C, 0x0E, 0x07, 0x03, - 0x80, 0xE3, 0x7F, 0x8F, 0x00, 0x03, 0x81, 0xC0, 0xE7, 0x77, 0xFB, 0xBF, - 0x8F, 0xC7, 0xE3, 0xF1, 0xFD, 0xEF, 0xF3, 0xB8, 0x3E, 0x3F, 0x9C, 0xDC, - 0x3F, 0xFF, 0xFF, 0x81, 0xC3, 0x7F, 0x8F, 0x00, 0x3B, 0xDD, 0xFF, 0xB9, - 0xCE, 0x73, 0x9C, 0xE7, 0x00, 0x3B, 0xBF, 0xDD, 0xFC, 0x7E, 0x3F, 0x1F, - 0x8F, 0xEF, 0x7F, 0x9D, 0xC0, 0xFC, 0x77, 0xF1, 0xF0, 0xE0, 0x70, 0x38, - 0x1D, 0xEF, 0xFF, 0x9F, 0x8F, 0xC7, 0xE3, 0xF1, 0xF8, 0xFC, 0x7E, 0x38, - 0xFC, 0x7F, 0xFF, 0xFF, 0xFE, 0x77, 0x07, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x7F, 0xE0, 0xE0, 0x70, 0x38, 0x1C, 0x7E, 0x77, 0x73, 0xF1, 0xF8, 0xFE, - 0x77, 0x39, 0xDC, 0x6E, 0x38, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xEF, 0x7B, - 0xFF, 0xFE, 0x39, 0xF8, 0xE7, 0xE3, 0x9F, 0x8E, 0x7E, 0x39, 0xF8, 0xE7, - 0xE3, 0x9F, 0x8E, 0x70, 0xEF, 0x7F, 0xF8, 0xFC, 0x7E, 0x3F, 0x1F, 0x8F, - 0xC7, 0xE3, 0xF1, 0xC0, 0x1E, 0x1F, 0xE7, 0x3B, 0x87, 0xE1, 0xF8, 0x7E, - 0x1D, 0xCE, 0x7F, 0x87, 0x80, 0xEF, 0x3F, 0xEF, 0x3B, 0x87, 0xE1, 0xF8, - 0x7E, 0x1F, 0xCE, 0xFF, 0xBB, 0xCE, 0x03, 0x80, 0xE0, 0x38, 0x00, 0x3B, - 0xBF, 0xFD, 0xFC, 0x7E, 0x3F, 0x1F, 0x8F, 0xEF, 0x7F, 0x9D, 0xC0, 0xE0, - 0x70, 0x38, 0x1C, 0xEF, 0xFF, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x80, 0x3E, - 0x3F, 0xB8, 0xFC, 0x0F, 0xC3, 0xFC, 0x3F, 0xC7, 0xFF, 0x1F, 0x00, 0x73, - 0xBF, 0xF7, 0x39, 0xCE, 0x73, 0x9E, 0x70, 0xE3, 0xF1, 0xF8, 0xFC, 0x7E, - 0x3F, 0x1F, 0x8F, 0xC7, 0xFF, 0xBD, 0xC0, 0xE1, 0x98, 0x67, 0x39, 0xCC, - 0x33, 0x0D, 0xC3, 0xE0, 0x78, 0x1E, 0x07, 0x00, 0xE3, 0x1D, 0x9E, 0x66, - 0x79, 0x99, 0xE6, 0x77, 0xB8, 0xD2, 0xC3, 0xCF, 0x0F, 0x3C, 0x3C, 0xF0, - 0x73, 0x80, 0x73, 0x9C, 0xE3, 0xF0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0xFC, - 0x73, 0x9C, 0xE0, 0xE1, 0xD8, 0x67, 0x39, 0xCE, 0x33, 0x0E, 0xC3, 0xE0, - 0x78, 0x1E, 0x03, 0x00, 0xC0, 0x70, 0x38, 0x0E, 0x00, 0xFE, 0xFE, 0x0E, - 0x1C, 0x38, 0x38, 0x70, 0xE0, 0xFF, 0xFF, 0x37, 0x66, 0x66, 0x6E, 0xE6, - 0x66, 0x66, 0x67, 0x30, 0xFF, 0xFF, 0x80, 0xCE, 0x66, 0x66, 0x67, 0x76, - 0x66, 0x66, 0x6E, 0xC0, 0x71, 0x8E}; - -const GFXglyph FreeSansBold9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 3, 13, 6, 2, -12}, // 0x21 '!' - {5, 7, 5, 9, 1, -12}, // 0x22 '"' - {10, 10, 12, 10, 0, -11}, // 0x23 '#' - {25, 9, 15, 10, 1, -13}, // 0x24 '$' - {42, 16, 13, 16, 0, -12}, // 0x25 '%' - {68, 12, 13, 13, 1, -12}, // 0x26 '&' - {88, 3, 5, 5, 1, -12}, // 0x27 ''' - {90, 6, 17, 6, 1, -12}, // 0x28 '(' - {103, 6, 17, 6, 0, -12}, // 0x29 ')' - {116, 5, 6, 7, 1, -12}, // 0x2A '*' - {120, 7, 8, 11, 2, -7}, // 0x2B '+' - {127, 3, 5, 4, 1, -1}, // 0x2C ',' - {129, 5, 2, 6, 0, -5}, // 0x2D '-' - {131, 3, 2, 4, 1, -1}, // 0x2E '.' - {132, 5, 13, 5, 0, -12}, // 0x2F '/' - {141, 9, 13, 10, 1, -12}, // 0x30 '0' - {156, 5, 13, 10, 2, -12}, // 0x31 '1' - {165, 9, 13, 10, 1, -12}, // 0x32 '2' - {180, 8, 13, 10, 1, -12}, // 0x33 '3' - {193, 8, 13, 10, 2, -12}, // 0x34 '4' - {206, 9, 13, 10, 1, -12}, // 0x35 '5' - {221, 9, 13, 10, 1, -12}, // 0x36 '6' - {236, 9, 13, 10, 0, -12}, // 0x37 '7' - {251, 10, 13, 10, 0, -12}, // 0x38 '8' - {268, 9, 13, 10, 1, -12}, // 0x39 '9' - {283, 3, 9, 4, 1, -8}, // 0x3A ':' - {287, 3, 12, 4, 1, -8}, // 0x3B ';' - {292, 9, 9, 11, 1, -8}, // 0x3C '<' - {303, 9, 6, 11, 1, -6}, // 0x3D '=' - {310, 9, 9, 11, 1, -8}, // 0x3E '>' - {321, 9, 13, 11, 1, -12}, // 0x3F '?' - {336, 16, 15, 18, 0, -12}, // 0x40 '@' - {366, 12, 13, 13, 0, -12}, // 0x41 'A' - {386, 11, 13, 13, 1, -12}, // 0x42 'B' - {404, 12, 13, 13, 1, -12}, // 0x43 'C' - {424, 12, 13, 13, 1, -12}, // 0x44 'D' - {444, 9, 13, 12, 1, -12}, // 0x45 'E' - {459, 9, 13, 11, 1, -12}, // 0x46 'F' - {474, 11, 13, 14, 1, -12}, // 0x47 'G' - {492, 11, 13, 13, 1, -12}, // 0x48 'H' - {510, 3, 13, 6, 1, -12}, // 0x49 'I' - {515, 8, 13, 10, 1, -12}, // 0x4A 'J' - {528, 12, 13, 13, 1, -12}, // 0x4B 'K' - {548, 8, 13, 11, 1, -12}, // 0x4C 'L' - {561, 14, 13, 16, 1, -12}, // 0x4D 'M' - {584, 11, 13, 14, 1, -12}, // 0x4E 'N' - {602, 13, 13, 14, 1, -12}, // 0x4F 'O' - {624, 11, 13, 12, 1, -12}, // 0x50 'P' - {642, 13, 14, 14, 1, -12}, // 0x51 'Q' - {665, 12, 13, 13, 1, -12}, // 0x52 'R' - {685, 11, 13, 12, 1, -12}, // 0x53 'S' - {703, 9, 13, 12, 2, -12}, // 0x54 'T' - {718, 11, 13, 13, 1, -12}, // 0x55 'U' - {736, 12, 13, 12, 0, -12}, // 0x56 'V' - {756, 17, 13, 17, 0, -12}, // 0x57 'W' - {784, 12, 13, 12, 0, -12}, // 0x58 'X' - {804, 11, 13, 12, 1, -12}, // 0x59 'Y' - {822, 9, 13, 11, 1, -12}, // 0x5A 'Z' - {837, 4, 17, 6, 1, -12}, // 0x5B '[' - {846, 5, 13, 5, 0, -12}, // 0x5C '\' - {855, 4, 17, 6, 0, -12}, // 0x5D ']' - {864, 8, 8, 11, 1, -12}, // 0x5E '^' - {872, 10, 1, 10, 0, 4}, // 0x5F '_' - {874, 3, 2, 5, 0, -12}, // 0x60 '`' - {875, 10, 10, 10, 1, -9}, // 0x61 'a' - {888, 10, 13, 11, 1, -12}, // 0x62 'b' - {905, 9, 10, 10, 1, -9}, // 0x63 'c' - {917, 9, 13, 11, 1, -12}, // 0x64 'd' - {932, 9, 10, 10, 1, -9}, // 0x65 'e' - {944, 5, 13, 6, 1, -12}, // 0x66 'f' - {953, 9, 14, 11, 1, -9}, // 0x67 'g' - {969, 9, 13, 11, 1, -12}, // 0x68 'h' - {984, 3, 13, 5, 1, -12}, // 0x69 'i' - {989, 4, 17, 5, 0, -12}, // 0x6A 'j' - {998, 9, 13, 10, 1, -12}, // 0x6B 'k' - {1013, 3, 13, 5, 1, -12}, // 0x6C 'l' - {1018, 14, 10, 16, 1, -9}, // 0x6D 'm' - {1036, 9, 10, 11, 1, -9}, // 0x6E 'n' - {1048, 10, 10, 11, 1, -9}, // 0x6F 'o' - {1061, 10, 14, 11, 1, -9}, // 0x70 'p' - {1079, 9, 14, 11, 1, -9}, // 0x71 'q' - {1095, 6, 10, 7, 1, -9}, // 0x72 'r' - {1103, 9, 10, 10, 1, -9}, // 0x73 's' - {1115, 5, 12, 6, 1, -11}, // 0x74 't' - {1123, 9, 10, 11, 1, -9}, // 0x75 'u' - {1135, 10, 10, 10, 0, -9}, // 0x76 'v' - {1148, 14, 10, 14, 0, -9}, // 0x77 'w' - {1166, 10, 10, 10, 0, -9}, // 0x78 'x' - {1179, 10, 14, 10, 0, -9}, // 0x79 'y' - {1197, 8, 10, 9, 1, -9}, // 0x7A 'z' - {1207, 4, 17, 7, 1, -12}, // 0x7B '{' - {1216, 1, 17, 5, 2, -12}, // 0x7C '|' - {1219, 4, 17, 7, 2, -12}, // 0x7D '}' - {1228, 8, 2, 9, 0, -4}}; // 0x7E '~' - -const GFXfont FreeSansBold9pt7b PROGMEM = {(uint8_t *)FreeSansBold9pt7bBitmaps, - (GFXglyph *)FreeSansBold9pt7bGlyphs, - 0x20, 0x7E, 22}; - -// Approx. 1902 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h deleted file mode 100644 index ff76ce3..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h +++ /dev/null @@ -1,319 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique12pt7bBitmaps[] PROGMEM = { - 0x1C, 0x3C, 0x78, 0xE1, 0xC3, 0x8F, 0x1C, 0x38, 0x70, 0xC1, 0x83, 0x00, - 0x1C, 0x78, 0xF0, 0x71, 0xFC, 0xFE, 0x3B, 0x8E, 0xC3, 0x30, 0xC0, 0x01, - 0x8C, 0x07, 0x38, 0x0C, 0x61, 0xFF, 0xF3, 0xFF, 0xE7, 0xFF, 0x83, 0x9C, - 0x0E, 0x70, 0x1C, 0xE1, 0xFF, 0xF3, 0xFF, 0xC7, 0xFF, 0x83, 0x18, 0x0E, - 0x70, 0x18, 0xC0, 0x73, 0x80, 0x00, 0x40, 0x07, 0xF0, 0x3F, 0xF0, 0xFF, - 0xF3, 0xC9, 0xE7, 0xB3, 0xCF, 0x60, 0x1F, 0xC0, 0x3F, 0xC0, 0x3F, 0xE0, - 0x1F, 0xE0, 0x1B, 0xE0, 0x33, 0xDE, 0x47, 0xBC, 0x8F, 0x7F, 0x7C, 0x7F, - 0xF0, 0x7F, 0x80, 0x18, 0x00, 0x20, 0x00, 0xC0, 0x00, 0x00, 0x01, 0x87, - 0x80, 0xC3, 0xF0, 0x61, 0xFE, 0x10, 0xE1, 0x8C, 0x30, 0x66, 0x0C, 0x3B, - 0x03, 0xFC, 0x80, 0x7E, 0x60, 0x0F, 0x30, 0x00, 0x18, 0x70, 0x0C, 0x7E, - 0x03, 0x1F, 0xC1, 0x8E, 0x30, 0xC3, 0x1C, 0x60, 0xFE, 0x18, 0x1F, 0x8C, - 0x07, 0x80, 0x01, 0xE0, 0x07, 0xF0, 0x1F, 0xE0, 0x79, 0xC0, 0xF3, 0x81, - 0xEE, 0x01, 0xF8, 0x01, 0xE0, 0x1F, 0xC6, 0x7B, 0xDD, 0xE3, 0xF7, 0x87, - 0xEF, 0x07, 0x9F, 0x1F, 0x3F, 0xFF, 0x3F, 0xDE, 0x3F, 0x1C, 0x7F, 0xEE, - 0xCC, 0x03, 0x83, 0x81, 0x81, 0xC1, 0xC0, 0xE0, 0xE0, 0x70, 0x70, 0x38, - 0x3C, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x18, 0x0E, 0x07, - 0x01, 0x80, 0x06, 0x03, 0x81, 0xC0, 0x60, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0xE0, 0xE0, 0x70, 0x38, 0x38, 0x1C, 0x1C, 0x0E, 0x0E, 0x06, - 0x07, 0x07, 0x00, 0x0C, 0x0C, 0x4F, 0xFF, 0x1C, 0x3C, 0x6C, 0x44, 0x03, - 0x80, 0x38, 0x07, 0x00, 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0xF0, 0xE0, 0x0E, - 0x00, 0xE0, 0x0C, 0x00, 0x7B, 0xDC, 0x23, 0x33, 0x00, 0x7F, 0xFF, 0xF0, - 0x7F, 0xE0, 0x00, 0xC0, 0x30, 0x18, 0x04, 0x03, 0x00, 0x80, 0x60, 0x10, - 0x0C, 0x02, 0x01, 0x80, 0x40, 0x30, 0x08, 0x06, 0x01, 0x00, 0xC0, 0x00, - 0x03, 0xC0, 0x7F, 0x87, 0xFC, 0x78, 0xF3, 0xC7, 0xBC, 0x3D, 0xE1, 0xEF, - 0x0F, 0xF0, 0x7F, 0x87, 0xBC, 0x3D, 0xE1, 0xEF, 0x1E, 0x78, 0xF3, 0xFF, - 0x0F, 0xF0, 0x3E, 0x00, 0x03, 0x83, 0x83, 0xCF, 0xEF, 0xF0, 0x78, 0x38, - 0x1C, 0x0E, 0x0F, 0x07, 0x03, 0x81, 0xC1, 0xE0, 0xF0, 0x70, 0x38, 0x00, - 0x03, 0xF0, 0x0F, 0xF8, 0x7F, 0xF8, 0xF1, 0xF3, 0xC1, 0xE7, 0x83, 0xC0, - 0x07, 0x80, 0x1E, 0x00, 0x78, 0x03, 0xE0, 0x0F, 0x00, 0x7C, 0x01, 0xE0, - 0x07, 0x00, 0x1F, 0xFC, 0x3F, 0xF8, 0xFF, 0xF0, 0x07, 0xE0, 0xFF, 0x8F, - 0xFE, 0xF8, 0xF7, 0x87, 0x80, 0x78, 0x0F, 0x80, 0xFC, 0x07, 0xE0, 0x0F, - 0x80, 0x3C, 0x01, 0xEF, 0x0F, 0x78, 0xF3, 0xFF, 0x8F, 0xF8, 0x3F, 0x00, - 0x00, 0x78, 0x07, 0xC0, 0x7E, 0x03, 0xF0, 0x37, 0x03, 0x38, 0x31, 0xC3, - 0x9E, 0x38, 0xF1, 0x87, 0x1F, 0xFE, 0xFF, 0xF7, 0xFF, 0x80, 0xF0, 0x07, - 0x00, 0x38, 0x03, 0xC0, 0x07, 0xFC, 0x1F, 0xF0, 0xFF, 0xC3, 0x00, 0x1C, - 0x00, 0x7F, 0x81, 0xFF, 0x0F, 0xFE, 0x38, 0xF8, 0x01, 0xE0, 0x07, 0x80, - 0x1E, 0xF0, 0xF3, 0xC7, 0xCF, 0xFE, 0x1F, 0xF0, 0x3F, 0x00, 0x03, 0xE0, - 0x7F, 0x87, 0xFE, 0x78, 0xF3, 0xC0, 0x3D, 0xE1, 0xFF, 0x8F, 0xFE, 0xF8, - 0xF7, 0xC7, 0xBC, 0x3D, 0xE1, 0xEF, 0x1E, 0x7C, 0xF3, 0xFF, 0x0F, 0xF0, - 0x1F, 0x00, 0x7F, 0xFB, 0xFF, 0xDF, 0xFE, 0x00, 0xE0, 0x0E, 0x00, 0xE0, - 0x0E, 0x00, 0xE0, 0x0F, 0x00, 0x70, 0x07, 0x00, 0x78, 0x03, 0x80, 0x3C, - 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x00, 0x03, 0xF0, 0x1F, 0xE0, 0xFF, 0xC7, - 0x8F, 0x1C, 0x3C, 0x71, 0xE0, 0xFF, 0x03, 0xF8, 0x3F, 0xF1, 0xF1, 0xE7, - 0x87, 0xBC, 0x1E, 0xF0, 0x7B, 0xE3, 0xCF, 0xFF, 0x1F, 0xF8, 0x1F, 0x80, - 0x03, 0xE0, 0x3F, 0xE1, 0xFF, 0x8F, 0x9F, 0x3C, 0x3D, 0xE0, 0xF7, 0x83, - 0xDE, 0x1F, 0x78, 0xFD, 0xFF, 0xE3, 0xFF, 0x87, 0xDE, 0x00, 0xF3, 0xC7, - 0x8F, 0xFE, 0x1F, 0xF0, 0x3F, 0x00, 0x1C, 0xF3, 0x80, 0x00, 0x00, 0x00, - 0x01, 0xCF, 0x38, 0x0E, 0x3C, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF1, - 0xE3, 0x81, 0x06, 0x18, 0x60, 0x00, 0x00, 0x01, 0xC0, 0x7E, 0x1F, 0xE7, - 0xF8, 0x7E, 0x03, 0xE0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x00, 0x78, 0x00, - 0xC0, 0x3F, 0xFC, 0xFF, 0xF3, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, - 0xFF, 0x9F, 0xFC, 0x7F, 0xF0, 0x30, 0x01, 0xE0, 0x0F, 0xE0, 0x3F, 0xC0, - 0x7F, 0x80, 0x7C, 0x07, 0xE1, 0xFE, 0x7F, 0x87, 0xE0, 0x38, 0x00, 0x00, - 0x00, 0x0F, 0xC1, 0xFF, 0x8F, 0xFC, 0xF1, 0xFF, 0x07, 0xF0, 0x3C, 0x01, - 0xE0, 0x1E, 0x01, 0xE0, 0x3E, 0x03, 0xE0, 0x1C, 0x01, 0xC0, 0x0E, 0x00, - 0x00, 0x07, 0x80, 0x3C, 0x01, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x03, 0xFF, - 0x80, 0x3C, 0x0F, 0x01, 0xC0, 0x0E, 0x0E, 0x00, 0x1C, 0x70, 0xF7, 0x73, - 0x87, 0xF8, 0xCC, 0x31, 0xE3, 0x61, 0x87, 0x0D, 0x8C, 0x1C, 0x3C, 0x30, - 0x61, 0xB1, 0x81, 0x86, 0xC6, 0x0C, 0x3B, 0x18, 0x71, 0xCC, 0x63, 0xCE, - 0x31, 0xFB, 0xF0, 0xE3, 0xCF, 0x01, 0xC0, 0x00, 0x03, 0xC0, 0xC0, 0x07, - 0xFF, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x3F, 0x00, 0x1F, 0x80, - 0x1F, 0xC0, 0x0F, 0xE0, 0x0F, 0xF0, 0x07, 0x7C, 0x07, 0x1E, 0x03, 0x8F, - 0x03, 0x87, 0x83, 0xC3, 0xC1, 0xFF, 0xE1, 0xFF, 0xF0, 0xFF, 0xFC, 0xF0, - 0x1E, 0x70, 0x0F, 0x78, 0x07, 0xB8, 0x03, 0xC0, 0x0F, 0xFE, 0x0F, 0xFF, - 0x87, 0xFF, 0xE3, 0xC0, 0xF1, 0xC0, 0x78, 0xE0, 0x3C, 0xF0, 0x3C, 0x7F, - 0xFC, 0x3F, 0xFC, 0x1F, 0xFF, 0x0E, 0x07, 0xCF, 0x01, 0xE7, 0x80, 0xF3, - 0x80, 0x79, 0xC0, 0x79, 0xFF, 0xF8, 0xFF, 0xFC, 0x7F, 0xF8, 0x00, 0x01, - 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE1, 0xF3, 0xC0, 0x79, 0xE0, 0x3D, - 0xE0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, - 0x0F, 0x00, 0xE7, 0x80, 0xF3, 0xE0, 0xF0, 0xFF, 0xF8, 0x3F, 0xF0, 0x07, - 0xE0, 0x00, 0x1F, 0xFC, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0x81, 0xF1, 0xC0, - 0x79, 0xE0, 0x3C, 0xF0, 0x1E, 0x78, 0x0F, 0x38, 0x07, 0x9C, 0x03, 0xDE, - 0x03, 0xCF, 0x01, 0xE7, 0x81, 0xF3, 0x80, 0xF1, 0xC1, 0xF1, 0xFF, 0xF0, - 0xFF, 0xF0, 0x7F, 0xE0, 0x00, 0x0F, 0xFF, 0x1F, 0xFF, 0x1F, 0xFF, 0x1C, - 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0xFF, - 0xF8, 0xFF, 0xF8, 0xFF, 0xF8, 0x1F, 0xFF, 0x1F, 0xFE, 0x1F, 0xFE, 0x1C, - 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3F, 0xF8, 0x3F, 0xF8, 0x3F, - 0xF8, 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0xE0, 0x00, 0x01, 0xFC, 0x03, 0xFF, 0x03, 0xFF, 0xC3, - 0xE0, 0xF3, 0xC0, 0x39, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0xF0, 0x7F, - 0x78, 0x3F, 0xBC, 0x1F, 0xDE, 0x01, 0xCF, 0x00, 0xE7, 0xC0, 0xF1, 0xF0, - 0xF8, 0xFF, 0xFC, 0x3F, 0xEC, 0x07, 0xE6, 0x00, 0x1E, 0x03, 0x8F, 0x01, - 0xC7, 0x01, 0xE3, 0x80, 0xF3, 0xC0, 0x79, 0xE0, 0x38, 0xF0, 0x1C, 0x7F, - 0xFE, 0x3F, 0xFF, 0x3F, 0xFF, 0x9E, 0x03, 0x8F, 0x01, 0xC7, 0x01, 0xE3, - 0x80, 0xF3, 0xC0, 0x71, 0xE0, 0x38, 0xF0, 0x3C, 0x70, 0x1E, 0x00, 0x1E, - 0x3C, 0x78, 0xE1, 0xC7, 0x8F, 0x1E, 0x38, 0x71, 0xE3, 0xC7, 0x8E, 0x1C, - 0x78, 0xF1, 0xE0, 0x00, 0x1C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x38, - 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xC0, 0x07, 0x3C, 0x3C, - 0xF0, 0xF3, 0xC3, 0x8F, 0x1E, 0x3F, 0xF8, 0x7F, 0xC0, 0xFC, 0x00, 0x1E, - 0x07, 0xC7, 0x83, 0xE1, 0xE1, 0xE0, 0x70, 0xF0, 0x1C, 0x78, 0x0F, 0x3C, - 0x03, 0xDE, 0x00, 0xFF, 0x00, 0x3F, 0xC0, 0x0F, 0xF0, 0x07, 0xDE, 0x01, - 0xE7, 0xC0, 0x78, 0xF0, 0x1C, 0x3E, 0x0F, 0x07, 0x83, 0xC0, 0xF0, 0xF0, - 0x3C, 0x38, 0x07, 0x80, 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xC0, - 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x38, 0x01, 0xC0, 0x1E, 0x00, 0xF0, 0x07, - 0x80, 0x38, 0x01, 0xC0, 0x1F, 0xFE, 0xFF, 0xF7, 0xFF, 0x80, 0x1F, 0x03, - 0xF1, 0xF0, 0x3F, 0x1F, 0x07, 0xF1, 0xF0, 0x7F, 0x3F, 0x0F, 0xE3, 0xF0, - 0xEE, 0x3B, 0x1E, 0xE3, 0xB1, 0xDE, 0x3B, 0x1D, 0xE7, 0xB3, 0x9C, 0x7B, - 0x39, 0xC7, 0x37, 0x9C, 0x73, 0x73, 0xCF, 0x3F, 0x3C, 0xF3, 0xE3, 0x8F, - 0x3E, 0x38, 0xE3, 0xC3, 0x8E, 0x3C, 0x78, 0x1E, 0x03, 0x87, 0xC0, 0xE1, - 0xF0, 0x38, 0x7C, 0x1E, 0x1F, 0x87, 0x8F, 0xE1, 0xC3, 0xB8, 0x70, 0xEF, - 0x1C, 0x39, 0xCF, 0x1E, 0x73, 0xC7, 0x8E, 0xE1, 0xC3, 0xB8, 0x70, 0xEE, - 0x1C, 0x1F, 0x8F, 0x07, 0xE3, 0xC1, 0xF0, 0xE0, 0x3C, 0x38, 0x0F, 0x00, - 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE3, 0xE3, 0xC0, 0xF9, 0xE0, - 0x3D, 0xE0, 0x1E, 0xF0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x03, 0xDE, - 0x01, 0xEF, 0x00, 0xF7, 0xC0, 0xF1, 0xF0, 0xF0, 0xFF, 0xF0, 0x3F, 0xF0, - 0x07, 0xE0, 0x00, 0x1F, 0xFC, 0x1F, 0xFE, 0x1F, 0xFF, 0x1C, 0x1F, 0x1C, - 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0x1E, 0x3F, 0xFC, 0x3F, 0xFC, 0x7F, - 0xF0, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE3, 0xE3, - 0xC0, 0xF9, 0xC0, 0x3D, 0xE0, 0x1E, 0xF0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, - 0xFC, 0x03, 0xDE, 0x09, 0xEF, 0x0E, 0xE7, 0xC7, 0xF1, 0xF1, 0xF0, 0xFF, - 0xF8, 0x3F, 0xFE, 0x07, 0xE6, 0x00, 0x02, 0x00, 0x0F, 0xFE, 0x0F, 0xFF, - 0x87, 0xFF, 0xE3, 0x81, 0xF1, 0xC0, 0x78, 0xE0, 0x3C, 0xF0, 0x1C, 0x78, - 0x1E, 0x3F, 0xFC, 0x1F, 0xFC, 0x1F, 0xFF, 0x8F, 0x03, 0xC7, 0x81, 0xE3, - 0x80, 0xF1, 0xC0, 0xF1, 0xE0, 0x78, 0xF0, 0x3C, 0x78, 0x1F, 0x00, 0x03, - 0xF8, 0x0F, 0xFE, 0x1F, 0xFF, 0x1E, 0x1F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, - 0x00, 0x3F, 0x00, 0x1F, 0xF0, 0x0F, 0xFC, 0x01, 0xFE, 0x00, 0x3E, 0xF0, - 0x1E, 0xF0, 0x1E, 0xF8, 0x3C, 0x7F, 0xF8, 0x7F, 0xF0, 0x1F, 0xC0, 0x7F, - 0xFE, 0xFF, 0xFD, 0xFF, 0xF8, 0x1C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, - 0x03, 0x80, 0x07, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xE0, 0x01, - 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x38, 0x00, 0x1E, 0x07, 0x1C, - 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0x0E, 0x38, 0x0E, 0x78, 0x1E, 0x78, - 0x1E, 0x78, 0x1E, 0x78, 0x1C, 0x70, 0x1C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, - 0x38, 0xF8, 0x78, 0xFF, 0xF0, 0x7F, 0xE0, 0x1F, 0x80, 0xF0, 0x1F, 0xE0, - 0x39, 0xC0, 0xF3, 0x81, 0xC7, 0x07, 0x8E, 0x0E, 0x1C, 0x3C, 0x3C, 0x70, - 0x79, 0xE0, 0xF3, 0x80, 0xEF, 0x01, 0xDC, 0x03, 0xB8, 0x07, 0xE0, 0x0F, - 0x80, 0x1F, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x70, 0x7F, 0x87, 0x83, - 0xFC, 0x3C, 0x3D, 0xE1, 0xE1, 0xEF, 0x1F, 0x0E, 0x78, 0xD8, 0xF3, 0xC6, - 0xC7, 0x0E, 0x76, 0x78, 0x73, 0x33, 0x83, 0xB9, 0x9C, 0x1D, 0xCD, 0xC0, - 0xEC, 0x6E, 0x07, 0xE3, 0xE0, 0x3E, 0x1F, 0x01, 0xF0, 0xF0, 0x0F, 0x87, - 0x80, 0x78, 0x38, 0x03, 0xC1, 0xC0, 0x00, 0x0F, 0x03, 0xC3, 0xC1, 0xE0, - 0xF8, 0xF0, 0x1E, 0x78, 0x07, 0x9E, 0x00, 0xFF, 0x00, 0x3F, 0x80, 0x0F, - 0xC0, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3F, 0x00, 0x1F, 0xC0, 0x0F, 0xF0, - 0x07, 0x9E, 0x03, 0xC7, 0x80, 0xF0, 0xF0, 0x78, 0x3C, 0x3C, 0x0F, 0x80, - 0x78, 0x1E, 0xF0, 0x79, 0xE0, 0xF3, 0xC3, 0xC3, 0xCF, 0x07, 0x9E, 0x0F, - 0x78, 0x0F, 0xE0, 0x1F, 0x80, 0x3F, 0x00, 0x3C, 0x00, 0x70, 0x00, 0xE0, - 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x1F, 0xFF, - 0x0F, 0xFF, 0x87, 0xFF, 0xC0, 0x03, 0xC0, 0x03, 0xE0, 0x03, 0xE0, 0x03, - 0xE0, 0x03, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, - 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xFF, 0xF0, 0xFF, 0xF8, 0x7F, 0xFC, - 0x00, 0x0F, 0xC3, 0xF0, 0xFC, 0x38, 0x1E, 0x07, 0x01, 0xC0, 0x70, 0x1C, - 0x0F, 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x0F, - 0x03, 0x80, 0xFC, 0x3F, 0x0F, 0xC0, 0x08, 0x88, 0xC4, 0x44, 0x66, 0x66, - 0x66, 0x62, 0x22, 0x33, 0x33, 0x30, 0x0F, 0xC3, 0xF0, 0xFC, 0x07, 0x03, - 0xC0, 0xE0, 0x38, 0x0E, 0x03, 0x81, 0xC0, 0x70, 0x1C, 0x07, 0x03, 0xC0, - 0xE0, 0x38, 0x0E, 0x03, 0x81, 0xE0, 0x70, 0xFC, 0x3F, 0x0F, 0xC0, 0x03, - 0x80, 0xF0, 0x1E, 0x07, 0xE1, 0xDC, 0x3B, 0x8E, 0x71, 0x86, 0x70, 0xFC, - 0x1F, 0x83, 0x80, 0x7F, 0xFE, 0xFF, 0xFC, 0xE6, 0x30, 0x07, 0xE0, 0xFF, - 0x8F, 0xFE, 0x70, 0xE0, 0x07, 0x03, 0xF8, 0xFF, 0xCF, 0x9E, 0xF0, 0xF7, - 0x8F, 0x3F, 0xF8, 0xFF, 0xC3, 0xDF, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0x9F, 0x07, 0xFF, 0x0F, 0xFF, 0x3E, 0x3E, - 0x78, 0x3C, 0xF0, 0x79, 0xC0, 0xF3, 0x81, 0xEF, 0x07, 0x9F, 0x1F, 0x3F, - 0xFC, 0x7F, 0xF0, 0xEF, 0x80, 0x07, 0xC0, 0xFF, 0x8F, 0xFE, 0xF8, 0xF7, - 0x87, 0xB8, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0xF7, 0x8F, 0x1F, 0xF8, 0xFF, - 0x81, 0xF0, 0x00, 0x00, 0x1E, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x03, - 0xC0, 0xF7, 0x87, 0xFE, 0x1F, 0xFC, 0x7C, 0x78, 0xF0, 0x73, 0xC0, 0xE7, - 0x81, 0x8F, 0x07, 0x1E, 0x0E, 0x3E, 0x3C, 0x7F, 0xF8, 0x7F, 0xE0, 0x7D, - 0xC0, 0x07, 0xC0, 0xFF, 0x8F, 0xFE, 0xF0, 0xF7, 0x87, 0xFF, 0xFF, 0xFF, - 0xFE, 0x00, 0xF0, 0x07, 0xC7, 0x9F, 0xF8, 0xFF, 0x81, 0xF0, 0x00, 0x07, - 0x87, 0xC7, 0xE3, 0xC1, 0xC3, 0xF9, 0xFC, 0x78, 0x3C, 0x1C, 0x0E, 0x07, - 0x07, 0x83, 0x81, 0xC0, 0xE0, 0xF0, 0x78, 0x00, 0x03, 0xDE, 0x1F, 0xF8, - 0x7F, 0xF1, 0xF1, 0xE3, 0xC1, 0xCF, 0x03, 0x9E, 0x06, 0x3C, 0x0C, 0x78, - 0x38, 0xF8, 0xF1, 0xFF, 0xC1, 0xFF, 0x81, 0xF7, 0x00, 0x0E, 0x3C, 0x3C, - 0x78, 0xF0, 0x7F, 0xC0, 0x7E, 0x00, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x07, - 0x00, 0x3C, 0x00, 0xF7, 0xC3, 0xBF, 0x8F, 0xFF, 0x3C, 0x3D, 0xE0, 0xE7, - 0x83, 0x9C, 0x0E, 0x70, 0x79, 0xC1, 0xEF, 0x07, 0x3C, 0x1C, 0xE0, 0x73, - 0x83, 0xC0, 0x0E, 0x3C, 0x70, 0x00, 0x03, 0x8F, 0x1E, 0x38, 0x71, 0xE3, - 0xC7, 0x0E, 0x1C, 0x78, 0xF1, 0xC0, 0x03, 0xC0, 0xE0, 0x38, 0x00, 0x00, - 0x01, 0xE0, 0x70, 0x1C, 0x07, 0x03, 0xC0, 0xF0, 0x38, 0x0E, 0x03, 0x81, - 0xE0, 0x70, 0x1C, 0x07, 0x03, 0xC0, 0xF0, 0xF8, 0x3E, 0x0F, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0x87, 0x87, 0x1E, - 0x0E, 0x78, 0x3D, 0xE0, 0x7F, 0x80, 0xFE, 0x01, 0xFE, 0x03, 0xFC, 0x0F, - 0x38, 0x1E, 0x78, 0x38, 0xF0, 0x70, 0xF0, 0xE1, 0xE0, 0x0E, 0x3C, 0x78, - 0xE1, 0xC3, 0x8F, 0x1E, 0x38, 0x71, 0xE3, 0xC7, 0x0E, 0x1C, 0x78, 0xF1, - 0xC0, 0x1C, 0xF1, 0xE0, 0xEF, 0xDF, 0x87, 0xFF, 0xFE, 0x7C, 0x78, 0xF3, - 0xC3, 0x87, 0x9C, 0x1C, 0x38, 0xE1, 0xE1, 0xC7, 0x0E, 0x0E, 0x78, 0x70, - 0xF3, 0xC3, 0x87, 0x9C, 0x3C, 0x38, 0xE1, 0xE1, 0xC7, 0x0E, 0x0E, 0x00, - 0x3D, 0xF0, 0xEF, 0xE3, 0xFF, 0xCF, 0x0F, 0x78, 0x39, 0xC0, 0xE7, 0x03, - 0x9C, 0x1E, 0xF0, 0x7B, 0xC1, 0xCE, 0x07, 0x38, 0x1C, 0xE0, 0xF0, 0x07, - 0xE0, 0x7F, 0xE3, 0xFF, 0x9F, 0x1F, 0x78, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, - 0x1F, 0xF0, 0x7B, 0xE3, 0xE7, 0xFF, 0x1F, 0xF8, 0x1F, 0x80, 0x0E, 0x7C, - 0x0F, 0xFE, 0x0F, 0xFF, 0x1F, 0x1F, 0x1E, 0x0F, 0x1E, 0x0F, 0x1C, 0x0F, - 0x1C, 0x0F, 0x3C, 0x1E, 0x3E, 0x3E, 0x3F, 0xFC, 0x3F, 0xF8, 0x7B, 0xE0, - 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0xF0, 0x00, 0x07, 0xBC, - 0x7F, 0xF3, 0xFF, 0x9F, 0x1E, 0x78, 0x3B, 0xC0, 0xEF, 0x03, 0x3C, 0x0C, - 0xF0, 0x73, 0xE3, 0xCF, 0xFF, 0x1F, 0xF8, 0x3C, 0xE0, 0x03, 0x80, 0x1E, - 0x00, 0x78, 0x01, 0xC0, 0x07, 0x00, 0x3D, 0xCE, 0xE3, 0xF8, 0xF0, 0x78, - 0x1E, 0x07, 0x01, 0xC0, 0xF0, 0x3C, 0x0E, 0x03, 0x80, 0xE0, 0x00, 0x1F, - 0xC3, 0xFE, 0x7F, 0xFF, 0x0F, 0xF0, 0x0F, 0xE0, 0x7F, 0xC1, 0xFE, 0x03, - 0xEE, 0x1E, 0xFF, 0xC7, 0xFC, 0x3F, 0x00, 0x1E, 0x1E, 0x1C, 0x7F, 0xFF, - 0x3C, 0x38, 0x38, 0x38, 0x78, 0x78, 0x70, 0x7C, 0xF8, 0x78, 0x38, 0x3C, - 0xE0, 0xE3, 0x83, 0x9E, 0x0E, 0x70, 0x79, 0xC1, 0xE7, 0x07, 0x3C, 0x1C, - 0xF0, 0xF3, 0xE7, 0xCF, 0xFF, 0x1F, 0xF8, 0x3C, 0xE0, 0xF0, 0x77, 0x87, - 0xBC, 0x38, 0xE3, 0xC7, 0x1C, 0x39, 0xE1, 0xCE, 0x0E, 0xE0, 0x77, 0x03, - 0xF0, 0x0F, 0x80, 0x78, 0x03, 0xC0, 0x00, 0xF1, 0xC3, 0xF8, 0xE3, 0xFC, - 0xF1, 0xDE, 0x79, 0xEF, 0x3C, 0xE7, 0xB6, 0x73, 0xDB, 0x70, 0xED, 0xB8, - 0x7C, 0xF8, 0x3E, 0x7C, 0x1F, 0x3C, 0x0F, 0x1E, 0x07, 0x8E, 0x00, 0x0F, - 0x1E, 0x0F, 0x3C, 0x0F, 0x38, 0x07, 0x70, 0x07, 0xF0, 0x03, 0xE0, 0x03, - 0xC0, 0x07, 0xC0, 0x0F, 0xE0, 0x1E, 0xE0, 0x3C, 0xF0, 0x3C, 0xF0, 0x78, - 0x78, 0x3C, 0x1C, 0x78, 0x78, 0xF0, 0xE1, 0xE3, 0xC1, 0xC7, 0x03, 0x9E, - 0x07, 0x38, 0x0E, 0xE0, 0x1D, 0xC0, 0x3F, 0x00, 0x7E, 0x00, 0x78, 0x00, - 0xF0, 0x01, 0xC0, 0x07, 0x00, 0x7E, 0x00, 0xF8, 0x01, 0xE0, 0x00, 0x1F, - 0xF9, 0xFF, 0xCF, 0xFC, 0x01, 0xE0, 0x3E, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3F, 0xF9, 0xFF, 0xCF, 0xFC, 0x00, 0x07, 0x87, 0xC3, - 0xE3, 0xC1, 0xC0, 0xE0, 0x70, 0x38, 0x3C, 0x1C, 0x0E, 0x1E, 0x0F, 0x03, - 0x81, 0xC0, 0xE0, 0x70, 0x78, 0x38, 0x1C, 0x0F, 0x87, 0xC1, 0xC0, 0x0C, - 0x30, 0x86, 0x18, 0x61, 0x8C, 0x30, 0xC3, 0x0C, 0x61, 0x86, 0x18, 0x63, - 0x0C, 0x30, 0xC2, 0x00, 0x00, 0x07, 0x07, 0xC3, 0xE0, 0x70, 0x38, 0x3C, - 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xE0, 0xF0, 0xE0, 0x70, 0x78, 0x38, 0x1C, - 0x0E, 0x07, 0x07, 0x8F, 0x87, 0xC3, 0xC0, 0x3C, 0x07, 0xE0, 0xC7, 0x30, - 0x7E, 0x01, 0xC0}; - -const GFXglyph FreeSansBoldOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 7, 0, 1}, // 0x20 ' ' - {0, 7, 17, 8, 3, -16}, // 0x21 '!' - {15, 10, 6, 11, 4, -17}, // 0x22 '"' - {23, 15, 16, 13, 1, -15}, // 0x23 '#' - {53, 15, 21, 13, 1, -17}, // 0x24 '$' - {93, 18, 18, 21, 3, -17}, // 0x25 '%' - {134, 15, 17, 17, 2, -16}, // 0x26 '&' - {166, 4, 6, 6, 4, -17}, // 0x27 ''' - {169, 9, 22, 8, 2, -17}, // 0x28 '(' - {194, 9, 22, 8, -1, -16}, // 0x29 ')' - {219, 8, 8, 9, 3, -17}, // 0x2A '*' - {227, 12, 11, 14, 2, -10}, // 0x2B '+' - {244, 5, 7, 7, 1, -2}, // 0x2C ',' - {249, 7, 3, 8, 2, -7}, // 0x2D '-' - {252, 4, 3, 7, 2, -2}, // 0x2E '.' - {254, 10, 17, 7, 0, -16}, // 0x2F '/' - {276, 13, 17, 13, 2, -16}, // 0x30 '0' - {304, 9, 17, 13, 4, -16}, // 0x31 '1' - {324, 15, 17, 13, 1, -16}, // 0x32 '2' - {356, 13, 17, 13, 2, -16}, // 0x33 '3' - {384, 13, 17, 13, 1, -16}, // 0x34 '4' - {412, 14, 17, 13, 1, -16}, // 0x35 '5' - {442, 13, 17, 13, 2, -16}, // 0x36 '6' - {470, 13, 17, 13, 3, -16}, // 0x37 '7' - {498, 14, 17, 13, 1, -16}, // 0x38 '8' - {528, 14, 17, 13, 2, -16}, // 0x39 '9' - {558, 6, 12, 8, 3, -11}, // 0x3A ':' - {567, 7, 16, 8, 2, -11}, // 0x3B ';' - {581, 13, 12, 14, 2, -11}, // 0x3C '<' - {601, 14, 9, 14, 1, -9}, // 0x3D '=' - {617, 13, 12, 14, 1, -10}, // 0x3E '>' - {637, 13, 18, 15, 4, -17}, // 0x3F '?' - {667, 22, 21, 23, 2, -17}, // 0x40 '@' - {725, 17, 18, 17, 0, -17}, // 0x41 'A' - {764, 17, 18, 17, 2, -17}, // 0x42 'B' - {803, 17, 18, 17, 3, -17}, // 0x43 'C' - {842, 17, 18, 17, 2, -17}, // 0x44 'D' - {881, 16, 18, 16, 2, -17}, // 0x45 'E' - {917, 16, 18, 15, 2, -17}, // 0x46 'F' - {953, 17, 18, 19, 3, -17}, // 0x47 'G' - {992, 17, 18, 17, 2, -17}, // 0x48 'H' - {1031, 7, 18, 7, 2, -17}, // 0x49 'I' - {1047, 14, 18, 13, 1, -17}, // 0x4A 'J' - {1079, 18, 18, 17, 2, -17}, // 0x4B 'K' - {1120, 13, 18, 15, 2, -17}, // 0x4C 'L' - {1150, 20, 18, 20, 2, -17}, // 0x4D 'M' - {1195, 18, 18, 17, 2, -17}, // 0x4E 'N' - {1236, 17, 18, 19, 3, -17}, // 0x4F 'O' - {1275, 16, 18, 16, 2, -17}, // 0x50 'P' - {1311, 17, 19, 19, 3, -17}, // 0x51 'Q' - {1352, 17, 18, 17, 2, -17}, // 0x52 'R' - {1391, 16, 18, 16, 2, -17}, // 0x53 'S' - {1427, 15, 18, 15, 3, -17}, // 0x54 'T' - {1461, 16, 18, 17, 3, -17}, // 0x55 'U' - {1497, 15, 18, 16, 4, -17}, // 0x56 'V' - {1531, 21, 18, 23, 4, -17}, // 0x57 'W' - {1579, 18, 18, 16, 1, -17}, // 0x58 'X' - {1620, 15, 18, 16, 4, -17}, // 0x59 'Y' - {1654, 17, 18, 15, 1, -17}, // 0x5A 'Z' - {1693, 10, 23, 8, 1, -17}, // 0x5B '[' - {1722, 4, 23, 7, 3, -22}, // 0x5C '\' - {1734, 10, 23, 8, 0, -17}, // 0x5D ']' - {1763, 11, 11, 14, 3, -16}, // 0x5E '^' - {1779, 15, 2, 13, -2, 4}, // 0x5F '_' - {1783, 4, 3, 8, 4, -17}, // 0x60 '`' - {1785, 13, 13, 13, 1, -12}, // 0x61 'a' - {1807, 15, 18, 15, 1, -17}, // 0x62 'b' - {1841, 13, 13, 13, 2, -12}, // 0x63 'c' - {1863, 15, 18, 15, 2, -17}, // 0x64 'd' - {1897, 13, 13, 13, 2, -12}, // 0x65 'e' - {1919, 9, 18, 8, 2, -17}, // 0x66 'f' - {1940, 15, 18, 15, 1, -12}, // 0x67 'g' - {1974, 14, 18, 15, 2, -17}, // 0x68 'h' - {2006, 7, 18, 7, 2, -17}, // 0x69 'i' - {2022, 10, 23, 7, -1, -17}, // 0x6A 'j' - {2051, 15, 18, 13, 1, -17}, // 0x6B 'k' - {2085, 7, 18, 7, 2, -17}, // 0x6C 'l' - {2101, 21, 13, 21, 1, -12}, // 0x6D 'm' - {2136, 14, 13, 15, 2, -12}, // 0x6E 'n' - {2159, 14, 13, 15, 2, -12}, // 0x6F 'o' - {2182, 16, 18, 15, 0, -12}, // 0x70 'p' - {2218, 14, 18, 15, 2, -12}, // 0x71 'q' - {2250, 10, 13, 9, 2, -12}, // 0x72 'r' - {2267, 12, 13, 13, 3, -12}, // 0x73 's' - {2287, 8, 15, 8, 2, -14}, // 0x74 't' - {2302, 14, 13, 15, 2, -12}, // 0x75 'u' - {2325, 13, 13, 13, 3, -12}, // 0x76 'v' - {2347, 17, 13, 19, 3, -12}, // 0x77 'w' - {2375, 16, 13, 13, 0, -12}, // 0x78 'x' - {2401, 15, 18, 13, 1, -12}, // 0x79 'y' - {2435, 13, 13, 12, 1, -12}, // 0x7A 'z' - {2457, 9, 23, 9, 3, -17}, // 0x7B '{' - {2483, 6, 23, 7, 1, -17}, // 0x7C '|' - {2501, 9, 23, 9, 0, -17}, // 0x7D '}' - {2527, 12, 5, 14, 2, -7}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique12pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique12pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 3207 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h deleted file mode 100644 index 441c6b5..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h +++ /dev/null @@ -1,547 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique18pt7bBitmaps[] PROGMEM = { - 0x06, 0x01, 0xC0, 0x7C, 0x1F, 0x0F, 0xC3, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, - 0xC0, 0xF0, 0x7C, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1C, 0x07, 0x01, 0xC0, - 0x60, 0x7C, 0x1F, 0x07, 0xC3, 0xF0, 0xF8, 0x00, 0x78, 0x7B, 0xC3, 0xFE, - 0x3F, 0xE1, 0xEF, 0x0F, 0x78, 0x7B, 0x83, 0x9C, 0x1C, 0xC0, 0xC0, 0x00, - 0x3C, 0x38, 0x00, 0xF1, 0xE0, 0x07, 0x87, 0x00, 0x1E, 0x3C, 0x00, 0xF0, - 0xE0, 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x1F, 0xFF, 0xF8, - 0x0F, 0x0E, 0x00, 0x3C, 0x78, 0x00, 0xE1, 0xE0, 0x07, 0x8F, 0x00, 0x1C, - 0x3C, 0x07, 0xFF, 0xFE, 0x1F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE3, 0xFF, 0xFF, - 0x01, 0xE3, 0xC0, 0x0F, 0x0E, 0x00, 0x3C, 0x78, 0x01, 0xE1, 0xC0, 0x07, - 0x8F, 0x00, 0x3C, 0x38, 0x00, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0xFC, - 0x00, 0xFF, 0xC0, 0x3F, 0xFC, 0x0F, 0xFF, 0xC3, 0xE6, 0x78, 0x78, 0xCF, - 0x1E, 0x39, 0xE3, 0xC7, 0x3C, 0x78, 0xC0, 0x0F, 0x98, 0x01, 0xFF, 0x00, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x00, 0x7F, 0x80, 0x0F, 0xF0, - 0x03, 0xBE, 0x00, 0x67, 0xCF, 0x8C, 0xF9, 0xF1, 0x9F, 0x3E, 0x77, 0xC7, - 0xEF, 0xF8, 0x7F, 0xFE, 0x0F, 0xFF, 0x80, 0xFF, 0xE0, 0x03, 0xE0, 0x00, - 0x38, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x07, 0x01, 0xE0, - 0x03, 0x81, 0xFE, 0x00, 0xC0, 0xFF, 0x80, 0x70, 0x7F, 0xF0, 0x38, 0x1E, - 0x3C, 0x1C, 0x0F, 0x07, 0x06, 0x03, 0x81, 0xC3, 0x80, 0xE0, 0xF1, 0xC0, - 0x3C, 0x78, 0xE0, 0x0F, 0xFE, 0x30, 0x01, 0xFF, 0x1C, 0x00, 0x7F, 0x8E, - 0x00, 0x07, 0x83, 0x00, 0x00, 0x01, 0x83, 0xE0, 0x00, 0xE3, 0xFE, 0x00, - 0x71, 0xFF, 0x80, 0x18, 0xFF, 0xF0, 0x0C, 0x3C, 0x3C, 0x07, 0x1C, 0x07, - 0x03, 0x87, 0x01, 0xC0, 0xC1, 0xE1, 0xE0, 0x60, 0x7F, 0xF8, 0x38, 0x0F, - 0xFC, 0x1C, 0x03, 0xFE, 0x06, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x03, - 0xFC, 0x00, 0x3F, 0xF0, 0x03, 0xFF, 0x80, 0x3F, 0x3C, 0x01, 0xF1, 0xE0, - 0x0F, 0x8F, 0x00, 0x7C, 0xF0, 0x03, 0xFF, 0x80, 0x0F, 0xF8, 0x00, 0x3F, - 0x00, 0x03, 0xF0, 0x00, 0x7F, 0xC7, 0x8F, 0xFE, 0x3C, 0xFC, 0xFB, 0xCF, - 0x83, 0xFE, 0xF8, 0x1F, 0xE7, 0xC0, 0x7E, 0x3E, 0x03, 0xE1, 0xF0, 0x1F, - 0x0F, 0xE3, 0xFC, 0x7F, 0xFF, 0xE1, 0xFF, 0xFF, 0x87, 0xFE, 0x7C, 0x0F, - 0xE1, 0xF0, 0x7B, 0xFF, 0xEF, 0x7B, 0x9C, 0xC0, 0x00, 0x78, 0x07, 0x80, - 0x78, 0x03, 0x80, 0x3C, 0x03, 0xC0, 0x1E, 0x01, 0xE0, 0x1E, 0x00, 0xF0, - 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0xF0, 0x07, - 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, - 0x07, 0x80, 0x1C, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x00, 0xE0, 0x07, 0x80, - 0x1C, 0x00, 0x01, 0xC0, 0x0F, 0x00, 0x38, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x01, 0xC0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, - 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0xF8, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x1E, - 0x00, 0xF0, 0x07, 0x80, 0x78, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x1E, 0x01, - 0xE0, 0x1E, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x00, 0x03, 0x00, 0x70, 0x07, - 0x04, 0x63, 0xFF, 0xF7, 0xFF, 0x1F, 0x83, 0xF0, 0x3B, 0x87, 0x38, 0x21, - 0x00, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x7C, 0x07, 0xFF, 0xFD, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xE0, - 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x3E, 0x7C, 0xF3, 0xE7, 0xC1, 0x87, 0x0C, 0x39, 0xE3, 0x00, 0x7F, - 0xDF, 0xFF, 0xFB, 0xFE, 0x7D, 0xF7, 0xBE, 0xF8, 0x00, 0x0E, 0x00, 0x18, - 0x00, 0x70, 0x00, 0xC0, 0x03, 0x80, 0x06, 0x00, 0x1C, 0x00, 0x30, 0x00, - 0xE0, 0x01, 0x80, 0x07, 0x00, 0x0C, 0x00, 0x38, 0x00, 0x60, 0x01, 0xC0, - 0x03, 0x00, 0x0E, 0x00, 0x18, 0x00, 0x70, 0x00, 0xC0, 0x03, 0x80, 0x06, - 0x00, 0x1C, 0x00, 0x30, 0x00, 0xE0, 0x00, 0x00, 0xFC, 0x00, 0x7F, 0xC0, - 0x7F, 0xF8, 0x3F, 0xFE, 0x0F, 0x8F, 0xC7, 0xC1, 0xF1, 0xE0, 0x7C, 0xF8, - 0x1F, 0x3E, 0x07, 0xDF, 0x01, 0xF7, 0xC0, 0x7D, 0xF0, 0x3F, 0x7C, 0x0F, - 0xBF, 0x03, 0xEF, 0x80, 0xFB, 0xE0, 0x3E, 0xF8, 0x1F, 0x3E, 0x07, 0xCF, - 0x81, 0xE3, 0xE0, 0xF8, 0xFC, 0x7C, 0x1F, 0xFF, 0x07, 0xFF, 0x80, 0xFF, - 0xC0, 0x0F, 0x80, 0x00, 0x00, 0x70, 0x03, 0x80, 0x3C, 0x03, 0xE0, 0xFF, - 0x3F, 0xF3, 0xFF, 0x9F, 0xFC, 0x03, 0xE0, 0x1F, 0x01, 0xF0, 0x0F, 0x80, - 0x7C, 0x03, 0xE0, 0x1E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x3E, - 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x3E, 0x00, 0x00, 0x1F, 0x80, - 0x07, 0xFF, 0x00, 0x7F, 0xFC, 0x07, 0xFF, 0xE0, 0x7E, 0x1F, 0x83, 0xE0, - 0x7C, 0x1F, 0x03, 0xE1, 0xF0, 0x1F, 0x0F, 0x80, 0xF8, 0x00, 0x0F, 0x80, - 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xE0, 0x00, 0xFC, - 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, - 0x00, 0x03, 0xF0, 0x00, 0x1F, 0xFF, 0xE1, 0xFF, 0xFF, 0x0F, 0xFF, 0xF0, - 0x7F, 0xFF, 0x80, 0x00, 0x7F, 0x00, 0x1F, 0xFC, 0x03, 0xFF, 0xE0, 0x7F, - 0xFF, 0x0F, 0x83, 0xF0, 0xF0, 0x1F, 0x1F, 0x01, 0xF1, 0xE0, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0xFC, 0x00, 0xFF, 0x80, 0x0F, 0xF0, 0x00, 0xFF, 0x80, - 0x0F, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xCF, 0x80, 0x7C, - 0xF8, 0x07, 0xCF, 0x80, 0xF8, 0xFC, 0x3F, 0x8F, 0xFF, 0xF0, 0x7F, 0xFE, - 0x03, 0xFF, 0xC0, 0x0F, 0xE0, 0x00, 0x00, 0x07, 0xE0, 0x01, 0xFC, 0x00, - 0x7F, 0x00, 0x1F, 0xE0, 0x03, 0xFC, 0x00, 0xEF, 0x80, 0x3D, 0xF0, 0x0F, - 0x7C, 0x03, 0xCF, 0x80, 0xF1, 0xF0, 0x1C, 0x3E, 0x07, 0x07, 0xC1, 0xE1, - 0xF0, 0x78, 0x3E, 0x1E, 0x07, 0xC3, 0xFF, 0xFE, 0x7F, 0xFF, 0xDF, 0xFF, - 0xFB, 0xFF, 0xFF, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, 0x1F, - 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x01, 0xFF, 0xF0, 0x3F, 0xFF, 0x03, - 0xFF, 0xF0, 0x3F, 0xFF, 0x07, 0x80, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x00, - 0xF7, 0xE0, 0x0F, 0xFF, 0x01, 0xFF, 0xF8, 0x1F, 0xFF, 0x83, 0xF0, 0xFC, - 0x3E, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, - 0x8F, 0x80, 0xF8, 0xF8, 0x1F, 0x8F, 0xC3, 0xF0, 0xFF, 0xFE, 0x07, 0xFF, - 0xC0, 0x3F, 0xF8, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, - 0xFF, 0x03, 0xFF, 0xE0, 0xF8, 0x7E, 0x3E, 0x07, 0xC7, 0x80, 0x01, 0xF0, - 0x00, 0x3C, 0xFC, 0x07, 0xFF, 0xC1, 0xFF, 0xFC, 0x3F, 0xFF, 0xC7, 0xE1, - 0xF8, 0xF8, 0x1F, 0x3E, 0x03, 0xE7, 0x80, 0x7C, 0xF0, 0x0F, 0x9E, 0x01, - 0xE3, 0xC0, 0x7C, 0x78, 0x1F, 0x0F, 0x87, 0xE0, 0xFF, 0xF8, 0x1F, 0xFE, - 0x01, 0xFF, 0x80, 0x0F, 0xC0, 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xF9, 0xFF, - 0xFF, 0x7F, 0xFF, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, - 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x07, 0x80, 0x01, 0xF0, 0x00, 0x7C, - 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x3E, 0x00, - 0x07, 0xC0, 0x00, 0x00, 0x7F, 0x00, 0x1F, 0xFC, 0x07, 0xFF, 0xE0, 0xFF, - 0xFF, 0x0F, 0x81, 0xF1, 0xF0, 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x1E, 0x1F, - 0x07, 0xE0, 0xFF, 0xFC, 0x07, 0xFF, 0x00, 0xFF, 0xF8, 0x1F, 0xFF, 0x83, - 0xF0, 0xFC, 0x7C, 0x07, 0xC7, 0xC0, 0x7C, 0xF8, 0x07, 0xCF, 0x80, 0x7C, - 0xF8, 0x0F, 0x8F, 0x80, 0xF8, 0xFC, 0x3F, 0x0F, 0xFF, 0xF0, 0x7F, 0xFE, - 0x03, 0xFF, 0x80, 0x0F, 0xE0, 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, - 0xFF, 0x03, 0xFF, 0xE0, 0xFC, 0x3E, 0x3F, 0x03, 0xC7, 0xC0, 0x79, 0xF0, - 0x0F, 0x3E, 0x01, 0xE7, 0xC0, 0x3C, 0xF8, 0x0F, 0x9F, 0x03, 0xE3, 0xF0, - 0xFC, 0x7F, 0xFF, 0x87, 0xFF, 0xF0, 0x7F, 0xFE, 0x07, 0xE7, 0x80, 0x01, - 0xF0, 0x00, 0x3C, 0x7C, 0x0F, 0x8F, 0xC3, 0xE1, 0xFF, 0xF8, 0x1F, 0xFE, - 0x01, 0xFF, 0x80, 0x0F, 0xC0, 0x00, 0x0F, 0x87, 0xC3, 0xC3, 0xE1, 0xF0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xE1, 0xF0, 0xF0, - 0xF8, 0x7C, 0x00, 0x07, 0xC1, 0xF0, 0x78, 0x3E, 0x0F, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x83, 0xE0, 0xF0, 0x7C, - 0x1F, 0x00, 0xC0, 0x70, 0x18, 0x0E, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x20, - 0x00, 0x3C, 0x00, 0x3F, 0x80, 0x3F, 0xE0, 0x3F, 0xFC, 0x3F, 0xFC, 0x1F, - 0xFC, 0x07, 0xFC, 0x00, 0xFC, 0x00, 0x1F, 0xF0, 0x03, 0xFF, 0x80, 0x1F, - 0xFE, 0x00, 0xFF, 0xF0, 0x03, 0xFE, 0x00, 0x1F, 0xC0, 0x00, 0x78, 0x00, - 0x03, 0x00, 0x1F, 0xFF, 0xF3, 0xFF, 0xFE, 0x3F, 0xFF, 0xE3, 0xFF, 0xFE, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, - 0xC7, 0xFF, 0xFC, 0xFF, 0xFF, 0x8F, 0xFF, 0xF8, 0x18, 0x00, 0x03, 0xC0, - 0x00, 0x7F, 0x00, 0x0F, 0xF8, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0x3F, - 0xF8, 0x01, 0xFF, 0x00, 0x07, 0xE0, 0x07, 0xFC, 0x07, 0xFF, 0x07, 0xFF, - 0x87, 0xFF, 0x80, 0xFF, 0x80, 0x3F, 0x80, 0x07, 0x80, 0x00, 0x80, 0x00, - 0x00, 0x03, 0xF8, 0x03, 0xFF, 0xC1, 0xFF, 0xF8, 0xFF, 0xFE, 0x7E, 0x1F, - 0xDF, 0x03, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xC0, 0x03, 0xE0, - 0x01, 0xF8, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x80, 0x1F, - 0x80, 0x07, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x07, 0xC0, 0x01, 0xF0, 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0x00, 0x7F, 0x80, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x03, 0xFF, 0xFE, - 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x0F, 0xC0, 0x03, 0xE0, 0x0F, 0x80, 0x00, - 0xF8, 0x0F, 0x00, 0x00, 0x3C, 0x0F, 0x01, 0xF1, 0xCF, 0x0F, 0x03, 0xFD, - 0xC7, 0x8F, 0x03, 0xFF, 0xE1, 0xC7, 0x03, 0xE3, 0xE0, 0xE7, 0x03, 0xC0, - 0xF0, 0x73, 0x83, 0xC0, 0x78, 0x3B, 0x81, 0xE0, 0x38, 0x1D, 0xC1, 0xE0, - 0x1C, 0x1C, 0xC0, 0xF0, 0x1C, 0x0E, 0xE0, 0x70, 0x0E, 0x0F, 0x70, 0x78, - 0x0E, 0x07, 0x38, 0x3C, 0x0F, 0x07, 0x1C, 0x1E, 0x0F, 0x87, 0x8E, 0x0F, - 0x8F, 0xCF, 0x87, 0x07, 0xFF, 0xFF, 0x83, 0xC1, 0xFE, 0x7F, 0x00, 0xE0, - 0x3C, 0x1F, 0x00, 0x78, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x0F, - 0xC0, 0x01, 0x00, 0x03, 0xF8, 0x07, 0x80, 0x00, 0xFF, 0xFF, 0xC0, 0x00, - 0x1F, 0xFF, 0xE0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x00, - 0x0F, 0xE0, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xC0, 0x00, 0xFF, 0x80, 0x03, - 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x1F, 0x7C, 0x00, 0x7E, 0xF8, 0x00, 0xF9, - 0xF0, 0x03, 0xF3, 0xE0, 0x07, 0xC3, 0xE0, 0x1F, 0x87, 0xC0, 0x3E, 0x0F, - 0x80, 0xF8, 0x1F, 0x01, 0xF0, 0x3E, 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, - 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xF1, 0xF0, 0x03, 0xE7, 0xC0, 0x07, 0xCF, - 0x80, 0x0F, 0xBE, 0x00, 0x1F, 0x7C, 0x00, 0x3F, 0xF0, 0x00, 0x7C, 0x07, - 0xFF, 0xF0, 0x07, 0xFF, 0xFC, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x0F, - 0xC0, 0x3F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x1F, - 0x80, 0x1E, 0x1F, 0x80, 0x3E, 0x1F, 0x00, 0x7C, 0x1F, 0xFF, 0xF8, 0x1F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x3E, 0x00, 0xFC, 0x3E, - 0x00, 0x7C, 0x3E, 0x00, 0x7C, 0x7E, 0x00, 0x7C, 0x7C, 0x00, 0x7C, 0x7C, - 0x00, 0xF8, 0x7C, 0x01, 0xF8, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xC0, 0xFF, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xF8, 0x01, - 0xFF, 0xFC, 0x03, 0xFF, 0xFE, 0x07, 0xE0, 0x7F, 0x0F, 0xC0, 0x3F, 0x1F, - 0x80, 0x1F, 0x3F, 0x00, 0x1F, 0x3E, 0x00, 0x1F, 0x7E, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x7C, 0xF8, - 0x00, 0x7C, 0xFC, 0x00, 0xF8, 0xFC, 0x01, 0xF8, 0x7F, 0x07, 0xF0, 0x7F, - 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0x0F, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x07, - 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xFE, 0x0F, - 0x80, 0x7E, 0x0F, 0x80, 0x3F, 0x0F, 0x80, 0x1F, 0x1F, 0x80, 0x1F, 0x1F, - 0x80, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x3F, - 0x00, 0x1F, 0x3E, 0x00, 0x3E, 0x3E, 0x00, 0x3E, 0x3E, 0x00, 0x3E, 0x3E, - 0x00, 0x3E, 0x7E, 0x00, 0x7C, 0x7C, 0x00, 0x7C, 0x7C, 0x00, 0xF8, 0x7C, - 0x01, 0xF8, 0x7C, 0x07, 0xF0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xC0, 0xFF, - 0xFF, 0x00, 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x07, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFE, 0x0F, 0x80, 0x00, 0x0F, 0x80, 0x00, 0x0F, - 0x80, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF0, 0x3F, - 0xFF, 0xF0, 0x3E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFF, - 0xFF, 0xF0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0x07, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, 0xE0, 0xF8, - 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFF, 0xFF, 0x03, 0xFF, 0xFE, - 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, - 0x80, 0x00, 0x3F, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xF8, 0x01, 0xFF, 0xFC, 0x03, - 0xFF, 0xFE, 0x07, 0xE0, 0x7E, 0x0F, 0x80, 0x3F, 0x1F, 0x00, 0x1F, 0x3E, - 0x00, 0x1F, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0xF8, 0x03, 0xFF, 0xF8, 0x07, 0xFF, 0xF8, 0x07, 0xFE, 0xF8, - 0x07, 0xFE, 0xF8, 0x00, 0x3E, 0xF8, 0x00, 0x3E, 0xFC, 0x00, 0x7E, 0xFC, - 0x00, 0x7C, 0x7E, 0x00, 0xFC, 0x7F, 0x83, 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xBC, 0x0F, 0xFF, 0x38, 0x03, 0xFC, 0x38, 0x03, 0xE0, 0x07, 0xC0, - 0xF8, 0x01, 0xF0, 0x7E, 0x00, 0x7C, 0x1F, 0x00, 0x3F, 0x07, 0xC0, 0x0F, - 0x81, 0xF0, 0x03, 0xE0, 0xFC, 0x00, 0xF8, 0x3E, 0x00, 0x3E, 0x0F, 0x80, - 0x1F, 0x83, 0xE0, 0x07, 0xC0, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC1, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, - 0x3F, 0x00, 0x3E, 0x0F, 0x80, 0x0F, 0x83, 0xE0, 0x07, 0xE0, 0xF8, 0x01, - 0xF0, 0x3E, 0x00, 0x7C, 0x1F, 0x80, 0x1F, 0x07, 0xC0, 0x0F, 0xC1, 0xF0, - 0x03, 0xF0, 0x7C, 0x00, 0xF8, 0x3F, 0x00, 0x3E, 0x00, 0x07, 0xC3, 0xF0, - 0xFC, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x7E, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, - 0x3F, 0x0F, 0xC3, 0xE0, 0xF8, 0x3E, 0x0F, 0x87, 0xE1, 0xF0, 0x7C, 0x1F, - 0x07, 0xC3, 0xF0, 0xFC, 0x3E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, - 0x01, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, - 0x00, 0x3E, 0x00, 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x7C, 0x0F, - 0x8F, 0x81, 0xF8, 0xF8, 0x1F, 0x0F, 0x81, 0xF0, 0xF8, 0x1F, 0x0F, 0xC3, - 0xF0, 0xFF, 0xFE, 0x07, 0xFF, 0xC0, 0x3F, 0xF8, 0x01, 0xFC, 0x00, 0x07, - 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xE0, 0x7C, 0x03, 0xF0, 0x3F, 0x03, 0xF8, - 0x0F, 0x81, 0xF8, 0x03, 0xE0, 0xFC, 0x00, 0xF8, 0x7E, 0x00, 0x7E, 0x3F, - 0x00, 0x1F, 0x1F, 0x80, 0x07, 0xCF, 0xC0, 0x01, 0xF7, 0xE0, 0x00, 0x7F, - 0xF0, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, - 0xFE, 0xFC, 0x00, 0x3F, 0x1F, 0x80, 0x1F, 0x87, 0xE0, 0x07, 0xC0, 0xFC, - 0x01, 0xF0, 0x3F, 0x00, 0x7C, 0x07, 0xE0, 0x1F, 0x01, 0xFC, 0x0F, 0xC0, - 0x3F, 0x03, 0xE0, 0x0F, 0xE0, 0xF8, 0x01, 0xF8, 0x3E, 0x00, 0x3F, 0x00, - 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x0F, 0xC0, 0x03, - 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, 0x80, 0x07, 0xC0, 0x01, 0xF0, - 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x0F, 0xC0, 0x03, 0xE0, 0x00, 0xF8, 0x00, - 0x3E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, - 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xE0, 0x03, - 0xF8, 0x01, 0xFC, 0x07, 0xF0, 0x07, 0xF8, 0x1F, 0xE0, 0x0F, 0xF0, 0x3F, - 0xC0, 0x3F, 0xE0, 0x7F, 0x80, 0x7F, 0xC0, 0xFF, 0x01, 0xFF, 0x01, 0xFE, - 0x03, 0xFE, 0x07, 0xDC, 0x07, 0x7C, 0x0F, 0xB8, 0x1E, 0xF8, 0x1F, 0x70, - 0x3D, 0xF0, 0x3E, 0xF0, 0xF7, 0xC0, 0xF9, 0xE1, 0xEF, 0x81, 0xF3, 0xC7, - 0x9F, 0x03, 0xE7, 0x8F, 0x3E, 0x07, 0xCF, 0x3C, 0x7C, 0x0F, 0x9E, 0x79, - 0xF0, 0x3E, 0x3C, 0xE3, 0xE0, 0x7C, 0x7B, 0xC7, 0xC0, 0xF8, 0xF7, 0x8F, - 0x81, 0xF1, 0xFE, 0x1E, 0x07, 0xE3, 0xFC, 0x7C, 0x0F, 0x87, 0xF0, 0xF8, - 0x1F, 0x0F, 0xE1, 0xF0, 0x3E, 0x1F, 0x83, 0xE0, 0x7C, 0x3F, 0x0F, 0x81, - 0xF0, 0x7E, 0x1F, 0x00, 0x03, 0xE0, 0x07, 0xC0, 0x7E, 0x00, 0xF8, 0x1F, - 0xC0, 0x1F, 0x03, 0xF8, 0x03, 0xE0, 0x7F, 0x80, 0x7C, 0x0F, 0xF0, 0x1F, - 0x01, 0xFF, 0x03, 0xE0, 0x7F, 0xE0, 0x7C, 0x0F, 0xBC, 0x0F, 0x81, 0xF7, - 0xC1, 0xF0, 0x3E, 0xF8, 0x7C, 0x0F, 0x8F, 0x0F, 0x81, 0xF1, 0xF1, 0xF0, - 0x3E, 0x3E, 0x3E, 0x07, 0xC3, 0xC7, 0xC0, 0xF8, 0x7D, 0xF0, 0x3E, 0x0F, - 0xBE, 0x07, 0xC0, 0xF7, 0xC0, 0xF8, 0x1F, 0xF8, 0x1F, 0x01, 0xFE, 0x03, - 0xC0, 0x3F, 0xC0, 0xF8, 0x07, 0xF8, 0x1F, 0x00, 0x7F, 0x03, 0xE0, 0x0F, - 0xE0, 0x7C, 0x01, 0xF8, 0x1F, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xFF, 0xC0, 0x7E, 0x07, 0xF0, - 0x7E, 0x01, 0xF8, 0x7C, 0x00, 0x7E, 0x3E, 0x00, 0x1F, 0x3E, 0x00, 0x0F, - 0x9E, 0x00, 0x07, 0xDF, 0x00, 0x03, 0xEF, 0x80, 0x01, 0xFF, 0x80, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x7D, 0xF0, 0x00, 0x3E, 0xF8, 0x00, - 0x1F, 0x7C, 0x00, 0x1F, 0x3E, 0x00, 0x1F, 0x9F, 0x80, 0x0F, 0x87, 0xE0, - 0x0F, 0x83, 0xF8, 0x1F, 0x80, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0x80, 0x0F, - 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xF0, - 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, 0xF0, 0xF8, 0x07, 0xE1, 0xF0, 0x07, 0xC3, - 0xE0, 0x0F, 0x8F, 0xC0, 0x1F, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0xF8, 0x7C, - 0x01, 0xF0, 0xF8, 0x07, 0xC3, 0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x0F, 0xFF, - 0xF8, 0x1F, 0xFF, 0x80, 0x3E, 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF0, 0x00, - 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x3F, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xFF, 0xC0, 0x7F, 0x07, - 0xF0, 0x7E, 0x01, 0xF8, 0x7E, 0x00, 0x7E, 0x3E, 0x00, 0x1F, 0x3E, 0x00, - 0x0F, 0x9E, 0x00, 0x07, 0xDF, 0x00, 0x03, 0xEF, 0x80, 0x01, 0xF7, 0x80, - 0x00, 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x7D, 0xF0, 0x00, 0x3E, 0xF8, - 0x02, 0x1F, 0x7C, 0x03, 0x9F, 0x3E, 0x03, 0xFF, 0x9F, 0x81, 0xFF, 0x87, - 0xE0, 0x7F, 0x83, 0xF8, 0x3F, 0xC0, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xF0, - 0x0F, 0xFF, 0xFC, 0x01, 0xFE, 0x1C, 0x00, 0x00, 0x0C, 0x00, 0x07, 0xFF, - 0xF8, 0x07, 0xFF, 0xFE, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x0F, 0x80, - 0x3F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x1F, 0x80, - 0x1E, 0x1F, 0x00, 0x3E, 0x1F, 0x00, 0x7C, 0x1F, 0xFF, 0xF8, 0x1F, 0xFF, - 0xE0, 0x3F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3E, 0x01, 0xF8, 0x3E, 0x00, - 0xF8, 0x3E, 0x00, 0xF8, 0x7E, 0x00, 0xF8, 0x7C, 0x00, 0xF8, 0x7C, 0x01, - 0xF0, 0x7C, 0x01, 0xF0, 0x7C, 0x01, 0xF0, 0xFC, 0x01, 0xF0, 0xF8, 0x01, - 0xF0, 0xF8, 0x01, 0xF0, 0x00, 0x3F, 0xC0, 0x07, 0xFF, 0xC0, 0x3F, 0xFF, - 0x81, 0xFF, 0xFF, 0x0F, 0xC0, 0xFC, 0x3E, 0x01, 0xF1, 0xF0, 0x07, 0xC7, - 0xC0, 0x1F, 0x1F, 0x00, 0x00, 0x7E, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xFF, - 0x80, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x03, 0xFE, - 0x00, 0x01, 0xF8, 0x00, 0x03, 0xEF, 0x80, 0x0F, 0xBE, 0x00, 0x3C, 0xFC, - 0x01, 0xF3, 0xF8, 0x1F, 0x87, 0xFF, 0xFE, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, - 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xFF, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x3E, - 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, - 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, - 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, - 0x00, 0x0F, 0x80, 0x1F, 0x1F, 0x80, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, - 0x3F, 0x1F, 0x00, 0x3E, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0x3E, 0x3E, 0x00, - 0x7E, 0x3E, 0x00, 0x7C, 0x3E, 0x00, 0x7C, 0x3E, 0x00, 0x7C, 0x7C, 0x00, - 0x7C, 0x7C, 0x00, 0xFC, 0x7C, 0x00, 0xF8, 0x7C, 0x00, 0xF8, 0x7C, 0x00, - 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x01, 0xF8, 0xF8, 0x01, 0xF0, 0xF8, 0x01, - 0xF0, 0xF8, 0x03, 0xE0, 0xFE, 0x0F, 0xE0, 0x7F, 0xFF, 0xC0, 0x7F, 0xFF, - 0x80, 0x1F, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0xFC, 0x00, 0x7F, 0xF0, 0x03, - 0xE7, 0xC0, 0x0F, 0x9F, 0x00, 0x7C, 0x7C, 0x01, 0xF1, 0xF0, 0x0F, 0x87, - 0xC0, 0x3E, 0x1F, 0x01, 0xF0, 0x7C, 0x07, 0x81, 0xF0, 0x3E, 0x03, 0xC0, - 0xF0, 0x0F, 0x07, 0xC0, 0x3E, 0x1E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xC0, - 0x0F, 0x9F, 0x00, 0x3E, 0x78, 0x00, 0xFB, 0xE0, 0x01, 0xEF, 0x00, 0x07, - 0xFC, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xE0, - 0x00, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x07, 0xE0, 0x1F, 0xF8, - 0x07, 0xE0, 0x3F, 0xF8, 0x0F, 0xE0, 0x3E, 0xF8, 0x0F, 0xE0, 0x7E, 0xF8, - 0x1F, 0xE0, 0x7C, 0xF8, 0x1F, 0xE0, 0x7C, 0xF8, 0x3F, 0xE0, 0xF8, 0xF8, - 0x3D, 0xE0, 0xF8, 0x78, 0x3D, 0xE1, 0xF0, 0x78, 0x79, 0xE1, 0xF0, 0x78, - 0x79, 0xE1, 0xE0, 0x78, 0xF9, 0xE3, 0xE0, 0x78, 0xF1, 0xE3, 0xC0, 0x79, - 0xF1, 0xE7, 0xC0, 0x79, 0xE1, 0xE7, 0x80, 0x79, 0xE1, 0xE7, 0x80, 0x7B, - 0xC1, 0xEF, 0x80, 0x7B, 0xC1, 0xEF, 0x00, 0x7F, 0x81, 0xFF, 0x00, 0x7F, - 0x81, 0xFE, 0x00, 0x7F, 0x01, 0xFE, 0x00, 0x7F, 0x01, 0xFC, 0x00, 0x7F, - 0x01, 0xFC, 0x00, 0x7E, 0x01, 0xF8, 0x00, 0x3E, 0x01, 0xF8, 0x00, 0x3C, - 0x01, 0xF0, 0x00, 0x03, 0xF0, 0x07, 0xE0, 0x7E, 0x01, 0xF8, 0x07, 0xE0, - 0x7E, 0x00, 0xFC, 0x1F, 0x80, 0x1F, 0x83, 0xE0, 0x01, 0xF8, 0xF8, 0x00, - 0x3F, 0x3F, 0x00, 0x03, 0xEF, 0xC0, 0x00, 0x7F, 0xF0, 0x00, 0x0F, 0xFC, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, - 0x00, 0x3E, 0xF8, 0x00, 0x0F, 0xDF, 0x80, 0x03, 0xF3, 0xF0, 0x00, 0xFC, - 0x3F, 0x00, 0x3F, 0x07, 0xE0, 0x07, 0xE0, 0xFC, 0x01, 0xF8, 0x0F, 0xC0, - 0x7E, 0x01, 0xF8, 0x1F, 0x80, 0x3F, 0x80, 0x7C, 0x00, 0xFD, 0xF8, 0x07, - 0xE7, 0xE0, 0x1F, 0x1F, 0x80, 0xFC, 0x3E, 0x07, 0xE0, 0xFC, 0x1F, 0x03, - 0xF0, 0xFC, 0x07, 0xC7, 0xE0, 0x1F, 0x1F, 0x00, 0x7E, 0xFC, 0x00, 0xFB, - 0xE0, 0x03, 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, - 0x01, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x01, - 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0x81, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xE0, 0x00, - 0x07, 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF8, 0x00, - 0x03, 0xF8, 0x00, 0x01, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, - 0xF0, 0x7F, 0xFF, 0xF0, 0x00, 0x01, 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x1F, - 0xF0, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0xF0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x00, 0xE7, 0x39, 0xCE, 0x31, 0x8C, - 0x63, 0x1C, 0xE7, 0x39, 0xCE, 0x31, 0x8C, 0x63, 0x9C, 0xE7, 0x38, 0x01, - 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x1F, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x3E, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x3E, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x1F, 0xF0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, - 0x00, 0x00, 0x7C, 0x00, 0xFC, 0x01, 0xFC, 0x01, 0xFC, 0x03, 0xFC, 0x03, - 0x9E, 0x07, 0x9E, 0x0F, 0x1E, 0x0F, 0x1E, 0x1E, 0x1E, 0x1C, 0x0F, 0x3C, - 0x0F, 0x78, 0x0F, 0x78, 0x0F, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFE, 0xF3, 0x8C, 0x71, 0x80, 0x01, 0xFE, 0x01, 0xFF, 0xE0, - 0xFF, 0xF8, 0x7F, 0xFF, 0x1F, 0x0F, 0xC7, 0x81, 0xF0, 0x00, 0x7C, 0x00, - 0xFE, 0x07, 0xFF, 0x87, 0xFF, 0xE3, 0xFE, 0xF9, 0xF0, 0x7C, 0xF8, 0x1F, - 0x3E, 0x0F, 0xCF, 0x87, 0xF3, 0xFF, 0xF8, 0xFF, 0xFE, 0x1F, 0xEF, 0x81, - 0xE3, 0xF0, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, - 0x07, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF9, 0xF8, 0x0F, 0xFF, - 0xC1, 0xFF, 0xFE, 0x1F, 0xFF, 0xE1, 0xFC, 0x3F, 0x1F, 0x83, 0xF1, 0xF0, - 0x1F, 0x3E, 0x01, 0xF3, 0xE0, 0x1F, 0x3C, 0x01, 0xF3, 0xC0, 0x1F, 0x3C, - 0x03, 0xE7, 0xC0, 0x3E, 0x7E, 0x07, 0xC7, 0xF1, 0xFC, 0x7F, 0xFF, 0x87, - 0xFF, 0xF0, 0xFB, 0xFE, 0x0F, 0x9F, 0x80, 0x00, 0xFC, 0x01, 0xFF, 0xC0, - 0xFF, 0xF8, 0x7F, 0xFF, 0x3F, 0x0F, 0xCF, 0x81, 0xF7, 0xC0, 0x7D, 0xF0, - 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x0F, - 0xBE, 0x07, 0xCF, 0xC3, 0xF1, 0xFF, 0xF8, 0x7F, 0xFC, 0x0F, 0xFE, 0x00, - 0xFE, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, - 0x3E, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x7E, 0x7C, - 0x07, 0xFD, 0xF0, 0x3F, 0xFF, 0xC1, 0xFF, 0xFE, 0x0F, 0xE3, 0xF8, 0x3E, - 0x07, 0xE1, 0xF0, 0x1F, 0x87, 0xC0, 0x3C, 0x3E, 0x00, 0xF0, 0xF8, 0x07, - 0xC3, 0xE0, 0x1F, 0x0F, 0x80, 0x7C, 0x3E, 0x03, 0xE0, 0xF8, 0x1F, 0x83, - 0xF0, 0xFE, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x7E, - 0x7C, 0x00, 0x00, 0xFE, 0x00, 0x7F, 0xE0, 0x3F, 0xFE, 0x0F, 0xFF, 0xE3, - 0xF0, 0x7E, 0x7C, 0x07, 0xDF, 0x00, 0xFB, 0xE0, 0x1F, 0x7F, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x1F, 0x3F, - 0x07, 0xE3, 0xFF, 0xF8, 0x7F, 0xFE, 0x03, 0xFF, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0xF8, 0x1F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7C, 0x07, 0xC0, 0x3E, 0x0F, - 0xFE, 0x7F, 0xF3, 0xFF, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, - 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x78, 0x07, 0xC0, 0x3E, 0x01, - 0xF0, 0x0F, 0x80, 0xF8, 0x07, 0xC0, 0x00, 0x00, 0x7C, 0x7C, 0x07, 0xFD, - 0xF0, 0x3F, 0xF7, 0x81, 0xFF, 0xFE, 0x0F, 0xE3, 0xF8, 0x3E, 0x07, 0xE1, - 0xF8, 0x0F, 0x87, 0xC0, 0x3C, 0x1E, 0x00, 0xF0, 0xF8, 0x03, 0xC3, 0xE0, - 0x1F, 0x0F, 0x80, 0x78, 0x3E, 0x03, 0xE0, 0xF8, 0x1F, 0x83, 0xF0, 0xFE, - 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xC0, 0x3F, 0xEF, 0x00, 0x3E, 0x7C, 0x00, - 0x01, 0xF0, 0x00, 0x07, 0xC3, 0xE0, 0x3E, 0x0F, 0x80, 0xF8, 0x3F, 0x0F, - 0xC0, 0x7F, 0xFE, 0x00, 0xFF, 0xF0, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x0F, 0x80, 0x00, 0xF8, 0xF8, 0x0F, 0xBF, 0xE0, 0xFF, 0xFF, 0x0F, - 0xFF, 0xF1, 0xFC, 0x3F, 0x1F, 0x81, 0xF1, 0xF0, 0x1F, 0x1F, 0x01, 0xF1, - 0xE0, 0x1F, 0x3E, 0x03, 0xE3, 0xE0, 0x3E, 0x3E, 0x03, 0xE3, 0xE0, 0x3E, - 0x7C, 0x03, 0xE7, 0xC0, 0x7C, 0x7C, 0x07, 0xC7, 0xC0, 0x7C, 0x7C, 0x07, - 0xCF, 0x80, 0x78, 0x07, 0xC1, 0xF0, 0x7C, 0x3E, 0x00, 0x00, 0x00, 0x00, - 0x3E, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, - 0x0F, 0x87, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, 0x3E, 0x00, - 0x00, 0x3E, 0x00, 0x78, 0x01, 0xF0, 0x03, 0xE0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, - 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, - 0x1F, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x1F, - 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x03, 0xF0, 0x1F, 0xC0, 0x3F, 0x80, - 0x7E, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, - 0x0F, 0x80, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, - 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x07, 0xC7, 0xE0, 0x3E, 0x7E, 0x01, - 0xF7, 0xE0, 0x0F, 0xFE, 0x00, 0xFF, 0xE0, 0x07, 0xFF, 0x00, 0x3F, 0xFC, - 0x01, 0xFF, 0xE0, 0x0F, 0xDF, 0x00, 0xFC, 0xFC, 0x07, 0xC3, 0xE0, 0x3E, - 0x1F, 0x01, 0xF0, 0xFC, 0x0F, 0x83, 0xE0, 0xF8, 0x1F, 0x87, 0xC0, 0xFC, - 0x00, 0x07, 0xC1, 0xF0, 0x7C, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x1F, - 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x87, - 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, 0x3E, 0x00, 0x0F, 0x8F, - 0x83, 0xF0, 0x3E, 0xFF, 0x3F, 0xE0, 0xF7, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, - 0xFF, 0x1F, 0xC7, 0xF8, 0x7C, 0x7C, 0x0F, 0x81, 0xF1, 0xF0, 0x3E, 0x07, - 0xCF, 0x81, 0xF0, 0x3E, 0x3E, 0x07, 0xC0, 0xF8, 0xF8, 0x1F, 0x03, 0xE3, - 0xE0, 0x7C, 0x0F, 0x8F, 0x81, 0xF0, 0x3E, 0x7C, 0x0F, 0x81, 0xF1, 0xF0, - 0x3E, 0x07, 0xC7, 0xC0, 0xF8, 0x1F, 0x1F, 0x03, 0xE0, 0x7C, 0x7C, 0x0F, - 0x81, 0xE3, 0xE0, 0x7C, 0x0F, 0x8F, 0x81, 0xF0, 0x3E, 0x00, 0x0F, 0x8F, - 0x80, 0xFB, 0xFE, 0x0F, 0xFF, 0xF1, 0xFF, 0xFF, 0x1F, 0xC3, 0xF1, 0xF8, - 0x1F, 0x1F, 0x01, 0xF1, 0xF0, 0x1F, 0x3E, 0x01, 0xF3, 0xE0, 0x3E, 0x3E, - 0x03, 0xE3, 0xE0, 0x3E, 0x3C, 0x03, 0xE7, 0xC0, 0x3E, 0x7C, 0x07, 0xC7, - 0xC0, 0x7C, 0x7C, 0x07, 0xC7, 0x80, 0x7C, 0xF8, 0x07, 0x80, 0x00, 0xFE, - 0x00, 0x7F, 0xF0, 0x3F, 0xFF, 0x0F, 0xFF, 0xE3, 0xF8, 0xFE, 0x7C, 0x0F, - 0xDF, 0x00, 0xFB, 0xE0, 0x1F, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xE0, 0x1F, - 0xFC, 0x03, 0xEF, 0x80, 0x7D, 0xF8, 0x1F, 0x3F, 0x07, 0xE3, 0xFF, 0xF8, - 0x7F, 0xFE, 0x07, 0xFF, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xE7, 0xE0, 0x0F, - 0xBF, 0xC0, 0x7D, 0xFF, 0x81, 0xFF, 0xFE, 0x07, 0xF0, 0xFC, 0x1F, 0x81, - 0xF0, 0x7C, 0x07, 0xC3, 0xE0, 0x1F, 0x0F, 0x80, 0x7C, 0x3E, 0x01, 0xF0, - 0xF0, 0x07, 0xC3, 0xC0, 0x3E, 0x1F, 0x00, 0xF8, 0x7E, 0x07, 0xC1, 0xFC, - 0x7F, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xC0, 0xFB, 0xFE, 0x03, 0xE7, 0xE0, - 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x1F, - 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x01, - 0xF1, 0xF0, 0x7F, 0xDF, 0x0F, 0xFD, 0xF1, 0xFF, 0xFE, 0x3F, 0x8F, 0xE3, - 0xE0, 0x7E, 0x7C, 0x03, 0xE7, 0xC0, 0x3E, 0xF8, 0x03, 0xCF, 0x80, 0x3C, - 0xF8, 0x07, 0xCF, 0x80, 0x7C, 0xF8, 0x0F, 0x8F, 0x81, 0xF8, 0xFC, 0x3F, - 0x87, 0xFF, 0xF8, 0x7F, 0xFF, 0x83, 0xFF, 0xF0, 0x1F, 0x9F, 0x00, 0x01, - 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x0F, 0x8E, 0x1F, 0x7C, 0x3F, - 0xF0, 0xFF, 0xE1, 0xFC, 0x03, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x3E, 0x00, - 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, - 0x00, 0x7C, 0x00, 0xF0, 0x03, 0xE0, 0x00, 0x01, 0xFC, 0x01, 0xFF, 0xC0, - 0xFF, 0xF8, 0x7F, 0xFF, 0x3F, 0x0F, 0xCF, 0x81, 0xF3, 0xF0, 0x00, 0xFF, - 0x80, 0x3F, 0xFC, 0x07, 0xFF, 0xC0, 0x7F, 0xF8, 0x03, 0xFE, 0x00, 0x1F, - 0xBE, 0x03, 0xEF, 0xC1, 0xFB, 0xFF, 0xFC, 0x7F, 0xFE, 0x0F, 0xFF, 0x00, - 0xFE, 0x00, 0x0F, 0x81, 0xF0, 0x7C, 0x0F, 0x81, 0xF0, 0xFF, 0xBF, 0xF7, - 0xFE, 0x3E, 0x07, 0xC0, 0xF8, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, - 0xF8, 0x1F, 0x03, 0xE0, 0x7F, 0x0F, 0xE1, 0xFC, 0x1F, 0x80, 0x1F, 0x01, - 0xF1, 0xF0, 0x1F, 0x3E, 0x03, 0xE3, 0xE0, 0x3E, 0x3E, 0x03, 0xE3, 0xE0, - 0x3E, 0x3E, 0x03, 0xE7, 0xC0, 0x7C, 0x7C, 0x07, 0xC7, 0xC0, 0x7C, 0x7C, - 0x07, 0xC7, 0xC0, 0x7C, 0xF8, 0x0F, 0x8F, 0x81, 0xF8, 0xF8, 0x3F, 0x8F, - 0xFF, 0xF8, 0xFF, 0xFF, 0x07, 0xFD, 0xF0, 0x3F, 0x1F, 0x00, 0xF8, 0x0F, - 0xFE, 0x03, 0xEF, 0x81, 0xF3, 0xE0, 0x7C, 0xF8, 0x3E, 0x3E, 0x0F, 0x8F, - 0x87, 0xC1, 0xE1, 0xF0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x9F, 0x01, 0xF7, - 0x80, 0x7F, 0xE0, 0x1F, 0xF0, 0x03, 0xFC, 0x00, 0xFE, 0x00, 0x3F, 0x80, - 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0xF8, 0x1F, 0x07, 0xFF, 0x03, 0xE0, 0xFB, - 0xE0, 0xFC, 0x1F, 0x7C, 0x1F, 0x87, 0xCF, 0x87, 0xF0, 0xF9, 0xF0, 0xFE, - 0x3E, 0x3E, 0x3D, 0xC7, 0xC3, 0xC7, 0xB9, 0xF0, 0x79, 0xE7, 0x3E, 0x0F, - 0x3C, 0xE7, 0x81, 0xEF, 0x1D, 0xF0, 0x3D, 0xE3, 0xBC, 0x07, 0xBC, 0x7F, - 0x80, 0xFF, 0x0F, 0xE0, 0x1F, 0xE1, 0xFC, 0x03, 0xF8, 0x3F, 0x00, 0x7F, - 0x07, 0xE0, 0x0F, 0xC0, 0xF8, 0x01, 0xF8, 0x1F, 0x00, 0x00, 0x0F, 0xC1, - 0xF8, 0x3F, 0x07, 0xC0, 0x7C, 0x3E, 0x01, 0xF9, 0xF8, 0x03, 0xEF, 0xC0, - 0x0F, 0xBE, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0x80, 0x01, 0xFC, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x3E, 0xF8, - 0x01, 0xFB, 0xF0, 0x07, 0xC7, 0xC0, 0x3E, 0x1F, 0x81, 0xF8, 0x7E, 0x0F, - 0xC0, 0xF8, 0x00, 0x1F, 0x80, 0x7C, 0x3E, 0x03, 0xE0, 0xF8, 0x0F, 0x03, - 0xE0, 0x7C, 0x0F, 0x81, 0xE0, 0x3E, 0x0F, 0x80, 0xF8, 0x3C, 0x03, 0xE1, - 0xF0, 0x07, 0x87, 0x80, 0x1F, 0x3E, 0x00, 0x7C, 0xF0, 0x01, 0xF7, 0xC0, - 0x07, 0xDE, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xC0, 0x01, 0xFE, 0x00, 0x03, - 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x01, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x0F, 0xFF, 0xE1, 0xFF, 0xFC, 0x3F, - 0xFF, 0x87, 0xFF, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, - 0xF0, 0x01, 0xFC, 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, 0xF8, - 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xFF, 0xF8, 0xFF, 0xFF, 0x1F, 0xFF, - 0xE3, 0xFF, 0xFC, 0x00, 0x00, 0x7C, 0x03, 0xF0, 0x1F, 0xC0, 0xFE, 0x03, - 0xE0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, - 0xE0, 0x0F, 0x80, 0x3C, 0x01, 0xF0, 0x1F, 0x80, 0x70, 0x01, 0xF8, 0x01, - 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, - 0xF0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xFC, 0x07, 0xE0, 0x0F, 0x80, - 0x1E, 0x00, 0x03, 0x81, 0xC0, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0C, 0x0E, - 0x07, 0x03, 0x81, 0xC0, 0xC0, 0xE0, 0x70, 0x38, 0x18, 0x1C, 0x0E, 0x07, - 0x03, 0x81, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x18, 0x1C, 0x0E, 0x07, 0x01, - 0x80, 0x80, 0x00, 0x00, 0x01, 0xE0, 0x07, 0xC0, 0x1F, 0x80, 0xFE, 0x00, - 0x78, 0x01, 0xE0, 0x07, 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, - 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x7E, 0x00, 0x38, 0x07, 0xE0, - 0x3E, 0x00, 0xF0, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, - 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1F, 0x01, 0xF8, 0x0F, 0xE0, 0x3F, 0x00, - 0xF8, 0x00, 0x0F, 0x00, 0x1F, 0xC1, 0xDF, 0xF0, 0xEE, 0x3F, 0xE6, 0x07, - 0xF0, 0x01, 0xE0}; - -const GFXglyph FreeSansBoldOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 10, 0, 1}, // 0x20 ' ' - {0, 10, 25, 12, 4, -24}, // 0x21 '!' - {32, 13, 9, 17, 6, -25}, // 0x22 '"' - {47, 22, 24, 19, 1, -23}, // 0x23 '#' - {113, 19, 31, 19, 2, -26}, // 0x24 '$' - {187, 26, 26, 31, 5, -25}, // 0x25 '%' - {272, 21, 25, 25, 3, -24}, // 0x26 '&' - {338, 5, 9, 8, 6, -25}, // 0x27 ''' - {344, 13, 33, 12, 3, -25}, // 0x28 '(' - {398, 13, 33, 12, -1, -25}, // 0x29 ')' - {452, 12, 11, 14, 5, -25}, // 0x2A '*' - {469, 18, 16, 20, 3, -15}, // 0x2B '+' - {505, 7, 11, 10, 1, -4}, // 0x2C ',' - {515, 10, 4, 12, 2, -10}, // 0x2D '-' - {520, 6, 5, 10, 2, -4}, // 0x2E '.' - {524, 15, 25, 10, 0, -24}, // 0x2F '/' - {571, 18, 25, 19, 3, -24}, // 0x30 '0' - {628, 13, 25, 19, 6, -24}, // 0x31 '1' - {669, 21, 25, 19, 1, -24}, // 0x32 '2' - {735, 20, 25, 19, 2, -24}, // 0x33 '3' - {798, 19, 25, 19, 2, -24}, // 0x34 '4' - {858, 20, 24, 19, 2, -23}, // 0x35 '5' - {918, 19, 25, 19, 3, -24}, // 0x36 '6' - {978, 19, 24, 19, 5, -23}, // 0x37 '7' - {1035, 20, 25, 19, 2, -24}, // 0x38 '8' - {1098, 19, 25, 19, 2, -24}, // 0x39 '9' - {1158, 9, 18, 12, 4, -17}, // 0x3A ':' - {1179, 10, 24, 12, 3, -17}, // 0x3B ';' - {1209, 19, 17, 20, 3, -16}, // 0x3C '<' - {1250, 20, 12, 20, 2, -13}, // 0x3D '=' - {1280, 19, 17, 20, 1, -15}, // 0x3E '>' - {1321, 18, 26, 21, 6, -25}, // 0x3F '?' - {1380, 33, 31, 34, 3, -25}, // 0x40 '@' - {1508, 23, 26, 25, 1, -25}, // 0x41 'A' - {1583, 24, 26, 25, 3, -25}, // 0x42 'B' - {1661, 24, 26, 25, 4, -25}, // 0x43 'C' - {1739, 24, 26, 25, 3, -25}, // 0x44 'D' - {1817, 24, 26, 23, 3, -25}, // 0x45 'E' - {1895, 23, 26, 21, 3, -25}, // 0x46 'F' - {1970, 24, 26, 27, 4, -25}, // 0x47 'G' - {2048, 26, 26, 25, 2, -25}, // 0x48 'H' - {2133, 10, 26, 10, 2, -25}, // 0x49 'I' - {2166, 20, 26, 19, 2, -25}, // 0x4A 'J' - {2231, 26, 26, 25, 3, -25}, // 0x4B 'K' - {2316, 18, 26, 21, 3, -25}, // 0x4C 'L' - {2375, 31, 26, 29, 2, -25}, // 0x4D 'M' - {2476, 27, 26, 25, 2, -25}, // 0x4E 'N' - {2564, 25, 26, 27, 4, -25}, // 0x4F 'O' - {2646, 23, 26, 23, 3, -25}, // 0x50 'P' - {2721, 25, 27, 27, 4, -25}, // 0x51 'Q' - {2806, 24, 26, 25, 3, -25}, // 0x52 'R' - {2884, 22, 26, 23, 3, -25}, // 0x53 'S' - {2956, 21, 26, 21, 5, -25}, // 0x54 'T' - {3025, 24, 26, 25, 4, -25}, // 0x55 'U' - {3103, 22, 26, 23, 6, -25}, // 0x56 'V' - {3175, 32, 26, 33, 6, -25}, // 0x57 'W' - {3279, 27, 26, 23, 1, -25}, // 0x58 'X' - {3367, 22, 26, 23, 6, -25}, // 0x59 'Y' - {3439, 25, 26, 21, 1, -25}, // 0x5A 'Z' - {3521, 15, 33, 12, 1, -25}, // 0x5B '[' - {3583, 5, 25, 10, 5, -24}, // 0x5C '\' - {3599, 15, 33, 12, -1, -25}, // 0x5D ']' - {3661, 16, 15, 20, 4, -23}, // 0x5E '^' - {3691, 21, 3, 19, -2, 5}, // 0x5F '_' - {3699, 5, 5, 12, 6, -25}, // 0x60 '`' - {3703, 18, 19, 19, 2, -18}, // 0x61 'a' - {3746, 20, 26, 21, 2, -25}, // 0x62 'b' - {3811, 18, 19, 19, 3, -18}, // 0x63 'c' - {3854, 22, 26, 21, 3, -25}, // 0x64 'd' - {3926, 19, 19, 19, 2, -18}, // 0x65 'e' - {3972, 13, 26, 12, 3, -25}, // 0x66 'f' - {4015, 22, 27, 21, 1, -18}, // 0x67 'g' - {4090, 20, 26, 21, 2, -25}, // 0x68 'h' - {4155, 10, 26, 10, 2, -25}, // 0x69 'i' - {4188, 15, 34, 10, -2, -25}, // 0x6A 'j' - {4252, 21, 26, 19, 2, -25}, // 0x6B 'k' - {4321, 10, 26, 10, 2, -25}, // 0x6C 'l' - {4354, 30, 19, 31, 2, -18}, // 0x6D 'm' - {4426, 20, 19, 21, 2, -18}, // 0x6E 'n' - {4474, 19, 19, 21, 3, -18}, // 0x6F 'o' - {4520, 22, 27, 21, 0, -18}, // 0x70 'p' - {4595, 20, 27, 21, 3, -18}, // 0x71 'q' - {4663, 15, 19, 14, 2, -18}, // 0x72 'r' - {4699, 18, 19, 19, 2, -18}, // 0x73 's' - {4742, 11, 23, 12, 4, -22}, // 0x74 't' - {4774, 20, 19, 21, 3, -18}, // 0x75 'u' - {4822, 18, 19, 19, 5, -18}, // 0x76 'v' - {4865, 27, 19, 27, 4, -18}, // 0x77 'w' - {4930, 22, 19, 19, 1, -18}, // 0x78 'x' - {4983, 22, 27, 19, 1, -18}, // 0x79 'y' - {5058, 19, 19, 17, 1, -18}, // 0x7A 'z' - {5104, 14, 33, 14, 2, -25}, // 0x7B '{' - {5162, 9, 33, 10, 2, -25}, // 0x7C '|' - {5200, 14, 33, 14, 2, -25}, // 0x7D '}' - {5258, 17, 6, 20, 3, -10}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique18pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique18pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 5943 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h deleted file mode 100644 index a20229d..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h +++ /dev/null @@ -1,895 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xE0, 0x07, 0xF0, 0x1F, 0xC0, 0xFF, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, - 0x80, 0xFE, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x1F, - 0x80, 0x7E, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0xF8, 0x03, 0xE0, 0x0F, - 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x1F, - 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0xFE, 0x03, 0xF8, 0x00, - 0x7E, 0x0F, 0xDF, 0x83, 0xF7, 0xE0, 0xFF, 0xF0, 0x7E, 0xFC, 0x1F, 0xBF, - 0x07, 0xEF, 0xC1, 0xFB, 0xE0, 0x7C, 0xF8, 0x1F, 0x3C, 0x07, 0x8F, 0x01, - 0xE3, 0x80, 0x70, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x3E, 0x0F, 0x80, 0x03, - 0xE0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x01, 0xF0, 0x7C, 0x00, 0x0F, 0x83, - 0xE0, 0x00, 0xF8, 0x3E, 0x00, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF8, - 0x7F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0x0F, - 0x83, 0xE0, 0x00, 0x7C, 0x3E, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x3E, 0x0F, - 0x80, 0x03, 0xE0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0xF8, 0x7C, 0x00, - 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0x1F, 0x07, 0xC0, 0x00, 0xF8, 0x3E, - 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x7C, 0x1F, 0x00, 0x07, 0xC1, 0xF0, 0x00, - 0x3E, 0x0F, 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0xF8, - 0x3C, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x38, 0x00, 0x00, 0x0E, - 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x7F, 0xFF, 0x00, 0x3F, 0xFF, 0xE0, 0x1F, - 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0x07, 0xF3, 0x9F, 0xC1, 0xF8, 0xE3, 0xF0, - 0x7C, 0x38, 0xFC, 0x3F, 0x0E, 0x3F, 0x0F, 0xC7, 0x8F, 0xC3, 0xF1, 0xC0, - 0x00, 0xFE, 0x70, 0x00, 0x3F, 0xDC, 0x00, 0x0F, 0xFF, 0x00, 0x01, 0xFF, - 0xE0, 0x00, 0x3F, 0xFE, 0x00, 0x0F, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, - 0x0F, 0xFF, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x77, 0xF8, 0x00, 0x1C, 0xFE, - 0x00, 0x07, 0x3F, 0x8F, 0xE3, 0xCF, 0xE3, 0xF8, 0xE3, 0xF8, 0xFE, 0x38, - 0xFC, 0x3F, 0x8E, 0x7F, 0x0F, 0xF3, 0x9F, 0xC3, 0xFD, 0xFF, 0xE0, 0x7F, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFC, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x38, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x03, 0x80, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x01, 0xF8, 0x00, 0x07, - 0x80, 0x7F, 0xE0, 0x00, 0xF0, 0x0F, 0xFF, 0x00, 0x1E, 0x01, 0xFF, 0xF0, - 0x01, 0xC0, 0x3F, 0xFF, 0x80, 0x3C, 0x07, 0xE1, 0xF8, 0x07, 0x80, 0x78, - 0x07, 0x80, 0xF0, 0x0F, 0x80, 0x78, 0x0E, 0x00, 0xF0, 0x07, 0x81, 0xC0, - 0x0F, 0x00, 0xF8, 0x3C, 0x00, 0xF0, 0x0F, 0x07, 0x80, 0x0F, 0xC3, 0xF0, - 0xF0, 0x00, 0xFF, 0xFE, 0x0E, 0x00, 0x07, 0xFF, 0xC1, 0xE0, 0x00, 0x7F, - 0xF8, 0x3C, 0x00, 0x03, 0xFF, 0x07, 0x80, 0x00, 0x0F, 0xC0, 0x70, 0x00, - 0x00, 0x00, 0x0E, 0x03, 0xF0, 0x00, 0x01, 0xE0, 0xFF, 0xC0, 0x00, 0x3C, - 0x1F, 0xFE, 0x00, 0x03, 0x83, 0xFF, 0xE0, 0x00, 0x70, 0x7F, 0xFF, 0x00, - 0x0F, 0x0F, 0xC3, 0xF0, 0x01, 0xE0, 0xF0, 0x0F, 0x00, 0x3C, 0x1F, 0x00, - 0xF0, 0x03, 0x81, 0xE0, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xF0, 0x0F, 0x01, - 0xE0, 0x1E, 0x01, 0xE0, 0x1F, 0x87, 0xE0, 0x1C, 0x01, 0xFF, 0xFC, 0x03, - 0x80, 0x0F, 0xFF, 0x80, 0x78, 0x00, 0xFF, 0xF0, 0x0F, 0x00, 0x07, 0xFE, - 0x01, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3F, 0xF0, - 0x00, 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0xFF, 0x00, 0x03, 0xFF, 0xF8, 0x00, - 0x3F, 0x9F, 0xC0, 0x03, 0xF8, 0x7E, 0x00, 0x1F, 0xC3, 0xF0, 0x00, 0xFE, - 0x1F, 0x00, 0x07, 0xF1, 0xF8, 0x00, 0x3F, 0xCF, 0xC0, 0x01, 0xFE, 0xFC, - 0x00, 0x07, 0xFF, 0xC0, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0xFF, 0xC0, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xFF, 0x07, 0xC1, 0xFF, - 0xF8, 0x3E, 0x3F, 0xFF, 0xE3, 0xE3, 0xFE, 0x3F, 0x1F, 0x1F, 0xC1, 0xFD, - 0xF1, 0xFC, 0x07, 0xFF, 0x8F, 0xC0, 0x3F, 0xF8, 0xFE, 0x00, 0xFF, 0xC7, - 0xF0, 0x07, 0xFC, 0x3F, 0x80, 0x1F, 0xC1, 0xFC, 0x00, 0xFE, 0x0F, 0xF0, - 0x1F, 0xF8, 0x7F, 0xC1, 0xFF, 0xC1, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, - 0xFC, 0x3F, 0xFF, 0xCF, 0xE0, 0x7F, 0xF8, 0x7F, 0x80, 0xFF, 0x00, 0x00, - 0x7E, 0xFD, 0xFF, 0xEF, 0xDF, 0xBF, 0x7C, 0xF9, 0xE3, 0xC7, 0x00, 0x00, - 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0xC0, 0x07, 0xC0, 0x07, 0xC0, - 0x07, 0xE0, 0x03, 0xE0, 0x03, 0xE0, 0x03, 0xF0, 0x01, 0xF0, 0x01, 0xF8, - 0x00, 0xF8, 0x00, 0xFC, 0x00, 0x7C, 0x00, 0x7E, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x03, 0xF0, 0x01, - 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, - 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x3E, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, - 0x1E, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x7C, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, - 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, - 0x00, 0x1F, 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xE0, 0x03, - 0xE0, 0x03, 0xF0, 0x01, 0xF0, 0x01, 0xF8, 0x00, 0xF8, 0x00, 0xFC, 0x00, - 0x7C, 0x00, 0x7C, 0x00, 0x7E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3F, 0x00, - 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xE0, 0x03, 0x80, 0x07, - 0x00, 0x0E, 0x07, 0x3C, 0x6F, 0xFF, 0xFF, 0xFF, 0xBF, 0xFE, 0x0F, 0xE0, - 0x1F, 0xC0, 0x7F, 0x81, 0xEF, 0x87, 0x8F, 0x0E, 0x1E, 0x08, 0x10, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, - 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF8, 0x00, - 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xC7, 0xF1, 0xF8, 0xFE, 0x3F, - 0x8F, 0xE0, 0x38, 0x1C, 0x07, 0x03, 0xC0, 0xE0, 0xF0, 0xFC, 0x3C, 0x0C, - 0x00, 0x7F, 0xFD, 0xFF, 0xF7, 0xFF, 0x9F, 0xFE, 0xFF, 0xFB, 0xFF, 0xE0, - 0x7F, 0x7F, 0x7F, 0x7E, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x70, 0x00, 0x0E, - 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x03, - 0x80, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x01, - 0xC0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, - 0x70, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, - 0x38, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, - 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, - 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x1F, 0xFC, 0x00, 0x3F, 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x3F, 0xFF, 0xF0, - 0x1F, 0xC7, 0xF8, 0x1F, 0xC1, 0xFE, 0x1F, 0xC0, 0x7F, 0x0F, 0xC0, 0x3F, - 0x8F, 0xE0, 0x1F, 0xC7, 0xF0, 0x0F, 0xE3, 0xF0, 0x07, 0xF3, 0xF8, 0x03, - 0xF9, 0xFC, 0x01, 0xFC, 0xFC, 0x01, 0xFE, 0xFE, 0x00, 0xFE, 0x7F, 0x00, - 0x7F, 0x3F, 0x80, 0x3F, 0x9F, 0xC0, 0x1F, 0xCF, 0xE0, 0x1F, 0xEF, 0xE0, - 0x0F, 0xE7, 0xF0, 0x07, 0xF3, 0xF8, 0x03, 0xF9, 0xFC, 0x03, 0xF8, 0xFE, - 0x01, 0xFC, 0x7F, 0x00, 0xFE, 0x3F, 0x80, 0xFE, 0x1F, 0xE0, 0x7F, 0x0F, - 0xF8, 0xFF, 0x03, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x80, - 0x1F, 0xFF, 0x00, 0x07, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x0F, - 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xE0, 0x0F, 0xF0, 0x3F, 0xF9, 0xFF, - 0xF8, 0xFF, 0xFC, 0xFF, 0xFE, 0x7F, 0xFF, 0x00, 0x3F, 0x80, 0x1F, 0x80, - 0x0F, 0xC0, 0x0F, 0xE0, 0x07, 0xF0, 0x03, 0xF8, 0x01, 0xF8, 0x01, 0xFC, - 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x00, 0x1F, 0x80, 0x1F, 0xC0, 0x0F, - 0xE0, 0x07, 0xF0, 0x03, 0xF0, 0x01, 0xF8, 0x01, 0xFC, 0x00, 0xFE, 0x00, - 0x7F, 0x00, 0x3F, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x00, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x7F, 0xFC, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0xE0, - 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0x07, 0xFC, 0x07, 0xF0, 0x1F, 0xE0, 0x7F, - 0x00, 0x7F, 0x03, 0xF0, 0x03, 0xF8, 0x1F, 0x80, 0x1F, 0xC1, 0xF8, 0x00, - 0xFE, 0x0F, 0xC0, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x1F, 0xF8, 0x00, 0x01, 0xFF, - 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xC0, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x03, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xF0, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x0F, 0xFF, 0x80, 0x0F, 0xFF, 0xF0, 0x07, - 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xC0, 0xFE, 0x1F, 0xF0, 0x7F, 0x01, 0xFC, - 0x1F, 0x80, 0x7F, 0x07, 0xE0, 0x1F, 0xC3, 0xF0, 0x07, 0xF0, 0xFC, 0x01, - 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x80, 0x01, - 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xFF, 0x80, - 0x01, 0xFF, 0xE0, 0x00, 0x07, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7F, 0x3F, 0x80, - 0x3F, 0xCF, 0xE0, 0x0F, 0xE3, 0xF8, 0x07, 0xF8, 0xFF, 0x83, 0xFC, 0x3F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xE0, - 0x03, 0xFF, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x7F, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, - 0x3F, 0xF8, 0x00, 0x3D, 0xFC, 0x00, 0x3C, 0xFE, 0x00, 0x3E, 0x7E, 0x00, - 0x3E, 0x7F, 0x00, 0x1E, 0x3F, 0x80, 0x1E, 0x1F, 0xC0, 0x1E, 0x0F, 0xC0, - 0x1F, 0x07, 0xE0, 0x1F, 0x07, 0xF0, 0x1F, 0x03, 0xF8, 0x1F, 0x01, 0xFC, - 0x0F, 0x80, 0xFC, 0x0F, 0x80, 0xFE, 0x0F, 0x80, 0x7F, 0x07, 0xFF, 0xFF, - 0xF7, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, - 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x7F, 0xFF, 0xE0, 0x0F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, - 0xF0, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0x7C, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x03, 0xE3, 0xF0, 0x00, 0x7F, 0xFF, 0x80, 0x1F, 0xFF, 0xF8, 0x03, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xF0, 0x1F, 0xE1, 0xFF, 0x03, 0xF0, 0x1F, 0xE0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0xFE, 0x00, 0xFE, 0x1F, - 0xC0, 0x3F, 0x83, 0xF8, 0x07, 0xF0, 0x7F, 0x83, 0xFC, 0x0F, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFE, 0x00, 0x0F, - 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xFE, - 0x00, 0x1F, 0xFF, 0x80, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x1F, 0xC3, - 0xFC, 0x1F, 0x80, 0xFE, 0x0F, 0xC0, 0x3F, 0x0F, 0xC0, 0x00, 0x07, 0xE0, - 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF8, 0xFC, 0x01, 0xF9, - 0xFF, 0x80, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFC, 0x3F, - 0xE1, 0xFF, 0x1F, 0xE0, 0x7F, 0x8F, 0xE0, 0x1F, 0xCF, 0xE0, 0x0F, 0xE7, - 0xF0, 0x07, 0xF3, 0xF0, 0x03, 0xF9, 0xF8, 0x01, 0xF8, 0xFC, 0x01, 0xFC, - 0x7E, 0x00, 0xFE, 0x3F, 0x00, 0xFE, 0x1F, 0xC0, 0xFF, 0x0F, 0xF0, 0xFF, - 0x03, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x80, 0x1F, 0xFF, - 0x80, 0x07, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xCF, - 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, - 0x9F, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x1F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xF8, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xE0, - 0x00, 0x03, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, - 0x01, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, - 0x0F, 0xFF, 0x80, 0x07, 0xFF, 0xF0, 0x03, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, - 0xC0, 0xFE, 0x0F, 0xF0, 0x3E, 0x01, 0xFC, 0x1F, 0x80, 0x3F, 0x07, 0xC0, - 0x0F, 0xC1, 0xF0, 0x03, 0xF0, 0x7C, 0x01, 0xF8, 0x1F, 0x00, 0xFC, 0x03, - 0xF0, 0x7F, 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, - 0x07, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x81, 0xFE, 0x1F, 0xE0, 0xFE, 0x03, - 0xFC, 0x3F, 0x00, 0x7F, 0x1F, 0xC0, 0x1F, 0xC7, 0xE0, 0x07, 0xF3, 0xF8, - 0x01, 0xFC, 0xFE, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0x8F, 0xE0, 0x0F, 0xE3, - 0xFC, 0x07, 0xF0, 0xFF, 0x87, 0xFC, 0x3F, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, - 0x00, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, 0x03, 0xFF, 0xE0, 0x00, 0x3F, - 0xC0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xFC, 0x00, 0x3F, 0xFF, 0x00, - 0x3F, 0xFF, 0xC0, 0x3F, 0xFF, 0xF0, 0x3F, 0xC3, 0xF8, 0x3F, 0xC0, 0xFE, - 0x1F, 0xC0, 0x3F, 0x1F, 0xC0, 0x1F, 0x8F, 0xE0, 0x0F, 0xC7, 0xE0, 0x07, - 0xE7, 0xF0, 0x03, 0xF3, 0xF8, 0x01, 0xF9, 0xFC, 0x01, 0xFC, 0xFE, 0x00, - 0xFE, 0x7F, 0x00, 0xFE, 0x3F, 0xC0, 0xFF, 0x1F, 0xF0, 0xFF, 0x87, 0xFF, - 0xFF, 0xC3, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0x3F, 0xF3, 0xF0, 0x07, - 0xE3, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7E, 0x1F, 0xC0, 0x7E, 0x0F, 0xF0, 0xFF, 0x07, 0xFF, 0xFF, 0x01, - 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0x00, 0x0F, 0xFF, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x07, 0xF0, 0x7F, 0x07, 0xF0, 0x7E, 0x0F, 0xE0, - 0xFE, 0x0F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x07, 0xF0, 0x7F, 0x07, - 0xE0, 0xFE, 0x0F, 0xE0, 0xFE, 0x00, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, - 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, - 0x03, 0x80, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0E, 0x00, 0xF0, 0x0F, 0xC0, - 0x3C, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0xE0, 0x00, - 0x01, 0xF8, 0x00, 0x03, 0xFE, 0x00, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, - 0x1F, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, - 0x0F, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x3F, 0xFE, - 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0xFF, 0xFF, 0x80, 0x07, 0xFF, 0xF8, 0x00, - 0x7F, 0xFF, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x00, 0x01, 0xF8, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x80, 0x1F, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0xF1, 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, - 0xFF, 0x1F, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xFE, 0x3F, 0xFF, 0xFF, 0x80, 0x04, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0x7E, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x0F, 0xFF, 0x00, 0x03, 0xFF, - 0xF8, 0x00, 0x7F, 0xFF, 0x80, 0x07, 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xC0, - 0x01, 0xFF, 0xF0, 0x00, 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xFF, - 0xC0, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, - 0xE0, 0x1F, 0xFF, 0xC0, 0x07, 0xFF, 0x80, 0x01, 0xFF, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, - 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xF8, 0x0F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFE, - 0x1F, 0xFF, 0xFE, 0x3F, 0xC1, 0xFF, 0x3F, 0x80, 0xFF, 0x7F, 0x00, 0x7F, - 0x7E, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xF8, - 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFE, 0x00, - 0x01, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xC0, 0x00, - 0x00, 0x00, 0x7F, 0xFF, 0xC0, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0x80, 0x00, - 0x01, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xE0, 0x1F, 0xF8, 0x00, 0x07, - 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x07, 0xE0, - 0x00, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF0, 0x0F, 0xC0, 0x00, - 0x00, 0x0F, 0x80, 0xFC, 0x00, 0x00, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xF1, - 0xF1, 0xF0, 0x7C, 0x00, 0xFF, 0xCF, 0x07, 0x87, 0xE0, 0x1F, 0xFF, 0xF8, - 0x3C, 0x7E, 0x01, 0xF8, 0x7F, 0x81, 0xE3, 0xE0, 0x1F, 0x01, 0xF8, 0x0F, - 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x79, 0xF0, 0x1F, 0x00, 0x7C, 0x03, 0xDF, - 0x00, 0xF0, 0x03, 0xE0, 0x1C, 0xF8, 0x0F, 0x80, 0x1E, 0x01, 0xE7, 0xC0, - 0x78, 0x00, 0xF0, 0x0F, 0x3C, 0x07, 0xC0, 0x0F, 0x00, 0xF3, 0xE0, 0x3C, - 0x00, 0x78, 0x07, 0x9F, 0x03, 0xE0, 0x07, 0x80, 0x78, 0xF8, 0x1F, 0x00, - 0x7C, 0x07, 0xC7, 0xC0, 0xF8, 0x07, 0xC0, 0x7C, 0x3E, 0x07, 0xC0, 0x7E, - 0x07, 0xC1, 0xF0, 0x3F, 0x07, 0xF8, 0xFC, 0x0F, 0x81, 0xFF, 0xFF, 0xFF, - 0xC0, 0x7E, 0x07, 0xFF, 0xBF, 0xFC, 0x01, 0xF0, 0x1F, 0xF8, 0xFF, 0x80, - 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x3F, - 0xE0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xE0, 0x03, 0x80, 0x00, 0x01, 0xFF, - 0xFF, 0xFE, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, - 0xFE, 0x00, 0x00, 0x00, 0x07, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, - 0xF0, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x7F, - 0xF0, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00, 0xFF, 0xF0, 0x00, 0x00, 0xFF, - 0xF0, 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x03, 0xFB, - 0xF8, 0x00, 0x07, 0xF3, 0xF8, 0x00, 0x07, 0xE3, 0xF8, 0x00, 0x0F, 0xE3, - 0xF8, 0x00, 0x0F, 0xC3, 0xF8, 0x00, 0x1F, 0xC3, 0xF8, 0x00, 0x1F, 0x83, - 0xF8, 0x00, 0x3F, 0x81, 0xFC, 0x00, 0x7F, 0x01, 0xFC, 0x00, 0x7F, 0x01, - 0xFC, 0x00, 0xFE, 0x01, 0xFC, 0x00, 0xFC, 0x01, 0xFC, 0x01, 0xFF, 0xFF, - 0xFC, 0x01, 0xFF, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, - 0xFE, 0x07, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xFE, 0x0F, 0xE0, 0x00, - 0xFE, 0x1F, 0xC0, 0x00, 0xFE, 0x1F, 0xC0, 0x00, 0xFE, 0x3F, 0x80, 0x00, - 0xFE, 0x3F, 0x80, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, - 0x7F, 0x01, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, - 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, - 0xFF, 0x03, 0xF8, 0x00, 0xFF, 0x03, 0xF8, 0x00, 0x7F, 0x07, 0xF0, 0x00, - 0x7F, 0x07, 0xF0, 0x00, 0x7F, 0x07, 0xF0, 0x00, 0x7E, 0x07, 0xF0, 0x00, - 0xFE, 0x0F, 0xF0, 0x03, 0xFC, 0x0F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, - 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, - 0xF8, 0x1F, 0xFF, 0xFF, 0xF8, 0x1F, 0xC0, 0x07, 0xFC, 0x1F, 0xC0, 0x01, - 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x3F, 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x01, - 0xFC, 0x3F, 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x03, 0xF8, 0x7F, 0x00, 0x07, - 0xF8, 0x7F, 0x00, 0x0F, 0xF0, 0x7F, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, - 0xE0, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, - 0xFC, 0x01, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0x03, 0xFE, 0x07, 0xFC, 0x01, - 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xE0, 0x00, 0x7F, 0x1F, 0xE0, 0x00, - 0x7F, 0x1F, 0xC0, 0x00, 0x7F, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xF8, 0xFE, 0x00, 0x03, - 0xF8, 0xFF, 0x00, 0x07, 0xF8, 0xFF, 0x00, 0x07, 0xF0, 0x7F, 0x80, 0x1F, - 0xF0, 0x7F, 0xE0, 0x7F, 0xE0, 0x3F, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, - 0x80, 0x1F, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xFE, 0x00, 0x03, 0xFF, 0xF8, - 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFF, - 0xE0, 0x03, 0xFF, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, - 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xF8, 0x03, 0xFE, 0x07, 0xF0, 0x01, - 0xFF, 0x07, 0xF0, 0x00, 0xFF, 0x07, 0xF0, 0x00, 0x7F, 0x07, 0xF0, 0x00, - 0x7F, 0x0F, 0xF0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, - 0x7F, 0x0F, 0xE0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, 0x7F, 0x1F, 0xC0, 0x00, - 0x7F, 0x1F, 0xC0, 0x00, 0xFE, 0x1F, 0xC0, 0x00, 0xFE, 0x1F, 0xC0, 0x00, - 0xFE, 0x1F, 0xC0, 0x01, 0xFE, 0x3F, 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x01, - 0xFC, 0x3F, 0x80, 0x03, 0xF8, 0x3F, 0x80, 0x07, 0xF8, 0x7F, 0x00, 0x0F, - 0xF0, 0x7F, 0x00, 0x1F, 0xF0, 0x7F, 0x00, 0x7F, 0xE0, 0x7F, 0xFF, 0xFF, - 0xC0, 0x7F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0x80, 0x00, 0x01, 0xFF, 0xFF, - 0xFF, 0x01, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, - 0xFE, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xF8, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xF0, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, - 0xE0, 0x1F, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, - 0xE0, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, - 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, - 0xFE, 0x01, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, - 0xFE, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x07, 0xF0, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, - 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, - 0xC0, 0x0F, 0xFF, 0xFF, 0xC0, 0x0F, 0xE0, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x03, 0xFF, - 0xF8, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, - 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFC, 0x07, 0xFC, 0x0F, 0xF8, - 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0x3F, 0x87, 0xF0, 0x00, 0x1F, 0xC7, 0xF0, - 0x00, 0x0F, 0xE3, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x7F, - 0x00, 0x3F, 0xFF, 0x3F, 0x00, 0x1F, 0xFF, 0xBF, 0x80, 0x0F, 0xFF, 0x9F, - 0xC0, 0x07, 0xFF, 0xCF, 0xE0, 0x03, 0xFF, 0xE7, 0xF0, 0x03, 0xFF, 0xF3, - 0xF8, 0x00, 0x01, 0xF9, 0xFC, 0x00, 0x01, 0xF8, 0xFF, 0x00, 0x00, 0xFC, - 0x7F, 0x80, 0x00, 0xFE, 0x3F, 0xC0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, - 0x87, 0xFC, 0x00, 0xFF, 0x81, 0xFF, 0x81, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFE, 0xF8, 0x03, 0xFF, 0xFC, - 0x78, 0x00, 0x7F, 0xFC, 0x3C, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, 0xF0, 0x00, 0x3F, 0x80, - 0xFE, 0x00, 0x0F, 0xE0, 0x1F, 0xC0, 0x01, 0xFC, 0x07, 0xF0, 0x00, 0x3F, - 0x80, 0xFE, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, 0xFE, 0x03, 0xF8, 0x00, - 0x3F, 0x80, 0xFF, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, 0xFE, 0x03, 0xF8, - 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x07, 0xF0, 0x0F, 0xFF, 0xFF, 0xFE, 0x03, - 0xFF, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xFF, - 0x01, 0xFF, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0xF8, 0x0F, 0xE0, 0x00, - 0x7F, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, 0xF0, - 0x00, 0x7F, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, - 0xF0, 0x00, 0x3F, 0x80, 0xFE, 0x00, 0x0F, 0xE0, 0x1F, 0xC0, 0x01, 0xFC, - 0x07, 0xF0, 0x00, 0x3F, 0x80, 0xFE, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, - 0xFE, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x7F, 0x00, 0x07, 0xF0, 0x1F, 0xC0, - 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x07, 0xF0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, - 0x0F, 0xE0, 0x3F, 0x81, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, - 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x7F, 0x01, 0xFC, - 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, - 0x03, 0xF8, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0xFE, - 0x03, 0xF8, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x0F, 0xE0, 0xFE, 0x03, 0xFC, 0x1F, 0xC0, 0x7F, 0x03, 0xF8, 0x0F, 0xE0, - 0xFE, 0x01, 0xFC, 0x1F, 0xC0, 0x3F, 0x83, 0xF8, 0x0F, 0xE0, 0x7F, 0x01, - 0xFC, 0x0F, 0xF0, 0xFF, 0x81, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xF8, 0x03, - 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0x80, 0x03, 0xFF, 0xE0, 0x00, 0x1F, 0xE0, - 0x00, 0x00, 0x00, 0xFE, 0x00, 0x0F, 0xF0, 0x0F, 0xF0, 0x00, 0xFF, 0x00, - 0x7F, 0x00, 0x1F, 0xF0, 0x03, 0xF8, 0x01, 0xFF, 0x00, 0x1F, 0xC0, 0x1F, - 0xE0, 0x00, 0xFE, 0x01, 0xFE, 0x00, 0x0F, 0xE0, 0x1F, 0xE0, 0x00, 0x7F, - 0x01, 0xFE, 0x00, 0x03, 0xF8, 0x1F, 0xE0, 0x00, 0x1F, 0xC1, 0xFE, 0x00, - 0x00, 0xFE, 0x1F, 0xE0, 0x00, 0x0F, 0xE3, 0xFE, 0x00, 0x00, 0x7F, 0x3F, - 0xC0, 0x00, 0x03, 0xFB, 0xFC, 0x00, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, - 0xFF, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0x00, 0x7F, 0xFF, 0xC0, - 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0x1F, 0xFF, 0xF8, 0x00, 0x01, 0xFF, - 0x9F, 0xE0, 0x00, 0x0F, 0xF8, 0xFF, 0x00, 0x00, 0x7F, 0x83, 0xFC, 0x00, - 0x03, 0xF8, 0x1F, 0xF0, 0x00, 0x1F, 0xC0, 0x7F, 0x80, 0x01, 0xFC, 0x01, - 0xFE, 0x00, 0x0F, 0xE0, 0x0F, 0xF0, 0x00, 0x7F, 0x00, 0x3F, 0xC0, 0x03, - 0xF8, 0x01, 0xFF, 0x00, 0x3F, 0x80, 0x07, 0xF8, 0x01, 0xFC, 0x00, 0x3F, - 0xE0, 0x0F, 0xE0, 0x00, 0xFF, 0x00, 0x7F, 0x00, 0x07, 0xFC, 0x03, 0xF8, - 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x01, 0xFC, 0x00, 0x01, 0xFC, - 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, - 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, - 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, - 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, - 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, - 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, - 0x80, 0x03, 0xFF, 0x80, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x01, - 0xFF, 0xC0, 0x3F, 0xF0, 0x00, 0xFF, 0xE0, 0x3F, 0xF8, 0x00, 0xFF, 0xF0, - 0x1F, 0xFC, 0x00, 0x7F, 0xF8, 0x0F, 0xFE, 0x00, 0x7D, 0xF8, 0x07, 0xEF, - 0x00, 0x3E, 0xFC, 0x03, 0xF7, 0x80, 0x3F, 0xFE, 0x03, 0xFB, 0xC0, 0x1F, - 0x7F, 0x01, 0xFD, 0xE0, 0x1F, 0xBF, 0x00, 0xFE, 0xF0, 0x0F, 0x9F, 0x80, - 0x7E, 0x78, 0x0F, 0xDF, 0xC0, 0x7F, 0x3E, 0x07, 0xCF, 0xE0, 0x3F, 0x9F, - 0x07, 0xE7, 0xF0, 0x1F, 0xCF, 0x83, 0xE3, 0xF0, 0x0F, 0xE7, 0xC3, 0xF1, - 0xF8, 0x07, 0xE3, 0xE1, 0xF9, 0xFC, 0x07, 0xF1, 0xF0, 0xF8, 0xFE, 0x03, - 0xF8, 0xF8, 0xFC, 0x7F, 0x01, 0xFC, 0x7C, 0x7C, 0x3F, 0x00, 0xFC, 0x3E, - 0x7E, 0x1F, 0x80, 0x7E, 0x1F, 0x3E, 0x1F, 0xC0, 0x7F, 0x0F, 0xBF, 0x0F, - 0xE0, 0x3F, 0x87, 0xDF, 0x07, 0xE0, 0x1F, 0xC3, 0xFF, 0x83, 0xF0, 0x0F, - 0xC1, 0xFF, 0xC3, 0xF8, 0x0F, 0xE0, 0xFF, 0xC1, 0xFC, 0x07, 0xF0, 0x7F, - 0xE0, 0xFE, 0x03, 0xF8, 0x3F, 0xE0, 0x7E, 0x01, 0xFC, 0x1F, 0xF0, 0x3F, - 0x00, 0xFC, 0x0F, 0xF0, 0x3F, 0x80, 0xFE, 0x07, 0xF8, 0x1F, 0xC0, 0x7F, - 0x03, 0xF8, 0x0F, 0xC0, 0x00, 0x01, 0xFE, 0x00, 0x07, 0xE0, 0x3F, 0xC0, - 0x01, 0xFC, 0x07, 0xFC, 0x00, 0x3F, 0x80, 0xFF, 0x80, 0x07, 0xF0, 0x1F, - 0xF0, 0x00, 0xFC, 0x07, 0xFF, 0x00, 0x3F, 0x80, 0xFF, 0xE0, 0x07, 0xF0, - 0x1F, 0xFC, 0x00, 0xFE, 0x03, 0xFF, 0xC0, 0x1F, 0x80, 0xFF, 0xF8, 0x03, - 0xF0, 0x1F, 0xFF, 0x80, 0xFE, 0x03, 0xFB, 0xF0, 0x1F, 0xC0, 0x7E, 0x7E, - 0x03, 0xF8, 0x0F, 0xC7, 0xE0, 0x7E, 0x03, 0xF8, 0xFC, 0x0F, 0xC0, 0x7F, - 0x1F, 0x83, 0xF8, 0x0F, 0xE1, 0xF8, 0x7F, 0x01, 0xF8, 0x3F, 0x0F, 0xE0, - 0x3F, 0x07, 0xF1, 0xF8, 0x0F, 0xE0, 0x7E, 0x3F, 0x01, 0xFC, 0x0F, 0xCF, - 0xE0, 0x3F, 0x00, 0xFD, 0xFC, 0x07, 0xE0, 0x1F, 0xBF, 0x81, 0xFC, 0x03, - 0xF7, 0xE0, 0x3F, 0x80, 0x3F, 0xFC, 0x07, 0xF0, 0x07, 0xFF, 0x80, 0xFC, - 0x00, 0xFF, 0xF0, 0x1F, 0x80, 0x0F, 0xFC, 0x07, 0xF0, 0x01, 0xFF, 0x80, - 0xFE, 0x00, 0x3F, 0xF0, 0x1F, 0xC0, 0x03, 0xFE, 0x03, 0xF0, 0x00, 0x7F, - 0xC0, 0x7E, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x01, - 0xFF, 0xFF, 0xF0, 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, - 0x3F, 0xF0, 0x3F, 0xF8, 0x1F, 0xF0, 0x03, 0xFE, 0x07, 0xF0, 0x00, 0x7F, - 0x83, 0xF8, 0x00, 0x0F, 0xF1, 0xFE, 0x00, 0x03, 0xFC, 0x7F, 0x00, 0x00, - 0x7F, 0x3F, 0x80, 0x00, 0x1F, 0xCF, 0xE0, 0x00, 0x07, 0xF7, 0xF0, 0x00, - 0x01, 0xFD, 0xFC, 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x1F, 0xDF, 0xC0, - 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0xFE, 0xFE, - 0x00, 0x00, 0x3F, 0xBF, 0x80, 0x00, 0x0F, 0xEF, 0xE0, 0x00, 0x07, 0xF3, - 0xF8, 0x00, 0x01, 0xFC, 0xFE, 0x00, 0x00, 0xFE, 0x3F, 0xC0, 0x00, 0x7F, - 0x8F, 0xF0, 0x00, 0x1F, 0xC1, 0xFE, 0x00, 0x0F, 0xE0, 0x7F, 0xC0, 0x0F, - 0xF8, 0x1F, 0xFC, 0x0F, 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, - 0xFF, 0x00, 0x0F, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFF, 0x80, 0x00, 0x1F, - 0xFF, 0x80, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x03, - 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xE0, 0x3F, - 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xC1, 0xFE, 0x00, 0xFF, 0x83, 0xF8, - 0x00, 0xFF, 0x07, 0xF0, 0x00, 0xFE, 0x0F, 0xE0, 0x01, 0xFC, 0x1F, 0xC0, - 0x03, 0xF8, 0x7F, 0x00, 0x07, 0xF0, 0xFE, 0x00, 0x1F, 0xC1, 0xFC, 0x00, - 0x3F, 0x83, 0xF8, 0x00, 0xFE, 0x07, 0xF0, 0x07, 0xFC, 0x1F, 0xFF, 0xFF, - 0xF0, 0x3F, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFE, - 0x03, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0x80, 0x0F, 0xE0, 0x00, 0x00, - 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x0F, - 0xE0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x01, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFF, 0xF0, - 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x3F, 0xF0, 0x3F, - 0xF0, 0x1F, 0xF0, 0x03, 0xFE, 0x07, 0xF8, 0x00, 0x7F, 0x83, 0xFC, 0x00, - 0x0F, 0xF1, 0xFE, 0x00, 0x03, 0xFC, 0x7F, 0x00, 0x00, 0x7F, 0x3F, 0x80, - 0x00, 0x1F, 0xCF, 0xE0, 0x00, 0x07, 0xF3, 0xF0, 0x00, 0x01, 0xFD, 0xFC, - 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x1F, 0xDF, 0x80, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0xFE, 0xFE, 0x00, 0x00, 0x3F, - 0xBF, 0x80, 0x00, 0x0F, 0xEF, 0xE0, 0x01, 0x87, 0xF3, 0xF8, 0x00, 0xF1, - 0xFC, 0xFE, 0x00, 0x7C, 0xFE, 0x3F, 0xC0, 0x3F, 0xFF, 0x8F, 0xF0, 0x07, - 0xFF, 0xC1, 0xFE, 0x01, 0xFF, 0xE0, 0x7F, 0xC0, 0x3F, 0xF8, 0x1F, 0xFC, - 0x0F, 0xFC, 0x03, 0xFF, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x0F, - 0xFF, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0x9F, 0x80, - 0x01, 0xFF, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x60, 0x00, 0x01, 0xFF, 0xFF, - 0xF0, 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, - 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xFC, 0x0F, 0xE0, - 0x03, 0xFE, 0x0F, 0xF0, 0x00, 0xFF, 0x07, 0xF0, 0x00, 0x3F, 0x83, 0xF8, - 0x00, 0x1F, 0xC1, 0xFC, 0x00, 0x0F, 0xC0, 0xFE, 0x00, 0x07, 0xE0, 0xFE, - 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x3F, 0x80, 0x0F, 0xF0, 0x1F, - 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x07, - 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0xFF, 0x01, - 0xFC, 0x00, 0x7F, 0x80, 0xFE, 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x0F, 0xE0, - 0x3F, 0x80, 0x07, 0xF0, 0x1F, 0xC0, 0x03, 0xF8, 0x1F, 0xC0, 0x01, 0xFC, - 0x0F, 0xE0, 0x01, 0xFC, 0x07, 0xF0, 0x00, 0xFE, 0x03, 0xF8, 0x00, 0x7F, - 0x01, 0xFC, 0x00, 0x3F, 0x81, 0xFC, 0x00, 0x1F, 0xC0, 0xFE, 0x00, 0x0F, - 0xE0, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x7F, - 0xFF, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, - 0xF8, 0x0F, 0xFF, 0xFF, 0xF0, 0x3F, 0xC0, 0x7F, 0xC1, 0xFE, 0x00, 0xFF, - 0x07, 0xF0, 0x01, 0xFC, 0x3F, 0x80, 0x07, 0xF0, 0xFE, 0x00, 0x1F, 0xC3, - 0xF8, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0xFF, - 0xE0, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x07, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, - 0xFE, 0x00, 0x1F, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0x03, 0xFF, - 0xF0, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0x07, 0xF3, 0xF8, 0x00, 0x1F, 0xCF, 0xE0, 0x00, 0x7E, 0x3F, - 0x80, 0x03, 0xF8, 0xFF, 0x00, 0x1F, 0xE3, 0xFF, 0x01, 0xFF, 0x07, 0xFF, - 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, - 0xF0, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x7F, 0xFF, 0xFF, - 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xFE, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x7F, - 0x07, 0xF0, 0x00, 0x7F, 0x07, 0xF0, 0x00, 0xFE, 0x0F, 0xE0, 0x00, 0xFE, - 0x0F, 0xE0, 0x00, 0xFE, 0x0F, 0xE0, 0x00, 0xFE, 0x0F, 0xE0, 0x00, 0xFE, - 0x0F, 0xE0, 0x01, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, - 0x1F, 0xC0, 0x01, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x3F, 0x80, 0x03, 0xF8, - 0x3F, 0x80, 0x03, 0xF8, 0x3F, 0x80, 0x03, 0xF8, 0x3F, 0x80, 0x03, 0xF8, - 0x3F, 0x80, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, - 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x0F, 0xE0, - 0xFE, 0x00, 0x0F, 0xE0, 0xFE, 0x00, 0x0F, 0xE0, 0xFE, 0x00, 0x0F, 0xE0, - 0xFE, 0x00, 0x1F, 0xC0, 0xFE, 0x00, 0x1F, 0xC0, 0xFF, 0x00, 0x3F, 0x80, - 0xFF, 0xC0, 0xFF, 0x80, 0x7F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFE, 0x00, - 0x3F, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0xF8, 0x00, 0x0F, 0xFF, 0xE0, 0x00, - 0x01, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x03, 0xF9, 0xFC, 0x00, 0x0F, 0xE7, - 0xF0, 0x00, 0x7F, 0x1F, 0xC0, 0x01, 0xFC, 0x7F, 0x00, 0x0F, 0xE1, 0xFC, - 0x00, 0x3F, 0x87, 0xF0, 0x01, 0xFC, 0x1F, 0xC0, 0x07, 0xF0, 0x3F, 0x00, - 0x3F, 0x80, 0xFC, 0x00, 0xFC, 0x03, 0xF0, 0x07, 0xF0, 0x0F, 0xC0, 0x1F, - 0x80, 0x3F, 0x80, 0xFE, 0x00, 0xFE, 0x03, 0xF0, 0x03, 0xF8, 0x1F, 0xC0, - 0x0F, 0xE0, 0x7E, 0x00, 0x1F, 0x83, 0xF8, 0x00, 0x7E, 0x0F, 0xC0, 0x01, - 0xF8, 0x7E, 0x00, 0x07, 0xE1, 0xF8, 0x00, 0x1F, 0x8F, 0xC0, 0x00, 0x7E, - 0x3F, 0x00, 0x01, 0xF9, 0xF8, 0x00, 0x07, 0xE7, 0xE0, 0x00, 0x0F, 0xFF, - 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x03, 0xFF, 0x00, - 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x00, - 0xFE, 0x00, 0x7F, 0x80, 0x1F, 0xFF, 0xC0, 0x0F, 0xF0, 0x03, 0xFB, 0xF8, - 0x01, 0xFE, 0x00, 0x7F, 0x7F, 0x00, 0x7F, 0xC0, 0x1F, 0xCF, 0xE0, 0x0F, - 0xF8, 0x03, 0xF9, 0xFC, 0x03, 0xFF, 0x00, 0xFE, 0x3F, 0x80, 0x7F, 0xE0, - 0x1F, 0xC7, 0xF0, 0x1F, 0xFC, 0x07, 0xF0, 0x7E, 0x03, 0xFF, 0x80, 0xFE, - 0x0F, 0xC0, 0x7D, 0xF0, 0x1F, 0x81, 0xF8, 0x1F, 0xBE, 0x07, 0xF0, 0x3F, - 0x03, 0xE7, 0xC0, 0xFC, 0x07, 0xE0, 0xFC, 0xF8, 0x3F, 0x80, 0xFC, 0x1F, - 0x1F, 0x07, 0xE0, 0x1F, 0x83, 0xE3, 0xE0, 0xFC, 0x03, 0xF0, 0xFC, 0x7C, - 0x3F, 0x00, 0x7E, 0x1F, 0x0F, 0x87, 0xE0, 0x0F, 0xC7, 0xE1, 0xF1, 0xF8, - 0x01, 0xF8, 0xF8, 0x3E, 0x3F, 0x00, 0x3F, 0x3F, 0x07, 0xCF, 0xC0, 0x07, - 0xE7, 0xC0, 0xF9, 0xF8, 0x00, 0xFC, 0xF8, 0x1F, 0x3E, 0x00, 0x1F, 0xBE, - 0x03, 0xEF, 0xC0, 0x01, 0xF7, 0xC0, 0x7D, 0xF0, 0x00, 0x3F, 0xF8, 0x0F, - 0xFE, 0x00, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, - 0x00, 0x1F, 0xF0, 0x07, 0xFC, 0x00, 0x03, 0xFE, 0x00, 0xFF, 0x80, 0x00, - 0x7F, 0x80, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0x01, 0xFC, - 0x00, 0x7F, 0x80, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x01, - 0xFC, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x07, 0xFC, 0x00, 0xFF, - 0x00, 0x1F, 0xE0, 0x07, 0xF8, 0x00, 0xFF, 0x00, 0x7F, 0x80, 0x03, 0xFC, - 0x07, 0xF8, 0x00, 0x1F, 0xE0, 0x7F, 0x80, 0x00, 0xFF, 0x07, 0xF8, 0x00, - 0x03, 0xFC, 0x3F, 0x80, 0x00, 0x1F, 0xE3, 0xF8, 0x00, 0x00, 0x7F, 0x3F, - 0xC0, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x00, - 0x7F, 0xFC, 0x00, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x00, 0x0F, 0xFC, 0x00, - 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x00, 0x1F, - 0xF0, 0x00, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x00, - 0x00, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x00, 0xFF, 0xFE, - 0x00, 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x00, 0xFF, 0x3F, 0xC0, 0x00, 0x0F, - 0xF1, 0xFE, 0x00, 0x00, 0xFF, 0x07, 0xF8, 0x00, 0x07, 0xF0, 0x3F, 0xC0, - 0x00, 0x7F, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x07, 0xF8, 0x00, 0x7F, 0x80, - 0x3F, 0xC0, 0x07, 0xF8, 0x01, 0xFF, 0x00, 0x7F, 0x80, 0x07, 0xF8, 0x07, - 0xFC, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x7F, - 0xBF, 0xC0, 0x07, 0xF8, 0xFE, 0x00, 0x3F, 0x87, 0xF8, 0x03, 0xFC, 0x3F, - 0xC0, 0x3F, 0xC0, 0xFE, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x3F, 0xC1, - 0xFE, 0x00, 0xFE, 0x0F, 0xE0, 0x07, 0xF0, 0xFE, 0x00, 0x3F, 0x8F, 0xE0, - 0x00, 0xFE, 0x7F, 0x00, 0x07, 0xF7, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x01, - 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0x80, 0x00, 0x3F, 0xF8, 0x00, 0x01, 0xFF, - 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, - 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xF8, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFF, - 0x01, 0xFF, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, - 0xC0, 0x3F, 0xFF, 0xFF, 0xE0, 0x00, 0x00, 0x7F, 0xF8, 0x03, 0xFF, 0x80, - 0x1F, 0xFC, 0x00, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0x7E, 0x00, 0x03, 0xF0, - 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, - 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7E, - 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, - 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xF8, 0x00, 0x0F, 0xC0, - 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F, - 0xC0, 0x00, 0x7E, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xFF, 0xC0, - 0x0F, 0xFE, 0x00, 0x7F, 0xF0, 0x07, 0xFF, 0x80, 0x3F, 0xFC, 0x00, 0x81, - 0xC3, 0xC7, 0x8F, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0xC7, 0x8F, 0x1E, - 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0x87, 0x8F, 0x1E, 0x3C, 0x38, 0x70, 0xE1, - 0xC3, 0x87, 0x0F, 0x1E, 0x3C, 0x78, 0xF0, 0x00, 0x7F, 0xF8, 0x03, 0xFF, - 0xC0, 0x1F, 0xFC, 0x00, 0xFF, 0xE0, 0x07, 0xFF, 0x00, 0x01, 0xF8, 0x00, - 0x1F, 0xC0, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, - 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x03, - 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, - 0x03, 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x7F, - 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, - 0x7F, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, - 0x00, 0x7F, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x01, 0xFF, - 0xE0, 0x0F, 0xFE, 0x00, 0x7F, 0xF0, 0x03, 0xFF, 0x80, 0x3F, 0xFC, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0xFE, 0x00, 0x0F, 0xF0, 0x00, 0x7F, 0x80, 0x07, - 0xFC, 0x00, 0x7F, 0xE0, 0x03, 0xFF, 0x80, 0x3E, 0xFC, 0x01, 0xF3, 0xE0, - 0x1F, 0x1F, 0x01, 0xF8, 0xF8, 0x0F, 0x87, 0xE0, 0xFC, 0x3F, 0x07, 0xC0, - 0xF8, 0x7C, 0x07, 0xC7, 0xE0, 0x3E, 0x3E, 0x01, 0xFB, 0xF0, 0x0F, 0xDF, - 0x00, 0x3F, 0xF0, 0x01, 0xF0, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xFF, 0xE0, 0xF8, 0xF0, 0xF1, 0xE1, - 0xC3, 0xC3, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x7F, 0x03, 0xFC, 0x3F, 0x00, - 0xFE, 0x1F, 0x80, 0x7E, 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x80, 0x1F, - 0xFF, 0xC0, 0x7F, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0xFF, 0xF7, 0xF0, 0xFF, - 0x83, 0xF8, 0xFF, 0x01, 0xF8, 0x7F, 0x00, 0xFC, 0x7F, 0x00, 0xFE, 0x3F, - 0x80, 0x7F, 0x1F, 0xC0, 0x7F, 0x8F, 0xF0, 0xFF, 0x87, 0xFF, 0xFF, 0xC3, - 0xFF, 0xFF, 0xE0, 0xFF, 0xF7, 0xF8, 0x3F, 0xF3, 0xFC, 0x07, 0xE0, 0x00, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xE0, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x3F, 0x80, 0x1F, - 0x9F, 0xFC, 0x03, 0xF7, 0xFF, 0xC0, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, - 0x83, 0xFF, 0x0F, 0xF0, 0x7F, 0x80, 0xFF, 0x0F, 0xE0, 0x1F, 0xE3, 0xF8, - 0x01, 0xFC, 0x7F, 0x00, 0x3F, 0x8F, 0xC0, 0x07, 0xF1, 0xF8, 0x00, 0xFE, - 0x7F, 0x00, 0x1F, 0xCF, 0xC0, 0x03, 0xF9, 0xF8, 0x00, 0xFE, 0x3F, 0x00, - 0x1F, 0xC7, 0xE0, 0x03, 0xF9, 0xFC, 0x00, 0xFE, 0x3F, 0xC0, 0x3F, 0xC7, - 0xF8, 0x0F, 0xF0, 0xFF, 0x83, 0xFC, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xF0, 0x1F, 0x9F, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x80, 0x7F, 0xFF, - 0xE0, 0x7F, 0xFF, 0xF0, 0x7F, 0x83, 0xFC, 0x7F, 0x00, 0xFE, 0x3F, 0x00, - 0x7F, 0x3F, 0x80, 0x3F, 0x9F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, - 0x00, 0x07, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0x9F, - 0xE0, 0x3F, 0x87, 0xF8, 0x3F, 0x83, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, - 0x3F, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x7F, 0x00, 0x3F, - 0xF3, 0xF8, 0x03, 0xFF, 0xDF, 0x80, 0x7F, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, - 0xE0, 0x3F, 0xC3, 0xFF, 0x03, 0xFC, 0x0F, 0xF8, 0x3F, 0xC0, 0x3F, 0x81, - 0xFC, 0x01, 0xFC, 0x1F, 0xC0, 0x07, 0xE0, 0xFE, 0x00, 0x3F, 0x07, 0xF0, - 0x03, 0xF8, 0x7F, 0x00, 0x1F, 0x83, 0xF8, 0x00, 0xFC, 0x1F, 0xC0, 0x07, - 0xE0, 0xFE, 0x00, 0x3F, 0x07, 0xF0, 0x03, 0xF0, 0x3F, 0x80, 0x3F, 0x81, - 0xFC, 0x01, 0xFC, 0x0F, 0xF0, 0x1F, 0xE0, 0x3F, 0xC3, 0xFF, 0x01, 0xFF, - 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xFC, 0x00, 0xFF, 0xCF, - 0xE0, 0x01, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0xFC, 0x00, - 0x7F, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0x7F, 0x87, 0xF8, - 0x7F, 0x01, 0xFE, 0x7F, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0xBF, 0x80, 0x1F, - 0xDF, 0xC0, 0x0F, 0xEF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFD, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x3F, 0x80, 0x3F, 0x9F, 0xE0, 0x3F, 0x87, 0xF8, 0x3F, 0xC3, 0xFF, - 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, 0x80, 0x00, - 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0x0F, 0xF8, 0x07, 0xFE, - 0x01, 0xFF, 0x80, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xC0, 0x03, 0xF0, 0x01, - 0xFC, 0x03, 0xFF, 0xF1, 0xFF, 0xF8, 0x7F, 0xFE, 0x1F, 0xFF, 0x80, 0xFE, - 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x7F, 0x00, - 0x1F, 0xC0, 0x07, 0xE0, 0x01, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, - 0xE0, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x07, 0xF0, - 0x01, 0xF8, 0x00, 0x7E, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x07, 0xC3, 0xF8, - 0x01, 0xFF, 0x9F, 0x80, 0x1F, 0xFE, 0xFC, 0x01, 0xFF, 0xFF, 0xE0, 0x1F, - 0xFF, 0xFF, 0x01, 0xFE, 0x1F, 0xF8, 0x1F, 0xE0, 0x3F, 0x80, 0xFE, 0x01, - 0xFC, 0x0F, 0xE0, 0x0F, 0xE0, 0x7F, 0x00, 0x3F, 0x07, 0xF0, 0x01, 0xF8, - 0x3F, 0x80, 0x0F, 0x81, 0xF8, 0x00, 0x7C, 0x1F, 0xC0, 0x07, 0xE0, 0xFE, - 0x00, 0x3F, 0x07, 0xF0, 0x01, 0xF0, 0x3F, 0x80, 0x1F, 0x81, 0xFC, 0x00, - 0xFC, 0x0F, 0xE0, 0x0F, 0xE0, 0x7F, 0x80, 0xFF, 0x03, 0xFE, 0x1F, 0xF0, - 0x0F, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0xFC, 0x01, 0xFF, 0xF7, 0xE0, 0x07, - 0xFE, 0x7F, 0x00, 0x0F, 0xC3, 0xF0, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x01, - 0xFC, 0x0F, 0xE0, 0x0F, 0xC0, 0x7F, 0x00, 0xFE, 0x03, 0xFC, 0x1F, 0xE0, - 0x1F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xE0, 0x01, 0xFF, 0xFC, 0x00, 0x01, - 0xFF, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xE0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFE, 0x0F, - 0xC0, 0x1F, 0xCF, 0xFE, 0x03, 0xFB, 0xFF, 0xE0, 0x7F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFF, 0xC3, 0xFF, 0x07, 0xF8, 0x7F, 0x80, 0x7F, 0x0F, 0xE0, 0x0F, - 0xE1, 0xFC, 0x01, 0xFC, 0x7F, 0x00, 0x3F, 0x0F, 0xE0, 0x07, 0xE1, 0xFC, - 0x01, 0xFC, 0x3F, 0x00, 0x3F, 0x87, 0xE0, 0x07, 0xF1, 0xFC, 0x00, 0xFC, - 0x3F, 0x80, 0x1F, 0x87, 0xF0, 0x07, 0xF0, 0xFC, 0x00, 0xFE, 0x1F, 0x80, - 0x1F, 0xC7, 0xF0, 0x03, 0xF0, 0xFE, 0x00, 0x7E, 0x1F, 0xC0, 0x1F, 0xC3, - 0xF0, 0x03, 0xF8, 0xFE, 0x00, 0x7F, 0x1F, 0xC0, 0x0F, 0xC0, 0x01, 0xFC, - 0x07, 0xF0, 0x1F, 0x80, 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x3F, 0x80, 0xFE, - 0x03, 0xF8, 0x0F, 0xC0, 0x3F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7E, - 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFC, 0x03, 0xF0, 0x1F, 0xC0, 0x7F, - 0x01, 0xFC, 0x07, 0xE0, 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x00, 0x00, 0x0F, - 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x3F, - 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x00, 0xFE, - 0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, 0x7E, 0x00, 0x1F, 0xC0, 0x03, 0xF8, - 0x00, 0x7F, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x7F, 0x00, 0x0F, 0xE0, - 0x01, 0xFC, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x80, - 0x07, 0xF0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x07, 0xF0, 0x00, 0xFE, 0x00, - 0x1F, 0x80, 0x03, 0xF0, 0x00, 0xFE, 0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, - 0x7E, 0x00, 0x0F, 0xC0, 0x03, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xC0, 0x0F, - 0xF8, 0x03, 0xFE, 0x00, 0x7E, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x7F, 0x00, 0xFE, 0x07, 0xE0, 0x3F, 0xC0, 0x7E, 0x07, - 0xF8, 0x0F, 0xE0, 0xFF, 0x00, 0xFE, 0x1F, 0xC0, 0x0F, 0xE3, 0xF8, 0x00, - 0xFC, 0x7F, 0x00, 0x0F, 0xCF, 0xE0, 0x01, 0xFD, 0xFC, 0x00, 0x1F, 0xFF, - 0x80, 0x01, 0xFF, 0xF8, 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xFC, 0x00, - 0x3F, 0xFF, 0xC0, 0x03, 0xFE, 0xFE, 0x00, 0x3F, 0xCF, 0xE0, 0x03, 0xF0, - 0xFE, 0x00, 0x7F, 0x07, 0xF0, 0x07, 0xF0, 0x7F, 0x00, 0x7F, 0x07, 0xF8, - 0x07, 0xE0, 0x3F, 0x80, 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0xC0, 0xFE, - 0x01, 0xFC, 0x0F, 0xC0, 0x1F, 0xE0, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0x80, - 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFC, 0x03, 0xF0, 0x1F, 0xC0, - 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xC0, - 0x3F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7E, 0x03, 0xF8, 0x0F, 0xE0, - 0x3F, 0x80, 0xFC, 0x03, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, - 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x00, 0x07, 0xF0, 0xFC, 0x03, 0xF0, 0x07, - 0xE3, 0xFF, 0x0F, 0xFC, 0x07, 0xEF, 0xFF, 0x3F, 0xFE, 0x0F, 0xFF, 0xFF, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF8, 0x7F, 0xF0, 0xFF, - 0x0F, 0xE0, 0x3F, 0xC0, 0x7F, 0x0F, 0xE0, 0x3F, 0x80, 0x7F, 0x1F, 0xC0, - 0x3F, 0x80, 0x7E, 0x1F, 0xC0, 0x3F, 0x00, 0x7E, 0x1F, 0xC0, 0x3F, 0x00, - 0xFE, 0x1F, 0x80, 0x7F, 0x00, 0xFE, 0x3F, 0x80, 0x7F, 0x00, 0xFC, 0x3F, - 0x80, 0x7F, 0x00, 0xFC, 0x3F, 0x80, 0x7E, 0x01, 0xFC, 0x3F, 0x00, 0x7E, - 0x01, 0xFC, 0x3F, 0x00, 0xFE, 0x01, 0xFC, 0x7F, 0x00, 0xFE, 0x01, 0xF8, - 0x7F, 0x00, 0xFE, 0x01, 0xF8, 0x7F, 0x00, 0xFC, 0x03, 0xF8, 0x7E, 0x01, - 0xFC, 0x03, 0xF8, 0x7E, 0x01, 0xFC, 0x03, 0xF8, 0xFE, 0x01, 0xFC, 0x03, - 0xF0, 0xFE, 0x01, 0xF8, 0x03, 0xF0, 0xFE, 0x01, 0xF8, 0x07, 0xF0, 0x07, - 0xF0, 0xFE, 0x00, 0xFE, 0x7F, 0xF0, 0x1F, 0x9F, 0xFF, 0x03, 0xFF, 0xFF, - 0xF0, 0xFF, 0xFF, 0xFE, 0x1F, 0xF8, 0x3F, 0xC3, 0xFC, 0x03, 0xF8, 0x7F, - 0x00, 0x7F, 0x0F, 0xE0, 0x0F, 0xE3, 0xF8, 0x01, 0xF8, 0x7F, 0x00, 0x3F, - 0x0F, 0xC0, 0x0F, 0xE1, 0xF8, 0x01, 0xFC, 0x7F, 0x00, 0x3F, 0x8F, 0xE0, - 0x07, 0xE1, 0xFC, 0x00, 0xFC, 0x3F, 0x00, 0x3F, 0x87, 0xE0, 0x07, 0xF1, - 0xFC, 0x00, 0xFE, 0x3F, 0x80, 0x1F, 0x87, 0xF0, 0x03, 0xF0, 0xFC, 0x00, - 0xFE, 0x3F, 0x80, 0x1F, 0xC7, 0xF0, 0x03, 0xF8, 0xFE, 0x00, 0x7E, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0xFF, 0x00, 0x1F, 0xFF, 0xE0, 0x0F, 0xFF, - 0xFC, 0x07, 0xFF, 0xFF, 0x83, 0xFC, 0x1F, 0xE1, 0xFE, 0x03, 0xFC, 0xFF, - 0x00, 0xFF, 0x3F, 0x80, 0x1F, 0xDF, 0xC0, 0x07, 0xF7, 0xF0, 0x01, 0xFD, - 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x03, - 0xFB, 0xF8, 0x00, 0xFE, 0xFE, 0x00, 0x3F, 0xBF, 0x80, 0x1F, 0xCF, 0xF0, - 0x0F, 0xF3, 0xFC, 0x07, 0xF8, 0x7F, 0x83, 0xFC, 0x1F, 0xFF, 0xFE, 0x03, - 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0x80, 0x0F, 0xFF, 0x80, 0x00, 0x7F, 0x00, - 0x00, 0x01, 0xFC, 0x3F, 0x00, 0x0F, 0xCF, 0xFE, 0x00, 0x7E, 0xFF, 0xF8, - 0x07, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0x01, 0xFF, 0x87, 0xF8, 0x0F, - 0xF0, 0x1F, 0xE0, 0xFF, 0x00, 0xFF, 0x07, 0xF0, 0x03, 0xF8, 0x3F, 0x80, - 0x1F, 0xC1, 0xF8, 0x00, 0xFE, 0x0F, 0xC0, 0x07, 0xF0, 0xFE, 0x00, 0x3F, - 0x87, 0xF0, 0x01, 0xFC, 0x3F, 0x00, 0x1F, 0xC1, 0xF8, 0x00, 0xFE, 0x1F, - 0xC0, 0x07, 0xF0, 0xFE, 0x00, 0x7F, 0x07, 0xF8, 0x07, 0xF8, 0x3F, 0xC0, - 0x7F, 0x81, 0xFF, 0x87, 0xF8, 0x1F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFC, - 0x07, 0xF7, 0xFF, 0xC0, 0x3F, 0x1F, 0xF8, 0x01, 0xF8, 0x7F, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x07, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x87, 0xF0, - 0x0F, 0xFE, 0x7F, 0x01, 0xFF, 0xF7, 0xE0, 0x3F, 0xFF, 0x7E, 0x07, 0xFF, - 0xFF, 0xE0, 0xFF, 0x07, 0xFE, 0x1F, 0xE0, 0x3F, 0xE3, 0xFC, 0x03, 0xFC, - 0x3F, 0x80, 0x1F, 0xC7, 0xF0, 0x01, 0xFC, 0x7F, 0x00, 0x1F, 0xC7, 0xF0, - 0x01, 0xF8, 0xFE, 0x00, 0x1F, 0x8F, 0xE0, 0x03, 0xF8, 0xFE, 0x00, 0x3F, - 0x8F, 0xE0, 0x03, 0xF8, 0xFE, 0x00, 0x7F, 0x0F, 0xE0, 0x07, 0xF0, 0xFE, - 0x00, 0xFF, 0x0F, 0xF0, 0x1F, 0xF0, 0x7F, 0x87, 0xFF, 0x07, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0x7E, 0x03, 0xFF, 0xEF, 0xE0, 0x1F, 0xFC, 0xFE, 0x00, - 0x7F, 0x0F, 0xC0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x07, - 0xF0, 0xF0, 0x7F, 0x3F, 0x07, 0xE7, 0xE0, 0x7E, 0xFE, 0x0F, 0xFF, 0xE0, - 0xFF, 0xFE, 0x0F, 0xFC, 0x00, 0xFF, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x00, - 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x80, - 0x03, 0xF8, 0x00, 0x3F, 0x00, 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, - 0x00, 0x7F, 0x00, 0x07, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, - 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xFC, 0x07, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x0F, 0xE0, 0xFF, 0x1F, 0xC0, 0x7F, 0x1F, - 0xC0, 0x7F, 0x1F, 0xE0, 0x00, 0x1F, 0xFC, 0x00, 0x1F, 0xFF, 0xC0, 0x0F, - 0xFF, 0xF0, 0x07, 0xFF, 0xF8, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, - 0x0F, 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFE, 0xFC, 0x00, 0xFE, 0xFE, - 0x00, 0xFE, 0xFF, 0x03, 0xFC, 0x7F, 0xFF, 0xF8, 0x7F, 0xFF, 0xF8, 0x3F, - 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, 0x03, 0xFE, 0x00, 0x03, 0xF0, 0x1F, 0xC0, - 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x3F, 0x80, 0xFE, 0x1F, 0xFF, 0x7F, 0xFD, - 0xFF, 0xFF, 0xFF, 0xC7, 0xF0, 0x1F, 0xC0, 0x7E, 0x01, 0xF8, 0x0F, 0xE0, - 0x3F, 0x80, 0xFE, 0x03, 0xF0, 0x0F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, - 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0xF0, 0xFF, 0xC3, 0xFF, - 0x07, 0xFC, 0x0F, 0xE0, 0x0F, 0xC0, 0x0F, 0xE1, 0xF8, 0x01, 0xFC, 0x7F, - 0x00, 0x3F, 0x0F, 0xE0, 0x0F, 0xE1, 0xFC, 0x01, 0xFC, 0x3F, 0x00, 0x3F, - 0x87, 0xE0, 0x07, 0xE1, 0xFC, 0x00, 0xFC, 0x3F, 0x80, 0x3F, 0x87, 0xF0, - 0x07, 0xF0, 0xFC, 0x00, 0xFE, 0x1F, 0x80, 0x1F, 0x87, 0xF0, 0x03, 0xF0, - 0xFE, 0x00, 0xFE, 0x1F, 0x80, 0x1F, 0xC3, 0xF0, 0x03, 0xF0, 0xFE, 0x00, - 0x7E, 0x1F, 0xC0, 0x1F, 0xC3, 0xF8, 0x07, 0xF8, 0x7F, 0x01, 0xFF, 0x0F, - 0xF0, 0x7F, 0xC1, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0x03, 0xFF, 0xEF, - 0xE0, 0x3F, 0xF9, 0xFC, 0x01, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x7F, 0x7F, - 0x00, 0x3F, 0xBF, 0x80, 0x3F, 0x8F, 0xC0, 0x1F, 0xC7, 0xE0, 0x1F, 0xC3, - 0xF0, 0x0F, 0xC1, 0xFC, 0x0F, 0xE0, 0xFE, 0x07, 0xE0, 0x7F, 0x07, 0xF0, - 0x3F, 0x83, 0xF0, 0x0F, 0xC3, 0xF8, 0x07, 0xE1, 0xF8, 0x03, 0xF1, 0xFC, - 0x01, 0xF8, 0xFC, 0x00, 0xFC, 0xFC, 0x00, 0x7E, 0x7E, 0x00, 0x3F, 0x7E, - 0x00, 0x0F, 0xBF, 0x00, 0x07, 0xFF, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xFF, - 0x80, 0x00, 0xFF, 0x80, 0x00, 0x7F, 0xC0, 0x00, 0x3F, 0xC0, 0x00, 0x1F, - 0xE0, 0x00, 0x00, 0xFE, 0x03, 0xF8, 0x0F, 0xFF, 0xC0, 0x7F, 0x01, 0xFF, - 0xF8, 0x1F, 0xE0, 0x3F, 0x7F, 0x03, 0xFC, 0x0F, 0xEF, 0xE0, 0xFF, 0x81, - 0xF9, 0xFC, 0x1F, 0xF0, 0x7F, 0x3F, 0x83, 0xFE, 0x0F, 0xC3, 0xF0, 0xFF, - 0xC3, 0xF8, 0x7E, 0x1E, 0xF8, 0x7E, 0x0F, 0xC7, 0xDF, 0x1F, 0xC1, 0xF8, - 0xFB, 0xE3, 0xF0, 0x3F, 0x1E, 0x7C, 0x7E, 0x07, 0xE7, 0xCF, 0x9F, 0x80, - 0xFC, 0xF1, 0xF3, 0xF0, 0x1F, 0xBE, 0x3E, 0xFC, 0x03, 0xF7, 0x87, 0xDF, - 0x80, 0x7E, 0xF0, 0xFF, 0xE0, 0x0F, 0xFE, 0x1F, 0xFC, 0x01, 0xFF, 0x83, - 0xFF, 0x00, 0x3F, 0xF0, 0x7F, 0xE0, 0x07, 0xFC, 0x0F, 0xF8, 0x00, 0x7F, - 0x81, 0xFF, 0x00, 0x0F, 0xF0, 0x3F, 0xC0, 0x01, 0xFC, 0x07, 0xF8, 0x00, - 0x3F, 0x80, 0xFE, 0x00, 0x00, 0x03, 0xFC, 0x07, 0xF8, 0x1F, 0xE0, 0x7F, - 0x80, 0x7F, 0x03, 0xF8, 0x03, 0xF8, 0x3F, 0x80, 0x1F, 0xE3, 0xF8, 0x00, - 0x7F, 0x3F, 0x80, 0x03, 0xF9, 0xFC, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x7F, - 0xFC, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x7F, 0xC0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x01, 0xFF, 0x80, 0x00, - 0x1F, 0xFE, 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x1F, 0xDF, 0xC0, 0x01, 0xFC, - 0xFE, 0x00, 0x1F, 0xE7, 0xF8, 0x00, 0xFE, 0x1F, 0xC0, 0x0F, 0xE0, 0xFE, - 0x00, 0xFF, 0x07, 0xF8, 0x0F, 0xF0, 0x1F, 0xC0, 0xFF, 0x00, 0xFF, 0x00, - 0x0F, 0xE0, 0x03, 0xF0, 0x7F, 0x00, 0x3F, 0x83, 0xF8, 0x01, 0xF8, 0x1F, - 0xC0, 0x1F, 0xC0, 0xFE, 0x00, 0xFC, 0x03, 0xF8, 0x0F, 0xE0, 0x1F, 0xC0, - 0x7E, 0x00, 0xFE, 0x07, 0xE0, 0x07, 0xF0, 0x3F, 0x00, 0x3F, 0x83, 0xF0, - 0x01, 0xFC, 0x1F, 0x80, 0x0F, 0xE1, 0xF8, 0x00, 0x3F, 0x0F, 0xC0, 0x01, - 0xF8, 0xFC, 0x00, 0x0F, 0xC7, 0xC0, 0x00, 0x7F, 0x7E, 0x00, 0x03, 0xFB, - 0xE0, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0xFF, 0xF0, 0x00, 0x03, 0xFF, 0x80, - 0x00, 0x1F, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x3F, 0xC0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF8, 0x00, - 0x01, 0xFF, 0x80, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x07, - 0xF8, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xC0, 0xFF, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x1F, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0x80, - 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF8, - 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x7F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, - 0xE0, 0xFF, 0xFF, 0xF8, 0x00, 0x00, 0x0F, 0xC0, 0x0F, 0xF0, 0x07, 0xFC, - 0x01, 0xFE, 0x00, 0xFF, 0x80, 0x3E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x01, - 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF8, - 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x3F, 0x00, 0x7F, 0x80, 0x1F, 0x80, 0x07, 0xE0, 0x03, 0xFC, 0x00, 0x3F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, - 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x01, - 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xF8, 0x01, 0xFE, 0x00, 0x7F, - 0x80, 0x0F, 0xE0, 0x01, 0xF8, 0x00, 0x00, 0x78, 0x03, 0xC0, 0x1C, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1C, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x03, 0xC0, 0x1C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x03, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x70, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x70, - 0x07, 0x80, 0x3C, 0x00, 0x00, 0x7E, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x01, - 0xFE, 0x00, 0x7F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xF0, 0x00, - 0xFF, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x07, 0xF8, 0x03, 0xF0, 0x00, 0xF8, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, - 0x80, 0x07, 0xC0, 0x01, 0xF0, 0x07, 0xFC, 0x01, 0xFE, 0x00, 0xFF, 0x80, - 0x3F, 0xC0, 0x0F, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0xFF, 0x80, 0x07, 0xFF, - 0x03, 0xDF, 0xFE, 0x0F, 0xF0, 0x7F, 0xFB, 0x80, 0xFF, 0xE0, 0x01, 0xFF, - 0x00, 0x03, 0xF0}; - -const GFXglyph FreeSansBoldOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 13, 0, 1}, // 0x20 ' ' - {0, 14, 34, 16, 5, -33}, // 0x21 '!' - {60, 18, 12, 22, 8, -33}, // 0x22 '"' - {87, 29, 33, 26, 2, -31}, // 0x23 '#' - {207, 26, 42, 26, 3, -35}, // 0x24 '$' - {344, 36, 34, 42, 6, -32}, // 0x25 '%' - {497, 29, 35, 34, 4, -33}, // 0x26 '&' - {624, 7, 12, 11, 8, -33}, // 0x27 ''' - {635, 17, 44, 16, 4, -33}, // 0x28 '(' - {729, 17, 44, 16, 0, -34}, // 0x29 ')' - {823, 15, 15, 18, 7, -33}, // 0x2A '*' - {852, 24, 22, 27, 4, -21}, // 0x2B '+' - {918, 10, 15, 13, 1, -6}, // 0x2C ',' - {937, 14, 6, 16, 3, -15}, // 0x2D '-' - {948, 8, 7, 13, 3, -6}, // 0x2E '.' - {955, 20, 34, 13, 0, -32}, // 0x2F '/' - {1040, 25, 35, 26, 4, -33}, // 0x30 '0' - {1150, 17, 33, 26, 8, -32}, // 0x31 '1' - {1221, 29, 34, 26, 1, -33}, // 0x32 '2' - {1345, 26, 35, 26, 3, -33}, // 0x33 '3' - {1459, 25, 32, 26, 3, -31}, // 0x34 '4' - {1559, 27, 34, 26, 3, -32}, // 0x35 '5' - {1674, 25, 35, 26, 4, -33}, // 0x36 '6' - {1784, 26, 33, 26, 6, -32}, // 0x37 '7' - {1892, 26, 35, 26, 3, -33}, // 0x38 '8' - {2006, 25, 35, 26, 4, -33}, // 0x39 '9' - {2116, 12, 25, 16, 5, -24}, // 0x3A ':' - {2154, 14, 33, 16, 3, -24}, // 0x3B ';' - {2212, 26, 23, 27, 4, -22}, // 0x3C '<' - {2287, 26, 18, 27, 3, -19}, // 0x3D '=' - {2346, 26, 23, 27, 1, -21}, // 0x3E '>' - {2421, 24, 35, 29, 8, -34}, // 0x3F '?' - {2526, 45, 41, 46, 3, -34}, // 0x40 '@' - {2757, 32, 34, 34, 1, -33}, // 0x41 'A' - {2893, 32, 34, 34, 4, -33}, // 0x42 'B' - {3029, 32, 36, 34, 5, -34}, // 0x43 'C' - {3173, 32, 34, 34, 4, -33}, // 0x44 'D' - {3309, 32, 34, 31, 4, -33}, // 0x45 'E' - {3445, 32, 34, 29, 3, -33}, // 0x46 'F' - {3581, 33, 36, 37, 5, -34}, // 0x47 'G' - {3730, 35, 34, 34, 3, -33}, // 0x48 'H' - {3879, 14, 34, 13, 3, -33}, // 0x49 'I' - {3939, 27, 35, 26, 3, -33}, // 0x4A 'J' - {4058, 37, 34, 34, 3, -33}, // 0x4B 'K' - {4216, 24, 34, 29, 4, -33}, // 0x4C 'L' - {4318, 41, 34, 39, 3, -33}, // 0x4D 'M' - {4493, 35, 34, 34, 3, -33}, // 0x4E 'N' - {4642, 34, 36, 37, 5, -34}, // 0x4F 'O' - {4795, 31, 34, 31, 4, -33}, // 0x50 'P' - {4927, 34, 37, 37, 5, -34}, // 0x51 'Q' - {5085, 33, 34, 34, 4, -33}, // 0x52 'R' - {5226, 30, 36, 31, 4, -34}, // 0x53 'S' - {5361, 28, 34, 29, 7, -33}, // 0x54 'T' - {5480, 32, 35, 34, 6, -33}, // 0x55 'U' - {5620, 30, 34, 31, 8, -33}, // 0x56 'V' - {5748, 43, 34, 44, 8, -33}, // 0x57 'W' - {5931, 37, 34, 31, 1, -33}, // 0x58 'X' - {6089, 29, 34, 31, 9, -33}, // 0x59 'Y' - {6213, 33, 34, 29, 1, -33}, // 0x5A 'Z' - {6354, 21, 43, 16, 1, -33}, // 0x5B '[' - {6467, 7, 36, 13, 6, -34}, // 0x5C '\' - {6499, 21, 43, 16, -1, -33}, // 0x5D ']' - {6612, 21, 20, 27, 6, -32}, // 0x5E '^' - {6665, 29, 4, 26, -3, 6}, // 0x5F '_' - {6680, 7, 7, 16, 8, -35}, // 0x60 '`' - {6687, 25, 26, 26, 2, -24}, // 0x61 'a' - {6769, 27, 35, 29, 3, -33}, // 0x62 'b' - {6888, 25, 26, 26, 4, -24}, // 0x63 'c' - {6970, 29, 35, 29, 4, -33}, // 0x64 'd' - {7097, 25, 26, 26, 3, -24}, // 0x65 'e' - {7179, 18, 34, 16, 4, -33}, // 0x66 'f' - {7256, 29, 35, 29, 2, -24}, // 0x67 'g' - {7383, 27, 34, 29, 3, -33}, // 0x68 'h' - {7498, 14, 34, 13, 3, -33}, // 0x69 'i' - {7558, 19, 44, 13, -2, -33}, // 0x6A 'j' - {7663, 28, 34, 26, 3, -33}, // 0x6B 'k' - {7782, 14, 34, 13, 3, -33}, // 0x6C 'l' - {7842, 40, 25, 42, 3, -24}, // 0x6D 'm' - {7967, 27, 25, 29, 3, -24}, // 0x6E 'n' - {8052, 26, 26, 29, 4, -24}, // 0x6F 'o' - {8137, 29, 35, 29, 1, -24}, // 0x70 'p' - {8264, 28, 35, 29, 3, -24}, // 0x71 'q' - {8387, 20, 25, 18, 3, -24}, // 0x72 'r' - {8450, 24, 26, 26, 3, -24}, // 0x73 's' - {8528, 14, 32, 16, 5, -30}, // 0x74 't' - {8584, 27, 26, 29, 4, -24}, // 0x75 'u' - {8672, 25, 25, 26, 6, -24}, // 0x76 'v' - {8751, 35, 25, 37, 6, -24}, // 0x77 'w' - {8861, 29, 25, 26, 1, -24}, // 0x78 'x' - {8952, 29, 35, 26, 2, -24}, // 0x79 'y' - {9079, 26, 25, 23, 1, -24}, // 0x7A 'z' - {9161, 18, 43, 18, 4, -33}, // 0x7B '{' - {9258, 13, 43, 13, 3, -33}, // 0x7C '|' - {9328, 18, 43, 18, 2, -33}, // 0x7D '}' - {9425, 22, 8, 27, 5, -14}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique24pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique24pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 10119 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h deleted file mode 100644 index ff72f73..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h +++ /dev/null @@ -1,229 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique9pt7bBitmaps[] PROGMEM = { - 0x21, 0x8E, 0x73, 0x18, 0xC6, 0x21, 0x19, 0xCE, 0x00, 0xEF, 0xDF, 0xBE, - 0x68, 0x80, 0x06, 0xC1, 0x99, 0xFF, 0xBF, 0xF1, 0xB0, 0x66, 0x0C, 0xC7, - 0xFC, 0xFF, 0x8C, 0x83, 0x30, 0x64, 0x00, 0x02, 0x00, 0xF0, 0x7F, 0x1D, - 0x73, 0xEE, 0x78, 0x0F, 0x00, 0xF8, 0x0F, 0xC1, 0xBB, 0xA7, 0x74, 0xEF, - 0xF8, 0xFE, 0x04, 0x00, 0x80, 0x3C, 0x11, 0xF8, 0x8E, 0x66, 0x31, 0x90, - 0xCE, 0x83, 0xF4, 0x07, 0xB0, 0x00, 0x9E, 0x04, 0xFC, 0x26, 0x31, 0x98, - 0xC4, 0x7E, 0x20, 0xF0, 0x07, 0x80, 0xFC, 0x1D, 0xC1, 0xDC, 0x1F, 0x80, - 0xE0, 0x3E, 0x37, 0x77, 0xE3, 0xEE, 0x3C, 0xE3, 0xCF, 0xFE, 0x3C, 0xE0, - 0xFF, 0xE8, 0x06, 0x06, 0x0C, 0x18, 0x38, 0x30, 0x70, 0x60, 0xE0, 0xE0, - 0xE0, 0xE0, 0xE0, 0xE0, 0x60, 0x70, 0x30, 0x0C, 0x0E, 0x06, 0x07, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x06, 0x0E, 0x0C, 0x1C, 0x18, 0x30, 0x60, 0x60, - 0x32, 0xBF, 0x9C, 0xD2, 0x40, 0x0C, 0x06, 0x07, 0x1F, 0xFF, 0xF0, 0xC0, - 0xE0, 0x60, 0x77, 0x72, 0x6C, 0xFF, 0xC0, 0xFC, 0x02, 0x02, 0x04, 0x04, - 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x0F, 0x07, 0xE3, - 0x9D, 0xC7, 0x71, 0xDC, 0x7E, 0x1F, 0x8E, 0xE3, 0xB8, 0xEE, 0x73, 0xF8, - 0x3C, 0x00, 0x04, 0x3B, 0xF7, 0xE1, 0xC3, 0x06, 0x1C, 0x38, 0x70, 0xC1, - 0x87, 0x00, 0x0F, 0x87, 0xFC, 0xE3, 0xB8, 0x70, 0x0E, 0x03, 0x80, 0xF0, - 0x38, 0x1E, 0x07, 0x01, 0xC0, 0x7F, 0xCF, 0xF8, 0x0F, 0xC7, 0xFC, 0xE3, - 0xB8, 0x70, 0x1C, 0x0F, 0x03, 0xF0, 0x0E, 0x01, 0xDC, 0x3B, 0x8E, 0x7F, - 0x83, 0xE0, 0x03, 0xC0, 0xE0, 0x58, 0x2E, 0x13, 0x8C, 0xE6, 0x33, 0xFE, - 0xFF, 0x81, 0xC0, 0x60, 0x18, 0x0F, 0xE3, 0xFC, 0x60, 0x0C, 0x03, 0x78, - 0x7F, 0x9C, 0x70, 0x0E, 0x01, 0xDC, 0x33, 0x8E, 0x7F, 0x83, 0xE0, 0x0F, - 0x07, 0xE3, 0x9D, 0xC0, 0x7F, 0x1F, 0xEF, 0x3B, 0x8E, 0xE3, 0xB8, 0xCE, - 0x71, 0xF8, 0x3C, 0x00, 0x7F, 0xDF, 0xF0, 0x18, 0x0C, 0x06, 0x03, 0x81, - 0xC0, 0x60, 0x38, 0x0C, 0x07, 0x01, 0x80, 0x60, 0x00, 0x0F, 0x83, 0xFC, - 0xE3, 0x9C, 0x73, 0x9C, 0x3F, 0x0F, 0xE3, 0x8E, 0xE1, 0xDC, 0x3B, 0x8E, - 0x7F, 0xC3, 0xE0, 0x0F, 0x83, 0xF8, 0xE3, 0xB8, 0x77, 0x0E, 0xE1, 0xDC, - 0x7B, 0xFE, 0x3D, 0xC0, 0x33, 0x8E, 0x7F, 0x87, 0xC0, 0x77, 0x00, 0x00, - 0x0E, 0xE0, 0x39, 0xC0, 0x00, 0x01, 0xCE, 0x71, 0x19, 0x80, 0x00, 0x00, - 0x70, 0xFD, 0xF8, 0x70, 0x3F, 0x03, 0xF8, 0x1E, 0x01, 0x80, 0x7F, 0xDF, - 0xF0, 0x00, 0x00, 0xFF, 0xBF, 0xE0, 0x60, 0x1E, 0x07, 0xF0, 0x3F, 0x03, - 0x87, 0xEF, 0xC3, 0x80, 0x00, 0x00, 0x1F, 0x1F, 0xFE, 0x1F, 0x87, 0x01, - 0xC0, 0xE0, 0x70, 0x78, 0x3C, 0x0E, 0x00, 0x00, 0xE0, 0x38, 0x00, 0x00, - 0xFC, 0x00, 0xFF, 0xC0, 0xF0, 0x78, 0x70, 0x07, 0x38, 0x01, 0xCC, 0x3F, - 0x36, 0x31, 0x8D, 0x98, 0x63, 0xC4, 0x11, 0xF3, 0x0C, 0x6C, 0xC6, 0x73, - 0x3E, 0xF8, 0xE7, 0x3C, 0x1E, 0x00, 0x03, 0xFE, 0x00, 0x3F, 0x00, 0x01, - 0xE0, 0x0F, 0x00, 0xF8, 0x07, 0xC0, 0x6F, 0x03, 0x38, 0x31, 0xC3, 0x8E, - 0x1F, 0xF1, 0xFF, 0x8C, 0x1E, 0xE0, 0x76, 0x03, 0x80, 0x1F, 0xF0, 0xFF, - 0xC6, 0x0E, 0x70, 0x73, 0x87, 0x1F, 0xF0, 0xFF, 0x86, 0x0E, 0x70, 0x73, - 0x83, 0x9C, 0x38, 0xFF, 0xC7, 0xF8, 0x00, 0x07, 0xE0, 0xFF, 0x8F, 0x1E, - 0x70, 0x77, 0x00, 0x30, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x03, 0xBC, - 0x38, 0xFF, 0x83, 0xF0, 0x00, 0x1F, 0xE0, 0xFF, 0x86, 0x1E, 0x70, 0x73, - 0x83, 0x9C, 0x1C, 0xC0, 0xE6, 0x07, 0x70, 0x73, 0x83, 0x9C, 0x38, 0xFF, - 0x8F, 0xF0, 0x00, 0x1F, 0xF8, 0xFF, 0x86, 0x00, 0x70, 0x03, 0x80, 0x1F, - 0xF0, 0xFF, 0x86, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xFF, 0xC7, 0xFC, - 0x00, 0x1F, 0xF1, 0xFF, 0x18, 0x03, 0x80, 0x38, 0x03, 0xFC, 0x3F, 0xC7, - 0x00, 0x70, 0x07, 0x00, 0x70, 0x06, 0x00, 0xE0, 0x00, 0x07, 0xC1, 0xFE, - 0x38, 0x77, 0x03, 0x70, 0x0E, 0x00, 0xE1, 0xEE, 0x1E, 0xE0, 0x6E, 0x0E, - 0x70, 0xE7, 0xFC, 0x1F, 0x40, 0x1C, 0x1C, 0x60, 0x63, 0x83, 0x8E, 0x0E, - 0x38, 0x38, 0xFF, 0xC3, 0xFF, 0x1C, 0x1C, 0x70, 0x71, 0xC1, 0xC6, 0x06, - 0x18, 0x38, 0xE0, 0xE0, 0x39, 0xCE, 0x63, 0x39, 0xCE, 0x63, 0x39, 0xCE, - 0x00, 0x00, 0xC0, 0x18, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x00, 0xE0, 0x1C, - 0xE3, 0x9C, 0x73, 0x9C, 0x7F, 0x87, 0xC0, 0x1C, 0x3C, 0x71, 0xC1, 0x8E, - 0x0E, 0x70, 0x3B, 0x80, 0xFC, 0x03, 0xF0, 0x0E, 0xE0, 0x73, 0x81, 0xC7, - 0x07, 0x1C, 0x18, 0x38, 0xE0, 0xF0, 0x1C, 0x07, 0x01, 0x80, 0xE0, 0x38, - 0x0E, 0x03, 0x80, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xFF, 0x7F, 0x80, 0x1E, - 0x1F, 0x1E, 0x1E, 0x3E, 0x1E, 0x3E, 0x3E, 0x36, 0x3E, 0x36, 0x6E, 0x36, - 0x6C, 0x76, 0xCC, 0x76, 0xDC, 0x67, 0x9C, 0x67, 0x98, 0xE7, 0x18, 0xE7, - 0x18, 0x1C, 0x1C, 0x70, 0x63, 0xE1, 0x8F, 0x8E, 0x3E, 0x38, 0xDC, 0xC3, - 0x33, 0x1C, 0xEC, 0x71, 0xF1, 0xC7, 0xC6, 0x1E, 0x18, 0x38, 0xE0, 0xE0, - 0x07, 0xC0, 0xFF, 0x8E, 0x1E, 0xE0, 0x77, 0x03, 0xF0, 0x1F, 0x80, 0xFC, - 0x07, 0xE0, 0x77, 0x03, 0xBC, 0x38, 0xFF, 0x81, 0xF0, 0x00, 0x1F, 0xF0, - 0xFF, 0xC6, 0x0E, 0x70, 0x73, 0x83, 0x9C, 0x38, 0xFF, 0x87, 0xF8, 0x70, - 0x03, 0x80, 0x1C, 0x00, 0xC0, 0x0E, 0x00, 0x00, 0x07, 0xC0, 0xFF, 0x8F, - 0x1C, 0xE0, 0x77, 0x03, 0xB0, 0x1F, 0x80, 0xFC, 0x06, 0xE1, 0x77, 0x1F, - 0x3C, 0x78, 0xFF, 0xC1, 0xF6, 0x00, 0x20, 0x1F, 0xF0, 0xFF, 0xC6, 0x0E, - 0x70, 0x73, 0x83, 0x9C, 0x38, 0xFF, 0x87, 0xFC, 0x70, 0x73, 0x83, 0x9C, - 0x38, 0xC1, 0xC6, 0x0F, 0x00, 0x07, 0xE0, 0xFF, 0xC7, 0x0E, 0x70, 0x73, - 0x80, 0x1F, 0x80, 0x7F, 0x80, 0x7E, 0x00, 0x77, 0x03, 0xBC, 0x38, 0xFF, - 0xC3, 0xF8, 0x00, 0xFF, 0xDF, 0xF8, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x06, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xC0, 0x18, 0x07, 0x00, 0x38, 0x31, 0xC1, - 0x8C, 0x1C, 0xE0, 0xE7, 0x07, 0x38, 0x31, 0xC3, 0x9C, 0x1C, 0xE0, 0xE7, - 0x06, 0x38, 0x70, 0xFF, 0x03, 0xE0, 0x00, 0xE0, 0xFC, 0x1D, 0x87, 0x30, - 0xC6, 0x38, 0xC6, 0x19, 0xC3, 0xB0, 0x7E, 0x0F, 0x80, 0xF0, 0x1C, 0x03, - 0x00, 0xE1, 0xC3, 0xF1, 0xE3, 0xB8, 0xF1, 0xDC, 0x78, 0xCE, 0x6C, 0xE7, - 0x36, 0x63, 0xB3, 0x70, 0xD9, 0xB0, 0x7C, 0xD8, 0x3C, 0x78, 0x1E, 0x3C, - 0x0E, 0x1C, 0x07, 0x0E, 0x00, 0x0E, 0x1C, 0x38, 0xE0, 0xE7, 0x01, 0xD8, - 0x07, 0xE0, 0x0F, 0x00, 0x38, 0x01, 0xE0, 0x0F, 0xC0, 0x77, 0x01, 0x8E, - 0x0E, 0x38, 0x70, 0xF0, 0xE0, 0xEE, 0x39, 0xC7, 0x39, 0xC3, 0x70, 0x7C, - 0x0F, 0x80, 0xE0, 0x1C, 0x03, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x3F, 0xF3, - 0xFF, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x3C, 0x07, - 0x80, 0x70, 0x0F, 0xFC, 0xFF, 0xC0, 0x0F, 0x0F, 0x0C, 0x1C, 0x18, 0x18, - 0x18, 0x18, 0x30, 0x30, 0x30, 0x30, 0x60, 0x60, 0x60, 0x78, 0x78, 0x12, - 0x4C, 0x92, 0x49, 0x26, 0xD9, 0x20, 0x1E, 0x1E, 0x06, 0x06, 0x06, 0x0C, - 0x0C, 0x0C, 0x0C, 0x18, 0x18, 0x18, 0x18, 0x38, 0x30, 0xF0, 0xF0, 0x06, - 0x0E, 0x0E, 0x1B, 0x33, 0x33, 0x63, 0x63, 0xFF, 0xE0, 0xCC, 0x1F, 0x8F, - 0xF3, 0x1C, 0x06, 0x1F, 0x9F, 0xEE, 0x3B, 0x9C, 0xFF, 0x1D, 0xC0, 0x18, - 0x03, 0x00, 0xE0, 0x1D, 0xC3, 0xFC, 0x71, 0xDC, 0x3B, 0x87, 0x70, 0xEE, - 0x39, 0xCF, 0x7F, 0xCF, 0xE0, 0x0F, 0x0F, 0xF7, 0x1D, 0xC0, 0xE0, 0x38, - 0x0E, 0x03, 0x8E, 0x7F, 0x0F, 0x80, 0x00, 0x60, 0x06, 0x00, 0x61, 0xEE, - 0x3F, 0xE7, 0x9C, 0x71, 0xCE, 0x1C, 0xE1, 0xCE, 0x1C, 0xE3, 0x87, 0xF8, - 0x7F, 0x80, 0x1F, 0x0F, 0xE7, 0x1D, 0xC7, 0xFF, 0xFF, 0xFE, 0x03, 0x8E, - 0x7F, 0x0F, 0x80, 0x1C, 0xF3, 0x3F, 0xFD, 0xC7, 0x18, 0x63, 0x8E, 0x30, - 0xC0, 0x0F, 0x71, 0xFE, 0x3C, 0xE3, 0x8E, 0x70, 0xE7, 0x0E, 0x70, 0xC7, - 0x1C, 0x3F, 0xC3, 0xFC, 0x01, 0xCE, 0x38, 0x7F, 0x03, 0xE0, 0x18, 0x03, - 0x00, 0xE0, 0x1D, 0xE3, 0xFE, 0x71, 0xCC, 0x3B, 0x86, 0x70, 0xCC, 0x39, - 0x87, 0x30, 0xEE, 0x18, 0x39, 0xC0, 0x63, 0x39, 0xCE, 0x63, 0x39, 0xCE, - 0x00, 0x06, 0x06, 0x00, 0x0E, 0x0E, 0x0C, 0x0C, 0x1C, 0x1C, 0x1C, 0x18, - 0x18, 0x38, 0x38, 0x30, 0x70, 0xE0, 0x18, 0x03, 0x00, 0xE0, 0x1C, 0xE3, - 0x38, 0x6E, 0x1F, 0x83, 0xF0, 0x7E, 0x0E, 0xE1, 0x9C, 0x73, 0x8E, 0x38, - 0x39, 0xCE, 0x63, 0x39, 0xCE, 0x63, 0x39, 0xCE, 0x00, 0x3B, 0x9E, 0x3F, - 0xFF, 0x39, 0xC7, 0x71, 0xC6, 0x71, 0x86, 0x71, 0x8E, 0x63, 0x8E, 0x63, - 0x8C, 0xE3, 0x8C, 0xE3, 0x1C, 0x3B, 0xC7, 0xFC, 0xE3, 0xB8, 0x77, 0x0C, - 0xE1, 0x98, 0x73, 0x0E, 0xE1, 0xDC, 0x30, 0x0F, 0x87, 0xF9, 0xE7, 0xB8, - 0x7E, 0x0F, 0xC1, 0xF8, 0x77, 0x9E, 0x7F, 0x87, 0xC0, 0x1D, 0xE1, 0xFE, - 0x1C, 0x73, 0x87, 0x38, 0x73, 0x87, 0x38, 0xE3, 0x8E, 0x7F, 0xC7, 0xF8, - 0x60, 0x06, 0x00, 0x60, 0x0E, 0x00, 0x1E, 0xE7, 0xFD, 0xE7, 0x38, 0xEE, - 0x1D, 0xC3, 0xB8, 0x77, 0x1C, 0x7F, 0x8F, 0xF0, 0x0E, 0x01, 0x80, 0x30, - 0x06, 0x00, 0x3B, 0x36, 0x38, 0x70, 0x70, 0x70, 0x60, 0x60, 0xE0, 0xE0, - 0x3E, 0x3F, 0xF8, 0xFC, 0x0F, 0xC3, 0xF8, 0x3D, 0x8E, 0xFE, 0x3E, 0x00, - 0x38, 0xCF, 0xFE, 0x71, 0x86, 0x38, 0xE3, 0x8F, 0x3C, 0x31, 0xDC, 0x77, - 0x19, 0x86, 0x63, 0xB8, 0xEE, 0x33, 0x9C, 0xFF, 0x1F, 0xC0, 0xE1, 0x98, - 0xE6, 0x31, 0x9C, 0x66, 0x1B, 0x86, 0xC1, 0xF0, 0x78, 0x0E, 0x00, 0xE7, - 0x1B, 0x9C, 0xEE, 0x73, 0x3B, 0xDC, 0xEB, 0x63, 0xAD, 0x8F, 0xBC, 0x1C, - 0xF0, 0x73, 0xC1, 0xCE, 0x00, 0x1C, 0xE1, 0xCC, 0x0D, 0x80, 0xF8, 0x0F, - 0x00, 0xF0, 0x1F, 0x03, 0xB8, 0x33, 0x87, 0x38, 0x70, 0xCE, 0x38, 0xC6, - 0x19, 0xC3, 0x30, 0x66, 0x0F, 0x81, 0xF0, 0x3C, 0x03, 0x80, 0x60, 0x18, - 0x0F, 0x01, 0xC0, 0x00, 0x1F, 0xCF, 0xF0, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0x7F, 0xBF, 0xE0, 0x0E, 0x38, 0x61, 0x83, 0x06, 0x0C, 0x78, - 0xF0, 0xC1, 0x83, 0x0E, 0x1C, 0x38, 0x78, 0x70, 0x18, 0xC4, 0x21, 0x18, - 0xC4, 0x21, 0x18, 0xC4, 0x23, 0x18, 0x80, 0x1C, 0x3C, 0x38, 0x70, 0xE1, - 0x83, 0x06, 0x1E, 0x5C, 0x60, 0xC1, 0x83, 0x0C, 0x38, 0xE0, 0x71, 0x8E}; - -const GFXglyph FreeSansBoldOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 5, 13, 6, 2, -12}, // 0x21 '!' - {9, 7, 5, 9, 3, -12}, // 0x22 '"' - {14, 11, 12, 10, 1, -11}, // 0x23 '#' - {31, 11, 16, 10, 1, -13}, // 0x24 '$' - {53, 14, 13, 16, 2, -12}, // 0x25 '%' - {76, 12, 13, 13, 2, -12}, // 0x26 '&' - {96, 3, 5, 4, 3, -12}, // 0x27 ''' - {98, 8, 17, 6, 2, -12}, // 0x28 '(' - {115, 8, 17, 6, -2, -13}, // 0x29 ')' - {132, 6, 6, 7, 3, -12}, // 0x2A '*' - {137, 9, 8, 11, 2, -7}, // 0x2B '+' - {146, 4, 6, 5, 0, -2}, // 0x2C ',' - {149, 5, 2, 6, 1, -5}, // 0x2D '-' - {151, 3, 2, 5, 1, -1}, // 0x2E '.' - {152, 8, 13, 5, 0, -12}, // 0x2F '/' - {165, 10, 13, 10, 1, -12}, // 0x30 '0' - {182, 7, 13, 10, 3, -12}, // 0x31 '1' - {194, 11, 13, 10, 1, -12}, // 0x32 '2' - {212, 11, 13, 10, 1, -12}, // 0x33 '3' - {230, 10, 12, 10, 1, -11}, // 0x34 '4' - {245, 11, 13, 10, 1, -12}, // 0x35 '5' - {263, 10, 13, 10, 2, -12}, // 0x36 '6' - {280, 10, 13, 10, 2, -12}, // 0x37 '7' - {297, 11, 13, 10, 1, -12}, // 0x38 '8' - {315, 11, 13, 10, 1, -12}, // 0x39 '9' - {333, 4, 9, 6, 2, -8}, // 0x3A ':' - {338, 5, 12, 6, 1, -8}, // 0x3B ';' - {346, 10, 9, 11, 1, -8}, // 0x3C '<' - {358, 10, 6, 11, 1, -6}, // 0x3D '=' - {366, 10, 9, 11, 1, -7}, // 0x3E '>' - {378, 10, 13, 11, 3, -12}, // 0x3F '?' - {395, 18, 16, 18, 1, -13}, // 0x40 '@' - {431, 13, 13, 13, 0, -12}, // 0x41 'A' - {453, 13, 13, 13, 1, -12}, // 0x42 'B' - {475, 13, 13, 13, 2, -12}, // 0x43 'C' - {497, 13, 13, 13, 1, -12}, // 0x44 'D' - {519, 13, 13, 12, 1, -12}, // 0x45 'E' - {541, 12, 13, 11, 1, -12}, // 0x46 'F' - {561, 12, 13, 14, 2, -12}, // 0x47 'G' - {581, 14, 13, 13, 1, -12}, // 0x48 'H' - {604, 5, 13, 5, 1, -12}, // 0x49 'I' - {613, 11, 13, 10, 1, -12}, // 0x4A 'J' - {631, 14, 13, 13, 1, -12}, // 0x4B 'K' - {654, 10, 13, 11, 1, -12}, // 0x4C 'L' - {671, 16, 13, 15, 1, -12}, // 0x4D 'M' - {697, 14, 13, 13, 1, -12}, // 0x4E 'N' - {720, 13, 13, 14, 2, -12}, // 0x4F 'O' - {742, 13, 13, 12, 1, -12}, // 0x50 'P' - {764, 13, 14, 14, 2, -12}, // 0x51 'Q' - {787, 13, 13, 13, 1, -12}, // 0x52 'R' - {809, 13, 13, 12, 1, -12}, // 0x53 'S' - {831, 11, 13, 11, 3, -12}, // 0x54 'T' - {849, 13, 13, 13, 2, -12}, // 0x55 'U' - {871, 11, 13, 12, 3, -12}, // 0x56 'V' - {889, 17, 13, 17, 3, -12}, // 0x57 'W' - {917, 14, 13, 12, 0, -12}, // 0x58 'X' - {940, 11, 13, 12, 3, -12}, // 0x59 'Y' - {958, 12, 13, 11, 1, -12}, // 0x5A 'Z' - {978, 8, 17, 6, 0, -12}, // 0x5B '[' - {995, 3, 17, 5, 2, -16}, // 0x5C '\' - {1002, 8, 17, 6, 0, -13}, // 0x5D ']' - {1019, 8, 8, 11, 2, -12}, // 0x5E '^' - {1027, 11, 1, 10, -1, 4}, // 0x5F '_' - {1029, 3, 2, 6, 3, -12}, // 0x60 '`' - {1030, 10, 10, 10, 1, -9}, // 0x61 'a' - {1043, 11, 13, 11, 1, -12}, // 0x62 'b' - {1061, 10, 10, 10, 1, -9}, // 0x63 'c' - {1074, 12, 13, 11, 1, -12}, // 0x64 'd' - {1094, 10, 10, 10, 1, -9}, // 0x65 'e' - {1107, 6, 13, 6, 2, -12}, // 0x66 'f' - {1117, 12, 14, 11, 0, -9}, // 0x67 'g' - {1138, 11, 13, 11, 1, -12}, // 0x68 'h' - {1156, 5, 13, 5, 1, -12}, // 0x69 'i' - {1165, 8, 17, 5, -1, -12}, // 0x6A 'j' - {1182, 11, 13, 10, 1, -12}, // 0x6B 'k' - {1200, 5, 13, 5, 1, -12}, // 0x6C 'l' - {1209, 16, 10, 16, 1, -9}, // 0x6D 'm' - {1229, 11, 10, 11, 1, -9}, // 0x6E 'n' - {1243, 11, 10, 11, 1, -9}, // 0x6F 'o' - {1257, 12, 14, 11, 0, -9}, // 0x70 'p' - {1278, 11, 14, 11, 1, -9}, // 0x71 'q' - {1298, 8, 10, 7, 1, -9}, // 0x72 'r' - {1308, 9, 10, 10, 2, -9}, // 0x73 's' - {1320, 6, 12, 6, 2, -11}, // 0x74 't' - {1329, 10, 10, 11, 2, -9}, // 0x75 'u' - {1342, 10, 10, 10, 2, -9}, // 0x76 'v' - {1355, 14, 10, 14, 2, -9}, // 0x77 'w' - {1373, 12, 10, 10, 0, -9}, // 0x78 'x' - {1388, 11, 14, 10, 1, -9}, // 0x79 'y' - {1408, 10, 10, 9, 0, -9}, // 0x7A 'z' - {1421, 7, 17, 7, 2, -12}, // 0x7B '{' - {1436, 5, 17, 5, 1, -12}, // 0x7C '|' - {1447, 7, 17, 7, 0, -13}, // 0x7D '}' - {1462, 8, 2, 11, 2, -4}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique9pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique9pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 2136 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h deleted file mode 100644 index ce55f4d..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h +++ /dev/null @@ -1,304 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique12pt7bBitmaps[] PROGMEM = { - 0x0C, 0x61, 0x86, 0x18, 0x63, 0x0C, 0x30, 0xC2, 0x18, 0x61, 0x00, 0x00, - 0xC3, 0x00, 0xCF, 0x3C, 0xE2, 0x8A, 0x20, 0x01, 0x8C, 0x03, 0x18, 0x06, - 0x60, 0x18, 0xC0, 0x31, 0x83, 0xFF, 0x87, 0xFF, 0x03, 0x18, 0x0C, 0x60, - 0x18, 0xC0, 0x23, 0x03, 0xFF, 0x8F, 0xFF, 0x02, 0x30, 0x0C, 0x60, 0x18, - 0x80, 0x63, 0x00, 0xC6, 0x00, 0x00, 0x80, 0x3F, 0x03, 0xFC, 0x32, 0x73, - 0x91, 0x99, 0x8C, 0xCC, 0x06, 0x60, 0x3E, 0x00, 0x7E, 0x01, 0xFC, 0x0C, - 0xEC, 0x43, 0x62, 0x1B, 0x11, 0x9D, 0x9C, 0x7F, 0xC1, 0xF8, 0x02, 0x00, - 0x10, 0x01, 0x80, 0x00, 0x00, 0x01, 0x83, 0xC0, 0x60, 0xFC, 0x18, 0x30, - 0xC2, 0x0C, 0x18, 0xC1, 0x83, 0x30, 0x38, 0xCC, 0x03, 0xF1, 0x00, 0x3C, - 0x40, 0x00, 0x18, 0xF0, 0x06, 0x3F, 0x01, 0x8C, 0x30, 0x23, 0x06, 0x0C, - 0x60, 0xC3, 0x0E, 0x30, 0xC0, 0xFC, 0x10, 0x0F, 0x00, 0x01, 0xE0, 0x3F, - 0x81, 0x8C, 0x18, 0x60, 0xC3, 0x06, 0x30, 0x1F, 0x00, 0xE0, 0x1F, 0x01, - 0xDC, 0xD8, 0x6D, 0x81, 0xEC, 0x0E, 0x60, 0x73, 0x87, 0xCF, 0xE6, 0x3E, - 0x38, 0xFE, 0xA0, 0x03, 0x06, 0x04, 0x0C, 0x18, 0x18, 0x30, 0x30, 0x60, - 0x60, 0x60, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x40, 0x60, - 0x60, 0x20, 0x04, 0x06, 0x06, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, - 0x03, 0x03, 0x06, 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x18, 0x30, 0x20, 0x60, - 0xC0, 0x0C, 0x0C, 0x49, 0x7F, 0x3C, 0x3C, 0x6C, 0x00, 0x03, 0x00, 0x30, - 0x03, 0x00, 0x30, 0xFF, 0xFF, 0xFF, 0x06, 0x00, 0x60, 0x06, 0x00, 0xC0, - 0x0C, 0x00, 0x77, 0x22, 0x6C, 0xFF, 0xF0, 0xFC, 0x00, 0x40, 0x30, 0x08, - 0x06, 0x01, 0x00, 0xC0, 0x20, 0x18, 0x04, 0x02, 0x00, 0x80, 0x40, 0x10, - 0x08, 0x02, 0x01, 0x00, 0xC0, 0x20, 0x00, 0x07, 0xC0, 0xFE, 0x1C, 0x73, - 0x83, 0x30, 0x36, 0x03, 0x60, 0x36, 0x03, 0xC0, 0x7C, 0x07, 0xC0, 0x6C, - 0x06, 0xC0, 0xEC, 0x0C, 0xE3, 0x87, 0xF0, 0x3E, 0x00, 0x02, 0x0C, 0x77, - 0xEF, 0xC1, 0x83, 0x0C, 0x18, 0x30, 0x61, 0xC3, 0x06, 0x0C, 0x18, 0x60, - 0x03, 0xF0, 0x1F, 0xE0, 0xE1, 0xC7, 0x03, 0x18, 0x0C, 0x00, 0x30, 0x01, - 0x80, 0x0E, 0x00, 0x70, 0x07, 0x80, 0x78, 0x07, 0x80, 0x38, 0x01, 0xC0, - 0x06, 0x00, 0x1F, 0xFC, 0xFF, 0xE0, 0x07, 0xC0, 0xFE, 0x1C, 0x73, 0x03, - 0x30, 0x30, 0x03, 0x00, 0xE0, 0x7C, 0x07, 0xC0, 0x0E, 0x00, 0x60, 0x06, - 0xC0, 0x6C, 0x0C, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x00, 0x60, 0x06, 0x00, - 0xE0, 0x1E, 0x03, 0xE0, 0x6C, 0x0C, 0xC1, 0x8C, 0x30, 0xC6, 0x1C, 0xC1, - 0x8F, 0xFF, 0xFF, 0xE0, 0x18, 0x03, 0x00, 0x30, 0x03, 0x00, 0x0F, 0xF8, - 0x7F, 0xC6, 0x00, 0x30, 0x01, 0x00, 0x1B, 0xC0, 0xFF, 0x06, 0x1C, 0x60, - 0x60, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x0C, 0x60, 0x63, 0x86, 0x0F, 0xE0, - 0x3E, 0x00, 0x03, 0xC0, 0xFE, 0x1C, 0x73, 0x83, 0x30, 0x06, 0x00, 0x67, - 0x87, 0xFC, 0xF0, 0xEE, 0x06, 0xC0, 0x6C, 0x06, 0xC0, 0x4C, 0x0C, 0xE1, - 0x87, 0xF8, 0x3E, 0x00, 0x3F, 0xFB, 0xFF, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, - 0x00, 0xC0, 0x06, 0x00, 0x60, 0x06, 0x00, 0x70, 0x03, 0x00, 0x30, 0x03, - 0x80, 0x18, 0x01, 0xC0, 0x0C, 0x00, 0xE0, 0x00, 0x07, 0xC0, 0xFE, 0x1C, - 0x73, 0x03, 0x30, 0x33, 0x03, 0x38, 0x61, 0xFC, 0x3F, 0xC7, 0x0E, 0x60, - 0x6C, 0x06, 0xC0, 0x6C, 0x0C, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x07, 0xC1, - 0xFE, 0x38, 0x73, 0x03, 0x60, 0x36, 0x03, 0x60, 0x36, 0x07, 0x70, 0xF3, - 0xFE, 0x1E, 0x60, 0x0E, 0x00, 0xCC, 0x1C, 0xE3, 0x87, 0xF0, 0x3C, 0x00, - 0x39, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x39, 0xC0, 0x1C, 0x70, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x07, 0x1C, 0x20, 0x86, 0x30, 0x00, 0x00, 0x01, 0xC0, - 0x3C, 0x0F, 0x81, 0xE0, 0x7C, 0x03, 0x80, 0x0F, 0x00, 0x1F, 0x00, 0x3E, - 0x00, 0x38, 0x00, 0x40, 0x7F, 0xFB, 0xFF, 0x80, 0x00, 0x00, 0x0F, 0xFF, - 0x7F, 0xF0, 0x20, 0x01, 0xC0, 0x07, 0xC0, 0x0F, 0x80, 0x0F, 0x00, 0x1C, - 0x03, 0xE0, 0x78, 0x1F, 0x03, 0xC0, 0x38, 0x00, 0x00, 0x00, 0x0F, 0x87, - 0xF9, 0xC3, 0xB0, 0x3C, 0x06, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x01, 0xC0, - 0x30, 0x0C, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x30, 0x06, 0x00, 0x00, - 0x3F, 0x80, 0x01, 0xFF, 0xE0, 0x0F, 0x01, 0xE0, 0x38, 0x00, 0xE0, 0xE0, - 0x00, 0xC3, 0x87, 0x81, 0xCE, 0x1F, 0xB1, 0x98, 0x71, 0xC3, 0x61, 0x83, - 0x86, 0xC6, 0x06, 0x0F, 0x0C, 0x0C, 0x3E, 0x30, 0x30, 0x6C, 0x60, 0x61, - 0xD8, 0xC1, 0x87, 0x31, 0xC7, 0x1C, 0x61, 0xF7, 0xF0, 0x63, 0xCF, 0x80, - 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x38, 0x00, 0x78, 0x00, 0x7C, 0x00, 0xFC, 0x00, 0xDC, 0x01, 0xCC, - 0x01, 0x8C, 0x03, 0x8C, 0x03, 0x0C, 0x06, 0x0C, 0x0E, 0x0E, 0x0F, 0xFE, - 0x1F, 0xFE, 0x18, 0x06, 0x38, 0x06, 0x30, 0x06, 0x70, 0x06, 0x60, 0x07, - 0x0F, 0xF8, 0x1F, 0xF8, 0x60, 0x38, 0xC0, 0x31, 0x80, 0x63, 0x00, 0xCE, - 0x03, 0x18, 0x0C, 0x3F, 0xF0, 0x7F, 0xF0, 0xC0, 0x73, 0x00, 0x66, 0x00, - 0xCC, 0x01, 0x98, 0x06, 0x70, 0x1C, 0xFF, 0xF1, 0xFF, 0x80, 0x01, 0xF8, - 0x07, 0xFE, 0x0E, 0x0E, 0x1C, 0x03, 0x38, 0x03, 0x30, 0x00, 0x60, 0x00, - 0x60, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x06, - 0xC0, 0x0C, 0xE0, 0x1C, 0x70, 0x78, 0x3F, 0xF0, 0x1F, 0x80, 0x0F, 0xF8, - 0x1F, 0xFC, 0x18, 0x0E, 0x18, 0x07, 0x18, 0x03, 0x18, 0x03, 0x38, 0x03, - 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x70, 0x06, 0x70, 0x06, 0x60, 0x0C, - 0x60, 0x0C, 0x60, 0x18, 0xE0, 0x78, 0xFF, 0xE0, 0xFF, 0x80, 0x0F, 0xFF, - 0x1F, 0xFE, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x38, 0x00, - 0x30, 0x00, 0x3F, 0xFC, 0x3F, 0xF8, 0x70, 0x00, 0x70, 0x00, 0x60, 0x00, - 0x60, 0x00, 0x60, 0x00, 0xE0, 0x00, 0xFF, 0xF8, 0xFF, 0xF8, 0x0F, 0xFE, - 0x3F, 0xFC, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x0E, 0x00, 0x18, - 0x00, 0x3F, 0xF0, 0x7F, 0xE1, 0xC0, 0x03, 0x80, 0x06, 0x00, 0x0C, 0x00, - 0x18, 0x00, 0x70, 0x00, 0xC0, 0x01, 0x80, 0x00, 0x01, 0xF8, 0x07, 0xFE, - 0x0E, 0x0F, 0x18, 0x03, 0x30, 0x03, 0x70, 0x00, 0x60, 0x00, 0x60, 0x00, - 0xC0, 0x7F, 0xC0, 0x7E, 0xC0, 0x02, 0xC0, 0x06, 0xC0, 0x06, 0xE0, 0x0E, - 0x60, 0x1E, 0x78, 0x3C, 0x3F, 0xE4, 0x0F, 0x84, 0x0C, 0x01, 0x8E, 0x00, - 0xC6, 0x00, 0xE3, 0x00, 0x61, 0x80, 0x30, 0xC0, 0x18, 0xE0, 0x0C, 0x60, - 0x0E, 0x3F, 0xFE, 0x1F, 0xFF, 0x1C, 0x01, 0x8E, 0x01, 0xC6, 0x00, 0xE3, - 0x00, 0x61, 0x80, 0x31, 0xC0, 0x18, 0xC0, 0x1C, 0x60, 0x0C, 0x00, 0x0C, - 0x71, 0x86, 0x18, 0x63, 0x8C, 0x30, 0xC3, 0x1C, 0x61, 0x86, 0x18, 0xE3, - 0x00, 0x00, 0x18, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x38, 0x01, - 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x38, 0x01, 0x8C, 0x0C, 0x60, 0x63, - 0x07, 0x1C, 0x70, 0x7F, 0x01, 0xF0, 0x00, 0x0C, 0x03, 0x87, 0x01, 0xC1, - 0x80, 0xE0, 0x60, 0x60, 0x18, 0x70, 0x06, 0x38, 0x03, 0x9C, 0x00, 0xCE, - 0x00, 0x37, 0x80, 0x0F, 0x70, 0x07, 0x8C, 0x01, 0xC3, 0x80, 0x60, 0x60, - 0x18, 0x1C, 0x06, 0x03, 0x03, 0x80, 0xE0, 0xC0, 0x18, 0x30, 0x07, 0x00, - 0x0C, 0x03, 0x80, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x0E, 0x01, 0x80, 0x30, - 0x06, 0x01, 0xC0, 0x38, 0x06, 0x00, 0xC0, 0x18, 0x07, 0x00, 0xFF, 0xFF, - 0xFC, 0x0E, 0x00, 0x71, 0xE0, 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x1E, 0x1E, - 0x01, 0xE1, 0xE0, 0x36, 0x3B, 0x03, 0x63, 0x30, 0x6E, 0x33, 0x0E, 0xC3, - 0x30, 0xCC, 0x33, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x31, 0xC6, 0x33, 0x18, - 0x61, 0xE1, 0x8E, 0x1E, 0x18, 0xC1, 0xC1, 0x8C, 0x1C, 0x38, 0x0C, 0x01, - 0x8F, 0x00, 0xC7, 0x80, 0x63, 0xE0, 0x71, 0xF0, 0x30, 0xD8, 0x18, 0xEE, - 0x0C, 0x63, 0x06, 0x31, 0xC7, 0x18, 0xE3, 0x0C, 0x31, 0x8C, 0x1C, 0xC6, - 0x06, 0x63, 0x03, 0xF1, 0x80, 0xF1, 0xC0, 0x78, 0xC0, 0x3C, 0x60, 0x0E, - 0x00, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0x83, 0xC3, 0x80, 0x63, 0x00, 0x3B, - 0x80, 0x0D, 0x80, 0x06, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0xF8, 0x00, 0x6C, 0x00, 0x36, 0x00, 0x31, 0x80, 0x30, 0xF0, 0x78, 0x3F, - 0xF0, 0x07, 0xE0, 0x00, 0x0F, 0xF8, 0x3F, 0xF8, 0x60, 0x38, 0xC0, 0x31, - 0x80, 0x63, 0x00, 0xCE, 0x03, 0x18, 0x0E, 0x3F, 0xF8, 0x7F, 0xE1, 0xC0, - 0x03, 0x80, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x70, 0x00, 0xC0, 0x01, - 0x80, 0x00, 0x00, 0xFC, 0x01, 0xFF, 0xC0, 0xF0, 0x78, 0x70, 0x06, 0x38, - 0x01, 0xCC, 0x00, 0x36, 0x00, 0x0D, 0x80, 0x03, 0xC0, 0x00, 0xF0, 0x00, - 0x3C, 0x00, 0x1B, 0x00, 0x06, 0xC0, 0x03, 0x38, 0x1D, 0xC6, 0x03, 0xE1, - 0xE0, 0xF0, 0x3F, 0xFE, 0x03, 0xF1, 0xC0, 0x00, 0x20, 0x0F, 0xFC, 0x1F, - 0xFE, 0x18, 0x07, 0x18, 0x03, 0x18, 0x03, 0x18, 0x03, 0x38, 0x06, 0x30, - 0x0C, 0x3F, 0xF8, 0x3F, 0xF8, 0x70, 0x1C, 0x70, 0x0C, 0x60, 0x0C, 0x60, - 0x0C, 0x60, 0x18, 0xE0, 0x18, 0xC0, 0x18, 0xC0, 0x1C, 0x03, 0xF8, 0x1F, - 0xF8, 0x70, 0x38, 0xC0, 0x33, 0x00, 0x66, 0x00, 0x0C, 0x00, 0x1E, 0x00, - 0x1F, 0xC0, 0x0F, 0xF0, 0x01, 0xF0, 0x00, 0xEC, 0x00, 0xD8, 0x01, 0xB0, - 0x06, 0x70, 0x38, 0x7F, 0xE0, 0x3F, 0x00, 0xFF, 0xFF, 0xFF, 0xF0, 0x70, - 0x01, 0xC0, 0x06, 0x00, 0x18, 0x00, 0x60, 0x03, 0x80, 0x0C, 0x00, 0x30, - 0x00, 0xC0, 0x03, 0x00, 0x1C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, 0x18, - 0x00, 0xE0, 0x00, 0x18, 0x03, 0x38, 0x03, 0x30, 0x07, 0x30, 0x06, 0x30, - 0x06, 0x70, 0x06, 0x70, 0x0E, 0x60, 0x0C, 0x60, 0x0C, 0x60, 0x0C, 0xE0, - 0x0C, 0xC0, 0x1C, 0xC0, 0x18, 0xC0, 0x18, 0xC0, 0x38, 0xE0, 0x70, 0x7F, - 0xE0, 0x1F, 0x80, 0xC0, 0x0F, 0xC0, 0x1B, 0x80, 0x73, 0x00, 0xC6, 0x03, - 0x0C, 0x06, 0x18, 0x18, 0x30, 0x70, 0x60, 0xC0, 0xE3, 0x81, 0xC6, 0x01, - 0x9C, 0x03, 0x30, 0x06, 0xE0, 0x0D, 0x80, 0x1E, 0x00, 0x3C, 0x00, 0x70, - 0x00, 0xC0, 0x70, 0x1F, 0x01, 0xC0, 0x6C, 0x0F, 0x03, 0xB0, 0x3C, 0x0C, - 0xC1, 0xF0, 0x73, 0x06, 0xC1, 0x8C, 0x3B, 0x06, 0x30, 0xC6, 0x30, 0xC7, - 0x18, 0xC3, 0x18, 0x67, 0x0C, 0xE1, 0x98, 0x33, 0x06, 0xE0, 0xDC, 0x1B, - 0x03, 0x60, 0x6C, 0x07, 0x81, 0xE0, 0x1C, 0x07, 0x80, 0x70, 0x1C, 0x01, - 0x80, 0x70, 0x00, 0x07, 0x00, 0xE0, 0xE0, 0x38, 0x0C, 0x0E, 0x01, 0xC3, - 0x80, 0x18, 0xE0, 0x03, 0x98, 0x00, 0x36, 0x00, 0x07, 0x80, 0x00, 0xF0, - 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x01, 0xDC, 0x00, 0x73, 0x80, 0x1C, 0x30, - 0x03, 0x07, 0x00, 0xC0, 0x60, 0x38, 0x0E, 0x0E, 0x00, 0xC0, 0xE0, 0x06, - 0x60, 0x0C, 0x70, 0x1C, 0x70, 0x38, 0x30, 0x70, 0x38, 0x60, 0x18, 0xC0, - 0x1D, 0xC0, 0x1F, 0x80, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x0F, 0xFF, - 0x87, 0xFF, 0x80, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, - 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, - 0xC0, 0x01, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xFF, 0xF8, 0x7F, 0xFC, - 0x00, 0x07, 0xC1, 0xE0, 0x60, 0x18, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x1C, - 0x06, 0x01, 0x80, 0x60, 0x18, 0x0E, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x06, - 0x01, 0x80, 0x60, 0x1E, 0x07, 0x80, 0x93, 0x6C, 0x92, 0x49, 0x24, 0xDB, - 0x24, 0x07, 0x81, 0xE0, 0x18, 0x06, 0x01, 0x80, 0xC0, 0x30, 0x0C, 0x03, - 0x01, 0xC0, 0x60, 0x18, 0x06, 0x01, 0x80, 0xE0, 0x30, 0x0C, 0x03, 0x00, - 0xC0, 0x60, 0x18, 0x1E, 0x0F, 0x80, 0x03, 0x01, 0xC0, 0xD8, 0x36, 0x19, - 0x84, 0x63, 0x19, 0x83, 0x60, 0xC0, 0xFF, 0xFC, 0xE6, 0x23, 0x07, 0xC3, - 0xFC, 0xE3, 0x98, 0x30, 0x06, 0x01, 0x87, 0xF3, 0xC6, 0xC0, 0xD8, 0x3B, - 0x0E, 0x7F, 0x77, 0xCC, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x30, 0x01, 0x80, - 0x0C, 0xF0, 0x7F, 0xC3, 0x87, 0x38, 0x19, 0x80, 0xCC, 0x06, 0x60, 0x32, - 0x03, 0xB0, 0x19, 0xC1, 0xCE, 0x1C, 0x7F, 0xC3, 0x7C, 0x00, 0x0F, 0x83, - 0xF8, 0xE3, 0xB8, 0x36, 0x07, 0xC0, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x1B, - 0x86, 0x3F, 0xC3, 0xE0, 0x00, 0x0C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, - 0x18, 0x3E, 0x61, 0xFF, 0x0E, 0x3C, 0x70, 0x71, 0x80, 0xCE, 0x07, 0x30, - 0x18, 0xC0, 0x63, 0x01, 0x8C, 0x0E, 0x38, 0x78, 0x7F, 0xC0, 0xFB, 0x00, - 0x07, 0xC1, 0xFE, 0x38, 0x77, 0x03, 0x60, 0x37, 0xFF, 0xFF, 0xFC, 0x00, - 0xC0, 0x0C, 0x06, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x07, 0x0F, 0x1C, 0x18, - 0x18, 0x7E, 0x7E, 0x30, 0x30, 0x30, 0x30, 0x60, 0x60, 0x60, 0x60, 0x60, - 0xC0, 0xC0, 0x03, 0xCC, 0x3F, 0xA1, 0xC7, 0x8E, 0x0E, 0x30, 0x38, 0xC0, - 0xC6, 0x03, 0x18, 0x0C, 0x60, 0x71, 0x81, 0xC7, 0x0E, 0x0F, 0xF8, 0x1E, - 0x60, 0x03, 0x80, 0x0C, 0x30, 0x70, 0x7F, 0x80, 0xF8, 0x00, 0x0C, 0x00, - 0xC0, 0x0C, 0x01, 0x80, 0x18, 0x01, 0x9E, 0x1F, 0xF1, 0xC7, 0x38, 0x33, - 0x03, 0x30, 0x33, 0x07, 0x30, 0x66, 0x06, 0x60, 0x66, 0x06, 0x60, 0xC6, - 0x0C, 0x18, 0xC0, 0x00, 0x18, 0xC6, 0x33, 0x18, 0xC6, 0x31, 0x98, 0xC6, - 0x00, 0x01, 0x80, 0xC0, 0x00, 0x00, 0x00, 0x18, 0x1C, 0x0C, 0x06, 0x03, - 0x01, 0x81, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x18, 0x0C, 0x06, 0x03, 0x03, - 0x87, 0x83, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x30, 0x01, 0x80, 0x0C, - 0x18, 0x61, 0x83, 0x38, 0x33, 0x81, 0xB8, 0x0F, 0xC0, 0x77, 0x03, 0x18, - 0x30, 0xC1, 0x87, 0x0C, 0x18, 0x60, 0xE3, 0x03, 0x00, 0x18, 0xC6, 0x63, - 0x18, 0xC6, 0x33, 0x18, 0xC6, 0x31, 0x98, 0xC6, 0x00, 0x1B, 0xE3, 0xC3, - 0xFD, 0xFC, 0xF1, 0xE1, 0x9C, 0x18, 0x33, 0x03, 0x06, 0x60, 0xC0, 0xCC, - 0x18, 0x3B, 0x83, 0x06, 0x60, 0x60, 0xCC, 0x0C, 0x19, 0x83, 0x03, 0x30, - 0x60, 0xE6, 0x0C, 0x18, 0x1B, 0xE1, 0xFF, 0x3C, 0x73, 0x83, 0x30, 0x33, - 0x03, 0x30, 0x77, 0x06, 0x60, 0x66, 0x06, 0x60, 0x66, 0x0C, 0x60, 0xC0, - 0x07, 0xC1, 0xFE, 0x38, 0x77, 0x03, 0x60, 0x3E, 0x03, 0xC0, 0x3C, 0x06, - 0xC0, 0x6C, 0x0E, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x0C, 0xF0, 0x3F, 0xE0, - 0xE1, 0xC7, 0x03, 0x1C, 0x0C, 0x60, 0x31, 0x80, 0xCE, 0x07, 0x38, 0x18, - 0xE0, 0xE3, 0xC7, 0x0F, 0xF8, 0x77, 0xC1, 0x80, 0x06, 0x00, 0x18, 0x00, - 0x60, 0x03, 0x80, 0x00, 0x0F, 0x98, 0xFF, 0xCE, 0x3C, 0xE0, 0xE6, 0x03, - 0x70, 0x1B, 0x01, 0x98, 0x0C, 0xC0, 0x66, 0x07, 0x38, 0x78, 0xFF, 0x83, - 0xCC, 0x00, 0x60, 0x07, 0x00, 0x38, 0x01, 0x80, 0x0C, 0x00, 0x1B, 0x8F, - 0xCF, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xE0, 0x60, 0x30, 0x18, 0x0C, 0x06, - 0x00, 0x0F, 0xC1, 0xFF, 0x30, 0x76, 0x03, 0x60, 0x07, 0x80, 0x3F, 0x80, - 0x7E, 0x00, 0x6C, 0x06, 0xE0, 0xCF, 0xF8, 0x3E, 0x00, 0x18, 0x30, 0x67, - 0xEF, 0xC6, 0x0C, 0x30, 0x60, 0xC1, 0x83, 0x0C, 0x18, 0x3C, 0x38, 0x30, - 0x33, 0x03, 0x30, 0x37, 0x06, 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, 0xC0, - 0xEC, 0x0C, 0xC3, 0xCF, 0xFC, 0x7C, 0xC0, 0xC0, 0x78, 0x1B, 0x03, 0x60, - 0xC6, 0x18, 0xC6, 0x19, 0xC3, 0x30, 0x6C, 0x0D, 0x81, 0xE0, 0x3C, 0x03, - 0x00, 0xC1, 0xC3, 0xE1, 0xE1, 0xB0, 0xF0, 0xD8, 0x78, 0xCC, 0x6C, 0x66, - 0x36, 0x63, 0x33, 0x30, 0x99, 0xB0, 0x58, 0xD8, 0x2C, 0x78, 0x1C, 0x3C, - 0x0E, 0x1C, 0x06, 0x0E, 0x00, 0x0C, 0x1C, 0x30, 0xE0, 0xE3, 0x01, 0x98, - 0x07, 0xC0, 0x0E, 0x00, 0x30, 0x01, 0xE0, 0x0F, 0x80, 0x73, 0x01, 0x8C, - 0x0C, 0x38, 0x60, 0x60, 0x18, 0x0C, 0x60, 0x61, 0x83, 0x86, 0x0C, 0x1C, - 0x60, 0x31, 0x80, 0xCC, 0x03, 0x30, 0x0D, 0x80, 0x36, 0x00, 0xF0, 0x03, - 0x80, 0x06, 0x00, 0x30, 0x00, 0xC0, 0x06, 0x00, 0xF0, 0x03, 0x80, 0x00, - 0x1F, 0xF1, 0xFF, 0x00, 0x70, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, - 0x18, 0x03, 0x00, 0x60, 0x0F, 0xFC, 0xFF, 0xC0, 0x07, 0x0E, 0x18, 0x18, - 0x18, 0x18, 0x30, 0x30, 0x30, 0x30, 0x60, 0xE0, 0xE0, 0x60, 0x60, 0x60, - 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xF0, 0x60, 0x0C, 0x30, 0x82, 0x08, 0x61, - 0x84, 0x10, 0x43, 0x0C, 0x20, 0x86, 0x18, 0x41, 0x04, 0x30, 0xC2, 0x00, - 0x00, 0x06, 0x07, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, - 0x01, 0xC0, 0xE0, 0x60, 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, 0x01, - 0x83, 0x83, 0x80, 0x38, 0x0F, 0x82, 0x38, 0x83, 0xE0, 0x38}; - -const GFXglyph FreeSansOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 7, 0, 1}, // 0x20 ' ' - {0, 6, 18, 7, 3, -17}, // 0x21 '!' - {14, 6, 6, 9, 4, -16}, // 0x22 '"' - {19, 15, 18, 13, 1, -17}, // 0x23 '#' - {53, 13, 21, 13, 2, -17}, // 0x24 '$' - {88, 19, 17, 21, 3, -16}, // 0x25 '%' - {129, 13, 17, 16, 2, -16}, // 0x26 '&' - {157, 2, 6, 5, 4, -16}, // 0x27 ''' - {159, 8, 23, 8, 3, -17}, // 0x28 '(' - {182, 8, 23, 8, 0, -16}, // 0x29 ')' - {205, 8, 8, 9, 4, -17}, // 0x2A '*' - {213, 12, 11, 14, 2, -10}, // 0x2B '+' - {230, 4, 6, 7, 1, -1}, // 0x2C ',' - {233, 6, 2, 8, 2, -7}, // 0x2D '-' - {235, 3, 2, 7, 2, -1}, // 0x2E '.' - {236, 10, 18, 7, 0, -17}, // 0x2F '/' - {259, 12, 17, 13, 2, -16}, // 0x30 '0' - {285, 7, 17, 13, 5, -16}, // 0x31 '1' - {300, 14, 17, 13, 1, -16}, // 0x32 '2' - {330, 12, 17, 13, 2, -16}, // 0x33 '3' - {356, 12, 17, 13, 2, -16}, // 0x34 '4' - {382, 13, 17, 13, 2, -16}, // 0x35 '5' - {410, 12, 17, 13, 2, -16}, // 0x36 '6' - {436, 13, 17, 13, 3, -16}, // 0x37 '7' - {464, 12, 17, 13, 2, -16}, // 0x38 '8' - {490, 12, 17, 13, 2, -16}, // 0x39 '9' - {516, 5, 12, 7, 3, -11}, // 0x3A ':' - {524, 6, 16, 7, 2, -11}, // 0x3B ';' - {536, 13, 12, 14, 2, -11}, // 0x3C '<' - {556, 13, 6, 14, 2, -8}, // 0x3D '=' - {566, 13, 12, 14, 1, -10}, // 0x3E '>' - {586, 11, 18, 13, 4, -17}, // 0x3F '?' - {611, 23, 21, 24, 2, -17}, // 0x40 '@' - {672, 16, 18, 16, 0, -17}, // 0x41 'A' - {708, 15, 18, 16, 2, -17}, // 0x42 'B' - {742, 16, 18, 17, 2, -17}, // 0x43 'C' - {778, 16, 18, 17, 2, -17}, // 0x44 'D' - {814, 16, 18, 16, 2, -17}, // 0x45 'E' - {850, 15, 18, 14, 2, -17}, // 0x46 'F' - {884, 16, 18, 19, 3, -17}, // 0x47 'G' - {920, 17, 18, 17, 2, -17}, // 0x48 'H' - {959, 6, 18, 7, 2, -17}, // 0x49 'I' - {973, 13, 18, 12, 1, -17}, // 0x4A 'J' - {1003, 18, 18, 16, 2, -17}, // 0x4B 'K' - {1044, 11, 18, 13, 2, -17}, // 0x4C 'L' - {1069, 20, 18, 20, 2, -17}, // 0x4D 'M' - {1114, 17, 18, 18, 2, -17}, // 0x4E 'N' - {1153, 17, 18, 18, 2, -17}, // 0x4F 'O' - {1192, 15, 18, 15, 2, -17}, // 0x50 'P' - {1226, 18, 19, 19, 2, -17}, // 0x51 'Q' - {1269, 16, 18, 17, 2, -17}, // 0x52 'R' - {1305, 15, 18, 16, 2, -17}, // 0x53 'S' - {1339, 14, 18, 15, 4, -17}, // 0x54 'T' - {1371, 16, 18, 17, 3, -17}, // 0x55 'U' - {1407, 15, 18, 15, 4, -17}, // 0x56 'V' - {1441, 22, 18, 22, 4, -17}, // 0x57 'W' - {1491, 19, 18, 16, 0, -17}, // 0x58 'X' - {1534, 16, 18, 16, 4, -17}, // 0x59 'Y' - {1570, 17, 18, 15, 1, -17}, // 0x5A 'Z' - {1609, 10, 23, 7, 0, -17}, // 0x5B '[' - {1638, 3, 18, 7, 4, -17}, // 0x5C '\' - {1645, 10, 23, 7, -1, -16}, // 0x5D ']' - {1674, 10, 9, 11, 2, -16}, // 0x5E '^' - {1686, 14, 1, 13, -1, 4}, // 0x5F '_' - {1688, 4, 4, 8, 4, -17}, // 0x60 '`' - {1690, 11, 13, 13, 2, -12}, // 0x61 'a' - {1708, 13, 18, 13, 1, -17}, // 0x62 'b' - {1738, 11, 13, 12, 2, -12}, // 0x63 'c' - {1756, 14, 18, 13, 2, -17}, // 0x64 'd' - {1788, 12, 13, 13, 2, -12}, // 0x65 'e' - {1808, 8, 18, 6, 2, -17}, // 0x66 'f' - {1826, 14, 18, 13, 1, -12}, // 0x67 'g' - {1858, 12, 18, 13, 1, -17}, // 0x68 'h' - {1885, 5, 18, 5, 2, -17}, // 0x69 'i' - {1897, 9, 23, 6, -1, -17}, // 0x6A 'j' - {1923, 13, 18, 12, 1, -17}, // 0x6B 'k' - {1953, 5, 18, 5, 2, -17}, // 0x6C 'l' - {1965, 19, 13, 20, 1, -12}, // 0x6D 'm' - {1996, 12, 13, 13, 1, -12}, // 0x6E 'n' - {2016, 12, 13, 13, 2, -12}, // 0x6F 'o' - {2036, 14, 18, 14, 0, -12}, // 0x70 'p' - {2068, 13, 18, 13, 2, -12}, // 0x71 'q' - {2098, 9, 13, 8, 1, -12}, // 0x72 'r' - {2113, 12, 13, 12, 1, -12}, // 0x73 's' - {2133, 7, 16, 6, 2, -15}, // 0x74 't' - {2147, 12, 13, 13, 2, -12}, // 0x75 'u' - {2167, 11, 13, 12, 3, -12}, // 0x76 'v' - {2185, 17, 13, 17, 3, -12}, // 0x77 'w' - {2213, 14, 13, 12, 0, -12}, // 0x78 'x' - {2236, 14, 18, 11, 0, -12}, // 0x79 'y' - {2268, 12, 13, 12, 1, -12}, // 0x7A 'z' - {2288, 8, 23, 8, 3, -17}, // 0x7B '{' - {2311, 6, 23, 6, 1, -17}, // 0x7C '|' - {2329, 9, 23, 8, -1, -16}, // 0x7D '}' - {2355, 11, 5, 14, 3, -10}}; // 0x7E '~' - -const GFXfont FreeSansOblique12pt7b PROGMEM = { - (uint8_t *)FreeSansOblique12pt7bBitmaps, - (GFXglyph *)FreeSansOblique12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 3034 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h deleted file mode 100644 index f85b07f..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h +++ /dev/null @@ -1,520 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique18pt7bBitmaps[] PROGMEM = { - 0x03, 0x83, 0x81, 0xC0, 0xE0, 0x70, 0x78, 0x38, 0x1C, 0x0E, 0x07, 0x07, - 0x83, 0x81, 0xC0, 0xE0, 0x60, 0x30, 0x30, 0x18, 0x0C, 0x04, 0x00, 0x00, - 0x01, 0xC0, 0xE0, 0x70, 0x78, 0x00, 0x71, 0xDC, 0x7F, 0x3F, 0x8E, 0xE3, - 0xB8, 0xEC, 0x33, 0x0C, 0xC3, 0x00, 0x00, 0x38, 0x70, 0x01, 0xC3, 0x80, - 0x0C, 0x18, 0x00, 0xE1, 0xC0, 0x06, 0x0C, 0x00, 0x70, 0xE0, 0x03, 0x87, - 0x03, 0xFF, 0xFF, 0x1F, 0xFF, 0xF0, 0xFF, 0xFF, 0x80, 0x60, 0xC0, 0x07, - 0x0E, 0x00, 0x30, 0x60, 0x03, 0x87, 0x00, 0x18, 0x30, 0x1F, 0xFF, 0xF8, - 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x07, 0x0E, 0x00, 0x30, 0x70, 0x03, 0x87, - 0x00, 0x1C, 0x38, 0x00, 0xC1, 0x80, 0x0E, 0x1C, 0x00, 0x60, 0xC0, 0x00, - 0x00, 0x0C, 0x00, 0x07, 0xF8, 0x01, 0xFF, 0xC0, 0x3F, 0xFE, 0x07, 0x99, - 0xF0, 0xF1, 0x87, 0x0E, 0x18, 0x71, 0xC1, 0x87, 0x1C, 0x38, 0x01, 0xC3, - 0x00, 0x1C, 0x30, 0x01, 0xE3, 0x00, 0x0F, 0xB0, 0x00, 0xFF, 0x80, 0x03, - 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x6F, 0xC0, 0x06, 0x3C, 0x00, 0xC1, 0xCE, - 0x0C, 0x1C, 0xE0, 0xC1, 0xCE, 0x0C, 0x38, 0xF1, 0xC3, 0x8F, 0x98, 0xF0, - 0x7F, 0xFE, 0x03, 0xFF, 0xC0, 0x0F, 0xF0, 0x00, 0x30, 0x00, 0x03, 0x00, - 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x07, 0x03, 0xE0, 0x03, - 0x81, 0xFC, 0x00, 0xC0, 0xFF, 0x00, 0x60, 0x70, 0xE0, 0x38, 0x38, 0x18, - 0x1C, 0x0C, 0x06, 0x0E, 0x03, 0x01, 0x83, 0x00, 0xC0, 0xE1, 0x80, 0x38, - 0x70, 0xE0, 0x0F, 0xF8, 0x70, 0x01, 0xFC, 0x18, 0x00, 0x3E, 0x0C, 0x00, - 0x00, 0x06, 0x07, 0x80, 0x03, 0x87, 0xF8, 0x00, 0xC3, 0xFE, 0x00, 0x61, - 0xE1, 0xC0, 0x30, 0x60, 0x30, 0x1C, 0x30, 0x0C, 0x0E, 0x0C, 0x03, 0x03, - 0x03, 0x01, 0x81, 0x80, 0xE1, 0xE0, 0xC0, 0x1F, 0xF0, 0x70, 0x07, 0xF8, - 0x18, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x07, 0xF8, 0x00, 0xFF, 0xC0, - 0x1E, 0x3C, 0x03, 0xC1, 0xC0, 0x38, 0x1C, 0x03, 0x81, 0xC0, 0x38, 0x38, - 0x03, 0xC7, 0x00, 0x1D, 0xE0, 0x01, 0xFC, 0x00, 0x1F, 0x00, 0x07, 0xF0, - 0x01, 0xF7, 0x87, 0x3C, 0x3C, 0xE7, 0x81, 0xCE, 0x70, 0x1F, 0xCE, 0x00, - 0xFC, 0xE0, 0x07, 0x8E, 0x00, 0x78, 0xF0, 0x1F, 0x8F, 0x87, 0xFC, 0x7F, - 0xF9, 0xC3, 0xFE, 0x1E, 0x1F, 0x80, 0xE0, 0x77, 0xFE, 0xEE, 0xCC, 0xC0, - 0x00, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x80, 0x30, 0x06, 0x00, 0xE0, - 0x0C, 0x01, 0xC0, 0x18, 0x03, 0x80, 0x38, 0x07, 0x00, 0x70, 0x07, 0x00, - 0x70, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, - 0xE0, 0x0E, 0x00, 0xE0, 0x06, 0x00, 0x70, 0x07, 0x00, 0x30, 0x03, 0x00, - 0x18, 0x00, 0x01, 0x80, 0x0C, 0x00, 0xC0, 0x0E, 0x00, 0xE0, 0x06, 0x00, - 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, - 0x70, 0x07, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x03, - 0x80, 0x38, 0x03, 0x00, 0x70, 0x06, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x00, 0x06, 0x01, 0x84, 0x47, 0xF7, 0xFF, 0xCF, 0xC1, - 0xE0, 0xD8, 0x67, 0x18, 0xC0, 0x00, 0x70, 0x00, 0x1C, 0x00, 0x0F, 0x00, - 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0x70, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0xE0, - 0x00, 0x38, 0x00, 0x0E, 0x00, 0x3B, 0xDC, 0x21, 0x18, 0x98, 0xFF, 0xFF, - 0xFF, 0xE0, 0x7F, 0xFE, 0x00, 0x06, 0x00, 0x18, 0x00, 0x30, 0x00, 0xC0, - 0x01, 0x80, 0x06, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x60, 0x01, 0x80, 0x03, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x00, 0x06, 0x00, - 0x18, 0x00, 0x20, 0x00, 0xC0, 0x03, 0x00, 0x06, 0x00, 0x18, 0x00, 0x30, - 0x00, 0xC0, 0x01, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x7F, 0xC0, 0x7F, 0xF8, - 0x3E, 0x1E, 0x0F, 0x03, 0xC7, 0x80, 0x71, 0xC0, 0x1C, 0xE0, 0x07, 0x38, - 0x01, 0xDE, 0x00, 0x77, 0x00, 0x1D, 0xC0, 0x0F, 0x70, 0x03, 0xFC, 0x00, - 0xEE, 0x00, 0x3B, 0x80, 0x0E, 0xE0, 0x07, 0xB8, 0x01, 0xCE, 0x00, 0xF3, - 0x80, 0x38, 0xF0, 0x1E, 0x1E, 0x1F, 0x07, 0xFF, 0x80, 0xFF, 0xC0, 0x0F, - 0x80, 0x00, 0x00, 0xC0, 0x70, 0x3C, 0x3E, 0xFF, 0xBF, 0xEF, 0xF8, 0x1E, - 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x0F, 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x07, - 0x81, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xC0, 0xE0, 0x38, 0x00, 0x00, 0x3F, - 0x00, 0x0F, 0xFC, 0x03, 0xFF, 0xE0, 0x7C, 0x1E, 0x07, 0x80, 0xF0, 0xF0, - 0x07, 0x0E, 0x00, 0x70, 0xE0, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, - 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x03, 0xF0, 0x00, 0xFC, 0x00, - 0x1F, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0x80, 0x00, - 0x70, 0x00, 0x07, 0x00, 0x00, 0xFF, 0xFF, 0x8F, 0xFF, 0xF0, 0xFF, 0xFF, - 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x03, 0xC1, 0xF0, 0x70, - 0x0E, 0x1C, 0x01, 0xC3, 0x80, 0x38, 0xE0, 0x07, 0x00, 0x01, 0xC0, 0x00, - 0xF0, 0x03, 0xFC, 0x00, 0x7F, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0x00, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x9C, 0x00, 0x73, 0x80, 0x1E, 0x70, 0x03, - 0x8F, 0x00, 0xF1, 0xF0, 0x7C, 0x1F, 0xFF, 0x01, 0xFF, 0xC0, 0x0F, 0xC0, - 0x00, 0x00, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x1F, - 0x80, 0x0F, 0xE0, 0x07, 0xF0, 0x03, 0xDC, 0x01, 0xE7, 0x00, 0x71, 0xC0, - 0x38, 0xF0, 0x1C, 0x38, 0x0E, 0x0E, 0x07, 0x03, 0x83, 0x80, 0xE1, 0xC0, - 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x70, 0x00, 0x38, - 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x01, 0xFF, - 0xF0, 0x3F, 0xFF, 0x03, 0xFF, 0xE0, 0x78, 0x00, 0x07, 0x00, 0x00, 0x70, - 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0xFC, 0x01, 0xFF, 0xF0, 0x1F, - 0xFF, 0x83, 0xE0, 0x78, 0x3C, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, - 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x8E, 0x00, 0x78, - 0xE0, 0x0F, 0x0F, 0x81, 0xE0, 0x7F, 0xFC, 0x03, 0xFF, 0x80, 0x0F, 0xE0, - 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x03, 0xE1, 0xF0, 0xF0, - 0x0E, 0x1C, 0x01, 0xC7, 0x00, 0x01, 0xE0, 0x00, 0x38, 0x00, 0x07, 0x1F, - 0x01, 0xCF, 0xF8, 0x3B, 0xFF, 0x87, 0xE0, 0xF8, 0xF0, 0x0F, 0x3C, 0x00, - 0xE7, 0x80, 0x1C, 0xE0, 0x03, 0x9C, 0x00, 0x73, 0x80, 0x1C, 0x70, 0x03, - 0x8F, 0x00, 0xE0, 0xF0, 0x78, 0x1F, 0xFF, 0x01, 0xFF, 0x80, 0x0F, 0xC0, - 0x00, 0x3F, 0xFF, 0xCF, 0xFF, 0xF7, 0xFF, 0xFC, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, - 0x0E, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x1C, - 0x00, 0x0E, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xF0, 0x00, 0x38, 0x00, - 0x1E, 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x7E, - 0x00, 0x3F, 0xF0, 0x1F, 0xFF, 0x07, 0xC1, 0xF0, 0xE0, 0x0E, 0x38, 0x01, - 0xC7, 0x00, 0x38, 0xE0, 0x0E, 0x1C, 0x01, 0xC3, 0xC0, 0xF0, 0x3F, 0xFC, - 0x03, 0xFE, 0x01, 0xFF, 0xF0, 0x7C, 0x1E, 0x1E, 0x01, 0xE3, 0x80, 0x1C, - 0xE0, 0x03, 0x9C, 0x00, 0x73, 0x80, 0x0E, 0x70, 0x03, 0x8F, 0x00, 0xF1, - 0xF0, 0x7C, 0x1F, 0xFF, 0x01, 0xFF, 0xC0, 0x0F, 0xC0, 0x00, 0x00, 0x7E, - 0x00, 0x3F, 0xF0, 0x1F, 0xFF, 0x07, 0xC1, 0xE0, 0xE0, 0x1E, 0x38, 0x01, - 0xC7, 0x00, 0x39, 0xC0, 0x07, 0x38, 0x00, 0xE7, 0x00, 0x3C, 0xE0, 0x07, - 0x9E, 0x01, 0xE3, 0xE0, 0xFC, 0x3F, 0xFB, 0x83, 0xFE, 0xF0, 0x3F, 0x1C, - 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x1C, 0x70, 0x07, 0x8E, 0x01, 0xE1, - 0xE0, 0xF8, 0x1F, 0xFE, 0x01, 0xFF, 0x80, 0x0F, 0xC0, 0x00, 0x0E, 0x3C, - 0x78, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, - 0xF1, 0xE3, 0x80, 0x07, 0x0F, 0x0F, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x78, 0x70, 0x10, 0x10, - 0x30, 0x20, 0xC0, 0x00, 0x00, 0x20, 0x00, 0x1C, 0x00, 0x1F, 0x80, 0x1F, - 0xC0, 0x0F, 0xC0, 0x0F, 0xE0, 0x07, 0xE0, 0x03, 0xF0, 0x00, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, - 0x00, 0x0F, 0xC0, 0x00, 0x78, 0x00, 0x01, 0x00, 0x7F, 0xFF, 0xDF, 0xFF, - 0xF7, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFB, - 0xFF, 0xFE, 0xFF, 0xFF, 0x80, 0x10, 0x00, 0x03, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, - 0x00, 0x01, 0xE0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0x7E, 0x00, - 0x7F, 0x00, 0x3F, 0x00, 0x07, 0x00, 0x00, 0x80, 0x00, 0x00, 0x03, 0xF8, - 0x0F, 0xFC, 0x1F, 0xFE, 0x3C, 0x1F, 0x78, 0x07, 0x70, 0x07, 0xE0, 0x07, - 0xE0, 0x07, 0x00, 0x0E, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, - 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, - 0x3C, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x07, - 0xFF, 0xFE, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x0F, 0x80, 0x03, 0xE0, 0x0F, - 0x00, 0x00, 0xF8, 0x0F, 0x00, 0x00, 0x3C, 0x0F, 0x01, 0xF0, 0x0F, 0x0F, - 0x03, 0xFD, 0xC7, 0x8F, 0x03, 0xFE, 0xE1, 0xC7, 0x03, 0xC3, 0x60, 0xE7, - 0x03, 0xC0, 0xF0, 0x77, 0x83, 0xC0, 0x70, 0x3B, 0x83, 0xC0, 0x78, 0x1D, - 0xC1, 0xC0, 0x38, 0x1F, 0xC1, 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x1C, 0x0F, - 0x70, 0x70, 0x0E, 0x07, 0x38, 0x38, 0x0E, 0x07, 0x9C, 0x1C, 0x0F, 0x07, - 0x8E, 0x0F, 0x0F, 0x8F, 0x87, 0x03, 0xFD, 0xFF, 0x83, 0xC1, 0xFC, 0xFF, - 0x80, 0xE0, 0x7C, 0x3F, 0x00, 0x78, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x00, 0x07, 0x80, 0x00, 0x00, 0x01, 0xF8, 0x07, 0x00, 0x00, 0x7F, 0xFF, - 0x80, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x01, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0xFF, - 0x00, 0x01, 0xDE, 0x00, 0x07, 0x9C, 0x00, 0x0E, 0x38, 0x00, 0x3C, 0x70, - 0x00, 0x70, 0xF0, 0x01, 0xC1, 0xE0, 0x07, 0x83, 0xC0, 0x0E, 0x07, 0x80, - 0x38, 0x07, 0x00, 0x70, 0x0E, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFC, 0x0F, - 0xFF, 0xF8, 0x1C, 0x00, 0xF0, 0x70, 0x01, 0xE1, 0xE0, 0x01, 0xC3, 0x80, - 0x03, 0x8F, 0x00, 0x07, 0x1C, 0x00, 0x0E, 0x78, 0x00, 0x1E, 0xE0, 0x00, - 0x3C, 0x07, 0xFF, 0xC0, 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x0E, 0x00, 0xF0, - 0xF0, 0x03, 0x87, 0x00, 0x1C, 0x38, 0x00, 0xE1, 0xC0, 0x07, 0x0E, 0x00, - 0x70, 0xF0, 0x03, 0x87, 0x00, 0x78, 0x3F, 0xFF, 0x81, 0xFF, 0xF8, 0x0F, - 0xFF, 0xF0, 0xE0, 0x03, 0xC7, 0x00, 0x0E, 0x38, 0x00, 0x71, 0xC0, 0x03, - 0x9E, 0x00, 0x1C, 0xE0, 0x00, 0xE7, 0x00, 0x0E, 0x38, 0x00, 0xF1, 0xC0, - 0x0F, 0x1F, 0xFF, 0xF0, 0xFF, 0xFF, 0x07, 0xFF, 0xE0, 0x00, 0x00, 0x1F, - 0x80, 0x03, 0xFF, 0x80, 0x1F, 0xFF, 0x01, 0xF8, 0x3E, 0x07, 0x80, 0x38, - 0x38, 0x00, 0xF1, 0xC0, 0x01, 0xCF, 0x00, 0x07, 0x38, 0x00, 0x01, 0xE0, - 0x00, 0x07, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, - 0x0E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x7B, 0x80, 0x01, 0xCE, - 0x00, 0x0F, 0x3C, 0x00, 0x38, 0x70, 0x01, 0xE1, 0xE0, 0x0F, 0x07, 0xC0, - 0xF8, 0x0F, 0xFF, 0xC0, 0x1F, 0xFC, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xFF, - 0xC0, 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, 0xE0, 0x38, 0x03, 0xE0, 0xF0, 0x03, - 0xC1, 0xC0, 0x03, 0x83, 0x80, 0x03, 0x87, 0x00, 0x07, 0x1E, 0x00, 0x0E, - 0x3C, 0x00, 0x1C, 0x70, 0x00, 0x38, 0xE0, 0x00, 0x71, 0xC0, 0x00, 0xE7, - 0x80, 0x03, 0x8F, 0x00, 0x07, 0x1C, 0x00, 0x0E, 0x38, 0x00, 0x3C, 0x70, - 0x00, 0x71, 0xE0, 0x01, 0xE3, 0x80, 0x03, 0x87, 0x00, 0x0E, 0x0E, 0x00, - 0x3C, 0x1C, 0x01, 0xF0, 0x7F, 0xFF, 0xC0, 0xFF, 0xFE, 0x01, 0xFF, 0xF0, - 0x00, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x38, 0x00, - 0x00, 0xF0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x70, 0x00, 0x00, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x70, 0x00, 0x01, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, - 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF, - 0xC1, 0xFF, 0xFF, 0x80, 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x7F, 0xFF, - 0xC1, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, - 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xC0, 0x00, 0x07, 0xFF, - 0xF0, 0x1F, 0xFF, 0xC0, 0xFF, 0xFF, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, - 0x38, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x70, - 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xE0, 0x00, - 0x03, 0x80, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0xF8, 0x01, 0xFF, - 0xFC, 0x03, 0xE0, 0x3E, 0x07, 0x80, 0x0E, 0x0F, 0x00, 0x0F, 0x1E, 0x00, - 0x07, 0x1C, 0x00, 0x07, 0x38, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, - 0x00, 0x70, 0x00, 0x00, 0xF0, 0x07, 0xFE, 0xE0, 0x07, 0xFE, 0xE0, 0x07, - 0xFE, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, 0x00, - 0x1C, 0xF0, 0x00, 0x3C, 0x70, 0x00, 0x7C, 0x78, 0x00, 0xFC, 0x3E, 0x03, - 0xDC, 0x1F, 0xFF, 0x98, 0x0F, 0xFE, 0x18, 0x03, 0xF8, 0x18, 0x07, 0x00, - 0x07, 0x83, 0x80, 0x03, 0xC1, 0xC0, 0x01, 0xC0, 0xE0, 0x00, 0xE0, 0xF0, - 0x00, 0x70, 0x70, 0x00, 0x78, 0x38, 0x00, 0x3C, 0x1C, 0x00, 0x1C, 0x1E, - 0x00, 0x0E, 0x0F, 0x00, 0x07, 0x07, 0x00, 0x07, 0x83, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE0, 0xE0, 0x00, 0x70, 0x70, 0x00, 0x78, - 0x38, 0x00, 0x38, 0x1C, 0x00, 0x1C, 0x1E, 0x00, 0x0E, 0x0E, 0x00, 0x0F, - 0x07, 0x00, 0x07, 0x83, 0x80, 0x03, 0x81, 0xC0, 0x01, 0xC1, 0xE0, 0x00, - 0xE0, 0xE0, 0x00, 0xF0, 0x70, 0x00, 0x78, 0x00, 0x07, 0x0F, 0x0F, 0x0E, - 0x0E, 0x0E, 0x0E, 0x1E, 0x1C, 0x1C, 0x1C, 0x1C, 0x3C, 0x3C, 0x38, 0x38, - 0x38, 0x38, 0x78, 0x70, 0x70, 0x70, 0x70, 0xF0, 0xF0, 0xE0, 0x00, 0x01, - 0xC0, 0x00, 0x70, 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, - 0x00, 0x38, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0x70, 0x00, - 0x1C, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x1E, - 0x1C, 0x07, 0x0E, 0x01, 0xC3, 0x80, 0x70, 0xE0, 0x3C, 0x38, 0x0E, 0x0F, - 0x0F, 0x81, 0xFF, 0xC0, 0x7F, 0xE0, 0x07, 0xE0, 0x00, 0x07, 0x00, 0x07, - 0x83, 0x80, 0x07, 0x81, 0xC0, 0x0F, 0x00, 0xE0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0x70, 0x0F, 0x00, 0x38, 0x0F, 0x00, 0x1C, 0x1F, 0x00, 0x1E, 0x1E, - 0x00, 0x0F, 0x1E, 0x00, 0x07, 0x1E, 0x00, 0x03, 0x9F, 0x00, 0x01, 0xDF, - 0xC0, 0x01, 0xFC, 0xE0, 0x00, 0xFC, 0x78, 0x00, 0x7C, 0x1C, 0x00, 0x3C, - 0x0F, 0x00, 0x1C, 0x07, 0x80, 0x1E, 0x01, 0xE0, 0x0E, 0x00, 0xF0, 0x07, - 0x00, 0x38, 0x03, 0x80, 0x1E, 0x01, 0xC0, 0x07, 0x01, 0xE0, 0x03, 0xC0, - 0xE0, 0x00, 0xE0, 0x70, 0x00, 0x78, 0x00, 0x07, 0x00, 0x07, 0x00, 0x07, - 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, - 0x00, 0x70, 0x00, 0x70, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, - 0xC0, 0x00, 0xF8, 0x3E, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x7E, 0x0F, 0x80, - 0x03, 0xF0, 0xFC, 0x00, 0x3F, 0x07, 0x70, 0x01, 0xF8, 0x3B, 0x80, 0x1D, - 0xC1, 0xDC, 0x00, 0xEE, 0x0E, 0xE0, 0x0E, 0xE0, 0xE7, 0x00, 0x77, 0x07, - 0x38, 0x07, 0x38, 0x39, 0xC0, 0x31, 0xC1, 0xCE, 0x03, 0x9E, 0x1E, 0x38, - 0x38, 0xE0, 0xE1, 0xC1, 0xC7, 0x07, 0x0E, 0x1C, 0x38, 0x38, 0x70, 0xE1, - 0xC1, 0xC3, 0x8E, 0x1E, 0x1E, 0x1C, 0x70, 0xE0, 0xE0, 0xE7, 0x07, 0x07, - 0x07, 0x38, 0x38, 0x38, 0x1F, 0x81, 0xC1, 0xC0, 0xF8, 0x1E, 0x1C, 0x07, - 0xC0, 0xE0, 0xE0, 0x3C, 0x07, 0x07, 0x01, 0xE0, 0x38, 0x00, 0x07, 0x80, - 0x03, 0x83, 0xE0, 0x01, 0xC1, 0xF0, 0x00, 0xE0, 0xF8, 0x00, 0xE0, 0xFE, - 0x00, 0x70, 0x7F, 0x00, 0x38, 0x3B, 0xC0, 0x1C, 0x1D, 0xE0, 0x1E, 0x0E, - 0x70, 0x0E, 0x0E, 0x3C, 0x07, 0x07, 0x0E, 0x03, 0x83, 0x87, 0x81, 0xC1, - 0xC3, 0xC1, 0xE1, 0xE0, 0xE0, 0xE0, 0xE0, 0x78, 0x70, 0x70, 0x1C, 0x38, - 0x38, 0x0F, 0x1C, 0x1C, 0x07, 0x9E, 0x1E, 0x01, 0xCE, 0x0E, 0x00, 0xF7, - 0x07, 0x00, 0x3B, 0x83, 0x80, 0x1F, 0xC1, 0xC0, 0x07, 0xC1, 0xC0, 0x03, - 0xE0, 0xE0, 0x01, 0xF0, 0x70, 0x00, 0x78, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x03, 0xE0, 0x7C, 0x07, 0x80, 0x1E, 0x0F, - 0x00, 0x0E, 0x1C, 0x00, 0x0F, 0x3C, 0x00, 0x07, 0x38, 0x00, 0x07, 0x70, - 0x00, 0x07, 0x70, 0x00, 0x07, 0x70, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xE0, - 0x00, 0x0F, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, - 0x00, 0x1C, 0xE0, 0x00, 0x1C, 0xF0, 0x00, 0x38, 0x70, 0x00, 0x78, 0x78, - 0x00, 0xF0, 0x3E, 0x07, 0xE0, 0x1F, 0xFF, 0xC0, 0x0F, 0xFF, 0x00, 0x03, - 0xF8, 0x00, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, 0x7F, 0xFF, 0x81, 0xC0, - 0x1F, 0x0F, 0x00, 0x3C, 0x38, 0x00, 0x70, 0xE0, 0x01, 0xC3, 0x80, 0x07, - 0x1E, 0x00, 0x1C, 0x78, 0x00, 0xE1, 0xC0, 0x07, 0x87, 0x00, 0x3C, 0x1F, - 0xFF, 0xE0, 0xFF, 0xFF, 0x03, 0xFF, 0xF0, 0x0E, 0x00, 0x00, 0x38, 0x00, - 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, 0x01, - 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, - 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, - 0x7C, 0x07, 0xC0, 0x78, 0x00, 0xF0, 0x78, 0x00, 0x38, 0x78, 0x00, 0x1E, - 0x78, 0x00, 0x07, 0x38, 0x00, 0x03, 0xBC, 0x00, 0x01, 0xDC, 0x00, 0x00, - 0xEE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x1D, 0xC0, 0x00, 0x0E, 0xE0, 0x00, 0x0F, 0x70, 0x00, 0x07, 0x38, 0x00, - 0x87, 0x9E, 0x00, 0xE7, 0x87, 0x00, 0x7F, 0x83, 0xC0, 0x1F, 0x80, 0xF8, - 0x1F, 0x80, 0x3F, 0xFF, 0xE0, 0x0F, 0xFF, 0x78, 0x01, 0xFE, 0x1E, 0x00, - 0x00, 0x07, 0x00, 0x00, 0x02, 0x00, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0xF8, - 0x1F, 0xFF, 0xF0, 0x38, 0x00, 0xF0, 0xF0, 0x00, 0xE1, 0xC0, 0x01, 0xC3, - 0x80, 0x03, 0x87, 0x00, 0x07, 0x1E, 0x00, 0x0E, 0x3C, 0x00, 0x38, 0x70, - 0x00, 0xF0, 0xE0, 0x03, 0xC1, 0xFF, 0xFE, 0x07, 0xFF, 0xF8, 0x0F, 0xFF, - 0xF8, 0x1C, 0x00, 0x78, 0x38, 0x00, 0x70, 0x70, 0x00, 0xE1, 0xE0, 0x01, - 0xC3, 0x80, 0x03, 0x87, 0x00, 0x06, 0x0E, 0x00, 0x1C, 0x1C, 0x00, 0x38, - 0x78, 0x00, 0x70, 0xE0, 0x00, 0xE1, 0xC0, 0x01, 0xE0, 0x00, 0x3F, 0xC0, - 0x07, 0xFF, 0xC0, 0x3F, 0xFF, 0x81, 0xF0, 0x1E, 0x0F, 0x00, 0x3C, 0x38, - 0x00, 0x71, 0xC0, 0x01, 0xC7, 0x00, 0x07, 0x1C, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xFE, 0x00, 0x07, 0xFF, 0x00, - 0x03, 0xFE, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xF3, 0x80, 0x01, 0xCE, 0x00, - 0x07, 0x38, 0x00, 0x18, 0xE0, 0x00, 0xE3, 0xC0, 0x07, 0x07, 0x80, 0x7C, - 0x1F, 0xFF, 0xE0, 0x3F, 0xFE, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1E, 0x00, - 0x01, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0xC0, - 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x78, - 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xF0, 0x00, 0x0F, - 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xE0, 0x00, 0x0E, 0x00, 0x0F, 0x0E, 0x00, 0x0F, 0x0E, 0x00, 0x0E, 0x0E, - 0x00, 0x0E, 0x1E, 0x00, 0x0E, 0x1C, 0x00, 0x1E, 0x1C, 0x00, 0x1C, 0x1C, - 0x00, 0x1C, 0x3C, 0x00, 0x1C, 0x3C, 0x00, 0x1C, 0x38, 0x00, 0x3C, 0x38, - 0x00, 0x38, 0x38, 0x00, 0x38, 0x78, 0x00, 0x38, 0x70, 0x00, 0x78, 0x70, - 0x00, 0x78, 0x70, 0x00, 0x70, 0xF0, 0x00, 0x70, 0xF0, 0x00, 0x70, 0xE0, - 0x00, 0xF0, 0xE0, 0x00, 0xE0, 0xF0, 0x03, 0xE0, 0x78, 0x0F, 0xC0, 0x7F, - 0xFF, 0x80, 0x1F, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0xE0, 0x00, 0x3F, 0x80, - 0x03, 0xFC, 0x00, 0x1D, 0xE0, 0x01, 0xE7, 0x00, 0x0E, 0x38, 0x00, 0xE1, - 0xC0, 0x07, 0x0E, 0x00, 0x70, 0x70, 0x07, 0x83, 0xC0, 0x38, 0x1E, 0x03, - 0xC0, 0xF0, 0x1C, 0x03, 0x81, 0xE0, 0x1C, 0x0E, 0x00, 0xE0, 0xF0, 0x07, - 0x07, 0x00, 0x3C, 0x70, 0x01, 0xE3, 0x80, 0x0F, 0x38, 0x00, 0x39, 0xC0, - 0x01, 0xDC, 0x00, 0x0E, 0xE0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0xE0, 0x07, 0x80, - 0x1E, 0xE0, 0x07, 0xC0, 0x1E, 0xE0, 0x0F, 0xC0, 0x1C, 0xE0, 0x0F, 0xC0, - 0x3C, 0xE0, 0x1F, 0xC0, 0x38, 0xE0, 0x1D, 0xC0, 0x78, 0xE0, 0x3D, 0xC0, - 0x70, 0xE0, 0x39, 0xC0, 0xF0, 0xE0, 0x79, 0xC0, 0xE0, 0xE0, 0x71, 0xC0, - 0xE0, 0xE0, 0xF1, 0xC1, 0xC0, 0xE0, 0xE1, 0xC1, 0xC0, 0xE1, 0xE1, 0xC3, - 0xC0, 0x61, 0xC1, 0xC3, 0x80, 0x63, 0xC1, 0xC7, 0x80, 0x63, 0x80, 0xE7, - 0x00, 0x67, 0x80, 0xEF, 0x00, 0x67, 0x00, 0xEE, 0x00, 0x7F, 0x00, 0xEE, - 0x00, 0x7E, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0xFC, 0x00, 0x7C, 0x00, 0xF8, - 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x78, 0x00, 0xF8, 0x00, 0x78, 0x00, 0xF0, - 0x00, 0x03, 0xC0, 0x03, 0xC0, 0x78, 0x00, 0xF0, 0x07, 0x80, 0x1C, 0x00, - 0xF0, 0x07, 0x80, 0x0F, 0x01, 0xE0, 0x01, 0xE0, 0x78, 0x00, 0x1C, 0x1E, - 0x00, 0x03, 0xC7, 0x80, 0x00, 0x39, 0xE0, 0x00, 0x07, 0xB8, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x0F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xF3, 0x80, 0x00, 0x3C, - 0x78, 0x00, 0x0F, 0x0F, 0x00, 0x03, 0xC0, 0xF0, 0x00, 0x70, 0x1E, 0x00, - 0x1E, 0x01, 0xE0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x03, 0xC0, 0x78, 0x00, - 0x78, 0x1E, 0x00, 0x0F, 0x00, 0xF0, 0x00, 0x3C, 0xE0, 0x00, 0x71, 0xE0, - 0x01, 0xE3, 0xC0, 0x07, 0x83, 0xC0, 0x1E, 0x07, 0x80, 0x78, 0x07, 0x00, - 0xE0, 0x0F, 0x03, 0xC0, 0x1E, 0x0F, 0x00, 0x1C, 0x3C, 0x00, 0x3C, 0xF0, - 0x00, 0x39, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFE, 0x00, 0x00, 0xF8, 0x00, - 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, - 0x1C, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xC0, 0x00, 0x03, - 0x80, 0x00, 0x07, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x00, 0x01, 0xF8, 0x1F, 0xC0, 0xFE, 0x07, - 0x00, 0x38, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x03, 0xC0, - 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, - 0x00, 0x38, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x78, 0x03, 0x80, - 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x70, 0x03, 0xF8, 0x1F, 0xC0, 0xFE, 0x00, - 0xCC, 0xCC, 0xCC, 0x46, 0x66, 0x66, 0x66, 0x66, 0x66, 0x62, 0x33, 0x33, - 0x33, 0x03, 0xF8, 0x1F, 0xC0, 0xFE, 0x00, 0x70, 0x07, 0x00, 0x38, 0x01, - 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xE0, - 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, - 0xC0, 0x1E, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x1E, 0x00, 0xE0, - 0x07, 0x03, 0xF8, 0x1F, 0xC0, 0xFC, 0x00, 0x00, 0xF0, 0x03, 0xC0, 0x1F, - 0x00, 0x7C, 0x03, 0xB8, 0x1C, 0xE0, 0x63, 0x83, 0x8E, 0x1C, 0x38, 0x60, - 0x73, 0x81, 0xCC, 0x07, 0x70, 0x1F, 0x80, 0x70, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0xF1, 0xC3, 0x86, 0x0C, 0x00, 0xFE, 0x01, 0xFF, 0xE0, 0xFF, - 0xFC, 0x3C, 0x0F, 0x1C, 0x01, 0xC0, 0x00, 0x70, 0x00, 0x1C, 0x00, 0x0E, - 0x00, 0x1F, 0x83, 0xFF, 0xE3, 0xFE, 0x39, 0xF0, 0x1E, 0xF0, 0x07, 0x38, - 0x01, 0xCE, 0x00, 0xF3, 0xC0, 0xFC, 0xFF, 0xF7, 0x9F, 0xF1, 0xE1, 0xF0, - 0x38, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0xF0, - 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x71, 0xF0, 0x0E, 0xFF, 0x83, 0xFF, - 0xF8, 0x7F, 0x0F, 0x0F, 0x80, 0xF1, 0xE0, 0x0E, 0x38, 0x01, 0xCF, 0x00, - 0x39, 0xE0, 0x07, 0x38, 0x00, 0xE7, 0x00, 0x38, 0xE0, 0x07, 0x3C, 0x00, - 0xE7, 0x80, 0x38, 0xF8, 0x0F, 0x1F, 0x87, 0xC3, 0xFF, 0xF0, 0xE7, 0xFC, - 0x1C, 0x7E, 0x00, 0x01, 0xF8, 0x07, 0xFC, 0x0F, 0xFE, 0x1E, 0x0F, 0x3C, - 0x07, 0x78, 0x07, 0x70, 0x07, 0x70, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0xE0, - 0x00, 0xE0, 0x00, 0xE0, 0x0E, 0xE0, 0x1C, 0xF0, 0x3C, 0x78, 0x78, 0x7F, - 0xF0, 0x3F, 0xE0, 0x0F, 0x80, 0x00, 0x00, 0x70, 0x00, 0x0F, 0x00, 0x00, - 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x01, 0xE0, 0x1F, - 0x1C, 0x07, 0xFD, 0xC0, 0xFF, 0xDC, 0x1E, 0x0F, 0xC3, 0xC0, 0x7C, 0x38, - 0x07, 0x87, 0x00, 0x38, 0x70, 0x03, 0x8F, 0x00, 0x38, 0xE0, 0x07, 0x8E, - 0x00, 0x70, 0xE0, 0x07, 0x0E, 0x00, 0xF0, 0xE0, 0x0F, 0x0F, 0x01, 0xF0, - 0x78, 0x7E, 0x07, 0xFF, 0xE0, 0x3F, 0xEE, 0x01, 0xF8, 0xE0, 0x01, 0xF8, - 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xC1, 0xF3, 0xC0, 0x79, 0xC0, 0x1D, 0xC0, - 0x0E, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0x1C, 0x00, 0x0E, - 0x00, 0x07, 0x00, 0x73, 0xC0, 0x78, 0xF0, 0x78, 0x7F, 0xF8, 0x1F, 0xF8, - 0x03, 0xF0, 0x00, 0x01, 0xE0, 0x7C, 0x1F, 0x83, 0x80, 0x70, 0x1C, 0x03, - 0x83, 0xFC, 0x7F, 0x8F, 0xF0, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x0F, 0x01, - 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0xE0, 0x1C, 0x00, 0x00, 0xFC, 0x60, 0x7F, 0xCC, 0x1F, 0xFF, 0x87, 0xC3, - 0xF1, 0xE0, 0x3E, 0x38, 0x03, 0x8E, 0x00, 0x71, 0xC0, 0x0E, 0x38, 0x01, - 0xCE, 0x00, 0x79, 0xC0, 0x0E, 0x38, 0x01, 0xC7, 0x00, 0x78, 0xE0, 0x0F, - 0x1E, 0x03, 0xC1, 0xE1, 0xF8, 0x3F, 0xFF, 0x03, 0xFE, 0xE0, 0x1F, 0x1C, - 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, 0x18, 0x38, 0x07, 0x07, 0x83, 0xC0, - 0x7F, 0xF8, 0x0F, 0xFC, 0x00, 0x7E, 0x00, 0x00, 0x07, 0x00, 0x01, 0xC0, - 0x00, 0x70, 0x00, 0x1C, 0x00, 0x0F, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, - 0x38, 0xFC, 0x0E, 0xFF, 0x87, 0xFF, 0xF1, 0xF8, 0x3C, 0x7C, 0x07, 0x1E, - 0x01, 0xC7, 0x00, 0x73, 0xC0, 0x1C, 0xE0, 0x0F, 0x38, 0x03, 0x8E, 0x00, - 0xE3, 0x80, 0x39, 0xE0, 0x0E, 0x70, 0x07, 0x9C, 0x01, 0xC7, 0x00, 0x71, - 0xC0, 0x1C, 0xE0, 0x07, 0x38, 0x03, 0x80, 0x07, 0x07, 0x0F, 0x0E, 0x00, - 0x00, 0x00, 0x1E, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x38, 0x38, 0x38, 0x38, - 0x38, 0x78, 0x70, 0x70, 0x70, 0x70, 0xF0, 0xE0, 0xE0, 0x00, 0x3C, 0x00, - 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, - 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x03, 0x80, 0x1E, 0x00, - 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, - 0x38, 0x00, 0xE0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x0F, 0x00, - 0x38, 0x00, 0xE0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x1C, 0x00, 0x03, - 0x80, 0x00, 0x70, 0x1E, 0x0E, 0x07, 0x83, 0xC1, 0xE0, 0x70, 0x70, 0x0E, - 0x1C, 0x01, 0xCF, 0x00, 0x3B, 0xC0, 0x0F, 0xF8, 0x01, 0xFF, 0x80, 0x3E, - 0x70, 0x07, 0x8E, 0x00, 0xE0, 0xE0, 0x38, 0x1C, 0x07, 0x03, 0xC0, 0xE0, - 0x38, 0x1C, 0x07, 0x03, 0x80, 0xF0, 0xE0, 0x0E, 0x1C, 0x01, 0xE0, 0x07, - 0x07, 0x0F, 0x0E, 0x0E, 0x0E, 0x0E, 0x1E, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x38, 0x38, 0x38, 0x38, 0x38, 0x78, 0x70, 0x70, 0x70, 0x70, 0xF0, 0xE0, - 0xE0, 0x1E, 0x7C, 0x0F, 0x83, 0xBF, 0xE7, 0xF8, 0x7F, 0xFD, 0xFF, 0x8F, - 0xC3, 0xF0, 0xF1, 0xE0, 0x3C, 0x0E, 0x38, 0x07, 0x01, 0xCF, 0x01, 0xE0, - 0x39, 0xC0, 0x38, 0x07, 0x38, 0x07, 0x00, 0xE7, 0x00, 0xE0, 0x1C, 0xE0, - 0x1C, 0x07, 0x3C, 0x07, 0x00, 0xE7, 0x00, 0xE0, 0x1C, 0xE0, 0x1C, 0x03, - 0x9C, 0x03, 0x80, 0xF3, 0x80, 0x70, 0x1C, 0x70, 0x1C, 0x03, 0x9C, 0x03, - 0x80, 0x73, 0x80, 0x70, 0x0E, 0x00, 0x1E, 0x3E, 0x07, 0x7F, 0xE1, 0xFF, - 0xF8, 0x7E, 0x0F, 0x1F, 0x01, 0xC7, 0x80, 0x73, 0xC0, 0x1C, 0xE0, 0x07, - 0x38, 0x03, 0xCE, 0x00, 0xE3, 0x80, 0x39, 0xE0, 0x0E, 0x70, 0x03, 0x9C, - 0x01, 0xC7, 0x00, 0x71, 0xC0, 0x1C, 0x70, 0x07, 0x38, 0x01, 0xCE, 0x00, - 0xE0, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE1, 0xE3, 0xC0, 0x79, - 0xC0, 0x1D, 0xC0, 0x0E, 0xE0, 0x07, 0x70, 0x03, 0xF0, 0x01, 0xF8, 0x01, - 0xDC, 0x00, 0xEE, 0x00, 0x77, 0x00, 0x73, 0xC0, 0x78, 0xF0, 0xF8, 0x7F, - 0xF8, 0x1F, 0xF8, 0x03, 0xF0, 0x00, 0x03, 0x8F, 0x80, 0x1D, 0xFF, 0x01, - 0xFF, 0xFC, 0x0F, 0xC1, 0xE0, 0x7C, 0x07, 0x83, 0xC0, 0x1C, 0x1C, 0x00, - 0xE1, 0xE0, 0x07, 0x0E, 0x00, 0x38, 0x70, 0x01, 0xC3, 0x80, 0x1E, 0x1C, - 0x00, 0xE1, 0xE0, 0x07, 0x0F, 0x00, 0x70, 0x78, 0x07, 0x83, 0xF0, 0xF8, - 0x3F, 0xFF, 0x81, 0xDF, 0xF8, 0x0E, 0x3F, 0x00, 0x70, 0x00, 0x03, 0x80, - 0x00, 0x3C, 0x00, 0x01, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x70, 0x00, 0x03, - 0x80, 0x00, 0x00, 0x00, 0xF8, 0xF0, 0x7F, 0xEE, 0x0F, 0xFF, 0xE1, 0xF0, - 0xFE, 0x3C, 0x07, 0xE3, 0x80, 0x3E, 0x70, 0x03, 0xC7, 0x00, 0x3C, 0x70, - 0x03, 0xCE, 0x00, 0x3C, 0xE0, 0x07, 0x8E, 0x00, 0x78, 0xE0, 0x07, 0x8E, - 0x00, 0xF8, 0xF0, 0x1F, 0x87, 0x87, 0xF0, 0x7F, 0xF7, 0x03, 0xFE, 0x70, - 0x0F, 0x8F, 0x00, 0x00, 0xF0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0E, - 0x00, 0x01, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x04, 0x00, 0x1E, - 0x78, 0xE7, 0xC7, 0x7C, 0x3F, 0x01, 0xF0, 0x0F, 0x00, 0xF0, 0x07, 0x00, - 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, - 0x00, 0x70, 0x07, 0x00, 0x38, 0x00, 0x01, 0xF8, 0x07, 0xFE, 0x0F, 0xFF, - 0x1E, 0x0F, 0x3C, 0x07, 0x38, 0x07, 0x38, 0x00, 0x3C, 0x00, 0x3F, 0x80, - 0x1F, 0xF8, 0x07, 0xFC, 0x00, 0x7E, 0x00, 0x0E, 0xE0, 0x0E, 0xE0, 0x1E, - 0xF0, 0x3C, 0x7F, 0xF8, 0x7F, 0xF0, 0x1F, 0xC0, 0x0E, 0x03, 0x80, 0xE0, - 0x38, 0x7F, 0xDF, 0xEF, 0xF8, 0x70, 0x1C, 0x0E, 0x03, 0x80, 0xE0, 0x38, - 0x1E, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x0F, 0x03, 0x80, 0xFC, 0x3F, 0x07, - 0x80, 0x1C, 0x03, 0xC7, 0x00, 0xE1, 0xC0, 0x38, 0xF0, 0x0E, 0x38, 0x03, - 0x8E, 0x00, 0xE3, 0x80, 0x70, 0xE0, 0x1C, 0x78, 0x07, 0x1C, 0x01, 0xC7, - 0x00, 0x71, 0xC0, 0x3C, 0x70, 0x0E, 0x38, 0x07, 0x8E, 0x03, 0xE3, 0x81, - 0xF8, 0xFF, 0xFE, 0x1F, 0xFF, 0x03, 0xF1, 0xC0, 0xE0, 0x07, 0xE0, 0x0F, - 0xE0, 0x0E, 0xE0, 0x1C, 0x70, 0x1C, 0x70, 0x38, 0x70, 0x38, 0x70, 0x70, - 0x70, 0xF0, 0x70, 0xE0, 0x71, 0xC0, 0x71, 0xC0, 0x33, 0x80, 0x3B, 0x80, - 0x3F, 0x00, 0x3F, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0xE0, 0x1C, - 0x07, 0xE0, 0x3C, 0x0E, 0xE0, 0x3C, 0x0E, 0xE0, 0x7C, 0x1C, 0xE0, 0x7C, - 0x1C, 0xE0, 0xEC, 0x38, 0xE0, 0xEC, 0x38, 0x61, 0xCC, 0x70, 0x61, 0xCC, - 0x70, 0x63, 0x8C, 0xE0, 0x73, 0x8C, 0xE0, 0x77, 0x0C, 0xC0, 0x77, 0x0D, - 0xC0, 0x7E, 0x0D, 0x80, 0x7E, 0x0F, 0x80, 0x7C, 0x0F, 0x80, 0x7C, 0x0F, - 0x00, 0x78, 0x0F, 0x00, 0x78, 0x0E, 0x00, 0x0E, 0x00, 0xE1, 0xE0, 0x38, - 0x1C, 0x0E, 0x03, 0xC3, 0x80, 0x38, 0xE0, 0x07, 0xBC, 0x00, 0x77, 0x00, - 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x1C, 0x00, 0x07, 0xC0, 0x01, 0xF8, 0x00, - 0x77, 0x80, 0x1E, 0x70, 0x07, 0x8F, 0x00, 0xE0, 0xE0, 0x38, 0x1C, 0x0E, - 0x01, 0xC3, 0x80, 0x38, 0x00, 0x0E, 0x00, 0x70, 0xF0, 0x0F, 0x07, 0x00, - 0xE0, 0x70, 0x1C, 0x07, 0x01, 0xC0, 0x70, 0x38, 0x07, 0x03, 0x80, 0x70, - 0x70, 0x07, 0x07, 0x00, 0x70, 0xE0, 0x03, 0x9E, 0x00, 0x39, 0xC0, 0x03, - 0xB8, 0x00, 0x3B, 0x80, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, - 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, - 0x07, 0x00, 0x00, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, - 0x00, 0x07, 0xFF, 0xC0, 0xFF, 0xF8, 0x3F, 0xFF, 0x00, 0x01, 0xC0, 0x00, - 0x70, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0x70, 0x00, 0x1C, - 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x00, 0x7F, 0xFE, 0x1F, 0xFF, 0xC3, 0xFF, 0xF8, 0x00, 0x00, - 0x70, 0x1F, 0x01, 0xF0, 0x3C, 0x03, 0x80, 0x38, 0x07, 0x00, 0x70, 0x07, - 0x00, 0x70, 0x07, 0x00, 0xE0, 0x0E, 0x01, 0xE0, 0x3C, 0x0F, 0x80, 0xE0, - 0x0F, 0x00, 0x78, 0x03, 0x80, 0x38, 0x03, 0x80, 0x38, 0x03, 0x80, 0x38, - 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x0E, 0x00, 0xF8, 0x0F, 0x80, 0x78, - 0x00, 0x01, 0x80, 0xC0, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, - 0x01, 0x81, 0xC0, 0xC0, 0x60, 0x30, 0x18, 0x18, 0x0C, 0x06, 0x03, 0x01, - 0x81, 0x80, 0xC0, 0x60, 0x30, 0x38, 0x18, 0x0C, 0x06, 0x03, 0x03, 0x01, - 0x80, 0xC0, 0x00, 0x01, 0xE0, 0x1F, 0x01, 0xF0, 0x07, 0x00, 0xE0, 0x0E, - 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x1C, - 0x01, 0xE0, 0x0F, 0x00, 0x70, 0x1F, 0x03, 0xC0, 0x78, 0x07, 0x00, 0x70, - 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x03, 0xC0, - 0xF8, 0x0F, 0x80, 0xE0, 0x00, 0x1C, 0x00, 0x3F, 0x00, 0x7F, 0x83, 0x63, - 0xC7, 0xC1, 0xFE, 0x00, 0xFC, 0x00, 0x78}; - -const GFXglyph FreeSansOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 10, 0, 1}, // 0x20 ' ' - {0, 9, 26, 10, 4, -25}, // 0x21 '!' - {30, 10, 9, 12, 6, -24}, // 0x22 '"' - {42, 21, 25, 19, 2, -24}, // 0x23 '#' - {108, 20, 31, 19, 2, -26}, // 0x24 '$' - {186, 26, 25, 31, 5, -24}, // 0x25 '%' - {268, 20, 25, 23, 3, -24}, // 0x26 '&' - {331, 4, 9, 7, 6, -24}, // 0x27 ''' - {336, 12, 33, 12, 4, -25}, // 0x28 '(' - {386, 12, 33, 12, -1, -24}, // 0x29 ')' - {436, 10, 10, 14, 6, -25}, // 0x2A '*' - {449, 18, 16, 20, 3, -15}, // 0x2B '+' - {485, 5, 8, 10, 2, -2}, // 0x2C ',' - {490, 9, 3, 12, 3, -10}, // 0x2D '-' - {494, 4, 4, 10, 3, -3}, // 0x2E '.' - {496, 15, 26, 10, 0, -25}, // 0x2F '/' - {545, 18, 25, 19, 3, -24}, // 0x30 '0' - {602, 10, 25, 19, 7, -24}, // 0x31 '1' - {634, 20, 25, 19, 2, -24}, // 0x32 '2' - {697, 19, 25, 19, 2, -24}, // 0x33 '3' - {757, 18, 25, 19, 2, -24}, // 0x34 '4' - {814, 20, 25, 19, 2, -24}, // 0x35 '5' - {877, 19, 25, 19, 3, -24}, // 0x36 '6' - {937, 18, 25, 19, 5, -24}, // 0x37 '7' - {994, 19, 25, 19, 3, -24}, // 0x38 '8' - {1054, 19, 25, 19, 2, -24}, // 0x39 '9' - {1114, 7, 19, 10, 4, -18}, // 0x3A ':' - {1131, 8, 24, 10, 3, -18}, // 0x3B ';' - {1155, 19, 17, 20, 3, -16}, // 0x3C '<' - {1196, 18, 9, 20, 3, -12}, // 0x3D '=' - {1217, 19, 17, 20, 2, -15}, // 0x3E '>' - {1258, 16, 26, 19, 6, -25}, // 0x3F '?' - {1310, 33, 31, 36, 3, -25}, // 0x40 '@' - {1438, 23, 26, 23, 0, -25}, // 0x41 'A' - {1513, 21, 26, 23, 3, -25}, // 0x42 'B' - {1582, 22, 26, 25, 4, -25}, // 0x43 'C' - {1654, 23, 26, 25, 3, -25}, // 0x44 'D' - {1729, 23, 26, 23, 3, -25}, // 0x45 'E' - {1804, 22, 26, 21, 3, -25}, // 0x46 'F' - {1876, 24, 26, 27, 4, -25}, // 0x47 'G' - {1954, 25, 26, 25, 3, -25}, // 0x48 'H' - {2036, 8, 26, 10, 4, -25}, // 0x49 'I' - {2062, 18, 26, 18, 2, -25}, // 0x4A 'J' - {2121, 25, 26, 23, 3, -25}, // 0x4B 'K' - {2203, 16, 26, 19, 3, -25}, // 0x4C 'L' - {2255, 29, 26, 30, 3, -25}, // 0x4D 'M' - {2350, 25, 26, 26, 3, -25}, // 0x4E 'N' - {2432, 24, 26, 27, 4, -25}, // 0x4F 'O' - {2510, 22, 26, 23, 3, -25}, // 0x50 'P' - {2582, 25, 28, 27, 4, -25}, // 0x51 'Q' - {2670, 23, 26, 25, 3, -25}, // 0x52 'R' - {2745, 22, 26, 23, 3, -25}, // 0x53 'S' - {2817, 20, 26, 21, 6, -25}, // 0x54 'T' - {2882, 24, 26, 25, 4, -25}, // 0x55 'U' - {2960, 21, 26, 23, 6, -25}, // 0x56 'V' - {3029, 32, 26, 33, 6, -25}, // 0x57 'W' - {3133, 27, 26, 23, 1, -25}, // 0x58 'X' - {3221, 23, 26, 24, 6, -25}, // 0x59 'Y' - {3296, 25, 26, 21, 1, -25}, // 0x5A 'Z' - {3378, 13, 33, 10, 1, -25}, // 0x5B '[' - {3432, 4, 26, 10, 5, -25}, // 0x5C '\' - {3445, 13, 33, 10, -1, -24}, // 0x5D ']' - {3499, 14, 14, 16, 3, -24}, // 0x5E '^' - {3524, 21, 2, 19, -2, 5}, // 0x5F '_' - {3530, 6, 5, 12, 6, -25}, // 0x60 '`' - {3534, 18, 19, 19, 2, -18}, // 0x61 'a' - {3577, 19, 26, 20, 2, -25}, // 0x62 'b' - {3639, 16, 19, 18, 3, -18}, // 0x63 'c' - {3677, 20, 26, 20, 3, -25}, // 0x64 'd' - {3742, 17, 19, 19, 3, -18}, // 0x65 'e' - {3783, 11, 26, 9, 2, -25}, // 0x66 'f' - {3819, 19, 27, 19, 2, -18}, // 0x67 'g' - {3884, 18, 26, 19, 2, -25}, // 0x68 'h' - {3943, 8, 26, 8, 2, -25}, // 0x69 'i' - {3969, 14, 34, 8, -2, -25}, // 0x6A 'j' - {4029, 19, 26, 18, 2, -25}, // 0x6B 'k' - {4091, 8, 26, 8, 2, -25}, // 0x6C 'l' - {4117, 27, 19, 29, 2, -18}, // 0x6D 'm' - {4182, 18, 19, 19, 2, -18}, // 0x6E 'n' - {4225, 17, 19, 19, 3, -18}, // 0x6F 'o' - {4266, 21, 26, 20, 0, -18}, // 0x70 'p' - {4335, 20, 27, 19, 2, -18}, // 0x71 'q' - {4403, 13, 19, 11, 2, -18}, // 0x72 'r' - {4434, 16, 19, 18, 2, -18}, // 0x73 's' - {4472, 10, 23, 9, 3, -22}, // 0x74 't' - {4501, 18, 19, 19, 3, -18}, // 0x75 'u' - {4544, 16, 19, 17, 4, -18}, // 0x76 'v' - {4582, 24, 19, 25, 4, -18}, // 0x77 'w' - {4639, 19, 19, 17, 1, -18}, // 0x78 'x' - {4685, 20, 27, 17, 0, -18}, // 0x79 'y' - {4753, 19, 19, 17, 1, -18}, // 0x7A 'z' - {4799, 12, 33, 12, 3, -25}, // 0x7B '{' - {4849, 9, 33, 9, 2, -25}, // 0x7C '|' - {4887, 12, 33, 12, 0, -24}, // 0x7D '}' - {4937, 16, 7, 20, 5, -15}}; // 0x7E '~' - -const GFXfont FreeSansOblique18pt7b PROGMEM = { - (uint8_t *)FreeSansOblique18pt7bBitmaps, - (GFXglyph *)FreeSansOblique18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 5623 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h deleted file mode 100644 index 805aefa..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h +++ /dev/null @@ -1,842 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x3C, 0x07, - 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x38, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1E, 0x07, 0x80, 0xF0, 0x1E, 0x00, 0x78, - 0x7B, 0xC3, 0xDE, 0x1F, 0xE1, 0xEF, 0x0F, 0x78, 0x7B, 0xC3, 0xDC, 0x1C, - 0xE0, 0xE7, 0x07, 0x30, 0x31, 0x81, 0x80, 0x00, 0x07, 0x81, 0xC0, 0x00, - 0x78, 0x3C, 0x00, 0x07, 0x03, 0xC0, 0x00, 0xF0, 0x38, 0x00, 0x0E, 0x07, - 0x80, 0x01, 0xE0, 0x70, 0x00, 0x1E, 0x0F, 0x00, 0x01, 0xC0, 0xF0, 0x00, - 0x3C, 0x0E, 0x00, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, - 0xFE, 0x00, 0x70, 0x3C, 0x00, 0x0F, 0x03, 0x80, 0x00, 0xF0, 0x78, 0x00, - 0x0E, 0x07, 0x80, 0x01, 0xE0, 0x70, 0x00, 0x1C, 0x0F, 0x00, 0x03, 0xC0, - 0xE0, 0x00, 0x3C, 0x1E, 0x00, 0x03, 0x81, 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, - 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0x03, 0x80, 0x00, 0xE0, - 0x78, 0x00, 0x1E, 0x07, 0x00, 0x01, 0xC0, 0xF0, 0x00, 0x1C, 0x0F, 0x00, - 0x03, 0xC0, 0xE0, 0x00, 0x38, 0x1E, 0x00, 0x07, 0x81, 0xC0, 0x00, 0x78, - 0x3C, 0x00, 0x07, 0x03, 0xC0, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x30, - 0x00, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0x00, 0x7F, - 0xFF, 0xE0, 0x1F, 0x18, 0xF8, 0x0F, 0x8E, 0x1F, 0x07, 0xC3, 0x83, 0xC1, - 0xE0, 0xE0, 0xF0, 0x70, 0x38, 0x3C, 0x3C, 0x0C, 0x0F, 0x0F, 0x07, 0x00, - 0x03, 0xC1, 0xC0, 0x00, 0xF0, 0x70, 0x00, 0x3E, 0x1C, 0x00, 0x0F, 0xE6, - 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xFE, 0x00, 0x03, 0xFF, 0xE0, 0x00, - 0x3F, 0xFC, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xC7, 0xF0, 0x00, 0x70, 0x7C, - 0x00, 0x1C, 0x0F, 0x00, 0x06, 0x03, 0xCF, 0x03, 0x80, 0xF3, 0xC0, 0xE0, - 0x3C, 0xF0, 0x38, 0x0E, 0x3C, 0x0E, 0x07, 0x8F, 0x03, 0x01, 0xE3, 0xE1, - 0xC0, 0xF0, 0xF8, 0x70, 0x78, 0x1F, 0x9C, 0xFC, 0x03, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x38, 0x00, 0x00, 0x0E, 0x00, - 0x00, 0x03, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x07, 0x80, 0x1F, 0x00, 0x00, 0x70, 0x07, 0xFC, 0x00, 0x0E, - 0x00, 0xFF, 0xE0, 0x01, 0xC0, 0x1E, 0x1E, 0x00, 0x3C, 0x03, 0x80, 0xF0, - 0x03, 0x80, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x0E, 0x00, 0xE0, - 0x07, 0x01, 0xC0, 0x0E, 0x00, 0x70, 0x3C, 0x00, 0xE0, 0x0E, 0x03, 0x80, - 0x0E, 0x00, 0xE0, 0x70, 0x00, 0xF0, 0x1C, 0x0E, 0x00, 0x07, 0x87, 0xC1, - 0xE0, 0x00, 0x7F, 0xF8, 0x1C, 0x00, 0x03, 0xFE, 0x03, 0x80, 0x00, 0x0F, - 0x80, 0x70, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x01, 0xE0, 0x1F, - 0x00, 0x00, 0x1C, 0x07, 0xFC, 0x00, 0x03, 0x80, 0xFF, 0xE0, 0x00, 0x70, - 0x1E, 0x1E, 0x00, 0x0F, 0x03, 0x80, 0xF0, 0x00, 0xE0, 0x70, 0x07, 0x00, - 0x1C, 0x07, 0x00, 0x70, 0x03, 0x80, 0xE0, 0x07, 0x00, 0x70, 0x0E, 0x00, - 0x70, 0x0F, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x1C, 0x00, - 0xF0, 0x1C, 0x03, 0x80, 0x07, 0x87, 0xC0, 0x70, 0x00, 0x7F, 0xF8, 0x07, - 0x00, 0x03, 0xFE, 0x00, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF8, 0x00, - 0x03, 0xFF, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0xF8, 0x7C, 0x00, 0x78, 0x0F, - 0x00, 0x1E, 0x03, 0xC0, 0x0F, 0x00, 0xF0, 0x03, 0xC0, 0x3C, 0x00, 0xF0, - 0x1E, 0x00, 0x3C, 0x07, 0x80, 0x0F, 0x87, 0xC0, 0x01, 0xE3, 0xE0, 0x00, - 0x7F, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xFC, 0x00, - 0x03, 0xFF, 0x00, 0x01, 0xFB, 0xE0, 0x70, 0xF8, 0x7C, 0x1C, 0x7C, 0x1F, - 0x0E, 0x3C, 0x03, 0xE3, 0x9E, 0x00, 0x79, 0xE7, 0x80, 0x1F, 0xF3, 0xC0, - 0x03, 0xF8, 0xF0, 0x00, 0xFE, 0x3C, 0x00, 0x1F, 0x0F, 0x00, 0x07, 0xC3, - 0xE0, 0x03, 0xF8, 0xF8, 0x03, 0xFE, 0x3F, 0x83, 0xF7, 0xC7, 0xFF, 0xF8, - 0xF0, 0xFF, 0xFC, 0x3E, 0x1F, 0xFC, 0x07, 0x81, 0xFC, 0x00, 0x00, 0x7B, - 0xDF, 0xEF, 0x7B, 0xDC, 0xE7, 0x31, 0x80, 0x00, 0x0E, 0x00, 0x38, 0x00, - 0xE0, 0x03, 0x80, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, - 0x0F, 0x00, 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, - 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, - 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, - 0x70, 0x00, 0xE0, 0x00, 0xC0, 0x00, 0x00, 0x30, 0x00, 0x70, 0x00, 0xE0, - 0x00, 0xC0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, - 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x3C, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x07, - 0x00, 0x0E, 0x00, 0x3C, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, 0x0F, 0x00, - 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x1C, 0x00, 0x70, - 0x01, 0xC0, 0x07, 0x00, 0x00, 0x01, 0xC0, 0x07, 0x00, 0x38, 0x18, 0xE3, - 0x7B, 0xBF, 0xFF, 0xF3, 0xFF, 0x01, 0xE0, 0x1F, 0xC0, 0xF7, 0x07, 0x9E, - 0x1C, 0x38, 0x20, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x78, - 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, - 0x00, 0x1C, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xE0, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, - 0x78, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x3E, 0x7C, 0xF9, 0xE7, - 0xC1, 0x83, 0x0C, 0x18, 0x63, 0xC6, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFE, 0x7D, 0xF7, 0xBE, 0xF8, 0x00, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, - 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, - 0x00, 0x30, 0x00, 0x03, 0x80, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, 0x0C, - 0x00, 0x00, 0xE0, 0x00, 0x06, 0x00, 0x00, 0x70, 0x00, 0x03, 0x00, 0x00, - 0x38, 0x00, 0x01, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x00, 0x0E, 0x00, - 0x00, 0x60, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x38, - 0x00, 0x01, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x00, 0x0E, 0x00, 0x00, - 0x60, 0x00, 0x07, 0x00, 0x00, 0x30, 0x00, 0x03, 0x80, 0x00, 0x18, 0x00, - 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, - 0xE0, 0x3F, 0x0F, 0xC0, 0xF8, 0x07, 0x81, 0xE0, 0x0F, 0x87, 0x80, 0x0F, - 0x1F, 0x00, 0x1E, 0x3C, 0x00, 0x3C, 0x78, 0x00, 0x79, 0xE0, 0x00, 0xF3, - 0xC0, 0x01, 0xE7, 0x80, 0x07, 0xDE, 0x00, 0x0F, 0xBC, 0x00, 0x1E, 0x78, - 0x00, 0x3C, 0xF0, 0x00, 0x79, 0xE0, 0x00, 0xF7, 0x80, 0x03, 0xEF, 0x00, - 0x07, 0xDE, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0x78, 0x00, 0x7C, 0xF0, 0x00, - 0xF1, 0xE0, 0x03, 0xE3, 0xC0, 0x07, 0x87, 0xC0, 0x1F, 0x0F, 0x80, 0x7C, - 0x0F, 0xC3, 0xF0, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0x00, 0x1F, 0xFC, 0x00, - 0x0F, 0xC0, 0x00, 0x00, 0x18, 0x01, 0xC0, 0x1C, 0x01, 0xE0, 0x1F, 0x0F, - 0xFB, 0xFF, 0xDF, 0xFC, 0xFF, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, - 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, - 0x78, 0x07, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, - 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, 0x00, 0x00, 0x03, 0xFC, - 0x00, 0x03, 0xFF, 0xE0, 0x00, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xE0, 0x0F, - 0xC0, 0xFC, 0x03, 0xE0, 0x07, 0xC0, 0xF8, 0x00, 0xF8, 0x1F, 0x00, 0x0F, - 0x03, 0xC0, 0x01, 0xE0, 0xF8, 0x00, 0x3C, 0x1E, 0x00, 0x07, 0x80, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0xFF, - 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFC, - 0x00, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xFE, 0x00, 0x3F, 0xFF, 0x80, 0x3F, - 0xFF, 0xE0, 0x1F, 0x81, 0xF8, 0x1F, 0x00, 0x7C, 0x1F, 0x00, 0x1E, 0x0F, - 0x00, 0x0F, 0x0F, 0x80, 0x07, 0x87, 0x80, 0x03, 0xC0, 0x00, 0x03, 0xC0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0xE0, - 0x00, 0x3F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xFE, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0x79, 0xE0, 0x00, 0x3C, 0xF0, 0x00, 0x1E, 0x78, 0x00, 0x1E, 0x3C, 0x00, - 0x0F, 0x1E, 0x00, 0x0F, 0x0F, 0x80, 0x1F, 0x83, 0xF0, 0x3F, 0x81, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0x80, 0x1F, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xBC, - 0x00, 0x0F, 0xBC, 0x00, 0x1F, 0x7C, 0x00, 0x3E, 0x78, 0x00, 0x7C, 0x78, - 0x00, 0xF8, 0x78, 0x00, 0xF0, 0x78, 0x01, 0xE0, 0xF0, 0x03, 0xC0, 0xF0, - 0x07, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x1E, 0x01, 0xF0, 0x3C, 0x01, 0xE0, - 0x78, 0x01, 0xE0, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFE, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, - 0x00, 0x07, 0x80, 0x00, 0x07, 0x80, 0x00, 0x07, 0x80, 0x00, 0x07, 0x80, - 0x00, 0x0F, 0x80, 0x00, 0x7F, 0xFF, 0xC0, 0x1F, 0xFF, 0xF8, 0x03, 0xFF, - 0xFF, 0x00, 0x7F, 0xFF, 0xE0, 0x1E, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x03, 0xC7, 0xE0, 0x00, 0xF7, 0xFF, 0x80, 0x1F, - 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0x80, 0xFE, 0x03, 0xF0, 0x1F, 0x00, 0x3F, - 0x03, 0xC0, 0x03, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x70, - 0x00, 0x00, 0x1E, 0x1E, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0xF0, 0x7C, 0x00, - 0x3C, 0x0F, 0x80, 0x0F, 0x80, 0xFC, 0x07, 0xE0, 0x1F, 0xFF, 0xF8, 0x01, - 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x3F, 0xF8, 0x00, 0x7F, 0xFC, 0x00, 0xFF, 0xFE, 0x01, 0xF8, - 0x3E, 0x03, 0xE0, 0x1F, 0x07, 0xC0, 0x1F, 0x0F, 0x80, 0x0F, 0x0F, 0x00, - 0x0F, 0x1F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x1F, - 0x80, 0x3C, 0x7F, 0xE0, 0x3D, 0xFF, 0xF0, 0x7B, 0xFF, 0xF8, 0x7F, 0xC1, - 0xF8, 0x7F, 0x00, 0x7C, 0x7E, 0x00, 0x7C, 0xFC, 0x00, 0x3C, 0xF8, 0x00, - 0x3C, 0xF8, 0x00, 0x3C, 0xF0, 0x00, 0x3C, 0xF0, 0x00, 0x38, 0xF0, 0x00, - 0x78, 0xF0, 0x00, 0x78, 0xF0, 0x00, 0xF0, 0xF8, 0x01, 0xF0, 0x7C, 0x03, - 0xE0, 0x7E, 0x0F, 0xC0, 0x3F, 0xFF, 0xC0, 0x3F, 0xFF, 0x80, 0x0F, 0xFE, - 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, 0xFF, - 0xFF, 0xF8, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, - 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, 0x00, 0x03, - 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0x80, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xFE, 0x00, 0x1F, - 0xFF, 0x80, 0x1F, 0xFF, 0xE0, 0x1F, 0x81, 0xF8, 0x1F, 0x00, 0x7C, 0x0F, - 0x00, 0x1E, 0x0F, 0x00, 0x0F, 0x07, 0x80, 0x07, 0x83, 0xC0, 0x03, 0xC1, - 0xE0, 0x03, 0xC0, 0xF8, 0x03, 0xC0, 0x7E, 0x07, 0xC0, 0x1F, 0xFF, 0xC0, - 0x07, 0xFF, 0xC0, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x07, 0xE0, 0x7E, - 0x07, 0xC0, 0x0F, 0x07, 0x80, 0x07, 0xC7, 0xC0, 0x01, 0xE3, 0xC0, 0x00, - 0xF3, 0xC0, 0x00, 0x79, 0xE0, 0x00, 0x3C, 0xF0, 0x00, 0x1C, 0x78, 0x00, - 0x1E, 0x3C, 0x00, 0x0F, 0x1F, 0x00, 0x0F, 0x0F, 0xC0, 0x0F, 0x83, 0xF0, - 0x3F, 0x81, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0xFC, - 0x03, 0xFF, 0xFC, 0x07, 0xF0, 0x7E, 0x07, 0xC0, 0x3E, 0x0F, 0x80, 0x1F, - 0x0F, 0x00, 0x0F, 0x1E, 0x00, 0x0F, 0x1E, 0x00, 0x0F, 0x3C, 0x00, 0x0F, - 0x3C, 0x00, 0x0F, 0x3C, 0x00, 0x1F, 0x3C, 0x00, 0x1F, 0x3C, 0x00, 0x3F, - 0x3E, 0x00, 0x7E, 0x3E, 0x00, 0xFE, 0x1F, 0x83, 0xFE, 0x1F, 0xFF, 0xFE, - 0x0F, 0xFF, 0xBC, 0x07, 0xFE, 0x3C, 0x01, 0xF8, 0x7C, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x78, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF0, 0xF0, 0x01, 0xF0, - 0xF0, 0x03, 0xE0, 0xF8, 0x07, 0xC0, 0xFC, 0x1F, 0xC0, 0x7F, 0xFF, 0x80, - 0x3F, 0xFE, 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xC1, 0xF0, - 0x78, 0x3E, 0x0F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7C, 0x1F, - 0x07, 0x83, 0xE0, 0xF8, 0x00, 0x03, 0xE0, 0x7C, 0x0F, 0x03, 0xE0, 0x7C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xE0, 0x7C, 0x0F, - 0x81, 0xE0, 0x7C, 0x01, 0x80, 0x30, 0x0C, 0x01, 0x80, 0x60, 0x3C, 0x06, - 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x70, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0xFE, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x03, 0xFE, 0x00, - 0x07, 0xFC, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xF8, 0x00, 0x07, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x1F, 0xF0, 0x00, - 0x01, 0xFF, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0E, - 0x00, 0x00, 0x00, 0x80, 0x1F, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xE3, 0xFF, - 0xFF, 0xF8, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, - 0xC7, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF8, 0x04, 0x00, 0x00, 0x01, 0xC0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x03, 0xFE, 0x00, 0x00, - 0x3F, 0xE0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0xC0, 0x00, 0xFF, 0x80, 0x00, 0xFF, 0x80, 0x01, - 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0xFE, - 0x00, 0x3F, 0xF8, 0x0F, 0xFF, 0xC1, 0xFF, 0xFE, 0x1F, 0x03, 0xE3, 0xE0, - 0x1F, 0x7C, 0x00, 0xF7, 0x80, 0x0F, 0x78, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x01, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0x80, 0x00, 0x78, 0x00, 0x0F, 0x80, - 0x00, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x3E, - 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x00, 0x00, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFE, - 0x00, 0x00, 0x7F, 0xE0, 0x0F, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xE0, - 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x0F, 0xC0, 0x00, 0x00, 0xFC, 0x00, - 0xFC, 0x00, 0x00, 0x01, 0xF0, 0x0F, 0xC0, 0x00, 0x00, 0x0F, 0x80, 0xF8, - 0x00, 0xFC, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0xF9, 0xE1, 0xF0, 0x78, 0x03, - 0xFF, 0xCF, 0x07, 0x87, 0xC0, 0x3F, 0x0F, 0xF0, 0x3C, 0x7C, 0x03, 0xE0, - 0x3F, 0x01, 0xE3, 0xC0, 0x3E, 0x01, 0xF8, 0x0F, 0x3E, 0x03, 0xE0, 0x0F, - 0x80, 0x79, 0xE0, 0x1E, 0x00, 0x7C, 0x03, 0xDF, 0x01, 0xE0, 0x03, 0xC0, - 0x3E, 0xF0, 0x1F, 0x00, 0x3E, 0x01, 0xE7, 0x80, 0xF0, 0x01, 0xE0, 0x0F, - 0x38, 0x07, 0x80, 0x0F, 0x00, 0xFB, 0xC0, 0x78, 0x00, 0xF0, 0x07, 0x9E, - 0x03, 0xC0, 0x07, 0x80, 0x7C, 0xF0, 0x1E, 0x00, 0x78, 0x07, 0xC7, 0x80, - 0xF0, 0x07, 0xC0, 0x7E, 0x3C, 0x07, 0x80, 0x7C, 0x07, 0xE1, 0xE0, 0x3E, - 0x07, 0xE0, 0x7E, 0x0F, 0x00, 0xF8, 0x7F, 0x8F, 0xC0, 0x7C, 0x07, 0xFF, - 0x7F, 0xFC, 0x01, 0xE0, 0x1F, 0xF1, 0xFF, 0x80, 0x0F, 0x00, 0x7E, 0x0F, - 0xF0, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, - 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFE, 0x00, 0xF8, 0x00, 0x00, - 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0x3F, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x1F, 0xE0, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x03, 0xDF, 0x00, 0x00, 0x1E, - 0x7C, 0x00, 0x00, 0x79, 0xF0, 0x00, 0x03, 0xC7, 0xC0, 0x00, 0x0F, 0x1F, - 0x00, 0x00, 0x78, 0x3C, 0x00, 0x03, 0xE0, 0xF0, 0x00, 0x0F, 0x03, 0xE0, - 0x00, 0x78, 0x0F, 0x80, 0x01, 0xE0, 0x3E, 0x00, 0x0F, 0x00, 0xF8, 0x00, - 0x3C, 0x03, 0xE0, 0x01, 0xE0, 0x0F, 0x80, 0x0F, 0x80, 0x1E, 0x00, 0x3C, - 0x00, 0x7C, 0x01, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, - 0xFF, 0x00, 0xFF, 0xFF, 0xFC, 0x07, 0xC0, 0x01, 0xF0, 0x3E, 0x00, 0x03, - 0xC0, 0xF8, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0xF8, - 0xF8, 0x00, 0x03, 0xE3, 0xC0, 0x00, 0x0F, 0x9F, 0x00, 0x00, 0x3E, 0xF8, - 0x00, 0x00, 0x7B, 0xE0, 0x00, 0x01, 0xF0, 0x01, 0xFF, 0xFF, 0x00, 0x0F, - 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0xE0, 0x3E, 0x00, - 0x1F, 0x81, 0xE0, 0x00, 0x7C, 0x0F, 0x00, 0x01, 0xE0, 0x78, 0x00, 0x0F, - 0x03, 0xC0, 0x00, 0x78, 0x3C, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x3C, 0x0F, - 0x00, 0x01, 0xE0, 0x78, 0x00, 0x1E, 0x07, 0xC0, 0x03, 0xE0, 0x3F, 0xFF, - 0xFC, 0x01, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFE, - 0x07, 0x80, 0x01, 0xF0, 0x3C, 0x00, 0x07, 0xC1, 0xE0, 0x00, 0x1E, 0x0F, - 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x07, 0x87, 0x80, 0x00, 0x3C, 0x3C, 0x00, - 0x01, 0xE1, 0xE0, 0x00, 0x1E, 0x1F, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x0F, - 0x87, 0x80, 0x00, 0xF8, 0x3C, 0x00, 0x1F, 0x81, 0xFF, 0xFF, 0xF8, 0x1F, - 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x1F, - 0xFF, 0xFC, 0x00, 0xFE, 0x03, 0xF0, 0x07, 0xE0, 0x03, 0xE0, 0x3E, 0x00, - 0x07, 0x81, 0xF0, 0x00, 0x1E, 0x07, 0x80, 0x00, 0x3C, 0x3C, 0x00, 0x00, - 0xF1, 0xF0, 0x00, 0x03, 0xC7, 0x80, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, 0x00, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x3C, 0xF0, 0x00, 0x01, 0xF3, 0xC0, 0x00, 0x07, - 0x8F, 0x80, 0x00, 0x3E, 0x3E, 0x00, 0x00, 0xF0, 0x7C, 0x00, 0x07, 0xC1, - 0xF0, 0x00, 0x3E, 0x03, 0xE0, 0x03, 0xF0, 0x0F, 0xE0, 0x3F, 0x80, 0x1F, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x01, 0xFF, 0xFF, 0x00, 0x03, 0xFF, 0xFF, 0x80, 0x07, 0xFF, - 0xFF, 0x80, 0x1F, 0xFF, 0xFF, 0x80, 0x3E, 0x00, 0x3F, 0x80, 0x78, 0x00, - 0x1F, 0x80, 0xF0, 0x00, 0x1F, 0x03, 0xE0, 0x00, 0x1E, 0x07, 0xC0, 0x00, - 0x3E, 0x0F, 0x00, 0x00, 0x3C, 0x1E, 0x00, 0x00, 0x78, 0x3C, 0x00, 0x00, - 0xF0, 0xF8, 0x00, 0x01, 0xE1, 0xF0, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0x07, - 0x87, 0x80, 0x00, 0x0F, 0x0F, 0x00, 0x00, 0x3C, 0x3E, 0x00, 0x00, 0x78, - 0x7C, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x01, 0xE1, 0xE0, 0x00, 0x07, 0x87, - 0xC0, 0x00, 0x0F, 0x0F, 0x80, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0x78, 0x3C, - 0x00, 0x01, 0xF0, 0x78, 0x00, 0x03, 0xC1, 0xF0, 0x00, 0x0F, 0x03, 0xE0, - 0x00, 0x3E, 0x07, 0x80, 0x01, 0xF8, 0x0F, 0x00, 0x0F, 0xE0, 0x1F, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, - 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFC, 0x07, 0xFF, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xE0, 0x3E, 0x00, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0x0F, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, - 0x07, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0x80, - 0x7F, 0xFF, 0xFF, 0x00, 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x1F, 0xFF, - 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0xFE, 0x00, 0x01, 0xFF, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, - 0xFF, 0xC0, 0xFF, 0xFF, 0xFE, 0x03, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xFF, - 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, - 0xF0, 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x7F, 0xC0, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xFF, 0x00, 0x07, - 0xFF, 0xFF, 0xC0, 0x07, 0xF0, 0x0F, 0xF0, 0x0F, 0xC0, 0x00, 0xF8, 0x0F, - 0xC0, 0x00, 0x3E, 0x07, 0x80, 0x00, 0x1F, 0x07, 0x80, 0x00, 0x07, 0x87, - 0xC0, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x1F, 0xFF, - 0xBC, 0x00, 0x0F, 0xFF, 0xDE, 0x00, 0x0F, 0xFF, 0xEF, 0x00, 0x07, 0xFF, - 0xF7, 0x80, 0x00, 0x00, 0x73, 0xC0, 0x00, 0x00, 0x39, 0xE0, 0x00, 0x00, - 0x3C, 0xF0, 0x00, 0x00, 0x1E, 0x78, 0x00, 0x00, 0x1F, 0x3E, 0x00, 0x00, - 0x0F, 0x8F, 0x00, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x0F, 0xC3, 0xF0, 0x00, - 0x0F, 0xE0, 0xFC, 0x00, 0x1F, 0xF0, 0x7F, 0x80, 0x7F, 0x78, 0x1F, 0xFF, - 0xFE, 0x38, 0x03, 0xFF, 0xFE, 0x1C, 0x00, 0xFF, 0xFC, 0x0E, 0x00, 0x0F, - 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0xF0, 0x00, 0x03, 0xC0, - 0x78, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x01, 0xF0, 0x3E, 0x00, 0x00, 0xF0, - 0x1E, 0x00, 0x00, 0x78, 0x0F, 0x00, 0x00, 0x3C, 0x0F, 0x80, 0x00, 0x3E, - 0x07, 0xC0, 0x00, 0x1F, 0x03, 0xC0, 0x00, 0x0F, 0x01, 0xE0, 0x00, 0x07, - 0x80, 0xF0, 0x00, 0x03, 0xC0, 0xF8, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x01, - 0xF0, 0x3C, 0x00, 0x00, 0xF0, 0x1F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, - 0xFC, 0x0F, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0xFE, 0x03, 0xC0, 0x00, - 0x0F, 0x01, 0xE0, 0x00, 0x07, 0x81, 0xF0, 0x00, 0x07, 0xC0, 0xF8, 0x00, - 0x03, 0xE0, 0x78, 0x00, 0x01, 0xE0, 0x3C, 0x00, 0x00, 0xF0, 0x1E, 0x00, - 0x00, 0x78, 0x1F, 0x00, 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x3C, 0x07, 0x80, - 0x00, 0x1E, 0x03, 0xC0, 0x00, 0x0F, 0x01, 0xE0, 0x00, 0x0F, 0x81, 0xF0, - 0x00, 0x07, 0xC0, 0xF0, 0x00, 0x03, 0xC0, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0x81, 0xF0, 0x3E, 0x07, - 0x80, 0xF0, 0x1E, 0x07, 0xC0, 0xF8, 0x1E, 0x03, 0xC0, 0x78, 0x1F, 0x03, - 0xE0, 0x78, 0x0F, 0x01, 0xE0, 0x7C, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0x81, - 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x1E, 0x07, 0xC0, 0xF8, 0x1E, 0x00, 0x00, - 0x00, 0x07, 0x80, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, 0x00, 0x07, - 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x0F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0x80, 0x00, 0x03, 0xC0, 0xF0, - 0x01, 0xE0, 0x78, 0x00, 0xF0, 0x78, 0x00, 0xF8, 0x3C, 0x00, 0x78, 0x1E, - 0x00, 0x3C, 0x0F, 0x00, 0x3E, 0x07, 0xC0, 0x3E, 0x03, 0xF0, 0x7E, 0x00, - 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0x00, 0x0F, 0xFE, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x01, 0xE0, 0x00, 0x0F, 0xC0, 0x78, 0x00, 0x07, 0xC0, 0x1E, 0x00, - 0x03, 0xE0, 0x0F, 0x80, 0x03, 0xF0, 0x03, 0xE0, 0x01, 0xF8, 0x00, 0xF0, - 0x00, 0xFC, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0x07, - 0xC0, 0x3F, 0x00, 0x01, 0xE0, 0x1F, 0x80, 0x00, 0x78, 0x0F, 0x80, 0x00, - 0x1E, 0x07, 0xC0, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x03, 0xE3, 0xF0, 0x00, - 0x00, 0xF1, 0xFC, 0x00, 0x00, 0x3C, 0xFF, 0x00, 0x00, 0x0F, 0x7F, 0xE0, - 0x00, 0x07, 0xFE, 0xF8, 0x00, 0x01, 0xFE, 0x1E, 0x00, 0x00, 0x7F, 0x07, - 0xC0, 0x00, 0x1F, 0x80, 0xF0, 0x00, 0x0F, 0xC0, 0x3E, 0x00, 0x03, 0xE0, - 0x07, 0x80, 0x00, 0xF0, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x0F, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x78, 0x00, 0x1F, 0x00, 0x1E, 0x00, 0x03, 0xE0, 0x07, 0x80, 0x00, 0xF8, - 0x03, 0xE0, 0x00, 0x1F, 0x00, 0xF0, 0x00, 0x07, 0xC0, 0x3C, 0x00, 0x00, - 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0xF8, - 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x01, 0xF0, 0x00, - 0x07, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x80, 0x00, 0x3E, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x7C, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, - 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, - 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xE0, - 0x01, 0xF8, 0x00, 0x00, 0x7E, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x0F, 0xF0, - 0x00, 0x03, 0xF8, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x3F, 0xC0, 0x00, 0x1F, - 0xC0, 0x7F, 0x80, 0x00, 0x7F, 0x80, 0xFF, 0x00, 0x00, 0xEF, 0x03, 0xFE, - 0x00, 0x03, 0xFE, 0x07, 0xBC, 0x00, 0x0F, 0x78, 0x0F, 0x3C, 0x00, 0x1E, - 0xF0, 0x1E, 0x78, 0x00, 0x79, 0xE0, 0x3C, 0xF0, 0x00, 0xF3, 0xC0, 0xF9, - 0xE0, 0x03, 0xCF, 0x81, 0xE3, 0xC0, 0x07, 0x9E, 0x03, 0xC7, 0x80, 0x1E, - 0x3C, 0x07, 0x8F, 0x00, 0x38, 0x78, 0x1F, 0x1E, 0x00, 0xF0, 0xF0, 0x3C, - 0x1E, 0x03, 0xC3, 0xE0, 0x78, 0x3C, 0x07, 0x87, 0x80, 0xF0, 0x78, 0x1E, - 0x0F, 0x01, 0xE0, 0xF0, 0x3C, 0x1E, 0x07, 0xC1, 0xE0, 0xF0, 0x7C, 0x0F, - 0x03, 0xC1, 0xE0, 0xF0, 0x1E, 0x07, 0x87, 0x81, 0xE0, 0x3C, 0x0F, 0x0E, - 0x03, 0xC0, 0x78, 0x0F, 0x3C, 0x07, 0x81, 0xF0, 0x1E, 0x70, 0x1F, 0x03, - 0xC0, 0x3D, 0xE0, 0x3C, 0x07, 0x80, 0x7F, 0x80, 0x78, 0x0F, 0x00, 0xFF, - 0x00, 0xF0, 0x3E, 0x01, 0xFC, 0x01, 0xE0, 0x78, 0x03, 0xF8, 0x07, 0xC0, - 0xF0, 0x07, 0xE0, 0x0F, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x01, 0xF0, - 0x00, 0x03, 0xC0, 0x7E, 0x00, 0x01, 0xF0, 0x3F, 0x80, 0x00, 0x78, 0x0F, - 0xE0, 0x00, 0x1E, 0x03, 0xFC, 0x00, 0x07, 0x80, 0xFF, 0x00, 0x03, 0xE0, - 0x3F, 0xE0, 0x00, 0xF0, 0x1F, 0xF8, 0x00, 0x3C, 0x07, 0x9E, 0x00, 0x0F, - 0x01, 0xE7, 0xC0, 0x03, 0xC0, 0x78, 0xF0, 0x01, 0xF0, 0x1E, 0x3E, 0x00, - 0x78, 0x0F, 0x87, 0x80, 0x1E, 0x03, 0xC1, 0xF0, 0x07, 0x80, 0xF0, 0x7C, - 0x01, 0xE0, 0x3C, 0x0F, 0x00, 0xF8, 0x1F, 0x03, 0xE0, 0x3C, 0x07, 0x80, - 0x78, 0x0F, 0x01, 0xE0, 0x1F, 0x03, 0xC0, 0x78, 0x07, 0xC1, 0xF0, 0x1E, - 0x00, 0xF8, 0x78, 0x0F, 0x80, 0x3E, 0x1E, 0x03, 0xC0, 0x07, 0x87, 0x80, - 0xF0, 0x01, 0xF1, 0xE0, 0x3C, 0x00, 0x3C, 0xF8, 0x0F, 0x00, 0x0F, 0xBC, - 0x07, 0xC0, 0x03, 0xEF, 0x01, 0xE0, 0x00, 0x7F, 0xC0, 0x78, 0x00, 0x1F, - 0xF0, 0x1E, 0x00, 0x03, 0xFC, 0x0F, 0x80, 0x00, 0xFE, 0x03, 0xC0, 0x00, - 0x1F, 0x80, 0xF0, 0x00, 0x07, 0xE0, 0x3C, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x00, - 0x0F, 0xFF, 0xFF, 0x80, 0x0F, 0xF0, 0x1F, 0xC0, 0x0F, 0xC0, 0x03, 0xF0, - 0x0F, 0x80, 0x00, 0xFC, 0x0F, 0x80, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0x0F, - 0x07, 0x80, 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x01, 0xE3, 0xC0, 0x00, 0x00, - 0xF3, 0xC0, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3D, 0xE0, 0x00, 0x00, - 0x1E, 0xF0, 0x00, 0x00, 0x0F, 0x78, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x03, 0xDE, 0x00, 0x00, 0x01, 0xEF, 0x00, 0x00, - 0x00, 0xF7, 0x80, 0x00, 0x00, 0xFB, 0xC0, 0x00, 0x00, 0x79, 0xE0, 0x00, - 0x00, 0x3C, 0xF0, 0x00, 0x00, 0x3E, 0x78, 0x00, 0x00, 0x1E, 0x3E, 0x00, - 0x00, 0x1F, 0x0F, 0x00, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0x1F, 0x03, 0xF0, - 0x00, 0x1F, 0x00, 0xFC, 0x00, 0x3F, 0x80, 0x3F, 0x80, 0x7F, 0x80, 0x1F, - 0xFF, 0xFF, 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, - 0x0F, 0xF8, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0xE0, 0x3E, 0x00, 0x3F, 0x81, 0xE0, - 0x00, 0x7C, 0x0F, 0x00, 0x01, 0xE0, 0xF8, 0x00, 0x0F, 0x07, 0xC0, 0x00, - 0x78, 0x3C, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x1E, 0x0F, 0x00, 0x01, 0xE0, - 0xF8, 0x00, 0x0F, 0x07, 0xC0, 0x00, 0xF8, 0x3C, 0x00, 0x0F, 0x81, 0xE0, - 0x01, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, - 0x80, 0x3F, 0xFF, 0xF0, 0x01, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x00, 0x0F, 0xFF, 0xFF, - 0x80, 0x0F, 0xF0, 0x1F, 0xC0, 0x0F, 0xC0, 0x03, 0xF0, 0x0F, 0xC0, 0x00, - 0xFC, 0x0F, 0x80, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0x0F, 0x07, 0x80, 0x00, - 0x07, 0xC7, 0xC0, 0x00, 0x01, 0xE3, 0xC0, 0x00, 0x00, 0xF3, 0xC0, 0x00, - 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3D, 0xE0, 0x00, 0x00, 0x1E, 0xF0, 0x00, - 0x00, 0x0F, 0x78, 0x00, 0x00, 0x07, 0xB8, 0x00, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0x03, 0xDE, 0x00, 0x00, 0x01, 0xEF, 0x00, 0x00, 0x00, 0xF7, 0x80, - 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3C, 0xF0, - 0x00, 0x00, 0x3C, 0x78, 0x00, 0x08, 0x3E, 0x3E, 0x00, 0x0E, 0x1E, 0x0F, - 0x00, 0x0F, 0x9F, 0x07, 0xC0, 0x07, 0xFF, 0x03, 0xF0, 0x01, 0xFF, 0x00, - 0xFC, 0x00, 0x7F, 0x00, 0x3F, 0x80, 0xFF, 0x80, 0x1F, 0xFF, 0xFF, 0xE0, - 0x03, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x7E, 0x00, 0x0F, 0xF0, 0x1F, - 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xFF, - 0xC0, 0x07, 0xFF, 0xFF, 0xC0, 0x1F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFE, - 0x03, 0xE0, 0x00, 0xFC, 0x0F, 0x00, 0x01, 0xF0, 0x3C, 0x00, 0x03, 0xC1, - 0xF0, 0x00, 0x0F, 0x07, 0xC0, 0x00, 0x3C, 0x1E, 0x00, 0x00, 0xF0, 0x78, - 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x1E, 0x0F, 0x80, 0x00, 0x78, 0x3E, 0x00, - 0x03, 0xE0, 0xF0, 0x00, 0x1F, 0x03, 0xC0, 0x01, 0xF8, 0x0F, 0xFF, 0xFF, - 0xC0, 0x7F, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0xF0, - 0x1E, 0x00, 0x07, 0xE0, 0xF8, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x1E, 0x0F, - 0x00, 0x00, 0x78, 0x3C, 0x00, 0x01, 0xE0, 0xF0, 0x00, 0x07, 0x87, 0xC0, - 0x00, 0x1E, 0x1F, 0x00, 0x00, 0xF0, 0x78, 0x00, 0x03, 0xC1, 0xE0, 0x00, - 0x0F, 0x07, 0x80, 0x00, 0x3C, 0x3E, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x03, - 0xC3, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0xFC, - 0x00, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xC0, 0x1F, 0xC0, 0x7F, 0x01, - 0xF0, 0x00, 0xFC, 0x0F, 0x00, 0x03, 0xE0, 0xF0, 0x00, 0x0F, 0x07, 0x00, - 0x00, 0x78, 0x78, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0x1E, 0x1E, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, - 0xFF, 0xE0, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0x0F, - 0xFF, 0xC0, 0x00, 0x07, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x3C, 0xF0, 0x00, 0x01, 0xE7, - 0x80, 0x00, 0x0F, 0x3C, 0x00, 0x00, 0x71, 0xE0, 0x00, 0x07, 0x8F, 0x00, - 0x00, 0x3C, 0x7C, 0x00, 0x03, 0xC1, 0xF0, 0x00, 0x7C, 0x0F, 0xE0, 0x1F, - 0xC0, 0x3F, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xF8, 0x00, - 0x03, 0xFE, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFE, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x0F, 0x00, 0x00, 0x3C, 0x1E, - 0x00, 0x00, 0xF8, 0x7C, 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x03, 0xC1, 0xE0, - 0x00, 0x07, 0x83, 0xC0, 0x00, 0x0F, 0x0F, 0x80, 0x00, 0x3E, 0x1F, 0x00, - 0x00, 0x7C, 0x3C, 0x00, 0x00, 0xF0, 0x78, 0x00, 0x01, 0xE0, 0xF0, 0x00, - 0x03, 0xC3, 0xE0, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x1F, 0x0F, 0x00, 0x00, - 0x3C, 0x1E, 0x00, 0x00, 0x78, 0x3C, 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x03, - 0xE1, 0xF0, 0x00, 0x07, 0x83, 0xC0, 0x00, 0x0F, 0x07, 0x80, 0x00, 0x1E, - 0x1F, 0x00, 0x00, 0x7C, 0x3E, 0x00, 0x00, 0xF8, 0x78, 0x00, 0x01, 0xE0, - 0xF0, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x0F, 0x83, 0xC0, 0x00, 0x1E, 0x07, - 0x80, 0x00, 0x7C, 0x0F, 0x80, 0x01, 0xF0, 0x0F, 0x80, 0x07, 0xE0, 0x1F, - 0xC0, 0x7F, 0x80, 0x1F, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0xF0, 0x00, 0x1F, - 0xFF, 0xC0, 0x00, 0x07, 0xFC, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFF, 0xC0, - 0x00, 0x0F, 0xBE, 0x00, 0x00, 0x79, 0xF0, 0x00, 0x07, 0xC7, 0x80, 0x00, - 0x3C, 0x3C, 0x00, 0x03, 0xE1, 0xE0, 0x00, 0x1E, 0x0F, 0x80, 0x01, 0xF0, - 0x7C, 0x00, 0x0F, 0x03, 0xE0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x80, 0x78, - 0x00, 0x78, 0x03, 0xC0, 0x07, 0xC0, 0x1E, 0x00, 0x3C, 0x00, 0xF0, 0x03, - 0xE0, 0x07, 0xC0, 0x1E, 0x00, 0x3E, 0x01, 0xF0, 0x01, 0xF0, 0x0F, 0x00, - 0x07, 0x80, 0xF0, 0x00, 0x3C, 0x07, 0x80, 0x01, 0xE0, 0x78, 0x00, 0x0F, - 0x07, 0xC0, 0x00, 0x7C, 0x3C, 0x00, 0x03, 0xE3, 0xE0, 0x00, 0x1F, 0x1E, - 0x00, 0x00, 0xF9, 0xF0, 0x00, 0x03, 0xCF, 0x00, 0x00, 0x1E, 0xF0, 0x00, - 0x00, 0xF7, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF0, - 0x00, 0x1F, 0x00, 0x03, 0xDE, 0x00, 0x07, 0xE0, 0x00, 0xFB, 0xC0, 0x00, - 0xFC, 0x00, 0x1E, 0x78, 0x00, 0x3F, 0x80, 0x07, 0xCF, 0x00, 0x07, 0xF0, - 0x00, 0xF9, 0xE0, 0x01, 0xFE, 0x00, 0x3E, 0x3C, 0x00, 0x7F, 0xC0, 0x07, - 0xC7, 0x80, 0x0F, 0x78, 0x01, 0xF0, 0xF0, 0x03, 0xEF, 0x00, 0x3E, 0x1E, - 0x00, 0x79, 0xE0, 0x0F, 0x83, 0xC0, 0x1F, 0x3C, 0x01, 0xF0, 0x78, 0x03, - 0xC7, 0x80, 0x3C, 0x0F, 0x00, 0xF8, 0xF0, 0x0F, 0x80, 0xE0, 0x1E, 0x1E, - 0x01, 0xE0, 0x1C, 0x07, 0xC1, 0xC0, 0x7C, 0x03, 0x80, 0xF0, 0x3C, 0x0F, - 0x00, 0x70, 0x3E, 0x07, 0x83, 0xE0, 0x0E, 0x07, 0x80, 0xF0, 0x78, 0x01, - 0xC1, 0xF0, 0x1E, 0x1F, 0x00, 0x3C, 0x3C, 0x03, 0xC3, 0xE0, 0x07, 0x8F, - 0x80, 0x78, 0x78, 0x00, 0xF1, 0xE0, 0x0F, 0x1F, 0x00, 0x1E, 0x7C, 0x01, - 0xE3, 0xC0, 0x03, 0xCF, 0x00, 0x3C, 0xF8, 0x00, 0x7B, 0xE0, 0x07, 0x9E, - 0x00, 0x0F, 0x78, 0x00, 0xF7, 0xC0, 0x01, 0xFF, 0x00, 0x1E, 0xF0, 0x00, - 0x3F, 0xC0, 0x03, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0x80, 0x00, 0xFE, - 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x7C, - 0x00, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x07, 0xC0, 0x00, 0x3E, 0x00, - 0x7C, 0x00, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x01, 0xF0, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x7C, 0x00, 0x00, 0xF8, - 0x0F, 0x80, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x00, 0x7C, 0x1F, 0x00, 0x00, - 0x07, 0xC3, 0xE0, 0x00, 0x00, 0x7C, 0x7C, 0x00, 0x00, 0x03, 0xEF, 0x80, - 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x0F, 0xBE, 0x00, - 0x00, 0x01, 0xF3, 0xE0, 0x00, 0x00, 0x3E, 0x1F, 0x00, 0x00, 0x03, 0xE1, - 0xF0, 0x00, 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x01, - 0xF0, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x03, 0xE0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x03, 0xF0, 0x03, 0xF0, 0x00, - 0x1F, 0x00, 0x7E, 0x00, 0x01, 0xF8, 0x0F, 0xC0, 0x00, 0x0F, 0x80, 0xF8, - 0x00, 0x00, 0x7D, 0xF0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x1F, 0x1F, 0x80, - 0x00, 0xF8, 0x3E, 0x00, 0x03, 0xE0, 0xF8, 0x00, 0x1F, 0x01, 0xF0, 0x00, - 0xF8, 0x07, 0xC0, 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0x3E, 0x01, 0xF0, - 0x00, 0xF8, 0x07, 0xC0, 0x01, 0xF0, 0x3E, 0x00, 0x07, 0xC1, 0xF0, 0x00, - 0x0F, 0x0F, 0x80, 0x00, 0x3E, 0x7C, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x01, - 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, - 0x1F, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xFE, - 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xFF, 0x80, 0x7F, - 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xF8, 0x00, 0x00, 0x7F, 0xC0, 0x1F, - 0xF0, 0x07, 0xFC, 0x01, 0xFE, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, - 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, - 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, - 0xE0, 0x00, 0x7F, 0xC0, 0x3F, 0xE0, 0x0F, 0xF8, 0x03, 0xFE, 0x00, 0xE3, - 0x8E, 0x38, 0xE1, 0x86, 0x18, 0x61, 0x87, 0x1C, 0x71, 0xC7, 0x0C, 0x30, - 0xC3, 0x0C, 0x38, 0xE3, 0x8E, 0x38, 0x61, 0x86, 0x18, 0x61, 0xC7, 0x1C, - 0x71, 0xC0, 0x00, 0x7F, 0xC0, 0x1F, 0xF0, 0x07, 0xFC, 0x03, 0xFE, 0x00, - 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, - 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, - 0x3C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, - 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, - 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x03, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x7F, 0x80, 0x3F, 0xE0, - 0x0F, 0xF8, 0x03, 0xFE, 0x00, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x1F, 0x00, - 0x1F, 0xC0, 0x0E, 0xE0, 0x0E, 0x70, 0x0F, 0x38, 0x07, 0x1C, 0x07, 0x0E, - 0x03, 0x83, 0x83, 0x81, 0xC3, 0xC0, 0xE1, 0xC0, 0x71, 0xC0, 0x39, 0xE0, - 0x0E, 0xE0, 0x07, 0xF0, 0x03, 0xF0, 0x01, 0xC0, 0x7F, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0xF8, 0x78, 0x3C, 0x1C, 0x0E, 0x0E, 0x07, 0x00, - 0x1F, 0xE0, 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, 0x7E, - 0x07, 0xE1, 0xF0, 0x07, 0xC3, 0xC0, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xF0, 0x00, 0x07, 0xE0, 0x0F, 0xFF, - 0xC0, 0xFF, 0xFF, 0x07, 0xFF, 0x9E, 0x1F, 0xC0, 0x3C, 0x7C, 0x00, 0x78, - 0xF0, 0x00, 0xF3, 0xC0, 0x03, 0xC7, 0x80, 0x07, 0x8F, 0x00, 0x1F, 0x1E, - 0x00, 0x7E, 0x3F, 0x07, 0xFC, 0x3F, 0xFF, 0x7E, 0x7F, 0xFC, 0xFC, 0x7F, - 0xF0, 0xF8, 0x3F, 0x00, 0xF0, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x0F, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x83, 0xE0, 0x03, 0xC7, 0xFC, - 0x01, 0xEF, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0xF7, 0x83, 0xF0, 0x7F, 0x00, - 0xF8, 0x3F, 0x00, 0x3E, 0x1F, 0x00, 0x0F, 0x1F, 0x80, 0x07, 0x8F, 0x80, - 0x03, 0xC7, 0x80, 0x01, 0xE3, 0xC0, 0x00, 0xF1, 0xE0, 0x00, 0x79, 0xF0, - 0x00, 0x3C, 0xF0, 0x00, 0x3C, 0x78, 0x00, 0x1E, 0x3C, 0x00, 0x0F, 0x1E, - 0x00, 0x0F, 0x9F, 0x00, 0x07, 0x8F, 0xC0, 0x07, 0xC7, 0xE0, 0x07, 0xC3, - 0xF8, 0x07, 0xC1, 0xFE, 0x0F, 0xC1, 0xEF, 0xFF, 0xE0, 0xF3, 0xFF, 0xC0, - 0x78, 0xFF, 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x03, 0xFF, - 0x80, 0x3F, 0xFF, 0x01, 0xFF, 0xFE, 0x0F, 0xE0, 0xF8, 0x7E, 0x01, 0xF1, - 0xF0, 0x03, 0xCF, 0x80, 0x0F, 0x3C, 0x00, 0x3D, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x1E, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x0F, 0x3C, - 0x00, 0x3C, 0xF8, 0x01, 0xE1, 0xF0, 0x0F, 0x87, 0xE0, 0xFC, 0x0F, 0xFF, - 0xE0, 0x3F, 0xFF, 0x00, 0x7F, 0xF8, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x3C, 0x00, 0x3F, 0x07, 0x80, 0x1F, 0xF8, 0xF0, 0x0F, 0xFF, 0x3E, 0x03, - 0xFF, 0xF7, 0x80, 0xFC, 0x1F, 0xF0, 0x3F, 0x00, 0xFE, 0x07, 0xC0, 0x0F, - 0xC1, 0xF0, 0x01, 0xF0, 0x3C, 0x00, 0x3E, 0x0F, 0x80, 0x07, 0xC1, 0xE0, - 0x00, 0x78, 0x3C, 0x00, 0x1F, 0x0F, 0x80, 0x03, 0xC1, 0xE0, 0x00, 0x78, - 0x3C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xE0, 0xF0, 0x00, 0x7C, 0x1E, 0x00, - 0x0F, 0x03, 0xC0, 0x03, 0xE0, 0x78, 0x00, 0x7C, 0x0F, 0x80, 0x1F, 0x80, - 0xF8, 0x07, 0xF0, 0x1F, 0x83, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0x3F, 0xFE, - 0xF0, 0x03, 0xFF, 0x1E, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x00, 0x1F, 0x80, - 0x01, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0xFE, 0x0F, 0xC1, - 0xF0, 0x07, 0xC7, 0xC0, 0x0F, 0x8F, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0x78, - 0x00, 0x3D, 0xE0, 0x00, 0x7B, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xBF, 0xFF, 0xFF, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x07, 0x80, 0x03, 0xCF, 0x80, 0x0F, 0x0F, 0x80, 0x3E, - 0x1F, 0x81, 0xF8, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0x80, 0x1F, 0xFC, 0x00, - 0x0F, 0xE0, 0x00, 0x00, 0x3E, 0x01, 0xFC, 0x07, 0xF8, 0x0F, 0xE0, 0x3E, - 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0xC0, 0x7F, 0xF0, 0xFF, 0xE3, - 0xFF, 0xC0, 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x3E, - 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x80, 0x1E, 0x00, - 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, - 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x07, - 0xFE, 0x3C, 0x01, 0xFF, 0xE7, 0x00, 0xFF, 0xFE, 0xE0, 0x1F, 0x83, 0xFC, - 0x07, 0xC0, 0x3F, 0x81, 0xF0, 0x03, 0xF0, 0x3C, 0x00, 0x7C, 0x0F, 0x00, - 0x0F, 0x81, 0xE0, 0x01, 0xF0, 0x78, 0x00, 0x3E, 0x0F, 0x00, 0x07, 0xC1, - 0xE0, 0x00, 0xF0, 0x38, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0xC1, 0xE0, 0x00, - 0xF8, 0x3C, 0x00, 0x1F, 0x07, 0x80, 0x03, 0xC0, 0xF0, 0x00, 0xF8, 0x1E, - 0x00, 0x3F, 0x03, 0xE0, 0x07, 0xE0, 0x3E, 0x01, 0xF8, 0x07, 0xE0, 0xFF, - 0x00, 0x7F, 0xFD, 0xE0, 0x0F, 0xFF, 0x3C, 0x00, 0xFF, 0xCF, 0x00, 0x07, - 0xE1, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x01, 0xE0, 0x03, 0xE0, - 0x3C, 0x00, 0xF8, 0x07, 0xE0, 0x7F, 0x00, 0x7F, 0xFF, 0xC0, 0x0F, 0xFF, - 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x78, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x83, 0xF0, 0x0F, - 0x1F, 0xF0, 0x1E, 0xFF, 0xF0, 0x3F, 0xFF, 0xE0, 0xFF, 0x87, 0xE1, 0xFC, - 0x07, 0xC3, 0xF0, 0x07, 0x87, 0xC0, 0x0F, 0x1F, 0x00, 0x1E, 0x3E, 0x00, - 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x01, 0xE1, 0xE0, 0x03, 0xC7, 0xC0, 0x07, - 0x8F, 0x00, 0x0F, 0x1E, 0x00, 0x1E, 0x3C, 0x00, 0x78, 0x78, 0x00, 0xF1, - 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x0F, 0x8F, 0x00, 0x1E, 0x1E, - 0x00, 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xC0, 0x01, - 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, 0xC0, - 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, - 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x00, 0x00, 0x07, - 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, - 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, - 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, - 0x07, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, - 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, - 0x78, 0x00, 0x3E, 0x00, 0x7F, 0x80, 0x3F, 0xC0, 0x0F, 0xE0, 0x03, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x0F, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x03, 0xC0, 0x0F, 0x81, 0xE0, 0x0F, 0x80, - 0xF0, 0x0F, 0x80, 0xF0, 0x1F, 0x00, 0x78, 0x1F, 0x00, 0x3C, 0x1F, 0x00, - 0x1E, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x0F, 0x1E, 0x00, 0x07, 0xBF, 0x80, - 0x03, 0xFF, 0xC0, 0x01, 0xFD, 0xE0, 0x01, 0xFC, 0xF8, 0x00, 0xFC, 0x3C, - 0x00, 0x7C, 0x1F, 0x00, 0x3C, 0x07, 0x80, 0x1E, 0x03, 0xC0, 0x1F, 0x01, - 0xF0, 0x0F, 0x00, 0x78, 0x07, 0x80, 0x3E, 0x03, 0xC0, 0x0F, 0x01, 0xE0, - 0x07, 0x81, 0xE0, 0x03, 0xE0, 0xF0, 0x00, 0xF0, 0x78, 0x00, 0x7C, 0x00, - 0x01, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x3C, 0x07, - 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, - 0xF0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x00, 0x00, - 0x07, 0xE0, 0x1F, 0x80, 0xF9, 0xFF, 0x07, 0xFC, 0x0F, 0x3F, 0xF8, 0xFF, - 0xE0, 0xF7, 0xFF, 0x9F, 0xFF, 0x0F, 0xF0, 0xFF, 0xC3, 0xF0, 0xFC, 0x07, - 0xF8, 0x1F, 0x1F, 0x80, 0x3F, 0x00, 0xF1, 0xF0, 0x03, 0xE0, 0x0F, 0x1E, - 0x00, 0x3C, 0x00, 0xF1, 0xE0, 0x03, 0xC0, 0x0F, 0x1E, 0x00, 0x3C, 0x00, - 0xF1, 0xE0, 0x07, 0x80, 0x0F, 0x3C, 0x00, 0x78, 0x01, 0xF3, 0xC0, 0x07, - 0x80, 0x1E, 0x3C, 0x00, 0x78, 0x01, 0xE3, 0xC0, 0x0F, 0x80, 0x1E, 0x3C, - 0x00, 0xF0, 0x01, 0xE7, 0xC0, 0x0F, 0x00, 0x3C, 0x78, 0x00, 0xF0, 0x03, - 0xC7, 0x80, 0x0F, 0x00, 0x3C, 0x78, 0x01, 0xE0, 0x03, 0xC7, 0x80, 0x1E, - 0x00, 0x3C, 0xF8, 0x01, 0xE0, 0x07, 0x8F, 0x00, 0x1E, 0x00, 0x78, 0xF0, - 0x01, 0xE0, 0x07, 0x8F, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x07, 0xE0, 0x1F, - 0x3F, 0xF0, 0x3C, 0xFF, 0xF0, 0x7B, 0xFF, 0xE0, 0xFF, 0x07, 0xE1, 0xF8, - 0x07, 0xC7, 0xE0, 0x07, 0x8F, 0x80, 0x0F, 0x1F, 0x00, 0x1E, 0x3C, 0x00, - 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x07, - 0x8F, 0x00, 0x0F, 0x1E, 0x00, 0x3E, 0x3C, 0x00, 0x78, 0xF0, 0x00, 0xF1, - 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x0F, 0x8F, 0x00, 0x1E, 0x3E, - 0x00, 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xC0, 0x00, - 0x1F, 0x80, 0x01, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0xFE, - 0x0F, 0xC1, 0xF0, 0x0F, 0x87, 0xC0, 0x0F, 0x8F, 0x00, 0x0F, 0x3C, 0x00, - 0x1E, 0x78, 0x00, 0x3D, 0xE0, 0x00, 0x7B, 0xC0, 0x00, 0xF7, 0x80, 0x01, - 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0x78, 0x00, 0x1E, 0xF0, 0x00, 0x3D, - 0xE0, 0x00, 0xF3, 0xC0, 0x01, 0xE7, 0x80, 0x07, 0x8F, 0x80, 0x1F, 0x0F, - 0x80, 0x7C, 0x1F, 0x83, 0xF8, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x1F, - 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x3C, 0x7F, 0xE0, - 0x07, 0xBF, 0xFE, 0x01, 0xFF, 0xFF, 0xC0, 0x3D, 0xE0, 0xFC, 0x07, 0xF0, - 0x0F, 0x80, 0xFC, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x07, 0xC0, 0x01, 0xE0, - 0xF8, 0x00, 0x3C, 0x1F, 0x00, 0x07, 0x83, 0xC0, 0x00, 0xF0, 0x78, 0x00, - 0x1E, 0x1F, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0xF0, 0x78, 0x00, 0x1E, 0x0F, - 0x00, 0x03, 0xC3, 0xE0, 0x00, 0xF8, 0x7C, 0x00, 0x1E, 0x0F, 0x80, 0x07, - 0xC1, 0xF8, 0x01, 0xF0, 0x3F, 0x80, 0x7C, 0x0F, 0xF8, 0x3F, 0x81, 0xEF, - 0xFF, 0xE0, 0x3C, 0xFF, 0xF8, 0x07, 0x8F, 0xFC, 0x00, 0xF0, 0xFE, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x3F, - 0xF8, 0xF0, 0x1F, 0xFF, 0x3C, 0x0F, 0xFF, 0xDF, 0x07, 0xE0, 0xFF, 0x83, - 0xE0, 0x1F, 0xE1, 0xF0, 0x03, 0xF8, 0x78, 0x00, 0xFE, 0x3C, 0x00, 0x1F, - 0x8F, 0x00, 0x07, 0xC7, 0x80, 0x01, 0xF1, 0xE0, 0x00, 0x7C, 0x78, 0x00, - 0x1F, 0x3C, 0x00, 0x0F, 0x8F, 0x00, 0x03, 0xE3, 0xC0, 0x00, 0xF8, 0xF0, - 0x00, 0x3E, 0x3C, 0x00, 0x1F, 0x8F, 0x00, 0x0F, 0xC3, 0xC0, 0x03, 0xF0, - 0xF8, 0x01, 0xFC, 0x1F, 0x00, 0xFF, 0x07, 0xE0, 0xFF, 0xC0, 0xFF, 0xFD, - 0xE0, 0x1F, 0xFE, 0x78, 0x03, 0xFF, 0x3E, 0x00, 0x3F, 0x0F, 0x80, 0x00, - 0x03, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x07, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0x87, 0xCF, 0xC3, 0xCF, 0xE1, 0xEF, - 0xE0, 0xFF, 0x80, 0x7F, 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x0F, - 0x00, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0x78, 0x00, 0x3C, 0x00, 0x3E, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, - 0x03, 0xC0, 0x03, 0xE0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x00, - 0x00, 0x3F, 0x80, 0x07, 0xFF, 0x00, 0xFF, 0xFC, 0x0F, 0xFF, 0xE0, 0xFC, - 0x1F, 0x87, 0x80, 0x3C, 0x7C, 0x01, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x00, - 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xFF, - 0xC0, 0x07, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xBC, - 0x00, 0x3D, 0xE0, 0x01, 0xEF, 0x00, 0x1F, 0x7C, 0x01, 0xF3, 0xF0, 0x1F, - 0x8F, 0xFF, 0xF8, 0x7F, 0xFF, 0x80, 0xFF, 0xF0, 0x01, 0xFE, 0x00, 0x03, - 0xC0, 0x1E, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC1, 0xFF, 0xEF, 0xFF, - 0x7F, 0xF0, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, - 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xE0, - 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0xF0, 0x7F, 0x81, - 0xF8, 0x07, 0xC0, 0x0F, 0x00, 0x0F, 0x0F, 0x00, 0x1E, 0x0F, 0x00, 0x1E, - 0x1F, 0x00, 0x1E, 0x1E, 0x00, 0x1E, 0x1E, 0x00, 0x1E, 0x1E, 0x00, 0x3C, - 0x1E, 0x00, 0x3C, 0x3E, 0x00, 0x3C, 0x3C, 0x00, 0x3C, 0x3C, 0x00, 0x3C, - 0x3C, 0x00, 0x7C, 0x3C, 0x00, 0x78, 0x78, 0x00, 0x78, 0x78, 0x00, 0x78, - 0x78, 0x00, 0x78, 0x78, 0x00, 0xF8, 0x78, 0x00, 0xF0, 0xF0, 0x01, 0xF0, - 0xF0, 0x03, 0xF0, 0xF0, 0x07, 0xF0, 0xF8, 0x1F, 0xF0, 0xFF, 0xFF, 0xE0, - 0x7F, 0xFD, 0xE0, 0x3F, 0xF1, 0xE0, 0x1F, 0xC0, 0x00, 0xF0, 0x00, 0x7F, - 0xC0, 0x01, 0xEF, 0x00, 0x0F, 0xBC, 0x00, 0x3C, 0x78, 0x01, 0xE1, 0xE0, - 0x07, 0x87, 0x80, 0x3C, 0x1E, 0x01, 0xF0, 0x78, 0x07, 0x81, 0xE0, 0x3E, - 0x07, 0x80, 0xF0, 0x1E, 0x07, 0x80, 0x38, 0x1E, 0x00, 0xF0, 0xF0, 0x03, - 0xC7, 0xC0, 0x0F, 0x1E, 0x00, 0x3C, 0xF0, 0x00, 0xF3, 0xC0, 0x03, 0xDE, - 0x00, 0x07, 0x78, 0x00, 0x1F, 0xC0, 0x00, 0x7E, 0x00, 0x01, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x07, 0xC0, 0x0F, 0x78, 0x03, - 0xE0, 0x0F, 0xBC, 0x03, 0xF0, 0x07, 0x9E, 0x01, 0xF8, 0x03, 0xCF, 0x00, - 0xFC, 0x03, 0xC7, 0x80, 0xFE, 0x01, 0xE3, 0xC0, 0x77, 0x01, 0xE0, 0xE0, - 0x7B, 0x80, 0xF0, 0x70, 0x39, 0xC0, 0xF0, 0x38, 0x3C, 0xE0, 0x78, 0x1C, - 0x1E, 0x78, 0x78, 0x0F, 0x1E, 0x3C, 0x3C, 0x07, 0x8F, 0x1E, 0x3C, 0x03, - 0xC7, 0x0F, 0x1E, 0x01, 0xE7, 0x87, 0x9E, 0x00, 0xF3, 0x81, 0xCF, 0x00, - 0x7B, 0xC0, 0xEF, 0x00, 0x3D, 0xC0, 0x77, 0x80, 0x1F, 0xE0, 0x3F, 0x80, - 0x0F, 0xF0, 0x1F, 0xC0, 0x07, 0xF0, 0x0F, 0xC0, 0x01, 0xF8, 0x07, 0xE0, - 0x00, 0xF8, 0x03, 0xE0, 0x00, 0x7C, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0xF0, - 0x00, 0x00, 0x03, 0xC0, 0x07, 0xC0, 0xF8, 0x01, 0xE0, 0x1E, 0x00, 0xF0, - 0x07, 0x80, 0x78, 0x00, 0xF0, 0x3C, 0x00, 0x3C, 0x1F, 0x00, 0x0F, 0x8F, - 0x80, 0x01, 0xE7, 0xC0, 0x00, 0x7D, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0xC0, 0x00, - 0x07, 0xF0, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xF7, 0x80, 0x00, 0xF9, 0xF0, - 0x00, 0x3C, 0x3C, 0x00, 0x1E, 0x0F, 0x80, 0x0F, 0x01, 0xE0, 0x07, 0x80, - 0x7C, 0x03, 0xE0, 0x0F, 0x01, 0xF0, 0x03, 0xE0, 0xF8, 0x00, 0x78, 0x00, - 0x03, 0xC0, 0x01, 0xE0, 0x78, 0x00, 0x78, 0x0F, 0x00, 0x0F, 0x01, 0xE0, - 0x03, 0xC0, 0x3C, 0x00, 0x78, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x07, 0xC0, - 0x0F, 0x00, 0xF0, 0x01, 0xE0, 0x3C, 0x00, 0x3C, 0x07, 0x80, 0x07, 0x81, - 0xE0, 0x00, 0xF0, 0x3C, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0xC1, 0xC0, 0x00, - 0x3C, 0x78, 0x00, 0x07, 0x9E, 0x00, 0x00, 0xF3, 0xC0, 0x00, 0x1E, 0xF0, - 0x00, 0x03, 0xDE, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x0F, 0xE0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x0F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x00, 0x01, - 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xE0, - 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, - 0x00, 0x01, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, - 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, - 0x00, 0x03, 0xC0, 0x00, 0x03, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x7E, 0x00, 0xFE, - 0x00, 0xF0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x07, 0x80, - 0x07, 0x80, 0x0F, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x00, - 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, - 0x38, 0x00, 0x38, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x78, 0x00, 0x78, 0x00, - 0x78, 0x00, 0x78, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0x7C, 0x00, 0x00, 0x70, - 0x07, 0x00, 0x60, 0x06, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0C, 0x01, 0xC0, - 0x1C, 0x01, 0xC0, 0x1C, 0x01, 0x80, 0x38, 0x03, 0x80, 0x38, 0x03, 0x00, - 0x30, 0x07, 0x00, 0x70, 0x07, 0x00, 0x60, 0x0E, 0x00, 0xE0, 0x0E, 0x00, - 0xE0, 0x0C, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x1C, 0x01, 0x80, 0x38, 0x03, - 0x80, 0x38, 0x03, 0x00, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x60, 0x0E, - 0x00, 0xE0, 0x06, 0x00, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3F, 0x00, 0x0F, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x1C, - 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0F, - 0x00, 0x07, 0x00, 0x1F, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x00, 0xF0, - 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xE0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x07, 0x80, - 0x0F, 0x00, 0x7F, 0x00, 0x7E, 0x00, 0xF8, 0x00, 0x0F, 0x00, 0x01, 0xFE, - 0x00, 0xCF, 0xFC, 0x0E, 0xE3, 0xF0, 0xE6, 0x07, 0xFF, 0x60, 0x0F, 0xF0, - 0x00, 0x1E, 0x00}; - -const GFXglyph FreeSansOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 13, 0, 1}, // 0x20 ' ' - {0, 11, 34, 13, 6, -33}, // 0x21 '!' - {47, 13, 12, 17, 8, -32}, // 0x22 '"' - {67, 28, 34, 26, 3, -32}, // 0x23 '#' - {186, 26, 42, 26, 3, -35}, // 0x24 '$' - {323, 36, 34, 42, 6, -32}, // 0x25 '%' - {476, 26, 34, 31, 4, -32}, // 0x26 '&' - {587, 5, 12, 9, 8, -32}, // 0x27 ''' - {595, 15, 44, 16, 5, -33}, // 0x28 '(' - {678, 15, 44, 16, 1, -33}, // 0x29 ')' - {761, 14, 13, 18, 8, -33}, // 0x2A '*' - {784, 23, 22, 27, 5, -20}, // 0x2B '+' - {848, 7, 12, 13, 3, -4}, // 0x2C ',' - {859, 12, 4, 16, 5, -14}, // 0x2D '-' - {865, 6, 5, 13, 4, -4}, // 0x2E '.' - {869, 21, 35, 13, -1, -33}, // 0x2F '/' - {961, 23, 34, 26, 5, -32}, // 0x30 '0' - {1059, 13, 33, 26, 10, -32}, // 0x31 '1' - {1113, 27, 33, 26, 2, -32}, // 0x32 '2' - {1225, 25, 34, 26, 3, -32}, // 0x33 '3' - {1332, 24, 33, 26, 3, -32}, // 0x34 '4' - {1431, 27, 34, 26, 3, -32}, // 0x35 '5' - {1546, 24, 34, 26, 4, -32}, // 0x36 '6' - {1648, 26, 33, 26, 6, -32}, // 0x37 '7' - {1756, 25, 34, 26, 3, -32}, // 0x38 '8' - {1863, 24, 34, 26, 4, -32}, // 0x39 '9' - {1965, 10, 25, 13, 5, -24}, // 0x3A ':' - {1997, 11, 32, 13, 4, -24}, // 0x3B ';' - {2041, 26, 23, 27, 4, -22}, // 0x3C '<' - {2116, 26, 12, 27, 3, -16}, // 0x3D '=' - {2155, 26, 23, 27, 2, -21}, // 0x3E '>' - {2230, 20, 35, 26, 9, -34}, // 0x3F '?' - {2318, 45, 42, 48, 4, -34}, // 0x40 '@' - {2555, 30, 34, 31, 1, -33}, // 0x41 'A' - {2683, 29, 34, 31, 4, -33}, // 0x42 'B' - {2807, 30, 36, 33, 5, -34}, // 0x43 'C' - {2942, 31, 34, 33, 4, -33}, // 0x44 'D' - {3074, 31, 34, 31, 4, -33}, // 0x45 'E' - {3206, 30, 34, 28, 4, -33}, // 0x46 'F' - {3334, 33, 36, 37, 5, -34}, // 0x47 'G' - {3483, 33, 34, 34, 4, -33}, // 0x48 'H' - {3624, 11, 34, 13, 5, -33}, // 0x49 'I' - {3671, 25, 35, 24, 2, -33}, // 0x4A 'J' - {3781, 34, 34, 31, 4, -33}, // 0x4B 'K' - {3926, 22, 34, 26, 4, -33}, // 0x4C 'L' - {4020, 39, 34, 40, 4, -33}, // 0x4D 'M' - {4186, 34, 34, 34, 4, -33}, // 0x4E 'N' - {4331, 33, 36, 36, 5, -34}, // 0x4F 'O' - {4480, 29, 34, 30, 4, -33}, // 0x50 'P' - {4604, 33, 38, 36, 5, -34}, // 0x51 'Q' - {4761, 30, 34, 33, 4, -33}, // 0x52 'R' - {4889, 29, 36, 31, 4, -34}, // 0x53 'S' - {5020, 28, 34, 29, 7, -33}, // 0x54 'T' - {5139, 31, 35, 34, 6, -33}, // 0x55 'U' - {5275, 29, 34, 30, 8, -33}, // 0x56 'V' - {5399, 43, 34, 44, 8, -33}, // 0x57 'W' - {5582, 36, 34, 31, 1, -33}, // 0x58 'X' - {5735, 30, 34, 32, 8, -33}, // 0x59 'Y' - {5863, 34, 34, 29, 1, -33}, // 0x5A 'Z' - {6008, 18, 44, 13, 1, -33}, // 0x5B '[' - {6107, 6, 35, 13, 7, -33}, // 0x5C '\' - {6134, 18, 44, 13, -1, -33}, // 0x5D ']' - {6233, 17, 18, 22, 6, -32}, // 0x5E '^' - {6272, 29, 2, 26, -3, 7}, // 0x5F '_' - {6280, 8, 7, 16, 8, -34}, // 0x60 '`' - {6287, 23, 27, 26, 3, -25}, // 0x61 'a' - {6365, 25, 35, 26, 3, -33}, // 0x62 'b' - {6475, 22, 27, 24, 4, -25}, // 0x63 'c' - {6550, 27, 35, 26, 4, -33}, // 0x64 'd' - {6669, 23, 27, 26, 4, -25}, // 0x65 'e' - {6747, 15, 34, 12, 3, -33}, // 0x66 'f' - {6811, 27, 36, 26, 2, -25}, // 0x67 'g' - {6933, 23, 34, 25, 3, -33}, // 0x68 'h' - {7031, 11, 34, 10, 3, -33}, // 0x69 'i' - {7078, 18, 44, 11, -2, -33}, // 0x6A 'j' - {7177, 25, 34, 24, 3, -33}, // 0x6B 'k' - {7284, 11, 34, 10, 3, -33}, // 0x6C 'l' - {7331, 36, 26, 38, 3, -25}, // 0x6D 'm' - {7448, 23, 26, 25, 3, -25}, // 0x6E 'n' - {7523, 23, 27, 26, 4, -25}, // 0x6F 'o' - {7601, 27, 36, 26, 1, -25}, // 0x70 'p' - {7723, 26, 36, 26, 3, -25}, // 0x71 'q' - {7840, 17, 26, 15, 3, -25}, // 0x72 'r' - {7896, 21, 27, 24, 3, -25}, // 0x73 's' - {7967, 13, 32, 12, 4, -30}, // 0x74 't' - {8019, 24, 26, 25, 4, -24}, // 0x75 'u' - {8097, 22, 25, 23, 6, -24}, // 0x76 'v' - {8166, 33, 25, 34, 6, -24}, // 0x77 'w' - {8270, 26, 25, 23, 1, -24}, // 0x78 'x' - {8352, 27, 35, 23, 0, -24}, // 0x79 'y' - {8471, 25, 25, 23, 1, -24}, // 0x7A 'z' - {8550, 16, 44, 16, 5, -33}, // 0x7B '{' - {8638, 12, 44, 12, 3, -33}, // 0x7C '|' - {8704, 16, 44, 16, -1, -33}, // 0x7D '}' - {8792, 21, 7, 27, 6, -19}}; // 0x7E '~' - -const GFXfont FreeSansOblique24pt7b PROGMEM = { - (uint8_t *)FreeSansOblique24pt7bBitmaps, - (GFXglyph *)FreeSansOblique24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 9483 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h deleted file mode 100644 index 0b5db81..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h +++ /dev/null @@ -1,222 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique9pt7bBitmaps[] PROGMEM = { - 0x10, 0x84, 0x22, 0x10, 0x84, 0x42, 0x10, 0x08, 0x00, 0xDE, 0xE5, 0x20, - 0x06, 0x40, 0x88, 0x13, 0x06, 0x43, 0xFE, 0x32, 0x04, 0x40, 0x98, 0x32, - 0x1F, 0xF0, 0x98, 0x22, 0x04, 0xC0, 0x02, 0x01, 0xF8, 0x6B, 0x99, 0x33, - 0x40, 0x68, 0x0F, 0x00, 0xF8, 0x07, 0xC1, 0x1B, 0x23, 0x64, 0x4E, 0x98, - 0xFC, 0x04, 0x00, 0x80, 0x3C, 0x08, 0xCC, 0x23, 0x18, 0x86, 0x32, 0x0C, - 0x64, 0x19, 0x90, 0x1E, 0x40, 0x01, 0x1E, 0x02, 0x66, 0x09, 0x8C, 0x23, - 0x18, 0x86, 0x62, 0x07, 0x80, 0x0F, 0x06, 0x63, 0x18, 0xC6, 0x3F, 0x07, - 0x03, 0xC1, 0xB3, 0xC7, 0xB0, 0xCC, 0x33, 0x3E, 0x79, 0x80, 0xFA, 0x04, - 0x10, 0x60, 0x83, 0x04, 0x18, 0x30, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x10, - 0x30, 0x20, 0x08, 0x18, 0x10, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x18, 0x30, - 0x41, 0x82, 0x0C, 0x10, 0x40, 0x19, 0x73, 0x16, 0x48, 0x04, 0x04, 0x02, - 0x1F, 0xF0, 0x80, 0x80, 0x40, 0x20, 0x6D, 0x28, 0xF0, 0xC0, 0x01, 0x02, - 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x0F, - 0x19, 0xC8, 0x6C, 0x36, 0x1A, 0x0F, 0x05, 0x86, 0xC3, 0x61, 0xB1, 0x9C, - 0x87, 0x80, 0x08, 0xCD, 0xE3, 0x18, 0xC4, 0x23, 0x18, 0xC4, 0x00, 0x07, - 0x83, 0x1C, 0x41, 0x98, 0x30, 0x06, 0x01, 0x80, 0x60, 0x38, 0x1C, 0x06, - 0x01, 0x80, 0x20, 0x0F, 0xF8, 0x0F, 0x86, 0x73, 0x0C, 0x83, 0x00, 0xC0, - 0x60, 0xE0, 0x06, 0x01, 0xB0, 0x6C, 0x13, 0x8C, 0x7C, 0x00, 0x00, 0x80, - 0xC0, 0xE0, 0xA0, 0x90, 0x98, 0x8C, 0x86, 0xFF, 0x81, 0x01, 0x80, 0xC0, - 0x60, 0x0F, 0xC3, 0x00, 0x40, 0x08, 0x03, 0x00, 0x7F, 0x1C, 0x70, 0x06, - 0x00, 0xC0, 0x1B, 0x06, 0x71, 0x87, 0xE0, 0x0F, 0x86, 0x73, 0x0D, 0x80, - 0x60, 0x1F, 0xCF, 0x3B, 0x86, 0xC1, 0xB0, 0x6C, 0x33, 0x98, 0x3C, 0x00, - 0x7F, 0xC0, 0x20, 0x10, 0x0C, 0x06, 0x01, 0x00, 0x80, 0x60, 0x10, 0x0C, - 0x02, 0x01, 0x80, 0x40, 0x00, 0x0F, 0x86, 0x73, 0x0C, 0xC3, 0x30, 0xCC, - 0x61, 0xE1, 0x86, 0x41, 0xB0, 0x6C, 0x13, 0x8C, 0x3E, 0x00, 0x0F, 0x06, - 0x73, 0x0D, 0x83, 0x60, 0xD8, 0x77, 0x3C, 0xFE, 0x01, 0x80, 0x6C, 0x33, - 0x98, 0x7C, 0x00, 0x30, 0x00, 0x00, 0x00, 0xC0, 0x18, 0x00, 0x00, 0x00, - 0x0C, 0x62, 0x11, 0x00, 0x00, 0x01, 0xC3, 0x8F, 0x0C, 0x07, 0x00, 0xE0, - 0x1E, 0x01, 0x00, 0x7F, 0xC0, 0x00, 0x03, 0xFE, 0x40, 0x3C, 0x03, 0x80, - 0x70, 0x18, 0x78, 0xE1, 0xC0, 0x00, 0x00, 0x1F, 0x30, 0xD0, 0x78, 0x30, - 0x30, 0x30, 0x30, 0x30, 0x30, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0xFE, - 0x00, 0xC0, 0xE0, 0xC0, 0x18, 0x61, 0xD3, 0x31, 0x9C, 0xD8, 0xC2, 0x36, - 0x31, 0x8F, 0x18, 0x67, 0xC6, 0x11, 0xB1, 0x8C, 0xCC, 0x67, 0x63, 0x0E, - 0xF0, 0x60, 0x00, 0x1C, 0x00, 0x01, 0x81, 0x00, 0x1F, 0xC0, 0x01, 0xC0, - 0x1C, 0x03, 0xC0, 0x24, 0x06, 0x60, 0x46, 0x0C, 0x61, 0x86, 0x1F, 0xE3, - 0x06, 0x20, 0x26, 0x03, 0x40, 0x30, 0x1F, 0xE1, 0x87, 0x30, 0x33, 0x03, - 0x30, 0x23, 0x06, 0x3F, 0xC6, 0x06, 0x60, 0x66, 0x06, 0x60, 0x66, 0x0C, - 0x7F, 0x80, 0x07, 0xC1, 0x86, 0x30, 0x32, 0x03, 0x60, 0x04, 0x00, 0xC0, - 0x0C, 0x00, 0xC0, 0x6C, 0x06, 0xC0, 0xC6, 0x18, 0x3E, 0x00, 0x1F, 0xE0, - 0xC1, 0x84, 0x06, 0x60, 0x33, 0x01, 0x98, 0x0C, 0x80, 0x64, 0x02, 0x60, - 0x33, 0x01, 0x98, 0x18, 0x81, 0x87, 0xF0, 0x00, 0x1F, 0xF1, 0x80, 0x10, - 0x03, 0x00, 0x30, 0x03, 0x00, 0x3F, 0xE2, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x04, 0x00, 0x7F, 0xC0, 0x1F, 0xF1, 0x80, 0x10, 0x03, 0x00, 0x30, 0x03, - 0x00, 0x3F, 0xC2, 0x00, 0x60, 0x06, 0x00, 0x60, 0x04, 0x00, 0x40, 0x00, - 0x07, 0xE0, 0xE1, 0x8C, 0x06, 0xC0, 0x36, 0x00, 0x60, 0x03, 0x07, 0xF8, - 0x02, 0xC0, 0x36, 0x01, 0x98, 0x1C, 0xE1, 0xC1, 0xF2, 0x00, 0x18, 0x08, - 0xC0, 0xC4, 0x06, 0x60, 0x33, 0x01, 0x18, 0x18, 0xFF, 0xC4, 0x06, 0x60, - 0x23, 0x01, 0x18, 0x18, 0x80, 0xC4, 0x06, 0x00, 0x33, 0x32, 0x26, 0x66, - 0x44, 0xCC, 0xC0, 0x00, 0xC0, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x30, - 0x0C, 0x03, 0x30, 0xCC, 0x63, 0x18, 0x7C, 0x00, 0x18, 0x18, 0x60, 0xC1, - 0x0E, 0x0C, 0x60, 0x33, 0x00, 0xD8, 0x03, 0xF0, 0x0C, 0xC0, 0x61, 0x81, - 0x86, 0x06, 0x0C, 0x10, 0x30, 0x40, 0x60, 0x18, 0x0C, 0x04, 0x06, 0x03, - 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, 0x18, 0x08, 0x07, 0xF8, 0x18, 0x06, - 0x18, 0x0E, 0x18, 0x0E, 0x34, 0x1E, 0x34, 0x36, 0x34, 0x34, 0x24, 0x64, - 0x24, 0x6C, 0x64, 0xCC, 0x64, 0x8C, 0x65, 0x88, 0x43, 0x08, 0x43, 0x18, - 0x18, 0x08, 0xE0, 0x47, 0x06, 0x6C, 0x33, 0x61, 0x99, 0x08, 0x8C, 0xC4, - 0x66, 0x61, 0xB3, 0x0D, 0x18, 0x38, 0x81, 0xC4, 0x06, 0x00, 0x07, 0xC0, - 0xC3, 0x8C, 0x0E, 0xC0, 0x36, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, - 0x36, 0x01, 0xB8, 0x18, 0xE1, 0x81, 0xF0, 0x00, 0x1F, 0xE1, 0x83, 0x10, - 0x33, 0x03, 0x30, 0x33, 0x06, 0x3F, 0xC2, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x04, 0x00, 0x40, 0x00, 0x07, 0xC0, 0xC3, 0x8C, 0x0E, 0xC0, 0x36, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x36, 0x09, 0xB8, 0x78, 0xE3, 0x81, - 0xF6, 0x00, 0x10, 0x1F, 0xF0, 0xC0, 0xC4, 0x06, 0x60, 0x33, 0x01, 0x18, - 0x18, 0xFF, 0x04, 0x0C, 0x60, 0x63, 0x03, 0x18, 0x18, 0x80, 0xC4, 0x06, - 0x00, 0x07, 0xC1, 0x87, 0x30, 0x33, 0x03, 0x30, 0x03, 0xC0, 0x0F, 0xC0, - 0x1E, 0x00, 0x6C, 0x06, 0xC0, 0x46, 0x0C, 0x3F, 0x00, 0xFF, 0xC3, 0x00, - 0xC0, 0x20, 0x18, 0x06, 0x01, 0x80, 0x60, 0x10, 0x0C, 0x03, 0x00, 0xC0, - 0x20, 0x00, 0x30, 0x13, 0x03, 0x20, 0x36, 0x03, 0x60, 0x26, 0x06, 0x60, - 0x64, 0x06, 0xC0, 0x6C, 0x04, 0xC0, 0xCE, 0x18, 0x3E, 0x00, 0xC0, 0x78, - 0x0B, 0x03, 0x20, 0xC4, 0x18, 0xC6, 0x18, 0x83, 0x30, 0x64, 0x0D, 0x80, - 0xA0, 0x1C, 0x03, 0x00, 0xC1, 0x83, 0xC1, 0x83, 0xC3, 0x86, 0xC2, 0x86, - 0xC6, 0x84, 0xC4, 0x8C, 0xCC, 0xC8, 0xC8, 0xD8, 0xD8, 0xD0, 0xD0, 0xF0, - 0x70, 0xE0, 0x60, 0xE0, 0x60, 0xE0, 0x0C, 0x0C, 0x30, 0x60, 0x63, 0x01, - 0x98, 0x02, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xE0, 0x0C, 0x80, 0x33, 0x01, - 0x8C, 0x0C, 0x18, 0x60, 0x60, 0xC0, 0x66, 0x0C, 0x60, 0xC2, 0x18, 0x33, - 0x03, 0x60, 0x1C, 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x01, 0x00, 0x30, - 0x00, 0x1F, 0xF0, 0x07, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, - 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x00, 0xFF, 0xC0, 0x0E, 0x10, 0x20, - 0x41, 0x02, 0x04, 0x08, 0x20, 0x40, 0x81, 0x04, 0x08, 0x10, 0x20, 0xE0, - 0xAA, 0xA9, 0x55, 0x40, 0x0E, 0x08, 0x10, 0x20, 0x41, 0x02, 0x04, 0x08, - 0x20, 0x40, 0x81, 0x04, 0x08, 0x10, 0xE0, 0x0C, 0x18, 0x51, 0xA2, 0x4C, - 0x50, 0x80, 0xFF, 0xE0, 0xC8, 0x80, 0x0F, 0x86, 0x33, 0x0C, 0x03, 0x03, - 0xDF, 0xEE, 0x0B, 0x02, 0xC1, 0x9F, 0xE0, 0x10, 0x04, 0x01, 0x00, 0xDC, - 0x39, 0x88, 0x32, 0x0D, 0x83, 0x40, 0xD0, 0x64, 0x1B, 0x8C, 0xBC, 0x00, - 0x1F, 0x18, 0xD8, 0x6C, 0x0C, 0x06, 0x03, 0x01, 0x86, 0x66, 0x3E, 0x00, - 0x00, 0x20, 0x08, 0x01, 0x0F, 0x23, 0x14, 0xC1, 0x18, 0x26, 0x04, 0xC0, - 0x98, 0x23, 0x04, 0x71, 0x87, 0xD0, 0x0F, 0x0C, 0x76, 0x0D, 0x83, 0xFF, - 0xF0, 0x0C, 0x03, 0x06, 0x63, 0x0F, 0x80, 0x1C, 0xC2, 0x1E, 0x20, 0x84, - 0x10, 0x41, 0x04, 0x20, 0x80, 0x0F, 0x46, 0x33, 0x0C, 0xC1, 0x60, 0xD8, - 0x26, 0x09, 0x86, 0x71, 0x8F, 0xE0, 0x10, 0x04, 0xC2, 0x1F, 0x00, 0x10, - 0x04, 0x01, 0x00, 0x9F, 0x39, 0x88, 0x22, 0x09, 0x02, 0x40, 0x90, 0x44, - 0x12, 0x04, 0x81, 0x00, 0x10, 0x02, 0x22, 0x64, 0x44, 0x48, 0x80, 0x04, - 0x00, 0x01, 0x08, 0x20, 0x82, 0x08, 0x41, 0x04, 0x10, 0x42, 0x08, 0xE0, - 0x10, 0x08, 0x04, 0x04, 0x32, 0x31, 0x20, 0xA0, 0xB8, 0x6C, 0x22, 0x11, - 0x90, 0xC8, 0x30, 0x11, 0x22, 0x22, 0x64, 0x44, 0x48, 0x80, 0x2F, 0x3C, - 0x63, 0x8C, 0x86, 0x19, 0x08, 0x44, 0x10, 0x88, 0x21, 0x10, 0x82, 0x21, - 0x04, 0x82, 0x11, 0x04, 0x20, 0x00, 0x0B, 0xF3, 0x18, 0x82, 0x20, 0x90, - 0x24, 0x09, 0x04, 0x41, 0x20, 0x48, 0x10, 0x0F, 0x0C, 0x76, 0x0D, 0x83, - 0xC0, 0xF0, 0x3C, 0x1B, 0x06, 0xE3, 0x0F, 0x00, 0x17, 0xC3, 0x1C, 0x41, - 0x98, 0x32, 0x06, 0x40, 0xC8, 0x33, 0x06, 0x71, 0x8B, 0xC1, 0x00, 0x20, - 0x08, 0x01, 0x00, 0x00, 0x1E, 0xCC, 0x66, 0x09, 0x82, 0xC0, 0xB0, 0x4C, - 0x13, 0x04, 0x63, 0x0F, 0xC0, 0x20, 0x08, 0x02, 0x00, 0x80, 0x2C, 0x60, - 0x81, 0x04, 0x08, 0x10, 0x20, 0x81, 0x00, 0x1E, 0x33, 0x63, 0x60, 0x70, - 0x1E, 0x03, 0xC3, 0xC6, 0x7C, 0x22, 0xF2, 0x44, 0x44, 0xCC, 0xCE, 0x21, - 0x20, 0x90, 0x48, 0x24, 0x12, 0x13, 0x09, 0x84, 0xE6, 0x3E, 0x00, 0xC1, - 0xE1, 0xB0, 0xC8, 0xC4, 0x43, 0x61, 0xA0, 0xF0, 0x70, 0x18, 0x00, 0xC7, - 0x1E, 0x38, 0xB3, 0xCD, 0x96, 0x4C, 0xB6, 0x6D, 0xB1, 0x4D, 0x0E, 0x78, - 0x63, 0x83, 0x1C, 0x00, 0x10, 0xC3, 0x10, 0x24, 0x07, 0x80, 0xE0, 0x1C, - 0x07, 0x81, 0x90, 0x23, 0x08, 0x20, 0x30, 0x46, 0x18, 0x42, 0x08, 0xC1, - 0x10, 0x24, 0x07, 0x80, 0xE0, 0x1C, 0x03, 0x00, 0x60, 0x08, 0x03, 0x01, - 0xC0, 0x00, 0x3F, 0x80, 0x80, 0x80, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, - 0x7F, 0x00, 0x18, 0x88, 0x42, 0x10, 0x88, 0xC3, 0x18, 0x88, 0x42, 0x18, - 0xE0, 0x11, 0x22, 0x22, 0x24, 0x44, 0x4C, 0x88, 0x88, 0x00, 0x38, 0xC2, - 0x10, 0x88, 0xC6, 0x18, 0x88, 0x42, 0x10, 0x88, 0xC0, 0x70, 0x4E, 0x41, - 0xC0}; - -const GFXglyph FreeSansOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 5, 13, 5, 2, -12}, // 0x21 '!' - {9, 5, 4, 6, 3, -12}, // 0x22 '"' - {12, 11, 13, 10, 1, -12}, // 0x23 '#' - {30, 11, 16, 10, 1, -13}, // 0x24 '$' - {52, 15, 13, 16, 2, -12}, // 0x25 '%' - {77, 10, 13, 12, 2, -12}, // 0x26 '&' - {94, 2, 4, 3, 3, -12}, // 0x27 ''' - {95, 7, 17, 6, 2, -12}, // 0x28 '(' - {110, 7, 17, 6, -1, -12}, // 0x29 ')' - {125, 6, 5, 7, 3, -12}, // 0x2A '*' - {129, 9, 8, 11, 2, -7}, // 0x2B '+' - {138, 3, 5, 5, 1, -1}, // 0x2C ',' - {140, 4, 1, 6, 2, -4}, // 0x2D '-' - {141, 2, 1, 5, 2, 0}, // 0x2E '.' - {142, 8, 13, 5, 0, -12}, // 0x2F '/' - {155, 9, 13, 10, 2, -12}, // 0x30 '0' - {170, 5, 13, 10, 4, -12}, // 0x31 '1' - {179, 11, 13, 10, 1, -12}, // 0x32 '2' - {197, 10, 13, 10, 1, -12}, // 0x33 '3' - {214, 9, 13, 10, 1, -12}, // 0x34 '4' - {229, 11, 13, 10, 1, -12}, // 0x35 '5' - {247, 10, 13, 10, 2, -12}, // 0x36 '6' - {264, 10, 13, 10, 2, -12}, // 0x37 '7' - {281, 10, 13, 10, 1, -12}, // 0x38 '8' - {298, 10, 13, 10, 1, -12}, // 0x39 '9' - {315, 4, 9, 5, 2, -8}, // 0x3A ':' - {320, 5, 12, 5, 1, -8}, // 0x3B ';' - {328, 9, 9, 11, 2, -8}, // 0x3C '<' - {339, 10, 4, 11, 1, -5}, // 0x3D '=' - {344, 9, 9, 11, 1, -7}, // 0x3E '>' - {355, 9, 13, 10, 3, -12}, // 0x3F '?' - {370, 18, 16, 18, 1, -12}, // 0x40 '@' - {406, 12, 13, 12, 0, -12}, // 0x41 'A' - {426, 12, 13, 12, 1, -12}, // 0x42 'B' - {446, 12, 13, 13, 2, -12}, // 0x43 'C' - {466, 13, 13, 13, 1, -12}, // 0x44 'D' - {488, 12, 13, 12, 1, -12}, // 0x45 'E' - {508, 12, 13, 11, 1, -12}, // 0x46 'F' - {528, 13, 13, 14, 2, -12}, // 0x47 'G' - {550, 13, 13, 13, 1, -12}, // 0x48 'H' - {572, 4, 13, 5, 2, -12}, // 0x49 'I' - {579, 10, 13, 9, 1, -12}, // 0x4A 'J' - {596, 14, 13, 12, 1, -12}, // 0x4B 'K' - {619, 9, 13, 10, 1, -12}, // 0x4C 'L' - {634, 16, 13, 15, 1, -12}, // 0x4D 'M' - {660, 13, 13, 13, 1, -12}, // 0x4E 'N' - {682, 13, 13, 14, 2, -12}, // 0x4F 'O' - {704, 12, 13, 12, 1, -12}, // 0x50 'P' - {724, 13, 14, 14, 2, -12}, // 0x51 'Q' - {747, 13, 13, 13, 1, -12}, // 0x52 'R' - {769, 12, 13, 12, 1, -12}, // 0x53 'S' - {789, 10, 13, 11, 3, -12}, // 0x54 'T' - {806, 12, 13, 13, 2, -12}, // 0x55 'U' - {826, 11, 13, 12, 3, -12}, // 0x56 'V' - {844, 16, 13, 17, 3, -12}, // 0x57 'W' - {870, 14, 13, 12, 0, -12}, // 0x58 'X' - {893, 12, 13, 12, 3, -12}, // 0x59 'Y' - {913, 12, 13, 11, 1, -12}, // 0x5A 'Z' - {933, 7, 17, 5, 0, -12}, // 0x5B '[' - {948, 2, 13, 5, 3, -12}, // 0x5C '\' - {952, 7, 17, 5, 0, -12}, // 0x5D ']' - {967, 7, 7, 8, 2, -12}, // 0x5E '^' - {974, 11, 1, 10, -1, 3}, // 0x5F '_' - {976, 3, 3, 6, 3, -12}, // 0x60 '`' - {978, 10, 10, 10, 1, -9}, // 0x61 'a' - {991, 10, 13, 10, 1, -12}, // 0x62 'b' - {1008, 9, 10, 9, 1, -9}, // 0x63 'c' - {1020, 11, 13, 10, 1, -12}, // 0x64 'd' - {1038, 10, 10, 10, 1, -9}, // 0x65 'e' - {1051, 6, 13, 5, 1, -12}, // 0x66 'f' - {1061, 10, 14, 10, 0, -9}, // 0x67 'g' - {1079, 10, 13, 10, 1, -12}, // 0x68 'h' - {1096, 4, 13, 4, 1, -12}, // 0x69 'i' - {1103, 6, 17, 4, -1, -12}, // 0x6A 'j' - {1116, 9, 13, 9, 1, -12}, // 0x6B 'k' - {1131, 4, 13, 4, 1, -12}, // 0x6C 'l' - {1138, 15, 10, 15, 1, -9}, // 0x6D 'm' - {1157, 10, 11, 10, 1, -10}, // 0x6E 'n' - {1171, 10, 10, 10, 1, -9}, // 0x6F 'o' - {1184, 11, 14, 10, 0, -9}, // 0x70 'p' - {1204, 10, 14, 10, 1, -9}, // 0x71 'q' - {1222, 7, 10, 6, 1, -9}, // 0x72 'r' - {1231, 8, 10, 9, 1, -9}, // 0x73 's' - {1241, 4, 12, 5, 2, -11}, // 0x74 't' - {1247, 9, 10, 10, 2, -9}, // 0x75 'u' - {1259, 9, 10, 9, 2, -9}, // 0x76 'v' - {1271, 13, 10, 13, 2, -9}, // 0x77 'w' - {1288, 11, 10, 9, 0, -9}, // 0x78 'x' - {1302, 11, 14, 9, 0, -9}, // 0x79 'y' - {1322, 9, 10, 9, 1, -9}, // 0x7A 'z' - {1334, 5, 17, 6, 2, -12}, // 0x7B '{' - {1345, 4, 17, 5, 1, -12}, // 0x7C '|' - {1354, 5, 17, 6, 0, -12}, // 0x7D '}' - {1365, 9, 3, 11, 2, -7}}; // 0x7E '~' - -const GFXfont FreeSansOblique9pt7b PROGMEM = { - (uint8_t *)FreeSansOblique9pt7bBitmaps, - (GFXglyph *)FreeSansOblique9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 2041 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h deleted file mode 100644 index 22cb53d..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h +++ /dev/null @@ -1,261 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFE, 0xA8, 0x3F, 0xCF, 0x3C, 0xF3, 0x8A, 0x20, 0x0C, 0x40, 0xC4, - 0x08, 0x40, 0x8C, 0x08, 0xC7, 0xFF, 0x18, 0x81, 0x88, 0x10, 0x81, 0x08, - 0xFF, 0xE1, 0x18, 0x31, 0x03, 0x10, 0x31, 0x02, 0x10, 0x04, 0x07, 0xC6, - 0x5B, 0x12, 0xC4, 0xB1, 0x0F, 0x41, 0xF0, 0x1E, 0x01, 0xE0, 0x58, 0x13, - 0x84, 0xE1, 0x3C, 0x4F, 0x96, 0x3F, 0x01, 0x00, 0x00, 0x04, 0x03, 0x83, - 0x03, 0x9F, 0x81, 0xC2, 0x20, 0x60, 0x90, 0x38, 0x24, 0x0C, 0x12, 0x03, - 0x0D, 0x00, 0xC6, 0x47, 0x9E, 0x23, 0x10, 0x09, 0x84, 0x04, 0xE1, 0x03, - 0x30, 0x40, 0x8C, 0x20, 0x43, 0x08, 0x10, 0xC4, 0x08, 0x1E, 0x00, 0x03, - 0xC0, 0x02, 0x30, 0x03, 0x08, 0x01, 0x84, 0x00, 0xC4, 0x00, 0x7C, 0xF8, - 0x1C, 0x38, 0x1E, 0x08, 0x33, 0x0C, 0x31, 0xC4, 0x10, 0x74, 0x18, 0x3A, - 0x0C, 0x0E, 0x07, 0x03, 0x83, 0xC3, 0xE2, 0x7E, 0x3E, 0xFF, 0xA0, 0x04, - 0x21, 0x08, 0x61, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC1, 0x04, 0x18, 0x20, - 0x40, 0x81, 0x81, 0x02, 0x04, 0x18, 0x20, 0x83, 0x0C, 0x30, 0xC3, 0x0C, - 0x30, 0x86, 0x10, 0x84, 0x20, 0x30, 0xB3, 0xD7, 0x54, 0x38, 0x7C, 0xD3, - 0x30, 0x30, 0x10, 0x04, 0x00, 0x80, 0x10, 0x02, 0x00, 0x41, 0xFF, 0xC1, - 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, 0x00, 0xDF, 0x95, 0x00, 0xFC, 0xFC, - 0x06, 0x0C, 0x10, 0x60, 0xC1, 0x06, 0x0C, 0x10, 0x60, 0xC1, 0x06, 0x0C, - 0x10, 0x60, 0xC0, 0x1E, 0x0C, 0xC6, 0x19, 0x86, 0xC0, 0xB0, 0x3C, 0x0F, - 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xD8, 0x66, 0x18, 0xCC, 0x1E, - 0x00, 0x11, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, - 0x0C, 0xFC, 0x1E, 0x18, 0xC4, 0x1A, 0x06, 0x01, 0x80, 0x60, 0x10, 0x0C, - 0x02, 0x01, 0x00, 0xC0, 0x60, 0x30, 0x18, 0x1F, 0xF8, 0x1E, 0x18, 0xE8, - 0x18, 0x06, 0x01, 0x00, 0x80, 0xF0, 0x7E, 0x03, 0xC0, 0x70, 0x0C, 0x03, - 0x00, 0xC0, 0x6E, 0x11, 0xF8, 0x01, 0x00, 0xC0, 0x70, 0x2C, 0x0B, 0x04, - 0xC2, 0x30, 0x8C, 0x43, 0x20, 0xC8, 0x33, 0xFF, 0x03, 0x00, 0xC0, 0x30, - 0x0C, 0x00, 0x03, 0xF1, 0x00, 0x40, 0x18, 0x0F, 0x80, 0xF8, 0x0E, 0x01, - 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x20, 0x1B, 0x8C, 0x7C, 0x00, 0x01, - 0xC3, 0xC1, 0xC0, 0xC0, 0x70, 0x18, 0x0E, 0xF3, 0xCE, 0xC1, 0xF0, 0x3C, - 0x0F, 0x03, 0xC0, 0xD8, 0x36, 0x08, 0xC6, 0x1E, 0x00, 0x3F, 0xD0, 0x38, - 0x08, 0x06, 0x01, 0x80, 0x40, 0x10, 0x0C, 0x02, 0x00, 0x80, 0x20, 0x10, - 0x04, 0x01, 0x00, 0x80, 0x20, 0x1F, 0x18, 0x6C, 0x0F, 0x03, 0xC0, 0xF8, - 0x67, 0x30, 0xF0, 0x1E, 0x09, 0xE6, 0x3B, 0x07, 0xC0, 0xF0, 0x3C, 0x0D, - 0x86, 0x1F, 0x00, 0x1E, 0x08, 0xC6, 0x1B, 0x02, 0xC0, 0xF0, 0x3C, 0x0F, - 0x03, 0xE0, 0xDC, 0x73, 0xEC, 0x06, 0x01, 0x80, 0xC0, 0x70, 0x38, 0x38, - 0x18, 0x00, 0xFC, 0x00, 0x3F, 0xCC, 0xC0, 0x00, 0x00, 0x06, 0x77, 0x12, - 0x40, 0x00, 0x00, 0x07, 0x01, 0xE0, 0x78, 0x1E, 0x07, 0x00, 0xC0, 0x0F, - 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x07, 0x00, 0x10, 0xFF, 0xF0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0x80, 0x0E, 0x00, 0x3C, 0x00, 0xF0, - 0x03, 0xC0, 0x0F, 0x00, 0x30, 0x0E, 0x07, 0x81, 0xE0, 0x78, 0x0E, 0x00, - 0x00, 0x00, 0x7C, 0x86, 0x83, 0xC3, 0x03, 0x03, 0x06, 0x0C, 0x08, 0x08, - 0x10, 0x10, 0x00, 0x00, 0x30, 0x30, 0x30, 0x03, 0xF0, 0x06, 0x06, 0x06, - 0x00, 0x86, 0x00, 0x26, 0x0E, 0xD3, 0x0C, 0xC7, 0x0C, 0x63, 0x84, 0x31, - 0xC6, 0x18, 0xE3, 0x08, 0x71, 0x8C, 0x4C, 0xC6, 0x46, 0x3D, 0xC1, 0x80, - 0x00, 0x30, 0x10, 0x07, 0xF0, 0x00, 0x80, 0x00, 0x60, 0x00, 0x70, 0x00, - 0x38, 0x00, 0x2E, 0x00, 0x13, 0x00, 0x19, 0xC0, 0x08, 0x60, 0x04, 0x38, - 0x04, 0x0C, 0x03, 0xFF, 0x03, 0x03, 0x81, 0x00, 0xE1, 0x80, 0x70, 0xC0, - 0x3D, 0xF0, 0x3F, 0xFF, 0x83, 0x0C, 0x30, 0x63, 0x06, 0x30, 0x63, 0x06, - 0x30, 0xC3, 0xF0, 0x30, 0xE3, 0x06, 0x30, 0x33, 0x03, 0x30, 0x33, 0x07, - 0x30, 0xEF, 0xFC, 0x07, 0xE2, 0x38, 0x3C, 0xC0, 0x3B, 0x00, 0x36, 0x00, - 0x38, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x03, - 0x00, 0x06, 0x00, 0x06, 0x00, 0x47, 0x03, 0x03, 0xF8, 0xFF, 0xC0, 0x30, - 0x78, 0x30, 0x1C, 0x30, 0x0E, 0x30, 0x06, 0x30, 0x03, 0x30, 0x03, 0x30, - 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x06, 0x30, 0x06, 0x30, - 0x0C, 0x30, 0x78, 0xFF, 0xC0, 0xFF, 0xFC, 0xC0, 0x33, 0x00, 0x4C, 0x00, - 0x30, 0x00, 0xC0, 0x43, 0x03, 0x0F, 0xFC, 0x30, 0x30, 0xC0, 0x43, 0x00, - 0x0C, 0x00, 0x30, 0x08, 0xC0, 0x23, 0x03, 0xBF, 0xFE, 0xFF, 0xFC, 0xC0, - 0x33, 0x00, 0x4C, 0x00, 0x30, 0x00, 0xC0, 0x43, 0x03, 0x0F, 0xFC, 0x30, - 0x30, 0xC0, 0x43, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x3F, - 0x00, 0x07, 0xE4, 0x1C, 0x3C, 0x30, 0x0C, 0x60, 0x0C, 0x60, 0x04, 0xC0, - 0x00, 0xC0, 0x00, 0xC0, 0x3F, 0xC0, 0x0C, 0xC0, 0x0C, 0xC0, 0x0C, 0x60, - 0x0C, 0x60, 0x0C, 0x30, 0x0C, 0x1C, 0x1C, 0x07, 0xE0, 0xFC, 0x3F, 0x30, - 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x3F, - 0xFC, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, - 0x0C, 0x30, 0x0C, 0xFC, 0x3F, 0xFC, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, - 0xC3, 0x0C, 0x30, 0xC3, 0x3F, 0x3F, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, - 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0xC8, 0xF0, 0xFC, 0xFE, 0x30, - 0x38, 0x30, 0x20, 0x30, 0x40, 0x30, 0x80, 0x33, 0x00, 0x36, 0x00, 0x3E, - 0x00, 0x37, 0x00, 0x33, 0x80, 0x31, 0xC0, 0x30, 0xE0, 0x30, 0x70, 0x30, - 0x38, 0x30, 0x3C, 0xFC, 0x7F, 0xFC, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, - 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, - 0xC0, 0x01, 0x80, 0x03, 0x00, 0x26, 0x00, 0x8C, 0x07, 0x7F, 0xFE, 0xF8, - 0x01, 0xE7, 0x00, 0x70, 0xE0, 0x0E, 0x1E, 0x03, 0xC2, 0xC0, 0x58, 0x5C, - 0x1B, 0x09, 0x82, 0x61, 0x38, 0x4C, 0x27, 0x11, 0x84, 0x72, 0x30, 0x8E, - 0xC6, 0x10, 0xD0, 0xC2, 0x1E, 0x18, 0x41, 0x83, 0x1C, 0x30, 0x67, 0xC4, - 0x3F, 0xF0, 0x1F, 0x78, 0x0E, 0x3C, 0x04, 0x3E, 0x04, 0x2E, 0x04, 0x27, - 0x04, 0x23, 0x84, 0x23, 0xC4, 0x21, 0xE4, 0x20, 0xE4, 0x20, 0x74, 0x20, - 0x3C, 0x20, 0x1C, 0x20, 0x0C, 0x70, 0x0C, 0xF8, 0x04, 0x07, 0xC0, 0x30, - 0x60, 0xC0, 0x63, 0x00, 0x66, 0x00, 0xD8, 0x00, 0xF0, 0x01, 0xE0, 0x03, - 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1B, 0x00, 0x66, 0x00, 0xC6, 0x03, 0x06, - 0x0C, 0x03, 0xE0, 0xFF, 0x83, 0x0E, 0x30, 0x73, 0x03, 0x30, 0x33, 0x03, - 0x30, 0x63, 0x0E, 0x3F, 0x83, 0x00, 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, - 0x30, 0x0F, 0xC0, 0x0F, 0xE0, 0x18, 0x30, 0x30, 0x18, 0x60, 0x0C, 0x60, - 0x0C, 0xC0, 0x06, 0xC0, 0x06, 0xC0, 0x06, 0xC0, 0x06, 0xC0, 0x06, 0xC0, - 0x06, 0x60, 0x0C, 0x60, 0x0C, 0x30, 0x18, 0x18, 0x30, 0x07, 0xC0, 0x03, - 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1F, 0xFF, 0x80, 0x61, 0xC0, 0xC1, - 0xC1, 0x81, 0x83, 0x03, 0x06, 0x06, 0x0C, 0x1C, 0x18, 0x70, 0x3F, 0x80, - 0x67, 0x00, 0xC7, 0x01, 0x8F, 0x03, 0x0F, 0x06, 0x0E, 0x0C, 0x0E, 0x7E, - 0x0F, 0x1F, 0x46, 0x19, 0x81, 0x30, 0x27, 0x02, 0xF0, 0x0F, 0x00, 0xF8, - 0x07, 0xC0, 0x38, 0x03, 0xC0, 0x34, 0x06, 0x80, 0xDC, 0x32, 0x7C, 0xFF, - 0xFF, 0x86, 0x0E, 0x0C, 0x1C, 0x18, 0x10, 0x30, 0x00, 0x60, 0x00, 0xC0, - 0x01, 0x80, 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, - 0x60, 0x00, 0xC0, 0x07, 0xE0, 0xFC, 0x1F, 0x30, 0x0E, 0x30, 0x04, 0x30, - 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, - 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x18, 0x08, 0x1C, 0x18, 0x07, - 0xE0, 0xFE, 0x0F, 0x9C, 0x03, 0x0E, 0x01, 0x83, 0x00, 0x81, 0xC0, 0x40, - 0x60, 0x40, 0x38, 0x20, 0x0C, 0x30, 0x07, 0x10, 0x01, 0x98, 0x00, 0xE8, - 0x00, 0x34, 0x00, 0x1E, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x00, 0xFC, - 0xFC, 0x3D, 0xE1, 0xC0, 0x63, 0x83, 0x01, 0x86, 0x0E, 0x04, 0x1C, 0x18, - 0x10, 0x70, 0x70, 0x80, 0xC3, 0xC2, 0x03, 0x8B, 0x08, 0x06, 0x6E, 0x40, - 0x1D, 0x19, 0x00, 0x74, 0x78, 0x00, 0xE1, 0xE0, 0x03, 0x83, 0x80, 0x0E, - 0x0C, 0x00, 0x10, 0x10, 0x00, 0x40, 0x40, 0x7F, 0x1F, 0x9E, 0x03, 0x07, - 0x03, 0x01, 0xC3, 0x00, 0x71, 0x00, 0x19, 0x00, 0x0F, 0x00, 0x03, 0x80, - 0x01, 0xE0, 0x01, 0xB0, 0x01, 0x9C, 0x00, 0x87, 0x00, 0x81, 0xC0, 0x80, - 0xE0, 0xC0, 0x79, 0xF8, 0x7F, 0xFE, 0x1F, 0x78, 0x0C, 0x38, 0x08, 0x1C, - 0x18, 0x0E, 0x10, 0x06, 0x20, 0x07, 0x60, 0x03, 0xC0, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x07, - 0xE0, 0x7F, 0xFB, 0x00, 0xC8, 0x07, 0x20, 0x38, 0x01, 0xC0, 0x07, 0x00, - 0x38, 0x01, 0xC0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x05, - 0xC0, 0x3E, 0x01, 0xBF, 0xFE, 0xFE, 0x31, 0x8C, 0x63, 0x18, 0xC6, 0x31, - 0x8C, 0x63, 0x18, 0xC6, 0x31, 0xF0, 0xC1, 0x81, 0x03, 0x06, 0x04, 0x0C, - 0x18, 0x10, 0x30, 0x60, 0x40, 0xC1, 0x81, 0x03, 0x06, 0xF8, 0xC6, 0x31, - 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC7, 0xF0, 0x0C, 0x07, - 0x01, 0x60, 0xD8, 0x23, 0x18, 0xC4, 0x1B, 0x06, 0x80, 0xC0, 0xFF, 0xF0, - 0xC7, 0x0C, 0x30, 0x3E, 0x31, 0x8C, 0x30, 0x0C, 0x03, 0x07, 0xC6, 0x33, - 0x0C, 0xC3, 0x31, 0xC7, 0xB8, 0x20, 0x38, 0x06, 0x01, 0x80, 0x60, 0x18, - 0x06, 0xF1, 0xC6, 0x61, 0xD8, 0x36, 0x0D, 0x83, 0x60, 0xD8, 0x26, 0x19, - 0x84, 0x3E, 0x00, 0x1E, 0x23, 0x63, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xE1, - 0x72, 0x3C, 0x00, 0x80, 0xE0, 0x18, 0x06, 0x01, 0x80, 0x61, 0xD8, 0x8E, - 0x61, 0xB0, 0x6C, 0x1B, 0x06, 0xC1, 0xB0, 0x6E, 0x19, 0xCE, 0x3D, 0xC0, - 0x1E, 0x08, 0xE4, 0x1B, 0xFE, 0xC0, 0x30, 0x0C, 0x03, 0x81, 0x60, 0x9C, - 0x41, 0xE0, 0x0F, 0x08, 0xC4, 0x06, 0x03, 0x01, 0x81, 0xF0, 0x60, 0x30, - 0x18, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0x60, 0xFC, 0x00, 0x1F, 0x03, - 0x1F, 0x60, 0xC6, 0x0C, 0x60, 0xC3, 0x18, 0x1F, 0x02, 0x00, 0x40, 0x07, - 0xFC, 0x40, 0x24, 0x02, 0xC0, 0x2C, 0x04, 0xE0, 0x83, 0xF0, 0x30, 0x1E, - 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0D, 0xE1, 0xCE, 0x30, 0xC6, 0x18, - 0xC3, 0x18, 0x63, 0x0C, 0x61, 0x8C, 0x31, 0x86, 0x79, 0xE0, 0x31, 0x80, - 0x00, 0x09, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xDF, 0x0C, 0x30, 0x00, 0x00, - 0x31, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xF2, 0xF0, - 0x20, 0x1C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0xFB, 0x08, 0x62, - 0x0C, 0x81, 0xE0, 0x3E, 0x06, 0xE0, 0xCE, 0x18, 0xC3, 0x0E, 0xF3, 0xE0, - 0x13, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC6, 0xF8, 0xF7, - 0x8F, 0x0E, 0x3C, 0xE3, 0x0C, 0x18, 0xC3, 0x06, 0x30, 0xC1, 0x8C, 0x30, - 0x63, 0x0C, 0x18, 0xC3, 0x06, 0x30, 0xC1, 0x8C, 0x30, 0x67, 0x9E, 0x3C, - 0xF7, 0x87, 0x18, 0xC3, 0x18, 0x63, 0x0C, 0x61, 0x8C, 0x31, 0x86, 0x30, - 0xC6, 0x19, 0xE7, 0x80, 0x1E, 0x18, 0xE4, 0x1B, 0x03, 0xC0, 0xF0, 0x3C, - 0x0F, 0x03, 0x60, 0x9C, 0x41, 0xE0, 0x77, 0x87, 0x18, 0xC3, 0x98, 0x33, - 0x06, 0x60, 0xCC, 0x19, 0x83, 0x30, 0xC7, 0x10, 0xDC, 0x18, 0x03, 0x00, - 0x60, 0x0C, 0x07, 0xE0, 0x1E, 0x8C, 0xE6, 0x1B, 0x06, 0xC1, 0xB0, 0x6C, - 0x1B, 0x06, 0xE1, 0x98, 0xE3, 0xD8, 0x06, 0x01, 0x80, 0x60, 0x18, 0x1F, - 0x37, 0x7B, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x7C, 0x7B, - 0x0E, 0x1C, 0x1E, 0x0F, 0x07, 0xC3, 0x87, 0x8A, 0xE0, 0x21, 0x8F, 0x98, - 0x61, 0x86, 0x18, 0x61, 0x86, 0x19, 0x38, 0xE3, 0x98, 0x66, 0x19, 0x86, - 0x61, 0x98, 0x66, 0x19, 0x86, 0x61, 0x9C, 0xE3, 0xDC, 0xF8, 0xEE, 0x08, - 0xC1, 0x18, 0x41, 0x88, 0x32, 0x03, 0x40, 0x68, 0x06, 0x00, 0xC0, 0x10, - 0x00, 0xF3, 0xE7, 0x61, 0x83, 0x70, 0xC2, 0x30, 0xC2, 0x30, 0xC4, 0x19, - 0x64, 0x19, 0x68, 0x0E, 0x38, 0x0E, 0x38, 0x0C, 0x30, 0x04, 0x10, 0xFB, - 0xC6, 0x30, 0x64, 0x0F, 0x00, 0xC0, 0x0C, 0x03, 0xC0, 0x98, 0x21, 0x8C, - 0x3B, 0xCF, 0x80, 0xF8, 0xEE, 0x08, 0xC1, 0x18, 0x41, 0x88, 0x31, 0x03, - 0x40, 0x68, 0x06, 0x00, 0xC0, 0x08, 0x02, 0x00, 0x40, 0x10, 0x1E, 0x03, - 0x80, 0x7F, 0x90, 0xE0, 0x30, 0x18, 0x0E, 0x03, 0x01, 0xC0, 0xE0, 0x30, - 0x5C, 0x3F, 0xF8, 0x19, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0xB0, 0x63, 0x18, - 0xC6, 0x31, 0x8C, 0x61, 0x80, 0xFF, 0xFF, 0x80, 0xC3, 0x18, 0xC6, 0x31, - 0x8C, 0x63, 0x06, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xCC, 0x00, 0x38, 0x06, - 0x62, 0x41, 0xC0}; - -const GFXglyph FreeSerif12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 2, 16, 8, 3, -15}, // 0x21 '!' - {4, 6, 6, 10, 1, -15}, // 0x22 '"' - {9, 12, 16, 12, 0, -15}, // 0x23 '#' - {33, 10, 18, 12, 1, -16}, // 0x24 '$' - {56, 18, 17, 20, 1, -16}, // 0x25 '%' - {95, 17, 16, 19, 1, -15}, // 0x26 '&' - {129, 2, 6, 5, 1, -15}, // 0x27 ''' - {131, 6, 20, 8, 1, -15}, // 0x28 '(' - {146, 6, 20, 8, 1, -15}, // 0x29 ')' - {161, 8, 10, 12, 3, -14}, // 0x2A '*' - {171, 11, 11, 14, 1, -10}, // 0x2B '+' - {187, 3, 6, 6, 2, -2}, // 0x2C ',' - {190, 6, 1, 8, 1, -5}, // 0x2D '-' - {191, 2, 3, 6, 2, -2}, // 0x2E '.' - {192, 7, 17, 7, 0, -16}, // 0x2F '/' - {207, 10, 17, 12, 1, -16}, // 0x30 '0' - {229, 6, 17, 12, 3, -16}, // 0x31 '1' - {242, 10, 15, 12, 1, -14}, // 0x32 '2' - {261, 10, 16, 12, 1, -15}, // 0x33 '3' - {281, 10, 16, 12, 1, -15}, // 0x34 '4' - {301, 10, 17, 12, 1, -16}, // 0x35 '5' - {323, 10, 17, 12, 1, -16}, // 0x36 '6' - {345, 10, 16, 12, 0, -15}, // 0x37 '7' - {365, 10, 17, 12, 1, -16}, // 0x38 '8' - {387, 10, 18, 12, 1, -16}, // 0x39 '9' - {410, 2, 12, 6, 2, -11}, // 0x3A ':' - {413, 4, 15, 6, 2, -11}, // 0x3B ';' - {421, 12, 13, 14, 1, -12}, // 0x3C '<' - {441, 12, 6, 14, 1, -8}, // 0x3D '=' - {450, 12, 13, 14, 1, -11}, // 0x3E '>' - {470, 8, 17, 11, 2, -16}, // 0x3F '?' - {487, 17, 16, 21, 2, -15}, // 0x40 '@' - {521, 17, 16, 17, 0, -15}, // 0x41 'A' - {555, 12, 16, 15, 1, -15}, // 0x42 'B' - {579, 15, 16, 16, 1, -15}, // 0x43 'C' - {609, 16, 16, 17, 0, -15}, // 0x44 'D' - {641, 14, 16, 15, 0, -15}, // 0x45 'E' - {669, 14, 16, 14, 0, -15}, // 0x46 'F' - {697, 16, 16, 17, 1, -15}, // 0x47 'G' - {729, 16, 16, 17, 0, -15}, // 0x48 'H' - {761, 6, 16, 8, 1, -15}, // 0x49 'I' - {773, 8, 16, 9, 0, -15}, // 0x4A 'J' - {789, 16, 16, 17, 1, -15}, // 0x4B 'K' - {821, 15, 16, 15, 0, -15}, // 0x4C 'L' - {851, 19, 16, 21, 1, -15}, // 0x4D 'M' - {889, 16, 16, 17, 1, -15}, // 0x4E 'N' - {921, 15, 16, 17, 1, -15}, // 0x4F 'O' - {951, 12, 16, 14, 0, -15}, // 0x50 'P' - {975, 16, 20, 17, 1, -15}, // 0x51 'Q' - {1015, 15, 16, 16, 0, -15}, // 0x52 'R' - {1045, 11, 16, 13, 0, -15}, // 0x53 'S' - {1067, 15, 16, 15, 0, -15}, // 0x54 'T' - {1097, 16, 16, 17, 1, -15}, // 0x55 'U' - {1129, 17, 16, 17, 0, -15}, // 0x56 'V' - {1163, 22, 16, 23, 0, -15}, // 0x57 'W' - {1207, 17, 16, 17, 0, -15}, // 0x58 'X' - {1241, 16, 16, 17, 0, -15}, // 0x59 'Y' - {1273, 14, 16, 15, 1, -15}, // 0x5A 'Z' - {1301, 5, 20, 8, 2, -15}, // 0x5B '[' - {1314, 7, 17, 7, 0, -16}, // 0x5C '\' - {1329, 5, 20, 8, 1, -15}, // 0x5D ']' - {1342, 10, 9, 11, 1, -15}, // 0x5E '^' - {1354, 12, 1, 12, 0, 3}, // 0x5F '_' - {1356, 5, 4, 6, 0, -15}, // 0x60 '`' - {1359, 10, 11, 10, 1, -10}, // 0x61 'a' - {1373, 10, 17, 12, 1, -16}, // 0x62 'b' - {1395, 8, 11, 11, 1, -10}, // 0x63 'c' - {1406, 10, 17, 12, 1, -16}, // 0x64 'd' - {1428, 10, 11, 11, 1, -10}, // 0x65 'e' - {1442, 9, 17, 9, 0, -16}, // 0x66 'f' - {1462, 12, 16, 11, 0, -10}, // 0x67 'g' - {1486, 11, 17, 12, 0, -16}, // 0x68 'h' - {1510, 5, 16, 7, 0, -15}, // 0x69 'i' - {1520, 6, 21, 8, 0, -15}, // 0x6A 'j' - {1536, 11, 17, 12, 1, -16}, // 0x6B 'k' - {1560, 5, 17, 6, 0, -16}, // 0x6C 'l' - {1571, 18, 11, 19, 0, -10}, // 0x6D 'm' - {1596, 11, 11, 12, 0, -10}, // 0x6E 'n' - {1612, 10, 11, 12, 1, -10}, // 0x6F 'o' - {1626, 11, 16, 12, 0, -10}, // 0x70 'p' - {1648, 10, 16, 12, 1, -10}, // 0x71 'q' - {1668, 8, 11, 8, 0, -10}, // 0x72 'r' - {1679, 7, 11, 9, 1, -10}, // 0x73 's' - {1689, 6, 13, 7, 1, -12}, // 0x74 't' - {1699, 10, 11, 12, 1, -10}, // 0x75 'u' - {1713, 11, 11, 11, 0, -10}, // 0x76 'v' - {1729, 16, 11, 16, 0, -10}, // 0x77 'w' - {1751, 11, 11, 12, 0, -10}, // 0x78 'x' - {1767, 11, 16, 11, 0, -10}, // 0x79 'y' - {1789, 10, 11, 10, 0, -10}, // 0x7A 'z' - {1803, 5, 21, 12, 2, -16}, // 0x7B '{' - {1817, 1, 17, 5, 2, -16}, // 0x7C '|' - {1820, 5, 21, 12, 5, -15}, // 0x7D '}' - {1834, 12, 3, 12, 0, -6}}; // 0x7E '~' - -const GFXfont FreeSerif12pt7b PROGMEM = {(uint8_t *)FreeSerif12pt7bBitmaps, - (GFXglyph *)FreeSerif12pt7bGlyphs, - 0x20, 0x7E, 29}; - -// Approx. 2511 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h deleted file mode 100644 index 3fd1ba5..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h +++ /dev/null @@ -1,431 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif18pt7bBitmaps[] PROGMEM = { - 0x6F, 0xFF, 0xFF, 0xFE, 0x66, 0x66, 0x66, 0x64, 0x40, 0x00, 0x6F, 0xF6, - 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0x46, 0x42, 0x42, 0x42, 0x03, 0x06, 0x01, - 0x83, 0x00, 0xC1, 0x80, 0x61, 0xC0, 0x30, 0xC0, 0x38, 0x60, 0x18, 0x30, - 0xFF, 0xFF, 0x7F, 0xFF, 0x83, 0x06, 0x01, 0x86, 0x00, 0xC3, 0x00, 0xC1, - 0x87, 0xFF, 0xFF, 0xFF, 0xFE, 0x18, 0x30, 0x0C, 0x18, 0x06, 0x18, 0x06, - 0x0C, 0x03, 0x06, 0x01, 0x83, 0x00, 0xC1, 0x80, 0x60, 0xC0, 0x02, 0x00, - 0x10, 0x03, 0xE0, 0x64, 0xE6, 0x23, 0x61, 0x1B, 0x08, 0x58, 0x42, 0xE2, - 0x03, 0x90, 0x1F, 0x80, 0x7E, 0x00, 0xFC, 0x01, 0xF0, 0x0F, 0xC0, 0x4E, - 0x02, 0x38, 0x10, 0xE0, 0x87, 0x04, 0x3C, 0x21, 0xE1, 0x1B, 0xC9, 0xCF, - 0xFC, 0x1F, 0x80, 0x10, 0x00, 0x80, 0x07, 0x80, 0x20, 0x0F, 0xF0, 0x70, - 0x0F, 0x07, 0xD0, 0x0F, 0x02, 0x18, 0x07, 0x01, 0x18, 0x07, 0x00, 0x8C, - 0x03, 0x80, 0x4C, 0x01, 0x80, 0x44, 0x00, 0xC0, 0x26, 0x00, 0x60, 0x22, - 0x0F, 0x30, 0x33, 0x1F, 0xCC, 0x73, 0x1E, 0x37, 0xF1, 0x8E, 0x19, 0xE1, - 0x8E, 0x04, 0x00, 0x86, 0x02, 0x00, 0xC7, 0x01, 0x00, 0xC3, 0x80, 0x80, - 0x61, 0x80, 0x80, 0x60, 0xC0, 0x40, 0x30, 0x60, 0x40, 0x30, 0x38, 0xE0, - 0x30, 0x0F, 0xE0, 0x18, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0x61, 0x80, 0x00, 0x60, 0x60, 0x00, 0x30, 0x30, 0x00, 0x18, 0x18, - 0x00, 0x0C, 0x0C, 0x00, 0x06, 0x0C, 0x00, 0x03, 0x8E, 0x00, 0x01, 0xCE, - 0x00, 0x00, 0x7C, 0x3F, 0xC0, 0x38, 0x07, 0x80, 0x3E, 0x03, 0x80, 0x77, - 0x01, 0x80, 0x73, 0xC0, 0x80, 0xF0, 0xF0, 0xC0, 0x70, 0x7C, 0xC0, 0x78, - 0x1E, 0x40, 0x3C, 0x07, 0xC0, 0x1E, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x0F, - 0xC0, 0xFF, 0x0D, 0xF0, 0xC7, 0xFC, 0x7F, 0xC1, 0xFC, 0x1F, 0x80, 0x3C, - 0x00, 0xFF, 0xFE, 0x92, 0x40, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0xC0, - 0xC0, 0x60, 0x70, 0x30, 0x18, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, - 0x70, 0x38, 0x0C, 0x06, 0x03, 0x80, 0xC0, 0x60, 0x18, 0x0C, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x80, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x60, 0x18, 0x0C, - 0x07, 0x01, 0x80, 0xC0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, - 0xE0, 0x60, 0x30, 0x38, 0x18, 0x0C, 0x0C, 0x04, 0x04, 0x04, 0x04, 0x04, - 0x00, 0x0C, 0x00, 0xC0, 0x0C, 0x0C, 0x46, 0xE4, 0xF7, 0x5E, 0x1F, 0x00, - 0xC0, 0x17, 0x8E, 0x4E, 0xE4, 0xFC, 0xC6, 0x0C, 0x00, 0xC0, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x6F, 0xFF, - 0x11, 0x24, 0x80, 0xFF, 0xFF, 0x6F, 0xF6, 0x00, 0xC0, 0x60, 0x18, 0x06, - 0x03, 0x80, 0xC0, 0x30, 0x1C, 0x06, 0x01, 0x80, 0xE0, 0x30, 0x0C, 0x07, - 0x01, 0x80, 0x60, 0x38, 0x0C, 0x03, 0x01, 0xC0, 0x60, 0x18, 0x0E, 0x03, - 0x00, 0x03, 0xE0, 0x0E, 0x70, 0x1C, 0x38, 0x38, 0x1C, 0x38, 0x1C, 0x78, - 0x1E, 0x70, 0x0E, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, - 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0x70, 0x0E, 0x70, - 0x0E, 0x78, 0x1E, 0x38, 0x1C, 0x38, 0x1C, 0x1C, 0x38, 0x0C, 0x30, 0x03, - 0xC0, 0x06, 0x03, 0x83, 0xE3, 0x38, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0x0E, - 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x80, - 0xE0, 0x38, 0x0E, 0x03, 0x81, 0xE1, 0xFF, 0x07, 0xC0, 0x1F, 0xF0, 0x3F, - 0xF8, 0x70, 0xF8, 0x60, 0x3C, 0xC0, 0x3C, 0x80, 0x1C, 0x00, 0x1C, 0x00, - 0x1C, 0x00, 0x18, 0x00, 0x18, 0x00, 0x30, 0x00, 0x30, 0x00, 0x60, 0x00, - 0xC0, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x01, 0x10, - 0x02, 0x3F, 0xFE, 0x7F, 0xFC, 0xFF, 0xFC, 0x0F, 0xC0, 0xFF, 0x0C, 0x3C, - 0x80, 0xE4, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x04, 0x00, 0x40, 0x04, 0x00, - 0xF8, 0x1F, 0xE0, 0x0F, 0x00, 0x1C, 0x00, 0xE0, 0x03, 0x00, 0x18, 0x00, - 0xC0, 0x06, 0x00, 0x60, 0x03, 0x78, 0x73, 0xFF, 0x0F, 0xC0, 0x00, 0x30, - 0x00, 0x30, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xB0, 0x01, 0x30, 0x03, 0x30, - 0x06, 0x30, 0x04, 0x30, 0x08, 0x30, 0x18, 0x30, 0x10, 0x30, 0x20, 0x30, - 0x60, 0x30, 0xC0, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x30, 0x00, 0x30, - 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x7F, 0xC3, - 0xFE, 0x1F, 0xE1, 0x80, 0x08, 0x00, 0xC0, 0x07, 0xC0, 0x7F, 0x81, 0xFF, - 0x00, 0xFC, 0x01, 0xE0, 0x07, 0x80, 0x1C, 0x00, 0x60, 0x03, 0x00, 0x18, - 0x00, 0xC0, 0x06, 0x00, 0x60, 0x07, 0x78, 0x73, 0xFF, 0x0F, 0xC0, 0x00, - 0x0E, 0x00, 0xF8, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x7C, 0x00, 0x79, 0xF0, 0x7F, 0xFC, 0xF8, 0x3C, 0xF0, 0x1E, 0xF0, - 0x1F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0x70, 0x0F, 0x78, - 0x0F, 0x78, 0x0E, 0x3C, 0x1E, 0x1E, 0x3C, 0x0F, 0xF8, 0x07, 0xE0, 0x3F, - 0xFD, 0xFF, 0xF7, 0xFF, 0xF0, 0x06, 0x80, 0x18, 0x00, 0x60, 0x03, 0x00, - 0x0C, 0x00, 0x30, 0x01, 0x80, 0x06, 0x00, 0x18, 0x00, 0xE0, 0x03, 0x00, - 0x0C, 0x00, 0x70, 0x01, 0x80, 0x06, 0x00, 0x38, 0x00, 0xC0, 0x03, 0x00, - 0x1C, 0x00, 0x60, 0x00, 0x0F, 0x83, 0xFC, 0x70, 0xE6, 0x07, 0xC0, 0x3C, - 0x03, 0xC0, 0x3E, 0x03, 0x70, 0x67, 0x8C, 0x3D, 0x81, 0xF0, 0x0F, 0x81, - 0x7C, 0x21, 0xE6, 0x0E, 0xC0, 0x7C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x36, - 0x06, 0x70, 0xE3, 0xFC, 0x0F, 0x80, 0x07, 0xC0, 0x1F, 0xF0, 0x3C, 0x78, - 0x38, 0x3C, 0x78, 0x1E, 0x70, 0x1E, 0xF0, 0x0E, 0xF0, 0x0F, 0xF0, 0x0F, - 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF8, 0x0F, 0x78, 0x0F, 0x3C, 0x3F, - 0x1F, 0xEE, 0x0F, 0x9E, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x78, - 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x00, 0x6F, 0xF6, - 0x00, 0x00, 0x00, 0x00, 0x06, 0xFF, 0x60, 0x67, 0xBC, 0xC0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x19, 0xEF, 0x78, 0x42, 0x22, 0x20, 0x00, 0x00, 0xC0, - 0x00, 0xF0, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x03, 0xF0, - 0x03, 0xF0, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, - 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xC0, - 0x00, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x80, - 0x00, 0x3C, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, 0xFC, - 0x00, 0xFC, 0x00, 0xF8, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF8, 0x00, 0xF0, - 0x00, 0x30, 0x00, 0x00, 0x1F, 0x81, 0xFF, 0x18, 0x7D, 0x81, 0xEC, 0x07, - 0xF0, 0x3F, 0x81, 0xE0, 0x0F, 0x00, 0x70, 0x03, 0x80, 0x38, 0x01, 0x80, - 0x08, 0x00, 0xC0, 0x04, 0x00, 0x20, 0x02, 0x00, 0x10, 0x00, 0x80, 0x00, - 0x00, 0x00, 0x03, 0x00, 0x3C, 0x01, 0xE0, 0x07, 0x00, 0x00, 0x7F, 0x00, - 0x01, 0xFF, 0xC0, 0x07, 0x80, 0xF0, 0x0F, 0x00, 0x38, 0x1C, 0x00, 0x1C, - 0x38, 0x00, 0x0C, 0x38, 0x00, 0x06, 0x70, 0x1E, 0x02, 0x70, 0x3F, 0xE3, - 0xF0, 0x71, 0xE1, 0xE0, 0xE0, 0xC1, 0xE0, 0xC0, 0xC1, 0xE0, 0xC1, 0xC1, - 0xE1, 0x81, 0xC1, 0xE1, 0x81, 0x83, 0xE1, 0x83, 0x82, 0xE1, 0x83, 0x86, - 0x71, 0xC7, 0x8C, 0x70, 0xF9, 0xF8, 0x38, 0xF0, 0xF0, 0x3C, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x07, 0x80, 0x70, 0x03, 0xFF, 0xE0, 0x00, 0x7F, 0x00, - 0x00, 0x10, 0x00, 0x00, 0x38, 0x00, 0x00, 0x38, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x5C, 0x00, 0x00, 0xDE, 0x00, 0x00, 0x8E, 0x00, - 0x01, 0x8F, 0x00, 0x01, 0x87, 0x00, 0x03, 0x07, 0x80, 0x03, 0x03, 0x80, - 0x02, 0x03, 0xC0, 0x06, 0x03, 0xC0, 0x07, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, - 0x0C, 0x01, 0xE0, 0x18, 0x00, 0xF0, 0x18, 0x00, 0xF0, 0x30, 0x00, 0x78, - 0x30, 0x00, 0x78, 0x70, 0x00, 0x7C, 0xFC, 0x01, 0xFF, 0xFF, 0xFC, 0x03, - 0xFF, 0xF8, 0x1E, 0x0F, 0xC1, 0xE0, 0x3C, 0x1E, 0x01, 0xE1, 0xE0, 0x1E, - 0x1E, 0x01, 0xE1, 0xE0, 0x1E, 0x1E, 0x03, 0xC1, 0xE0, 0x78, 0x1F, 0xFE, - 0x01, 0xFF, 0xF0, 0x1E, 0x07, 0xC1, 0xE0, 0x1E, 0x1E, 0x00, 0xF1, 0xE0, - 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x1E, 0x1E, - 0x07, 0xE3, 0xFF, 0xF8, 0xFF, 0xFE, 0x00, 0x00, 0xFE, 0x08, 0x0F, 0xFF, - 0x60, 0xFC, 0x1F, 0x87, 0xC0, 0x1E, 0x3C, 0x00, 0x38, 0xF0, 0x00, 0x67, - 0x80, 0x01, 0x9E, 0x00, 0x02, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x0F, - 0x00, 0x02, 0x1F, 0x00, 0x38, 0x3F, 0x03, 0x80, 0x7F, 0xFC, 0x00, 0x3F, - 0x80, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x78, 0x3F, 0x80, 0xF0, 0x0F, - 0x81, 0xE0, 0x0F, 0x83, 0xC0, 0x0F, 0x07, 0x80, 0x0F, 0x0F, 0x00, 0x1E, - 0x1E, 0x00, 0x1E, 0x3C, 0x00, 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x00, 0xF1, - 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x07, 0x8F, 0x00, 0x1E, 0x1E, - 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0x78, 0x01, 0xE0, 0xF0, 0x0F, 0x81, 0xE0, - 0x7E, 0x07, 0xFF, 0xF0, 0x3F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x87, 0xFF, - 0xF8, 0x3C, 0x01, 0x83, 0xC0, 0x08, 0x3C, 0x00, 0x83, 0xC0, 0x00, 0x3C, - 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x02, 0x03, 0xC0, 0x60, 0x3F, 0xFE, 0x03, - 0xFF, 0xE0, 0x3C, 0x06, 0x03, 0xC0, 0x20, 0x3C, 0x00, 0x03, 0xC0, 0x00, - 0x3C, 0x00, 0x03, 0xC0, 0x01, 0x3C, 0x00, 0x23, 0xC0, 0x06, 0x3C, 0x01, - 0xE7, 0xFF, 0xFE, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xBF, 0xFF, 0xCF, 0x00, - 0x67, 0x80, 0x13, 0xC0, 0x09, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, - 0x02, 0x1E, 0x03, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0xC0, 0x61, 0xE0, 0x10, - 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, - 0x03, 0xC0, 0x03, 0xF0, 0x03, 0xFC, 0x00, 0x00, 0xFE, 0x04, 0x07, 0xFF, - 0xB8, 0x1F, 0x03, 0xF0, 0xF8, 0x01, 0xE3, 0xE0, 0x01, 0xC7, 0x80, 0x01, - 0x9E, 0x00, 0x01, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x00, 0x07, 0x80, 0x07, 0xFF, 0x00, 0x07, 0xDE, 0x00, 0x07, 0xBC, - 0x00, 0x0F, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x3C, 0xF0, 0x00, 0x78, 0xF0, - 0x00, 0xF1, 0xF0, 0x01, 0xE1, 0xF0, 0x03, 0xC1, 0xF8, 0x1F, 0x00, 0xFF, - 0xFC, 0x00, 0x3F, 0x80, 0xFF, 0x03, 0xFD, 0xF8, 0x07, 0xE3, 0xC0, 0x0F, - 0x0F, 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x0F, - 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xFF, 0xFF, 0x0F, 0xFF, - 0xFC, 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x0F, 0x00, 0x3C, - 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x0F, 0x00, 0x3C, 0x3C, - 0x00, 0xF1, 0xF8, 0x07, 0xEF, 0xF0, 0x3F, 0xC0, 0xFF, 0xBF, 0x0F, 0x07, - 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, - 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC3, 0xF3, 0xFE, 0x0F, 0xF0, - 0x7E, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC6, 0x38, 0xF3, 0x8F, 0xF0, 0x7C, 0x00, 0xFF, 0x07, 0xFC, - 0xFC, 0x03, 0xC0, 0xF0, 0x07, 0x01, 0xE0, 0x1C, 0x03, 0xC0, 0x60, 0x07, - 0x81, 0x80, 0x0F, 0x06, 0x00, 0x1E, 0x18, 0x00, 0x3C, 0x60, 0x00, 0x79, - 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xDF, 0x00, 0x07, 0x8F, - 0x00, 0x0F, 0x0F, 0x00, 0x1E, 0x0F, 0x00, 0x3C, 0x0F, 0x00, 0x78, 0x0F, - 0x00, 0xF0, 0x1F, 0x01, 0xE0, 0x1F, 0x03, 0xC0, 0x1F, 0x0F, 0xC0, 0x3F, - 0x3F, 0xC1, 0xFF, 0x80, 0xFF, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x1E, - 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, - 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0x78, - 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, 0x04, 0xF0, - 0x01, 0x1E, 0x00, 0x63, 0xC0, 0x3C, 0xFF, 0xFF, 0xBF, 0xFF, 0xE0, 0xFC, - 0x00, 0x03, 0xF9, 0xF0, 0x00, 0x1F, 0x87, 0x80, 0x01, 0xF8, 0x3E, 0x00, - 0x0F, 0xC1, 0xF0, 0x00, 0x5E, 0x0B, 0xC0, 0x06, 0xF0, 0x5E, 0x00, 0x37, - 0x82, 0x78, 0x03, 0x3C, 0x13, 0xC0, 0x19, 0xE0, 0x8F, 0x01, 0x8F, 0x04, - 0x78, 0x0C, 0x78, 0x21, 0xE0, 0xC3, 0xC1, 0x0F, 0x06, 0x1E, 0x08, 0x3C, - 0x60, 0xF0, 0x41, 0xE3, 0x07, 0x82, 0x07, 0xB0, 0x3C, 0x10, 0x3D, 0x81, - 0xE0, 0x81, 0xF8, 0x0F, 0x04, 0x07, 0xC0, 0x78, 0x20, 0x3C, 0x03, 0xC1, - 0x00, 0xE0, 0x1E, 0x1C, 0x06, 0x01, 0xFB, 0xF8, 0x10, 0x1F, 0xE0, 0xFC, - 0x00, 0xFE, 0x78, 0x00, 0x70, 0x78, 0x00, 0x40, 0xF8, 0x00, 0x81, 0xF8, - 0x01, 0x02, 0xF8, 0x02, 0x04, 0xF8, 0x04, 0x08, 0xF0, 0x08, 0x11, 0xF0, - 0x10, 0x21, 0xF0, 0x20, 0x41, 0xF0, 0x40, 0x81, 0xF0, 0x81, 0x01, 0xF1, - 0x02, 0x01, 0xE2, 0x04, 0x03, 0xE4, 0x08, 0x03, 0xE8, 0x10, 0x03, 0xF0, - 0x20, 0x03, 0xE0, 0x40, 0x03, 0xC0, 0x80, 0x03, 0x81, 0x00, 0x07, 0x07, - 0x00, 0x06, 0x3F, 0x80, 0x04, 0x00, 0x00, 0xFE, 0x00, 0x07, 0xFF, 0x00, - 0x3E, 0x0F, 0x80, 0xF0, 0x07, 0x83, 0xC0, 0x07, 0x87, 0x80, 0x07, 0x1E, - 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0xC0, - 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x03, 0xFC, 0x00, - 0x07, 0xF8, 0x00, 0x0F, 0x78, 0x00, 0x3C, 0xF0, 0x00, 0x78, 0xE0, 0x01, - 0xE1, 0xE0, 0x03, 0xC1, 0xE0, 0x0F, 0x01, 0xF0, 0x7C, 0x00, 0xFF, 0xE0, - 0x00, 0x7F, 0x00, 0xFF, 0xF8, 0x1F, 0xFF, 0x83, 0xC1, 0xF0, 0xF0, 0x1E, - 0x3C, 0x07, 0xCF, 0x00, 0xF3, 0xC0, 0x3C, 0xF0, 0x0F, 0x3C, 0x03, 0xCF, - 0x01, 0xF3, 0xC0, 0x78, 0xF0, 0x7C, 0x3F, 0xFE, 0x0F, 0xFE, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, - 0x3C, 0x00, 0x1F, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x07, 0xFF, - 0x00, 0x3E, 0x0F, 0x80, 0xF0, 0x07, 0x83, 0xC0, 0x07, 0x87, 0x80, 0x0F, - 0x1E, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0xF0, 0x00, 0x1D, 0xE0, 0x00, 0x3F, - 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x03, 0xFC, - 0x00, 0x07, 0xF8, 0x00, 0x0F, 0x70, 0x00, 0x1C, 0xF0, 0x00, 0x79, 0xE0, - 0x00, 0xF1, 0xE0, 0x03, 0xC1, 0xC0, 0x07, 0x01, 0xC0, 0x1C, 0x01, 0xE0, - 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0xC0, 0xFF, 0xF0, - 0x03, 0xFF, 0xF0, 0x0F, 0x07, 0xC0, 0x78, 0x1E, 0x03, 0xC0, 0x78, 0x1E, - 0x03, 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xF0, 0x3C, 0x07, 0x81, 0xE0, 0x78, - 0x0F, 0x0F, 0x80, 0x7F, 0xF8, 0x03, 0xFE, 0x00, 0x1E, 0x78, 0x00, 0xF1, - 0xE0, 0x07, 0x87, 0x80, 0x3C, 0x3C, 0x01, 0xE0, 0xF0, 0x0F, 0x03, 0xC0, - 0x78, 0x0F, 0x03, 0xC0, 0x7C, 0x3F, 0x01, 0xF3, 0xFC, 0x07, 0xE0, 0x07, - 0x84, 0x1F, 0xFC, 0x3C, 0x3E, 0x30, 0x0E, 0x70, 0x06, 0x70, 0x06, 0x70, - 0x02, 0x78, 0x00, 0x7C, 0x00, 0x3F, 0x00, 0x1F, 0xC0, 0x0F, 0xE0, 0x03, - 0xF8, 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x0F, 0xC0, - 0x0F, 0xE0, 0x0F, 0x70, 0x1E, 0x78, 0x3C, 0x4F, 0xF8, 0x43, 0xF0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xF0, 0x7C, 0x0F, 0x03, 0x80, 0xF0, 0x10, - 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, - 0x00, 0x00, 0xF0, 0x00, 0x1F, 0x80, 0x03, 0xFC, 0x00, 0xFF, 0x01, 0xFD, - 0xF8, 0x01, 0xC3, 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, - 0x00, 0x83, 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, 0x00, - 0x83, 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, 0x00, 0x83, - 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, 0x00, 0x81, 0xE0, - 0x04, 0x07, 0x80, 0x30, 0x0F, 0x81, 0x80, 0x1F, 0xFC, 0x00, 0x1F, 0xC0, - 0x00, 0xFF, 0xC0, 0x7F, 0x3E, 0x00, 0x1E, 0x1E, 0x00, 0x0C, 0x0E, 0x00, - 0x18, 0x0F, 0x00, 0x18, 0x07, 0x00, 0x10, 0x07, 0x80, 0x30, 0x07, 0x80, - 0x30, 0x03, 0xC0, 0x60, 0x03, 0xC0, 0x60, 0x01, 0xE0, 0x40, 0x01, 0xE0, - 0xC0, 0x00, 0xF0, 0xC0, 0x00, 0xF1, 0x80, 0x00, 0x71, 0x80, 0x00, 0x7B, - 0x00, 0x00, 0x3B, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x08, 0x00, 0xFF, 0x9F, - 0xF0, 0x3F, 0x9F, 0x03, 0xE0, 0x07, 0x07, 0x80, 0xF0, 0x03, 0x03, 0xC0, - 0x78, 0x01, 0x80, 0xE0, 0x1E, 0x00, 0x80, 0x78, 0x0F, 0x00, 0xC0, 0x1C, - 0x03, 0x80, 0x60, 0x0F, 0x01, 0xE0, 0x20, 0x07, 0x81, 0xF0, 0x30, 0x01, - 0xC0, 0xBC, 0x18, 0x00, 0xF0, 0xDE, 0x08, 0x00, 0x78, 0x67, 0x0C, 0x00, - 0x1E, 0x23, 0xC4, 0x00, 0x0F, 0x31, 0xE6, 0x00, 0x03, 0x90, 0x7B, 0x00, - 0x01, 0xF8, 0x3D, 0x00, 0x00, 0xFC, 0x0F, 0x80, 0x00, 0x3C, 0x07, 0xC0, - 0x00, 0x1E, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0xE0, 0x00, 0x03, 0x00, 0x70, - 0x00, 0x01, 0x80, 0x10, 0x00, 0x00, 0x80, 0x08, 0x00, 0x7F, 0xE0, 0xFF, - 0x0F, 0xC0, 0x1E, 0x03, 0xE0, 0x0E, 0x00, 0xF0, 0x06, 0x00, 0x3C, 0x06, - 0x00, 0x0F, 0x06, 0x00, 0x07, 0x86, 0x00, 0x01, 0xE6, 0x00, 0x00, 0x7B, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x03, - 0xF0, 0x00, 0x03, 0x78, 0x00, 0x01, 0x9E, 0x00, 0x01, 0x87, 0x80, 0x01, - 0x83, 0xE0, 0x01, 0x80, 0xF0, 0x01, 0x80, 0x3C, 0x01, 0x80, 0x1F, 0x01, - 0xC0, 0x07, 0xC1, 0xE0, 0x03, 0xF3, 0xFE, 0x0F, 0xFE, 0xFF, 0xC0, 0xFF, - 0x7E, 0x00, 0x1C, 0x1E, 0x00, 0x18, 0x1F, 0x00, 0x30, 0x0F, 0x00, 0x60, - 0x07, 0x80, 0x60, 0x03, 0xC0, 0xC0, 0x03, 0xE1, 0x80, 0x01, 0xE1, 0x80, - 0x00, 0xF3, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x7E, 0x00, 0x01, 0xFF, 0x80, 0x3F, 0xFF, 0xF1, 0xFF, 0xFF, 0x9C, - 0x00, 0x78, 0xC0, 0x07, 0x84, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x3C, - 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x00, 0x00, 0x78, 0x00, 0x47, 0x80, 0x06, 0x78, 0x00, 0x33, 0x80, - 0x07, 0x3F, 0xFF, 0xFB, 0xFF, 0xFF, 0xC0, 0xFF, 0x83, 0x06, 0x0C, 0x18, - 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x07, 0xF0, 0xC0, 0x18, 0x06, 0x01, - 0x80, 0x70, 0x0C, 0x03, 0x00, 0xE0, 0x18, 0x06, 0x01, 0xC0, 0x30, 0x0C, - 0x03, 0x80, 0x60, 0x18, 0x07, 0x00, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x60, - 0x1C, 0x03, 0xFE, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, - 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x1F, 0xF0, 0x03, 0x80, 0x0F, 0x00, 0x1F, 0x00, 0x76, 0x00, 0xCE, - 0x03, 0x8C, 0x06, 0x1C, 0x1C, 0x18, 0x30, 0x30, 0xE0, 0x31, 0x80, 0x67, - 0x00, 0x6C, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xC0, 0xE0, 0x70, - 0x18, 0x0C, 0x03, 0x1F, 0x03, 0x8C, 0x38, 0x31, 0xC1, 0x8E, 0x0C, 0x00, - 0x60, 0x0F, 0x01, 0x98, 0x30, 0xC3, 0x86, 0x38, 0x31, 0xC1, 0x8E, 0x0C, - 0x78, 0xE5, 0xFB, 0xCF, 0x0C, 0x00, 0x00, 0x38, 0x00, 0xF8, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x39, - 0xF0, 0x3B, 0xFC, 0x3C, 0x3E, 0x38, 0x0E, 0x38, 0x0F, 0x38, 0x07, 0x38, - 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x06, 0x38, 0x0E, 0x38, - 0x0C, 0x3C, 0x1C, 0x1F, 0xF0, 0x07, 0xE0, 0x07, 0xE0, 0x7F, 0xE3, 0x87, - 0xD8, 0x0F, 0x60, 0x1B, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, - 0x0E, 0x00, 0x3C, 0x01, 0x78, 0x19, 0xFF, 0xC3, 0xFE, 0x03, 0xE0, 0x00, - 0x00, 0x00, 0x1C, 0x00, 0x7C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x07, 0x9C, 0x1F, 0xDC, 0x38, 0x7C, 0x70, - 0x3C, 0x70, 0x1C, 0x60, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, - 0x1C, 0xE0, 0x1C, 0xF0, 0x1C, 0x70, 0x1C, 0x7C, 0x3E, 0x3F, 0xDF, 0x0F, - 0x90, 0x0F, 0x81, 0xFF, 0x08, 0x3C, 0x80, 0xE7, 0xFF, 0x7F, 0xFF, 0x00, - 0x18, 0x00, 0xC0, 0x07, 0x00, 0x38, 0x03, 0xE0, 0x37, 0x83, 0x3F, 0xF0, - 0xFF, 0x03, 0xF0, 0x01, 0xF0, 0x3F, 0xC3, 0x8E, 0x18, 0x00, 0xC0, 0x0E, - 0x00, 0x70, 0x03, 0x80, 0x1C, 0x03, 0xFE, 0x1F, 0xF0, 0x38, 0x01, 0xC0, - 0x0E, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, - 0xC0, 0x0E, 0x00, 0x70, 0x07, 0xC0, 0xFF, 0x80, 0x0F, 0xC0, 0x1F, 0xFF, - 0x38, 0xFF, 0x70, 0x70, 0x70, 0x70, 0x70, 0x30, 0x70, 0x30, 0x70, 0x30, - 0x38, 0x20, 0x1C, 0x60, 0x0F, 0x80, 0x10, 0x00, 0x20, 0x00, 0x60, 0x00, - 0x7F, 0xE0, 0x3F, 0xFC, 0x1F, 0xFE, 0x20, 0x06, 0x40, 0x02, 0xC0, 0x02, - 0xC0, 0x04, 0xF0, 0x18, 0x7F, 0xF0, 0x1F, 0x80, 0x00, 0x00, 0x38, 0x00, - 0xF8, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, - 0x38, 0x00, 0x38, 0xF0, 0x3B, 0xF8, 0x3E, 0x3C, 0x3C, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x7C, 0x3E, 0xFE, 0x7F, 0x18, 0x3C, - 0x3C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x04, 0x3C, 0x7C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x3C, 0xFF, 0x03, 0x03, - 0xC1, 0xE0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0xC3, 0xE0, 0x70, - 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, - 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x37, 0x3B, 0xF8, 0xF8, 0x00, 0x00, - 0x1C, 0x00, 0x3E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x3F, 0x8E, 0x0F, 0x07, 0x06, 0x03, - 0x86, 0x01, 0xC4, 0x00, 0xE4, 0x00, 0x7E, 0x00, 0x3F, 0x80, 0x1D, 0xC0, - 0x0E, 0x70, 0x07, 0x1C, 0x03, 0x8F, 0x01, 0xC3, 0xC0, 0xE0, 0xF0, 0xF8, - 0x3C, 0xFE, 0x7F, 0x80, 0x00, 0x1C, 0x7C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x3C, 0xFF, 0x38, 0xF0, 0x7C, 0x3E, 0xFE, 0x7F, 0x83, - 0xE3, 0xF0, 0xE0, 0xE0, 0x70, 0x1C, 0x38, 0x1C, 0x07, 0x0E, 0x07, 0x01, - 0xC3, 0x81, 0xC0, 0x70, 0xE0, 0x70, 0x1C, 0x38, 0x1C, 0x07, 0x0E, 0x07, - 0x01, 0xC3, 0x81, 0xC0, 0x70, 0xE0, 0x70, 0x1C, 0x38, 0x1C, 0x07, 0x0E, - 0x07, 0x01, 0xC3, 0x81, 0xE0, 0x73, 0xF9, 0xFC, 0x7F, 0x38, 0xF0, 0xFB, - 0xF8, 0x3E, 0x3C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, - 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, - 0x1C, 0x78, 0x3C, 0xFE, 0x7F, 0x07, 0xE0, 0x1F, 0xF8, 0x3C, 0x7C, 0x78, - 0x3E, 0x70, 0x1E, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, - 0x0F, 0xF8, 0x0F, 0x78, 0x0E, 0x7C, 0x1C, 0x3E, 0x3C, 0x0F, 0xF0, 0x07, - 0xC0, 0x18, 0xF0, 0xFB, 0xFC, 0x3E, 0x1E, 0x38, 0x0E, 0x38, 0x0F, 0x38, - 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x06, 0x38, - 0x0E, 0x38, 0x0C, 0x3E, 0x1C, 0x3B, 0xF8, 0x39, 0xE0, 0x38, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x7C, 0x00, 0xFF, - 0x00, 0x07, 0xC4, 0x1F, 0xEC, 0x3C, 0x3C, 0x70, 0x1C, 0x70, 0x1C, 0x60, - 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xF0, - 0x1C, 0x70, 0x1C, 0x78, 0x3C, 0x3F, 0xDC, 0x1F, 0x1C, 0x00, 0x1C, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x3E, 0x00, - 0xFF, 0x19, 0xFF, 0x7C, 0xF3, 0x9C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, - 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x1F, 0x07, 0xF0, 0x3E, - 0x58, 0x7C, 0x0F, 0x03, 0xC0, 0x7C, 0x07, 0x80, 0xF8, 0x1F, 0x81, 0xF8, - 0x1E, 0x03, 0xC0, 0xF0, 0x3E, 0x1A, 0x7C, 0x10, 0x30, 0x70, 0xFE, 0xFE, - 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x79, - 0x7E, 0x3C, 0xF8, 0x7C, 0x38, 0x3C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x3C, 0x7C, 0x1F, 0xDF, 0x0F, 0x18, 0xFE, 0x1F, - 0x7C, 0x06, 0x38, 0x04, 0x1C, 0x04, 0x1C, 0x0C, 0x0E, 0x08, 0x0E, 0x18, - 0x07, 0x10, 0x07, 0x10, 0x07, 0x20, 0x03, 0xA0, 0x03, 0xE0, 0x01, 0xC0, - 0x01, 0xC0, 0x00, 0x80, 0x00, 0x80, 0xFC, 0x7F, 0x1F, 0x78, 0x3C, 0x06, - 0x38, 0x1C, 0x04, 0x38, 0x1C, 0x04, 0x1C, 0x1C, 0x0C, 0x1C, 0x0E, 0x08, - 0x1C, 0x1E, 0x18, 0x0E, 0x17, 0x10, 0x0E, 0x37, 0x10, 0x07, 0x23, 0x30, - 0x07, 0x63, 0xA0, 0x07, 0x43, 0xE0, 0x03, 0xC1, 0xC0, 0x03, 0x81, 0xC0, - 0x01, 0x80, 0x80, 0x01, 0x00, 0x80, 0x7F, 0x7E, 0x1E, 0x0C, 0x07, 0x8C, - 0x01, 0xC4, 0x00, 0x76, 0x00, 0x3E, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x03, - 0xE0, 0x01, 0x70, 0x01, 0x1C, 0x01, 0x8F, 0x01, 0x83, 0x80, 0x80, 0xE0, - 0xC0, 0x79, 0xF0, 0xFF, 0xFE, 0x0F, 0x7C, 0x06, 0x38, 0x06, 0x1C, 0x04, - 0x1C, 0x0C, 0x0E, 0x0C, 0x0E, 0x08, 0x0F, 0x18, 0x07, 0x10, 0x07, 0x90, - 0x03, 0xB0, 0x03, 0xA0, 0x01, 0xE0, 0x01, 0xE0, 0x00, 0xC0, 0x00, 0xC0, - 0x00, 0x80, 0x00, 0x80, 0x01, 0x80, 0x01, 0x00, 0x03, 0x00, 0x7E, 0x00, - 0x7C, 0x00, 0x78, 0x00, 0x7F, 0xF9, 0xFF, 0xE6, 0x07, 0x10, 0x38, 0x00, - 0xE0, 0x07, 0x00, 0x38, 0x01, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xE0, 0x07, - 0x01, 0x38, 0x0D, 0xC0, 0x3F, 0xFF, 0xBF, 0xFE, 0x07, 0x0E, 0x1C, 0x18, - 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x30, 0x60, 0x60, - 0x10, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1C, - 0x0E, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x70, 0x38, 0x18, - 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x08, 0x06, 0x06, - 0x08, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x38, - 0x70, 0xE0, 0x3E, 0x00, 0x7F, 0x87, 0xE3, 0xFE, 0x00, 0x7C}; - -const GFXglyph FreeSerif18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 4, 24, 12, 5, -23}, // 0x21 '!' - {12, 8, 9, 14, 3, -23}, // 0x22 '"' - {21, 17, 23, 17, 0, -22}, // 0x23 '#' - {70, 13, 27, 17, 2, -24}, // 0x24 '$' - {114, 25, 23, 29, 2, -22}, // 0x25 '%' - {186, 25, 25, 27, 1, -24}, // 0x26 '&' - {265, 3, 9, 7, 2, -23}, // 0x27 ''' - {269, 9, 30, 12, 2, -23}, // 0x28 '(' - {303, 9, 30, 12, 1, -22}, // 0x29 ')' - {337, 12, 14, 18, 3, -23}, // 0x2A '*' - {358, 16, 18, 20, 2, -17}, // 0x2B '+' - {394, 4, 9, 9, 2, -3}, // 0x2C ',' - {399, 8, 2, 12, 1, -8}, // 0x2D '-' - {401, 4, 4, 9, 2, -3}, // 0x2E '.' - {403, 10, 24, 10, 0, -23}, // 0x2F '/' - {433, 16, 24, 18, 1, -23}, // 0x30 '0' - {481, 10, 24, 18, 3, -23}, // 0x31 '1' - {511, 16, 24, 17, 1, -23}, // 0x32 '2' - {559, 13, 24, 17, 2, -23}, // 0x33 '3' - {598, 16, 23, 18, 0, -22}, // 0x34 '4' - {644, 13, 24, 17, 2, -23}, // 0x35 '5' - {683, 16, 24, 18, 1, -23}, // 0x36 '6' - {731, 14, 23, 18, 1, -22}, // 0x37 '7' - {772, 12, 25, 18, 2, -24}, // 0x38 '8' - {810, 16, 26, 17, 1, -24}, // 0x39 '9' - {862, 4, 17, 9, 2, -16}, // 0x3A ':' - {871, 5, 22, 9, 2, -16}, // 0x3B ';' - {885, 18, 18, 20, 1, -17}, // 0x3C '<' - {926, 18, 9, 20, 1, -12}, // 0x3D '=' - {947, 18, 18, 20, 1, -17}, // 0x3E '>' - {988, 13, 25, 16, 2, -24}, // 0x3F '?' - {1029, 24, 25, 30, 3, -24}, // 0x40 '@' - {1104, 24, 23, 25, 1, -22}, // 0x41 'A' - {1173, 20, 23, 22, 1, -22}, // 0x42 'B' - {1231, 22, 24, 23, 1, -23}, // 0x43 'C' - {1297, 23, 23, 25, 1, -22}, // 0x44 'D' - {1364, 20, 23, 21, 2, -22}, // 0x45 'E' - {1422, 17, 23, 20, 2, -22}, // 0x46 'F' - {1471, 23, 24, 25, 1, -23}, // 0x47 'G' - {1540, 22, 23, 25, 2, -22}, // 0x48 'H' - {1604, 9, 23, 11, 2, -22}, // 0x49 'I' - {1630, 12, 23, 13, 0, -22}, // 0x4A 'J' - {1665, 23, 23, 25, 2, -22}, // 0x4B 'K' - {1732, 19, 23, 21, 2, -22}, // 0x4C 'L' - {1787, 29, 23, 31, 1, -22}, // 0x4D 'M' - {1871, 23, 23, 25, 1, -22}, // 0x4E 'N' - {1938, 23, 24, 25, 1, -23}, // 0x4F 'O' - {2007, 18, 23, 20, 1, -22}, // 0x50 'P' - {2059, 23, 30, 25, 1, -23}, // 0x51 'Q' - {2146, 21, 23, 23, 2, -22}, // 0x52 'R' - {2207, 16, 24, 19, 1, -23}, // 0x53 'S' - {2255, 20, 23, 21, 1, -22}, // 0x54 'T' - {2313, 22, 23, 25, 2, -22}, // 0x55 'U' - {2377, 24, 23, 25, 0, -22}, // 0x56 'V' - {2446, 33, 23, 33, 0, -22}, // 0x57 'W' - {2541, 25, 23, 25, 0, -22}, // 0x58 'X' - {2613, 24, 23, 25, 1, -22}, // 0x59 'Y' - {2682, 21, 23, 21, 0, -22}, // 0x5A 'Z' - {2743, 7, 28, 12, 3, -22}, // 0x5B '[' - {2768, 10, 24, 10, 0, -23}, // 0x5C '\' - {2798, 7, 28, 12, 2, -22}, // 0x5D ']' - {2823, 15, 13, 16, 1, -22}, // 0x5E '^' - {2848, 18, 2, 17, 0, 3}, // 0x5F '_' - {2853, 8, 6, 9, 1, -23}, // 0x60 '`' - {2859, 13, 16, 15, 2, -15}, // 0x61 'a' - {2885, 16, 25, 17, 1, -24}, // 0x62 'b' - {2935, 14, 16, 16, 1, -15}, // 0x63 'c' - {2963, 16, 25, 17, 1, -24}, // 0x64 'd' - {3013, 13, 16, 16, 1, -15}, // 0x65 'e' - {3039, 13, 25, 13, 0, -24}, // 0x66 'f' - {3080, 16, 24, 16, 1, -15}, // 0x67 'g' - {3128, 16, 25, 17, 1, -24}, // 0x68 'h' - {3178, 8, 24, 10, 0, -23}, // 0x69 'i' - {3202, 9, 32, 12, 0, -23}, // 0x6A 'j' - {3238, 17, 25, 18, 1, -24}, // 0x6B 'k' - {3292, 8, 25, 9, 0, -24}, // 0x6C 'l' - {3317, 26, 16, 27, 1, -15}, // 0x6D 'm' - {3369, 16, 16, 17, 1, -15}, // 0x6E 'n' - {3401, 16, 16, 17, 1, -15}, // 0x6F 'o' - {3433, 16, 24, 17, 1, -15}, // 0x70 'p' - {3481, 16, 24, 17, 1, -15}, // 0x71 'q' - {3529, 11, 16, 12, 1, -15}, // 0x72 'r' - {3551, 10, 16, 13, 1, -15}, // 0x73 's' - {3571, 8, 19, 10, 2, -18}, // 0x74 't' - {3590, 16, 16, 17, 1, -15}, // 0x75 'u' - {3622, 16, 16, 16, 0, -15}, // 0x76 'v' - {3654, 24, 16, 24, 0, -15}, // 0x77 'w' - {3702, 17, 16, 17, 0, -15}, // 0x78 'x' - {3736, 16, 24, 16, 0, -15}, // 0x79 'y' - {3784, 14, 16, 15, 0, -15}, // 0x7A 'z' - {3812, 8, 30, 17, 3, -23}, // 0x7B '{' - {3842, 2, 24, 7, 2, -23}, // 0x7C '|' - {3848, 8, 30, 17, 6, -22}, // 0x7D '}' - {3878, 16, 4, 17, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSerif18pt7b PROGMEM = {(uint8_t *)FreeSerif18pt7bBitmaps, - (GFXglyph *)FreeSerif18pt7bGlyphs, - 0x20, 0x7E, 42}; - -// Approx. 4558 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h deleted file mode 100644 index cac1999..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h +++ /dev/null @@ -1,692 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif24pt7bBitmaps[] PROGMEM = { - 0x77, 0xBF, 0xFF, 0xFF, 0xFF, 0xFB, 0x9C, 0xE7, 0x39, 0xCE, 0x61, 0x08, - 0x42, 0x10, 0x84, 0x00, 0x00, 0xEF, 0xFF, 0xEE, 0x60, 0x6F, 0x0F, 0xF0, - 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, 0x60, - 0x66, 0x06, 0x00, 0xE0, 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x07, - 0x03, 0x80, 0x0E, 0x06, 0x00, 0x18, 0x0C, 0x00, 0x30, 0x38, 0x00, 0xE0, - 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC1, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, - 0xF0, 0x18, 0x0C, 0x00, 0x70, 0x38, 0x00, 0xE0, 0x70, 0x01, 0xC0, 0xE0, - 0x03, 0x81, 0xC0, 0x07, 0x03, 0x80, 0x0C, 0x06, 0x07, 0xFF, 0xFF, 0xEF, - 0xFF, 0xFF, 0xC0, 0xE0, 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x06, - 0x03, 0x80, 0x0C, 0x06, 0x00, 0x38, 0x1C, 0x00, 0x70, 0x38, 0x00, 0xE0, - 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x00, 0x00, 0x40, 0x00, 0x08, - 0x00, 0x01, 0x00, 0x01, 0xFC, 0x01, 0xE4, 0xF8, 0x70, 0x87, 0x9C, 0x10, - 0x77, 0x02, 0x06, 0xE0, 0x40, 0xDC, 0x08, 0x0B, 0x81, 0x00, 0x78, 0x20, - 0x07, 0x84, 0x00, 0xFC, 0x80, 0x0F, 0xF0, 0x00, 0xFE, 0x00, 0x07, 0xF0, - 0x00, 0x7F, 0x80, 0x03, 0xFC, 0x00, 0x3F, 0xC0, 0x05, 0xFC, 0x00, 0x8F, - 0x80, 0x10, 0xF8, 0x02, 0x0F, 0x00, 0x40, 0xF0, 0x08, 0x1E, 0x01, 0x03, - 0xE0, 0x20, 0x7C, 0x04, 0x0F, 0xC0, 0x83, 0xBC, 0x10, 0xE3, 0xE2, 0x78, - 0x3F, 0xFE, 0x00, 0xFE, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, - 0x01, 0xF0, 0x00, 0xC0, 0x03, 0xFC, 0x01, 0xE0, 0x03, 0xC7, 0x81, 0xE0, - 0x03, 0xC0, 0x7F, 0x60, 0x03, 0xC0, 0x20, 0x70, 0x01, 0xE0, 0x10, 0x30, - 0x01, 0xE0, 0x08, 0x38, 0x00, 0xE0, 0x04, 0x18, 0x00, 0xF0, 0x02, 0x1C, - 0x00, 0x78, 0x02, 0x0C, 0x00, 0x38, 0x01, 0x0E, 0x00, 0x1C, 0x01, 0x86, - 0x00, 0x0E, 0x00, 0x86, 0x00, 0x07, 0x00, 0x87, 0x03, 0xE1, 0x80, 0xC3, - 0x07, 0xFC, 0xE1, 0xC3, 0x87, 0xC6, 0x3F, 0xC1, 0x87, 0x81, 0x8F, 0x81, - 0xC7, 0x80, 0x40, 0x00, 0xC3, 0xC0, 0x20, 0x00, 0xE3, 0xC0, 0x10, 0x00, - 0x61, 0xC0, 0x08, 0x00, 0x61, 0xE0, 0x04, 0x00, 0x70, 0xF0, 0x06, 0x00, - 0x30, 0x70, 0x02, 0x00, 0x38, 0x38, 0x03, 0x00, 0x18, 0x1C, 0x01, 0x00, - 0x1C, 0x0E, 0x01, 0x80, 0x0C, 0x07, 0x01, 0x80, 0x0E, 0x01, 0xC3, 0x80, - 0x06, 0x00, 0x7F, 0x80, 0x06, 0x00, 0x1F, 0x00, 0x07, 0x00, 0x00, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x70, 0xE0, 0x00, - 0x00, 0xE0, 0x60, 0x00, 0x00, 0xC0, 0x30, 0x00, 0x01, 0xC0, 0x30, 0x00, - 0x01, 0xC0, 0x30, 0x00, 0x01, 0xC0, 0x30, 0x00, 0x01, 0xC0, 0x70, 0x00, - 0x01, 0xE0, 0xE0, 0x00, 0x01, 0xE1, 0xC0, 0x00, 0x00, 0xF3, 0x80, 0x00, - 0x00, 0xFF, 0x0F, 0xFC, 0x00, 0xFC, 0x03, 0xF0, 0x00, 0xF8, 0x01, 0xE0, - 0x01, 0xFC, 0x01, 0xC0, 0x07, 0x7C, 0x01, 0xC0, 0x0F, 0x3E, 0x01, 0x80, - 0x1E, 0x3E, 0x03, 0x00, 0x3C, 0x1F, 0x03, 0x00, 0x7C, 0x1F, 0x06, 0x00, - 0x78, 0x0F, 0x86, 0x00, 0x78, 0x07, 0xCC, 0x00, 0xF8, 0x07, 0xE8, 0x00, - 0xF8, 0x03, 0xF8, 0x00, 0xF8, 0x01, 0xF0, 0x00, 0xF8, 0x01, 0xF8, 0x00, - 0xFC, 0x00, 0xFC, 0x01, 0xFC, 0x01, 0xFE, 0x01, 0x7E, 0x03, 0xBF, 0x86, - 0x7F, 0x0F, 0x1F, 0xFE, 0x3F, 0xFC, 0x0F, 0xF8, 0x0F, 0xE0, 0x03, 0xF0, - 0x6F, 0xFF, 0xFF, 0x66, 0x66, 0x66, 0x00, 0x10, 0x02, 0x00, 0xC0, 0x18, - 0x03, 0x00, 0x60, 0x0E, 0x00, 0xC0, 0x1C, 0x03, 0x80, 0x38, 0x03, 0x80, - 0x78, 0x07, 0x00, 0x70, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x07, 0x00, 0x70, 0x07, 0x80, - 0x38, 0x03, 0x80, 0x38, 0x01, 0xC0, 0x0C, 0x00, 0xC0, 0x06, 0x00, 0x30, - 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, 0xC0, 0x06, 0x00, 0x30, 0x01, 0x80, - 0x0C, 0x00, 0x60, 0x07, 0x00, 0x30, 0x03, 0x80, 0x1C, 0x01, 0xC0, 0x1C, - 0x01, 0xE0, 0x0E, 0x00, 0xE0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0E, 0x00, 0xE0, 0x1E, - 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x38, 0x03, 0x00, 0x70, 0x0E, 0x00, 0xC0, - 0x18, 0x03, 0x00, 0x40, 0x08, 0x00, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, - 0x43, 0x86, 0xE1, 0x0F, 0xF1, 0x1F, 0xF9, 0x3E, 0x3D, 0x78, 0x07, 0xC0, - 0x01, 0x00, 0x07, 0xC0, 0x19, 0x30, 0xF9, 0x1E, 0xF1, 0x0F, 0xE1, 0x07, - 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x00, 0x38, 0x00, 0x00, - 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, - 0x00, 0x00, 0xE0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0x00, - 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, - 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, - 0x0E, 0x00, 0x00, 0x73, 0xEF, 0xFF, 0x7C, 0x10, 0x42, 0x08, 0xC6, 0x00, - 0xFF, 0xFF, 0xFC, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x1C, 0x00, 0xE0, 0x03, - 0x80, 0x0E, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x38, 0x00, 0xE0, 0x03, - 0x80, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xE0, 0x07, - 0x00, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xC0, 0x07, - 0x00, 0x3C, 0x00, 0xE0, 0x03, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x38, 0x00, 0x00, 0xFC, 0x00, 0x0E, 0x1C, 0x00, 0x70, 0x38, 0x03, - 0x80, 0x70, 0x1E, 0x01, 0xE0, 0xF0, 0x03, 0x83, 0xC0, 0x0F, 0x0F, 0x00, - 0x3C, 0x7C, 0x00, 0xF9, 0xE0, 0x01, 0xE7, 0x80, 0x07, 0xBE, 0x00, 0x1F, - 0xF8, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, 0xF8, - 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, - 0x7F, 0xE0, 0x01, 0xF7, 0x80, 0x07, 0x9E, 0x00, 0x1E, 0x7C, 0x00, 0xF8, - 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x07, 0x00, 0x38, 0x1E, 0x01, 0xE0, 0x38, - 0x07, 0x00, 0x70, 0x38, 0x00, 0xE1, 0xC0, 0x00, 0xFC, 0x00, 0x00, 0x80, - 0x1C, 0x03, 0xE0, 0x7F, 0x0C, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, - 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, - 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, - 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3F, - 0x0F, 0xFF, 0x01, 0xF8, 0x00, 0x3F, 0xF0, 0x07, 0xFF, 0xE0, 0x70, 0x3F, - 0x83, 0x00, 0x7C, 0x30, 0x01, 0xF1, 0x00, 0x0F, 0x98, 0x00, 0x3C, 0x80, - 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x1C, - 0x00, 0x01, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x70, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, - 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x43, 0x00, - 0x02, 0x30, 0x00, 0x23, 0xFF, 0xFF, 0x3F, 0xFF, 0xF3, 0xFF, 0xFF, 0x80, - 0x03, 0xF8, 0x03, 0xFF, 0x01, 0x83, 0xE0, 0x80, 0x3C, 0x40, 0x0F, 0x10, - 0x01, 0xC8, 0x00, 0x70, 0x00, 0x1C, 0x00, 0x06, 0x00, 0x03, 0x00, 0x00, - 0x80, 0x00, 0xC0, 0x00, 0x78, 0x00, 0x7F, 0x80, 0x7F, 0xF0, 0x01, 0xFE, - 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x01, 0xC0, - 0x00, 0x70, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, - 0x30, 0x00, 0x0C, 0x70, 0x06, 0x3F, 0x07, 0x0F, 0xFF, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0x00, 0x00, 0x38, 0x00, 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x01, - 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xDC, 0x00, 0x0C, 0xE0, 0x00, 0x47, 0x00, - 0x06, 0x38, 0x00, 0x61, 0xC0, 0x06, 0x0E, 0x00, 0x30, 0x70, 0x03, 0x03, - 0x80, 0x30, 0x1C, 0x01, 0x80, 0xE0, 0x18, 0x07, 0x01, 0x80, 0x38, 0x08, - 0x01, 0xC0, 0xC0, 0x0E, 0x0C, 0x00, 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xE0, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x01, 0xC0, 0x00, - 0x0E, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x00, - 0x40, 0x7F, 0xF8, 0x1F, 0xFE, 0x03, 0xFF, 0xC0, 0xC0, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x00, 0xC0, 0x00, 0x1C, 0x00, 0x07, 0xF8, 0x00, 0xFF, 0xC0, - 0x3F, 0xFE, 0x00, 0xFF, 0xE0, 0x01, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x7C, - 0x00, 0x07, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x1C, - 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x30, - 0x00, 0x0E, 0x00, 0x01, 0x80, 0x00, 0x71, 0xE0, 0x1C, 0x3F, 0x07, 0x07, - 0xFF, 0x80, 0x3F, 0x80, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x0F, - 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, - 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, - 0x07, 0xC7, 0xE0, 0x3E, 0xFF, 0xC3, 0xF8, 0x3F, 0x1F, 0x80, 0x7C, 0xF8, - 0x03, 0xF7, 0xC0, 0x0F, 0xBE, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, - 0xFC, 0x00, 0x7F, 0xE0, 0x03, 0xFF, 0x00, 0x1F, 0x78, 0x00, 0xFB, 0xE0, - 0x07, 0x9F, 0x00, 0x3C, 0x78, 0x03, 0xE3, 0xE0, 0x1E, 0x0F, 0x81, 0xE0, - 0x3E, 0x1E, 0x00, 0xFF, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0xFF, 0xF3, 0xFF, - 0xFF, 0x3F, 0xFF, 0xE7, 0x00, 0x0E, 0x40, 0x00, 0xEC, 0x00, 0x1C, 0x80, - 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, - 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x00, 0xE0, - 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x38, - 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x07, - 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xC0, 0x00, 0x03, 0xF0, 0x03, 0xFF, 0x03, 0xC1, 0xE0, 0xC0, 0x1C, 0x70, - 0x07, 0x18, 0x00, 0xEE, 0x00, 0x3B, 0x80, 0x0E, 0xF0, 0x03, 0xBC, 0x00, - 0xE7, 0x80, 0x71, 0xF0, 0x38, 0x3E, 0x1C, 0x07, 0xEE, 0x00, 0xFE, 0x00, - 0x1F, 0xC0, 0x03, 0xF8, 0x03, 0xFF, 0x01, 0xC7, 0xE0, 0xE0, 0xFC, 0x70, - 0x0F, 0x98, 0x01, 0xEE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x01, 0xF8, 0x00, - 0x7E, 0x00, 0x1F, 0xC0, 0x07, 0x70, 0x03, 0x9E, 0x00, 0xE3, 0xE0, 0xF0, - 0x7F, 0xF0, 0x07, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x3F, 0xF0, 0x03, 0xC3, - 0xE0, 0x3C, 0x0F, 0x83, 0xC0, 0x3C, 0x3E, 0x00, 0xF1, 0xE0, 0x07, 0xCF, - 0x00, 0x3E, 0xF8, 0x00, 0xF7, 0xC0, 0x07, 0xFE, 0x00, 0x3F, 0xF0, 0x01, - 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xF0, 0x03, 0xEF, 0x80, 0x1F, 0x7C, - 0x00, 0xF9, 0xF0, 0x0F, 0xC7, 0xE1, 0xFC, 0x1F, 0xF9, 0xE0, 0x3F, 0x1F, - 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, - 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, - 0x0F, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x00, 0x77, 0xFF, 0xF7, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xBF, 0xFF, 0xB8, 0x39, 0xF7, - 0xDF, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x73, 0xEF, - 0xFF, 0x7C, 0x10, 0x42, 0x08, 0xC6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x07, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, - 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xE0, - 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0x00, 0x00, 0x01, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0xE0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x07, - 0xF8, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xE0, - 0x0F, 0xFE, 0x0C, 0x1F, 0x88, 0x03, 0xEC, 0x01, 0xF7, 0x00, 0x7F, 0xC0, - 0x3F, 0xE0, 0x1F, 0x70, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xC0, 0x01, 0xE0, - 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, 0x70, 0x00, 0x30, 0x00, 0x10, - 0x00, 0x18, 0x00, 0x08, 0x00, 0x04, 0x00, 0x06, 0x00, 0x02, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x03, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, - 0xFF, 0x00, 0x00, 0xFC, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x07, 0xC0, - 0x00, 0x30, 0x0F, 0x00, 0x00, 0x18, 0x1E, 0x00, 0x00, 0x0C, 0x1E, 0x00, - 0x00, 0x04, 0x3C, 0x00, 0xF8, 0x06, 0x3C, 0x01, 0xFD, 0xC2, 0x78, 0x03, - 0xC7, 0xC3, 0x78, 0x07, 0x07, 0x81, 0xF0, 0x0E, 0x03, 0x81, 0xF0, 0x0E, - 0x03, 0x81, 0xF0, 0x1C, 0x07, 0x81, 0xF0, 0x1C, 0x07, 0x01, 0xF0, 0x38, - 0x07, 0x01, 0xF0, 0x38, 0x07, 0x03, 0xF0, 0x38, 0x0F, 0x02, 0xF0, 0x38, - 0x0E, 0x02, 0xF0, 0x38, 0x1E, 0x04, 0x78, 0x38, 0x1E, 0x0C, 0x78, 0x1C, - 0x6E, 0x18, 0x38, 0x1F, 0xC7, 0xF0, 0x3C, 0x0F, 0x03, 0xE0, 0x1E, 0x00, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x60, 0x00, 0xFC, 0x03, 0xE0, 0x00, 0x3F, - 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, - 0x80, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x0D, - 0xF0, 0x00, 0x00, 0x0D, 0xF0, 0x00, 0x00, 0x18, 0xF0, 0x00, 0x00, 0x18, - 0xF8, 0x00, 0x00, 0x38, 0x78, 0x00, 0x00, 0x30, 0x7C, 0x00, 0x00, 0x30, - 0x7C, 0x00, 0x00, 0x60, 0x3E, 0x00, 0x00, 0x60, 0x3E, 0x00, 0x00, 0xE0, - 0x1E, 0x00, 0x00, 0xC0, 0x1F, 0x00, 0x00, 0xC0, 0x1F, 0x00, 0x01, 0x80, - 0x0F, 0x80, 0x01, 0xFF, 0xFF, 0x80, 0x03, 0xFF, 0xFF, 0xC0, 0x03, 0x00, - 0x07, 0xC0, 0x07, 0x00, 0x07, 0xC0, 0x06, 0x00, 0x03, 0xE0, 0x06, 0x00, - 0x03, 0xE0, 0x0E, 0x00, 0x01, 0xF0, 0x0C, 0x00, 0x01, 0xF0, 0x1C, 0x00, - 0x01, 0xF8, 0x3C, 0x00, 0x01, 0xF8, 0x7E, 0x00, 0x01, 0xFC, 0xFF, 0x80, - 0x0F, 0xFF, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0x80, 0x1F, 0x01, 0xF8, - 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x00, 0xF8, 0x0F, 0x80, 0x1F, 0x81, 0xF0, - 0x01, 0xF0, 0x3E, 0x00, 0x3E, 0x07, 0xC0, 0x07, 0xC0, 0xF8, 0x00, 0xF8, - 0x1F, 0x00, 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0x7C, 0x01, 0xF0, 0x0F, 0x80, - 0xFC, 0x01, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xC0, 0x07, 0xC0, 0x7F, 0x00, - 0xF8, 0x01, 0xF0, 0x1F, 0x00, 0x1F, 0x03, 0xE0, 0x03, 0xE0, 0x7C, 0x00, - 0x3E, 0x0F, 0x80, 0x07, 0xC1, 0xF0, 0x00, 0xF8, 0x3E, 0x00, 0x1F, 0x07, - 0xC0, 0x03, 0xE0, 0xF8, 0x00, 0xF8, 0x1F, 0x00, 0x1F, 0x03, 0xE0, 0x07, - 0xC0, 0x7C, 0x07, 0xF0, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x00, 0x00, - 0x1F, 0xF0, 0x20, 0x07, 0xFF, 0xEE, 0x01, 0xF8, 0x1F, 0xE0, 0x3E, 0x00, - 0x7E, 0x07, 0x80, 0x01, 0xE0, 0xF0, 0x00, 0x1E, 0x1F, 0x00, 0x00, 0xE3, - 0xE0, 0x00, 0x06, 0x3C, 0x00, 0x00, 0x67, 0xC0, 0x00, 0x02, 0x7C, 0x00, - 0x00, 0x27, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x02, 0x0F, 0x80, 0x00, 0xE0, 0x7E, 0x00, 0x1C, 0x03, 0xF8, 0x0F, 0x00, - 0x0F, 0xFF, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0xFF, 0xC0, 0x00, 0x7F, - 0xFF, 0xF8, 0x00, 0x3E, 0x03, 0xFC, 0x00, 0x7C, 0x00, 0xFC, 0x00, 0xF8, - 0x00, 0x7E, 0x01, 0xF0, 0x00, 0x7E, 0x03, 0xE0, 0x00, 0x7C, 0x07, 0xC0, - 0x00, 0x7C, 0x0F, 0x80, 0x00, 0xF8, 0x1F, 0x00, 0x00, 0xF8, 0x3E, 0x00, - 0x01, 0xF0, 0x7C, 0x00, 0x03, 0xF0, 0xF8, 0x00, 0x03, 0xE1, 0xF0, 0x00, - 0x07, 0xC3, 0xE0, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x1F, 0x0F, 0x80, 0x00, - 0x3E, 0x1F, 0x00, 0x00, 0x7C, 0x3E, 0x00, 0x00, 0xF8, 0x7C, 0x00, 0x01, - 0xF0, 0xF8, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x1E, - 0x07, 0xC0, 0x00, 0x7C, 0x0F, 0x80, 0x01, 0xF0, 0x1F, 0x00, 0x03, 0xE0, - 0x3E, 0x00, 0x1F, 0x80, 0x7C, 0x00, 0x7C, 0x00, 0xF8, 0x0F, 0xF0, 0x07, - 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF0, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x07, - 0xFF, 0xFF, 0xE0, 0x7C, 0x00, 0x1C, 0x0F, 0x80, 0x01, 0x81, 0xF0, 0x00, - 0x30, 0x3E, 0x00, 0x02, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x20, 0x0F, 0x80, 0x04, - 0x01, 0xF0, 0x01, 0x80, 0x3E, 0x00, 0x70, 0x07, 0xFF, 0xFE, 0x00, 0xFF, - 0xFF, 0xC0, 0x1F, 0x00, 0x38, 0x03, 0xE0, 0x03, 0x00, 0x7C, 0x00, 0x20, - 0x0F, 0x80, 0x04, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0xF8, 0x00, 0x03, 0x1F, 0x00, 0x00, 0x43, 0xE0, 0x00, 0x18, - 0x7C, 0x00, 0x07, 0x0F, 0x80, 0x01, 0xC1, 0xF0, 0x00, 0xF8, 0x7F, 0xFF, - 0xFF, 0x3F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x1F, - 0x00, 0x07, 0x1F, 0x00, 0x03, 0x1F, 0x00, 0x03, 0x1F, 0x00, 0x01, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x08, 0x1F, 0x00, 0x08, 0x1F, 0x00, 0x18, 0x1F, 0x00, 0x38, 0x1F, - 0xFF, 0xF8, 0x1F, 0xFF, 0xF8, 0x1F, 0x00, 0x38, 0x1F, 0x00, 0x18, 0x1F, - 0x00, 0x08, 0x1F, 0x00, 0x08, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0xFF, - 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x08, 0x00, 0xFF, 0xFE, 0x70, 0x07, 0xE0, - 0x1F, 0xE0, 0x1F, 0x00, 0x0F, 0xC0, 0x78, 0x00, 0x07, 0x81, 0xE0, 0x00, - 0x07, 0x07, 0xC0, 0x00, 0x0E, 0x1F, 0x00, 0x00, 0x0C, 0x3E, 0x00, 0x00, - 0x08, 0xF8, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, - 0x7C, 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x01, 0xFD, 0xF0, 0x00, 0x01, 0xF3, - 0xE0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x07, 0xCF, 0x80, 0x00, 0x0F, 0x8F, - 0x80, 0x00, 0x1F, 0x1F, 0x00, 0x00, 0x3E, 0x3E, 0x00, 0x00, 0x7C, 0x3E, - 0x00, 0x00, 0xF8, 0x7C, 0x00, 0x01, 0xF0, 0x7C, 0x00, 0x03, 0xE0, 0xFC, - 0x00, 0x07, 0xC0, 0xFC, 0x00, 0x0F, 0x80, 0x7C, 0x00, 0x3F, 0x00, 0x7F, - 0x01, 0xFC, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x0F, 0xF8, 0x00, 0xFF, 0xE0, - 0x1F, 0xFC, 0xFE, 0x00, 0x1F, 0xC1, 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, - 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x3E, - 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, - 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, - 0x00, 0x0F, 0x81, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0xF8, 0x1F, 0x00, - 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, - 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x3E, - 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, - 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0xFE, - 0x00, 0x1F, 0xCF, 0xFE, 0x01, 0xFF, 0xC0, 0xFF, 0xF8, 0xFE, 0x03, 0xE0, - 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, - 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, - 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, - 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x0F, 0xE3, 0xFF, 0xE0, 0x0F, 0xFF, - 0x80, 0xFE, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, - 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, - 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, - 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3C, 0x0E, 0x1E, 0x0F, 0x8F, 0x07, - 0xCF, 0x01, 0xFF, 0x00, 0x7E, 0x00, 0xFF, 0xF8, 0x3F, 0xFC, 0x3F, 0xC0, - 0x07, 0xE0, 0x0F, 0x80, 0x07, 0x80, 0x0F, 0x80, 0x07, 0x00, 0x0F, 0x80, - 0x0E, 0x00, 0x0F, 0x80, 0x1C, 0x00, 0x0F, 0x80, 0x38, 0x00, 0x0F, 0x80, - 0x70, 0x00, 0x0F, 0x80, 0xE0, 0x00, 0x0F, 0x81, 0xC0, 0x00, 0x0F, 0x83, - 0x80, 0x00, 0x0F, 0x87, 0x00, 0x00, 0x0F, 0x9E, 0x00, 0x00, 0x0F, 0xBC, - 0x00, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0x00, 0x00, 0x0F, 0xDF, - 0x80, 0x00, 0x0F, 0x8F, 0xC0, 0x00, 0x0F, 0x87, 0xE0, 0x00, 0x0F, 0x83, - 0xF0, 0x00, 0x0F, 0x81, 0xF8, 0x00, 0x0F, 0x80, 0xFC, 0x00, 0x0F, 0x80, - 0x7E, 0x00, 0x0F, 0x80, 0x3F, 0x00, 0x0F, 0x80, 0x3F, 0x80, 0x0F, 0x80, - 0x1F, 0x80, 0x0F, 0x80, 0x0F, 0xC0, 0x0F, 0x80, 0x07, 0xE0, 0x0F, 0x80, - 0x07, 0xF0, 0x1F, 0xC0, 0x07, 0xFC, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0xF0, - 0x00, 0x0F, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x7C, 0x00, 0x01, 0x1F, 0x00, 0x00, 0xC7, 0xC0, 0x00, 0x21, 0xF0, - 0x00, 0x18, 0x7C, 0x00, 0x0E, 0x1F, 0x00, 0x1F, 0x8F, 0xFF, 0xFF, 0xCF, - 0xFF, 0xFF, 0xF0, 0xFF, 0x80, 0x00, 0x03, 0xFE, 0x7F, 0x80, 0x00, 0x07, - 0xF0, 0x3F, 0x00, 0x00, 0x1F, 0xC0, 0x7E, 0x00, 0x00, 0x3F, 0x80, 0xFE, - 0x00, 0x00, 0xFF, 0x01, 0xFC, 0x00, 0x01, 0xBE, 0x03, 0x7C, 0x00, 0x03, - 0x7C, 0x06, 0xF8, 0x00, 0x0E, 0xF8, 0x0D, 0xF8, 0x00, 0x19, 0xF0, 0x19, - 0xF0, 0x00, 0x73, 0xE0, 0x33, 0xF0, 0x00, 0xC7, 0xC0, 0x63, 0xE0, 0x03, - 0x8F, 0x80, 0xC7, 0xE0, 0x06, 0x1F, 0x01, 0x87, 0xC0, 0x1C, 0x3E, 0x03, - 0x0F, 0xC0, 0x30, 0x7C, 0x06, 0x0F, 0x80, 0x60, 0xF8, 0x0C, 0x1F, 0x81, - 0x81, 0xF0, 0x18, 0x1F, 0x03, 0x03, 0xE0, 0x30, 0x3F, 0x0C, 0x07, 0xC0, - 0x60, 0x3E, 0x18, 0x0F, 0x80, 0xC0, 0x7C, 0x70, 0x1F, 0x01, 0x80, 0x7C, - 0xC0, 0x3E, 0x03, 0x00, 0xFB, 0x80, 0x7C, 0x06, 0x00, 0xFE, 0x00, 0xF8, - 0x0C, 0x01, 0xFC, 0x01, 0xF0, 0x18, 0x03, 0xF0, 0x03, 0xE0, 0x30, 0x03, - 0xE0, 0x07, 0xC0, 0x60, 0x07, 0x80, 0x0F, 0x81, 0xE0, 0x07, 0x00, 0x1F, - 0x07, 0xE0, 0x0C, 0x00, 0xFF, 0x3F, 0xF0, 0x08, 0x07, 0xFF, 0x80, 0xFF, - 0x00, 0x03, 0xFF, 0x3F, 0x80, 0x00, 0xFC, 0x1F, 0xC0, 0x00, 0x78, 0x0F, - 0xC0, 0x00, 0x30, 0x0F, 0xE0, 0x00, 0x30, 0x0F, 0xF0, 0x00, 0x30, 0x0D, - 0xF8, 0x00, 0x30, 0x0D, 0xFC, 0x00, 0x30, 0x0C, 0xFC, 0x00, 0x30, 0x0C, - 0x7E, 0x00, 0x30, 0x0C, 0x3F, 0x00, 0x30, 0x0C, 0x1F, 0x80, 0x30, 0x0C, - 0x1F, 0xC0, 0x30, 0x0C, 0x0F, 0xE0, 0x30, 0x0C, 0x07, 0xE0, 0x30, 0x0C, - 0x03, 0xF0, 0x30, 0x0C, 0x01, 0xF8, 0x30, 0x0C, 0x01, 0xFC, 0x30, 0x0C, - 0x00, 0xFE, 0x30, 0x0C, 0x00, 0x7E, 0x30, 0x0C, 0x00, 0x3F, 0x30, 0x0C, - 0x00, 0x1F, 0xB0, 0x0C, 0x00, 0x0F, 0xF0, 0x0C, 0x00, 0x0F, 0xF0, 0x0C, - 0x00, 0x07, 0xF0, 0x0C, 0x00, 0x03, 0xF0, 0x0C, 0x00, 0x01, 0xF0, 0x0C, - 0x00, 0x00, 0xF0, 0x1E, 0x00, 0x00, 0xF0, 0x3F, 0x00, 0x00, 0x70, 0xFF, - 0xC0, 0x00, 0x30, 0x00, 0x00, 0x00, 0x10, 0x00, 0x1F, 0xE0, 0x00, 0x03, - 0xFF, 0xF0, 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, - 0x07, 0xC0, 0x7C, 0x00, 0x0F, 0x01, 0xE0, 0x00, 0x1E, 0x0F, 0x80, 0x00, - 0x7C, 0x3C, 0x00, 0x00, 0xF1, 0xF0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x0F, - 0x9E, 0x00, 0x00, 0x1E, 0xF8, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x01, 0xFF, - 0x80, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, 0xE0, - 0x00, 0x01, 0xFF, 0x80, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x1F, 0xF8, 0x00, - 0x00, 0x7D, 0xF0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x0F, 0x9F, 0x00, 0x00, - 0x3E, 0x3C, 0x00, 0x00, 0xF0, 0xF8, 0x00, 0x07, 0xC1, 0xE0, 0x00, 0x1E, - 0x07, 0xC0, 0x00, 0xF8, 0x0F, 0x80, 0x07, 0xC0, 0x1F, 0x00, 0x3E, 0x00, - 0x1F, 0x03, 0xE0, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0xFF, - 0xFF, 0x00, 0x7F, 0xFF, 0x80, 0x7C, 0x1F, 0xC0, 0xF8, 0x07, 0xC1, 0xF0, - 0x07, 0xC3, 0xE0, 0x0F, 0x87, 0xC0, 0x0F, 0x8F, 0x80, 0x1F, 0x1F, 0x00, - 0x3E, 0x3E, 0x00, 0x7C, 0x7C, 0x00, 0xF8, 0xF8, 0x01, 0xF1, 0xF0, 0x07, - 0xC3, 0xE0, 0x0F, 0x87, 0xC0, 0x3E, 0x0F, 0x81, 0xF8, 0x1F, 0xFF, 0xC0, - 0x3F, 0xFE, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xF0, - 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFF, 0xF8, - 0x00, 0x07, 0xC0, 0xF8, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x7C, - 0x03, 0xE0, 0x00, 0x7C, 0x07, 0x80, 0x00, 0x78, 0x1F, 0x00, 0x00, 0xF8, - 0x3C, 0x00, 0x00, 0xF0, 0xF8, 0x00, 0x01, 0xF1, 0xF0, 0x00, 0x03, 0xE3, - 0xC0, 0x00, 0x03, 0xCF, 0x80, 0x00, 0x07, 0xDF, 0x00, 0x00, 0x0F, 0xBE, - 0x00, 0x00, 0x1F, 0x7C, 0x00, 0x00, 0x3E, 0xF8, 0x00, 0x00, 0x7D, 0xF0, - 0x00, 0x00, 0xFB, 0xE0, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x03, 0xEF, 0x80, - 0x00, 0x07, 0xCF, 0x00, 0x00, 0x1F, 0x1F, 0x00, 0x00, 0x3E, 0x3E, 0x00, - 0x00, 0x7C, 0x3C, 0x00, 0x01, 0xF0, 0x7C, 0x00, 0x03, 0xE0, 0x78, 0x00, - 0x0F, 0x80, 0x78, 0x00, 0x1E, 0x00, 0x78, 0x00, 0x78, 0x00, 0x7C, 0x03, - 0xE0, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x1F, - 0x03, 0xF8, 0x01, 0xF0, 0x0F, 0x80, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x03, - 0xE0, 0x1F, 0x00, 0x3E, 0x01, 0xF0, 0x03, 0xE0, 0x1F, 0x00, 0x3E, 0x01, - 0xF0, 0x03, 0xE0, 0x1F, 0x00, 0x3E, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, - 0x7C, 0x01, 0xF0, 0x0F, 0x80, 0x1F, 0x07, 0xF0, 0x01, 0xFF, 0xFC, 0x00, - 0x1F, 0xFE, 0x00, 0x01, 0xF1, 0xF0, 0x00, 0x1F, 0x1F, 0x80, 0x01, 0xF0, - 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x01, 0xF0, 0x3E, 0x00, 0x1F, 0x03, 0xF0, - 0x01, 0xF0, 0x1F, 0x80, 0x1F, 0x00, 0xFC, 0x01, 0xF0, 0x07, 0xC0, 0x1F, - 0x00, 0x7E, 0x01, 0xF0, 0x03, 0xF0, 0x1F, 0x00, 0x1F, 0x83, 0xF8, 0x00, - 0xFC, 0xFF, 0xF0, 0x0F, 0xF0, 0x03, 0xF0, 0x20, 0x7F, 0xF3, 0x07, 0xC1, - 0xF8, 0x78, 0x03, 0xC3, 0x80, 0x0E, 0x3C, 0x00, 0x31, 0xE0, 0x01, 0xCF, - 0x00, 0x06, 0x7C, 0x00, 0x33, 0xE0, 0x01, 0x9F, 0x80, 0x00, 0x7E, 0x00, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0xC0, 0x01, - 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0x7F, - 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, - 0x07, 0xF8, 0x00, 0x3F, 0xC0, 0x01, 0xEF, 0x00, 0x1F, 0x3C, 0x01, 0xF1, - 0xF8, 0x1F, 0x0C, 0xFF, 0xF0, 0x40, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0x7C, 0x07, 0xF0, 0x0F, 0x80, 0x3C, 0x01, 0xF0, - 0x07, 0x00, 0x3E, 0x00, 0x60, 0x07, 0xC0, 0x08, 0x00, 0xF8, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x7F, 0xFC, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0x3F, 0xE0, 0x00, - 0xFC, 0x0F, 0x80, 0x00, 0x78, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x20, 0x07, 0xC0, 0x00, - 0x60, 0x07, 0xC0, 0x00, 0x60, 0x03, 0xE0, 0x00, 0xC0, 0x03, 0xF0, 0x01, - 0xC0, 0x01, 0xFC, 0x07, 0x80, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x0F, 0xF8, - 0x00, 0xFF, 0xF8, 0x01, 0xFF, 0x3F, 0xC0, 0x00, 0x7E, 0x0F, 0x80, 0x00, - 0x3C, 0x0F, 0xC0, 0x00, 0x38, 0x07, 0xC0, 0x00, 0x38, 0x07, 0xC0, 0x00, - 0x30, 0x03, 0xE0, 0x00, 0x70, 0x03, 0xE0, 0x00, 0x60, 0x01, 0xF0, 0x00, - 0x60, 0x01, 0xF0, 0x00, 0xE0, 0x01, 0xF8, 0x00, 0xC0, 0x00, 0xF8, 0x01, - 0xC0, 0x00, 0xF8, 0x01, 0x80, 0x00, 0x7C, 0x01, 0x80, 0x00, 0x7C, 0x03, - 0x80, 0x00, 0x3E, 0x03, 0x00, 0x00, 0x3E, 0x07, 0x00, 0x00, 0x1F, 0x06, - 0x00, 0x00, 0x1F, 0x06, 0x00, 0x00, 0x1F, 0x8E, 0x00, 0x00, 0x0F, 0x8C, - 0x00, 0x00, 0x0F, 0x9C, 0x00, 0x00, 0x07, 0xD8, 0x00, 0x00, 0x07, 0xD8, - 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x00, 0xE0, - 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x40, 0x00, 0xFF, 0xF1, 0xFF, - 0xF0, 0x1F, 0xF3, 0xF8, 0x07, 0xF8, 0x00, 0x7C, 0x1F, 0x80, 0x3F, 0x00, - 0x03, 0x80, 0xF8, 0x01, 0xF0, 0x00, 0x30, 0x0F, 0x80, 0x1F, 0x00, 0x03, - 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x30, 0x07, 0xC0, 0x0F, 0x80, 0x06, 0x00, - 0x3E, 0x00, 0x7C, 0x00, 0x60, 0x03, 0xE0, 0x07, 0xC0, 0x06, 0x00, 0x3E, - 0x00, 0x7C, 0x00, 0xC0, 0x01, 0xF0, 0x07, 0xE0, 0x0C, 0x00, 0x1F, 0x00, - 0xFE, 0x01, 0xC0, 0x01, 0xF0, 0x0D, 0xE0, 0x18, 0x00, 0x0F, 0x80, 0xDF, - 0x01, 0x80, 0x00, 0xF8, 0x19, 0xF0, 0x30, 0x00, 0x07, 0xC1, 0x8F, 0x83, - 0x00, 0x00, 0x7C, 0x38, 0xF8, 0x30, 0x00, 0x07, 0xC3, 0x0F, 0x86, 0x00, - 0x00, 0x3E, 0x30, 0x7C, 0x60, 0x00, 0x03, 0xE7, 0x07, 0xCE, 0x00, 0x00, - 0x3E, 0x60, 0x3E, 0xC0, 0x00, 0x01, 0xF6, 0x03, 0xEC, 0x00, 0x00, 0x1F, - 0xE0, 0x3F, 0xC0, 0x00, 0x01, 0xFC, 0x01, 0xF8, 0x00, 0x00, 0x0F, 0xC0, - 0x1F, 0x80, 0x00, 0x00, 0xF8, 0x01, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x0F, - 0x00, 0x00, 0x00, 0x78, 0x00, 0xF0, 0x00, 0x00, 0x07, 0x00, 0x07, 0x00, - 0x00, 0x00, 0x70, 0x00, 0x60, 0x00, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, - 0x00, 0x20, 0x00, 0x20, 0x00, 0x7F, 0xFE, 0x03, 0xFF, 0x8F, 0xF8, 0x00, - 0x7E, 0x01, 0xFC, 0x00, 0x1C, 0x00, 0x7E, 0x00, 0x1C, 0x00, 0x1F, 0x00, - 0x0C, 0x00, 0x07, 0xC0, 0x0E, 0x00, 0x03, 0xF0, 0x0E, 0x00, 0x00, 0xF8, - 0x0E, 0x00, 0x00, 0x3E, 0x06, 0x00, 0x00, 0x1F, 0x86, 0x00, 0x00, 0x07, - 0xC7, 0x00, 0x00, 0x01, 0xF7, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, - 0x3F, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x03, 0x9F, 0x00, 0x00, - 0x01, 0x8F, 0xC0, 0x00, 0x01, 0x83, 0xF0, 0x00, 0x01, 0xC0, 0xF8, 0x00, - 0x01, 0xC0, 0x7E, 0x00, 0x01, 0xC0, 0x1F, 0x80, 0x01, 0xC0, 0x07, 0xC0, - 0x00, 0xC0, 0x03, 0xF0, 0x00, 0xE0, 0x00, 0xFC, 0x00, 0xE0, 0x00, 0x7F, - 0x00, 0xF0, 0x00, 0x1F, 0x80, 0xFC, 0x00, 0x1F, 0xF3, 0xFF, 0x80, 0x7F, - 0xFE, 0xFF, 0xF8, 0x03, 0xFF, 0x3F, 0xE0, 0x00, 0x7C, 0x1F, 0xC0, 0x00, - 0x78, 0x0F, 0xC0, 0x00, 0x70, 0x07, 0xE0, 0x00, 0x60, 0x03, 0xF0, 0x00, - 0xE0, 0x01, 0xF0, 0x01, 0xC0, 0x01, 0xF8, 0x01, 0x80, 0x00, 0xFC, 0x03, - 0x80, 0x00, 0x7C, 0x07, 0x00, 0x00, 0x7E, 0x06, 0x00, 0x00, 0x3F, 0x0E, - 0x00, 0x00, 0x1F, 0x1C, 0x00, 0x00, 0x1F, 0x98, 0x00, 0x00, 0x0F, 0xF8, - 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x3F, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xF8, - 0xF0, 0x00, 0x3E, 0x38, 0x00, 0x0F, 0x86, 0x00, 0x03, 0xF0, 0xC0, 0x00, - 0x7C, 0x10, 0x00, 0x1F, 0x02, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF8, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFC, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x7E, - 0x00, 0x01, 0x0F, 0x80, 0x00, 0x63, 0xF0, 0x00, 0x0C, 0xFC, 0x00, 0x03, - 0xBF, 0x00, 0x00, 0xE7, 0xC0, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, - 0xFF, 0xF0, 0xFF, 0xF0, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, - 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, - 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0F, 0x07, 0xFC, 0xE0, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0x38, 0x00, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x1C, - 0x00, 0x70, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x1C, 0x00, 0x70, 0x01, - 0xC0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, - 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x01, 0xC0, 0x07, 0x00, 0x1E, 0x00, 0x38, - 0x00, 0xE0, 0x03, 0xC0, 0x07, 0xFF, 0x83, 0xC0, 0xE0, 0x70, 0x38, 0x1C, - 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, - 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x3F, 0xFC, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x03, 0xDC, - 0x00, 0x39, 0xC0, 0x07, 0x9E, 0x00, 0x70, 0xE0, 0x0F, 0x0F, 0x00, 0xE0, - 0x70, 0x1E, 0x07, 0x81, 0xC0, 0x38, 0x3C, 0x03, 0xC3, 0x80, 0x1C, 0x78, - 0x01, 0xE7, 0x00, 0x0E, 0xF0, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xE0, 0x3C, 0x0F, 0x81, 0xF0, 0x1E, 0x03, 0xC0, 0x38, 0x07, 0x03, - 0xF0, 0x07, 0x0E, 0x03, 0x81, 0xC1, 0xE0, 0x30, 0x78, 0x0E, 0x1E, 0x03, - 0x83, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x3E, 0x00, 0x73, 0x80, 0x70, 0xE0, - 0x70, 0x38, 0x38, 0x0E, 0x1C, 0x03, 0x8F, 0x00, 0xE3, 0xC0, 0x38, 0xF0, - 0x0E, 0x3E, 0x07, 0x8F, 0xC3, 0xE1, 0xFF, 0x3F, 0x1F, 0x07, 0x80, 0x06, - 0x00, 0x01, 0xF0, 0x00, 0x3F, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, - 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, - 0x00, 0x07, 0x80, 0x00, 0x3C, 0x7E, 0x01, 0xEF, 0xFC, 0x0F, 0xC3, 0xF0, - 0x7C, 0x07, 0x83, 0xC0, 0x3E, 0x1E, 0x00, 0xF0, 0xF0, 0x07, 0xC7, 0x80, - 0x1E, 0x3C, 0x00, 0xF1, 0xE0, 0x07, 0x8F, 0x00, 0x3C, 0x78, 0x01, 0xE3, - 0xC0, 0x0F, 0x1E, 0x00, 0x70, 0xF0, 0x03, 0x87, 0x80, 0x38, 0x3C, 0x01, - 0xC1, 0xE0, 0x1C, 0x0F, 0xC1, 0xC0, 0x1F, 0xFC, 0x00, 0x3F, 0x80, 0x01, - 0xFC, 0x00, 0xFF, 0xE0, 0x38, 0x3E, 0x0E, 0x03, 0xE3, 0x80, 0x7C, 0xE0, - 0x07, 0x18, 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, - 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x1B, 0xC0, - 0x02, 0x7C, 0x01, 0x87, 0xE0, 0x60, 0x7F, 0xF8, 0x07, 0xFE, 0x00, 0x3F, - 0x00, 0x00, 0x00, 0x60, 0x00, 0x0F, 0x80, 0x00, 0xFE, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x7C, 0x78, 0x07, 0xFD, - 0xE0, 0x3C, 0x3F, 0x81, 0xC0, 0x3E, 0x0E, 0x00, 0xF8, 0x38, 0x01, 0xE1, - 0xE0, 0x07, 0x87, 0x00, 0x1E, 0x3C, 0x00, 0x78, 0xF0, 0x01, 0xE3, 0xC0, - 0x07, 0x8F, 0x00, 0x1E, 0x3C, 0x00, 0x78, 0xF0, 0x01, 0xE3, 0xE0, 0x07, - 0x87, 0x80, 0x1E, 0x1F, 0x00, 0x78, 0x3E, 0x03, 0xE0, 0xFC, 0x1F, 0xF0, - 0xFF, 0xDF, 0x00, 0xFC, 0x60, 0x03, 0xF8, 0x03, 0xFF, 0x01, 0xC1, 0xE0, - 0xC0, 0x3C, 0x70, 0x0F, 0x98, 0x01, 0xE7, 0xFF, 0xFB, 0xFF, 0xFE, 0xE0, - 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x3C, 0x00, - 0x1F, 0x00, 0x05, 0xE0, 0x02, 0x7C, 0x01, 0x8F, 0xC1, 0xC3, 0xFF, 0xE0, - 0x7F, 0xF0, 0x07, 0xF0, 0x00, 0x00, 0x7E, 0x00, 0xFF, 0xC0, 0xE3, 0xE0, - 0x60, 0x70, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x07, 0xFF, 0x83, 0xFF, 0xC0, 0x3C, - 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, - 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x3F, - 0x00, 0xFF, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x3F, 0xF0, 0x03, 0xC7, 0xFE, - 0x3C, 0x1F, 0xF1, 0xC0, 0x70, 0x1E, 0x03, 0xC0, 0xF0, 0x0E, 0x07, 0x80, - 0x70, 0x3C, 0x03, 0x81, 0xE0, 0x1C, 0x07, 0x80, 0xC0, 0x3E, 0x0E, 0x00, - 0x78, 0xE0, 0x01, 0xFC, 0x00, 0x18, 0x00, 0x01, 0x80, 0x00, 0x18, 0x00, - 0x01, 0xE0, 0x00, 0x0F, 0xFF, 0xC0, 0x3F, 0xFF, 0x80, 0xFF, 0xFE, 0x0C, - 0x00, 0x38, 0xC0, 0x00, 0x4C, 0x00, 0x02, 0x60, 0x00, 0x17, 0x00, 0x01, - 0x38, 0x00, 0x09, 0xE0, 0x00, 0x87, 0xC0, 0x38, 0x1F, 0xFF, 0x00, 0x3F, - 0xC0, 0x00, 0x06, 0x00, 0x00, 0xF8, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0x80, - 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, - 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x87, 0xE0, 0x1E, - 0x7F, 0xC0, 0x7B, 0x0F, 0x81, 0xF8, 0x1E, 0x07, 0x80, 0x3C, 0x1E, 0x00, - 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, - 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, - 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, - 0xC3, 0xF0, 0x1F, 0x9F, 0xF1, 0xFF, 0x0E, 0x03, 0xE0, 0x7C, 0x0F, 0x80, - 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x70, - 0x7E, 0x1F, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, - 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x07, - 0xE7, 0xFF, 0x00, 0xE0, 0x1F, 0x01, 0xF0, 0x1F, 0x00, 0xE0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x70, 0x3F, 0x07, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xE0, 0x0E, 0xE0, - 0xEF, 0x1C, 0xFF, 0x87, 0xE0, 0x06, 0x00, 0x00, 0x7C, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, - 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, - 0x00, 0xF0, 0x7F, 0xE1, 0xE0, 0x3E, 0x03, 0xC0, 0x70, 0x07, 0x81, 0x80, - 0x0F, 0x06, 0x00, 0x1E, 0x18, 0x00, 0x3C, 0x60, 0x00, 0x79, 0x80, 0x00, - 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xDE, 0x00, 0x07, 0x9E, 0x00, 0x0F, - 0x3E, 0x00, 0x1E, 0x3E, 0x00, 0x3C, 0x3E, 0x00, 0x78, 0x3C, 0x00, 0xF0, - 0x3C, 0x01, 0xE0, 0x7C, 0x03, 0xC0, 0x7C, 0x0F, 0xC0, 0xFE, 0x7F, 0xE3, - 0xFF, 0x03, 0x03, 0xE1, 0xFC, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, - 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, - 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x07, 0xE7, 0xFF, 0x1E, 0x1F, 0x01, - 0xF8, 0x1F, 0xCF, 0xF0, 0xFF, 0x80, 0xFF, 0x0F, 0x70, 0xF8, 0x0F, 0x81, - 0xF8, 0x0F, 0x01, 0xE0, 0x1E, 0x00, 0xF0, 0x3C, 0x03, 0xC0, 0x1E, 0x07, - 0x80, 0x78, 0x03, 0xC0, 0xF0, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xE0, 0x0F, - 0x03, 0xC0, 0x3C, 0x01, 0xE0, 0x78, 0x07, 0x80, 0x3C, 0x0F, 0x00, 0xF0, - 0x07, 0x81, 0xE0, 0x1E, 0x00, 0xF0, 0x3C, 0x03, 0xC0, 0x1E, 0x07, 0x80, - 0x78, 0x03, 0xC0, 0xF0, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xE0, 0x0F, 0x03, - 0xC0, 0x3C, 0x01, 0xE0, 0x78, 0x07, 0x80, 0x3C, 0x1F, 0x81, 0xF8, 0x0F, - 0xCF, 0xFC, 0xFF, 0xC7, 0xFE, 0x1E, 0x1F, 0x83, 0xF9, 0xFF, 0x03, 0xFC, - 0x3E, 0x07, 0xC0, 0x7C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, - 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, - 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, - 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x0F, 0xC0, 0x7E, - 0x7F, 0xC3, 0xFC, 0x01, 0xFE, 0x00, 0x1F, 0xFE, 0x00, 0xF0, 0x7C, 0x0F, - 0x80, 0xF8, 0x3C, 0x01, 0xF1, 0xE0, 0x03, 0xE7, 0x80, 0x0F, 0xBE, 0x00, - 0x3F, 0xF8, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, - 0xF8, 0x00, 0x7F, 0xF0, 0x01, 0xE7, 0xC0, 0x07, 0x9F, 0x80, 0x3E, 0x3E, - 0x00, 0xF0, 0x7C, 0x07, 0x80, 0xF8, 0x3C, 0x01, 0xFF, 0xE0, 0x00, 0xFC, - 0x00, 0x0E, 0x3F, 0x07, 0xF7, 0xFE, 0x07, 0xE0, 0xF8, 0x3E, 0x03, 0xE1, - 0xE0, 0x0F, 0x0F, 0x00, 0x7C, 0x78, 0x03, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, - 0x78, 0xF0, 0x03, 0xC7, 0x80, 0x1E, 0x3C, 0x00, 0xF1, 0xE0, 0x07, 0x8F, - 0x00, 0x38, 0x78, 0x03, 0xC3, 0xC0, 0x1E, 0x1E, 0x00, 0xE0, 0xF8, 0x0E, - 0x07, 0xE0, 0xE0, 0x3D, 0xFE, 0x01, 0xE7, 0xC0, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x1F, 0x80, 0x03, 0xFF, 0x80, 0x00, 0x01, - 0xF8, 0x20, 0x3F, 0xF3, 0x03, 0xC1, 0xF8, 0x3C, 0x07, 0xC3, 0xC0, 0x1E, - 0x1C, 0x00, 0xF1, 0xE0, 0x07, 0x8E, 0x00, 0x3C, 0xF0, 0x01, 0xE7, 0x80, - 0x0F, 0x3C, 0x00, 0x79, 0xE0, 0x03, 0xCF, 0x00, 0x1E, 0x78, 0x00, 0xF3, - 0xE0, 0x07, 0x9F, 0x00, 0x3C, 0x7C, 0x01, 0xE3, 0xE0, 0x1F, 0x0F, 0xC1, - 0xF8, 0x3F, 0xF3, 0xC0, 0x7E, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x1E, 0x00, 0x03, 0xF8, 0x00, 0x7F, 0xE0, 0x06, 0x3C, 0xFC, - 0xFE, 0xFA, 0x78, 0xF8, 0x71, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, - 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x01, 0xF8, 0x0F, 0xFC, - 0x00, 0x1F, 0x91, 0x87, 0x98, 0x1D, 0xC0, 0x6E, 0x03, 0x70, 0x0B, 0xC0, - 0x5F, 0x80, 0x7E, 0x01, 0xFC, 0x07, 0xF0, 0x0F, 0xE0, 0x3F, 0x00, 0x7E, - 0x01, 0xF0, 0x07, 0xC0, 0x3E, 0x01, 0xF8, 0x0D, 0xE0, 0xC8, 0xF8, 0x00, - 0x04, 0x00, 0xC0, 0x0C, 0x01, 0xC0, 0x3C, 0x07, 0xFC, 0xFF, 0xC3, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xE2, - 0x1F, 0xC0, 0xF8, 0xFC, 0x0F, 0xE1, 0xF0, 0x0F, 0x83, 0xC0, 0x1E, 0x0F, - 0x00, 0x78, 0x3C, 0x01, 0xE0, 0xF0, 0x07, 0x83, 0xC0, 0x1E, 0x0F, 0x00, - 0x78, 0x3C, 0x01, 0xE0, 0xF0, 0x07, 0x83, 0xC0, 0x1E, 0x0F, 0x00, 0x78, - 0x3C, 0x01, 0xE0, 0xF0, 0x07, 0x83, 0xC0, 0x1E, 0x0F, 0x00, 0x78, 0x3C, - 0x01, 0xE0, 0xF8, 0x0F, 0x81, 0xF0, 0xFF, 0x03, 0xFE, 0x7F, 0x07, 0xE1, - 0xC0, 0xFF, 0x81, 0xFC, 0xFC, 0x01, 0xC1, 0xE0, 0x07, 0x07, 0x80, 0x18, - 0x0F, 0x00, 0x60, 0x3C, 0x01, 0x00, 0x78, 0x0C, 0x01, 0xE0, 0x30, 0x07, - 0x81, 0x80, 0x0F, 0x06, 0x00, 0x3C, 0x10, 0x00, 0x78, 0xC0, 0x01, 0xE3, - 0x00, 0x03, 0x98, 0x00, 0x0F, 0x60, 0x00, 0x3D, 0x00, 0x00, 0x7C, 0x00, - 0x01, 0xF0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x40, 0x00, 0xFF, 0x8F, 0xF8, 0x3F, 0x7E, 0x07, 0xE0, 0x0E, 0x3E, 0x03, - 0xC0, 0x0C, 0x1E, 0x03, 0xE0, 0x0C, 0x1E, 0x01, 0xE0, 0x0C, 0x1E, 0x01, - 0xE0, 0x18, 0x0F, 0x00, 0xF0, 0x18, 0x0F, 0x01, 0xF0, 0x10, 0x07, 0x81, - 0xF0, 0x30, 0x07, 0x81, 0x78, 0x30, 0x07, 0x83, 0x78, 0x60, 0x03, 0xC3, - 0x38, 0x60, 0x03, 0xC6, 0x3C, 0x40, 0x01, 0xC6, 0x3C, 0xC0, 0x01, 0xEC, - 0x1E, 0xC0, 0x01, 0xEC, 0x1F, 0x80, 0x00, 0xF8, 0x0F, 0x80, 0x00, 0xF8, - 0x0F, 0x00, 0x00, 0x70, 0x0F, 0x00, 0x00, 0x70, 0x07, 0x00, 0x00, 0x60, - 0x06, 0x00, 0x00, 0x20, 0x02, 0x00, 0x7F, 0xE7, 0xF0, 0x7E, 0x0F, 0x00, - 0xF8, 0x38, 0x01, 0xE0, 0xC0, 0x07, 0xC6, 0x00, 0x0F, 0x30, 0x00, 0x1E, - 0xC0, 0x00, 0x7E, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xC0, - 0x00, 0x3F, 0x00, 0x00, 0xDE, 0x00, 0x06, 0x7C, 0x00, 0x30, 0xF0, 0x01, - 0xC1, 0xE0, 0x06, 0x07, 0xC0, 0x30, 0x0F, 0x01, 0xC0, 0x1E, 0x0F, 0x00, - 0xFC, 0xFE, 0x07, 0xFC, 0xFF, 0xC0, 0xFC, 0xFC, 0x01, 0xE1, 0xE0, 0x03, - 0x07, 0x80, 0x18, 0x0F, 0x00, 0x60, 0x3C, 0x01, 0x80, 0x78, 0x0C, 0x01, - 0xE0, 0x30, 0x03, 0xC0, 0xC0, 0x0F, 0x06, 0x00, 0x3E, 0x18, 0x00, 0x78, - 0x40, 0x01, 0xF3, 0x00, 0x03, 0xCC, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, - 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x06, 0x00, 0x00, - 0x18, 0x00, 0x00, 0x40, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x60, - 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x0F, 0xF0, 0x00, 0x7F, 0x80, 0x01, - 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7F, 0xFF, 0x9F, 0xFF, 0xE6, 0x00, - 0xF1, 0x00, 0x78, 0x40, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0x80, 0x03, 0xE0, - 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0x80, 0x03, - 0xE0, 0x01, 0xF0, 0x04, 0x78, 0x01, 0x3E, 0x00, 0xDF, 0x00, 0x37, 0x80, - 0x1F, 0xFF, 0xFE, 0xFF, 0xFF, 0x80, 0x01, 0xE0, 0x78, 0x1C, 0x07, 0x80, - 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x70, 0x1C, 0x0E, 0x00, 0x70, - 0x07, 0x00, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x01, 0xC0, - 0x1E, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xE0, 0x0F, 0x00, 0x70, 0x0F, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0x70, 0x0E, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x0E, 0x07, 0x01, 0xC0, 0x70, - 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x3C, 0x07, 0x03, 0xC0, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0xFF, 0x80, 0xC7, 0x0F, 0x87, 0xB8, 0x0F, 0xFC, 0x00, - 0x07, 0xC0}; - -const GFXglyph FreeSerif24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 5, 32, 16, 6, -31}, // 0x21 '!' - {20, 12, 12, 19, 4, -31}, // 0x22 '"' - {38, 23, 31, 23, 0, -30}, // 0x23 '#' - {128, 19, 37, 24, 2, -33}, // 0x24 '$' - {216, 33, 32, 39, 3, -30}, // 0x25 '%' - {348, 32, 33, 37, 2, -31}, // 0x26 '&' - {480, 4, 12, 9, 3, -31}, // 0x27 ''' - {486, 12, 40, 16, 2, -31}, // 0x28 '(' - {546, 12, 40, 16, 2, -30}, // 0x29 ')' - {606, 16, 19, 24, 4, -30}, // 0x2A '*' - {644, 23, 23, 27, 2, -22}, // 0x2B '+' - {711, 6, 11, 12, 2, -4}, // 0x2C ',' - {720, 11, 2, 16, 2, -10}, // 0x2D '-' - {723, 5, 5, 12, 3, -3}, // 0x2E '.' - {727, 14, 32, 14, 0, -30}, // 0x2F '/' - {783, 22, 33, 23, 1, -31}, // 0x30 '0' - {874, 13, 32, 24, 5, -31}, // 0x31 '1' - {926, 21, 31, 23, 1, -30}, // 0x32 '2' - {1008, 18, 32, 23, 2, -30}, // 0x33 '3' - {1080, 21, 31, 24, 1, -30}, // 0x34 '4' - {1162, 19, 33, 24, 2, -31}, // 0x35 '5' - {1241, 21, 33, 23, 2, -31}, // 0x36 '6' - {1328, 20, 31, 24, 1, -30}, // 0x37 '7' - {1406, 18, 33, 23, 3, -31}, // 0x38 '8' - {1481, 21, 33, 24, 1, -31}, // 0x39 '9' - {1568, 5, 22, 12, 4, -20}, // 0x3A ':' - {1582, 6, 27, 12, 3, -20}, // 0x3B ';' - {1603, 24, 25, 27, 1, -24}, // 0x3C '<' - {1678, 24, 11, 27, 1, -16}, // 0x3D '=' - {1711, 24, 25, 27, 2, -23}, // 0x3E '>' - {1786, 17, 32, 21, 3, -31}, // 0x3F '?' - {1854, 32, 33, 41, 4, -31}, // 0x40 '@' - {1986, 32, 32, 34, 1, -31}, // 0x41 'A' - {2114, 27, 31, 30, 0, -30}, // 0x42 'B' - {2219, 28, 33, 31, 2, -31}, // 0x43 'C' - {2335, 31, 31, 34, 1, -30}, // 0x44 'D' - {2456, 27, 31, 29, 2, -30}, // 0x45 'E' - {2561, 24, 31, 27, 2, -30}, // 0x46 'F' - {2654, 31, 33, 35, 2, -31}, // 0x47 'G' - {2782, 30, 31, 34, 2, -30}, // 0x48 'H' - {2899, 13, 31, 15, 1, -30}, // 0x49 'I' - {2950, 17, 32, 18, 0, -30}, // 0x4A 'J' - {3018, 32, 31, 33, 1, -30}, // 0x4B 'K' - {3142, 26, 31, 29, 2, -30}, // 0x4C 'L' - {3243, 39, 31, 41, 1, -30}, // 0x4D 'M' - {3395, 32, 32, 34, 1, -30}, // 0x4E 'N' - {3523, 30, 33, 34, 2, -31}, // 0x4F 'O' - {3647, 23, 31, 27, 2, -30}, // 0x50 'P' - {3737, 31, 40, 34, 2, -31}, // 0x51 'Q' - {3892, 28, 31, 31, 2, -30}, // 0x52 'R' - {4001, 21, 33, 25, 2, -31}, // 0x53 'S' - {4088, 27, 31, 28, 1, -30}, // 0x54 'T' - {4193, 32, 32, 34, 1, -30}, // 0x55 'U' - {4321, 32, 32, 33, 0, -30}, // 0x56 'V' - {4449, 44, 32, 45, 0, -30}, // 0x57 'W' - {4625, 33, 31, 34, 0, -30}, // 0x58 'X' - {4753, 32, 31, 33, 0, -30}, // 0x59 'Y' - {4877, 27, 31, 29, 1, -30}, // 0x5A 'Z' - {4982, 9, 38, 16, 4, -30}, // 0x5B '[' - {5025, 14, 32, 14, 0, -30}, // 0x5C '\' - {5081, 9, 38, 16, 3, -30}, // 0x5D ']' - {5124, 20, 17, 22, 1, -30}, // 0x5E '^' - {5167, 24, 2, 23, 0, 5}, // 0x5F '_' - {5173, 10, 8, 12, 1, -31}, // 0x60 '`' - {5183, 18, 21, 20, 1, -20}, // 0x61 'a' - {5231, 21, 32, 24, 1, -31}, // 0x62 'b' - {5315, 19, 21, 21, 1, -20}, // 0x63 'c' - {5365, 22, 32, 23, 1, -31}, // 0x64 'd' - {5453, 18, 21, 21, 1, -20}, // 0x65 'e' - {5501, 17, 33, 18, 0, -32}, // 0x66 'f' - {5572, 21, 31, 22, 1, -20}, // 0x67 'g' - {5654, 22, 32, 23, 0, -31}, // 0x68 'h' - {5742, 11, 32, 13, 0, -31}, // 0x69 'i' - {5786, 12, 42, 16, 0, -31}, // 0x6A 'j' - {5849, 23, 32, 24, 1, -31}, // 0x6B 'k' - {5941, 11, 32, 12, 0, -31}, // 0x6C 'l' - {5985, 35, 21, 37, 1, -20}, // 0x6D 'm' - {6077, 22, 21, 23, 0, -20}, // 0x6E 'n' - {6135, 22, 21, 23, 1, -20}, // 0x6F 'o' - {6193, 21, 31, 24, 1, -20}, // 0x70 'p' - {6275, 21, 31, 23, 1, -20}, // 0x71 'q' - {6357, 15, 21, 16, 1, -20}, // 0x72 'r' - {6397, 13, 21, 17, 2, -20}, // 0x73 's' - {6432, 12, 26, 13, 1, -25}, // 0x74 't' - {6471, 22, 21, 23, 1, -20}, // 0x75 'u' - {6529, 22, 22, 22, 0, -20}, // 0x76 'v' - {6590, 32, 22, 32, 0, -20}, // 0x77 'w' - {6678, 22, 21, 23, 0, -20}, // 0x78 'x' - {6736, 22, 31, 22, 0, -20}, // 0x79 'y' - {6822, 18, 21, 20, 1, -20}, // 0x7A 'z' - {6870, 11, 41, 23, 5, -31}, // 0x7B '{' - {6927, 3, 32, 9, 3, -30}, // 0x7C '|' - {6939, 11, 41, 23, 7, -31}, // 0x7D '}' - {6996, 22, 5, 23, 1, -13}}; // 0x7E '~' - -const GFXfont FreeSerif24pt7b PROGMEM = {(uint8_t *)FreeSerif24pt7bBitmaps, - (GFXglyph *)FreeSerif24pt7bGlyphs, - 0x20, 0x7E, 56}; - -// Approx. 7682 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h deleted file mode 100644 index 22f82e4..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h +++ /dev/null @@ -1,197 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xEA, 0x03, 0xDE, 0xF7, 0x20, 0x11, 0x09, 0x04, 0x82, 0x4F, 0xF9, - 0x10, 0x89, 0xFF, 0x24, 0x12, 0x09, 0x0C, 0x80, 0x10, 0x7C, 0xD6, 0xD2, - 0xD0, 0xF0, 0x38, 0x1E, 0x17, 0x93, 0x93, 0xD6, 0x7C, 0x10, 0x38, 0x43, - 0x3C, 0x39, 0x21, 0x8A, 0x0C, 0x50, 0x65, 0x39, 0xCB, 0x20, 0xB9, 0x05, - 0x88, 0x4C, 0x44, 0x64, 0x21, 0xC0, 0x0E, 0x00, 0xC8, 0x06, 0x40, 0x32, - 0x01, 0xA0, 0x07, 0x78, 0x31, 0x87, 0x88, 0x46, 0x86, 0x34, 0x30, 0xC1, - 0xC7, 0x17, 0xCF, 0x00, 0xFE, 0x08, 0x88, 0x84, 0x63, 0x18, 0xC6, 0x10, - 0x82, 0x08, 0x20, 0x82, 0x08, 0x21, 0x0C, 0x63, 0x18, 0xC4, 0x22, 0x22, - 0x00, 0x63, 0x9A, 0xDC, 0x72, 0xB6, 0x08, 0x08, 0x04, 0x02, 0x01, 0x0F, - 0xF8, 0x40, 0x20, 0x10, 0x08, 0x00, 0xD8, 0xF0, 0xF0, 0x08, 0x84, 0x22, - 0x10, 0x8C, 0x42, 0x31, 0x00, 0x1C, 0x31, 0x98, 0xD8, 0x3C, 0x1E, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xD8, 0xC4, 0x61, 0xC0, 0x13, 0x8C, 0x63, 0x18, - 0xC6, 0x31, 0x8C, 0x67, 0x80, 0x3C, 0x4E, 0x86, 0x06, 0x06, 0x04, 0x0C, - 0x08, 0x10, 0x20, 0x41, 0xFE, 0x3C, 0xC6, 0x06, 0x04, 0x1C, 0x3E, 0x07, - 0x03, 0x03, 0x03, 0x06, 0xF8, 0x04, 0x18, 0x71, 0x64, 0xC9, 0xA3, 0x46, - 0xFE, 0x18, 0x30, 0x60, 0x0F, 0x10, 0x20, 0x3C, 0x0E, 0x07, 0x03, 0x03, - 0x03, 0x02, 0x04, 0xF8, 0x07, 0x1C, 0x30, 0x60, 0x60, 0xDC, 0xE6, 0xC3, - 0xC3, 0xC3, 0x43, 0x66, 0x3C, 0x7F, 0x82, 0x02, 0x02, 0x04, 0x04, 0x04, - 0x08, 0x08, 0x08, 0x10, 0x10, 0x3C, 0x8F, 0x1E, 0x3E, 0x4F, 0x06, 0x36, - 0xC7, 0x8F, 0x1B, 0x33, 0xC0, 0x3C, 0x66, 0xC2, 0xC3, 0xC3, 0xC3, 0xC3, - 0x63, 0x3F, 0x06, 0x06, 0x0C, 0x38, 0x60, 0xF0, 0x0F, 0xD8, 0x00, 0x03, - 0x28, 0x01, 0x87, 0x0E, 0x1C, 0x0C, 0x03, 0x80, 0x70, 0x0E, 0x00, 0x80, - 0xFF, 0x80, 0x00, 0x00, 0x0F, 0xF8, 0x80, 0x1C, 0x01, 0xC0, 0x1C, 0x01, - 0xC0, 0xE0, 0xE0, 0xE0, 0xC0, 0x00, 0x79, 0x1A, 0x18, 0x30, 0x60, 0x83, - 0x04, 0x10, 0x20, 0x40, 0x03, 0x00, 0x0F, 0x83, 0x8C, 0x60, 0x26, 0x02, - 0xC7, 0x9C, 0xC9, 0xD8, 0x9D, 0x99, 0xD9, 0x26, 0xEC, 0x60, 0x03, 0x04, - 0x0F, 0x80, 0x02, 0x00, 0x10, 0x01, 0xC0, 0x16, 0x00, 0x98, 0x04, 0xC0, - 0x43, 0x03, 0xF8, 0x20, 0x61, 0x03, 0x18, 0x1D, 0xE1, 0xF0, 0xFF, 0x86, - 0x1C, 0xC1, 0x98, 0x33, 0x0C, 0x7E, 0x0C, 0x31, 0x83, 0x30, 0x66, 0x0C, - 0xC3, 0x7F, 0xC0, 0x1F, 0x26, 0x1D, 0x81, 0xE0, 0x1C, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x0C, 0x00, 0xC1, 0x8F, 0xC0, 0xFF, 0x03, 0x1C, 0x30, - 0x63, 0x07, 0x30, 0x33, 0x03, 0x30, 0x33, 0x03, 0x30, 0x33, 0x06, 0x30, - 0xCF, 0xF0, 0xFF, 0x98, 0x26, 0x01, 0x80, 0x61, 0x1F, 0xC6, 0x11, 0x80, - 0x60, 0x18, 0x16, 0x0F, 0xFE, 0xFF, 0xB0, 0x58, 0x0C, 0x06, 0x13, 0xF9, - 0x84, 0xC0, 0x60, 0x30, 0x18, 0x1E, 0x00, 0x1F, 0x23, 0x0E, 0x60, 0x26, - 0x00, 0xC0, 0x0C, 0x0F, 0xC0, 0x6C, 0x06, 0xC0, 0x66, 0x06, 0x30, 0x60, - 0xF8, 0xF1, 0xEC, 0x19, 0x83, 0x30, 0x66, 0x0C, 0xFF, 0x98, 0x33, 0x06, - 0x60, 0xCC, 0x19, 0x83, 0x78, 0xF0, 0xF6, 0x66, 0x66, 0x66, 0x66, 0x6F, - 0x3C, 0x61, 0x86, 0x18, 0x61, 0x86, 0x18, 0x6D, 0xBC, 0xF3, 0xE6, 0x08, - 0x61, 0x06, 0x20, 0x64, 0x07, 0x80, 0x6C, 0x06, 0x60, 0x63, 0x06, 0x18, - 0x60, 0xCF, 0x3F, 0xF0, 0x18, 0x06, 0x01, 0x80, 0x60, 0x18, 0x06, 0x01, - 0x80, 0x60, 0x18, 0x16, 0x0B, 0xFE, 0xF0, 0x0E, 0x70, 0x38, 0xE0, 0x71, - 0xE1, 0x62, 0xC2, 0xC5, 0xC9, 0x89, 0x93, 0x13, 0x26, 0x23, 0x8C, 0x47, - 0x18, 0x84, 0x33, 0x88, 0xF0, 0xE0, 0xEE, 0x09, 0xC1, 0x2C, 0x25, 0xC4, - 0x9C, 0x91, 0x92, 0x1A, 0x41, 0xC8, 0x19, 0x03, 0x70, 0x20, 0x1F, 0x06, - 0x31, 0x83, 0x20, 0x2C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x68, 0x09, - 0x83, 0x18, 0xC1, 0xF0, 0xFE, 0x31, 0x98, 0x6C, 0x36, 0x1B, 0x19, 0xF8, - 0xC0, 0x60, 0x30, 0x18, 0x1E, 0x00, 0x1F, 0x06, 0x31, 0x83, 0x20, 0x2C, - 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x68, 0x19, 0x83, 0x18, 0xC0, 0xE0, - 0x0E, 0x00, 0xE0, 0x07, 0xFE, 0x0C, 0x61, 0x86, 0x30, 0xC6, 0x18, 0xC6, - 0x1F, 0x83, 0x70, 0x67, 0x0C, 0x71, 0x87, 0x78, 0x70, 0x1D, 0x31, 0x98, - 0x4C, 0x07, 0x80, 0xE0, 0x1C, 0x07, 0x01, 0xA0, 0xD8, 0xCB, 0xC0, 0xFF, - 0xF8, 0xCE, 0x18, 0x83, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, - 0xC0, 0x18, 0x07, 0x80, 0xF0, 0xEC, 0x09, 0x81, 0x30, 0x26, 0x04, 0xC0, - 0x98, 0x13, 0x02, 0x60, 0x4C, 0x08, 0xC2, 0x0F, 0x80, 0xF8, 0x77, 0x02, - 0x30, 0x23, 0x04, 0x18, 0x41, 0x84, 0x0C, 0x80, 0xC8, 0x07, 0x00, 0x70, - 0x02, 0x00, 0x20, 0xFB, 0xE7, 0xB0, 0xC0, 0x8C, 0x20, 0x86, 0x18, 0x41, - 0x8C, 0x40, 0xCB, 0x20, 0x65, 0x90, 0x1A, 0x70, 0x0E, 0x38, 0x03, 0x1C, - 0x01, 0x04, 0x00, 0x82, 0x00, 0xFC, 0xF9, 0x83, 0x06, 0x10, 0x19, 0x00, - 0xD0, 0x03, 0x00, 0x1C, 0x01, 0x30, 0x11, 0xC1, 0x86, 0x08, 0x19, 0xE3, - 0xF0, 0xF8, 0xF6, 0x06, 0x30, 0x41, 0x88, 0x1D, 0x00, 0xD0, 0x06, 0x00, - 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0xF0, 0x3F, 0xCC, 0x11, 0x06, 0x01, - 0x80, 0x70, 0x0C, 0x03, 0x00, 0xE0, 0x38, 0x06, 0x05, 0xC1, 0x7F, 0xE0, - 0xFB, 0x6D, 0xB6, 0xDB, 0x6D, 0xB8, 0x82, 0x10, 0x82, 0x10, 0x86, 0x10, - 0x86, 0x10, 0xED, 0xB6, 0xDB, 0x6D, 0xB6, 0xF8, 0x18, 0x1C, 0x34, 0x26, - 0x62, 0x42, 0xC1, 0xFF, 0x80, 0x84, 0x20, 0x79, 0x98, 0x30, 0xE6, 0xD9, - 0xB3, 0x3F, 0x20, 0x70, 0x18, 0x0C, 0x06, 0x03, 0x71, 0xCC, 0xC3, 0x61, - 0xB0, 0xD8, 0x6C, 0x63, 0xE0, 0x3C, 0xCF, 0x06, 0x0C, 0x18, 0x18, 0x9E, - 0x01, 0x03, 0x80, 0xC0, 0x60, 0x31, 0xD9, 0x9D, 0x86, 0xC3, 0x61, 0xB0, - 0xCC, 0x63, 0xF0, 0x3C, 0x46, 0xFE, 0xC0, 0xC0, 0xE1, 0x62, 0x3C, 0x1E, - 0x41, 0x83, 0x06, 0x1E, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x0F, 0x00, 0x3C, - 0x19, 0xF6, 0x31, 0x8C, 0x1E, 0x08, 0x04, 0x01, 0xFC, 0x40, 0xB0, 0x2E, - 0x11, 0xF8, 0x20, 0x70, 0x18, 0x0C, 0x06, 0x03, 0x71, 0xCC, 0xC6, 0x63, - 0x31, 0x98, 0xCC, 0x6F, 0x78, 0x60, 0x02, 0xE6, 0x66, 0x66, 0xF0, 0x18, - 0x00, 0x33, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8B, 0x80, 0x20, 0x70, 0x18, - 0x0C, 0x06, 0x03, 0x3D, 0x88, 0xD8, 0x78, 0x36, 0x19, 0x8C, 0x6F, 0x78, - 0x2E, 0x66, 0x66, 0x66, 0x66, 0x66, 0xF0, 0xEE, 0x71, 0xCE, 0x66, 0x31, - 0x98, 0xC6, 0x63, 0x19, 0x8C, 0x66, 0x31, 0xBD, 0xEF, 0xEE, 0x39, 0x98, - 0xCC, 0x66, 0x33, 0x19, 0x8D, 0xEF, 0x3E, 0x31, 0xB0, 0x78, 0x3C, 0x1E, - 0x0D, 0x8C, 0x7C, 0xEE, 0x39, 0x98, 0x6C, 0x36, 0x1B, 0x0D, 0x8C, 0xFC, - 0x60, 0x30, 0x18, 0x1E, 0x00, 0x3D, 0x31, 0xB0, 0xD8, 0x6C, 0x36, 0x1B, - 0x8C, 0xFE, 0x03, 0x01, 0x80, 0xC0, 0xF0, 0x6D, 0xC6, 0x18, 0x61, 0x86, - 0x3C, 0x76, 0x38, 0x58, 0x3E, 0x38, 0xFE, 0x27, 0x98, 0xC6, 0x31, 0x8C, - 0x38, 0xE7, 0x31, 0x98, 0xCC, 0x66, 0x33, 0x19, 0x8C, 0x7F, 0xF3, 0x61, - 0x22, 0x32, 0x14, 0x1C, 0x08, 0x08, 0xEF, 0x36, 0x61, 0x62, 0x22, 0x32, - 0x35, 0x41, 0x9C, 0x18, 0x81, 0x08, 0xF7, 0x12, 0x0E, 0x03, 0x01, 0xC1, - 0x21, 0x09, 0xCF, 0xF3, 0x61, 0x62, 0x32, 0x34, 0x14, 0x1C, 0x08, 0x08, - 0x08, 0x10, 0xE0, 0xFD, 0x18, 0x60, 0x83, 0x0C, 0x70, 0xFE, 0x19, 0x8C, - 0x63, 0x18, 0xC4, 0x61, 0x8C, 0x63, 0x18, 0xC3, 0xFF, 0xF0, 0xC3, 0x18, - 0xC6, 0x31, 0x84, 0x33, 0x18, 0xC6, 0x31, 0x98, 0x70, 0x24, 0xC1, 0xC0}; - -const GFXglyph FreeSerif9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 2, 12, 6, 2, -11}, // 0x21 '!' - {3, 5, 4, 7, 1, -11}, // 0x22 '"' - {6, 9, 12, 9, 0, -11}, // 0x23 '#' - {20, 8, 14, 9, 1, -12}, // 0x24 '$' - {34, 13, 12, 15, 1, -11}, // 0x25 '%' - {54, 13, 13, 14, 1, -12}, // 0x26 '&' - {76, 2, 4, 4, 1, -11}, // 0x27 ''' - {77, 5, 15, 6, 1, -11}, // 0x28 '(' - {87, 5, 15, 6, 0, -11}, // 0x29 ')' - {97, 6, 8, 9, 3, -11}, // 0x2A '*' - {103, 9, 9, 10, 0, -8}, // 0x2B '+' - {114, 2, 3, 4, 2, 0}, // 0x2C ',' - {115, 4, 1, 6, 1, -3}, // 0x2D '-' - {116, 2, 2, 5, 1, -1}, // 0x2E '.' - {117, 5, 12, 5, 0, -11}, // 0x2F '/' - {125, 9, 13, 9, 0, -12}, // 0x30 '0' - {140, 5, 13, 9, 2, -12}, // 0x31 '1' - {149, 8, 12, 9, 1, -11}, // 0x32 '2' - {161, 8, 12, 9, 0, -11}, // 0x33 '3' - {173, 7, 12, 9, 1, -11}, // 0x34 '4' - {184, 8, 12, 9, 0, -11}, // 0x35 '5' - {196, 8, 13, 9, 1, -12}, // 0x36 '6' - {209, 8, 12, 9, 0, -11}, // 0x37 '7' - {221, 7, 13, 9, 1, -12}, // 0x38 '8' - {233, 8, 14, 9, 1, -12}, // 0x39 '9' - {247, 2, 8, 5, 1, -7}, // 0x3A ':' - {249, 3, 10, 5, 1, -7}, // 0x3B ';' - {253, 9, 9, 10, 1, -8}, // 0x3C '<' - {264, 9, 5, 10, 1, -6}, // 0x3D '=' - {270, 10, 9, 10, 0, -8}, // 0x3E '>' - {282, 7, 13, 8, 1, -12}, // 0x3F '?' - {294, 12, 13, 16, 2, -12}, // 0x40 '@' - {314, 13, 12, 13, 0, -11}, // 0x41 'A' - {334, 11, 12, 11, 0, -11}, // 0x42 'B' - {351, 11, 12, 12, 1, -11}, // 0x43 'C' - {368, 12, 12, 13, 0, -11}, // 0x44 'D' - {386, 10, 12, 11, 1, -11}, // 0x45 'E' - {401, 9, 12, 10, 1, -11}, // 0x46 'F' - {415, 12, 12, 13, 1, -11}, // 0x47 'G' - {433, 11, 12, 13, 1, -11}, // 0x48 'H' - {450, 4, 12, 6, 1, -11}, // 0x49 'I' - {456, 6, 12, 7, 0, -11}, // 0x4A 'J' - {465, 12, 12, 13, 1, -11}, // 0x4B 'K' - {483, 10, 12, 11, 1, -11}, // 0x4C 'L' - {498, 15, 12, 16, 0, -11}, // 0x4D 'M' - {521, 11, 12, 13, 1, -11}, // 0x4E 'N' - {538, 11, 13, 13, 1, -12}, // 0x4F 'O' - {556, 9, 12, 10, 1, -11}, // 0x50 'P' - {570, 11, 16, 13, 1, -12}, // 0x51 'Q' - {592, 11, 12, 12, 1, -11}, // 0x52 'R' - {609, 9, 12, 10, 0, -11}, // 0x53 'S' - {623, 11, 12, 11, 0, -11}, // 0x54 'T' - {640, 11, 12, 13, 1, -11}, // 0x55 'U' - {657, 12, 12, 13, 0, -11}, // 0x56 'V' - {675, 17, 12, 17, 0, -11}, // 0x57 'W' - {701, 13, 12, 13, 0, -11}, // 0x58 'X' - {721, 12, 12, 13, 0, -11}, // 0x59 'Y' - {739, 11, 12, 11, 0, -11}, // 0x5A 'Z' - {756, 3, 15, 6, 2, -11}, // 0x5B '[' - {762, 5, 12, 5, 0, -11}, // 0x5C '\' - {770, 3, 15, 6, 1, -11}, // 0x5D ']' - {776, 8, 7, 8, 0, -11}, // 0x5E '^' - {783, 9, 1, 9, 0, 2}, // 0x5F '_' - {785, 4, 3, 5, 0, -11}, // 0x60 '`' - {787, 7, 8, 8, 1, -7}, // 0x61 'a' - {794, 9, 13, 9, 0, -12}, // 0x62 'b' - {809, 7, 8, 8, 0, -7}, // 0x63 'c' - {816, 9, 13, 9, 0, -12}, // 0x64 'd' - {831, 8, 8, 8, 0, -7}, // 0x65 'e' - {839, 7, 13, 7, 1, -12}, // 0x66 'f' - {851, 10, 12, 8, 0, -7}, // 0x67 'g' - {866, 9, 13, 9, 0, -12}, // 0x68 'h' - {881, 4, 11, 5, 1, -10}, // 0x69 'i' - {887, 5, 15, 6, 0, -10}, // 0x6A 'j' - {897, 9, 13, 9, 1, -12}, // 0x6B 'k' - {912, 4, 13, 5, 1, -12}, // 0x6C 'l' - {919, 14, 8, 14, 0, -7}, // 0x6D 'm' - {933, 9, 8, 9, 0, -7}, // 0x6E 'n' - {942, 9, 8, 9, 0, -7}, // 0x6F 'o' - {951, 9, 12, 9, 0, -7}, // 0x70 'p' - {965, 9, 12, 9, 0, -7}, // 0x71 'q' - {979, 6, 8, 6, 0, -7}, // 0x72 'r' - {985, 6, 8, 7, 1, -7}, // 0x73 's' - {991, 5, 9, 5, 0, -8}, // 0x74 't' - {997, 9, 8, 9, 0, -7}, // 0x75 'u' - {1006, 8, 8, 8, 0, -7}, // 0x76 'v' - {1014, 12, 8, 12, 0, -7}, // 0x77 'w' - {1026, 9, 8, 9, 0, -7}, // 0x78 'x' - {1035, 8, 12, 8, 0, -7}, // 0x79 'y' - {1047, 7, 8, 7, 1, -7}, // 0x7A 'z' - {1054, 5, 16, 9, 1, -12}, // 0x7B '{' - {1064, 1, 12, 4, 1, -11}, // 0x7C '|' - {1066, 5, 16, 9, 3, -11}, // 0x7D '}' - {1076, 9, 3, 9, 0, -5}}; // 0x7E '~' - -const GFXfont FreeSerif9pt7b PROGMEM = {(uint8_t *)FreeSerif9pt7bBitmaps, - (GFXglyph *)FreeSerif9pt7bGlyphs, 0x20, - 0x7E, 22}; - -// Approx. 1752 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h deleted file mode 100644 index 9dedae0..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h +++ /dev/null @@ -1,273 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold12pt7bBitmaps[] PROGMEM = { - 0x7F, 0xFF, 0x77, 0x66, 0x22, 0x00, 0x6F, 0xF7, 0xE3, 0xF1, 0xF8, 0xFC, - 0x7E, 0x3A, 0x09, 0x04, 0x0C, 0x40, 0xCC, 0x0C, 0xC0, 0x8C, 0x18, 0xC7, - 0xFF, 0x18, 0xC1, 0x88, 0x19, 0x81, 0x98, 0xFF, 0xE3, 0x18, 0x31, 0x83, - 0x18, 0x33, 0x03, 0x30, 0x08, 0x01, 0x00, 0xFC, 0x24, 0xEC, 0x8D, 0x90, - 0xBA, 0x07, 0xC0, 0x7E, 0x07, 0xF0, 0x7F, 0x07, 0xF0, 0x9F, 0x11, 0xE2, - 0x3E, 0x46, 0xE9, 0xC7, 0xC0, 0x20, 0x04, 0x00, 0x1E, 0x0C, 0x0E, 0x7F, - 0x07, 0x10, 0x83, 0xC4, 0x40, 0xE1, 0x30, 0x38, 0x88, 0x0E, 0x26, 0x03, - 0x91, 0x1E, 0x78, 0x8E, 0x40, 0x27, 0x10, 0x11, 0xC4, 0x0C, 0xE1, 0x02, - 0x38, 0x81, 0x0E, 0x20, 0x43, 0x90, 0x20, 0x78, 0x03, 0xE0, 0x01, 0x9E, - 0x00, 0xE3, 0x80, 0x38, 0xE0, 0x0F, 0x30, 0x03, 0xF0, 0x00, 0x78, 0x7C, - 0x1F, 0x06, 0x1B, 0xE1, 0x1C, 0x7C, 0x8F, 0x1F, 0x23, 0xC3, 0xF0, 0xF8, - 0x7C, 0x3E, 0x0F, 0x97, 0xC7, 0xFC, 0xFE, 0x3E, 0xFF, 0xFE, 0x90, 0x00, - 0x31, 0x0C, 0x31, 0x86, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x86, 0x18, 0x60, - 0xC1, 0x02, 0x04, 0x03, 0x06, 0x0C, 0x30, 0x61, 0x87, 0x1C, 0x71, 0xC7, - 0x1C, 0x71, 0x86, 0x38, 0xC2, 0x10, 0x80, 0x1C, 0x6E, 0xFA, 0xEF, 0xF1, - 0xC7, 0xFF, 0xAF, 0xBB, 0x1C, 0x04, 0x00, 0x06, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x6F, 0xF7, 0x11, 0x24, 0xFF, 0xFF, 0xC0, 0x6F, 0xF6, 0x03, 0x07, - 0x06, 0x06, 0x0C, 0x0C, 0x0C, 0x18, 0x18, 0x18, 0x30, 0x30, 0x30, 0x60, - 0x60, 0x60, 0xC0, 0x0E, 0x07, 0x71, 0xC7, 0x38, 0xEF, 0x1D, 0xE3, 0xFC, - 0x7F, 0x8F, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xF7, 0x1C, 0xE3, 0x8E, 0xE0, - 0xF8, 0x06, 0x0F, 0x1F, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0xF9, 0xFF, 0x0F, 0x03, 0xFC, 0x7F, 0xC4, - 0x3E, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x1C, 0x03, 0x80, 0x30, 0x06, 0x00, - 0xC1, 0x18, 0x13, 0xFE, 0x7F, 0xEF, 0xFE, 0x1F, 0x0C, 0xFA, 0x0F, 0x01, - 0xE0, 0x38, 0x0E, 0x03, 0xE0, 0x3E, 0x03, 0xE0, 0x3C, 0x03, 0x80, 0x70, - 0x0D, 0xC1, 0xBC, 0x43, 0xF0, 0x03, 0x80, 0xE0, 0x78, 0x3E, 0x17, 0x89, - 0xE2, 0x79, 0x1E, 0x87, 0xA1, 0xEF, 0xFF, 0xFF, 0xFF, 0xC1, 0xE0, 0x78, - 0x1E, 0x3F, 0xE7, 0xF8, 0xFF, 0x10, 0x04, 0x00, 0xF8, 0x1F, 0xC7, 0xFC, - 0x1F, 0xC0, 0x78, 0x07, 0x00, 0x60, 0x0D, 0xC1, 0x3C, 0x43, 0xF0, 0x00, - 0xE0, 0xF0, 0x38, 0x1E, 0x07, 0x80, 0xF0, 0x3F, 0xE7, 0x9E, 0xF1, 0xFE, - 0x3F, 0xC7, 0xF8, 0xF7, 0x1E, 0xE3, 0x8E, 0x60, 0xF8, 0x7F, 0xEF, 0xFD, - 0xFF, 0xA0, 0x68, 0x0C, 0x03, 0x80, 0x60, 0x0C, 0x03, 0x00, 0x60, 0x0C, - 0x03, 0x00, 0x60, 0x1C, 0x03, 0x00, 0x60, 0x1F, 0x0E, 0x73, 0x87, 0x70, - 0xEF, 0x1D, 0xF3, 0x1F, 0x81, 0xF8, 0x1F, 0xCC, 0xFB, 0x8F, 0xF0, 0xFE, - 0x1F, 0xC3, 0x9C, 0xF1, 0xF8, 0x1F, 0x06, 0x71, 0xC7, 0x78, 0xEF, 0x1F, - 0xE3, 0xFC, 0x7F, 0x8F, 0x79, 0xE7, 0xFC, 0x0F, 0x01, 0xC0, 0x78, 0x1C, - 0x0F, 0x07, 0x00, 0x6F, 0xF6, 0x00, 0x06, 0xFF, 0x60, 0x6F, 0xF6, 0x00, - 0x06, 0xFF, 0x71, 0x22, 0xC0, 0x00, 0x04, 0x00, 0x70, 0x07, 0xC0, 0xFC, - 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1C, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0x00, 0x03, 0x80, 0x0F, - 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x1F, 0x01, 0xF0, - 0x1F, 0x03, 0xF0, 0x3E, 0x00, 0xE0, 0x02, 0x00, 0x00, 0x3E, 0x11, 0xEC, - 0x3F, 0x8F, 0xE3, 0xC0, 0xF0, 0x78, 0x18, 0x08, 0x02, 0x00, 0x00, 0x00, - 0x1C, 0x07, 0x81, 0xE0, 0x30, 0x03, 0xF0, 0x0E, 0x18, 0x18, 0x04, 0x30, - 0x66, 0x70, 0xDB, 0x61, 0x99, 0xE3, 0x19, 0xE3, 0x31, 0xE6, 0x31, 0xE6, - 0x31, 0xE6, 0xF2, 0x66, 0xB2, 0x73, 0x3C, 0x38, 0x00, 0x1E, 0x04, 0x03, - 0xF8, 0x00, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x1B, 0xC0, 0x09, 0xE0, 0x0C, 0xF8, 0x04, 0x3C, 0x02, 0x1F, - 0x03, 0xFF, 0x81, 0x03, 0xC1, 0x80, 0xF0, 0x80, 0x7D, 0xF0, 0xFF, 0xFF, - 0xC0, 0xF3, 0xC3, 0xC7, 0x8F, 0x1E, 0x3C, 0x78, 0xF1, 0xE3, 0xCE, 0x0F, - 0xF0, 0x3C, 0x70, 0xF0, 0xE3, 0xC3, 0xCF, 0x0F, 0x3C, 0x3C, 0xF0, 0xE3, - 0xC7, 0xBF, 0xF8, 0x07, 0xE2, 0x38, 0x7C, 0xE0, 0x3B, 0xC0, 0x37, 0x00, - 0x7E, 0x00, 0x7C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x03, - 0x80, 0x07, 0x80, 0x27, 0x00, 0xC7, 0x86, 0x03, 0xF0, 0xFF, 0xE0, 0x1E, - 0x1E, 0x0F, 0x07, 0x87, 0x81, 0xE3, 0xC0, 0xF1, 0xE0, 0x3C, 0xF0, 0x1E, - 0x78, 0x0F, 0x3C, 0x07, 0x9E, 0x03, 0xCF, 0x01, 0xE7, 0x80, 0xE3, 0xC0, - 0xF1, 0xE0, 0xF0, 0xF0, 0xE1, 0xFF, 0xC0, 0xFF, 0xFC, 0x78, 0x38, 0xF0, - 0x31, 0xE0, 0x23, 0xC4, 0x07, 0x88, 0x0F, 0x30, 0x1F, 0xE0, 0x3C, 0xC0, - 0x78, 0x80, 0xF1, 0x01, 0xE0, 0x23, 0xC0, 0x47, 0x81, 0x8F, 0x07, 0x7F, - 0xFE, 0xFF, 0xFC, 0xF0, 0x73, 0xC0, 0xCF, 0x01, 0x3C, 0x40, 0xF1, 0x03, - 0xCC, 0x0F, 0xF0, 0x3C, 0xC0, 0xF1, 0x03, 0xC4, 0x0F, 0x00, 0x3C, 0x00, - 0xF0, 0x03, 0xC0, 0x3F, 0xC0, 0x07, 0xE2, 0x1C, 0x3E, 0x38, 0x0E, 0x78, - 0x06, 0x70, 0x06, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, - 0x7F, 0xF0, 0x1E, 0x70, 0x1E, 0x78, 0x1E, 0x38, 0x1E, 0x1E, 0x1E, 0x07, - 0xF0, 0xFE, 0xFF, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, - 0x3C, 0x78, 0x3C, 0x7F, 0xFC, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, - 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0xFE, 0xFF, 0xFF, 0x3C, 0x3C, - 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, - 0xFF, 0x0F, 0xF0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0xE3, 0xCE, - 0x38, 0xE3, 0x83, 0xE0, 0xFE, 0x7F, 0x3C, 0x0E, 0x1E, 0x04, 0x0F, 0x04, - 0x07, 0x84, 0x03, 0xCC, 0x01, 0xEE, 0x00, 0xFF, 0x00, 0x7F, 0xC0, 0x3C, - 0xF0, 0x1E, 0x7C, 0x0F, 0x1F, 0x07, 0x87, 0xC3, 0xC1, 0xF1, 0xE0, 0x7D, - 0xFC, 0xFF, 0xFE, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, - 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x01, 0x78, - 0x0D, 0xE0, 0x67, 0x83, 0xBF, 0xFE, 0xFC, 0x01, 0xF3, 0xC0, 0x3E, 0x3E, - 0x03, 0xE2, 0xE0, 0x5E, 0x2F, 0x05, 0xE2, 0xF0, 0x5E, 0x27, 0x09, 0xE2, - 0x78, 0x9E, 0x23, 0x91, 0xE2, 0x3D, 0x1E, 0x23, 0xF1, 0xE2, 0x1E, 0x1E, - 0x21, 0xE1, 0xE2, 0x0C, 0x1E, 0x20, 0xC1, 0xEF, 0x88, 0x3F, 0xF8, 0x1E, - 0xF8, 0x18, 0xF8, 0x11, 0xF8, 0x22, 0xF8, 0x45, 0xF0, 0x89, 0xF1, 0x11, - 0xF2, 0x21, 0xF4, 0x41, 0xF8, 0x81, 0xF1, 0x01, 0xE2, 0x03, 0xC4, 0x03, - 0x8C, 0x03, 0x7C, 0x02, 0x07, 0xF0, 0x0F, 0x1E, 0x0E, 0x03, 0x8F, 0x01, - 0xE7, 0x00, 0x77, 0x80, 0x3F, 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, - 0x03, 0xFC, 0x01, 0xEE, 0x00, 0xE7, 0x80, 0xF1, 0xC0, 0x70, 0x70, 0x70, - 0x0F, 0xE0, 0xFF, 0x87, 0x9E, 0x78, 0xF7, 0x8F, 0x78, 0xF7, 0x8F, 0x78, - 0xF7, 0x9E, 0x7F, 0x87, 0x80, 0x78, 0x07, 0x80, 0x78, 0x07, 0x80, 0x78, - 0x0F, 0xE0, 0x07, 0xF0, 0x0F, 0x1E, 0x0E, 0x07, 0x8F, 0x01, 0xE7, 0x00, - 0xF7, 0x80, 0x3F, 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, - 0x01, 0xEE, 0x00, 0xE7, 0x00, 0xF1, 0xC0, 0x70, 0x70, 0x70, 0x1C, 0xF0, - 0x03, 0xE0, 0x01, 0xF8, 0x00, 0x3E, 0x00, 0x07, 0xE0, 0xFF, 0xE0, 0x3C, - 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x38, 0x3C, - 0x70, 0x3F, 0xC0, 0x3D, 0xE0, 0x3C, 0xF0, 0x3C, 0xF8, 0x3C, 0x78, 0x3C, - 0x3C, 0x3C, 0x3E, 0xFF, 0x1F, 0x1F, 0x27, 0x0E, 0x60, 0x6E, 0x06, 0xF0, - 0x2F, 0x80, 0x7F, 0x07, 0xFC, 0x1F, 0xE0, 0x7E, 0x01, 0xF8, 0x07, 0xC0, - 0x7C, 0x06, 0xF0, 0xC9, 0xF8, 0xFF, 0xFF, 0xC7, 0x9F, 0x0F, 0x1C, 0x1E, - 0x10, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, - 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x07, 0xF8, 0xFE, - 0x1E, 0xF0, 0x09, 0xE0, 0x13, 0xC0, 0x27, 0x80, 0x4F, 0x00, 0x9E, 0x01, - 0x3C, 0x02, 0x78, 0x04, 0xF0, 0x09, 0xE0, 0x13, 0xC0, 0x27, 0x80, 0x47, - 0x81, 0x07, 0x84, 0x07, 0xF0, 0xFF, 0x0F, 0x9E, 0x03, 0x0F, 0x00, 0x83, - 0xC0, 0x81, 0xE0, 0x40, 0xF8, 0x60, 0x3C, 0x20, 0x1E, 0x10, 0x07, 0x90, - 0x03, 0xC8, 0x00, 0xF4, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x01, 0x80, 0x00, 0x80, 0x00, 0xFE, 0x7F, 0x9E, 0xF8, 0x3C, 0x08, - 0xF0, 0x78, 0x31, 0xE0, 0xF0, 0x41, 0xE0, 0xF0, 0x83, 0xC3, 0xE3, 0x07, - 0x85, 0xC4, 0x07, 0x93, 0xC8, 0x0F, 0x27, 0xB0, 0x0E, 0x47, 0x40, 0x1F, - 0x0F, 0x80, 0x3E, 0x1F, 0x00, 0x38, 0x1C, 0x00, 0x70, 0x38, 0x00, 0xE0, - 0x30, 0x00, 0x80, 0x40, 0xFF, 0x9F, 0x9F, 0x07, 0x07, 0x83, 0x03, 0xE3, - 0x00, 0xF9, 0x00, 0x3D, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, - 0xF8, 0x00, 0xBE, 0x00, 0x8F, 0x00, 0x83, 0xC0, 0xC1, 0xF0, 0xE0, 0xFD, - 0xF8, 0xFF, 0xFF, 0x1F, 0x7C, 0x06, 0x3C, 0x04, 0x3E, 0x0C, 0x1E, 0x08, - 0x0F, 0x10, 0x0F, 0x30, 0x07, 0xA0, 0x07, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x0F, 0xF0, 0x7F, 0xFC, - 0xE0, 0xF1, 0x83, 0xE2, 0x07, 0x84, 0x1E, 0x00, 0x7C, 0x00, 0xF0, 0x03, - 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x08, 0xF0, 0x13, 0xC0, 0x6F, 0x81, - 0x9E, 0x07, 0x7F, 0xFE, 0xFF, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCE, - 0x73, 0x9C, 0xE7, 0x39, 0xF0, 0xC0, 0x60, 0x60, 0x60, 0x30, 0x30, 0x30, - 0x18, 0x18, 0x18, 0x0C, 0x0C, 0x0C, 0x06, 0x06, 0x06, 0x03, 0xF9, 0xCE, - 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCF, 0xF0, 0x0C, - 0x07, 0x81, 0xE0, 0xCC, 0x33, 0x18, 0x66, 0x1B, 0x87, 0xC0, 0xC0, 0xFF, - 0xF0, 0xC7, 0x1C, 0x30, 0x1F, 0x0E, 0x71, 0xCF, 0x39, 0xE0, 0x3C, 0x1F, - 0x8E, 0xF3, 0x9E, 0xF3, 0xDE, 0x79, 0xFF, 0x80, 0xF8, 0x07, 0x80, 0x78, - 0x07, 0x80, 0x78, 0x07, 0xB8, 0x7D, 0xE7, 0x8E, 0x78, 0xF7, 0x8F, 0x78, - 0xF7, 0x8F, 0x78, 0xF7, 0x8E, 0x79, 0xC4, 0x78, 0x1F, 0x1D, 0xDC, 0xFE, - 0x7F, 0x07, 0x83, 0xC1, 0xE0, 0x78, 0x3C, 0x47, 0xC0, 0x03, 0xE0, 0x1E, - 0x01, 0xE0, 0x1E, 0x01, 0xE1, 0xDE, 0x7B, 0xE7, 0x1E, 0xF1, 0xEF, 0x1E, - 0xF1, 0xEF, 0x1E, 0xF1, 0xE7, 0x1E, 0x7B, 0xE1, 0xDF, 0x1F, 0x0C, 0x67, - 0x1B, 0xC7, 0xFF, 0xFC, 0x0F, 0x03, 0xC0, 0x78, 0x4E, 0x21, 0xF0, 0x1E, - 0x3B, 0x7B, 0x78, 0x78, 0xFC, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, - 0x78, 0x78, 0xFC, 0x3E, 0x0E, 0x7F, 0xCE, 0x79, 0xEF, 0x3C, 0xE7, 0x0F, - 0xC1, 0x00, 0x60, 0x1C, 0x03, 0xFE, 0x7F, 0xE3, 0xFF, 0x80, 0xF0, 0x33, - 0xFC, 0xF8, 0x07, 0x80, 0x78, 0x07, 0x80, 0x78, 0x07, 0xB8, 0x7D, 0xE7, - 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xEF, - 0xFF, 0x31, 0xE7, 0x8C, 0x03, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, - 0xBF, 0x06, 0x0F, 0x0F, 0x06, 0x00, 0x1F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0xCF, 0xCE, 0x7C, 0xF8, 0x03, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0xF9, 0xE1, 0x8F, 0x10, 0x79, - 0x03, 0xD8, 0x1F, 0xE0, 0xF7, 0x87, 0x9E, 0x3C, 0x71, 0xE3, 0xDF, 0xBF, - 0xF9, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0xBF, - 0xFB, 0xCF, 0x0F, 0xBE, 0x79, 0xE7, 0x8F, 0x3C, 0xF1, 0xE7, 0x9E, 0x3C, - 0xF3, 0xC7, 0x9E, 0x78, 0xF3, 0xCF, 0x1E, 0x79, 0xE3, 0xCF, 0x3C, 0x7B, - 0xFF, 0xDF, 0x80, 0xFB, 0x87, 0xDE, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, - 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0xFF, 0xF0, 0x1F, 0x07, 0x71, 0xC7, - 0x78, 0xFF, 0x1F, 0xE3, 0xFC, 0x7F, 0x8F, 0x71, 0xC7, 0x70, 0x7C, 0x00, - 0xFB, 0x87, 0xDE, 0x78, 0xE7, 0x8F, 0x78, 0xF7, 0x8F, 0x78, 0xF7, 0x8F, - 0x78, 0xE7, 0x9E, 0x7F, 0x87, 0x80, 0x78, 0x07, 0x80, 0x78, 0x0F, 0xC0, - 0x1E, 0x23, 0x9E, 0x71, 0xEF, 0x1E, 0xF1, 0xEF, 0x1E, 0xF1, 0xEF, 0x1E, - 0x71, 0xE7, 0x9E, 0x1F, 0xE0, 0x1E, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x3F, - 0xF9, 0xDF, 0xF7, 0xDD, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, - 0x0F, 0xC0, 0x3D, 0x43, 0xC3, 0xE0, 0xFC, 0x7E, 0x1F, 0x87, 0x83, 0xC2, - 0xBC, 0x08, 0x18, 0x38, 0x78, 0xFC, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, - 0x78, 0x78, 0x79, 0x3E, 0xFB, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, - 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x3F, 0xF0, 0xFC, 0xEF, 0x08, - 0xE1, 0x1E, 0x41, 0xC8, 0x3D, 0x03, 0xC0, 0x78, 0x0E, 0x00, 0xC0, 0x10, - 0x00, 0xFD, 0xF7, 0xBC, 0x71, 0x9E, 0x38, 0x87, 0x1E, 0x43, 0xCF, 0x40, - 0xEB, 0xA0, 0x7C, 0xF0, 0x1C, 0x70, 0x0E, 0x38, 0x06, 0x08, 0x01, 0x04, - 0x00, 0xFC, 0xF7, 0x84, 0x3C, 0x81, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x80, - 0xBC, 0x13, 0xC2, 0x1E, 0xFB, 0xF0, 0xFC, 0xEF, 0x08, 0xE1, 0x1E, 0x43, - 0xC8, 0x3A, 0x07, 0xC0, 0x78, 0x0E, 0x01, 0xC0, 0x18, 0x02, 0x00, 0x41, - 0xC8, 0x3A, 0x03, 0x80, 0xFF, 0xB1, 0xE8, 0x70, 0x3C, 0x1E, 0x07, 0x83, - 0xC1, 0xE0, 0x78, 0xBC, 0x2F, 0xF8, 0x07, 0x0E, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0xE0, 0x18, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1E, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xE0, 0x70, 0x38, 0x38, - 0x38, 0x38, 0x38, 0x38, 0x38, 0x18, 0x07, 0x38, 0x38, 0x38, 0x38, 0x38, - 0x38, 0x38, 0x38, 0x70, 0xE0, 0x70, 0x1F, 0x8B, 0x3F, 0x01, 0xC0}; - -const GFXglyph FreeSerifBold12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 4, 16, 8, 2, -15}, // 0x21 '!' - {8, 9, 7, 13, 2, -15}, // 0x22 '"' - {16, 12, 16, 12, 0, -15}, // 0x23 '#' - {40, 11, 20, 12, 1, -17}, // 0x24 '$' - {68, 18, 16, 24, 3, -15}, // 0x25 '%' - {104, 18, 16, 20, 1, -15}, // 0x26 '&' - {140, 3, 7, 7, 2, -15}, // 0x27 ''' - {143, 6, 21, 8, 1, -16}, // 0x28 '(' - {159, 6, 21, 8, 1, -16}, // 0x29 ')' - {175, 9, 10, 12, 2, -15}, // 0x2A '*' - {187, 12, 12, 16, 2, -11}, // 0x2B '+' - {205, 4, 8, 6, 1, -3}, // 0x2C ',' - {209, 6, 3, 8, 1, -6}, // 0x2D '-' - {212, 4, 4, 6, 1, -3}, // 0x2E '.' - {214, 8, 17, 7, -1, -15}, // 0x2F '/' - {231, 11, 16, 12, 1, -15}, // 0x30 '0' - {253, 9, 16, 12, 1, -15}, // 0x31 '1' - {271, 12, 16, 12, 0, -15}, // 0x32 '2' - {295, 11, 16, 12, 1, -15}, // 0x33 '3' - {317, 10, 16, 12, 1, -15}, // 0x34 '4' - {337, 11, 16, 12, 1, -15}, // 0x35 '5' - {359, 11, 16, 12, 1, -15}, // 0x36 '6' - {381, 11, 16, 12, 0, -15}, // 0x37 '7' - {403, 11, 16, 12, 1, -15}, // 0x38 '8' - {425, 11, 16, 12, 1, -15}, // 0x39 '9' - {447, 4, 11, 8, 2, -10}, // 0x3A ':' - {453, 4, 15, 8, 2, -10}, // 0x3B ';' - {461, 14, 14, 16, 1, -12}, // 0x3C '<' - {486, 14, 8, 16, 1, -9}, // 0x3D '=' - {500, 14, 14, 16, 1, -12}, // 0x3E '>' - {525, 10, 16, 12, 1, -15}, // 0x3F '?' - {545, 16, 16, 22, 3, -15}, // 0x40 '@' - {577, 17, 16, 17, 0, -15}, // 0x41 'A' - {611, 14, 16, 16, 1, -15}, // 0x42 'B' - {639, 15, 16, 17, 1, -15}, // 0x43 'C' - {669, 17, 16, 18, 0, -15}, // 0x44 'D' - {703, 15, 16, 16, 1, -15}, // 0x45 'E' - {733, 14, 16, 15, 1, -15}, // 0x46 'F' - {761, 16, 16, 19, 1, -15}, // 0x47 'G' - {793, 16, 16, 19, 2, -15}, // 0x48 'H' - {825, 8, 16, 9, 1, -15}, // 0x49 'I' - {841, 12, 18, 12, 0, -15}, // 0x4A 'J' - {868, 17, 16, 19, 2, -15}, // 0x4B 'K' - {902, 14, 16, 16, 2, -15}, // 0x4C 'L' - {930, 20, 16, 23, 1, -15}, // 0x4D 'M' - {970, 15, 16, 17, 1, -15}, // 0x4E 'N' - {1000, 17, 16, 19, 1, -15}, // 0x4F 'O' - {1034, 12, 16, 15, 2, -15}, // 0x50 'P' - {1058, 17, 20, 19, 1, -15}, // 0x51 'Q' - {1101, 16, 16, 17, 1, -15}, // 0x52 'R' - {1133, 12, 16, 14, 1, -15}, // 0x53 'S' - {1157, 15, 16, 15, 0, -15}, // 0x54 'T' - {1187, 15, 16, 17, 1, -15}, // 0x55 'U' - {1217, 17, 17, 17, 0, -15}, // 0x56 'V' - {1254, 23, 16, 24, 0, -15}, // 0x57 'W' - {1300, 17, 16, 17, 0, -15}, // 0x58 'X' - {1334, 16, 16, 17, 1, -15}, // 0x59 'Y' - {1366, 15, 16, 16, 0, -15}, // 0x5A 'Z' - {1396, 5, 20, 8, 2, -15}, // 0x5B '[' - {1409, 8, 17, 7, -1, -15}, // 0x5C '\' - {1426, 5, 20, 8, 2, -15}, // 0x5D ']' - {1439, 10, 9, 14, 2, -15}, // 0x5E '^' - {1451, 12, 1, 12, 0, 4}, // 0x5F '_' - {1453, 5, 4, 8, 0, -16}, // 0x60 '`' - {1456, 11, 11, 12, 1, -10}, // 0x61 'a' - {1472, 12, 16, 13, 1, -15}, // 0x62 'b' - {1496, 9, 11, 10, 1, -10}, // 0x63 'c' - {1509, 12, 16, 13, 1, -15}, // 0x64 'd' - {1533, 10, 11, 11, 1, -10}, // 0x65 'e' - {1547, 8, 16, 9, 1, -15}, // 0x66 'f' - {1563, 11, 16, 12, 1, -10}, // 0x67 'g' - {1585, 12, 16, 13, 1, -15}, // 0x68 'h' - {1609, 6, 16, 7, 1, -15}, // 0x69 'i' - {1621, 8, 21, 10, 0, -15}, // 0x6A 'j' - {1642, 13, 16, 13, 1, -15}, // 0x6B 'k' - {1668, 6, 16, 7, 1, -15}, // 0x6C 'l' - {1680, 19, 11, 20, 1, -10}, // 0x6D 'm' - {1707, 12, 11, 13, 1, -10}, // 0x6E 'n' - {1724, 11, 11, 12, 1, -10}, // 0x6F 'o' - {1740, 12, 16, 13, 1, -10}, // 0x70 'p' - {1764, 12, 16, 13, 1, -10}, // 0x71 'q' - {1788, 10, 11, 10, 1, -10}, // 0x72 'r' - {1802, 8, 11, 10, 1, -10}, // 0x73 's' - {1813, 8, 15, 8, 1, -14}, // 0x74 't' - {1828, 12, 11, 14, 1, -10}, // 0x75 'u' - {1845, 11, 11, 12, 0, -10}, // 0x76 'v' - {1861, 17, 11, 17, 0, -10}, // 0x77 'w' - {1885, 12, 11, 12, 0, -10}, // 0x78 'x' - {1902, 11, 16, 12, 0, -10}, // 0x79 'y' - {1924, 10, 11, 11, 1, -10}, // 0x7A 'z' - {1938, 8, 21, 9, 0, -16}, // 0x7B '{' - {1959, 2, 17, 5, 2, -15}, // 0x7C '|' - {1964, 8, 21, 9, 2, -16}, // 0x7D '}' - {1985, 11, 4, 12, 1, -7}}; // 0x7E '~' - -const GFXfont FreeSerifBold12pt7b PROGMEM = { - (uint8_t *)FreeSerifBold12pt7bBitmaps, - (GFXglyph *)FreeSerifBold12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 2663 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h deleted file mode 100644 index faecf4f..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h +++ /dev/null @@ -1,464 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold18pt7bBitmaps[] PROGMEM = { - 0x7B, 0xEF, 0xFF, 0xFF, 0xF7, 0x9E, 0x71, 0xC7, 0x0C, 0x20, 0x82, 0x00, - 0x00, 0x07, 0x3E, 0xFF, 0xFF, 0xDC, 0x60, 0x37, 0x83, 0xFC, 0x1F, 0xE0, - 0xFF, 0x07, 0xB8, 0x3D, 0xC0, 0xCC, 0x06, 0x20, 0x31, 0x01, 0x80, 0x03, - 0x8E, 0x00, 0xC3, 0x80, 0x30, 0xE0, 0x1C, 0x38, 0x07, 0x0E, 0x01, 0xC3, - 0x87, 0xFF, 0xFD, 0xFF, 0xFF, 0x7F, 0xFF, 0xC1, 0x87, 0x00, 0xE1, 0xC0, - 0x38, 0x70, 0x0E, 0x1C, 0x03, 0x86, 0x0F, 0xFF, 0xF3, 0xFF, 0xFC, 0xFF, - 0xFF, 0x07, 0x0E, 0x01, 0xC3, 0x80, 0x70, 0xE0, 0x1C, 0x30, 0x07, 0x0C, - 0x01, 0x87, 0x00, 0x61, 0xC0, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0xFF, - 0x03, 0x27, 0x8C, 0x47, 0x38, 0x86, 0x71, 0x0C, 0xF2, 0x09, 0xF4, 0x03, - 0xF8, 0x03, 0xF8, 0x07, 0xFC, 0x03, 0xFC, 0x03, 0xFE, 0x01, 0xFE, 0x03, - 0xFC, 0x04, 0xFC, 0x08, 0xFA, 0x10, 0xF4, 0x21, 0xEC, 0x43, 0xD8, 0x8F, - 0x3D, 0x3C, 0x3F, 0xF0, 0x1F, 0x00, 0x08, 0x00, 0x10, 0x00, 0x03, 0xC0, - 0x18, 0x01, 0xFE, 0x0F, 0x00, 0x7C, 0xFF, 0xC0, 0x1F, 0x0F, 0x90, 0x07, - 0xC1, 0x06, 0x00, 0xF0, 0x21, 0x80, 0x3E, 0x04, 0x30, 0x07, 0x81, 0x8C, - 0x00, 0xF0, 0x21, 0x80, 0x1E, 0x0C, 0x60, 0x03, 0xC1, 0x18, 0x1E, 0x3C, - 0xE3, 0x0F, 0xE7, 0xF8, 0xC3, 0xE6, 0x3C, 0x18, 0xF8, 0x40, 0x06, 0x3E, - 0x08, 0x01, 0x87, 0x81, 0x00, 0x31, 0xF0, 0x20, 0x0C, 0x3E, 0x04, 0x01, - 0x87, 0x81, 0x00, 0x60, 0xF0, 0x60, 0x18, 0x1E, 0x08, 0x03, 0x03, 0xC7, - 0x00, 0xC0, 0x3F, 0xC0, 0x18, 0x03, 0xE0, 0x00, 0x7E, 0x00, 0x00, 0x7F, - 0xE0, 0x00, 0x38, 0xF8, 0x00, 0x1E, 0x1F, 0x00, 0x07, 0x83, 0xC0, 0x01, - 0xF0, 0xF0, 0x00, 0x7C, 0x38, 0x00, 0x1F, 0x9C, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFE, 0x0F, 0xF0, 0x3F, 0x80, 0xF0, 0x1F, 0xF0, 0x18, 0x1C, 0xFE, - 0x0C, 0x0E, 0x1F, 0xC3, 0x07, 0x87, 0xF1, 0x81, 0xE0, 0xFE, 0x40, 0xF8, - 0x1F, 0xF0, 0x3F, 0x07, 0xF8, 0x0F, 0xC0, 0xFE, 0x03, 0xF8, 0x1F, 0xC0, - 0xFE, 0x07, 0xF8, 0x9F, 0xE3, 0xFF, 0xE7, 0xFF, 0x9F, 0xF0, 0xFF, 0xC3, - 0xF8, 0x0F, 0x80, 0x3C, 0x00, 0x6F, 0xFF, 0xFF, 0x66, 0x66, 0x00, 0x81, - 0x81, 0x81, 0x81, 0x80, 0xC0, 0xE0, 0x70, 0x70, 0x38, 0x3C, 0x1E, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x0E, 0x07, 0x03, 0x80, 0xE0, - 0x70, 0x18, 0x06, 0x01, 0x00, 0x40, 0x10, 0x04, 0x80, 0x30, 0x0C, 0x03, - 0x00, 0xC0, 0x60, 0x38, 0x1C, 0x07, 0x03, 0x81, 0xC0, 0xF0, 0x78, 0x3C, - 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xE0, 0x70, 0x38, 0x38, 0x1C, 0x0C, - 0x0C, 0x06, 0x04, 0x04, 0x04, 0x00, 0x03, 0x00, 0x1E, 0x00, 0x78, 0x1D, - 0xE6, 0xFB, 0x3D, 0xED, 0xF3, 0xFF, 0x01, 0xC0, 0x7F, 0xF3, 0xED, 0xFF, - 0x33, 0xD9, 0xE6, 0x07, 0x80, 0x1E, 0x00, 0x30, 0x00, 0x00, 0xE0, 0x00, - 0x1C, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, - 0x38, 0x00, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, - 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x73, 0xEF, 0xFF, 0xFD, 0xF0, - 0xC2, 0x18, 0xC6, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0x7B, 0xFF, 0xFF, 0xFD, - 0xE0, 0x00, 0xE0, 0x3C, 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, - 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, - 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x00, - 0x03, 0xC0, 0x0E, 0x70, 0x1E, 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x7C, 0x3E, - 0x7C, 0x3E, 0x7C, 0x3E, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3E, 0x7C, 0x3E, - 0x7C, 0x3E, 0x3C, 0x3C, 0x3C, 0x3C, 0x1E, 0x78, 0x0E, 0x70, 0x03, 0xC0, - 0x00, 0xC0, 0x3C, 0x0F, 0xC3, 0xFC, 0x4F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, - 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, - 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x1F, 0xEF, 0xFF, - 0x03, 0xE0, 0x0F, 0xF8, 0x1F, 0xFC, 0x3F, 0xFC, 0x30, 0xFE, 0x60, 0x7E, - 0x40, 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x78, - 0x00, 0x70, 0x00, 0xE0, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, 0x01, - 0x0C, 0x03, 0x1F, 0xFF, 0x1F, 0xFF, 0x3F, 0xFE, 0x7F, 0xFE, 0xFF, 0xFE, - 0x03, 0xF0, 0x0F, 0xF8, 0x3F, 0xFC, 0x21, 0xFE, 0x40, 0xFE, 0x00, 0x7E, - 0x00, 0x7E, 0x00, 0x7C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xFC, 0x03, 0xFE, - 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, - 0x00, 0x0E, 0x70, 0x0E, 0xFC, 0x1C, 0xFE, 0x38, 0x7F, 0xE0, 0x3F, 0x80, - 0x00, 0x38, 0x00, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x1F, 0x80, 0x5F, 0x00, - 0xBE, 0x02, 0x7C, 0x08, 0xF8, 0x31, 0xF0, 0x43, 0xE1, 0x07, 0xC4, 0x0F, - 0x88, 0x1F, 0x20, 0x3E, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, - 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x0F, 0xFE, 0x1F, - 0xF8, 0x7F, 0xF0, 0xFF, 0xE1, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x18, 0x00, - 0x3F, 0x80, 0xFF, 0xC1, 0xFF, 0xC3, 0xFF, 0xC3, 0xFF, 0x80, 0x3F, 0x80, - 0x0F, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x37, 0x80, 0x4F, 0x81, - 0x9F, 0xC6, 0x3F, 0xF8, 0x1F, 0x80, 0x00, 0x07, 0x00, 0x7C, 0x01, 0xF0, - 0x03, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0x7E, 0x00, - 0x7F, 0xF0, 0x7F, 0xFC, 0xFC, 0x7E, 0xFC, 0x7E, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0x7C, 0x3F, 0x7C, 0x3E, 0x3C, 0x3E, - 0x3E, 0x3C, 0x1E, 0x78, 0x07, 0xE0, 0x7F, 0xFF, 0x7F, 0xFE, 0x7F, 0xFE, - 0xFF, 0xFE, 0xFF, 0xFC, 0xC0, 0x1C, 0x80, 0x18, 0x80, 0x38, 0x00, 0x38, - 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, - 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x03, 0x80, 0x03, 0x80, 0x07, 0x80, - 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0F, 0xE0, 0x38, 0x78, 0x70, 0x3C, - 0xF0, 0x1E, 0xF0, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xFE, 0x3C, 0x7F, 0xB0, - 0x7F, 0xE0, 0x3F, 0xF0, 0x0F, 0xF8, 0x1F, 0xFC, 0x39, 0xFE, 0x70, 0xFF, - 0xF0, 0x3F, 0xF0, 0x3F, 0xF0, 0x1F, 0xF0, 0x1F, 0xF0, 0x1E, 0x78, 0x3E, - 0x7C, 0x7C, 0x3F, 0xF8, 0x0F, 0xE0, 0x07, 0xE0, 0x1E, 0x78, 0x3C, 0x7C, - 0x7C, 0x3C, 0x7C, 0x3E, 0xFC, 0x3E, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x3F, 0xFC, 0x3F, 0x7E, 0x3F, 0x7E, 0x3F, 0x3F, 0xFE, 0x0F, 0xFE, - 0x00, 0x7E, 0x00, 0x7C, 0x00, 0xF8, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xC0, - 0x0F, 0x80, 0x3E, 0x00, 0xE0, 0x00, 0x7B, 0xFF, 0xFF, 0xFD, 0xE0, 0x00, - 0x00, 0x07, 0xBF, 0xFF, 0xFF, 0xDE, 0x39, 0xFB, 0xF7, 0xEF, 0xC7, 0x00, - 0x00, 0x00, 0x01, 0xE7, 0xEF, 0xFF, 0xFF, 0xBF, 0x06, 0x08, 0x30, 0xC2, - 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x0F, 0x80, 0x07, 0xF0, - 0x03, 0xFC, 0x01, 0xFE, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x80, 0x1F, - 0xC0, 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x07, 0xF0, 0x00, - 0x3F, 0x80, 0x01, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x7C, 0x00, 0x01, 0x80, - 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x18, 0x00, 0x03, - 0xE0, 0x00, 0x7F, 0x00, 0x07, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, - 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x1F, 0xC0, - 0x0F, 0xE0, 0x07, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x00, 0xFE, 0x00, 0x1F, - 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0xFF, 0xC7, 0x1F, - 0xB8, 0x3E, 0xF0, 0xFF, 0xC3, 0xFF, 0x0F, 0xD8, 0x3F, 0x00, 0xF8, 0x07, - 0xC0, 0x1E, 0x00, 0x60, 0x03, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x00, - 0x00, 0x00, 0x00, 0x70, 0x03, 0xE0, 0x1F, 0x80, 0x7E, 0x01, 0xF8, 0x01, - 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xE0, 0x07, 0xC0, 0xF0, 0x0F, 0x00, - 0x38, 0x1E, 0x00, 0x0C, 0x3C, 0x07, 0x06, 0x38, 0x1F, 0x72, 0x78, 0x3C, - 0xF3, 0x78, 0x78, 0xE1, 0xF0, 0x70, 0xE1, 0xF0, 0xF0, 0xE1, 0xF0, 0xE0, - 0xC1, 0xF1, 0xE1, 0xC1, 0xF1, 0xC1, 0xC1, 0xF1, 0xC3, 0x82, 0xF1, 0xC3, - 0x86, 0x71, 0xC7, 0x8C, 0x79, 0xFB, 0xF8, 0x78, 0xF1, 0xF0, 0x3C, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0xC0, 0x78, 0x03, 0xFF, - 0xE0, 0x00, 0x7F, 0x80, 0x00, 0x10, 0x00, 0x00, 0x38, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0xFE, 0x00, 0x01, 0xBF, 0x00, 0x01, 0xBF, 0x00, 0x01, 0x1F, - 0x00, 0x03, 0x1F, 0x80, 0x02, 0x1F, 0x80, 0x06, 0x0F, 0xC0, 0x06, 0x0F, - 0xC0, 0x04, 0x07, 0xE0, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x18, 0x03, - 0xF0, 0x18, 0x03, 0xF0, 0x30, 0x01, 0xF8, 0x30, 0x01, 0xF8, 0x70, 0x01, - 0xFC, 0xFE, 0x0F, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFE, 0x0F, 0xE1, 0xF8, - 0x3F, 0x07, 0xC1, 0xF8, 0x3F, 0x0F, 0xC1, 0xF8, 0x7E, 0x0F, 0xC3, 0xF0, - 0x7E, 0x1F, 0x87, 0xE0, 0xFC, 0x7C, 0x07, 0xFF, 0x00, 0x3F, 0xFF, 0x01, - 0xF8, 0xFE, 0x0F, 0xC1, 0xF8, 0x7E, 0x0F, 0xC3, 0xF0, 0x3F, 0x1F, 0x81, - 0xF8, 0xFC, 0x0F, 0xC7, 0xE0, 0x7E, 0x3F, 0x03, 0xF1, 0xF8, 0x3F, 0x0F, - 0xC3, 0xF0, 0xFF, 0xFF, 0x1F, 0xFF, 0xC0, 0x00, 0x7E, 0x04, 0x07, 0xFF, - 0x18, 0x1F, 0x07, 0xF0, 0x7C, 0x03, 0xE1, 0xF0, 0x03, 0xC7, 0xC0, 0x03, - 0x9F, 0x80, 0x03, 0x3F, 0x00, 0x06, 0x7C, 0x00, 0x05, 0xF8, 0x00, 0x03, - 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x3F, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF8, - 0x00, 0x01, 0xF0, 0x00, 0x23, 0xF0, 0x00, 0xC3, 0xF0, 0x07, 0x03, 0xF0, - 0x3C, 0x01, 0xFF, 0xE0, 0x00, 0xFF, 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, - 0x00, 0x7E, 0x1F, 0x80, 0xFC, 0x1F, 0x81, 0xF8, 0x1F, 0x83, 0xF0, 0x1F, - 0x07, 0xE0, 0x3F, 0x0F, 0xC0, 0x7E, 0x1F, 0x80, 0x7E, 0x3F, 0x00, 0xFC, - 0x7E, 0x01, 0xF8, 0xFC, 0x03, 0xF1, 0xF8, 0x07, 0xE3, 0xF0, 0x0F, 0xC7, - 0xE0, 0x1F, 0x8F, 0xC0, 0x3F, 0x1F, 0x80, 0x7C, 0x3F, 0x01, 0xF8, 0x7E, - 0x03, 0xE0, 0xFC, 0x0F, 0x81, 0xF8, 0x1F, 0x03, 0xF0, 0xFC, 0x0F, 0xFF, - 0xE0, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0x0F, 0xC0, 0x78, - 0x7E, 0x01, 0xC3, 0xF0, 0x06, 0x1F, 0x80, 0x10, 0xFC, 0x10, 0x87, 0xE0, - 0x80, 0x3F, 0x0C, 0x01, 0xF8, 0xE0, 0x0F, 0xFF, 0x00, 0x7F, 0xF8, 0x03, - 0xF1, 0xC0, 0x1F, 0x86, 0x00, 0xFC, 0x10, 0x07, 0xE0, 0x80, 0x3F, 0x00, - 0x09, 0xF8, 0x00, 0xCF, 0xC0, 0x0C, 0x7E, 0x00, 0x63, 0xF0, 0x0F, 0x1F, - 0x81, 0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFC, 0xFF, 0xFF, 0xEF, 0xFF, 0xFC, - 0xFC, 0x0F, 0x9F, 0x80, 0x73, 0xF0, 0x06, 0x7E, 0x00, 0x4F, 0xC1, 0x09, - 0xF8, 0x20, 0x3F, 0x0C, 0x07, 0xE3, 0x80, 0xFF, 0xF0, 0x1F, 0xFE, 0x03, - 0xF1, 0xC0, 0x7E, 0x18, 0x0F, 0xC1, 0x01, 0xF8, 0x20, 0x3F, 0x00, 0x07, - 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x1F, - 0xE0, 0x07, 0xFF, 0x00, 0x00, 0x7E, 0x02, 0x01, 0xFF, 0xE3, 0x01, 0xF0, - 0x3F, 0x81, 0xF0, 0x07, 0xC1, 0xF0, 0x01, 0xE1, 0xF0, 0x00, 0x71, 0xF8, - 0x00, 0x18, 0xFC, 0x00, 0x0C, 0x7C, 0x00, 0x02, 0x7E, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, - 0xF0, 0x0F, 0xFF, 0xF8, 0x01, 0xFE, 0x7C, 0x00, 0x7E, 0x3F, 0x00, 0x3F, - 0x1F, 0x80, 0x1F, 0x87, 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xE0, 0xFC, 0x03, - 0xF0, 0x1F, 0x83, 0xF0, 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0x80, 0x00, 0xFF, - 0xC3, 0xFF, 0x7F, 0x81, 0xFE, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x7F, 0x81, 0xFE, 0xFF, 0xC3, 0xFF, 0xFF, - 0xEF, 0xF0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, - 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, - 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x1F, 0xE7, 0xFF, 0x07, 0xFF, 0x01, 0xFE, - 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, - 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, - 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, - 0x70, 0xFC, 0xF8, 0xFC, 0xF8, 0xF8, 0xF0, 0xF8, 0x71, 0xF0, 0x7F, 0xE0, - 0x1F, 0x80, 0xFF, 0xC3, 0xFF, 0x3F, 0xC0, 0x3E, 0x0F, 0xC0, 0x1C, 0x07, - 0xE0, 0x18, 0x03, 0xF0, 0x18, 0x01, 0xF8, 0x18, 0x00, 0xFC, 0x18, 0x00, - 0x7E, 0x18, 0x00, 0x3F, 0x18, 0x00, 0x1F, 0x9C, 0x00, 0x0F, 0xDF, 0x00, - 0x07, 0xFF, 0xC0, 0x03, 0xFF, 0xF0, 0x01, 0xF9, 0xF8, 0x00, 0xFC, 0xFE, - 0x00, 0x7E, 0x3F, 0x80, 0x3F, 0x0F, 0xE0, 0x1F, 0x83, 0xF8, 0x0F, 0xC0, - 0xFC, 0x07, 0xE0, 0x7F, 0x03, 0xF0, 0x1F, 0xC1, 0xF8, 0x07, 0xF1, 0xFE, - 0x03, 0xFD, 0xFF, 0x8F, 0xFF, 0xFF, 0xE0, 0x03, 0xFC, 0x00, 0x0F, 0xC0, - 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, - 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x01, 0x3F, - 0x00, 0x19, 0xF8, 0x00, 0xCF, 0xC0, 0x0C, 0x7E, 0x00, 0x63, 0xF0, 0x0F, - 0x1F, 0x81, 0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0x80, 0x03, 0xFE, - 0x7F, 0x00, 0x07, 0xF8, 0x7E, 0x00, 0x0F, 0xE0, 0xFE, 0x00, 0x3F, 0xC1, - 0x7C, 0x00, 0x5F, 0x82, 0xFC, 0x01, 0xBF, 0x05, 0xF8, 0x02, 0x7E, 0x09, - 0xF8, 0x0C, 0xFC, 0x13, 0xF0, 0x11, 0xF8, 0x23, 0xE0, 0x23, 0xF0, 0x47, - 0xE0, 0xC7, 0xE0, 0x87, 0xC1, 0x0F, 0xC1, 0x0F, 0xC6, 0x1F, 0x82, 0x0F, - 0x88, 0x3F, 0x04, 0x1F, 0xB0, 0x7E, 0x08, 0x3F, 0x60, 0xFC, 0x10, 0x3E, - 0x81, 0xF8, 0x20, 0x7F, 0x03, 0xF0, 0x40, 0x7C, 0x07, 0xE0, 0x80, 0xF8, - 0x0F, 0xC1, 0x00, 0xE0, 0x1F, 0x82, 0x01, 0xC0, 0x3F, 0x0E, 0x03, 0x80, - 0xFF, 0x7F, 0x82, 0x03, 0xFF, 0xFE, 0x00, 0xFE, 0xFE, 0x00, 0x70, 0xFE, - 0x00, 0x40, 0xFE, 0x00, 0x81, 0xFC, 0x01, 0x03, 0xFC, 0x02, 0x05, 0xFC, - 0x04, 0x09, 0xFC, 0x08, 0x11, 0xFC, 0x10, 0x23, 0xF8, 0x20, 0x43, 0xF8, - 0x40, 0x83, 0xF8, 0x81, 0x03, 0xF9, 0x02, 0x03, 0xFA, 0x04, 0x03, 0xF4, - 0x08, 0x07, 0xF8, 0x10, 0x07, 0xF0, 0x20, 0x07, 0xE0, 0x40, 0x07, 0xC0, - 0x80, 0x07, 0x81, 0x00, 0x0F, 0x02, 0x00, 0x0E, 0x0E, 0x00, 0x0C, 0x7F, - 0x00, 0x08, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xF0, 0x01, 0xF0, 0x7C, 0x01, - 0xF0, 0x1F, 0x01, 0xF0, 0x07, 0xC1, 0xF0, 0x01, 0xF1, 0xF8, 0x00, 0xFC, - 0xFC, 0x00, 0x7E, 0x7C, 0x00, 0x1F, 0x7E, 0x00, 0x0F, 0xFF, 0x00, 0x07, - 0xFF, 0x80, 0x03, 0xFF, 0xC0, 0x01, 0xFF, 0xE0, 0x00, 0xFF, 0xF0, 0x00, - 0x7F, 0xF8, 0x00, 0x3F, 0x7C, 0x00, 0x1F, 0x3E, 0x00, 0x1F, 0x9F, 0x80, - 0x0F, 0xC7, 0xC0, 0x07, 0xC1, 0xF0, 0x07, 0xC0, 0xFC, 0x07, 0xE0, 0x3F, - 0x07, 0xC0, 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xFC, 0x0F, - 0xFF, 0xE0, 0xFC, 0x7E, 0x1F, 0x87, 0xE3, 0xF0, 0x7E, 0x7E, 0x0F, 0xCF, - 0xC1, 0xF9, 0xF8, 0x3F, 0x3F, 0x07, 0xE7, 0xE0, 0xFC, 0xFC, 0x3F, 0x1F, - 0x8F, 0xC3, 0xFF, 0xF0, 0x7F, 0xF8, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, - 0x00, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, - 0x00, 0x1F, 0xE0, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xF0, - 0x01, 0xF0, 0x7C, 0x01, 0xF0, 0x1F, 0x01, 0xF0, 0x07, 0xC1, 0xF0, 0x01, - 0xF1, 0xF8, 0x00, 0xFC, 0xFC, 0x00, 0x7E, 0x7C, 0x00, 0x1F, 0x7E, 0x00, - 0x0F, 0xFF, 0x00, 0x07, 0xFF, 0x80, 0x03, 0xFF, 0xC0, 0x01, 0xFF, 0xE0, - 0x00, 0xFF, 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0x7C, 0x00, 0x1F, 0x3E, - 0x00, 0x0F, 0x9F, 0x80, 0x0F, 0xC7, 0xC0, 0x07, 0xC1, 0xF0, 0x07, 0xC0, - 0x78, 0x03, 0xC0, 0x1E, 0x07, 0xC0, 0x03, 0xFF, 0x80, 0x00, 0x7F, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, - 0xF8, 0x00, 0x0F, 0xE0, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x00, 0xFC, 0x3F, - 0x01, 0xF8, 0x3F, 0x03, 0xF0, 0x3F, 0x07, 0xE0, 0x7E, 0x0F, 0xC0, 0xFC, - 0x1F, 0x81, 0xF8, 0x3F, 0x03, 0xF0, 0x7E, 0x07, 0xC0, 0xFC, 0x1F, 0x81, - 0xF8, 0x7E, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x0F, 0xDF, 0xC0, 0x1F, - 0x9F, 0x80, 0x3F, 0x1F, 0x80, 0x7E, 0x3F, 0x80, 0xFC, 0x3F, 0x81, 0xF8, - 0x3F, 0x03, 0xF0, 0x7F, 0x07, 0xE0, 0x7F, 0x1F, 0xE0, 0x7F, 0x7F, 0xE0, - 0xFF, 0x07, 0xC2, 0x1F, 0xF2, 0x3C, 0x3E, 0x70, 0x0E, 0xF0, 0x06, 0xF0, - 0x06, 0xF0, 0x02, 0xF8, 0x00, 0xFE, 0x00, 0xFF, 0x80, 0x7F, 0xE0, 0x3F, - 0xF8, 0x1F, 0xFC, 0x0F, 0xFE, 0x03, 0xFE, 0x00, 0xFF, 0x00, 0x3F, 0x80, - 0x1F, 0xC0, 0x0F, 0xC0, 0x0F, 0xE0, 0x0E, 0xF0, 0x1E, 0xF8, 0x3C, 0x9F, - 0xF8, 0x87, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x7E, 0x3F, 0x83, - 0xF0, 0x7C, 0x1F, 0x81, 0xC0, 0xFC, 0x06, 0x07, 0xE0, 0x20, 0x3F, 0x00, - 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, - 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, - 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, - 0x00, 0x0F, 0xF0, 0x01, 0xFF, 0xE0, 0xFF, 0xC1, 0xFD, 0xFE, 0x01, 0xC3, - 0xF0, 0x02, 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, - 0x02, 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, 0x02, - 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, 0x02, 0x0F, - 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, 0x02, 0x0F, 0xC0, - 0x18, 0x1F, 0x80, 0x40, 0x7E, 0x03, 0x00, 0xFC, 0x18, 0x01, 0xFF, 0xC0, - 0x00, 0xFC, 0x00, 0xFF, 0xF0, 0x7F, 0x3F, 0xC0, 0x1E, 0x1F, 0x80, 0x0C, - 0x1F, 0x80, 0x08, 0x0F, 0xC0, 0x18, 0x0F, 0xC0, 0x18, 0x07, 0xE0, 0x10, - 0x07, 0xE0, 0x30, 0x07, 0xE0, 0x20, 0x03, 0xF0, 0x60, 0x03, 0xF0, 0x60, - 0x01, 0xF8, 0x40, 0x01, 0xF8, 0xC0, 0x00, 0xF8, 0x80, 0x00, 0xFC, 0x80, - 0x00, 0xFD, 0x80, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x1C, 0x00, - 0x00, 0x0C, 0x00, 0xFF, 0xE7, 0xFF, 0x0F, 0xCF, 0xE0, 0x7F, 0x00, 0xE1, - 0xF8, 0x0F, 0xC0, 0x30, 0x7E, 0x03, 0xF0, 0x0C, 0x1F, 0x80, 0x7C, 0x02, - 0x03, 0xE0, 0x1F, 0x81, 0x80, 0xFC, 0x07, 0xE0, 0x60, 0x3F, 0x03, 0xF8, - 0x10, 0x07, 0xC0, 0xBF, 0x0C, 0x01, 0xF8, 0x2F, 0xC3, 0x00, 0x7E, 0x19, - 0xF0, 0x80, 0x0F, 0x84, 0x7C, 0x60, 0x03, 0xF3, 0x0F, 0x98, 0x00, 0xFC, - 0xC3, 0xE4, 0x00, 0x1F, 0x20, 0xFB, 0x00, 0x07, 0xF8, 0x1F, 0xC0, 0x00, - 0xFC, 0x07, 0xE0, 0x00, 0x3F, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x3E, 0x00, - 0x01, 0xE0, 0x0F, 0x00, 0x00, 0x78, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x70, - 0x00, 0x03, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x06, 0x00, 0x00, 0x20, 0x00, - 0x80, 0x00, 0xFF, 0xF3, 0xFE, 0x7F, 0x80, 0x78, 0x3F, 0x80, 0x70, 0x1F, - 0xC0, 0x60, 0x0F, 0xC0, 0xC0, 0x0F, 0xE1, 0x80, 0x07, 0xF1, 0x00, 0x03, - 0xF3, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x9F, 0x80, 0x01, 0x8F, 0xC0, 0x03, 0x0F, 0xE0, 0x06, 0x07, 0xE0, 0x06, - 0x07, 0xF0, 0x0C, 0x03, 0xF8, 0x1C, 0x03, 0xF8, 0x3C, 0x03, 0xFC, 0xFF, - 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0x7F, 0x80, 0x1E, 0x3F, 0x80, 0x1C, 0x1F, - 0x80, 0x18, 0x1F, 0xC0, 0x10, 0x0F, 0xC0, 0x30, 0x07, 0xE0, 0x20, 0x07, - 0xE0, 0x60, 0x03, 0xF0, 0xC0, 0x03, 0xF0, 0x80, 0x01, 0xF9, 0x80, 0x01, - 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFF, 0x00, 0x01, - 0xFF, 0x80, 0x7F, 0xFF, 0xF3, 0xFF, 0xFF, 0x9F, 0x01, 0xF8, 0xE0, 0x1F, - 0x86, 0x01, 0xFC, 0x20, 0x0F, 0xC1, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, - 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x80, - 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x01, 0x0F, 0xC0, 0x18, 0xFC, - 0x00, 0xC7, 0xE0, 0x06, 0x7E, 0x00, 0x77, 0xF0, 0x07, 0x3F, 0x00, 0xFB, - 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0xFF, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xE0, 0x1E, - 0x01, 0xC0, 0x38, 0x07, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x1C, 0x03, 0x80, - 0x70, 0x07, 0x00, 0xE0, 0x1C, 0x01, 0xC0, 0x38, 0x07, 0x00, 0x70, 0x0E, - 0x01, 0xC0, 0x1C, 0x03, 0x80, 0x70, 0x0F, 0x00, 0xE0, 0xFF, 0xFF, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0xFF, 0xFF, 0x03, 0x80, 0x0F, 0x00, 0x1F, 0x00, 0x7E, 0x00, 0xEE, 0x03, - 0x9C, 0x07, 0x1C, 0x1C, 0x38, 0x38, 0x38, 0xE0, 0x71, 0xC0, 0x77, 0x00, - 0xEE, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xE0, 0xF0, - 0x78, 0x3C, 0x0E, 0x07, 0x0F, 0xE0, 0x3F, 0xF0, 0x78, 0xF8, 0x78, 0x7C, - 0x78, 0x7C, 0x38, 0x7C, 0x00, 0x7C, 0x03, 0xFC, 0x1E, 0x7C, 0x7C, 0x7C, - 0xFC, 0x7C, 0xFC, 0x7C, 0xFC, 0xFC, 0xFF, 0xFD, 0x7F, 0x7F, 0x3C, 0x3C, - 0xFC, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0xF8, 0x1F, 0x7F, 0x87, 0xE3, - 0xF1, 0xF0, 0x7E, 0x7C, 0x0F, 0x9F, 0x03, 0xF7, 0xC0, 0xFD, 0xF0, 0x3F, - 0x7C, 0x0F, 0xDF, 0x03, 0xF7, 0xC0, 0xFD, 0xF0, 0x3E, 0x7C, 0x1F, 0x1F, - 0x8F, 0xC6, 0x7F, 0xC1, 0x07, 0xC0, 0x07, 0xC0, 0x7F, 0xC3, 0xC7, 0x9F, - 0x1E, 0x78, 0x7B, 0xE1, 0xCF, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, - 0x80, 0x3F, 0x00, 0x7C, 0x00, 0xFC, 0x61, 0xFF, 0x03, 0xF0, 0x00, 0x7F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, - 0x01, 0xF0, 0x00, 0x7C, 0x07, 0x9F, 0x07, 0xF7, 0xC3, 0xE3, 0xF1, 0xF8, - 0x7C, 0x7C, 0x1F, 0x3F, 0x07, 0xCF, 0xC1, 0xF3, 0xF0, 0x7C, 0xFC, 0x1F, - 0x3F, 0x07, 0xCF, 0xC1, 0xF1, 0xF0, 0x7C, 0x7E, 0x1F, 0x0F, 0x8F, 0xC1, - 0xFD, 0xFC, 0x3E, 0x70, 0x0F, 0xC0, 0x7F, 0xC3, 0xC7, 0x1E, 0x1E, 0xF8, - 0x7B, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0xC0, 0x1F, - 0x03, 0x7E, 0x18, 0xFF, 0xC1, 0xFE, 0x03, 0xF0, 0x0F, 0x83, 0xF8, 0xF3, - 0xBE, 0xF7, 0xDC, 0xF8, 0x1F, 0x03, 0xE0, 0xFF, 0x1F, 0xE1, 0xF0, 0x3E, - 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, - 0xC0, 0xF8, 0x1F, 0x07, 0xF8, 0x0F, 0xC0, 0x1F, 0xFF, 0xDF, 0x1F, 0xFF, - 0x07, 0x8F, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, 0x7C, 0x78, 0x3C, - 0x1E, 0x3E, 0x03, 0xFC, 0x03, 0x00, 0x07, 0x00, 0x07, 0x80, 0x03, 0xFF, - 0xF1, 0xFF, 0xFE, 0x7F, 0xFF, 0x8F, 0xFF, 0xF8, 0x01, 0xFC, 0x00, 0x7F, - 0x00, 0x73, 0xFF, 0xF0, 0x7F, 0xC0, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, - 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, - 0x7C, 0x3E, 0xFF, 0x1F, 0xCF, 0xCF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, - 0xF0, 0x7C, 0xF8, 0x3E, 0x7C, 0x1F, 0x3E, 0x0F, 0x9F, 0x07, 0xCF, 0x83, - 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, 0x7D, 0xFC, 0x7F, 0x39, 0xFB, 0xF7, - 0xE7, 0x80, 0x00, 0x00, 0xFC, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, - 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x7F, 0x03, 0xC0, 0xFC, 0x1F, 0x83, 0xF0, - 0x3C, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, - 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, - 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7D, 0xCF, 0xF9, 0xEE, 0x7C, 0xFF, 0x0F, - 0x80, 0xFC, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x7F, 0x9F, 0x07, 0x87, - 0xC1, 0x81, 0xF0, 0xC0, 0x7C, 0x60, 0x1F, 0x30, 0x07, 0xDE, 0x01, 0xFF, - 0xC0, 0x7F, 0xF0, 0x1F, 0x3E, 0x07, 0xCF, 0xC1, 0xF1, 0xF8, 0x7C, 0x3E, - 0x1F, 0x07, 0xC7, 0xC1, 0xFB, 0xF9, 0xFF, 0xFC, 0xF9, 0xF3, 0xE7, 0xCF, - 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, - 0xE7, 0xCF, 0x9F, 0x7F, 0xFC, 0x7C, 0x1F, 0x0F, 0xBF, 0xCF, 0xF1, 0xF8, - 0xFF, 0x3F, 0x3E, 0x0F, 0x83, 0xE7, 0xC1, 0xF0, 0x7C, 0xF8, 0x3E, 0x0F, - 0x9F, 0x07, 0xC1, 0xF3, 0xE0, 0xF8, 0x3E, 0x7C, 0x1F, 0x07, 0xCF, 0x83, - 0xE0, 0xF9, 0xF0, 0x7C, 0x1F, 0x3E, 0x0F, 0x83, 0xE7, 0xC1, 0xF0, 0x7C, - 0xF8, 0x3E, 0x0F, 0x9F, 0x07, 0xC1, 0xF7, 0xF1, 0xFC, 0x7F, 0xFC, 0x7C, - 0x3E, 0xFF, 0x1F, 0xCF, 0xCF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, - 0x7C, 0xF8, 0x3E, 0x7C, 0x1F, 0x3E, 0x0F, 0x9F, 0x07, 0xCF, 0x83, 0xE7, - 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, 0x7D, 0xFC, 0x7F, 0x07, 0xF0, 0x0F, 0xFE, - 0x0F, 0x8F, 0x8F, 0x87, 0xE7, 0xC1, 0xF7, 0xE0, 0xFF, 0xF0, 0x7F, 0xF8, - 0x3F, 0xFC, 0x1F, 0xFE, 0x0F, 0xFF, 0x07, 0xEF, 0x83, 0xE7, 0xC1, 0xF1, - 0xF1, 0xF0, 0x7F, 0xF0, 0x0F, 0xE0, 0xFE, 0x7C, 0x07, 0xDF, 0xE0, 0xFE, - 0x3E, 0x1F, 0x07, 0xE3, 0xE0, 0x7C, 0x7C, 0x0F, 0xCF, 0x81, 0xF9, 0xF0, - 0x3F, 0x3E, 0x07, 0xE7, 0xC0, 0xFC, 0xF8, 0x1F, 0x9F, 0x03, 0xE3, 0xE0, - 0xFC, 0x7E, 0x3F, 0x0F, 0xBF, 0xC1, 0xF3, 0xE0, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7E, 0x00, 0x1F, 0xE0, - 0x00, 0x07, 0xC1, 0x0F, 0xF9, 0x8F, 0xCD, 0xCF, 0xC3, 0xE7, 0xC1, 0xF7, - 0xE0, 0xFB, 0xF0, 0x7D, 0xF8, 0x3E, 0xFC, 0x1F, 0x7E, 0x0F, 0xBF, 0x07, - 0xDF, 0x83, 0xE7, 0xE1, 0xF1, 0xF1, 0xF8, 0x7F, 0x7C, 0x1F, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x01, 0xF8, - 0x01, 0xFE, 0xFC, 0x73, 0xEF, 0xDF, 0xFE, 0xFC, 0xF7, 0xC3, 0xBE, 0x01, - 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, - 0x01, 0xF0, 0x1F, 0xE0, 0x1E, 0x23, 0xFE, 0x70, 0xEE, 0x06, 0xE0, 0x2F, - 0x80, 0xFF, 0x07, 0xFC, 0x3F, 0xE0, 0xFF, 0x81, 0xF8, 0x07, 0xC0, 0x7E, - 0x0E, 0xBF, 0xC8, 0xF8, 0x04, 0x03, 0x01, 0xC0, 0xF0, 0x7C, 0x3F, 0xEF, - 0xF9, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, - 0x7C, 0x5F, 0x37, 0xF8, 0xFE, 0x1E, 0x00, 0xFC, 0x7F, 0x1F, 0x07, 0xC7, - 0xC1, 0xF1, 0xF0, 0x7C, 0x7C, 0x1F, 0x1F, 0x07, 0xC7, 0xC1, 0xF1, 0xF0, - 0x7C, 0x7C, 0x1F, 0x1F, 0x07, 0xC7, 0xC1, 0xF1, 0xF0, 0x7C, 0x7C, 0x1F, - 0x1F, 0x8F, 0xC3, 0xFD, 0xFC, 0x7C, 0x60, 0xFF, 0x9F, 0xBF, 0x83, 0x0F, - 0x81, 0x87, 0xE0, 0x81, 0xF0, 0x40, 0xF8, 0x40, 0x3E, 0x20, 0x1F, 0x30, - 0x07, 0xD0, 0x03, 0xF8, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3C, 0x00, 0x0E, - 0x00, 0x07, 0x00, 0x01, 0x00, 0xFF, 0x3F, 0xCF, 0x7E, 0x1F, 0x06, 0x3E, - 0x0F, 0x06, 0x3E, 0x0F, 0x84, 0x1F, 0x0F, 0x8C, 0x1F, 0x1F, 0x88, 0x0F, - 0x17, 0xC8, 0x0F, 0x97, 0xD8, 0x0F, 0xB3, 0xD0, 0x07, 0xE3, 0xF0, 0x07, - 0xE3, 0xE0, 0x03, 0xC1, 0xE0, 0x03, 0xC1, 0xE0, 0x03, 0x81, 0xC0, 0x01, - 0x80, 0xC0, 0x01, 0x80, 0x80, 0xFF, 0x3F, 0x7E, 0x0C, 0x3E, 0x08, 0x3F, - 0x18, 0x1F, 0x30, 0x0F, 0xE0, 0x0F, 0xC0, 0x07, 0xE0, 0x03, 0xE0, 0x03, - 0xF0, 0x05, 0xF8, 0x0C, 0xF8, 0x18, 0xFC, 0x30, 0x7E, 0x70, 0x7E, 0xFC, - 0xFF, 0xFF, 0x3F, 0x7E, 0x0C, 0x7C, 0x0C, 0x3E, 0x08, 0x3E, 0x08, 0x1E, - 0x18, 0x1F, 0x10, 0x0F, 0x30, 0x0F, 0xA0, 0x0F, 0xA0, 0x07, 0xE0, 0x07, - 0xC0, 0x03, 0xC0, 0x03, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x00, 0x01, - 0x00, 0x61, 0x00, 0xF2, 0x00, 0xF6, 0x00, 0xFC, 0x00, 0x78, 0x00, 0x7F, - 0xFD, 0xFF, 0xF7, 0x0F, 0xD0, 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x3E, 0x01, - 0xF0, 0x0F, 0xC0, 0x3E, 0x01, 0xF8, 0x0F, 0xC1, 0x3E, 0x05, 0xF8, 0x7F, - 0xFF, 0xFF, 0xFF, 0x01, 0xE0, 0xF8, 0x3E, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x07, 0x87, - 0x80, 0x1E, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, - 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF8, 0x0F, 0x80, 0x78, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xF0, 0x0F, 0x80, 0xF0, - 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, - 0x01, 0xE0, 0x3C, 0x03, 0xC0, 0x0F, 0x0F, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, 0xE0, - 0xF8, 0x3C, 0x00, 0x3E, 0x00, 0x7F, 0xC6, 0xFF, 0xFF, 0x61, 0xFE, 0x00, - 0x7C}; - -const GFXglyph FreeSerifBold18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 6, 24, 12, 3, -23}, // 0x21 '!' - {18, 13, 10, 19, 3, -23}, // 0x22 '"' - {35, 18, 24, 17, 0, -23}, // 0x23 '#' - {89, 15, 28, 17, 1, -25}, // 0x24 '$' - {142, 27, 24, 35, 4, -23}, // 0x25 '%' - {223, 26, 25, 29, 2, -23}, // 0x26 '&' - {305, 4, 10, 10, 3, -23}, // 0x27 ''' - {310, 9, 30, 12, 2, -23}, // 0x28 '(' - {344, 9, 30, 12, 1, -23}, // 0x29 ')' - {378, 14, 15, 18, 2, -23}, // 0x2A '*' - {405, 19, 19, 24, 2, -17}, // 0x2B '+' - {451, 6, 12, 9, 1, -5}, // 0x2C ',' - {460, 8, 4, 12, 2, -9}, // 0x2D '-' - {464, 6, 6, 9, 1, -5}, // 0x2E '.' - {469, 11, 25, 10, -1, -23}, // 0x2F '/' - {504, 16, 24, 18, 1, -23}, // 0x30 '0' - {552, 12, 24, 18, 3, -23}, // 0x31 '1' - {588, 16, 24, 17, 1, -23}, // 0x32 '2' - {636, 16, 24, 18, 0, -23}, // 0x33 '3' - {684, 15, 24, 18, 1, -23}, // 0x34 '4' - {729, 15, 24, 18, 1, -23}, // 0x35 '5' - {774, 16, 24, 18, 1, -23}, // 0x36 '6' - {822, 16, 24, 17, 1, -23}, // 0x37 '7' - {870, 16, 24, 17, 1, -23}, // 0x38 '8' - {918, 16, 24, 18, 1, -23}, // 0x39 '9' - {966, 6, 16, 12, 3, -15}, // 0x3A ':' - {978, 7, 22, 12, 2, -15}, // 0x3B ';' - {998, 19, 20, 24, 2, -18}, // 0x3C '<' - {1046, 19, 12, 24, 2, -14}, // 0x3D '=' - {1075, 19, 20, 24, 3, -18}, // 0x3E '>' - {1123, 14, 24, 18, 2, -23}, // 0x3F '?' - {1165, 24, 25, 33, 4, -23}, // 0x40 '@' - {1240, 24, 24, 25, 1, -23}, // 0x41 'A' - {1312, 21, 24, 23, 1, -23}, // 0x42 'B' - {1375, 23, 25, 25, 1, -23}, // 0x43 'C' - {1447, 23, 24, 26, 1, -23}, // 0x44 'D' - {1516, 21, 24, 23, 2, -23}, // 0x45 'E' - {1579, 19, 24, 22, 2, -23}, // 0x46 'F' - {1636, 25, 25, 27, 1, -23}, // 0x47 'G' - {1715, 24, 24, 27, 2, -23}, // 0x48 'H' - {1787, 11, 24, 14, 2, -23}, // 0x49 'I' - {1820, 16, 27, 18, 0, -23}, // 0x4A 'J' - {1874, 25, 24, 27, 2, -23}, // 0x4B 'K' - {1949, 21, 24, 23, 2, -23}, // 0x4C 'L' - {2012, 31, 24, 33, 1, -23}, // 0x4D 'M' - {2105, 23, 24, 25, 1, -23}, // 0x4E 'N' - {2174, 25, 25, 27, 1, -23}, // 0x4F 'O' - {2253, 19, 24, 22, 2, -23}, // 0x50 'P' - {2310, 25, 30, 27, 1, -23}, // 0x51 'Q' - {2404, 23, 24, 25, 2, -23}, // 0x52 'R' - {2473, 16, 25, 20, 2, -23}, // 0x53 'S' - {2523, 21, 24, 23, 1, -23}, // 0x54 'T' - {2586, 22, 25, 25, 2, -23}, // 0x55 'U' - {2655, 24, 24, 25, 0, -23}, // 0x56 'V' - {2727, 34, 25, 34, 0, -23}, // 0x57 'W' - {2834, 24, 24, 25, 1, -23}, // 0x58 'X' - {2906, 24, 24, 25, 1, -23}, // 0x59 'Y' - {2978, 21, 24, 23, 1, -23}, // 0x5A 'Z' - {3041, 8, 29, 12, 2, -23}, // 0x5B '[' - {3070, 11, 25, 10, -1, -23}, // 0x5C '\' - {3105, 8, 29, 12, 2, -23}, // 0x5D ']' - {3134, 15, 13, 20, 3, -23}, // 0x5E '^' - {3159, 18, 3, 17, 0, 3}, // 0x5F '_' - {3166, 8, 6, 12, 0, -23}, // 0x60 '`' - {3172, 16, 16, 18, 1, -15}, // 0x61 'a' - {3204, 18, 24, 19, 1, -23}, // 0x62 'b' - {3258, 14, 16, 15, 1, -15}, // 0x63 'c' - {3286, 18, 24, 19, 1, -23}, // 0x64 'd' - {3340, 14, 16, 16, 1, -15}, // 0x65 'e' - {3368, 11, 24, 14, 2, -23}, // 0x66 'f' - {3401, 17, 23, 17, 1, -15}, // 0x67 'g' - {3450, 17, 24, 19, 1, -23}, // 0x68 'h' - {3501, 7, 24, 10, 2, -23}, // 0x69 'i' - {3522, 11, 31, 14, 0, -23}, // 0x6A 'j' - {3565, 18, 24, 19, 1, -23}, // 0x6B 'k' - {3619, 7, 24, 10, 1, -23}, // 0x6C 'l' - {3640, 27, 16, 29, 1, -15}, // 0x6D 'm' - {3694, 17, 16, 19, 1, -15}, // 0x6E 'n' - {3728, 17, 16, 18, 1, -15}, // 0x6F 'o' - {3762, 19, 23, 19, 0, -15}, // 0x70 'p' - {3817, 17, 23, 19, 1, -15}, // 0x71 'q' - {3866, 13, 16, 15, 1, -15}, // 0x72 'r' - {3892, 12, 16, 14, 1, -15}, // 0x73 's' - {3916, 10, 21, 12, 1, -20}, // 0x74 't' - {3943, 18, 16, 20, 1, -15}, // 0x75 'u' - {3979, 17, 16, 17, 0, -15}, // 0x76 'v' - {4013, 24, 16, 25, 0, -15}, // 0x77 'w' - {4061, 16, 16, 18, 1, -15}, // 0x78 'x' - {4093, 16, 23, 17, 0, -15}, // 0x79 'y' - {4139, 14, 16, 16, 0, -15}, // 0x7A 'z' - {4167, 11, 31, 14, 1, -24}, // 0x7B '{' - {4210, 3, 25, 8, 2, -23}, // 0x7C '|' - {4220, 11, 31, 14, 3, -24}, // 0x7D '}' - {4263, 16, 5, 18, 1, -11}}; // 0x7E '~' - -const GFXfont FreeSerifBold18pt7b PROGMEM = { - (uint8_t *)FreeSerifBold18pt7bBitmaps, - (GFXglyph *)FreeSerifBold18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 4945 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h deleted file mode 100644 index e6681f5..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h +++ /dev/null @@ -1,761 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold24pt7bBitmaps[] PROGMEM = { - 0x3C, 0x7E, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x7E, 0x7C, 0x7C, - 0x3C, 0x3C, 0x38, 0x38, 0x38, 0x38, 0x18, 0x10, 0x10, 0x10, 0x00, 0x00, - 0x00, 0x00, 0x3C, 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x3C, 0x70, 0x07, - 0x7C, 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xC0, - 0x3E, 0xE0, 0x0E, 0x70, 0x07, 0x38, 0x03, 0x9C, 0x01, 0xC4, 0x00, 0xE2, - 0x00, 0x20, 0x00, 0xF0, 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x0F, - 0x07, 0x80, 0x1E, 0x0F, 0x00, 0x3C, 0x1E, 0x00, 0x78, 0x3C, 0x00, 0xF0, - 0x78, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, - 0xF3, 0xFF, 0xFF, 0xE0, 0x78, 0x3C, 0x00, 0xF0, 0x78, 0x01, 0xC0, 0xE0, - 0x03, 0x81, 0xC0, 0x0F, 0x07, 0x80, 0x1E, 0x0F, 0x00, 0x3C, 0x1E, 0x0F, - 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0x03, 0x81, 0xC0, 0x0F, - 0x07, 0x80, 0x1E, 0x0F, 0x00, 0x3C, 0x1E, 0x00, 0x78, 0x3C, 0x00, 0xF0, - 0x78, 0x01, 0xE0, 0xE0, 0x03, 0x81, 0xC0, 0x07, 0x07, 0x80, 0x1E, 0x0F, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, - 0x7F, 0xF0, 0x0F, 0x37, 0xE0, 0xE1, 0x8F, 0x8E, 0x0C, 0x3C, 0x70, 0x60, - 0xE7, 0x83, 0x03, 0x3C, 0x18, 0x19, 0xF0, 0xC0, 0x4F, 0xC6, 0x02, 0x7F, - 0xF0, 0x03, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x3F, 0xFC, 0x00, 0xFF, 0xF0, - 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x1F, 0xFE, 0x00, 0x3F, 0xF8, 0x01, - 0xFF, 0xC0, 0x0C, 0xFF, 0x00, 0x63, 0xFA, 0x03, 0x0F, 0xD0, 0x18, 0x3E, - 0x80, 0xC1, 0xF6, 0x06, 0x0F, 0xB8, 0x30, 0x79, 0xC1, 0x87, 0xCF, 0x0C, - 0x3C, 0x7E, 0x67, 0xC0, 0xFF, 0xF8, 0x00, 0xFE, 0x00, 0x00, 0xC0, 0x00, - 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x30, - 0x00, 0x3E, 0x00, 0x0C, 0x00, 0x0F, 0xF0, 0x03, 0x80, 0x07, 0xE7, 0x03, - 0xE0, 0x01, 0xF8, 0x7F, 0xFC, 0x00, 0x3E, 0x07, 0xF7, 0x00, 0x0F, 0xC0, - 0x80, 0xE0, 0x03, 0xF0, 0x10, 0x38, 0x00, 0x7E, 0x02, 0x07, 0x00, 0x0F, - 0x80, 0x41, 0xC0, 0x03, 0xF0, 0x10, 0x30, 0x00, 0x7E, 0x02, 0x0E, 0x00, - 0x0F, 0x80, 0xC1, 0x80, 0x01, 0xF0, 0x10, 0x70, 0x00, 0x3E, 0x06, 0x1C, - 0x00, 0x07, 0xC1, 0x83, 0x80, 0x00, 0x7C, 0x60, 0xE0, 0x1F, 0x07, 0xF8, - 0x18, 0x0F, 0xF8, 0x7C, 0x07, 0x07, 0xF1, 0x00, 0x00, 0xC1, 0xF8, 0x10, - 0x00, 0x38, 0x3F, 0x02, 0x00, 0x06, 0x0F, 0xC0, 0x40, 0x01, 0xC3, 0xF0, - 0x08, 0x00, 0x30, 0x7E, 0x01, 0x00, 0x0E, 0x1F, 0x80, 0x40, 0x03, 0x83, - 0xF0, 0x08, 0x00, 0x60, 0x7E, 0x01, 0x00, 0x1C, 0x0F, 0x80, 0x40, 0x03, - 0x01, 0xF0, 0x18, 0x00, 0xE0, 0x3E, 0x02, 0x00, 0x18, 0x03, 0xC0, 0xC0, - 0x07, 0x00, 0x7C, 0x70, 0x00, 0xC0, 0x07, 0xFC, 0x00, 0x38, 0x00, 0x7E, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x07, 0x8F, - 0xE0, 0x00, 0x03, 0xC1, 0xF8, 0x00, 0x00, 0xF0, 0x3F, 0x00, 0x00, 0x7C, - 0x07, 0xC0, 0x00, 0x1F, 0x01, 0xF0, 0x00, 0x07, 0xE0, 0x7C, 0x00, 0x01, - 0xF8, 0x1E, 0x00, 0x00, 0x7F, 0x07, 0x80, 0x00, 0x1F, 0xE3, 0x80, 0x00, - 0x03, 0xFF, 0xC0, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x00, 0x1F, 0xE0, 0x3F, - 0xF0, 0x07, 0xFC, 0x01, 0xF0, 0x07, 0xFF, 0x00, 0x78, 0x07, 0xBF, 0xE0, - 0x1C, 0x03, 0x87, 0xFC, 0x07, 0x01, 0xE0, 0xFF, 0x81, 0x80, 0xF0, 0x3F, - 0xE0, 0xC0, 0x7C, 0x07, 0xFC, 0x30, 0x1F, 0x00, 0xFF, 0x98, 0x0F, 0xC0, - 0x3F, 0xFC, 0x03, 0xF0, 0x07, 0xFF, 0x00, 0xFE, 0x00, 0xFF, 0x80, 0x3F, - 0x80, 0x3F, 0xF0, 0x0F, 0xF0, 0x07, 0xFE, 0x03, 0xFC, 0x00, 0xFF, 0x81, - 0x7F, 0x80, 0x3F, 0xF8, 0xDF, 0xF0, 0x1F, 0xFF, 0xE3, 0xFF, 0x0E, 0xFF, - 0xF8, 0xFF, 0xFE, 0x1F, 0xFC, 0x0F, 0xFE, 0x03, 0xFE, 0x00, 0xFE, 0x00, - 0x3E, 0x00, 0x77, 0xFF, 0xFF, 0xFF, 0xEE, 0x73, 0x9C, 0xE2, 0x00, 0x00, - 0x00, 0x03, 0x00, 0x60, 0x1C, 0x03, 0x80, 0x70, 0x06, 0x00, 0xE0, 0x1C, - 0x01, 0xC0, 0x3C, 0x03, 0xC0, 0x78, 0x07, 0x80, 0x78, 0x07, 0x80, 0xF8, - 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0xF8, - 0x0F, 0x80, 0x78, 0x07, 0x80, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xC0, 0x1C, - 0x00, 0xE0, 0x0E, 0x00, 0x70, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x03, 0x00, - 0x10, 0x00, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x06, 0x00, - 0x70, 0x03, 0x80, 0x38, 0x03, 0xC0, 0x3C, 0x03, 0xE0, 0x1E, 0x01, 0xE0, - 0x1E, 0x01, 0xF0, 0x1F, 0x01, 0xF0, 0x1F, 0x01, 0xF0, 0x1F, 0x01, 0xF0, - 0x1F, 0x01, 0xF0, 0x1F, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x3C, 0x03, 0xC0, - 0x38, 0x03, 0x80, 0x70, 0x07, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x0C, - 0x00, 0x80, 0x00, 0x01, 0xC0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x03, 0xE0, 0x3C, 0x78, 0xEF, 0x9C, 0x7B, 0xF7, 0x3F, 0xFE, 0xDF, 0x8F, - 0xFF, 0xC0, 0x7F, 0x00, 0x3F, 0xC0, 0x7E, 0xBF, 0x3F, 0x77, 0xEF, 0x9C, - 0xFF, 0xC7, 0x1E, 0x63, 0xE3, 0x80, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x01, 0xC0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, - 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x3C, 0x7E, 0xFE, 0xFF, 0xFF, 0xFF, 0x7F, 0x07, 0x06, 0x06, 0x0C, - 0x18, 0x30, 0x60, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x3C, - 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x3C, 0x00, 0x1E, 0x00, 0x7C, 0x00, - 0xF0, 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0xF0, - 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0xF0, 0x01, - 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0xF0, 0x01, 0xE0, - 0x03, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xE0, 0x03, - 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF0, 0x00, 0x00, 0xFC, 0x00, - 0x0F, 0x3C, 0x00, 0x78, 0x78, 0x03, 0xE1, 0xF0, 0x1F, 0x03, 0xE0, 0x7C, - 0x0F, 0x83, 0xF0, 0x3F, 0x0F, 0xC0, 0xFC, 0x7F, 0x03, 0xF9, 0xFC, 0x0F, - 0xE7, 0xF0, 0x3F, 0xBF, 0xC0, 0xFE, 0xFF, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, - 0xF0, 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, - 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0x3F, - 0x9F, 0xC0, 0xFE, 0x7F, 0x03, 0xF9, 0xFC, 0x0F, 0xE3, 0xF0, 0x3F, 0x0F, - 0xC0, 0xFC, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x80, 0xF8, 0x7C, 0x01, 0xE1, - 0xE0, 0x03, 0xCF, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x18, 0x00, 0x1E, 0x00, - 0x1F, 0x80, 0x1F, 0xE0, 0x1F, 0xF8, 0x1D, 0xFE, 0x00, 0x3F, 0x80, 0x0F, - 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, - 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, - 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, - 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, - 0x00, 0xFE, 0x00, 0x7F, 0x80, 0x3F, 0xF8, 0xFF, 0xFF, 0xC0, 0x00, 0xFC, - 0x00, 0x1F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x1C, - 0x1F, 0xF1, 0xC0, 0x7F, 0x8C, 0x01, 0xFC, 0x40, 0x0F, 0xE0, 0x00, 0x3F, - 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x00, - 0x00, 0x70, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x38, - 0x01, 0x03, 0x80, 0x18, 0x38, 0x00, 0x81, 0x80, 0x1C, 0x1F, 0xFF, 0xE1, - 0xFF, 0xFF, 0x1F, 0xFF, 0xF9, 0xFF, 0xFF, 0x9F, 0xFF, 0xFC, 0xFF, 0xFF, - 0xE0, 0x00, 0xFE, 0x00, 0x3F, 0xFC, 0x03, 0xFF, 0xF0, 0x30, 0xFF, 0xC2, - 0x01, 0xFE, 0x30, 0x0F, 0xF1, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x0F, - 0xE0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, - 0x1F, 0xC0, 0x03, 0xFF, 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xF0, 0x00, 0xFF, - 0x80, 0x03, 0xFE, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0x80, 0x00, 0xFC, 0x00, - 0x07, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0x80, 0x00, 0x3C, - 0x00, 0x01, 0xC7, 0x80, 0x0E, 0x7F, 0x00, 0xE3, 0xFC, 0x06, 0x1F, 0xF8, - 0xE0, 0x7F, 0xFC, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x1E, - 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, - 0xFF, 0x00, 0x0D, 0xF8, 0x00, 0xEF, 0xC0, 0x06, 0x7E, 0x00, 0x63, 0xF0, - 0x07, 0x1F, 0x80, 0x30, 0xFC, 0x03, 0x07, 0xE0, 0x38, 0x3F, 0x03, 0x81, - 0xF8, 0x18, 0x0F, 0xC1, 0xC0, 0x7E, 0x1C, 0x03, 0xF0, 0xC0, 0x1F, 0x8E, - 0x00, 0xFC, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, - 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x07, 0xFF, - 0xF0, 0x7F, 0xFF, 0x0F, 0xFF, 0xE0, 0xFF, 0xFE, 0x0F, 0xFF, 0xE1, 0xFF, - 0xFC, 0x18, 0x00, 0x01, 0x80, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0x3F, - 0x80, 0x03, 0xFF, 0x80, 0x7F, 0xFE, 0x07, 0xFF, 0xF0, 0x7F, 0xFF, 0x87, - 0xFF, 0xFC, 0x7F, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x1F, 0xE0, 0x00, 0x7E, - 0x00, 0x03, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, - 0xC0, 0x00, 0x0C, 0x78, 0x00, 0x8F, 0xE0, 0x18, 0xFF, 0x87, 0x0F, 0xFF, - 0xE0, 0x7F, 0xF8, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x38, 0x00, 0x1F, 0x00, - 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, - 0x00, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xF0, 0x00, 0x7F, - 0x00, 0x07, 0xF8, 0x00, 0x3F, 0xFF, 0x01, 0xFF, 0xFE, 0x1F, 0xF1, 0xFC, - 0xFF, 0x07, 0xE7, 0xF8, 0x3F, 0xBF, 0xC1, 0xFD, 0xFE, 0x07, 0xFF, 0xF0, - 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x0F, 0xFF, 0xE0, 0x7F, 0xFF, 0x03, 0xFB, - 0xF8, 0x1F, 0xDF, 0xC0, 0xFE, 0xFE, 0x07, 0xE3, 0xF0, 0x3F, 0x1F, 0xC1, - 0xF0, 0x7E, 0x0F, 0x01, 0xF0, 0xF8, 0x03, 0xC7, 0x00, 0x07, 0xE0, 0x00, - 0x3F, 0xFF, 0xF9, 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0xFF, 0xE7, 0xFF, - 0xFF, 0x3F, 0xFF, 0xF9, 0x80, 0x07, 0x98, 0x00, 0x3C, 0xC0, 0x03, 0xE4, - 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x01, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, - 0x01, 0xFE, 0x00, 0x38, 0x7C, 0x07, 0x80, 0xF0, 0x78, 0x07, 0xC3, 0xC0, - 0x1F, 0x3E, 0x00, 0xF9, 0xF0, 0x07, 0xCF, 0xC0, 0x3E, 0x7E, 0x01, 0xF3, - 0xF8, 0x0F, 0x1F, 0xE0, 0xF8, 0x7F, 0xC7, 0x83, 0xFF, 0xF0, 0x0F, 0xFE, - 0x00, 0x7F, 0xFC, 0x01, 0xFF, 0xF0, 0x03, 0xFF, 0xC0, 0x1F, 0xFF, 0x03, - 0xBF, 0xFC, 0x7C, 0x7F, 0xE7, 0xC1, 0xFF, 0x3E, 0x07, 0xFF, 0xE0, 0x1F, - 0xFF, 0x00, 0x7F, 0xF8, 0x03, 0xFF, 0xC0, 0x0F, 0xFE, 0x00, 0x7F, 0xF0, - 0x03, 0xE7, 0x80, 0x1F, 0x3E, 0x01, 0xF0, 0xF8, 0x0F, 0x83, 0xE1, 0xF8, - 0x0F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x1C, 0x3C, 0x00, - 0xF0, 0x78, 0x07, 0x81, 0xF8, 0x3E, 0x07, 0xE1, 0xF8, 0x0F, 0xC7, 0xE0, - 0x3F, 0x3F, 0x80, 0xFE, 0xFE, 0x03, 0xFB, 0xF8, 0x0F, 0xFF, 0xE0, 0x3F, - 0xFF, 0x80, 0xFF, 0xFE, 0x03, 0xFF, 0xF8, 0x0F, 0xFF, 0xE0, 0x3F, 0xDF, - 0xC0, 0xFF, 0x7F, 0x03, 0xFC, 0xFC, 0x0F, 0xF3, 0xFC, 0x7F, 0x83, 0xFF, - 0xFE, 0x07, 0xF7, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xF8, - 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xC0, 0x00, - 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, 0x3F, 0x00, - 0x03, 0x80, 0x00, 0x00, 0x3C, 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x3C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x7E, 0xFF, 0xFF, - 0xFF, 0xFF, 0x7E, 0x3C, 0x3C, 0x3F, 0x3F, 0xDF, 0xEF, 0xF7, 0xF9, 0xF8, - 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x7F, 0x7F, - 0xBF, 0xFF, 0xFF, 0xFB, 0xFC, 0xFE, 0x07, 0x03, 0x01, 0x81, 0x81, 0x81, - 0x83, 0x81, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x01, - 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x01, - 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xE0, 0x00, - 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, - 0xE0, 0x00, 0x07, 0xFF, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x03, 0xFF, 0x00, - 0x00, 0x3F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0xC0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFF, 0xC0, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x0F, - 0xFE, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xE0, - 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x1F, 0xF0, 0x00, 0x1F, - 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, - 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x0F, - 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x00, 0x07, 0xF0, 0x07, 0xFF, 0x03, 0x87, 0xE1, 0xC0, 0xFC, 0xF0, 0x3F, - 0xBE, 0x07, 0xEF, 0xC1, 0xFF, 0xF0, 0x7F, 0xFC, 0x1F, 0xDF, 0x07, 0xF7, - 0x81, 0xFC, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x07, 0xE0, 0x03, - 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, 0x18, 0x00, 0x04, 0x00, 0x01, 0x00, - 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x3C, 0x00, 0x1F, 0x80, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0xFF, 0x00, 0x3F, - 0xC0, 0x07, 0xE0, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x1F, - 0xFF, 0xC0, 0x00, 0x1F, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x03, 0x80, 0x3C, 0x00, 0x00, 0xE0, 0x3C, 0x00, 0x00, 0x30, 0x3E, - 0x00, 0x00, 0x0C, 0x3E, 0x00, 0x3C, 0x37, 0x1F, 0x00, 0x7E, 0xF1, 0x9F, - 0x00, 0x7C, 0xF8, 0xCF, 0x80, 0x78, 0x7C, 0x37, 0xC0, 0x7C, 0x3C, 0x1F, - 0xC0, 0x3C, 0x1E, 0x0F, 0xE0, 0x3C, 0x0F, 0x07, 0xF0, 0x3E, 0x0F, 0x03, - 0xF8, 0x1E, 0x07, 0x81, 0xFC, 0x0F, 0x03, 0xC0, 0xFE, 0x0F, 0x03, 0xE0, - 0x7F, 0x07, 0x81, 0xE0, 0x6F, 0x83, 0xC1, 0xF0, 0x37, 0xC1, 0xE1, 0x78, - 0x31, 0xF0, 0xF9, 0xBC, 0x18, 0xF8, 0x3F, 0x9E, 0x38, 0x3C, 0x0F, 0x0F, - 0xF8, 0x1F, 0x00, 0x01, 0xF0, 0x07, 0x80, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0xC0, 0x01, 0xF8, 0x03, 0xE0, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x03, - 0xFF, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, - 0x03, 0x80, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x07, 0xE0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, - 0x0F, 0xF0, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, - 0x37, 0xF8, 0x00, 0x00, 0x33, 0xF8, 0x00, 0x00, 0x33, 0xFC, 0x00, 0x00, - 0x61, 0xFC, 0x00, 0x00, 0x61, 0xFE, 0x00, 0x00, 0xC1, 0xFE, 0x00, 0x00, - 0xC0, 0xFF, 0x00, 0x00, 0xC0, 0xFF, 0x00, 0x01, 0x80, 0x7F, 0x00, 0x01, - 0x80, 0x7F, 0x80, 0x03, 0x80, 0x7F, 0x80, 0x03, 0xFF, 0xFF, 0xC0, 0x03, - 0xFF, 0xFF, 0xC0, 0x07, 0x00, 0x3F, 0xC0, 0x06, 0x00, 0x1F, 0xE0, 0x0E, - 0x00, 0x1F, 0xE0, 0x0C, 0x00, 0x0F, 0xF0, 0x0C, 0x00, 0x0F, 0xF0, 0x1C, - 0x00, 0x0F, 0xF8, 0x1C, 0x00, 0x0F, 0xF8, 0x7E, 0x00, 0x0F, 0xFC, 0xFF, - 0x80, 0x7F, 0xFF, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x1F, 0xF8, - 0x7F, 0x00, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xFF, 0x01, 0xFE, - 0x0F, 0xF0, 0x1F, 0xE0, 0xFF, 0x01, 0xFE, 0x0F, 0xF0, 0x1F, 0xE0, 0xFF, - 0x01, 0xFE, 0x0F, 0xF0, 0x1F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, - 0x00, 0xFF, 0x0F, 0xC0, 0x0F, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, 0xC0, 0x0F, - 0xF0, 0xFF, 0x00, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x1F, 0xE0, 0xFF, 0x01, - 0xFE, 0x0F, 0xF0, 0x0F, 0xF0, 0xFF, 0x00, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, - 0xFF, 0x00, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, 0xFF, 0x00, 0xFF, 0x0F, 0xF0, - 0x0F, 0xE0, 0xFF, 0x01, 0xFE, 0x0F, 0xF0, 0x1F, 0xC0, 0xFF, 0x87, 0xF0, - 0x3F, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x08, 0x01, - 0xFF, 0xF0, 0x60, 0x0F, 0xC1, 0xF9, 0x80, 0xFC, 0x01, 0xFE, 0x07, 0xE0, - 0x01, 0xF8, 0x3F, 0x00, 0x03, 0xE1, 0xFC, 0x00, 0x07, 0x87, 0xE0, 0x00, - 0x1E, 0x3F, 0x80, 0x00, 0x38, 0xFE, 0x00, 0x00, 0x67, 0xF8, 0x00, 0x01, - 0x9F, 0xC0, 0x00, 0x02, 0x7F, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x0F, - 0xF0, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0xFC, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x87, 0xF0, 0x00, 0x07, 0x0F, 0xE0, 0x00, 0x38, 0x1F, 0x80, 0x01, 0xC0, - 0x3F, 0x00, 0x1E, 0x00, 0x7F, 0x01, 0xE0, 0x00, 0x7F, 0xFF, 0x00, 0x00, - 0x3F, 0xE0, 0x00, 0xFF, 0xFF, 0xE0, 0x00, 0x3F, 0xFF, 0xFE, 0x00, 0x0F, - 0xF8, 0x7F, 0x80, 0x0F, 0xF0, 0x1F, 0xC0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, - 0xF0, 0x07, 0xF0, 0x0F, 0xF0, 0x03, 0xF8, 0x0F, 0xF0, 0x03, 0xFC, 0x0F, - 0xF0, 0x01, 0xFC, 0x0F, 0xF0, 0x01, 0xFE, 0x0F, 0xF0, 0x01, 0xFE, 0x0F, - 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, - 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, - 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, - 0xF0, 0x00, 0xFE, 0x0F, 0xF0, 0x00, 0xFE, 0x0F, 0xF0, 0x01, 0xFE, 0x0F, - 0xF0, 0x01, 0xFC, 0x0F, 0xF0, 0x01, 0xFC, 0x0F, 0xF0, 0x03, 0xF8, 0x0F, - 0xF0, 0x03, 0xF0, 0x0F, 0xF0, 0x07, 0xE0, 0x0F, 0xF0, 0x0F, 0xC0, 0x0F, - 0xF8, 0x3F, 0x80, 0x1F, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xF0, 0x00, 0xFF, - 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xFC, 0x1F, 0xE0, 0x1F, 0xC1, 0xFE, 0x00, - 0x3C, 0x1F, 0xE0, 0x01, 0xC1, 0xFE, 0x00, 0x0C, 0x1F, 0xE0, 0x00, 0xC1, - 0xFE, 0x00, 0x04, 0x1F, 0xE0, 0x20, 0x41, 0xFE, 0x02, 0x00, 0x1F, 0xE0, - 0x60, 0x01, 0xFE, 0x06, 0x00, 0x1F, 0xE0, 0xE0, 0x01, 0xFE, 0x1E, 0x00, - 0x1F, 0xFF, 0xE0, 0x01, 0xFF, 0xFE, 0x00, 0x1F, 0xE3, 0xE0, 0x01, 0xFE, - 0x0E, 0x00, 0x1F, 0xE0, 0x60, 0x01, 0xFE, 0x06, 0x00, 0x1F, 0xE0, 0x20, - 0x01, 0xFE, 0x02, 0x00, 0x1F, 0xE0, 0x00, 0x11, 0xFE, 0x00, 0x03, 0x1F, - 0xE0, 0x00, 0x71, 0xFE, 0x00, 0x07, 0x1F, 0xE0, 0x00, 0xE1, 0xFE, 0x00, - 0x1E, 0x1F, 0xE0, 0x03, 0xE3, 0xFF, 0x01, 0xFE, 0xFF, 0xFF, 0xFF, 0xEF, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xC7, 0xFC, 0x07, - 0xE3, 0xFC, 0x00, 0xF1, 0xFE, 0x00, 0x38, 0xFF, 0x00, 0x0C, 0x7F, 0x80, - 0x06, 0x3F, 0xC0, 0x01, 0x1F, 0xE0, 0x20, 0x8F, 0xF0, 0x10, 0x07, 0xF8, - 0x18, 0x03, 0xFC, 0x0C, 0x01, 0xFE, 0x0E, 0x00, 0xFF, 0x1F, 0x00, 0x7F, - 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x1F, 0xE3, 0xE0, 0x0F, 0xF0, 0x70, 0x07, - 0xF8, 0x18, 0x03, 0xFC, 0x0C, 0x01, 0xFE, 0x02, 0x00, 0xFF, 0x01, 0x00, - 0x7F, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, - 0x07, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0xFF, 0xC0, 0x01, 0xFF, 0xFC, 0x00, 0x00, 0x0F, 0xF0, 0x08, 0x00, - 0x3F, 0xFE, 0x0C, 0x00, 0x3F, 0x07, 0xC6, 0x00, 0x7E, 0x00, 0xFF, 0x00, - 0x7E, 0x00, 0x1F, 0x80, 0x7E, 0x00, 0x07, 0xC0, 0x7F, 0x00, 0x01, 0xE0, - 0x3F, 0x00, 0x00, 0x70, 0x3F, 0x80, 0x00, 0x38, 0x1F, 0xC0, 0x00, 0x0C, - 0x1F, 0xE0, 0x00, 0x06, 0x0F, 0xE0, 0x00, 0x01, 0x07, 0xF0, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x0F, 0xF0, 0x03, 0xFF, 0xFF, 0xF8, 0x00, - 0x3F, 0xF1, 0xFC, 0x00, 0x0F, 0xF0, 0xFF, 0x00, 0x07, 0xF8, 0x7F, 0x80, - 0x03, 0xFC, 0x1F, 0xC0, 0x01, 0xFE, 0x0F, 0xE0, 0x00, 0xFF, 0x03, 0xF8, - 0x00, 0x7F, 0x80, 0xFC, 0x00, 0x3F, 0xC0, 0x3F, 0x00, 0x1F, 0xE0, 0x0F, - 0xC0, 0x0F, 0xF0, 0x03, 0xF8, 0x1F, 0xF0, 0x00, 0x7F, 0xFF, 0xC0, 0x00, - 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xFC, 0x1F, 0xFF, 0x9F, 0xF8, 0x03, 0xFF, - 0x07, 0xF8, 0x00, 0xFF, 0x03, 0xFC, 0x00, 0x7F, 0x81, 0xFE, 0x00, 0x3F, - 0xC0, 0xFF, 0x00, 0x1F, 0xE0, 0x7F, 0x80, 0x0F, 0xF0, 0x3F, 0xC0, 0x07, - 0xF8, 0x1F, 0xE0, 0x03, 0xFC, 0x0F, 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, - 0xFF, 0x03, 0xFC, 0x00, 0x7F, 0x81, 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0x00, - 0x1F, 0xE0, 0x7F, 0x80, 0x0F, 0xF0, 0x3F, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, - 0xFF, 0xFC, 0x0F, 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, 0xFF, 0x03, 0xFC, - 0x00, 0x7F, 0x81, 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0x00, 0x1F, 0xE0, 0x7F, - 0x80, 0x0F, 0xF0, 0x3F, 0xC0, 0x07, 0xF8, 0x1F, 0xE0, 0x03, 0xFC, 0x0F, - 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, 0xFF, 0x03, 0xFC, 0x00, 0x7F, 0x81, - 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0x00, 0x1F, 0xE0, 0xFF, 0xC0, 0x1F, 0xF9, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0xFE, 0x7F, 0xE0, 0x7F, 0x80, 0xFF, 0x01, - 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, - 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, 0xF0, 0x1F, 0xE0, - 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, - 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, - 0x0F, 0xFC, 0x7F, 0xFF, 0x01, 0xFF, 0xFC, 0x00, 0xFF, 0xC0, 0x01, 0xFE, - 0x00, 0x07, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, - 0x07, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, - 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, - 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x00, - 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x1F, - 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x78, 0x1F, 0xE3, - 0xF0, 0x7F, 0x8F, 0xC1, 0xFC, 0x3F, 0x07, 0xF0, 0xFC, 0x1F, 0xC1, 0xE0, - 0xFE, 0x07, 0xC3, 0xF0, 0x0F, 0xFF, 0x80, 0x07, 0xF0, 0x00, 0xFF, 0xFC, - 0x1F, 0xFF, 0x0F, 0xFC, 0x00, 0xFF, 0x01, 0xFE, 0x00, 0x1E, 0x00, 0x7F, - 0x80, 0x07, 0x00, 0x1F, 0xE0, 0x03, 0x80, 0x07, 0xF8, 0x01, 0xC0, 0x01, - 0xFE, 0x00, 0xE0, 0x00, 0x7F, 0x80, 0x70, 0x00, 0x1F, 0xE0, 0x38, 0x00, - 0x07, 0xF8, 0x1C, 0x00, 0x01, 0xFE, 0x0E, 0x00, 0x00, 0x7F, 0x87, 0x00, - 0x00, 0x1F, 0xE3, 0xC0, 0x00, 0x07, 0xF9, 0xF8, 0x00, 0x01, 0xFE, 0xFE, - 0x00, 0x00, 0x7F, 0xFF, 0xC0, 0x00, 0x1F, 0xFF, 0xF8, 0x00, 0x07, 0xFD, - 0xFF, 0x00, 0x01, 0xFE, 0x7F, 0xE0, 0x00, 0x7F, 0x8F, 0xF8, 0x00, 0x1F, - 0xE1, 0xFF, 0x00, 0x07, 0xF8, 0x3F, 0xE0, 0x01, 0xFE, 0x07, 0xFC, 0x00, - 0x7F, 0x81, 0xFF, 0x80, 0x1F, 0xE0, 0x3F, 0xE0, 0x07, 0xF8, 0x07, 0xFC, - 0x01, 0xFE, 0x00, 0xFF, 0x80, 0x7F, 0x80, 0x1F, 0xF0, 0x1F, 0xE0, 0x07, - 0xFE, 0x07, 0xF8, 0x00, 0xFF, 0x83, 0xFF, 0x00, 0x3F, 0xF3, 0xFF, 0xF0, - 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, - 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, - 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x01, 0x1F, 0xE0, 0x00, 0x31, 0xFE, - 0x00, 0x03, 0x1F, 0xE0, 0x00, 0x71, 0xFE, 0x00, 0x07, 0x1F, 0xE0, 0x00, - 0xE1, 0xFE, 0x00, 0x1E, 0x1F, 0xE0, 0x07, 0xE3, 0xFF, 0x01, 0xFE, 0xFF, - 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xFE, 0x7F, 0xF0, 0x00, 0x01, 0xFF, 0xE1, - 0xFF, 0x00, 0x00, 0x3F, 0xF0, 0x1F, 0xE0, 0x00, 0x0F, 0xFC, 0x03, 0xFC, - 0x00, 0x01, 0xFF, 0x80, 0x7F, 0xC0, 0x00, 0x2F, 0xF0, 0x0B, 0xF8, 0x00, - 0x0D, 0xFE, 0x01, 0x7F, 0x80, 0x01, 0xBF, 0xC0, 0x27, 0xF0, 0x00, 0x67, - 0xF8, 0x04, 0xFF, 0x00, 0x0C, 0xFF, 0x00, 0x8F, 0xE0, 0x03, 0x1F, 0xE0, - 0x11, 0xFE, 0x00, 0x63, 0xFC, 0x02, 0x3F, 0xC0, 0x08, 0x7F, 0x80, 0x43, - 0xF8, 0x03, 0x0F, 0xF0, 0x08, 0x7F, 0x80, 0x61, 0xFE, 0x01, 0x07, 0xF0, - 0x18, 0x3F, 0xC0, 0x20, 0xFF, 0x03, 0x07, 0xF8, 0x04, 0x0F, 0xE0, 0xC0, - 0xFF, 0x00, 0x81, 0xFE, 0x18, 0x1F, 0xE0, 0x10, 0x3F, 0xC6, 0x03, 0xFC, - 0x02, 0x03, 0xF8, 0xC0, 0x7F, 0x80, 0x40, 0x7F, 0x98, 0x0F, 0xF0, 0x08, - 0x07, 0xF6, 0x01, 0xFE, 0x01, 0x00, 0xFF, 0xC0, 0x3F, 0xC0, 0x20, 0x0F, - 0xF0, 0x07, 0xF8, 0x04, 0x01, 0xFE, 0x00, 0xFF, 0x00, 0x80, 0x1F, 0x80, - 0x1F, 0xE0, 0x10, 0x03, 0xF0, 0x03, 0xFC, 0x02, 0x00, 0x7E, 0x00, 0x7F, - 0x80, 0x40, 0x07, 0x80, 0x0F, 0xF0, 0x0C, 0x00, 0xF0, 0x01, 0xFE, 0x07, - 0xC0, 0x0C, 0x00, 0x7F, 0xE7, 0xFF, 0x01, 0x80, 0x3F, 0xFF, 0xFF, 0xC0, - 0x03, 0xFE, 0xFF, 0xC0, 0x01, 0xF0, 0xFF, 0xC0, 0x01, 0xC0, 0xFF, 0xC0, - 0x01, 0x80, 0xFF, 0x80, 0x03, 0x01, 0xFF, 0x80, 0x06, 0x03, 0xFF, 0x80, - 0x0C, 0x07, 0xFF, 0x80, 0x18, 0x0D, 0xFF, 0x80, 0x30, 0x19, 0xFF, 0x00, - 0x60, 0x31, 0xFF, 0x00, 0xC0, 0x61, 0xFF, 0x01, 0x80, 0xC1, 0xFF, 0x03, - 0x01, 0x83, 0xFF, 0x06, 0x03, 0x03, 0xFE, 0x0C, 0x06, 0x03, 0xFE, 0x18, - 0x0C, 0x03, 0xFE, 0x30, 0x18, 0x03, 0xFE, 0x60, 0x30, 0x03, 0xFE, 0xC0, - 0x60, 0x07, 0xFD, 0x80, 0xC0, 0x07, 0xFF, 0x01, 0x80, 0x07, 0xFE, 0x03, - 0x00, 0x07, 0xFC, 0x06, 0x00, 0x07, 0xF8, 0x0C, 0x00, 0x07, 0xF0, 0x18, - 0x00, 0x0F, 0xE0, 0x30, 0x00, 0x0F, 0xC0, 0x60, 0x00, 0x0F, 0x80, 0xC0, - 0x00, 0x0F, 0x01, 0xC0, 0x00, 0x0E, 0x0F, 0xC0, 0x00, 0x1C, 0x7F, 0xE0, - 0x00, 0x18, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x80, 0x00, 0x3F, - 0x07, 0xF0, 0x00, 0x7E, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x7E, - 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x07, 0xF0, 0x3F, 0x00, 0x03, 0xF8, 0x3F, - 0x80, 0x00, 0xFE, 0x3F, 0xC0, 0x00, 0x7F, 0x1F, 0xE0, 0x00, 0x3F, 0xCF, - 0xE0, 0x00, 0x0F, 0xEF, 0xF0, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x03, 0xFF, - 0xFC, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x7F, - 0xFF, 0x80, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x1F, 0xFF, 0xE0, 0x00, 0x0F, - 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xF8, 0x00, 0x03, 0xFD, 0xFC, 0x00, 0x01, - 0xFC, 0xFE, 0x00, 0x01, 0xFE, 0x7F, 0x80, 0x00, 0xFF, 0x1F, 0xC0, 0x00, - 0x7F, 0x0F, 0xE0, 0x00, 0x3F, 0x83, 0xF8, 0x00, 0x3F, 0x80, 0xFC, 0x00, - 0x1F, 0x80, 0x3F, 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x1F, 0x80, 0x03, 0xF8, - 0x3F, 0x80, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0xFF, - 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0x01, 0xFE, 0x1F, 0xE0, 0x7F, 0x81, 0xFC, - 0x1F, 0xE0, 0x7F, 0x87, 0xF8, 0x0F, 0xE1, 0xFE, 0x03, 0xFC, 0x7F, 0x80, - 0xFF, 0x1F, 0xE0, 0x3F, 0xC7, 0xF8, 0x0F, 0xF1, 0xFE, 0x03, 0xFC, 0x7F, - 0x80, 0xFF, 0x1F, 0xE0, 0x3F, 0x87, 0xF8, 0x1F, 0xE1, 0xFE, 0x07, 0xF0, - 0x7F, 0x87, 0xF8, 0x1F, 0xFF, 0xF8, 0x07, 0xFF, 0xF8, 0x01, 0xFE, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, - 0x03, 0xFF, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, - 0x3F, 0xFF, 0x80, 0x00, 0x3F, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0xFC, 0x00, - 0x7E, 0x00, 0x3F, 0x00, 0x7E, 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x07, 0xF0, - 0x3F, 0x00, 0x03, 0xF8, 0x3F, 0x80, 0x00, 0xFE, 0x1F, 0xC0, 0x00, 0x7F, - 0x1F, 0xE0, 0x00, 0x3F, 0xCF, 0xE0, 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x07, - 0xF7, 0xF8, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x00, - 0xFF, 0xFF, 0x00, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0x3F, 0xFF, 0xC0, 0x00, - 0x1F, 0xFF, 0xE0, 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xF8, 0x00, - 0x03, 0xFD, 0xFC, 0x00, 0x01, 0xFC, 0xFE, 0x00, 0x01, 0xFE, 0x7F, 0x80, - 0x00, 0xFF, 0x1F, 0xC0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, 0x3F, 0x83, 0xF8, - 0x00, 0x3F, 0x80, 0xFC, 0x00, 0x1F, 0x80, 0x3F, 0x00, 0x1F, 0x80, 0x0F, - 0xC0, 0x1F, 0x80, 0x03, 0xF0, 0x1F, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, - 0x0F, 0xFC, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x01, 0xFF, 0xC0, 0x00, - 0x00, 0x7F, 0xF0, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x07, 0xFF, 0x80, - 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0xFF, 0xFF, 0xE0, - 0x00, 0xFF, 0xFF, 0xF8, 0x00, 0x7F, 0xC3, 0xFC, 0x00, 0xFF, 0x01, 0xFC, - 0x01, 0xFE, 0x03, 0xFC, 0x03, 0xFC, 0x03, 0xF8, 0x07, 0xF8, 0x07, 0xF8, - 0x0F, 0xF0, 0x0F, 0xF0, 0x1F, 0xE0, 0x1F, 0xE0, 0x3F, 0xC0, 0x3F, 0xC0, - 0x7F, 0x80, 0x7F, 0x80, 0xFF, 0x00, 0xFF, 0x01, 0xFE, 0x01, 0xFC, 0x03, - 0xFC, 0x07, 0xF8, 0x07, 0xF8, 0x1F, 0xE0, 0x0F, 0xF0, 0xFF, 0x00, 0x1F, - 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x7F, 0x9F, 0xE0, 0x00, 0xFF, - 0x3F, 0xC0, 0x01, 0xFE, 0x3F, 0xC0, 0x03, 0xFC, 0x7F, 0xC0, 0x07, 0xF8, - 0x7F, 0xC0, 0x0F, 0xF0, 0x7F, 0x80, 0x1F, 0xE0, 0xFF, 0x80, 0x3F, 0xC0, - 0xFF, 0x80, 0x7F, 0x80, 0xFF, 0x00, 0xFF, 0x01, 0xFF, 0x01, 0xFE, 0x01, - 0xFF, 0x03, 0xFC, 0x01, 0xFF, 0x0F, 0xFC, 0x03, 0xFE, 0x7F, 0xFE, 0x03, - 0xFF, 0x03, 0xF8, 0x10, 0x7F, 0xF9, 0x87, 0xC1, 0xFC, 0x78, 0x03, 0xE7, - 0x80, 0x0F, 0x3C, 0x00, 0x3B, 0xE0, 0x01, 0xDF, 0x00, 0x06, 0xF8, 0x00, - 0x37, 0xE0, 0x00, 0xBF, 0x80, 0x01, 0xFF, 0x00, 0x0F, 0xFE, 0x00, 0x3F, - 0xFC, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xF0, 0x1F, 0xFF, 0xC0, 0x7F, 0xFF, - 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xE0, 0x03, 0xFF, 0x80, 0x07, 0xFC, 0x00, - 0x1F, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x3F, - 0xC0, 0x01, 0xEE, 0x00, 0x0F, 0x78, 0x00, 0xF3, 0xE0, 0x0F, 0x9F, 0xC0, - 0xF8, 0x8F, 0xFF, 0x04, 0x0F, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0x3F, 0xC3, 0xFF, 0x03, 0xFC, 0x0F, 0xE0, 0x3F, 0xC0, - 0x7C, 0x03, 0xFC, 0x03, 0xC0, 0x3F, 0xC0, 0x38, 0x03, 0xFC, 0x01, 0x80, - 0x3F, 0xC0, 0x10, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xFF, 0xC0, 0xFF, - 0xFE, 0x07, 0xFC, 0xFF, 0xC0, 0x07, 0xC1, 0xFE, 0x00, 0x0E, 0x07, 0xF8, - 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, - 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, - 0x81, 0xFE, 0x00, 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, - 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, - 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, 0x06, 0x07, 0xF8, - 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, - 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x03, - 0x00, 0xFF, 0x00, 0x0C, 0x03, 0xFC, 0x00, 0x30, 0x07, 0xF0, 0x01, 0x80, - 0x0F, 0xE0, 0x0E, 0x00, 0x1F, 0xE0, 0xF0, 0x00, 0x1F, 0xFF, 0x00, 0x00, - 0x1F, 0xF0, 0x00, 0xFF, 0xFF, 0x01, 0xFF, 0x9F, 0xFC, 0x00, 0x1F, 0x07, - 0xFC, 0x00, 0x07, 0x01, 0xFE, 0x00, 0x03, 0x00, 0x7F, 0x80, 0x03, 0x80, - 0x3F, 0xC0, 0x01, 0x80, 0x1F, 0xE0, 0x00, 0xC0, 0x07, 0xF8, 0x00, 0xC0, - 0x03, 0xFC, 0x00, 0x60, 0x00, 0xFF, 0x00, 0x30, 0x00, 0x7F, 0x80, 0x30, - 0x00, 0x1F, 0xE0, 0x18, 0x00, 0x0F, 0xF0, 0x18, 0x00, 0x07, 0xF8, 0x0C, - 0x00, 0x01, 0xFE, 0x06, 0x00, 0x00, 0xFF, 0x06, 0x00, 0x00, 0x3F, 0xC3, - 0x00, 0x00, 0x1F, 0xE3, 0x80, 0x00, 0x0F, 0xF1, 0x80, 0x00, 0x03, 0xFC, - 0xC0, 0x00, 0x01, 0xFE, 0xC0, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x00, 0x3F, - 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, - 0x01, 0x80, 0x00, 0xFF, 0xF8, 0x7F, 0xFF, 0x0F, 0xFB, 0xFF, 0x00, 0xFF, - 0xC0, 0x1F, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0x70, 0x3F, 0x80, 0x0F, 0xE0, - 0x03, 0x81, 0xFE, 0x00, 0x7F, 0x80, 0x1C, 0x0F, 0xF0, 0x03, 0xFC, 0x00, - 0xC0, 0x3F, 0x80, 0x0F, 0xE0, 0x06, 0x01, 0xFE, 0x00, 0x7F, 0x00, 0x70, - 0x0F, 0xF0, 0x07, 0xFC, 0x03, 0x00, 0x3F, 0x80, 0x3F, 0xE0, 0x18, 0x01, - 0xFE, 0x01, 0xFF, 0x01, 0xC0, 0x0F, 0xF0, 0x1B, 0xFC, 0x0C, 0x00, 0x3F, - 0x80, 0xCF, 0xE0, 0x60, 0x01, 0xFE, 0x06, 0x7F, 0x07, 0x00, 0x0F, 0xF0, - 0x63, 0xFC, 0x30, 0x00, 0x3F, 0x83, 0x0F, 0xE1, 0x80, 0x01, 0xFE, 0x30, - 0x7F, 0x1C, 0x00, 0x07, 0xF1, 0x81, 0xFC, 0xC0, 0x00, 0x3F, 0x8C, 0x0F, - 0xE6, 0x00, 0x01, 0xFE, 0xC0, 0x7F, 0x70, 0x00, 0x07, 0xF6, 0x01, 0xFB, - 0x00, 0x00, 0x3F, 0xE0, 0x0F, 0xF8, 0x00, 0x01, 0xFF, 0x00, 0x7F, 0xC0, - 0x00, 0x07, 0xF8, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x00, - 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xE0, 0x01, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x00, 0x07, - 0x00, 0x01, 0xC0, 0x00, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, - 0x00, 0x70, 0x00, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0xFF, 0xFF, 0x0F, - 0xFF, 0x3F, 0xF8, 0x01, 0xF8, 0x1F, 0xF8, 0x01, 0xE0, 0x0F, 0xF8, 0x01, - 0xC0, 0x0F, 0xF8, 0x01, 0x80, 0x07, 0xFC, 0x03, 0x80, 0x03, 0xFE, 0x07, - 0x00, 0x03, 0xFE, 0x06, 0x00, 0x01, 0xFF, 0x0C, 0x00, 0x00, 0xFF, 0x9C, - 0x00, 0x00, 0xFF, 0x98, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00, 0x3F, 0xF0, - 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x0F, 0xFC, - 0x00, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x19, 0xFE, 0x00, 0x00, 0x31, 0xFF, - 0x00, 0x00, 0x70, 0xFF, 0x80, 0x00, 0x60, 0x7F, 0x80, 0x00, 0xC0, 0x7F, - 0xC0, 0x01, 0xC0, 0x3F, 0xE0, 0x03, 0x80, 0x1F, 0xE0, 0x07, 0x00, 0x1F, - 0xF0, 0x07, 0x00, 0x0F, 0xF8, 0x0F, 0x00, 0x0F, 0xF8, 0x3F, 0x80, 0x1F, - 0xFC, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0x7F, 0xF0, 0x00, - 0x7E, 0x1F, 0xF0, 0x00, 0x38, 0x1F, 0xF0, 0x00, 0x38, 0x0F, 0xF0, 0x00, - 0x70, 0x0F, 0xF8, 0x00, 0x60, 0x07, 0xF8, 0x00, 0x60, 0x07, 0xFC, 0x00, - 0xC0, 0x03, 0xFC, 0x01, 0xC0, 0x01, 0xFE, 0x01, 0x80, 0x01, 0xFE, 0x03, - 0x00, 0x00, 0xFF, 0x03, 0x00, 0x00, 0xFF, 0x86, 0x00, 0x00, 0x7F, 0x8E, - 0x00, 0x00, 0x7F, 0xCC, 0x00, 0x00, 0x3F, 0xD8, 0x00, 0x00, 0x3F, 0xF8, - 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, 0xFE, - 0x00, 0x3F, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xFC, 0x3F, 0x80, 0x7F, 0xC3, - 0xE0, 0x07, 0xF8, 0x38, 0x00, 0xFF, 0x83, 0x80, 0x0F, 0xF0, 0x30, 0x01, - 0xFE, 0x07, 0x00, 0x3F, 0xE0, 0x60, 0x03, 0xFC, 0x06, 0x00, 0x7F, 0xC0, - 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x7F, 0x80, - 0x00, 0x0F, 0xF8, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, - 0xFE, 0x00, 0x00, 0x3F, 0xC0, 0x01, 0x07, 0xFC, 0x00, 0x30, 0xFF, 0x80, - 0x03, 0x0F, 0xF0, 0x00, 0x31, 0xFF, 0x00, 0x07, 0x1F, 0xE0, 0x00, 0xF3, - 0xFE, 0x00, 0x1E, 0x7F, 0xC0, 0x03, 0xE7, 0xF8, 0x01, 0xFE, 0xFF, 0xFF, - 0xFF, 0xEF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xF0, 0x7C, 0x0F, 0x81, - 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, - 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, - 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, - 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xFF, 0xFF, 0xF8, 0xF0, - 0x01, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x80, 0x0F, 0x00, - 0x1F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x78, 0x00, 0xF0, 0x01, - 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1F, - 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, - 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, - 0x1E, 0xFF, 0xFF, 0xFC, 0x1F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, - 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, - 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, - 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, - 0x0F, 0x81, 0xF0, 0x3F, 0xFF, 0xFF, 0xF8, 0x00, 0x78, 0x00, 0x07, 0xC0, - 0x00, 0x3F, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xE0, 0x01, 0xEF, 0x00, 0x0F, - 0x3C, 0x00, 0xF1, 0xE0, 0x07, 0x87, 0x80, 0x78, 0x3C, 0x03, 0xC0, 0xF0, - 0x3C, 0x07, 0x81, 0xE0, 0x1E, 0x1E, 0x00, 0xF0, 0xF0, 0x07, 0xCF, 0x00, - 0x1E, 0x78, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x70, 0x1F, 0x03, 0xF0, 0x7E, 0x03, 0xE0, 0x3E, 0x01, 0xE0, 0x1E, - 0x00, 0xE0, 0x03, 0xFC, 0x00, 0x3F, 0xFC, 0x03, 0xE1, 0xF8, 0x0F, 0x03, - 0xF0, 0x7C, 0x07, 0xC1, 0xF8, 0x1F, 0x87, 0xE0, 0x7E, 0x1F, 0x81, 0xF8, - 0x3C, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x01, 0xFE, 0x00, 0x3F, 0xF8, 0x03, - 0xE7, 0xE0, 0x3E, 0x1F, 0x83, 0xF0, 0x7E, 0x1F, 0x81, 0xF8, 0x7E, 0x07, - 0xE3, 0xF8, 0x1F, 0x8F, 0xE0, 0x7E, 0x3F, 0x83, 0xF8, 0xFF, 0x1F, 0xE1, - 0xFF, 0xDF, 0xF7, 0xFE, 0x3F, 0x07, 0xE0, 0xF8, 0xFF, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x0F, 0xC7, 0xF0, 0x07, 0xEF, 0xFE, 0x03, 0xFC, 0x3F, 0x81, 0xFC, 0x0F, - 0xE0, 0xFC, 0x03, 0xF0, 0x7E, 0x01, 0xFC, 0x3F, 0x00, 0xFE, 0x1F, 0x80, - 0x3F, 0x8F, 0xC0, 0x1F, 0xC7, 0xE0, 0x0F, 0xE3, 0xF0, 0x07, 0xF1, 0xF8, - 0x03, 0xF8, 0xFC, 0x01, 0xFC, 0x7E, 0x00, 0xFE, 0x3F, 0x00, 0x7F, 0x1F, - 0x80, 0x3F, 0x0F, 0xC0, 0x1F, 0x87, 0xE0, 0x1F, 0xC3, 0xF0, 0x0F, 0xC1, - 0xF8, 0x07, 0xE0, 0xFE, 0x07, 0xE0, 0x73, 0x87, 0xE0, 0x30, 0xFF, 0xC0, - 0x10, 0x1F, 0x80, 0x00, 0x00, 0xFC, 0x00, 0x7F, 0xE0, 0x3E, 0x3E, 0x0F, - 0x83, 0xE3, 0xE0, 0x7C, 0x7C, 0x0F, 0x9F, 0x01, 0xF3, 0xE0, 0x1C, 0x7C, - 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, - 0x00, 0x3F, 0x00, 0x07, 0xF0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x01, 0xFC, - 0x00, 0x1F, 0xC0, 0x21, 0xFE, 0x0C, 0x3F, 0xFF, 0x01, 0xFF, 0x80, 0x0F, - 0xC0, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, - 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, - 0xF8, 0x00, 0x01, 0xF8, 0x03, 0xF1, 0xF8, 0x07, 0xFD, 0xF8, 0x1F, 0xC7, - 0xF8, 0x1F, 0x83, 0xF8, 0x3F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0x7E, 0x01, - 0xF8, 0x7E, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, - 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, - 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0x7E, 0x01, 0xF8, 0x7F, 0x01, - 0xF8, 0x3F, 0x03, 0xF8, 0x3F, 0x03, 0xF8, 0x1F, 0x87, 0xFC, 0x0F, 0xFD, - 0xFF, 0x03, 0xF1, 0xC0, 0x03, 0xF0, 0x03, 0xFF, 0x01, 0xE1, 0xE0, 0xF8, - 0x7C, 0x3C, 0x0F, 0x1F, 0x03, 0xE7, 0xC0, 0xFB, 0xF0, 0x3E, 0xFC, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, - 0xC0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x1F, 0x80, 0x07, 0xF0, 0x0C, 0xFC, - 0x06, 0x3F, 0xC3, 0x07, 0xFF, 0x80, 0xFF, 0xC0, 0x0F, 0xC0, 0x00, 0xFC, - 0x01, 0xFF, 0x81, 0xF1, 0xC1, 0xF0, 0xF0, 0xF8, 0xF8, 0xFC, 0x7C, 0x7E, - 0x1C, 0x3F, 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x1F, 0xFF, 0x0F, - 0xFF, 0x80, 0xFC, 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x1F, 0x80, 0x0F, 0xC0, - 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0x3F, - 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, - 0xFC, 0x00, 0x7E, 0x00, 0x7F, 0x80, 0xFF, 0xF8, 0x00, 0x07, 0xF0, 0x03, - 0xFF, 0xFC, 0xF8, 0x7F, 0xBE, 0x07, 0x87, 0xC0, 0xF9, 0xF8, 0x1F, 0xBF, - 0x03, 0xF7, 0xE0, 0x7E, 0xFC, 0x0F, 0xDF, 0x81, 0xF9, 0xF0, 0x3F, 0x3E, - 0x07, 0xC3, 0xE1, 0xF8, 0x3C, 0x7E, 0x01, 0xFF, 0x00, 0x60, 0x00, 0x38, - 0x00, 0x0F, 0x00, 0x01, 0xF0, 0x00, 0x7F, 0xFF, 0x0F, 0xFF, 0xF9, 0xFF, - 0xFF, 0x9F, 0xFF, 0xF9, 0xFF, 0xFF, 0x0F, 0xFF, 0xEF, 0x00, 0x3F, 0xC0, - 0x03, 0xF8, 0x00, 0x7F, 0x00, 0x1C, 0xF8, 0x07, 0x0F, 0xFF, 0xC0, 0x7F, - 0xC0, 0xFF, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, - 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, - 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x87, 0xE0, 0x1F, 0x9F, 0xF0, 0x1F, 0xBF, - 0xF8, 0x1F, 0xF1, 0xF8, 0x1F, 0xC0, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x3F, 0xC1, 0xFE, 0xFF, 0xE3, - 0xFF, 0x0F, 0x07, 0xE1, 0xFE, 0x3F, 0xC7, 0xF8, 0x7F, 0x03, 0xC0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x7F, 0xC3, 0xF8, 0x3F, 0x07, 0xE0, 0xFC, 0x1F, - 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, 0xFC, 0x1F, 0x83, - 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE1, 0xFE, 0xFF, 0xE0, 0x00, - 0x70, 0x07, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x07, 0xF0, 0x0F, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0x01, 0xFC, 0x03, 0xF0, - 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, - 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, - 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, - 0xDC, 0x3F, 0xF8, 0xFB, 0xE3, 0xEF, 0x0F, 0xBC, 0x7C, 0x7F, 0xE0, 0x7E, - 0x00, 0xFF, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, - 0x00, 0x01, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE1, 0xFF, 0x83, - 0xF0, 0x3F, 0x01, 0xF8, 0x0E, 0x00, 0xFC, 0x06, 0x00, 0x7E, 0x06, 0x00, - 0x3F, 0x06, 0x00, 0x1F, 0x86, 0x00, 0x0F, 0xC7, 0x00, 0x07, 0xE7, 0x80, - 0x03, 0xF7, 0xE0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7E, 0x7F, - 0x00, 0x3F, 0x1F, 0xC0, 0x1F, 0x8F, 0xE0, 0x0F, 0xC3, 0xF8, 0x07, 0xE0, - 0xFE, 0x03, 0xF0, 0x7F, 0x81, 0xF8, 0x1F, 0xC0, 0xFC, 0x0F, 0xF0, 0xFF, - 0x07, 0xFD, 0xFF, 0xC7, 0xFF, 0xFF, 0x87, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, - 0x3F, 0x07, 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, - 0x07, 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, - 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x0F, 0xF7, - 0xFF, 0x00, 0x07, 0xE0, 0x3F, 0x07, 0xFC, 0xFF, 0x87, 0xFC, 0x0F, 0xEF, - 0xFE, 0x7F, 0xF0, 0x3F, 0xC3, 0xFF, 0x1F, 0x81, 0xFC, 0x0F, 0xE0, 0x7E, - 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x7E, 0x03, 0xF0, 0x1F, 0x83, 0xF0, 0x1F, - 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0xFC, 0x07, 0xE0, 0x3F, 0x07, - 0xE0, 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x0F, 0xC1, 0xF8, 0x0F, 0xC0, - 0x7E, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x7E, 0x03, 0xF0, 0x1F, 0x83, 0xF0, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0xFC, 0x07, 0xE0, 0x3F, - 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x0F, 0xC1, 0xF8, 0x0F, - 0xC0, 0x7E, 0x1F, 0xE0, 0xFF, 0x07, 0xFB, 0xFF, 0x8F, 0xFC, 0x7F, 0xE0, - 0x00, 0x07, 0xE0, 0xFF, 0x9F, 0xF0, 0x3F, 0xBF, 0xF8, 0x1F, 0xF1, 0xF8, - 0x1F, 0xC0, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x3F, 0xC1, 0xFE, 0xFF, 0xE3, 0xFF, 0x01, 0xFC, 0x00, - 0x3F, 0xF8, 0x03, 0xE3, 0xE0, 0x3E, 0x0F, 0x83, 0xF0, 0x7E, 0x1F, 0x01, - 0xF1, 0xF8, 0x0F, 0xCF, 0xC0, 0x7E, 0xFE, 0x03, 0xFF, 0xF0, 0x1F, 0xFF, - 0x80, 0xFF, 0xFC, 0x07, 0xFF, 0xE0, 0x3F, 0xFF, 0x01, 0xFF, 0xF8, 0x0F, - 0xFF, 0xC0, 0x7F, 0x7E, 0x03, 0xF3, 0xF0, 0x1F, 0x8F, 0x80, 0xF8, 0x7E, - 0x0F, 0xC1, 0xF0, 0x7C, 0x07, 0xC7, 0xC0, 0x1F, 0xFC, 0x00, 0x3F, 0x80, - 0x00, 0x0F, 0xC0, 0xFF, 0xBF, 0xF0, 0x3F, 0xF1, 0xF8, 0x1F, 0xC0, 0xFC, - 0x1F, 0xC0, 0xFC, 0x1F, 0x80, 0xFE, 0x1F, 0x80, 0x7E, 0x1F, 0x80, 0x7F, - 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, - 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, - 0x1F, 0x80, 0x7E, 0x1F, 0x80, 0x7E, 0x1F, 0x80, 0xFE, 0x1F, 0x80, 0xFC, - 0x1F, 0xC1, 0xF8, 0x1F, 0xE3, 0xF8, 0x1F, 0xBF, 0xE0, 0x1F, 0x8F, 0xC0, - 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, - 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xF8, 0x00, - 0x00, 0xF8, 0x08, 0x07, 0xFE, 0x18, 0x0F, 0xC7, 0x38, 0x1F, 0x83, 0xF8, - 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0x7E, 0x01, 0xF8, - 0x7E, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, - 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, - 0xFE, 0x01, 0xF8, 0x7E, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, - 0x3F, 0x83, 0xF8, 0x1F, 0xC7, 0xF8, 0x0F, 0xFD, 0xF8, 0x03, 0xF1, 0xF8, - 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, - 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xFF, - 0x00, 0x07, 0x9F, 0xF3, 0xF8, 0xFE, 0xFF, 0x8F, 0xFF, 0xF1, 0xFE, 0x7E, - 0x3F, 0x87, 0x87, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, - 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, - 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, - 0xF8, 0x00, 0x7F, 0x80, 0x3F, 0xFC, 0x00, 0x0F, 0x84, 0x3F, 0xF8, 0xE1, - 0xF3, 0x80, 0xEF, 0x00, 0xDE, 0x01, 0xBE, 0x01, 0x7E, 0x00, 0xFF, 0x01, - 0xFF, 0x81, 0xFF, 0xC3, 0xFF, 0xC3, 0xFF, 0xC1, 0xFF, 0x80, 0xFF, 0x80, - 0x7F, 0x80, 0x7F, 0x80, 0x7F, 0x00, 0x7E, 0x00, 0xFE, 0x01, 0xDF, 0x0F, - 0x37, 0xFC, 0x43, 0xF0, 0x01, 0x00, 0x0C, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x7C, 0x03, 0xF0, 0x1F, 0xC0, 0xFF, 0xF3, 0xFF, 0xC3, 0xF0, 0x0F, - 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, - 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, - 0xFC, 0x23, 0xF0, 0x8F, 0xE6, 0x1F, 0xF0, 0x7F, 0x80, 0xF8, 0x00, 0xFF, - 0x87, 0xFC, 0x1F, 0xC0, 0xFE, 0x07, 0xE0, 0x3F, 0x03, 0xF0, 0x1F, 0x81, - 0xF8, 0x0F, 0xC0, 0xFC, 0x07, 0xE0, 0x7E, 0x03, 0xF0, 0x3F, 0x01, 0xF8, - 0x1F, 0x80, 0xFC, 0x0F, 0xC0, 0x7E, 0x07, 0xE0, 0x3F, 0x03, 0xF0, 0x1F, - 0x81, 0xF8, 0x0F, 0xC0, 0xFC, 0x07, 0xE0, 0x7E, 0x03, 0xF0, 0x3F, 0x01, - 0xF8, 0x1F, 0x80, 0xFC, 0x0F, 0xC0, 0x7E, 0x07, 0xE0, 0x7F, 0x03, 0xF8, - 0x7F, 0xC0, 0xFF, 0xEF, 0xF8, 0x3F, 0xE7, 0xC0, 0x0F, 0xC2, 0x00, 0xFF, - 0xF1, 0xFC, 0xFF, 0x01, 0xE3, 0xFC, 0x03, 0x07, 0xF0, 0x0C, 0x1F, 0xC0, - 0x60, 0x3F, 0x81, 0x80, 0xFE, 0x04, 0x01, 0xF8, 0x30, 0x07, 0xF0, 0xC0, - 0x1F, 0xC6, 0x00, 0x3F, 0x98, 0x00, 0xFE, 0x40, 0x01, 0xFB, 0x00, 0x07, - 0xFC, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, 0x01, 0xF0, - 0x00, 0x07, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, - 0x01, 0x00, 0x00, 0xFF, 0xE7, 0xFF, 0x3F, 0xBF, 0xE0, 0xFE, 0x07, 0x0F, - 0xE0, 0x7F, 0x03, 0x83, 0xF0, 0x1F, 0x81, 0x81, 0xFC, 0x0F, 0xC0, 0xC0, - 0xFE, 0x07, 0xF0, 0x40, 0x3F, 0x03, 0xF8, 0x60, 0x1F, 0xC3, 0xFC, 0x30, - 0x07, 0xE1, 0xFE, 0x10, 0x03, 0xF0, 0x9F, 0x98, 0x01, 0xFC, 0xCF, 0xCC, - 0x00, 0x7E, 0x67, 0xEC, 0x00, 0x3F, 0xE1, 0xFE, 0x00, 0x1F, 0xF0, 0xFE, - 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x03, 0xF8, 0x3F, 0x80, 0x00, 0xFC, 0x0F, - 0x80, 0x00, 0x7C, 0x07, 0xC0, 0x00, 0x3E, 0x03, 0xE0, 0x00, 0x0F, 0x00, - 0xE0, 0x00, 0x07, 0x00, 0x70, 0x00, 0x03, 0x80, 0x38, 0x00, 0x00, 0x80, - 0x08, 0x00, 0xFF, 0xF3, 0xFD, 0xFF, 0x03, 0xC3, 0xFC, 0x0E, 0x07, 0xF0, - 0x30, 0x1F, 0xE1, 0x80, 0x3F, 0x8C, 0x00, 0x7F, 0x70, 0x01, 0xFF, 0x80, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0x80, 0x00, - 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x1B, 0xF8, 0x00, 0xCF, 0xF0, 0x06, 0x1F, - 0xC0, 0x38, 0x3F, 0x80, 0xC0, 0xFF, 0x07, 0x01, 0xFC, 0x3C, 0x07, 0xFB, - 0xFC, 0x7F, 0xF0, 0xFF, 0xE3, 0xFB, 0xFC, 0x07, 0x8F, 0xE0, 0x18, 0x7F, - 0x01, 0x81, 0xF8, 0x0C, 0x0F, 0xE0, 0x60, 0x7F, 0x06, 0x01, 0xF8, 0x30, - 0x0F, 0xE1, 0x80, 0x7F, 0x18, 0x01, 0xF8, 0xC0, 0x0F, 0xE6, 0x00, 0x3F, - 0x60, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, - 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x03, 0x82, 0x00, 0x3E, - 0x30, 0x01, 0xF1, 0x00, 0x0F, 0x98, 0x00, 0x3F, 0x80, 0x00, 0xF0, 0x00, - 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xFD, 0xE0, 0x7F, 0x30, 0x1F, 0xC6, 0x07, - 0xF8, 0x80, 0xFE, 0x00, 0x3F, 0xC0, 0x07, 0xF0, 0x01, 0xFC, 0x00, 0x3F, - 0x80, 0x0F, 0xE0, 0x03, 0xFC, 0x00, 0x7F, 0x00, 0x1F, 0xE0, 0x03, 0xF8, - 0x00, 0xFE, 0x03, 0x3F, 0xC0, 0x67, 0xF0, 0x19, 0xFE, 0x07, 0x3F, 0x83, - 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0x80, 0x00, 0x7C, 0x07, 0xE0, 0x3E, 0x00, - 0xF8, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, - 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, - 0x1F, 0x00, 0xF8, 0x03, 0xC0, 0x3C, 0x01, 0xF0, 0x00, 0xF0, 0x03, 0xE0, - 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, - 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, - 0x00, 0x3E, 0x00, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x3E, 0x00, - 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, - 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0x7C, 0x00, 0xF0, - 0x00, 0xF0, 0x03, 0xE0, 0x3C, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, - 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, 0x07, 0xC0, 0x7E, - 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0xFF, 0xC0, 0x47, 0xFF, 0xC3, 0x9F, - 0xFF, 0xFF, 0x70, 0x7F, 0xF8, 0x80, 0x7F, 0xC0, 0x00, 0x3E, 0x00}; - -const GFXglyph FreeSerifBold24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 8, 34, 16, 4, -32}, // 0x21 '!' - {34, 17, 13, 26, 4, -32}, // 0x22 '"' - {62, 23, 33, 23, 0, -32}, // 0x23 '#' - {157, 21, 39, 24, 1, -34}, // 0x24 '$' - {260, 35, 34, 47, 6, -32}, // 0x25 '%' - {409, 34, 34, 39, 3, -32}, // 0x26 '&' - {554, 5, 13, 13, 4, -32}, // 0x27 ''' - {563, 12, 41, 16, 2, -32}, // 0x28 '(' - {625, 12, 41, 16, 1, -32}, // 0x29 ')' - {687, 18, 21, 24, 3, -32}, // 0x2A '*' - {735, 26, 25, 32, 3, -24}, // 0x2B '+' - {817, 8, 15, 12, 2, -6}, // 0x2C ',' - {832, 11, 5, 16, 2, -12}, // 0x2D '-' - {839, 8, 8, 12, 2, -6}, // 0x2E '.' - {847, 15, 33, 13, -1, -32}, // 0x2F '/' - {909, 22, 34, 23, 1, -32}, // 0x30 '0' - {1003, 18, 33, 23, 3, -32}, // 0x31 '1' - {1078, 21, 33, 24, 1, -32}, // 0x32 '2' - {1165, 21, 34, 24, 1, -32}, // 0x33 '3' - {1255, 21, 33, 24, 1, -32}, // 0x34 '4' - {1342, 20, 32, 23, 2, -31}, // 0x35 '5' - {1422, 21, 34, 24, 1, -32}, // 0x36 '6' - {1512, 21, 32, 23, 1, -31}, // 0x37 '7' - {1596, 21, 34, 23, 1, -32}, // 0x38 '8' - {1686, 22, 34, 23, 1, -32}, // 0x39 '9' - {1780, 8, 24, 16, 4, -22}, // 0x3A ':' - {1804, 9, 31, 16, 3, -22}, // 0x3B ';' - {1839, 26, 26, 32, 3, -24}, // 0x3C '<' - {1924, 26, 17, 32, 3, -20}, // 0x3D '=' - {1980, 26, 26, 32, 3, -24}, // 0x3E '>' - {2065, 18, 34, 24, 3, -32}, // 0x3F '?' - {2142, 33, 34, 44, 5, -32}, // 0x40 '@' - {2283, 32, 33, 34, 1, -32}, // 0x41 'A' - {2415, 28, 32, 31, 1, -31}, // 0x42 'B' - {2527, 30, 34, 33, 2, -32}, // 0x43 'C' - {2655, 32, 32, 34, 1, -31}, // 0x44 'D' - {2783, 28, 32, 32, 2, -31}, // 0x45 'E' - {2895, 25, 32, 29, 2, -31}, // 0x46 'F' - {2995, 33, 34, 36, 2, -32}, // 0x47 'G' - {3136, 33, 32, 37, 2, -31}, // 0x48 'H' - {3268, 15, 32, 18, 2, -31}, // 0x49 'I' - {3328, 22, 37, 24, 0, -31}, // 0x4A 'J' - {3430, 34, 32, 36, 2, -31}, // 0x4B 'K' - {3566, 28, 32, 31, 2, -31}, // 0x4C 'L' - {3678, 43, 32, 45, 0, -31}, // 0x4D 'M' - {3850, 31, 32, 34, 1, -31}, // 0x4E 'N' - {3974, 33, 34, 37, 2, -32}, // 0x4F 'O' - {4115, 26, 32, 30, 2, -31}, // 0x50 'P' - {4219, 33, 41, 37, 2, -32}, // 0x51 'Q' - {4389, 31, 32, 34, 2, -31}, // 0x52 'R' - {4513, 21, 34, 27, 3, -32}, // 0x53 'S' - {4603, 28, 32, 30, 1, -31}, // 0x54 'T' - {4715, 30, 33, 34, 2, -31}, // 0x55 'U' - {4839, 33, 32, 33, 0, -31}, // 0x56 'V' - {4971, 45, 33, 46, 1, -31}, // 0x57 'W' - {5157, 32, 32, 34, 1, -31}, // 0x58 'X' - {5285, 32, 32, 33, 1, -31}, // 0x59 'Y' - {5413, 28, 32, 30, 1, -31}, // 0x5A 'Z' - {5525, 11, 39, 16, 3, -31}, // 0x5B '[' - {5579, 15, 33, 13, -1, -32}, // 0x5C '\' - {5641, 11, 39, 16, 2, -31}, // 0x5D ']' - {5695, 21, 17, 27, 3, -31}, // 0x5E '^' - {5740, 24, 3, 23, 0, 5}, // 0x5F '_' - {5749, 11, 9, 16, 0, -33}, // 0x60 '`' - {5762, 22, 24, 23, 1, -22}, // 0x61 'a' - {5828, 25, 33, 26, 0, -31}, // 0x62 'b' - {5932, 19, 24, 20, 1, -22}, // 0x63 'c' - {5989, 24, 33, 26, 1, -31}, // 0x64 'd' - {6088, 18, 24, 21, 1, -22}, // 0x65 'e' - {6142, 17, 33, 18, 1, -32}, // 0x66 'f' - {6213, 19, 32, 24, 2, -22}, // 0x67 'g' - {6289, 24, 32, 26, 0, -31}, // 0x68 'h' - {6385, 11, 33, 14, 1, -32}, // 0x69 'i' - {6431, 14, 42, 18, 0, -32}, // 0x6A 'j' - {6505, 25, 32, 26, 0, -31}, // 0x6B 'k' - {6605, 11, 32, 13, 0, -31}, // 0x6C 'l' - {6649, 37, 23, 39, 0, -22}, // 0x6D 'm' - {6756, 24, 23, 26, 0, -22}, // 0x6E 'n' - {6825, 21, 24, 24, 1, -22}, // 0x6F 'o' - {6888, 24, 32, 26, 0, -22}, // 0x70 'p' - {6984, 24, 32, 26, 1, -22}, // 0x71 'q' - {7080, 19, 23, 20, 0, -22}, // 0x72 'r' - {7135, 15, 24, 19, 2, -22}, // 0x73 's' - {7180, 14, 31, 16, 1, -29}, // 0x74 't' - {7235, 25, 23, 27, 0, -21}, // 0x75 'u' - {7307, 22, 23, 23, 0, -21}, // 0x76 'v' - {7371, 33, 23, 33, 0, -21}, // 0x77 'w' - {7466, 22, 22, 24, 1, -21}, // 0x78 'x' - {7527, 21, 31, 23, 0, -21}, // 0x79 'y' - {7609, 19, 22, 21, 1, -21}, // 0x7A 'z' - {7662, 14, 42, 19, 1, -33}, // 0x7B '{' - {7736, 4, 33, 10, 3, -32}, // 0x7C '|' - {7753, 14, 42, 19, 4, -33}, // 0x7D '}' - {7827, 22, 7, 24, 1, -14}}; // 0x7E '~' - -const GFXfont FreeSerifBold24pt7b PROGMEM = { - (uint8_t *)FreeSerifBold24pt7bBitmaps, - (GFXglyph *)FreeSerifBold24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 8519 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h deleted file mode 100644 index 2f1cf8f..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h +++ /dev/null @@ -1,204 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xF4, 0x92, 0x1F, 0xF0, 0xCF, 0x3C, 0xE3, 0x88, 0x13, 0x09, 0x84, - 0xC2, 0x47, 0xF9, 0x90, 0xC8, 0x4C, 0xFF, 0x13, 0x09, 0x0C, 0x86, 0x40, - 0x10, 0x38, 0xD6, 0x92, 0xD2, 0xF0, 0x7C, 0x3E, 0x17, 0x93, 0x93, 0xD6, - 0x7C, 0x10, 0x3C, 0x21, 0xCF, 0x0E, 0x24, 0x30, 0xA0, 0xC5, 0x03, 0x34, - 0xE7, 0x26, 0x40, 0xB9, 0x04, 0xC4, 0x23, 0x30, 0x8C, 0x84, 0x1C, 0x0F, - 0x00, 0xCC, 0x06, 0x60, 0x3E, 0x00, 0xE7, 0x8F, 0x18, 0x9C, 0x8C, 0xE4, - 0xE3, 0xC7, 0x9E, 0x3C, 0x72, 0xFD, 0xE0, 0xFF, 0x80, 0x32, 0x44, 0xCC, - 0xCC, 0xCC, 0xC4, 0x62, 0x10, 0x84, 0x22, 0x33, 0x33, 0x33, 0x32, 0x64, - 0x80, 0x31, 0x6B, 0xB1, 0x8E, 0xD6, 0x8C, 0x00, 0x08, 0x04, 0x02, 0x01, - 0x0F, 0xF8, 0x40, 0x20, 0x10, 0x08, 0x00, 0xDF, 0x95, 0x00, 0xFF, 0xFF, - 0x80, 0x0C, 0x21, 0x86, 0x10, 0xC3, 0x08, 0x61, 0x84, 0x30, 0xC0, 0x1C, - 0x33, 0x98, 0xDC, 0x7E, 0x3F, 0x1F, 0x8F, 0xC7, 0xE3, 0xB1, 0x98, 0xC3, - 0x80, 0x08, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0xBF, 0x3C, 0x3F, - 0x23, 0xC0, 0xE0, 0x70, 0x30, 0x38, 0x18, 0x18, 0x18, 0x5F, 0xDF, 0xE0, - 0x7C, 0x8E, 0x0E, 0x0E, 0x0C, 0x1E, 0x07, 0x03, 0x03, 0x02, 0xE6, 0xF8, - 0x06, 0x0E, 0x0E, 0x3E, 0x2E, 0x4E, 0x8E, 0x8E, 0xFF, 0xFF, 0x0E, 0x0E, - 0x3F, 0x7E, 0x40, 0x40, 0xF8, 0xFC, 0x1E, 0x06, 0x02, 0x02, 0xE4, 0xF8, - 0x07, 0x1C, 0x30, 0x70, 0xFC, 0xE6, 0xE7, 0xE7, 0xE7, 0x67, 0x66, 0x3C, - 0x7F, 0x3F, 0xA0, 0xD0, 0x40, 0x60, 0x30, 0x10, 0x18, 0x0C, 0x04, 0x06, - 0x03, 0x00, 0x3C, 0xC6, 0xC6, 0xC6, 0xFC, 0x7C, 0x3E, 0xCF, 0xC7, 0xC7, - 0xC6, 0x7C, 0x3E, 0x33, 0xB8, 0xDC, 0x7E, 0x3F, 0x1D, 0xCE, 0x7F, 0x07, - 0x07, 0x0F, 0x1C, 0x00, 0xFF, 0x80, 0x3F, 0xE0, 0xFF, 0x80, 0x37, 0xE5, - 0x40, 0x00, 0x00, 0x70, 0x78, 0x78, 0x78, 0x38, 0x03, 0x80, 0x3C, 0x03, - 0xC0, 0x30, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0xFF, 0xC0, 0xC0, 0x3C, 0x03, - 0xC0, 0x1C, 0x01, 0xC1, 0xE1, 0xE1, 0xE0, 0xE0, 0x00, 0x00, 0x3D, 0x9F, - 0x3E, 0x70, 0xE1, 0x04, 0x08, 0x00, 0x70, 0xE1, 0xC0, 0x0F, 0x81, 0x83, - 0x18, 0xC4, 0x89, 0x9C, 0x4C, 0xE4, 0x67, 0x22, 0x39, 0x22, 0x4F, 0xE3, - 0x00, 0x0C, 0x10, 0x1F, 0x00, 0x02, 0x00, 0x30, 0x01, 0xC0, 0x0E, 0x00, - 0xB8, 0x05, 0xC0, 0x4F, 0x02, 0x38, 0x3F, 0xE1, 0x07, 0x18, 0x3D, 0xE3, - 0xF0, 0xFF, 0x87, 0x1C, 0xE3, 0x9C, 0x73, 0x9C, 0x7F, 0x0E, 0x71, 0xC7, - 0x38, 0xE7, 0x1C, 0xE7, 0x7F, 0xC0, 0x1F, 0x26, 0x1D, 0xC1, 0xB0, 0x1E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x0E, 0x04, 0xE1, 0x0F, 0xC0, 0xFF, - 0x0E, 0x71, 0xC7, 0x38, 0x77, 0x0E, 0xE1, 0xDC, 0x3B, 0x87, 0x70, 0xCE, - 0x39, 0xC6, 0x7F, 0x80, 0xFF, 0xCE, 0x19, 0xC1, 0x38, 0x87, 0x30, 0xFE, - 0x1C, 0xC3, 0x88, 0x70, 0x2E, 0x0D, 0xC3, 0x7F, 0xE0, 0xFF, 0xDC, 0x37, - 0x05, 0xC4, 0x73, 0x1F, 0xC7, 0x31, 0xC4, 0x70, 0x1C, 0x07, 0x03, 0xE0, - 0x1F, 0x23, 0x0E, 0x70, 0x6E, 0x02, 0xE0, 0x0E, 0x00, 0xE1, 0xFE, 0x0E, - 0x60, 0xE7, 0x0E, 0x38, 0xE0, 0xF8, 0xF9, 0xF7, 0x0E, 0x70, 0xE7, 0x0E, - 0x70, 0xE7, 0xFE, 0x70, 0xE7, 0x0E, 0x70, 0xE7, 0x0E, 0x70, 0xEF, 0x9F, - 0xFB, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9D, 0xF0, 0x1F, 0x0E, 0x0E, 0x0E, - 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0xCE, 0xCC, 0x78, 0xF9, 0xF3, - 0x82, 0x1C, 0x20, 0xE2, 0x07, 0x20, 0x3F, 0x01, 0xDC, 0x0E, 0x70, 0x73, - 0xC3, 0x8F, 0x1C, 0x3D, 0xF3, 0xF0, 0xF8, 0x0E, 0x01, 0xC0, 0x38, 0x07, - 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x2E, 0x09, 0xC3, 0x7F, 0xE0, 0xF8, - 0x0F, 0x3C, 0x1E, 0x3C, 0x1E, 0x2E, 0x2E, 0x2E, 0x2E, 0x26, 0x4E, 0x27, - 0x4E, 0x27, 0x4E, 0x23, 0x8E, 0x23, 0x8E, 0x21, 0x0E, 0x71, 0x1F, 0xF0, - 0xEE, 0x09, 0xE1, 0x3E, 0x25, 0xE4, 0x9E, 0x91, 0xD2, 0x1E, 0x43, 0xC8, - 0x39, 0x03, 0x70, 0x20, 0x1F, 0x83, 0x0C, 0x70, 0xEE, 0x07, 0xE0, 0x7E, - 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x77, 0x0E, 0x30, 0xC1, 0xF8, 0xFF, 0x1C, - 0xE7, 0x1D, 0xC7, 0x71, 0xDC, 0xE7, 0xF1, 0xC0, 0x70, 0x1C, 0x07, 0x03, - 0xE0, 0x0F, 0x83, 0x9C, 0x70, 0xE6, 0x06, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, - 0x07, 0xE0, 0x76, 0x06, 0x30, 0xC1, 0x98, 0x0F, 0x00, 0x78, 0x03, 0xE0, - 0xFF, 0x07, 0x38, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x38, 0x7E, 0x07, 0x70, - 0x77, 0x87, 0x3C, 0x71, 0xEF, 0x8F, 0x39, 0x47, 0xC1, 0xC0, 0xF0, 0x7C, - 0x3E, 0x0F, 0x83, 0xC3, 0xC6, 0xBC, 0xFF, 0xFC, 0xE3, 0x8E, 0x10, 0xE0, - 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xF0, - 0xF8, 0xEE, 0x09, 0xC1, 0x38, 0x27, 0x04, 0xE0, 0x9C, 0x13, 0x82, 0x70, - 0x4E, 0x08, 0xE2, 0x0F, 0x80, 0xFC, 0x7B, 0xC1, 0x0E, 0x08, 0x70, 0x81, - 0xC4, 0x0E, 0x20, 0x7A, 0x01, 0xD0, 0x0E, 0x80, 0x38, 0x01, 0xC0, 0x04, - 0x00, 0x20, 0x00, 0xFD, 0xFB, 0xDC, 0x38, 0x43, 0x87, 0x10, 0xE1, 0xC4, - 0x38, 0xF2, 0x07, 0x2E, 0x81, 0xD3, 0xA0, 0x34, 0x70, 0x0E, 0x1C, 0x03, - 0x87, 0x00, 0x60, 0x80, 0x10, 0x20, 0xFE, 0xF3, 0xC3, 0x0F, 0x10, 0x39, - 0x00, 0xF0, 0x03, 0x80, 0x1E, 0x01, 0x70, 0x09, 0xC0, 0x8F, 0x08, 0x3D, - 0xF3, 0xF0, 0xFC, 0x7B, 0xC1, 0x8E, 0x08, 0x38, 0x81, 0xE8, 0x07, 0x40, - 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x1F, 0x00, 0xFF, 0xD8, - 0x72, 0x1E, 0x43, 0x80, 0xE0, 0x1C, 0x07, 0x01, 0xC0, 0x38, 0x2E, 0x0F, - 0x83, 0x7F, 0xE0, 0xFC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xF0, 0xC1, - 0x06, 0x18, 0x20, 0xC3, 0x04, 0x18, 0x60, 0x83, 0x0C, 0xF3, 0x33, 0x33, - 0x33, 0x33, 0x33, 0x33, 0xF0, 0x18, 0x1C, 0x34, 0x26, 0x62, 0x43, 0xC1, - 0xFF, 0x80, 0xC6, 0x30, 0x7C, 0x63, 0xB1, 0xC0, 0xE1, 0xF3, 0x3B, 0x9D, - 0xCE, 0xFF, 0x80, 0xF0, 0x1C, 0x07, 0x01, 0xDC, 0x7B, 0x9C, 0x77, 0x1D, - 0xC7, 0x71, 0xDC, 0x77, 0x39, 0x3C, 0x3C, 0xED, 0x9F, 0x0E, 0x1C, 0x38, - 0x39, 0x3C, 0x07, 0x80, 0xE0, 0x38, 0xEE, 0x77, 0xB8, 0xEE, 0x3B, 0x8E, - 0xE3, 0xB8, 0xE7, 0x78, 0xEF, 0x3C, 0x66, 0xE6, 0xFE, 0xE0, 0xE0, 0xE0, - 0x72, 0x3C, 0x3E, 0xED, 0xC7, 0xC7, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC7, - 0xC0, 0x31, 0xDF, 0xBF, 0x7E, 0xE7, 0x90, 0x60, 0xFC, 0xFE, 0x0C, 0x17, - 0xC0, 0xF0, 0x1C, 0x07, 0x01, 0xDC, 0x7B, 0x9C, 0xE7, 0x39, 0xCE, 0x73, - 0x9C, 0xE7, 0x3B, 0xFF, 0x73, 0x9D, 0xE7, 0x39, 0xCE, 0x73, 0x9D, 0xF0, - 0x1C, 0x71, 0xCF, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x7D, 0xBE, - 0xF0, 0x1C, 0x07, 0x01, 0xCE, 0x71, 0x1C, 0x87, 0x41, 0xF8, 0x77, 0x1C, - 0xE7, 0x1B, 0xEF, 0xF3, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9D, 0xF0, 0xF7, - 0x38, 0xF7, 0xB9, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, - 0x39, 0xCE, 0xFF, 0xFE, 0xF7, 0x1E, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, - 0x39, 0xCE, 0xFF, 0xC0, 0x3E, 0x31, 0xB8, 0xFC, 0x7E, 0x3F, 0x1F, 0x8E, - 0xC6, 0x3E, 0x00, 0xF7, 0x1E, 0xE7, 0x1D, 0xC7, 0x71, 0xDC, 0x77, 0x1D, - 0xCE, 0x7F, 0x1C, 0x07, 0x01, 0xC0, 0xF8, 0x00, 0x3C, 0x9C, 0xEE, 0x3B, - 0x8E, 0xE3, 0xB8, 0xEE, 0x39, 0xCE, 0x3F, 0x80, 0xE0, 0x38, 0x0E, 0x07, - 0xC0, 0xF7, 0x7B, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0xF8, 0x7E, 0x73, - 0xC7, 0x8E, 0x39, 0xB0, 0x10, 0xCF, 0x9C, 0x71, 0xC7, 0x1C, 0x71, 0xD3, - 0x80, 0xF7, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x3F, - 0xC0, 0xFB, 0xB8, 0x8C, 0x87, 0x43, 0xC0, 0xE0, 0x70, 0x10, 0x08, 0x00, - 0xF7, 0xB6, 0x31, 0x73, 0xA3, 0x3A, 0x3D, 0xA3, 0xDC, 0x18, 0xC1, 0x88, - 0x10, 0x80, 0xFB, 0xB8, 0x8E, 0x83, 0x81, 0xC0, 0xF0, 0x98, 0xCE, 0xEF, - 0x80, 0xF7, 0x62, 0x72, 0x34, 0x34, 0x3C, 0x18, 0x18, 0x10, 0x10, 0x10, - 0xE0, 0xE0, 0xFF, 0x1C, 0x70, 0xE3, 0x87, 0x1C, 0x71, 0xFE, 0x19, 0x8C, - 0x63, 0x18, 0xCC, 0x61, 0x8C, 0x63, 0x18, 0xC3, 0xFF, 0xF8, 0xC3, 0x18, - 0xC6, 0x31, 0x86, 0x33, 0x18, 0xC6, 0x31, 0x98, 0xF0, 0x8E}; - -const GFXglyph FreeSerifBold9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 3, 12, 6, 1, -11}, // 0x21 '!' - {5, 6, 5, 10, 2, -11}, // 0x22 '"' - {9, 9, 13, 9, 0, -12}, // 0x23 '#' - {24, 8, 14, 9, 1, -12}, // 0x24 '$' - {38, 14, 12, 18, 2, -11}, // 0x25 '%' - {59, 13, 12, 15, 1, -11}, // 0x26 '&' - {79, 2, 5, 5, 1, -11}, // 0x27 ''' - {81, 4, 15, 6, 1, -11}, // 0x28 '(' - {89, 4, 15, 6, 1, -11}, // 0x29 ')' - {97, 7, 7, 9, 2, -11}, // 0x2A '*' - {104, 9, 9, 12, 1, -8}, // 0x2B '+' - {115, 3, 6, 4, 1, -2}, // 0x2C ',' - {118, 4, 2, 6, 1, -4}, // 0x2D '-' - {119, 3, 3, 4, 1, -2}, // 0x2E '.' - {121, 6, 13, 5, 0, -11}, // 0x2F '/' - {131, 9, 12, 9, 0, -11}, // 0x30 '0' - {145, 6, 12, 9, 1, -11}, // 0x31 '1' - {154, 9, 12, 9, 0, -11}, // 0x32 '2' - {168, 8, 12, 9, 0, -11}, // 0x33 '3' - {180, 8, 12, 9, 1, -11}, // 0x34 '4' - {192, 8, 12, 9, 1, -11}, // 0x35 '5' - {204, 8, 12, 9, 1, -11}, // 0x36 '6' - {216, 9, 12, 9, 0, -11}, // 0x37 '7' - {230, 8, 12, 9, 1, -11}, // 0x38 '8' - {242, 9, 12, 9, 0, -11}, // 0x39 '9' - {256, 3, 9, 6, 1, -8}, // 0x3A ':' - {260, 3, 12, 6, 2, -8}, // 0x3B ';' - {265, 10, 10, 12, 1, -9}, // 0x3C '<' - {278, 10, 5, 12, 1, -6}, // 0x3D '=' - {285, 10, 10, 12, 1, -8}, // 0x3E '>' - {298, 7, 12, 9, 1, -11}, // 0x3F '?' - {309, 13, 12, 17, 2, -11}, // 0x40 '@' - {329, 13, 12, 13, 0, -11}, // 0x41 'A' - {349, 11, 12, 12, 0, -11}, // 0x42 'B' - {366, 11, 12, 13, 1, -11}, // 0x43 'C' - {383, 11, 12, 13, 1, -11}, // 0x44 'D' - {400, 11, 12, 12, 1, -11}, // 0x45 'E' - {417, 10, 12, 11, 1, -11}, // 0x46 'F' - {432, 12, 12, 14, 1, -11}, // 0x47 'G' - {450, 12, 12, 14, 1, -11}, // 0x48 'H' - {468, 5, 12, 7, 1, -11}, // 0x49 'I' - {476, 8, 14, 9, 0, -11}, // 0x4A 'J' - {490, 13, 12, 14, 1, -11}, // 0x4B 'K' - {510, 11, 12, 12, 1, -11}, // 0x4C 'L' - {527, 16, 12, 17, 0, -11}, // 0x4D 'M' - {551, 11, 12, 13, 1, -11}, // 0x4E 'N' - {568, 12, 12, 14, 1, -11}, // 0x4F 'O' - {586, 10, 12, 11, 1, -11}, // 0x50 'P' - {601, 12, 15, 14, 1, -11}, // 0x51 'Q' - {624, 12, 12, 13, 1, -11}, // 0x52 'R' - {642, 8, 12, 10, 1, -11}, // 0x53 'S' - {654, 12, 12, 12, 0, -11}, // 0x54 'T' - {672, 11, 12, 13, 1, -11}, // 0x55 'U' - {689, 13, 13, 13, 0, -11}, // 0x56 'V' - {711, 18, 12, 18, 0, -11}, // 0x57 'W' - {738, 13, 12, 13, 0, -11}, // 0x58 'X' - {758, 13, 12, 13, 0, -11}, // 0x59 'Y' - {778, 11, 12, 12, 1, -11}, // 0x5A 'Z' - {795, 4, 15, 6, 1, -11}, // 0x5B '[' - {803, 6, 13, 5, 0, -11}, // 0x5C '\' - {813, 4, 15, 6, 1, -11}, // 0x5D ']' - {821, 8, 7, 10, 1, -11}, // 0x5E '^' - {828, 9, 1, 9, 0, 3}, // 0x5F '_' - {830, 4, 3, 6, 0, -12}, // 0x60 '`' - {832, 9, 9, 9, 0, -8}, // 0x61 'a' - {843, 10, 12, 10, 0, -11}, // 0x62 'b' - {858, 7, 9, 8, 0, -8}, // 0x63 'c' - {866, 10, 12, 10, 0, -11}, // 0x64 'd' - {881, 8, 9, 8, 0, -8}, // 0x65 'e' - {890, 7, 12, 7, 0, -11}, // 0x66 'f' - {901, 7, 13, 9, 1, -8}, // 0x67 'g' - {913, 10, 12, 10, 0, -11}, // 0x68 'h' - {928, 5, 12, 5, 0, -11}, // 0x69 'i' - {936, 6, 16, 7, 0, -11}, // 0x6A 'j' - {948, 10, 12, 10, 0, -11}, // 0x6B 'k' - {963, 5, 12, 5, 0, -11}, // 0x6C 'l' - {971, 15, 9, 15, 0, -8}, // 0x6D 'm' - {988, 10, 9, 10, 0, -8}, // 0x6E 'n' - {1000, 9, 9, 9, 0, -8}, // 0x6F 'o' - {1011, 10, 13, 10, 0, -8}, // 0x70 'p' - {1028, 10, 13, 10, 0, -8}, // 0x71 'q' - {1045, 8, 9, 8, 0, -8}, // 0x72 'r' - {1054, 5, 9, 7, 1, -8}, // 0x73 's' - {1060, 6, 11, 6, 0, -10}, // 0x74 't' - {1069, 10, 9, 10, 0, -8}, // 0x75 'u' - {1081, 9, 9, 9, 0, -8}, // 0x76 'v' - {1092, 12, 9, 13, 0, -8}, // 0x77 'w' - {1106, 9, 9, 9, 0, -8}, // 0x78 'x' - {1117, 8, 13, 9, 0, -8}, // 0x79 'y' - {1130, 7, 9, 8, 1, -8}, // 0x7A 'z' - {1138, 5, 16, 7, 0, -12}, // 0x7B '{' - {1148, 1, 13, 4, 1, -11}, // 0x7C '|' - {1150, 5, 16, 7, 2, -12}, // 0x7D '}' - {1160, 8, 2, 9, 1, -4}}; // 0x7E '~' - -const GFXfont FreeSerifBold9pt7b PROGMEM = { - (uint8_t *)FreeSerifBold9pt7bBitmaps, (GFXglyph *)FreeSerifBold9pt7bGlyphs, - 0x20, 0x7E, 22}; - -// Approx. 1834 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h deleted file mode 100644 index d6674ce..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h +++ /dev/null @@ -1,294 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic12pt7bBitmaps[] PROGMEM = { - 0x07, 0x07, 0x07, 0x0F, 0x0E, 0x0E, 0x0C, 0x0C, 0x08, 0x18, 0x10, 0x00, - 0x00, 0x60, 0xF0, 0xF0, 0x60, 0x61, 0xF1, 0xF8, 0xF8, 0x6C, 0x34, 0x12, - 0x08, 0x01, 0x8C, 0x06, 0x60, 0x31, 0x80, 0xCC, 0x06, 0x30, 0xFF, 0xF0, - 0xC6, 0x03, 0x18, 0x0C, 0xC0, 0x63, 0x0F, 0xFF, 0x0C, 0x60, 0x33, 0x01, - 0x8C, 0x06, 0x30, 0x19, 0x80, 0x00, 0x80, 0x08, 0x07, 0xC1, 0x96, 0x31, - 0x33, 0x13, 0x3A, 0x23, 0xE0, 0x1E, 0x01, 0xF0, 0x07, 0x80, 0x7C, 0x05, - 0xC4, 0xCC, 0x48, 0xCC, 0x8C, 0xF8, 0x83, 0x30, 0x1E, 0x01, 0x00, 0x00, - 0x02, 0x07, 0x83, 0x03, 0x9F, 0x81, 0xC4, 0x20, 0x71, 0x10, 0x3C, 0x44, - 0x0E, 0x22, 0x03, 0x88, 0x80, 0xE4, 0x40, 0x1E, 0x31, 0xE0, 0x08, 0xE4, - 0x06, 0x71, 0x01, 0x3C, 0x40, 0x8E, 0x10, 0x23, 0x88, 0x10, 0xE2, 0x04, - 0x39, 0x02, 0x07, 0x80, 0x00, 0xF0, 0x01, 0x98, 0x03, 0x98, 0x03, 0x98, - 0x03, 0xB0, 0x03, 0xE0, 0x03, 0x80, 0x0F, 0x9F, 0x19, 0xCE, 0x31, 0xCC, - 0x61, 0xC8, 0xE1, 0xC8, 0xE0, 0xF0, 0xE0, 0xE0, 0xF0, 0x70, 0x78, 0x79, - 0x3F, 0xBE, 0x7F, 0xED, 0x20, 0x02, 0x08, 0x20, 0xC3, 0x0E, 0x18, 0x30, - 0xE1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x20, 0x40, 0x80, 0x81, 0x01, 0x00, - 0x10, 0x10, 0x20, 0x20, 0x40, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x70, 0xE1, - 0x83, 0x0C, 0x18, 0x61, 0x86, 0x00, 0x00, 0x0C, 0x33, 0x6C, 0x9B, 0xAE, - 0x1C, 0x3F, 0xEC, 0x9B, 0x36, 0x0C, 0x02, 0x00, 0x06, 0x00, 0x60, 0x06, - 0x00, 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x06, 0x00, 0x60, 0x06, - 0x00, 0x60, 0x31, 0xCE, 0x31, 0x08, 0x98, 0xFF, 0xFF, 0xC0, 0x6F, 0xF6, - 0x01, 0x80, 0x60, 0x30, 0x0C, 0x07, 0x01, 0x80, 0xE0, 0x30, 0x1C, 0x06, - 0x01, 0x80, 0xC0, 0x30, 0x18, 0x06, 0x03, 0x00, 0x03, 0x81, 0xC8, 0x71, - 0x1C, 0x33, 0x86, 0xE1, 0xDC, 0x3B, 0x87, 0xE0, 0xFC, 0x3B, 0x87, 0x70, - 0xEC, 0x39, 0x87, 0x31, 0xC2, 0x30, 0x3C, 0x00, 0x01, 0xC3, 0xF0, 0x38, - 0x0E, 0x03, 0x81, 0xE0, 0x70, 0x1C, 0x0F, 0x03, 0x80, 0xE0, 0x38, 0x1E, - 0x07, 0x01, 0xC0, 0xF0, 0xFF, 0x80, 0x07, 0x81, 0xF8, 0x47, 0x90, 0x70, - 0x0E, 0x01, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x60, 0x18, 0x06, 0x01, 0x80, - 0x40, 0x8F, 0xF3, 0xFC, 0xFF, 0x80, 0x07, 0xC3, 0x3C, 0x03, 0x80, 0x70, - 0x0C, 0x03, 0x81, 0xC0, 0xFC, 0x07, 0xC0, 0x78, 0x07, 0x00, 0xE0, 0x1C, - 0x03, 0x30, 0xE7, 0x10, 0x7C, 0x00, 0x00, 0x10, 0x01, 0x80, 0x3C, 0x03, - 0xE0, 0x2E, 0x02, 0x70, 0x23, 0x82, 0x38, 0x21, 0xC2, 0x0E, 0x1F, 0xF9, - 0xFF, 0xC0, 0x38, 0x01, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0xF0, 0x7E, 0x0F, - 0xE0, 0x80, 0x08, 0x01, 0xE0, 0x1F, 0x83, 0xF8, 0x03, 0xC0, 0x1C, 0x00, - 0xC0, 0x0C, 0x00, 0xC0, 0x08, 0x61, 0x8F, 0x30, 0x7C, 0x00, 0x00, 0x60, - 0x78, 0x1C, 0x0F, 0x01, 0xC0, 0x70, 0x1F, 0xC3, 0x8C, 0xE1, 0xDC, 0x3B, - 0x87, 0x61, 0xEC, 0x3D, 0x87, 0x31, 0xE2, 0x38, 0x3C, 0x00, 0x3F, 0xEF, - 0xF9, 0xFF, 0x60, 0xC8, 0x18, 0x06, 0x00, 0x80, 0x30, 0x0C, 0x01, 0x80, - 0x60, 0x1C, 0x03, 0x00, 0xC0, 0x18, 0x06, 0x00, 0x03, 0x81, 0x88, 0x61, - 0x8C, 0x31, 0x86, 0x38, 0xC7, 0xB0, 0x78, 0x0F, 0x86, 0x71, 0x87, 0x60, - 0x6C, 0x0D, 0x81, 0xB0, 0x63, 0x18, 0x3E, 0x00, 0x07, 0x81, 0xC8, 0x71, - 0x8E, 0x33, 0xC6, 0x70, 0xCE, 0x39, 0xC7, 0x38, 0xE3, 0x38, 0x3F, 0x01, - 0xC0, 0x38, 0x0E, 0x03, 0x81, 0xC0, 0xE0, 0x00, 0x0C, 0x3C, 0x78, 0x60, - 0x00, 0x00, 0x00, 0x61, 0xE3, 0xC3, 0x00, 0x0E, 0x0F, 0x0F, 0x0E, 0x00, - 0x00, 0x00, 0x00, 0x38, 0x38, 0x38, 0x18, 0x10, 0x20, 0x40, 0x00, 0x10, - 0x07, 0x01, 0xF0, 0x7C, 0x3F, 0x0F, 0x80, 0xE0, 0x0F, 0x80, 0x3E, 0x00, - 0xF8, 0x03, 0xE0, 0x07, 0x00, 0x10, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0x80, 0x07, 0x00, 0x3F, 0x00, 0x3E, 0x00, 0x7C, 0x00, - 0xF8, 0x01, 0xE0, 0x1F, 0x07, 0xE0, 0xF8, 0x1F, 0x01, 0xE0, 0x0C, 0x00, - 0x00, 0x1E, 0x19, 0x8C, 0xE6, 0x70, 0x38, 0x38, 0x1C, 0x18, 0x18, 0x08, - 0x08, 0x00, 0x00, 0x03, 0x03, 0xC1, 0xE0, 0x60, 0x00, 0x03, 0xF0, 0x07, - 0x06, 0x06, 0x00, 0x86, 0x0E, 0x66, 0x0D, 0xDB, 0x0C, 0xE7, 0x06, 0x33, - 0x83, 0x31, 0xC3, 0x18, 0xE1, 0x8C, 0x70, 0xCC, 0x4C, 0x66, 0x46, 0x1F, - 0xC1, 0x80, 0x00, 0x30, 0x10, 0x07, 0xF0, 0x00, 0x10, 0x00, 0x30, 0x00, - 0x70, 0x00, 0x70, 0x00, 0xF0, 0x01, 0xF0, 0x01, 0x78, 0x03, 0x78, 0x02, - 0x38, 0x04, 0x38, 0x0C, 0x38, 0x0F, 0xF8, 0x18, 0x3C, 0x30, 0x3C, 0x20, - 0x3C, 0x60, 0x3C, 0xF8, 0x7F, 0x1F, 0xFC, 0x07, 0x9E, 0x07, 0x0F, 0x07, - 0x0F, 0x0F, 0x0F, 0x0F, 0x1E, 0x0E, 0x3C, 0x0F, 0xE0, 0x1E, 0x3C, 0x1E, - 0x1E, 0x1C, 0x1E, 0x3C, 0x1E, 0x3C, 0x1E, 0x3C, 0x3E, 0x38, 0x3C, 0x7C, - 0x78, 0xFF, 0xE0, 0x01, 0xF2, 0x0E, 0x1C, 0x38, 0x18, 0xE0, 0x33, 0xC0, - 0x4F, 0x00, 0x9E, 0x00, 0x7C, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, - 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x1E, 0x04, 0x1E, 0x30, 0x0F, 0x80, 0x1F, - 0xFC, 0x01, 0xE3, 0xC0, 0x70, 0x78, 0x1C, 0x0E, 0x0F, 0x03, 0xC3, 0xC0, - 0xF0, 0xE0, 0x3C, 0x38, 0x0F, 0x1E, 0x03, 0xC7, 0x81, 0xF1, 0xC0, 0x78, - 0xF0, 0x1E, 0x3C, 0x0F, 0x0F, 0x03, 0xC3, 0x81, 0xC1, 0xE1, 0xE0, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0x83, 0xC1, 0xC1, 0xC0, 0x40, 0xE0, 0x20, 0xF0, - 0x00, 0x78, 0xC0, 0x38, 0x40, 0x1F, 0xE0, 0x1E, 0x70, 0x0F, 0x18, 0x07, - 0x08, 0x03, 0x84, 0x03, 0xC0, 0x61, 0xE0, 0x20, 0xE0, 0x30, 0xF8, 0x78, - 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x07, 0x87, 0x07, 0x02, 0x07, 0x02, 0x0F, - 0x00, 0x0F, 0x18, 0x0E, 0x10, 0x0F, 0xF0, 0x1E, 0x70, 0x1E, 0x30, 0x1C, - 0x20, 0x1C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x7C, 0x00, 0xFE, - 0x00, 0x01, 0xF9, 0x03, 0xC3, 0x83, 0x81, 0xC3, 0x80, 0x43, 0xC0, 0x23, - 0xC0, 0x01, 0xE0, 0x01, 0xF0, 0x00, 0xF0, 0x3F, 0xF8, 0x0F, 0x3C, 0x07, - 0x9E, 0x03, 0xCF, 0x01, 0xC3, 0x80, 0xE1, 0xE0, 0xF0, 0x78, 0x70, 0x0F, - 0xE0, 0x00, 0x1F, 0xE7, 0xF0, 0x78, 0x3C, 0x07, 0x83, 0xC0, 0x70, 0x3C, - 0x0F, 0x03, 0x80, 0xF0, 0x78, 0x0E, 0x07, 0x80, 0xE0, 0x70, 0x1F, 0xFF, - 0x01, 0xE0, 0xF0, 0x1C, 0x0F, 0x03, 0xC0, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, - 0xE0, 0x38, 0x1E, 0x07, 0xC3, 0xE0, 0xFE, 0x7F, 0x00, 0x1F, 0xC1, 0xE0, - 0x70, 0x1C, 0x0F, 0x03, 0xC0, 0xE0, 0x38, 0x1E, 0x07, 0x81, 0xC0, 0x70, - 0x3C, 0x0F, 0x03, 0x81, 0xF0, 0xFE, 0x00, 0x01, 0xFC, 0x03, 0xC0, 0x0F, - 0x00, 0x38, 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x3C, 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x0E, 0x70, 0x3B, 0xC0, 0xCE, - 0x01, 0xF0, 0x00, 0x1F, 0xEF, 0x83, 0xC1, 0x81, 0xC1, 0x80, 0xE1, 0x80, - 0xF1, 0x80, 0x79, 0x00, 0x39, 0x00, 0x1F, 0x80, 0x1F, 0xE0, 0x0F, 0x70, - 0x07, 0x3C, 0x07, 0x8E, 0x03, 0xC7, 0x01, 0xE3, 0xC0, 0xE0, 0xE0, 0xF8, - 0x78, 0xFE, 0xFE, 0x00, 0x1F, 0xE0, 0x0F, 0x00, 0x1C, 0x00, 0x38, 0x00, - 0xF0, 0x01, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x70, - 0x00, 0xE0, 0x03, 0xC0, 0x27, 0x00, 0xCE, 0x03, 0x3C, 0x1E, 0xFF, 0xFC, - 0x0F, 0x80, 0x7E, 0x0F, 0x00, 0xF0, 0x1E, 0x03, 0xE0, 0x3C, 0x0F, 0x80, - 0xB8, 0x17, 0x01, 0x70, 0x5E, 0x02, 0xF1, 0xBC, 0x05, 0xE2, 0x70, 0x11, - 0xC8, 0xE0, 0x23, 0xB3, 0xC0, 0x47, 0x47, 0x81, 0x0F, 0x8E, 0x02, 0x1E, - 0x1C, 0x04, 0x38, 0x78, 0x08, 0x70, 0xF0, 0x30, 0xC3, 0xE0, 0xF9, 0x8F, - 0xE0, 0x1F, 0x03, 0xE0, 0xF0, 0x38, 0x1E, 0x02, 0x03, 0xE0, 0xC0, 0xBC, - 0x10, 0x13, 0xC2, 0x02, 0x78, 0x40, 0x47, 0x90, 0x10, 0xF2, 0x02, 0x0F, - 0x40, 0x41, 0xE8, 0x18, 0x1E, 0x02, 0x03, 0xC0, 0x40, 0x38, 0x08, 0x06, - 0x03, 0x00, 0x40, 0x10, 0x08, 0x00, 0x01, 0xF8, 0x07, 0x1C, 0x0E, 0x0E, - 0x1E, 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x78, 0x0F, 0x78, 0x0F, 0xF8, 0x1F, - 0xF0, 0x1E, 0xF0, 0x1E, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x78, 0x70, 0x70, - 0x38, 0xE0, 0x1F, 0x80, 0x1F, 0xFC, 0x07, 0x9E, 0x07, 0x0F, 0x07, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0E, 0x1E, 0x0E, 0x3C, 0x1F, 0xF0, 0x1E, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x7C, 0x00, - 0xFE, 0x00, 0x01, 0xF8, 0x07, 0x1C, 0x0E, 0x0E, 0x1E, 0x0F, 0x3C, 0x0F, - 0x3C, 0x0F, 0x78, 0x0F, 0x78, 0x1F, 0xF8, 0x1F, 0xF0, 0x1E, 0xF0, 0x1E, - 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x78, 0x70, 0x70, 0x39, 0xC0, 0x0E, 0x00, - 0x08, 0x02, 0x3F, 0x04, 0x7F, 0xF8, 0x83, 0xF0, 0x1F, 0xF8, 0x07, 0x9E, - 0x07, 0x8F, 0x07, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x1E, 0x0E, 0x3C, - 0x1F, 0xF0, 0x1E, 0xF0, 0x1C, 0xF0, 0x3C, 0xF0, 0x3C, 0x78, 0x3C, 0x78, - 0x3C, 0x78, 0x7C, 0x3C, 0xFE, 0x3E, 0x07, 0x91, 0xC7, 0x18, 0x73, 0x82, - 0x38, 0x23, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x01, 0xE0, 0x1E, - 0x40, 0xE4, 0x0E, 0x60, 0xCE, 0x1C, 0x9F, 0x00, 0x7F, 0xFE, 0xE7, 0x9D, - 0x0E, 0x16, 0x3C, 0x20, 0x78, 0x40, 0xE0, 0x01, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x1C, 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0xFF, 0x00, 0x7F, 0x1F, 0x3C, 0x0E, 0x38, 0x04, 0x38, 0x0C, - 0x78, 0x08, 0x78, 0x08, 0x70, 0x08, 0x70, 0x10, 0xF0, 0x10, 0xF0, 0x10, - 0xF0, 0x10, 0xF0, 0x20, 0xF0, 0x20, 0xF0, 0x20, 0xF0, 0x40, 0x78, 0xC0, - 0x3F, 0x00, 0xFF, 0x1F, 0x3C, 0x06, 0x3C, 0x04, 0x3C, 0x08, 0x3C, 0x08, - 0x3C, 0x10, 0x1C, 0x20, 0x1C, 0x20, 0x1E, 0x40, 0x1E, 0x80, 0x1E, 0x80, - 0x1F, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x08, 0x00, 0xFE, 0x7C, - 0x79, 0xE1, 0xC1, 0x8F, 0x0E, 0x08, 0x78, 0x70, 0x43, 0xC7, 0x84, 0x1E, - 0x3E, 0x20, 0x72, 0xF2, 0x03, 0x97, 0x90, 0x1D, 0x1D, 0x00, 0xE8, 0xE8, - 0x07, 0x87, 0x80, 0x3C, 0x3C, 0x01, 0xC1, 0xC0, 0x0E, 0x0E, 0x00, 0x20, - 0x60, 0x01, 0x02, 0x00, 0x1F, 0xCF, 0x83, 0xC1, 0x81, 0xE1, 0x80, 0x71, - 0x80, 0x39, 0x80, 0x1F, 0x80, 0x07, 0x80, 0x03, 0x80, 0x01, 0xE0, 0x01, - 0xF0, 0x00, 0xB8, 0x00, 0x9C, 0x00, 0x8F, 0x00, 0x83, 0x80, 0xC1, 0xC0, - 0xE0, 0xF0, 0xF9, 0xFE, 0x00, 0xFE, 0x7C, 0xE0, 0x63, 0x81, 0x0F, 0x08, - 0x1C, 0x40, 0x71, 0x01, 0xE8, 0x03, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xE0, - 0x07, 0x80, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0F, 0x00, 0xFF, 0x00, 0x1F, - 0xFE, 0x38, 0x78, 0x60, 0xF1, 0x83, 0xC2, 0x0F, 0x00, 0x1E, 0x00, 0x78, - 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x47, - 0x81, 0x1F, 0x06, 0x3C, 0x3C, 0xFF, 0xF0, 0x07, 0xC1, 0x80, 0xE0, 0x30, - 0x0C, 0x03, 0x01, 0xC0, 0x60, 0x18, 0x06, 0x03, 0x80, 0xC0, 0x30, 0x0C, - 0x07, 0x01, 0xC0, 0x60, 0x18, 0x0E, 0x03, 0xE0, 0xC3, 0x06, 0x18, 0x61, - 0x83, 0x0C, 0x30, 0xC1, 0x86, 0x18, 0x60, 0xC3, 0x0F, 0x81, 0xC0, 0xE0, - 0x60, 0x30, 0x18, 0x1C, 0x0C, 0x06, 0x03, 0x03, 0x81, 0x80, 0xC0, 0x60, - 0x70, 0x38, 0x18, 0x0C, 0x0E, 0x1F, 0x00, 0x0C, 0x07, 0x81, 0xE0, 0xDC, - 0x33, 0x18, 0xC6, 0x1B, 0x06, 0xC0, 0xC0, 0xFF, 0xF0, 0xC7, 0x0C, 0x30, - 0x07, 0x70, 0xCE, 0x1C, 0xE3, 0x8E, 0x70, 0xC7, 0x0C, 0x71, 0xCE, 0x1C, - 0xE1, 0x8E, 0x79, 0xE9, 0xA7, 0x1C, 0x02, 0x07, 0xC0, 0x38, 0x06, 0x01, - 0xC0, 0x38, 0x06, 0x71, 0xF7, 0x38, 0xE7, 0x1C, 0xC3, 0xB8, 0x77, 0x1C, - 0xE3, 0xB8, 0xE7, 0x18, 0xE6, 0x0F, 0x80, 0x07, 0x0C, 0xCE, 0x66, 0x07, - 0x03, 0x83, 0x81, 0xC0, 0xE0, 0x70, 0xBC, 0x87, 0x80, 0x00, 0x08, 0x03, - 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x70, 0x01, 0xC0, 0x77, 0x03, 0x3C, 0x18, - 0xE0, 0xE3, 0x87, 0x0E, 0x1C, 0x70, 0x71, 0xC3, 0x87, 0x0E, 0x3C, 0x38, - 0xE8, 0xE5, 0xA1, 0xE7, 0x00, 0x07, 0x0C, 0xCE, 0x66, 0x37, 0x33, 0xBB, - 0xB1, 0xE0, 0xE0, 0x70, 0xB8, 0x87, 0x80, 0x00, 0x38, 0x01, 0xB0, 0x0C, - 0xC0, 0x30, 0x01, 0xC0, 0x07, 0x00, 0x7E, 0x00, 0xE0, 0x03, 0x80, 0x0E, - 0x00, 0x30, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x03, 0x80, 0x0E, - 0x00, 0x38, 0x00, 0xC0, 0x33, 0x00, 0xD8, 0x01, 0xC0, 0x00, 0x03, 0x80, - 0x73, 0xC7, 0x1C, 0x38, 0xE1, 0xCF, 0x06, 0x70, 0x1E, 0x01, 0x00, 0x1C, - 0x00, 0xF8, 0x07, 0xF0, 0xC7, 0x8C, 0x0C, 0x60, 0x63, 0x86, 0x07, 0xE0, - 0x01, 0x00, 0xF8, 0x01, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x31, 0xC3, - 0xBE, 0x1E, 0x70, 0xE3, 0x8F, 0x38, 0x71, 0xC3, 0x8E, 0x1C, 0xE1, 0xC7, - 0x0E, 0x3A, 0x71, 0xD3, 0x0F, 0x00, 0x1C, 0x71, 0xC0, 0x00, 0x6F, 0x8E, - 0x31, 0xC7, 0x18, 0x63, 0x8E, 0xBC, 0xE0, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0x00, 0x00, 0x0F, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x70, 0x0E, 0x01, 0xC0, - 0x38, 0x0E, 0x01, 0xC0, 0x38, 0x06, 0x01, 0xC3, 0x38, 0x6E, 0x07, 0x80, - 0x01, 0x00, 0xF8, 0x01, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x33, 0xE3, - 0x8C, 0x1C, 0xC0, 0xE4, 0x06, 0x40, 0x7E, 0x03, 0xF0, 0x1D, 0x81, 0xCE, - 0x0E, 0x72, 0x71, 0xA3, 0x8E, 0x00, 0x06, 0x7C, 0x70, 0xE1, 0xC3, 0x0E, - 0x1C, 0x38, 0x61, 0xC3, 0x87, 0x0C, 0x38, 0x72, 0xE9, 0xE0, 0x3C, 0x73, - 0xC7, 0x7D, 0x71, 0xE7, 0x9C, 0xF1, 0xCE, 0x3C, 0xF3, 0x8E, 0x39, 0xC3, - 0x8E, 0x71, 0xC3, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xD7, 0x1C, 0x7B, 0x8E, - 0x1C, 0x3C, 0xF1, 0xD7, 0x1E, 0x73, 0xCE, 0x3C, 0xE3, 0x8E, 0x39, 0xC7, - 0x9C, 0x71, 0xC7, 0x1D, 0x71, 0xEE, 0x1C, 0x0F, 0x06, 0x63, 0x9D, 0xC7, - 0x71, 0xF8, 0x7E, 0x3F, 0x8E, 0xE3, 0xB9, 0xC6, 0x60, 0xF0, 0x0F, 0x38, - 0x1F, 0x70, 0x71, 0xC1, 0xC7, 0x0E, 0x1C, 0x38, 0xF0, 0xE3, 0x83, 0x8E, - 0x1C, 0x70, 0x71, 0xC1, 0xCE, 0x07, 0xE0, 0x38, 0x00, 0xE0, 0x03, 0x80, - 0x3F, 0x00, 0x07, 0x70, 0xCE, 0x18, 0xE3, 0x8E, 0x70, 0xE7, 0x1C, 0xF1, - 0xCE, 0x1C, 0xE3, 0x8E, 0x38, 0xE7, 0x87, 0xB0, 0x07, 0x00, 0x70, 0x0F, - 0x03, 0xF8, 0x0D, 0xDF, 0x71, 0xAC, 0xF0, 0x38, 0x0E, 0x03, 0x81, 0xC0, - 0x70, 0x1C, 0x0E, 0x00, 0x1D, 0x99, 0x8C, 0x46, 0x23, 0x80, 0xE0, 0x70, - 0x1C, 0x06, 0x23, 0x19, 0x17, 0x00, 0x0C, 0x10, 0xE3, 0xF3, 0x86, 0x1C, - 0x38, 0x71, 0xC3, 0x87, 0x0E, 0x9E, 0x38, 0x00, 0xF8, 0xE3, 0x8E, 0x38, - 0xC3, 0x9C, 0x71, 0xC7, 0x18, 0x71, 0x87, 0x38, 0xE3, 0x8E, 0xFA, 0xF3, - 0xAE, 0x3C, 0xF0, 0xDC, 0x33, 0x0C, 0xC2, 0x31, 0x8C, 0xC3, 0x60, 0xF0, - 0x38, 0x0C, 0x02, 0x00, 0xE0, 0x86, 0xE3, 0x0C, 0xC6, 0x19, 0x9C, 0x23, - 0x78, 0xC7, 0xF9, 0x0E, 0x74, 0x1C, 0xF0, 0x31, 0xC0, 0x43, 0x00, 0x84, - 0x00, 0x0E, 0x31, 0xF3, 0x83, 0xA0, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x1C, - 0x00, 0xE0, 0x0B, 0x02, 0x5D, 0x3C, 0xF1, 0xC3, 0x00, 0x04, 0x67, 0x8C, - 0x79, 0x87, 0x10, 0xE2, 0x1C, 0x81, 0x90, 0x3A, 0x07, 0x80, 0xF0, 0x1C, - 0x03, 0x00, 0x40, 0x08, 0x32, 0x07, 0x80, 0x3F, 0xCF, 0xE6, 0x30, 0x08, - 0x04, 0x02, 0x01, 0x00, 0xC0, 0x30, 0x1E, 0x0F, 0x98, 0x76, 0x07, 0x00, - 0x01, 0xE0, 0x70, 0x1C, 0x03, 0x80, 0x60, 0x1C, 0x03, 0x80, 0x60, 0x0C, - 0x03, 0x80, 0xF0, 0x3C, 0x07, 0x00, 0x40, 0x0C, 0x01, 0x80, 0x70, 0x0E, - 0x01, 0xC0, 0x30, 0x03, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0xE0, - 0x18, 0x06, 0x01, 0x80, 0xE0, 0x38, 0x0C, 0x03, 0x00, 0xC0, 0x10, 0x1F, - 0x07, 0x03, 0x80, 0xE0, 0x30, 0x0C, 0x07, 0x01, 0x80, 0xE0, 0xE0, 0x00, - 0x38, 0x0F, 0xCD, 0x1F, 0x80, 0xE0}; - -const GFXglyph FreeSerifBoldItalic12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 8, 17, 9, 2, -15}, // 0x21 '!' - {17, 9, 7, 13, 4, -15}, // 0x22 '"' - {25, 14, 16, 12, -1, -15}, // 0x23 '#' - {53, 12, 20, 12, 0, -17}, // 0x24 '$' - {83, 18, 18, 20, 1, -16}, // 0x25 '%' - {124, 16, 17, 19, 0, -15}, // 0x26 '&' - {158, 3, 7, 7, 3, -15}, // 0x27 ''' - {161, 7, 21, 8, 1, -15}, // 0x28 '(' - {180, 7, 21, 8, -1, -15}, // 0x29 ')' - {199, 10, 10, 12, 1, -15}, // 0x2A '*' - {212, 12, 12, 14, 1, -11}, // 0x2B '+' - {230, 5, 8, 6, -2, -3}, // 0x2C ',' - {235, 6, 3, 8, 0, -6}, // 0x2D '-' - {238, 4, 4, 6, 0, -2}, // 0x2E '.' - {240, 10, 16, 8, 0, -15}, // 0x2F '/' - {260, 11, 17, 12, 0, -15}, // 0x30 '0' - {284, 10, 17, 12, 0, -15}, // 0x31 '1' - {306, 11, 17, 12, 0, -15}, // 0x32 '2' - {330, 11, 17, 12, 0, -15}, // 0x33 '3' - {354, 13, 16, 12, 0, -15}, // 0x34 '4' - {380, 12, 17, 12, 0, -15}, // 0x35 '5' - {406, 11, 17, 12, 1, -15}, // 0x36 '6' - {430, 11, 16, 12, 2, -15}, // 0x37 '7' - {452, 11, 17, 12, 0, -15}, // 0x38 '8' - {476, 11, 17, 12, 0, -15}, // 0x39 '9' - {500, 7, 12, 6, 0, -10}, // 0x3A ':' - {511, 8, 15, 6, -1, -10}, // 0x3B ';' - {526, 12, 13, 14, 1, -12}, // 0x3C '<' - {546, 12, 6, 14, 2, -8}, // 0x3D '=' - {555, 13, 13, 14, 1, -12}, // 0x3E '>' - {577, 9, 17, 12, 2, -15}, // 0x3F '?' - {597, 17, 16, 20, 1, -15}, // 0x40 '@' - {631, 16, 17, 17, 0, -15}, // 0x41 'A' - {665, 16, 17, 15, 0, -15}, // 0x42 'B' - {699, 15, 17, 15, 1, -15}, // 0x43 'C' - {731, 18, 17, 17, 0, -15}, // 0x44 'D' - {770, 17, 17, 15, 0, -15}, // 0x45 'E' - {807, 16, 17, 15, 0, -15}, // 0x46 'F' - {841, 17, 17, 17, 1, -15}, // 0x47 'G' - {878, 20, 17, 18, 0, -15}, // 0x48 'H' - {921, 10, 17, 9, 0, -15}, // 0x49 'I' - {943, 14, 18, 12, 0, -15}, // 0x4A 'J' - {975, 17, 17, 16, 0, -15}, // 0x4B 'K' - {1012, 15, 17, 15, 0, -15}, // 0x4C 'L' - {1044, 23, 17, 21, 0, -15}, // 0x4D 'M' - {1093, 19, 17, 17, 0, -15}, // 0x4E 'N' - {1134, 16, 17, 16, 1, -15}, // 0x4F 'O' - {1168, 16, 17, 14, 0, -15}, // 0x50 'P' - {1202, 16, 21, 16, 1, -15}, // 0x51 'Q' - {1244, 16, 17, 16, 0, -15}, // 0x52 'R' - {1278, 12, 17, 12, 0, -15}, // 0x53 'S' - {1304, 15, 17, 14, 2, -15}, // 0x54 'T' - {1336, 16, 17, 17, 3, -15}, // 0x55 'U' - {1370, 16, 16, 17, 3, -15}, // 0x56 'V' - {1402, 21, 16, 22, 3, -15}, // 0x57 'W' - {1444, 17, 17, 17, 0, -15}, // 0x58 'X' - {1481, 14, 17, 15, 3, -15}, // 0x59 'Y' - {1511, 15, 17, 13, 0, -15}, // 0x5A 'Z' - {1543, 10, 20, 8, -1, -15}, // 0x5B '[' - {1568, 6, 16, 10, 3, -15}, // 0x5C '\' - {1580, 9, 20, 8, -1, -15}, // 0x5D ']' - {1603, 10, 9, 14, 2, -15}, // 0x5E '^' - {1615, 12, 1, 12, 0, 4}, // 0x5F '_' - {1617, 5, 4, 8, 2, -15}, // 0x60 '`' - {1620, 12, 12, 12, 0, -10}, // 0x61 'a' - {1638, 11, 18, 12, 1, -16}, // 0x62 'b' - {1663, 9, 12, 10, 1, -10}, // 0x63 'c' - {1677, 14, 18, 12, 0, -16}, // 0x64 'd' - {1709, 9, 12, 10, 1, -10}, // 0x65 'e' - {1723, 14, 22, 12, -2, -16}, // 0x66 'f' - {1762, 13, 16, 12, -1, -10}, // 0x67 'g' - {1788, 13, 18, 13, 0, -16}, // 0x68 'h' - {1818, 6, 17, 7, 1, -15}, // 0x69 'i' - {1831, 11, 21, 8, -2, -15}, // 0x6A 'j' - {1860, 13, 18, 12, 0, -16}, // 0x6B 'k' - {1890, 7, 18, 7, 1, -16}, // 0x6C 'l' - {1906, 18, 12, 18, 0, -10}, // 0x6D 'm' - {1933, 12, 12, 13, 0, -10}, // 0x6E 'n' - {1951, 10, 12, 11, 1, -10}, // 0x6F 'o' - {1966, 14, 16, 12, -2, -10}, // 0x70 'p' - {1994, 12, 16, 12, 0, -10}, // 0x71 'q' - {2018, 10, 11, 10, 0, -10}, // 0x72 'r' - {2032, 9, 12, 9, 0, -10}, // 0x73 's' - {2046, 7, 15, 7, 1, -13}, // 0x74 't' - {2060, 12, 12, 13, 1, -10}, // 0x75 'u' - {2078, 10, 11, 11, 1, -10}, // 0x76 'v' - {2092, 15, 11, 16, 1, -10}, // 0x77 'w' - {2113, 13, 12, 11, -1, -10}, // 0x78 'x' - {2133, 11, 16, 10, -1, -10}, // 0x79 'y' - {2155, 10, 13, 10, 0, -10}, // 0x7A 'z' - {2172, 11, 21, 8, 0, -16}, // 0x7B '{' - {2201, 2, 16, 6, 3, -15}, // 0x7C '|' - {2205, 10, 21, 8, -3, -16}, // 0x7D '}' - {2232, 11, 4, 14, 1, -7}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic12pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic12pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 2910 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h deleted file mode 100644 index 8e75b24..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h +++ /dev/null @@ -1,502 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic18pt7bBitmaps[] PROGMEM = { - 0x01, 0xC0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x3C, 0x07, - 0x80, 0xE0, 0x1C, 0x03, 0x00, 0x60, 0x0C, 0x03, 0x00, 0x60, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x07, 0x81, 0xF8, 0x3F, 0x07, 0xE0, 0x78, 0x00, 0x38, - 0x1D, 0xE0, 0xF7, 0x83, 0xDC, 0x0E, 0x70, 0x39, 0xC0, 0xE6, 0x03, 0x18, - 0x0C, 0x40, 0x23, 0x01, 0x80, 0x00, 0x38, 0x60, 0x07, 0x0E, 0x00, 0x70, - 0xC0, 0x06, 0x1C, 0x00, 0xE1, 0xC0, 0x0E, 0x38, 0x01, 0xC3, 0x81, 0xFF, - 0xFF, 0x1F, 0xFF, 0xE1, 0xFF, 0xFE, 0x03, 0x86, 0x00, 0x30, 0xE0, 0x07, - 0x0E, 0x00, 0x71, 0xC0, 0x0E, 0x1C, 0x0F, 0xFF, 0xF8, 0xFF, 0xFF, 0x0F, - 0xFF, 0xF0, 0x1C, 0x30, 0x01, 0x87, 0x00, 0x38, 0x70, 0x03, 0x0E, 0x00, - 0x70, 0xE0, 0x07, 0x0C, 0x00, 0xE1, 0xC0, 0x00, 0x00, 0x08, 0x00, 0x0C, - 0x00, 0x7E, 0x00, 0xFF, 0xC0, 0xF3, 0x70, 0x71, 0x9C, 0x70, 0xC6, 0x38, - 0x43, 0x1C, 0x61, 0x0F, 0x30, 0x87, 0xD8, 0x03, 0xF8, 0x00, 0xFE, 0x00, - 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, 0x01, 0xFC, 0x00, 0xDF, 0x10, 0x47, - 0x88, 0x63, 0xCC, 0x31, 0xE6, 0x10, 0xF3, 0x98, 0x71, 0xCC, 0x78, 0x7E, - 0x78, 0x07, 0xF8, 0x03, 0xF0, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x03, 0xC0, - 0x18, 0x01, 0xFE, 0x0F, 0x00, 0x7C, 0xFF, 0xC0, 0x1F, 0x0F, 0x98, 0x07, - 0xC1, 0x06, 0x00, 0xF8, 0x21, 0x80, 0x3E, 0x04, 0x30, 0x07, 0xC1, 0x8C, - 0x00, 0xF0, 0x21, 0x80, 0x1E, 0x0C, 0x60, 0x03, 0xC1, 0x0C, 0x00, 0x78, - 0xC3, 0x03, 0xC7, 0xF8, 0x61, 0xFC, 0x7C, 0x18, 0x7C, 0xC0, 0x06, 0x1F, - 0x08, 0x00, 0xC7, 0xC1, 0x00, 0x30, 0xF0, 0x20, 0x06, 0x3E, 0x04, 0x01, - 0x87, 0xC1, 0x00, 0x30, 0xF0, 0x20, 0x0C, 0x1E, 0x0C, 0x03, 0x03, 0xC1, - 0x00, 0x60, 0x3C, 0xC0, 0x18, 0x07, 0xF8, 0x03, 0x00, 0x7C, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x1E, 0x38, 0x00, 0x0E, 0x0E, 0x00, - 0x0F, 0x07, 0x00, 0x07, 0x83, 0x80, 0x03, 0xC3, 0x80, 0x01, 0xE3, 0x80, - 0x00, 0xF7, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7F, 0x0F, - 0xF0, 0xE7, 0x81, 0xE0, 0xE3, 0xE0, 0xE0, 0xE1, 0xF0, 0x60, 0xE0, 0x7C, - 0x60, 0xF0, 0x3E, 0x20, 0x78, 0x1F, 0xB0, 0x3C, 0x07, 0xF0, 0x1F, 0x03, - 0xF0, 0x0F, 0x80, 0xFC, 0x03, 0xF0, 0x7F, 0x8D, 0xFF, 0xEF, 0xFC, 0x7F, - 0xE3, 0xFC, 0x0F, 0xC0, 0x78, 0x00, 0x3B, 0xDE, 0xE7, 0x39, 0x8C, 0x46, - 0x00, 0x00, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x1C, 0x07, 0x01, 0xE0, - 0x38, 0x0F, 0x01, 0xC0, 0x38, 0x0F, 0x01, 0xE0, 0x38, 0x07, 0x00, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x06, - 0x00, 0xC0, 0x08, 0x00, 0x80, 0x10, 0x00, 0x06, 0x00, 0x40, 0x04, 0x00, - 0x80, 0x18, 0x01, 0x00, 0x30, 0x06, 0x00, 0xC0, 0x1C, 0x03, 0x80, 0x70, - 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x01, 0xE0, 0x3C, 0x07, 0x00, 0xE0, 0x3C, - 0x07, 0x00, 0xE0, 0x38, 0x06, 0x01, 0xC0, 0x70, 0x18, 0x06, 0x01, 0x80, - 0x00, 0x07, 0x00, 0x38, 0x01, 0xC1, 0x8E, 0x3E, 0x23, 0xF9, 0x3F, 0xEB, - 0xE0, 0xE0, 0xFF, 0xF7, 0x93, 0xF8, 0x9F, 0x8E, 0x60, 0x70, 0x03, 0x80, - 0x08, 0x00, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, - 0x00, 0x0E, 0x00, 0x07, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, - 0x01, 0xC0, 0x00, 0x1C, 0x7C, 0xF9, 0xF1, 0xE1, 0xC3, 0x0C, 0x30, 0xC2, - 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xE0, 0x7B, 0xFF, 0xFF, 0x78, 0x00, 0x1C, - 0x00, 0xE0, 0x03, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, - 0x01, 0xC0, 0x07, 0x00, 0x38, 0x00, 0xE0, 0x07, 0x80, 0x1C, 0x00, 0x70, - 0x03, 0x80, 0x0E, 0x00, 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0xE0, 0x00, 0x00, 0xF0, 0x07, 0x30, 0x1C, 0x30, - 0x78, 0x60, 0xE0, 0xE3, 0xC1, 0xCF, 0x83, 0x9E, 0x0F, 0x3C, 0x1E, 0xF8, - 0x3D, 0xE0, 0x7B, 0xC1, 0xFF, 0x83, 0xFF, 0x07, 0xBC, 0x0F, 0x78, 0x3E, - 0xF0, 0x7D, 0xE0, 0xF3, 0x81, 0xE7, 0x07, 0x8E, 0x0F, 0x0C, 0x3C, 0x18, - 0x70, 0x19, 0xC0, 0x1E, 0x00, 0x00, 0x06, 0x01, 0xF8, 0x1F, 0xF0, 0x03, - 0xE0, 0x07, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF0, 0x03, 0xE0, - 0x07, 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xE0, 0x07, - 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, - 0x0F, 0xC0, 0xFF, 0xF0, 0x00, 0xF8, 0x01, 0xFC, 0x03, 0xFE, 0x06, 0x3F, - 0x08, 0x1F, 0x18, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0E, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, 0x00, 0xC0, - 0x01, 0x80, 0x03, 0x00, 0x06, 0x02, 0x0C, 0x06, 0x08, 0x0C, 0x1F, 0xFC, - 0x3F, 0xFC, 0x7F, 0xF8, 0xFF, 0xF8, 0x00, 0xF0, 0x07, 0xF8, 0x1F, 0xF0, - 0x61, 0xF0, 0x81, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0E, 0x00, 0x3C, 0x00, - 0xE0, 0x07, 0xC0, 0x3F, 0xC0, 0x1F, 0x80, 0x0F, 0x80, 0x1F, 0x00, 0x1E, - 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xC0, 0x07, 0x9C, 0x0E, 0x3C, - 0x38, 0x7F, 0xE0, 0x7E, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x3C, - 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x02, 0xF8, 0x01, 0x3C, 0x00, - 0x9F, 0x00, 0x47, 0xC0, 0x31, 0xE0, 0x18, 0x78, 0x0C, 0x3E, 0x06, 0x0F, - 0x83, 0x03, 0xC1, 0x80, 0xF0, 0x7F, 0xFF, 0x1F, 0xFF, 0xCF, 0xFF, 0xF0, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x07, 0xC0, 0x01, - 0xFF, 0x00, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x60, 0x00, 0x30, 0x00, - 0x10, 0x00, 0x1F, 0x00, 0x0F, 0xE0, 0x0F, 0xF8, 0x07, 0xFE, 0x00, 0x3F, - 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x38, 0x00, 0x1C, 0x00, - 0x0E, 0x00, 0x06, 0x00, 0x03, 0x00, 0x03, 0x87, 0x83, 0x83, 0xE3, 0x81, - 0xFF, 0x80, 0x3F, 0x00, 0x00, 0x00, 0x03, 0x80, 0x0F, 0x80, 0x1F, 0x00, - 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x1F, 0x00, - 0x1F, 0xF0, 0x1F, 0xFE, 0x0F, 0xCF, 0x07, 0xC3, 0xC7, 0xE1, 0xE3, 0xE0, - 0xF1, 0xF0, 0x78, 0xF8, 0x3C, 0x78, 0x3E, 0x3C, 0x1F, 0x1E, 0x0F, 0x0F, - 0x0F, 0x83, 0x87, 0x81, 0xE7, 0x80, 0x7F, 0x80, 0x0F, 0x80, 0x00, 0x3F, - 0xFF, 0x3F, 0xFE, 0x3F, 0xFE, 0x7F, 0xFC, 0x60, 0x1C, 0x80, 0x38, 0x80, - 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, 0xE0, 0x01, 0xC0, 0x01, 0xC0, 0x03, - 0x80, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x1C, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0x00, - 0xF8, 0x00, 0xFF, 0x00, 0xE1, 0xC0, 0xE0, 0xF0, 0xF0, 0x38, 0x78, 0x1C, - 0x3C, 0x0E, 0x1F, 0x07, 0x0F, 0x87, 0x07, 0xE7, 0x01, 0xFF, 0x00, 0x7E, - 0x00, 0x1F, 0x80, 0x3F, 0xE0, 0x73, 0xF0, 0x70, 0xFC, 0x70, 0x3E, 0x70, - 0x0F, 0x38, 0x07, 0x9C, 0x03, 0xCE, 0x01, 0xE7, 0x00, 0xE1, 0xC0, 0xE0, - 0x70, 0xE0, 0x0F, 0xC0, 0x00, 0x00, 0xF8, 0x01, 0xFF, 0x01, 0xF3, 0xC1, - 0xF0, 0xE1, 0xF0, 0x70, 0xF0, 0x3C, 0xF8, 0x1E, 0x7C, 0x0F, 0x3C, 0x0F, - 0x9E, 0x07, 0xCF, 0x03, 0xE7, 0x83, 0xF3, 0xC1, 0xF0, 0xF1, 0xF8, 0x3F, - 0xF8, 0x0F, 0xFC, 0x00, 0x7C, 0x00, 0x7C, 0x00, 0x7E, 0x00, 0x3E, 0x00, - 0x3C, 0x00, 0x7C, 0x00, 0x7C, 0x00, 0xF0, 0x00, 0xC0, 0x00, 0x00, 0x07, - 0x83, 0xF0, 0xFC, 0x3F, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x78, 0x3F, 0x0F, 0xC3, 0xF0, 0x78, 0x00, 0x03, 0xC0, 0xFC, - 0x1F, 0x83, 0xF0, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x0C, 0x03, 0xC0, 0x7C, 0x0F, 0x80, 0xF0, 0x0E, 0x01, 0x80, 0x30, 0x0C, - 0x03, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x7C, 0x00, - 0x7F, 0x00, 0x7F, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFE, 0x00, 0xFE, 0x00, - 0x3E, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, - 0x0F, 0xE0, 0x00, 0xFF, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x04, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, - 0x38, 0x00, 0x0F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xFC, 0x00, - 0x3F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xF0, 0x00, 0xFC, 0x00, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x01, 0xFC, 0x03, 0xFC, 0x00, 0xFC, 0x00, - 0x3C, 0x00, 0x08, 0x00, 0x00, 0x07, 0xC0, 0xFF, 0x0E, 0x3C, 0x70, 0xF3, - 0xC7, 0x8C, 0x3C, 0x01, 0xE0, 0x1F, 0x00, 0xF0, 0x07, 0x80, 0x78, 0x07, - 0x80, 0x30, 0x03, 0x00, 0x10, 0x01, 0x80, 0x08, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x07, 0x80, 0x7E, 0x03, 0xF0, 0x1F, 0x80, 0x78, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0xFF, 0xF8, 0x01, 0xF0, 0x1E, 0x01, 0xE0, 0x03, 0x81, 0xC0, - 0x00, 0xE1, 0xC0, 0x18, 0x38, 0xE0, 0x3F, 0xCC, 0xE0, 0x3C, 0xE7, 0x70, - 0x3C, 0x71, 0xF0, 0x1C, 0x30, 0xF8, 0x1E, 0x38, 0x7C, 0x0E, 0x1C, 0x3E, - 0x0F, 0x0E, 0x1F, 0x07, 0x0E, 0x0F, 0x83, 0x87, 0x0D, 0xC1, 0xC7, 0x86, - 0x70, 0xE5, 0xC6, 0x38, 0x7C, 0xFE, 0x1C, 0x1C, 0x3E, 0x07, 0x00, 0x00, - 0x01, 0xC0, 0x00, 0x00, 0x78, 0x00, 0x40, 0x1F, 0x00, 0xE0, 0x03, 0xFF, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x03, 0x00, 0x00, - 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x03, - 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x17, 0xC0, 0x00, 0x67, 0x80, 0x00, 0x8F, - 0x00, 0x03, 0x1F, 0x00, 0x0C, 0x3E, 0x00, 0x10, 0x7C, 0x00, 0x60, 0xF8, - 0x00, 0x81, 0xF0, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x18, 0x07, 0xC0, - 0x60, 0x0F, 0x81, 0xC0, 0x1F, 0x03, 0x00, 0x3E, 0x0E, 0x00, 0x7C, 0x3C, - 0x00, 0xFC, 0xFE, 0x0F, 0xFE, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xFC, 0x01, - 0xF8, 0x7E, 0x01, 0xF8, 0x3F, 0x01, 0xF0, 0x3F, 0x01, 0xF0, 0x3F, 0x01, - 0xF0, 0x3F, 0x03, 0xE0, 0x3F, 0x03, 0xE0, 0x7E, 0x03, 0xE0, 0xFC, 0x03, - 0xE3, 0xF0, 0x07, 0xFF, 0x80, 0x07, 0xC3, 0xE0, 0x07, 0xC1, 0xF8, 0x0F, - 0xC0, 0xF8, 0x0F, 0x80, 0xFC, 0x0F, 0x80, 0xFC, 0x0F, 0x80, 0xFC, 0x1F, - 0x80, 0xFC, 0x1F, 0x01, 0xFC, 0x1F, 0x01, 0xF8, 0x1F, 0x03, 0xF0, 0x3F, - 0x0F, 0xE0, 0x7F, 0xFF, 0xC0, 0xFF, 0xFE, 0x00, 0x00, 0x1F, 0x82, 0x01, - 0xFF, 0xE8, 0x07, 0xE0, 0xF0, 0x3F, 0x80, 0xE0, 0xFE, 0x00, 0xC1, 0xF8, - 0x01, 0x87, 0xE0, 0x02, 0x1F, 0x80, 0x04, 0x3F, 0x00, 0x00, 0xFC, 0x00, - 0x01, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, 0x00, - 0x3F, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x03, - 0xF0, 0x00, 0x03, 0xE0, 0x01, 0x07, 0xE0, 0x06, 0x07, 0xE0, 0x18, 0x07, - 0xE0, 0xE0, 0x07, 0xFF, 0x00, 0x01, 0xF8, 0x00, 0x07, 0xFF, 0xE0, 0x01, - 0xFF, 0xFE, 0x00, 0x1F, 0x87, 0xE0, 0x07, 0xE0, 0x7C, 0x01, 0xF0, 0x1F, - 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x0F, 0x80, 0x3F, 0x03, 0xE0, - 0x0F, 0xC0, 0xF8, 0x03, 0xF0, 0x3E, 0x00, 0xFC, 0x1F, 0x00, 0x3F, 0x07, - 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xF0, 0xFC, 0x01, 0xF8, 0x3E, 0x00, 0x7E, - 0x0F, 0x80, 0x3F, 0x83, 0xE0, 0x0F, 0xC1, 0xF8, 0x07, 0xF0, 0x7C, 0x01, - 0xF8, 0x1F, 0x00, 0xFC, 0x07, 0xC0, 0x7E, 0x03, 0xF0, 0x7E, 0x01, 0xFF, - 0xFF, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x07, 0xFF, 0xFE, 0x03, 0xFF, 0xFC, - 0x07, 0xE0, 0x78, 0x0F, 0xC0, 0x60, 0x1F, 0x00, 0x40, 0x3E, 0x00, 0x80, - 0x7C, 0x01, 0x01, 0xF8, 0x10, 0x03, 0xE0, 0x60, 0x07, 0xC3, 0x80, 0x0F, - 0xFF, 0x00, 0x3F, 0xFE, 0x00, 0x7C, 0x38, 0x00, 0xF8, 0x30, 0x03, 0xF0, - 0x60, 0x07, 0xC0, 0x80, 0x0F, 0x81, 0x00, 0x1F, 0x00, 0x10, 0x7E, 0x00, - 0x60, 0xF8, 0x01, 0xC1, 0xF0, 0x07, 0x03, 0xE0, 0x1E, 0x0F, 0xC0, 0xFC, - 0x3F, 0xFF, 0xF8, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFE, 0x03, 0xFF, 0xFC, - 0x07, 0xE0, 0x78, 0x0F, 0xC0, 0x60, 0x1F, 0x00, 0x40, 0x3E, 0x00, 0x80, - 0x7C, 0x01, 0x01, 0xF8, 0x20, 0x03, 0xE0, 0xC0, 0x07, 0xC3, 0x80, 0x0F, - 0xFE, 0x00, 0x3F, 0xFC, 0x00, 0x7C, 0x38, 0x00, 0xF8, 0x30, 0x03, 0xF0, - 0x60, 0x07, 0xC0, 0x80, 0x0F, 0x81, 0x00, 0x1F, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x00, 0x1F, 0xC2, 0x00, 0xFF, 0xF6, - 0x01, 0xF8, 0x3C, 0x03, 0xE0, 0x1C, 0x0F, 0xC0, 0x0C, 0x0F, 0xC0, 0x08, - 0x1F, 0x80, 0x08, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFC, 0x03, 0xFF, - 0xFC, 0x00, 0xFC, 0xFC, 0x00, 0xF8, 0xFC, 0x00, 0xF8, 0xFC, 0x00, 0xF8, - 0xFC, 0x00, 0xF0, 0x7C, 0x01, 0xF0, 0x7E, 0x01, 0xF0, 0x3E, 0x01, 0xF0, - 0x1F, 0x83, 0xE0, 0x0F, 0xFF, 0x80, 0x01, 0xFC, 0x00, 0x07, 0xFF, 0x3F, - 0xF8, 0x0F, 0xE0, 0x7F, 0x00, 0x7E, 0x01, 0xF8, 0x03, 0xF0, 0x0F, 0x80, - 0x1F, 0x00, 0x7C, 0x00, 0xF8, 0x07, 0xE0, 0x07, 0xC0, 0x3E, 0x00, 0x7E, - 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0xF8, 0x00, 0xF8, 0x07, - 0xC0, 0x0F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xF0, 0x03, 0xE0, 0x1F, 0x00, - 0x3F, 0x00, 0xF8, 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x7E, 0x00, 0x7C, - 0x03, 0xE0, 0x07, 0xE0, 0x1F, 0x00, 0x3E, 0x00, 0xF8, 0x01, 0xF0, 0x0F, - 0xC0, 0x0F, 0x80, 0x7C, 0x00, 0xFC, 0x03, 0xE0, 0x0F, 0xE0, 0x3F, 0x80, - 0xFF, 0xC7, 0xFF, 0x00, 0x07, 0xFE, 0x03, 0xF8, 0x07, 0xE0, 0x0F, 0xC0, - 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, - 0x80, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x03, 0xF0, 0x07, 0xC0, 0x0F, 0x80, - 0x1F, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0xC0, 0x3F, - 0x80, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x01, 0xFE, 0x00, 0x0F, 0xC0, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x80, 0x01, 0xF0, 0x00, - 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, - 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0xC0, - 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x61, 0xF0, - 0x0F, 0x3F, 0x00, 0xE7, 0xE0, 0x07, 0xFC, 0x00, 0x3F, 0x00, 0x00, 0x07, - 0xFF, 0x3F, 0x80, 0xFE, 0x07, 0x80, 0x7E, 0x03, 0x00, 0x3F, 0x03, 0x00, - 0x1F, 0x03, 0x00, 0x0F, 0x83, 0x00, 0x07, 0xC3, 0x00, 0x07, 0xE3, 0x00, - 0x03, 0xE3, 0x00, 0x01, 0xF3, 0x00, 0x00, 0xFB, 0x80, 0x00, 0xFB, 0xC0, - 0x00, 0x7F, 0xE0, 0x00, 0x3E, 0xF8, 0x00, 0x3F, 0x7C, 0x00, 0x1F, 0x1F, - 0x00, 0x0F, 0x8F, 0x80, 0x07, 0xC7, 0xE0, 0x07, 0xE1, 0xF0, 0x03, 0xE0, - 0xFC, 0x01, 0xF0, 0x3E, 0x00, 0xF8, 0x1F, 0x00, 0xFC, 0x07, 0xC0, 0xFE, - 0x07, 0xF0, 0xFF, 0xCF, 0xFC, 0x00, 0x07, 0xFF, 0x00, 0x07, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x1F, - 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, - 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0xFC, 0x00, 0x03, - 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x11, 0xF0, 0x00, 0xC7, 0xC0, - 0x06, 0x1F, 0x00, 0x38, 0x7C, 0x01, 0xE3, 0xF0, 0x3F, 0x9F, 0xFF, 0xFC, - 0xFF, 0xFF, 0xF0, 0x07, 0xF8, 0x00, 0x7F, 0x80, 0xFC, 0x00, 0x3F, 0x80, - 0x3E, 0x00, 0x3F, 0x80, 0x1F, 0x00, 0x3F, 0x80, 0x1F, 0x80, 0x1F, 0xC0, - 0x0F, 0xE0, 0x1B, 0xE0, 0x07, 0xF0, 0x0D, 0xF0, 0x02, 0xF8, 0x0D, 0xF0, - 0x03, 0x7C, 0x0C, 0xF8, 0x01, 0xBE, 0x06, 0x7C, 0x00, 0xDF, 0x06, 0x7C, - 0x00, 0xCF, 0x83, 0x3E, 0x00, 0x67, 0xC3, 0x1F, 0x00, 0x31, 0xE3, 0x0F, - 0x80, 0x38, 0xF9, 0x8F, 0x80, 0x18, 0x7D, 0x87, 0xC0, 0x0C, 0x3F, 0x83, - 0xE0, 0x06, 0x1F, 0xC1, 0xF0, 0x06, 0x0F, 0xC1, 0xF0, 0x03, 0x07, 0xC0, - 0xF8, 0x01, 0x83, 0xE0, 0x7C, 0x01, 0xC0, 0xE0, 0x7E, 0x00, 0xE0, 0x70, - 0x3F, 0x00, 0xF8, 0x30, 0x3F, 0x80, 0xFF, 0x10, 0x7F, 0xF0, 0x00, 0x07, - 0xF0, 0x0F, 0xE0, 0x3E, 0x00, 0x78, 0x07, 0xE0, 0x06, 0x00, 0x7C, 0x00, - 0xC0, 0x1F, 0xC0, 0x10, 0x03, 0xF8, 0x06, 0x00, 0x6F, 0x80, 0xC0, 0x19, - 0xF0, 0x10, 0x03, 0x3F, 0x02, 0x00, 0x63, 0xE0, 0xC0, 0x0C, 0x7C, 0x18, - 0x03, 0x07, 0xC2, 0x00, 0x60, 0xF8, 0x40, 0x0C, 0x0F, 0x98, 0x03, 0x81, - 0xF3, 0x00, 0x60, 0x3F, 0x40, 0x0C, 0x03, 0xF8, 0x01, 0x80, 0x7F, 0x00, - 0x60, 0x07, 0xC0, 0x0C, 0x00, 0xF8, 0x01, 0x80, 0x0F, 0x00, 0x70, 0x01, - 0xE0, 0x0E, 0x00, 0x18, 0x03, 0xE0, 0x03, 0x00, 0x02, 0x00, 0x60, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xC0, 0x07, 0xC3, 0xE0, 0x1F, 0x03, 0xC0, - 0x7C, 0x03, 0xC1, 0xF0, 0x07, 0x87, 0xE0, 0x0F, 0x8F, 0x80, 0x1F, 0x3F, - 0x00, 0x3E, 0x7C, 0x00, 0x7D, 0xF8, 0x01, 0xFB, 0xE0, 0x03, 0xF7, 0xC0, - 0x07, 0xDF, 0x80, 0x1F, 0xBF, 0x00, 0x3F, 0x7C, 0x00, 0x7C, 0xF8, 0x01, - 0xF9, 0xF0, 0x03, 0xE3, 0xE0, 0x0F, 0xC7, 0xC0, 0x1F, 0x07, 0x80, 0x7C, - 0x0F, 0x81, 0xF0, 0x0F, 0x87, 0xC0, 0x0F, 0xFE, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x07, 0xE3, 0xF0, 0x0F, 0x83, 0xE0, - 0x1F, 0x07, 0xE0, 0x3E, 0x0F, 0xC0, 0x7C, 0x1F, 0x81, 0xF0, 0x3F, 0x03, - 0xE0, 0xFE, 0x07, 0xC1, 0xF8, 0x0F, 0x87, 0xF0, 0x3E, 0x1F, 0xC0, 0x7F, - 0xFE, 0x00, 0xFF, 0xF0, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, - 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, - 0x03, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0xFF, 0xC0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xC0, 0x07, 0xC3, 0xE0, 0x1F, 0x03, 0xC0, - 0x7C, 0x03, 0xC1, 0xF0, 0x07, 0x87, 0xE0, 0x0F, 0x8F, 0x80, 0x1F, 0x3F, - 0x00, 0x3E, 0x7C, 0x00, 0x7D, 0xF8, 0x01, 0xFB, 0xF0, 0x03, 0xF7, 0xC0, - 0x07, 0xDF, 0x80, 0x0F, 0xBF, 0x00, 0x3F, 0x7C, 0x00, 0x7C, 0xF8, 0x01, - 0xF9, 0xF0, 0x03, 0xE3, 0xE0, 0x07, 0xC7, 0xC0, 0x1F, 0x07, 0x80, 0x7C, - 0x0F, 0x01, 0xF0, 0x0F, 0x07, 0x80, 0x07, 0xFE, 0x00, 0x03, 0x80, 0x00, - 0x0C, 0x00, 0x00, 0x3C, 0x00, 0x20, 0xFF, 0xC1, 0x87, 0xFF, 0xFE, 0x1E, - 0xFF, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xFC, - 0x01, 0xF8, 0x7E, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF0, 0x3F, - 0x01, 0xF0, 0x3F, 0x03, 0xF0, 0x3F, 0x03, 0xE0, 0x7E, 0x03, 0xE0, 0xFE, - 0x03, 0xE1, 0xF8, 0x07, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0xC0, - 0x0F, 0xCF, 0xC0, 0x0F, 0xCF, 0xC0, 0x0F, 0x8F, 0xE0, 0x0F, 0x87, 0xE0, - 0x1F, 0x87, 0xE0, 0x1F, 0x03, 0xF0, 0x1F, 0x03, 0xF0, 0x1F, 0x03, 0xF0, - 0x3F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0xFF, 0xE1, 0xFE, 0x00, 0xF8, 0x40, - 0xFF, 0xB0, 0x38, 0x3C, 0x1C, 0x07, 0x0F, 0x01, 0xC3, 0xC0, 0x20, 0xF0, - 0x08, 0x3E, 0x02, 0x0F, 0xC0, 0x03, 0xF8, 0x00, 0x7F, 0x00, 0x0F, 0xE0, - 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x00, - 0x03, 0xC4, 0x00, 0xF1, 0x00, 0x3C, 0x60, 0x0F, 0x38, 0x07, 0x8F, 0x83, - 0xC2, 0x3F, 0xE0, 0x83, 0xF0, 0x00, 0x3F, 0xFF, 0xF9, 0xFF, 0xFF, 0xCF, - 0x1F, 0x1E, 0x70, 0xF8, 0x77, 0x0F, 0x83, 0x30, 0x7C, 0x09, 0x03, 0xE0, - 0x40, 0x3F, 0x02, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x07, - 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, - 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, 0x07, 0xF0, 0x00, 0xFF, 0xF0, 0x00, - 0x7F, 0xF0, 0xFF, 0x1F, 0xC0, 0x3E, 0x1F, 0x80, 0x1C, 0x1F, 0x80, 0x18, - 0x1F, 0x00, 0x18, 0x1F, 0x00, 0x18, 0x1F, 0x00, 0x30, 0x3F, 0x00, 0x30, - 0x3E, 0x00, 0x30, 0x3E, 0x00, 0x30, 0x7E, 0x00, 0x60, 0x7C, 0x00, 0x60, - 0x7C, 0x00, 0x60, 0x7C, 0x00, 0xC0, 0x7C, 0x00, 0xC0, 0xF8, 0x00, 0xC0, - 0xF8, 0x00, 0xC0, 0xF8, 0x01, 0x80, 0xF8, 0x01, 0x80, 0xF8, 0x03, 0x80, - 0xF8, 0x03, 0x00, 0x7C, 0x06, 0x00, 0x7E, 0x1E, 0x00, 0x3F, 0xF8, 0x00, - 0x0F, 0xE0, 0x00, 0xFF, 0xE0, 0x7F, 0x3F, 0x80, 0x1C, 0x1F, 0x80, 0x18, - 0x1F, 0x80, 0x18, 0x1F, 0x80, 0x30, 0x1F, 0x80, 0x30, 0x0F, 0x80, 0x60, - 0x0F, 0x80, 0x40, 0x0F, 0x80, 0xC0, 0x0F, 0x81, 0x80, 0x0F, 0x81, 0x00, - 0x0F, 0xC3, 0x00, 0x0F, 0xC6, 0x00, 0x07, 0xC6, 0x00, 0x07, 0xCC, 0x00, - 0x07, 0xC8, 0x00, 0x07, 0xD8, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0x80, 0x00, - 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0xFF, 0xCF, 0xF8, 0x7E, 0x7F, 0x07, - 0xE0, 0x38, 0x7C, 0x07, 0x80, 0x60, 0xF8, 0x0F, 0x00, 0x81, 0xF0, 0x1E, - 0x03, 0x03, 0xE0, 0x3E, 0x04, 0x07, 0xE0, 0xFC, 0x18, 0x07, 0xC1, 0xF8, - 0x20, 0x0F, 0x87, 0xF0, 0xC0, 0x1F, 0x0B, 0xE1, 0x00, 0x3E, 0x37, 0xC6, - 0x00, 0x7C, 0x47, 0x88, 0x00, 0xF9, 0x8F, 0x30, 0x01, 0xF2, 0x1F, 0x40, - 0x03, 0xEC, 0x3E, 0x80, 0x03, 0xF0, 0x7F, 0x00, 0x07, 0xE0, 0xFC, 0x00, - 0x0F, 0x81, 0xF8, 0x00, 0x1F, 0x03, 0xE0, 0x00, 0x3C, 0x07, 0xC0, 0x00, - 0x78, 0x07, 0x00, 0x00, 0xF0, 0x0E, 0x00, 0x00, 0xC0, 0x18, 0x00, 0x01, - 0x80, 0x30, 0x00, 0x02, 0x00, 0x40, 0x00, 0x0F, 0xFE, 0x3F, 0x81, 0xFC, - 0x07, 0x80, 0x7C, 0x03, 0x00, 0x3F, 0x03, 0x00, 0x0F, 0x83, 0x80, 0x07, - 0xC1, 0x80, 0x03, 0xE1, 0x80, 0x00, 0xF9, 0x80, 0x00, 0x7D, 0x80, 0x00, - 0x3F, 0x80, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, - 0x01, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xCF, 0x00, - 0x00, 0xC7, 0xC0, 0x00, 0xC3, 0xE0, 0x00, 0xC1, 0xF0, 0x00, 0xC0, 0x7C, - 0x00, 0xE0, 0x3E, 0x00, 0xE0, 0x1F, 0x00, 0xF8, 0x1F, 0xE0, 0xFF, 0x1F, - 0xF8, 0x00, 0xFF, 0xC3, 0xF9, 0xF8, 0x07, 0x87, 0xC0, 0x38, 0x3E, 0x01, - 0x81, 0xF0, 0x18, 0x07, 0xC0, 0x80, 0x3E, 0x0C, 0x01, 0xF0, 0xC0, 0x07, - 0xC4, 0x00, 0x3E, 0x60, 0x01, 0xF6, 0x00, 0x07, 0xA0, 0x00, 0x3F, 0x00, - 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x3E, - 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, - 0x7E, 0x00, 0x07, 0xF0, 0x00, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xF8, 0x3F, - 0xFF, 0xC3, 0xE0, 0x7E, 0x1C, 0x07, 0xE0, 0xC0, 0x3E, 0x0C, 0x03, 0xF0, - 0x40, 0x3F, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x1F, - 0x80, 0x00, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x00, - 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x83, 0xE0, 0x0C, 0x3F, 0x00, - 0xC3, 0xF0, 0x0E, 0x1F, 0x00, 0xF1, 0xF8, 0x1F, 0x9F, 0xFF, 0xF8, 0xFF, - 0xFF, 0xC0, 0x01, 0xFC, 0x0F, 0xE0, 0x3C, 0x00, 0xE0, 0x03, 0x80, 0x1E, - 0x00, 0x78, 0x01, 0xC0, 0x07, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0x80, 0x0E, - 0x00, 0x38, 0x01, 0xE0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0F, - 0x00, 0x38, 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x3C, 0x00, 0xFF, 0x03, 0xF8, 0x00, 0xE0, 0x38, 0x07, 0x01, 0xC0, - 0x70, 0x0C, 0x03, 0x80, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x70, 0x0C, 0x03, - 0x80, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x70, 0x0C, 0x03, 0x80, 0xE0, 0x38, - 0x07, 0x01, 0xC0, 0x03, 0xFC, 0x0F, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x38, - 0x01, 0xE0, 0x07, 0x80, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0F, 0x00, 0x38, - 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, 0x00, 0x3C, - 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x00, 0x1C, - 0x00, 0xF0, 0x03, 0xC0, 0xFE, 0x03, 0xF8, 0x00, 0x03, 0xC0, 0x03, 0xC0, - 0x07, 0xE0, 0x07, 0xE0, 0x0E, 0x70, 0x0E, 0x70, 0x1C, 0x78, 0x1C, 0x38, - 0x3C, 0x3C, 0x38, 0x1C, 0x78, 0x1E, 0x70, 0x0E, 0xF0, 0x0E, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xE1, 0xE3, 0xC1, 0xC1, 0xC0, 0xC0, 0x00, - 0xF7, 0x80, 0xFD, 0xE0, 0x7C, 0xF0, 0x3C, 0x3C, 0x1E, 0x0F, 0x0F, 0x83, - 0x83, 0xC1, 0xE1, 0xE0, 0x78, 0x78, 0x1C, 0x3E, 0x0F, 0x0F, 0x03, 0xC3, - 0xC1, 0xF0, 0xF0, 0xFC, 0xFE, 0x6F, 0x6F, 0xF3, 0xF1, 0xF8, 0xF8, 0x3C, - 0x1C, 0x00, 0x01, 0xE0, 0x1F, 0xC0, 0x07, 0xC0, 0x07, 0xC0, 0x07, 0x80, - 0x07, 0x80, 0x0F, 0x80, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x3C, 0x1E, 0xFE, - 0x1F, 0x9F, 0x1F, 0x0F, 0x1E, 0x0F, 0x3E, 0x0F, 0x3C, 0x0F, 0x3C, 0x1F, - 0x78, 0x1E, 0x78, 0x1E, 0x78, 0x3C, 0x78, 0x3C, 0xF0, 0x78, 0xF0, 0xF0, - 0xF1, 0xE0, 0x7F, 0xC0, 0x3F, 0x00, 0x01, 0xF0, 0x3F, 0xC3, 0xCE, 0x3C, - 0xF3, 0xC7, 0x1E, 0x01, 0xE0, 0x0F, 0x00, 0xF8, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x03, 0x78, 0x31, 0xE3, 0x0F, 0xF0, 0x1E, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, 0x0F, - 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x01, 0xEF, 0x00, 0x7F, 0xE0, 0x3E, 0x7C, - 0x07, 0x8F, 0x01, 0xE1, 0xE0, 0x78, 0x3C, 0x0F, 0x0F, 0x83, 0xC1, 0xE0, - 0x78, 0x3C, 0x1E, 0x0F, 0x83, 0xC1, 0xF0, 0x78, 0x7C, 0x0F, 0x0F, 0x91, - 0xE3, 0xF6, 0x3F, 0xDF, 0x83, 0xF3, 0xE0, 0x3C, 0x38, 0x00, 0x01, 0xE0, - 0x3F, 0x83, 0xCE, 0x3C, 0x73, 0xC3, 0x9E, 0x1D, 0xE1, 0xCF, 0x1C, 0xFB, - 0xC7, 0xF8, 0x3C, 0x01, 0xE0, 0x0F, 0x02, 0x78, 0x31, 0xE3, 0x0F, 0xF0, - 0x1E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x1D, 0xC0, 0x01, 0xCE, 0x00, 0x1C, - 0x70, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, - 0x3C, 0x00, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x00, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x3C, 0x00, 0x03, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, - 0x80, 0x00, 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x80, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, - 0x00, 0x0F, 0x00, 0x0E, 0x70, 0x00, 0x77, 0x80, 0x03, 0xF8, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0xFE, 0x00, 0x7F, 0xFC, 0x1F, 0x1F, 0x87, 0xC3, 0xC1, - 0xF0, 0x78, 0x3C, 0x1F, 0x07, 0x83, 0xE0, 0xF0, 0xF8, 0x0E, 0x3E, 0x01, - 0xFF, 0x80, 0x3F, 0xC0, 0x0C, 0x00, 0x03, 0xC0, 0x00, 0x7F, 0x80, 0x0F, - 0xFE, 0x00, 0x7F, 0xF0, 0x70, 0xFF, 0x1C, 0x03, 0xE3, 0x80, 0x3C, 0x70, - 0x07, 0x0F, 0x03, 0xE0, 0xFF, 0xF0, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x03, - 0xE0, 0x00, 0xF0, 0x00, 0xF8, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, - 0x1F, 0x00, 0x0F, 0x0E, 0x07, 0x9F, 0x83, 0xDF, 0xC3, 0xE9, 0xE1, 0xE8, - 0xF0, 0xF8, 0xF8, 0x7C, 0x78, 0x7C, 0x3C, 0x3E, 0x3E, 0x1E, 0x1E, 0x1F, - 0x0F, 0x0F, 0x0F, 0x87, 0x87, 0xCB, 0xC3, 0xCB, 0xE1, 0xE9, 0xE0, 0xFC, - 0xF0, 0x38, 0x00, 0x03, 0x03, 0xC1, 0xE0, 0xF0, 0x30, 0x00, 0x00, 0x00, - 0x07, 0x3F, 0x87, 0x83, 0xC1, 0xE0, 0xF0, 0xF0, 0x78, 0x3C, 0x1E, 0x1E, - 0x0F, 0x27, 0x17, 0x93, 0xF1, 0xF8, 0x70, 0x00, 0x00, 0x06, 0x00, 0x0F, - 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x06, 0x00, 0xFE, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, - 0x00, 0x7C, 0x00, 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0xF8, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0xF0, 0x01, 0xF0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, - 0x03, 0xC0, 0xE3, 0xC0, 0xE7, 0x80, 0xFF, 0x00, 0x7C, 0x00, 0x1F, 0xC0, - 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, - 0x00, 0x1F, 0x00, 0x0F, 0x3F, 0x87, 0x87, 0x83, 0xC3, 0x03, 0xE3, 0x01, - 0xE3, 0x00, 0xF3, 0x00, 0x7B, 0x80, 0x7B, 0xC0, 0x3F, 0xE0, 0x1E, 0xF0, - 0x1F, 0x78, 0x0F, 0x1E, 0x07, 0x8F, 0x13, 0xC7, 0x93, 0xE1, 0xF9, 0xE0, - 0xF8, 0xF0, 0x38, 0x00, 0x1F, 0xC0, 0xF8, 0x1F, 0x03, 0xC0, 0x78, 0x1F, - 0x03, 0xE0, 0x78, 0x0F, 0x01, 0xE0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, - 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xE0, 0x3C, 0x8F, 0x31, 0xEC, 0x3F, 0x07, - 0xC0, 0x70, 0x00, 0x01, 0x87, 0x07, 0x0F, 0xE7, 0xE7, 0xE0, 0xF3, 0xF9, - 0xF8, 0x3D, 0x9E, 0x9E, 0x0F, 0x47, 0xC7, 0x83, 0xE1, 0xD1, 0xE1, 0xF8, - 0xF8, 0xF0, 0x7C, 0x3C, 0x3C, 0x1F, 0x0F, 0x1F, 0x0F, 0x87, 0xC7, 0x83, - 0xE1, 0xE1, 0xE0, 0xF0, 0x78, 0x78, 0x3C, 0x1E, 0x3C, 0x1F, 0x0F, 0x0F, - 0x27, 0x83, 0xC3, 0xD1, 0xE0, 0xF0, 0xFC, 0xF8, 0x78, 0x1C, 0x00, 0x01, - 0x8F, 0x0F, 0xE7, 0xE0, 0xF3, 0xF8, 0x3C, 0x9E, 0x0F, 0x47, 0x87, 0xA3, - 0xC1, 0xE8, 0xF0, 0x7C, 0x3C, 0x1E, 0x1E, 0x0F, 0x87, 0x83, 0xE1, 0xE0, - 0xF0, 0xF8, 0x3C, 0x3C, 0x1F, 0x0F, 0x27, 0x83, 0xD1, 0xE0, 0xFC, 0x78, - 0x1C, 0x00, 0x01, 0xF0, 0x0E, 0x30, 0x38, 0x70, 0xF0, 0xF3, 0xC1, 0xE7, - 0x83, 0xDE, 0x07, 0xBC, 0x1F, 0xF8, 0x3F, 0xE0, 0x7B, 0xC0, 0xF7, 0x83, - 0xCF, 0x07, 0x9E, 0x1E, 0x1C, 0x38, 0x1C, 0xE0, 0x1F, 0x00, 0x00, 0xE3, - 0x80, 0xFD, 0xF8, 0x0F, 0xFF, 0x81, 0xE8, 0xF0, 0x3E, 0x1E, 0x07, 0x83, - 0xC0, 0xF0, 0x78, 0x3E, 0x1F, 0x07, 0x83, 0xC0, 0xF0, 0x78, 0x1E, 0x1F, - 0x07, 0x83, 0xC0, 0xF0, 0xF8, 0x1E, 0x1E, 0x03, 0xC7, 0x80, 0xFF, 0xE0, - 0x1E, 0xF0, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, - 0xF8, 0x00, 0x3F, 0xC0, 0x00, 0x01, 0xEF, 0x07, 0xFF, 0x0F, 0x1E, 0x1E, - 0x1E, 0x1E, 0x1E, 0x3C, 0x1E, 0x7C, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0xF0, - 0x7C, 0xF0, 0x78, 0xF0, 0xF8, 0xF0, 0xF8, 0xF1, 0xF0, 0xFE, 0xF0, 0x7E, - 0xF0, 0x39, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, - 0xC0, 0x1F, 0xF8, 0x03, 0x9C, 0x7F, 0x7C, 0x3D, 0xF8, 0x7A, 0xE0, 0xF8, - 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF0, 0x01, - 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0x07, 0x18, 0xFF, - 0xC7, 0x1C, 0x70, 0x63, 0x81, 0x1E, 0x08, 0xF8, 0x07, 0xE0, 0x1F, 0x00, - 0x7C, 0x01, 0xF0, 0x07, 0x84, 0x3C, 0x20, 0xE1, 0x87, 0x1C, 0x70, 0x9E, - 0x00, 0x00, 0x80, 0x60, 0x30, 0x1C, 0x1F, 0x1F, 0xF7, 0xFC, 0x78, 0x1E, - 0x07, 0x83, 0xC0, 0xF0, 0x3C, 0x1F, 0x07, 0x81, 0xE0, 0x79, 0x3C, 0x4F, - 0x23, 0xF0, 0xFC, 0x1C, 0x00, 0x0F, 0x0F, 0x3F, 0x87, 0x8F, 0x83, 0xC7, - 0xC1, 0xE3, 0xE1, 0xE1, 0xE0, 0xF0, 0xF0, 0x78, 0xF8, 0x78, 0x78, 0x3C, - 0x3C, 0x3E, 0x1E, 0x1F, 0x1E, 0x1F, 0x0F, 0x17, 0x97, 0x9B, 0xCB, 0xF9, - 0xF9, 0xF8, 0xF8, 0x78, 0x38, 0x00, 0x18, 0x37, 0xC3, 0xDE, 0x1E, 0x78, - 0x73, 0xC1, 0x9E, 0x08, 0xF0, 0xC7, 0x84, 0x3C, 0x41, 0xE4, 0x0F, 0x40, - 0x7C, 0x03, 0xC0, 0x1C, 0x00, 0xC0, 0x04, 0x00, 0x38, 0x10, 0xDF, 0x06, - 0x3D, 0xE0, 0xC7, 0xBC, 0x38, 0x73, 0xC7, 0x06, 0x79, 0xF0, 0x8F, 0x3E, - 0x11, 0xEB, 0xC4, 0x3F, 0x79, 0x07, 0xCF, 0x60, 0xF9, 0xE8, 0x1E, 0x3E, - 0x03, 0x87, 0x80, 0x70, 0xF0, 0x0C, 0x0C, 0x01, 0x01, 0x00, 0x03, 0x83, - 0x87, 0xF1, 0xF0, 0x3C, 0xF8, 0x0F, 0x60, 0x03, 0xD0, 0x00, 0xF8, 0x00, - 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1F, 0x00, 0x0F, - 0xC0, 0x02, 0xF1, 0x39, 0x3C, 0xCF, 0xCF, 0xE3, 0xE1, 0xF0, 0x70, 0x38, - 0x00, 0x01, 0x83, 0x07, 0xE3, 0xC1, 0xF1, 0xE0, 0x78, 0xF0, 0x3E, 0x18, - 0x1F, 0x08, 0x07, 0x84, 0x03, 0xC6, 0x01, 0xE2, 0x00, 0xFB, 0x00, 0x3D, - 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xE0, 0x00, 0x60, 0x00, 0x60, 0x0E, 0x60, 0x0F, 0xE0, 0x07, 0xE0, 0x01, - 0xC0, 0x00, 0x1F, 0xFC, 0x3F, 0xF8, 0x7F, 0xE1, 0x81, 0x82, 0x06, 0x00, - 0x08, 0x00, 0x20, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x10, 0x00, 0x40, - 0x01, 0x80, 0x07, 0xC0, 0x1F, 0x86, 0x3F, 0x8E, 0xCF, 0x9C, 0x07, 0x30, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0xF8, 0x03, 0xC0, 0x0F, 0x00, 0x1E, 0x00, - 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x1F, 0x00, 0x7E, 0x00, 0x30, 0x00, - 0x60, 0x00, 0xE0, 0x01, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, 0x00, 0x0C, 0x00, - 0x0F, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, - 0x00, 0xF0, 0x00, 0x70, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0xC0, 0x07, - 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x10, 0x00, 0xF0, 0x03, 0xF0, - 0x0F, 0x00, 0x1E, 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, - 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x70, 0x01, 0xE0, 0x0F, 0x80, 0x7C, 0x00, - 0x3E, 0x00, 0x7F, 0xC6, 0xFF, 0xFF, 0x61, 0xFE, 0x00, 0x7C}; - -const GFXglyph FreeSerifBoldItalic18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 11, 25, 14, 2, -23}, // 0x21 '!' - {35, 14, 10, 19, 4, -23}, // 0x22 '"' - {53, 20, 25, 17, -1, -24}, // 0x23 '#' - {116, 17, 29, 18, 0, -25}, // 0x24 '$' - {178, 27, 25, 29, 1, -23}, // 0x25 '%' - {263, 25, 25, 27, 0, -23}, // 0x26 '&' - {342, 5, 10, 10, 4, -23}, // 0x27 ''' - {349, 11, 30, 12, 1, -23}, // 0x28 '(' - {391, 11, 30, 12, -2, -23}, // 0x29 ')' - {433, 13, 15, 18, 2, -23}, // 0x2A '*' - {458, 17, 17, 20, 1, -16}, // 0x2B '+' - {495, 7, 11, 9, -2, -4}, // 0x2C ',' - {505, 9, 4, 12, 0, -9}, // 0x2D '-' - {510, 6, 5, 9, 0, -3}, // 0x2E '.' - {514, 14, 25, 12, 0, -23}, // 0x2F '/' - {558, 15, 25, 18, 1, -23}, // 0x30 '0' - {605, 15, 25, 17, 0, -23}, // 0x31 '1' - {652, 16, 25, 18, 0, -23}, // 0x32 '2' - {702, 15, 25, 17, 1, -23}, // 0x33 '3' - {749, 18, 24, 17, 0, -23}, // 0x34 '4' - {803, 17, 25, 18, 0, -23}, // 0x35 '5' - {857, 17, 25, 18, 1, -23}, // 0x36 '6' - {911, 16, 24, 17, 3, -23}, // 0x37 '7' - {959, 17, 25, 18, 0, -23}, // 0x38 '8' - {1013, 17, 25, 18, 0, -23}, // 0x39 '9' - {1067, 10, 17, 9, 0, -15}, // 0x3A ':' - {1089, 11, 22, 9, -1, -15}, // 0x3B ';' - {1120, 18, 19, 20, 1, -18}, // 0x3C '<' - {1163, 18, 10, 20, 2, -13}, // 0x3D '=' - {1186, 18, 19, 20, 2, -18}, // 0x3E '>' - {1229, 13, 25, 17, 3, -23}, // 0x3F '?' - {1270, 25, 25, 29, 2, -23}, // 0x40 '@' - {1349, 23, 25, 24, 0, -23}, // 0x41 'A' - {1421, 24, 25, 22, 0, -23}, // 0x42 'B' - {1496, 23, 25, 22, 1, -23}, // 0x43 'C' - {1568, 26, 25, 25, 0, -23}, // 0x44 'D' - {1650, 23, 25, 22, 0, -23}, // 0x45 'E' - {1722, 23, 25, 21, 0, -23}, // 0x46 'F' - {1794, 24, 25, 25, 2, -23}, // 0x47 'G' - {1869, 29, 25, 26, 0, -23}, // 0x48 'H' - {1960, 15, 25, 13, 0, -23}, // 0x49 'I' - {2007, 20, 27, 17, 0, -23}, // 0x4A 'J' - {2075, 25, 25, 23, 0, -23}, // 0x4B 'K' - {2154, 22, 25, 21, 0, -23}, // 0x4C 'L' - {2223, 33, 25, 31, 0, -23}, // 0x4D 'M' - {2327, 27, 25, 25, 0, -23}, // 0x4E 'N' - {2412, 23, 25, 24, 1, -23}, // 0x4F 'O' - {2484, 23, 25, 21, 0, -23}, // 0x50 'P' - {2556, 23, 31, 24, 1, -23}, // 0x51 'Q' - {2646, 24, 25, 23, 0, -23}, // 0x52 'R' - {2721, 18, 25, 18, 0, -23}, // 0x53 'S' - {2778, 21, 25, 21, 3, -23}, // 0x54 'T' - {2844, 24, 25, 25, 4, -23}, // 0x55 'U' - {2919, 24, 25, 25, 4, -23}, // 0x56 'V' - {2994, 31, 25, 32, 4, -23}, // 0x57 'W' - {3091, 25, 25, 24, 0, -23}, // 0x58 'X' - {3170, 21, 25, 22, 4, -23}, // 0x59 'Y' - {3236, 21, 25, 20, 0, -23}, // 0x5A 'Z' - {3302, 14, 30, 12, -1, -23}, // 0x5B '[' - {3355, 10, 25, 14, 4, -23}, // 0x5C '\' - {3387, 14, 30, 12, -2, -23}, // 0x5D ']' - {3440, 16, 13, 20, 2, -23}, // 0x5E '^' - {3466, 18, 3, 17, 0, 3}, // 0x5F '_' - {3473, 7, 6, 12, 3, -23}, // 0x60 '`' - {3479, 18, 17, 18, 0, -15}, // 0x61 'a' - {3518, 16, 26, 17, 1, -24}, // 0x62 'b' - {3570, 13, 17, 15, 1, -15}, // 0x63 'c' - {3598, 19, 25, 18, 1, -23}, // 0x64 'd' - {3658, 13, 17, 15, 1, -15}, // 0x65 'e' - {3686, 21, 32, 17, -3, -24}, // 0x66 'f' - {3770, 19, 23, 17, -1, -15}, // 0x67 'g' - {3825, 17, 25, 19, 1, -23}, // 0x68 'h' - {3879, 9, 25, 10, 1, -23}, // 0x69 'i' - {3908, 16, 31, 12, -3, -23}, // 0x6A 'j' - {3970, 17, 25, 18, 1, -23}, // 0x6B 'k' - {4024, 11, 25, 10, 1, -23}, // 0x6C 'l' - {4059, 26, 17, 27, 0, -15}, // 0x6D 'm' - {4115, 18, 17, 18, 0, -15}, // 0x6E 'n' - {4154, 15, 17, 17, 1, -15}, // 0x6F 'o' - {4186, 19, 23, 17, -2, -15}, // 0x70 'p' - {4241, 16, 23, 17, 1, -15}, // 0x71 'q' - {4287, 15, 16, 14, 0, -15}, // 0x72 'r' - {4317, 13, 17, 12, 0, -15}, // 0x73 's' - {4345, 10, 22, 10, 1, -20}, // 0x74 't' - {4373, 17, 17, 19, 1, -15}, // 0x75 'u' - {4410, 13, 16, 15, 2, -15}, // 0x76 'v' - {4436, 19, 16, 23, 3, -15}, // 0x77 'w' - {4474, 18, 17, 17, -1, -15}, // 0x78 'x' - {4513, 17, 23, 15, -2, -15}, // 0x79 'y' - {4562, 15, 19, 14, 0, -15}, // 0x7A 'z' - {4598, 15, 32, 12, 0, -24}, // 0x7B '{' - {4658, 3, 25, 9, 4, -23}, // 0x7C '|' - {4668, 15, 32, 12, -5, -24}, // 0x7D '}' - {4728, 16, 5, 20, 2, -11}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic18pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic18pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 5410 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h deleted file mode 100644 index e2fa4cb..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h +++ /dev/null @@ -1,795 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic24pt7bBitmaps[] PROGMEM = { - 0x00, 0x3C, 0x00, 0xFC, 0x01, 0xF8, 0x07, 0xF0, 0x0F, 0xE0, 0x1F, 0xC0, - 0x3F, 0x00, 0x7E, 0x00, 0xF8, 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x1E, - 0x00, 0x3C, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x00, 0x0E, 0x00, - 0x18, 0x00, 0x30, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xF0, 0x03, 0xF0, 0x0F, 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x3F, 0x00, - 0x3C, 0x00, 0x1C, 0x01, 0xC7, 0xC0, 0x7D, 0xF8, 0x1F, 0xBF, 0x03, 0xF7, - 0xC0, 0x7C, 0xF8, 0x0F, 0x9E, 0x01, 0xE3, 0xC0, 0x3C, 0x70, 0x07, 0x1E, - 0x00, 0xE3, 0x80, 0x38, 0x70, 0x07, 0x0C, 0x00, 0xC0, 0x00, 0x03, 0xC1, - 0xE0, 0x00, 0x70, 0x38, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0xC1, 0xE0, 0x00, - 0x70, 0x38, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0x81, 0xC0, 0x00, 0xF0, 0x78, - 0x00, 0x1E, 0x0F, 0x00, 0x07, 0x83, 0xC0, 0x1F, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x00, 0xE0, 0x70, 0x00, 0x3C, 0x1E, 0x00, - 0x07, 0x83, 0xC0, 0x00, 0xE0, 0x70, 0x00, 0x3C, 0x1E, 0x00, 0x07, 0x83, - 0xC0, 0x00, 0xE0, 0x70, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFC, 0x1F, - 0xFF, 0xFF, 0x00, 0x38, 0x1C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xE0, 0xF0, - 0x00, 0x38, 0x1C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xC0, 0xE0, 0x00, 0x78, - 0x3C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xC0, 0xE0, 0x00, 0x78, 0x3C, 0x00, - 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x1F, - 0xE0, 0x00, 0x7F, 0xF8, 0x01, 0xF1, 0x9E, 0x01, 0xC1, 0x8F, 0x03, 0x83, - 0x8F, 0x03, 0x83, 0x06, 0x07, 0x83, 0x06, 0x07, 0x87, 0x06, 0x07, 0xC7, - 0x04, 0x07, 0xE6, 0x04, 0x07, 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x03, 0xFF, - 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x1F, - 0xE0, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xF0, 0x00, 0x3B, 0xF8, 0x20, 0x31, - 0xF8, 0x20, 0x30, 0xF8, 0x60, 0x70, 0xF8, 0x60, 0x60, 0xF8, 0x60, 0x60, - 0xF8, 0xF0, 0xE0, 0xF0, 0xF0, 0xE1, 0xE0, 0x78, 0xC3, 0xE0, 0x3C, 0xC7, - 0xC0, 0x0F, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x01, 0x80, 0x00, 0x03, 0x80, - 0x00, 0x03, 0x80, 0x00, 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0xF0, - 0x00, 0x70, 0x00, 0xFF, 0x80, 0x1C, 0x00, 0x3F, 0x38, 0x1F, 0x00, 0x0F, - 0xC7, 0xFF, 0xE0, 0x03, 0xF0, 0x3F, 0xB8, 0x00, 0x7E, 0x04, 0x07, 0x00, - 0x1F, 0x80, 0x81, 0xC0, 0x03, 0xF0, 0x10, 0x38, 0x00, 0xFC, 0x02, 0x0E, - 0x00, 0x1F, 0x80, 0x81, 0x80, 0x03, 0xF0, 0x10, 0x70, 0x00, 0x7C, 0x06, - 0x1C, 0x00, 0x0F, 0x80, 0x83, 0x80, 0x01, 0xF0, 0x30, 0xE0, 0x00, 0x1E, - 0x0C, 0x1C, 0x07, 0xC3, 0xE3, 0x07, 0x03, 0xFC, 0x3F, 0xC0, 0xC0, 0xFC, - 0x43, 0xE0, 0x38, 0x3E, 0x0C, 0x00, 0x0E, 0x0F, 0xC0, 0x80, 0x01, 0xC3, - 0xF0, 0x10, 0x00, 0x70, 0xFC, 0x02, 0x00, 0x0C, 0x1F, 0x80, 0x40, 0x03, - 0x83, 0xE0, 0x08, 0x00, 0x60, 0xFC, 0x02, 0x00, 0x1C, 0x1F, 0x80, 0x40, - 0x07, 0x03, 0xE0, 0x10, 0x00, 0xE0, 0x7C, 0x02, 0x00, 0x38, 0x0F, 0x80, - 0xC0, 0x06, 0x01, 0xF0, 0x30, 0x01, 0xC0, 0x1F, 0x0C, 0x00, 0x30, 0x01, - 0xFF, 0x00, 0x0E, 0x00, 0x1F, 0x80, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x01, 0xF1, 0xE0, 0x00, 0x00, 0xF0, 0x78, 0x00, 0x00, - 0xF0, 0x3C, 0x00, 0x00, 0x78, 0x1E, 0x00, 0x00, 0x7C, 0x0F, 0x00, 0x00, - 0x3E, 0x0F, 0x80, 0x00, 0x1F, 0x07, 0x80, 0x00, 0x0F, 0x87, 0x80, 0x00, - 0x07, 0xC7, 0x80, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, 0xFF, 0x07, 0xFE, - 0x03, 0xCF, 0xC0, 0xFE, 0x03, 0xC7, 0xE0, 0x3C, 0x07, 0xC3, 0xF0, 0x1C, - 0x07, 0xC0, 0xFC, 0x0C, 0x03, 0xC0, 0x7E, 0x0E, 0x03, 0xE0, 0x3F, 0x0E, - 0x01, 0xF0, 0x1F, 0xC6, 0x01, 0xF8, 0x07, 0xF6, 0x00, 0xFC, 0x03, 0xFF, - 0x00, 0x7E, 0x00, 0xFF, 0x00, 0x3F, 0x80, 0x7F, 0x80, 0x1F, 0xC0, 0x1F, - 0xC0, 0x07, 0xF0, 0x0F, 0xF0, 0x13, 0xFE, 0x0F, 0xFE, 0x18, 0xFF, 0xFE, - 0xFF, 0xF8, 0x3F, 0xFE, 0x3F, 0xF8, 0x07, 0xF8, 0x03, 0xF0, 0x00, 0x1C, - 0x7D, 0xFB, 0xF7, 0xCF, 0x9E, 0x3C, 0x71, 0xE3, 0x87, 0x0C, 0x00, 0x00, - 0x04, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x3C, 0x01, 0xE0, 0x0F, 0x80, 0x3C, 0x00, 0xF0, 0x07, - 0xC0, 0x1E, 0x00, 0x78, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF0, 0x03, - 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, - 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x30, 0x00, 0xE0, 0x01, 0x80, - 0x06, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x60, 0x01, 0x80, 0x00, 0x00, 0x01, - 0x00, 0x06, 0x00, 0x08, 0x00, 0x30, 0x00, 0x40, 0x01, 0x80, 0x06, 0x00, - 0x1C, 0x00, 0x30, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0xF0, - 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x7C, - 0x01, 0xF0, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x03, 0xE0, 0x0F, 0x80, 0x3C, - 0x01, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0xF0, 0x03, 0x80, 0x1E, 0x00, 0xF0, - 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x06, 0x00, 0x30, 0x00, 0x80, 0x00, 0x00, - 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x07, 0x0E, 0x1D, 0xF1, - 0xC7, 0xFF, 0x11, 0xFF, 0xE2, 0x3F, 0x7E, 0x4F, 0xC0, 0x3E, 0x00, 0x07, - 0xC0, 0x3F, 0x27, 0xEF, 0xC4, 0x7F, 0xF8, 0x8F, 0xFE, 0x38, 0xFB, 0x87, - 0x0E, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0x70, 0x00, 0x00, - 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x03, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x01, - 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, - 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0x80, 0x00, 0x0F, 0x07, 0xE1, 0xFC, 0x7F, 0x1F, 0xC3, 0xF0, 0x7C, - 0x0E, 0x03, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x1C, 0x04, 0x00, 0x7F, 0xF7, - 0xFF, 0x7F, 0xEF, 0xFE, 0xFF, 0xE0, 0x3C, 0x7E, 0xFF, 0xFF, 0xFF, 0x7E, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, - 0x78, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x07, - 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3C, - 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x01, 0xE0, - 0x00, 0x7C, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, - 0x1E, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0xE3, 0x80, 0x0F, 0x07, 0x00, 0x7C, 0x1C, 0x03, 0xE0, 0x78, 0x0F, 0x81, - 0xE0, 0x7C, 0x07, 0x83, 0xF0, 0x1F, 0x0F, 0xC0, 0xFC, 0x7E, 0x03, 0xF1, - 0xF8, 0x0F, 0xCF, 0xE0, 0x3F, 0x3F, 0x00, 0xFD, 0xFC, 0x07, 0xF7, 0xF0, - 0x1F, 0xDF, 0xC0, 0x7F, 0x7E, 0x01, 0xFB, 0xF8, 0x0F, 0xEF, 0xE0, 0x3F, - 0xBF, 0x80, 0xFE, 0xFC, 0x03, 0xF3, 0xF0, 0x1F, 0xCF, 0xC0, 0x7F, 0x3F, - 0x01, 0xF8, 0xFC, 0x07, 0xE3, 0xE0, 0x3F, 0x0F, 0x80, 0xFC, 0x1E, 0x07, - 0xE0, 0x78, 0x1F, 0x00, 0xE0, 0x78, 0x03, 0x83, 0xC0, 0x07, 0x1E, 0x00, - 0x07, 0xE0, 0x00, 0x00, 0x00, 0x70, 0x01, 0xFE, 0x01, 0xFF, 0xE0, 0x00, - 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, - 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x00, - 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xE0, - 0x00, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xFC, - 0x00, 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF0, 0x00, 0x3F, - 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x1F, 0xF8, 0x0F, 0xFF, 0xF0, 0x00, - 0x0F, 0x80, 0x01, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x7F, 0xFE, 0x03, 0x83, - 0xF8, 0x0C, 0x07, 0xF0, 0x60, 0x1F, 0xC3, 0x00, 0x3F, 0x00, 0x00, 0xFC, - 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x1E, - 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, - 0x0E, 0x00, 0x00, 0x70, 0x06, 0x03, 0x80, 0x10, 0x1C, 0x00, 0xC0, 0xE0, - 0x06, 0x07, 0xFF, 0xF8, 0x3F, 0xFF, 0xE1, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, - 0x3F, 0xFF, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, - 0x60, 0xFE, 0x03, 0x01, 0xFC, 0x08, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, - 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0xFC, - 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0xF0, 0x00, - 0x7F, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x03, - 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, - 0x00, 0x0F, 0x80, 0x00, 0x3C, 0x1C, 0x01, 0xF0, 0xF8, 0x07, 0x83, 0xF0, - 0x3C, 0x0F, 0xE1, 0xE0, 0x1F, 0xFE, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x00, - 0x07, 0x00, 0x00, 0x07, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xE0, 0x00, - 0x07, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x07, 0xFC, 0x00, - 0x06, 0xFC, 0x00, 0x06, 0x7E, 0x00, 0x06, 0x3F, 0x00, 0x06, 0x3F, 0x00, - 0x06, 0x1F, 0x80, 0x06, 0x0F, 0xC0, 0x06, 0x07, 0xE0, 0x03, 0x07, 0xE0, - 0x03, 0x03, 0xF0, 0x03, 0x01, 0xF8, 0x03, 0x01, 0xFC, 0x03, 0x00, 0xFC, - 0x03, 0x00, 0x7E, 0x03, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, - 0xF0, 0xFF, 0xFF, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x03, - 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, - 0x7F, 0xFC, 0x00, 0xFF, 0xFC, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x03, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x07, - 0xFF, 0x00, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0xC0, 0x00, 0xFF, 0xE0, 0x00, - 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, - 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0xFC, - 0x07, 0x80, 0xFC, 0x0F, 0x00, 0xFE, 0x1E, 0x00, 0x7F, 0xF8, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0x80, 0x00, - 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x01, 0xFC, - 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, - 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xF0, 0x0F, 0xE1, 0xF0, 0x3F, 0x81, 0xF0, - 0x7F, 0x03, 0xF0, 0xFC, 0x07, 0xE3, 0xF8, 0x0F, 0xC7, 0xF0, 0x1F, 0x8F, - 0xC0, 0x7F, 0x1F, 0x80, 0xFE, 0x3F, 0x01, 0xFC, 0x7C, 0x03, 0xF0, 0xF8, - 0x0F, 0xE1, 0xF0, 0x1F, 0xC1, 0xE0, 0x3F, 0x03, 0xC0, 0xFC, 0x07, 0x81, - 0xF0, 0x07, 0x87, 0xC0, 0x07, 0xFF, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xFF, - 0xFC, 0x1F, 0xFF, 0xF8, 0x3F, 0xFF, 0xE0, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, - 0x07, 0x00, 0x1C, 0x08, 0x00, 0x78, 0x30, 0x01, 0xE0, 0x40, 0x03, 0xC0, - 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, - 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x78, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, - 0x1E, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x03, 0xFE, 0x00, 0x3C, 0x78, - 0x03, 0xC1, 0xE0, 0x3C, 0x07, 0x81, 0xE0, 0x3C, 0x1F, 0x01, 0xE0, 0xF8, - 0x0F, 0x07, 0xC0, 0x78, 0x3F, 0x03, 0xC1, 0xF8, 0x3C, 0x0F, 0xE1, 0xE0, - 0x3F, 0x9E, 0x01, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x1F, 0xFC, 0x03, 0xCF, 0xF0, 0x3C, 0x3F, 0x83, 0xC0, 0xFC, 0x3C, - 0x03, 0xF1, 0xE0, 0x1F, 0x9E, 0x00, 0x7C, 0xF0, 0x03, 0xE7, 0x80, 0x1F, - 0x3C, 0x00, 0xF9, 0xE0, 0x07, 0x87, 0x00, 0x3C, 0x3C, 0x03, 0xC0, 0xF0, - 0x3C, 0x03, 0xC3, 0xC0, 0x07, 0xF0, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, - 0xE0, 0x03, 0xF1, 0xE0, 0x0F, 0xC1, 0xC0, 0x3F, 0x03, 0xC0, 0xFE, 0x07, - 0x81, 0xF8, 0x0F, 0x87, 0xF0, 0x1F, 0x0F, 0xC0, 0x3E, 0x3F, 0x80, 0xFC, - 0x7F, 0x01, 0xF8, 0xFC, 0x03, 0xF1, 0xF8, 0x07, 0xE3, 0xF0, 0x1F, 0xC7, - 0xE0, 0x3F, 0x8F, 0xC0, 0x7E, 0x0F, 0x81, 0xFC, 0x1F, 0x03, 0xF8, 0x1F, - 0x0F, 0xE0, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x03, - 0xF8, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF8, - 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x1F, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x01, 0xE0, 0x1F, 0x81, 0xFE, 0x0F, - 0xF0, 0x7F, 0x81, 0xF8, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x80, 0x7E, 0x07, 0xF8, 0x3F, - 0xC1, 0xFE, 0x07, 0xE0, 0x1E, 0x00, 0x00, 0x78, 0x01, 0xF8, 0x07, 0xF8, - 0x0F, 0xF0, 0x1F, 0xE0, 0x1F, 0x80, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x80, - 0x1F, 0x80, 0x3F, 0x80, 0x7F, 0x00, 0xFE, 0x00, 0xFC, 0x00, 0xF8, 0x00, - 0xE0, 0x01, 0xC0, 0x07, 0x00, 0x0C, 0x00, 0x30, 0x01, 0xC0, 0x0E, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x07, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x7F, 0x00, 0x03, 0xFF, 0x00, 0x0F, 0xFC, 0x00, 0x3F, 0xF0, - 0x01, 0xFF, 0xC0, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, 0x7F, 0xE0, 0x00, - 0xFF, 0x80, 0x00, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0xE0, 0x00, - 0x1F, 0xF8, 0x00, 0x07, 0xFE, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, - 0x00, 0x0F, 0xFC, 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x07, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x00, 0x0F, 0xFC, 0x00, 0x03, 0xFF, 0x80, - 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xFF, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0xFF, 0x00, 0x03, 0xFF, 0x00, 0x1F, 0xFC, - 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x3F, 0xF0, 0x00, - 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xE0, 0x00, 0x00, - 0x80, 0x00, 0x00, 0x01, 0xF8, 0x01, 0xFF, 0x80, 0xF1, 0xF0, 0x38, 0x3E, - 0x1E, 0x0F, 0xC7, 0xC3, 0xF1, 0xF0, 0xFC, 0x7C, 0x3F, 0x0E, 0x0F, 0xC0, - 0x07, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x07, - 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x03, 0xC0, 0x01, 0xF8, 0x00, 0xFF, 0x00, 0x3F, 0xC0, 0x0F, 0xF0, - 0x01, 0xF8, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x1F, - 0xFF, 0xC0, 0x00, 0x3F, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x7C, - 0x00, 0x03, 0x80, 0x7C, 0x00, 0x00, 0xE0, 0x7C, 0x00, 0x00, 0x38, 0x3C, - 0x00, 0xF0, 0x4C, 0x3E, 0x00, 0xFD, 0xE7, 0x1E, 0x00, 0xF3, 0xF1, 0x9F, - 0x00, 0xF1, 0xF0, 0xEF, 0x80, 0xF0, 0x78, 0x3F, 0x80, 0xF0, 0x3C, 0x1F, - 0xC0, 0x78, 0x1E, 0x0F, 0xE0, 0x78, 0x1E, 0x07, 0xF0, 0x3C, 0x0F, 0x03, - 0xF8, 0x3E, 0x07, 0x81, 0xFC, 0x1E, 0x07, 0x81, 0xFE, 0x0F, 0x03, 0xC0, - 0xDF, 0x07, 0x83, 0xC0, 0x6F, 0x83, 0xC3, 0xE0, 0x63, 0xE1, 0xF3, 0xF0, - 0x71, 0xF0, 0x7E, 0x78, 0x70, 0xF8, 0x1E, 0x3F, 0xF0, 0x3E, 0x00, 0x07, - 0xE0, 0x0F, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x03, 0x80, 0x03, 0xF0, - 0x07, 0xC0, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x00, - 0x00, 0x06, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, - 0x7E, 0x00, 0x00, 0x06, 0xFC, 0x00, 0x00, 0x19, 0xF8, 0x00, 0x00, 0x63, - 0xF8, 0x00, 0x00, 0xC7, 0xF0, 0x00, 0x03, 0x07, 0xE0, 0x00, 0x06, 0x0F, - 0xC0, 0x00, 0x18, 0x1F, 0x80, 0x00, 0x60, 0x3F, 0x00, 0x00, 0xC0, 0x7F, - 0x00, 0x03, 0x00, 0xFE, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0xF8, - 0x00, 0x60, 0x03, 0xF0, 0x00, 0xC0, 0x07, 0xE0, 0x03, 0x00, 0x0F, 0xE0, - 0x0E, 0x00, 0x1F, 0xC0, 0x18, 0x00, 0x3F, 0x80, 0x70, 0x00, 0x7F, 0x01, - 0xC0, 0x00, 0xFE, 0x03, 0x80, 0x01, 0xFE, 0x1F, 0x80, 0x07, 0xFE, 0x7F, - 0xC0, 0x3F, 0xFF, 0x01, 0xFF, 0xFF, 0x80, 0x00, 0xFF, 0xFF, 0xE0, 0x00, - 0xFE, 0x1F, 0xE0, 0x01, 0xFC, 0x1F, 0xE0, 0x03, 0xF8, 0x1F, 0xE0, 0x0F, - 0xE0, 0x3F, 0xC0, 0x1F, 0xC0, 0x7F, 0x80, 0x3F, 0x80, 0xFF, 0x00, 0x7F, - 0x01, 0xFE, 0x01, 0xFC, 0x03, 0xF8, 0x03, 0xF8, 0x0F, 0xF0, 0x07, 0xF0, - 0x1F, 0xC0, 0x0F, 0xC0, 0x7F, 0x00, 0x3F, 0x87, 0xF0, 0x00, 0x7F, 0xFF, - 0x00, 0x00, 0xFE, 0x1F, 0xC0, 0x03, 0xF8, 0x0F, 0xE0, 0x07, 0xF0, 0x0F, - 0xE0, 0x0F, 0xE0, 0x1F, 0xC0, 0x1F, 0xC0, 0x3F, 0xC0, 0x7F, 0x00, 0x7F, - 0x80, 0xFE, 0x00, 0xFF, 0x01, 0xFC, 0x01, 0xFE, 0x03, 0xF0, 0x07, 0xFC, - 0x0F, 0xE0, 0x0F, 0xF0, 0x1F, 0xC0, 0x3F, 0xE0, 0x3F, 0x80, 0x7F, 0x80, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x0F, 0xF8, 0x07, 0xFF, 0xFF, 0xC0, 0x3F, - 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x08, 0x00, 0x7F, 0xFE, 0xC0, - 0x0F, 0xF0, 0x7E, 0x00, 0xFE, 0x01, 0xF0, 0x1F, 0xE0, 0x07, 0x01, 0xFE, - 0x00, 0x38, 0x1F, 0xE0, 0x00, 0xC0, 0xFE, 0x00, 0x06, 0x0F, 0xF0, 0x00, - 0x30, 0xFF, 0x00, 0x01, 0x07, 0xF8, 0x00, 0x08, 0x7F, 0x80, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x00, 0x06, 0x03, 0xFC, 0x00, - 0x70, 0x0F, 0xE0, 0x07, 0x00, 0x1F, 0xC0, 0xE0, 0x00, 0x7F, 0xFE, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x00, 0x3F, 0xFF, 0xFE, - 0x00, 0x00, 0xFE, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x3F, 0x00, 0x03, 0xF8, - 0x07, 0xF0, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x03, - 0xF8, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x1F, 0xC0, 0x03, 0xFC, - 0x03, 0xF8, 0x00, 0x7F, 0x80, 0x7F, 0x00, 0x0F, 0xF0, 0x0F, 0xC0, 0x01, - 0xFE, 0x03, 0xF8, 0x00, 0x3F, 0xC0, 0x7F, 0x00, 0x07, 0xF8, 0x0F, 0xE0, - 0x01, 0xFF, 0x03, 0xF8, 0x00, 0x3F, 0xE0, 0x7F, 0x00, 0x07, 0xF8, 0x0F, - 0xE0, 0x00, 0xFF, 0x01, 0xFC, 0x00, 0x3F, 0xE0, 0x7F, 0x00, 0x07, 0xF8, - 0x0F, 0xE0, 0x01, 0xFF, 0x01, 0xFC, 0x00, 0x3F, 0xC0, 0x3F, 0x00, 0x0F, - 0xF0, 0x0F, 0xE0, 0x01, 0xFC, 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x3F, 0x80, - 0x1F, 0xC0, 0x0F, 0xE0, 0x0F, 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, 0x7F, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xF8, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFF, - 0x00, 0x7F, 0xFF, 0xFF, 0x00, 0x3F, 0xC0, 0x7E, 0x00, 0x3F, 0x80, 0x1E, - 0x00, 0x3F, 0x80, 0x0E, 0x00, 0x7F, 0x00, 0x06, 0x00, 0x7F, 0x00, 0x04, - 0x00, 0x7F, 0x00, 0x04, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, 0x01, 0x80, - 0x00, 0xFE, 0x01, 0x00, 0x00, 0xFE, 0x03, 0x00, 0x00, 0xFC, 0x0F, 0x00, - 0x01, 0xFF, 0xFF, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x01, 0xFC, 0x3E, 0x00, - 0x03, 0xF8, 0x1E, 0x00, 0x03, 0xF8, 0x0C, 0x00, 0x03, 0xF8, 0x0C, 0x00, - 0x03, 0xF8, 0x0C, 0x00, 0x07, 0xF0, 0x08, 0x00, 0x07, 0xF0, 0x00, 0x08, - 0x07, 0xF0, 0x00, 0x18, 0x07, 0xE0, 0x00, 0x30, 0x0F, 0xE0, 0x00, 0x30, - 0x0F, 0xE0, 0x00, 0x70, 0x0F, 0xE0, 0x01, 0xE0, 0x1F, 0xC0, 0x07, 0xE0, - 0x1F, 0xE0, 0x3F, 0xE0, 0x3F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xC0, - 0x01, 0xFF, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xFC, 0x00, 0xFF, 0x03, 0xF0, - 0x01, 0xFC, 0x01, 0xE0, 0x03, 0xF8, 0x01, 0xC0, 0x0F, 0xE0, 0x01, 0x80, - 0x1F, 0xC0, 0x02, 0x00, 0x3F, 0x80, 0x04, 0x00, 0x7F, 0x00, 0x00, 0x01, - 0xFC, 0x03, 0x00, 0x03, 0xF8, 0x04, 0x00, 0x07, 0xF0, 0x18, 0x00, 0x0F, - 0xC0, 0xF0, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0xFE, - 0x1F, 0x00, 0x03, 0xF8, 0x1E, 0x00, 0x07, 0xF0, 0x18, 0x00, 0x0F, 0xE0, - 0x30, 0x00, 0x1F, 0xC0, 0x60, 0x00, 0x7F, 0x00, 0x80, 0x00, 0xFE, 0x01, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0x02, 0x00, 0x0F, 0xFF, 0xEE, 0x00, 0x3F, 0xC0, - 0xFC, 0x00, 0x7F, 0x00, 0x7C, 0x01, 0xFE, 0x00, 0x3C, 0x03, 0xFC, 0x00, - 0x38, 0x07, 0xF8, 0x00, 0x18, 0x07, 0xF0, 0x00, 0x18, 0x0F, 0xF0, 0x00, - 0x10, 0x1F, 0xE0, 0x00, 0x10, 0x1F, 0xE0, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x00, 0xFF, 0x80, 0x1F, - 0xFF, 0xFF, 0x00, 0x07, 0xFC, 0xFF, 0x00, 0x03, 0xF8, 0xFF, 0x00, 0x03, - 0xF8, 0xFF, 0x00, 0x03, 0xF0, 0xFF, 0x00, 0x03, 0xF0, 0xFF, 0x00, 0x07, - 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xE0, 0x7F, 0x80, 0x07, - 0xE0, 0x3F, 0x80, 0x0F, 0xE0, 0x1F, 0xC0, 0x0F, 0xC0, 0x0F, 0xE0, 0x0F, - 0xC0, 0x07, 0xF0, 0x3F, 0x80, 0x01, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xE0, - 0x00, 0x01, 0xFF, 0xFC, 0x7F, 0xFE, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, 0x00, - 0xFE, 0x00, 0x3F, 0xC0, 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, - 0xFE, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x00, - 0x3F, 0x80, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x01, 0xFC, 0x00, - 0x7F, 0x00, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x07, 0xF0, 0x01, 0xFC, 0x00, - 0x0F, 0xC0, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x00, 0x7F, 0xFF, - 0xFF, 0xC0, 0x00, 0xFF, 0xFF, 0xFF, 0x80, 0x03, 0xF8, 0x00, 0x7F, 0x00, - 0x07, 0xF0, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x03, 0xF8, 0x00, 0x1F, 0xC0, - 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x3F, 0x80, - 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x03, 0xF0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, - 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x0F, 0xE0, - 0x00, 0xFF, 0x00, 0x3F, 0xC0, 0x01, 0xFE, 0x00, 0x7F, 0x80, 0x07, 0xFC, - 0x01, 0xFF, 0x00, 0x3F, 0xFF, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0xF8, - 0x03, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x3F, - 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xF0, 0x00, - 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFE, 0x00, 0x07, 0xF0, - 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x07, - 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFC, 0x00, - 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x3F, 0xC0, 0x01, 0xFC, - 0x00, 0x1F, 0xF0, 0x03, 0xFF, 0xF0, 0x00, 0x00, 0x07, 0xFF, 0xE0, 0x00, - 0x3F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x07, 0x03, 0xF0, 0x01, 0xF0, 0xFE, 0x00, - 0x3E, 0x1F, 0xC0, 0x07, 0xC3, 0xF0, 0x00, 0xF8, 0xFC, 0x00, 0x0F, 0x3F, - 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x01, 0xFF, 0xF8, - 0xFF, 0xC0, 0x1F, 0xF8, 0x0F, 0xC0, 0x03, 0xF8, 0x01, 0xC0, 0x00, 0xFE, - 0x00, 0xE0, 0x00, 0x3F, 0x80, 0x70, 0x00, 0x1F, 0xC0, 0x38, 0x00, 0x07, - 0xF0, 0x1C, 0x00, 0x01, 0xFC, 0x0E, 0x00, 0x00, 0x7F, 0x07, 0x00, 0x00, - 0x3F, 0x83, 0x80, 0x00, 0x0F, 0xE1, 0xC0, 0x00, 0x03, 0xF8, 0xE0, 0x00, - 0x00, 0xFC, 0x60, 0x00, 0x00, 0x7F, 0x7C, 0x00, 0x00, 0x1F, 0xFF, 0x00, - 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0xFE, 0x7F, - 0x00, 0x00, 0x3F, 0x9F, 0xC0, 0x00, 0x0F, 0xE3, 0xF8, 0x00, 0x07, 0xF0, - 0xFE, 0x00, 0x01, 0xFC, 0x1F, 0xC0, 0x00, 0x7F, 0x07, 0xF0, 0x00, 0x1F, - 0x80, 0xFE, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x03, 0xF8, 0x0F, 0xE0, 0x00, - 0xFE, 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x7F, 0x00, 0x1F, 0xE0, 0x0F, 0xE0, - 0x0F, 0xF8, 0x07, 0xFC, 0x0F, 0xFF, 0xC7, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, - 0x00, 0x03, 0xFF, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, - 0xE0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x03, 0xF8, 0x00, 0x04, 0x1F, 0xC0, 0x00, 0x60, 0xFC, 0x00, 0x06, - 0x0F, 0xE0, 0x00, 0x30, 0x7F, 0x00, 0x03, 0x83, 0xF8, 0x00, 0x7C, 0x3F, - 0x80, 0x0F, 0xC1, 0xFE, 0x03, 0xFE, 0x1F, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, - 0xFF, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x03, 0xFC, 0x00, 0x03, - 0xFC, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x80, 0x03, 0xFC, 0x00, 0x0F, 0xF8, - 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x80, 0x03, 0xFC, 0x00, 0x1F, 0xF0, 0x00, - 0x6F, 0xC0, 0x03, 0xFF, 0x00, 0x06, 0xFC, 0x00, 0x37, 0xF0, 0x00, 0x6F, - 0xE0, 0x06, 0x7E, 0x00, 0x04, 0xFE, 0x00, 0xEF, 0xE0, 0x00, 0xCF, 0xE0, - 0x0C, 0xFE, 0x00, 0x0C, 0xFE, 0x01, 0x8F, 0xE0, 0x00, 0xCF, 0xE0, 0x38, - 0xFC, 0x00, 0x18, 0x7E, 0x03, 0x1F, 0xC0, 0x01, 0x87, 0xE0, 0x61, 0xFC, - 0x00, 0x18, 0x7E, 0x0E, 0x1F, 0xC0, 0x01, 0x87, 0xE0, 0xC3, 0xF8, 0x00, - 0x30, 0x7F, 0x18, 0x3F, 0x80, 0x03, 0x07, 0xF3, 0x83, 0xF8, 0x00, 0x30, - 0x7F, 0x30, 0x3F, 0x00, 0x06, 0x07, 0xF7, 0x07, 0xF0, 0x00, 0x60, 0x3F, - 0xE0, 0x7F, 0x00, 0x06, 0x03, 0xFC, 0x07, 0xF0, 0x00, 0xE0, 0x3F, 0xC0, - 0x7E, 0x00, 0x0C, 0x03, 0xF8, 0x0F, 0xE0, 0x00, 0xC0, 0x3F, 0x00, 0xFE, - 0x00, 0x0C, 0x03, 0xF0, 0x0F, 0xE0, 0x01, 0xC0, 0x3E, 0x01, 0xFC, 0x00, - 0x1C, 0x03, 0xC0, 0x1F, 0xC0, 0x07, 0xE0, 0x3C, 0x03, 0xFE, 0x00, 0xFF, - 0xC1, 0x81, 0xFF, 0xFC, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x03, 0xFF, - 0x00, 0x1F, 0xF8, 0x03, 0xF8, 0x00, 0x3F, 0x00, 0x0F, 0xE0, 0x00, 0xF0, - 0x00, 0x7F, 0x00, 0x07, 0x00, 0x03, 0xFC, 0x00, 0x38, 0x00, 0x1F, 0xE0, - 0x01, 0x80, 0x01, 0xBF, 0x80, 0x0C, 0x00, 0x0D, 0xFC, 0x00, 0x60, 0x00, - 0x67, 0xF0, 0x07, 0x00, 0x02, 0x3F, 0x80, 0x30, 0x00, 0x30, 0xFE, 0x01, - 0x80, 0x01, 0x87, 0xF0, 0x0C, 0x00, 0x0C, 0x1F, 0xC0, 0xC0, 0x00, 0xC0, - 0xFE, 0x06, 0x00, 0x06, 0x07, 0xF8, 0x30, 0x00, 0x30, 0x1F, 0xC1, 0x80, - 0x01, 0x80, 0xFF, 0x18, 0x00, 0x18, 0x03, 0xF8, 0xC0, 0x00, 0xC0, 0x1F, - 0xC6, 0x00, 0x06, 0x00, 0x7F, 0x60, 0x00, 0x60, 0x03, 0xFB, 0x00, 0x03, - 0x00, 0x0F, 0xF8, 0x00, 0x18, 0x00, 0x7F, 0xC0, 0x01, 0xC0, 0x01, 0xFC, - 0x00, 0x0C, 0x00, 0x0F, 0xE0, 0x00, 0x60, 0x00, 0x3F, 0x00, 0x03, 0x00, - 0x01, 0xF0, 0x00, 0x38, 0x00, 0x07, 0x80, 0x01, 0xC0, 0x00, 0x3C, 0x00, - 0x3F, 0x00, 0x01, 0xE0, 0x03, 0xFF, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, - 0x30, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0x7E, - 0x1F, 0x80, 0x01, 0xF0, 0x0F, 0x80, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x00, - 0x1F, 0x80, 0xFE, 0x00, 0x3F, 0x03, 0xF8, 0x00, 0x7E, 0x07, 0xF0, 0x00, - 0xFE, 0x1F, 0xC0, 0x01, 0xFC, 0x7F, 0x80, 0x03, 0xF8, 0xFE, 0x00, 0x07, - 0xF3, 0xFC, 0x00, 0x1F, 0xE7, 0xF0, 0x00, 0x3F, 0xDF, 0xE0, 0x00, 0x7F, - 0xBF, 0xC0, 0x00, 0xFE, 0x7F, 0x80, 0x03, 0xFC, 0xFE, 0x00, 0x07, 0xFB, - 0xFC, 0x00, 0x0F, 0xF7, 0xF8, 0x00, 0x3F, 0xCF, 0xF0, 0x00, 0x7F, 0x9F, - 0xC0, 0x00, 0xFE, 0x3F, 0x80, 0x03, 0xFC, 0x7F, 0x00, 0x07, 0xF0, 0xFE, - 0x00, 0x1F, 0xC0, 0xFC, 0x00, 0x3F, 0x81, 0xF8, 0x00, 0xFE, 0x03, 0xF0, - 0x03, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x03, 0xE0, 0x1F, 0x00, 0x03, 0xE0, - 0xFC, 0x00, 0x03, 0xFF, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x01, 0xFF, - 0xFF, 0x80, 0x00, 0xFF, 0xFF, 0xE0, 0x00, 0xFE, 0x1F, 0xE0, 0x01, 0xFC, - 0x1F, 0xE0, 0x03, 0xF0, 0x1F, 0xC0, 0x0F, 0xE0, 0x3F, 0xC0, 0x1F, 0xC0, - 0x7F, 0x80, 0x3F, 0x80, 0xFF, 0x00, 0x7E, 0x01, 0xFE, 0x01, 0xFC, 0x03, - 0xFC, 0x03, 0xF8, 0x0F, 0xF8, 0x07, 0xF0, 0x1F, 0xE0, 0x0F, 0xC0, 0x7F, - 0x80, 0x3F, 0x81, 0xFE, 0x00, 0x7F, 0x07, 0xF8, 0x00, 0xFF, 0xFF, 0xC0, - 0x03, 0xFF, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, - 0x1F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0x00, 0x00, 0x7E, 0x1F, 0x80, 0x01, - 0xF0, 0x0F, 0x80, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x80, 0x1F, 0x80, 0xFE, - 0x00, 0x3F, 0x03, 0xF8, 0x00, 0x7E, 0x07, 0xF0, 0x00, 0xFE, 0x1F, 0xC0, - 0x01, 0xFC, 0x7F, 0x80, 0x03, 0xF8, 0xFE, 0x00, 0x07, 0xF3, 0xFC, 0x00, - 0x1F, 0xE7, 0xF8, 0x00, 0x3F, 0xDF, 0xE0, 0x00, 0x7F, 0xBF, 0xC0, 0x00, - 0xFF, 0x7F, 0x80, 0x01, 0xFC, 0xFE, 0x00, 0x07, 0xFB, 0xFC, 0x00, 0x0F, - 0xF7, 0xF8, 0x00, 0x1F, 0xCF, 0xF0, 0x00, 0x7F, 0x9F, 0xC0, 0x00, 0xFE, - 0x3F, 0x80, 0x01, 0xFC, 0x7F, 0x00, 0x07, 0xF0, 0xFE, 0x00, 0x0F, 0xE1, - 0xFC, 0x00, 0x3F, 0x81, 0xF8, 0x00, 0x7E, 0x03, 0xF0, 0x01, 0xF8, 0x03, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x1F, 0x80, 0x03, 0xE0, 0x7E, 0x00, 0x03, - 0xF3, 0xF0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x7F, 0xE0, 0x03, 0x03, 0xFF, - 0xF8, 0x1C, 0x0F, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFF, 0xC0, 0xE0, 0x3F, - 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x01, 0xFF, 0xFF, 0xC0, 0x00, 0x7F, - 0xFF, 0xF8, 0x00, 0x3F, 0xC3, 0xFC, 0x00, 0x3F, 0x81, 0xFE, 0x00, 0x3F, - 0x80, 0xFF, 0x00, 0x7F, 0x80, 0xFF, 0x00, 0x7F, 0x00, 0xFF, 0x00, 0x7F, - 0x00, 0xFF, 0x00, 0x7F, 0x00, 0xFF, 0x00, 0xFF, 0x01, 0xFE, 0x00, 0xFE, - 0x01, 0xFE, 0x00, 0xFE, 0x03, 0xFC, 0x00, 0xFE, 0x07, 0xF8, 0x01, 0xFC, - 0x1F, 0xF0, 0x01, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0xFE, 0x00, 0x03, 0xFD, - 0xFE, 0x00, 0x03, 0xF8, 0xFF, 0x00, 0x03, 0xF8, 0xFF, 0x00, 0x03, 0xF8, - 0xFF, 0x00, 0x07, 0xF8, 0x7F, 0x80, 0x07, 0xF0, 0x7F, 0x80, 0x07, 0xF0, - 0x3F, 0x80, 0x07, 0xF0, 0x3F, 0xC0, 0x0F, 0xE0, 0x3F, 0xC0, 0x0F, 0xE0, - 0x1F, 0xC0, 0x0F, 0xE0, 0x1F, 0xE0, 0x1F, 0xE0, 0x1F, 0xE0, 0x1F, 0xE0, - 0x0F, 0xF0, 0x3F, 0xF0, 0x0F, 0xF8, 0xFF, 0xFC, 0x0F, 0xFE, 0x00, 0x1F, - 0x83, 0x00, 0x7F, 0xF7, 0x00, 0xF8, 0x7E, 0x01, 0xE0, 0x1E, 0x03, 0xC0, - 0x0E, 0x03, 0xC0, 0x0E, 0x07, 0xC0, 0x0E, 0x07, 0xC0, 0x04, 0x07, 0xC0, - 0x04, 0x07, 0xE0, 0x04, 0x07, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFC, - 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x7F, - 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x20, 0x00, 0xF8, 0x20, 0x00, - 0xF8, 0x20, 0x00, 0xF8, 0x70, 0x00, 0xF8, 0x70, 0x00, 0xF0, 0x78, 0x01, - 0xF0, 0x78, 0x03, 0xE0, 0x7E, 0x07, 0xC0, 0x47, 0xFF, 0x80, 0xC0, 0xFC, - 0x00, 0x3F, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFC, 0xFE, 0x3F, 0x8F, 0x9E, - 0x07, 0xF0, 0xF3, 0x81, 0xFC, 0x0E, 0x60, 0x3F, 0x81, 0x98, 0x07, 0xF0, - 0x13, 0x00, 0xFC, 0x02, 0x00, 0x3F, 0x80, 0x40, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x7F, 0xFF, - 0x03, 0xFF, 0x0F, 0xFC, 0x00, 0xFC, 0x07, 0xF0, 0x00, 0x38, 0x07, 0xF0, - 0x00, 0x38, 0x07, 0xF0, 0x00, 0x30, 0x0F, 0xE0, 0x00, 0x30, 0x0F, 0xE0, - 0x00, 0x70, 0x0F, 0xE0, 0x00, 0x60, 0x0F, 0xE0, 0x00, 0x60, 0x1F, 0xC0, - 0x00, 0xE0, 0x1F, 0xC0, 0x00, 0xC0, 0x1F, 0xC0, 0x00, 0xC0, 0x3F, 0x80, - 0x00, 0xC0, 0x3F, 0x80, 0x01, 0x80, 0x3F, 0x80, 0x01, 0x80, 0x3F, 0x80, - 0x01, 0x80, 0x7F, 0x00, 0x01, 0x80, 0x7F, 0x00, 0x03, 0x00, 0x7F, 0x00, - 0x03, 0x00, 0x7E, 0x00, 0x03, 0x00, 0xFE, 0x00, 0x06, 0x00, 0xFE, 0x00, - 0x06, 0x00, 0xFC, 0x00, 0x06, 0x00, 0xFC, 0x00, 0x0E, 0x00, 0xFC, 0x00, - 0x0C, 0x00, 0xFC, 0x00, 0x1C, 0x00, 0xFC, 0x00, 0x18, 0x00, 0x7E, 0x00, - 0x38, 0x00, 0x7E, 0x00, 0x70, 0x00, 0x3F, 0x81, 0xE0, 0x00, 0x0F, 0xFF, - 0x80, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0xFC, 0x03, 0xFE, 0x7F, 0xE0, - 0x01, 0xF8, 0x7F, 0x80, 0x01, 0xC0, 0xFF, 0x00, 0x03, 0x80, 0xFE, 0x00, - 0x0E, 0x01, 0xFC, 0x00, 0x18, 0x03, 0xF8, 0x00, 0x70, 0x07, 0xF0, 0x00, - 0xC0, 0x0F, 0xF0, 0x03, 0x80, 0x1F, 0xE0, 0x0E, 0x00, 0x1F, 0xC0, 0x18, - 0x00, 0x3F, 0x80, 0x70, 0x00, 0x7F, 0x00, 0xC0, 0x00, 0xFE, 0x03, 0x00, - 0x01, 0xFC, 0x0E, 0x00, 0x03, 0xF8, 0x18, 0x00, 0x07, 0xF8, 0x60, 0x00, - 0x07, 0xF1, 0xC0, 0x00, 0x0F, 0xE3, 0x00, 0x00, 0x1F, 0xCC, 0x00, 0x00, - 0x3F, 0xB8, 0x00, 0x00, 0x7F, 0x60, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0xFF, 0xF8, - 0xFF, 0xF0, 0xFF, 0x9F, 0xF8, 0x1F, 0xE0, 0x0F, 0x87, 0xF8, 0x07, 0xE0, - 0x07, 0x03, 0xF8, 0x03, 0xF0, 0x03, 0x80, 0xFE, 0x01, 0xF8, 0x01, 0x80, - 0x7F, 0x00, 0xFC, 0x00, 0xC0, 0x3F, 0x80, 0x7F, 0x00, 0xC0, 0x1F, 0xC0, - 0x7F, 0x80, 0x60, 0x0F, 0xE0, 0x3F, 0xC0, 0x60, 0x07, 0xF0, 0x37, 0xE0, - 0x30, 0x03, 0xF8, 0x1B, 0xF0, 0x30, 0x00, 0xFC, 0x19, 0xF8, 0x18, 0x00, - 0x7E, 0x0C, 0xFE, 0x18, 0x00, 0x3F, 0x84, 0x7F, 0x0C, 0x00, 0x1F, 0xC6, - 0x3F, 0x8C, 0x00, 0x0F, 0xE2, 0x1F, 0xC6, 0x00, 0x07, 0xF3, 0x07, 0xE6, - 0x00, 0x03, 0xF9, 0x83, 0xF3, 0x00, 0x01, 0xFD, 0x81, 0xFB, 0x00, 0x00, - 0x7E, 0xC0, 0xFD, 0x80, 0x00, 0x3F, 0xC0, 0x7F, 0x80, 0x00, 0x1F, 0xE0, - 0x3F, 0xC0, 0x00, 0x0F, 0xE0, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x0F, 0xE0, - 0x00, 0x03, 0xF0, 0x07, 0xE0, 0x00, 0x01, 0xF8, 0x01, 0xF0, 0x00, 0x00, - 0x78, 0x00, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x00, 0x1C, 0x00, - 0x38, 0x00, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x00, 0x06, 0x00, 0x0C, 0x00, - 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x03, 0xFF, 0xF0, 0xFF, 0xC0, 0x3F, - 0xE0, 0x0F, 0xC0, 0x03, 0xF8, 0x01, 0xE0, 0x00, 0xFE, 0x00, 0xE0, 0x00, - 0x3F, 0x80, 0x70, 0x00, 0x07, 0xE0, 0x18, 0x00, 0x01, 0xFC, 0x0C, 0x00, - 0x00, 0x7F, 0x06, 0x00, 0x00, 0x0F, 0xC3, 0x00, 0x00, 0x03, 0xF9, 0x80, - 0x00, 0x00, 0xFE, 0xC0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x07, 0xF8, - 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x0F, - 0xC0, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x00, 0x77, 0xF0, 0x00, 0x00, 0x39, 0xFC, 0x00, 0x00, - 0x1C, 0x3F, 0x00, 0x00, 0x06, 0x0F, 0xE0, 0x00, 0x03, 0x03, 0xF8, 0x00, - 0x01, 0x80, 0x7E, 0x00, 0x00, 0xE0, 0x1F, 0xC0, 0x00, 0x70, 0x07, 0xF0, - 0x00, 0x38, 0x01, 0xFC, 0x00, 0x1E, 0x00, 0x7F, 0x80, 0x1F, 0xC0, 0x1F, - 0xF0, 0x0F, 0xFC, 0x3F, 0xFF, 0x80, 0xFF, 0xF8, 0x3F, 0xF3, 0xFC, 0x00, - 0xFC, 0x1F, 0xC0, 0x07, 0x81, 0xFC, 0x00, 0x70, 0x0F, 0xC0, 0x0E, 0x00, - 0xFE, 0x00, 0xC0, 0x0F, 0xE0, 0x1C, 0x00, 0x7E, 0x03, 0x80, 0x07, 0xF0, - 0x30, 0x00, 0x7F, 0x06, 0x00, 0x03, 0xF0, 0xE0, 0x00, 0x3F, 0x8C, 0x00, - 0x03, 0xF9, 0x80, 0x00, 0x1F, 0xB0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x1F, - 0xE0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x01, - 0xFF, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xF0, 0x3F, - 0xFF, 0xFF, 0x03, 0xF8, 0x0F, 0xF0, 0x7C, 0x01, 0xFE, 0x07, 0x80, 0x3F, - 0xC0, 0x70, 0x03, 0xF8, 0x06, 0x00, 0x7F, 0x80, 0xC0, 0x0F, 0xF0, 0x08, - 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x07, 0xF8, 0x00, 0xC0, 0xFF, 0x00, 0x0C, 0x1F, 0xE0, 0x01, 0x81, 0xFE, - 0x00, 0x38, 0x3F, 0xC0, 0x07, 0x87, 0xF8, 0x01, 0xF0, 0xFF, 0x00, 0xFF, - 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x7F, 0xE0, 0x0F, - 0xFC, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, - 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF0, - 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, - 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x00, - 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xFE, 0x01, - 0xFF, 0xC0, 0x00, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x1C, - 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, - 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x07, 0x00, 0x3C, 0x01, 0xE0, 0x0F, 0x00, - 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x01, - 0xC0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x0F, 0x00, 0x78, 0x00, 0x7F, 0xE0, - 0x0F, 0xFC, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, - 0x07, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, - 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x00, - 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, - 0xE0, 0x00, 0x78, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, - 0x00, 0x01, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x07, 0xFC, - 0x01, 0xFF, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x7F, 0x00, - 0x03, 0xF8, 0x00, 0x3F, 0xC0, 0x01, 0xEF, 0x00, 0x1E, 0x78, 0x00, 0xF1, - 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x3C, 0x07, 0xC1, 0xE0, 0x3C, 0x07, 0x83, - 0xE0, 0x3C, 0x1E, 0x00, 0xF1, 0xF0, 0x07, 0x8F, 0x00, 0x1E, 0xF8, 0x00, - 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x70, 0x3E, - 0x0F, 0x83, 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x0E, 0x01, 0xC0, 0x00, 0x3C, - 0x0C, 0x03, 0xF9, 0xF0, 0x1F, 0x3F, 0x80, 0xF8, 0x7E, 0x07, 0xC1, 0xF8, - 0x3F, 0x07, 0xC0, 0xF8, 0x1F, 0x07, 0xE0, 0x7C, 0x3F, 0x01, 0xF0, 0xFC, - 0x0F, 0x87, 0xE0, 0x3E, 0x1F, 0x80, 0xF8, 0x7E, 0x03, 0xC3, 0xF8, 0x1F, - 0x0F, 0xC0, 0x7C, 0x3F, 0x03, 0xF0, 0xFC, 0x0F, 0x83, 0xF0, 0x7E, 0x3F, - 0xC2, 0xF8, 0xBF, 0x9B, 0xE4, 0x7F, 0xCF, 0xE0, 0xFE, 0x3F, 0x01, 0xE0, - 0x78, 0x00, 0x00, 0x7C, 0x00, 0x3F, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0x7E, - 0x00, 0x01, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, - 0x03, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x3E, 0x01, 0xF9, 0xFC, 0x07, - 0xEF, 0xF8, 0x1F, 0x47, 0xF0, 0x7E, 0x0F, 0xC3, 0xF8, 0x3F, 0x0F, 0xC0, - 0xFC, 0x3F, 0x03, 0xF1, 0xF8, 0x0F, 0xC7, 0xE0, 0x3F, 0x1F, 0x01, 0xF8, - 0x7C, 0x07, 0xE3, 0xF0, 0x1F, 0x8F, 0xC0, 0xFC, 0x3E, 0x03, 0xF1, 0xF8, - 0x0F, 0x87, 0xE0, 0x7C, 0x1F, 0x03, 0xE0, 0xFC, 0x0F, 0x03, 0xF0, 0x78, - 0x0F, 0xC7, 0xC0, 0x1F, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x3F, 0x00, - 0x3F, 0xE0, 0x1E, 0x3C, 0x0F, 0x0F, 0x07, 0x87, 0xC3, 0xE1, 0xF1, 0xF0, - 0x38, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, 0xF8, 0x00, - 0xFC, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0xFC, 0x03, 0x3F, - 0x00, 0xCF, 0xE0, 0x61, 0xFC, 0x70, 0x3F, 0xF8, 0x07, 0xFC, 0x00, 0xFC, - 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x7F, 0xE0, 0x00, - 0x07, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, - 0x07, 0x9F, 0x80, 0x0F, 0xFF, 0xC0, 0x0F, 0x9F, 0xE0, 0x0F, 0x87, 0xF0, - 0x0F, 0x83, 0xF0, 0x0F, 0xC1, 0xF8, 0x07, 0xC0, 0xFC, 0x07, 0xE0, 0x7C, - 0x07, 0xE0, 0x7E, 0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x1F, 0x81, 0xF8, 0x0F, - 0x80, 0xFC, 0x0F, 0xC0, 0xFE, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x3F, 0x03, - 0xF0, 0x1F, 0x83, 0xF8, 0x0F, 0xC1, 0xF8, 0xC7, 0xE1, 0xFC, 0xC3, 0xF9, - 0xBE, 0xC0, 0xFF, 0x9F, 0xC0, 0x7F, 0x8F, 0xC0, 0x0F, 0x83, 0xC0, 0x00, - 0x00, 0x3F, 0x00, 0x3F, 0xE0, 0x1E, 0x3C, 0x0F, 0x0F, 0x07, 0x83, 0xC3, - 0xE0, 0xF1, 0xF0, 0x3C, 0xFC, 0x1E, 0x3F, 0x0F, 0x9F, 0x83, 0xC7, 0xE3, - 0xE1, 0xFB, 0xE0, 0xFF, 0xE0, 0x3F, 0xC0, 0x0F, 0xC0, 0x03, 0xF0, 0x00, - 0xFC, 0x03, 0x3F, 0x01, 0x8F, 0xC0, 0xC1, 0xF8, 0x70, 0x7F, 0xF8, 0x07, - 0xFC, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x03, 0xCE, 0x00, - 0x00, 0x78, 0xF0, 0x00, 0x0F, 0x8F, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x1F, - 0x06, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x3F, - 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x01, - 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x03, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x06, 0x1F, 0x00, 0x00, 0xF1, 0xE0, - 0x00, 0x0F, 0x3E, 0x00, 0x00, 0xF3, 0xC0, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x7F, 0xF0, 0x00, 0x7E, - 0x3F, 0xE0, 0x7C, 0x0F, 0xF0, 0x7E, 0x07, 0xC0, 0x7E, 0x03, 0xE0, 0x3F, - 0x01, 0xF0, 0x1F, 0x01, 0xF8, 0x0F, 0x80, 0xFC, 0x07, 0xC0, 0xFC, 0x01, - 0xE0, 0xFC, 0x00, 0x78, 0xFC, 0x00, 0x1F, 0xFC, 0x00, 0x0F, 0xF0, 0x00, - 0x1C, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xF8, 0x00, - 0x07, 0xFF, 0x80, 0x01, 0xFF, 0xF8, 0x00, 0x7F, 0xFE, 0x00, 0x77, 0xFF, - 0x80, 0xF0, 0x7F, 0xC0, 0xF0, 0x07, 0xE0, 0xF0, 0x01, 0xF0, 0x78, 0x00, - 0xF8, 0x3C, 0x00, 0x78, 0x1F, 0x00, 0x7C, 0x07, 0xC0, 0x78, 0x01, 0xFF, - 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x04, 0x00, 0x01, 0xF8, 0x00, 0x1F, - 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, - 0x00, 0x1F, 0x87, 0xC0, 0x3E, 0x1F, 0xC0, 0xFC, 0x7F, 0x81, 0xF9, 0x9F, - 0x03, 0xE6, 0x3E, 0x07, 0xD8, 0x7C, 0x1F, 0xA0, 0xF8, 0x3F, 0x83, 0xF0, - 0x7F, 0x07, 0xE0, 0xFC, 0x0F, 0xC3, 0xF8, 0x3F, 0x07, 0xE0, 0x7E, 0x0F, - 0xC0, 0xFC, 0x3F, 0x03, 0xF0, 0x7E, 0x07, 0xE0, 0xFC, 0x0F, 0xC1, 0xF0, - 0x3F, 0x17, 0xE0, 0x7E, 0x6F, 0xC0, 0xF9, 0x9F, 0x01, 0xF6, 0x3E, 0x03, - 0xF8, 0xFC, 0x07, 0xF1, 0xC0, 0x07, 0x80, 0x01, 0xE0, 0x3F, 0x03, 0xF0, - 0x3F, 0x03, 0xF0, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xC7, - 0xFC, 0x1F, 0xC0, 0xF8, 0x0F, 0x81, 0xF8, 0x1F, 0x81, 0xF0, 0x1F, 0x03, - 0xF0, 0x3E, 0x03, 0xE0, 0x3E, 0x07, 0xE0, 0x7C, 0x07, 0xC0, 0xFC, 0x2F, - 0x84, 0xF8, 0xCF, 0x98, 0xFF, 0x0F, 0xE0, 0x78, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x01, 0x00, 0x00, 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x1F, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, - 0x7C, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, - 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF0, 0x00, - 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x1F, - 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3F, 0x00, - 0x60, 0xF8, 0x03, 0xC3, 0xC0, 0x0F, 0x1F, 0x00, 0x3C, 0xF8, 0x00, 0x7F, - 0xC0, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0xFC, 0x00, 0x07, - 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x01, - 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x03, - 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xE3, 0xFF, 0x03, 0xE0, 0xFC, 0x07, - 0xE0, 0xF0, 0x07, 0xE0, 0xE0, 0x07, 0xC1, 0xC0, 0x0F, 0xC3, 0x80, 0x0F, - 0xC7, 0x00, 0x0F, 0x8E, 0x00, 0x0F, 0xBE, 0x00, 0x1F, 0xFE, 0x00, 0x1F, - 0xFE, 0x00, 0x1F, 0xFE, 0x00, 0x1F, 0x3E, 0x00, 0x3F, 0x3F, 0x00, 0x3F, - 0x1F, 0x00, 0x3E, 0x1F, 0x00, 0x7E, 0x1F, 0x04, 0x7E, 0x1F, 0x8C, 0x7E, - 0x0F, 0x98, 0x7C, 0x0F, 0xF0, 0xFC, 0x07, 0xE0, 0xE0, 0x03, 0xC0, 0x00, - 0x08, 0x0F, 0xC7, 0xFE, 0x07, 0xF0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, 0x7C, - 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x0F, 0x80, 0x7C, 0x07, 0xE0, 0x3E, 0x01, - 0xF0, 0x1F, 0x80, 0xFC, 0x07, 0xC0, 0x3E, 0x03, 0xF0, 0x1F, 0x80, 0xF8, - 0x0F, 0xC0, 0x7E, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x8F, 0x8C, 0x7C, 0x43, - 0xE4, 0x1F, 0xE0, 0xFE, 0x03, 0xC0, 0x00, 0x00, 0x70, 0x78, 0x0F, 0x83, - 0xFE, 0x3F, 0x87, 0xF8, 0x1F, 0xCF, 0xF1, 0xFF, 0x03, 0xF1, 0x3E, 0x73, - 0xE0, 0x7E, 0x47, 0xD8, 0x7C, 0x0F, 0xD0, 0xFB, 0x1F, 0x81, 0xF4, 0x3E, - 0xC3, 0xF0, 0x3E, 0x87, 0xF0, 0x7C, 0x0F, 0xE0, 0xFE, 0x1F, 0x81, 0xF4, - 0x1F, 0x83, 0xF0, 0x3F, 0x07, 0xE0, 0x7C, 0x07, 0xE0, 0xFC, 0x1F, 0x81, - 0xF8, 0x1F, 0x83, 0xF0, 0x3F, 0x07, 0xE0, 0x7C, 0x07, 0xE0, 0xFC, 0x0F, - 0x80, 0xF8, 0x1F, 0x03, 0xF0, 0x3F, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0xFC, - 0x0F, 0x88, 0xF8, 0x1F, 0x81, 0xF3, 0x3F, 0x03, 0xE0, 0x3E, 0x47, 0xE0, - 0xFC, 0x07, 0xF0, 0xFC, 0x1F, 0x80, 0xFE, 0x18, 0x00, 0x00, 0x0F, 0x00, - 0x00, 0x70, 0xF8, 0x7F, 0xC3, 0xF8, 0x1F, 0x8F, 0xF0, 0x3F, 0x33, 0xE0, - 0x7C, 0x87, 0xC1, 0xF9, 0x0F, 0x83, 0xF4, 0x1F, 0x07, 0xD0, 0x3E, 0x0F, - 0xE0, 0xFC, 0x3F, 0x81, 0xF8, 0x7F, 0x03, 0xE0, 0xFC, 0x0F, 0xC1, 0xF8, - 0x1F, 0x87, 0xE0, 0x3E, 0x0F, 0xC0, 0xFC, 0x1F, 0x81, 0xF0, 0x3E, 0x03, - 0xE0, 0xFC, 0x0F, 0xC9, 0xF8, 0x1F, 0x33, 0xE0, 0x3E, 0x47, 0xC0, 0x7F, - 0x1F, 0x80, 0xFE, 0x38, 0x00, 0xF0, 0x00, 0x00, 0x3F, 0x00, 0x0E, 0x38, - 0x03, 0xC1, 0xC0, 0x78, 0x1E, 0x0F, 0x81, 0xF0, 0xF0, 0x1F, 0x1F, 0x01, - 0xF3, 0xE0, 0x1F, 0x3E, 0x03, 0xF7, 0xC0, 0x3F, 0x7C, 0x03, 0xF7, 0xC0, - 0x3E, 0xFC, 0x03, 0xEF, 0xC0, 0x7E, 0xF8, 0x07, 0xCF, 0x80, 0x7C, 0xF8, - 0x0F, 0x8F, 0x80, 0xF8, 0xF8, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x3C, 0x03, - 0xC7, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x0F, 0x1F, 0x00, 0x3F, 0xE7, 0xF8, - 0x01, 0xF9, 0xFF, 0x00, 0x1F, 0x47, 0xF0, 0x07, 0xF0, 0x7E, 0x00, 0xFE, - 0x0F, 0xC0, 0x1F, 0x81, 0xF8, 0x03, 0xF0, 0x3F, 0x00, 0xFC, 0x07, 0xE0, - 0x1F, 0x81, 0xFC, 0x03, 0xE0, 0x3F, 0x00, 0x7C, 0x07, 0xE0, 0x1F, 0x81, - 0xFC, 0x03, 0xF0, 0x3F, 0x00, 0x7C, 0x07, 0xE0, 0x0F, 0x81, 0xF8, 0x03, - 0xF0, 0x3E, 0x00, 0x7E, 0x0F, 0xC0, 0x0F, 0x81, 0xF0, 0x01, 0xF0, 0x7C, - 0x00, 0x7F, 0x1F, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xF3, 0xE0, 0x00, 0x3E, - 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0xFC, - 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0xF9, 0xF0, 0x1F, 0x1F, 0xC0, 0xF8, - 0x7E, 0x07, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, 0xF8, 0x1F, 0x87, 0xE0, 0x7C, - 0x3F, 0x01, 0xF0, 0xFC, 0x0F, 0xC7, 0xE0, 0x3E, 0x1F, 0x80, 0xF8, 0x7E, - 0x07, 0xE3, 0xF0, 0x1F, 0x8F, 0xC0, 0x7C, 0x3F, 0x03, 0xF0, 0xFC, 0x0F, - 0xC3, 0xF0, 0x7E, 0x0F, 0xC3, 0xF8, 0x3F, 0x9B, 0xE0, 0x7F, 0xDF, 0x01, - 0xFE, 0x7C, 0x01, 0xF1, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3E, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xF8, - 0x00, 0x7F, 0xF8, 0x00, 0x00, 0x71, 0xE1, 0xFF, 0x3E, 0x07, 0xE7, 0xF0, - 0x7E, 0xFF, 0x07, 0xE9, 0xE0, 0x7D, 0x0E, 0x07, 0xD0, 0x00, 0xFE, 0x00, - 0x0F, 0xE0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0x80, - 0x01, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xF0, - 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xC0, 0x00, 0x01, - 0xF1, 0x07, 0xFF, 0x0F, 0x0F, 0x0E, 0x07, 0x1E, 0x06, 0x1E, 0x06, 0x1F, - 0x02, 0x1F, 0x02, 0x1F, 0x80, 0x0F, 0xC0, 0x0F, 0xE0, 0x0F, 0xF0, 0x07, - 0xF8, 0x03, 0xF8, 0x01, 0xFC, 0x00, 0xFC, 0x40, 0x7C, 0x40, 0x7C, 0x60, - 0x3C, 0xE0, 0x38, 0xF0, 0x38, 0xF8, 0xF0, 0xDF, 0xC0, 0x00, 0x20, 0x03, - 0x00, 0x38, 0x03, 0x80, 0x3C, 0x03, 0xE0, 0x7F, 0x07, 0xFF, 0x3F, 0xF8, - 0x7C, 0x07, 0xE0, 0x3F, 0x01, 0xF0, 0x0F, 0x80, 0xFC, 0x07, 0xC0, 0x3E, - 0x03, 0xF0, 0x1F, 0x80, 0xF8, 0x07, 0xC0, 0x7E, 0x03, 0xF1, 0x1F, 0x08, - 0xF8, 0x87, 0xC8, 0x3F, 0xC1, 0xFC, 0x07, 0x80, 0x00, 0x00, 0x40, 0x00, - 0x1F, 0x03, 0xF7, 0xF8, 0x0F, 0x87, 0xE0, 0x3E, 0x1F, 0x81, 0xF8, 0x7E, - 0x07, 0xC1, 0xF0, 0x1F, 0x07, 0xC0, 0xFC, 0x3F, 0x03, 0xE0, 0xF8, 0x0F, - 0x83, 0xE0, 0x7E, 0x0F, 0x81, 0xF8, 0x7E, 0x0F, 0xC1, 0xF0, 0x3F, 0x07, - 0xC1, 0xFC, 0x1F, 0x07, 0xE0, 0xF8, 0x2F, 0x83, 0xE1, 0x3C, 0x6F, 0x8D, - 0xF1, 0x3E, 0x67, 0xC8, 0xFF, 0x1F, 0xE3, 0xF8, 0x7F, 0x07, 0xC0, 0xF0, - 0x00, 0x06, 0x07, 0x1F, 0x07, 0xBF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, - 0xF8, 0x3C, 0x7C, 0x0C, 0x3E, 0x06, 0x1F, 0x03, 0x0F, 0x83, 0x07, 0xC1, - 0x83, 0xE1, 0x81, 0xF1, 0x80, 0xF9, 0x80, 0x7C, 0xC0, 0x3E, 0xC0, 0x1F, - 0xC0, 0x0F, 0xC0, 0x07, 0xC0, 0x03, 0xC0, 0x01, 0xC0, 0x00, 0xC0, 0x00, - 0x40, 0x00, 0x06, 0x01, 0x81, 0xC7, 0xC0, 0x30, 0x7F, 0xF8, 0x0E, 0x0F, - 0x9F, 0x01, 0xC1, 0xF3, 0xE0, 0x78, 0x3E, 0x7C, 0x1F, 0x03, 0xCF, 0xC3, - 0xE0, 0x30, 0xF8, 0xFC, 0x06, 0x1F, 0x1F, 0xC0, 0x83, 0xE7, 0xF8, 0x30, - 0x7C, 0xFF, 0x04, 0x0F, 0xB7, 0xE1, 0x81, 0xF6, 0xFC, 0x60, 0x3F, 0x8F, - 0x98, 0x07, 0xE1, 0xF3, 0x00, 0xFC, 0x3E, 0xC0, 0x1F, 0x07, 0xF0, 0x03, - 0xE0, 0xFC, 0x00, 0x78, 0x1F, 0x80, 0x0F, 0x03, 0xE0, 0x01, 0xC0, 0x78, - 0x00, 0x30, 0x0E, 0x00, 0x06, 0x01, 0x80, 0x00, 0x00, 0xF0, 0x1E, 0x0F, - 0xF0, 0x3E, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0xFF, 0x00, 0xF9, 0x8E, 0x00, - 0xFB, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xBF, 0x00, 0x01, - 0xBF, 0x08, 0x73, 0x1F, 0x18, 0xFF, 0x1F, 0x30, 0xFE, 0x1F, 0xE0, 0xFC, - 0x0F, 0xC0, 0x78, 0x07, 0x80, 0x00, 0x30, 0x1C, 0x0F, 0xF0, 0x7C, 0x07, - 0xE0, 0xF8, 0x0F, 0xC1, 0xF0, 0x0F, 0xC1, 0xE0, 0x1F, 0x81, 0xC0, 0x3F, - 0x03, 0x00, 0x3E, 0x06, 0x00, 0x7E, 0x08, 0x00, 0xFC, 0x30, 0x01, 0xF8, - 0x60, 0x01, 0xF1, 0x80, 0x03, 0xE3, 0x00, 0x07, 0xCC, 0x00, 0x0F, 0xD8, - 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x01, 0xC1, 0x80, 0x07, 0xE6, - 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x07, - 0xFF, 0xE1, 0xFF, 0xF8, 0x3F, 0xFF, 0x07, 0xFF, 0xC0, 0x80, 0x70, 0x30, - 0x1C, 0x04, 0x07, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, - 0x80, 0x00, 0x60, 0x00, 0x18, 0x00, 0x06, 0x00, 0x01, 0xC0, 0x00, 0x30, - 0x00, 0x0C, 0x00, 0x03, 0xE0, 0x00, 0xFE, 0x00, 0x1F, 0xE0, 0xC7, 0xFC, - 0x3D, 0xCF, 0xC7, 0x90, 0xF8, 0xF0, 0x07, 0x9C, 0x00, 0x3E, 0x00, 0x00, - 0x01, 0xF0, 0x00, 0xFC, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, - 0x07, 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xE0, - 0x00, 0x3E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0xC0, - 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, - 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, - 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, - 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, - 0x3E, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, - 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, - 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, - 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x03, 0xE0, 0x00, - 0x7C, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, - 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x03, 0xF0, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x03, 0xFF, 0x01, 0x3F, - 0xFE, 0x1D, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0x00, 0x1F, 0xF0, 0x00, 0x1F, - 0x00}; - -const GFXglyph FreeSerifBoldItalic24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 15, 33, 18, 3, -31}, // 0x21 '!' - {62, 19, 13, 26, 6, -31}, // 0x22 '"' - {93, 27, 33, 23, -2, -32}, // 0x23 '#' - {205, 24, 39, 24, -1, -33}, // 0x24 '$' - {322, 35, 32, 39, 2, -30}, // 0x25 '%' - {462, 33, 33, 37, 0, -31}, // 0x26 '&' - {599, 7, 13, 13, 6, -31}, // 0x27 ''' - {611, 14, 41, 16, 1, -31}, // 0x28 '(' - {683, 14, 41, 16, -2, -31}, // 0x29 ')' - {755, 19, 20, 23, 3, -31}, // 0x2A '*' - {803, 22, 23, 27, 2, -22}, // 0x2B '+' - {867, 10, 15, 12, -3, -5}, // 0x2C ',' - {886, 12, 5, 16, 0, -12}, // 0x2D '-' - {894, 8, 7, 12, 0, -5}, // 0x2E '.' - {901, 19, 33, 16, 0, -31}, // 0x2F '/' - {980, 22, 33, 23, 1, -31}, // 0x30 '0' - {1071, 20, 32, 23, 0, -31}, // 0x31 '1' - {1151, 22, 32, 23, 1, -31}, // 0x32 '2' - {1239, 22, 33, 24, 0, -31}, // 0x33 '3' - {1330, 25, 32, 23, 0, -31}, // 0x34 '4' - {1430, 24, 32, 24, 0, -30}, // 0x35 '5' - {1526, 23, 32, 24, 1, -30}, // 0x36 '6' - {1618, 23, 31, 23, 3, -30}, // 0x37 '7' - {1708, 21, 33, 23, 1, -31}, // 0x38 '8' - {1795, 23, 33, 23, 0, -31}, // 0x39 '9' - {1890, 13, 22, 12, 0, -20}, // 0x3A ':' - {1926, 15, 30, 12, -2, -20}, // 0x3B ';' - {1983, 24, 25, 27, 1, -23}, // 0x3C '<' - {2058, 24, 14, 27, 3, -18}, // 0x3D '=' - {2100, 24, 25, 27, 3, -23}, // 0x3E '>' - {2175, 18, 33, 24, 4, -31}, // 0x3F '?' - {2250, 33, 33, 39, 3, -31}, // 0x40 '@' - {2387, 31, 32, 33, 0, -31}, // 0x41 'A' - {2511, 31, 31, 30, 0, -30}, // 0x42 'B' - {2632, 29, 33, 29, 2, -31}, // 0x43 'C' - {2752, 35, 31, 34, 0, -30}, // 0x44 'D' - {2888, 32, 31, 30, 0, -30}, // 0x45 'E' - {3012, 31, 31, 29, 0, -30}, // 0x46 'F' - {3133, 32, 33, 33, 2, -31}, // 0x47 'G' - {3265, 39, 31, 35, 0, -30}, // 0x48 'H' - {3417, 21, 31, 18, 0, -30}, // 0x49 'I' - {3499, 27, 36, 23, 0, -30}, // 0x4A 'J' - {3621, 34, 31, 31, 0, -30}, // 0x4B 'K' - {3753, 29, 31, 29, 0, -30}, // 0x4C 'L' - {3866, 44, 32, 41, 0, -30}, // 0x4D 'M' - {4042, 37, 32, 33, 0, -30}, // 0x4E 'N' - {4190, 31, 33, 32, 2, -31}, // 0x4F 'O' - {4318, 31, 31, 28, 0, -30}, // 0x50 'P' - {4439, 31, 42, 32, 2, -31}, // 0x51 'Q' - {4602, 32, 31, 31, 0, -30}, // 0x52 'R' - {4726, 24, 33, 24, 0, -31}, // 0x53 'S' - {4825, 27, 31, 28, 4, -30}, // 0x54 'T' - {4930, 32, 32, 34, 5, -30}, // 0x55 'U' - {5058, 31, 32, 33, 6, -30}, // 0x56 'V' - {5182, 41, 32, 44, 6, -30}, // 0x57 'W' - {5346, 34, 31, 33, 0, -30}, // 0x58 'X' - {5478, 28, 31, 30, 6, -30}, // 0x59 'Y' - {5587, 28, 31, 26, 0, -30}, // 0x5A 'Z' - {5696, 19, 38, 16, -2, -30}, // 0x5B '[' - {5787, 13, 33, 19, 6, -31}, // 0x5C '\' - {5841, 19, 38, 16, -3, -30}, // 0x5D ']' - {5932, 21, 17, 27, 3, -30}, // 0x5E '^' - {5977, 24, 3, 23, 0, 5}, // 0x5F '_' - {5986, 10, 9, 16, 4, -32}, // 0x60 '`' - {5998, 22, 23, 24, 1, -21}, // 0x61 'a' - {6062, 22, 33, 23, 1, -31}, // 0x62 'b' - {6153, 18, 23, 20, 1, -21}, // 0x63 'c' - {6205, 25, 34, 24, 1, -32}, // 0x64 'd' - {6312, 18, 23, 20, 1, -21}, // 0x65 'e' - {6364, 28, 41, 23, -4, -31}, // 0x66 'f' - {6508, 25, 31, 23, -1, -21}, // 0x67 'g' - {6605, 23, 34, 26, 1, -32}, // 0x68 'h' - {6703, 12, 33, 14, 2, -31}, // 0x69 'i' - {6753, 22, 42, 16, -4, -31}, // 0x6A 'j' - {6869, 24, 34, 24, 1, -32}, // 0x6B 'k' - {6971, 13, 34, 14, 2, -32}, // 0x6C 'l' - {7027, 35, 23, 36, 0, -21}, // 0x6D 'm' - {7128, 23, 23, 25, 0, -21}, // 0x6E 'n' - {7195, 20, 23, 22, 1, -21}, // 0x6F 'o' - {7253, 27, 31, 23, -4, -21}, // 0x70 'p' - {7358, 22, 31, 23, 1, -21}, // 0x71 'q' - {7444, 20, 22, 19, 0, -21}, // 0x72 'r' - {7499, 16, 23, 17, 0, -21}, // 0x73 's' - {7545, 13, 29, 13, 2, -27}, // 0x74 't' - {7593, 22, 23, 25, 2, -21}, // 0x75 'u' - {7657, 17, 23, 21, 3, -21}, // 0x76 'v' - {7706, 27, 23, 31, 3, -21}, // 0x77 'w' - {7784, 24, 23, 22, -1, -21}, // 0x78 'x' - {7853, 23, 31, 20, -3, -21}, // 0x79 'y' - {7943, 19, 25, 19, 0, -20}, // 0x7A 'z' - {8003, 20, 41, 16, 0, -31}, // 0x7B '{' - {8106, 4, 33, 13, 5, -31}, // 0x7C '|' - {8123, 20, 41, 16, -6, -31}, // 0x7D '}' - {8226, 21, 7, 27, 3, -14}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic24pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic24pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 8917 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h deleted file mode 100644 index b5d9a55..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h +++ /dev/null @@ -1,217 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic9pt7bBitmaps[] PROGMEM = { - 0x0C, 0x31, 0xC6, 0x18, 0x41, 0x08, 0x20, 0x0E, 0x38, 0xE0, 0xCF, 0x38, - 0xA2, 0x88, 0x02, 0x40, 0xC8, 0x13, 0x06, 0x43, 0xFC, 0x32, 0x06, 0x40, - 0x98, 0x7F, 0x84, 0xC0, 0x90, 0x32, 0x04, 0xC0, 0x01, 0x01, 0xF0, 0x4B, - 0x99, 0x33, 0x24, 0x78, 0x07, 0x80, 0x38, 0x0B, 0x89, 0x31, 0x26, 0x64, - 0xC7, 0x30, 0x3C, 0x04, 0x00, 0x38, 0x41, 0x9F, 0x06, 0x48, 0x31, 0x60, - 0xCD, 0x03, 0x2C, 0x07, 0x27, 0x81, 0x39, 0x05, 0xC4, 0x26, 0x10, 0x98, - 0x84, 0x66, 0x10, 0xE0, 0x03, 0x80, 0x22, 0x03, 0x10, 0x19, 0x00, 0xF0, - 0x0F, 0x3C, 0xF8, 0xCC, 0xC4, 0xE7, 0x47, 0x3E, 0x38, 0xE1, 0xE7, 0x97, - 0xCF, 0x00, 0xFA, 0x80, 0x08, 0x88, 0x84, 0x62, 0x10, 0x84, 0x21, 0x08, - 0x41, 0x00, 0x20, 0x84, 0x10, 0x84, 0x21, 0x08, 0xC6, 0x23, 0x11, 0x00, - 0x18, 0x18, 0xD6, 0x38, 0x18, 0xF7, 0x18, 0x18, 0x08, 0x04, 0x02, 0x01, - 0x0F, 0xF8, 0x40, 0x20, 0x10, 0x08, 0x00, 0x6D, 0x95, 0x00, 0xFF, 0xC0, - 0xFF, 0x80, 0x06, 0x0C, 0x30, 0x60, 0x83, 0x04, 0x18, 0x20, 0xC1, 0x06, - 0x00, 0x0F, 0x0C, 0x8C, 0x6E, 0x37, 0x1B, 0x1F, 0x8F, 0xC7, 0xC7, 0x63, - 0xB1, 0x89, 0x83, 0x80, 0x06, 0x1E, 0x0E, 0x0E, 0x0C, 0x0C, 0x1C, 0x18, - 0x18, 0x18, 0x38, 0x38, 0xFC, 0x1F, 0x13, 0xD0, 0xE0, 0x70, 0x38, 0x38, - 0x18, 0x18, 0x18, 0x08, 0x08, 0x4F, 0xCF, 0xE0, 0x1F, 0x11, 0xC0, 0xE0, - 0x60, 0xC1, 0xF0, 0x38, 0x0C, 0x06, 0x03, 0x01, 0x19, 0x8F, 0x00, 0x00, - 0x80, 0xC0, 0xE1, 0xE0, 0xB0, 0x98, 0x9C, 0x8C, 0xFF, 0x07, 0x03, 0x01, - 0x80, 0x0F, 0x88, 0x08, 0x07, 0x83, 0xE0, 0x78, 0x1C, 0x06, 0x03, 0x01, - 0x80, 0x9C, 0x87, 0x80, 0x03, 0x87, 0x07, 0x07, 0x07, 0x03, 0xE3, 0x99, - 0xCC, 0xC6, 0x63, 0x33, 0x89, 0x87, 0x80, 0x3F, 0xBF, 0x90, 0x80, 0xC0, - 0x40, 0x60, 0x20, 0x30, 0x30, 0x10, 0x18, 0x08, 0x00, 0x1E, 0x13, 0x31, - 0x31, 0x3A, 0x1C, 0x1C, 0x6E, 0xC6, 0xC6, 0xC6, 0x44, 0x38, 0x0E, 0x1C, - 0x8C, 0x6C, 0x36, 0x3B, 0x1D, 0x8E, 0x7E, 0x0E, 0x07, 0x07, 0x0E, 0x0C, - 0x00, 0x39, 0xCE, 0x00, 0x03, 0x9C, 0xE0, 0x39, 0xCE, 0x00, 0x01, 0x8C, - 0x22, 0x20, 0x00, 0x01, 0xC3, 0xC7, 0x8E, 0x06, 0x01, 0xE0, 0x3C, 0x07, - 0x80, 0x40, 0xFF, 0x80, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x60, 0x1E, 0x03, - 0xC0, 0x78, 0x1C, 0x3C, 0x78, 0xF0, 0x40, 0x00, 0x1C, 0x27, 0x37, 0x07, - 0x0E, 0x1C, 0x30, 0x60, 0x40, 0x00, 0xE0, 0xE0, 0xE0, 0x0F, 0x80, 0xC3, - 0x08, 0x04, 0xC3, 0x3C, 0x24, 0xE2, 0x27, 0x33, 0x39, 0x11, 0xC9, 0x93, - 0x77, 0x18, 0x00, 0x70, 0x40, 0xFC, 0x00, 0x00, 0x80, 0x18, 0x01, 0x80, - 0x38, 0x05, 0x80, 0x5C, 0x09, 0xC1, 0x1C, 0x1F, 0xC2, 0x0C, 0x20, 0xC4, - 0x0E, 0xF3, 0xF0, 0x3F, 0xE0, 0xC7, 0x0C, 0x71, 0xC7, 0x1C, 0xE1, 0xF0, - 0x39, 0xC3, 0x8E, 0x38, 0xE3, 0x0E, 0x71, 0xE7, 0x1C, 0xFF, 0x00, 0x07, - 0xD1, 0xC7, 0x38, 0x27, 0x02, 0x70, 0x0F, 0x00, 0xE0, 0x0E, 0x00, 0xE0, - 0x0E, 0x00, 0x60, 0x87, 0x18, 0x1E, 0x00, 0x3F, 0xE0, 0x30, 0xE0, 0xC1, - 0x87, 0x07, 0x1C, 0x1C, 0x60, 0x73, 0x81, 0xCE, 0x07, 0x38, 0x38, 0xC0, - 0xE7, 0x07, 0x1C, 0x78, 0xFF, 0x80, 0x1F, 0xF8, 0x61, 0xC3, 0x04, 0x38, - 0x81, 0xCC, 0x0F, 0xE0, 0xE2, 0x07, 0x10, 0x38, 0x81, 0x81, 0x1C, 0x18, - 0xE3, 0x8F, 0xFC, 0x00, 0x3F, 0xF8, 0x61, 0xC3, 0x04, 0x38, 0x81, 0xCC, - 0x0F, 0xE0, 0xE2, 0x07, 0x10, 0x38, 0x81, 0x80, 0x1C, 0x00, 0xE0, 0x0F, - 0x80, 0x00, 0x07, 0x91, 0xC7, 0x38, 0x27, 0x00, 0x70, 0x0F, 0x00, 0xE1, - 0xFE, 0x0E, 0xE0, 0xCE, 0x0C, 0x60, 0xC7, 0x1C, 0x1F, 0x00, 0x1F, 0x7E, - 0x1C, 0x38, 0x30, 0x60, 0xE1, 0xC1, 0xC3, 0x83, 0x06, 0x0F, 0xFC, 0x1C, - 0x38, 0x38, 0x70, 0x60, 0xC1, 0xC3, 0x83, 0x87, 0x0F, 0x9F, 0x00, 0x3F, - 0x0C, 0x0C, 0x1C, 0x1C, 0x18, 0x38, 0x38, 0x38, 0x30, 0x70, 0x70, 0xF8, - 0x07, 0xC0, 0xE0, 0x38, 0x0C, 0x07, 0x01, 0xC0, 0x70, 0x18, 0x0E, 0x03, - 0x80, 0xC3, 0x30, 0xDC, 0x1E, 0x00, 0x1F, 0x78, 0x71, 0x83, 0x18, 0x39, - 0x81, 0xD0, 0x0D, 0x00, 0xFC, 0x07, 0x60, 0x3B, 0x81, 0x8C, 0x1C, 0x70, - 0xE1, 0x8F, 0xBE, 0x00, 0x1F, 0x00, 0xC0, 0x0C, 0x01, 0xC0, 0x1C, 0x01, - 0x80, 0x38, 0x03, 0x80, 0x38, 0x03, 0x01, 0x70, 0x37, 0x0E, 0xFF, 0xE0, - 0x1E, 0x07, 0x87, 0x07, 0x83, 0x83, 0x82, 0xC3, 0xC1, 0x62, 0xE0, 0xB1, - 0x70, 0x99, 0x30, 0x4D, 0xB8, 0x27, 0x9C, 0x13, 0x8C, 0x11, 0xC6, 0x0C, - 0xC7, 0x0F, 0x47, 0xC0, 0x3C, 0x3C, 0x38, 0x20, 0xE0, 0x85, 0xC4, 0x13, - 0x10, 0x4E, 0x42, 0x3A, 0x08, 0x78, 0x21, 0xE0, 0x83, 0x84, 0x0C, 0x18, - 0x10, 0x00, 0x40, 0x07, 0xC1, 0xCE, 0x38, 0x73, 0x87, 0x70, 0x77, 0x07, - 0xF0, 0xFE, 0x0E, 0xE0, 0xEE, 0x1C, 0xE1, 0xC6, 0x38, 0x3E, 0x00, 0x3F, - 0xC0, 0xC7, 0x0C, 0x71, 0xC7, 0x1C, 0x71, 0x8E, 0x3F, 0xC3, 0x80, 0x30, - 0x03, 0x00, 0x70, 0x07, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0xCE, 0x38, 0x73, - 0x87, 0x70, 0x77, 0x07, 0xF0, 0x7E, 0x0E, 0xE0, 0xEE, 0x0C, 0xE1, 0xC6, - 0x38, 0x36, 0x01, 0x80, 0x3C, 0x2D, 0xFC, 0x3F, 0xC0, 0xE7, 0x0C, 0x71, - 0xC7, 0x1C, 0x71, 0x8E, 0x3F, 0x83, 0xB8, 0x3B, 0x83, 0x3C, 0x71, 0xC7, - 0x1C, 0xF9, 0xF0, 0x0C, 0x89, 0x8C, 0x46, 0x23, 0x80, 0xE0, 0x78, 0x0E, - 0x03, 0x21, 0x90, 0xCC, 0xC9, 0xC0, 0x7F, 0xE9, 0xDF, 0x31, 0x4E, 0x21, - 0xC0, 0x38, 0x06, 0x01, 0xC0, 0x38, 0x06, 0x00, 0xC0, 0x38, 0x0F, 0xC0, - 0x7C, 0xF3, 0x82, 0x30, 0x27, 0x04, 0x70, 0x46, 0x04, 0xE0, 0x4E, 0x08, - 0xE0, 0x8E, 0x08, 0xE1, 0x0F, 0x30, 0x3C, 0x00, 0xFC, 0x73, 0x82, 0x38, - 0x23, 0x84, 0x38, 0x83, 0x90, 0x39, 0x01, 0xA0, 0x1C, 0x01, 0xC0, 0x18, - 0x01, 0x00, 0xF9, 0xF7, 0x30, 0xE2, 0x30, 0xC2, 0x38, 0xC4, 0x3B, 0xC4, - 0x3A, 0xE8, 0x3C, 0xE8, 0x3C, 0xF0, 0x18, 0xF0, 0x18, 0x60, 0x10, 0x60, - 0x10, 0x40, 0x3F, 0x78, 0x61, 0x83, 0x98, 0x1D, 0x00, 0x70, 0x03, 0x80, - 0x1C, 0x01, 0x60, 0x0B, 0x80, 0x9C, 0x08, 0x60, 0xC3, 0x8F, 0x7E, 0x00, - 0xF9, 0xE6, 0x18, 0xC2, 0x1C, 0x81, 0xA0, 0x34, 0x07, 0x00, 0xC0, 0x18, - 0x07, 0x00, 0xE0, 0x1C, 0x0F, 0xC0, 0x3F, 0xE6, 0x19, 0x87, 0x21, 0xC0, - 0x30, 0x0E, 0x03, 0x80, 0x60, 0x1C, 0x07, 0x05, 0xC1, 0x38, 0xEF, 0xFC, - 0x0E, 0x08, 0x18, 0x18, 0x18, 0x10, 0x30, 0x30, 0x30, 0x20, 0x60, 0x60, - 0x60, 0x40, 0xF0, 0xC6, 0x10, 0xC6, 0x10, 0x86, 0x30, 0x86, 0x30, 0x1E, - 0x0C, 0x18, 0x20, 0xC1, 0x83, 0x04, 0x18, 0x30, 0x60, 0x83, 0x06, 0x3C, - 0x00, 0x18, 0x1C, 0x34, 0x26, 0x66, 0x43, 0xC3, 0xFF, 0x80, 0xC6, 0x30, - 0x0D, 0x9D, 0x8C, 0xCC, 0x6E, 0x26, 0x33, 0x19, 0xBE, 0x66, 0x00, 0x00, - 0x78, 0x18, 0x30, 0x30, 0x3E, 0x73, 0x63, 0x63, 0x63, 0xC6, 0xC6, 0xCC, - 0x70, 0x0F, 0x3B, 0x70, 0x70, 0xE0, 0xE0, 0xE2, 0xE4, 0x78, 0x00, 0x00, - 0xF0, 0x1C, 0x06, 0x01, 0x83, 0xE3, 0x30, 0xCC, 0x63, 0x19, 0xCC, 0x63, - 0x38, 0xCF, 0x1D, 0x80, 0x0E, 0x75, 0xCB, 0xBE, 0xDE, 0x38, 0x72, 0x78, - 0x00, 0xE0, 0x34, 0x0C, 0x01, 0x80, 0x30, 0x1F, 0x01, 0x80, 0x30, 0x06, - 0x01, 0xC0, 0x30, 0x06, 0x00, 0xC0, 0x30, 0x06, 0x04, 0x80, 0xE0, 0x00, - 0x1C, 0x19, 0xD8, 0xCC, 0x66, 0x60, 0xE1, 0x80, 0xF0, 0x7E, 0x43, 0x21, - 0x8F, 0x00, 0x00, 0x1E, 0x07, 0x03, 0x01, 0x80, 0xD8, 0xFC, 0x76, 0x33, - 0x19, 0x99, 0xCC, 0xD6, 0x77, 0x30, 0x39, 0xC0, 0x0F, 0x31, 0x8C, 0xC6, - 0x31, 0xAE, 0x00, 0x03, 0x81, 0xC0, 0x00, 0x00, 0xE0, 0x30, 0x18, 0x18, - 0x0C, 0x06, 0x03, 0x03, 0x01, 0x80, 0xC2, 0xC1, 0xC0, 0x00, 0x0F, 0x00, - 0xC0, 0x60, 0x18, 0x06, 0xF3, 0x90, 0xC8, 0x34, 0x0F, 0x06, 0xC1, 0x98, - 0x66, 0xB9, 0xC0, 0x03, 0xCC, 0x63, 0x39, 0x8C, 0x66, 0x31, 0x8E, 0x70, - 0x7B, 0x99, 0xAF, 0xCE, 0x66, 0x63, 0x67, 0x33, 0x31, 0x99, 0x8C, 0xCC, - 0xE7, 0xC6, 0x30, 0x73, 0x7F, 0x73, 0x73, 0x63, 0x67, 0xE6, 0xC7, 0xC6, - 0x1E, 0x33, 0x63, 0x63, 0xC3, 0xC6, 0xC6, 0xCC, 0x78, 0x1D, 0xC3, 0xB1, - 0xCC, 0x63, 0x19, 0xCE, 0x63, 0x18, 0xCC, 0x3E, 0x1C, 0x06, 0x03, 0xE0, - 0x0D, 0x99, 0x8C, 0xCC, 0x6E, 0x76, 0x33, 0x19, 0x9C, 0x7C, 0x06, 0x07, - 0x07, 0xC0, 0x76, 0x3A, 0x30, 0x70, 0x60, 0x60, 0x60, 0xE0, 0x3D, 0x14, - 0x58, 0x38, 0x60, 0xA2, 0xF0, 0x08, 0xCC, 0xF6, 0x31, 0x98, 0xC6, 0x35, - 0xC0, 0xE3, 0x63, 0x66, 0x66, 0x66, 0xCC, 0xCC, 0xFE, 0xEC, 0xE6, 0xCD, - 0x8B, 0x26, 0x8E, 0x18, 0x20, 0xE4, 0xD9, 0x36, 0xE5, 0xDA, 0x77, 0x19, - 0xC6, 0x61, 0x10, 0x39, 0xC7, 0xB0, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xE1, - 0x5A, 0x67, 0x00, 0x39, 0x8C, 0xC3, 0x21, 0xA0, 0xD0, 0x68, 0x38, 0x0C, - 0x04, 0x04, 0x14, 0x0C, 0x00, 0x3E, 0x46, 0x0C, 0x08, 0x10, 0x20, 0x70, - 0x1A, 0x0E, 0x03, 0x0E, 0x0C, 0x0C, 0x08, 0x18, 0x18, 0x10, 0x60, 0x30, - 0x30, 0x30, 0x60, 0x60, 0x60, 0x30, 0xFF, 0xF0, 0x0C, 0x06, 0x06, 0x06, - 0x04, 0x0C, 0x0C, 0x0C, 0x06, 0x18, 0x18, 0x18, 0x30, 0x30, 0x30, 0xE0, - 0x71, 0x8F}; - -const GFXglyph FreeSerifBoldItalic9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 6, 13, 7, 1, -11}, // 0x21 '!' - {10, 6, 5, 10, 3, -11}, // 0x22 '"' - {14, 11, 13, 9, -1, -12}, // 0x23 '#' - {32, 11, 15, 9, -1, -12}, // 0x24 '$' - {53, 14, 13, 15, 1, -11}, // 0x25 '%' - {76, 13, 13, 14, 0, -11}, // 0x26 '&' - {98, 2, 5, 5, 3, -11}, // 0x27 ''' - {100, 5, 16, 6, 1, -11}, // 0x28 '(' - {110, 5, 16, 6, -1, -11}, // 0x29 ')' - {120, 8, 8, 9, 1, -11}, // 0x2A '*' - {128, 9, 9, 10, 0, -8}, // 0x2B '+' - {139, 3, 6, 5, -1, -2}, // 0x2C ',' - {142, 5, 2, 6, 0, -4}, // 0x2D '-' - {144, 3, 3, 4, 0, -1}, // 0x2E '.' - {146, 7, 12, 6, 0, -11}, // 0x2F '/' - {157, 9, 13, 9, 0, -11}, // 0x30 '0' - {172, 8, 13, 9, 0, -11}, // 0x31 '1' - {185, 9, 13, 9, 0, -11}, // 0x32 '2' - {200, 9, 13, 9, 0, -11}, // 0x33 '3' - {215, 9, 12, 9, 0, -11}, // 0x34 '4' - {229, 9, 13, 9, 0, -11}, // 0x35 '5' - {244, 9, 13, 9, 1, -11}, // 0x36 '6' - {259, 9, 12, 9, 1, -11}, // 0x37 '7' - {273, 8, 13, 9, 0, -11}, // 0x38 '8' - {286, 9, 13, 9, 0, -11}, // 0x39 '9' - {301, 5, 9, 5, 0, -7}, // 0x3A ':' - {307, 5, 11, 5, 0, -7}, // 0x3B ';' - {314, 9, 10, 10, 1, -9}, // 0x3C '<' - {326, 9, 5, 10, 1, -6}, // 0x3D '=' - {332, 9, 10, 10, 1, -9}, // 0x3E '>' - {344, 8, 13, 9, 1, -11}, // 0x3F '?' - {357, 13, 13, 15, 1, -12}, // 0x40 '@' - {379, 12, 13, 13, 0, -11}, // 0x41 'A' - {399, 12, 13, 12, 0, -11}, // 0x42 'B' - {419, 12, 13, 11, 1, -11}, // 0x43 'C' - {439, 14, 13, 13, 0, -11}, // 0x44 'D' - {462, 13, 13, 11, 0, -11}, // 0x45 'E' - {484, 13, 13, 11, 0, -11}, // 0x46 'F' - {506, 12, 13, 13, 1, -11}, // 0x47 'G' - {526, 15, 13, 14, 0, -11}, // 0x48 'H' - {551, 8, 13, 7, 0, -11}, // 0x49 'I' - {564, 10, 14, 9, 0, -11}, // 0x4A 'J' - {582, 13, 13, 12, 0, -11}, // 0x4B 'K' - {604, 12, 13, 11, 0, -11}, // 0x4C 'L' - {624, 17, 13, 16, 0, -11}, // 0x4D 'M' - {652, 14, 13, 13, 0, -11}, // 0x4E 'N' - {675, 12, 13, 12, 1, -11}, // 0x4F 'O' - {695, 12, 13, 11, 0, -11}, // 0x50 'P' - {715, 12, 16, 12, 1, -11}, // 0x51 'Q' - {739, 12, 13, 12, 0, -11}, // 0x52 'R' - {759, 9, 13, 9, 0, -11}, // 0x53 'S' - {774, 11, 13, 11, 2, -11}, // 0x54 'T' - {792, 12, 13, 13, 2, -11}, // 0x55 'U' - {812, 12, 12, 13, 2, -11}, // 0x56 'V' - {830, 16, 12, 17, 2, -11}, // 0x57 'W' - {854, 13, 13, 13, 0, -11}, // 0x58 'X' - {876, 11, 13, 11, 2, -11}, // 0x59 'Y' - {894, 11, 13, 10, 0, -11}, // 0x5A 'Z' - {912, 8, 15, 6, -1, -11}, // 0x5B '[' - {927, 5, 12, 7, 2, -11}, // 0x5C '\' - {935, 7, 15, 6, -1, -11}, // 0x5D ']' - {949, 8, 7, 10, 1, -11}, // 0x5E '^' - {956, 9, 1, 9, 0, 3}, // 0x5F '_' - {958, 4, 3, 6, 2, -11}, // 0x60 '`' - {960, 9, 9, 9, 0, -7}, // 0x61 'a' - {971, 8, 14, 9, 0, -12}, // 0x62 'b' - {985, 8, 9, 8, 0, -7}, // 0x63 'c' - {994, 10, 14, 9, 0, -12}, // 0x64 'd' - {1012, 7, 9, 7, 0, -7}, // 0x65 'e' - {1020, 11, 17, 9, -2, -12}, // 0x66 'f' - {1044, 9, 12, 9, 0, -7}, // 0x67 'g' - {1058, 9, 14, 10, 0, -12}, // 0x68 'h' - {1074, 5, 13, 5, 1, -11}, // 0x69 'i' - {1083, 9, 16, 6, -1, -11}, // 0x6A 'j' - {1101, 10, 14, 9, 0, -12}, // 0x6B 'k' - {1119, 5, 14, 5, 1, -12}, // 0x6C 'l' - {1128, 13, 9, 14, 0, -7}, // 0x6D 'm' - {1143, 8, 9, 9, 0, -7}, // 0x6E 'n' - {1152, 8, 9, 9, 0, -7}, // 0x6F 'o' - {1161, 10, 12, 9, -2, -7}, // 0x70 'p' - {1176, 9, 12, 9, 0, -7}, // 0x71 'q' - {1190, 8, 8, 7, 0, -7}, // 0x72 'r' - {1198, 6, 9, 6, 0, -7}, // 0x73 's' - {1205, 5, 12, 5, 1, -10}, // 0x74 't' - {1213, 8, 9, 10, 1, -7}, // 0x75 'u' - {1222, 7, 8, 8, 1, -7}, // 0x76 'v' - {1229, 10, 8, 12, 1, -7}, // 0x77 'w' - {1239, 10, 9, 9, -1, -7}, // 0x78 'x' - {1251, 9, 12, 8, -1, -7}, // 0x79 'y' - {1265, 8, 9, 7, 0, -7}, // 0x7A 'z' - {1274, 8, 16, 6, 0, -12}, // 0x7B '{' - {1290, 1, 12, 5, 2, -11}, // 0x7C '|' - {1292, 8, 16, 6, -2, -12}, // 0x7D '}' - {1308, 8, 2, 10, 1, -4}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic9pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic9pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 1982 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h deleted file mode 100644 index 85de005..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h +++ /dev/null @@ -1,273 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic12pt7bBitmaps[] PROGMEM = { - 0x0C, 0x31, 0xC6, 0x18, 0x43, 0x0C, 0x20, 0x84, 0x10, 0x03, 0x0C, 0x30, - 0x66, 0xCD, 0x12, 0x24, 0x51, 0x00, 0x03, 0x10, 0x11, 0x80, 0x8C, 0x0C, - 0x40, 0x46, 0x1F, 0xFC, 0x21, 0x01, 0x18, 0x18, 0x80, 0x84, 0x3F, 0xF8, - 0x62, 0x02, 0x30, 0x31, 0x01, 0x08, 0x08, 0xC0, 0x00, 0x40, 0x08, 0x07, - 0xC0, 0xCA, 0x18, 0xA1, 0x92, 0x19, 0x01, 0xD0, 0x0F, 0x00, 0x78, 0x03, - 0xC0, 0x2E, 0x02, 0x64, 0x46, 0x44, 0x64, 0x46, 0x64, 0xC1, 0xF0, 0x08, - 0x00, 0x80, 0x00, 0x08, 0x0F, 0x0C, 0x0C, 0x7C, 0x0C, 0x22, 0x06, 0x12, - 0x06, 0x09, 0x03, 0x09, 0x01, 0x84, 0x80, 0xC4, 0x8F, 0x3C, 0x4C, 0x40, - 0x4C, 0x20, 0x4E, 0x10, 0x26, 0x08, 0x23, 0x08, 0x11, 0x84, 0x10, 0xC4, - 0x08, 0x3C, 0x00, 0x00, 0xE0, 0x02, 0x60, 0x0C, 0xC0, 0x19, 0x80, 0x36, - 0x00, 0x70, 0x00, 0xC0, 0x07, 0x9F, 0x33, 0x08, 0xC3, 0x13, 0x06, 0x46, - 0x0D, 0x0C, 0x0C, 0x18, 0x1C, 0x1C, 0x5C, 0x9F, 0x1E, 0xFA, 0xA0, 0x02, - 0x08, 0x20, 0xC3, 0x06, 0x18, 0x30, 0xE1, 0x83, 0x06, 0x0C, 0x18, 0x30, - 0x60, 0x40, 0x80, 0x81, 0x00, 0x08, 0x10, 0x10, 0x20, 0x40, 0xC1, 0x83, - 0x06, 0x0C, 0x18, 0x70, 0xC1, 0x83, 0x0C, 0x10, 0x41, 0x04, 0x00, 0x18, - 0x18, 0x18, 0x93, 0x74, 0x38, 0xD7, 0x93, 0x18, 0x18, 0x04, 0x00, 0x80, - 0x10, 0x02, 0x00, 0x41, 0xFF, 0xC1, 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, - 0x00, 0x6C, 0x95, 0x00, 0xF8, 0xFC, 0x00, 0x40, 0x18, 0x02, 0x00, 0xC0, - 0x30, 0x06, 0x01, 0x80, 0x20, 0x0C, 0x01, 0x00, 0x60, 0x18, 0x03, 0x00, - 0xC0, 0x10, 0x06, 0x00, 0x07, 0x81, 0x98, 0x61, 0x18, 0x33, 0x06, 0xC0, - 0xD8, 0x1B, 0x03, 0xE0, 0xF8, 0x1F, 0x03, 0x60, 0x6C, 0x19, 0x83, 0x10, - 0xC3, 0x30, 0x3C, 0x00, 0x01, 0x87, 0xC0, 0xC0, 0x60, 0x30, 0x18, 0x18, - 0x0C, 0x06, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x60, 0x30, 0xFE, 0x00, - 0x0F, 0x0C, 0x64, 0x0C, 0x03, 0x00, 0xC0, 0x20, 0x18, 0x0C, 0x02, 0x01, - 0x00, 0x80, 0x40, 0x20, 0x10, 0x2F, 0xF0, 0x07, 0x86, 0x30, 0x0C, 0x03, - 0x01, 0x81, 0x81, 0xF0, 0x1E, 0x03, 0x80, 0x60, 0x18, 0x06, 0x01, 0x00, - 0xCC, 0x63, 0xE0, 0x00, 0x20, 0x0C, 0x03, 0x80, 0xA0, 0x2C, 0x09, 0x82, - 0x30, 0x84, 0x31, 0x8C, 0x33, 0x06, 0x7F, 0xE0, 0x30, 0x06, 0x00, 0x80, - 0x30, 0x03, 0xE1, 0x80, 0x20, 0x06, 0x00, 0xF0, 0x0F, 0x00, 0x60, 0x06, - 0x00, 0xC0, 0x18, 0x03, 0x00, 0x40, 0x18, 0x02, 0x30, 0x87, 0xE0, 0x00, - 0x70, 0x3C, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x7F, 0x07, 0x18, 0x60, - 0xCE, 0x0C, 0xC0, 0xCC, 0x0C, 0xC0, 0xCC, 0x18, 0x41, 0x86, 0x30, 0x3E, - 0x00, 0x7F, 0xF0, 0x18, 0x03, 0x00, 0xC0, 0x10, 0x06, 0x01, 0x80, 0x30, - 0x0C, 0x01, 0x00, 0x60, 0x08, 0x03, 0x00, 0xC0, 0x10, 0x06, 0x00, 0x0F, - 0x83, 0x18, 0xC1, 0x98, 0x33, 0x06, 0x71, 0x87, 0x60, 0x70, 0x17, 0x0C, - 0x71, 0x07, 0x60, 0x6C, 0x0D, 0x81, 0xB0, 0x63, 0x1C, 0x3E, 0x00, 0x07, - 0x83, 0x18, 0xC1, 0x18, 0x36, 0x06, 0xC0, 0xD8, 0x1B, 0x07, 0x60, 0xE6, - 0x38, 0x7F, 0x00, 0xC0, 0x30, 0x0C, 0x07, 0x03, 0xC0, 0xC0, 0x00, 0x33, - 0x30, 0x00, 0x00, 0xCC, 0xC0, 0x18, 0xC6, 0x00, 0x00, 0x00, 0x03, 0x18, - 0x44, 0x40, 0x00, 0x00, 0x03, 0x00, 0xF0, 0x38, 0x1E, 0x07, 0x80, 0xE0, - 0x0F, 0x00, 0x1C, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x00, 0x10, 0xFF, 0xF0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0x00, 0x0C, 0x00, 0xF0, 0x01, - 0xC0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x0F, 0x03, 0xC1, 0xE0, 0x78, 0x0E, - 0x00, 0x80, 0x00, 0x3E, 0x21, 0x90, 0x60, 0x30, 0x38, 0x38, 0x30, 0x30, - 0x20, 0x20, 0x10, 0x00, 0x00, 0x06, 0x03, 0x01, 0x80, 0x07, 0xE0, 0x1C, - 0x18, 0x30, 0x04, 0x60, 0x02, 0x61, 0xDA, 0xC3, 0x31, 0xC6, 0x31, 0xC4, - 0x31, 0xCC, 0x31, 0xCC, 0x21, 0xCC, 0x62, 0x6C, 0xE4, 0x67, 0x38, 0x30, - 0x00, 0x1C, 0x08, 0x07, 0xF0, 0x00, 0x20, 0x00, 0xC0, 0x03, 0x80, 0x0B, - 0x00, 0x16, 0x00, 0x4E, 0x00, 0x9C, 0x02, 0x18, 0x08, 0x30, 0x1F, 0xE0, - 0x40, 0xC1, 0x81, 0xC2, 0x03, 0x8C, 0x07, 0x3C, 0x1F, 0x80, 0x1F, 0xF0, - 0x1C, 0x60, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x38, 0x60, 0xC3, 0x03, 0xF0, - 0x1C, 0x30, 0x60, 0x61, 0x81, 0x86, 0x06, 0x38, 0x18, 0xC0, 0xC3, 0x06, - 0x3F, 0xF0, 0x01, 0xF9, 0x06, 0x0F, 0x1C, 0x06, 0x38, 0x02, 0x30, 0x02, - 0x60, 0x00, 0x60, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, - 0xC0, 0x00, 0xC0, 0x08, 0x60, 0x10, 0x30, 0x60, 0x1F, 0x80, 0x1F, 0xF0, - 0x07, 0x0C, 0x06, 0x06, 0x06, 0x06, 0x06, 0x03, 0x0E, 0x03, 0x0C, 0x03, - 0x0C, 0x03, 0x1C, 0x03, 0x1C, 0x07, 0x18, 0x06, 0x18, 0x06, 0x38, 0x0C, - 0x30, 0x18, 0x30, 0x70, 0xFF, 0x80, 0x1F, 0xFF, 0x07, 0x07, 0x06, 0x02, - 0x06, 0x02, 0x06, 0x00, 0x0E, 0x10, 0x0C, 0x30, 0x0F, 0xF0, 0x1C, 0x20, - 0x18, 0x20, 0x18, 0x00, 0x18, 0x00, 0x38, 0x04, 0x30, 0x08, 0x30, 0x38, - 0xFF, 0xF8, 0x1F, 0xFF, 0x07, 0x07, 0x07, 0x02, 0x06, 0x02, 0x06, 0x00, - 0x0E, 0x10, 0x0C, 0x30, 0x0F, 0xF0, 0x1C, 0x20, 0x1C, 0x20, 0x18, 0x00, - 0x18, 0x00, 0x38, 0x00, 0x30, 0x00, 0x30, 0x00, 0xFC, 0x00, 0x01, 0xF1, - 0x06, 0x0F, 0x18, 0x07, 0x38, 0x02, 0x30, 0x02, 0x60, 0x00, 0x60, 0x00, - 0xE0, 0x00, 0xC0, 0x7F, 0xC0, 0x1C, 0xC0, 0x1C, 0xC0, 0x18, 0xC0, 0x18, - 0x60, 0x18, 0x30, 0x38, 0x0F, 0xC0, 0x1F, 0xC7, 0xE0, 0xE0, 0x70, 0x18, - 0x0E, 0x03, 0x01, 0x80, 0x60, 0x30, 0x1C, 0x0E, 0x03, 0x01, 0x80, 0x7F, - 0xF0, 0x1C, 0x06, 0x03, 0x01, 0xC0, 0x60, 0x30, 0x0C, 0x06, 0x03, 0x81, - 0xC0, 0x60, 0x38, 0x0C, 0x06, 0x07, 0xE3, 0xF0, 0x1F, 0x83, 0x81, 0x80, - 0xC0, 0x60, 0x70, 0x30, 0x18, 0x1C, 0x0C, 0x06, 0x03, 0x03, 0x81, 0x80, - 0xC1, 0xF8, 0x03, 0xF0, 0x0C, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x18, 0x03, - 0x80, 0x30, 0x03, 0x00, 0x30, 0x07, 0x00, 0x60, 0x06, 0x0C, 0xE0, 0xCC, - 0x07, 0x80, 0x1F, 0xCF, 0x83, 0x83, 0x81, 0x81, 0x00, 0xC3, 0x00, 0x62, - 0x00, 0x72, 0x00, 0x36, 0x00, 0x1E, 0x00, 0x1D, 0x80, 0x0C, 0xE0, 0x06, - 0x30, 0x03, 0x1C, 0x03, 0x87, 0x01, 0x81, 0x80, 0xC0, 0xE1, 0xF9, 0xFC, - 0x1F, 0xC0, 0x1C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, 0x38, 0x00, 0xC0, - 0x03, 0x00, 0x1C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, 0x38, 0x0C, 0xC0, - 0x23, 0x03, 0xBF, 0xFE, 0x0F, 0x00, 0x78, 0x38, 0x07, 0x81, 0xC0, 0x38, - 0x0E, 0x02, 0xC0, 0x70, 0x3E, 0x05, 0xC1, 0x70, 0x2E, 0x13, 0x01, 0x31, - 0x98, 0x11, 0x89, 0xC0, 0x8C, 0x8C, 0x04, 0x6C, 0x60, 0x23, 0x43, 0x02, - 0x1C, 0x38, 0x10, 0xE1, 0x81, 0x86, 0x1C, 0x1F, 0x23, 0xF8, 0x1E, 0x07, - 0xC1, 0xC0, 0x60, 0x70, 0x10, 0x1C, 0x0C, 0x05, 0x82, 0x02, 0x60, 0x80, - 0x9C, 0x60, 0x23, 0x10, 0x10, 0xC4, 0x04, 0x19, 0x01, 0x06, 0xC0, 0x40, - 0xE0, 0x20, 0x38, 0x08, 0x0E, 0x06, 0x01, 0x03, 0xE0, 0x40, 0x01, 0xF0, - 0x0C, 0x10, 0x30, 0x10, 0xC0, 0x33, 0x00, 0x6E, 0x00, 0xD8, 0x01, 0xF0, - 0x03, 0xC0, 0x0D, 0x80, 0x1B, 0x00, 0x76, 0x00, 0xCC, 0x03, 0x08, 0x0C, - 0x18, 0x70, 0x0F, 0x80, 0x1F, 0xF0, 0x1C, 0x60, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x38, 0x30, 0xC1, 0x83, 0x0E, 0x1F, 0xE0, 0x60, 0x01, 0x80, 0x06, - 0x00, 0x38, 0x00, 0xC0, 0x03, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x06, 0x10, - 0x30, 0x30, 0xC0, 0x33, 0x00, 0x66, 0x00, 0xD8, 0x01, 0xB0, 0x03, 0xE0, - 0x0F, 0x80, 0x1B, 0x00, 0x36, 0x00, 0xCC, 0x03, 0x98, 0x06, 0x18, 0x18, - 0x18, 0xC0, 0x0E, 0x00, 0x20, 0x01, 0xF8, 0x36, 0x7F, 0x80, 0x1F, 0xF0, - 0x1C, 0x60, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x38, 0x70, 0xC3, 0x83, 0xF8, - 0x1D, 0xC0, 0x63, 0x01, 0x8C, 0x06, 0x18, 0x38, 0x60, 0xC1, 0xC3, 0x03, - 0x3F, 0x0F, 0x07, 0x90, 0xC7, 0x18, 0x21, 0x82, 0x18, 0x01, 0xC0, 0x0E, - 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xC4, 0x0C, 0x40, 0xC6, 0x08, 0xE1, - 0x89, 0xE0, 0x7F, 0xFE, 0xC7, 0x1D, 0x0C, 0x14, 0x18, 0x20, 0x70, 0x00, - 0xE0, 0x01, 0x80, 0x03, 0x00, 0x0E, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, - 0x01, 0xC0, 0x03, 0x00, 0x0E, 0x00, 0x7F, 0x80, 0x7E, 0x1F, 0x38, 0x0C, - 0x38, 0x0C, 0x30, 0x08, 0x30, 0x08, 0x70, 0x08, 0x70, 0x10, 0x60, 0x10, - 0x60, 0x10, 0xE0, 0x10, 0xC0, 0x20, 0xC0, 0x20, 0xC0, 0x60, 0xC0, 0x40, - 0x61, 0x80, 0x3F, 0x00, 0xFC, 0x3E, 0xE0, 0x18, 0xC0, 0x21, 0x80, 0xC3, - 0x81, 0x07, 0x04, 0x0E, 0x08, 0x0C, 0x20, 0x18, 0x80, 0x31, 0x00, 0x64, - 0x00, 0xF0, 0x01, 0xE0, 0x01, 0x80, 0x02, 0x00, 0x04, 0x00, 0xFD, 0xF8, - 0xF7, 0x07, 0x06, 0x30, 0x60, 0x63, 0x07, 0x04, 0x30, 0x70, 0x83, 0x8F, - 0x08, 0x38, 0xB1, 0x03, 0x93, 0x10, 0x19, 0x32, 0x01, 0xA3, 0x20, 0x1A, - 0x34, 0x01, 0xC3, 0x40, 0x1C, 0x38, 0x01, 0x83, 0x00, 0x18, 0x30, 0x01, - 0x02, 0x00, 0x1F, 0x9F, 0x0E, 0x06, 0x06, 0x04, 0x07, 0x08, 0x03, 0x10, - 0x03, 0x20, 0x03, 0xC0, 0x01, 0x80, 0x01, 0xC0, 0x03, 0xC0, 0x06, 0xE0, - 0x0C, 0x60, 0x18, 0x60, 0x30, 0x70, 0x70, 0x78, 0xF8, 0xFC, 0xFC, 0xFB, - 0x81, 0x8C, 0x08, 0x60, 0x83, 0x8C, 0x0C, 0xC0, 0x64, 0x03, 0xC0, 0x0C, - 0x00, 0xE0, 0x07, 0x00, 0x30, 0x01, 0x80, 0x1C, 0x00, 0xC0, 0x1F, 0xC0, - 0x1F, 0xFE, 0x30, 0x38, 0xC0, 0xF1, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, - 0x70, 0x01, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x01, 0xC0, - 0x47, 0x01, 0x1C, 0x06, 0x7F, 0xF8, 0x07, 0x04, 0x08, 0x08, 0x08, 0x18, - 0x10, 0x10, 0x10, 0x20, 0x20, 0x20, 0x20, 0x40, 0x40, 0x40, 0x80, 0x80, - 0x80, 0xE0, 0xC0, 0xC0, 0x40, 0x60, 0x20, 0x30, 0x30, 0x18, 0x18, 0x08, - 0x0C, 0x04, 0x06, 0x06, 0x03, 0x03, 0x0E, 0x04, 0x08, 0x10, 0x60, 0x81, - 0x02, 0x04, 0x18, 0x20, 0x40, 0x81, 0x02, 0x08, 0x10, 0x20, 0x47, 0x80, - 0x0C, 0x03, 0x81, 0xE0, 0x4C, 0x33, 0x08, 0x66, 0x19, 0x03, 0xC0, 0xC0, - 0xFF, 0xF0, 0xCE, 0x63, 0x07, 0xA0, 0xCE, 0x18, 0x63, 0x04, 0x60, 0xC6, - 0x0C, 0xC0, 0xCC, 0x18, 0xC3, 0x8C, 0x5A, 0x79, 0xC0, 0x38, 0x06, 0x01, - 0x80, 0x40, 0x30, 0x0C, 0xE3, 0xCC, 0xC3, 0x70, 0xD8, 0x36, 0x19, 0x06, - 0xC3, 0x30, 0x8C, 0xC3, 0xE0, 0x0F, 0x0C, 0xCC, 0x6C, 0x06, 0x06, 0x03, - 0x01, 0x80, 0xC0, 0x73, 0x1E, 0x00, 0x00, 0x70, 0x01, 0x80, 0x0C, 0x00, - 0x60, 0x02, 0x03, 0xF0, 0x31, 0x83, 0x08, 0x30, 0xC3, 0x06, 0x18, 0x31, - 0x81, 0x8C, 0x18, 0x61, 0xCB, 0x16, 0x8F, 0x38, 0x07, 0x19, 0x31, 0x63, - 0x62, 0xEC, 0xD0, 0xC0, 0xC0, 0xE6, 0x78, 0x00, 0x38, 0x01, 0x30, 0x0C, - 0x00, 0x20, 0x01, 0x80, 0x06, 0x00, 0xFE, 0x00, 0x40, 0x03, 0x00, 0x0C, - 0x00, 0x30, 0x00, 0x80, 0x06, 0x00, 0x18, 0x00, 0x60, 0x01, 0x80, 0x04, - 0x00, 0x30, 0x00, 0xC0, 0x02, 0x00, 0x90, 0x03, 0x80, 0x00, 0x07, 0xC0, - 0xC7, 0x18, 0x61, 0x86, 0x18, 0xE1, 0x8C, 0x07, 0x80, 0x80, 0x1C, 0x00, - 0xF0, 0x33, 0x84, 0x18, 0x80, 0x88, 0x08, 0x61, 0x03, 0xE0, 0x1C, 0x00, - 0xC0, 0x0C, 0x00, 0xC0, 0x18, 0x01, 0x8E, 0x1B, 0x61, 0xC6, 0x38, 0x63, - 0x8C, 0x30, 0xC3, 0x0C, 0x60, 0xC6, 0x1A, 0x61, 0xA4, 0x1C, 0x18, 0xC6, - 0x00, 0x0B, 0xC6, 0x23, 0x18, 0x8C, 0x63, 0x5C, 0x01, 0x80, 0xC0, 0x60, - 0x00, 0x00, 0x0C, 0x1E, 0x02, 0x03, 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, - 0x18, 0x08, 0x0C, 0x06, 0x02, 0x1B, 0x0F, 0x00, 0x1C, 0x01, 0x80, 0x30, - 0x06, 0x01, 0x80, 0x33, 0xC6, 0x30, 0x88, 0x32, 0x06, 0x80, 0xF0, 0x1B, - 0x06, 0x60, 0xC4, 0x18, 0xD2, 0x0C, 0x3C, 0x61, 0x86, 0x18, 0xC3, 0x0C, - 0x21, 0x86, 0x18, 0x43, 0x2D, 0x38, 0x78, 0xE7, 0x0D, 0xB5, 0x8D, 0x1C, - 0xC7, 0x0C, 0x63, 0x8E, 0x31, 0x86, 0x30, 0xC3, 0x18, 0xC1, 0x0C, 0x61, - 0x84, 0xB0, 0xC6, 0xB0, 0x63, 0x80, 0x78, 0xE1, 0xB6, 0x14, 0x63, 0x84, - 0x38, 0xC3, 0x0C, 0x70, 0x86, 0x18, 0x61, 0x96, 0x1A, 0xC1, 0xC0, 0x0F, - 0x06, 0x63, 0x0D, 0x83, 0x60, 0xF0, 0x3C, 0x1B, 0x06, 0xC3, 0x39, 0x87, - 0x80, 0x1E, 0xF0, 0x39, 0xC1, 0x86, 0x0C, 0x30, 0xC1, 0x86, 0x0C, 0x30, - 0xC3, 0x06, 0x18, 0x60, 0xC6, 0x07, 0xC0, 0x60, 0x03, 0x00, 0x18, 0x00, - 0xC0, 0x1F, 0x00, 0x07, 0x81, 0x9C, 0x63, 0x98, 0x76, 0x0C, 0xC1, 0xB0, - 0x76, 0x0E, 0xC3, 0x98, 0xB1, 0xE6, 0x00, 0x80, 0x30, 0x06, 0x00, 0xC0, - 0xFC, 0x79, 0x8F, 0xC5, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x60, 0x30, - 0x10, 0x00, 0x1E, 0x98, 0xCC, 0x27, 0x11, 0x80, 0xE0, 0x39, 0x0C, 0x86, - 0x62, 0x2E, 0x00, 0x08, 0x67, 0xCC, 0x30, 0xC6, 0x18, 0x61, 0x8C, 0x34, - 0xE0, 0xF0, 0xCC, 0x19, 0x83, 0x30, 0xC6, 0x18, 0x87, 0x31, 0x66, 0x3C, - 0xCB, 0x1A, 0x6B, 0x8E, 0x00, 0x70, 0xCC, 0x33, 0x04, 0xC2, 0x18, 0x86, - 0x41, 0x90, 0x68, 0x1C, 0x06, 0x01, 0x00, 0x61, 0x0F, 0x84, 0x36, 0x30, - 0xDC, 0xC1, 0x35, 0x08, 0xD4, 0x23, 0x91, 0x0E, 0x48, 0x30, 0xE0, 0xC3, - 0x02, 0x08, 0x00, 0x0C, 0x63, 0x4A, 0x07, 0x00, 0x70, 0x06, 0x00, 0x20, - 0x07, 0x00, 0xB0, 0x0B, 0x21, 0x14, 0xE1, 0x80, 0x38, 0x63, 0x0C, 0x30, - 0x86, 0x10, 0xC4, 0x0C, 0x81, 0xA0, 0x34, 0x07, 0x00, 0x60, 0x08, 0x02, - 0x00, 0x40, 0x10, 0x04, 0x07, 0x00, 0x1F, 0x90, 0x80, 0x80, 0xC0, 0xC0, - 0x40, 0x60, 0x60, 0x60, 0x38, 0x3E, 0x03, 0xA0, 0x60, 0x00, 0x83, 0x81, - 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, 0x10, 0x10, 0x1C, 0x06, 0x03, 0x03, - 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, 0x18, 0x07, 0x00, 0xFF, 0xFF, 0x07, - 0x00, 0xC0, 0x60, 0x30, 0x10, 0x18, 0x0C, 0x06, 0x06, 0x03, 0x01, 0x80, - 0x60, 0x40, 0x60, 0x30, 0x10, 0x18, 0x0C, 0x06, 0x06, 0x06, 0x00, 0x78, - 0x18, 0x8C, 0x0F, 0x00}; - -const GFXglyph FreeSerifItalic12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 6, 16, 8, 1, -15}, // 0x21 '!' - {12, 7, 6, 8, 3, -15}, // 0x22 '"' - {18, 13, 16, 12, 0, -15}, // 0x23 '#' - {44, 12, 20, 12, 0, -17}, // 0x24 '$' - {74, 17, 17, 20, 2, -16}, // 0x25 '%' - {111, 15, 16, 19, 2, -15}, // 0x26 '&' - {141, 2, 6, 5, 4, -15}, // 0x27 ''' - {143, 7, 20, 8, 1, -15}, // 0x28 '(' - {161, 7, 20, 8, 0, -15}, // 0x29 ')' - {179, 8, 10, 12, 4, -15}, // 0x2A '*' - {189, 11, 11, 16, 2, -10}, // 0x2B '+' - {205, 3, 6, 6, 0, -2}, // 0x2C ',' - {208, 5, 1, 8, 1, -5}, // 0x2D '-' - {209, 2, 3, 6, 1, -2}, // 0x2E '.' - {210, 11, 16, 7, 0, -15}, // 0x2F '/' - {232, 11, 17, 12, 1, -16}, // 0x30 '0' - {256, 9, 17, 12, 1, -16}, // 0x31 '1' - {276, 10, 15, 12, 1, -14}, // 0x32 '2' - {295, 10, 16, 12, 1, -15}, // 0x33 '3' - {315, 11, 16, 12, 0, -15}, // 0x34 '4' - {337, 11, 16, 12, 0, -15}, // 0x35 '5' - {359, 12, 17, 12, 1, -16}, // 0x36 '6' - {385, 11, 16, 12, 2, -15}, // 0x37 '7' - {407, 11, 17, 12, 1, -16}, // 0x38 '8' - {431, 11, 17, 12, 1, -16}, // 0x39 '9' - {455, 4, 11, 6, 1, -10}, // 0x3A ':' - {461, 5, 14, 6, 0, -10}, // 0x3B ';' - {470, 12, 13, 14, 1, -12}, // 0x3C '<' - {490, 12, 6, 16, 2, -8}, // 0x3D '=' - {499, 12, 13, 14, 2, -12}, // 0x3E '>' - {519, 9, 16, 11, 3, -15}, // 0x3F '?' - {537, 16, 16, 19, 2, -15}, // 0x40 '@' - {569, 15, 15, 16, 0, -14}, // 0x41 'A' - {598, 14, 16, 14, 0, -15}, // 0x42 'B' - {626, 16, 16, 15, 1, -15}, // 0x43 'C' - {658, 16, 16, 17, 0, -15}, // 0x44 'D' - {690, 16, 16, 14, 0, -15}, // 0x45 'E' - {722, 16, 16, 14, 0, -15}, // 0x46 'F' - {754, 16, 16, 17, 1, -15}, // 0x47 'G' - {786, 19, 16, 17, 0, -15}, // 0x48 'H' - {824, 9, 16, 8, 0, -15}, // 0x49 'I' - {842, 12, 16, 10, 0, -15}, // 0x4A 'J' - {866, 17, 16, 15, 0, -15}, // 0x4B 'K' - {900, 14, 16, 14, 0, -15}, // 0x4C 'L' - {928, 21, 16, 20, 0, -15}, // 0x4D 'M' - {970, 18, 16, 16, 0, -15}, // 0x4E 'N' - {1006, 15, 16, 16, 1, -15}, // 0x4F 'O' - {1036, 14, 16, 14, 0, -15}, // 0x50 'P' - {1064, 15, 20, 16, 1, -15}, // 0x51 'Q' - {1102, 14, 16, 15, 0, -15}, // 0x52 'R' - {1130, 12, 16, 11, 0, -15}, // 0x53 'S' - {1154, 15, 16, 14, 2, -15}, // 0x54 'T' - {1184, 16, 16, 17, 3, -15}, // 0x55 'U' - {1216, 15, 16, 16, 3, -15}, // 0x56 'V' - {1246, 20, 16, 21, 3, -15}, // 0x57 'W' - {1286, 16, 16, 16, 0, -15}, // 0x58 'X' - {1318, 13, 16, 14, 3, -15}, // 0x59 'Y' - {1344, 15, 16, 14, 0, -15}, // 0x5A 'Z' - {1374, 8, 20, 9, 1, -15}, // 0x5B '[' - {1394, 8, 16, 12, 3, -15}, // 0x5C '\' - {1410, 7, 20, 9, 1, -15}, // 0x5D ']' - {1428, 10, 9, 10, 0, -15}, // 0x5E '^' - {1440, 12, 1, 12, 0, 3}, // 0x5F '_' - {1442, 4, 4, 6, 3, -15}, // 0x60 '`' - {1444, 12, 11, 12, 0, -10}, // 0x61 'a' - {1461, 10, 16, 11, 1, -15}, // 0x62 'b' - {1481, 9, 11, 10, 1, -10}, // 0x63 'c' - {1494, 13, 16, 12, 0, -15}, // 0x64 'd' - {1520, 8, 11, 10, 1, -10}, // 0x65 'e' - {1531, 14, 22, 10, -2, -16}, // 0x66 'f' - {1570, 12, 16, 11, -1, -10}, // 0x67 'g' - {1594, 12, 16, 12, 0, -15}, // 0x68 'h' - {1618, 5, 16, 6, 1, -15}, // 0x69 'i' - {1628, 9, 21, 7, -2, -15}, // 0x6A 'j' - {1652, 11, 16, 11, 0, -15}, // 0x6B 'k' - {1674, 6, 16, 6, 1, -15}, // 0x6C 'l' - {1686, 17, 11, 17, 0, -10}, // 0x6D 'm' - {1710, 12, 11, 12, 0, -10}, // 0x6E 'n' - {1727, 10, 11, 11, 1, -10}, // 0x6F 'o' - {1741, 13, 16, 11, -2, -10}, // 0x70 'p' - {1767, 11, 16, 12, 0, -10}, // 0x71 'q' - {1789, 9, 11, 9, 0, -10}, // 0x72 'r' - {1802, 9, 11, 8, 0, -10}, // 0x73 's' - {1815, 6, 13, 6, 1, -12}, // 0x74 't' - {1825, 11, 11, 12, 1, -10}, // 0x75 'u' - {1841, 10, 11, 11, 1, -10}, // 0x76 'v' - {1855, 14, 11, 16, 2, -10}, // 0x77 'w' - {1875, 12, 11, 10, -1, -10}, // 0x78 'x' - {1892, 11, 16, 11, 0, -10}, // 0x79 'y' - {1914, 9, 13, 9, 0, -10}, // 0x7A 'z' - {1929, 9, 21, 10, 1, -16}, // 0x7B '{' - {1953, 1, 16, 7, 3, -15}, // 0x7C '|' - {1955, 9, 21, 10, 0, -16}, // 0x7D '}' - {1979, 11, 3, 13, 1, -6}}; // 0x7E '~' - -const GFXfont FreeSerifItalic12pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic12pt7bBitmaps, - (GFXglyph *)FreeSerifItalic12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 2656 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h deleted file mode 100644 index c25db35..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h +++ /dev/null @@ -1,452 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic18pt7bBitmaps[] PROGMEM = { - 0x01, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0x81, 0xE0, 0x70, 0x1C, 0x06, 0x01, - 0x80, 0xC0, 0x30, 0x0C, 0x02, 0x01, 0x80, 0x40, 0x10, 0x00, 0x00, 0x01, - 0x80, 0xF0, 0x3C, 0x06, 0x00, 0x38, 0x77, 0x8F, 0x78, 0xF7, 0x0E, 0x60, - 0xE6, 0x0C, 0xC1, 0x8C, 0x18, 0x81, 0x00, 0x00, 0x60, 0xC0, 0x0C, 0x38, - 0x03, 0x86, 0x00, 0x60, 0xC0, 0x0C, 0x38, 0x03, 0x06, 0x00, 0x60, 0xC0, - 0xFF, 0xFF, 0x1F, 0xFF, 0xE0, 0x61, 0xC0, 0x1C, 0x30, 0x03, 0x06, 0x00, - 0x61, 0xC0, 0x18, 0x30, 0x3F, 0xFF, 0xC7, 0xFF, 0xF8, 0x18, 0x30, 0x03, - 0x0E, 0x00, 0xE1, 0x80, 0x18, 0x30, 0x03, 0x0C, 0x00, 0xC1, 0x80, 0x18, - 0x70, 0x00, 0x00, 0x08, 0x00, 0x30, 0x00, 0x40, 0x0F, 0xC0, 0x61, 0xE1, - 0x86, 0xC6, 0x0D, 0x8C, 0x1A, 0x18, 0x24, 0x38, 0xC0, 0x39, 0x80, 0x7F, - 0x00, 0x7E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xDC, 0x03, 0x38, - 0x06, 0x32, 0x0C, 0x64, 0x18, 0xDC, 0x71, 0xB8, 0xC6, 0x39, 0x8C, 0x3F, - 0x30, 0x1F, 0x80, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0x07, 0x80, 0x60, - 0x0F, 0xE0, 0xE0, 0x0F, 0x0F, 0xB0, 0x0E, 0x04, 0x30, 0x07, 0x02, 0x18, - 0x07, 0x01, 0x18, 0x03, 0x00, 0x8C, 0x01, 0x80, 0x8C, 0x00, 0xC0, 0x4C, - 0x00, 0x60, 0x66, 0x1F, 0x30, 0x66, 0x1F, 0xCC, 0x63, 0x1C, 0x67, 0xE3, - 0x1C, 0x19, 0xE1, 0x1C, 0x04, 0x01, 0x8C, 0x02, 0x00, 0x8E, 0x01, 0x00, - 0xC7, 0x00, 0x80, 0xC3, 0x00, 0x80, 0x61, 0x80, 0xC0, 0x60, 0xC0, 0xC0, - 0x20, 0x70, 0xE0, 0x30, 0x1F, 0xC0, 0x10, 0x07, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xFC, 0x00, 0x07, 0x18, 0x00, 0x18, 0x60, 0x00, 0xE1, 0x80, 0x03, - 0x8C, 0x00, 0x0E, 0x60, 0x00, 0x3B, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x7F, 0x1F, 0xC3, 0x3C, 0x1C, 0x38, 0x70, 0x61, 0xE1, 0xE3, 0x87, - 0x07, 0x8C, 0x3C, 0x0F, 0x60, 0xF0, 0x3D, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xE0, 0x3E, 0x07, 0xC0, 0x7C, 0x77, 0x84, 0xFF, 0x8F, 0xE1, 0xF8, 0x0F, - 0x00, 0x3B, 0xDE, 0xE7, 0x33, 0x18, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, - 0xC0, 0xC0, 0xE0, 0x60, 0x70, 0x38, 0x18, 0x0C, 0x0E, 0x07, 0x03, 0x01, - 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x01, 0x00, 0x80, 0x40, 0x30, - 0x08, 0x04, 0x02, 0x00, 0x04, 0x01, 0x00, 0x80, 0x60, 0x10, 0x08, 0x04, - 0x03, 0x01, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x0E, 0x07, 0x03, 0x81, - 0x80, 0xC0, 0xE0, 0x60, 0x30, 0x30, 0x18, 0x18, 0x08, 0x08, 0x08, 0x08, - 0x00, 0x06, 0x00, 0x60, 0x06, 0x0C, 0x43, 0xE4, 0xF1, 0x58, 0x0E, 0x00, - 0xF0, 0x74, 0xEE, 0x47, 0xC4, 0x30, 0x60, 0x06, 0x00, 0x60, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x31, 0xCE, - 0x31, 0x08, 0x98, 0xFF, 0xFF, 0x6F, 0xF6, 0x00, 0x06, 0x00, 0x0E, 0x00, - 0x0C, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, - 0xE0, 0x00, 0xC0, 0x01, 0xC0, 0x03, 0x80, 0x03, 0x00, 0x07, 0x00, 0x06, - 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, - 0x00, 0x60, 0x00, 0xE0, 0x00, 0x00, 0x78, 0x00, 0xC3, 0x00, 0xC1, 0xC0, - 0xC0, 0x60, 0xE0, 0x30, 0xE0, 0x1C, 0x70, 0x0E, 0x70, 0x07, 0x38, 0x03, - 0xBC, 0x01, 0xDC, 0x01, 0xEE, 0x00, 0xFF, 0x00, 0x7F, 0x80, 0x3B, 0x80, - 0x1D, 0xC0, 0x1E, 0xE0, 0x0E, 0x70, 0x0F, 0x38, 0x07, 0x1C, 0x07, 0x06, - 0x03, 0x83, 0x83, 0x80, 0xC3, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x7F, 0x00, - 0x70, 0x07, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x01, - 0xC0, 0x38, 0x03, 0x80, 0x38, 0x03, 0x80, 0x70, 0x07, 0x00, 0x70, 0x0E, - 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x1E, 0x0F, 0xF8, 0x01, 0xF0, 0x07, 0xFC, - 0x0C, 0x3E, 0x10, 0x1F, 0x20, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, 0x00, 0xE0, - 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x04, - 0x30, 0x0C, 0x7F, 0xF8, 0xFF, 0xF0, 0x00, 0x7C, 0x00, 0xFF, 0x00, 0xC3, - 0xC0, 0x80, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x1C, 0x00, - 0x38, 0x00, 0xF0, 0x03, 0xFC, 0x00, 0x1F, 0x00, 0x03, 0xC0, 0x01, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x06, 0x00, 0x07, - 0x00, 0x03, 0x07, 0x87, 0x03, 0xFF, 0x00, 0xFC, 0x00, 0x00, 0x01, 0x80, - 0x01, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x01, 0xF0, 0x01, 0xB0, 0x01, 0xB8, - 0x01, 0x9C, 0x01, 0x8C, 0x00, 0x86, 0x00, 0x87, 0x00, 0x83, 0x80, 0x81, - 0x80, 0x81, 0xC0, 0xC0, 0xE0, 0xC0, 0x70, 0xFF, 0xFF, 0x7F, 0xFF, 0x00, - 0x1C, 0x00, 0x0C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0x80, - 0x01, 0xFF, 0x01, 0xFF, 0x02, 0x00, 0x02, 0x00, 0x06, 0x00, 0x07, 0x00, - 0x0F, 0xC0, 0x0F, 0xF0, 0x00, 0xF8, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x1C, - 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x08, 0x00, 0x18, - 0x00, 0x30, 0x00, 0x30, 0x70, 0xE0, 0xFF, 0x80, 0x7E, 0x00, 0x00, 0x03, - 0x80, 0x1F, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, - 0x00, 0x3C, 0x00, 0x3D, 0xF0, 0x1F, 0xFE, 0x1F, 0x0F, 0x8E, 0x03, 0xC7, - 0x00, 0xF7, 0x00, 0x7B, 0x80, 0x3D, 0x80, 0x1E, 0xC0, 0x0F, 0x60, 0x0F, - 0xB0, 0x07, 0x98, 0x03, 0xC4, 0x03, 0xC3, 0x03, 0xC0, 0xC3, 0x80, 0x1F, - 0x00, 0x3F, 0xFF, 0x7F, 0xFE, 0x40, 0x0E, 0x80, 0x0C, 0x00, 0x18, 0x00, - 0x18, 0x00, 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, 0xC0, 0x01, 0xC0, 0x01, - 0x80, 0x03, 0x80, 0x03, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x1C, - 0x00, 0x18, 0x00, 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, 0xE0, 0x00, 0x00, - 0xF8, 0x03, 0x0E, 0x06, 0x06, 0x0C, 0x03, 0x0C, 0x03, 0x0C, 0x03, 0x0C, - 0x03, 0x0E, 0x06, 0x07, 0x8E, 0x07, 0xD8, 0x03, 0xE0, 0x07, 0xF0, 0x1C, - 0xF8, 0x30, 0x3C, 0x60, 0x1C, 0x60, 0x0E, 0xC0, 0x06, 0xC0, 0x06, 0xC0, - 0x06, 0xC0, 0x06, 0xE0, 0x0C, 0x60, 0x18, 0x38, 0x30, 0x0F, 0xC0, 0x01, - 0xF8, 0x07, 0x8C, 0x0E, 0x06, 0x1E, 0x02, 0x3C, 0x03, 0x3C, 0x03, 0x78, - 0x03, 0x78, 0x03, 0x78, 0x03, 0x78, 0x07, 0x78, 0x07, 0x78, 0x07, 0x3C, - 0x0E, 0x3E, 0x1E, 0x1F, 0xEE, 0x07, 0x9C, 0x00, 0x38, 0x00, 0x78, 0x00, - 0x70, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xE0, 0x00, 0x0C, - 0x3C, 0x78, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0F, 0x1E, 0x18, - 0x00, 0x07, 0x03, 0xC1, 0xE0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x02, 0x03, 0x81, 0xC0, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x00, 0x00, - 0x00, 0x00, 0xC0, 0x01, 0xF0, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x01, - 0xF0, 0x03, 0xF0, 0x03, 0xF0, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xE0, - 0x00, 0x7E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x3F, - 0x00, 0x03, 0xC0, 0x00, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0xC0, 0x00, 0x3C, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, - 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3F, 0x00, 0x03, 0xC0, 0x01, - 0xF0, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x01, 0xF0, 0x03, 0xF0, 0x03, - 0xF0, 0x00, 0xF0, 0x00, 0x20, 0x00, 0x00, 0x0F, 0x81, 0x86, 0x30, 0x33, - 0x03, 0x30, 0x30, 0x03, 0x00, 0x60, 0x0E, 0x01, 0xC0, 0x38, 0x06, 0x00, - 0xC0, 0x08, 0x01, 0x00, 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, - 0x00, 0xF0, 0x0F, 0x00, 0x60, 0x00, 0x00, 0x7F, 0x00, 0x03, 0xFF, 0xE0, - 0x07, 0x80, 0xF0, 0x0E, 0x00, 0x38, 0x1C, 0x00, 0x0C, 0x38, 0x0E, 0x06, - 0x70, 0x3F, 0xE2, 0x70, 0x71, 0xE3, 0xF0, 0x60, 0xE1, 0xE0, 0xC0, 0xC1, - 0xE0, 0xC0, 0xC1, 0xE1, 0x81, 0xC1, 0xE1, 0x81, 0xC1, 0xE1, 0x81, 0x82, - 0xE1, 0x83, 0x82, 0x71, 0x83, 0x86, 0x71, 0xC7, 0x8C, 0x38, 0xF9, 0xF8, - 0x3C, 0xF0, 0xF0, 0x1E, 0x00, 0x00, 0x0F, 0x80, 0x30, 0x03, 0xFF, 0xE0, - 0x00, 0x7F, 0x00, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, - 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x5E, 0x00, 0x04, 0xF0, - 0x00, 0x63, 0x80, 0x02, 0x1C, 0x00, 0x20, 0xE0, 0x01, 0x07, 0x00, 0x10, - 0x3C, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0xC0, 0x38, 0x04, 0x01, 0xC0, - 0x60, 0x0E, 0x06, 0x00, 0x78, 0x30, 0x03, 0xC3, 0x00, 0x1E, 0x38, 0x00, - 0xFB, 0xF0, 0x1F, 0xE0, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x78, 0x3C, - 0x03, 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xE0, 0x3C, 0x07, 0x01, 0xE0, 0x78, - 0x1E, 0x03, 0x83, 0xE0, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x0F, 0x0F, 0x00, - 0x70, 0x3C, 0x03, 0x80, 0xF0, 0x3C, 0x07, 0x81, 0xC0, 0x3C, 0x0E, 0x01, - 0xE0, 0xF0, 0x0F, 0x07, 0x80, 0xF0, 0x38, 0x0F, 0x81, 0xC1, 0xF8, 0x1F, - 0xFF, 0x83, 0xFF, 0xE0, 0x00, 0x00, 0x3F, 0x08, 0x07, 0xFF, 0xC0, 0xF8, - 0x3E, 0x0F, 0x00, 0x70, 0xF0, 0x03, 0x8F, 0x00, 0x08, 0xF0, 0x00, 0x47, - 0x80, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, - 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, - 0x00, 0x03, 0x80, 0x02, 0x1E, 0x00, 0x20, 0x78, 0x02, 0x03, 0xE0, 0x60, - 0x07, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xFF, 0xC0, 0x00, 0xFF, 0xFC, - 0x00, 0x78, 0x1F, 0x00, 0x3C, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x0E, 0x00, - 0x78, 0x07, 0x00, 0x1E, 0x07, 0x80, 0x0F, 0x03, 0x80, 0x07, 0x81, 0xC0, - 0x03, 0xC1, 0xE0, 0x01, 0xE0, 0xF0, 0x00, 0xF0, 0x70, 0x00, 0x78, 0x38, - 0x00, 0x78, 0x3C, 0x00, 0x3C, 0x1E, 0x00, 0x3E, 0x0E, 0x00, 0x1E, 0x0F, - 0x00, 0x1E, 0x07, 0x80, 0x1E, 0x03, 0x80, 0x3E, 0x01, 0xC0, 0x7E, 0x01, - 0xFF, 0xFC, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x07, 0xFF, 0xF0, - 0x1E, 0x01, 0xC0, 0x78, 0x02, 0x01, 0xE0, 0x08, 0x07, 0x00, 0x00, 0x1C, - 0x08, 0x00, 0xF0, 0x60, 0x03, 0x83, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xF0, - 0x01, 0xE0, 0xC0, 0x07, 0x03, 0x00, 0x1C, 0x08, 0x00, 0xF0, 0x20, 0x03, - 0x80, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, 0x81, 0xE0, 0x06, 0x07, 0x00, - 0x38, 0x1C, 0x03, 0xC0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, 0x00, 0x07, 0xFF, - 0xFC, 0x07, 0xFF, 0xF0, 0x1E, 0x01, 0xC0, 0x78, 0x02, 0x01, 0xE0, 0x08, - 0x07, 0x00, 0x20, 0x1C, 0x00, 0x00, 0xF0, 0x20, 0x03, 0x81, 0x80, 0x0E, - 0x0C, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0xC0, 0x07, 0x03, 0x00, 0x1C, 0x0C, - 0x00, 0xF0, 0x20, 0x03, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, 0x01, - 0xE0, 0x00, 0x07, 0x00, 0x00, 0x1C, 0x00, 0x00, 0xF8, 0x00, 0x0F, 0xF8, - 0x00, 0x00, 0x00, 0x3F, 0x02, 0x01, 0xFF, 0x88, 0x0F, 0x81, 0xF0, 0x3C, - 0x01, 0xE0, 0xF0, 0x01, 0xC3, 0xC0, 0x01, 0x0F, 0x80, 0x02, 0x1E, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xC0, 0x00, - 0x0F, 0x00, 0x3F, 0xFE, 0x00, 0x1E, 0x3C, 0x00, 0x38, 0x78, 0x00, 0x70, - 0xF0, 0x00, 0xE0, 0xE0, 0x01, 0xC1, 0xE0, 0x07, 0x01, 0xE0, 0x0E, 0x01, - 0xF0, 0x3C, 0x01, 0xFF, 0xF0, 0x00, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x3F, - 0xE0, 0x3E, 0x00, 0xF0, 0x07, 0x80, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x1C, - 0x00, 0xF0, 0x03, 0x80, 0x1E, 0x00, 0x70, 0x03, 0x80, 0x1E, 0x00, 0x70, - 0x03, 0x80, 0x1E, 0x00, 0x70, 0x03, 0x80, 0x1F, 0xFF, 0xF0, 0x03, 0xFF, - 0xFE, 0x00, 0x70, 0x03, 0xC0, 0x0E, 0x00, 0x70, 0x03, 0xC0, 0x0E, 0x00, - 0x70, 0x03, 0xC0, 0x0E, 0x00, 0x78, 0x03, 0xC0, 0x0E, 0x00, 0x78, 0x01, - 0xC0, 0x0E, 0x00, 0x78, 0x01, 0xC0, 0x0E, 0x00, 0x78, 0x03, 0xE0, 0x3F, - 0xE1, 0xFF, 0x00, 0x07, 0xFC, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xE0, - 0x07, 0x00, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xE0, - 0x07, 0x00, 0x1C, 0x00, 0xF0, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x0F, - 0x00, 0x07, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0x70, 0x00, 0x38, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x00, 0x70, - 0x1E, 0x78, 0x0F, 0x38, 0x07, 0xF8, 0x01, 0xF0, 0x00, 0x07, 0xFC, 0x7F, - 0x80, 0xF8, 0x0F, 0x00, 0x38, 0x07, 0x00, 0x3C, 0x07, 0x00, 0x1C, 0x06, - 0x00, 0x0E, 0x06, 0x00, 0x07, 0x0C, 0x00, 0x07, 0x8C, 0x00, 0x03, 0x9C, - 0x00, 0x01, 0xD8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x73, - 0x80, 0x00, 0x39, 0xE0, 0x00, 0x3C, 0x78, 0x00, 0x1C, 0x1C, 0x00, 0x0E, - 0x0F, 0x00, 0x07, 0x03, 0x80, 0x07, 0x81, 0xE0, 0x03, 0x80, 0x70, 0x01, - 0xC0, 0x3C, 0x01, 0xE0, 0x1F, 0x03, 0xFE, 0x3F, 0xE0, 0x07, 0xFC, 0x00, - 0x1F, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, - 0x01, 0xC0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x80, - 0x00, 0x78, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0F, 0x00, 0x00, 0xE0, - 0x00, 0x0E, 0x00, 0x11, 0xE0, 0x03, 0x1E, 0x00, 0x61, 0xC0, 0x06, 0x1C, - 0x01, 0xE3, 0xFF, 0xFC, 0xFF, 0xFF, 0xC0, 0x07, 0xF0, 0x00, 0x7E, 0x03, - 0xE0, 0x01, 0xF0, 0x03, 0xC0, 0x03, 0xE0, 0x07, 0x80, 0x0F, 0x80, 0x1F, - 0x00, 0x37, 0x00, 0x2E, 0x00, 0x5E, 0x00, 0x5C, 0x01, 0xB8, 0x01, 0xB8, - 0x06, 0x70, 0x02, 0x78, 0x09, 0xE0, 0x04, 0x70, 0x33, 0xC0, 0x08, 0xE0, - 0xC7, 0x00, 0x31, 0xC1, 0x0E, 0x00, 0x43, 0x86, 0x3C, 0x00, 0x87, 0x18, - 0x70, 0x03, 0x0E, 0x20, 0xE0, 0x06, 0x1C, 0xC3, 0xC0, 0x08, 0x3B, 0x07, - 0x80, 0x10, 0x7C, 0x0E, 0x00, 0x60, 0x78, 0x1C, 0x00, 0x80, 0xE0, 0x78, - 0x03, 0x01, 0x80, 0xF0, 0x07, 0x03, 0x03, 0xE0, 0x3F, 0x84, 0x1F, 0xF0, - 0x00, 0x07, 0xC0, 0x3F, 0xC0, 0x78, 0x03, 0xE0, 0x0E, 0x00, 0x70, 0x03, - 0xC0, 0x18, 0x01, 0xF0, 0x0E, 0x00, 0x6C, 0x03, 0x00, 0x1B, 0x80, 0xC0, - 0x0C, 0xE0, 0x30, 0x03, 0x18, 0x1C, 0x00, 0xC7, 0x06, 0x00, 0x30, 0xC1, - 0x80, 0x18, 0x38, 0xE0, 0x06, 0x06, 0x30, 0x01, 0x81, 0x8C, 0x00, 0xC0, - 0x73, 0x00, 0x30, 0x0D, 0xC0, 0x0C, 0x03, 0xE0, 0x03, 0x00, 0x78, 0x01, - 0x80, 0x1E, 0x00, 0x60, 0x07, 0x00, 0x38, 0x00, 0xC0, 0x0E, 0x00, 0x30, - 0x0F, 0xE0, 0x04, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x07, 0xC1, - 0xE0, 0x1E, 0x01, 0xE0, 0x78, 0x01, 0xC1, 0xE0, 0x03, 0xC7, 0x80, 0x07, - 0x9F, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0xF8, 0x00, 0x3D, 0xE0, 0x00, 0xFF, - 0xC0, 0x01, 0xEF, 0x80, 0x03, 0xDE, 0x00, 0x0F, 0xBC, 0x00, 0x1E, 0x78, - 0x00, 0x7C, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xC1, 0xC0, 0x0F, 0x03, 0xC0, - 0x3C, 0x03, 0xC1, 0xF0, 0x03, 0xFF, 0x80, 0x01, 0xFC, 0x00, 0x00, 0x07, - 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x0E, 0x0F, 0x80, 0x78, 0x1F, 0x01, 0xC0, - 0x3C, 0x07, 0x00, 0xF0, 0x1C, 0x03, 0xC0, 0xF0, 0x0F, 0x03, 0x80, 0x78, - 0x0E, 0x01, 0xE0, 0x78, 0x1F, 0x01, 0xFF, 0xF8, 0x07, 0x7F, 0x00, 0x1C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x1C, 0x00, 0x00, 0xF0, 0x00, 0x0F, - 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xC1, 0xE0, - 0x1E, 0x01, 0xC0, 0x78, 0x03, 0xC1, 0xE0, 0x03, 0x87, 0x80, 0x07, 0x8F, - 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0x78, 0x00, 0x3D, 0xE0, 0x00, 0x7B, 0xC0, - 0x01, 0xFF, 0x80, 0x03, 0xDE, 0x00, 0x07, 0xBC, 0x00, 0x1F, 0x78, 0x00, - 0x3C, 0xF0, 0x00, 0xF1, 0xE0, 0x01, 0xE3, 0xC0, 0x07, 0x83, 0x80, 0x1E, - 0x07, 0x80, 0x78, 0x07, 0x01, 0xC0, 0x03, 0xDE, 0x00, 0x01, 0xC0, 0x00, - 0x06, 0x00, 0x00, 0x18, 0x00, 0x10, 0x7F, 0xC0, 0xC3, 0xFF, 0xFF, 0x08, - 0x07, 0xF0, 0x00, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x78, 0x3C, 0x03, - 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xE0, 0x3C, 0x07, 0x01, 0xE0, 0x78, 0x1E, - 0x03, 0x83, 0xF0, 0x1F, 0xFE, 0x01, 0xFF, 0xC0, 0x0F, 0x38, 0x00, 0x71, - 0xE0, 0x03, 0x87, 0x00, 0x3C, 0x38, 0x01, 0xC1, 0xE0, 0x0E, 0x07, 0x00, - 0xF0, 0x3C, 0x07, 0x81, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x3C, 0x1E, 0x00, - 0xF3, 0xFC, 0x07, 0xC0, 0x00, 0xF8, 0x81, 0xFF, 0xC1, 0xE1, 0xE1, 0xE0, - 0x70, 0xF0, 0x10, 0x78, 0x08, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x01, - 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, - 0x80, 0x3C, 0x40, 0x1E, 0x20, 0x0F, 0x38, 0x07, 0x9E, 0x07, 0x8F, 0x87, - 0x84, 0x7F, 0xC2, 0x0F, 0x80, 0x3F, 0xFF, 0xF7, 0xFF, 0xFF, 0x70, 0x78, - 0x76, 0x07, 0x02, 0xC0, 0x70, 0x28, 0x0F, 0x02, 0x00, 0xF0, 0x00, 0x0E, - 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x80, 0x00, - 0x70, 0x00, 0x07, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x01, 0xF0, 0x00, - 0xFF, 0xE0, 0x00, 0x7F, 0xE0, 0xFE, 0x3F, 0x00, 0x78, 0x3C, 0x00, 0x60, - 0xF0, 0x01, 0x81, 0xE0, 0x03, 0x03, 0xC0, 0x06, 0x07, 0x00, 0x08, 0x1E, - 0x00, 0x30, 0x3C, 0x00, 0x60, 0x70, 0x00, 0x81, 0xE0, 0x01, 0x03, 0xC0, - 0x06, 0x07, 0x80, 0x0C, 0x0E, 0x00, 0x10, 0x3C, 0x00, 0x60, 0x78, 0x00, - 0xC0, 0xF0, 0x01, 0x01, 0xE0, 0x06, 0x03, 0xC0, 0x08, 0x03, 0xC0, 0x30, - 0x07, 0xC1, 0xC0, 0x07, 0xFF, 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFF, 0x01, - 0xFB, 0xE0, 0x07, 0x8E, 0x00, 0x18, 0x78, 0x01, 0x83, 0xC0, 0x0C, 0x1E, - 0x00, 0xC0, 0xF0, 0x06, 0x03, 0x80, 0x60, 0x1C, 0x02, 0x00, 0xE0, 0x30, - 0x07, 0x83, 0x00, 0x3C, 0x10, 0x01, 0xE1, 0x80, 0x07, 0x08, 0x00, 0x38, - 0x80, 0x01, 0xC4, 0x00, 0x0E, 0x40, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x0E, 0x00, 0x00, 0x70, 0x00, 0x03, 0x00, 0x00, 0x10, 0x00, 0x00, 0xFF, - 0x3F, 0xC3, 0xFB, 0xE0, 0x78, 0x07, 0x8E, 0x03, 0xC0, 0x18, 0x78, 0x0E, - 0x01, 0x83, 0xC0, 0x70, 0x0C, 0x1E, 0x03, 0x80, 0x40, 0xF0, 0x3C, 0x06, - 0x03, 0x81, 0xE0, 0x60, 0x1C, 0x17, 0x83, 0x00, 0xE0, 0xBC, 0x30, 0x07, - 0x09, 0xE1, 0x00, 0x38, 0x47, 0x18, 0x01, 0xE4, 0x38, 0x80, 0x0F, 0x21, - 0xCC, 0x00, 0x7A, 0x0E, 0x40, 0x01, 0xD0, 0x76, 0x00, 0x0F, 0x03, 0xA0, - 0x00, 0x78, 0x1F, 0x00, 0x03, 0x80, 0xF0, 0x00, 0x1C, 0x07, 0x00, 0x00, - 0xC0, 0x38, 0x00, 0x06, 0x00, 0x80, 0x00, 0x20, 0x04, 0x00, 0x00, 0x0F, - 0xF8, 0x7F, 0x03, 0xE0, 0x3E, 0x01, 0xC0, 0x18, 0x01, 0xE0, 0x30, 0x01, - 0xE0, 0x60, 0x00, 0xE0, 0xC0, 0x00, 0xF1, 0xC0, 0x00, 0x71, 0x80, 0x00, - 0x7B, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xCE, 0x00, 0x01, 0x8F, 0x00, 0x01, - 0x07, 0x00, 0x03, 0x07, 0x00, 0x06, 0x07, 0x80, 0x0C, 0x03, 0x80, 0x18, - 0x03, 0xC0, 0x78, 0x03, 0xE0, 0xFE, 0x1F, 0xF8, 0xFF, 0x87, 0xE7, 0xC0, - 0x38, 0x70, 0x06, 0x0E, 0x01, 0x81, 0xE0, 0x30, 0x1C, 0x0C, 0x03, 0x83, - 0x00, 0x78, 0xC0, 0x07, 0x30, 0x00, 0xE4, 0x00, 0x1D, 0x80, 0x03, 0xE0, - 0x00, 0x38, 0x00, 0x0F, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, - 0x01, 0xE0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x01, 0xE0, 0x00, 0x7C, 0x00, - 0x3F, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, 0xE0, 0xE0, 0x0F, 0x82, - 0x00, 0x3C, 0x18, 0x01, 0xE0, 0x40, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xF0, 0x00, 0x07, - 0x80, 0x00, 0x3C, 0x00, 0xC1, 0xE0, 0x02, 0x0F, 0x00, 0x18, 0x38, 0x01, - 0xE1, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, 0x00, 0x01, 0xF8, 0x0C, 0x00, 0xC0, - 0x06, 0x00, 0x30, 0x01, 0x80, 0x18, 0x00, 0xC0, 0x06, 0x00, 0x30, 0x03, - 0x00, 0x18, 0x00, 0xC0, 0x06, 0x00, 0x60, 0x03, 0x00, 0x18, 0x01, 0xC0, - 0x0C, 0x00, 0x60, 0x03, 0x00, 0x30, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x06, - 0x00, 0x30, 0x01, 0xF8, 0x00, 0xE0, 0x0E, 0x00, 0x60, 0x07, 0x00, 0x30, - 0x03, 0x80, 0x18, 0x01, 0xC0, 0x0C, 0x00, 0xC0, 0x0E, 0x00, 0x60, 0x07, - 0x00, 0x30, 0x03, 0x80, 0x18, 0x01, 0xC0, 0x0C, 0x00, 0xC0, 0x0E, 0x00, - 0x60, 0x07, 0x00, 0x30, 0x03, 0xF0, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x0E, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x01, 0x80, 0x18, 0x01, 0x80, - 0x18, 0x03, 0x00, 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x06, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x0F, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x1F, 0x00, 0x36, 0x00, 0xCE, 0x01, 0x8C, 0x06, 0x1C, 0x0C, - 0x18, 0x38, 0x38, 0x60, 0x31, 0xC0, 0x73, 0x00, 0x6E, 0x00, 0xE0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0xE3, 0x8F, 0x0E, 0x18, 0x30, 0x01, 0xEC, 0x0E, - 0x58, 0x30, 0x70, 0xE0, 0xC3, 0x81, 0x86, 0x07, 0x1C, 0x0C, 0x38, 0x18, - 0xE0, 0x71, 0xC0, 0xE3, 0x83, 0x87, 0x0B, 0x2F, 0x36, 0xCF, 0xCF, 0x1F, - 0x1C, 0x00, 0x03, 0x00, 0x1F, 0x00, 0x07, 0x00, 0x07, 0x00, 0x06, 0x00, - 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x1C, 0x7C, 0x1C, 0xFE, - 0x19, 0x8F, 0x1A, 0x07, 0x3C, 0x07, 0x38, 0x07, 0x38, 0x07, 0x70, 0x0E, - 0x70, 0x0E, 0x70, 0x1C, 0x60, 0x18, 0xE0, 0x30, 0xE0, 0x60, 0xE1, 0xC0, - 0x3F, 0x00, 0x01, 0xF0, 0x38, 0xC3, 0x8E, 0x78, 0x73, 0x80, 0x3C, 0x01, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x47, 0x84, 0x3F, - 0xC0, 0x7C, 0x00, 0x00, 0x01, 0x80, 0x07, 0xC0, 0x00, 0xE0, 0x00, 0x60, - 0x00, 0x30, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0C, 0x00, 0x06, 0x00, 0xF7, - 0x01, 0xC7, 0x81, 0xC3, 0x81, 0xC1, 0xC1, 0xE0, 0xE0, 0xE0, 0x60, 0xF0, - 0x30, 0x78, 0x38, 0x78, 0x18, 0x3C, 0x0C, 0x1E, 0x0C, 0x0F, 0x0E, 0x27, - 0xCB, 0x21, 0xF9, 0xE0, 0x78, 0xE0, 0x00, 0xF0, 0x1C, 0xC3, 0x86, 0x38, - 0x33, 0xC3, 0x1C, 0x31, 0xE3, 0x1F, 0xE0, 0xF0, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x47, 0x84, 0x3F, 0xC0, 0x7C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x33, - 0x00, 0x06, 0x30, 0x00, 0xC0, 0x00, 0x0C, 0x00, 0x01, 0xC0, 0x00, 0x18, - 0x00, 0x01, 0x80, 0x00, 0x38, 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0x80, 0x03, - 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x06, 0x00, 0x00, - 0x60, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0C, 0x00, 0x00, 0xC0, 0x00, - 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x01, 0x80, 0x00, 0x18, 0x00, - 0x03, 0x00, 0x00, 0x30, 0x00, 0xC6, 0x00, 0x0C, 0xC0, 0x00, 0x78, 0x00, - 0x00, 0x01, 0xF8, 0x07, 0x1F, 0x0E, 0x0F, 0x0C, 0x0E, 0x18, 0x0E, 0x18, - 0x0E, 0x18, 0x1E, 0x18, 0x3C, 0x0C, 0x78, 0x07, 0xE0, 0x08, 0x00, 0x18, - 0x00, 0x1E, 0x00, 0x0F, 0xE0, 0x13, 0xF0, 0x60, 0x78, 0xC0, 0x38, 0xC0, - 0x18, 0xC0, 0x18, 0xC0, 0x30, 0x60, 0x60, 0x3F, 0x80, 0x03, 0x00, 0x1F, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x06, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0E, - 0x00, 0x0C, 0x00, 0x1C, 0x38, 0x1C, 0x7C, 0x1C, 0xCC, 0x19, 0x0C, 0x3A, - 0x0C, 0x3C, 0x1C, 0x3C, 0x18, 0x38, 0x18, 0x70, 0x38, 0x70, 0x38, 0x70, - 0x30, 0x60, 0x72, 0xE0, 0x76, 0xE0, 0x7C, 0xC0, 0x70, 0x03, 0x03, 0xC1, - 0xE0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x7E, 0x0F, 0x03, 0x81, 0x81, - 0xC0, 0xE0, 0x70, 0x30, 0x38, 0x1C, 0x1C, 0x4C, 0x47, 0xC3, 0xC0, 0x00, - 0x0C, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x18, 0x03, 0xF0, 0x00, 0xE0, 0x01, 0x80, 0x03, 0x00, - 0x0E, 0x00, 0x1C, 0x00, 0x30, 0x00, 0x60, 0x01, 0xC0, 0x03, 0x80, 0x06, - 0x00, 0x0C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xC0, 0x03, 0x80, 0x06, 0x00, - 0x0C, 0x06, 0x30, 0x0C, 0xC0, 0x0F, 0x00, 0x00, 0x03, 0x00, 0x3E, 0x00, - 0x1C, 0x00, 0x38, 0x00, 0x60, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0C, - 0x00, 0x38, 0xFC, 0x70, 0x60, 0xE1, 0x81, 0x86, 0x07, 0x10, 0x0E, 0x40, - 0x1B, 0x80, 0x3F, 0x00, 0xE7, 0x01, 0xCE, 0x03, 0x0C, 0x06, 0x1C, 0x5C, - 0x1D, 0x38, 0x3E, 0x60, 0x38, 0x03, 0x1F, 0x07, 0x07, 0x06, 0x0E, 0x0E, - 0x0E, 0x0C, 0x1C, 0x1C, 0x18, 0x38, 0x38, 0x38, 0x30, 0x70, 0x70, 0x70, - 0x64, 0xE4, 0xE8, 0xF0, 0xE0, 0x00, 0x06, 0x18, 0x1E, 0x3E, 0x3C, 0x3F, - 0x0E, 0x4C, 0x47, 0x0C, 0x8C, 0x8E, 0x1D, 0x0D, 0x0E, 0x1E, 0x1A, 0x0E, - 0x1C, 0x1E, 0x0C, 0x3C, 0x1C, 0x1C, 0x38, 0x38, 0x1C, 0x38, 0x38, 0x1C, - 0x30, 0x38, 0x18, 0x70, 0x30, 0x39, 0x70, 0x70, 0x32, 0x60, 0x70, 0x3C, - 0x60, 0x60, 0x38, 0x06, 0x0E, 0x1F, 0x1F, 0x83, 0x99, 0xC1, 0x98, 0xC1, - 0xD8, 0xE0, 0xE8, 0x70, 0x78, 0x30, 0x38, 0x38, 0x3C, 0x1C, 0x1C, 0x0E, - 0x0E, 0x06, 0x0E, 0x03, 0x17, 0x01, 0xB3, 0x80, 0xF1, 0x80, 0x70, 0x01, - 0xF0, 0x0E, 0x38, 0x38, 0x30, 0xE0, 0x73, 0x80, 0xEE, 0x01, 0xDC, 0x03, - 0xF8, 0x0F, 0xE0, 0x1D, 0xC0, 0x3B, 0x80, 0xE7, 0x03, 0x8E, 0x06, 0x0E, - 0x38, 0x07, 0xC0, 0x00, 0x00, 0xE7, 0xC0, 0x7C, 0xFE, 0x01, 0xD1, 0xF0, - 0x1E, 0x0F, 0x01, 0xC0, 0xF0, 0x38, 0x0F, 0x03, 0x80, 0xF0, 0x38, 0x0E, - 0x03, 0x01, 0xE0, 0x70, 0x1C, 0x07, 0x03, 0xC0, 0x60, 0x78, 0x06, 0x0F, - 0x00, 0xE1, 0xC0, 0x0F, 0xF0, 0x00, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, - 0x00, 0x1C, 0x00, 0x01, 0x80, 0x00, 0x38, 0x00, 0x0F, 0xF0, 0x00, 0x00, - 0xF7, 0x03, 0xCE, 0x0F, 0x06, 0x1E, 0x06, 0x1C, 0x04, 0x3C, 0x04, 0x78, - 0x04, 0x78, 0x0C, 0xF0, 0x08, 0xF0, 0x18, 0xF0, 0x38, 0xF0, 0xF0, 0xF9, - 0x70, 0x7E, 0x70, 0x3C, 0x70, 0x00, 0x60, 0x00, 0xE0, 0x00, 0xE0, 0x00, - 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x0F, 0xF0, 0x7C, 0x70, 0xE7, 0xC7, 0x4C, - 0x34, 0x01, 0xA0, 0x1E, 0x00, 0xF0, 0x07, 0x00, 0x78, 0x03, 0x80, 0x1C, - 0x00, 0xC0, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x00, 0x07, 0x88, 0x63, 0x86, - 0x0C, 0x30, 0x21, 0xC1, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x03, 0x80, 0x1C, - 0x10, 0x60, 0x83, 0x06, 0x18, 0x71, 0x82, 0x78, 0x00, 0x02, 0x03, 0x03, - 0x07, 0xF7, 0xF8, 0xE0, 0x60, 0x70, 0x38, 0x1C, 0x0C, 0x0E, 0x07, 0x03, - 0x01, 0x91, 0xC8, 0xF8, 0x78, 0x00, 0x1C, 0x0D, 0xF8, 0x38, 0x60, 0x70, - 0xC1, 0xC3, 0x83, 0x87, 0x07, 0x0C, 0x1E, 0x38, 0x78, 0x70, 0xB0, 0xE2, - 0x61, 0x8D, 0xC7, 0x33, 0x2C, 0xC6, 0x5F, 0x0F, 0x38, 0x1C, 0x00, 0x18, - 0x1B, 0xE0, 0x73, 0x81, 0xC6, 0x03, 0x18, 0x0C, 0x70, 0x21, 0xC1, 0x83, - 0x0C, 0x0C, 0x20, 0x31, 0x00, 0xC8, 0x03, 0x40, 0x0E, 0x00, 0x30, 0x00, - 0x80, 0x00, 0x18, 0x04, 0x1B, 0xE0, 0x30, 0x71, 0x80, 0xC1, 0xC6, 0x07, - 0x01, 0x1C, 0x2C, 0x08, 0x70, 0xB0, 0x20, 0xC4, 0xC1, 0x03, 0x21, 0x84, - 0x0D, 0x86, 0x20, 0x34, 0x19, 0x00, 0xE0, 0x68, 0x03, 0x81, 0xA0, 0x0C, - 0x07, 0x00, 0x30, 0x18, 0x00, 0x80, 0x40, 0x00, 0x03, 0x07, 0x0F, 0x8F, - 0x13, 0x93, 0x01, 0xB0, 0x01, 0xE0, 0x01, 0xC0, 0x00, 0xC0, 0x00, 0xC0, - 0x01, 0xC0, 0x03, 0xE0, 0x02, 0x60, 0x04, 0x62, 0x08, 0x64, 0xF0, 0x7C, - 0xE0, 0x30, 0x06, 0x06, 0x3F, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x81, - 0x03, 0x82, 0x01, 0x82, 0x01, 0xC4, 0x01, 0xC4, 0x01, 0xC8, 0x00, 0xC8, - 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x80, - 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x78, 0x00, 0x70, 0x00, 0x1F, 0xFC, - 0x7F, 0xE1, 0x01, 0x08, 0x08, 0x00, 0x40, 0x02, 0x00, 0x10, 0x00, 0x80, - 0x06, 0x00, 0x10, 0x00, 0x80, 0x04, 0x00, 0x38, 0x01, 0xF0, 0x0B, 0xE0, - 0x01, 0xC6, 0x03, 0x98, 0x03, 0x80, 0x00, 0x70, 0x0C, 0x01, 0x80, 0x38, - 0x03, 0x80, 0x30, 0x07, 0x00, 0x70, 0x07, 0x00, 0x60, 0x0E, 0x00, 0xE0, - 0x0C, 0x01, 0xC0, 0x1C, 0x07, 0x80, 0x30, 0x04, 0x00, 0x20, 0x03, 0x00, - 0x30, 0x07, 0x00, 0x70, 0x06, 0x00, 0x60, 0x0E, 0x00, 0xE0, 0x0C, 0x00, - 0xC0, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0xC0, 0x06, - 0x00, 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, 0x70, 0x07, 0x00, 0x70, 0x06, - 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0C, 0x00, 0x40, 0x04, 0x00, 0xC0, 0x1E, - 0x03, 0x80, 0x38, 0x03, 0x00, 0x70, 0x07, 0x00, 0x70, 0x06, 0x00, 0xE0, - 0x0E, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x70, 0x00, 0x1E, 0x00, 0x3F, 0xE1, - 0xF8, 0x7F, 0xC0, 0x07, 0x80}; - -const GFXglyph FreeSerifItalic18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 10, 23, 12, 1, -22}, // 0x21 '!' - {29, 12, 9, 12, 4, -22}, // 0x22 '"' - {43, 19, 23, 17, 0, -22}, // 0x23 '#' - {98, 15, 29, 17, 1, -25}, // 0x24 '$' - {153, 25, 23, 29, 3, -22}, // 0x25 '%' - {225, 22, 23, 27, 3, -22}, // 0x26 '&' - {289, 5, 9, 7, 4, -22}, // 0x27 ''' - {295, 9, 29, 12, 1, -22}, // 0x28 '(' - {328, 9, 29, 12, 1, -22}, // 0x29 ')' - {361, 12, 14, 18, 5, -22}, // 0x2A '*' - {382, 16, 18, 24, 4, -17}, // 0x2B '+' - {418, 5, 8, 9, -1, -2}, // 0x2C ',' - {423, 8, 2, 12, 2, -8}, // 0x2D '-' - {425, 4, 4, 9, 1, -3}, // 0x2E '.' - {427, 16, 23, 10, 0, -22}, // 0x2F '/' - {473, 17, 24, 17, 1, -23}, // 0x30 '0' - {524, 12, 24, 17, 2, -23}, // 0x31 '1' - {560, 16, 23, 17, 1, -22}, // 0x32 '2' - {606, 17, 24, 18, 0, -23}, // 0x33 '3' - {657, 17, 24, 17, 0, -23}, // 0x34 '4' - {708, 16, 23, 18, 0, -22}, // 0x35 '5' - {754, 17, 24, 18, 1, -23}, // 0x36 '6' - {805, 16, 23, 17, 3, -22}, // 0x37 '7' - {851, 16, 24, 18, 1, -23}, // 0x38 '8' - {899, 16, 24, 17, 1, -23}, // 0x39 '9' - {947, 7, 15, 9, 2, -14}, // 0x3A ':' - {961, 9, 20, 9, 1, -14}, // 0x3B ';' - {984, 18, 18, 20, 2, -17}, // 0x3C '<' - {1025, 18, 9, 23, 3, -12}, // 0x3D '=' - {1046, 18, 18, 20, 2, -17}, // 0x3E '>' - {1087, 12, 23, 16, 4, -22}, // 0x3F '?' - {1122, 24, 23, 27, 2, -22}, // 0x40 '@' - {1191, 21, 23, 23, 0, -22}, // 0x41 'A' - {1252, 21, 23, 21, 0, -22}, // 0x42 'B' - {1313, 21, 23, 21, 2, -22}, // 0x43 'C' - {1374, 25, 23, 25, 0, -22}, // 0x44 'D' - {1446, 22, 23, 20, 0, -22}, // 0x45 'E' - {1510, 22, 23, 20, 0, -22}, // 0x46 'F' - {1574, 23, 23, 24, 2, -22}, // 0x47 'G' - {1641, 27, 23, 25, 0, -22}, // 0x48 'H' - {1719, 14, 23, 11, 0, -22}, // 0x49 'I' - {1760, 17, 23, 15, 0, -22}, // 0x4A 'J' - {1809, 25, 23, 22, 0, -22}, // 0x4B 'K' - {1881, 20, 23, 20, 0, -22}, // 0x4C 'L' - {1939, 31, 23, 29, 0, -22}, // 0x4D 'M' - {2029, 26, 23, 24, 0, -22}, // 0x4E 'N' - {2104, 23, 23, 23, 1, -22}, // 0x4F 'O' - {2171, 22, 23, 20, 0, -22}, // 0x50 'P' - {2235, 23, 29, 23, 1, -22}, // 0x51 'Q' - {2319, 21, 23, 22, 0, -22}, // 0x52 'R' - {2380, 17, 23, 16, 0, -22}, // 0x53 'S' - {2429, 20, 23, 21, 3, -22}, // 0x54 'T' - {2487, 23, 23, 25, 4, -22}, // 0x55 'U' - {2554, 21, 23, 23, 5, -22}, // 0x56 'V' - {2615, 29, 23, 31, 5, -22}, // 0x57 'W' - {2699, 24, 23, 23, 0, -22}, // 0x58 'X' - {2768, 19, 23, 21, 4, -22}, // 0x59 'Y' - {2823, 22, 23, 20, 0, -22}, // 0x5A 'Z' - {2887, 13, 28, 14, 1, -22}, // 0x5B '[' - {2933, 12, 23, 17, 4, -22}, // 0x5C '\' - {2968, 12, 28, 14, 1, -22}, // 0x5D ']' - {3010, 15, 13, 15, 0, -22}, // 0x5E '^' - {3035, 18, 2, 17, 0, 3}, // 0x5F '_' - {3040, 6, 6, 9, 5, -22}, // 0x60 '`' - {3045, 15, 15, 17, 1, -14}, // 0x61 'a' - {3074, 16, 24, 17, 1, -23}, // 0x62 'b' - {3122, 13, 15, 14, 1, -14}, // 0x63 'c' - {3147, 17, 24, 18, 1, -23}, // 0x64 'd' - {3198, 13, 15, 14, 1, -14}, // 0x65 'e' - {3223, 20, 31, 15, -3, -23}, // 0x66 'f' - {3301, 16, 22, 15, -1, -14}, // 0x67 'g' - {3345, 16, 24, 17, 1, -23}, // 0x68 'h' - {3393, 9, 23, 9, 1, -22}, // 0x69 'i' - {3419, 15, 30, 10, -3, -22}, // 0x6A 'j' - {3476, 15, 24, 16, 1, -23}, // 0x6B 'k' - {3521, 8, 25, 9, 1, -23}, // 0x6C 'l' - {3546, 24, 15, 25, 0, -14}, // 0x6D 'm' - {3591, 17, 15, 17, 0, -14}, // 0x6E 'n' - {3623, 15, 15, 17, 1, -14}, // 0x6F 'o' - {3652, 20, 22, 16, -3, -14}, // 0x70 'p' - {3707, 16, 22, 17, 1, -14}, // 0x71 'q' - {3751, 13, 15, 13, 1, -14}, // 0x72 'r' - {3776, 13, 15, 12, 0, -14}, // 0x73 's' - {3801, 9, 18, 8, 1, -17}, // 0x74 't' - {3822, 15, 15, 17, 1, -14}, // 0x75 'u' - {3851, 14, 15, 16, 2, -14}, // 0x76 'v' - {3878, 22, 15, 24, 1, -14}, // 0x77 'w' - {3920, 16, 15, 15, -1, -14}, // 0x78 'x' - {3950, 16, 22, 16, 0, -14}, // 0x79 'y' - {3994, 14, 18, 14, 0, -14}, // 0x7A 'z' - {4026, 12, 30, 14, 2, -23}, // 0x7B '{' - {4071, 2, 23, 10, 4, -22}, // 0x7C '|' - {4077, 12, 31, 14, 0, -24}, // 0x7D '}' - {4124, 17, 4, 19, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSerifItalic18pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic18pt7bBitmaps, - (GFXglyph *)FreeSerifItalic18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 4805 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h deleted file mode 100644 index 98233a7..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h +++ /dev/null @@ -1,739 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic24pt7bBitmaps[] PROGMEM = { - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x01, 0xF0, 0x1E, 0x01, 0xE0, 0x1C, - 0x01, 0xC0, 0x3C, 0x03, 0x80, 0x38, 0x03, 0x80, 0x30, 0x07, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x04, 0x00, 0x40, 0x0C, 0x00, 0x80, 0x08, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0xF8, 0x0F, 0x80, 0xF8, 0x07, 0x00, - 0x38, 0x1D, 0xE0, 0x77, 0x83, 0xDC, 0x0E, 0x70, 0x39, 0xC1, 0xEE, 0x07, - 0x38, 0x1C, 0xC0, 0x63, 0x01, 0x8C, 0x06, 0x20, 0x10, 0x00, 0x06, 0x03, - 0x00, 0x07, 0x03, 0x80, 0x03, 0x81, 0xC0, 0x03, 0x81, 0xC0, 0x01, 0xC0, - 0xE0, 0x00, 0xE0, 0x70, 0x00, 0xE0, 0x70, 0x00, 0x70, 0x38, 0x00, 0x30, - 0x18, 0x00, 0x38, 0x1C, 0x03, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0x0E, - 0x07, 0x00, 0x06, 0x03, 0x00, 0x07, 0x03, 0x80, 0x03, 0x81, 0xC0, 0x03, - 0x81, 0xC0, 0x01, 0xC0, 0xE0, 0x00, 0xE0, 0x70, 0x1F, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFF, 0x80, 0x70, 0x38, 0x00, 0x38, 0x1C, 0x00, 0x1C, 0x0C, 0x00, - 0x1C, 0x0E, 0x00, 0x0E, 0x07, 0x00, 0x0E, 0x07, 0x00, 0x07, 0x03, 0x80, - 0x03, 0x81, 0xC0, 0x03, 0x81, 0xC0, 0x01, 0xC0, 0xE0, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0xFF, 0x80, 0x1C, 0x2F, 0x01, - 0x83, 0x3C, 0x1C, 0x18, 0xE1, 0xC0, 0xC3, 0x0E, 0x06, 0x18, 0x70, 0x60, - 0x83, 0x83, 0x04, 0x1E, 0x18, 0x00, 0xF8, 0xC0, 0x03, 0xEC, 0x00, 0x0F, - 0xE0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, - 0x00, 0x7F, 0x00, 0x03, 0x7C, 0x00, 0x19, 0xE0, 0x01, 0x87, 0x80, 0x0C, - 0x3C, 0x00, 0x60, 0xE2, 0x03, 0x07, 0x10, 0x30, 0x39, 0x81, 0x81, 0xCE, - 0x0C, 0x0C, 0x70, 0x60, 0xE3, 0xC6, 0x06, 0x0F, 0x30, 0x60, 0x1F, 0x9E, - 0x00, 0x3F, 0x80, 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, - 0x80, 0x00, 0x01, 0xF0, 0x00, 0xC0, 0x03, 0xFE, 0x01, 0xE0, 0x03, 0xC7, - 0x83, 0xE0, 0x03, 0xC0, 0x7F, 0x60, 0x03, 0xC0, 0x20, 0x70, 0x01, 0xC0, - 0x10, 0x30, 0x01, 0xE0, 0x08, 0x38, 0x00, 0xE0, 0x04, 0x18, 0x00, 0xF0, - 0x02, 0x1C, 0x00, 0x70, 0x02, 0x0C, 0x00, 0x38, 0x01, 0x0E, 0x00, 0x1C, - 0x01, 0x8E, 0x00, 0x0E, 0x00, 0x86, 0x00, 0x07, 0x00, 0x87, 0x03, 0xE1, - 0x80, 0xC3, 0x07, 0xFC, 0xE1, 0xC3, 0x87, 0xC6, 0x3F, 0x81, 0x87, 0x81, - 0x8F, 0x81, 0xC7, 0x80, 0x40, 0x00, 0xC3, 0xC0, 0x20, 0x00, 0xE3, 0xC0, - 0x10, 0x00, 0x61, 0xC0, 0x08, 0x00, 0x61, 0xE0, 0x04, 0x00, 0x70, 0xF0, - 0x06, 0x00, 0x30, 0x70, 0x02, 0x00, 0x38, 0x38, 0x03, 0x00, 0x18, 0x1C, - 0x01, 0x00, 0x1C, 0x0E, 0x01, 0x80, 0x0C, 0x07, 0x01, 0x80, 0x0E, 0x01, - 0xC3, 0x80, 0x06, 0x00, 0x7F, 0x80, 0x06, 0x00, 0x1F, 0x00, 0x07, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x71, - 0xC0, 0x00, 0x01, 0xC3, 0x80, 0x00, 0x0E, 0x0E, 0x00, 0x00, 0x38, 0x38, - 0x00, 0x01, 0xE0, 0xE0, 0x00, 0x07, 0x87, 0x00, 0x00, 0x1E, 0x18, 0x00, - 0x00, 0x78, 0xC0, 0x00, 0x01, 0xE6, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7F, - 0xC1, 0xFE, 0x03, 0x9F, 0x03, 0xE0, 0x3C, 0x3C, 0x07, 0x01, 0xE0, 0xF8, - 0x1C, 0x0F, 0x03, 0xE0, 0xE0, 0x7C, 0x07, 0x83, 0x01, 0xE0, 0x1F, 0x1C, - 0x07, 0x80, 0x7C, 0x60, 0x3E, 0x00, 0xFB, 0x00, 0xF8, 0x03, 0xFC, 0x03, - 0xE0, 0x07, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0x3F, 0x00, 0x3E, 0x00, 0x7C, - 0x00, 0xFC, 0x01, 0xF8, 0x0F, 0xF0, 0x03, 0xF0, 0xF3, 0xF0, 0x87, 0xFF, - 0x07, 0xFC, 0x07, 0xF0, 0x07, 0xC0, 0x39, 0xDE, 0xE7, 0x3B, 0x9C, 0xC6, - 0x31, 0x00, 0x00, 0x10, 0x01, 0x00, 0x18, 0x01, 0x80, 0x18, 0x01, 0x80, - 0x1C, 0x00, 0xC0, 0x0E, 0x00, 0xE0, 0x07, 0x00, 0x78, 0x03, 0x80, 0x3C, - 0x01, 0xE0, 0x0E, 0x00, 0x70, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0E, 0x00, - 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, - 0x00, 0x30, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x01, 0x80, 0x0C, 0x00, 0x60, - 0x01, 0x00, 0x0C, 0x00, 0x20, 0x00, 0x00, 0x80, 0x06, 0x00, 0x10, 0x00, - 0x80, 0x06, 0x00, 0x30, 0x00, 0xC0, 0x06, 0x00, 0x30, 0x01, 0x80, 0x0C, - 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, - 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xC0, 0x1E, 0x00, 0xF0, 0x07, - 0x80, 0x38, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x0E, 0x00, 0x60, 0x07, 0x00, - 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, 0x10, 0x01, 0x00, 0x00, 0x01, 0x00, - 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0xE1, 0x07, 0xE1, 0x0F, - 0xF1, 0x1F, 0x19, 0x30, 0x07, 0xC0, 0x03, 0x80, 0x0D, 0x60, 0x79, 0x3C, - 0xF1, 0x1F, 0xE1, 0x0F, 0xE1, 0x07, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, - 0x03, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, - 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, - 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, - 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, - 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x7C, 0xF9, - 0xF1, 0xE1, 0xC3, 0x0C, 0x10, 0xC1, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0x00, - 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x3C, - 0x00, 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, - 0xF0, 0x00, 0x07, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x3C, 0x00, - 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, - 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x3C, 0x00, 0x01, - 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, 0x00, - 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, - 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x03, 0x86, - 0x00, 0x30, 0x18, 0x03, 0x00, 0xC0, 0x38, 0x03, 0x03, 0x80, 0x18, 0x38, - 0x00, 0xC1, 0xC0, 0x07, 0x1C, 0x00, 0x38, 0xE0, 0x01, 0xCF, 0x00, 0x0E, - 0x70, 0x00, 0x77, 0x80, 0x07, 0xBC, 0x00, 0x3D, 0xE0, 0x01, 0xEE, 0x00, - 0x0F, 0xF0, 0x00, 0x77, 0x80, 0x07, 0xBC, 0x00, 0x3D, 0xC0, 0x01, 0xCE, - 0x00, 0x1E, 0x70, 0x00, 0xF3, 0x80, 0x07, 0x1C, 0x00, 0x78, 0xE0, 0x03, - 0x83, 0x00, 0x38, 0x18, 0x03, 0x80, 0xE0, 0x18, 0x03, 0x01, 0x80, 0x0C, - 0x38, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x80, 0x1F, 0xC0, 0x3F, 0xE0, - 0x01, 0xF0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x1E, - 0x00, 0x0F, 0x00, 0x07, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x1E, 0x00, - 0x0F, 0x00, 0x07, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x01, 0xE0, - 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3F, 0x01, 0xFF, - 0xF0, 0x00, 0x3F, 0x00, 0x07, 0xFE, 0x00, 0x7F, 0xF8, 0x07, 0x07, 0xE0, - 0x60, 0x1F, 0x06, 0x00, 0x7C, 0x20, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, - 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x0E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x70, - 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, - 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x01, 0x03, 0x00, 0x08, - 0x30, 0x00, 0xC3, 0xFF, 0xFC, 0x3F, 0xFF, 0xE3, 0xFF, 0xFE, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0xFF, 0xC0, 0x06, 0x0F, 0x80, 0x30, 0x1E, 0x01, 0x80, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x0E, 0x00, 0x01, - 0xF8, 0x00, 0x3F, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x0F, - 0x80, 0x00, 0x3E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, - 0x00, 0x1E, 0x00, 0x00, 0x70, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, 0x00, - 0x38, 0x00, 0x00, 0xC0, 0x70, 0x06, 0x03, 0xF8, 0x70, 0x07, 0xFF, 0x00, - 0x0F, 0xF0, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x70, 0x00, 0x03, 0xC0, - 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x37, 0x80, 0x00, - 0xDC, 0x00, 0x06, 0x70, 0x00, 0x33, 0xC0, 0x01, 0x8F, 0x00, 0x0C, 0x38, - 0x00, 0x60, 0xE0, 0x03, 0x07, 0x80, 0x18, 0x1E, 0x00, 0xC0, 0x70, 0x06, - 0x03, 0xC0, 0x30, 0x0F, 0x01, 0x80, 0x38, 0x0C, 0x00, 0xE0, 0x70, 0x07, - 0x81, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFE, 0x00, 0x0F, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, - 0x70, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0xFF, - 0xF0, 0x07, 0xFF, 0x80, 0x10, 0x00, 0x00, 0x40, 0x00, 0x02, 0x00, 0x00, - 0x08, 0x00, 0x00, 0x70, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x3F, - 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0C, 0x00, 0x00, - 0x70, 0x00, 0x01, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, - 0x70, 0x0E, 0x03, 0xF0, 0xE0, 0x07, 0xFF, 0x00, 0x0F, 0xE0, 0x00, 0x00, - 0x00, 0x0E, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x03, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, - 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x00, 0xF9, 0xF8, 0x01, 0xFF, 0xFC, - 0x07, 0xE0, 0x7C, 0x0F, 0x80, 0x7C, 0x3E, 0x00, 0x78, 0x78, 0x00, 0x78, - 0xF0, 0x00, 0xF3, 0xC0, 0x01, 0xE7, 0x80, 0x03, 0xCF, 0x00, 0x07, 0x9C, - 0x00, 0x0F, 0x38, 0x00, 0x3E, 0x70, 0x00, 0x78, 0xE0, 0x00, 0xF1, 0xC0, - 0x03, 0xC1, 0x80, 0x07, 0x83, 0x00, 0x1E, 0x03, 0x00, 0x38, 0x06, 0x01, - 0xE0, 0x03, 0x07, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xFF, 0xF9, 0xFF, 0xFF, - 0xCF, 0xFF, 0xFC, 0xE0, 0x00, 0xCC, 0x00, 0x0E, 0x40, 0x00, 0x60, 0x00, - 0x07, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x01, 0x80, - 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x07, - 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, - 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, - 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x38, - 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x03, 0x83, - 0x80, 0x1C, 0x03, 0x00, 0xE0, 0x0E, 0x07, 0x00, 0x1C, 0x1C, 0x00, 0x70, - 0x70, 0x01, 0xC1, 0xC0, 0x07, 0x07, 0x80, 0x1C, 0x1E, 0x00, 0xE0, 0x3C, - 0x07, 0x80, 0xFC, 0x38, 0x01, 0xFB, 0xC0, 0x03, 0xF8, 0x00, 0x0F, 0xE0, - 0x00, 0x7F, 0xC0, 0x07, 0x1F, 0x80, 0x78, 0x3F, 0x03, 0x80, 0x7C, 0x1E, - 0x00, 0xF8, 0x70, 0x01, 0xE3, 0x80, 0x03, 0xCE, 0x00, 0x07, 0x38, 0x00, - 0x1C, 0xE0, 0x00, 0x73, 0x80, 0x01, 0xCE, 0x00, 0x06, 0x1C, 0x00, 0x38, - 0x70, 0x01, 0xC0, 0xE0, 0x0E, 0x01, 0xE0, 0xE0, 0x01, 0xFE, 0x00, 0x00, - 0x1F, 0x80, 0x03, 0xC3, 0x00, 0x1C, 0x02, 0x00, 0xE0, 0x0C, 0x07, 0x00, - 0x18, 0x3C, 0x00, 0x60, 0xE0, 0x01, 0xC7, 0x80, 0x07, 0x1E, 0x00, 0x1C, - 0xF0, 0x00, 0x73, 0xC0, 0x01, 0xCF, 0x00, 0x07, 0x3C, 0x00, 0x3C, 0xF0, - 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x1E, 0x1E, 0x00, 0x78, 0x7C, 0x03, - 0xE0, 0xF8, 0x3F, 0x01, 0xFF, 0xBC, 0x03, 0xF1, 0xE0, 0x00, 0x0F, 0x80, - 0x00, 0x3C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x78, 0x00, - 0x0F, 0x80, 0x00, 0xE0, 0x00, 0x00, 0x07, 0x07, 0xC3, 0xE1, 0xF0, 0x70, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x38, 0x3E, 0x1F, 0x0F, 0x83, 0x80, 0x01, 0xC0, 0x7C, 0x0F, 0x81, - 0xF0, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x07, 0x80, 0xF8, 0x1F, 0x01, 0xE0, - 0x1C, 0x03, 0x00, 0xC0, 0x18, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0xC0, - 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xF8, 0x00, 0x3F, - 0xC0, 0x01, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, - 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x07, 0x00, 0x00, 0x02, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, - 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x1F, 0xE0, - 0x00, 0x7F, 0x80, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x80, 0x00, 0x00, - 0x03, 0xF0, 0x06, 0x1C, 0x0C, 0x0E, 0x1C, 0x06, 0x1C, 0x07, 0x1C, 0x07, - 0x1C, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x03, 0x00, - 0x06, 0x00, 0x04, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0xF8, 0x00, - 0xF8, 0x00, 0xF8, 0x00, 0x70, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x1F, - 0xFF, 0x80, 0x00, 0x3F, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x7C, - 0x00, 0x07, 0x80, 0x7C, 0x00, 0x00, 0xE0, 0x3C, 0x00, 0x00, 0x38, 0x3C, - 0x00, 0x00, 0x0C, 0x3C, 0x00, 0x78, 0x07, 0x1E, 0x00, 0xFE, 0xE1, 0x9E, - 0x00, 0xF1, 0xF0, 0xEF, 0x00, 0xE0, 0xF0, 0x37, 0x80, 0xE0, 0x38, 0x1F, - 0x80, 0x70, 0x1C, 0x0F, 0xC0, 0x70, 0x1E, 0x07, 0xE0, 0x38, 0x0F, 0x03, - 0xF0, 0x18, 0x07, 0x01, 0xF8, 0x1C, 0x03, 0x80, 0xFC, 0x0E, 0x01, 0xC0, - 0xDE, 0x07, 0x01, 0xE0, 0x6F, 0x03, 0x80, 0xE0, 0x73, 0xC1, 0xC0, 0xF0, - 0x31, 0xE0, 0xF0, 0xF8, 0x30, 0xF0, 0x38, 0xDC, 0x30, 0x3C, 0x1F, 0xC7, - 0xF0, 0x0E, 0x07, 0x81, 0xF0, 0x07, 0x80, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x01, 0x00, 0x03, 0xF0, - 0x0F, 0x80, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x03, 0xF0, - 0x00, 0x00, 0x37, 0x80, 0x00, 0x03, 0x3C, 0x00, 0x00, 0x19, 0xE0, 0x00, - 0x01, 0x8F, 0x80, 0x00, 0x08, 0x7C, 0x00, 0x00, 0xC3, 0xE0, 0x00, 0x0C, - 0x0F, 0x00, 0x00, 0x60, 0x78, 0x00, 0x06, 0x03, 0xC0, 0x00, 0x20, 0x1F, - 0x00, 0x03, 0x00, 0xF8, 0x00, 0x3F, 0xFF, 0xC0, 0x01, 0xFF, 0xFE, 0x00, - 0x18, 0x00, 0xF0, 0x00, 0xC0, 0x07, 0x80, 0x0C, 0x00, 0x3E, 0x00, 0xE0, - 0x01, 0xF0, 0x06, 0x00, 0x0F, 0x80, 0x70, 0x00, 0x3C, 0x03, 0x00, 0x01, - 0xE0, 0x38, 0x00, 0x0F, 0x83, 0xC0, 0x00, 0x7C, 0x3E, 0x00, 0x07, 0xF3, - 0xFC, 0x01, 0xFF, 0xE0, 0x03, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xF8, 0x00, - 0x3E, 0x07, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x3E, 0x01, 0xF0, 0x03, 0xC0, - 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x78, 0x01, 0xF0, - 0x07, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x00, 0xF0, - 0x3F, 0x00, 0x1F, 0xFF, 0x80, 0x01, 0xFF, 0xFC, 0x00, 0x1F, 0x07, 0xE0, - 0x01, 0xE0, 0x1F, 0x00, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x07, 0xC0, 0x3C, - 0x00, 0x7C, 0x03, 0xC0, 0x07, 0xC0, 0x7C, 0x00, 0x7C, 0x07, 0xC0, 0x07, - 0xC0, 0x78, 0x00, 0x7C, 0x0F, 0x80, 0x0F, 0x80, 0xF8, 0x00, 0xF8, 0x0F, - 0x00, 0x1F, 0x00, 0xF0, 0x03, 0xE0, 0x1F, 0x81, 0xFC, 0x03, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x01, 0xFE, 0x04, 0x00, 0x3F, 0xFF, - 0xE0, 0x03, 0xF0, 0x1F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0xF0, 0x00, 0x78, - 0x0F, 0x80, 0x00, 0xE0, 0x3C, 0x00, 0x03, 0x81, 0xF0, 0x00, 0x04, 0x0F, - 0x80, 0x00, 0x10, 0x7C, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0x3E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x02, 0x07, 0xC0, 0x00, 0x18, 0x0F, 0x80, - 0x00, 0xC0, 0x3E, 0x00, 0x06, 0x00, 0x7C, 0x00, 0x70, 0x00, 0xFC, 0x07, - 0x00, 0x00, 0xFF, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xFF, - 0x00, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x0F, 0xC0, 0xFC, 0x00, 0x07, 0xC0, - 0x1F, 0x00, 0x03, 0xE0, 0x07, 0xC0, 0x01, 0xE0, 0x01, 0xF0, 0x01, 0xF0, - 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0x0F, 0x00, 0x3C, - 0x00, 0x07, 0xC0, 0x3E, 0x00, 0x03, 0xE0, 0x1F, 0x00, 0x01, 0xF0, 0x0F, - 0x00, 0x00, 0xF8, 0x0F, 0x80, 0x00, 0x7C, 0x07, 0xC0, 0x00, 0x3E, 0x03, - 0xE0, 0x00, 0x1F, 0x01, 0xE0, 0x00, 0x1F, 0x81, 0xF0, 0x00, 0x0F, 0x80, - 0xF8, 0x00, 0x07, 0xC0, 0x78, 0x00, 0x03, 0xE0, 0x3C, 0x00, 0x03, 0xE0, - 0x3E, 0x00, 0x01, 0xF0, 0x1F, 0x00, 0x01, 0xF0, 0x0F, 0x00, 0x01, 0xF0, - 0x0F, 0x80, 0x01, 0xF8, 0x07, 0xC0, 0x01, 0xF0, 0x03, 0xE0, 0x01, 0xF0, - 0x01, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x0F, 0xE0, 0x01, 0xFF, 0xFF, 0xC0, - 0x03, 0xFF, 0xFE, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, - 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x00, 0x30, 0x03, 0xE0, 0x01, 0x00, - 0x1E, 0x00, 0x08, 0x01, 0xF0, 0x00, 0x40, 0x0F, 0x80, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x03, 0xC0, 0x10, 0x00, 0x3E, 0x01, 0x80, 0x01, 0xF0, 0x08, - 0x00, 0x0F, 0x01, 0xC0, 0x00, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xF0, 0x00, - 0x3E, 0x07, 0x00, 0x01, 0xE0, 0x18, 0x00, 0x1F, 0x00, 0xC0, 0x00, 0xF8, - 0x04, 0x00, 0x07, 0x80, 0x20, 0x00, 0x3C, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x08, 0x0F, 0x80, 0x00, 0xC0, - 0x7C, 0x00, 0x0E, 0x03, 0xC0, 0x00, 0xE0, 0x1E, 0x00, 0x0F, 0x01, 0xF8, - 0x03, 0xF8, 0x1F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xFC, 0x00, 0x03, 0xFF, - 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x00, - 0x30, 0x03, 0xE0, 0x01, 0x00, 0x1E, 0x00, 0x08, 0x01, 0xF0, 0x00, 0x40, - 0x0F, 0x80, 0x02, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x3E, - 0x00, 0x80, 0x01, 0xF0, 0x0C, 0x00, 0x0F, 0x00, 0xC0, 0x00, 0xF8, 0x0E, - 0x00, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x01, 0xE0, 0x18, 0x00, - 0x1F, 0x00, 0xC0, 0x00, 0xF8, 0x06, 0x00, 0x07, 0xC0, 0x20, 0x00, 0x3C, - 0x01, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xFF, - 0xC0, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x02, 0x00, 0x1F, 0xFF, 0x8C, 0x00, - 0xFC, 0x07, 0xF8, 0x03, 0xE0, 0x03, 0xF0, 0x0F, 0x00, 0x03, 0xC0, 0x3C, - 0x00, 0x03, 0x80, 0xF0, 0x00, 0x07, 0x03, 0xC0, 0x00, 0x0E, 0x0F, 0x80, - 0x00, 0x08, 0x3E, 0x00, 0x00, 0x10, 0x7C, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x03, 0xE0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x3F, - 0xFF, 0xE0, 0x00, 0x0F, 0xE7, 0xC0, 0x00, 0x0F, 0x0F, 0x80, 0x00, 0x1E, - 0x1F, 0x00, 0x00, 0x7C, 0x3E, 0x00, 0x00, 0xF0, 0x7C, 0x00, 0x01, 0xE0, - 0x78, 0x00, 0x03, 0xC0, 0xF8, 0x00, 0x0F, 0x01, 0xF0, 0x00, 0x1E, 0x01, - 0xF0, 0x00, 0x3C, 0x01, 0xE0, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x01, - 0xF8, 0x0F, 0x80, 0x00, 0xFF, 0xFC, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x03, - 0xFF, 0xE0, 0x7F, 0xF0, 0x07, 0xF8, 0x01, 0xFC, 0x00, 0x3E, 0x00, 0x0F, - 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, - 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3E, - 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, - 0x03, 0xC0, 0x01, 0xFF, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0xFF, 0x80, 0x01, - 0xE0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, - 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, - 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x03, 0xF8, 0x00, - 0xFE, 0x00, 0xFF, 0xE0, 0x7F, 0xFC, 0x00, 0x01, 0xFF, 0xC0, 0x1F, 0xE0, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0xC0, 0x01, - 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, - 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0xF8, 0x00, - 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, - 0x0F, 0xE0, 0x0F, 0xFE, 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x07, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x78, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x01, 0xC1, 0xE0, 0x07, 0xC7, - 0x80, 0x0F, 0x8F, 0x00, 0x1F, 0x3C, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x01, 0xFF, 0xE1, 0xFF, 0x80, 0x3F, 0xC0, 0x1F, 0x80, 0x0F, 0x80, - 0x0F, 0x00, 0x07, 0xC0, 0x0F, 0x00, 0x03, 0xC0, 0x0F, 0x00, 0x01, 0xE0, - 0x0E, 0x00, 0x01, 0xF0, 0x0E, 0x00, 0x00, 0xF8, 0x0E, 0x00, 0x00, 0x78, - 0x1C, 0x00, 0x00, 0x3C, 0x1C, 0x00, 0x00, 0x3E, 0x3C, 0x00, 0x00, 0x1F, - 0x38, 0x00, 0x00, 0x0F, 0x38, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x07, - 0xFE, 0x00, 0x00, 0x03, 0xDF, 0x00, 0x00, 0x01, 0xE7, 0xC0, 0x00, 0x01, - 0xF3, 0xE0, 0x00, 0x00, 0xF8, 0xF8, 0x00, 0x00, 0x78, 0x3C, 0x00, 0x00, - 0x3C, 0x1F, 0x00, 0x00, 0x3E, 0x07, 0xC0, 0x00, 0x1F, 0x03, 0xE0, 0x00, - 0x0F, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x3C, 0x00, 0x07, 0xC0, 0x1F, 0x00, - 0x03, 0xC0, 0x07, 0x80, 0x01, 0xE0, 0x03, 0xE0, 0x01, 0xF0, 0x01, 0xF8, - 0x01, 0xFC, 0x01, 0xFE, 0x03, 0xFF, 0xC3, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, - 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, - 0xF0, 0x00, 0x08, 0x3C, 0x00, 0x03, 0x0F, 0x80, 0x00, 0x41, 0xF0, 0x00, - 0x18, 0x3C, 0x00, 0x07, 0x07, 0x80, 0x01, 0xC1, 0xF8, 0x01, 0xF8, 0x7F, - 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0x00, 0x00, 0x3F, 0xC0, - 0x0F, 0xC0, 0x00, 0x1F, 0xC0, 0x01, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0xFC, - 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, - 0xFF, 0x00, 0x02, 0xF0, 0x00, 0x37, 0x80, 0x01, 0xBC, 0x00, 0x19, 0xE0, - 0x00, 0x6F, 0x80, 0x0E, 0xF8, 0x00, 0x1B, 0xE0, 0x03, 0x3E, 0x00, 0x04, - 0x78, 0x01, 0x8F, 0x00, 0x03, 0x1E, 0x00, 0xE7, 0xC0, 0x00, 0xC7, 0x80, - 0x31, 0xF0, 0x00, 0x21, 0xE0, 0x18, 0x78, 0x00, 0x18, 0x78, 0x0E, 0x1E, - 0x00, 0x06, 0x1E, 0x03, 0x0F, 0x80, 0x01, 0x87, 0x81, 0x83, 0xE0, 0x00, - 0x41, 0xF0, 0xE0, 0xF0, 0x00, 0x30, 0x7C, 0x30, 0x3C, 0x00, 0x0C, 0x0F, - 0x18, 0x1F, 0x00, 0x03, 0x03, 0xCE, 0x07, 0xC0, 0x01, 0x80, 0xF3, 0x01, - 0xE0, 0x00, 0x60, 0x3D, 0x80, 0xF8, 0x00, 0x18, 0x0F, 0xE0, 0x3E, 0x00, - 0x0C, 0x03, 0xF0, 0x0F, 0x00, 0x03, 0x00, 0xF8, 0x03, 0xC0, 0x00, 0xC0, - 0x3E, 0x01, 0xF0, 0x00, 0x70, 0x0F, 0x00, 0x7C, 0x00, 0x1C, 0x01, 0x80, - 0x3F, 0x00, 0x0F, 0x80, 0x60, 0x1F, 0xC0, 0x0F, 0xF8, 0x10, 0x1F, 0xFE, - 0x00, 0x03, 0xFC, 0x00, 0x3F, 0xE0, 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0xF8, - 0x00, 0x1C, 0x00, 0x1F, 0x00, 0x03, 0x80, 0x03, 0xF0, 0x00, 0x60, 0x00, - 0x7E, 0x00, 0x0C, 0x00, 0x0B, 0xE0, 0x03, 0x80, 0x03, 0x7C, 0x00, 0x60, - 0x00, 0x67, 0x80, 0x0C, 0x00, 0x0C, 0xF8, 0x03, 0x80, 0x03, 0x0F, 0x00, - 0x70, 0x00, 0x61, 0xF0, 0x0C, 0x00, 0x0C, 0x3E, 0x01, 0x80, 0x01, 0x83, - 0xC0, 0x70, 0x00, 0x60, 0x7C, 0x0C, 0x00, 0x0C, 0x07, 0x81, 0x80, 0x01, - 0x80, 0xF8, 0x30, 0x00, 0x60, 0x0F, 0x0E, 0x00, 0x0C, 0x01, 0xE1, 0x80, - 0x01, 0x80, 0x3E, 0x30, 0x00, 0x30, 0x03, 0xCE, 0x00, 0x0C, 0x00, 0x7D, - 0x80, 0x01, 0x80, 0x07, 0xB0, 0x00, 0x30, 0x00, 0xF6, 0x00, 0x0E, 0x00, - 0x1F, 0xC0, 0x01, 0x80, 0x01, 0xF0, 0x00, 0x30, 0x00, 0x3E, 0x00, 0x0E, - 0x00, 0x03, 0xC0, 0x01, 0xC0, 0x00, 0x70, 0x00, 0x7C, 0x00, 0x06, 0x00, - 0x3F, 0xE0, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x01, 0xF0, 0x7C, 0x00, 0x0F, 0x00, 0x78, - 0x00, 0x78, 0x00, 0xF0, 0x07, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x07, 0x81, - 0xF0, 0x00, 0x1E, 0x07, 0xC0, 0x00, 0x7C, 0x3E, 0x00, 0x01, 0xF1, 0xF0, - 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x1F, 0x3F, 0x00, 0x00, 0x7C, 0xF8, 0x00, - 0x01, 0xF7, 0xE0, 0x00, 0x0F, 0xDF, 0x00, 0x00, 0x3F, 0x7C, 0x00, 0x00, - 0xFB, 0xF0, 0x00, 0x07, 0xEF, 0xC0, 0x00, 0x1F, 0xBE, 0x00, 0x00, 0x7C, - 0xF8, 0x00, 0x03, 0xF3, 0xE0, 0x00, 0x0F, 0x8F, 0x80, 0x00, 0x3E, 0x3E, - 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x0F, 0x81, 0xE0, 0x00, 0x3E, 0x07, 0x80, - 0x01, 0xF0, 0x1F, 0x00, 0x0F, 0x80, 0x3C, 0x00, 0x7C, 0x00, 0x78, 0x03, - 0xC0, 0x00, 0xF8, 0x3E, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x0F, 0x81, 0xF8, - 0x00, 0x7C, 0x03, 0xE0, 0x03, 0xE0, 0x1F, 0x00, 0x1E, 0x00, 0x7C, 0x01, - 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0x78, 0x00, 0xF8, 0x03, 0xC0, - 0x07, 0xC0, 0x3E, 0x00, 0x3C, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x00, 0x3E, - 0x00, 0xF8, 0x03, 0xF0, 0x07, 0xC0, 0x7E, 0x00, 0x3F, 0xFF, 0xE0, 0x01, - 0xEF, 0xF8, 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x07, 0x80, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x03, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, - 0xFE, 0x00, 0x00, 0xF0, 0x7C, 0x00, 0x0F, 0x00, 0x78, 0x00, 0x78, 0x00, - 0xF0, 0x03, 0xC0, 0x03, 0xE0, 0x1E, 0x00, 0x07, 0x80, 0xF0, 0x00, 0x1E, - 0x07, 0xC0, 0x00, 0x7C, 0x3E, 0x00, 0x01, 0xF1, 0xF8, 0x00, 0x07, 0xC7, - 0xC0, 0x00, 0x1F, 0x3F, 0x00, 0x00, 0x7C, 0xF8, 0x00, 0x01, 0xF7, 0xE0, - 0x00, 0x0F, 0xDF, 0x80, 0x00, 0x3F, 0x7C, 0x00, 0x00, 0xFB, 0xF0, 0x00, - 0x03, 0xEF, 0xC0, 0x00, 0x1F, 0xBE, 0x00, 0x00, 0x7C, 0xF8, 0x00, 0x01, - 0xF3, 0xE0, 0x00, 0x0F, 0x8F, 0x80, 0x00, 0x3E, 0x3E, 0x00, 0x01, 0xF0, - 0xF8, 0x00, 0x07, 0xC3, 0xE0, 0x00, 0x3E, 0x07, 0x80, 0x01, 0xF0, 0x1F, - 0x00, 0x07, 0x80, 0x3C, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x01, 0xE0, - 0x1E, 0x00, 0x01, 0xF3, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x03, 0x00, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x04, 0x0F, 0xF0, 0x00, - 0x60, 0x7F, 0xFC, 0x07, 0x03, 0xFF, 0xFF, 0xF8, 0x38, 0x1F, 0xFF, 0x80, - 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xF8, 0x00, - 0x3E, 0x0F, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x3E, 0x01, 0xF0, 0x03, 0xC0, - 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x78, 0x01, 0xF0, - 0x07, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x00, 0xF0, - 0x1F, 0x80, 0x1F, 0xFF, 0xE0, 0x01, 0xFF, 0xF0, 0x00, 0x1E, 0x1E, 0x00, - 0x01, 0xE1, 0xE0, 0x00, 0x3E, 0x1F, 0x00, 0x03, 0xE0, 0xF0, 0x00, 0x3C, - 0x0F, 0x00, 0x03, 0xC0, 0xF8, 0x00, 0x7C, 0x07, 0x80, 0x07, 0xC0, 0x7C, - 0x00, 0x78, 0x03, 0xC0, 0x0F, 0x80, 0x3C, 0x00, 0xF8, 0x03, 0xE0, 0x0F, - 0x00, 0x1E, 0x00, 0xF0, 0x01, 0xE0, 0x1F, 0x00, 0x1F, 0x03, 0xF8, 0x00, - 0xF8, 0xFF, 0xE0, 0x0F, 0xE0, 0x00, 0x3F, 0x06, 0x01, 0xFF, 0xDC, 0x07, - 0xC1, 0xF0, 0x1E, 0x01, 0xE0, 0x3C, 0x01, 0xC0, 0xF0, 0x03, 0x81, 0xE0, - 0x03, 0x03, 0xC0, 0x04, 0x07, 0x80, 0x08, 0x0F, 0x80, 0x00, 0x1F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7C, 0x08, 0x00, 0x78, 0x10, - 0x00, 0xF0, 0x20, 0x01, 0xE0, 0xC0, 0x03, 0xC1, 0x80, 0x07, 0x83, 0x80, - 0x1E, 0x07, 0x00, 0x3C, 0x0F, 0x00, 0xF0, 0x1F, 0x87, 0xC0, 0x23, 0xFF, - 0x00, 0x81, 0xF8, 0x00, 0x3F, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFD, 0xF0, - 0x3E, 0x07, 0xB8, 0x07, 0xC0, 0x76, 0x00, 0xF8, 0x04, 0x80, 0x3E, 0x00, - 0xB0, 0x07, 0xC0, 0x14, 0x00, 0xF8, 0x02, 0x00, 0x1E, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xC0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, - 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x3F, 0xFF, 0x00, - 0x00, 0x7F, 0xFE, 0x03, 0xFE, 0x1F, 0xE0, 0x01, 0xF8, 0x1F, 0x80, 0x01, - 0xC0, 0x3E, 0x00, 0x03, 0x80, 0x7C, 0x00, 0x07, 0x00, 0xF8, 0x00, 0x0C, - 0x03, 0xE0, 0x00, 0x18, 0x07, 0xC0, 0x00, 0x70, 0x0F, 0x80, 0x00, 0xC0, - 0x1F, 0x00, 0x01, 0x80, 0x7C, 0x00, 0x03, 0x00, 0xF8, 0x00, 0x0E, 0x01, - 0xF0, 0x00, 0x18, 0x07, 0xC0, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x60, 0x1F, - 0x00, 0x01, 0x80, 0x3E, 0x00, 0x03, 0x00, 0xF8, 0x00, 0x06, 0x01, 0xF0, - 0x00, 0x18, 0x03, 0xE0, 0x00, 0x30, 0x07, 0xC0, 0x00, 0x60, 0x1F, 0x00, - 0x00, 0xC0, 0x3E, 0x00, 0x03, 0x00, 0x7C, 0x00, 0x06, 0x00, 0xF8, 0x00, - 0x18, 0x01, 0xF0, 0x00, 0x30, 0x03, 0xE0, 0x00, 0xC0, 0x03, 0xE0, 0x03, - 0x80, 0x03, 0xE0, 0x0E, 0x00, 0x03, 0xF0, 0x78, 0x00, 0x03, 0xFF, 0xC0, - 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0xE0, 0x0F, 0xF9, 0xFC, 0x00, 0x1F, - 0x07, 0xC0, 0x00, 0x78, 0x3E, 0x00, 0x03, 0x81, 0xF0, 0x00, 0x18, 0x0F, - 0x80, 0x01, 0xC0, 0x7C, 0x00, 0x0C, 0x01, 0xE0, 0x00, 0xC0, 0x0F, 0x80, - 0x06, 0x00, 0x7C, 0x00, 0x60, 0x03, 0xE0, 0x07, 0x00, 0x1F, 0x00, 0x30, - 0x00, 0xF8, 0x03, 0x00, 0x03, 0xC0, 0x18, 0x00, 0x1E, 0x01, 0x80, 0x00, - 0xF8, 0x1C, 0x00, 0x07, 0xC0, 0xC0, 0x00, 0x3E, 0x0C, 0x00, 0x01, 0xF0, - 0x60, 0x00, 0x07, 0x86, 0x00, 0x00, 0x3C, 0x30, 0x00, 0x01, 0xE3, 0x00, - 0x00, 0x0F, 0xB0, 0x00, 0x00, 0x7D, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x10, 0x00, - 0x00, 0xFF, 0xE3, 0xFF, 0x81, 0xFE, 0x7F, 0x01, 0xFC, 0x00, 0xF8, 0x7C, - 0x01, 0xF0, 0x00, 0xE0, 0xF8, 0x03, 0xE0, 0x01, 0x81, 0xF0, 0x03, 0xC0, - 0x07, 0x03, 0xE0, 0x07, 0x80, 0x0C, 0x03, 0xC0, 0x0F, 0x00, 0x18, 0x07, - 0x80, 0x1E, 0x00, 0x60, 0x0F, 0x00, 0x7E, 0x00, 0xC0, 0x1F, 0x00, 0xFC, - 0x03, 0x00, 0x3E, 0x03, 0xF8, 0x06, 0x00, 0x7C, 0x05, 0xF0, 0x18, 0x00, - 0xF8, 0x1B, 0xE0, 0x30, 0x01, 0xF0, 0x33, 0xC0, 0xC0, 0x01, 0xE0, 0xC7, - 0x83, 0x80, 0x03, 0xC1, 0x8F, 0x06, 0x00, 0x07, 0x86, 0x1E, 0x1C, 0x00, - 0x0F, 0x0C, 0x3C, 0x30, 0x00, 0x1F, 0x30, 0x7C, 0xE0, 0x00, 0x3E, 0x60, - 0xF9, 0x80, 0x00, 0x7D, 0x81, 0xF7, 0x00, 0x00, 0xFB, 0x03, 0xEC, 0x00, - 0x01, 0xFC, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x07, 0xE0, 0x00, 0x03, 0xE0, - 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x1F, 0x00, 0x00, 0x0F, 0x00, 0x3C, 0x00, - 0x00, 0x1E, 0x00, 0x78, 0x00, 0x00, 0x38, 0x00, 0xE0, 0x00, 0x00, 0x70, - 0x01, 0xC0, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x80, 0x06, 0x00, - 0x00, 0x07, 0xFF, 0x83, 0xFF, 0x01, 0xFE, 0x00, 0xFE, 0x00, 0x7C, 0x00, - 0x78, 0x00, 0x7C, 0x00, 0x70, 0x00, 0x3C, 0x00, 0xE0, 0x00, 0x3E, 0x01, - 0xC0, 0x00, 0x3E, 0x01, 0x80, 0x00, 0x1F, 0x03, 0x00, 0x00, 0x1F, 0x07, - 0x00, 0x00, 0x0F, 0x0E, 0x00, 0x00, 0x0F, 0x9C, 0x00, 0x00, 0x0F, 0xB8, - 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x03, 0xC0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x1C, 0xF0, 0x00, 0x00, 0x38, 0xF8, - 0x00, 0x00, 0x30, 0xF8, 0x00, 0x00, 0x60, 0x7C, 0x00, 0x00, 0xC0, 0x7C, - 0x00, 0x01, 0xC0, 0x3C, 0x00, 0x03, 0x80, 0x3E, 0x00, 0x07, 0x00, 0x3E, - 0x00, 0x0E, 0x00, 0x1F, 0x00, 0x1E, 0x00, 0x1F, 0x00, 0x7F, 0x00, 0x3F, - 0xC0, 0xFF, 0xC1, 0xFF, 0xF0, 0x7F, 0xF0, 0x7F, 0xC7, 0xF0, 0x03, 0xE0, - 0xF8, 0x00, 0x70, 0x3E, 0x00, 0x38, 0x07, 0x80, 0x0C, 0x01, 0xE0, 0x07, - 0x00, 0x7C, 0x03, 0x80, 0x1F, 0x00, 0xC0, 0x03, 0xC0, 0x60, 0x00, 0xF0, - 0x30, 0x00, 0x3E, 0x1C, 0x00, 0x07, 0x8E, 0x00, 0x01, 0xE3, 0x00, 0x00, - 0x7D, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x03, 0xFF, - 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0x81, 0xF0, 0x00, 0xFC, 0x0E, 0x00, 0x0F, - 0xC0, 0x60, 0x00, 0xFC, 0x06, 0x00, 0x0F, 0xC0, 0x20, 0x00, 0x7C, 0x00, - 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF0, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x01, 0xF8, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0xFC, 0x00, - 0x08, 0x0F, 0xC0, 0x00, 0x80, 0xFC, 0x00, 0x0C, 0x07, 0xC0, 0x00, 0x60, - 0x7E, 0x00, 0x07, 0x07, 0xE0, 0x01, 0xF0, 0x7F, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x3C, 0x00, 0x1C, 0x00, 0x0E, 0x00, - 0x07, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x03, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, - 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x07, 0x00, - 0x03, 0x80, 0x01, 0xC0, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x07, 0x80, 0x03, - 0xFC, 0x00, 0xF0, 0x00, 0x38, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, 0x80, - 0x01, 0xE0, 0x00, 0x70, 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, - 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x03, 0x80, - 0x01, 0xC0, 0x00, 0xF0, 0x00, 0x38, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, - 0x80, 0x01, 0xE0, 0x00, 0x70, 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x07, 0x00, - 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, - 0x80, 0x00, 0xFF, 0x80, 0x07, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0xF0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x00, 0x70, 0x00, - 0x38, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, - 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x78, 0x00, 0x38, - 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, - 0xC0, 0x00, 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, 0x38, 0x03, 0xFC, 0x00, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x03, 0xBC, - 0x00, 0x39, 0xC0, 0x07, 0x1E, 0x00, 0x70, 0xE0, 0x0E, 0x0F, 0x00, 0xE0, - 0x70, 0x1E, 0x07, 0x81, 0xC0, 0x38, 0x3C, 0x03, 0xC3, 0x80, 0x1C, 0x78, - 0x01, 0xE7, 0x00, 0x0E, 0xF0, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x60, 0xF0, 0xF8, 0x78, 0x3C, 0x1E, 0x0E, 0x07, 0x00, 0x1E, 0x70, - 0x03, 0x0B, 0x80, 0x70, 0x3C, 0x07, 0x01, 0xE0, 0x70, 0x0E, 0x07, 0x00, - 0x70, 0x78, 0x03, 0x83, 0x80, 0x38, 0x3C, 0x01, 0xC1, 0xC0, 0x0E, 0x1E, - 0x00, 0xF0, 0xF0, 0x07, 0x0F, 0x00, 0x78, 0x78, 0x03, 0xC3, 0xC0, 0x3E, - 0x1E, 0x01, 0x70, 0xF0, 0x17, 0x0F, 0x81, 0x38, 0xBE, 0x11, 0xC8, 0xFF, - 0x0F, 0x83, 0xF0, 0x70, 0x00, 0x00, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x78, 0x00, 0x03, 0x80, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x0F, - 0x80, 0x71, 0xFE, 0x03, 0x98, 0xF8, 0x3D, 0x03, 0xE1, 0xE8, 0x0F, 0x0E, - 0x80, 0x78, 0x78, 0x03, 0xC7, 0xC0, 0x1E, 0x3C, 0x00, 0xF1, 0xE0, 0x0F, - 0x1E, 0x00, 0x78, 0xF0, 0x03, 0xC7, 0x80, 0x3C, 0x38, 0x01, 0xE3, 0xC0, - 0x1E, 0x1E, 0x00, 0xE0, 0xE0, 0x0E, 0x07, 0x00, 0xF0, 0x78, 0x07, 0x03, - 0xC0, 0xE0, 0x0F, 0x0E, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x3F, 0x00, 0x38, - 0x60, 0x38, 0x1C, 0x1C, 0x0F, 0x0E, 0x03, 0x87, 0x80, 0x03, 0xC0, 0x00, - 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x02, 0x3E, 0x01, - 0x87, 0x80, 0xC1, 0xF0, 0x60, 0x3F, 0xF0, 0x03, 0xF0, 0x00, 0x00, 0x00, - 0x0E, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x1C, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x38, 0x00, 0x00, 0x38, 0x00, 0x00, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x71, - 0x70, 0x00, 0xC1, 0x70, 0x03, 0x80, 0xF0, 0x07, 0x80, 0xE0, 0x07, 0x01, - 0xE0, 0x0E, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x3C, 0x01, 0xC0, 0x3C, 0x01, - 0xC0, 0x78, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0x78, 0x03, 0x80, 0xF0, 0x07, - 0x80, 0xF0, 0x07, 0x80, 0xF0, 0x0F, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x17, - 0x08, 0xF0, 0x27, 0x10, 0x78, 0x47, 0x20, 0x7F, 0x87, 0xC0, 0x1E, 0x07, - 0x00, 0x00, 0x1F, 0x00, 0x1C, 0xF0, 0x1C, 0x1C, 0x0E, 0x07, 0x07, 0x01, - 0xC3, 0xC0, 0xF1, 0xE0, 0x38, 0x70, 0x1C, 0x3C, 0x0E, 0x1F, 0x0F, 0x07, - 0x8F, 0x01, 0xFE, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x01, 0x3C, 0x00, 0xC7, 0x80, 0x61, 0xF0, 0x60, 0x3F, 0xF0, - 0x03, 0xE0, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x03, 0x1C, 0x00, 0x00, - 0xC3, 0x80, 0x00, 0x38, 0x70, 0x00, 0x06, 0x00, 0x00, 0x01, 0xC0, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x07, 0xFF, 0xC0, 0x00, - 0xFF, 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x38, 0x00, 0x00, 0x07, 0x00, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, - 0xE0, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x70, 0x00, 0x00, 0x0E, 0x00, 0x00, - 0x03, 0xC0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, - 0x00, 0x00, 0x70, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0x80, 0x00, 0x38, - 0x60, 0x00, 0x07, 0x0C, 0x00, 0x00, 0xE3, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0x00, 0x3F, 0x00, 0x07, 0x0E, 0x00, 0x70, 0x3E, 0x07, 0x01, 0xF0, - 0x70, 0x0E, 0x07, 0x80, 0x70, 0x3C, 0x03, 0x81, 0xC0, 0x1C, 0x0E, 0x01, - 0xE0, 0x70, 0x0E, 0x03, 0x80, 0xF0, 0x0E, 0x0F, 0x00, 0x30, 0xE0, 0x00, - 0xFE, 0x00, 0x0C, 0x00, 0x00, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x7E, 0x00, - 0x03, 0xFE, 0x00, 0x0F, 0xFC, 0x00, 0x8F, 0xF0, 0x18, 0x0F, 0xC1, 0x80, - 0x1F, 0x18, 0x00, 0x78, 0xC0, 0x01, 0xC6, 0x00, 0x0E, 0x30, 0x00, 0x61, - 0xC0, 0x07, 0x06, 0x00, 0x70, 0x1C, 0x0E, 0x00, 0x3F, 0xC0, 0x00, 0x00, - 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1C, - 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x03, 0x80, 0x78, 0x7E, 0x03, 0x86, 0x70, - 0x3C, 0x43, 0x81, 0xE4, 0x1C, 0x0E, 0x40, 0xE0, 0x74, 0x0E, 0x07, 0xA0, - 0x70, 0x3E, 0x03, 0x81, 0xE0, 0x1C, 0x0F, 0x00, 0xE0, 0xF0, 0x0E, 0x07, - 0x80, 0x70, 0x38, 0x03, 0x81, 0xC0, 0x1C, 0x1E, 0x00, 0xC2, 0xF0, 0x0E, - 0x27, 0x00, 0x73, 0x38, 0x03, 0x93, 0xC0, 0x1F, 0x1E, 0x00, 0xE0, 0x03, - 0x81, 0xF0, 0x7C, 0x1F, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x71, 0xFC, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x1C, 0x07, 0x03, 0xC0, 0xF0, - 0x38, 0x0E, 0x07, 0x81, 0xE0, 0x70, 0x1C, 0x0F, 0x03, 0x84, 0xE2, 0x39, - 0x0F, 0x81, 0xC0, 0x00, 0x01, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, - 0xF0, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x3F, 0xC0, 0x00, 0xF0, 0x00, 0x1E, - 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0E, 0x00, 0x03, 0xC0, 0x00, 0x78, - 0x00, 0x0F, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x0F, 0x00, 0x01, 0xE0, - 0x00, 0x38, 0x00, 0x07, 0x00, 0x01, 0xE0, 0x00, 0x38, 0x00, 0x07, 0x00, - 0x00, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, - 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x01, 0xC7, 0x00, 0x38, 0xC0, 0x07, - 0x30, 0x00, 0x7C, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, - 0x00, 0x70, 0xFF, 0x83, 0x80, 0xF0, 0x3C, 0x06, 0x01, 0xE0, 0x60, 0x0E, - 0x06, 0x00, 0x70, 0xE0, 0x07, 0x8C, 0x00, 0x3C, 0xC0, 0x01, 0xCC, 0x00, - 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x07, 0x9E, 0x00, 0x38, 0xF0, 0x01, 0xC3, - 0x80, 0x1E, 0x1E, 0x00, 0xF0, 0x70, 0x07, 0x03, 0xC2, 0x78, 0x0E, 0x13, - 0xC0, 0x79, 0x1E, 0x01, 0xF0, 0x00, 0x07, 0x00, 0x00, 0xE1, 0xFC, 0x0F, - 0x80, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1C, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x70, 0x1E, 0x03, 0xC0, 0x78, 0x0E, 0x03, - 0xC0, 0x78, 0x0E, 0x01, 0xC0, 0x78, 0x0F, 0x01, 0xC0, 0x38, 0x4F, 0x11, - 0xE4, 0x39, 0x07, 0xC0, 0x70, 0x00, 0x07, 0x81, 0xC0, 0x78, 0xFE, 0x0F, - 0xC1, 0xF8, 0x3C, 0x33, 0x84, 0x70, 0x78, 0x87, 0x10, 0xE0, 0xF2, 0x0E, - 0x41, 0xC1, 0xC8, 0x39, 0x07, 0x87, 0xA0, 0x74, 0x0F, 0x0F, 0x40, 0xE8, - 0x1E, 0x1F, 0x01, 0xE0, 0x38, 0x3C, 0x07, 0xC0, 0xF0, 0xF8, 0x0F, 0x01, - 0xE1, 0xE0, 0x1E, 0x03, 0xC3, 0xC0, 0x38, 0x07, 0x07, 0x00, 0xF0, 0x1E, - 0x1E, 0x01, 0xE0, 0x3C, 0x3C, 0x03, 0x80, 0x79, 0x70, 0x07, 0x00, 0xE2, - 0xE0, 0x1E, 0x03, 0x8B, 0xC0, 0x3C, 0x07, 0x27, 0x80, 0x70, 0x0F, 0x8E, - 0x00, 0xE0, 0x1E, 0x00, 0x07, 0x81, 0xE3, 0xFC, 0x3F, 0x83, 0xC2, 0x3C, - 0x1E, 0x21, 0xE0, 0xF2, 0x0F, 0x07, 0x20, 0x70, 0x39, 0x07, 0x83, 0xD0, - 0x3C, 0x1F, 0x01, 0xE0, 0xE8, 0x0E, 0x0F, 0x80, 0xF0, 0x78, 0x07, 0x83, - 0xC0, 0x38, 0x1C, 0x01, 0xC1, 0xE0, 0x1E, 0x0F, 0x00, 0xF1, 0x70, 0x07, - 0x0B, 0x80, 0x38, 0xBC, 0x01, 0xC9, 0xE0, 0x0F, 0x8E, 0x00, 0x38, 0x00, - 0x00, 0x1F, 0x80, 0x07, 0x8F, 0x00, 0x70, 0x3C, 0x07, 0x00, 0xE0, 0x70, - 0x07, 0x87, 0x80, 0x3C, 0x78, 0x01, 0xE7, 0x80, 0x0F, 0x3C, 0x00, 0x7B, - 0xC0, 0x03, 0xDE, 0x00, 0x3D, 0xF0, 0x01, 0xEF, 0x80, 0x0F, 0x78, 0x00, - 0xF3, 0xC0, 0x07, 0x9E, 0x00, 0x78, 0xF0, 0x03, 0x87, 0x80, 0x38, 0x1C, - 0x03, 0x80, 0xF0, 0x38, 0x03, 0xC3, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x3C, - 0x3F, 0x00, 0x7F, 0x8F, 0xF0, 0x01, 0xF7, 0x3F, 0x00, 0x1D, 0x83, 0xF0, - 0x07, 0xA0, 0x3E, 0x00, 0xF8, 0x07, 0xC0, 0x1E, 0x00, 0xF8, 0x03, 0xC0, - 0x1F, 0x00, 0xF0, 0x03, 0xE0, 0x1E, 0x00, 0x7C, 0x03, 0xC0, 0x1F, 0x00, - 0x70, 0x03, 0xE0, 0x1E, 0x00, 0x78, 0x03, 0xC0, 0x1F, 0x00, 0x70, 0x03, - 0xC0, 0x0E, 0x00, 0xF8, 0x03, 0xC0, 0x1E, 0x00, 0x78, 0x07, 0x80, 0x0F, - 0x01, 0xE0, 0x01, 0xE0, 0x70, 0x00, 0x7C, 0x3C, 0x00, 0x0F, 0x7C, 0x00, - 0x01, 0xC0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x38, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x03, 0x8D, - 0xC0, 0x38, 0x2E, 0x07, 0x80, 0xF0, 0x78, 0x07, 0x03, 0x80, 0x38, 0x38, - 0x03, 0xC3, 0xC0, 0x1E, 0x3C, 0x00, 0xE1, 0xE0, 0x07, 0x1E, 0x00, 0x78, - 0xF0, 0x03, 0x87, 0x80, 0x3C, 0x78, 0x01, 0xE3, 0xC0, 0x1F, 0x1E, 0x01, - 0x70, 0xF0, 0x17, 0x87, 0x80, 0xBC, 0x3C, 0x09, 0xC0, 0xF1, 0x8E, 0x07, - 0xF8, 0xF0, 0x1F, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x1E, - 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, - 0x3E, 0x00, 0x0F, 0xFE, 0x00, 0x07, 0x87, 0x3F, 0x87, 0xC3, 0xC7, 0xE1, - 0xE6, 0xF0, 0xF6, 0x00, 0x72, 0x00, 0x3A, 0x00, 0x1D, 0x00, 0x1F, 0x00, - 0x0E, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0F, - 0x00, 0x00, 0x01, 0xF8, 0x81, 0x87, 0xC1, 0x80, 0xE1, 0xC0, 0x60, 0xE0, - 0x10, 0x70, 0x08, 0x3C, 0x04, 0x1F, 0x00, 0x07, 0xC0, 0x03, 0xE0, 0x00, - 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC1, 0x01, 0xE0, 0x80, 0x70, - 0x40, 0x38, 0x30, 0x1C, 0x38, 0x0C, 0x1C, 0x0E, 0x0F, 0x0E, 0x04, 0x7C, - 0x00, 0x00, 0xC0, 0x18, 0x03, 0x80, 0x78, 0x1F, 0x03, 0xFF, 0x7F, 0xF0, - 0xF0, 0x0E, 0x00, 0xE0, 0x1E, 0x01, 0xE0, 0x1C, 0x01, 0xC0, 0x3C, 0x03, - 0xC0, 0x38, 0x03, 0x80, 0x78, 0x07, 0x80, 0x70, 0x8F, 0x10, 0xF1, 0x0F, - 0x20, 0xFC, 0x07, 0x80, 0x00, 0x00, 0x00, 0xF0, 0x0E, 0x7F, 0x00, 0xE0, - 0xF0, 0x1E, 0x0E, 0x01, 0xE1, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, 0xE0, 0x3C, - 0x1C, 0x07, 0xC3, 0xC0, 0x78, 0x3C, 0x0F, 0x83, 0xC0, 0xB8, 0x38, 0x1F, - 0x87, 0x83, 0x70, 0x78, 0x27, 0x07, 0x86, 0x70, 0x70, 0xC7, 0x1F, 0x08, - 0xE1, 0xE1, 0x0E, 0x2E, 0x60, 0xE4, 0xFC, 0x0F, 0x87, 0x00, 0x70, 0x1C, - 0x03, 0xBF, 0x00, 0xF1, 0xE0, 0x3C, 0x78, 0x07, 0x1E, 0x00, 0xC3, 0x80, - 0x30, 0xE0, 0x08, 0x38, 0x06, 0x0E, 0x01, 0x03, 0x80, 0xC0, 0xF0, 0x20, - 0x3C, 0x10, 0x07, 0x04, 0x01, 0xC2, 0x00, 0x71, 0x00, 0x1C, 0xC0, 0x07, - 0x60, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x06, 0x00, 0x01, 0x00, - 0x00, 0x0C, 0x00, 0x40, 0x3B, 0xF8, 0x01, 0x00, 0xF1, 0xE0, 0x0C, 0x03, - 0xC3, 0x80, 0x78, 0x07, 0x0E, 0x01, 0xE0, 0x0C, 0x38, 0x0F, 0x80, 0x20, - 0xE0, 0x6E, 0x00, 0x83, 0x81, 0x38, 0x04, 0x0F, 0x0C, 0xE0, 0x10, 0x1C, - 0x23, 0x80, 0x80, 0x71, 0x8E, 0x06, 0x01, 0xCC, 0x38, 0x10, 0x07, 0x20, - 0xE0, 0x80, 0x1D, 0x83, 0x86, 0x00, 0x7C, 0x07, 0x30, 0x01, 0xF0, 0x1C, - 0x80, 0x07, 0x80, 0x74, 0x00, 0x1E, 0x01, 0xF0, 0x00, 0x70, 0x07, 0x80, - 0x01, 0xC0, 0x1C, 0x00, 0x06, 0x00, 0x60, 0x00, 0x10, 0x01, 0x00, 0x00, - 0x00, 0xE0, 0x38, 0x1F, 0x81, 0xF0, 0x8F, 0x09, 0x80, 0x3C, 0x40, 0x00, - 0x72, 0x00, 0x01, 0xD0, 0x00, 0x07, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x38, - 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x7C, 0x00, - 0x01, 0x70, 0x00, 0x09, 0xC0, 0x00, 0x67, 0x00, 0x01, 0x1E, 0x10, 0x08, - 0x38, 0x40, 0x40, 0xE2, 0x39, 0x03, 0xD0, 0xF8, 0x0F, 0x83, 0xC0, 0x1C, - 0x00, 0x07, 0x80, 0x33, 0xFC, 0x03, 0xC1, 0xE0, 0x1E, 0x07, 0x80, 0x70, - 0x3C, 0x01, 0x80, 0xE0, 0x0C, 0x07, 0x80, 0x40, 0x3C, 0x02, 0x00, 0xE0, - 0x20, 0x07, 0x81, 0x00, 0x3C, 0x18, 0x01, 0xE0, 0x80, 0x07, 0x0C, 0x00, - 0x38, 0x40, 0x01, 0xE4, 0x00, 0x0F, 0x60, 0x00, 0x3A, 0x00, 0x01, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x18, 0x00, 0x00, - 0x80, 0x00, 0x0C, 0x00, 0x00, 0x40, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, - 0x04, 0x00, 0x0E, 0x40, 0x00, 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, - 0xFF, 0x87, 0xFF, 0x82, 0x00, 0x83, 0x00, 0xC1, 0x00, 0xC0, 0x00, 0xC0, - 0x00, 0xC0, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x20, - 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x18, 0x00, 0x1E, - 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0xE8, 0xFC, 0x70, 0x1E, 0x38, 0x03, 0x88, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x0F, - 0x00, 0x07, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0x70, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0xC0, 0x00, 0x80, - 0x00, 0x60, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0F, 0x00, 0x07, - 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, - 0x38, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x01, 0x80, - 0x00, 0x70, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x18, 0x00, 0x0E, 0x00, 0x06, 0x00, 0x07, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0E, - 0x00, 0x0E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x3C, - 0x00, 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x18, 0x00, 0x08, 0x00, 0x1C, - 0x00, 0x7E, 0x00, 0x78, 0x00, 0xF0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xE0, - 0x01, 0xC0, 0x01, 0xC0, 0x03, 0xC0, 0x03, 0x80, 0x03, 0x80, 0x07, 0x80, - 0x07, 0x80, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x1C, 0x00, - 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFF, 0x80, 0xC7, 0xFF, 0x87, 0xBC, 0x3F, - 0xFE, 0x60, 0x3F, 0xF0, 0x00, 0x1F, 0x00}; - -const GFXglyph FreeSerifItalic24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 12, 32, 16, 2, -30}, // 0x21 '!' - {48, 14, 12, 16, 6, -31}, // 0x22 '"' - {69, 25, 31, 23, 0, -30}, // 0x23 '#' - {166, 21, 38, 24, 2, -33}, // 0x24 '$' - {266, 33, 32, 39, 4, -30}, // 0x25 '%' - {398, 30, 33, 37, 4, -31}, // 0x26 '&' - {522, 5, 12, 9, 6, -31}, // 0x27 ''' - {530, 13, 39, 16, 2, -30}, // 0x28 '(' - {594, 13, 39, 16, 0, -30}, // 0x29 ')' - {658, 16, 20, 23, 7, -31}, // 0x2A '*' - {698, 23, 23, 32, 4, -22}, // 0x2B '+' - {765, 7, 11, 12, -1, -4}, // 0x2C ',' - {775, 11, 3, 16, 2, -11}, // 0x2D '-' - {780, 5, 5, 12, 1, -3}, // 0x2E '.' - {784, 21, 33, 14, 0, -31}, // 0x2F '/' - {871, 21, 31, 23, 2, -30}, // 0x30 '0' - {953, 17, 32, 23, 2, -31}, // 0x31 '1' - {1021, 21, 31, 24, 0, -30}, // 0x32 '2' - {1103, 22, 32, 23, 0, -31}, // 0x33 '3' - {1191, 22, 32, 23, 0, -31}, // 0x34 '4' - {1279, 22, 32, 24, 0, -31}, // 0x35 '5' - {1367, 23, 32, 23, 1, -31}, // 0x36 '6' - {1459, 21, 32, 23, 4, -31}, // 0x37 '7' - {1543, 22, 32, 23, 1, -31}, // 0x38 '8' - {1631, 22, 33, 23, 1, -31}, // 0x39 '9' - {1722, 9, 22, 12, 2, -20}, // 0x3A ':' - {1747, 11, 27, 12, 1, -20}, // 0x3B ';' - {1785, 23, 25, 27, 3, -24}, // 0x3C '<' - {1857, 24, 12, 31, 4, -17}, // 0x3D '=' - {1893, 24, 25, 27, 3, -24}, // 0x3E '>' - {1968, 16, 33, 21, 6, -31}, // 0x3F '?' - {2034, 33, 33, 37, 3, -31}, // 0x40 '@' - {2171, 29, 31, 31, 0, -30}, // 0x41 'A' - {2284, 28, 31, 28, 0, -30}, // 0x42 'B' - {2393, 30, 33, 29, 2, -31}, // 0x43 'C' - {2517, 33, 31, 33, 0, -30}, // 0x44 'D' - {2645, 29, 31, 27, 0, -30}, // 0x45 'E' - {2758, 29, 31, 27, 0, -30}, // 0x46 'F' - {2871, 31, 33, 32, 2, -31}, // 0x47 'G' - {2999, 36, 31, 33, 0, -30}, // 0x48 'H' - {3139, 18, 31, 15, 0, -30}, // 0x49 'I' - {3209, 23, 32, 20, 0, -30}, // 0x4A 'J' - {3301, 33, 31, 30, 0, -30}, // 0x4B 'K' - {3429, 27, 31, 27, 0, -30}, // 0x4C 'L' - {3534, 42, 31, 39, 0, -30}, // 0x4D 'M' - {3697, 35, 32, 32, 0, -30}, // 0x4E 'N' - {3837, 30, 33, 31, 2, -31}, // 0x4F 'O' - {3961, 29, 31, 27, 0, -30}, // 0x50 'P' - {4074, 30, 41, 31, 2, -31}, // 0x51 'Q' - {4228, 28, 31, 29, 0, -30}, // 0x52 'R' - {4337, 23, 33, 21, 0, -31}, // 0x53 'S' - {4432, 27, 31, 28, 4, -30}, // 0x54 'T' - {4537, 31, 32, 33, 5, -30}, // 0x55 'U' - {4661, 29, 32, 31, 6, -30}, // 0x56 'V' - {4777, 39, 32, 42, 6, -30}, // 0x57 'W' - {4933, 32, 31, 31, 0, -30}, // 0x58 'X' - {5057, 26, 31, 28, 5, -30}, // 0x59 'Y' - {5158, 29, 31, 26, 0, -30}, // 0x5A 'Z' - {5271, 17, 39, 18, 1, -31}, // 0x5B '[' - {5354, 17, 33, 23, 5, -31}, // 0x5C '\' - {5425, 17, 39, 18, 1, -31}, // 0x5D ']' - {5508, 20, 17, 20, 0, -31}, // 0x5E '^' - {5551, 24, 2, 23, 0, 5}, // 0x5F '_' - {5557, 8, 8, 12, 6, -31}, // 0x60 '`' - {5565, 21, 21, 23, 1, -20}, // 0x61 'a' - {5621, 21, 33, 22, 1, -31}, // 0x62 'b' - {5708, 18, 22, 19, 1, -20}, // 0x63 'c' - {5758, 24, 33, 23, 1, -31}, // 0x64 'd' - {5857, 18, 22, 19, 1, -20}, // 0x65 'e' - {5907, 27, 42, 20, -4, -31}, // 0x66 'f' - {6049, 21, 31, 21, -1, -20}, // 0x67 'g' - {6131, 21, 32, 23, 1, -31}, // 0x68 'h' - {6215, 10, 32, 12, 2, -30}, // 0x69 'i' - {6255, 19, 41, 13, -3, -30}, // 0x6A 'j' - {6353, 21, 33, 21, 1, -31}, // 0x6B 'k' - {6440, 11, 33, 12, 2, -31}, // 0x6C 'l' - {6486, 31, 21, 34, 1, -20}, // 0x6D 'm' - {6568, 21, 21, 23, 1, -20}, // 0x6E 'n' - {6624, 21, 22, 22, 1, -20}, // 0x6F 'o' - {6682, 27, 31, 22, -4, -20}, // 0x70 'p' - {6787, 21, 31, 23, 1, -20}, // 0x71 'q' - {6869, 17, 21, 17, 1, -20}, // 0x72 'r' - {6914, 17, 22, 16, 0, -20}, // 0x73 's' - {6961, 12, 26, 11, 1, -24}, // 0x74 't' - {7000, 20, 22, 23, 1, -20}, // 0x75 'u' - {7055, 18, 22, 21, 3, -20}, // 0x76 'v' - {7105, 30, 22, 32, 2, -20}, // 0x77 'w' - {7188, 22, 22, 20, -1, -20}, // 0x78 'x' - {7249, 21, 31, 22, 1, -20}, // 0x79 'y' - {7331, 17, 24, 18, 0, -19}, // 0x7A 'z' - {7382, 17, 40, 19, 2, -31}, // 0x7B '{' - {7467, 3, 33, 13, 5, -31}, // 0x7C '|' - {7480, 16, 41, 19, 0, -32}, // 0x7D '}' - {7562, 22, 6, 25, 2, -14}}; // 0x7E '~' - -const GFXfont FreeSerifItalic24pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic24pt7bBitmaps, - (GFXglyph *)FreeSerifItalic24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 8251 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h deleted file mode 100644 index be4ad05..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h +++ /dev/null @@ -1,204 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic9pt7bBitmaps[] PROGMEM = { - 0x11, 0x12, 0x22, 0x24, 0x40, 0x0C, 0xDE, 0xE5, 0x40, 0x04, 0x82, 0x20, - 0x98, 0x24, 0x7F, 0xC4, 0x82, 0x23, 0xFC, 0x24, 0x11, 0x04, 0x83, 0x20, - 0x1C, 0x1B, 0x99, 0x4D, 0x26, 0x81, 0xC0, 0x70, 0x1C, 0x13, 0x49, 0xA4, - 0xDA, 0xC7, 0xC1, 0x00, 0x80, 0x1C, 0x61, 0xCF, 0x0E, 0x28, 0x30, 0xA0, - 0xC5, 0x03, 0x34, 0xE7, 0xAE, 0x40, 0xB1, 0x05, 0x84, 0x26, 0x20, 0x99, - 0x84, 0x3C, 0x03, 0x80, 0x6C, 0x06, 0xC0, 0x78, 0x06, 0x01, 0xEF, 0x66, - 0x24, 0x24, 0xC3, 0x8C, 0x10, 0xE3, 0x87, 0xCE, 0xFA, 0x08, 0x21, 0x08, - 0x61, 0x8C, 0x30, 0xC3, 0x0C, 0x30, 0x41, 0x02, 0x00, 0x10, 0x40, 0x82, - 0x0C, 0x30, 0xC3, 0x0C, 0x61, 0x84, 0x21, 0x08, 0x00, 0x30, 0xCA, 0x5E, - 0x6A, 0x93, 0x08, 0x08, 0x04, 0x02, 0x01, 0x0F, 0xF8, 0x40, 0x20, 0x10, - 0x08, 0x00, 0x56, 0xF0, 0xF0, 0x03, 0x02, 0x06, 0x04, 0x08, 0x08, 0x10, - 0x30, 0x20, 0x60, 0x40, 0xC0, 0x0E, 0x0C, 0x8C, 0x6C, 0x36, 0x1F, 0x0F, - 0x07, 0x87, 0xC3, 0x61, 0xB1, 0x88, 0x83, 0x80, 0x04, 0x70, 0xC3, 0x08, - 0x21, 0x86, 0x10, 0x43, 0x08, 0xF8, 0x1C, 0x67, 0x83, 0x03, 0x02, 0x06, - 0x0C, 0x08, 0x10, 0x20, 0x42, 0xFC, 0x0F, 0x08, 0xC0, 0x60, 0xC1, 0xE0, - 0x38, 0x0C, 0x06, 0x03, 0x01, 0x01, 0x1F, 0x00, 0x01, 0x01, 0x81, 0x41, - 0x61, 0x21, 0x11, 0x18, 0x88, 0xFF, 0x02, 0x03, 0x01, 0x00, 0x0F, 0x84, - 0x04, 0x03, 0x80, 0x60, 0x18, 0x0C, 0x06, 0x03, 0x03, 0x03, 0x1E, 0x00, - 0x01, 0x83, 0x87, 0x07, 0x03, 0x03, 0x73, 0xCD, 0x86, 0xC3, 0x61, 0xB1, - 0x88, 0xC3, 0xC0, 0x7F, 0x40, 0x80, 0x80, 0x40, 0x40, 0x60, 0x20, 0x20, - 0x10, 0x10, 0x18, 0x08, 0x00, 0x1E, 0x19, 0xCC, 0x66, 0x33, 0xB0, 0xE0, - 0x50, 0xCC, 0xC3, 0x61, 0xB0, 0xCC, 0xC3, 0xC0, 0x0E, 0x19, 0x8C, 0x6C, - 0x36, 0x1B, 0x0D, 0x86, 0xE6, 0x3F, 0x03, 0x03, 0x06, 0x0C, 0x00, 0x33, - 0x00, 0x00, 0xCC, 0x33, 0x00, 0x00, 0x44, 0x48, 0x01, 0x83, 0x86, 0x1C, - 0x0C, 0x03, 0x80, 0x30, 0x07, 0x00, 0x80, 0xFF, 0x80, 0x00, 0x00, 0x0F, - 0xF8, 0xC0, 0x1C, 0x03, 0x80, 0x70, 0x18, 0x38, 0x70, 0xC0, 0x80, 0x00, - 0x3C, 0x8C, 0x18, 0x30, 0xC3, 0x0C, 0x20, 0x40, 0x80, 0x06, 0x00, 0x0F, - 0xC0, 0xC3, 0x0C, 0x04, 0xC7, 0xBC, 0x64, 0xE2, 0x27, 0x31, 0x39, 0x91, - 0xCC, 0x93, 0x3B, 0x0E, 0x00, 0x1F, 0x80, 0x01, 0x00, 0x60, 0x14, 0x04, - 0xC0, 0x98, 0x23, 0x07, 0xE1, 0x04, 0x20, 0x88, 0x1B, 0x8F, 0x80, 0x3F, - 0xC1, 0x8C, 0x21, 0x8C, 0x31, 0x8C, 0x3E, 0x04, 0x61, 0x86, 0x30, 0xC4, - 0x19, 0x86, 0x7F, 0x80, 0x07, 0x91, 0x86, 0x30, 0x26, 0x02, 0x60, 0x0C, - 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0x61, 0x83, 0xE0, 0x3F, 0xC0, - 0x63, 0x82, 0x0C, 0x30, 0x31, 0x81, 0x8C, 0x0C, 0x40, 0x66, 0x07, 0x30, - 0x31, 0x03, 0x18, 0x71, 0xFE, 0x00, 0x3F, 0xF0, 0xC2, 0x08, 0x21, 0x80, - 0x19, 0x81, 0xF8, 0x11, 0x03, 0x10, 0x30, 0x02, 0x04, 0x60, 0x8F, 0xF8, - 0x3F, 0xF0, 0xC2, 0x08, 0x21, 0x80, 0x19, 0x81, 0xF8, 0x11, 0x03, 0x10, - 0x30, 0x02, 0x00, 0x60, 0x0F, 0x80, 0x07, 0x91, 0x87, 0x30, 0x26, 0x02, - 0x60, 0x0C, 0x00, 0xC1, 0xFC, 0x0C, 0xC0, 0xCC, 0x0C, 0x60, 0x83, 0xF0, - 0x3E, 0x3C, 0x30, 0x60, 0x81, 0x06, 0x0C, 0x18, 0x30, 0x7F, 0x81, 0x06, - 0x0C, 0x18, 0x30, 0x60, 0x81, 0x06, 0x0C, 0x3C, 0x78, 0x1E, 0x18, 0x20, - 0xC1, 0x83, 0x04, 0x18, 0x30, 0x41, 0x87, 0x80, 0x0F, 0x81, 0x80, 0x80, - 0xC0, 0x60, 0x20, 0x30, 0x18, 0x0C, 0x04, 0x36, 0x1E, 0x00, 0x3E, 0x78, - 0x61, 0x82, 0x10, 0x31, 0x01, 0xB0, 0x0E, 0x00, 0x58, 0x06, 0x60, 0x33, - 0x01, 0x0C, 0x18, 0x61, 0xE7, 0xC0, 0x3E, 0x01, 0x80, 0x20, 0x0C, 0x01, - 0x80, 0x30, 0x04, 0x01, 0x80, 0x30, 0x04, 0x0D, 0x83, 0x7F, 0xE0, 0x1C, - 0x07, 0x0C, 0x0E, 0x0C, 0x14, 0x14, 0x1C, 0x14, 0x2C, 0x16, 0x4C, 0x26, - 0x48, 0x26, 0x98, 0x27, 0x18, 0x27, 0x10, 0x42, 0x30, 0xF4, 0x7C, 0x38, - 0x78, 0x60, 0x83, 0x04, 0x2C, 0x41, 0x22, 0x09, 0x10, 0x4D, 0x84, 0x28, - 0x21, 0x41, 0x06, 0x10, 0x21, 0xE1, 0x00, 0x07, 0x83, 0x18, 0xC1, 0xB0, - 0x36, 0x07, 0xC0, 0xF0, 0x3E, 0x06, 0xC0, 0xD8, 0x31, 0x8C, 0x1E, 0x00, - 0x3F, 0xC1, 0x9C, 0x21, 0x8C, 0x31, 0x86, 0x31, 0x87, 0xE1, 0x80, 0x30, - 0x04, 0x01, 0x80, 0x78, 0x00, 0x07, 0x83, 0x18, 0xC1, 0x98, 0x36, 0x07, - 0xC0, 0xF0, 0x1E, 0x06, 0xC0, 0xD8, 0x31, 0x04, 0x13, 0x01, 0x80, 0x70, - 0xB7, 0xE0, 0x3F, 0xC1, 0x8C, 0x21, 0x8C, 0x31, 0x8C, 0x3F, 0x04, 0xC1, - 0x98, 0x31, 0x84, 0x31, 0x86, 0x78, 0x70, 0x1E, 0x4C, 0x63, 0x08, 0xC0, - 0x38, 0x07, 0x00, 0x60, 0x0C, 0x43, 0x10, 0xC6, 0x62, 0x70, 0x7F, 0xE9, - 0x8E, 0x31, 0x04, 0x01, 0x80, 0x30, 0x06, 0x00, 0x80, 0x30, 0x06, 0x00, - 0x80, 0x7E, 0x00, 0x7C, 0xF3, 0x02, 0x30, 0x46, 0x04, 0x60, 0x46, 0x04, - 0x40, 0x8C, 0x08, 0xC0, 0x8C, 0x10, 0xE3, 0x03, 0xC0, 0xF8, 0xEC, 0x0C, - 0x81, 0x18, 0x43, 0x08, 0x62, 0x0C, 0x81, 0x90, 0x14, 0x03, 0x00, 0x60, - 0x08, 0x00, 0xFB, 0xCE, 0x43, 0x0C, 0x86, 0x11, 0x8C, 0x43, 0x38, 0x86, - 0xB2, 0x0D, 0x24, 0x1C, 0x50, 0x38, 0xA0, 0x21, 0x80, 0x42, 0x01, 0x04, - 0x00, 0x3E, 0x71, 0x82, 0x0C, 0x40, 0xC8, 0x07, 0x00, 0x60, 0x06, 0x00, - 0xB0, 0x13, 0x02, 0x18, 0x61, 0x8F, 0x3E, 0xF9, 0xC8, 0x23, 0x10, 0xC8, - 0x34, 0x05, 0x01, 0x80, 0x40, 0x30, 0x0C, 0x03, 0x03, 0xE0, 0x3F, 0xE4, - 0x19, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0x40, 0x18, 0x06, 0x05, - 0x81, 0x7F, 0xE0, 0x0E, 0x10, 0x20, 0x81, 0x02, 0x04, 0x10, 0x20, 0x40, - 0x82, 0x04, 0x08, 0x1C, 0x00, 0x81, 0x04, 0x18, 0x20, 0xC1, 0x04, 0x08, - 0x20, 0x41, 0x38, 0x20, 0x82, 0x08, 0x41, 0x04, 0x10, 0xC2, 0x08, 0x20, - 0x8C, 0x00, 0x18, 0x18, 0x2C, 0x24, 0x46, 0x42, 0x83, 0xFF, 0x80, 0xD8, - 0x80, 0x1F, 0x98, 0x98, 0x4C, 0x2C, 0x36, 0x33, 0x3A, 0xEE, 0x38, 0x08, - 0x04, 0x02, 0x03, 0x71, 0xCC, 0xC6, 0xC3, 0x63, 0x21, 0x93, 0x8F, 0x00, - 0x1F, 0x33, 0x60, 0xC0, 0xC0, 0xC0, 0xC4, 0x78, 0x01, 0x80, 0x40, 0x60, - 0x20, 0xF1, 0x89, 0x8C, 0xC4, 0xC2, 0x63, 0x33, 0xAE, 0xE0, 0x0E, 0x65, - 0x8B, 0x2F, 0x98, 0x31, 0x3C, 0x01, 0xE0, 0x40, 0x08, 0x02, 0x00, 0x40, - 0x3E, 0x03, 0x00, 0x40, 0x08, 0x01, 0x00, 0x60, 0x0C, 0x01, 0x00, 0x20, - 0x04, 0x01, 0x00, 0xC0, 0x00, 0x1E, 0x19, 0xD8, 0xCC, 0xE1, 0xC3, 0x01, - 0xE0, 0xBC, 0x82, 0x41, 0x31, 0x0F, 0x00, 0x38, 0x08, 0x04, 0x02, 0x03, - 0x39, 0x6C, 0xC6, 0x46, 0x63, 0x21, 0x11, 0xB8, 0xE0, 0x30, 0x00, 0xE2, - 0x44, 0xC8, 0xCE, 0x06, 0x00, 0x00, 0x00, 0xC0, 0x83, 0x04, 0x08, 0x10, - 0x60, 0x81, 0x02, 0x04, 0x70, 0x38, 0x10, 0x10, 0x10, 0x37, 0x22, 0x24, - 0x38, 0x78, 0x48, 0x4D, 0xC6, 0x73, 0x32, 0x26, 0x64, 0x4C, 0xDE, 0x77, - 0x39, 0x5E, 0xCC, 0xCC, 0xCE, 0x66, 0x62, 0x22, 0x11, 0x11, 0xB9, 0x8E, - 0x77, 0x3B, 0x33, 0x62, 0x62, 0x42, 0x4D, 0xCE, 0x0F, 0x18, 0xD8, 0x7C, - 0x3C, 0x3E, 0x1B, 0x18, 0xF0, 0x3B, 0x87, 0x31, 0x8C, 0x43, 0x31, 0x88, - 0x62, 0x30, 0xF0, 0x60, 0x10, 0x04, 0x03, 0x80, 0x0F, 0x18, 0x98, 0x4C, - 0x2C, 0x26, 0x33, 0x38, 0xEC, 0x04, 0x02, 0x03, 0x03, 0xC0, 0x76, 0x50, - 0xC1, 0x06, 0x08, 0x10, 0x60, 0x1A, 0x6C, 0xC8, 0xC0, 0xD1, 0xB3, 0x5C, - 0x23, 0xC8, 0xC4, 0x21, 0x18, 0xE0, 0xC3, 0x42, 0x42, 0xC6, 0x86, 0x8C, - 0x9D, 0xEE, 0x62, 0xC4, 0x89, 0xA3, 0x47, 0x0C, 0x10, 0xE2, 0x2C, 0x44, - 0xD8, 0x9D, 0x23, 0xA4, 0x65, 0x0C, 0xC1, 0x10, 0x19, 0x95, 0x43, 0x01, - 0x80, 0xC0, 0xA0, 0x91, 0x8E, 0x70, 0x88, 0x46, 0x23, 0x20, 0x90, 0x50, - 0x28, 0x18, 0x08, 0x08, 0x08, 0x18, 0x00, 0x3F, 0x42, 0x04, 0x08, 0x10, - 0x20, 0x40, 0x72, 0x0E, 0x08, 0x61, 0x04, 0x30, 0x86, 0x08, 0x61, 0x04, - 0x30, 0xC3, 0x8F, 0x00, 0xFF, 0xF0, 0x1E, 0x0C, 0x10, 0x20, 0xC1, 0x82, - 0x04, 0x1C, 0x30, 0x40, 0x83, 0x04, 0x08, 0x20, 0x60, 0x99, 0x8E}; - -const GFXglyph FreeSerifItalic9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 4, 12, 6, 1, -11}, // 0x21 '!' - {6, 5, 4, 6, 3, -11}, // 0x22 '"' - {9, 10, 12, 9, 0, -11}, // 0x23 '#' - {24, 9, 15, 9, 1, -12}, // 0x24 '$' - {41, 14, 12, 15, 1, -11}, // 0x25 '%' - {62, 12, 12, 14, 1, -11}, // 0x26 '&' - {80, 2, 4, 4, 3, -11}, // 0x27 ''' - {81, 6, 15, 6, 1, -11}, // 0x28 '(' - {93, 6, 15, 6, 0, -11}, // 0x29 ')' - {105, 6, 8, 9, 3, -11}, // 0x2A '*' - {111, 9, 9, 12, 1, -8}, // 0x2B '+' - {122, 2, 4, 5, 0, -1}, // 0x2C ',' - {123, 4, 1, 6, 1, -3}, // 0x2D '-' - {124, 2, 2, 5, 0, -1}, // 0x2E '.' - {125, 8, 12, 5, 0, -11}, // 0x2F '/' - {137, 9, 13, 9, 1, -12}, // 0x30 '0' - {152, 6, 13, 9, 1, -12}, // 0x31 '1' - {162, 8, 12, 9, 1, -11}, // 0x32 '2' - {174, 9, 12, 9, 0, -11}, // 0x33 '3' - {188, 9, 12, 9, 0, -11}, // 0x34 '4' - {202, 9, 12, 9, 0, -11}, // 0x35 '5' - {216, 9, 13, 9, 1, -12}, // 0x36 '6' - {231, 9, 12, 9, 1, -11}, // 0x37 '7' - {245, 9, 13, 9, 1, -12}, // 0x38 '8' - {260, 9, 13, 9, 0, -12}, // 0x39 '9' - {275, 4, 8, 4, 1, -7}, // 0x3A ':' - {279, 4, 10, 4, 1, -7}, // 0x3B ';' - {284, 9, 9, 10, 1, -8}, // 0x3C '<' - {295, 9, 5, 12, 2, -6}, // 0x3D '=' - {301, 9, 9, 10, 1, -8}, // 0x3E '>' - {312, 7, 12, 8, 2, -11}, // 0x3F '?' - {323, 13, 12, 14, 1, -11}, // 0x40 '@' - {343, 11, 11, 12, 0, -10}, // 0x41 'A' - {359, 11, 12, 11, 0, -11}, // 0x42 'B' - {376, 12, 12, 11, 1, -11}, // 0x43 'C' - {394, 13, 12, 13, 0, -11}, // 0x44 'D' - {414, 12, 12, 10, 0, -11}, // 0x45 'E' - {432, 12, 12, 10, 0, -11}, // 0x46 'F' - {450, 12, 12, 12, 1, -11}, // 0x47 'G' - {468, 14, 12, 13, 0, -11}, // 0x48 'H' - {489, 7, 12, 6, 0, -11}, // 0x49 'I' - {500, 9, 12, 8, 0, -11}, // 0x4A 'J' - {514, 13, 12, 12, 0, -11}, // 0x4B 'K' - {534, 11, 12, 10, 0, -11}, // 0x4C 'L' - {551, 16, 12, 15, 0, -11}, // 0x4D 'M' - {575, 13, 12, 12, 0, -11}, // 0x4E 'N' - {595, 11, 12, 12, 1, -11}, // 0x4F 'O' - {612, 11, 12, 10, 0, -11}, // 0x50 'P' - {629, 11, 15, 12, 1, -11}, // 0x51 'Q' - {650, 11, 12, 11, 0, -11}, // 0x52 'R' - {667, 10, 12, 8, 0, -11}, // 0x53 'S' - {682, 11, 12, 11, 2, -11}, // 0x54 'T' - {699, 12, 12, 13, 2, -11}, // 0x55 'U' - {717, 11, 12, 12, 2, -11}, // 0x56 'V' - {734, 15, 12, 16, 2, -11}, // 0x57 'W' - {757, 12, 12, 12, 0, -11}, // 0x58 'X' - {775, 10, 12, 11, 2, -11}, // 0x59 'Y' - {790, 11, 12, 10, 0, -11}, // 0x5A 'Z' - {807, 7, 15, 7, 0, -11}, // 0x5B '[' - {821, 6, 12, 9, 2, -11}, // 0x5C '\' - {830, 6, 15, 7, 1, -11}, // 0x5D ']' - {842, 8, 7, 8, 0, -11}, // 0x5E '^' - {849, 9, 1, 9, 0, 2}, // 0x5F '_' - {851, 3, 3, 5, 2, -11}, // 0x60 '`' - {853, 9, 8, 9, 0, -7}, // 0x61 'a' - {862, 9, 12, 9, 0, -11}, // 0x62 'b' - {876, 8, 8, 7, 0, -7}, // 0x63 'c' - {884, 9, 12, 9, 0, -11}, // 0x64 'd' - {898, 7, 8, 7, 0, -7}, // 0x65 'e' - {905, 11, 17, 8, -1, -12}, // 0x66 'f' - {929, 9, 12, 8, 0, -7}, // 0x67 'g' - {943, 9, 12, 9, 0, -11}, // 0x68 'h' - {957, 4, 12, 4, 1, -11}, // 0x69 'i' - {963, 7, 16, 5, -1, -11}, // 0x6A 'j' - {977, 8, 12, 8, 0, -11}, // 0x6B 'k' - {989, 4, 12, 5, 1, -11}, // 0x6C 'l' - {995, 13, 8, 13, 0, -7}, // 0x6D 'm' - {1008, 8, 8, 9, 0, -7}, // 0x6E 'n' - {1016, 9, 8, 9, 0, -7}, // 0x6F 'o' - {1025, 10, 12, 8, -1, -7}, // 0x70 'p' - {1040, 9, 12, 9, 0, -7}, // 0x71 'q' - {1054, 7, 8, 7, 0, -7}, // 0x72 'r' - {1061, 7, 8, 6, 0, -7}, // 0x73 's' - {1068, 5, 9, 4, 0, -8}, // 0x74 't' - {1074, 8, 8, 9, 1, -7}, // 0x75 'u' - {1082, 7, 8, 8, 1, -7}, // 0x76 'v' - {1089, 11, 8, 12, 1, -7}, // 0x77 'w' - {1100, 9, 8, 8, -1, -7}, // 0x78 'x' - {1109, 9, 12, 9, 0, -7}, // 0x79 'y' - {1123, 8, 9, 7, 0, -7}, // 0x7A 'z' - {1132, 6, 15, 7, 1, -11}, // 0x7B '{' - {1144, 1, 12, 5, 2, -11}, // 0x7C '|' - {1146, 7, 16, 7, 0, -12}, // 0x7D '}' - {1160, 8, 3, 10, 1, -5}}; // 0x7E '~' - -const GFXfont FreeSerifItalic9pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic9pt7bBitmaps, - (GFXglyph *)FreeSerifItalic9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 1835 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Org_01.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Org_01.h deleted file mode 100644 index 9b80258..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Org_01.h +++ /dev/null @@ -1,131 +0,0 @@ -#pragma once -#include - -// Org_v01 by Orgdot (www.orgdot.com/aliasfonts). A tiny, -// stylized font with all characters within a 6 pixel height. - -const uint8_t Org_01Bitmaps[] PROGMEM = { - 0xE8, 0xA0, 0x57, 0xD5, 0xF5, 0x00, 0xFD, 0x3E, 0x5F, 0x80, 0x88, 0x88, - 0x88, 0x80, 0xF4, 0xBF, 0x2E, 0x80, 0x80, 0x6A, 0x40, 0x95, 0x80, 0xAA, - 0x80, 0x5D, 0x00, 0xC0, 0xF0, 0x80, 0x08, 0x88, 0x88, 0x00, 0xFC, 0x63, - 0x1F, 0x80, 0xF8, 0xF8, 0x7F, 0x0F, 0x80, 0xF8, 0x7E, 0x1F, 0x80, 0x8C, - 0x7E, 0x10, 0x80, 0xFC, 0x3E, 0x1F, 0x80, 0xFC, 0x3F, 0x1F, 0x80, 0xF8, - 0x42, 0x10, 0x80, 0xFC, 0x7F, 0x1F, 0x80, 0xFC, 0x7E, 0x1F, 0x80, 0x90, - 0xB0, 0x2A, 0x22, 0xF0, 0xF0, 0x88, 0xA8, 0xF8, 0x4E, 0x02, 0x00, 0xFD, - 0x6F, 0x0F, 0x80, 0xFC, 0x7F, 0x18, 0x80, 0xF4, 0x7D, 0x1F, 0x00, 0xFC, - 0x21, 0x0F, 0x80, 0xF4, 0x63, 0x1F, 0x00, 0xFC, 0x3F, 0x0F, 0x80, 0xFC, - 0x3F, 0x08, 0x00, 0xFC, 0x2F, 0x1F, 0x80, 0x8C, 0x7F, 0x18, 0x80, 0xF9, - 0x08, 0x4F, 0x80, 0x78, 0x85, 0x2F, 0x80, 0x8D, 0xB1, 0x68, 0x80, 0x84, - 0x21, 0x0F, 0x80, 0xFD, 0x6B, 0x5A, 0x80, 0xFC, 0x63, 0x18, 0x80, 0xFC, - 0x63, 0x1F, 0x80, 0xFC, 0x7F, 0x08, 0x00, 0xFC, 0x63, 0x3F, 0x80, 0xFC, - 0x7F, 0x29, 0x00, 0xFC, 0x3E, 0x1F, 0x80, 0xF9, 0x08, 0x42, 0x00, 0x8C, - 0x63, 0x1F, 0x80, 0x8C, 0x62, 0xA2, 0x00, 0xAD, 0x6B, 0x5F, 0x80, 0x8A, - 0x88, 0xA8, 0x80, 0x8C, 0x54, 0x42, 0x00, 0xF8, 0x7F, 0x0F, 0x80, 0xEA, - 0xC0, 0x82, 0x08, 0x20, 0x80, 0xD5, 0xC0, 0x54, 0xF8, 0x80, 0xF1, 0xFF, - 0x8F, 0x99, 0xF0, 0xF8, 0x8F, 0x1F, 0x99, 0xF0, 0xFF, 0x8F, 0x6B, 0xA4, - 0xF9, 0x9F, 0x10, 0x8F, 0x99, 0x90, 0xF0, 0x55, 0xC0, 0x8A, 0xF9, 0x90, - 0xF8, 0xFD, 0x63, 0x10, 0xF9, 0x99, 0xF9, 0x9F, 0xF9, 0x9F, 0x80, 0xF9, - 0x9F, 0x20, 0xF8, 0x88, 0x47, 0x1F, 0x27, 0xC8, 0x42, 0x00, 0x99, 0x9F, - 0x99, 0x97, 0x8C, 0x6B, 0xF0, 0x96, 0x69, 0x99, 0x9F, 0x10, 0x2E, 0x8F, - 0x2B, 0x22, 0xF8, 0x89, 0xA8, 0x0F, 0xE0}; - -const GFXglyph Org_01Glyphs[] PROGMEM = {{0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 1, 5, 2, 0, -4}, // 0x21 '!' - {1, 3, 1, 4, 0, -4}, // 0x22 '"' - {2, 5, 5, 6, 0, -4}, // 0x23 '#' - {6, 5, 5, 6, 0, -4}, // 0x24 '$' - {10, 5, 5, 6, 0, -4}, // 0x25 '%' - {14, 5, 5, 6, 0, -4}, // 0x26 '&' - {18, 1, 1, 2, 0, -4}, // 0x27 ''' - {19, 2, 5, 3, 0, -4}, // 0x28 '(' - {21, 2, 5, 3, 0, -4}, // 0x29 ')' - {23, 3, 3, 4, 0, -3}, // 0x2A '*' - {25, 3, 3, 4, 0, -3}, // 0x2B '+' - {27, 1, 2, 2, 0, 0}, // 0x2C ',' - {28, 4, 1, 5, 0, -2}, // 0x2D '-' - {29, 1, 1, 2, 0, 0}, // 0x2E '.' - {30, 5, 5, 6, 0, -4}, // 0x2F '/' - {34, 5, 5, 6, 0, -4}, // 0x30 '0' - {38, 1, 5, 2, 0, -4}, // 0x31 '1' - {39, 5, 5, 6, 0, -4}, // 0x32 '2' - {43, 5, 5, 6, 0, -4}, // 0x33 '3' - {47, 5, 5, 6, 0, -4}, // 0x34 '4' - {51, 5, 5, 6, 0, -4}, // 0x35 '5' - {55, 5, 5, 6, 0, -4}, // 0x36 '6' - {59, 5, 5, 6, 0, -4}, // 0x37 '7' - {63, 5, 5, 6, 0, -4}, // 0x38 '8' - {67, 5, 5, 6, 0, -4}, // 0x39 '9' - {71, 1, 4, 2, 0, -3}, // 0x3A ':' - {72, 1, 4, 2, 0, -3}, // 0x3B ';' - {73, 3, 5, 4, 0, -4}, // 0x3C '<' - {75, 4, 3, 5, 0, -3}, // 0x3D '=' - {77, 3, 5, 4, 0, -4}, // 0x3E '>' - {79, 5, 5, 6, 0, -4}, // 0x3F '?' - {83, 5, 5, 6, 0, -4}, // 0x40 '@' - {87, 5, 5, 6, 0, -4}, // 0x41 'A' - {91, 5, 5, 6, 0, -4}, // 0x42 'B' - {95, 5, 5, 6, 0, -4}, // 0x43 'C' - {99, 5, 5, 6, 0, -4}, // 0x44 'D' - {103, 5, 5, 6, 0, -4}, // 0x45 'E' - {107, 5, 5, 6, 0, -4}, // 0x46 'F' - {111, 5, 5, 6, 0, -4}, // 0x47 'G' - {115, 5, 5, 6, 0, -4}, // 0x48 'H' - {119, 5, 5, 6, 0, -4}, // 0x49 'I' - {123, 5, 5, 6, 0, -4}, // 0x4A 'J' - {127, 5, 5, 6, 0, -4}, // 0x4B 'K' - {131, 5, 5, 6, 0, -4}, // 0x4C 'L' - {135, 5, 5, 6, 0, -4}, // 0x4D 'M' - {139, 5, 5, 6, 0, -4}, // 0x4E 'N' - {143, 5, 5, 6, 0, -4}, // 0x4F 'O' - {147, 5, 5, 6, 0, -4}, // 0x50 'P' - {151, 5, 5, 6, 0, -4}, // 0x51 'Q' - {155, 5, 5, 6, 0, -4}, // 0x52 'R' - {159, 5, 5, 6, 0, -4}, // 0x53 'S' - {163, 5, 5, 6, 0, -4}, // 0x54 'T' - {167, 5, 5, 6, 0, -4}, // 0x55 'U' - {171, 5, 5, 6, 0, -4}, // 0x56 'V' - {175, 5, 5, 6, 0, -4}, // 0x57 'W' - {179, 5, 5, 6, 0, -4}, // 0x58 'X' - {183, 5, 5, 6, 0, -4}, // 0x59 'Y' - {187, 5, 5, 6, 0, -4}, // 0x5A 'Z' - {191, 2, 5, 3, 0, -4}, // 0x5B '[' - {193, 5, 5, 6, 0, -4}, // 0x5C '\' - {197, 2, 5, 3, 0, -4}, // 0x5D ']' - {199, 3, 2, 4, 0, -4}, // 0x5E '^' - {200, 5, 1, 6, 0, 1}, // 0x5F '_' - {201, 1, 1, 2, 0, -4}, // 0x60 '`' - {202, 4, 4, 5, 0, -3}, // 0x61 'a' - {204, 4, 5, 5, 0, -4}, // 0x62 'b' - {207, 4, 4, 5, 0, -3}, // 0x63 'c' - {209, 4, 5, 5, 0, -4}, // 0x64 'd' - {212, 4, 4, 5, 0, -3}, // 0x65 'e' - {214, 3, 5, 4, 0, -4}, // 0x66 'f' - {216, 4, 5, 5, 0, -3}, // 0x67 'g' - {219, 4, 5, 5, 0, -4}, // 0x68 'h' - {222, 1, 4, 2, 0, -3}, // 0x69 'i' - {223, 2, 5, 3, 0, -3}, // 0x6A 'j' - {225, 4, 5, 5, 0, -4}, // 0x6B 'k' - {228, 1, 5, 2, 0, -4}, // 0x6C 'l' - {229, 5, 4, 6, 0, -3}, // 0x6D 'm' - {232, 4, 4, 5, 0, -3}, // 0x6E 'n' - {234, 4, 4, 5, 0, -3}, // 0x6F 'o' - {236, 4, 5, 5, 0, -3}, // 0x70 'p' - {239, 4, 5, 5, 0, -3}, // 0x71 'q' - {242, 4, 4, 5, 0, -3}, // 0x72 'r' - {244, 4, 4, 5, 0, -3}, // 0x73 's' - {246, 5, 5, 6, 0, -4}, // 0x74 't' - {250, 4, 4, 5, 0, -3}, // 0x75 'u' - {252, 4, 4, 5, 0, -3}, // 0x76 'v' - {254, 5, 4, 6, 0, -3}, // 0x77 'w' - {257, 4, 4, 5, 0, -3}, // 0x78 'x' - {259, 4, 5, 5, 0, -3}, // 0x79 'y' - {262, 4, 4, 5, 0, -3}, // 0x7A 'z' - {264, 3, 5, 4, 0, -4}, // 0x7B '{' - {266, 1, 5, 2, 0, -4}, // 0x7C '|' - {267, 3, 5, 4, 0, -4}, // 0x7D '}' - {269, 5, 3, 6, 0, -3}}; // 0x7E '~' - -const GFXfont Org_01 PROGMEM = {(uint8_t *)Org_01Bitmaps, - (GFXglyph *)Org_01Glyphs, 0x20, 0x7E, 7}; - -// Approx. 943 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Picopixel.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Picopixel.h deleted file mode 100644 index 463b1b5..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Picopixel.h +++ /dev/null @@ -1,123 +0,0 @@ -#pragma once -#include - -// Picopixel by Sebastian Weber. A tiny font -// with all characters within a 6 pixel height. - -const uint8_t PicopixelBitmaps[] PROGMEM = { - 0xE8, 0xB4, 0x57, 0xD5, 0xF5, 0x00, 0x4E, 0x3E, 0x80, 0xA5, 0x4A, 0x4A, - 0x5A, 0x50, 0xC0, 0x6A, 0x40, 0x95, 0x80, 0xAA, 0x80, 0x5D, 0x00, 0x60, - 0xE0, 0x80, 0x25, 0x48, 0x56, 0xD4, 0x75, 0x40, 0xC5, 0x4E, 0xC5, 0x1C, - 0x97, 0x92, 0xF3, 0x1C, 0x53, 0x54, 0xE5, 0x48, 0x55, 0x54, 0x55, 0x94, - 0xA0, 0x46, 0x64, 0xE3, 0x80, 0x98, 0xC5, 0x04, 0x56, 0xC6, 0x57, 0xDA, - 0xD7, 0x5C, 0x72, 0x46, 0xD6, 0xDC, 0xF3, 0xCE, 0xF3, 0x48, 0x72, 0xD4, - 0xB7, 0xDA, 0xF8, 0x24, 0xD4, 0xBB, 0x5A, 0x92, 0x4E, 0x8E, 0xEB, 0x58, - 0x80, 0x9D, 0xB9, 0x90, 0x56, 0xD4, 0xD7, 0x48, 0x56, 0xD4, 0x40, 0xD7, - 0x5A, 0x71, 0x1C, 0xE9, 0x24, 0xB6, 0xD4, 0xB6, 0xA4, 0x8C, 0x6B, 0x55, - 0x00, 0xB5, 0x5A, 0xB5, 0x24, 0xE5, 0x4E, 0xEA, 0xC0, 0x91, 0x12, 0xD5, - 0xC0, 0x54, 0xF0, 0x90, 0xC7, 0xF0, 0x93, 0x5E, 0x71, 0x80, 0x25, 0xDE, - 0x5E, 0x30, 0x6E, 0x80, 0x77, 0x9C, 0x93, 0x5A, 0xB8, 0x45, 0x60, 0x92, - 0xEA, 0xAA, 0x40, 0xD5, 0x6A, 0xD6, 0x80, 0x55, 0x00, 0xD7, 0x40, 0x75, - 0x90, 0xE8, 0x71, 0xE0, 0xBA, 0x40, 0xB5, 0x80, 0xB5, 0x00, 0x8D, 0x54, - 0xAA, 0x80, 0xAC, 0xE0, 0xE5, 0x70, 0x6A, 0x26, 0xFC, 0xC8, 0xAC, 0x5A}; - -const GFXglyph PicopixelGlyphs[] PROGMEM = {{0, 0, 0, 2, 0, 1}, // 0x20 ' ' - {0, 1, 5, 2, 0, -4}, // 0x21 '!' - {1, 3, 2, 4, 0, -4}, // 0x22 '"' - {2, 5, 5, 6, 0, -4}, // 0x23 '#' - {6, 3, 6, 4, 0, -4}, // 0x24 '$' - {9, 3, 5, 4, 0, -4}, // 0x25 '%' - {11, 4, 5, 5, 0, -4}, // 0x26 '&' - {14, 1, 2, 2, 0, -4}, // 0x27 ''' - {15, 2, 5, 3, 0, -4}, // 0x28 '(' - {17, 2, 5, 3, 0, -4}, // 0x29 ')' - {19, 3, 3, 4, 0, -3}, // 0x2A '*' - {21, 3, 3, 4, 0, -3}, // 0x2B '+' - {23, 2, 2, 3, 0, 0}, // 0x2C ',' - {24, 3, 1, 4, 0, -2}, // 0x2D '-' - {25, 1, 1, 2, 0, 0}, // 0x2E '.' - {26, 3, 5, 4, 0, -4}, // 0x2F '/' - {28, 3, 5, 4, 0, -4}, // 0x30 '0' - {30, 2, 5, 3, 0, -4}, // 0x31 '1' - {32, 3, 5, 4, 0, -4}, // 0x32 '2' - {34, 3, 5, 4, 0, -4}, // 0x33 '3' - {36, 3, 5, 4, 0, -4}, // 0x34 '4' - {38, 3, 5, 4, 0, -4}, // 0x35 '5' - {40, 3, 5, 4, 0, -4}, // 0x36 '6' - {42, 3, 5, 4, 0, -4}, // 0x37 '7' - {44, 3, 5, 4, 0, -4}, // 0x38 '8' - {46, 3, 5, 4, 0, -4}, // 0x39 '9' - {48, 1, 3, 2, 0, -3}, // 0x3A ':' - {49, 2, 4, 3, 0, -3}, // 0x3B ';' - {50, 2, 3, 3, 0, -3}, // 0x3C '<' - {51, 3, 3, 4, 0, -3}, // 0x3D '=' - {53, 2, 3, 3, 0, -3}, // 0x3E '>' - {54, 3, 5, 4, 0, -4}, // 0x3F '?' - {56, 3, 5, 4, 0, -4}, // 0x40 '@' - {58, 3, 5, 4, 0, -4}, // 0x41 'A' - {60, 3, 5, 4, 0, -4}, // 0x42 'B' - {62, 3, 5, 4, 0, -4}, // 0x43 'C' - {64, 3, 5, 4, 0, -4}, // 0x44 'D' - {66, 3, 5, 4, 0, -4}, // 0x45 'E' - {68, 3, 5, 4, 0, -4}, // 0x46 'F' - {70, 3, 5, 4, 0, -4}, // 0x47 'G' - {72, 3, 5, 4, 0, -4}, // 0x48 'H' - {74, 1, 5, 2, 0, -4}, // 0x49 'I' - {75, 3, 5, 4, 0, -4}, // 0x4A 'J' - {77, 3, 5, 4, 0, -4}, // 0x4B 'K' - {79, 3, 5, 4, 0, -4}, // 0x4C 'L' - {81, 5, 5, 6, 0, -4}, // 0x4D 'M' - {85, 4, 5, 5, 0, -4}, // 0x4E 'N' - {88, 3, 5, 4, 0, -4}, // 0x4F 'O' - {90, 3, 5, 4, 0, -4}, // 0x50 'P' - {92, 3, 6, 4, 0, -4}, // 0x51 'Q' - {95, 3, 5, 4, 0, -4}, // 0x52 'R' - {97, 3, 5, 4, 0, -4}, // 0x53 'S' - {99, 3, 5, 4, 0, -4}, // 0x54 'T' - {101, 3, 5, 4, 0, -4}, // 0x55 'U' - {103, 3, 5, 4, 0, -4}, // 0x56 'V' - {105, 5, 5, 6, 0, -4}, // 0x57 'W' - {109, 3, 5, 4, 0, -4}, // 0x58 'X' - {111, 3, 5, 4, 0, -4}, // 0x59 'Y' - {113, 3, 5, 4, 0, -4}, // 0x5A 'Z' - {115, 2, 5, 3, 0, -4}, // 0x5B '[' - {117, 3, 5, 4, 0, -4}, // 0x5C '\' - {119, 2, 5, 3, 0, -4}, // 0x5D ']' - {121, 3, 2, 4, 0, -4}, // 0x5E '^' - {122, 4, 1, 4, 0, 1}, // 0x5F '_' - {123, 2, 2, 3, 0, -4}, // 0x60 '`' - {124, 3, 4, 4, 0, -3}, // 0x61 'a' - {126, 3, 5, 4, 0, -4}, // 0x62 'b' - {128, 3, 3, 4, 0, -2}, // 0x63 'c' - {130, 3, 5, 4, 0, -4}, // 0x64 'd' - {132, 3, 4, 4, 0, -3}, // 0x65 'e' - {134, 2, 5, 3, 0, -4}, // 0x66 'f' - {136, 3, 5, 4, 0, -3}, // 0x67 'g' - {138, 3, 5, 4, 0, -4}, // 0x68 'h' - {140, 1, 5, 2, 0, -4}, // 0x69 'i' - {141, 2, 6, 3, 0, -4}, // 0x6A 'j' - {143, 3, 5, 4, 0, -4}, // 0x6B 'k' - {145, 2, 5, 3, 0, -4}, // 0x6C 'l' - {147, 5, 3, 6, 0, -2}, // 0x6D 'm' - {149, 3, 3, 4, 0, -2}, // 0x6E 'n' - {151, 3, 3, 4, 0, -2}, // 0x6F 'o' - {153, 3, 4, 4, 0, -2}, // 0x70 'p' - {155, 3, 4, 4, 0, -2}, // 0x71 'q' - {157, 2, 3, 3, 0, -2}, // 0x72 'r' - {158, 3, 4, 4, 0, -3}, // 0x73 's' - {160, 2, 5, 3, 0, -4}, // 0x74 't' - {162, 3, 3, 4, 0, -2}, // 0x75 'u' - {164, 3, 3, 4, 0, -2}, // 0x76 'v' - {166, 5, 3, 6, 0, -2}, // 0x77 'w' - {168, 3, 3, 4, 0, -2}, // 0x78 'x' - {170, 3, 4, 4, 0, -2}, // 0x79 'y' - {172, 3, 4, 4, 0, -3}, // 0x7A 'z' - {174, 3, 5, 4, 0, -4}, // 0x7B '{' - {176, 1, 6, 2, 0, -4}, // 0x7C '|' - {177, 3, 5, 4, 0, -4}, // 0x7D '}' - {179, 4, 2, 5, 0, -3}}; // 0x7E '~' - -const GFXfont Picopixel PROGMEM = {(uint8_t *)PicopixelBitmaps, - (GFXglyph *)PicopixelGlyphs, 0x20, 0x7E, 7}; - -// Approx. 852 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h deleted file mode 100644 index 5b0ba4a..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h +++ /dev/null @@ -1,133 +0,0 @@ -#pragma once -#include - -/** -** The FontStruction “Tiny3x3a” -** (https://fontstruct.com/fontstructions/show/670512) by “Michaelangel007” is -** licensed under a Creative Commons Attribution Non-commercial Share Alike -*license -** (http://creativecommons.org/licenses/by-nc-sa/3.0/). -** “Tiny3x3a” was originally cloned (copied) from the FontStruction -** “CHECKER” (https://fontstruct.com/fontstructions/show/2391) by Wolf grant -** Grant, which is licensed under a Creative Commons Attribution Non-commercial -** Share Alike license (http://creativecommons.org/licenses/by-nc-sa/3.0/). -* -* Converted by eadmaster with fontconvert -**/ - -const uint8_t Tiny3x3a2pt7bBitmaps[] PROGMEM = { - 0xC0, 0xB4, 0xBF, 0x80, 0x6B, 0x00, 0xDD, 0x80, 0x59, 0x80, 0x80, 0x64, - 0x98, 0xF0, 0x5D, 0x00, 0xC0, 0xE0, 0x80, 0x2A, 0x00, 0x55, 0x00, 0x94, - 0xC9, 0x80, 0xEF, 0x80, 0xBC, 0x80, 0x6B, 0x00, 0x9F, 0x80, 0xE4, 0x80, - 0x7F, 0x00, 0xFC, 0x80, 0xA0, 0x58, 0x64, 0xE3, 0x80, 0x98, 0xD8, 0xD8, - 0x80, 0x5E, 0x80, 0xDF, 0x80, 0x71, 0x80, 0xD7, 0x00, 0xFB, 0x80, 0xFA, - 0x00, 0xD7, 0x80, 0xBE, 0x80, 0xE0, 0x27, 0x00, 0xBA, 0x80, 0x93, 0x80, - 0xFE, 0x80, 0xF6, 0x80, 0xF7, 0x80, 0xFE, 0x00, 0xF7, 0x00, 0xDE, 0x80, - 0x6B, 0x00, 0xE9, 0x00, 0xB7, 0x80, 0xB5, 0x00, 0xBF, 0x80, 0xAA, 0x80, - 0xA9, 0x00, 0xEB, 0x80, 0xEC, 0x88, 0x80, 0xDC, 0x54, 0xE0, 0x90, 0x70, - 0xBC, 0xF0, 0x7C, 0xB0, 0x68, 0xFC, 0xBC, 0xC0, 0x58, 0x9A, 0x80, 0xA4, - 0xDC, 0xD4, 0xF0, 0xF8, 0xF4, 0xE0, 0x60, 0x59, 0x80, 0xBC, 0xA8, 0xEC, - 0xF0, 0xAC, 0x80, 0x90, 0x79, 0x80, 0xF0, 0xCF, 0x00, 0x78}; - -const GFXglyph Tiny3x3a2pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 4, 0, 1}, // 0x20 ' ' - {0, 1, 2, 3, 1, -2}, // 0x21 '!' - {1, 3, 2, 4, 0, -2}, // 0x22 '"' - {2, 3, 3, 4, 0, -2}, // 0x23 '#' - {4, 3, 3, 4, 0, -2}, // 0x24 '$' - {6, 3, 3, 4, 0, -2}, // 0x25 '%' - {8, 3, 3, 4, 0, -2}, // 0x26 '&' - {10, 1, 1, 3, 1, -2}, // 0x27 ''' - {11, 2, 3, 3, 0, -2}, // 0x28 '(' - {12, 2, 3, 4, 1, -2}, // 0x29 ')' - {13, 2, 2, 4, 1, -2}, // 0x2A '*' - {14, 3, 3, 4, 0, -2}, // 0x2B '+' - {16, 1, 2, 2, 0, 0}, // 0x2C ',' - {17, 3, 1, 4, 0, -1}, // 0x2D '-' - {18, 1, 1, 2, 0, 0}, // 0x2E '.' - {19, 3, 3, 4, 0, -2}, // 0x2F '/' - {21, 3, 3, 4, 0, -2}, // 0x30 '0' - {23, 2, 3, 3, 0, -2}, // 0x31 '1' - {24, 3, 3, 4, 0, -2}, // 0x32 '2' - {26, 3, 3, 4, 0, -2}, // 0x33 '3' - {28, 3, 3, 4, 0, -2}, // 0x34 '4' - {30, 3, 3, 4, 0, -2}, // 0x35 '5' - {32, 3, 3, 4, 0, -2}, // 0x36 '6' - {34, 3, 3, 4, 0, -2}, // 0x37 '7' - {36, 3, 3, 4, 0, -2}, // 0x38 '8' - {38, 3, 3, 4, 0, -2}, // 0x39 '9' - {40, 1, 3, 3, 1, -2}, // 0x3A ':' - {41, 2, 3, 3, 0, -1}, // 0x3B ';' - {42, 2, 3, 3, 0, -2}, // 0x3C '<' - {43, 3, 3, 4, 0, -2}, // 0x3D '=' - {45, 2, 3, 4, 1, -2}, // 0x3E '>' - {46, 2, 3, 4, 1, -2}, // 0x3F '?' - {47, 3, 3, 4, 0, -2}, // 0x40 '@' - {49, 3, 3, 4, 0, -2}, // 0x41 'A' - {51, 3, 3, 4, 0, -2}, // 0x42 'B' - {53, 3, 3, 4, 0, -2}, // 0x43 'C' - {55, 3, 3, 4, 0, -2}, // 0x44 'D' - {57, 3, 3, 4, 0, -2}, // 0x45 'E' - {59, 3, 3, 4, 0, -2}, // 0x46 'F' - {61, 3, 3, 4, 0, -2}, // 0x47 'G' - {63, 3, 3, 4, 0, -2}, // 0x48 'H' - {65, 1, 3, 3, 1, -2}, // 0x49 'I' - {66, 3, 3, 4, 0, -2}, // 0x4A 'J' - {68, 3, 3, 4, 0, -2}, // 0x4B 'K' - {70, 3, 3, 4, 0, -2}, // 0x4C 'L' - {72, 3, 3, 4, 0, -2}, // 0x4D 'M' - {74, 3, 3, 4, 0, -2}, // 0x4E 'N' - {76, 3, 3, 4, 0, -2}, // 0x4F 'O' - {78, 3, 3, 4, 0, -2}, // 0x50 'P' - {80, 3, 3, 4, 0, -2}, // 0x51 'Q' - {82, 3, 3, 4, 0, -2}, // 0x52 'R' - {84, 3, 3, 4, 0, -2}, // 0x53 'S' - {86, 3, 3, 4, 0, -2}, // 0x54 'T' - {88, 3, 3, 4, 0, -2}, // 0x55 'U' - {90, 3, 3, 4, 0, -2}, // 0x56 'V' - {92, 3, 3, 4, 0, -2}, // 0x57 'W' - {94, 3, 3, 4, 0, -2}, // 0x58 'X' - {96, 3, 3, 4, 0, -2}, // 0x59 'Y' - {98, 3, 3, 4, 0, -2}, // 0x5A 'Z' - {100, 2, 3, 3, 0, -2}, // 0x5B '[' - {101, 3, 3, 4, 0, -2}, // 0x5C '\' - {103, 2, 3, 4, 1, -2}, // 0x5D ']' - {104, 3, 2, 4, 0, -2}, // 0x5E '^' - {105, 3, 1, 4, 0, 0}, // 0x5F '_' - {106, 2, 2, 3, 0, -2}, // 0x60 '`' - {107, 2, 2, 3, 0, -1}, // 0x61 'a' - {108, 2, 3, 3, 0, -2}, // 0x62 'b' - {109, 2, 2, 3, 0, -1}, // 0x63 'c' - {110, 2, 3, 3, 0, -2}, // 0x64 'd' - {111, 2, 2, 3, 0, -1}, // 0x65 'e' - {112, 2, 3, 3, 0, -2}, // 0x66 'f' - {113, 2, 3, 3, 0, -1}, // 0x67 'g' - {114, 2, 3, 3, 0, -2}, // 0x68 'h' - {115, 1, 2, 2, 0, -1}, // 0x69 'i' - {116, 2, 3, 3, 0, -1}, // 0x6A 'j' - {117, 3, 3, 4, 0, -2}, // 0x6B 'k' - {119, 2, 3, 3, 0, -2}, // 0x6C 'l' - {120, 3, 2, 4, 0, -1}, // 0x6D 'm' - {121, 3, 2, 4, 0, -1}, // 0x6E 'n' - {122, 2, 2, 3, 0, -1}, // 0x6F 'o' - {123, 2, 3, 3, 0, -1}, // 0x70 'p' - {124, 2, 3, 3, 0, -1}, // 0x71 'q' - {125, 2, 2, 3, 0, -1}, // 0x72 'r' - {126, 2, 2, 3, 0, -1}, // 0x73 's' - {127, 3, 3, 4, 0, -2}, // 0x74 't' - {129, 3, 2, 4, 0, -1}, // 0x75 'u' - {130, 3, 2, 4, 0, -1}, // 0x76 'v' - {131, 3, 2, 4, 0, -1}, // 0x77 'w' - {132, 2, 2, 3, 0, -1}, // 0x78 'x' - {133, 3, 3, 4, 0, -1}, // 0x79 'y' - {135, 2, 2, 3, 0, -1}, // 0x7A 'z' - {136, 3, 3, 4, 0, -2}, // 0x7B '{' - {138, 1, 4, 3, 1, -2}, // 0x7C '|' - {139, 3, 3, 4, 0, -2}, // 0x7D '}' - {141, 3, 2, 4, 0, -2}}; // 0x7E '~' - -const GFXfont Tiny3x3a2pt7b PROGMEM = {(uint8_t *)Tiny3x3a2pt7bBitmaps, - (GFXglyph *)Tiny3x3a2pt7bGlyphs, 0x20, - 0x7E, 4}; - -// Approx. 814 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/TomThumb.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/TomThumb.h deleted file mode 100644 index 2155500..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/TomThumb.h +++ /dev/null @@ -1,477 +0,0 @@ -#pragma once -#include - -/** -** The original 3x5 font is licensed under the 3-clause BSD license: -** -** Copyright 1999 Brian J. Swetland -** Copyright 1999 Vassilii Khachaturov -** Portions (of vt100.c/vt100.h) copyright Dan Marks -** -** All rights reserved. -** -** Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions -** are met: -** 1. Redistributions of source code must retain the above copyright -** notice, this list of conditions, and the following disclaimer. -** 2. 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. -** 3. The name of the authors may not be used to endorse or promote products -** derived from this software without specific prior written permission. -** -** THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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. -** -** Modifications to Tom Thumb for improved readability are from Robey Pointer, -** see: -** http://robey.lag.net/2010/01/23/tiny-monospace-font.html -** -** The original author does not have any objection to relicensing of Robey -** Pointer's modifications (in this file) in a more permissive license. See -** the discussion at the above blog, and also here: -** http://opengameart.org/forumtopic/how-to-submit-art-using-the-3-clause-bsd-license -** -** Feb 21, 2016: Conversion from Linux BDF --> Adafruit GFX font, -** with the help of this Python script: -** https://gist.github.com/skelliam/322d421f028545f16f6d -** William Skellenger (williamj@skellenger.net) -** Twitter: @skelliam -** -** Jan 09, 2020: Bitmaps now compressed, to fix the bounding box problem, -** because non-compressed the calculated text width were wrong. -** Andreas Merkle (web@blue-andi.de) -*/ - -#define TOMTHUMB_USE_EXTENDED 0 - -const uint8_t TomThumbBitmaps[] PROGMEM = { - 0x00, /* 0x20 space */ - 0xE8, /* 0x21 exclam */ - 0xB4, /* 0x22 quotedbl */ - 0xBE, 0xFA, /* 0x23 numbersign */ - 0x79, 0xE4, /* 0x24 dollar */ - 0x85, 0x42, /* 0x25 percent */ - 0xDB, 0xD6, /* 0x26 ampersand */ - 0xC0, /* 0x27 quotesingle */ - 0x6A, 0x40, /* 0x28 parenleft */ - 0x95, 0x80, /* 0x29 parenright */ - 0xAA, 0x80, /* 0x2A asterisk */ - 0x5D, 0x00, /* 0x2B plus */ - 0x60, /* 0x2C comma */ - 0xE0, /* 0x2D hyphen */ - 0x80, /* 0x2E period */ - 0x25, 0x48, /* 0x2F slash */ - 0x76, 0xDC, /* 0x30 zero */ - 0x75, 0x40, /* 0x31 one */ - 0xC5, 0x4E, /* 0x32 two */ - 0xC5, 0x1C, /* 0x33 three */ - 0xB7, 0x92, /* 0x34 four */ - 0xF3, 0x1C, /* 0x35 five */ - 0x73, 0xDE, /* 0x36 six */ - 0xE5, 0x48, /* 0x37 seven */ - 0xF7, 0xDE, /* 0x38 eight */ - 0xF7, 0x9C, /* 0x39 nine */ - 0xA0, /* 0x3A colon */ - 0x46, /* 0x3B semicolon */ - 0x2A, 0x22, /* 0x3C less */ - 0xE3, 0x80, /* 0x3D equal */ - 0x88, 0xA8, /* 0x3E greater */ - 0xE5, 0x04, /* 0x3F question */ - 0x57, 0xC6, /* 0x40 at */ - 0x57, 0xDA, /* 0x41 A */ - 0xD7, 0x5C, /* 0x42 B */ - 0x72, 0x46, /* 0x43 C */ - 0xD6, 0xDC, /* 0x44 D */ - 0xF3, 0xCE, /* 0x45 E */ - 0xF3, 0xC8, /* 0x46 F */ - 0x73, 0xD6, /* 0x47 G */ - 0xB7, 0xDA, /* 0x48 H */ - 0xE9, 0x2E, /* 0x49 I */ - 0x24, 0xD4, /* 0x4A J */ - 0xB7, 0x5A, /* 0x4B K */ - 0x92, 0x4E, /* 0x4C L */ - 0xBF, 0xDA, /* 0x4D M */ - 0xBF, 0xFA, /* 0x4E N */ - 0x56, 0xD4, /* 0x4F O */ - 0xD7, 0x48, /* 0x50 P */ - 0x56, 0xF6, /* 0x51 Q */ - 0xD7, 0xEA, /* 0x52 R */ - 0x71, 0x1C, /* 0x53 S */ - 0xE9, 0x24, /* 0x54 T */ - 0xB6, 0xD6, /* 0x55 U */ - 0xB6, 0xA4, /* 0x56 V */ - 0xB7, 0xFA, /* 0x57 W */ - 0xB5, 0x5A, /* 0x58 X */ - 0xB5, 0x24, /* 0x59 Y */ - 0xE5, 0x4E, /* 0x5A Z */ - 0xF2, 0x4E, /* 0x5B bracketleft */ - 0x88, 0x80, /* 0x5C backslash */ - 0xE4, 0x9E, /* 0x5D bracketright */ - 0x54, /* 0x5E asciicircum */ - 0xE0, /* 0x5F underscore */ - 0x90, /* 0x60 grave */ - 0xCE, 0xF0, /* 0x61 a */ - 0x9A, 0xDC, /* 0x62 b */ - 0x72, 0x30, /* 0x63 c */ - 0x2E, 0xD6, /* 0x64 d */ - 0x77, 0x30, /* 0x65 e */ - 0x2B, 0xA4, /* 0x66 f */ - 0x77, 0x94, /* 0x67 g */ - 0x9A, 0xDA, /* 0x68 h */ - 0xB8, /* 0x69 i */ - 0x20, 0x9A, 0x80, /* 0x6A j */ - 0x97, 0x6A, /* 0x6B k */ - 0xC9, 0x2E, /* 0x6C l */ - 0xFF, 0xD0, /* 0x6D m */ - 0xD6, 0xD0, /* 0x6E n */ - 0x56, 0xA0, /* 0x6F o */ - 0xD6, 0xE8, /* 0x70 p */ - 0x76, 0xB2, /* 0x71 q */ - 0x72, 0x40, /* 0x72 r */ - 0x79, 0xE0, /* 0x73 s */ - 0x5D, 0x26, /* 0x74 t */ - 0xB6, 0xB0, /* 0x75 u */ - 0xB7, 0xA0, /* 0x76 v */ - 0xBF, 0xF0, /* 0x77 w */ - 0xA9, 0x50, /* 0x78 x */ - 0xB5, 0x94, /* 0x79 y */ - 0xEF, 0x70, /* 0x7A z */ - 0x6A, 0x26, /* 0x7B braceleft */ - 0xD8, /* 0x7C bar */ - 0xC8, 0xAC, /* 0x7D braceright */ - 0x78, /* 0x7E asciitilde */ -#if (TOMTHUMB_USE_EXTENDED) - 0xB8, /* 0xA1 exclamdown */ - 0x5E, 0x74, /* 0xA2 cent */ - 0x6B, 0xAE, /* 0xA3 sterling */ - 0xAB, 0xAA, /* 0xA4 currency */ - 0xB5, 0x74, /* 0xA5 yen */ - 0xD8, /* 0xA6 brokenbar */ - 0x6A, 0xAC, /* 0xA7 section */ - 0xA0, /* 0xA8 dieresis */ - 0x71, 0x80, /* 0xA9 copyright */ - 0x77, 0x8E, /* 0xAA ordfeminine */ - 0x64, /* 0xAB guillemotleft */ - 0xE4, /* 0xAC logicalnot */ - 0xC0, /* 0xAD softhyphen */ - 0xDA, 0x80, /* 0xAE registered */ - 0xE0, /* 0xAF macron */ - 0x55, 0x00, /* 0xB0 degree */ - 0x5D, 0x0E, /* 0xB1 plusminus */ - 0xC9, 0x80, /* 0xB2 twosuperior */ - 0xEF, 0x80, /* 0xB3 threesuperior */ - 0x60, /* 0xB4 acute */ - 0xB6, 0xE8, /* 0xB5 mu */ - 0x75, 0xB6, /* 0xB6 paragraph */ - 0xFF, 0x80, /* 0xB7 periodcentered */ - 0x47, 0x00, /* 0xB8 cedilla */ - 0xE0, /* 0xB9 onesuperior */ - 0x55, 0x0E, /* 0xBA ordmasculine */ - 0x98, /* 0xBB guillemotright */ - 0x90, 0x32, /* 0xBC onequarter */ - 0x90, 0x66, /* 0xBD onehalf */ - 0xD8, 0x32, /* 0xBE threequarters */ - 0x41, 0x4E, /* 0xBF questiondown */ - 0x45, 0x7A, /* 0xC0 Agrave */ - 0x51, 0x7A, /* 0xC1 Aacute */ - 0xE1, 0x7A, /* 0xC2 Acircumflex */ - 0x79, 0x7A, /* 0xC3 Atilde */ - 0xAA, 0xFA, /* 0xC4 Adieresis */ - 0xDA, 0xFA, /* 0xC5 Aring */ - 0x7B, 0xEE, /* 0xC6 AE */ - 0x72, 0x32, 0x80, /* 0xC7 Ccedilla */ - 0x47, 0xEE, /* 0xC8 Egrave */ - 0x53, 0xEE, /* 0xC9 Eacute */ - 0xE3, 0xEE, /* 0xCA Ecircumflex */ - 0xA3, 0xEE, /* 0xCB Edieresis */ - 0x47, 0xAE, /* 0xCC Igrave */ - 0x53, 0xAE, /* 0xCD Iacute */ - 0xE3, 0xAE, /* 0xCE Icircumflex */ - 0xA3, 0xAE, /* 0xCF Idieresis */ - 0xD7, 0xDC, /* 0xD0 Eth */ - 0xCE, 0xFA, /* 0xD1 Ntilde */ - 0x47, 0xDE, /* 0xD2 Ograve */ - 0x53, 0xDE, /* 0xD3 Oacute */ - 0xE3, 0xDE, /* 0xD4 Ocircumflex */ - 0xCF, 0xDE, /* 0xD5 Otilde */ - 0xA3, 0xDE, /* 0xD6 Odieresis */ - 0xAA, 0x80, /* 0xD7 multiply */ - 0x77, 0xDC, /* 0xD8 Oslash */ - 0x8A, 0xDE, /* 0xD9 Ugrave */ - 0x2A, 0xDE, /* 0xDA Uacute */ - 0xE2, 0xDE, /* 0xDB Ucircumflex */ - 0xA2, 0xDE, /* 0xDC Udieresis */ - 0x2A, 0xF4, /* 0xDD Yacute */ - 0x9E, 0xF8, /* 0xDE Thorn */ - 0x77, 0x5D, 0x00, /* 0xDF germandbls */ - 0x45, 0xDE, /* 0xE0 agrave */ - 0x51, 0xDE, /* 0xE1 aacute */ - 0xE1, 0xDE, /* 0xE2 acircumflex */ - 0x79, 0xDE, /* 0xE3 atilde */ - 0xA1, 0xDE, /* 0xE4 adieresis */ - 0x6D, 0xDE, /* 0xE5 aring */ - 0x7F, 0xE0, /* 0xE6 ae */ - 0x71, 0x94, /* 0xE7 ccedilla */ - 0x45, 0xF6, /* 0xE8 egrave */ - 0x51, 0xF6, /* 0xE9 eacute */ - 0xE1, 0xF6, /* 0xEA ecircumflex */ - 0xA1, 0xF6, /* 0xEB edieresis */ - 0x9A, 0x80, /* 0xEC igrave */ - 0x65, 0x40, /* 0xED iacute */ - 0xE1, 0x24, /* 0xEE icircumflex */ - 0xA1, 0x24, /* 0xEF idieresis */ - 0x79, 0xD6, /* 0xF0 eth */ - 0xCF, 0x5A, /* 0xF1 ntilde */ - 0x45, 0x54, /* 0xF2 ograve */ - 0x51, 0x54, /* 0xF3 oacute */ - 0xE1, 0x54, /* 0xF4 ocircumflex */ - 0xCD, 0x54, /* 0xF5 otilde */ - 0xA1, 0x54, /* 0xF6 odieresis */ - 0x43, 0x84, /* 0xF7 divide */ - 0x7E, 0xE0, /* 0xF8 oslash */ - 0x8A, 0xD6, /* 0xF9 ugrave */ - 0x2A, 0xD6, /* 0xFA uacute */ - 0xE2, 0xD6, /* 0xFB ucircumflex */ - 0xA2, 0xD6, /* 0xFC udieresis */ - 0x2A, 0xB2, 0x80, /* 0xFD yacute */ - 0x9A, 0xE8, /* 0xFE thorn */ - 0xA2, 0xB2, 0x80, /* 0xFF ydieresis */ - 0x00, /* 0x11D gcircumflex */ - 0x7B, 0xE6, /* 0x152 OE */ - 0x7F, 0x70, /* 0x153 oe */ - 0xAF, 0x3C, /* 0x160 Scaron */ - 0xAF, 0x3C, /* 0x161 scaron */ - 0xA2, 0xA4, /* 0x178 Ydieresis */ - 0xBD, 0xEE, /* 0x17D Zcaron */ - 0xBD, 0xEE, /* 0x17E zcaron */ - 0x00, /* 0xEA4 uni0EA4 */ - 0x00, /* 0x13A0 uni13A0 */ - 0x80, /* 0x2022 bullet */ - 0xA0, /* 0x2026 ellipsis */ - 0x7F, 0xE6, /* 0x20AC Euro */ - 0xEA, 0xAA, 0xE0, /* 0xFFFD uniFFFD */ -#endif /* (TOMTHUMB_USE_EXTENDED) */ -}; - -/* {offset, width, height, advance cursor, x offset, y offset} */ -const GFXglyph TomThumbGlyphs[] PROGMEM = { - {0, 1, 1, 2, 0, -5}, /* 0x20 space */ - {1, 1, 5, 2, 0, -5}, /* 0x21 exclam */ - {2, 3, 2, 4, 0, -5}, /* 0x22 quotedbl */ - {3, 3, 5, 4, 0, -5}, /* 0x23 numbersign */ - {5, 3, 5, 4, 0, -5}, /* 0x24 dollar */ - {7, 3, 5, 4, 0, -5}, /* 0x25 percent */ - {9, 3, 5, 4, 0, -5}, /* 0x26 ampersand */ - {11, 1, 2, 2, 0, -5}, /* 0x27 quotesingle */ - {12, 2, 5, 3, 0, -5}, /* 0x28 parenleft */ - {14, 2, 5, 3, 0, -5}, /* 0x29 parenright */ - {16, 3, 3, 4, 0, -5}, /* 0x2A asterisk */ - {18, 3, 3, 4, 0, -4}, /* 0x2B plus */ - {20, 2, 2, 3, 0, -2}, /* 0x2C comma */ - {21, 3, 1, 4, 0, -3}, /* 0x2D hyphen */ - {22, 1, 1, 2, 0, -1}, /* 0x2E period */ - {23, 3, 5, 4, 0, -5}, /* 0x2F slash */ - {25, 3, 5, 4, 0, -5}, /* 0x30 zero */ - {27, 2, 5, 3, 0, -5}, /* 0x31 one */ - {29, 3, 5, 4, 0, -5}, /* 0x32 two */ - {31, 3, 5, 4, 0, -5}, /* 0x33 three */ - {33, 3, 5, 4, 0, -5}, /* 0x34 four */ - {35, 3, 5, 4, 0, -5}, /* 0x35 five */ - {37, 3, 5, 4, 0, -5}, /* 0x36 six */ - {39, 3, 5, 4, 0, -5}, /* 0x37 seven */ - {41, 3, 5, 4, 0, -5}, /* 0x38 eight */ - {43, 3, 5, 4, 0, -5}, /* 0x39 nine */ - {45, 1, 3, 2, 0, -4}, /* 0x3A colon */ - {46, 2, 4, 3, 0, -4}, /* 0x3B semicolon */ - {47, 3, 5, 4, 0, -5}, /* 0x3C less */ - {49, 3, 3, 4, 0, -4}, /* 0x3D equal */ - {51, 3, 5, 4, 0, -5}, /* 0x3E greater */ - {53, 3, 5, 4, 0, -5}, /* 0x3F question */ - {55, 3, 5, 4, 0, -5}, /* 0x40 at */ - {57, 3, 5, 4, 0, -5}, /* 0x41 A */ - {59, 3, 5, 4, 0, -5}, /* 0x42 B */ - {61, 3, 5, 4, 0, -5}, /* 0x43 C */ - {63, 3, 5, 4, 0, -5}, /* 0x44 D */ - {65, 3, 5, 4, 0, -5}, /* 0x45 E */ - {67, 3, 5, 4, 0, -5}, /* 0x46 F */ - {69, 3, 5, 4, 0, -5}, /* 0x47 G */ - {71, 3, 5, 4, 0, -5}, /* 0x48 H */ - {73, 3, 5, 4, 0, -5}, /* 0x49 I */ - {75, 3, 5, 4, 0, -5}, /* 0x4A J */ - {77, 3, 5, 4, 0, -5}, /* 0x4B K */ - {79, 3, 5, 4, 0, -5}, /* 0x4C L */ - {81, 3, 5, 4, 0, -5}, /* 0x4D M */ - {83, 3, 5, 4, 0, -5}, /* 0x4E N */ - {85, 3, 5, 4, 0, -5}, /* 0x4F O */ - {87, 3, 5, 4, 0, -5}, /* 0x50 P */ - {89, 3, 5, 4, 0, -5}, /* 0x51 Q */ - {91, 3, 5, 4, 0, -5}, /* 0x52 R */ - {93, 3, 5, 4, 0, -5}, /* 0x53 S */ - {95, 3, 5, 4, 0, -5}, /* 0x54 T */ - {97, 3, 5, 4, 0, -5}, /* 0x55 U */ - {99, 3, 5, 4, 0, -5}, /* 0x56 V */ - {101, 3, 5, 4, 0, -5}, /* 0x57 W */ - {103, 3, 5, 4, 0, -5}, /* 0x58 X */ - {105, 3, 5, 4, 0, -5}, /* 0x59 Y */ - {107, 3, 5, 4, 0, -5}, /* 0x5A Z */ - {109, 3, 5, 4, 0, -5}, /* 0x5B bracketleft */ - {111, 3, 3, 4, 0, -4}, /* 0x5C backslash */ - {113, 3, 5, 4, 0, -5}, /* 0x5D bracketright */ - {115, 3, 2, 4, 0, -5}, /* 0x5E asciicircum */ - {116, 3, 1, 4, 0, -1}, /* 0x5F underscore */ - {117, 2, 2, 3, 0, -5}, /* 0x60 grave */ - {118, 3, 4, 4, 0, -4}, /* 0x61 a */ - {120, 3, 5, 4, 0, -5}, /* 0x62 b */ - {122, 3, 4, 4, 0, -4}, /* 0x63 c */ - {124, 3, 5, 4, 0, -5}, /* 0x64 d */ - {126, 3, 4, 4, 0, -4}, /* 0x65 e */ - {128, 3, 5, 4, 0, -5}, /* 0x66 f */ - {130, 3, 5, 4, 0, -4}, /* 0x67 g */ - {132, 3, 5, 4, 0, -5}, /* 0x68 h */ - {134, 1, 5, 2, 0, -5}, /* 0x69 i */ - {135, 3, 6, 4, 0, -5}, /* 0x6A j */ - {138, 3, 5, 4, 0, -5}, /* 0x6B k */ - {140, 3, 5, 4, 0, -5}, /* 0x6C l */ - {142, 3, 4, 4, 0, -4}, /* 0x6D m */ - {144, 3, 4, 4, 0, -4}, /* 0x6E n */ - {146, 3, 4, 4, 0, -4}, /* 0x6F o */ - {148, 3, 5, 4, 0, -4}, /* 0x70 p */ - {150, 3, 5, 4, 0, -4}, /* 0x71 q */ - {152, 3, 4, 4, 0, -4}, /* 0x72 r */ - {154, 3, 4, 4, 0, -4}, /* 0x73 s */ - {156, 3, 5, 4, 0, -5}, /* 0x74 t */ - {158, 3, 4, 4, 0, -4}, /* 0x75 u */ - {160, 3, 4, 4, 0, -4}, /* 0x76 v */ - {162, 3, 4, 4, 0, -4}, /* 0x77 w */ - {164, 3, 4, 4, 0, -4}, /* 0x78 x */ - {166, 3, 5, 4, 0, -4}, /* 0x79 y */ - {168, 3, 4, 4, 0, -4}, /* 0x7A z */ - {170, 3, 5, 4, 0, -5}, /* 0x7B braceleft */ - {172, 1, 5, 2, 0, -5}, /* 0x7C bar */ - {173, 3, 5, 4, 0, -5}, /* 0x7D braceright */ - {175, 3, 2, 4, 0, -5}, /* 0x7E asciitilde */ -#if (TOMTHUMB_USE_EXTENDED) - {176, 1, 5, 2, 0, -5}, /* 0xA1 exclamdown */ - {177, 3, 5, 4, 0, -5}, /* 0xA2 cent */ - {179, 3, 5, 4, 0, -5}, /* 0xA3 sterling */ - {181, 3, 5, 4, 0, -5}, /* 0xA4 currency */ - {183, 3, 5, 4, 0, -5}, /* 0xA5 yen */ - {185, 1, 5, 2, 0, -5}, /* 0xA6 brokenbar */ - {186, 3, 5, 4, 0, -5}, /* 0xA7 section */ - {188, 3, 1, 4, 0, -5}, /* 0xA8 dieresis */ - {189, 3, 3, 4, 0, -5}, /* 0xA9 copyright */ - {191, 3, 5, 4, 0, -5}, /* 0xAA ordfeminine */ - {193, 2, 3, 3, 0, -5}, /* 0xAB guillemotleft */ - {194, 3, 2, 4, 0, -4}, /* 0xAC logicalnot */ - {195, 2, 1, 3, 0, -3}, /* 0xAD softhyphen */ - {196, 3, 3, 4, 0, -5}, /* 0xAE registered */ - {198, 3, 1, 4, 0, -5}, /* 0xAF macron */ - {199, 3, 3, 4, 0, -5}, /* 0xB0 degree */ - {201, 3, 5, 4, 0, -5}, /* 0xB1 plusminus */ - {203, 3, 3, 4, 0, -5}, /* 0xB2 twosuperior */ - {205, 3, 3, 4, 0, -5}, /* 0xB3 threesuperior */ - {207, 2, 2, 3, 0, -5}, /* 0xB4 acute */ - {208, 3, 5, 4, 0, -5}, /* 0xB5 mu */ - {210, 3, 5, 4, 0, -5}, /* 0xB6 paragraph */ - {212, 3, 3, 4, 0, -4}, /* 0xB7 periodcentered */ - {214, 3, 3, 4, 0, -3}, /* 0xB8 cedilla */ - {216, 1, 3, 2, 0, -5}, /* 0xB9 onesuperior */ - {217, 3, 5, 4, 0, -5}, /* 0xBA ordmasculine */ - {219, 2, 3, 3, 0, -5}, /* 0xBB guillemotright */ - {220, 3, 5, 4, 0, -5}, /* 0xBC onequarter */ - {222, 3, 5, 4, 0, -5}, /* 0xBD onehalf */ - {224, 3, 5, 4, 0, -5}, /* 0xBE threequarters */ - {226, 3, 5, 4, 0, -5}, /* 0xBF questiondown */ - {228, 3, 5, 4, 0, -5}, /* 0xC0 Agrave */ - {230, 3, 5, 4, 0, -5}, /* 0xC1 Aacute */ - {232, 3, 5, 4, 0, -5}, /* 0xC2 Acircumflex */ - {234, 3, 5, 4, 0, -5}, /* 0xC3 Atilde */ - {236, 3, 5, 4, 0, -5}, /* 0xC4 Adieresis */ - {238, 3, 5, 4, 0, -5}, /* 0xC5 Aring */ - {240, 3, 5, 4, 0, -5}, /* 0xC6 AE */ - {242, 3, 6, 4, 0, -5}, /* 0xC7 Ccedilla */ - {245, 3, 5, 4, 0, -5}, /* 0xC8 Egrave */ - {247, 3, 5, 4, 0, -5}, /* 0xC9 Eacute */ - {249, 3, 5, 4, 0, -5}, /* 0xCA Ecircumflex */ - {251, 3, 5, 4, 0, -5}, /* 0xCB Edieresis */ - {253, 3, 5, 4, 0, -5}, /* 0xCC Igrave */ - {255, 3, 5, 4, 0, -5}, /* 0xCD Iacute */ - {257, 3, 5, 4, 0, -5}, /* 0xCE Icircumflex */ - {259, 3, 5, 4, 0, -5}, /* 0xCF Idieresis */ - {261, 3, 5, 4, 0, -5}, /* 0xD0 Eth */ - {263, 3, 5, 4, 0, -5}, /* 0xD1 Ntilde */ - {265, 3, 5, 4, 0, -5}, /* 0xD2 Ograve */ - {267, 3, 5, 4, 0, -5}, /* 0xD3 Oacute */ - {269, 3, 5, 4, 0, -5}, /* 0xD4 Ocircumflex */ - {271, 3, 5, 4, 0, -5}, /* 0xD5 Otilde */ - {273, 3, 5, 4, 0, -5}, /* 0xD6 Odieresis */ - {275, 3, 3, 4, 0, -4}, /* 0xD7 multiply */ - {277, 3, 5, 4, 0, -5}, /* 0xD8 Oslash */ - {279, 3, 5, 4, 0, -5}, /* 0xD9 Ugrave */ - {281, 3, 5, 4, 0, -5}, /* 0xDA Uacute */ - {283, 3, 5, 4, 0, -5}, /* 0xDB Ucircumflex */ - {285, 3, 5, 4, 0, -5}, /* 0xDC Udieresis */ - {287, 3, 5, 4, 0, -5}, /* 0xDD Yacute */ - {289, 3, 5, 4, 0, -5}, /* 0xDE Thorn */ - {291, 3, 6, 4, 0, -5}, /* 0xDF germandbls */ - {294, 3, 5, 4, 0, -5}, /* 0xE0 agrave */ - {296, 3, 5, 4, 0, -5}, /* 0xE1 aacute */ - {298, 3, 5, 4, 0, -5}, /* 0xE2 acircumflex */ - {300, 3, 5, 4, 0, -5}, /* 0xE3 atilde */ - {302, 3, 5, 4, 0, -5}, /* 0xE4 adieresis */ - {304, 3, 5, 4, 0, -5}, /* 0xE5 aring */ - {306, 3, 4, 4, 0, -4}, /* 0xE6 ae */ - {308, 3, 5, 4, 0, -4}, /* 0xE7 ccedilla */ - {310, 3, 5, 4, 0, -5}, /* 0xE8 egrave */ - {312, 3, 5, 4, 0, -5}, /* 0xE9 eacute */ - {314, 3, 5, 4, 0, -5}, /* 0xEA ecircumflex */ - {316, 3, 5, 4, 0, -5}, /* 0xEB edieresis */ - {318, 2, 5, 3, 0, -5}, /* 0xEC igrave */ - {320, 2, 5, 3, 0, -5}, /* 0xED iacute */ - {322, 3, 5, 4, 0, -5}, /* 0xEE icircumflex */ - {324, 3, 5, 4, 0, -5}, /* 0xEF idieresis */ - {326, 3, 5, 4, 0, -5}, /* 0xF0 eth */ - {328, 3, 5, 4, 0, -5}, /* 0xF1 ntilde */ - {330, 3, 5, 4, 0, -5}, /* 0xF2 ograve */ - {332, 3, 5, 4, 0, -5}, /* 0xF3 oacute */ - {334, 3, 5, 4, 0, -5}, /* 0xF4 ocircumflex */ - {336, 3, 5, 4, 0, -5}, /* 0xF5 otilde */ - {338, 3, 5, 4, 0, -5}, /* 0xF6 odieresis */ - {340, 3, 5, 4, 0, -5}, /* 0xF7 divide */ - {342, 3, 4, 4, 0, -4}, /* 0xF8 oslash */ - {344, 3, 5, 4, 0, -5}, /* 0xF9 ugrave */ - {346, 3, 5, 4, 0, -5}, /* 0xFA uacute */ - {348, 3, 5, 4, 0, -5}, /* 0xFB ucircumflex */ - {350, 3, 5, 4, 0, -5}, /* 0xFC udieresis */ - {352, 3, 6, 4, 0, -5}, /* 0xFD yacute */ - {355, 3, 5, 4, 0, -4}, /* 0xFE thorn */ - {357, 3, 6, 4, 0, -5}, /* 0xFF ydieresis */ - {360, 1, 1, 2, 0, -1}, /* 0x11D gcircumflex */ - {361, 3, 5, 4, 0, -5}, /* 0x152 OE */ - {363, 3, 4, 4, 0, -4}, /* 0x153 oe */ - {365, 3, 5, 4, 0, -5}, /* 0x160 Scaron */ - {367, 3, 5, 4, 0, -5}, /* 0x161 scaron */ - {369, 3, 5, 4, 0, -5}, /* 0x178 Ydieresis */ - {371, 3, 5, 4, 0, -5}, /* 0x17D Zcaron */ - {373, 3, 5, 4, 0, -5}, /* 0x17E zcaron */ - {375, 1, 1, 2, 0, -1}, /* 0xEA4 uni0EA4 */ - {376, 1, 1, 2, 0, -1}, /* 0x13A0 uni13A0 */ - {377, 1, 1, 2, 0, -3}, /* 0x2022 bullet */ - {378, 3, 1, 4, 0, -1}, /* 0x2026 ellipsis */ - {379, 3, 5, 4, 0, -5}, /* 0x20AC Euro */ - {381, 4, 5, 5, 0, -5}, /* 0xFFFD uniFFFD */ -#endif /* (TOMTHUMB_USE_EXTENDED) */ -}; - -const GFXfont TomThumb PROGMEM = {(uint8_t *)TomThumbBitmaps, - (GFXglyph *)TomThumbGlyphs, 0x20, 0x7E, 6}; diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/README.md b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/README.md deleted file mode 100644 index 6f36460..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# Adafruit GFX Library ![Build Status](https://github.com/adafruit/Adafruit-GFX-Library/workflows/Arduino%20Library%20CI/badge.svg) - -This is the core graphics library for all our displays, providing a common set of graphics primitives (points, lines, circles, etc.). It needs to be paired with a hardware-specific library for each display device we carry (to handle the lower-level functions). - -Adafruit invests time and resources providing this open source code, please support Adafruit and open-source hardware by purchasing products from Adafruit! - -Written by Limor Fried/Ladyada for Adafruit Industries. -BSD license, check license.txt for more information. -All text above must be included in any redistribution. - -Recent Arduino IDE releases include the Library Manager for easy installation. Otherwise, to download, click the DOWNLOAD ZIP button, uncompress and rename the uncompressed folder Adafruit_GFX. Confirm that the Adafruit_GFX folder contains Adafruit_GFX.cpp and Adafruit_GFX.h. Place the Adafruit_GFX library folder your ArduinoSketchFolder/Libraries/ folder. You may need to create the Libraries subfolder if its your first library. Restart the IDE. - -**You will also need to install the latest Adafruit BusIO library.** Search for "Adafruit BusIO" in the library manager, or install by hand from https://github.com/adafruit/Adafruit_BusIO - -# Useful Resources - -- Image2Code: This is a handy Java GUI utility to convert a BMP file into the array code necessary to display the image with the drawBitmap function. Check out the code at ehubin's GitHub repository: https://github.com/ehubin/Adafruit-GFX-Library/tree/master/Img2Code - -- drawXBitmap function: You can use the GIMP photo editor to save a .xbm file and use the array saved in the file to draw a bitmap with the drawXBitmap function. See the pull request here for more details: https://github.com/adafruit/Adafruit-GFX-Library/pull/31 - -- 'Fonts' folder contains bitmap fonts for use with recent (1.1 and later) Adafruit_GFX. To use a font in your Arduino sketch, \#include the corresponding .h file and pass address of GFXfont struct to setFont(). Pass NULL to revert to 'classic' fixed-space bitmap font. - -- 'fontconvert' folder contains a command-line tool for converting TTF fonts to Adafruit_GFX header format. - -- You can also use [this GFX Font Customiser tool](https://github.com/tchapi/Adafruit-GFX-Font-Customiser) (_web version [here](https://tchapi.github.io/Adafruit-GFX-Font-Customiser/)_) to customize or correct the output from [fontconvert](https://github.com/adafruit/Adafruit-GFX-Library/tree/master/fontconvert), and create fonts with only a subset of characters to optimize size. - ---- - -### Roadmap - -The PRIME DIRECTIVE is to maintain backward compatibility with existing Arduino sketches -- many are hosted elsewhere and don't track changes here, some are in print and can never be changed! This "little" library has grown organically over time and sometimes we paint ourselves into a design corner and just have to live with it or add progressively more ungainly workarounds. - -**We are grateful for everyone's contributions, but pull requests for the following will NOT be merged:** - -- Additional or incompatible font formats (see Prime Directive above). There are already two formats and the code is quite bloaty there as it is. This also creates liabilities for tools and documentation. What's there isn't perfect but it does the job. - -- Additional or incompatible bitmap formats, for similar reasons. It's getting messy. - -- Adding background color to custom fonts to erase prior screen contents. The ONLY acceptable methods are to clear the area with a filled rect, or (to avoid flicker) draw text into a GFXcanvas1 and copy to screen with drawBitmap() w/background color. This is on purpose and by design. We've discussed this. Glyphs can overlap. - -- Scrolling, whether hardware- or software-based. Such implementations tend to rely on hardware-specific features (not universally available), read access to the screen's framebuffer (ditto) and/or the addition of virtual functions in GFX which them must be added in *every* subclass, of which there are many. The GFX API is largely "set" at this point and this is just a limitation we live with now. - -- Please don't reformat code for the sake of reformatting code. The resulting large "visual diff" makes it impossible to untangle actual bug fixes from merely rearranged lines. clang-format will be the final arbiter. - -- Please no more pentagram-drawing PRs. Any oddly-specific drawing functions can go in your own code and aren't helpful in a library context. - -If you *must* have one of these features, consider creating a fork with the features required for your project...it's easy to keep synced with the upstream code. diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/component.mk b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/component.mk deleted file mode 100644 index 049f190..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/component.mk +++ /dev/null @@ -1 +0,0 @@ -COMPONENT_ADD_INCLUDEDIRS = . diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino deleted file mode 100644 index d4e3370..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino +++ /dev/null @@ -1,113 +0,0 @@ -/*** -This example is intended to demonstrate the use of getPixel() versus -getRawPixel() and the fast horizontal and vertical drawing routines -in the GFXcanvas family of classes, - -When using the GFXcanvas* classes as the image buffer for a hardware driver, -there is a need to get individual pixel color values at given physical -coordinates. Rather than subclasses or client classes call getBuffer() and -reinterpret the byte layout of the buffer, two methods are added to each of the -GFXcanvas* classes that allow fetching of specific pixel values. - - * getPixel(x, y) : Gets the pixel color value at the rotated coordinates in -the image. - * getRawPixel(x,y) : Gets the pixel color value at the unrotated coordinates -in the image. This is useful for getting the pixel value to map to a hardware -pixel location. This method was made protected as only the hardware driver -should be accessing it. - -The GFXcanvas*SerialDemo classes in this example will print to Serial the -contents of the underlying GFXcanvas buffer in both the current rotated layout -and the underlying physical layout. -***/ - -#include "GFXcanvasSerialDemo.h" -#include - -void setup() { - Serial.begin(115200); - - // first create a rectangular GFXcanvas8SerialDemo object and draw to it - GFXcanvas8SerialDemo demo8(21, 11); - - demo8.fillScreen(0x00); - demo8.setRotation(1); // now canvas is 11x21 - demo8.fillCircle(5, 10, 5, 0xAA); - demo8.writeFastHLine(0, 0, 11, 0x11); - demo8.writeFastHLine(10, 10, -11, 0x22); - demo8.writeFastHLine(0, 20, 11, 0x33); - demo8.writeFastVLine(0, 0, 21, 0x44); - demo8.writeFastVLine(10, 20, -21, 0x55); - - Serial.println("Demonstrating GFXcanvas rotated and raw pixels.\n"); - - // print it out rotated - - Serial.println("The canvas's content in the rotation of '0':\n"); - demo8.setRotation(0); - demo8.print(true); - Serial.println("\n"); - - Serial.println("The canvas's content in the rotation of '1' (which is what " - "it was drawn in):\n"); - demo8.setRotation(1); - demo8.print(true); - Serial.println("\n"); - - Serial.println("The canvas's content in the rotation of '2':\n"); - demo8.setRotation(2); - demo8.print(true); - Serial.println("\n"); - - Serial.println("The canvas's content in the rotation of '3':\n"); - demo8.setRotation(3); - demo8.print(true); - Serial.println("\n"); - - // print it out unrotated - Serial.println("The canvas's content in it's raw, physical layout:\n"); - demo8.print(false); - Serial.println("\n"); - - // Demonstrate GFXcanvas1SerialDemo - - GFXcanvas1SerialDemo demo1(21, 11); - demo1.fillScreen(0); - demo1.setRotation(0); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(1); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(2); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(3); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(1); - demo1.fillRect(3, 8, 5, 5, 1); - - Serial.println("\nThe GFXcanvas1 raw content after drawing a fast horizontal " - "line in each rotation:\n"); - demo1.print(false); - Serial.println("\n"); - - // Demonstrate GFXcanvas16SerialDemo - - GFXcanvas16SerialDemo demo16(21, 11); - demo16.fillScreen(0); - demo16.setRotation(0); - demo16.writeFastHLine(0, 0, 9, 0x1111); - demo16.setRotation(1); - demo16.writeFastHLine(0, 0, 9, 0x2222); - demo16.setRotation(2); - demo16.writeFastHLine(0, 0, 9, 0x3333); - demo16.setRotation(3); - demo16.writeFastHLine(0, 0, 9, 0x4444); - demo16.setRotation(1); - demo16.fillRect(3, 8, 5, 5, 0x8888); - - Serial.println("\nThe GFXcanvas16 raw content after drawing a fast " - "horizontal line in each rotation:\n"); - demo16.print(false); - Serial.println("\n"); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp deleted file mode 100644 index ed83a96..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp +++ /dev/null @@ -1,92 +0,0 @@ -#include "GFXcanvasSerialDemo.h" -#include - -GFXcanvas1SerialDemo::GFXcanvas1SerialDemo(uint16_t w, uint16_t h) - : GFXcanvas1(w, h) {} - -void GFXcanvas1SerialDemo::print(bool rotated) { - char pixel_buffer[8]; - uint16_t width, height; - - if (rotated) { - width = this->width(); - height = this->height(); - } else { - width = this->WIDTH; - height = this->HEIGHT; - } - - for (uint16_t y = 0; y < height; y++) { - for (uint16_t x = 0; x < width; x++) { - bool pixel; - if (rotated) { - pixel = this->getPixel(x, y); - } else { - pixel = this->getRawPixel(x, y); - } - sprintf(pixel_buffer, " %d", pixel); - Serial.print(pixel_buffer); - } - Serial.print("\n"); - } -} - -GFXcanvas8SerialDemo::GFXcanvas8SerialDemo(uint16_t w, uint16_t h) - : GFXcanvas8(w, h) {} - -void GFXcanvas8SerialDemo::print(bool rotated) { - char pixel_buffer[8]; - uint16_t width, height; - - if (rotated) { - width = this->width(); - height = this->height(); - } else { - width = this->WIDTH; - height = this->HEIGHT; - } - - for (uint16_t y = 0; y < height; y++) { - for (uint16_t x = 0; x < width; x++) { - uint8_t pixel; - if (rotated) { - pixel = this->getPixel(x, y); - } else { - pixel = this->getRawPixel(x, y); - } - sprintf(pixel_buffer, " %02x", pixel); - Serial.print(pixel_buffer); - } - Serial.print("\n"); - } -} - -GFXcanvas16SerialDemo::GFXcanvas16SerialDemo(uint16_t w, uint16_t h) - : GFXcanvas16(w, h) {} - -void GFXcanvas16SerialDemo::print(bool rotated) { - char pixel_buffer[8]; - uint16_t width, height; - - if (rotated) { - width = this->width(); - height = this->height(); - } else { - width = this->WIDTH; - height = this->HEIGHT; - } - - for (uint16_t y = 0; y < height; y++) { - for (uint16_t x = 0; x < width; x++) { - uint16_t pixel; - if (rotated) { - pixel = this->getPixel(x, y); - } else { - pixel = this->getRawPixel(x, y); - } - sprintf(pixel_buffer, " %04x", pixel); - Serial.print(pixel_buffer); - } - Serial.print("\n"); - } -} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h deleted file mode 100644 index 80589d9..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef __GFXcanvasSerialDemo__ -#define __GFXcanvasSerialDemo__ -#include - -/**********************************************************************/ -/*! - @brief Demonstrates using the GFXconvas classes as the backing store - for a device driver. -*/ -/**********************************************************************/ -class GFXcanvas1SerialDemo : public GFXcanvas1 { -public: - GFXcanvas1SerialDemo(uint16_t w, uint16_t h); - - /**********************************************************************/ - /*! - @brief Prints the current contents of the canvas to Serial - @param rotated true to print according to the current GFX rotation, - false to print to the native rotation of the canvas (or unrotated). - */ - /**********************************************************************/ - void print(bool rotated); -}; - -/**********************************************************************/ -/*! - @brief Demonstrates using the GFXconvas classes as the backing store - for a device driver. -*/ -/**********************************************************************/ -class GFXcanvas8SerialDemo : public GFXcanvas8 { -public: - GFXcanvas8SerialDemo(uint16_t w, uint16_t h); - - /**********************************************************************/ - /*! - @brief Prints the current contents of the canvas to Serial - @param rotated true to print according to the current GFX rotation, - false to print to the native rotation of the canvas (or unrotated). - */ - /**********************************************************************/ - void print(bool rotated); -}; - -/**********************************************************************/ -/*! - @brief Demonstrates using the GFXconvas classes as the backing store - for a device driver. -*/ -/**********************************************************************/ -class GFXcanvas16SerialDemo : public GFXcanvas16 { -public: - GFXcanvas16SerialDemo(uint16_t w, uint16_t h); - - /**********************************************************************/ - /*! - @brief Prints the current contents of the canvas to Serial - @param rotated true to print according to the current GFX rotation, - false to print to the native rotation of the canvas (or unrotated). - */ - /**********************************************************************/ - void print(bool rotated); -}; - -#endif // __GFXcanvasSerialDemo__ diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino deleted file mode 100644 index d141839..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino +++ /dev/null @@ -1,365 +0,0 @@ -/*************************************************** - This is our GFX example for the Adafruit ILI9341 Breakout and Shield - ----> http://www.adafruit.com/products/1651 - - Check out the links above for our tutorials and wiring diagrams - These displays use SPI to communicate, 4 or 5 pins are required to - interface (RST is optional) - Adafruit invests time and resources providing this open source code, - please support Adafruit and open-source hardware by purchasing - products from Adafruit! - - Written by Limor Fried/Ladyada for Adafruit Industries. - MIT license, all text above must be included in any redistribution - ****************************************************/ - - -#include "SPI.h" -#include "Adafruit_GFX.h" -#include "Adafruit_ILI9341.h" - -// For the Adafruit shield, these are the default. -#define TFT_DC 9 -#define TFT_CS 10 - -// Use hardware SPI (on Uno, #13, #12, #11) and the above for CS/DC -Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC); -// If using the breakout, change pins as desired -//Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_MOSI, TFT_CLK, TFT_RST, TFT_MISO); - -void setup() { - Serial.begin(9600); - Serial.println("ILI9341 Test!"); - - tft.begin(); - - // read diagnostics (optional but can help debug problems) - uint8_t x = tft.readcommand8(ILI9341_RDMODE); - Serial.print("Display Power Mode: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDMADCTL); - Serial.print("MADCTL Mode: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDPIXFMT); - Serial.print("Pixel Format: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDIMGFMT); - Serial.print("Image Format: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDSELFDIAG); - Serial.print("Self Diagnostic: 0x"); Serial.println(x, HEX); - - Serial.println(F("Benchmark Time (microseconds)")); - delay(10); - Serial.print(F("Screen fill ")); - Serial.println(testFillScreen()); - delay(500); - - Serial.print(F("Text ")); - Serial.println(testText()); - delay(3000); - - Serial.print(F("Lines ")); - Serial.println(testLines(ILI9341_CYAN)); - delay(500); - - Serial.print(F("Horiz/Vert Lines ")); - Serial.println(testFastLines(ILI9341_RED, ILI9341_BLUE)); - delay(500); - - Serial.print(F("Rectangles (outline) ")); - Serial.println(testRects(ILI9341_GREEN)); - delay(500); - - Serial.print(F("Rectangles (filled) ")); - Serial.println(testFilledRects(ILI9341_YELLOW, ILI9341_MAGENTA)); - delay(500); - - Serial.print(F("Circles (filled) ")); - Serial.println(testFilledCircles(10, ILI9341_MAGENTA)); - - Serial.print(F("Circles (outline) ")); - Serial.println(testCircles(10, ILI9341_WHITE)); - delay(500); - - Serial.print(F("Triangles (outline) ")); - Serial.println(testTriangles()); - delay(500); - - Serial.print(F("Triangles (filled) ")); - Serial.println(testFilledTriangles()); - delay(500); - - Serial.print(F("Rounded rects (outline) ")); - Serial.println(testRoundRects()); - delay(500); - - Serial.print(F("Rounded rects (filled) ")); - Serial.println(testFilledRoundRects()); - delay(500); - - Serial.println(F("Done!")); - -} - - -void loop(void) { - for(uint8_t rotation=0; rotation<4; rotation++) { - tft.setRotation(rotation); - testText(); - delay(1000); - } -} - -unsigned long testFillScreen() { - unsigned long start = micros(); - tft.fillScreen(ILI9341_BLACK); - yield(); - tft.fillScreen(ILI9341_RED); - yield(); - tft.fillScreen(ILI9341_GREEN); - yield(); - tft.fillScreen(ILI9341_BLUE); - yield(); - tft.fillScreen(ILI9341_BLACK); - yield(); - return micros() - start; -} - -unsigned long testText() { - tft.fillScreen(ILI9341_BLACK); - unsigned long start = micros(); - tft.setCursor(0, 0); - tft.setTextColor(ILI9341_WHITE); tft.setTextSize(1); - tft.println("Hello World!"); - tft.setTextColor(ILI9341_YELLOW); tft.setTextSize(2); - tft.println(1234.56); - tft.setTextColor(ILI9341_RED); tft.setTextSize(3); - tft.println(0xDEADBEEF, HEX); - tft.println(); - tft.setTextColor(ILI9341_GREEN); - tft.setTextSize(5); - tft.println("Groop"); - tft.setTextSize(2); - tft.println("I implore thee,"); - tft.setTextSize(1); - tft.println("my foonting turlingdromes."); - tft.println("And hooptiously drangle me"); - tft.println("with crinkly bindlewurdles,"); - tft.println("Or I will rend thee"); - tft.println("in the gobberwarts"); - tft.println("with my blurglecruncheon,"); - tft.println("see if I don't!"); - return micros() - start; -} - -unsigned long testLines(uint16_t color) { - unsigned long start, t; - int x1, y1, x2, y2, - w = tft.width(), - h = tft.height(); - - tft.fillScreen(ILI9341_BLACK); - yield(); - - x1 = y1 = 0; - y2 = h - 1; - start = micros(); - for(x2=0; x20; i-=6) { - i2 = i / 2; - start = micros(); - tft.fillRect(cx-i2, cy-i2, i, i, color1); - t += micros() - start; - // Outlines are not included in timing results - tft.drawRect(cx-i2, cy-i2, i, i, color2); - yield(); - } - - return t; -} - -unsigned long testFilledCircles(uint8_t radius, uint16_t color) { - unsigned long start; - int x, y, w = tft.width(), h = tft.height(), r2 = radius * 2; - - tft.fillScreen(ILI9341_BLACK); - start = micros(); - for(x=radius; x10; i-=5) { - start = micros(); - tft.fillTriangle(cx, cy - i, cx - i, cy + i, cx + i, cy + i, - tft.color565(0, i*10, i*10)); - t += micros() - start; - tft.drawTriangle(cx, cy - i, cx - i, cy + i, cx + i, cy + i, - tft.color565(i*10, i*10, 0)); - yield(); - } - - return t; -} - -unsigned long testRoundRects() { - unsigned long start; - int w, i, i2, - cx = tft.width() / 2 - 1, - cy = tft.height() / 2 - 1; - - tft.fillScreen(ILI9341_BLACK); - w = min(tft.width(), tft.height()); - start = micros(); - for(i=0; i20; i-=6) { - i2 = i / 2; - tft.fillRoundRect(cx-i2, cy-i2, i, i, i/8, tft.color565(0, i, 0)); - yield(); - } - - return micros() - start; -} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/Makefile b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/Makefile deleted file mode 100644 index 47f5a0e..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -all: fontconvert - -CC = gcc -CFLAGS = -Wall -I/usr/local/include/freetype2 -I/usr/include/freetype2 -I/usr/include -LIBS = -lfreetype - -fontconvert: fontconvert.c - $(CC) $(CFLAGS) $< $(LIBS) -o $@ - strip $@ - -clean: - rm -f fontconvert diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/bdf2adafruit.py b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/bdf2adafruit.py deleted file mode 100644 index 9d9ee8a..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/bdf2adafruit.py +++ /dev/null @@ -1,135 +0,0 @@ -#!/usr/bin/python2 - -# MIT License. - -# Copyright (c) 2016 William Skellenger -# -# 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. - -# This small script is designed to mostly take a BDF file and convert it to a -# format that can largely be cut/pasted as an Adafruit-format font. -# It was written in an hour or so and did what I needed it to do. -# I used it for one file. Maybe it bombs on other files. -# William Skellenger, Feb 2016 -# (email: williamj@skellenger.net) -# (Twitter: @skelliam) -# -# Usage: bdf2adafruit.py > out.txt -# -# Once you have out.txt you can cut/paste the contents into a new font -# header file as part of the Adafruit GFX library. - -import sys - -myfile = open(sys.argv[1]) - -processing = 0 -getting_rows = 0 - -chars = [] -bitmapData = [] - -class Glyph: - encoding = -1 - rows = [] - comment = "" - offset = -1 - width = 0 - height = 0 - advance = 0 - xoffs = 0 - yoffs = 0 - def __init__(self, comment): - self.comment = comment - self.rows = [] - -for line in myfile.readlines(): - if 'STARTCHAR' in line: - processing = 1 - vals = line.split() - g = Glyph(vals[1]) - #g.width = 8 #in this example always 8 bits wide - elif 'ENDCHAR' in line: - dataByteCompressed = 0 - dataByteCompressedIndex = 8 - g.height = len(bitmapData) - for value in bitmapData: - bitIndex = 0 - while bitIndex < g.width: - bit = (value >> (7 - bitIndex)) & 0x01 - dataByteCompressed |= bit << (dataByteCompressedIndex - 1) - dataByteCompressedIndex -= 1 - if dataByteCompressedIndex == 0: - dataByteCompressedIndex = 8 - g.rows.append(dataByteCompressed) - dataByteCompressed = 0 - bitIndex += 1 - if 8 != dataByteCompressedIndex: - g.rows.append(dataByteCompressed) - - chars.append(g) #append the completed glyph into list - processing = 0 - getting_rows = 0 - bitmapData.clear() - - if processing: - if 'ENCODING' in line: - vals = line.split() - g.encoding = int(vals[1]) - elif 'DWIDTH' in line: - vals = line.split() - #g.advance = int(vals[1]) #cursor advance seems to be the first number in DWIDTH - elif 'BBX' in line: - vals = line.split() - g.xoffs = 0 - g.yoffs = -(int(vals[2]) + int(vals[4])) - g.advance = (int(vals[1]) + 1) #x bounding box + 1 - g.width = int(vals[1]) - elif 'BITMAP' in line: - getting_rows = 1 - elif getting_rows: - #g.rows.append(int(line, 16)) #append pixel rows into glyph's list of rows - bitmapData.append(int(line, 16)) - -print - -i=0 -for char in chars: - char.offset = i - print("\t", end='') - num = 3 - for row in char.rows: - if num != 3: - print(" ", end = '') - print("0x%02X," %(row), end = ''), - i+=1 - num-=1 - - if num == 1: - print("\t\t", end = '') - if num == 2: - print("\t\t\t", end = '') - print("\t/* 0x%02X %s */" %(char.encoding, char.comment)) - -for char in chars: - # offset, bit-width, bit-height, advance cursor, x offset, y offset - print("\t{ %d, %d, %d, %d, %d, %d }, /* 0x%02X %s */" %( - char.offset, char.width, char.height, - char.advance, char.xoffs, char.yoffs, - char.encoding, char.comment)) diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert.c b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert.c deleted file mode 100644 index 302d1da..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert.c +++ /dev/null @@ -1,291 +0,0 @@ -/* -TrueType to Adafruit_GFX font converter. Derived from Peter Jakobs' -Adafruit_ftGFX fork & makefont tool, and Paul Kourany's Adafruit_mfGFX. - -NOT AN ARDUINO SKETCH. This is a command-line tool for preprocessing -fonts to be used with the Adafruit_GFX Arduino library. - -For UNIX-like systems. Outputs to stdout; redirect to header file, e.g.: - ./fontconvert ~/Library/Fonts/FreeSans.ttf 18 > FreeSans18pt7b.h - -REQUIRES FREETYPE LIBRARY. www.freetype.org - -Currently this only extracts the printable 7-bit ASCII chars of a font. -Will eventually extend with some int'l chars a la ftGFX, not there yet. -Keep 7-bit fonts around as an option in that case, more compact. - -See notes at end for glyph nomenclature & other tidbits. -*/ -#ifndef ARDUINO - -#include -#include -#include -#include -#include FT_GLYPH_H -#include FT_MODULE_H -#include FT_TRUETYPE_DRIVER_H -#include "../gfxfont.h" // Adafruit_GFX font structures - -#define DPI 141 // Approximate res. of Adafruit 2.8" TFT - -// Accumulate bits for output, with periodic hexadecimal byte write -void enbit(uint8_t value) { - static uint8_t row = 0, sum = 0, bit = 0x80, firstCall = 1; - if (value) - sum |= bit; // Set bit if needed - if (!(bit >>= 1)) { // Advance to next bit, end of byte reached? - if (!firstCall) { // Format output table nicely - if (++row >= 12) { // Last entry on line? - printf(",\n "); // Newline format output - row = 0; // Reset row counter - } else { // Not end of line - printf(", "); // Simple comma delim - } - } - printf("0x%02X", sum); // Write byte value - sum = 0; // Clear for next byte - bit = 0x80; // Reset bit counter - firstCall = 0; // Formatting flag - } -} - -int main(int argc, char *argv[]) { - int i, j, err, size, first = ' ', last = '~', bitmapOffset = 0, x, y, byte; - char *fontName, c, *ptr; - FT_Library library; - FT_Face face; - FT_Glyph glyph; - FT_Bitmap *bitmap; - FT_BitmapGlyphRec *g; - GFXglyph *table; - uint8_t bit; - - // Parse command line. Valid syntaxes are: - // fontconvert [filename] [size] - // fontconvert [filename] [size] [last char] - // fontconvert [filename] [size] [first char] [last char] - // Unless overridden, default first and last chars are - // ' ' (space) and '~', respectively - - if (argc < 3) { - fprintf(stderr, "Usage: %s fontfile size [first] [last]\n", argv[0]); - return 1; - } - - size = atoi(argv[2]); - - if (argc == 4) { - last = atoi(argv[3]); - } else if (argc == 5) { - first = atoi(argv[3]); - last = atoi(argv[4]); - } - - if (last < first) { - i = first; - first = last; - last = i; - } - - ptr = strrchr(argv[1], '/'); // Find last slash in filename - if (ptr) - ptr++; // First character of filename (path stripped) - else - ptr = argv[1]; // No path; font in local dir. - - // Allocate space for font name and glyph table - if ((!(fontName = malloc(strlen(ptr) + 20))) || - (!(table = (GFXglyph *)malloc((last - first + 1) * sizeof(GFXglyph))))) { - fprintf(stderr, "Malloc error\n"); - return 1; - } - - // Derive font table names from filename. Period (filename - // extension) is truncated and replaced with the font size & bits. - strcpy(fontName, ptr); - ptr = strrchr(fontName, '.'); // Find last period (file ext) - if (!ptr) - ptr = &fontName[strlen(fontName)]; // If none, append - // Insert font size and 7/8 bit. fontName was alloc'd w/extra - // space to allow this, we're not sprintfing into Forbidden Zone. - sprintf(ptr, "%dpt%db", size, (last > 127) ? 8 : 7); - // Space and punctuation chars in name replaced w/ underscores. - for (i = 0; (c = fontName[i]); i++) { - if (isspace(c) || ispunct(c)) - fontName[i] = '_'; - } - - // Init FreeType lib, load font - if ((err = FT_Init_FreeType(&library))) { - fprintf(stderr, "FreeType init error: %d", err); - return err; - } - - // Use TrueType engine version 35, without subpixel rendering. - // This improves clarity of fonts since this library does not - // support rendering multiple levels of gray in a glyph. - // See https://github.com/adafruit/Adafruit-GFX-Library/issues/103 - FT_UInt interpreter_version = TT_INTERPRETER_VERSION_35; - FT_Property_Set(library, "truetype", "interpreter-version", - &interpreter_version); - - if ((err = FT_New_Face(library, argv[1], 0, &face))) { - fprintf(stderr, "Font load error: %d", err); - FT_Done_FreeType(library); - return err; - } - - // << 6 because '26dot6' fixed-point format - FT_Set_Char_Size(face, size << 6, 0, DPI, 0); - - // Currently all symbols from 'first' to 'last' are processed. - // Fonts may contain WAY more glyphs than that, but this code - // will need to handle encoding stuff to deal with extracting - // the right symbols, and that's not done yet. - // fprintf(stderr, "%ld glyphs\n", face->num_glyphs); - - printf("const uint8_t %sBitmaps[] PROGMEM = {\n ", fontName); - - // Process glyphs and output huge bitmap data array - for (i = first, j = 0; i <= last; i++, j++) { - // MONO renderer provides clean image with perfect crop - // (no wasted pixels) via bitmap struct. - if ((err = FT_Load_Char(face, i, FT_LOAD_TARGET_MONO))) { - fprintf(stderr, "Error %d loading char '%c'\n", err, i); - continue; - } - - if ((err = FT_Render_Glyph(face->glyph, FT_RENDER_MODE_MONO))) { - fprintf(stderr, "Error %d rendering char '%c'\n", err, i); - continue; - } - - if ((err = FT_Get_Glyph(face->glyph, &glyph))) { - fprintf(stderr, "Error %d getting glyph '%c'\n", err, i); - continue; - } - - bitmap = &face->glyph->bitmap; - g = (FT_BitmapGlyphRec *)glyph; - - // Minimal font and per-glyph information is stored to - // reduce flash space requirements. Glyph bitmaps are - // fully bit-packed; no per-scanline pad, though end of - // each character may be padded to next byte boundary - // when needed. 16-bit offset means 64K max for bitmaps, - // code currently doesn't check for overflow. (Doesn't - // check that size & offsets are within bounds either for - // that matter...please convert fonts responsibly.) - table[j].bitmapOffset = bitmapOffset; - table[j].width = bitmap->width; - table[j].height = bitmap->rows; - table[j].xAdvance = face->glyph->advance.x >> 6; - table[j].xOffset = g->left; - table[j].yOffset = 1 - g->top; - - for (y = 0; y < bitmap->rows; y++) { - for (x = 0; x < bitmap->width; x++) { - byte = x / 8; - bit = 0x80 >> (x & 7); - enbit(bitmap->buffer[y * bitmap->pitch + byte] & bit); - } - } - - // Pad end of char bitmap to next byte boundary if needed - int n = (bitmap->width * bitmap->rows) & 7; - if (n) { // Pixel count not an even multiple of 8? - n = 8 - n; // # bits to next multiple - while (n--) - enbit(0); - } - bitmapOffset += (bitmap->width * bitmap->rows + 7) / 8; - - FT_Done_Glyph(glyph); - } - - printf(" };\n\n"); // End bitmap array - - // Output glyph attributes table (one per character) - printf("const GFXglyph %sGlyphs[] PROGMEM = {\n", fontName); - for (i = first, j = 0; i <= last; i++, j++) { - printf(" { %5d, %3d, %3d, %3d, %4d, %4d }", table[j].bitmapOffset, - table[j].width, table[j].height, table[j].xAdvance, table[j].xOffset, - table[j].yOffset); - if (i < last) { - printf(", // 0x%02X", i); - if ((i >= ' ') && (i <= '~')) { - printf(" '%c'", i); - } - putchar('\n'); - } - } - printf(" }; // 0x%02X", last); - if ((last >= ' ') && (last <= '~')) - printf(" '%c'", last); - printf("\n\n"); - - // Output font structure - printf("const GFXfont %s PROGMEM = {\n", fontName); - printf(" (uint8_t *)%sBitmaps,\n", fontName); - printf(" (GFXglyph *)%sGlyphs,\n", fontName); - if (face->size->metrics.height == 0) { - // No face height info, assume fixed width and get from a glyph. - printf(" 0x%02X, 0x%02X, %d };\n\n", first, last, table[0].height); - } else { - printf(" 0x%02X, 0x%02X, %ld };\n\n", first, last, - face->size->metrics.height >> 6); - } - printf("// Approx. %d bytes\n", bitmapOffset + (last - first + 1) * 7 + 7); - // Size estimate is based on AVR struct and pointer sizes; - // actual size may vary. - - FT_Done_FreeType(library); - - return 0; -} - -/* ------------------------------------------------------------------------- - -Character metrics are slightly different from classic GFX & ftGFX. -In classic GFX: cursor position is the upper-left pixel of each 5x7 -character; lower extent of most glyphs (except those w/descenders) -is +6 pixels in Y direction. -W/new GFX fonts: cursor position is on baseline, where baseline is -'inclusive' (containing the bottom-most row of pixels in most symbols, -except those with descenders; ftGFX is one pixel lower). - -Cursor Y will be moved automatically when switching between classic -and new fonts. If you switch fonts, any print() calls will continue -along the same baseline. - - ...........#####.. -- yOffset - ..........######.. - ..........######.. - .........#######.. - ........#########. - * = Cursor pos. ........#########. - .......##########. - ......#####..####. - ......#####..####. - *.#.. .....#####...####. - .#.#. ....############## - #...# ...############### - #...# ...############### - ##### ..#####......##### - #...# .#####.......##### -====== #...# ====== #*###.........#### ======= Baseline - || xOffset - -glyph->xOffset and yOffset are pixel offsets, in GFX coordinate space -(+Y is down), from the cursor position to the top-left pixel of the -glyph bitmap. i.e. yOffset is typically negative, xOffset is typically -zero but a few glyphs will have other values (even negative xOffsets -sometimes, totally normal). glyph->xAdvance is the distance to move -the cursor on the X axis after drawing the corresponding symbol. - -There's also some changes with regard to 'background' color and new GFX -fonts (classic fonts unchanged). See Adafruit_GFX.cpp for explanation. -*/ - -#endif /* !ARDUINO */ diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert_win.md b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert_win.md deleted file mode 100644 index 1932841..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert_win.md +++ /dev/null @@ -1,88 +0,0 @@ -### A short guide to use fontconvert.c to create your own fonts using MinGW. - -#### STEP 1: INSTALL MinGW - -Install MinGW (Minimalist GNU for Windows) from [MinGW.org](http://www.mingw.org/). -Please read carefully the instructions found on [Getting started page](http://www.mingw.org/wiki/Getting_Started). -I suggest installing with the "Graphical User Interface Installer". -To complete your initial installation you should further install some "packages". -For our purpose you should only install the "Basic Setup" packages. -To do that: - -1. Open the MinGW Installation Manager -2. From the left panel click "Basic Setup". -3. On the right panel choose "mingw32-base", "mingw-gcc-g++", "mingw-gcc-objc" and "msys-base" -and click "Mark for installation" -4. From the Menu click "Installation" and then "Apply changes". In the pop-up window select "Apply". - - -#### STEP 2: INSTALL Freetype Library - -To read about the freetype project visit [freetype.org](https://www.freetype.org/). -To Download the latest version of freetype go to [download page](http://download.savannah.gnu.org/releases/freetype/) -and choose "freetype-2.7.tar.gz" file (or a newer version if available). -To avoid long cd commands later in the command prompt, I suggest you unzip the file in the C:\ directory. -(I also renamed the folder to "ft27") -Before you build the library it's good to read these articles: -* [Using MSYS with MinGW](http://www.mingw.org/wiki/MSYS) -* [Installation and Use of Supplementary Libraries with MinGW](http://www.mingw.org/wiki/LibraryPathHOWTO) -* [Include Path](http://www.mingw.org/wiki/IncludePathHOWTO) - -Inside the unzipped folder there is another folder named "docs". Open it and read the INSTALL.UNIX (using notepad). -Pay attention to paragraph 3 (Build and Install the Library). So, let's begin the installation. -To give the appropriate commands we will use the MSYS command prompt (not cmd.exe of windows) which is UNIX like. -Follow the path C:\MinGW\msys\1.0 and double click "msys.bat". The command prompt environment appears. -Enter "ft27" directory using the cd commands: -``` -cd /c -cd ft27 -``` - -and then type one by one the commands: -``` -./configure --prefix=/mingw -make -make install -``` -Once you're finished, go inside "C:\MinGW\include" and there should be a new folder named "freetype2". -That, hopefully, means that you have installed the library correctly !! - -#### STEP 3: Build fontconvert.c - -Before proceeding I suggest you make a copy of Adafruit_GFX_library folder in C:\ directory. -Then, inside "fontconvert" folder open the "makefile" with an editor ( I used notepad++). -Change the commands so in the end the program looks like : -``` -all: fontconvert - -CC = gcc -CFLAGS = -Wall -I c:/mingw/include/freetype2 -LIBS = -lfreetype - -fontconvert: fontconvert.c - $(CC) $(CFLAGS) $< $(LIBS) -o $@ - -clean: - rm -f fontconvert -``` -Go back in the command prompt and with a cd command enter the fontconvert directory. -``` -cd /c/adafruit_gfx_library\fontconvert -``` -Give the command: -``` -make -``` -This command will, eventually, create a "fontconvert.exe" file inside fontconvert directory. - -#### STEP 4: Create your own font header files - -Now that you have an executable file, you can use it to create your own fonts to work with Adafruit GFX lib. -So, if we suppose that you already have a .ttf file with your favorite fonts, jump to the command prompt and type: -``` -./fontconvert yourfonts.ttf 9 > yourfonts9pt7b.h -``` -You can read more details at: [learn.adafruit](https://learn.adafruit.com/adafruit-gfx-graphics-library/using-fonts). - -Taraaaaaammm !! you've just created your new font header file. Put it inside the "Fonts" folder, grab a cup of coffee -and start playing with your Arduino (or whatever else ....)+ display module project. diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/makefonts.sh b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/makefonts.sh deleted file mode 100755 index 35f07ea..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/makefonts.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash - -# Ugly little Bash script, generates a set of .h files for GFX using -# GNU FreeFont sources. There are three fonts: 'Mono' (Courier-like), -# 'Sans' (Helvetica-like) and 'Serif' (Times-like); four styles: regular, -# bold, oblique or italic, and bold+oblique or bold+italic; and four -# sizes: 9, 12, 18 and 24 point. No real error checking or anything, -# this just powers through all the combinations, calling the fontconvert -# utility and redirecting the output to a .h file for each combo. - -# Adafruit_GFX repository does not include the source outline fonts -# (huge zipfile, different license) but they're easily acquired: -# http://savannah.gnu.org/projects/freefont/ - -convert=./fontconvert -inpath=~/Desktop/freefont/ -outpath=../Fonts/ -fonts=(FreeMono FreeSans FreeSerif) -styles=("" Bold Italic BoldItalic Oblique BoldOblique) -sizes=(9 12 18 24) - -for f in ${fonts[*]} -do - for index in ${!styles[*]} - do - st=${styles[$index]} - for si in ${sizes[*]} - do - infile=$inpath$f$st".ttf" - if [ -f $infile ] # Does source combination exist? - then - outfile=$outpath$f$st$si"pt7b.h" -# printf "%s %s %s > %s\n" $convert $infile $si $outfile - $convert $infile $si > $outfile - fi - done - done -done diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/gfxfont.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/gfxfont.h deleted file mode 100644 index 175bad6..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/gfxfont.h +++ /dev/null @@ -1,29 +0,0 @@ -// Font structures for newer Adafruit_GFX (1.1 and later). -// Example fonts are included in 'Fonts' directory. -// To use a font in your Arduino sketch, #include the corresponding .h -// file and pass address of GFXfont struct to setFont(). Pass NULL to -// revert to 'classic' fixed-space bitmap font. - -#ifndef _GFXFONT_H_ -#define _GFXFONT_H_ - -/// Font data stored PER GLYPH -typedef struct { - uint16_t bitmapOffset; ///< Pointer into GFXfont->bitmap - uint8_t width; ///< Bitmap dimensions in pixels - uint8_t height; ///< Bitmap dimensions in pixels - uint8_t xAdvance; ///< Distance to advance cursor (x axis) - int8_t xOffset; ///< X dist from cursor pos to UL corner - int8_t yOffset; ///< Y dist from cursor pos to UL corner -} GFXglyph; - -/// Data stored for FONT AS A WHOLE -typedef struct { - uint8_t *bitmap; ///< Glyph bitmaps, concatenated - GFXglyph *glyph; ///< Glyph array - uint16_t first; ///< ASCII extents (first char) - uint16_t last; ///< ASCII extents (last char) - uint8_t yAdvance; ///< Newline distance (y axis) -} GFXfont; - -#endif // _GFXFONT_H_ diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/glcdfont.c b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/glcdfont.c deleted file mode 100644 index 535da3a..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/glcdfont.c +++ /dev/null @@ -1,143 +0,0 @@ -// This is the 'classic' fixed-space bitmap font for Adafruit_GFX since 1.0. -// See gfxfont.h for newer custom bitmap font info. - -#ifndef FONT5X7_H -#define FONT5X7_H - -#ifdef __AVR__ -#include -#include -#elif defined(ESP8266) -#include -#elif defined(__IMXRT1052__) || defined(__IMXRT1062__) -// PROGMEM is defefind for T4 to place data in specific memory section -#undef PROGMEM -#define PROGMEM -#else -#define PROGMEM -#endif - -// Standard ASCII 5x7 font - -static const unsigned char font[] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x3E, 0x6B, - 0x4F, 0x6B, 0x3E, 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x18, 0x3C, 0x7E, 0x3C, - 0x18, 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, - 0x18, 0x3C, 0x18, 0x00, 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, 0x18, 0x24, - 0x18, 0x00, 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x30, 0x48, 0x3A, 0x06, 0x0E, - 0x26, 0x29, 0x79, 0x29, 0x26, 0x40, 0x7F, 0x05, 0x05, 0x07, 0x40, 0x7F, - 0x05, 0x25, 0x3F, 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x7F, 0x3E, 0x1C, 0x1C, - 0x08, 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x14, 0x22, 0x7F, 0x22, 0x14, 0x5F, - 0x5F, 0x00, 0x5F, 0x5F, 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, 0x66, 0x89, - 0x95, 0x6A, 0x60, 0x60, 0x60, 0x60, 0x60, 0x94, 0xA2, 0xFF, 0xA2, 0x94, - 0x08, 0x04, 0x7E, 0x04, 0x08, 0x10, 0x20, 0x7E, 0x20, 0x10, 0x08, 0x08, - 0x2A, 0x1C, 0x08, 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x1E, 0x10, 0x10, 0x10, - 0x10, 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x30, 0x38, 0x3E, 0x38, 0x30, 0x06, - 0x0E, 0x3E, 0x0E, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5F, - 0x00, 0x00, 0x00, 0x07, 0x00, 0x07, 0x00, 0x14, 0x7F, 0x14, 0x7F, 0x14, - 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x23, 0x13, 0x08, 0x64, 0x62, 0x36, 0x49, - 0x56, 0x20, 0x50, 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, 0x1C, 0x22, 0x41, - 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00, 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x08, - 0x08, 0x3E, 0x08, 0x08, 0x00, 0x80, 0x70, 0x30, 0x00, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x00, 0x00, 0x60, 0x60, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02, - 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, 0x42, 0x7F, 0x40, 0x00, 0x72, 0x49, - 0x49, 0x49, 0x46, 0x21, 0x41, 0x49, 0x4D, 0x33, 0x18, 0x14, 0x12, 0x7F, - 0x10, 0x27, 0x45, 0x45, 0x45, 0x39, 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x41, - 0x21, 0x11, 0x09, 0x07, 0x36, 0x49, 0x49, 0x49, 0x36, 0x46, 0x49, 0x49, - 0x29, 0x1E, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x40, 0x34, 0x00, 0x00, - 0x00, 0x08, 0x14, 0x22, 0x41, 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, 0x41, - 0x22, 0x14, 0x08, 0x02, 0x01, 0x59, 0x09, 0x06, 0x3E, 0x41, 0x5D, 0x59, - 0x4E, 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x7F, 0x49, 0x49, 0x49, 0x36, 0x3E, - 0x41, 0x41, 0x41, 0x22, 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x7F, 0x49, 0x49, - 0x49, 0x41, 0x7F, 0x09, 0x09, 0x09, 0x01, 0x3E, 0x41, 0x41, 0x51, 0x73, - 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, 0x41, 0x7F, 0x41, 0x00, 0x20, 0x40, - 0x41, 0x3F, 0x01, 0x7F, 0x08, 0x14, 0x22, 0x41, 0x7F, 0x40, 0x40, 0x40, - 0x40, 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x3E, - 0x41, 0x41, 0x41, 0x3E, 0x7F, 0x09, 0x09, 0x09, 0x06, 0x3E, 0x41, 0x51, - 0x21, 0x5E, 0x7F, 0x09, 0x19, 0x29, 0x46, 0x26, 0x49, 0x49, 0x49, 0x32, - 0x03, 0x01, 0x7F, 0x01, 0x03, 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x1F, 0x20, - 0x40, 0x20, 0x1F, 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x63, 0x14, 0x08, 0x14, - 0x63, 0x03, 0x04, 0x78, 0x04, 0x03, 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, - 0x7F, 0x41, 0x41, 0x41, 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, 0x41, 0x41, - 0x41, 0x7F, 0x04, 0x02, 0x01, 0x02, 0x04, 0x40, 0x40, 0x40, 0x40, 0x40, - 0x00, 0x03, 0x07, 0x08, 0x00, 0x20, 0x54, 0x54, 0x78, 0x40, 0x7F, 0x28, - 0x44, 0x44, 0x38, 0x38, 0x44, 0x44, 0x44, 0x28, 0x38, 0x44, 0x44, 0x28, - 0x7F, 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, 0x08, 0x7E, 0x09, 0x02, 0x18, - 0xA4, 0xA4, 0x9C, 0x78, 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, 0x44, 0x7D, - 0x40, 0x00, 0x20, 0x40, 0x40, 0x3D, 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00, - 0x00, 0x41, 0x7F, 0x40, 0x00, 0x7C, 0x04, 0x78, 0x04, 0x78, 0x7C, 0x08, - 0x04, 0x04, 0x78, 0x38, 0x44, 0x44, 0x44, 0x38, 0xFC, 0x18, 0x24, 0x24, - 0x18, 0x18, 0x24, 0x24, 0x18, 0xFC, 0x7C, 0x08, 0x04, 0x04, 0x08, 0x48, - 0x54, 0x54, 0x54, 0x24, 0x04, 0x04, 0x3F, 0x44, 0x24, 0x3C, 0x40, 0x40, - 0x20, 0x7C, 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x3C, 0x40, 0x30, 0x40, 0x3C, - 0x44, 0x28, 0x10, 0x28, 0x44, 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x44, 0x64, - 0x54, 0x4C, 0x44, 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, 0x00, 0x77, 0x00, - 0x00, 0x00, 0x41, 0x36, 0x08, 0x00, 0x02, 0x01, 0x02, 0x04, 0x02, 0x3C, - 0x26, 0x23, 0x26, 0x3C, 0x1E, 0xA1, 0xA1, 0x61, 0x12, 0x3A, 0x40, 0x40, - 0x20, 0x7A, 0x38, 0x54, 0x54, 0x55, 0x59, 0x21, 0x55, 0x55, 0x79, 0x41, - 0x22, 0x54, 0x54, 0x78, 0x42, // a-umlaut - 0x21, 0x55, 0x54, 0x78, 0x40, 0x20, 0x54, 0x55, 0x79, 0x40, 0x0C, 0x1E, - 0x52, 0x72, 0x12, 0x39, 0x55, 0x55, 0x55, 0x59, 0x39, 0x54, 0x54, 0x54, - 0x59, 0x39, 0x55, 0x54, 0x54, 0x58, 0x00, 0x00, 0x45, 0x7C, 0x41, 0x00, - 0x02, 0x45, 0x7D, 0x42, 0x00, 0x01, 0x45, 0x7C, 0x40, 0x7D, 0x12, 0x11, - 0x12, 0x7D, // A-umlaut - 0xF0, 0x28, 0x25, 0x28, 0xF0, 0x7C, 0x54, 0x55, 0x45, 0x00, 0x20, 0x54, - 0x54, 0x7C, 0x54, 0x7C, 0x0A, 0x09, 0x7F, 0x49, 0x32, 0x49, 0x49, 0x49, - 0x32, 0x3A, 0x44, 0x44, 0x44, 0x3A, // o-umlaut - 0x32, 0x4A, 0x48, 0x48, 0x30, 0x3A, 0x41, 0x41, 0x21, 0x7A, 0x3A, 0x42, - 0x40, 0x20, 0x78, 0x00, 0x9D, 0xA0, 0xA0, 0x7D, 0x3D, 0x42, 0x42, 0x42, - 0x3D, // O-umlaut - 0x3D, 0x40, 0x40, 0x40, 0x3D, 0x3C, 0x24, 0xFF, 0x24, 0x24, 0x48, 0x7E, - 0x49, 0x43, 0x66, 0x2B, 0x2F, 0xFC, 0x2F, 0x2B, 0xFF, 0x09, 0x29, 0xF6, - 0x20, 0xC0, 0x88, 0x7E, 0x09, 0x03, 0x20, 0x54, 0x54, 0x79, 0x41, 0x00, - 0x00, 0x44, 0x7D, 0x41, 0x30, 0x48, 0x48, 0x4A, 0x32, 0x38, 0x40, 0x40, - 0x22, 0x7A, 0x00, 0x7A, 0x0A, 0x0A, 0x72, 0x7D, 0x0D, 0x19, 0x31, 0x7D, - 0x26, 0x29, 0x29, 0x2F, 0x28, 0x26, 0x29, 0x29, 0x29, 0x26, 0x30, 0x48, - 0x4D, 0x40, 0x20, 0x38, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x38, 0x2F, 0x10, 0xC8, 0xAC, 0xBA, 0x2F, 0x10, 0x28, 0x34, 0xFA, 0x00, - 0x00, 0x7B, 0x00, 0x00, 0x08, 0x14, 0x2A, 0x14, 0x22, 0x22, 0x14, 0x2A, - 0x14, 0x08, 0x55, 0x00, 0x55, 0x00, 0x55, // #176 (25% block) missing in old - // code - 0xAA, 0x55, 0xAA, 0x55, 0xAA, // 50% block - 0xFF, 0x55, 0xFF, 0x55, 0xFF, // 75% block - 0x00, 0x00, 0x00, 0xFF, 0x00, 0x10, 0x10, 0x10, 0xFF, 0x00, 0x14, 0x14, - 0x14, 0xFF, 0x00, 0x10, 0x10, 0xFF, 0x00, 0xFF, 0x10, 0x10, 0xF0, 0x10, - 0xF0, 0x14, 0x14, 0x14, 0xFC, 0x00, 0x14, 0x14, 0xF7, 0x00, 0xFF, 0x00, - 0x00, 0xFF, 0x00, 0xFF, 0x14, 0x14, 0xF4, 0x04, 0xFC, 0x14, 0x14, 0x17, - 0x10, 0x1F, 0x10, 0x10, 0x1F, 0x10, 0x1F, 0x14, 0x14, 0x14, 0x1F, 0x00, - 0x10, 0x10, 0x10, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x10, 0x10, 0x10, - 0x10, 0x1F, 0x10, 0x10, 0x10, 0x10, 0xF0, 0x10, 0x00, 0x00, 0x00, 0xFF, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0xFF, 0x10, 0x00, - 0x00, 0x00, 0xFF, 0x14, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x1F, - 0x10, 0x17, 0x00, 0x00, 0xFC, 0x04, 0xF4, 0x14, 0x14, 0x17, 0x10, 0x17, - 0x14, 0x14, 0xF4, 0x04, 0xF4, 0x00, 0x00, 0xFF, 0x00, 0xF7, 0x14, 0x14, - 0x14, 0x14, 0x14, 0x14, 0x14, 0xF7, 0x00, 0xF7, 0x14, 0x14, 0x14, 0x17, - 0x14, 0x10, 0x10, 0x1F, 0x10, 0x1F, 0x14, 0x14, 0x14, 0xF4, 0x14, 0x10, - 0x10, 0xF0, 0x10, 0xF0, 0x00, 0x00, 0x1F, 0x10, 0x1F, 0x00, 0x00, 0x00, - 0x1F, 0x14, 0x00, 0x00, 0x00, 0xFC, 0x14, 0x00, 0x00, 0xF0, 0x10, 0xF0, - 0x10, 0x10, 0xFF, 0x10, 0xFF, 0x14, 0x14, 0x14, 0xFF, 0x14, 0x10, 0x10, - 0x10, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x38, 0x44, 0x44, - 0x38, 0x44, 0xFC, 0x4A, 0x4A, 0x4A, 0x34, // sharp-s or beta - 0x7E, 0x02, 0x02, 0x06, 0x06, 0x02, 0x7E, 0x02, 0x7E, 0x02, 0x63, 0x55, - 0x49, 0x41, 0x63, 0x38, 0x44, 0x44, 0x3C, 0x04, 0x40, 0x7E, 0x20, 0x1E, - 0x20, 0x06, 0x02, 0x7E, 0x02, 0x02, 0x99, 0xA5, 0xE7, 0xA5, 0x99, 0x1C, - 0x2A, 0x49, 0x2A, 0x1C, 0x4C, 0x72, 0x01, 0x72, 0x4C, 0x30, 0x4A, 0x4D, - 0x4D, 0x30, 0x30, 0x48, 0x78, 0x48, 0x30, 0xBC, 0x62, 0x5A, 0x46, 0x3D, - 0x3E, 0x49, 0x49, 0x49, 0x00, 0x7E, 0x01, 0x01, 0x01, 0x7E, 0x2A, 0x2A, - 0x2A, 0x2A, 0x2A, 0x44, 0x44, 0x5F, 0x44, 0x44, 0x40, 0x51, 0x4A, 0x44, - 0x40, 0x40, 0x44, 0x4A, 0x51, 0x40, 0x00, 0x00, 0xFF, 0x01, 0x03, 0xE0, - 0x80, 0xFF, 0x00, 0x00, 0x08, 0x08, 0x6B, 0x6B, 0x08, 0x36, 0x12, 0x36, - 0x24, 0x36, 0x06, 0x0F, 0x09, 0x0F, 0x06, 0x00, 0x00, 0x18, 0x18, 0x00, - 0x00, 0x00, 0x10, 0x10, 0x00, 0x30, 0x40, 0xFF, 0x01, 0x01, 0x00, 0x1F, - 0x01, 0x01, 0x1E, 0x00, 0x19, 0x1D, 0x17, 0x12, 0x00, 0x3C, 0x3C, 0x3C, - 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00 // #255 NBSP -}; - -// allow clean compilation with [-Wunused-const-variable=] and [-Wall] -static inline void avoid_unused_const_variable_compiler_warning(void) { - (void)font; -} - -#endif // FONT5X7_H diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/library.properties b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/library.properties deleted file mode 100644 index 3bbb3ff..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/library.properties +++ /dev/null @@ -1,10 +0,0 @@ -name=Adafruit GFX Library -version=1.12.6 -author=Adafruit -maintainer=Adafruit -sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. -paragraph=Install this library in addition to the display library for your hardware. -category=Display -url=https://github.com/adafruit/Adafruit-GFX-Library -architectures=* -depends=Adafruit BusIO diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/license.txt b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/license.txt deleted file mode 100644 index 7492e93..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit GFX Library/license.txt +++ /dev/null @@ -1,24 +0,0 @@ -Software License Agreement (BSD License) - -Copyright (c) 2012 Adafruit Industries. 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/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index f0e2614..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,46 +0,0 @@ -Thank you for opening an issue on an Adafruit Arduino library repository. To -improve the speed of resolution please review the following guidelines and -common troubleshooting steps below before creating the issue: - -- **Do not use GitHub issues for troubleshooting projects and issues.** Instead use - the forums at http://forums.adafruit.com to ask questions and troubleshoot why - something isn't working as expected. In many cases the problem is a common issue - that you will more quickly receive help from the forum community. GitHub issues - are meant for known defects in the code. If you don't know if there is a defect - in the code then start with troubleshooting on the forum first. - -- **If following a tutorial or guide be sure you didn't miss a step.** Carefully - check all of the steps and commands to run have been followed. Consult the - forum if you're unsure or have questions about steps in a guide/tutorial. - -- **For Arduino projects check these very common issues to ensure they don't apply**: - - - For uploading sketches or communicating with the board make sure you're using - a **USB data cable** and **not** a **USB charge-only cable**. It is sometimes - very hard to tell the difference between a data and charge cable! Try using the - cable with other devices or swapping to another cable to confirm it is not - the problem. - - - **Be sure you are supplying adequate power to the board.** Check the specs of - your board and plug in an external power supply. In many cases just - plugging a board into your computer is not enough to power it and other - peripherals. - - - **Double check all soldering joints and connections.** Flakey connections - cause many mysterious problems. See the [guide to excellent soldering](https://learn.adafruit.com/adafruit-guide-excellent-soldering/tools) for examples of good solder joints. - - - **Ensure you are using an official Arduino or Adafruit board.** We can't - guarantee a clone board will have the same functionality and work as expected - with this code and don't support them. - -If you're sure this issue is a defect in the code and checked the steps above -please fill in the following fields to provide enough troubleshooting information. -You may delete the guideline and text above to just leave the following details: - -- Arduino board: **INSERT ARDUINO BOARD NAME/TYPE HERE** - -- Arduino IDE version (found in Arduino -> About Arduino menu): **INSERT ARDUINO - VERSION HERE** - -- List the steps to reproduce the problem below (if possible attach a sketch or - copy the sketch code in too): **LIST REPRO STEPS BELOW** diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 7b641eb..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,26 +0,0 @@ -Thank you for creating a pull request to contribute to Adafruit's GitHub code! -Before you open the request please review the following guidelines and tips to -help it be more easily integrated: - -- **Describe the scope of your change--i.e. what the change does and what parts - of the code were modified.** This will help us understand any risks of integrating - the code. - -- **Describe any known limitations with your change.** For example if the change - doesn't apply to a supported platform of the library please mention it. - -- **Please run any tests or examples that can exercise your modified code.** We - strive to not break users of the code and running tests/examples helps with this - process. - -Thank you again for contributing! We will try to test and integrate the change -as soon as we can, but be aware we have many GitHub repositories to manage and -can't immediately respond to every request. There is no need to bump or check in -on a pull request (it will clutter the discussion of the request). - -Also don't be worried if the request is closed or not integrated--sometimes the -priorities of Adafruit's GitHub code (education, ease of use) might not match the -priorities of the pull request. Don't fret, the open source community thrives on -forks and GitHub makes it easy to keep your changes in a forked repo. - -After reviewing the guidelines above you can delete this text from the pull request. diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml deleted file mode 100644 index 32d54d9..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: Arduino Library CI - -on: [pull_request, push, repository_dispatch] - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/setup-python@v4 - with: - python-version: '3.x' - - uses: actions/checkout@v3 - - uses: actions/checkout@v3 - with: - repository: adafruit/ci-arduino - path: ci - - - name: pre-install - run: bash ci/actions_install.sh - - - name: test platforms - run: python3 ci/build_platform.py main_platforms - - - name: clang - run: python3 ci/run-clang-format.py -e "ci/*" -e "bin/*" -r . - - - name: doxygen - env: - GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }} - PRETTYNAME : "Adafruit IS31FL3731 Library" - run: bash ci/doxy_gen_and_deploy.sh diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.piopm b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.piopm deleted file mode 100644 index ccf819e..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.piopm +++ /dev/null @@ -1 +0,0 @@ -{"type": "library", "name": "Adafruit IS31FL3731 Library", "version": "2.0.2", "spec": {"owner": "adafruit", "id": 1241, "name": "Adafruit IS31FL3731 Library", "requirements": null, "uri": null}} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp deleted file mode 100644 index fb1a347..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp +++ /dev/null @@ -1,273 +0,0 @@ -#include - -#ifndef _swap_int16_t -#define _swap_int16_t(a, b) \ - { \ - int16_t t = a; \ - a = b; \ - b = t; \ - } -#endif - -/**************************************************************************/ -/*! - @brief Constructor for breakout version - @param width Desired width of led display - @param height Desired height of led display -*/ -/**************************************************************************/ - -Adafruit_IS31FL3731::Adafruit_IS31FL3731(uint8_t width, uint8_t height) - : Adafruit_GFX(width, height) {} - -/**************************************************************************/ -/*! - @brief Constructor for FeatherWing version (15x7 LEDs) -*/ -/**************************************************************************/ -Adafruit_IS31FL3731_Wing::Adafruit_IS31FL3731_Wing(void) - : Adafruit_IS31FL3731(15, 7) {} - -/**************************************************************************/ -/*! - @brief Initialize hardware and clear display - @param addr The I2C address we expect to find the chip at - @param theWire The TwoWire I2C bus device to use, defaults to &Wire - @returns True on success, false if chip isnt found -*/ -/**************************************************************************/ -bool Adafruit_IS31FL3731::begin(uint8_t addr, TwoWire *theWire) { - if (_i2c_dev) { - delete _i2c_dev; - } - _i2c_dev = new Adafruit_I2CDevice(addr, theWire); - - if (!_i2c_dev->begin()) { - return false; - } - - _i2c_dev->setSpeed(400000); - _frame = 0; - - // shutdown - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x00); - - delay(10); - - // out of shutdown - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x01); - - // picture mode - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_CONFIG, - ISSI_REG_CONFIG_PICTUREMODE); - - displayFrame(_frame); - - // all LEDs on & 0 PWM - clear(); // set each led to 0 PWM - - for (uint8_t f = 0; f < 8; f++) { - for (uint8_t i = 0; i <= 0x11; i++) - writeRegister8(f, i, 0xff); // each 8 LEDs on - } - - audioSync(false); - - return true; -} - -/**************************************************************************/ -/*! - @brief Sets all LEDs on & 0 PWM for current frame. -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::clear(void) { - selectBank(_frame); - uint8_t erasebuf[25]; - - memset(erasebuf, 0, 25); - - for (uint8_t i = 0; i < 6; i++) { - erasebuf[0] = 0x24 + i * 24; - _i2c_dev->write(erasebuf, 25); - } -} - -/**************************************************************************/ -/*! - @brief Low level accesssor - sets a 8-bit PWM pixel value to a bank location - does not handle rotation, x/y or any rearrangements! - @param lednum The offset into the bank that corresponds to the LED - @param bank The bank/frame we will set the data in - @param pwm brightnes, from 0 (off) to 255 (max on) -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::setLEDPWM(uint8_t lednum, uint8_t pwm, uint8_t bank) { - if (lednum >= 144) - return; - writeRegister8(bank, 0x24 + lednum, pwm); -} - -/**************************************************************************/ -/*! - @brief Adafruit GFX low level accesssor - sets a 8-bit PWM pixel value - handles rotation and pixel arrangement, unlike setLEDPWM - @param x The x position, starting with 0 for left-most side - @param y The y position, starting with 0 for top-most side - @param color Despite being a 16-bit value, takes 0 (off) to 255 (max on) -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731_Wing::drawPixel(int16_t x, int16_t y, uint16_t color) { - // check rotation, move pixel around if necessary - switch (getRotation()) { - case 1: - _swap_int16_t(x, y); - x = 15 - x - 1; - break; - case 2: - x = 15 - x - 1; - y = 7 - y - 1; - break; - case 3: - _swap_int16_t(x, y); - y = 9 - y - 1; - break; - } - - // charlie wing is smaller: - if ((x < 0) || (x >= 16) || (y < 0) || (y >= 7)) - return; - - if (x > 7) { - x = 15 - x; - y += 8; - } else { - y = 7 - y; - } - - _swap_int16_t(x, y); - - if (color > 255) - color = 255; // PWM 8bit max - - setLEDPWM(x + y * 16, color, _frame); - return; -} - -/**************************************************************************/ -/*! - @brief Adafruit GFX low level accesssor - sets a 8-bit PWM pixel value - handles rotation and pixel arrangement, unlike setLEDPWM - @param x The x position, starting with 0 for left-most side - @param y The y position, starting with 0 for top-most side - @param color Despite being a 16-bit value, takes 0 (off) to 255 (max on) -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::drawPixel(int16_t x, int16_t y, uint16_t color) { - // check rotation, move pixel around if necessary - switch (getRotation()) { - case 1: - _swap_int16_t(x, y); - x = 16 - x - 1; - break; - case 2: - x = 16 - x - 1; - y = 9 - y - 1; - break; - case 3: - _swap_int16_t(x, y); - y = 9 - y - 1; - break; - } - - if ((x < 0) || (x >= 16)) - return; - if ((y < 0) || (y >= 9)) - return; - if (color > 255) - color = 255; // PWM 8bit max - - setLEDPWM(x + y * 16, color, _frame); - return; -} - -/**************************************************************************/ -/*! - @brief Set's this object's frame tracker (does not talk to the chip) - @param frame Ranges from 0 - 7 for the 8 frames -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::setFrame(uint8_t frame) { _frame = frame; } - -/**************************************************************************/ -/*! - @brief Have the chip set the display to the contents of a frame - @param frame Ranges from 0 - 7 for the 8 frames -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::displayFrame(uint8_t frame) { - if (frame > 7) - frame = 0; - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_PICTUREFRAME, frame); -} - -/**************************************************************************/ -/*! - @brief Switch to a given bank in the chip memory for future reads - @param bank The IS31 bank to switch to - @returns False if I2C command failed to be ack'd -*/ -/**************************************************************************/ -bool Adafruit_IS31FL3731::selectBank(uint8_t bank) { - uint8_t cmd[2] = {ISSI_COMMANDREGISTER, bank}; - return _i2c_dev->write(cmd, 2); -} - -/**************************************************************************/ -/*! - @brief Enable the audio 'sync' for brightness pulsing (not really tested) - @param sync True to enable, False to disable -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::audioSync(bool sync) { - if (sync) { - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_AUDIOSYNC, 0x1); - } else { - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_AUDIOSYNC, 0x0); - } -} - -/**************************************************************************/ -/*! - @brief Write one byte to a register located in a given bank - @param bank The IS31 bank to write the register location - @param reg the offset into the bank to write - @param data The byte value - @returns False if I2C command failed to be ack'd -*/ -/**************************************************************************/ -bool Adafruit_IS31FL3731::writeRegister8(uint8_t bank, uint8_t reg, - uint8_t data) { - selectBank(bank); - - uint8_t cmd[2] = {reg, data}; - return _i2c_dev->write(cmd, 2); -} - -/**************************************************************************/ -/*! - @brief Read one byte from a register located in a given bank - @param bank The IS31 bank to read the register location - @param reg the offset into the bank to read - @return 1 byte value -*/ -/**************************************************************************/ -uint8_t Adafruit_IS31FL3731::readRegister8(uint8_t bank, uint8_t reg) { - uint8_t val = 0xFF; - - selectBank(bank); - - _i2c_dev->write_then_read(®, 1, &val, 1); - - return val; -} diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h deleted file mode 100644 index f530253..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef _ADAFRUIT_IS31FL3731_H_ -#define _ADAFRUIT_IS31FL3731_H_ - -#include -#include -#include - -#define ISSI_ADDR_DEFAULT 0x74 - -#define ISSI_REG_CONFIG 0x00 -#define ISSI_REG_CONFIG_PICTUREMODE 0x00 -#define ISSI_REG_CONFIG_AUTOPLAYMODE 0x08 -#define ISSI_REG_CONFIG_AUDIOPLAYMODE 0x18 - -#define ISSI_CONF_PICTUREMODE 0x00 -#define ISSI_CONF_AUTOFRAMEMODE 0x04 -#define ISSI_CONF_AUDIOMODE 0x08 - -#define ISSI_REG_PICTUREFRAME 0x01 - -#define ISSI_REG_SHUTDOWN 0x0A -#define ISSI_REG_AUDIOSYNC 0x06 - -#define ISSI_COMMANDREGISTER 0xFD -#define ISSI_BANK_FUNCTIONREG 0x0B // helpfully called 'page nine' - -/**************************************************************************/ -/*! - @brief Constructor for generic IS31FL3731 breakout version -*/ -/**************************************************************************/ -class Adafruit_IS31FL3731 : public Adafruit_GFX { -public: - Adafruit_IS31FL3731(uint8_t x = 16, uint8_t y = 9); - bool begin(uint8_t addr = ISSI_ADDR_DEFAULT, TwoWire *theWire = &Wire); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void clear(void); - - void setLEDPWM(uint8_t lednum, uint8_t pwm, uint8_t bank = 0); - void audioSync(bool sync); - void setFrame(uint8_t b); - void displayFrame(uint8_t frame); - -protected: - bool selectBank(uint8_t bank); - bool writeRegister8(uint8_t bank, uint8_t reg, uint8_t data); - uint8_t readRegister8(uint8_t bank, uint8_t reg); - uint8_t _frame; ///< The frame (of 8) we are currently addressing - -private: - Adafruit_I2CDevice *_i2c_dev = NULL; -}; - -/**************************************************************************/ -/*! - @brief Constructor for FeatherWing IS31FL3731 version -*/ -/**************************************************************************/ -class Adafruit_IS31FL3731_Wing : public Adafruit_IS31FL3731 { -public: - Adafruit_IS31FL3731_Wing(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); -}; - -#endif diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md deleted file mode 100644 index d885b36..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,137 +0,0 @@ - -# Adafruit Community Code of Conduct - -## Our Pledge - -In the interest of fostering an open and welcoming environment, we as -contributors and leaders pledge to making participation in our project and -our community a harassment-free experience for everyone, regardless of age, body -size, disability, ethnicity, gender identity and expression, level or type of -experience, education, socio-economic status, nationality, personal appearance, -race, religion, or sexual identity and orientation. - -## Our Standards - -We are committed to providing a friendly, safe and welcoming environment for -all. - -Examples of behavior that contributes to creating a positive environment -include: - -* Be kind and courteous to others -* Using welcoming and inclusive language -* Being respectful of differing viewpoints and experiences -* Collaborating with other community members -* Gracefully accepting constructive criticism -* Focusing on what is best for the community -* Showing empathy towards other community members - -Examples of unacceptable behavior by participants include: - -* The use of sexualized language or imagery and sexual attention or advances -* The use of inappropriate images, including in a community member's avatar -* The use of inappropriate language, including in a community member's nickname -* Any spamming, flaming, baiting or other attention-stealing behavior -* Excessive or unwelcome helping; answering outside the scope of the question - asked -* Trolling, insulting/derogatory comments, and personal or political attacks -* Promoting or spreading disinformation, lies, or conspiracy theories against - a person, group, organisation, project, or community -* Public or private harassment -* Publishing others' private information, such as a physical or electronic - address, without explicit permission -* Other conduct which could reasonably be considered inappropriate - -The goal of the standards and moderation guidelines outlined here is to build -and maintain a respectful community. We ask that you don’t just aim to be -"technically unimpeachable", but rather try to be your best self. - -We value many things beyond technical expertise, including collaboration and -supporting others within our community. Providing a positive experience for -other community members can have a much more significant impact than simply -providing the correct answer. - -## Our Responsibilities - -Project leaders are responsible for clarifying the standards of acceptable -behavior and are expected to take appropriate and fair corrective action in -response to any instances of unacceptable behavior. - -Project leaders have the right and responsibility to remove, edit, or -reject messages, comments, commits, code, issues, and other contributions -that are not aligned to this Code of Conduct, or to ban temporarily or -permanently any community member for other behaviors that they deem -inappropriate, threatening, offensive, or harmful. - -## Moderation - -Instances of behaviors that violate the Adafruit Community Code of Conduct -may be reported by any member of the community. Community members are -encouraged to report these situations, including situations they witness -involving other community members. - -You may report in the following ways: - -In any situation, you may send an email to . - -On the Adafruit Discord, you may send an open message from any channel -to all Community Moderators by tagging @community moderators. You may -also send an open message from any channel, or a direct message to -@kattni#1507, @tannewt#4653, @danh#1614, @cater#2442, -@sommersoft#0222, @Mr. Certainly#0472 or @Andon#8175. - -Email and direct message reports will be kept confidential. - -In situations on Discord where the issue is particularly egregious, possibly -illegal, requires immediate action, or violates the Discord terms of service, -you should also report the message directly to Discord. - -These are the steps for upholding our community’s standards of conduct. - -1. Any member of the community may report any situation that violates the -Adafruit Community Code of Conduct. All reports will be reviewed and -investigated. -2. If the behavior is an egregious violation, the community member who -committed the violation may be banned immediately, without warning. -3. Otherwise, moderators will first respond to such behavior with a warning. -4. Moderators follow a soft "three strikes" policy - the community member may -be given another chance, if they are receptive to the warning and change their -behavior. -5. If the community member is unreceptive or unreasonable when warned by a -moderator, or the warning goes unheeded, they may be banned for a first or -second offense. Repeated offenses will result in the community member being -banned. - -## Scope - -This Code of Conduct and the enforcement policies listed above apply to all -Adafruit Community venues. This includes but is not limited to any community -spaces (both public and private), the entire Adafruit Discord server, and -Adafruit GitHub repositories. Examples of Adafruit Community spaces include -but are not limited to meet-ups, audio chats on the Adafruit Discord, or -interaction at a conference. - -This Code of Conduct applies both within project spaces and in public spaces -when an individual is representing the project or its community. As a community -member, you are representing our community, and are expected to behave -accordingly. - -## Attribution - -This Code of Conduct is adapted from the [Contributor Covenant], -version 1.4, available at -, -and the [Rust Code of Conduct](https://www.rust-lang.org/en-US/conduct.html). - -For other projects adopting the Adafruit Community Code of -Conduct, please contact the maintainers of those projects for enforcement. -If you wish to use this code of conduct for your own project, consider -explicitly mentioning your moderation policy or making a copy with your -own moderation policy so as to avoid confusion. - -[Contributor Covenant]: https://www.contributor-covenant.org diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/LICENSE b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/LICENSE deleted file mode 100644 index 3f50677..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2020 Ladyada for Adafruit Industries - -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. diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/README.md b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/README.md deleted file mode 100644 index 7f58723..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/README.md +++ /dev/null @@ -1 +0,0 @@ -# Adafruit IS31FL3731 [![Build Status](https://github.com/adafruit/Adafruit_IS31FL3731/workflows/Arduino%20Library%20CI/badge.svg)](https://github.com/adafruit/Adafruit_IS31FL3731/actions)[![Documentation](https://github.com/adafruit/ci-arduino/blob/master/assets/doxygen_badge.svg)](http://adafruit.github.io/Adafruit_IS31FL3731/html/index.html) diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino deleted file mode 100644 index a0fdcc2..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino +++ /dev/null @@ -1,107 +0,0 @@ -#include -#include -#include - -// If you're using the full breakout... -Adafruit_IS31FL3731 matrix = Adafruit_IS31FL3731(); -// If you're using the FeatherWing version -//Adafruit_IS31FL3731_Wing matrix = Adafruit_IS31FL3731_Wing(); - -static const uint8_t PROGMEM - smile_bmp[] = - { 0b00111100, - 0b01000010, - 0b10100101, - 0b10000001, - 0b10100101, - 0b10011001, - 0b01000010, - 0b00111100 }, - neutral_bmp[] = - { 0b00111100, - 0b01000010, - 0b10100101, - 0b10000001, - 0b10111101, - 0b10000001, - 0b01000010, - 0b00111100 }, - frown_bmp[] = - { 0b00111100, - 0b01000010, - 0b10100101, - 0b10000001, - 0b10011001, - 0b10100101, - 0b01000010, - 0b00111100 }; - - -void setup() { - - Serial.begin(9600); - Serial.println("ISSI manual animation test"); - if (! matrix.begin()) { - Serial.println("IS31 not found"); - while (1); - } - Serial.println("IS31 Found!"); - -} - - -void loop() { - matrix.setRotation(0); - - matrix.clear(); - matrix.drawBitmap(3, 0, smile_bmp, 8, 8, 255); - delay(500); - - matrix.clear(); - matrix.drawBitmap(3, 0, neutral_bmp, 8, 8, 64); - delay(500); - - matrix.clear(); - matrix.drawBitmap(3, 0, frown_bmp, 8, 8, 32); - delay(500); - - matrix.clear(); - matrix.drawPixel(0, 0, 255); - delay(500); - - matrix.clear(); - matrix.drawLine(0,0, matrix.width()-1, matrix.height()-1, 127); - delay(500); - - matrix.clear(); - matrix.drawRect(0,0, matrix.width(), matrix.height(), 255); - matrix.fillRect(2,2, matrix.width()-4, matrix.height()-4, 20); - delay(500); - - matrix.clear(); - matrix.drawCircle(8,4, 4, 64); - matrix.drawCircle(8,4, 2, 32); - delay(500); - - - matrix.setTextSize(1); - matrix.setTextWrap(false); // we dont want text to wrap so it scrolls nicely - matrix.setTextColor(100); - for (int8_t x=0; x>=-32; x--) { - matrix.clear(); - matrix.setCursor(x,0); - matrix.print("Hello"); - delay(100); - } - - matrix.setTextSize(2); - matrix.setTextWrap(false); // we dont want text to wrap so it scrolls nicely - matrix.setTextColor(32); - matrix.setRotation(1); - for (int8_t x=7; x>=-64; x--) { - matrix.clear(); - matrix.setCursor(x,0); - matrix.print("World"); - delay(100); - } -} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino deleted file mode 100644 index 2612930..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino +++ /dev/null @@ -1,43 +0,0 @@ -#include -#include -#include - -// If you're using the full breakout... -Adafruit_IS31FL3731 ledmatrix = Adafruit_IS31FL3731(); -// If you're using the FeatherWing version -//Adafruit_IS31FL3731_Wing ledmatrix = Adafruit_IS31FL3731_Wing(); - -void setup() { - - Serial.begin(9600); - Serial.println("ISSI manual animation test"); - if (! ledmatrix.begin()) { - Serial.println("IS31 not found"); - while (1); - } - Serial.println("IS31 Found!"); - - ledmatrix.setTextWrap(false); - ledmatrix.setTextColor(64); // quarter brightness - ledmatrix.setTextSize(1); - - // fill all 8 frames with some text - for (uint8_t frame = 0; frame < 8; frame++) { - ledmatrix.setFrame(frame); - ledmatrix.clear(); - ledmatrix.setCursor(0,0); - ledmatrix.write('a'+frame*3); - ledmatrix.write('b'+frame*3); - ledmatrix.write('c'+frame*3); - } -} - -int x = 0; - -void loop() { - // display each frame for 250 milliseconds - for (uint8_t frame = 0; frame < 8; frame++) { - ledmatrix.displayFrame(frame); - delay(250); - } -} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino deleted file mode 100644 index 7b17084..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino +++ /dev/null @@ -1,32 +0,0 @@ -#include -#include -#include - -// If you're using the full breakout... -Adafruit_IS31FL3731 ledmatrix = Adafruit_IS31FL3731(); -// If you're using the FeatherWing version -//Adafruit_IS31FL3731_Wing ledmatrix = Adafruit_IS31FL3731_Wing(); - - -// The lookup table to make the brightness changes be more visible -uint8_t sweep[] = {1, 2, 3, 4, 6, 8, 10, 15, 20, 30, 40, 60, 60, 40, 30, 20, 15, 10, 8, 6, 4, 3, 2, 1}; - -void setup() { - Serial.begin(9600); - Serial.println("ISSI swirl test"); - - if (! ledmatrix.begin()) { - Serial.println("IS31 not found"); - while (1); - } - Serial.println("IS31 found!"); -} - -void loop() { - // animate over all the pixels, and set the brightness from the sweep table - for (uint8_t incr = 0; incr < 24; incr++) - for (uint8_t x = 0; x < 16; x++) - for (uint8_t y = 0; y < 9; y++) - ledmatrix.drawPixel(x, y, sweep[(x+y+incr)%24]); - delay(20); -} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/library.properties b/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/library.properties deleted file mode 100644 index 86f5f31..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/library.properties +++ /dev/null @@ -1,10 +0,0 @@ -name=Adafruit IS31FL3731 Library -version=2.0.2 -author=Adafruit -maintainer=Adafruit -sentence=Arduino library for the Adafruit IS31FL3731 Charlieplex LED driver and CharliePlex FeatherWing. -paragraph=Arduino library for the Adafruit IS31FL3731 Charlieplex LED driver and CharliePlex FeatherWing. -category=Display -url=https://github.com/adafruit/Adafruit_IS31FL3731 -architectures=* -depends=Adafruit GFX Library, Adafruit BusIO diff --git a/hardware_test/.pio/libdeps/rp2040_swd/integrity.dat b/hardware_test/.pio/libdeps/rp2040_swd/integrity.dat deleted file mode 100644 index 647b35f..0000000 --- a/hardware_test/.pio/libdeps/rp2040_swd/integrity.dat +++ /dev/null @@ -1,2 +0,0 @@ -adafruit/Adafruit BusIO -adafruit/Adafruit IS31FL3731 Library \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.clang-format b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.clang-format deleted file mode 100644 index c6cdd16..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.clang-format +++ /dev/null @@ -1,243 +0,0 @@ -Language: Cpp -# BasedOnStyle: LLVM -AccessModifierOffset: -2 -AlignAfterOpenBracket: Align -AlignArrayOfStructures: None -AlignConsecutiveAssignments: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: true -AlignConsecutiveBitFields: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: false -AlignConsecutiveDeclarations: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: false -AlignConsecutiveMacros: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: false -AlignConsecutiveShortCaseStatements: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCaseColons: false -AlignEscapedNewlines: Right -AlignOperands: Align -AlignTrailingComments: - Kind: Always - OverEmptyLines: 0 -AllowAllArgumentsOnNextLine: true -AllowAllParametersOfDeclarationOnNextLine: true -AllowBreakBeforeNoexceptSpecifier: Never -AllowShortBlocksOnASingleLine: Never -AllowShortCaseLabelsOnASingleLine: false -AllowShortCompoundRequirementOnASingleLine: true -AllowShortEnumsOnASingleLine: true -AllowShortFunctionsOnASingleLine: All -AllowShortIfStatementsOnASingleLine: Never -AllowShortLambdasOnASingleLine: All -AllowShortLoopsOnASingleLine: false -AlwaysBreakAfterDefinitionReturnType: None -AlwaysBreakAfterReturnType: None -AlwaysBreakBeforeMultilineStrings: false -AlwaysBreakTemplateDeclarations: MultiLine -AttributeMacros: - - __capability -BinPackArguments: true -BinPackParameters: true -BitFieldColonSpacing: Both -BraceWrapping: - AfterCaseLabel: false - AfterClass: false - AfterControlStatement: Never - AfterEnum: false - AfterExternBlock: false - AfterFunction: false - AfterNamespace: false - AfterObjCDeclaration: false - AfterStruct: false - AfterUnion: false - BeforeCatch: false - BeforeElse: false - BeforeLambdaBody: false - BeforeWhile: false - IndentBraces: false - SplitEmptyFunction: true - SplitEmptyRecord: true - SplitEmptyNamespace: true -BreakAdjacentStringLiterals: true -BreakAfterAttributes: Leave -BreakAfterJavaFieldAnnotations: false -BreakArrays: true -BreakBeforeBinaryOperators: None -BreakBeforeConceptDeclarations: Always -BreakBeforeBraces: Attach -BreakBeforeInlineASMColon: OnlyMultiline -BreakBeforeTernaryOperators: true -BreakConstructorInitializers: BeforeColon -BreakInheritanceList: BeforeColon -BreakStringLiterals: true -ColumnLimit: 80 -CommentPragmas: '^ IWYU pragma:' -CompactNamespaces: false -ConstructorInitializerIndentWidth: 4 -ContinuationIndentWidth: 4 -Cpp11BracedListStyle: true -DerivePointerAlignment: false -DisableFormat: false -EmptyLineAfterAccessModifier: Never -EmptyLineBeforeAccessModifier: LogicalBlock -ExperimentalAutoDetectBinPacking: false -FixNamespaceComments: true -ForEachMacros: - - foreach - - Q_FOREACH - - BOOST_FOREACH -IfMacros: - - KJ_IF_MAYBE -IncludeBlocks: Preserve -IncludeCategories: - - Regex: '^"(llvm|llvm-c|clang|clang-c)/' - Priority: 2 - SortPriority: 0 - CaseSensitive: false - - Regex: '^(<|"(gtest|gmock|isl|json)/)' - Priority: 3 - SortPriority: 0 - CaseSensitive: false - - Regex: '.*' - Priority: 1 - SortPriority: 0 - CaseSensitive: false -IncludeIsMainRegex: '(Test)?$' -IncludeIsMainSourceRegex: '' -IndentAccessModifiers: false -IndentCaseBlocks: false -IndentCaseLabels: false -IndentExternBlock: AfterExternBlock -IndentGotoLabels: true -IndentPPDirectives: None -IndentRequiresClause: true -IndentWidth: 2 -IndentWrappedFunctionNames: false -InsertBraces: false -InsertNewlineAtEOF: false -InsertTrailingCommas: None -IntegerLiteralSeparator: - Binary: 0 - BinaryMinDigits: 0 - Decimal: 0 - DecimalMinDigits: 0 - Hex: 0 - HexMinDigits: 0 -JavaScriptQuotes: Leave -JavaScriptWrapImports: true -KeepEmptyLinesAtTheStartOfBlocks: true -KeepEmptyLinesAtEOF: false -LambdaBodyIndentation: Signature -LineEnding: DeriveLF -MacroBlockBegin: '' -MacroBlockEnd: '' -MaxEmptyLinesToKeep: 1 -NamespaceIndentation: None -ObjCBinPackProtocolList: Auto -ObjCBlockIndentWidth: 2 -ObjCBreakBeforeNestedBlockParam: true -ObjCSpaceAfterProperty: false -ObjCSpaceBeforeProtocolList: true -PackConstructorInitializers: BinPack -PenaltyBreakAssignment: 2 -PenaltyBreakBeforeFirstCallParameter: 19 -PenaltyBreakComment: 300 -PenaltyBreakFirstLessLess: 120 -PenaltyBreakOpenParenthesis: 0 -PenaltyBreakScopeResolution: 500 -PenaltyBreakString: 1000 -PenaltyBreakTemplateDeclaration: 10 -PenaltyExcessCharacter: 1000000 -PenaltyIndentedWhitespace: 0 -PenaltyReturnTypeOnItsOwnLine: 60 -PointerAlignment: Right -PPIndentWidth: -1 -QualifierAlignment: Leave -ReferenceAlignment: Pointer -ReflowComments: true -RemoveBracesLLVM: false -RemoveParentheses: Leave -RemoveSemicolon: false -RequiresClausePosition: OwnLine -RequiresExpressionIndentation: OuterScope -SeparateDefinitionBlocks: Leave -ShortNamespaceLines: 1 -SkipMacroDefinitionBody: false -SortIncludes: CaseSensitive -SortJavaStaticImport: Before -SortUsingDeclarations: LexicographicNumeric -SpaceAfterCStyleCast: false -SpaceAfterLogicalNot: false -SpaceAfterTemplateKeyword: true -SpaceAroundPointerQualifiers: Default -SpaceBeforeAssignmentOperators: true -SpaceBeforeCaseColon: false -SpaceBeforeCpp11BracedList: false -SpaceBeforeCtorInitializerColon: true -SpaceBeforeInheritanceColon: true -SpaceBeforeJsonColon: false -SpaceBeforeParens: ControlStatements -SpaceBeforeParensOptions: - AfterControlStatements: true - AfterForeachMacros: true - AfterFunctionDefinitionName: false - AfterFunctionDeclarationName: false - AfterIfMacros: true - AfterOverloadedOperator: false - AfterPlacementOperator: true - AfterRequiresInClause: false - AfterRequiresInExpression: false - BeforeNonEmptyParentheses: false -SpaceBeforeRangeBasedForLoopColon: true -SpaceBeforeSquareBrackets: false -SpaceInEmptyBlock: false -SpacesBeforeTrailingComments: 1 -SpacesInAngles: Never -SpacesInContainerLiterals: true -SpacesInLineCommentPrefix: - Minimum: 1 - Maximum: -1 -SpacesInParens: Never -SpacesInParensOptions: - InCStyleCasts: false - InConditionalStatements: false - InEmptyParentheses: false - Other: false -SpacesInSquareBrackets: false -Standard: Latest -StatementAttributeLikeMacros: - - Q_EMIT -StatementMacros: - - Q_UNUSED - - QT_REQUIRE_VERSION -TabWidth: 8 -UseTab: Never -VerilogBreakBetweenInstancePorts: true -WhitespaceSensitiveMacros: - - BOOST_PP_STRINGIZE - - CF_SWIFT_NAME - - NS_SWIFT_NAME - - PP_STRINGIZE - - STRINGIZE \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/ISSUE_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index f0e2614..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,46 +0,0 @@ -Thank you for opening an issue on an Adafruit Arduino library repository. To -improve the speed of resolution please review the following guidelines and -common troubleshooting steps below before creating the issue: - -- **Do not use GitHub issues for troubleshooting projects and issues.** Instead use - the forums at http://forums.adafruit.com to ask questions and troubleshoot why - something isn't working as expected. In many cases the problem is a common issue - that you will more quickly receive help from the forum community. GitHub issues - are meant for known defects in the code. If you don't know if there is a defect - in the code then start with troubleshooting on the forum first. - -- **If following a tutorial or guide be sure you didn't miss a step.** Carefully - check all of the steps and commands to run have been followed. Consult the - forum if you're unsure or have questions about steps in a guide/tutorial. - -- **For Arduino projects check these very common issues to ensure they don't apply**: - - - For uploading sketches or communicating with the board make sure you're using - a **USB data cable** and **not** a **USB charge-only cable**. It is sometimes - very hard to tell the difference between a data and charge cable! Try using the - cable with other devices or swapping to another cable to confirm it is not - the problem. - - - **Be sure you are supplying adequate power to the board.** Check the specs of - your board and plug in an external power supply. In many cases just - plugging a board into your computer is not enough to power it and other - peripherals. - - - **Double check all soldering joints and connections.** Flakey connections - cause many mysterious problems. See the [guide to excellent soldering](https://learn.adafruit.com/adafruit-guide-excellent-soldering/tools) for examples of good solder joints. - - - **Ensure you are using an official Arduino or Adafruit board.** We can't - guarantee a clone board will have the same functionality and work as expected - with this code and don't support them. - -If you're sure this issue is a defect in the code and checked the steps above -please fill in the following fields to provide enough troubleshooting information. -You may delete the guideline and text above to just leave the following details: - -- Arduino board: **INSERT ARDUINO BOARD NAME/TYPE HERE** - -- Arduino IDE version (found in Arduino -> About Arduino menu): **INSERT ARDUINO - VERSION HERE** - -- List the steps to reproduce the problem below (if possible attach a sketch or - copy the sketch code in too): **LIST REPRO STEPS BELOW** diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 7b641eb..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,26 +0,0 @@ -Thank you for creating a pull request to contribute to Adafruit's GitHub code! -Before you open the request please review the following guidelines and tips to -help it be more easily integrated: - -- **Describe the scope of your change--i.e. what the change does and what parts - of the code were modified.** This will help us understand any risks of integrating - the code. - -- **Describe any known limitations with your change.** For example if the change - doesn't apply to a supported platform of the library please mention it. - -- **Please run any tests or examples that can exercise your modified code.** We - strive to not break users of the code and running tests/examples helps with this - process. - -Thank you again for contributing! We will try to test and integrate the change -as soon as we can, but be aware we have many GitHub repositories to manage and -can't immediately respond to every request. There is no need to bump or check in -on a pull request (it will clutter the discussion of the request). - -Also don't be worried if the request is closed or not integrated--sometimes the -priorities of Adafruit's GitHub code (education, ease of use) might not match the -priorities of the pull request. Don't fret, the open source community thrives on -forks and GitHub makes it easy to keep your changes in a forked repo. - -After reviewing the guidelines above you can delete this text from the pull request. diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/workflows/githubci.yml b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/workflows/githubci.yml deleted file mode 100644 index 8a57d75..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.github/workflows/githubci.yml +++ /dev/null @@ -1,33 +0,0 @@ -name: Arduino Library CI - -on: [pull_request, push, repository_dispatch] - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/setup-python@v4 - with: - python-version: '3.x' - - uses: actions/checkout@v3 - - uses: actions/checkout@v3 - with: - repository: adafruit/ci-arduino - path: ci - - - name: Install the prerequisites - run: bash ci/actions_install.sh - - - name: Check for correct code formatting with clang-format - run: python3 ci/run-clang-format.py -e "ci/*" -e "bin/*" -r . - - - name: Check for correct documentation with doxygen - env: - GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }} - PRETTYNAME : "Adafruit Bus IO Library" - run: bash ci/doxy_gen_and_deploy.sh - - - name: Test the code on supported platforms - run: python3 ci/build_platform.py main_platforms zero feather32u4 - diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.piopm b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.piopm deleted file mode 100644 index 6bd37c1..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/.piopm +++ /dev/null @@ -1 +0,0 @@ -{"type": "library", "name": "Adafruit BusIO", "version": "1.17.4", "spec": {"owner": "adafruit", "id": 6214, "name": "Adafruit BusIO", "requirements": null, "uri": null}} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_BusIO_Register.cpp b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_BusIO_Register.cpp deleted file mode 100644 index f3e8187..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_BusIO_Register.cpp +++ /dev/null @@ -1,384 +0,0 @@ -#include - -#if !defined(SPI_INTERFACES_COUNT) || \ - (defined(SPI_INTERFACES_COUNT) && (SPI_INTERFACES_COUNT > 0)) - -/*! - * @brief Create a register we access over an I2C Device (which defines the - * bus and address) - * @param i2cdevice The I2CDevice to use for underlying I2C access - * @param reg_addr The address pointer value for the I2C/SMBus register, can - * be 8 or 16 bits - * @param width The width of the register data itself, defaults to 1 byte - * @param byteorder The byte order of the register (used when width is > 1), - * defaults to LSBFIRST - * @param address_width The width of the register address itself, defaults - * to 1 byte - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register(Adafruit_I2CDevice *i2cdevice, - uint16_t reg_addr, - uint8_t width, - uint8_t byteorder, - uint8_t address_width) { - _i2cdevice = i2cdevice; - _spidevice = nullptr; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Create a register we access over an SPI Device (which defines the - * bus and CS pin) - * @param spidevice The SPIDevice to use for underlying SPI access - * @param reg_addr The address pointer value for the SPI register, can - * be 8 or 16 bits - * @param type The method we use to read/write data to SPI (which is not - * as well defined as I2C) - * @param width The width of the register data itself, defaults to 1 byte - * @param byteorder The byte order of the register (used when width is > 1), - * defaults to LSBFIRST - * @param address_width The width of the register address itself, defaults - * to 1 byte - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register(Adafruit_SPIDevice *spidevice, - uint16_t reg_addr, - Adafruit_BusIO_SPIRegType type, - uint8_t width, - uint8_t byteorder, - uint8_t address_width) { - _spidevice = spidevice; - _spiregtype = type; - _i2cdevice = nullptr; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Create a register we access over an I2C or SPI Device. This is a - * handy function because we can pass in nullptr for the unused interface, - * allowing libraries to mass-define all the registers - * @param i2cdevice The I2CDevice to use for underlying I2C access, if - * nullptr we use SPI - * @param spidevice The SPIDevice to use for underlying SPI access, if - * nullptr we use I2C - * @param reg_addr The address pointer value for the I2C/SMBus/SPI register, - * can be 8 or 16 bits - * @param type The method we use to read/write data to SPI (which is not - * as well defined as I2C) - * @param width The width of the register data itself, defaults to 1 byte - * @param byteorder The byte order of the register (used when width is > 1), - * defaults to LSBFIRST - * @param address_width The width of the register address itself, defaults - * to 1 byte - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register( - Adafruit_I2CDevice *i2cdevice, Adafruit_SPIDevice *spidevice, - Adafruit_BusIO_SPIRegType type, uint16_t reg_addr, uint8_t width, - uint8_t byteorder, uint8_t address_width) { - _spidevice = spidevice; - _i2cdevice = i2cdevice; - _spiregtype = type; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Create a register we access over a GenericDevice - * @param genericdevice Generic device to use - * @param reg_addr Register address we will read/write - * @param width Width of the register in bytes (1-4) - * @param byteorder Byte order of register data (LSBFIRST or MSBFIRST) - * @param address_width Width of the register address in bytes (1 or 2) - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register( - Adafruit_GenericDevice *genericdevice, uint16_t reg_addr, uint8_t width, - uint8_t byteorder, uint8_t address_width) { - _i2cdevice = nullptr; - _spidevice = nullptr; - _genericdevice = genericdevice; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Write a buffer of data to the register location - * @param buffer Pointer to data to write - * @param len Number of bytes to write - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::write(uint8_t *buffer, uint8_t len) { - uint8_t addrbuffer[2] = {(uint8_t)(_address & 0xFF), - (uint8_t)(_address >> 8)}; - if (_i2cdevice) { - return _i2cdevice->write(buffer, len, true, addrbuffer, _addrwidth); - } - if (_spidevice) { - if (_spiregtype == ADDRESSED_OPCODE_BIT0_LOW_TO_WRITE) { - // very special case! - // pass the special opcode address which we set as the high byte of the - // regaddr - addrbuffer[0] = - (uint8_t)(_address >> 8) & ~0x01; // set bottom bit low to write - // the 'actual' reg addr is the second byte then - addrbuffer[1] = (uint8_t)(_address & 0xFF); - // the address appears to be a byte longer - return _spidevice->write(buffer, len, addrbuffer, _addrwidth + 1); - } - if (_spiregtype == ADDRBIT8_HIGH_TOREAD) { - addrbuffer[0] &= ~0x80; - } - if (_spiregtype == ADDRBIT8_HIGH_TOWRITE) { - addrbuffer[0] |= 0x80; - } - if (_spiregtype == AD8_HIGH_TOREAD_AD7_HIGH_TOINC) { - addrbuffer[0] &= ~0x80; - addrbuffer[0] |= 0x40; - } - return _spidevice->write(buffer, len, addrbuffer, _addrwidth); - } - if (_genericdevice) { - return _genericdevice->writeRegister(addrbuffer, _addrwidth, buffer, len); - } - return false; -} - -/*! - * @brief Write up to 4 bytes of data to the register location - * @param value Data to write - * @param numbytes How many bytes from 'value' to write - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::write(uint32_t value, uint8_t numbytes) { - if (numbytes == 0) { - numbytes = _width; - } - if (numbytes > 4) { - return false; - } - - // store a copy - _cached = value; - - for (int i = 0; i < numbytes; i++) { - if (_byteorder == LSBFIRST) { - _buffer[i] = value & 0xFF; - } else { - _buffer[numbytes - i - 1] = value & 0xFF; - } - value >>= 8; - } - return write(_buffer, numbytes); -} - -/*! - * @brief Read data from the register location. This does not do any error - * checking! - * @return Returns 0xFFFFFFFF on failure, value otherwise - */ -uint32_t Adafruit_BusIO_Register::read(void) { - if (!read(_buffer, _width)) { - return -1; - } - - uint32_t value = 0; - - for (int i = 0; i < _width; i++) { - value <<= 8; - if (_byteorder == LSBFIRST) { - value |= _buffer[_width - i - 1]; - } else { - value |= _buffer[i]; - } - } - - return value; -} - -/*! - * @brief Read cached data from last time we wrote to this register - * @return Returns 0xFFFFFFFF on failure, value otherwise - */ -uint32_t Adafruit_BusIO_Register::readCached(void) { return _cached; } - -/*! - @brief Read a number of bytes from a register into a buffer - @param buffer Buffer to read data into - @param len Number of bytes to read into the buffer - @return true on successful read, otherwise false -*/ -bool Adafruit_BusIO_Register::read(uint8_t *buffer, uint8_t len) { - uint8_t addrbuffer[2] = {(uint8_t)(_address & 0xFF), - (uint8_t)(_address >> 8)}; - if (_i2cdevice) { - return _i2cdevice->write_then_read(addrbuffer, _addrwidth, buffer, len); - } - if (_spidevice) { - if (_spiregtype == ADDRESSED_OPCODE_BIT0_LOW_TO_WRITE) { - // very special case! - // pass the special opcode address which we set as the high byte of the - // regaddr - addrbuffer[0] = - (uint8_t)(_address >> 8) | 0x01; // set bottom bit high to read - // the 'actual' reg addr is the second byte then - addrbuffer[1] = (uint8_t)(_address & 0xFF); - // the address appears to be a byte longer - return _spidevice->write_then_read(addrbuffer, _addrwidth + 1, buffer, - len); - } - if (_spiregtype == ADDRBIT8_HIGH_TOREAD) { - addrbuffer[0] |= 0x80; - } - if (_spiregtype == ADDRBIT8_HIGH_TOWRITE) { - addrbuffer[0] &= ~0x80; - } - if (_spiregtype == AD8_HIGH_TOREAD_AD7_HIGH_TOINC) { - addrbuffer[0] |= 0x80 | 0x40; - } - return _spidevice->write_then_read(addrbuffer, _addrwidth, buffer, len); - } - if (_genericdevice) { - return _genericdevice->readRegister(addrbuffer, _addrwidth, buffer, len); - } - return false; -} - -/*! - * @brief Read 2 bytes of data from the register location - * @param value Pointer to uint16_t variable to read into - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::read(uint16_t *value) { - if (!read(_buffer, 2)) { - return false; - } - - if (_byteorder == LSBFIRST) { - *value = _buffer[1]; - *value <<= 8; - *value |= _buffer[0]; - } else { - *value = _buffer[0]; - *value <<= 8; - *value |= _buffer[1]; - } - return true; -} - -/*! - * @brief Read 1 byte of data from the register location - * @param value Pointer to uint8_t variable to read into - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::read(uint8_t *value) { - if (!read(_buffer, 1)) { - return false; - } - - *value = _buffer[0]; - return true; -} - -/*! - * @brief Pretty printer for this register - * @param s The Stream to print to, defaults to &Serial - */ -void Adafruit_BusIO_Register::print(Stream *s) { - uint32_t val = read(); - s->print("0x"); - s->print(val, HEX); -} - -/*! - * @brief Pretty printer for this register - * @param s The Stream to print to, defaults to &Serial - */ -void Adafruit_BusIO_Register::println(Stream *s) { - print(s); - s->println(); -} - -/*! - * @brief Create a slice of the register that we can address without - * touching other bits - * @param reg The Adafruit_BusIO_Register which defines the bus/register - * @param bits The number of bits wide we are slicing - * @param shift The number of bits that our bit-slice is shifted from LSB - */ -Adafruit_BusIO_RegisterBits::Adafruit_BusIO_RegisterBits( - Adafruit_BusIO_Register *reg, uint8_t bits, uint8_t shift) { - _register = reg; - _bits = bits; - _shift = shift; -} - -/*! - * @brief Read 4 bytes of data from the register - * @return data The 4 bytes to read - */ -uint32_t Adafruit_BusIO_RegisterBits::read(void) { - uint32_t val = _register->read(); - val >>= _shift; - return val & ((1 << (_bits)) - 1); -} - -/*! - * @brief Write 4 bytes of data to the register - * @param data The 4 bytes to write - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_RegisterBits::write(uint32_t data) { - uint32_t val = _register->read(); - - // mask off the data before writing - uint32_t mask = (1 << (_bits)) - 1; - data &= mask; - - mask <<= _shift; - val &= ~mask; // remove the current data at that spot - val |= data << _shift; // and add in the new data - - return _register->write(val, _register->width()); -} - -/*! - * @brief The width of the register data, helpful for doing calculations - * @returns The data width used when initializing the register - */ -uint8_t Adafruit_BusIO_Register::width(void) { return _width; } - -/*! - * @brief Set the default width of data - * @param width the default width of data read from register - */ -void Adafruit_BusIO_Register::setWidth(uint8_t width) { _width = width; } - -/*! - * @brief Set register address - * @param address the address from register - */ -void Adafruit_BusIO_Register::setAddress(uint16_t address) { - _address = address; -} - -/*! - * @brief Set the width of register address - * @param address_width the width for register address - */ -void Adafruit_BusIO_Register::setAddressWidth(uint16_t address_width) { - _addrwidth = address_width; -} - -#endif // SPI exists diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_BusIO_Register.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_BusIO_Register.h deleted file mode 100644 index 046e04c..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_BusIO_Register.h +++ /dev/null @@ -1,117 +0,0 @@ -#ifndef Adafruit_BusIO_Register_h -#define Adafruit_BusIO_Register_h - -#include - -#if !defined(SPI_INTERFACES_COUNT) || \ - (defined(SPI_INTERFACES_COUNT) && (SPI_INTERFACES_COUNT > 0)) - -#include -#include -#include - -typedef enum _Adafruit_BusIO_SPIRegType { - ADDRBIT8_HIGH_TOREAD = 0, - /*!< - * ADDRBIT8_HIGH_TOREAD - * When reading a register you must actually send the value 0x80 + register - * address to the device. e.g. To read the register 0x0B the register value - * 0x8B is sent and to write 0x0B is sent. - */ - AD8_HIGH_TOREAD_AD7_HIGH_TOINC = 1, - - /*!< - * ADDRBIT8_HIGH_TOWRITE - * When writing to a register you must actually send the value 0x80 + - * the register address to the device. e.g. To write to the register 0x19 the - * register value 0x99 is sent and to read 0x19 is sent. - */ - ADDRBIT8_HIGH_TOWRITE = 2, - - /*!< - * ADDRESSED_OPCODE_LOWBIT_TO_WRITE - * Used by the MCP23S series, we send 0x40 |'rd with the opcode - * Then set the lowest bit to write - */ - ADDRESSED_OPCODE_BIT0_LOW_TO_WRITE = 3, - -} Adafruit_BusIO_SPIRegType; - -/*! - * @brief The class which defines a device register (a location to read/write - * data from) - */ -class Adafruit_BusIO_Register { -public: - Adafruit_BusIO_Register(Adafruit_I2CDevice *i2cdevice, uint16_t reg_addr, - uint8_t width = 1, uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - Adafruit_BusIO_Register(Adafruit_SPIDevice *spidevice, uint16_t reg_addr, - Adafruit_BusIO_SPIRegType type, uint8_t width = 1, - uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - Adafruit_BusIO_Register(Adafruit_I2CDevice *i2cdevice, - Adafruit_SPIDevice *spidevice, - Adafruit_BusIO_SPIRegType type, uint16_t reg_addr, - uint8_t width = 1, uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - Adafruit_BusIO_Register(Adafruit_GenericDevice *genericdevice, - uint16_t reg_addr, uint8_t width = 1, - uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - bool read(uint8_t *buffer, uint8_t len); - bool read(uint8_t *value); - bool read(uint16_t *value); - uint32_t read(void); - uint32_t readCached(void); - bool write(uint8_t *buffer, uint8_t len); - bool write(uint32_t value, uint8_t numbytes = 0); - - uint8_t width(void); - - void setWidth(uint8_t width); - void setAddress(uint16_t address); - void setAddressWidth(uint16_t address_width); - -#if !defined(NO_GLOBAL_INSTANCES) && !defined(NO_GLOBAL_SERIAL) - void print(Stream *s = &Serial); - void println(Stream *s = &Serial); -#else - void print(Stream *s); - void println(Stream *s); -#endif - -private: - Adafruit_I2CDevice *_i2cdevice; - Adafruit_SPIDevice *_spidevice; - Adafruit_GenericDevice *_genericdevice; - Adafruit_BusIO_SPIRegType _spiregtype; - uint16_t _address; - uint8_t _width, _addrwidth, _byteorder; - uint8_t _buffer[4]; // we won't support anything larger than uint32 for - // non-buffered read - uint32_t _cached = 0; -}; - -/*! - * @brief The class which defines a slice of bits from within a device register - * (a location to read/write data from) - */ -class Adafruit_BusIO_RegisterBits { -public: - Adafruit_BusIO_RegisterBits(Adafruit_BusIO_Register *reg, uint8_t bits, - uint8_t shift); - bool write(uint32_t value); - uint32_t read(void); - -private: - Adafruit_BusIO_Register *_register; - uint8_t _bits, _shift; -}; - -#endif // SPI exists -#endif // BusIO_Register_h diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_GenericDevice.cpp b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_GenericDevice.cpp deleted file mode 100644 index 37f9cfd..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_GenericDevice.cpp +++ /dev/null @@ -1,90 +0,0 @@ -/* - Written with help by Claude! - https://claude.ai/chat/335f50b1-3dd8-435e-9139-57ec7ca26a3c (at this time - chats are not shareable :( -*/ - -#include "Adafruit_GenericDevice.h" - -/*! - * @brief Create a Generic device with the provided read/write functions - * @param obj Pointer to object instance - * @param read_func Function pointer for reading raw data - * @param write_func Function pointer for writing raw data - * @param readreg_func Function pointer for reading registers (optional) - * @param writereg_func Function pointer for writing registers (optional) */ -Adafruit_GenericDevice::Adafruit_GenericDevice( - void *obj, busio_genericdevice_read_t read_func, - busio_genericdevice_write_t write_func, - busio_genericdevice_readreg_t readreg_func, - busio_genericdevice_writereg_t writereg_func) { - _obj = obj; - _read_func = read_func; - _write_func = write_func; - _readreg_func = readreg_func; - _writereg_func = writereg_func; - _begun = false; -} - -/*! @brief Simple begin function (doesn't do much at this time) - @return true always -*/ -bool Adafruit_GenericDevice::begin(void) { - _begun = true; - return true; -} - -/*! -@brief Marks the GenericDevice as no longer in use. -@note: Since this is a GenericDevice, if you are using this with a Serial -object, this does NOT disable serial communication or release the RX/TX pins. -That must be done manually by calling Serial.end(). -*/ -void Adafruit_GenericDevice::end(void) { _begun = false; } - -/*! @brief Write a buffer of data - @param buffer Pointer to buffer of data to write - @param len Number of bytes to write - @return true if write was successful, otherwise false */ -bool Adafruit_GenericDevice::write(const uint8_t *buffer, size_t len) { - if (!_begun) - return false; - return _write_func(_obj, buffer, len); -} - -/*! @brief Read data into a buffer - @param buffer Pointer to buffer to read data into - @param len Number of bytes to read - @return true if read was successful, otherwise false */ -bool Adafruit_GenericDevice::read(uint8_t *buffer, size_t len) { - if (!_begun) - return false; - return _read_func(_obj, buffer, len); -} - -/*! @brief Read from a register location - @param addr_buf Buffer containing register address - @param addrsiz Size of register address in bytes - @param buf Buffer to store read data - @param bufsiz Size of data to read in bytes - @return true if read was successful, otherwise false */ -bool Adafruit_GenericDevice::readRegister(uint8_t *addr_buf, uint8_t addrsiz, - uint8_t *buf, uint16_t bufsiz) { - if (!_begun || !_readreg_func) - return false; - return _readreg_func(_obj, addr_buf, addrsiz, buf, bufsiz); -} - -/*! @brief Write to a register location - @param addr_buf Buffer containing register address - @param addrsiz Size of register address in bytes - @param buf Buffer containing data to write - @param bufsiz Size of data to write in bytes - @return true if write was successful, otherwise false */ -bool Adafruit_GenericDevice::writeRegister(uint8_t *addr_buf, uint8_t addrsiz, - const uint8_t *buf, - uint16_t bufsiz) { - if (!_begun || !_writereg_func) - return false; - return _writereg_func(_obj, addr_buf, addrsiz, buf, bufsiz); -} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_GenericDevice.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_GenericDevice.h deleted file mode 100644 index d5cb326..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_GenericDevice.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef ADAFRUIT_GENERICDEVICE_H -#define ADAFRUIT_GENERICDEVICE_H - -#include - -typedef bool (*busio_genericdevice_read_t)(void *obj, uint8_t *buffer, - size_t len); -typedef bool (*busio_genericdevice_write_t)(void *obj, const uint8_t *buffer, - size_t len); -typedef bool (*busio_genericdevice_readreg_t)(void *obj, uint8_t *addr_buf, - uint8_t addrsiz, uint8_t *data, - uint16_t datalen); -typedef bool (*busio_genericdevice_writereg_t)(void *obj, uint8_t *addr_buf, - uint8_t addrsiz, - const uint8_t *data, - uint16_t datalen); - -/*! - * @brief Class for communicating with a device via generic read/write functions - */ -class Adafruit_GenericDevice { -public: - Adafruit_GenericDevice( - void *obj, busio_genericdevice_read_t read_func, - busio_genericdevice_write_t write_func, - busio_genericdevice_readreg_t readreg_func = nullptr, - busio_genericdevice_writereg_t writereg_func = nullptr); - - bool begin(void); - void end(void); - - bool read(uint8_t *buffer, size_t len); - bool write(const uint8_t *buffer, size_t len); - bool readRegister(uint8_t *addr_buf, uint8_t addrsiz, uint8_t *buf, - uint16_t bufsiz); - bool writeRegister(uint8_t *addr_buf, uint8_t addrsiz, const uint8_t *buf, - uint16_t bufsiz); - -protected: - /*! @brief Function pointer for reading raw data from the device */ - busio_genericdevice_read_t _read_func; - /*! @brief Function pointer for writing raw data to the device */ - busio_genericdevice_write_t _write_func; - /*! @brief Function pointer for reading a 'register' from the device */ - busio_genericdevice_readreg_t _readreg_func; - /*! @brief Function pointer for writing a 'register' to the device */ - busio_genericdevice_writereg_t _writereg_func; - - bool _begun; ///< whether we have initialized yet (in case the function needs - ///< to do something) - -private: - void *_obj; ///< Pointer to object instance -}; - -#endif // ADAFRUIT_GENERICDEVICE_H diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CDevice.cpp b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CDevice.cpp deleted file mode 100644 index 2633cf1..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CDevice.cpp +++ /dev/null @@ -1,320 +0,0 @@ -#include "Adafruit_I2CDevice.h" - -// #define DEBUG_SERIAL Serial - -/*! - * @brief Create an I2C device at a given address - * @param addr The 7-bit I2C address for the device - * @param theWire The I2C bus to use, defaults to &Wire - */ -Adafruit_I2CDevice::Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire) { - _addr = addr; - _wire = theWire; - _begun = false; -#ifdef ARDUINO_ARCH_SAMD - _maxBufferSize = 250; // as defined in Wire.h's RingBuffer -#elif defined(ESP32) - _maxBufferSize = I2C_BUFFER_LENGTH; -#else - _maxBufferSize = 32; -#endif -} - -/*! - * @brief Initializes and does basic address detection - * @param addr_detect Whether we should attempt to detect the I2C address - * with a scan. 99% of sensors/devices don't mind, but once in a while they - * don't respond well to a scan! - * @return True if I2C initialized and a device with the addr found - */ -bool Adafruit_I2CDevice::begin(bool addr_detect) { - _wire->begin(); - _begun = true; - - if (addr_detect) { - return detected(); - } - return true; -} - -/*! - * @brief De-initialize device, turn off the Wire interface - */ -void Adafruit_I2CDevice::end(void) { - // Not all port implement Wire::end(), such as - // - ESP8266 - // - AVR core without WIRE_HAS_END - // - ESP32: end() is implemented since 2.0.1 which is latest at the moment. - // Temporarily disable for now to give time for user to update. -#if !(defined(ESP8266) || \ - (defined(ARDUINO_ARCH_AVR) && !defined(WIRE_HAS_END)) || \ - defined(ARDUINO_ARCH_ESP32)) - _wire->end(); - _begun = false; -#endif -} - -/*! - * @brief Scans I2C for the address - note will give a false-positive - * if there's no pullups on I2C - * @return True if I2C initialized and a device with the addr found - */ -bool Adafruit_I2CDevice::detected(void) { - // Init I2C if not done yet - if (!_begun && !begin()) { - return false; - } - - // A basic scanner, see if it ACK's - _wire->beginTransmission(_addr); -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("Address 0x")); - DEBUG_SERIAL.print(_addr, HEX); -#endif -#ifdef ARDUINO_ARCH_MBED - _wire->write(0); // forces a write request instead of a read -#endif - if (_wire->endTransmission() == 0) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F(" Detected")); -#endif - return true; - } -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F(" Not detected")); -#endif - return false; -} - -/*! - * @brief Write a buffer or two to the I2C device. Cannot be more than - * maxBufferSize() bytes. - * @param buffer Pointer to buffer of data to write. This is const to - * ensure the content of this buffer doesn't change. - * @param len Number of bytes from buffer to write - * @param prefix_buffer Pointer to optional array of data to write before - * buffer. Cannot be more than maxBufferSize() bytes. This is const to - * ensure the content of this buffer doesn't change. - * @param prefix_len Number of bytes from prefix buffer to write - * @param stop Whether to send an I2C STOP signal on write - * @return True if write was successful, otherwise false. - */ -bool Adafruit_I2CDevice::write(const uint8_t *buffer, size_t len, bool stop, - const uint8_t *prefix_buffer, - size_t prefix_len) { - if ((len + prefix_len) > maxBufferSize()) { - // currently not guaranteed to work if more than 32 bytes! - // we will need to find out if some platforms have larger - // I2C buffer sizes :/ -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F("\tI2CDevice could not write such a large buffer")); -#endif - return false; - } - - _wire->beginTransmission(_addr); - - // Write the prefix data (usually an address) - if ((prefix_len != 0) && (prefix_buffer != nullptr)) { - if (_wire->write(prefix_buffer, prefix_len) != prefix_len) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F("\tI2CDevice failed to write")); -#endif - return false; - } - } - - // Write the data itself - if (_wire->write(buffer, len) != len) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F("\tI2CDevice failed to write")); -#endif - return false; - } - -#ifdef DEBUG_SERIAL - - DEBUG_SERIAL.print(F("\tI2CWRITE @ 0x")); - DEBUG_SERIAL.print(_addr, HEX); - DEBUG_SERIAL.print(F(" :: ")); - if ((prefix_len != 0) && (prefix_buffer != nullptr)) { - for (uint16_t i = 0; i < prefix_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(prefix_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - } - } - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (i % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - - if (stop) { - DEBUG_SERIAL.print("\tSTOP"); - } -#endif - - if (_wire->endTransmission(stop) == 0) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(); - // DEBUG_SERIAL.println("Sent!"); -#endif - return true; - } else { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println("\tFailed to send!"); -#endif - return false; - } -} - -/*! - * @brief Read from I2C into a buffer from the I2C device. - * Cannot be more than maxBufferSize() bytes. - * @param buffer Pointer to buffer of data to read into - * @param len Number of bytes from buffer to read. - * @param stop Whether to send an I2C STOP signal on read - * @return True if read was successful, otherwise false. - */ -bool Adafruit_I2CDevice::read(uint8_t *buffer, size_t len, bool stop) { - size_t pos = 0; - while (pos < len) { - size_t read_len = - ((len - pos) > maxBufferSize()) ? maxBufferSize() : (len - pos); - bool read_stop = (pos < (len - read_len)) ? false : stop; - if (!_read(buffer + pos, read_len, read_stop)) - return false; - pos += read_len; - } - return true; -} - -bool Adafruit_I2CDevice::_read(uint8_t *buffer, size_t len, bool stop) { -#if defined(TinyWireM_h) - size_t recv = _wire->requestFrom((uint8_t)_addr, (uint8_t)len); -#elif defined(ARDUINO_ARCH_MEGAAVR) - size_t recv = _wire->requestFrom(_addr, len, stop); -#else - size_t recv = _wire->requestFrom((uint8_t)_addr, (uint8_t)len, (uint8_t)stop); -#endif - - if (recv != len) { - // Not enough data available to fulfill our obligation! -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tI2CDevice did not receive enough data: ")); - DEBUG_SERIAL.println(recv); -#endif - return false; - } - - for (uint16_t i = 0; i < len; i++) { - buffer[i] = _wire->read(); - } - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tI2CREAD @ 0x")); - DEBUG_SERIAL.print(_addr, HEX); - DEBUG_SERIAL.print(F(" :: ")); - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - return true; -} - -/*! - * @brief Write some data, then read some data from I2C into another buffer. - * Cannot be more than maxBufferSize() bytes. The buffers can point to - * same/overlapping locations. - * @param write_buffer Pointer to buffer of data to write from - * @param write_len Number of bytes from buffer to write. - * @param read_buffer Pointer to buffer of data to read into. - * @param read_len Number of bytes from buffer to read. - * @param stop Whether to send an I2C STOP signal between the write and read - * @return True if write & read was successful, otherwise false. - */ -bool Adafruit_I2CDevice::write_then_read(const uint8_t *write_buffer, - size_t write_len, uint8_t *read_buffer, - size_t read_len, bool stop) { - if (!write(write_buffer, write_len, stop)) { - return false; - } - - return read(read_buffer, read_len); -} - -/*! - * @brief Returns the 7-bit address of this device - * @return The 7-bit address of this device - */ -uint8_t Adafruit_I2CDevice::address(void) { return _addr; } - -/*! - * @brief Change the I2C clock speed to desired (relies on - * underlying Wire support! - * @param desiredclk The desired I2C SCL frequency - * @return True if this platform supports changing I2C speed. - * Not necessarily that the speed was achieved! - */ -bool Adafruit_I2CDevice::setSpeed(uint32_t desiredclk) { -#if defined(__AVR_ATmega328__) || \ - defined(__AVR_ATmega328P__) // fix arduino core set clock - // calculate TWBR correctly - - if ((F_CPU / 18) < desiredclk) { -#ifdef DEBUG_SERIAL - Serial.println(F("I2C.setSpeed too high.")); -#endif - return false; - } - uint32_t atwbr = ((F_CPU / desiredclk) - 16) / 2; - if (atwbr > 16320) { -#ifdef DEBUG_SERIAL - Serial.println(F("I2C.setSpeed too low.")); -#endif - return false; - } - - if (atwbr <= 255) { - atwbr /= 1; - TWSR = 0x0; - } else if (atwbr <= 1020) { - atwbr /= 4; - TWSR = 0x1; - } else if (atwbr <= 4080) { - atwbr /= 16; - TWSR = 0x2; - } else { // if (atwbr <= 16320) - atwbr /= 64; - TWSR = 0x3; - } - TWBR = atwbr; - -#ifdef DEBUG_SERIAL - Serial.print(F("TWSR prescaler = ")); - Serial.println(pow(4, TWSR)); - Serial.print(F("TWBR = ")); - Serial.println(atwbr); -#endif - return true; -#elif (ARDUINO >= 157) && !defined(ARDUINO_STM32_FEATHER) && \ - !defined(TinyWireM_h) - _wire->setClock(desiredclk); - return true; - -#else - (void)desiredclk; - return false; -#endif -} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CDevice.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CDevice.h deleted file mode 100644 index 6bda7ba..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CDevice.h +++ /dev/null @@ -1,36 +0,0 @@ -#ifndef Adafruit_I2CDevice_h -#define Adafruit_I2CDevice_h - -#include -#include - -///< The class which defines how we will talk to this device over I2C -class Adafruit_I2CDevice { -public: - Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire); - uint8_t address(void); - bool begin(bool addr_detect = true); - void end(void); - bool detected(void); - - bool read(uint8_t *buffer, size_t len, bool stop = true); - bool write(const uint8_t *buffer, size_t len, bool stop = true, - const uint8_t *prefix_buffer = nullptr, size_t prefix_len = 0); - bool write_then_read(const uint8_t *write_buffer, size_t write_len, - uint8_t *read_buffer, size_t read_len, - bool stop = false); - bool setSpeed(uint32_t desiredclk); - - /*! @brief How many bytes we can read in a transaction - * @return The size of the Wire receive/transmit buffer */ - size_t maxBufferSize() { return _maxBufferSize; } - -private: - uint8_t _addr; - TwoWire *_wire; - bool _begun; - size_t _maxBufferSize; - bool _read(uint8_t *buffer, size_t len, bool stop); -}; - -#endif // Adafruit_I2CDevice_h diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CRegister.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CRegister.h deleted file mode 100644 index 186850f..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_I2CRegister.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef _ADAFRUIT_I2C_REGISTER_H_ -#define _ADAFRUIT_I2C_REGISTER_H_ - -#include -#include - -typedef Adafruit_BusIO_Register Adafruit_I2CRegister; -typedef Adafruit_BusIO_RegisterBits Adafruit_I2CRegisterBits; - -#endif diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_SPIDevice.cpp b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_SPIDevice.cpp deleted file mode 100644 index 3283de6..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_SPIDevice.cpp +++ /dev/null @@ -1,512 +0,0 @@ -#include "Adafruit_SPIDevice.h" - -// #define DEBUG_SERIAL Serial - -#ifdef BUSIO_USE_FAST_PINIO -#define BUSIO_SET_CLOCK_LOW() (*clkPort = *clkPort & ~clkPinMask) -#define BUSIO_SET_CLOCK_HIGH() (*clkPort = *clkPort | clkPinMask) -#define BUSIO_READ_MISO() (*misoPort & misoPinMask) -#define BUSIO_WRITE_MOSI(value) \ - do { \ - if (value) \ - *mosiPort = *mosiPort | mosiPinMask; \ - else \ - *mosiPort = *mosiPort & ~mosiPinMask; \ - } while (0) -#else -#define BUSIO_SET_CLOCK_LOW() digitalWrite(_sck, LOW) -#define BUSIO_SET_CLOCK_HIGH() digitalWrite(_sck, HIGH) -#define BUSIO_READ_MISO() digitalRead(_miso) -#define BUSIO_WRITE_MOSI(value) digitalWrite(_mosi, value) -#endif - -/*! - * @brief Create an SPI device with the given CS pin and settings - * @param cspin The arduino pin number to use for chip select - * @param freq The SPI clock frequency to use, defaults to 1MHz - * @param dataOrder The SPI data order to use for bits within each byte, - * defaults to SPI_BITORDER_MSBFIRST - * @param dataMode The SPI mode to use, defaults to SPI_MODE0 - * @param theSPI The SPI bus to use, defaults to &theSPI - */ -Adafruit_SPIDevice::Adafruit_SPIDevice(int8_t cspin, uint32_t freq, - BusIOBitOrder dataOrder, - uint8_t dataMode, SPIClass *theSPI) { -#ifdef BUSIO_HAS_HW_SPI - _cs = cspin; - _sck = _mosi = _miso = -1; - _spi = theSPI; - _begun = false; - _spiSetting = new SPISettings(freq, dataOrder, dataMode); - _freq = freq; - _dataOrder = dataOrder; - _dataMode = dataMode; -#else - // unused, but needed to suppress compiler warns - (void)cspin; - (void)freq; - (void)dataOrder; - (void)dataMode; - (void)theSPI; -#endif -} - -/*! - * @brief Create an SPI device with the given CS pin and settings - * @param cspin The arduino pin number to use for chip select - * @param sckpin The arduino pin number to use for SCK - * @param misopin The arduino pin number to use for MISO, set to -1 if not - * used - * @param mosipin The arduino pin number to use for MOSI, set to -1 if not - * used - * @param freq The SPI clock frequency to use, defaults to 1MHz - * @param dataOrder The SPI data order to use for bits within each byte, - * defaults to SPI_BITORDER_MSBFIRST - * @param dataMode The SPI mode to use, defaults to SPI_MODE0 - */ -Adafruit_SPIDevice::Adafruit_SPIDevice(int8_t cspin, int8_t sckpin, - int8_t misopin, int8_t mosipin, - uint32_t freq, BusIOBitOrder dataOrder, - uint8_t dataMode) { - _cs = cspin; - _sck = sckpin; - _miso = misopin; - _mosi = mosipin; - -#ifdef BUSIO_USE_FAST_PINIO - csPort = (BusIO_PortReg *)portOutputRegister(digitalPinToPort(cspin)); - csPinMask = digitalPinToBitMask(cspin); - if (mosipin != -1) { - mosiPort = (BusIO_PortReg *)portOutputRegister(digitalPinToPort(mosipin)); - mosiPinMask = digitalPinToBitMask(mosipin); - } - if (misopin != -1) { - misoPort = (BusIO_PortReg *)portInputRegister(digitalPinToPort(misopin)); - misoPinMask = digitalPinToBitMask(misopin); - } - clkPort = (BusIO_PortReg *)portOutputRegister(digitalPinToPort(sckpin)); - clkPinMask = digitalPinToBitMask(sckpin); -#endif - - _freq = freq; - _dataOrder = dataOrder; - _dataMode = dataMode; - _begun = false; -} - -/*! - * @brief Release memory allocated in constructors - */ -Adafruit_SPIDevice::~Adafruit_SPIDevice() { - if (_spiSetting) - delete _spiSetting; -} - -/*! - * @brief Initializes SPI bus and sets CS pin high - * @return Always returns true because there's no way to test success of SPI - * init - */ -bool Adafruit_SPIDevice::begin(void) { - if (_cs != -1) { - pinMode(_cs, OUTPUT); - digitalWrite(_cs, HIGH); - } - - if (_spi) { // hardware SPI -#ifdef BUSIO_HAS_HW_SPI - _spi->begin(); -#endif - } else { - pinMode(_sck, OUTPUT); - - if ((_dataMode == SPI_MODE0) || (_dataMode == SPI_MODE1)) { - // idle low on mode 0 and 1 - digitalWrite(_sck, LOW); - } else { - // idle high on mode 2 or 3 - digitalWrite(_sck, HIGH); - } - if (_mosi != -1) { - pinMode(_mosi, OUTPUT); - digitalWrite(_mosi, HIGH); - } - if (_miso != -1) { - pinMode(_miso, INPUT); - } - } - - _begun = true; - return true; -} - -/*! - * @brief Transfer (send/receive) a buffer over hard/soft SPI, without - * transaction management - * @param buffer The buffer to send and receive at the same time - * @param len The number of bytes to transfer - */ -void Adafruit_SPIDevice::transfer(uint8_t *buffer, size_t len) { - // - // HARDWARE SPI - // - if (_spi) { -#ifdef BUSIO_HAS_HW_SPI -#if defined(SPARK) - _spi->transfer(buffer, buffer, len, nullptr); -#elif defined(STM32) - for (size_t i = 0; i < len; i++) { - _spi->transfer(buffer[i]); - } -#else - _spi->transfer(buffer, len); -#endif - return; -#endif - } - - // - // SOFTWARE SPI - // - uint8_t startbit; - if (_dataOrder == SPI_BITORDER_LSBFIRST) { - startbit = 0x1; - } else { - startbit = 0x80; - } - - bool towrite, lastmosi = !(buffer[0] & startbit); - uint8_t bitdelay_us = (1000000 / _freq) / 2; - - for (size_t i = 0; i < len; i++) { - uint8_t reply = 0; - uint8_t send = buffer[i]; - - /* - Serial.print("\tSending software SPI byte 0x"); - Serial.print(send, HEX); - Serial.print(" -> 0x"); - */ - - // Serial.print(send, HEX); - for (uint8_t b = startbit; b != 0; - b = (_dataOrder == SPI_BITORDER_LSBFIRST) ? b << 1 : b >> 1) { - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_dataMode == SPI_MODE0 || _dataMode == SPI_MODE2) { - towrite = send & b; - if ((_mosi != -1) && (lastmosi != towrite)) { - BUSIO_WRITE_MOSI(towrite); - lastmosi = towrite; - } - - BUSIO_SET_CLOCK_HIGH(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_miso != -1) { - if (BUSIO_READ_MISO()) - reply |= b; - } - - BUSIO_SET_CLOCK_LOW(); - - } else if (_dataMode == SPI_MODE3) { - - if (_mosi != -1) { // transmit on falling edge - BUSIO_WRITE_MOSI(send & b); - } - - BUSIO_SET_CLOCK_LOW(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - BUSIO_SET_CLOCK_HIGH(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_miso != -1) { // read on rising edge - if (BUSIO_READ_MISO()) { - reply |= b; - } - } - - } else { // || _dataMode == SPI_MODE1) - - BUSIO_SET_CLOCK_HIGH(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_mosi != -1) { - BUSIO_WRITE_MOSI(send & b); - } - - BUSIO_SET_CLOCK_LOW(); - - if (_miso != -1) { - if (BUSIO_READ_MISO()) { - reply |= b; - } - } - } - } - if (_miso != -1) { - buffer[i] = reply; - } - } - return; -} - -/*! - * @brief Transfer (send/receive) one byte over hard/soft SPI, without - * transaction management - * @param send The byte to send - * @return The byte received while transmitting - */ -uint8_t Adafruit_SPIDevice::transfer(uint8_t send) { - uint8_t data = send; - transfer(&data, 1); - return data; -} - -/*! - * @brief Manually begin a transaction (calls beginTransaction if hardware - * SPI) - */ -void Adafruit_SPIDevice::beginTransaction(void) { - if (_spi) { -#ifdef BUSIO_HAS_HW_SPI - _spi->beginTransaction(*_spiSetting); -#endif - } -} - -/*! - * @brief Manually end a transaction (calls endTransaction if hardware SPI) - */ -void Adafruit_SPIDevice::endTransaction(void) { - if (_spi) { -#ifdef BUSIO_HAS_HW_SPI - _spi->endTransaction(); -#endif - } -} - -/*! - * @brief Assert/Deassert the CS pin if it is defined - * @param value The state the CS is set to - */ -void Adafruit_SPIDevice::setChipSelect(int value) { - if (_cs != -1) { - digitalWrite(_cs, value); - } -} - -/*! - * @brief Write a buffer or two to the SPI device, with transaction - * management. - * @brief Manually begin a transaction (calls beginTransaction if hardware - * SPI) with asserting the CS pin - */ -void Adafruit_SPIDevice::beginTransactionWithAssertingCS() { - beginTransaction(); - setChipSelect(LOW); -} - -/*! - * @brief Manually end a transaction (calls endTransaction if hardware SPI) - * with deasserting the CS pin - */ -void Adafruit_SPIDevice::endTransactionWithDeassertingCS() { - setChipSelect(HIGH); - endTransaction(); -} - -/*! - * @brief Write a buffer or two to the SPI device, with transaction - * management. - * @param buffer Pointer to buffer of data to write - * @param len Number of bytes from buffer to write - * @param prefix_buffer Pointer to optional array of data to write before - * buffer. - * @param prefix_len Number of bytes from prefix buffer to write - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::write(const uint8_t *buffer, size_t len, - const uint8_t *prefix_buffer, - size_t prefix_len) { - beginTransactionWithAssertingCS(); - - // do the writing -#if defined(ARDUINO_ARCH_ESP32) - if (_spi) { - if (prefix_len > 0) { - _spi->transferBytes((uint8_t *)prefix_buffer, nullptr, prefix_len); - } - if (len > 0) { - _spi->transferBytes((uint8_t *)buffer, nullptr, len); - } - } else -#endif - { - for (size_t i = 0; i < prefix_len; i++) { - transfer(prefix_buffer[i]); - } - for (size_t i = 0; i < len; i++) { - transfer(buffer[i]); - } - } - endTransactionWithDeassertingCS(); - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Wrote: ")); - if ((prefix_len != 0) && (prefix_buffer != nullptr)) { - for (uint16_t i = 0; i < prefix_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(prefix_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - } - } - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (i % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - return true; -} - -/*! - * @brief Read from SPI into a buffer from the SPI device, with transaction - * management. - * @param buffer Pointer to buffer of data to read into - * @param len Number of bytes from buffer to read. - * @param sendvalue The 8-bits of data to write when doing the data read, - * defaults to 0xFF - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::read(uint8_t *buffer, size_t len, uint8_t sendvalue) { - memset(buffer, sendvalue, len); // clear out existing buffer - - beginTransactionWithAssertingCS(); - transfer(buffer, len); - endTransactionWithDeassertingCS(); - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Read: ")); - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - return true; -} - -/*! - * @brief Write some data, then read some data from SPI into another buffer, - * with transaction management. The buffers can point to same/overlapping - * locations. This does not transmit-receive at the same time! - * @param write_buffer Pointer to buffer of data to write from - * @param write_len Number of bytes from buffer to write. - * @param read_buffer Pointer to buffer of data to read into. - * @param read_len Number of bytes from buffer to read. - * @param sendvalue The 8-bits of data to write when doing the data read, - * defaults to 0xFF - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::write_then_read(const uint8_t *write_buffer, - size_t write_len, uint8_t *read_buffer, - size_t read_len, uint8_t sendvalue) { - beginTransactionWithAssertingCS(); - // do the writing -#if defined(ARDUINO_ARCH_ESP32) - if (_spi) { - if (write_len > 0) { - _spi->transferBytes((uint8_t *)write_buffer, nullptr, write_len); - } - } else -#endif - { - for (size_t i = 0; i < write_len; i++) { - transfer(write_buffer[i]); - } - } - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Wrote: ")); - for (uint16_t i = 0; i < write_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(write_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (write_len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - // do the reading - for (size_t i = 0; i < read_len; i++) { - read_buffer[i] = transfer(sendvalue); - } - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Read: ")); - for (uint16_t i = 0; i < read_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(read_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (read_len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - endTransactionWithDeassertingCS(); - - return true; -} - -/*! - * @brief Write some data and read some data at the same time from SPI - * into the same buffer, with transaction management. This is basicaly a wrapper - * for transfer() with CS-pin and transaction management. This /does/ - * transmit-receive at the same time! - * @param buffer Pointer to buffer of data to write/read to/from - * @param len Number of bytes from buffer to write/read. - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::write_and_read(uint8_t *buffer, size_t len) { - beginTransactionWithAssertingCS(); - transfer(buffer, len); - endTransactionWithDeassertingCS(); - - return true; -} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_SPIDevice.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_SPIDevice.h deleted file mode 100644 index 82a0281..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/Adafruit_SPIDevice.h +++ /dev/null @@ -1,149 +0,0 @@ -#ifndef Adafruit_SPIDevice_h -#define Adafruit_SPIDevice_h - -#include - -#if !defined(SPI_INTERFACES_COUNT) || \ - (defined(SPI_INTERFACES_COUNT) && (SPI_INTERFACES_COUNT > 0)) -// HW SPI available -#include -#define BUSIO_HAS_HW_SPI -#else -// SW SPI ONLY -enum { SPI_MODE0, SPI_MODE1, SPI_MODE2, SPI_MODE3 }; -typedef uint8_t SPIClass; -#endif - -// some modern SPI definitions don't have BitOrder enum -#if (defined(__AVR__) && !defined(ARDUINO_ARCH_MEGAAVR)) || \ - defined(ESP8266) || defined(TEENSYDUINO) || defined(SPARK) || \ - defined(ARDUINO_ARCH_SPRESENSE) || defined(MEGATINYCORE) || \ - defined(DXCORE) || defined(ARDUINO_AVR_ATmega4809) || \ - defined(ARDUINO_AVR_ATmega4808) || defined(ARDUINO_AVR_ATmega3209) || \ - defined(ARDUINO_AVR_ATmega3208) || defined(ARDUINO_AVR_ATmega1609) || \ - defined(ARDUINO_AVR_ATmega1608) || defined(ARDUINO_AVR_ATmega809) || \ - defined(ARDUINO_AVR_ATmega808) || defined(ARDUINO_ARCH_ARC32) || \ - defined(ARDUINO_ARCH_XMC) - -typedef enum _BitOrder { - SPI_BITORDER_MSBFIRST = MSBFIRST, - SPI_BITORDER_LSBFIRST = LSBFIRST, -} BusIOBitOrder; - -#elif defined(ESP32) || defined(__ASR6501__) || defined(__ASR6502__) - -// some modern SPI definitions don't have BitOrder enum and have different SPI -// mode defines -typedef enum _BitOrder { - SPI_BITORDER_MSBFIRST = SPI_MSBFIRST, - SPI_BITORDER_LSBFIRST = SPI_LSBFIRST, -} BusIOBitOrder; - -#else -// Some platforms have a BitOrder enum but its named MSBFIRST/LSBFIRST -#define SPI_BITORDER_MSBFIRST MSBFIRST -#define SPI_BITORDER_LSBFIRST LSBFIRST -typedef BitOrder BusIOBitOrder; -#endif - -#if defined(__IMXRT1062__) // Teensy 4.x -// *Warning* I disabled the usage of FAST_PINIO as the set/clear operations -// used in the cpp file are not atomic and can effect multiple IO pins -// and if an interrupt happens in between the time the code reads the register -// and writes out the updated value, that changes one or more other IO pins -// on that same IO port, those change will be clobbered when the updated -// values are written back. A fast version can be implemented that uses the -// ports set and clear registers which are atomic. -// typedef volatile uint32_t BusIO_PortReg; -// typedef uint32_t BusIO_PortMask; -// #define BUSIO_USE_FAST_PINIO - -#elif defined(__MBED__) || defined(__ZEPHYR__) -// Boards based on RTOS cores like mbed or Zephyr are not going to expose the -// low level registers needed for fast pin manipulation -#undef BUSIO_USE_FAST_PINIO - -#elif defined(ARDUINO_ARCH_XMC) -#undef BUSIO_USE_FAST_PINIO - -#elif defined(__AVR__) || defined(TEENSYDUINO) -typedef volatile uint8_t BusIO_PortReg; -typedef uint8_t BusIO_PortMask; -#define BUSIO_USE_FAST_PINIO - -#elif defined(ESP8266) || defined(ESP32) || defined(__SAM3X8E__) || \ - defined(ARDUINO_ARCH_SAMD) -typedef volatile uint32_t BusIO_PortReg; -typedef uint32_t BusIO_PortMask; -#define BUSIO_USE_FAST_PINIO - -#elif (defined(__arm__) || defined(ARDUINO_FEATHER52)) && \ - !defined(ARDUINO_ARCH_RP2040) && !defined(ARDUINO_SILABS) && \ - !defined(ARDUINO_UNOR4_MINIMA) && !defined(ARDUINO_UNOR4_WIFI) && \ - !defined(PORTDUINO) -typedef volatile uint32_t BusIO_PortReg; -typedef uint32_t BusIO_PortMask; -#if !defined(__ASR6501__) && !defined(__ASR6502__) -#define BUSIO_USE_FAST_PINIO -#endif - -#else -#undef BUSIO_USE_FAST_PINIO -#endif - -/**! The class which defines how we will talk to this device over SPI **/ -class Adafruit_SPIDevice { -public: -#ifdef BUSIO_HAS_HW_SPI - Adafruit_SPIDevice(int8_t cspin, uint32_t freq = 1000000, - BusIOBitOrder dataOrder = SPI_BITORDER_MSBFIRST, - uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI); -#else - Adafruit_SPIDevice(int8_t cspin, uint32_t freq = 1000000, - BusIOBitOrder dataOrder = SPI_BITORDER_MSBFIRST, - uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = nullptr); -#endif - Adafruit_SPIDevice(int8_t cspin, int8_t sck, int8_t miso, int8_t mosi, - uint32_t freq = 1000000, - BusIOBitOrder dataOrder = SPI_BITORDER_MSBFIRST, - uint8_t dataMode = SPI_MODE0); - ~Adafruit_SPIDevice(); - - bool begin(void); - bool read(uint8_t *buffer, size_t len, uint8_t sendvalue = 0xFF); - bool write(const uint8_t *buffer, size_t len, - const uint8_t *prefix_buffer = nullptr, size_t prefix_len = 0); - bool write_then_read(const uint8_t *write_buffer, size_t write_len, - uint8_t *read_buffer, size_t read_len, - uint8_t sendvalue = 0xFF); - bool write_and_read(uint8_t *buffer, size_t len); - - uint8_t transfer(uint8_t send); - void transfer(uint8_t *buffer, size_t len); - void beginTransaction(void); - void endTransaction(void); - void beginTransactionWithAssertingCS(); - void endTransactionWithDeassertingCS(); - -private: -#ifdef BUSIO_HAS_HW_SPI - SPIClass *_spi = nullptr; - SPISettings *_spiSetting = nullptr; -#else - uint8_t *_spi = nullptr; - uint8_t *_spiSetting = nullptr; -#endif - uint32_t _freq; - BusIOBitOrder _dataOrder; - uint8_t _dataMode; - void setChipSelect(int value); - - int8_t _cs, _sck, _mosi, _miso; -#ifdef BUSIO_USE_FAST_PINIO - BusIO_PortReg *mosiPort, *clkPort, *misoPort, *csPort; - BusIO_PortMask mosiPinMask, misoPinMask, clkPinMask, csPinMask; -#endif - bool _begun; -}; - -#endif // Adafruit_SPIDevice_h diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/CMakeLists.txt b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/CMakeLists.txt deleted file mode 100644 index 3fcb0b8..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/CMakeLists.txt +++ /dev/null @@ -1,11 +0,0 @@ -# Adafruit Bus IO Library -# https://github.com/adafruit/Adafruit_BusIO -# MIT License - -cmake_minimum_required(VERSION 3.5) - -idf_component_register(SRCS "Adafruit_I2CDevice.cpp" "Adafruit_BusIO_Register.cpp" "Adafruit_SPIDevice.cpp" "Adafruit_GenericDevice.cpp" - INCLUDE_DIRS "." - REQUIRES arduino-esp32) - -project(Adafruit_BusIO) diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/LICENSE b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/LICENSE deleted file mode 100644 index 860e3e2..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2017 Adafruit Industries - -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. \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/README.md b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/README.md deleted file mode 100644 index 59712ff..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/README.md +++ /dev/null @@ -1,8 +0,0 @@ -# Adafruit Bus IO Library [![Build Status](https://github.com/adafruit/Adafruit_BusIO/workflows/Arduino%20Library%20CI/badge.svg)](https://github.com/adafruit/Adafruit_BusIO/actions) - - -This is a helper library to abstract away I2C, SPI, and 'generic transport' (e.g. UART) transactions and registers - -Adafruit invests time and resources providing this open source code, please support Adafruit and open-source hardware by purchasing products from Adafruit! - -MIT license, all text above must be included in any redistribution diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/component.mk b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/component.mk deleted file mode 100644 index 049f190..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/component.mk +++ /dev/null @@ -1 +0,0 @@ -COMPONENT_ADD_INCLUDEDIRS = . diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uartregtest/.uno.test.skip b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uartregtest/.uno.test.skip deleted file mode 100644 index e69de29..0000000 diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino deleted file mode 100644 index 59af308..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino +++ /dev/null @@ -1,219 +0,0 @@ -/* - Advanced example of using bstracted transport for reading and writing - register data from a UART-based device such as a TMC2209 - - Written with help by Claude! - https://claude.ai/chat/335f50b1-3dd8-435e-9139-57ec7ca26a3c (at this time - chats are not shareable :( -*/ - -#include "Adafruit_BusIO_Register.h" -#include "Adafruit_GenericDevice.h" - -// Debugging macros -#define DEBUG_SERIAL Serial - -#ifdef DEBUG_SERIAL -#define DEBUG_PRINT(x) DEBUG_SERIAL.print(x) -#define DEBUG_PRINTLN(x) DEBUG_SERIAL.println(x) -#define DEBUG_PRINT_HEX(x) \ - do { \ - if (x < 0x10) \ - DEBUG_SERIAL.print('0'); \ - DEBUG_SERIAL.print(x, HEX); \ - DEBUG_SERIAL.print(' '); \ - } while (0) -#else -#define DEBUG_PRINT(x) -#define DEBUG_PRINTLN(x) -#define DEBUG_PRINT_HEX(x) -#endif - -#define TMC2209_IOIN 0x06 - -class TMC2209_UART { -private: - Stream *_uart_stream; - uint8_t _addr; - - static bool uart_read(void *thiz, uint8_t *buffer, size_t len) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - uint16_t timeout = 100; - while (dev->_uart_stream->available() < len && timeout--) { - delay(1); - } - if (timeout == 0) { - DEBUG_PRINTLN("Read timeout!"); - return false; - } - - DEBUG_PRINT("Reading: "); - for (size_t i = 0; i < len; i++) { - buffer[i] = dev->_uart_stream->read(); - DEBUG_PRINT_HEX(buffer[i]); - } - DEBUG_PRINTLN(""); - - return true; - } - - static bool uart_write(void *thiz, const uint8_t *buffer, size_t len) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - DEBUG_PRINT("Writing: "); - for (size_t i = 0; i < len; i++) { - DEBUG_PRINT_HEX(buffer[i]); - } - DEBUG_PRINTLN(""); - - dev->_uart_stream->write(buffer, len); - return true; - } - - static bool uart_readreg(void *thiz, uint8_t *addr_buf, uint8_t addrsiz, - uint8_t *data, uint16_t datalen) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - while (dev->_uart_stream->available()) - dev->_uart_stream->read(); - - uint8_t packet[4] = {0x05, uint8_t(dev->_addr << 1), addr_buf[0], 0x00}; - - packet[3] = calcCRC(packet, 3); - if (!uart_write(thiz, packet, 4)) - return false; - - // Read back echo - uint8_t echo[4]; - if (!uart_read(thiz, echo, 4)) - return false; - - // Verify echo - for (uint8_t i = 0; i < 4; i++) { - if (echo[i] != packet[i]) { - DEBUG_PRINTLN("Echo mismatch"); - return false; - } - } - - uint8_t response[8]; // sync + 0xFF + reg + 4 data bytes + CRC - if (!uart_read(thiz, response, 8)) - return false; - - // Verify response - if (response[0] != 0x05) { - DEBUG_PRINTLN("Invalid sync byte"); - return false; - } - - if (response[1] != 0xFF) { - DEBUG_PRINTLN("Invalid reply address"); - return false; - } - - if (response[2] != addr_buf[0]) { - DEBUG_PRINTLN("Register mismatch"); - return false; - } - - uint8_t crc = calcCRC(response, 7); - if (crc != response[7]) { - DEBUG_PRINTLN("CRC mismatch"); - return false; - } - - memcpy(data, &response[3], 4); - return true; - } - - static bool uart_writereg(void *thiz, uint8_t *addr_buf, uint8_t addrsiz, - const uint8_t *data, uint16_t datalen) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - while (dev->_uart_stream->available()) - dev->_uart_stream->read(); - - uint8_t packet[8] = {0x05, - uint8_t(dev->_addr << 1), - uint8_t(addr_buf[0] | 0x80), - data[0], - data[1], - data[2], - data[3], - 0x00}; - - packet[7] = calcCRC(packet, 7); - if (!uart_write(thiz, packet, 8)) - return false; - - uint8_t echo[8]; - if (!uart_read(thiz, echo, 8)) - return false; - - for (uint8_t i = 0; i < 8; i++) { - if (echo[i] != packet[i]) { - DEBUG_PRINTLN("Write echo mismatch"); - return false; - } - } - - return true; - } - - static uint8_t calcCRC(uint8_t *data, uint8_t length) { - uint8_t crc = 0; - for (uint8_t i = 0; i < length; i++) { - uint8_t currentByte = data[i]; - for (uint8_t j = 0; j < 8; j++) { - if ((crc >> 7) ^ (currentByte & 0x01)) { - crc = (crc << 1) ^ 0x07; - } else { - crc = crc << 1; - } - currentByte = currentByte >> 1; - } - } - return crc; - } - -public: - TMC2209_UART(Stream *serial, uint8_t addr) - : _uart_stream(serial), _addr(addr) {} - - Adafruit_GenericDevice *createDevice() { - return new Adafruit_GenericDevice(this, uart_read, uart_write, uart_readreg, - uart_writereg); - } -}; - -void setup() { - Serial.begin(115200); - while (!Serial) - ; - delay(100); - Serial.println("TMC2209 Generic Device register read/write test!"); - - Serial1.begin(115200); - - TMC2209_UART uart(&Serial1, 0); - Adafruit_GenericDevice *device = uart.createDevice(); - device->begin(); - - // Create register object for IOIN - Adafruit_BusIO_Register ioin_reg(device, - TMC2209_IOIN, // device and register address - 4, // width = 4 bytes - MSBFIRST, // byte order - 1); // address width = 1 byte - Serial.print("IOIN = 0x"); - Serial.println(ioin_reg.read(), HEX); - - // Create RegisterBits for VERSION field (bits 31:24) - Adafruit_BusIO_RegisterBits version_bits( - &ioin_reg, 8, 24); // 8 bits wide, starting at bit 24 - - Serial.println("Reading VERSION..."); - uint8_t version = version_bits.read(); - - Serial.print("VERSION = 0x"); - Serial.println(version, HEX); -} - -void loop() { delay(1000); } \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uarttest/.uno.test.skip b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uarttest/.uno.test.skip deleted file mode 100644 index e69de29..0000000 diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino deleted file mode 100644 index 6a11dbf..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino +++ /dev/null @@ -1,98 +0,0 @@ -/* - Abstracted transport for reading and writing data from a UART-based - device such as a TMC2209 - - Written with help by Claude! - https://claude.ai/chat/335f50b1-3dd8-435e-9139-57ec7ca26a3c (at this time - chats are not shareable :( -*/ - -#include "Adafruit_GenericDevice.h" - -/** - * Basic UART device class that demonstrates using GenericDevice with a Stream - * interface. This example shows how to wrap a Stream (like HardwareSerial or - * SoftwareSerial) with read/write callbacks that can be used by BusIO's - * register functions. - */ -class UARTDevice { -public: - UARTDevice(Stream *serial) : _serial(serial) {} - - // Static callback for writing data to UART - // Called by GenericDevice when data needs to be sent - static bool uart_write(void *thiz, const uint8_t *buffer, size_t len) { - UARTDevice *dev = (UARTDevice *)thiz; - dev->_serial->write(buffer, len); - return true; - } - - // Static callback for reading data from UART - // Includes timeout and will return false if not enough data available - static bool uart_read(void *thiz, uint8_t *buffer, size_t len) { - UARTDevice *dev = (UARTDevice *)thiz; - uint16_t timeout = 100; - while (dev->_serial->available() < len && timeout--) { - delay(1); - } - if (timeout == 0) { - return false; - } - for (size_t i = 0; i < len; i++) { - buffer[i] = dev->_serial->read(); - } - return true; - } - - // Create a GenericDevice instance using our callbacks - Adafruit_GenericDevice *createDevice() { - return new Adafruit_GenericDevice(this, uart_read, uart_write); - } - -private: - Stream *_serial; // Underlying Stream instance (HardwareSerial, etc) -}; - -void setup() { - Serial.begin(115200); - while (!Serial) - ; - delay(100); - - Serial.println("Generic Device test!"); - - // Initialize UART for device communication - Serial1.begin(115200); - - // Create UART wrapper and BusIO device - UARTDevice uart(&Serial1); - Adafruit_GenericDevice *device = uart.createDevice(); - device->begin(); - - // Test write/read cycle - uint8_t write_buf[4] = {0x5, 0x0, 0x0, 0x48}; - uint8_t read_buf[8]; - - Serial.println("Writing data..."); - if (!device->write(write_buf, 4)) { - Serial.println("Write failed!"); - return; - } - - Serial.println("Reading response..."); - if (!device->read(read_buf, 8)) { - Serial.println("Read failed!"); - return; - } - - // Print response bytes - Serial.print("Got response: "); - for (int i = 0; i < 8; i++) { - Serial.print("0x"); - Serial.print(read_buf[i], HEX); - Serial.print(" "); - } - Serial.println(); -} - -void loop() { delay(1000); } \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino deleted file mode 100644 index f2e6ba7..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino +++ /dev/null @@ -1,22 +0,0 @@ -#include - -Adafruit_I2CDevice i2c_dev = Adafruit_I2CDevice(0x10); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C address detection test"); - - if (!i2c_dev.begin()) { - Serial.print("Did not find device at 0x"); - Serial.println(i2c_dev.address(), HEX); - while (1) - ; - } - Serial.print("Device found on address 0x"); - Serial.println(i2c_dev.address(), HEX); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino deleted file mode 100644 index 4ac2626..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino +++ /dev/null @@ -1,45 +0,0 @@ -#include - -#define I2C_ADDRESS 0x60 -Adafruit_I2CDevice i2c_dev = Adafruit_I2CDevice(I2C_ADDRESS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C device read and write test"); - - if (!i2c_dev.begin()) { - Serial.print("Did not find device at 0x"); - Serial.println(i2c_dev.address(), HEX); - while (1) - ; - } - Serial.print("Device found on address 0x"); - Serial.println(i2c_dev.address(), HEX); - - uint8_t buffer[32]; - // Try to read 32 bytes - i2c_dev.read(buffer, 32); - Serial.print("Read: "); - for (uint8_t i = 0; i < 32; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); - - // read a register by writing first, then reading - buffer[0] = 0x0C; // we'll reuse the same buffer - i2c_dev.write_then_read(buffer, 1, buffer, 2, false); - Serial.print("Write then Read: "); - for (uint8_t i = 0; i < 2; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino deleted file mode 100644 index 2d44c83..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino +++ /dev/null @@ -1,43 +0,0 @@ -#include -#include - -#define I2C_ADDRESS 0x60 -Adafruit_I2CDevice i2c_dev = Adafruit_I2CDevice(I2C_ADDRESS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C device register test"); - - if (!i2c_dev.begin()) { - Serial.print("Did not find device at 0x"); - Serial.println(i2c_dev.address(), HEX); - while (1) - ; - } - Serial.print("Device found on address 0x"); - Serial.println(i2c_dev.address(), HEX); - - Adafruit_BusIO_Register id_reg = - Adafruit_BusIO_Register(&i2c_dev, 0x0C, 2, LSBFIRST); - uint16_t id; - id_reg.read(&id); - Serial.print("ID register = 0x"); - Serial.println(id, HEX); - - Adafruit_BusIO_Register thresh_reg = - Adafruit_BusIO_Register(&i2c_dev, 0x01, 2, LSBFIRST); - uint16_t thresh; - thresh_reg.read(&thresh); - Serial.print("Initial threshold register = 0x"); - Serial.println(thresh, HEX); - - thresh_reg.write(~thresh); - - Serial.print("Post threshold register = 0x"); - Serial.println(thresh_reg.read(), HEX); -} - -void loop() {} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino deleted file mode 100644 index be04606..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino +++ /dev/null @@ -1,40 +0,0 @@ -#include - -// Define which interface to use by setting the unused interface to NULL! - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice *spi_dev = NULL; // new Adafruit_SPIDevice(SPIDEVICE_CS); - -#define I2C_ADDRESS 0x5D -Adafruit_I2CDevice *i2c_dev = new Adafruit_I2CDevice(I2C_ADDRESS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C or SPI device register test"); - - if (spi_dev && !spi_dev->begin()) { - Serial.println("Could not initialize SPI device"); - } - - if (i2c_dev) { - if (i2c_dev->begin()) { - Serial.print("Device found on I2C address 0x"); - Serial.println(i2c_dev->address(), HEX); - } else { - Serial.print("Did not find I2C device at 0x"); - Serial.println(i2c_dev->address(), HEX); - } - } - - Adafruit_BusIO_Register id_reg = - Adafruit_BusIO_Register(i2c_dev, spi_dev, ADDRBIT8_HIGH_TOREAD, 0x0F); - uint8_t id = 0; - id_reg.read(&id); - Serial.print("ID register = 0x"); - Serial.println(id, HEX); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino deleted file mode 100644 index ebf14f9..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino +++ /dev/null @@ -1,35 +0,0 @@ -#include - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice spi_dev = - Adafruit_SPIDevice(SPIDEVICE_CS, 100000, SPI_BITORDER_MSBFIRST, SPI_MODE1); -// Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice(SPIDEVICE_CS, 13, 12, 11, -// 100000, SPI_BITORDER_MSBFIRST, SPI_MODE1); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI device mode test"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } -} - -void loop() { - Serial.println("\n\nTransfer test"); - for (uint16_t x = 0; x <= 0xFF; x++) { - uint8_t i = x; - Serial.print("0x"); - Serial.print(i, HEX); - spi_dev.read(&i, 1, i); - Serial.print("/"); - Serial.print(i, HEX); - Serial.print(", "); - delay(25); - } -} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino deleted file mode 100644 index 4b9ecf1..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino +++ /dev/null @@ -1,43 +0,0 @@ -#include - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice(SPIDEVICE_CS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI device read and write test"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } - - uint8_t buffer[32]; - - // Try to read 32 bytes - spi_dev.read(buffer, 32); - Serial.print("Read: "); - for (uint8_t i = 0; i < 32; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); - - // read a register by writing first, then reading - buffer[0] = 0x8F; // we'll reuse the same buffer - spi_dev.write_then_read(buffer, 1, buffer, 2, false); - Serial.print("Write then Read: "); - for (uint8_t i = 0; i < 2; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino deleted file mode 100644 index d11b440..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino +++ /dev/null @@ -1,268 +0,0 @@ -/*************************************************** - - This is an example for how to use Adafruit_BusIO_RegisterBits from - Adafruit_BusIO library. - - Designed specifically to work with the Adafruit RTD Sensor - ----> https://www.adafruit.com/products/3328 - uisng a MAX31865 RTD-to-Digital Converter - ----> https://datasheets.maximintegrated.com/en/ds/MAX31865.pdf - - This sensor uses SPI to communicate, 4 pins are required to - interface. - A fifth pin helps to detect when a new conversion is ready. - - Adafruit invests time and resources providing this open source code, - please support Adafruit and open-source hardware by purchasing - products from Adafruit! - - Example written (2020/3) by Andreas Hardtung/AnHard. - BSD license, all text above must be included in any redistribution - ****************************************************/ - -#include -#include - -#define MAX31865_SPI_SPEED (5000000) -#define MAX31865_SPI_BITORDER (SPI_BITORDER_MSBFIRST) -#define MAX31865_SPI_MODE (SPI_MODE1) - -#define MAX31865_SPI_CS (10) -#define MAX31865_READY_PIN (2) - -Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice( - MAX31865_SPI_CS, MAX31865_SPI_SPEED, MAX31865_SPI_BITORDER, - MAX31865_SPI_MODE, &SPI); // Hardware SPI -// Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice( MAX31865_SPI_CS, 13, 12, 11, -// MAX31865_SPI_SPEED, MAX31865_SPI_BITORDER, MAX31865_SPI_MODE); // Software -// SPI - -// MAX31865 chip related -// ********************************************************************************************* -Adafruit_BusIO_Register config_reg = - Adafruit_BusIO_Register(&spi_dev, 0x00, ADDRBIT8_HIGH_TOWRITE, 1, MSBFIRST); -Adafruit_BusIO_RegisterBits bias_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 7); -Adafruit_BusIO_RegisterBits auto_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 6); -Adafruit_BusIO_RegisterBits oneS_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 5); -Adafruit_BusIO_RegisterBits wire_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 4); -Adafruit_BusIO_RegisterBits faultT_bits = - Adafruit_BusIO_RegisterBits(&config_reg, 2, 2); -Adafruit_BusIO_RegisterBits faultR_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 1); -Adafruit_BusIO_RegisterBits fi50hz_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 0); - -Adafruit_BusIO_Register rRatio_reg = - Adafruit_BusIO_Register(&spi_dev, 0x01, ADDRBIT8_HIGH_TOWRITE, 2, MSBFIRST); -Adafruit_BusIO_RegisterBits rRatio_bits = - Adafruit_BusIO_RegisterBits(&rRatio_reg, 15, 1); -Adafruit_BusIO_RegisterBits fault_bit = - Adafruit_BusIO_RegisterBits(&rRatio_reg, 1, 0); - -Adafruit_BusIO_Register maxRratio_reg = - Adafruit_BusIO_Register(&spi_dev, 0x03, ADDRBIT8_HIGH_TOWRITE, 2, MSBFIRST); -Adafruit_BusIO_RegisterBits maxRratio_bits = - Adafruit_BusIO_RegisterBits(&maxRratio_reg, 15, 1); - -Adafruit_BusIO_Register minRratio_reg = - Adafruit_BusIO_Register(&spi_dev, 0x05, ADDRBIT8_HIGH_TOWRITE, 2, MSBFIRST); -Adafruit_BusIO_RegisterBits minRratio_bits = - Adafruit_BusIO_RegisterBits(&minRratio_reg, 15, 1); - -Adafruit_BusIO_Register fault_reg = - Adafruit_BusIO_Register(&spi_dev, 0x07, ADDRBIT8_HIGH_TOWRITE, 1, MSBFIRST); -Adafruit_BusIO_RegisterBits range_high_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 7); -Adafruit_BusIO_RegisterBits range_low_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 6); -Adafruit_BusIO_RegisterBits refin_high_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 5); -Adafruit_BusIO_RegisterBits refin_low_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 4); -Adafruit_BusIO_RegisterBits rtdin_low_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 3); -Adafruit_BusIO_RegisterBits voltage_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 2); - -// Print the details of the configuration register. -void printConfig(void) { - Serial.print("BIAS: "); - if (bias_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", AUTO: "); - if (auto_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", ONES: "); - if (oneS_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", WIRE: "); - if (wire_bit.read()) - Serial.print("3"); - else - Serial.print("2/4"); - Serial.print(", FAULTCLEAR: "); - if (faultR_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", "); - if (fi50hz_bit.read()) - Serial.print("50HZ"); - else - Serial.print("60HZ"); - Serial.println(); -} - -// Check and print faults. Then clear them. -void checkFaults(void) { - if (fault_bit.read()) { - Serial.print("MAX: "); - Serial.println(maxRratio_bits.read()); - Serial.print("VAL: "); - Serial.println(rRatio_bits.read()); - Serial.print("MIN: "); - Serial.println(minRratio_bits.read()); - - if (range_high_fault_bit.read()) - Serial.println("Range high fault"); - if (range_low_fault_bit.read()) - Serial.println("Range low fault"); - if (refin_high_fault_bit.read()) - Serial.println("REFIN high fault"); - if (refin_low_fault_bit.read()) - Serial.println("REFIN low fault"); - if (rtdin_low_fault_bit.read()) - Serial.println("RTDIN low fault"); - if (voltage_fault_bit.read()) - Serial.println("Voltage fault"); - - faultR_bit.write(1); // clear fault - } -} - -void setup() { -#if (MAX31865_1_READY_PIN != -1) - pinMode(MAX31865_READY_PIN, INPUT_PULLUP); -#endif - - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI Adafruit_BusIO_RegisterBits test on MAX31865"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } - - // Set up for automode 50Hz. We don't care about selfheating. We want the - // highest possible sampling rate. - auto_bit.write(0); // Don't switch filtermode while auto_mode is on. - fi50hz_bit.write(1); // Set filter to 50Hz mode. - faultR_bit.write(1); // Clear faults. - bias_bit.write(1); // In automode we want to have the bias current always on. - delay(5); // Wait until bias current settles down. - // 10.5 time constants of the input RC network is required. - // 10ms worst case for 10kω reference resistor and a 0.1µF capacitor - // across the RTD inputs. Adafruit Module has 0.1µF and only - // 430/4300ω So here 0.43/4.3ms - auto_bit.write( - 1); // Now we can set automode. Automatically starting first conversion. - -// Test the READY_PIN -#if (defined(MAX31865_READY_PIN) && (MAX31865_READY_PIN != -1)) - int i = 0; - while (digitalRead(MAX31865_READY_PIN) && i++ <= 100) { - delay(1); - } - if (i >= 100) { - Serial.print("ERROR: Max31865 Pin detection does not work. PIN:"); - Serial.println(MAX31865_READY_PIN); - } -#else - delay(100); -#endif - - // Set ratio range. - // Setting the temperatures would need some more calculation - not related to - // Adafruit_BusIO_RegisterBits. - uint16_t ratio = rRatio_bits.read(); - maxRratio_bits.write((ratio < 0x8fffu - 1000u) ? ratio + 1000u : 0x8fffu); - minRratio_bits.write((ratio > 1000u) ? ratio - 1000u : 0u); - - printConfig(); - checkFaults(); -} - -void loop() { -#if (defined(MAX31865_READY_PIN) && (MAX31865_1_READY_PIN != -1)) - // Is conversion ready? - if (!digitalRead(MAX31865_READY_PIN)) -#else - // Warant conversion is ready. - delay(21); // 21ms for 50Hz-mode. 19ms in 60Hz-mode. -#endif - { - // Read ratio, calculate temperature, scale, filter and print. - Serial.println(rRatio2C(rRatio_bits.read()) * 100.0f, - 0); // Temperature scaled by 100 - // Check, print, clear faults. - checkFaults(); - } - - // Do something else. - // delay(15000); -} - -// Module/Sensor related. Here Adafruit PT100 module with a 2_Wire PT100 Class C -// ***************************** -float rRatio2C(uint16_t ratio) { - // A simple linear conversion. - const float R0 = 100.0f; - const float Rref = 430.0f; - const float alphaPT = 0.003850f; - const float ADCmax = (1u << 15) - 1.0f; - const float rscale = Rref / ADCmax; - // Measured temperature in boiling water 101.08°C with factor a = 1 and b = 0. - // Rref and MAX at about 22±2°C. Measured temperature in ice/water bath 0.76°C - // with factor a = 1 and b = 0. Rref and MAX at about 22±2°C. - // const float a = 1.0f / (alphaPT * R0); - const float a = (100.0f / 101.08f) / (alphaPT * R0); - // const float b = 0.0f; // 101.08 - const float b = -0.76f; // 100.32 > 101.08 - - return filterRing(((ratio * rscale) - R0) * a + b); -} - -// General purpose -// ********************************************************************************************* -#define RINGLENGTH 250 -float filterRing(float newVal) { - static float ring[RINGLENGTH] = {0.0}; - static uint8_t ringIndex = 0; - static bool ringFull = false; - - if (ringIndex == RINGLENGTH) { - ringFull = true; - ringIndex = 0; - } - ring[ringIndex] = newVal; - uint8_t loopEnd = (ringFull) ? RINGLENGTH : ringIndex + 1; - float ringSum = 0.0f; - for (uint8_t i = 0; i < loopEnd; i++) - ringSum += ring[i]; - ringIndex++; - return ringSum / loopEnd; -} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_registers/spi_registers.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_registers/spi_registers.ino deleted file mode 100644 index af6069b..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/examples/spi_registers/spi_registers.ino +++ /dev/null @@ -1,40 +0,0 @@ -#include -#include - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice(SPIDEVICE_CS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI device register test"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } - - Adafruit_BusIO_Register id_reg = - Adafruit_BusIO_Register(&spi_dev, 0x0F, ADDRBIT8_HIGH_TOREAD); - uint8_t id = 0; - id_reg.read(&id); - Serial.print("ID register = 0x"); - Serial.println(id, HEX); - - Adafruit_BusIO_Register thresh_reg = Adafruit_BusIO_Register( - &spi_dev, 0x0C, ADDRBIT8_HIGH_TOREAD, 2, LSBFIRST); - uint16_t thresh = 0; - thresh_reg.read(&thresh); - Serial.print("Initial threshold register = 0x"); - Serial.println(thresh, HEX); - - thresh_reg.write(~thresh); - - Serial.print("Post threshold register = 0x"); - Serial.println(thresh_reg.read(), HEX); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/library.properties b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/library.properties deleted file mode 100644 index 1615468..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit BusIO/library.properties +++ /dev/null @@ -1,9 +0,0 @@ -name=Adafruit BusIO -version=1.17.4 -author=Adafruit -maintainer=Adafruit -sentence=This is a library for abstracting away UART, I2C and SPI interfacing -paragraph=This is a library for abstracting away UART, I2C and SPI interfacing -category=Signal Input/Output -url=https://github.com/adafruit/Adafruit_BusIO -architectures=* diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.clang-format b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.clang-format deleted file mode 100644 index e1b53a0..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.clang-format +++ /dev/null @@ -1,239 +0,0 @@ -Language: Cpp -# BasedOnStyle: LLVM -AccessModifierOffset: -2 -AlignAfterOpenBracket: Align -AlignArrayOfStructures: None -AlignConsecutiveAssignments: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: true -AlignConsecutiveBitFields: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: false -AlignConsecutiveDeclarations: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: false -AlignConsecutiveMacros: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: false -AlignConsecutiveShortCaseStatements: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCaseColons: false -AlignEscapedNewlines: Right -AlignOperands: Align -AlignTrailingComments: - Kind: Always - OverEmptyLines: 0 -AllowAllArgumentsOnNextLine: true -AllowAllParametersOfDeclarationOnNextLine: true -AllowBreakBeforeNoexceptSpecifier: Never -AllowShortBlocksOnASingleLine: Never -AllowShortCaseLabelsOnASingleLine: false -AllowShortCompoundRequirementOnASingleLine: true -AllowShortEnumsOnASingleLine: true -AllowShortFunctionsOnASingleLine: All -AllowShortIfStatementsOnASingleLine: Never -AllowShortLambdasOnASingleLine: All -AllowShortLoopsOnASingleLine: false -AlwaysBreakAfterDefinitionReturnType: None -AlwaysBreakAfterReturnType: None -AlwaysBreakBeforeMultilineStrings: false -AlwaysBreakTemplateDeclarations: MultiLine -AttributeMacros: - - __capability -BinPackArguments: true -BinPackParameters: true -BitFieldColonSpacing: Both -BraceWrapping: - AfterCaseLabel: false - AfterClass: false - AfterControlStatement: Never - AfterEnum: false - AfterExternBlock: false - AfterFunction: false - AfterNamespace: false - AfterObjCDeclaration: false - AfterStruct: false - AfterUnion: false - BeforeCatch: false - BeforeElse: false - BeforeLambdaBody: false - BeforeWhile: false - IndentBraces: false - SplitEmptyFunction: true - SplitEmptyRecord: true - SplitEmptyNamespace: true -BreakAdjacentStringLiterals: true -BreakAfterAttributes: Leave -BreakAfterJavaFieldAnnotations: false -BreakArrays: true -BreakBeforeBinaryOperators: None -BreakBeforeConceptDeclarations: Always -BreakBeforeBraces: Attach -BreakBeforeInlineASMColon: OnlyMultiline -BreakBeforeTernaryOperators: true -BreakConstructorInitializers: BeforeColon -BreakInheritanceList: BeforeColon -BreakStringLiterals: true -ColumnLimit: 80 -CommentPragmas: '^ IWYU pragma:' -CompactNamespaces: false -ConstructorInitializerIndentWidth: 4 -ContinuationIndentWidth: 4 -Cpp11BracedListStyle: true -DerivePointerAlignment: false -DisableFormat: false -EmptyLineAfterAccessModifier: Never -EmptyLineBeforeAccessModifier: LogicalBlock -ExperimentalAutoDetectBinPacking: false -FixNamespaceComments: true -ForEachMacros: - - foreach - - Q_FOREACH - - BOOST_FOREACH -IfMacros: - - KJ_IF_MAYBE -IncludeBlocks: Preserve -IncludeCategories: - - Regex: '^"(llvm|llvm-c|clang|clang-c)/' - Priority: 2 - SortPriority: 0 - CaseSensitive: false - - Regex: '^(<|"(gtest|gmock|isl|json)/)' - Priority: 3 - SortPriority: 0 - CaseSensitive: false - - Regex: '.*' - Priority: 1 - SortPriority: 0 - CaseSensitive: false -IncludeIsMainRegex: '(Test)?$' -IncludeIsMainSourceRegex: '' -IndentAccessModifiers: false -IndentCaseBlocks: false -IndentCaseLabels: false -IndentExternBlock: AfterExternBlock -IndentGotoLabels: true -IndentPPDirectives: None -IndentRequiresClause: true -IndentWidth: 2 -IndentWrappedFunctionNames: false -InsertBraces: false -InsertNewlineAtEOF: false -InsertTrailingCommas: None -IntegerLiteralSeparator: - Binary: 0 - BinaryMinDigits: 0 - Decimal: 0 - DecimalMinDigits: 0 - Hex: 0 - HexMinDigits: 0 -JavaScriptQuotes: Leave -JavaScriptWrapImports: true -KeepEmptyLinesAtTheStartOfBlocks: true -KeepEmptyLinesAtEOF: false -LambdaBodyIndentation: Signature -LineEnding: DeriveLF -MacroBlockBegin: '' -MacroBlockEnd: '' -MaxEmptyLinesToKeep: 1 -NamespaceIndentation: None -ObjCBinPackProtocolList: Auto -ObjCBlockIndentWidth: 2 -ObjCBreakBeforeNestedBlockParam: true -ObjCSpaceAfterProperty: false -ObjCSpaceBeforeProtocolList: true -PackConstructorInitializers: BinPack -PenaltyBreakAssignment: 2 -PenaltyBreakBeforeFirstCallParameter: 19 -PenaltyBreakComment: 300 -PenaltyBreakFirstLessLess: 120 -PenaltyBreakOpenParenthesis: 0 -PenaltyBreakScopeResolution: 500 -PenaltyBreakString: 1000 -PenaltyBreakTemplateDeclaration: 10 -PenaltyExcessCharacter: 1000000 -PenaltyIndentedWhitespace: 0 -PenaltyReturnTypeOnItsOwnLine: 60 -PointerAlignment: Right -PPIndentWidth: -1 -QualifierAlignment: Leave -ReferenceAlignment: Pointer -ReflowComments: true -RemoveBracesLLVM: false -RemoveParentheses: Leave -RemoveSemicolon: false -RequiresClausePosition: OwnLine -RequiresExpressionIndentation: OuterScope -SeparateDefinitionBlocks: Leave -ShortNamespaceLines: 1 -SkipMacroDefinitionBody: false -SortIncludes: CaseSensitive -SortJavaStaticImport: Before -SortUsingDeclarations: LexicographicNumeric -SpaceAfterCStyleCast: false -SpaceAfterLogicalNot: false -SpaceAfterTemplateKeyword: true -SpaceAroundPointerQualifiers: Default -SpaceBeforeAssignmentOperators: true -SpaceBeforeCaseColon: false -SpaceBeforeCpp11BracedList: false -SpaceBeforeCtorInitializerColon: true -SpaceBeforeInheritanceColon: true -SpaceBeforeJsonColon: false -SpaceBeforeParens: ControlStatements -SpaceBeforeParensOptions: - AfterControlStatements: true - AfterForeachMacros: true - AfterFunctionDefinitionName: false - AfterFunctionDeclarationName: false - AfterIfMacros: true - AfterOverloadedOperator: false - AfterPlacementOperator: true - AfterRequiresInClause: false - AfterRequiresInExpression: false - BeforeNonEmptyParentheses: false -SpaceBeforeRangeBasedForLoopColon: true -SpaceBeforeSquareBrackets: false -SpaceInEmptyBlock: false -SpacesBeforeTrailingComments: 1 -SpacesInAngles: Never -SpacesInContainerLiterals: true -SpacesInLineCommentPrefix: - Minimum: 1 - Maximum: -1 -SpacesInParens: Never -SpacesInParensOptions: - InCStyleCasts: false - InConditionalStatements: false - InEmptyParentheses: false - Other: false -SpacesInSquareBrackets: false -Standard: Latest -StatementAttributeLikeMacros: - - Q_EMIT -StatementMacros: - - Q_UNUSED - - QT_REQUIRE_VERSION -TabWidth: 8 -UseTab: Never -VerilogBreakBetweenInstancePorts: true -WhitespaceSensitiveMacros: - - BOOST_PP_STRINGIZE - - CF_SWIFT_NAME - - NS_SWIFT_NAME - - PP_STRINGIZE - - STRINGIZE diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index f0e2614..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,46 +0,0 @@ -Thank you for opening an issue on an Adafruit Arduino library repository. To -improve the speed of resolution please review the following guidelines and -common troubleshooting steps below before creating the issue: - -- **Do not use GitHub issues for troubleshooting projects and issues.** Instead use - the forums at http://forums.adafruit.com to ask questions and troubleshoot why - something isn't working as expected. In many cases the problem is a common issue - that you will more quickly receive help from the forum community. GitHub issues - are meant for known defects in the code. If you don't know if there is a defect - in the code then start with troubleshooting on the forum first. - -- **If following a tutorial or guide be sure you didn't miss a step.** Carefully - check all of the steps and commands to run have been followed. Consult the - forum if you're unsure or have questions about steps in a guide/tutorial. - -- **For Arduino projects check these very common issues to ensure they don't apply**: - - - For uploading sketches or communicating with the board make sure you're using - a **USB data cable** and **not** a **USB charge-only cable**. It is sometimes - very hard to tell the difference between a data and charge cable! Try using the - cable with other devices or swapping to another cable to confirm it is not - the problem. - - - **Be sure you are supplying adequate power to the board.** Check the specs of - your board and plug in an external power supply. In many cases just - plugging a board into your computer is not enough to power it and other - peripherals. - - - **Double check all soldering joints and connections.** Flakey connections - cause many mysterious problems. See the [guide to excellent soldering](https://learn.adafruit.com/adafruit-guide-excellent-soldering/tools) for examples of good solder joints. - - - **Ensure you are using an official Arduino or Adafruit board.** We can't - guarantee a clone board will have the same functionality and work as expected - with this code and don't support them. - -If you're sure this issue is a defect in the code and checked the steps above -please fill in the following fields to provide enough troubleshooting information. -You may delete the guideline and text above to just leave the following details: - -- Arduino board: **INSERT ARDUINO BOARD NAME/TYPE HERE** - -- Arduino IDE version (found in Arduino -> About Arduino menu): **INSERT ARDUINO - VERSION HERE** - -- List the steps to reproduce the problem below (if possible attach a sketch or - copy the sketch code in too): **LIST REPRO STEPS BELOW** diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 7b641eb..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,26 +0,0 @@ -Thank you for creating a pull request to contribute to Adafruit's GitHub code! -Before you open the request please review the following guidelines and tips to -help it be more easily integrated: - -- **Describe the scope of your change--i.e. what the change does and what parts - of the code were modified.** This will help us understand any risks of integrating - the code. - -- **Describe any known limitations with your change.** For example if the change - doesn't apply to a supported platform of the library please mention it. - -- **Please run any tests or examples that can exercise your modified code.** We - strive to not break users of the code and running tests/examples helps with this - process. - -Thank you again for contributing! We will try to test and integrate the change -as soon as we can, but be aware we have many GitHub repositories to manage and -can't immediately respond to every request. There is no need to bump or check in -on a pull request (it will clutter the discussion of the request). - -Also don't be worried if the request is closed or not integrated--sometimes the -priorities of Adafruit's GitHub code (education, ease of use) might not match the -priorities of the pull request. Don't fret, the open source community thrives on -forks and GitHub makes it easy to keep your changes in a forked repo. - -After reviewing the guidelines above you can delete this text from the pull request. diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/workflows/githubci.yml b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/workflows/githubci.yml deleted file mode 100644 index a04a162..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.github/workflows/githubci.yml +++ /dev/null @@ -1,36 +0,0 @@ -name: Arduino Library CI - -on: [pull_request, push, repository_dispatch] - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/setup-python@v4 - with: - python-version: '3.x' - - uses: actions/checkout@v3 - - uses: actions/checkout@v3 - with: - repository: adafruit/ci-arduino - path: ci - - - name: pre-install - run: bash ci/actions_install.sh - - - name: extra libraries - run: | - git clone --quiet https://github.com/adafruit/Adafruit_ILI9341.git /home/runner/Arduino/libraries/Adafruit_ILI9341 - - - name: test platforms - run: python3 ci/build_platform.py main_platforms - - - name: clang - run: python3 ci/run-clang-format.py -e "ci/*" -e "bin/*" -r . - - - name: doxygen - env: - GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }} - PRETTYNAME : "Adafruit GFX Library" - run: bash ci/doxy_gen_and_deploy.sh diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.gitignore b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.gitignore deleted file mode 100644 index 469bb73..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -default.vim -fontconvert/fontconvert -# Our handy .gitignore for automation ease -Doxyfile* -doxygen_sqlite3.db -html \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.piopm b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.piopm deleted file mode 100644 index 9ed8464..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/.piopm +++ /dev/null @@ -1 +0,0 @@ -{"type": "library", "name": "Adafruit GFX Library", "version": "1.12.6", "spec": {"owner": "adafruit", "id": 13, "name": "Adafruit GFX Library", "requirements": null, "uri": null}} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GFX.cpp b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GFX.cpp deleted file mode 100644 index ae26bf1..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GFX.cpp +++ /dev/null @@ -1,2952 +0,0 @@ -/* -This is the core graphics library for all our displays, providing a common -set of graphics primitives (points, lines, circles, etc.). It needs to be -paired with a hardware-specific library for each display device we carry -(to handle the lower-level functions). - -Adafruit invests time and resources providing this open source code, please -support Adafruit & open-source hardware by purchasing products from Adafruit! - -Copyright (c) 2013 Adafruit Industries. 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 "Adafruit_GFX.h" -#include "glcdfont.c" -#ifdef __AVR__ -#include -#elif defined(ESP8266) || defined(ESP32) -#include -#endif - -// Many (but maybe not all) non-AVR board installs define macros -// for compatibility with existing PROGMEM-reading AVR code. -// Do our own checks and defines here for good measure... - -#ifndef pgm_read_byte -#define pgm_read_byte(addr) (*(const unsigned char *)(addr)) -#endif -#ifndef pgm_read_word -#define pgm_read_word(addr) (*(const unsigned short *)(addr)) -#endif -#ifndef pgm_read_dword -#define pgm_read_dword(addr) (*(const unsigned long *)(addr)) -#endif - -// Pointers are a peculiar case...typically 16-bit on AVR boards, -// 32 bits elsewhere. Try to accommodate both... - -#if !defined(__INT_MAX__) || (__INT_MAX__ > 0xFFFF) -#define pgm_read_pointer(addr) ((void *)pgm_read_dword(addr)) -#else -#define pgm_read_pointer(addr) ((void *)pgm_read_word(addr)) -#endif - -inline GFXglyph *pgm_read_glyph_ptr(const GFXfont *gfxFont, uint8_t c) { -#ifdef __AVR__ - return &(((GFXglyph *)pgm_read_pointer(&gfxFont->glyph))[c]); -#else - // expression in __AVR__ section may generate "dereferencing type-punned - // pointer will break strict-aliasing rules" warning In fact, on other - // platforms (such as STM32) there is no need to do this pointer magic as - // program memory may be read in a usual way So expression may be simplified - return gfxFont->glyph + c; -#endif //__AVR__ -} - -inline uint8_t *pgm_read_bitmap_ptr(const GFXfont *gfxFont) { -#ifdef __AVR__ - return (uint8_t *)pgm_read_pointer(&gfxFont->bitmap); -#else - // expression in __AVR__ section generates "dereferencing type-punned pointer - // will break strict-aliasing rules" warning In fact, on other platforms (such - // as STM32) there is no need to do this pointer magic as program memory may - // be read in a usual way So expression may be simplified - return gfxFont->bitmap; -#endif //__AVR__ -} - -#ifndef min -#define min(a, b) (((a) < (b)) ? (a) : (b)) -#endif - -#ifndef _swap_int16_t -#define _swap_int16_t(a, b) \ - { \ - int16_t t = a; \ - a = b; \ - b = t; \ - } -#endif - -/**************************************************************************/ -/*! - @brief Instatiate a GFX context for graphics! Can only be done by a - superclass - @param w Display width, in pixels - @param h Display height, in pixels -*/ -/**************************************************************************/ -Adafruit_GFX::Adafruit_GFX(int16_t w, int16_t h) : WIDTH(w), HEIGHT(h) { - _width = WIDTH; - _height = HEIGHT; - rotation = 0; - cursor_y = cursor_x = 0; - textsize_x = textsize_y = 1; - textcolor = textbgcolor = 0xFFFF; - wrap = true; - _cp437 = false; - gfxFont = NULL; -} - -/**************************************************************************/ -/*! - @brief Write a line. Bresenham's algorithm - thx wikpedia - @param x0 Start point x coordinate - @param y0 Start point y coordinate - @param x1 End point x coordinate - @param y1 End point y coordinate - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - int16_t steep = abs(y1 - y0) > abs(x1 - x0); - if (steep) { - _swap_int16_t(x0, y0); - _swap_int16_t(x1, y1); - } - - if (x0 > x1) { - _swap_int16_t(x0, x1); - _swap_int16_t(y0, y1); - } - - int16_t dx, dy; - dx = x1 - x0; - dy = abs(y1 - y0); - - int16_t err = dx / 2; - int16_t ystep; - - if (y0 < y1) { - ystep = 1; - } else { - ystep = -1; - } - - for (; x0 <= x1; x0++) { - if (steep) { - writePixel(y0, x0, color); - } else { - writePixel(x0, y0, color); - } - err -= dy; - if (err < 0) { - y0 += ystep; - err += dx; - } - } -} - -/**************************************************************************/ -/*! - @brief Start a display-writing routine, overwrite in subclasses. -*/ -/**************************************************************************/ -void Adafruit_GFX::startWrite() {} - -/**************************************************************************/ -/*! - @brief Write a pixel, overwrite in subclasses if startWrite is defined! - @param x x coordinate - @param y y coordinate - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writePixel(int16_t x, int16_t y, uint16_t color) { - drawPixel(x, y, color); -} - -/**************************************************************************/ -/*! - @brief Write a perfectly vertical line, overwrite in subclasses if - startWrite is defined! - @param x Top-most x coordinate - @param y Top-most y coordinate - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // Overwrite in subclasses if startWrite is defined! - // Can be just writeLine(x, y, x, y+h-1, color); - // or writeFillRect(x, y, 1, h, color); - drawFastVLine(x, y, h, color); -} - -/**************************************************************************/ -/*! - @brief Write a perfectly horizontal line, overwrite in subclasses if - startWrite is defined! - @param x Left-most x coordinate - @param y Left-most y coordinate - @param w Width in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // Overwrite in subclasses if startWrite is defined! - // Example: writeLine(x, y, x+w-1, y, color); - // or writeFillRect(x, y, w, 1, color); - drawFastHLine(x, y, w, color); -} - -/**************************************************************************/ -/*! - @brief Write a rectangle completely with one color, overwrite in - subclasses if startWrite is defined! - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - // Overwrite in subclasses if desired! - fillRect(x, y, w, h, color); -} - -/**************************************************************************/ -/*! - @brief End a display-writing routine, overwrite in subclasses if - startWrite is defined! -*/ -/**************************************************************************/ -void Adafruit_GFX::endWrite() {} - -/**************************************************************************/ -/*! - @brief Draw a perfectly vertical line (this is often optimized in a - subclass!) - @param x Top-most x coordinate - @param y Top-most y coordinate - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - startWrite(); - writeLine(x, y, x, y + h - 1, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a perfectly horizontal line (this is often optimized in a - subclass!) - @param x Left-most x coordinate - @param y Left-most y coordinate - @param w Width in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - startWrite(); - writeLine(x, y, x + w - 1, y, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Fill a rectangle completely with one color. Update in subclasses if - desired! - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - startWrite(); - for (int16_t i = x; i < x + w; i++) { - writeFastVLine(i, y, h, color); - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Fill the screen completely with one color. Update in subclasses if - desired! - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillScreen(uint16_t color) { - fillRect(0, 0, _width, _height, color); -} - -/**************************************************************************/ -/*! - @brief Draw a line - @param x0 Start point x coordinate - @param y0 Start point y coordinate - @param x1 End point x coordinate - @param y1 End point y coordinate - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color) { - // Update in subclasses if desired! - if (x0 == x1) { - if (y0 > y1) - _swap_int16_t(y0, y1); - drawFastVLine(x0, y0, y1 - y0 + 1, color); - } else if (y0 == y1) { - if (x0 > x1) - _swap_int16_t(x0, x1); - drawFastHLine(x0, y0, x1 - x0 + 1, color); - } else { - startWrite(); - writeLine(x0, y0, x1, y1, color); - endWrite(); - } -} - -/**************************************************************************/ -/*! - @brief Draw an ellipse outline - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param rw Horizontal radius of ellipse - @param rh Vertical radius of ellipse - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - // Bresenham's ellipse algorithm - int16_t x = 0, y = rh; - int32_t rw2 = rw * rw, rh2 = rh * rh; - int32_t twoRw2 = 2 * rw2, twoRh2 = 2 * rh2; - - int32_t decision = rh2 - (rw2 * rh) + (rw2 / 4); - - startWrite(); - - // region 1 - while ((twoRh2 * x) < (twoRw2 * y)) { - writePixel(x0 + x, y0 + y, color); - writePixel(x0 - x, y0 + y, color); - writePixel(x0 + x, y0 - y, color); - writePixel(x0 - x, y0 - y, color); - x++; - if (decision < 0) { - decision += rh2 + (twoRh2 * x); - } else { - decision += rh2 + (twoRh2 * x) - (twoRw2 * y); - y--; - } - } - - // region 2 - decision = ((rh2 * (2 * x + 1) * (2 * x + 1)) >> 2) + - (rw2 * (y - 1) * (y - 1)) - (rw2 * rh2); - while (y >= 0) { - writePixel(x0 + x, y0 + y, color); - writePixel(x0 - x, y0 + y, color); - writePixel(x0 + x, y0 - y, color); - writePixel(x0 - x, y0 - y, color); - y--; - if (decision > 0) { - decision += rw2 - (twoRw2 * y); - } else { - decision += rw2 + (twoRh2 * x) - (twoRw2 * y); - x++; - } - } - - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw an ellipse with filled colour - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param rw Horizontal radius of ellipse - @param rh Vertical radius of ellipse - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - // Bresenham's ellipse algorithm - int16_t x = 0, y = rh; - int32_t rw2 = rw * rw, rh2 = rh * rh; - int32_t twoRw2 = 2 * rw2, twoRh2 = 2 * rh2; - - int32_t decision = rh2 - (rw2 * rh) + (rw2 / 4); - - startWrite(); - - // region 1 - while ((twoRh2 * x) < (twoRw2 * y)) { - x++; - if (decision < 0) { - decision += rh2 + (twoRh2 * x); - } else { - decision += rh2 + (twoRh2 * x) - (twoRw2 * y); - drawFastHLine(x0 - (x - 1), y0 + y, 2 * (x - 1) + 1, color); - drawFastHLine(x0 - (x - 1), y0 - y, 2 * (x - 1) + 1, color); - y--; - } - } - - // region 2 - decision = ((rh2 * (2 * x + 1) * (2 * x + 1)) >> 2) + - (rw2 * (y - 1) * (y - 1)) - (rw2 * rh2); - while (y >= 0) { - drawFastHLine(x0 - x, y0 + y, 2 * x + 1, color); - drawFastHLine(x0 - x, y0 - y, 2 * x + 1, color); - - y--; - if (decision > 0) { - decision += rw2 - (twoRw2 * y); - } else { - decision += rw2 + (twoRh2 * x) - (twoRw2 * y); - x++; - } - } - - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a circle outline - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawCircle(int16_t x0, int16_t y0, int16_t r, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - int16_t f = 1 - r; - int16_t ddF_x = 1; - int16_t ddF_y = -2 * r; - int16_t x = 0; - int16_t y = r; - - startWrite(); - writePixel(x0, y0 + r, color); - writePixel(x0, y0 - r, color); - writePixel(x0 + r, y0, color); - writePixel(x0 - r, y0, color); - - while (x < y) { - if (f >= 0) { - y--; - ddF_y += 2; - f += ddF_y; - } - x++; - ddF_x += 2; - f += ddF_x; - - writePixel(x0 + x, y0 + y, color); - writePixel(x0 - x, y0 + y, color); - writePixel(x0 + x, y0 - y, color); - writePixel(x0 - x, y0 - y, color); - writePixel(x0 + y, y0 + x, color); - writePixel(x0 - y, y0 + x, color); - writePixel(x0 + y, y0 - x, color); - writePixel(x0 - y, y0 - x, color); - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Quarter-circle drawer, used to do circles and roundrects - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param cornername Mask bit #1, #2, #4, and #8 to indicate which quarters - of the circle we're doing - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawCircleHelper(int16_t x0, int16_t y0, int16_t r, - uint8_t cornername, uint16_t color) { - int16_t f = 1 - r; - int16_t ddF_x = 1; - int16_t ddF_y = -2 * r; - int16_t x = 0; - int16_t y = r; - - while (x < y) { - if (f >= 0) { - y--; - ddF_y += 2; - f += ddF_y; - } - x++; - ddF_x += 2; - f += ddF_x; - if (cornername & 0x4) { - writePixel(x0 + x, y0 + y, color); - writePixel(x0 + y, y0 + x, color); - } - if (cornername & 0x2) { - writePixel(x0 + x, y0 - y, color); - writePixel(x0 + y, y0 - x, color); - } - if (cornername & 0x8) { - writePixel(x0 - y, y0 + x, color); - writePixel(x0 - x, y0 + y, color); - } - if (cornername & 0x1) { - writePixel(x0 - y, y0 - x, color); - writePixel(x0 - x, y0 - y, color); - } - } -} - -/**************************************************************************/ -/*! - @brief Draw a circle with filled color - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillCircle(int16_t x0, int16_t y0, int16_t r, - uint16_t color) { - startWrite(); - writeFastVLine(x0, y0 - r, 2 * r + 1, color); - fillCircleHelper(x0, y0, r, 3, 0, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Half-circle drawer with fill, used for circles and roundrects - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param corners Mask bits indicating which sides of the circle we are - doing, left (1) and/or right (2) - @param delta Offset from center-point, used for round-rects - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillCircleHelper(int16_t x0, int16_t y0, int16_t r, - uint8_t corners, int16_t delta, - uint16_t color) { - - int16_t f = 1 - r; - int16_t ddF_x = 1; - int16_t ddF_y = -2 * r; - int16_t x = 0; - int16_t y = r; - int16_t px = x; - int16_t py = y; - - delta++; // Avoid some +1's in the loop - - while (x < y) { - if (f >= 0) { - y--; - ddF_y += 2; - f += ddF_y; - } - x++; - ddF_x += 2; - f += ddF_x; - // These checks avoid double-drawing certain lines, important - // for the SSD1306 library which has an INVERT drawing mode. - if (x < (y + 1)) { - if (corners & 1) - writeFastVLine(x0 + x, y0 - y, 2 * y + delta, color); - if (corners & 2) - writeFastVLine(x0 - x, y0 - y, 2 * y + delta, color); - } - if (y != py) { - if (corners & 1) - writeFastVLine(x0 + py, y0 - px, 2 * px + delta, color); - if (corners & 2) - writeFastVLine(x0 - py, y0 - px, 2 * px + delta, color); - py = y; - } - px = x; - } -} - -/**************************************************************************/ -/*! - @brief Draw a rectangle with no fill color - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - startWrite(); - writeFastHLine(x, y, w, color); - writeFastHLine(x, y + h - 1, w, color); - writeFastVLine(x, y, h, color); - writeFastVLine(x + w - 1, y, h, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a rounded rectangle with no fill color - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param r Radius of corner rounding - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRoundRect(int16_t x, int16_t y, int16_t w, int16_t h, - int16_t r, uint16_t color) { - int16_t max_radius = ((w < h) ? w : h) / 2; // 1/2 minor axis - if (r > max_radius) - r = max_radius; - // smarter version - startWrite(); - writeFastHLine(x + r, y, w - 2 * r, color); // Top - writeFastHLine(x + r, y + h - 1, w - 2 * r, color); // Bottom - writeFastVLine(x, y + r, h - 2 * r, color); // Left - writeFastVLine(x + w - 1, y + r, h - 2 * r, color); // Right - // draw four corners - drawCircleHelper(x + r, y + r, r, 1, color); - drawCircleHelper(x + w - r - 1, y + r, r, 2, color); - drawCircleHelper(x + w - r - 1, y + h - r - 1, r, 4, color); - drawCircleHelper(x + r, y + h - r - 1, r, 8, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a rounded rectangle with fill color - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param r Radius of corner rounding - @param color 16-bit 5-6-5 Color to draw/fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillRoundRect(int16_t x, int16_t y, int16_t w, int16_t h, - int16_t r, uint16_t color) { - int16_t max_radius = ((w < h) ? w : h) / 2; // 1/2 minor axis - if (r > max_radius) - r = max_radius; - // smarter version - startWrite(); - writeFillRect(x + r, y, w - 2 * r, h, color); - // draw four corners - fillCircleHelper(x + w - r - 1, y + r, r, 1, h - 2 * r - 1, color); - fillCircleHelper(x + r, y + r, r, 2, h - 2 * r - 1, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a rotated rectangle - @param cenX x coordinate of center of rectangle. - For even width rectangles, this point - represents the pixel to the left of - true center. - @param cenY y coordinate of center of rectangle. - For even height rectangles, this point - represents the pixel above - true center. - @param w width of rectangle - @param h height of rectangle - @param angleDeg angle of rotation of rectangle - @param color 16-bit 5-6-5 Color to fill/draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRotatedRect(int16_t cenX, int16_t cenY, int16_t w, - int16_t h, int16_t angleDeg, - uint16_t color) { - - if (w < 1 || h < 1) - return; // We don't draw zero dimensioned objects - - int16_t W = w - 1; - int16_t H = h - 1; - - int16_t halfW = (W / 2); // Midpoint should always be integer - int16_t halfH = (H / 2); // Midpoint should always be integer - - int16_t x0 = W - halfW; // bottom-right - int16_t y0 = H - halfH; // bottom-right - int16_t x1 = -halfW; // bottom-left - int16_t y1 = H - halfH; // bottom-left - int16_t x2 = -halfW; // top-left - int16_t y2 = -halfH; // top-left - int16_t x3 = W - halfW; // top-right - int16_t y3 = -halfH; // top-right - - rotatePoint(x0, y0, angleDeg); - rotatePoint(x1, y1, angleDeg); - rotatePoint(x2, y2, angleDeg); - rotatePoint(x3, y3, angleDeg); - - x0 += cenX; - x1 += cenX; - x2 += cenX; - x3 += cenX; - - y0 += cenY; - y1 += cenY; - y2 += cenY; - y3 += cenY; - - drawLine(x0, y0, x1, y1, color); // bottom right to bottom left - drawLine(x1, y1, x2, y2, color); // bottom left to top left - drawLine(x2, y2, x3, y3, color); // top left to top right - drawLine(x3, y3, x0, y0, color); // top right to bottom right -} - -/**************************************************************************/ -/*! - @brief Draw a filled rotated rectangle - @param cenX x coordinate of center of rectangle. - For even width rectangles, this point - represents the pixel to the left of - true center. - @param cenY y coordinate of center of rectangle. - For even height rectangles, this point - represents the pixel above - true center. - @param w width of rectangle - @param h height of rectangle - @param angleDeg angle of rotation of rectangle - @param color 16-bit 5-6-5 Color to fill/draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillRotatedRect(int16_t cenX, int16_t cenY, int16_t w, - int16_t h, int16_t angleDeg, - uint16_t color) { - - if (w < 1 || h < 1) - return; // We don't draw zero dimensioned objects - - int16_t W = w - 1; - int16_t H = h - 1; - - int16_t halfW = (W / 2); // Midpoint should always be integer - int16_t halfH = (H / 2); // Midpoint should always be integer - - int16_t x0 = W - halfW; // bottom-right - int16_t y0 = H - halfH; // bottom-right - int16_t x1 = -halfW; // bottom-left - int16_t y1 = H - halfH; // bottom-left - int16_t x2 = -halfW; // top-left - int16_t y2 = -halfH; // top-left - int16_t x3 = W - halfW; // top-right - int16_t y3 = -halfH; // top-right - - rotatePoint(x0, y0, angleDeg); - rotatePoint(x1, y1, angleDeg); - rotatePoint(x2, y2, angleDeg); - rotatePoint(x3, y3, angleDeg); - - x0 += cenX; - x1 += cenX; - x2 += cenX; - x3 += cenX; - - y0 += cenY; - y1 += cenY; - y2 += cenY; - y3 += cenY; - - fillTriangle(x0, y0, x1, y1, x2, y2, color); - fillTriangle(x2, y2, x3, y3, x0, y0, color); -} - -/**************************************************************************/ -/*! - @brief Rotate a point in standard position - @param x0 x coordinate of point to rotate. This is passed by reference - and updated upon return - @param y0 y coordinate of point to rotate. This is passed by reference - and updated upon return - @param angleDeg angle to rotate the point by (degrees) -*/ -/**************************************************************************/ -void Adafruit_GFX::rotatePoint(int16_t &x0, int16_t &y0, int16_t angleDeg) { - float angleRad = radians(angleDeg); - float s = sin(angleRad); - float c = cos(angleRad); - - float x = x0; - float y = y0; - - // Rotate point - x0 = (int16_t)((x * c) - (y * s)); - y0 = (int16_t)((x * s) + (y * c)); -} - -/**************************************************************************/ -/*! - @brief Draw a triangle with no fill color - @param x0 Vertex #0 x coordinate - @param y0 Vertex #0 y coordinate - @param x1 Vertex #1 x coordinate - @param y1 Vertex #1 y coordinate - @param x2 Vertex #2 x coordinate - @param y2 Vertex #2 y coordinate - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - int16_t x2, int16_t y2, uint16_t color) { - drawLine(x0, y0, x1, y1, color); - drawLine(x1, y1, x2, y2, color); - drawLine(x2, y2, x0, y0, color); -} - -/**************************************************************************/ -/*! - @brief Draw a triangle with color-fill - @param x0 Vertex #0 x coordinate - @param y0 Vertex #0 y coordinate - @param x1 Vertex #1 x coordinate - @param y1 Vertex #1 y coordinate - @param x2 Vertex #2 x coordinate - @param y2 Vertex #2 y coordinate - @param color 16-bit 5-6-5 Color to fill/draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - int16_t x2, int16_t y2, uint16_t color) { - - int16_t a, b, y, last; - - // Sort coordinates by Y order (y2 >= y1 >= y0) - if (y0 > y1) { - _swap_int16_t(y0, y1); - _swap_int16_t(x0, x1); - } - if (y1 > y2) { - _swap_int16_t(y2, y1); - _swap_int16_t(x2, x1); - } - if (y0 > y1) { - _swap_int16_t(y0, y1); - _swap_int16_t(x0, x1); - } - - startWrite(); - if (y0 == y2) { // Handle awkward all-on-same-line case as its own thing - a = b = x0; - if (x1 < a) - a = x1; - else if (x1 > b) - b = x1; - if (x2 < a) - a = x2; - else if (x2 > b) - b = x2; - writeFastHLine(a, y0, b - a + 1, color); - endWrite(); - return; - } - - int16_t dx01 = x1 - x0, dy01 = y1 - y0, dx02 = x2 - x0, dy02 = y2 - y0, - dx12 = x2 - x1, dy12 = y2 - y1; - int32_t sa = 0, sb = 0; - - // For upper part of triangle, find scanline crossings for segments - // 0-1 and 0-2. If y1=y2 (flat-bottomed triangle), the scanline y1 - // is included here (and second loop will be skipped, avoiding a /0 - // error there), otherwise scanline y1 is skipped here and handled - // in the second loop...which also avoids a /0 error here if y0=y1 - // (flat-topped triangle). - if (y1 == y2) - last = y1; // Include y1 scanline - else - last = y1 - 1; // Skip it - - for (y = y0; y <= last; y++) { - a = x0 + sa / dy01; - b = x0 + sb / dy02; - sa += dx01; - sb += dx02; - /* longhand: - a = x0 + (x1 - x0) * (y - y0) / (y1 - y0); - b = x0 + (x2 - x0) * (y - y0) / (y2 - y0); - */ - if (a > b) - _swap_int16_t(a, b); - writeFastHLine(a, y, b - a + 1, color); - } - - // For lower part of triangle, find scanline crossings for segments - // 0-2 and 1-2. This loop is skipped if y1=y2. - sa = (int32_t)dx12 * (y - y1); - sb = (int32_t)dx02 * (y - y0); - for (; y <= y2; y++) { - a = x1 + sa / dy12; - b = x0 + sb / dy02; - sa += dx12; - sb += dx02; - /* longhand: - a = x1 + (x2 - x1) * (y - y1) / (y2 - y1); - b = x0 + (x2 - x0) * (y - y0) / (y2 - y0); - */ - if (a > b) - _swap_int16_t(a, b); - writeFastHLine(a, y, b - a + 1, color); - } - endWrite(); -} - -// BITMAP / XBITMAP / GRAYSCALE / RGB BITMAP FUNCTIONS --------------------- - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 1-bit image at the specified (x,y) - position, using the specified foreground color (unset bits are transparent). - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h, uint16_t color) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); - if (b & 0x80) - writePixel(x + i, y, color); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 1-bit image at the specified (x,y) - position, using the specified foreground (for set bits) and background (unset - bits) colors. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw pixels with - @param bg 16-bit 5-6-5 Color to draw background with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h, uint16_t color, - uint16_t bg) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); - writePixel(x + i, y, (b & 0x80) ? color : bg); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 1-bit image at the specified (x,y) position, - using the specified foreground color (unset bits are transparent). - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, - int16_t h, uint16_t color) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = bitmap[j * byteWidth + i / 8]; - if (b & 0x80) - writePixel(x + i, y, color); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 1-bit image at the specified (x,y) position, - using the specified foreground (for set bits) and background (unset bits) - colors. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw pixels with - @param bg 16-bit 5-6-5 Color to draw background with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, - int16_t h, uint16_t color, uint16_t bg) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = bitmap[j * byteWidth + i / 8]; - writePixel(x + i, y, (b & 0x80) ? color : bg); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw PROGMEM-resident XBitMap Files (*.xbm), exported from GIMP. - Usage: Export from GIMP to *.xbm, rename *.xbm to *.c and open in editor. - C Array can be directly used with this function. - There is no RAM-resident version of this function; if generating bitmaps - in RAM, use the format defined by drawBitmap() and call that instead. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw pixels with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawXBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h, uint16_t color) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b >>= 1; - else - b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); - // Nearly identical to drawBitmap(), only the bit order - // is reversed here (left-to-right = LSB to MSB): - if (b & 0x01) - writePixel(x + i, y, color); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 8-bit image (grayscale) at the specified - (x,y) pos. Specifically for 8-bit display devices such as IS31FL3731; no - color reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, - const uint8_t bitmap[], int16_t w, - int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, (uint8_t)pgm_read_byte(&bitmap[j * w + i])); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 8-bit image (grayscale) at the specified (x,y) - pos. Specifically for 8-bit display devices such as IS31FL3731; no color - reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, - int16_t w, int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 8-bit image (grayscale) with a 1-bit mask - (set bits = opaque, unset bits = clear) at the specified (x,y) position. - BOTH buffers (grayscale and mask) must be PROGMEM-resident. - Specifically for 8-bit display devices such as IS31FL3731; no color - reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param mask byte array with mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, - const uint8_t bitmap[], - const uint8_t mask[], int16_t w, - int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&mask[j * bw + i / 8]); - if (b & 0x80) { - writePixel(x + i, y, (uint8_t)pgm_read_byte(&bitmap[j * w + i])); - } - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 8-bit image (grayscale) with a 1-bit mask - (set bits = opaque, unset bits = clear) at the specified (x,y) position. - BOTH buffers (grayscale and mask) must be RAM-residentt, no mix-and-match - Specifically for 8-bit display devices such as IS31FL3731; no color - reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param mask byte array with mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, - uint8_t *mask, int16_t w, int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = mask[j * bw + i / 8]; - if (b & 0x80) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 16-bit image (RGB 5/6/5) at the specified - (x,y) position. For 16-bit display devices; no color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], - int16_t w, int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, pgm_read_word(&bitmap[j * w + i])); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 16-bit image (RGB 5/6/5) at the specified (x,y) - position. For 16-bit display devices; no color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, - int16_t w, int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 16-bit image (RGB 5/6/5) with a 1-bit mask - (set bits = opaque, unset bits = clear) at the specified (x,y) position. BOTH - buffers (color and mask) must be PROGMEM-resident. For 16-bit display - devices; no color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param mask byte array with monochrome mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], - const uint8_t mask[], int16_t w, int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&mask[j * bw + i / 8]); - if (b & 0x80) { - writePixel(x + i, y, pgm_read_word(&bitmap[j * w + i])); - } - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 16-bit image (RGB 5/6/5) with a 1-bit mask (set - bits = opaque, unset bits = clear) at the specified (x,y) position. BOTH - buffers (color and mask) must be RAM-resident. For 16-bit display devices; no - color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param mask byte array with monochrome mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, - uint8_t *mask, int16_t w, int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = mask[j * bw + i / 8]; - if (b & 0x80) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - } - endWrite(); -} - -// TEXT- AND CHARACTER-HANDLING FUNCTIONS ---------------------------------- - -// Draw a character -/**************************************************************************/ -/*! - @brief Draw a single character - @param x Bottom left corner x coordinate - @param y Bottom left corner y coordinate - @param c The 8-bit font-indexed character (likely ascii) - @param color 16-bit 5-6-5 Color to draw chraracter with - @param bg 16-bit 5-6-5 Color to fill background with (if same as color, - no background) - @param size Font magnification level, 1 is 'original' size -*/ -/**************************************************************************/ -void Adafruit_GFX::drawChar(int16_t x, int16_t y, unsigned char c, - uint16_t color, uint16_t bg, uint8_t size) { - drawChar(x, y, c, color, bg, size, size); -} - -// Draw a character -/**************************************************************************/ -/*! - @brief Draw a single character - @param x Bottom left corner x coordinate - @param y Bottom left corner y coordinate - @param c The 8-bit font-indexed character (likely ascii) - @param color 16-bit 5-6-5 Color to draw chraracter with - @param bg 16-bit 5-6-5 Color to fill background with (if same as color, - no background) - @param size_x Font magnification level in X-axis, 1 is 'original' size - @param size_y Font magnification level in Y-axis, 1 is 'original' size -*/ -/**************************************************************************/ -void Adafruit_GFX::drawChar(int16_t x, int16_t y, unsigned char c, - uint16_t color, uint16_t bg, uint8_t size_x, - uint8_t size_y) { - - if (!gfxFont) { // 'Classic' built-in font - - if ((x >= _width) || // Clip right - (y >= _height) || // Clip bottom - ((x + 6 * size_x - 1) < 0) || // Clip left - ((y + 8 * size_y - 1) < 0)) // Clip top - return; - - if (!_cp437 && (c >= 176)) - c++; // Handle 'classic' charset behavior - - startWrite(); - for (int8_t i = 0; i < 5; i++) { // Char bitmap = 5 columns - uint8_t line = pgm_read_byte(&font[c * 5 + i]); - for (int8_t j = 0; j < 8; j++, line >>= 1) { - if (line & 1) { - if (size_x == 1 && size_y == 1) - writePixel(x + i, y + j, color); - else - writeFillRect(x + i * size_x, y + j * size_y, size_x, size_y, - color); - } else if (bg != color) { - if (size_x == 1 && size_y == 1) - writePixel(x + i, y + j, bg); - else - writeFillRect(x + i * size_x, y + j * size_y, size_x, size_y, bg); - } - } - } - if (bg != color) { // If opaque, draw vertical line for last column - if (size_x == 1 && size_y == 1) - writeFastVLine(x + 5, y, 8, bg); - else - writeFillRect(x + 5 * size_x, y, size_x, 8 * size_y, bg); - } - endWrite(); - - } else { // Custom font - - // Character is assumed previously filtered by write() to eliminate - // newlines, returns, non-printable characters, etc. Calling - // drawChar() directly with 'bad' characters of font may cause mayhem! - - c -= (uint8_t)pgm_read_byte(&gfxFont->first); - GFXglyph *glyph = pgm_read_glyph_ptr(gfxFont, c); - uint8_t *bitmap = pgm_read_bitmap_ptr(gfxFont); - - uint16_t bo = pgm_read_word(&glyph->bitmapOffset); - uint8_t w = pgm_read_byte(&glyph->width), h = pgm_read_byte(&glyph->height); - int8_t xo = pgm_read_byte(&glyph->xOffset), - yo = pgm_read_byte(&glyph->yOffset); - uint8_t xx, yy, bits = 0, bit = 0; - int16_t xo16 = 0, yo16 = 0; - - if (size_x > 1 || size_y > 1) { - xo16 = xo; - yo16 = yo; - } - - // Todo: Add character clipping here - - // NOTE: THERE IS NO 'BACKGROUND' COLOR OPTION ON CUSTOM FONTS. - // THIS IS ON PURPOSE AND BY DESIGN. The background color feature - // has typically been used with the 'classic' font to overwrite old - // screen contents with new data. This ONLY works because the - // characters are a uniform size; it's not a sensible thing to do with - // proportionally-spaced fonts with glyphs of varying sizes (and that - // may overlap). To replace previously-drawn text when using a custom - // font, use the getTextBounds() function to determine the smallest - // rectangle encompassing a string, erase the area with fillRect(), - // then draw new text. This WILL infortunately 'blink' the text, but - // is unavoidable. Drawing 'background' pixels will NOT fix this, - // only creates a new set of problems. Have an idea to work around - // this (a canvas object type for MCUs that can afford the RAM and - // displays supporting setAddrWindow() and pushColors()), but haven't - // implemented this yet. - - startWrite(); - for (yy = 0; yy < h; yy++) { - for (xx = 0; xx < w; xx++) { - if (!(bit++ & 7)) { - bits = pgm_read_byte(&bitmap[bo++]); - } - if (bits & 0x80) { - if (size_x == 1 && size_y == 1) { - writePixel(x + xo + xx, y + yo + yy, color); - } else { - writeFillRect(x + (xo16 + xx) * size_x, y + (yo16 + yy) * size_y, - size_x, size_y, color); - } - } - bits <<= 1; - } - } - endWrite(); - - } // End classic vs custom font -} -/**************************************************************************/ -/*! - @brief Print one byte/character of data, used to support print() - @param c The 8-bit ascii character to write -*/ -/**************************************************************************/ -size_t Adafruit_GFX::write(uint8_t c) { - if (!gfxFont) { // 'Classic' built-in font - - if (c == '\n') { // Newline? - cursor_x = 0; // Reset x to zero, - cursor_y += textsize_y * 8; // advance y one line - } else if (c != '\r') { // Ignore carriage returns - if (wrap && ((cursor_x + textsize_x * 6) > _width)) { // Off right? - cursor_x = 0; // Reset x to zero, - cursor_y += textsize_y * 8; // advance y one line - } - drawChar(cursor_x, cursor_y, c, textcolor, textbgcolor, textsize_x, - textsize_y); - cursor_x += textsize_x * 6; // Advance x one char - } - - } else { // Custom font - - if (c == '\n') { - cursor_x = 0; - cursor_y += - (int16_t)textsize_y * (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } else if (c != '\r') { - uint8_t first = pgm_read_byte(&gfxFont->first); - if ((c >= first) && (c <= (uint8_t)pgm_read_byte(&gfxFont->last))) { - GFXglyph *glyph = pgm_read_glyph_ptr(gfxFont, c - first); - uint8_t w = pgm_read_byte(&glyph->width), - h = pgm_read_byte(&glyph->height); - if ((w > 0) && (h > 0)) { // Is there an associated bitmap? - int16_t xo = (int8_t)pgm_read_byte(&glyph->xOffset); // sic - if (wrap && ((cursor_x + textsize_x * (xo + w)) > _width)) { - cursor_x = 0; - cursor_y += (int16_t)textsize_y * - (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } - drawChar(cursor_x, cursor_y, c, textcolor, textbgcolor, textsize_x, - textsize_y); - } - cursor_x += - (uint8_t)pgm_read_byte(&glyph->xAdvance) * (int16_t)textsize_x; - } - } - } - return 1; -} - -/**************************************************************************/ -/*! - @brief Set text 'magnification' size. Each increase in s makes 1 pixel - that much bigger. - @param s Desired text size. 1 is default 6x8, 2 is 12x16, 3 is 18x24, etc -*/ -/**************************************************************************/ -void Adafruit_GFX::setTextSize(uint8_t s) { setTextSize(s, s); } - -/**************************************************************************/ -/*! - @brief Set text 'magnification' size. Each increase in s makes 1 pixel - that much bigger. - @param s_x Desired text width magnification level in X-axis. 1 is default - @param s_y Desired text width magnification level in Y-axis. 1 is default -*/ -/**************************************************************************/ -void Adafruit_GFX::setTextSize(uint8_t s_x, uint8_t s_y) { - textsize_x = (s_x > 0) ? s_x : 1; - textsize_y = (s_y > 0) ? s_y : 1; -} - -/**************************************************************************/ -/*! - @brief Set rotation setting for display - @param x 0 thru 3 corresponding to 4 cardinal rotations -*/ -/**************************************************************************/ -void Adafruit_GFX::setRotation(uint8_t x) { - rotation = (x & 3); - switch (rotation) { - case 0: - case 2: - _width = WIDTH; - _height = HEIGHT; - break; - case 1: - case 3: - _width = HEIGHT; - _height = WIDTH; - break; - } -} - -/**************************************************************************/ -/*! - @brief Set the font to display when print()ing, either custom or default - @param f The GFXfont object, if NULL use built in 6x8 font -*/ -/**************************************************************************/ -void Adafruit_GFX::setFont(const GFXfont *f) { - if (f) { // Font struct pointer passed in? - if (!gfxFont) { // And no current font struct? - // Switching from classic to new font behavior. - // Move cursor pos down 6 pixels so it's on baseline. - cursor_y += 6; - } - } else if (gfxFont) { // NULL passed. Current font struct defined? - // Switching from new to classic font behavior. - // Move cursor pos up 6 pixels so it's at top-left of char. - cursor_y -= 6; - } - gfxFont = (GFXfont *)f; -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a character with current font/size. - Broke this out as it's used by both the PROGMEM- and RAM-resident - getTextBounds() functions. - @param c The ASCII character in question - @param x Pointer to x location of character. Value is modified by - this function to advance to next character. - @param y Pointer to y location of character. Value is modified by - this function to advance to next character. - @param minx Pointer to minimum X coordinate, passed in to AND returned - by this function -- this is used to incrementally build a - bounding rectangle for a string. - @param miny Pointer to minimum Y coord, passed in AND returned. - @param maxx Pointer to maximum X coord, passed in AND returned. - @param maxy Pointer to maximum Y coord, passed in AND returned. -*/ -/**************************************************************************/ -void Adafruit_GFX::charBounds(unsigned char c, int16_t *x, int16_t *y, - int16_t *minx, int16_t *miny, int16_t *maxx, - int16_t *maxy) { - - if (gfxFont) { - - if (c == '\n') { // Newline? - *x = 0; // Reset x to zero, advance y by one line - *y += textsize_y * (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } else if (c != '\r') { // Not a carriage return; is normal char - uint8_t first = pgm_read_byte(&gfxFont->first), - last = pgm_read_byte(&gfxFont->last); - if ((c >= first) && (c <= last)) { // Char present in this font? - GFXglyph *glyph = pgm_read_glyph_ptr(gfxFont, c - first); - uint8_t gw = pgm_read_byte(&glyph->width), - gh = pgm_read_byte(&glyph->height), - xa = pgm_read_byte(&glyph->xAdvance); - int8_t xo = pgm_read_byte(&glyph->xOffset), - yo = pgm_read_byte(&glyph->yOffset); - if (wrap && ((*x + (((int16_t)xo + gw) * textsize_x)) > _width)) { - *x = 0; // Reset x to zero, advance y by one line - *y += textsize_y * (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } - int16_t tsx = (int16_t)textsize_x, tsy = (int16_t)textsize_y, - x1 = *x + xo * tsx, y1 = *y + yo * tsy, x2 = x1 + gw * tsx - 1, - y2 = y1 + gh * tsy - 1; - if (x1 < *minx) - *minx = x1; - if (y1 < *miny) - *miny = y1; - if (x2 > *maxx) - *maxx = x2; - if (y2 > *maxy) - *maxy = y2; - *x += xa * tsx; - } - } - - } else { // Default font - - if (c == '\n') { // Newline? - *x = 0; // Reset x to zero, - *y += textsize_y * 8; // advance y one line - // min/max x/y unchaged -- that waits for next 'normal' character - } else if (c != '\r') { // Normal char; ignore carriage returns - if (wrap && ((*x + textsize_x * 6) > _width)) { // Off right? - *x = 0; // Reset x to zero, - *y += textsize_y * 8; // advance y one line - } - int x2 = *x + textsize_x * 6 - 1, // Lower-right pixel of char - y2 = *y + textsize_y * 8 - 1; - if (x2 > *maxx) - *maxx = x2; // Track max x, y - if (y2 > *maxy) - *maxy = y2; - if (*x < *minx) - *minx = *x; // Track min x, y - if (*y < *miny) - *miny = *y; - *x += textsize_x * 6; // Advance x one char - } - } -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a string with current font/size. - Pass string and a cursor position, returns UL corner and W,H. - @param str The ASCII string to measure - @param x The current cursor X - @param y The current cursor Y - @param x1 The boundary X coordinate, returned by function - @param y1 The boundary Y coordinate, returned by function - @param w The boundary width, returned by function - @param h The boundary height, returned by function -*/ -/**************************************************************************/ -void Adafruit_GFX::getTextBounds(const char *str, int16_t x, int16_t y, - int16_t *x1, int16_t *y1, uint16_t *w, - uint16_t *h) { - - uint8_t c; // Current character - int16_t minx = 0x7FFF, miny = 0x7FFF, maxx = -1, maxy = -1; // Bound rect - // Bound rect is intentionally initialized inverted, so 1st char sets it - - *x1 = x; // Initial position is value passed in - *y1 = y; - *w = *h = 0; // Initial size is zero - - while ((c = *str++)) { - // charBounds() modifies x/y to advance for each character, - // and min/max x/y are updated to incrementally build bounding rect. - charBounds(c, &x, &y, &minx, &miny, &maxx, &maxy); - } - - if (maxx >= minx) { // If legit string bounds were found... - *x1 = minx; // Update x1 to least X coord, - *w = maxx - minx + 1; // And w to bound rect width - } - if (maxy >= miny) { // Same for height - *y1 = miny; - *h = maxy - miny + 1; - } -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a string with current font/size. Pass - string and a cursor position, returns UL corner and W,H. - @param str The ascii string to measure (as an arduino String() class) - @param x The current cursor X - @param y The current cursor Y - @param x1 The boundary X coordinate, set by function - @param y1 The boundary Y coordinate, set by function - @param w The boundary width, set by function - @param h The boundary height, set by function -*/ -/**************************************************************************/ -void Adafruit_GFX::getTextBounds(const String &str, int16_t x, int16_t y, - int16_t *x1, int16_t *y1, uint16_t *w, - uint16_t *h) { - if (str.length() != 0) { - getTextBounds(const_cast(str.c_str()), x, y, x1, y1, w, h); - } -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a PROGMEM string with current - font/size. Pass string and a cursor position, returns UL corner and W,H. - @param str The flash-memory ascii string to measure - @param x The current cursor X - @param y The current cursor Y - @param x1 The boundary X coordinate, set by function - @param y1 The boundary Y coordinate, set by function - @param w The boundary width, set by function - @param h The boundary height, set by function -*/ -/**************************************************************************/ -void Adafruit_GFX::getTextBounds(const __FlashStringHelper *str, int16_t x, - int16_t y, int16_t *x1, int16_t *y1, - uint16_t *w, uint16_t *h) { - uint8_t *s = (uint8_t *)str, c; - - *x1 = x; - *y1 = y; - *w = *h = 0; - - int16_t minx = _width, miny = _height, maxx = -1, maxy = -1; - - while ((c = pgm_read_byte(s++))) - charBounds(c, &x, &y, &minx, &miny, &maxx, &maxy); - - if (maxx >= minx) { - *x1 = minx; - *w = maxx - minx + 1; - } - if (maxy >= miny) { - *y1 = miny; - *h = maxy - miny + 1; - } -} - -/**************************************************************************/ -/*! - @brief Invert the display (ideally using built-in hardware command) - @param i True if you want to invert, false to make 'normal' -*/ -/**************************************************************************/ -void Adafruit_GFX::invertDisplay(bool i) { - // Do nothing, must be subclassed if supported by hardware - (void)i; // disable -Wunused-parameter warning -} - -/***************************************************************************/ - -/**************************************************************************/ -/*! - @brief Create a simple drawn button UI element -*/ -/**************************************************************************/ -Adafruit_GFX_Button::Adafruit_GFX_Button(void) { _gfx = 0; } - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings - @param gfx Pointer to our display so we can draw to it! - @param x The X coordinate of the center of the button - @param y The Y coordinate of the center of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize The font magnification of the label text -*/ -/**************************************************************************/ -// Classic initButton() function: pass center & size -void Adafruit_GFX_Button::initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, - uint16_t w, uint16_t h, uint16_t outline, - uint16_t fill, uint16_t textcolor, - char *label, uint8_t textsize) { - // Tweak arguments and pass to the newer initButtonUL() function... - initButtonUL(gfx, x - (w / 2), y - (h / 2), w, h, outline, fill, textcolor, - label, textsize); -} - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings - @param gfx Pointer to our display so we can draw to it! - @param x The X coordinate of the center of the button - @param y The Y coordinate of the center of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize_x The font magnification in X-axis of the label text - @param textsize_y The font magnification in Y-axis of the label text -*/ -/**************************************************************************/ -// Classic initButton() function: pass center & size -void Adafruit_GFX_Button::initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, - uint16_t w, uint16_t h, uint16_t outline, - uint16_t fill, uint16_t textcolor, - char *label, uint8_t textsize_x, - uint8_t textsize_y) { - // Tweak arguments and pass to the newer initButtonUL() function... - initButtonUL(gfx, x - (w / 2), y - (h / 2), w, h, outline, fill, textcolor, - label, textsize_x, textsize_y); -} - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings, with - upper-left coordinates - @param gfx Pointer to our display so we can draw to it! - @param x1 The X coordinate of the Upper-Left corner of the button - @param y1 The Y coordinate of the Upper-Left corner of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize The font magnification of the label text -*/ -/**************************************************************************/ -void Adafruit_GFX_Button::initButtonUL(Adafruit_GFX *gfx, int16_t x1, - int16_t y1, uint16_t w, uint16_t h, - uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, - uint8_t textsize) { - initButtonUL(gfx, x1, y1, w, h, outline, fill, textcolor, label, textsize, - textsize); -} - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings, with - upper-left coordinates - @param gfx Pointer to our display so we can draw to it! - @param x1 The X coordinate of the Upper-Left corner of the button - @param y1 The Y coordinate of the Upper-Left corner of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize_x The font magnification in X-axis of the label text - @param textsize_y The font magnification in Y-axis of the label text -*/ -/**************************************************************************/ -void Adafruit_GFX_Button::initButtonUL(Adafruit_GFX *gfx, int16_t x1, - int16_t y1, uint16_t w, uint16_t h, - uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, - uint8_t textsize_x, uint8_t textsize_y) { - _x1 = x1; - _y1 = y1; - _w = w; - _h = h; - _outlinecolor = outline; - _fillcolor = fill; - _textcolor = textcolor; - _textsize_x = textsize_x; - _textsize_y = textsize_y; - _gfx = gfx; - strncpy(_label, label, 9); - _label[9] = 0; // strncpy does not place a null at the end. - // When 'label' is >9 characters, _label is not terminated. -} - -/**************************************************************************/ -/*! - @brief Draw the button on the screen - @param inverted Whether to draw with fill/text swapped to indicate - 'pressed' -*/ -/**************************************************************************/ -void Adafruit_GFX_Button::drawButton(bool inverted) { - uint16_t fill, outline, text; - - if (!inverted) { - fill = _fillcolor; - outline = _outlinecolor; - text = _textcolor; - } else { - fill = _textcolor; - outline = _outlinecolor; - text = _fillcolor; - } - - uint8_t r = min(_w, _h) / 4; // Corner radius - _gfx->fillRoundRect(_x1, _y1, _w, _h, r, fill); - _gfx->drawRoundRect(_x1, _y1, _w, _h, r, outline); - - _gfx->setCursor(_x1 + (_w / 2) - (strlen(_label) * 3 * _textsize_x), - _y1 + (_h / 2) - (4 * _textsize_y)); - _gfx->setTextColor(text); - _gfx->setTextSize(_textsize_x, _textsize_y); - _gfx->print(_label); -} - -/**************************************************************************/ -/*! - @brief Helper to let us know if a coordinate is within the bounds of the - button - @param x The X coordinate to check - @param y The Y coordinate to check - @returns True if within button graphics outline -*/ -/**************************************************************************/ -bool Adafruit_GFX_Button::contains(int16_t x, int16_t y) { - return ((x >= _x1) && (x < (int16_t)(_x1 + _w)) && (y >= _y1) && - (y < (int16_t)(_y1 + _h))); -} - -/**************************************************************************/ -/*! - @brief Query whether the button was pressed since we last checked state - @returns True if was not-pressed before, now is. -*/ -/**************************************************************************/ -bool Adafruit_GFX_Button::justPressed() { return (currstate && !laststate); } - -/**************************************************************************/ -/*! - @brief Query whether the button was released since we last checked state - @returns True if was pressed before, now is not. -*/ -/**************************************************************************/ -bool Adafruit_GFX_Button::justReleased() { return (!currstate && laststate); } - -// ------------------------------------------------------------------------- - -// GFXcanvas1, GFXcanvas8 and GFXcanvas16 (currently a WIP, don't get too -// comfy with the implementation) provide 1-, 8- and 16-bit offscreen -// canvases, the address of which can be passed to drawBitmap() or -// pushColors() (the latter appears only in a couple of GFX-subclassed TFT -// libraries at this time). This is here mostly to help with the recently- -// added proportionally-spaced fonts; adds a way to refresh a section of the -// screen without a massive flickering clear-and-redraw...but maybe you'll -// find other uses too. VERY RAM-intensive, since the buffer is in MCU -// memory and not the display driver...GXFcanvas1 might be minimally useful -// on an Uno-class board, but this and the others are much more likely to -// require at least a Mega or various recent ARM-type boards (recommended, -// as the text+bitmap draw can be pokey). GFXcanvas1 requires 1 bit per -// pixel (rounded up to nearest byte per scanline), GFXcanvas8 is 1 byte -// per pixel (no scanline pad), and GFXcanvas16 uses 2 bytes per pixel (no -// scanline pad). -// NOT EXTENSIVELY TESTED YET. MAY CONTAIN WORST BUGS KNOWN TO HUMANKIND. - -#ifdef __AVR__ -// Bitmask tables of 0x80>>X and ~(0x80>>X), because X>>Y is slow on AVR -const uint8_t PROGMEM GFXcanvas1::GFXsetBit[] = {0x80, 0x40, 0x20, 0x10, - 0x08, 0x04, 0x02, 0x01}; -const uint8_t PROGMEM GFXcanvas1::GFXclrBit[] = {0x7F, 0xBF, 0xDF, 0xEF, - 0xF7, 0xFB, 0xFD, 0xFE}; -#endif - -/**************************************************************************/ -/*! - @brief Instatiate a GFX 1-bit canvas context for graphics - @param w Display width, in pixels - @param h Display height, in pixels - @param allocate_buffer If true, a buffer is allocated with malloc. If - false, the subclass must initialize the buffer before any drawing operation, - and free it in the destructor. If false (the default), the buffer is - allocated and freed by the library. -*/ -/**************************************************************************/ -GFXcanvas1::GFXcanvas1(uint16_t w, uint16_t h, bool allocate_buffer) - : Adafruit_GFX(w, h), buffer_owned(allocate_buffer) { - if (allocate_buffer) { - uint32_t bytes = ((w + 7) / 8) * h; - if ((buffer = (uint8_t *)malloc(bytes))) { - memset(buffer, 0, bytes); - } - } else { - buffer = nullptr; - } -} - -/**************************************************************************/ -/*! - @brief Delete the canvas, free memory -*/ -/**************************************************************************/ -GFXcanvas1::~GFXcanvas1(void) { - if (buffer && buffer_owned) - free(buffer); -} - -/**************************************************************************/ -/*! - @brief Draw a pixel to the canvas framebuffer - @param x x coordinate - @param y y coordinate - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawPixel(int16_t x, int16_t y, uint16_t color) { - if (buffer) { - if ((x < 0) || (y < 0) || (x >= _width) || (y >= _height)) - return; - - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - - uint8_t *ptr = &buffer[(x / 8) + y * ((WIDTH + 7) / 8)]; -#ifdef __AVR__ - if (color) - *ptr |= pgm_read_byte(&GFXsetBit[x & 7]); - else - *ptr &= pgm_read_byte(&GFXclrBit[x & 7]); -#else - if (color) - *ptr |= 0x80 >> (x & 7); - else - *ptr &= ~(0x80 >> (x & 7)); -#endif - } -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given coordinate - @param x x coordinate - @param y y coordinate - @returns The desired pixel's binary color value, either 0x1 (on) or 0x0 - (off) -*/ -/**********************************************************************/ -bool GFXcanvas1::getPixel(int16_t x, int16_t y) const { - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - return getRawPixel(x, y); -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given, unrotated coordinate. - This method is intended for hardware drivers to get pixel value - in physical coordinates. - @param x x coordinate - @param y y coordinate - @returns The desired pixel's binary color value, either 0x1 (on) or 0x0 - (off) -*/ -/**********************************************************************/ -bool GFXcanvas1::getRawPixel(int16_t x, int16_t y) const { - if ((x < 0) || (y < 0) || (x >= WIDTH) || (y >= HEIGHT)) - return 0; - if (buffer) { - uint8_t *ptr = &buffer[(x / 8) + y * ((WIDTH + 7) / 8)]; - -#ifdef __AVR__ - return ((*ptr) & pgm_read_byte(&GFXsetBit[x & 7])) != 0; -#else - return ((*ptr) & (0x80 >> (x & 7))) != 0; -#endif - } - return 0; -} - -/**************************************************************************/ -/*! - @brief Fill the framebuffer completely with one color - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::fillScreen(uint16_t color) { - if (buffer) { - uint32_t bytes = ((WIDTH + 7) / 8) * HEIGHT; - memset(buffer, color ? 0xFF : 0x00, bytes); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param h Length of vertical line to be drawn, including first point - @param color Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - - if (h < 0) { // Convert negative heights to positive equivalent - h *= -1; - y -= h - 1; - if (y < 0) { - h += y; - y = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((x < 0) || (x >= width()) || (y >= height()) || ((y + h - 1) < 0)) { - return; - } - - if (y < 0) { // Clip top - h += y; - y = 0; - } - if (y + h > height()) { // Clip bottom - h = height() - y; - } - - if (getRotation() == 0) { - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - x -= h - 1; - drawFastRawHLine(x, y, h, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - y -= h - 1; - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - drawFastRawHLine(x, y, h, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param w Length of horizontal line to be drawn, including first point - @param color Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if (w < 0) { // Convert negative widths to positive equivalent - w *= -1; - x -= w - 1; - if (x < 0) { - w += x; - x = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((y < 0) || (y >= height()) || (x >= width()) || ((x + w - 1) < 0)) { - return; - } - - if (x < 0) { // Clip left - w += x; - x = 0; - } - if (x + w >= width()) { // Clip right - w = width() - x; - } - - if (getRotation() == 0) { - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - drawFastRawVLine(x, y, w, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - x -= w - 1; - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - y -= w - 1; - drawFastRawVLine(x, y, w, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastRawVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - int16_t row_bytes = ((WIDTH + 7) / 8); - uint8_t *ptr = &buffer[(x / 8) + y * row_bytes]; - - if (color > 0) { -#ifdef __AVR__ - uint8_t bit_mask = pgm_read_byte(&GFXsetBit[x & 7]); -#else - uint8_t bit_mask = (0x80 >> (x & 7)); -#endif - for (int16_t i = 0; i < h; i++) { - *ptr |= bit_mask; - ptr += row_bytes; - } - } else { -#ifdef __AVR__ - uint8_t bit_mask = pgm_read_byte(&GFXclrBit[x & 7]); -#else - uint8_t bit_mask = ~(0x80 >> (x & 7)); -#endif - for (int16_t i = 0; i < h; i++) { - *ptr &= bit_mask; - ptr += row_bytes; - } - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param w length of horizontal line to be drawn, including first point - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastRawHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - int16_t rowBytes = ((WIDTH + 7) / 8); - uint8_t *ptr = &buffer[(x / 8) + y * rowBytes]; - size_t remainingWidthBits = w; - - // check to see if first byte needs to be partially filled - if ((x & 7) > 0) { - // create bit mask for first byte - uint8_t startByteBitMask = 0x00; - for (int8_t i = (x & 7); ((i < 8) && (remainingWidthBits > 0)); i++) { -#ifdef __AVR__ - startByteBitMask |= pgm_read_byte(&GFXsetBit[i]); -#else - startByteBitMask |= (0x80 >> i); -#endif - remainingWidthBits--; - } - if (color > 0) { - *ptr |= startByteBitMask; - } else { - *ptr &= ~startByteBitMask; - } - - ptr++; - } - - // do the next remainingWidthBits bits - if (remainingWidthBits > 0) { - size_t remainingWholeBytes = remainingWidthBits / 8; - size_t lastByteBits = remainingWidthBits % 8; - uint8_t wholeByteColor = color > 0 ? 0xFF : 0x00; - - memset(ptr, wholeByteColor, remainingWholeBytes); - - if (lastByteBits > 0) { - uint8_t lastByteBitMask = 0x00; - for (size_t i = 0; i < lastByteBits; i++) { -#ifdef __AVR__ - lastByteBitMask |= pgm_read_byte(&GFXsetBit[i]); -#else - lastByteBitMask |= (0x80 >> i); -#endif - } - ptr += remainingWholeBytes; - - if (color > 0) { - *ptr |= lastByteBitMask; - } else { - *ptr &= ~lastByteBitMask; - } - } - } -} - -/**************************************************************************/ -/*! - @brief Instatiate a GFX 8-bit canvas context for graphics - @param w Display width, in pixels - @param h Display height, in pixels - @param allocate_buffer If true, a buffer is allocated with malloc. If - false, the subclass must initialize the buffer before any drawing operation, - and free it in the destructor. If false (the default), the buffer is - allocated and freed by the library. -*/ -/**************************************************************************/ -GFXcanvas8::GFXcanvas8(uint16_t w, uint16_t h, bool allocate_buffer) - : Adafruit_GFX(w, h), buffer_owned(allocate_buffer) { - if (allocate_buffer) { - uint32_t bytes = w * h; - if ((buffer = (uint8_t *)malloc(bytes))) { - memset(buffer, 0, bytes); - } - } else - buffer = nullptr; -} - -/**************************************************************************/ -/*! - @brief Delete the canvas, free memory -*/ -/**************************************************************************/ -GFXcanvas8::~GFXcanvas8(void) { - if (buffer && buffer_owned) - free(buffer); -} - -/**************************************************************************/ -/*! - @brief Draw a pixel to the canvas framebuffer - @param x x coordinate - @param y y coordinate - @param color 8-bit Color to fill with. Only lower byte of uint16_t is used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawPixel(int16_t x, int16_t y, uint16_t color) { - if (buffer) { - if ((x < 0) || (y < 0) || (x >= _width) || (y >= _height)) - return; - - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - - buffer[x + y * WIDTH] = color; - } -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given coordinate - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 8-bit color value -*/ -/**********************************************************************/ -uint8_t GFXcanvas8::getPixel(int16_t x, int16_t y) const { - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - return getRawPixel(x, y); -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given, unrotated coordinate. - This method is intended for hardware drivers to get pixel value - in physical coordinates. - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 8-bit color value -*/ -/**********************************************************************/ -uint8_t GFXcanvas8::getRawPixel(int16_t x, int16_t y) const { - if ((x < 0) || (y < 0) || (x >= WIDTH) || (y >= HEIGHT)) - return 0; - if (buffer) { - return buffer[x + y * WIDTH]; - } - return 0; -} - -/**************************************************************************/ -/*! - @brief Fill the framebuffer completely with one color - @param color 8-bit Color to fill with. Only lower byte of uint16_t is used. -*/ -/**************************************************************************/ -void GFXcanvas8::fillScreen(uint16_t color) { - if (buffer) { - memset(buffer, color, WIDTH * HEIGHT); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param h Length of vertical line to be drawn, including first point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if (h < 0) { // Convert negative heights to positive equivalent - h *= -1; - y -= h - 1; - if (y < 0) { - h += y; - y = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((x < 0) || (x >= width()) || (y >= height()) || ((y + h - 1) < 0)) { - return; - } - - if (y < 0) { // Clip top - h += y; - y = 0; - } - if (y + h > height()) { // Clip bottom - h = height() - y; - } - - if (getRotation() == 0) { - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - x -= h - 1; - drawFastRawHLine(x, y, h, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - y -= h - 1; - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - drawFastRawHLine(x, y, h, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param w Length of horizontal line to be drawn, including 1st point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - - if (w < 0) { // Convert negative widths to positive equivalent - w *= -1; - x -= w - 1; - if (x < 0) { - w += x; - x = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((y < 0) || (y >= height()) || (x >= width()) || ((x + w - 1) < 0)) { - return; - } - - if (x < 0) { // Clip left - w += x; - x = 0; - } - if (x + w >= width()) { // Clip right - w = width() - x; - } - - if (getRotation() == 0) { - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - drawFastRawVLine(x, y, w, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - x -= w - 1; - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - y -= w - 1; - drawFastRawVLine(x, y, w, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastRawVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - uint8_t *buffer_ptr = buffer + y * WIDTH + x; - for (int16_t i = 0; i < h; i++) { - (*buffer_ptr) = color; - buffer_ptr += WIDTH; - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param w length of horizontal line to be drawn, including first point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastRawHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - memset(buffer + y * WIDTH + x, color, w); -} - -/**************************************************************************/ -/*! - @brief Instatiate a GFX 16-bit canvas context for graphics - @param w Display width, in pixels - @param h Display height, in pixels - @param allocate_buffer If true, a buffer is allocated with malloc. If - false, the subclass must initialize the buffer before any drawing operation, - and free it in the destructor. If false (the default), the buffer is - allocated and freed by the library. -*/ -/**************************************************************************/ -GFXcanvas16::GFXcanvas16(uint16_t w, uint16_t h, bool allocate_buffer) - : Adafruit_GFX(w, h), buffer_owned(allocate_buffer) { - if (allocate_buffer) { - uint32_t bytes = w * h * 2; - if ((buffer = (uint16_t *)malloc(bytes))) { - memset(buffer, 0, bytes); - } - } else { - buffer = nullptr; - } -} - -/**************************************************************************/ -/*! - @brief Delete the canvas, free memory -*/ -/**************************************************************************/ -GFXcanvas16::~GFXcanvas16(void) { - if (buffer && buffer_owned) - free(buffer); -} - -/**************************************************************************/ -/*! - @brief Draw a pixel to the canvas framebuffer - @param x x coordinate - @param y y coordinate - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas16::drawPixel(int16_t x, int16_t y, uint16_t color) { - if (buffer) { - if ((x < 0) || (y < 0) || (x >= _width) || (y >= _height)) - return; - - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - - buffer[x + y * WIDTH] = color; - } -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given coordinate - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 16-bit 5-6-5 color value -*/ -/**********************************************************************/ -uint16_t GFXcanvas16::getPixel(int16_t x, int16_t y) const { - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - return getRawPixel(x, y); -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given, unrotated coordinate. - This method is intended for hardware drivers to get pixel value - in physical coordinates. - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 16-bit 5-6-5 color value -*/ -/**********************************************************************/ -uint16_t GFXcanvas16::getRawPixel(int16_t x, int16_t y) const { - if ((x < 0) || (y < 0) || (x >= WIDTH) || (y >= HEIGHT)) - return 0; - if (buffer) { - return buffer[x + y * WIDTH]; - } - return 0; -} - -/**************************************************************************/ -/*! - @brief Fill the framebuffer completely with one color - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas16::fillScreen(uint16_t color) { - if (buffer) { - uint8_t hi = color >> 8, lo = color & 0xFF; - if (hi == lo) { - memset(buffer, lo, WIDTH * HEIGHT * 2); - } else { - uint32_t i, pixels = WIDTH * HEIGHT; - for (i = 0; i < pixels; i++) - buffer[i] = color; - } - } -} - -/**************************************************************************/ -/*! - @brief Reverses the "endian-ness" of each 16-bit pixel within the - canvas; little-endian to big-endian, or big-endian to little. - Most microcontrollers (such as SAMD) are little-endian, while - most displays tend toward big-endianness. All the drawing - functions (including RGB bitmap drawing) take care of this - automatically, but some specialized code (usually involving - DMA) can benefit from having pixel data already in the - display-native order. Note that this does NOT convert to a - SPECIFIC endian-ness, it just flips the bytes within each word. -*/ -/**************************************************************************/ -void GFXcanvas16::byteSwap(void) { - if (buffer) { - uint32_t i, pixels = WIDTH * HEIGHT; - for (i = 0; i < pixels; i++) - buffer[i] = __builtin_bswap16(buffer[i]); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if (h < 0) { // Convert negative heights to positive equivalent - h *= -1; - y -= h - 1; - if (y < 0) { - h += y; - y = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((x < 0) || (x >= width()) || (y >= height()) || ((y + h - 1) < 0)) { - return; - } - - if (y < 0) { // Clip top - h += y; - y = 0; - } - if (y + h > height()) { // Clip bottom - h = height() - y; - } - - if (getRotation() == 0) { - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - x -= h - 1; - drawFastRawHLine(x, y, h, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - y -= h - 1; - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - drawFastRawHLine(x, y, h, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param w Length of horizontal line to be drawn, including 1st point - @param color Color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if (w < 0) { // Convert negative widths to positive equivalent - w *= -1; - x -= w - 1; - if (x < 0) { - w += x; - x = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((y < 0) || (y >= height()) || (x >= width()) || ((x + w - 1) < 0)) { - return; - } - - if (x < 0) { // Clip left - w += x; - x = 0; - } - if (x + w >= width()) { // Clip right - w = width() - x; - } - - if (getRotation() == 0) { - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - drawFastRawVLine(x, y, w, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - x -= w - 1; - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - y -= w - 1; - drawFastRawVLine(x, y, w, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastRawVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - uint16_t *buffer_ptr = buffer + y * WIDTH + x; - for (int16_t i = 0; i < h; i++) { - (*buffer_ptr) = color; - buffer_ptr += WIDTH; - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param w length of horizontal line to be drawn, including first point - @param color color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastRawHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - uint32_t buffer_index = y * WIDTH + x; - for (uint32_t i = buffer_index; i < buffer_index + w; i++) { - buffer[i] = color; - } -} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GFX.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GFX.h deleted file mode 100644 index dd9dc0d..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GFX.h +++ /dev/null @@ -1,406 +0,0 @@ -#ifndef _ADAFRUIT_GFX_H -#define _ADAFRUIT_GFX_H - -#if ARDUINO >= 100 -#include "Arduino.h" -#include "Print.h" -#else -#include "WProgram.h" -#endif -#include "gfxfont.h" - -#include -#include - -/// A generic graphics superclass that can handle all sorts of drawing. At a -/// minimum you can subclass and provide drawPixel(). At a maximum you can do a -/// ton of overriding to optimize. Used for any/all Adafruit displays! -class Adafruit_GFX : public Print { - -public: - Adafruit_GFX(int16_t w, int16_t h); // Constructor - - /**********************************************************************/ - /*! - @brief Draw to the screen/framebuffer/etc. - Must be overridden in subclass. - @param x X coordinate in pixels - @param y Y coordinate in pixels - @param color 16-bit pixel color. - */ - /**********************************************************************/ - virtual void drawPixel(int16_t x, int16_t y, uint16_t color) = 0; - - // TRANSACTION API / CORE DRAW API - // These MAY be overridden by the subclass to provide device-specific - // optimized code. Otherwise 'generic' versions are used. - virtual void startWrite(void); - virtual void writePixel(int16_t x, int16_t y, uint16_t color); - virtual void writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - virtual void writeFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - virtual void writeFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - virtual void writeLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color); - virtual void endWrite(void); - - // CONTROL API - // These MAY be overridden by the subclass to provide device-specific - // optimized code. Otherwise 'generic' versions are used. - virtual void setRotation(uint8_t r); - virtual void invertDisplay(bool i); - - // BASIC DRAW API - // These MAY be overridden by the subclass to provide device-specific - // optimized code. Otherwise 'generic' versions are used. - - // It's good to implement those, even if using transaction API - virtual void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - virtual void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - virtual void fillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - virtual void fillScreen(uint16_t color); - // Optional and probably not necessary to change - virtual void drawLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color); - virtual void drawRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - - // These exist only with Adafruit_GFX (no subclass overrides) - void drawCircle(int16_t x0, int16_t y0, int16_t r, uint16_t color); - void drawCircleHelper(int16_t x0, int16_t y0, int16_t r, uint8_t cornername, - uint16_t color); - void fillCircle(int16_t x0, int16_t y0, int16_t r, uint16_t color); - void fillCircleHelper(int16_t x0, int16_t y0, int16_t r, uint8_t cornername, - int16_t delta, uint16_t color); - void drawEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color); - void fillEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color); - void drawTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, - int16_t y2, uint16_t color); - void fillTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, - int16_t y2, uint16_t color); - void drawRoundRect(int16_t x0, int16_t y0, int16_t w, int16_t h, - int16_t radius, uint16_t color); - void fillRoundRect(int16_t x0, int16_t y0, int16_t w, int16_t h, - int16_t radius, uint16_t color); - void drawRotatedRect(int16_t cenX, int16_t cenY, int16_t w, int16_t h, - int16_t angleDeg, uint16_t color); - void fillRotatedRect(int16_t cenX, int16_t cenY, int16_t w, int16_t h, - int16_t angleDeg, uint16_t color); - void rotatePoint(int16_t &x0, int16_t &y0, int16_t angleDeg); - void drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, - int16_t h, uint16_t color); - void drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, - int16_t h, uint16_t color, uint16_t bg); - void drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, int16_t h, - uint16_t color); - void drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, int16_t h, - uint16_t color, uint16_t bg); - void drawXBitmap(int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, - int16_t h, uint16_t color); - void drawGrayscaleBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h); - void drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, - int16_t h); - void drawGrayscaleBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - const uint8_t mask[], int16_t w, int16_t h); - void drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, uint8_t *mask, - int16_t w, int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], int16_t w, - int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, int16_t w, - int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], - const uint8_t mask[], int16_t w, int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, uint8_t *mask, - int16_t w, int16_t h); - void drawChar(int16_t x, int16_t y, unsigned char c, uint16_t color, - uint16_t bg, uint8_t size); - void drawChar(int16_t x, int16_t y, unsigned char c, uint16_t color, - uint16_t bg, uint8_t size_x, uint8_t size_y); - void getTextBounds(const char *string, int16_t x, int16_t y, int16_t *x1, - int16_t *y1, uint16_t *w, uint16_t *h); - void getTextBounds(const __FlashStringHelper *s, int16_t x, int16_t y, - int16_t *x1, int16_t *y1, uint16_t *w, uint16_t *h); - void getTextBounds(const String &str, int16_t x, int16_t y, int16_t *x1, - int16_t *y1, uint16_t *w, uint16_t *h); - void setTextSize(uint8_t s); - void setTextSize(uint8_t sx, uint8_t sy); - void setFont(const GFXfont *f = NULL); - - /**********************************************************************/ - /*! - @brief Set text cursor location - @param x X coordinate in pixels - @param y Y coordinate in pixels - */ - /**********************************************************************/ - void setCursor(int16_t x, int16_t y) { - cursor_x = x; - cursor_y = y; - } - - /**********************************************************************/ - /*! - @brief Set text font color with transparant background - @param c 16-bit 5-6-5 Color to draw text with - @note For 'transparent' background, background and foreground - are set to same color rather than using a separate flag. - */ - /**********************************************************************/ - void setTextColor(uint16_t c) { textcolor = textbgcolor = c; } - - /**********************************************************************/ - /*! - @brief Set text font color with custom background color - @param c 16-bit 5-6-5 Color to draw text with - @param bg 16-bit 5-6-5 Color to draw background/fill with - */ - /**********************************************************************/ - void setTextColor(uint16_t c, uint16_t bg) { - textcolor = c; - textbgcolor = bg; - } - - /**********************************************************************/ - /*! - @brief Set whether text that is too long for the screen width should - automatically wrap around to the next line (else clip right). - @param w true for wrapping, false for clipping - */ - /**********************************************************************/ - void setTextWrap(bool w) { wrap = w; } - - /**********************************************************************/ - /*! - @brief Enable (or disable) Code Page 437-compatible charset. - There was an error in glcdfont.c for the longest time -- one - character (#176, the 'light shade' block) was missing -- this - threw off the index of every character that followed it. - But a TON of code has been written with the erroneous - character indices. By default, the library uses the original - 'wrong' behavior and old sketches will still work. Pass - 'true' to this function to use correct CP437 character values - in your code. - @param x true = enable (new behavior), false = disable (old behavior) - */ - /**********************************************************************/ - void cp437(bool x = true) { _cp437 = x; } - - using Print::write; -#if ARDUINO >= 100 - virtual size_t write(uint8_t); -#else - virtual void write(uint8_t); -#endif - - /************************************************************************/ - /*! - @brief Get width of the display, accounting for current rotation - @returns Width in pixels - */ - /************************************************************************/ - int16_t width(void) const { return _width; }; - - /************************************************************************/ - /*! - @brief Get height of the display, accounting for current rotation - @returns Height in pixels - */ - /************************************************************************/ - int16_t height(void) const { return _height; } - - /************************************************************************/ - /*! - @brief Get rotation setting for display - @returns 0 thru 3 corresponding to 4 cardinal rotations - */ - /************************************************************************/ - uint8_t getRotation(void) const { return rotation; } - - // get current cursor position (get rotation safe maximum values, - // using: width() for x, height() for y) - /************************************************************************/ - /*! - @brief Get text cursor X location - @returns X coordinate in pixels - */ - /************************************************************************/ - int16_t getCursorX(void) const { return cursor_x; } - - /************************************************************************/ - /*! - @brief Get text cursor Y location - @returns Y coordinate in pixels - */ - /************************************************************************/ - int16_t getCursorY(void) const { return cursor_y; }; - -protected: - void charBounds(unsigned char c, int16_t *x, int16_t *y, int16_t *minx, - int16_t *miny, int16_t *maxx, int16_t *maxy); - int16_t WIDTH; ///< This is the 'raw' display width - never changes - int16_t HEIGHT; ///< This is the 'raw' display height - never changes - int16_t _width; ///< Display width as modified by current rotation - int16_t _height; ///< Display height as modified by current rotation - int16_t cursor_x; ///< x location to start print()ing text - int16_t cursor_y; ///< y location to start print()ing text - uint16_t textcolor; ///< 16-bit background color for print() - uint16_t textbgcolor; ///< 16-bit text color for print() - uint8_t textsize_x; ///< Desired magnification in X-axis of text to print() - uint8_t textsize_y; ///< Desired magnification in Y-axis of text to print() - uint8_t rotation; ///< Display rotation (0 thru 3) - bool wrap; ///< If set, 'wrap' text at right edge of display - bool _cp437; ///< If set, use correct CP437 charset (default is off) - GFXfont *gfxFont; ///< Pointer to special font -}; - -/// A simple drawn button UI element -class Adafruit_GFX_Button { - -public: - Adafruit_GFX_Button(void); - // "Classic" initButton() uses center & size - void initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize); - void initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize_x, - uint8_t textsize_y); - // New/alt initButton() uses upper-left corner & size - void initButtonUL(Adafruit_GFX *gfx, int16_t x1, int16_t y1, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize); - void initButtonUL(Adafruit_GFX *gfx, int16_t x1, int16_t y1, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize_x, - uint8_t textsize_y); - void drawButton(bool inverted = false); - bool contains(int16_t x, int16_t y); - - /**********************************************************************/ - /*! - @brief Sets button state, should be done by some touch function - @param p True for pressed, false for not. - */ - /**********************************************************************/ - void press(bool p) { - laststate = currstate; - currstate = p; - } - - bool justPressed(); - bool justReleased(); - - /**********************************************************************/ - /*! - @brief Query whether the button is currently pressed - @returns True if pressed - */ - /**********************************************************************/ - bool isPressed(void) { return currstate; }; - -private: - Adafruit_GFX *_gfx; - int16_t _x1, _y1; // Coordinates of top-left corner - uint16_t _w, _h; - uint8_t _textsize_x; - uint8_t _textsize_y; - uint16_t _outlinecolor, _fillcolor, _textcolor; - char _label[10]; - - bool currstate, laststate; -}; - -/// A GFX 1-bit canvas context for graphics -class GFXcanvas1 : public Adafruit_GFX { -public: - GFXcanvas1(uint16_t w, uint16_t h, bool allocate_buffer = true); - ~GFXcanvas1(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillScreen(uint16_t color); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - bool getPixel(int16_t x, int16_t y) const; - /**********************************************************************/ - /*! - @brief Get a pointer to the internal buffer memory - @returns A pointer to the allocated buffer - */ - /**********************************************************************/ - uint8_t *getBuffer(void) const { return buffer; } - -protected: - bool getRawPixel(int16_t x, int16_t y) const; - void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint8_t *buffer; ///< Raster data: no longer private, allow subclass access - bool buffer_owned; ///< If true, destructor will free buffer, else it will do - ///< nothing - -private: -#ifdef __AVR__ - // Bitmask tables of 0x80>>X and ~(0x80>>X), because X>>Y is slow on AVR - static const uint8_t PROGMEM GFXsetBit[], GFXclrBit[]; -#endif -}; - -/// A GFX 8-bit canvas context for graphics -class GFXcanvas8 : public Adafruit_GFX { -public: - GFXcanvas8(uint16_t w, uint16_t h, bool allocate_buffer = true); - ~GFXcanvas8(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillScreen(uint16_t color); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint8_t getPixel(int16_t x, int16_t y) const; - /**********************************************************************/ - /*! - @brief Get a pointer to the internal buffer memory - @returns A pointer to the allocated buffer - */ - /**********************************************************************/ - uint8_t *getBuffer(void) const { return buffer; } - -protected: - uint8_t getRawPixel(int16_t x, int16_t y) const; - void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint8_t *buffer; ///< Raster data: no longer private, allow subclass access - bool buffer_owned; ///< If true, destructor will free buffer, else it will do - ///< nothing -}; - -/// A GFX 16-bit canvas context for graphics -class GFXcanvas16 : public Adafruit_GFX { -public: - GFXcanvas16(uint16_t w, uint16_t h, bool allocate_buffer = true); - ~GFXcanvas16(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillScreen(uint16_t color); - void byteSwap(void); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint16_t getPixel(int16_t x, int16_t y) const; - /**********************************************************************/ - /*! - @brief Get a pointer to the internal buffer memory - @returns A pointer to the allocated buffer - */ - /**********************************************************************/ - uint16_t *getBuffer(void) const { return buffer; } - -protected: - uint16_t getRawPixel(int16_t x, int16_t y) const; - void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint16_t *buffer; ///< Raster data: no longer private, allow subclass access - bool buffer_owned; ///< If true, destructor will free buffer, else it will do - ///< nothing -}; - -#endif // _ADAFRUIT_GFX_H diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GrayOLED.cpp b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GrayOLED.cpp deleted file mode 100644 index e3cbc72..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GrayOLED.cpp +++ /dev/null @@ -1,422 +0,0 @@ -/*! - * @file Adafruit_GrayOLED.cpp - * - * This is documentation for Adafruit's generic library for grayscale - * OLED displays: http://www.adafruit.com/category/63_98 - * - * These displays use I2C or SPI to communicate. I2C requires 2 pins - * (SCL+SDA) and optionally a RESET pin. SPI requires 4 pins (MOSI, SCK, - * select, data/command) and optionally a reset pin. Hardware SPI or - * 'bitbang' software SPI are both supported. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - * - */ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include "Adafruit_GrayOLED.h" -#include - -// SOME DEFINES AND STATIC VARIABLES USED INTERNALLY ----------------------- - -#define grayoled_swap(a, b) \ - (((a) ^= (b)), ((b) ^= (a)), ((a) ^= (b))) ///< No-temp-var swap operation - -// CONSTRUCTORS, DESTRUCTOR ------------------------------------------------ - -/*! - @brief Constructor for I2C-interfaced OLED displays. - @param bpp Bits per pixel, 1 for monochrome, 4 for 16-gray - @param w - Display width in pixels - @param h - Display height in pixels - @param twi - Pointer to an existing TwoWire instance (e.g. &Wire, the - microcontroller's primary I2C bus). - @param rst_pin - Reset pin (using Arduino pin numbering), or -1 if not used - (some displays might be wired to share the microcontroller's - reset pin). - @param clkDuring - Speed (in Hz) for Wire transmissions in library calls. - Defaults to 400000 (400 KHz), a known 'safe' value for most - microcontrollers, and meets the OLED datasheet spec. - Some systems can operate I2C faster (800 KHz for ESP32, 1 MHz - for many other 32-bit MCUs), and some (perhaps not all) - Many OLED's can work with this -- so it's optionally be specified - here and is not a default behavior. (Ignored if using pre-1.5.7 - Arduino software, which operates I2C at a fixed 100 KHz.) - @param clkAfter - Speed (in Hz) for Wire transmissions following library - calls. Defaults to 100000 (100 KHz), the default Arduino Wire - speed. This is done rather than leaving it at the 'during' speed - because other devices on the I2C bus might not be compatible - with the faster rate. (Ignored if using pre-1.5.7 Arduino - software, which operates I2C at a fixed 100 KHz.) - @note Call the object's begin() function before use -- buffer - allocation is performed there! -*/ -Adafruit_GrayOLED::Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, - TwoWire *twi, int16_t rst_pin, - uint32_t clkDuring, uint32_t clkAfter) - : Adafruit_GFX(w, h), i2c_preclk(clkDuring), i2c_postclk(clkAfter), - buffer(NULL), dcPin(-1), csPin(-1), rstPin(rst_pin), _bpp(bpp) { - i2c_dev = NULL; - _theWire = twi; -} - -/*! - @brief Constructor for SPI GrayOLED displays, using software (bitbang) - SPI. - @param bpp Bits per pixel, 1 for monochrome, 4 for 16-gray - @param w - Display width in pixels - @param h - Display height in pixels - @param mosi_pin - MOSI (master out, slave in) pin (using Arduino pin numbering). - This transfers serial data from microcontroller to display. - @param sclk_pin - SCLK (serial clock) pin (using Arduino pin numbering). - This clocks each bit from MOSI. - @param dc_pin - Data/command pin (using Arduino pin numbering), selects whether - display is receiving commands (low) or data (high). - @param rst_pin - Reset pin (using Arduino pin numbering), or -1 if not used - (some displays might be wired to share the microcontroller's - reset pin). - @param cs_pin - Chip-select pin (using Arduino pin numbering) for sharing the - bus with other devices. Active low. - @note Call the object's begin() function before use -- buffer - allocation is performed there! -*/ -Adafruit_GrayOLED::Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, - int16_t mosi_pin, int16_t sclk_pin, - int16_t dc_pin, int16_t rst_pin, - int16_t cs_pin) - : Adafruit_GFX(w, h), dcPin(dc_pin), csPin(cs_pin), rstPin(rst_pin), - _bpp(bpp) { - - spi_dev = new Adafruit_SPIDevice(cs_pin, sclk_pin, -1, mosi_pin, 1000000); -} - -/*! - @brief Constructor for SPI GrayOLED displays, using native hardware SPI. - @param bpp Bits per pixel, 1 for monochrome, 4 for 16-gray - @param w - Display width in pixels - @param h - Display height in pixels - @param spi - Pointer to an existing SPIClass instance (e.g. &SPI, the - microcontroller's primary SPI bus). - @param dc_pin - Data/command pin (using Arduino pin numbering), selects whether - display is receiving commands (low) or data (high). - @param rst_pin - Reset pin (using Arduino pin numbering), or -1 if not used - (some displays might be wired to share the microcontroller's - reset pin). - @param cs_pin - Chip-select pin (using Arduino pin numbering) for sharing the - bus with other devices. Active low. - @param bitrate - SPI clock rate for transfers to this display. Default if - unspecified is 8000000UL (8 MHz). - @note Call the object's begin() function before use -- buffer - allocation is performed there! -*/ -Adafruit_GrayOLED::Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, - SPIClass *spi, int16_t dc_pin, - int16_t rst_pin, int16_t cs_pin, - uint32_t bitrate) - : Adafruit_GFX(w, h), dcPin(dc_pin), csPin(cs_pin), rstPin(rst_pin), - _bpp(bpp) { - - spi_dev = new Adafruit_SPIDevice(cs_pin, bitrate, SPI_BITORDER_MSBFIRST, - SPI_MODE0, spi); -} - -/*! - @brief Destructor for Adafruit_GrayOLED object. -*/ -Adafruit_GrayOLED::~Adafruit_GrayOLED(void) { - if (buffer) { - free(buffer); - buffer = NULL; - } - if (spi_dev) - delete spi_dev; - if (i2c_dev) - delete i2c_dev; -} - -// LOW-LEVEL UTILS --------------------------------------------------------- - -/*! - @brief Issue single command byte to OLED, using I2C or hard/soft SPI as - needed. - @param c The single byte command -*/ -void Adafruit_GrayOLED::oled_command(uint8_t c) { - if (i2c_dev) { // I2C - uint8_t buf[2] = {0x00, c}; // Co = 0, D/C = 0 - i2c_dev->write(buf, 2); - } else { // SPI (hw or soft) -- transaction started in calling function - digitalWrite(dcPin, LOW); - spi_dev->write(&c, 1); - } -} - -// Issue list of commands to GrayOLED -/*! - @brief Issue multiple bytes of commands OLED, using I2C or hard/soft SPI as - needed. - @param c Pointer to the command array - @param n The number of bytes in the command array - @returns True for success on ability to write the data in I2C. -*/ - -bool Adafruit_GrayOLED::oled_commandList(const uint8_t *c, uint8_t n) { - if (i2c_dev) { // I2C - uint8_t dc_byte = 0x00; // Co = 0, D/C = 0 - if (!i2c_dev->write((uint8_t *)c, n, true, &dc_byte, 1)) { - return false; - } - } else { // SPI -- transaction started in calling function - digitalWrite(dcPin, LOW); - if (!spi_dev->write((uint8_t *)c, n)) { - return false; - } - } - return true; -} - -// ALLOCATE & INIT DISPLAY ------------------------------------------------- - -/*! - @brief Allocate RAM for image buffer, initialize peripherals and pins. - Note that subclasses must call this before other begin() init - @param addr - I2C address of corresponding oled display. - SPI displays (hardware or software) do not use addresses, but - this argument is still required. Default if unspecified is 0x3C. - @param reset - If true, and if the reset pin passed to the constructor is - valid, a hard reset will be performed before initializing the - display. If using multiple oled displays on the same bus, and - if they all share the same reset pin, you should only pass true - on the first display being initialized, false on all others, - else the already-initialized displays would be reset. Default if - unspecified is true. - @return true on successful allocation/init, false otherwise. - Well-behaved code should check the return value before - proceeding. - @note MUST call this function before any drawing or updates! -*/ -bool Adafruit_GrayOLED::_init(uint8_t addr, bool reset) { - - // attempt to malloc the bitmap framebuffer - if ((!buffer) && - !(buffer = (uint8_t *)malloc(_bpp * WIDTH * ((HEIGHT + 7) / 8)))) { - return false; - } - - // Reset OLED if requested and reset pin specified in constructor - if (reset && (rstPin >= 0)) { - pinMode(rstPin, OUTPUT); - digitalWrite(rstPin, HIGH); - delay(10); // VDD goes high at start, pause - digitalWrite(rstPin, LOW); // Bring reset low - delay(10); // Wait 10 ms - digitalWrite(rstPin, HIGH); // Bring out of reset - delay(10); - } - - // Setup pin directions - if (_theWire) { // using I2C - i2c_dev = new Adafruit_I2CDevice(addr, _theWire); - // look for i2c address: - if (!i2c_dev || !i2c_dev->begin()) { - return false; - } - } else { // Using one of the SPI modes, either soft or hardware - if (!spi_dev || !spi_dev->begin()) { - return false; - } - pinMode(dcPin, OUTPUT); // Set data/command pin as output - } - - clearDisplay(); - - // set max dirty window - window_x1 = 0; - window_y1 = 0; - window_x2 = WIDTH - 1; - window_y2 = HEIGHT - 1; - - return true; // Success -} - -// DRAWING FUNCTIONS ------------------------------------------------------- - -/*! - @brief Set/clear/invert a single pixel. This is also invoked by the - Adafruit_GFX library in generating many higher-level graphics - primitives. - @param x - Column of display -- 0 at left to (screen width - 1) at right. - @param y - Row of display -- 0 at top to (screen height -1) at bottom. - @param color - Pixel color, one of: MONOOLED_BLACK, MONOOLED_WHITE or - MONOOLED_INVERT. - @note Changes buffer contents only, no immediate effect on display. - Follow up with a call to display(), or with other graphics - commands as needed by one's own application. -*/ -void Adafruit_GrayOLED::drawPixel(int16_t x, int16_t y, uint16_t color) { - if ((x >= 0) && (x < width()) && (y >= 0) && (y < height())) { - // Pixel is in-bounds. Rotate coordinates if needed. - switch (getRotation()) { - case 1: - grayoled_swap(x, y); - x = WIDTH - x - 1; - break; - case 2: - x = WIDTH - x - 1; - y = HEIGHT - y - 1; - break; - case 3: - grayoled_swap(x, y); - y = HEIGHT - y - 1; - break; - } - - // adjust dirty window - window_x1 = min(window_x1, x); - window_y1 = min(window_y1, y); - window_x2 = max(window_x2, x); - window_y2 = max(window_y2, y); - - if (_bpp == 1) { - switch (color) { - case MONOOLED_WHITE: - buffer[x + (y / 8) * WIDTH] |= (1 << (y & 7)); - break; - case MONOOLED_BLACK: - buffer[x + (y / 8) * WIDTH] &= ~(1 << (y & 7)); - break; - case MONOOLED_INVERSE: - buffer[x + (y / 8) * WIDTH] ^= (1 << (y & 7)); - break; - } - } - if (_bpp == 4) { - uint8_t *pixelptr = &buffer[x / 2 + (y * WIDTH / 2)]; - // Serial.printf("(%d, %d) -> offset %d\n", x, y, x/2 + (y * WIDTH / 2)); - if (x % 2 == 0) { // even, left nibble - uint8_t t = pixelptr[0] & 0x0F; - t |= (color & 0xF) << 4; - pixelptr[0] = t; - } else { // odd, right lower nibble - uint8_t t = pixelptr[0] & 0xF0; - t |= color & 0xF; - pixelptr[0] = t; - } - } - } -} - -/*! - @brief Clear contents of display buffer (set all pixels to off). - @note Changes buffer contents only, no immediate effect on display. - Follow up with a call to display(), or with other graphics - commands as needed by one's own application. -*/ -void Adafruit_GrayOLED::clearDisplay(void) { - memset(buffer, 0, _bpp * WIDTH * ((HEIGHT + 7) / 8)); - // set max dirty window - window_x1 = 0; - window_y1 = 0; - window_x2 = WIDTH - 1; - window_y2 = HEIGHT - 1; -} - -/*! - @brief Return color of a single pixel in display buffer. - @param x - Column of display -- 0 at left to (screen width - 1) at right. - @param y - Row of display -- 0 at top to (screen height -1) at bottom. - @return true if pixel is set (usually MONOOLED_WHITE, unless display invert - mode is enabled), false if clear (MONOOLED_BLACK). - @note Reads from buffer contents; may not reflect current contents of - screen if display() has not been called. -*/ -bool Adafruit_GrayOLED::getPixel(int16_t x, int16_t y) { - if ((x >= 0) && (x < width()) && (y >= 0) && (y < height())) { - // Pixel is in-bounds. Rotate coordinates if needed. - switch (getRotation()) { - case 1: - grayoled_swap(x, y); - x = WIDTH - x - 1; - break; - case 2: - x = WIDTH - x - 1; - y = HEIGHT - y - 1; - break; - case 3: - grayoled_swap(x, y); - y = HEIGHT - y - 1; - break; - } - return (buffer[x + (y / 8) * WIDTH] & (1 << (y & 7))); - } - return false; // Pixel out of bounds -} - -/*! - @brief Get base address of display buffer for direct reading or writing. - @return Pointer to an unsigned 8-bit array, column-major, columns padded - to full byte boundary if needed. -*/ -uint8_t *Adafruit_GrayOLED::getBuffer(void) { return buffer; } - -// OTHER HARDWARE SETTINGS ------------------------------------------------- - -/*! - @brief Enable or disable display invert mode (white-on-black vs - black-on-white). Handy for testing! - @param i - If true, switch to invert mode (black-on-white), else normal - mode (white-on-black). - @note This has an immediate effect on the display, no need to call the - display() function -- buffer contents are not changed, rather a - different pixel mode of the display hardware is used. When - enabled, drawing MONOOLED_BLACK (value 0) pixels will actually draw - white, MONOOLED_WHITE (value 1) will draw black. -*/ -void Adafruit_GrayOLED::invertDisplay(bool i) { - oled_command(i ? GRAYOLED_INVERTDISPLAY : GRAYOLED_NORMALDISPLAY); -} - -/*! - @brief Adjust the display contrast. - @param level The contrast level from 0 to 0x7F - @note This has an immediate effect on the display, no need to call the - display() function -- buffer contents are not changed. -*/ -void Adafruit_GrayOLED::setContrast(uint8_t level) { - uint8_t cmd[] = {GRAYOLED_SETCONTRAST, level}; - oled_commandList(cmd, 2); -} - -#endif /* ATTIN85 not supported */ diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GrayOLED.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GrayOLED.h deleted file mode 100644 index 4c836a4..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_GrayOLED.h +++ /dev/null @@ -1,101 +0,0 @@ -/*! - * @file Adafruit_GrayOLED.h - * - * This is part of for Adafruit's GFX library, supplying generic support - * for grayscale OLED displays: http://www.adafruit.com/category/63_98 - * - * These displays use I2C or SPI to communicate. I2C requires 2 pins - * (SCL+SDA) and optionally a RESET pin. SPI requires 4 pins (MOSI, SCK, - * select, data/command) and optionally a reset pin. Hardware SPI or - * 'bitbang' software SPI are both supported. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - * - * Written by Limor Fried/Ladyada for Adafruit Industries, with - * contributions from the open source community. - * - * BSD license, all text above, and the splash screen header file, - * must be included in any redistribution. - * - */ - -#ifndef _Adafruit_GRAYOLED_H_ -#define _Adafruit_GRAYOLED_H_ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include -#include -#include -#include -#include - -#define GRAYOLED_SETCONTRAST 0x81 ///< Generic contrast for almost all OLEDs -#define GRAYOLED_NORMALDISPLAY 0xA6 ///< Generic non-invert for almost all OLEDs -#define GRAYOLED_INVERTDISPLAY 0xA7 ///< Generic invert for almost all OLEDs - -#define MONOOLED_BLACK 0 ///< Default black 'color' for monochrome OLEDS -#define MONOOLED_WHITE 1 ///< Default white 'color' for monochrome OLEDS -#define MONOOLED_INVERSE 2 ///< Default inversion command for monochrome OLEDS - -/*! - @brief Class that stores state and functions for interacting with - generic grayscale OLED displays. -*/ -class Adafruit_GrayOLED : public Adafruit_GFX { -public: - Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, TwoWire *twi = &Wire, - int16_t rst_pin = -1, uint32_t preclk = 400000, - uint32_t postclk = 100000); - Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, int16_t mosi_pin, - int16_t sclk_pin, int16_t dc_pin, int16_t rst_pin, - int16_t cs_pin); - Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, SPIClass *spi, - int16_t dc_pin, int16_t rst_pin, int16_t cs_pin, - uint32_t bitrate = 8000000UL); - - ~Adafruit_GrayOLED(void); - - /** - @brief The function that sub-classes define that writes out the buffer to - the display over I2C or SPI - **/ - virtual void display(void) = 0; - void clearDisplay(void); - void invertDisplay(bool i); - void setContrast(uint8_t contrastlevel); - void drawPixel(int16_t x, int16_t y, uint16_t color); - bool getPixel(int16_t x, int16_t y); - uint8_t *getBuffer(void); - - void oled_command(uint8_t c); - bool oled_commandList(const uint8_t *c, uint8_t n); - -protected: - bool _init(uint8_t i2caddr = 0x3C, bool reset = true); - - Adafruit_SPIDevice *spi_dev = NULL; ///< The SPI interface BusIO device - Adafruit_I2CDevice *i2c_dev = NULL; ///< The I2C interface BusIO device - int32_t i2c_preclk = 400000, ///< Configurable 'high speed' I2C rate - i2c_postclk = 100000; ///< Configurable 'low speed' I2C rate - uint8_t *buffer = NULL; ///< Internal 1:1 framebuffer of display mem - - int16_t window_x1, ///< Dirty tracking window minimum x - window_y1, ///< Dirty tracking window minimum y - window_x2, ///< Dirty tracking window maximum x - window_y2; ///< Dirty tracking window maximum y - - int dcPin, ///< The Arduino pin connected to D/C (for SPI) - csPin, ///< The Arduino pin connected to CS (for SPI) - rstPin; ///< The Arduino pin connected to reset (-1 if unused) - - uint8_t _bpp = 1; ///< Bits per pixel color for this display -private: - TwoWire *_theWire = NULL; ///< The underlying hardware I2C -}; - -#endif // end __AVR_ATtiny85__ __AVR_ATtiny84__ -#endif // _Adafruit_GrayOLED_H_ diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT.cpp b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT.cpp deleted file mode 100644 index 870979b..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT.cpp +++ /dev/null @@ -1,2621 +0,0 @@ -/*! - * @file Adafruit_SPITFT.cpp - * - * @mainpage Adafruit SPI TFT Displays (and some others) - * - * @section intro_sec Introduction - * - * Part of Adafruit's GFX graphics library. Originally this class was - * written to handle a range of color TFT displays connected via SPI, - * but over time this library and some display-specific subclasses have - * mutated to include some color OLEDs as well as parallel-interfaced - * displays. The name's been kept for the sake of older code. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - - * @section dependencies Dependencies - * - * This library depends on - * Adafruit_GFX - * being present on your system. Please make sure you have installed the latest - * version before using this library. - * - * @section author Author - * - * Written by Limor "ladyada" Fried for Adafruit Industries, - * with contributions from the open source community. - * - * @section license License - * - * BSD license, all text here must be included in any redistribution. - */ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include "Adafruit_SPITFT.h" - -#if defined(__AVR__) -#if defined(__AVR_XMEGA__) // only tested with __AVR_ATmega4809__ -#define AVR_WRITESPI(x) \ - for (SPI0_DATA = (x); (!(SPI0_INTFLAGS & _BV(SPI_IF_bp)));) -#elif defined(__LGT8F__) -#define AVR_WRITESPI(x) \ - SPDR = (x); \ - asm volatile("nop"); \ - while ((SPFR & _BV(RDEMPT))) \ - ; \ - SPFR = _BV(RDEMPT) | _BV(WREMPT) -#else -#define AVR_WRITESPI(x) for (SPDR = (x); (!(SPSR & _BV(SPIF)));) -#endif -#endif - -#if defined(PORT_IOBUS) -// On SAMD21, redefine digitalPinToPort() to use the slightly-faster -// PORT_IOBUS rather than PORT (not needed on SAMD51). -#undef digitalPinToPort -#define digitalPinToPort(P) (&(PORT_IOBUS->Group[g_APinDescription[P].ulPort])) -#endif // end PORT_IOBUS - -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) -// #pragma message ("GFX DMA IS ENABLED. HIGHLY EXPERIMENTAL.") -#include "wiring_private.h" // pinPeripheral() function -#include -#include // memalign() function -#define tcNum 2 // Timer/Counter for parallel write strobe PWM -#define wrPeripheral PIO_CCL // Use CCL to invert write strobe - -// DMA transfer-in-progress indicator and callback -static volatile bool dma_busy = false; -static void dma_callback(Adafruit_ZeroDMA *dma) { dma_busy = false; } - -#if defined(__SAMD51__) -// Timer/counter info by index # -static const struct { - Tc *tc; // -> Timer/Counter base address - int gclk; // GCLK ID - int evu; // EVSYS user ID -} tcList[] = {{TC0, TC0_GCLK_ID, EVSYS_ID_USER_TC0_EVU}, - {TC1, TC1_GCLK_ID, EVSYS_ID_USER_TC1_EVU}, - {TC2, TC2_GCLK_ID, EVSYS_ID_USER_TC2_EVU}, - {TC3, TC3_GCLK_ID, EVSYS_ID_USER_TC3_EVU}, -#if defined(TC4) - {TC4, TC4_GCLK_ID, EVSYS_ID_USER_TC4_EVU}, -#endif -#if defined(TC5) - {TC5, TC5_GCLK_ID, EVSYS_ID_USER_TC5_EVU}, -#endif -#if defined(TC6) - {TC6, TC6_GCLK_ID, EVSYS_ID_USER_TC6_EVU}, -#endif -#if defined(TC7) - {TC7, TC7_GCLK_ID, EVSYS_ID_USER_TC7_EVU} -#endif -}; -#define NUM_TIMERS (sizeof tcList / sizeof tcList[0]) ///< # timer/counters -#endif // end __SAMD51__ - -#endif // end USE_SPI_DMA - -// Possible values for Adafruit_SPITFT.connection: -#define TFT_HARD_SPI 0 ///< Display interface = hardware SPI -#define TFT_SOFT_SPI 1 ///< Display interface = software SPI -#define TFT_PARALLEL 2 ///< Display interface = 8- or 16-bit parallel - -// CONSTRUCTORS ------------------------------------------------------------ - -/*! - @brief Adafruit_SPITFT constructor for software (bitbang) SPI. - @param w Display width in pixels at default rotation setting (0). - @param h Display height in pixels at default rotation setting (0). - @param cs Arduino pin # for chip-select (-1 if unused, tie CS low). - @param dc Arduino pin # for data/command select (required). - @param mosi Arduino pin # for bitbang SPI MOSI signal (required). - @param sck Arduino pin # for bitbang SPI SCK signal (required). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @param miso Arduino pin # for bitbang SPI MISO signal (optional, - -1 default, many displays don't support SPI read). - @note Output pins are not initialized; application typically will - need to call subclass' begin() function, which in turn calls - this library's initSPI() function to initialize pins. -*/ -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t mosi, int8_t sck, int8_t rst, - int8_t miso) - : Adafruit_GFX(w, h), connection(TFT_SOFT_SPI), _rst(rst), _cs(cs), - _dc(dc) { - swspi._sck = sck; - swspi._mosi = mosi; - swspi._miso = miso; -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(CORE_TEENSY) -#if !defined(KINETISK) - dcPinMask = digitalPinToBitMask(dc); - swspi.sckPinMask = digitalPinToBitMask(sck); - swspi.mosiPinMask = digitalPinToBitMask(mosi); -#endif - dcPortSet = portSetRegister(dc); - dcPortClr = portClearRegister(dc); - swspi.sckPortSet = portSetRegister(sck); - swspi.sckPortClr = portClearRegister(sck); - swspi.mosiPortSet = portSetRegister(mosi); - swspi.mosiPortClr = portClearRegister(mosi); - if (cs >= 0) { -#if !defined(KINETISK) - csPinMask = digitalPinToBitMask(cs); -#endif - csPortSet = portSetRegister(cs); - csPortClr = portClearRegister(cs); - } else { -#if !defined(KINETISK) - csPinMask = 0; -#endif - csPortSet = dcPortSet; - csPortClr = dcPortClr; - } - if (miso >= 0) { - swspi.misoPort = portInputRegister(miso); -#if !defined(KINETISK) - swspi.misoPinMask = digitalPinToBitMask(miso); -#endif - } else { - swspi.misoPort = portInputRegister(dc); - } -#else // !CORE_TEENSY - dcPinMask = digitalPinToBitMask(dc); - swspi.sckPinMask = digitalPinToBitMask(sck); - swspi.mosiPinMask = digitalPinToBitMask(mosi); - dcPortSet = &(PORT->Group[g_APinDescription[dc].ulPort].OUTSET.reg); - dcPortClr = &(PORT->Group[g_APinDescription[dc].ulPort].OUTCLR.reg); - swspi.sckPortSet = &(PORT->Group[g_APinDescription[sck].ulPort].OUTSET.reg); - swspi.sckPortClr = &(PORT->Group[g_APinDescription[sck].ulPort].OUTCLR.reg); - swspi.mosiPortSet = &(PORT->Group[g_APinDescription[mosi].ulPort].OUTSET.reg); - swspi.mosiPortClr = &(PORT->Group[g_APinDescription[mosi].ulPort].OUTCLR.reg); - if (cs >= 0) { - csPinMask = digitalPinToBitMask(cs); - csPortSet = &(PORT->Group[g_APinDescription[cs].ulPort].OUTSET.reg); - csPortClr = &(PORT->Group[g_APinDescription[cs].ulPort].OUTCLR.reg); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPortSet = dcPortSet; - csPortClr = dcPortClr; - csPinMask = 0; - } - if (miso >= 0) { - swspi.misoPinMask = digitalPinToBitMask(miso); - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(miso)); - } else { - swspi.misoPinMask = 0; - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(dc)); - } -#endif // end !CORE_TEENSY -#else // !HAS_PORT_SET_CLR - dcPort = (PORTreg_t)portOutputRegister(digitalPinToPort(dc)); - dcPinMaskSet = digitalPinToBitMask(dc); - swspi.sckPort = (PORTreg_t)portOutputRegister(digitalPinToPort(sck)); - swspi.sckPinMaskSet = digitalPinToBitMask(sck); - swspi.mosiPort = (PORTreg_t)portOutputRegister(digitalPinToPort(mosi)); - swspi.mosiPinMaskSet = digitalPinToBitMask(mosi); - if (cs >= 0) { - csPort = (PORTreg_t)portOutputRegister(digitalPinToPort(cs)); - csPinMaskSet = digitalPinToBitMask(cs); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPort = dcPort; - csPinMaskSet = 0; - } - if (miso >= 0) { - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(miso)); - swspi.misoPinMask = digitalPinToBitMask(miso); - } else { - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(dc)); - swspi.misoPinMask = 0; - } - csPinMaskClr = ~csPinMaskSet; - dcPinMaskClr = ~dcPinMaskSet; - swspi.sckPinMaskClr = ~swspi.sckPinMaskSet; - swspi.mosiPinMaskClr = ~swspi.mosiPinMaskSet; -#endif // !end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -} - -/*! - @brief Adafruit_SPITFT constructor for hardware SPI using the board's - default SPI peripheral. - @param w Display width in pixels at default rotation setting (0). - @param h Display height in pixels at default rotation setting (0). - @param cs Arduino pin # for chip-select (-1 if unused, tie CS low). - @param dc Arduino pin # for data/command select (required). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @note Output pins are not initialized; application typically will - need to call subclass' begin() function, which in turn calls - this library's initSPI() function to initialize pins. -*/ -#if defined(ESP8266) // See notes below -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t rst) - : Adafruit_GFX(w, h), connection(TFT_HARD_SPI), _rst(rst), _cs(cs), - _dc(dc) { - hwspi._spi = &SPI; -} -#else // !ESP8266 -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t rst) - : Adafruit_SPITFT(w, h, &SPI, cs, dc, rst) { - // This just invokes the hardware SPI constructor below, - // passing the default SPI device (&SPI). -} -#endif // end !ESP8266 - -#if !defined(ESP8266) -// ESP8266 compiler freaks out at this constructor -- it can't disambiguate -// beteween the SPIClass pointer (argument #3) and a regular integer. -// Solution here it to just not offer this variant on the ESP8266. You can -// use the default hardware SPI peripheral, or you can use software SPI, -// but if there's any library out there that creates a 'virtual' SPIClass -// peripheral and drives it with software bitbanging, that's not supported. -/*! - @brief Adafruit_SPITFT constructor for hardware SPI using a specific - SPI peripheral. - @param w Display width in pixels at default rotation (0). - @param h Display height in pixels at default rotation (0). - @param spiClass Pointer to SPIClass type (e.g. &SPI or &SPI1). - @param cs Arduino pin # for chip-select (-1 if unused, tie CS low). - @param dc Arduino pin # for data/command select (required). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @note Output pins are not initialized in constructor; application - typically will need to call subclass' begin() function, which - in turn calls this library's initSPI() function to initialize - pins. EXCEPT...if you have built your own SERCOM SPI peripheral - (calling the SPIClass constructor) rather than one of the - built-in SPI devices (e.g. &SPI, &SPI1 and so forth), you will - need to call the begin() function for your object as well as - pinPeripheral() for the MOSI, MISO and SCK pins to configure - GPIO manually. Do this BEFORE calling the display-specific - begin or init function. Unfortunate but unavoidable. -*/ -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, SPIClass *spiClass, - int8_t cs, int8_t dc, int8_t rst) - : Adafruit_GFX(w, h), connection(TFT_HARD_SPI), _rst(rst), _cs(cs), - _dc(dc) { - hwspi._spi = spiClass; -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(CORE_TEENSY) -#if !defined(KINETISK) - dcPinMask = digitalPinToBitMask(dc); -#endif - dcPortSet = portSetRegister(dc); - dcPortClr = portClearRegister(dc); - if (cs >= 0) { -#if !defined(KINETISK) - csPinMask = digitalPinToBitMask(cs); -#endif - csPortSet = portSetRegister(cs); - csPortClr = portClearRegister(cs); - } else { // see comments below -#if !defined(KINETISK) - csPinMask = 0; -#endif - csPortSet = dcPortSet; - csPortClr = dcPortClr; - } -#else // !CORE_TEENSY - dcPinMask = digitalPinToBitMask(dc); - dcPortSet = &(PORT->Group[g_APinDescription[dc].ulPort].OUTSET.reg); - dcPortClr = &(PORT->Group[g_APinDescription[dc].ulPort].OUTCLR.reg); - if (cs >= 0) { - csPinMask = digitalPinToBitMask(cs); - csPortSet = &(PORT->Group[g_APinDescription[cs].ulPort].OUTSET.reg); - csPortClr = &(PORT->Group[g_APinDescription[cs].ulPort].OUTCLR.reg); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPortSet = dcPortSet; - csPortClr = dcPortClr; - csPinMask = 0; - } -#endif // end !CORE_TEENSY -#else // !HAS_PORT_SET_CLR - dcPort = (PORTreg_t)portOutputRegister(digitalPinToPort(dc)); - dcPinMaskSet = digitalPinToBitMask(dc); - if (cs >= 0) { - csPort = (PORTreg_t)portOutputRegister(digitalPinToPort(cs)); - csPinMaskSet = digitalPinToBitMask(cs); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPort = dcPort; - csPinMaskSet = 0; - } - csPinMaskClr = ~csPinMaskSet; - dcPinMaskClr = ~dcPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -} -#endif // end !ESP8266 - -/*! - @brief Adafruit_SPITFT constructor for parallel display connection. - @param w Display width in pixels at default rotation (0). - @param h Display height in pixels at default rotation (0). - @param busWidth If tft16 (enumeration in header file), is a 16-bit - parallel connection, else 8-bit. - 16-bit isn't fully implemented or tested yet so - applications should pass "tft8bitbus" for now...needed to - stick a required enum argument in there to - disambiguate this constructor from the soft-SPI case. - Argument is ignored on 8-bit architectures (no 'wide' - support there since PORTs are 8 bits anyway). - @param d0 Arduino pin # for data bit 0 (1+ are extrapolated). - The 8 (or 16) data bits MUST be contiguous and byte- - aligned (or word-aligned for wide interface) within - the same PORT register (might not correspond to - Arduino pin sequence). - @param wr Arduino pin # for write strobe (required). - @param dc Arduino pin # for data/command select (required). - @param cs Arduino pin # for chip-select (optional, -1 if unused, - tie CS low). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @param rd Arduino pin # for read strobe (optional, -1 if unused). - @note Output pins are not initialized; application typically will need - to call subclass' begin() function, which in turn calls this - library's initSPI() function to initialize pins. - Yes, the name is a misnomer...this library originally handled - only SPI displays, parallel being a recent addition (but not - wanting to break existing code). -*/ -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, tftBusWidth busWidth, - int8_t d0, int8_t wr, int8_t dc, int8_t cs, - int8_t rst, int8_t rd) - : Adafruit_GFX(w, h), connection(TFT_PARALLEL), _rst(rst), _cs(cs), - _dc(dc) { - tft8._d0 = d0; - tft8._wr = wr; - tft8._rd = rd; - tft8.wide = (busWidth == tft16bitbus); -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(CORE_TEENSY) - tft8.wrPortSet = portSetRegister(wr); - tft8.wrPortClr = portClearRegister(wr); -#if !defined(KINETISK) - dcPinMask = digitalPinToBitMask(dc); -#endif - dcPortSet = portSetRegister(dc); - dcPortClr = portClearRegister(dc); - if (cs >= 0) { -#if !defined(KINETISK) - csPinMask = digitalPinToBitMask(cs); -#endif - csPortSet = portSetRegister(cs); - csPortClr = portClearRegister(cs); - } else { // see comments below -#if !defined(KINETISK) - csPinMask = 0; -#endif - csPortSet = dcPortSet; - csPortClr = dcPortClr; - } - if (rd >= 0) { // if read-strobe pin specified... -#if defined(KINETISK) - tft8.rdPinMask = 1; -#else // !KINETISK - tft8.rdPinMask = digitalPinToBitMask(rd); -#endif - tft8.rdPortSet = portSetRegister(rd); - tft8.rdPortClr = portClearRegister(rd); - } else { - tft8.rdPinMask = 0; - tft8.rdPortSet = dcPortSet; - tft8.rdPortClr = dcPortClr; - } - // These are all uint8_t* pointers -- elsewhere they're recast - // as necessary if a 'wide' 16-bit interface is in use. - tft8.writePort = portOutputRegister(d0); - tft8.readPort = portInputRegister(d0); - tft8.dirSet = portModeRegister(d0); - tft8.dirClr = portModeRegister(d0); -#else // !CORE_TEENSY - tft8.wrPinMask = digitalPinToBitMask(wr); - tft8.wrPortSet = &(PORT->Group[g_APinDescription[wr].ulPort].OUTSET.reg); - tft8.wrPortClr = &(PORT->Group[g_APinDescription[wr].ulPort].OUTCLR.reg); - dcPinMask = digitalPinToBitMask(dc); - dcPortSet = &(PORT->Group[g_APinDescription[dc].ulPort].OUTSET.reg); - dcPortClr = &(PORT->Group[g_APinDescription[dc].ulPort].OUTCLR.reg); - if (cs >= 0) { - csPinMask = digitalPinToBitMask(cs); - csPortSet = &(PORT->Group[g_APinDescription[cs].ulPort].OUTSET.reg); - csPortClr = &(PORT->Group[g_APinDescription[cs].ulPort].OUTCLR.reg); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPortSet = dcPortSet; - csPortClr = dcPortClr; - csPinMask = 0; - } - if (rd >= 0) { // if read-strobe pin specified... - tft8.rdPinMask = digitalPinToBitMask(rd); - tft8.rdPortSet = &(PORT->Group[g_APinDescription[rd].ulPort].OUTSET.reg); - tft8.rdPortClr = &(PORT->Group[g_APinDescription[rd].ulPort].OUTCLR.reg); - } else { - tft8.rdPinMask = 0; - tft8.rdPortSet = dcPortSet; - tft8.rdPortClr = dcPortClr; - } - // Get pointers to PORT write/read/dir bytes within 32-bit PORT - uint8_t dBit = g_APinDescription[d0].ulPin; // d0 bit # in PORT - PortGroup *p = (&(PORT->Group[g_APinDescription[d0].ulPort])); - uint8_t offset = dBit / 8; // d[7:0] byte # within PORT - if (tft8.wide) - offset &= ~1; // d[15:8] byte # within PORT - // These are all uint8_t* pointers -- elsewhere they're recast - // as necessary if a 'wide' 16-bit interface is in use. - tft8.writePort = (volatile uint8_t *)&(p->OUT.reg) + offset; - tft8.readPort = (volatile uint8_t *)&(p->IN.reg) + offset; - tft8.dirSet = (volatile uint8_t *)&(p->DIRSET.reg) + offset; - tft8.dirClr = (volatile uint8_t *)&(p->DIRCLR.reg) + offset; -#endif // end !CORE_TEENSY -#else // !HAS_PORT_SET_CLR - tft8.wrPort = (PORTreg_t)portOutputRegister(digitalPinToPort(wr)); - tft8.wrPinMaskSet = digitalPinToBitMask(wr); - dcPort = (PORTreg_t)portOutputRegister(digitalPinToPort(dc)); - dcPinMaskSet = digitalPinToBitMask(dc); - if (cs >= 0) { - csPort = (PORTreg_t)portOutputRegister(digitalPinToPort(cs)); - csPinMaskSet = digitalPinToBitMask(cs); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPort = dcPort; - csPinMaskSet = 0; - } - if (rd >= 0) { // if read-strobe pin specified... - tft8.rdPort = (PORTreg_t)portOutputRegister(digitalPinToPort(rd)); - tft8.rdPinMaskSet = digitalPinToBitMask(rd); - } else { - tft8.rdPort = dcPort; - tft8.rdPinMaskSet = 0; - } - csPinMaskClr = ~csPinMaskSet; - dcPinMaskClr = ~dcPinMaskSet; - tft8.wrPinMaskClr = ~tft8.wrPinMaskSet; - tft8.rdPinMaskClr = ~tft8.rdPinMaskSet; - tft8.writePort = (PORTreg_t)portOutputRegister(digitalPinToPort(d0)); - tft8.readPort = (PORTreg_t)portInputRegister(digitalPinToPort(d0)); - tft8.portDir = (PORTreg_t)portModeRegister(digitalPinToPort(d0)); -#endif // end !HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -} - -// end constructors ------- - -// CLASS MEMBER FUNCTIONS -------------------------------------------------- - -// begin() and setAddrWindow() MUST be declared by any subclass. - -/*! - @brief Configure microcontroller pins for TFT interfacing. Typically - called by a subclass' begin() function. - @param freq SPI frequency when using hardware SPI. If default (0) - is passed, will fall back on a device-specific value. - Value is ignored when using software SPI or parallel - connection. - @param spiMode SPI mode when using hardware SPI. MUST be one of the - values SPI_MODE0, SPI_MODE1, SPI_MODE2 or SPI_MODE3 - defined in SPI.h. Do NOT attempt to pass '0' for - SPI_MODE0 and so forth...the values are NOT the same! - Use ONLY the defines! (Pity it's not an enum.) - @note Another anachronistically-named function; this is called even - when the display connection is parallel (not SPI). Also, this - could probably be made private...quite a few class functions - were generously put in the public section. -*/ -void Adafruit_SPITFT::initSPI(uint32_t freq, uint8_t spiMode) { - - if (!freq) - freq = DEFAULT_SPI_FREQ; // If no freq specified, use default - - // Init basic control pins common to all connection types - if (_cs >= 0) { - pinMode(_cs, OUTPUT); - digitalWrite(_cs, HIGH); // Deselect - } - pinMode(_dc, OUTPUT); - digitalWrite(_dc, HIGH); // Data mode - - if (connection == TFT_HARD_SPI) { - -#if defined(SPI_HAS_TRANSACTION) - hwspi.settings = SPISettings(freq, MSBFIRST, spiMode); -#else - hwspi._freq = freq; // Save freq value for later -#endif - hwspi._mode = spiMode; // Save spiMode value for later - // Call hwspi._spi->begin() ONLY if this is among the 'established' - // SPI interfaces in variant.h. For DIY roll-your-own SERCOM SPIs, - // begin() and pinPeripheral() calls MUST be made in one's calling - // code, BEFORE the screen-specific begin/init function is called. - // Reason for this is that SPI::begin() makes its own calls to - // pinPeripheral() based on g_APinDescription[n].ulPinType, which - // on non-established SPI interface pins will always be PIO_DIGITAL - // or similar, while we need PIO_SERCOM or PIO_SERCOM_ALT...it's - // highly unique between devices and variants for each pin or - // SERCOM so we can't make those calls ourselves here. And the SPI - // device needs to be set up before calling this because it's - // immediately followed with initialization commands. Blargh. - if ( -#if !defined(SPI_INTERFACES_COUNT) - 1 -#else -#if SPI_INTERFACES_COUNT > 0 - (hwspi._spi == &SPI) -#endif -#if SPI_INTERFACES_COUNT > 1 - || (hwspi._spi == &SPI1) -#endif -#if SPI_INTERFACES_COUNT > 2 - || (hwspi._spi == &SPI2) -#endif -#if SPI_INTERFACES_COUNT > 3 - || (hwspi._spi == &SPI3) -#endif -#if SPI_INTERFACES_COUNT > 4 - || (hwspi._spi == &SPI4) -#endif -#if SPI_INTERFACES_COUNT > 5 - || (hwspi._spi == &SPI5) -#endif -#endif // end SPI_INTERFACES_COUNT - ) { - hwspi._spi->begin(); - } - } else if (connection == TFT_SOFT_SPI) { - - pinMode(swspi._mosi, OUTPUT); - digitalWrite(swspi._mosi, LOW); - pinMode(swspi._sck, OUTPUT); - digitalWrite(swspi._sck, LOW); - if (swspi._miso >= 0) { - pinMode(swspi._miso, INPUT); - } - - } else { // TFT_PARALLEL - // Initialize data pins. We were only passed d0, so scan - // the pin description list looking for the other pins. - // They'll be on the same PORT, and within the next 7 (or 15) bits - // (because we need to write to a contiguous PORT byte or word). -#if defined(__AVR__) - // PORT registers are 8 bits wide, so just need a register match... - for (uint8_t i = 0; i < NUM_DIGITAL_PINS; i++) { - if ((PORTreg_t)portOutputRegister(digitalPinToPort(i)) == - tft8.writePort) { - pinMode(i, OUTPUT); - digitalWrite(i, LOW); - } - } -#elif defined(USE_FAST_PINIO) -#if defined(CORE_TEENSY) - if (!tft8.wide) { - *tft8.dirSet = 0xFF; // Set port to output - *tft8.writePort = 0x00; // Write all 0s - } else { - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; - *(volatile uint16_t *)tft8.writePort = 0x0000; - } -#else // !CORE_TEENSY - uint8_t portNum = g_APinDescription[tft8._d0].ulPort, // d0 PORT # - dBit = g_APinDescription[tft8._d0].ulPin, // d0 bit in PORT - lastBit = dBit + (tft8.wide ? 15 : 7); - for (uint8_t i = 0; i < PINS_COUNT; i++) { - if ((g_APinDescription[i].ulPort == portNum) && - (g_APinDescription[i].ulPin >= dBit) && - (g_APinDescription[i].ulPin <= (uint32_t)lastBit)) { - pinMode(i, OUTPUT); - digitalWrite(i, LOW); - } - } -#endif // end !CORE_TEENSY -#endif - pinMode(tft8._wr, OUTPUT); - digitalWrite(tft8._wr, HIGH); - if (tft8._rd >= 0) { - pinMode(tft8._rd, OUTPUT); - digitalWrite(tft8._rd, HIGH); - } - } - - if (_rst >= 0) { - // Toggle _rst low to reset - pinMode(_rst, OUTPUT); - digitalWrite(_rst, HIGH); - delay(100); - digitalWrite(_rst, LOW); - delay(100); - digitalWrite(_rst, HIGH); - delay(200); - } - -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - if (((connection == TFT_HARD_SPI) || (connection == TFT_PARALLEL)) && - (dma.allocate() == DMA_STATUS_OK)) { // Allocate channel - // The DMA library needs to alloc at least one valid descriptor, - // so we do that here. It's not used in the usual sense though, - // just before a transfer we copy descriptor[0] to this address. - if (dptr = dma.addDescriptor(NULL, NULL, 42, DMA_BEAT_SIZE_BYTE, false, - false)) { - // Alloc 2 scanlines worth of pixels on display's major axis, - // whichever that is, rounding each up to 2-pixel boundary. - int major = (WIDTH > HEIGHT) ? WIDTH : HEIGHT; - major += (major & 1); // -> next 2-pixel bound, if needed. - maxFillLen = major * 2; // 2 scanlines - // Note to future self: if you decide to make the pixel buffer - // much larger, remember that DMA transfer descriptors can't - // exceed 65,535 bytes (not 65,536), meaning 32,767 pixels max. - // Not that we have that kind of RAM to throw around right now. - if ((pixelBuf[0] = (uint16_t *)malloc(maxFillLen * sizeof(uint16_t)))) { - // Alloc OK. Get pointer to start of second scanline. - pixelBuf[1] = &pixelBuf[0][major]; - // Determine number of DMA descriptors needed to cover - // entire screen when entire 2-line pixelBuf is used - // (round up for fractional last descriptor). - int numDescriptors = (WIDTH * HEIGHT + (maxFillLen - 1)) / maxFillLen; - // DMA descriptors MUST be 128-bit (16 byte) aligned. - // memalign() is considered obsolete but it's replacements - // (aligned_alloc() or posix_memalign()) are not currently - // available in the version of ARM GCC in use, but this - // is, so here we are. - if ((descriptor = (DmacDescriptor *)memalign( - 16, numDescriptors * sizeof(DmacDescriptor)))) { - int dmac_id; - volatile uint32_t *data_reg; - - if (connection == TFT_HARD_SPI) { - // THIS IS AN AFFRONT TO NATURE, but I don't know - // any "clean" way to get the sercom number from the - // the SPIClass pointer (e.g. &SPI or &SPI1), which - // is all we have to work with. SPIClass does contain - // a SERCOM pointer but it is a PRIVATE member! - // Doing an UNSPEAKABLY HORRIBLE THING here, directly - // accessing the first 32-bit value in the SPIClass - // structure, knowing that's (currently) where the - // SERCOM pointer lives, but this ENTIRELY DEPENDS on - // that structure not changing nor the compiler - // rearranging things. Oh the humanity! - - if (*(SERCOM **)hwspi._spi == &sercom0) { - dmac_id = SERCOM0_DMAC_ID_TX; - data_reg = &SERCOM0->SPI.DATA.reg; -#if defined SERCOM1 - } else if (*(SERCOM **)hwspi._spi == &sercom1) { - dmac_id = SERCOM1_DMAC_ID_TX; - data_reg = &SERCOM1->SPI.DATA.reg; -#endif -#if defined SERCOM2 - } else if (*(SERCOM **)hwspi._spi == &sercom2) { - dmac_id = SERCOM2_DMAC_ID_TX; - data_reg = &SERCOM2->SPI.DATA.reg; -#endif -#if defined SERCOM3 - } else if (*(SERCOM **)hwspi._spi == &sercom3) { - dmac_id = SERCOM3_DMAC_ID_TX; - data_reg = &SERCOM3->SPI.DATA.reg; -#endif -#if defined SERCOM4 - } else if (*(SERCOM **)hwspi._spi == &sercom4) { - dmac_id = SERCOM4_DMAC_ID_TX; - data_reg = &SERCOM4->SPI.DATA.reg; -#endif -#if defined SERCOM5 - } else if (*(SERCOM **)hwspi._spi == &sercom5) { - dmac_id = SERCOM5_DMAC_ID_TX; - data_reg = &SERCOM5->SPI.DATA.reg; -#endif -#if defined SERCOM6 - } else if (*(SERCOM **)hwspi._spi == &sercom6) { - dmac_id = SERCOM6_DMAC_ID_TX; - data_reg = &SERCOM6->SPI.DATA.reg; -#endif -#if defined SERCOM7 - } else if (*(SERCOM **)hwspi._spi == &sercom7) { - dmac_id = SERCOM7_DMAC_ID_TX; - data_reg = &SERCOM7->SPI.DATA.reg; -#endif - } - dma.setPriority(DMA_PRIORITY_3); - dma.setTrigger(dmac_id); - dma.setAction(DMA_TRIGGER_ACTON_BEAT); - - // Initialize descriptor list. - for (int d = 0; d < numDescriptors; d++) { - // No need to set SRCADDR, DESCADDR or BTCNT -- - // those are done in the pixel-writing functions. - descriptor[d].BTCTRL.bit.VALID = true; - descriptor[d].BTCTRL.bit.EVOSEL = DMA_EVENT_OUTPUT_DISABLE; - descriptor[d].BTCTRL.bit.BLOCKACT = DMA_BLOCK_ACTION_NOACT; - descriptor[d].BTCTRL.bit.BEATSIZE = DMA_BEAT_SIZE_BYTE; - descriptor[d].BTCTRL.bit.DSTINC = 0; - descriptor[d].BTCTRL.bit.STEPSEL = DMA_STEPSEL_SRC; - descriptor[d].BTCTRL.bit.STEPSIZE = - DMA_ADDRESS_INCREMENT_STEP_SIZE_1; - descriptor[d].DSTADDR.reg = (uint32_t)data_reg; - } - - } else { // Parallel connection - -#if defined(__SAMD51__) - int dmaChannel = dma.getChannel(); - // Enable event output, use EVOSEL output - DMAC->Channel[dmaChannel].CHEVCTRL.bit.EVOE = 1; - DMAC->Channel[dmaChannel].CHEVCTRL.bit.EVOMODE = 0; - - // CONFIGURE TIMER/COUNTER (for write strobe) - - Tc *timer = tcList[tcNum].tc; // -> Timer struct - int id = tcList[tcNum].gclk; // Timer GCLK ID - GCLK_PCHCTRL_Type pchctrl; - - // Set up timer clock source from GCLK - GCLK->PCHCTRL[id].bit.CHEN = 0; // Stop timer - while (GCLK->PCHCTRL[id].bit.CHEN) - ; // Wait for it - pchctrl.bit.GEN = GCLK_PCHCTRL_GEN_GCLK0_Val; - pchctrl.bit.CHEN = 1; // Enable - GCLK->PCHCTRL[id].reg = pchctrl.reg; - while (!GCLK->PCHCTRL[id].bit.CHEN) - ; // Wait for it - - // Disable timer/counter before configuring it - timer->COUNT8.CTRLA.bit.ENABLE = 0; - while (timer->COUNT8.SYNCBUSY.bit.STATUS) - ; - - timer->COUNT8.WAVE.bit.WAVEGEN = 2; // NPWM - timer->COUNT8.CTRLA.bit.MODE = 1; // 8-bit - timer->COUNT8.CTRLA.bit.PRESCALER = 0; // 1:1 - while (timer->COUNT8.SYNCBUSY.bit.STATUS) - ; - - timer->COUNT8.CTRLBCLR.bit.DIR = 1; // Count UP - while (timer->COUNT8.SYNCBUSY.bit.CTRLB) - ; - timer->COUNT8.CTRLBSET.bit.ONESHOT = 1; // One-shot - while (timer->COUNT8.SYNCBUSY.bit.CTRLB) - ; - timer->COUNT8.PER.reg = 6; // PWM top - while (timer->COUNT8.SYNCBUSY.bit.PER) - ; - timer->COUNT8.CC[0].reg = 2; // Compare - while (timer->COUNT8.SYNCBUSY.bit.CC0) - ; - // Enable async input events, - // event action = restart. - timer->COUNT8.EVCTRL.bit.TCEI = 1; - timer->COUNT8.EVCTRL.bit.EVACT = 1; - - // Enable timer - timer->COUNT8.CTRLA.reg |= TC_CTRLA_ENABLE; - while (timer->COUNT8.SYNCBUSY.bit.STATUS) - ; - -#if (wrPeripheral == PIO_CCL) - // CONFIGURE CCL (inverts timer/counter output) - - MCLK->APBCMASK.bit.CCL_ = 1; // Enable CCL clock - CCL->CTRL.bit.ENABLE = 0; // Disable to config - CCL->CTRL.bit.SWRST = 1; // Reset CCL registers - CCL->LUTCTRL[tcNum].bit.ENABLE = 0; // Disable LUT - CCL->LUTCTRL[tcNum].bit.FILTSEL = 0; // No filter - CCL->LUTCTRL[tcNum].bit.INSEL0 = 6; // TC input - CCL->LUTCTRL[tcNum].bit.INSEL1 = 0; // MASK - CCL->LUTCTRL[tcNum].bit.INSEL2 = 0; // MASK - CCL->LUTCTRL[tcNum].bit.TRUTH = 1; // Invert in 0 - CCL->LUTCTRL[tcNum].bit.ENABLE = 1; // Enable LUT - CCL->CTRL.bit.ENABLE = 1; // Enable CCL -#endif - - // CONFIGURE EVENT SYSTEM - - // Set up event system clock source from GCLK... - // Disable EVSYS, wait for disable - GCLK->PCHCTRL[EVSYS_GCLK_ID_0].bit.CHEN = 0; - while (GCLK->PCHCTRL[EVSYS_GCLK_ID_0].bit.CHEN) - ; - pchctrl.bit.GEN = GCLK_PCHCTRL_GEN_GCLK0_Val; - pchctrl.bit.CHEN = 1; // Re-enable - GCLK->PCHCTRL[EVSYS_GCLK_ID_0].reg = pchctrl.reg; - // Wait for it, then enable EVSYS clock - while (!GCLK->PCHCTRL[EVSYS_GCLK_ID_0].bit.CHEN) - ; - MCLK->APBBMASK.bit.EVSYS_ = 1; - - // Connect Timer EVU to ch 0 - EVSYS->USER[tcList[tcNum].evu].reg = 1; - // Datasheet recommends single write operation; - // reg instead of bit. Also datasheet: PATH bits - // must be zero when using async! - EVSYS_CHANNEL_Type ev; - ev.reg = 0; - ev.bit.PATH = 2; // Asynchronous - ev.bit.EVGEN = 0x22 + dmaChannel; // DMA channel 0+ - EVSYS->Channel[0].CHANNEL.reg = ev.reg; - - // Initialize descriptor list. - for (int d = 0; d < numDescriptors; d++) { - // No need to set SRCADDR, DESCADDR or BTCNT -- - // those are done in the pixel-writing functions. - descriptor[d].BTCTRL.bit.VALID = true; - // Event strobe on beat xfer: - descriptor[d].BTCTRL.bit.EVOSEL = 0x3; - descriptor[d].BTCTRL.bit.BLOCKACT = DMA_BLOCK_ACTION_NOACT; - descriptor[d].BTCTRL.bit.BEATSIZE = - tft8.wide ? DMA_BEAT_SIZE_HWORD : DMA_BEAT_SIZE_BYTE; - descriptor[d].BTCTRL.bit.SRCINC = 1; - descriptor[d].BTCTRL.bit.DSTINC = 0; - descriptor[d].BTCTRL.bit.STEPSEL = DMA_STEPSEL_SRC; - descriptor[d].BTCTRL.bit.STEPSIZE = - DMA_ADDRESS_INCREMENT_STEP_SIZE_1; - descriptor[d].DSTADDR.reg = (uint32_t)tft8.writePort; - } -#endif // __SAMD51 - } // end parallel-specific DMA setup - - lastFillColor = 0x0000; - lastFillLen = 0; - dma.setCallback(dma_callback); - return; // Success! - // else clean up any partial allocation... - } // end descriptor memalign() - free(pixelBuf[0]); - pixelBuf[0] = pixelBuf[1] = NULL; - } // end pixelBuf malloc() - // Don't currently have a descriptor delete function in - // ZeroDMA lib, but if we did, it would be called here. - } // end addDescriptor() - dma.free(); // Deallocate DMA channel - } -#endif // end USE_SPI_DMA -} - -/*! - @brief Allow changing the SPI clock speed after initialization - @param freq Desired frequency of SPI clock, may not be the - end frequency you get based on what the chip can do! -*/ -void Adafruit_SPITFT::setSPISpeed(uint32_t freq) { -#if defined(SPI_HAS_TRANSACTION) - hwspi.settings = SPISettings(freq, MSBFIRST, hwspi._mode); -#else - hwspi._freq = freq; // Save freq value for later -#endif -} - -/*! - @brief Call before issuing command(s) or data to display. Performs - chip-select (if required) and starts an SPI transaction (if - using hardware SPI and transactions are supported). Required - for all display types; not an SPI-specific function. -*/ -void Adafruit_SPITFT::startWrite(void) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); -} - -/*! - @brief Call after issuing command(s) or data to display. Performs - chip-deselect (if required) and ends an SPI transaction (if - using hardware SPI and transactions are supported). Required - for all display types; not an SPI-specific function. -*/ -void Adafruit_SPITFT::endWrite(void) { - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -// ------------------------------------------------------------------------- -// Lower-level graphics operations. These functions require a chip-select -// and/or SPI transaction around them (via startWrite(), endWrite() above). -// Higher-level graphics primitives might start a single transaction and -// then make multiple calls to these functions (e.g. circle or text -// rendering might make repeated lines or rects) before ending the -// transaction. It's more efficient than starting a transaction every time. - -/*! - @brief Draw a single pixel to the display at requested coordinates. - Not self-contained; should follow a startWrite() call. - @param x Horizontal position (0 = left). - @param y Vertical position (0 = top). - @param color 16-bit pixel color in '565' RGB format. -*/ -void Adafruit_SPITFT::writePixel(int16_t x, int16_t y, uint16_t color) { - if ((x >= 0) && (x < _width) && (y >= 0) && (y < _height)) { - setAddrWindow(x, y, 1, 1); - SPI_WRITE16(color); - } -} - -/*! - @brief Swap bytes in an array of pixels; converts little-to-big or - big-to-little endian. Used by writePixels() below in some - situations, but may also be helpful for user code occasionally. - @param src Source address of 16-bit pixels buffer. - @param len Number of pixels to byte-swap. - @param dest Optional destination address if different than src -- - otherwise, if NULL (default) or same address is passed, - pixel buffer is overwritten in-place. -*/ -void Adafruit_SPITFT::swapBytes(uint16_t *src, uint32_t len, uint16_t *dest) { - if (!dest) - dest = src; // NULL -> overwrite src buffer - for (uint32_t i = 0; i < len; i++) { - dest[i] = __builtin_bswap16(src[i]); - } -} - -/*! - @brief Issue a series of pixels from memory to the display. Not self- - contained; should follow startWrite() and setAddrWindow() calls. - @param colors Pointer to array of 16-bit pixel values in '565' RGB - format. - @param len Number of elements in 'colors' array. - @param block If true (default case if unspecified), function blocks - until DMA transfer is complete. This is simply IGNORED - if DMA is not enabled. If false, the function returns - immediately after the last DMA transfer is started, - and one should use the dmaWait() function before - doing ANY other display-related activities (or even - any SPI-related activities, if using an SPI display - that shares the bus with other devices). - @param bigEndian If true, bitmap in memory is in big-endian order (most - significant byte first). By default this is false, as - most microcontrollers seem to be little-endian and - 16-bit pixel values must be byte-swapped before - issuing to the display (which tend toward big-endian - when using SPI or 8-bit parallel). If an application - can optimize around this -- for example, a bitmap in a - uint16_t array having the byte values already ordered - big-endian, this can save time here, ESPECIALLY if - using this function's non-blocking DMA mode. -*/ -void Adafruit_SPITFT::writePixels(uint16_t *colors, uint32_t len, bool block, - bool bigEndian) { - - if (!len) - return; // Avoid 0-byte transfers - - // avoid paramater-not-used complaints - (void)block; - (void)bigEndian; - -#if defined(ESP32) - if (connection == TFT_HARD_SPI) { - if (!bigEndian) { - hwspi._spi->writePixels(colors, len * 2); // Inbuilt endian-swap - } else { - hwspi._spi->writeBytes((uint8_t *)colors, len * 2); // Issue bytes direct - } - return; - } -#elif defined(ARDUINO_NRF52_ADAFRUIT) && \ - defined(NRF52840_XXAA) // Adafruit nRF52 use SPIM3 DMA at 32Mhz - if (!bigEndian) { - swapBytes(colors, len); // convert little-to-big endian for display - } - hwspi._spi->transfer(colors, NULL, 2 * len); // NULL RX to avoid overwrite - if (!bigEndian) { - swapBytes(colors, len); // big-to-little endian to restore pixel buffer - } - - return; -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - - if (!bigEndian) { - // switch to 16-bit writes - hw_write_masked(&spi_get_hw(pi_spi)->cr0, 15 << SPI_SSPCR0_DSS_LSB, - SPI_SSPCR0_DSS_BITS); - spi_write16_blocking(pi_spi, colors, len); - // switch back to 8-bit - hw_write_masked(&spi_get_hw(pi_spi)->cr0, 7 << SPI_SSPCR0_DSS_LSB, - SPI_SSPCR0_DSS_BITS); - } else { - spi_write_blocking(pi_spi, (uint8_t *)colors, len * 2); - } - return; -#elif defined(ARDUINO_ARCH_RTTHREAD) - if (!bigEndian) { - swapBytes(colors, len); // convert little-to-big endian for display - } - hwspi._spi->transfer(colors, 2 * len); - if (!bigEndian) { - swapBytes(colors, len); // big-to-little endian to restore pixel buffer - } - return; -#elif defined(USE_SPI_DMA) && \ - (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - if ((connection == TFT_HARD_SPI) || (connection == TFT_PARALLEL)) { - int maxSpan = maxFillLen / 2; // One scanline max - uint8_t pixelBufIdx = 0; // Active pixel buffer number -#if defined(__SAMD51__) - if (connection == TFT_PARALLEL) { - // Switch WR pin to PWM or CCL - pinPeripheral(tft8._wr, wrPeripheral); - } -#endif // end __SAMD51__ - if (!bigEndian) { // Normal little-endian situation... - while (len) { - int count = (len < maxSpan) ? len : maxSpan; - - // Because TFT and SAMD endianisms are different, must swap - // bytes from the 'colors' array passed into a DMA working - // buffer. This can take place while the prior DMA transfer - // is in progress, hence the need for two pixelBufs. - swapBytes(colors, count, pixelBuf[pixelBufIdx]); - colors += count; - - // The transfers themselves are relatively small, so we don't - // need a long descriptor list. We just alternate between the - // first two, sharing pixelBufIdx for that purpose. - descriptor[pixelBufIdx].SRCADDR.reg = - (uint32_t)pixelBuf[pixelBufIdx] + count * 2; - descriptor[pixelBufIdx].BTCTRL.bit.SRCINC = 1; - descriptor[pixelBufIdx].BTCNT.reg = count * 2; - descriptor[pixelBufIdx].DESCADDR.reg = 0; - - while (dma_busy) - ; // Wait for prior line to finish - - // Move new descriptor into place... - memcpy(dptr, &descriptor[pixelBufIdx], sizeof(DmacDescriptor)); - dma_busy = true; - dma.startJob(); // Trigger SPI DMA transfer - if (connection == TFT_PARALLEL) - dma.trigger(); - pixelBufIdx = 1 - pixelBufIdx; // Swap DMA pixel buffers - - len -= count; - } - } else { // bigEndian == true - // With big-endian pixel data, this can be handled as a single - // DMA transfer using chained descriptors. Even full screen, this - // needs only a relatively short descriptor list, each - // transferring a max of 32,767 (not 32,768) pixels. The list - // was allocated large enough to accommodate a full screen's - // worth of data, so this won't run past the end of the list. - int d, numDescriptors = (len + 32766) / 32767; - for (d = 0; d < numDescriptors; d++) { - int count = (len < 32767) ? len : 32767; - descriptor[d].SRCADDR.reg = (uint32_t)colors + count * 2; - descriptor[d].BTCTRL.bit.SRCINC = 1; - descriptor[d].BTCNT.reg = count * 2; - descriptor[d].DESCADDR.reg = (uint32_t)&descriptor[d + 1]; - len -= count; - colors += count; - } - descriptor[d - 1].DESCADDR.reg = 0; - - while (dma_busy) - ; // Wait for prior transfer (if any) to finish - - // Move first descriptor into place and start transfer... - memcpy(dptr, &descriptor[0], sizeof(DmacDescriptor)); - dma_busy = true; - dma.startJob(); // Trigger SPI DMA transfer - if (connection == TFT_PARALLEL) - dma.trigger(); - } // end bigEndian - - lastFillColor = 0x0000; // pixelBuf has been sullied - lastFillLen = 0; - if (block) { - while (dma_busy) - ; // Wait for last line to complete -#if defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO) - if (connection == TFT_HARD_SPI) { - // See SAMD51/21 note in writeColor() - hwspi._spi->setDataMode(hwspi._mode); - } else { - pinPeripheral(tft8._wr, PIO_OUTPUT); // Switch WR back to GPIO - } -#endif // end __SAMD51__ || ARDUINO_SAMD_ZERO - } - return; - } -#endif // end USE_SPI_DMA - - // All other cases (bitbang SPI or non-DMA hard SPI or parallel), - // use a loop with the normal 16-bit data write function: - - if (!bigEndian) { - while (len--) { - SPI_WRITE16(*colors++); - } - } else { - // Well this is awkward. SPI_WRITE16() was designed for little-endian - // hosts and big-endian displays as that's nearly always the typical - // case. If the bigEndian flag was set, data is already in display's - // order...so each pixel needs byte-swapping before being issued. - // Rather than having a separate big-endian SPI_WRITE16 (adding more - // bloat), it's preferred if calling function is smart and only uses - // bigEndian where DMA is supported. But we gotta handle this... - while (len--) { - SPI_WRITE16(__builtin_bswap16(*colors++)); - } - } -} - -/*! - @brief Wait for the last DMA transfer in a prior non-blocking - writePixels() call to complete. This does nothing if DMA - is not enabled, and is not needed if blocking writePixels() - was used (as is the default case). -*/ -void Adafruit_SPITFT::dmaWait(void) { -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - while (dma_busy) - ; -#if defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO) - if (connection == TFT_HARD_SPI) { - // See SAMD51/21 note in writeColor() - hwspi._spi->setDataMode(hwspi._mode); - } else { - pinPeripheral(tft8._wr, PIO_OUTPUT); // Switch WR back to GPIO - } -#endif // end __SAMD51__ || ARDUINO_SAMD_ZERO -#endif -} - -/*! - @brief Check if DMA transfer is active. Always returts false if DMA - is not enabled. - @return true if DMA is enabled and transmitting data, false otherwise. -*/ -bool Adafruit_SPITFT::dmaBusy(void) const { -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - return dma_busy; -#else - return false; -#endif -} - -/*! - @brief Issue a series of pixels, all the same color. Not self- - contained; should follow startWrite() and setAddrWindow() calls. - @param color 16-bit pixel color in '565' RGB format. - @param len Number of pixels to draw. -*/ -void Adafruit_SPITFT::writeColor(uint16_t color, uint32_t len) { - - if (!len) - return; // Avoid 0-byte transfers - - uint8_t hi = color >> 8, lo = color; - -#if defined(ESP32) // ESP32 has a special SPI pixel-writing function... - if (connection == TFT_HARD_SPI) { -#define SPI_MAX_PIXELS_AT_ONCE 32 -#define TMPBUF_LONGWORDS (SPI_MAX_PIXELS_AT_ONCE + 1) / 2 -#define TMPBUF_PIXELS (TMPBUF_LONGWORDS * 2) - static uint32_t temp[TMPBUF_LONGWORDS]; - uint32_t c32 = color * 0x00010001; - uint16_t bufLen = (len < TMPBUF_PIXELS) ? len : TMPBUF_PIXELS, xferLen, - fillLen; - // Fill temp buffer 32 bits at a time - fillLen = (bufLen + 1) / 2; // Round up to next 32-bit boundary - for (uint32_t t = 0; t < fillLen; t++) { - temp[t] = c32; - } - // Issue pixels in blocks from temp buffer - while (len) { // While pixels remain - xferLen = (bufLen < len) ? bufLen : len; // How many this pass? - writePixels((uint16_t *)temp, xferLen); - len -= xferLen; - } - return; - } -#elif defined(ARDUINO_NRF52_ADAFRUIT) && \ - defined(NRF52840_XXAA) // Adafruit nRF52840 use SPIM3 DMA at 32Mhz - // at most 2 scan lines - uint32_t const pixbufcount = min(len, ((uint32_t)2 * width())); - uint16_t *pixbuf = (uint16_t *)rtos_malloc(2 * pixbufcount); - - // use SPI3 DMA if we could allocate buffer, else fall back to writing each - // pixel loop below - if (pixbuf) { - uint16_t const swap_color = __builtin_bswap16(color); - - // fill buffer with color - for (uint32_t i = 0; i < pixbufcount; i++) { - pixbuf[i] = swap_color; - } - - while (len) { - uint32_t const count = min(len, pixbufcount); - writePixels(pixbuf, count, true, true); - len -= count; - } - - rtos_free(pixbuf); - return; - } -#elif defined(ARDUINO_ARCH_RTTHREAD) - uint16_t pixbufcount; - uint16_t *pixbuf; - int16_t lines = height() / 4; -#define QUICKPATH_MAX_LEN 16 - uint16_t quickpath_buffer[QUICKPATH_MAX_LEN]; - - do { - pixbufcount = min(len, (lines * width())); - if (pixbufcount > QUICKPATH_MAX_LEN) { - pixbuf = (uint16_t *)rt_malloc(2 * pixbufcount); - } else { - pixbuf = quickpath_buffer; - } - lines -= 2; - } while (!pixbuf && lines > 0); - - if (pixbuf) { - uint16_t const swap_color = __builtin_bswap16(color); - - while (len) { - uint16_t count = min(len, pixbufcount); - // fill buffer with color - for (uint16_t i = 0; i < count; i++) { - pixbuf[i] = swap_color; - } - // Don't need to swap color inside the function - // It has been done outside this function - writePixels(pixbuf, count, true, true); - len -= count; - } - if (pixbufcount > QUICKPATH_MAX_LEN) { - rt_free(pixbuf); - } -#undef QUICKPATH_MAX_LEN - return; - } -#else // !ESP32 -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - if (((connection == TFT_HARD_SPI) || (connection == TFT_PARALLEL)) && - (len >= 16)) { // Don't bother with DMA on short pixel runs - int i, d, numDescriptors; - if (hi == lo) { // If high & low bytes are same... - onePixelBuf = color; - // Can do this with a relatively short descriptor list, - // each transferring a max of 32,767 (not 32,768) pixels. - // This won't run off the end of the allocated descriptor list, - // since we're using much larger chunks per descriptor here. - numDescriptors = (len + 32766) / 32767; - for (d = 0; d < numDescriptors; d++) { - int count = (len < 32767) ? len : 32767; - descriptor[d].SRCADDR.reg = (uint32_t)&onePixelBuf; - descriptor[d].BTCTRL.bit.SRCINC = 0; - descriptor[d].BTCNT.reg = count * 2; - descriptor[d].DESCADDR.reg = (uint32_t)&descriptor[d + 1]; - len -= count; - } - descriptor[d - 1].DESCADDR.reg = 0; - } else { - // If high and low bytes are distinct, it's necessary to fill - // a buffer with pixel data (swapping high and low bytes because - // TFT and SAMD are different endianisms) and create a longer - // descriptor list pointing repeatedly to this data. We can do - // this slightly faster working 2 pixels (32 bits) at a time. - uint32_t *pixelPtr = (uint32_t *)pixelBuf[0], - twoPixels = __builtin_bswap16(color) * 0x00010001; - // We can avoid some or all of the buffer-filling if the color - // is the same as last time... - if (color == lastFillColor) { - // If length is longer than prior instance, fill only the - // additional pixels in the buffer and update lastFillLen. - if (len > lastFillLen) { - int fillStart = lastFillLen / 2, - fillEnd = (((len < maxFillLen) ? len : maxFillLen) + 1) / 2; - for (i = fillStart; i < fillEnd; i++) - pixelPtr[i] = twoPixels; - lastFillLen = fillEnd * 2; - } // else do nothing, don't set pixels or change lastFillLen - } else { - int fillEnd = (((len < maxFillLen) ? len : maxFillLen) + 1) / 2; - for (i = 0; i < fillEnd; i++) - pixelPtr[i] = twoPixels; - lastFillLen = fillEnd * 2; - lastFillColor = color; - } - - numDescriptors = (len + maxFillLen - 1) / maxFillLen; - for (d = 0; d < numDescriptors; d++) { - int pixels = (len < maxFillLen) ? len : maxFillLen, bytes = pixels * 2; - descriptor[d].SRCADDR.reg = (uint32_t)pixelPtr + bytes; - descriptor[d].BTCTRL.bit.SRCINC = 1; - descriptor[d].BTCNT.reg = bytes; - descriptor[d].DESCADDR.reg = (uint32_t)&descriptor[d + 1]; - len -= pixels; - } - descriptor[d - 1].DESCADDR.reg = 0; - } - memcpy(dptr, &descriptor[0], sizeof(DmacDescriptor)); -#if defined(__SAMD51__) - if (connection == TFT_PARALLEL) { - // Switch WR pin to PWM or CCL - pinPeripheral(tft8._wr, wrPeripheral); - } -#endif // end __SAMD51__ - - dma_busy = true; - dma.startJob(); - if (connection == TFT_PARALLEL) - dma.trigger(); - while (dma_busy) - ; // Wait for completion - // Unfortunately blocking is necessary. An earlier version returned - // immediately and checked dma_busy on startWrite() instead, but it - // turns out to be MUCH slower on many graphics operations (as when - // drawing lines, pixel-by-pixel), perhaps because it's a volatile - // type and doesn't cache. Working on this. -#if defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO) - if (connection == TFT_HARD_SPI) { - // SAMD51: SPI DMA seems to leave the SPI peripheral in a freaky - // state on completion. Workaround is to explicitly set it back... - // (5/17/2019: apparently SAMD21 too, in certain cases, observed - // with ST7789 display.) - hwspi._spi->setDataMode(hwspi._mode); - } else { - pinPeripheral(tft8._wr, PIO_OUTPUT); // Switch WR back to GPIO - } -#endif // end __SAMD51__ - return; - } -#endif // end USE_SPI_DMA -#endif // end !ESP32 - - // All other cases (non-DMA hard SPI, bitbang SPI, parallel)... - - if (connection == TFT_HARD_SPI) { -#if defined(ESP8266) - do { - uint32_t pixelsThisPass = len; - if (pixelsThisPass > 50000) - pixelsThisPass = 50000; - len -= pixelsThisPass; - delay(1); // Periodic delay on long fills - while (pixelsThisPass--) { - hwspi._spi->write(hi); - hwspi._spi->write(lo); - } - } while (len); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - color = __builtin_bswap16(color); - - while (len--) - spi_write_blocking(pi_spi, (uint8_t *)&color, 2); -#else // !ESP8266 && !ARDUINO_ARCH_RP2040 - while (len--) { -#if defined(__AVR__) - AVR_WRITESPI(hi); - AVR_WRITESPI(lo); -#elif defined(ESP32) - hwspi._spi->write(hi); - hwspi._spi->write(lo); -#else - hwspi._spi->transfer(hi); - hwspi._spi->transfer(lo); -#endif - } -#endif // end !ESP8266 - } else if (connection == TFT_SOFT_SPI) { -#if defined(ESP8266) - do { - uint32_t pixelsThisPass = len; - if (pixelsThisPass > 20000) - pixelsThisPass = 20000; - len -= pixelsThisPass; - yield(); // Periodic yield() on long fills - while (pixelsThisPass--) { - for (uint16_t bit = 0, x = color; bit < 16; bit++) { - if (x & 0x8000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - x <<= 1; - } - } - } while (len); -#else // !ESP8266 - while (len--) { -#if defined(__AVR__) - for (uint8_t bit = 0, x = hi; bit < 8; bit++) { - if (x & 0x80) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - x <<= 1; - } - for (uint8_t bit = 0, x = lo; bit < 8; bit++) { - if (x & 0x80) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - x <<= 1; - } -#else // !__AVR__ - for (uint16_t bit = 0, x = color; bit < 16; bit++) { - if (x & 0x8000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - x <<= 1; - SPI_SCK_LOW(); - } -#endif // end !__AVR__ - } -#endif // end !ESP8266 - } else { // PARALLEL - if (hi == lo) { -#if defined(__AVR__) - len *= 2; - *tft8.writePort = hi; - while (len--) { - TFT_WR_STROBE(); - } -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - len *= 2; - *tft8.writePort = hi; - } else { - *(volatile uint16_t *)tft8.writePort = color; - } - while (len--) { - TFT_WR_STROBE(); - } -#endif - } else { - while (len--) { -#if defined(__AVR__) - *tft8.writePort = hi; - TFT_WR_STROBE(); - *tft8.writePort = lo; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - *tft8.writePort = hi; - TFT_WR_STROBE(); - *tft8.writePort = lo; - } else { - *(volatile uint16_t *)tft8.writePort = color; - } -#endif - TFT_WR_STROBE(); - } - } - } -} - -/*! - @brief Draw a filled rectangle to the display. Not self-contained; - should follow startWrite(). Typically used by higher-level - graphics primitives; user code shouldn't need to call this and - is likely to use the self-contained fillRect() instead. - writeFillRect() performs its own edge clipping and rejection; - see writeFillRectPreclipped() for a more 'raw' implementation. - @param x Horizontal position of first corner. - @param y Vertical position of first corner. - @param w Rectangle width in pixels (positive = right of first - corner, negative = left of first corner). - @param h Rectangle height in pixels (positive = below first - corner, negative = above first corner). - @param color 16-bit fill color in '565' RGB format. - @note Written in this deep-nested way because C by definition will - optimize for the 'if' case, not the 'else' -- avoids branches - and rejects clipped rectangles at the least-work possibility. -*/ -void Adafruit_SPITFT::writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - if (w && h) { // Nonzero width and height? - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Rectangle partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (x2 >= _width) { - w = _width - x; - } // Clip right - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - writeFillRectPreclipped(x, y, w, h, color); - } - } - } - } - } -} - -/*! - @brief Draw a horizontal line on the display. Performs edge clipping - and rejection. Not self-contained; should follow startWrite(). - Typically used by higher-level graphics primitives; user code - shouldn't need to call this and is likely to use the self- - contained drawFastHLine() instead. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param w Line width in pixels (positive = right of first point, - negative = point of first corner). - @param color 16-bit line color in '565' RGB format. -*/ -void inline Adafruit_SPITFT::writeFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if ((y >= 0) && (y < _height) && w) { // Y on screen, nonzero width - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - // Line partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (x2 >= _width) { - w = _width - x; - } // Clip right - writeFillRectPreclipped(x, y, w, 1, color); - } - } - } -} - -/*! - @brief Draw a vertical line on the display. Performs edge clipping and - rejection. Not self-contained; should follow startWrite(). - Typically used by higher-level graphics primitives; user code - shouldn't need to call this and is likely to use the self- - contained drawFastVLine() instead. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param h Line height in pixels (positive = below first point, - negative = above first point). - @param color 16-bit line color in '565' RGB format. -*/ -void inline Adafruit_SPITFT::writeFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if ((x >= 0) && (x < _width) && h) { // X on screen, nonzero height - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Line partly or fully overlaps screen - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - writeFillRectPreclipped(x, y, 1, h, color); - } - } - } -} - -/*! - @brief A lower-level version of writeFillRect(). This version requires - all inputs are in-bounds, that width and height are positive, - and no part extends offscreen. NO EDGE CLIPPING OR REJECTION IS - PERFORMED. If higher-level graphics primitives are written to - handle their own clipping earlier in the drawing process, this - can avoid unnecessary function calls and repeated clipping - operations in the lower-level functions. - @param x Horizontal position of first corner. MUST BE WITHIN - SCREEN BOUNDS. - @param y Vertical position of first corner. MUST BE WITHIN SCREEN - BOUNDS. - @param w Rectangle width in pixels. MUST BE POSITIVE AND NOT - EXTEND OFF SCREEN. - @param h Rectangle height in pixels. MUST BE POSITIVE AND NOT - EXTEND OFF SCREEN. - @param color 16-bit fill color in '565' RGB format. - @note This is a new function, no graphics primitives besides rects - and horizontal/vertical lines are written to best use this yet. -*/ -inline void Adafruit_SPITFT::writeFillRectPreclipped(int16_t x, int16_t y, - int16_t w, int16_t h, - uint16_t color) { - setAddrWindow(x, y, w, h); - writeColor(color, (uint32_t)w * h); -} - -// ------------------------------------------------------------------------- -// Ever-so-slightly higher-level graphics operations. Similar to the 'write' -// functions above, but these contain their own chip-select and SPI -// transactions as needed (via startWrite(), endWrite()). They're typically -// used solo -- as graphics primitives in themselves, not invoked by higher- -// level primitives (which should use the functions above for better -// performance). - -/*! - @brief Draw a single pixel to the display at requested coordinates. - Self-contained and provides its own transaction as needed - (see writePixel(x,y,color) for a lower-level variant). - Edge clipping is performed here. - @param x Horizontal position (0 = left). - @param y Vertical position (0 = top). - @param color 16-bit pixel color in '565' RGB format. -*/ -void Adafruit_SPITFT::drawPixel(int16_t x, int16_t y, uint16_t color) { - // Clip first... - if ((x >= 0) && (x < _width) && (y >= 0) && (y < _height)) { - // THEN set up transaction (if needed) and draw... - startWrite(); - setAddrWindow(x, y, 1, 1); - SPI_WRITE16(color); - endWrite(); - } -} - -/*! - @brief Draw a filled rectangle to the display. Self-contained and - provides its own transaction as needed (see writeFillRect() or - writeFillRectPreclipped() for lower-level variants). Edge - clipping and rejection is performed here. - @param x Horizontal position of first corner. - @param y Vertical position of first corner. - @param w Rectangle width in pixels (positive = right of first - corner, negative = left of first corner). - @param h Rectangle height in pixels (positive = below first - corner, negative = above first corner). - @param color 16-bit fill color in '565' RGB format. - @note This repeats the writeFillRect() function almost in its entirety, - with the addition of a transaction start/end. It's done this way - (rather than starting the transaction and calling writeFillRect() - to handle clipping and so forth) so that the transaction isn't - performed at all if the rectangle is rejected. It's really not - that much code. -*/ -void Adafruit_SPITFT::fillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - if (w && h) { // Nonzero width and height? - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Rectangle partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (x2 >= _width) { - w = _width - x; - } // Clip right - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - startWrite(); - writeFillRectPreclipped(x, y, w, h, color); - endWrite(); - } - } - } - } - } -} - -/*! - @brief Draw a horizontal line on the display. Self-contained and - provides its own transaction as needed (see writeFastHLine() for - a lower-level variant). Edge clipping and rejection is performed - here. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param w Line width in pixels (positive = right of first point, - negative = point of first corner). - @param color 16-bit line color in '565' RGB format. - @note This repeats the writeFastHLine() function almost in its - entirety, with the addition of a transaction start/end. It's - done this way (rather than starting the transaction and calling - writeFastHLine() to handle clipping and so forth) so that the - transaction isn't performed at all if the line is rejected. -*/ -void Adafruit_SPITFT::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if ((y >= 0) && (y < _height) && w) { // Y on screen, nonzero width - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - // Line partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (x2 >= _width) { - w = _width - x; - } // Clip right - startWrite(); - writeFillRectPreclipped(x, y, w, 1, color); - endWrite(); - } - } - } -} - -/*! - @brief Draw a vertical line on the display. Self-contained and provides - its own transaction as needed (see writeFastHLine() for a lower- - level variant). Edge clipping and rejection is performed here. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param h Line height in pixels (positive = below first point, - negative = above first point). - @param color 16-bit line color in '565' RGB format. - @note This repeats the writeFastVLine() function almost in its - entirety, with the addition of a transaction start/end. It's - done this way (rather than starting the transaction and calling - writeFastVLine() to handle clipping and so forth) so that the - transaction isn't performed at all if the line is rejected. -*/ -void Adafruit_SPITFT::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if ((x >= 0) && (x < _width) && h) { // X on screen, nonzero height - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Line partly or fully overlaps screen - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - startWrite(); - writeFillRectPreclipped(x, y, 1, h, color); - endWrite(); - } - } - } -} - -/*! - @brief Essentially writePixel() with a transaction around it. I don't - think this is in use by any of our code anymore (believe it was - for some older BMP-reading examples), but is kept here in case - any user code relies on it. Consider it DEPRECATED. - @param color 16-bit pixel color in '565' RGB format. -*/ -void Adafruit_SPITFT::pushColor(uint16_t color) { - startWrite(); - SPI_WRITE16(color); - endWrite(); -} - -/*! - @brief Draw a 16-bit image (565 RGB) at the specified (x,y) position. - For 16-bit display devices; no color reduction performed. - Adapted from https://github.com/PaulStoffregen/ILI9341_t3 - by Marc MERLIN. See examples/pictureEmbed to use this. - 5/6/2017: function name and arguments have changed for - compatibility with current GFX library and to avoid naming - problems in prior implementation. Formerly drawBitmap() with - arguments in different order. Handles its own transaction and - edge clipping/rejection. - @param x Top left corner horizontal coordinate. - @param y Top left corner vertical coordinate. - @param pcolors Pointer to 16-bit array of pixel values. - @param w Width of bitmap in pixels. - @param h Height of bitmap in pixels. -*/ -void Adafruit_SPITFT::drawRGBBitmap(int16_t x, int16_t y, uint16_t *pcolors, - int16_t w, int16_t h) { - - int16_t x2, y2; // Lower-right coord - if ((x >= _width) || // Off-edge right - (y >= _height) || // " top - ((x2 = (x + w - 1)) < 0) || // " left - ((y2 = (y + h - 1)) < 0)) - return; // " bottom - - int16_t bx1 = 0, by1 = 0, // Clipped top-left within bitmap - saveW = w; // Save original bitmap width value - if (x < 0) { // Clip left - w += x; - bx1 = -x; - x = 0; - } - if (y < 0) { // Clip top - h += y; - by1 = -y; - y = 0; - } - if (x2 >= _width) - w = _width - x; // Clip right - if (y2 >= _height) - h = _height - y; // Clip bottom - - pcolors += by1 * saveW + bx1; // Offset bitmap ptr to clipped top-left - startWrite(); - setAddrWindow(x, y, w, h); // Clipped area - while (h--) { // For each (clipped) scanline... - writePixels(pcolors, w); // Push one (clipped) row - pcolors += saveW; // Advance pointer by one full (unclipped) line - } - endWrite(); -} - -// ------------------------------------------------------------------------- -// Miscellaneous class member functions that don't draw anything. - -/*! - @brief Invert the colors of the display (if supported by hardware). - Self-contained, no transaction setup required. - @param i true = inverted display, false = normal display. -*/ -void Adafruit_SPITFT::invertDisplay(bool i) { - startWrite(); - writeCommand(i ? invertOnCommand : invertOffCommand); - endWrite(); -} - -/*! - @brief Given 8-bit red, green and blue values, return a 'packed' - 16-bit color value in '565' RGB format (5 bits red, 6 bits - green, 5 bits blue). This is just a mathematical operation, - no hardware is touched. - @param red 8-bit red brightnesss (0 = off, 255 = max). - @param green 8-bit green brightnesss (0 = off, 255 = max). - @param blue 8-bit blue brightnesss (0 = off, 255 = max). - @return 'Packed' 16-bit color value (565 format). -*/ -uint16_t Adafruit_SPITFT::color565(uint8_t red, uint8_t green, uint8_t blue) { - return ((red & 0xF8) << 8) | ((green & 0xFC) << 3) | (blue >> 3); -} - -/*! -@brief Adafruit_SPITFT Send Command handles complete sending of commands and -data -@param commandByte The Command Byte -@param dataBytes A pointer to the Data bytes to send -@param numDataBytes The number of bytes we should send -*/ -void Adafruit_SPITFT::sendCommand(uint8_t commandByte, uint8_t *dataBytes, - uint8_t numDataBytes) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); - - SPI_DC_LOW(); // Command mode - spiWrite(commandByte); // Send the command byte - - SPI_DC_HIGH(); - for (int i = 0; i < numDataBytes; i++) { - if ((connection == TFT_PARALLEL) && tft8.wide) { - SPI_WRITE16(*(uint16_t *)dataBytes); - dataBytes += 2; - } else { - spiWrite(*dataBytes); // Send the data bytes - dataBytes++; - } - } - - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -/*! - @brief Adafruit_SPITFT Send Command handles complete sending of commands and - data - @param commandByte The Command Byte - @param dataBytes A pointer to the Data bytes to send - @param numDataBytes The number of bytes we should send - */ -void Adafruit_SPITFT::sendCommand(uint8_t commandByte, const uint8_t *dataBytes, - uint8_t numDataBytes) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); - - SPI_DC_LOW(); // Command mode - spiWrite(commandByte); // Send the command byte - - SPI_DC_HIGH(); - for (int i = 0; i < numDataBytes; i++) { - if ((connection == TFT_PARALLEL) && tft8.wide) { - SPI_WRITE16(*(uint16_t *)dataBytes); - dataBytes += 2; - } else { - spiWrite(pgm_read_byte(dataBytes++)); - } - } - - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -/*! - @brief Adafruit_SPITFT sendCommand16 handles complete sending of - commands and data for 16-bit parallel displays. Currently somewhat - rigged for the NT35510, which has the odd behavior of wanting - commands 16-bit, but subsequent data as 8-bit values, despite - the 16-bit bus (high byte is always 0). Also seems to require - issuing and incrementing address with each transfer. - @param commandWord The command word (16 bits) - @param dataBytes A pointer to the data bytes to send - @param numDataBytes The number of bytes we should send - */ -void Adafruit_SPITFT::sendCommand16(uint16_t commandWord, - const uint8_t *dataBytes, - uint8_t numDataBytes) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); - - if (numDataBytes == 0) { - SPI_DC_LOW(); // Command mode - SPI_WRITE16(commandWord); // Send the command word - SPI_DC_HIGH(); // Data mode - } - for (int i = 0; i < numDataBytes; i++) { - SPI_DC_LOW(); // Command mode - SPI_WRITE16(commandWord); // Send the command word - SPI_DC_HIGH(); // Data mode - commandWord++; - SPI_WRITE16((uint16_t)pgm_read_byte(dataBytes++)); - } - - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -/*! - @brief Read 8 bits of data from display configuration memory (not RAM). - This is highly undocumented/supported and should be avoided, - function is only included because some of the examples use it. - @param commandByte - The command register to read data from. - @param index - The byte index into the command to read from. - @return Unsigned 8-bit data read from display register. - */ -/**************************************************************************/ -uint8_t Adafruit_SPITFT::readcommand8(uint8_t commandByte, uint8_t index) { - uint8_t result; - startWrite(); - SPI_DC_LOW(); // Command mode - spiWrite(commandByte); - SPI_DC_HIGH(); // Data mode - do { - result = spiRead(); - } while (index--); // Discard bytes up to index'th - endWrite(); - return result; -} - -/*! - @brief Read 16 bits of data from display register. - For 16-bit parallel displays only. - @param addr Command/register to access. - @return Unsigned 16-bit data. - */ -uint16_t Adafruit_SPITFT::readcommand16(uint16_t addr) { -#if defined(USE_FAST_PINIO) // NOT SUPPORTED without USE_FAST_PINIO - uint16_t result = 0; - if ((connection == TFT_PARALLEL) && tft8.wide) { - startWrite(); - SPI_DC_LOW(); // Command mode - SPI_WRITE16(addr); - SPI_DC_HIGH(); // Data mode - TFT_RD_LOW(); // Read line LOW -#if defined(HAS_PORT_SET_CLR) - *(volatile uint16_t *)tft8.dirClr = 0xFFFF; // Input state - result = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; // Output state -#else // !HAS_PORT_SET_CLR - *(volatile uint16_t *)tft8.portDir = 0x0000; // Input state - result = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.portDir = 0xFFFF; // Output state -#endif // end !HAS_PORT_SET_CLR - TFT_RD_HIGH(); // Read line HIGH - endWrite(); - } - return result; -#else - (void)addr; // disable -Wunused-parameter warning - return 0; -#endif // end !USE_FAST_PINIO -} - -// ------------------------------------------------------------------------- -// Lowest-level hardware-interfacing functions. Many of these are inline and -// compile to different things based on #defines -- typically just a few -// instructions. Others, not so much, those are not inlined. - -/*! - @brief Start an SPI transaction if using the hardware SPI interface to - the display. If using an earlier version of the Arduino platform - (before the addition of SPI transactions), this instead attempts - to set up the SPI clock and mode. No action is taken if the - connection is not hardware SPI-based. This does NOT include a - chip-select operation -- see startWrite() for a function that - encapsulated both actions. -*/ -inline void Adafruit_SPITFT::SPI_BEGIN_TRANSACTION(void) { - if (connection == TFT_HARD_SPI) { -#if defined(SPI_HAS_TRANSACTION) - hwspi._spi->beginTransaction(hwspi.settings); -#else // No transactions, configure SPI manually... -#if defined(__AVR__) || defined(TEENSYDUINO) || defined(ARDUINO_ARCH_STM32F1) - hwspi._spi->setClockDivider(SPI_CLOCK_DIV2); -#elif defined(__arm__) - hwspi._spi->setClockDivider(11); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->setFrequency(hwspi._freq); -#elif defined(RASPI) || defined(ARDUINO_ARCH_STM32F1) - hwspi._spi->setClock(hwspi._freq); -#endif - hwspi._spi->setBitOrder(MSBFIRST); - hwspi._spi->setDataMode(hwspi._mode); -#endif // end !SPI_HAS_TRANSACTION - } -} - -/*! - @brief End an SPI transaction if using the hardware SPI interface to - the display. No action is taken if the connection is not - hardware SPI-based or if using an earlier version of the Arduino - platform (before the addition of SPI transactions). This does - NOT include a chip-deselect operation -- see endWrite() for a - function that encapsulated both actions. -*/ -inline void Adafruit_SPITFT::SPI_END_TRANSACTION(void) { -#if defined(SPI_HAS_TRANSACTION) - if (connection == TFT_HARD_SPI) { - hwspi._spi->endTransaction(); - } -#endif -} - -/*! - @brief Issue a single 8-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the byte. This is another of - those functions in the library with a now-not-accurate name - that's being maintained for compatibility with outside code. - This function is used even if display connection is parallel. - @param b 8-bit value to write. -*/ -void Adafruit_SPITFT::spiWrite(uint8_t b) { - if (connection == TFT_HARD_SPI) { -#if defined(__AVR__) - AVR_WRITESPI(b); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->write(b); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - spi_write_blocking(pi_spi, &b, 1); -#else - hwspi._spi->transfer(b); -#endif - } else if (connection == TFT_SOFT_SPI) { - for (uint8_t bit = 0; bit < 8; bit++) { - if (b & 0x80) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - b <<= 1; - SPI_SCK_LOW(); - } - } else { // TFT_PARALLEL -#if defined(__AVR__) - *tft8.writePort = b; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) - *tft8.writePort = b; - else - *(volatile uint16_t *)tft8.writePort = b; -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Write a single command byte to the display. Chip-select and - transaction must have been previously set -- this ONLY sets - the device to COMMAND mode, issues the byte and then restores - DATA mode. There is no corresponding explicit writeData() - function -- just use spiWrite(). - @param cmd 8-bit command to write. -*/ -void Adafruit_SPITFT::writeCommand(uint8_t cmd) { - SPI_DC_LOW(); - spiWrite(cmd); - SPI_DC_HIGH(); -} - -/*! - @brief Read a single 8-bit value from the display. Chip-select and - transaction must have been previously set -- this ONLY reads - the byte. This is another of those functions in the library - with a now-not-accurate name that's being maintained for - compatibility with outside code. This function is used even if - display connection is parallel. - @return Unsigned 8-bit value read (always zero if USE_FAST_PINIO is - not supported by the MCU architecture). -*/ -uint8_t Adafruit_SPITFT::spiRead(void) { - uint8_t b = 0; - uint16_t w = 0; - if (connection == TFT_HARD_SPI) { - return hwspi._spi->transfer((uint8_t)0); - } else if (connection == TFT_SOFT_SPI) { - if (swspi._miso >= 0) { - for (uint8_t i = 0; i < 8; i++) { - SPI_SCK_HIGH(); - b <<= 1; - if (SPI_MISO_READ()) - b++; - SPI_SCK_LOW(); - } - } - return b; - } else { // TFT_PARALLEL - if (tft8._rd >= 0) { -#if defined(USE_FAST_PINIO) - TFT_RD_LOW(); // Read line LOW -#if defined(__AVR__) - *tft8.portDir = 0x00; // Set port to input state - w = *tft8.readPort; // Read value from port - *tft8.portDir = 0xFF; // Restore port to output -#else // !__AVR__ - if (!tft8.wide) { // 8-bit TFT connection -#if defined(HAS_PORT_SET_CLR) - *tft8.dirClr = 0xFF; // Set port to input state - w = *tft8.readPort; // Read value from port - *tft8.dirSet = 0xFF; // Restore port to output -#else // !HAS_PORT_SET_CLR - *tft8.portDir = 0x00; // Set port to input state - w = *tft8.readPort; // Read value from port - *tft8.portDir = 0xFF; // Restore port to output -#endif // end HAS_PORT_SET_CLR - } else { // 16-bit TFT connection -#if defined(HAS_PORT_SET_CLR) - *(volatile uint16_t *)tft8.dirClr = 0xFFFF; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; // Output state -#else // !HAS_PORT_SET_CLR - *(volatile uint16_t *)tft8.portDir = 0x0000; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.portDir = 0xFFFF; // Output state -#endif // end !HAS_PORT_SET_CLR - } - TFT_RD_HIGH(); // Read line HIGH -#endif // end !__AVR__ -#else // !USE_FAST_PINIO - w = 0; // Parallel TFT is NOT SUPPORTED without USE_FAST_PINIO -#endif // end !USE_FAST_PINIO - } - return w; - } -} - -/*! - @brief Issue a single 16-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the word. - Thus operates ONLY on 'wide' (16-bit) parallel displays! - @param w 16-bit value to write. -*/ -void Adafruit_SPITFT::write16(uint16_t w) { - if (connection == TFT_PARALLEL) { -#if defined(USE_FAST_PINIO) - if (tft8.wide) - *(volatile uint16_t *)tft8.writePort = w; -#else - (void)w; // disable -Wunused-parameter warning -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Write a single command word to the display. Chip-select and - transaction must have been previously set -- this ONLY sets - the device to COMMAND mode, issues the byte and then restores - DATA mode. This operates ONLY on 'wide' (16-bit) parallel - displays! - @param cmd 16-bit command to write. -*/ -void Adafruit_SPITFT::writeCommand16(uint16_t cmd) { - SPI_DC_LOW(); - write16(cmd); - SPI_DC_HIGH(); -} - -/*! - @brief Read a single 16-bit value from the display. Chip-select and - transaction must have been previously set -- this ONLY reads - the byte. This operates ONLY on 'wide' (16-bit) parallel - displays! - @return Unsigned 16-bit value read (always zero if USE_FAST_PINIO is - not supported by the MCU architecture). -*/ -uint16_t Adafruit_SPITFT::read16(void) { - uint16_t w = 0; - if (connection == TFT_PARALLEL) { - if (tft8._rd >= 0) { -#if defined(USE_FAST_PINIO) - TFT_RD_LOW(); // Read line LOW - if (tft8.wide) { // 16-bit TFT connection -#if defined(HAS_PORT_SET_CLR) - *(volatile uint16_t *)tft8.dirClr = 0xFFFF; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; // Output state -#else // !HAS_PORT_SET_CLR - *(volatile uint16_t *)tft8.portDir = 0x0000; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.portDir = 0xFFFF; // Output state -#endif // end !HAS_PORT_SET_CLR - } - TFT_RD_HIGH(); // Read line HIGH -#else // !USE_FAST_PINIO - w = 0; // Parallel TFT is NOT SUPPORTED without USE_FAST_PINIO -#endif // end !USE_FAST_PINIO - } - } - return w; -} - -/*! - @brief Set the software (bitbang) SPI MOSI line HIGH. -*/ -inline void Adafruit_SPITFT::SPI_MOSI_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.mosiPortSet = 1; -#else // !KINETISK - *swspi.mosiPortSet = swspi.mosiPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.mosiPort |= swspi.mosiPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._mosi, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the software (bitbang) SPI MOSI line LOW. -*/ -inline void Adafruit_SPITFT::SPI_MOSI_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.mosiPortClr = 1; -#else // !KINETISK - *swspi.mosiPortClr = swspi.mosiPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.mosiPort &= swspi.mosiPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._mosi, LOW); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the software (bitbang) SPI SCK line HIGH. -*/ -inline void Adafruit_SPITFT::SPI_SCK_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.sckPortSet = 1; -#else // !KINETISK - *swspi.sckPortSet = swspi.sckPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.sckPort |= swspi.sckPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._sck, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the software (bitbang) SPI SCK line LOW. -*/ -inline void Adafruit_SPITFT::SPI_SCK_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.sckPortClr = 1; -#else // !KINETISK - *swspi.sckPortClr = swspi.sckPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.sckPort &= swspi.sckPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._sck, LOW); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Read the state of the software (bitbang) SPI MISO line. - @return true if HIGH, false if LOW. -*/ -inline bool Adafruit_SPITFT::SPI_MISO_READ(void) { -#if defined(USE_FAST_PINIO) -#if defined(KINETISK) - return *swspi.misoPort; -#else // !KINETISK - return *swspi.misoPort & swspi.misoPinMask; -#endif // end !KINETISK -#else // !USE_FAST_PINIO - return digitalRead(swspi._miso); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Issue a single 16-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the word. Despite the name, - this function is used even if display connection is parallel; - name was maintaned for backward compatibility. Naming is also - not consistent with the 8-bit version, spiWrite(). Sorry about - that. Again, staying compatible with outside code. - @param w 16-bit value to write. -*/ -void Adafruit_SPITFT::SPI_WRITE16(uint16_t w) { - if (connection == TFT_HARD_SPI) { -#if defined(__AVR__) - AVR_WRITESPI(w >> 8); - AVR_WRITESPI(w); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->write16(w); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - w = __builtin_bswap16(w); - spi_write_blocking(pi_spi, (uint8_t *)&w, 2); -#elif defined(ARDUINO_ARCH_RTTHREAD) - hwspi._spi->transfer16(w); -#else - // MSB, LSB because TFTs are generally big-endian - hwspi._spi->transfer(w >> 8); - hwspi._spi->transfer(w); -#endif - } else if (connection == TFT_SOFT_SPI) { - for (uint8_t bit = 0; bit < 16; bit++) { - if (w & 0x8000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - w <<= 1; - } - } else { // TFT_PARALLEL -#if defined(__AVR__) - *tft8.writePort = w >> 8; - TFT_WR_STROBE(); - *tft8.writePort = w; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - *tft8.writePort = w >> 8; - TFT_WR_STROBE(); - *tft8.writePort = w; - } else { - *(volatile uint16_t *)tft8.writePort = w; - } -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Issue a single 32-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the longword. Despite the - name, this function is used even if display connection is - parallel; name was maintaned for backward compatibility. Naming - is also not consistent with the 8-bit version, spiWrite(). - Sorry about that. Again, staying compatible with outside code. - @param l 32-bit value to write. -*/ -void Adafruit_SPITFT::SPI_WRITE32(uint32_t l) { - if (connection == TFT_HARD_SPI) { -#if defined(__AVR__) - AVR_WRITESPI(l >> 24); - AVR_WRITESPI(l >> 16); - AVR_WRITESPI(l >> 8); - AVR_WRITESPI(l); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->write32(l); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - l = __builtin_bswap32(l); - spi_write_blocking(pi_spi, (uint8_t *)&l, 4); -#elif defined(ARDUINO_ARCH_RTTHREAD) - hwspi._spi->transfer16(l >> 16); - hwspi._spi->transfer16(l); -#else - hwspi._spi->transfer(l >> 24); - hwspi._spi->transfer(l >> 16); - hwspi._spi->transfer(l >> 8); - hwspi._spi->transfer(l); -#endif - } else if (connection == TFT_SOFT_SPI) { - for (uint8_t bit = 0; bit < 32; bit++) { - if (l & 0x80000000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - l <<= 1; - } - } else { // TFT_PARALLEL -#if defined(__AVR__) - *tft8.writePort = l >> 24; - TFT_WR_STROBE(); - *tft8.writePort = l >> 16; - TFT_WR_STROBE(); - *tft8.writePort = l >> 8; - TFT_WR_STROBE(); - *tft8.writePort = l; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - *tft8.writePort = l >> 24; - TFT_WR_STROBE(); - *tft8.writePort = l >> 16; - TFT_WR_STROBE(); - *tft8.writePort = l >> 8; - TFT_WR_STROBE(); - *tft8.writePort = l; - } else { - *(volatile uint16_t *)tft8.writePort = l >> 16; - TFT_WR_STROBE(); - *(volatile uint16_t *)tft8.writePort = l; - } -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Set the WR line LOW, then HIGH. Used for parallel-connected - interfaces when writing data. -*/ -inline void Adafruit_SPITFT::TFT_WR_STROBE(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *tft8.wrPortClr = 1; - *tft8.wrPortSet = 1; -#else // !KINETISK - *tft8.wrPortClr = tft8.wrPinMask; - *tft8.wrPortSet = tft8.wrPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *tft8.wrPort &= tft8.wrPinMaskClr; - *tft8.wrPort |= tft8.wrPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(tft8._wr, LOW); - digitalWrite(tft8._wr, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the RD line HIGH. Used for parallel-connected interfaces - when reading data. -*/ -inline void Adafruit_SPITFT::TFT_RD_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) - *tft8.rdPortSet = tft8.rdPinMask; -#else // !HAS_PORT_SET_CLR - *tft8.rdPort |= tft8.rdPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(tft8._rd, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the RD line LOW. Used for parallel-connected interfaces - when reading data. -*/ -inline void Adafruit_SPITFT::TFT_RD_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) - *tft8.rdPortClr = tft8.rdPinMask; -#else // !HAS_PORT_SET_CLR - *tft8.rdPort &= tft8.rdPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(tft8._rd, LOW); -#endif // end !USE_FAST_PINIO -} - -#endif // end __AVR_ATtiny85__ __AVR_ATtiny84__ diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT.h deleted file mode 100644 index 7d0843e..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT.h +++ /dev/null @@ -1,541 +0,0 @@ -/*! - * @file Adafruit_SPITFT.h - * - * Part of Adafruit's GFX graphics library. Originally this class was - * written to handle a range of color TFT displays connected via SPI, - * but over time this library and some display-specific subclasses have - * mutated to include some color OLEDs as well as parallel-interfaced - * displays. The name's been kept for the sake of older code. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - * - * Written by Limor "ladyada" Fried for Adafruit Industries, - * with contributions from the open source community. - * - * BSD license, all text here must be included in any redistribution. - */ - -#ifndef _ADAFRUIT_SPITFT_H_ -#define _ADAFRUIT_SPITFT_H_ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include "Adafruit_GFX.h" -#include - -// HARDWARE CONFIG --------------------------------------------------------- - -#if defined(__AVR__) -typedef uint8_t ADAGFX_PORT_t; ///< PORT values are 8-bit -#define USE_FAST_PINIO ///< Use direct PORT register access -#elif defined(ARDUINO_STM32_FEATHER) // WICED -typedef class HardwareSPI SPIClass; ///< SPI is a bit odd on WICED -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -#elif defined(__arm__) -#if defined(ARDUINO_ARCH_SAMD) -// Adafruit M0, M4 -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -#define USE_FAST_PINIO ///< Use direct PORT register access -#define HAS_PORT_SET_CLR ///< PORTs have set & clear registers -#elif defined(CORE_TEENSY) -// PJRC Teensy 4.x -#if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit - // PJRC Teensy 3.x -#else -typedef uint8_t ADAGFX_PORT_t; ///< PORT values are 8-bit -#endif -#define USE_FAST_PINIO ///< Use direct PORT register access -#define HAS_PORT_SET_CLR ///< PORTs have set & clear registers -#else -// Arduino Due? -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -// USE_FAST_PINIO not available here (yet)...Due has a totally different -// GPIO register set and will require some changes elsewhere (e.g. in -// constructors especially). -#endif -#else // !ARM -// Probably ESP8266 or ESP32. USE_FAST_PINIO is not available here (yet) -// but don't worry about it too much...the digitalWrite() implementation -// on these platforms is reasonably efficient and already RAM-resident, -// only gotcha then is no parallel connection support for now. -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -#endif // end !ARM -typedef volatile ADAGFX_PORT_t *PORTreg_t; ///< PORT register type - -#if defined(__AVR__) && !defined(__LGT8F__) -#define DEFAULT_SPI_FREQ 8000000L ///< Hardware SPI default speed -#else -#define DEFAULT_SPI_FREQ 16000000L ///< Hardware SPI default speed -#endif - -#if defined(ADAFRUIT_PYPORTAL) || defined(ADAFRUIT_PYPORTAL_M4_TITANO) || \ - defined(ADAFRUIT_PYBADGE_M4_EXPRESS) || \ - defined(ADAFRUIT_PYGAMER_M4_EXPRESS) || \ - defined(ADAFRUIT_MONSTER_M4SK_EXPRESS) || defined(NRF52_SERIES) || \ - defined(ADAFRUIT_CIRCUITPLAYGROUND_M0) -#define USE_SPI_DMA ///< Auto DMA -#else - // #define USE_SPI_DMA ///< If set, - // use DMA if available -#endif -// Another "oops" name -- this now also handles parallel DMA. -// If DMA is enabled, Arduino sketch MUST #include -// Estimated RAM usage: -// 4 bytes/pixel on display major axis + 8 bytes/pixel on minor axis, -// e.g. 320x240 pixels = 320 * 4 + 240 * 8 = 3,200 bytes. - -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) -#include -#endif - -// This is kind of a kludge. Needed a way to disambiguate the software SPI -// and parallel constructors via their argument lists. Originally tried a -// bool as the first argument to the parallel constructor (specifying 8-bit -// vs 16-bit interface) but the compiler regards this as equivalent to an -// integer and thus still ambiguous. SO...the parallel constructor requires -// an enumerated type as the first argument: tft8 (for 8-bit parallel) or -// tft16 (for 16-bit)...even though 16-bit isn't fully implemented or tested -// and might never be, still needed that disambiguation from soft SPI. -/*! For first arg to parallel constructor */ -enum tftBusWidth { tft8bitbus, tft16bitbus }; - -// SPI defaults for RP2040 -#if defined(ARDUINO_ARCH_RP2040) -#ifndef __SPI0_DEVICE -#define __SPI0_DEVICE spi0 -#endif -#ifndef __SPI1_DEVICE -#define __SPI1_DEVICE spi1 -#endif -#endif - -// CLASS DEFINITION -------------------------------------------------------- - -/*! - @brief Adafruit_SPITFT is an intermediary class between Adafruit_GFX - and various hardware-specific subclasses for different displays. - It handles certain operations that are common to a range of - displays (address window, area fills, etc.). Originally these were - all color TFT displays interfaced via SPI, but it's since expanded - to include color OLEDs and parallel-interfaced TFTs. THE NAME HAS - BEEN KEPT TO AVOID BREAKING A LOT OF SUBCLASSES AND EXAMPLE CODE. - Many of the class member functions similarly live on with names - that don't necessarily accurately describe what they're doing, - again to avoid breaking a lot of other code. If in doubt, read - the comments. -*/ -class Adafruit_SPITFT : public Adafruit_GFX { - -public: - // CONSTRUCTORS -------------------------------------------------------- - - // Software SPI constructor: expects width & height (at default rotation - // setting 0), 4 signal pins (cs, dc, mosi, sclk), 2 optional pins - // (reset, miso). cs argument is required but can be -1 if unused -- - // rather than moving it to the optional arguments, it was done this way - // to avoid breaking existing code (-1 option was a later addition). - Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, int8_t mosi, - int8_t sck, int8_t rst = -1, int8_t miso = -1); - - // Hardware SPI constructor using the default SPI port: expects width & - // height (at default rotation setting 0), 2 signal pins (cs, dc), - // optional reset pin. cs is required but can be -1 if unused -- rather - // than moving it to the optional arguments, it was done this way to - // avoid breaking existing code (-1 option was a later addition). - Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t rst = -1); - -#if !defined(ESP8266) // See notes in .cpp - // Hardware SPI constructor using an arbitrary SPI peripheral: expects - // width & height (rotation 0), SPIClass pointer, 2 signal pins (cs, dc) - // and optional reset pin. cs is required but can be -1 if unused. - Adafruit_SPITFT(uint16_t w, uint16_t h, SPIClass *spiClass, int8_t cs, - int8_t dc, int8_t rst = -1); -#endif // end !ESP8266 - - // Parallel constructor: expects width & height (rotation 0), flag - // indicating whether 16-bit (true) or 8-bit (false) interface, 3 signal - // pins (d0, wr, dc), 3 optional pins (cs, rst, rd). 16-bit parallel - // isn't even fully implemented but the 'wide' flag was added as a - // required argument to avoid ambiguity with other constructors. - Adafruit_SPITFT(uint16_t w, uint16_t h, tftBusWidth busWidth, int8_t d0, - int8_t wr, int8_t dc, int8_t cs = -1, int8_t rst = -1, - int8_t rd = -1); - - // DESTRUCTOR ---------------------------------------------------------- - - ~Adafruit_SPITFT(){}; - - // CLASS MEMBER FUNCTIONS ---------------------------------------------- - - // These first two functions MUST be declared by subclasses: - - /*! - @brief Display-specific initialization function. - @param freq SPI frequency, in hz (or 0 for default or unused). - */ - virtual void begin(uint32_t freq) = 0; - - /*! - @brief Set up the specific display hardware's "address window" - for subsequent pixel-pushing operations. - @param x Leftmost pixel of area to be drawn (MUST be within - display bounds at current rotation setting). - @param y Topmost pixel of area to be drawn (MUST be within - display bounds at current rotation setting). - @param w Width of area to be drawn, in pixels (MUST be >0 and, - added to x, within display bounds at current rotation). - @param h Height of area to be drawn, in pixels (MUST be >0 and, - added to x, within display bounds at current rotation). - */ - virtual void setAddrWindow(uint16_t x, uint16_t y, uint16_t w, - uint16_t h) = 0; - - // Remaining functions do not need to be declared in subclasses - // unless they wish to provide hardware-specific optimizations. - // Brief comments here...documented more thoroughly in .cpp file. - - // Subclass' begin() function invokes this to initialize hardware. - // freq=0 to use default SPI speed. spiMode must be one of the SPI_MODEn - // values defined in SPI.h, which are NOT the same as 0 for SPI_MODE0, - // 1 for SPI_MODE1, etc...use ONLY the SPI_MODEn defines! Only! - // Name is outdated (interface may be parallel) but for compatibility: - void initSPI(uint32_t freq = 0, uint8_t spiMode = SPI_MODE0); - void setSPISpeed(uint32_t freq); - // Chip select and/or hardware SPI transaction start as needed: - void startWrite(void); - // Chip deselect and/or hardware SPI transaction end as needed: - void endWrite(void); - void sendCommand(uint8_t commandByte, uint8_t *dataBytes, - uint8_t numDataBytes); - void sendCommand(uint8_t commandByte, const uint8_t *dataBytes = NULL, - uint8_t numDataBytes = 0); - void sendCommand16(uint16_t commandWord, const uint8_t *dataBytes = NULL, - uint8_t numDataBytes = 0); - uint8_t readcommand8(uint8_t commandByte, uint8_t index = 0); - uint16_t readcommand16(uint16_t addr); - - // These functions require a chip-select and/or SPI transaction - // around them. Higher-level graphics primitives might start a - // single transaction and then make multiple calls to these functions - // (e.g. circle or text rendering might make repeated lines or rects) - // before ending the transaction. It's more efficient than starting a - // transaction every time. - void writePixel(int16_t x, int16_t y, uint16_t color); - void writePixels(uint16_t *colors, uint32_t len, bool block = true, - bool bigEndian = false); - void writeColor(uint16_t color, uint32_t len); - void writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - void writeFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - void writeFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - // This is a new function, similar to writeFillRect() except that - // all arguments MUST be onscreen, sorted and clipped. If higher-level - // primitives can handle their own sorting/clipping, it avoids repeating - // such operations in the low-level code, making it potentially faster. - // CALLING THIS WITH UNCLIPPED OR NEGATIVE VALUES COULD BE DISASTROUS. - inline void writeFillRectPreclipped(int16_t x, int16_t y, int16_t w, - int16_t h, uint16_t color); - // Another new function, companion to the new non-blocking - // writePixels() variant. - void dmaWait(void); - // Used by writePixels() in some situations, but might have rare need in - // user code, so it's public... - bool dmaBusy(void) const; // true if DMA is used and busy, false otherwise - void swapBytes(uint16_t *src, uint32_t len, uint16_t *dest = NULL); - - // These functions are similar to the 'write' functions above, but with - // a chip-select and/or SPI transaction built-in. They're typically used - // solo -- that is, as graphics primitives in themselves, not invoked by - // higher-level primitives (which should use the functions above). - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - // A single-pixel push encapsulated in a transaction. I don't think - // this is used anymore (BMP demos might've used it?) but is provided - // for backward compatibility, consider it deprecated: - void pushColor(uint16_t color); - - using Adafruit_GFX::drawRGBBitmap; // Check base class first - void drawRGBBitmap(int16_t x, int16_t y, uint16_t *pcolors, int16_t w, - int16_t h); - - void invertDisplay(bool i); - uint16_t color565(uint8_t r, uint8_t g, uint8_t b); - - // Despite parallel additions, function names kept for compatibility: - void spiWrite(uint8_t b); // Write single byte as DATA - void writeCommand(uint8_t cmd); // Write single byte as COMMAND - uint8_t spiRead(void); // Read single byte of data - void write16(uint16_t w); // Write 16-bit value as DATA - void writeCommand16(uint16_t cmd); // Write 16-bit value as COMMAND - uint16_t read16(void); // Read single 16-bit value - - // Most of these low-level functions were formerly macros in - // Adafruit_SPITFT_Macros.h. Some have been made into inline functions - // to avoid macro mishaps. Despite the addition of code for a parallel - // display interface, the names have been kept for backward - // compatibility (some subclasses may be invoking these): - void SPI_WRITE16(uint16_t w); // Not inline - void SPI_WRITE32(uint32_t l); // Not inline - // Old code had both a spiWrite16() function and SPI_WRITE16 macro - // in addition to the SPI_WRITE32 macro. The latter two have been - // made into functions here, and spiWrite16() removed (use SPI_WRITE16() - // instead). It looks like most subclasses had gotten comfortable with - // SPI_WRITE16 and SPI_WRITE32 anyway so those names were kept rather - // than the less-obnoxious camelcase variants, oh well. - - // Placing these functions entirely in the class definition inlines - // them implicitly them while allowing their use in other code: - - /*! - @brief Set the chip-select line HIGH. Does NOT check whether CS pin - is set (>=0), that should be handled in calling function. - Despite function name, this is used even if the display - connection is parallel. - */ - void SPI_CS_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *csPortSet = 1; -#else // !KINETISK - *csPortSet = csPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *csPort |= csPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_cs, HIGH); -#endif // end !USE_FAST_PINIO - } - - /*! - @brief Set the chip-select line LOW. Does NOT check whether CS pin - is set (>=0), that should be handled in calling function. - Despite function name, this is used even if the display - connection is parallel. - */ - void SPI_CS_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *csPortClr = 1; -#else // !KINETISK - *csPortClr = csPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *csPort &= csPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_cs, LOW); -#endif // end !USE_FAST_PINIO - } - - /*! - @brief Set the data/command line HIGH (data mode). - */ - void SPI_DC_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *dcPortSet = 1; -#else // !KINETISK - *dcPortSet = dcPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *dcPort |= dcPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_dc, HIGH); -#endif // end !USE_FAST_PINIO - } - - /*! - @brief Set the data/command line LOW (command mode). - */ - void SPI_DC_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *dcPortClr = 1; -#else // !KINETISK - *dcPortClr = dcPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *dcPort &= dcPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_dc, LOW); -#endif // end !USE_FAST_PINIO - } - -protected: - // A few more low-level member functions -- some may have previously - // been macros. Shouldn't have a need to access these externally, so - // they've been moved to the protected section. Additionally, they're - // declared inline here and the code is in the .cpp file, since outside - // code doesn't need to see these. - inline void SPI_MOSI_HIGH(void); - inline void SPI_MOSI_LOW(void); - inline void SPI_SCK_HIGH(void); - inline void SPI_SCK_LOW(void); - inline bool SPI_MISO_READ(void); - inline void SPI_BEGIN_TRANSACTION(void); - inline void SPI_END_TRANSACTION(void); - inline void TFT_WR_STROBE(void); // Parallel interface write strobe - inline void TFT_RD_HIGH(void); // Parallel interface read high - inline void TFT_RD_LOW(void); // Parallel interface read low - - // CLASS INSTANCE VARIABLES -------------------------------------------- - - // Here be dragons! There's a big union of three structures here -- - // one each for hardware SPI, software (bitbang) SPI, and parallel - // interfaces. This is to save some memory, since a display's connection - // will be only one of these. The order of some things is a little weird - // in an attempt to get values to align and pack better in RAM. - -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) - PORTreg_t csPortSet; ///< PORT register for chip select SET - PORTreg_t csPortClr; ///< PORT register for chip select CLEAR - PORTreg_t dcPortSet; ///< PORT register for data/command SET - PORTreg_t dcPortClr; ///< PORT register for data/command CLEAR -#else // !HAS_PORT_SET_CLR - PORTreg_t csPort; ///< PORT register for chip select - PORTreg_t dcPort; ///< PORT register for data/command -#endif // end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -#if defined(__cplusplus) && (__cplusplus >= 201100) - union { -#endif - struct { // Values specific to HARDWARE SPI: - SPIClass *_spi; ///< SPI class pointer -#if defined(SPI_HAS_TRANSACTION) - SPISettings settings; ///< SPI transaction settings -#else - uint32_t _freq; ///< SPI bitrate (if no SPI transactions) -#endif - uint32_t _mode; ///< SPI data mode (transactions or no) - } hwspi; ///< Hardware SPI values - struct { // Values specific to SOFTWARE SPI: -#if defined(USE_FAST_PINIO) - PORTreg_t misoPort; ///< PORT (PIN) register for MISO -#if defined(HAS_PORT_SET_CLR) - PORTreg_t mosiPortSet; ///< PORT register for MOSI SET - PORTreg_t mosiPortClr; ///< PORT register for MOSI CLEAR - PORTreg_t sckPortSet; ///< PORT register for SCK SET - PORTreg_t sckPortClr; ///< PORT register for SCK CLEAR -#if !defined(KINETISK) - ADAGFX_PORT_t mosiPinMask; ///< Bitmask for MOSI - ADAGFX_PORT_t sckPinMask; ///< Bitmask for SCK -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - PORTreg_t mosiPort; ///< PORT register for MOSI - PORTreg_t sckPort; ///< PORT register for SCK - ADAGFX_PORT_t mosiPinMaskSet; ///< Bitmask for MOSI SET (OR) - ADAGFX_PORT_t mosiPinMaskClr; ///< Bitmask for MOSI CLEAR (AND) - ADAGFX_PORT_t sckPinMaskSet; ///< Bitmask for SCK SET (OR bitmask) - ADAGFX_PORT_t sckPinMaskClr; ///< Bitmask for SCK CLEAR (AND) -#endif // end HAS_PORT_SET_CLR -#if !defined(KINETISK) - ADAGFX_PORT_t misoPinMask; ///< Bitmask for MISO -#endif // end !KINETISK -#endif // end USE_FAST_PINIO - int8_t _mosi; ///< MOSI pin # - int8_t _miso; ///< MISO pin # - int8_t _sck; ///< SCK pin # - } swspi; ///< Software SPI values - struct { // Values specific to 8-bit parallel: -#if defined(USE_FAST_PINIO) - -#if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x - volatile uint32_t *writePort; ///< PORT register for DATA WRITE - volatile uint32_t *readPort; ///< PORT (PIN) register for DATA READ -#else - volatile uint8_t *writePort; ///< PORT register for DATA WRITE - volatile uint8_t *readPort; ///< PORT (PIN) register for DATA READ -#endif -#if defined(HAS_PORT_SET_CLR) - // Port direction register pointers are always 8-bit regardless of - // PORTreg_t -- even if 32-bit port, we modify a byte-aligned 8 bits. -#if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x - volatile uint32_t *dirSet; ///< PORT byte data direction SET - volatile uint32_t *dirClr; ///< PORT byte data direction CLEAR -#else - volatile uint8_t *dirSet; ///< PORT byte data direction SET - volatile uint8_t *dirClr; ///< PORT byte data direction CLEAR -#endif - PORTreg_t wrPortSet; ///< PORT register for write strobe SET - PORTreg_t wrPortClr; ///< PORT register for write strobe CLEAR - PORTreg_t rdPortSet; ///< PORT register for read strobe SET - PORTreg_t rdPortClr; ///< PORT register for read strobe CLEAR -#if !defined(KINETISK) - ADAGFX_PORT_t wrPinMask; ///< Bitmask for write strobe -#endif // end !KINETISK - ADAGFX_PORT_t rdPinMask; ///< Bitmask for read strobe -#else // !HAS_PORT_SET_CLR - // Port direction register pointer is always 8-bit regardless of - // PORTreg_t -- even if 32-bit port, we modify a byte-aligned 8 bits. - volatile uint8_t *portDir; ///< PORT direction register - PORTreg_t wrPort; ///< PORT register for write strobe - PORTreg_t rdPort; ///< PORT register for read strobe - ADAGFX_PORT_t wrPinMaskSet; ///< Bitmask for write strobe SET (OR) - ADAGFX_PORT_t wrPinMaskClr; ///< Bitmask for write strobe CLEAR (AND) - ADAGFX_PORT_t rdPinMaskSet; ///< Bitmask for read strobe SET (OR) - ADAGFX_PORT_t rdPinMaskClr; ///< Bitmask for read strobe CLEAR (AND) -#endif // end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO - int8_t _d0; ///< Data pin 0 # - int8_t _wr; ///< Write strobe pin # - int8_t _rd; ///< Read strobe pin # (or -1) - bool wide = 0; ///< If true, is 16-bit interface - } tft8; ///< Parallel interface settings -#if defined(__cplusplus) && (__cplusplus >= 201100) - }; ///< Only one interface is active -#endif -#if defined(USE_SPI_DMA) && \ - (defined(__SAMD51__) || \ - defined(ARDUINO_SAMD_ZERO)) // Used by hardware SPI and tft8 - Adafruit_ZeroDMA dma; ///< DMA instance - DmacDescriptor *dptr = NULL; ///< 1st descriptor - DmacDescriptor *descriptor = NULL; ///< Allocated descriptor list - uint16_t *pixelBuf[2]; ///< Working buffers - uint16_t maxFillLen; ///< Max pixels per DMA xfer - uint16_t lastFillColor = 0; ///< Last color used w/fill - uint32_t lastFillLen = 0; ///< # of pixels w/last fill - uint8_t onePixelBuf; ///< For hi==lo fill -#endif -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if !defined(KINETISK) - ADAGFX_PORT_t csPinMask; ///< Bitmask for chip select - ADAGFX_PORT_t dcPinMask; ///< Bitmask for data/command -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - ADAGFX_PORT_t csPinMaskSet; ///< Bitmask for chip select SET (OR) - ADAGFX_PORT_t csPinMaskClr; ///< Bitmask for chip select CLEAR (AND) - ADAGFX_PORT_t dcPinMaskSet; ///< Bitmask for data/command SET (OR) - ADAGFX_PORT_t dcPinMaskClr; ///< Bitmask for data/command CLEAR (AND) -#endif // end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO - uint8_t connection; ///< TFT_HARD_SPI, TFT_SOFT_SPI, etc. - int8_t _rst; ///< Reset pin # (or -1) - int8_t _cs; ///< Chip select pin # (or -1) - int8_t _dc; ///< Data/command pin # - - int16_t _xstart = 0; ///< Internal framebuffer X offset - int16_t _ystart = 0; ///< Internal framebuffer Y offset - uint8_t invertOnCommand = 0; ///< Command to enable invert mode - uint8_t invertOffCommand = 0; ///< Command to disable invert mode - - uint32_t _freq = 0; ///< Dummy var to keep subclasses happy -}; - -#endif // end __AVR_ATtiny85__ __AVR_ATtiny84__ -#endif // end _ADAFRUIT_SPITFT_H_ diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT_Macros.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT_Macros.h deleted file mode 100644 index fcd6253..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Adafruit_SPITFT_Macros.h +++ /dev/null @@ -1,6 +0,0 @@ -// THIS FILE INTENTIONALLY LEFT BLANK. - -// Macros previously #defined here have been made into (mostly) inline -// functions in the Adafruit_SPITFT class. Other libraries might still -// contain code trying to #include this header file, so until everything's -// updated this file still exists (but doing nothing) to avoid trouble. diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/CMakeLists.txt b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/CMakeLists.txt deleted file mode 100644 index 531c721..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/CMakeLists.txt +++ /dev/null @@ -1,11 +0,0 @@ -# Adafruit GFX Library -# https://github.com/adafruit/Adafruit-GFX-Library -# BSD License - -cmake_minimum_required(VERSION 3.5) - -idf_component_register(SRCS "Adafruit_GFX.cpp" "Adafruit_GrayOLED.cpp" "Adafruit_SPITFT.cpp" "glcdfont.c" - INCLUDE_DIRS "." - REQUIRES arduino Adafruit_BusIO) - -project(Adafruit-GFX-Library) diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono12pt7b.h deleted file mode 100644 index d124f20..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono12pt7b.h +++ /dev/null @@ -1,229 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono12pt7bBitmaps[] PROGMEM = { - 0x49, 0x24, 0x92, 0x48, 0x01, 0xF8, 0xE7, 0xE7, 0x67, 0x42, 0x42, 0x42, - 0x42, 0x09, 0x02, 0x41, 0x10, 0x44, 0x11, 0x1F, 0xF1, 0x10, 0x4C, 0x12, - 0x3F, 0xE1, 0x20, 0x48, 0x12, 0x04, 0x81, 0x20, 0x48, 0x04, 0x07, 0xA2, - 0x19, 0x02, 0x40, 0x10, 0x03, 0x00, 0x3C, 0x00, 0x80, 0x10, 0x06, 0x01, - 0xE0, 0xA7, 0xC0, 0x40, 0x10, 0x04, 0x00, 0x3C, 0x19, 0x84, 0x21, 0x08, - 0x66, 0x0F, 0x00, 0x0C, 0x1C, 0x78, 0x01, 0xE0, 0xCC, 0x21, 0x08, 0x43, - 0x30, 0x78, 0x3E, 0x30, 0x10, 0x08, 0x02, 0x03, 0x03, 0x47, 0x14, 0x8A, - 0x43, 0x11, 0x8F, 0x60, 0xFD, 0xA4, 0x90, 0x05, 0x25, 0x24, 0x92, 0x48, - 0x92, 0x24, 0x11, 0x24, 0x89, 0x24, 0x92, 0x92, 0x90, 0x00, 0x04, 0x02, - 0x11, 0x07, 0xF0, 0xC0, 0x50, 0x48, 0x42, 0x00, 0x08, 0x04, 0x02, 0x01, - 0x00, 0x87, 0xFC, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, 0x3B, 0x9C, 0xCE, - 0x62, 0x00, 0xFF, 0xE0, 0xFF, 0x80, 0x00, 0x80, 0xC0, 0x40, 0x20, 0x20, - 0x10, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0x00, 0x80, - 0x80, 0x40, 0x00, 0x1C, 0x31, 0x90, 0x58, 0x38, 0x0C, 0x06, 0x03, 0x01, - 0x80, 0xC0, 0x60, 0x30, 0x34, 0x13, 0x18, 0x70, 0x30, 0xE1, 0x44, 0x81, - 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x81, 0x1F, 0xC0, 0x1E, 0x10, 0x90, - 0x68, 0x10, 0x08, 0x0C, 0x04, 0x04, 0x04, 0x06, 0x06, 0x06, 0x06, 0x0E, - 0x07, 0xFE, 0x3E, 0x10, 0x40, 0x08, 0x02, 0x00, 0x80, 0x40, 0xE0, 0x04, - 0x00, 0x80, 0x10, 0x04, 0x01, 0x00, 0xD8, 0x63, 0xE0, 0x06, 0x0A, 0x0A, - 0x12, 0x22, 0x22, 0x42, 0x42, 0x82, 0x82, 0xFF, 0x02, 0x02, 0x02, 0x0F, - 0x7F, 0x20, 0x10, 0x08, 0x04, 0x02, 0xF1, 0x8C, 0x03, 0x00, 0x80, 0x40, - 0x20, 0x18, 0x16, 0x18, 0xF0, 0x0F, 0x8C, 0x08, 0x08, 0x04, 0x04, 0x02, - 0x79, 0x46, 0xC1, 0xE0, 0x60, 0x28, 0x14, 0x19, 0x08, 0x78, 0xFF, 0x81, - 0x81, 0x02, 0x02, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08, - 0x08, 0x3E, 0x31, 0xB0, 0x70, 0x18, 0x0C, 0x05, 0x8C, 0x38, 0x63, 0x40, - 0x60, 0x30, 0x18, 0x1B, 0x18, 0xF8, 0x3C, 0x31, 0x30, 0x50, 0x28, 0x0C, - 0x0F, 0x06, 0x85, 0x3C, 0x80, 0x40, 0x40, 0x20, 0x20, 0x63, 0xE0, 0xFF, - 0x80, 0x07, 0xFC, 0x39, 0xCE, 0x00, 0x00, 0x06, 0x33, 0x98, 0xC4, 0x00, - 0x00, 0xC0, 0x60, 0x18, 0x0C, 0x06, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, - 0x00, 0x30, 0x01, 0x00, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xC0, 0x06, - 0x00, 0x30, 0x01, 0x80, 0x18, 0x01, 0x80, 0xC0, 0x30, 0x18, 0x0C, 0x02, - 0x00, 0x00, 0x3E, 0x60, 0xA0, 0x20, 0x10, 0x08, 0x08, 0x18, 0x10, 0x08, - 0x00, 0x00, 0x00, 0x01, 0xC0, 0xE0, 0x1C, 0x31, 0x10, 0x50, 0x28, 0x14, - 0x3A, 0x25, 0x22, 0x91, 0x4C, 0xA3, 0xF0, 0x08, 0x02, 0x01, 0x80, 0x7C, - 0x3F, 0x00, 0x0C, 0x00, 0x48, 0x01, 0x20, 0x04, 0x40, 0x21, 0x00, 0x84, - 0x04, 0x08, 0x1F, 0xE0, 0x40, 0x82, 0x01, 0x08, 0x04, 0x20, 0x13, 0xE1, - 0xF0, 0xFF, 0x08, 0x11, 0x01, 0x20, 0x24, 0x04, 0x81, 0x1F, 0xC2, 0x06, - 0x40, 0x68, 0x05, 0x00, 0xA0, 0x14, 0x05, 0xFF, 0x00, 0x1E, 0x48, 0x74, - 0x05, 0x01, 0x80, 0x20, 0x08, 0x02, 0x00, 0x80, 0x20, 0x04, 0x01, 0x01, - 0x30, 0x87, 0xC0, 0xFE, 0x10, 0x44, 0x09, 0x02, 0x40, 0x50, 0x14, 0x05, - 0x01, 0x40, 0x50, 0x14, 0x0D, 0x02, 0x41, 0x3F, 0x80, 0xFF, 0xC8, 0x09, - 0x01, 0x20, 0x04, 0x00, 0x88, 0x1F, 0x02, 0x20, 0x40, 0x08, 0x01, 0x00, - 0xA0, 0x14, 0x03, 0xFF, 0xC0, 0xFF, 0xE8, 0x05, 0x00, 0xA0, 0x04, 0x00, - 0x88, 0x1F, 0x02, 0x20, 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x01, 0xF0, - 0x00, 0x1F, 0x46, 0x19, 0x01, 0x60, 0x28, 0x01, 0x00, 0x20, 0x04, 0x00, - 0x83, 0xF0, 0x0B, 0x01, 0x20, 0x23, 0x0C, 0x3E, 0x00, 0xE1, 0xD0, 0x24, - 0x09, 0x02, 0x40, 0x90, 0x27, 0xF9, 0x02, 0x40, 0x90, 0x24, 0x09, 0x02, - 0x40, 0xB8, 0x70, 0xFE, 0x20, 0x40, 0x81, 0x02, 0x04, 0x08, 0x10, 0x20, - 0x40, 0x81, 0x1F, 0xC0, 0x0F, 0xE0, 0x10, 0x02, 0x00, 0x40, 0x08, 0x01, - 0x00, 0x20, 0x04, 0x80, 0x90, 0x12, 0x02, 0x40, 0xC6, 0x30, 0x7C, 0x00, - 0xF1, 0xE4, 0x0C, 0x41, 0x04, 0x20, 0x44, 0x04, 0x80, 0x5C, 0x06, 0x60, - 0x43, 0x04, 0x10, 0x40, 0x84, 0x08, 0x40, 0xCF, 0x07, 0xF8, 0x04, 0x00, - 0x80, 0x10, 0x02, 0x00, 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x04, 0x80, - 0x90, 0x12, 0x03, 0xFF, 0xC0, 0xE0, 0x3B, 0x01, 0x94, 0x14, 0xA0, 0xA4, - 0x89, 0x24, 0x49, 0x14, 0x48, 0xA2, 0x45, 0x12, 0x10, 0x90, 0x04, 0x80, - 0x24, 0x01, 0x78, 0x3C, 0xE0, 0xF6, 0x02, 0x50, 0x25, 0x02, 0x48, 0x24, - 0xC2, 0x44, 0x24, 0x22, 0x43, 0x24, 0x12, 0x40, 0xA4, 0x0A, 0x40, 0x6F, - 0x06, 0x0F, 0x03, 0x0C, 0x60, 0x64, 0x02, 0x80, 0x18, 0x01, 0x80, 0x18, - 0x01, 0x80, 0x18, 0x01, 0x40, 0x26, 0x06, 0x30, 0xC0, 0xF0, 0xFF, 0x10, - 0x64, 0x05, 0x01, 0x40, 0x50, 0x34, 0x19, 0xFC, 0x40, 0x10, 0x04, 0x01, - 0x00, 0x40, 0x3E, 0x00, 0x0F, 0x03, 0x0C, 0x60, 0x64, 0x02, 0x80, 0x18, - 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x01, 0x40, 0x26, 0x06, 0x30, 0xC1, - 0xF0, 0x0C, 0x01, 0xF1, 0x30, 0xE0, 0xFF, 0x04, 0x18, 0x40, 0xC4, 0x04, - 0x40, 0x44, 0x0C, 0x41, 0x87, 0xE0, 0x43, 0x04, 0x10, 0x40, 0x84, 0x04, - 0x40, 0x4F, 0x03, 0x1F, 0x48, 0x34, 0x05, 0x01, 0x40, 0x08, 0x01, 0xC0, - 0x0E, 0x00, 0x40, 0x18, 0x06, 0x01, 0xE1, 0xA7, 0xC0, 0xFF, 0xF0, 0x86, - 0x10, 0x82, 0x00, 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, - 0x02, 0x00, 0x40, 0x7F, 0x00, 0xF0, 0xF4, 0x02, 0x40, 0x24, 0x02, 0x40, - 0x24, 0x02, 0x40, 0x24, 0x02, 0x40, 0x24, 0x02, 0x40, 0x22, 0x04, 0x30, - 0xC0, 0xF0, 0xF8, 0x7C, 0x80, 0x22, 0x01, 0x04, 0x04, 0x10, 0x20, 0x40, - 0x80, 0x82, 0x02, 0x10, 0x08, 0x40, 0x11, 0x00, 0x48, 0x01, 0xA0, 0x03, - 0x00, 0x0C, 0x00, 0xF8, 0x7C, 0x80, 0x22, 0x00, 0x88, 0xC2, 0x23, 0x10, - 0x8E, 0x42, 0x29, 0x09, 0x24, 0x24, 0x90, 0x91, 0x41, 0x85, 0x06, 0x14, - 0x18, 0x70, 0x60, 0x80, 0xF0, 0xF2, 0x06, 0x30, 0x41, 0x08, 0x09, 0x80, - 0x50, 0x06, 0x00, 0x60, 0x0D, 0x00, 0x88, 0x10, 0xC2, 0x04, 0x60, 0x2F, - 0x0F, 0xF0, 0xF2, 0x02, 0x10, 0x41, 0x04, 0x08, 0x80, 0x50, 0x05, 0x00, - 0x20, 0x02, 0x00, 0x20, 0x02, 0x00, 0x20, 0x02, 0x01, 0xFC, 0xFF, 0x40, - 0xA0, 0x90, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x10, 0x50, 0x30, 0x18, - 0x0F, 0xFC, 0xF2, 0x49, 0x24, 0x92, 0x49, 0x24, 0x9C, 0x80, 0x60, 0x10, - 0x08, 0x02, 0x01, 0x00, 0x40, 0x20, 0x08, 0x04, 0x01, 0x00, 0x80, 0x20, - 0x10, 0x04, 0x02, 0x00, 0x80, 0x40, 0xE4, 0x92, 0x49, 0x24, 0x92, 0x49, - 0x3C, 0x08, 0x0C, 0x09, 0x0C, 0x4C, 0x14, 0x04, 0xFF, 0xFC, 0x84, 0x21, - 0x3E, 0x00, 0x60, 0x08, 0x02, 0x3F, 0x98, 0x28, 0x0A, 0x02, 0xC3, 0x9F, - 0x30, 0xE0, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, 0x13, 0xE0, 0xA0, - 0x86, 0x02, 0x20, 0x09, 0x00, 0x48, 0x02, 0x40, 0x13, 0x01, 0x14, 0x1B, - 0x9F, 0x00, 0x1F, 0x4C, 0x19, 0x01, 0x40, 0x28, 0x01, 0x00, 0x20, 0x02, - 0x00, 0x60, 0x43, 0xF0, 0x00, 0xC0, 0x08, 0x01, 0x00, 0x20, 0x04, 0x3C, - 0x98, 0x52, 0x06, 0x80, 0x50, 0x0A, 0x01, 0x40, 0x24, 0x0C, 0xC2, 0x87, - 0x98, 0x3F, 0x18, 0x68, 0x06, 0x01, 0xFF, 0xE0, 0x08, 0x03, 0x00, 0x60, - 0xC7, 0xC0, 0x0F, 0x98, 0x08, 0x04, 0x02, 0x07, 0xF8, 0x80, 0x40, 0x20, - 0x10, 0x08, 0x04, 0x02, 0x01, 0x03, 0xF8, 0x1E, 0x6C, 0x39, 0x03, 0x40, - 0x28, 0x05, 0x00, 0xA0, 0x12, 0x06, 0x61, 0x43, 0xC8, 0x01, 0x00, 0x20, - 0x08, 0x3E, 0x00, 0xC0, 0x10, 0x04, 0x01, 0x00, 0x40, 0x13, 0x87, 0x11, - 0x82, 0x40, 0x90, 0x24, 0x09, 0x02, 0x40, 0x90, 0x2E, 0x1C, 0x08, 0x04, - 0x02, 0x00, 0x00, 0x03, 0xC0, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00, - 0x80, 0x43, 0xFE, 0x04, 0x08, 0x10, 0x00, 0x1F, 0xC0, 0x81, 0x02, 0x04, - 0x08, 0x10, 0x20, 0x40, 0x81, 0x02, 0x0B, 0xE0, 0xE0, 0x02, 0x00, 0x20, - 0x02, 0x00, 0x20, 0x02, 0x3C, 0x21, 0x02, 0x60, 0x2C, 0x03, 0x80, 0x24, - 0x02, 0x20, 0x21, 0x02, 0x08, 0xE1, 0xF0, 0x78, 0x04, 0x02, 0x01, 0x00, - 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00, 0x80, 0x43, 0xFE, - 0xDC, 0xE3, 0x19, 0x90, 0x84, 0x84, 0x24, 0x21, 0x21, 0x09, 0x08, 0x48, - 0x42, 0x42, 0x17, 0x18, 0xC0, 0x67, 0x83, 0x84, 0x20, 0x22, 0x02, 0x20, - 0x22, 0x02, 0x20, 0x22, 0x02, 0x20, 0x2F, 0x07, 0x1F, 0x04, 0x11, 0x01, - 0x40, 0x18, 0x03, 0x00, 0x60, 0x0A, 0x02, 0x20, 0x83, 0xE0, 0xCF, 0x85, - 0x06, 0x60, 0x24, 0x01, 0x40, 0x14, 0x01, 0x40, 0x16, 0x02, 0x50, 0x44, - 0xF8, 0x40, 0x04, 0x00, 0x40, 0x0F, 0x00, 0x1E, 0x6C, 0x3B, 0x03, 0x40, - 0x28, 0x05, 0x00, 0xA0, 0x12, 0x06, 0x61, 0x43, 0xC8, 0x01, 0x00, 0x20, - 0x04, 0x03, 0xC0, 0xE3, 0x8B, 0x13, 0x80, 0x80, 0x20, 0x08, 0x02, 0x00, - 0x80, 0x20, 0x3F, 0x80, 0x1F, 0x58, 0x34, 0x05, 0x80, 0x1E, 0x00, 0x60, - 0x06, 0x01, 0xC0, 0xAF, 0xC0, 0x20, 0x04, 0x00, 0x80, 0x10, 0x0F, 0xF0, - 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, 0x03, 0x04, 0x3F, - 0x00, 0xC1, 0xC8, 0x09, 0x01, 0x20, 0x24, 0x04, 0x80, 0x90, 0x12, 0x02, - 0x61, 0xC7, 0xCC, 0xF8, 0xF9, 0x01, 0x08, 0x10, 0x60, 0x81, 0x08, 0x08, - 0x40, 0x22, 0x01, 0x20, 0x05, 0x00, 0x30, 0x00, 0xF0, 0x7A, 0x01, 0x10, - 0x08, 0x8C, 0x42, 0x62, 0x12, 0x90, 0xA5, 0x05, 0x18, 0x28, 0xC0, 0x86, - 0x00, 0x78, 0xF3, 0x04, 0x18, 0x80, 0xD0, 0x06, 0x00, 0x70, 0x09, 0x81, - 0x0C, 0x20, 0x6F, 0x8F, 0xF0, 0xF2, 0x02, 0x20, 0x41, 0x04, 0x10, 0x80, - 0x88, 0x09, 0x00, 0x50, 0x06, 0x00, 0x20, 0x04, 0x00, 0x40, 0x08, 0x0F, - 0xE0, 0xFF, 0x41, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0xBF, - 0xC0, 0x19, 0x08, 0x42, 0x10, 0x84, 0x64, 0x18, 0x42, 0x10, 0x84, 0x20, - 0xC0, 0xFF, 0xFF, 0xC0, 0xC1, 0x08, 0x42, 0x10, 0x84, 0x10, 0x4C, 0x42, - 0x10, 0x84, 0x26, 0x00, 0x38, 0x13, 0x38, 0x38}; - -const GFXglyph FreeMono12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 3, 15, 14, 6, -14}, // 0x21 '!' - {6, 8, 7, 14, 3, -14}, // 0x22 '"' - {13, 10, 16, 14, 2, -14}, // 0x23 '#' - {33, 10, 17, 14, 2, -14}, // 0x24 '$' - {55, 10, 15, 14, 2, -14}, // 0x25 '%' - {74, 9, 12, 14, 3, -11}, // 0x26 '&' - {88, 3, 7, 14, 5, -14}, // 0x27 ''' - {91, 3, 18, 14, 7, -14}, // 0x28 '(' - {98, 3, 18, 14, 4, -14}, // 0x29 ')' - {105, 9, 9, 14, 3, -14}, // 0x2A '*' - {116, 9, 11, 14, 3, -11}, // 0x2B '+' - {129, 5, 7, 14, 3, -3}, // 0x2C ',' - {134, 11, 1, 14, 2, -6}, // 0x2D '-' - {136, 3, 3, 14, 5, -2}, // 0x2E '.' - {138, 9, 18, 14, 3, -15}, // 0x2F '/' - {159, 9, 15, 14, 3, -14}, // 0x30 '0' - {176, 7, 14, 14, 4, -13}, // 0x31 '1' - {189, 9, 15, 14, 2, -14}, // 0x32 '2' - {206, 10, 15, 14, 2, -14}, // 0x33 '3' - {225, 8, 15, 14, 3, -14}, // 0x34 '4' - {240, 9, 15, 14, 3, -14}, // 0x35 '5' - {257, 9, 15, 14, 3, -14}, // 0x36 '6' - {274, 8, 15, 14, 3, -14}, // 0x37 '7' - {289, 9, 15, 14, 3, -14}, // 0x38 '8' - {306, 9, 15, 14, 3, -14}, // 0x39 '9' - {323, 3, 10, 14, 5, -9}, // 0x3A ':' - {327, 5, 13, 14, 3, -9}, // 0x3B ';' - {336, 11, 11, 14, 2, -11}, // 0x3C '<' - {352, 12, 4, 14, 1, -8}, // 0x3D '=' - {358, 11, 11, 14, 2, -11}, // 0x3E '>' - {374, 9, 14, 14, 3, -13}, // 0x3F '?' - {390, 9, 16, 14, 3, -14}, // 0x40 '@' - {408, 14, 14, 14, 0, -13}, // 0x41 'A' - {433, 11, 14, 14, 2, -13}, // 0x42 'B' - {453, 10, 14, 14, 2, -13}, // 0x43 'C' - {471, 10, 14, 14, 2, -13}, // 0x44 'D' - {489, 11, 14, 14, 2, -13}, // 0x45 'E' - {509, 11, 14, 14, 2, -13}, // 0x46 'F' - {529, 11, 14, 14, 2, -13}, // 0x47 'G' - {549, 10, 14, 14, 2, -13}, // 0x48 'H' - {567, 7, 14, 14, 4, -13}, // 0x49 'I' - {580, 11, 14, 14, 2, -13}, // 0x4A 'J' - {600, 12, 14, 14, 2, -13}, // 0x4B 'K' - {621, 11, 14, 14, 2, -13}, // 0x4C 'L' - {641, 13, 14, 14, 1, -13}, // 0x4D 'M' - {664, 12, 14, 14, 1, -13}, // 0x4E 'N' - {685, 12, 14, 14, 1, -13}, // 0x4F 'O' - {706, 10, 14, 14, 2, -13}, // 0x50 'P' - {724, 12, 17, 14, 1, -13}, // 0x51 'Q' - {750, 12, 14, 14, 2, -13}, // 0x52 'R' - {771, 10, 14, 14, 2, -13}, // 0x53 'S' - {789, 11, 14, 14, 2, -13}, // 0x54 'T' - {809, 12, 14, 14, 1, -13}, // 0x55 'U' - {830, 14, 14, 14, 0, -13}, // 0x56 'V' - {855, 14, 14, 14, 0, -13}, // 0x57 'W' - {880, 12, 14, 14, 1, -13}, // 0x58 'X' - {901, 12, 14, 14, 1, -13}, // 0x59 'Y' - {922, 9, 14, 14, 3, -13}, // 0x5A 'Z' - {938, 3, 18, 14, 7, -14}, // 0x5B '[' - {945, 9, 18, 14, 3, -15}, // 0x5C '\' - {966, 3, 18, 14, 5, -14}, // 0x5D ']' - {973, 9, 6, 14, 3, -14}, // 0x5E '^' - {980, 14, 1, 14, 0, 3}, // 0x5F '_' - {982, 4, 4, 14, 4, -15}, // 0x60 '`' - {984, 10, 10, 14, 2, -9}, // 0x61 'a' - {997, 13, 15, 14, 0, -14}, // 0x62 'b' - {1022, 11, 10, 14, 2, -9}, // 0x63 'c' - {1036, 11, 15, 14, 2, -14}, // 0x64 'd' - {1057, 10, 10, 14, 2, -9}, // 0x65 'e' - {1070, 9, 15, 14, 4, -14}, // 0x66 'f' - {1087, 11, 14, 14, 2, -9}, // 0x67 'g' - {1107, 10, 15, 14, 2, -14}, // 0x68 'h' - {1126, 9, 15, 14, 3, -14}, // 0x69 'i' - {1143, 7, 19, 14, 3, -14}, // 0x6A 'j' - {1160, 12, 15, 14, 1, -14}, // 0x6B 'k' - {1183, 9, 15, 14, 3, -14}, // 0x6C 'l' - {1200, 13, 10, 14, 1, -9}, // 0x6D 'm' - {1217, 12, 10, 14, 1, -9}, // 0x6E 'n' - {1232, 11, 10, 14, 2, -9}, // 0x6F 'o' - {1246, 12, 14, 14, 1, -9}, // 0x70 'p' - {1267, 11, 14, 14, 2, -9}, // 0x71 'q' - {1287, 10, 10, 14, 3, -9}, // 0x72 'r' - {1300, 10, 10, 14, 2, -9}, // 0x73 's' - {1313, 11, 14, 14, 1, -13}, // 0x74 't' - {1333, 11, 10, 14, 2, -9}, // 0x75 'u' - {1347, 13, 10, 14, 1, -9}, // 0x76 'v' - {1364, 13, 10, 14, 1, -9}, // 0x77 'w' - {1381, 12, 10, 14, 1, -9}, // 0x78 'x' - {1396, 12, 14, 14, 1, -9}, // 0x79 'y' - {1417, 9, 10, 14, 3, -9}, // 0x7A 'z' - {1429, 5, 18, 14, 5, -14}, // 0x7B '{' - {1441, 1, 18, 14, 7, -14}, // 0x7C '|' - {1444, 5, 18, 14, 5, -14}, // 0x7D '}' - {1456, 10, 3, 14, 2, -7}}; // 0x7E '~' - -const GFXfont FreeMono12pt7b PROGMEM = {(uint8_t *)FreeMono12pt7bBitmaps, - (GFXglyph *)FreeMono12pt7bGlyphs, 0x20, - 0x7E, 24}; - -// Approx. 2132 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono18pt7b.h deleted file mode 100644 index 6a3641c..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono18pt7b.h +++ /dev/null @@ -1,365 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono18pt7bBitmaps[] PROGMEM = { - 0x27, 0x77, 0x77, 0x77, 0x77, 0x22, 0x22, 0x20, 0x00, 0x6F, 0xF6, 0xF1, - 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1E, 0xC3, 0x98, 0x33, 0x06, 0x60, 0xCC, - 0x18, 0x04, 0x20, 0x10, 0x80, 0x42, 0x01, 0x08, 0x04, 0x20, 0x10, 0x80, - 0x42, 0x01, 0x10, 0x04, 0x41, 0xFF, 0xF0, 0x44, 0x02, 0x10, 0x08, 0x40, - 0x21, 0x0F, 0xFF, 0xC2, 0x10, 0x08, 0x40, 0x21, 0x00, 0x84, 0x02, 0x10, - 0x08, 0x40, 0x23, 0x00, 0x88, 0x02, 0x20, 0x02, 0x00, 0x10, 0x00, 0x80, - 0x1F, 0xA3, 0x07, 0x10, 0x09, 0x00, 0x48, 0x00, 0x40, 0x03, 0x00, 0x0C, - 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x18, 0x00, 0x20, 0x01, 0x80, 0x0C, 0x00, - 0x70, 0x05, 0xE0, 0xC9, 0xF8, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, - 0x10, 0x00, 0x1E, 0x00, 0x42, 0x01, 0x02, 0x02, 0x04, 0x04, 0x08, 0x08, - 0x10, 0x08, 0x40, 0x0F, 0x00, 0x00, 0x1E, 0x01, 0xF0, 0x1F, 0x01, 0xE0, - 0x0E, 0x00, 0x00, 0x3C, 0x00, 0x86, 0x02, 0x06, 0x04, 0x04, 0x08, 0x08, - 0x10, 0x30, 0x10, 0xC0, 0x1E, 0x00, 0x0F, 0xC1, 0x00, 0x20, 0x02, 0x00, - 0x20, 0x02, 0x00, 0x10, 0x01, 0x00, 0x08, 0x03, 0xC0, 0x6C, 0x3C, 0x62, - 0x82, 0x68, 0x34, 0x81, 0xCC, 0x08, 0x61, 0xC3, 0xE7, 0xFF, 0xFF, 0xF6, - 0x66, 0x66, 0x08, 0xC4, 0x62, 0x31, 0x8C, 0xC6, 0x31, 0x8C, 0x63, 0x18, - 0xC3, 0x18, 0xC2, 0x18, 0xC3, 0x18, 0x86, 0x10, 0xC2, 0x18, 0xC6, 0x10, - 0xC6, 0x31, 0x8C, 0x63, 0x18, 0x8C, 0x62, 0x31, 0x98, 0x80, 0x02, 0x00, - 0x10, 0x00, 0x80, 0x04, 0x0C, 0x21, 0x9D, 0x70, 0x1C, 0x00, 0xA0, 0x0D, - 0x80, 0xC6, 0x04, 0x10, 0x40, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, - 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0xFF, 0xFE, 0x02, - 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, - 0x01, 0x00, 0x3E, 0x78, 0xF3, 0xC7, 0x8E, 0x18, 0x70, 0xC1, 0x80, 0xFF, - 0xFE, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x08, 0x00, 0xC0, 0x04, 0x00, 0x60, - 0x02, 0x00, 0x30, 0x01, 0x00, 0x18, 0x00, 0x80, 0x0C, 0x00, 0x40, 0x02, - 0x00, 0x20, 0x01, 0x00, 0x10, 0x00, 0x80, 0x08, 0x00, 0x40, 0x04, 0x00, - 0x20, 0x02, 0x00, 0x10, 0x01, 0x00, 0x08, 0x00, 0x80, 0x04, 0x00, 0x00, - 0x0F, 0x81, 0x82, 0x08, 0x08, 0x80, 0x24, 0x01, 0x60, 0x0E, 0x00, 0x30, - 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x06, 0x00, - 0x30, 0x03, 0x40, 0x12, 0x00, 0x88, 0x08, 0x60, 0xC0, 0xF8, 0x00, 0x06, - 0x00, 0x70, 0x06, 0x80, 0x64, 0x06, 0x20, 0x31, 0x00, 0x08, 0x00, 0x40, - 0x02, 0x00, 0x10, 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, - 0x40, 0x02, 0x00, 0x10, 0x00, 0x80, 0x04, 0x0F, 0xFF, 0x80, 0x0F, 0x80, - 0xC3, 0x08, 0x04, 0x80, 0x24, 0x00, 0x80, 0x04, 0x00, 0x20, 0x02, 0x00, - 0x10, 0x01, 0x00, 0x10, 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x01, 0x80, - 0x18, 0x01, 0x80, 0x58, 0x03, 0x80, 0x1F, 0xFF, 0x80, 0x0F, 0xC0, 0xC0, - 0x86, 0x01, 0x00, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x04, 0x00, - 0x20, 0x0F, 0x00, 0x06, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x40, - 0x01, 0x00, 0x04, 0x00, 0x2C, 0x01, 0x9C, 0x0C, 0x0F, 0xC0, 0x01, 0xC0, - 0x14, 0x02, 0x40, 0x64, 0x04, 0x40, 0xC4, 0x08, 0x41, 0x84, 0x10, 0x42, - 0x04, 0x20, 0x44, 0x04, 0x40, 0x48, 0x04, 0xFF, 0xF0, 0x04, 0x00, 0x40, - 0x04, 0x00, 0x40, 0x04, 0x07, 0xF0, 0x3F, 0xF0, 0x80, 0x02, 0x00, 0x08, - 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x0B, 0xF0, 0x30, 0x30, 0x00, 0x60, - 0x00, 0x80, 0x01, 0x00, 0x04, 0x00, 0x10, 0x00, 0x40, 0x01, 0x00, 0x0E, - 0x00, 0x2C, 0x01, 0x0C, 0x18, 0x0F, 0xC0, 0x01, 0xF0, 0x60, 0x18, 0x03, - 0x00, 0x20, 0x04, 0x00, 0x40, 0x0C, 0x00, 0x80, 0x08, 0xF8, 0x98, 0x4A, - 0x02, 0xE0, 0x3C, 0x01, 0x80, 0x14, 0x01, 0x40, 0x14, 0x03, 0x20, 0x21, - 0x0C, 0x0F, 0x80, 0xFF, 0xF8, 0x01, 0x80, 0x18, 0x03, 0x00, 0x20, 0x02, - 0x00, 0x20, 0x04, 0x00, 0x40, 0x04, 0x00, 0xC0, 0x08, 0x00, 0x80, 0x18, - 0x01, 0x00, 0x10, 0x01, 0x00, 0x30, 0x02, 0x00, 0x20, 0x02, 0x00, 0x0F, - 0x81, 0x83, 0x10, 0x05, 0x80, 0x38, 0x00, 0xC0, 0x06, 0x00, 0x30, 0x03, - 0x40, 0x11, 0x83, 0x07, 0xF0, 0x60, 0xC4, 0x01, 0x60, 0x0E, 0x00, 0x30, - 0x01, 0x80, 0x0E, 0x00, 0xD0, 0x04, 0x60, 0xC1, 0xFC, 0x00, 0x1F, 0x03, - 0x08, 0x40, 0x4C, 0x02, 0x80, 0x28, 0x02, 0x80, 0x18, 0x03, 0xC0, 0x74, - 0x05, 0x21, 0x91, 0xF1, 0x00, 0x10, 0x03, 0x00, 0x20, 0x02, 0x00, 0x40, - 0x0C, 0x01, 0x80, 0x60, 0xF8, 0x00, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, - 0x1D, 0xFF, 0xFD, 0xC0, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, 0x00, - 0x00, 0xF1, 0xE3, 0x8F, 0x1C, 0x38, 0xE1, 0xC3, 0x06, 0x00, 0x00, 0x06, - 0x00, 0x18, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x06, 0x00, 0x38, - 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x18, 0x00, 0x1C, 0x00, 0x0E, - 0x00, 0x07, 0x00, 0x03, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x07, 0xFF, 0xFC, 0xC0, 0x00, 0xC0, 0x00, 0xE0, 0x00, 0x70, - 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0C, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x70, - 0x03, 0x80, 0x0C, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0x60, 0x00, 0x3F, - 0x8E, 0x0C, 0x80, 0x28, 0x01, 0x80, 0x10, 0x01, 0x00, 0x10, 0x02, 0x00, - 0xC0, 0x38, 0x06, 0x00, 0x40, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, - 0x01, 0xF0, 0x1F, 0x00, 0xE0, 0x0F, 0x01, 0x86, 0x08, 0x08, 0x80, 0x24, - 0x01, 0x40, 0x0A, 0x00, 0x50, 0x1E, 0x83, 0x14, 0x20, 0xA2, 0x05, 0x10, - 0x28, 0x81, 0x46, 0x0A, 0x18, 0x50, 0x3F, 0x80, 0x04, 0x00, 0x10, 0x00, - 0x80, 0x02, 0x00, 0x18, 0x18, 0x3F, 0x00, 0x1F, 0xF0, 0x00, 0x06, 0x80, - 0x00, 0x34, 0x00, 0x01, 0x30, 0x00, 0x18, 0x80, 0x00, 0x86, 0x00, 0x04, - 0x30, 0x00, 0x60, 0x80, 0x02, 0x06, 0x00, 0x10, 0x10, 0x01, 0x80, 0x80, - 0x08, 0x06, 0x00, 0x7F, 0xF0, 0x06, 0x00, 0x80, 0x20, 0x06, 0x01, 0x00, - 0x10, 0x18, 0x00, 0xC0, 0x80, 0x06, 0x04, 0x00, 0x11, 0xFC, 0x0F, 0xF0, - 0xFF, 0xF8, 0x04, 0x01, 0x01, 0x00, 0x20, 0x40, 0x04, 0x10, 0x01, 0x04, - 0x00, 0x41, 0x00, 0x10, 0x40, 0x08, 0x10, 0x0C, 0x07, 0xFF, 0x01, 0x00, - 0x70, 0x40, 0x06, 0x10, 0x00, 0x84, 0x00, 0x11, 0x00, 0x04, 0x40, 0x01, - 0x10, 0x00, 0x44, 0x00, 0x21, 0x00, 0x33, 0xFF, 0xF8, 0x03, 0xF1, 0x06, - 0x0E, 0x8C, 0x01, 0xC4, 0x00, 0x64, 0x00, 0x12, 0x00, 0x0A, 0x00, 0x01, - 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, 0x08, 0x00, - 0x04, 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x20, 0x01, 0x88, 0x01, 0x83, - 0x03, 0x80, 0x7E, 0x00, 0xFF, 0xE0, 0x20, 0x18, 0x20, 0x0C, 0x20, 0x04, - 0x20, 0x02, 0x20, 0x02, 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, - 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, 0x20, 0x02, 0x20, 0x02, - 0x20, 0x04, 0x20, 0x0C, 0x20, 0x18, 0xFF, 0xE0, 0xFF, 0xFF, 0x08, 0x00, - 0x84, 0x00, 0x42, 0x00, 0x21, 0x00, 0x10, 0x80, 0x00, 0x40, 0x00, 0x20, - 0x40, 0x10, 0x20, 0x0F, 0xF0, 0x04, 0x08, 0x02, 0x04, 0x01, 0x00, 0x00, - 0x80, 0x00, 0x40, 0x02, 0x20, 0x01, 0x10, 0x00, 0x88, 0x00, 0x44, 0x00, - 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0x88, 0x00, 0x44, 0x00, 0x22, 0x00, 0x11, - 0x00, 0x08, 0x80, 0x00, 0x40, 0x00, 0x20, 0x40, 0x10, 0x20, 0x0F, 0xF0, - 0x04, 0x08, 0x02, 0x04, 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, - 0x00, 0x10, 0x00, 0x08, 0x00, 0x04, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xF9, - 0x06, 0x07, 0x84, 0x00, 0xC4, 0x00, 0x24, 0x00, 0x12, 0x00, 0x02, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x0F, 0xF8, - 0x00, 0x14, 0x00, 0x09, 0x00, 0x04, 0x80, 0x02, 0x20, 0x01, 0x18, 0x00, - 0x83, 0x01, 0xC0, 0x7F, 0x00, 0xFC, 0x3F, 0x20, 0x04, 0x20, 0x04, 0x20, - 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x3F, - 0xFC, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, - 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0xFC, 0x3F, 0xFF, 0xF8, 0x10, - 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, - 0x10, 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, - 0x00, 0x10, 0x00, 0x81, 0xFF, 0xF0, 0x03, 0xFF, 0x80, 0x04, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, - 0x08, 0x00, 0x04, 0x00, 0x02, 0x10, 0x01, 0x08, 0x00, 0x84, 0x00, 0x42, - 0x00, 0x21, 0x00, 0x10, 0x80, 0x10, 0x20, 0x18, 0x0C, 0x18, 0x01, 0xF0, - 0x00, 0xFF, 0x1F, 0x84, 0x01, 0x81, 0x00, 0xC0, 0x40, 0x60, 0x10, 0x30, - 0x04, 0x18, 0x01, 0x0C, 0x00, 0x46, 0x00, 0x13, 0x00, 0x05, 0xF0, 0x01, - 0xC6, 0x00, 0x60, 0xC0, 0x10, 0x18, 0x04, 0x06, 0x01, 0x00, 0xC0, 0x40, - 0x30, 0x10, 0x04, 0x04, 0x01, 0x81, 0x00, 0x23, 0xFC, 0x0F, 0xFF, 0x80, - 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, - 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, - 0x42, 0x00, 0x84, 0x01, 0x08, 0x02, 0x10, 0x04, 0x20, 0x0F, 0xFF, 0xF0, - 0xF0, 0x01, 0xE7, 0x00, 0x70, 0xA0, 0x0A, 0x16, 0x03, 0x42, 0x40, 0x48, - 0x4C, 0x19, 0x08, 0x82, 0x21, 0x10, 0x44, 0x23, 0x18, 0x84, 0x22, 0x10, - 0x86, 0xC2, 0x10, 0x50, 0x42, 0x0E, 0x08, 0x41, 0xC1, 0x08, 0x00, 0x21, - 0x00, 0x04, 0x20, 0x00, 0x84, 0x00, 0x10, 0x80, 0x02, 0x7F, 0x03, 0xF0, - 0xF8, 0x1F, 0xC6, 0x00, 0x41, 0xC0, 0x10, 0x50, 0x04, 0x12, 0x01, 0x04, - 0xC0, 0x41, 0x10, 0x10, 0x46, 0x04, 0x10, 0x81, 0x04, 0x10, 0x41, 0x04, - 0x10, 0x40, 0x84, 0x10, 0x31, 0x04, 0x04, 0x41, 0x01, 0x90, 0x40, 0x24, - 0x10, 0x05, 0x04, 0x01, 0xC1, 0x00, 0x31, 0xFC, 0x0C, 0x03, 0xE0, 0x06, - 0x0C, 0x04, 0x01, 0x04, 0x00, 0x46, 0x00, 0x32, 0x00, 0x0B, 0x00, 0x05, - 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, - 0x0E, 0x00, 0x0D, 0x00, 0x04, 0xC0, 0x06, 0x20, 0x02, 0x08, 0x02, 0x03, - 0x06, 0x00, 0x7C, 0x00, 0xFF, 0xF0, 0x10, 0x0C, 0x10, 0x02, 0x10, 0x03, - 0x10, 0x01, 0x10, 0x01, 0x10, 0x01, 0x10, 0x03, 0x10, 0x06, 0x10, 0x0C, - 0x1F, 0xF0, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, - 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0xFF, 0xC0, 0x03, 0xE0, 0x06, 0x0C, - 0x04, 0x01, 0x04, 0x00, 0x46, 0x00, 0x32, 0x00, 0x0B, 0x00, 0x07, 0x00, - 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, 0x0E, - 0x00, 0x0D, 0x00, 0x04, 0xC0, 0x06, 0x20, 0x02, 0x08, 0x02, 0x03, 0x06, - 0x00, 0xFC, 0x00, 0x30, 0x00, 0x30, 0x00, 0x7F, 0xC6, 0x38, 0x1E, 0xFF, - 0xF0, 0x02, 0x01, 0x80, 0x40, 0x08, 0x08, 0x01, 0x81, 0x00, 0x10, 0x20, - 0x02, 0x04, 0x00, 0x40, 0x80, 0x18, 0x10, 0x06, 0x02, 0x03, 0x80, 0x7F, - 0xC0, 0x08, 0x18, 0x01, 0x01, 0x80, 0x20, 0x18, 0x04, 0x01, 0x80, 0x80, - 0x10, 0x10, 0x03, 0x02, 0x00, 0x20, 0x40, 0x06, 0x7F, 0x80, 0x70, 0x0F, - 0xC8, 0x61, 0xE2, 0x01, 0x90, 0x02, 0x40, 0x09, 0x00, 0x04, 0x00, 0x08, - 0x00, 0x38, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, - 0x00, 0x60, 0x01, 0x80, 0x0F, 0x00, 0x2B, 0x03, 0x23, 0xF0, 0xFF, 0xFF, - 0x02, 0x06, 0x04, 0x0C, 0x08, 0x18, 0x10, 0x20, 0x20, 0x00, 0x40, 0x00, - 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, - 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x01, 0xFF, 0xC0, - 0xFC, 0x1F, 0x90, 0x01, 0x08, 0x00, 0x84, 0x00, 0x42, 0x00, 0x21, 0x00, - 0x10, 0x80, 0x08, 0x40, 0x04, 0x20, 0x02, 0x10, 0x01, 0x08, 0x00, 0x84, - 0x00, 0x42, 0x00, 0x21, 0x00, 0x10, 0x80, 0x08, 0x40, 0x04, 0x10, 0x04, - 0x0C, 0x06, 0x03, 0x06, 0x00, 0x7C, 0x00, 0xFE, 0x03, 0xF8, 0x80, 0x02, - 0x04, 0x00, 0x10, 0x30, 0x01, 0x80, 0x80, 0x08, 0x06, 0x00, 0xC0, 0x30, - 0x06, 0x00, 0x80, 0x20, 0x06, 0x03, 0x00, 0x30, 0x10, 0x00, 0x80, 0x80, - 0x06, 0x0C, 0x00, 0x10, 0x40, 0x00, 0x86, 0x00, 0x06, 0x20, 0x00, 0x11, - 0x00, 0x00, 0xD8, 0x00, 0x06, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, - 0xFC, 0x0F, 0xE8, 0x00, 0x19, 0x00, 0x03, 0x10, 0x00, 0x62, 0x00, 0x08, - 0x41, 0x81, 0x08, 0x28, 0x21, 0x05, 0x04, 0x21, 0xA0, 0x84, 0x36, 0x30, - 0x84, 0x46, 0x08, 0x88, 0xC1, 0x31, 0x18, 0x24, 0x12, 0x04, 0x82, 0x40, - 0xB0, 0x48, 0x14, 0x09, 0x02, 0x80, 0xA0, 0x30, 0x1C, 0x06, 0x03, 0x80, - 0x7E, 0x0F, 0xC2, 0x00, 0x60, 0x60, 0x0C, 0x06, 0x03, 0x00, 0x60, 0xC0, - 0x0C, 0x10, 0x00, 0xC6, 0x00, 0x0D, 0x80, 0x00, 0xA0, 0x00, 0x1C, 0x00, - 0x03, 0x80, 0x00, 0xD8, 0x00, 0x11, 0x00, 0x06, 0x30, 0x01, 0x83, 0x00, - 0x60, 0x30, 0x08, 0x06, 0x03, 0x00, 0x60, 0xC0, 0x06, 0x7F, 0x07, 0xF0, - 0xFC, 0x1F, 0x98, 0x03, 0x04, 0x01, 0x03, 0x01, 0x80, 0xC1, 0x80, 0x20, - 0x80, 0x18, 0xC0, 0x04, 0x40, 0x03, 0x60, 0x00, 0xE0, 0x00, 0x20, 0x00, - 0x10, 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x80, - 0x00, 0x40, 0x00, 0x20, 0x03, 0xFF, 0x80, 0xFF, 0xF4, 0x00, 0xA0, 0x09, - 0x00, 0x48, 0x04, 0x40, 0x40, 0x02, 0x00, 0x20, 0x02, 0x00, 0x10, 0x01, - 0x00, 0x10, 0x00, 0x80, 0x08, 0x04, 0x80, 0x24, 0x01, 0x40, 0x0C, 0x00, - 0x60, 0x03, 0xFF, 0xF0, 0xFC, 0x21, 0x08, 0x42, 0x10, 0x84, 0x21, 0x08, - 0x42, 0x10, 0x84, 0x21, 0x08, 0x42, 0x10, 0xF8, 0x80, 0x02, 0x00, 0x10, - 0x00, 0xC0, 0x02, 0x00, 0x18, 0x00, 0x40, 0x03, 0x00, 0x08, 0x00, 0x40, - 0x01, 0x00, 0x08, 0x00, 0x20, 0x01, 0x00, 0x04, 0x00, 0x20, 0x00, 0x80, - 0x04, 0x00, 0x10, 0x00, 0x80, 0x02, 0x00, 0x10, 0x00, 0x40, 0x02, 0x00, - 0x08, 0x00, 0x40, 0xF8, 0x42, 0x10, 0x84, 0x21, 0x08, 0x42, 0x10, 0x84, - 0x21, 0x08, 0x42, 0x10, 0x84, 0x21, 0xF8, 0x02, 0x00, 0x38, 0x03, 0x60, - 0x11, 0x01, 0x8C, 0x18, 0x31, 0x80, 0xD8, 0x03, 0x80, 0x08, 0xFF, 0xFF, - 0xF8, 0xC1, 0x83, 0x06, 0x0C, 0x0F, 0xC0, 0x70, 0x30, 0x00, 0x10, 0x00, - 0x08, 0x00, 0x08, 0x00, 0x08, 0x0F, 0xF8, 0x30, 0x08, 0x40, 0x08, 0x80, - 0x08, 0x80, 0x08, 0x80, 0x08, 0x80, 0x38, 0x60, 0xE8, 0x3F, 0x8F, 0xF0, - 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x04, 0x00, - 0x01, 0x0F, 0x80, 0x4C, 0x18, 0x14, 0x01, 0x06, 0x00, 0x21, 0x80, 0x08, - 0x40, 0x01, 0x10, 0x00, 0x44, 0x00, 0x11, 0x00, 0x04, 0x40, 0x01, 0x18, - 0x00, 0x86, 0x00, 0x21, 0xC0, 0x10, 0x5C, 0x18, 0xF1, 0xF8, 0x00, 0x07, - 0xE4, 0x30, 0x78, 0x80, 0x32, 0x00, 0x24, 0x00, 0x50, 0x00, 0x20, 0x00, - 0x40, 0x00, 0x80, 0x01, 0x00, 0x03, 0x00, 0x02, 0x00, 0x12, 0x00, 0xC3, - 0x07, 0x01, 0xF8, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x80, 0x00, 0x20, 0x00, - 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x7C, 0x20, 0x60, 0xC8, 0x20, 0x0A, - 0x10, 0x01, 0x84, 0x00, 0x62, 0x00, 0x08, 0x80, 0x02, 0x20, 0x00, 0x88, - 0x00, 0x22, 0x00, 0x08, 0xC0, 0x06, 0x10, 0x01, 0x82, 0x00, 0xE0, 0x60, - 0xE8, 0x0F, 0xE3, 0xC0, 0x07, 0xE0, 0x1C, 0x18, 0x30, 0x0C, 0x60, 0x06, - 0x40, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0xFF, 0xFF, 0xC0, 0x00, 0xC0, 0x00, - 0x40, 0x00, 0x60, 0x00, 0x30, 0x03, 0x0C, 0x0E, 0x03, 0xF0, 0x03, 0xFC, - 0x18, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x0F, 0xFF, 0x82, 0x00, - 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, - 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0xFF, 0xF0, 0x0F, - 0xC7, 0x9C, 0x3A, 0x18, 0x07, 0x08, 0x01, 0x8C, 0x00, 0xC4, 0x00, 0x22, - 0x00, 0x11, 0x00, 0x08, 0x80, 0x04, 0x40, 0x02, 0x10, 0x03, 0x08, 0x01, - 0x82, 0x01, 0x40, 0xC3, 0x20, 0x3F, 0x10, 0x00, 0x08, 0x00, 0x04, 0x00, - 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x7F, 0x00, 0xF0, 0x00, - 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x47, - 0xC0, 0x2C, 0x18, 0x1C, 0x04, 0x0C, 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, - 0x00, 0x20, 0x80, 0x10, 0x40, 0x08, 0x20, 0x04, 0x10, 0x02, 0x08, 0x01, - 0x04, 0x00, 0x82, 0x00, 0x47, 0xC0, 0xF8, 0x06, 0x00, 0x18, 0x00, 0x60, - 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x02, 0x00, 0x08, - 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, - 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x03, 0xFF, 0xF0, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x40, 0x10, 0x04, - 0x01, 0x00, 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, 0x10, 0x04, 0x01, 0x00, - 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, 0x10, 0x08, 0x06, 0xFE, 0x00, 0xF0, - 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, - 0xFE, 0x10, 0x30, 0x10, 0xE0, 0x11, 0xC0, 0x13, 0x00, 0x16, 0x00, 0x1E, - 0x00, 0x1B, 0x00, 0x11, 0x80, 0x10, 0xC0, 0x10, 0x60, 0x10, 0x30, 0x10, - 0x18, 0x10, 0x1C, 0xF0, 0x3F, 0x7E, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, - 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, - 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, - 0x00, 0x20, 0x00, 0x80, 0xFF, 0xFC, 0xEF, 0x9E, 0x07, 0x1E, 0x20, 0xC1, - 0x82, 0x10, 0x20, 0x42, 0x04, 0x08, 0x40, 0x81, 0x08, 0x10, 0x21, 0x02, - 0x04, 0x20, 0x40, 0x84, 0x08, 0x10, 0x81, 0x02, 0x10, 0x20, 0x42, 0x04, - 0x08, 0x40, 0x81, 0x3E, 0x1C, 0x38, 0x71, 0xF0, 0x0B, 0x06, 0x07, 0x01, - 0x03, 0x00, 0x41, 0x00, 0x20, 0x80, 0x10, 0x40, 0x08, 0x20, 0x04, 0x10, - 0x02, 0x08, 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, 0x00, 0x20, 0x80, 0x13, - 0xF0, 0x3E, 0x07, 0xC0, 0x30, 0x60, 0x80, 0x22, 0x00, 0x24, 0x00, 0x50, - 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x05, 0x00, 0x12, 0x00, - 0x22, 0x00, 0x83, 0x06, 0x01, 0xF0, 0x00, 0xF1, 0xFC, 0x05, 0xC1, 0x81, - 0xC0, 0x10, 0x60, 0x02, 0x18, 0x00, 0xC4, 0x00, 0x11, 0x00, 0x04, 0x40, - 0x01, 0x10, 0x00, 0x44, 0x00, 0x11, 0x80, 0x08, 0x60, 0x02, 0x14, 0x01, - 0x04, 0xC1, 0x81, 0x0F, 0x80, 0x40, 0x00, 0x10, 0x00, 0x04, 0x00, 0x01, - 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xE3, 0xC6, - 0x0E, 0x86, 0x00, 0xE1, 0x00, 0x18, 0xC0, 0x06, 0x20, 0x00, 0x88, 0x00, - 0x22, 0x00, 0x08, 0x80, 0x02, 0x20, 0x00, 0x84, 0x00, 0x61, 0x00, 0x18, - 0x20, 0x0A, 0x06, 0x0C, 0x80, 0x7C, 0x20, 0x00, 0x08, 0x00, 0x02, 0x00, - 0x00, 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x02, 0x00, 0x0F, 0xF0, 0xF8, - 0x7C, 0x11, 0x8C, 0x2C, 0x00, 0x70, 0x00, 0xC0, 0x01, 0x00, 0x02, 0x00, - 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x01, - 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xD1, 0x83, 0x98, 0x04, 0x80, 0x24, 0x00, - 0x30, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0x30, 0x00, 0xE0, 0x03, 0x00, 0x1C, - 0x01, 0xF0, 0x1A, 0x7F, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, - 0x00, 0x08, 0x00, 0xFF, 0xFC, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, - 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, - 0x00, 0x08, 0x00, 0x08, 0x01, 0x06, 0x0F, 0x03, 0xF8, 0xF0, 0x3E, 0x08, - 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, 0x00, 0x20, 0x80, 0x10, 0x40, 0x08, - 0x20, 0x04, 0x10, 0x02, 0x08, 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, 0x00, - 0xE0, 0x41, 0xD0, 0x1F, 0x8E, 0xFE, 0x0F, 0xE2, 0x00, 0x20, 0x60, 0x0C, - 0x0C, 0x01, 0x80, 0x80, 0x20, 0x18, 0x0C, 0x01, 0x01, 0x00, 0x30, 0x60, - 0x02, 0x08, 0x00, 0x41, 0x00, 0x0C, 0x60, 0x00, 0x88, 0x00, 0x19, 0x00, - 0x01, 0x40, 0x00, 0x38, 0x00, 0xFC, 0x07, 0xE4, 0x00, 0x10, 0x80, 0x02, - 0x18, 0x20, 0xC3, 0x0E, 0x18, 0x21, 0x42, 0x04, 0x28, 0x40, 0x8D, 0x88, - 0x19, 0x93, 0x03, 0x22, 0x60, 0x2C, 0x68, 0x05, 0x85, 0x00, 0xA0, 0xA0, - 0x1C, 0x1C, 0x01, 0x81, 0x80, 0x7C, 0x1F, 0x18, 0x03, 0x06, 0x03, 0x01, - 0x83, 0x00, 0x63, 0x00, 0x1B, 0x00, 0x07, 0x00, 0x03, 0x80, 0x03, 0x60, - 0x03, 0x18, 0x03, 0x06, 0x03, 0x01, 0x83, 0x00, 0x61, 0x00, 0x33, 0xF0, - 0x7E, 0xFC, 0x1F, 0x90, 0x01, 0x8C, 0x00, 0x86, 0x00, 0xC1, 0x80, 0x40, - 0xC0, 0x60, 0x20, 0x20, 0x18, 0x30, 0x04, 0x10, 0x03, 0x08, 0x00, 0x8C, - 0x00, 0x64, 0x00, 0x16, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x01, 0x00, 0x01, - 0x80, 0x00, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x20, 0x07, 0xFE, 0x00, - 0xFF, 0xF4, 0x01, 0x20, 0x09, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x00, - 0xC0, 0x04, 0x00, 0x40, 0x04, 0x00, 0x40, 0x14, 0x00, 0xA0, 0x07, 0xFF, - 0xE0, 0x07, 0x0C, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x30, 0xC0, 0x30, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x0C, 0x07, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x08, 0x07, 0x0C, 0x10, 0x10, 0x10, 0x10, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x1C, 0x00, 0x44, 0x0D, 0x84, - 0x36, 0x04, 0x40, 0x07, 0x00}; - -const GFXglyph FreeMono18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 4, 22, 21, 8, -21}, // 0x21 '!' - {11, 11, 10, 21, 5, -20}, // 0x22 '"' - {25, 14, 24, 21, 3, -21}, // 0x23 '#' - {67, 13, 26, 21, 4, -22}, // 0x24 '$' - {110, 15, 21, 21, 3, -20}, // 0x25 '%' - {150, 12, 18, 21, 4, -17}, // 0x26 '&' - {177, 4, 10, 21, 8, -20}, // 0x27 ''' - {182, 5, 25, 21, 10, -20}, // 0x28 '(' - {198, 5, 25, 21, 6, -20}, // 0x29 ')' - {214, 13, 12, 21, 4, -20}, // 0x2A '*' - {234, 15, 17, 21, 3, -17}, // 0x2B '+' - {266, 7, 10, 21, 5, -4}, // 0x2C ',' - {275, 15, 1, 21, 3, -9}, // 0x2D '-' - {277, 5, 5, 21, 8, -4}, // 0x2E '.' - {281, 13, 26, 21, 4, -22}, // 0x2F '/' - {324, 13, 21, 21, 4, -20}, // 0x30 '0' - {359, 13, 21, 21, 4, -20}, // 0x31 '1' - {394, 13, 21, 21, 3, -20}, // 0x32 '2' - {429, 14, 21, 21, 3, -20}, // 0x33 '3' - {466, 12, 21, 21, 4, -20}, // 0x34 '4' - {498, 14, 21, 21, 3, -20}, // 0x35 '5' - {535, 12, 21, 21, 5, -20}, // 0x36 '6' - {567, 12, 21, 21, 4, -20}, // 0x37 '7' - {599, 13, 21, 21, 4, -20}, // 0x38 '8' - {634, 12, 21, 21, 5, -20}, // 0x39 '9' - {666, 5, 15, 21, 8, -14}, // 0x3A ':' - {676, 7, 20, 21, 5, -14}, // 0x3B ';' - {694, 15, 16, 21, 3, -17}, // 0x3C '<' - {724, 17, 6, 21, 2, -12}, // 0x3D '=' - {737, 15, 16, 21, 3, -17}, // 0x3E '>' - {767, 12, 20, 21, 5, -19}, // 0x3F '?' - {797, 13, 23, 21, 4, -20}, // 0x40 '@' - {835, 21, 20, 21, 0, -19}, // 0x41 'A' - {888, 18, 20, 21, 1, -19}, // 0x42 'B' - {933, 17, 20, 21, 2, -19}, // 0x43 'C' - {976, 16, 20, 21, 2, -19}, // 0x44 'D' - {1016, 17, 20, 21, 1, -19}, // 0x45 'E' - {1059, 17, 20, 21, 1, -19}, // 0x46 'F' - {1102, 17, 20, 21, 2, -19}, // 0x47 'G' - {1145, 16, 20, 21, 2, -19}, // 0x48 'H' - {1185, 13, 20, 21, 4, -19}, // 0x49 'I' - {1218, 17, 20, 21, 3, -19}, // 0x4A 'J' - {1261, 18, 20, 21, 1, -19}, // 0x4B 'K' - {1306, 15, 20, 21, 3, -19}, // 0x4C 'L' - {1344, 19, 20, 21, 1, -19}, // 0x4D 'M' - {1392, 18, 20, 21, 1, -19}, // 0x4E 'N' - {1437, 17, 20, 21, 2, -19}, // 0x4F 'O' - {1480, 16, 20, 21, 1, -19}, // 0x50 'P' - {1520, 17, 24, 21, 2, -19}, // 0x51 'Q' - {1571, 19, 20, 21, 1, -19}, // 0x52 'R' - {1619, 14, 20, 21, 3, -19}, // 0x53 'S' - {1654, 15, 20, 21, 3, -19}, // 0x54 'T' - {1692, 17, 20, 21, 2, -19}, // 0x55 'U' - {1735, 21, 20, 21, 0, -19}, // 0x56 'V' - {1788, 19, 20, 21, 1, -19}, // 0x57 'W' - {1836, 19, 20, 21, 1, -19}, // 0x58 'X' - {1884, 17, 20, 21, 2, -19}, // 0x59 'Y' - {1927, 13, 20, 21, 4, -19}, // 0x5A 'Z' - {1960, 5, 25, 21, 10, -20}, // 0x5B '[' - {1976, 13, 26, 21, 4, -22}, // 0x5C '\' - {2019, 5, 25, 21, 6, -20}, // 0x5D ']' - {2035, 13, 9, 21, 4, -20}, // 0x5E '^' - {2050, 21, 1, 21, 0, 4}, // 0x5F '_' - {2053, 6, 5, 21, 5, -21}, // 0x60 '`' - {2057, 16, 15, 21, 3, -14}, // 0x61 'a' - {2087, 18, 21, 21, 1, -20}, // 0x62 'b' - {2135, 15, 15, 21, 3, -14}, // 0x63 'c' - {2164, 18, 21, 21, 2, -20}, // 0x64 'd' - {2212, 16, 15, 21, 2, -14}, // 0x65 'e' - {2242, 14, 21, 21, 4, -20}, // 0x66 'f' - {2279, 17, 22, 21, 2, -14}, // 0x67 'g' - {2326, 17, 21, 21, 1, -20}, // 0x68 'h' - {2371, 14, 22, 21, 4, -21}, // 0x69 'i' - {2410, 10, 29, 21, 5, -21}, // 0x6A 'j' - {2447, 16, 21, 21, 2, -20}, // 0x6B 'k' - {2489, 14, 21, 21, 4, -20}, // 0x6C 'l' - {2526, 19, 15, 21, 1, -14}, // 0x6D 'm' - {2562, 17, 15, 21, 1, -14}, // 0x6E 'n' - {2594, 15, 15, 21, 3, -14}, // 0x6F 'o' - {2623, 18, 22, 21, 1, -14}, // 0x70 'p' - {2673, 18, 22, 21, 2, -14}, // 0x71 'q' - {2723, 15, 15, 21, 3, -14}, // 0x72 'r' - {2752, 13, 15, 21, 4, -14}, // 0x73 's' - {2777, 16, 20, 21, 1, -19}, // 0x74 't' - {2817, 17, 15, 21, 1, -14}, // 0x75 'u' - {2849, 19, 15, 21, 1, -14}, // 0x76 'v' - {2885, 19, 15, 21, 1, -14}, // 0x77 'w' - {2921, 17, 15, 21, 2, -14}, // 0x78 'x' - {2953, 17, 22, 21, 2, -14}, // 0x79 'y' - {3000, 13, 15, 21, 4, -14}, // 0x7A 'z' - {3025, 8, 25, 21, 6, -20}, // 0x7B '{' - {3050, 1, 25, 21, 10, -20}, // 0x7C '|' - {3054, 8, 25, 21, 7, -20}, // 0x7D '}' - {3079, 15, 5, 21, 3, -11}}; // 0x7E '~' - -const GFXfont FreeMono18pt7b PROGMEM = {(uint8_t *)FreeMono18pt7bBitmaps, - (GFXglyph *)FreeMono18pt7bGlyphs, 0x20, - 0x7E, 35}; - -// Approx. 3761 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono24pt7b.h deleted file mode 100644 index 2540ed4..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono24pt7b.h +++ /dev/null @@ -1,579 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono24pt7bBitmaps[] PROGMEM = { - 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x10, 0x84, 0x21, 0x08, - 0x00, 0x00, 0x00, 0x03, 0xBF, 0xFF, 0xB8, 0xFE, 0x7F, 0x7C, 0x3E, 0x7C, - 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x3C, - 0x3E, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x01, - 0x86, 0x00, 0x30, 0xC0, 0x06, 0x18, 0x00, 0xC3, 0x00, 0x18, 0x60, 0x03, - 0x0C, 0x00, 0x61, 0x80, 0x0C, 0x70, 0x01, 0x8C, 0x00, 0x61, 0x80, 0x0C, - 0x30, 0x3F, 0xFF, 0xF7, 0xFF, 0xFE, 0x06, 0x18, 0x00, 0xC3, 0x00, 0x18, - 0x60, 0x03, 0x0C, 0x00, 0x61, 0x80, 0x0C, 0x30, 0x7F, 0xFF, 0xEF, 0xFF, - 0xFC, 0x06, 0x18, 0x00, 0xC7, 0x00, 0x38, 0xC0, 0x06, 0x18, 0x00, 0xC3, - 0x00, 0x18, 0x60, 0x03, 0x0C, 0x00, 0x61, 0x80, 0x0C, 0x30, 0x01, 0x86, - 0x00, 0x30, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0F, 0xC0, - 0x0F, 0xFD, 0x87, 0x03, 0xE3, 0x80, 0x39, 0xC0, 0x06, 0x60, 0x01, 0x98, - 0x00, 0x06, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0xC0, 0x00, 0x7F, - 0x80, 0x03, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0x60, 0x00, 0x1C, 0x00, 0x03, - 0x80, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x80, 0x0E, 0xFC, 0x0F, 0x37, - 0xFF, 0x80, 0x7F, 0x80, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x07, 0x80, 0x01, 0xFE, 0x00, 0x38, - 0x70, 0x03, 0x03, 0x00, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x18, 0x06, - 0x01, 0x80, 0x30, 0x30, 0x03, 0x87, 0x00, 0x1F, 0xE0, 0x30, 0x78, 0x1F, - 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x00, 0xF8, 0x00, - 0x0C, 0x01, 0xE0, 0x00, 0x7F, 0x80, 0x0E, 0x1C, 0x00, 0xC0, 0xC0, 0x18, - 0x06, 0x01, 0x80, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x0C, 0x0E, 0x00, - 0xE1, 0xC0, 0x07, 0xF8, 0x00, 0x1E, 0x00, 0x03, 0xEC, 0x01, 0xFF, 0x00, - 0xE1, 0x00, 0x70, 0x00, 0x18, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x30, - 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x7C, 0x00, 0x3B, 0x83, - 0xD8, 0x60, 0xFE, 0x0C, 0x33, 0x03, 0x98, 0xC0, 0x66, 0x30, 0x0D, 0x8C, - 0x03, 0xC3, 0x00, 0x70, 0x60, 0x1C, 0x1C, 0x0F, 0x03, 0x87, 0x7C, 0x7F, - 0x9F, 0x07, 0x80, 0x00, 0xFE, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x3C, - 0x70, 0xE1, 0xC3, 0x87, 0x00, 0x06, 0x1C, 0x30, 0xE1, 0x87, 0x0E, 0x18, - 0x70, 0xE1, 0xC3, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0x87, 0x0E, 0x0C, - 0x1C, 0x38, 0x70, 0x60, 0xE1, 0xC1, 0x83, 0x83, 0x06, 0x06, 0x04, 0xC1, - 0xC1, 0x83, 0x83, 0x07, 0x0E, 0x0C, 0x1C, 0x38, 0x70, 0xE0, 0xE1, 0xC3, - 0x87, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0x87, 0x0E, 0x1C, 0x30, 0x61, 0xC3, - 0x0E, 0x18, 0x70, 0xC1, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x03, 0x00, 0x00, 0xC0, 0x10, 0x30, 0x3F, 0x8C, 0x7C, 0xFF, 0xFC, 0x07, - 0xF8, 0x00, 0x78, 0x00, 0x1F, 0x00, 0x0C, 0xC0, 0x06, 0x18, 0x03, 0x87, - 0x00, 0xC0, 0xC0, 0x60, 0x18, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, - 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, - 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, - 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, - 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, - 0x1F, 0x8F, 0x87, 0xC7, 0xC3, 0xE1, 0xE1, 0xF0, 0xF0, 0x78, 0x38, 0x3C, - 0x1C, 0x0E, 0x06, 0x00, 0x7F, 0xFF, 0xFD, 0xFF, 0xFF, 0xF0, 0x7D, 0xFF, - 0xFF, 0xFF, 0xEF, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x18, 0x00, 0x06, - 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x18, 0x00, 0x0E, 0x00, - 0x03, 0x00, 0x01, 0xC0, 0x00, 0x60, 0x00, 0x38, 0x00, 0x0C, 0x00, 0x07, - 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x00, 0x03, - 0xF0, 0x03, 0xFF, 0x01, 0xE1, 0xE0, 0xE0, 0x18, 0x30, 0x03, 0x1C, 0x00, - 0xE6, 0x00, 0x19, 0x80, 0x06, 0xE0, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, - 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, - 0x76, 0x00, 0x19, 0x80, 0x06, 0x70, 0x03, 0x8C, 0x00, 0xC3, 0x80, 0x60, - 0x78, 0x78, 0x0F, 0xFC, 0x00, 0xFC, 0x00, 0x03, 0x80, 0x07, 0x80, 0x0F, - 0x80, 0x1D, 0x80, 0x39, 0x80, 0x71, 0x80, 0xE1, 0x80, 0xC1, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xF0, 0x03, 0xFF, 0x01, 0xC0, 0xE0, - 0xC0, 0x1C, 0x60, 0x03, 0xB8, 0x00, 0x6C, 0x00, 0x0F, 0x00, 0x03, 0x00, - 0x00, 0xC0, 0x00, 0x30, 0x00, 0x18, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, - 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, - 0x00, 0xD0, 0x00, 0x38, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x03, - 0xF8, 0x01, 0xFF, 0xC0, 0x70, 0x3C, 0x18, 0x01, 0xC6, 0x00, 0x18, 0x00, - 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x01, 0xC0, 0x00, 0x70, 0x01, 0xFC, 0x00, 0x3F, 0x00, 0x00, - 0x78, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, - 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0xD8, 0x00, - 0x3B, 0x80, 0x0E, 0x3E, 0x07, 0x81, 0xFF, 0xE0, 0x07, 0xE0, 0x00, 0x00, - 0x3C, 0x00, 0x7C, 0x00, 0x6C, 0x00, 0xCC, 0x00, 0x8C, 0x01, 0x8C, 0x03, - 0x0C, 0x03, 0x0C, 0x06, 0x0C, 0x04, 0x0C, 0x0C, 0x0C, 0x08, 0x0C, 0x10, - 0x0C, 0x30, 0x0C, 0x20, 0x0C, 0x60, 0x0C, 0x40, 0x0C, 0x80, 0x0C, 0xFF, - 0xFF, 0xFF, 0xFF, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, - 0x0C, 0x00, 0x0C, 0x00, 0xFF, 0x00, 0xFF, 0x3F, 0xFF, 0x07, 0xFF, 0xE0, - 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x00, 0x01, - 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC7, 0xE0, 0x1F, 0xFF, 0x03, - 0x80, 0x70, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0x60, - 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x06, 0xC0, 0x01, 0xDC, 0x00, 0x71, 0xF0, 0x3C, 0x0F, - 0xFF, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x80, 0x3F, 0xF0, 0x3E, 0x00, 0x1E, - 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, - 0x18, 0x00, 0x06, 0x00, 0x03, 0x80, 0x00, 0xC1, 0xF8, 0x31, 0xFF, 0x0C, - 0xF0, 0xF3, 0x70, 0x0C, 0xD8, 0x01, 0xBC, 0x00, 0x6E, 0x00, 0x0F, 0x80, - 0x03, 0xC0, 0x00, 0xD8, 0x00, 0x36, 0x00, 0x0D, 0x80, 0x03, 0x30, 0x01, - 0x8E, 0x00, 0x61, 0xC0, 0x30, 0x38, 0x38, 0x07, 0xFC, 0x00, 0x7C, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xC0, - 0x00, 0x60, 0x00, 0x18, 0x00, 0x0E, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, - 0x30, 0x00, 0x18, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x30, - 0x00, 0x0C, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x03, 0xF0, 0x03, 0xFF, 0x03, 0xC0, 0xF1, 0xC0, 0x0E, - 0x60, 0x01, 0xB8, 0x00, 0x7C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x36, 0x00, 0x18, 0xC0, 0x0C, 0x1C, 0x0E, 0x03, 0xFF, 0x00, 0xFF, - 0xC0, 0x70, 0x38, 0x30, 0x03, 0x18, 0x00, 0x66, 0x00, 0x1B, 0x00, 0x03, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0x60, 0x01, 0x98, - 0x00, 0xE3, 0x00, 0x70, 0x70, 0x38, 0x0F, 0xFC, 0x00, 0xFC, 0x00, 0x07, - 0xE0, 0x03, 0xFE, 0x01, 0xC1, 0xC0, 0xC0, 0x38, 0x60, 0x07, 0x18, 0x00, - 0xCC, 0x00, 0x1B, 0x00, 0x06, 0xC0, 0x01, 0xB0, 0x00, 0x3C, 0x00, 0x1F, - 0x00, 0x07, 0x60, 0x03, 0xD8, 0x01, 0xB3, 0x00, 0xCC, 0xF0, 0xF3, 0x0F, - 0xF8, 0xC1, 0xF8, 0x30, 0x00, 0x1C, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, - 0xE0, 0x00, 0x30, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x07, 0x80, - 0x07, 0xC0, 0xFF, 0xC0, 0x1F, 0xC0, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, 0xEF, - 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0xFF, 0xFF, 0xFF, - 0xF7, 0xC0, 0x0F, 0x87, 0xF1, 0xFC, 0x7F, 0x1F, 0xC3, 0xE0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF1, 0xF8, 0x7C, 0x3F, 0x0F, - 0x83, 0xE0, 0xF0, 0x7C, 0x1E, 0x07, 0x81, 0xC0, 0xF0, 0x38, 0x04, 0x00, - 0x00, 0x00, 0x18, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, - 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x00, - 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x38, 0x00, 0x00, - 0x20, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, - 0xFF, 0x7F, 0xFF, 0xFF, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0E, 0x00, 0x00, 0x3C, 0x00, 0x01, 0xE0, - 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x01, 0xE0, - 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x0E, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x07, 0xF0, 0x1F, 0xFE, 0x3E, 0x07, 0x98, 0x00, 0xEC, 0x00, - 0x36, 0x00, 0x0F, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x01, 0xC0, - 0x00, 0xC0, 0x01, 0xC0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x00, 0x03, 0x00, - 0x01, 0x80, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x07, 0x80, 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, - 0x78, 0x00, 0x03, 0xF0, 0x03, 0xFF, 0x01, 0xE0, 0xE0, 0xE0, 0x1C, 0x30, - 0x03, 0x1C, 0x00, 0x66, 0x00, 0x19, 0x80, 0x06, 0xC0, 0x01, 0xB0, 0x07, - 0xEC, 0x07, 0xFB, 0x03, 0xC6, 0xC1, 0xC1, 0xB0, 0xE0, 0x6C, 0x30, 0x1B, - 0x0C, 0x06, 0xC3, 0x01, 0xB0, 0xC0, 0x6C, 0x18, 0x1B, 0x07, 0x86, 0xC0, - 0xFF, 0xF0, 0x0F, 0xFC, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x18, 0x00, - 0x07, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x80, 0xC0, 0xFF, 0xF0, - 0x0F, 0xE0, 0x07, 0xFF, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00, 0x1B, 0x00, - 0x00, 0x01, 0x98, 0x00, 0x00, 0x11, 0x80, 0x00, 0x03, 0x0C, 0x00, 0x00, - 0x30, 0xC0, 0x00, 0x06, 0x0C, 0x00, 0x00, 0x60, 0x60, 0x00, 0x06, 0x06, - 0x00, 0x00, 0xC0, 0x30, 0x00, 0x0C, 0x03, 0x00, 0x00, 0x80, 0x30, 0x00, - 0x18, 0x01, 0x80, 0x01, 0x80, 0x18, 0x00, 0x3F, 0xFF, 0x80, 0x03, 0xFF, - 0xFC, 0x00, 0x20, 0x00, 0xC0, 0x06, 0x00, 0x06, 0x00, 0x60, 0x00, 0x60, - 0x0C, 0x00, 0x06, 0x00, 0xC0, 0x00, 0x30, 0x0C, 0x00, 0x03, 0x01, 0x80, - 0x00, 0x18, 0x7F, 0xC0, 0x3F, 0xF7, 0xFC, 0x03, 0xFF, 0xFF, 0xFF, 0x03, - 0xFF, 0xFF, 0x01, 0x80, 0x0E, 0x06, 0x00, 0x1C, 0x18, 0x00, 0x38, 0x60, - 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, 0x00, 0x38, 0x60, 0x01, - 0xC1, 0x80, 0x1E, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, 0x60, 0x03, 0xC1, - 0x80, 0x03, 0x86, 0x00, 0x06, 0x18, 0x00, 0x1C, 0x60, 0x00, 0x31, 0x80, - 0x00, 0xC6, 0x00, 0x03, 0x18, 0x00, 0x0C, 0x60, 0x00, 0x61, 0x80, 0x03, - 0x86, 0x00, 0x1C, 0xFF, 0xFF, 0xE3, 0xFF, 0xFE, 0x00, 0x00, 0xFC, 0x00, - 0x0F, 0xFE, 0x60, 0xF0, 0x3D, 0x87, 0x00, 0x3E, 0x38, 0x00, 0x38, 0xC0, - 0x00, 0xE7, 0x00, 0x01, 0x98, 0x00, 0x06, 0x60, 0x00, 0x03, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, - 0xC7, 0x00, 0x06, 0x0E, 0x00, 0x70, 0x1E, 0x07, 0x80, 0x3F, 0xFC, 0x00, - 0x1F, 0x80, 0xFF, 0xFE, 0x03, 0xFF, 0xFE, 0x03, 0x00, 0x3C, 0x0C, 0x00, - 0x38, 0x30, 0x00, 0x70, 0xC0, 0x00, 0xC3, 0x00, 0x03, 0x8C, 0x00, 0x06, - 0x30, 0x00, 0x1C, 0xC0, 0x00, 0x33, 0x00, 0x00, 0xCC, 0x00, 0x03, 0x30, - 0x00, 0x0C, 0xC0, 0x00, 0x33, 0x00, 0x00, 0xCC, 0x00, 0x03, 0x30, 0x00, - 0x0C, 0xC0, 0x00, 0x33, 0x00, 0x01, 0x8C, 0x00, 0x06, 0x30, 0x00, 0x30, - 0xC0, 0x01, 0xC3, 0x00, 0x0E, 0x0C, 0x00, 0xF0, 0xFF, 0xFF, 0x83, 0xFF, - 0xF8, 0x00, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xE1, 0x80, 0x01, 0x86, 0x00, - 0x06, 0x18, 0x00, 0x18, 0x60, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x00, - 0x18, 0x0C, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x07, 0xFF, 0x00, 0x1F, - 0xFC, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x06, 0x03, 0x00, 0x18, 0x00, - 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0xC6, 0x00, 0x03, 0x18, 0x00, 0x0C, - 0x60, 0x00, 0x31, 0x80, 0x00, 0xC6, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF1, 0x80, 0x00, 0xC6, 0x00, - 0x03, 0x18, 0x00, 0x0C, 0x60, 0x00, 0x31, 0x80, 0x00, 0xC6, 0x00, 0x00, - 0x18, 0x0C, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x07, 0xFF, 0x00, 0x1F, - 0xFC, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x06, 0x03, 0x00, 0x18, 0x00, - 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0xFF, 0xF0, 0x03, 0xFF, - 0xC0, 0x00, 0x00, 0xFF, 0x00, 0x07, 0xFF, 0x98, 0x1E, 0x03, 0xF0, 0x70, - 0x01, 0xE1, 0x80, 0x01, 0xC6, 0x00, 0x01, 0x9C, 0x00, 0x03, 0x30, 0x00, - 0x00, 0x60, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, 0x03, 0xFF, - 0xC0, 0x07, 0xFF, 0x80, 0x00, 0x1B, 0x00, 0x00, 0x37, 0x00, 0x00, 0x66, - 0x00, 0x00, 0xCC, 0x00, 0x01, 0x8C, 0x00, 0x03, 0x1C, 0x00, 0x06, 0x1E, - 0x00, 0x0C, 0x0F, 0x00, 0xF8, 0x0F, 0xFF, 0xC0, 0x03, 0xFC, 0x00, 0x7F, - 0x01, 0xFC, 0xFE, 0x03, 0xF8, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, - 0x03, 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, - 0x30, 0x30, 0x00, 0x60, 0x60, 0x00, 0xC0, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, - 0x30, 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, 0x03, - 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0xFF, 0x01, 0xFF, 0xFE, - 0x03, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFE, 0x01, 0xFF, 0xFC, - 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, - 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x30, 0x60, 0x00, 0x60, 0xC0, 0x00, 0xC1, 0x80, 0x01, 0x83, 0x00, 0x03, - 0x06, 0x00, 0x06, 0x0C, 0x00, 0x0C, 0x18, 0x00, 0x30, 0x38, 0x00, 0x60, - 0x38, 0x01, 0x80, 0x3C, 0x0E, 0x00, 0x3F, 0xF8, 0x00, 0x0F, 0xC0, 0x00, - 0xFF, 0x81, 0xFE, 0xFF, 0x81, 0xFE, 0x18, 0x00, 0x30, 0x18, 0x00, 0xE0, - 0x18, 0x01, 0xC0, 0x18, 0x03, 0x80, 0x18, 0x07, 0x00, 0x18, 0x0E, 0x00, - 0x18, 0x18, 0x00, 0x18, 0x70, 0x00, 0x18, 0xE0, 0x00, 0x19, 0xE0, 0x00, - 0x1B, 0xF8, 0x00, 0x1F, 0x1C, 0x00, 0x1C, 0x06, 0x00, 0x18, 0x03, 0x00, - 0x18, 0x03, 0x80, 0x18, 0x01, 0x80, 0x18, 0x00, 0xC0, 0x18, 0x00, 0xC0, - 0x18, 0x00, 0x60, 0x18, 0x00, 0x60, 0x18, 0x00, 0x70, 0x18, 0x00, 0x30, - 0xFF, 0x80, 0x3F, 0xFF, 0x80, 0x1F, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x01, - 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, - 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, - 0x06, 0x00, 0x18, 0x30, 0x00, 0xC1, 0x80, 0x06, 0x0C, 0x00, 0x30, 0x60, - 0x01, 0x83, 0x00, 0x0C, 0x18, 0x00, 0x60, 0xC0, 0x03, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xC0, 0xFC, 0x00, 0x0F, 0xFF, 0x00, 0x03, 0xF3, 0x60, 0x01, - 0xB0, 0xD8, 0x00, 0x6C, 0x33, 0x00, 0x33, 0x0C, 0xC0, 0x0C, 0xC3, 0x38, - 0x07, 0x30, 0xC6, 0x01, 0x8C, 0x31, 0xC0, 0xE3, 0x0C, 0x30, 0x30, 0xC3, - 0x0C, 0x0C, 0x30, 0xC1, 0x86, 0x0C, 0x30, 0x61, 0x83, 0x0C, 0x0C, 0xC0, - 0xC3, 0x03, 0x30, 0x30, 0xC0, 0x78, 0x0C, 0x30, 0x1E, 0x03, 0x0C, 0x03, - 0x00, 0xC3, 0x00, 0x00, 0x30, 0xC0, 0x00, 0x0C, 0x30, 0x00, 0x03, 0x0C, - 0x00, 0x00, 0xC3, 0x00, 0x00, 0x30, 0xC0, 0x00, 0x0C, 0xFF, 0x00, 0x3F, - 0xFF, 0xC0, 0x0F, 0xF0, 0xFC, 0x00, 0xFF, 0xFC, 0x00, 0xFF, 0x1E, 0x00, - 0x0C, 0x1F, 0x00, 0x0C, 0x1B, 0x00, 0x0C, 0x19, 0x80, 0x0C, 0x19, 0xC0, - 0x0C, 0x18, 0xC0, 0x0C, 0x18, 0x60, 0x0C, 0x18, 0x60, 0x0C, 0x18, 0x30, - 0x0C, 0x18, 0x38, 0x0C, 0x18, 0x18, 0x0C, 0x18, 0x0C, 0x0C, 0x18, 0x0E, - 0x0C, 0x18, 0x06, 0x0C, 0x18, 0x03, 0x0C, 0x18, 0x03, 0x0C, 0x18, 0x01, - 0x8C, 0x18, 0x01, 0xCC, 0x18, 0x00, 0xCC, 0x18, 0x00, 0x6C, 0x18, 0x00, - 0x7C, 0x18, 0x00, 0x3C, 0x7F, 0x80, 0x1C, 0x7F, 0x80, 0x1C, 0x00, 0x7E, - 0x00, 0x01, 0xFF, 0xC0, 0x07, 0x81, 0xE0, 0x0E, 0x00, 0x70, 0x1C, 0x00, - 0x38, 0x38, 0x00, 0x1C, 0x30, 0x00, 0x0C, 0x70, 0x00, 0x0E, 0x60, 0x00, - 0x06, 0x60, 0x00, 0x06, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0x60, 0x00, 0x06, 0x60, 0x00, 0x06, 0x70, 0x00, - 0x0E, 0x30, 0x00, 0x0C, 0x38, 0x00, 0x1C, 0x1C, 0x00, 0x38, 0x0E, 0x00, - 0x70, 0x07, 0x81, 0xE0, 0x03, 0xFF, 0xC0, 0x00, 0x7E, 0x00, 0xFF, 0xFF, - 0x07, 0xFF, 0xFE, 0x06, 0x00, 0x78, 0x30, 0x00, 0xE1, 0x80, 0x03, 0x0C, - 0x00, 0x0C, 0x60, 0x00, 0x63, 0x00, 0x03, 0x18, 0x00, 0x18, 0xC0, 0x01, - 0xC6, 0x00, 0x0C, 0x30, 0x00, 0xC1, 0x80, 0x1E, 0x0F, 0xFF, 0xC0, 0x7F, - 0xF8, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, - 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, - 0x00, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x00, 0x00, 0x7E, 0x00, 0x01, 0xFF, - 0x80, 0x07, 0x81, 0xE0, 0x0E, 0x00, 0x70, 0x1C, 0x00, 0x38, 0x38, 0x00, - 0x1C, 0x30, 0x00, 0x0C, 0x70, 0x00, 0x0E, 0x60, 0x00, 0x06, 0x60, 0x00, - 0x06, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0x60, 0x00, 0x06, 0x60, 0x00, 0x06, 0x70, 0x00, 0x0E, 0x30, 0x00, - 0x0C, 0x18, 0x00, 0x1C, 0x0C, 0x00, 0x38, 0x06, 0x00, 0x70, 0x03, 0x81, - 0xE0, 0x00, 0xFF, 0xC0, 0x00, 0x7E, 0x00, 0x00, 0xE0, 0x00, 0x03, 0xFF, - 0x87, 0x07, 0xFF, 0xFE, 0x07, 0x00, 0xF8, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, - 0x80, 0x18, 0x03, 0xC0, 0x18, 0x00, 0xE0, 0x18, 0x00, 0x60, 0x18, 0x00, - 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, - 0x70, 0x18, 0x00, 0x60, 0x18, 0x01, 0xC0, 0x18, 0x07, 0x80, 0x1F, 0xFF, - 0x00, 0x1F, 0xFC, 0x00, 0x18, 0x0E, 0x00, 0x18, 0x07, 0x00, 0x18, 0x03, - 0x80, 0x18, 0x01, 0xC0, 0x18, 0x00, 0xE0, 0x18, 0x00, 0x60, 0x18, 0x00, - 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, 0x18, 0xFF, 0x80, 0x1F, 0xFF, 0x80, - 0x0F, 0x03, 0xF8, 0x00, 0xFF, 0xE6, 0x1E, 0x07, 0xE3, 0x80, 0x1E, 0x30, - 0x00, 0xE6, 0x00, 0x06, 0x60, 0x00, 0x66, 0x00, 0x06, 0x60, 0x00, 0x07, - 0x00, 0x00, 0x30, 0x00, 0x01, 0xC0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0xC0, - 0x00, 0x3F, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x30, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, 0x03, 0xE0, 0x00, 0x7E, 0x00, - 0x06, 0xF8, 0x01, 0xED, 0xE0, 0x7C, 0xCF, 0xFF, 0x00, 0x3F, 0xC0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x03, 0x00, 0xF0, 0x0C, 0x03, 0xC0, 0x30, - 0x0F, 0x00, 0xC0, 0x3C, 0x03, 0x00, 0xC0, 0x0C, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, - 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, - 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, - 0x03, 0x00, 0x00, 0x0C, 0x00, 0x0F, 0xFF, 0xC0, 0x3F, 0xFF, 0x00, 0xFF, - 0x01, 0xFF, 0xFE, 0x03, 0xFC, 0xC0, 0x00, 0x61, 0x80, 0x00, 0xC3, 0x00, - 0x01, 0x86, 0x00, 0x03, 0x0C, 0x00, 0x06, 0x18, 0x00, 0x0C, 0x30, 0x00, - 0x18, 0x60, 0x00, 0x30, 0xC0, 0x00, 0x61, 0x80, 0x00, 0xC3, 0x00, 0x01, - 0x86, 0x00, 0x03, 0x0C, 0x00, 0x06, 0x18, 0x00, 0x0C, 0x30, 0x00, 0x18, - 0x60, 0x00, 0x30, 0xC0, 0x00, 0x61, 0x80, 0x00, 0xC3, 0x80, 0x03, 0x83, - 0x00, 0x06, 0x07, 0x00, 0x1C, 0x07, 0x00, 0x70, 0x07, 0x83, 0xC0, 0x07, - 0xFF, 0x00, 0x03, 0xF8, 0x00, 0x7F, 0xC0, 0x3F, 0xF7, 0xFC, 0x03, 0xFF, - 0x18, 0x00, 0x01, 0x80, 0xC0, 0x00, 0x30, 0x0C, 0x00, 0x03, 0x00, 0x60, - 0x00, 0x30, 0x06, 0x00, 0x06, 0x00, 0x60, 0x00, 0x60, 0x03, 0x00, 0x0C, - 0x00, 0x30, 0x00, 0xC0, 0x03, 0x80, 0x0C, 0x00, 0x18, 0x01, 0x80, 0x01, - 0x80, 0x18, 0x00, 0x0C, 0x03, 0x00, 0x00, 0xC0, 0x30, 0x00, 0x0E, 0x03, - 0x00, 0x00, 0x60, 0x60, 0x00, 0x06, 0x06, 0x00, 0x00, 0x30, 0xC0, 0x00, - 0x03, 0x0C, 0x00, 0x00, 0x30, 0x80, 0x00, 0x01, 0x98, 0x00, 0x00, 0x19, - 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xE0, 0x00, - 0xFF, 0x80, 0x7F, 0xFF, 0xE0, 0x1F, 0xF3, 0x00, 0x00, 0x30, 0xC0, 0x00, - 0x0C, 0x30, 0x00, 0x03, 0x0C, 0x03, 0x80, 0xC3, 0x01, 0xE0, 0x30, 0x60, - 0x78, 0x0C, 0x18, 0x1F, 0x02, 0x06, 0x04, 0xC0, 0x81, 0x83, 0x30, 0x60, - 0x60, 0xCC, 0x18, 0x18, 0x31, 0x86, 0x06, 0x18, 0x61, 0x81, 0x86, 0x18, - 0x60, 0x71, 0x87, 0x18, 0x0C, 0x40, 0xC6, 0x03, 0x30, 0x31, 0x00, 0xCC, - 0x0C, 0xC0, 0x33, 0x01, 0xB0, 0x0D, 0x80, 0x6C, 0x03, 0x60, 0x1B, 0x00, - 0xD8, 0x06, 0xC0, 0x34, 0x00, 0xF0, 0x07, 0x00, 0x3C, 0x01, 0xC0, 0x0E, - 0x00, 0x7F, 0x00, 0xFF, 0x7F, 0x00, 0xFF, 0x18, 0x00, 0x18, 0x0C, 0x00, - 0x38, 0x0E, 0x00, 0x70, 0x07, 0x00, 0x60, 0x03, 0x00, 0xC0, 0x01, 0x81, - 0x80, 0x01, 0xC3, 0x80, 0x00, 0xE7, 0x00, 0x00, 0x76, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x66, - 0x00, 0x00, 0xC3, 0x00, 0x01, 0x81, 0x80, 0x03, 0x81, 0xC0, 0x07, 0x00, - 0xE0, 0x06, 0x00, 0x60, 0x0C, 0x00, 0x30, 0x18, 0x00, 0x18, 0x38, 0x00, - 0x1C, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x00, - 0xFF, 0x18, 0x00, 0x18, 0x0C, 0x00, 0x30, 0x0E, 0x00, 0x70, 0x06, 0x00, - 0x60, 0x03, 0x00, 0xC0, 0x03, 0x81, 0xC0, 0x01, 0x81, 0x80, 0x00, 0xC3, - 0x00, 0x00, 0xE7, 0x00, 0x00, 0x66, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x07, 0xFF, 0xE0, 0x07, 0xFF, - 0xE0, 0x7F, 0xFF, 0x9F, 0xFF, 0xE6, 0x00, 0x19, 0x80, 0x0C, 0x60, 0x07, - 0x18, 0x03, 0x86, 0x00, 0xC1, 0x80, 0x70, 0x00, 0x38, 0x00, 0x0C, 0x00, - 0x07, 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x38, 0x00, 0x1C, - 0x00, 0x06, 0x00, 0x03, 0x80, 0x31, 0xC0, 0x0C, 0x60, 0x03, 0x30, 0x00, - 0xDC, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0xFF, 0xFF, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, - 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x18, 0x30, 0x60, 0xFF, 0xFC, 0xC0, 0x00, 0x30, 0x00, 0x06, 0x00, - 0x01, 0x80, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x06, - 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x80, 0x00, 0x60, - 0x00, 0x1C, 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, 0x18, 0x00, 0x07, 0x00, - 0x00, 0xC0, 0x00, 0x30, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, - 0x0C, 0xFF, 0xFC, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, - 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, - 0x18, 0x30, 0x60, 0xC1, 0x83, 0xFF, 0xFC, 0x00, 0x40, 0x00, 0x30, 0x00, - 0x1E, 0x00, 0x0E, 0xC0, 0x07, 0x38, 0x01, 0x87, 0x00, 0xC0, 0xC0, 0x60, - 0x18, 0x38, 0x03, 0x1C, 0x00, 0xE6, 0x00, 0x1F, 0x00, 0x03, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xE0, 0x70, 0x3C, 0x0E, 0x07, 0x03, - 0x01, 0xFC, 0x00, 0x7F, 0xFC, 0x01, 0xC0, 0x3C, 0x00, 0x00, 0x30, 0x00, - 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x60, 0x0F, 0xF9, 0x81, 0xFF, 0xFE, 0x0F, 0x80, 0x38, 0x70, 0x00, 0x63, - 0x80, 0x01, 0x8C, 0x00, 0x06, 0x30, 0x00, 0x18, 0xC0, 0x00, 0xE3, 0x00, - 0x07, 0x86, 0x00, 0x76, 0x1E, 0x07, 0x9F, 0x3F, 0xF8, 0x7C, 0x3F, 0x80, - 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, - 0x01, 0x80, 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x1F, 0x80, - 0x18, 0xFF, 0xC0, 0x33, 0x81, 0xC0, 0x6E, 0x01, 0xC0, 0xF0, 0x00, 0xC1, - 0xE0, 0x01, 0xC3, 0x80, 0x01, 0x87, 0x00, 0x03, 0x8C, 0x00, 0x03, 0x18, - 0x00, 0x06, 0x30, 0x00, 0x0C, 0x60, 0x00, 0x18, 0xC0, 0x00, 0x31, 0x80, - 0x00, 0x63, 0x80, 0x01, 0x87, 0x00, 0x03, 0x0F, 0x00, 0x0E, 0x1F, 0x00, - 0x38, 0x37, 0x00, 0xE3, 0xE7, 0x03, 0x87, 0xC7, 0xFE, 0x00, 0x03, 0xF0, - 0x00, 0x01, 0xFC, 0x00, 0x3F, 0xF9, 0x83, 0xC0, 0xFC, 0x38, 0x01, 0xE3, - 0x00, 0x07, 0x38, 0x00, 0x19, 0x80, 0x00, 0xDC, 0x00, 0x06, 0xC0, 0x00, - 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, - 0x00, 0x03, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x70, 0x00, 0x01, 0x80, 0x00, - 0xC7, 0x00, 0x1E, 0x1E, 0x03, 0xC0, 0x7F, 0xFC, 0x00, 0xFF, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x01, 0xF8, 0x18, 0x07, - 0xFE, 0x18, 0x0F, 0x07, 0x98, 0x1C, 0x01, 0xD8, 0x38, 0x00, 0xF8, 0x70, - 0x00, 0x78, 0x60, 0x00, 0x38, 0xE0, 0x00, 0x38, 0xC0, 0x00, 0x18, 0xC0, - 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, - 0x00, 0x18, 0x60, 0x00, 0x38, 0x60, 0x00, 0x38, 0x70, 0x00, 0x78, 0x38, - 0x00, 0xD8, 0x1C, 0x01, 0xD8, 0x0F, 0x07, 0x9F, 0x07, 0xFE, 0x1F, 0x01, - 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x3F, 0xF8, 0x07, 0x80, 0xF0, 0x70, 0x01, - 0xC3, 0x00, 0x07, 0x30, 0x00, 0x19, 0x80, 0x00, 0x78, 0x00, 0x03, 0xC0, - 0x00, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x0C, 0x00, 0x00, - 0x60, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x01, 0xC0, - 0x00, 0xC7, 0x00, 0x0E, 0x1E, 0x03, 0xE0, 0x3F, 0xFC, 0x00, 0x7F, 0x00, - 0x00, 0x7F, 0xC0, 0x3F, 0xFC, 0x0E, 0x00, 0x03, 0x80, 0x00, 0x60, 0x00, - 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0xFF, 0xFF, 0x9F, 0xFF, 0xF0, - 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, - 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, - 0x60, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x03, 0xFF, 0xFC, 0x7F, 0xFF, 0x80, 0x01, 0xF8, 0x00, 0x0F, 0xFC, - 0x7C, 0x38, 0x1C, 0xF8, 0xE0, 0x0D, 0x83, 0x00, 0x0F, 0x0E, 0x00, 0x1E, - 0x18, 0x00, 0x1C, 0x70, 0x00, 0x38, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x63, - 0x00, 0x00, 0xC6, 0x00, 0x01, 0x8C, 0x00, 0x03, 0x18, 0x00, 0x06, 0x18, - 0x00, 0x1C, 0x30, 0x00, 0x38, 0x30, 0x00, 0xF0, 0x70, 0x03, 0x60, 0x78, - 0x1C, 0xC0, 0x3F, 0xF1, 0x80, 0x1F, 0x83, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, - 0x80, 0x00, 0x0E, 0x00, 0x3F, 0xF8, 0x00, 0x7F, 0xC0, 0x00, 0xF8, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, - 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x3F, 0x00, 0x18, 0xFF, 0x80, - 0x37, 0x03, 0x80, 0x7C, 0x03, 0x80, 0xF0, 0x03, 0x81, 0xC0, 0x03, 0x03, - 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, - 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, 0x03, 0x00, - 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, 0x00, - 0x63, 0xFC, 0x07, 0xFF, 0xF8, 0x0F, 0xF0, 0x01, 0xC0, 0x00, 0x70, 0x00, - 0x1C, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0x03, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, - 0xC0, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xC0, 0x03, 0x00, 0x0C, - 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, - 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, - 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, - 0x70, 0x03, 0x80, 0x1C, 0xFF, 0xE3, 0xFF, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, - 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x1F, 0xE0, 0x60, 0x7F, 0x81, - 0x80, 0x60, 0x06, 0x07, 0x00, 0x18, 0x38, 0x00, 0x61, 0xC0, 0x01, 0x8E, - 0x00, 0x06, 0x70, 0x00, 0x1B, 0x80, 0x00, 0x7F, 0x00, 0x01, 0xCE, 0x00, - 0x06, 0x1C, 0x00, 0x18, 0x38, 0x00, 0x60, 0x70, 0x01, 0x80, 0xE0, 0x06, - 0x01, 0xC0, 0x18, 0x03, 0x80, 0x60, 0x07, 0x0F, 0x80, 0x7F, 0xFE, 0x01, - 0xFF, 0x3F, 0xC0, 0x0F, 0xF0, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xF0, 0x3C, 0x0F, 0x9F, 0x87, 0xE0, 0xFB, - 0x1C, 0xC7, 0x01, 0xE0, 0xD8, 0x38, 0x1C, 0x07, 0x01, 0x81, 0x80, 0x60, - 0x18, 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x81, - 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, - 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, - 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x8F, 0xE0, - 0x7C, 0x1F, 0xFE, 0x07, 0xC1, 0xF0, 0x00, 0x1F, 0x00, 0xF8, 0xFF, 0x81, - 0xF3, 0x83, 0x80, 0x6C, 0x03, 0x80, 0xF0, 0x03, 0x81, 0xC0, 0x03, 0x03, - 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, - 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, 0x03, 0x00, - 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, 0x00, - 0x67, 0xFC, 0x03, 0xFF, 0xF8, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0xFE, - 0x00, 0xF0, 0x3C, 0x07, 0x00, 0x38, 0x38, 0x00, 0x71, 0xC0, 0x00, 0xE6, - 0x00, 0x01, 0x98, 0x00, 0x06, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x36, 0x00, 0x01, - 0x98, 0x00, 0x06, 0x70, 0x00, 0x38, 0xE0, 0x01, 0xC1, 0xC0, 0x0E, 0x03, - 0xC0, 0xF0, 0x07, 0xFF, 0x80, 0x03, 0xF0, 0x00, 0x00, 0x3F, 0x01, 0xF1, - 0xFF, 0x83, 0xE7, 0x03, 0x80, 0xD8, 0x01, 0x81, 0xE0, 0x01, 0x83, 0xC0, - 0x03, 0x87, 0x00, 0x03, 0x0E, 0x00, 0x07, 0x18, 0x00, 0x06, 0x30, 0x00, - 0x0C, 0x60, 0x00, 0x18, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x63, 0x00, 0x00, - 0xC7, 0x00, 0x03, 0x0E, 0x00, 0x06, 0x1E, 0x00, 0x18, 0x36, 0x00, 0x70, - 0x67, 0x03, 0xC0, 0xC7, 0xFE, 0x01, 0x83, 0xF0, 0x03, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, - 0x00, 0x00, 0xC0, 0x00, 0x0F, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x01, - 0xF8, 0x00, 0x07, 0xFF, 0x1F, 0x0F, 0x07, 0x9F, 0x1C, 0x01, 0xD8, 0x38, - 0x00, 0x78, 0x70, 0x00, 0x78, 0x60, 0x00, 0x38, 0xE0, 0x00, 0x38, 0xC0, - 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, - 0x00, 0x18, 0xC0, 0x00, 0x18, 0x60, 0x00, 0x38, 0x70, 0x00, 0x78, 0x30, - 0x00, 0x78, 0x1C, 0x01, 0xD8, 0x0F, 0x07, 0x98, 0x07, 0xFF, 0x18, 0x01, - 0xFC, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, - 0x03, 0xFF, 0x00, 0x03, 0xFF, 0x7E, 0x03, 0xC3, 0xF0, 0x7F, 0x81, 0x8F, - 0x0E, 0x0C, 0xE0, 0x00, 0x7E, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x00, - 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, - 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, - 0x00, 0x00, 0x30, 0x00, 0x3F, 0xFF, 0xC1, 0xFF, 0xFE, 0x00, 0x07, 0xF0, - 0x07, 0xFF, 0x63, 0xC0, 0xF9, 0xC0, 0x0E, 0x60, 0x01, 0x98, 0x00, 0x66, - 0x00, 0x19, 0xC0, 0x00, 0x38, 0x00, 0x07, 0xC0, 0x00, 0x7F, 0xC0, 0x00, - 0x7C, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, - 0xF8, 0x00, 0x7F, 0x00, 0x3B, 0xF0, 0x3C, 0xDF, 0xFE, 0x00, 0xFE, 0x00, - 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, - 0x00, 0x06, 0x00, 0x03, 0xFF, 0xFE, 0x1F, 0xFF, 0xF0, 0x0C, 0x00, 0x00, - 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, 0x00, - 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, - 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x07, 0x07, 0x01, 0xF0, 0x1F, 0xFF, 0x00, 0x3F, 0x80, 0xF8, - 0x03, 0xF1, 0xF0, 0x07, 0xE0, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, - 0x03, 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, - 0x30, 0x30, 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, - 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x38, 0x18, 0x00, 0xF0, - 0x18, 0x03, 0x60, 0x38, 0x3C, 0xF8, 0x3F, 0xF1, 0xF0, 0x1F, 0x00, 0x00, - 0x7F, 0xC0, 0xFF, 0xDF, 0xF0, 0x3F, 0xF0, 0xC0, 0x00, 0xC0, 0x30, 0x00, - 0x30, 0x06, 0x00, 0x1C, 0x01, 0x80, 0x06, 0x00, 0x30, 0x01, 0x80, 0x0C, - 0x00, 0xC0, 0x03, 0x80, 0x30, 0x00, 0x60, 0x18, 0x00, 0x18, 0x06, 0x00, - 0x03, 0x03, 0x00, 0x00, 0xC0, 0xC0, 0x00, 0x18, 0x30, 0x00, 0x06, 0x18, - 0x00, 0x00, 0xC6, 0x00, 0x00, 0x33, 0x00, 0x00, 0x0E, 0xC0, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x7F, 0x00, 0x3F, 0xDF, 0xC0, 0x0F, 0xF1, - 0x80, 0x00, 0x20, 0x60, 0x00, 0x18, 0x18, 0x00, 0x06, 0x06, 0x03, 0x01, - 0x80, 0x81, 0xE0, 0x60, 0x30, 0x78, 0x10, 0x0C, 0x1E, 0x0C, 0x03, 0x0C, - 0xC3, 0x00, 0xC3, 0x30, 0xC0, 0x10, 0xCC, 0x30, 0x06, 0x61, 0x98, 0x01, - 0x98, 0x66, 0x00, 0x66, 0x19, 0x80, 0x0B, 0x03, 0x60, 0x03, 0xC0, 0xD0, - 0x00, 0xF0, 0x1C, 0x00, 0x38, 0x07, 0x00, 0x0E, 0x01, 0xC0, 0x3F, 0x81, - 0xFE, 0x3F, 0x81, 0xFE, 0x0C, 0x00, 0x38, 0x06, 0x00, 0x70, 0x03, 0x00, - 0xE0, 0x01, 0x81, 0xC0, 0x00, 0xC3, 0x80, 0x00, 0x67, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x67, 0x00, 0x00, 0xC3, - 0x80, 0x01, 0x81, 0xC0, 0x03, 0x00, 0xE0, 0x06, 0x00, 0x70, 0x0C, 0x00, - 0x38, 0x18, 0x00, 0x1C, 0x7F, 0x81, 0xFF, 0x7F, 0x81, 0xFF, 0x7F, 0x00, - 0xFF, 0x7F, 0x00, 0xFF, 0x18, 0x00, 0x0C, 0x18, 0x00, 0x18, 0x0C, 0x00, - 0x18, 0x0C, 0x00, 0x30, 0x06, 0x00, 0x30, 0x06, 0x00, 0x60, 0x03, 0x00, - 0x60, 0x03, 0x00, 0xC0, 0x01, 0x80, 0xC0, 0x01, 0x81, 0x80, 0x00, 0xC1, - 0x80, 0x00, 0xC3, 0x00, 0x00, 0x63, 0x00, 0x00, 0x66, 0x00, 0x00, 0x36, - 0x00, 0x00, 0x34, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x7F, 0xFC, 0x00, 0x7F, 0xFC, - 0x00, 0xFF, 0xFF, 0x7F, 0xFF, 0xB0, 0x01, 0x98, 0x01, 0xCC, 0x01, 0xC0, - 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xE0, - 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x03, 0x70, - 0x01, 0xB0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xE0, 0x7C, 0x0C, - 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, - 0x00, 0x60, 0x0C, 0x03, 0x00, 0xE0, 0xF0, 0x1E, 0x00, 0x70, 0x06, 0x00, - 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, - 0x0C, 0x01, 0x80, 0x18, 0x03, 0xE0, 0x1C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0xE0, 0x1F, 0x00, 0x60, 0x06, 0x00, 0xC0, 0x18, - 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x01, - 0x80, 0x38, 0x01, 0xE0, 0x3C, 0x1C, 0x03, 0x00, 0xC0, 0x18, 0x03, 0x00, - 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0xC0, - 0xF8, 0x1C, 0x00, 0x0F, 0x00, 0x03, 0xFC, 0x03, 0x70, 0xE0, 0x76, 0x07, - 0x8E, 0xC0, 0x1F, 0xC0, 0x00, 0xF0}; - -const GFXglyph FreeMono24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 5, 30, 28, 11, -28}, // 0x21 '!' - {19, 16, 14, 28, 6, -28}, // 0x22 '"' - {47, 19, 32, 28, 4, -29}, // 0x23 '#' - {123, 18, 33, 28, 5, -29}, // 0x24 '$' - {198, 20, 29, 28, 4, -27}, // 0x25 '%' - {271, 18, 25, 28, 5, -23}, // 0x26 '&' - {328, 7, 14, 28, 11, -28}, // 0x27 ''' - {341, 7, 34, 28, 14, -27}, // 0x28 '(' - {371, 7, 34, 28, 8, -27}, // 0x29 ')' - {401, 18, 16, 28, 5, -27}, // 0x2A '*' - {437, 20, 22, 28, 4, -23}, // 0x2B '+' - {492, 9, 14, 28, 6, -6}, // 0x2C ',' - {508, 22, 2, 28, 3, -13}, // 0x2D '-' - {514, 7, 6, 28, 11, -4}, // 0x2E '.' - {520, 18, 35, 28, 5, -30}, // 0x2F '/' - {599, 18, 30, 28, 5, -28}, // 0x30 '0' - {667, 16, 29, 28, 6, -28}, // 0x31 '1' - {725, 18, 29, 28, 5, -28}, // 0x32 '2' - {791, 19, 30, 28, 5, -28}, // 0x33 '3' - {863, 16, 28, 28, 6, -27}, // 0x34 '4' - {919, 19, 29, 28, 5, -27}, // 0x35 '5' - {988, 18, 30, 28, 6, -28}, // 0x36 '6' - {1056, 18, 28, 28, 5, -27}, // 0x37 '7' - {1119, 18, 30, 28, 5, -28}, // 0x38 '8' - {1187, 18, 30, 28, 6, -28}, // 0x39 '9' - {1255, 7, 21, 28, 11, -19}, // 0x3A ':' - {1274, 10, 27, 28, 7, -19}, // 0x3B ';' - {1308, 22, 22, 28, 3, -23}, // 0x3C '<' - {1369, 24, 9, 28, 2, -17}, // 0x3D '=' - {1396, 21, 22, 28, 4, -23}, // 0x3E '>' - {1454, 17, 28, 28, 6, -26}, // 0x3F '?' - {1514, 18, 32, 28, 5, -28}, // 0x40 '@' - {1586, 28, 26, 28, 0, -25}, // 0x41 'A' - {1677, 22, 26, 28, 3, -25}, // 0x42 'B' - {1749, 22, 28, 28, 3, -26}, // 0x43 'C' - {1826, 22, 26, 28, 3, -25}, // 0x44 'D' - {1898, 22, 26, 28, 3, -25}, // 0x45 'E' - {1970, 22, 26, 28, 3, -25}, // 0x46 'F' - {2042, 23, 28, 28, 3, -26}, // 0x47 'G' - {2123, 23, 26, 28, 3, -25}, // 0x48 'H' - {2198, 16, 26, 28, 6, -25}, // 0x49 'I' - {2250, 23, 27, 28, 4, -25}, // 0x4A 'J' - {2328, 24, 26, 28, 3, -25}, // 0x4B 'K' - {2406, 21, 26, 28, 4, -25}, // 0x4C 'L' - {2475, 26, 26, 28, 1, -25}, // 0x4D 'M' - {2560, 24, 26, 28, 2, -25}, // 0x4E 'N' - {2638, 24, 28, 28, 2, -26}, // 0x4F 'O' - {2722, 21, 26, 28, 3, -25}, // 0x50 'P' - {2791, 24, 32, 28, 2, -26}, // 0x51 'Q' - {2887, 24, 26, 28, 3, -25}, // 0x52 'R' - {2965, 20, 28, 28, 4, -26}, // 0x53 'S' - {3035, 22, 26, 28, 3, -25}, // 0x54 'T' - {3107, 23, 27, 28, 3, -25}, // 0x55 'U' - {3185, 28, 26, 28, 0, -25}, // 0x56 'V' - {3276, 26, 26, 28, 1, -25}, // 0x57 'W' - {3361, 24, 26, 28, 2, -25}, // 0x58 'X' - {3439, 24, 26, 28, 2, -25}, // 0x59 'Y' - {3517, 18, 26, 28, 5, -25}, // 0x5A 'Z' - {3576, 7, 34, 28, 13, -27}, // 0x5B '[' - {3606, 18, 35, 28, 5, -30}, // 0x5C '\' - {3685, 7, 34, 28, 8, -27}, // 0x5D ']' - {3715, 18, 12, 28, 5, -28}, // 0x5E '^' - {3742, 28, 2, 28, 0, 5}, // 0x5F '_' - {3749, 8, 7, 28, 7, -29}, // 0x60 '`' - {3756, 22, 22, 28, 3, -20}, // 0x61 'a' - {3817, 23, 29, 28, 2, -27}, // 0x62 'b' - {3901, 21, 22, 28, 4, -20}, // 0x63 'c' - {3959, 24, 29, 28, 3, -27}, // 0x64 'd' - {4046, 21, 22, 28, 3, -20}, // 0x65 'e' - {4104, 19, 28, 28, 6, -27}, // 0x66 'f' - {4171, 23, 30, 28, 3, -20}, // 0x67 'g' - {4258, 23, 28, 28, 3, -27}, // 0x68 'h' - {4339, 18, 29, 28, 5, -28}, // 0x69 'i' - {4405, 14, 38, 28, 6, -28}, // 0x6A 'j' - {4472, 22, 28, 28, 4, -27}, // 0x6B 'k' - {4549, 18, 28, 28, 5, -27}, // 0x6C 'l' - {4612, 28, 21, 28, 0, -20}, // 0x6D 'm' - {4686, 23, 21, 28, 2, -20}, // 0x6E 'n' - {4747, 22, 22, 28, 3, -20}, // 0x6F 'o' - {4808, 23, 30, 28, 2, -20}, // 0x70 'p' - {4895, 24, 30, 28, 3, -20}, // 0x71 'q' - {4985, 21, 20, 28, 5, -19}, // 0x72 'r' - {5038, 18, 22, 28, 5, -20}, // 0x73 's' - {5088, 21, 27, 28, 3, -25}, // 0x74 't' - {5159, 23, 21, 28, 3, -19}, // 0x75 'u' - {5220, 26, 20, 28, 1, -19}, // 0x76 'v' - {5285, 26, 20, 28, 1, -19}, // 0x77 'w' - {5350, 24, 20, 28, 2, -19}, // 0x78 'x' - {5410, 24, 29, 28, 2, -19}, // 0x79 'y' - {5497, 17, 20, 28, 6, -19}, // 0x7A 'z' - {5540, 11, 34, 28, 8, -27}, // 0x7B '{' - {5587, 2, 34, 28, 13, -27}, // 0x7C '|' - {5596, 11, 34, 28, 9, -27}, // 0x7D '}' - {5643, 20, 6, 28, 4, -15}}; // 0x7E '~' - -const GFXfont FreeMono24pt7b PROGMEM = {(uint8_t *)FreeMono24pt7bBitmaps, - (GFXglyph *)FreeMono24pt7bGlyphs, 0x20, - 0x7E, 47}; - -// Approx. 6330 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono9pt7b.h deleted file mode 100644 index a2e9a00..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMono9pt7b.h +++ /dev/null @@ -1,178 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono9pt7bBitmaps[] PROGMEM = { - 0xAA, 0xA8, 0x0C, 0xED, 0x24, 0x92, 0x48, 0x24, 0x48, 0x91, 0x2F, 0xE4, - 0x89, 0x7F, 0x28, 0x51, 0x22, 0x40, 0x08, 0x3E, 0x62, 0x40, 0x30, 0x0E, - 0x01, 0x81, 0xC3, 0xBE, 0x08, 0x08, 0x71, 0x12, 0x23, 0x80, 0x23, 0xB8, - 0x0E, 0x22, 0x44, 0x70, 0x38, 0x81, 0x02, 0x06, 0x1A, 0x65, 0x46, 0xC8, - 0xEC, 0xE9, 0x24, 0x5A, 0xAA, 0xA9, 0x40, 0xA9, 0x55, 0x5A, 0x80, 0x10, - 0x22, 0x4B, 0xE3, 0x05, 0x11, 0x00, 0x10, 0x20, 0x47, 0xF1, 0x02, 0x04, - 0x00, 0x6B, 0x48, 0xFF, 0x00, 0xF0, 0x02, 0x08, 0x10, 0x60, 0x81, 0x04, - 0x08, 0x20, 0x41, 0x02, 0x08, 0x00, 0x38, 0x8A, 0x0C, 0x18, 0x30, 0x60, - 0xC1, 0x82, 0x88, 0xE0, 0x27, 0x28, 0x42, 0x10, 0x84, 0x21, 0x3E, 0x38, - 0x8A, 0x08, 0x10, 0x20, 0x82, 0x08, 0x61, 0x03, 0xF8, 0x7C, 0x06, 0x02, - 0x02, 0x1C, 0x06, 0x01, 0x01, 0x01, 0x42, 0x3C, 0x18, 0xA2, 0x92, 0x8A, - 0x28, 0xBF, 0x08, 0x21, 0xC0, 0x7C, 0x81, 0x03, 0xE4, 0x40, 0x40, 0x81, - 0x03, 0x88, 0xE0, 0x1E, 0x41, 0x04, 0x0B, 0x98, 0xB0, 0xC1, 0xC2, 0x88, - 0xE0, 0xFE, 0x04, 0x08, 0x20, 0x40, 0x82, 0x04, 0x08, 0x20, 0x40, 0x38, - 0x8A, 0x0C, 0x14, 0x47, 0x11, 0x41, 0x83, 0x8C, 0xE0, 0x38, 0x8A, 0x1C, - 0x18, 0x68, 0xCE, 0x81, 0x04, 0x13, 0xC0, 0xF0, 0x0F, 0x6C, 0x00, 0xD2, - 0xD2, 0x00, 0x03, 0x04, 0x18, 0x60, 0x60, 0x18, 0x04, 0x03, 0xFF, 0x80, - 0x00, 0x1F, 0xF0, 0x40, 0x18, 0x03, 0x00, 0x60, 0x20, 0x60, 0xC0, 0x80, - 0x3D, 0x84, 0x08, 0x30, 0xC2, 0x00, 0x00, 0x00, 0x30, 0x3C, 0x46, 0x82, - 0x8E, 0xB2, 0xA2, 0xA2, 0x9F, 0x80, 0x80, 0x40, 0x3C, 0x3C, 0x01, 0x40, - 0x28, 0x09, 0x01, 0x10, 0x42, 0x0F, 0xC1, 0x04, 0x40, 0x9E, 0x3C, 0xFE, - 0x21, 0x90, 0x48, 0x67, 0xE2, 0x09, 0x02, 0x81, 0x41, 0xFF, 0x80, 0x3E, - 0xB0, 0xF0, 0x30, 0x08, 0x04, 0x02, 0x00, 0x80, 0x60, 0x8F, 0x80, 0xFE, - 0x21, 0x90, 0x68, 0x14, 0x0A, 0x05, 0x02, 0x83, 0x43, 0x7F, 0x00, 0xFF, - 0x20, 0x90, 0x08, 0x87, 0xC2, 0x21, 0x00, 0x81, 0x40, 0xFF, 0xC0, 0xFF, - 0xA0, 0x50, 0x08, 0x87, 0xC2, 0x21, 0x00, 0x80, 0x40, 0x78, 0x00, 0x1E, - 0x98, 0x6C, 0x0A, 0x00, 0x80, 0x20, 0xF8, 0x0B, 0x02, 0x60, 0x87, 0xC0, - 0xE3, 0xA0, 0x90, 0x48, 0x27, 0xF2, 0x09, 0x04, 0x82, 0x41, 0x71, 0xC0, - 0xF9, 0x08, 0x42, 0x10, 0x84, 0x27, 0xC0, 0x1F, 0x02, 0x02, 0x02, 0x02, - 0x02, 0x82, 0x82, 0xC6, 0x78, 0xE3, 0xA1, 0x11, 0x09, 0x05, 0x83, 0x21, - 0x08, 0x84, 0x41, 0x70, 0xC0, 0xE0, 0x40, 0x40, 0x40, 0x40, 0x40, 0x41, - 0x41, 0x41, 0xFF, 0xE0, 0xEC, 0x19, 0x45, 0x28, 0xA4, 0xA4, 0x94, 0x91, - 0x12, 0x02, 0x40, 0x5C, 0x1C, 0xC3, 0xB0, 0x94, 0x4A, 0x24, 0x92, 0x49, - 0x14, 0x8A, 0x43, 0x70, 0x80, 0x1E, 0x31, 0x90, 0x50, 0x18, 0x0C, 0x06, - 0x02, 0x82, 0x63, 0x0F, 0x00, 0xFE, 0x43, 0x41, 0x41, 0x42, 0x7C, 0x40, - 0x40, 0x40, 0xF0, 0x1C, 0x31, 0x90, 0x50, 0x18, 0x0C, 0x06, 0x02, 0x82, - 0x63, 0x1F, 0x04, 0x07, 0x92, 0x30, 0xFE, 0x21, 0x90, 0x48, 0x24, 0x23, - 0xE1, 0x10, 0x84, 0x41, 0x70, 0xC0, 0x3A, 0xCD, 0x0A, 0x03, 0x01, 0x80, - 0xC1, 0xC7, 0x78, 0xFF, 0xC4, 0x62, 0x21, 0x00, 0x80, 0x40, 0x20, 0x10, - 0x08, 0x1F, 0x00, 0xE3, 0xA0, 0x90, 0x48, 0x24, 0x12, 0x09, 0x04, 0x82, - 0x22, 0x0E, 0x00, 0xF1, 0xE8, 0x10, 0x82, 0x10, 0x42, 0x10, 0x22, 0x04, - 0x80, 0x50, 0x0C, 0x00, 0x80, 0xF1, 0xE8, 0x09, 0x11, 0x25, 0x44, 0xA8, - 0x55, 0x0C, 0xA1, 0x8C, 0x31, 0x84, 0x30, 0xE3, 0xA0, 0x88, 0x82, 0x80, - 0x80, 0xC0, 0x90, 0x44, 0x41, 0x71, 0xC0, 0xE3, 0xA0, 0x88, 0x82, 0x81, - 0x40, 0x40, 0x20, 0x10, 0x08, 0x1F, 0x00, 0xFD, 0x0A, 0x20, 0x81, 0x04, - 0x10, 0x21, 0x83, 0xFC, 0xEA, 0xAA, 0xAA, 0xC0, 0x80, 0x81, 0x03, 0x02, - 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0xD5, 0x55, 0x55, 0xC0, - 0x10, 0x51, 0x22, 0x28, 0x20, 0xFF, 0xE0, 0x88, 0x80, 0x7E, 0x00, 0x80, - 0x47, 0xEC, 0x14, 0x0A, 0x0C, 0xFB, 0xC0, 0x20, 0x10, 0x0B, 0xC6, 0x12, - 0x05, 0x02, 0x81, 0x40, 0xB0, 0xB7, 0x80, 0x3A, 0x8E, 0x0C, 0x08, 0x10, - 0x10, 0x9E, 0x03, 0x00, 0x80, 0x47, 0xA4, 0x34, 0x0A, 0x05, 0x02, 0x81, - 0x21, 0x8F, 0x60, 0x3C, 0x43, 0x81, 0xFF, 0x80, 0x80, 0x61, 0x3E, 0x3D, - 0x04, 0x3E, 0x41, 0x04, 0x10, 0x41, 0x0F, 0x80, 0x3D, 0xA1, 0xA0, 0x50, - 0x28, 0x14, 0x09, 0x0C, 0x7A, 0x01, 0x01, 0x87, 0x80, 0xC0, 0x20, 0x10, - 0x0B, 0xC6, 0x32, 0x09, 0x04, 0x82, 0x41, 0x20, 0xB8, 0xE0, 0x10, 0x01, - 0xC0, 0x81, 0x02, 0x04, 0x08, 0x11, 0xFC, 0x10, 0x3E, 0x10, 0x84, 0x21, - 0x08, 0x42, 0x3F, 0x00, 0xC0, 0x40, 0x40, 0x4F, 0x44, 0x58, 0x70, 0x48, - 0x44, 0x42, 0xC7, 0x70, 0x20, 0x40, 0x81, 0x02, 0x04, 0x08, 0x10, 0x23, - 0xF8, 0xB7, 0x64, 0x62, 0x31, 0x18, 0x8C, 0x46, 0x23, 0x91, 0x5E, 0x31, - 0x90, 0x48, 0x24, 0x12, 0x09, 0x05, 0xC7, 0x3E, 0x31, 0xA0, 0x30, 0x18, - 0x0C, 0x05, 0x8C, 0x7C, 0xDE, 0x30, 0x90, 0x28, 0x14, 0x0A, 0x05, 0x84, - 0xBC, 0x40, 0x20, 0x38, 0x00, 0x3D, 0xA1, 0xA0, 0x50, 0x28, 0x14, 0x09, - 0x0C, 0x7A, 0x01, 0x00, 0x80, 0xE0, 0xCE, 0xA1, 0x82, 0x04, 0x08, 0x10, - 0x7C, 0x3A, 0x8D, 0x0B, 0x80, 0xF0, 0x70, 0xDE, 0x40, 0x40, 0xFC, 0x40, - 0x40, 0x40, 0x40, 0x40, 0x41, 0x3E, 0xC3, 0x41, 0x41, 0x41, 0x41, 0x41, - 0x43, 0x3D, 0xE3, 0xA0, 0x90, 0x84, 0x42, 0x20, 0xA0, 0x50, 0x10, 0xE3, - 0xC0, 0x92, 0x4B, 0x25, 0x92, 0xA9, 0x98, 0x44, 0xE3, 0x31, 0x05, 0x01, - 0x01, 0x41, 0x11, 0x05, 0xC7, 0xE3, 0xA0, 0x90, 0x84, 0x42, 0x40, 0xA0, - 0x60, 0x10, 0x10, 0x08, 0x3E, 0x00, 0xFD, 0x08, 0x20, 0x82, 0x08, 0x10, - 0xBF, 0x29, 0x24, 0xA2, 0x49, 0x26, 0xFF, 0xF8, 0x89, 0x24, 0x8A, 0x49, - 0x2C, 0x61, 0x24, 0x30}; - -const GFXglyph FreeMono9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 2, 11, 11, 4, -10}, // 0x21 '!' - {3, 6, 5, 11, 2, -10}, // 0x22 '"' - {7, 7, 12, 11, 2, -10}, // 0x23 '#' - {18, 8, 12, 11, 1, -10}, // 0x24 '$' - {30, 7, 11, 11, 2, -10}, // 0x25 '%' - {40, 7, 10, 11, 2, -9}, // 0x26 '&' - {49, 3, 5, 11, 4, -10}, // 0x27 ''' - {51, 2, 13, 11, 5, -10}, // 0x28 '(' - {55, 2, 13, 11, 4, -10}, // 0x29 ')' - {59, 7, 7, 11, 2, -10}, // 0x2A '*' - {66, 7, 7, 11, 2, -8}, // 0x2B '+' - {73, 3, 5, 11, 2, -1}, // 0x2C ',' - {75, 9, 1, 11, 1, -5}, // 0x2D '-' - {77, 2, 2, 11, 4, -1}, // 0x2E '.' - {78, 7, 13, 11, 2, -11}, // 0x2F '/' - {90, 7, 11, 11, 2, -10}, // 0x30 '0' - {100, 5, 11, 11, 3, -10}, // 0x31 '1' - {107, 7, 11, 11, 2, -10}, // 0x32 '2' - {117, 8, 11, 11, 1, -10}, // 0x33 '3' - {128, 6, 11, 11, 3, -10}, // 0x34 '4' - {137, 7, 11, 11, 2, -10}, // 0x35 '5' - {147, 7, 11, 11, 2, -10}, // 0x36 '6' - {157, 7, 11, 11, 2, -10}, // 0x37 '7' - {167, 7, 11, 11, 2, -10}, // 0x38 '8' - {177, 7, 11, 11, 2, -10}, // 0x39 '9' - {187, 2, 8, 11, 4, -7}, // 0x3A ':' - {189, 3, 11, 11, 3, -7}, // 0x3B ';' - {194, 8, 8, 11, 1, -8}, // 0x3C '<' - {202, 9, 4, 11, 1, -6}, // 0x3D '=' - {207, 9, 8, 11, 1, -8}, // 0x3E '>' - {216, 7, 10, 11, 2, -9}, // 0x3F '?' - {225, 8, 12, 11, 2, -10}, // 0x40 '@' - {237, 11, 10, 11, 0, -9}, // 0x41 'A' - {251, 9, 10, 11, 1, -9}, // 0x42 'B' - {263, 9, 10, 11, 1, -9}, // 0x43 'C' - {275, 9, 10, 11, 1, -9}, // 0x44 'D' - {287, 9, 10, 11, 1, -9}, // 0x45 'E' - {299, 9, 10, 11, 1, -9}, // 0x46 'F' - {311, 10, 10, 11, 1, -9}, // 0x47 'G' - {324, 9, 10, 11, 1, -9}, // 0x48 'H' - {336, 5, 10, 11, 3, -9}, // 0x49 'I' - {343, 8, 10, 11, 2, -9}, // 0x4A 'J' - {353, 9, 10, 11, 1, -9}, // 0x4B 'K' - {365, 8, 10, 11, 2, -9}, // 0x4C 'L' - {375, 11, 10, 11, 0, -9}, // 0x4D 'M' - {389, 9, 10, 11, 1, -9}, // 0x4E 'N' - {401, 9, 10, 11, 1, -9}, // 0x4F 'O' - {413, 8, 10, 11, 1, -9}, // 0x50 'P' - {423, 9, 13, 11, 1, -9}, // 0x51 'Q' - {438, 9, 10, 11, 1, -9}, // 0x52 'R' - {450, 7, 10, 11, 2, -9}, // 0x53 'S' - {459, 9, 10, 11, 1, -9}, // 0x54 'T' - {471, 9, 10, 11, 1, -9}, // 0x55 'U' - {483, 11, 10, 11, 0, -9}, // 0x56 'V' - {497, 11, 10, 11, 0, -9}, // 0x57 'W' - {511, 9, 10, 11, 1, -9}, // 0x58 'X' - {523, 9, 10, 11, 1, -9}, // 0x59 'Y' - {535, 7, 10, 11, 2, -9}, // 0x5A 'Z' - {544, 2, 13, 11, 5, -10}, // 0x5B '[' - {548, 7, 13, 11, 2, -11}, // 0x5C '\' - {560, 2, 13, 11, 4, -10}, // 0x5D ']' - {564, 7, 5, 11, 2, -10}, // 0x5E '^' - {569, 11, 1, 11, 0, 2}, // 0x5F '_' - {571, 3, 3, 11, 3, -11}, // 0x60 '`' - {573, 9, 8, 11, 1, -7}, // 0x61 'a' - {582, 9, 11, 11, 1, -10}, // 0x62 'b' - {595, 7, 8, 11, 2, -7}, // 0x63 'c' - {602, 9, 11, 11, 1, -10}, // 0x64 'd' - {615, 8, 8, 11, 1, -7}, // 0x65 'e' - {623, 6, 11, 11, 3, -10}, // 0x66 'f' - {632, 9, 11, 11, 1, -7}, // 0x67 'g' - {645, 9, 11, 11, 1, -10}, // 0x68 'h' - {658, 7, 10, 11, 2, -9}, // 0x69 'i' - {667, 5, 13, 11, 3, -9}, // 0x6A 'j' - {676, 8, 11, 11, 2, -10}, // 0x6B 'k' - {687, 7, 11, 11, 2, -10}, // 0x6C 'l' - {697, 9, 8, 11, 1, -7}, // 0x6D 'm' - {706, 9, 8, 11, 1, -7}, // 0x6E 'n' - {715, 9, 8, 11, 1, -7}, // 0x6F 'o' - {724, 9, 11, 11, 1, -7}, // 0x70 'p' - {737, 9, 11, 11, 1, -7}, // 0x71 'q' - {750, 7, 8, 11, 3, -7}, // 0x72 'r' - {757, 7, 8, 11, 2, -7}, // 0x73 's' - {764, 8, 10, 11, 2, -9}, // 0x74 't' - {774, 8, 8, 11, 1, -7}, // 0x75 'u' - {782, 9, 8, 11, 1, -7}, // 0x76 'v' - {791, 9, 8, 11, 1, -7}, // 0x77 'w' - {800, 9, 8, 11, 1, -7}, // 0x78 'x' - {809, 9, 11, 11, 1, -7}, // 0x79 'y' - {822, 7, 8, 11, 2, -7}, // 0x7A 'z' - {829, 3, 13, 11, 4, -10}, // 0x7B '{' - {834, 1, 13, 11, 5, -10}, // 0x7C '|' - {836, 3, 13, 11, 4, -10}, // 0x7D '}' - {841, 7, 3, 11, 2, -6}}; // 0x7E '~' - -const GFXfont FreeMono9pt7b PROGMEM = {(uint8_t *)FreeMono9pt7bBitmaps, - (GFXglyph *)FreeMono9pt7bGlyphs, 0x20, - 0x7E, 18}; - -// Approx. 1516 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h deleted file mode 100644 index a205386..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h +++ /dev/null @@ -1,252 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xF6, 0x66, 0x60, 0x6F, 0x60, 0xE7, 0xE7, 0x62, 0x42, - 0x42, 0x42, 0x42, 0x11, 0x87, 0x30, 0xC6, 0x18, 0xC3, 0x31, 0xFF, 0xFF, - 0xF9, 0x98, 0x33, 0x06, 0x60, 0xCC, 0x7F, 0xEF, 0xFC, 0x66, 0x0C, 0xC3, - 0x98, 0x63, 0x04, 0x40, 0x0C, 0x03, 0x00, 0xC0, 0xFE, 0x7F, 0x9C, 0x66, - 0x09, 0x80, 0x78, 0x0F, 0xE0, 0x7F, 0x03, 0xE0, 0xF8, 0x7F, 0xFB, 0xFC, - 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x38, 0x1F, 0x0C, 0x42, 0x10, 0xC4, 0x1F, - 0x03, 0x9C, 0x3C, 0x7F, 0x33, 0xE0, 0x8C, 0x21, 0x08, 0xC3, 0xE0, 0x70, - 0x3E, 0x1F, 0xC6, 0x61, 0x80, 0x70, 0x0C, 0x07, 0x83, 0xEE, 0xDF, 0xB3, - 0xCC, 0x73, 0xFE, 0x7F, 0x80, 0xFD, 0x24, 0x90, 0x39, 0xDC, 0xE6, 0x73, - 0x18, 0xC6, 0x31, 0x8C, 0x31, 0x8E, 0x31, 0xC4, 0xE7, 0x1C, 0xE3, 0x1C, - 0x63, 0x18, 0xC6, 0x31, 0x98, 0xCE, 0x67, 0x10, 0x0C, 0x03, 0x00, 0xC3, - 0xB7, 0xFF, 0xDF, 0xE1, 0xE0, 0xFC, 0x33, 0x0C, 0xC0, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x00, 0x3B, 0x9C, 0xCE, 0x62, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0x80, 0x00, 0x40, 0x30, 0x1C, 0x07, 0x03, 0x80, 0xE0, 0x30, - 0x1C, 0x06, 0x03, 0x80, 0xC0, 0x70, 0x18, 0x0E, 0x03, 0x01, 0xC0, 0x60, - 0x38, 0x0E, 0x01, 0x00, 0x1E, 0x0F, 0xC6, 0x1B, 0x87, 0xC0, 0xF0, 0x3C, - 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x87, 0x61, 0x8F, 0xC1, 0xE0, 0x1C, - 0x0F, 0x0F, 0xC3, 0xB0, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x3F, 0xFF, 0xFC, 0x1F, 0x1F, 0xEE, 0x1F, 0x83, 0xC0, - 0xC0, 0x70, 0x38, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE3, 0xF0, 0xFF, 0xFF, - 0xFC, 0x3F, 0x0F, 0xF1, 0x87, 0x00, 0x60, 0x0C, 0x03, 0x83, 0xE0, 0x7C, - 0x01, 0xC0, 0x0C, 0x01, 0x80, 0x3C, 0x0F, 0xFF, 0x9F, 0xC0, 0x07, 0x07, - 0x83, 0xC3, 0xE1, 0xB1, 0xD8, 0xCC, 0xC6, 0xE3, 0x7F, 0xFF, 0xE0, 0x61, - 0xF8, 0xFC, 0x7F, 0x9F, 0xE6, 0x01, 0x80, 0x60, 0x1F, 0x87, 0xF9, 0x86, - 0x00, 0xC0, 0x30, 0x0C, 0x03, 0xC1, 0xBF, 0xE7, 0xE0, 0x07, 0xC7, 0xF3, - 0xC1, 0xC0, 0x60, 0x38, 0x0E, 0xF3, 0xFE, 0xF1, 0xF8, 0x3E, 0x0F, 0x83, - 0x71, 0xCF, 0xE1, 0xF0, 0xFF, 0xFF, 0xFC, 0x1F, 0x07, 0x01, 0x80, 0x60, - 0x38, 0x0C, 0x03, 0x01, 0xC0, 0x60, 0x18, 0x0E, 0x03, 0x00, 0xC0, 0x1E, - 0x1F, 0xEE, 0x1F, 0x03, 0xC0, 0xF0, 0x36, 0x19, 0xFE, 0x7F, 0xB8, 0x7C, - 0x0F, 0x03, 0xE1, 0xDF, 0xE3, 0xF0, 0x3E, 0x1F, 0xCE, 0x3B, 0x07, 0xC1, - 0xF0, 0x7E, 0x3D, 0xFF, 0x3D, 0xC0, 0x70, 0x18, 0x0E, 0x0F, 0x3F, 0x8F, - 0x80, 0xFF, 0x80, 0x00, 0xFF, 0x80, 0x77, 0x70, 0x00, 0x00, 0x76, 0x6C, - 0xC8, 0x80, 0x00, 0x30, 0x0F, 0x03, 0xE0, 0xF8, 0x3E, 0x0F, 0x80, 0x3E, - 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x00, 0x20, 0xFF, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x0F, 0x80, 0x3E, 0x00, 0xF8, - 0x03, 0xE0, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x0F, 0x00, 0x40, 0x00, 0x7C, - 0x7F, 0xB0, 0xF8, 0x30, 0x18, 0x1C, 0x3C, 0x3C, 0x18, 0x08, 0x00, 0x07, - 0x03, 0x81, 0xC0, 0x1E, 0x07, 0xF1, 0xC7, 0x30, 0x6C, 0x0D, 0x87, 0xB3, - 0xF6, 0xE6, 0xD8, 0xDB, 0x1B, 0x73, 0x67, 0xFC, 0x7F, 0x80, 0x30, 0x03, - 0x00, 0x71, 0xC7, 0xF8, 0x7C, 0x00, 0x3F, 0x80, 0x7F, 0x80, 0x1F, 0x00, - 0x76, 0x00, 0xEE, 0x01, 0x8C, 0x07, 0x18, 0x0E, 0x38, 0x1F, 0xF0, 0x7F, - 0xF0, 0xC0, 0x61, 0x80, 0xCF, 0xC7, 0xFF, 0x8F, 0xC0, 0xFF, 0xC7, 0xFF, - 0x0C, 0x1C, 0x60, 0x63, 0x03, 0x18, 0x38, 0xFF, 0x87, 0xFE, 0x30, 0x39, - 0x80, 0xCC, 0x06, 0x60, 0x7F, 0xFF, 0x7F, 0xF0, 0x0F, 0xF3, 0xFF, 0x70, - 0x76, 0x03, 0xC0, 0x3C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0x60, - 0x37, 0x07, 0x3F, 0xF0, 0xFC, 0xFF, 0x0F, 0xFC, 0x60, 0xE6, 0x06, 0x60, - 0x36, 0x03, 0x60, 0x36, 0x03, 0x60, 0x36, 0x03, 0x60, 0x76, 0x0E, 0xFF, - 0xCF, 0xF8, 0xFF, 0xF7, 0xFF, 0x8C, 0x0C, 0x60, 0x63, 0x1B, 0x18, 0xC0, - 0xFE, 0x07, 0xF0, 0x31, 0x81, 0x8C, 0xCC, 0x06, 0x60, 0x3F, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFF, 0xCC, 0x06, 0x60, 0x33, 0x19, 0x98, 0xC0, 0xFE, - 0x07, 0xF0, 0x31, 0x81, 0x8C, 0x0C, 0x00, 0x60, 0x0F, 0xF0, 0x7F, 0x80, - 0x0F, 0xF1, 0xFF, 0x9C, 0x1C, 0xC0, 0x6C, 0x03, 0x60, 0x03, 0x00, 0x18, - 0x7F, 0xC3, 0xFE, 0x01, 0xB8, 0x0C, 0xE0, 0xE3, 0xFF, 0x07, 0xE0, 0x7C, - 0xF9, 0xF3, 0xE3, 0x03, 0x0C, 0x0C, 0x30, 0x30, 0xC0, 0xC3, 0xFF, 0x0F, - 0xFC, 0x30, 0x30, 0xC0, 0xC3, 0x03, 0x0C, 0x0C, 0xFC, 0xFF, 0xF3, 0xF0, - 0xFF, 0xFF, 0xF0, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, - 0x00, 0xC0, 0x30, 0xFF, 0xFF, 0xF0, 0x0F, 0xF8, 0x7F, 0xC0, 0x30, 0x01, - 0x80, 0x0C, 0x00, 0x60, 0x03, 0x18, 0x18, 0xC0, 0xC6, 0x06, 0x30, 0x31, - 0xC3, 0x0F, 0xF8, 0x1F, 0x00, 0xFC, 0xFB, 0xF3, 0xE3, 0x0E, 0x0C, 0x70, - 0x33, 0x80, 0xFC, 0x03, 0xF0, 0x0F, 0xE0, 0x39, 0xC0, 0xC3, 0x03, 0x0E, - 0x0C, 0x18, 0xFC, 0x7F, 0xF0, 0xF0, 0xFF, 0x0F, 0xF0, 0x18, 0x01, 0x80, - 0x18, 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x31, 0x83, 0x18, 0x31, 0x83, - 0xFF, 0xFF, 0xFF, 0xF0, 0x3F, 0xC0, 0xF7, 0x87, 0x9E, 0x1E, 0x7C, 0xF9, - 0xB3, 0xE6, 0xFD, 0x99, 0xF6, 0x67, 0x99, 0x8E, 0x66, 0x31, 0x98, 0x06, - 0xFC, 0xFF, 0xF3, 0xF0, 0xF1, 0xFF, 0xCF, 0xCF, 0x0C, 0x78, 0x63, 0xE3, - 0x1B, 0x18, 0xDC, 0xC6, 0x76, 0x31, 0xB1, 0x8F, 0x8C, 0x3C, 0x61, 0xE7, - 0xE7, 0x3F, 0x18, 0x0F, 0x03, 0xFC, 0x70, 0xE6, 0x06, 0xE0, 0x7C, 0x03, - 0xC0, 0x3C, 0x03, 0xC0, 0x3E, 0x07, 0x60, 0x67, 0x0E, 0x3F, 0xC0, 0xF0, - 0xFF, 0x8F, 0xFE, 0x30, 0x73, 0x03, 0x30, 0x33, 0x03, 0x30, 0x73, 0xFE, - 0x3F, 0x83, 0x00, 0x30, 0x03, 0x00, 0xFF, 0x0F, 0xF0, 0x0F, 0x03, 0xFC, - 0x70, 0xE6, 0x06, 0xE0, 0x7C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3E, 0x07, - 0x60, 0x67, 0x0E, 0x3F, 0xC1, 0xF0, 0x18, 0x33, 0xFF, 0x3F, 0xE0, 0xFF, - 0x83, 0xFF, 0x83, 0x07, 0x0C, 0x0C, 0x30, 0x30, 0xC1, 0xC3, 0xFE, 0x0F, - 0xF0, 0x31, 0xE0, 0xC3, 0x83, 0x07, 0x0C, 0x0C, 0xFE, 0x3F, 0xF8, 0x70, - 0x3F, 0xDF, 0xFE, 0x1F, 0x03, 0xC0, 0xF8, 0x07, 0xE0, 0x7E, 0x01, 0xF0, - 0x3C, 0x0F, 0x87, 0xFF, 0xBF, 0xC0, 0xFF, 0xFF, 0xFF, 0xC6, 0x3C, 0x63, - 0xC6, 0x3C, 0x63, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x3F, 0xC3, 0xFC, 0xFF, 0xFF, 0xFF, 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, - 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, 0x60, 0x63, 0x9C, 0x1F, 0xC0, 0xF0, - 0xFC, 0x3F, 0xFC, 0x3F, 0x30, 0x0C, 0x38, 0x1C, 0x18, 0x18, 0x1C, 0x38, - 0x1C, 0x38, 0x0E, 0x70, 0x0E, 0x70, 0x0F, 0x60, 0x07, 0xE0, 0x07, 0xE0, - 0x03, 0xC0, 0x03, 0xC0, 0xFC, 0xFF, 0xF3, 0xF6, 0x01, 0xDC, 0xC6, 0x77, - 0x99, 0xDE, 0x67, 0x79, 0x8D, 0xFE, 0x3F, 0xF8, 0xF3, 0xE3, 0xCF, 0x8F, - 0x3C, 0x38, 0x70, 0xE1, 0xC0, 0xF8, 0xFB, 0xE3, 0xE3, 0x86, 0x0F, 0x38, - 0x1F, 0xC0, 0x3E, 0x00, 0x70, 0x03, 0xE0, 0x0F, 0x80, 0x77, 0x03, 0x8E, - 0x1E, 0x1C, 0xFC, 0xFF, 0xF3, 0xF0, 0xF9, 0xFF, 0x9F, 0x30, 0xC3, 0x9C, - 0x19, 0x81, 0xF8, 0x0F, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x3F, 0xC3, 0xFC, 0xFF, 0xBF, 0xEC, 0x3B, 0x0C, 0xC6, 0x33, 0x80, 0xC0, - 0x60, 0x38, 0xCC, 0x36, 0x0F, 0x03, 0xFF, 0xFF, 0xF0, 0xFF, 0xF1, 0x8C, - 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC7, 0xFE, 0x40, 0x30, 0x0E, - 0x01, 0x80, 0x70, 0x0C, 0x03, 0x80, 0x60, 0x1C, 0x03, 0x00, 0xE0, 0x18, - 0x07, 0x00, 0xC0, 0x38, 0x0E, 0x01, 0xC0, 0x70, 0x0C, 0x01, 0xFF, 0xC6, - 0x31, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x1F, 0xFE, 0x04, 0x03, - 0x01, 0xE0, 0xFC, 0x7B, 0x9C, 0x7E, 0x1F, 0x03, 0xFF, 0xFF, 0xFF, 0xF0, - 0xCE, 0x73, 0x3F, 0x07, 0xF8, 0x00, 0xC0, 0x0C, 0x1F, 0xC7, 0xFC, 0x60, - 0xCC, 0x0C, 0xC1, 0xCF, 0xFF, 0x3F, 0xF0, 0xF0, 0x07, 0x80, 0x0C, 0x00, - 0x60, 0x03, 0x7C, 0x1F, 0xF8, 0xF1, 0xC7, 0x07, 0x30, 0x19, 0x80, 0xCC, - 0x06, 0x60, 0x73, 0xC7, 0x7F, 0xFB, 0xDF, 0x00, 0x1F, 0xB3, 0xFF, 0x70, - 0xFE, 0x07, 0xC0, 0x3C, 0x00, 0xC0, 0x0C, 0x00, 0x70, 0x77, 0xFF, 0x1F, - 0xC0, 0x01, 0xE0, 0x0F, 0x00, 0x18, 0x00, 0xC1, 0xF6, 0x3F, 0xF1, 0xC7, - 0x9C, 0x1C, 0xC0, 0x66, 0x03, 0x30, 0x19, 0x81, 0xC7, 0x1E, 0x3F, 0xFC, - 0x7D, 0xE0, 0x1F, 0x83, 0xFC, 0x70, 0xEE, 0x07, 0xFF, 0xFF, 0xFF, 0xE0, - 0x0E, 0x00, 0x70, 0x73, 0xFF, 0x1F, 0xC0, 0x07, 0xC3, 0xFC, 0x60, 0x0C, - 0x0F, 0xFD, 0xFF, 0x86, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x01, - 0x81, 0xFF, 0xBF, 0xF0, 0x1F, 0x79, 0xFF, 0xDC, 0x79, 0x81, 0xCC, 0x06, - 0x60, 0x33, 0x01, 0x9C, 0x1C, 0x71, 0xE1, 0xFF, 0x07, 0xD8, 0x00, 0xC0, - 0x06, 0x00, 0x70, 0x7F, 0x03, 0xF0, 0xF0, 0x03, 0xC0, 0x03, 0x00, 0x0C, - 0x00, 0x37, 0xC0, 0xFF, 0x83, 0xC7, 0x0C, 0x0C, 0x30, 0x30, 0xC0, 0xC3, - 0x03, 0x0C, 0x0C, 0x30, 0x33, 0xF3, 0xFF, 0xCF, 0xC0, 0x06, 0x00, 0xC0, - 0x00, 0x3F, 0x07, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, - 0x03, 0x0F, 0xFF, 0xFF, 0xC0, 0x06, 0x06, 0x00, 0xFF, 0xFF, 0x03, 0x03, - 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0xFE, 0xFC, - 0xF0, 0x07, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x3F, 0x19, 0xF8, 0xDE, 0x07, - 0xE0, 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x6F, 0x03, 0x1C, 0x78, 0xFF, 0xC7, - 0xE0, 0x7E, 0x0F, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x61, 0xFF, 0xFF, 0xF8, 0xFE, 0xF1, - 0xFF, 0xF1, 0xCE, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC6, 0x31, - 0x8C, 0x63, 0x19, 0xF7, 0xBF, 0xEF, 0x78, 0x77, 0xC1, 0xFF, 0x83, 0xC7, - 0x0C, 0x0C, 0x30, 0x30, 0xC0, 0xC3, 0x03, 0x0C, 0x0C, 0x30, 0x33, 0xF1, - 0xFF, 0xC7, 0xC0, 0x1F, 0x83, 0xFC, 0x70, 0xEE, 0x07, 0xC0, 0x3C, 0x03, - 0xC0, 0x3E, 0x07, 0x70, 0xE3, 0xFC, 0x1F, 0x80, 0xF7, 0xE3, 0xFF, 0xC3, - 0xC3, 0x8E, 0x07, 0x30, 0x0C, 0xC0, 0x33, 0x00, 0xCE, 0x07, 0x3C, 0x38, - 0xFF, 0xC3, 0x7E, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x0F, 0xE0, 0x3F, 0x80, - 0x1F, 0xBC, 0xFF, 0xF7, 0x0F, 0x38, 0x1C, 0xC0, 0x33, 0x00, 0xCC, 0x03, - 0x38, 0x1C, 0x70, 0xF0, 0xFF, 0xC1, 0xFB, 0x00, 0x0C, 0x00, 0x30, 0x00, - 0xC0, 0x1F, 0xC0, 0x7F, 0x79, 0xE7, 0xFF, 0x1F, 0x31, 0xC0, 0x18, 0x01, - 0x80, 0x18, 0x01, 0x80, 0x18, 0x0F, 0xFC, 0xFF, 0xC0, 0x3F, 0x9F, 0xFE, - 0x1F, 0x82, 0xFE, 0x1F, 0xE0, 0xFF, 0x03, 0xE0, 0xFF, 0xFF, 0xF0, 0x30, - 0x06, 0x00, 0xC0, 0x7F, 0xEF, 0xFC, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, - 0x00, 0xC0, 0x18, 0x71, 0xFE, 0x1F, 0x00, 0xF1, 0xF7, 0x8F, 0x8C, 0x0C, - 0x60, 0x63, 0x03, 0x18, 0x18, 0xC0, 0xC6, 0x06, 0x38, 0xF0, 0xFF, 0xC3, - 0xEE, 0xFC, 0xFF, 0xF3, 0xF3, 0x87, 0x0E, 0x1C, 0x1C, 0x60, 0x73, 0x80, - 0xEC, 0x03, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x00, 0xF8, 0x7F, 0xE1, - 0xF7, 0x39, 0x8C, 0xE6, 0x37, 0xB0, 0xFF, 0xC3, 0xFF, 0x07, 0xBC, 0x1C, - 0xF0, 0x73, 0x81, 0x86, 0x00, 0x7C, 0xF9, 0xF3, 0xE3, 0xCF, 0x07, 0xF8, - 0x0F, 0xC0, 0x1E, 0x00, 0xFC, 0x07, 0x38, 0x38, 0x73, 0xF3, 0xFF, 0xCF, - 0xC0, 0xF9, 0xFF, 0x9F, 0x70, 0xE3, 0x0C, 0x39, 0xC1, 0x98, 0x19, 0x81, - 0xF8, 0x0F, 0x00, 0xF0, 0x06, 0x00, 0x60, 0x0E, 0x00, 0xC0, 0xFF, 0x0F, - 0xF0, 0x7F, 0xCF, 0xF9, 0x8E, 0x33, 0x80, 0x70, 0x1C, 0x07, 0x01, 0xC6, - 0x70, 0xFF, 0xFF, 0xFF, 0x80, 0x0E, 0x3C, 0x60, 0xC1, 0x83, 0x06, 0x0C, - 0x39, 0xE3, 0xC0, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x3C, 0x38, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0xE1, 0xC0, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x3C, - 0x79, 0x83, 0x06, 0x0C, 0x18, 0x31, 0xE3, 0x80, 0x3C, 0x37, 0xE7, 0x67, - 0xE6, 0x1C}; - -const GFXglyph FreeMonoBold12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 4, 15, 14, 5, -14}, // 0x21 '!' - {8, 8, 7, 14, 3, -13}, // 0x22 '"' - {15, 11, 18, 14, 2, -15}, // 0x23 '#' - {40, 10, 20, 14, 2, -16}, // 0x24 '$' - {65, 10, 15, 14, 2, -14}, // 0x25 '%' - {84, 10, 13, 14, 2, -12}, // 0x26 '&' - {101, 3, 7, 14, 5, -13}, // 0x27 ''' - {104, 5, 19, 14, 6, -14}, // 0x28 '(' - {116, 5, 19, 14, 3, -14}, // 0x29 ')' - {128, 10, 10, 14, 2, -14}, // 0x2A '*' - {141, 12, 13, 14, 1, -12}, // 0x2B '+' - {161, 5, 7, 14, 4, -2}, // 0x2C ',' - {166, 12, 2, 14, 1, -7}, // 0x2D '-' - {169, 3, 3, 14, 5, -2}, // 0x2E '.' - {171, 10, 20, 14, 2, -16}, // 0x2F '/' - {196, 10, 15, 14, 2, -14}, // 0x30 '0' - {215, 10, 15, 14, 2, -14}, // 0x31 '1' - {234, 10, 15, 14, 2, -14}, // 0x32 '2' - {253, 11, 15, 14, 1, -14}, // 0x33 '3' - {274, 9, 14, 14, 2, -13}, // 0x34 '4' - {290, 10, 15, 14, 2, -14}, // 0x35 '5' - {309, 10, 15, 14, 2, -14}, // 0x36 '6' - {328, 10, 15, 14, 2, -14}, // 0x37 '7' - {347, 10, 15, 14, 2, -14}, // 0x38 '8' - {366, 10, 15, 14, 3, -14}, // 0x39 '9' - {385, 3, 11, 14, 5, -10}, // 0x3A ':' - {390, 4, 15, 14, 4, -10}, // 0x3B ';' - {398, 12, 11, 14, 1, -11}, // 0x3C '<' - {415, 12, 7, 14, 1, -9}, // 0x3D '=' - {426, 12, 11, 14, 1, -11}, // 0x3E '>' - {443, 9, 14, 14, 3, -13}, // 0x3F '?' - {459, 11, 19, 14, 2, -14}, // 0x40 '@' - {486, 15, 14, 14, -1, -13}, // 0x41 'A' - {513, 13, 14, 14, 0, -13}, // 0x42 'B' - {536, 12, 14, 14, 1, -13}, // 0x43 'C' - {557, 12, 14, 14, 1, -13}, // 0x44 'D' - {578, 13, 14, 14, 0, -13}, // 0x45 'E' - {601, 13, 14, 14, 0, -13}, // 0x46 'F' - {624, 13, 14, 14, 1, -13}, // 0x47 'G' - {647, 14, 14, 14, 0, -13}, // 0x48 'H' - {672, 10, 14, 14, 2, -13}, // 0x49 'I' - {690, 13, 14, 14, 1, -13}, // 0x4A 'J' - {713, 14, 14, 14, 0, -13}, // 0x4B 'K' - {738, 12, 14, 14, 1, -13}, // 0x4C 'L' - {759, 14, 14, 14, 0, -13}, // 0x4D 'M' - {784, 13, 14, 14, 0, -13}, // 0x4E 'N' - {807, 12, 14, 14, 1, -13}, // 0x4F 'O' - {828, 12, 14, 14, 0, -13}, // 0x50 'P' - {849, 12, 17, 14, 1, -13}, // 0x51 'Q' - {875, 14, 14, 14, 0, -13}, // 0x52 'R' - {900, 10, 14, 14, 2, -13}, // 0x53 'S' - {918, 12, 14, 14, 1, -13}, // 0x54 'T' - {939, 12, 14, 14, 1, -13}, // 0x55 'U' - {960, 16, 14, 14, -1, -13}, // 0x56 'V' - {988, 14, 14, 14, 0, -13}, // 0x57 'W' - {1013, 14, 14, 14, 0, -13}, // 0x58 'X' - {1038, 12, 14, 14, 1, -13}, // 0x59 'Y' - {1059, 10, 14, 14, 2, -13}, // 0x5A 'Z' - {1077, 5, 19, 14, 6, -14}, // 0x5B '[' - {1089, 10, 20, 14, 2, -16}, // 0x5C '\' - {1114, 5, 19, 14, 3, -14}, // 0x5D ']' - {1126, 10, 8, 14, 2, -15}, // 0x5E '^' - {1136, 14, 2, 14, 0, 4}, // 0x5F '_' - {1140, 4, 4, 14, 4, -15}, // 0x60 '`' - {1142, 12, 11, 14, 1, -10}, // 0x61 'a' - {1159, 13, 15, 14, 0, -14}, // 0x62 'b' - {1184, 12, 11, 14, 1, -10}, // 0x63 'c' - {1201, 13, 15, 14, 1, -14}, // 0x64 'd' - {1226, 12, 11, 14, 1, -10}, // 0x65 'e' - {1243, 11, 15, 14, 2, -14}, // 0x66 'f' - {1264, 13, 16, 14, 1, -10}, // 0x67 'g' - {1290, 14, 15, 14, 0, -14}, // 0x68 'h' - {1317, 11, 14, 14, 1, -13}, // 0x69 'i' - {1337, 8, 19, 15, 3, -13}, // 0x6A 'j' - {1356, 13, 15, 14, 1, -14}, // 0x6B 'k' - {1381, 11, 15, 14, 1, -14}, // 0x6C 'l' - {1402, 15, 11, 14, 0, -10}, // 0x6D 'm' - {1423, 14, 11, 14, 0, -10}, // 0x6E 'n' - {1443, 12, 11, 14, 1, -10}, // 0x6F 'o' - {1460, 14, 16, 14, 0, -10}, // 0x70 'p' - {1488, 14, 16, 14, 0, -10}, // 0x71 'q' - {1516, 12, 11, 14, 1, -10}, // 0x72 'r' - {1533, 10, 11, 14, 2, -10}, // 0x73 's' - {1547, 11, 14, 14, 1, -13}, // 0x74 't' - {1567, 13, 11, 14, 0, -10}, // 0x75 'u' - {1585, 14, 11, 14, 0, -10}, // 0x76 'v' - {1605, 14, 11, 14, 0, -10}, // 0x77 'w' - {1625, 14, 11, 14, 0, -10}, // 0x78 'x' - {1645, 12, 16, 14, 1, -10}, // 0x79 'y' - {1669, 11, 11, 14, 1, -10}, // 0x7A 'z' - {1685, 7, 19, 14, 3, -14}, // 0x7B '{' - {1702, 2, 19, 14, 6, -14}, // 0x7C '|' - {1707, 7, 19, 14, 4, -14}, // 0x7D '}' - {1724, 12, 4, 14, 1, -7}}; // 0x7E '~' - -const GFXfont FreeMonoBold12pt7b PROGMEM = { - (uint8_t *)FreeMonoBold12pt7bBitmaps, (GFXglyph *)FreeMonoBold12pt7bGlyphs, - 0x20, 0x7E, 24}; - -// Approx. 2402 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h deleted file mode 100644 index 36664c1..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h +++ /dev/null @@ -1,425 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold18pt7bBitmaps[] PROGMEM = { - 0x77, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0x9C, 0xE7, 0x39, 0xC4, 0x03, 0xBF, - 0xFF, 0xB8, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1E, 0xC1, 0x98, 0x33, - 0x06, 0x60, 0xCC, 0x18, 0x0E, 0x1C, 0x0F, 0x3C, 0x1F, 0x3C, 0x1E, 0x3C, - 0x1E, 0x3C, 0x1E, 0x78, 0x1E, 0x78, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x1E, 0x78, 0x1E, 0x78, 0x1E, 0x78, 0x7F, 0xFE, 0x7F, 0xFE, - 0x7F, 0xFE, 0x7F, 0xFE, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0xF0, - 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x03, 0x00, 0x1E, 0x00, 0x78, 0x01, - 0xE0, 0x1F, 0xF1, 0xFF, 0xE7, 0xFF, 0xBE, 0x1E, 0xF0, 0x3B, 0xC0, 0xCF, - 0xE0, 0x3F, 0xF8, 0x7F, 0xF0, 0x7F, 0xE0, 0x1F, 0xF0, 0x0F, 0xE0, 0x3F, - 0x80, 0xFF, 0x87, 0xFF, 0xFE, 0xFF, 0xF3, 0x7F, 0x80, 0x78, 0x01, 0xE0, - 0x07, 0x80, 0x1E, 0x00, 0x78, 0x00, 0xC0, 0x1E, 0x00, 0xFF, 0x03, 0x86, - 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x18, 0x38, 0x70, 0x3F, 0xC2, 0x1E, 0x3E, - 0x03, 0xF8, 0x3F, 0x83, 0xF8, 0x0F, 0x8F, 0x18, 0x7F, 0x01, 0xC7, 0x03, - 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x1C, 0x70, 0x1F, 0xC0, 0x0F, 0x00, 0x03, - 0xD0, 0x1F, 0xF0, 0x7F, 0xE1, 0xFF, 0xC3, 0xE6, 0x07, 0x80, 0x0F, 0x00, - 0x0F, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0xFE, 0x03, 0xFE, 0xFF, 0xBD, 0xFE, - 0x3F, 0xFC, 0x3F, 0x7C, 0x7C, 0xFF, 0xFE, 0xFF, 0xFC, 0xFF, 0xF8, 0x7E, - 0xF0, 0xFF, 0xFF, 0xF6, 0x66, 0x66, 0x07, 0x0F, 0x1F, 0x1E, 0x3E, 0x3C, - 0x78, 0x78, 0x78, 0x70, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0x78, 0x78, 0x78, 0x3C, 0x3C, 0x1E, 0x1F, 0x0F, 0x07, 0xE0, 0xF0, 0xF8, - 0x78, 0x7C, 0x3C, 0x3E, 0x1E, 0x1E, 0x1E, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0E, 0x1E, 0x1E, 0x1E, 0x3C, 0x3C, 0x78, 0xF8, 0xF0, 0xE0, - 0x01, 0x80, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFF, - 0xFF, 0xFF, 0x7F, 0xFE, 0x1F, 0xF8, 0x07, 0xE0, 0x0F, 0xF0, 0x1F, 0xF8, - 0x1E, 0x78, 0x1C, 0x38, 0x18, 0x18, 0x01, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0x80, 0x3E, 0x78, 0xF3, 0xC7, - 0x8E, 0x1C, 0x70, 0xE1, 0x80, 0x7F, 0xFF, 0xDF, 0xFF, 0xF9, 0xFF, 0xFF, - 0x3F, 0xFF, 0xE0, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x0E, 0x00, 0x3C, 0x00, - 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x1E, 0x00, 0x38, 0x00, 0xF0, - 0x01, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x3C, 0x00, 0x78, 0x01, 0xE0, 0x03, - 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x78, 0x00, 0xF0, 0x03, 0xC0, 0x07, 0x80, - 0x1E, 0x00, 0x3C, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, 0x03, 0x00, 0x00, - 0x07, 0xE0, 0x1F, 0xF8, 0x3F, 0xFC, 0x3F, 0xFC, 0x7C, 0x3E, 0x78, 0x1E, - 0xF8, 0x1F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, - 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF8, 0x1F, 0x78, 0x1E, - 0x7C, 0x3E, 0x3F, 0xFC, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, 0x07, 0xC0, - 0x1F, 0x80, 0xFF, 0x03, 0xFE, 0x0F, 0xBC, 0x0C, 0x78, 0x00, 0xF0, 0x01, - 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x81, 0xFF, 0xFB, 0xFF, 0xF7, - 0xFF, 0xE7, 0xFF, 0x80, 0x0F, 0xC0, 0x7F, 0xE1, 0xFF, 0xE3, 0xFF, 0xEF, - 0x87, 0xDE, 0x07, 0xF8, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x01, - 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, - 0x78, 0x03, 0xE0, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, - 0x0F, 0xC0, 0x7F, 0xF0, 0xFF, 0xF8, 0xFF, 0xFC, 0x70, 0x3E, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x3C, 0x03, 0xFC, 0x03, 0xF0, 0x03, 0xF0, - 0x03, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, - 0xE0, 0x3F, 0xFF, 0xFE, 0xFF, 0xFC, 0x7F, 0xF8, 0x1F, 0xE0, 0x00, 0xF8, - 0x03, 0xF0, 0x07, 0xE0, 0x1F, 0xC0, 0x77, 0x80, 0xEF, 0x03, 0x9E, 0x0F, - 0x3C, 0x1C, 0x78, 0x70, 0xF1, 0xE1, 0xE3, 0x83, 0xCF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x78, 0x07, 0xFC, 0x0F, 0xF8, 0x1F, 0xF0, - 0x1F, 0xC0, 0x3F, 0xFC, 0x1F, 0xFE, 0x0F, 0xFF, 0x07, 0xFF, 0x83, 0xC0, - 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x7B, 0xE0, 0x3F, 0xFC, 0x1F, 0xFF, 0x0F, - 0xFF, 0xC3, 0x83, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, - 0x00, 0x0F, 0xB8, 0x0F, 0xBF, 0xFF, 0xCF, 0xFF, 0xC3, 0xFF, 0xC0, 0x7F, - 0x80, 0x00, 0xFC, 0x07, 0xFC, 0x3F, 0xF8, 0xFF, 0xF1, 0xF8, 0x07, 0xC0, - 0x1F, 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xE7, 0xC3, 0xDF, 0xC7, 0x7F, 0xCF, - 0xFF, 0xDF, 0x8F, 0xFC, 0x07, 0xF0, 0x0F, 0xF0, 0x1F, 0xE0, 0x3D, 0xE0, - 0xFB, 0xFF, 0xE3, 0xFF, 0xC3, 0xFF, 0x01, 0xF8, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x01, 0xE0, 0x03, 0x80, 0x0F, 0x00, 0x1E, - 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, - 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x38, - 0x00, 0x70, 0x00, 0x07, 0xC0, 0x3F, 0xE0, 0xFF, 0xE3, 0xFF, 0xEF, 0x83, - 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, 0xF0, 0x1E, 0xF0, 0x78, 0xFF, 0xE0, - 0xFF, 0x81, 0xFF, 0x0F, 0xFF, 0x9E, 0x0F, 0x78, 0x0F, 0xF0, 0x1F, 0xE0, - 0x3F, 0xE0, 0xFB, 0xFF, 0xE7, 0xFF, 0xC7, 0xFF, 0x03, 0xF8, 0x00, 0x0F, - 0xC0, 0x3F, 0xE0, 0xFF, 0xE3, 0xFF, 0xEF, 0xC3, 0xDF, 0x03, 0xBC, 0x07, - 0xF8, 0x0F, 0xF0, 0x1F, 0xF0, 0x3D, 0xF1, 0xFB, 0xFF, 0xF3, 0xFE, 0xE3, - 0xFB, 0xC3, 0xE7, 0x80, 0x1E, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xE7, 0xFF, - 0x8F, 0xFE, 0x1F, 0xF0, 0x1F, 0x80, 0x00, 0x77, 0xFF, 0xF7, 0x00, 0x00, - 0x00, 0x00, 0xEF, 0xFF, 0xEE, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xF3, 0xC7, 0x8E, 0x3C, 0x70, 0xE1, 0x87, 0x0C, 0x00, - 0x00, 0x00, 0x00, 0x80, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0xFE, - 0x00, 0xFE, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, - 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7C, 0x00, - 0x07, 0x7F, 0xFF, 0xDF, 0xFF, 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE0, 0x00, - 0x00, 0x00, 0x00, 0x1F, 0xFF, 0xF7, 0xFF, 0xFE, 0x7F, 0xFF, 0xCF, 0xFF, - 0xF8, 0x00, 0x00, 0x3C, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, - 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x3F, 0x80, - 0x3F, 0x80, 0x3F, 0x80, 0x3F, 0x80, 0x3F, 0x80, 0x0F, 0x80, 0x03, 0x80, - 0x00, 0x1F, 0xC0, 0xFF, 0xE3, 0xFF, 0xF7, 0xFF, 0xEF, 0x07, 0xFE, 0x03, - 0xDC, 0x07, 0x80, 0x0F, 0x00, 0x7C, 0x03, 0xF8, 0x1F, 0xC0, 0x1E, 0x00, - 0x30, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x1F, 0x00, 0x3E, - 0x00, 0x7C, 0x00, 0x70, 0x00, 0x07, 0xE0, 0x1F, 0xE0, 0x7F, 0xE1, 0xE1, - 0xC7, 0x83, 0xCE, 0x03, 0xBC, 0x07, 0x70, 0x0E, 0xE0, 0x7D, 0xC3, 0xFB, - 0x8F, 0xF7, 0x3C, 0xEE, 0x71, 0xDC, 0xE3, 0xB9, 0xC7, 0x73, 0xCE, 0xE3, - 0xFF, 0xC3, 0xFF, 0x83, 0xFF, 0x00, 0x07, 0x00, 0x0E, 0x00, 0x1E, 0x02, - 0x1E, 0x1E, 0x3F, 0xFC, 0x1F, 0xF0, 0x1F, 0x80, 0x0F, 0xF8, 0x00, 0x7F, - 0xF0, 0x01, 0xFF, 0xC0, 0x03, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x07, 0xF8, - 0x00, 0x1C, 0xF0, 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x1E, 0x1E, 0x00, - 0x78, 0x78, 0x03, 0xC0, 0xF0, 0x0F, 0xFF, 0xC0, 0x3F, 0xFF, 0x01, 0xFF, - 0xFE, 0x07, 0xFF, 0xF8, 0x3C, 0x00, 0xF3, 0xFC, 0x1F, 0xEF, 0xF8, 0x7F, - 0xFF, 0xE1, 0xFF, 0x7F, 0x03, 0xF8, 0x7F, 0xFC, 0x0F, 0xFF, 0xF0, 0xFF, - 0xFF, 0x8F, 0xFF, 0xF8, 0x3C, 0x07, 0xC3, 0xC0, 0x3C, 0x3C, 0x03, 0xC3, - 0xC0, 0x7C, 0x3F, 0xFF, 0x83, 0xFF, 0xF0, 0x3F, 0xFF, 0x83, 0xFF, 0xFE, - 0x3C, 0x03, 0xE3, 0xC0, 0x1F, 0x3C, 0x00, 0xF3, 0xC0, 0x0F, 0x3C, 0x01, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xEF, 0xFF, 0xFC, 0x7F, 0xFF, 0x00, 0x01, - 0xF8, 0xC1, 0xFF, 0xFC, 0x7F, 0xFF, 0x9F, 0xFF, 0xF7, 0xE0, 0x7E, 0xF8, - 0x07, 0xFE, 0x00, 0x7F, 0x80, 0x0E, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, - 0x07, 0x7F, 0x03, 0xE7, 0xFF, 0xFC, 0x7F, 0xFF, 0x03, 0xFF, 0xC0, 0x1F, - 0xE0, 0xFF, 0xF0, 0x3F, 0xFF, 0x0F, 0xFF, 0xE3, 0xFF, 0xFC, 0x78, 0x1F, - 0x9E, 0x03, 0xE7, 0x80, 0x79, 0xE0, 0x0F, 0x78, 0x03, 0xDE, 0x00, 0xF7, - 0x80, 0x3D, 0xE0, 0x0F, 0x78, 0x03, 0xDE, 0x00, 0xF7, 0x80, 0x7D, 0xE0, - 0x1E, 0x78, 0x1F, 0xBF, 0xFF, 0xCF, 0xFF, 0xF3, 0xFF, 0xF0, 0x7F, 0xF0, - 0x00, 0x7F, 0xFF, 0xDF, 0xFF, 0xFB, 0xFF, 0xFF, 0x7F, 0xFF, 0xE3, 0xC0, - 0x3C, 0x78, 0x07, 0x8F, 0x1C, 0xF1, 0xE3, 0xCC, 0x3F, 0xF8, 0x07, 0xFF, - 0x00, 0xFF, 0xE0, 0x1F, 0xFC, 0x03, 0xC7, 0x80, 0x78, 0xF1, 0x8F, 0x0C, - 0x79, 0xE0, 0x0F, 0x3C, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF7, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF3, 0xC0, 0x1E, 0x78, 0x63, 0xCF, 0x1E, 0x79, 0xE3, 0xC6, 0x3F, 0xF8, - 0x07, 0xFF, 0x00, 0xFF, 0xE0, 0x1F, 0xFC, 0x03, 0xC7, 0x80, 0x78, 0xE0, - 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x1F, 0xFC, 0x03, 0xFF, 0x80, - 0x7F, 0xF0, 0x07, 0xFC, 0x00, 0x01, 0xFC, 0xE0, 0x7F, 0xFE, 0x1F, 0xFF, - 0xE3, 0xFF, 0xFE, 0x7F, 0x03, 0xE7, 0xC0, 0x1E, 0xF8, 0x00, 0xEF, 0x00, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x03, 0xFE, 0xF0, - 0x3F, 0xFF, 0x03, 0xFF, 0xF8, 0x3F, 0xF7, 0x80, 0x1E, 0x7E, 0x01, 0xE3, - 0xFF, 0xFE, 0x1F, 0xFF, 0xE0, 0xFF, 0xF8, 0x01, 0xFE, 0x00, 0x7F, 0x0F, - 0xE3, 0xFC, 0x7F, 0x9F, 0xE3, 0xFC, 0x7F, 0x1F, 0xC1, 0xE0, 0x3C, 0x0F, - 0x01, 0xE0, 0x78, 0x0F, 0x03, 0xC0, 0x78, 0x1E, 0x03, 0xC0, 0xFF, 0xFE, - 0x07, 0xFF, 0xF0, 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x0F, 0x01, 0xE0, 0x78, - 0x0F, 0x03, 0xC0, 0x78, 0x1E, 0x03, 0xC3, 0xFC, 0x7F, 0xBF, 0xE3, 0xFF, - 0xFF, 0x1F, 0xF7, 0xF0, 0x7F, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, - 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x83, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xF8, 0x01, 0xFF, 0xE0, 0x3F, 0xFC, - 0x07, 0xFF, 0x80, 0xFF, 0xF0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x38, 0x07, 0x8F, - 0x00, 0xF1, 0xE0, 0x1E, 0x3C, 0x03, 0xC7, 0x80, 0xF8, 0xF8, 0x3F, 0x1F, - 0xFF, 0xC3, 0xFF, 0xF0, 0x1F, 0xFC, 0x00, 0x7E, 0x00, 0xFF, 0x0F, 0xCF, - 0xF9, 0xFE, 0xFF, 0x9F, 0xEF, 0xF8, 0xFC, 0x3C, 0x1F, 0x03, 0xC3, 0xE0, - 0x3C, 0x7C, 0x03, 0xCF, 0x80, 0x3D, 0xF0, 0x03, 0xFE, 0x00, 0x3F, 0xF8, - 0x03, 0xFF, 0x80, 0x3E, 0x7C, 0x03, 0xC3, 0xE0, 0x3C, 0x1E, 0x03, 0xC0, - 0xF0, 0x3C, 0x0F, 0x0F, 0xF8, 0x7E, 0xFF, 0x87, 0xFF, 0xF8, 0x7F, 0x7F, - 0x03, 0xE0, 0xFF, 0xC0, 0x3F, 0xF0, 0x0F, 0xFC, 0x03, 0xFF, 0x00, 0x1E, - 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, - 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x01, 0x87, 0x80, 0xF1, 0xE0, 0x3C, - 0x78, 0x0F, 0x1E, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xC0, 0x3E, 0x00, 0xF8, 0xFC, 0x01, 0xF9, 0xFC, 0x07, 0xF3, 0xF8, - 0x0F, 0xE3, 0xF8, 0x3F, 0x87, 0xF0, 0x7F, 0x0F, 0xF1, 0xFE, 0x1F, 0xE3, - 0xFC, 0x3D, 0xE7, 0x78, 0x7B, 0xDE, 0xF0, 0xF7, 0xBD, 0xE1, 0xE7, 0xF3, - 0xC3, 0xCF, 0xE7, 0x87, 0x8F, 0x8F, 0x0F, 0x1F, 0x1E, 0x1E, 0x1E, 0x3C, - 0x3C, 0x00, 0x79, 0xFF, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x1F, 0xF7, - 0xF0, 0x1F, 0xC0, 0xFC, 0x1F, 0xEF, 0xE1, 0xFF, 0xFE, 0x1F, 0xFF, 0xF1, - 0xFF, 0x3F, 0x83, 0xC3, 0xF8, 0x3C, 0x3F, 0xC3, 0xC3, 0xFC, 0x3C, 0x3D, - 0xE3, 0xC3, 0xDE, 0x3C, 0x3C, 0xF3, 0xC3, 0xC7, 0xBC, 0x3C, 0x7B, 0xC3, - 0xC3, 0xFC, 0x3C, 0x3F, 0xC3, 0xC1, 0xFC, 0x3C, 0x1F, 0xCF, 0xF8, 0xFC, - 0xFF, 0x87, 0xCF, 0xF8, 0x7C, 0x7F, 0x03, 0xC0, 0x01, 0xF8, 0x00, 0x7F, - 0xE0, 0x0F, 0xFF, 0x81, 0xFF, 0xFC, 0x3F, 0x0F, 0xC7, 0xC0, 0x3E, 0x78, - 0x01, 0xEF, 0x80, 0x1F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, - 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x1F, 0x78, 0x01, 0xE7, 0xC0, 0x3E, - 0x3F, 0x0F, 0xC1, 0xFF, 0xF8, 0x1F, 0xFF, 0x00, 0x7F, 0xE0, 0x01, 0xF8, - 0x00, 0x7F, 0xF8, 0x3F, 0xFF, 0x8F, 0xFF, 0xF3, 0xFF, 0xFE, 0x3C, 0x0F, - 0xCF, 0x00, 0xF3, 0xC0, 0x3C, 0xF0, 0x0F, 0x3C, 0x03, 0xCF, 0x03, 0xF3, - 0xFF, 0xF8, 0xFF, 0xFC, 0x3F, 0xFE, 0x0F, 0xFE, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x3C, 0x00, 0x3F, 0xF8, 0x0F, 0xFE, 0x03, 0xFF, 0x80, 0x7F, 0xC0, - 0x00, 0x01, 0xF8, 0x00, 0x7F, 0xE0, 0x0F, 0xFF, 0x01, 0xFF, 0xF8, 0x3F, - 0x0F, 0xC7, 0xC0, 0x3E, 0x78, 0x01, 0xEF, 0x80, 0x1F, 0xF0, 0x00, 0xFF, - 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x1F, - 0x78, 0x01, 0xE7, 0xC0, 0x3E, 0x3F, 0x0F, 0xC1, 0xFF, 0xF8, 0x0F, 0xFF, - 0x00, 0x7F, 0xE0, 0x03, 0xF8, 0x00, 0x3F, 0x8E, 0x07, 0xFF, 0xF0, 0xFF, - 0xFF, 0x0F, 0xFF, 0xE0, 0x60, 0x78, 0x7F, 0xF8, 0x07, 0xFF, 0xF0, 0x3F, - 0xFF, 0xE0, 0xFF, 0xFF, 0x01, 0xE0, 0x7C, 0x0F, 0x01, 0xE0, 0x78, 0x0F, - 0x03, 0xC0, 0x78, 0x1E, 0x0F, 0xC0, 0xFF, 0xFC, 0x07, 0xFF, 0xC0, 0x3F, - 0xF8, 0x01, 0xFF, 0xE0, 0x0F, 0x0F, 0x80, 0x78, 0x3C, 0x03, 0xC0, 0xF0, - 0x1E, 0x07, 0xC3, 0xFE, 0x1F, 0xBF, 0xF0, 0x7F, 0xFF, 0x83, 0xF7, 0xF8, - 0x0F, 0x00, 0x07, 0xE7, 0x07, 0xFF, 0x8F, 0xFF, 0xC7, 0xFF, 0xE7, 0xC1, - 0xF3, 0xC0, 0x79, 0xE0, 0x3C, 0xF8, 0x00, 0x7F, 0x80, 0x1F, 0xFC, 0x07, - 0xFF, 0x81, 0xFF, 0xE0, 0x0F, 0xFB, 0x00, 0x7F, 0xC0, 0x1F, 0xE0, 0x0F, - 0xFC, 0x1F, 0xFF, 0xFF, 0xBF, 0xFF, 0x8D, 0xFF, 0x80, 0x3F, 0x00, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x1F, 0xE1, - 0xE3, 0xFC, 0x3C, 0x7F, 0x87, 0x8F, 0x60, 0xF0, 0xC0, 0x1E, 0x00, 0x03, - 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, - 0x80, 0x00, 0xF0, 0x01, 0xFF, 0xE0, 0x3F, 0xFC, 0x07, 0xFF, 0x80, 0x7F, - 0xE0, 0xFF, 0x0F, 0xF7, 0xFC, 0x7F, 0xFF, 0xE3, 0xFE, 0xFF, 0x1F, 0xF3, - 0xC0, 0x1E, 0x1E, 0x00, 0xF0, 0xF0, 0x07, 0x87, 0x80, 0x3C, 0x3C, 0x01, - 0xE1, 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x78, 0x03, 0xC3, 0xC0, 0x1E, 0x1E, - 0x00, 0xF0, 0xF0, 0x07, 0x87, 0xC0, 0x7C, 0x1F, 0x07, 0xC0, 0xFF, 0xFE, - 0x03, 0xFF, 0xE0, 0x0F, 0xFE, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x03, 0xFD, - 0xFF, 0x07, 0xFF, 0xFE, 0x0F, 0xFB, 0xF8, 0x1F, 0xE1, 0xC0, 0x07, 0x03, - 0xC0, 0x1E, 0x07, 0x80, 0x3C, 0x07, 0x80, 0xF0, 0x0F, 0x01, 0xE0, 0x0F, - 0x03, 0x80, 0x1E, 0x0F, 0x00, 0x3E, 0x1E, 0x00, 0x3C, 0x78, 0x00, 0x78, - 0xF0, 0x00, 0x7B, 0xC0, 0x00, 0xF7, 0x80, 0x01, 0xFF, 0x00, 0x01, 0xFC, - 0x00, 0x03, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0xFF, 0x0F, - 0xF7, 0xFC, 0x7F, 0xFF, 0xE3, 0xFF, 0xFE, 0x0F, 0xF7, 0x80, 0x0F, 0x3C, - 0x38, 0x78, 0xE3, 0xE3, 0x87, 0x1F, 0x1C, 0x38, 0xF8, 0xE1, 0xEF, 0xE7, - 0x0F, 0x7F, 0x78, 0x7B, 0xBB, 0xC3, 0xFD, 0xFE, 0x0F, 0xEF, 0xF0, 0x7E, - 0x3F, 0x03, 0xF1, 0xF8, 0x1F, 0x8F, 0xC0, 0xFC, 0x3E, 0x07, 0xC1, 0xF0, - 0x3E, 0x0F, 0x81, 0xF0, 0x7C, 0x00, 0x7E, 0x0F, 0xDF, 0xE3, 0xFF, 0xFC, - 0x7F, 0xBF, 0x07, 0xE1, 0xE0, 0xF8, 0x3E, 0x3E, 0x03, 0xEF, 0x80, 0x3D, - 0xE0, 0x03, 0xF8, 0x00, 0x3E, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, 0x3F, - 0x80, 0x0F, 0x78, 0x03, 0xC7, 0x80, 0xF8, 0x78, 0x3E, 0x0F, 0x8F, 0xE3, - 0xFF, 0xFC, 0x7F, 0xFF, 0x8F, 0xF7, 0xE0, 0xFC, 0x7E, 0x07, 0xEF, 0xF0, - 0xFF, 0xFF, 0x0F, 0xF7, 0xE0, 0x7E, 0x1E, 0x07, 0x81, 0xF0, 0xF8, 0x0F, - 0x0F, 0x00, 0x79, 0xE0, 0x07, 0xFE, 0x00, 0x3F, 0xC0, 0x01, 0xF8, 0x00, - 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, - 0x00, 0xF0, 0x00, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0xFF, 0xF0, 0x07, 0xFE, - 0x00, 0xFF, 0xFC, 0xFF, 0xFC, 0xFF, 0xFC, 0xFF, 0xFC, 0xF0, 0x3C, 0xF0, - 0x78, 0xF0, 0xF0, 0x70, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, 0x80, 0x07, - 0x00, 0x0F, 0x00, 0x1E, 0x0E, 0x1C, 0x0F, 0x38, 0x0F, 0x78, 0x0F, 0x7F, - 0xFF, 0x7F, 0xFF, 0x7F, 0xFF, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFE, 0xFF, 0xFF, 0xFE, 0xE0, 0x01, - 0xE0, 0x03, 0xC0, 0x03, 0xC0, 0x07, 0x80, 0x07, 0x00, 0x0F, 0x00, 0x0E, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x78, 0x00, 0xF0, - 0x00, 0xF0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, 0xC0, 0x07, 0x80, - 0x07, 0x80, 0x0F, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x3C, 0x00, - 0x38, 0x00, 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x7F, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x07, 0x00, 0x1F, 0x00, - 0x7F, 0x00, 0xFE, 0x03, 0xDE, 0x0F, 0x1E, 0x3E, 0x3E, 0xF8, 0x3F, 0xE0, - 0x3F, 0x80, 0x38, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xC3, 0x87, 0x0E, 0x1C, 0x30, 0x01, 0xFC, 0x01, 0xFF, 0xC0, - 0x3F, 0xFC, 0x07, 0xFF, 0xC0, 0x00, 0x78, 0x0F, 0xFF, 0x07, 0xFF, 0xE1, - 0xFF, 0xFC, 0x7F, 0xFF, 0x9F, 0x80, 0xF3, 0xC0, 0x1E, 0x78, 0x0F, 0xCF, - 0xFF, 0xFE, 0xFF, 0xFF, 0xCF, 0xFF, 0xF8, 0x7F, 0x3E, 0x7C, 0x00, 0x1F, - 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0F, - 0x3F, 0x01, 0xFF, 0xF8, 0x3F, 0xFF, 0x87, 0xFF, 0xF0, 0xFC, 0x1F, 0x1F, - 0x01, 0xF3, 0xC0, 0x1E, 0x78, 0x03, 0xCF, 0x00, 0x79, 0xE0, 0x0F, 0x3E, - 0x03, 0xE7, 0xE0, 0xFB, 0xFF, 0xFF, 0x7F, 0xFF, 0xCF, 0xFF, 0xF0, 0xF9, - 0xF8, 0x00, 0x03, 0xF3, 0x87, 0xFF, 0xCF, 0xFF, 0xEF, 0xFF, 0xF7, 0xE0, - 0xFF, 0xC0, 0x3F, 0xC0, 0x0F, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3E, - 0x00, 0x4F, 0x80, 0xF7, 0xFF, 0xF9, 0xFF, 0xF8, 0x7F, 0xF8, 0x0F, 0xF0, - 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x03, 0xF3, 0xC0, 0xFF, 0xBC, 0x1F, 0xFF, 0xC3, 0xFF, - 0xFC, 0x7E, 0x0F, 0xC7, 0x80, 0x7C, 0xF0, 0x03, 0xCF, 0x00, 0x3C, 0xF0, - 0x03, 0xCF, 0x00, 0x3C, 0xF8, 0x07, 0xC7, 0xE0, 0xFC, 0x7F, 0xFF, 0xF3, - 0xFF, 0xFF, 0x0F, 0xFF, 0xF0, 0x3F, 0x3E, 0x03, 0xF0, 0x03, 0xFF, 0x01, - 0xFF, 0xE0, 0xFF, 0xFC, 0x7E, 0x0F, 0x9E, 0x01, 0xEF, 0x00, 0x3F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0xE0, 0x00, 0x7F, 0xFF, - 0xCF, 0xFF, 0xF1, 0xFF, 0xF8, 0x0F, 0xF0, 0x03, 0xFC, 0x07, 0xFF, 0x0F, - 0xFF, 0x1F, 0xFF, 0x1E, 0x00, 0x1E, 0x00, 0xFF, 0xF8, 0xFF, 0xFC, 0xFF, - 0xFC, 0xFF, 0xF8, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0xFF, 0xF8, 0xFF, 0xF8, 0xFF, - 0xF8, 0xFF, 0xF8, 0x07, 0xE7, 0xC3, 0xFF, 0xFC, 0xFF, 0xFF, 0xBF, 0xFF, - 0xF7, 0xC1, 0xF9, 0xF0, 0x1F, 0x3C, 0x01, 0xE7, 0x80, 0x3C, 0xF0, 0x07, - 0x9E, 0x00, 0xF3, 0xE0, 0x3E, 0x3E, 0x0F, 0xC7, 0xFF, 0xF8, 0x7F, 0xFF, - 0x07, 0xFD, 0xE0, 0x3F, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3E, - 0x03, 0xFF, 0x80, 0x7F, 0xF0, 0x0F, 0xFC, 0x00, 0xFE, 0x00, 0x3E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x00, 0x00, 0x78, 0xF8, 0x03, 0xDF, 0xE0, 0x1F, 0xFF, 0x80, 0xFF, 0xFE, - 0x07, 0xE1, 0xF0, 0x3E, 0x07, 0x81, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x78, - 0x0F, 0x03, 0xC0, 0x78, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x1F, 0xC1, 0xFD, - 0xFE, 0x0F, 0xFF, 0xF0, 0x7F, 0xBF, 0x01, 0xF8, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xC0, 0x3F, 0xC0, - 0x3F, 0xC0, 0x3F, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFE, 0xFF, 0xFF, - 0xFF, 0xFF, 0x7F, 0xFE, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, 0x00, 0xF0, 0x0F, 0x00, 0xF0, - 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, - 0x0F, 0x00, 0xF0, 0x0F, 0x01, 0xFF, 0xFE, 0xFF, 0xEF, 0xFC, 0x7F, 0x00, - 0x7C, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0x3C, 0x00, 0x0F, - 0x00, 0x03, 0xC7, 0xF0, 0xF3, 0xFC, 0x3C, 0xFF, 0x0F, 0x3F, 0x83, 0xDF, - 0x00, 0xFF, 0x80, 0x3F, 0xC0, 0x0F, 0xE0, 0x03, 0xFC, 0x00, 0xF7, 0x80, - 0x3C, 0xF0, 0x0F, 0x1F, 0x0F, 0xC3, 0xFB, 0xF1, 0xFF, 0xFC, 0x7F, 0xDF, - 0x0F, 0xE0, 0x3F, 0xC0, 0x3F, 0xC0, 0x3F, 0xC0, 0x3F, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFE, 0x3D, 0xE3, - 0xC1, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x1F, 0xFF, 0xFE, 0x3E, 0x3C, 0x78, - 0xF0, 0xF1, 0xE3, 0xC3, 0xC7, 0x8F, 0x0F, 0x1E, 0x3C, 0x3C, 0x78, 0xF0, - 0xF1, 0xE3, 0xC3, 0xC7, 0x8F, 0x0F, 0x1E, 0xFE, 0x3E, 0x7F, 0xF8, 0xF9, - 0xFF, 0xE3, 0xE7, 0xDF, 0x0F, 0x1E, 0x1E, 0x7C, 0x03, 0xEF, 0xF0, 0x3F, - 0xFF, 0x83, 0xFF, 0xFC, 0x1F, 0x87, 0xC1, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, - 0xE0, 0x3C, 0x1E, 0x03, 0xC1, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, 0xE0, 0x3C, - 0x7F, 0x0F, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xF7, 0xE0, 0x7E, 0x03, 0xF8, - 0x01, 0xFF, 0xC0, 0x7F, 0xFC, 0x1F, 0xFF, 0xC7, 0xE0, 0xFD, 0xF0, 0x07, - 0xFC, 0x00, 0x7F, 0x80, 0x0F, 0xF0, 0x01, 0xFE, 0x00, 0x3F, 0xE0, 0x0F, - 0xBF, 0x07, 0xE3, 0xFF, 0xF8, 0x3F, 0xFE, 0x03, 0xFF, 0x80, 0x1F, 0xC0, - 0x3E, 0x7E, 0x03, 0xF7, 0xFC, 0x1F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC1, 0xF8, - 0x3F, 0x0F, 0x80, 0x7C, 0x78, 0x01, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x78, - 0xF0, 0x03, 0xC7, 0xC0, 0x3E, 0x3F, 0x07, 0xE1, 0xFF, 0xFE, 0x0F, 0xFF, - 0xE0, 0x7B, 0xFE, 0x03, 0xCF, 0xC0, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, - 0x80, 0x00, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x01, 0xFE, 0x00, - 0x00, 0x03, 0xF3, 0xE0, 0x7F, 0xDF, 0x87, 0xFF, 0xFC, 0x7F, 0xFF, 0xE7, - 0xE0, 0xFC, 0x7C, 0x03, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x78, 0xF0, 0x03, - 0xC7, 0x80, 0x1E, 0x3E, 0x01, 0xF0, 0xFC, 0x1F, 0x83, 0xFF, 0xFC, 0x1F, - 0xFF, 0xE0, 0x3F, 0xEF, 0x00, 0x7E, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, - 0x00, 0x00, 0xF0, 0x00, 0x3F, 0xE0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, - 0x3F, 0xC0, 0x7E, 0x1E, 0x7F, 0x3F, 0xFF, 0xBF, 0xFF, 0xFF, 0xF1, 0xFE, - 0x00, 0xFC, 0x00, 0x7C, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, - 0x80, 0x03, 0xC0, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0xFF, 0xE1, 0xFF, 0xE0, - 0x07, 0xE6, 0x1F, 0xFE, 0x7F, 0xFE, 0x7F, 0xFE, 0x78, 0x1E, 0x78, 0x0E, - 0x7F, 0xE0, 0x3F, 0xFC, 0x03, 0xFE, 0x60, 0x1F, 0xE0, 0x0F, 0xF8, 0x1F, - 0xFF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFC, 0x07, 0xE0, 0x0C, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x07, 0xFF, 0xF3, 0xFF, 0xF9, 0xFF, - 0xFC, 0xFF, 0xFC, 0x0F, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x07, 0x8F, 0xFF, 0xC3, 0xFF, - 0xC1, 0xFF, 0xC0, 0x3F, 0x80, 0xFC, 0x1F, 0xBF, 0x0F, 0xEF, 0xC3, 0xFB, - 0xF0, 0xFE, 0x3C, 0x07, 0x8F, 0x01, 0xE3, 0xC0, 0x78, 0xF0, 0x1E, 0x3C, - 0x07, 0x8F, 0x01, 0xE3, 0xC0, 0x78, 0xF8, 0x7E, 0x3F, 0xFF, 0xC7, 0xFF, - 0xF0, 0xFF, 0x7C, 0x0F, 0x9E, 0x7F, 0x07, 0xF7, 0xFC, 0x7F, 0xFF, 0xE3, - 0xFE, 0xFE, 0x0F, 0xE1, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x1E, 0x01, - 0xE0, 0xF0, 0x07, 0x8F, 0x00, 0x3E, 0x78, 0x00, 0xF7, 0x80, 0x07, 0xFC, - 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x7E, - 0x03, 0xF7, 0xF8, 0x3F, 0xFF, 0xC1, 0xFE, 0xFC, 0x07, 0xF3, 0xC7, 0x0F, - 0x1E, 0x7C, 0xF0, 0x73, 0xE7, 0x83, 0x9F, 0x7C, 0x1F, 0xFF, 0xC0, 0xFF, - 0xFE, 0x03, 0xF7, 0xF0, 0x1F, 0xBF, 0x80, 0xFC, 0xF8, 0x07, 0xC7, 0xC0, - 0x1E, 0x3E, 0x00, 0xE0, 0xE0, 0x7E, 0x0F, 0xDF, 0xE3, 0xFF, 0xFC, 0x7F, - 0xBF, 0x07, 0xE1, 0xF1, 0xF0, 0x1F, 0xFC, 0x01, 0xFF, 0x00, 0x1F, 0xC0, - 0x07, 0xF8, 0x01, 0xFF, 0xC0, 0x7E, 0xFC, 0x1F, 0x8F, 0xC7, 0xE0, 0xFD, - 0xFE, 0x3F, 0xFF, 0xC7, 0xFF, 0xF0, 0x7F, 0x7E, 0x0F, 0xDF, 0xE3, 0xFF, - 0xFC, 0x7F, 0xBF, 0x07, 0xE3, 0xC0, 0x78, 0x3C, 0x0E, 0x07, 0x83, 0xC0, - 0x78, 0x70, 0x0F, 0x1E, 0x00, 0xE3, 0x80, 0x1E, 0xF0, 0x01, 0xDC, 0x00, - 0x3F, 0x80, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0x00, 0x01, 0xE0, 0x00, - 0x38, 0x00, 0x0F, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x01, 0xFF, 0xE0, 0x1F, - 0xF8, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF9, 0xC7, - 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x78, 0x03, 0xC0, 0x1E, 0x07, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x81, 0xF0, 0xFC, 0x7E, 0x1F, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0xF8, 0xFC, 0x3E, 0x0F, - 0x83, 0xF0, 0x3E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xF0, 0x7E, - 0x0F, 0xC3, 0xF0, 0x38, 0x6F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x70, 0x3E, 0x0F, 0xC1, 0xF8, 0x3E, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x7C, 0x0F, 0xC1, 0xF0, - 0x7C, 0x3F, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x83, 0xE1, 0xF8, - 0xFC, 0x3F, 0x07, 0x00, 0x1E, 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0xDF, 0xFC, - 0xFF, 0x3F, 0xFB, 0x0F, 0xF8, 0x03, 0xF8, 0x00, 0x78}; - -const GFXglyph FreeMonoBold18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 5, 22, 21, 8, -21}, // 0x21 '!' - {14, 11, 10, 21, 5, -20}, // 0x22 '"' - {28, 16, 25, 21, 3, -22}, // 0x23 '#' - {78, 14, 28, 21, 4, -23}, // 0x24 '$' - {127, 15, 21, 21, 3, -20}, // 0x25 '%' - {167, 15, 20, 21, 3, -19}, // 0x26 '&' - {205, 4, 10, 21, 8, -20}, // 0x27 ''' - {210, 8, 27, 21, 9, -21}, // 0x28 '(' - {237, 8, 27, 21, 4, -21}, // 0x29 ')' - {264, 16, 15, 21, 3, -21}, // 0x2A '*' - {294, 16, 19, 21, 3, -18}, // 0x2B '+' - {332, 7, 10, 21, 5, -3}, // 0x2C ',' - {341, 19, 4, 21, 1, -11}, // 0x2D '-' - {351, 5, 5, 21, 8, -4}, // 0x2E '.' - {355, 15, 28, 21, 3, -23}, // 0x2F '/' - {408, 16, 23, 21, 3, -22}, // 0x30 '0' - {454, 15, 22, 21, 3, -21}, // 0x31 '1' - {496, 15, 23, 21, 3, -22}, // 0x32 '2' - {540, 16, 23, 21, 3, -22}, // 0x33 '3' - {586, 15, 21, 21, 3, -20}, // 0x34 '4' - {626, 17, 22, 21, 2, -21}, // 0x35 '5' - {673, 15, 23, 21, 4, -22}, // 0x36 '6' - {717, 15, 22, 21, 3, -21}, // 0x37 '7' - {759, 15, 23, 21, 3, -22}, // 0x38 '8' - {803, 15, 23, 21, 4, -22}, // 0x39 '9' - {847, 5, 16, 21, 8, -15}, // 0x3A ':' - {857, 7, 22, 21, 5, -15}, // 0x3B ';' - {877, 18, 16, 21, 1, -17}, // 0x3C '<' - {913, 19, 10, 21, 1, -14}, // 0x3D '=' - {937, 18, 16, 21, 2, -17}, // 0x3E '>' - {973, 15, 21, 21, 4, -20}, // 0x3F '?' - {1013, 15, 27, 21, 3, -21}, // 0x40 '@' - {1064, 22, 21, 21, -1, -20}, // 0x41 'A' - {1122, 20, 21, 21, 1, -20}, // 0x42 'B' - {1175, 19, 21, 21, 1, -20}, // 0x43 'C' - {1225, 18, 21, 21, 2, -20}, // 0x44 'D' - {1273, 19, 21, 21, 1, -20}, // 0x45 'E' - {1323, 19, 21, 21, 1, -20}, // 0x46 'F' - {1373, 20, 21, 21, 1, -20}, // 0x47 'G' - {1426, 21, 21, 21, 0, -20}, // 0x48 'H' - {1482, 14, 21, 21, 4, -20}, // 0x49 'I' - {1519, 19, 21, 21, 2, -20}, // 0x4A 'J' - {1569, 20, 21, 21, 1, -20}, // 0x4B 'K' - {1622, 18, 21, 21, 2, -20}, // 0x4C 'L' - {1670, 23, 21, 21, -1, -20}, // 0x4D 'M' - {1731, 20, 21, 21, 1, -20}, // 0x4E 'N' - {1784, 20, 21, 21, 1, -20}, // 0x4F 'O' - {1837, 18, 21, 21, 1, -20}, // 0x50 'P' - {1885, 20, 26, 21, 1, -20}, // 0x51 'Q' - {1950, 21, 21, 21, 0, -20}, // 0x52 'R' - {2006, 17, 21, 21, 2, -20}, // 0x53 'S' - {2051, 19, 21, 21, 1, -20}, // 0x54 'T' - {2101, 21, 21, 21, 0, -20}, // 0x55 'U' - {2157, 23, 21, 21, -1, -20}, // 0x56 'V' - {2218, 21, 21, 21, 0, -20}, // 0x57 'W' - {2274, 19, 21, 21, 1, -20}, // 0x58 'X' - {2324, 20, 21, 21, 1, -20}, // 0x59 'Y' - {2377, 16, 21, 21, 3, -20}, // 0x5A 'Z' - {2419, 8, 27, 21, 9, -21}, // 0x5B '[' - {2446, 15, 28, 21, 3, -23}, // 0x5C '\' - {2499, 8, 27, 21, 4, -21}, // 0x5D ']' - {2526, 15, 11, 21, 3, -21}, // 0x5E '^' - {2547, 21, 4, 21, 0, 4}, // 0x5F '_' - {2558, 6, 6, 21, 6, -22}, // 0x60 '`' - {2563, 19, 16, 21, 1, -15}, // 0x61 'a' - {2601, 19, 22, 21, 1, -21}, // 0x62 'b' - {2654, 17, 16, 21, 2, -15}, // 0x63 'c' - {2688, 20, 22, 21, 1, -21}, // 0x64 'd' - {2743, 18, 16, 21, 1, -15}, // 0x65 'e' - {2779, 16, 22, 21, 4, -21}, // 0x66 'f' - {2823, 19, 23, 21, 1, -15}, // 0x67 'g' - {2878, 21, 22, 21, 0, -21}, // 0x68 'h' - {2936, 16, 22, 21, 3, -21}, // 0x69 'i' - {2980, 12, 29, 21, 5, -21}, // 0x6A 'j' - {3024, 18, 22, 21, 2, -21}, // 0x6B 'k' - {3074, 16, 22, 21, 3, -21}, // 0x6C 'l' - {3118, 22, 16, 21, -1, -15}, // 0x6D 'm' - {3162, 20, 16, 21, 0, -15}, // 0x6E 'n' - {3202, 19, 16, 21, 1, -15}, // 0x6F 'o' - {3240, 21, 23, 21, 0, -15}, // 0x70 'p' - {3301, 21, 23, 22, 1, -15}, // 0x71 'q' - {3362, 17, 16, 21, 3, -15}, // 0x72 'r' - {3396, 16, 16, 21, 3, -15}, // 0x73 's' - {3428, 17, 21, 21, 1, -20}, // 0x74 't' - {3473, 18, 16, 21, 1, -15}, // 0x75 'u' - {3509, 21, 16, 21, 0, -15}, // 0x76 'v' - {3551, 21, 16, 21, 0, -15}, // 0x77 'w' - {3593, 19, 16, 21, 1, -15}, // 0x78 'x' - {3631, 19, 23, 21, 1, -15}, // 0x79 'y' - {3686, 14, 16, 21, 3, -15}, // 0x7A 'z' - {3714, 10, 27, 21, 6, -21}, // 0x7B '{' - {3748, 4, 27, 21, 9, -21}, // 0x7C '|' - {3762, 10, 27, 21, 6, -21}, // 0x7D '}' - {3796, 17, 8, 21, 2, -13}}; // 0x7E '~' - -const GFXfont FreeMonoBold18pt7b PROGMEM = { - (uint8_t *)FreeMonoBold18pt7bBitmaps, (GFXglyph *)FreeMonoBold18pt7bGlyphs, - 0x20, 0x7E, 35}; - -// Approx. 4485 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h deleted file mode 100644 index eb79d6e..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h +++ /dev/null @@ -1,674 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold24pt7bBitmaps[] PROGMEM = { - 0x38, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0xF3, 0xE7, 0xCF, - 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE3, 0x82, 0x00, 0x00, 0x00, 0x71, 0xF7, - 0xFF, 0xEF, 0x9E, 0x00, 0xFC, 0x7E, 0xF8, 0x7D, 0xF0, 0xFB, 0xE1, 0xF7, - 0xC3, 0xEF, 0x87, 0xDF, 0x0F, 0xBE, 0x1F, 0x38, 0x1C, 0x70, 0x38, 0xE0, - 0x71, 0xC0, 0xE3, 0x81, 0xC7, 0x03, 0x80, 0x01, 0xC1, 0xC0, 0x0F, 0x8F, - 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xE0, 0x0F, 0x8F, 0x80, - 0x7E, 0x3E, 0x01, 0xF0, 0xF8, 0x07, 0xC7, 0xC0, 0x1F, 0x1F, 0x03, 0xFF, - 0xFF, 0x9F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFD, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, - 0x81, 0xF1, 0xF0, 0x07, 0xC7, 0xC0, 0x1F, 0x1F, 0x00, 0x7C, 0x7C, 0x1F, - 0xFF, 0xFC, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0x9F, 0xFF, - 0xFC, 0x0F, 0x8F, 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xE0, - 0x0F, 0x8F, 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xE0, 0x0F, - 0x8F, 0x80, 0x3C, 0x3C, 0x00, 0x00, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x1F, 0xFF, 0x07, 0xFF, 0xF1, 0xFF, 0xFE, - 0x7F, 0xFF, 0xDF, 0xC1, 0xFB, 0xF0, 0x1F, 0x7C, 0x01, 0xEF, 0x80, 0x39, - 0xF8, 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x03, 0xFF, 0xF0, - 0x0F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xC0, 0x07, 0xF8, 0x00, 0xFF, - 0x80, 0x1F, 0xF8, 0x07, 0xFF, 0x81, 0xFB, 0xFF, 0xFF, 0x7F, 0xFF, 0xCF, - 0xFF, 0xF1, 0xDF, 0xFC, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, - 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x01, 0xC0, 0x00, - 0x0F, 0x80, 0x00, 0xFF, 0x00, 0x1F, 0xFC, 0x00, 0xF0, 0xE0, 0x0F, 0x07, - 0x80, 0x70, 0x1C, 0x03, 0x80, 0xE0, 0x1C, 0x07, 0x00, 0xF0, 0x78, 0x03, - 0xC3, 0x80, 0x1F, 0xFC, 0x00, 0x7F, 0xC1, 0xF0, 0xF8, 0x7F, 0x00, 0x3F, - 0xF0, 0x0F, 0xFC, 0x03, 0xFF, 0x00, 0xFF, 0xC0, 0x07, 0xE0, 0xF8, 0x38, - 0x1F, 0xE0, 0x01, 0xFF, 0x80, 0x0F, 0x1E, 0x00, 0xF0, 0x78, 0x07, 0x01, - 0xC0, 0x38, 0x0E, 0x01, 0xC0, 0x70, 0x0F, 0x07, 0x80, 0x38, 0x78, 0x01, - 0xFF, 0xC0, 0x07, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0xFC, - 0x01, 0xFF, 0xE0, 0x1F, 0xFF, 0x00, 0xFF, 0xF8, 0x0F, 0xC7, 0x00, 0x7C, - 0x10, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0xFE, 0x00, 0x0F, 0xF8, 0x00, 0xFF, 0xC7, 0xCF, 0xFF, - 0x3F, 0x7E, 0xFF, 0xFF, 0xE7, 0xFF, 0xBE, 0x1F, 0xF9, 0xF0, 0x7F, 0x8F, - 0x83, 0xFC, 0x7C, 0x0F, 0xE3, 0xF0, 0x7F, 0xCF, 0xFF, 0xFF, 0x7F, 0xFF, - 0xF9, 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x0F, 0xE0, 0x00, 0xFD, 0xF7, 0xDF, - 0x7D, 0xF7, 0xDF, 0x38, 0xE3, 0x8E, 0x38, 0xE0, 0x01, 0x80, 0xF0, 0x7C, - 0x3F, 0x0F, 0xC7, 0xE1, 0xF8, 0xFC, 0x3E, 0x0F, 0x87, 0xC1, 0xF0, 0x7C, - 0x1F, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, - 0x81, 0xF0, 0x7C, 0x1F, 0x07, 0xC0, 0xF8, 0x3E, 0x0F, 0xC1, 0xF0, 0x7E, - 0x0F, 0x83, 0xF0, 0x7C, 0x1F, 0x03, 0xC0, 0x60, 0x3C, 0x0F, 0x83, 0xF0, - 0xFC, 0x1F, 0x83, 0xE0, 0xFC, 0x1F, 0x07, 0xC1, 0xF8, 0x3E, 0x0F, 0x83, - 0xE0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, - 0x1E, 0x0F, 0x83, 0xE0, 0xF8, 0x7C, 0x1F, 0x0F, 0xC3, 0xE1, 0xF8, 0x7C, - 0x3F, 0x0F, 0x83, 0xE0, 0xF0, 0x00, 0x00, 0x70, 0x00, 0x07, 0xC0, 0x00, - 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x10, 0x7C, 0x11, 0xF3, 0xE7, - 0xDF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0x87, 0xFF, 0xF0, 0x07, - 0xFC, 0x00, 0x3F, 0xE0, 0x03, 0xFF, 0x80, 0x3F, 0x7E, 0x01, 0xFB, 0xF0, - 0x1F, 0x8F, 0xC0, 0xF8, 0x3E, 0x03, 0x80, 0xE0, 0x00, 0x38, 0x00, 0x00, - 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, - 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, - 0x01, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xDF, 0xFF, 0xFF, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, - 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, - 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x70, 0x00, 0x1F, - 0x8F, 0x87, 0xC7, 0xC3, 0xE1, 0xE1, 0xF0, 0xF0, 0x78, 0x38, 0x3C, 0x1C, - 0x0E, 0x06, 0x00, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, 0x7D, 0xFF, 0xFF, 0xFF, 0xEF, 0x80, - 0x00, 0x00, 0x60, 0x00, 0x0F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, - 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0xC0, 0x00, 0xF8, 0x00, - 0x1F, 0x80, 0x01, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, - 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, - 0x00, 0xFC, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x83, 0xFF, 0xFE, - 0x1F, 0x83, 0xF1, 0xF8, 0x0F, 0xCF, 0x80, 0x3E, 0x7C, 0x01, 0xF7, 0xC0, - 0x07, 0xFE, 0x00, 0x3F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, - 0xE0, 0x03, 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0xFF, 0xC0, 0x07, 0xFE, 0x00, - 0x3F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7D, 0xF0, 0x07, 0xCF, - 0x80, 0x3E, 0x7E, 0x03, 0xF1, 0xF8, 0x3F, 0x0F, 0xFF, 0xF8, 0x3F, 0xFF, - 0x80, 0xFF, 0xF8, 0x03, 0xFF, 0x80, 0x07, 0xF0, 0x00, 0x01, 0xF8, 0x00, - 0x3F, 0x80, 0x0F, 0xF8, 0x01, 0xFF, 0x80, 0x7F, 0xF8, 0x0F, 0xEF, 0x80, - 0xFC, 0xF8, 0x07, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, - 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, - 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x3F, 0xFF, 0xE7, - 0xFF, 0xFF, 0x7F, 0xFF, 0xF7, 0xFF, 0xFF, 0x3F, 0xFF, 0xE0, 0x01, 0xFC, - 0x00, 0x3F, 0xF8, 0x07, 0xFF, 0xF0, 0x7F, 0xFF, 0xC7, 0xFF, 0xFF, 0x3F, - 0x03, 0xFB, 0xF0, 0x07, 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0xFB, 0x80, 0x07, - 0xC0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xF8, 0x00, - 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x00, - 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xE0, - 0x0E, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x03, 0xF8, 0x00, 0xFF, 0xF8, 0x0F, 0xFF, - 0xE0, 0xFF, 0xFF, 0x8F, 0xFF, 0xFE, 0x7E, 0x03, 0xF1, 0xC0, 0x0F, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x0F, - 0xC0, 0x0F, 0xFC, 0x00, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x3F, 0xF0, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F, - 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x01, 0xFF, 0xC0, - 0x3F, 0xBF, 0xFF, 0xFD, 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x1F, 0xFF, 0xC0, - 0x1F, 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x7F, 0x80, 0x07, - 0xF8, 0x00, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xEF, 0x80, 0x3E, 0xF8, 0x03, - 0xCF, 0x80, 0x7C, 0xF8, 0x0F, 0x8F, 0x80, 0xF0, 0xF8, 0x1F, 0x0F, 0x81, - 0xE0, 0xF8, 0x3E, 0x0F, 0x87, 0xC0, 0xF8, 0x78, 0x0F, 0x8F, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x0F, - 0x80, 0x07, 0xFE, 0x00, 0xFF, 0xF0, 0x0F, 0xFF, 0x00, 0xFF, 0xF0, 0x07, - 0xFE, 0x3F, 0xFF, 0xC1, 0xFF, 0xFF, 0x0F, 0xFF, 0xF8, 0x7F, 0xFF, 0xC3, - 0xFF, 0xFC, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, - 0x01, 0xF0, 0x00, 0x0F, 0xBF, 0x00, 0x7F, 0xFF, 0x03, 0xFF, 0xFC, 0x1F, - 0xFF, 0xF0, 0xFF, 0xFF, 0x83, 0xC0, 0xFE, 0x00, 0x01, 0xF0, 0x00, 0x0F, - 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, - 0x03, 0xE0, 0x00, 0x3F, 0xF0, 0x03, 0xF7, 0xE0, 0x3F, 0xBF, 0xFF, 0xF9, - 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x1F, 0xFF, 0x80, 0x1F, 0xF0, 0x00, 0x00, - 0x1F, 0xC0, 0x0F, 0xFF, 0x01, 0xFF, 0xF0, 0x7F, 0xFF, 0x0F, 0xFF, 0xE1, - 0xFF, 0x00, 0x1F, 0xC0, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, - 0x7C, 0x00, 0x0F, 0x8F, 0xC0, 0xF9, 0xFF, 0x0F, 0xFF, 0xF8, 0xFF, 0xFF, - 0xCF, 0xFF, 0xFC, 0xFF, 0x0F, 0xEF, 0xE0, 0x3E, 0xFC, 0x03, 0xFF, 0x80, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xF7, 0xC0, 0x3F, 0x7E, - 0x03, 0xF3, 0xF0, 0x7E, 0x3F, 0xFF, 0xE1, 0xFF, 0xFC, 0x0F, 0xFF, 0x80, - 0x7F, 0xF0, 0x01, 0xFC, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x1F, 0xF0, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, - 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, - 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x06, 0x00, 0x01, 0xF8, 0x00, 0xFF, - 0xF0, 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x7F, 0xFF, 0xE7, 0xE0, 0x7E, 0xFC, - 0x03, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xF7, - 0xC0, 0x3E, 0x7E, 0x07, 0xE3, 0xFF, 0xFC, 0x0F, 0xFF, 0x00, 0xFF, 0xF0, - 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x7F, 0x0F, 0xE7, 0xC0, 0x3E, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xFC, 0x03, 0xF7, 0xE0, - 0x7E, 0x7F, 0xFF, 0xE3, 0xFF, 0xFC, 0x1F, 0xFF, 0x80, 0xFF, 0xF0, 0x03, - 0xFC, 0x00, 0x03, 0xF8, 0x00, 0xFF, 0xE0, 0x1F, 0xFF, 0x83, 0xFF, 0xF8, - 0x7F, 0xFF, 0xC7, 0xE0, 0xFE, 0xFC, 0x03, 0xEF, 0x80, 0x3E, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x3F, 0xFC, 0x07, 0xF7, 0xE0, - 0xFF, 0x7F, 0xFF, 0xF3, 0xFF, 0xFF, 0x1F, 0xFF, 0xF0, 0xFF, 0x9F, 0x03, - 0xF1, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, - 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x0F, 0xF0, 0x7F, 0xFE, 0x0F, 0xFF, 0xC0, - 0xFF, 0xF8, 0x0F, 0xFF, 0x00, 0x3F, 0x80, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, - 0xEF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7D, 0xFF, - 0xFF, 0xFF, 0xEF, 0x80, 0x0F, 0x87, 0xF1, 0xFC, 0x7F, 0x1F, 0xC3, 0xE0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, - 0x1F, 0x87, 0xE1, 0xF0, 0xFC, 0x3E, 0x0F, 0x03, 0xC1, 0xE0, 0x78, 0x1C, - 0x07, 0x01, 0x80, 0x00, 0x00, 0x04, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x7F, - 0x00, 0x01, 0xFE, 0x00, 0x07, 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xC0, - 0x01, 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, 0x7F, 0xE0, 0x00, - 0xFF, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xFE, 0x00, 0x01, 0xFF, 0x80, - 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xFC, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1E, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x07, - 0xFC, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x7F, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, 0x3F, 0xF0, 0x01, - 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x7F, 0xC0, 0x03, 0xFE, 0x00, 0x1F, 0xF0, - 0x00, 0xFF, 0x80, 0x03, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x03, 0xF8, 0x01, 0xFF, 0xF0, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFC, 0xFF, 0xFF, 0xEF, 0xC0, 0x7E, 0xF8, 0x03, 0xFF, 0x80, 0x1F, - 0x70, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x3F, - 0xE0, 0x0F, 0xFC, 0x01, 0xFF, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x0F, - 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0x00, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, - 0x3F, 0x80, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0xFF, 0x80, 0x3F, 0xF8, - 0x0F, 0xFF, 0x83, 0xE0, 0xF8, 0x78, 0x07, 0x1E, 0x00, 0xF3, 0x80, 0x0E, - 0x70, 0x01, 0xDE, 0x00, 0x3B, 0x80, 0x3F, 0x70, 0x1F, 0xEE, 0x07, 0xFD, - 0xC1, 0xFF, 0xB8, 0x7E, 0x77, 0x0F, 0x0E, 0xE3, 0xC1, 0xDC, 0x70, 0x3B, - 0x8E, 0x07, 0x71, 0xC0, 0xEE, 0x3C, 0x1D, 0xC3, 0xC3, 0xB8, 0x7F, 0xF7, - 0x07, 0xFF, 0xE0, 0x7F, 0xFC, 0x03, 0xFB, 0xC0, 0x00, 0x38, 0x00, 0x07, - 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x61, 0xF0, 0x3E, 0x1F, 0xFF, 0xC3, - 0xFF, 0xF0, 0x1F, 0xFC, 0x01, 0xFC, 0x00, 0x07, 0xFF, 0x80, 0x00, 0x7F, - 0xFE, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x7F, 0xFE, - 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x0F, 0xBE, 0x00, - 0x00, 0x7D, 0xF8, 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x3E, 0x3E, 0x00, 0x03, - 0xE0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0xF0, 0x3F, 0x00, 0x0F, 0x80, - 0xF8, 0x00, 0x7F, 0xFF, 0xC0, 0x07, 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0xF8, - 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0x00, 0xF8, 0x00, 0xF8, 0x0F, - 0x80, 0x03, 0xE1, 0xFF, 0x80, 0xFF, 0xDF, 0xFE, 0x0F, 0xFF, 0xFF, 0xF0, - 0x7F, 0xFF, 0xFF, 0x83, 0xFF, 0xDF, 0xF8, 0x0F, 0xFC, 0x7F, 0xFF, 0xC0, - 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, - 0xFE, 0x07, 0xC0, 0x1F, 0xC1, 0xF0, 0x01, 0xF0, 0x7C, 0x00, 0x7C, 0x1F, - 0x00, 0x1F, 0x07, 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xE0, 0x7F, 0xFF, 0xF0, - 0x1F, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, - 0xFC, 0x1F, 0x00, 0x3F, 0x87, 0xC0, 0x03, 0xF1, 0xF0, 0x00, 0x7C, 0x7C, - 0x00, 0x1F, 0x1F, 0x00, 0x07, 0xC7, 0xC0, 0x03, 0xF7, 0xFF, 0xFF, 0xFB, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xE7, 0x01, 0xFF, 0xFF, 0xC1, 0xFF, - 0xFF, 0xE1, 0xFF, 0xFF, 0xF1, 0xFE, 0x07, 0xF8, 0xFC, 0x01, 0xFC, 0xFC, - 0x00, 0x7E, 0x7C, 0x00, 0x1F, 0x7E, 0x00, 0x0F, 0xBE, 0x00, 0x03, 0x9F, - 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x1F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x39, 0xFC, 0x00, - 0x7C, 0x7F, 0x80, 0xFF, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0x81, 0xFF, - 0xFF, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC1, - 0xF0, 0x0F, 0xF0, 0xF8, 0x01, 0xF8, 0x7C, 0x00, 0x7E, 0x3E, 0x00, 0x1F, - 0x1F, 0x00, 0x0F, 0xCF, 0x80, 0x03, 0xE7, 0xC0, 0x01, 0xF3, 0xE0, 0x00, - 0xF9, 0xF0, 0x00, 0x7C, 0xF8, 0x00, 0x3E, 0x7C, 0x00, 0x1F, 0x3E, 0x00, - 0x0F, 0x9F, 0x00, 0x07, 0xCF, 0x80, 0x07, 0xE7, 0xC0, 0x03, 0xE3, 0xE0, - 0x03, 0xF1, 0xF0, 0x07, 0xF1, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xFF, - 0x7F, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, - 0xF0, 0xF8, 0x00, 0xF8, 0x7C, 0x00, 0x7C, 0x3E, 0x0E, 0x3E, 0x1F, 0x0F, - 0x9F, 0x0F, 0x87, 0xC7, 0x07, 0xC3, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, - 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x3F, 0xFF, 0x00, 0x1F, - 0x0F, 0x80, 0x0F, 0x87, 0xC3, 0x87, 0xC1, 0xC3, 0xE3, 0xE0, 0x01, 0xF1, - 0xF0, 0x00, 0xF8, 0xF8, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, - 0xFF, 0xF8, 0xF8, 0x00, 0x7C, 0x7C, 0x00, 0x3E, 0x3E, 0x00, 0x1F, 0x1F, - 0x07, 0x0F, 0x8F, 0x87, 0xC3, 0x87, 0xC3, 0xE0, 0x03, 0xFF, 0xF0, 0x01, - 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x3F, 0xFF, 0x00, - 0x1F, 0x0F, 0x80, 0x0F, 0x87, 0xC0, 0x07, 0xC3, 0xE0, 0x03, 0xE0, 0xE0, - 0x01, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xFF, 0xF0, 0x01, 0xFF, 0xFC, - 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x00, - 0x7F, 0x8E, 0x00, 0xFF, 0xF7, 0x81, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE1, - 0xFF, 0xFF, 0xF1, 0xFE, 0x03, 0xF8, 0xFC, 0x00, 0xFC, 0xFC, 0x00, 0x3E, - 0x7C, 0x00, 0x1F, 0x7E, 0x00, 0x07, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x0F, - 0xFE, 0xF8, 0x0F, 0xFF, 0xFC, 0x07, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0x00, - 0xFF, 0xFF, 0xC0, 0x01, 0xF3, 0xF0, 0x00, 0xF9, 0xFC, 0x00, 0x7C, 0x7F, - 0x80, 0xFE, 0x3F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x80, - 0x7F, 0xFF, 0x00, 0x07, 0xFC, 0x00, 0x3F, 0xE1, 0xFF, 0x1F, 0xFC, 0xFF, - 0xE7, 0xFF, 0x3F, 0xF9, 0xFF, 0xCF, 0xFE, 0x3F, 0xE1, 0xFF, 0x07, 0xC0, - 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, 0x00, 0x3E, 0x07, - 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7F, 0xFF, 0xF8, 0x1F, 0xFF, 0xFE, - 0x07, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xF8, 0x1F, 0x00, - 0x3E, 0x07, 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, - 0x00, 0x3E, 0x07, 0xC0, 0x0F, 0x87, 0xFE, 0x1F, 0xFB, 0xFF, 0xCF, 0xFF, - 0xFF, 0xF3, 0xFF, 0xFF, 0xFC, 0xFF, 0xF7, 0xFE, 0x1F, 0xF8, 0x7F, 0xFF, - 0xDF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFC, 0x03, 0xE0, - 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x1F, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, - 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, - 0xE0, 0x3F, 0xFF, 0xF0, 0x0F, 0xFF, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x07, - 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x07, 0xC0, 0xE0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, 0x3E, - 0x00, 0x7C, 0x1F, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0x07, 0xC0, 0x1F, 0x83, - 0xF8, 0x3F, 0x81, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, - 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0xE0, 0xFF, 0x9F, 0xFE, - 0x3F, 0xFB, 0xFF, 0xC7, 0xFF, 0x7F, 0xF8, 0xFF, 0xE7, 0xFE, 0x0F, 0xF8, - 0x3E, 0x01, 0xF8, 0x07, 0xC0, 0xFE, 0x00, 0xF8, 0x3F, 0x80, 0x1F, 0x0F, - 0xE0, 0x03, 0xE3, 0xF8, 0x00, 0x7D, 0xFC, 0x00, 0x0F, 0xFF, 0x00, 0x01, - 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xF0, 0x00, 0xFE, 0x7F, - 0x00, 0x1F, 0x87, 0xF0, 0x03, 0xE0, 0x7E, 0x00, 0x7C, 0x07, 0xE0, 0x0F, - 0x80, 0x7E, 0x01, 0xF0, 0x0F, 0xC0, 0x3E, 0x00, 0xF8, 0x1F, 0xF8, 0x1F, - 0xF7, 0xFF, 0x81, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFE, 0x07, 0xFD, 0xFF, - 0x80, 0x7F, 0x00, 0x7F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x3F, 0xFF, 0x80, - 0x1F, 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x0F, 0x80, 0x0E, 0x07, 0xC0, 0x0F, 0x83, 0xE0, 0x07, 0xC1, - 0xF0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, 0x3E, 0x00, 0x7D, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xDF, 0xFF, 0xFF, 0xE0, 0x3F, 0x80, 0x03, 0xF8, 0xFF, 0x80, 0x0F, 0xF9, - 0xFF, 0x00, 0x1F, 0xF3, 0xFF, 0x00, 0x7F, 0xE3, 0xFE, 0x00, 0xFF, 0x83, - 0xFE, 0x03, 0xFE, 0x07, 0xFC, 0x07, 0xFC, 0x0F, 0xFC, 0x1F, 0xF8, 0x1F, - 0xF8, 0x3F, 0xF0, 0x3F, 0xF0, 0x7F, 0xE0, 0x7D, 0xF1, 0xF7, 0xC0, 0xFB, - 0xE3, 0xEF, 0x81, 0xF7, 0xEF, 0xDF, 0x03, 0xE7, 0xDF, 0x3E, 0x07, 0xCF, - 0xFE, 0x7C, 0x0F, 0x8F, 0xF8, 0xF8, 0x1F, 0x1F, 0xF1, 0xF0, 0x3E, 0x1F, - 0xE3, 0xE0, 0x7C, 0x3F, 0x87, 0xC0, 0xF8, 0x3F, 0x0F, 0x81, 0xF0, 0x00, - 0x1F, 0x03, 0xE0, 0x00, 0x3E, 0x1F, 0xF8, 0x03, 0xFF, 0x7F, 0xF8, 0x0F, - 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFD, 0xFF, 0x80, 0x3F, - 0xF0, 0x7F, 0x00, 0x7F, 0xEF, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, - 0xFC, 0x0F, 0xFF, 0x7F, 0xE0, 0x7F, 0xE1, 0xFF, 0x00, 0xF8, 0x1F, 0xF0, - 0x0F, 0x81, 0xFF, 0x80, 0xF8, 0x1F, 0xFC, 0x0F, 0x81, 0xFF, 0xC0, 0xF8, - 0x1F, 0x7E, 0x0F, 0x81, 0xF3, 0xF0, 0xF8, 0x1F, 0x3F, 0x0F, 0x81, 0xF1, - 0xF8, 0xF8, 0x1F, 0x0F, 0xCF, 0x81, 0xF0, 0xFC, 0xF8, 0x1F, 0x07, 0xEF, - 0x81, 0xF0, 0x3F, 0xF8, 0x1F, 0x03, 0xFF, 0x81, 0xF0, 0x1F, 0xF8, 0x1F, - 0x00, 0xFF, 0x81, 0xF0, 0x0F, 0xF8, 0x7F, 0xE0, 0x7F, 0x8F, 0xFF, 0x03, - 0xF8, 0xFF, 0xF0, 0x3F, 0x8F, 0xFF, 0x01, 0xF8, 0x7F, 0xE0, 0x0F, 0x80, - 0x00, 0x3F, 0x80, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, - 0xFE, 0x00, 0xFF, 0xFF, 0xE0, 0x3F, 0xC1, 0xFE, 0x0F, 0xE0, 0x0F, 0xE1, - 0xF8, 0x00, 0xFC, 0x7E, 0x00, 0x0F, 0xCF, 0x80, 0x00, 0xFB, 0xF0, 0x00, - 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x07, 0xFE, - 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xFF, 0x00, 0x00, - 0x7F, 0xF0, 0x00, 0x1F, 0xBE, 0x00, 0x03, 0xE7, 0xE0, 0x00, 0xFC, 0x7E, - 0x00, 0x3F, 0x0F, 0xE0, 0x0F, 0xE0, 0xFF, 0x07, 0xF8, 0x0F, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x00, 0xFF, 0xF8, 0x00, 0x03, - 0xF8, 0x00, 0x7F, 0xFF, 0x80, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xFC, 0x7F, 0xFF, 0xFE, 0x1F, 0x00, 0xFE, 0x1F, 0x00, 0x3F, 0x1F, - 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, - 0x00, 0x3F, 0x1F, 0x00, 0x7E, 0x1F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xF8, 0x1F, 0xFF, 0xF0, 0x1F, 0xFF, 0x80, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x7F, 0xFC, 0x00, 0xFF, - 0xFE, 0x00, 0xFF, 0xFE, 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFC, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0xE0, 0x3F, 0xC1, 0xFE, 0x0F, 0xE0, 0x0F, 0xE1, 0xF8, - 0x00, 0xFC, 0x7E, 0x00, 0x0F, 0xCF, 0x80, 0x00, 0xFB, 0xF0, 0x00, 0x1F, - 0xFC, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x07, 0xFE, 0x00, - 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x00, 0xFD, - 0xF0, 0x00, 0x1F, 0x3F, 0x00, 0x07, 0xE7, 0xF0, 0x01, 0xF8, 0x7F, 0x00, - 0x7F, 0x07, 0xF8, 0x3F, 0xC0, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFC, 0x00, - 0x7F, 0xFF, 0x00, 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x03, 0xFF, 0x87, 0x80, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0x07, - 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0x0F, 0x01, 0xF8, 0x00, 0x7F, 0xFF, - 0x80, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, - 0x7F, 0xFF, 0xFE, 0x00, 0xF8, 0x07, 0xE0, 0x0F, 0x80, 0x3F, 0x00, 0xF8, - 0x01, 0xF0, 0x0F, 0x80, 0x1F, 0x00, 0xF8, 0x01, 0xF0, 0x0F, 0x80, 0x3F, - 0x00, 0xF8, 0x0F, 0xE0, 0x0F, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xC0, 0x0F, - 0xFF, 0xF0, 0x00, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0xF8, 0x3F, - 0x80, 0x0F, 0x81, 0xFC, 0x00, 0xF8, 0x0F, 0xE0, 0x0F, 0x80, 0x7E, 0x00, - 0xF8, 0x03, 0xF0, 0x7F, 0xF0, 0x1F, 0xEF, 0xFF, 0x81, 0xFF, 0xFF, 0xF8, - 0x0F, 0xFF, 0xFF, 0x80, 0x7F, 0x7F, 0xF0, 0x07, 0xE0, 0x01, 0xFC, 0x70, - 0x1F, 0xFD, 0xE0, 0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, 0xFC, - 0x0F, 0xE7, 0xE0, 0x1F, 0x9F, 0x00, 0x3E, 0x7C, 0x00, 0xF9, 0xF0, 0x01, - 0xC7, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x7F, 0xFF, 0x00, - 0xFF, 0xFF, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xE0, 0x00, - 0x0F, 0xDC, 0x00, 0x1F, 0xF8, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0xC0, 0x0F, - 0xFF, 0xC0, 0xFE, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xCF, 0xFF, 0xFE, 0x1C, - 0xFF, 0xF0, 0x00, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC1, 0xF0, 0x7F, - 0xE0, 0xF8, 0x3F, 0xF0, 0x7C, 0x1F, 0xF8, 0x3E, 0x0F, 0xFC, 0x1F, 0x07, - 0xFE, 0x0F, 0x83, 0xEE, 0x07, 0xC0, 0xE0, 0x03, 0xE0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, - 0xF0, 0x00, 0x0F, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x07, 0xFF, 0xF0, 0x03, - 0xFF, 0xF8, 0x00, 0xFF, 0xF8, 0x00, 0x7F, 0xE0, 0x7F, 0xEF, 0xFF, 0x0F, - 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0xE0, 0x7F, 0xE1, - 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, - 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, - 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, - 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, - 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x80, 0x1F, 0x80, 0xF8, 0x01, 0xF0, 0x0F, - 0xE0, 0x7F, 0x00, 0x7F, 0xFF, 0xE0, 0x03, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, - 0x80, 0x00, 0xFF, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x7F, 0xE0, 0x1F, 0xFB, - 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFC, 0x0F, 0xFF, 0x7F, - 0xE0, 0x1F, 0xF8, 0x7C, 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x7C, 0x03, 0xE0, - 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7E, 0x00, - 0xF8, 0x00, 0xF8, 0x07, 0xC0, 0x03, 0xF0, 0x1F, 0x00, 0x07, 0xC0, 0xF8, - 0x00, 0x1F, 0x03, 0xE0, 0x00, 0x7E, 0x1F, 0x00, 0x00, 0xF8, 0x7C, 0x00, - 0x03, 0xF3, 0xF0, 0x00, 0x07, 0xCF, 0x80, 0x00, 0x1F, 0xBE, 0x00, 0x00, - 0x3F, 0xF0, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x07, - 0xF8, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0xFC, - 0x00, 0x00, 0x7F, 0xE0, 0x7F, 0xEF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, - 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0xE0, 0x7F, 0xE3, 0xE0, 0x00, 0x3C, 0x3E, - 0x0F, 0x83, 0xC3, 0xE1, 0xF8, 0x3C, 0x3E, 0x1F, 0x87, 0xC3, 0xE1, 0xFC, - 0x7C, 0x3E, 0x3F, 0xC7, 0xC1, 0xE3, 0xFC, 0x7C, 0x1F, 0x3F, 0xE7, 0xC1, - 0xF7, 0xFE, 0x78, 0x1F, 0x7F, 0xE7, 0x81, 0xF7, 0x9F, 0xF8, 0x1F, 0xF9, - 0xFF, 0x81, 0xFF, 0x9F, 0xF8, 0x0F, 0xF9, 0xFF, 0x80, 0xFF, 0x0F, 0xF8, - 0x0F, 0xF0, 0xFF, 0x80, 0xFF, 0x0F, 0xF0, 0x0F, 0xE0, 0x7F, 0x00, 0xFE, - 0x07, 0xF0, 0x0F, 0xE0, 0x7F, 0x00, 0xFC, 0x03, 0xF0, 0x07, 0xC0, 0x3F, - 0x00, 0x7F, 0x80, 0xFF, 0x3F, 0xF0, 0x7F, 0xEF, 0xFC, 0x1F, 0xFB, 0xFF, - 0x07, 0xFE, 0x7F, 0x80, 0xFF, 0x07, 0xE0, 0x3F, 0x00, 0xFC, 0x0F, 0x80, - 0x1F, 0x87, 0xC0, 0x03, 0xF3, 0xE0, 0x00, 0xFF, 0xF8, 0x00, 0x1F, 0xFC, - 0x00, 0x03, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, - 0xF0, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0xFC, 0xF8, 0x00, - 0x7E, 0x3F, 0x00, 0x3F, 0x07, 0xE0, 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0x1F, - 0x07, 0xFC, 0x0F, 0xFB, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF8, - 0x7F, 0xF7, 0xFC, 0x0F, 0xF8, 0x7F, 0x80, 0x7F, 0xBF, 0xF0, 0x3F, 0xFF, - 0xFC, 0x0F, 0xFF, 0xFF, 0x03, 0xFF, 0x7F, 0x80, 0x7F, 0x87, 0xE0, 0x1F, - 0x80, 0xFC, 0x07, 0xC0, 0x1F, 0x03, 0xE0, 0x03, 0xE1, 0xF8, 0x00, 0xFC, - 0x7C, 0x00, 0x1F, 0xBE, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x7F, 0xC0, 0x00, - 0x1F, 0xE0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0xFF, 0x00, 0x0F, 0xFF, 0xE0, 0x03, - 0xFF, 0xF8, 0x00, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0x00, 0x7F, 0xFF, 0xF3, - 0xFF, 0xFF, 0x9F, 0xFF, 0xFC, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0x3E, 0x03, - 0xF1, 0xF0, 0x1F, 0x8F, 0x81, 0xF8, 0x7C, 0x1F, 0x83, 0xE1, 0xF8, 0x0E, - 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, - 0x00, 0xFC, 0x00, 0x0F, 0xE0, 0x70, 0x7E, 0x07, 0xC7, 0xE0, 0x3E, 0x7E, - 0x01, 0xF7, 0xE0, 0x0F, 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xBF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xBE, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, - 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, - 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, - 0xFF, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x60, 0x00, 0x0F, 0x00, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, - 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xF0, - 0x00, 0x1F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x07, - 0xC0, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, - 0x1F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, - 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, - 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, - 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0x7F, 0xC0, 0x00, 0x40, 0x00, 0x06, 0x00, 0x00, 0xF0, - 0x00, 0x1F, 0x80, 0x03, 0xFC, 0x00, 0x7F, 0xE0, 0x0F, 0xFF, 0x00, 0xFF, - 0xF8, 0x1F, 0x9F, 0x83, 0xF0, 0xFC, 0x7E, 0x07, 0xEF, 0xC0, 0x3F, 0xF8, - 0x01, 0xFF, 0x80, 0x0F, 0x70, 0x00, 0x60, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0xE0, 0x78, 0x3E, 0x0F, 0xC3, 0xF0, 0x7C, 0x1E, 0x06, 0x01, 0xFF, - 0x00, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x0F, 0xFF, - 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x01, 0xFF, - 0xF8, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x7F, 0xFF, - 0xF8, 0x7F, 0x00, 0xF8, 0xFC, 0x00, 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x03, - 0xF8, 0xFC, 0x0F, 0xFE, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x3F, 0xFF, - 0xFF, 0x1F, 0xFE, 0xFE, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x1F, 0xE0, - 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x0F, - 0xE0, 0x03, 0xEF, 0xFF, 0x00, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0xF8, 0x3F, 0xE0, 0x7F, 0x07, 0xF0, 0x03, 0xF0, 0xFC, 0x00, - 0x3E, 0x1F, 0x80, 0x07, 0xE3, 0xE0, 0x00, 0x7C, 0x7C, 0x00, 0x0F, 0x8F, - 0x80, 0x01, 0xF1, 0xF0, 0x00, 0x3E, 0x3E, 0x00, 0x07, 0xC7, 0xE0, 0x01, - 0xF8, 0xFC, 0x00, 0x3E, 0x1F, 0xC0, 0x0F, 0xCF, 0xFE, 0x07, 0xF3, 0xFF, - 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0xE0, 0xFE, 0x7F, 0xF0, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFF, 0x18, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x3F, 0x81, 0xFC, 0x7E, 0x00, - 0x7C, 0x7C, 0x00, 0x7C, 0xFC, 0x00, 0x3C, 0xF8, 0x00, 0x38, 0xF8, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7C, 0x00, 0x06, 0x7E, 0x00, 0x1F, 0x7F, 0x80, 0x7F, 0x3F, 0xFF, - 0xFF, 0x1F, 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x07, 0xFF, 0xF8, 0x00, 0xFF, - 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0xF8, 0x00, 0xFE, 0x3E, 0x00, 0xFF, 0xEF, 0x80, 0xFF, 0xFF, - 0xE0, 0x7F, 0xFF, 0xF8, 0x3F, 0xFF, 0xFE, 0x1F, 0xE0, 0xFF, 0x87, 0xE0, - 0x0F, 0xE1, 0xF0, 0x01, 0xF8, 0xFC, 0x00, 0x7E, 0x3E, 0x00, 0x0F, 0x8F, - 0x80, 0x03, 0xE3, 0xE0, 0x00, 0xF8, 0xF8, 0x00, 0x3E, 0x3E, 0x00, 0x0F, - 0x8F, 0xC0, 0x07, 0xE1, 0xF0, 0x01, 0xF8, 0x7E, 0x00, 0xFE, 0x0F, 0xE0, - 0x7F, 0xE3, 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xC0, - 0xFF, 0xEF, 0xE0, 0x0F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x03, 0xFF, 0xC0, - 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x7F, 0x81, 0xFC, - 0x7E, 0x00, 0x7E, 0xFC, 0x00, 0x3E, 0xF8, 0x00, 0x3E, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, 0x80, 0x7E, - 0x3F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFE, 0x07, 0xFF, 0xF8, - 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xE0, 0x03, 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, - 0xFF, 0xFF, 0x07, 0xFF, 0xF8, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x01, 0xF0, - 0x00, 0x07, 0xC0, 0x01, 0xFF, 0xFF, 0x0F, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, - 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x07, - 0xC0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, - 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x01, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, 0xFF, 0xFF, 0xE1, 0xFF, - 0xFF, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xFF, 0xBF, 0x83, 0xFF, 0xFF, 0xE3, - 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xFB, 0xFC, 0x3F, 0xF9, 0xF8, 0x07, 0xF0, - 0xF8, 0x01, 0xF8, 0xFC, 0x00, 0xFC, 0x7C, 0x00, 0x3E, 0x3E, 0x00, 0x1F, - 0x1F, 0x00, 0x0F, 0x8F, 0x80, 0x07, 0xC7, 0xC0, 0x03, 0xE3, 0xF0, 0x03, - 0xF0, 0xF8, 0x01, 0xF8, 0x7E, 0x01, 0xFC, 0x3F, 0xC3, 0xFE, 0x0F, 0xFF, - 0xFF, 0x03, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xC0, 0x3F, 0xFB, 0xE0, 0x07, - 0xF1, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFE, 0x00, - 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0x00, 0x3F, 0xFE, 0x00, - 0x0F, 0xFC, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x0F, 0xC0, 0x07, 0xCF, 0xFC, 0x01, - 0xF7, 0xFF, 0x80, 0x7F, 0xFF, 0xF0, 0x1F, 0xFF, 0xFC, 0x07, 0xFC, 0x1F, - 0x81, 0xFC, 0x03, 0xE0, 0x7E, 0x00, 0xF8, 0x1F, 0x00, 0x3E, 0x07, 0xC0, - 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, 0x00, 0x3E, 0x07, - 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, 0x00, 0x3E, - 0x1F, 0xF0, 0x3F, 0xEF, 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, - 0xFF, 0xDF, 0xF0, 0x3F, 0xE0, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, - 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x0F, 0xFE, 0x00, 0x7F, 0xF0, - 0x01, 0xFF, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x7F, 0xFF, 0xF7, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0x00, 0x00, 0x7C, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, - 0xFF, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, - 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, - 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x3F, 0x00, 0x3F, 0xBF, 0xFF, 0xBF, 0xFF, - 0x9F, 0xFF, 0xCF, 0xFF, 0x83, 0xFF, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x80, - 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, - 0x87, 0xFC, 0x07, 0xC7, 0xFF, 0x03, 0xE3, 0xFF, 0x81, 0xF1, 0xFF, 0xC0, - 0xF8, 0x7F, 0xC0, 0x7C, 0xFE, 0x00, 0x3E, 0xFE, 0x00, 0x1F, 0xFE, 0x00, - 0x0F, 0xFE, 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xFF, 0xE0, - 0x00, 0xFF, 0xF8, 0x00, 0x7C, 0xFE, 0x00, 0x3E, 0x3F, 0x80, 0x1F, 0x0F, - 0xE0, 0x3F, 0x81, 0xFF, 0xBF, 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF0, - 0x7F, 0xFB, 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x0F, 0xFE, - 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, - 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x03, 0xFF, - 0xFF, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xF8, - 0x00, 0x3C, 0x1F, 0x00, 0xFD, 0xFC, 0xFF, 0x07, 0xFF, 0xFF, 0xFE, 0x1F, - 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFF, 0xF0, 0xFF, 0x1F, 0x87, 0xC1, 0xF8, - 0x7E, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, - 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, - 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, - 0x1F, 0x07, 0xC1, 0xF1, 0xFE, 0x1F, 0x87, 0xEF, 0xFC, 0x7F, 0x1F, 0xFF, - 0xF1, 0xFC, 0x7F, 0xFF, 0xC7, 0xF1, 0xFD, 0xFE, 0x1F, 0x87, 0xE0, 0x00, - 0x1F, 0x80, 0x1F, 0x9F, 0xF8, 0x1F, 0xDF, 0xFE, 0x0F, 0xFF, 0xFF, 0x87, - 0xFF, 0xFF, 0xC1, 0xFF, 0x07, 0xF0, 0x7F, 0x01, 0xF8, 0x3F, 0x00, 0x7C, - 0x1F, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0x07, 0xC0, 0x0F, 0x83, 0xE0, 0x07, - 0xC1, 0xF0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, 0x3E, 0x00, - 0x7C, 0x1F, 0x00, 0x3E, 0x3F, 0xE0, 0x7F, 0xBF, 0xF8, 0x7F, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFE, 0x1F, 0xFB, 0xFE, 0x07, 0xF8, 0x00, 0x7F, 0x00, 0x01, - 0xFF, 0xF0, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xC1, - 0xFE, 0x0F, 0xF1, 0xFC, 0x01, 0xFC, 0xFC, 0x00, 0x7E, 0xFC, 0x00, 0x1F, - 0xFC, 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0xF0, 0x00, 0x7E, 0xF8, 0x00, 0x7E, 0x7F, 0x00, - 0x7F, 0x1F, 0xC0, 0xFF, 0x07, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0x80, 0x7F, - 0xFF, 0x00, 0x1F, 0xFF, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x07, 0xE0, 0x03, - 0xF9, 0xFF, 0xC0, 0x7F, 0xBF, 0xFE, 0x07, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, - 0xFF, 0xC3, 0xFF, 0x83, 0xFC, 0x0F, 0xE0, 0x0F, 0xE0, 0xFC, 0x00, 0x7E, - 0x0F, 0xC0, 0x03, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF0, 0xF8, - 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x3F, 0x0F, 0xC0, 0x03, - 0xF0, 0xFE, 0x00, 0x7E, 0x0F, 0xF8, 0x1F, 0xE0, 0xFF, 0xFF, 0xFC, 0x0F, - 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xF0, 0x0F, 0x9F, 0xFC, 0x00, 0xF8, 0x7F, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x7F, 0xF8, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0xFF, 0xFC, - 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0x3F, 0xF9, 0xFC, 0x0F, 0xFF, 0xDF, 0xE1, 0xFF, 0xFF, 0xFE, 0x3F, - 0xFF, 0xFF, 0xE3, 0xF8, 0x1F, 0xFC, 0x7F, 0x00, 0x7F, 0x07, 0xC0, 0x03, - 0xF0, 0xFC, 0x00, 0x3F, 0x0F, 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, - 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, 0xC0, 0x01, 0xF0, 0xFC, 0x00, - 0x3F, 0x07, 0xE0, 0x07, 0xF0, 0x7F, 0x81, 0xFF, 0x03, 0xFF, 0xFF, 0xF0, - 0x1F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0x9F, 0x00, 0x0F, - 0xE1, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x3F, 0xFF, 0x00, - 0x03, 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x01, - 0xF0, 0x3F, 0xC7, 0xFC, 0x7F, 0xCF, 0xFE, 0x7F, 0xDF, 0xFF, 0x7F, 0xFF, - 0xFF, 0x3F, 0xFF, 0x0E, 0x07, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x07, 0xF0, - 0x00, 0x07, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, - 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, - 0x00, 0x7F, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, - 0xE0, 0x7F, 0xFF, 0xC0, 0x03, 0xFC, 0x60, 0x7F, 0xFF, 0x87, 0xFF, 0xFC, - 0x7F, 0xFF, 0xE7, 0xFF, 0xFF, 0x3F, 0x01, 0xF9, 0xF0, 0x07, 0xCF, 0xC0, - 0x1C, 0x7F, 0xF0, 0x03, 0xFF, 0xF8, 0x0F, 0xFF, 0xF0, 0x3F, 0xFF, 0xC0, - 0x3F, 0xFF, 0x00, 0x0F, 0xFD, 0xC0, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xEF, 0xFF, 0xFE, 0x3F, - 0xFF, 0xC0, 0x07, 0xF8, 0x00, 0x07, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0xFF, - 0xF8, 0x7F, 0xFF, 0xF8, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, - 0x80, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, - 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x03, 0x83, 0xF0, 0x1F, 0x87, - 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xF8, 0x07, 0xFF, 0xC0, 0x03, - 0xFC, 0x00, 0x7F, 0x01, 0xFE, 0x7F, 0x81, 0xFF, 0x3F, 0xC0, 0xFF, 0x9F, - 0xE0, 0x7F, 0xC7, 0xF0, 0x1F, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, - 0x3E, 0x00, 0x7C, 0x1F, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0x07, 0xC0, 0x0F, - 0x83, 0xE0, 0x07, 0xC1, 0xF0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x01, - 0xF8, 0x3F, 0x01, 0xFC, 0x1F, 0xC1, 0xFF, 0x07, 0xFF, 0xFF, 0xC3, 0xFF, - 0xFF, 0xE0, 0xFF, 0xF7, 0xF0, 0x3F, 0xF3, 0xF0, 0x03, 0xF0, 0x00, 0x7F, - 0xE0, 0x7F, 0xEF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x0F, - 0xFF, 0x7F, 0xE0, 0x7F, 0xE0, 0xF8, 0x01, 0xF0, 0x0F, 0xC0, 0x1F, 0x00, - 0x7C, 0x03, 0xE0, 0x07, 0xE0, 0x3E, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xF0, - 0x7C, 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF8, 0xF8, 0x00, 0x0F, 0x9F, 0x00, - 0x00, 0xFD, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x7F, 0x80, 0x1F, 0xEF, 0xFC, 0x03, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, - 0xFC, 0x03, 0xFF, 0x7F, 0x80, 0x1F, 0xE1, 0xF0, 0xF8, 0x7C, 0x1F, 0x1F, - 0x87, 0xC1, 0xF1, 0xF8, 0xFC, 0x1F, 0x1F, 0xCF, 0x80, 0xFB, 0xFC, 0xF8, - 0x0F, 0xBF, 0xDF, 0x80, 0xFB, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x00, 0x7F, - 0xDF, 0xF0, 0x07, 0xF9, 0xFF, 0x00, 0x7F, 0x9F, 0xE0, 0x07, 0xF0, 0xFE, - 0x00, 0x3F, 0x0F, 0xE0, 0x03, 0xF0, 0x7E, 0x00, 0x3E, 0x07, 0xC0, 0x03, - 0xE0, 0x3C, 0x00, 0x3F, 0xC0, 0xFF, 0x1F, 0xF8, 0x7F, 0xE7, 0xFE, 0x1F, - 0xF9, 0xFF, 0x87, 0xFE, 0x3F, 0xC0, 0xFF, 0x03, 0xF8, 0x7F, 0x00, 0x7F, - 0x3F, 0x80, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xE0, 0x00, 0x3F, 0xE0, 0x00, - 0x07, 0xF8, 0x00, 0x07, 0xFF, 0x00, 0x03, 0xFF, 0xE0, 0x01, 0xFF, 0xFE, - 0x00, 0xFE, 0x1F, 0xC0, 0x7F, 0x03, 0xF8, 0x7F, 0xC0, 0xFF, 0xBF, 0xF8, - 0x7F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0x7F, 0xC0, 0xFF, 0x80, - 0x7F, 0x80, 0x7F, 0xBF, 0xF0, 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0x03, - 0xFF, 0x7F, 0x80, 0x7F, 0x8F, 0xC0, 0x07, 0x81, 0xF0, 0x03, 0xE0, 0x7E, - 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xF0, 0x3E, 0x00, 0x7C, 0x0F, 0x80, - 0x0F, 0x87, 0xC0, 0x03, 0xE1, 0xF0, 0x00, 0x7C, 0xF8, 0x00, 0x1F, 0xFE, - 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x07, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x1F, 0xFF, 0x80, - 0x0F, 0xFF, 0xF0, 0x03, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, - 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0x3F, 0xBE, 0x0F, 0xC3, 0x83, 0xF0, 0x00, 0xFC, 0x00, - 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, - 0xC0, 0x3B, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x78, 0x03, 0xF0, 0x1F, 0xC0, 0xFF, 0x07, - 0xF8, 0x1F, 0x80, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, - 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x0F, 0x81, 0xFE, 0x0F, - 0xF0, 0x3F, 0x80, 0xFF, 0x01, 0xFE, 0x00, 0xFC, 0x01, 0xF0, 0x07, 0xC0, - 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF8, - 0x07, 0xF8, 0x0F, 0xF0, 0x3F, 0xC0, 0x7F, 0x00, 0x78, 0x77, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xE0, 0x78, 0x03, 0xF0, 0x0F, - 0xE0, 0x3F, 0xC0, 0x7F, 0x00, 0x7E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, - 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, - 0x07, 0xC0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x03, 0xFC, 0x1F, 0xE0, 0xFC, - 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0xF8, 0x07, 0xE0, 0x7F, 0x83, 0xFC, 0x0F, 0xF0, 0x3F, 0x80, 0x78, - 0x00, 0x07, 0x80, 0x00, 0x7F, 0x80, 0x03, 0xFF, 0x03, 0x9F, 0xFE, 0x1F, - 0xFF, 0xFC, 0xFF, 0xF3, 0xFF, 0xFF, 0x87, 0xFF, 0x9C, 0x0F, 0xFC, 0x00, - 0x0F, 0xE0, 0x00, 0x1F, 0x00}; - -const GFXglyph FreeMonoBold24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 7, 31, 28, 10, -29}, // 0x21 '!' - {28, 15, 14, 28, 6, -28}, // 0x22 '"' - {55, 22, 34, 28, 3, -30}, // 0x23 '#' - {149, 19, 38, 28, 5, -31}, // 0x24 '$' - {240, 21, 30, 28, 4, -28}, // 0x25 '%' - {319, 21, 28, 28, 4, -26}, // 0x26 '&' - {393, 6, 14, 28, 11, -28}, // 0x27 ''' - {404, 10, 37, 28, 12, -29}, // 0x28 '(' - {451, 10, 37, 28, 6, -29}, // 0x29 ')' - {498, 21, 19, 28, 4, -28}, // 0x2A '*' - {548, 23, 26, 28, 3, -25}, // 0x2B '+' - {623, 9, 14, 28, 7, -6}, // 0x2C ',' - {639, 24, 5, 28, 2, -15}, // 0x2D '-' - {654, 7, 6, 28, 11, -4}, // 0x2E '.' - {660, 20, 38, 28, 4, -32}, // 0x2F '/' - {755, 21, 31, 28, 4, -29}, // 0x30 '0' - {837, 20, 29, 28, 4, -28}, // 0x31 '1' - {910, 21, 30, 28, 3, -29}, // 0x32 '2' - {989, 21, 31, 28, 4, -29}, // 0x33 '3' - {1071, 20, 28, 28, 4, -27}, // 0x34 '4' - {1141, 21, 31, 28, 4, -29}, // 0x35 '5' - {1223, 20, 31, 28, 5, -29}, // 0x36 '6' - {1301, 20, 30, 28, 4, -29}, // 0x37 '7' - {1376, 20, 31, 28, 4, -29}, // 0x38 '8' - {1454, 20, 31, 28, 5, -29}, // 0x39 '9' - {1532, 7, 22, 28, 11, -20}, // 0x3A ':' - {1552, 10, 28, 28, 6, -20}, // 0x3B ';' - {1587, 24, 21, 28, 2, -23}, // 0x3C '<' - {1650, 24, 14, 28, 2, -19}, // 0x3D '=' - {1692, 23, 22, 28, 3, -23}, // 0x3E '>' - {1756, 20, 29, 28, 5, -27}, // 0x3F '?' - {1829, 19, 36, 28, 4, -28}, // 0x40 '@' - {1915, 29, 27, 28, -1, -26}, // 0x41 'A' - {2013, 26, 27, 28, 1, -26}, // 0x42 'B' - {2101, 25, 29, 28, 2, -27}, // 0x43 'C' - {2192, 25, 27, 28, 1, -26}, // 0x44 'D' - {2277, 25, 27, 28, 1, -26}, // 0x45 'E' - {2362, 25, 27, 28, 1, -26}, // 0x46 'F' - {2447, 25, 29, 28, 2, -27}, // 0x47 'G' - {2538, 26, 27, 28, 1, -26}, // 0x48 'H' - {2626, 19, 27, 28, 5, -26}, // 0x49 'I' - {2691, 25, 28, 28, 3, -26}, // 0x4A 'J' - {2779, 27, 27, 28, 1, -26}, // 0x4B 'K' - {2871, 25, 27, 28, 2, -26}, // 0x4C 'L' - {2956, 31, 27, 28, -1, -26}, // 0x4D 'M' - {3061, 28, 27, 28, 0, -26}, // 0x4E 'N' - {3156, 27, 29, 28, 1, -27}, // 0x4F 'O' - {3254, 24, 27, 28, 1, -26}, // 0x50 'P' - {3335, 27, 35, 28, 1, -27}, // 0x51 'Q' - {3454, 28, 27, 28, 0, -26}, // 0x52 'R' - {3549, 22, 29, 28, 3, -27}, // 0x53 'S' - {3629, 25, 27, 28, 2, -26}, // 0x54 'T' - {3714, 28, 28, 28, 0, -26}, // 0x55 'U' - {3812, 30, 27, 28, -1, -26}, // 0x56 'V' - {3914, 28, 27, 28, 0, -26}, // 0x57 'W' - {4009, 26, 27, 28, 1, -26}, // 0x58 'X' - {4097, 26, 27, 28, 1, -26}, // 0x59 'Y' - {4185, 21, 27, 28, 4, -26}, // 0x5A 'Z' - {4256, 10, 37, 28, 12, -29}, // 0x5B '[' - {4303, 20, 38, 28, 4, -32}, // 0x5C '\' - {4398, 10, 37, 28, 6, -29}, // 0x5D ']' - {4445, 20, 15, 28, 4, -29}, // 0x5E '^' - {4483, 28, 5, 28, 0, 5}, // 0x5F '_' - {4501, 9, 8, 28, 8, -30}, // 0x60 '`' - {4510, 24, 23, 28, 2, -21}, // 0x61 'a' - {4579, 27, 31, 28, 0, -29}, // 0x62 'b' - {4684, 24, 23, 28, 3, -21}, // 0x63 'c' - {4753, 26, 31, 28, 2, -29}, // 0x64 'd' - {4854, 24, 23, 28, 2, -21}, // 0x65 'e' - {4923, 22, 30, 28, 4, -29}, // 0x66 'f' - {5006, 25, 31, 28, 2, -21}, // 0x67 'g' - {5103, 26, 30, 28, 1, -29}, // 0x68 'h' - {5201, 21, 29, 28, 4, -28}, // 0x69 'i' - {5278, 17, 38, 28, 5, -28}, // 0x6A 'j' - {5359, 25, 30, 28, 2, -29}, // 0x6B 'k' - {5453, 21, 30, 28, 4, -29}, // 0x6C 'l' - {5532, 30, 22, 28, -1, -21}, // 0x6D 'm' - {5615, 25, 22, 28, 1, -21}, // 0x6E 'n' - {5684, 25, 23, 28, 2, -21}, // 0x6F 'o' - {5756, 28, 31, 28, 0, -21}, // 0x70 'p' - {5865, 28, 31, 28, 1, -21}, // 0x71 'q' - {5974, 24, 22, 28, 3, -21}, // 0x72 'r' - {6040, 21, 23, 28, 4, -21}, // 0x73 's' - {6101, 23, 28, 28, 1, -26}, // 0x74 't' - {6182, 25, 22, 28, 1, -20}, // 0x75 'u' - {6251, 28, 21, 28, 0, -20}, // 0x76 'v' - {6325, 28, 21, 28, 0, -20}, // 0x77 'w' - {6399, 26, 21, 28, 1, -20}, // 0x78 'x' - {6468, 26, 30, 28, 1, -20}, // 0x79 'y' - {6566, 19, 21, 28, 5, -20}, // 0x7A 'z' - {6616, 14, 37, 28, 7, -29}, // 0x7B '{' - {6681, 5, 36, 28, 12, -28}, // 0x7C '|' - {6704, 14, 37, 28, 8, -29}, // 0x7D '}' - {6769, 22, 10, 28, 3, -17}}; // 0x7E '~' - -const GFXfont FreeMonoBold24pt7b PROGMEM = { - (uint8_t *)FreeMonoBold24pt7bBitmaps, (GFXglyph *)FreeMonoBold24pt7bGlyphs, - 0x20, 0x7E, 47}; - -// Approx. 7469 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h deleted file mode 100644 index 44320f8..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h +++ /dev/null @@ -1,191 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xD2, 0x1F, 0x80, 0xEC, 0x89, 0x12, 0x24, 0x40, 0x36, 0x36, - 0x36, 0x7F, 0x7F, 0x36, 0xFF, 0xFF, 0x3C, 0x3C, 0x3C, 0x00, 0x18, 0xFF, - 0xFE, 0x3C, 0x1F, 0x1F, 0x83, 0x46, 0x8D, 0xF0, 0xC1, 0x83, 0x00, 0x61, - 0x22, 0x44, 0x86, 0x67, 0x37, 0x11, 0x22, 0x4C, 0x70, 0x3C, 0x7E, 0x60, - 0x60, 0x30, 0x7B, 0xDF, 0xCE, 0xFF, 0x7F, 0xC9, 0x24, 0x37, 0x66, 0xCC, - 0xCC, 0xCC, 0x66, 0x31, 0xCE, 0x66, 0x33, 0x33, 0x33, 0x66, 0xC8, 0x18, - 0x18, 0xFF, 0xFF, 0x3C, 0x3C, 0x66, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x18, - 0x18, 0x18, 0x18, 0x6B, 0x48, 0xFF, 0xFF, 0xC0, 0xF0, 0x02, 0x0C, 0x18, - 0x60, 0xC3, 0x06, 0x0C, 0x30, 0x61, 0x83, 0x0C, 0x18, 0x20, 0x00, 0x38, - 0xFB, 0xBE, 0x3C, 0x78, 0xF1, 0xE3, 0xC7, 0xDD, 0xF1, 0xC0, 0x38, 0xF3, - 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0xFD, 0xF8, 0x3C, 0xFE, 0xC7, 0x03, - 0x03, 0x06, 0x0C, 0x18, 0x70, 0xE3, 0xFF, 0xFF, 0x7C, 0xFE, 0x03, 0x03, - 0x03, 0x1E, 0x1E, 0x07, 0x03, 0x03, 0xFE, 0x7C, 0x1C, 0x38, 0xB1, 0x64, - 0xD9, 0xBF, 0xFF, 0x3E, 0x7C, 0x7E, 0x3F, 0x18, 0x0F, 0xC7, 0xF3, 0x1C, - 0x06, 0x03, 0xC3, 0xFF, 0x9F, 0x80, 0x0F, 0x3F, 0x30, 0x60, 0x60, 0xDC, - 0xFE, 0xE3, 0xC3, 0x63, 0x7E, 0x3C, 0xFF, 0xFF, 0xC3, 0x03, 0x06, 0x06, - 0x06, 0x0C, 0x0C, 0x0C, 0x18, 0x38, 0xFB, 0x1E, 0x3C, 0x6F, 0x9F, 0x63, - 0xC7, 0x8F, 0xF1, 0xC0, 0x3C, 0x7E, 0xE6, 0xC3, 0xC3, 0xE7, 0x7F, 0x3B, - 0x06, 0x0E, 0xFC, 0xF0, 0xF0, 0x0F, 0x6C, 0x00, 0x1A, 0xD2, 0x00, 0x01, - 0x83, 0x87, 0x0E, 0x0F, 0x80, 0xE0, 0x1C, 0x03, 0xFF, 0xFF, 0xC0, 0x00, - 0x0F, 0xFF, 0xFC, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0xF9, 0xE3, 0xC1, 0x80, - 0x7C, 0xFE, 0xC7, 0x03, 0x0E, 0x1C, 0x00, 0x00, 0x00, 0x30, 0x30, 0x1E, - 0x1F, 0x1C, 0xDC, 0x6C, 0x76, 0x7B, 0x6D, 0xB6, 0xDB, 0x6F, 0xF3, 0xFC, - 0x06, 0x33, 0xF8, 0x78, 0x3C, 0x07, 0xC0, 0x38, 0x05, 0x81, 0xB0, 0x36, - 0x0F, 0xE1, 0xFC, 0x71, 0xDF, 0x7F, 0xEF, 0x80, 0xFF, 0x3F, 0xE6, 0x19, - 0x86, 0x7F, 0x1F, 0xE6, 0x1D, 0x83, 0x60, 0xFF, 0xFF, 0xF0, 0x1F, 0xBF, - 0xD8, 0xF8, 0x3C, 0x06, 0x03, 0x01, 0x80, 0x61, 0xBF, 0xC7, 0xC0, 0xFE, - 0x3F, 0xE6, 0x19, 0x83, 0x60, 0xD8, 0x36, 0x0D, 0x83, 0x61, 0xBF, 0xEF, - 0xE0, 0xFF, 0xFF, 0xD8, 0x6D, 0xB7, 0xC3, 0xE1, 0xB0, 0xC3, 0x61, 0xFF, - 0xFF, 0xE0, 0xFF, 0xFF, 0xD8, 0x6D, 0xB7, 0xC3, 0xE1, 0xB0, 0xC0, 0x60, - 0x7C, 0x3E, 0x00, 0x1F, 0x9F, 0xE6, 0x1B, 0x06, 0xC0, 0x30, 0x0C, 0x7F, - 0x1F, 0xE1, 0x9F, 0xE3, 0xF0, 0xF7, 0xFB, 0xD8, 0xCC, 0x66, 0x33, 0xF9, - 0xFC, 0xC6, 0x63, 0x7B, 0xFD, 0xE0, 0xFF, 0xF3, 0x0C, 0x30, 0xC3, 0x0C, - 0x33, 0xFF, 0xC0, 0x1F, 0xC7, 0xF0, 0x30, 0x0C, 0x03, 0x00, 0xCC, 0x33, - 0x0C, 0xC7, 0x3F, 0x87, 0xC0, 0xF7, 0xBD, 0xE6, 0x61, 0xB0, 0x78, 0x1F, - 0x06, 0xE1, 0x98, 0x63, 0x3C, 0xFF, 0x3C, 0xFC, 0x7E, 0x0C, 0x06, 0x03, - 0x01, 0x80, 0xC6, 0x63, 0x31, 0xFF, 0xFF, 0xE0, 0xE0, 0xFE, 0x3D, 0xC7, - 0x3D, 0xE7, 0xBC, 0xD7, 0x9B, 0xB3, 0x76, 0x60, 0xDE, 0x3F, 0xC7, 0x80, - 0xE1, 0xFE, 0x3D, 0xE3, 0x3C, 0x66, 0xCC, 0xDD, 0x99, 0xB3, 0x1E, 0x63, - 0xDE, 0x3B, 0xC3, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x7C, 0x07, 0x80, - 0xF0, 0x1F, 0x07, 0x71, 0xC7, 0xF0, 0x7C, 0x00, 0xFE, 0x7F, 0x98, 0x6C, - 0x36, 0x1B, 0xF9, 0xF8, 0xC0, 0x60, 0x7C, 0x3E, 0x00, 0x1F, 0x07, 0xF1, - 0xC7, 0x70, 0x7C, 0x07, 0x80, 0xF0, 0x1F, 0x07, 0x71, 0xC7, 0xF0, 0x7C, - 0x0C, 0x33, 0xFE, 0x7F, 0x80, 0xFC, 0x7F, 0x18, 0xCC, 0x66, 0x73, 0xF1, - 0xF0, 0xCC, 0x63, 0x7D, 0xFE, 0x60, 0x3F, 0xBF, 0xF0, 0x78, 0x0F, 0x03, - 0xF8, 0x3F, 0x83, 0xC3, 0xFF, 0xBF, 0x80, 0xFF, 0xFF, 0xF6, 0x7B, 0x3D, - 0x98, 0xC0, 0x60, 0x30, 0x18, 0x3F, 0x1F, 0x80, 0xF1, 0xFE, 0x3D, 0x83, - 0x30, 0x66, 0x0C, 0xC1, 0x98, 0x33, 0x06, 0x60, 0xC7, 0xF0, 0x7C, 0x00, - 0xFB, 0xFF, 0x7D, 0xC3, 0x18, 0xC3, 0x18, 0x36, 0x06, 0xC0, 0x50, 0x0E, - 0x01, 0xC0, 0x10, 0x00, 0xFB, 0xFE, 0xF6, 0x0D, 0x93, 0x6E, 0xDB, 0xB7, - 0xAD, 0xEE, 0x7B, 0x8E, 0xE3, 0x18, 0xF3, 0xFC, 0xF7, 0x38, 0xFC, 0x1E, - 0x03, 0x01, 0xE0, 0xCC, 0x73, 0xBC, 0xFF, 0x3C, 0xF3, 0xFC, 0xF7, 0x38, - 0xCC, 0x1E, 0x07, 0x80, 0xC0, 0x30, 0x0C, 0x0F, 0xC3, 0xF0, 0xFE, 0xFE, - 0xC6, 0xCC, 0x18, 0x18, 0x30, 0x63, 0xC3, 0xFF, 0xFF, 0xFF, 0xCC, 0xCC, - 0xCC, 0xCC, 0xCC, 0xFF, 0x01, 0x03, 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x18, - 0x30, 0x30, 0x60, 0x60, 0xC0, 0x80, 0xFF, 0x33, 0x33, 0x33, 0x33, 0x33, - 0xFF, 0x10, 0x71, 0xE3, 0x6C, 0x70, 0x40, 0xFF, 0xFF, 0xFC, 0x88, 0x80, - 0x7E, 0x3F, 0x8F, 0xCF, 0xEE, 0x36, 0x1B, 0xFE, 0xFF, 0xE0, 0x38, 0x06, - 0x01, 0xBC, 0x7F, 0x9C, 0x76, 0x0D, 0x83, 0x71, 0xFF, 0xEE, 0xF0, 0x3F, - 0xBF, 0xF8, 0x78, 0x3C, 0x07, 0x05, 0xFE, 0x7E, 0x03, 0x80, 0xE0, 0x18, - 0xF6, 0x7F, 0xB8, 0xEC, 0x1B, 0x06, 0xE3, 0x9F, 0xF3, 0xFC, 0x3E, 0x3F, - 0xB0, 0xFF, 0xFF, 0xFE, 0x01, 0xFE, 0x7E, 0x1F, 0x3F, 0x30, 0x7E, 0x7E, - 0x30, 0x30, 0x30, 0x30, 0xFE, 0xFE, 0x3F, 0xBF, 0xF9, 0xD8, 0x6C, 0x37, - 0x39, 0xFC, 0x76, 0x03, 0x01, 0x8F, 0xC7, 0xC0, 0xE0, 0x70, 0x18, 0x0D, - 0xC7, 0xF3, 0x99, 0x8C, 0xC6, 0x63, 0x7B, 0xFD, 0xE0, 0x18, 0x18, 0x00, - 0x78, 0x78, 0x18, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x18, 0x60, 0x3F, 0xFC, - 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0F, 0xFF, 0x80, 0xE0, 0x70, 0x18, 0x0D, - 0xE6, 0xF3, 0xE1, 0xE0, 0xF8, 0x6E, 0x73, 0xF9, 0xE0, 0x78, 0x78, 0x18, - 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0xFD, 0x9F, 0xF9, 0x9B, - 0x33, 0x66, 0x6C, 0xCD, 0xBD, 0xFF, 0xBF, 0xEE, 0x7F, 0x98, 0xCC, 0x66, - 0x33, 0x1B, 0xDF, 0xEF, 0x3E, 0x3F, 0xB8, 0xF8, 0x3C, 0x1F, 0x1D, 0xFC, - 0x7C, 0xEF, 0x1F, 0xF9, 0xC3, 0xB0, 0x36, 0x06, 0xE1, 0xDF, 0xF3, 0x78, - 0x60, 0x0C, 0x03, 0xE0, 0x7C, 0x00, 0x1E, 0xEF, 0xFF, 0x87, 0x60, 0x6C, - 0x0D, 0xC3, 0x9F, 0xF0, 0xF6, 0x00, 0xC0, 0x18, 0x0F, 0x81, 0xF0, 0x77, - 0xBF, 0xCF, 0x06, 0x03, 0x01, 0x83, 0xF9, 0xFC, 0x3F, 0xFF, 0xC3, 0xFC, - 0x3F, 0xC3, 0xFF, 0xFC, 0x60, 0x60, 0x60, 0xFE, 0xFE, 0x60, 0x60, 0x60, - 0x61, 0x7F, 0x3E, 0xE7, 0x73, 0x98, 0xCC, 0x66, 0x33, 0x19, 0xFE, 0x7F, - 0xFB, 0xFF, 0x7C, 0xC6, 0x18, 0xC1, 0xB0, 0x36, 0x03, 0x80, 0x70, 0xF1, - 0xFE, 0x3D, 0xBB, 0x37, 0x63, 0xF8, 0x77, 0x0E, 0xE1, 0x8C, 0xF7, 0xFB, - 0xCD, 0x83, 0x83, 0xC3, 0xBB, 0xDF, 0xEF, 0xF3, 0xFC, 0xF6, 0x18, 0xCC, - 0x33, 0x07, 0x81, 0xE0, 0x30, 0x0C, 0x06, 0x0F, 0xC3, 0xF0, 0xFF, 0xFF, - 0x30, 0xC3, 0x0C, 0x7F, 0xFF, 0x37, 0x66, 0x66, 0xCC, 0x66, 0x66, 0x73, - 0xFF, 0xFF, 0xFF, 0xF0, 0xCE, 0x66, 0x66, 0x33, 0x66, 0x66, 0xEC, 0x70, - 0x7C, 0xF3, 0xC0, 0xC0}; - -const GFXglyph FreeMonoBold9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 3, 11, 11, 4, -10}, // 0x21 '!' - {5, 7, 5, 11, 2, -10}, // 0x22 '"' - {10, 8, 12, 11, 1, -10}, // 0x23 '#' - {22, 7, 14, 11, 2, -11}, // 0x24 '$' - {35, 7, 11, 11, 2, -10}, // 0x25 '%' - {45, 8, 10, 11, 1, -9}, // 0x26 '&' - {55, 3, 5, 11, 4, -10}, // 0x27 ''' - {57, 4, 14, 11, 5, -10}, // 0x28 '(' - {64, 4, 14, 11, 2, -10}, // 0x29 ')' - {71, 8, 7, 11, 2, -10}, // 0x2A '*' - {78, 8, 9, 11, 2, -8}, // 0x2B '+' - {87, 3, 5, 11, 3, -1}, // 0x2C ',' - {89, 9, 2, 11, 1, -5}, // 0x2D '-' - {92, 2, 2, 11, 4, -1}, // 0x2E '.' - {93, 7, 15, 11, 2, -12}, // 0x2F '/' - {107, 7, 12, 11, 2, -11}, // 0x30 '0' - {118, 7, 11, 11, 2, -10}, // 0x31 '1' - {128, 8, 12, 11, 1, -11}, // 0x32 '2' - {140, 8, 12, 11, 2, -11}, // 0x33 '3' - {152, 7, 10, 11, 2, -9}, // 0x34 '4' - {161, 9, 11, 11, 1, -10}, // 0x35 '5' - {174, 8, 12, 11, 2, -11}, // 0x36 '6' - {186, 8, 11, 11, 1, -10}, // 0x37 '7' - {197, 7, 12, 11, 2, -11}, // 0x38 '8' - {208, 8, 12, 11, 2, -11}, // 0x39 '9' - {220, 2, 8, 11, 4, -7}, // 0x3A ':' - {222, 3, 11, 11, 3, -7}, // 0x3B ';' - {227, 9, 8, 11, 1, -8}, // 0x3C '<' - {236, 9, 6, 11, 1, -7}, // 0x3D '=' - {243, 9, 8, 11, 1, -8}, // 0x3E '>' - {252, 8, 11, 11, 2, -10}, // 0x3F '?' - {263, 9, 15, 11, 1, -11}, // 0x40 '@' - {280, 11, 11, 11, 0, -10}, // 0x41 'A' - {296, 10, 11, 11, 1, -10}, // 0x42 'B' - {310, 9, 11, 11, 1, -10}, // 0x43 'C' - {323, 10, 11, 11, 0, -10}, // 0x44 'D' - {337, 9, 11, 11, 1, -10}, // 0x45 'E' - {350, 9, 11, 11, 1, -10}, // 0x46 'F' - {363, 10, 11, 11, 1, -10}, // 0x47 'G' - {377, 9, 11, 11, 1, -10}, // 0x48 'H' - {390, 6, 11, 11, 3, -10}, // 0x49 'I' - {399, 10, 11, 11, 1, -10}, // 0x4A 'J' - {413, 10, 11, 11, 1, -10}, // 0x4B 'K' - {427, 9, 11, 11, 1, -10}, // 0x4C 'L' - {440, 11, 11, 11, 0, -10}, // 0x4D 'M' - {456, 11, 11, 11, 0, -10}, // 0x4E 'N' - {472, 11, 11, 11, 0, -10}, // 0x4F 'O' - {488, 9, 11, 11, 1, -10}, // 0x50 'P' - {501, 11, 14, 11, 0, -10}, // 0x51 'Q' - {521, 9, 11, 11, 1, -10}, // 0x52 'R' - {534, 9, 11, 11, 1, -10}, // 0x53 'S' - {547, 9, 11, 11, 1, -10}, // 0x54 'T' - {560, 11, 11, 11, 0, -10}, // 0x55 'U' - {576, 11, 11, 11, 0, -10}, // 0x56 'V' - {592, 10, 11, 11, 0, -10}, // 0x57 'W' - {606, 10, 11, 11, 0, -10}, // 0x58 'X' - {620, 10, 11, 11, 0, -10}, // 0x59 'Y' - {634, 8, 11, 11, 2, -10}, // 0x5A 'Z' - {645, 4, 14, 11, 5, -10}, // 0x5B '[' - {652, 7, 15, 11, 2, -12}, // 0x5C '\' - {666, 4, 14, 11, 2, -10}, // 0x5D ']' - {673, 7, 6, 11, 2, -11}, // 0x5E '^' - {679, 11, 2, 11, 0, 3}, // 0x5F '_' - {682, 3, 3, 11, 3, -11}, // 0x60 '`' - {684, 9, 8, 11, 1, -7}, // 0x61 'a' - {693, 10, 11, 11, 0, -10}, // 0x62 'b' - {707, 9, 8, 11, 1, -7}, // 0x63 'c' - {716, 10, 11, 11, 1, -10}, // 0x64 'd' - {730, 9, 8, 11, 1, -7}, // 0x65 'e' - {739, 8, 11, 11, 2, -10}, // 0x66 'f' - {750, 9, 12, 11, 1, -7}, // 0x67 'g' - {764, 9, 11, 11, 1, -10}, // 0x68 'h' - {777, 8, 11, 11, 2, -10}, // 0x69 'i' - {788, 6, 15, 11, 2, -10}, // 0x6A 'j' - {800, 9, 11, 11, 1, -10}, // 0x6B 'k' - {813, 8, 11, 11, 2, -10}, // 0x6C 'l' - {824, 11, 8, 11, 0, -7}, // 0x6D 'm' - {835, 9, 8, 11, 1, -7}, // 0x6E 'n' - {844, 9, 8, 11, 1, -7}, // 0x6F 'o' - {853, 11, 12, 11, 0, -7}, // 0x70 'p' - {870, 11, 12, 11, 0, -7}, // 0x71 'q' - {887, 9, 8, 11, 1, -7}, // 0x72 'r' - {896, 8, 8, 11, 2, -7}, // 0x73 's' - {904, 8, 11, 11, 1, -10}, // 0x74 't' - {915, 9, 8, 11, 1, -7}, // 0x75 'u' - {924, 11, 8, 11, 0, -7}, // 0x76 'v' - {935, 11, 8, 11, 0, -7}, // 0x77 'w' - {946, 9, 8, 11, 1, -7}, // 0x78 'x' - {955, 10, 12, 11, 0, -7}, // 0x79 'y' - {970, 7, 8, 11, 2, -7}, // 0x7A 'z' - {977, 4, 14, 11, 3, -10}, // 0x7B '{' - {984, 2, 14, 11, 5, -10}, // 0x7C '|' - {988, 4, 14, 11, 4, -10}, // 0x7D '}' - {995, 9, 4, 11, 1, -6}}; // 0x7E '~' - -const GFXfont FreeMonoBold9pt7b PROGMEM = {(uint8_t *)FreeMonoBold9pt7bBitmaps, - (GFXglyph *)FreeMonoBold9pt7bGlyphs, - 0x20, 0x7E, 18}; - -// Approx. 1672 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h deleted file mode 100644 index 095fdd3..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h +++ /dev/null @@ -1,271 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique12pt7bBitmaps[] PROGMEM = { - 0x1C, 0xF3, 0xCE, 0x38, 0xE7, 0x1C, 0x61, 0x86, 0x00, 0x63, 0x8C, 0x00, - 0xE7, 0xE7, 0xE6, 0xC6, 0xC6, 0xC4, 0x84, 0x03, 0x30, 0x19, 0x81, 0xDC, - 0x0C, 0xE0, 0x66, 0x1F, 0xFC, 0xFF, 0xE1, 0x98, 0x0C, 0xC0, 0xEE, 0x06, - 0x70, 0xFF, 0xCF, 0xFE, 0x1D, 0xC0, 0xCC, 0x06, 0x60, 0x77, 0x03, 0x30, - 0x00, 0x01, 0x00, 0x70, 0x0C, 0x07, 0xF1, 0xFE, 0x71, 0xCC, 0x11, 0x80, - 0x3F, 0x03, 0xF0, 0x0F, 0x20, 0x6E, 0x0D, 0xC3, 0x3F, 0xE7, 0xF8, 0x1C, - 0x03, 0x00, 0x60, 0x0C, 0x00, 0x0E, 0x03, 0xE0, 0xC4, 0x10, 0x82, 0x30, - 0x7C, 0x07, 0x78, 0x7C, 0x7F, 0x19, 0xF0, 0x62, 0x08, 0x41, 0x18, 0x3E, - 0x03, 0x80, 0x07, 0xC1, 0xF8, 0x62, 0x0C, 0x01, 0x80, 0x38, 0x0F, 0x03, - 0xF7, 0x6F, 0xD8, 0xF3, 0x1E, 0x7F, 0xE7, 0xF8, 0xFF, 0x6D, 0x20, 0x06, - 0x1C, 0x70, 0xC3, 0x06, 0x18, 0x30, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, - 0x70, 0x60, 0xC1, 0x00, 0x0C, 0x18, 0x38, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x30, 0x61, 0xC3, 0x0E, 0x38, 0x61, 0xC2, 0x00, 0x06, 0x00, 0xC0, - 0x18, 0x3F, 0x7F, 0xFE, 0xFF, 0x07, 0x81, 0xF8, 0x77, 0x0C, 0x60, 0x03, - 0x00, 0x70, 0x07, 0x00, 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0xE0, 0x0C, - 0x00, 0xC0, 0x0C, 0x01, 0xC0, 0x18, 0x00, 0x1C, 0xE3, 0x1C, 0x63, 0x08, - 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x7F, 0x00, 0x00, 0x08, 0x00, 0x70, 0x01, - 0x80, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x0C, 0x00, 0x70, 0x03, 0x80, 0x0C, - 0x00, 0x70, 0x03, 0x80, 0x0C, 0x00, 0x70, 0x03, 0x80, 0x0C, 0x00, 0x70, - 0x03, 0x80, 0x0C, 0x00, 0x20, 0x00, 0x07, 0x83, 0xF8, 0xE3, 0x98, 0x37, - 0x06, 0xC0, 0xD8, 0x1B, 0x03, 0xE0, 0xF8, 0x1B, 0x03, 0x60, 0xEE, 0x38, - 0xFE, 0x0F, 0x00, 0x03, 0xC1, 0xF0, 0x7E, 0x0C, 0xC0, 0x38, 0x07, 0x00, - 0xC0, 0x18, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, 0x61, 0xFF, 0xFF, 0xF0, - 0x03, 0xE0, 0x3F, 0x83, 0x8E, 0x38, 0x31, 0x81, 0x80, 0x18, 0x01, 0xC0, - 0x1C, 0x01, 0xC0, 0x38, 0x03, 0x80, 0x38, 0x47, 0x87, 0x3F, 0xF3, 0xFF, - 0x80, 0x07, 0xC1, 0xFF, 0x18, 0x70, 0x03, 0x00, 0x30, 0x06, 0x07, 0xC0, - 0x7C, 0x00, 0xE0, 0x06, 0x00, 0x60, 0x06, 0xC1, 0xCF, 0xF8, 0x7E, 0x00, - 0x01, 0xE0, 0x3C, 0x0F, 0x03, 0x60, 0xCC, 0x3B, 0x8E, 0x63, 0x8C, 0x61, - 0x9F, 0xFB, 0xFF, 0x01, 0x81, 0xF8, 0x3F, 0x00, 0x0F, 0xF1, 0xFE, 0x18, - 0x01, 0x80, 0x18, 0x03, 0xF8, 0x3F, 0xC3, 0x8E, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x0C, 0xC1, 0xCF, 0xF8, 0x7E, 0x00, 0x03, 0xE1, 0xFC, 0x70, 0x1C, - 0x03, 0x00, 0xC0, 0x1B, 0xC7, 0xFC, 0xF3, 0x98, 0x33, 0x06, 0x60, 0xCE, - 0x30, 0xFC, 0x0F, 0x00, 0xFF, 0xFF, 0xFB, 0x07, 0x60, 0xC0, 0x38, 0x06, - 0x01, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x70, 0x1C, 0x03, 0x80, 0x60, 0x08, - 0x00, 0x07, 0x83, 0xF8, 0xE3, 0xB0, 0x36, 0x06, 0xC0, 0xDC, 0x31, 0xFC, - 0x3F, 0x8C, 0x3B, 0x03, 0x60, 0x6C, 0x39, 0xFE, 0x1F, 0x00, 0x07, 0x81, - 0xF8, 0x63, 0x98, 0x33, 0x06, 0x60, 0xCE, 0x79, 0xFF, 0x1E, 0xC0, 0x18, - 0x06, 0x01, 0xC0, 0x71, 0xFC, 0x3E, 0x00, 0x19, 0xCC, 0x00, 0x00, 0x00, - 0x67, 0x30, 0x06, 0x1C, 0x30, 0x00, 0x00, 0x00, 0x00, 0x38, 0x71, 0xC3, - 0x0E, 0x18, 0x20, 0x00, 0x00, 0x18, 0x03, 0xC0, 0x7C, 0x1F, 0x03, 0xE0, - 0x3E, 0x00, 0x7C, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0x80, 0x08, 0x7F, 0xFB, - 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFB, 0xFF, 0xC0, 0x30, 0x01, - 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0x7C, 0x1F, 0x03, 0xE0, 0x7C, - 0x07, 0x80, 0x20, 0x00, 0x3E, 0x7F, 0xB0, 0xF8, 0x30, 0x18, 0x1C, 0x1C, - 0x3C, 0x38, 0x18, 0x00, 0x06, 0x07, 0x03, 0x00, 0x03, 0xC0, 0x7E, 0x0C, - 0x71, 0x83, 0x30, 0x33, 0x0F, 0x33, 0xE6, 0x76, 0x6C, 0x66, 0xC6, 0x6C, - 0x6C, 0xFC, 0xC7, 0xEC, 0x00, 0xC0, 0x0C, 0x00, 0xE3, 0x07, 0xF0, 0x3C, - 0x00, 0x07, 0xF0, 0x1F, 0xE0, 0x07, 0xC0, 0x1F, 0x80, 0x3B, 0x00, 0xE7, - 0x01, 0x8E, 0x07, 0x1C, 0x1F, 0xF8, 0x3F, 0xF0, 0xE0, 0x71, 0x80, 0xEF, - 0xC7, 0xFF, 0x8F, 0xC0, 0x3F, 0xF1, 0xFF, 0xC3, 0x06, 0x38, 0x31, 0xC1, - 0x8C, 0x18, 0x7F, 0xC3, 0xFE, 0x38, 0x39, 0xC0, 0xCC, 0x06, 0x60, 0x6F, - 0xFF, 0x7F, 0xE0, 0x03, 0xEC, 0x3F, 0xF1, 0xC3, 0x8C, 0x06, 0x60, 0x19, - 0x80, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x03, 0x3C, 0x1C, - 0x7F, 0xE0, 0x7E, 0x00, 0x3F, 0xE1, 0xFF, 0x87, 0x0C, 0x30, 0x31, 0x81, - 0x8C, 0x0C, 0xE0, 0x67, 0x03, 0x30, 0x31, 0x81, 0x8C, 0x0C, 0xE1, 0xCF, - 0xFC, 0x7F, 0x80, 0x1F, 0xFE, 0x3F, 0xFC, 0x38, 0x38, 0x70, 0x70, 0xCC, - 0xC1, 0x98, 0x03, 0xF0, 0x0F, 0xE0, 0x1D, 0x80, 0x31, 0x18, 0x60, 0x70, - 0xC0, 0xE7, 0xFF, 0x9F, 0xFF, 0x00, 0x1F, 0xFF, 0x1F, 0xFE, 0x0E, 0x06, - 0x0C, 0x0E, 0x0C, 0xC4, 0x0C, 0xC0, 0x1F, 0xC0, 0x1F, 0xC0, 0x19, 0xC0, - 0x19, 0x80, 0x18, 0x00, 0x38, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x07, 0xEC, - 0x7F, 0xF3, 0x83, 0x9C, 0x06, 0x60, 0x19, 0x80, 0x0C, 0x00, 0x30, 0xFE, - 0xC3, 0xFB, 0x01, 0xCC, 0x07, 0x3C, 0x38, 0x7F, 0xE0, 0x7E, 0x00, 0x0F, - 0xBF, 0x1F, 0xBE, 0x0E, 0x0C, 0x0C, 0x0C, 0x0C, 0x1C, 0x0C, 0x1C, 0x1F, - 0xF8, 0x1F, 0xF8, 0x18, 0x18, 0x18, 0x38, 0x18, 0x38, 0x38, 0x30, 0x7C, - 0xFC, 0xFC, 0xF8, 0x3F, 0xF3, 0xFF, 0x03, 0x00, 0x70, 0x07, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xC0, 0xFF, 0xCF, 0xFC, - 0x03, 0xFF, 0x03, 0xFF, 0x00, 0x38, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, - 0x00, 0x70, 0x20, 0x70, 0x60, 0x60, 0x60, 0x60, 0x60, 0xE0, 0xE1, 0xC0, - 0xFF, 0x80, 0x3F, 0x00, 0x1F, 0x9F, 0x1F, 0x9E, 0x0E, 0x38, 0x0C, 0x70, - 0x0C, 0xE0, 0x0F, 0xC0, 0x1F, 0xC0, 0x1F, 0xE0, 0x1C, 0xE0, 0x18, 0x60, - 0x18, 0x70, 0x38, 0x70, 0xFE, 0x3C, 0xFC, 0x3C, 0x3F, 0xC1, 0xFE, 0x01, - 0x80, 0x1C, 0x00, 0xE0, 0x06, 0x00, 0x30, 0x01, 0x80, 0x1C, 0x18, 0xE0, - 0xC6, 0x06, 0x30, 0x7F, 0xFF, 0xFF, 0xF8, 0x1E, 0x07, 0x87, 0x81, 0xE0, - 0xF0, 0xF0, 0x7C, 0x7C, 0x1F, 0x1F, 0x06, 0xCF, 0x81, 0xBF, 0x60, 0xEF, - 0x98, 0x3B, 0xEE, 0x0C, 0x73, 0x83, 0x1C, 0xC0, 0xC0, 0x30, 0xFC, 0x7E, - 0x3F, 0x1F, 0x80, 0x3C, 0x3F, 0x3E, 0x3F, 0x1E, 0x0C, 0x1F, 0x1C, 0x1F, - 0x1C, 0x1B, 0x98, 0x3B, 0x98, 0x3B, 0x98, 0x31, 0xF8, 0x31, 0xF8, 0x30, - 0xF0, 0x70, 0xF0, 0xFC, 0x70, 0xF8, 0x70, 0x03, 0xE0, 0x3F, 0xE1, 0xC3, - 0x8C, 0x07, 0x60, 0x0D, 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1B, 0x00, - 0x6E, 0x03, 0x1C, 0x38, 0x7F, 0xC0, 0x7C, 0x00, 0x3F, 0xE1, 0xFF, 0x83, - 0x0E, 0x38, 0x31, 0xC1, 0x8C, 0x0C, 0x60, 0xC3, 0xFC, 0x3F, 0xC1, 0xC0, - 0x0C, 0x00, 0x60, 0x0F, 0xF0, 0x7F, 0x80, 0x03, 0xE0, 0x3F, 0xE1, 0xC3, - 0x8C, 0x07, 0x60, 0x0D, 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1B, 0x00, - 0x6E, 0x03, 0x1C, 0x38, 0x7F, 0xC0, 0xFC, 0x03, 0x02, 0x1F, 0xFC, 0xFF, - 0xE0, 0x1F, 0xF0, 0x3F, 0xF0, 0x38, 0x70, 0x60, 0x60, 0xC0, 0xC1, 0x87, - 0x07, 0xFC, 0x0F, 0xF0, 0x18, 0xF0, 0x30, 0xE0, 0x60, 0xC1, 0xC1, 0xCF, - 0xE1, 0xFF, 0xC3, 0xC0, 0x0F, 0xB1, 0xFF, 0x30, 0xE6, 0x06, 0x60, 0x67, - 0x80, 0x7F, 0x01, 0xFC, 0x01, 0xC4, 0x0C, 0xC0, 0xCE, 0x18, 0xFF, 0x8B, - 0xE0, 0x7F, 0xFB, 0xFF, 0xD9, 0xCF, 0xCE, 0x7C, 0x63, 0x63, 0x18, 0x18, - 0x01, 0xC0, 0x0E, 0x00, 0x60, 0x03, 0x00, 0x18, 0x0F, 0xF8, 0x7F, 0xC0, - 0x7E, 0xFF, 0xF3, 0xF3, 0x03, 0x1C, 0x0C, 0x60, 0x31, 0x81, 0xC6, 0x06, - 0x38, 0x18, 0xE0, 0x63, 0x03, 0x8C, 0x0C, 0x30, 0x70, 0x7F, 0x80, 0xF8, - 0x00, 0xFC, 0x7F, 0xF8, 0xFD, 0xC0, 0x61, 0x81, 0xC3, 0x87, 0x07, 0x0C, - 0x0E, 0x38, 0x0C, 0x60, 0x19, 0xC0, 0x3F, 0x00, 0x7C, 0x00, 0xF8, 0x00, - 0xE0, 0x01, 0x80, 0x00, 0x7E, 0x7E, 0xFC, 0xFD, 0xC0, 0x73, 0x9C, 0xE7, - 0x79, 0x8E, 0xF7, 0x1B, 0xEE, 0x36, 0xD8, 0x7D, 0xF0, 0xF3, 0xE1, 0xE7, - 0x83, 0x8F, 0x07, 0x1E, 0x1C, 0x38, 0x00, 0x1F, 0x1F, 0x1F, 0x1F, 0x0E, - 0x1C, 0x07, 0x38, 0x07, 0x70, 0x03, 0xE0, 0x03, 0xC0, 0x03, 0xC0, 0x07, - 0xE0, 0x0E, 0xE0, 0x1C, 0x70, 0x38, 0x70, 0xFC, 0xFC, 0xFC, 0xFC, 0xF8, - 0xFF, 0xC7, 0xCC, 0x38, 0x73, 0x83, 0x9C, 0x0F, 0xC0, 0x7C, 0x01, 0xC0, - 0x0C, 0x00, 0x60, 0x03, 0x00, 0x38, 0x0F, 0xF8, 0x7F, 0x80, 0x0F, 0xF8, - 0x7F, 0xE1, 0xC7, 0x86, 0x1C, 0x18, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, - 0x0E, 0x00, 0x70, 0xC3, 0x83, 0x1C, 0x1C, 0x7F, 0xF3, 0xFF, 0x80, 0x0F, - 0x87, 0xC3, 0x03, 0x81, 0xC0, 0xC0, 0x60, 0x30, 0x38, 0x1C, 0x0C, 0x06, - 0x03, 0x03, 0x81, 0xC0, 0xC0, 0x60, 0x3E, 0x3F, 0x00, 0x41, 0xC3, 0x83, - 0x07, 0x0E, 0x1C, 0x18, 0x38, 0x70, 0xE0, 0xC1, 0xC3, 0x83, 0x06, 0x0E, - 0x1C, 0x18, 0x20, 0x1F, 0x0F, 0x80, 0xC0, 0xE0, 0x70, 0x30, 0x18, 0x0C, - 0x0E, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xE0, 0x70, 0x30, 0x18, 0x7C, 0x3E, - 0x00, 0x02, 0x01, 0x80, 0xF0, 0x7E, 0x3B, 0x9C, 0x7E, 0x1F, 0x03, 0xFF, - 0xFF, 0xFF, 0xFC, 0xCE, 0x73, 0x1F, 0xC3, 0xFE, 0x00, 0x60, 0x06, 0x0F, - 0xE3, 0xFE, 0x70, 0xCC, 0x0C, 0xC3, 0xCF, 0xFF, 0x7F, 0xF0, 0x1E, 0x00, - 0x3C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xDF, 0x81, 0xFF, 0x83, 0xC3, 0x8F, - 0x03, 0x1C, 0x06, 0x38, 0x0C, 0x70, 0x18, 0xE0, 0x63, 0xE1, 0x9F, 0xFE, - 0x3D, 0xF8, 0x00, 0x0F, 0xF3, 0xFF, 0x30, 0x76, 0x07, 0xE0, 0x6C, 0x00, - 0xC0, 0x0C, 0x00, 0xE0, 0x67, 0xFE, 0x3F, 0x80, 0x00, 0x3C, 0x00, 0xF0, - 0x01, 0xC0, 0x06, 0x07, 0xD8, 0x7F, 0xE3, 0x0F, 0x98, 0x1E, 0x60, 0x73, - 0x01, 0xCC, 0x07, 0x30, 0x3C, 0xE1, 0xF1, 0xFF, 0xE3, 0xF7, 0x80, 0x0F, - 0xC1, 0xFE, 0x78, 0x76, 0x03, 0xFF, 0xFF, 0xFF, 0xC0, 0x0C, 0x00, 0xE0, - 0xE7, 0xFE, 0x1F, 0x80, 0x00, 0xFC, 0x07, 0xF8, 0x0C, 0x00, 0x38, 0x01, - 0xFF, 0x07, 0xFE, 0x01, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x18, 0x00, 0x30, - 0x00, 0x60, 0x01, 0xC0, 0x1F, 0xF8, 0x3F, 0xF0, 0x00, 0x0F, 0xBC, 0x7F, - 0xF3, 0x0F, 0x18, 0x1C, 0xC0, 0x73, 0x01, 0x8C, 0x0E, 0x30, 0x38, 0xE3, - 0xE1, 0xFF, 0x83, 0xEC, 0x00, 0x30, 0x01, 0xC0, 0x06, 0x07, 0xF0, 0x1F, - 0x80, 0x1E, 0x01, 0xF0, 0x03, 0x00, 0x18, 0x00, 0xDE, 0x0F, 0xF8, 0x78, - 0xC3, 0x86, 0x18, 0x30, 0xC1, 0x8E, 0x1C, 0x70, 0xE3, 0x06, 0x7E, 0xFF, - 0xE7, 0xE0, 0x03, 0x80, 0x70, 0x00, 0x0F, 0xC1, 0xF0, 0x06, 0x00, 0xC0, - 0x38, 0x07, 0x00, 0xC0, 0x18, 0x03, 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x70, - 0x07, 0x00, 0x00, 0xFF, 0x1F, 0xF0, 0x07, 0x00, 0x70, 0x06, 0x00, 0x60, - 0x06, 0x00, 0xE0, 0x0E, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x1C, 0x03, 0x87, - 0xF0, 0xFE, 0x00, 0x1E, 0x00, 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0C, 0xFC, - 0x33, 0xE0, 0xDE, 0x07, 0xE0, 0x1F, 0x00, 0x7C, 0x01, 0xF8, 0x06, 0xF0, - 0x39, 0xC3, 0xE7, 0xEF, 0x1F, 0x80, 0x0F, 0x81, 0xF0, 0x06, 0x01, 0xC0, - 0x38, 0x06, 0x00, 0xC0, 0x18, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, 0x61, - 0xFF, 0xFF, 0xF8, 0x3F, 0xBC, 0x7F, 0xFC, 0xF3, 0x98, 0xC6, 0x33, 0x9C, - 0xE7, 0x39, 0xCC, 0x63, 0x18, 0xC6, 0x31, 0x8D, 0xF7, 0xBF, 0xEF, 0x78, - 0x3D, 0xE1, 0xFF, 0x8F, 0x8C, 0x38, 0x61, 0x83, 0x0C, 0x18, 0xE1, 0xC7, - 0x0E, 0x30, 0x67, 0xEF, 0xFE, 0x7E, 0x07, 0xC1, 0xFE, 0x38, 0x76, 0x03, - 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x06, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x1E, - 0xFC, 0x1F, 0xFE, 0x0F, 0x87, 0x0F, 0x03, 0x0E, 0x03, 0x0E, 0x03, 0x0E, - 0x07, 0x0E, 0x06, 0x1F, 0x0C, 0x1F, 0xF8, 0x19, 0xF0, 0x18, 0x00, 0x18, - 0x00, 0x38, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0x0F, 0xDE, 0x3F, 0xFC, 0xC3, - 0xE3, 0x03, 0x84, 0x07, 0x18, 0x0E, 0x30, 0x1C, 0x60, 0x78, 0xE1, 0xE0, - 0xFF, 0xC0, 0xF9, 0x80, 0x03, 0x00, 0x0E, 0x00, 0x1C, 0x01, 0xFC, 0x03, - 0xF8, 0x1E, 0x78, 0x7F, 0xF0, 0x7C, 0xC3, 0xC0, 0x0E, 0x00, 0x30, 0x00, - 0xC0, 0x03, 0x00, 0x1C, 0x03, 0xFF, 0x0F, 0xFC, 0x00, 0x07, 0xF1, 0xFF, - 0x30, 0x73, 0x86, 0x3F, 0x81, 0xFE, 0x03, 0xE6, 0x06, 0xE0, 0xEF, 0xFC, - 0xFF, 0x00, 0x0C, 0x07, 0x01, 0x83, 0xFF, 0xFF, 0xCE, 0x03, 0x00, 0xC0, - 0x30, 0x1C, 0x07, 0x01, 0x83, 0x7F, 0xCF, 0xC0, 0xF0, 0xFF, 0x1F, 0x60, - 0x76, 0x07, 0x60, 0x76, 0x06, 0x60, 0x66, 0x0E, 0x61, 0xE7, 0xFF, 0x3E, - 0xF0, 0x7E, 0x7E, 0xFC, 0xFC, 0xE0, 0xC0, 0xC3, 0x81, 0x86, 0x03, 0x98, - 0x07, 0x70, 0x06, 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x38, 0x00, 0xF8, 0x7F, - 0xE3, 0xE6, 0x63, 0x1B, 0xDC, 0x6F, 0x61, 0xFF, 0x87, 0xFC, 0x1E, 0xF0, - 0x73, 0x81, 0xCE, 0x06, 0x38, 0x00, 0x3E, 0x7C, 0xF9, 0xF1, 0xE7, 0x03, - 0xF8, 0x07, 0xC0, 0x1F, 0x01, 0xFC, 0x0F, 0x38, 0x78, 0xFB, 0xF7, 0xEF, - 0x9F, 0x80, 0x1F, 0x1F, 0x3E, 0x1F, 0x1C, 0x1C, 0x0C, 0x18, 0x0E, 0x38, - 0x0E, 0x70, 0x06, 0x60, 0x07, 0xE0, 0x07, 0xC0, 0x07, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x07, 0x00, 0x0E, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x1F, 0xF1, - 0xFF, 0x38, 0xE3, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC6, 0x38, 0x67, - 0xFE, 0x7F, 0xE0, 0x01, 0xC0, 0xF0, 0x70, 0x18, 0x06, 0x03, 0x80, 0xE0, - 0x30, 0x1C, 0x3E, 0x0F, 0x00, 0x60, 0x18, 0x06, 0x03, 0x80, 0xC0, 0x30, - 0x0F, 0x01, 0xC0, 0x0C, 0x71, 0xC7, 0x18, 0x63, 0x8E, 0x30, 0xC3, 0x1C, - 0x71, 0x86, 0x38, 0xE3, 0x04, 0x00, 0x0E, 0x07, 0x80, 0xC0, 0x60, 0x70, - 0x30, 0x18, 0x0C, 0x06, 0x01, 0xC1, 0xE1, 0xC0, 0xC0, 0xE0, 0x70, 0x30, - 0x38, 0x78, 0x38, 0x00, 0x3C, 0x27, 0xE6, 0xEF, 0xCC, 0x38}; - -const GFXglyph FreeMonoBoldOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 6, 15, 14, 6, -14}, // 0x21 '!' - {12, 8, 7, 14, 6, -13}, // 0x22 '"' - {19, 13, 18, 14, 2, -15}, // 0x23 '#' - {49, 11, 20, 14, 3, -16}, // 0x24 '$' - {77, 11, 15, 14, 3, -14}, // 0x25 '%' - {98, 11, 13, 14, 2, -12}, // 0x26 '&' - {116, 3, 7, 14, 8, -13}, // 0x27 ''' - {119, 7, 19, 14, 7, -14}, // 0x28 '(' - {136, 7, 19, 14, 2, -14}, // 0x29 ')' - {153, 11, 10, 14, 4, -14}, // 0x2A '*' - {167, 12, 13, 14, 3, -12}, // 0x2B '+' - {187, 6, 7, 14, 3, -2}, // 0x2C ',' - {193, 13, 2, 14, 2, -7}, // 0x2D '-' - {197, 3, 3, 14, 6, -2}, // 0x2E '.' - {199, 14, 20, 14, 2, -16}, // 0x2F '/' - {234, 11, 15, 14, 3, -14}, // 0x30 '0' - {255, 11, 15, 14, 2, -14}, // 0x31 '1' - {276, 13, 15, 14, 1, -14}, // 0x32 '2' - {301, 12, 15, 14, 2, -14}, // 0x33 '3' - {324, 11, 14, 14, 3, -13}, // 0x34 '4' - {344, 12, 15, 14, 2, -14}, // 0x35 '5' - {367, 11, 15, 14, 4, -14}, // 0x36 '6' - {388, 11, 15, 14, 4, -14}, // 0x37 '7' - {409, 11, 15, 14, 3, -14}, // 0x38 '8' - {430, 11, 15, 14, 3, -14}, // 0x39 '9' - {451, 5, 11, 14, 5, -10}, // 0x3A ':' - {458, 7, 15, 14, 3, -10}, // 0x3B ';' - {472, 13, 11, 14, 2, -11}, // 0x3C '<' - {490, 13, 7, 14, 2, -9}, // 0x3D '=' - {502, 13, 11, 14, 2, -11}, // 0x3E '>' - {520, 9, 14, 14, 5, -13}, // 0x3F '?' - {536, 12, 19, 14, 2, -14}, // 0x40 '@' - {565, 15, 14, 14, 0, -13}, // 0x41 'A' - {592, 13, 14, 14, 1, -13}, // 0x42 'B' - {615, 14, 14, 14, 2, -13}, // 0x43 'C' - {640, 13, 14, 14, 1, -13}, // 0x44 'D' - {663, 15, 14, 14, 0, -13}, // 0x45 'E' - {690, 16, 14, 14, 0, -13}, // 0x46 'F' - {718, 14, 14, 14, 1, -13}, // 0x47 'G' - {743, 16, 14, 14, 0, -13}, // 0x48 'H' - {771, 12, 14, 14, 2, -13}, // 0x49 'I' - {792, 16, 14, 14, 0, -13}, // 0x4A 'J' - {820, 16, 14, 14, 0, -13}, // 0x4B 'K' - {848, 13, 14, 14, 1, -13}, // 0x4C 'L' - {871, 18, 14, 14, 0, -13}, // 0x4D 'M' - {903, 16, 14, 14, 1, -13}, // 0x4E 'N' - {931, 14, 14, 14, 1, -13}, // 0x4F 'O' - {956, 13, 14, 14, 1, -13}, // 0x50 'P' - {979, 14, 17, 14, 1, -13}, // 0x51 'Q' - {1009, 15, 14, 14, 0, -13}, // 0x52 'R' - {1036, 12, 14, 14, 3, -13}, // 0x53 'S' - {1057, 13, 14, 14, 2, -13}, // 0x54 'T' - {1080, 14, 14, 14, 2, -13}, // 0x55 'U' - {1105, 15, 14, 14, 1, -13}, // 0x56 'V' - {1132, 15, 14, 14, 1, -13}, // 0x57 'W' - {1159, 16, 14, 14, 0, -13}, // 0x58 'X' - {1187, 13, 14, 14, 2, -13}, // 0x59 'Y' - {1210, 14, 14, 14, 1, -13}, // 0x5A 'Z' - {1235, 9, 19, 14, 5, -14}, // 0x5B '[' - {1257, 7, 20, 14, 5, -16}, // 0x5C '\' - {1275, 9, 19, 14, 3, -14}, // 0x5D ']' - {1297, 10, 8, 14, 4, -15}, // 0x5E '^' - {1307, 15, 2, 14, -1, 4}, // 0x5F '_' - {1311, 4, 4, 14, 7, -15}, // 0x60 '`' - {1313, 12, 11, 14, 2, -10}, // 0x61 'a' - {1330, 15, 15, 14, -1, -14}, // 0x62 'b' - {1359, 12, 11, 14, 2, -10}, // 0x63 'c' - {1376, 14, 15, 14, 2, -14}, // 0x64 'd' - {1403, 12, 11, 14, 2, -10}, // 0x65 'e' - {1420, 15, 15, 14, 2, -14}, // 0x66 'f' - {1449, 14, 16, 14, 2, -10}, // 0x67 'g' - {1477, 13, 15, 14, 1, -14}, // 0x68 'h' - {1502, 11, 14, 14, 2, -13}, // 0x69 'i' - {1522, 12, 19, 14, 1, -13}, // 0x6A 'j' - {1551, 14, 15, 14, 1, -14}, // 0x6B 'k' - {1578, 11, 15, 14, 2, -14}, // 0x6C 'l' - {1599, 15, 11, 14, 0, -10}, // 0x6D 'm' - {1620, 13, 11, 14, 1, -10}, // 0x6E 'n' - {1638, 12, 11, 14, 2, -10}, // 0x6F 'o' - {1655, 16, 16, 14, -1, -10}, // 0x70 'p' - {1687, 15, 16, 14, 1, -10}, // 0x71 'q' - {1717, 14, 11, 14, 1, -10}, // 0x72 'r' - {1737, 12, 11, 14, 2, -10}, // 0x73 's' - {1754, 10, 14, 14, 2, -13}, // 0x74 't' - {1772, 12, 11, 14, 2, -10}, // 0x75 'u' - {1789, 15, 11, 14, 1, -10}, // 0x76 'v' - {1810, 14, 11, 14, 2, -10}, // 0x77 'w' - {1830, 14, 11, 14, 1, -10}, // 0x78 'x' - {1850, 16, 16, 14, 0, -10}, // 0x79 'y' - {1882, 12, 11, 14, 2, -10}, // 0x7A 'z' - {1899, 10, 19, 14, 4, -14}, // 0x7B '{' - {1923, 6, 19, 14, 5, -14}, // 0x7C '|' - {1938, 9, 19, 14, 3, -14}, // 0x7D '}' - {1960, 12, 4, 14, 3, -7}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique12pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique12pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique12pt7bGlyphs, 0x20, 0x7E, 24}; - -// Approx. 2638 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h deleted file mode 100644 index 0400f25..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h +++ /dev/null @@ -1,462 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique18pt7bBitmaps[] PROGMEM = { - 0x0F, 0x07, 0xC7, 0xE3, 0xF1, 0xF0, 0xF8, 0xFC, 0x7C, 0x3E, 0x1F, 0x0F, - 0x07, 0x87, 0xC3, 0xC1, 0xE0, 0x60, 0x00, 0x38, 0x3E, 0x1F, 0x0F, 0x83, - 0x80, 0xF8, 0xFF, 0x0E, 0xF1, 0xEF, 0x1E, 0xE1, 0xCE, 0x1C, 0xC1, 0xCC, - 0x18, 0xC1, 0x88, 0x18, 0x00, 0xE3, 0x80, 0x79, 0xE0, 0x1C, 0x70, 0x07, - 0x1C, 0x03, 0xCF, 0x00, 0xF3, 0xC0, 0x38, 0xE0, 0x7F, 0xFF, 0x3F, 0xFF, - 0xCF, 0xFF, 0xF3, 0xFF, 0xF8, 0x3C, 0xF0, 0x0F, 0x3C, 0x03, 0x8E, 0x0F, - 0xFF, 0xE3, 0xFF, 0xFC, 0xFF, 0xFF, 0x3F, 0xFF, 0x83, 0xCF, 0x00, 0xF3, - 0xC0, 0x38, 0xE0, 0x1E, 0x78, 0x07, 0x9E, 0x01, 0xC7, 0x00, 0x71, 0xC0, - 0x00, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x07, 0x80, 0x03, 0xF0, 0x03, 0xFF, - 0x81, 0xFF, 0xF0, 0xFF, 0xF8, 0x3C, 0x1E, 0x1E, 0x07, 0x87, 0x80, 0x01, - 0xF0, 0x00, 0x7F, 0xC0, 0x0F, 0xFC, 0x01, 0xFF, 0x80, 0x07, 0xF0, 0x00, - 0x3C, 0x70, 0x0F, 0x3C, 0x03, 0xCF, 0x83, 0xE3, 0xFF, 0xF8, 0xFF, 0xFC, - 0x3F, 0xFE, 0x0C, 0xFE, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, - 0xF0, 0x00, 0x18, 0x00, 0x03, 0xC0, 0x0F, 0xE0, 0x1C, 0x70, 0x30, 0x30, - 0x30, 0x30, 0x30, 0x70, 0x38, 0xE0, 0x1F, 0xC3, 0x0F, 0x1F, 0x01, 0xFC, - 0x0F, 0xE0, 0x7F, 0x00, 0xF8, 0xF0, 0x83, 0xF8, 0x07, 0x1C, 0x0E, 0x0C, - 0x0C, 0x0C, 0x0C, 0x1C, 0x0E, 0x38, 0x07, 0xF0, 0x03, 0xC0, 0x00, 0x7A, - 0x01, 0xFF, 0x03, 0xFF, 0x07, 0xFE, 0x0F, 0x9C, 0x0F, 0x00, 0x0F, 0x00, - 0x0F, 0x00, 0x07, 0x80, 0x1F, 0x80, 0x3F, 0xC0, 0x7F, 0xCF, 0x79, 0xFF, - 0xF1, 0xFE, 0xF1, 0xFC, 0xF0, 0xF8, 0xFF, 0xFE, 0xFF, 0xFE, 0x7F, 0xFE, - 0x1F, 0xBC, 0x7B, 0xFD, 0xEF, 0x73, 0x9C, 0xC6, 0x00, 0x01, 0xC0, 0xF0, - 0x3C, 0x1E, 0x0F, 0x03, 0xC1, 0xE0, 0x70, 0x3C, 0x0F, 0x07, 0x81, 0xE0, - 0x78, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3E, - 0x07, 0x81, 0xE0, 0x7C, 0x1F, 0x03, 0x80, 0x07, 0x03, 0xC0, 0xF8, 0x3E, - 0x07, 0x81, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, - 0xF0, 0x78, 0x1E, 0x07, 0x81, 0xC0, 0xF0, 0x3C, 0x1E, 0x07, 0x83, 0xC1, - 0xE0, 0x78, 0x3C, 0x0E, 0x00, 0x00, 0xC0, 0x03, 0xC0, 0x07, 0x00, 0x0E, - 0x02, 0x3C, 0x0F, 0xFF, 0xFF, 0xFF, 0xBF, 0xFE, 0x1F, 0xF0, 0x1F, 0x80, - 0x7F, 0x81, 0xEF, 0x07, 0x8F, 0x0F, 0x1E, 0x08, 0x10, 0x00, 0x00, 0x70, - 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x38, 0x00, - 0x1E, 0x03, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x0F, - 0x00, 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x07, 0x80, - 0x01, 0xC0, 0x00, 0x70, 0x00, 0x0F, 0x87, 0x87, 0x83, 0x83, 0xC1, 0xC1, - 0xC0, 0xC0, 0xE0, 0x60, 0x00, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, 0x38, 0x00, 0x03, 0xC0, - 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, - 0x78, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, - 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0xFC, 0x01, 0xFF, - 0x01, 0xFF, 0xC1, 0xFF, 0xE1, 0xF1, 0xF9, 0xE0, 0x7C, 0xF0, 0x1E, 0xF0, - 0x0F, 0x78, 0x07, 0xB8, 0x03, 0x9C, 0x03, 0xDE, 0x01, 0xCF, 0x00, 0xE7, - 0x00, 0x73, 0xC0, 0x79, 0xE0, 0x3C, 0xF0, 0x1C, 0x78, 0x1E, 0x3E, 0x1E, - 0x0F, 0xFF, 0x07, 0xFF, 0x01, 0xFF, 0x00, 0x7E, 0x00, 0x00, 0x7C, 0x03, - 0xF8, 0x0F, 0xE0, 0x7F, 0xC0, 0xF7, 0x81, 0x8F, 0x00, 0x1C, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, 0x00, 0x3C, 0x00, - 0x78, 0x00, 0xF0, 0x01, 0xC0, 0x03, 0x81, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xEF, 0xFF, 0xC0, 0x00, 0x1F, 0x00, 0x07, 0xFC, 0x00, 0xFF, 0xE0, 0x1F, - 0xFF, 0x03, 0xC1, 0xF0, 0x78, 0x0F, 0x07, 0x80, 0xF0, 0x70, 0x0F, 0x00, - 0x01, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x3F, 0x00, - 0x07, 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x07, 0xE0, 0x01, 0xF8, 0x00, - 0x3F, 0x03, 0x87, 0xFF, 0xF8, 0x7F, 0xFF, 0x87, 0xFF, 0xF8, 0xFF, 0xFF, - 0x00, 0x00, 0xFE, 0x00, 0xFF, 0xC0, 0x7F, 0xF8, 0x3F, 0xFF, 0x0E, 0x07, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x1F, 0xC0, - 0x0F, 0xE0, 0x03, 0xF0, 0x00, 0xFF, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, - 0x1E, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xF1, 0xFF, 0xF8, 0xFF, 0xFC, - 0x3F, 0xFE, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0x00, 0x3F, 0x00, 0x7F, 0x00, - 0xFE, 0x00, 0xFE, 0x01, 0xEE, 0x03, 0xDE, 0x07, 0x9E, 0x0F, 0x1C, 0x1E, - 0x1C, 0x3C, 0x3C, 0x78, 0x3C, 0xFF, 0xFE, 0xFF, 0xFE, 0xFF, 0xFE, 0xFF, - 0xFC, 0x00, 0x70, 0x03, 0xFC, 0x07, 0xFC, 0x07, 0xFC, 0x07, 0xF8, 0x07, - 0xFF, 0xC1, 0xFF, 0xF0, 0x7F, 0xFC, 0x3F, 0xFE, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xE0, 0x00, 0x3B, 0xE0, 0x1F, 0xFE, 0x07, 0xFF, 0xC1, 0xFF, 0xF8, - 0x78, 0x3E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, - 0x0F, 0x18, 0x0F, 0xCF, 0xFF, 0xE3, 0xFF, 0xF0, 0x7F, 0xF8, 0x07, 0xF0, - 0x00, 0x00, 0x0F, 0xC0, 0x0F, 0xFC, 0x03, 0xFF, 0x81, 0xFF, 0xE0, 0x7F, - 0x00, 0x1F, 0x80, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x9F, - 0x01, 0xEF, 0xF0, 0x3F, 0xFF, 0x0F, 0xFF, 0xF1, 0xFC, 0x3E, 0x3E, 0x03, - 0xC7, 0x80, 0x78, 0xF0, 0x0F, 0x1E, 0x03, 0xC3, 0xE0, 0xF8, 0x7F, 0xFE, - 0x07, 0xFF, 0x80, 0x7F, 0xE0, 0x07, 0xF0, 0x00, 0x7F, 0xFF, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x0E, 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x3C, - 0x00, 0x78, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xC0, - 0x03, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x0F, 0x00, 0x0E, 0x00, 0x1E, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x03, - 0xFF, 0xF0, 0xF8, 0x3E, 0x3E, 0x03, 0xC7, 0x80, 0x78, 0xF0, 0x0F, 0x1E, - 0x03, 0xC3, 0xE0, 0xF0, 0x3F, 0xFC, 0x03, 0xFF, 0x00, 0xFF, 0xE0, 0x7F, - 0xFE, 0x1F, 0x83, 0xE3, 0xC0, 0x3C, 0xF0, 0x07, 0x9E, 0x01, 0xF3, 0xE0, - 0x7C, 0x7F, 0xFF, 0x87, 0xFF, 0xE0, 0x7F, 0xF0, 0x03, 0xF8, 0x00, 0x00, - 0x7E, 0x00, 0x7F, 0xC0, 0x3F, 0xF8, 0x1F, 0xFE, 0x0F, 0x87, 0xC3, 0xC0, - 0xF1, 0xE0, 0x3C, 0x78, 0x0F, 0x1E, 0x03, 0xC7, 0x81, 0xF1, 0xF1, 0xFC, - 0x7F, 0xFE, 0x0F, 0xFF, 0x81, 0xFD, 0xE0, 0x3E, 0xF0, 0x00, 0x7C, 0x00, - 0x3E, 0x00, 0x1F, 0x00, 0x1F, 0x81, 0xFF, 0xC0, 0xFF, 0xE0, 0x3F, 0xE0, - 0x07, 0xE0, 0x00, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, 0x00, 0x00, - 0x03, 0x8F, 0x9F, 0x3E, 0x38, 0x01, 0xC0, 0x7C, 0x0F, 0x81, 0xF0, 0x3C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xC0, 0xF0, 0x1E, - 0x07, 0x80, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x30, 0x0E, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0xFE, 0x00, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, - 0x00, 0x1F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xF0, 0x00, 0x38, - 0x3F, 0xFF, 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0x9F, 0xFF, 0xE0, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0xFF, 0xF7, 0xFF, 0xFE, 0xFF, 0xFF, 0xDF, 0xFF, 0xF0, - 0x00, 0x00, 0x03, 0x80, 0x00, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0x00, - 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x0F, 0xE0, - 0x07, 0xF0, 0x07, 0xF8, 0x03, 0xF8, 0x01, 0xFC, 0x00, 0x3E, 0x00, 0x07, - 0x00, 0x00, 0x07, 0xE0, 0xFF, 0xC7, 0xFF, 0xBF, 0xFF, 0xF0, 0x7F, 0x80, - 0xFE, 0x03, 0xC0, 0x0F, 0x00, 0x78, 0x0F, 0xE1, 0xFE, 0x0F, 0xF0, 0x7E, - 0x01, 0xE0, 0x07, 0x00, 0x00, 0x00, 0x70, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0x70, 0x00, 0x00, 0x3E, 0x00, 0x3F, 0xE0, 0x1F, 0xF8, 0x0F, 0x0F, - 0x07, 0x01, 0xC3, 0x80, 0x71, 0xE0, 0x1C, 0x70, 0x0E, 0x18, 0x0F, 0x8E, - 0x1F, 0xE3, 0x8F, 0xF0, 0xE7, 0x9C, 0x33, 0xC7, 0x1C, 0xE1, 0xC7, 0x38, - 0x71, 0xCF, 0x18, 0x73, 0xFE, 0x38, 0x7F, 0xCE, 0x0F, 0xF3, 0x80, 0x00, - 0xE0, 0x00, 0x38, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0xC0, 0x7F, 0xF0, 0x0F, - 0xF8, 0x01, 0xF8, 0x00, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, 0xF8, - 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x07, 0xBC, 0x00, - 0x1C, 0xF0, 0x00, 0xF3, 0xC0, 0x07, 0x87, 0x80, 0x1E, 0x1E, 0x00, 0xF0, - 0x78, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0x80, 0xFF, 0xFF, 0x07, 0xFF, 0xFC, - 0x1E, 0x00, 0xF1, 0xFE, 0x1F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE1, 0xFF, 0xFF, - 0x07, 0xF8, 0x0F, 0xFF, 0xC0, 0x7F, 0xFF, 0x87, 0xFF, 0xFC, 0x1F, 0xFF, - 0xF0, 0x38, 0x0F, 0x81, 0xC0, 0x3C, 0x1E, 0x01, 0xE0, 0xF0, 0x3E, 0x07, - 0xFF, 0xE0, 0x3F, 0xFE, 0x03, 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0xE0, 0x1F, - 0x87, 0x00, 0x3C, 0x38, 0x01, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0xF3, 0xFF, - 0xFF, 0xBF, 0xFF, 0xF9, 0xFF, 0xFF, 0x8F, 0xFF, 0xF0, 0x00, 0x00, 0x7F, - 0x30, 0x0F, 0xFF, 0xC1, 0xFF, 0xFE, 0x1F, 0xFF, 0xF1, 0xF8, 0x3F, 0x1F, - 0x00, 0x78, 0xF0, 0x03, 0xCF, 0x80, 0x1C, 0x78, 0x00, 0x03, 0xC0, 0x00, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, - 0x00, 0x1F, 0x00, 0x38, 0x7E, 0x07, 0xC3, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, - 0x3F, 0xFC, 0x00, 0x7F, 0x80, 0x00, 0x0F, 0xFF, 0x80, 0x7F, 0xFE, 0x07, - 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0x78, 0x1F, 0x03, 0x80, 0x7C, 0x1C, 0x01, - 0xE1, 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x70, 0x03, 0xC3, 0x80, 0x1E, 0x1C, - 0x00, 0xF1, 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x70, 0x07, 0xC3, 0x80, 0x7C, - 0x3C, 0x07, 0xC3, 0xFF, 0xFC, 0x3F, 0xFF, 0xC1, 0xFF, 0xFC, 0x0F, 0xFF, - 0x80, 0x00, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC3, 0xFF, - 0xFF, 0x03, 0xC0, 0x3C, 0x0F, 0x00, 0xE0, 0x3C, 0x73, 0x80, 0xE3, 0xCC, - 0x03, 0xFF, 0x00, 0x1F, 0xFC, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, - 0x1E, 0x00, 0x3C, 0x70, 0x00, 0xF0, 0x07, 0x03, 0xC0, 0x1C, 0x0E, 0x00, - 0xF1, 0xFF, 0xFF, 0xC7, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE0, - 0x07, 0xFF, 0xFE, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, 0xE0, - 0x3C, 0x01, 0xC0, 0x70, 0x07, 0x80, 0xE1, 0x8E, 0x03, 0xC7, 0x1C, 0x07, - 0xFE, 0x00, 0x0F, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0xF1, - 0xC0, 0x01, 0xE3, 0x80, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0xFF, 0xE0, 0x03, 0xFF, 0xC0, 0x07, 0xFF, 0x80, 0x0F, 0xFE, 0x00, - 0x00, 0x00, 0x3F, 0x18, 0x0F, 0xFF, 0xC0, 0xFF, 0xFE, 0x0F, 0xFF, 0xF0, - 0xFC, 0x0F, 0x0F, 0x80, 0x38, 0xF8, 0x01, 0x87, 0x80, 0x00, 0x78, 0x00, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x7F, 0xEF, 0x07, 0xFF, 0x78, - 0x3F, 0xFB, 0xC0, 0xFF, 0x9E, 0x00, 0x38, 0xFC, 0x03, 0xC3, 0xFF, 0xFE, - 0x1F, 0xFF, 0xE0, 0x3F, 0xFC, 0x00, 0x7F, 0x80, 0x00, 0x03, 0xF8, 0xFE, - 0x0F, 0xF3, 0xFC, 0x1F, 0xE7, 0xF8, 0x3F, 0x8F, 0xE0, 0x3C, 0x07, 0x80, - 0x70, 0x0E, 0x00, 0xE0, 0x1C, 0x03, 0xC0, 0x78, 0x07, 0x80, 0xF0, 0x0F, - 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0xFF, 0xFE, 0x01, 0xE0, - 0x3C, 0x03, 0x80, 0x70, 0x07, 0x00, 0xE0, 0x1E, 0x03, 0xC0, 0xFF, 0x1F, - 0xE1, 0xFE, 0x7F, 0xC7, 0xFC, 0xFF, 0x87, 0xF1, 0xFE, 0x00, 0x07, 0xFF, - 0xE1, 0xFF, 0xFC, 0x3F, 0xFF, 0x87, 0xFF, 0xE0, 0x07, 0x80, 0x00, 0xE0, - 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0x80, - 0x00, 0x70, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0E, 0x00, - 0x01, 0xC0, 0x0F, 0xFF, 0xC3, 0xFF, 0xF8, 0x7F, 0xFF, 0x07, 0xFF, 0xE0, - 0x00, 0x3F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, - 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x80, 0x1C, 0x03, 0x80, - 0x78, 0x0F, 0x00, 0xF0, 0x1E, 0x01, 0xC0, 0x38, 0x07, 0x80, 0x70, 0x1F, - 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xF0, 0x03, 0xFF, 0xC0, 0x00, 0xFC, 0x00, - 0x00, 0x07, 0xF8, 0xFC, 0x1F, 0xFB, 0xFC, 0x3F, 0xE7, 0xF0, 0x7F, 0xCF, - 0xE0, 0x3C, 0x1E, 0x00, 0x70, 0xF8, 0x00, 0xE3, 0xE0, 0x03, 0xCF, 0x00, - 0x07, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xF0, 0x00, - 0xF9, 0xF0, 0x01, 0xE1, 0xE0, 0x03, 0x83, 0xE0, 0x07, 0x03, 0xC0, 0x1E, - 0x07, 0x80, 0xFF, 0x8F, 0xE3, 0xFF, 0x0F, 0xC7, 0xFE, 0x1F, 0x8F, 0xF8, - 0x3E, 0x00, 0x0F, 0xFE, 0x00, 0xFF, 0xF0, 0x1F, 0xFE, 0x00, 0xFF, 0xE0, - 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0xC0, - 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x80, 0x60, 0x78, - 0x0F, 0x07, 0x80, 0xF0, 0x70, 0x0E, 0x07, 0x00, 0xE7, 0xFF, 0xFE, 0xFF, - 0xFF, 0xEF, 0xFF, 0xFE, 0xFF, 0xFF, 0xC0, 0x0F, 0xC0, 0x1F, 0x87, 0xE0, - 0x0F, 0xC7, 0xF8, 0x0F, 0xE1, 0xFC, 0x0F, 0xE0, 0x7E, 0x07, 0xE0, 0x3F, - 0x07, 0xF0, 0x3F, 0xC7, 0xF8, 0x1F, 0xE3, 0xF8, 0x0E, 0xF3, 0xDC, 0x07, - 0x7B, 0xDE, 0x03, 0x9F, 0xEF, 0x03, 0xCF, 0xE7, 0x81, 0xE7, 0xE3, 0x80, - 0xE3, 0xF1, 0xC0, 0x70, 0xF1, 0xE0, 0x38, 0x70, 0xF0, 0x3C, 0x00, 0x70, - 0x3F, 0xC1, 0xFE, 0x3F, 0xE1, 0xFF, 0x1F, 0xF0, 0xFF, 0x8F, 0xF0, 0x7F, - 0x80, 0x0F, 0xC1, 0xFE, 0x1F, 0xC1, 0xFF, 0x1F, 0xC3, 0xFE, 0x1F, 0xE1, - 0xFE, 0x07, 0xE0, 0x38, 0x07, 0xF0, 0x78, 0x07, 0xF0, 0x78, 0x0F, 0xF8, - 0x70, 0x0F, 0x78, 0x70, 0x0E, 0x78, 0xF0, 0x0E, 0x7C, 0xF0, 0x1E, 0x3C, - 0xF0, 0x1E, 0x3E, 0xE0, 0x1E, 0x1E, 0xE0, 0x1C, 0x1F, 0xE0, 0x1C, 0x0F, - 0xE0, 0x3C, 0x0F, 0xE0, 0x7F, 0x87, 0xC0, 0xFF, 0x87, 0xC0, 0xFF, 0x87, - 0xC0, 0xFF, 0x03, 0xC0, 0x00, 0x7E, 0x00, 0x1F, 0xF8, 0x07, 0xFF, 0xC0, - 0xFF, 0xFE, 0x1F, 0x87, 0xE3, 0xE0, 0x1F, 0x3C, 0x01, 0xF7, 0xC0, 0x0F, - 0x78, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x01, - 0xEF, 0x00, 0x3E, 0xF8, 0x03, 0xCF, 0x80, 0x7C, 0x7C, 0x1F, 0x87, 0xFF, - 0xF0, 0x3F, 0xFE, 0x01, 0xFF, 0x80, 0x07, 0xE0, 0x00, 0x0F, 0xFF, 0x80, - 0x7F, 0xFF, 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x38, 0x0F, 0x81, 0xC0, - 0x3C, 0x1E, 0x01, 0xE0, 0xF0, 0x0F, 0x07, 0x00, 0xF0, 0x38, 0x0F, 0x83, - 0xFF, 0xF8, 0x1F, 0xFF, 0x80, 0xFF, 0xF8, 0x07, 0xFF, 0x00, 0x38, 0x00, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x03, 0xFF, 0x80, 0x3F, 0xFC, 0x01, 0xFF, - 0xE0, 0x0F, 0xFE, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x1F, 0xF8, 0x07, 0xFF, - 0xC0, 0xFF, 0xFE, 0x1F, 0x87, 0xE3, 0xE0, 0x1F, 0x3C, 0x01, 0xF7, 0xC0, - 0x0F, 0x78, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x01, 0xEF, 0x00, 0x3E, 0xF8, 0x03, 0xCF, 0x80, 0x7C, 0x7C, 0x1F, 0x87, - 0xFF, 0xF0, 0x3F, 0xFE, 0x01, 0xFF, 0x80, 0x07, 0xE0, 0x01, 0xFE, 0x30, - 0x3F, 0xFF, 0x87, 0xFF, 0xF0, 0x7F, 0xFF, 0x07, 0x83, 0xC0, 0x07, 0xFF, - 0x80, 0x3F, 0xFF, 0x80, 0xFF, 0xFF, 0x03, 0xFF, 0xFE, 0x03, 0xC0, 0xF8, - 0x0E, 0x01, 0xE0, 0x38, 0x07, 0x81, 0xE0, 0x3E, 0x07, 0x83, 0xF0, 0x1F, - 0xFF, 0x80, 0x7F, 0xFC, 0x01, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x3C, 0x3E, - 0x00, 0xE0, 0x7C, 0x03, 0x80, 0xF0, 0x1E, 0x03, 0xE1, 0xFF, 0x07, 0xFF, - 0xFC, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0x80, 0xF8, 0x00, 0x7C, 0xE0, 0x7F, - 0xFC, 0x1F, 0xFF, 0x87, 0xFF, 0xE0, 0xF8, 0x7C, 0x3C, 0x07, 0x87, 0x80, - 0xE0, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xFE, 0x00, 0x3F, 0xF8, 0x03, 0xFF, - 0x80, 0x07, 0xF8, 0x40, 0x1F, 0x3C, 0x01, 0xE7, 0x80, 0x3C, 0xFC, 0x1F, - 0x1F, 0xFF, 0xE3, 0xFF, 0xF8, 0x7F, 0xFE, 0x00, 0x7E, 0x00, 0x7F, 0xFF, - 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0x0E, 0x1F, 0xE1, 0xC3, - 0xBC, 0x78, 0x77, 0x0F, 0x1E, 0xE1, 0xC1, 0x80, 0x38, 0x00, 0x0F, 0x00, - 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x3C, 0x00, - 0x07, 0x80, 0x0F, 0xFE, 0x03, 0xFF, 0xE0, 0x7F, 0xFC, 0x0F, 0xFF, 0x00, - 0x7F, 0x8F, 0xF3, 0xFE, 0x7F, 0xDF, 0xF7, 0xFC, 0xFF, 0x1F, 0xE3, 0xC0, - 0x3C, 0x1C, 0x01, 0xE0, 0xE0, 0x0F, 0x0F, 0x00, 0x70, 0x78, 0x03, 0x83, - 0xC0, 0x3C, 0x1C, 0x01, 0xE0, 0xE0, 0x0E, 0x0F, 0x00, 0x70, 0x78, 0x03, - 0x83, 0xC0, 0x3C, 0x1F, 0x01, 0xC0, 0xFC, 0x3E, 0x03, 0xFF, 0xE0, 0x1F, - 0xFE, 0x00, 0x7F, 0xE0, 0x00, 0xFC, 0x00, 0x00, 0x7F, 0x81, 0xFE, 0xFF, - 0x87, 0xFF, 0xFF, 0x0F, 0xFB, 0xFC, 0x1F, 0xE1, 0xC0, 0x0F, 0x03, 0xC0, - 0x1C, 0x07, 0x80, 0x78, 0x0F, 0x01, 0xE0, 0x1E, 0x03, 0x80, 0x1E, 0x0F, - 0x00, 0x3C, 0x3C, 0x00, 0x78, 0x70, 0x00, 0xF1, 0xE0, 0x01, 0xE7, 0x80, - 0x01, 0xEF, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, - 0x0F, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x7F, 0x87, 0xFF, - 0xFF, 0x1F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE1, 0xFE, 0x78, 0x00, 0xF1, 0xE3, - 0xC3, 0x87, 0x8F, 0x0E, 0x1E, 0x7C, 0x78, 0x79, 0xF9, 0xC1, 0xEF, 0xEF, - 0x07, 0xBF, 0xBC, 0x1D, 0xFE, 0xE0, 0x77, 0x7F, 0x81, 0xFD, 0xFE, 0x07, - 0xE3, 0xF0, 0x3F, 0x8F, 0xC0, 0xFC, 0x3F, 0x03, 0xF0, 0xF8, 0x0F, 0x83, - 0xE0, 0x3E, 0x0F, 0x80, 0xF0, 0x3C, 0x00, 0x07, 0xE0, 0x7E, 0x0F, 0xF0, - 0xFF, 0x0F, 0xF0, 0xFE, 0x0F, 0xE0, 0xFE, 0x03, 0xC0, 0xF8, 0x01, 0xE1, - 0xE0, 0x01, 0xF3, 0xC0, 0x00, 0xF7, 0x80, 0x00, 0x7F, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xEF, - 0x00, 0x07, 0xCF, 0x80, 0x0F, 0x87, 0xC0, 0x1F, 0x03, 0xC0, 0x7F, 0x07, - 0xF0, 0xFF, 0x8F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xE0, 0x7E, 0x0F, - 0xEF, 0xF0, 0xFF, 0xFF, 0x0F, 0xEF, 0xE0, 0xFE, 0x3C, 0x0F, 0x01, 0xE1, - 0xE0, 0x1E, 0x3E, 0x00, 0xF7, 0xC0, 0x0F, 0xF8, 0x00, 0x7F, 0x00, 0x07, - 0xE0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, - 0x78, 0x00, 0x07, 0x00, 0x07, 0xFF, 0x00, 0xFF, 0xF8, 0x0F, 0xFF, 0x00, - 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xE0, 0xFF, 0xFC, 0x3F, 0xFF, 0x87, 0xFF, - 0xF0, 0xF0, 0x7C, 0x1C, 0x1F, 0x03, 0x87, 0xC0, 0x61, 0xF0, 0x00, 0x7C, - 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x07, - 0x07, 0xC0, 0xE1, 0xF0, 0x3C, 0x7C, 0x07, 0x9F, 0xFF, 0xF3, 0xFF, 0xFC, - 0x7F, 0xFF, 0x8F, 0xFF, 0xF0, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xE0, - 0x70, 0x07, 0x80, 0x3C, 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x3C, - 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x38, 0x01, 0xC0, 0x0E, 0x00, - 0xF0, 0x07, 0x80, 0x38, 0x01, 0xC0, 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, - 0x80, 0xE0, 0x38, 0x0F, 0x03, 0xC0, 0xF0, 0x1C, 0x07, 0x81, 0xE0, 0x78, - 0x0E, 0x03, 0xC0, 0xF0, 0x3C, 0x07, 0x01, 0xE0, 0x78, 0x1E, 0x03, 0x80, - 0xF0, 0x3C, 0x0F, 0x01, 0xE0, 0x78, 0x1E, 0x03, 0x80, 0xF0, 0x3C, 0x06, - 0x07, 0xF8, 0x3F, 0xC1, 0xFC, 0x0F, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, - 0x1C, 0x00, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0F, - 0x00, 0x78, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0F, 0x00, 0x70, 0x03, 0x80, - 0x1C, 0x0F, 0xE0, 0xFF, 0x07, 0xF0, 0x3F, 0x80, 0x00, 0x40, 0x01, 0x80, - 0x07, 0x80, 0x3F, 0x80, 0xFF, 0x03, 0xFF, 0x0F, 0x9F, 0x3E, 0x1E, 0xF8, - 0x3F, 0xE0, 0x3F, 0x00, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0xC3, 0xC7, 0x0E, 0x3C, 0x30, 0x00, 0xFE, 0x00, - 0x7F, 0xF0, 0x1F, 0xFF, 0x03, 0xFF, 0xE0, 0x00, 0x3C, 0x07, 0xFF, 0x83, - 0xFF, 0xF0, 0xFF, 0xFC, 0x3F, 0xFF, 0x8F, 0x80, 0xF3, 0xE0, 0x1E, 0x78, - 0x1F, 0x8F, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xFF, 0xF8, 0xFE, 0x7E, 0x07, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xC0, - 0x00, 0x0F, 0x00, 0x00, 0x3C, 0xFC, 0x00, 0xEF, 0xFC, 0x03, 0xFF, 0xF8, - 0x1F, 0xFF, 0xE0, 0x7E, 0x0F, 0xC1, 0xE0, 0x1F, 0x07, 0x00, 0x3C, 0x1C, - 0x00, 0xF0, 0xE0, 0x03, 0xC3, 0x80, 0x1E, 0x0F, 0x00, 0xF8, 0x3E, 0x07, - 0xC7, 0xFF, 0xFF, 0x3F, 0xFF, 0xF8, 0xFF, 0xFF, 0x81, 0xF1, 0xF8, 0x00, - 0x00, 0xFE, 0x60, 0xFF, 0xFC, 0x3F, 0xFF, 0x8F, 0xFF, 0xF3, 0xF0, 0x3C, - 0xF8, 0x03, 0x9E, 0x00, 0x67, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, - 0xC0, 0x00, 0x7E, 0x01, 0xC7, 0xFF, 0xF8, 0xFF, 0xFE, 0x0F, 0xFF, 0x80, - 0x7F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, 0x07, 0xE3, 0x80, 0xFF, 0xDC, 0x0F, - 0xFF, 0xE0, 0xFF, 0xFF, 0x0F, 0xC1, 0xF0, 0xF8, 0x07, 0x87, 0x80, 0x1C, - 0x78, 0x00, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x70, 0xF0, 0x07, 0x87, 0xE0, - 0xFC, 0x1F, 0xFF, 0xF8, 0xFF, 0xFF, 0xC3, 0xFF, 0xFE, 0x07, 0xE3, 0xE0, - 0x00, 0xFC, 0x01, 0xFF, 0xC0, 0xFF, 0xF8, 0x7F, 0xFE, 0x3E, 0x0F, 0xCE, - 0x00, 0xF7, 0x00, 0x3D, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xE0, 0x1E, 0xFF, 0xFF, 0x9F, 0xFF, 0xE3, 0xFF, 0xF0, 0x3F, 0xF0, - 0x00, 0x0F, 0xF0, 0x01, 0xFF, 0xC0, 0x1F, 0xFE, 0x01, 0xFF, 0xE0, 0x0F, - 0x00, 0x00, 0xF0, 0x00, 0x3F, 0xFF, 0x03, 0xFF, 0xF8, 0x1F, 0xFF, 0xC0, - 0xFF, 0xFC, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x01, 0xC0, - 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x1F, - 0xFF, 0x81, 0xFF, 0xFC, 0x0F, 0xFF, 0xE0, 0x7F, 0xFE, 0x00, 0x01, 0xF9, - 0xF8, 0x3F, 0xFF, 0xC3, 0xFF, 0xFE, 0x7F, 0xFF, 0xE3, 0xE0, 0xFC, 0x3E, - 0x03, 0xE1, 0xE0, 0x0E, 0x1E, 0x00, 0x70, 0xF0, 0x03, 0x87, 0x80, 0x3C, - 0x3E, 0x03, 0xE1, 0xF8, 0x7E, 0x07, 0xFF, 0xF0, 0x3F, 0xFF, 0x80, 0xFF, - 0xFC, 0x01, 0xF9, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, - 0x7F, 0xF8, 0x07, 0xFF, 0x80, 0x3F, 0xF8, 0x00, 0xFF, 0x00, 0x00, 0x0F, - 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x03, 0xC0, 0x00, - 0x38, 0x00, 0x03, 0x9F, 0x00, 0x7F, 0xFC, 0x07, 0xFF, 0xC0, 0x7F, 0xFE, - 0x07, 0xC3, 0xE0, 0x70, 0x1E, 0x0F, 0x01, 0xC0, 0xF0, 0x1C, 0x0E, 0x03, - 0xC0, 0xE0, 0x3C, 0x1E, 0x03, 0x81, 0xE0, 0x38, 0x7F, 0x0F, 0xFF, 0xF8, - 0xFF, 0xFF, 0x8F, 0xF7, 0xF0, 0xFE, 0x00, 0x78, 0x00, 0x78, 0x00, 0x78, - 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x0F, 0xF0, 0x1F, 0xF0, - 0x0F, 0xF0, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xE0, - 0x01, 0xE0, 0x01, 0xC0, 0x01, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFC, 0x3F, 0xFE, 0x0F, 0xFF, 0x81, 0xFF, - 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0xF0, - 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x78, 0x00, - 0x1E, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x1F, 0xFE, - 0x0F, 0xFF, 0x03, 0xFF, 0x80, 0x7F, 0x80, 0x00, 0x07, 0xE0, 0x00, 0xFE, - 0x00, 0x0F, 0xE0, 0x00, 0x7C, 0x00, 0x01, 0xC0, 0x00, 0x3C, 0x00, 0x03, - 0xCF, 0xF0, 0x3C, 0xFF, 0x03, 0x9F, 0xF0, 0x38, 0xFE, 0x07, 0xBF, 0x00, - 0x7F, 0xC0, 0x07, 0xF8, 0x00, 0x7F, 0x00, 0x07, 0xF8, 0x00, 0xFF, 0xC0, - 0x0F, 0x7E, 0x00, 0xE3, 0xF0, 0x7E, 0x1F, 0xE7, 0xE1, 0xFE, 0xFE, 0x3F, - 0xE7, 0xE1, 0xFC, 0x03, 0xFC, 0x07, 0xFC, 0x07, 0xF8, 0x07, 0xF8, 0x00, - 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0xF0, 0x00, - 0xF0, 0x00, 0xE0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, - 0xC0, 0x01, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, - 0x7C, 0x78, 0x7F, 0xFF, 0xF8, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xF0, 0xF1, - 0xF1, 0xE1, 0xC3, 0x83, 0xC7, 0x87, 0x07, 0x8F, 0x0E, 0x0E, 0x1C, 0x3C, - 0x1C, 0x38, 0x78, 0x78, 0x70, 0xE0, 0xF1, 0xE1, 0xC1, 0xC7, 0xE3, 0xC3, - 0xFF, 0xCF, 0xC7, 0xFF, 0x9F, 0x9F, 0xFF, 0x3E, 0x3E, 0x0F, 0x8F, 0x80, - 0xFD, 0xFF, 0x07, 0xFF, 0xF8, 0x3F, 0xFF, 0xE0, 0x7E, 0x1F, 0x07, 0xC0, - 0x78, 0x3C, 0x03, 0x81, 0xE0, 0x1C, 0x0E, 0x01, 0xE0, 0x70, 0x0F, 0x07, - 0x80, 0x70, 0x3C, 0x03, 0x87, 0xF0, 0x3F, 0x7F, 0xC3, 0xFF, 0xFE, 0x1F, - 0xEF, 0xE0, 0xFE, 0x01, 0xFC, 0x01, 0xFF, 0x80, 0xFF, 0xF8, 0x7F, 0xFE, - 0x3E, 0x0F, 0xDF, 0x01, 0xF7, 0x80, 0x3F, 0xC0, 0x0F, 0xF0, 0x03, 0xFC, - 0x01, 0xEF, 0x80, 0xFB, 0xF0, 0x7C, 0x7F, 0xFF, 0x1F, 0xFF, 0x03, 0xFF, - 0x80, 0x3F, 0x80, 0x07, 0xC7, 0xE0, 0x1F, 0xBF, 0xF0, 0x3F, 0xFF, 0xF0, - 0x7F, 0xFF, 0xE0, 0x3F, 0x07, 0xE0, 0x78, 0x03, 0xC0, 0xE0, 0x07, 0x81, - 0xC0, 0x0F, 0x07, 0x00, 0x1E, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xF0, 0x3E, - 0x07, 0xC0, 0xFF, 0xFF, 0x81, 0xFF, 0xFE, 0x03, 0xDF, 0xF0, 0x07, 0x1F, - 0x80, 0x0E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, 0x03, 0xFE, 0x00, - 0x0F, 0xFE, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x01, 0xF8, - 0xF8, 0x1F, 0xFF, 0xF1, 0xFF, 0xFF, 0xCF, 0xFF, 0xFE, 0x3E, 0x07, 0xC1, - 0xF0, 0x0F, 0x07, 0x80, 0x1C, 0x3C, 0x00, 0x70, 0xF0, 0x03, 0x83, 0xC0, - 0x0E, 0x0F, 0x80, 0x78, 0x3F, 0x07, 0xE0, 0x7F, 0xFF, 0x81, 0xFF, 0xFC, - 0x03, 0xFF, 0x70, 0x03, 0xF3, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xE0, 0x00, 0x3F, 0xE0, 0x01, 0xFF, 0xC0, 0x07, 0xFF, 0x00, 0x1F, - 0xF8, 0x00, 0x0F, 0xC3, 0xC1, 0xFC, 0xFF, 0x1F, 0xFF, 0xF1, 0xFF, 0xFE, - 0x03, 0xFC, 0x00, 0x3F, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x07, 0x80, - 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xF0, 0x00, 0xFF, 0xFC, 0x0F, 0xFF, - 0xE0, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, 0x03, 0xF3, 0x0F, 0xFF, 0x3F, 0xFF, - 0x3F, 0xFF, 0x7C, 0x0E, 0x78, 0x00, 0x7F, 0xE0, 0x3F, 0xFC, 0x1F, 0xFF, - 0x00, 0x3F, 0x70, 0x0F, 0xF8, 0x1F, 0xFF, 0xFE, 0xFF, 0xFC, 0xFF, 0xF8, - 0x0F, 0xE0, 0x06, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x7F, 0xFE, 0xFF, 0xFE, 0xFF, 0xFE, 0xFF, 0xFC, 0x1C, 0x00, 0x3C, 0x00, - 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x78, 0x00, 0x7C, 0x0E, - 0x7F, 0xFF, 0x7F, 0xFE, 0x3F, 0xFC, 0x0F, 0xE0, 0x7C, 0x0F, 0xFF, 0x07, - 0xFF, 0x81, 0xFF, 0xE0, 0x7E, 0x78, 0x03, 0x9E, 0x00, 0xE7, 0x80, 0x79, - 0xE0, 0x1E, 0x78, 0x07, 0x1E, 0x01, 0xC7, 0x80, 0xF1, 0xE0, 0xFC, 0x7F, - 0xFF, 0x9F, 0xFF, 0xE3, 0xFF, 0xF8, 0x3E, 0x7C, 0x7F, 0x87, 0xFF, 0xFC, - 0x7F, 0xFF, 0xE3, 0xFF, 0xFF, 0x1F, 0xE1, 0xE0, 0x3C, 0x0F, 0x03, 0xC0, - 0x78, 0x3C, 0x01, 0xE1, 0xC0, 0x0F, 0x1E, 0x00, 0x79, 0xE0, 0x03, 0xCE, - 0x00, 0x0F, 0xF0, 0x00, 0x7F, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0x80, 0x00, - 0x78, 0x00, 0x7E, 0x03, 0xF7, 0xF0, 0x3F, 0xFF, 0x81, 0xFD, 0xF8, 0x0F, - 0xE7, 0x8E, 0x1C, 0x3C, 0xF9, 0xE1, 0xE7, 0xCE, 0x0F, 0x7E, 0xF0, 0x7B, - 0xF7, 0x03, 0xFF, 0xF8, 0x1F, 0xDF, 0x80, 0xFC, 0xFC, 0x07, 0xE7, 0xE0, - 0x3E, 0x3E, 0x01, 0xF1, 0xF0, 0x0F, 0x07, 0x00, 0x0F, 0xE3, 0xF8, 0xFF, - 0x1F, 0xC7, 0xF9, 0xFE, 0x1F, 0x87, 0xF0, 0x7E, 0x7C, 0x01, 0xFF, 0xC0, - 0x07, 0xFC, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x1F, 0xF0, 0x01, 0xF7, - 0xC0, 0x1F, 0x1F, 0x03, 0xF0, 0x7C, 0x7F, 0xCF, 0xFB, 0xFE, 0x7F, 0xDF, - 0xE3, 0xFC, 0x07, 0xF0, 0x7F, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x07, - 0xE0, 0xFE, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0xF0, 0x01, - 0xE1, 0xE0, 0x01, 0xE1, 0xC0, 0x01, 0xE3, 0xC0, 0x00, 0xF7, 0x80, 0x00, - 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x7F, - 0xF0, 0x00, 0xFF, 0xF8, 0x00, 0xFF, 0xF0, 0x00, 0x7F, 0xF0, 0x00, 0x1F, - 0xFF, 0xC7, 0xFF, 0xF1, 0xFF, 0xF8, 0xFF, 0xFE, 0x3C, 0x1F, 0x0E, 0x1F, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0xF8, 0x3C, 0xFF, 0xFF, 0x3F, 0xFF, 0xCF, 0xFF, 0xE3, 0xFF, 0xF8, 0x00, - 0xF0, 0x1F, 0x03, 0xF0, 0x7E, 0x07, 0x80, 0x70, 0x0F, 0x00, 0xF0, 0x0E, - 0x00, 0xE0, 0x1E, 0x01, 0xC0, 0xFC, 0x0F, 0x80, 0xF8, 0x0F, 0xC0, 0x3C, - 0x03, 0xC0, 0x38, 0x03, 0x80, 0x78, 0x07, 0x80, 0x78, 0x07, 0xE0, 0x7E, - 0x03, 0xE0, 0x1C, 0x00, 0x02, 0x07, 0x07, 0x0F, 0x0F, 0x0E, 0x0E, 0x0E, - 0x1E, 0x1E, 0x1C, 0x1C, 0x1C, 0x3C, 0x3C, 0x38, 0x38, 0x38, 0x78, 0x78, - 0x70, 0x70, 0x70, 0xF0, 0xF0, 0xE0, 0xE0, 0x01, 0xC0, 0x1F, 0x00, 0xFC, - 0x07, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x0F, 0x00, - 0x78, 0x03, 0xC0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, 0x3F, 0x03, 0xC0, 0x1C, - 0x00, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x3C, 0x0F, 0xE0, 0x7E, 0x07, - 0xE0, 0x1E, 0x00, 0x0F, 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0xFF, 0xFC, 0xFF, - 0x3F, 0xFF, 0x0F, 0xF8, 0x03, 0xF8, 0x00, 0xF0}; - -const GFXglyph FreeMonoBoldOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 9, 22, 21, 9, -21}, // 0x21 '!' - {25, 12, 10, 21, 9, -20}, // 0x22 '"' - {40, 18, 25, 21, 4, -22}, // 0x23 '#' - {97, 18, 28, 21, 4, -23}, // 0x24 '$' - {160, 16, 21, 21, 5, -20}, // 0x25 '%' - {202, 16, 20, 21, 4, -19}, // 0x26 '&' - {242, 5, 10, 21, 12, -20}, // 0x27 ''' - {249, 10, 27, 21, 11, -21}, // 0x28 '(' - {283, 10, 27, 21, 4, -21}, // 0x29 ')' - {317, 15, 15, 21, 6, -21}, // 0x2A '*' - {346, 18, 19, 21, 4, -18}, // 0x2B '+' - {389, 9, 10, 21, 4, -3}, // 0x2C ',' - {401, 18, 4, 21, 4, -11}, // 0x2D '-' - {410, 5, 5, 21, 8, -4}, // 0x2E '.' - {414, 21, 28, 21, 2, -23}, // 0x2F '/' - {488, 17, 23, 21, 5, -22}, // 0x30 '0' - {537, 15, 22, 21, 3, -21}, // 0x31 '1' - {579, 20, 23, 21, 2, -22}, // 0x32 '2' - {637, 18, 23, 21, 3, -22}, // 0x33 '3' - {689, 16, 21, 21, 4, -20}, // 0x34 '4' - {731, 18, 22, 21, 4, -21}, // 0x35 '5' - {781, 19, 23, 21, 5, -22}, // 0x36 '6' - {836, 16, 22, 21, 6, -21}, // 0x37 '7' - {880, 19, 23, 21, 3, -22}, // 0x38 '8' - {935, 18, 23, 21, 4, -22}, // 0x39 '9' - {987, 7, 16, 21, 9, -15}, // 0x3A ':' - {1001, 11, 22, 21, 4, -15}, // 0x3B ';' - {1032, 18, 16, 21, 4, -17}, // 0x3C '<' - {1068, 19, 10, 21, 3, -14}, // 0x3D '=' - {1092, 19, 16, 21, 3, -17}, // 0x3E '>' - {1130, 14, 21, 21, 8, -20}, // 0x3F '?' - {1167, 18, 27, 21, 3, -21}, // 0x40 '@' - {1228, 22, 21, 21, 0, -20}, // 0x41 'A' - {1286, 21, 21, 21, 1, -20}, // 0x42 'B' - {1342, 21, 21, 21, 2, -20}, // 0x43 'C' - {1398, 21, 21, 21, 1, -20}, // 0x44 'D' - {1454, 22, 21, 21, 0, -20}, // 0x45 'E' - {1512, 23, 21, 21, 0, -20}, // 0x46 'F' - {1573, 21, 21, 21, 2, -20}, // 0x47 'G' - {1629, 23, 21, 21, 0, -20}, // 0x48 'H' - {1690, 19, 21, 21, 2, -20}, // 0x49 'I' - {1740, 23, 21, 21, 0, -20}, // 0x4A 'J' - {1801, 23, 21, 21, 0, -20}, // 0x4B 'K' - {1862, 20, 21, 21, 1, -20}, // 0x4C 'L' - {1915, 25, 21, 21, 0, -20}, // 0x4D 'M' - {1981, 24, 21, 21, 1, -20}, // 0x4E 'N' - {2044, 20, 21, 21, 2, -20}, // 0x4F 'O' - {2097, 21, 21, 21, 1, -20}, // 0x50 'P' - {2153, 20, 26, 21, 2, -20}, // 0x51 'Q' - {2218, 22, 21, 21, 0, -20}, // 0x52 'R' - {2276, 19, 21, 21, 3, -20}, // 0x53 'S' - {2326, 19, 21, 21, 3, -20}, // 0x54 'T' - {2376, 21, 21, 21, 3, -20}, // 0x55 'U' - {2432, 23, 21, 21, 1, -20}, // 0x56 'V' - {2493, 22, 21, 21, 2, -20}, // 0x57 'W' - {2551, 24, 21, 21, 0, -20}, // 0x58 'X' - {2614, 20, 21, 21, 3, -20}, // 0x59 'Y' - {2667, 19, 21, 21, 2, -20}, // 0x5A 'Z' - {2717, 13, 27, 21, 8, -21}, // 0x5B '[' - {2761, 10, 28, 21, 8, -23}, // 0x5C '\' - {2796, 13, 27, 21, 4, -21}, // 0x5D ']' - {2840, 15, 11, 21, 6, -21}, // 0x5E '^' - {2861, 21, 4, 21, -1, 4}, // 0x5F '_' - {2872, 6, 6, 21, 10, -22}, // 0x60 '`' - {2877, 19, 16, 21, 2, -15}, // 0x61 'a' - {2915, 22, 22, 21, 0, -21}, // 0x62 'b' - {2976, 19, 16, 21, 3, -15}, // 0x63 'c' - {3014, 21, 22, 21, 3, -21}, // 0x64 'd' - {3072, 18, 16, 21, 3, -15}, // 0x65 'e' - {3108, 21, 22, 21, 3, -21}, // 0x66 'f' - {3166, 21, 23, 21, 2, -15}, // 0x67 'g' - {3227, 20, 22, 21, 1, -21}, // 0x68 'h' - {3282, 16, 22, 21, 3, -21}, // 0x69 'i' - {3326, 18, 29, 21, 2, -21}, // 0x6A 'j' - {3392, 20, 22, 21, 1, -21}, // 0x6B 'k' - {3447, 16, 22, 21, 3, -21}, // 0x6C 'l' - {3491, 23, 16, 21, 0, -15}, // 0x6D 'm' - {3537, 21, 16, 21, 1, -15}, // 0x6E 'n' - {3579, 18, 16, 21, 3, -15}, // 0x6F 'o' - {3615, 23, 23, 21, -1, -15}, // 0x70 'p' - {3682, 22, 23, 21, 2, -15}, // 0x71 'q' - {3746, 20, 16, 21, 2, -15}, // 0x72 'r' - {3786, 16, 16, 21, 4, -15}, // 0x73 's' - {3818, 16, 21, 21, 4, -20}, // 0x74 't' - {3860, 18, 16, 21, 3, -15}, // 0x75 'u' - {3896, 21, 16, 21, 2, -15}, // 0x76 'v' - {3938, 21, 16, 21, 3, -15}, // 0x77 'w' - {3980, 21, 16, 21, 1, -15}, // 0x78 'x' - {4022, 24, 23, 21, -1, -15}, // 0x79 'y' - {4091, 18, 16, 21, 3, -15}, // 0x7A 'z' - {4127, 12, 27, 21, 8, -21}, // 0x7B '{' - {4168, 8, 27, 21, 8, -21}, // 0x7C '|' - {4195, 13, 27, 21, 4, -21}, // 0x7D '}' - {4239, 17, 8, 21, 4, -13}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique18pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique18pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique18pt7bGlyphs, 0x20, 0x7E, 35}; - -// Approx. 4928 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h deleted file mode 100644 index ac923bf..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h +++ /dev/null @@ -1,744 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xE0, 0x3F, 0x07, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xE0, 0xFE, - 0x0F, 0xE0, 0xFE, 0x0F, 0xC0, 0xFC, 0x1F, 0xC1, 0xF8, 0x1F, 0x81, 0xF8, - 0x1F, 0x81, 0xF0, 0x1F, 0x01, 0xF0, 0x1E, 0x00, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x03, 0xC0, 0x7E, 0x0F, 0xE0, 0xFE, 0x0F, 0xC0, 0x78, 0x00, 0x7E, - 0x1F, 0xBF, 0x0F, 0xDF, 0x87, 0xCF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF1, - 0xE0, 0xF8, 0xF0, 0x7C, 0x78, 0x3C, 0x38, 0x1E, 0x1C, 0x0F, 0x0E, 0x07, - 0x0E, 0x03, 0x83, 0x01, 0x80, 0x00, 0x1C, 0x1C, 0x00, 0x3E, 0x3E, 0x00, - 0x3E, 0x3E, 0x00, 0x3C, 0x3C, 0x00, 0x7C, 0x7C, 0x00, 0x7C, 0x7C, 0x00, - 0x7C, 0x7C, 0x00, 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x0F, - 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x1F, - 0xFF, 0xFE, 0x03, 0xE3, 0xE0, 0x03, 0xE3, 0xE0, 0x03, 0xC3, 0xC0, 0x07, - 0xC7, 0xC0, 0x7F, 0xFF, 0xF8, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xF8, 0xFF, 0xFF, 0xF0, 0x0F, 0x0F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, - 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x3E, 0x1E, 0x00, 0x3E, 0x3E, 0x00, 0x3E, - 0x3E, 0x00, 0x3C, 0x3C, 0x00, 0x7C, 0x7C, 0x00, 0x38, 0x38, 0x00, 0x00, - 0x00, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0xFF, 0x00, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, - 0x01, 0xFF, 0xFF, 0x81, 0xFC, 0x1F, 0xC1, 0xF8, 0x03, 0xC0, 0xF8, 0x01, - 0xE0, 0x7C, 0x00, 0x40, 0x3F, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xFF, - 0x80, 0x03, 0xFF, 0xF8, 0x00, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0x00, 0x00, - 0x7F, 0xC0, 0x00, 0x07, 0xE0, 0xE0, 0x01, 0xF0, 0xF0, 0x00, 0xF8, 0xF8, - 0x00, 0xFC, 0x7E, 0x00, 0xFC, 0x3F, 0x81, 0xFE, 0x1F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFE, 0x03, 0xFF, 0xFC, 0x00, 0x07, 0xF0, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0xF8, - 0x00, 0x0F, 0xF8, 0x00, 0x7F, 0xE0, 0x03, 0xC3, 0xC0, 0x0E, 0x07, 0x00, - 0x70, 0x1C, 0x01, 0xC0, 0x70, 0x07, 0x01, 0xC0, 0x1C, 0x0E, 0x00, 0x78, - 0x78, 0x00, 0xFF, 0xC0, 0x03, 0xFE, 0x1F, 0x03, 0xE3, 0xFC, 0x00, 0x7F, - 0xC0, 0x0F, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xC0, 0x03, 0xF8, 0x7C, 0x0F, - 0x07, 0xFC, 0x00, 0x3F, 0xF0, 0x01, 0xE1, 0xE0, 0x07, 0x03, 0x80, 0x38, - 0x0E, 0x00, 0xE0, 0x38, 0x03, 0x80, 0xE0, 0x0E, 0x07, 0x00, 0x3C, 0x3C, - 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, - 0x01, 0xFF, 0x80, 0x3F, 0xFC, 0x03, 0xFF, 0xE0, 0x1F, 0xFE, 0x01, 0xF1, - 0xE0, 0x1F, 0x04, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, - 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0xE3, - 0xE7, 0xFF, 0x3F, 0x7E, 0xFF, 0xFB, 0xE7, 0xFF, 0x9E, 0x1F, 0xF1, 0xF0, - 0xFF, 0x8F, 0x83, 0xF8, 0x7C, 0x1F, 0xC3, 0xF0, 0xFF, 0x9F, 0xFF, 0xFC, - 0x7F, 0xFF, 0xE3, 0xFF, 0xFF, 0x0F, 0xFD, 0xF0, 0x1F, 0x80, 0x00, 0x7E, - 0xFD, 0xF3, 0xE7, 0xCF, 0x3E, 0x7C, 0xF1, 0xE3, 0xC7, 0x0E, 0x18, 0x00, - 0x00, 0x18, 0x00, 0xF0, 0x07, 0xC0, 0x3F, 0x01, 0xF8, 0x07, 0xC0, 0x3E, - 0x01, 0xF8, 0x07, 0xC0, 0x3E, 0x00, 0xF8, 0x07, 0xC0, 0x1F, 0x00, 0xF8, - 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x3E, 0x00, 0xF8, - 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0xFC, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x80, 0x7E, 0x00, 0xFC, 0x03, - 0xF0, 0x07, 0xC0, 0x1E, 0x00, 0x00, 0xC0, 0x07, 0x80, 0x3F, 0x00, 0xFC, - 0x03, 0xF0, 0x07, 0xE0, 0x1F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xF0, 0x07, - 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, - 0xF0, 0x07, 0xC0, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x01, - 0xF0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, - 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x00, 0xF0, 0x00, 0x00, 0x3C, - 0x00, 0x01, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x08, - 0x3C, 0x09, 0xF9, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, - 0x87, 0xFF, 0xE0, 0x07, 0xF8, 0x00, 0x7F, 0xC0, 0x07, 0xFF, 0x00, 0x7F, - 0xF8, 0x07, 0xE7, 0xE0, 0x3E, 0x3F, 0x01, 0xE0, 0xF8, 0x0E, 0x07, 0x80, - 0x00, 0x07, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x0F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x3E, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x7C, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xF0, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0xE0, 0x00, 0x03, 0xF0, 0x7E, 0x07, 0xC0, 0xFC, - 0x0F, 0x81, 0xF0, 0x1E, 0x03, 0xE0, 0x3C, 0x07, 0x80, 0x78, 0x0F, 0x00, - 0xE0, 0x0C, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x3C, 0xFF, 0xFF, 0xFF, 0xCF, 0x00, - 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xE0, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x07, 0x00, 0x00, - 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x1F, 0xFF, - 0xE0, 0x7F, 0xFF, 0xC0, 0xFC, 0x1F, 0x83, 0xF0, 0x1F, 0x8F, 0xC0, 0x1F, - 0x1F, 0x00, 0x3E, 0x7C, 0x00, 0x7C, 0xF8, 0x00, 0xF9, 0xF0, 0x01, 0xF3, - 0xC0, 0x07, 0xCF, 0x80, 0x0F, 0x9F, 0x00, 0x1E, 0x3E, 0x00, 0x3C, 0x78, - 0x00, 0xF8, 0xF0, 0x01, 0xF3, 0xE0, 0x03, 0xE7, 0xC0, 0x07, 0x8F, 0x80, - 0x1F, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0xF8, 0x7C, 0x01, 0xF0, 0xFC, 0x07, - 0xC1, 0xFC, 0x3F, 0x81, 0xFF, 0xFE, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, - 0x03, 0xFF, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x7E, - 0x00, 0x0F, 0xF0, 0x01, 0xFF, 0x80, 0x1F, 0xFC, 0x03, 0xFB, 0xE0, 0x1F, - 0x9E, 0x00, 0xF1, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, - 0x00, 0x1E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, - 0xC0, 0x00, 0x1E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, - 0x03, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, - 0x01, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, - 0xFF, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x03, 0xFF, 0xF0, - 0x01, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x80, 0x7F, 0x07, 0xF0, 0x1F, 0x00, - 0xFC, 0x0F, 0x80, 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0xF0, 0x01, 0xF0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xF8, - 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x70, 0x3F, 0x80, 0x3E, 0x1F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFF, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xFE, 0x00, 0x1F, - 0xFF, 0x80, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x0F, 0x81, 0xFC, 0x07, - 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x0F, 0xC0, - 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xC0, 0x01, 0xFF, 0xC0, 0x01, 0xFF, 0xC0, - 0x00, 0xFF, 0x80, 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x3C, 0x01, - 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, - 0xFC, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x07, 0xF0, 0x00, - 0x3F, 0xC0, 0x01, 0xFE, 0x00, 0x0F, 0xF8, 0x00, 0x7F, 0xE0, 0x03, 0xFF, - 0x80, 0x1F, 0xBE, 0x00, 0x7C, 0xF0, 0x03, 0xE7, 0xC0, 0x1F, 0x1F, 0x00, - 0xF8, 0x7C, 0x07, 0xE1, 0xE0, 0x3F, 0x07, 0x81, 0xF8, 0x3E, 0x07, 0xC0, - 0xF8, 0x3E, 0x03, 0xC1, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFE, - 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0x80, 0x00, 0xF8, 0x00, 0x3F, 0xF8, 0x01, - 0xFF, 0xE0, 0x07, 0xFF, 0x80, 0x1F, 0xFE, 0x00, 0x7F, 0xF0, 0x01, 0xFF, - 0xFF, 0x00, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0xC0, 0x3F, 0xFF, 0xE0, 0x3F, - 0xFF, 0xE0, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, - 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF7, 0xF0, 0x00, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0x80, 0x3F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x0F, 0x01, 0xFC, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, - 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0xF8, 0x3C, 0x03, 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, - 0xFC, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xF8, 0x00, 0x3F, 0xE0, 0x00, 0x00, - 0x01, 0xFC, 0x00, 0x07, 0xFE, 0x00, 0x1F, 0xFF, 0x00, 0x7F, 0xFF, 0x00, - 0xFF, 0xFE, 0x01, 0xFE, 0x1C, 0x03, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x0F, - 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x3E, 0x00, 0x3E, - 0xFF, 0x80, 0x7D, 0xFF, 0xC0, 0x7F, 0xFF, 0xE0, 0x7F, 0xFF, 0xE0, 0x7F, - 0x87, 0xF0, 0xFF, 0x03, 0xF0, 0xFC, 0x01, 0xF0, 0xF8, 0x01, 0xF0, 0xF8, - 0x01, 0xF0, 0xF8, 0x01, 0xF0, 0xF8, 0x03, 0xE0, 0xF8, 0x03, 0xE0, 0xFC, - 0x07, 0xC0, 0xFE, 0x0F, 0xC0, 0x7F, 0xFF, 0x80, 0x7F, 0xFF, 0x00, 0x3F, - 0xFE, 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0xFF, 0xFD, 0xFF, - 0xFF, 0xE7, 0xFF, 0xFF, 0xBF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFB, 0xE0, 0x07, - 0xCF, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, - 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x1F, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0xFF, - 0xE0, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0xE0, 0x7F, 0xFF, 0xC0, 0xFC, 0x1F, - 0xC3, 0xF0, 0x1F, 0x8F, 0xC0, 0x1F, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0x7C, - 0x7C, 0x01, 0xF0, 0xFC, 0x07, 0xE0, 0xFC, 0x1F, 0x81, 0xFF, 0xFE, 0x01, - 0xFF, 0xF0, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x3F, 0xFF, 0xE0, 0xFE, - 0x0F, 0xC3, 0xF0, 0x0F, 0xC7, 0xC0, 0x0F, 0x9F, 0x00, 0x1F, 0x3E, 0x00, - 0x3E, 0x7C, 0x00, 0xFC, 0xFC, 0x03, 0xF1, 0xFC, 0x1F, 0xE3, 0xFF, 0xFF, - 0x83, 0xFF, 0xFE, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x01, 0xFC, 0x00, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0xF8, 0x00, 0xFF, 0xFC, 0x01, 0xFF, - 0xFE, 0x03, 0xFF, 0xFE, 0x03, 0xF0, 0x7F, 0x07, 0xE0, 0x3F, 0x07, 0xC0, - 0x1F, 0x0F, 0xC0, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, - 0x3F, 0x0F, 0xC0, 0x7F, 0x0F, 0xE1, 0xFF, 0x07, 0xFF, 0xFE, 0x07, 0xFF, - 0xFE, 0x03, 0xFF, 0xBE, 0x01, 0xFF, 0x7C, 0x00, 0xFC, 0x7C, 0x00, 0x00, - 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x0F, - 0xE0, 0x00, 0x1F, 0xC0, 0x38, 0x7F, 0x80, 0x7F, 0xFF, 0x00, 0xFF, 0xFE, - 0x00, 0xFF, 0xF8, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0x07, 0x83, - 0xF1, 0xFC, 0x7F, 0x1F, 0x83, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x1F, 0x8F, 0xE3, 0xF8, 0xFC, - 0x1E, 0x00, 0x00, 0x3C, 0x00, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xC0, - 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF8, 0x03, 0xE0, 0x0F, 0xC0, - 0x1F, 0x00, 0x7C, 0x00, 0xF0, 0x03, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xC0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, - 0x03, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xE0, 0x00, - 0x7F, 0xC0, 0x00, 0xFF, 0x80, 0x03, 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x0F, - 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, - 0x3F, 0xE0, 0x00, 0x0F, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x3F, 0xE0, - 0x00, 0x07, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, - 0x80, 0x1F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, - 0xF3, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x80, 0x00, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, - 0x00, 0x1F, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x7F, - 0xE0, 0x00, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x03, 0xFE, 0x00, 0x07, 0xFC, - 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0x80, - 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFC, 0x01, 0xFF, - 0xE1, 0xFF, 0xFE, 0x3F, 0xFF, 0xE7, 0xFF, 0xFF, 0xF8, 0x1F, 0xFE, 0x00, - 0xFF, 0x80, 0x1F, 0xF0, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x0F, - 0xE0, 0x07, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xC0, 0x0F, 0xE0, - 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xF0, 0x00, 0x3F, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x00, - 0x3F, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0xF0, 0x01, - 0xFF, 0xF0, 0x0F, 0xFF, 0xE0, 0x3F, 0x07, 0xE0, 0x7C, 0x07, 0xC1, 0xE0, - 0x07, 0x87, 0xC0, 0x0F, 0x0F, 0x00, 0x1C, 0x3C, 0x00, 0x78, 0x78, 0x07, - 0xF1, 0xE0, 0x3F, 0xE3, 0xC1, 0xFF, 0x87, 0x87, 0xFF, 0x0E, 0x1F, 0x9E, - 0x3C, 0x7C, 0x3C, 0x78, 0xF0, 0x78, 0xF3, 0xC0, 0xE1, 0xC7, 0x83, 0xC3, - 0x8F, 0x07, 0x8F, 0x1E, 0x0F, 0x1E, 0x3E, 0x1C, 0x3C, 0x7F, 0xFC, 0x78, - 0x7F, 0xFC, 0xF0, 0x7F, 0xF1, 0xE0, 0x3F, 0xE3, 0xC0, 0x00, 0x07, 0x80, - 0x00, 0x0F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3F, 0x01, - 0xC0, 0x7F, 0xFF, 0x80, 0x7F, 0xFE, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0x80, - 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xE0, - 0x00, 0x1F, 0xFF, 0x80, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x0F, 0xFC, 0x00, - 0x00, 0x7F, 0xF0, 0x00, 0x01, 0xE7, 0xC0, 0x00, 0x0F, 0x9F, 0x00, 0x00, - 0x7C, 0x7C, 0x00, 0x01, 0xE1, 0xF8, 0x00, 0x0F, 0x87, 0xE0, 0x00, 0x7C, - 0x0F, 0x80, 0x01, 0xF0, 0x3E, 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x3F, 0xFF, - 0xF0, 0x01, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0xFC, - 0x01, 0xFF, 0xFF, 0xF8, 0x0F, 0xC0, 0x07, 0xE0, 0x3E, 0x00, 0x0F, 0x87, - 0xFF, 0x03, 0xFF, 0xBF, 0xFC, 0x1F, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, - 0xC1, 0xFF, 0xEF, 0xFE, 0x07, 0xFF, 0x00, 0x03, 0xFF, 0xFF, 0x80, 0x3F, - 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, - 0xFF, 0x80, 0x7C, 0x00, 0xFC, 0x03, 0xE0, 0x03, 0xE0, 0x1E, 0x00, 0x1F, - 0x01, 0xF0, 0x00, 0xF8, 0x0F, 0x80, 0x0F, 0x80, 0x7C, 0x01, 0xF8, 0x03, - 0xFF, 0xFF, 0x80, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xFC, 0x03, 0xC0, 0x0F, 0xF0, 0x3E, 0x00, 0x1F, - 0x81, 0xF0, 0x00, 0x7C, 0x0F, 0x80, 0x03, 0xE0, 0x78, 0x00, 0x1F, 0x03, - 0xC0, 0x03, 0xF1, 0xFF, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, - 0xFF, 0x87, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFE, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x03, 0xFF, 0xE6, 0x00, 0x7F, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0x03, - 0xFF, 0xFF, 0xF0, 0x7F, 0x81, 0xFF, 0x0F, 0xE0, 0x07, 0xE1, 0xF8, 0x00, - 0x3E, 0x1F, 0x00, 0x03, 0xE3, 0xF0, 0x00, 0x3C, 0x3E, 0x00, 0x03, 0xC7, - 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0xC0, - 0x00, 0x70, 0x7E, 0x00, 0x1F, 0x07, 0xF8, 0x07, 0xF0, 0x3F, 0xFF, 0xFF, - 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x00, 0x7F, 0xFE, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0xF0, 0x07, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0x00, 0xFE, - 0x01, 0xF0, 0x07, 0xE0, 0x1E, 0x00, 0x3F, 0x01, 0xE0, 0x01, 0xF0, 0x3E, - 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xF0, 0x3E, 0x00, 0x1F, 0x03, 0xC0, 0x01, - 0xF0, 0x7C, 0x00, 0x1F, 0x07, 0xC0, 0x03, 0xF0, 0x7C, 0x00, 0x3E, 0x07, - 0x80, 0x03, 0xE0, 0x78, 0x00, 0x7E, 0x0F, 0x80, 0x07, 0xC0, 0xF8, 0x00, - 0xFC, 0x0F, 0x80, 0x1F, 0x80, 0xF0, 0x07, 0xF0, 0x7F, 0xFF, 0xFE, 0x07, - 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, - 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, - 0xFE, 0x1F, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0x00, 0x78, 0x00, 0xF8, - 0x07, 0xC0, 0x07, 0xC0, 0x3E, 0x00, 0x3E, 0x01, 0xF0, 0xF1, 0xE0, 0x0F, - 0x0F, 0x8E, 0x00, 0x78, 0x7C, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x3F, 0xFE, - 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0xFF, 0xFC, 0x00, - 0x07, 0xC3, 0xC0, 0x00, 0x3E, 0x1E, 0x1E, 0x01, 0xE0, 0xE0, 0xF0, 0x0F, - 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x7C, 0x07, 0xC0, 0x03, 0xE1, 0xFF, 0xFF, - 0xFE, 0x1F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xF8, - 0x1F, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0xC0, - 0x1F, 0x00, 0x0F, 0x80, 0x3E, 0x00, 0x1E, 0x00, 0x78, 0x00, 0x7C, 0x00, - 0xF0, 0x70, 0xF8, 0x03, 0xE1, 0xF0, 0xE0, 0x07, 0xC3, 0xC0, 0x00, 0x0F, - 0xFF, 0x80, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0xFF, - 0xFC, 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x03, 0xC3, 0xE0, 0x00, 0x07, 0x87, - 0xC0, 0x00, 0x1F, 0x07, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x3F, 0xFF, 0x80, - 0x00, 0xFF, 0xFF, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x01, 0xFF, 0xF8, 0x00, - 0x00, 0x00, 0x07, 0xF8, 0x60, 0x03, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xF0, - 0x1F, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xE0, 0x7F, 0x80, 0xFE, 0x0F, 0xE0, - 0x03, 0xE0, 0xF8, 0x00, 0x3C, 0x1F, 0x00, 0x03, 0xC3, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x7F, 0xFC, 0xF8, 0x0F, 0xFF, - 0xEF, 0x80, 0xFF, 0xFE, 0xF8, 0x0F, 0xFF, 0xCF, 0x80, 0x7F, 0xF8, 0xF8, - 0x00, 0x1F, 0x0F, 0xC0, 0x01, 0xF0, 0xFE, 0x00, 0x1F, 0x07, 0xF8, 0x07, - 0xE0, 0x7F, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFC, 0x00, - 0x7F, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x01, 0xFF, 0x0F, 0xF8, 0x0F, - 0xFC, 0x7F, 0xF0, 0x7F, 0xF1, 0xFF, 0xC1, 0xFF, 0xC7, 0xFE, 0x03, 0xFE, - 0x1F, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3C, 0x00, 0x78, 0x00, - 0xF0, 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, - 0x00, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0x80, 0x1F, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xC0, 0x07, 0x80, 0x1F, 0x00, 0x1E, - 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, - 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x07, 0xFE, 0x1F, 0xF8, 0x3F, 0xF8, 0xFF, - 0xF0, 0xFF, 0xE3, 0xFF, 0xC3, 0xFF, 0x8F, 0xFE, 0x0F, 0xFC, 0x3F, 0xF8, - 0x00, 0x03, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xF0, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x07, 0x80, 0x00, 0x07, 0xC0, 0x01, 0xFF, 0xFF, - 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x1F, 0xFF, - 0xF8, 0x00, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0xFC, 0x00, 0x3F, - 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xC0, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x0F, - 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0xC0, 0x07, 0x00, 0x0F, 0x80, - 0x1F, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x78, 0x00, 0x78, 0x01, - 0xF0, 0x01, 0xF0, 0x03, 0xE0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, 0x0F, - 0x80, 0x3F, 0x00, 0x1F, 0xC0, 0xFC, 0x00, 0x7F, 0xFF, 0xF8, 0x00, 0xFF, - 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xC3, 0xFE, 0x0F, 0xFF, 0x8F, 0xFC, 0x1F, - 0xFF, 0x3F, 0xF8, 0x3F, 0xFE, 0x7F, 0xF0, 0x7F, 0xF8, 0x7F, 0xC0, 0x1F, - 0x01, 0xFC, 0x00, 0x3E, 0x07, 0xF0, 0x00, 0x78, 0x3F, 0x80, 0x01, 0xF0, - 0xFE, 0x00, 0x03, 0xE3, 0xF0, 0x00, 0x07, 0xDF, 0xC0, 0x00, 0x0F, 0xFE, - 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0xFF, 0xFE, - 0x00, 0x01, 0xFC, 0xFC, 0x00, 0x03, 0xE0, 0xFC, 0x00, 0x0F, 0x81, 0xF8, - 0x00, 0x1F, 0x01, 0xF8, 0x00, 0x3E, 0x03, 0xF0, 0x00, 0x78, 0x03, 0xE0, - 0x00, 0xF0, 0x07, 0xE0, 0x1F, 0xFE, 0x0F, 0xF8, 0x7F, 0xFC, 0x1F, 0xF8, - 0xFF, 0xF8, 0x1F, 0xF1, 0xFF, 0xF0, 0x3F, 0xE1, 0xFF, 0xC0, 0x7F, 0x80, - 0x03, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0xE0, 0x03, 0xFF, - 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x0E, 0x00, 0xF0, 0x01, 0xE0, 0x3E, 0x00, - 0x7C, 0x07, 0xC0, 0x0F, 0x80, 0xF8, 0x01, 0xF0, 0x1E, 0x00, 0x7C, 0x07, - 0xC0, 0x0F, 0x9F, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, - 0x9F, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x3F, - 0xC1, 0xFF, 0x00, 0x1F, 0xF0, 0x7F, 0xC0, 0x07, 0xFC, 0x1F, 0xF0, 0x03, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x00, 0xFF, 0x80, 0xFF, 0x80, 0x3F, 0xE0, - 0x3F, 0xE0, 0x0F, 0xF8, 0x1F, 0xF0, 0x03, 0xFF, 0x0F, 0xFC, 0x00, 0xF7, - 0xC3, 0xFF, 0x00, 0x7D, 0xF1, 0xF7, 0xC0, 0x1F, 0x7C, 0xFD, 0xF0, 0x07, - 0xDF, 0xBE, 0x78, 0x01, 0xE3, 0xFF, 0x3E, 0x00, 0x78, 0xFF, 0xCF, 0x80, - 0x3E, 0x3F, 0xE3, 0xE0, 0x0F, 0x87, 0xF0, 0xF8, 0x03, 0xE1, 0xFC, 0x3C, - 0x00, 0xF0, 0x7E, 0x1F, 0x00, 0x7C, 0x1F, 0x07, 0xC0, 0x1F, 0x00, 0x01, - 0xF0, 0x07, 0xC0, 0x00, 0x78, 0x07, 0xFE, 0x01, 0xFF, 0x83, 0xFF, 0xC0, - 0xFF, 0xF0, 0xFF, 0xF0, 0x7F, 0xFC, 0x3F, 0xF8, 0x1F, 0xFE, 0x0F, 0xFC, - 0x03, 0xFF, 0x00, 0x07, 0xF8, 0x07, 0xFF, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, - 0xFC, 0x0F, 0xFF, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0xFE, 0x0F, 0xFE, 0x01, - 0xFE, 0x00, 0xF8, 0x01, 0xFF, 0x00, 0xF0, 0x01, 0xFF, 0x01, 0xF0, 0x03, - 0xFF, 0x81, 0xF0, 0x03, 0xFF, 0x81, 0xF0, 0x03, 0xEF, 0xC1, 0xF0, 0x03, - 0xCF, 0xC1, 0xE0, 0x07, 0xC7, 0xE3, 0xE0, 0x07, 0xC7, 0xE3, 0xE0, 0x07, - 0xC3, 0xF3, 0xE0, 0x07, 0xC3, 0xF3, 0xC0, 0x07, 0x81, 0xF7, 0xC0, 0x0F, - 0x81, 0xFF, 0xC0, 0x0F, 0x80, 0xFF, 0xC0, 0x0F, 0x80, 0xFF, 0xC0, 0x0F, - 0x00, 0xFF, 0x80, 0x0F, 0x00, 0x7F, 0x80, 0x7F, 0xF0, 0x7F, 0x80, 0xFF, - 0xF0, 0x3F, 0x80, 0xFF, 0xF0, 0x3F, 0x00, 0xFF, 0xF0, 0x1F, 0x00, 0x7F, - 0xE0, 0x1F, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xFF, - 0xF8, 0x00, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF8, 0x0F, 0xF0, 0x7F, 0x83, - 0xF8, 0x03, 0xF0, 0xFC, 0x00, 0x7E, 0x1F, 0x00, 0x07, 0xE7, 0xE0, 0x00, - 0x7C, 0xF8, 0x00, 0x0F, 0xBE, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x3E, 0xF0, - 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x3E, 0xF8, 0x00, 0x07, - 0xDF, 0x00, 0x00, 0xFB, 0xE0, 0x00, 0x3E, 0x7C, 0x00, 0x0F, 0xCF, 0xC0, - 0x01, 0xF0, 0xF8, 0x00, 0x7E, 0x1F, 0x80, 0x3F, 0x83, 0xFC, 0x1F, 0xE0, - 0x3F, 0xFF, 0xF8, 0x03, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0x00, 0x03, 0xFF, - 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xF8, - 0x07, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0xF0, 0x0F, - 0x80, 0x7F, 0x00, 0xF8, 0x01, 0xF0, 0x0F, 0x00, 0x1F, 0x01, 0xF0, 0x01, - 0xF0, 0x1F, 0x00, 0x1F, 0x01, 0xF0, 0x03, 0xE0, 0x1E, 0x00, 0x7E, 0x01, - 0xE0, 0x0F, 0xC0, 0x3F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, - 0xE0, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7F, 0xFF, - 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xF0, 0x00, - 0x7F, 0xFE, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xFF, 0x80, 0x03, - 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF8, 0x0F, 0xF0, 0x7F, - 0x83, 0xF8, 0x03, 0xF0, 0xFC, 0x00, 0x3F, 0x1F, 0x00, 0x07, 0xE7, 0xC0, - 0x00, 0x7D, 0xF8, 0x00, 0x0F, 0xBE, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x3F, - 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x3E, 0xF8, 0x00, - 0x07, 0xDF, 0x00, 0x01, 0xFB, 0xE0, 0x00, 0x3E, 0x7E, 0x00, 0x0F, 0x8F, - 0xC0, 0x03, 0xF0, 0xFC, 0x01, 0xFC, 0x1F, 0xE0, 0xFF, 0x01, 0xFF, 0xFF, - 0xC0, 0x1F, 0xFF, 0xF0, 0x01, 0xFF, 0xFC, 0x00, 0x1F, 0xFE, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1F, 0xF8, 0x38, 0x0F, 0xFF, 0xFF, - 0x81, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0x00, 0xF0, - 0x1F, 0x80, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x01, 0xFF, - 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0x00, 0x7C, 0x03, - 0xF8, 0x03, 0xE0, 0x07, 0xC0, 0x1E, 0x00, 0x3E, 0x00, 0xF0, 0x01, 0xF0, - 0x0F, 0x80, 0x1F, 0x80, 0x7C, 0x01, 0xF8, 0x03, 0xE0, 0x3F, 0x80, 0x1F, - 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, - 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x1E, 0x07, 0xF0, 0x01, 0xF0, 0x1F, 0xC0, - 0x0F, 0x80, 0x7E, 0x00, 0x7C, 0x03, 0xF8, 0x03, 0xC0, 0x0F, 0xC0, 0xFF, - 0xE0, 0x7F, 0xCF, 0xFF, 0x01, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, - 0x3F, 0xDF, 0xFC, 0x01, 0xFC, 0x00, 0x0F, 0xE1, 0x80, 0x0F, 0xFF, 0xF0, - 0x0F, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xC1, 0xFC, 0x0F, - 0xE0, 0x7C, 0x01, 0xF8, 0x3E, 0x00, 0x3E, 0x0F, 0x80, 0x0F, 0x03, 0xE0, - 0x03, 0xC0, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x07, 0xFF, 0x80, 0x01, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFE, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xE1, 0xE0, 0x00, 0xF8, 0xF8, 0x00, - 0x3E, 0x3E, 0x00, 0x1F, 0x8F, 0xC0, 0x0F, 0xC3, 0xFC, 0x0F, 0xF0, 0xFF, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFE, 0x03, 0x9F, 0xFE, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF7, 0xFF, - 0xFF, 0xFD, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0x9F, 0x07, 0x83, 0xE7, - 0x83, 0xE0, 0xFB, 0xE0, 0xF8, 0x3E, 0xF8, 0x3E, 0x0F, 0x3E, 0x0F, 0x07, - 0xCF, 0x07, 0xC1, 0xF3, 0x81, 0xF0, 0x38, 0x00, 0x7C, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x7C, 0x00, 0x07, 0xFF, 0xF8, 0x01, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, - 0x80, 0x3F, 0xFF, 0xE0, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xF0, 0x7F, 0xE7, - 0xFF, 0x8F, 0xFF, 0x7F, 0xF9, 0xFF, 0xF7, 0xFF, 0x1F, 0xFE, 0x7F, 0xF0, - 0xFF, 0xC1, 0xE0, 0x01, 0xF0, 0x1E, 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xF0, - 0x3E, 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xE0, 0x3C, 0x00, 0x3E, 0x07, 0xC0, - 0x03, 0xE0, 0x7C, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xC0, 0x7C, 0x00, 0x3C, - 0x07, 0x80, 0x07, 0xC0, 0xF8, 0x00, 0x7C, 0x0F, 0x80, 0x07, 0xC0, 0xF8, - 0x00, 0x78, 0x0F, 0x80, 0x0F, 0x80, 0xFC, 0x01, 0xF8, 0x0F, 0xC0, 0x3F, - 0x00, 0xFF, 0x07, 0xE0, 0x07, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xC0, 0x03, - 0xFF, 0xF0, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x7F, 0xF0, - 0x1F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFC, 0x0F, - 0xFF, 0x7F, 0xE0, 0x3F, 0xF8, 0x7C, 0x00, 0x1F, 0x01, 0xF0, 0x00, 0xF8, - 0x07, 0xC0, 0x03, 0xE0, 0x1F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0xF8, 0x00, - 0xF8, 0x03, 0xE0, 0x03, 0xE0, 0x1F, 0x00, 0x0F, 0xC0, 0xFC, 0x00, 0x1F, - 0x03, 0xE0, 0x00, 0x7C, 0x1F, 0x00, 0x01, 0xF0, 0xFC, 0x00, 0x07, 0xC3, - 0xE0, 0x00, 0x1F, 0x9F, 0x00, 0x00, 0x3E, 0xFC, 0x00, 0x00, 0xFB, 0xE0, - 0x00, 0x03, 0xFF, 0x00, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0x7F, 0xF0, 0x3F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0x1E, 0x00, - 0x01, 0xE0, 0xF0, 0x7C, 0x1F, 0x0F, 0x87, 0xE0, 0xF0, 0x7C, 0x3F, 0x0F, - 0x83, 0xE3, 0xF8, 0x7C, 0x1F, 0x1F, 0xE3, 0xC0, 0xF9, 0xFF, 0x3E, 0x07, - 0xCF, 0xF9, 0xF0, 0x3E, 0xFF, 0xCF, 0x01, 0xF7, 0xBE, 0xF8, 0x0F, 0xFD, - 0xF7, 0xC0, 0x7B, 0xCF, 0xFC, 0x03, 0xFE, 0x7F, 0xE0, 0x3F, 0xE3, 0xFF, - 0x01, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, 0x7F, 0x80, 0x7F, 0x83, 0xFC, 0x03, - 0xF8, 0x1F, 0xC0, 0x1F, 0xC0, 0xFE, 0x00, 0xFC, 0x07, 0xF0, 0x07, 0xE0, - 0x3F, 0x00, 0x3E, 0x01, 0xF8, 0x00, 0x01, 0xFE, 0x03, 0xFE, 0x03, 0xFF, - 0x07, 0xFF, 0x07, 0xFF, 0x07, 0xFF, 0x07, 0xFE, 0x07, 0xFE, 0x03, 0xFC, - 0x03, 0xFC, 0x00, 0xFC, 0x03, 0xF0, 0x00, 0xFE, 0x07, 0xE0, 0x00, 0x7E, - 0x1F, 0xC0, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x00, 0x1F, - 0xFC, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, - 0xF8, 0x00, 0x00, 0xFC, 0xFC, 0x00, 0x01, 0xF8, 0x7E, 0x00, 0x03, 0xF0, - 0x7E, 0x00, 0x07, 0xE0, 0x3F, 0x00, 0x0F, 0xC0, 0x1F, 0x80, 0x7F, 0xE0, - 0x7F, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, - 0xFF, 0xE0, 0x7F, 0xC0, 0xFF, 0xC0, 0x7F, 0xC0, 0x7F, 0xFF, 0xF0, 0x3F, - 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0x03, 0xFF, 0x7F, 0x80, 0xFF, 0x87, 0xC0, - 0x1F, 0x01, 0xF8, 0x0F, 0x80, 0x3E, 0x07, 0xC0, 0x0F, 0xC3, 0xE0, 0x01, - 0xF1, 0xF0, 0x00, 0x7E, 0xF8, 0x00, 0x0F, 0xFC, 0x00, 0x03, 0xFE, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x00, 0xF0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x07, 0xFF, 0xF0, 0x03, 0xFF, 0xFE, 0x00, - 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x00, 0x01, 0xFF, - 0xFF, 0xC0, 0x3F, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xE0, - 0x3F, 0xFF, 0xFC, 0x07, 0xC0, 0x3F, 0x00, 0xF8, 0x0F, 0xC0, 0x1F, 0x03, - 0xF0, 0x03, 0xC0, 0xFC, 0x00, 0xF8, 0x3F, 0x00, 0x0E, 0x0F, 0xC0, 0x00, - 0x03, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x07, 0xE0, 0x00, 0x01, 0xF8, 0x0E, 0x00, 0x7E, 0x03, 0xE0, 0x1F, - 0x80, 0x7C, 0x07, 0xE0, 0x0F, 0x01, 0xF8, 0x03, 0xE0, 0x7E, 0x00, 0x7C, - 0x1F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x0F, 0xFF, - 0xFF, 0x81, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, 0x0F, - 0xFC, 0x07, 0xFF, 0x01, 0xFF, 0x80, 0x7C, 0x00, 0x1E, 0x00, 0x07, 0x80, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0xC0, 0x01, - 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x03, 0xE0, 0x00, 0xF8, - 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, - 0x80, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, - 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x00, 0x20, 0x03, 0xC0, 0x3E, 0x01, 0xF0, - 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, 0x0F, 0x80, - 0x7C, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x03, - 0xE0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x03, 0xE0, 0x1F, - 0x00, 0xF8, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x1F, 0x00, 0xF8, - 0x07, 0xC0, 0x3E, 0x00, 0xF0, 0x07, 0x80, 0x38, 0x00, 0xFF, 0xC0, 0x7F, - 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x03, 0xE0, 0x00, 0xF0, - 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, - 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, - 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x7F, 0xE0, 0x3F, 0xF8, - 0x0F, 0xFC, 0x03, 0xFF, 0x00, 0xFF, 0xC0, 0x00, 0x00, 0x08, 0x00, 0x01, - 0xC0, 0x00, 0x3C, 0x00, 0x07, 0xE0, 0x00, 0xFE, 0x00, 0x1F, 0xF0, 0x03, - 0xFF, 0x80, 0xFF, 0xF8, 0x1F, 0xCF, 0xC3, 0xF8, 0xFE, 0x7E, 0x07, 0xEF, - 0xC0, 0x3F, 0xF8, 0x03, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0xE0, 0x7F, 0xFF, - 0xFF, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xEF, 0xFF, 0xFF, 0xFF, 0x00, 0x60, 0xF0, 0xF8, 0x7C, 0x3E, 0x1F, 0x0F, - 0x06, 0x00, 0x3F, 0xE0, 0x03, 0xFF, 0xF8, 0x07, 0xFF, 0xFC, 0x07, 0xFF, - 0xFE, 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x3E, 0x00, 0x7F, 0xFE, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, 0xFC, 0x1F, 0xFF, - 0xFC, 0x3F, 0xFF, 0xFC, 0x7F, 0x00, 0x78, 0x7C, 0x00, 0x78, 0xF8, 0x00, - 0xF8, 0xF8, 0x03, 0xF8, 0xFC, 0x0F, 0xFE, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, - 0xFF, 0x7F, 0xFF, 0xFF, 0x3F, 0xFD, 0xFE, 0x0F, 0xE0, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0xF0, 0xFE, 0x00, 0x0F, 0xBF, 0xFC, 0x00, 0x7F, - 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xC0, 0x1F, 0xFF, 0xFF, 0x00, 0xFF, 0x03, - 0xF8, 0x0F, 0xE0, 0x07, 0xE0, 0x7E, 0x00, 0x3F, 0x03, 0xE0, 0x00, 0xF8, - 0x1F, 0x00, 0x07, 0xC0, 0xF0, 0x00, 0x3E, 0x0F, 0x80, 0x01, 0xF0, 0x7C, - 0x00, 0x1F, 0x03, 0xE0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0xC0, 0xFC, 0x00, - 0x7C, 0x0F, 0xE0, 0x07, 0xE3, 0xFF, 0xC0, 0xFE, 0x3F, 0xFF, 0xFF, 0xE1, - 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xE0, 0x7F, 0x9F, 0xFC, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x00, 0x1F, 0xE3, 0x80, 0x7F, 0xFF, 0xC0, 0x7F, 0xFF, - 0xE0, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF8, 0xFF, 0x01, 0xFC, 0x7E, 0x00, - 0x7C, 0x7E, 0x00, 0x3E, 0x3E, 0x00, 0x0E, 0x3E, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, - 0x00, 0x01, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x0C, 0x7F, 0x80, 0x3F, 0x1F, - 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x00, - 0x0F, 0xFC, 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x7C, 0x00, 0x3F, 0x87, 0xC0, 0x0F, - 0xFF, 0x7C, 0x03, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, - 0x81, 0xFC, 0x0F, 0xF8, 0x3F, 0x00, 0x3F, 0x83, 0xE0, 0x01, 0xF0, 0x7C, - 0x00, 0x1F, 0x07, 0xC0, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, 0x80, 0x01, - 0xF0, 0xF8, 0x00, 0x1E, 0x0F, 0x80, 0x03, 0xE0, 0xF8, 0x00, 0x3E, 0x0F, - 0xC0, 0x07, 0xE0, 0xFC, 0x00, 0xFE, 0x07, 0xF0, 0x3F, 0xF8, 0x7F, 0xFF, - 0xFF, 0xC3, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xC0, 0xFF, 0xE7, 0xF8, - 0x03, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xF0, 0x03, 0xFF, - 0xF8, 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xFE, 0x1F, 0xE0, 0x7E, 0x3F, 0x80, - 0x1F, 0x3F, 0x00, 0x0F, 0x7E, 0x00, 0x0F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x1C, 0x7F, 0x01, 0xFE, 0x7F, 0xFF, - 0xFE, 0x3F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0x03, 0xFF, - 0x00, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xF0, - 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0xE0, 0x01, 0xF0, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x7F, 0xFF, 0xF0, - 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, - 0xFF, 0xE0, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x03, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x0F, - 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0x0F, 0xFE, 0xFF, 0x03, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, - 0x0F, 0xFF, 0xFF, 0xF1, 0xFC, 0x1F, 0xFE, 0x3F, 0x80, 0x7F, 0x03, 0xE0, - 0x03, 0xF0, 0x7E, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xE0, 0xF8, 0x00, 0x3E, - 0x0F, 0x80, 0x03, 0xE0, 0xF8, 0x00, 0x3E, 0x0F, 0x80, 0x03, 0xC0, 0xF8, - 0x00, 0x7C, 0x0F, 0xC0, 0x0F, 0xC0, 0xFC, 0x01, 0xFC, 0x07, 0xF0, 0x7F, - 0x80, 0x7F, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF8, 0x00, - 0xFF, 0xEF, 0x80, 0x03, 0xF0, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0x7E, 0x00, 0x1F, 0xFF, 0xE0, 0x03, 0xFF, 0xFC, 0x00, - 0x3F, 0xFF, 0x80, 0x03, 0xFF, 0xE0, 0x00, 0x3F, 0xF8, 0x00, 0x00, 0x03, - 0xF8, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xE0, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x01, 0xF1, 0xF8, 0x00, 0x79, 0xFF, 0x80, 0x1E, 0xFF, 0xF0, 0x0F, - 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0xFF, 0x07, 0xE0, 0x3F, 0x00, 0xF8, - 0x1F, 0x80, 0x3E, 0x07, 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xC0, 0x7C, 0x00, - 0xF0, 0x1E, 0x00, 0x7C, 0x0F, 0x80, 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0xF8, - 0x01, 0xE0, 0x3C, 0x00, 0xF8, 0x0F, 0x00, 0x3E, 0x1F, 0xF8, 0x3F, 0xEF, - 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0x3F, - 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x01, 0xFF, 0xC0, 0x07, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x1F, 0xFC, 0x00, - 0x3F, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, - 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x01, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x3F, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x07, - 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x01, 0xFF, 0xFE, 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xF8, 0x1F, 0xFF, 0xF0, - 0x3F, 0xFF, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xC0, 0x00, - 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF8, 0x00, 0x01, - 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, - 0xFF, 0xFF, 0x03, 0xFF, 0xFC, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0xC0, 0x0F, - 0xFC, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0xC0, - 0x00, 0x1F, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x3C, 0x3F, 0xF0, - 0x1F, 0x1F, 0xFC, 0x07, 0xC7, 0xFF, 0x01, 0xF1, 0xFF, 0xC0, 0x78, 0x7F, - 0xE0, 0x1E, 0x7F, 0x80, 0x0F, 0xBF, 0x80, 0x03, 0xFF, 0xC0, 0x00, 0xFF, - 0xC0, 0x00, 0x3F, 0xE0, 0x00, 0x0F, 0xFC, 0x00, 0x07, 0xFF, 0x80, 0x01, - 0xF7, 0xF0, 0x00, 0x7C, 0xFE, 0x00, 0x1E, 0x1F, 0xC0, 0x0F, 0x83, 0xF8, - 0x1F, 0xE0, 0xFF, 0xEF, 0xF8, 0x3F, 0xFB, 0xFE, 0x1F, 0xFE, 0xFF, 0x07, - 0xFF, 0x9F, 0xC0, 0xFF, 0xC0, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0xC0, 0x03, - 0xFF, 0x80, 0x07, 0xFF, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, - 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x7F, 0xFF, 0xF9, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0x00, 0x00, 0x07, 0x81, 0xE0, - 0x3F, 0xBF, 0x9F, 0xE1, 0xFF, 0xFE, 0xFF, 0x87, 0xFF, 0xFF, 0xFF, 0x1F, - 0xFF, 0xFF, 0xFC, 0x7F, 0xC7, 0xF1, 0xF0, 0x7E, 0x1F, 0x87, 0xC1, 0xF0, - 0x7C, 0x1F, 0x07, 0x81, 0xE0, 0x7C, 0x1E, 0x0F, 0x81, 0xE0, 0xF8, 0x3E, - 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3C, 0x0F, 0x03, - 0xC1, 0xF0, 0x7C, 0x0F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF1, - 0xFE, 0x1F, 0x87, 0xEF, 0xFC, 0x7F, 0x1F, 0xFF, 0xF3, 0xFC, 0x7F, 0xFF, - 0xCF, 0xF3, 0xFF, 0xFE, 0x3F, 0x8F, 0xE0, 0x00, 0x01, 0xF8, 0x01, 0xF9, - 0xFF, 0x80, 0xFE, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0x83, - 0xFF, 0x07, 0xE0, 0x3F, 0x00, 0xF8, 0x1F, 0x80, 0x3E, 0x07, 0xC0, 0x0F, - 0x81, 0xF0, 0x03, 0xC0, 0x7C, 0x00, 0xF0, 0x1E, 0x00, 0x7C, 0x0F, 0x80, - 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0xF8, 0x01, 0xE0, 0x3C, 0x00, 0xF8, 0x0F, - 0x00, 0x3E, 0x1F, 0xF8, 0x3F, 0xEF, 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, - 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0x3F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, - 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0xFF, - 0x03, 0xF8, 0xFE, 0x00, 0xFE, 0x7C, 0x00, 0x3F, 0x7C, 0x00, 0x0F, 0xBE, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, - 0xC0, 0x00, 0xFB, 0xE0, 0x00, 0xFD, 0xF8, 0x00, 0x7C, 0xFE, 0x00, 0xFE, - 0x3F, 0x81, 0xFE, 0x1F, 0xFF, 0xFE, 0x07, 0xFF, 0xFE, 0x01, 0xFF, 0xFC, - 0x00, 0x7F, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x07, - 0xF9, 0xFF, 0xC0, 0x1F, 0xF7, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0xC0, 0x7F, - 0xFF, 0xFF, 0xC0, 0x7F, 0xF0, 0x3F, 0x80, 0x3F, 0x80, 0x1F, 0x80, 0x7E, - 0x00, 0x3F, 0x00, 0xF8, 0x00, 0x3E, 0x01, 0xF0, 0x00, 0x7C, 0x03, 0xC0, - 0x00, 0xF8, 0x0F, 0x80, 0x01, 0xF0, 0x1F, 0x00, 0x07, 0xE0, 0x3E, 0x00, - 0x0F, 0x80, 0x7C, 0x00, 0x3F, 0x01, 0xFC, 0x00, 0xFC, 0x03, 0xFE, 0x07, - 0xF8, 0x07, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0x80, 0x1E, 0xFF, 0xFC, - 0x00, 0x7C, 0xFF, 0xF0, 0x00, 0xF8, 0x7F, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x1F, - 0xFF, 0x80, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x07, 0xFF, 0x3F, 0xC0, 0xFF, 0xFD, 0xFE, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, - 0xFF, 0xFF, 0x8F, 0xE0, 0x7F, 0xF8, 0xFC, 0x00, 0xFE, 0x07, 0xC0, 0x03, - 0xE0, 0x7C, 0x00, 0x1F, 0x03, 0xE0, 0x00, 0xF8, 0x1E, 0x00, 0x07, 0xC1, - 0xF0, 0x00, 0x3E, 0x0F, 0x80, 0x01, 0xE0, 0x7C, 0x00, 0x1F, 0x03, 0xF0, - 0x01, 0xF8, 0x1F, 0x80, 0x1F, 0xC0, 0xFF, 0x03, 0xFC, 0x03, 0xFF, 0xFF, - 0xE0, 0x1F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xF8, 0x00, 0xFF, 0xE7, 0xC0, - 0x01, 0xFC, 0x3C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xFF, 0x80, 0x00, 0x7F, - 0xFE, 0x00, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0xFF, 0xF0, - 0x00, 0x00, 0x00, 0x0F, 0x80, 0x3F, 0xC3, 0xFE, 0x07, 0xFC, 0xFF, 0xE0, - 0x7F, 0xDF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0x1C, 0x00, 0x7F, - 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xC0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, - 0xFF, 0xF0, 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xCE, 0x03, 0xFF, 0xFC, - 0x0F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC3, 0xF8, 0x0F, 0x87, - 0xC0, 0x0E, 0x0F, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xFF, 0x80, 0x3F, - 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, 0x1F, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x00, - 0x3F, 0x1C, 0x00, 0x3E, 0x7C, 0x00, 0x7C, 0xFC, 0x03, 0xF3, 0xFF, 0xFF, - 0xE7, 0xFF, 0xFF, 0x8F, 0xFF, 0xFE, 0x1F, 0xFF, 0xF0, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, - 0x80, 0x00, 0x78, 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xE1, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xE0, 0x00, - 0x1E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3C, 0x00, - 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, 0xF7, 0xFF, - 0xFF, 0x7F, 0xFF, 0xF3, 0xFF, 0xFE, 0x1F, 0xFF, 0x80, 0x7F, 0x80, 0x7F, - 0x01, 0xFF, 0xFE, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xE0, - 0x3F, 0xC7, 0xC0, 0x07, 0x8F, 0x80, 0x1F, 0x3E, 0x00, 0x3E, 0x7C, 0x00, - 0x7C, 0xF8, 0x00, 0xF1, 0xF0, 0x03, 0xE3, 0xE0, 0x07, 0xC7, 0xC0, 0x0F, - 0x8F, 0x80, 0x1F, 0x1F, 0x00, 0x7C, 0x3E, 0x01, 0xF8, 0x7E, 0x0F, 0xFC, - 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xF1, 0xFF, 0xEF, 0xE1, 0xFF, 0xBF, 0x80, - 0xFC, 0x00, 0x00, 0x7F, 0xF0, 0x7F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, - 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xE1, 0xF8, 0x03, 0xE0, - 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x07, 0xC0, 0x0F, 0x80, 0xF8, 0x00, 0xFC, - 0x1F, 0x80, 0x07, 0xC1, 0xF0, 0x00, 0x7C, 0x3E, 0x00, 0x07, 0xE7, 0xE0, - 0x00, 0x3E, 0x7C, 0x00, 0x03, 0xEF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x03, - 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7F, 0xC0, 0x1F, 0xEF, 0xFC, 0x03, 0xFF, - 0xFF, 0xC0, 0x7F, 0xFF, 0xFC, 0x07, 0xFE, 0x7F, 0x80, 0x3F, 0xC3, 0xE1, - 0xF0, 0xF8, 0x3E, 0x3F, 0x0F, 0x03, 0xE3, 0xF1, 0xF0, 0x3E, 0x7F, 0x1E, - 0x03, 0xE7, 0xF3, 0xE0, 0x3E, 0xFF, 0xBC, 0x03, 0xFF, 0xFF, 0xC0, 0x3F, - 0xFF, 0xFC, 0x03, 0xFE, 0xFF, 0x80, 0x3F, 0xEF, 0xF8, 0x03, 0xFC, 0xFF, - 0x00, 0x3F, 0x8F, 0xF0, 0x03, 0xF8, 0x7E, 0x00, 0x3F, 0x07, 0xE0, 0x01, - 0xF0, 0x7C, 0x00, 0x1E, 0x07, 0xC0, 0x00, 0x03, 0xFE, 0x0F, 0xF8, 0x3F, - 0xF0, 0xFF, 0xC1, 0xFF, 0x8F, 0xFE, 0x0F, 0xFC, 0x7F, 0xF0, 0x7F, 0xC1, - 0xFF, 0x00, 0xFE, 0x1F, 0xC0, 0x03, 0xF9, 0xFC, 0x00, 0x0F, 0xFF, 0xC0, - 0x00, 0x3F, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x7F, 0xE0, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0xFE, 0xFE, 0x00, 0x0F, 0xE3, - 0xF8, 0x00, 0xFE, 0x0F, 0xE0, 0x3F, 0xE0, 0x7F, 0xC3, 0xFF, 0x87, 0xFF, - 0x3F, 0xFC, 0x7F, 0xF9, 0xFF, 0xE3, 0xFF, 0x87, 0xFE, 0x0F, 0xF8, 0x00, - 0x01, 0xFE, 0x03, 0xFE, 0x03, 0xFF, 0x07, 0xFF, 0x07, 0xFF, 0x07, 0xFF, - 0x07, 0xFF, 0x07, 0xFE, 0x03, 0xFC, 0x03, 0xFC, 0x01, 0xF8, 0x01, 0xF0, - 0x00, 0xF8, 0x03, 0xF0, 0x00, 0xF8, 0x03, 0xE0, 0x00, 0xFC, 0x07, 0xC0, - 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x7E, 0x1F, 0x00, - 0x00, 0x7E, 0x3E, 0x00, 0x00, 0x3E, 0x7C, 0x00, 0x00, 0x3E, 0x7C, 0x00, - 0x00, 0x3F, 0xF8, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, - 0x07, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, - 0xE0, 0xFF, 0xFF, 0xE0, 0x7C, 0x0F, 0xE0, 0x3C, 0x0F, 0xE0, 0x1E, 0x0F, - 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, - 0x80, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0xF0, 0x3F, - 0x00, 0xF8, 0x3F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0x80, 0x00, 0x0F, 0x00, 0x1F, 0xC0, 0x1F, - 0xE0, 0x1F, 0xF0, 0x0F, 0xE0, 0x0F, 0xC0, 0x07, 0xC0, 0x07, 0xC0, 0x03, - 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x78, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x3F, 0x80, 0x3F, 0xC0, 0x1F, 0xC0, - 0x0F, 0xE0, 0x07, 0xF8, 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, - 0x80, 0x07, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, - 0x7E, 0x00, 0x3F, 0x80, 0x1F, 0xE0, 0x07, 0xF0, 0x03, 0xF8, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x3E, - 0x07, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0xF8, 0x1F, 0x03, 0xC0, 0x78, 0x0F, - 0x03, 0xE0, 0x7C, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xF0, 0x3C, 0x07, - 0x80, 0xF0, 0x3E, 0x07, 0xC0, 0xF0, 0x1E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, - 0xC0, 0x70, 0x00, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0x7F, 0x00, 0x3F, 0xC0, - 0x0F, 0xE0, 0x03, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x0F, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0xF8, 0x00, 0x7E, 0x00, 0x3F, 0xC0, 0x0F, 0xE0, 0x07, 0xF0, 0x07, 0xF8, - 0x07, 0xF8, 0x03, 0xE0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF0, 0x00, 0x78, - 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x1F, 0x80, 0x7F, - 0xC0, 0x7F, 0xC0, 0x3F, 0xC0, 0x1F, 0xC0, 0x07, 0x80, 0x00, 0x03, 0xE0, - 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xE0, 0x39, 0xFF, 0xE0, 0xF7, 0xFF, 0xE7, - 0xFF, 0xCF, 0xFF, 0xFE, 0x0F, 0xFF, 0x38, 0x0F, 0xFC, 0x00, 0x0F, 0xE0, - 0x00, 0x0F, 0x80}; - -const GFXglyph FreeMonoBoldOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 12, 31, 28, 12, -29}, // 0x21 '!' - {47, 17, 14, 28, 11, -28}, // 0x22 '"' - {77, 24, 34, 28, 5, -30}, // 0x23 '#' - {179, 25, 38, 28, 4, -31}, // 0x24 '$' - {298, 22, 30, 28, 6, -28}, // 0x25 '%' - {381, 21, 28, 28, 5, -26}, // 0x26 '&' - {455, 7, 14, 28, 16, -28}, // 0x27 ''' - {468, 14, 37, 28, 14, -29}, // 0x28 '(' - {533, 14, 37, 28, 5, -29}, // 0x29 ')' - {598, 21, 19, 28, 8, -28}, // 0x2A '*' - {648, 24, 26, 28, 5, -25}, // 0x2B '+' - {726, 12, 14, 28, 6, -6}, // 0x2C ',' - {747, 24, 5, 28, 5, -15}, // 0x2D '-' - {762, 7, 6, 28, 11, -4}, // 0x2E '.' - {768, 28, 38, 28, 3, -32}, // 0x2F '/' - {901, 23, 31, 28, 6, -29}, // 0x30 '0' - {991, 21, 30, 28, 4, -29}, // 0x31 '1' - {1070, 26, 30, 28, 3, -29}, // 0x32 '2' - {1168, 25, 31, 28, 4, -29}, // 0x33 '3' - {1265, 22, 28, 28, 5, -27}, // 0x34 '4' - {1342, 25, 31, 28, 4, -29}, // 0x35 '5' - {1439, 24, 31, 28, 7, -29}, // 0x36 '6' - {1532, 22, 30, 28, 9, -29}, // 0x37 '7' - {1615, 23, 31, 28, 6, -29}, // 0x38 '8' - {1705, 24, 31, 28, 5, -29}, // 0x39 '9' - {1798, 10, 22, 28, 11, -20}, // 0x3A ':' - {1826, 15, 28, 28, 5, -20}, // 0x3B ';' - {1879, 25, 21, 28, 5, -23}, // 0x3C '<' - {1945, 26, 14, 28, 4, -19}, // 0x3D '=' - {1991, 25, 22, 28, 4, -23}, // 0x3E '>' - {2060, 19, 29, 28, 10, -27}, // 0x3F '?' - {2129, 23, 36, 28, 5, -28}, // 0x40 '@' - {2233, 30, 27, 28, 0, -26}, // 0x41 'A' - {2335, 29, 27, 28, 1, -26}, // 0x42 'B' - {2433, 28, 29, 28, 3, -27}, // 0x43 'C' - {2535, 28, 27, 28, 1, -26}, // 0x44 'D' - {2630, 29, 27, 28, 1, -26}, // 0x45 'E' - {2728, 31, 27, 28, 0, -26}, // 0x46 'F' - {2833, 28, 29, 28, 3, -27}, // 0x47 'G' - {2935, 30, 27, 28, 1, -26}, // 0x48 'H' - {3037, 25, 27, 28, 3, -26}, // 0x49 'I' - {3122, 31, 28, 28, 0, -26}, // 0x4A 'J' - {3231, 31, 27, 28, 0, -26}, // 0x4B 'K' - {3336, 27, 27, 28, 1, -26}, // 0x4C 'L' - {3428, 34, 27, 28, 0, -26}, // 0x4D 'M' - {3543, 32, 27, 28, 1, -26}, // 0x4E 'N' - {3651, 27, 29, 28, 3, -27}, // 0x4F 'O' - {3749, 28, 27, 28, 1, -26}, // 0x50 'P' - {3844, 27, 35, 28, 3, -27}, // 0x51 'Q' - {3963, 29, 27, 28, 0, -26}, // 0x52 'R' - {4061, 26, 29, 28, 3, -27}, // 0x53 'S' - {4156, 26, 27, 28, 4, -26}, // 0x54 'T' - {4244, 28, 28, 28, 4, -26}, // 0x55 'U' - {4342, 30, 27, 28, 2, -26}, // 0x56 'V' - {4444, 29, 27, 28, 3, -26}, // 0x57 'W' - {4542, 32, 27, 28, 0, -26}, // 0x58 'X' - {4650, 26, 27, 28, 4, -26}, // 0x59 'Y' - {4738, 27, 27, 28, 2, -26}, // 0x5A 'Z' - {4830, 18, 37, 28, 10, -29}, // 0x5B '[' - {4914, 13, 38, 28, 10, -32}, // 0x5C '\' - {4976, 18, 37, 28, 5, -29}, // 0x5D ']' - {5060, 20, 15, 28, 8, -29}, // 0x5E '^' - {5098, 29, 5, 28, -2, 5}, // 0x5F '_' - {5117, 8, 8, 28, 13, -30}, // 0x60 '`' - {5125, 24, 23, 28, 3, -21}, // 0x61 'a' - {5194, 29, 31, 28, 0, -29}, // 0x62 'b' - {5307, 25, 23, 28, 3, -21}, // 0x63 'c' - {5379, 28, 31, 28, 3, -29}, // 0x64 'd' - {5488, 24, 23, 28, 3, -21}, // 0x65 'e' - {5557, 28, 30, 28, 4, -29}, // 0x66 'f' - {5662, 28, 31, 28, 3, -21}, // 0x67 'g' - {5771, 26, 30, 28, 2, -29}, // 0x68 'h' - {5869, 23, 29, 28, 3, -28}, // 0x69 'i' - {5953, 23, 38, 28, 3, -28}, // 0x6A 'j' - {6063, 26, 30, 28, 2, -29}, // 0x6B 'k' - {6161, 23, 30, 28, 3, -29}, // 0x6C 'l' - {6248, 30, 22, 28, 0, -21}, // 0x6D 'm' - {6331, 26, 22, 28, 2, -21}, // 0x6E 'n' - {6403, 25, 23, 28, 3, -21}, // 0x6F 'o' - {6475, 31, 31, 28, -1, -21}, // 0x70 'p' - {6596, 29, 31, 28, 2, -21}, // 0x71 'q' - {6709, 28, 22, 28, 2, -21}, // 0x72 'r' - {6786, 23, 23, 28, 4, -21}, // 0x73 's' - {6853, 20, 28, 28, 5, -26}, // 0x74 't' - {6923, 23, 22, 28, 5, -20}, // 0x75 'u' - {6987, 28, 21, 28, 3, -20}, // 0x76 'v' - {7061, 28, 21, 28, 3, -20}, // 0x77 'w' - {7135, 29, 21, 28, 1, -20}, // 0x78 'x' - {7212, 32, 30, 28, -1, -20}, // 0x79 'y' - {7332, 25, 21, 28, 4, -20}, // 0x7A 'z' - {7398, 17, 37, 28, 10, -29}, // 0x7B '{' - {7477, 11, 36, 28, 11, -28}, // 0x7C '|' - {7527, 17, 37, 28, 6, -29}, // 0x7D '}' - {7606, 23, 10, 28, 5, -17}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique24pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique24pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique24pt7bGlyphs, 0x20, 0x7E, 47}; - -// Approx. 8307 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h deleted file mode 100644 index 86d3e9c..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h +++ /dev/null @@ -1,205 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique9pt7bBitmaps[] PROGMEM = { - 0x39, 0xCC, 0x67, 0x31, 0x8C, 0x07, 0x38, 0x6C, 0xD9, 0x36, 0x48, 0x80, - 0x09, 0x0D, 0x86, 0xCF, 0xF7, 0xF9, 0xB3, 0xFD, 0xFE, 0x6C, 0x36, 0x1B, - 0x00, 0x00, 0x06, 0x07, 0x07, 0xE6, 0x33, 0x01, 0xE0, 0x7C, 0x06, 0x43, - 0x33, 0xBF, 0x83, 0x03, 0x00, 0x80, 0x1C, 0x11, 0x10, 0x88, 0x83, 0xB8, - 0xF3, 0xB8, 0x22, 0x21, 0x11, 0x07, 0x00, 0x0F, 0x1F, 0x30, 0x30, 0x38, - 0x7B, 0xDF, 0xCE, 0xFF, 0x7E, 0xFA, 0x80, 0x19, 0x8C, 0xC6, 0x63, 0x18, - 0xC6, 0x31, 0xC6, 0x30, 0x31, 0xC6, 0x31, 0x8C, 0x63, 0x31, 0x98, 0xCC, - 0x40, 0x08, 0x08, 0xFF, 0xFF, 0x38, 0x6C, 0x6C, 0x0C, 0x06, 0x03, 0x1F, - 0xFF, 0xF8, 0xC0, 0x60, 0x30, 0x10, 0x00, 0x36, 0x4C, 0x80, 0xFF, 0xFF, - 0xC0, 0xFC, 0x00, 0x00, 0x0C, 0x03, 0x00, 0xC0, 0x18, 0x06, 0x01, 0x80, - 0x30, 0x0C, 0x03, 0x00, 0x60, 0x18, 0x06, 0x00, 0xC0, 0x30, 0x00, 0x0F, - 0x0F, 0xCC, 0x6C, 0x36, 0x1B, 0x0D, 0x05, 0x86, 0xC3, 0x63, 0x3F, 0x8F, - 0x00, 0x06, 0x1C, 0x3C, 0x6C, 0x0C, 0x0C, 0x08, 0x18, 0x18, 0x18, 0xFE, - 0xFE, 0x07, 0x83, 0xF1, 0x8C, 0x43, 0x00, 0xC0, 0xE0, 0x70, 0x38, 0x38, - 0x1C, 0x6F, 0xF3, 0xFC, 0x1F, 0x1F, 0xC0, 0x60, 0x30, 0x30, 0x70, 0x38, - 0x06, 0x03, 0x03, 0xBF, 0x9F, 0x80, 0x03, 0x07, 0x0B, 0x1B, 0x32, 0x66, - 0xFF, 0xFF, 0x1E, 0x1E, 0x3F, 0x9F, 0x98, 0x0F, 0xC7, 0xF3, 0x18, 0x0C, - 0x06, 0x06, 0x7F, 0x1E, 0x00, 0x07, 0x87, 0xCE, 0x06, 0x06, 0x03, 0xF3, - 0xFD, 0xC6, 0xC3, 0x63, 0xBF, 0x8F, 0x80, 0xFF, 0xFF, 0xC3, 0x06, 0x06, - 0x0C, 0x18, 0x18, 0x30, 0x30, 0x60, 0x1F, 0x1F, 0xDC, 0x6C, 0x36, 0x31, - 0xF1, 0xF8, 0xC6, 0xC3, 0x63, 0xBF, 0x8F, 0x80, 0x1E, 0x3F, 0x33, 0x63, - 0x63, 0x67, 0x7F, 0x3E, 0x06, 0x1C, 0xF8, 0xF0, 0x77, 0x00, 0x00, 0xEE, - 0x1C, 0x70, 0x00, 0x00, 0x03, 0x0C, 0x61, 0x08, 0x00, 0x00, 0xC1, 0xE1, - 0xE1, 0xE0, 0xF0, 0x07, 0x00, 0xF0, 0x0C, 0x7F, 0xDF, 0xF0, 0x00, 0x00, - 0x7F, 0xFF, 0xF0, 0x30, 0x0F, 0x00, 0xE0, 0x1E, 0x07, 0xC7, 0x87, 0x83, - 0x00, 0x7D, 0xFF, 0x18, 0x30, 0xE3, 0x9C, 0x30, 0x01, 0xC3, 0x80, 0x0F, - 0x0F, 0xCC, 0x6C, 0x36, 0x72, 0x79, 0x7D, 0xB6, 0xDA, 0x6F, 0xB3, 0xD8, - 0x0C, 0x07, 0xE1, 0xE0, 0x0F, 0x83, 0xF0, 0x1E, 0x03, 0xC0, 0xD8, 0x31, - 0x87, 0xF1, 0xFE, 0x30, 0xDF, 0x3F, 0xC7, 0x80, 0x3F, 0xC7, 0xFC, 0x61, - 0x8C, 0x31, 0xFC, 0x3F, 0x84, 0x19, 0x83, 0x30, 0x6F, 0xFB, 0xFE, 0x00, - 0x0F, 0xF1, 0xFF, 0x30, 0x66, 0x06, 0x60, 0x0C, 0x00, 0xC0, 0x0C, 0x00, - 0xE0, 0xC7, 0xF8, 0x3F, 0x00, 0x3F, 0x87, 0xF8, 0x63, 0x8C, 0x31, 0x06, - 0x60, 0xCC, 0x19, 0x86, 0x31, 0xCF, 0xF3, 0xF8, 0x00, 0x3F, 0xE3, 0xFE, - 0x18, 0x61, 0xB6, 0x1F, 0x01, 0xF0, 0x32, 0x03, 0x00, 0x30, 0x4F, 0xFC, - 0xFF, 0xC0, 0x3F, 0xF3, 0xFE, 0x18, 0x61, 0xB6, 0x1F, 0x03, 0xF0, 0x32, - 0x03, 0x00, 0x30, 0x0F, 0xC0, 0xFC, 0x00, 0x0F, 0xE3, 0xFC, 0xC1, 0x30, - 0x06, 0x01, 0x80, 0x31, 0xF6, 0x3E, 0xE1, 0x9F, 0xF0, 0xF8, 0x00, 0x1E, - 0xF3, 0xCF, 0x18, 0x61, 0x84, 0x10, 0xC3, 0xFC, 0x3F, 0xC3, 0x08, 0x31, - 0x8F, 0xBC, 0xFB, 0xC0, 0x3F, 0xCF, 0xF0, 0x60, 0x10, 0x0C, 0x03, 0x00, - 0xC0, 0x20, 0x18, 0x3F, 0xCF, 0xF0, 0x07, 0xF0, 0x7F, 0x00, 0x80, 0x18, - 0x01, 0x80, 0x18, 0x61, 0x84, 0x10, 0xC3, 0x0F, 0xE0, 0x7C, 0x00, 0x3E, - 0xE7, 0xFC, 0x66, 0x0D, 0x81, 0x60, 0x7C, 0x0E, 0xC1, 0x98, 0x31, 0x1F, - 0x3B, 0xE7, 0x00, 0x3F, 0x07, 0xE0, 0x30, 0x06, 0x00, 0xC0, 0x10, 0x06, - 0x00, 0xC3, 0x18, 0x6F, 0xFB, 0xFF, 0x00, 0x38, 0x39, 0xC3, 0xC7, 0x3C, - 0x79, 0xE3, 0xDA, 0x1F, 0xF0, 0x9D, 0x8C, 0xCC, 0x60, 0x67, 0xCF, 0x3C, - 0x78, 0x3C, 0xF9, 0xE7, 0x87, 0x18, 0x3C, 0xC1, 0x66, 0x1B, 0xB0, 0xCD, - 0x06, 0x78, 0x31, 0xC3, 0xCE, 0x3E, 0x30, 0x0F, 0x0F, 0xE7, 0x1D, 0x83, - 0xC0, 0xF0, 0x3C, 0x0F, 0x06, 0xE3, 0x9F, 0xC3, 0xC0, 0x3F, 0xC7, 0xFC, - 0x61, 0x8C, 0x31, 0x8E, 0x3F, 0x87, 0xE1, 0x80, 0x30, 0x0F, 0xC3, 0xF0, - 0x00, 0x0F, 0x0F, 0xE7, 0x1D, 0x83, 0xC0, 0xF0, 0x3C, 0x0F, 0x06, 0xE3, - 0x1F, 0xC3, 0xC0, 0x80, 0x7F, 0x3F, 0xC0, 0x3F, 0xC3, 0xFE, 0x18, 0x61, - 0x86, 0x10, 0xE3, 0xFC, 0x3F, 0x83, 0x18, 0x31, 0xCF, 0x8F, 0xF8, 0x70, - 0x1E, 0xCF, 0xF7, 0x19, 0x80, 0x70, 0x1F, 0x81, 0xF3, 0x0C, 0xC3, 0x3F, - 0x8B, 0xC0, 0x7F, 0xCF, 0xF9, 0x93, 0x66, 0x60, 0xC0, 0x18, 0x02, 0x00, - 0xC0, 0x18, 0x0F, 0xC1, 0xF8, 0x00, 0xF9, 0xFF, 0x7D, 0x83, 0x30, 0x64, - 0x09, 0x83, 0x30, 0x66, 0x0C, 0xE3, 0x0F, 0xC0, 0xF0, 0x00, 0xF9, 0xFE, - 0x3D, 0x83, 0x30, 0xC6, 0x30, 0xE6, 0x0D, 0x81, 0xB0, 0x3C, 0x07, 0x00, - 0x60, 0x00, 0xF9, 0xFF, 0x3D, 0x83, 0x36, 0x64, 0xC8, 0xBF, 0x35, 0xE7, - 0xB8, 0xE7, 0x1C, 0xE3, 0x18, 0x00, 0x3C, 0xF3, 0xCF, 0x1C, 0xC0, 0xD8, - 0x0F, 0x00, 0x60, 0x0F, 0x01, 0xB8, 0x31, 0x8F, 0x3C, 0xF3, 0xC0, 0x79, - 0xEE, 0x38, 0xC6, 0x19, 0x81, 0xE0, 0x38, 0x06, 0x00, 0xC0, 0x18, 0x0F, - 0xC3, 0xF8, 0x00, 0x3F, 0xCF, 0xF3, 0x18, 0xCC, 0x06, 0x03, 0x01, 0x80, - 0xC6, 0x61, 0xBF, 0xCF, 0xF0, 0x1E, 0x3C, 0xC1, 0x83, 0x06, 0x08, 0x30, - 0x60, 0xC1, 0x06, 0x0F, 0x1E, 0x00, 0x06, 0x31, 0x86, 0x31, 0x8C, 0x31, - 0x8C, 0x61, 0x8C, 0x60, 0x1E, 0x78, 0x30, 0x60, 0xC1, 0x86, 0x0C, 0x18, - 0x30, 0x41, 0x8F, 0x1E, 0x00, 0x08, 0x1C, 0x3C, 0x76, 0xE7, 0xC3, 0x7F, - 0xFF, 0xFC, 0x88, 0x80, 0x0F, 0x07, 0xE1, 0xF9, 0xFE, 0xE3, 0x30, 0xCF, - 0xFD, 0xFF, 0x38, 0x07, 0x00, 0x60, 0x0F, 0xC1, 0xFC, 0x71, 0xCC, 0x19, - 0x83, 0x30, 0xDF, 0xFB, 0xBC, 0x00, 0x1F, 0xCF, 0xF6, 0x1B, 0x00, 0xC0, - 0x30, 0x0F, 0xF1, 0xF8, 0x01, 0xE0, 0x38, 0x03, 0x0F, 0x63, 0xFC, 0xC3, - 0x30, 0x66, 0x0C, 0xC3, 0x9F, 0xF9, 0xF7, 0x00, 0x1F, 0x1F, 0xD8, 0x3F, - 0xFF, 0xFE, 0x1B, 0xFC, 0xF8, 0x07, 0xC3, 0xF1, 0x81, 0xFE, 0x7F, 0x84, - 0x03, 0x00, 0xC0, 0x30, 0x3F, 0x8F, 0xE0, 0x1E, 0xE7, 0xFD, 0x86, 0x60, - 0xCC, 0x19, 0xC6, 0x3F, 0xC1, 0xD8, 0x03, 0x00, 0xE1, 0xF8, 0x3E, 0x00, - 0x38, 0x1E, 0x01, 0x00, 0xDC, 0x3F, 0x8C, 0x62, 0x19, 0x84, 0x63, 0x3D, - 0xFF, 0x7C, 0x06, 0x03, 0x00, 0x03, 0xC3, 0xE0, 0x20, 0x30, 0x18, 0x0C, - 0x3F, 0xFF, 0xE0, 0x01, 0x81, 0x80, 0x07, 0xF3, 0xF8, 0x0C, 0x04, 0x06, - 0x03, 0x01, 0x80, 0xC0, 0x40, 0x67, 0xE3, 0xE0, 0x38, 0x0E, 0x01, 0x80, - 0x4F, 0x37, 0xCF, 0x83, 0xC0, 0xF0, 0x26, 0x39, 0xEE, 0x78, 0x1F, 0x0F, - 0x01, 0x80, 0xC0, 0x60, 0x20, 0x30, 0x18, 0x0C, 0x3F, 0xFF, 0xE0, 0x7E, - 0xE7, 0xFF, 0x33, 0x32, 0x63, 0x66, 0x36, 0x62, 0xF7, 0x7F, 0x67, 0x77, - 0x8F, 0xF8, 0xC3, 0x10, 0x66, 0x08, 0xC3, 0x3C, 0x7F, 0x8F, 0x1F, 0x0F, - 0xE6, 0x1F, 0x03, 0xC0, 0xF8, 0x67, 0xF0, 0xF8, 0x3F, 0xE3, 0xFF, 0x1C, - 0x31, 0x83, 0x18, 0x31, 0x86, 0x3F, 0xE3, 0x78, 0x30, 0x03, 0x00, 0xFC, - 0x0F, 0x80, 0x1E, 0xEF, 0xFD, 0x86, 0x60, 0xCC, 0x19, 0xC7, 0x3F, 0xE1, - 0xE8, 0x03, 0x00, 0x60, 0x3E, 0x07, 0xC0, 0x39, 0xDF, 0xF1, 0xC0, 0x60, - 0x10, 0x0C, 0x0F, 0xF3, 0xF8, 0x1F, 0x7F, 0x63, 0x7E, 0x1F, 0xC3, 0xFE, - 0xFC, 0x10, 0x08, 0x0C, 0x1F, 0xEF, 0xF1, 0x80, 0x80, 0xC0, 0x60, 0x3F, - 0x8F, 0x80, 0xF3, 0xFC, 0xF6, 0x09, 0x86, 0x61, 0x98, 0xE7, 0xF8, 0xFE, - 0xFB, 0xFF, 0x7C, 0xC6, 0x19, 0x83, 0x60, 0x6C, 0x07, 0x00, 0xC0, 0xF1, - 0xFE, 0x3D, 0xB3, 0x37, 0xC7, 0xF8, 0xEE, 0x1D, 0xC3, 0x30, 0x79, 0xEF, - 0x38, 0xEE, 0x0F, 0x01, 0xE0, 0x6E, 0x3C, 0xE7, 0xBC, 0x3C, 0xF3, 0x8F, - 0x18, 0xC1, 0x9C, 0x19, 0x81, 0xF0, 0x0E, 0x00, 0xE0, 0x0C, 0x01, 0x80, - 0xFC, 0x0F, 0xC0, 0x7F, 0xBF, 0xD9, 0xC1, 0x83, 0x83, 0x1B, 0xFD, 0xFE, - 0x06, 0x1C, 0x60, 0xC1, 0x86, 0x3C, 0x70, 0x30, 0x41, 0x83, 0x07, 0x06, - 0x00, 0x33, 0x32, 0x26, 0x66, 0x44, 0xCC, 0xC8, 0x0C, 0x0E, 0x04, 0x0C, - 0x0C, 0x0C, 0x0F, 0x0F, 0x18, 0x18, 0x10, 0x30, 0xF0, 0xE0, 0x38, 0x7C, - 0xF7, 0xC1, 0xC0}; - -const GFXglyph FreeMonoBoldOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 5, 11, 11, 4, -10}, // 0x21 '!' - {7, 7, 5, 11, 4, -10}, // 0x22 '"' - {12, 9, 12, 11, 2, -10}, // 0x23 '#' - {26, 9, 14, 11, 2, -11}, // 0x24 '$' - {42, 9, 11, 11, 2, -10}, // 0x25 '%' - {55, 8, 10, 11, 2, -9}, // 0x26 '&' - {65, 2, 5, 11, 6, -10}, // 0x27 ''' - {67, 5, 14, 11, 5, -10}, // 0x28 '(' - {76, 5, 14, 11, 2, -10}, // 0x29 ')' - {85, 8, 7, 11, 3, -10}, // 0x2A '*' - {92, 9, 9, 11, 2, -8}, // 0x2B '+' - {103, 4, 5, 11, 2, -1}, // 0x2C ',' - {106, 9, 2, 11, 2, -5}, // 0x2D '-' - {109, 3, 2, 11, 4, -1}, // 0x2E '.' - {110, 11, 15, 11, 1, -12}, // 0x2F '/' - {131, 9, 12, 11, 2, -11}, // 0x30 '0' - {145, 8, 12, 11, 2, -11}, // 0x31 '1' - {157, 10, 12, 11, 1, -11}, // 0x32 '2' - {172, 9, 12, 11, 2, -11}, // 0x33 '3' - {186, 8, 10, 11, 2, -9}, // 0x34 '4' - {196, 9, 11, 11, 3, -10}, // 0x35 '5' - {209, 9, 12, 11, 3, -11}, // 0x36 '6' - {223, 8, 11, 11, 3, -10}, // 0x37 '7' - {234, 9, 12, 11, 2, -11}, // 0x38 '8' - {248, 8, 12, 11, 3, -11}, // 0x39 '9' - {260, 4, 8, 11, 4, -7}, // 0x3A ':' - {264, 6, 11, 11, 2, -7}, // 0x3B ';' - {273, 10, 8, 11, 2, -8}, // 0x3C '<' - {283, 10, 6, 11, 1, -7}, // 0x3D '=' - {291, 10, 8, 11, 1, -8}, // 0x3E '>' - {301, 7, 11, 11, 4, -10}, // 0x3F '?' - {311, 9, 15, 11, 2, -11}, // 0x40 '@' - {328, 11, 11, 11, 0, -10}, // 0x41 'A' - {344, 11, 11, 11, 0, -10}, // 0x42 'B' - {360, 12, 11, 11, 1, -10}, // 0x43 'C' - {377, 11, 11, 11, 0, -10}, // 0x44 'D' - {393, 12, 11, 11, 0, -10}, // 0x45 'E' - {410, 12, 11, 11, 0, -10}, // 0x46 'F' - {427, 11, 11, 11, 1, -10}, // 0x47 'G' - {443, 12, 11, 11, 0, -10}, // 0x48 'H' - {460, 10, 11, 11, 1, -10}, // 0x49 'I' - {474, 12, 11, 11, 0, -10}, // 0x4A 'J' - {491, 11, 11, 11, 0, -10}, // 0x4B 'K' - {507, 11, 11, 11, 0, -10}, // 0x4C 'L' - {523, 13, 11, 11, 0, -10}, // 0x4D 'M' - {541, 13, 11, 11, 0, -10}, // 0x4E 'N' - {559, 10, 11, 11, 1, -10}, // 0x4F 'O' - {573, 11, 11, 11, 0, -10}, // 0x50 'P' - {589, 10, 14, 11, 1, -10}, // 0x51 'Q' - {607, 12, 11, 11, 0, -10}, // 0x52 'R' - {624, 10, 11, 11, 2, -10}, // 0x53 'S' - {638, 11, 11, 11, 1, -10}, // 0x54 'T' - {654, 11, 11, 11, 1, -10}, // 0x55 'U' - {670, 11, 11, 11, 1, -10}, // 0x56 'V' - {686, 11, 11, 11, 1, -10}, // 0x57 'W' - {702, 12, 11, 11, 0, -10}, // 0x58 'X' - {719, 11, 11, 11, 1, -10}, // 0x59 'Y' - {735, 10, 11, 11, 1, -10}, // 0x5A 'Z' - {749, 7, 14, 11, 4, -10}, // 0x5B '[' - {762, 5, 15, 11, 4, -12}, // 0x5C '\' - {772, 7, 14, 11, 2, -10}, // 0x5D ']' - {785, 8, 6, 11, 3, -11}, // 0x5E '^' - {791, 11, 2, 11, -1, 3}, // 0x5F '_' - {794, 3, 3, 11, 5, -11}, // 0x60 '`' - {796, 10, 8, 11, 1, -7}, // 0x61 'a' - {806, 11, 11, 11, 0, -10}, // 0x62 'b' - {822, 10, 8, 11, 1, -7}, // 0x63 'c' - {832, 11, 11, 11, 1, -10}, // 0x64 'd' - {848, 9, 8, 11, 1, -7}, // 0x65 'e' - {857, 10, 11, 11, 2, -10}, // 0x66 'f' - {871, 11, 12, 11, 1, -7}, // 0x67 'g' - {888, 10, 11, 11, 1, -10}, // 0x68 'h' - {902, 9, 11, 11, 1, -10}, // 0x69 'i' - {915, 9, 15, 11, 1, -10}, // 0x6A 'j' - {932, 10, 11, 11, 1, -10}, // 0x6B 'k' - {946, 9, 11, 11, 1, -10}, // 0x6C 'l' - {959, 12, 8, 11, 0, -7}, // 0x6D 'm' - {971, 11, 8, 11, 1, -7}, // 0x6E 'n' - {982, 10, 8, 11, 1, -7}, // 0x6F 'o' - {992, 12, 12, 11, -1, -7}, // 0x70 'p' - {1010, 11, 12, 11, 1, -7}, // 0x71 'q' - {1027, 10, 8, 11, 1, -7}, // 0x72 'r' - {1037, 8, 8, 11, 2, -7}, // 0x73 's' - {1045, 9, 11, 11, 1, -10}, // 0x74 't' - {1058, 10, 8, 11, 1, -7}, // 0x75 'u' - {1068, 11, 8, 11, 1, -7}, // 0x76 'v' - {1079, 11, 8, 11, 1, -7}, // 0x77 'w' - {1090, 11, 8, 11, 1, -7}, // 0x78 'x' - {1101, 12, 12, 11, 0, -7}, // 0x79 'y' - {1119, 9, 8, 11, 2, -7}, // 0x7A 'z' - {1128, 7, 14, 11, 3, -10}, // 0x7B '{' - {1141, 4, 14, 11, 4, -10}, // 0x7C '|' - {1148, 8, 14, 11, 2, -10}, // 0x7D '}' - {1162, 9, 4, 11, 2, -6}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique9pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique9pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique9pt7bGlyphs, 0x20, 0x7E, 18}; - -// Approx. 1839 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h deleted file mode 100644 index 0617603..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h +++ /dev/null @@ -1,250 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique12pt7bBitmaps[] PROGMEM = { - 0x11, 0x11, 0x12, 0x22, 0x22, 0x00, 0x0E, 0xE0, 0xE7, 0xE7, 0xC6, 0xC6, - 0xC6, 0x84, 0x84, 0x02, 0x40, 0x88, 0x12, 0x02, 0x40, 0x48, 0x7F, 0xC2, - 0x40, 0x48, 0x11, 0x1F, 0xF8, 0x48, 0x09, 0x02, 0x40, 0x48, 0x09, 0x02, - 0x20, 0x02, 0x01, 0x00, 0xF4, 0xC3, 0x60, 0x50, 0x04, 0x00, 0xC0, 0x0F, - 0x00, 0x60, 0x0A, 0x02, 0x81, 0x30, 0xC7, 0xC0, 0x80, 0x20, 0x08, 0x00, - 0x0E, 0x02, 0x20, 0x84, 0x10, 0x82, 0x20, 0x38, 0x00, 0x38, 0x38, 0x38, - 0x08, 0xE0, 0x22, 0x08, 0x41, 0x08, 0x22, 0x03, 0x80, 0x07, 0x84, 0x04, - 0x02, 0x01, 0x00, 0xC1, 0xA2, 0x8A, 0x85, 0x43, 0x31, 0x8F, 0x60, 0xFF, - 0x6D, 0x20, 0x00, 0x44, 0x42, 0x21, 0x08, 0x84, 0x21, 0x08, 0x42, 0x10, - 0x42, 0x00, 0x00, 0x84, 0x10, 0x84, 0x21, 0x08, 0x46, 0x21, 0x10, 0x88, - 0x44, 0x00, 0x04, 0x02, 0x02, 0x1D, 0x13, 0xF0, 0x40, 0x50, 0x48, 0x44, - 0x00, 0x02, 0x00, 0x40, 0x08, 0x02, 0x00, 0x41, 0xFF, 0xC1, 0x00, 0x20, - 0x08, 0x01, 0x00, 0x20, 0x00, 0x1C, 0xE3, 0x18, 0x63, 0x08, 0x00, 0xFF, - 0xE0, 0x7F, 0x00, 0x00, 0x08, 0x00, 0x80, 0x04, 0x00, 0x40, 0x04, 0x00, - 0x60, 0x02, 0x00, 0x20, 0x03, 0x00, 0x10, 0x01, 0x00, 0x18, 0x00, 0x80, - 0x08, 0x00, 0x80, 0x04, 0x00, 0x40, 0x04, 0x00, 0x00, 0x07, 0x06, 0x23, - 0x04, 0x81, 0x40, 0x50, 0x14, 0x06, 0x02, 0x80, 0xA0, 0x28, 0x0A, 0x04, - 0x83, 0x11, 0x83, 0x80, 0x03, 0x03, 0x83, 0x83, 0x43, 0x20, 0x10, 0x08, - 0x08, 0x04, 0x02, 0x01, 0x01, 0x00, 0x80, 0x43, 0xFE, 0x01, 0xC0, 0x62, - 0x0C, 0x10, 0x81, 0x00, 0x10, 0x02, 0x00, 0x60, 0x0C, 0x01, 0x00, 0x20, - 0x0C, 0x01, 0x80, 0x20, 0x04, 0x04, 0xFF, 0xC0, 0x07, 0xC3, 0x0C, 0x00, - 0x80, 0x10, 0x06, 0x01, 0x81, 0xC0, 0x0C, 0x00, 0x40, 0x08, 0x01, 0x00, - 0x20, 0x09, 0x86, 0x0F, 0x00, 0x00, 0xC0, 0x50, 0x24, 0x12, 0x04, 0x82, - 0x21, 0x08, 0x82, 0x21, 0x10, 0x4F, 0xF8, 0x04, 0x01, 0x00, 0x80, 0xF8, - 0x0F, 0xE2, 0x00, 0x40, 0x08, 0x01, 0x00, 0x4E, 0x0E, 0x20, 0x02, 0x00, - 0x40, 0x08, 0x01, 0x00, 0x40, 0x19, 0x06, 0x1F, 0x00, 0x01, 0xE0, 0xC0, - 0x60, 0x18, 0x02, 0x00, 0x80, 0x13, 0xC5, 0x88, 0xE0, 0x98, 0x12, 0x02, - 0x40, 0x48, 0x10, 0x84, 0x0F, 0x00, 0xFF, 0xA0, 0x20, 0x08, 0x04, 0x01, - 0x00, 0x80, 0x20, 0x10, 0x04, 0x02, 0x00, 0x80, 0x40, 0x10, 0x08, 0x02, - 0x00, 0x07, 0x81, 0x08, 0x40, 0x90, 0x12, 0x02, 0x40, 0x84, 0x20, 0x78, - 0x30, 0x88, 0x0A, 0x01, 0x40, 0x28, 0x08, 0x82, 0x0F, 0x80, 0x07, 0x81, - 0x08, 0x40, 0x90, 0x12, 0x02, 0x40, 0xC8, 0x39, 0x8D, 0x1E, 0x40, 0x08, - 0x02, 0x00, 0xC0, 0x30, 0x18, 0x3E, 0x00, 0x19, 0xCC, 0x00, 0x00, 0x0C, - 0xE6, 0x00, 0x06, 0x1C, 0x30, 0x00, 0x00, 0x00, 0x1C, 0x30, 0xE1, 0x86, - 0x08, 0x00, 0x00, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x06, 0x00, 0x30, - 0x00, 0xC0, 0x06, 0x00, 0x18, 0x00, 0xC0, 0x7F, 0xF8, 0x00, 0x00, 0x01, - 0xFF, 0xE0, 0x18, 0x00, 0xC0, 0x03, 0x00, 0x18, 0x00, 0x60, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x00, 0x3E, 0xC3, 0x81, 0x01, 0x03, - 0x06, 0x18, 0x20, 0x20, 0x00, 0x00, 0x00, 0xE0, 0xE0, 0x07, 0x82, 0x31, - 0x04, 0x81, 0x20, 0x48, 0x74, 0x65, 0x21, 0x48, 0x92, 0x28, 0x7A, 0x00, - 0x80, 0x20, 0x04, 0x00, 0xF8, 0x07, 0xE0, 0x02, 0x80, 0x0A, 0x00, 0x48, - 0x01, 0x20, 0x08, 0x40, 0x41, 0x01, 0x04, 0x0F, 0xF0, 0x20, 0x41, 0x01, - 0x04, 0x02, 0x20, 0x0B, 0xE1, 0xF0, 0x1F, 0xF0, 0x40, 0xC2, 0x02, 0x10, - 0x10, 0x81, 0x84, 0x18, 0x7F, 0x82, 0x02, 0x10, 0x08, 0x80, 0x44, 0x02, - 0x60, 0x22, 0x03, 0x7F, 0xE0, 0x07, 0x91, 0x87, 0x20, 0x34, 0x02, 0x40, - 0x08, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x00, 0x80, 0x04, 0x04, 0x61, - 0x81, 0xE0, 0x1F, 0xE0, 0x41, 0x82, 0x06, 0x10, 0x11, 0x00, 0x88, 0x04, - 0x40, 0x22, 0x01, 0x10, 0x11, 0x00, 0x88, 0x08, 0x40, 0xC2, 0x0C, 0x7F, - 0x80, 0x1F, 0xFC, 0x20, 0x10, 0x80, 0x82, 0x00, 0x08, 0x00, 0x22, 0x01, - 0xF8, 0x04, 0x20, 0x10, 0x00, 0x40, 0x01, 0x01, 0x0C, 0x04, 0x20, 0x13, - 0xFF, 0xC0, 0x1F, 0xFC, 0x20, 0x10, 0x80, 0x42, 0x01, 0x08, 0x00, 0x22, - 0x01, 0xF8, 0x04, 0x20, 0x10, 0x00, 0x40, 0x01, 0x00, 0x0C, 0x00, 0x20, - 0x03, 0xF8, 0x00, 0x07, 0xD0, 0x83, 0x30, 0x12, 0x00, 0x40, 0x04, 0x00, - 0x80, 0x08, 0x00, 0x83, 0xE8, 0x04, 0x80, 0x4C, 0x04, 0x60, 0x41, 0xF8, - 0x0F, 0x3C, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0x81, 0x01, 0x02, 0x03, - 0xFC, 0x08, 0x08, 0x10, 0x10, 0x20, 0x40, 0x40, 0x80, 0x81, 0x02, 0x02, - 0x1F, 0x1E, 0x00, 0x3F, 0xE0, 0x40, 0x08, 0x01, 0x00, 0x20, 0x08, 0x01, - 0x00, 0x20, 0x04, 0x00, 0x80, 0x20, 0x04, 0x00, 0x81, 0xFF, 0x00, 0x03, - 0xFE, 0x00, 0x20, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, - 0x00, 0x20, 0x40, 0x40, 0x80, 0x81, 0x01, 0x02, 0x04, 0x06, 0x10, 0x07, - 0xC0, 0x00, 0x1F, 0x1E, 0x10, 0x10, 0x20, 0xC0, 0x43, 0x00, 0x88, 0x01, - 0x20, 0x07, 0xC0, 0x0C, 0x40, 0x10, 0x40, 0x20, 0x80, 0x41, 0x01, 0x81, - 0x02, 0x02, 0x1F, 0x87, 0x00, 0x3F, 0x80, 0x40, 0x04, 0x00, 0x40, 0x08, - 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x01, 0x01, 0x10, 0x11, 0x02, 0x10, - 0x2F, 0xFE, 0x1C, 0x03, 0x85, 0x03, 0x02, 0x82, 0x81, 0x41, 0x40, 0xA1, - 0x20, 0x89, 0x30, 0x44, 0x90, 0x22, 0x88, 0x11, 0x44, 0x08, 0x42, 0x08, - 0x03, 0x04, 0x01, 0x02, 0x00, 0x87, 0xC3, 0xE0, 0x3C, 0x3E, 0x18, 0x08, - 0x38, 0x20, 0x50, 0x41, 0x20, 0x82, 0x61, 0x04, 0x42, 0x08, 0x88, 0x10, - 0x90, 0x41, 0x20, 0x83, 0x41, 0x02, 0x82, 0x06, 0x1F, 0x04, 0x00, 0x03, - 0xC0, 0x61, 0x84, 0x04, 0x40, 0x14, 0x00, 0xA0, 0x06, 0x00, 0x30, 0x01, - 0x80, 0x14, 0x00, 0xA0, 0x08, 0x80, 0x86, 0x18, 0x0F, 0x00, 0x1F, 0xE0, - 0x40, 0x82, 0x02, 0x10, 0x10, 0x80, 0x84, 0x08, 0x40, 0x83, 0xF8, 0x10, - 0x00, 0x80, 0x04, 0x00, 0x60, 0x02, 0x00, 0x7F, 0x00, 0x03, 0xC0, 0x61, - 0x84, 0x04, 0x40, 0x14, 0x00, 0xA0, 0x06, 0x00, 0x30, 0x01, 0x80, 0x14, - 0x00, 0xA0, 0x08, 0x80, 0x86, 0x18, 0x1F, 0x00, 0x40, 0x0F, 0xC4, 0x41, - 0xC0, 0x1F, 0xE0, 0x40, 0x82, 0x02, 0x10, 0x10, 0x80, 0x84, 0x08, 0x60, - 0x83, 0xF8, 0x10, 0xC0, 0x82, 0x04, 0x08, 0x40, 0x42, 0x03, 0x7E, 0x0C, - 0x07, 0xA3, 0x0C, 0x40, 0x90, 0x12, 0x00, 0x40, 0x06, 0x00, 0x3C, 0x00, - 0x40, 0x0A, 0x01, 0x40, 0x4C, 0x11, 0x7C, 0x00, 0xFF, 0xE8, 0x42, 0x84, - 0x20, 0x40, 0x04, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x00, 0x80, 0x10, - 0x01, 0x00, 0x10, 0x0F, 0xE0, 0xF8, 0xF9, 0x00, 0x88, 0x08, 0x80, 0x44, - 0x02, 0x20, 0x11, 0x01, 0x08, 0x08, 0x80, 0x44, 0x02, 0x20, 0x31, 0x01, - 0x04, 0x30, 0x1E, 0x00, 0xF8, 0x7D, 0x00, 0x42, 0x01, 0x08, 0x08, 0x20, - 0x40, 0x81, 0x02, 0x08, 0x08, 0x20, 0x11, 0x00, 0x48, 0x01, 0x20, 0x05, - 0x00, 0x14, 0x00, 0x60, 0x00, 0xF8, 0x7D, 0x00, 0x44, 0x01, 0x11, 0x84, - 0x46, 0x21, 0x18, 0x84, 0xA2, 0x12, 0x90, 0x91, 0x42, 0x45, 0x0A, 0x14, - 0x28, 0x60, 0xC1, 0x83, 0x06, 0x00, 0x1E, 0x1E, 0x10, 0x10, 0x10, 0x40, - 0x21, 0x00, 0x24, 0x00, 0x78, 0x00, 0x60, 0x01, 0xC0, 0x06, 0x80, 0x09, - 0x80, 0x21, 0x00, 0x81, 0x02, 0x02, 0x1E, 0x1F, 0x00, 0xF0, 0xF4, 0x04, - 0x20, 0x82, 0x18, 0x11, 0x01, 0x20, 0x1C, 0x00, 0x80, 0x08, 0x00, 0x80, - 0x10, 0x01, 0x00, 0x10, 0x0F, 0xE0, 0x0F, 0xF1, 0x01, 0x10, 0x21, 0x04, - 0x00, 0x80, 0x10, 0x02, 0x00, 0x40, 0x0C, 0x01, 0x82, 0x10, 0x22, 0x04, - 0x40, 0x47, 0xFC, 0x0E, 0x20, 0x40, 0x81, 0x02, 0x08, 0x10, 0x20, 0x40, - 0x82, 0x04, 0x08, 0x10, 0x20, 0x81, 0xE0, 0x84, 0x20, 0x84, 0x20, 0x84, - 0x21, 0x04, 0x21, 0x08, 0x21, 0x08, 0x40, 0x1E, 0x04, 0x08, 0x20, 0x40, - 0x81, 0x02, 0x04, 0x10, 0x20, 0x40, 0x81, 0x02, 0x08, 0x11, 0xE0, 0x04, - 0x06, 0x04, 0x84, 0x44, 0x14, 0x0C, 0xFF, 0xFE, 0x99, 0x90, 0x1F, 0xC0, - 0x06, 0x00, 0x20, 0x02, 0x1F, 0xE6, 0x04, 0xC0, 0x48, 0x04, 0x81, 0xC7, - 0xEF, 0x18, 0x00, 0x40, 0x02, 0x00, 0x10, 0x00, 0x80, 0x09, 0xF0, 0x50, - 0xC3, 0x03, 0x10, 0x08, 0x80, 0x48, 0x02, 0x40, 0x23, 0x03, 0x1C, 0x33, - 0xBE, 0x00, 0x0F, 0xD3, 0x07, 0x60, 0x24, 0x02, 0x80, 0x08, 0x00, 0x80, - 0x08, 0x06, 0x41, 0xC3, 0xF0, 0x00, 0x38, 0x00, 0x40, 0x02, 0x00, 0x20, - 0x01, 0x07, 0xC8, 0x43, 0x44, 0x0E, 0x40, 0x24, 0x01, 0x20, 0x09, 0x00, - 0xC8, 0x0E, 0x20, 0xE0, 0xF9, 0xC0, 0x0F, 0x86, 0x09, 0x00, 0xA0, 0x1F, - 0xFF, 0x00, 0x20, 0x06, 0x00, 0x60, 0xC7, 0xE0, 0x01, 0xF8, 0x10, 0x01, - 0x00, 0x08, 0x00, 0x40, 0x1F, 0xF0, 0x20, 0x01, 0x00, 0x08, 0x00, 0x40, - 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x03, 0xFE, 0x00, 0x0F, 0x31, 0x86, - 0x10, 0x10, 0x80, 0x88, 0x04, 0x40, 0x22, 0x02, 0x10, 0x10, 0x43, 0x81, - 0xE4, 0x00, 0x40, 0x02, 0x00, 0x20, 0x3E, 0x00, 0x1C, 0x00, 0x20, 0x03, - 0x00, 0x10, 0x00, 0x80, 0x05, 0xF0, 0x30, 0xC3, 0x02, 0x10, 0x10, 0x80, - 0x84, 0x0C, 0x20, 0x63, 0x02, 0x10, 0x13, 0xE3, 0xE0, 0x01, 0x80, 0x40, - 0x10, 0x00, 0x00, 0x07, 0xC0, 0x20, 0x08, 0x02, 0x00, 0x80, 0x20, 0x10, - 0x04, 0x01, 0x0F, 0xFC, 0x00, 0x40, 0x10, 0x0C, 0x00, 0x00, 0x07, 0xF0, - 0x04, 0x01, 0x00, 0x40, 0x20, 0x08, 0x02, 0x00, 0x80, 0x20, 0x10, 0x04, - 0x01, 0x00, 0x8F, 0xC0, 0x18, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x01, - 0x1F, 0x10, 0x81, 0x30, 0x14, 0x01, 0xC0, 0x26, 0x02, 0x20, 0x21, 0x02, - 0x08, 0xE1, 0xE0, 0x0F, 0x80, 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, 0x20, - 0x08, 0x02, 0x00, 0x80, 0x20, 0x10, 0x04, 0x01, 0x0F, 0xFC, 0x3B, 0xB8, - 0x33, 0x91, 0x08, 0x44, 0x21, 0x10, 0x84, 0x42, 0x12, 0x10, 0x48, 0x42, - 0x21, 0x0B, 0xC6, 0x30, 0x19, 0xE0, 0xE3, 0x08, 0x11, 0x01, 0x10, 0x11, - 0x02, 0x10, 0x21, 0x02, 0x20, 0x2F, 0x87, 0x0F, 0x86, 0x19, 0x80, 0xA0, - 0x18, 0x03, 0x00, 0x60, 0x14, 0x06, 0x61, 0x87, 0xC0, 0x19, 0xF0, 0x28, - 0x20, 0xC0, 0x42, 0x01, 0x10, 0x04, 0x40, 0x11, 0x00, 0x86, 0x06, 0x14, - 0x30, 0xCF, 0x02, 0x00, 0x08, 0x00, 0x20, 0x03, 0xF0, 0x00, 0x0F, 0x39, - 0x85, 0x18, 0x18, 0x80, 0x88, 0x04, 0x40, 0x22, 0x01, 0x18, 0x18, 0x63, - 0x81, 0xE4, 0x00, 0x20, 0x01, 0x00, 0x10, 0x07, 0xE0, 0x1C, 0x78, 0x2C, - 0x01, 0x80, 0x18, 0x00, 0x80, 0x04, 0x00, 0x20, 0x02, 0x00, 0x10, 0x07, - 0xFC, 0x00, 0x0F, 0x44, 0x32, 0x04, 0x80, 0x1E, 0x00, 0x60, 0x0A, 0x02, - 0xC1, 0x2F, 0x80, 0x10, 0x08, 0x04, 0x02, 0x0F, 0xF9, 0x00, 0x80, 0x40, - 0x20, 0x20, 0x10, 0x08, 0x04, 0x19, 0xF0, 0xE0, 0xF2, 0x02, 0x40, 0x24, - 0x02, 0x40, 0x24, 0x06, 0x40, 0x44, 0x04, 0x41, 0xC3, 0xE6, 0xF8, 0xFA, - 0x01, 0x08, 0x10, 0x41, 0x02, 0x08, 0x10, 0x80, 0x48, 0x02, 0x40, 0x14, - 0x00, 0xC0, 0x00, 0xE0, 0x7A, 0x01, 0x10, 0x08, 0x8C, 0x84, 0xA4, 0x25, - 0x21, 0x4A, 0x0A, 0x50, 0x63, 0x02, 0x18, 0x00, 0x1E, 0x3C, 0x20, 0x40, - 0x46, 0x00, 0xB0, 0x03, 0x00, 0x0E, 0x00, 0xC8, 0x06, 0x10, 0x20, 0x23, - 0xE3, 0xC0, 0x3C, 0x3C, 0x40, 0x20, 0x81, 0x02, 0x08, 0x08, 0x20, 0x31, - 0x00, 0x48, 0x01, 0x40, 0x05, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, 0x08, - 0x03, 0xF0, 0x00, 0x3F, 0xC4, 0x18, 0x06, 0x01, 0x80, 0x60, 0x10, 0x04, - 0x01, 0x00, 0x40, 0x9F, 0xF0, 0x06, 0x10, 0x20, 0x41, 0x02, 0x04, 0x08, - 0x21, 0x80, 0x81, 0x02, 0x08, 0x10, 0x20, 0x40, 0xC0, 0x01, 0x11, 0x12, - 0x22, 0x24, 0x44, 0x44, 0x88, 0x80, 0x0C, 0x08, 0x10, 0x20, 0x40, 0x82, - 0x04, 0x08, 0x0C, 0x20, 0x81, 0x02, 0x04, 0x08, 0x21, 0x80, 0x38, 0x28, - 0x88, 0x0E, 0x00}; - -const GFXglyph FreeMonoOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 4, 15, 14, 6, -14}, // 0x21 '!' - {8, 8, 7, 14, 5, -14}, // 0x22 '"' - {15, 11, 16, 14, 3, -14}, // 0x23 '#' - {37, 10, 18, 14, 4, -15}, // 0x24 '$' - {60, 11, 15, 14, 3, -14}, // 0x25 '%' - {81, 9, 12, 14, 3, -11}, // 0x26 '&' - {95, 3, 7, 14, 8, -14}, // 0x27 ''' - {98, 5, 18, 14, 8, -14}, // 0x28 '(' - {110, 5, 18, 14, 4, -14}, // 0x29 ')' - {122, 9, 9, 14, 5, -14}, // 0x2A '*' - {133, 11, 11, 14, 3, -11}, // 0x2B '+' - {149, 6, 7, 14, 3, -3}, // 0x2C ',' - {155, 11, 1, 14, 3, -6}, // 0x2D '-' - {157, 3, 3, 14, 6, -2}, // 0x2E '.' - {159, 13, 18, 14, 2, -15}, // 0x2F '/' - {189, 10, 15, 14, 4, -14}, // 0x30 '0' - {208, 9, 15, 14, 3, -14}, // 0x31 '1' - {225, 12, 15, 14, 2, -14}, // 0x32 '2' - {248, 11, 15, 14, 3, -14}, // 0x33 '3' - {269, 10, 15, 14, 3, -14}, // 0x34 '4' - {288, 11, 15, 14, 3, -14}, // 0x35 '5' - {309, 11, 15, 14, 4, -14}, // 0x36 '6' - {330, 10, 15, 14, 5, -14}, // 0x37 '7' - {349, 11, 15, 14, 3, -14}, // 0x38 '8' - {370, 11, 15, 14, 3, -14}, // 0x39 '9' - {391, 5, 10, 14, 5, -9}, // 0x3A ':' - {398, 7, 13, 14, 3, -9}, // 0x3B ';' - {410, 12, 11, 14, 3, -11}, // 0x3C '<' - {427, 13, 4, 14, 2, -8}, // 0x3D '=' - {434, 12, 11, 14, 2, -11}, // 0x3E '>' - {451, 8, 14, 14, 6, -13}, // 0x3F '?' - {465, 10, 16, 14, 3, -14}, // 0x40 '@' - {485, 14, 14, 14, 0, -13}, // 0x41 'A' - {510, 13, 14, 14, 1, -13}, // 0x42 'B' - {533, 12, 14, 14, 3, -13}, // 0x43 'C' - {554, 13, 14, 14, 1, -13}, // 0x44 'D' - {577, 14, 14, 14, 1, -13}, // 0x45 'E' - {602, 14, 14, 14, 1, -13}, // 0x46 'F' - {627, 12, 14, 14, 3, -13}, // 0x47 'G' - {648, 15, 14, 14, 1, -13}, // 0x48 'H' - {675, 11, 14, 14, 3, -13}, // 0x49 'I' - {695, 15, 14, 14, 2, -13}, // 0x4A 'J' - {722, 15, 14, 14, 1, -13}, // 0x4B 'K' - {749, 12, 14, 14, 2, -13}, // 0x4C 'L' - {770, 17, 14, 14, 0, -13}, // 0x4D 'M' - {800, 15, 14, 14, 1, -13}, // 0x4E 'N' - {827, 13, 14, 14, 2, -13}, // 0x4F 'O' - {850, 13, 14, 14, 1, -13}, // 0x50 'P' - {873, 13, 17, 14, 2, -13}, // 0x51 'Q' - {901, 13, 14, 14, 1, -13}, // 0x52 'R' - {924, 11, 14, 14, 3, -13}, // 0x53 'S' - {944, 12, 14, 14, 4, -13}, // 0x54 'T' - {965, 13, 14, 14, 3, -13}, // 0x55 'U' - {988, 14, 14, 14, 3, -13}, // 0x56 'V' - {1013, 14, 14, 14, 3, -13}, // 0x57 'W' - {1038, 15, 14, 14, 1, -13}, // 0x58 'X' - {1065, 12, 14, 14, 4, -13}, // 0x59 'Y' - {1086, 12, 14, 14, 2, -13}, // 0x5A 'Z' - {1107, 7, 18, 14, 6, -14}, // 0x5B '[' - {1123, 5, 18, 14, 6, -15}, // 0x5C '\' - {1135, 7, 18, 14, 3, -14}, // 0x5D ']' - {1151, 9, 6, 14, 5, -14}, // 0x5E '^' - {1158, 15, 1, 14, -1, 3}, // 0x5F '_' - {1160, 3, 4, 14, 6, -15}, // 0x60 '`' - {1162, 12, 10, 14, 2, -9}, // 0x61 'a' - {1177, 13, 15, 14, 1, -14}, // 0x62 'b' - {1202, 12, 10, 14, 3, -9}, // 0x63 'c' - {1217, 13, 15, 14, 2, -14}, // 0x64 'd' - {1242, 11, 10, 14, 3, -9}, // 0x65 'e' - {1256, 13, 15, 14, 3, -14}, // 0x66 'f' - {1281, 13, 14, 14, 3, -9}, // 0x67 'g' - {1304, 13, 15, 14, 1, -14}, // 0x68 'h' - {1329, 10, 15, 14, 2, -14}, // 0x69 'i' - {1348, 10, 19, 14, 2, -14}, // 0x6A 'j' - {1372, 12, 15, 14, 2, -14}, // 0x6B 'k' - {1395, 10, 15, 14, 2, -14}, // 0x6C 'l' - {1414, 14, 10, 14, 0, -9}, // 0x6D 'm' - {1432, 12, 10, 14, 1, -9}, // 0x6E 'n' - {1447, 11, 10, 14, 3, -9}, // 0x6F 'o' - {1461, 14, 14, 14, 0, -9}, // 0x70 'p' - {1486, 13, 14, 14, 3, -9}, // 0x71 'q' - {1509, 13, 10, 14, 2, -9}, // 0x72 'r' - {1526, 10, 10, 14, 3, -9}, // 0x73 's' - {1539, 9, 14, 14, 3, -13}, // 0x74 't' - {1555, 12, 10, 14, 2, -9}, // 0x75 'u' - {1570, 13, 10, 14, 3, -9}, // 0x76 'v' - {1587, 13, 10, 14, 3, -9}, // 0x77 'w' - {1604, 14, 10, 14, 1, -9}, // 0x78 'x' - {1622, 14, 14, 14, 1, -9}, // 0x79 'y' - {1647, 11, 10, 14, 3, -9}, // 0x7A 'z' - {1661, 7, 18, 14, 5, -14}, // 0x7B '{' - {1677, 4, 17, 14, 6, -13}, // 0x7C '|' - {1686, 7, 18, 14, 4, -14}, // 0x7D '}' - {1702, 11, 3, 14, 3, -7}}; // 0x7E '~' - -const GFXfont FreeMonoOblique12pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique12pt7bBitmaps, - (GFXglyph *)FreeMonoOblique12pt7bGlyphs, 0x20, 0x7E, 24}; - -// Approx. 2379 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h deleted file mode 100644 index c12ae08..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h +++ /dev/null @@ -1,400 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique18pt7bBitmaps[] PROGMEM = { - 0x00, 0x1C, 0x38, 0x70, 0xC1, 0x83, 0x06, 0x18, 0x30, 0x60, 0xC1, 0x02, - 0x04, 0x00, 0x00, 0x01, 0xC7, 0x8F, 0x1C, 0x00, 0x78, 0x7B, 0xC3, 0xFC, - 0x3D, 0xE1, 0xEF, 0x0F, 0x70, 0x73, 0x83, 0x98, 0x18, 0xC0, 0xC6, 0x06, - 0x00, 0x00, 0x8C, 0x01, 0x18, 0x06, 0x20, 0x08, 0x40, 0x11, 0x80, 0x62, - 0x00, 0xC4, 0x01, 0x18, 0x02, 0x30, 0x7F, 0xFC, 0x10, 0x80, 0x23, 0x00, - 0xC4, 0x01, 0x88, 0x3F, 0xFF, 0x04, 0x60, 0x18, 0x80, 0x21, 0x00, 0x46, - 0x01, 0x88, 0x03, 0x10, 0x04, 0x60, 0x08, 0xC0, 0x31, 0x00, 0x00, 0x30, - 0x00, 0x20, 0x00, 0x20, 0x00, 0xF9, 0x03, 0x0F, 0x06, 0x03, 0x04, 0x03, - 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x03, 0xC0, 0x00, 0x78, - 0x00, 0x0C, 0x00, 0x04, 0x00, 0x04, 0x40, 0x04, 0x40, 0x08, 0x40, 0x18, - 0xF0, 0x60, 0x9F, 0x80, 0x02, 0x00, 0x06, 0x00, 0x04, 0x00, 0x04, 0x00, - 0x04, 0x00, 0x03, 0xC0, 0x0C, 0x60, 0x08, 0x20, 0x10, 0x20, 0x10, 0x20, - 0x10, 0x40, 0x18, 0x80, 0x0F, 0x00, 0x00, 0x0F, 0x00, 0x78, 0x07, 0xC0, - 0x3C, 0x00, 0xE0, 0x00, 0x01, 0xE0, 0x02, 0x18, 0x04, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x08, 0x10, 0x0C, 0x20, 0x07, 0xC0, 0x01, 0xF0, 0x11, 0x81, - 0x00, 0x10, 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x80, 0x04, 0x00, 0xF0, - 0x09, 0x86, 0x84, 0x48, 0x32, 0x40, 0xA2, 0x07, 0x10, 0x30, 0x43, 0x81, - 0xE7, 0x80, 0x7B, 0xFD, 0xEF, 0x73, 0x98, 0xC6, 0x00, 0x01, 0x02, 0x06, - 0x0C, 0x0C, 0x18, 0x10, 0x30, 0x30, 0x60, 0x60, 0x60, 0xC0, 0xC0, 0xC0, - 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x40, 0x60, 0x60, 0x20, 0x04, 0x06, - 0x06, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x06, - 0x06, 0x06, 0x0C, 0x0C, 0x0C, 0x18, 0x10, 0x30, 0x60, 0x40, 0xC0, 0x01, - 0x00, 0x04, 0x00, 0x10, 0x00, 0xC6, 0xE3, 0xF8, 0x7E, 0x00, 0x70, 0x03, - 0x40, 0x19, 0x80, 0xC2, 0x06, 0x0C, 0x00, 0x00, 0xC0, 0x01, 0x00, 0x02, - 0x00, 0x04, 0x00, 0x08, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0xFF, 0xFE, - 0x02, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x02, - 0x00, 0x04, 0x00, 0x0F, 0x87, 0x87, 0x83, 0x83, 0xC1, 0xC1, 0xC0, 0xC0, - 0xE0, 0x60, 0x00, 0xFF, 0xFF, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, 0x60, - 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x04, 0x00, - 0x01, 0x80, 0x00, 0x60, 0x00, 0x08, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, - 0x10, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x20, 0x00, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0x40, 0x00, 0x18, 0x00, 0x06, 0x00, 0x00, 0x80, 0x00, 0x20, - 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00, 0x01, - 0xF0, 0x18, 0x60, 0x80, 0x86, 0x01, 0x10, 0x04, 0x80, 0x12, 0x00, 0x50, - 0x01, 0x40, 0x0D, 0x00, 0x24, 0x00, 0xA0, 0x02, 0x80, 0x1A, 0x00, 0x48, - 0x01, 0x20, 0x0C, 0x80, 0x22, 0x01, 0x84, 0x0C, 0x18, 0x60, 0x3E, 0x00, - 0x00, 0x60, 0x07, 0x00, 0x68, 0x06, 0x40, 0xE4, 0x04, 0x20, 0x01, 0x00, - 0x08, 0x00, 0x40, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x80, 0x04, - 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x80, 0x04, 0x0F, 0xFF, 0x80, 0x00, - 0x3C, 0x00, 0x61, 0x80, 0x40, 0x40, 0x40, 0x10, 0x60, 0x08, 0x00, 0x04, - 0x00, 0x02, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03, 0x00, 0x07, 0x00, 0x07, - 0x00, 0x06, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x0C, - 0x00, 0x1C, 0x01, 0x1C, 0x00, 0x8F, 0xFF, 0xC0, 0x00, 0xFC, 0x03, 0x06, - 0x06, 0x03, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x00, 0x02, - 0x00, 0x0C, 0x00, 0xF0, 0x00, 0x18, 0x00, 0x04, 0x00, 0x02, 0x00, 0x02, - 0x00, 0x02, 0x00, 0x02, 0x00, 0x04, 0x00, 0x04, 0x40, 0x18, 0x70, 0x30, - 0x0F, 0xC0, 0x00, 0x1C, 0x00, 0xD0, 0x06, 0x80, 0x32, 0x00, 0x88, 0x04, - 0x20, 0x30, 0x81, 0x84, 0x04, 0x10, 0x20, 0x41, 0x81, 0x0C, 0x08, 0x60, - 0x21, 0x00, 0x8F, 0xFF, 0x80, 0x18, 0x00, 0x40, 0x01, 0x00, 0x04, 0x00, - 0x10, 0x07, 0xE0, 0x03, 0xFF, 0x03, 0x00, 0x01, 0x80, 0x00, 0x80, 0x00, - 0x40, 0x00, 0x20, 0x00, 0x30, 0x00, 0x1B, 0xE0, 0x0E, 0x0C, 0x00, 0x02, - 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, 0x08, 0x00, - 0x08, 0x00, 0x04, 0x60, 0x04, 0x18, 0x04, 0x06, 0x0C, 0x00, 0xF8, 0x00, - 0x00, 0x3F, 0x00, 0xC0, 0x03, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x30, 0x00, 0x20, 0x00, 0x40, 0x00, 0x43, 0xE0, 0x4C, 0x30, 0xB0, 0x18, - 0xE0, 0x08, 0xC0, 0x08, 0x80, 0x08, 0x80, 0x08, 0x80, 0x10, 0xC0, 0x10, - 0x40, 0x20, 0x20, 0xC0, 0x1F, 0x00, 0xFF, 0xFC, 0x00, 0xE0, 0x04, 0x00, - 0x60, 0x02, 0x00, 0x30, 0x01, 0x00, 0x18, 0x00, 0x80, 0x0C, 0x00, 0x40, - 0x06, 0x00, 0x20, 0x03, 0x00, 0x10, 0x01, 0x80, 0x08, 0x00, 0xC0, 0x04, - 0x00, 0x60, 0x02, 0x00, 0x00, 0x00, 0xF0, 0x06, 0x18, 0x10, 0x18, 0x40, - 0x11, 0x00, 0x22, 0x00, 0x44, 0x00, 0x88, 0x02, 0x18, 0x08, 0x18, 0x60, - 0x1F, 0x80, 0xC1, 0x82, 0x01, 0x88, 0x01, 0x20, 0x02, 0x40, 0x04, 0x80, - 0x09, 0x00, 0x23, 0x00, 0x83, 0x06, 0x01, 0xF0, 0x00, 0x00, 0xF0, 0x06, - 0x18, 0x10, 0x10, 0x40, 0x30, 0x80, 0x22, 0x00, 0x44, 0x00, 0x88, 0x03, - 0x10, 0x0E, 0x30, 0x34, 0x30, 0xD0, 0x3E, 0x20, 0x00, 0x40, 0x01, 0x00, - 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0xC0, 0x02, 0x00, 0x18, 0x0F, 0xC0, - 0x00, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, 0x00, 0x01, 0xC7, 0xCF, - 0x9F, 0x1C, 0x00, 0x01, 0xC0, 0x7C, 0x0F, 0x81, 0xF0, 0x1C, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x07, 0x81, 0xE0, 0x3C, 0x0F, 0x01, - 0xC0, 0x70, 0x0E, 0x03, 0x80, 0x60, 0x00, 0x00, 0x01, 0x80, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x07, - 0x00, 0x00, 0xE0, 0x00, 0x38, 0x7F, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x18, 0x00, 0x03, 0x80, - 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x00, 0xE0, - 0x00, 0x0E, 0x00, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, - 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x00, 0x1F, 0xCE, 0x06, 0x80, - 0x38, 0x01, 0x80, 0x10, 0x01, 0x00, 0x20, 0x04, 0x01, 0x80, 0xF0, 0x18, - 0x01, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x0F, 0x80, 0xF8, - 0x07, 0x00, 0x01, 0xF0, 0x0C, 0x30, 0x30, 0x30, 0x40, 0x21, 0x00, 0x44, - 0x00, 0x88, 0x01, 0x10, 0x1E, 0x40, 0xC4, 0x86, 0x11, 0x08, 0x22, 0x20, - 0x48, 0x40, 0x90, 0x82, 0x21, 0x84, 0x40, 0xFC, 0x80, 0x01, 0x00, 0x02, - 0x00, 0x04, 0x00, 0x04, 0x00, 0x0C, 0x18, 0x07, 0xC0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x68, 0x00, 0x06, 0x40, 0x00, 0x32, 0x00, 0x03, 0x10, 0x00, - 0x10, 0x80, 0x01, 0x84, 0x00, 0x18, 0x10, 0x00, 0xC0, 0x80, 0x0C, 0x04, - 0x00, 0x60, 0x20, 0x06, 0x01, 0x00, 0x3F, 0xFC, 0x02, 0x00, 0x20, 0x10, - 0x01, 0x01, 0x00, 0x08, 0x08, 0x00, 0x40, 0x80, 0x02, 0x0C, 0x00, 0x09, - 0xFC, 0x07, 0xF0, 0x0F, 0xFF, 0x00, 0x40, 0x60, 0x20, 0x0C, 0x08, 0x01, - 0x02, 0x00, 0x40, 0x80, 0x10, 0x40, 0x08, 0x10, 0x06, 0x04, 0x03, 0x01, - 0xFF, 0x80, 0x40, 0x38, 0x20, 0x02, 0x08, 0x00, 0x42, 0x00, 0x10, 0x80, - 0x04, 0x40, 0x01, 0x10, 0x00, 0x84, 0x00, 0x41, 0x00, 0x23, 0xFF, 0xF0, - 0x00, 0xFC, 0x40, 0xC1, 0xF0, 0xC0, 0x1C, 0x60, 0x06, 0x10, 0x00, 0x88, - 0x00, 0x24, 0x00, 0x01, 0x00, 0x00, 0x40, 0x00, 0x30, 0x00, 0x08, 0x00, - 0x02, 0x00, 0x00, 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x03, 0x00, 0x00, - 0x40, 0x06, 0x08, 0x03, 0x01, 0x83, 0x80, 0x3F, 0x00, 0x0F, 0xFE, 0x00, - 0x80, 0xC0, 0x20, 0x18, 0x10, 0x02, 0x04, 0x00, 0x41, 0x00, 0x10, 0x40, - 0x04, 0x20, 0x01, 0x08, 0x00, 0x42, 0x00, 0x10, 0x80, 0x08, 0x20, 0x02, - 0x10, 0x00, 0x84, 0x00, 0x21, 0x00, 0x10, 0x40, 0x08, 0x20, 0x06, 0x08, - 0x03, 0x02, 0x01, 0x83, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x10, 0x02, 0x02, - 0x00, 0x60, 0x20, 0x06, 0x02, 0x00, 0x60, 0x20, 0x00, 0x04, 0x00, 0x00, - 0x40, 0x80, 0x04, 0x10, 0x00, 0x7F, 0x00, 0x04, 0x10, 0x00, 0x81, 0x00, - 0x08, 0x00, 0x00, 0x80, 0x00, 0x08, 0x00, 0x81, 0x00, 0x08, 0x10, 0x00, - 0x81, 0x00, 0x18, 0x10, 0x01, 0x8F, 0xFF, 0xF0, 0x0F, 0xFF, 0xF0, 0x10, - 0x03, 0x02, 0x00, 0x30, 0x20, 0x03, 0x02, 0x00, 0x20, 0x20, 0x00, 0x04, - 0x00, 0x00, 0x40, 0x80, 0x04, 0x10, 0x00, 0x7F, 0x00, 0x04, 0x10, 0x00, - 0x81, 0x00, 0x08, 0x00, 0x00, 0x80, 0x00, 0x08, 0x00, 0x01, 0x00, 0x00, - 0x10, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFE, - 0x40, 0xC0, 0xF0, 0x40, 0x1C, 0x20, 0x03, 0x10, 0x00, 0x88, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x08, 0x00, 0x02, 0x01, - 0xFE, 0x80, 0x02, 0x20, 0x00, 0x88, 0x00, 0x22, 0x00, 0x08, 0x40, 0x04, - 0x18, 0x01, 0x03, 0x81, 0xC0, 0x3F, 0x80, 0x07, 0xE1, 0xF8, 0x08, 0x02, - 0x00, 0x80, 0x10, 0x04, 0x00, 0x80, 0x20, 0x04, 0x01, 0x00, 0x20, 0x18, - 0x02, 0x00, 0x80, 0x10, 0x04, 0x00, 0x80, 0x3F, 0xFC, 0x01, 0x00, 0x60, - 0x10, 0x02, 0x00, 0x80, 0x10, 0x04, 0x00, 0x80, 0x20, 0x04, 0x02, 0x00, - 0x40, 0x10, 0x02, 0x00, 0x80, 0x10, 0x04, 0x00, 0x81, 0xF8, 0x3F, 0x00, - 0x0F, 0xFF, 0x80, 0x10, 0x00, 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, - 0x10, 0x00, 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x1F, 0xFF, 0x00, 0x00, 0xFF, 0xF0, 0x00, 0x20, - 0x00, 0x02, 0x00, 0x00, 0x20, 0x00, 0x02, 0x00, 0x00, 0x20, 0x00, 0x04, - 0x00, 0x00, 0x40, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, 0x0C, 0x04, 0x00, - 0x80, 0x40, 0x08, 0x08, 0x00, 0x80, 0x80, 0x08, 0x08, 0x01, 0x00, 0x80, - 0x10, 0x0C, 0x02, 0x00, 0x60, 0xC0, 0x01, 0xF0, 0x00, 0x0F, 0xE1, 0xF8, - 0x08, 0x03, 0x00, 0x80, 0x60, 0x04, 0x06, 0x00, 0x20, 0x60, 0x01, 0x06, - 0x00, 0x10, 0xC0, 0x00, 0x8C, 0x00, 0x04, 0xC0, 0x00, 0x2F, 0x80, 0x01, - 0x8E, 0x00, 0x18, 0x30, 0x00, 0x80, 0xC0, 0x04, 0x06, 0x00, 0x20, 0x10, - 0x02, 0x00, 0xC0, 0x10, 0x06, 0x00, 0x80, 0x30, 0x04, 0x00, 0x81, 0xFC, - 0x07, 0x80, 0x07, 0xFC, 0x00, 0x10, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, - 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x40, - 0x00, 0x10, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x10, 0x20, 0x04, - 0x08, 0x01, 0x04, 0x00, 0x81, 0x00, 0x20, 0x40, 0x0B, 0xFF, 0xFE, 0x0F, - 0x00, 0x1E, 0x03, 0x00, 0x38, 0x05, 0x00, 0x68, 0x04, 0x80, 0x68, 0x04, - 0x80, 0xC8, 0x04, 0x80, 0x90, 0x04, 0x81, 0x90, 0x08, 0x43, 0x10, 0x08, - 0x42, 0x10, 0x08, 0x46, 0x10, 0x08, 0x4C, 0x20, 0x10, 0x2C, 0x20, 0x10, - 0x38, 0x20, 0x10, 0x30, 0x20, 0x10, 0x00, 0x40, 0x10, 0x00, 0x40, 0x20, - 0x00, 0x40, 0x20, 0x00, 0x40, 0x20, 0x00, 0x40, 0xFC, 0x07, 0xE0, 0x1F, - 0x01, 0xFC, 0x0C, 0x00, 0x80, 0x78, 0x02, 0x01, 0xE0, 0x18, 0x04, 0x80, - 0x60, 0x13, 0x01, 0x00, 0x4C, 0x04, 0x03, 0x18, 0x10, 0x0C, 0x60, 0xC0, - 0x20, 0x83, 0x00, 0x83, 0x08, 0x06, 0x0C, 0x20, 0x18, 0x18, 0x80, 0x40, - 0x66, 0x01, 0x00, 0x98, 0x04, 0x03, 0x40, 0x30, 0x0D, 0x00, 0xC0, 0x14, - 0x02, 0x00, 0x70, 0x3F, 0x80, 0xC0, 0x00, 0xF8, 0x01, 0x83, 0x01, 0x00, - 0xC1, 0x00, 0x21, 0x00, 0x19, 0x00, 0x04, 0x80, 0x02, 0x80, 0x01, 0x40, - 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x28, 0x00, 0x14, 0x00, 0x12, - 0x00, 0x09, 0x80, 0x08, 0x40, 0x08, 0x30, 0x08, 0x0C, 0x18, 0x01, 0xF0, - 0x00, 0x0F, 0xFE, 0x00, 0x40, 0x60, 0x20, 0x0C, 0x08, 0x01, 0x02, 0x00, - 0x40, 0x80, 0x10, 0x40, 0x04, 0x10, 0x02, 0x04, 0x01, 0x01, 0x01, 0x80, - 0x7F, 0x80, 0x20, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x40, - 0x00, 0x10, 0x00, 0x04, 0x00, 0x01, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xF8, - 0x01, 0x83, 0x01, 0x00, 0xC1, 0x00, 0x21, 0x00, 0x19, 0x00, 0x05, 0x00, - 0x02, 0x80, 0x01, 0x40, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x28, - 0x00, 0x14, 0x00, 0x12, 0x00, 0x09, 0x80, 0x08, 0x40, 0x08, 0x30, 0x08, - 0x0C, 0x18, 0x03, 0xF0, 0x00, 0xC0, 0x01, 0xC0, 0x01, 0xFE, 0x18, 0xC0, - 0xF0, 0x0F, 0xFE, 0x00, 0x40, 0x60, 0x20, 0x0C, 0x08, 0x01, 0x02, 0x00, - 0x40, 0x80, 0x10, 0x40, 0x04, 0x10, 0x02, 0x04, 0x01, 0x01, 0x01, 0x80, - 0x7F, 0x80, 0x20, 0x60, 0x08, 0x0C, 0x02, 0x03, 0x80, 0x80, 0x60, 0x40, - 0x18, 0x10, 0x03, 0x04, 0x00, 0xC1, 0x00, 0x1B, 0xF8, 0x07, 0x00, 0x7E, - 0x40, 0x60, 0xF0, 0x20, 0x1C, 0x10, 0x02, 0x08, 0x00, 0x82, 0x00, 0x00, - 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xC0, 0x00, - 0x18, 0x00, 0x01, 0x00, 0x00, 0x44, 0x00, 0x11, 0x00, 0x04, 0x40, 0x02, - 0x38, 0x01, 0x0B, 0x81, 0x82, 0x3F, 0x80, 0x3F, 0xFF, 0xA0, 0x20, 0x50, - 0x10, 0x28, 0x08, 0x24, 0x08, 0x10, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, 0x10, - 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x1F, - 0xFC, 0x00, 0x7E, 0x0F, 0xC4, 0x00, 0x42, 0x00, 0x10, 0x80, 0x08, 0x20, - 0x02, 0x08, 0x00, 0x82, 0x00, 0x21, 0x00, 0x08, 0x40, 0x04, 0x10, 0x01, - 0x04, 0x00, 0x41, 0x00, 0x10, 0x80, 0x0C, 0x20, 0x02, 0x08, 0x00, 0x82, - 0x00, 0x60, 0x80, 0x10, 0x10, 0x08, 0x06, 0x0C, 0x00, 0x7C, 0x00, 0xFE, - 0x03, 0xF9, 0x80, 0x02, 0x0C, 0x00, 0x30, 0x20, 0x01, 0x01, 0x00, 0x10, - 0x08, 0x01, 0x80, 0x60, 0x08, 0x03, 0x00, 0xC0, 0x18, 0x04, 0x00, 0x40, - 0x60, 0x02, 0x06, 0x00, 0x10, 0x20, 0x00, 0xC3, 0x00, 0x06, 0x10, 0x00, - 0x31, 0x80, 0x00, 0x88, 0x00, 0x04, 0x80, 0x00, 0x2C, 0x00, 0x01, 0xC0, - 0x00, 0x0E, 0x00, 0x00, 0x7F, 0x07, 0xF2, 0x00, 0x04, 0x20, 0x00, 0xC2, - 0x00, 0x08, 0x20, 0xC0, 0x82, 0x0C, 0x18, 0x21, 0xA1, 0x02, 0x1A, 0x10, - 0x23, 0x23, 0x04, 0x32, 0x30, 0x46, 0x22, 0x04, 0x62, 0x60, 0x4C, 0x26, - 0x04, 0xC2, 0x40, 0x58, 0x24, 0x05, 0x82, 0xC0, 0x70, 0x28, 0x07, 0x02, - 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x00, 0x0F, 0xC1, 0xF8, 0x30, 0x03, 0x00, - 0xC0, 0x30, 0x06, 0x03, 0x00, 0x18, 0x10, 0x00, 0xC1, 0x00, 0x03, 0x18, - 0x00, 0x09, 0x80, 0x00, 0x78, 0x00, 0x01, 0x80, 0x00, 0x1C, 0x00, 0x01, - 0xA0, 0x00, 0x19, 0x80, 0x01, 0x84, 0x00, 0x18, 0x30, 0x01, 0x80, 0xC0, - 0x08, 0x06, 0x00, 0x80, 0x18, 0x08, 0x00, 0xC1, 0xF8, 0x3F, 0x80, 0x7E, - 0x0F, 0xC4, 0x00, 0xC1, 0x80, 0x60, 0x20, 0x30, 0x0C, 0x08, 0x03, 0x04, - 0x00, 0x43, 0x00, 0x19, 0x80, 0x02, 0xC0, 0x00, 0xE0, 0x00, 0x10, 0x00, - 0x04, 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x40, 0x03, 0xFF, 0x80, 0x0F, 0xFF, 0x86, 0x00, - 0x82, 0x00, 0x81, 0x00, 0xC1, 0x80, 0xC0, 0xC0, 0xC0, 0x00, 0xC0, 0x00, - 0xC0, 0x00, 0x40, 0x00, 0x40, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, - 0x60, 0x10, 0x60, 0x18, 0x20, 0x08, 0x20, 0x04, 0x20, 0x02, 0x30, 0x03, - 0x1F, 0xFF, 0x80, 0x07, 0xE0, 0x80, 0x10, 0x02, 0x00, 0xC0, 0x18, 0x02, - 0x00, 0x40, 0x18, 0x03, 0x00, 0x40, 0x08, 0x01, 0x00, 0x60, 0x0C, 0x01, - 0x00, 0x20, 0x04, 0x01, 0x80, 0x30, 0x04, 0x00, 0x80, 0x10, 0x06, 0x00, - 0xFC, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, - 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, - 0x02, 0x02, 0x02, 0x02, 0x00, 0x07, 0xE0, 0x0C, 0x01, 0x00, 0x20, 0x04, - 0x01, 0x80, 0x30, 0x04, 0x00, 0x80, 0x30, 0x06, 0x00, 0x80, 0x10, 0x02, - 0x00, 0xC0, 0x18, 0x02, 0x00, 0x40, 0x18, 0x03, 0x00, 0x40, 0x08, 0x03, - 0x00, 0x60, 0xF8, 0x00, 0x01, 0x00, 0x1C, 0x01, 0xB0, 0x19, 0x81, 0x86, - 0x18, 0x11, 0x80, 0xD8, 0x03, 0x80, 0x18, 0xFF, 0xFF, 0xF8, 0xC7, 0x1C, - 0x71, 0x80, 0x03, 0xF8, 0x0C, 0x0C, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, - 0x00, 0x02, 0x07, 0xFC, 0x18, 0x0C, 0x20, 0x04, 0x40, 0x04, 0x80, 0x04, - 0x80, 0x08, 0x80, 0x38, 0xC0, 0xE8, 0x3F, 0x0F, 0x0F, 0x00, 0x00, 0x20, - 0x00, 0x04, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x04, 0x00, 0x00, 0x87, - 0xC0, 0x13, 0x0C, 0x06, 0x80, 0x40, 0xE0, 0x0C, 0x18, 0x00, 0x82, 0x00, - 0x10, 0xC0, 0x02, 0x10, 0x00, 0x42, 0x00, 0x08, 0x40, 0x02, 0x08, 0x00, - 0x43, 0x80, 0x10, 0x70, 0x04, 0x09, 0x83, 0x0F, 0x1F, 0x80, 0x01, 0xFC, - 0x83, 0x03, 0xC6, 0x00, 0xE4, 0x00, 0x22, 0x00, 0x12, 0x00, 0x01, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x18, 0x00, 0x64, - 0x00, 0x61, 0x81, 0xC0, 0x7F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x60, 0x3F, 0x18, 0x10, 0x64, - 0x18, 0x0D, 0x08, 0x01, 0xC2, 0x00, 0x71, 0x00, 0x0C, 0x80, 0x02, 0x20, - 0x00, 0x88, 0x00, 0x62, 0x00, 0x18, 0x80, 0x0E, 0x20, 0x03, 0x04, 0x03, - 0x40, 0xC1, 0xB0, 0x1F, 0x8F, 0x00, 0x01, 0xF0, 0x0E, 0x0C, 0x18, 0x06, - 0x30, 0x02, 0x60, 0x01, 0x40, 0x01, 0xC0, 0x01, 0xFF, 0xFF, 0x80, 0x00, - 0x80, 0x00, 0x80, 0x00, 0x40, 0x00, 0x60, 0x06, 0x30, 0x1C, 0x0F, 0xE0, - 0x00, 0x1F, 0xE0, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0x00, - 0x02, 0x00, 0x07, 0xFF, 0xC0, 0x08, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, - 0x08, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x00, 0x80, 0x00, - 0x20, 0x00, 0x04, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x04, 0x00, 0x0F, - 0xFF, 0x00, 0x03, 0xE3, 0xE1, 0x83, 0x60, 0x40, 0x38, 0x10, 0x03, 0x04, - 0x00, 0x60, 0x80, 0x0C, 0x20, 0x01, 0x84, 0x00, 0x20, 0x80, 0x04, 0x10, - 0x01, 0x82, 0x00, 0x30, 0x60, 0x0C, 0x04, 0x02, 0x80, 0x61, 0x90, 0x07, - 0xC6, 0x00, 0x00, 0xC0, 0x00, 0x10, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, - 0x30, 0x00, 0x0C, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x40, 0x00, - 0x10, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x23, 0xE0, 0x0B, - 0x0C, 0x05, 0x00, 0x81, 0x80, 0x20, 0x40, 0x08, 0x10, 0x02, 0x08, 0x00, - 0x82, 0x00, 0x60, 0x80, 0x18, 0x20, 0x06, 0x10, 0x01, 0x84, 0x00, 0x61, - 0x00, 0x30, 0x40, 0x0C, 0xFC, 0x1F, 0xC0, 0x00, 0x30, 0x00, 0x60, 0x00, - 0xC0, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x20, - 0x00, 0x40, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x40, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x08, 0x00, 0x10, 0x1F, 0xFF, - 0x80, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x07, 0xFE, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, - 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x20, 0x00, - 0x40, 0x00, 0x80, 0x01, 0x00, 0x06, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, - 0x00, 0x80, 0x03, 0x00, 0x0C, 0x0F, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x60, - 0x00, 0x10, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0xC0, 0x00, 0x30, 0xFC, - 0x08, 0x18, 0x02, 0x0C, 0x00, 0x8C, 0x00, 0x66, 0x00, 0x1B, 0x00, 0x05, - 0x80, 0x01, 0xB0, 0x00, 0x46, 0x00, 0x31, 0xC0, 0x0C, 0x30, 0x02, 0x06, - 0x00, 0x80, 0xC0, 0x60, 0x30, 0xF8, 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x20, - 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x20, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x20, - 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x04, 0x00, 0x08, 0x0F, 0xFF, 0xC0, - 0x1C, 0xF1, 0xE0, 0xF1, 0xE3, 0x0E, 0x1C, 0x10, 0xC1, 0x81, 0x08, 0x10, - 0x30, 0x81, 0x03, 0x18, 0x10, 0x21, 0x83, 0x02, 0x10, 0x30, 0x21, 0x02, - 0x06, 0x10, 0x20, 0x63, 0x02, 0x04, 0x30, 0x60, 0x42, 0x06, 0x04, 0xF8, - 0x70, 0xF0, 0x0E, 0x3E, 0x01, 0x60, 0x81, 0xC0, 0x20, 0xC0, 0x10, 0x40, - 0x08, 0x20, 0x04, 0x30, 0x02, 0x10, 0x02, 0x08, 0x01, 0x04, 0x00, 0x82, - 0x00, 0x42, 0x00, 0x21, 0x00, 0x20, 0x80, 0x13, 0xF0, 0x3E, 0x01, 0xF0, - 0x06, 0x0C, 0x18, 0x06, 0x20, 0x03, 0x60, 0x01, 0x40, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x02, 0x80, 0x06, 0xC0, 0x04, 0x40, 0x18, - 0x30, 0x60, 0x1F, 0x80, 0x0F, 0x1F, 0x80, 0x16, 0x0C, 0x01, 0xC0, 0x20, - 0x30, 0x03, 0x03, 0x00, 0x10, 0x20, 0x01, 0x02, 0x00, 0x10, 0x40, 0x01, - 0x04, 0x00, 0x10, 0x40, 0x02, 0x06, 0x00, 0x60, 0x60, 0x04, 0x0B, 0x00, - 0x80, 0x98, 0x30, 0x08, 0xFC, 0x00, 0x80, 0x00, 0x08, 0x00, 0x01, 0x00, - 0x00, 0x10, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x0F, 0xF0, 0x00, 0x03, - 0xF1, 0xE1, 0x83, 0x20, 0x40, 0x34, 0x10, 0x03, 0x84, 0x00, 0x30, 0x80, - 0x04, 0x20, 0x00, 0x84, 0x00, 0x10, 0x80, 0x06, 0x10, 0x00, 0xC2, 0x00, - 0x30, 0x60, 0x0E, 0x04, 0x03, 0x40, 0x60, 0xC8, 0x07, 0xE2, 0x00, 0x00, - 0x40, 0x00, 0x08, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, 0x08, 0x00, 0x01, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0x87, 0xC0, 0x23, 0x08, 0x04, 0xC0, 0x00, - 0xE0, 0x00, 0x18, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x02, - 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x02, 0x00, 0x00, 0x40, 0x00, 0x08, - 0x00, 0x3F, 0xFE, 0x00, 0x01, 0xFA, 0x0C, 0x1C, 0x20, 0x08, 0x80, 0x11, - 0x00, 0x03, 0x00, 0x03, 0xF8, 0x00, 0x7C, 0x00, 0x0C, 0x00, 0x09, 0x00, - 0x16, 0x00, 0x2C, 0x00, 0x9E, 0x06, 0x27, 0xF0, 0x00, 0x08, 0x00, 0x40, - 0x02, 0x00, 0x10, 0x00, 0x80, 0x7F, 0xFC, 0x40, 0x02, 0x00, 0x10, 0x00, - 0x80, 0x08, 0x00, 0x40, 0x02, 0x00, 0x10, 0x01, 0x00, 0x08, 0x00, 0x40, - 0x02, 0x00, 0xD8, 0x1C, 0x3F, 0x00, 0xF0, 0x1E, 0x20, 0x04, 0x80, 0x09, - 0x00, 0x12, 0x00, 0x24, 0x00, 0xC8, 0x01, 0x20, 0x02, 0x40, 0x04, 0x80, - 0x09, 0x00, 0x12, 0x00, 0x64, 0x03, 0x8C, 0x1D, 0x0F, 0xC3, 0x80, 0xFE, - 0x0F, 0xE6, 0x00, 0x20, 0x40, 0x08, 0x08, 0x03, 0x01, 0x80, 0x40, 0x30, - 0x18, 0x06, 0x02, 0x00, 0x40, 0x80, 0x08, 0x30, 0x01, 0x84, 0x00, 0x31, - 0x80, 0x02, 0x20, 0x00, 0x48, 0x00, 0x09, 0x00, 0x01, 0xC0, 0x00, 0xF8, - 0x0F, 0xA0, 0x01, 0x90, 0x00, 0x88, 0x40, 0xC4, 0x30, 0x42, 0x18, 0x61, - 0x1A, 0x20, 0x8D, 0x10, 0x4C, 0x98, 0x26, 0x48, 0x16, 0x2C, 0x0B, 0x14, - 0x07, 0x0A, 0x03, 0x07, 0x01, 0x81, 0x00, 0x0F, 0x83, 0xE0, 0xC0, 0x18, - 0x0C, 0x0C, 0x01, 0x83, 0x00, 0x18, 0xC0, 0x01, 0xB0, 0x00, 0x1C, 0x00, - 0x03, 0x00, 0x00, 0xF0, 0x00, 0x63, 0x00, 0x18, 0x30, 0x06, 0x06, 0x01, - 0x80, 0x60, 0x60, 0x06, 0x3F, 0x07, 0xE0, 0x0F, 0xC0, 0xF8, 0x30, 0x01, - 0x00, 0x80, 0x18, 0x04, 0x00, 0x80, 0x30, 0x0C, 0x01, 0x80, 0xC0, 0x04, - 0x04, 0x00, 0x30, 0x60, 0x01, 0x86, 0x00, 0x04, 0x20, 0x00, 0x23, 0x00, - 0x01, 0xB0, 0x00, 0x0D, 0x00, 0x00, 0x38, 0x00, 0x01, 0x80, 0x00, 0x08, - 0x00, 0x00, 0xC0, 0x00, 0x04, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, - 0x20, 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xFF, 0x10, 0x06, 0x10, 0x0C, 0x10, - 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, - 0x00, 0x0C, 0x00, 0x18, 0x04, 0x30, 0x0C, 0x60, 0x0C, 0xFF, 0xF8, 0x00, - 0xE0, 0x20, 0x08, 0x01, 0x00, 0x20, 0x04, 0x01, 0x00, 0x20, 0x04, 0x00, - 0x80, 0x20, 0x08, 0x0E, 0x00, 0x60, 0x04, 0x00, 0x80, 0x10, 0x02, 0x00, - 0x40, 0x08, 0x02, 0x00, 0x40, 0x08, 0x01, 0x00, 0x18, 0x00, 0x00, 0x10, - 0xC3, 0x08, 0x20, 0x86, 0x18, 0x41, 0x04, 0x30, 0xC2, 0x08, 0x21, 0x86, - 0x10, 0x43, 0x0C, 0x20, 0x06, 0x00, 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, - 0x10, 0x04, 0x02, 0x00, 0x80, 0x20, 0x0C, 0x01, 0xC0, 0xC0, 0x40, 0x10, - 0x04, 0x03, 0x00, 0x80, 0x20, 0x08, 0x02, 0x01, 0x00, 0xC0, 0xE0, 0x00, - 0x1E, 0x02, 0x66, 0x0D, 0x86, 0x16, 0x06, 0x48, 0x07, 0x00}; - -const GFXglyph FreeMonoOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 7, 22, 21, 9, -21}, // 0x21 '!' - {20, 13, 10, 21, 7, -20}, // 0x22 '"' - {37, 15, 24, 21, 5, -21}, // 0x23 '#' - {82, 16, 26, 21, 4, -22}, // 0x24 '$' - {134, 16, 21, 21, 5, -20}, // 0x25 '%' - {176, 13, 18, 21, 5, -17}, // 0x26 '&' - {206, 5, 10, 21, 12, -20}, // 0x27 ''' - {213, 8, 25, 21, 12, -20}, // 0x28 '(' - {238, 8, 25, 21, 5, -20}, // 0x29 ')' - {263, 14, 11, 21, 7, -19}, // 0x2A '*' - {283, 15, 17, 21, 5, -17}, // 0x2B '+' - {315, 9, 10, 21, 4, -4}, // 0x2C ',' - {327, 16, 1, 21, 5, -9}, // 0x2D '-' - {329, 5, 5, 21, 8, -4}, // 0x2E '.' - {333, 19, 26, 21, 3, -22}, // 0x2F '/' - {395, 14, 21, 21, 5, -20}, // 0x30 '0' - {432, 13, 21, 21, 4, -20}, // 0x31 '1' - {467, 17, 21, 21, 3, -20}, // 0x32 '2' - {512, 16, 21, 21, 3, -20}, // 0x33 '3' - {554, 14, 21, 21, 5, -20}, // 0x34 '4' - {591, 17, 21, 21, 4, -20}, // 0x35 '5' - {636, 16, 21, 21, 6, -20}, // 0x36 '6' - {678, 13, 21, 21, 8, -20}, // 0x37 '7' - {713, 15, 21, 21, 5, -20}, // 0x38 '8' - {753, 15, 21, 21, 5, -20}, // 0x39 '9' - {793, 7, 15, 21, 8, -14}, // 0x3A ':' - {807, 11, 20, 21, 4, -14}, // 0x3B ';' - {835, 17, 16, 21, 5, -17}, // 0x3C '<' - {869, 19, 6, 21, 3, -12}, // 0x3D '=' - {884, 18, 16, 21, 3, -17}, // 0x3E '>' - {920, 12, 20, 21, 8, -19}, // 0x3F '?' - {950, 15, 23, 21, 5, -20}, // 0x40 '@' - {994, 21, 20, 21, 0, -19}, // 0x41 'A' - {1047, 18, 20, 21, 2, -19}, // 0x42 'B' - {1092, 18, 20, 21, 4, -19}, // 0x43 'C' - {1137, 18, 20, 21, 2, -19}, // 0x44 'D' - {1182, 20, 20, 21, 2, -19}, // 0x45 'E' - {1232, 20, 20, 21, 2, -19}, // 0x46 'F' - {1282, 18, 20, 21, 4, -19}, // 0x47 'G' - {1327, 21, 20, 21, 2, -19}, // 0x48 'H' - {1380, 17, 20, 21, 4, -19}, // 0x49 'I' - {1423, 20, 20, 21, 4, -19}, // 0x4A 'J' - {1473, 21, 20, 21, 2, -19}, // 0x4B 'K' - {1526, 18, 20, 21, 2, -19}, // 0x4C 'L' - {1571, 24, 20, 21, 1, -19}, // 0x4D 'M' - {1631, 22, 20, 21, 2, -19}, // 0x4E 'N' - {1686, 17, 20, 21, 4, -19}, // 0x4F 'O' - {1729, 18, 20, 21, 2, -19}, // 0x50 'P' - {1774, 17, 24, 21, 4, -19}, // 0x51 'Q' - {1825, 18, 20, 21, 2, -19}, // 0x52 'R' - {1870, 18, 20, 21, 3, -19}, // 0x53 'S' - {1915, 17, 20, 21, 5, -19}, // 0x54 'T' - {1958, 18, 20, 21, 5, -19}, // 0x55 'U' - {2003, 21, 20, 21, 4, -19}, // 0x56 'V' - {2056, 20, 20, 21, 4, -19}, // 0x57 'W' - {2106, 21, 20, 21, 2, -19}, // 0x58 'X' - {2159, 18, 20, 21, 5, -19}, // 0x59 'Y' - {2204, 17, 20, 21, 4, -19}, // 0x5A 'Z' - {2247, 11, 25, 21, 9, -20}, // 0x5B '[' - {2282, 8, 27, 21, 9, -22}, // 0x5C '\' - {2309, 11, 25, 21, 5, -20}, // 0x5D ']' - {2344, 13, 9, 21, 7, -20}, // 0x5E '^' - {2359, 21, 1, 21, -1, 4}, // 0x5F '_' - {2362, 5, 5, 21, 9, -21}, // 0x60 '`' - {2366, 16, 15, 21, 3, -14}, // 0x61 'a' - {2396, 19, 21, 21, 1, -20}, // 0x62 'b' - {2446, 17, 15, 21, 4, -14}, // 0x63 'c' - {2478, 18, 21, 21, 4, -20}, // 0x64 'd' - {2526, 16, 15, 21, 4, -14}, // 0x65 'e' - {2556, 19, 21, 21, 4, -20}, // 0x66 'f' - {2606, 19, 22, 21, 4, -14}, // 0x67 'g' - {2659, 18, 21, 21, 2, -20}, // 0x68 'h' - {2707, 15, 22, 21, 3, -21}, // 0x69 'i' - {2749, 15, 29, 21, 3, -21}, // 0x6A 'j' - {2804, 18, 21, 21, 2, -20}, // 0x6B 'k' - {2852, 15, 21, 21, 3, -20}, // 0x6C 'l' - {2892, 20, 15, 21, 1, -14}, // 0x6D 'm' - {2930, 17, 15, 21, 2, -14}, // 0x6E 'n' - {2962, 16, 15, 21, 4, -14}, // 0x6F 'o' - {2992, 20, 22, 21, 0, -14}, // 0x70 'p' - {3047, 19, 22, 21, 4, -14}, // 0x71 'q' - {3100, 19, 15, 21, 3, -14}, // 0x72 'r' - {3136, 15, 15, 21, 4, -14}, // 0x73 's' - {3165, 13, 20, 21, 5, -19}, // 0x74 't' - {3198, 15, 15, 21, 4, -14}, // 0x75 'u' - {3227, 19, 15, 21, 4, -14}, // 0x76 'v' - {3263, 17, 15, 21, 5, -14}, // 0x77 'w' - {3295, 19, 15, 21, 2, -14}, // 0x78 'x' - {3331, 21, 22, 21, 1, -14}, // 0x79 'y' - {3389, 16, 15, 21, 4, -14}, // 0x7A 'z' - {3419, 11, 25, 21, 8, -20}, // 0x7B '{' - {3454, 6, 24, 21, 9, -19}, // 0x7C '|' - {3472, 10, 25, 21, 6, -20}, // 0x7D '}' - {3504, 15, 5, 21, 5, -11}}; // 0x7E '~' - -const GFXfont FreeMonoOblique18pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique18pt7bBitmaps, - (GFXglyph *)FreeMonoOblique18pt7bGlyphs, 0x20, 0x7E, 35}; - -// Approx. 4186 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h deleted file mode 100644 index 28bbf9e..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h +++ /dev/null @@ -1,645 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xC0, 0xF0, 0x3C, 0x0E, 0x03, 0x81, 0xE0, 0x78, 0x1C, 0x07, 0x01, - 0xC0, 0xE0, 0x38, 0x0E, 0x03, 0x00, 0xC0, 0x70, 0x1C, 0x06, 0x01, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x0F, 0x83, 0xE0, 0xF8, - 0x1C, 0x00, 0x7E, 0x3F, 0x7E, 0x3F, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, - 0x78, 0x3C, 0xF8, 0x7C, 0xF0, 0x78, 0xF0, 0x78, 0xF0, 0x78, 0xE0, 0x70, - 0xE0, 0x70, 0xE0, 0x70, 0xC0, 0x60, 0x00, 0x18, 0x30, 0x00, 0x61, 0x80, - 0x01, 0x86, 0x00, 0x04, 0x18, 0x00, 0x30, 0xC0, 0x00, 0xC3, 0x00, 0x03, - 0x0C, 0x00, 0x18, 0x30, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, - 0x07, 0xFF, 0xFF, 0x1F, 0xFF, 0xFC, 0x03, 0x0C, 0x00, 0x18, 0x30, 0x00, - 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, 0x00, 0x30, 0xC0, 0x1F, 0xFF, - 0xF8, 0x7F, 0xFF, 0xE0, 0x18, 0x30, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, - 0x06, 0x18, 0x00, 0x30, 0x40, 0x00, 0xC3, 0x00, 0x03, 0x0C, 0x00, 0x18, - 0x30, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x80, 0x00, 0x3F, 0x00, 0x07, 0xFD, 0x80, - 0x70, 0x7C, 0x06, 0x00, 0xE0, 0x60, 0x02, 0x07, 0x00, 0x10, 0x30, 0x00, - 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x70, 0x00, 0x01, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x18, - 0x00, 0x00, 0xC2, 0x00, 0x06, 0x30, 0x00, 0x61, 0x80, 0x03, 0x1E, 0x00, - 0x30, 0xFC, 0x07, 0x06, 0x7F, 0xF0, 0x00, 0xFE, 0x00, 0x01, 0x80, 0x00, - 0x0C, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, - 0x00, 0x00, 0x78, 0x00, 0x07, 0xF8, 0x00, 0x38, 0x60, 0x01, 0xC0, 0xC0, - 0x06, 0x03, 0x00, 0x30, 0x0C, 0x00, 0xC0, 0x30, 0x03, 0x01, 0x80, 0x0C, - 0x0E, 0x00, 0x38, 0x70, 0x00, 0x7F, 0x81, 0xC0, 0xF8, 0x3F, 0x00, 0x07, - 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xC0, 0x00, 0x78, 0x00, 0x01, - 0x00, 0x78, 0x00, 0x07, 0xF8, 0x00, 0x38, 0x60, 0x01, 0x80, 0xC0, 0x06, - 0x03, 0x00, 0x30, 0x0C, 0x00, 0xC0, 0x30, 0x03, 0x01, 0x80, 0x0C, 0x0E, - 0x00, 0x18, 0x70, 0x00, 0x7F, 0x80, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, - 0x0F, 0xF8, 0x03, 0x8E, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x01, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x03, - 0xE0, 0x01, 0xCC, 0x0E, 0x60, 0xC3, 0xD8, 0x18, 0x63, 0x03, 0x18, 0xC0, - 0x33, 0x18, 0x06, 0xC3, 0x00, 0x70, 0x60, 0x0E, 0x0C, 0x01, 0xC0, 0xC0, - 0x78, 0x1C, 0x3B, 0xE1, 0xFE, 0x3C, 0x1F, 0x00, 0x00, 0x7E, 0xFD, 0xF3, - 0xE7, 0xCF, 0x3E, 0x78, 0xF1, 0xE3, 0x87, 0x0E, 0x18, 0x00, 0x00, 0x60, - 0x18, 0x07, 0x00, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x70, 0x0C, 0x03, 0x80, - 0x60, 0x1C, 0x03, 0x80, 0xE0, 0x1C, 0x03, 0x80, 0xF0, 0x1C, 0x03, 0x80, - 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x30, 0x02, 0x00, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x07, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x00, - 0xE0, 0x3C, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x38, 0x0E, 0x01, - 0x80, 0x70, 0x0C, 0x03, 0x00, 0xC0, 0x10, 0x00, 0x00, 0x20, 0x00, 0x18, - 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x30, 0x0E, 0x0C, 0x0B, - 0xF3, 0x3E, 0x3F, 0xFE, 0x01, 0xFC, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x0E, - 0x60, 0x07, 0x18, 0x01, 0x83, 0x00, 0xC0, 0xC0, 0x60, 0x30, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x30, 0x00, 0x01, - 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, 0x80, - 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, - 0x03, 0xF0, 0x7E, 0x07, 0xC0, 0xF8, 0x0F, 0x81, 0xF0, 0x1E, 0x03, 0xE0, - 0x3C, 0x07, 0x80, 0x70, 0x0F, 0x00, 0xE0, 0x0C, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xE0, 0x3C, 0xFF, 0xFF, 0xFF, 0xCF, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x03, 0x00, - 0x00, 0x07, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x1C, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x70, 0x00, 0x00, 0x60, 0x00, - 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0x03, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, 0x00, 0x00, 0xE0, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x0F, 0xF8, 0x01, - 0xC1, 0xC0, 0x38, 0x0E, 0x07, 0x00, 0x60, 0xE0, 0x03, 0x0C, 0x00, 0x31, - 0x80, 0x03, 0x18, 0x00, 0x33, 0x00, 0x03, 0x30, 0x00, 0x33, 0x00, 0x03, - 0x20, 0x00, 0x26, 0x00, 0x06, 0x60, 0x00, 0x66, 0x00, 0x06, 0x40, 0x00, - 0x4C, 0x00, 0x0C, 0xC0, 0x00, 0xCC, 0x00, 0x0C, 0xC0, 0x01, 0x8C, 0x00, - 0x18, 0xC0, 0x01, 0x8C, 0x00, 0x30, 0xC0, 0x07, 0x06, 0x00, 0xE0, 0x60, - 0x1C, 0x03, 0x87, 0x80, 0x3F, 0xF0, 0x00, 0xFC, 0x00, 0x00, 0x0E, 0x00, - 0x0F, 0x00, 0x0F, 0x80, 0x0E, 0xC0, 0x1C, 0xC0, 0x1C, 0x60, 0x1C, 0x30, - 0x08, 0x18, 0x00, 0x1C, 0x00, 0x0C, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, - 0x80, 0x01, 0xC0, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, - 0x18, 0x00, 0x0C, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x01, 0x80, - 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x1F, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, - 0x07, 0xE0, 0x00, 0x3F, 0xE0, 0x01, 0xE0, 0xE0, 0x07, 0x00, 0xE0, 0x1C, - 0x00, 0xE0, 0x30, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x00, 0x03, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, - 0x70, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xE0, - 0x00, 0xC3, 0x80, 0x01, 0x87, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, 0x00, 0x00, - 0x0F, 0xC0, 0x01, 0xFF, 0xC0, 0x1E, 0x07, 0x80, 0xE0, 0x06, 0x03, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, - 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xE0, 0x00, 0x01, - 0x80, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, - 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xE3, 0x00, 0x07, 0x0E, 0x00, - 0x38, 0x1E, 0x03, 0xC0, 0x3F, 0xFC, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0xF8, 0x00, 0x1B, 0x00, 0x06, 0x60, 0x01, 0x8C, 0x00, 0x63, - 0x00, 0x18, 0x60, 0x07, 0x0C, 0x00, 0xC1, 0x80, 0x30, 0x30, 0x0C, 0x0C, - 0x03, 0x01, 0x80, 0xC0, 0x30, 0x18, 0x06, 0x06, 0x00, 0xC1, 0x80, 0x30, - 0x60, 0x06, 0x18, 0x00, 0xC3, 0xFF, 0xFE, 0x7F, 0xFF, 0xC0, 0x00, 0xC0, - 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x18, 0x00, 0x03, 0x00, - 0x0F, 0xFC, 0x01, 0xFF, 0x80, 0x01, 0xFF, 0xF8, 0x0F, 0xFF, 0xC0, 0x40, - 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, - 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0xBF, 0xC0, 0x0F, 0xFF, - 0x80, 0xF8, 0x1E, 0x02, 0x00, 0x30, 0x00, 0x01, 0xC0, 0x00, 0x06, 0x00, - 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x06, - 0x00, 0x00, 0x30, 0x00, 0x03, 0x80, 0x00, 0x18, 0xC0, 0x01, 0x87, 0x00, - 0x38, 0x1E, 0x07, 0x80, 0x7F, 0xF8, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x03, - 0xF0, 0x00, 0xFF, 0xC0, 0x1F, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x01, - 0x80, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x00, - 0x0E, 0x00, 0x00, 0x60, 0x00, 0x07, 0x0F, 0x80, 0x31, 0xFF, 0x01, 0x9C, - 0x3C, 0x0D, 0x80, 0x60, 0xD8, 0x03, 0x87, 0x80, 0x0C, 0x38, 0x00, 0x61, - 0xC0, 0x03, 0x0C, 0x00, 0x18, 0x60, 0x00, 0xC3, 0x00, 0x0C, 0x18, 0x00, - 0x60, 0xE0, 0x06, 0x03, 0x00, 0x30, 0x1C, 0x07, 0x00, 0x70, 0x70, 0x01, - 0xFF, 0x00, 0x07, 0xE0, 0x00, 0x7F, 0xFF, 0xDF, 0xFF, 0xFC, 0x00, 0x0F, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x00, 0x3F, 0x00, 0x0F, - 0xFC, 0x01, 0xC1, 0xE0, 0x70, 0x06, 0x06, 0x00, 0x30, 0xC0, 0x03, 0x1C, - 0x00, 0x31, 0x80, 0x03, 0x18, 0x00, 0x31, 0x80, 0x06, 0x18, 0x00, 0xE0, - 0xC0, 0x1C, 0x0F, 0x07, 0x80, 0x3F, 0xE0, 0x03, 0xFE, 0x00, 0xE0, 0x70, - 0x18, 0x03, 0x83, 0x00, 0x1C, 0x60, 0x00, 0xC6, 0x00, 0x0C, 0xC0, 0x00, - 0xCC, 0x00, 0x0C, 0xC0, 0x00, 0xCC, 0x00, 0x18, 0xC0, 0x03, 0x8E, 0x00, - 0x70, 0x60, 0x0E, 0x07, 0x83, 0xC0, 0x3F, 0xF0, 0x00, 0xFC, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0xFF, 0x80, 0x0F, 0x07, 0x00, 0x70, 0x0E, 0x03, 0x80, - 0x18, 0x0C, 0x00, 0x70, 0x60, 0x00, 0xC1, 0x80, 0x03, 0x0C, 0x00, 0x0C, - 0x30, 0x00, 0x30, 0xC0, 0x01, 0xC3, 0x00, 0x0F, 0x0C, 0x00, 0x6C, 0x38, - 0x03, 0xF0, 0x60, 0x1D, 0x81, 0xE1, 0xE6, 0x03, 0xFE, 0x18, 0x03, 0xE0, - 0xC0, 0x00, 0x03, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x03, - 0xC0, 0x00, 0x7C, 0x00, 0xFF, 0xC0, 0x01, 0xF8, 0x00, 0x00, 0x07, 0x83, - 0xF1, 0xFC, 0x7F, 0x1F, 0x83, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x7E, 0x3F, 0x8F, 0xE3, 0xF0, 0x78, - 0x00, 0x00, 0x3C, 0x00, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xC0, 0x0F, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x7E, 0x00, 0xFC, 0x03, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x3E, - 0x00, 0xF8, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x3C, 0x00, 0x70, 0x01, - 0xC0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0C, 0x00, 0x3F, 0xFF, 0xFF, 0x9F, - 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, - 0x00, 0x06, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, - 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x70, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x07, 0xF0, 0x3F, 0xFC, 0x78, - 0x1E, 0xC0, 0x07, 0xC0, 0x03, 0xC0, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, - 0x06, 0x00, 0x06, 0x00, 0x1C, 0x00, 0x38, 0x00, 0xE0, 0x07, 0xC0, 0x07, - 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x7E, 0x00, 0xFE, 0x00, 0xFE, - 0x00, 0x7C, 0x00, 0x00, 0x3F, 0x00, 0x1F, 0xF0, 0x07, 0x07, 0x01, 0xC0, - 0x70, 0x60, 0x06, 0x1C, 0x00, 0xC3, 0x00, 0x18, 0xC0, 0x03, 0x18, 0x00, - 0x66, 0x00, 0xFC, 0xC0, 0x7F, 0x98, 0x1C, 0x66, 0x06, 0x0C, 0xC1, 0x81, - 0x98, 0x30, 0x33, 0x0C, 0x0E, 0x61, 0x81, 0x98, 0x30, 0x33, 0x06, 0x06, - 0x60, 0xF0, 0xCC, 0x0F, 0xF9, 0x80, 0x7F, 0x30, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x03, 0x80, 0x00, 0x30, 0x00, 0x07, 0x00, 0x00, - 0x70, 0x18, 0x0F, 0xFE, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x0F, - 0xFE, 0x00, 0x00, 0x06, 0xC0, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x31, 0x80, - 0x00, 0x06, 0x30, 0x00, 0x01, 0x86, 0x00, 0x00, 0x60, 0xC0, 0x00, 0x0C, - 0x1C, 0x00, 0x03, 0x01, 0x80, 0x00, 0x40, 0x30, 0x00, 0x18, 0x06, 0x00, - 0x06, 0x00, 0xC0, 0x00, 0xC0, 0x18, 0x00, 0x30, 0x01, 0x80, 0x07, 0xFF, - 0xF0, 0x01, 0xFF, 0xFE, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x18, 0x03, - 0x00, 0x03, 0x00, 0x40, 0x00, 0x30, 0x18, 0x00, 0x06, 0x06, 0x00, 0x00, - 0xC0, 0xC0, 0x00, 0x18, 0xFF, 0x80, 0x7F, 0xFF, 0xF0, 0x0F, 0xFC, 0x03, - 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0xC0, 0x06, 0x00, 0x38, 0x01, 0x80, 0x07, - 0x00, 0xC0, 0x00, 0xC0, 0x30, 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x03, 0x00, - 0x03, 0x00, 0xC0, 0x01, 0x80, 0x60, 0x00, 0xC0, 0x18, 0x01, 0xE0, 0x07, - 0xFF, 0xE0, 0x01, 0xFF, 0xFC, 0x00, 0xE0, 0x03, 0x80, 0x30, 0x00, 0x70, - 0x0C, 0x00, 0x0E, 0x03, 0x00, 0x01, 0x80, 0xC0, 0x00, 0x60, 0x60, 0x00, - 0x18, 0x18, 0x00, 0x06, 0x06, 0x00, 0x03, 0x01, 0x80, 0x01, 0xC0, 0x60, - 0x00, 0xE0, 0x30, 0x00, 0x70, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0xFC, 0xC0, 0x3C, 0x0F, 0x60, 0x78, 0x01, - 0xF0, 0x70, 0x00, 0x70, 0x70, 0x00, 0x18, 0x30, 0x00, 0x0C, 0x30, 0x00, - 0x06, 0x38, 0x00, 0x02, 0x18, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x0C, 0x00, - 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, 0x00, 0x30, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x60, - 0x60, 0x00, 0x60, 0x38, 0x00, 0xE0, 0x0F, 0x01, 0xE0, 0x03, 0xFF, 0xC0, - 0x00, 0x3F, 0x00, 0x00, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0x00, 0x0C, - 0x00, 0xF0, 0x03, 0x00, 0x1C, 0x01, 0xC0, 0x03, 0x80, 0x60, 0x00, 0x60, - 0x18, 0x00, 0x1C, 0x06, 0x00, 0x03, 0x01, 0x80, 0x00, 0xC0, 0xC0, 0x00, - 0x30, 0x30, 0x00, 0x0C, 0x0C, 0x00, 0x03, 0x03, 0x00, 0x00, 0xC0, 0xC0, - 0x00, 0x60, 0x60, 0x00, 0x18, 0x18, 0x00, 0x06, 0x06, 0x00, 0x03, 0x01, - 0x80, 0x00, 0xC0, 0xE0, 0x00, 0x70, 0x30, 0x00, 0x18, 0x0C, 0x00, 0x0C, - 0x03, 0x00, 0x06, 0x00, 0xC0, 0x07, 0x00, 0x60, 0x07, 0x80, 0xFF, 0xFF, - 0xC0, 0x3F, 0xFF, 0x80, 0x00, 0x03, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFC, - 0x01, 0x80, 0x01, 0x80, 0x30, 0x00, 0x60, 0x0C, 0x00, 0x0C, 0x01, 0x80, - 0x01, 0x80, 0x30, 0x00, 0x30, 0x06, 0x00, 0x00, 0x00, 0xC0, 0xC0, 0x00, - 0x30, 0x18, 0x00, 0x06, 0x03, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x1F, 0xF8, - 0x00, 0x07, 0x03, 0x00, 0x00, 0xC0, 0x60, 0x00, 0x18, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x18, 0x00, 0x0C, 0x03, 0x00, 0x01, - 0x80, 0x60, 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x01, 0x80, 0x01, 0x80, 0x60, - 0x00, 0x30, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, - 0xF0, 0x7F, 0xFF, 0xFF, 0x00, 0x60, 0x00, 0x30, 0x06, 0x00, 0x06, 0x00, - 0xC0, 0x00, 0x60, 0x0C, 0x00, 0x06, 0x00, 0xC0, 0x00, 0x60, 0x0C, 0x00, - 0x00, 0x00, 0xC0, 0xC0, 0x00, 0x18, 0x0C, 0x00, 0x01, 0x80, 0xC0, 0x00, - 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x38, 0x18, 0x00, 0x03, 0x01, - 0x80, 0x00, 0x30, 0x18, 0x00, 0x03, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xFF, 0xFC, 0x00, - 0x0F, 0xFF, 0xC0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0xFC, 0xC0, 0x3C, - 0x0F, 0xE0, 0x78, 0x01, 0xF0, 0x70, 0x00, 0x30, 0x70, 0x00, 0x18, 0x70, - 0x00, 0x0C, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, - 0x80, 0x00, 0x01, 0x80, 0x1F, 0xFE, 0xC0, 0x0F, 0xFF, 0x60, 0x00, 0x06, - 0x30, 0x00, 0x06, 0x18, 0x00, 0x03, 0x0C, 0x00, 0x01, 0x87, 0x00, 0x00, - 0xC1, 0x80, 0x00, 0xE0, 0xE0, 0x00, 0x60, 0x38, 0x00, 0x70, 0x0F, 0x00, - 0xF8, 0x03, 0xFF, 0xF0, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xFC, 0x1F, 0xE0, - 0x7F, 0x83, 0xFC, 0x03, 0x00, 0x06, 0x00, 0x60, 0x01, 0x80, 0x1C, 0x00, - 0x30, 0x03, 0x00, 0x06, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x38, 0x01, - 0x80, 0x06, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x18, 0x01, 0xFF, 0xFF, - 0x00, 0x3F, 0xFF, 0xC0, 0x06, 0x00, 0x18, 0x01, 0x80, 0x03, 0x00, 0x30, - 0x00, 0x60, 0x06, 0x00, 0x0C, 0x00, 0xC0, 0x03, 0x00, 0x38, 0x00, 0x60, - 0x06, 0x00, 0x0C, 0x00, 0xC0, 0x01, 0x80, 0x18, 0x00, 0x70, 0x03, 0x00, - 0x0C, 0x00, 0xE0, 0x01, 0x80, 0xFF, 0x83, 0xFE, 0x1F, 0xF0, 0x7F, 0xC0, - 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x70, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, - 0x80, 0x00, 0x06, 0x00, 0x00, 0x38, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, - 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0xFF, 0xFF, 0x83, 0xFF, 0xFE, 0x00, - 0x00, 0x0F, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0x0C, 0x00, 0x00, - 0x00, 0xC0, 0x00, 0x00, 0x18, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x38, 0x00, 0x00, 0x03, 0x00, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x07, - 0x00, 0x20, 0x00, 0x60, 0x06, 0x00, 0x06, 0x00, 0x60, 0x00, 0x60, 0x06, - 0x00, 0x06, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x0C, 0x00, 0xC0, 0x00, - 0xC0, 0x0C, 0x00, 0x18, 0x00, 0xE0, 0x03, 0x00, 0x07, 0x00, 0x70, 0x00, - 0x3C, 0x1C, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x03, - 0xFF, 0x07, 0xF8, 0x3F, 0xF8, 0x3F, 0xC0, 0x18, 0x00, 0x70, 0x00, 0xC0, - 0x07, 0x00, 0x0C, 0x00, 0x60, 0x00, 0x60, 0x0E, 0x00, 0x03, 0x00, 0xE0, - 0x00, 0x18, 0x0C, 0x00, 0x00, 0xC1, 0xC0, 0x00, 0x0C, 0x1C, 0x00, 0x00, - 0x61, 0x80, 0x00, 0x03, 0x3C, 0x00, 0x00, 0x1B, 0x78, 0x00, 0x01, 0xF0, - 0xE0, 0x00, 0x0F, 0x03, 0x80, 0x00, 0x60, 0x0C, 0x00, 0x03, 0x00, 0x70, - 0x00, 0x18, 0x01, 0x80, 0x01, 0x80, 0x0C, 0x00, 0x0C, 0x00, 0x60, 0x00, - 0x60, 0x01, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x01, 0x80, - 0x03, 0x00, 0xFF, 0xE0, 0x1F, 0x87, 0xFF, 0x00, 0x7C, 0x00, 0x07, 0xFF, - 0xE0, 0x03, 0xFF, 0xF0, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x30, 0x00, 0x00, 0x18, 0x00, 0x00, 0x0C, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, - 0x00, 0xC0, 0x03, 0x00, 0x60, 0x01, 0x80, 0x60, 0x00, 0xC0, 0x30, 0x00, - 0x60, 0x18, 0x00, 0x30, 0x0C, 0x00, 0x30, 0x0E, 0x00, 0x18, 0x06, 0x00, - 0x0C, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0x00, 0x07, 0xF0, 0x00, 0x3F, - 0x07, 0xF0, 0x00, 0x7F, 0x01, 0xB0, 0x00, 0xD8, 0x01, 0xB0, 0x00, 0xD8, - 0x01, 0x98, 0x01, 0x98, 0x01, 0x98, 0x03, 0x30, 0x01, 0x98, 0x03, 0x30, - 0x03, 0x18, 0x06, 0x30, 0x03, 0x1C, 0x0C, 0x30, 0x03, 0x0C, 0x0C, 0x30, - 0x03, 0x0C, 0x18, 0x60, 0x07, 0x0C, 0x30, 0x60, 0x06, 0x0C, 0x30, 0x60, - 0x06, 0x06, 0x60, 0x60, 0x06, 0x06, 0xC0, 0x60, 0x06, 0x06, 0xC0, 0xC0, - 0x0C, 0x07, 0x80, 0xC0, 0x0C, 0x03, 0x00, 0xC0, 0x0C, 0x00, 0x00, 0xC0, - 0x0C, 0x00, 0x01, 0xC0, 0x0C, 0x00, 0x01, 0x80, 0x18, 0x00, 0x01, 0x80, - 0x18, 0x00, 0x01, 0x80, 0x18, 0x00, 0x01, 0x80, 0xFF, 0x80, 0x3F, 0xE0, - 0xFF, 0x80, 0x3F, 0xE0, 0x07, 0xE0, 0x0F, 0xFC, 0x3F, 0x80, 0x3F, 0xF0, - 0x0F, 0x00, 0x06, 0x00, 0x3C, 0x00, 0x10, 0x01, 0x98, 0x00, 0xC0, 0x06, - 0x60, 0x03, 0x00, 0x19, 0xC0, 0x0C, 0x00, 0x63, 0x00, 0x30, 0x01, 0x0C, - 0x01, 0x80, 0x0C, 0x18, 0x06, 0x00, 0x30, 0x60, 0x18, 0x00, 0xC1, 0xC0, - 0x60, 0x03, 0x03, 0x01, 0x00, 0x08, 0x0C, 0x0C, 0x00, 0x60, 0x18, 0x30, - 0x01, 0x80, 0x60, 0xC0, 0x06, 0x01, 0xC3, 0x00, 0x18, 0x03, 0x18, 0x00, - 0xC0, 0x0C, 0x60, 0x03, 0x00, 0x19, 0x80, 0x0C, 0x00, 0x66, 0x00, 0x30, - 0x01, 0xD8, 0x00, 0x80, 0x03, 0xC0, 0x06, 0x00, 0x0F, 0x00, 0xFF, 0xC0, - 0x1C, 0x03, 0xFE, 0x00, 0x70, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x7F, 0xF0, - 0x00, 0xF0, 0x78, 0x03, 0x80, 0x1C, 0x07, 0x00, 0x0E, 0x0E, 0x00, 0x06, - 0x0C, 0x00, 0x06, 0x18, 0x00, 0x07, 0x38, 0x00, 0x03, 0x30, 0x00, 0x03, - 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0xC0, 0x00, 0x03, - 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x06, 0xC0, 0x00, 0x06, 0xC0, 0x00, 0x06, - 0xC0, 0x00, 0x0C, 0xC0, 0x00, 0x1C, 0xC0, 0x00, 0x18, 0x60, 0x00, 0x30, - 0x60, 0x00, 0x70, 0x70, 0x00, 0xE0, 0x38, 0x01, 0xC0, 0x1E, 0x0F, 0x00, - 0x0F, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, - 0xC0, 0x06, 0x00, 0x78, 0x01, 0x80, 0x06, 0x00, 0xC0, 0x01, 0xC0, 0x30, - 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x03, 0x00, 0x03, 0x00, 0xC0, 0x01, 0xC0, - 0x60, 0x00, 0x60, 0x18, 0x00, 0x30, 0x06, 0x00, 0x18, 0x01, 0x80, 0x3C, - 0x00, 0xFF, 0xFE, 0x00, 0x3F, 0xFC, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, 0x00, 0x18, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x60, 0x00, 0x00, 0x30, 0x00, 0x00, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x7F, - 0xF0, 0x00, 0xF0, 0x78, 0x03, 0x80, 0x1C, 0x07, 0x00, 0x0E, 0x0E, 0x00, - 0x06, 0x0C, 0x00, 0x06, 0x18, 0x00, 0x03, 0x38, 0x00, 0x03, 0x30, 0x00, - 0x03, 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x06, 0xC0, 0x00, 0x06, 0xC0, 0x00, - 0x06, 0xC0, 0x00, 0x0C, 0xC0, 0x00, 0x1C, 0xC0, 0x00, 0x18, 0x60, 0x00, - 0x30, 0x60, 0x00, 0x70, 0x30, 0x00, 0xE0, 0x38, 0x01, 0xC0, 0x0E, 0x0F, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0x1F, 0xF8, - 0x30, 0x3F, 0xFF, 0xF0, 0x78, 0x0F, 0x80, 0x07, 0xFF, 0xFC, 0x01, 0xFF, - 0xFF, 0xC0, 0x06, 0x00, 0x78, 0x01, 0x80, 0x0E, 0x00, 0xC0, 0x01, 0xC0, - 0x30, 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x03, 0x00, 0x03, 0x00, 0xC0, 0x00, - 0xC0, 0x60, 0x00, 0x60, 0x18, 0x00, 0x30, 0x06, 0x00, 0x38, 0x01, 0x80, - 0x3C, 0x00, 0xFF, 0xFC, 0x00, 0x3F, 0xFC, 0x00, 0x0C, 0x07, 0x80, 0x03, - 0x00, 0x70, 0x00, 0xC0, 0x0E, 0x00, 0x60, 0x01, 0x80, 0x18, 0x00, 0x70, - 0x06, 0x00, 0x0C, 0x01, 0x80, 0x03, 0x80, 0x60, 0x00, 0x60, 0x30, 0x00, - 0x1C, 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x00, 0xF0, 0x00, 0x1F, 0xC0, 0x00, - 0x7F, 0xF3, 0x00, 0xE0, 0x3B, 0x03, 0x80, 0x0F, 0x07, 0x00, 0x0E, 0x06, - 0x00, 0x06, 0x0C, 0x00, 0x06, 0x0C, 0x00, 0x06, 0x0C, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x07, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x18, 0x20, 0x00, 0x18, 0x60, 0x00, 0x18, 0x60, - 0x00, 0x30, 0x60, 0x00, 0x70, 0xF0, 0x00, 0xE0, 0xF8, 0x01, 0xC0, 0xDC, - 0x07, 0x80, 0x8F, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0xFF, 0xFE, 0x3F, - 0xFF, 0xFE, 0x30, 0x18, 0x06, 0x60, 0x18, 0x06, 0x60, 0x18, 0x06, 0x60, - 0x38, 0x0C, 0x60, 0x30, 0x04, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x30, 0x00, 0x00, 0x70, 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, - 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0xFF, 0xFE, 0x00, 0xFF, - 0xFC, 0x00, 0x7F, 0xC0, 0xFF, 0xDF, 0xF0, 0x3F, 0xF1, 0x80, 0x00, 0x60, - 0x60, 0x00, 0x30, 0x18, 0x00, 0x0C, 0x06, 0x00, 0x03, 0x03, 0x80, 0x00, - 0xC0, 0xC0, 0x00, 0x30, 0x30, 0x00, 0x18, 0x0C, 0x00, 0x06, 0x03, 0x00, - 0x01, 0x81, 0xC0, 0x00, 0x60, 0x60, 0x00, 0x18, 0x18, 0x00, 0x0C, 0x06, - 0x00, 0x03, 0x01, 0x80, 0x00, 0xC0, 0xC0, 0x00, 0x30, 0x30, 0x00, 0x1C, - 0x0C, 0x00, 0x06, 0x03, 0x00, 0x01, 0x80, 0xC0, 0x00, 0xC0, 0x30, 0x00, - 0x70, 0x0E, 0x00, 0x38, 0x01, 0xC0, 0x1C, 0x00, 0x38, 0x1E, 0x00, 0x07, - 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFF, 0x80, 0x3F, 0xFF, 0xF0, 0x07, - 0xFC, 0xE0, 0x00, 0x0C, 0x0C, 0x00, 0x03, 0x01, 0x80, 0x00, 0x60, 0x30, - 0x00, 0x18, 0x06, 0x00, 0x02, 0x00, 0xC0, 0x00, 0xC0, 0x0C, 0x00, 0x30, - 0x01, 0x80, 0x06, 0x00, 0x30, 0x01, 0x80, 0x06, 0x00, 0x60, 0x00, 0xC0, - 0x0C, 0x00, 0x18, 0x03, 0x00, 0x01, 0x80, 0xC0, 0x00, 0x30, 0x18, 0x00, - 0x06, 0x06, 0x00, 0x00, 0xC0, 0xC0, 0x00, 0x18, 0x30, 0x00, 0x03, 0x8C, - 0x00, 0x00, 0x31, 0x80, 0x00, 0x06, 0x60, 0x00, 0x00, 0xD8, 0x00, 0x00, - 0x1B, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x38, 0x00, 0x00, 0xFF, 0xC0, - 0x7F, 0xFF, 0xF8, 0x0F, 0xF8, 0xC0, 0x00, 0x0C, 0x18, 0x00, 0x01, 0x83, - 0x00, 0x00, 0x30, 0x60, 0x08, 0x0C, 0x0C, 0x07, 0x01, 0x81, 0x81, 0xE0, - 0x30, 0x60, 0x2C, 0x0C, 0x0C, 0x0D, 0x81, 0x81, 0x81, 0x30, 0x30, 0x30, - 0x66, 0x0C, 0x06, 0x08, 0xC1, 0x80, 0xC3, 0x0C, 0x30, 0x18, 0x41, 0x8C, - 0x03, 0x18, 0x31, 0x80, 0x62, 0x06, 0x30, 0x0C, 0xC0, 0xCC, 0x03, 0x10, - 0x19, 0x80, 0x66, 0x03, 0x30, 0x0C, 0x80, 0x6C, 0x01, 0xB0, 0x0D, 0x80, - 0x34, 0x01, 0xB0, 0x07, 0x80, 0x3C, 0x00, 0xE0, 0x07, 0x80, 0x1C, 0x00, - 0xF0, 0x00, 0x03, 0xF8, 0x03, 0xF8, 0x1F, 0xC0, 0x3F, 0xC0, 0x30, 0x00, - 0x30, 0x01, 0xC0, 0x03, 0x00, 0x06, 0x00, 0x30, 0x00, 0x18, 0x03, 0x00, - 0x00, 0xE0, 0x30, 0x00, 0x03, 0x03, 0x00, 0x00, 0x1C, 0x30, 0x00, 0x00, - 0x63, 0x00, 0x00, 0x03, 0xB0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x30, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x36, 0x00, 0x00, 0x03, 0x38, 0x00, - 0x00, 0x30, 0xC0, 0x00, 0x03, 0x07, 0x00, 0x00, 0x30, 0x18, 0x00, 0x03, - 0x00, 0x60, 0x00, 0x30, 0x03, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, - 0x70, 0x03, 0x00, 0x01, 0x80, 0xFF, 0x80, 0xFF, 0x07, 0xFC, 0x07, 0xF8, - 0x00, 0x7F, 0x80, 0x7F, 0x7F, 0x00, 0x7F, 0x1C, 0x00, 0x18, 0x0C, 0x00, - 0x30, 0x0C, 0x00, 0x70, 0x06, 0x00, 0xE0, 0x06, 0x00, 0xC0, 0x03, 0x01, - 0x80, 0x03, 0x03, 0x00, 0x01, 0x86, 0x00, 0x01, 0x8C, 0x00, 0x00, 0xD8, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, - 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, - 0x00, 0xFF, 0xFE, 0x00, 0xFF, 0xFC, 0x00, 0x03, 0xFF, 0xFE, 0x07, 0xFF, - 0xF8, 0x0C, 0x00, 0x30, 0x10, 0x00, 0xC0, 0x60, 0x03, 0x80, 0xC0, 0x0E, - 0x01, 0x80, 0x38, 0x03, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, - 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x60, 0x18, - 0x00, 0xC0, 0x60, 0x01, 0x81, 0x80, 0x02, 0x06, 0x00, 0x0C, 0x18, 0x00, - 0x18, 0x60, 0x00, 0x30, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0x80, 0x01, 0xFE, - 0x03, 0xFC, 0x06, 0x00, 0x08, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, - 0x80, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x40, 0x01, 0x80, - 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x10, 0x00, 0x60, 0x00, 0xC0, 0x01, - 0x80, 0x03, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0x80, - 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x20, 0x00, 0xFF, 0x01, - 0xFE, 0x00, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x60, 0x18, 0x07, 0x00, 0xC0, - 0x30, 0x0C, 0x03, 0x80, 0x60, 0x18, 0x06, 0x00, 0xC0, 0x30, 0x0C, 0x03, - 0x00, 0x60, 0x18, 0x06, 0x01, 0x80, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x18, - 0x06, 0x01, 0x80, 0x60, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x04, 0x01, 0xFE, - 0x03, 0xFC, 0x00, 0x10, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x04, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x00, 0x06, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x06, 0x00, 0x08, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x06, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x01, 0x80, 0xFF, 0x01, - 0xFE, 0x00, 0x00, 0x10, 0x00, 0x0C, 0x00, 0x07, 0x80, 0x03, 0x60, 0x01, - 0x8C, 0x00, 0xC3, 0x80, 0xE0, 0x60, 0x70, 0x1C, 0x38, 0x03, 0x1C, 0x00, - 0x6E, 0x00, 0x1F, 0x00, 0x02, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xC3, 0x86, 0x0C, 0x18, 0x70, 0xC0, 0x00, 0x3F, 0x80, 0x0F, 0xFF, 0x80, - 0x78, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, - 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x38, 0x03, 0xFC, 0xC0, 0x7F, 0xFF, - 0x07, 0xC0, 0x0C, 0x38, 0x00, 0x31, 0xC0, 0x01, 0xCE, 0x00, 0x06, 0x30, - 0x00, 0x18, 0xC0, 0x00, 0xE3, 0x00, 0x07, 0x8E, 0x00, 0x7C, 0x1C, 0x0F, - 0x3F, 0x3F, 0xF0, 0xFC, 0x7F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x30, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x00, 0xC0, 0x00, 0x00, 0x10, 0x00, 0x00, 0x06, 0x07, 0xE0, 0x00, 0xC3, - 0xFF, 0x00, 0x19, 0xC0, 0xF0, 0x03, 0x60, 0x07, 0x00, 0xD8, 0x00, 0x60, - 0x1E, 0x00, 0x0E, 0x03, 0x80, 0x00, 0xC0, 0x60, 0x00, 0x18, 0x0C, 0x00, - 0x03, 0x03, 0x00, 0x00, 0x60, 0x60, 0x00, 0x0C, 0x0C, 0x00, 0x01, 0x81, - 0x80, 0x00, 0x60, 0x70, 0x00, 0x0C, 0x0E, 0x00, 0x03, 0x01, 0xC0, 0x00, - 0x60, 0x3C, 0x00, 0x18, 0x05, 0x80, 0x06, 0x01, 0xB8, 0x01, 0x83, 0xF3, - 0xC1, 0xE0, 0x7E, 0x3F, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3F, 0x00, - 0x07, 0xFF, 0x30, 0x38, 0x0F, 0xC1, 0x80, 0x1F, 0x0C, 0x00, 0x18, 0x60, - 0x00, 0x63, 0x00, 0x01, 0x9C, 0x00, 0x06, 0x60, 0x00, 0x01, 0x80, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x30, 0x00, 0x00, 0xE0, 0x00, 0x01, 0x80, 0x00, 0xC7, 0x00, - 0x0E, 0x0F, 0x01, 0xF0, 0x1F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x00, - 0x1F, 0x80, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x10, 0x00, 0x00, 0x18, 0x00, 0xFC, 0x0C, 0x01, - 0xFF, 0x86, 0x01, 0xC0, 0xE3, 0x03, 0x80, 0x1B, 0x03, 0x80, 0x05, 0x81, - 0x80, 0x03, 0xC1, 0x80, 0x00, 0xE1, 0x80, 0x00, 0x60, 0xC0, 0x00, 0x30, - 0x60, 0x00, 0x18, 0x60, 0x00, 0x0C, 0x30, 0x00, 0x06, 0x18, 0x00, 0x02, - 0x0C, 0x00, 0x03, 0x06, 0x00, 0x01, 0x83, 0x00, 0x01, 0xC1, 0xC0, 0x01, - 0xE0, 0x60, 0x01, 0xE0, 0x38, 0x01, 0xB0, 0x0F, 0x03, 0x9F, 0x03, 0xFF, - 0x0F, 0x80, 0x7E, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x07, 0xFF, 0x80, 0x78, - 0x0F, 0x03, 0x80, 0x0E, 0x1C, 0x00, 0x18, 0xE0, 0x00, 0x73, 0x00, 0x00, - 0xD8, 0x00, 0x03, 0x60, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x60, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x03, 0x07, 0x80, 0xF8, - 0x0F, 0xFF, 0x80, 0x0F, 0xF0, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, 0xFF, - 0xF0, 0x00, 0xF0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x18, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x07, 0xFF, 0xFC, 0x03, - 0xFF, 0xFF, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x60, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0xC0, - 0x00, 0x00, 0x30, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, - 0x80, 0x00, 0x00, 0x60, 0x00, 0x00, 0x18, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x01, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xFE, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFF, 0x87, 0xC1, 0xE0, 0xF3, 0xE1, 0xC0, - 0x1B, 0x01, 0xC0, 0x07, 0x81, 0xC0, 0x03, 0xC0, 0xC0, 0x00, 0xE0, 0xC0, - 0x00, 0x60, 0x60, 0x00, 0x30, 0x60, 0x00, 0x18, 0x30, 0x00, 0x0C, 0x18, - 0x00, 0x06, 0x0C, 0x00, 0x06, 0x06, 0x00, 0x03, 0x03, 0x00, 0x03, 0x81, - 0xC0, 0x01, 0xC0, 0x60, 0x01, 0xC0, 0x38, 0x03, 0x60, 0x0F, 0x07, 0x30, - 0x03, 0xFF, 0x18, 0x00, 0x7E, 0x0C, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x03, 0x80, 0x03, 0xFF, 0x80, 0x01, 0xFF, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, 0x83, 0xF0, 0x01, - 0x8F, 0xF8, 0x01, 0x98, 0x1C, 0x03, 0xB0, 0x0E, 0x03, 0x40, 0x06, 0x03, - 0x80, 0x06, 0x03, 0x00, 0x06, 0x03, 0x00, 0x06, 0x07, 0x00, 0x06, 0x06, - 0x00, 0x0E, 0x06, 0x00, 0x0E, 0x06, 0x00, 0x0E, 0x06, 0x00, 0x0C, 0x0C, - 0x00, 0x0C, 0x0C, 0x00, 0x1C, 0x0C, 0x00, 0x1C, 0x0C, 0x00, 0x18, 0x0C, - 0x00, 0x18, 0x18, 0x00, 0x18, 0xFF, 0x01, 0xFF, 0xFF, 0x01, 0xFF, 0x00, - 0x07, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x1F, - 0xF0, 0x00, 0x06, 0x00, 0x01, 0xC0, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x07, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, - 0x00, 0x00, 0x60, 0x00, 0x1C, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, - 0x00, 0x01, 0x80, 0x7F, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x70, 0x00, - 0x07, 0x00, 0x00, 0x70, 0x00, 0x06, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x03, 0xFF, 0xF0, - 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, - 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x0C, 0x00, 0x00, - 0xC0, 0x00, 0x0C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x01, 0x80, 0x00, - 0x18, 0x00, 0x01, 0x80, 0x00, 0x38, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, - 0x03, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, - 0x03, 0x80, 0xFF, 0xF0, 0x0F, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0xFF, 0x00, 0xC1, - 0xFF, 0x00, 0x80, 0x70, 0x01, 0x80, 0xC0, 0x01, 0x83, 0x80, 0x01, 0x87, - 0x00, 0x01, 0x8C, 0x00, 0x03, 0x38, 0x00, 0x03, 0x70, 0x00, 0x03, 0xF8, - 0x00, 0x03, 0x9C, 0x00, 0x03, 0x0C, 0x00, 0x06, 0x0E, 0x00, 0x06, 0x07, - 0x00, 0x06, 0x03, 0x80, 0x06, 0x01, 0x80, 0x04, 0x00, 0xC0, 0x0C, 0x00, - 0xE0, 0xFC, 0x03, 0xFE, 0xFC, 0x03, 0xFC, 0x01, 0xFF, 0x00, 0x3F, 0xE0, - 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x00, 0x01, 0x80, - 0x00, 0x70, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, - 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, - 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x03, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0x00, 0x1E, 0x07, 0x81, 0xE7, 0xE1, 0xF8, 0x3D, 0x8E, 0xE3, - 0x81, 0xE0, 0xF8, 0x30, 0x38, 0x1E, 0x06, 0x06, 0x03, 0x80, 0xC1, 0x80, - 0x60, 0x18, 0x30, 0x0C, 0x03, 0x06, 0x01, 0x80, 0x60, 0xC0, 0x30, 0x08, - 0x18, 0x0C, 0x03, 0x06, 0x01, 0x80, 0x60, 0xC0, 0x30, 0x0C, 0x18, 0x06, - 0x01, 0x83, 0x00, 0x80, 0x60, 0x40, 0x30, 0x0C, 0x18, 0x06, 0x01, 0x83, - 0x00, 0xC0, 0x30, 0x60, 0x18, 0x06, 0x7F, 0x03, 0xC1, 0xFF, 0xE0, 0xF8, - 0x3E, 0x00, 0x03, 0xE0, 0x1F, 0x1F, 0xF0, 0x3E, 0x60, 0x70, 0x0F, 0x80, - 0x70, 0x3C, 0x00, 0x60, 0x70, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, - 0x07, 0x00, 0x06, 0x0C, 0x00, 0x1C, 0x18, 0x00, 0x30, 0x30, 0x00, 0x60, - 0x60, 0x00, 0xC1, 0xC0, 0x01, 0x83, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, - 0x00, 0x18, 0x18, 0x00, 0x30, 0x70, 0x00, 0x67, 0xFC, 0x07, 0xFF, 0xF0, - 0x0F, 0xE0, 0x00, 0x3F, 0x00, 0x07, 0xFF, 0x00, 0x3C, 0x0F, 0x01, 0xC0, - 0x1C, 0x0C, 0x00, 0x38, 0x60, 0x00, 0x63, 0x00, 0x00, 0xDC, 0x00, 0x03, - 0x60, 0x00, 0x0D, 0x80, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, - 0x00, 0x1B, 0x00, 0x00, 0x6C, 0x00, 0x03, 0xB0, 0x00, 0x0C, 0x60, 0x00, - 0x61, 0xC0, 0x03, 0x03, 0x80, 0x38, 0x0F, 0x03, 0xC0, 0x0F, 0xFE, 0x00, - 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x1F, 0x8F, 0xFE, 0x00, 0xFC, - 0xE0, 0x78, 0x00, 0xCC, 0x00, 0xE0, 0x06, 0xC0, 0x03, 0x00, 0x3C, 0x00, - 0x1C, 0x01, 0xC0, 0x00, 0x60, 0x0C, 0x00, 0x03, 0x00, 0xE0, 0x00, 0x18, - 0x06, 0x00, 0x00, 0xC0, 0x30, 0x00, 0x06, 0x01, 0x80, 0x00, 0x30, 0x0C, - 0x00, 0x03, 0x00, 0xE0, 0x00, 0x18, 0x07, 0x00, 0x01, 0x80, 0x3C, 0x00, - 0x1C, 0x01, 0xE0, 0x01, 0xC0, 0x0D, 0x80, 0x1C, 0x00, 0xCF, 0x03, 0xC0, - 0x06, 0x3F, 0xF8, 0x00, 0x30, 0x7F, 0x00, 0x01, 0x80, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x30, 0x00, - 0x00, 0x01, 0x80, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x07, 0xFF, 0x00, 0x00, - 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, 0xE1, 0xF0, 0x78, - 0x1C, 0xFC, 0x38, 0x01, 0xB0, 0x1C, 0x00, 0x2C, 0x0E, 0x00, 0x0F, 0x03, - 0x00, 0x01, 0xC1, 0x80, 0x00, 0x60, 0x60, 0x00, 0x18, 0x30, 0x00, 0x06, - 0x0C, 0x00, 0x01, 0x83, 0x00, 0x00, 0x60, 0xC0, 0x00, 0x30, 0x30, 0x00, - 0x0C, 0x0C, 0x00, 0x07, 0x03, 0x80, 0x03, 0xC0, 0x60, 0x01, 0xB0, 0x1C, - 0x00, 0xD8, 0x03, 0xC0, 0xE6, 0x00, 0x7F, 0xF1, 0x80, 0x07, 0xE0, 0x60, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0x30, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x7F, 0xF8, 0x00, 0x1F, 0xFE, 0x00, 0x07, 0xF0, 0x3E, 0x03, 0xF8, 0x7F, - 0xC0, 0x18, 0xF0, 0x60, 0x0C, 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xC0, - 0x00, 0x03, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x30, 0x00, 0x00, 0x38, 0x00, 0x00, 0x18, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x03, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x3F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, 0x00, 0x00, 0x3F, 0x00, - 0x0F, 0xFE, 0xC0, 0xF0, 0x3E, 0x0E, 0x00, 0x70, 0xE0, 0x01, 0x06, 0x00, - 0x08, 0x30, 0x00, 0x41, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3F, 0xF0, 0x00, - 0x3F, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x18, 0x00, 0x00, - 0xCC, 0x00, 0x06, 0x60, 0x00, 0x33, 0x00, 0x03, 0x3C, 0x00, 0x71, 0xF8, - 0x0F, 0x0D, 0xFF, 0xF0, 0x01, 0xFC, 0x00, 0x03, 0x00, 0x03, 0x00, 0x01, - 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x70, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, - 0x0C, 0x00, 0x06, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0xC0, - 0x00, 0xE0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, 0x0C, 0x00, 0x0E, - 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x03, 0x38, 0x0F, - 0x9F, 0xFF, 0x03, 0xF8, 0x00, 0xFC, 0x03, 0xFF, 0xE0, 0x1F, 0xC6, 0x00, - 0x0C, 0x30, 0x00, 0x61, 0x80, 0x03, 0x0C, 0x00, 0x18, 0x60, 0x01, 0x86, - 0x00, 0x0C, 0x30, 0x00, 0x61, 0x80, 0x03, 0x0C, 0x00, 0x18, 0x60, 0x01, - 0x86, 0x00, 0x0C, 0x30, 0x00, 0x61, 0x80, 0x03, 0x0C, 0x00, 0x38, 0x60, - 0x07, 0x83, 0x80, 0x6C, 0x1E, 0x1E, 0x7C, 0x7F, 0xE3, 0xE0, 0xF8, 0x00, - 0x00, 0x7F, 0xC0, 0xFF, 0xFF, 0xF0, 0x3F, 0xF1, 0xC0, 0x00, 0xC0, 0x30, - 0x00, 0x60, 0x0C, 0x00, 0x18, 0x03, 0x00, 0x0C, 0x00, 0xE0, 0x06, 0x00, - 0x18, 0x01, 0x80, 0x06, 0x00, 0xC0, 0x01, 0x80, 0x30, 0x00, 0x60, 0x18, - 0x00, 0x0C, 0x0C, 0x00, 0x03, 0x03, 0x00, 0x00, 0xC1, 0x80, 0x00, 0x30, - 0xC0, 0x00, 0x06, 0x30, 0x00, 0x01, 0x98, 0x00, 0x00, 0x6C, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x07, 0x80, 0x00, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0x3F, - 0xCC, 0x00, 0x03, 0x06, 0x00, 0x01, 0x83, 0x00, 0x01, 0x81, 0x81, 0x80, - 0xC0, 0xC1, 0xE0, 0x60, 0x60, 0xF0, 0x60, 0x30, 0xD8, 0x30, 0x18, 0x6C, - 0x30, 0x0C, 0x66, 0x18, 0x06, 0x33, 0x18, 0x03, 0x31, 0x8C, 0x01, 0x98, - 0x66, 0x00, 0xD8, 0x36, 0x00, 0x6C, 0x1B, 0x00, 0x3C, 0x0F, 0x00, 0x1E, - 0x07, 0x80, 0x0E, 0x03, 0x80, 0x07, 0x01, 0xC0, 0x00, 0x07, 0xF0, 0x3F, - 0xC3, 0xFC, 0x0F, 0xF0, 0x38, 0x00, 0x60, 0x07, 0x00, 0x70, 0x00, 0xE0, - 0x38, 0x00, 0x18, 0x1C, 0x00, 0x03, 0x0C, 0x00, 0x00, 0xEE, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x03, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xDC, 0x00, - 0x00, 0xE3, 0x80, 0x00, 0x70, 0x70, 0x00, 0x38, 0x0E, 0x00, 0x18, 0x01, - 0x80, 0x1C, 0x00, 0x30, 0x0E, 0x00, 0x0E, 0x0F, 0xF0, 0x3F, 0xE3, 0xFC, - 0x0F, 0xF8, 0x03, 0xF8, 0x07, 0xF8, 0x3F, 0xC0, 0x3F, 0xC0, 0x60, 0x00, - 0x30, 0x01, 0x80, 0x01, 0x80, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x01, 0x80, - 0x03, 0x80, 0x0C, 0x00, 0x0C, 0x00, 0xC0, 0x00, 0x60, 0x0C, 0x00, 0x03, - 0x00, 0x60, 0x00, 0x0C, 0x06, 0x00, 0x00, 0x60, 0x60, 0x00, 0x03, 0x06, - 0x00, 0x00, 0x1C, 0x30, 0x00, 0x00, 0x63, 0x00, 0x00, 0x03, 0x30, 0x00, - 0x00, 0x19, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, - 0x1C, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x03, 0x00, 0x00, - 0x00, 0x30, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0x00, - 0x07, 0xFF, 0xF8, 0x3F, 0xFF, 0xC3, 0x00, 0x0C, 0x18, 0x00, 0xC0, 0xC0, - 0x0C, 0x00, 0x00, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, - 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x01, 0x80, - 0x00, 0x18, 0x00, 0x01, 0x80, 0x0C, 0x18, 0x00, 0x61, 0x80, 0x02, 0x1F, - 0xFF, 0xF0, 0xFF, 0xFF, 0x80, 0x00, 0x0E, 0x00, 0x7C, 0x01, 0xC0, 0x03, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x01, 0xC0, 0x03, 0x00, - 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x01, 0xC0, 0x0F, 0x00, 0xF8, - 0x01, 0xF0, 0x00, 0x30, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x80, - 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0xE0, 0x01, 0x80, 0x03, - 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x01, 0x80, 0xC0, - 0x60, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x06, 0x03, 0x01, 0x80, 0xC0, 0x40, - 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x60, - 0x30, 0x18, 0x08, 0x0C, 0x06, 0x03, 0x01, 0x80, 0x80, 0xC0, 0x60, 0x30, - 0x00, 0x01, 0xC0, 0x03, 0xC0, 0x01, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, - 0x00, 0x0C, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x0C, 0x00, 0x18, 0x00, 0x38, 0x00, 0x38, 0x00, 0x3E, 0x00, 0x7C, 0x03, - 0xC0, 0x0E, 0x00, 0x18, 0x00, 0x70, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x06, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x00, 0x0E, - 0x00, 0xF8, 0x01, 0xC0, 0x00, 0x0F, 0x00, 0x01, 0xFC, 0x03, 0x70, 0xE0, - 0x7E, 0x07, 0x1E, 0xC0, 0x3F, 0x80, 0x01, 0xE0}; - -const GFXglyph FreeMonoOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 10, 30, 28, 12, -28}, // 0x21 '!' - {38, 16, 14, 28, 10, -28}, // 0x22 '"' - {66, 22, 32, 28, 6, -29}, // 0x23 '#' - {154, 21, 33, 28, 6, -29}, // 0x24 '$' - {241, 22, 29, 28, 6, -27}, // 0x25 '%' - {321, 19, 25, 28, 6, -23}, // 0x26 '&' - {381, 7, 14, 28, 16, -28}, // 0x27 ''' - {394, 11, 34, 28, 16, -27}, // 0x28 '(' - {441, 11, 34, 28, 7, -27}, // 0x29 ')' - {488, 18, 17, 28, 10, -28}, // 0x2A '*' - {527, 22, 22, 28, 6, -23}, // 0x2B '+' - {588, 12, 14, 28, 5, -6}, // 0x2C ',' - {609, 22, 2, 28, 6, -13}, // 0x2D '-' - {615, 7, 6, 28, 11, -4}, // 0x2E '.' - {621, 24, 35, 28, 5, -30}, // 0x2F '/' - {726, 20, 30, 28, 7, -28}, // 0x30 '0' - {801, 17, 29, 28, 6, -28}, // 0x31 '1' - {863, 23, 29, 28, 4, -28}, // 0x32 '2' - {947, 22, 30, 28, 5, -28}, // 0x33 '3' - {1030, 19, 28, 28, 7, -27}, // 0x34 '4' - {1097, 21, 29, 28, 6, -27}, // 0x35 '5' - {1174, 21, 30, 28, 9, -28}, // 0x36 '6' - {1253, 18, 28, 28, 10, -27}, // 0x37 '7' - {1316, 20, 30, 28, 7, -28}, // 0x38 '8' - {1391, 22, 30, 28, 6, -28}, // 0x39 '9' - {1474, 10, 21, 28, 11, -19}, // 0x3A ':' - {1501, 15, 27, 28, 5, -19}, // 0x3B ';' - {1552, 23, 22, 28, 6, -23}, // 0x3C '<' - {1616, 25, 9, 28, 4, -17}, // 0x3D '=' - {1645, 24, 22, 28, 4, -23}, // 0x3E '>' - {1711, 16, 28, 28, 11, -26}, // 0x3F '?' - {1767, 19, 32, 28, 7, -28}, // 0x40 '@' - {1843, 27, 26, 28, 1, -25}, // 0x41 'A' - {1931, 26, 26, 28, 2, -25}, // 0x42 'B' - {2016, 25, 28, 28, 5, -26}, // 0x43 'C' - {2104, 26, 26, 28, 2, -25}, // 0x44 'D' - {2189, 27, 26, 28, 2, -25}, // 0x45 'E' - {2277, 28, 26, 28, 2, -25}, // 0x46 'F' - {2368, 25, 28, 28, 5, -26}, // 0x47 'G' - {2456, 27, 26, 28, 3, -25}, // 0x48 'H' - {2544, 22, 26, 28, 6, -25}, // 0x49 'I' - {2616, 28, 27, 28, 5, -25}, // 0x4A 'J' - {2711, 29, 26, 28, 2, -25}, // 0x4B 'K' - {2806, 25, 26, 28, 3, -25}, // 0x4C 'L' - {2888, 32, 26, 28, 1, -25}, // 0x4D 'M' - {2992, 30, 26, 28, 2, -25}, // 0x4E 'N' - {3090, 24, 28, 28, 5, -26}, // 0x4F 'O' - {3174, 26, 26, 28, 2, -25}, // 0x50 'P' - {3259, 24, 32, 28, 5, -26}, // 0x51 'Q' - {3355, 26, 26, 28, 2, -25}, // 0x52 'R' - {3440, 24, 28, 28, 5, -26}, // 0x53 'S' - {3524, 24, 26, 28, 7, -25}, // 0x54 'T' - {3602, 26, 27, 28, 6, -25}, // 0x55 'U' - {3690, 27, 26, 28, 6, -25}, // 0x56 'V' - {3778, 27, 26, 28, 6, -25}, // 0x57 'W' - {3866, 29, 26, 28, 2, -25}, // 0x58 'X' - {3961, 24, 26, 28, 7, -25}, // 0x59 'Y' - {4039, 23, 26, 28, 5, -25}, // 0x5A 'Z' - {4114, 15, 34, 28, 12, -27}, // 0x5B '[' - {4178, 10, 35, 28, 12, -30}, // 0x5C '\' - {4222, 15, 34, 28, 6, -27}, // 0x5D ']' - {4286, 18, 12, 28, 9, -28}, // 0x5E '^' - {4313, 28, 2, 28, -1, 5}, // 0x5F '_' - {4320, 6, 7, 28, 13, -29}, // 0x60 '`' - {4326, 22, 22, 28, 4, -20}, // 0x61 'a' - {4387, 27, 29, 28, 1, -27}, // 0x62 'b' - {4485, 22, 22, 28, 6, -20}, // 0x63 'c' - {4546, 25, 29, 28, 5, -27}, // 0x64 'd' - {4637, 22, 22, 28, 5, -20}, // 0x65 'e' - {4698, 26, 28, 28, 5, -27}, // 0x66 'f' - {4789, 25, 30, 28, 5, -20}, // 0x67 'g' - {4883, 24, 28, 28, 3, -27}, // 0x68 'h' - {4967, 19, 29, 28, 5, -28}, // 0x69 'i' - {5036, 20, 38, 28, 4, -28}, // 0x6A 'j' - {5131, 24, 28, 28, 3, -27}, // 0x6B 'k' - {5215, 19, 28, 28, 5, -27}, // 0x6C 'l' - {5282, 27, 21, 28, 1, -20}, // 0x6D 'm' - {5353, 23, 21, 28, 3, -20}, // 0x6E 'n' - {5414, 22, 22, 28, 5, -20}, // 0x6F 'o' - {5475, 29, 30, 28, -1, -20}, // 0x70 'p' - {5584, 26, 30, 28, 5, -20}, // 0x71 'q' - {5682, 25, 20, 28, 4, -19}, // 0x72 'r' - {5745, 21, 22, 28, 5, -20}, // 0x73 's' - {5803, 17, 27, 28, 7, -25}, // 0x74 't' - {5861, 21, 21, 28, 6, -19}, // 0x75 'u' - {5917, 26, 20, 28, 5, -19}, // 0x76 'v' - {5982, 25, 20, 28, 6, -19}, // 0x77 'w' - {6045, 26, 20, 28, 3, -19}, // 0x78 'x' - {6110, 29, 29, 28, 1, -19}, // 0x79 'y' - {6216, 21, 20, 28, 5, -19}, // 0x7A 'z' - {6269, 15, 34, 28, 10, -27}, // 0x7B '{' - {6333, 9, 35, 28, 12, -28}, // 0x7C '|' - {6373, 15, 34, 28, 8, -27}, // 0x7D '}' - {6437, 20, 6, 28, 7, -15}}; // 0x7E '~' - -const GFXfont FreeMonoOblique24pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique24pt7bBitmaps, - (GFXglyph *)FreeMonoOblique24pt7bGlyphs, 0x20, 0x7E, 47}; - -// Approx. 7124 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h deleted file mode 100644 index 1e82964..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h +++ /dev/null @@ -1,189 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique9pt7bBitmaps[] PROGMEM = { - 0x11, 0x22, 0x24, 0x40, 0x00, 0xC0, 0xDE, 0xE5, 0x29, 0x00, 0x09, 0x05, - 0x02, 0x82, 0x47, 0xF8, 0xA0, 0x51, 0xFE, 0x28, 0x14, 0x0A, 0x09, 0x00, - 0x08, 0x1D, 0x23, 0x40, 0x70, 0x1C, 0x02, 0x82, 0x84, 0x78, 0x20, 0x20, - 0x1C, 0x11, 0x08, 0x83, 0x80, 0x18, 0x71, 0xC0, 0x1C, 0x11, 0x08, 0x83, - 0x80, 0x1E, 0x60, 0x81, 0x03, 0x0A, 0x65, 0x46, 0x88, 0xE8, 0xFA, 0x80, - 0x12, 0x24, 0x48, 0x88, 0x88, 0x88, 0x80, 0x01, 0x11, 0x11, 0x11, 0x22, - 0x44, 0x80, 0x10, 0x22, 0x5B, 0xC3, 0x0A, 0x22, 0x00, 0x04, 0x02, 0x02, - 0x1F, 0xF0, 0x80, 0x40, 0x20, 0x00, 0x36, 0x4C, 0x80, 0xFF, 0x80, 0xF0, - 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, - 0x08, 0x08, 0x00, 0x1C, 0x45, 0x0A, 0x18, 0x30, 0x61, 0x42, 0x85, 0x11, - 0xC0, 0x04, 0x38, 0x90, 0x20, 0x81, 0x02, 0x04, 0x08, 0x23, 0xF8, 0x07, - 0x04, 0xC4, 0x20, 0x10, 0x10, 0x30, 0x20, 0x20, 0x60, 0x40, 0x3F, 0x80, - 0x0F, 0x00, 0x40, 0x20, 0x20, 0x60, 0x18, 0x04, 0x02, 0x01, 0x43, 0x1E, - 0x00, 0x03, 0x05, 0x0A, 0x12, 0x22, 0x22, 0x42, 0x7F, 0x04, 0x04, 0x1E, - 0x1F, 0x88, 0x08, 0x05, 0xC3, 0x30, 0x08, 0x04, 0x02, 0x02, 0x42, 0x1E, - 0x00, 0x07, 0x18, 0x20, 0x40, 0x5C, 0xA6, 0xC2, 0x82, 0x82, 0xC4, 0x78, - 0xFF, 0x04, 0x10, 0x20, 0x82, 0x04, 0x10, 0x20, 0x81, 0x00, 0x1E, 0x23, - 0x41, 0x41, 0x62, 0x1C, 0x66, 0x82, 0x82, 0x84, 0x78, 0x1E, 0x23, 0x41, - 0x41, 0x43, 0x65, 0x3A, 0x02, 0x04, 0x18, 0xE0, 0x6C, 0x00, 0x36, 0x18, - 0xC0, 0x00, 0x19, 0x8C, 0xC4, 0x00, 0x01, 0x83, 0x06, 0x0C, 0x06, 0x00, - 0x80, 0x30, 0x04, 0xFF, 0x80, 0x00, 0x1F, 0xF0, 0x20, 0x0C, 0x01, 0x00, - 0x60, 0x20, 0x60, 0xC1, 0x80, 0x3D, 0x8E, 0x08, 0x10, 0xC6, 0x08, 0x00, - 0x01, 0x80, 0x1C, 0x45, 0x0A, 0x79, 0x34, 0x69, 0x4E, 0x81, 0x03, 0x03, - 0xC0, 0x0F, 0x00, 0x60, 0x12, 0x02, 0x40, 0x88, 0x21, 0x07, 0xE1, 0x04, - 0x20, 0x5E, 0x3C, 0x3F, 0x84, 0x11, 0x04, 0x82, 0x3F, 0x88, 0x32, 0x04, - 0x81, 0x60, 0xBF, 0xC0, 0x1E, 0x98, 0xD0, 0x28, 0x08, 0x04, 0x02, 0x01, - 0x00, 0x41, 0x1F, 0x00, 0x3F, 0x0C, 0x22, 0x04, 0x81, 0x20, 0x48, 0x12, - 0x09, 0x02, 0x43, 0x3F, 0x00, 0x3F, 0xC4, 0x11, 0x00, 0x88, 0x3E, 0x08, - 0x82, 0x00, 0x82, 0x60, 0xBF, 0xE0, 0x3F, 0xE2, 0x08, 0x40, 0x11, 0x03, - 0xE0, 0x44, 0x08, 0x01, 0x00, 0x60, 0x1F, 0x00, 0x1E, 0x98, 0xD0, 0x08, - 0x08, 0x04, 0x7A, 0x05, 0x02, 0x41, 0x1F, 0x00, 0x3D, 0xE2, 0x18, 0x42, - 0x08, 0x43, 0xF8, 0x41, 0x08, 0x21, 0x08, 0x21, 0x1E, 0xF0, 0x3F, 0x82, - 0x02, 0x01, 0x00, 0x80, 0x40, 0x20, 0x20, 0x10, 0x7F, 0x00, 0x0F, 0xE0, - 0x20, 0x04, 0x00, 0x80, 0x10, 0x02, 0x20, 0x84, 0x10, 0x84, 0x0F, 0x00, - 0x3C, 0xE2, 0x10, 0x44, 0x11, 0x02, 0xC0, 0x64, 0x08, 0x81, 0x08, 0x61, - 0x1E, 0x38, 0x3E, 0x02, 0x00, 0x80, 0x20, 0x10, 0x04, 0x01, 0x04, 0x42, - 0x10, 0xBF, 0xE0, 0x38, 0x38, 0xC3, 0x05, 0x28, 0x29, 0x42, 0x52, 0x13, - 0x10, 0x99, 0x84, 0x08, 0x20, 0x47, 0x8F, 0x00, 0x70, 0xE6, 0x08, 0xA1, - 0x14, 0x22, 0x48, 0x49, 0x11, 0x22, 0x14, 0x43, 0x1E, 0x20, 0x1E, 0x18, - 0x90, 0x28, 0x18, 0x0C, 0x06, 0x05, 0x02, 0x46, 0x1E, 0x00, 0x3F, 0x84, - 0x31, 0x04, 0x81, 0x20, 0x8F, 0xC2, 0x00, 0x80, 0x60, 0x3E, 0x00, 0x1E, - 0x18, 0x90, 0x28, 0x18, 0x0C, 0x06, 0x05, 0x02, 0x46, 0x1E, 0x08, 0x0F, - 0x44, 0x60, 0x3F, 0x84, 0x31, 0x04, 0x81, 0x20, 0x8F, 0xC2, 0x10, 0x84, - 0x60, 0xBC, 0x10, 0x0F, 0x88, 0xC8, 0x24, 0x01, 0x80, 0x38, 0x05, 0x02, - 0xC2, 0x5E, 0x00, 0xFF, 0xC4, 0x44, 0x02, 0x01, 0x00, 0x80, 0x40, 0x60, - 0x20, 0x7E, 0x00, 0xF1, 0xD0, 0x24, 0x09, 0x02, 0x41, 0xA0, 0x48, 0x12, - 0x04, 0xC6, 0x1F, 0x00, 0xF1, 0xE8, 0x11, 0x02, 0x20, 0x82, 0x20, 0x44, - 0x09, 0x01, 0x40, 0x28, 0x02, 0x00, 0xF1, 0xE8, 0x09, 0x12, 0x26, 0x45, - 0x48, 0xAA, 0x29, 0x45, 0x28, 0xC6, 0x18, 0xC0, 0x38, 0xE2, 0x08, 0x26, - 0x05, 0x00, 0x40, 0x18, 0x04, 0x81, 0x08, 0x41, 0x1C, 0x70, 0xE3, 0xA0, - 0x90, 0x84, 0x81, 0x80, 0x80, 0x40, 0x20, 0x20, 0x7E, 0x00, 0x3F, 0x90, - 0x88, 0x80, 0x80, 0x80, 0x80, 0x80, 0x82, 0x82, 0x7F, 0x00, 0x39, 0x08, - 0x44, 0x21, 0x08, 0x42, 0x21, 0x0E, 0x00, 0x88, 0x44, 0x44, 0x22, 0x22, - 0x11, 0x11, 0x38, 0x42, 0x11, 0x08, 0x42, 0x10, 0x84, 0x2E, 0x00, 0x08, - 0x28, 0x92, 0x18, 0x20, 0xFF, 0xC0, 0xA4, 0x3E, 0x00, 0x80, 0x47, 0xA4, - 0x34, 0x12, 0x18, 0xF7, 0x38, 0x01, 0x00, 0x40, 0x09, 0xE1, 0xC6, 0x20, - 0x44, 0x09, 0x01, 0x30, 0x46, 0x13, 0xBC, 0x00, 0x1F, 0x48, 0x74, 0x0A, - 0x00, 0x80, 0x20, 0x0C, 0x18, 0xF8, 0x01, 0x80, 0x40, 0x23, 0x96, 0x32, - 0x0A, 0x05, 0x02, 0x81, 0x61, 0x1F, 0xE0, 0x1F, 0x30, 0xD0, 0x3F, 0xF8, - 0x04, 0x01, 0x00, 0x7C, 0x07, 0xC3, 0x00, 0x80, 0xFE, 0x10, 0x04, 0x01, - 0x00, 0x40, 0x10, 0x08, 0x0F, 0xE0, 0x1D, 0xD8, 0xC4, 0x12, 0x04, 0x82, - 0x20, 0x8C, 0x61, 0xE8, 0x02, 0x01, 0x07, 0x80, 0x30, 0x04, 0x01, 0x00, - 0x5C, 0x38, 0x88, 0x22, 0x08, 0x82, 0x21, 0x18, 0x4F, 0x3C, 0x04, 0x04, - 0x00, 0x38, 0x08, 0x08, 0x08, 0x08, 0x10, 0x10, 0xFF, 0x01, 0x00, 0x80, - 0x03, 0xF0, 0x10, 0x08, 0x04, 0x02, 0x02, 0x01, 0x00, 0x80, 0x40, 0x47, - 0xC0, 0x38, 0x08, 0x04, 0x02, 0x71, 0x20, 0xA0, 0xA0, 0x68, 0x24, 0x11, - 0x38, 0xE0, 0x3C, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x08, 0x10, 0x10, - 0xFF, 0x3E, 0xE2, 0x64, 0x88, 0x91, 0x12, 0x24, 0x48, 0x91, 0x17, 0x33, - 0x37, 0x14, 0x4C, 0x24, 0x12, 0x09, 0x08, 0x85, 0xE3, 0x1E, 0x10, 0x90, - 0x30, 0x18, 0x0C, 0x0B, 0x08, 0x78, 0x33, 0xC3, 0x8C, 0x40, 0x88, 0x12, - 0x02, 0x60, 0x8C, 0x31, 0x78, 0x20, 0x08, 0x03, 0xE0, 0x00, 0x1C, 0xD8, - 0xC4, 0x12, 0x04, 0x81, 0x20, 0x4C, 0x21, 0xF8, 0x02, 0x00, 0x81, 0xF0, - 0x73, 0x8E, 0x04, 0x04, 0x02, 0x01, 0x00, 0x81, 0xFC, 0x1F, 0x61, 0x40, - 0x3C, 0x03, 0x81, 0x82, 0xFC, 0x10, 0x63, 0xF9, 0x02, 0x04, 0x10, 0x20, - 0x40, 0x7C, 0xE3, 0x10, 0x90, 0x48, 0x24, 0x22, 0x11, 0x18, 0xF6, 0xF3, - 0xD0, 0x44, 0x10, 0x88, 0x24, 0x09, 0x02, 0x80, 0x40, 0xE1, 0xD0, 0x24, - 0x91, 0x24, 0x55, 0x19, 0x86, 0x61, 0x10, 0x39, 0xC4, 0x20, 0xB0, 0x30, - 0x0C, 0x04, 0x86, 0x13, 0x8E, 0x3C, 0x71, 0x04, 0x10, 0x40, 0x88, 0x09, - 0x00, 0xA0, 0x06, 0x00, 0x40, 0x08, 0x01, 0x00, 0xFC, 0x00, 0x7F, 0x42, - 0x04, 0x08, 0x10, 0x20, 0x42, 0xFE, 0x0C, 0x41, 0x04, 0x30, 0x8C, 0x08, - 0x21, 0x04, 0x10, 0x60, 0x24, 0x94, 0x92, 0x52, 0x40, 0x18, 0x20, 0x82, - 0x10, 0x40, 0xC4, 0x10, 0x82, 0x08, 0xC0, 0x61, 0x24, 0x30}; - -const GFXglyph FreeMonoOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 4, 11, 11, 4, -10}, // 0x21 '!' - {6, 5, 5, 11, 4, -10}, // 0x22 '"' - {10, 9, 12, 11, 2, -10}, // 0x23 '#' - {24, 8, 12, 11, 3, -10}, // 0x24 '$' - {36, 9, 11, 11, 2, -10}, // 0x25 '%' - {49, 7, 10, 11, 2, -9}, // 0x26 '&' - {58, 2, 5, 11, 6, -10}, // 0x27 ''' - {60, 4, 13, 11, 6, -10}, // 0x28 '(' - {67, 4, 13, 11, 3, -10}, // 0x29 ')' - {74, 7, 7, 11, 4, -10}, // 0x2A '*' - {81, 9, 8, 11, 2, -8}, // 0x2B '+' - {90, 4, 5, 11, 2, -1}, // 0x2C ',' - {93, 9, 1, 11, 2, -5}, // 0x2D '-' - {95, 2, 2, 11, 4, -1}, // 0x2E '.' - {96, 9, 13, 11, 2, -11}, // 0x2F '/' - {111, 7, 11, 11, 3, -10}, // 0x30 '0' - {121, 7, 11, 11, 2, -10}, // 0x31 '1' - {131, 9, 11, 11, 2, -10}, // 0x32 '2' - {144, 9, 11, 11, 2, -10}, // 0x33 '3' - {157, 8, 11, 11, 2, -10}, // 0x34 '4' - {168, 9, 11, 11, 2, -10}, // 0x35 '5' - {181, 8, 11, 11, 3, -10}, // 0x36 '6' - {192, 7, 11, 11, 4, -10}, // 0x37 '7' - {202, 8, 11, 11, 3, -10}, // 0x38 '8' - {213, 8, 11, 11, 3, -10}, // 0x39 '9' - {224, 3, 8, 11, 4, -7}, // 0x3A ':' - {227, 5, 11, 11, 2, -7}, // 0x3B ';' - {234, 9, 8, 11, 2, -8}, // 0x3C '<' - {243, 9, 4, 11, 2, -6}, // 0x3D '=' - {248, 9, 8, 11, 2, -8}, // 0x3E '>' - {257, 7, 10, 11, 4, -9}, // 0x3F '?' - {266, 7, 12, 11, 3, -10}, // 0x40 '@' - {277, 11, 10, 11, 0, -9}, // 0x41 'A' - {291, 10, 10, 11, 1, -9}, // 0x42 'B' - {304, 9, 10, 11, 2, -9}, // 0x43 'C' - {316, 10, 10, 11, 1, -9}, // 0x44 'D' - {329, 10, 10, 11, 1, -9}, // 0x45 'E' - {342, 11, 10, 11, 1, -9}, // 0x46 'F' - {356, 9, 10, 11, 2, -9}, // 0x47 'G' - {368, 11, 10, 11, 1, -9}, // 0x48 'H' - {382, 9, 10, 11, 2, -9}, // 0x49 'I' - {394, 11, 10, 11, 2, -9}, // 0x4A 'J' - {408, 11, 10, 11, 1, -9}, // 0x4B 'K' - {422, 10, 10, 11, 1, -9}, // 0x4C 'L' - {435, 13, 10, 11, 0, -9}, // 0x4D 'M' - {452, 11, 10, 11, 1, -9}, // 0x4E 'N' - {466, 9, 10, 11, 2, -9}, // 0x4F 'O' - {478, 10, 10, 11, 1, -9}, // 0x50 'P' - {491, 9, 13, 11, 2, -9}, // 0x51 'Q' - {506, 10, 10, 11, 1, -9}, // 0x52 'R' - {519, 9, 10, 11, 2, -9}, // 0x53 'S' - {531, 9, 10, 11, 3, -9}, // 0x54 'T' - {543, 10, 10, 11, 2, -9}, // 0x55 'U' - {556, 11, 10, 11, 2, -9}, // 0x56 'V' - {570, 11, 10, 11, 2, -9}, // 0x57 'W' - {584, 11, 10, 11, 1, -9}, // 0x58 'X' - {598, 9, 10, 11, 3, -9}, // 0x59 'Y' - {610, 9, 10, 11, 2, -9}, // 0x5A 'Z' - {622, 5, 13, 11, 5, -10}, // 0x5B '[' - {631, 4, 14, 11, 4, -11}, // 0x5C '\' - {638, 5, 13, 11, 2, -10}, // 0x5D ']' - {647, 7, 5, 11, 3, -10}, // 0x5E '^' - {652, 11, 1, 11, 0, 2}, // 0x5F '_' - {654, 2, 3, 11, 5, -11}, // 0x60 '`' - {655, 9, 8, 11, 2, -7}, // 0x61 'a' - {664, 11, 11, 11, 0, -10}, // 0x62 'b' - {680, 10, 8, 11, 2, -7}, // 0x63 'c' - {690, 9, 11, 11, 2, -10}, // 0x64 'd' - {703, 9, 8, 11, 2, -7}, // 0x65 'e' - {712, 10, 11, 11, 2, -10}, // 0x66 'f' - {726, 10, 11, 11, 2, -7}, // 0x67 'g' - {740, 10, 11, 11, 1, -10}, // 0x68 'h' - {754, 8, 11, 11, 2, -10}, // 0x69 'i' - {765, 9, 14, 11, 1, -10}, // 0x6A 'j' - {781, 9, 11, 11, 1, -10}, // 0x6B 'k' - {794, 8, 11, 11, 2, -10}, // 0x6C 'l' - {805, 11, 8, 11, 0, -7}, // 0x6D 'm' - {816, 9, 8, 11, 1, -7}, // 0x6E 'n' - {825, 9, 8, 11, 2, -7}, // 0x6F 'o' - {834, 11, 11, 11, 0, -7}, // 0x70 'p' - {850, 10, 11, 11, 2, -7}, // 0x71 'q' - {864, 9, 8, 11, 2, -7}, // 0x72 'r' - {873, 8, 8, 11, 2, -7}, // 0x73 's' - {881, 7, 10, 11, 2, -9}, // 0x74 't' - {890, 9, 8, 11, 2, -7}, // 0x75 'u' - {899, 10, 8, 11, 2, -7}, // 0x76 'v' - {909, 10, 8, 11, 2, -7}, // 0x77 'w' - {919, 10, 8, 11, 1, -7}, // 0x78 'x' - {929, 12, 11, 11, 0, -7}, // 0x79 'y' - {946, 8, 8, 11, 2, -7}, // 0x7A 'z' - {954, 6, 13, 11, 4, -10}, // 0x7B '{' - {964, 3, 12, 11, 5, -9}, // 0x7C '|' - {969, 6, 13, 11, 3, -10}, // 0x7D '}' - {979, 7, 3, 11, 3, -6}}; // 0x7E '~' - -const GFXfont FreeMonoOblique9pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique9pt7bBitmaps, - (GFXglyph *)FreeMonoOblique9pt7bGlyphs, 0x20, 0x7E, 18}; - -// Approx. 1654 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans12pt7b.h deleted file mode 100644 index 6e77392..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans12pt7b.h +++ /dev/null @@ -1,272 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xCF, 0x3C, 0xF3, 0x8A, 0x20, 0x06, 0x30, - 0x31, 0x03, 0x18, 0x18, 0xC7, 0xFF, 0xBF, 0xFC, 0x31, 0x03, 0x18, 0x18, - 0xC7, 0xFF, 0xBF, 0xFC, 0x31, 0x01, 0x18, 0x18, 0xC0, 0xC6, 0x06, 0x30, - 0x04, 0x03, 0xE1, 0xFF, 0x72, 0x6C, 0x47, 0x88, 0xF1, 0x07, 0x20, 0x7E, - 0x03, 0xF0, 0x17, 0x02, 0x3C, 0x47, 0x88, 0xF1, 0x1B, 0x26, 0x7F, 0xC3, - 0xE0, 0x10, 0x02, 0x00, 0x00, 0x06, 0x03, 0xC0, 0x40, 0x7E, 0x0C, 0x0E, - 0x70, 0x80, 0xC3, 0x18, 0x0C, 0x31, 0x00, 0xE7, 0x30, 0x07, 0xE6, 0x00, - 0x3C, 0x40, 0x00, 0x0C, 0x7C, 0x00, 0x8F, 0xE0, 0x19, 0xC7, 0x01, 0x18, - 0x30, 0x31, 0x83, 0x02, 0x1C, 0x70, 0x40, 0xFE, 0x04, 0x07, 0xC0, 0x0F, - 0x00, 0x7E, 0x03, 0x9C, 0x0C, 0x30, 0x30, 0xC0, 0xE7, 0x01, 0xF8, 0x03, - 0x80, 0x3E, 0x01, 0xCC, 0x6E, 0x19, 0xB0, 0x7C, 0xC0, 0xF3, 0x03, 0xCE, - 0x1F, 0x9F, 0xE6, 0x1E, 0x1C, 0xFF, 0xA0, 0x08, 0x8C, 0x66, 0x31, 0x98, - 0xC6, 0x31, 0x8C, 0x63, 0x08, 0x63, 0x08, 0x61, 0x0C, 0x20, 0x82, 0x18, - 0xC3, 0x18, 0xC3, 0x18, 0xC6, 0x31, 0x8C, 0x62, 0x31, 0x88, 0xC4, 0x62, - 0x00, 0x10, 0x23, 0x5B, 0xE3, 0x8D, 0x91, 0x00, 0x0C, 0x03, 0x00, 0xC0, - 0x30, 0xFF, 0xFF, 0xF0, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0xF5, 0x60, - 0xFF, 0xF0, 0xF0, 0x02, 0x0C, 0x10, 0x20, 0xC1, 0x02, 0x0C, 0x10, 0x20, - 0xC1, 0x02, 0x0C, 0x10, 0x20, 0xC1, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x30, - 0x6E, 0x0F, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, - 0x0E, 0xC1, 0x9C, 0x71, 0xFC, 0x1F, 0x00, 0x08, 0xCF, 0xFF, 0x8C, 0x63, - 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0x1F, 0x0F, 0xF9, 0x87, 0x60, 0x7C, - 0x06, 0x00, 0xC0, 0x18, 0x07, 0x01, 0xC0, 0xF0, 0x78, 0x1C, 0x06, 0x00, - 0x80, 0x30, 0x07, 0xFF, 0xFF, 0xE0, 0x3F, 0x0F, 0xF3, 0x87, 0x60, 0x6C, - 0x0C, 0x01, 0x80, 0x70, 0x7C, 0x0F, 0x80, 0x18, 0x01, 0x80, 0x3C, 0x07, - 0x80, 0xD8, 0x73, 0xFC, 0x1F, 0x00, 0x01, 0x80, 0x70, 0x0E, 0x03, 0xC0, - 0xD8, 0x1B, 0x06, 0x61, 0x8C, 0x21, 0x8C, 0x33, 0x06, 0x7F, 0xFF, 0xFE, - 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x3F, 0xCF, 0xF9, 0x80, 0x30, 0x06, - 0x00, 0xDE, 0x1F, 0xE7, 0x0E, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x07, - 0x81, 0xF8, 0x73, 0xFC, 0x1F, 0x00, 0x0F, 0x07, 0xF9, 0xC3, 0x30, 0x74, - 0x01, 0x80, 0x33, 0xC7, 0xFE, 0xF0, 0xDC, 0x1F, 0x01, 0xE0, 0x3C, 0x06, - 0xC1, 0xDC, 0x71, 0xFC, 0x1F, 0x00, 0xFF, 0xFF, 0xFC, 0x01, 0x00, 0x60, - 0x18, 0x02, 0x00, 0xC0, 0x30, 0x06, 0x01, 0x80, 0x30, 0x04, 0x01, 0x80, - 0x30, 0x06, 0x01, 0x80, 0x30, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x30, 0x66, - 0x0C, 0xC1, 0x8C, 0x61, 0xFC, 0x3F, 0x8E, 0x3B, 0x01, 0xE0, 0x3C, 0x07, - 0x80, 0xD8, 0x31, 0xFC, 0x1F, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x6C, - 0x07, 0x80, 0xF0, 0x1E, 0x07, 0x61, 0xEF, 0xFC, 0x79, 0x80, 0x30, 0x05, - 0x81, 0x98, 0x73, 0xFC, 0x1E, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0xF0, 0x00, - 0x0F, 0x56, 0x00, 0x00, 0x07, 0x01, 0xE0, 0xF8, 0x3C, 0x0F, 0x00, 0xE0, - 0x07, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xFF, 0xFF, 0xFF, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x0E, 0x00, 0x78, 0x01, 0xF0, 0x07, - 0xC0, 0x0F, 0x00, 0x70, 0x1E, 0x0F, 0x03, 0xC0, 0xF0, 0x08, 0x00, 0x1F, - 0x1F, 0xEE, 0x1B, 0x03, 0xC0, 0xC0, 0x30, 0x0C, 0x06, 0x03, 0x81, 0xC0, - 0xE0, 0x30, 0x0C, 0x03, 0x00, 0x00, 0x00, 0x0C, 0x03, 0x00, 0x00, 0xFE, - 0x00, 0x0F, 0xFE, 0x00, 0xF0, 0x3E, 0x07, 0x00, 0x3C, 0x38, 0x00, 0x30, - 0xC1, 0xE0, 0x66, 0x0F, 0xD9, 0xD8, 0x61, 0xC3, 0xC3, 0x07, 0x0F, 0x1C, - 0x1C, 0x3C, 0x60, 0x60, 0xF1, 0x81, 0x83, 0xC6, 0x06, 0x1B, 0x18, 0x38, - 0xEE, 0x71, 0xE7, 0x18, 0xFD, 0xF8, 0x71, 0xE7, 0xC0, 0xE0, 0x00, 0x01, - 0xE0, 0x00, 0x01, 0xFF, 0xC0, 0x01, 0xFC, 0x00, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x07, 0xE0, 0x06, 0x60, 0x06, 0x60, 0x0E, 0x70, 0x0C, 0x30, - 0x0C, 0x30, 0x1C, 0x38, 0x18, 0x18, 0x1F, 0xF8, 0x3F, 0xFC, 0x30, 0x1C, - 0x30, 0x0C, 0x70, 0x0E, 0x60, 0x06, 0x60, 0x06, 0xFF, 0xC7, 0xFF, 0x30, - 0x19, 0x80, 0x6C, 0x03, 0x60, 0x1B, 0x00, 0xD8, 0x0C, 0xFF, 0xC7, 0xFF, - 0x30, 0x0D, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x06, 0xFF, 0xF7, - 0xFE, 0x00, 0x07, 0xE0, 0x3F, 0xF0, 0xE0, 0x73, 0x80, 0x66, 0x00, 0x6C, - 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, 0x00, - 0x06, 0x00, 0x6C, 0x00, 0xDC, 0x03, 0x1E, 0x0E, 0x1F, 0xF8, 0x0F, 0xC0, - 0xFF, 0x83, 0xFF, 0x8C, 0x07, 0x30, 0x0E, 0xC0, 0x1B, 0x00, 0x7C, 0x00, - 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1F, 0x00, - 0x6C, 0x03, 0xB0, 0x1C, 0xFF, 0xE3, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xC0, - 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xFF, 0xEF, 0xFE, 0xC0, - 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xFF, 0xDF, - 0xFB, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x00, - 0x07, 0xF0, 0x1F, 0xFC, 0x3C, 0x1E, 0x70, 0x06, 0x60, 0x03, 0xE0, 0x00, - 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x7F, 0xC0, 0x7F, 0xC0, 0x03, 0xC0, 0x03, - 0x60, 0x03, 0x60, 0x07, 0x30, 0x0F, 0x3C, 0x1F, 0x1F, 0xFB, 0x07, 0xE1, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x03, 0xFF, 0xFF, 0xFF, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, - 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x01, - 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0x60, - 0x3C, 0x1E, 0x0F, 0x07, 0xC7, 0x7F, 0x1F, 0x00, 0xC0, 0x3B, 0x01, 0xCC, - 0x0E, 0x30, 0x70, 0xC3, 0x83, 0x1C, 0x0C, 0xE0, 0x33, 0x80, 0xDE, 0x03, - 0xDC, 0x0E, 0x38, 0x30, 0x60, 0xC1, 0xC3, 0x03, 0x8C, 0x06, 0x30, 0x1C, - 0xC0, 0x3B, 0x00, 0x60, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, - 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, - 0xFF, 0xFF, 0xF0, 0xE0, 0x07, 0xE0, 0x07, 0xF0, 0x0F, 0xF0, 0x0F, 0xD0, - 0x0F, 0xD8, 0x1B, 0xD8, 0x1B, 0xD8, 0x1B, 0xCC, 0x33, 0xCC, 0x33, 0xCC, - 0x33, 0xC6, 0x63, 0xC6, 0x63, 0xC6, 0x63, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC1, 0x83, 0xE0, 0x1F, 0x00, 0xFC, 0x07, 0xE0, 0x3D, 0x81, 0xEE, - 0x0F, 0x30, 0x79, 0xC3, 0xC6, 0x1E, 0x18, 0xF0, 0xE7, 0x83, 0x3C, 0x1D, - 0xE0, 0x6F, 0x01, 0xF8, 0x0F, 0xC0, 0x3E, 0x01, 0xC0, 0x03, 0xE0, 0x0F, - 0xFC, 0x0F, 0x07, 0x86, 0x00, 0xC6, 0x00, 0x33, 0x00, 0x1B, 0x00, 0x07, - 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x36, 0x00, - 0x33, 0x00, 0x18, 0xC0, 0x18, 0x78, 0x3C, 0x1F, 0xFC, 0x03, 0xF8, 0x00, - 0xFF, 0x8F, 0xFE, 0xC0, 0x6C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x07, - 0xFF, 0xEF, 0xFC, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, - 0xC0, 0x0C, 0x00, 0x03, 0xE0, 0x0F, 0xFC, 0x0F, 0x07, 0x86, 0x00, 0xC6, - 0x00, 0x33, 0x00, 0x1B, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0x78, 0x00, 0x36, 0x00, 0x33, 0x01, 0x98, 0xC0, 0xFC, 0x78, - 0x3C, 0x1F, 0xFF, 0x03, 0xF9, 0x80, 0x00, 0x40, 0xFF, 0xC3, 0xFF, 0xCC, - 0x03, 0xB0, 0x06, 0xC0, 0x1B, 0x00, 0x6C, 0x01, 0xB0, 0x0C, 0xFF, 0xE3, - 0xFF, 0xCC, 0x03, 0xB0, 0x06, 0xC0, 0x1B, 0x00, 0x6C, 0x01, 0xB0, 0x06, - 0xC0, 0x1B, 0x00, 0x70, 0x0F, 0xE0, 0x7F, 0xC3, 0x83, 0x9C, 0x07, 0x60, - 0x0D, 0x80, 0x06, 0x00, 0x1E, 0x00, 0x3F, 0x80, 0x3F, 0xC0, 0x0F, 0x80, - 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0xDE, 0x0E, 0x3F, 0xF0, 0x3F, 0x80, - 0xFF, 0xFF, 0xFF, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, - 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x80, 0xEE, 0x0E, 0x3F, 0xE0, 0x7C, 0x00, 0x60, 0x06, 0xC0, - 0x1D, 0xC0, 0x31, 0x80, 0x63, 0x01, 0xC7, 0x03, 0x06, 0x06, 0x0C, 0x1C, - 0x1C, 0x30, 0x18, 0x60, 0x31, 0xC0, 0x73, 0x00, 0x66, 0x00, 0xDC, 0x01, - 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0xE0, 0x30, 0x1D, 0x80, 0xE0, - 0x76, 0x07, 0x81, 0xD8, 0x1E, 0x06, 0x70, 0x7C, 0x18, 0xC1, 0xB0, 0xE3, - 0x0C, 0xC3, 0x8C, 0x33, 0x0C, 0x38, 0xC6, 0x30, 0x67, 0x18, 0xC1, 0x98, - 0x67, 0x06, 0x61, 0xD8, 0x1D, 0x83, 0x60, 0x3C, 0x0D, 0x80, 0xF0, 0x3E, - 0x03, 0xC0, 0x70, 0x0F, 0x01, 0xC0, 0x18, 0x07, 0x00, 0x70, 0x0E, 0x60, - 0x38, 0xE0, 0x60, 0xE1, 0xC0, 0xC3, 0x01, 0xCC, 0x01, 0xF8, 0x01, 0xE0, - 0x03, 0x80, 0x07, 0x80, 0x1F, 0x00, 0x33, 0x00, 0xE7, 0x03, 0x86, 0x06, - 0x0E, 0x1C, 0x0E, 0x70, 0x0C, 0xC0, 0x1C, 0x60, 0x06, 0x70, 0x0E, 0x30, - 0x1C, 0x38, 0x18, 0x1C, 0x38, 0x0C, 0x30, 0x0E, 0x70, 0x06, 0x60, 0x03, - 0xC0, 0x03, 0xC0, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xC0, 0x0E, - 0x00, 0xE0, 0x0E, 0x00, 0x60, 0x07, 0x00, 0x70, 0x07, 0x00, 0x30, 0x03, - 0x80, 0x38, 0x03, 0x80, 0x18, 0x01, 0xC0, 0x1C, 0x00, 0xFF, 0xFF, 0xFF, - 0xC0, 0xFF, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCF, - 0xF0, 0x81, 0x81, 0x02, 0x06, 0x04, 0x08, 0x18, 0x10, 0x20, 0x60, 0x40, - 0x81, 0x81, 0x02, 0x06, 0x04, 0xFF, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, - 0x33, 0x33, 0x33, 0x3F, 0xF0, 0x0C, 0x0E, 0x05, 0x86, 0xC3, 0x21, 0x19, - 0x8C, 0x83, 0xC1, 0x80, 0xFF, 0xFE, 0xE3, 0x8C, 0x30, 0x3F, 0x07, 0xF8, - 0xE1, 0xCC, 0x0C, 0x00, 0xC0, 0x1C, 0x3F, 0xCF, 0x8C, 0xC0, 0xCC, 0x0C, - 0xE3, 0xC7, 0xEF, 0x3C, 0x70, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, - 0x0C, 0xF8, 0xDF, 0xCF, 0x0E, 0xE0, 0x7C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xE0, 0x6F, 0x0E, 0xDF, 0xCC, 0xF8, 0x1F, 0x0F, 0xE7, 0x1B, - 0x83, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x38, 0x37, 0x1C, 0xFE, 0x1F, - 0x00, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x3C, 0xCF, 0xFB, 0x8F, - 0xE0, 0xF8, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF8, 0x3B, 0x8F, 0x3F, - 0x63, 0xCC, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x3C, 0x07, 0xFF, 0xFF, 0xFE, - 0x00, 0xC0, 0x1C, 0x0D, 0xC3, 0x1F, 0xE1, 0xF0, 0x3B, 0xD8, 0xC6, 0x7F, - 0xEC, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x00, 0x1E, 0x67, 0xFD, 0xC7, - 0xF0, 0x7C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x7C, 0x1D, 0xC7, 0x9F, - 0xB1, 0xE6, 0x00, 0xC0, 0x3E, 0x0E, 0x7F, 0xC7, 0xE0, 0xC0, 0x30, 0x0C, - 0x03, 0x00, 0xC0, 0x33, 0xCD, 0xFB, 0xC7, 0xE0, 0xF0, 0x3C, 0x0F, 0x03, - 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x30, 0xF0, 0x3F, 0xFF, 0xFF, - 0xF0, 0x33, 0x00, 0x03, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x3F, - 0xE0, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x01, 0x83, 0x30, 0xC6, 0x30, - 0xCC, 0x1B, 0x83, 0xF0, 0x77, 0x0C, 0x61, 0x8E, 0x30, 0xE6, 0x0C, 0xC1, - 0xD8, 0x18, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xCF, 0x1F, 0x6F, 0xDF, 0xFC, - 0x78, 0xFC, 0x18, 0x3C, 0x0C, 0x1E, 0x06, 0x0F, 0x03, 0x07, 0x81, 0x83, - 0xC0, 0xC1, 0xE0, 0x60, 0xF0, 0x30, 0x78, 0x18, 0x3C, 0x0C, 0x18, 0xCF, - 0x37, 0xEF, 0x1F, 0x83, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, - 0x0F, 0x03, 0xC0, 0xC0, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x7C, 0x07, 0x80, - 0xF0, 0x1E, 0x03, 0xC0, 0x7C, 0x1D, 0xC7, 0x1F, 0xC1, 0xF0, 0xCF, 0x8D, - 0xFC, 0xF0, 0xEE, 0x06, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3E, - 0x07, 0xF0, 0xEF, 0xFC, 0xCF, 0x8C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x00, - 0x1E, 0x67, 0xFD, 0xC7, 0xF0, 0x7C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, - 0x7C, 0x1D, 0xC7, 0x9F, 0xF1, 0xE6, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, - 0xCF, 0x7F, 0x38, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC0, 0x3E, 0x1F, - 0xEE, 0x1B, 0x00, 0xC0, 0x3C, 0x07, 0xF0, 0x3E, 0x01, 0xF0, 0x3E, 0x1D, - 0xFE, 0x3E, 0x00, 0x63, 0x19, 0xFF, 0xB1, 0x8C, 0x63, 0x18, 0xC6, 0x31, - 0xE7, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, - 0xF0, 0x7E, 0x3D, 0xFB, 0x3C, 0xC0, 0xE0, 0x66, 0x06, 0x60, 0x67, 0x0C, - 0x30, 0xC3, 0x0C, 0x39, 0x81, 0x98, 0x19, 0x81, 0xF0, 0x0F, 0x00, 0xE0, - 0x0E, 0x00, 0xC1, 0xC1, 0xB0, 0xE1, 0xD8, 0x70, 0xCC, 0x2C, 0x66, 0x36, - 0x31, 0x9B, 0x18, 0xCD, 0x98, 0x64, 0x6C, 0x16, 0x36, 0x0F, 0x1A, 0x07, - 0x8F, 0x03, 0x83, 0x80, 0xC1, 0xC0, 0x60, 0xEE, 0x18, 0xC6, 0x0C, 0xC1, - 0xF0, 0x1C, 0x01, 0x80, 0x78, 0x1B, 0x03, 0x30, 0xC7, 0x30, 0x66, 0x06, - 0xE0, 0x6C, 0x0D, 0x83, 0x38, 0x63, 0x0C, 0x63, 0x0E, 0x60, 0xCC, 0x1B, - 0x03, 0x60, 0x3C, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, 0xE0, 0x78, 0x0E, - 0x00, 0xFF, 0xFF, 0xF0, 0x18, 0x0C, 0x07, 0x03, 0x81, 0xC0, 0x60, 0x30, - 0x18, 0x0E, 0x03, 0xFF, 0xFF, 0xC0, 0x19, 0xCC, 0x63, 0x18, 0xC6, 0x31, - 0x99, 0x86, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x1C, 0x60, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0xC7, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x0C, 0x33, 0x31, - 0x8C, 0x63, 0x18, 0xC6, 0x73, 0x00, 0x70, 0x3E, 0x09, 0xE4, 0x1F, 0x03, - 0x80}; - -const GFXglyph FreeSans12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 2, 18, 8, 3, -17}, // 0x21 '!' - {5, 6, 6, 8, 1, -16}, // 0x22 '"' - {10, 13, 16, 13, 0, -15}, // 0x23 '#' - {36, 11, 20, 13, 1, -17}, // 0x24 '$' - {64, 20, 17, 21, 1, -16}, // 0x25 '%' - {107, 14, 17, 16, 1, -16}, // 0x26 '&' - {137, 2, 6, 5, 1, -16}, // 0x27 ''' - {139, 5, 23, 8, 2, -17}, // 0x28 '(' - {154, 5, 23, 8, 1, -17}, // 0x29 ')' - {169, 7, 7, 9, 1, -17}, // 0x2A '*' - {176, 10, 11, 14, 2, -10}, // 0x2B '+' - {190, 2, 6, 7, 2, -1}, // 0x2C ',' - {192, 6, 2, 8, 1, -7}, // 0x2D '-' - {194, 2, 2, 6, 2, -1}, // 0x2E '.' - {195, 7, 18, 7, 0, -17}, // 0x2F '/' - {211, 11, 17, 13, 1, -16}, // 0x30 '0' - {235, 5, 17, 13, 3, -16}, // 0x31 '1' - {246, 11, 17, 13, 1, -16}, // 0x32 '2' - {270, 11, 17, 13, 1, -16}, // 0x33 '3' - {294, 11, 17, 13, 1, -16}, // 0x34 '4' - {318, 11, 17, 13, 1, -16}, // 0x35 '5' - {342, 11, 17, 13, 1, -16}, // 0x36 '6' - {366, 11, 17, 13, 1, -16}, // 0x37 '7' - {390, 11, 17, 13, 1, -16}, // 0x38 '8' - {414, 11, 17, 13, 1, -16}, // 0x39 '9' - {438, 2, 13, 6, 2, -12}, // 0x3A ':' - {442, 2, 16, 6, 2, -11}, // 0x3B ';' - {446, 12, 12, 14, 1, -11}, // 0x3C '<' - {464, 12, 6, 14, 1, -8}, // 0x3D '=' - {473, 12, 12, 14, 1, -11}, // 0x3E '>' - {491, 10, 18, 13, 2, -17}, // 0x3F '?' - {514, 22, 21, 24, 1, -17}, // 0x40 '@' - {572, 16, 18, 16, 0, -17}, // 0x41 'A' - {608, 13, 18, 16, 2, -17}, // 0x42 'B' - {638, 15, 18, 17, 1, -17}, // 0x43 'C' - {672, 14, 18, 17, 2, -17}, // 0x44 'D' - {704, 12, 18, 15, 2, -17}, // 0x45 'E' - {731, 11, 18, 14, 2, -17}, // 0x46 'F' - {756, 16, 18, 18, 1, -17}, // 0x47 'G' - {792, 13, 18, 17, 2, -17}, // 0x48 'H' - {822, 2, 18, 7, 2, -17}, // 0x49 'I' - {827, 9, 18, 13, 1, -17}, // 0x4A 'J' - {848, 14, 18, 16, 2, -17}, // 0x4B 'K' - {880, 10, 18, 14, 2, -17}, // 0x4C 'L' - {903, 16, 18, 20, 2, -17}, // 0x4D 'M' - {939, 13, 18, 18, 2, -17}, // 0x4E 'N' - {969, 17, 18, 19, 1, -17}, // 0x4F 'O' - {1008, 12, 18, 16, 2, -17}, // 0x50 'P' - {1035, 17, 19, 19, 1, -17}, // 0x51 'Q' - {1076, 14, 18, 17, 2, -17}, // 0x52 'R' - {1108, 14, 18, 16, 1, -17}, // 0x53 'S' - {1140, 12, 18, 15, 1, -17}, // 0x54 'T' - {1167, 13, 18, 17, 2, -17}, // 0x55 'U' - {1197, 15, 18, 15, 0, -17}, // 0x56 'V' - {1231, 22, 18, 22, 0, -17}, // 0x57 'W' - {1281, 15, 18, 16, 0, -17}, // 0x58 'X' - {1315, 16, 18, 16, 0, -17}, // 0x59 'Y' - {1351, 13, 18, 15, 1, -17}, // 0x5A 'Z' - {1381, 4, 23, 7, 2, -17}, // 0x5B '[' - {1393, 7, 18, 7, 0, -17}, // 0x5C '\' - {1409, 4, 23, 7, 1, -17}, // 0x5D ']' - {1421, 9, 9, 11, 1, -16}, // 0x5E '^' - {1432, 15, 1, 13, -1, 4}, // 0x5F '_' - {1434, 5, 4, 6, 1, -17}, // 0x60 '`' - {1437, 12, 13, 13, 1, -12}, // 0x61 'a' - {1457, 12, 18, 13, 1, -17}, // 0x62 'b' - {1484, 10, 13, 12, 1, -12}, // 0x63 'c' - {1501, 11, 18, 13, 1, -17}, // 0x64 'd' - {1526, 11, 13, 13, 1, -12}, // 0x65 'e' - {1544, 5, 18, 7, 1, -17}, // 0x66 'f' - {1556, 11, 18, 13, 1, -12}, // 0x67 'g' - {1581, 10, 18, 13, 1, -17}, // 0x68 'h' - {1604, 2, 18, 5, 2, -17}, // 0x69 'i' - {1609, 4, 23, 6, 0, -17}, // 0x6A 'j' - {1621, 11, 18, 12, 1, -17}, // 0x6B 'k' - {1646, 2, 18, 5, 1, -17}, // 0x6C 'l' - {1651, 17, 13, 19, 1, -12}, // 0x6D 'm' - {1679, 10, 13, 13, 1, -12}, // 0x6E 'n' - {1696, 11, 13, 13, 1, -12}, // 0x6F 'o' - {1714, 12, 17, 13, 1, -12}, // 0x70 'p' - {1740, 11, 17, 13, 1, -12}, // 0x71 'q' - {1764, 6, 13, 8, 1, -12}, // 0x72 'r' - {1774, 10, 13, 12, 1, -12}, // 0x73 's' - {1791, 5, 16, 7, 1, -15}, // 0x74 't' - {1801, 10, 13, 13, 1, -12}, // 0x75 'u' - {1818, 12, 13, 12, 0, -12}, // 0x76 'v' - {1838, 17, 13, 17, 0, -12}, // 0x77 'w' - {1866, 11, 13, 11, 0, -12}, // 0x78 'x' - {1884, 11, 18, 11, 0, -12}, // 0x79 'y' - {1909, 10, 13, 12, 1, -12}, // 0x7A 'z' - {1926, 5, 23, 8, 1, -17}, // 0x7B '{' - {1941, 2, 23, 6, 2, -17}, // 0x7C '|' - {1947, 5, 23, 8, 2, -17}, // 0x7D '}' - {1962, 10, 5, 12, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSans12pt7b PROGMEM = {(uint8_t *)FreeSans12pt7bBitmaps, - (GFXglyph *)FreeSans12pt7bGlyphs, 0x20, - 0x7E, 29}; - -// Approx. 2641 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans18pt7b.h deleted file mode 100644 index f3a9606..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans18pt7b.h +++ /dev/null @@ -1,454 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans18pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE9, 0x20, 0x3F, 0xFC, 0xE3, 0xF1, - 0xF8, 0xFC, 0x7E, 0x3F, 0x1F, 0x8E, 0x82, 0x41, 0x00, 0x01, 0xC3, 0x80, - 0x38, 0x70, 0x06, 0x0E, 0x00, 0xC1, 0x80, 0x38, 0x70, 0x07, 0x0E, 0x0F, - 0xFF, 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE0, 0xE1, 0xC0, 0x1C, 0x38, 0x03, - 0x87, 0x00, 0x70, 0xE0, 0x0C, 0x18, 0x3F, 0xFF, 0xF7, 0xFF, 0xFE, 0xFF, - 0xFF, 0xC1, 0xC3, 0x80, 0x30, 0x60, 0x06, 0x0C, 0x01, 0xC3, 0x80, 0x38, - 0x70, 0x07, 0x0E, 0x00, 0xC1, 0x80, 0x03, 0x00, 0x0F, 0xC0, 0x3F, 0xF0, - 0x3F, 0xF8, 0x7B, 0x3C, 0xF3, 0x1C, 0xE3, 0x0E, 0xE3, 0x0E, 0xE3, 0x0E, - 0xE3, 0x00, 0xE3, 0x00, 0xF3, 0x00, 0x7B, 0x00, 0x7F, 0x80, 0x1F, 0xF0, - 0x07, 0xFC, 0x03, 0x7E, 0x03, 0x0F, 0x03, 0x07, 0xE3, 0x07, 0xE3, 0x07, - 0xE3, 0x07, 0xE3, 0x0F, 0x73, 0x3E, 0x7F, 0xFC, 0x3F, 0xF8, 0x0F, 0xE0, - 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x78, 0x00, - 0xE0, 0x0F, 0xF0, 0x06, 0x00, 0xFF, 0xC0, 0x70, 0x07, 0x0E, 0x07, 0x00, - 0x70, 0x38, 0x38, 0x03, 0x00, 0xC3, 0x80, 0x18, 0x06, 0x1C, 0x00, 0xE0, - 0x71, 0xC0, 0x03, 0x87, 0x8C, 0x00, 0x1F, 0xF8, 0xE0, 0x00, 0x7F, 0x86, - 0x00, 0x01, 0xF8, 0x70, 0x00, 0x00, 0x03, 0x03, 0xC0, 0x00, 0x38, 0x7F, - 0x80, 0x01, 0x87, 0xFE, 0x00, 0x1C, 0x38, 0x70, 0x00, 0xC3, 0x81, 0xC0, - 0x0E, 0x18, 0x06, 0x00, 0xE0, 0xC0, 0x30, 0x07, 0x07, 0x03, 0x80, 0x70, - 0x1C, 0x38, 0x03, 0x80, 0xFF, 0xC0, 0x38, 0x03, 0xFC, 0x01, 0x80, 0x07, - 0x80, 0x01, 0xF0, 0x00, 0x7F, 0x80, 0x0F, 0xFC, 0x01, 0xE1, 0xE0, 0x1C, - 0x0E, 0x01, 0xC0, 0xE0, 0x1C, 0x0E, 0x01, 0xE1, 0xE0, 0x0E, 0x3C, 0x00, - 0x77, 0x80, 0x07, 0xF0, 0x00, 0x7C, 0x00, 0x0F, 0xE0, 0x03, 0xCF, 0x1C, - 0x78, 0x79, 0xC7, 0x03, 0xDC, 0xE0, 0x1F, 0x8E, 0x00, 0xF8, 0xE0, 0x0F, - 0x0E, 0x00, 0x70, 0xF0, 0x0F, 0x87, 0xC3, 0xFC, 0x7F, 0xFD, 0xC3, 0xFF, - 0x0E, 0x0F, 0xC0, 0xF0, 0xFF, 0xFF, 0xFA, 0x40, 0x06, 0x06, 0x0C, 0x0C, - 0x18, 0x18, 0x38, 0x30, 0x70, 0x70, 0x70, 0x60, 0xE0, 0xE0, 0xE0, 0xE0, - 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x60, 0x70, 0x70, 0x70, 0x30, 0x38, 0x18, - 0x18, 0x0C, 0x0C, 0x06, 0x03, 0xC0, 0x60, 0x30, 0x30, 0x38, 0x18, 0x1C, - 0x0C, 0x0E, 0x0E, 0x0E, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, - 0x07, 0x07, 0x06, 0x0E, 0x0E, 0x0E, 0x0C, 0x1C, 0x18, 0x38, 0x30, 0x30, - 0x60, 0xC0, 0x0C, 0x03, 0x00, 0xC3, 0xB7, 0xFF, 0xC7, 0x81, 0xE0, 0xEC, - 0x73, 0x88, 0x40, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0xFF, - 0xF6, 0xDA, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xC0, 0x30, 0x18, - 0x06, 0x01, 0x80, 0xC0, 0x30, 0x0C, 0x06, 0x01, 0x80, 0x60, 0x30, 0x0C, - 0x03, 0x00, 0xC0, 0x60, 0x18, 0x06, 0x03, 0x00, 0xC0, 0x30, 0x18, 0x06, - 0x01, 0x80, 0xC0, 0x30, 0x00, 0x07, 0xE0, 0x0F, 0xF8, 0x1F, 0xFC, 0x3C, - 0x3C, 0x78, 0x1E, 0x70, 0x0E, 0x70, 0x0E, 0xE0, 0x07, 0xE0, 0x07, 0xE0, - 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, - 0x07, 0xE0, 0x07, 0xE0, 0x0F, 0x70, 0x0E, 0x70, 0x0E, 0x78, 0x1E, 0x3C, - 0x3C, 0x1F, 0xF8, 0x1F, 0xF0, 0x07, 0xE0, 0x03, 0x03, 0x07, 0x0F, 0x3F, - 0xFF, 0xFF, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0xE0, 0x1F, 0xF8, - 0x3F, 0xFC, 0x7C, 0x3E, 0x70, 0x0F, 0xF0, 0x0F, 0xE0, 0x07, 0xE0, 0x07, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF8, - 0x03, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x70, 0x00, - 0x60, 0x00, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xF0, - 0x07, 0xFE, 0x07, 0xFF, 0x87, 0x83, 0xC3, 0x80, 0xF3, 0x80, 0x39, 0xC0, - 0x1C, 0xE0, 0x0E, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x7F, 0x00, 0x3F, 0x00, - 0x1F, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, 0xF0, 0x01, - 0xF8, 0x00, 0xFE, 0x00, 0x77, 0x00, 0x73, 0xE0, 0xF8, 0xFF, 0xF8, 0x3F, - 0xF8, 0x07, 0xF0, 0x00, 0x00, 0x38, 0x00, 0x38, 0x00, 0x78, 0x00, 0xF8, - 0x00, 0xF8, 0x01, 0xF8, 0x03, 0xB8, 0x03, 0x38, 0x07, 0x38, 0x0E, 0x38, - 0x1C, 0x38, 0x18, 0x38, 0x38, 0x38, 0x70, 0x38, 0x60, 0x38, 0xE0, 0x38, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x1F, 0xFF, 0x0F, 0xFF, 0x8F, 0xFF, - 0xC7, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x39, - 0xF0, 0x3F, 0xFE, 0x1F, 0xFF, 0x8F, 0x83, 0xE7, 0x00, 0xF0, 0x00, 0x3C, - 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xFC, 0x00, - 0xEF, 0x00, 0x73, 0xC0, 0xF0, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xE0, 0x00, - 0x03, 0xE0, 0x0F, 0xF8, 0x1F, 0xFC, 0x3C, 0x1E, 0x38, 0x0E, 0x70, 0x0E, - 0x70, 0x00, 0x60, 0x00, 0xE0, 0x00, 0xE3, 0xE0, 0xEF, 0xF8, 0xFF, 0xFC, - 0xFC, 0x3E, 0xF0, 0x0E, 0xF0, 0x0F, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, - 0x60, 0x07, 0x70, 0x0F, 0x70, 0x0E, 0x3C, 0x3E, 0x3F, 0xFC, 0x1F, 0xF8, - 0x07, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x06, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x18, 0x00, 0x38, 0x00, 0x70, 0x00, 0x60, 0x00, 0xE0, - 0x00, 0xC0, 0x01, 0xC0, 0x01, 0x80, 0x03, 0x80, 0x03, 0x80, 0x07, 0x00, - 0x07, 0x00, 0x07, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, 0x87, 0x83, - 0xC7, 0x80, 0xF3, 0x80, 0x39, 0xC0, 0x1C, 0xE0, 0x0E, 0x78, 0x0F, 0x1E, - 0x0F, 0x07, 0xFF, 0x01, 0xFF, 0x03, 0xFF, 0xE3, 0xE0, 0xF9, 0xC0, 0x1D, - 0xC0, 0x0F, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0xF7, 0x00, - 0x73, 0xE0, 0xF8, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x07, 0xE0, - 0x1F, 0xF8, 0x3F, 0xFC, 0x7C, 0x3C, 0x70, 0x0E, 0xF0, 0x0E, 0xE0, 0x06, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x0F, 0x70, 0x0F, 0x78, 0x3F, - 0x3F, 0xFF, 0x1F, 0xF7, 0x07, 0xC7, 0x00, 0x07, 0x00, 0x06, 0x00, 0x0E, - 0x70, 0x0E, 0x70, 0x1C, 0x78, 0x3C, 0x3F, 0xF8, 0x1F, 0xF0, 0x07, 0xC0, - 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x07, 0xFF, 0x80, 0xFF, 0xF0, 0x00, 0x00, - 0x00, 0x07, 0xFF, 0xB6, 0xD6, 0x00, 0x00, 0x80, 0x03, 0xC0, 0x07, 0xE0, - 0x0F, 0xC0, 0x3F, 0x80, 0x7E, 0x00, 0xFC, 0x01, 0xF0, 0x00, 0xE0, 0x00, - 0x7C, 0x00, 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x07, 0xF0, 0x00, - 0x7E, 0x00, 0x0F, 0x00, 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x80, 0x80, 0x00, 0x70, 0x00, 0x3E, 0x00, 0x0F, 0xE0, 0x00, 0xFC, - 0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0x80, 0x0F, 0xC0, - 0x1F, 0x80, 0x7F, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x01, 0xC0, 0x00, - 0x80, 0x00, 0x00, 0x0F, 0xC0, 0x7F, 0xE1, 0xFF, 0xE3, 0xC3, 0xEF, 0x01, - 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0x00, 0x0E, 0x00, 0x38, 0x00, 0xF0, - 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x00, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x00, - 0x00, 0xFF, 0xFF, 0xC0, 0x01, 0xF8, 0x0F, 0xE0, 0x03, 0xE0, 0x01, 0xF0, - 0x07, 0x80, 0x00, 0xF8, 0x0F, 0x00, 0x00, 0x3C, 0x1E, 0x00, 0x00, 0x1E, - 0x3C, 0x03, 0xE0, 0x1E, 0x38, 0x0F, 0xF3, 0x8E, 0x78, 0x1E, 0x3F, 0x0F, - 0x70, 0x38, 0x1F, 0x07, 0x70, 0x78, 0x0F, 0x07, 0xE0, 0x70, 0x0E, 0x07, - 0xE0, 0x70, 0x0E, 0x07, 0xE0, 0xE0, 0x0E, 0x07, 0xE0, 0xE0, 0x1C, 0x07, - 0xE0, 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x38, 0x1C, - 0xF0, 0x70, 0x78, 0x3C, 0x70, 0x78, 0xFC, 0x78, 0x78, 0x3F, 0xDF, 0xF0, - 0x38, 0x1F, 0x0F, 0xC0, 0x3C, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x07, 0xF0, 0x0E, 0x00, 0x01, 0xFF, 0xFE, 0x00, - 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x03, - 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xDC, 0x00, 0x07, 0x78, - 0x00, 0x3C, 0xE0, 0x00, 0xE3, 0x80, 0x03, 0x8F, 0x00, 0x1E, 0x1C, 0x00, - 0x70, 0x70, 0x01, 0xC1, 0xE0, 0x0E, 0x03, 0x80, 0x38, 0x0E, 0x00, 0xE0, - 0x3C, 0x07, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0xFF, 0xFF, 0x83, 0xC0, 0x0E, - 0x0E, 0x00, 0x3C, 0x78, 0x00, 0xF1, 0xE0, 0x01, 0xC7, 0x00, 0x07, 0xBC, - 0x00, 0x1E, 0xF0, 0x00, 0x3B, 0x80, 0x00, 0xF0, 0xFF, 0xFC, 0x1F, 0xFF, - 0xE3, 0xFF, 0xFE, 0x70, 0x03, 0xCE, 0x00, 0x3D, 0xC0, 0x03, 0xB8, 0x00, - 0x77, 0x00, 0x0E, 0xE0, 0x01, 0xDC, 0x00, 0x73, 0x80, 0x1E, 0x7F, 0xFF, - 0x8F, 0xFF, 0xF1, 0xFF, 0xFF, 0x38, 0x00, 0xF7, 0x00, 0x0E, 0xE0, 0x00, - 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x03, - 0xF8, 0x00, 0xF7, 0xFF, 0xFC, 0xFF, 0xFF, 0x1F, 0xFF, 0x80, 0x00, 0xFF, - 0x00, 0x0F, 0xFF, 0x00, 0xFF, 0xFE, 0x07, 0xE0, 0x7C, 0x3E, 0x00, 0x78, - 0xF0, 0x00, 0xE7, 0x80, 0x03, 0xDC, 0x00, 0x07, 0x70, 0x00, 0x03, 0x80, - 0x00, 0x0E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, - 0x0E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x1D, 0xC0, 0x00, 0x77, - 0x00, 0x03, 0xDE, 0x00, 0x0E, 0x3C, 0x00, 0x78, 0xF8, 0x03, 0xC1, 0xF8, - 0x1F, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x03, 0xF8, 0x00, 0xFF, 0xF8, - 0x0F, 0xFF, 0xE0, 0xFF, 0xFF, 0x0E, 0x00, 0xF8, 0xE0, 0x03, 0xCE, 0x00, - 0x1C, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xFE, 0x00, 0x07, 0xE0, - 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, - 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x0F, 0xE0, 0x00, 0xEE, 0x00, 0x0E, - 0xE0, 0x01, 0xEE, 0x00, 0x3C, 0xE0, 0x0F, 0x8F, 0xFF, 0xF0, 0xFF, 0xFE, - 0x0F, 0xFF, 0x80, 0xFF, 0xFF, 0xBF, 0xFF, 0xEF, 0xFF, 0xFB, 0x80, 0x00, - 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, - 0x00, 0x0E, 0x00, 0x03, 0xFF, 0xFE, 0xFF, 0xFF, 0xBF, 0xFF, 0xEE, 0x00, - 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, - 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x0E, 0x00, - 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, - 0x00, 0x1F, 0xFF, 0xCF, 0xFF, 0xE7, 0xFF, 0xF3, 0x80, 0x01, 0xC0, 0x00, - 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, - 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x00, 0x00, 0x7F, - 0x80, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x0F, 0x80, 0xFC, 0x1E, 0x00, - 0x3E, 0x3C, 0x00, 0x0E, 0x78, 0x00, 0x0F, 0x70, 0x00, 0x07, 0x70, 0x00, - 0x00, 0xE0, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xE0, 0x03, - 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0x70, 0x00, 0x07, 0x70, 0x00, 0x0F, 0x78, 0x00, 0x0F, 0x3C, 0x00, - 0x1F, 0x1E, 0x00, 0x3F, 0x0F, 0xC0, 0xF7, 0x07, 0xFF, 0xE7, 0x03, 0xFF, - 0xC3, 0x00, 0xFF, 0x03, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, - 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, - 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, - 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, - 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, - 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1F, 0x80, 0x7E, - 0x01, 0xF8, 0x07, 0xE0, 0x1F, 0xC0, 0xF7, 0x87, 0x9F, 0xFE, 0x3F, 0xF0, - 0x3F, 0x00, 0xE0, 0x01, 0xEE, 0x00, 0x3C, 0xE0, 0x07, 0x8E, 0x00, 0xF0, - 0xE0, 0x1E, 0x0E, 0x03, 0xE0, 0xE0, 0x7C, 0x0E, 0x0F, 0x80, 0xE1, 0xF0, - 0x0E, 0x1E, 0x00, 0xE3, 0xC0, 0x0E, 0x7C, 0x00, 0xEF, 0xE0, 0x0F, 0xCE, - 0x00, 0xF8, 0xF0, 0x0F, 0x07, 0x80, 0xE0, 0x3C, 0x0E, 0x03, 0xC0, 0xE0, - 0x1E, 0x0E, 0x00, 0xF0, 0xE0, 0x0F, 0x0E, 0x00, 0x78, 0xE0, 0x03, 0xCE, - 0x00, 0x3C, 0xE0, 0x01, 0xEE, 0x00, 0x0F, 0xE0, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, - 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, - 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, - 0x38, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xF8, 0x00, 0x1F, 0xF8, - 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xFC, 0x00, 0x3F, 0xFC, 0x00, 0x3F, 0xFC, - 0x00, 0x3F, 0xEE, 0x00, 0x77, 0xEE, 0x00, 0x77, 0xEE, 0x00, 0x77, 0xE7, - 0x00, 0xE7, 0xE7, 0x00, 0xE7, 0xE7, 0x00, 0xE7, 0xE3, 0x81, 0xC7, 0xE3, - 0x81, 0xC7, 0xE3, 0x81, 0xC7, 0xE1, 0xC3, 0x87, 0xE1, 0xC3, 0x87, 0xE1, - 0xC3, 0x87, 0xE0, 0xE7, 0x07, 0xE0, 0xE7, 0x07, 0xE0, 0xE7, 0x07, 0xE0, - 0x7E, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x3C, 0x07, 0xE0, - 0x3C, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0xC0, 0x07, - 0xFC, 0x00, 0x7F, 0xE0, 0x07, 0xEF, 0x00, 0x7E, 0x70, 0x07, 0xE7, 0x80, - 0x7E, 0x3C, 0x07, 0xE1, 0xC0, 0x7E, 0x1E, 0x07, 0xE0, 0xE0, 0x7E, 0x0F, - 0x07, 0xE0, 0x78, 0x7E, 0x03, 0x87, 0xE0, 0x3C, 0x7E, 0x01, 0xE7, 0xE0, - 0x0E, 0x7E, 0x00, 0xF7, 0xE0, 0x07, 0xFE, 0x00, 0x3F, 0xE0, 0x03, 0xFE, - 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x0F, 0x00, 0x7F, 0x00, 0x01, 0xFF, - 0xF0, 0x01, 0xFF, 0xFC, 0x01, 0xF0, 0x1F, 0x01, 0xE0, 0x03, 0xC1, 0xE0, - 0x00, 0xF1, 0xE0, 0x00, 0x3C, 0xE0, 0x00, 0x0E, 0x70, 0x00, 0x07, 0x70, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, - 0xB8, 0x00, 0x03, 0x9C, 0x00, 0x01, 0xCF, 0x00, 0x01, 0xE3, 0xC0, 0x01, - 0xE0, 0xF0, 0x01, 0xE0, 0x3E, 0x03, 0xE0, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFF, 0xFC, 0x3F, 0xFF, 0x8F, 0xFF, 0xF3, - 0x80, 0x3E, 0xE0, 0x03, 0xF8, 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, - 0x01, 0xF8, 0x00, 0x7E, 0x00, 0x3F, 0x80, 0x1E, 0xFF, 0xFF, 0x3F, 0xFF, - 0x8F, 0xFF, 0xC3, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, - 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, - 0x00, 0x38, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xF0, 0x01, 0xFF, - 0xFC, 0x01, 0xF0, 0x1F, 0x01, 0xE0, 0x03, 0xC1, 0xE0, 0x00, 0xF1, 0xE0, - 0x00, 0x3C, 0xE0, 0x00, 0x0E, 0x70, 0x00, 0x07, 0x70, 0x00, 0x01, 0xF8, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xB8, 0x00, 0x03, - 0x9C, 0x00, 0x01, 0xCF, 0x00, 0x39, 0xE3, 0xC0, 0x1F, 0xE0, 0xF0, 0x07, - 0xE0, 0x3E, 0x03, 0xF0, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xEE, 0x00, 0x3F, - 0x83, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x20, 0xFF, 0xFE, 0x0F, 0xFF, - 0xF8, 0xFF, 0xFF, 0xCE, 0x00, 0x3C, 0xE0, 0x01, 0xEE, 0x00, 0x0E, 0xE0, - 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x01, 0xCE, - 0x00, 0x3C, 0xFF, 0xFF, 0x8F, 0xFF, 0xF0, 0xFF, 0xFF, 0x8E, 0x00, 0x3C, - 0xE0, 0x01, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, - 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xFE, 0x00, - 0x0F, 0x03, 0xFC, 0x00, 0xFF, 0xF0, 0x1F, 0xFF, 0x83, 0xE0, 0x7C, 0x38, - 0x01, 0xE7, 0x00, 0x0E, 0x70, 0x00, 0xE7, 0x00, 0x00, 0x70, 0x00, 0x07, - 0x80, 0x00, 0x3E, 0x00, 0x01, 0xFE, 0x00, 0x0F, 0xFE, 0x00, 0x3F, 0xF8, - 0x00, 0x3F, 0xE0, 0x00, 0x3E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0xE0, 0x00, - 0x7E, 0x00, 0x07, 0xF0, 0x00, 0x77, 0x80, 0x0E, 0x7C, 0x03, 0xE3, 0xFF, - 0xFC, 0x1F, 0xFF, 0x80, 0x3F, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x80, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, - 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, - 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, - 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x38, - 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0xE0, 0x00, 0xFC, 0x00, - 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, - 0x3F, 0x00, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, - 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, - 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x1E, 0xF0, 0x07, - 0x9F, 0x01, 0xF1, 0xFF, 0xFC, 0x1F, 0xFE, 0x00, 0x7F, 0x00, 0xE0, 0x00, - 0x7F, 0x80, 0x03, 0xFC, 0x00, 0x1C, 0xE0, 0x01, 0xE7, 0x80, 0x0F, 0x3C, - 0x00, 0x70, 0xE0, 0x07, 0x87, 0x80, 0x3C, 0x1C, 0x01, 0xC0, 0xE0, 0x0E, - 0x07, 0x80, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x83, 0x80, 0x1C, - 0x1C, 0x00, 0xE0, 0xE0, 0x07, 0x8E, 0x00, 0x1C, 0x70, 0x00, 0xE3, 0x80, - 0x07, 0xB8, 0x00, 0x1D, 0xC0, 0x00, 0xEE, 0x00, 0x07, 0xE0, 0x00, 0x1F, - 0x00, 0x00, 0xF8, 0x00, 0x03, 0x80, 0x00, 0x70, 0x03, 0xC0, 0x0F, 0x70, - 0x03, 0xC0, 0x0F, 0x78, 0x03, 0xE0, 0x0F, 0x78, 0x03, 0xE0, 0x0E, 0x38, - 0x07, 0xE0, 0x0E, 0x38, 0x07, 0xF0, 0x1E, 0x3C, 0x07, 0x70, 0x1E, 0x3C, - 0x07, 0x70, 0x1C, 0x1C, 0x0E, 0x70, 0x1C, 0x1C, 0x0E, 0x38, 0x3C, 0x1C, - 0x0E, 0x38, 0x3C, 0x1E, 0x1E, 0x38, 0x38, 0x0E, 0x1C, 0x38, 0x38, 0x0E, - 0x1C, 0x1C, 0x38, 0x0E, 0x1C, 0x1C, 0x78, 0x0F, 0x3C, 0x1C, 0x70, 0x07, - 0x38, 0x0E, 0x70, 0x07, 0x38, 0x0E, 0x70, 0x07, 0x38, 0x0E, 0x70, 0x07, - 0x70, 0x0E, 0xE0, 0x03, 0xF0, 0x07, 0xE0, 0x03, 0xF0, 0x07, 0xE0, 0x03, - 0xF0, 0x07, 0xE0, 0x03, 0xE0, 0x03, 0xC0, 0x01, 0xE0, 0x03, 0xC0, 0x01, - 0xE0, 0x03, 0xC0, 0xF0, 0x00, 0x7B, 0xC0, 0x07, 0x8F, 0x00, 0x38, 0x78, - 0x03, 0xC1, 0xE0, 0x3C, 0x07, 0x81, 0xC0, 0x3C, 0x1E, 0x00, 0xF1, 0xE0, - 0x03, 0x8E, 0x00, 0x1E, 0xF0, 0x00, 0x7F, 0x00, 0x01, 0xF0, 0x00, 0x0F, - 0x80, 0x00, 0x7C, 0x00, 0x07, 0xF0, 0x00, 0x3B, 0x80, 0x03, 0xDE, 0x00, - 0x3C, 0x78, 0x01, 0xC1, 0xC0, 0x1E, 0x0F, 0x01, 0xE0, 0x3C, 0x0E, 0x00, - 0xE0, 0xF0, 0x07, 0x8F, 0x00, 0x1E, 0x70, 0x00, 0xF7, 0x80, 0x03, 0xC0, - 0xF0, 0x00, 0x3C, 0xF0, 0x00, 0x78, 0xF0, 0x01, 0xE1, 0xE0, 0x03, 0x81, - 0xE0, 0x0F, 0x01, 0xC0, 0x1C, 0x03, 0xC0, 0x78, 0x03, 0xC1, 0xE0, 0x07, - 0x83, 0x80, 0x07, 0x8F, 0x00, 0x07, 0x1C, 0x00, 0x0F, 0x78, 0x00, 0x0E, - 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, - 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x70, 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0x80, 0x00, - 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, - 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x7C, 0x00, - 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xF8, 0xE3, 0x8E, 0x38, 0xE3, - 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, - 0x8E, 0x38, 0xE3, 0x8F, 0xFF, 0xFC, 0xC0, 0x30, 0x06, 0x01, 0x80, 0x60, - 0x0C, 0x03, 0x00, 0xC0, 0x18, 0x06, 0x01, 0x80, 0x20, 0x0C, 0x03, 0x00, - 0x40, 0x18, 0x06, 0x01, 0x80, 0x30, 0x0C, 0x03, 0x00, 0x60, 0x18, 0x06, - 0x00, 0xC0, 0x30, 0xFF, 0xFF, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, - 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, - 0x1C, 0x7F, 0xFF, 0xFC, 0x07, 0x00, 0x78, 0x03, 0xC0, 0x3F, 0x01, 0xD8, - 0x0C, 0xE0, 0xE3, 0x06, 0x1C, 0x70, 0xE3, 0x83, 0x18, 0x1D, 0xC0, 0x6C, - 0x03, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xF0, 0xF0, 0xE0, 0xE0, - 0xE0, 0x07, 0xF0, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0x03, 0xC7, 0x00, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0xFE, 0x0F, 0xFF, 0x1F, 0xF3, - 0x9F, 0x01, 0xCF, 0x00, 0xE7, 0x00, 0x73, 0x80, 0x79, 0xE0, 0xFC, 0x7F, - 0xEF, 0x9F, 0xE3, 0xC7, 0xE1, 0xE0, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE3, 0xE0, 0xEF, 0xF8, - 0xFF, 0xFC, 0xFC, 0x3E, 0xF8, 0x1E, 0xF0, 0x0E, 0xE0, 0x0F, 0xE0, 0x07, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xF0, 0x0E, - 0xF8, 0x1E, 0xFC, 0x3C, 0xEF, 0xFC, 0xEF, 0xF8, 0xE3, 0xE0, 0x07, 0xF0, - 0x1F, 0xF8, 0x3F, 0xFC, 0x3C, 0x1E, 0x78, 0x0E, 0x70, 0x07, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x07, - 0x70, 0x07, 0x78, 0x0E, 0x7C, 0x1E, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, - 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, - 0x1C, 0x00, 0x0E, 0x0F, 0xC7, 0x1F, 0xFB, 0x9F, 0xFF, 0xDF, 0x07, 0xEF, - 0x01, 0xF7, 0x00, 0x7F, 0x80, 0x3F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x03, - 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x77, 0x00, 0x7B, 0xC0, 0x7D, 0xF0, - 0x7E, 0x7F, 0xFB, 0x1F, 0xF9, 0x83, 0xF0, 0xC0, 0x07, 0xE0, 0x1F, 0xF8, - 0x3F, 0xFC, 0x7C, 0x1E, 0x70, 0x0E, 0x60, 0x06, 0xE0, 0x07, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0x70, 0x07, - 0x78, 0x0E, 0x3C, 0x1E, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, 0x0E, 0x3C, - 0xF9, 0xC3, 0x87, 0x0E, 0x7F, 0xFF, 0xFC, 0xE1, 0xC3, 0x87, 0x0E, 0x1C, - 0x38, 0x70, 0xE1, 0xC3, 0x87, 0x0E, 0x1C, 0x38, 0x70, 0x07, 0xC7, 0x1F, - 0xF7, 0x3F, 0xFF, 0x3C, 0x3F, 0x78, 0x0F, 0x70, 0x0F, 0xE0, 0x07, 0xE0, - 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0x70, - 0x0F, 0x78, 0x0F, 0x7C, 0x3F, 0x3F, 0xF7, 0x1F, 0xE7, 0x07, 0xC7, 0x00, - 0x07, 0x00, 0x07, 0x00, 0x0E, 0x70, 0x0E, 0x78, 0x1E, 0x3F, 0xFC, 0x1F, - 0xF8, 0x07, 0xE0, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, - 0x1C, 0x00, 0x38, 0x00, 0x71, 0xF8, 0xE7, 0xFD, 0xDF, 0xFB, 0xF0, 0xFF, - 0xC0, 0xFF, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, - 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, - 0xE0, 0x0F, 0xC0, 0x1C, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFC, 0x1C, 0x71, 0xC7, 0x00, 0x00, 0x07, 0x1C, 0x71, 0xC7, 0x1C, - 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, - 0x73, 0xFF, 0xFB, 0xC0, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x3C, 0xE0, 0x78, 0xE0, 0xF0, - 0xE1, 0xE0, 0xE3, 0xC0, 0xE7, 0x80, 0xEF, 0x00, 0xEF, 0x80, 0xFF, 0x80, - 0xFB, 0xC0, 0xF1, 0xE0, 0xE0, 0xE0, 0xE0, 0xF0, 0xE0, 0x70, 0xE0, 0x78, - 0xE0, 0x3C, 0xE0, 0x1C, 0xE0, 0x1E, 0xE0, 0x0E, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xE3, 0xE0, 0xF8, 0xE7, 0xF1, 0xFE, - 0xEF, 0xFB, 0xFE, 0xF8, 0x7F, 0x0F, 0xF0, 0x3E, 0x07, 0xF0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE3, 0xF1, 0xCF, 0xFB, 0xBF, 0xF7, 0xE1, 0xFF, 0x81, - 0xFE, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, - 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, - 0x1F, 0x80, 0x38, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, 0x87, 0x83, 0xC7, - 0x80, 0xF3, 0x80, 0x3B, 0x80, 0x1F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x01, - 0xF8, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0x3B, 0x80, 0x39, 0xE0, 0x3C, 0x78, - 0x3C, 0x3F, 0xFE, 0x0F, 0xFE, 0x01, 0xFC, 0x00, 0xE3, 0xE0, 0xE7, 0xF8, - 0xEF, 0xFC, 0xFC, 0x3E, 0xF8, 0x1E, 0xF0, 0x0E, 0xE0, 0x0F, 0xE0, 0x07, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xF0, 0x0E, - 0xF8, 0x1E, 0xFC, 0x3E, 0xFF, 0xFC, 0xEF, 0xF8, 0xE3, 0xE0, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0x07, 0xE1, - 0x8F, 0xFC, 0xCF, 0xFF, 0x67, 0x83, 0xF7, 0x80, 0xFB, 0x80, 0x3F, 0xC0, - 0x1F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x7E, - 0x00, 0x3B, 0x80, 0x3D, 0xE0, 0x3E, 0xF8, 0x3F, 0x3F, 0xFF, 0x8F, 0xFD, - 0xC1, 0xF8, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, - 0x07, 0x00, 0x03, 0x80, 0xE3, 0xF7, 0xFB, 0xFF, 0x8F, 0x07, 0x83, 0x81, - 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, - 0x38, 0x00, 0x0F, 0xC0, 0xFF, 0x87, 0xFF, 0x3C, 0x1E, 0xE0, 0x3B, 0x80, - 0x0E, 0x00, 0x3C, 0x00, 0x7F, 0x00, 0xFF, 0x80, 0xFF, 0x80, 0x7F, 0x00, - 0x3F, 0x80, 0x7E, 0x01, 0xFC, 0x1F, 0x7F, 0xF8, 0xFF, 0xC1, 0xFC, 0x00, - 0x38, 0x70, 0xE1, 0xCF, 0xFF, 0xFF, 0x9C, 0x38, 0x70, 0xE1, 0xC3, 0x87, - 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0xE7, 0xC7, 0x80, 0xE0, 0x0F, 0xC0, - 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, - 0xE0, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, 0xFC, 0x03, 0xFC, - 0x0F, 0xFC, 0x3F, 0x7F, 0xEE, 0xFF, 0x9C, 0x7E, 0x38, 0x70, 0x03, 0xB8, - 0x03, 0x9C, 0x01, 0xC7, 0x00, 0xE3, 0x80, 0xE1, 0xC0, 0x70, 0x70, 0x38, - 0x38, 0x38, 0x1C, 0x1C, 0x07, 0x0E, 0x03, 0x8E, 0x01, 0xC7, 0x00, 0x77, - 0x00, 0x3B, 0x80, 0x1D, 0xC0, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0x70, 0x00, 0xF0, 0x1C, 0x03, 0xB8, 0x1F, 0x03, 0xDC, 0x0F, 0x81, 0xCE, - 0x07, 0xC0, 0xE7, 0x83, 0xE0, 0x71, 0xC3, 0xB8, 0x70, 0xE1, 0xDC, 0x38, - 0x70, 0xEE, 0x1C, 0x1C, 0x63, 0x0E, 0x0E, 0x71, 0xCE, 0x07, 0x38, 0xE7, - 0x03, 0x9C, 0x73, 0x80, 0xEC, 0x19, 0x80, 0x7E, 0x0F, 0xC0, 0x3F, 0x07, - 0xE0, 0x0F, 0x83, 0xF0, 0x07, 0x80, 0xF0, 0x03, 0xC0, 0x78, 0x01, 0xE0, - 0x3C, 0x00, 0x70, 0x07, 0x38, 0x0E, 0x3C, 0x1C, 0x1C, 0x1C, 0x0E, 0x38, - 0x0F, 0x70, 0x07, 0x70, 0x03, 0xE0, 0x03, 0xC0, 0x01, 0xC0, 0x03, 0xE0, - 0x07, 0xE0, 0x07, 0x70, 0x0E, 0x78, 0x1E, 0x38, 0x1C, 0x1C, 0x38, 0x1E, - 0x78, 0x0E, 0x70, 0x07, 0x70, 0x07, 0x38, 0x03, 0x9C, 0x01, 0xC7, 0x01, - 0xC3, 0x80, 0xE1, 0xC0, 0x70, 0x70, 0x70, 0x38, 0x38, 0x1C, 0x3C, 0x07, - 0x1C, 0x03, 0x8E, 0x01, 0xCE, 0x00, 0x77, 0x00, 0x3B, 0x80, 0x1F, 0x80, - 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x38, - 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x0F, - 0x00, 0x00, 0x7F, 0xFC, 0xFF, 0xF9, 0xFF, 0xF0, 0x00, 0xE0, 0x03, 0x80, - 0x0E, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x1C, 0x00, 0x70, - 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF8, 0x07, 0x0F, 0x1F, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x38, 0xF8, 0xE0, 0xF8, 0x38, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1F, 0x0F, 0x07, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xE0, 0xF0, 0xF8, 0x38, - 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x1C, 0x1F, - 0x07, 0x1F, 0x1C, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, - 0x38, 0x38, 0xF8, 0xF0, 0xE0, 0x38, 0x00, 0xFC, 0x03, 0xFC, 0x1F, 0x3E, - 0x3C, 0x1F, 0xE0, 0x1F, 0x80, 0x1E, 0x00}; - -const GFXglyph FreeSans18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 3, 26, 12, 4, -25}, // 0x21 '!' - {10, 9, 9, 12, 1, -24}, // 0x22 '"' - {21, 19, 24, 19, 0, -23}, // 0x23 '#' - {78, 16, 30, 19, 2, -26}, // 0x24 '$' - {138, 29, 25, 31, 1, -24}, // 0x25 '%' - {229, 20, 25, 23, 2, -24}, // 0x26 '&' - {292, 3, 9, 7, 2, -24}, // 0x27 ''' - {296, 8, 33, 12, 3, -25}, // 0x28 '(' - {329, 8, 33, 12, 1, -25}, // 0x29 ')' - {362, 10, 10, 14, 2, -25}, // 0x2A '*' - {375, 16, 16, 20, 2, -15}, // 0x2B '+' - {407, 3, 9, 10, 3, -3}, // 0x2C ',' - {411, 8, 3, 12, 2, -10}, // 0x2D '-' - {414, 3, 4, 9, 3, -3}, // 0x2E '.' - {416, 10, 26, 10, 0, -25}, // 0x2F '/' - {449, 16, 25, 19, 2, -24}, // 0x30 '0' - {499, 8, 25, 19, 4, -24}, // 0x31 '1' - {524, 16, 25, 19, 2, -24}, // 0x32 '2' - {574, 17, 25, 19, 1, -24}, // 0x33 '3' - {628, 16, 25, 19, 1, -24}, // 0x34 '4' - {678, 17, 25, 19, 1, -24}, // 0x35 '5' - {732, 16, 25, 19, 2, -24}, // 0x36 '6' - {782, 16, 25, 19, 2, -24}, // 0x37 '7' - {832, 17, 25, 19, 1, -24}, // 0x38 '8' - {886, 16, 25, 19, 1, -24}, // 0x39 '9' - {936, 3, 19, 9, 3, -18}, // 0x3A ':' - {944, 3, 24, 9, 3, -18}, // 0x3B ';' - {953, 17, 17, 20, 2, -16}, // 0x3C '<' - {990, 17, 9, 20, 2, -12}, // 0x3D '=' - {1010, 17, 17, 20, 2, -16}, // 0x3E '>' - {1047, 15, 26, 19, 3, -25}, // 0x3F '?' - {1096, 32, 31, 36, 1, -25}, // 0x40 '@' - {1220, 22, 26, 23, 1, -25}, // 0x41 'A' - {1292, 19, 26, 23, 3, -25}, // 0x42 'B' - {1354, 22, 26, 25, 1, -25}, // 0x43 'C' - {1426, 20, 26, 24, 3, -25}, // 0x44 'D' - {1491, 18, 26, 22, 3, -25}, // 0x45 'E' - {1550, 17, 26, 21, 3, -25}, // 0x46 'F' - {1606, 24, 26, 27, 1, -25}, // 0x47 'G' - {1684, 19, 26, 25, 3, -25}, // 0x48 'H' - {1746, 3, 26, 10, 4, -25}, // 0x49 'I' - {1756, 14, 26, 18, 1, -25}, // 0x4A 'J' - {1802, 20, 26, 24, 3, -25}, // 0x4B 'K' - {1867, 15, 26, 20, 3, -25}, // 0x4C 'L' - {1916, 24, 26, 30, 3, -25}, // 0x4D 'M' - {1994, 20, 26, 26, 3, -25}, // 0x4E 'N' - {2059, 25, 26, 27, 1, -25}, // 0x4F 'O' - {2141, 18, 26, 23, 3, -25}, // 0x50 'P' - {2200, 25, 28, 27, 1, -25}, // 0x51 'Q' - {2288, 20, 26, 25, 3, -25}, // 0x52 'R' - {2353, 20, 26, 23, 1, -25}, // 0x53 'S' - {2418, 19, 26, 22, 1, -25}, // 0x54 'T' - {2480, 19, 26, 25, 3, -25}, // 0x55 'U' - {2542, 21, 26, 23, 1, -25}, // 0x56 'V' - {2611, 32, 26, 33, 0, -25}, // 0x57 'W' - {2715, 21, 26, 23, 1, -25}, // 0x58 'X' - {2784, 23, 26, 24, 0, -25}, // 0x59 'Y' - {2859, 19, 26, 22, 1, -25}, // 0x5A 'Z' - {2921, 6, 33, 10, 2, -25}, // 0x5B '[' - {2946, 10, 26, 10, 0, -25}, // 0x5C '\' - {2979, 6, 33, 10, 1, -25}, // 0x5D ']' - {3004, 13, 13, 16, 2, -24}, // 0x5E '^' - {3026, 21, 2, 19, -1, 5}, // 0x5F '_' - {3032, 7, 5, 9, 1, -25}, // 0x60 '`' - {3037, 17, 19, 19, 1, -18}, // 0x61 'a' - {3078, 16, 26, 20, 2, -25}, // 0x62 'b' - {3130, 16, 19, 18, 1, -18}, // 0x63 'c' - {3168, 17, 26, 20, 1, -25}, // 0x64 'd' - {3224, 16, 19, 19, 1, -18}, // 0x65 'e' - {3262, 7, 26, 10, 1, -25}, // 0x66 'f' - {3285, 16, 27, 19, 1, -18}, // 0x67 'g' - {3339, 15, 26, 19, 2, -25}, // 0x68 'h' - {3388, 3, 26, 8, 2, -25}, // 0x69 'i' - {3398, 6, 34, 9, 0, -25}, // 0x6A 'j' - {3424, 16, 26, 18, 2, -25}, // 0x6B 'k' - {3476, 3, 26, 7, 2, -25}, // 0x6C 'l' - {3486, 24, 19, 28, 2, -18}, // 0x6D 'm' - {3543, 15, 19, 19, 2, -18}, // 0x6E 'n' - {3579, 17, 19, 19, 1, -18}, // 0x6F 'o' - {3620, 16, 25, 20, 2, -18}, // 0x70 'p' - {3670, 17, 25, 20, 1, -18}, // 0x71 'q' - {3724, 9, 19, 12, 2, -18}, // 0x72 'r' - {3746, 14, 19, 17, 2, -18}, // 0x73 's' - {3780, 7, 23, 10, 1, -22}, // 0x74 't' - {3801, 15, 19, 19, 2, -18}, // 0x75 'u' - {3837, 17, 19, 17, 0, -18}, // 0x76 'v' - {3878, 25, 19, 25, 0, -18}, // 0x77 'w' - {3938, 16, 19, 17, 0, -18}, // 0x78 'x' - {3976, 17, 27, 17, 0, -18}, // 0x79 'y' - {4034, 15, 19, 17, 1, -18}, // 0x7A 'z' - {4070, 8, 33, 12, 1, -25}, // 0x7B '{' - {4103, 2, 33, 9, 3, -25}, // 0x7C '|' - {4112, 8, 33, 12, 3, -25}, // 0x7D '}' - {4145, 15, 7, 18, 1, -15}}; // 0x7E '~' - -const GFXfont FreeSans18pt7b PROGMEM = {(uint8_t *)FreeSans18pt7bBitmaps, - (GFXglyph *)FreeSans18pt7bGlyphs, 0x20, - 0x7E, 42}; - -// Approx. 4831 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans24pt7b.h deleted file mode 100644 index 3559530..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans24pt7b.h +++ /dev/null @@ -1,729 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans24pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x76, 0x66, - 0x66, 0x00, 0x0F, 0xFF, 0xFF, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1F, - 0xE3, 0xFC, 0x7F, 0x8F, 0xF1, 0xEC, 0x19, 0x83, 0x30, 0x60, 0x00, 0x70, - 0x3C, 0x00, 0x70, 0x3C, 0x00, 0xF0, 0x38, 0x00, 0xF0, 0x38, 0x00, 0xF0, - 0x78, 0x00, 0xE0, 0x78, 0x00, 0xE0, 0x78, 0x01, 0xE0, 0x70, 0x01, 0xE0, - 0x70, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x03, 0xC0, - 0xE0, 0x03, 0xC0, 0xE0, 0x03, 0xC0, 0xE0, 0x03, 0x81, 0xE0, 0x03, 0x81, - 0xE0, 0x03, 0x81, 0xE0, 0x07, 0x81, 0xC0, 0x07, 0x81, 0xC0, 0xFF, 0xFF, - 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0x0F, 0x03, 0x80, 0x0F, 0x03, - 0x80, 0x0F, 0x07, 0x80, 0x0E, 0x07, 0x80, 0x0E, 0x07, 0x80, 0x1E, 0x07, - 0x00, 0x1E, 0x07, 0x00, 0x1E, 0x07, 0x00, 0x1C, 0x0F, 0x00, 0x1C, 0x0F, - 0x00, 0x00, 0x38, 0x00, 0x01, 0xFC, 0x00, 0x1F, 0xFE, 0x00, 0x7F, 0xFE, - 0x01, 0xFF, 0xFE, 0x07, 0xE7, 0x3E, 0x0F, 0x8E, 0x3C, 0x3E, 0x1C, 0x3C, - 0x78, 0x38, 0x38, 0xF0, 0x70, 0x71, 0xE0, 0xE0, 0xE3, 0xC1, 0xC0, 0x07, - 0x83, 0x80, 0x0F, 0x87, 0x00, 0x0F, 0x8E, 0x00, 0x1F, 0xDC, 0x00, 0x1F, - 0xF8, 0x00, 0x1F, 0xFF, 0x00, 0x0F, 0xFF, 0x80, 0x07, 0xFF, 0x80, 0x03, - 0xFF, 0x80, 0x07, 0x1F, 0x80, 0x0E, 0x1F, 0x00, 0x1C, 0x1F, 0x00, 0x38, - 0x1F, 0xC0, 0x70, 0x3F, 0x80, 0xE0, 0x7F, 0x81, 0xC0, 0xFF, 0x03, 0x81, - 0xEF, 0x07, 0x07, 0x9F, 0x0E, 0x0F, 0x3E, 0x1C, 0x3E, 0x3F, 0x39, 0xF8, - 0x3F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x03, 0x80, 0x00, - 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, - 0x00, 0x00, 0x1C, 0x00, 0x0F, 0xC0, 0x00, 0x78, 0x00, 0x3F, 0xE0, 0x00, - 0xE0, 0x01, 0xFF, 0xE0, 0x03, 0x80, 0x03, 0xFF, 0xE0, 0x07, 0x00, 0x0F, - 0x87, 0xC0, 0x1C, 0x00, 0x3C, 0x03, 0xC0, 0x38, 0x00, 0x70, 0x03, 0x80, - 0xE0, 0x00, 0xE0, 0x07, 0x03, 0xC0, 0x01, 0xC0, 0x0E, 0x07, 0x00, 0x03, - 0x80, 0x1C, 0x1E, 0x00, 0x07, 0x80, 0x78, 0x38, 0x00, 0x07, 0xC3, 0xE0, - 0xF0, 0x00, 0x07, 0xFF, 0xC1, 0xC0, 0x00, 0x0F, 0xFF, 0x07, 0x80, 0x00, - 0x0F, 0xFC, 0x0E, 0x00, 0x00, 0x07, 0xE0, 0x38, 0x00, 0x00, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x3F, 0x00, 0x00, 0x03, 0x80, 0xFF, - 0x80, 0x00, 0x0E, 0x07, 0xFF, 0x80, 0x00, 0x3C, 0x0F, 0xFF, 0x80, 0x00, - 0x70, 0x3E, 0x1F, 0x00, 0x01, 0xE0, 0xF0, 0x0F, 0x00, 0x03, 0x81, 0xC0, - 0x0E, 0x00, 0x0F, 0x03, 0x80, 0x1C, 0x00, 0x1C, 0x07, 0x00, 0x38, 0x00, - 0x78, 0x0E, 0x00, 0x70, 0x00, 0xE0, 0x1E, 0x01, 0xE0, 0x03, 0x80, 0x1F, - 0x0F, 0x80, 0x07, 0x00, 0x1F, 0xFF, 0x00, 0x1C, 0x00, 0x3F, 0xFC, 0x00, - 0x38, 0x00, 0x1F, 0xF0, 0x00, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7E, 0x00, - 0x00, 0x1F, 0xF0, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x7F, 0xFC, 0x00, 0x07, - 0xC3, 0xC0, 0x00, 0xF8, 0x1E, 0x00, 0x0F, 0x00, 0xE0, 0x00, 0xF0, 0x0E, - 0x00, 0x0F, 0x00, 0xE0, 0x00, 0xF0, 0x0E, 0x00, 0x07, 0x81, 0xE0, 0x00, - 0x7C, 0x3C, 0x00, 0x03, 0xEF, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0xE0, 0x00, - 0x1F, 0x1E, 0x07, 0x83, 0xE0, 0xF0, 0x78, 0x7C, 0x0F, 0x8F, 0x87, 0x80, - 0x7C, 0xF0, 0xF0, 0x03, 0xFF, 0x0F, 0x00, 0x1F, 0xE0, 0xF0, 0x00, 0xFE, - 0x0F, 0x00, 0x0F, 0xC0, 0xF0, 0x00, 0x7E, 0x0F, 0x80, 0x0F, 0xF0, 0x7C, - 0x01, 0xFF, 0x07, 0xF0, 0x7D, 0xF8, 0x3F, 0xFF, 0x8F, 0xC1, 0xFF, 0xF0, - 0x7E, 0x0F, 0xFE, 0x03, 0xE0, 0x3F, 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF6, 0x66, 0x01, 0xC0, 0x70, 0x38, 0x1C, 0x07, 0x03, 0xC0, 0xE0, 0x78, - 0x1C, 0x07, 0x03, 0xC0, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x70, 0x3C, - 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, - 0xC0, 0x70, 0x1E, 0x07, 0x81, 0xE0, 0x38, 0x0F, 0x03, 0xC0, 0x70, 0x1E, - 0x03, 0x80, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x18, 0x07, 0xE0, 0x38, 0x07, - 0x01, 0xC0, 0x38, 0x0F, 0x01, 0xC0, 0x78, 0x0E, 0x03, 0x80, 0xF0, 0x1C, - 0x07, 0x01, 0xE0, 0x78, 0x1E, 0x03, 0x80, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, - 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x07, 0x81, 0xE0, 0x78, - 0x1E, 0x07, 0x03, 0xC0, 0xF0, 0x38, 0x1E, 0x07, 0x01, 0xC0, 0xE0, 0x38, - 0x1C, 0x06, 0x03, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x63, - 0x1B, 0xFF, 0xFF, 0xFF, 0xC3, 0xF0, 0x07, 0x80, 0x3F, 0x01, 0xCE, 0x07, - 0x3C, 0x38, 0x70, 0x21, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, - 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x0E, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0x00, 0x00, 0x0E, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, - 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0xFF, 0xFF, 0xF3, - 0x33, 0x36, 0xEC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF0, - 0x00, 0x38, 0x01, 0xC0, 0x0C, 0x00, 0xE0, 0x07, 0x00, 0x30, 0x03, 0x80, - 0x1C, 0x00, 0xC0, 0x06, 0x00, 0x70, 0x03, 0x80, 0x18, 0x01, 0xC0, 0x0E, - 0x00, 0x60, 0x03, 0x00, 0x38, 0x01, 0x80, 0x0C, 0x00, 0xE0, 0x07, 0x00, - 0x30, 0x03, 0x80, 0x1C, 0x00, 0xC0, 0x06, 0x00, 0x70, 0x03, 0x80, 0x18, - 0x01, 0xC0, 0x0E, 0x00, 0x60, 0x07, 0x00, 0x38, 0x00, 0x00, 0xFC, 0x00, - 0x0F, 0xFC, 0x00, 0xFF, 0xFC, 0x07, 0xFF, 0xF8, 0x1F, 0x87, 0xE0, 0xF8, - 0x07, 0xC3, 0xC0, 0x0F, 0x1F, 0x00, 0x3E, 0x78, 0x00, 0x79, 0xE0, 0x01, - 0xE7, 0x80, 0x07, 0xBC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, - 0xDE, 0x00, 0x1E, 0x78, 0x00, 0x79, 0xE0, 0x01, 0xE7, 0xC0, 0x0F, 0x8F, - 0x00, 0x3C, 0x3E, 0x01, 0xF0, 0x7C, 0x1F, 0x81, 0xFF, 0xFE, 0x03, 0xFF, - 0xF0, 0x03, 0xFF, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x60, 0x1C, 0x03, 0x80, - 0xF0, 0x3E, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x3C, 0x07, 0x80, 0xF0, - 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, - 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xFE, 0x01, 0xFF, - 0xFE, 0x0F, 0xFF, 0xFC, 0x3F, 0x03, 0xF9, 0xF0, 0x03, 0xE7, 0x80, 0x07, - 0xFE, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xC0, - 0x00, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, - 0x7C, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x80, 0x07, 0xF8, 0x00, 0x3F, 0xC0, - 0x03, 0xFC, 0x00, 0x1F, 0xC0, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x3E, - 0x00, 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, - 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, - 0x00, 0xFE, 0x00, 0x0F, 0xFF, 0x80, 0x3F, 0xFF, 0x80, 0xFF, 0xFF, 0x83, - 0xF0, 0x1F, 0x87, 0xC0, 0x1F, 0x1F, 0x00, 0x1F, 0x3C, 0x00, 0x1E, 0x78, - 0x00, 0x3C, 0xF0, 0x00, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0x80, 0x00, 0x7F, 0x00, 0x1F, 0xFC, 0x00, 0x3F, 0xE0, 0x00, 0x7F, - 0xE0, 0x00, 0xFF, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x03, - 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0xF0, 0x00, 0x1F, - 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0xFB, 0xC0, 0x01, 0xE7, 0xC0, 0x07, 0xC7, - 0xE0, 0x3F, 0x0F, 0xFF, 0xFE, 0x0F, 0xFF, 0xF8, 0x07, 0xFF, 0xC0, 0x03, - 0xFC, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x1F, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x3F, - 0xE0, 0x00, 0x7B, 0xC0, 0x01, 0xE7, 0x80, 0x07, 0x8F, 0x00, 0x0F, 0x1E, - 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0x78, 0x03, 0xC0, 0xF0, 0x07, 0x81, 0xE0, - 0x1E, 0x03, 0xC0, 0x78, 0x07, 0x81, 0xE0, 0x0F, 0x03, 0xC0, 0x1E, 0x0F, - 0x00, 0x3C, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x1F, 0xFF, 0xF0, 0x7F, 0xFF, 0xC1, 0xFF, 0xFF, 0x07, 0xFF, 0xFC, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x1F, 0x3F, 0x80, 0x7B, 0xFF, - 0x81, 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x1F, 0x80, 0xFC, 0x78, 0x01, 0xF8, - 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x80, 0x07, 0x9E, 0x00, 0x1E, 0x7C, 0x00, 0xF1, 0xFC, 0x0F, 0xC3, - 0xFF, 0xFE, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0x80, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x0F, 0xFE, 0x00, 0x7F, 0xFC, 0x03, 0xFF, 0xF8, 0x1F, 0x83, - 0xF0, 0xF8, 0x07, 0xC3, 0xC0, 0x0F, 0x8F, 0x00, 0x1E, 0x78, 0x00, 0x79, - 0xE0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0xFE, 0x03, 0xCF, - 0xFE, 0x0F, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0xFF, 0x03, 0xF3, 0xF0, 0x03, - 0xEF, 0x80, 0x07, 0xBE, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0x70, 0x00, 0x3D, 0xC0, 0x00, 0xF7, 0x80, - 0x07, 0x9F, 0x00, 0x3E, 0x3E, 0x00, 0xF8, 0xFC, 0x0F, 0xC1, 0xFF, 0xFE, - 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x07, 0xF8, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x07, 0x00, 0x00, - 0x78, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, - 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, - 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, - 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, - 0x01, 0xFE, 0x00, 0x1F, 0xFE, 0x00, 0xFF, 0xFC, 0x07, 0xFF, 0xF8, 0x3F, - 0x03, 0xF1, 0xF0, 0x03, 0xC7, 0xC0, 0x0F, 0x9E, 0x00, 0x1E, 0x78, 0x00, - 0x79, 0xE0, 0x01, 0xE7, 0x80, 0x0F, 0x8F, 0x00, 0x3C, 0x3F, 0x03, 0xF0, - 0x7F, 0xFF, 0x80, 0x7F, 0xF8, 0x03, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0xFC, - 0x0F, 0xC7, 0xC0, 0x0F, 0x9E, 0x00, 0x1E, 0xF8, 0x00, 0x7F, 0xC0, 0x00, - 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x80, 0x07, 0xDE, 0x00, 0x1E, 0x7C, 0x00, 0xF8, 0xFC, 0x0F, 0xC3, 0xFF, - 0xFF, 0x07, 0xFF, 0xF8, 0x07, 0xFF, 0x80, 0x07, 0xF8, 0x00, 0x01, 0xFC, - 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x83, 0xF0, 0x7E, 0x3E, - 0x00, 0xF1, 0xE0, 0x07, 0xCF, 0x00, 0x1E, 0xF0, 0x00, 0x77, 0x80, 0x03, - 0xBC, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xF8, 0x00, 0x3F, 0xE0, - 0x03, 0xEF, 0x00, 0x1F, 0x7C, 0x01, 0xF9, 0xF8, 0x3F, 0xCF, 0xFF, 0xFE, - 0x3F, 0xFE, 0xF0, 0xFF, 0xE7, 0x80, 0xFC, 0x3C, 0x00, 0x01, 0xE0, 0x00, - 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x9E, 0x00, 0x3C, 0xF0, 0x03, 0xC7, - 0xC0, 0x3E, 0x1F, 0x03, 0xE0, 0xFF, 0xFE, 0x03, 0xFF, 0xE0, 0x0F, 0xFE, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xF3, 0x33, 0x36, 0xEC, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0xC0, - 0x03, 0xFC, 0x00, 0x3F, 0xE0, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, - 0x80, 0x03, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xF0, - 0x00, 0x07, 0xFC, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, - 0xC0, 0x00, 0x3F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xC0, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0x80, 0x00, 0x01, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x3F, 0xC0, 0x00, 0x1F, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xF8, 0x00, - 0x01, 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0xC0, 0x03, 0xFC, 0x00, 0x1F, - 0xE0, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x07, 0xFC, 0x00, - 0x0F, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0xFF, 0xF0, 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x7E, 0x0F, 0xE7, 0x80, - 0x3E, 0x78, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x00, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, - 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xC0, - 0x00, 0x00, 0x3F, 0xFF, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x00, - 0x07, 0xFC, 0x03, 0xFF, 0x00, 0x01, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x7E, - 0x00, 0x00, 0x7F, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xF0, 0x07, 0xC0, 0x00, - 0x00, 0x3F, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xF0, 0x3C, 0x00, 0x7E, 0x00, - 0x3E, 0x0F, 0x00, 0x3F, 0xE3, 0xC3, 0xE3, 0xE0, 0x1F, 0xFE, 0x78, 0x3C, - 0x78, 0x07, 0xE1, 0xFF, 0x07, 0xDF, 0x01, 0xF0, 0x1F, 0xC0, 0xFB, 0xC0, - 0x7C, 0x01, 0xF8, 0x0F, 0x78, 0x0F, 0x00, 0x3F, 0x01, 0xEF, 0x03, 0xC0, - 0x07, 0xC0, 0x3F, 0xC0, 0x78, 0x00, 0xF8, 0x07, 0xF8, 0x0F, 0x00, 0x1F, - 0x00, 0xFF, 0x03, 0xC0, 0x03, 0xC0, 0x1F, 0xE0, 0x78, 0x00, 0x78, 0x07, - 0xFC, 0x0F, 0x00, 0x1F, 0x00, 0xF7, 0x81, 0xE0, 0x03, 0xC0, 0x1E, 0xF0, - 0x3C, 0x00, 0x78, 0x07, 0x9E, 0x07, 0x80, 0x1F, 0x01, 0xF3, 0xE0, 0xF8, - 0x07, 0xC0, 0x3C, 0x3C, 0x0F, 0x81, 0xF8, 0x0F, 0x87, 0x81, 0xF8, 0x7F, - 0x87, 0xE0, 0xF8, 0x1F, 0xFE, 0xFF, 0xF8, 0x0F, 0x01, 0xFF, 0x1F, 0xFC, - 0x01, 0xF0, 0x0F, 0x80, 0xFE, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x03, - 0xF0, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x03, 0xFE, 0x00, - 0x7C, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x80, 0x00, 0x01, 0xFF, 0xFF, 0xF8, - 0x00, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, - 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0xF7, 0xC0, 0x00, 0x03, - 0xDF, 0x00, 0x00, 0x1F, 0x3C, 0x00, 0x00, 0x78, 0xF8, 0x00, 0x01, 0xE3, - 0xE0, 0x00, 0x0F, 0x87, 0x80, 0x00, 0x3C, 0x1F, 0x00, 0x01, 0xF0, 0x7C, - 0x00, 0x07, 0x80, 0xF0, 0x00, 0x1E, 0x03, 0xE0, 0x00, 0xF8, 0x0F, 0x80, - 0x03, 0xC0, 0x1E, 0x00, 0x0F, 0x00, 0x7C, 0x00, 0x7C, 0x01, 0xF0, 0x01, - 0xE0, 0x03, 0xC0, 0x07, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xFE, 0x00, 0xFF, - 0xFF, 0xFC, 0x07, 0xFF, 0xFF, 0xF0, 0x1F, 0x00, 0x07, 0xC0, 0x78, 0x00, - 0x0F, 0x83, 0xE0, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0xF8, 0x3C, 0x00, 0x01, - 0xF1, 0xF0, 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x1F, 0x1E, 0x00, 0x00, 0x3E, - 0xF8, 0x00, 0x00, 0xFB, 0xE0, 0x00, 0x01, 0xE0, 0xFF, 0xFF, 0x80, 0x7F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0x0F, 0x00, 0x0F, 0xC7, - 0x80, 0x01, 0xE3, 0xC0, 0x00, 0xF9, 0xE0, 0x00, 0x3C, 0xF0, 0x00, 0x1E, - 0x78, 0x00, 0x0F, 0x3C, 0x00, 0x07, 0x9E, 0x00, 0x07, 0x8F, 0x00, 0x03, - 0xC7, 0x80, 0x07, 0xC3, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, - 0xF8, 0x7F, 0xFF, 0xFE, 0x3C, 0x00, 0x0F, 0x9E, 0x00, 0x03, 0xEF, 0x00, - 0x00, 0xF7, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, - 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x01, 0xFF, - 0x00, 0x01, 0xF7, 0x80, 0x01, 0xFB, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xF8, - 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x07, - 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0xFE, 0x01, - 0xF8, 0x07, 0xC0, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x3C, - 0x3C, 0x00, 0x01, 0xE3, 0xE0, 0x00, 0x07, 0x9E, 0x00, 0x00, 0x3C, 0xF0, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x03, 0xC0, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x0F, 0x78, 0x00, - 0x00, 0x7B, 0xC0, 0x00, 0x07, 0xDF, 0x00, 0x00, 0x3C, 0x78, 0x00, 0x01, - 0xE3, 0xE0, 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF0, 0x3E, 0x00, 0x1F, 0x81, - 0xFE, 0x03, 0xF8, 0x07, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, 0xF8, 0x00, 0x3F, - 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xFF, 0x80, 0x1F, 0xFF, 0xFE, - 0x03, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFE, 0x0F, 0x00, 0x0F, 0xE1, 0xE0, - 0x00, 0x7E, 0x3C, 0x00, 0x07, 0xE7, 0x80, 0x00, 0x7C, 0xF0, 0x00, 0x07, - 0xDE, 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x0F, 0x78, 0x00, 0x01, 0xEF, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x0F, - 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x07, 0xF8, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xF7, - 0x80, 0x00, 0x1E, 0xF0, 0x00, 0x03, 0xDE, 0x00, 0x00, 0xFB, 0xC0, 0x00, - 0x3E, 0x78, 0x00, 0x0F, 0xCF, 0x00, 0x03, 0xF1, 0xE0, 0x01, 0xFC, 0x3F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, - 0x00, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, - 0xFE, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xFF, 0xFF, - 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x3F, 0xFF, 0xFC, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0xFE, - 0x00, 0x07, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x7F, 0x80, 0x7F, - 0x01, 0xF8, 0x00, 0x3F, 0x07, 0xE0, 0x00, 0x1F, 0x0F, 0x80, 0x00, 0x1E, - 0x3E, 0x00, 0x00, 0x3E, 0x78, 0x00, 0x00, 0x3D, 0xF0, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0xFF, 0x80, 0x03, 0xFF, 0xFF, 0x00, - 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x07, 0xBC, 0x00, - 0x00, 0x0F, 0x78, 0x00, 0x00, 0x1E, 0xF8, 0x00, 0x00, 0x7D, 0xF0, 0x00, - 0x00, 0xF9, 0xF0, 0x00, 0x03, 0xF3, 0xF0, 0x00, 0x07, 0xE3, 0xF0, 0x00, - 0x1F, 0xC3, 0xF0, 0x00, 0xFF, 0x83, 0xFC, 0x07, 0xEF, 0x03, 0xFF, 0xFF, - 0x9E, 0x03, 0xFF, 0xFE, 0x1C, 0x01, 0xFF, 0xF0, 0x38, 0x00, 0x7F, 0x80, - 0x00, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0xE0, - 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, - 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x00, - 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, - 0x03, 0xC0, 0x00, 0x7F, 0x80, 0x0F, 0xF0, 0x01, 0xFE, 0x00, 0x3F, 0xC0, - 0x07, 0xF8, 0x01, 0xFF, 0x80, 0x3E, 0xF0, 0x0F, 0x9F, 0x83, 0xF1, 0xFF, - 0xFC, 0x3F, 0xFF, 0x01, 0xFF, 0xC0, 0x0F, 0xE0, 0x00, 0xF0, 0x00, 0x07, - 0xDE, 0x00, 0x01, 0xF3, 0xC0, 0x00, 0x7C, 0x78, 0x00, 0x1F, 0x0F, 0x00, - 0x07, 0xC1, 0xE0, 0x01, 0xF0, 0x3C, 0x00, 0x7C, 0x07, 0x80, 0x1F, 0x00, - 0xF0, 0x07, 0xC0, 0x1E, 0x01, 0xF0, 0x03, 0xC0, 0x7C, 0x00, 0x78, 0x1F, - 0x00, 0x0F, 0x07, 0xC0, 0x01, 0xE1, 0xF0, 0x00, 0x3C, 0x7E, 0x00, 0x07, - 0x9F, 0xE0, 0x00, 0xF7, 0xFE, 0x00, 0x1F, 0xF7, 0xC0, 0x03, 0xFC, 0x7C, - 0x00, 0x7F, 0x07, 0xC0, 0x0F, 0xC0, 0xF8, 0x01, 0xF0, 0x0F, 0x80, 0x3C, - 0x00, 0xF8, 0x07, 0x80, 0x1F, 0x80, 0xF0, 0x01, 0xF0, 0x1E, 0x00, 0x1F, - 0x03, 0xC0, 0x03, 0xF0, 0x78, 0x00, 0x3E, 0x0F, 0x00, 0x03, 0xE1, 0xE0, - 0x00, 0x3E, 0x3C, 0x00, 0x07, 0xC7, 0x80, 0x00, 0x7C, 0xF0, 0x00, 0x07, - 0xDE, 0x00, 0x00, 0xFC, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFC, 0x00, - 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x7F, 0xFE, 0x00, - 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, - 0x00, 0xFF, 0xF7, 0x00, 0x00, 0xEF, 0xF7, 0x80, 0x01, 0xEF, 0xF7, 0x80, - 0x01, 0xEF, 0xF3, 0xC0, 0x01, 0xCF, 0xF3, 0xC0, 0x03, 0xCF, 0xF3, 0xC0, - 0x03, 0xCF, 0xF1, 0xE0, 0x03, 0x8F, 0xF1, 0xE0, 0x07, 0x8F, 0xF1, 0xE0, - 0x07, 0x8F, 0xF0, 0xF0, 0x0F, 0x0F, 0xF0, 0xF0, 0x0F, 0x0F, 0xF0, 0xF0, - 0x0F, 0x0F, 0xF0, 0x78, 0x1E, 0x0F, 0xF0, 0x78, 0x1E, 0x0F, 0xF0, 0x78, - 0x1E, 0x0F, 0xF0, 0x3C, 0x3C, 0x0F, 0xF0, 0x3C, 0x3C, 0x0F, 0xF0, 0x3C, - 0x3C, 0x0F, 0xF0, 0x1E, 0x78, 0x0F, 0xF0, 0x1E, 0x78, 0x0F, 0xF0, 0x0E, - 0x78, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x07, - 0xF0, 0x0F, 0xF0, 0x07, 0xE0, 0x0F, 0xF0, 0x07, 0xE0, 0x0F, 0xF0, 0x03, - 0xE0, 0x0F, 0xF8, 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x3F, - 0xF8, 0x00, 0x0F, 0xFE, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0xFF, 0xF8, 0x00, - 0x3F, 0xDE, 0x00, 0x0F, 0xF7, 0xC0, 0x03, 0xFC, 0xF8, 0x00, 0xFF, 0x1E, - 0x00, 0x3F, 0xC7, 0xC0, 0x0F, 0xF0, 0xF0, 0x03, 0xFC, 0x3E, 0x00, 0xFF, - 0x07, 0xC0, 0x3F, 0xC0, 0xF0, 0x0F, 0xF0, 0x3E, 0x03, 0xFC, 0x07, 0xC0, - 0xFF, 0x00, 0xF0, 0x3F, 0xC0, 0x3E, 0x0F, 0xF0, 0x07, 0x83, 0xFC, 0x01, - 0xF0, 0xFF, 0x00, 0x3E, 0x3F, 0xC0, 0x07, 0x8F, 0xF0, 0x01, 0xF3, 0xFC, - 0x00, 0x3E, 0xFF, 0x00, 0x07, 0xBF, 0xC0, 0x01, 0xFF, 0xF0, 0x00, 0x3F, - 0xFC, 0x00, 0x0F, 0xFF, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x00, - 0x0F, 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, - 0x80, 0x00, 0x7F, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0x80, - 0xFF, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x7E, 0x00, 0x03, 0xF0, 0x3E, 0x00, - 0x00, 0xF8, 0x3E, 0x00, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0x0F, 0x1F, 0x00, - 0x00, 0x07, 0xCF, 0x00, 0x00, 0x01, 0xE7, 0x80, 0x00, 0x00, 0xF7, 0xC0, - 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x00, 0x3E, 0xF0, 0x00, 0x00, 0x1E, 0x78, 0x00, 0x00, 0x0F, - 0x3E, 0x00, 0x00, 0x0F, 0x8F, 0x00, 0x00, 0x07, 0x87, 0xC0, 0x00, 0x07, - 0xC1, 0xF0, 0x00, 0x07, 0xC0, 0xFC, 0x00, 0x07, 0xE0, 0x3F, 0x00, 0x07, - 0xE0, 0x0F, 0xF0, 0x1F, 0xE0, 0x03, 0xFF, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFC, 0xF0, 0x00, - 0xFE, 0xF0, 0x00, 0x3E, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, - 0x0F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, - 0x0F, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x3E, 0xF0, 0x00, 0xFE, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xC0, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x80, - 0x00, 0x7F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0x80, 0xFF, - 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x7E, 0x00, 0x03, 0xF0, 0x3E, 0x00, 0x00, - 0xF8, 0x3E, 0x00, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0x0F, 0x1F, 0x00, 0x00, - 0x07, 0xCF, 0x00, 0x00, 0x01, 0xE7, 0x80, 0x00, 0x00, 0xF7, 0xC0, 0x00, - 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x0F, 0xF0, 0x00, - 0x00, 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xFE, 0x00, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x00, 0x3E, 0xF0, 0x00, 0x00, 0x1E, 0x78, 0x00, 0x00, 0x0F, 0x3E, - 0x00, 0x00, 0x0F, 0x8F, 0x00, 0x03, 0x87, 0x87, 0xC0, 0x03, 0xE7, 0xC1, - 0xF0, 0x00, 0xFF, 0xC0, 0xFC, 0x00, 0x3F, 0xE0, 0x3F, 0x00, 0x0F, 0xE0, - 0x0F, 0xF0, 0x1F, 0xF0, 0x03, 0xFF, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0xFF, - 0x00, 0x1F, 0xFF, 0xC7, 0xC0, 0x01, 0xFF, 0x01, 0xE0, 0x00, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x00, 0x10, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xF8, 0xF0, 0x00, 0x3F, 0x3C, 0x00, 0x07, - 0xCF, 0x00, 0x00, 0xFB, 0xC0, 0x00, 0x1E, 0xF0, 0x00, 0x07, 0xBC, 0x00, - 0x01, 0xEF, 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x1E, 0xF0, 0x00, 0x07, 0xBC, - 0x00, 0x03, 0xCF, 0x00, 0x01, 0xF3, 0xC0, 0x00, 0xF8, 0xFF, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xF8, 0xF0, 0x00, - 0x3F, 0x3C, 0x00, 0x03, 0xCF, 0x00, 0x00, 0xFB, 0xC0, 0x00, 0x1E, 0xF0, - 0x00, 0x07, 0xBC, 0x00, 0x01, 0xEF, 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x1E, - 0xF0, 0x00, 0x07, 0xBC, 0x00, 0x01, 0xEF, 0x00, 0x00, 0x7B, 0xC0, 0x00, - 0x1E, 0xF0, 0x00, 0x07, 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x7F, 0xC0, 0x00, - 0x7F, 0xFF, 0x00, 0x1F, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x81, 0xF8, 0x07, - 0xF0, 0x7C, 0x00, 0x1F, 0x0F, 0x00, 0x01, 0xE3, 0xE0, 0x00, 0x3E, 0x78, - 0x00, 0x03, 0xCF, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x07, 0xC0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFF, - 0xE0, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x7F, 0xFF, 0x00, 0x01, 0xFF, 0xF8, - 0x00, 0x03, 0xFF, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x07, 0xF8, 0x00, 0x00, 0xF7, 0x80, 0x00, 0x3E, 0xF8, 0x00, - 0x07, 0x9F, 0x80, 0x01, 0xF1, 0xFE, 0x01, 0xFC, 0x1F, 0xFF, 0xFF, 0x01, - 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, - 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, - 0x00, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x7D, 0xE0, 0x00, 0x1E, 0x7C, 0x00, 0x0F, 0x9F, - 0x80, 0x07, 0xE3, 0xF8, 0x07, 0xF0, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFC, - 0x00, 0xFF, 0xFC, 0x00, 0x0F, 0xF8, 0x00, 0xF8, 0x00, 0x00, 0xF7, 0xC0, - 0x00, 0x0F, 0x9E, 0x00, 0x00, 0x7C, 0xF8, 0x00, 0x03, 0xC7, 0xC0, 0x00, - 0x3E, 0x1E, 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x0F, 0x07, 0xC0, 0x00, 0xF8, - 0x1E, 0x00, 0x07, 0xC0, 0xF8, 0x00, 0x3C, 0x07, 0xC0, 0x03, 0xE0, 0x1E, - 0x00, 0x1F, 0x00, 0xF8, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x80, 0x1E, 0x00, - 0x7C, 0x00, 0xF8, 0x03, 0xC0, 0x03, 0xC0, 0x1E, 0x00, 0x1F, 0x01, 0xF0, - 0x00, 0xF8, 0x0F, 0x00, 0x03, 0xC0, 0x78, 0x00, 0x1F, 0x07, 0x80, 0x00, - 0xF8, 0x3C, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x1F, 0x1E, 0x00, 0x00, 0x78, - 0xF0, 0x00, 0x03, 0xC7, 0x80, 0x00, 0x1F, 0x78, 0x00, 0x00, 0x7B, 0xC0, - 0x00, 0x03, 0xDE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, - 0x00, 0x3F, 0x00, 0x07, 0xFE, 0x00, 0x0F, 0xC0, 0x01, 0xFF, 0x80, 0x03, - 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xFC, 0x00, 0x1E, 0x7C, 0x00, 0x7F, 0x80, - 0x0F, 0x9F, 0x00, 0x1F, 0xE0, 0x03, 0xE7, 0xC0, 0x07, 0xF8, 0x00, 0xF8, - 0xF0, 0x01, 0xFF, 0x00, 0x3C, 0x3E, 0x00, 0xF3, 0xC0, 0x1F, 0x0F, 0x80, - 0x3C, 0xF0, 0x07, 0xC3, 0xE0, 0x0F, 0x3C, 0x01, 0xF0, 0x78, 0x07, 0xC7, - 0x80, 0x78, 0x1F, 0x01, 0xE1, 0xE0, 0x1E, 0x07, 0xC0, 0x78, 0x78, 0x0F, - 0x80, 0xF0, 0x1E, 0x1E, 0x03, 0xE0, 0x3C, 0x0F, 0x83, 0xC0, 0xF0, 0x0F, - 0x83, 0xC0, 0xF0, 0x3C, 0x03, 0xE0, 0xF0, 0x3C, 0x1F, 0x00, 0x78, 0x3C, - 0x0F, 0x87, 0xC0, 0x1E, 0x1E, 0x01, 0xE1, 0xE0, 0x07, 0x87, 0x80, 0x78, - 0x78, 0x01, 0xF1, 0xE0, 0x1E, 0x1E, 0x00, 0x3C, 0xF8, 0x03, 0xCF, 0x80, - 0x0F, 0x3C, 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x3C, 0xF0, 0x00, 0xFB, - 0xC0, 0x0F, 0xBC, 0x00, 0x1F, 0xF0, 0x01, 0xFF, 0x00, 0x07, 0xF8, 0x00, - 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x03, 0xF8, - 0x00, 0x0F, 0xC0, 0x00, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x00, - 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x01, 0xF3, 0xF0, 0x00, 0x1F, 0x8F, 0x80, 0x00, 0xF8, 0x3E, 0x00, 0x0F, - 0x80, 0xF8, 0x00, 0xF8, 0x07, 0xC0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x00, - 0x7C, 0x07, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x3E, - 0x3E, 0x00, 0x01, 0xF1, 0xF0, 0x00, 0x07, 0xDF, 0x00, 0x00, 0x1F, 0xF0, - 0x00, 0x00, 0xFF, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x07, - 0xDF, 0x00, 0x00, 0x7C, 0x78, 0x00, 0x03, 0xE3, 0xE0, 0x00, 0x3E, 0x0F, - 0x80, 0x03, 0xE0, 0x3E, 0x00, 0x1F, 0x01, 0xF0, 0x01, 0xF0, 0x07, 0xC0, - 0x1F, 0x00, 0x3F, 0x00, 0xF8, 0x00, 0xF8, 0x0F, 0x80, 0x03, 0xE0, 0xF8, - 0x00, 0x1F, 0x8F, 0xC0, 0x00, 0x7C, 0x7C, 0x00, 0x01, 0xF7, 0xC0, 0x00, - 0x0F, 0xC0, 0xFC, 0x00, 0x00, 0xFD, 0xF0, 0x00, 0x03, 0xE7, 0xE0, 0x00, - 0x1F, 0x0F, 0x80, 0x00, 0x7C, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x1F, - 0x00, 0xF8, 0x00, 0x7C, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, - 0x0F, 0x80, 0x7C, 0x00, 0x1E, 0x01, 0xE0, 0x00, 0x7C, 0x0F, 0x80, 0x00, - 0xF8, 0x7C, 0x00, 0x03, 0xE1, 0xE0, 0x00, 0x07, 0xCF, 0x80, 0x00, 0x0F, - 0x3C, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0xFC, - 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3F, 0xFF, - 0xFF, 0xC7, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0xE0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xF8, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xF0, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xFF, - 0xFF, 0xE0, 0x07, 0x00, 0x18, 0x00, 0xE0, 0x07, 0x00, 0x18, 0x00, 0xE0, - 0x07, 0x00, 0x18, 0x00, 0xC0, 0x07, 0x00, 0x38, 0x00, 0xC0, 0x07, 0x00, - 0x38, 0x00, 0xC0, 0x06, 0x00, 0x38, 0x00, 0xC0, 0x06, 0x00, 0x38, 0x01, - 0xC0, 0x06, 0x00, 0x38, 0x01, 0xC0, 0x06, 0x00, 0x30, 0x01, 0xC0, 0x0E, - 0x00, 0x30, 0x01, 0xC0, 0x0E, 0x00, 0x30, 0x01, 0xC0, 0x0E, 0xFF, 0xFF, - 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x3F, - 0x00, 0x0F, 0xC0, 0x07, 0xF8, 0x01, 0xCE, 0x00, 0x73, 0x80, 0x3C, 0x70, - 0x0E, 0x1C, 0x07, 0x87, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x38, 0x07, 0x0E, - 0x01, 0xC7, 0x80, 0x79, 0xC0, 0x0E, 0x70, 0x03, 0xB8, 0x00, 0x70, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x0F, 0x01, 0xE0, 0x3C, 0x07, - 0x00, 0xE0, 0x1C, 0x01, 0xFF, 0x00, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xE0, - 0x3F, 0xFF, 0xF0, 0x7E, 0x03, 0xF8, 0x7C, 0x00, 0xF8, 0x78, 0x00, 0x78, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF8, - 0x00, 0x03, 0xF8, 0x00, 0xFF, 0xF8, 0x0F, 0xFF, 0xF8, 0x3F, 0xFE, 0x78, - 0x7F, 0x80, 0x78, 0xFC, 0x00, 0x78, 0xF8, 0x00, 0x78, 0xF0, 0x00, 0x78, - 0xF0, 0x00, 0xF8, 0xF0, 0x00, 0xF8, 0xF8, 0x03, 0xF8, 0x7E, 0x0F, 0xF8, - 0x7F, 0xFF, 0x7F, 0x3F, 0xFE, 0x3F, 0x1F, 0xFC, 0x3F, 0x07, 0xE0, 0x1F, - 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, - 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x7E, - 0x03, 0xC7, 0xFE, 0x0F, 0x7F, 0xFC, 0x3D, 0xFF, 0xF8, 0xFF, 0x07, 0xF3, - 0xF8, 0x07, 0xCF, 0xC0, 0x0F, 0xBE, 0x00, 0x1E, 0xF8, 0x00, 0x7B, 0xE0, - 0x01, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x01, 0xFF, - 0x80, 0x07, 0xBE, 0x00, 0x1E, 0xFC, 0x00, 0xFB, 0xF8, 0x07, 0xCF, 0xF0, - 0x7F, 0x3B, 0xFF, 0xF8, 0xE7, 0xFF, 0xC3, 0x8F, 0xFE, 0x00, 0x0F, 0xE0, - 0x00, 0x00, 0xFE, 0x00, 0x3F, 0xFC, 0x03, 0xFF, 0xF0, 0x3F, 0xFF, 0xC3, - 0xF0, 0x3F, 0x1F, 0x00, 0xF9, 0xF0, 0x03, 0xCF, 0x00, 0x0F, 0x78, 0x00, - 0x07, 0xC0, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, - 0x1E, 0x00, 0x1E, 0xF0, 0x00, 0xF7, 0xC0, 0x0F, 0x9F, 0x00, 0xF8, 0xFC, - 0x0F, 0xC3, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, 0x3F, 0xFC, 0x00, 0x7F, 0x00, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF0, - 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x01, - 0xFC, 0x1E, 0x0F, 0xFE, 0x3C, 0x3F, 0xFF, 0x78, 0xFF, 0xFF, 0xF3, 0xF8, - 0x3F, 0xE7, 0xC0, 0x1F, 0xDF, 0x00, 0x1F, 0xBE, 0x00, 0x1F, 0x78, 0x00, - 0x3F, 0xF0, 0x00, 0x7F, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, - 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x1F, - 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xFB, 0xC0, 0x01, 0xF7, 0xC0, 0x07, 0xE7, - 0xC0, 0x1F, 0xCF, 0xE0, 0xFF, 0x8F, 0xFF, 0xF7, 0x0F, 0xFF, 0xCE, 0x0F, - 0xFF, 0x1C, 0x07, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x0F, 0xFE, 0x00, 0xFF, - 0xFC, 0x07, 0xFF, 0xF8, 0x1F, 0x83, 0xF0, 0xF8, 0x07, 0xC7, 0xC0, 0x0F, - 0x9E, 0x00, 0x1E, 0x78, 0x00, 0x7B, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xFC, - 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x1E, - 0x7C, 0x00, 0x78, 0xF8, 0x03, 0xE3, 0xF0, 0x3F, 0x07, 0xFF, 0xF8, 0x0F, - 0xFF, 0xE0, 0x1F, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x03, 0xC3, 0xF0, 0xFC, - 0x7F, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x3F, 0xFF, 0xFF, 0xFF, 0x1E, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, - 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, - 0x1E, 0x07, 0x80, 0x00, 0xFC, 0x00, 0x1F, 0xF8, 0xF0, 0xFF, 0xFB, 0xC7, - 0xFF, 0xFF, 0x3F, 0x83, 0xFC, 0xF8, 0x07, 0xF7, 0xC0, 0x0F, 0xDE, 0x00, - 0x1F, 0x78, 0x00, 0x7F, 0xE0, 0x00, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, - 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, - 0x00, 0x3F, 0xC0, 0x00, 0xF7, 0x80, 0x07, 0xDE, 0x00, 0x1F, 0x7C, 0x00, - 0xFC, 0xF8, 0x07, 0xF3, 0xF8, 0x3F, 0xC7, 0xFF, 0xEF, 0x0F, 0xFF, 0x3C, - 0x1F, 0xF8, 0xF0, 0x1F, 0x83, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x79, 0xE0, - 0x01, 0xE7, 0xC0, 0x0F, 0x8F, 0x80, 0xFC, 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, - 0x80, 0xFF, 0xFC, 0x00, 0x7F, 0x80, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, - 0x00, 0xF0, 0xFE, 0x1E, 0x3F, 0xE3, 0xCF, 0xFF, 0x7B, 0xFF, 0xEF, 0xF0, - 0xFF, 0xF8, 0x07, 0xFF, 0x00, 0x7F, 0xC0, 0x0F, 0xF8, 0x01, 0xFE, 0x00, - 0x3F, 0xC0, 0x07, 0xF8, 0x00, 0xFF, 0x00, 0x1F, 0xE0, 0x03, 0xFC, 0x00, - 0x7F, 0x80, 0x0F, 0xF0, 0x01, 0xFE, 0x00, 0x3F, 0xC0, 0x07, 0xF8, 0x00, - 0xFF, 0x00, 0x1F, 0xE0, 0x03, 0xFC, 0x00, 0x7F, 0x80, 0x0F, 0xF0, 0x01, - 0xFE, 0x00, 0x3C, 0xFF, 0xFF, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x1F, - 0xFF, 0xFE, 0xFE, 0xF8, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x1F, 0x3C, 0x01, 0xF1, 0xE0, 0x1F, 0x0F, - 0x01, 0xF0, 0x78, 0x1F, 0x03, 0xC1, 0xF0, 0x1E, 0x1F, 0x00, 0xF1, 0xF0, - 0x07, 0x9F, 0x00, 0x3D, 0xF8, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x7F, - 0x7C, 0x03, 0xF1, 0xF0, 0x1F, 0x07, 0xC0, 0xF0, 0x3E, 0x07, 0x80, 0xF8, - 0x3C, 0x03, 0xC1, 0xE0, 0x1F, 0x0F, 0x00, 0x7C, 0x78, 0x03, 0xE3, 0xC0, - 0x0F, 0x9E, 0x00, 0x3C, 0xF0, 0x01, 0xF7, 0x80, 0x07, 0xC0, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0x00, 0xFC, 0x03, 0xF0, 0xE3, 0xFE, 0x0F, 0xFC, 0xE7, - 0xFF, 0x1F, 0xFE, 0xEF, 0xFF, 0xBF, 0xFE, 0xFE, 0x0F, 0xF8, 0x3F, 0xFC, - 0x07, 0xF0, 0x1F, 0xF8, 0x03, 0xE0, 0x0F, 0xF8, 0x03, 0xE0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0x00, - 0x7E, 0x0E, 0x1F, 0xF8, 0xE7, 0xFF, 0xCE, 0xFF, 0xFE, 0xEF, 0x07, 0xFF, - 0xE0, 0x1F, 0xFC, 0x01, 0xFF, 0x80, 0x0F, 0xF8, 0x00, 0xFF, 0x00, 0x0F, - 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, - 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, - 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x00, 0xFF, 0x00, 0x0F, 0x00, 0xFE, 0x00, 0x07, 0xFF, 0x00, 0x3F, 0xFF, - 0x80, 0xFF, 0xFF, 0x83, 0xF8, 0x3F, 0x87, 0xC0, 0x1F, 0x1F, 0x00, 0x1F, - 0x3C, 0x00, 0x1E, 0x78, 0x00, 0x3D, 0xF0, 0x00, 0x7F, 0xC0, 0x00, 0x7F, - 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF8, - 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xF3, 0xC0, - 0x01, 0xE7, 0xC0, 0x07, 0xC7, 0xC0, 0x1F, 0x0F, 0xE0, 0xFE, 0x0F, 0xFF, - 0xF8, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x03, 0xF8, 0x00, 0x00, 0xFE, - 0x03, 0x8F, 0xFE, 0x0E, 0x7F, 0xFC, 0x3B, 0xFF, 0xF8, 0xFF, 0x87, 0xF3, - 0xF8, 0x07, 0xCF, 0xC0, 0x0F, 0xBE, 0x00, 0x1E, 0xF8, 0x00, 0x7B, 0xE0, - 0x01, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x01, 0xFF, - 0x80, 0x07, 0xBE, 0x00, 0x1E, 0xFC, 0x00, 0xFB, 0xF8, 0x07, 0xCF, 0xF0, - 0x7F, 0x3F, 0xFF, 0xF8, 0xF7, 0xFF, 0xC3, 0xC7, 0xFE, 0x0F, 0x07, 0xE0, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, - 0xFE, 0x00, 0x07, 0xFF, 0x1C, 0x3F, 0xFF, 0x38, 0xFF, 0xFF, 0x73, 0xF8, - 0x3F, 0xE7, 0xC0, 0x1F, 0xDF, 0x00, 0x1F, 0xBE, 0x00, 0x1F, 0x78, 0x00, - 0x3F, 0xF0, 0x00, 0x7F, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, - 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x1F, - 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xFB, 0xC0, 0x01, 0xF7, 0xC0, 0x07, 0xE7, - 0xC0, 0x1F, 0xCF, 0xE0, 0xFF, 0x8F, 0xFF, 0xEF, 0x0F, 0xFF, 0xDE, 0x0F, - 0xFE, 0x3C, 0x07, 0xF0, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x78, 0x00, 0xFE, 0x1F, 0xE7, 0xFE, 0xFF, 0xFF, 0x8F, - 0xC0, 0xF8, 0x0F, 0x80, 0xF8, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0x01, 0xFC, 0x00, 0xFF, 0xF0, - 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x3E, 0x07, 0xE7, 0xC0, 0x3E, 0x78, 0x01, - 0xE7, 0x80, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xFC, - 0x00, 0x1F, 0xFC, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x03, 0xFE, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, - 0x80, 0x1F, 0x7E, 0x07, 0xE7, 0xFF, 0xFE, 0x3F, 0xFF, 0xC1, 0xFF, 0xF0, - 0x03, 0xFC, 0x00, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x8F, 0xFF, - 0xFF, 0xFF, 0xC7, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, - 0xE0, 0x78, 0x1F, 0xC7, 0xF0, 0xFC, 0x1F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, - 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, - 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, - 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x00, 0xFF, 0x00, 0x1F, 0xF0, 0x01, 0xFF, 0x00, 0x3F, 0xF8, 0x07, 0xFF, - 0xE0, 0xFF, 0x7F, 0xFF, 0x77, 0xFF, 0xE7, 0x1F, 0xFC, 0x70, 0x7E, 0x00, - 0x78, 0x00, 0x3E, 0xF0, 0x00, 0x79, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xE3, - 0xC0, 0x07, 0x87, 0xC0, 0x0F, 0x07, 0x80, 0x3C, 0x0F, 0x00, 0x78, 0x1F, - 0x01, 0xF0, 0x1E, 0x03, 0xC0, 0x3C, 0x07, 0x80, 0x7C, 0x1F, 0x00, 0x78, - 0x3C, 0x00, 0xF0, 0x78, 0x01, 0xF1, 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, - 0x80, 0x03, 0xDE, 0x00, 0x07, 0xBC, 0x00, 0x0F, 0x70, 0x00, 0x0F, 0xE0, - 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, - 0xF8, 0x03, 0xE0, 0x07, 0x9E, 0x00, 0xFC, 0x01, 0xE7, 0x80, 0x3F, 0x00, - 0x79, 0xF0, 0x0F, 0xC0, 0x3E, 0x3C, 0x07, 0xF0, 0x0F, 0x0F, 0x01, 0xFE, - 0x03, 0xC3, 0xC0, 0x7F, 0x80, 0xF0, 0x78, 0x1D, 0xE0, 0x78, 0x1E, 0x0F, - 0x38, 0x1E, 0x07, 0x83, 0xCF, 0x07, 0x81, 0xE0, 0xF3, 0xC1, 0xE0, 0x3C, - 0x38, 0xF0, 0xF0, 0x0F, 0x1E, 0x1C, 0x3C, 0x03, 0xC7, 0x87, 0x8F, 0x00, - 0x71, 0xE1, 0xE3, 0x80, 0x1E, 0x70, 0x79, 0xE0, 0x07, 0xBC, 0x0E, 0x78, - 0x01, 0xEF, 0x03, 0xDE, 0x00, 0x3B, 0xC0, 0xF7, 0x00, 0x0F, 0xE0, 0x3F, - 0xC0, 0x03, 0xF8, 0x07, 0xF0, 0x00, 0x7E, 0x01, 0xF8, 0x00, 0x1F, 0x80, - 0x7E, 0x00, 0x07, 0xC0, 0x1F, 0x80, 0x01, 0xF0, 0x03, 0xC0, 0x00, 0x7C, - 0x00, 0x78, 0xF0, 0x03, 0xE1, 0xE0, 0x0F, 0x07, 0xC0, 0x78, 0x0F, 0x03, - 0xE0, 0x1E, 0x0F, 0x00, 0x7C, 0x78, 0x00, 0xF3, 0xE0, 0x01, 0xEF, 0x00, - 0x07, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x03, - 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0xC0, 0x03, 0xCF, 0x00, 0x0F, 0x1E, - 0x00, 0x78, 0x7C, 0x03, 0xE0, 0xF0, 0x0F, 0x03, 0xE0, 0x78, 0x07, 0xC3, - 0xE0, 0x0F, 0x1F, 0x00, 0x3E, 0x78, 0x00, 0x7C, 0x78, 0x00, 0x3D, 0xE0, - 0x01, 0xF7, 0x80, 0x07, 0x8F, 0x00, 0x1E, 0x3C, 0x00, 0xF0, 0xF0, 0x03, - 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x78, 0x1E, 0x01, 0xE0, 0x3C, 0x07, 0x80, - 0xF0, 0x3C, 0x03, 0xC0, 0xF0, 0x07, 0x87, 0xC0, 0x1E, 0x1E, 0x00, 0x78, - 0x78, 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x0F, 0x3C, 0x00, 0x1F, 0xE0, - 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, - 0x3E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x01, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3E, 0x00, 0x0F, 0xF0, 0x00, - 0x3F, 0xC0, 0x00, 0xFE, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x7F, 0xFF, 0xF7, - 0xFF, 0xFF, 0x7F, 0xFF, 0xF7, 0xFF, 0xFF, 0x00, 0x01, 0xE0, 0x00, 0x3E, - 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, - 0x00, 0x07, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, - 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xC0, 0x00, 0x7C, - 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0x01, 0xE0, 0xFC, 0x1F, 0x87, 0x80, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, - 0xC0, 0x78, 0x1E, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0xC0, 0x3C, 0x03, 0x80, - 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, - 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0F, 0x00, 0xFC, 0x1F, 0x80, - 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0x1F, 0x83, 0xF0, 0x0F, 0x00, - 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x1C, 0x03, 0xC0, 0x3E, 0x03, - 0xC0, 0x78, 0x1F, 0x07, 0x80, 0xE0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0x70, 0x1E, 0x1F, 0x83, 0xF0, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0xF0, 0x0D, - 0xFF, 0x01, 0xF0, 0xF8, 0x7C, 0x0F, 0xFD, 0x80, 0x7F, 0x80, 0x03, 0xE0}; - -const GFXglyph FreeSans24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 4, 34, 16, 6, -33}, // 0x21 '!' - {17, 11, 12, 16, 2, -32}, // 0x22 '"' - {34, 24, 33, 26, 1, -31}, // 0x23 '#' - {133, 23, 41, 26, 1, -34}, // 0x24 '$' - {251, 39, 34, 42, 1, -32}, // 0x25 '%' - {417, 28, 34, 31, 2, -32}, // 0x26 '&' - {536, 4, 12, 9, 2, -32}, // 0x27 ''' - {542, 10, 44, 16, 3, -33}, // 0x28 '(' - {597, 10, 44, 16, 2, -33}, // 0x29 ')' - {652, 14, 14, 18, 2, -33}, // 0x2A '*' - {677, 23, 22, 27, 2, -21}, // 0x2B '+' - {741, 4, 12, 13, 4, -4}, // 0x2C ',' - {747, 11, 4, 16, 2, -14}, // 0x2D '-' - {753, 4, 5, 12, 4, -4}, // 0x2E '.' - {756, 13, 35, 13, 0, -33}, // 0x2F '/' - {813, 22, 34, 26, 2, -32}, // 0x30 '0' - {907, 11, 33, 26, 5, -32}, // 0x31 '1' - {953, 22, 33, 26, 2, -32}, // 0x32 '2' - {1044, 23, 34, 26, 1, -32}, // 0x33 '3' - {1142, 23, 33, 26, 1, -32}, // 0x34 '4' - {1237, 22, 34, 26, 2, -32}, // 0x35 '5' - {1331, 22, 34, 26, 2, -32}, // 0x36 '6' - {1425, 21, 33, 26, 2, -32}, // 0x37 '7' - {1512, 22, 34, 26, 2, -32}, // 0x38 '8' - {1606, 21, 34, 26, 2, -32}, // 0x39 '9' - {1696, 4, 25, 12, 4, -24}, // 0x3A ':' - {1709, 4, 32, 12, 4, -24}, // 0x3B ';' - {1725, 23, 23, 27, 2, -22}, // 0x3C '<' - {1792, 23, 12, 27, 2, -16}, // 0x3D '=' - {1827, 23, 23, 27, 2, -22}, // 0x3E '>' - {1894, 20, 35, 26, 4, -34}, // 0x3F '?' - {1982, 43, 42, 48, 2, -34}, // 0x40 '@' - {2208, 30, 34, 31, 1, -33}, // 0x41 'A' - {2336, 25, 34, 31, 4, -33}, // 0x42 'B' - {2443, 29, 36, 33, 2, -34}, // 0x43 'C' - {2574, 27, 34, 33, 4, -33}, // 0x44 'D' - {2689, 24, 34, 30, 4, -33}, // 0x45 'E' - {2791, 22, 34, 28, 4, -33}, // 0x46 'F' - {2885, 31, 36, 36, 2, -34}, // 0x47 'G' - {3025, 26, 34, 34, 4, -33}, // 0x48 'H' - {3136, 4, 34, 13, 5, -33}, // 0x49 'I' - {3153, 19, 35, 25, 2, -33}, // 0x4A 'J' - {3237, 27, 34, 32, 4, -33}, // 0x4B 'K' - {3352, 21, 34, 26, 4, -33}, // 0x4C 'L' - {3442, 32, 34, 40, 4, -33}, // 0x4D 'M' - {3578, 26, 34, 34, 4, -33}, // 0x4E 'N' - {3689, 33, 36, 37, 2, -34}, // 0x4F 'O' - {3838, 24, 34, 31, 4, -33}, // 0x50 'P' - {3940, 33, 38, 37, 2, -34}, // 0x51 'Q' - {4097, 26, 34, 33, 4, -33}, // 0x52 'R' - {4208, 27, 36, 31, 2, -34}, // 0x53 'S' - {4330, 26, 34, 30, 2, -33}, // 0x54 'T' - {4441, 26, 35, 34, 4, -33}, // 0x55 'U' - {4555, 29, 34, 30, 1, -33}, // 0x56 'V' - {4679, 42, 34, 44, 1, -33}, // 0x57 'W' - {4858, 29, 34, 31, 1, -33}, // 0x58 'X' - {4982, 30, 34, 32, 1, -33}, // 0x59 'Y' - {5110, 27, 34, 29, 1, -33}, // 0x5A 'Z' - {5225, 8, 44, 13, 3, -33}, // 0x5B '[' - {5269, 13, 35, 13, 0, -33}, // 0x5C '\' - {5326, 8, 44, 13, 1, -33}, // 0x5D ']' - {5370, 18, 18, 22, 2, -32}, // 0x5E '^' - {5411, 28, 2, 26, -1, 7}, // 0x5F '_' - {5418, 10, 7, 12, 1, -34}, // 0x60 '`' - {5427, 24, 27, 26, 1, -25}, // 0x61 'a' - {5508, 22, 35, 26, 3, -33}, // 0x62 'b' - {5605, 21, 27, 24, 1, -25}, // 0x63 'c' - {5676, 23, 35, 26, 1, -33}, // 0x64 'd' - {5777, 22, 27, 25, 1, -25}, // 0x65 'e' - {5852, 10, 34, 13, 1, -33}, // 0x66 'f' - {5895, 22, 36, 26, 1, -25}, // 0x67 'g' - {5994, 19, 34, 25, 3, -33}, // 0x68 'h' - {6075, 4, 34, 10, 3, -33}, // 0x69 'i' - {6092, 8, 44, 11, 0, -33}, // 0x6A 'j' - {6136, 21, 34, 24, 3, -33}, // 0x6B 'k' - {6226, 4, 34, 10, 3, -33}, // 0x6C 'l' - {6243, 32, 26, 38, 3, -25}, // 0x6D 'm' - {6347, 20, 26, 25, 3, -25}, // 0x6E 'n' - {6412, 23, 27, 25, 1, -25}, // 0x6F 'o' - {6490, 22, 35, 26, 3, -25}, // 0x70 'p' - {6587, 23, 35, 26, 1, -25}, // 0x71 'q' - {6688, 12, 26, 16, 3, -25}, // 0x72 'r' - {6727, 20, 27, 23, 1, -25}, // 0x73 's' - {6795, 10, 32, 13, 1, -30}, // 0x74 't' - {6835, 20, 26, 25, 3, -24}, // 0x75 'u' - {6900, 23, 25, 23, 0, -24}, // 0x76 'v' - {6972, 34, 25, 34, 0, -24}, // 0x77 'w' - {7079, 22, 25, 22, 0, -24}, // 0x78 'x' - {7148, 22, 35, 22, 0, -24}, // 0x79 'y' - {7245, 20, 25, 23, 1, -24}, // 0x7A 'z' - {7308, 11, 44, 16, 2, -33}, // 0x7B '{' - {7369, 3, 44, 12, 4, -33}, // 0x7C '|' - {7386, 11, 44, 16, 2, -33}, // 0x7D '}' - {7447, 19, 7, 24, 2, -19}}; // 0x7E '~' - -const GFXfont FreeSans24pt7b PROGMEM = {(uint8_t *)FreeSans24pt7bBitmaps, - (GFXglyph *)FreeSans24pt7bGlyphs, 0x20, - 0x7E, 56}; - -// Approx. 8136 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans9pt7b.h deleted file mode 100644 index 91c33b0..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSans9pt7b.h +++ /dev/null @@ -1,203 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xF8, 0xC0, 0xDE, 0xF7, 0x20, 0x09, 0x86, 0x41, 0x91, 0xFF, - 0x13, 0x04, 0xC3, 0x20, 0xC8, 0xFF, 0x89, 0x82, 0x61, 0x90, 0x10, 0x1F, - 0x14, 0xDA, 0x3D, 0x1E, 0x83, 0x40, 0x78, 0x17, 0x08, 0xF4, 0x7A, 0x35, - 0x33, 0xF0, 0x40, 0x20, 0x38, 0x10, 0xEC, 0x20, 0xC6, 0x20, 0xC6, 0x40, - 0xC6, 0x40, 0x6C, 0x80, 0x39, 0x00, 0x01, 0x3C, 0x02, 0x77, 0x02, 0x63, - 0x04, 0x63, 0x04, 0x77, 0x08, 0x3C, 0x0E, 0x06, 0x60, 0xCC, 0x19, 0x81, - 0xE0, 0x18, 0x0F, 0x03, 0x36, 0xC2, 0xD8, 0x73, 0x06, 0x31, 0xE3, 0xC4, - 0xFE, 0x13, 0x26, 0x6C, 0xCC, 0xCC, 0xC4, 0x66, 0x23, 0x10, 0x8C, 0x46, - 0x63, 0x33, 0x33, 0x32, 0x66, 0x4C, 0x80, 0x25, 0x7E, 0xA5, 0x00, 0x30, - 0xC3, 0x3F, 0x30, 0xC3, 0x0C, 0xD6, 0xF0, 0xC0, 0x08, 0x44, 0x21, 0x10, - 0x84, 0x42, 0x11, 0x08, 0x00, 0x3C, 0x66, 0x42, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC3, 0x42, 0x66, 0x3C, 0x11, 0x3F, 0x33, 0x33, 0x33, 0x33, - 0x30, 0x3E, 0x31, 0xB0, 0x78, 0x30, 0x18, 0x1C, 0x1C, 0x1C, 0x18, 0x18, - 0x10, 0x08, 0x07, 0xF8, 0x3C, 0x66, 0xC3, 0xC3, 0x03, 0x06, 0x1C, 0x07, - 0x03, 0xC3, 0xC3, 0x66, 0x3C, 0x0C, 0x18, 0x71, 0x62, 0xC9, 0xA3, 0x46, - 0xFE, 0x18, 0x30, 0x60, 0xC0, 0x7F, 0x20, 0x10, 0x08, 0x08, 0x07, 0xF3, - 0x8C, 0x03, 0x01, 0x80, 0xF0, 0x6C, 0x63, 0xE0, 0x1E, 0x31, 0x98, 0x78, - 0x0C, 0x06, 0xF3, 0x8D, 0x83, 0xC1, 0xE0, 0xD0, 0x6C, 0x63, 0xE0, 0xFF, - 0x03, 0x02, 0x06, 0x04, 0x0C, 0x08, 0x18, 0x18, 0x18, 0x10, 0x30, 0x30, - 0x3E, 0x31, 0xB0, 0x78, 0x3C, 0x1B, 0x18, 0xF8, 0xC6, 0xC1, 0xE0, 0xF0, - 0x6C, 0x63, 0xE0, 0x3C, 0x66, 0xC2, 0xC3, 0xC3, 0xC3, 0x67, 0x3B, 0x03, - 0x03, 0xC2, 0x66, 0x3C, 0xC0, 0x00, 0x30, 0xC0, 0x00, 0x00, 0x64, 0xA0, - 0x00, 0x81, 0xC7, 0x8E, 0x0C, 0x07, 0x80, 0x70, 0x0E, 0x01, 0x80, 0xFF, - 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x70, 0x0E, 0x01, 0xC0, 0x18, 0x38, 0x71, - 0xC0, 0x80, 0x00, 0x3E, 0x31, 0xB0, 0x78, 0x30, 0x18, 0x18, 0x38, 0x18, - 0x18, 0x0C, 0x00, 0x00, 0x01, 0x80, 0x03, 0xF0, 0x06, 0x0E, 0x06, 0x01, - 0x86, 0x00, 0x66, 0x1D, 0xBB, 0x31, 0xCF, 0x18, 0xC7, 0x98, 0x63, 0xCC, - 0x31, 0xE6, 0x11, 0xB3, 0x99, 0xCC, 0xF7, 0x86, 0x00, 0x01, 0x80, 0x00, - 0x70, 0x40, 0x0F, 0xE0, 0x06, 0x00, 0xF0, 0x0F, 0x00, 0x90, 0x19, 0x81, - 0x98, 0x10, 0x83, 0x0C, 0x3F, 0xC2, 0x04, 0x60, 0x66, 0x06, 0xC0, 0x30, - 0xFF, 0x18, 0x33, 0x03, 0x60, 0x6C, 0x0D, 0x83, 0x3F, 0xC6, 0x06, 0xC0, - 0x78, 0x0F, 0x01, 0xE0, 0x6F, 0xF8, 0x1F, 0x86, 0x19, 0x81, 0xA0, 0x3C, - 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x68, 0x0D, 0x83, 0x18, 0x61, 0xF0, - 0xFF, 0x18, 0x33, 0x03, 0x60, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, - 0x78, 0x0F, 0x03, 0x60, 0xCF, 0xF0, 0xFF, 0xE0, 0x30, 0x18, 0x0C, 0x06, - 0x03, 0xFD, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0F, 0xF8, 0xFF, 0xC0, 0xC0, - 0xC0, 0xC0, 0xC0, 0xFE, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x0F, 0x83, - 0x0E, 0x60, 0x66, 0x03, 0xC0, 0x0C, 0x00, 0xC1, 0xFC, 0x03, 0xC0, 0x36, - 0x03, 0x60, 0x73, 0x0F, 0x0F, 0x10, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, - 0x07, 0x80, 0xFF, 0xFE, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x06, - 0xFF, 0xFF, 0xFF, 0xC0, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x07, - 0x8F, 0x1E, 0x27, 0x80, 0xC0, 0xD8, 0x33, 0x0C, 0x63, 0x0C, 0xC1, 0xB8, - 0x3F, 0x07, 0x30, 0xC3, 0x18, 0x63, 0x06, 0x60, 0x6C, 0x0C, 0xC0, 0xC0, - 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xFF, 0xE0, - 0x3F, 0x01, 0xFC, 0x1F, 0xE0, 0xFD, 0x05, 0xEC, 0x6F, 0x63, 0x79, 0x13, - 0xCD, 0x9E, 0x6C, 0xF1, 0x47, 0x8E, 0x3C, 0x71, 0x80, 0xE0, 0x7C, 0x0F, - 0xC1, 0xE8, 0x3D, 0x87, 0x98, 0xF1, 0x1E, 0x33, 0xC3, 0x78, 0x6F, 0x07, - 0xE0, 0x7C, 0x0E, 0x0F, 0x81, 0x83, 0x18, 0x0C, 0xC0, 0x6C, 0x01, 0xE0, - 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1B, 0x01, 0x98, 0x0C, 0x60, 0xC0, 0xF8, - 0x00, 0xFF, 0x30, 0x6C, 0x0F, 0x03, 0xC0, 0xF0, 0x6F, 0xF3, 0x00, 0xC0, - 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x00, 0x0F, 0x81, 0x83, 0x18, 0x0C, 0xC0, - 0x6C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1B, 0x01, 0x98, 0x6C, - 0x60, 0xC0, 0xFB, 0x00, 0x08, 0xFF, 0x8C, 0x0E, 0xC0, 0x6C, 0x06, 0xC0, - 0x6C, 0x0C, 0xFF, 0x8C, 0x0E, 0xC0, 0x6C, 0x06, 0xC0, 0x6C, 0x06, 0xC0, - 0x70, 0x3F, 0x18, 0x6C, 0x0F, 0x03, 0xC0, 0x1E, 0x01, 0xF0, 0x0E, 0x00, - 0xF0, 0x3C, 0x0D, 0x86, 0x3F, 0x00, 0xFF, 0x86, 0x03, 0x01, 0x80, 0xC0, - 0x60, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x78, 0x0F, - 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xB0, 0x61, 0xF0, 0xC0, 0x6C, 0x0D, 0x81, 0x10, 0x63, 0x0C, 0x61, 0x04, - 0x60, 0xCC, 0x19, 0x01, 0x60, 0x3C, 0x07, 0x00, 0x60, 0xC1, 0x81, 0x30, - 0xE1, 0x98, 0x70, 0xCC, 0x28, 0x66, 0x26, 0x21, 0x13, 0x30, 0xC8, 0x98, - 0x6C, 0x4C, 0x14, 0x34, 0x0A, 0x1A, 0x07, 0x07, 0x03, 0x03, 0x80, 0x81, - 0x80, 0x60, 0x63, 0x0C, 0x30, 0xC1, 0x98, 0x0F, 0x00, 0xE0, 0x06, 0x00, - 0xF0, 0x19, 0x01, 0x98, 0x30, 0xC6, 0x0E, 0x60, 0x60, 0xC0, 0x36, 0x06, - 0x30, 0xC3, 0x0C, 0x19, 0x81, 0xD8, 0x0F, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x00, 0xFF, 0xC0, 0x60, 0x30, 0x0C, 0x06, 0x03, - 0x01, 0xC0, 0x60, 0x30, 0x18, 0x06, 0x03, 0x00, 0xFF, 0xC0, 0xFB, 0x6D, - 0xB6, 0xDB, 0x6D, 0xB6, 0xE0, 0x84, 0x10, 0x84, 0x10, 0x84, 0x10, 0x84, - 0x10, 0x80, 0xED, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0xE0, 0x30, 0x60, 0xA2, - 0x44, 0xD8, 0xA1, 0x80, 0xFF, 0xC0, 0xC6, 0x30, 0x7E, 0x71, 0xB0, 0xC0, - 0x60, 0xF3, 0xDB, 0x0D, 0x86, 0xC7, 0x3D, 0xC0, 0xC0, 0x60, 0x30, 0x1B, - 0xCE, 0x36, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x7C, 0x6D, 0xE0, 0x3C, - 0x66, 0xC3, 0xC0, 0xC0, 0xC0, 0xC0, 0xC3, 0x66, 0x3C, 0x03, 0x03, 0x03, - 0x3B, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x67, 0x3B, 0x3C, 0x66, - 0xC3, 0xC3, 0xFF, 0xC0, 0xC0, 0xC3, 0x66, 0x3C, 0x36, 0x6F, 0x66, 0x66, - 0x66, 0x66, 0x60, 0x3B, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x67, - 0x3B, 0x03, 0x03, 0xC6, 0x7C, 0xC0, 0xC0, 0xC0, 0xDE, 0xE3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xFF, 0xFF, 0xC0, 0x30, 0x03, - 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0xE0, 0xC0, 0x60, 0x30, 0x18, 0x4C, - 0x46, 0x63, 0x61, 0xF0, 0xEC, 0x62, 0x31, 0x98, 0x6C, 0x30, 0xFF, 0xFF, - 0xFF, 0xC0, 0xDE, 0xF7, 0x1C, 0xF0, 0xC7, 0x86, 0x3C, 0x31, 0xE1, 0x8F, - 0x0C, 0x78, 0x63, 0xC3, 0x1E, 0x18, 0xC0, 0xDE, 0xE3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x3C, 0x66, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0x66, 0x3C, 0xDE, 0x71, 0xB0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, - 0xE3, 0x6F, 0x30, 0x18, 0x0C, 0x00, 0x3B, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0x67, 0x3B, 0x03, 0x03, 0x03, 0xDF, 0x31, 0x8C, 0x63, 0x18, - 0xC6, 0x00, 0x3E, 0xE3, 0xC0, 0xC0, 0xE0, 0x3C, 0x07, 0xC3, 0xE3, 0x7E, - 0x66, 0xF6, 0x66, 0x66, 0x66, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC7, 0x7B, 0xC1, 0xA0, 0x98, 0xCC, 0x42, 0x21, 0xB0, 0xD0, - 0x28, 0x1C, 0x0C, 0x00, 0xC6, 0x1E, 0x38, 0x91, 0xC4, 0xCA, 0x66, 0xD3, - 0x16, 0xD0, 0xA6, 0x87, 0x1C, 0x38, 0xC0, 0xC6, 0x00, 0x43, 0x62, 0x36, - 0x1C, 0x18, 0x1C, 0x3C, 0x26, 0x62, 0x43, 0xC1, 0x21, 0x98, 0xCC, 0x42, - 0x61, 0xB0, 0xD0, 0x38, 0x1C, 0x0C, 0x06, 0x03, 0x01, 0x03, 0x00, 0xFE, - 0x0C, 0x30, 0xC1, 0x86, 0x18, 0x20, 0xC1, 0xFC, 0x36, 0x66, 0x66, 0x6E, - 0xCE, 0x66, 0x66, 0x66, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xC6, 0x66, - 0x66, 0x67, 0x37, 0x66, 0x66, 0x66, 0xC0, 0x61, 0x24, 0x38}; - -const GFXglyph FreeSans9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 2, 13, 6, 2, -12}, // 0x21 '!' - {4, 5, 4, 6, 1, -12}, // 0x22 '"' - {7, 10, 12, 10, 0, -11}, // 0x23 '#' - {22, 9, 16, 10, 1, -13}, // 0x24 '$' - {40, 16, 13, 16, 1, -12}, // 0x25 '%' - {66, 11, 13, 12, 1, -12}, // 0x26 '&' - {84, 2, 4, 4, 1, -12}, // 0x27 ''' - {85, 4, 17, 6, 1, -12}, // 0x28 '(' - {94, 4, 17, 6, 1, -12}, // 0x29 ')' - {103, 5, 5, 7, 1, -12}, // 0x2A '*' - {107, 6, 8, 11, 3, -7}, // 0x2B '+' - {113, 2, 4, 5, 2, 0}, // 0x2C ',' - {114, 4, 1, 6, 1, -4}, // 0x2D '-' - {115, 2, 1, 5, 1, 0}, // 0x2E '.' - {116, 5, 13, 5, 0, -12}, // 0x2F '/' - {125, 8, 13, 10, 1, -12}, // 0x30 '0' - {138, 4, 13, 10, 3, -12}, // 0x31 '1' - {145, 9, 13, 10, 1, -12}, // 0x32 '2' - {160, 8, 13, 10, 1, -12}, // 0x33 '3' - {173, 7, 13, 10, 2, -12}, // 0x34 '4' - {185, 9, 13, 10, 1, -12}, // 0x35 '5' - {200, 9, 13, 10, 1, -12}, // 0x36 '6' - {215, 8, 13, 10, 0, -12}, // 0x37 '7' - {228, 9, 13, 10, 1, -12}, // 0x38 '8' - {243, 8, 13, 10, 1, -12}, // 0x39 '9' - {256, 2, 10, 5, 1, -9}, // 0x3A ':' - {259, 3, 12, 5, 1, -8}, // 0x3B ';' - {264, 9, 9, 11, 1, -8}, // 0x3C '<' - {275, 9, 4, 11, 1, -5}, // 0x3D '=' - {280, 9, 9, 11, 1, -8}, // 0x3E '>' - {291, 9, 13, 10, 1, -12}, // 0x3F '?' - {306, 17, 16, 18, 1, -12}, // 0x40 '@' - {340, 12, 13, 12, 0, -12}, // 0x41 'A' - {360, 11, 13, 12, 1, -12}, // 0x42 'B' - {378, 11, 13, 13, 1, -12}, // 0x43 'C' - {396, 11, 13, 13, 1, -12}, // 0x44 'D' - {414, 9, 13, 11, 1, -12}, // 0x45 'E' - {429, 8, 13, 11, 1, -12}, // 0x46 'F' - {442, 12, 13, 14, 1, -12}, // 0x47 'G' - {462, 11, 13, 13, 1, -12}, // 0x48 'H' - {480, 2, 13, 5, 2, -12}, // 0x49 'I' - {484, 7, 13, 10, 1, -12}, // 0x4A 'J' - {496, 11, 13, 12, 1, -12}, // 0x4B 'K' - {514, 8, 13, 10, 1, -12}, // 0x4C 'L' - {527, 13, 13, 15, 1, -12}, // 0x4D 'M' - {549, 11, 13, 13, 1, -12}, // 0x4E 'N' - {567, 13, 13, 14, 1, -12}, // 0x4F 'O' - {589, 10, 13, 12, 1, -12}, // 0x50 'P' - {606, 13, 14, 14, 1, -12}, // 0x51 'Q' - {629, 12, 13, 13, 1, -12}, // 0x52 'R' - {649, 10, 13, 12, 1, -12}, // 0x53 'S' - {666, 9, 13, 11, 1, -12}, // 0x54 'T' - {681, 11, 13, 13, 1, -12}, // 0x55 'U' - {699, 11, 13, 12, 0, -12}, // 0x56 'V' - {717, 17, 13, 17, 0, -12}, // 0x57 'W' - {745, 12, 13, 12, 0, -12}, // 0x58 'X' - {765, 12, 13, 12, 0, -12}, // 0x59 'Y' - {785, 10, 13, 11, 1, -12}, // 0x5A 'Z' - {802, 3, 17, 5, 1, -12}, // 0x5B '[' - {809, 5, 13, 5, 0, -12}, // 0x5C '\' - {818, 3, 17, 5, 0, -12}, // 0x5D ']' - {825, 7, 7, 8, 1, -12}, // 0x5E '^' - {832, 10, 1, 10, 0, 3}, // 0x5F '_' - {834, 4, 3, 5, 0, -12}, // 0x60 '`' - {836, 9, 10, 10, 1, -9}, // 0x61 'a' - {848, 9, 13, 10, 1, -12}, // 0x62 'b' - {863, 8, 10, 9, 1, -9}, // 0x63 'c' - {873, 8, 13, 10, 1, -12}, // 0x64 'd' - {886, 8, 10, 10, 1, -9}, // 0x65 'e' - {896, 4, 13, 5, 1, -12}, // 0x66 'f' - {903, 8, 14, 10, 1, -9}, // 0x67 'g' - {917, 8, 13, 10, 1, -12}, // 0x68 'h' - {930, 2, 13, 4, 1, -12}, // 0x69 'i' - {934, 4, 17, 4, 0, -12}, // 0x6A 'j' - {943, 9, 13, 9, 1, -12}, // 0x6B 'k' - {958, 2, 13, 4, 1, -12}, // 0x6C 'l' - {962, 13, 10, 15, 1, -9}, // 0x6D 'm' - {979, 8, 10, 10, 1, -9}, // 0x6E 'n' - {989, 8, 10, 10, 1, -9}, // 0x6F 'o' - {999, 9, 13, 10, 1, -9}, // 0x70 'p' - {1014, 8, 13, 10, 1, -9}, // 0x71 'q' - {1027, 5, 10, 6, 1, -9}, // 0x72 'r' - {1034, 8, 10, 9, 1, -9}, // 0x73 's' - {1044, 4, 12, 5, 1, -11}, // 0x74 't' - {1050, 8, 10, 10, 1, -9}, // 0x75 'u' - {1060, 9, 10, 9, 0, -9}, // 0x76 'v' - {1072, 13, 10, 13, 0, -9}, // 0x77 'w' - {1089, 8, 10, 9, 0, -9}, // 0x78 'x' - {1099, 9, 14, 9, 0, -9}, // 0x79 'y' - {1115, 7, 10, 9, 1, -9}, // 0x7A 'z' - {1124, 4, 17, 6, 1, -12}, // 0x7B '{' - {1133, 2, 17, 4, 2, -12}, // 0x7C '|' - {1138, 4, 17, 6, 1, -12}, // 0x7D '}' - {1147, 7, 3, 9, 1, -7}}; // 0x7E '~' - -const GFXfont FreeSans9pt7b PROGMEM = {(uint8_t *)FreeSans9pt7bBitmaps, - (GFXglyph *)FreeSans9pt7bGlyphs, 0x20, - 0x7E, 22}; - -// Approx. 1822 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h deleted file mode 100644 index c1d6ef4..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h +++ /dev/null @@ -1,290 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0x76, 0x66, 0x60, 0xFF, 0xF0, 0xF3, 0xFC, 0xFF, - 0x3F, 0xCF, 0x61, 0x98, 0x60, 0x0E, 0x70, 0x73, 0x83, 0x18, 0xFF, 0xF7, - 0xFF, 0xBF, 0xFC, 0x73, 0x83, 0x18, 0x18, 0xC7, 0xFF, 0xBF, 0xFD, 0xFF, - 0xE3, 0x18, 0x39, 0xC1, 0xCE, 0x0E, 0x70, 0x02, 0x00, 0x7E, 0x0F, 0xF8, - 0x7F, 0xE7, 0xAF, 0xB9, 0x3D, 0xC8, 0x0F, 0x40, 0x3F, 0x00, 0xFF, 0x00, - 0xFC, 0x05, 0xFF, 0x27, 0xF9, 0x3F, 0xEB, 0xEF, 0xFE, 0x3F, 0xE0, 0x7C, - 0x00, 0x80, 0x04, 0x00, 0x3C, 0x06, 0x0F, 0xC1, 0x81, 0xFC, 0x30, 0x73, - 0x8C, 0x0C, 0x31, 0x81, 0xCE, 0x60, 0x1F, 0xCC, 0x03, 0xF3, 0x00, 0x3C, - 0x67, 0x80, 0x19, 0xF8, 0x02, 0x7F, 0x80, 0xCE, 0x70, 0x11, 0x86, 0x06, - 0x39, 0xC1, 0x87, 0xF8, 0x30, 0x7E, 0x0C, 0x07, 0x80, 0x07, 0x80, 0x1F, - 0xC0, 0x3F, 0xE0, 0x3C, 0xE0, 0x3C, 0xE0, 0x3E, 0xE0, 0x0F, 0xC0, 0x07, - 0x00, 0x3F, 0x8C, 0x7F, 0xCC, 0xF1, 0xFC, 0xF0, 0xF8, 0xF0, 0x78, 0xF8, - 0xF8, 0x7F, 0xFC, 0x3F, 0xDE, 0x1F, 0x8E, 0xFF, 0xFF, 0x66, 0x0C, 0x73, - 0x8E, 0x71, 0xC7, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x1C, 0x71, 0xC3, - 0x8E, 0x18, 0x70, 0xC3, 0x87, 0x1C, 0x38, 0xE3, 0x87, 0x1C, 0x71, 0xC7, - 0x1C, 0x71, 0xCE, 0x38, 0xE7, 0x1C, 0x63, 0x80, 0x10, 0x23, 0x5F, 0xF3, - 0x87, 0x1B, 0x14, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x0F, 0xFF, 0xFF, 0xFF, - 0xF8, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x00, 0xFF, 0xF3, 0x36, 0xC0, 0xFF, - 0xFF, 0xC0, 0xFF, 0xF0, 0x0C, 0x30, 0x86, 0x18, 0x61, 0x0C, 0x30, 0xC2, - 0x18, 0x61, 0x84, 0x30, 0xC0, 0x1F, 0x83, 0xFC, 0x7F, 0xE7, 0x9E, 0xF0, - 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, - 0xF7, 0x9E, 0x7F, 0xE3, 0xFC, 0x0F, 0x00, 0x06, 0x1C, 0x7F, 0xFF, 0xE3, - 0xC7, 0x8F, 0x1E, 0x3C, 0x78, 0xF1, 0xE3, 0xC7, 0x8F, 0x1E, 0x1F, 0x83, - 0xFC, 0x7F, 0xEF, 0x9F, 0xF0, 0xFF, 0x0F, 0x00, 0xF0, 0x0F, 0x01, 0xE0, - 0x3C, 0x0F, 0x81, 0xE0, 0x3C, 0x03, 0x80, 0x7F, 0xF7, 0xFF, 0x7F, 0xF0, - 0x1F, 0x07, 0xFC, 0xFF, 0xEF, 0x1E, 0xF1, 0xE0, 0x1E, 0x03, 0xC0, 0x78, - 0x07, 0xC0, 0x1E, 0x00, 0xF0, 0x0F, 0xF0, 0xFF, 0x1F, 0x7F, 0xE7, 0xFC, - 0x1F, 0x80, 0x03, 0xC0, 0xF8, 0x1F, 0x07, 0xE1, 0xBC, 0x27, 0x8C, 0xF3, - 0x1E, 0x63, 0xD8, 0x7B, 0xFF, 0xFF, 0xFF, 0xFE, 0x07, 0x80, 0xF0, 0x1E, - 0x03, 0xC0, 0x3F, 0xE7, 0xFE, 0x7F, 0xE7, 0x00, 0x60, 0x06, 0xF8, 0x7F, - 0xCF, 0xFE, 0xF1, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xFE, 0x1E, 0xFF, - 0xE7, 0xFC, 0x3F, 0x00, 0x0F, 0x83, 0xFC, 0x7F, 0xE7, 0x9F, 0xF0, 0x0F, - 0x78, 0xFF, 0xCF, 0xFE, 0xF9, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xF7, - 0x9F, 0x7F, 0xE3, 0xFC, 0x0F, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, - 0x1C, 0x07, 0x01, 0xE0, 0x38, 0x0F, 0x01, 0xC0, 0x78, 0x0F, 0x01, 0xE0, - 0x38, 0x0F, 0x01, 0xE0, 0x3C, 0x00, 0x0F, 0x03, 0xFC, 0x7F, 0xC7, 0x9E, - 0x70, 0xE7, 0x0E, 0x39, 0xC1, 0xF8, 0x3F, 0xC7, 0x9E, 0xF0, 0xFF, 0x0F, - 0xF0, 0xFF, 0x9F, 0x7F, 0xE3, 0xFC, 0x1F, 0x80, 0x1F, 0x03, 0xFC, 0x7F, - 0xEF, 0x9E, 0xF0, 0xEF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF9, 0xF7, 0xFF, 0x3F, - 0xF1, 0xEF, 0x00, 0xEF, 0x1E, 0x7F, 0xE7, 0xFC, 0x1F, 0x00, 0xFF, 0xF0, - 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0x11, 0x6C, - 0x00, 0x10, 0x07, 0x03, 0xF1, 0xFC, 0x7E, 0x0F, 0x80, 0xE0, 0x0F, 0xC0, - 0x3F, 0x80, 0x7F, 0x00, 0xF0, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x0E, 0x00, 0xFC, - 0x07, 0xF0, 0x0F, 0xE0, 0x1F, 0x00, 0xF0, 0x7F, 0x1F, 0x8F, 0xE0, 0xF0, - 0x08, 0x00, 0x1F, 0x07, 0xFC, 0x7F, 0xEF, 0x9F, 0xF0, 0xFF, 0x0F, 0x00, - 0xF0, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x0E, 0x00, 0xE0, 0x00, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x00, 0xFE, 0x00, 0x1F, 0xFC, 0x03, 0xC0, - 0xF0, 0x38, 0x01, 0xC3, 0x80, 0x07, 0x18, 0x3D, 0x99, 0x87, 0xEC, 0x6C, - 0x71, 0xC3, 0xC3, 0x06, 0x1E, 0x18, 0x30, 0xF1, 0x81, 0x87, 0x8C, 0x18, - 0x7C, 0x60, 0xC3, 0x63, 0x8E, 0x3B, 0x8F, 0xDF, 0x8C, 0x3C, 0xF0, 0x70, - 0x00, 0x01, 0xC0, 0x00, 0x07, 0x80, 0x80, 0x1F, 0xFE, 0x00, 0x1F, 0xC0, - 0x00, 0x03, 0xE0, 0x03, 0xE0, 0x03, 0xE0, 0x07, 0xF0, 0x07, 0xF0, 0x07, - 0x70, 0x0F, 0x78, 0x0E, 0x78, 0x0E, 0x38, 0x1E, 0x3C, 0x1C, 0x3C, 0x3F, - 0xFC, 0x3F, 0xFE, 0x3F, 0xFE, 0x78, 0x0E, 0x78, 0x0F, 0x70, 0x0F, 0xF0, - 0x07, 0xFF, 0xC3, 0xFF, 0xCF, 0xFF, 0x3C, 0x3E, 0xF0, 0x7B, 0xC1, 0xEF, - 0x0F, 0xBF, 0xFC, 0xFF, 0xE3, 0xFF, 0xCF, 0x07, 0xBC, 0x0F, 0xF0, 0x3F, - 0xC0, 0xFF, 0x07, 0xFF, 0xFE, 0xFF, 0xFB, 0xFF, 0x80, 0x07, 0xE0, 0x1F, - 0xF8, 0x3F, 0xFC, 0x7C, 0x3E, 0x78, 0x1F, 0xF8, 0x0F, 0xF0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF8, 0x0F, 0x78, - 0x1F, 0x7C, 0x3E, 0x3F, 0xFE, 0x1F, 0xFC, 0x07, 0xF0, 0xFF, 0xE1, 0xFF, - 0xE3, 0xFF, 0xE7, 0x83, 0xEF, 0x03, 0xDE, 0x07, 0xFC, 0x07, 0xF8, 0x0F, - 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x03, 0xFE, 0x07, 0xBC, - 0x1F, 0x7F, 0xFC, 0xFF, 0xF1, 0xFF, 0x80, 0xFF, 0xF7, 0xFF, 0xBF, 0xFD, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1F, 0xFC, 0xFF, 0xE7, 0xFF, 0x3C, - 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0xFE, 0xFF, 0xEF, 0xFE, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0x03, 0xF0, 0x0F, 0xFC, 0x3F, 0xFE, 0x3E, 0x1F, - 0x78, 0x07, 0x78, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x7F, 0xF0, 0x7F, - 0xF0, 0x7F, 0xF0, 0x07, 0x78, 0x07, 0x7C, 0x0F, 0x3E, 0x1F, 0x3F, 0xFB, - 0x0F, 0xFB, 0x03, 0xE3, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, - 0x3F, 0xC0, 0xFF, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xFC, - 0x0F, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xF0, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0xE0, 0x3C, - 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, - 0xF8, 0xFF, 0x1F, 0xE3, 0xFC, 0x7B, 0xFE, 0x7F, 0xC3, 0xE0, 0xF0, 0x3E, - 0xF0, 0x3C, 0xF0, 0x78, 0xF0, 0xF0, 0xF1, 0xE0, 0xF3, 0xC0, 0xF7, 0x80, - 0xFF, 0x00, 0xFF, 0x80, 0xFF, 0x80, 0xFB, 0xC0, 0xF1, 0xE0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0x78, 0xF0, 0x3C, 0xF0, 0x3E, 0xF0, 0x1E, 0xF0, 0x1E, - 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0xFF, 0xFF, 0xFF, 0xFC, 0xF8, - 0x1F, 0xFE, 0x0F, 0xFF, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0xFF, 0xE1, 0xFF, - 0xF9, 0xFF, 0xFC, 0xEF, 0xFE, 0x77, 0xFB, 0x3B, 0xFD, 0xDD, 0xFE, 0xFC, - 0xFF, 0x7E, 0x7F, 0x9F, 0x3F, 0xCF, 0x9F, 0xE7, 0x8F, 0xF3, 0xC7, 0xF8, - 0xE3, 0xC0, 0xF0, 0x1F, 0xF0, 0x3F, 0xF0, 0x7F, 0xE0, 0xFF, 0xE1, 0xFF, - 0xC3, 0xFD, 0xC7, 0xFB, 0x8F, 0xF3, 0x9F, 0xE7, 0x3F, 0xC7, 0x7F, 0x8F, - 0xFF, 0x0F, 0xFE, 0x1F, 0xFC, 0x1F, 0xF8, 0x1F, 0xF0, 0x3F, 0xE0, 0x3C, - 0x03, 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x87, 0xC7, 0xC7, 0x80, 0xF3, 0xC0, - 0x7B, 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x01, 0xFE, - 0x00, 0xF7, 0x80, 0xF3, 0xC0, 0x78, 0xF0, 0xF8, 0x7F, 0xFC, 0x1F, 0xFC, - 0x03, 0xF8, 0x00, 0xFF, 0xE3, 0xFF, 0xEF, 0xFF, 0xBC, 0x1F, 0xF0, 0x3F, - 0xC0, 0xFF, 0x03, 0xFC, 0x1F, 0xFF, 0xFB, 0xFF, 0xCF, 0xFE, 0x3C, 0x00, - 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x00, 0x03, - 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x87, 0xC7, 0xC7, 0x80, 0xF3, 0xC0, 0x7B, - 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x01, 0xFE, 0x04, - 0xF7, 0x87, 0xF3, 0xC3, 0xF8, 0xF0, 0xF8, 0x7F, 0xFC, 0x1F, 0xFF, 0x83, - 0xF1, 0x80, 0x00, 0x00, 0xFF, 0xF8, 0xFF, 0xFC, 0xFF, 0xFC, 0xF0, 0x3E, - 0xF0, 0x1E, 0xF0, 0x1E, 0xF0, 0x1E, 0xF0, 0x3C, 0xFF, 0xF8, 0xFF, 0xF0, - 0xFF, 0xF8, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, - 0xF0, 0x3C, 0xF0, 0x1F, 0x0F, 0xC0, 0x7F, 0xE1, 0xFF, 0xE7, 0xC3, 0xEF, - 0x03, 0xDE, 0x00, 0x3C, 0x00, 0x7F, 0x00, 0x7F, 0xF0, 0x3F, 0xF8, 0x0F, - 0xF8, 0x01, 0xF0, 0x01, 0xFE, 0x03, 0xDE, 0x0F, 0xBF, 0xFE, 0x3F, 0xF8, - 0x1F, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, - 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, - 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xF7, 0x87, 0x9F, 0xFE, 0x3F, 0xF0, 0x3F, - 0x00, 0x70, 0x0E, 0xF0, 0x3D, 0xE0, 0x79, 0xC0, 0xE3, 0x81, 0xC7, 0x87, - 0x87, 0x0E, 0x0E, 0x1C, 0x1E, 0x78, 0x1C, 0xE0, 0x39, 0xC0, 0x73, 0x80, - 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x70, - 0x38, 0x1C, 0xE0, 0xF0, 0x79, 0xE1, 0xF0, 0xF3, 0xC3, 0xE1, 0xE3, 0x87, - 0xC3, 0x87, 0x0F, 0x87, 0x0E, 0x3B, 0x9E, 0x1E, 0x77, 0x38, 0x1C, 0xEE, - 0x70, 0x39, 0xCC, 0xE0, 0x73, 0x99, 0xC0, 0x6E, 0x3F, 0x00, 0xFC, 0x7E, - 0x01, 0xF8, 0xFC, 0x03, 0xF0, 0xF8, 0x03, 0xE1, 0xE0, 0x07, 0x83, 0xC0, - 0x0F, 0x07, 0x80, 0xF0, 0x3C, 0xF0, 0xF9, 0xE1, 0xE1, 0xE7, 0x83, 0xCF, - 0x03, 0xFC, 0x03, 0xF0, 0x07, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x3F, 0x00, - 0xFF, 0x01, 0xFE, 0x07, 0x9E, 0x0F, 0x1E, 0x3C, 0x3C, 0xF8, 0x3D, 0xE0, - 0x78, 0xF0, 0x1E, 0x78, 0x1E, 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x78, 0x1E, - 0x78, 0x0E, 0x70, 0x0F, 0xF0, 0x07, 0xE0, 0x07, 0xE0, 0x03, 0xC0, 0x03, - 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, - 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x01, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF8, 0x07, 0x80, 0x78, 0x07, 0x80, 0x7C, 0x03, 0xC0, 0x3C, 0x03, - 0xC0, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFC, 0xF3, 0xCF, - 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xFF, 0xFF, - 0xC0, 0xC1, 0x81, 0x03, 0x06, 0x04, 0x0C, 0x18, 0x10, 0x30, 0x60, 0x40, - 0xC1, 0x81, 0x03, 0x06, 0xFF, 0xFF, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, - 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0xFF, 0xFF, 0xC0, 0x0F, 0x00, - 0xF0, 0x0F, 0x01, 0xF8, 0x1B, 0x83, 0x9C, 0x39, 0xC3, 0x0C, 0x70, 0xE7, - 0x0E, 0xE0, 0x70, 0xFF, 0xFF, 0xFF, 0xFC, 0xE6, 0x30, 0x1F, 0x83, 0xFF, - 0x1F, 0xFD, 0xE1, 0xE0, 0x0F, 0x03, 0xF9, 0xFF, 0xDF, 0x1E, 0xF0, 0xF7, - 0x8F, 0xBF, 0xFC, 0xFF, 0xE3, 0xCF, 0x80, 0xF0, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x7B, 0xC3, 0xFF, 0x9F, 0xFE, 0xF8, 0xF7, 0x83, 0xFC, - 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, 0xE3, 0xDF, 0xFE, 0xFF, 0xE7, 0xBE, - 0x00, 0x0F, 0x83, 0xFE, 0x7F, 0xF7, 0x8F, 0xF0, 0x7F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x77, 0x8F, 0x7F, 0xF3, 0xFE, 0x0F, 0x80, 0x00, 0x78, 0x03, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x8F, 0xBC, 0xFF, 0xEF, 0xFF, 0x78, 0xFF, - 0x83, 0xFC, 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3D, 0xE3, 0xEF, 0xFF, 0x3F, - 0xF8, 0xFB, 0xC0, 0x1F, 0x81, 0xFE, 0x1F, 0xF9, 0xF1, 0xCF, 0x07, 0x7F, - 0xFB, 0xFF, 0xDE, 0x00, 0xF0, 0x03, 0xC3, 0x9F, 0xFC, 0x7F, 0xC0, 0xF8, - 0x00, 0x3E, 0xFD, 0xFB, 0xC7, 0x9F, 0xBF, 0x3C, 0x78, 0xF1, 0xE3, 0xC7, - 0x8F, 0x1E, 0x3C, 0x78, 0xF0, 0x1E, 0x79, 0xFB, 0xDF, 0xFE, 0xF1, 0xFF, - 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7F, 0xC7, 0xDF, 0xFE, 0x7F, - 0xF1, 0xF7, 0x80, 0x3C, 0x01, 0xFF, 0x1E, 0x7F, 0xF0, 0xFE, 0x00, 0xF0, - 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x7C, 0xFF, 0xEF, 0xFF, 0xF9, - 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, - 0xFF, 0x0F, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3C, - 0xF3, 0xC0, 0x00, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, - 0xF3, 0xCF, 0xFF, 0xFF, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, - 0x0F, 0x0F, 0xF1, 0xEF, 0x3C, 0xF7, 0x8F, 0xF0, 0xFF, 0x0F, 0xF8, 0xFF, - 0x8F, 0x3C, 0xF1, 0xCF, 0x1E, 0xF0, 0xEF, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0x8F, 0x9F, 0xFB, 0xFB, 0xFF, 0xFF, - 0xFC, 0xF8, 0xFF, 0x1E, 0x1F, 0xE3, 0xC3, 0xFC, 0x78, 0x7F, 0x8F, 0x0F, - 0xF1, 0xE1, 0xFE, 0x3C, 0x3F, 0xC7, 0x87, 0xF8, 0xF0, 0xFF, 0x1E, 0x1E, - 0xF7, 0xCF, 0xFE, 0xFF, 0xFF, 0x9F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, - 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xF0, 0x0F, 0x81, 0xFF, 0x1F, - 0xFC, 0xF1, 0xEF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7B, 0xC7, - 0x9F, 0xFC, 0x7F, 0xC0, 0xF8, 0x00, 0xF7, 0xC7, 0xFF, 0x3F, 0xFD, 0xF1, - 0xEF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7F, 0xC7, 0xBF, 0xFD, - 0xFF, 0xCF, 0x78, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x00, - 0x0F, 0x79, 0xFF, 0xDF, 0xFE, 0xF1, 0xFF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, - 0x0F, 0xF0, 0x7B, 0xC7, 0xDF, 0xFE, 0x7F, 0xF1, 0xF7, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0xF3, 0xF7, 0xFF, 0xF8, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0x1F, 0x87, 0xFC, 0xFF, 0xEF, - 0x0F, 0xF8, 0x0F, 0xF0, 0x7F, 0xE0, 0xFF, 0x01, 0xFF, 0x0F, 0xFF, 0xE7, - 0xFE, 0x1F, 0x80, 0x79, 0xE7, 0xBF, 0xFD, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, - 0x7D, 0xF3, 0xC0, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, - 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x1F, 0xFF, 0xF7, 0xFF, 0x3E, 0xF0, 0xF0, - 0x7B, 0x83, 0x9E, 0x1C, 0xF1, 0xE3, 0x8E, 0x1C, 0x70, 0x77, 0x83, 0xB8, - 0x1D, 0xC0, 0x7E, 0x03, 0xE0, 0x1F, 0x00, 0x70, 0x00, 0xF0, 0xE1, 0xDC, - 0x78, 0x77, 0x1F, 0x3D, 0xE7, 0xCF, 0x79, 0xB3, 0x8E, 0x6C, 0xE3, 0xBB, - 0x38, 0xEE, 0xFC, 0x1F, 0x3F, 0x07, 0xC7, 0xC1, 0xF1, 0xF0, 0x7C, 0x78, - 0x0E, 0x1E, 0x00, 0x78, 0xF3, 0xC7, 0x8F, 0x78, 0x3B, 0x81, 0xFC, 0x07, - 0xC0, 0x1E, 0x01, 0xF0, 0x1F, 0xC0, 0xEF, 0x0F, 0x78, 0xF1, 0xE7, 0x87, - 0x00, 0xF0, 0x7B, 0x83, 0x9E, 0x1C, 0x71, 0xE3, 0x8E, 0x1E, 0x70, 0x73, - 0x83, 0xB8, 0x1F, 0xC0, 0x7E, 0x03, 0xE0, 0x0F, 0x00, 0x70, 0x03, 0x80, - 0x3C, 0x07, 0xC0, 0x3E, 0x01, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFC, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x0F, 0xFF, 0xFF, 0xFF, 0xC0, - 0x1C, 0xF3, 0xCE, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0xBC, 0xF0, 0xE3, 0x8E, - 0x38, 0xE3, 0x8E, 0x3C, 0xF1, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0xE3, 0x8F, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x0F, 0x3D, 0xC7, 0x1C, - 0x71, 0xC7, 0x1C, 0xF3, 0xCE, 0x00, 0x78, 0x0F, 0xE0, 0xCF, 0x30, 0x7F, - 0x01, 0xE0}; - -const GFXglyph FreeSansBold12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 7, 0, 1}, // 0x20 ' ' - {0, 4, 17, 8, 3, -16}, // 0x21 '!' - {9, 10, 6, 11, 1, -17}, // 0x22 '"' - {17, 13, 16, 13, 0, -15}, // 0x23 '#' - {43, 13, 20, 13, 0, -17}, // 0x24 '$' - {76, 19, 17, 21, 1, -16}, // 0x25 '%' - {117, 16, 17, 17, 1, -16}, // 0x26 '&' - {151, 4, 6, 6, 1, -17}, // 0x27 ''' - {154, 6, 22, 8, 1, -17}, // 0x28 '(' - {171, 6, 22, 8, 1, -17}, // 0x29 ')' - {188, 7, 8, 9, 1, -17}, // 0x2A '*' - {195, 11, 11, 14, 2, -10}, // 0x2B '+' - {211, 4, 7, 6, 1, -2}, // 0x2C ',' - {215, 6, 3, 8, 1, -7}, // 0x2D '-' - {218, 4, 3, 6, 1, -2}, // 0x2E '.' - {220, 6, 17, 7, 0, -16}, // 0x2F '/' - {233, 12, 17, 13, 1, -16}, // 0x30 '0' - {259, 7, 17, 14, 3, -16}, // 0x31 '1' - {274, 12, 17, 13, 1, -16}, // 0x32 '2' - {300, 12, 17, 13, 1, -16}, // 0x33 '3' - {326, 11, 17, 13, 1, -16}, // 0x34 '4' - {350, 12, 17, 13, 1, -16}, // 0x35 '5' - {376, 12, 17, 13, 1, -16}, // 0x36 '6' - {402, 11, 17, 13, 1, -16}, // 0x37 '7' - {426, 12, 17, 13, 1, -16}, // 0x38 '8' - {452, 12, 17, 13, 1, -16}, // 0x39 '9' - {478, 4, 12, 6, 1, -11}, // 0x3A ':' - {484, 4, 16, 6, 1, -11}, // 0x3B ';' - {492, 12, 12, 14, 1, -11}, // 0x3C '<' - {510, 12, 9, 14, 1, -9}, // 0x3D '=' - {524, 12, 12, 14, 1, -11}, // 0x3E '>' - {542, 12, 18, 15, 2, -17}, // 0x3F '?' - {569, 21, 21, 23, 1, -17}, // 0x40 '@' - {625, 16, 18, 17, 0, -17}, // 0x41 'A' - {661, 14, 18, 17, 2, -17}, // 0x42 'B' - {693, 16, 18, 17, 1, -17}, // 0x43 'C' - {729, 15, 18, 17, 2, -17}, // 0x44 'D' - {763, 13, 18, 16, 2, -17}, // 0x45 'E' - {793, 12, 18, 15, 2, -17}, // 0x46 'F' - {820, 16, 18, 18, 1, -17}, // 0x47 'G' - {856, 14, 18, 18, 2, -17}, // 0x48 'H' - {888, 4, 18, 7, 2, -17}, // 0x49 'I' - {897, 11, 18, 14, 1, -17}, // 0x4A 'J' - {922, 16, 18, 17, 2, -17}, // 0x4B 'K' - {958, 11, 18, 15, 2, -17}, // 0x4C 'L' - {983, 17, 18, 21, 2, -17}, // 0x4D 'M' - {1022, 15, 18, 18, 2, -17}, // 0x4E 'N' - {1056, 17, 18, 19, 1, -17}, // 0x4F 'O' - {1095, 14, 18, 16, 2, -17}, // 0x50 'P' - {1127, 17, 19, 19, 1, -17}, // 0x51 'Q' - {1168, 16, 18, 17, 2, -17}, // 0x52 'R' - {1204, 15, 18, 16, 1, -17}, // 0x53 'S' - {1238, 12, 18, 15, 2, -17}, // 0x54 'T' - {1265, 14, 18, 18, 2, -17}, // 0x55 'U' - {1297, 15, 18, 16, 0, -17}, // 0x56 'V' - {1331, 23, 18, 23, 0, -17}, // 0x57 'W' - {1383, 15, 18, 16, 1, -17}, // 0x58 'X' - {1417, 16, 18, 15, 0, -17}, // 0x59 'Y' - {1453, 13, 18, 15, 1, -17}, // 0x5A 'Z' - {1483, 6, 23, 8, 2, -17}, // 0x5B '[' - {1501, 7, 17, 7, 0, -16}, // 0x5C '\' - {1516, 6, 23, 8, 0, -17}, // 0x5D ']' - {1534, 12, 11, 14, 1, -16}, // 0x5E '^' - {1551, 15, 2, 13, -1, 4}, // 0x5F '_' - {1555, 4, 3, 6, 0, -17}, // 0x60 '`' - {1557, 13, 13, 14, 1, -12}, // 0x61 'a' - {1579, 13, 18, 15, 2, -17}, // 0x62 'b' - {1609, 12, 13, 13, 1, -12}, // 0x63 'c' - {1629, 13, 18, 15, 1, -17}, // 0x64 'd' - {1659, 13, 13, 14, 1, -12}, // 0x65 'e' - {1681, 7, 18, 8, 1, -17}, // 0x66 'f' - {1697, 13, 18, 15, 1, -12}, // 0x67 'g' - {1727, 12, 18, 14, 2, -17}, // 0x68 'h' - {1754, 4, 18, 7, 2, -17}, // 0x69 'i' - {1763, 6, 23, 7, 0, -17}, // 0x6A 'j' - {1781, 12, 18, 14, 2, -17}, // 0x6B 'k' - {1808, 4, 18, 6, 2, -17}, // 0x6C 'l' - {1817, 19, 13, 21, 2, -12}, // 0x6D 'm' - {1848, 12, 13, 15, 2, -12}, // 0x6E 'n' - {1868, 13, 13, 15, 1, -12}, // 0x6F 'o' - {1890, 13, 18, 15, 2, -12}, // 0x70 'p' - {1920, 13, 18, 15, 1, -12}, // 0x71 'q' - {1950, 8, 13, 9, 2, -12}, // 0x72 'r' - {1963, 12, 13, 13, 1, -12}, // 0x73 's' - {1983, 6, 15, 8, 1, -14}, // 0x74 't' - {1995, 12, 13, 15, 2, -12}, // 0x75 'u' - {2015, 13, 13, 13, 0, -12}, // 0x76 'v' - {2037, 18, 13, 19, 0, -12}, // 0x77 'w' - {2067, 13, 13, 13, 0, -12}, // 0x78 'x' - {2089, 13, 18, 13, 0, -12}, // 0x79 'y' - {2119, 10, 13, 12, 1, -12}, // 0x7A 'z' - {2136, 6, 23, 9, 1, -17}, // 0x7B '{' - {2154, 2, 22, 7, 2, -17}, // 0x7C '|' - {2160, 6, 23, 9, 3, -17}, // 0x7D '}' - {2178, 12, 5, 12, 0, -7}}; // 0x7E '~' - -const GFXfont FreeSansBold12pt7b PROGMEM = { - (uint8_t *)FreeSansBold12pt7bBitmaps, (GFXglyph *)FreeSansBold12pt7bGlyphs, - 0x20, 0x7E, 29}; - -// Approx. 2858 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h deleted file mode 100644 index f0e2807..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h +++ /dev/null @@ -1,483 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold18pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xE7, 0x39, 0xCE, 0x73, 0x80, - 0x0F, 0xFF, 0xFF, 0xF8, 0xF8, 0xFF, 0xC7, 0xFE, 0x3F, 0xF1, 0xFF, 0x8F, - 0xFC, 0x7D, 0xC1, 0xCE, 0x0E, 0x70, 0x70, 0x03, 0xC3, 0x80, 0x3C, 0x78, - 0x03, 0xC7, 0x80, 0x38, 0x78, 0x07, 0x87, 0x07, 0xFF, 0xFF, 0x7F, 0xFF, - 0xF7, 0xFF, 0xFF, 0x7F, 0xFF, 0xF0, 0xF0, 0xE0, 0x0F, 0x0E, 0x00, 0xF1, - 0xE0, 0x0F, 0x1E, 0x00, 0xE1, 0xE0, 0xFF, 0xFF, 0xCF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xCF, 0xFF, 0xFC, 0x1C, 0x3C, 0x03, 0xC3, 0x80, 0x3C, 0x78, 0x03, - 0xC7, 0x80, 0x38, 0x78, 0x03, 0x87, 0x80, 0x00, 0x60, 0x00, 0x7F, 0x80, - 0x3F, 0xFC, 0x0F, 0xFF, 0xC3, 0xFF, 0xFC, 0xFC, 0xDF, 0x9F, 0x19, 0xFB, - 0xC3, 0x1F, 0x78, 0x63, 0xEF, 0x8C, 0x01, 0xFD, 0x80, 0x1F, 0xF0, 0x01, - 0xFF, 0xC0, 0x1F, 0xFE, 0x00, 0x7F, 0xE0, 0x03, 0xFE, 0x00, 0x67, 0xE0, - 0x0C, 0x7F, 0xE1, 0x8F, 0xFC, 0x31, 0xFF, 0xC6, 0x3E, 0xFC, 0xDF, 0x9F, - 0xFF, 0xF1, 0xFF, 0xFC, 0x0F, 0xFF, 0x00, 0x7F, 0x80, 0x01, 0x80, 0x00, - 0x30, 0x00, 0x06, 0x00, 0x0F, 0x00, 0x1C, 0x01, 0xFE, 0x00, 0xE0, 0x1F, - 0xF8, 0x0E, 0x00, 0xFF, 0xC0, 0x70, 0x0F, 0x0F, 0x07, 0x00, 0x70, 0x38, - 0x38, 0x03, 0x81, 0xC3, 0x80, 0x1C, 0x0E, 0x3C, 0x00, 0xF0, 0xF1, 0xC0, - 0x03, 0xFF, 0x1C, 0x00, 0x1F, 0xF8, 0xE0, 0x00, 0x7F, 0x8E, 0x00, 0x00, - 0xF0, 0x70, 0xF8, 0x00, 0x07, 0x1F, 0xF0, 0x00, 0x39, 0xFF, 0xC0, 0x03, - 0x8F, 0xFE, 0x00, 0x1C, 0xF0, 0x78, 0x01, 0xC7, 0x01, 0xC0, 0x0C, 0x38, - 0x0E, 0x00, 0xE1, 0xC0, 0x70, 0x06, 0x0F, 0x07, 0x80, 0x70, 0x3F, 0xF8, - 0x07, 0x01, 0xFF, 0xC0, 0x38, 0x07, 0xFC, 0x03, 0x80, 0x0F, 0x80, 0x01, - 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0xC0, 0x03, 0xFF, 0x80, 0x1F, 0x1E, - 0x00, 0x7C, 0x78, 0x01, 0xF1, 0xE0, 0x07, 0xE7, 0x80, 0x0F, 0xBC, 0x00, - 0x1F, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xF0, 0xF0, 0xFF, - 0xE3, 0xC7, 0xE7, 0xCF, 0x3F, 0x0F, 0xF8, 0xF8, 0x3F, 0xE3, 0xE0, 0x7F, - 0x8F, 0x80, 0xFC, 0x3F, 0x03, 0xF0, 0x7E, 0x3F, 0xE1, 0xFF, 0xFF, 0x83, - 0xFF, 0xFF, 0x07, 0xFE, 0x7E, 0x07, 0xF0, 0xFC, 0xFF, 0xFF, 0xFF, 0xFD, - 0xCE, 0x70, 0x07, 0x87, 0x83, 0xC3, 0xC1, 0xE1, 0xE0, 0xF0, 0x78, 0x78, - 0x3C, 0x1E, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, - 0x0F, 0x03, 0x81, 0xE0, 0xF0, 0x78, 0x1E, 0x0F, 0x03, 0x81, 0xE0, 0x70, - 0x3C, 0x0E, 0x07, 0x80, 0xF0, 0x38, 0x1E, 0x07, 0x83, 0xC0, 0xF0, 0x78, - 0x3C, 0x0F, 0x07, 0x83, 0xC0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, - 0xC1, 0xE0, 0xF0, 0x78, 0x78, 0x3C, 0x1E, 0x0F, 0x0F, 0x07, 0x87, 0x83, - 0xC1, 0xC1, 0xE0, 0xE0, 0xF0, 0x00, 0x06, 0x00, 0x60, 0x06, 0x07, 0x6E, - 0x7F, 0xE3, 0xFC, 0x0F, 0x01, 0xF8, 0x1F, 0x83, 0x9C, 0x10, 0x80, 0x03, - 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0x03, 0xC0, 0x03, - 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0x8C, 0x63, - 0x37, 0xB0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x80, 0x01, - 0x81, 0xC0, 0xC0, 0x60, 0x70, 0x38, 0x18, 0x0C, 0x0E, 0x06, 0x03, 0x01, - 0x81, 0xC0, 0xC0, 0x60, 0x30, 0x38, 0x18, 0x0C, 0x0E, 0x07, 0x03, 0x01, - 0x81, 0xC0, 0xC0, 0x00, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, 0x87, 0xFF, - 0xC7, 0xE3, 0xF3, 0xE0, 0xF9, 0xF0, 0x7D, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, - 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, - 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xDF, 0x07, 0xCF, 0x83, 0xE7, 0xE3, - 0xF1, 0xFF, 0xF0, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x01, 0xC0, - 0xF0, 0x3C, 0x1F, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xC1, 0xF0, 0x7C, - 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, - 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC0, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, - 0x8F, 0xFF, 0xE7, 0xE3, 0xF7, 0xE0, 0xFF, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, - 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xE0, 0x03, 0xE0, 0x03, 0xF0, 0x03, 0xF0, - 0x07, 0xF0, 0x07, 0xF0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xC0, 0x07, 0xC0, - 0x03, 0xE0, 0x03, 0xFF, 0xFD, 0xFF, 0xFE, 0xFF, 0xFF, 0x7F, 0xFF, 0x80, - 0x07, 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0xFF, 0xCF, 0xC3, 0xF7, 0xC0, - 0xFB, 0xE0, 0x7D, 0xF0, 0x3E, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x0F, 0x80, - 0x3F, 0x80, 0x1F, 0xC0, 0x0F, 0xF0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, - 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x83, 0xF7, 0xC3, 0xF3, 0xFF, 0xF8, 0xFF, - 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0xFC, 0x01, 0xFC, - 0x01, 0xFC, 0x03, 0xFC, 0x07, 0x7C, 0x07, 0x7C, 0x0E, 0x7C, 0x0E, 0x7C, - 0x1C, 0x7C, 0x18, 0x7C, 0x38, 0x7C, 0x70, 0x7C, 0x60, 0x7C, 0xE0, 0x7C, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x7C, 0x00, 0x7C, - 0x00, 0x7C, 0x00, 0x7C, 0x00, 0x7C, 0x00, 0x7C, 0x1F, 0xFF, 0x0F, 0xFF, - 0x8F, 0xFF, 0xC7, 0xFF, 0xE3, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x00, 0x70, - 0x00, 0x79, 0xF0, 0x3F, 0xFE, 0x1F, 0xFF, 0x8F, 0xFF, 0xE7, 0xC3, 0xF0, - 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xFE, 0x03, - 0xFF, 0x03, 0xFF, 0xC3, 0xF3, 0xFF, 0xF1, 0xFF, 0xF8, 0x3F, 0xF0, 0x07, - 0xE0, 0x00, 0x03, 0xF8, 0x03, 0xFF, 0x81, 0xFF, 0xF0, 0xFF, 0xFE, 0x3E, - 0x1F, 0x9F, 0x03, 0xE7, 0xC0, 0x03, 0xE0, 0x00, 0xF8, 0xF8, 0x3E, 0xFF, - 0x8F, 0xFF, 0xF3, 0xFF, 0xFE, 0xFE, 0x1F, 0xBF, 0x03, 0xFF, 0x80, 0x7F, - 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xF7, 0x80, 0x7D, 0xF0, 0x3E, 0x7E, - 0x1F, 0x8F, 0xFF, 0xC1, 0xFF, 0xF0, 0x3F, 0xF0, 0x03, 0xF0, 0x00, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xF0, 0x00, 0xF8, - 0x00, 0xF8, 0x00, 0x78, 0x00, 0x7C, 0x00, 0x3C, 0x00, 0x3E, 0x00, 0x1E, - 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xC0, 0x03, - 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x78, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xE0, 0x07, 0xFC, 0x0F, 0xFF, 0x07, - 0xFF, 0xC7, 0xC3, 0xF3, 0xC0, 0xF9, 0xE0, 0x3C, 0xF0, 0x1E, 0x78, 0x1F, - 0x1E, 0x1F, 0x07, 0xFF, 0x01, 0xFF, 0x03, 0xFF, 0xE3, 0xF1, 0xF9, 0xF0, - 0x7D, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x83, 0xF7, - 0xC3, 0xF3, 0xFF, 0xF8, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x07, - 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0xFF, 0xC7, 0xE3, 0xF7, 0xE0, 0xFB, - 0xE0, 0x3D, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x83, - 0xF7, 0xE3, 0xFB, 0xFF, 0xFC, 0xFF, 0xFE, 0x3F, 0xDF, 0x07, 0xCF, 0x80, - 0x07, 0x80, 0x03, 0xDF, 0x03, 0xE7, 0xC3, 0xE3, 0xFF, 0xF0, 0xFF, 0xF0, - 0x3F, 0xF0, 0x07, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xC6, 0x33, 0x9B, 0xD8, 0x00, 0x00, 0xC0, 0x00, - 0xF0, 0x01, 0xFC, 0x03, 0xFF, 0x03, 0xFF, 0x07, 0xFE, 0x0F, 0xFC, 0x03, - 0xF8, 0x00, 0xF0, 0x00, 0x3F, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x07, - 0xFF, 0x00, 0x3F, 0xF0, 0x01, 0xFC, 0x00, 0x1F, 0x00, 0x00, 0xC0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0xC0, 0x00, 0x3C, 0x00, 0x0F, 0xE0, 0x03, 0xFF, 0x00, 0x3F, 0xF0, - 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0x00, 0x03, 0xC0, 0x07, 0xF0, - 0x0F, 0xFC, 0x1F, 0xF8, 0x3F, 0xF8, 0x3F, 0xF0, 0x0F, 0xE0, 0x03, 0xC0, - 0x00, 0xC0, 0x00, 0x00, 0x07, 0xF0, 0x07, 0xFF, 0x03, 0xFF, 0xF1, 0xFF, - 0xFC, 0x7E, 0x3F, 0xBF, 0x03, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, - 0xC0, 0x03, 0xF0, 0x01, 0xFC, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x80, - 0x1F, 0xC0, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, - 0x00, 0xF8, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, - 0xFF, 0xFF, 0xC0, 0x01, 0xF8, 0x07, 0xF0, 0x03, 0xE0, 0x01, 0xF8, 0x07, - 0x80, 0x00, 0x7C, 0x0F, 0x00, 0x00, 0x3C, 0x1E, 0x03, 0xE3, 0x9E, 0x3C, - 0x0F, 0xF7, 0x8E, 0x38, 0x1F, 0xFF, 0x0E, 0x78, 0x3E, 0x1F, 0x07, 0x70, - 0x38, 0x0F, 0x07, 0x70, 0x78, 0x0F, 0x07, 0xE0, 0x70, 0x0E, 0x07, 0xE0, - 0x70, 0x0E, 0x07, 0xE0, 0xE0, 0x0E, 0x07, 0xE0, 0xE0, 0x1E, 0x0F, 0xE0, - 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x3C, 0x1E, 0xE0, 0xF0, 0x3C, 0x3C, 0xF0, - 0xF0, 0xFC, 0x7C, 0x70, 0x7F, 0xFF, 0xF8, 0x78, 0x3F, 0xCF, 0xF0, 0x3C, - 0x1F, 0x07, 0xC0, 0x3E, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x0F, - 0xC0, 0x01, 0x00, 0x07, 0xF0, 0x0F, 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, - 0xFF, 0xFF, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0x80, 0x01, 0xFF, - 0x80, 0x01, 0xFF, 0x80, 0x01, 0xF7, 0xC0, 0x03, 0xE7, 0xC0, 0x03, 0xE7, - 0xC0, 0x03, 0xE3, 0xE0, 0x07, 0xC3, 0xE0, 0x07, 0xC3, 0xE0, 0x07, 0xC1, - 0xF0, 0x0F, 0x81, 0xF0, 0x0F, 0x81, 0xF0, 0x0F, 0xFF, 0xF8, 0x1F, 0xFF, - 0xF8, 0x1F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFC, 0x3E, 0x00, 0x7C, 0x3E, 0x00, - 0x7E, 0x3E, 0x00, 0x3E, 0x7C, 0x00, 0x3E, 0x7C, 0x00, 0x3F, 0x7C, 0x00, - 0x1F, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0xFF, 0xFF, 0x8F, 0xFF, 0xFC, 0xF8, - 0x07, 0xEF, 0x80, 0x3E, 0xF8, 0x03, 0xEF, 0x80, 0x3E, 0xF8, 0x03, 0xEF, - 0x80, 0x3E, 0xF8, 0x07, 0xCF, 0xFF, 0xF8, 0xFF, 0xFF, 0x0F, 0xFF, 0xF8, - 0xFF, 0xFF, 0xCF, 0x80, 0x7E, 0xF8, 0x01, 0xEF, 0x80, 0x1F, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x3E, 0xFF, 0xFF, 0xEF, 0xFF, - 0xFC, 0xFF, 0xFF, 0x8F, 0xFF, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xFF, 0x80, - 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0xC3, 0xF8, 0x1F, 0x87, 0xE0, 0x1F, 0x9F, - 0x80, 0x1F, 0x3E, 0x00, 0x1F, 0x7C, 0x00, 0x3F, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x7D, 0xF0, 0x00, - 0xFB, 0xF0, 0x03, 0xF3, 0xF0, 0x0F, 0xC7, 0xF0, 0x3F, 0x87, 0xFF, 0xFE, - 0x07, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x01, 0xFE, 0x00, 0xFF, 0xFC, 0x07, - 0xFF, 0xF8, 0x3F, 0xFF, 0xE1, 0xFF, 0xFF, 0x8F, 0x80, 0xFE, 0x7C, 0x01, - 0xF3, 0xE0, 0x07, 0xDF, 0x00, 0x3E, 0xF8, 0x01, 0xF7, 0xC0, 0x07, 0xFE, - 0x00, 0x3F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x03, - 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0xFF, 0xC0, 0x0F, 0xFE, 0x00, 0x7D, 0xF0, - 0x03, 0xEF, 0x80, 0x3E, 0x7C, 0x07, 0xF3, 0xFF, 0xFF, 0x1F, 0xFF, 0xF0, - 0xFF, 0xFF, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, 0xDF, 0xFF, 0xFB, 0xFF, - 0xFF, 0x7F, 0xFF, 0xEF, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7F, 0xFF, 0xCF, 0xFF, - 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE7, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, - 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0xFF, 0xEF, 0xFF, 0xF7, - 0xFF, 0xFB, 0xFF, 0xFD, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, - 0x00, 0x7C, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x03, 0xFF, 0xE0, 0x07, 0xFF, - 0xF8, 0x0F, 0xFF, 0xFC, 0x1F, 0xC0, 0xFE, 0x3F, 0x00, 0x7E, 0x7E, 0x00, - 0x3F, 0x7C, 0x00, 0x1F, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xF8, 0x03, - 0xFF, 0xF8, 0x03, 0xFF, 0xFC, 0x00, 0x0F, 0x7C, 0x00, 0x1F, 0x7C, 0x00, - 0x1F, 0x7E, 0x00, 0x3F, 0x3F, 0x00, 0x7F, 0x1F, 0xC1, 0xFF, 0x0F, 0xFF, - 0xFF, 0x07, 0xFF, 0xE7, 0x03, 0xFF, 0xC7, 0x00, 0xFF, 0x07, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x01, 0xFF, - 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, - 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F, - 0xF8, 0x1F, 0xFC, 0x3F, 0x7F, 0xFE, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, - 0xF8, 0x01, 0xFB, 0xE0, 0x0F, 0xCF, 0x80, 0x7E, 0x3E, 0x03, 0xF0, 0xF8, - 0x1F, 0x83, 0xE0, 0xFC, 0x0F, 0x87, 0xE0, 0x3E, 0x3F, 0x00, 0xF8, 0xF8, - 0x03, 0xE7, 0xE0, 0x0F, 0xBF, 0x00, 0x3F, 0xF8, 0x00, 0xFF, 0xF0, 0x03, - 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x3F, 0xBF, 0x00, 0xFC, 0x7E, 0x03, 0xE0, - 0xFC, 0x0F, 0x81, 0xF8, 0x3E, 0x07, 0xE0, 0xF8, 0x0F, 0xC3, 0xE0, 0x1F, - 0x8F, 0x80, 0x7F, 0x3E, 0x00, 0xFC, 0xF8, 0x01, 0xFB, 0xE0, 0x03, 0xF0, - 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, - 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, - 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0x00, 0xFF, 0xFF, - 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0x81, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0x81, 0xFF, 0xFB, 0xC3, 0xDF, 0xFB, - 0xC3, 0xDF, 0xFB, 0xC3, 0xDF, 0xFB, 0xC3, 0xDF, 0xF9, 0xC7, 0xDF, 0xF9, - 0xE7, 0x9F, 0xF9, 0xE7, 0x9F, 0xF9, 0xE7, 0x9F, 0xF9, 0xE7, 0x9F, 0xF8, - 0xFF, 0x1F, 0xF8, 0xFF, 0x1F, 0xF8, 0xFF, 0x1F, 0xF8, 0xFF, 0x1F, 0xF8, - 0x7F, 0x1F, 0xF8, 0x7E, 0x1F, 0xF8, 0x7E, 0x1F, 0xF8, 0x7E, 0x1F, 0xF8, - 0x3E, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x1F, 0xFE, 0x01, 0xFF, 0xE0, 0x1F, - 0xFF, 0x01, 0xFF, 0xF0, 0x1F, 0xFF, 0x81, 0xFF, 0xF8, 0x1F, 0xFF, 0xC1, - 0xFF, 0xBC, 0x1F, 0xFB, 0xE1, 0xFF, 0x9F, 0x1F, 0xF9, 0xF1, 0xFF, 0x8F, - 0x9F, 0xF8, 0x79, 0xFF, 0x87, 0xDF, 0xF8, 0x3D, 0xFF, 0x83, 0xFF, 0xF8, - 0x1F, 0xFF, 0x81, 0xFF, 0xF8, 0x0F, 0xFF, 0x80, 0xFF, 0xF8, 0x07, 0xFF, - 0x80, 0x3F, 0xF8, 0x03, 0xFF, 0x80, 0x1F, 0x00, 0x7F, 0x00, 0x01, 0xFF, - 0xF0, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x01, 0xFC, 0x1F, 0xC1, 0xF8, - 0x03, 0xF1, 0xF8, 0x00, 0xFC, 0xF8, 0x00, 0x3E, 0x7C, 0x00, 0x1F, 0x7C, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, - 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, 0x1F, 0xF8, 0x00, 0x0F, - 0xBE, 0x00, 0x0F, 0x9F, 0x00, 0x07, 0xCF, 0xC0, 0x07, 0xE3, 0xF0, 0x07, - 0xE0, 0xFE, 0x0F, 0xE0, 0x7F, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFF, 0xFC, 0x1F, 0xFF, 0xE3, 0xFF, 0xFE, - 0x7F, 0xFF, 0xEF, 0x80, 0xFF, 0xF0, 0x0F, 0xFE, 0x00, 0xFF, 0xC0, 0x1F, - 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xE0, 0x1F, 0xFC, 0x07, 0xEF, 0xFF, 0xFD, - 0xFF, 0xFF, 0x3F, 0xFF, 0xC7, 0xFF, 0xE0, 0xF8, 0x00, 0x1F, 0x00, 0x03, - 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, - 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFF, - 0xF0, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x01, 0xFC, 0x1F, 0xC1, 0xF8, - 0x03, 0xF1, 0xF8, 0x00, 0xFC, 0xF8, 0x00, 0x3E, 0x7C, 0x00, 0x1F, 0x7C, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, - 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, 0x1F, 0xF8, 0x01, 0x0F, - 0xBE, 0x01, 0xCF, 0x9F, 0x01, 0xFF, 0xCF, 0xC0, 0x7F, 0xE3, 0xF0, 0x1F, - 0xE0, 0xFE, 0x0F, 0xF0, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFE, 0x03, 0xFF, - 0xEF, 0x80, 0x3F, 0xC3, 0x80, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0x07, 0xFF, - 0xFE, 0x3F, 0xFF, 0xF9, 0xFF, 0xFF, 0xCF, 0x80, 0x3F, 0x7C, 0x00, 0xFB, - 0xE0, 0x07, 0xDF, 0x00, 0x3E, 0xF8, 0x01, 0xF7, 0xC0, 0x0F, 0x3E, 0x00, - 0xF9, 0xFF, 0xFF, 0x8F, 0xFF, 0xF8, 0x7F, 0xFF, 0xC3, 0xFF, 0xFF, 0x1F, - 0x00, 0xFC, 0xF8, 0x03, 0xE7, 0xC0, 0x1F, 0x3E, 0x00, 0xF9, 0xF0, 0x07, - 0xCF, 0x80, 0x3E, 0x7C, 0x01, 0xF3, 0xE0, 0x0F, 0x9F, 0x00, 0x7C, 0xF8, - 0x03, 0xF7, 0xC0, 0x0F, 0xC0, 0x07, 0xF8, 0x01, 0xFF, 0xF0, 0x3F, 0xFF, - 0x87, 0xFF, 0xFC, 0x7E, 0x0F, 0xCF, 0xC0, 0x7E, 0xF8, 0x03, 0xEF, 0x80, - 0x3E, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0x00, 0x07, 0xFF, 0xC0, 0x3F, - 0xFF, 0x81, 0xFF, 0xFC, 0x03, 0xFF, 0xE0, 0x01, 0xFF, 0x00, 0x03, 0xF0, - 0x00, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xFC, 0x03, 0xFF, 0xE0, 0x7E, - 0x7F, 0xFF, 0xE3, 0xFF, 0xFC, 0x1F, 0xFF, 0x00, 0x3F, 0xC0, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x1F, 0x00, 0x03, 0xE0, - 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, - 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, - 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, - 0x80, 0x1F, 0x7C, 0x03, 0xE7, 0xE0, 0x7E, 0x3F, 0xFF, 0xC3, 0xFF, 0xFC, - 0x0F, 0xFF, 0x00, 0x3F, 0xC0, 0xF8, 0x00, 0xFB, 0xE0, 0x03, 0xE7, 0xC0, - 0x1F, 0x9F, 0x00, 0x7C, 0x7C, 0x01, 0xF0, 0xF8, 0x07, 0xC3, 0xE0, 0x3E, - 0x0F, 0x80, 0xF8, 0x1E, 0x03, 0xE0, 0x7C, 0x1F, 0x01, 0xF0, 0x7C, 0x03, - 0xC1, 0xF0, 0x0F, 0x87, 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x01, 0xE3, - 0xC0, 0x07, 0xCF, 0x00, 0x1F, 0x7C, 0x00, 0x3D, 0xE0, 0x00, 0xFF, 0x80, - 0x03, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x00, - 0xF8, 0x00, 0x03, 0xE0, 0x00, 0xF8, 0x07, 0xC0, 0x3F, 0xF8, 0x07, 0xE0, - 0x3E, 0xFC, 0x07, 0xE0, 0x3E, 0x7C, 0x0F, 0xE0, 0x3E, 0x7C, 0x0F, 0xE0, - 0x7E, 0x7C, 0x0F, 0xE0, 0x7C, 0x7C, 0x0F, 0xF0, 0x7C, 0x3E, 0x0F, 0xF0, - 0x7C, 0x3E, 0x1E, 0xF0, 0x78, 0x3E, 0x1E, 0x70, 0xF8, 0x1E, 0x1E, 0x70, - 0xF8, 0x1E, 0x1E, 0x78, 0xF8, 0x1F, 0x1E, 0x78, 0xF0, 0x1F, 0x3C, 0x78, - 0xF0, 0x0F, 0x3C, 0x39, 0xF0, 0x0F, 0x3C, 0x3D, 0xF0, 0x0F, 0x3C, 0x3D, - 0xE0, 0x0F, 0xBC, 0x3D, 0xE0, 0x07, 0xF8, 0x3D, 0xE0, 0x07, 0xF8, 0x1F, - 0xE0, 0x07, 0xF8, 0x1F, 0xC0, 0x03, 0xF8, 0x1F, 0xC0, 0x03, 0xF8, 0x1F, - 0xC0, 0x03, 0xF0, 0x0F, 0x80, 0x03, 0xF0, 0x0F, 0x80, 0x01, 0xF0, 0x0F, - 0x80, 0xFE, 0x01, 0xF9, 0xF8, 0x07, 0xE3, 0xF0, 0x3F, 0x0F, 0xC0, 0xF8, - 0x1F, 0x87, 0xE0, 0x7E, 0x3F, 0x00, 0xFC, 0xFC, 0x01, 0xF7, 0xE0, 0x07, - 0xFF, 0x00, 0x0F, 0xFC, 0x00, 0x3F, 0xE0, 0x00, 0x7F, 0x00, 0x00, 0xFC, - 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0x80, 0x03, 0xFF, 0x00, - 0x1F, 0x7E, 0x00, 0xFC, 0xF8, 0x03, 0xE3, 0xF0, 0x1F, 0x87, 0xC0, 0x7C, - 0x1F, 0x83, 0xF0, 0x3F, 0x1F, 0x80, 0xFC, 0x7E, 0x01, 0xFB, 0xF0, 0x07, - 0xF0, 0xFC, 0x01, 0xFF, 0xE0, 0x0F, 0x9F, 0x00, 0xFC, 0xFC, 0x07, 0xC3, - 0xE0, 0x7E, 0x1F, 0x83, 0xE0, 0x7C, 0x1F, 0x03, 0xF1, 0xF0, 0x0F, 0x8F, - 0x80, 0x7E, 0xF8, 0x01, 0xF7, 0xC0, 0x0F, 0xFC, 0x00, 0x3F, 0xE0, 0x00, - 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x7E, 0x00, 0x1F, - 0x80, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF8, - 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x00, - 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, - 0xFC, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, - 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, - 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, - 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x38, 0x06, - 0x01, 0x80, 0x70, 0x0C, 0x03, 0x00, 0xE0, 0x18, 0x06, 0x01, 0xC0, 0x30, - 0x0C, 0x03, 0x00, 0xE0, 0x18, 0x06, 0x01, 0xC0, 0x30, 0x0C, 0x03, 0x80, - 0x60, 0x18, 0x07, 0x01, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x1F, 0x1F, - 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, - 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0xFF, 0xFF, - 0xFF, 0xFF, 0x03, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x0F, 0xF0, 0x0F, 0xF0, - 0x0F, 0x78, 0x1E, 0x78, 0x1E, 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x1E, - 0x78, 0x1E, 0x78, 0x1E, 0x70, 0x0F, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0xF8, 0xF0, 0xF0, 0xE0, 0xE0, 0x07, 0xF8, 0x07, - 0xFF, 0x83, 0xFF, 0xF1, 0xFF, 0xFE, 0x7C, 0x1F, 0xBE, 0x03, 0xE0, 0x00, - 0xF8, 0x01, 0xFE, 0x0F, 0xFF, 0x8F, 0xFF, 0xE7, 0xF8, 0xFB, 0xF0, 0x3E, - 0xF8, 0x0F, 0xBE, 0x07, 0xEF, 0xC3, 0xFB, 0xFF, 0xFE, 0x7F, 0xFF, 0x8F, - 0xFB, 0xF1, 0xF8, 0xFC, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE7, 0xE0, 0xFB, 0xFC, - 0x3F, 0xFF, 0xCF, 0xFF, 0xF3, 0xF8, 0x7E, 0xFC, 0x0F, 0xBF, 0x03, 0xFF, - 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xF0, - 0x3F, 0xFC, 0x0F, 0xBF, 0x87, 0xEF, 0xFF, 0xF3, 0xFF, 0xFC, 0xFB, 0xFC, - 0x3E, 0x7E, 0x00, 0x03, 0xF0, 0x07, 0xFE, 0x0F, 0xFF, 0x87, 0xFF, 0xE7, - 0xE1, 0xFB, 0xE0, 0x7F, 0xE0, 0x3F, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, - 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0xFB, 0xE0, 0x7D, 0xF8, 0x7E, 0x7F, - 0xFE, 0x3F, 0xFE, 0x0F, 0xFE, 0x00, 0xFC, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, - 0xF8, 0x1F, 0x1F, 0x0F, 0xFB, 0xE3, 0xFF, 0xFC, 0xFF, 0xFF, 0xBF, 0x8F, - 0xF7, 0xC0, 0x7F, 0xF8, 0x0F, 0xFE, 0x00, 0xFF, 0xC0, 0x1F, 0xF8, 0x03, - 0xFF, 0x00, 0x7F, 0xE0, 0x0F, 0xFE, 0x03, 0xF7, 0xC0, 0x7E, 0xFC, 0x3F, - 0xCF, 0xFF, 0xF8, 0xFF, 0xFF, 0x0F, 0xFB, 0xE0, 0xFC, 0x7C, 0x07, 0xE0, - 0x07, 0xFE, 0x03, 0xFF, 0xE0, 0xFF, 0xF8, 0x7E, 0x1F, 0x1F, 0x03, 0xCF, - 0x80, 0xFB, 0xE0, 0x1E, 0xFF, 0xFF, 0xBF, 0xFF, 0xEF, 0xFF, 0xFB, 0xE0, - 0x00, 0xF8, 0x00, 0x3F, 0x03, 0xE7, 0xE1, 0xF9, 0xFF, 0xFC, 0x3F, 0xFE, - 0x07, 0xFF, 0x00, 0x7F, 0x00, 0x0F, 0xC7, 0xF3, 0xFC, 0xFF, 0x3E, 0x0F, - 0x83, 0xE3, 0xFE, 0xFF, 0xBF, 0xE3, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, - 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, - 0x0F, 0x80, 0x07, 0xC7, 0xC3, 0xFD, 0xF3, 0xFF, 0xFC, 0xFF, 0xFF, 0x7E, - 0x1F, 0xDF, 0x03, 0xFF, 0xC0, 0xFF, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, - 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xFC, 0x0F, 0xDF, 0x03, 0xF7, 0xE1, 0xFD, - 0xFF, 0xFF, 0x3F, 0xFF, 0xC7, 0xFD, 0xF0, 0x7C, 0x7C, 0x00, 0x1F, 0x00, - 0x07, 0xFF, 0x03, 0xF7, 0xE1, 0xF9, 0xFF, 0xFC, 0x3F, 0xFE, 0x01, 0xFE, - 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, - 0xC0, 0x03, 0xE0, 0x01, 0xF1, 0xF0, 0xFB, 0xFE, 0x7F, 0xFF, 0xBF, 0xFF, - 0xDF, 0xC3, 0xFF, 0xC0, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, - 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, - 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xC0, 0xFF, 0xFF, 0xF0, - 0x00, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0x3E, 0x7C, 0xF9, 0xF0, 0x00, 0x00, 0x1F, 0x3E, 0x7C, 0xF9, - 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, - 0x7C, 0xF9, 0xF3, 0xFF, 0xFF, 0xFE, 0xF8, 0xF8, 0x00, 0x7C, 0x00, 0x3E, - 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x3E, - 0xF8, 0x3E, 0x7C, 0x3F, 0x3E, 0x3F, 0x1F, 0x3F, 0x0F, 0x9F, 0x07, 0xDF, - 0x03, 0xFF, 0x81, 0xFF, 0xC0, 0xFF, 0xF0, 0x7F, 0xF8, 0x3F, 0x7E, 0x1F, - 0x1F, 0x0F, 0x87, 0xC7, 0xC3, 0xF3, 0xE0, 0xF9, 0xF0, 0x7E, 0xF8, 0x1F, - 0x7C, 0x0F, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xF8, 0xF8, 0x3F, 0x1F, - 0x7F, 0x9F, 0xF3, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xC3, 0xF8, - 0x7F, 0xF8, 0x3F, 0x07, 0xFE, 0x07, 0xC0, 0xFF, 0xC0, 0xF8, 0x1F, 0xF8, - 0x1F, 0x03, 0xFF, 0x03, 0xE0, 0x7F, 0xE0, 0x7C, 0x0F, 0xFC, 0x0F, 0x81, - 0xFF, 0x81, 0xF0, 0x3F, 0xF0, 0x3E, 0x07, 0xFE, 0x07, 0xC0, 0xFF, 0xC0, - 0xF8, 0x1F, 0xF8, 0x1F, 0x03, 0xFF, 0x03, 0xE0, 0x7F, 0xE0, 0x7C, 0x0F, - 0x80, 0xF8, 0xF8, 0x7D, 0xFF, 0x3F, 0xFF, 0xDF, 0xFF, 0xEF, 0xE1, 0xFF, - 0xE0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, - 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, - 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xE0, 0x03, 0xF8, 0x01, 0xFF, 0xC0, 0x7F, - 0xFC, 0x1F, 0xFF, 0xC7, 0xF0, 0xFC, 0xF8, 0x0F, 0xBF, 0x01, 0xFF, 0xC0, - 0x1F, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xE0, 0x0F, 0xFC, 0x01, 0xFF, 0xC0, - 0x7E, 0xF8, 0x0F, 0x9F, 0x87, 0xF1, 0xFF, 0xFC, 0x1F, 0xFF, 0x01, 0xFF, - 0xC0, 0x0F, 0xE0, 0x00, 0xF8, 0xF8, 0x3E, 0xFF, 0x8F, 0xFF, 0xF3, 0xFF, - 0xFC, 0xFE, 0x1F, 0xBF, 0x03, 0xEF, 0xC0, 0xFF, 0xE0, 0x1F, 0xF8, 0x07, - 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xFC, 0x0F, 0xFF, 0x03, 0xEF, - 0xE1, 0xFB, 0xFF, 0xFC, 0xFF, 0xFF, 0x3E, 0xFF, 0x0F, 0x8F, 0x83, 0xE0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0xE3, 0xE1, 0xFF, 0x7C, 0x7F, 0xFF, 0x9F, 0xFF, - 0xF7, 0xF1, 0xFE, 0xF8, 0x0F, 0xFF, 0x01, 0xFF, 0xC0, 0x1F, 0xF8, 0x03, - 0xFF, 0x00, 0x7F, 0xE0, 0x0F, 0xFC, 0x01, 0xFF, 0xC0, 0x7E, 0xF8, 0x0F, - 0xDF, 0x83, 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE1, 0xFF, 0x7C, 0x1F, 0x8F, - 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, - 0x00, 0x03, 0xE0, 0x00, 0x7C, 0xF8, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xE1, - 0xF8, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, - 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x00, 0x07, 0xF0, 0x0F, 0xFE, - 0x0F, 0xFF, 0x87, 0xFF, 0xE7, 0xE1, 0xF3, 0xE0, 0x79, 0xF8, 0x00, 0xFF, - 0x80, 0x3F, 0xFC, 0x1F, 0xFF, 0x83, 0xFF, 0xC0, 0x3F, 0xF0, 0x01, 0xFF, - 0xC0, 0x7D, 0xF0, 0x7E, 0xFF, 0xFE, 0x3F, 0xFF, 0x0F, 0xFF, 0x01, 0xFE, - 0x00, 0x3E, 0x1F, 0x0F, 0x87, 0xC3, 0xE7, 0xFF, 0xFF, 0xFF, 0x3E, 0x1F, - 0x0F, 0x87, 0xC3, 0xE1, 0xF0, 0xF8, 0x7C, 0x3E, 0x1F, 0x0F, 0x87, 0xF3, - 0xF8, 0xFC, 0x3E, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, - 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, - 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0xFF, 0xF0, 0xFF, 0xFF, - 0xFF, 0x7F, 0xFF, 0x9F, 0xF7, 0xC7, 0xE3, 0xE0, 0x7C, 0x07, 0xCF, 0x80, - 0xF9, 0xF0, 0x1F, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, 0x7C, 0x1F, 0x07, 0x83, - 0xC0, 0xF8, 0xF8, 0x1F, 0x1F, 0x01, 0xE3, 0xC0, 0x3E, 0x78, 0x07, 0xDF, - 0x00, 0x7B, 0xC0, 0x0F, 0xF8, 0x01, 0xFF, 0x00, 0x1F, 0xC0, 0x03, 0xF8, - 0x00, 0x7F, 0x00, 0x07, 0xC0, 0x00, 0xFC, 0x1F, 0x03, 0xEF, 0x83, 0xE0, - 0x7D, 0xF0, 0x7E, 0x1F, 0x3E, 0x0F, 0xC3, 0xE3, 0xC3, 0xF8, 0x7C, 0x7C, - 0x7F, 0x0F, 0x0F, 0x8F, 0xF3, 0xE1, 0xF1, 0xDE, 0x7C, 0x1E, 0x7B, 0xCF, - 0x83, 0xEF, 0x39, 0xE0, 0x7D, 0xE7, 0x3C, 0x07, 0xB8, 0xFF, 0x80, 0xF7, - 0x1F, 0xE0, 0x1F, 0xE3, 0xFC, 0x03, 0xFC, 0x3F, 0x80, 0x3F, 0x07, 0xF0, - 0x07, 0xE0, 0xFC, 0x00, 0xFC, 0x1F, 0x80, 0x0F, 0x83, 0xF0, 0x00, 0xFC, - 0x1F, 0x9F, 0x07, 0xE7, 0xE3, 0xF0, 0xF8, 0xF8, 0x1F, 0x7E, 0x07, 0xDF, - 0x00, 0xFF, 0x80, 0x1F, 0xE0, 0x07, 0xF0, 0x00, 0xF8, 0x00, 0x7F, 0x00, - 0x3F, 0xE0, 0x0F, 0xF8, 0x07, 0xDF, 0x03, 0xF7, 0xE0, 0xF8, 0xF8, 0x7E, - 0x3F, 0x1F, 0x07, 0xEF, 0xC0, 0xF8, 0x7C, 0x03, 0xEF, 0x80, 0xF9, 0xF8, - 0x1F, 0x1F, 0x03, 0xE3, 0xE0, 0xF8, 0x7C, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, - 0x78, 0x0F, 0x1F, 0x01, 0xF3, 0xC0, 0x3E, 0x78, 0x03, 0xDF, 0x00, 0x7F, - 0xC0, 0x0F, 0xF8, 0x00, 0xFF, 0x00, 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, - 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x07, 0xF8, - 0x00, 0xFE, 0x00, 0x1F, 0x80, 0x03, 0xE0, 0x00, 0x7F, 0xFE, 0x7F, 0xFE, - 0x7F, 0xFE, 0x7F, 0xFE, 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, - 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, - 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x87, - 0xC7, 0xE3, 0xF1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC1, - 0xE0, 0xF0, 0xF9, 0xF8, 0xF0, 0x7E, 0x0F, 0x83, 0xC1, 0xE0, 0xF0, 0x78, - 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xFC, 0x7E, 0x1F, 0x07, 0x80, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xE0, 0xF0, 0x7C, 0x3E, 0x1F, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, - 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x7C, 0x1F, 0x83, 0xC7, 0xE7, 0xC3, - 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC7, 0xE3, 0xE1, - 0xF0, 0xF0, 0x00, 0x3C, 0x00, 0xFE, 0x0F, 0xFE, 0x1E, 0x1F, 0xFC, 0x0F, - 0xC0, 0x0F, 0x00}; - -const GFXglyph FreeSansBold18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 10, 0, 1}, // 0x20 ' ' - {0, 5, 25, 12, 4, -24}, // 0x21 '!' - {16, 13, 9, 17, 2, -25}, // 0x22 '"' - {31, 20, 24, 19, 0, -23}, // 0x23 '#' - {91, 19, 29, 19, 0, -25}, // 0x24 '$' - {160, 29, 25, 31, 1, -24}, // 0x25 '%' - {251, 22, 25, 25, 2, -24}, // 0x26 '&' - {320, 5, 9, 9, 2, -25}, // 0x27 ''' - {326, 9, 33, 12, 1, -25}, // 0x28 '(' - {364, 9, 33, 12, 1, -25}, // 0x29 ')' - {402, 12, 11, 14, 0, -25}, // 0x2A '*' - {419, 16, 16, 20, 2, -15}, // 0x2B '+' - {451, 5, 11, 9, 2, -4}, // 0x2C ',' - {458, 9, 4, 12, 1, -10}, // 0x2D '-' - {463, 5, 5, 9, 2, -4}, // 0x2E '.' - {467, 9, 25, 10, 0, -24}, // 0x2F '/' - {496, 17, 25, 19, 1, -24}, // 0x30 '0' - {550, 10, 25, 19, 3, -24}, // 0x31 '1' - {582, 17, 25, 19, 1, -24}, // 0x32 '2' - {636, 17, 25, 19, 1, -24}, // 0x33 '3' - {690, 16, 25, 19, 2, -24}, // 0x34 '4' - {740, 17, 25, 19, 1, -24}, // 0x35 '5' - {794, 18, 25, 19, 1, -24}, // 0x36 '6' - {851, 17, 25, 19, 1, -24}, // 0x37 '7' - {905, 17, 25, 19, 1, -24}, // 0x38 '8' - {959, 17, 25, 19, 1, -24}, // 0x39 '9' - {1013, 5, 18, 9, 2, -17}, // 0x3A ':' - {1025, 5, 24, 9, 2, -17}, // 0x3B ';' - {1040, 18, 17, 20, 1, -16}, // 0x3C '<' - {1079, 17, 12, 20, 2, -13}, // 0x3D '=' - {1105, 18, 17, 20, 1, -16}, // 0x3E '>' - {1144, 18, 26, 21, 2, -25}, // 0x3F '?' - {1203, 32, 31, 34, 1, -25}, // 0x40 '@' - {1327, 24, 26, 24, 0, -25}, // 0x41 'A' - {1405, 20, 26, 25, 3, -25}, // 0x42 'B' - {1470, 23, 26, 25, 1, -25}, // 0x43 'C' - {1545, 21, 26, 25, 3, -25}, // 0x44 'D' - {1614, 19, 26, 23, 3, -25}, // 0x45 'E' - {1676, 17, 26, 22, 3, -25}, // 0x46 'F' - {1732, 24, 26, 27, 1, -25}, // 0x47 'G' - {1810, 20, 26, 26, 3, -25}, // 0x48 'H' - {1875, 5, 26, 11, 3, -25}, // 0x49 'I' - {1892, 16, 26, 20, 1, -25}, // 0x4A 'J' - {1944, 22, 26, 25, 3, -25}, // 0x4B 'K' - {2016, 17, 26, 22, 3, -25}, // 0x4C 'L' - {2072, 24, 26, 30, 3, -25}, // 0x4D 'M' - {2150, 20, 26, 26, 3, -25}, // 0x4E 'N' - {2215, 25, 26, 27, 1, -25}, // 0x4F 'O' - {2297, 19, 26, 24, 3, -25}, // 0x50 'P' - {2359, 25, 27, 27, 1, -25}, // 0x51 'Q' - {2444, 21, 26, 25, 3, -25}, // 0x52 'R' - {2513, 20, 26, 24, 2, -25}, // 0x53 'S' - {2578, 19, 26, 23, 2, -25}, // 0x54 'T' - {2640, 20, 26, 26, 3, -25}, // 0x55 'U' - {2705, 22, 26, 23, 1, -25}, // 0x56 'V' - {2777, 32, 26, 34, 1, -25}, // 0x57 'W' - {2881, 22, 26, 24, 1, -25}, // 0x58 'X' - {2953, 21, 26, 22, 1, -25}, // 0x59 'Y' - {3022, 19, 26, 21, 1, -25}, // 0x5A 'Z' - {3084, 8, 33, 12, 2, -25}, // 0x5B '[' - {3117, 10, 25, 10, 0, -24}, // 0x5C '\' - {3149, 8, 33, 12, 1, -25}, // 0x5D ']' - {3182, 16, 15, 20, 2, -23}, // 0x5E '^' - {3212, 21, 3, 19, -1, 5}, // 0x5F '_' - {3220, 7, 5, 9, 1, -25}, // 0x60 '`' - {3225, 18, 19, 20, 1, -18}, // 0x61 'a' - {3268, 18, 26, 22, 2, -25}, // 0x62 'b' - {3327, 17, 19, 20, 1, -18}, // 0x63 'c' - {3368, 19, 26, 22, 1, -25}, // 0x64 'd' - {3430, 18, 19, 20, 1, -18}, // 0x65 'e' - {3473, 10, 26, 12, 1, -25}, // 0x66 'f' - {3506, 18, 26, 21, 1, -18}, // 0x67 'g' - {3565, 17, 26, 21, 2, -25}, // 0x68 'h' - {3621, 5, 26, 10, 2, -25}, // 0x69 'i' - {3638, 7, 33, 10, 0, -25}, // 0x6A 'j' - {3667, 17, 26, 20, 2, -25}, // 0x6B 'k' - {3723, 5, 26, 9, 2, -25}, // 0x6C 'l' - {3740, 27, 19, 31, 2, -18}, // 0x6D 'm' - {3805, 17, 19, 21, 2, -18}, // 0x6E 'n' - {3846, 19, 19, 21, 1, -18}, // 0x6F 'o' - {3892, 18, 26, 22, 2, -18}, // 0x70 'p' - {3951, 19, 26, 22, 1, -18}, // 0x71 'q' - {4013, 11, 19, 14, 2, -18}, // 0x72 'r' - {4040, 17, 19, 19, 1, -18}, // 0x73 's' - {4081, 9, 23, 12, 1, -22}, // 0x74 't' - {4107, 17, 19, 21, 2, -18}, // 0x75 'u' - {4148, 19, 19, 19, 0, -18}, // 0x76 'v' - {4194, 27, 19, 27, 0, -18}, // 0x77 'w' - {4259, 18, 19, 19, 1, -18}, // 0x78 'x' - {4302, 19, 26, 19, 0, -18}, // 0x79 'y' - {4364, 16, 19, 18, 1, -18}, // 0x7A 'z' - {4402, 9, 33, 14, 1, -25}, // 0x7B '{' - {4440, 3, 33, 10, 4, -25}, // 0x7C '|' - {4453, 9, 33, 14, 3, -25}, // 0x7D '}' - {4491, 15, 6, 18, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSansBold18pt7b PROGMEM = { - (uint8_t *)FreeSansBold18pt7bBitmaps, (GFXglyph *)FreeSansBold18pt7bGlyphs, - 0x20, 0x7E, 42}; - -// Approx. 5175 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h deleted file mode 100644 index 5dd7a54..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h +++ /dev/null @@ -1,786 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold24pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xDF, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xC7, 0x0E, 0x1C, 0x00, 0x00, 0x07, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFE, 0x1F, 0xFF, 0x87, 0xFF, 0xE1, - 0xFF, 0xF8, 0x7F, 0xFE, 0x1F, 0xFF, 0x87, 0xFF, 0xE1, 0xFD, 0xF0, 0x3E, - 0x7C, 0x0F, 0x9F, 0x03, 0xE3, 0x80, 0x70, 0xE0, 0x1C, 0x00, 0xF8, 0x3E, - 0x00, 0x3E, 0x0F, 0x80, 0x0F, 0x83, 0xE0, 0x03, 0xE0, 0xF8, 0x00, 0xF8, - 0x7C, 0x00, 0x7C, 0x1F, 0x00, 0x1F, 0x07, 0xC1, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xFF, - 0x03, 0xE0, 0xF8, 0x00, 0xF8, 0x3E, 0x00, 0x3E, 0x1F, 0x00, 0x1F, 0x07, - 0xC0, 0x07, 0xC1, 0xF0, 0x01, 0xF0, 0x7C, 0x00, 0x7C, 0x1F, 0x03, 0xFF, - 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF3, - 0xFF, 0xFF, 0xFC, 0x0F, 0x87, 0xC0, 0x07, 0xC1, 0xF0, 0x01, 0xF0, 0x7C, - 0x00, 0x7C, 0x1F, 0x00, 0x1F, 0x07, 0xC0, 0x07, 0xC3, 0xE0, 0x03, 0xE0, - 0xF8, 0x00, 0xF8, 0x3E, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF8, 0x7F, 0x73, 0xFE, 0x7F, 0x38, - 0xFF, 0x3F, 0x1C, 0x3F, 0xDF, 0x8E, 0x0F, 0xEF, 0xC7, 0x07, 0xF7, 0xE3, - 0x80, 0x03, 0xF9, 0xC0, 0x01, 0xFE, 0xE0, 0x00, 0x7F, 0xF0, 0x00, 0x3F, - 0xFC, 0x00, 0x0F, 0xFF, 0xC0, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0x80, - 0x0F, 0xFF, 0xE0, 0x01, 0xFF, 0xF8, 0x00, 0xE7, 0xFC, 0x00, 0x71, 0xFF, - 0x00, 0x38, 0x7F, 0xFF, 0x1C, 0x1F, 0xFF, 0x8E, 0x0F, 0xFF, 0xC7, 0x07, - 0xFF, 0xE3, 0x87, 0xFB, 0xF9, 0xC3, 0xF9, 0xFE, 0xE7, 0xFC, 0x7F, 0xFF, - 0xFC, 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x00, 0x3F, - 0xE0, 0x00, 0x03, 0x80, 0x00, 0x01, 0xC0, 0x00, 0x00, 0xE0, 0x00, 0x00, - 0x70, 0x00, 0x03, 0xE0, 0x00, 0x3C, 0x00, 0x1F, 0xF0, 0x00, 0x78, 0x00, - 0x7F, 0xF8, 0x01, 0xE0, 0x01, 0xFF, 0xF0, 0x03, 0xC0, 0x07, 0xFF, 0xF0, - 0x0F, 0x00, 0x0F, 0x83, 0xE0, 0x1E, 0x00, 0x3E, 0x03, 0xE0, 0x78, 0x00, - 0x78, 0x03, 0xC0, 0xF0, 0x00, 0xF0, 0x07, 0x83, 0xC0, 0x01, 0xE0, 0x0F, - 0x07, 0x80, 0x03, 0xE0, 0x3E, 0x1E, 0x00, 0x03, 0xE0, 0xF8, 0x3C, 0x00, - 0x07, 0xFF, 0xF0, 0xF0, 0x00, 0x07, 0xFF, 0xC1, 0xE0, 0x00, 0x07, 0xFF, - 0x07, 0x80, 0x00, 0x07, 0xFC, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x3C, 0x00, - 0x00, 0x00, 0x00, 0xF0, 0x1F, 0x00, 0x00, 0x01, 0xE0, 0xFF, 0x80, 0x00, - 0x07, 0x87, 0xFF, 0xC0, 0x00, 0x0F, 0x0F, 0xFF, 0x80, 0x00, 0x3C, 0x3F, - 0xFF, 0x80, 0x00, 0x78, 0xFC, 0x1F, 0x00, 0x01, 0xE1, 0xF0, 0x1F, 0x00, - 0x03, 0xC3, 0xC0, 0x1E, 0x00, 0x0F, 0x07, 0x80, 0x3C, 0x00, 0x1E, 0x0F, - 0x00, 0x78, 0x00, 0x78, 0x1F, 0x01, 0xF0, 0x00, 0xF0, 0x1F, 0x07, 0xC0, - 0x03, 0xC0, 0x3F, 0xFF, 0x80, 0x07, 0x80, 0x3F, 0xFE, 0x00, 0x1E, 0x00, - 0x7F, 0xF8, 0x00, 0x7C, 0x00, 0x3F, 0xE0, 0x00, 0xF0, 0x00, 0x1F, 0x00, - 0x00, 0x3F, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, - 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xCF, 0xC0, 0x00, 0xFE, - 0x1F, 0x00, 0x03, 0xF8, 0x7C, 0x00, 0x0F, 0xE1, 0xF0, 0x00, 0x3F, 0xC7, - 0xC0, 0x00, 0x7F, 0x3E, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x03, 0xFF, 0xC0, - 0x00, 0x07, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x07, 0xFF, 0x03, 0xE0, 0x3F, 0xFE, 0x0F, 0x83, 0xFF, 0xF8, 0x3E, 0x1F, - 0xF3, 0xF1, 0xF8, 0x7F, 0x07, 0xE7, 0xE3, 0xFC, 0x1F, 0xFF, 0x0F, 0xE0, - 0x3F, 0xFC, 0x3F, 0x80, 0x7F, 0xF0, 0xFE, 0x01, 0xFF, 0x83, 0xF8, 0x03, - 0xFE, 0x0F, 0xF0, 0x0F, 0xF0, 0x3F, 0xE0, 0x7F, 0xE0, 0x7F, 0xC3, 0xFF, - 0xC1, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFB, 0xFC, - 0x0F, 0xFF, 0xC7, 0xF8, 0x1F, 0xFE, 0x0F, 0xE0, 0x0F, 0xE0, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBE, 0x7C, 0xF8, 0xE1, 0xC0, 0x00, - 0xF0, 0x0F, 0x80, 0xF8, 0x07, 0xC0, 0x7C, 0x07, 0xE0, 0x3E, 0x03, 0xF0, - 0x1F, 0x80, 0xF8, 0x0F, 0xC0, 0x7E, 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x0F, - 0xC0, 0xFC, 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, - 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0x3F, 0x00, 0xF8, 0x07, 0xE0, 0x3F, 0x01, - 0xF8, 0x07, 0xC0, 0x3F, 0x01, 0xF8, 0x07, 0xC0, 0x3F, 0x00, 0xF8, 0x07, - 0xE0, 0x1F, 0x00, 0xF8, 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x01, 0xE0, 0x78, - 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, - 0x0F, 0xC0, 0x3E, 0x01, 0xF8, 0x0F, 0xC0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, - 0x7E, 0x01, 0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x1F, 0x80, 0xFC, 0x07, - 0xE0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xE0, 0x3F, 0x01, 0xF8, - 0x0F, 0xC0, 0x7C, 0x07, 0xE0, 0x3F, 0x01, 0xF0, 0x1F, 0x80, 0xF8, 0x0F, - 0xC0, 0x7C, 0x07, 0xE0, 0x3E, 0x03, 0xF0, 0x1F, 0x01, 0xF0, 0x00, 0x03, - 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x06, 0x38, 0xDF, 0xFF, 0xFF, 0xFF, - 0x9F, 0xFE, 0x07, 0xC0, 0x1F, 0xC0, 0x3F, 0x80, 0xF7, 0x83, 0xC7, 0x87, - 0x8F, 0x02, 0x08, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, - 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, - 0x00, 0x3E, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x1F, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x87, 0x0E, 0x1C, 0x78, 0xEF, 0xDF, 0x38, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x80, 0x00, 0x38, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0x00, - 0x70, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x38, - 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x38, 0x03, 0xC0, 0x1C, 0x00, - 0xE0, 0x07, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0E, 0x00, 0x70, - 0x03, 0x80, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x00, 0x00, - 0xFF, 0x00, 0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF8, 0x1F, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x3F, 0xC3, 0xFC, 0x7F, 0x81, 0xFE, 0x7F, - 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x7F, - 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x81, 0xFE, 0x3F, - 0xC3, 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, 0x1F, 0xFF, 0xF8, 0x0F, - 0xFF, 0xF0, 0x03, 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x00, 0x3C, 0x01, 0xF0, - 0x07, 0xC0, 0x3F, 0x01, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, - 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, - 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, - 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x01, 0xFE, 0x00, 0x0F, 0xFF, 0x80, - 0x3F, 0xFF, 0x80, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0x9F, - 0xE0, 0xFF, 0x7F, 0x80, 0xFF, 0xFE, 0x01, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, - 0x03, 0xFF, 0xF0, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x7F, 0x80, 0x00, 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x7F, - 0xC0, 0x01, 0xFF, 0x00, 0x07, 0xF8, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0x00, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x00, 0x01, - 0xFC, 0x00, 0x03, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xBF, - 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFC, 0x01, 0xFE, 0x00, 0x0F, - 0xFF, 0x80, 0x7F, 0xFF, 0x81, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0x8F, 0xFF, - 0xFF, 0x1F, 0xE1, 0xFF, 0x7F, 0x81, 0xFE, 0xFE, 0x01, 0xFD, 0xFC, 0x03, - 0xFB, 0xF8, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7F, - 0x00, 0x01, 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0xC0, - 0x00, 0xFF, 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0xC0, - 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, - 0x07, 0xFF, 0xF8, 0x0F, 0xF7, 0xF8, 0x3F, 0xCF, 0xFF, 0xFF, 0x9F, 0xFF, - 0xFE, 0x1F, 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x07, 0xF8, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x03, 0xFE, 0x00, 0x0F, 0xF8, - 0x00, 0x7F, 0xE0, 0x03, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x7B, 0xF8, 0x01, - 0xEF, 0xE0, 0x0F, 0x3F, 0x80, 0x78, 0xFE, 0x01, 0xE3, 0xF8, 0x0F, 0x0F, - 0xE0, 0x38, 0x3F, 0x81, 0xE0, 0xFE, 0x07, 0x03, 0xF8, 0x3C, 0x0F, 0xE1, - 0xE0, 0x3F, 0x87, 0x00, 0xFE, 0x3C, 0x03, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0x00, 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0x80, - 0x00, 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xE0, 0x1F, 0xFF, 0xFC, 0x3F, - 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0x8F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xF1, 0xF8, 0x03, 0xEF, 0xFE, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFE, - 0x1F, 0xFF, 0xFE, 0x7F, 0xFF, 0xFC, 0xFE, 0x07, 0xFC, 0x00, 0x07, 0xF8, - 0x00, 0x07, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, - 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xF8, - 0x0F, 0xF7, 0xF8, 0x3F, 0xEF, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0x0F, 0xFF, - 0xFC, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x03, 0xF8, 0x00, 0x00, 0xFF, - 0x00, 0x07, 0xFF, 0x80, 0x1F, 0xFF, 0xC0, 0x7F, 0xFF, 0x81, 0xFF, 0xFF, - 0x87, 0xFF, 0xFF, 0x8F, 0xF0, 0xFF, 0x3F, 0xC0, 0xFE, 0x7F, 0x00, 0x00, - 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE3, 0xF0, 0x1F, - 0xDF, 0xF8, 0x3F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0xFF, 0xFF, 0xF9, 0xFF, - 0x87, 0xFB, 0xFC, 0x07, 0xF7, 0xF8, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, - 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, 0x7E, 0x00, 0xFE, 0xFC, 0x01, - 0xFD, 0xFC, 0x07, 0xFB, 0xF8, 0x0F, 0xE3, 0xFC, 0x7F, 0xC7, 0xFF, 0xFF, - 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xF8, 0x0F, 0xFF, 0xE0, 0x07, 0xFF, 0x80, - 0x03, 0xF8, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x3F, 0x00, - 0x00, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, - 0x7F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, - 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xF8, 0x00, 0x07, 0xF0, - 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFC, 0x00, - 0x01, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x1F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x7F, 0x83, 0xFC, 0x7F, - 0x00, 0xFC, 0x7E, 0x00, 0xFC, 0x7E, 0x00, 0x7C, 0x7E, 0x00, 0x7C, 0x7E, - 0x00, 0xFC, 0x3F, 0x00, 0xF8, 0x3F, 0x83, 0xF8, 0x0F, 0xFF, 0xF0, 0x07, - 0xFF, 0xC0, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF8, 0x3F, 0xC3, 0xFC, 0x7F, - 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, - 0x00, 0xFE, 0x7F, 0x83, 0xFE, 0x7F, 0xFF, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xF8, 0x0F, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x00, - 0xFF, 0x00, 0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x3F, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x7F, 0xC3, 0xFC, 0x7F, 0x01, 0xFE, 0xFF, - 0x00, 0xFE, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0x7F, - 0x01, 0xFF, 0x7F, 0xC3, 0xFF, 0x7F, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x1F, - 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0x07, 0xFE, 0x7F, 0x01, 0xFC, 0x7E, 0x00, - 0x00, 0x7E, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x7F, 0x01, 0xFC, 0x7F, - 0x83, 0xFC, 0x7F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF0, 0x1F, - 0xFF, 0xE0, 0x07, 0xFF, 0x80, 0x01, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0x1C, 0x38, 0x71, 0xE7, 0xBF, 0x7C, 0xE0, 0x00, - 0x00, 0x02, 0x00, 0x00, 0x3C, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xF0, 0x01, - 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, 0x7F, 0xFC, - 0x01, 0xFF, 0xC0, 0x03, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xE0, 0x00, - 0x1F, 0xF8, 0x00, 0x3F, 0xFE, 0x00, 0x0F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, - 0x01, 0xFF, 0xF8, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x0F, 0xE0, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x80, 0x00, - 0x01, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xFE, 0x00, - 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xF0, 0x00, 0x7F, 0xFC, - 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0xE0, - 0x01, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0xFF, 0xF8, 0x0F, 0xFF, 0x80, 0xFF, - 0xFC, 0x03, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x1E, 0x00, - 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x07, 0xFF, 0xC0, 0x1F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0x7F, - 0x83, 0xFE, 0x7F, 0x01, 0xFE, 0xFF, 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x00, - 0x01, 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xF8, 0x00, - 0x3F, 0xF0, 0x00, 0x3F, 0xE0, 0x00, 0x7F, 0x80, 0x00, 0x7F, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xE0, - 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF8, 0x00, - 0x03, 0xFE, 0x01, 0xFF, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x7F, - 0x80, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x07, 0xF0, 0x00, - 0x00, 0x1F, 0x00, 0xFC, 0x00, 0x00, 0x01, 0xF0, 0x3F, 0x00, 0x00, 0x00, - 0x3E, 0x0F, 0xC0, 0x07, 0xE3, 0xC3, 0xE1, 0xF0, 0x03, 0xFE, 0xF8, 0x3C, - 0x7E, 0x01, 0xFF, 0xFF, 0x07, 0x8F, 0x80, 0x7E, 0x1F, 0xC0, 0x7B, 0xF0, - 0x1F, 0x81, 0xF8, 0x0F, 0x7C, 0x03, 0xE0, 0x1F, 0x01, 0xEF, 0x80, 0xF8, - 0x03, 0xC0, 0x3F, 0xF0, 0x1E, 0x00, 0x78, 0x07, 0xFC, 0x07, 0xC0, 0x0F, - 0x00, 0xFF, 0x80, 0xF0, 0x01, 0xE0, 0x1F, 0xF0, 0x1E, 0x00, 0x38, 0x07, - 0xFE, 0x07, 0xC0, 0x0F, 0x00, 0xFF, 0xC0, 0xF8, 0x01, 0xE0, 0x1E, 0xF8, - 0x1F, 0x00, 0x38, 0x07, 0xDF, 0x03, 0xE0, 0x0F, 0x00, 0xF3, 0xF0, 0x7C, - 0x03, 0xE0, 0x3E, 0x3E, 0x0F, 0xC0, 0xFC, 0x0F, 0x87, 0xC0, 0xFC, 0x3F, - 0xC7, 0xF0, 0xFC, 0x1F, 0xFF, 0xFF, 0xFC, 0x0F, 0xC1, 0xFF, 0xEF, 0xFF, - 0x01, 0xFC, 0x1F, 0xF8, 0xFF, 0x80, 0x1F, 0xC0, 0xFC, 0x07, 0xC0, 0x01, - 0xFC, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x60, 0x00, 0x01, 0xFF, 0xFF, - 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x7F, 0xFF, 0xF0, - 0x00, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, - 0x0F, 0xF8, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, - 0x1F, 0xFC, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, - 0x3F, 0xFE, 0x00, 0x00, 0x3F, 0x7E, 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, - 0x7F, 0x7F, 0x00, 0x00, 0x7E, 0x3F, 0x00, 0x00, 0xFE, 0x3F, 0x80, 0x00, - 0xFE, 0x3F, 0x80, 0x01, 0xFC, 0x1F, 0x80, 0x01, 0xFC, 0x1F, 0xC0, 0x01, - 0xF8, 0x1F, 0xC0, 0x03, 0xF8, 0x0F, 0xE0, 0x03, 0xF8, 0x0F, 0xE0, 0x03, - 0xF0, 0x0F, 0xE0, 0x07, 0xF0, 0x07, 0xF0, 0x07, 0xFF, 0xFF, 0xF0, 0x07, - 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xF8, 0x1F, - 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x3F, - 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x00, 0xFE, 0x3F, 0x80, 0x00, 0xFE, 0x7F, - 0x00, 0x00, 0xFE, 0x7F, 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x7F, 0xFF, - 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFF, - 0x8F, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFF, 0x3F, 0x80, 0x1F, 0xF7, 0xF0, - 0x01, 0xFE, 0xFE, 0x00, 0x1F, 0xDF, 0xC0, 0x03, 0xFB, 0xF8, 0x00, 0x7F, - 0x7F, 0x00, 0x1F, 0xCF, 0xE0, 0x07, 0xF9, 0xFF, 0xFF, 0xFE, 0x3F, 0xFF, - 0xFF, 0x87, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xE3, - 0xFF, 0xFF, 0xFE, 0x7F, 0x00, 0x1F, 0xEF, 0xE0, 0x01, 0xFD, 0xFC, 0x00, - 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, - 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0x00, 0x1F, 0xEF, 0xFF, 0xFF, - 0xFD, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xFC, 0x1F, 0xFF, 0xFC, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x03, 0xFF, - 0xF8, 0x00, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0xFF, 0xC1, 0xFF, 0x81, 0xFF, 0x0F, 0xF8, 0x01, 0xFE, - 0x3F, 0xC0, 0x07, 0xF9, 0xFE, 0x00, 0x0F, 0xE7, 0xF8, 0x00, 0x1F, 0xDF, - 0xC0, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x0F, 0xE0, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, - 0x7F, 0x00, 0x01, 0xFD, 0xFC, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x3F, 0xCF, - 0xF0, 0x00, 0xFE, 0x3F, 0xE0, 0x07, 0xF8, 0x7F, 0xE0, 0x7F, 0xC0, 0xFF, - 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0xC0, 0x07, 0xFF, - 0xFE, 0x00, 0x0F, 0xFF, 0xE0, 0x00, 0x07, 0xFC, 0x00, 0xFF, 0xFF, 0xC0, - 0x0F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF8, 0xFE, 0x00, 0xFF, 0xCF, 0xE0, 0x03, - 0xFC, 0xFE, 0x00, 0x1F, 0xEF, 0xE0, 0x01, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, - 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, - 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x7F, - 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xFF, 0xE0, - 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x1F, - 0xEF, 0xE0, 0x01, 0xFE, 0xFE, 0x00, 0x3F, 0xCF, 0xE0, 0x0F, 0xFC, 0xFF, - 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xF7, - 0xFF, 0xFF, 0xFB, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, - 0x07, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, - 0xFE, 0x7F, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x9F, 0xC0, 0x00, 0x0F, 0xE0, - 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFC, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xFF, - 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xFF, - 0x07, 0xFE, 0x03, 0xFF, 0x0F, 0xF0, 0x01, 0xFE, 0x3F, 0xC0, 0x01, 0xFC, - 0x7F, 0x00, 0x01, 0xFD, 0xFE, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x00, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0xF8, - 0x00, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0xC0, - 0x07, 0xFF, 0xFF, 0xC0, 0x00, 0x1F, 0xBF, 0x80, 0x00, 0x3F, 0x7F, 0x00, - 0x00, 0x7E, 0xFF, 0x00, 0x01, 0xFC, 0xFF, 0x00, 0x03, 0xF9, 0xFF, 0x00, - 0x0F, 0xF1, 0xFF, 0x00, 0x3F, 0xE3, 0xFF, 0x83, 0xFF, 0xC3, 0xFF, 0xFF, - 0xFF, 0x83, 0xFF, 0xFF, 0xDF, 0x03, 0xFF, 0xFF, 0x9E, 0x03, 0xFF, 0xFE, - 0x3C, 0x01, 0xFF, 0xF0, 0x78, 0x00, 0x7F, 0x80, 0x00, 0xFE, 0x00, 0x0F, - 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xE0, - 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, - 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, - 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, - 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, - 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, - 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, - 0xFF, 0xC0, 0x01, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x01, - 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, - 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, - 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, - 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, - 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xFF, 0xE0, - 0x1F, 0xFF, 0x80, 0x7F, 0xFE, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xE0, 0x1F, - 0xFF, 0xC0, 0xFF, 0xFF, 0x87, 0xFD, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFC, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0xFE, - 0x00, 0x0F, 0xF3, 0xF8, 0x00, 0x7F, 0x8F, 0xE0, 0x03, 0xFC, 0x3F, 0x80, - 0x1F, 0xE0, 0xFE, 0x00, 0xFF, 0x83, 0xF8, 0x07, 0xFC, 0x0F, 0xE0, 0x1F, - 0xE0, 0x3F, 0x80, 0xFF, 0x00, 0xFE, 0x07, 0xF8, 0x03, 0xF8, 0x3F, 0xC0, - 0x0F, 0xE1, 0xFE, 0x00, 0x3F, 0x8F, 0xF0, 0x00, 0xFE, 0x7F, 0x80, 0x03, - 0xFB, 0xFC, 0x00, 0x0F, 0xFF, 0xE0, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0xFF, - 0xFF, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x3F, 0xF7, - 0xF8, 0x00, 0xFF, 0x8F, 0xF0, 0x03, 0xFC, 0x3F, 0xC0, 0x0F, 0xE0, 0x7F, - 0x80, 0x3F, 0x80, 0xFF, 0x00, 0xFE, 0x01, 0xFE, 0x03, 0xF8, 0x07, 0xFC, - 0x0F, 0xE0, 0x0F, 0xF0, 0x3F, 0x80, 0x1F, 0xE0, 0xFE, 0x00, 0x3F, 0xC3, - 0xF8, 0x00, 0xFF, 0x8F, 0xE0, 0x01, 0xFE, 0x3F, 0x80, 0x03, 0xFC, 0xFE, - 0x00, 0x07, 0xFB, 0xF8, 0x00, 0x1F, 0xF0, 0xFE, 0x00, 0x01, 0xFC, 0x00, - 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, - 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, - 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, - 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, - 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, - 0x07, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xE0, 0x03, - 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0xFC, 0x00, - 0x7F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xFF, 0xC0, - 0x1F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFC, - 0x07, 0xFF, 0xFF, 0xBE, 0x03, 0xEF, 0xFF, 0xDF, 0x01, 0xF7, 0xFF, 0xEF, - 0x80, 0xFB, 0xFF, 0xF7, 0xC0, 0xFD, 0xFF, 0xFB, 0xF0, 0x7C, 0xFF, 0xFC, - 0xF8, 0x3E, 0x7F, 0xFE, 0x7C, 0x1F, 0x3F, 0xFF, 0x3E, 0x0F, 0x9F, 0xFF, - 0x9F, 0x8F, 0x8F, 0xFF, 0xC7, 0xC7, 0xC7, 0xFF, 0xE3, 0xE3, 0xE3, 0xFF, - 0xF1, 0xF1, 0xF1, 0xFF, 0xF8, 0xFC, 0xF8, 0xFF, 0xFC, 0x3E, 0xF8, 0x7F, - 0xFE, 0x1F, 0x7C, 0x3F, 0xFF, 0x0F, 0xBE, 0x1F, 0xFF, 0x87, 0xDF, 0x0F, - 0xFF, 0xC3, 0xFF, 0x07, 0xFF, 0xE0, 0xFF, 0x83, 0xFF, 0xF0, 0x7F, 0xC1, - 0xFF, 0xF8, 0x3F, 0xE0, 0xFF, 0xFC, 0x1F, 0xF0, 0x7F, 0xFE, 0x07, 0xF0, - 0x3F, 0xFF, 0x03, 0xF8, 0x1F, 0xC0, 0xFE, 0x00, 0x07, 0xFF, 0xF0, 0x00, - 0x7F, 0xFF, 0x80, 0x07, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0xC0, 0x07, 0xFF, - 0xFC, 0x00, 0x7F, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xF0, - 0x07, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0xF8, 0x07, 0xFF, 0xEF, 0xC0, 0x7F, - 0xFE, 0xFE, 0x07, 0xFF, 0xE7, 0xE0, 0x7F, 0xFE, 0x7F, 0x07, 0xFF, 0xE3, - 0xF0, 0x7F, 0xFE, 0x1F, 0x87, 0xFF, 0xE1, 0xFC, 0x7F, 0xFE, 0x0F, 0xC7, - 0xFF, 0xE0, 0xFE, 0x7F, 0xFE, 0x07, 0xE7, 0xFF, 0xE0, 0x3F, 0x7F, 0xFE, - 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xE0, 0x0F, - 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xE0, 0x07, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, - 0xE0, 0x03, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0xE0, 0x00, 0xFF, 0xFE, 0x00, - 0x0F, 0xFF, 0xE0, 0x00, 0x7F, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, - 0x80, 0x00, 0x7F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, - 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x3F, 0xC0, - 0x0F, 0xF8, 0x3F, 0xC0, 0x01, 0xFE, 0x1F, 0xC0, 0x00, 0x7F, 0x1F, 0xE0, - 0x00, 0x3F, 0xCF, 0xE0, 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x07, 0xF7, 0xF8, - 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x00, 0xFF, 0xFC, 0x00, 0x00, 0x7F, 0xFE, - 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x1F, 0xFF, 0x80, 0x00, 0x0F, 0xFF, - 0xC0, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x01, 0xFF, - 0xFC, 0x00, 0x01, 0xFE, 0xFE, 0x00, 0x00, 0xFE, 0x7F, 0x00, 0x00, 0x7F, - 0x3F, 0xC0, 0x00, 0x7F, 0x8F, 0xE0, 0x00, 0x3F, 0x87, 0xF8, 0x00, 0x3F, - 0xC1, 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xFF, 0xFF, - 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xEF, 0xE0, 0x0F, 0xFB, 0xF8, 0x00, 0xFF, - 0xFE, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xF8, 0x00, - 0x7F, 0xFE, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF8, - 0x03, 0xFE, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF3, - 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x0F, 0xE0, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, 0xE0, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, - 0xE0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x80, 0x00, 0x7F, 0xFF, - 0xE0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, - 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x3F, 0xC0, 0x07, 0xF8, 0x3F, 0xC0, - 0x01, 0xFE, 0x1F, 0xC0, 0x00, 0x7F, 0x1F, 0xE0, 0x00, 0x3F, 0xCF, 0xE0, - 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x03, 0xFF, 0xF8, - 0x00, 0x00, 0xFF, 0xFC, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x3F, 0xFF, - 0x00, 0x00, 0x1F, 0xFF, 0x80, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x01, 0xFF, 0xFC, 0x00, 0x21, 0xFE, - 0xFE, 0x00, 0x38, 0xFE, 0x7F, 0x00, 0x3E, 0x7F, 0x3F, 0xC0, 0x3F, 0xFF, - 0x8F, 0xE0, 0x0F, 0xFF, 0x87, 0xF8, 0x03, 0xFF, 0xC1, 0xFE, 0x00, 0xFF, - 0xC0, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, - 0xFC, 0x03, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xC0, 0x1F, 0xFF, - 0xCF, 0xC0, 0x01, 0xFF, 0x03, 0xC0, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, - 0xF8, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0xF8, - 0xFF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xFC, 0xFE, 0x00, 0x3F, 0xEF, 0xE0, - 0x01, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x0F, - 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, 0xE0, 0x01, 0xFC, 0xFE, - 0x00, 0x3F, 0xCF, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x8F, - 0xE0, 0x07, 0xF8, 0xFE, 0x00, 0x1F, 0xCF, 0xE0, 0x01, 0xFC, 0xFE, 0x00, - 0x1F, 0xCF, 0xE0, 0x01, 0xFC, 0xFE, 0x00, 0x1F, 0xCF, 0xE0, 0x01, 0xFC, - 0xFE, 0x00, 0x1F, 0xCF, 0xE0, 0x01, 0xFC, 0xFE, 0x00, 0x1F, 0xCF, 0xE0, - 0x01, 0xFC, 0xFE, 0x00, 0x1F, 0xEF, 0xE0, 0x00, 0xFF, 0x00, 0xFF, 0xC0, - 0x00, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xF0, 0x3F, - 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xFC, 0x7F, 0xC0, 0xFF, 0xCF, 0xF0, 0x03, - 0xFE, 0xFE, 0x00, 0x1F, 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, - 0xE0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x7F, 0xFC, - 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0xF0, - 0x07, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, - 0x03, 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x07, - 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, - 0x00, 0x0F, 0xE7, 0xFC, 0x03, 0xFE, 0x7F, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0xFC, 0x00, - 0x07, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0xFE, 0x00, - 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, - 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, - 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x80, 0x03, - 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, - 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, - 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, - 0x01, 0xFF, 0xFC, 0x00, 0x7F, 0xBF, 0xC0, 0x1F, 0xE7, 0xFC, 0x07, 0xFC, - 0x7F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, - 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x03, - 0xFF, 0xF0, 0x00, 0x1F, 0xDF, 0xC0, 0x01, 0xFC, 0xFE, 0x00, 0x0F, 0xE7, - 0xF0, 0x00, 0x7F, 0x1F, 0xC0, 0x03, 0xF0, 0xFE, 0x00, 0x3F, 0x87, 0xF0, - 0x01, 0xFC, 0x1F, 0xC0, 0x0F, 0xC0, 0xFE, 0x00, 0xFE, 0x03, 0xF0, 0x07, - 0xF0, 0x1F, 0x80, 0x3F, 0x00, 0xFE, 0x03, 0xF8, 0x03, 0xF0, 0x1F, 0xC0, - 0x1F, 0x80, 0xFC, 0x00, 0xFE, 0x07, 0xE0, 0x03, 0xF0, 0x7F, 0x00, 0x1F, - 0x83, 0xF0, 0x00, 0xFE, 0x1F, 0x80, 0x03, 0xF1, 0xF8, 0x00, 0x1F, 0x8F, - 0xC0, 0x00, 0xFC, 0x7E, 0x00, 0x03, 0xF3, 0xE0, 0x00, 0x1F, 0xBF, 0x00, - 0x00, 0xFD, 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x1F, 0xFC, 0x00, 0x00, - 0xFF, 0xE0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0xFF, - 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFF, 0x00, 0x3F, 0x80, 0x1F, 0xFF, 0xE0, 0x07, 0xF0, 0x03, 0xFD, - 0xFC, 0x01, 0xFE, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0xE0, 0x0F, 0xE7, 0xF0, - 0x07, 0xFC, 0x01, 0xFC, 0x7F, 0x00, 0xFF, 0x80, 0x7F, 0x8F, 0xE0, 0x1F, - 0xF0, 0x0F, 0xE1, 0xFC, 0x07, 0xFF, 0x01, 0xFC, 0x3F, 0x80, 0xFB, 0xE0, - 0x3F, 0x83, 0xF0, 0x1F, 0x7C, 0x07, 0xE0, 0x7F, 0x03, 0xEF, 0x81, 0xFC, - 0x0F, 0xE0, 0x7D, 0xF0, 0x3F, 0x80, 0xFC, 0x1F, 0x9F, 0x07, 0xF0, 0x1F, - 0x83, 0xE3, 0xE0, 0xFC, 0x03, 0xF0, 0x7C, 0x7C, 0x1F, 0x80, 0x7F, 0x0F, - 0x8F, 0x87, 0xF0, 0x07, 0xE1, 0xF0, 0xF8, 0xFC, 0x00, 0xFC, 0x7E, 0x1F, - 0x1F, 0x80, 0x1F, 0x8F, 0x83, 0xE3, 0xF0, 0x01, 0xF9, 0xF0, 0x7C, 0x7E, - 0x00, 0x3F, 0x3E, 0x0F, 0x9F, 0x80, 0x07, 0xE7, 0xC0, 0xFB, 0xF0, 0x00, - 0xFD, 0xF0, 0x1F, 0x7E, 0x00, 0x0F, 0xBE, 0x03, 0xEF, 0xC0, 0x01, 0xFF, - 0xC0, 0x7D, 0xF0, 0x00, 0x3F, 0xF8, 0x0F, 0xFE, 0x00, 0x03, 0xFF, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0xC0, 0x1F, 0xF0, 0x00, 0x0F, 0xF8, 0x03, 0xFE, - 0x00, 0x01, 0xFF, 0x00, 0x7F, 0xC0, 0x00, 0x1F, 0xE0, 0x07, 0xF8, 0x00, - 0x03, 0xFC, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x00, 0x07, - 0xE0, 0x03, 0xF8, 0x00, 0x7F, 0x80, 0x07, 0xF9, 0xFF, 0x00, 0x3F, 0xC3, - 0xFC, 0x00, 0xFF, 0x07, 0xF8, 0x07, 0xF8, 0x1F, 0xE0, 0x1F, 0xC0, 0x3F, - 0xC0, 0xFF, 0x00, 0xFF, 0x07, 0xF8, 0x01, 0xFE, 0x1F, 0xE0, 0x03, 0xF8, - 0xFF, 0x00, 0x0F, 0xF3, 0xF8, 0x00, 0x1F, 0xDF, 0xE0, 0x00, 0x3F, 0xFF, - 0x00, 0x00, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x07, 0xFF, 0x00, - 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x03, 0xFF, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x7F, 0xF8, 0x00, 0x03, - 0xFF, 0xF0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x7F, 0x7F, 0x80, 0x03, 0xF8, - 0xFF, 0x00, 0x1F, 0xE1, 0xFC, 0x00, 0x7F, 0x07, 0xF8, 0x03, 0xFC, 0x0F, - 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x80, 0x7F, 0x83, 0xFC, 0x01, 0xFE, - 0x0F, 0xF0, 0x03, 0xFC, 0x7F, 0x80, 0x0F, 0xFB, 0xFE, 0x00, 0x1F, 0xE0, - 0xFF, 0x00, 0x07, 0xFF, 0xF8, 0x00, 0x7F, 0x9F, 0xE0, 0x03, 0xFC, 0xFF, - 0x00, 0x3F, 0xC3, 0xFC, 0x01, 0xFE, 0x0F, 0xE0, 0x0F, 0xE0, 0x7F, 0x00, - 0xFF, 0x01, 0xFC, 0x07, 0xF0, 0x0F, 0xE0, 0x7F, 0x80, 0x3F, 0x83, 0xF8, - 0x01, 0xFC, 0x3F, 0xC0, 0x07, 0xF1, 0xFC, 0x00, 0x3F, 0x8F, 0xE0, 0x00, - 0xFE, 0xFE, 0x00, 0x07, 0xF7, 0xF0, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0xFF, - 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, 0xC0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xE0, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x3F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, - 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xC0, 0x00, - 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFE, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, - 0x00, 0x0F, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, - 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, - 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, - 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, 0x03, 0xC0, 0x07, 0x00, - 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x70, - 0x01, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0x70, 0x01, 0xC0, 0x07, - 0x00, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, - 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xE0, - 0x03, 0x80, 0x0E, 0x00, 0x3C, 0x00, 0x70, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, - 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, - 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, - 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xF0, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x80, 0x03, 0xFE, 0x00, 0x0F, 0xFC, 0x00, - 0x7D, 0xF0, 0x01, 0xF7, 0xC0, 0x0F, 0xDF, 0x80, 0x3E, 0x3E, 0x00, 0xF8, - 0xFC, 0x07, 0xE1, 0xF0, 0x1F, 0x07, 0xC0, 0xFC, 0x1F, 0x83, 0xE0, 0x3E, - 0x0F, 0x80, 0xFC, 0x7E, 0x01, 0xF1, 0xF0, 0x07, 0xC7, 0xC0, 0x1F, 0xBE, - 0x00, 0x3E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3E, 0x0F, 0x83, 0xC0, 0xF0, 0x38, 0x1E, - 0x01, 0xFF, 0x00, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, - 0x7F, 0xFF, 0xF8, 0x7F, 0xFF, 0xFC, 0x7F, 0x03, 0xFC, 0x7E, 0x01, 0xFC, - 0x00, 0x01, 0xFC, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xFC, 0x03, 0xFF, 0xFC, - 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x7F, 0xC1, 0xFC, 0xFF, 0x01, 0xFC, - 0xFE, 0x01, 0xFC, 0xFE, 0x03, 0xFC, 0xFE, 0x03, 0xFC, 0xFF, 0x07, 0xFC, - 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0x3F, 0xFD, 0xFE, - 0x1F, 0xF0, 0xFF, 0x07, 0xE0, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, - 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x0F, - 0xC0, 0x3F, 0x9F, 0xF8, 0x1F, 0xDF, 0xFF, 0x0F, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0xE3, 0xFF, 0xFF, 0xF9, 0xFF, 0x83, 0xFE, 0xFF, 0x80, 0xFF, 0x7F, - 0x80, 0x3F, 0xBF, 0xC0, 0x1F, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x03, 0xFF, - 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x3F, - 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x1F, 0xDF, 0xF0, 0x1F, 0xEF, 0xFC, 0x1F, - 0xF7, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xF8, 0xFE, 0xFF, - 0xF8, 0x7F, 0x3F, 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x00, 0xFF, 0x00, 0x07, - 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0x9F, 0xF0, 0x7F, 0xBF, 0xC0, 0x7F, 0x7F, 0x00, 0x7F, 0xFC, 0x00, - 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0xFD, - 0xFE, 0x03, 0xFB, 0xFE, 0x0F, 0xF3, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x87, - 0xFF, 0xFE, 0x07, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x01, 0xFE, 0x00, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, - 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x3F, 0x80, 0x7E, 0x1F, 0xC0, 0xFF, 0xCF, 0xE1, 0xFF, 0xF7, - 0xF1, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFE, 0xFF, 0x83, - 0xFF, 0x7F, 0x80, 0xFF, 0xBF, 0x80, 0x3F, 0xFF, 0xC0, 0x1F, 0xFF, 0xC0, - 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, - 0x00, 0x7F, 0xFE, 0x00, 0x3F, 0xFF, 0x80, 0x3F, 0xDF, 0xC0, 0x1F, 0xEF, - 0xF0, 0x1F, 0xF7, 0xFC, 0x1F, 0xF9, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFE, - 0x3F, 0xFF, 0xFF, 0x0F, 0xFF, 0xBF, 0x81, 0xFF, 0x9F, 0xC0, 0x3F, 0x00, - 0x00, 0x00, 0xFE, 0x00, 0x03, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, - 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xC3, 0xF8, 0x7F, 0x80, 0xFC, 0x7F, 0x00, - 0xFC, 0x7F, 0x00, 0x7C, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7E, 0xFF, 0xFF, - 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x7F, 0x7F, 0x00, - 0xFE, 0x3F, 0xC1, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, 0x0F, 0xFF, - 0xF0, 0x03, 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x01, 0xFC, 0x1F, 0xF0, 0xFF, - 0xC3, 0xFF, 0x1F, 0xFC, 0x7F, 0x81, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, - 0x0F, 0xFF, 0xBF, 0xFE, 0xFF, 0xFB, 0xFF, 0xE1, 0xFC, 0x07, 0xF0, 0x1F, - 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, - 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, - 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x00, 0x00, 0xF8, 0x7F, 0x07, 0xFE, - 0x7F, 0x0F, 0xFF, 0x7F, 0x1F, 0xFF, 0x7F, 0x3F, 0xFF, 0xFF, 0x3F, 0xFF, - 0xFF, 0x7F, 0xC3, 0xFF, 0x7F, 0x81, 0xFF, 0x7F, 0x00, 0xFF, 0xFF, 0x00, - 0xFF, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, - 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0xFF, 0xFF, 0x00, - 0xFF, 0x7F, 0x81, 0xFF, 0x7F, 0xC3, 0xFF, 0x3F, 0xFF, 0xFF, 0x3F, 0xFF, - 0xFF, 0x1F, 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0x07, 0xFE, 0x7F, 0x01, 0xF8, - 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x7F, 0x00, - 0xFF, 0x7F, 0x01, 0xFE, 0x7F, 0xC3, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, - 0xF8, 0x0F, 0xFF, 0xE0, 0x01, 0xFF, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, - 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x3F, 0x83, - 0xF8, 0xFF, 0xC7, 0xF7, 0xFF, 0xCF, 0xEF, 0xFF, 0xDF, 0xFF, 0xFF, 0xBF, - 0xFF, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0x01, 0xFF, 0xFE, 0x01, 0xFF, 0xF8, - 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, - 0x3F, 0xFF, 0x00, 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, - 0xFF, 0xF0, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, - 0xFF, 0x00, 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFC, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF0, 0x00, - 0x00, 0x00, 0x07, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, - 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, - 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, - 0x1F, 0xC7, 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFE, 0xFE, 0x00, - 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, - 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, - 0x00, 0x01, 0xFC, 0x03, 0xFB, 0xF8, 0x0F, 0xE7, 0xF0, 0x3F, 0xCF, 0xE0, - 0xFF, 0x1F, 0xC3, 0xFC, 0x3F, 0x87, 0xF0, 0x7F, 0x1F, 0xC0, 0xFE, 0x7F, - 0x01, 0xFD, 0xFC, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0xE0, - 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0xE0, 0x7F, 0xDF, 0xC0, 0xFF, 0x3F, 0xC1, - 0xFC, 0x3F, 0x83, 0xF8, 0x3F, 0x87, 0xF0, 0x7F, 0x8F, 0xE0, 0x7F, 0x1F, - 0xC0, 0xFF, 0x3F, 0x80, 0xFE, 0x7F, 0x01, 0xFE, 0xFE, 0x01, 0xFD, 0xFC, - 0x03, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFE, 0x1F, 0x80, 0x7E, - 0x0F, 0xE7, 0xFE, 0x1F, 0xF8, 0xFE, 0xFF, 0xF3, 0xFF, 0xCF, 0xFF, 0xFF, - 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0x83, 0xFF, 0x0F, 0xFF, 0xF0, 0x1F, 0xE0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, - 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, - 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, - 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, - 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, - 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, - 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, - 0xF0, 0xFE, 0x1F, 0xC1, 0xFC, 0xFF, 0xE3, 0xFB, 0xFF, 0xE7, 0xFF, 0xFF, - 0xEF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x80, 0xFF, - 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF, - 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, 0xFE, - 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xE0, - 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, 0xFE, 0x00, - 0xFE, 0x00, 0x7F, 0x80, 0x01, 0xFF, 0xF0, 0x01, 0xFF, 0xFE, 0x01, 0xFF, - 0xFF, 0x81, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF1, 0xFF, 0x07, 0xFC, 0xFF, - 0x01, 0xFE, 0x7F, 0x00, 0x7F, 0x7F, 0x80, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, - 0xC0, 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, - 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xBF, 0x80, 0x3F, 0x9F, 0xE0, 0x3F, - 0xCF, 0xF8, 0x3F, 0xE3, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, - 0xF0, 0x0F, 0xFF, 0xF0, 0x03, 0xFF, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0xFE, - 0x1F, 0x80, 0x7F, 0x3F, 0xF0, 0x3F, 0xBF, 0xFE, 0x1F, 0xDF, 0xFF, 0x8F, - 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xF3, 0xFF, 0x07, 0xFD, 0xFF, 0x01, 0xFE, - 0xFF, 0x00, 0x7F, 0x7F, 0x80, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, 0xC0, 0x07, - 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, - 0x7F, 0xFF, 0x00, 0x7F, 0xFF, 0x80, 0x3F, 0xBF, 0xE0, 0x3F, 0xDF, 0xF8, - 0x3F, 0xCF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xE3, 0xFB, 0xFF, 0xE1, 0xFD, - 0xFF, 0xF0, 0xFE, 0x7F, 0xE0, 0x7F, 0x0F, 0xC0, 0x3F, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x1F, 0xC0, 0x00, 0x00, 0x00, 0xFC, 0x3F, 0x81, 0xFF, 0x9F, 0xC3, 0xFF, - 0xEF, 0xE1, 0xFF, 0xF7, 0xF1, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFD, 0xFF, - 0x07, 0xFE, 0xFF, 0x01, 0xFF, 0x7F, 0x00, 0x7F, 0xFF, 0x80, 0x3F, 0xFF, - 0x80, 0x0F, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, - 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xBF, 0x80, 0x3F, - 0xDF, 0xE0, 0x3F, 0xEF, 0xF8, 0x3F, 0xF3, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, - 0xFC, 0x7F, 0xFE, 0xFE, 0x1F, 0xFF, 0x7F, 0x03, 0xFF, 0x3F, 0x80, 0x7E, - 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0xFE, 0x1F, 0xFC, - 0x7F, 0xFB, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x7F, 0x80, - 0xFF, 0x01, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xE0, 0x1F, 0xC0, 0x3F, - 0x80, 0x7F, 0x00, 0xFE, 0x01, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xE0, - 0x1F, 0xC0, 0x3F, 0x80, 0x7F, 0x00, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x07, - 0xFF, 0xE0, 0x0F, 0xFF, 0xF8, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x7F, - 0x81, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0xC0, 0x00, 0x7F, - 0xFC, 0x00, 0x7F, 0xFF, 0x80, 0x3F, 0xFF, 0xF0, 0x1F, 0xFF, 0xFC, 0x07, - 0xFF, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0x00, 0x01, 0xFF, 0x00, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x7F, 0x00, 0x7F, 0x7F, 0x81, 0xFE, 0x7F, - 0xFF, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, 0x0F, 0xFF, 0xF0, 0x01, - 0xFF, 0x80, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, - 0x8F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF3, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, - 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, - 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xFF, 0x3F, 0xF1, 0xFF, 0x0F, - 0xF0, 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, - 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, - 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, - 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, - 0xFE, 0x00, 0xFF, 0xFC, 0x03, 0xFF, 0xFC, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, - 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xDF, 0xFF, 0xBF, 0x9F, 0xFF, 0x7F, 0x1F, - 0xFC, 0xFE, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x3F, 0xBF, 0x80, 0x1F, 0x9F, - 0xC0, 0x1F, 0xC7, 0xE0, 0x0F, 0xE3, 0xF8, 0x07, 0xE1, 0xFC, 0x07, 0xF0, - 0x7E, 0x03, 0xF8, 0x3F, 0x81, 0xF8, 0x1F, 0xC0, 0xFC, 0x07, 0xE0, 0xFE, - 0x03, 0xF8, 0x7E, 0x00, 0xFC, 0x3F, 0x00, 0x7E, 0x1F, 0x80, 0x3F, 0x1F, - 0x80, 0x0F, 0xCF, 0xC0, 0x07, 0xE7, 0xE0, 0x03, 0xF7, 0xE0, 0x00, 0xFF, - 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0xF8, 0x00, 0x0F, 0xFC, 0x00, 0x07, - 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0xFC, 0x03, 0xF8, 0x0F, 0xFF, 0xC0, 0x7F, 0x01, 0xFF, 0xF8, 0x0F, 0xE0, - 0x3F, 0x3F, 0x03, 0xFE, 0x07, 0xE7, 0xE0, 0x7F, 0xC1, 0xFC, 0xFE, 0x0F, - 0xF8, 0x3F, 0x9F, 0xC1, 0xFF, 0x07, 0xE1, 0xF8, 0x3D, 0xE0, 0xFC, 0x3F, - 0x0F, 0xBE, 0x3F, 0x87, 0xF1, 0xF7, 0xC7, 0xE0, 0x7E, 0x3E, 0xF8, 0xFC, - 0x0F, 0xC7, 0xDF, 0x1F, 0x81, 0xF9, 0xF1, 0xE3, 0xF0, 0x3F, 0x3E, 0x3E, - 0xFC, 0x03, 0xF7, 0xC7, 0xDF, 0x80, 0x7E, 0xF8, 0xFB, 0xF0, 0x0F, 0xDE, - 0x1F, 0x7C, 0x00, 0xFF, 0xC1, 0xFF, 0x80, 0x1F, 0xF8, 0x3F, 0xF0, 0x03, - 0xFF, 0x07, 0xFE, 0x00, 0x7F, 0xC0, 0xFF, 0x80, 0x07, 0xF8, 0x1F, 0xF0, - 0x00, 0xFF, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, - 0xF0, 0x00, 0xFF, 0x00, 0xFF, 0x7F, 0x81, 0xFE, 0x3F, 0x81, 0xFC, 0x3F, - 0xC3, 0xFC, 0x1F, 0xC3, 0xF8, 0x0F, 0xE7, 0xF0, 0x0F, 0xEF, 0xF0, 0x07, - 0xFF, 0xE0, 0x03, 0xFF, 0xC0, 0x03, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x00, - 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x03, - 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x0F, 0xE7, 0xF0, 0x1F, - 0xE7, 0xF0, 0x1F, 0xC3, 0xF8, 0x3F, 0xC3, 0xFC, 0x7F, 0x81, 0xFC, 0x7F, - 0x01, 0xFE, 0xFF, 0x00, 0xFF, 0x7F, 0x00, 0x3F, 0xBF, 0x80, 0x1F, 0xDF, - 0xC0, 0x0F, 0xC7, 0xF0, 0x07, 0xE3, 0xF8, 0x07, 0xF1, 0xFC, 0x03, 0xF0, - 0x7F, 0x01, 0xF8, 0x3F, 0x81, 0xFC, 0x0F, 0xC0, 0xFC, 0x07, 0xF0, 0x7E, - 0x03, 0xF8, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0x7E, 0x1F, 0x80, 0x3F, 0x8F, - 0xC0, 0x0F, 0xCF, 0xC0, 0x07, 0xE7, 0xE0, 0x03, 0xFB, 0xF0, 0x00, 0xFD, - 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFC, 0x00, 0x07, - 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x1F, 0xC0, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x0F, 0xFC, 0x00, - 0x07, 0xFC, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x7F, 0xFF, - 0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xBF, - 0xFF, 0xFC, 0x00, 0x3F, 0xE0, 0x03, 0xFE, 0x00, 0x1F, 0xE0, 0x01, 0xFE, - 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x1F, - 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x01, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF8, 0x01, 0xF8, 0x1F, 0xC1, 0xFE, 0x0F, 0xF0, 0xFF, - 0x87, 0xE0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, - 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x3F, - 0x0F, 0xF0, 0x7F, 0x03, 0xF8, 0x1F, 0xE0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, - 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, - 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xE0, 0x3F, 0xE0, 0xFF, 0x07, 0xF8, 0x1F, - 0xC0, 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFC, 0x07, 0xF0, 0x3F, 0xC1, 0xFE, 0x0F, 0xF8, 0x0F, 0xC0, 0x3E, 0x01, - 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, - 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x80, 0x7F, 0x81, 0xFC, - 0x0F, 0xE0, 0xFF, 0x0F, 0xC0, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, - 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, - 0x0F, 0xC3, 0xFE, 0x1F, 0xE0, 0xFF, 0x07, 0xF0, 0x3F, 0x00, 0x1F, 0x00, - 0x03, 0xFE, 0x00, 0x1F, 0xF8, 0x0F, 0xFF, 0xF0, 0xFF, 0x0F, 0xFF, 0xF0, - 0x1F, 0xF8, 0x00, 0x7F, 0x80, 0x00, 0xF8}; - -const GFXglyph FreeSansBold24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 13, 0, 1}, // 0x20 ' ' - {0, 7, 34, 16, 5, -33}, // 0x21 '!' - {30, 18, 12, 22, 2, -33}, // 0x22 '"' - {57, 26, 33, 26, 0, -31}, // 0x23 '#' - {165, 25, 40, 26, 1, -34}, // 0x24 '$' - {290, 39, 34, 42, 1, -32}, // 0x25 '%' - {456, 30, 35, 34, 3, -33}, // 0x26 '&' - {588, 7, 12, 12, 3, -33}, // 0x27 ''' - {599, 13, 44, 16, 2, -33}, // 0x28 '(' - {671, 13, 44, 16, 1, -33}, // 0x29 ')' - {743, 15, 15, 18, 1, -33}, // 0x2A '*' - {772, 23, 22, 27, 2, -21}, // 0x2B '+' - {836, 7, 15, 12, 2, -6}, // 0x2C ',' - {850, 13, 6, 16, 1, -15}, // 0x2D '-' - {860, 7, 7, 12, 2, -6}, // 0x2E '.' - {867, 13, 34, 13, 0, -32}, // 0x2F '/' - {923, 24, 35, 26, 1, -33}, // 0x30 '0' - {1028, 14, 33, 26, 4, -32}, // 0x31 '1' - {1086, 23, 34, 26, 2, -33}, // 0x32 '2' - {1184, 23, 35, 26, 2, -33}, // 0x33 '3' - {1285, 22, 33, 26, 2, -32}, // 0x34 '4' - {1376, 23, 34, 26, 2, -32}, // 0x35 '5' - {1474, 23, 35, 26, 2, -33}, // 0x36 '6' - {1575, 23, 33, 26, 1, -32}, // 0x37 '7' - {1670, 24, 35, 26, 1, -33}, // 0x38 '8' - {1775, 24, 35, 26, 1, -33}, // 0x39 '9' - {1880, 7, 25, 12, 2, -24}, // 0x3A ':' - {1902, 7, 33, 12, 2, -24}, // 0x3B ';' - {1931, 23, 23, 27, 2, -22}, // 0x3C '<' - {1998, 23, 18, 27, 2, -19}, // 0x3D '=' - {2050, 23, 23, 27, 2, -22}, // 0x3E '>' - {2117, 24, 35, 29, 3, -34}, // 0x3F '?' - {2222, 43, 41, 46, 1, -34}, // 0x40 '@' - {2443, 32, 34, 33, 0, -33}, // 0x41 'A' - {2579, 27, 34, 33, 4, -33}, // 0x42 'B' - {2694, 30, 36, 34, 2, -34}, // 0x43 'C' - {2829, 28, 34, 34, 4, -33}, // 0x44 'D' - {2948, 25, 34, 31, 4, -33}, // 0x45 'E' - {3055, 24, 34, 30, 4, -33}, // 0x46 'F' - {3157, 31, 36, 36, 2, -34}, // 0x47 'G' - {3297, 27, 34, 35, 4, -33}, // 0x48 'H' - {3412, 7, 34, 15, 4, -33}, // 0x49 'I' - {3442, 22, 35, 27, 1, -33}, // 0x4A 'J' - {3539, 30, 34, 34, 4, -33}, // 0x4B 'K' - {3667, 23, 34, 29, 4, -33}, // 0x4C 'L' - {3765, 33, 34, 41, 4, -33}, // 0x4D 'M' - {3906, 28, 34, 35, 4, -33}, // 0x4E 'N' - {4025, 33, 36, 37, 2, -34}, // 0x4F 'O' - {4174, 26, 34, 32, 4, -33}, // 0x50 'P' - {4285, 33, 37, 37, 2, -34}, // 0x51 'Q' - {4438, 28, 34, 34, 4, -33}, // 0x52 'R' - {4557, 28, 36, 32, 2, -34}, // 0x53 'S' - {4683, 27, 34, 30, 2, -33}, // 0x54 'T' - {4798, 27, 35, 35, 4, -33}, // 0x55 'U' - {4917, 29, 34, 31, 1, -33}, // 0x56 'V' - {5041, 43, 34, 45, 1, -33}, // 0x57 'W' - {5224, 30, 34, 32, 1, -33}, // 0x58 'X' - {5352, 29, 34, 30, 1, -33}, // 0x59 'Y' - {5476, 26, 34, 29, 1, -33}, // 0x5A 'Z' - {5587, 11, 43, 16, 3, -33}, // 0x5B '[' - {5647, 14, 34, 13, -1, -32}, // 0x5C '\' - {5707, 11, 43, 16, 1, -33}, // 0x5D ']' - {5767, 22, 20, 27, 3, -32}, // 0x5E '^' - {5822, 28, 4, 26, -1, 6}, // 0x5F '_' - {5836, 9, 7, 12, 1, -35}, // 0x60 '`' - {5844, 24, 26, 27, 2, -24}, // 0x61 'a' - {5922, 25, 35, 29, 3, -33}, // 0x62 'b' - {6032, 23, 26, 26, 2, -24}, // 0x63 'c' - {6107, 25, 35, 29, 2, -33}, // 0x64 'd' - {6217, 24, 26, 27, 2, -24}, // 0x65 'e' - {6295, 14, 34, 16, 1, -33}, // 0x66 'f' - {6355, 24, 36, 29, 2, -24}, // 0x67 'g' - {6463, 23, 34, 28, 3, -33}, // 0x68 'h' - {6561, 7, 34, 13, 3, -33}, // 0x69 'i' - {6591, 10, 45, 13, 0, -33}, // 0x6A 'j' - {6648, 23, 34, 27, 3, -33}, // 0x6B 'k' - {6746, 7, 34, 13, 3, -33}, // 0x6C 'l' - {6776, 36, 25, 42, 3, -24}, // 0x6D 'm' - {6889, 23, 25, 29, 3, -24}, // 0x6E 'n' - {6961, 25, 26, 29, 2, -24}, // 0x6F 'o' - {7043, 25, 36, 29, 3, -24}, // 0x70 'p' - {7156, 25, 36, 29, 2, -24}, // 0x71 'q' - {7269, 15, 25, 18, 3, -24}, // 0x72 'r' - {7316, 24, 26, 26, 1, -24}, // 0x73 's' - {7394, 12, 32, 16, 2, -30}, // 0x74 't' - {7442, 23, 26, 29, 3, -24}, // 0x75 'u' - {7517, 25, 25, 25, 0, -24}, // 0x76 'v' - {7596, 35, 25, 37, 1, -24}, // 0x77 'w' - {7706, 24, 25, 26, 1, -24}, // 0x78 'x' - {7781, 25, 36, 26, 0, -24}, // 0x79 'y' - {7894, 21, 25, 24, 1, -24}, // 0x7A 'z' - {7960, 13, 43, 18, 2, -33}, // 0x7B '{' - {8030, 4, 44, 13, 5, -33}, // 0x7C '|' - {8052, 13, 43, 18, 3, -33}, // 0x7D '}' - {8122, 21, 8, 23, 1, -14}}; // 0x7E '~' - -const GFXfont FreeSansBold24pt7b PROGMEM = { - (uint8_t *)FreeSansBold24pt7bBitmaps, (GFXglyph *)FreeSansBold24pt7bGlyphs, - 0x20, 0x7E, 56}; - -// Approx. 8815 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h deleted file mode 100644 index cffb178..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h +++ /dev/null @@ -1,210 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFE, 0x48, 0x7E, 0xEF, 0xDF, 0xBF, 0x74, 0x40, 0x19, 0x86, - 0x67, 0xFD, 0xFF, 0x33, 0x0C, 0xC3, 0x33, 0xFE, 0xFF, 0x99, 0x86, 0x61, - 0x90, 0x10, 0x1F, 0x1F, 0xDE, 0xFF, 0x3F, 0x83, 0xC0, 0xFC, 0x1F, 0x09, - 0xFC, 0xFE, 0xF7, 0xF1, 0xE0, 0x40, 0x38, 0x10, 0x7C, 0x30, 0xC6, 0x20, - 0xC6, 0x40, 0xC6, 0x40, 0x7C, 0x80, 0x39, 0x9C, 0x01, 0x3E, 0x03, 0x63, - 0x02, 0x63, 0x04, 0x63, 0x0C, 0x3E, 0x08, 0x1C, 0x0E, 0x01, 0xF8, 0x3B, - 0x83, 0xB8, 0x3F, 0x01, 0xE0, 0x3E, 0x67, 0x76, 0xE3, 0xEE, 0x1C, 0xF3, - 0xC7, 0xFE, 0x3F, 0x70, 0xFF, 0xF4, 0x18, 0x63, 0x1C, 0x73, 0x8E, 0x38, - 0xE3, 0x8E, 0x18, 0x70, 0xC3, 0x06, 0x08, 0x61, 0x83, 0x0E, 0x38, 0x71, - 0xC7, 0x1C, 0x71, 0xC6, 0x38, 0xE3, 0x18, 0x40, 0x21, 0x3E, 0x45, 0x28, - 0x38, 0x70, 0xE7, 0xFF, 0xE7, 0x0E, 0x1C, 0xFC, 0x9C, 0xFF, 0xC0, 0xFC, - 0x08, 0xC4, 0x23, 0x10, 0x84, 0x62, 0x11, 0x88, 0x00, 0x3E, 0x3F, 0x9D, - 0xDC, 0x7E, 0x3F, 0x1F, 0x8F, 0xC7, 0xE3, 0xF1, 0xDD, 0xCF, 0xE3, 0xE0, - 0x08, 0xFF, 0xF3, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x80, 0x3E, 0x3F, 0xB8, - 0xFC, 0x70, 0x38, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x0F, 0xF7, 0xF8, - 0x3C, 0x7F, 0xE7, 0xE7, 0x07, 0x0C, 0x0E, 0x07, 0x07, 0xE7, 0xE7, 0x7E, - 0x3C, 0x0E, 0x1E, 0x1E, 0x2E, 0x2E, 0x4E, 0x4E, 0x8E, 0xFF, 0xFF, 0x0E, - 0x0E, 0x0E, 0x7F, 0x3F, 0x90, 0x18, 0x0D, 0xE7, 0xFB, 0x9E, 0x07, 0x03, - 0x81, 0xF1, 0xFF, 0xE7, 0xC0, 0x3E, 0x3F, 0x9C, 0xFC, 0x0E, 0xE7, 0xFB, - 0xDF, 0xC7, 0xE3, 0xF1, 0xDD, 0xEF, 0xE3, 0xE0, 0xFF, 0xFF, 0xC0, 0xE0, - 0xE0, 0x60, 0x70, 0x30, 0x38, 0x1C, 0x0C, 0x0E, 0x07, 0x03, 0x80, 0x3F, - 0x1F, 0xEE, 0x3F, 0x87, 0xE3, 0xCF, 0xC7, 0xFB, 0xCF, 0xE1, 0xF8, 0x7F, - 0x3D, 0xFE, 0x3F, 0x00, 0x3E, 0x3F, 0xBD, 0xDC, 0x7E, 0x3F, 0x1F, 0xDE, - 0xFF, 0x3B, 0x81, 0xF9, 0xCF, 0xE3, 0xC0, 0xFC, 0x00, 0x07, 0xE0, 0xFC, - 0x00, 0x07, 0xE5, 0xE0, 0x00, 0x83, 0xC7, 0xDF, 0x0C, 0x07, 0x80, 0xF8, - 0x1F, 0x01, 0x80, 0xFF, 0xFF, 0xC0, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x70, - 0x3F, 0x03, 0xE0, 0x38, 0x7D, 0xF1, 0xE0, 0x80, 0x00, 0x3E, 0x3F, 0xB8, - 0xFC, 0x70, 0x38, 0x1C, 0x1C, 0x1C, 0x1C, 0x0E, 0x00, 0x03, 0x81, 0xC0, - 0x03, 0xF0, 0x0F, 0xFC, 0x1E, 0x0E, 0x38, 0x02, 0x70, 0xE9, 0x63, 0x19, - 0xC2, 0x19, 0xC6, 0x11, 0xC6, 0x33, 0xC6, 0x32, 0x63, 0xFE, 0x73, 0xDC, - 0x3C, 0x00, 0x1F, 0xF8, 0x07, 0xF0, 0x07, 0x00, 0xF0, 0x0F, 0x80, 0xF8, - 0x1D, 0x81, 0x9C, 0x19, 0xC3, 0x8C, 0x3F, 0xE7, 0xFE, 0x70, 0x66, 0x07, - 0xE0, 0x70, 0xFF, 0x9F, 0xFB, 0x83, 0xF0, 0x7E, 0x0F, 0xFF, 0x3F, 0xF7, - 0x06, 0xE0, 0xFC, 0x1F, 0x83, 0xFF, 0xEF, 0xF8, 0x1F, 0x83, 0xFE, 0x78, - 0xE7, 0x07, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x07, 0x07, 0x78, - 0xF3, 0xFE, 0x1F, 0x80, 0xFF, 0x8F, 0xFC, 0xE0, 0xEE, 0x0E, 0xE0, 0x7E, - 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x0E, 0xE0, 0xEF, 0xFC, 0xFF, 0x80, - 0xFF, 0xFF, 0xF8, 0x1C, 0x0E, 0x07, 0xFB, 0xFD, 0xC0, 0xE0, 0x70, 0x38, - 0x1F, 0xFF, 0xF8, 0xFF, 0xFF, 0xF8, 0x1C, 0x0E, 0x07, 0xFB, 0xFD, 0xC0, - 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x00, 0x0F, 0x87, 0xF9, 0xE3, 0xB8, 0x3E, - 0x01, 0xC0, 0x38, 0xFF, 0x1F, 0xE0, 0x6E, 0x0D, 0xE3, 0x9F, 0xD0, 0xF2, - 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xFF, 0xFF, 0xFF, 0x07, 0xE0, - 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0xE7, 0xE7, 0xE7, 0x7E, 0x3C, - 0xE0, 0xEE, 0x1C, 0xE3, 0x8E, 0x70, 0xEE, 0x0F, 0xC0, 0xFE, 0x0F, 0x70, - 0xE7, 0x0E, 0x38, 0xE1, 0xCE, 0x0E, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, - 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xFF, 0xFF, 0xF8, 0x7F, 0xE1, - 0xFF, 0x87, 0xFE, 0x1F, 0xEC, 0x7F, 0xB3, 0x7E, 0xCD, 0xFB, 0x37, 0xEC, - 0xDF, 0x9E, 0x7E, 0x79, 0xF9, 0xE7, 0xE7, 0x9C, 0xE0, 0xFE, 0x1F, 0xC3, - 0xFC, 0x7F, 0xCF, 0xD9, 0xFB, 0xBF, 0x37, 0xE7, 0xFC, 0x7F, 0x87, 0xF0, - 0xFE, 0x0E, 0x0F, 0x81, 0xFF, 0x1E, 0x3C, 0xE0, 0xEE, 0x03, 0xF0, 0x1F, - 0x80, 0xFC, 0x07, 0xE0, 0x3B, 0x83, 0x9E, 0x3C, 0x7F, 0xC0, 0xF8, 0x00, - 0xFF, 0x9F, 0xFB, 0x87, 0xF0, 0x7E, 0x0F, 0xC3, 0xFF, 0xF7, 0xFC, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x00, 0x0F, 0x81, 0xFF, 0x1E, 0x3C, 0xE0, - 0xEE, 0x03, 0xF0, 0x1F, 0x80, 0xFC, 0x07, 0xE1, 0xBB, 0x8F, 0x9E, 0x3C, - 0x7F, 0xE0, 0xFB, 0x80, 0x08, 0xFF, 0x8F, 0xFC, 0xE0, 0xEE, 0x0E, 0xE0, - 0xEE, 0x0E, 0xFF, 0xCF, 0xFC, 0xE0, 0xEE, 0x0E, 0xE0, 0xEE, 0x0E, 0xE0, - 0xF0, 0x3F, 0x0F, 0xFB, 0xC7, 0xF0, 0x7E, 0x01, 0xFC, 0x1F, 0xF0, 0x3F, - 0x00, 0xFC, 0x1D, 0xC7, 0xBF, 0xE1, 0xF8, 0xFF, 0xFF, 0xC7, 0x03, 0x81, - 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0xFC, - 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, 0xFC, 0x1F, - 0xC7, 0xBF, 0xE1, 0xF0, 0x60, 0x67, 0x0E, 0x70, 0xE3, 0x0C, 0x30, 0xC3, - 0x9C, 0x19, 0x81, 0x98, 0x1F, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x06, 0x00, - 0x61, 0xC3, 0xB8, 0xE1, 0x9C, 0x70, 0xCE, 0x3C, 0xE3, 0x36, 0x71, 0x9B, - 0x30, 0xED, 0x98, 0x36, 0x7C, 0x1B, 0x3C, 0x0F, 0x1E, 0x07, 0x8F, 0x01, - 0xC3, 0x80, 0xE1, 0x80, 0x70, 0xE7, 0x8E, 0x39, 0xC1, 0xF8, 0x1F, 0x80, - 0xF0, 0x07, 0x00, 0xF0, 0x1F, 0x81, 0x9C, 0x39, 0xC7, 0x0E, 0x70, 0xE0, - 0xE0, 0xFC, 0x39, 0xC7, 0x18, 0xC3, 0xB8, 0x36, 0x07, 0xC0, 0x70, 0x0E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0xFF, 0xFF, 0xC0, 0xE0, 0xE0, 0xF0, - 0x70, 0x70, 0x70, 0x78, 0x38, 0x38, 0x1F, 0xFF, 0xF8, 0xFF, 0xEE, 0xEE, - 0xEE, 0xEE, 0xEE, 0xEE, 0xEF, 0xF0, 0x86, 0x10, 0x86, 0x10, 0x84, 0x30, - 0x84, 0x30, 0x80, 0xFF, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x7F, 0xF0, - 0x18, 0x1C, 0x3C, 0x3E, 0x36, 0x66, 0x63, 0xC3, 0xFF, 0xC0, 0xCC, 0x3F, - 0x1F, 0xEE, 0x38, 0x0E, 0x3F, 0x9E, 0xEE, 0x3B, 0x9E, 0xFF, 0x9E, 0xE0, - 0xE0, 0x38, 0x0E, 0x03, 0xBC, 0xFF, 0xBC, 0xEE, 0x1F, 0x87, 0xE1, 0xF8, - 0x7F, 0x3B, 0xFE, 0xEF, 0x00, 0x1F, 0x3F, 0xDC, 0x7C, 0x0E, 0x07, 0x03, - 0x80, 0xE3, 0x7F, 0x8F, 0x00, 0x03, 0x81, 0xC0, 0xE7, 0x77, 0xFB, 0xBF, - 0x8F, 0xC7, 0xE3, 0xF1, 0xFD, 0xEF, 0xF3, 0xB8, 0x3E, 0x3F, 0x9C, 0xDC, - 0x3F, 0xFF, 0xFF, 0x81, 0xC3, 0x7F, 0x8F, 0x00, 0x3B, 0xDD, 0xFF, 0xB9, - 0xCE, 0x73, 0x9C, 0xE7, 0x00, 0x3B, 0xBF, 0xDD, 0xFC, 0x7E, 0x3F, 0x1F, - 0x8F, 0xEF, 0x7F, 0x9D, 0xC0, 0xFC, 0x77, 0xF1, 0xF0, 0xE0, 0x70, 0x38, - 0x1D, 0xEF, 0xFF, 0x9F, 0x8F, 0xC7, 0xE3, 0xF1, 0xF8, 0xFC, 0x7E, 0x38, - 0xFC, 0x7F, 0xFF, 0xFF, 0xFE, 0x77, 0x07, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x7F, 0xE0, 0xE0, 0x70, 0x38, 0x1C, 0x7E, 0x77, 0x73, 0xF1, 0xF8, 0xFE, - 0x77, 0x39, 0xDC, 0x6E, 0x38, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xEF, 0x7B, - 0xFF, 0xFE, 0x39, 0xF8, 0xE7, 0xE3, 0x9F, 0x8E, 0x7E, 0x39, 0xF8, 0xE7, - 0xE3, 0x9F, 0x8E, 0x70, 0xEF, 0x7F, 0xF8, 0xFC, 0x7E, 0x3F, 0x1F, 0x8F, - 0xC7, 0xE3, 0xF1, 0xC0, 0x1E, 0x1F, 0xE7, 0x3B, 0x87, 0xE1, 0xF8, 0x7E, - 0x1D, 0xCE, 0x7F, 0x87, 0x80, 0xEF, 0x3F, 0xEF, 0x3B, 0x87, 0xE1, 0xF8, - 0x7E, 0x1F, 0xCE, 0xFF, 0xBB, 0xCE, 0x03, 0x80, 0xE0, 0x38, 0x00, 0x3B, - 0xBF, 0xFD, 0xFC, 0x7E, 0x3F, 0x1F, 0x8F, 0xEF, 0x7F, 0x9D, 0xC0, 0xE0, - 0x70, 0x38, 0x1C, 0xEF, 0xFF, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x80, 0x3E, - 0x3F, 0xB8, 0xFC, 0x0F, 0xC3, 0xFC, 0x3F, 0xC7, 0xFF, 0x1F, 0x00, 0x73, - 0xBF, 0xF7, 0x39, 0xCE, 0x73, 0x9E, 0x70, 0xE3, 0xF1, 0xF8, 0xFC, 0x7E, - 0x3F, 0x1F, 0x8F, 0xC7, 0xFF, 0xBD, 0xC0, 0xE1, 0x98, 0x67, 0x39, 0xCC, - 0x33, 0x0D, 0xC3, 0xE0, 0x78, 0x1E, 0x07, 0x00, 0xE3, 0x1D, 0x9E, 0x66, - 0x79, 0x99, 0xE6, 0x77, 0xB8, 0xD2, 0xC3, 0xCF, 0x0F, 0x3C, 0x3C, 0xF0, - 0x73, 0x80, 0x73, 0x9C, 0xE3, 0xF0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0xFC, - 0x73, 0x9C, 0xE0, 0xE1, 0xD8, 0x67, 0x39, 0xCE, 0x33, 0x0E, 0xC3, 0xE0, - 0x78, 0x1E, 0x03, 0x00, 0xC0, 0x70, 0x38, 0x0E, 0x00, 0xFE, 0xFE, 0x0E, - 0x1C, 0x38, 0x38, 0x70, 0xE0, 0xFF, 0xFF, 0x37, 0x66, 0x66, 0x6E, 0xE6, - 0x66, 0x66, 0x67, 0x30, 0xFF, 0xFF, 0x80, 0xCE, 0x66, 0x66, 0x67, 0x76, - 0x66, 0x66, 0x6E, 0xC0, 0x71, 0x8E}; - -const GFXglyph FreeSansBold9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 3, 13, 6, 2, -12}, // 0x21 '!' - {5, 7, 5, 9, 1, -12}, // 0x22 '"' - {10, 10, 12, 10, 0, -11}, // 0x23 '#' - {25, 9, 15, 10, 1, -13}, // 0x24 '$' - {42, 16, 13, 16, 0, -12}, // 0x25 '%' - {68, 12, 13, 13, 1, -12}, // 0x26 '&' - {88, 3, 5, 5, 1, -12}, // 0x27 ''' - {90, 6, 17, 6, 1, -12}, // 0x28 '(' - {103, 6, 17, 6, 0, -12}, // 0x29 ')' - {116, 5, 6, 7, 1, -12}, // 0x2A '*' - {120, 7, 8, 11, 2, -7}, // 0x2B '+' - {127, 3, 5, 4, 1, -1}, // 0x2C ',' - {129, 5, 2, 6, 0, -5}, // 0x2D '-' - {131, 3, 2, 4, 1, -1}, // 0x2E '.' - {132, 5, 13, 5, 0, -12}, // 0x2F '/' - {141, 9, 13, 10, 1, -12}, // 0x30 '0' - {156, 5, 13, 10, 2, -12}, // 0x31 '1' - {165, 9, 13, 10, 1, -12}, // 0x32 '2' - {180, 8, 13, 10, 1, -12}, // 0x33 '3' - {193, 8, 13, 10, 2, -12}, // 0x34 '4' - {206, 9, 13, 10, 1, -12}, // 0x35 '5' - {221, 9, 13, 10, 1, -12}, // 0x36 '6' - {236, 9, 13, 10, 0, -12}, // 0x37 '7' - {251, 10, 13, 10, 0, -12}, // 0x38 '8' - {268, 9, 13, 10, 1, -12}, // 0x39 '9' - {283, 3, 9, 4, 1, -8}, // 0x3A ':' - {287, 3, 12, 4, 1, -8}, // 0x3B ';' - {292, 9, 9, 11, 1, -8}, // 0x3C '<' - {303, 9, 6, 11, 1, -6}, // 0x3D '=' - {310, 9, 9, 11, 1, -8}, // 0x3E '>' - {321, 9, 13, 11, 1, -12}, // 0x3F '?' - {336, 16, 15, 18, 0, -12}, // 0x40 '@' - {366, 12, 13, 13, 0, -12}, // 0x41 'A' - {386, 11, 13, 13, 1, -12}, // 0x42 'B' - {404, 12, 13, 13, 1, -12}, // 0x43 'C' - {424, 12, 13, 13, 1, -12}, // 0x44 'D' - {444, 9, 13, 12, 1, -12}, // 0x45 'E' - {459, 9, 13, 11, 1, -12}, // 0x46 'F' - {474, 11, 13, 14, 1, -12}, // 0x47 'G' - {492, 11, 13, 13, 1, -12}, // 0x48 'H' - {510, 3, 13, 6, 1, -12}, // 0x49 'I' - {515, 8, 13, 10, 1, -12}, // 0x4A 'J' - {528, 12, 13, 13, 1, -12}, // 0x4B 'K' - {548, 8, 13, 11, 1, -12}, // 0x4C 'L' - {561, 14, 13, 16, 1, -12}, // 0x4D 'M' - {584, 11, 13, 14, 1, -12}, // 0x4E 'N' - {602, 13, 13, 14, 1, -12}, // 0x4F 'O' - {624, 11, 13, 12, 1, -12}, // 0x50 'P' - {642, 13, 14, 14, 1, -12}, // 0x51 'Q' - {665, 12, 13, 13, 1, -12}, // 0x52 'R' - {685, 11, 13, 12, 1, -12}, // 0x53 'S' - {703, 9, 13, 12, 2, -12}, // 0x54 'T' - {718, 11, 13, 13, 1, -12}, // 0x55 'U' - {736, 12, 13, 12, 0, -12}, // 0x56 'V' - {756, 17, 13, 17, 0, -12}, // 0x57 'W' - {784, 12, 13, 12, 0, -12}, // 0x58 'X' - {804, 11, 13, 12, 1, -12}, // 0x59 'Y' - {822, 9, 13, 11, 1, -12}, // 0x5A 'Z' - {837, 4, 17, 6, 1, -12}, // 0x5B '[' - {846, 5, 13, 5, 0, -12}, // 0x5C '\' - {855, 4, 17, 6, 0, -12}, // 0x5D ']' - {864, 8, 8, 11, 1, -12}, // 0x5E '^' - {872, 10, 1, 10, 0, 4}, // 0x5F '_' - {874, 3, 2, 5, 0, -12}, // 0x60 '`' - {875, 10, 10, 10, 1, -9}, // 0x61 'a' - {888, 10, 13, 11, 1, -12}, // 0x62 'b' - {905, 9, 10, 10, 1, -9}, // 0x63 'c' - {917, 9, 13, 11, 1, -12}, // 0x64 'd' - {932, 9, 10, 10, 1, -9}, // 0x65 'e' - {944, 5, 13, 6, 1, -12}, // 0x66 'f' - {953, 9, 14, 11, 1, -9}, // 0x67 'g' - {969, 9, 13, 11, 1, -12}, // 0x68 'h' - {984, 3, 13, 5, 1, -12}, // 0x69 'i' - {989, 4, 17, 5, 0, -12}, // 0x6A 'j' - {998, 9, 13, 10, 1, -12}, // 0x6B 'k' - {1013, 3, 13, 5, 1, -12}, // 0x6C 'l' - {1018, 14, 10, 16, 1, -9}, // 0x6D 'm' - {1036, 9, 10, 11, 1, -9}, // 0x6E 'n' - {1048, 10, 10, 11, 1, -9}, // 0x6F 'o' - {1061, 10, 14, 11, 1, -9}, // 0x70 'p' - {1079, 9, 14, 11, 1, -9}, // 0x71 'q' - {1095, 6, 10, 7, 1, -9}, // 0x72 'r' - {1103, 9, 10, 10, 1, -9}, // 0x73 's' - {1115, 5, 12, 6, 1, -11}, // 0x74 't' - {1123, 9, 10, 11, 1, -9}, // 0x75 'u' - {1135, 10, 10, 10, 0, -9}, // 0x76 'v' - {1148, 14, 10, 14, 0, -9}, // 0x77 'w' - {1166, 10, 10, 10, 0, -9}, // 0x78 'x' - {1179, 10, 14, 10, 0, -9}, // 0x79 'y' - {1197, 8, 10, 9, 1, -9}, // 0x7A 'z' - {1207, 4, 17, 7, 1, -12}, // 0x7B '{' - {1216, 1, 17, 5, 2, -12}, // 0x7C '|' - {1219, 4, 17, 7, 2, -12}, // 0x7D '}' - {1228, 8, 2, 9, 0, -4}}; // 0x7E '~' - -const GFXfont FreeSansBold9pt7b PROGMEM = {(uint8_t *)FreeSansBold9pt7bBitmaps, - (GFXglyph *)FreeSansBold9pt7bGlyphs, - 0x20, 0x7E, 22}; - -// Approx. 1902 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h deleted file mode 100644 index ff76ce3..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h +++ /dev/null @@ -1,319 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique12pt7bBitmaps[] PROGMEM = { - 0x1C, 0x3C, 0x78, 0xE1, 0xC3, 0x8F, 0x1C, 0x38, 0x70, 0xC1, 0x83, 0x00, - 0x1C, 0x78, 0xF0, 0x71, 0xFC, 0xFE, 0x3B, 0x8E, 0xC3, 0x30, 0xC0, 0x01, - 0x8C, 0x07, 0x38, 0x0C, 0x61, 0xFF, 0xF3, 0xFF, 0xE7, 0xFF, 0x83, 0x9C, - 0x0E, 0x70, 0x1C, 0xE1, 0xFF, 0xF3, 0xFF, 0xC7, 0xFF, 0x83, 0x18, 0x0E, - 0x70, 0x18, 0xC0, 0x73, 0x80, 0x00, 0x40, 0x07, 0xF0, 0x3F, 0xF0, 0xFF, - 0xF3, 0xC9, 0xE7, 0xB3, 0xCF, 0x60, 0x1F, 0xC0, 0x3F, 0xC0, 0x3F, 0xE0, - 0x1F, 0xE0, 0x1B, 0xE0, 0x33, 0xDE, 0x47, 0xBC, 0x8F, 0x7F, 0x7C, 0x7F, - 0xF0, 0x7F, 0x80, 0x18, 0x00, 0x20, 0x00, 0xC0, 0x00, 0x00, 0x01, 0x87, - 0x80, 0xC3, 0xF0, 0x61, 0xFE, 0x10, 0xE1, 0x8C, 0x30, 0x66, 0x0C, 0x3B, - 0x03, 0xFC, 0x80, 0x7E, 0x60, 0x0F, 0x30, 0x00, 0x18, 0x70, 0x0C, 0x7E, - 0x03, 0x1F, 0xC1, 0x8E, 0x30, 0xC3, 0x1C, 0x60, 0xFE, 0x18, 0x1F, 0x8C, - 0x07, 0x80, 0x01, 0xE0, 0x07, 0xF0, 0x1F, 0xE0, 0x79, 0xC0, 0xF3, 0x81, - 0xEE, 0x01, 0xF8, 0x01, 0xE0, 0x1F, 0xC6, 0x7B, 0xDD, 0xE3, 0xF7, 0x87, - 0xEF, 0x07, 0x9F, 0x1F, 0x3F, 0xFF, 0x3F, 0xDE, 0x3F, 0x1C, 0x7F, 0xEE, - 0xCC, 0x03, 0x83, 0x81, 0x81, 0xC1, 0xC0, 0xE0, 0xE0, 0x70, 0x70, 0x38, - 0x3C, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x18, 0x0E, 0x07, - 0x01, 0x80, 0x06, 0x03, 0x81, 0xC0, 0x60, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0xE0, 0xE0, 0x70, 0x38, 0x38, 0x1C, 0x1C, 0x0E, 0x0E, 0x06, - 0x07, 0x07, 0x00, 0x0C, 0x0C, 0x4F, 0xFF, 0x1C, 0x3C, 0x6C, 0x44, 0x03, - 0x80, 0x38, 0x07, 0x00, 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0xF0, 0xE0, 0x0E, - 0x00, 0xE0, 0x0C, 0x00, 0x7B, 0xDC, 0x23, 0x33, 0x00, 0x7F, 0xFF, 0xF0, - 0x7F, 0xE0, 0x00, 0xC0, 0x30, 0x18, 0x04, 0x03, 0x00, 0x80, 0x60, 0x10, - 0x0C, 0x02, 0x01, 0x80, 0x40, 0x30, 0x08, 0x06, 0x01, 0x00, 0xC0, 0x00, - 0x03, 0xC0, 0x7F, 0x87, 0xFC, 0x78, 0xF3, 0xC7, 0xBC, 0x3D, 0xE1, 0xEF, - 0x0F, 0xF0, 0x7F, 0x87, 0xBC, 0x3D, 0xE1, 0xEF, 0x1E, 0x78, 0xF3, 0xFF, - 0x0F, 0xF0, 0x3E, 0x00, 0x03, 0x83, 0x83, 0xCF, 0xEF, 0xF0, 0x78, 0x38, - 0x1C, 0x0E, 0x0F, 0x07, 0x03, 0x81, 0xC1, 0xE0, 0xF0, 0x70, 0x38, 0x00, - 0x03, 0xF0, 0x0F, 0xF8, 0x7F, 0xF8, 0xF1, 0xF3, 0xC1, 0xE7, 0x83, 0xC0, - 0x07, 0x80, 0x1E, 0x00, 0x78, 0x03, 0xE0, 0x0F, 0x00, 0x7C, 0x01, 0xE0, - 0x07, 0x00, 0x1F, 0xFC, 0x3F, 0xF8, 0xFF, 0xF0, 0x07, 0xE0, 0xFF, 0x8F, - 0xFE, 0xF8, 0xF7, 0x87, 0x80, 0x78, 0x0F, 0x80, 0xFC, 0x07, 0xE0, 0x0F, - 0x80, 0x3C, 0x01, 0xEF, 0x0F, 0x78, 0xF3, 0xFF, 0x8F, 0xF8, 0x3F, 0x00, - 0x00, 0x78, 0x07, 0xC0, 0x7E, 0x03, 0xF0, 0x37, 0x03, 0x38, 0x31, 0xC3, - 0x9E, 0x38, 0xF1, 0x87, 0x1F, 0xFE, 0xFF, 0xF7, 0xFF, 0x80, 0xF0, 0x07, - 0x00, 0x38, 0x03, 0xC0, 0x07, 0xFC, 0x1F, 0xF0, 0xFF, 0xC3, 0x00, 0x1C, - 0x00, 0x7F, 0x81, 0xFF, 0x0F, 0xFE, 0x38, 0xF8, 0x01, 0xE0, 0x07, 0x80, - 0x1E, 0xF0, 0xF3, 0xC7, 0xCF, 0xFE, 0x1F, 0xF0, 0x3F, 0x00, 0x03, 0xE0, - 0x7F, 0x87, 0xFE, 0x78, 0xF3, 0xC0, 0x3D, 0xE1, 0xFF, 0x8F, 0xFE, 0xF8, - 0xF7, 0xC7, 0xBC, 0x3D, 0xE1, 0xEF, 0x1E, 0x7C, 0xF3, 0xFF, 0x0F, 0xF0, - 0x1F, 0x00, 0x7F, 0xFB, 0xFF, 0xDF, 0xFE, 0x00, 0xE0, 0x0E, 0x00, 0xE0, - 0x0E, 0x00, 0xE0, 0x0F, 0x00, 0x70, 0x07, 0x00, 0x78, 0x03, 0x80, 0x3C, - 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x00, 0x03, 0xF0, 0x1F, 0xE0, 0xFF, 0xC7, - 0x8F, 0x1C, 0x3C, 0x71, 0xE0, 0xFF, 0x03, 0xF8, 0x3F, 0xF1, 0xF1, 0xE7, - 0x87, 0xBC, 0x1E, 0xF0, 0x7B, 0xE3, 0xCF, 0xFF, 0x1F, 0xF8, 0x1F, 0x80, - 0x03, 0xE0, 0x3F, 0xE1, 0xFF, 0x8F, 0x9F, 0x3C, 0x3D, 0xE0, 0xF7, 0x83, - 0xDE, 0x1F, 0x78, 0xFD, 0xFF, 0xE3, 0xFF, 0x87, 0xDE, 0x00, 0xF3, 0xC7, - 0x8F, 0xFE, 0x1F, 0xF0, 0x3F, 0x00, 0x1C, 0xF3, 0x80, 0x00, 0x00, 0x00, - 0x01, 0xCF, 0x38, 0x0E, 0x3C, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF1, - 0xE3, 0x81, 0x06, 0x18, 0x60, 0x00, 0x00, 0x01, 0xC0, 0x7E, 0x1F, 0xE7, - 0xF8, 0x7E, 0x03, 0xE0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x00, 0x78, 0x00, - 0xC0, 0x3F, 0xFC, 0xFF, 0xF3, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, - 0xFF, 0x9F, 0xFC, 0x7F, 0xF0, 0x30, 0x01, 0xE0, 0x0F, 0xE0, 0x3F, 0xC0, - 0x7F, 0x80, 0x7C, 0x07, 0xE1, 0xFE, 0x7F, 0x87, 0xE0, 0x38, 0x00, 0x00, - 0x00, 0x0F, 0xC1, 0xFF, 0x8F, 0xFC, 0xF1, 0xFF, 0x07, 0xF0, 0x3C, 0x01, - 0xE0, 0x1E, 0x01, 0xE0, 0x3E, 0x03, 0xE0, 0x1C, 0x01, 0xC0, 0x0E, 0x00, - 0x00, 0x07, 0x80, 0x3C, 0x01, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x03, 0xFF, - 0x80, 0x3C, 0x0F, 0x01, 0xC0, 0x0E, 0x0E, 0x00, 0x1C, 0x70, 0xF7, 0x73, - 0x87, 0xF8, 0xCC, 0x31, 0xE3, 0x61, 0x87, 0x0D, 0x8C, 0x1C, 0x3C, 0x30, - 0x61, 0xB1, 0x81, 0x86, 0xC6, 0x0C, 0x3B, 0x18, 0x71, 0xCC, 0x63, 0xCE, - 0x31, 0xFB, 0xF0, 0xE3, 0xCF, 0x01, 0xC0, 0x00, 0x03, 0xC0, 0xC0, 0x07, - 0xFF, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x3F, 0x00, 0x1F, 0x80, - 0x1F, 0xC0, 0x0F, 0xE0, 0x0F, 0xF0, 0x07, 0x7C, 0x07, 0x1E, 0x03, 0x8F, - 0x03, 0x87, 0x83, 0xC3, 0xC1, 0xFF, 0xE1, 0xFF, 0xF0, 0xFF, 0xFC, 0xF0, - 0x1E, 0x70, 0x0F, 0x78, 0x07, 0xB8, 0x03, 0xC0, 0x0F, 0xFE, 0x0F, 0xFF, - 0x87, 0xFF, 0xE3, 0xC0, 0xF1, 0xC0, 0x78, 0xE0, 0x3C, 0xF0, 0x3C, 0x7F, - 0xFC, 0x3F, 0xFC, 0x1F, 0xFF, 0x0E, 0x07, 0xCF, 0x01, 0xE7, 0x80, 0xF3, - 0x80, 0x79, 0xC0, 0x79, 0xFF, 0xF8, 0xFF, 0xFC, 0x7F, 0xF8, 0x00, 0x01, - 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE1, 0xF3, 0xC0, 0x79, 0xE0, 0x3D, - 0xE0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, - 0x0F, 0x00, 0xE7, 0x80, 0xF3, 0xE0, 0xF0, 0xFF, 0xF8, 0x3F, 0xF0, 0x07, - 0xE0, 0x00, 0x1F, 0xFC, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0x81, 0xF1, 0xC0, - 0x79, 0xE0, 0x3C, 0xF0, 0x1E, 0x78, 0x0F, 0x38, 0x07, 0x9C, 0x03, 0xDE, - 0x03, 0xCF, 0x01, 0xE7, 0x81, 0xF3, 0x80, 0xF1, 0xC1, 0xF1, 0xFF, 0xF0, - 0xFF, 0xF0, 0x7F, 0xE0, 0x00, 0x0F, 0xFF, 0x1F, 0xFF, 0x1F, 0xFF, 0x1C, - 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0xFF, - 0xF8, 0xFF, 0xF8, 0xFF, 0xF8, 0x1F, 0xFF, 0x1F, 0xFE, 0x1F, 0xFE, 0x1C, - 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3F, 0xF8, 0x3F, 0xF8, 0x3F, - 0xF8, 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0xE0, 0x00, 0x01, 0xFC, 0x03, 0xFF, 0x03, 0xFF, 0xC3, - 0xE0, 0xF3, 0xC0, 0x39, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0xF0, 0x7F, - 0x78, 0x3F, 0xBC, 0x1F, 0xDE, 0x01, 0xCF, 0x00, 0xE7, 0xC0, 0xF1, 0xF0, - 0xF8, 0xFF, 0xFC, 0x3F, 0xEC, 0x07, 0xE6, 0x00, 0x1E, 0x03, 0x8F, 0x01, - 0xC7, 0x01, 0xE3, 0x80, 0xF3, 0xC0, 0x79, 0xE0, 0x38, 0xF0, 0x1C, 0x7F, - 0xFE, 0x3F, 0xFF, 0x3F, 0xFF, 0x9E, 0x03, 0x8F, 0x01, 0xC7, 0x01, 0xE3, - 0x80, 0xF3, 0xC0, 0x71, 0xE0, 0x38, 0xF0, 0x3C, 0x70, 0x1E, 0x00, 0x1E, - 0x3C, 0x78, 0xE1, 0xC7, 0x8F, 0x1E, 0x38, 0x71, 0xE3, 0xC7, 0x8E, 0x1C, - 0x78, 0xF1, 0xE0, 0x00, 0x1C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x38, - 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xC0, 0x07, 0x3C, 0x3C, - 0xF0, 0xF3, 0xC3, 0x8F, 0x1E, 0x3F, 0xF8, 0x7F, 0xC0, 0xFC, 0x00, 0x1E, - 0x07, 0xC7, 0x83, 0xE1, 0xE1, 0xE0, 0x70, 0xF0, 0x1C, 0x78, 0x0F, 0x3C, - 0x03, 0xDE, 0x00, 0xFF, 0x00, 0x3F, 0xC0, 0x0F, 0xF0, 0x07, 0xDE, 0x01, - 0xE7, 0xC0, 0x78, 0xF0, 0x1C, 0x3E, 0x0F, 0x07, 0x83, 0xC0, 0xF0, 0xF0, - 0x3C, 0x38, 0x07, 0x80, 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xC0, - 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x38, 0x01, 0xC0, 0x1E, 0x00, 0xF0, 0x07, - 0x80, 0x38, 0x01, 0xC0, 0x1F, 0xFE, 0xFF, 0xF7, 0xFF, 0x80, 0x1F, 0x03, - 0xF1, 0xF0, 0x3F, 0x1F, 0x07, 0xF1, 0xF0, 0x7F, 0x3F, 0x0F, 0xE3, 0xF0, - 0xEE, 0x3B, 0x1E, 0xE3, 0xB1, 0xDE, 0x3B, 0x1D, 0xE7, 0xB3, 0x9C, 0x7B, - 0x39, 0xC7, 0x37, 0x9C, 0x73, 0x73, 0xCF, 0x3F, 0x3C, 0xF3, 0xE3, 0x8F, - 0x3E, 0x38, 0xE3, 0xC3, 0x8E, 0x3C, 0x78, 0x1E, 0x03, 0x87, 0xC0, 0xE1, - 0xF0, 0x38, 0x7C, 0x1E, 0x1F, 0x87, 0x8F, 0xE1, 0xC3, 0xB8, 0x70, 0xEF, - 0x1C, 0x39, 0xCF, 0x1E, 0x73, 0xC7, 0x8E, 0xE1, 0xC3, 0xB8, 0x70, 0xEE, - 0x1C, 0x1F, 0x8F, 0x07, 0xE3, 0xC1, 0xF0, 0xE0, 0x3C, 0x38, 0x0F, 0x00, - 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE3, 0xE3, 0xC0, 0xF9, 0xE0, - 0x3D, 0xE0, 0x1E, 0xF0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x03, 0xDE, - 0x01, 0xEF, 0x00, 0xF7, 0xC0, 0xF1, 0xF0, 0xF0, 0xFF, 0xF0, 0x3F, 0xF0, - 0x07, 0xE0, 0x00, 0x1F, 0xFC, 0x1F, 0xFE, 0x1F, 0xFF, 0x1C, 0x1F, 0x1C, - 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0x1E, 0x3F, 0xFC, 0x3F, 0xFC, 0x7F, - 0xF0, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE3, 0xE3, - 0xC0, 0xF9, 0xC0, 0x3D, 0xE0, 0x1E, 0xF0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, - 0xFC, 0x03, 0xDE, 0x09, 0xEF, 0x0E, 0xE7, 0xC7, 0xF1, 0xF1, 0xF0, 0xFF, - 0xF8, 0x3F, 0xFE, 0x07, 0xE6, 0x00, 0x02, 0x00, 0x0F, 0xFE, 0x0F, 0xFF, - 0x87, 0xFF, 0xE3, 0x81, 0xF1, 0xC0, 0x78, 0xE0, 0x3C, 0xF0, 0x1C, 0x78, - 0x1E, 0x3F, 0xFC, 0x1F, 0xFC, 0x1F, 0xFF, 0x8F, 0x03, 0xC7, 0x81, 0xE3, - 0x80, 0xF1, 0xC0, 0xF1, 0xE0, 0x78, 0xF0, 0x3C, 0x78, 0x1F, 0x00, 0x03, - 0xF8, 0x0F, 0xFE, 0x1F, 0xFF, 0x1E, 0x1F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, - 0x00, 0x3F, 0x00, 0x1F, 0xF0, 0x0F, 0xFC, 0x01, 0xFE, 0x00, 0x3E, 0xF0, - 0x1E, 0xF0, 0x1E, 0xF8, 0x3C, 0x7F, 0xF8, 0x7F, 0xF0, 0x1F, 0xC0, 0x7F, - 0xFE, 0xFF, 0xFD, 0xFF, 0xF8, 0x1C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, - 0x03, 0x80, 0x07, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xE0, 0x01, - 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x38, 0x00, 0x1E, 0x07, 0x1C, - 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0x0E, 0x38, 0x0E, 0x78, 0x1E, 0x78, - 0x1E, 0x78, 0x1E, 0x78, 0x1C, 0x70, 0x1C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, - 0x38, 0xF8, 0x78, 0xFF, 0xF0, 0x7F, 0xE0, 0x1F, 0x80, 0xF0, 0x1F, 0xE0, - 0x39, 0xC0, 0xF3, 0x81, 0xC7, 0x07, 0x8E, 0x0E, 0x1C, 0x3C, 0x3C, 0x70, - 0x79, 0xE0, 0xF3, 0x80, 0xEF, 0x01, 0xDC, 0x03, 0xB8, 0x07, 0xE0, 0x0F, - 0x80, 0x1F, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x70, 0x7F, 0x87, 0x83, - 0xFC, 0x3C, 0x3D, 0xE1, 0xE1, 0xEF, 0x1F, 0x0E, 0x78, 0xD8, 0xF3, 0xC6, - 0xC7, 0x0E, 0x76, 0x78, 0x73, 0x33, 0x83, 0xB9, 0x9C, 0x1D, 0xCD, 0xC0, - 0xEC, 0x6E, 0x07, 0xE3, 0xE0, 0x3E, 0x1F, 0x01, 0xF0, 0xF0, 0x0F, 0x87, - 0x80, 0x78, 0x38, 0x03, 0xC1, 0xC0, 0x00, 0x0F, 0x03, 0xC3, 0xC1, 0xE0, - 0xF8, 0xF0, 0x1E, 0x78, 0x07, 0x9E, 0x00, 0xFF, 0x00, 0x3F, 0x80, 0x0F, - 0xC0, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3F, 0x00, 0x1F, 0xC0, 0x0F, 0xF0, - 0x07, 0x9E, 0x03, 0xC7, 0x80, 0xF0, 0xF0, 0x78, 0x3C, 0x3C, 0x0F, 0x80, - 0x78, 0x1E, 0xF0, 0x79, 0xE0, 0xF3, 0xC3, 0xC3, 0xCF, 0x07, 0x9E, 0x0F, - 0x78, 0x0F, 0xE0, 0x1F, 0x80, 0x3F, 0x00, 0x3C, 0x00, 0x70, 0x00, 0xE0, - 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x1F, 0xFF, - 0x0F, 0xFF, 0x87, 0xFF, 0xC0, 0x03, 0xC0, 0x03, 0xE0, 0x03, 0xE0, 0x03, - 0xE0, 0x03, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, - 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xFF, 0xF0, 0xFF, 0xF8, 0x7F, 0xFC, - 0x00, 0x0F, 0xC3, 0xF0, 0xFC, 0x38, 0x1E, 0x07, 0x01, 0xC0, 0x70, 0x1C, - 0x0F, 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x0F, - 0x03, 0x80, 0xFC, 0x3F, 0x0F, 0xC0, 0x08, 0x88, 0xC4, 0x44, 0x66, 0x66, - 0x66, 0x62, 0x22, 0x33, 0x33, 0x30, 0x0F, 0xC3, 0xF0, 0xFC, 0x07, 0x03, - 0xC0, 0xE0, 0x38, 0x0E, 0x03, 0x81, 0xC0, 0x70, 0x1C, 0x07, 0x03, 0xC0, - 0xE0, 0x38, 0x0E, 0x03, 0x81, 0xE0, 0x70, 0xFC, 0x3F, 0x0F, 0xC0, 0x03, - 0x80, 0xF0, 0x1E, 0x07, 0xE1, 0xDC, 0x3B, 0x8E, 0x71, 0x86, 0x70, 0xFC, - 0x1F, 0x83, 0x80, 0x7F, 0xFE, 0xFF, 0xFC, 0xE6, 0x30, 0x07, 0xE0, 0xFF, - 0x8F, 0xFE, 0x70, 0xE0, 0x07, 0x03, 0xF8, 0xFF, 0xCF, 0x9E, 0xF0, 0xF7, - 0x8F, 0x3F, 0xF8, 0xFF, 0xC3, 0xDF, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0x9F, 0x07, 0xFF, 0x0F, 0xFF, 0x3E, 0x3E, - 0x78, 0x3C, 0xF0, 0x79, 0xC0, 0xF3, 0x81, 0xEF, 0x07, 0x9F, 0x1F, 0x3F, - 0xFC, 0x7F, 0xF0, 0xEF, 0x80, 0x07, 0xC0, 0xFF, 0x8F, 0xFE, 0xF8, 0xF7, - 0x87, 0xB8, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0xF7, 0x8F, 0x1F, 0xF8, 0xFF, - 0x81, 0xF0, 0x00, 0x00, 0x1E, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x03, - 0xC0, 0xF7, 0x87, 0xFE, 0x1F, 0xFC, 0x7C, 0x78, 0xF0, 0x73, 0xC0, 0xE7, - 0x81, 0x8F, 0x07, 0x1E, 0x0E, 0x3E, 0x3C, 0x7F, 0xF8, 0x7F, 0xE0, 0x7D, - 0xC0, 0x07, 0xC0, 0xFF, 0x8F, 0xFE, 0xF0, 0xF7, 0x87, 0xFF, 0xFF, 0xFF, - 0xFE, 0x00, 0xF0, 0x07, 0xC7, 0x9F, 0xF8, 0xFF, 0x81, 0xF0, 0x00, 0x07, - 0x87, 0xC7, 0xE3, 0xC1, 0xC3, 0xF9, 0xFC, 0x78, 0x3C, 0x1C, 0x0E, 0x07, - 0x07, 0x83, 0x81, 0xC0, 0xE0, 0xF0, 0x78, 0x00, 0x03, 0xDE, 0x1F, 0xF8, - 0x7F, 0xF1, 0xF1, 0xE3, 0xC1, 0xCF, 0x03, 0x9E, 0x06, 0x3C, 0x0C, 0x78, - 0x38, 0xF8, 0xF1, 0xFF, 0xC1, 0xFF, 0x81, 0xF7, 0x00, 0x0E, 0x3C, 0x3C, - 0x78, 0xF0, 0x7F, 0xC0, 0x7E, 0x00, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x07, - 0x00, 0x3C, 0x00, 0xF7, 0xC3, 0xBF, 0x8F, 0xFF, 0x3C, 0x3D, 0xE0, 0xE7, - 0x83, 0x9C, 0x0E, 0x70, 0x79, 0xC1, 0xEF, 0x07, 0x3C, 0x1C, 0xE0, 0x73, - 0x83, 0xC0, 0x0E, 0x3C, 0x70, 0x00, 0x03, 0x8F, 0x1E, 0x38, 0x71, 0xE3, - 0xC7, 0x0E, 0x1C, 0x78, 0xF1, 0xC0, 0x03, 0xC0, 0xE0, 0x38, 0x00, 0x00, - 0x01, 0xE0, 0x70, 0x1C, 0x07, 0x03, 0xC0, 0xF0, 0x38, 0x0E, 0x03, 0x81, - 0xE0, 0x70, 0x1C, 0x07, 0x03, 0xC0, 0xF0, 0xF8, 0x3E, 0x0F, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0x87, 0x87, 0x1E, - 0x0E, 0x78, 0x3D, 0xE0, 0x7F, 0x80, 0xFE, 0x01, 0xFE, 0x03, 0xFC, 0x0F, - 0x38, 0x1E, 0x78, 0x38, 0xF0, 0x70, 0xF0, 0xE1, 0xE0, 0x0E, 0x3C, 0x78, - 0xE1, 0xC3, 0x8F, 0x1E, 0x38, 0x71, 0xE3, 0xC7, 0x0E, 0x1C, 0x78, 0xF1, - 0xC0, 0x1C, 0xF1, 0xE0, 0xEF, 0xDF, 0x87, 0xFF, 0xFE, 0x7C, 0x78, 0xF3, - 0xC3, 0x87, 0x9C, 0x1C, 0x38, 0xE1, 0xE1, 0xC7, 0x0E, 0x0E, 0x78, 0x70, - 0xF3, 0xC3, 0x87, 0x9C, 0x3C, 0x38, 0xE1, 0xE1, 0xC7, 0x0E, 0x0E, 0x00, - 0x3D, 0xF0, 0xEF, 0xE3, 0xFF, 0xCF, 0x0F, 0x78, 0x39, 0xC0, 0xE7, 0x03, - 0x9C, 0x1E, 0xF0, 0x7B, 0xC1, 0xCE, 0x07, 0x38, 0x1C, 0xE0, 0xF0, 0x07, - 0xE0, 0x7F, 0xE3, 0xFF, 0x9F, 0x1F, 0x78, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, - 0x1F, 0xF0, 0x7B, 0xE3, 0xE7, 0xFF, 0x1F, 0xF8, 0x1F, 0x80, 0x0E, 0x7C, - 0x0F, 0xFE, 0x0F, 0xFF, 0x1F, 0x1F, 0x1E, 0x0F, 0x1E, 0x0F, 0x1C, 0x0F, - 0x1C, 0x0F, 0x3C, 0x1E, 0x3E, 0x3E, 0x3F, 0xFC, 0x3F, 0xF8, 0x7B, 0xE0, - 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0xF0, 0x00, 0x07, 0xBC, - 0x7F, 0xF3, 0xFF, 0x9F, 0x1E, 0x78, 0x3B, 0xC0, 0xEF, 0x03, 0x3C, 0x0C, - 0xF0, 0x73, 0xE3, 0xCF, 0xFF, 0x1F, 0xF8, 0x3C, 0xE0, 0x03, 0x80, 0x1E, - 0x00, 0x78, 0x01, 0xC0, 0x07, 0x00, 0x3D, 0xCE, 0xE3, 0xF8, 0xF0, 0x78, - 0x1E, 0x07, 0x01, 0xC0, 0xF0, 0x3C, 0x0E, 0x03, 0x80, 0xE0, 0x00, 0x1F, - 0xC3, 0xFE, 0x7F, 0xFF, 0x0F, 0xF0, 0x0F, 0xE0, 0x7F, 0xC1, 0xFE, 0x03, - 0xEE, 0x1E, 0xFF, 0xC7, 0xFC, 0x3F, 0x00, 0x1E, 0x1E, 0x1C, 0x7F, 0xFF, - 0x3C, 0x38, 0x38, 0x38, 0x78, 0x78, 0x70, 0x7C, 0xF8, 0x78, 0x38, 0x3C, - 0xE0, 0xE3, 0x83, 0x9E, 0x0E, 0x70, 0x79, 0xC1, 0xE7, 0x07, 0x3C, 0x1C, - 0xF0, 0xF3, 0xE7, 0xCF, 0xFF, 0x1F, 0xF8, 0x3C, 0xE0, 0xF0, 0x77, 0x87, - 0xBC, 0x38, 0xE3, 0xC7, 0x1C, 0x39, 0xE1, 0xCE, 0x0E, 0xE0, 0x77, 0x03, - 0xF0, 0x0F, 0x80, 0x78, 0x03, 0xC0, 0x00, 0xF1, 0xC3, 0xF8, 0xE3, 0xFC, - 0xF1, 0xDE, 0x79, 0xEF, 0x3C, 0xE7, 0xB6, 0x73, 0xDB, 0x70, 0xED, 0xB8, - 0x7C, 0xF8, 0x3E, 0x7C, 0x1F, 0x3C, 0x0F, 0x1E, 0x07, 0x8E, 0x00, 0x0F, - 0x1E, 0x0F, 0x3C, 0x0F, 0x38, 0x07, 0x70, 0x07, 0xF0, 0x03, 0xE0, 0x03, - 0xC0, 0x07, 0xC0, 0x0F, 0xE0, 0x1E, 0xE0, 0x3C, 0xF0, 0x3C, 0xF0, 0x78, - 0x78, 0x3C, 0x1C, 0x78, 0x78, 0xF0, 0xE1, 0xE3, 0xC1, 0xC7, 0x03, 0x9E, - 0x07, 0x38, 0x0E, 0xE0, 0x1D, 0xC0, 0x3F, 0x00, 0x7E, 0x00, 0x78, 0x00, - 0xF0, 0x01, 0xC0, 0x07, 0x00, 0x7E, 0x00, 0xF8, 0x01, 0xE0, 0x00, 0x1F, - 0xF9, 0xFF, 0xCF, 0xFC, 0x01, 0xE0, 0x3E, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3F, 0xF9, 0xFF, 0xCF, 0xFC, 0x00, 0x07, 0x87, 0xC3, - 0xE3, 0xC1, 0xC0, 0xE0, 0x70, 0x38, 0x3C, 0x1C, 0x0E, 0x1E, 0x0F, 0x03, - 0x81, 0xC0, 0xE0, 0x70, 0x78, 0x38, 0x1C, 0x0F, 0x87, 0xC1, 0xC0, 0x0C, - 0x30, 0x86, 0x18, 0x61, 0x8C, 0x30, 0xC3, 0x0C, 0x61, 0x86, 0x18, 0x63, - 0x0C, 0x30, 0xC2, 0x00, 0x00, 0x07, 0x07, 0xC3, 0xE0, 0x70, 0x38, 0x3C, - 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xE0, 0xF0, 0xE0, 0x70, 0x78, 0x38, 0x1C, - 0x0E, 0x07, 0x07, 0x8F, 0x87, 0xC3, 0xC0, 0x3C, 0x07, 0xE0, 0xC7, 0x30, - 0x7E, 0x01, 0xC0}; - -const GFXglyph FreeSansBoldOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 7, 0, 1}, // 0x20 ' ' - {0, 7, 17, 8, 3, -16}, // 0x21 '!' - {15, 10, 6, 11, 4, -17}, // 0x22 '"' - {23, 15, 16, 13, 1, -15}, // 0x23 '#' - {53, 15, 21, 13, 1, -17}, // 0x24 '$' - {93, 18, 18, 21, 3, -17}, // 0x25 '%' - {134, 15, 17, 17, 2, -16}, // 0x26 '&' - {166, 4, 6, 6, 4, -17}, // 0x27 ''' - {169, 9, 22, 8, 2, -17}, // 0x28 '(' - {194, 9, 22, 8, -1, -16}, // 0x29 ')' - {219, 8, 8, 9, 3, -17}, // 0x2A '*' - {227, 12, 11, 14, 2, -10}, // 0x2B '+' - {244, 5, 7, 7, 1, -2}, // 0x2C ',' - {249, 7, 3, 8, 2, -7}, // 0x2D '-' - {252, 4, 3, 7, 2, -2}, // 0x2E '.' - {254, 10, 17, 7, 0, -16}, // 0x2F '/' - {276, 13, 17, 13, 2, -16}, // 0x30 '0' - {304, 9, 17, 13, 4, -16}, // 0x31 '1' - {324, 15, 17, 13, 1, -16}, // 0x32 '2' - {356, 13, 17, 13, 2, -16}, // 0x33 '3' - {384, 13, 17, 13, 1, -16}, // 0x34 '4' - {412, 14, 17, 13, 1, -16}, // 0x35 '5' - {442, 13, 17, 13, 2, -16}, // 0x36 '6' - {470, 13, 17, 13, 3, -16}, // 0x37 '7' - {498, 14, 17, 13, 1, -16}, // 0x38 '8' - {528, 14, 17, 13, 2, -16}, // 0x39 '9' - {558, 6, 12, 8, 3, -11}, // 0x3A ':' - {567, 7, 16, 8, 2, -11}, // 0x3B ';' - {581, 13, 12, 14, 2, -11}, // 0x3C '<' - {601, 14, 9, 14, 1, -9}, // 0x3D '=' - {617, 13, 12, 14, 1, -10}, // 0x3E '>' - {637, 13, 18, 15, 4, -17}, // 0x3F '?' - {667, 22, 21, 23, 2, -17}, // 0x40 '@' - {725, 17, 18, 17, 0, -17}, // 0x41 'A' - {764, 17, 18, 17, 2, -17}, // 0x42 'B' - {803, 17, 18, 17, 3, -17}, // 0x43 'C' - {842, 17, 18, 17, 2, -17}, // 0x44 'D' - {881, 16, 18, 16, 2, -17}, // 0x45 'E' - {917, 16, 18, 15, 2, -17}, // 0x46 'F' - {953, 17, 18, 19, 3, -17}, // 0x47 'G' - {992, 17, 18, 17, 2, -17}, // 0x48 'H' - {1031, 7, 18, 7, 2, -17}, // 0x49 'I' - {1047, 14, 18, 13, 1, -17}, // 0x4A 'J' - {1079, 18, 18, 17, 2, -17}, // 0x4B 'K' - {1120, 13, 18, 15, 2, -17}, // 0x4C 'L' - {1150, 20, 18, 20, 2, -17}, // 0x4D 'M' - {1195, 18, 18, 17, 2, -17}, // 0x4E 'N' - {1236, 17, 18, 19, 3, -17}, // 0x4F 'O' - {1275, 16, 18, 16, 2, -17}, // 0x50 'P' - {1311, 17, 19, 19, 3, -17}, // 0x51 'Q' - {1352, 17, 18, 17, 2, -17}, // 0x52 'R' - {1391, 16, 18, 16, 2, -17}, // 0x53 'S' - {1427, 15, 18, 15, 3, -17}, // 0x54 'T' - {1461, 16, 18, 17, 3, -17}, // 0x55 'U' - {1497, 15, 18, 16, 4, -17}, // 0x56 'V' - {1531, 21, 18, 23, 4, -17}, // 0x57 'W' - {1579, 18, 18, 16, 1, -17}, // 0x58 'X' - {1620, 15, 18, 16, 4, -17}, // 0x59 'Y' - {1654, 17, 18, 15, 1, -17}, // 0x5A 'Z' - {1693, 10, 23, 8, 1, -17}, // 0x5B '[' - {1722, 4, 23, 7, 3, -22}, // 0x5C '\' - {1734, 10, 23, 8, 0, -17}, // 0x5D ']' - {1763, 11, 11, 14, 3, -16}, // 0x5E '^' - {1779, 15, 2, 13, -2, 4}, // 0x5F '_' - {1783, 4, 3, 8, 4, -17}, // 0x60 '`' - {1785, 13, 13, 13, 1, -12}, // 0x61 'a' - {1807, 15, 18, 15, 1, -17}, // 0x62 'b' - {1841, 13, 13, 13, 2, -12}, // 0x63 'c' - {1863, 15, 18, 15, 2, -17}, // 0x64 'd' - {1897, 13, 13, 13, 2, -12}, // 0x65 'e' - {1919, 9, 18, 8, 2, -17}, // 0x66 'f' - {1940, 15, 18, 15, 1, -12}, // 0x67 'g' - {1974, 14, 18, 15, 2, -17}, // 0x68 'h' - {2006, 7, 18, 7, 2, -17}, // 0x69 'i' - {2022, 10, 23, 7, -1, -17}, // 0x6A 'j' - {2051, 15, 18, 13, 1, -17}, // 0x6B 'k' - {2085, 7, 18, 7, 2, -17}, // 0x6C 'l' - {2101, 21, 13, 21, 1, -12}, // 0x6D 'm' - {2136, 14, 13, 15, 2, -12}, // 0x6E 'n' - {2159, 14, 13, 15, 2, -12}, // 0x6F 'o' - {2182, 16, 18, 15, 0, -12}, // 0x70 'p' - {2218, 14, 18, 15, 2, -12}, // 0x71 'q' - {2250, 10, 13, 9, 2, -12}, // 0x72 'r' - {2267, 12, 13, 13, 3, -12}, // 0x73 's' - {2287, 8, 15, 8, 2, -14}, // 0x74 't' - {2302, 14, 13, 15, 2, -12}, // 0x75 'u' - {2325, 13, 13, 13, 3, -12}, // 0x76 'v' - {2347, 17, 13, 19, 3, -12}, // 0x77 'w' - {2375, 16, 13, 13, 0, -12}, // 0x78 'x' - {2401, 15, 18, 13, 1, -12}, // 0x79 'y' - {2435, 13, 13, 12, 1, -12}, // 0x7A 'z' - {2457, 9, 23, 9, 3, -17}, // 0x7B '{' - {2483, 6, 23, 7, 1, -17}, // 0x7C '|' - {2501, 9, 23, 9, 0, -17}, // 0x7D '}' - {2527, 12, 5, 14, 2, -7}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique12pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique12pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 3207 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h deleted file mode 100644 index 441c6b5..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h +++ /dev/null @@ -1,547 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique18pt7bBitmaps[] PROGMEM = { - 0x06, 0x01, 0xC0, 0x7C, 0x1F, 0x0F, 0xC3, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, - 0xC0, 0xF0, 0x7C, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1C, 0x07, 0x01, 0xC0, - 0x60, 0x7C, 0x1F, 0x07, 0xC3, 0xF0, 0xF8, 0x00, 0x78, 0x7B, 0xC3, 0xFE, - 0x3F, 0xE1, 0xEF, 0x0F, 0x78, 0x7B, 0x83, 0x9C, 0x1C, 0xC0, 0xC0, 0x00, - 0x3C, 0x38, 0x00, 0xF1, 0xE0, 0x07, 0x87, 0x00, 0x1E, 0x3C, 0x00, 0xF0, - 0xE0, 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x1F, 0xFF, 0xF8, - 0x0F, 0x0E, 0x00, 0x3C, 0x78, 0x00, 0xE1, 0xE0, 0x07, 0x8F, 0x00, 0x1C, - 0x3C, 0x07, 0xFF, 0xFE, 0x1F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE3, 0xFF, 0xFF, - 0x01, 0xE3, 0xC0, 0x0F, 0x0E, 0x00, 0x3C, 0x78, 0x01, 0xE1, 0xC0, 0x07, - 0x8F, 0x00, 0x3C, 0x38, 0x00, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0xFC, - 0x00, 0xFF, 0xC0, 0x3F, 0xFC, 0x0F, 0xFF, 0xC3, 0xE6, 0x78, 0x78, 0xCF, - 0x1E, 0x39, 0xE3, 0xC7, 0x3C, 0x78, 0xC0, 0x0F, 0x98, 0x01, 0xFF, 0x00, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x00, 0x7F, 0x80, 0x0F, 0xF0, - 0x03, 0xBE, 0x00, 0x67, 0xCF, 0x8C, 0xF9, 0xF1, 0x9F, 0x3E, 0x77, 0xC7, - 0xEF, 0xF8, 0x7F, 0xFE, 0x0F, 0xFF, 0x80, 0xFF, 0xE0, 0x03, 0xE0, 0x00, - 0x38, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x07, 0x01, 0xE0, - 0x03, 0x81, 0xFE, 0x00, 0xC0, 0xFF, 0x80, 0x70, 0x7F, 0xF0, 0x38, 0x1E, - 0x3C, 0x1C, 0x0F, 0x07, 0x06, 0x03, 0x81, 0xC3, 0x80, 0xE0, 0xF1, 0xC0, - 0x3C, 0x78, 0xE0, 0x0F, 0xFE, 0x30, 0x01, 0xFF, 0x1C, 0x00, 0x7F, 0x8E, - 0x00, 0x07, 0x83, 0x00, 0x00, 0x01, 0x83, 0xE0, 0x00, 0xE3, 0xFE, 0x00, - 0x71, 0xFF, 0x80, 0x18, 0xFF, 0xF0, 0x0C, 0x3C, 0x3C, 0x07, 0x1C, 0x07, - 0x03, 0x87, 0x01, 0xC0, 0xC1, 0xE1, 0xE0, 0x60, 0x7F, 0xF8, 0x38, 0x0F, - 0xFC, 0x1C, 0x03, 0xFE, 0x06, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x03, - 0xFC, 0x00, 0x3F, 0xF0, 0x03, 0xFF, 0x80, 0x3F, 0x3C, 0x01, 0xF1, 0xE0, - 0x0F, 0x8F, 0x00, 0x7C, 0xF0, 0x03, 0xFF, 0x80, 0x0F, 0xF8, 0x00, 0x3F, - 0x00, 0x03, 0xF0, 0x00, 0x7F, 0xC7, 0x8F, 0xFE, 0x3C, 0xFC, 0xFB, 0xCF, - 0x83, 0xFE, 0xF8, 0x1F, 0xE7, 0xC0, 0x7E, 0x3E, 0x03, 0xE1, 0xF0, 0x1F, - 0x0F, 0xE3, 0xFC, 0x7F, 0xFF, 0xE1, 0xFF, 0xFF, 0x87, 0xFE, 0x7C, 0x0F, - 0xE1, 0xF0, 0x7B, 0xFF, 0xEF, 0x7B, 0x9C, 0xC0, 0x00, 0x78, 0x07, 0x80, - 0x78, 0x03, 0x80, 0x3C, 0x03, 0xC0, 0x1E, 0x01, 0xE0, 0x1E, 0x00, 0xF0, - 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0xF0, 0x07, - 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, - 0x07, 0x80, 0x1C, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x00, 0xE0, 0x07, 0x80, - 0x1C, 0x00, 0x01, 0xC0, 0x0F, 0x00, 0x38, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x01, 0xC0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, - 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0xF8, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x1E, - 0x00, 0xF0, 0x07, 0x80, 0x78, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x1E, 0x01, - 0xE0, 0x1E, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x00, 0x03, 0x00, 0x70, 0x07, - 0x04, 0x63, 0xFF, 0xF7, 0xFF, 0x1F, 0x83, 0xF0, 0x3B, 0x87, 0x38, 0x21, - 0x00, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x7C, 0x07, 0xFF, 0xFD, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xE0, - 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x3E, 0x7C, 0xF3, 0xE7, 0xC1, 0x87, 0x0C, 0x39, 0xE3, 0x00, 0x7F, - 0xDF, 0xFF, 0xFB, 0xFE, 0x7D, 0xF7, 0xBE, 0xF8, 0x00, 0x0E, 0x00, 0x18, - 0x00, 0x70, 0x00, 0xC0, 0x03, 0x80, 0x06, 0x00, 0x1C, 0x00, 0x30, 0x00, - 0xE0, 0x01, 0x80, 0x07, 0x00, 0x0C, 0x00, 0x38, 0x00, 0x60, 0x01, 0xC0, - 0x03, 0x00, 0x0E, 0x00, 0x18, 0x00, 0x70, 0x00, 0xC0, 0x03, 0x80, 0x06, - 0x00, 0x1C, 0x00, 0x30, 0x00, 0xE0, 0x00, 0x00, 0xFC, 0x00, 0x7F, 0xC0, - 0x7F, 0xF8, 0x3F, 0xFE, 0x0F, 0x8F, 0xC7, 0xC1, 0xF1, 0xE0, 0x7C, 0xF8, - 0x1F, 0x3E, 0x07, 0xDF, 0x01, 0xF7, 0xC0, 0x7D, 0xF0, 0x3F, 0x7C, 0x0F, - 0xBF, 0x03, 0xEF, 0x80, 0xFB, 0xE0, 0x3E, 0xF8, 0x1F, 0x3E, 0x07, 0xCF, - 0x81, 0xE3, 0xE0, 0xF8, 0xFC, 0x7C, 0x1F, 0xFF, 0x07, 0xFF, 0x80, 0xFF, - 0xC0, 0x0F, 0x80, 0x00, 0x00, 0x70, 0x03, 0x80, 0x3C, 0x03, 0xE0, 0xFF, - 0x3F, 0xF3, 0xFF, 0x9F, 0xFC, 0x03, 0xE0, 0x1F, 0x01, 0xF0, 0x0F, 0x80, - 0x7C, 0x03, 0xE0, 0x1E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x3E, - 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x3E, 0x00, 0x00, 0x1F, 0x80, - 0x07, 0xFF, 0x00, 0x7F, 0xFC, 0x07, 0xFF, 0xE0, 0x7E, 0x1F, 0x83, 0xE0, - 0x7C, 0x1F, 0x03, 0xE1, 0xF0, 0x1F, 0x0F, 0x80, 0xF8, 0x00, 0x0F, 0x80, - 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xE0, 0x00, 0xFC, - 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, - 0x00, 0x03, 0xF0, 0x00, 0x1F, 0xFF, 0xE1, 0xFF, 0xFF, 0x0F, 0xFF, 0xF0, - 0x7F, 0xFF, 0x80, 0x00, 0x7F, 0x00, 0x1F, 0xFC, 0x03, 0xFF, 0xE0, 0x7F, - 0xFF, 0x0F, 0x83, 0xF0, 0xF0, 0x1F, 0x1F, 0x01, 0xF1, 0xE0, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0xFC, 0x00, 0xFF, 0x80, 0x0F, 0xF0, 0x00, 0xFF, 0x80, - 0x0F, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xCF, 0x80, 0x7C, - 0xF8, 0x07, 0xCF, 0x80, 0xF8, 0xFC, 0x3F, 0x8F, 0xFF, 0xF0, 0x7F, 0xFE, - 0x03, 0xFF, 0xC0, 0x0F, 0xE0, 0x00, 0x00, 0x07, 0xE0, 0x01, 0xFC, 0x00, - 0x7F, 0x00, 0x1F, 0xE0, 0x03, 0xFC, 0x00, 0xEF, 0x80, 0x3D, 0xF0, 0x0F, - 0x7C, 0x03, 0xCF, 0x80, 0xF1, 0xF0, 0x1C, 0x3E, 0x07, 0x07, 0xC1, 0xE1, - 0xF0, 0x78, 0x3E, 0x1E, 0x07, 0xC3, 0xFF, 0xFE, 0x7F, 0xFF, 0xDF, 0xFF, - 0xFB, 0xFF, 0xFF, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, 0x1F, - 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x01, 0xFF, 0xF0, 0x3F, 0xFF, 0x03, - 0xFF, 0xF0, 0x3F, 0xFF, 0x07, 0x80, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x00, - 0xF7, 0xE0, 0x0F, 0xFF, 0x01, 0xFF, 0xF8, 0x1F, 0xFF, 0x83, 0xF0, 0xFC, - 0x3E, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, - 0x8F, 0x80, 0xF8, 0xF8, 0x1F, 0x8F, 0xC3, 0xF0, 0xFF, 0xFE, 0x07, 0xFF, - 0xC0, 0x3F, 0xF8, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, - 0xFF, 0x03, 0xFF, 0xE0, 0xF8, 0x7E, 0x3E, 0x07, 0xC7, 0x80, 0x01, 0xF0, - 0x00, 0x3C, 0xFC, 0x07, 0xFF, 0xC1, 0xFF, 0xFC, 0x3F, 0xFF, 0xC7, 0xE1, - 0xF8, 0xF8, 0x1F, 0x3E, 0x03, 0xE7, 0x80, 0x7C, 0xF0, 0x0F, 0x9E, 0x01, - 0xE3, 0xC0, 0x7C, 0x78, 0x1F, 0x0F, 0x87, 0xE0, 0xFF, 0xF8, 0x1F, 0xFE, - 0x01, 0xFF, 0x80, 0x0F, 0xC0, 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xF9, 0xFF, - 0xFF, 0x7F, 0xFF, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, - 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x07, 0x80, 0x01, 0xF0, 0x00, 0x7C, - 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x3E, 0x00, - 0x07, 0xC0, 0x00, 0x00, 0x7F, 0x00, 0x1F, 0xFC, 0x07, 0xFF, 0xE0, 0xFF, - 0xFF, 0x0F, 0x81, 0xF1, 0xF0, 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x1E, 0x1F, - 0x07, 0xE0, 0xFF, 0xFC, 0x07, 0xFF, 0x00, 0xFF, 0xF8, 0x1F, 0xFF, 0x83, - 0xF0, 0xFC, 0x7C, 0x07, 0xC7, 0xC0, 0x7C, 0xF8, 0x07, 0xCF, 0x80, 0x7C, - 0xF8, 0x0F, 0x8F, 0x80, 0xF8, 0xFC, 0x3F, 0x0F, 0xFF, 0xF0, 0x7F, 0xFE, - 0x03, 0xFF, 0x80, 0x0F, 0xE0, 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, - 0xFF, 0x03, 0xFF, 0xE0, 0xFC, 0x3E, 0x3F, 0x03, 0xC7, 0xC0, 0x79, 0xF0, - 0x0F, 0x3E, 0x01, 0xE7, 0xC0, 0x3C, 0xF8, 0x0F, 0x9F, 0x03, 0xE3, 0xF0, - 0xFC, 0x7F, 0xFF, 0x87, 0xFF, 0xF0, 0x7F, 0xFE, 0x07, 0xE7, 0x80, 0x01, - 0xF0, 0x00, 0x3C, 0x7C, 0x0F, 0x8F, 0xC3, 0xE1, 0xFF, 0xF8, 0x1F, 0xFE, - 0x01, 0xFF, 0x80, 0x0F, 0xC0, 0x00, 0x0F, 0x87, 0xC3, 0xC3, 0xE1, 0xF0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xE1, 0xF0, 0xF0, - 0xF8, 0x7C, 0x00, 0x07, 0xC1, 0xF0, 0x78, 0x3E, 0x0F, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x83, 0xE0, 0xF0, 0x7C, - 0x1F, 0x00, 0xC0, 0x70, 0x18, 0x0E, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x20, - 0x00, 0x3C, 0x00, 0x3F, 0x80, 0x3F, 0xE0, 0x3F, 0xFC, 0x3F, 0xFC, 0x1F, - 0xFC, 0x07, 0xFC, 0x00, 0xFC, 0x00, 0x1F, 0xF0, 0x03, 0xFF, 0x80, 0x1F, - 0xFE, 0x00, 0xFF, 0xF0, 0x03, 0xFE, 0x00, 0x1F, 0xC0, 0x00, 0x78, 0x00, - 0x03, 0x00, 0x1F, 0xFF, 0xF3, 0xFF, 0xFE, 0x3F, 0xFF, 0xE3, 0xFF, 0xFE, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, - 0xC7, 0xFF, 0xFC, 0xFF, 0xFF, 0x8F, 0xFF, 0xF8, 0x18, 0x00, 0x03, 0xC0, - 0x00, 0x7F, 0x00, 0x0F, 0xF8, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0x3F, - 0xF8, 0x01, 0xFF, 0x00, 0x07, 0xE0, 0x07, 0xFC, 0x07, 0xFF, 0x07, 0xFF, - 0x87, 0xFF, 0x80, 0xFF, 0x80, 0x3F, 0x80, 0x07, 0x80, 0x00, 0x80, 0x00, - 0x00, 0x03, 0xF8, 0x03, 0xFF, 0xC1, 0xFF, 0xF8, 0xFF, 0xFE, 0x7E, 0x1F, - 0xDF, 0x03, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xC0, 0x03, 0xE0, - 0x01, 0xF8, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x80, 0x1F, - 0x80, 0x07, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x07, 0xC0, 0x01, 0xF0, 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0x00, 0x7F, 0x80, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x03, 0xFF, 0xFE, - 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x0F, 0xC0, 0x03, 0xE0, 0x0F, 0x80, 0x00, - 0xF8, 0x0F, 0x00, 0x00, 0x3C, 0x0F, 0x01, 0xF1, 0xCF, 0x0F, 0x03, 0xFD, - 0xC7, 0x8F, 0x03, 0xFF, 0xE1, 0xC7, 0x03, 0xE3, 0xE0, 0xE7, 0x03, 0xC0, - 0xF0, 0x73, 0x83, 0xC0, 0x78, 0x3B, 0x81, 0xE0, 0x38, 0x1D, 0xC1, 0xE0, - 0x1C, 0x1C, 0xC0, 0xF0, 0x1C, 0x0E, 0xE0, 0x70, 0x0E, 0x0F, 0x70, 0x78, - 0x0E, 0x07, 0x38, 0x3C, 0x0F, 0x07, 0x1C, 0x1E, 0x0F, 0x87, 0x8E, 0x0F, - 0x8F, 0xCF, 0x87, 0x07, 0xFF, 0xFF, 0x83, 0xC1, 0xFE, 0x7F, 0x00, 0xE0, - 0x3C, 0x1F, 0x00, 0x78, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x0F, - 0xC0, 0x01, 0x00, 0x03, 0xF8, 0x07, 0x80, 0x00, 0xFF, 0xFF, 0xC0, 0x00, - 0x1F, 0xFF, 0xE0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x00, - 0x0F, 0xE0, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xC0, 0x00, 0xFF, 0x80, 0x03, - 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x1F, 0x7C, 0x00, 0x7E, 0xF8, 0x00, 0xF9, - 0xF0, 0x03, 0xF3, 0xE0, 0x07, 0xC3, 0xE0, 0x1F, 0x87, 0xC0, 0x3E, 0x0F, - 0x80, 0xF8, 0x1F, 0x01, 0xF0, 0x3E, 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, - 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xF1, 0xF0, 0x03, 0xE7, 0xC0, 0x07, 0xCF, - 0x80, 0x0F, 0xBE, 0x00, 0x1F, 0x7C, 0x00, 0x3F, 0xF0, 0x00, 0x7C, 0x07, - 0xFF, 0xF0, 0x07, 0xFF, 0xFC, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x0F, - 0xC0, 0x3F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x1F, - 0x80, 0x1E, 0x1F, 0x80, 0x3E, 0x1F, 0x00, 0x7C, 0x1F, 0xFF, 0xF8, 0x1F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x3E, 0x00, 0xFC, 0x3E, - 0x00, 0x7C, 0x3E, 0x00, 0x7C, 0x7E, 0x00, 0x7C, 0x7C, 0x00, 0x7C, 0x7C, - 0x00, 0xF8, 0x7C, 0x01, 0xF8, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xC0, 0xFF, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xF8, 0x01, - 0xFF, 0xFC, 0x03, 0xFF, 0xFE, 0x07, 0xE0, 0x7F, 0x0F, 0xC0, 0x3F, 0x1F, - 0x80, 0x1F, 0x3F, 0x00, 0x1F, 0x3E, 0x00, 0x1F, 0x7E, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x7C, 0xF8, - 0x00, 0x7C, 0xFC, 0x00, 0xF8, 0xFC, 0x01, 0xF8, 0x7F, 0x07, 0xF0, 0x7F, - 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0x0F, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x07, - 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xFE, 0x0F, - 0x80, 0x7E, 0x0F, 0x80, 0x3F, 0x0F, 0x80, 0x1F, 0x1F, 0x80, 0x1F, 0x1F, - 0x80, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x3F, - 0x00, 0x1F, 0x3E, 0x00, 0x3E, 0x3E, 0x00, 0x3E, 0x3E, 0x00, 0x3E, 0x3E, - 0x00, 0x3E, 0x7E, 0x00, 0x7C, 0x7C, 0x00, 0x7C, 0x7C, 0x00, 0xF8, 0x7C, - 0x01, 0xF8, 0x7C, 0x07, 0xF0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xC0, 0xFF, - 0xFF, 0x00, 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x07, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFE, 0x0F, 0x80, 0x00, 0x0F, 0x80, 0x00, 0x0F, - 0x80, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF0, 0x3F, - 0xFF, 0xF0, 0x3E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFF, - 0xFF, 0xF0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0x07, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, 0xE0, 0xF8, - 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFF, 0xFF, 0x03, 0xFF, 0xFE, - 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, - 0x80, 0x00, 0x3F, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xF8, 0x01, 0xFF, 0xFC, 0x03, - 0xFF, 0xFE, 0x07, 0xE0, 0x7E, 0x0F, 0x80, 0x3F, 0x1F, 0x00, 0x1F, 0x3E, - 0x00, 0x1F, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0xF8, 0x03, 0xFF, 0xF8, 0x07, 0xFF, 0xF8, 0x07, 0xFE, 0xF8, - 0x07, 0xFE, 0xF8, 0x00, 0x3E, 0xF8, 0x00, 0x3E, 0xFC, 0x00, 0x7E, 0xFC, - 0x00, 0x7C, 0x7E, 0x00, 0xFC, 0x7F, 0x83, 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xBC, 0x0F, 0xFF, 0x38, 0x03, 0xFC, 0x38, 0x03, 0xE0, 0x07, 0xC0, - 0xF8, 0x01, 0xF0, 0x7E, 0x00, 0x7C, 0x1F, 0x00, 0x3F, 0x07, 0xC0, 0x0F, - 0x81, 0xF0, 0x03, 0xE0, 0xFC, 0x00, 0xF8, 0x3E, 0x00, 0x3E, 0x0F, 0x80, - 0x1F, 0x83, 0xE0, 0x07, 0xC0, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC1, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, - 0x3F, 0x00, 0x3E, 0x0F, 0x80, 0x0F, 0x83, 0xE0, 0x07, 0xE0, 0xF8, 0x01, - 0xF0, 0x3E, 0x00, 0x7C, 0x1F, 0x80, 0x1F, 0x07, 0xC0, 0x0F, 0xC1, 0xF0, - 0x03, 0xF0, 0x7C, 0x00, 0xF8, 0x3F, 0x00, 0x3E, 0x00, 0x07, 0xC3, 0xF0, - 0xFC, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x7E, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, - 0x3F, 0x0F, 0xC3, 0xE0, 0xF8, 0x3E, 0x0F, 0x87, 0xE1, 0xF0, 0x7C, 0x1F, - 0x07, 0xC3, 0xF0, 0xFC, 0x3E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, - 0x01, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, - 0x00, 0x3E, 0x00, 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x7C, 0x0F, - 0x8F, 0x81, 0xF8, 0xF8, 0x1F, 0x0F, 0x81, 0xF0, 0xF8, 0x1F, 0x0F, 0xC3, - 0xF0, 0xFF, 0xFE, 0x07, 0xFF, 0xC0, 0x3F, 0xF8, 0x01, 0xFC, 0x00, 0x07, - 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xE0, 0x7C, 0x03, 0xF0, 0x3F, 0x03, 0xF8, - 0x0F, 0x81, 0xF8, 0x03, 0xE0, 0xFC, 0x00, 0xF8, 0x7E, 0x00, 0x7E, 0x3F, - 0x00, 0x1F, 0x1F, 0x80, 0x07, 0xCF, 0xC0, 0x01, 0xF7, 0xE0, 0x00, 0x7F, - 0xF0, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, - 0xFE, 0xFC, 0x00, 0x3F, 0x1F, 0x80, 0x1F, 0x87, 0xE0, 0x07, 0xC0, 0xFC, - 0x01, 0xF0, 0x3F, 0x00, 0x7C, 0x07, 0xE0, 0x1F, 0x01, 0xFC, 0x0F, 0xC0, - 0x3F, 0x03, 0xE0, 0x0F, 0xE0, 0xF8, 0x01, 0xF8, 0x3E, 0x00, 0x3F, 0x00, - 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x0F, 0xC0, 0x03, - 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, 0x80, 0x07, 0xC0, 0x01, 0xF0, - 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x0F, 0xC0, 0x03, 0xE0, 0x00, 0xF8, 0x00, - 0x3E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, - 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xE0, 0x03, - 0xF8, 0x01, 0xFC, 0x07, 0xF0, 0x07, 0xF8, 0x1F, 0xE0, 0x0F, 0xF0, 0x3F, - 0xC0, 0x3F, 0xE0, 0x7F, 0x80, 0x7F, 0xC0, 0xFF, 0x01, 0xFF, 0x01, 0xFE, - 0x03, 0xFE, 0x07, 0xDC, 0x07, 0x7C, 0x0F, 0xB8, 0x1E, 0xF8, 0x1F, 0x70, - 0x3D, 0xF0, 0x3E, 0xF0, 0xF7, 0xC0, 0xF9, 0xE1, 0xEF, 0x81, 0xF3, 0xC7, - 0x9F, 0x03, 0xE7, 0x8F, 0x3E, 0x07, 0xCF, 0x3C, 0x7C, 0x0F, 0x9E, 0x79, - 0xF0, 0x3E, 0x3C, 0xE3, 0xE0, 0x7C, 0x7B, 0xC7, 0xC0, 0xF8, 0xF7, 0x8F, - 0x81, 0xF1, 0xFE, 0x1E, 0x07, 0xE3, 0xFC, 0x7C, 0x0F, 0x87, 0xF0, 0xF8, - 0x1F, 0x0F, 0xE1, 0xF0, 0x3E, 0x1F, 0x83, 0xE0, 0x7C, 0x3F, 0x0F, 0x81, - 0xF0, 0x7E, 0x1F, 0x00, 0x03, 0xE0, 0x07, 0xC0, 0x7E, 0x00, 0xF8, 0x1F, - 0xC0, 0x1F, 0x03, 0xF8, 0x03, 0xE0, 0x7F, 0x80, 0x7C, 0x0F, 0xF0, 0x1F, - 0x01, 0xFF, 0x03, 0xE0, 0x7F, 0xE0, 0x7C, 0x0F, 0xBC, 0x0F, 0x81, 0xF7, - 0xC1, 0xF0, 0x3E, 0xF8, 0x7C, 0x0F, 0x8F, 0x0F, 0x81, 0xF1, 0xF1, 0xF0, - 0x3E, 0x3E, 0x3E, 0x07, 0xC3, 0xC7, 0xC0, 0xF8, 0x7D, 0xF0, 0x3E, 0x0F, - 0xBE, 0x07, 0xC0, 0xF7, 0xC0, 0xF8, 0x1F, 0xF8, 0x1F, 0x01, 0xFE, 0x03, - 0xC0, 0x3F, 0xC0, 0xF8, 0x07, 0xF8, 0x1F, 0x00, 0x7F, 0x03, 0xE0, 0x0F, - 0xE0, 0x7C, 0x01, 0xF8, 0x1F, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xFF, 0xC0, 0x7E, 0x07, 0xF0, - 0x7E, 0x01, 0xF8, 0x7C, 0x00, 0x7E, 0x3E, 0x00, 0x1F, 0x3E, 0x00, 0x0F, - 0x9E, 0x00, 0x07, 0xDF, 0x00, 0x03, 0xEF, 0x80, 0x01, 0xFF, 0x80, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x7D, 0xF0, 0x00, 0x3E, 0xF8, 0x00, - 0x1F, 0x7C, 0x00, 0x1F, 0x3E, 0x00, 0x1F, 0x9F, 0x80, 0x0F, 0x87, 0xE0, - 0x0F, 0x83, 0xF8, 0x1F, 0x80, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0x80, 0x0F, - 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xF0, - 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, 0xF0, 0xF8, 0x07, 0xE1, 0xF0, 0x07, 0xC3, - 0xE0, 0x0F, 0x8F, 0xC0, 0x1F, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0xF8, 0x7C, - 0x01, 0xF0, 0xF8, 0x07, 0xC3, 0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x0F, 0xFF, - 0xF8, 0x1F, 0xFF, 0x80, 0x3E, 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF0, 0x00, - 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x3F, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xFF, 0xC0, 0x7F, 0x07, - 0xF0, 0x7E, 0x01, 0xF8, 0x7E, 0x00, 0x7E, 0x3E, 0x00, 0x1F, 0x3E, 0x00, - 0x0F, 0x9E, 0x00, 0x07, 0xDF, 0x00, 0x03, 0xEF, 0x80, 0x01, 0xF7, 0x80, - 0x00, 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x7D, 0xF0, 0x00, 0x3E, 0xF8, - 0x02, 0x1F, 0x7C, 0x03, 0x9F, 0x3E, 0x03, 0xFF, 0x9F, 0x81, 0xFF, 0x87, - 0xE0, 0x7F, 0x83, 0xF8, 0x3F, 0xC0, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xF0, - 0x0F, 0xFF, 0xFC, 0x01, 0xFE, 0x1C, 0x00, 0x00, 0x0C, 0x00, 0x07, 0xFF, - 0xF8, 0x07, 0xFF, 0xFE, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x0F, 0x80, - 0x3F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x1F, 0x80, - 0x1E, 0x1F, 0x00, 0x3E, 0x1F, 0x00, 0x7C, 0x1F, 0xFF, 0xF8, 0x1F, 0xFF, - 0xE0, 0x3F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3E, 0x01, 0xF8, 0x3E, 0x00, - 0xF8, 0x3E, 0x00, 0xF8, 0x7E, 0x00, 0xF8, 0x7C, 0x00, 0xF8, 0x7C, 0x01, - 0xF0, 0x7C, 0x01, 0xF0, 0x7C, 0x01, 0xF0, 0xFC, 0x01, 0xF0, 0xF8, 0x01, - 0xF0, 0xF8, 0x01, 0xF0, 0x00, 0x3F, 0xC0, 0x07, 0xFF, 0xC0, 0x3F, 0xFF, - 0x81, 0xFF, 0xFF, 0x0F, 0xC0, 0xFC, 0x3E, 0x01, 0xF1, 0xF0, 0x07, 0xC7, - 0xC0, 0x1F, 0x1F, 0x00, 0x00, 0x7E, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xFF, - 0x80, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x03, 0xFE, - 0x00, 0x01, 0xF8, 0x00, 0x03, 0xEF, 0x80, 0x0F, 0xBE, 0x00, 0x3C, 0xFC, - 0x01, 0xF3, 0xF8, 0x1F, 0x87, 0xFF, 0xFE, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, - 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xFF, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x3E, - 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, - 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, - 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, - 0x00, 0x0F, 0x80, 0x1F, 0x1F, 0x80, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, - 0x3F, 0x1F, 0x00, 0x3E, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0x3E, 0x3E, 0x00, - 0x7E, 0x3E, 0x00, 0x7C, 0x3E, 0x00, 0x7C, 0x3E, 0x00, 0x7C, 0x7C, 0x00, - 0x7C, 0x7C, 0x00, 0xFC, 0x7C, 0x00, 0xF8, 0x7C, 0x00, 0xF8, 0x7C, 0x00, - 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x01, 0xF8, 0xF8, 0x01, 0xF0, 0xF8, 0x01, - 0xF0, 0xF8, 0x03, 0xE0, 0xFE, 0x0F, 0xE0, 0x7F, 0xFF, 0xC0, 0x7F, 0xFF, - 0x80, 0x1F, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0xFC, 0x00, 0x7F, 0xF0, 0x03, - 0xE7, 0xC0, 0x0F, 0x9F, 0x00, 0x7C, 0x7C, 0x01, 0xF1, 0xF0, 0x0F, 0x87, - 0xC0, 0x3E, 0x1F, 0x01, 0xF0, 0x7C, 0x07, 0x81, 0xF0, 0x3E, 0x03, 0xC0, - 0xF0, 0x0F, 0x07, 0xC0, 0x3E, 0x1E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xC0, - 0x0F, 0x9F, 0x00, 0x3E, 0x78, 0x00, 0xFB, 0xE0, 0x01, 0xEF, 0x00, 0x07, - 0xFC, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xE0, - 0x00, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x07, 0xE0, 0x1F, 0xF8, - 0x07, 0xE0, 0x3F, 0xF8, 0x0F, 0xE0, 0x3E, 0xF8, 0x0F, 0xE0, 0x7E, 0xF8, - 0x1F, 0xE0, 0x7C, 0xF8, 0x1F, 0xE0, 0x7C, 0xF8, 0x3F, 0xE0, 0xF8, 0xF8, - 0x3D, 0xE0, 0xF8, 0x78, 0x3D, 0xE1, 0xF0, 0x78, 0x79, 0xE1, 0xF0, 0x78, - 0x79, 0xE1, 0xE0, 0x78, 0xF9, 0xE3, 0xE0, 0x78, 0xF1, 0xE3, 0xC0, 0x79, - 0xF1, 0xE7, 0xC0, 0x79, 0xE1, 0xE7, 0x80, 0x79, 0xE1, 0xE7, 0x80, 0x7B, - 0xC1, 0xEF, 0x80, 0x7B, 0xC1, 0xEF, 0x00, 0x7F, 0x81, 0xFF, 0x00, 0x7F, - 0x81, 0xFE, 0x00, 0x7F, 0x01, 0xFE, 0x00, 0x7F, 0x01, 0xFC, 0x00, 0x7F, - 0x01, 0xFC, 0x00, 0x7E, 0x01, 0xF8, 0x00, 0x3E, 0x01, 0xF8, 0x00, 0x3C, - 0x01, 0xF0, 0x00, 0x03, 0xF0, 0x07, 0xE0, 0x7E, 0x01, 0xF8, 0x07, 0xE0, - 0x7E, 0x00, 0xFC, 0x1F, 0x80, 0x1F, 0x83, 0xE0, 0x01, 0xF8, 0xF8, 0x00, - 0x3F, 0x3F, 0x00, 0x03, 0xEF, 0xC0, 0x00, 0x7F, 0xF0, 0x00, 0x0F, 0xFC, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, - 0x00, 0x3E, 0xF8, 0x00, 0x0F, 0xDF, 0x80, 0x03, 0xF3, 0xF0, 0x00, 0xFC, - 0x3F, 0x00, 0x3F, 0x07, 0xE0, 0x07, 0xE0, 0xFC, 0x01, 0xF8, 0x0F, 0xC0, - 0x7E, 0x01, 0xF8, 0x1F, 0x80, 0x3F, 0x80, 0x7C, 0x00, 0xFD, 0xF8, 0x07, - 0xE7, 0xE0, 0x1F, 0x1F, 0x80, 0xFC, 0x3E, 0x07, 0xE0, 0xFC, 0x1F, 0x03, - 0xF0, 0xFC, 0x07, 0xC7, 0xE0, 0x1F, 0x1F, 0x00, 0x7E, 0xFC, 0x00, 0xFB, - 0xE0, 0x03, 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, - 0x01, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x01, - 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0x81, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xE0, 0x00, - 0x07, 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF8, 0x00, - 0x03, 0xF8, 0x00, 0x01, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, - 0xF0, 0x7F, 0xFF, 0xF0, 0x00, 0x01, 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x1F, - 0xF0, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0xF0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x00, 0xE7, 0x39, 0xCE, 0x31, 0x8C, - 0x63, 0x1C, 0xE7, 0x39, 0xCE, 0x31, 0x8C, 0x63, 0x9C, 0xE7, 0x38, 0x01, - 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x1F, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x3E, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x3E, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x1F, 0xF0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, - 0x00, 0x00, 0x7C, 0x00, 0xFC, 0x01, 0xFC, 0x01, 0xFC, 0x03, 0xFC, 0x03, - 0x9E, 0x07, 0x9E, 0x0F, 0x1E, 0x0F, 0x1E, 0x1E, 0x1E, 0x1C, 0x0F, 0x3C, - 0x0F, 0x78, 0x0F, 0x78, 0x0F, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFE, 0xF3, 0x8C, 0x71, 0x80, 0x01, 0xFE, 0x01, 0xFF, 0xE0, - 0xFF, 0xF8, 0x7F, 0xFF, 0x1F, 0x0F, 0xC7, 0x81, 0xF0, 0x00, 0x7C, 0x00, - 0xFE, 0x07, 0xFF, 0x87, 0xFF, 0xE3, 0xFE, 0xF9, 0xF0, 0x7C, 0xF8, 0x1F, - 0x3E, 0x0F, 0xCF, 0x87, 0xF3, 0xFF, 0xF8, 0xFF, 0xFE, 0x1F, 0xEF, 0x81, - 0xE3, 0xF0, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, - 0x07, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF9, 0xF8, 0x0F, 0xFF, - 0xC1, 0xFF, 0xFE, 0x1F, 0xFF, 0xE1, 0xFC, 0x3F, 0x1F, 0x83, 0xF1, 0xF0, - 0x1F, 0x3E, 0x01, 0xF3, 0xE0, 0x1F, 0x3C, 0x01, 0xF3, 0xC0, 0x1F, 0x3C, - 0x03, 0xE7, 0xC0, 0x3E, 0x7E, 0x07, 0xC7, 0xF1, 0xFC, 0x7F, 0xFF, 0x87, - 0xFF, 0xF0, 0xFB, 0xFE, 0x0F, 0x9F, 0x80, 0x00, 0xFC, 0x01, 0xFF, 0xC0, - 0xFF, 0xF8, 0x7F, 0xFF, 0x3F, 0x0F, 0xCF, 0x81, 0xF7, 0xC0, 0x7D, 0xF0, - 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x0F, - 0xBE, 0x07, 0xCF, 0xC3, 0xF1, 0xFF, 0xF8, 0x7F, 0xFC, 0x0F, 0xFE, 0x00, - 0xFE, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, - 0x3E, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x7E, 0x7C, - 0x07, 0xFD, 0xF0, 0x3F, 0xFF, 0xC1, 0xFF, 0xFE, 0x0F, 0xE3, 0xF8, 0x3E, - 0x07, 0xE1, 0xF0, 0x1F, 0x87, 0xC0, 0x3C, 0x3E, 0x00, 0xF0, 0xF8, 0x07, - 0xC3, 0xE0, 0x1F, 0x0F, 0x80, 0x7C, 0x3E, 0x03, 0xE0, 0xF8, 0x1F, 0x83, - 0xF0, 0xFE, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x7E, - 0x7C, 0x00, 0x00, 0xFE, 0x00, 0x7F, 0xE0, 0x3F, 0xFE, 0x0F, 0xFF, 0xE3, - 0xF0, 0x7E, 0x7C, 0x07, 0xDF, 0x00, 0xFB, 0xE0, 0x1F, 0x7F, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x1F, 0x3F, - 0x07, 0xE3, 0xFF, 0xF8, 0x7F, 0xFE, 0x03, 0xFF, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0xF8, 0x1F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7C, 0x07, 0xC0, 0x3E, 0x0F, - 0xFE, 0x7F, 0xF3, 0xFF, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, - 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x78, 0x07, 0xC0, 0x3E, 0x01, - 0xF0, 0x0F, 0x80, 0xF8, 0x07, 0xC0, 0x00, 0x00, 0x7C, 0x7C, 0x07, 0xFD, - 0xF0, 0x3F, 0xF7, 0x81, 0xFF, 0xFE, 0x0F, 0xE3, 0xF8, 0x3E, 0x07, 0xE1, - 0xF8, 0x0F, 0x87, 0xC0, 0x3C, 0x1E, 0x00, 0xF0, 0xF8, 0x03, 0xC3, 0xE0, - 0x1F, 0x0F, 0x80, 0x78, 0x3E, 0x03, 0xE0, 0xF8, 0x1F, 0x83, 0xF0, 0xFE, - 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xC0, 0x3F, 0xEF, 0x00, 0x3E, 0x7C, 0x00, - 0x01, 0xF0, 0x00, 0x07, 0xC3, 0xE0, 0x3E, 0x0F, 0x80, 0xF8, 0x3F, 0x0F, - 0xC0, 0x7F, 0xFE, 0x00, 0xFF, 0xF0, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x0F, 0x80, 0x00, 0xF8, 0xF8, 0x0F, 0xBF, 0xE0, 0xFF, 0xFF, 0x0F, - 0xFF, 0xF1, 0xFC, 0x3F, 0x1F, 0x81, 0xF1, 0xF0, 0x1F, 0x1F, 0x01, 0xF1, - 0xE0, 0x1F, 0x3E, 0x03, 0xE3, 0xE0, 0x3E, 0x3E, 0x03, 0xE3, 0xE0, 0x3E, - 0x7C, 0x03, 0xE7, 0xC0, 0x7C, 0x7C, 0x07, 0xC7, 0xC0, 0x7C, 0x7C, 0x07, - 0xCF, 0x80, 0x78, 0x07, 0xC1, 0xF0, 0x7C, 0x3E, 0x00, 0x00, 0x00, 0x00, - 0x3E, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, - 0x0F, 0x87, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, 0x3E, 0x00, - 0x00, 0x3E, 0x00, 0x78, 0x01, 0xF0, 0x03, 0xE0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, - 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, - 0x1F, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x1F, - 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x03, 0xF0, 0x1F, 0xC0, 0x3F, 0x80, - 0x7E, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, - 0x0F, 0x80, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, - 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x07, 0xC7, 0xE0, 0x3E, 0x7E, 0x01, - 0xF7, 0xE0, 0x0F, 0xFE, 0x00, 0xFF, 0xE0, 0x07, 0xFF, 0x00, 0x3F, 0xFC, - 0x01, 0xFF, 0xE0, 0x0F, 0xDF, 0x00, 0xFC, 0xFC, 0x07, 0xC3, 0xE0, 0x3E, - 0x1F, 0x01, 0xF0, 0xFC, 0x0F, 0x83, 0xE0, 0xF8, 0x1F, 0x87, 0xC0, 0xFC, - 0x00, 0x07, 0xC1, 0xF0, 0x7C, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x1F, - 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x87, - 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, 0x3E, 0x00, 0x0F, 0x8F, - 0x83, 0xF0, 0x3E, 0xFF, 0x3F, 0xE0, 0xF7, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, - 0xFF, 0x1F, 0xC7, 0xF8, 0x7C, 0x7C, 0x0F, 0x81, 0xF1, 0xF0, 0x3E, 0x07, - 0xCF, 0x81, 0xF0, 0x3E, 0x3E, 0x07, 0xC0, 0xF8, 0xF8, 0x1F, 0x03, 0xE3, - 0xE0, 0x7C, 0x0F, 0x8F, 0x81, 0xF0, 0x3E, 0x7C, 0x0F, 0x81, 0xF1, 0xF0, - 0x3E, 0x07, 0xC7, 0xC0, 0xF8, 0x1F, 0x1F, 0x03, 0xE0, 0x7C, 0x7C, 0x0F, - 0x81, 0xE3, 0xE0, 0x7C, 0x0F, 0x8F, 0x81, 0xF0, 0x3E, 0x00, 0x0F, 0x8F, - 0x80, 0xFB, 0xFE, 0x0F, 0xFF, 0xF1, 0xFF, 0xFF, 0x1F, 0xC3, 0xF1, 0xF8, - 0x1F, 0x1F, 0x01, 0xF1, 0xF0, 0x1F, 0x3E, 0x01, 0xF3, 0xE0, 0x3E, 0x3E, - 0x03, 0xE3, 0xE0, 0x3E, 0x3C, 0x03, 0xE7, 0xC0, 0x3E, 0x7C, 0x07, 0xC7, - 0xC0, 0x7C, 0x7C, 0x07, 0xC7, 0x80, 0x7C, 0xF8, 0x07, 0x80, 0x00, 0xFE, - 0x00, 0x7F, 0xF0, 0x3F, 0xFF, 0x0F, 0xFF, 0xE3, 0xF8, 0xFE, 0x7C, 0x0F, - 0xDF, 0x00, 0xFB, 0xE0, 0x1F, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xE0, 0x1F, - 0xFC, 0x03, 0xEF, 0x80, 0x7D, 0xF8, 0x1F, 0x3F, 0x07, 0xE3, 0xFF, 0xF8, - 0x7F, 0xFE, 0x07, 0xFF, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xE7, 0xE0, 0x0F, - 0xBF, 0xC0, 0x7D, 0xFF, 0x81, 0xFF, 0xFE, 0x07, 0xF0, 0xFC, 0x1F, 0x81, - 0xF0, 0x7C, 0x07, 0xC3, 0xE0, 0x1F, 0x0F, 0x80, 0x7C, 0x3E, 0x01, 0xF0, - 0xF0, 0x07, 0xC3, 0xC0, 0x3E, 0x1F, 0x00, 0xF8, 0x7E, 0x07, 0xC1, 0xFC, - 0x7F, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xC0, 0xFB, 0xFE, 0x03, 0xE7, 0xE0, - 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x1F, - 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x01, - 0xF1, 0xF0, 0x7F, 0xDF, 0x0F, 0xFD, 0xF1, 0xFF, 0xFE, 0x3F, 0x8F, 0xE3, - 0xE0, 0x7E, 0x7C, 0x03, 0xE7, 0xC0, 0x3E, 0xF8, 0x03, 0xCF, 0x80, 0x3C, - 0xF8, 0x07, 0xCF, 0x80, 0x7C, 0xF8, 0x0F, 0x8F, 0x81, 0xF8, 0xFC, 0x3F, - 0x87, 0xFF, 0xF8, 0x7F, 0xFF, 0x83, 0xFF, 0xF0, 0x1F, 0x9F, 0x00, 0x01, - 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x0F, 0x8E, 0x1F, 0x7C, 0x3F, - 0xF0, 0xFF, 0xE1, 0xFC, 0x03, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x3E, 0x00, - 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, - 0x00, 0x7C, 0x00, 0xF0, 0x03, 0xE0, 0x00, 0x01, 0xFC, 0x01, 0xFF, 0xC0, - 0xFF, 0xF8, 0x7F, 0xFF, 0x3F, 0x0F, 0xCF, 0x81, 0xF3, 0xF0, 0x00, 0xFF, - 0x80, 0x3F, 0xFC, 0x07, 0xFF, 0xC0, 0x7F, 0xF8, 0x03, 0xFE, 0x00, 0x1F, - 0xBE, 0x03, 0xEF, 0xC1, 0xFB, 0xFF, 0xFC, 0x7F, 0xFE, 0x0F, 0xFF, 0x00, - 0xFE, 0x00, 0x0F, 0x81, 0xF0, 0x7C, 0x0F, 0x81, 0xF0, 0xFF, 0xBF, 0xF7, - 0xFE, 0x3E, 0x07, 0xC0, 0xF8, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, - 0xF8, 0x1F, 0x03, 0xE0, 0x7F, 0x0F, 0xE1, 0xFC, 0x1F, 0x80, 0x1F, 0x01, - 0xF1, 0xF0, 0x1F, 0x3E, 0x03, 0xE3, 0xE0, 0x3E, 0x3E, 0x03, 0xE3, 0xE0, - 0x3E, 0x3E, 0x03, 0xE7, 0xC0, 0x7C, 0x7C, 0x07, 0xC7, 0xC0, 0x7C, 0x7C, - 0x07, 0xC7, 0xC0, 0x7C, 0xF8, 0x0F, 0x8F, 0x81, 0xF8, 0xF8, 0x3F, 0x8F, - 0xFF, 0xF8, 0xFF, 0xFF, 0x07, 0xFD, 0xF0, 0x3F, 0x1F, 0x00, 0xF8, 0x0F, - 0xFE, 0x03, 0xEF, 0x81, 0xF3, 0xE0, 0x7C, 0xF8, 0x3E, 0x3E, 0x0F, 0x8F, - 0x87, 0xC1, 0xE1, 0xF0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x9F, 0x01, 0xF7, - 0x80, 0x7F, 0xE0, 0x1F, 0xF0, 0x03, 0xFC, 0x00, 0xFE, 0x00, 0x3F, 0x80, - 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0xF8, 0x1F, 0x07, 0xFF, 0x03, 0xE0, 0xFB, - 0xE0, 0xFC, 0x1F, 0x7C, 0x1F, 0x87, 0xCF, 0x87, 0xF0, 0xF9, 0xF0, 0xFE, - 0x3E, 0x3E, 0x3D, 0xC7, 0xC3, 0xC7, 0xB9, 0xF0, 0x79, 0xE7, 0x3E, 0x0F, - 0x3C, 0xE7, 0x81, 0xEF, 0x1D, 0xF0, 0x3D, 0xE3, 0xBC, 0x07, 0xBC, 0x7F, - 0x80, 0xFF, 0x0F, 0xE0, 0x1F, 0xE1, 0xFC, 0x03, 0xF8, 0x3F, 0x00, 0x7F, - 0x07, 0xE0, 0x0F, 0xC0, 0xF8, 0x01, 0xF8, 0x1F, 0x00, 0x00, 0x0F, 0xC1, - 0xF8, 0x3F, 0x07, 0xC0, 0x7C, 0x3E, 0x01, 0xF9, 0xF8, 0x03, 0xEF, 0xC0, - 0x0F, 0xBE, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0x80, 0x01, 0xFC, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x3E, 0xF8, - 0x01, 0xFB, 0xF0, 0x07, 0xC7, 0xC0, 0x3E, 0x1F, 0x81, 0xF8, 0x7E, 0x0F, - 0xC0, 0xF8, 0x00, 0x1F, 0x80, 0x7C, 0x3E, 0x03, 0xE0, 0xF8, 0x0F, 0x03, - 0xE0, 0x7C, 0x0F, 0x81, 0xE0, 0x3E, 0x0F, 0x80, 0xF8, 0x3C, 0x03, 0xE1, - 0xF0, 0x07, 0x87, 0x80, 0x1F, 0x3E, 0x00, 0x7C, 0xF0, 0x01, 0xF7, 0xC0, - 0x07, 0xDE, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xC0, 0x01, 0xFE, 0x00, 0x03, - 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x01, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x0F, 0xFF, 0xE1, 0xFF, 0xFC, 0x3F, - 0xFF, 0x87, 0xFF, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, - 0xF0, 0x01, 0xFC, 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, 0xF8, - 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xFF, 0xF8, 0xFF, 0xFF, 0x1F, 0xFF, - 0xE3, 0xFF, 0xFC, 0x00, 0x00, 0x7C, 0x03, 0xF0, 0x1F, 0xC0, 0xFE, 0x03, - 0xE0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, - 0xE0, 0x0F, 0x80, 0x3C, 0x01, 0xF0, 0x1F, 0x80, 0x70, 0x01, 0xF8, 0x01, - 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, - 0xF0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xFC, 0x07, 0xE0, 0x0F, 0x80, - 0x1E, 0x00, 0x03, 0x81, 0xC0, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0C, 0x0E, - 0x07, 0x03, 0x81, 0xC0, 0xC0, 0xE0, 0x70, 0x38, 0x18, 0x1C, 0x0E, 0x07, - 0x03, 0x81, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x18, 0x1C, 0x0E, 0x07, 0x01, - 0x80, 0x80, 0x00, 0x00, 0x01, 0xE0, 0x07, 0xC0, 0x1F, 0x80, 0xFE, 0x00, - 0x78, 0x01, 0xE0, 0x07, 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, - 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x7E, 0x00, 0x38, 0x07, 0xE0, - 0x3E, 0x00, 0xF0, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, - 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1F, 0x01, 0xF8, 0x0F, 0xE0, 0x3F, 0x00, - 0xF8, 0x00, 0x0F, 0x00, 0x1F, 0xC1, 0xDF, 0xF0, 0xEE, 0x3F, 0xE6, 0x07, - 0xF0, 0x01, 0xE0}; - -const GFXglyph FreeSansBoldOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 10, 0, 1}, // 0x20 ' ' - {0, 10, 25, 12, 4, -24}, // 0x21 '!' - {32, 13, 9, 17, 6, -25}, // 0x22 '"' - {47, 22, 24, 19, 1, -23}, // 0x23 '#' - {113, 19, 31, 19, 2, -26}, // 0x24 '$' - {187, 26, 26, 31, 5, -25}, // 0x25 '%' - {272, 21, 25, 25, 3, -24}, // 0x26 '&' - {338, 5, 9, 8, 6, -25}, // 0x27 ''' - {344, 13, 33, 12, 3, -25}, // 0x28 '(' - {398, 13, 33, 12, -1, -25}, // 0x29 ')' - {452, 12, 11, 14, 5, -25}, // 0x2A '*' - {469, 18, 16, 20, 3, -15}, // 0x2B '+' - {505, 7, 11, 10, 1, -4}, // 0x2C ',' - {515, 10, 4, 12, 2, -10}, // 0x2D '-' - {520, 6, 5, 10, 2, -4}, // 0x2E '.' - {524, 15, 25, 10, 0, -24}, // 0x2F '/' - {571, 18, 25, 19, 3, -24}, // 0x30 '0' - {628, 13, 25, 19, 6, -24}, // 0x31 '1' - {669, 21, 25, 19, 1, -24}, // 0x32 '2' - {735, 20, 25, 19, 2, -24}, // 0x33 '3' - {798, 19, 25, 19, 2, -24}, // 0x34 '4' - {858, 20, 24, 19, 2, -23}, // 0x35 '5' - {918, 19, 25, 19, 3, -24}, // 0x36 '6' - {978, 19, 24, 19, 5, -23}, // 0x37 '7' - {1035, 20, 25, 19, 2, -24}, // 0x38 '8' - {1098, 19, 25, 19, 2, -24}, // 0x39 '9' - {1158, 9, 18, 12, 4, -17}, // 0x3A ':' - {1179, 10, 24, 12, 3, -17}, // 0x3B ';' - {1209, 19, 17, 20, 3, -16}, // 0x3C '<' - {1250, 20, 12, 20, 2, -13}, // 0x3D '=' - {1280, 19, 17, 20, 1, -15}, // 0x3E '>' - {1321, 18, 26, 21, 6, -25}, // 0x3F '?' - {1380, 33, 31, 34, 3, -25}, // 0x40 '@' - {1508, 23, 26, 25, 1, -25}, // 0x41 'A' - {1583, 24, 26, 25, 3, -25}, // 0x42 'B' - {1661, 24, 26, 25, 4, -25}, // 0x43 'C' - {1739, 24, 26, 25, 3, -25}, // 0x44 'D' - {1817, 24, 26, 23, 3, -25}, // 0x45 'E' - {1895, 23, 26, 21, 3, -25}, // 0x46 'F' - {1970, 24, 26, 27, 4, -25}, // 0x47 'G' - {2048, 26, 26, 25, 2, -25}, // 0x48 'H' - {2133, 10, 26, 10, 2, -25}, // 0x49 'I' - {2166, 20, 26, 19, 2, -25}, // 0x4A 'J' - {2231, 26, 26, 25, 3, -25}, // 0x4B 'K' - {2316, 18, 26, 21, 3, -25}, // 0x4C 'L' - {2375, 31, 26, 29, 2, -25}, // 0x4D 'M' - {2476, 27, 26, 25, 2, -25}, // 0x4E 'N' - {2564, 25, 26, 27, 4, -25}, // 0x4F 'O' - {2646, 23, 26, 23, 3, -25}, // 0x50 'P' - {2721, 25, 27, 27, 4, -25}, // 0x51 'Q' - {2806, 24, 26, 25, 3, -25}, // 0x52 'R' - {2884, 22, 26, 23, 3, -25}, // 0x53 'S' - {2956, 21, 26, 21, 5, -25}, // 0x54 'T' - {3025, 24, 26, 25, 4, -25}, // 0x55 'U' - {3103, 22, 26, 23, 6, -25}, // 0x56 'V' - {3175, 32, 26, 33, 6, -25}, // 0x57 'W' - {3279, 27, 26, 23, 1, -25}, // 0x58 'X' - {3367, 22, 26, 23, 6, -25}, // 0x59 'Y' - {3439, 25, 26, 21, 1, -25}, // 0x5A 'Z' - {3521, 15, 33, 12, 1, -25}, // 0x5B '[' - {3583, 5, 25, 10, 5, -24}, // 0x5C '\' - {3599, 15, 33, 12, -1, -25}, // 0x5D ']' - {3661, 16, 15, 20, 4, -23}, // 0x5E '^' - {3691, 21, 3, 19, -2, 5}, // 0x5F '_' - {3699, 5, 5, 12, 6, -25}, // 0x60 '`' - {3703, 18, 19, 19, 2, -18}, // 0x61 'a' - {3746, 20, 26, 21, 2, -25}, // 0x62 'b' - {3811, 18, 19, 19, 3, -18}, // 0x63 'c' - {3854, 22, 26, 21, 3, -25}, // 0x64 'd' - {3926, 19, 19, 19, 2, -18}, // 0x65 'e' - {3972, 13, 26, 12, 3, -25}, // 0x66 'f' - {4015, 22, 27, 21, 1, -18}, // 0x67 'g' - {4090, 20, 26, 21, 2, -25}, // 0x68 'h' - {4155, 10, 26, 10, 2, -25}, // 0x69 'i' - {4188, 15, 34, 10, -2, -25}, // 0x6A 'j' - {4252, 21, 26, 19, 2, -25}, // 0x6B 'k' - {4321, 10, 26, 10, 2, -25}, // 0x6C 'l' - {4354, 30, 19, 31, 2, -18}, // 0x6D 'm' - {4426, 20, 19, 21, 2, -18}, // 0x6E 'n' - {4474, 19, 19, 21, 3, -18}, // 0x6F 'o' - {4520, 22, 27, 21, 0, -18}, // 0x70 'p' - {4595, 20, 27, 21, 3, -18}, // 0x71 'q' - {4663, 15, 19, 14, 2, -18}, // 0x72 'r' - {4699, 18, 19, 19, 2, -18}, // 0x73 's' - {4742, 11, 23, 12, 4, -22}, // 0x74 't' - {4774, 20, 19, 21, 3, -18}, // 0x75 'u' - {4822, 18, 19, 19, 5, -18}, // 0x76 'v' - {4865, 27, 19, 27, 4, -18}, // 0x77 'w' - {4930, 22, 19, 19, 1, -18}, // 0x78 'x' - {4983, 22, 27, 19, 1, -18}, // 0x79 'y' - {5058, 19, 19, 17, 1, -18}, // 0x7A 'z' - {5104, 14, 33, 14, 2, -25}, // 0x7B '{' - {5162, 9, 33, 10, 2, -25}, // 0x7C '|' - {5200, 14, 33, 14, 2, -25}, // 0x7D '}' - {5258, 17, 6, 20, 3, -10}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique18pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique18pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 5943 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h deleted file mode 100644 index a20229d..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h +++ /dev/null @@ -1,895 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xE0, 0x07, 0xF0, 0x1F, 0xC0, 0xFF, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, - 0x80, 0xFE, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x1F, - 0x80, 0x7E, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0xF8, 0x03, 0xE0, 0x0F, - 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x1F, - 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0xFE, 0x03, 0xF8, 0x00, - 0x7E, 0x0F, 0xDF, 0x83, 0xF7, 0xE0, 0xFF, 0xF0, 0x7E, 0xFC, 0x1F, 0xBF, - 0x07, 0xEF, 0xC1, 0xFB, 0xE0, 0x7C, 0xF8, 0x1F, 0x3C, 0x07, 0x8F, 0x01, - 0xE3, 0x80, 0x70, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x3E, 0x0F, 0x80, 0x03, - 0xE0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x01, 0xF0, 0x7C, 0x00, 0x0F, 0x83, - 0xE0, 0x00, 0xF8, 0x3E, 0x00, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF8, - 0x7F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0x0F, - 0x83, 0xE0, 0x00, 0x7C, 0x3E, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x3E, 0x0F, - 0x80, 0x03, 0xE0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0xF8, 0x7C, 0x00, - 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0x1F, 0x07, 0xC0, 0x00, 0xF8, 0x3E, - 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x7C, 0x1F, 0x00, 0x07, 0xC1, 0xF0, 0x00, - 0x3E, 0x0F, 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0xF8, - 0x3C, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x38, 0x00, 0x00, 0x0E, - 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x7F, 0xFF, 0x00, 0x3F, 0xFF, 0xE0, 0x1F, - 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0x07, 0xF3, 0x9F, 0xC1, 0xF8, 0xE3, 0xF0, - 0x7C, 0x38, 0xFC, 0x3F, 0x0E, 0x3F, 0x0F, 0xC7, 0x8F, 0xC3, 0xF1, 0xC0, - 0x00, 0xFE, 0x70, 0x00, 0x3F, 0xDC, 0x00, 0x0F, 0xFF, 0x00, 0x01, 0xFF, - 0xE0, 0x00, 0x3F, 0xFE, 0x00, 0x0F, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, - 0x0F, 0xFF, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x77, 0xF8, 0x00, 0x1C, 0xFE, - 0x00, 0x07, 0x3F, 0x8F, 0xE3, 0xCF, 0xE3, 0xF8, 0xE3, 0xF8, 0xFE, 0x38, - 0xFC, 0x3F, 0x8E, 0x7F, 0x0F, 0xF3, 0x9F, 0xC3, 0xFD, 0xFF, 0xE0, 0x7F, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFC, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x38, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x03, 0x80, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x01, 0xF8, 0x00, 0x07, - 0x80, 0x7F, 0xE0, 0x00, 0xF0, 0x0F, 0xFF, 0x00, 0x1E, 0x01, 0xFF, 0xF0, - 0x01, 0xC0, 0x3F, 0xFF, 0x80, 0x3C, 0x07, 0xE1, 0xF8, 0x07, 0x80, 0x78, - 0x07, 0x80, 0xF0, 0x0F, 0x80, 0x78, 0x0E, 0x00, 0xF0, 0x07, 0x81, 0xC0, - 0x0F, 0x00, 0xF8, 0x3C, 0x00, 0xF0, 0x0F, 0x07, 0x80, 0x0F, 0xC3, 0xF0, - 0xF0, 0x00, 0xFF, 0xFE, 0x0E, 0x00, 0x07, 0xFF, 0xC1, 0xE0, 0x00, 0x7F, - 0xF8, 0x3C, 0x00, 0x03, 0xFF, 0x07, 0x80, 0x00, 0x0F, 0xC0, 0x70, 0x00, - 0x00, 0x00, 0x0E, 0x03, 0xF0, 0x00, 0x01, 0xE0, 0xFF, 0xC0, 0x00, 0x3C, - 0x1F, 0xFE, 0x00, 0x03, 0x83, 0xFF, 0xE0, 0x00, 0x70, 0x7F, 0xFF, 0x00, - 0x0F, 0x0F, 0xC3, 0xF0, 0x01, 0xE0, 0xF0, 0x0F, 0x00, 0x3C, 0x1F, 0x00, - 0xF0, 0x03, 0x81, 0xE0, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xF0, 0x0F, 0x01, - 0xE0, 0x1E, 0x01, 0xE0, 0x1F, 0x87, 0xE0, 0x1C, 0x01, 0xFF, 0xFC, 0x03, - 0x80, 0x0F, 0xFF, 0x80, 0x78, 0x00, 0xFF, 0xF0, 0x0F, 0x00, 0x07, 0xFE, - 0x01, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3F, 0xF0, - 0x00, 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0xFF, 0x00, 0x03, 0xFF, 0xF8, 0x00, - 0x3F, 0x9F, 0xC0, 0x03, 0xF8, 0x7E, 0x00, 0x1F, 0xC3, 0xF0, 0x00, 0xFE, - 0x1F, 0x00, 0x07, 0xF1, 0xF8, 0x00, 0x3F, 0xCF, 0xC0, 0x01, 0xFE, 0xFC, - 0x00, 0x07, 0xFF, 0xC0, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0xFF, 0xC0, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xFF, 0x07, 0xC1, 0xFF, - 0xF8, 0x3E, 0x3F, 0xFF, 0xE3, 0xE3, 0xFE, 0x3F, 0x1F, 0x1F, 0xC1, 0xFD, - 0xF1, 0xFC, 0x07, 0xFF, 0x8F, 0xC0, 0x3F, 0xF8, 0xFE, 0x00, 0xFF, 0xC7, - 0xF0, 0x07, 0xFC, 0x3F, 0x80, 0x1F, 0xC1, 0xFC, 0x00, 0xFE, 0x0F, 0xF0, - 0x1F, 0xF8, 0x7F, 0xC1, 0xFF, 0xC1, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, - 0xFC, 0x3F, 0xFF, 0xCF, 0xE0, 0x7F, 0xF8, 0x7F, 0x80, 0xFF, 0x00, 0x00, - 0x7E, 0xFD, 0xFF, 0xEF, 0xDF, 0xBF, 0x7C, 0xF9, 0xE3, 0xC7, 0x00, 0x00, - 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0xC0, 0x07, 0xC0, 0x07, 0xC0, - 0x07, 0xE0, 0x03, 0xE0, 0x03, 0xE0, 0x03, 0xF0, 0x01, 0xF0, 0x01, 0xF8, - 0x00, 0xF8, 0x00, 0xFC, 0x00, 0x7C, 0x00, 0x7E, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x03, 0xF0, 0x01, - 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, - 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x3E, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, - 0x1E, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x7C, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, - 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, - 0x00, 0x1F, 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xE0, 0x03, - 0xE0, 0x03, 0xF0, 0x01, 0xF0, 0x01, 0xF8, 0x00, 0xF8, 0x00, 0xFC, 0x00, - 0x7C, 0x00, 0x7C, 0x00, 0x7E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3F, 0x00, - 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xE0, 0x03, 0x80, 0x07, - 0x00, 0x0E, 0x07, 0x3C, 0x6F, 0xFF, 0xFF, 0xFF, 0xBF, 0xFE, 0x0F, 0xE0, - 0x1F, 0xC0, 0x7F, 0x81, 0xEF, 0x87, 0x8F, 0x0E, 0x1E, 0x08, 0x10, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, - 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF8, 0x00, - 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xC7, 0xF1, 0xF8, 0xFE, 0x3F, - 0x8F, 0xE0, 0x38, 0x1C, 0x07, 0x03, 0xC0, 0xE0, 0xF0, 0xFC, 0x3C, 0x0C, - 0x00, 0x7F, 0xFD, 0xFF, 0xF7, 0xFF, 0x9F, 0xFE, 0xFF, 0xFB, 0xFF, 0xE0, - 0x7F, 0x7F, 0x7F, 0x7E, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x70, 0x00, 0x0E, - 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x03, - 0x80, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x01, - 0xC0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, - 0x70, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, - 0x38, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, - 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, - 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x1F, 0xFC, 0x00, 0x3F, 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x3F, 0xFF, 0xF0, - 0x1F, 0xC7, 0xF8, 0x1F, 0xC1, 0xFE, 0x1F, 0xC0, 0x7F, 0x0F, 0xC0, 0x3F, - 0x8F, 0xE0, 0x1F, 0xC7, 0xF0, 0x0F, 0xE3, 0xF0, 0x07, 0xF3, 0xF8, 0x03, - 0xF9, 0xFC, 0x01, 0xFC, 0xFC, 0x01, 0xFE, 0xFE, 0x00, 0xFE, 0x7F, 0x00, - 0x7F, 0x3F, 0x80, 0x3F, 0x9F, 0xC0, 0x1F, 0xCF, 0xE0, 0x1F, 0xEF, 0xE0, - 0x0F, 0xE7, 0xF0, 0x07, 0xF3, 0xF8, 0x03, 0xF9, 0xFC, 0x03, 0xF8, 0xFE, - 0x01, 0xFC, 0x7F, 0x00, 0xFE, 0x3F, 0x80, 0xFE, 0x1F, 0xE0, 0x7F, 0x0F, - 0xF8, 0xFF, 0x03, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x80, - 0x1F, 0xFF, 0x00, 0x07, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x0F, - 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xE0, 0x0F, 0xF0, 0x3F, 0xF9, 0xFF, - 0xF8, 0xFF, 0xFC, 0xFF, 0xFE, 0x7F, 0xFF, 0x00, 0x3F, 0x80, 0x1F, 0x80, - 0x0F, 0xC0, 0x0F, 0xE0, 0x07, 0xF0, 0x03, 0xF8, 0x01, 0xF8, 0x01, 0xFC, - 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x00, 0x1F, 0x80, 0x1F, 0xC0, 0x0F, - 0xE0, 0x07, 0xF0, 0x03, 0xF0, 0x01, 0xF8, 0x01, 0xFC, 0x00, 0xFE, 0x00, - 0x7F, 0x00, 0x3F, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x00, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x7F, 0xFC, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0xE0, - 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0x07, 0xFC, 0x07, 0xF0, 0x1F, 0xE0, 0x7F, - 0x00, 0x7F, 0x03, 0xF0, 0x03, 0xF8, 0x1F, 0x80, 0x1F, 0xC1, 0xF8, 0x00, - 0xFE, 0x0F, 0xC0, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x1F, 0xF8, 0x00, 0x01, 0xFF, - 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xC0, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x03, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xF0, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x0F, 0xFF, 0x80, 0x0F, 0xFF, 0xF0, 0x07, - 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xC0, 0xFE, 0x1F, 0xF0, 0x7F, 0x01, 0xFC, - 0x1F, 0x80, 0x7F, 0x07, 0xE0, 0x1F, 0xC3, 0xF0, 0x07, 0xF0, 0xFC, 0x01, - 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x80, 0x01, - 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xFF, 0x80, - 0x01, 0xFF, 0xE0, 0x00, 0x07, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7F, 0x3F, 0x80, - 0x3F, 0xCF, 0xE0, 0x0F, 0xE3, 0xF8, 0x07, 0xF8, 0xFF, 0x83, 0xFC, 0x3F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xE0, - 0x03, 0xFF, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x7F, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, - 0x3F, 0xF8, 0x00, 0x3D, 0xFC, 0x00, 0x3C, 0xFE, 0x00, 0x3E, 0x7E, 0x00, - 0x3E, 0x7F, 0x00, 0x1E, 0x3F, 0x80, 0x1E, 0x1F, 0xC0, 0x1E, 0x0F, 0xC0, - 0x1F, 0x07, 0xE0, 0x1F, 0x07, 0xF0, 0x1F, 0x03, 0xF8, 0x1F, 0x01, 0xFC, - 0x0F, 0x80, 0xFC, 0x0F, 0x80, 0xFE, 0x0F, 0x80, 0x7F, 0x07, 0xFF, 0xFF, - 0xF7, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, - 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x7F, 0xFF, 0xE0, 0x0F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, - 0xF0, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0x7C, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x03, 0xE3, 0xF0, 0x00, 0x7F, 0xFF, 0x80, 0x1F, 0xFF, 0xF8, 0x03, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xF0, 0x1F, 0xE1, 0xFF, 0x03, 0xF0, 0x1F, 0xE0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0xFE, 0x00, 0xFE, 0x1F, - 0xC0, 0x3F, 0x83, 0xF8, 0x07, 0xF0, 0x7F, 0x83, 0xFC, 0x0F, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFE, 0x00, 0x0F, - 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xFE, - 0x00, 0x1F, 0xFF, 0x80, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x1F, 0xC3, - 0xFC, 0x1F, 0x80, 0xFE, 0x0F, 0xC0, 0x3F, 0x0F, 0xC0, 0x00, 0x07, 0xE0, - 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF8, 0xFC, 0x01, 0xF9, - 0xFF, 0x80, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFC, 0x3F, - 0xE1, 0xFF, 0x1F, 0xE0, 0x7F, 0x8F, 0xE0, 0x1F, 0xCF, 0xE0, 0x0F, 0xE7, - 0xF0, 0x07, 0xF3, 0xF0, 0x03, 0xF9, 0xF8, 0x01, 0xF8, 0xFC, 0x01, 0xFC, - 0x7E, 0x00, 0xFE, 0x3F, 0x00, 0xFE, 0x1F, 0xC0, 0xFF, 0x0F, 0xF0, 0xFF, - 0x03, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x80, 0x1F, 0xFF, - 0x80, 0x07, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xCF, - 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, - 0x9F, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x1F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xF8, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xE0, - 0x00, 0x03, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, - 0x01, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, - 0x0F, 0xFF, 0x80, 0x07, 0xFF, 0xF0, 0x03, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, - 0xC0, 0xFE, 0x0F, 0xF0, 0x3E, 0x01, 0xFC, 0x1F, 0x80, 0x3F, 0x07, 0xC0, - 0x0F, 0xC1, 0xF0, 0x03, 0xF0, 0x7C, 0x01, 0xF8, 0x1F, 0x00, 0xFC, 0x03, - 0xF0, 0x7F, 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, - 0x07, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x81, 0xFE, 0x1F, 0xE0, 0xFE, 0x03, - 0xFC, 0x3F, 0x00, 0x7F, 0x1F, 0xC0, 0x1F, 0xC7, 0xE0, 0x07, 0xF3, 0xF8, - 0x01, 0xFC, 0xFE, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0x8F, 0xE0, 0x0F, 0xE3, - 0xFC, 0x07, 0xF0, 0xFF, 0x87, 0xFC, 0x3F, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, - 0x00, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, 0x03, 0xFF, 0xE0, 0x00, 0x3F, - 0xC0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xFC, 0x00, 0x3F, 0xFF, 0x00, - 0x3F, 0xFF, 0xC0, 0x3F, 0xFF, 0xF0, 0x3F, 0xC3, 0xF8, 0x3F, 0xC0, 0xFE, - 0x1F, 0xC0, 0x3F, 0x1F, 0xC0, 0x1F, 0x8F, 0xE0, 0x0F, 0xC7, 0xE0, 0x07, - 0xE7, 0xF0, 0x03, 0xF3, 0xF8, 0x01, 0xF9, 0xFC, 0x01, 0xFC, 0xFE, 0x00, - 0xFE, 0x7F, 0x00, 0xFE, 0x3F, 0xC0, 0xFF, 0x1F, 0xF0, 0xFF, 0x87, 0xFF, - 0xFF, 0xC3, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0x3F, 0xF3, 0xF0, 0x07, - 0xE3, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7E, 0x1F, 0xC0, 0x7E, 0x0F, 0xF0, 0xFF, 0x07, 0xFF, 0xFF, 0x01, - 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0x00, 0x0F, 0xFF, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x07, 0xF0, 0x7F, 0x07, 0xF0, 0x7E, 0x0F, 0xE0, - 0xFE, 0x0F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x07, 0xF0, 0x7F, 0x07, - 0xE0, 0xFE, 0x0F, 0xE0, 0xFE, 0x00, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, - 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, - 0x03, 0x80, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0E, 0x00, 0xF0, 0x0F, 0xC0, - 0x3C, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0xE0, 0x00, - 0x01, 0xF8, 0x00, 0x03, 0xFE, 0x00, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, - 0x1F, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, - 0x0F, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x3F, 0xFE, - 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0xFF, 0xFF, 0x80, 0x07, 0xFF, 0xF8, 0x00, - 0x7F, 0xFF, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x00, 0x01, 0xF8, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x80, 0x1F, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0xF1, 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, - 0xFF, 0x1F, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xFE, 0x3F, 0xFF, 0xFF, 0x80, 0x04, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0x7E, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x0F, 0xFF, 0x00, 0x03, 0xFF, - 0xF8, 0x00, 0x7F, 0xFF, 0x80, 0x07, 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xC0, - 0x01, 0xFF, 0xF0, 0x00, 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xFF, - 0xC0, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, - 0xE0, 0x1F, 0xFF, 0xC0, 0x07, 0xFF, 0x80, 0x01, 0xFF, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, - 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xF8, 0x0F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFE, - 0x1F, 0xFF, 0xFE, 0x3F, 0xC1, 0xFF, 0x3F, 0x80, 0xFF, 0x7F, 0x00, 0x7F, - 0x7E, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xF8, - 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFE, 0x00, - 0x01, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xC0, 0x00, - 0x00, 0x00, 0x7F, 0xFF, 0xC0, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0x80, 0x00, - 0x01, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xE0, 0x1F, 0xF8, 0x00, 0x07, - 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x07, 0xE0, - 0x00, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF0, 0x0F, 0xC0, 0x00, - 0x00, 0x0F, 0x80, 0xFC, 0x00, 0x00, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xF1, - 0xF1, 0xF0, 0x7C, 0x00, 0xFF, 0xCF, 0x07, 0x87, 0xE0, 0x1F, 0xFF, 0xF8, - 0x3C, 0x7E, 0x01, 0xF8, 0x7F, 0x81, 0xE3, 0xE0, 0x1F, 0x01, 0xF8, 0x0F, - 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x79, 0xF0, 0x1F, 0x00, 0x7C, 0x03, 0xDF, - 0x00, 0xF0, 0x03, 0xE0, 0x1C, 0xF8, 0x0F, 0x80, 0x1E, 0x01, 0xE7, 0xC0, - 0x78, 0x00, 0xF0, 0x0F, 0x3C, 0x07, 0xC0, 0x0F, 0x00, 0xF3, 0xE0, 0x3C, - 0x00, 0x78, 0x07, 0x9F, 0x03, 0xE0, 0x07, 0x80, 0x78, 0xF8, 0x1F, 0x00, - 0x7C, 0x07, 0xC7, 0xC0, 0xF8, 0x07, 0xC0, 0x7C, 0x3E, 0x07, 0xC0, 0x7E, - 0x07, 0xC1, 0xF0, 0x3F, 0x07, 0xF8, 0xFC, 0x0F, 0x81, 0xFF, 0xFF, 0xFF, - 0xC0, 0x7E, 0x07, 0xFF, 0xBF, 0xFC, 0x01, 0xF0, 0x1F, 0xF8, 0xFF, 0x80, - 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x3F, - 0xE0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xE0, 0x03, 0x80, 0x00, 0x01, 0xFF, - 0xFF, 0xFE, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, - 0xFE, 0x00, 0x00, 0x00, 0x07, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, - 0xF0, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x7F, - 0xF0, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00, 0xFF, 0xF0, 0x00, 0x00, 0xFF, - 0xF0, 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x03, 0xFB, - 0xF8, 0x00, 0x07, 0xF3, 0xF8, 0x00, 0x07, 0xE3, 0xF8, 0x00, 0x0F, 0xE3, - 0xF8, 0x00, 0x0F, 0xC3, 0xF8, 0x00, 0x1F, 0xC3, 0xF8, 0x00, 0x1F, 0x83, - 0xF8, 0x00, 0x3F, 0x81, 0xFC, 0x00, 0x7F, 0x01, 0xFC, 0x00, 0x7F, 0x01, - 0xFC, 0x00, 0xFE, 0x01, 0xFC, 0x00, 0xFC, 0x01, 0xFC, 0x01, 0xFF, 0xFF, - 0xFC, 0x01, 0xFF, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, - 0xFE, 0x07, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xFE, 0x0F, 0xE0, 0x00, - 0xFE, 0x1F, 0xC0, 0x00, 0xFE, 0x1F, 0xC0, 0x00, 0xFE, 0x3F, 0x80, 0x00, - 0xFE, 0x3F, 0x80, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, - 0x7F, 0x01, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, - 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, - 0xFF, 0x03, 0xF8, 0x00, 0xFF, 0x03, 0xF8, 0x00, 0x7F, 0x07, 0xF0, 0x00, - 0x7F, 0x07, 0xF0, 0x00, 0x7F, 0x07, 0xF0, 0x00, 0x7E, 0x07, 0xF0, 0x00, - 0xFE, 0x0F, 0xF0, 0x03, 0xFC, 0x0F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, - 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, - 0xF8, 0x1F, 0xFF, 0xFF, 0xF8, 0x1F, 0xC0, 0x07, 0xFC, 0x1F, 0xC0, 0x01, - 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x3F, 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x01, - 0xFC, 0x3F, 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x03, 0xF8, 0x7F, 0x00, 0x07, - 0xF8, 0x7F, 0x00, 0x0F, 0xF0, 0x7F, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, - 0xE0, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, - 0xFC, 0x01, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0x03, 0xFE, 0x07, 0xFC, 0x01, - 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xE0, 0x00, 0x7F, 0x1F, 0xE0, 0x00, - 0x7F, 0x1F, 0xC0, 0x00, 0x7F, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xF8, 0xFE, 0x00, 0x03, - 0xF8, 0xFF, 0x00, 0x07, 0xF8, 0xFF, 0x00, 0x07, 0xF0, 0x7F, 0x80, 0x1F, - 0xF0, 0x7F, 0xE0, 0x7F, 0xE0, 0x3F, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, - 0x80, 0x1F, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xFE, 0x00, 0x03, 0xFF, 0xF8, - 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFF, - 0xE0, 0x03, 0xFF, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, - 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xF8, 0x03, 0xFE, 0x07, 0xF0, 0x01, - 0xFF, 0x07, 0xF0, 0x00, 0xFF, 0x07, 0xF0, 0x00, 0x7F, 0x07, 0xF0, 0x00, - 0x7F, 0x0F, 0xF0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, - 0x7F, 0x0F, 0xE0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, 0x7F, 0x1F, 0xC0, 0x00, - 0x7F, 0x1F, 0xC0, 0x00, 0xFE, 0x1F, 0xC0, 0x00, 0xFE, 0x1F, 0xC0, 0x00, - 0xFE, 0x1F, 0xC0, 0x01, 0xFE, 0x3F, 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x01, - 0xFC, 0x3F, 0x80, 0x03, 0xF8, 0x3F, 0x80, 0x07, 0xF8, 0x7F, 0x00, 0x0F, - 0xF0, 0x7F, 0x00, 0x1F, 0xF0, 0x7F, 0x00, 0x7F, 0xE0, 0x7F, 0xFF, 0xFF, - 0xC0, 0x7F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0x80, 0x00, 0x01, 0xFF, 0xFF, - 0xFF, 0x01, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, - 0xFE, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xF8, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xF0, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, - 0xE0, 0x1F, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, - 0xE0, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, - 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, - 0xFE, 0x01, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, - 0xFE, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x07, 0xF0, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, - 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, - 0xC0, 0x0F, 0xFF, 0xFF, 0xC0, 0x0F, 0xE0, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x03, 0xFF, - 0xF8, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, - 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFC, 0x07, 0xFC, 0x0F, 0xF8, - 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0x3F, 0x87, 0xF0, 0x00, 0x1F, 0xC7, 0xF0, - 0x00, 0x0F, 0xE3, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x7F, - 0x00, 0x3F, 0xFF, 0x3F, 0x00, 0x1F, 0xFF, 0xBF, 0x80, 0x0F, 0xFF, 0x9F, - 0xC0, 0x07, 0xFF, 0xCF, 0xE0, 0x03, 0xFF, 0xE7, 0xF0, 0x03, 0xFF, 0xF3, - 0xF8, 0x00, 0x01, 0xF9, 0xFC, 0x00, 0x01, 0xF8, 0xFF, 0x00, 0x00, 0xFC, - 0x7F, 0x80, 0x00, 0xFE, 0x3F, 0xC0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, - 0x87, 0xFC, 0x00, 0xFF, 0x81, 0xFF, 0x81, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFE, 0xF8, 0x03, 0xFF, 0xFC, - 0x78, 0x00, 0x7F, 0xFC, 0x3C, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, 0xF0, 0x00, 0x3F, 0x80, - 0xFE, 0x00, 0x0F, 0xE0, 0x1F, 0xC0, 0x01, 0xFC, 0x07, 0xF0, 0x00, 0x3F, - 0x80, 0xFE, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, 0xFE, 0x03, 0xF8, 0x00, - 0x3F, 0x80, 0xFF, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, 0xFE, 0x03, 0xF8, - 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x07, 0xF0, 0x0F, 0xFF, 0xFF, 0xFE, 0x03, - 0xFF, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xFF, - 0x01, 0xFF, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0xF8, 0x0F, 0xE0, 0x00, - 0x7F, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, 0xF0, - 0x00, 0x7F, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, - 0xF0, 0x00, 0x3F, 0x80, 0xFE, 0x00, 0x0F, 0xE0, 0x1F, 0xC0, 0x01, 0xFC, - 0x07, 0xF0, 0x00, 0x3F, 0x80, 0xFE, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, - 0xFE, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x7F, 0x00, 0x07, 0xF0, 0x1F, 0xC0, - 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x07, 0xF0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, - 0x0F, 0xE0, 0x3F, 0x81, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, - 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x7F, 0x01, 0xFC, - 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, - 0x03, 0xF8, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0xFE, - 0x03, 0xF8, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x0F, 0xE0, 0xFE, 0x03, 0xFC, 0x1F, 0xC0, 0x7F, 0x03, 0xF8, 0x0F, 0xE0, - 0xFE, 0x01, 0xFC, 0x1F, 0xC0, 0x3F, 0x83, 0xF8, 0x0F, 0xE0, 0x7F, 0x01, - 0xFC, 0x0F, 0xF0, 0xFF, 0x81, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xF8, 0x03, - 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0x80, 0x03, 0xFF, 0xE0, 0x00, 0x1F, 0xE0, - 0x00, 0x00, 0x00, 0xFE, 0x00, 0x0F, 0xF0, 0x0F, 0xF0, 0x00, 0xFF, 0x00, - 0x7F, 0x00, 0x1F, 0xF0, 0x03, 0xF8, 0x01, 0xFF, 0x00, 0x1F, 0xC0, 0x1F, - 0xE0, 0x00, 0xFE, 0x01, 0xFE, 0x00, 0x0F, 0xE0, 0x1F, 0xE0, 0x00, 0x7F, - 0x01, 0xFE, 0x00, 0x03, 0xF8, 0x1F, 0xE0, 0x00, 0x1F, 0xC1, 0xFE, 0x00, - 0x00, 0xFE, 0x1F, 0xE0, 0x00, 0x0F, 0xE3, 0xFE, 0x00, 0x00, 0x7F, 0x3F, - 0xC0, 0x00, 0x03, 0xFB, 0xFC, 0x00, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, - 0xFF, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0x00, 0x7F, 0xFF, 0xC0, - 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0x1F, 0xFF, 0xF8, 0x00, 0x01, 0xFF, - 0x9F, 0xE0, 0x00, 0x0F, 0xF8, 0xFF, 0x00, 0x00, 0x7F, 0x83, 0xFC, 0x00, - 0x03, 0xF8, 0x1F, 0xF0, 0x00, 0x1F, 0xC0, 0x7F, 0x80, 0x01, 0xFC, 0x01, - 0xFE, 0x00, 0x0F, 0xE0, 0x0F, 0xF0, 0x00, 0x7F, 0x00, 0x3F, 0xC0, 0x03, - 0xF8, 0x01, 0xFF, 0x00, 0x3F, 0x80, 0x07, 0xF8, 0x01, 0xFC, 0x00, 0x3F, - 0xE0, 0x0F, 0xE0, 0x00, 0xFF, 0x00, 0x7F, 0x00, 0x07, 0xFC, 0x03, 0xF8, - 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x01, 0xFC, 0x00, 0x01, 0xFC, - 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, - 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, - 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, - 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, - 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, - 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, - 0x80, 0x03, 0xFF, 0x80, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x01, - 0xFF, 0xC0, 0x3F, 0xF0, 0x00, 0xFF, 0xE0, 0x3F, 0xF8, 0x00, 0xFF, 0xF0, - 0x1F, 0xFC, 0x00, 0x7F, 0xF8, 0x0F, 0xFE, 0x00, 0x7D, 0xF8, 0x07, 0xEF, - 0x00, 0x3E, 0xFC, 0x03, 0xF7, 0x80, 0x3F, 0xFE, 0x03, 0xFB, 0xC0, 0x1F, - 0x7F, 0x01, 0xFD, 0xE0, 0x1F, 0xBF, 0x00, 0xFE, 0xF0, 0x0F, 0x9F, 0x80, - 0x7E, 0x78, 0x0F, 0xDF, 0xC0, 0x7F, 0x3E, 0x07, 0xCF, 0xE0, 0x3F, 0x9F, - 0x07, 0xE7, 0xF0, 0x1F, 0xCF, 0x83, 0xE3, 0xF0, 0x0F, 0xE7, 0xC3, 0xF1, - 0xF8, 0x07, 0xE3, 0xE1, 0xF9, 0xFC, 0x07, 0xF1, 0xF0, 0xF8, 0xFE, 0x03, - 0xF8, 0xF8, 0xFC, 0x7F, 0x01, 0xFC, 0x7C, 0x7C, 0x3F, 0x00, 0xFC, 0x3E, - 0x7E, 0x1F, 0x80, 0x7E, 0x1F, 0x3E, 0x1F, 0xC0, 0x7F, 0x0F, 0xBF, 0x0F, - 0xE0, 0x3F, 0x87, 0xDF, 0x07, 0xE0, 0x1F, 0xC3, 0xFF, 0x83, 0xF0, 0x0F, - 0xC1, 0xFF, 0xC3, 0xF8, 0x0F, 0xE0, 0xFF, 0xC1, 0xFC, 0x07, 0xF0, 0x7F, - 0xE0, 0xFE, 0x03, 0xF8, 0x3F, 0xE0, 0x7E, 0x01, 0xFC, 0x1F, 0xF0, 0x3F, - 0x00, 0xFC, 0x0F, 0xF0, 0x3F, 0x80, 0xFE, 0x07, 0xF8, 0x1F, 0xC0, 0x7F, - 0x03, 0xF8, 0x0F, 0xC0, 0x00, 0x01, 0xFE, 0x00, 0x07, 0xE0, 0x3F, 0xC0, - 0x01, 0xFC, 0x07, 0xFC, 0x00, 0x3F, 0x80, 0xFF, 0x80, 0x07, 0xF0, 0x1F, - 0xF0, 0x00, 0xFC, 0x07, 0xFF, 0x00, 0x3F, 0x80, 0xFF, 0xE0, 0x07, 0xF0, - 0x1F, 0xFC, 0x00, 0xFE, 0x03, 0xFF, 0xC0, 0x1F, 0x80, 0xFF, 0xF8, 0x03, - 0xF0, 0x1F, 0xFF, 0x80, 0xFE, 0x03, 0xFB, 0xF0, 0x1F, 0xC0, 0x7E, 0x7E, - 0x03, 0xF8, 0x0F, 0xC7, 0xE0, 0x7E, 0x03, 0xF8, 0xFC, 0x0F, 0xC0, 0x7F, - 0x1F, 0x83, 0xF8, 0x0F, 0xE1, 0xF8, 0x7F, 0x01, 0xF8, 0x3F, 0x0F, 0xE0, - 0x3F, 0x07, 0xF1, 0xF8, 0x0F, 0xE0, 0x7E, 0x3F, 0x01, 0xFC, 0x0F, 0xCF, - 0xE0, 0x3F, 0x00, 0xFD, 0xFC, 0x07, 0xE0, 0x1F, 0xBF, 0x81, 0xFC, 0x03, - 0xF7, 0xE0, 0x3F, 0x80, 0x3F, 0xFC, 0x07, 0xF0, 0x07, 0xFF, 0x80, 0xFC, - 0x00, 0xFF, 0xF0, 0x1F, 0x80, 0x0F, 0xFC, 0x07, 0xF0, 0x01, 0xFF, 0x80, - 0xFE, 0x00, 0x3F, 0xF0, 0x1F, 0xC0, 0x03, 0xFE, 0x03, 0xF0, 0x00, 0x7F, - 0xC0, 0x7E, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x01, - 0xFF, 0xFF, 0xF0, 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, - 0x3F, 0xF0, 0x3F, 0xF8, 0x1F, 0xF0, 0x03, 0xFE, 0x07, 0xF0, 0x00, 0x7F, - 0x83, 0xF8, 0x00, 0x0F, 0xF1, 0xFE, 0x00, 0x03, 0xFC, 0x7F, 0x00, 0x00, - 0x7F, 0x3F, 0x80, 0x00, 0x1F, 0xCF, 0xE0, 0x00, 0x07, 0xF7, 0xF0, 0x00, - 0x01, 0xFD, 0xFC, 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x1F, 0xDF, 0xC0, - 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0xFE, 0xFE, - 0x00, 0x00, 0x3F, 0xBF, 0x80, 0x00, 0x0F, 0xEF, 0xE0, 0x00, 0x07, 0xF3, - 0xF8, 0x00, 0x01, 0xFC, 0xFE, 0x00, 0x00, 0xFE, 0x3F, 0xC0, 0x00, 0x7F, - 0x8F, 0xF0, 0x00, 0x1F, 0xC1, 0xFE, 0x00, 0x0F, 0xE0, 0x7F, 0xC0, 0x0F, - 0xF8, 0x1F, 0xFC, 0x0F, 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, - 0xFF, 0x00, 0x0F, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFF, 0x80, 0x00, 0x1F, - 0xFF, 0x80, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x03, - 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xE0, 0x3F, - 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xC1, 0xFE, 0x00, 0xFF, 0x83, 0xF8, - 0x00, 0xFF, 0x07, 0xF0, 0x00, 0xFE, 0x0F, 0xE0, 0x01, 0xFC, 0x1F, 0xC0, - 0x03, 0xF8, 0x7F, 0x00, 0x07, 0xF0, 0xFE, 0x00, 0x1F, 0xC1, 0xFC, 0x00, - 0x3F, 0x83, 0xF8, 0x00, 0xFE, 0x07, 0xF0, 0x07, 0xFC, 0x1F, 0xFF, 0xFF, - 0xF0, 0x3F, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFE, - 0x03, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0x80, 0x0F, 0xE0, 0x00, 0x00, - 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x0F, - 0xE0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x01, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFF, 0xF0, - 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x3F, 0xF0, 0x3F, - 0xF0, 0x1F, 0xF0, 0x03, 0xFE, 0x07, 0xF8, 0x00, 0x7F, 0x83, 0xFC, 0x00, - 0x0F, 0xF1, 0xFE, 0x00, 0x03, 0xFC, 0x7F, 0x00, 0x00, 0x7F, 0x3F, 0x80, - 0x00, 0x1F, 0xCF, 0xE0, 0x00, 0x07, 0xF3, 0xF0, 0x00, 0x01, 0xFD, 0xFC, - 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x1F, 0xDF, 0x80, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0xFE, 0xFE, 0x00, 0x00, 0x3F, - 0xBF, 0x80, 0x00, 0x0F, 0xEF, 0xE0, 0x01, 0x87, 0xF3, 0xF8, 0x00, 0xF1, - 0xFC, 0xFE, 0x00, 0x7C, 0xFE, 0x3F, 0xC0, 0x3F, 0xFF, 0x8F, 0xF0, 0x07, - 0xFF, 0xC1, 0xFE, 0x01, 0xFF, 0xE0, 0x7F, 0xC0, 0x3F, 0xF8, 0x1F, 0xFC, - 0x0F, 0xFC, 0x03, 0xFF, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x0F, - 0xFF, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0x9F, 0x80, - 0x01, 0xFF, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x60, 0x00, 0x01, 0xFF, 0xFF, - 0xF0, 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, - 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xFC, 0x0F, 0xE0, - 0x03, 0xFE, 0x0F, 0xF0, 0x00, 0xFF, 0x07, 0xF0, 0x00, 0x3F, 0x83, 0xF8, - 0x00, 0x1F, 0xC1, 0xFC, 0x00, 0x0F, 0xC0, 0xFE, 0x00, 0x07, 0xE0, 0xFE, - 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x3F, 0x80, 0x0F, 0xF0, 0x1F, - 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x07, - 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0xFF, 0x01, - 0xFC, 0x00, 0x7F, 0x80, 0xFE, 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x0F, 0xE0, - 0x3F, 0x80, 0x07, 0xF0, 0x1F, 0xC0, 0x03, 0xF8, 0x1F, 0xC0, 0x01, 0xFC, - 0x0F, 0xE0, 0x01, 0xFC, 0x07, 0xF0, 0x00, 0xFE, 0x03, 0xF8, 0x00, 0x7F, - 0x01, 0xFC, 0x00, 0x3F, 0x81, 0xFC, 0x00, 0x1F, 0xC0, 0xFE, 0x00, 0x0F, - 0xE0, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x7F, - 0xFF, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, - 0xF8, 0x0F, 0xFF, 0xFF, 0xF0, 0x3F, 0xC0, 0x7F, 0xC1, 0xFE, 0x00, 0xFF, - 0x07, 0xF0, 0x01, 0xFC, 0x3F, 0x80, 0x07, 0xF0, 0xFE, 0x00, 0x1F, 0xC3, - 0xF8, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0xFF, - 0xE0, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x07, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, - 0xFE, 0x00, 0x1F, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0x03, 0xFF, - 0xF0, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0x07, 0xF3, 0xF8, 0x00, 0x1F, 0xCF, 0xE0, 0x00, 0x7E, 0x3F, - 0x80, 0x03, 0xF8, 0xFF, 0x00, 0x1F, 0xE3, 0xFF, 0x01, 0xFF, 0x07, 0xFF, - 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, - 0xF0, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x7F, 0xFF, 0xFF, - 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xFE, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x7F, - 0x07, 0xF0, 0x00, 0x7F, 0x07, 0xF0, 0x00, 0xFE, 0x0F, 0xE0, 0x00, 0xFE, - 0x0F, 0xE0, 0x00, 0xFE, 0x0F, 0xE0, 0x00, 0xFE, 0x0F, 0xE0, 0x00, 0xFE, - 0x0F, 0xE0, 0x01, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, - 0x1F, 0xC0, 0x01, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x3F, 0x80, 0x03, 0xF8, - 0x3F, 0x80, 0x03, 0xF8, 0x3F, 0x80, 0x03, 0xF8, 0x3F, 0x80, 0x03, 0xF8, - 0x3F, 0x80, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, - 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x0F, 0xE0, - 0xFE, 0x00, 0x0F, 0xE0, 0xFE, 0x00, 0x0F, 0xE0, 0xFE, 0x00, 0x0F, 0xE0, - 0xFE, 0x00, 0x1F, 0xC0, 0xFE, 0x00, 0x1F, 0xC0, 0xFF, 0x00, 0x3F, 0x80, - 0xFF, 0xC0, 0xFF, 0x80, 0x7F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFE, 0x00, - 0x3F, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0xF8, 0x00, 0x0F, 0xFF, 0xE0, 0x00, - 0x01, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x03, 0xF9, 0xFC, 0x00, 0x0F, 0xE7, - 0xF0, 0x00, 0x7F, 0x1F, 0xC0, 0x01, 0xFC, 0x7F, 0x00, 0x0F, 0xE1, 0xFC, - 0x00, 0x3F, 0x87, 0xF0, 0x01, 0xFC, 0x1F, 0xC0, 0x07, 0xF0, 0x3F, 0x00, - 0x3F, 0x80, 0xFC, 0x00, 0xFC, 0x03, 0xF0, 0x07, 0xF0, 0x0F, 0xC0, 0x1F, - 0x80, 0x3F, 0x80, 0xFE, 0x00, 0xFE, 0x03, 0xF0, 0x03, 0xF8, 0x1F, 0xC0, - 0x0F, 0xE0, 0x7E, 0x00, 0x1F, 0x83, 0xF8, 0x00, 0x7E, 0x0F, 0xC0, 0x01, - 0xF8, 0x7E, 0x00, 0x07, 0xE1, 0xF8, 0x00, 0x1F, 0x8F, 0xC0, 0x00, 0x7E, - 0x3F, 0x00, 0x01, 0xF9, 0xF8, 0x00, 0x07, 0xE7, 0xE0, 0x00, 0x0F, 0xFF, - 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x03, 0xFF, 0x00, - 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x00, - 0xFE, 0x00, 0x7F, 0x80, 0x1F, 0xFF, 0xC0, 0x0F, 0xF0, 0x03, 0xFB, 0xF8, - 0x01, 0xFE, 0x00, 0x7F, 0x7F, 0x00, 0x7F, 0xC0, 0x1F, 0xCF, 0xE0, 0x0F, - 0xF8, 0x03, 0xF9, 0xFC, 0x03, 0xFF, 0x00, 0xFE, 0x3F, 0x80, 0x7F, 0xE0, - 0x1F, 0xC7, 0xF0, 0x1F, 0xFC, 0x07, 0xF0, 0x7E, 0x03, 0xFF, 0x80, 0xFE, - 0x0F, 0xC0, 0x7D, 0xF0, 0x1F, 0x81, 0xF8, 0x1F, 0xBE, 0x07, 0xF0, 0x3F, - 0x03, 0xE7, 0xC0, 0xFC, 0x07, 0xE0, 0xFC, 0xF8, 0x3F, 0x80, 0xFC, 0x1F, - 0x1F, 0x07, 0xE0, 0x1F, 0x83, 0xE3, 0xE0, 0xFC, 0x03, 0xF0, 0xFC, 0x7C, - 0x3F, 0x00, 0x7E, 0x1F, 0x0F, 0x87, 0xE0, 0x0F, 0xC7, 0xE1, 0xF1, 0xF8, - 0x01, 0xF8, 0xF8, 0x3E, 0x3F, 0x00, 0x3F, 0x3F, 0x07, 0xCF, 0xC0, 0x07, - 0xE7, 0xC0, 0xF9, 0xF8, 0x00, 0xFC, 0xF8, 0x1F, 0x3E, 0x00, 0x1F, 0xBE, - 0x03, 0xEF, 0xC0, 0x01, 0xF7, 0xC0, 0x7D, 0xF0, 0x00, 0x3F, 0xF8, 0x0F, - 0xFE, 0x00, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, - 0x00, 0x1F, 0xF0, 0x07, 0xFC, 0x00, 0x03, 0xFE, 0x00, 0xFF, 0x80, 0x00, - 0x7F, 0x80, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0x01, 0xFC, - 0x00, 0x7F, 0x80, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x01, - 0xFC, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x07, 0xFC, 0x00, 0xFF, - 0x00, 0x1F, 0xE0, 0x07, 0xF8, 0x00, 0xFF, 0x00, 0x7F, 0x80, 0x03, 0xFC, - 0x07, 0xF8, 0x00, 0x1F, 0xE0, 0x7F, 0x80, 0x00, 0xFF, 0x07, 0xF8, 0x00, - 0x03, 0xFC, 0x3F, 0x80, 0x00, 0x1F, 0xE3, 0xF8, 0x00, 0x00, 0x7F, 0x3F, - 0xC0, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x00, - 0x7F, 0xFC, 0x00, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x00, 0x0F, 0xFC, 0x00, - 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x00, 0x1F, - 0xF0, 0x00, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x00, - 0x00, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x00, 0xFF, 0xFE, - 0x00, 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x00, 0xFF, 0x3F, 0xC0, 0x00, 0x0F, - 0xF1, 0xFE, 0x00, 0x00, 0xFF, 0x07, 0xF8, 0x00, 0x07, 0xF0, 0x3F, 0xC0, - 0x00, 0x7F, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x07, 0xF8, 0x00, 0x7F, 0x80, - 0x3F, 0xC0, 0x07, 0xF8, 0x01, 0xFF, 0x00, 0x7F, 0x80, 0x07, 0xF8, 0x07, - 0xFC, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x7F, - 0xBF, 0xC0, 0x07, 0xF8, 0xFE, 0x00, 0x3F, 0x87, 0xF8, 0x03, 0xFC, 0x3F, - 0xC0, 0x3F, 0xC0, 0xFE, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x3F, 0xC1, - 0xFE, 0x00, 0xFE, 0x0F, 0xE0, 0x07, 0xF0, 0xFE, 0x00, 0x3F, 0x8F, 0xE0, - 0x00, 0xFE, 0x7F, 0x00, 0x07, 0xF7, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x01, - 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0x80, 0x00, 0x3F, 0xF8, 0x00, 0x01, 0xFF, - 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, - 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xF8, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFF, - 0x01, 0xFF, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, - 0xC0, 0x3F, 0xFF, 0xFF, 0xE0, 0x00, 0x00, 0x7F, 0xF8, 0x03, 0xFF, 0x80, - 0x1F, 0xFC, 0x00, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0x7E, 0x00, 0x03, 0xF0, - 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, - 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7E, - 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, - 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xF8, 0x00, 0x0F, 0xC0, - 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F, - 0xC0, 0x00, 0x7E, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xFF, 0xC0, - 0x0F, 0xFE, 0x00, 0x7F, 0xF0, 0x07, 0xFF, 0x80, 0x3F, 0xFC, 0x00, 0x81, - 0xC3, 0xC7, 0x8F, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0xC7, 0x8F, 0x1E, - 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0x87, 0x8F, 0x1E, 0x3C, 0x38, 0x70, 0xE1, - 0xC3, 0x87, 0x0F, 0x1E, 0x3C, 0x78, 0xF0, 0x00, 0x7F, 0xF8, 0x03, 0xFF, - 0xC0, 0x1F, 0xFC, 0x00, 0xFF, 0xE0, 0x07, 0xFF, 0x00, 0x01, 0xF8, 0x00, - 0x1F, 0xC0, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, - 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x03, - 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, - 0x03, 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x7F, - 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, - 0x7F, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, - 0x00, 0x7F, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x01, 0xFF, - 0xE0, 0x0F, 0xFE, 0x00, 0x7F, 0xF0, 0x03, 0xFF, 0x80, 0x3F, 0xFC, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0xFE, 0x00, 0x0F, 0xF0, 0x00, 0x7F, 0x80, 0x07, - 0xFC, 0x00, 0x7F, 0xE0, 0x03, 0xFF, 0x80, 0x3E, 0xFC, 0x01, 0xF3, 0xE0, - 0x1F, 0x1F, 0x01, 0xF8, 0xF8, 0x0F, 0x87, 0xE0, 0xFC, 0x3F, 0x07, 0xC0, - 0xF8, 0x7C, 0x07, 0xC7, 0xE0, 0x3E, 0x3E, 0x01, 0xFB, 0xF0, 0x0F, 0xDF, - 0x00, 0x3F, 0xF0, 0x01, 0xF0, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xFF, 0xE0, 0xF8, 0xF0, 0xF1, 0xE1, - 0xC3, 0xC3, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x7F, 0x03, 0xFC, 0x3F, 0x00, - 0xFE, 0x1F, 0x80, 0x7E, 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x80, 0x1F, - 0xFF, 0xC0, 0x7F, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0xFF, 0xF7, 0xF0, 0xFF, - 0x83, 0xF8, 0xFF, 0x01, 0xF8, 0x7F, 0x00, 0xFC, 0x7F, 0x00, 0xFE, 0x3F, - 0x80, 0x7F, 0x1F, 0xC0, 0x7F, 0x8F, 0xF0, 0xFF, 0x87, 0xFF, 0xFF, 0xC3, - 0xFF, 0xFF, 0xE0, 0xFF, 0xF7, 0xF8, 0x3F, 0xF3, 0xFC, 0x07, 0xE0, 0x00, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xE0, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x3F, 0x80, 0x1F, - 0x9F, 0xFC, 0x03, 0xF7, 0xFF, 0xC0, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, - 0x83, 0xFF, 0x0F, 0xF0, 0x7F, 0x80, 0xFF, 0x0F, 0xE0, 0x1F, 0xE3, 0xF8, - 0x01, 0xFC, 0x7F, 0x00, 0x3F, 0x8F, 0xC0, 0x07, 0xF1, 0xF8, 0x00, 0xFE, - 0x7F, 0x00, 0x1F, 0xCF, 0xC0, 0x03, 0xF9, 0xF8, 0x00, 0xFE, 0x3F, 0x00, - 0x1F, 0xC7, 0xE0, 0x03, 0xF9, 0xFC, 0x00, 0xFE, 0x3F, 0xC0, 0x3F, 0xC7, - 0xF8, 0x0F, 0xF0, 0xFF, 0x83, 0xFC, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xF0, 0x1F, 0x9F, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x80, 0x7F, 0xFF, - 0xE0, 0x7F, 0xFF, 0xF0, 0x7F, 0x83, 0xFC, 0x7F, 0x00, 0xFE, 0x3F, 0x00, - 0x7F, 0x3F, 0x80, 0x3F, 0x9F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, - 0x00, 0x07, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0x9F, - 0xE0, 0x3F, 0x87, 0xF8, 0x3F, 0x83, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, - 0x3F, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x7F, 0x00, 0x3F, - 0xF3, 0xF8, 0x03, 0xFF, 0xDF, 0x80, 0x7F, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, - 0xE0, 0x3F, 0xC3, 0xFF, 0x03, 0xFC, 0x0F, 0xF8, 0x3F, 0xC0, 0x3F, 0x81, - 0xFC, 0x01, 0xFC, 0x1F, 0xC0, 0x07, 0xE0, 0xFE, 0x00, 0x3F, 0x07, 0xF0, - 0x03, 0xF8, 0x7F, 0x00, 0x1F, 0x83, 0xF8, 0x00, 0xFC, 0x1F, 0xC0, 0x07, - 0xE0, 0xFE, 0x00, 0x3F, 0x07, 0xF0, 0x03, 0xF0, 0x3F, 0x80, 0x3F, 0x81, - 0xFC, 0x01, 0xFC, 0x0F, 0xF0, 0x1F, 0xE0, 0x3F, 0xC3, 0xFF, 0x01, 0xFF, - 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xFC, 0x00, 0xFF, 0xCF, - 0xE0, 0x01, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0xFC, 0x00, - 0x7F, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0x7F, 0x87, 0xF8, - 0x7F, 0x01, 0xFE, 0x7F, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0xBF, 0x80, 0x1F, - 0xDF, 0xC0, 0x0F, 0xEF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFD, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x3F, 0x80, 0x3F, 0x9F, 0xE0, 0x3F, 0x87, 0xF8, 0x3F, 0xC3, 0xFF, - 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, 0x80, 0x00, - 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0x0F, 0xF8, 0x07, 0xFE, - 0x01, 0xFF, 0x80, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xC0, 0x03, 0xF0, 0x01, - 0xFC, 0x03, 0xFF, 0xF1, 0xFF, 0xF8, 0x7F, 0xFE, 0x1F, 0xFF, 0x80, 0xFE, - 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x7F, 0x00, - 0x1F, 0xC0, 0x07, 0xE0, 0x01, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, - 0xE0, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x07, 0xF0, - 0x01, 0xF8, 0x00, 0x7E, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x07, 0xC3, 0xF8, - 0x01, 0xFF, 0x9F, 0x80, 0x1F, 0xFE, 0xFC, 0x01, 0xFF, 0xFF, 0xE0, 0x1F, - 0xFF, 0xFF, 0x01, 0xFE, 0x1F, 0xF8, 0x1F, 0xE0, 0x3F, 0x80, 0xFE, 0x01, - 0xFC, 0x0F, 0xE0, 0x0F, 0xE0, 0x7F, 0x00, 0x3F, 0x07, 0xF0, 0x01, 0xF8, - 0x3F, 0x80, 0x0F, 0x81, 0xF8, 0x00, 0x7C, 0x1F, 0xC0, 0x07, 0xE0, 0xFE, - 0x00, 0x3F, 0x07, 0xF0, 0x01, 0xF0, 0x3F, 0x80, 0x1F, 0x81, 0xFC, 0x00, - 0xFC, 0x0F, 0xE0, 0x0F, 0xE0, 0x7F, 0x80, 0xFF, 0x03, 0xFE, 0x1F, 0xF0, - 0x0F, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0xFC, 0x01, 0xFF, 0xF7, 0xE0, 0x07, - 0xFE, 0x7F, 0x00, 0x0F, 0xC3, 0xF0, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x01, - 0xFC, 0x0F, 0xE0, 0x0F, 0xC0, 0x7F, 0x00, 0xFE, 0x03, 0xFC, 0x1F, 0xE0, - 0x1F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xE0, 0x01, 0xFF, 0xFC, 0x00, 0x01, - 0xFF, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xE0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFE, 0x0F, - 0xC0, 0x1F, 0xCF, 0xFE, 0x03, 0xFB, 0xFF, 0xE0, 0x7F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFF, 0xC3, 0xFF, 0x07, 0xF8, 0x7F, 0x80, 0x7F, 0x0F, 0xE0, 0x0F, - 0xE1, 0xFC, 0x01, 0xFC, 0x7F, 0x00, 0x3F, 0x0F, 0xE0, 0x07, 0xE1, 0xFC, - 0x01, 0xFC, 0x3F, 0x00, 0x3F, 0x87, 0xE0, 0x07, 0xF1, 0xFC, 0x00, 0xFC, - 0x3F, 0x80, 0x1F, 0x87, 0xF0, 0x07, 0xF0, 0xFC, 0x00, 0xFE, 0x1F, 0x80, - 0x1F, 0xC7, 0xF0, 0x03, 0xF0, 0xFE, 0x00, 0x7E, 0x1F, 0xC0, 0x1F, 0xC3, - 0xF0, 0x03, 0xF8, 0xFE, 0x00, 0x7F, 0x1F, 0xC0, 0x0F, 0xC0, 0x01, 0xFC, - 0x07, 0xF0, 0x1F, 0x80, 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x3F, 0x80, 0xFE, - 0x03, 0xF8, 0x0F, 0xC0, 0x3F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7E, - 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFC, 0x03, 0xF0, 0x1F, 0xC0, 0x7F, - 0x01, 0xFC, 0x07, 0xE0, 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x00, 0x00, 0x0F, - 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x3F, - 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x00, 0xFE, - 0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, 0x7E, 0x00, 0x1F, 0xC0, 0x03, 0xF8, - 0x00, 0x7F, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x7F, 0x00, 0x0F, 0xE0, - 0x01, 0xFC, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x80, - 0x07, 0xF0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x07, 0xF0, 0x00, 0xFE, 0x00, - 0x1F, 0x80, 0x03, 0xF0, 0x00, 0xFE, 0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, - 0x7E, 0x00, 0x0F, 0xC0, 0x03, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xC0, 0x0F, - 0xF8, 0x03, 0xFE, 0x00, 0x7E, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x7F, 0x00, 0xFE, 0x07, 0xE0, 0x3F, 0xC0, 0x7E, 0x07, - 0xF8, 0x0F, 0xE0, 0xFF, 0x00, 0xFE, 0x1F, 0xC0, 0x0F, 0xE3, 0xF8, 0x00, - 0xFC, 0x7F, 0x00, 0x0F, 0xCF, 0xE0, 0x01, 0xFD, 0xFC, 0x00, 0x1F, 0xFF, - 0x80, 0x01, 0xFF, 0xF8, 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xFC, 0x00, - 0x3F, 0xFF, 0xC0, 0x03, 0xFE, 0xFE, 0x00, 0x3F, 0xCF, 0xE0, 0x03, 0xF0, - 0xFE, 0x00, 0x7F, 0x07, 0xF0, 0x07, 0xF0, 0x7F, 0x00, 0x7F, 0x07, 0xF8, - 0x07, 0xE0, 0x3F, 0x80, 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0xC0, 0xFE, - 0x01, 0xFC, 0x0F, 0xC0, 0x1F, 0xE0, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0x80, - 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFC, 0x03, 0xF0, 0x1F, 0xC0, - 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xC0, - 0x3F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7E, 0x03, 0xF8, 0x0F, 0xE0, - 0x3F, 0x80, 0xFC, 0x03, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, - 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x00, 0x07, 0xF0, 0xFC, 0x03, 0xF0, 0x07, - 0xE3, 0xFF, 0x0F, 0xFC, 0x07, 0xEF, 0xFF, 0x3F, 0xFE, 0x0F, 0xFF, 0xFF, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF8, 0x7F, 0xF0, 0xFF, - 0x0F, 0xE0, 0x3F, 0xC0, 0x7F, 0x0F, 0xE0, 0x3F, 0x80, 0x7F, 0x1F, 0xC0, - 0x3F, 0x80, 0x7E, 0x1F, 0xC0, 0x3F, 0x00, 0x7E, 0x1F, 0xC0, 0x3F, 0x00, - 0xFE, 0x1F, 0x80, 0x7F, 0x00, 0xFE, 0x3F, 0x80, 0x7F, 0x00, 0xFC, 0x3F, - 0x80, 0x7F, 0x00, 0xFC, 0x3F, 0x80, 0x7E, 0x01, 0xFC, 0x3F, 0x00, 0x7E, - 0x01, 0xFC, 0x3F, 0x00, 0xFE, 0x01, 0xFC, 0x7F, 0x00, 0xFE, 0x01, 0xF8, - 0x7F, 0x00, 0xFE, 0x01, 0xF8, 0x7F, 0x00, 0xFC, 0x03, 0xF8, 0x7E, 0x01, - 0xFC, 0x03, 0xF8, 0x7E, 0x01, 0xFC, 0x03, 0xF8, 0xFE, 0x01, 0xFC, 0x03, - 0xF0, 0xFE, 0x01, 0xF8, 0x03, 0xF0, 0xFE, 0x01, 0xF8, 0x07, 0xF0, 0x07, - 0xF0, 0xFE, 0x00, 0xFE, 0x7F, 0xF0, 0x1F, 0x9F, 0xFF, 0x03, 0xFF, 0xFF, - 0xF0, 0xFF, 0xFF, 0xFE, 0x1F, 0xF8, 0x3F, 0xC3, 0xFC, 0x03, 0xF8, 0x7F, - 0x00, 0x7F, 0x0F, 0xE0, 0x0F, 0xE3, 0xF8, 0x01, 0xF8, 0x7F, 0x00, 0x3F, - 0x0F, 0xC0, 0x0F, 0xE1, 0xF8, 0x01, 0xFC, 0x7F, 0x00, 0x3F, 0x8F, 0xE0, - 0x07, 0xE1, 0xFC, 0x00, 0xFC, 0x3F, 0x00, 0x3F, 0x87, 0xE0, 0x07, 0xF1, - 0xFC, 0x00, 0xFE, 0x3F, 0x80, 0x1F, 0x87, 0xF0, 0x03, 0xF0, 0xFC, 0x00, - 0xFE, 0x3F, 0x80, 0x1F, 0xC7, 0xF0, 0x03, 0xF8, 0xFE, 0x00, 0x7E, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0xFF, 0x00, 0x1F, 0xFF, 0xE0, 0x0F, 0xFF, - 0xFC, 0x07, 0xFF, 0xFF, 0x83, 0xFC, 0x1F, 0xE1, 0xFE, 0x03, 0xFC, 0xFF, - 0x00, 0xFF, 0x3F, 0x80, 0x1F, 0xDF, 0xC0, 0x07, 0xF7, 0xF0, 0x01, 0xFD, - 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x03, - 0xFB, 0xF8, 0x00, 0xFE, 0xFE, 0x00, 0x3F, 0xBF, 0x80, 0x1F, 0xCF, 0xF0, - 0x0F, 0xF3, 0xFC, 0x07, 0xF8, 0x7F, 0x83, 0xFC, 0x1F, 0xFF, 0xFE, 0x03, - 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0x80, 0x0F, 0xFF, 0x80, 0x00, 0x7F, 0x00, - 0x00, 0x01, 0xFC, 0x3F, 0x00, 0x0F, 0xCF, 0xFE, 0x00, 0x7E, 0xFF, 0xF8, - 0x07, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0x01, 0xFF, 0x87, 0xF8, 0x0F, - 0xF0, 0x1F, 0xE0, 0xFF, 0x00, 0xFF, 0x07, 0xF0, 0x03, 0xF8, 0x3F, 0x80, - 0x1F, 0xC1, 0xF8, 0x00, 0xFE, 0x0F, 0xC0, 0x07, 0xF0, 0xFE, 0x00, 0x3F, - 0x87, 0xF0, 0x01, 0xFC, 0x3F, 0x00, 0x1F, 0xC1, 0xF8, 0x00, 0xFE, 0x1F, - 0xC0, 0x07, 0xF0, 0xFE, 0x00, 0x7F, 0x07, 0xF8, 0x07, 0xF8, 0x3F, 0xC0, - 0x7F, 0x81, 0xFF, 0x87, 0xF8, 0x1F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFC, - 0x07, 0xF7, 0xFF, 0xC0, 0x3F, 0x1F, 0xF8, 0x01, 0xF8, 0x7F, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x07, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x87, 0xF0, - 0x0F, 0xFE, 0x7F, 0x01, 0xFF, 0xF7, 0xE0, 0x3F, 0xFF, 0x7E, 0x07, 0xFF, - 0xFF, 0xE0, 0xFF, 0x07, 0xFE, 0x1F, 0xE0, 0x3F, 0xE3, 0xFC, 0x03, 0xFC, - 0x3F, 0x80, 0x1F, 0xC7, 0xF0, 0x01, 0xFC, 0x7F, 0x00, 0x1F, 0xC7, 0xF0, - 0x01, 0xF8, 0xFE, 0x00, 0x1F, 0x8F, 0xE0, 0x03, 0xF8, 0xFE, 0x00, 0x3F, - 0x8F, 0xE0, 0x03, 0xF8, 0xFE, 0x00, 0x7F, 0x0F, 0xE0, 0x07, 0xF0, 0xFE, - 0x00, 0xFF, 0x0F, 0xF0, 0x1F, 0xF0, 0x7F, 0x87, 0xFF, 0x07, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0x7E, 0x03, 0xFF, 0xEF, 0xE0, 0x1F, 0xFC, 0xFE, 0x00, - 0x7F, 0x0F, 0xC0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x07, - 0xF0, 0xF0, 0x7F, 0x3F, 0x07, 0xE7, 0xE0, 0x7E, 0xFE, 0x0F, 0xFF, 0xE0, - 0xFF, 0xFE, 0x0F, 0xFC, 0x00, 0xFF, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x00, - 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x80, - 0x03, 0xF8, 0x00, 0x3F, 0x00, 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, - 0x00, 0x7F, 0x00, 0x07, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, - 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xFC, 0x07, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x0F, 0xE0, 0xFF, 0x1F, 0xC0, 0x7F, 0x1F, - 0xC0, 0x7F, 0x1F, 0xE0, 0x00, 0x1F, 0xFC, 0x00, 0x1F, 0xFF, 0xC0, 0x0F, - 0xFF, 0xF0, 0x07, 0xFF, 0xF8, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, - 0x0F, 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFE, 0xFC, 0x00, 0xFE, 0xFE, - 0x00, 0xFE, 0xFF, 0x03, 0xFC, 0x7F, 0xFF, 0xF8, 0x7F, 0xFF, 0xF8, 0x3F, - 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, 0x03, 0xFE, 0x00, 0x03, 0xF0, 0x1F, 0xC0, - 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x3F, 0x80, 0xFE, 0x1F, 0xFF, 0x7F, 0xFD, - 0xFF, 0xFF, 0xFF, 0xC7, 0xF0, 0x1F, 0xC0, 0x7E, 0x01, 0xF8, 0x0F, 0xE0, - 0x3F, 0x80, 0xFE, 0x03, 0xF0, 0x0F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, - 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0xF0, 0xFF, 0xC3, 0xFF, - 0x07, 0xFC, 0x0F, 0xE0, 0x0F, 0xC0, 0x0F, 0xE1, 0xF8, 0x01, 0xFC, 0x7F, - 0x00, 0x3F, 0x0F, 0xE0, 0x0F, 0xE1, 0xFC, 0x01, 0xFC, 0x3F, 0x00, 0x3F, - 0x87, 0xE0, 0x07, 0xE1, 0xFC, 0x00, 0xFC, 0x3F, 0x80, 0x3F, 0x87, 0xF0, - 0x07, 0xF0, 0xFC, 0x00, 0xFE, 0x1F, 0x80, 0x1F, 0x87, 0xF0, 0x03, 0xF0, - 0xFE, 0x00, 0xFE, 0x1F, 0x80, 0x1F, 0xC3, 0xF0, 0x03, 0xF0, 0xFE, 0x00, - 0x7E, 0x1F, 0xC0, 0x1F, 0xC3, 0xF8, 0x07, 0xF8, 0x7F, 0x01, 0xFF, 0x0F, - 0xF0, 0x7F, 0xC1, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0x03, 0xFF, 0xEF, - 0xE0, 0x3F, 0xF9, 0xFC, 0x01, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x7F, 0x7F, - 0x00, 0x3F, 0xBF, 0x80, 0x3F, 0x8F, 0xC0, 0x1F, 0xC7, 0xE0, 0x1F, 0xC3, - 0xF0, 0x0F, 0xC1, 0xFC, 0x0F, 0xE0, 0xFE, 0x07, 0xE0, 0x7F, 0x07, 0xF0, - 0x3F, 0x83, 0xF0, 0x0F, 0xC3, 0xF8, 0x07, 0xE1, 0xF8, 0x03, 0xF1, 0xFC, - 0x01, 0xF8, 0xFC, 0x00, 0xFC, 0xFC, 0x00, 0x7E, 0x7E, 0x00, 0x3F, 0x7E, - 0x00, 0x0F, 0xBF, 0x00, 0x07, 0xFF, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xFF, - 0x80, 0x00, 0xFF, 0x80, 0x00, 0x7F, 0xC0, 0x00, 0x3F, 0xC0, 0x00, 0x1F, - 0xE0, 0x00, 0x00, 0xFE, 0x03, 0xF8, 0x0F, 0xFF, 0xC0, 0x7F, 0x01, 0xFF, - 0xF8, 0x1F, 0xE0, 0x3F, 0x7F, 0x03, 0xFC, 0x0F, 0xEF, 0xE0, 0xFF, 0x81, - 0xF9, 0xFC, 0x1F, 0xF0, 0x7F, 0x3F, 0x83, 0xFE, 0x0F, 0xC3, 0xF0, 0xFF, - 0xC3, 0xF8, 0x7E, 0x1E, 0xF8, 0x7E, 0x0F, 0xC7, 0xDF, 0x1F, 0xC1, 0xF8, - 0xFB, 0xE3, 0xF0, 0x3F, 0x1E, 0x7C, 0x7E, 0x07, 0xE7, 0xCF, 0x9F, 0x80, - 0xFC, 0xF1, 0xF3, 0xF0, 0x1F, 0xBE, 0x3E, 0xFC, 0x03, 0xF7, 0x87, 0xDF, - 0x80, 0x7E, 0xF0, 0xFF, 0xE0, 0x0F, 0xFE, 0x1F, 0xFC, 0x01, 0xFF, 0x83, - 0xFF, 0x00, 0x3F, 0xF0, 0x7F, 0xE0, 0x07, 0xFC, 0x0F, 0xF8, 0x00, 0x7F, - 0x81, 0xFF, 0x00, 0x0F, 0xF0, 0x3F, 0xC0, 0x01, 0xFC, 0x07, 0xF8, 0x00, - 0x3F, 0x80, 0xFE, 0x00, 0x00, 0x03, 0xFC, 0x07, 0xF8, 0x1F, 0xE0, 0x7F, - 0x80, 0x7F, 0x03, 0xF8, 0x03, 0xF8, 0x3F, 0x80, 0x1F, 0xE3, 0xF8, 0x00, - 0x7F, 0x3F, 0x80, 0x03, 0xF9, 0xFC, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x7F, - 0xFC, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x7F, 0xC0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x01, 0xFF, 0x80, 0x00, - 0x1F, 0xFE, 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x1F, 0xDF, 0xC0, 0x01, 0xFC, - 0xFE, 0x00, 0x1F, 0xE7, 0xF8, 0x00, 0xFE, 0x1F, 0xC0, 0x0F, 0xE0, 0xFE, - 0x00, 0xFF, 0x07, 0xF8, 0x0F, 0xF0, 0x1F, 0xC0, 0xFF, 0x00, 0xFF, 0x00, - 0x0F, 0xE0, 0x03, 0xF0, 0x7F, 0x00, 0x3F, 0x83, 0xF8, 0x01, 0xF8, 0x1F, - 0xC0, 0x1F, 0xC0, 0xFE, 0x00, 0xFC, 0x03, 0xF8, 0x0F, 0xE0, 0x1F, 0xC0, - 0x7E, 0x00, 0xFE, 0x07, 0xE0, 0x07, 0xF0, 0x3F, 0x00, 0x3F, 0x83, 0xF0, - 0x01, 0xFC, 0x1F, 0x80, 0x0F, 0xE1, 0xF8, 0x00, 0x3F, 0x0F, 0xC0, 0x01, - 0xF8, 0xFC, 0x00, 0x0F, 0xC7, 0xC0, 0x00, 0x7F, 0x7E, 0x00, 0x03, 0xFB, - 0xE0, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0xFF, 0xF0, 0x00, 0x03, 0xFF, 0x80, - 0x00, 0x1F, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x3F, 0xC0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF8, 0x00, - 0x01, 0xFF, 0x80, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x07, - 0xF8, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xC0, 0xFF, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x1F, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0x80, - 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF8, - 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x7F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, - 0xE0, 0xFF, 0xFF, 0xF8, 0x00, 0x00, 0x0F, 0xC0, 0x0F, 0xF0, 0x07, 0xFC, - 0x01, 0xFE, 0x00, 0xFF, 0x80, 0x3E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x01, - 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF8, - 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x3F, 0x00, 0x7F, 0x80, 0x1F, 0x80, 0x07, 0xE0, 0x03, 0xFC, 0x00, 0x3F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, - 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x01, - 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xF8, 0x01, 0xFE, 0x00, 0x7F, - 0x80, 0x0F, 0xE0, 0x01, 0xF8, 0x00, 0x00, 0x78, 0x03, 0xC0, 0x1C, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1C, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x03, 0xC0, 0x1C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x03, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x70, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x70, - 0x07, 0x80, 0x3C, 0x00, 0x00, 0x7E, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x01, - 0xFE, 0x00, 0x7F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xF0, 0x00, - 0xFF, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x07, 0xF8, 0x03, 0xF0, 0x00, 0xF8, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, - 0x80, 0x07, 0xC0, 0x01, 0xF0, 0x07, 0xFC, 0x01, 0xFE, 0x00, 0xFF, 0x80, - 0x3F, 0xC0, 0x0F, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0xFF, 0x80, 0x07, 0xFF, - 0x03, 0xDF, 0xFE, 0x0F, 0xF0, 0x7F, 0xFB, 0x80, 0xFF, 0xE0, 0x01, 0xFF, - 0x00, 0x03, 0xF0}; - -const GFXglyph FreeSansBoldOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 13, 0, 1}, // 0x20 ' ' - {0, 14, 34, 16, 5, -33}, // 0x21 '!' - {60, 18, 12, 22, 8, -33}, // 0x22 '"' - {87, 29, 33, 26, 2, -31}, // 0x23 '#' - {207, 26, 42, 26, 3, -35}, // 0x24 '$' - {344, 36, 34, 42, 6, -32}, // 0x25 '%' - {497, 29, 35, 34, 4, -33}, // 0x26 '&' - {624, 7, 12, 11, 8, -33}, // 0x27 ''' - {635, 17, 44, 16, 4, -33}, // 0x28 '(' - {729, 17, 44, 16, 0, -34}, // 0x29 ')' - {823, 15, 15, 18, 7, -33}, // 0x2A '*' - {852, 24, 22, 27, 4, -21}, // 0x2B '+' - {918, 10, 15, 13, 1, -6}, // 0x2C ',' - {937, 14, 6, 16, 3, -15}, // 0x2D '-' - {948, 8, 7, 13, 3, -6}, // 0x2E '.' - {955, 20, 34, 13, 0, -32}, // 0x2F '/' - {1040, 25, 35, 26, 4, -33}, // 0x30 '0' - {1150, 17, 33, 26, 8, -32}, // 0x31 '1' - {1221, 29, 34, 26, 1, -33}, // 0x32 '2' - {1345, 26, 35, 26, 3, -33}, // 0x33 '3' - {1459, 25, 32, 26, 3, -31}, // 0x34 '4' - {1559, 27, 34, 26, 3, -32}, // 0x35 '5' - {1674, 25, 35, 26, 4, -33}, // 0x36 '6' - {1784, 26, 33, 26, 6, -32}, // 0x37 '7' - {1892, 26, 35, 26, 3, -33}, // 0x38 '8' - {2006, 25, 35, 26, 4, -33}, // 0x39 '9' - {2116, 12, 25, 16, 5, -24}, // 0x3A ':' - {2154, 14, 33, 16, 3, -24}, // 0x3B ';' - {2212, 26, 23, 27, 4, -22}, // 0x3C '<' - {2287, 26, 18, 27, 3, -19}, // 0x3D '=' - {2346, 26, 23, 27, 1, -21}, // 0x3E '>' - {2421, 24, 35, 29, 8, -34}, // 0x3F '?' - {2526, 45, 41, 46, 3, -34}, // 0x40 '@' - {2757, 32, 34, 34, 1, -33}, // 0x41 'A' - {2893, 32, 34, 34, 4, -33}, // 0x42 'B' - {3029, 32, 36, 34, 5, -34}, // 0x43 'C' - {3173, 32, 34, 34, 4, -33}, // 0x44 'D' - {3309, 32, 34, 31, 4, -33}, // 0x45 'E' - {3445, 32, 34, 29, 3, -33}, // 0x46 'F' - {3581, 33, 36, 37, 5, -34}, // 0x47 'G' - {3730, 35, 34, 34, 3, -33}, // 0x48 'H' - {3879, 14, 34, 13, 3, -33}, // 0x49 'I' - {3939, 27, 35, 26, 3, -33}, // 0x4A 'J' - {4058, 37, 34, 34, 3, -33}, // 0x4B 'K' - {4216, 24, 34, 29, 4, -33}, // 0x4C 'L' - {4318, 41, 34, 39, 3, -33}, // 0x4D 'M' - {4493, 35, 34, 34, 3, -33}, // 0x4E 'N' - {4642, 34, 36, 37, 5, -34}, // 0x4F 'O' - {4795, 31, 34, 31, 4, -33}, // 0x50 'P' - {4927, 34, 37, 37, 5, -34}, // 0x51 'Q' - {5085, 33, 34, 34, 4, -33}, // 0x52 'R' - {5226, 30, 36, 31, 4, -34}, // 0x53 'S' - {5361, 28, 34, 29, 7, -33}, // 0x54 'T' - {5480, 32, 35, 34, 6, -33}, // 0x55 'U' - {5620, 30, 34, 31, 8, -33}, // 0x56 'V' - {5748, 43, 34, 44, 8, -33}, // 0x57 'W' - {5931, 37, 34, 31, 1, -33}, // 0x58 'X' - {6089, 29, 34, 31, 9, -33}, // 0x59 'Y' - {6213, 33, 34, 29, 1, -33}, // 0x5A 'Z' - {6354, 21, 43, 16, 1, -33}, // 0x5B '[' - {6467, 7, 36, 13, 6, -34}, // 0x5C '\' - {6499, 21, 43, 16, -1, -33}, // 0x5D ']' - {6612, 21, 20, 27, 6, -32}, // 0x5E '^' - {6665, 29, 4, 26, -3, 6}, // 0x5F '_' - {6680, 7, 7, 16, 8, -35}, // 0x60 '`' - {6687, 25, 26, 26, 2, -24}, // 0x61 'a' - {6769, 27, 35, 29, 3, -33}, // 0x62 'b' - {6888, 25, 26, 26, 4, -24}, // 0x63 'c' - {6970, 29, 35, 29, 4, -33}, // 0x64 'd' - {7097, 25, 26, 26, 3, -24}, // 0x65 'e' - {7179, 18, 34, 16, 4, -33}, // 0x66 'f' - {7256, 29, 35, 29, 2, -24}, // 0x67 'g' - {7383, 27, 34, 29, 3, -33}, // 0x68 'h' - {7498, 14, 34, 13, 3, -33}, // 0x69 'i' - {7558, 19, 44, 13, -2, -33}, // 0x6A 'j' - {7663, 28, 34, 26, 3, -33}, // 0x6B 'k' - {7782, 14, 34, 13, 3, -33}, // 0x6C 'l' - {7842, 40, 25, 42, 3, -24}, // 0x6D 'm' - {7967, 27, 25, 29, 3, -24}, // 0x6E 'n' - {8052, 26, 26, 29, 4, -24}, // 0x6F 'o' - {8137, 29, 35, 29, 1, -24}, // 0x70 'p' - {8264, 28, 35, 29, 3, -24}, // 0x71 'q' - {8387, 20, 25, 18, 3, -24}, // 0x72 'r' - {8450, 24, 26, 26, 3, -24}, // 0x73 's' - {8528, 14, 32, 16, 5, -30}, // 0x74 't' - {8584, 27, 26, 29, 4, -24}, // 0x75 'u' - {8672, 25, 25, 26, 6, -24}, // 0x76 'v' - {8751, 35, 25, 37, 6, -24}, // 0x77 'w' - {8861, 29, 25, 26, 1, -24}, // 0x78 'x' - {8952, 29, 35, 26, 2, -24}, // 0x79 'y' - {9079, 26, 25, 23, 1, -24}, // 0x7A 'z' - {9161, 18, 43, 18, 4, -33}, // 0x7B '{' - {9258, 13, 43, 13, 3, -33}, // 0x7C '|' - {9328, 18, 43, 18, 2, -33}, // 0x7D '}' - {9425, 22, 8, 27, 5, -14}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique24pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique24pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 10119 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h deleted file mode 100644 index ff72f73..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h +++ /dev/null @@ -1,229 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique9pt7bBitmaps[] PROGMEM = { - 0x21, 0x8E, 0x73, 0x18, 0xC6, 0x21, 0x19, 0xCE, 0x00, 0xEF, 0xDF, 0xBE, - 0x68, 0x80, 0x06, 0xC1, 0x99, 0xFF, 0xBF, 0xF1, 0xB0, 0x66, 0x0C, 0xC7, - 0xFC, 0xFF, 0x8C, 0x83, 0x30, 0x64, 0x00, 0x02, 0x00, 0xF0, 0x7F, 0x1D, - 0x73, 0xEE, 0x78, 0x0F, 0x00, 0xF8, 0x0F, 0xC1, 0xBB, 0xA7, 0x74, 0xEF, - 0xF8, 0xFE, 0x04, 0x00, 0x80, 0x3C, 0x11, 0xF8, 0x8E, 0x66, 0x31, 0x90, - 0xCE, 0x83, 0xF4, 0x07, 0xB0, 0x00, 0x9E, 0x04, 0xFC, 0x26, 0x31, 0x98, - 0xC4, 0x7E, 0x20, 0xF0, 0x07, 0x80, 0xFC, 0x1D, 0xC1, 0xDC, 0x1F, 0x80, - 0xE0, 0x3E, 0x37, 0x77, 0xE3, 0xEE, 0x3C, 0xE3, 0xCF, 0xFE, 0x3C, 0xE0, - 0xFF, 0xE8, 0x06, 0x06, 0x0C, 0x18, 0x38, 0x30, 0x70, 0x60, 0xE0, 0xE0, - 0xE0, 0xE0, 0xE0, 0xE0, 0x60, 0x70, 0x30, 0x0C, 0x0E, 0x06, 0x07, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x06, 0x0E, 0x0C, 0x1C, 0x18, 0x30, 0x60, 0x60, - 0x32, 0xBF, 0x9C, 0xD2, 0x40, 0x0C, 0x06, 0x07, 0x1F, 0xFF, 0xF0, 0xC0, - 0xE0, 0x60, 0x77, 0x72, 0x6C, 0xFF, 0xC0, 0xFC, 0x02, 0x02, 0x04, 0x04, - 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x0F, 0x07, 0xE3, - 0x9D, 0xC7, 0x71, 0xDC, 0x7E, 0x1F, 0x8E, 0xE3, 0xB8, 0xEE, 0x73, 0xF8, - 0x3C, 0x00, 0x04, 0x3B, 0xF7, 0xE1, 0xC3, 0x06, 0x1C, 0x38, 0x70, 0xC1, - 0x87, 0x00, 0x0F, 0x87, 0xFC, 0xE3, 0xB8, 0x70, 0x0E, 0x03, 0x80, 0xF0, - 0x38, 0x1E, 0x07, 0x01, 0xC0, 0x7F, 0xCF, 0xF8, 0x0F, 0xC7, 0xFC, 0xE3, - 0xB8, 0x70, 0x1C, 0x0F, 0x03, 0xF0, 0x0E, 0x01, 0xDC, 0x3B, 0x8E, 0x7F, - 0x83, 0xE0, 0x03, 0xC0, 0xE0, 0x58, 0x2E, 0x13, 0x8C, 0xE6, 0x33, 0xFE, - 0xFF, 0x81, 0xC0, 0x60, 0x18, 0x0F, 0xE3, 0xFC, 0x60, 0x0C, 0x03, 0x78, - 0x7F, 0x9C, 0x70, 0x0E, 0x01, 0xDC, 0x33, 0x8E, 0x7F, 0x83, 0xE0, 0x0F, - 0x07, 0xE3, 0x9D, 0xC0, 0x7F, 0x1F, 0xEF, 0x3B, 0x8E, 0xE3, 0xB8, 0xCE, - 0x71, 0xF8, 0x3C, 0x00, 0x7F, 0xDF, 0xF0, 0x18, 0x0C, 0x06, 0x03, 0x81, - 0xC0, 0x60, 0x38, 0x0C, 0x07, 0x01, 0x80, 0x60, 0x00, 0x0F, 0x83, 0xFC, - 0xE3, 0x9C, 0x73, 0x9C, 0x3F, 0x0F, 0xE3, 0x8E, 0xE1, 0xDC, 0x3B, 0x8E, - 0x7F, 0xC3, 0xE0, 0x0F, 0x83, 0xF8, 0xE3, 0xB8, 0x77, 0x0E, 0xE1, 0xDC, - 0x7B, 0xFE, 0x3D, 0xC0, 0x33, 0x8E, 0x7F, 0x87, 0xC0, 0x77, 0x00, 0x00, - 0x0E, 0xE0, 0x39, 0xC0, 0x00, 0x01, 0xCE, 0x71, 0x19, 0x80, 0x00, 0x00, - 0x70, 0xFD, 0xF8, 0x70, 0x3F, 0x03, 0xF8, 0x1E, 0x01, 0x80, 0x7F, 0xDF, - 0xF0, 0x00, 0x00, 0xFF, 0xBF, 0xE0, 0x60, 0x1E, 0x07, 0xF0, 0x3F, 0x03, - 0x87, 0xEF, 0xC3, 0x80, 0x00, 0x00, 0x1F, 0x1F, 0xFE, 0x1F, 0x87, 0x01, - 0xC0, 0xE0, 0x70, 0x78, 0x3C, 0x0E, 0x00, 0x00, 0xE0, 0x38, 0x00, 0x00, - 0xFC, 0x00, 0xFF, 0xC0, 0xF0, 0x78, 0x70, 0x07, 0x38, 0x01, 0xCC, 0x3F, - 0x36, 0x31, 0x8D, 0x98, 0x63, 0xC4, 0x11, 0xF3, 0x0C, 0x6C, 0xC6, 0x73, - 0x3E, 0xF8, 0xE7, 0x3C, 0x1E, 0x00, 0x03, 0xFE, 0x00, 0x3F, 0x00, 0x01, - 0xE0, 0x0F, 0x00, 0xF8, 0x07, 0xC0, 0x6F, 0x03, 0x38, 0x31, 0xC3, 0x8E, - 0x1F, 0xF1, 0xFF, 0x8C, 0x1E, 0xE0, 0x76, 0x03, 0x80, 0x1F, 0xF0, 0xFF, - 0xC6, 0x0E, 0x70, 0x73, 0x87, 0x1F, 0xF0, 0xFF, 0x86, 0x0E, 0x70, 0x73, - 0x83, 0x9C, 0x38, 0xFF, 0xC7, 0xF8, 0x00, 0x07, 0xE0, 0xFF, 0x8F, 0x1E, - 0x70, 0x77, 0x00, 0x30, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x03, 0xBC, - 0x38, 0xFF, 0x83, 0xF0, 0x00, 0x1F, 0xE0, 0xFF, 0x86, 0x1E, 0x70, 0x73, - 0x83, 0x9C, 0x1C, 0xC0, 0xE6, 0x07, 0x70, 0x73, 0x83, 0x9C, 0x38, 0xFF, - 0x8F, 0xF0, 0x00, 0x1F, 0xF8, 0xFF, 0x86, 0x00, 0x70, 0x03, 0x80, 0x1F, - 0xF0, 0xFF, 0x86, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xFF, 0xC7, 0xFC, - 0x00, 0x1F, 0xF1, 0xFF, 0x18, 0x03, 0x80, 0x38, 0x03, 0xFC, 0x3F, 0xC7, - 0x00, 0x70, 0x07, 0x00, 0x70, 0x06, 0x00, 0xE0, 0x00, 0x07, 0xC1, 0xFE, - 0x38, 0x77, 0x03, 0x70, 0x0E, 0x00, 0xE1, 0xEE, 0x1E, 0xE0, 0x6E, 0x0E, - 0x70, 0xE7, 0xFC, 0x1F, 0x40, 0x1C, 0x1C, 0x60, 0x63, 0x83, 0x8E, 0x0E, - 0x38, 0x38, 0xFF, 0xC3, 0xFF, 0x1C, 0x1C, 0x70, 0x71, 0xC1, 0xC6, 0x06, - 0x18, 0x38, 0xE0, 0xE0, 0x39, 0xCE, 0x63, 0x39, 0xCE, 0x63, 0x39, 0xCE, - 0x00, 0x00, 0xC0, 0x18, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x00, 0xE0, 0x1C, - 0xE3, 0x9C, 0x73, 0x9C, 0x7F, 0x87, 0xC0, 0x1C, 0x3C, 0x71, 0xC1, 0x8E, - 0x0E, 0x70, 0x3B, 0x80, 0xFC, 0x03, 0xF0, 0x0E, 0xE0, 0x73, 0x81, 0xC7, - 0x07, 0x1C, 0x18, 0x38, 0xE0, 0xF0, 0x1C, 0x07, 0x01, 0x80, 0xE0, 0x38, - 0x0E, 0x03, 0x80, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xFF, 0x7F, 0x80, 0x1E, - 0x1F, 0x1E, 0x1E, 0x3E, 0x1E, 0x3E, 0x3E, 0x36, 0x3E, 0x36, 0x6E, 0x36, - 0x6C, 0x76, 0xCC, 0x76, 0xDC, 0x67, 0x9C, 0x67, 0x98, 0xE7, 0x18, 0xE7, - 0x18, 0x1C, 0x1C, 0x70, 0x63, 0xE1, 0x8F, 0x8E, 0x3E, 0x38, 0xDC, 0xC3, - 0x33, 0x1C, 0xEC, 0x71, 0xF1, 0xC7, 0xC6, 0x1E, 0x18, 0x38, 0xE0, 0xE0, - 0x07, 0xC0, 0xFF, 0x8E, 0x1E, 0xE0, 0x77, 0x03, 0xF0, 0x1F, 0x80, 0xFC, - 0x07, 0xE0, 0x77, 0x03, 0xBC, 0x38, 0xFF, 0x81, 0xF0, 0x00, 0x1F, 0xF0, - 0xFF, 0xC6, 0x0E, 0x70, 0x73, 0x83, 0x9C, 0x38, 0xFF, 0x87, 0xF8, 0x70, - 0x03, 0x80, 0x1C, 0x00, 0xC0, 0x0E, 0x00, 0x00, 0x07, 0xC0, 0xFF, 0x8F, - 0x1C, 0xE0, 0x77, 0x03, 0xB0, 0x1F, 0x80, 0xFC, 0x06, 0xE1, 0x77, 0x1F, - 0x3C, 0x78, 0xFF, 0xC1, 0xF6, 0x00, 0x20, 0x1F, 0xF0, 0xFF, 0xC6, 0x0E, - 0x70, 0x73, 0x83, 0x9C, 0x38, 0xFF, 0x87, 0xFC, 0x70, 0x73, 0x83, 0x9C, - 0x38, 0xC1, 0xC6, 0x0F, 0x00, 0x07, 0xE0, 0xFF, 0xC7, 0x0E, 0x70, 0x73, - 0x80, 0x1F, 0x80, 0x7F, 0x80, 0x7E, 0x00, 0x77, 0x03, 0xBC, 0x38, 0xFF, - 0xC3, 0xF8, 0x00, 0xFF, 0xDF, 0xF8, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x06, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xC0, 0x18, 0x07, 0x00, 0x38, 0x31, 0xC1, - 0x8C, 0x1C, 0xE0, 0xE7, 0x07, 0x38, 0x31, 0xC3, 0x9C, 0x1C, 0xE0, 0xE7, - 0x06, 0x38, 0x70, 0xFF, 0x03, 0xE0, 0x00, 0xE0, 0xFC, 0x1D, 0x87, 0x30, - 0xC6, 0x38, 0xC6, 0x19, 0xC3, 0xB0, 0x7E, 0x0F, 0x80, 0xF0, 0x1C, 0x03, - 0x00, 0xE1, 0xC3, 0xF1, 0xE3, 0xB8, 0xF1, 0xDC, 0x78, 0xCE, 0x6C, 0xE7, - 0x36, 0x63, 0xB3, 0x70, 0xD9, 0xB0, 0x7C, 0xD8, 0x3C, 0x78, 0x1E, 0x3C, - 0x0E, 0x1C, 0x07, 0x0E, 0x00, 0x0E, 0x1C, 0x38, 0xE0, 0xE7, 0x01, 0xD8, - 0x07, 0xE0, 0x0F, 0x00, 0x38, 0x01, 0xE0, 0x0F, 0xC0, 0x77, 0x01, 0x8E, - 0x0E, 0x38, 0x70, 0xF0, 0xE0, 0xEE, 0x39, 0xC7, 0x39, 0xC3, 0x70, 0x7C, - 0x0F, 0x80, 0xE0, 0x1C, 0x03, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x3F, 0xF3, - 0xFF, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x3C, 0x07, - 0x80, 0x70, 0x0F, 0xFC, 0xFF, 0xC0, 0x0F, 0x0F, 0x0C, 0x1C, 0x18, 0x18, - 0x18, 0x18, 0x30, 0x30, 0x30, 0x30, 0x60, 0x60, 0x60, 0x78, 0x78, 0x12, - 0x4C, 0x92, 0x49, 0x26, 0xD9, 0x20, 0x1E, 0x1E, 0x06, 0x06, 0x06, 0x0C, - 0x0C, 0x0C, 0x0C, 0x18, 0x18, 0x18, 0x18, 0x38, 0x30, 0xF0, 0xF0, 0x06, - 0x0E, 0x0E, 0x1B, 0x33, 0x33, 0x63, 0x63, 0xFF, 0xE0, 0xCC, 0x1F, 0x8F, - 0xF3, 0x1C, 0x06, 0x1F, 0x9F, 0xEE, 0x3B, 0x9C, 0xFF, 0x1D, 0xC0, 0x18, - 0x03, 0x00, 0xE0, 0x1D, 0xC3, 0xFC, 0x71, 0xDC, 0x3B, 0x87, 0x70, 0xEE, - 0x39, 0xCF, 0x7F, 0xCF, 0xE0, 0x0F, 0x0F, 0xF7, 0x1D, 0xC0, 0xE0, 0x38, - 0x0E, 0x03, 0x8E, 0x7F, 0x0F, 0x80, 0x00, 0x60, 0x06, 0x00, 0x61, 0xEE, - 0x3F, 0xE7, 0x9C, 0x71, 0xCE, 0x1C, 0xE1, 0xCE, 0x1C, 0xE3, 0x87, 0xF8, - 0x7F, 0x80, 0x1F, 0x0F, 0xE7, 0x1D, 0xC7, 0xFF, 0xFF, 0xFE, 0x03, 0x8E, - 0x7F, 0x0F, 0x80, 0x1C, 0xF3, 0x3F, 0xFD, 0xC7, 0x18, 0x63, 0x8E, 0x30, - 0xC0, 0x0F, 0x71, 0xFE, 0x3C, 0xE3, 0x8E, 0x70, 0xE7, 0x0E, 0x70, 0xC7, - 0x1C, 0x3F, 0xC3, 0xFC, 0x01, 0xCE, 0x38, 0x7F, 0x03, 0xE0, 0x18, 0x03, - 0x00, 0xE0, 0x1D, 0xE3, 0xFE, 0x71, 0xCC, 0x3B, 0x86, 0x70, 0xCC, 0x39, - 0x87, 0x30, 0xEE, 0x18, 0x39, 0xC0, 0x63, 0x39, 0xCE, 0x63, 0x39, 0xCE, - 0x00, 0x06, 0x06, 0x00, 0x0E, 0x0E, 0x0C, 0x0C, 0x1C, 0x1C, 0x1C, 0x18, - 0x18, 0x38, 0x38, 0x30, 0x70, 0xE0, 0x18, 0x03, 0x00, 0xE0, 0x1C, 0xE3, - 0x38, 0x6E, 0x1F, 0x83, 0xF0, 0x7E, 0x0E, 0xE1, 0x9C, 0x73, 0x8E, 0x38, - 0x39, 0xCE, 0x63, 0x39, 0xCE, 0x63, 0x39, 0xCE, 0x00, 0x3B, 0x9E, 0x3F, - 0xFF, 0x39, 0xC7, 0x71, 0xC6, 0x71, 0x86, 0x71, 0x8E, 0x63, 0x8E, 0x63, - 0x8C, 0xE3, 0x8C, 0xE3, 0x1C, 0x3B, 0xC7, 0xFC, 0xE3, 0xB8, 0x77, 0x0C, - 0xE1, 0x98, 0x73, 0x0E, 0xE1, 0xDC, 0x30, 0x0F, 0x87, 0xF9, 0xE7, 0xB8, - 0x7E, 0x0F, 0xC1, 0xF8, 0x77, 0x9E, 0x7F, 0x87, 0xC0, 0x1D, 0xE1, 0xFE, - 0x1C, 0x73, 0x87, 0x38, 0x73, 0x87, 0x38, 0xE3, 0x8E, 0x7F, 0xC7, 0xF8, - 0x60, 0x06, 0x00, 0x60, 0x0E, 0x00, 0x1E, 0xE7, 0xFD, 0xE7, 0x38, 0xEE, - 0x1D, 0xC3, 0xB8, 0x77, 0x1C, 0x7F, 0x8F, 0xF0, 0x0E, 0x01, 0x80, 0x30, - 0x06, 0x00, 0x3B, 0x36, 0x38, 0x70, 0x70, 0x70, 0x60, 0x60, 0xE0, 0xE0, - 0x3E, 0x3F, 0xF8, 0xFC, 0x0F, 0xC3, 0xF8, 0x3D, 0x8E, 0xFE, 0x3E, 0x00, - 0x38, 0xCF, 0xFE, 0x71, 0x86, 0x38, 0xE3, 0x8F, 0x3C, 0x31, 0xDC, 0x77, - 0x19, 0x86, 0x63, 0xB8, 0xEE, 0x33, 0x9C, 0xFF, 0x1F, 0xC0, 0xE1, 0x98, - 0xE6, 0x31, 0x9C, 0x66, 0x1B, 0x86, 0xC1, 0xF0, 0x78, 0x0E, 0x00, 0xE7, - 0x1B, 0x9C, 0xEE, 0x73, 0x3B, 0xDC, 0xEB, 0x63, 0xAD, 0x8F, 0xBC, 0x1C, - 0xF0, 0x73, 0xC1, 0xCE, 0x00, 0x1C, 0xE1, 0xCC, 0x0D, 0x80, 0xF8, 0x0F, - 0x00, 0xF0, 0x1F, 0x03, 0xB8, 0x33, 0x87, 0x38, 0x70, 0xCE, 0x38, 0xC6, - 0x19, 0xC3, 0x30, 0x66, 0x0F, 0x81, 0xF0, 0x3C, 0x03, 0x80, 0x60, 0x18, - 0x0F, 0x01, 0xC0, 0x00, 0x1F, 0xCF, 0xF0, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0x7F, 0xBF, 0xE0, 0x0E, 0x38, 0x61, 0x83, 0x06, 0x0C, 0x78, - 0xF0, 0xC1, 0x83, 0x0E, 0x1C, 0x38, 0x78, 0x70, 0x18, 0xC4, 0x21, 0x18, - 0xC4, 0x21, 0x18, 0xC4, 0x23, 0x18, 0x80, 0x1C, 0x3C, 0x38, 0x70, 0xE1, - 0x83, 0x06, 0x1E, 0x5C, 0x60, 0xC1, 0x83, 0x0C, 0x38, 0xE0, 0x71, 0x8E}; - -const GFXglyph FreeSansBoldOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 5, 13, 6, 2, -12}, // 0x21 '!' - {9, 7, 5, 9, 3, -12}, // 0x22 '"' - {14, 11, 12, 10, 1, -11}, // 0x23 '#' - {31, 11, 16, 10, 1, -13}, // 0x24 '$' - {53, 14, 13, 16, 2, -12}, // 0x25 '%' - {76, 12, 13, 13, 2, -12}, // 0x26 '&' - {96, 3, 5, 4, 3, -12}, // 0x27 ''' - {98, 8, 17, 6, 2, -12}, // 0x28 '(' - {115, 8, 17, 6, -2, -13}, // 0x29 ')' - {132, 6, 6, 7, 3, -12}, // 0x2A '*' - {137, 9, 8, 11, 2, -7}, // 0x2B '+' - {146, 4, 6, 5, 0, -2}, // 0x2C ',' - {149, 5, 2, 6, 1, -5}, // 0x2D '-' - {151, 3, 2, 5, 1, -1}, // 0x2E '.' - {152, 8, 13, 5, 0, -12}, // 0x2F '/' - {165, 10, 13, 10, 1, -12}, // 0x30 '0' - {182, 7, 13, 10, 3, -12}, // 0x31 '1' - {194, 11, 13, 10, 1, -12}, // 0x32 '2' - {212, 11, 13, 10, 1, -12}, // 0x33 '3' - {230, 10, 12, 10, 1, -11}, // 0x34 '4' - {245, 11, 13, 10, 1, -12}, // 0x35 '5' - {263, 10, 13, 10, 2, -12}, // 0x36 '6' - {280, 10, 13, 10, 2, -12}, // 0x37 '7' - {297, 11, 13, 10, 1, -12}, // 0x38 '8' - {315, 11, 13, 10, 1, -12}, // 0x39 '9' - {333, 4, 9, 6, 2, -8}, // 0x3A ':' - {338, 5, 12, 6, 1, -8}, // 0x3B ';' - {346, 10, 9, 11, 1, -8}, // 0x3C '<' - {358, 10, 6, 11, 1, -6}, // 0x3D '=' - {366, 10, 9, 11, 1, -7}, // 0x3E '>' - {378, 10, 13, 11, 3, -12}, // 0x3F '?' - {395, 18, 16, 18, 1, -13}, // 0x40 '@' - {431, 13, 13, 13, 0, -12}, // 0x41 'A' - {453, 13, 13, 13, 1, -12}, // 0x42 'B' - {475, 13, 13, 13, 2, -12}, // 0x43 'C' - {497, 13, 13, 13, 1, -12}, // 0x44 'D' - {519, 13, 13, 12, 1, -12}, // 0x45 'E' - {541, 12, 13, 11, 1, -12}, // 0x46 'F' - {561, 12, 13, 14, 2, -12}, // 0x47 'G' - {581, 14, 13, 13, 1, -12}, // 0x48 'H' - {604, 5, 13, 5, 1, -12}, // 0x49 'I' - {613, 11, 13, 10, 1, -12}, // 0x4A 'J' - {631, 14, 13, 13, 1, -12}, // 0x4B 'K' - {654, 10, 13, 11, 1, -12}, // 0x4C 'L' - {671, 16, 13, 15, 1, -12}, // 0x4D 'M' - {697, 14, 13, 13, 1, -12}, // 0x4E 'N' - {720, 13, 13, 14, 2, -12}, // 0x4F 'O' - {742, 13, 13, 12, 1, -12}, // 0x50 'P' - {764, 13, 14, 14, 2, -12}, // 0x51 'Q' - {787, 13, 13, 13, 1, -12}, // 0x52 'R' - {809, 13, 13, 12, 1, -12}, // 0x53 'S' - {831, 11, 13, 11, 3, -12}, // 0x54 'T' - {849, 13, 13, 13, 2, -12}, // 0x55 'U' - {871, 11, 13, 12, 3, -12}, // 0x56 'V' - {889, 17, 13, 17, 3, -12}, // 0x57 'W' - {917, 14, 13, 12, 0, -12}, // 0x58 'X' - {940, 11, 13, 12, 3, -12}, // 0x59 'Y' - {958, 12, 13, 11, 1, -12}, // 0x5A 'Z' - {978, 8, 17, 6, 0, -12}, // 0x5B '[' - {995, 3, 17, 5, 2, -16}, // 0x5C '\' - {1002, 8, 17, 6, 0, -13}, // 0x5D ']' - {1019, 8, 8, 11, 2, -12}, // 0x5E '^' - {1027, 11, 1, 10, -1, 4}, // 0x5F '_' - {1029, 3, 2, 6, 3, -12}, // 0x60 '`' - {1030, 10, 10, 10, 1, -9}, // 0x61 'a' - {1043, 11, 13, 11, 1, -12}, // 0x62 'b' - {1061, 10, 10, 10, 1, -9}, // 0x63 'c' - {1074, 12, 13, 11, 1, -12}, // 0x64 'd' - {1094, 10, 10, 10, 1, -9}, // 0x65 'e' - {1107, 6, 13, 6, 2, -12}, // 0x66 'f' - {1117, 12, 14, 11, 0, -9}, // 0x67 'g' - {1138, 11, 13, 11, 1, -12}, // 0x68 'h' - {1156, 5, 13, 5, 1, -12}, // 0x69 'i' - {1165, 8, 17, 5, -1, -12}, // 0x6A 'j' - {1182, 11, 13, 10, 1, -12}, // 0x6B 'k' - {1200, 5, 13, 5, 1, -12}, // 0x6C 'l' - {1209, 16, 10, 16, 1, -9}, // 0x6D 'm' - {1229, 11, 10, 11, 1, -9}, // 0x6E 'n' - {1243, 11, 10, 11, 1, -9}, // 0x6F 'o' - {1257, 12, 14, 11, 0, -9}, // 0x70 'p' - {1278, 11, 14, 11, 1, -9}, // 0x71 'q' - {1298, 8, 10, 7, 1, -9}, // 0x72 'r' - {1308, 9, 10, 10, 2, -9}, // 0x73 's' - {1320, 6, 12, 6, 2, -11}, // 0x74 't' - {1329, 10, 10, 11, 2, -9}, // 0x75 'u' - {1342, 10, 10, 10, 2, -9}, // 0x76 'v' - {1355, 14, 10, 14, 2, -9}, // 0x77 'w' - {1373, 12, 10, 10, 0, -9}, // 0x78 'x' - {1388, 11, 14, 10, 1, -9}, // 0x79 'y' - {1408, 10, 10, 9, 0, -9}, // 0x7A 'z' - {1421, 7, 17, 7, 2, -12}, // 0x7B '{' - {1436, 5, 17, 5, 1, -12}, // 0x7C '|' - {1447, 7, 17, 7, 0, -13}, // 0x7D '}' - {1462, 8, 2, 11, 2, -4}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique9pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique9pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 2136 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h deleted file mode 100644 index ce55f4d..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h +++ /dev/null @@ -1,304 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique12pt7bBitmaps[] PROGMEM = { - 0x0C, 0x61, 0x86, 0x18, 0x63, 0x0C, 0x30, 0xC2, 0x18, 0x61, 0x00, 0x00, - 0xC3, 0x00, 0xCF, 0x3C, 0xE2, 0x8A, 0x20, 0x01, 0x8C, 0x03, 0x18, 0x06, - 0x60, 0x18, 0xC0, 0x31, 0x83, 0xFF, 0x87, 0xFF, 0x03, 0x18, 0x0C, 0x60, - 0x18, 0xC0, 0x23, 0x03, 0xFF, 0x8F, 0xFF, 0x02, 0x30, 0x0C, 0x60, 0x18, - 0x80, 0x63, 0x00, 0xC6, 0x00, 0x00, 0x80, 0x3F, 0x03, 0xFC, 0x32, 0x73, - 0x91, 0x99, 0x8C, 0xCC, 0x06, 0x60, 0x3E, 0x00, 0x7E, 0x01, 0xFC, 0x0C, - 0xEC, 0x43, 0x62, 0x1B, 0x11, 0x9D, 0x9C, 0x7F, 0xC1, 0xF8, 0x02, 0x00, - 0x10, 0x01, 0x80, 0x00, 0x00, 0x01, 0x83, 0xC0, 0x60, 0xFC, 0x18, 0x30, - 0xC2, 0x0C, 0x18, 0xC1, 0x83, 0x30, 0x38, 0xCC, 0x03, 0xF1, 0x00, 0x3C, - 0x40, 0x00, 0x18, 0xF0, 0x06, 0x3F, 0x01, 0x8C, 0x30, 0x23, 0x06, 0x0C, - 0x60, 0xC3, 0x0E, 0x30, 0xC0, 0xFC, 0x10, 0x0F, 0x00, 0x01, 0xE0, 0x3F, - 0x81, 0x8C, 0x18, 0x60, 0xC3, 0x06, 0x30, 0x1F, 0x00, 0xE0, 0x1F, 0x01, - 0xDC, 0xD8, 0x6D, 0x81, 0xEC, 0x0E, 0x60, 0x73, 0x87, 0xCF, 0xE6, 0x3E, - 0x38, 0xFE, 0xA0, 0x03, 0x06, 0x04, 0x0C, 0x18, 0x18, 0x30, 0x30, 0x60, - 0x60, 0x60, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x40, 0x60, - 0x60, 0x20, 0x04, 0x06, 0x06, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, - 0x03, 0x03, 0x06, 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x18, 0x30, 0x20, 0x60, - 0xC0, 0x0C, 0x0C, 0x49, 0x7F, 0x3C, 0x3C, 0x6C, 0x00, 0x03, 0x00, 0x30, - 0x03, 0x00, 0x30, 0xFF, 0xFF, 0xFF, 0x06, 0x00, 0x60, 0x06, 0x00, 0xC0, - 0x0C, 0x00, 0x77, 0x22, 0x6C, 0xFF, 0xF0, 0xFC, 0x00, 0x40, 0x30, 0x08, - 0x06, 0x01, 0x00, 0xC0, 0x20, 0x18, 0x04, 0x02, 0x00, 0x80, 0x40, 0x10, - 0x08, 0x02, 0x01, 0x00, 0xC0, 0x20, 0x00, 0x07, 0xC0, 0xFE, 0x1C, 0x73, - 0x83, 0x30, 0x36, 0x03, 0x60, 0x36, 0x03, 0xC0, 0x7C, 0x07, 0xC0, 0x6C, - 0x06, 0xC0, 0xEC, 0x0C, 0xE3, 0x87, 0xF0, 0x3E, 0x00, 0x02, 0x0C, 0x77, - 0xEF, 0xC1, 0x83, 0x0C, 0x18, 0x30, 0x61, 0xC3, 0x06, 0x0C, 0x18, 0x60, - 0x03, 0xF0, 0x1F, 0xE0, 0xE1, 0xC7, 0x03, 0x18, 0x0C, 0x00, 0x30, 0x01, - 0x80, 0x0E, 0x00, 0x70, 0x07, 0x80, 0x78, 0x07, 0x80, 0x38, 0x01, 0xC0, - 0x06, 0x00, 0x1F, 0xFC, 0xFF, 0xE0, 0x07, 0xC0, 0xFE, 0x1C, 0x73, 0x03, - 0x30, 0x30, 0x03, 0x00, 0xE0, 0x7C, 0x07, 0xC0, 0x0E, 0x00, 0x60, 0x06, - 0xC0, 0x6C, 0x0C, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x00, 0x60, 0x06, 0x00, - 0xE0, 0x1E, 0x03, 0xE0, 0x6C, 0x0C, 0xC1, 0x8C, 0x30, 0xC6, 0x1C, 0xC1, - 0x8F, 0xFF, 0xFF, 0xE0, 0x18, 0x03, 0x00, 0x30, 0x03, 0x00, 0x0F, 0xF8, - 0x7F, 0xC6, 0x00, 0x30, 0x01, 0x00, 0x1B, 0xC0, 0xFF, 0x06, 0x1C, 0x60, - 0x60, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x0C, 0x60, 0x63, 0x86, 0x0F, 0xE0, - 0x3E, 0x00, 0x03, 0xC0, 0xFE, 0x1C, 0x73, 0x83, 0x30, 0x06, 0x00, 0x67, - 0x87, 0xFC, 0xF0, 0xEE, 0x06, 0xC0, 0x6C, 0x06, 0xC0, 0x4C, 0x0C, 0xE1, - 0x87, 0xF8, 0x3E, 0x00, 0x3F, 0xFB, 0xFF, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, - 0x00, 0xC0, 0x06, 0x00, 0x60, 0x06, 0x00, 0x70, 0x03, 0x00, 0x30, 0x03, - 0x80, 0x18, 0x01, 0xC0, 0x0C, 0x00, 0xE0, 0x00, 0x07, 0xC0, 0xFE, 0x1C, - 0x73, 0x03, 0x30, 0x33, 0x03, 0x38, 0x61, 0xFC, 0x3F, 0xC7, 0x0E, 0x60, - 0x6C, 0x06, 0xC0, 0x6C, 0x0C, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x07, 0xC1, - 0xFE, 0x38, 0x73, 0x03, 0x60, 0x36, 0x03, 0x60, 0x36, 0x07, 0x70, 0xF3, - 0xFE, 0x1E, 0x60, 0x0E, 0x00, 0xCC, 0x1C, 0xE3, 0x87, 0xF0, 0x3C, 0x00, - 0x39, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x39, 0xC0, 0x1C, 0x70, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x07, 0x1C, 0x20, 0x86, 0x30, 0x00, 0x00, 0x01, 0xC0, - 0x3C, 0x0F, 0x81, 0xE0, 0x7C, 0x03, 0x80, 0x0F, 0x00, 0x1F, 0x00, 0x3E, - 0x00, 0x38, 0x00, 0x40, 0x7F, 0xFB, 0xFF, 0x80, 0x00, 0x00, 0x0F, 0xFF, - 0x7F, 0xF0, 0x20, 0x01, 0xC0, 0x07, 0xC0, 0x0F, 0x80, 0x0F, 0x00, 0x1C, - 0x03, 0xE0, 0x78, 0x1F, 0x03, 0xC0, 0x38, 0x00, 0x00, 0x00, 0x0F, 0x87, - 0xF9, 0xC3, 0xB0, 0x3C, 0x06, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x01, 0xC0, - 0x30, 0x0C, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x30, 0x06, 0x00, 0x00, - 0x3F, 0x80, 0x01, 0xFF, 0xE0, 0x0F, 0x01, 0xE0, 0x38, 0x00, 0xE0, 0xE0, - 0x00, 0xC3, 0x87, 0x81, 0xCE, 0x1F, 0xB1, 0x98, 0x71, 0xC3, 0x61, 0x83, - 0x86, 0xC6, 0x06, 0x0F, 0x0C, 0x0C, 0x3E, 0x30, 0x30, 0x6C, 0x60, 0x61, - 0xD8, 0xC1, 0x87, 0x31, 0xC7, 0x1C, 0x61, 0xF7, 0xF0, 0x63, 0xCF, 0x80, - 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x38, 0x00, 0x78, 0x00, 0x7C, 0x00, 0xFC, 0x00, 0xDC, 0x01, 0xCC, - 0x01, 0x8C, 0x03, 0x8C, 0x03, 0x0C, 0x06, 0x0C, 0x0E, 0x0E, 0x0F, 0xFE, - 0x1F, 0xFE, 0x18, 0x06, 0x38, 0x06, 0x30, 0x06, 0x70, 0x06, 0x60, 0x07, - 0x0F, 0xF8, 0x1F, 0xF8, 0x60, 0x38, 0xC0, 0x31, 0x80, 0x63, 0x00, 0xCE, - 0x03, 0x18, 0x0C, 0x3F, 0xF0, 0x7F, 0xF0, 0xC0, 0x73, 0x00, 0x66, 0x00, - 0xCC, 0x01, 0x98, 0x06, 0x70, 0x1C, 0xFF, 0xF1, 0xFF, 0x80, 0x01, 0xF8, - 0x07, 0xFE, 0x0E, 0x0E, 0x1C, 0x03, 0x38, 0x03, 0x30, 0x00, 0x60, 0x00, - 0x60, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x06, - 0xC0, 0x0C, 0xE0, 0x1C, 0x70, 0x78, 0x3F, 0xF0, 0x1F, 0x80, 0x0F, 0xF8, - 0x1F, 0xFC, 0x18, 0x0E, 0x18, 0x07, 0x18, 0x03, 0x18, 0x03, 0x38, 0x03, - 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x70, 0x06, 0x70, 0x06, 0x60, 0x0C, - 0x60, 0x0C, 0x60, 0x18, 0xE0, 0x78, 0xFF, 0xE0, 0xFF, 0x80, 0x0F, 0xFF, - 0x1F, 0xFE, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x38, 0x00, - 0x30, 0x00, 0x3F, 0xFC, 0x3F, 0xF8, 0x70, 0x00, 0x70, 0x00, 0x60, 0x00, - 0x60, 0x00, 0x60, 0x00, 0xE0, 0x00, 0xFF, 0xF8, 0xFF, 0xF8, 0x0F, 0xFE, - 0x3F, 0xFC, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x0E, 0x00, 0x18, - 0x00, 0x3F, 0xF0, 0x7F, 0xE1, 0xC0, 0x03, 0x80, 0x06, 0x00, 0x0C, 0x00, - 0x18, 0x00, 0x70, 0x00, 0xC0, 0x01, 0x80, 0x00, 0x01, 0xF8, 0x07, 0xFE, - 0x0E, 0x0F, 0x18, 0x03, 0x30, 0x03, 0x70, 0x00, 0x60, 0x00, 0x60, 0x00, - 0xC0, 0x7F, 0xC0, 0x7E, 0xC0, 0x02, 0xC0, 0x06, 0xC0, 0x06, 0xE0, 0x0E, - 0x60, 0x1E, 0x78, 0x3C, 0x3F, 0xE4, 0x0F, 0x84, 0x0C, 0x01, 0x8E, 0x00, - 0xC6, 0x00, 0xE3, 0x00, 0x61, 0x80, 0x30, 0xC0, 0x18, 0xE0, 0x0C, 0x60, - 0x0E, 0x3F, 0xFE, 0x1F, 0xFF, 0x1C, 0x01, 0x8E, 0x01, 0xC6, 0x00, 0xE3, - 0x00, 0x61, 0x80, 0x31, 0xC0, 0x18, 0xC0, 0x1C, 0x60, 0x0C, 0x00, 0x0C, - 0x71, 0x86, 0x18, 0x63, 0x8C, 0x30, 0xC3, 0x1C, 0x61, 0x86, 0x18, 0xE3, - 0x00, 0x00, 0x18, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x38, 0x01, - 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x38, 0x01, 0x8C, 0x0C, 0x60, 0x63, - 0x07, 0x1C, 0x70, 0x7F, 0x01, 0xF0, 0x00, 0x0C, 0x03, 0x87, 0x01, 0xC1, - 0x80, 0xE0, 0x60, 0x60, 0x18, 0x70, 0x06, 0x38, 0x03, 0x9C, 0x00, 0xCE, - 0x00, 0x37, 0x80, 0x0F, 0x70, 0x07, 0x8C, 0x01, 0xC3, 0x80, 0x60, 0x60, - 0x18, 0x1C, 0x06, 0x03, 0x03, 0x80, 0xE0, 0xC0, 0x18, 0x30, 0x07, 0x00, - 0x0C, 0x03, 0x80, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x0E, 0x01, 0x80, 0x30, - 0x06, 0x01, 0xC0, 0x38, 0x06, 0x00, 0xC0, 0x18, 0x07, 0x00, 0xFF, 0xFF, - 0xFC, 0x0E, 0x00, 0x71, 0xE0, 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x1E, 0x1E, - 0x01, 0xE1, 0xE0, 0x36, 0x3B, 0x03, 0x63, 0x30, 0x6E, 0x33, 0x0E, 0xC3, - 0x30, 0xCC, 0x33, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x31, 0xC6, 0x33, 0x18, - 0x61, 0xE1, 0x8E, 0x1E, 0x18, 0xC1, 0xC1, 0x8C, 0x1C, 0x38, 0x0C, 0x01, - 0x8F, 0x00, 0xC7, 0x80, 0x63, 0xE0, 0x71, 0xF0, 0x30, 0xD8, 0x18, 0xEE, - 0x0C, 0x63, 0x06, 0x31, 0xC7, 0x18, 0xE3, 0x0C, 0x31, 0x8C, 0x1C, 0xC6, - 0x06, 0x63, 0x03, 0xF1, 0x80, 0xF1, 0xC0, 0x78, 0xC0, 0x3C, 0x60, 0x0E, - 0x00, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0x83, 0xC3, 0x80, 0x63, 0x00, 0x3B, - 0x80, 0x0D, 0x80, 0x06, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0xF8, 0x00, 0x6C, 0x00, 0x36, 0x00, 0x31, 0x80, 0x30, 0xF0, 0x78, 0x3F, - 0xF0, 0x07, 0xE0, 0x00, 0x0F, 0xF8, 0x3F, 0xF8, 0x60, 0x38, 0xC0, 0x31, - 0x80, 0x63, 0x00, 0xCE, 0x03, 0x18, 0x0E, 0x3F, 0xF8, 0x7F, 0xE1, 0xC0, - 0x03, 0x80, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x70, 0x00, 0xC0, 0x01, - 0x80, 0x00, 0x00, 0xFC, 0x01, 0xFF, 0xC0, 0xF0, 0x78, 0x70, 0x06, 0x38, - 0x01, 0xCC, 0x00, 0x36, 0x00, 0x0D, 0x80, 0x03, 0xC0, 0x00, 0xF0, 0x00, - 0x3C, 0x00, 0x1B, 0x00, 0x06, 0xC0, 0x03, 0x38, 0x1D, 0xC6, 0x03, 0xE1, - 0xE0, 0xF0, 0x3F, 0xFE, 0x03, 0xF1, 0xC0, 0x00, 0x20, 0x0F, 0xFC, 0x1F, - 0xFE, 0x18, 0x07, 0x18, 0x03, 0x18, 0x03, 0x18, 0x03, 0x38, 0x06, 0x30, - 0x0C, 0x3F, 0xF8, 0x3F, 0xF8, 0x70, 0x1C, 0x70, 0x0C, 0x60, 0x0C, 0x60, - 0x0C, 0x60, 0x18, 0xE0, 0x18, 0xC0, 0x18, 0xC0, 0x1C, 0x03, 0xF8, 0x1F, - 0xF8, 0x70, 0x38, 0xC0, 0x33, 0x00, 0x66, 0x00, 0x0C, 0x00, 0x1E, 0x00, - 0x1F, 0xC0, 0x0F, 0xF0, 0x01, 0xF0, 0x00, 0xEC, 0x00, 0xD8, 0x01, 0xB0, - 0x06, 0x70, 0x38, 0x7F, 0xE0, 0x3F, 0x00, 0xFF, 0xFF, 0xFF, 0xF0, 0x70, - 0x01, 0xC0, 0x06, 0x00, 0x18, 0x00, 0x60, 0x03, 0x80, 0x0C, 0x00, 0x30, - 0x00, 0xC0, 0x03, 0x00, 0x1C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, 0x18, - 0x00, 0xE0, 0x00, 0x18, 0x03, 0x38, 0x03, 0x30, 0x07, 0x30, 0x06, 0x30, - 0x06, 0x70, 0x06, 0x70, 0x0E, 0x60, 0x0C, 0x60, 0x0C, 0x60, 0x0C, 0xE0, - 0x0C, 0xC0, 0x1C, 0xC0, 0x18, 0xC0, 0x18, 0xC0, 0x38, 0xE0, 0x70, 0x7F, - 0xE0, 0x1F, 0x80, 0xC0, 0x0F, 0xC0, 0x1B, 0x80, 0x73, 0x00, 0xC6, 0x03, - 0x0C, 0x06, 0x18, 0x18, 0x30, 0x70, 0x60, 0xC0, 0xE3, 0x81, 0xC6, 0x01, - 0x9C, 0x03, 0x30, 0x06, 0xE0, 0x0D, 0x80, 0x1E, 0x00, 0x3C, 0x00, 0x70, - 0x00, 0xC0, 0x70, 0x1F, 0x01, 0xC0, 0x6C, 0x0F, 0x03, 0xB0, 0x3C, 0x0C, - 0xC1, 0xF0, 0x73, 0x06, 0xC1, 0x8C, 0x3B, 0x06, 0x30, 0xC6, 0x30, 0xC7, - 0x18, 0xC3, 0x18, 0x67, 0x0C, 0xE1, 0x98, 0x33, 0x06, 0xE0, 0xDC, 0x1B, - 0x03, 0x60, 0x6C, 0x07, 0x81, 0xE0, 0x1C, 0x07, 0x80, 0x70, 0x1C, 0x01, - 0x80, 0x70, 0x00, 0x07, 0x00, 0xE0, 0xE0, 0x38, 0x0C, 0x0E, 0x01, 0xC3, - 0x80, 0x18, 0xE0, 0x03, 0x98, 0x00, 0x36, 0x00, 0x07, 0x80, 0x00, 0xF0, - 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x01, 0xDC, 0x00, 0x73, 0x80, 0x1C, 0x30, - 0x03, 0x07, 0x00, 0xC0, 0x60, 0x38, 0x0E, 0x0E, 0x00, 0xC0, 0xE0, 0x06, - 0x60, 0x0C, 0x70, 0x1C, 0x70, 0x38, 0x30, 0x70, 0x38, 0x60, 0x18, 0xC0, - 0x1D, 0xC0, 0x1F, 0x80, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x0F, 0xFF, - 0x87, 0xFF, 0x80, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, - 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, - 0xC0, 0x01, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xFF, 0xF8, 0x7F, 0xFC, - 0x00, 0x07, 0xC1, 0xE0, 0x60, 0x18, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x1C, - 0x06, 0x01, 0x80, 0x60, 0x18, 0x0E, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x06, - 0x01, 0x80, 0x60, 0x1E, 0x07, 0x80, 0x93, 0x6C, 0x92, 0x49, 0x24, 0xDB, - 0x24, 0x07, 0x81, 0xE0, 0x18, 0x06, 0x01, 0x80, 0xC0, 0x30, 0x0C, 0x03, - 0x01, 0xC0, 0x60, 0x18, 0x06, 0x01, 0x80, 0xE0, 0x30, 0x0C, 0x03, 0x00, - 0xC0, 0x60, 0x18, 0x1E, 0x0F, 0x80, 0x03, 0x01, 0xC0, 0xD8, 0x36, 0x19, - 0x84, 0x63, 0x19, 0x83, 0x60, 0xC0, 0xFF, 0xFC, 0xE6, 0x23, 0x07, 0xC3, - 0xFC, 0xE3, 0x98, 0x30, 0x06, 0x01, 0x87, 0xF3, 0xC6, 0xC0, 0xD8, 0x3B, - 0x0E, 0x7F, 0x77, 0xCC, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x30, 0x01, 0x80, - 0x0C, 0xF0, 0x7F, 0xC3, 0x87, 0x38, 0x19, 0x80, 0xCC, 0x06, 0x60, 0x32, - 0x03, 0xB0, 0x19, 0xC1, 0xCE, 0x1C, 0x7F, 0xC3, 0x7C, 0x00, 0x0F, 0x83, - 0xF8, 0xE3, 0xB8, 0x36, 0x07, 0xC0, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x1B, - 0x86, 0x3F, 0xC3, 0xE0, 0x00, 0x0C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, - 0x18, 0x3E, 0x61, 0xFF, 0x0E, 0x3C, 0x70, 0x71, 0x80, 0xCE, 0x07, 0x30, - 0x18, 0xC0, 0x63, 0x01, 0x8C, 0x0E, 0x38, 0x78, 0x7F, 0xC0, 0xFB, 0x00, - 0x07, 0xC1, 0xFE, 0x38, 0x77, 0x03, 0x60, 0x37, 0xFF, 0xFF, 0xFC, 0x00, - 0xC0, 0x0C, 0x06, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x07, 0x0F, 0x1C, 0x18, - 0x18, 0x7E, 0x7E, 0x30, 0x30, 0x30, 0x30, 0x60, 0x60, 0x60, 0x60, 0x60, - 0xC0, 0xC0, 0x03, 0xCC, 0x3F, 0xA1, 0xC7, 0x8E, 0x0E, 0x30, 0x38, 0xC0, - 0xC6, 0x03, 0x18, 0x0C, 0x60, 0x71, 0x81, 0xC7, 0x0E, 0x0F, 0xF8, 0x1E, - 0x60, 0x03, 0x80, 0x0C, 0x30, 0x70, 0x7F, 0x80, 0xF8, 0x00, 0x0C, 0x00, - 0xC0, 0x0C, 0x01, 0x80, 0x18, 0x01, 0x9E, 0x1F, 0xF1, 0xC7, 0x38, 0x33, - 0x03, 0x30, 0x33, 0x07, 0x30, 0x66, 0x06, 0x60, 0x66, 0x06, 0x60, 0xC6, - 0x0C, 0x18, 0xC0, 0x00, 0x18, 0xC6, 0x33, 0x18, 0xC6, 0x31, 0x98, 0xC6, - 0x00, 0x01, 0x80, 0xC0, 0x00, 0x00, 0x00, 0x18, 0x1C, 0x0C, 0x06, 0x03, - 0x01, 0x81, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x18, 0x0C, 0x06, 0x03, 0x03, - 0x87, 0x83, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x30, 0x01, 0x80, 0x0C, - 0x18, 0x61, 0x83, 0x38, 0x33, 0x81, 0xB8, 0x0F, 0xC0, 0x77, 0x03, 0x18, - 0x30, 0xC1, 0x87, 0x0C, 0x18, 0x60, 0xE3, 0x03, 0x00, 0x18, 0xC6, 0x63, - 0x18, 0xC6, 0x33, 0x18, 0xC6, 0x31, 0x98, 0xC6, 0x00, 0x1B, 0xE3, 0xC3, - 0xFD, 0xFC, 0xF1, 0xE1, 0x9C, 0x18, 0x33, 0x03, 0x06, 0x60, 0xC0, 0xCC, - 0x18, 0x3B, 0x83, 0x06, 0x60, 0x60, 0xCC, 0x0C, 0x19, 0x83, 0x03, 0x30, - 0x60, 0xE6, 0x0C, 0x18, 0x1B, 0xE1, 0xFF, 0x3C, 0x73, 0x83, 0x30, 0x33, - 0x03, 0x30, 0x77, 0x06, 0x60, 0x66, 0x06, 0x60, 0x66, 0x0C, 0x60, 0xC0, - 0x07, 0xC1, 0xFE, 0x38, 0x77, 0x03, 0x60, 0x3E, 0x03, 0xC0, 0x3C, 0x06, - 0xC0, 0x6C, 0x0E, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x0C, 0xF0, 0x3F, 0xE0, - 0xE1, 0xC7, 0x03, 0x1C, 0x0C, 0x60, 0x31, 0x80, 0xCE, 0x07, 0x38, 0x18, - 0xE0, 0xE3, 0xC7, 0x0F, 0xF8, 0x77, 0xC1, 0x80, 0x06, 0x00, 0x18, 0x00, - 0x60, 0x03, 0x80, 0x00, 0x0F, 0x98, 0xFF, 0xCE, 0x3C, 0xE0, 0xE6, 0x03, - 0x70, 0x1B, 0x01, 0x98, 0x0C, 0xC0, 0x66, 0x07, 0x38, 0x78, 0xFF, 0x83, - 0xCC, 0x00, 0x60, 0x07, 0x00, 0x38, 0x01, 0x80, 0x0C, 0x00, 0x1B, 0x8F, - 0xCF, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xE0, 0x60, 0x30, 0x18, 0x0C, 0x06, - 0x00, 0x0F, 0xC1, 0xFF, 0x30, 0x76, 0x03, 0x60, 0x07, 0x80, 0x3F, 0x80, - 0x7E, 0x00, 0x6C, 0x06, 0xE0, 0xCF, 0xF8, 0x3E, 0x00, 0x18, 0x30, 0x67, - 0xEF, 0xC6, 0x0C, 0x30, 0x60, 0xC1, 0x83, 0x0C, 0x18, 0x3C, 0x38, 0x30, - 0x33, 0x03, 0x30, 0x37, 0x06, 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, 0xC0, - 0xEC, 0x0C, 0xC3, 0xCF, 0xFC, 0x7C, 0xC0, 0xC0, 0x78, 0x1B, 0x03, 0x60, - 0xC6, 0x18, 0xC6, 0x19, 0xC3, 0x30, 0x6C, 0x0D, 0x81, 0xE0, 0x3C, 0x03, - 0x00, 0xC1, 0xC3, 0xE1, 0xE1, 0xB0, 0xF0, 0xD8, 0x78, 0xCC, 0x6C, 0x66, - 0x36, 0x63, 0x33, 0x30, 0x99, 0xB0, 0x58, 0xD8, 0x2C, 0x78, 0x1C, 0x3C, - 0x0E, 0x1C, 0x06, 0x0E, 0x00, 0x0C, 0x1C, 0x30, 0xE0, 0xE3, 0x01, 0x98, - 0x07, 0xC0, 0x0E, 0x00, 0x30, 0x01, 0xE0, 0x0F, 0x80, 0x73, 0x01, 0x8C, - 0x0C, 0x38, 0x60, 0x60, 0x18, 0x0C, 0x60, 0x61, 0x83, 0x86, 0x0C, 0x1C, - 0x60, 0x31, 0x80, 0xCC, 0x03, 0x30, 0x0D, 0x80, 0x36, 0x00, 0xF0, 0x03, - 0x80, 0x06, 0x00, 0x30, 0x00, 0xC0, 0x06, 0x00, 0xF0, 0x03, 0x80, 0x00, - 0x1F, 0xF1, 0xFF, 0x00, 0x70, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, - 0x18, 0x03, 0x00, 0x60, 0x0F, 0xFC, 0xFF, 0xC0, 0x07, 0x0E, 0x18, 0x18, - 0x18, 0x18, 0x30, 0x30, 0x30, 0x30, 0x60, 0xE0, 0xE0, 0x60, 0x60, 0x60, - 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xF0, 0x60, 0x0C, 0x30, 0x82, 0x08, 0x61, - 0x84, 0x10, 0x43, 0x0C, 0x20, 0x86, 0x18, 0x41, 0x04, 0x30, 0xC2, 0x00, - 0x00, 0x06, 0x07, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, - 0x01, 0xC0, 0xE0, 0x60, 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, 0x01, - 0x83, 0x83, 0x80, 0x38, 0x0F, 0x82, 0x38, 0x83, 0xE0, 0x38}; - -const GFXglyph FreeSansOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 7, 0, 1}, // 0x20 ' ' - {0, 6, 18, 7, 3, -17}, // 0x21 '!' - {14, 6, 6, 9, 4, -16}, // 0x22 '"' - {19, 15, 18, 13, 1, -17}, // 0x23 '#' - {53, 13, 21, 13, 2, -17}, // 0x24 '$' - {88, 19, 17, 21, 3, -16}, // 0x25 '%' - {129, 13, 17, 16, 2, -16}, // 0x26 '&' - {157, 2, 6, 5, 4, -16}, // 0x27 ''' - {159, 8, 23, 8, 3, -17}, // 0x28 '(' - {182, 8, 23, 8, 0, -16}, // 0x29 ')' - {205, 8, 8, 9, 4, -17}, // 0x2A '*' - {213, 12, 11, 14, 2, -10}, // 0x2B '+' - {230, 4, 6, 7, 1, -1}, // 0x2C ',' - {233, 6, 2, 8, 2, -7}, // 0x2D '-' - {235, 3, 2, 7, 2, -1}, // 0x2E '.' - {236, 10, 18, 7, 0, -17}, // 0x2F '/' - {259, 12, 17, 13, 2, -16}, // 0x30 '0' - {285, 7, 17, 13, 5, -16}, // 0x31 '1' - {300, 14, 17, 13, 1, -16}, // 0x32 '2' - {330, 12, 17, 13, 2, -16}, // 0x33 '3' - {356, 12, 17, 13, 2, -16}, // 0x34 '4' - {382, 13, 17, 13, 2, -16}, // 0x35 '5' - {410, 12, 17, 13, 2, -16}, // 0x36 '6' - {436, 13, 17, 13, 3, -16}, // 0x37 '7' - {464, 12, 17, 13, 2, -16}, // 0x38 '8' - {490, 12, 17, 13, 2, -16}, // 0x39 '9' - {516, 5, 12, 7, 3, -11}, // 0x3A ':' - {524, 6, 16, 7, 2, -11}, // 0x3B ';' - {536, 13, 12, 14, 2, -11}, // 0x3C '<' - {556, 13, 6, 14, 2, -8}, // 0x3D '=' - {566, 13, 12, 14, 1, -10}, // 0x3E '>' - {586, 11, 18, 13, 4, -17}, // 0x3F '?' - {611, 23, 21, 24, 2, -17}, // 0x40 '@' - {672, 16, 18, 16, 0, -17}, // 0x41 'A' - {708, 15, 18, 16, 2, -17}, // 0x42 'B' - {742, 16, 18, 17, 2, -17}, // 0x43 'C' - {778, 16, 18, 17, 2, -17}, // 0x44 'D' - {814, 16, 18, 16, 2, -17}, // 0x45 'E' - {850, 15, 18, 14, 2, -17}, // 0x46 'F' - {884, 16, 18, 19, 3, -17}, // 0x47 'G' - {920, 17, 18, 17, 2, -17}, // 0x48 'H' - {959, 6, 18, 7, 2, -17}, // 0x49 'I' - {973, 13, 18, 12, 1, -17}, // 0x4A 'J' - {1003, 18, 18, 16, 2, -17}, // 0x4B 'K' - {1044, 11, 18, 13, 2, -17}, // 0x4C 'L' - {1069, 20, 18, 20, 2, -17}, // 0x4D 'M' - {1114, 17, 18, 18, 2, -17}, // 0x4E 'N' - {1153, 17, 18, 18, 2, -17}, // 0x4F 'O' - {1192, 15, 18, 15, 2, -17}, // 0x50 'P' - {1226, 18, 19, 19, 2, -17}, // 0x51 'Q' - {1269, 16, 18, 17, 2, -17}, // 0x52 'R' - {1305, 15, 18, 16, 2, -17}, // 0x53 'S' - {1339, 14, 18, 15, 4, -17}, // 0x54 'T' - {1371, 16, 18, 17, 3, -17}, // 0x55 'U' - {1407, 15, 18, 15, 4, -17}, // 0x56 'V' - {1441, 22, 18, 22, 4, -17}, // 0x57 'W' - {1491, 19, 18, 16, 0, -17}, // 0x58 'X' - {1534, 16, 18, 16, 4, -17}, // 0x59 'Y' - {1570, 17, 18, 15, 1, -17}, // 0x5A 'Z' - {1609, 10, 23, 7, 0, -17}, // 0x5B '[' - {1638, 3, 18, 7, 4, -17}, // 0x5C '\' - {1645, 10, 23, 7, -1, -16}, // 0x5D ']' - {1674, 10, 9, 11, 2, -16}, // 0x5E '^' - {1686, 14, 1, 13, -1, 4}, // 0x5F '_' - {1688, 4, 4, 8, 4, -17}, // 0x60 '`' - {1690, 11, 13, 13, 2, -12}, // 0x61 'a' - {1708, 13, 18, 13, 1, -17}, // 0x62 'b' - {1738, 11, 13, 12, 2, -12}, // 0x63 'c' - {1756, 14, 18, 13, 2, -17}, // 0x64 'd' - {1788, 12, 13, 13, 2, -12}, // 0x65 'e' - {1808, 8, 18, 6, 2, -17}, // 0x66 'f' - {1826, 14, 18, 13, 1, -12}, // 0x67 'g' - {1858, 12, 18, 13, 1, -17}, // 0x68 'h' - {1885, 5, 18, 5, 2, -17}, // 0x69 'i' - {1897, 9, 23, 6, -1, -17}, // 0x6A 'j' - {1923, 13, 18, 12, 1, -17}, // 0x6B 'k' - {1953, 5, 18, 5, 2, -17}, // 0x6C 'l' - {1965, 19, 13, 20, 1, -12}, // 0x6D 'm' - {1996, 12, 13, 13, 1, -12}, // 0x6E 'n' - {2016, 12, 13, 13, 2, -12}, // 0x6F 'o' - {2036, 14, 18, 14, 0, -12}, // 0x70 'p' - {2068, 13, 18, 13, 2, -12}, // 0x71 'q' - {2098, 9, 13, 8, 1, -12}, // 0x72 'r' - {2113, 12, 13, 12, 1, -12}, // 0x73 's' - {2133, 7, 16, 6, 2, -15}, // 0x74 't' - {2147, 12, 13, 13, 2, -12}, // 0x75 'u' - {2167, 11, 13, 12, 3, -12}, // 0x76 'v' - {2185, 17, 13, 17, 3, -12}, // 0x77 'w' - {2213, 14, 13, 12, 0, -12}, // 0x78 'x' - {2236, 14, 18, 11, 0, -12}, // 0x79 'y' - {2268, 12, 13, 12, 1, -12}, // 0x7A 'z' - {2288, 8, 23, 8, 3, -17}, // 0x7B '{' - {2311, 6, 23, 6, 1, -17}, // 0x7C '|' - {2329, 9, 23, 8, -1, -16}, // 0x7D '}' - {2355, 11, 5, 14, 3, -10}}; // 0x7E '~' - -const GFXfont FreeSansOblique12pt7b PROGMEM = { - (uint8_t *)FreeSansOblique12pt7bBitmaps, - (GFXglyph *)FreeSansOblique12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 3034 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h deleted file mode 100644 index f85b07f..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h +++ /dev/null @@ -1,520 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique18pt7bBitmaps[] PROGMEM = { - 0x03, 0x83, 0x81, 0xC0, 0xE0, 0x70, 0x78, 0x38, 0x1C, 0x0E, 0x07, 0x07, - 0x83, 0x81, 0xC0, 0xE0, 0x60, 0x30, 0x30, 0x18, 0x0C, 0x04, 0x00, 0x00, - 0x01, 0xC0, 0xE0, 0x70, 0x78, 0x00, 0x71, 0xDC, 0x7F, 0x3F, 0x8E, 0xE3, - 0xB8, 0xEC, 0x33, 0x0C, 0xC3, 0x00, 0x00, 0x38, 0x70, 0x01, 0xC3, 0x80, - 0x0C, 0x18, 0x00, 0xE1, 0xC0, 0x06, 0x0C, 0x00, 0x70, 0xE0, 0x03, 0x87, - 0x03, 0xFF, 0xFF, 0x1F, 0xFF, 0xF0, 0xFF, 0xFF, 0x80, 0x60, 0xC0, 0x07, - 0x0E, 0x00, 0x30, 0x60, 0x03, 0x87, 0x00, 0x18, 0x30, 0x1F, 0xFF, 0xF8, - 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x07, 0x0E, 0x00, 0x30, 0x70, 0x03, 0x87, - 0x00, 0x1C, 0x38, 0x00, 0xC1, 0x80, 0x0E, 0x1C, 0x00, 0x60, 0xC0, 0x00, - 0x00, 0x0C, 0x00, 0x07, 0xF8, 0x01, 0xFF, 0xC0, 0x3F, 0xFE, 0x07, 0x99, - 0xF0, 0xF1, 0x87, 0x0E, 0x18, 0x71, 0xC1, 0x87, 0x1C, 0x38, 0x01, 0xC3, - 0x00, 0x1C, 0x30, 0x01, 0xE3, 0x00, 0x0F, 0xB0, 0x00, 0xFF, 0x80, 0x03, - 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x6F, 0xC0, 0x06, 0x3C, 0x00, 0xC1, 0xCE, - 0x0C, 0x1C, 0xE0, 0xC1, 0xCE, 0x0C, 0x38, 0xF1, 0xC3, 0x8F, 0x98, 0xF0, - 0x7F, 0xFE, 0x03, 0xFF, 0xC0, 0x0F, 0xF0, 0x00, 0x30, 0x00, 0x03, 0x00, - 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x07, 0x03, 0xE0, 0x03, - 0x81, 0xFC, 0x00, 0xC0, 0xFF, 0x00, 0x60, 0x70, 0xE0, 0x38, 0x38, 0x18, - 0x1C, 0x0C, 0x06, 0x0E, 0x03, 0x01, 0x83, 0x00, 0xC0, 0xE1, 0x80, 0x38, - 0x70, 0xE0, 0x0F, 0xF8, 0x70, 0x01, 0xFC, 0x18, 0x00, 0x3E, 0x0C, 0x00, - 0x00, 0x06, 0x07, 0x80, 0x03, 0x87, 0xF8, 0x00, 0xC3, 0xFE, 0x00, 0x61, - 0xE1, 0xC0, 0x30, 0x60, 0x30, 0x1C, 0x30, 0x0C, 0x0E, 0x0C, 0x03, 0x03, - 0x03, 0x01, 0x81, 0x80, 0xE1, 0xE0, 0xC0, 0x1F, 0xF0, 0x70, 0x07, 0xF8, - 0x18, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x07, 0xF8, 0x00, 0xFF, 0xC0, - 0x1E, 0x3C, 0x03, 0xC1, 0xC0, 0x38, 0x1C, 0x03, 0x81, 0xC0, 0x38, 0x38, - 0x03, 0xC7, 0x00, 0x1D, 0xE0, 0x01, 0xFC, 0x00, 0x1F, 0x00, 0x07, 0xF0, - 0x01, 0xF7, 0x87, 0x3C, 0x3C, 0xE7, 0x81, 0xCE, 0x70, 0x1F, 0xCE, 0x00, - 0xFC, 0xE0, 0x07, 0x8E, 0x00, 0x78, 0xF0, 0x1F, 0x8F, 0x87, 0xFC, 0x7F, - 0xF9, 0xC3, 0xFE, 0x1E, 0x1F, 0x80, 0xE0, 0x77, 0xFE, 0xEE, 0xCC, 0xC0, - 0x00, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x80, 0x30, 0x06, 0x00, 0xE0, - 0x0C, 0x01, 0xC0, 0x18, 0x03, 0x80, 0x38, 0x07, 0x00, 0x70, 0x07, 0x00, - 0x70, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, - 0xE0, 0x0E, 0x00, 0xE0, 0x06, 0x00, 0x70, 0x07, 0x00, 0x30, 0x03, 0x00, - 0x18, 0x00, 0x01, 0x80, 0x0C, 0x00, 0xC0, 0x0E, 0x00, 0xE0, 0x06, 0x00, - 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, - 0x70, 0x07, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x03, - 0x80, 0x38, 0x03, 0x00, 0x70, 0x06, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x00, 0x06, 0x01, 0x84, 0x47, 0xF7, 0xFF, 0xCF, 0xC1, - 0xE0, 0xD8, 0x67, 0x18, 0xC0, 0x00, 0x70, 0x00, 0x1C, 0x00, 0x0F, 0x00, - 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0x70, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0xE0, - 0x00, 0x38, 0x00, 0x0E, 0x00, 0x3B, 0xDC, 0x21, 0x18, 0x98, 0xFF, 0xFF, - 0xFF, 0xE0, 0x7F, 0xFE, 0x00, 0x06, 0x00, 0x18, 0x00, 0x30, 0x00, 0xC0, - 0x01, 0x80, 0x06, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x60, 0x01, 0x80, 0x03, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x00, 0x06, 0x00, - 0x18, 0x00, 0x20, 0x00, 0xC0, 0x03, 0x00, 0x06, 0x00, 0x18, 0x00, 0x30, - 0x00, 0xC0, 0x01, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x7F, 0xC0, 0x7F, 0xF8, - 0x3E, 0x1E, 0x0F, 0x03, 0xC7, 0x80, 0x71, 0xC0, 0x1C, 0xE0, 0x07, 0x38, - 0x01, 0xDE, 0x00, 0x77, 0x00, 0x1D, 0xC0, 0x0F, 0x70, 0x03, 0xFC, 0x00, - 0xEE, 0x00, 0x3B, 0x80, 0x0E, 0xE0, 0x07, 0xB8, 0x01, 0xCE, 0x00, 0xF3, - 0x80, 0x38, 0xF0, 0x1E, 0x1E, 0x1F, 0x07, 0xFF, 0x80, 0xFF, 0xC0, 0x0F, - 0x80, 0x00, 0x00, 0xC0, 0x70, 0x3C, 0x3E, 0xFF, 0xBF, 0xEF, 0xF8, 0x1E, - 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x0F, 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x07, - 0x81, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xC0, 0xE0, 0x38, 0x00, 0x00, 0x3F, - 0x00, 0x0F, 0xFC, 0x03, 0xFF, 0xE0, 0x7C, 0x1E, 0x07, 0x80, 0xF0, 0xF0, - 0x07, 0x0E, 0x00, 0x70, 0xE0, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, - 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x03, 0xF0, 0x00, 0xFC, 0x00, - 0x1F, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0x80, 0x00, - 0x70, 0x00, 0x07, 0x00, 0x00, 0xFF, 0xFF, 0x8F, 0xFF, 0xF0, 0xFF, 0xFF, - 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x03, 0xC1, 0xF0, 0x70, - 0x0E, 0x1C, 0x01, 0xC3, 0x80, 0x38, 0xE0, 0x07, 0x00, 0x01, 0xC0, 0x00, - 0xF0, 0x03, 0xFC, 0x00, 0x7F, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0x00, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x9C, 0x00, 0x73, 0x80, 0x1E, 0x70, 0x03, - 0x8F, 0x00, 0xF1, 0xF0, 0x7C, 0x1F, 0xFF, 0x01, 0xFF, 0xC0, 0x0F, 0xC0, - 0x00, 0x00, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x1F, - 0x80, 0x0F, 0xE0, 0x07, 0xF0, 0x03, 0xDC, 0x01, 0xE7, 0x00, 0x71, 0xC0, - 0x38, 0xF0, 0x1C, 0x38, 0x0E, 0x0E, 0x07, 0x03, 0x83, 0x80, 0xE1, 0xC0, - 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x70, 0x00, 0x38, - 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x01, 0xFF, - 0xF0, 0x3F, 0xFF, 0x03, 0xFF, 0xE0, 0x78, 0x00, 0x07, 0x00, 0x00, 0x70, - 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0xFC, 0x01, 0xFF, 0xF0, 0x1F, - 0xFF, 0x83, 0xE0, 0x78, 0x3C, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, - 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x8E, 0x00, 0x78, - 0xE0, 0x0F, 0x0F, 0x81, 0xE0, 0x7F, 0xFC, 0x03, 0xFF, 0x80, 0x0F, 0xE0, - 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x03, 0xE1, 0xF0, 0xF0, - 0x0E, 0x1C, 0x01, 0xC7, 0x00, 0x01, 0xE0, 0x00, 0x38, 0x00, 0x07, 0x1F, - 0x01, 0xCF, 0xF8, 0x3B, 0xFF, 0x87, 0xE0, 0xF8, 0xF0, 0x0F, 0x3C, 0x00, - 0xE7, 0x80, 0x1C, 0xE0, 0x03, 0x9C, 0x00, 0x73, 0x80, 0x1C, 0x70, 0x03, - 0x8F, 0x00, 0xE0, 0xF0, 0x78, 0x1F, 0xFF, 0x01, 0xFF, 0x80, 0x0F, 0xC0, - 0x00, 0x3F, 0xFF, 0xCF, 0xFF, 0xF7, 0xFF, 0xFC, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, - 0x0E, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x1C, - 0x00, 0x0E, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xF0, 0x00, 0x38, 0x00, - 0x1E, 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x7E, - 0x00, 0x3F, 0xF0, 0x1F, 0xFF, 0x07, 0xC1, 0xF0, 0xE0, 0x0E, 0x38, 0x01, - 0xC7, 0x00, 0x38, 0xE0, 0x0E, 0x1C, 0x01, 0xC3, 0xC0, 0xF0, 0x3F, 0xFC, - 0x03, 0xFE, 0x01, 0xFF, 0xF0, 0x7C, 0x1E, 0x1E, 0x01, 0xE3, 0x80, 0x1C, - 0xE0, 0x03, 0x9C, 0x00, 0x73, 0x80, 0x0E, 0x70, 0x03, 0x8F, 0x00, 0xF1, - 0xF0, 0x7C, 0x1F, 0xFF, 0x01, 0xFF, 0xC0, 0x0F, 0xC0, 0x00, 0x00, 0x7E, - 0x00, 0x3F, 0xF0, 0x1F, 0xFF, 0x07, 0xC1, 0xE0, 0xE0, 0x1E, 0x38, 0x01, - 0xC7, 0x00, 0x39, 0xC0, 0x07, 0x38, 0x00, 0xE7, 0x00, 0x3C, 0xE0, 0x07, - 0x9E, 0x01, 0xE3, 0xE0, 0xFC, 0x3F, 0xFB, 0x83, 0xFE, 0xF0, 0x3F, 0x1C, - 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x1C, 0x70, 0x07, 0x8E, 0x01, 0xE1, - 0xE0, 0xF8, 0x1F, 0xFE, 0x01, 0xFF, 0x80, 0x0F, 0xC0, 0x00, 0x0E, 0x3C, - 0x78, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, - 0xF1, 0xE3, 0x80, 0x07, 0x0F, 0x0F, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x78, 0x70, 0x10, 0x10, - 0x30, 0x20, 0xC0, 0x00, 0x00, 0x20, 0x00, 0x1C, 0x00, 0x1F, 0x80, 0x1F, - 0xC0, 0x0F, 0xC0, 0x0F, 0xE0, 0x07, 0xE0, 0x03, 0xF0, 0x00, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, - 0x00, 0x0F, 0xC0, 0x00, 0x78, 0x00, 0x01, 0x00, 0x7F, 0xFF, 0xDF, 0xFF, - 0xF7, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFB, - 0xFF, 0xFE, 0xFF, 0xFF, 0x80, 0x10, 0x00, 0x03, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, - 0x00, 0x01, 0xE0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0x7E, 0x00, - 0x7F, 0x00, 0x3F, 0x00, 0x07, 0x00, 0x00, 0x80, 0x00, 0x00, 0x03, 0xF8, - 0x0F, 0xFC, 0x1F, 0xFE, 0x3C, 0x1F, 0x78, 0x07, 0x70, 0x07, 0xE0, 0x07, - 0xE0, 0x07, 0x00, 0x0E, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, - 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, - 0x3C, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x07, - 0xFF, 0xFE, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x0F, 0x80, 0x03, 0xE0, 0x0F, - 0x00, 0x00, 0xF8, 0x0F, 0x00, 0x00, 0x3C, 0x0F, 0x01, 0xF0, 0x0F, 0x0F, - 0x03, 0xFD, 0xC7, 0x8F, 0x03, 0xFE, 0xE1, 0xC7, 0x03, 0xC3, 0x60, 0xE7, - 0x03, 0xC0, 0xF0, 0x77, 0x83, 0xC0, 0x70, 0x3B, 0x83, 0xC0, 0x78, 0x1D, - 0xC1, 0xC0, 0x38, 0x1F, 0xC1, 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x1C, 0x0F, - 0x70, 0x70, 0x0E, 0x07, 0x38, 0x38, 0x0E, 0x07, 0x9C, 0x1C, 0x0F, 0x07, - 0x8E, 0x0F, 0x0F, 0x8F, 0x87, 0x03, 0xFD, 0xFF, 0x83, 0xC1, 0xFC, 0xFF, - 0x80, 0xE0, 0x7C, 0x3F, 0x00, 0x78, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x00, 0x07, 0x80, 0x00, 0x00, 0x01, 0xF8, 0x07, 0x00, 0x00, 0x7F, 0xFF, - 0x80, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x01, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0xFF, - 0x00, 0x01, 0xDE, 0x00, 0x07, 0x9C, 0x00, 0x0E, 0x38, 0x00, 0x3C, 0x70, - 0x00, 0x70, 0xF0, 0x01, 0xC1, 0xE0, 0x07, 0x83, 0xC0, 0x0E, 0x07, 0x80, - 0x38, 0x07, 0x00, 0x70, 0x0E, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFC, 0x0F, - 0xFF, 0xF8, 0x1C, 0x00, 0xF0, 0x70, 0x01, 0xE1, 0xE0, 0x01, 0xC3, 0x80, - 0x03, 0x8F, 0x00, 0x07, 0x1C, 0x00, 0x0E, 0x78, 0x00, 0x1E, 0xE0, 0x00, - 0x3C, 0x07, 0xFF, 0xC0, 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x0E, 0x00, 0xF0, - 0xF0, 0x03, 0x87, 0x00, 0x1C, 0x38, 0x00, 0xE1, 0xC0, 0x07, 0x0E, 0x00, - 0x70, 0xF0, 0x03, 0x87, 0x00, 0x78, 0x3F, 0xFF, 0x81, 0xFF, 0xF8, 0x0F, - 0xFF, 0xF0, 0xE0, 0x03, 0xC7, 0x00, 0x0E, 0x38, 0x00, 0x71, 0xC0, 0x03, - 0x9E, 0x00, 0x1C, 0xE0, 0x00, 0xE7, 0x00, 0x0E, 0x38, 0x00, 0xF1, 0xC0, - 0x0F, 0x1F, 0xFF, 0xF0, 0xFF, 0xFF, 0x07, 0xFF, 0xE0, 0x00, 0x00, 0x1F, - 0x80, 0x03, 0xFF, 0x80, 0x1F, 0xFF, 0x01, 0xF8, 0x3E, 0x07, 0x80, 0x38, - 0x38, 0x00, 0xF1, 0xC0, 0x01, 0xCF, 0x00, 0x07, 0x38, 0x00, 0x01, 0xE0, - 0x00, 0x07, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, - 0x0E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x7B, 0x80, 0x01, 0xCE, - 0x00, 0x0F, 0x3C, 0x00, 0x38, 0x70, 0x01, 0xE1, 0xE0, 0x0F, 0x07, 0xC0, - 0xF8, 0x0F, 0xFF, 0xC0, 0x1F, 0xFC, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xFF, - 0xC0, 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, 0xE0, 0x38, 0x03, 0xE0, 0xF0, 0x03, - 0xC1, 0xC0, 0x03, 0x83, 0x80, 0x03, 0x87, 0x00, 0x07, 0x1E, 0x00, 0x0E, - 0x3C, 0x00, 0x1C, 0x70, 0x00, 0x38, 0xE0, 0x00, 0x71, 0xC0, 0x00, 0xE7, - 0x80, 0x03, 0x8F, 0x00, 0x07, 0x1C, 0x00, 0x0E, 0x38, 0x00, 0x3C, 0x70, - 0x00, 0x71, 0xE0, 0x01, 0xE3, 0x80, 0x03, 0x87, 0x00, 0x0E, 0x0E, 0x00, - 0x3C, 0x1C, 0x01, 0xF0, 0x7F, 0xFF, 0xC0, 0xFF, 0xFE, 0x01, 0xFF, 0xF0, - 0x00, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x38, 0x00, - 0x00, 0xF0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x70, 0x00, 0x00, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x70, 0x00, 0x01, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, - 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF, - 0xC1, 0xFF, 0xFF, 0x80, 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x7F, 0xFF, - 0xC1, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, - 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xC0, 0x00, 0x07, 0xFF, - 0xF0, 0x1F, 0xFF, 0xC0, 0xFF, 0xFF, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, - 0x38, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x70, - 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xE0, 0x00, - 0x03, 0x80, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0xF8, 0x01, 0xFF, - 0xFC, 0x03, 0xE0, 0x3E, 0x07, 0x80, 0x0E, 0x0F, 0x00, 0x0F, 0x1E, 0x00, - 0x07, 0x1C, 0x00, 0x07, 0x38, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, - 0x00, 0x70, 0x00, 0x00, 0xF0, 0x07, 0xFE, 0xE0, 0x07, 0xFE, 0xE0, 0x07, - 0xFE, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, 0x00, - 0x1C, 0xF0, 0x00, 0x3C, 0x70, 0x00, 0x7C, 0x78, 0x00, 0xFC, 0x3E, 0x03, - 0xDC, 0x1F, 0xFF, 0x98, 0x0F, 0xFE, 0x18, 0x03, 0xF8, 0x18, 0x07, 0x00, - 0x07, 0x83, 0x80, 0x03, 0xC1, 0xC0, 0x01, 0xC0, 0xE0, 0x00, 0xE0, 0xF0, - 0x00, 0x70, 0x70, 0x00, 0x78, 0x38, 0x00, 0x3C, 0x1C, 0x00, 0x1C, 0x1E, - 0x00, 0x0E, 0x0F, 0x00, 0x07, 0x07, 0x00, 0x07, 0x83, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE0, 0xE0, 0x00, 0x70, 0x70, 0x00, 0x78, - 0x38, 0x00, 0x38, 0x1C, 0x00, 0x1C, 0x1E, 0x00, 0x0E, 0x0E, 0x00, 0x0F, - 0x07, 0x00, 0x07, 0x83, 0x80, 0x03, 0x81, 0xC0, 0x01, 0xC1, 0xE0, 0x00, - 0xE0, 0xE0, 0x00, 0xF0, 0x70, 0x00, 0x78, 0x00, 0x07, 0x0F, 0x0F, 0x0E, - 0x0E, 0x0E, 0x0E, 0x1E, 0x1C, 0x1C, 0x1C, 0x1C, 0x3C, 0x3C, 0x38, 0x38, - 0x38, 0x38, 0x78, 0x70, 0x70, 0x70, 0x70, 0xF0, 0xF0, 0xE0, 0x00, 0x01, - 0xC0, 0x00, 0x70, 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, - 0x00, 0x38, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0x70, 0x00, - 0x1C, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x1E, - 0x1C, 0x07, 0x0E, 0x01, 0xC3, 0x80, 0x70, 0xE0, 0x3C, 0x38, 0x0E, 0x0F, - 0x0F, 0x81, 0xFF, 0xC0, 0x7F, 0xE0, 0x07, 0xE0, 0x00, 0x07, 0x00, 0x07, - 0x83, 0x80, 0x07, 0x81, 0xC0, 0x0F, 0x00, 0xE0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0x70, 0x0F, 0x00, 0x38, 0x0F, 0x00, 0x1C, 0x1F, 0x00, 0x1E, 0x1E, - 0x00, 0x0F, 0x1E, 0x00, 0x07, 0x1E, 0x00, 0x03, 0x9F, 0x00, 0x01, 0xDF, - 0xC0, 0x01, 0xFC, 0xE0, 0x00, 0xFC, 0x78, 0x00, 0x7C, 0x1C, 0x00, 0x3C, - 0x0F, 0x00, 0x1C, 0x07, 0x80, 0x1E, 0x01, 0xE0, 0x0E, 0x00, 0xF0, 0x07, - 0x00, 0x38, 0x03, 0x80, 0x1E, 0x01, 0xC0, 0x07, 0x01, 0xE0, 0x03, 0xC0, - 0xE0, 0x00, 0xE0, 0x70, 0x00, 0x78, 0x00, 0x07, 0x00, 0x07, 0x00, 0x07, - 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, - 0x00, 0x70, 0x00, 0x70, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, - 0xC0, 0x00, 0xF8, 0x3E, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x7E, 0x0F, 0x80, - 0x03, 0xF0, 0xFC, 0x00, 0x3F, 0x07, 0x70, 0x01, 0xF8, 0x3B, 0x80, 0x1D, - 0xC1, 0xDC, 0x00, 0xEE, 0x0E, 0xE0, 0x0E, 0xE0, 0xE7, 0x00, 0x77, 0x07, - 0x38, 0x07, 0x38, 0x39, 0xC0, 0x31, 0xC1, 0xCE, 0x03, 0x9E, 0x1E, 0x38, - 0x38, 0xE0, 0xE1, 0xC1, 0xC7, 0x07, 0x0E, 0x1C, 0x38, 0x38, 0x70, 0xE1, - 0xC1, 0xC3, 0x8E, 0x1E, 0x1E, 0x1C, 0x70, 0xE0, 0xE0, 0xE7, 0x07, 0x07, - 0x07, 0x38, 0x38, 0x38, 0x1F, 0x81, 0xC1, 0xC0, 0xF8, 0x1E, 0x1C, 0x07, - 0xC0, 0xE0, 0xE0, 0x3C, 0x07, 0x07, 0x01, 0xE0, 0x38, 0x00, 0x07, 0x80, - 0x03, 0x83, 0xE0, 0x01, 0xC1, 0xF0, 0x00, 0xE0, 0xF8, 0x00, 0xE0, 0xFE, - 0x00, 0x70, 0x7F, 0x00, 0x38, 0x3B, 0xC0, 0x1C, 0x1D, 0xE0, 0x1E, 0x0E, - 0x70, 0x0E, 0x0E, 0x3C, 0x07, 0x07, 0x0E, 0x03, 0x83, 0x87, 0x81, 0xC1, - 0xC3, 0xC1, 0xE1, 0xE0, 0xE0, 0xE0, 0xE0, 0x78, 0x70, 0x70, 0x1C, 0x38, - 0x38, 0x0F, 0x1C, 0x1C, 0x07, 0x9E, 0x1E, 0x01, 0xCE, 0x0E, 0x00, 0xF7, - 0x07, 0x00, 0x3B, 0x83, 0x80, 0x1F, 0xC1, 0xC0, 0x07, 0xC1, 0xC0, 0x03, - 0xE0, 0xE0, 0x01, 0xF0, 0x70, 0x00, 0x78, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x03, 0xE0, 0x7C, 0x07, 0x80, 0x1E, 0x0F, - 0x00, 0x0E, 0x1C, 0x00, 0x0F, 0x3C, 0x00, 0x07, 0x38, 0x00, 0x07, 0x70, - 0x00, 0x07, 0x70, 0x00, 0x07, 0x70, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xE0, - 0x00, 0x0F, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, - 0x00, 0x1C, 0xE0, 0x00, 0x1C, 0xF0, 0x00, 0x38, 0x70, 0x00, 0x78, 0x78, - 0x00, 0xF0, 0x3E, 0x07, 0xE0, 0x1F, 0xFF, 0xC0, 0x0F, 0xFF, 0x00, 0x03, - 0xF8, 0x00, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, 0x7F, 0xFF, 0x81, 0xC0, - 0x1F, 0x0F, 0x00, 0x3C, 0x38, 0x00, 0x70, 0xE0, 0x01, 0xC3, 0x80, 0x07, - 0x1E, 0x00, 0x1C, 0x78, 0x00, 0xE1, 0xC0, 0x07, 0x87, 0x00, 0x3C, 0x1F, - 0xFF, 0xE0, 0xFF, 0xFF, 0x03, 0xFF, 0xF0, 0x0E, 0x00, 0x00, 0x38, 0x00, - 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, 0x01, - 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, - 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, - 0x7C, 0x07, 0xC0, 0x78, 0x00, 0xF0, 0x78, 0x00, 0x38, 0x78, 0x00, 0x1E, - 0x78, 0x00, 0x07, 0x38, 0x00, 0x03, 0xBC, 0x00, 0x01, 0xDC, 0x00, 0x00, - 0xEE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x1D, 0xC0, 0x00, 0x0E, 0xE0, 0x00, 0x0F, 0x70, 0x00, 0x07, 0x38, 0x00, - 0x87, 0x9E, 0x00, 0xE7, 0x87, 0x00, 0x7F, 0x83, 0xC0, 0x1F, 0x80, 0xF8, - 0x1F, 0x80, 0x3F, 0xFF, 0xE0, 0x0F, 0xFF, 0x78, 0x01, 0xFE, 0x1E, 0x00, - 0x00, 0x07, 0x00, 0x00, 0x02, 0x00, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0xF8, - 0x1F, 0xFF, 0xF0, 0x38, 0x00, 0xF0, 0xF0, 0x00, 0xE1, 0xC0, 0x01, 0xC3, - 0x80, 0x03, 0x87, 0x00, 0x07, 0x1E, 0x00, 0x0E, 0x3C, 0x00, 0x38, 0x70, - 0x00, 0xF0, 0xE0, 0x03, 0xC1, 0xFF, 0xFE, 0x07, 0xFF, 0xF8, 0x0F, 0xFF, - 0xF8, 0x1C, 0x00, 0x78, 0x38, 0x00, 0x70, 0x70, 0x00, 0xE1, 0xE0, 0x01, - 0xC3, 0x80, 0x03, 0x87, 0x00, 0x06, 0x0E, 0x00, 0x1C, 0x1C, 0x00, 0x38, - 0x78, 0x00, 0x70, 0xE0, 0x00, 0xE1, 0xC0, 0x01, 0xE0, 0x00, 0x3F, 0xC0, - 0x07, 0xFF, 0xC0, 0x3F, 0xFF, 0x81, 0xF0, 0x1E, 0x0F, 0x00, 0x3C, 0x38, - 0x00, 0x71, 0xC0, 0x01, 0xC7, 0x00, 0x07, 0x1C, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xFE, 0x00, 0x07, 0xFF, 0x00, - 0x03, 0xFE, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xF3, 0x80, 0x01, 0xCE, 0x00, - 0x07, 0x38, 0x00, 0x18, 0xE0, 0x00, 0xE3, 0xC0, 0x07, 0x07, 0x80, 0x7C, - 0x1F, 0xFF, 0xE0, 0x3F, 0xFE, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1E, 0x00, - 0x01, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0xC0, - 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x78, - 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xF0, 0x00, 0x0F, - 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xE0, 0x00, 0x0E, 0x00, 0x0F, 0x0E, 0x00, 0x0F, 0x0E, 0x00, 0x0E, 0x0E, - 0x00, 0x0E, 0x1E, 0x00, 0x0E, 0x1C, 0x00, 0x1E, 0x1C, 0x00, 0x1C, 0x1C, - 0x00, 0x1C, 0x3C, 0x00, 0x1C, 0x3C, 0x00, 0x1C, 0x38, 0x00, 0x3C, 0x38, - 0x00, 0x38, 0x38, 0x00, 0x38, 0x78, 0x00, 0x38, 0x70, 0x00, 0x78, 0x70, - 0x00, 0x78, 0x70, 0x00, 0x70, 0xF0, 0x00, 0x70, 0xF0, 0x00, 0x70, 0xE0, - 0x00, 0xF0, 0xE0, 0x00, 0xE0, 0xF0, 0x03, 0xE0, 0x78, 0x0F, 0xC0, 0x7F, - 0xFF, 0x80, 0x1F, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0xE0, 0x00, 0x3F, 0x80, - 0x03, 0xFC, 0x00, 0x1D, 0xE0, 0x01, 0xE7, 0x00, 0x0E, 0x38, 0x00, 0xE1, - 0xC0, 0x07, 0x0E, 0x00, 0x70, 0x70, 0x07, 0x83, 0xC0, 0x38, 0x1E, 0x03, - 0xC0, 0xF0, 0x1C, 0x03, 0x81, 0xE0, 0x1C, 0x0E, 0x00, 0xE0, 0xF0, 0x07, - 0x07, 0x00, 0x3C, 0x70, 0x01, 0xE3, 0x80, 0x0F, 0x38, 0x00, 0x39, 0xC0, - 0x01, 0xDC, 0x00, 0x0E, 0xE0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0xE0, 0x07, 0x80, - 0x1E, 0xE0, 0x07, 0xC0, 0x1E, 0xE0, 0x0F, 0xC0, 0x1C, 0xE0, 0x0F, 0xC0, - 0x3C, 0xE0, 0x1F, 0xC0, 0x38, 0xE0, 0x1D, 0xC0, 0x78, 0xE0, 0x3D, 0xC0, - 0x70, 0xE0, 0x39, 0xC0, 0xF0, 0xE0, 0x79, 0xC0, 0xE0, 0xE0, 0x71, 0xC0, - 0xE0, 0xE0, 0xF1, 0xC1, 0xC0, 0xE0, 0xE1, 0xC1, 0xC0, 0xE1, 0xE1, 0xC3, - 0xC0, 0x61, 0xC1, 0xC3, 0x80, 0x63, 0xC1, 0xC7, 0x80, 0x63, 0x80, 0xE7, - 0x00, 0x67, 0x80, 0xEF, 0x00, 0x67, 0x00, 0xEE, 0x00, 0x7F, 0x00, 0xEE, - 0x00, 0x7E, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0xFC, 0x00, 0x7C, 0x00, 0xF8, - 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x78, 0x00, 0xF8, 0x00, 0x78, 0x00, 0xF0, - 0x00, 0x03, 0xC0, 0x03, 0xC0, 0x78, 0x00, 0xF0, 0x07, 0x80, 0x1C, 0x00, - 0xF0, 0x07, 0x80, 0x0F, 0x01, 0xE0, 0x01, 0xE0, 0x78, 0x00, 0x1C, 0x1E, - 0x00, 0x03, 0xC7, 0x80, 0x00, 0x39, 0xE0, 0x00, 0x07, 0xB8, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x0F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xF3, 0x80, 0x00, 0x3C, - 0x78, 0x00, 0x0F, 0x0F, 0x00, 0x03, 0xC0, 0xF0, 0x00, 0x70, 0x1E, 0x00, - 0x1E, 0x01, 0xE0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x03, 0xC0, 0x78, 0x00, - 0x78, 0x1E, 0x00, 0x0F, 0x00, 0xF0, 0x00, 0x3C, 0xE0, 0x00, 0x71, 0xE0, - 0x01, 0xE3, 0xC0, 0x07, 0x83, 0xC0, 0x1E, 0x07, 0x80, 0x78, 0x07, 0x00, - 0xE0, 0x0F, 0x03, 0xC0, 0x1E, 0x0F, 0x00, 0x1C, 0x3C, 0x00, 0x3C, 0xF0, - 0x00, 0x39, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFE, 0x00, 0x00, 0xF8, 0x00, - 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, - 0x1C, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xC0, 0x00, 0x03, - 0x80, 0x00, 0x07, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x00, 0x01, 0xF8, 0x1F, 0xC0, 0xFE, 0x07, - 0x00, 0x38, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x03, 0xC0, - 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, - 0x00, 0x38, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x78, 0x03, 0x80, - 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x70, 0x03, 0xF8, 0x1F, 0xC0, 0xFE, 0x00, - 0xCC, 0xCC, 0xCC, 0x46, 0x66, 0x66, 0x66, 0x66, 0x66, 0x62, 0x33, 0x33, - 0x33, 0x03, 0xF8, 0x1F, 0xC0, 0xFE, 0x00, 0x70, 0x07, 0x00, 0x38, 0x01, - 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xE0, - 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, - 0xC0, 0x1E, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x1E, 0x00, 0xE0, - 0x07, 0x03, 0xF8, 0x1F, 0xC0, 0xFC, 0x00, 0x00, 0xF0, 0x03, 0xC0, 0x1F, - 0x00, 0x7C, 0x03, 0xB8, 0x1C, 0xE0, 0x63, 0x83, 0x8E, 0x1C, 0x38, 0x60, - 0x73, 0x81, 0xCC, 0x07, 0x70, 0x1F, 0x80, 0x70, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0xF1, 0xC3, 0x86, 0x0C, 0x00, 0xFE, 0x01, 0xFF, 0xE0, 0xFF, - 0xFC, 0x3C, 0x0F, 0x1C, 0x01, 0xC0, 0x00, 0x70, 0x00, 0x1C, 0x00, 0x0E, - 0x00, 0x1F, 0x83, 0xFF, 0xE3, 0xFE, 0x39, 0xF0, 0x1E, 0xF0, 0x07, 0x38, - 0x01, 0xCE, 0x00, 0xF3, 0xC0, 0xFC, 0xFF, 0xF7, 0x9F, 0xF1, 0xE1, 0xF0, - 0x38, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0xF0, - 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x71, 0xF0, 0x0E, 0xFF, 0x83, 0xFF, - 0xF8, 0x7F, 0x0F, 0x0F, 0x80, 0xF1, 0xE0, 0x0E, 0x38, 0x01, 0xCF, 0x00, - 0x39, 0xE0, 0x07, 0x38, 0x00, 0xE7, 0x00, 0x38, 0xE0, 0x07, 0x3C, 0x00, - 0xE7, 0x80, 0x38, 0xF8, 0x0F, 0x1F, 0x87, 0xC3, 0xFF, 0xF0, 0xE7, 0xFC, - 0x1C, 0x7E, 0x00, 0x01, 0xF8, 0x07, 0xFC, 0x0F, 0xFE, 0x1E, 0x0F, 0x3C, - 0x07, 0x78, 0x07, 0x70, 0x07, 0x70, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0xE0, - 0x00, 0xE0, 0x00, 0xE0, 0x0E, 0xE0, 0x1C, 0xF0, 0x3C, 0x78, 0x78, 0x7F, - 0xF0, 0x3F, 0xE0, 0x0F, 0x80, 0x00, 0x00, 0x70, 0x00, 0x0F, 0x00, 0x00, - 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x01, 0xE0, 0x1F, - 0x1C, 0x07, 0xFD, 0xC0, 0xFF, 0xDC, 0x1E, 0x0F, 0xC3, 0xC0, 0x7C, 0x38, - 0x07, 0x87, 0x00, 0x38, 0x70, 0x03, 0x8F, 0x00, 0x38, 0xE0, 0x07, 0x8E, - 0x00, 0x70, 0xE0, 0x07, 0x0E, 0x00, 0xF0, 0xE0, 0x0F, 0x0F, 0x01, 0xF0, - 0x78, 0x7E, 0x07, 0xFF, 0xE0, 0x3F, 0xEE, 0x01, 0xF8, 0xE0, 0x01, 0xF8, - 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xC1, 0xF3, 0xC0, 0x79, 0xC0, 0x1D, 0xC0, - 0x0E, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0x1C, 0x00, 0x0E, - 0x00, 0x07, 0x00, 0x73, 0xC0, 0x78, 0xF0, 0x78, 0x7F, 0xF8, 0x1F, 0xF8, - 0x03, 0xF0, 0x00, 0x01, 0xE0, 0x7C, 0x1F, 0x83, 0x80, 0x70, 0x1C, 0x03, - 0x83, 0xFC, 0x7F, 0x8F, 0xF0, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x0F, 0x01, - 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0xE0, 0x1C, 0x00, 0x00, 0xFC, 0x60, 0x7F, 0xCC, 0x1F, 0xFF, 0x87, 0xC3, - 0xF1, 0xE0, 0x3E, 0x38, 0x03, 0x8E, 0x00, 0x71, 0xC0, 0x0E, 0x38, 0x01, - 0xCE, 0x00, 0x79, 0xC0, 0x0E, 0x38, 0x01, 0xC7, 0x00, 0x78, 0xE0, 0x0F, - 0x1E, 0x03, 0xC1, 0xE1, 0xF8, 0x3F, 0xFF, 0x03, 0xFE, 0xE0, 0x1F, 0x1C, - 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, 0x18, 0x38, 0x07, 0x07, 0x83, 0xC0, - 0x7F, 0xF8, 0x0F, 0xFC, 0x00, 0x7E, 0x00, 0x00, 0x07, 0x00, 0x01, 0xC0, - 0x00, 0x70, 0x00, 0x1C, 0x00, 0x0F, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, - 0x38, 0xFC, 0x0E, 0xFF, 0x87, 0xFF, 0xF1, 0xF8, 0x3C, 0x7C, 0x07, 0x1E, - 0x01, 0xC7, 0x00, 0x73, 0xC0, 0x1C, 0xE0, 0x0F, 0x38, 0x03, 0x8E, 0x00, - 0xE3, 0x80, 0x39, 0xE0, 0x0E, 0x70, 0x07, 0x9C, 0x01, 0xC7, 0x00, 0x71, - 0xC0, 0x1C, 0xE0, 0x07, 0x38, 0x03, 0x80, 0x07, 0x07, 0x0F, 0x0E, 0x00, - 0x00, 0x00, 0x1E, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x38, 0x38, 0x38, 0x38, - 0x38, 0x78, 0x70, 0x70, 0x70, 0x70, 0xF0, 0xE0, 0xE0, 0x00, 0x3C, 0x00, - 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, - 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x03, 0x80, 0x1E, 0x00, - 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, - 0x38, 0x00, 0xE0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x0F, 0x00, - 0x38, 0x00, 0xE0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x1C, 0x00, 0x03, - 0x80, 0x00, 0x70, 0x1E, 0x0E, 0x07, 0x83, 0xC1, 0xE0, 0x70, 0x70, 0x0E, - 0x1C, 0x01, 0xCF, 0x00, 0x3B, 0xC0, 0x0F, 0xF8, 0x01, 0xFF, 0x80, 0x3E, - 0x70, 0x07, 0x8E, 0x00, 0xE0, 0xE0, 0x38, 0x1C, 0x07, 0x03, 0xC0, 0xE0, - 0x38, 0x1C, 0x07, 0x03, 0x80, 0xF0, 0xE0, 0x0E, 0x1C, 0x01, 0xE0, 0x07, - 0x07, 0x0F, 0x0E, 0x0E, 0x0E, 0x0E, 0x1E, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x38, 0x38, 0x38, 0x38, 0x38, 0x78, 0x70, 0x70, 0x70, 0x70, 0xF0, 0xE0, - 0xE0, 0x1E, 0x7C, 0x0F, 0x83, 0xBF, 0xE7, 0xF8, 0x7F, 0xFD, 0xFF, 0x8F, - 0xC3, 0xF0, 0xF1, 0xE0, 0x3C, 0x0E, 0x38, 0x07, 0x01, 0xCF, 0x01, 0xE0, - 0x39, 0xC0, 0x38, 0x07, 0x38, 0x07, 0x00, 0xE7, 0x00, 0xE0, 0x1C, 0xE0, - 0x1C, 0x07, 0x3C, 0x07, 0x00, 0xE7, 0x00, 0xE0, 0x1C, 0xE0, 0x1C, 0x03, - 0x9C, 0x03, 0x80, 0xF3, 0x80, 0x70, 0x1C, 0x70, 0x1C, 0x03, 0x9C, 0x03, - 0x80, 0x73, 0x80, 0x70, 0x0E, 0x00, 0x1E, 0x3E, 0x07, 0x7F, 0xE1, 0xFF, - 0xF8, 0x7E, 0x0F, 0x1F, 0x01, 0xC7, 0x80, 0x73, 0xC0, 0x1C, 0xE0, 0x07, - 0x38, 0x03, 0xCE, 0x00, 0xE3, 0x80, 0x39, 0xE0, 0x0E, 0x70, 0x03, 0x9C, - 0x01, 0xC7, 0x00, 0x71, 0xC0, 0x1C, 0x70, 0x07, 0x38, 0x01, 0xCE, 0x00, - 0xE0, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE1, 0xE3, 0xC0, 0x79, - 0xC0, 0x1D, 0xC0, 0x0E, 0xE0, 0x07, 0x70, 0x03, 0xF0, 0x01, 0xF8, 0x01, - 0xDC, 0x00, 0xEE, 0x00, 0x77, 0x00, 0x73, 0xC0, 0x78, 0xF0, 0xF8, 0x7F, - 0xF8, 0x1F, 0xF8, 0x03, 0xF0, 0x00, 0x03, 0x8F, 0x80, 0x1D, 0xFF, 0x01, - 0xFF, 0xFC, 0x0F, 0xC1, 0xE0, 0x7C, 0x07, 0x83, 0xC0, 0x1C, 0x1C, 0x00, - 0xE1, 0xE0, 0x07, 0x0E, 0x00, 0x38, 0x70, 0x01, 0xC3, 0x80, 0x1E, 0x1C, - 0x00, 0xE1, 0xE0, 0x07, 0x0F, 0x00, 0x70, 0x78, 0x07, 0x83, 0xF0, 0xF8, - 0x3F, 0xFF, 0x81, 0xDF, 0xF8, 0x0E, 0x3F, 0x00, 0x70, 0x00, 0x03, 0x80, - 0x00, 0x3C, 0x00, 0x01, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x70, 0x00, 0x03, - 0x80, 0x00, 0x00, 0x00, 0xF8, 0xF0, 0x7F, 0xEE, 0x0F, 0xFF, 0xE1, 0xF0, - 0xFE, 0x3C, 0x07, 0xE3, 0x80, 0x3E, 0x70, 0x03, 0xC7, 0x00, 0x3C, 0x70, - 0x03, 0xCE, 0x00, 0x3C, 0xE0, 0x07, 0x8E, 0x00, 0x78, 0xE0, 0x07, 0x8E, - 0x00, 0xF8, 0xF0, 0x1F, 0x87, 0x87, 0xF0, 0x7F, 0xF7, 0x03, 0xFE, 0x70, - 0x0F, 0x8F, 0x00, 0x00, 0xF0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0E, - 0x00, 0x01, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x04, 0x00, 0x1E, - 0x78, 0xE7, 0xC7, 0x7C, 0x3F, 0x01, 0xF0, 0x0F, 0x00, 0xF0, 0x07, 0x00, - 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, - 0x00, 0x70, 0x07, 0x00, 0x38, 0x00, 0x01, 0xF8, 0x07, 0xFE, 0x0F, 0xFF, - 0x1E, 0x0F, 0x3C, 0x07, 0x38, 0x07, 0x38, 0x00, 0x3C, 0x00, 0x3F, 0x80, - 0x1F, 0xF8, 0x07, 0xFC, 0x00, 0x7E, 0x00, 0x0E, 0xE0, 0x0E, 0xE0, 0x1E, - 0xF0, 0x3C, 0x7F, 0xF8, 0x7F, 0xF0, 0x1F, 0xC0, 0x0E, 0x03, 0x80, 0xE0, - 0x38, 0x7F, 0xDF, 0xEF, 0xF8, 0x70, 0x1C, 0x0E, 0x03, 0x80, 0xE0, 0x38, - 0x1E, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x0F, 0x03, 0x80, 0xFC, 0x3F, 0x07, - 0x80, 0x1C, 0x03, 0xC7, 0x00, 0xE1, 0xC0, 0x38, 0xF0, 0x0E, 0x38, 0x03, - 0x8E, 0x00, 0xE3, 0x80, 0x70, 0xE0, 0x1C, 0x78, 0x07, 0x1C, 0x01, 0xC7, - 0x00, 0x71, 0xC0, 0x3C, 0x70, 0x0E, 0x38, 0x07, 0x8E, 0x03, 0xE3, 0x81, - 0xF8, 0xFF, 0xFE, 0x1F, 0xFF, 0x03, 0xF1, 0xC0, 0xE0, 0x07, 0xE0, 0x0F, - 0xE0, 0x0E, 0xE0, 0x1C, 0x70, 0x1C, 0x70, 0x38, 0x70, 0x38, 0x70, 0x70, - 0x70, 0xF0, 0x70, 0xE0, 0x71, 0xC0, 0x71, 0xC0, 0x33, 0x80, 0x3B, 0x80, - 0x3F, 0x00, 0x3F, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0xE0, 0x1C, - 0x07, 0xE0, 0x3C, 0x0E, 0xE0, 0x3C, 0x0E, 0xE0, 0x7C, 0x1C, 0xE0, 0x7C, - 0x1C, 0xE0, 0xEC, 0x38, 0xE0, 0xEC, 0x38, 0x61, 0xCC, 0x70, 0x61, 0xCC, - 0x70, 0x63, 0x8C, 0xE0, 0x73, 0x8C, 0xE0, 0x77, 0x0C, 0xC0, 0x77, 0x0D, - 0xC0, 0x7E, 0x0D, 0x80, 0x7E, 0x0F, 0x80, 0x7C, 0x0F, 0x80, 0x7C, 0x0F, - 0x00, 0x78, 0x0F, 0x00, 0x78, 0x0E, 0x00, 0x0E, 0x00, 0xE1, 0xE0, 0x38, - 0x1C, 0x0E, 0x03, 0xC3, 0x80, 0x38, 0xE0, 0x07, 0xBC, 0x00, 0x77, 0x00, - 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x1C, 0x00, 0x07, 0xC0, 0x01, 0xF8, 0x00, - 0x77, 0x80, 0x1E, 0x70, 0x07, 0x8F, 0x00, 0xE0, 0xE0, 0x38, 0x1C, 0x0E, - 0x01, 0xC3, 0x80, 0x38, 0x00, 0x0E, 0x00, 0x70, 0xF0, 0x0F, 0x07, 0x00, - 0xE0, 0x70, 0x1C, 0x07, 0x01, 0xC0, 0x70, 0x38, 0x07, 0x03, 0x80, 0x70, - 0x70, 0x07, 0x07, 0x00, 0x70, 0xE0, 0x03, 0x9E, 0x00, 0x39, 0xC0, 0x03, - 0xB8, 0x00, 0x3B, 0x80, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, - 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, - 0x07, 0x00, 0x00, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, - 0x00, 0x07, 0xFF, 0xC0, 0xFF, 0xF8, 0x3F, 0xFF, 0x00, 0x01, 0xC0, 0x00, - 0x70, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0x70, 0x00, 0x1C, - 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x00, 0x7F, 0xFE, 0x1F, 0xFF, 0xC3, 0xFF, 0xF8, 0x00, 0x00, - 0x70, 0x1F, 0x01, 0xF0, 0x3C, 0x03, 0x80, 0x38, 0x07, 0x00, 0x70, 0x07, - 0x00, 0x70, 0x07, 0x00, 0xE0, 0x0E, 0x01, 0xE0, 0x3C, 0x0F, 0x80, 0xE0, - 0x0F, 0x00, 0x78, 0x03, 0x80, 0x38, 0x03, 0x80, 0x38, 0x03, 0x80, 0x38, - 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x0E, 0x00, 0xF8, 0x0F, 0x80, 0x78, - 0x00, 0x01, 0x80, 0xC0, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, - 0x01, 0x81, 0xC0, 0xC0, 0x60, 0x30, 0x18, 0x18, 0x0C, 0x06, 0x03, 0x01, - 0x81, 0x80, 0xC0, 0x60, 0x30, 0x38, 0x18, 0x0C, 0x06, 0x03, 0x03, 0x01, - 0x80, 0xC0, 0x00, 0x01, 0xE0, 0x1F, 0x01, 0xF0, 0x07, 0x00, 0xE0, 0x0E, - 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x1C, - 0x01, 0xE0, 0x0F, 0x00, 0x70, 0x1F, 0x03, 0xC0, 0x78, 0x07, 0x00, 0x70, - 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x03, 0xC0, - 0xF8, 0x0F, 0x80, 0xE0, 0x00, 0x1C, 0x00, 0x3F, 0x00, 0x7F, 0x83, 0x63, - 0xC7, 0xC1, 0xFE, 0x00, 0xFC, 0x00, 0x78}; - -const GFXglyph FreeSansOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 10, 0, 1}, // 0x20 ' ' - {0, 9, 26, 10, 4, -25}, // 0x21 '!' - {30, 10, 9, 12, 6, -24}, // 0x22 '"' - {42, 21, 25, 19, 2, -24}, // 0x23 '#' - {108, 20, 31, 19, 2, -26}, // 0x24 '$' - {186, 26, 25, 31, 5, -24}, // 0x25 '%' - {268, 20, 25, 23, 3, -24}, // 0x26 '&' - {331, 4, 9, 7, 6, -24}, // 0x27 ''' - {336, 12, 33, 12, 4, -25}, // 0x28 '(' - {386, 12, 33, 12, -1, -24}, // 0x29 ')' - {436, 10, 10, 14, 6, -25}, // 0x2A '*' - {449, 18, 16, 20, 3, -15}, // 0x2B '+' - {485, 5, 8, 10, 2, -2}, // 0x2C ',' - {490, 9, 3, 12, 3, -10}, // 0x2D '-' - {494, 4, 4, 10, 3, -3}, // 0x2E '.' - {496, 15, 26, 10, 0, -25}, // 0x2F '/' - {545, 18, 25, 19, 3, -24}, // 0x30 '0' - {602, 10, 25, 19, 7, -24}, // 0x31 '1' - {634, 20, 25, 19, 2, -24}, // 0x32 '2' - {697, 19, 25, 19, 2, -24}, // 0x33 '3' - {757, 18, 25, 19, 2, -24}, // 0x34 '4' - {814, 20, 25, 19, 2, -24}, // 0x35 '5' - {877, 19, 25, 19, 3, -24}, // 0x36 '6' - {937, 18, 25, 19, 5, -24}, // 0x37 '7' - {994, 19, 25, 19, 3, -24}, // 0x38 '8' - {1054, 19, 25, 19, 2, -24}, // 0x39 '9' - {1114, 7, 19, 10, 4, -18}, // 0x3A ':' - {1131, 8, 24, 10, 3, -18}, // 0x3B ';' - {1155, 19, 17, 20, 3, -16}, // 0x3C '<' - {1196, 18, 9, 20, 3, -12}, // 0x3D '=' - {1217, 19, 17, 20, 2, -15}, // 0x3E '>' - {1258, 16, 26, 19, 6, -25}, // 0x3F '?' - {1310, 33, 31, 36, 3, -25}, // 0x40 '@' - {1438, 23, 26, 23, 0, -25}, // 0x41 'A' - {1513, 21, 26, 23, 3, -25}, // 0x42 'B' - {1582, 22, 26, 25, 4, -25}, // 0x43 'C' - {1654, 23, 26, 25, 3, -25}, // 0x44 'D' - {1729, 23, 26, 23, 3, -25}, // 0x45 'E' - {1804, 22, 26, 21, 3, -25}, // 0x46 'F' - {1876, 24, 26, 27, 4, -25}, // 0x47 'G' - {1954, 25, 26, 25, 3, -25}, // 0x48 'H' - {2036, 8, 26, 10, 4, -25}, // 0x49 'I' - {2062, 18, 26, 18, 2, -25}, // 0x4A 'J' - {2121, 25, 26, 23, 3, -25}, // 0x4B 'K' - {2203, 16, 26, 19, 3, -25}, // 0x4C 'L' - {2255, 29, 26, 30, 3, -25}, // 0x4D 'M' - {2350, 25, 26, 26, 3, -25}, // 0x4E 'N' - {2432, 24, 26, 27, 4, -25}, // 0x4F 'O' - {2510, 22, 26, 23, 3, -25}, // 0x50 'P' - {2582, 25, 28, 27, 4, -25}, // 0x51 'Q' - {2670, 23, 26, 25, 3, -25}, // 0x52 'R' - {2745, 22, 26, 23, 3, -25}, // 0x53 'S' - {2817, 20, 26, 21, 6, -25}, // 0x54 'T' - {2882, 24, 26, 25, 4, -25}, // 0x55 'U' - {2960, 21, 26, 23, 6, -25}, // 0x56 'V' - {3029, 32, 26, 33, 6, -25}, // 0x57 'W' - {3133, 27, 26, 23, 1, -25}, // 0x58 'X' - {3221, 23, 26, 24, 6, -25}, // 0x59 'Y' - {3296, 25, 26, 21, 1, -25}, // 0x5A 'Z' - {3378, 13, 33, 10, 1, -25}, // 0x5B '[' - {3432, 4, 26, 10, 5, -25}, // 0x5C '\' - {3445, 13, 33, 10, -1, -24}, // 0x5D ']' - {3499, 14, 14, 16, 3, -24}, // 0x5E '^' - {3524, 21, 2, 19, -2, 5}, // 0x5F '_' - {3530, 6, 5, 12, 6, -25}, // 0x60 '`' - {3534, 18, 19, 19, 2, -18}, // 0x61 'a' - {3577, 19, 26, 20, 2, -25}, // 0x62 'b' - {3639, 16, 19, 18, 3, -18}, // 0x63 'c' - {3677, 20, 26, 20, 3, -25}, // 0x64 'd' - {3742, 17, 19, 19, 3, -18}, // 0x65 'e' - {3783, 11, 26, 9, 2, -25}, // 0x66 'f' - {3819, 19, 27, 19, 2, -18}, // 0x67 'g' - {3884, 18, 26, 19, 2, -25}, // 0x68 'h' - {3943, 8, 26, 8, 2, -25}, // 0x69 'i' - {3969, 14, 34, 8, -2, -25}, // 0x6A 'j' - {4029, 19, 26, 18, 2, -25}, // 0x6B 'k' - {4091, 8, 26, 8, 2, -25}, // 0x6C 'l' - {4117, 27, 19, 29, 2, -18}, // 0x6D 'm' - {4182, 18, 19, 19, 2, -18}, // 0x6E 'n' - {4225, 17, 19, 19, 3, -18}, // 0x6F 'o' - {4266, 21, 26, 20, 0, -18}, // 0x70 'p' - {4335, 20, 27, 19, 2, -18}, // 0x71 'q' - {4403, 13, 19, 11, 2, -18}, // 0x72 'r' - {4434, 16, 19, 18, 2, -18}, // 0x73 's' - {4472, 10, 23, 9, 3, -22}, // 0x74 't' - {4501, 18, 19, 19, 3, -18}, // 0x75 'u' - {4544, 16, 19, 17, 4, -18}, // 0x76 'v' - {4582, 24, 19, 25, 4, -18}, // 0x77 'w' - {4639, 19, 19, 17, 1, -18}, // 0x78 'x' - {4685, 20, 27, 17, 0, -18}, // 0x79 'y' - {4753, 19, 19, 17, 1, -18}, // 0x7A 'z' - {4799, 12, 33, 12, 3, -25}, // 0x7B '{' - {4849, 9, 33, 9, 2, -25}, // 0x7C '|' - {4887, 12, 33, 12, 0, -24}, // 0x7D '}' - {4937, 16, 7, 20, 5, -15}}; // 0x7E '~' - -const GFXfont FreeSansOblique18pt7b PROGMEM = { - (uint8_t *)FreeSansOblique18pt7bBitmaps, - (GFXglyph *)FreeSansOblique18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 5623 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h deleted file mode 100644 index 805aefa..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h +++ /dev/null @@ -1,842 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x3C, 0x07, - 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x38, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1E, 0x07, 0x80, 0xF0, 0x1E, 0x00, 0x78, - 0x7B, 0xC3, 0xDE, 0x1F, 0xE1, 0xEF, 0x0F, 0x78, 0x7B, 0xC3, 0xDC, 0x1C, - 0xE0, 0xE7, 0x07, 0x30, 0x31, 0x81, 0x80, 0x00, 0x07, 0x81, 0xC0, 0x00, - 0x78, 0x3C, 0x00, 0x07, 0x03, 0xC0, 0x00, 0xF0, 0x38, 0x00, 0x0E, 0x07, - 0x80, 0x01, 0xE0, 0x70, 0x00, 0x1E, 0x0F, 0x00, 0x01, 0xC0, 0xF0, 0x00, - 0x3C, 0x0E, 0x00, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, - 0xFE, 0x00, 0x70, 0x3C, 0x00, 0x0F, 0x03, 0x80, 0x00, 0xF0, 0x78, 0x00, - 0x0E, 0x07, 0x80, 0x01, 0xE0, 0x70, 0x00, 0x1C, 0x0F, 0x00, 0x03, 0xC0, - 0xE0, 0x00, 0x3C, 0x1E, 0x00, 0x03, 0x81, 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, - 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0x03, 0x80, 0x00, 0xE0, - 0x78, 0x00, 0x1E, 0x07, 0x00, 0x01, 0xC0, 0xF0, 0x00, 0x1C, 0x0F, 0x00, - 0x03, 0xC0, 0xE0, 0x00, 0x38, 0x1E, 0x00, 0x07, 0x81, 0xC0, 0x00, 0x78, - 0x3C, 0x00, 0x07, 0x03, 0xC0, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x30, - 0x00, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0x00, 0x7F, - 0xFF, 0xE0, 0x1F, 0x18, 0xF8, 0x0F, 0x8E, 0x1F, 0x07, 0xC3, 0x83, 0xC1, - 0xE0, 0xE0, 0xF0, 0x70, 0x38, 0x3C, 0x3C, 0x0C, 0x0F, 0x0F, 0x07, 0x00, - 0x03, 0xC1, 0xC0, 0x00, 0xF0, 0x70, 0x00, 0x3E, 0x1C, 0x00, 0x0F, 0xE6, - 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xFE, 0x00, 0x03, 0xFF, 0xE0, 0x00, - 0x3F, 0xFC, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xC7, 0xF0, 0x00, 0x70, 0x7C, - 0x00, 0x1C, 0x0F, 0x00, 0x06, 0x03, 0xCF, 0x03, 0x80, 0xF3, 0xC0, 0xE0, - 0x3C, 0xF0, 0x38, 0x0E, 0x3C, 0x0E, 0x07, 0x8F, 0x03, 0x01, 0xE3, 0xE1, - 0xC0, 0xF0, 0xF8, 0x70, 0x78, 0x1F, 0x9C, 0xFC, 0x03, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x38, 0x00, 0x00, 0x0E, 0x00, - 0x00, 0x03, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x07, 0x80, 0x1F, 0x00, 0x00, 0x70, 0x07, 0xFC, 0x00, 0x0E, - 0x00, 0xFF, 0xE0, 0x01, 0xC0, 0x1E, 0x1E, 0x00, 0x3C, 0x03, 0x80, 0xF0, - 0x03, 0x80, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x0E, 0x00, 0xE0, - 0x07, 0x01, 0xC0, 0x0E, 0x00, 0x70, 0x3C, 0x00, 0xE0, 0x0E, 0x03, 0x80, - 0x0E, 0x00, 0xE0, 0x70, 0x00, 0xF0, 0x1C, 0x0E, 0x00, 0x07, 0x87, 0xC1, - 0xE0, 0x00, 0x7F, 0xF8, 0x1C, 0x00, 0x03, 0xFE, 0x03, 0x80, 0x00, 0x0F, - 0x80, 0x70, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x01, 0xE0, 0x1F, - 0x00, 0x00, 0x1C, 0x07, 0xFC, 0x00, 0x03, 0x80, 0xFF, 0xE0, 0x00, 0x70, - 0x1E, 0x1E, 0x00, 0x0F, 0x03, 0x80, 0xF0, 0x00, 0xE0, 0x70, 0x07, 0x00, - 0x1C, 0x07, 0x00, 0x70, 0x03, 0x80, 0xE0, 0x07, 0x00, 0x70, 0x0E, 0x00, - 0x70, 0x0F, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x1C, 0x00, - 0xF0, 0x1C, 0x03, 0x80, 0x07, 0x87, 0xC0, 0x70, 0x00, 0x7F, 0xF8, 0x07, - 0x00, 0x03, 0xFE, 0x00, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF8, 0x00, - 0x03, 0xFF, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0xF8, 0x7C, 0x00, 0x78, 0x0F, - 0x00, 0x1E, 0x03, 0xC0, 0x0F, 0x00, 0xF0, 0x03, 0xC0, 0x3C, 0x00, 0xF0, - 0x1E, 0x00, 0x3C, 0x07, 0x80, 0x0F, 0x87, 0xC0, 0x01, 0xE3, 0xE0, 0x00, - 0x7F, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xFC, 0x00, - 0x03, 0xFF, 0x00, 0x01, 0xFB, 0xE0, 0x70, 0xF8, 0x7C, 0x1C, 0x7C, 0x1F, - 0x0E, 0x3C, 0x03, 0xE3, 0x9E, 0x00, 0x79, 0xE7, 0x80, 0x1F, 0xF3, 0xC0, - 0x03, 0xF8, 0xF0, 0x00, 0xFE, 0x3C, 0x00, 0x1F, 0x0F, 0x00, 0x07, 0xC3, - 0xE0, 0x03, 0xF8, 0xF8, 0x03, 0xFE, 0x3F, 0x83, 0xF7, 0xC7, 0xFF, 0xF8, - 0xF0, 0xFF, 0xFC, 0x3E, 0x1F, 0xFC, 0x07, 0x81, 0xFC, 0x00, 0x00, 0x7B, - 0xDF, 0xEF, 0x7B, 0xDC, 0xE7, 0x31, 0x80, 0x00, 0x0E, 0x00, 0x38, 0x00, - 0xE0, 0x03, 0x80, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, - 0x0F, 0x00, 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, - 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, - 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, - 0x70, 0x00, 0xE0, 0x00, 0xC0, 0x00, 0x00, 0x30, 0x00, 0x70, 0x00, 0xE0, - 0x00, 0xC0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, - 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x3C, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x07, - 0x00, 0x0E, 0x00, 0x3C, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, 0x0F, 0x00, - 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x1C, 0x00, 0x70, - 0x01, 0xC0, 0x07, 0x00, 0x00, 0x01, 0xC0, 0x07, 0x00, 0x38, 0x18, 0xE3, - 0x7B, 0xBF, 0xFF, 0xF3, 0xFF, 0x01, 0xE0, 0x1F, 0xC0, 0xF7, 0x07, 0x9E, - 0x1C, 0x38, 0x20, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x78, - 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, - 0x00, 0x1C, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xE0, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, - 0x78, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x3E, 0x7C, 0xF9, 0xE7, - 0xC1, 0x83, 0x0C, 0x18, 0x63, 0xC6, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFE, 0x7D, 0xF7, 0xBE, 0xF8, 0x00, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, - 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, - 0x00, 0x30, 0x00, 0x03, 0x80, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, 0x0C, - 0x00, 0x00, 0xE0, 0x00, 0x06, 0x00, 0x00, 0x70, 0x00, 0x03, 0x00, 0x00, - 0x38, 0x00, 0x01, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x00, 0x0E, 0x00, - 0x00, 0x60, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x38, - 0x00, 0x01, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x00, 0x0E, 0x00, 0x00, - 0x60, 0x00, 0x07, 0x00, 0x00, 0x30, 0x00, 0x03, 0x80, 0x00, 0x18, 0x00, - 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, - 0xE0, 0x3F, 0x0F, 0xC0, 0xF8, 0x07, 0x81, 0xE0, 0x0F, 0x87, 0x80, 0x0F, - 0x1F, 0x00, 0x1E, 0x3C, 0x00, 0x3C, 0x78, 0x00, 0x79, 0xE0, 0x00, 0xF3, - 0xC0, 0x01, 0xE7, 0x80, 0x07, 0xDE, 0x00, 0x0F, 0xBC, 0x00, 0x1E, 0x78, - 0x00, 0x3C, 0xF0, 0x00, 0x79, 0xE0, 0x00, 0xF7, 0x80, 0x03, 0xEF, 0x00, - 0x07, 0xDE, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0x78, 0x00, 0x7C, 0xF0, 0x00, - 0xF1, 0xE0, 0x03, 0xE3, 0xC0, 0x07, 0x87, 0xC0, 0x1F, 0x0F, 0x80, 0x7C, - 0x0F, 0xC3, 0xF0, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0x00, 0x1F, 0xFC, 0x00, - 0x0F, 0xC0, 0x00, 0x00, 0x18, 0x01, 0xC0, 0x1C, 0x01, 0xE0, 0x1F, 0x0F, - 0xFB, 0xFF, 0xDF, 0xFC, 0xFF, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, - 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, - 0x78, 0x07, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, - 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, 0x00, 0x00, 0x03, 0xFC, - 0x00, 0x03, 0xFF, 0xE0, 0x00, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xE0, 0x0F, - 0xC0, 0xFC, 0x03, 0xE0, 0x07, 0xC0, 0xF8, 0x00, 0xF8, 0x1F, 0x00, 0x0F, - 0x03, 0xC0, 0x01, 0xE0, 0xF8, 0x00, 0x3C, 0x1E, 0x00, 0x07, 0x80, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0xFF, - 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFC, - 0x00, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xFE, 0x00, 0x3F, 0xFF, 0x80, 0x3F, - 0xFF, 0xE0, 0x1F, 0x81, 0xF8, 0x1F, 0x00, 0x7C, 0x1F, 0x00, 0x1E, 0x0F, - 0x00, 0x0F, 0x0F, 0x80, 0x07, 0x87, 0x80, 0x03, 0xC0, 0x00, 0x03, 0xC0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0xE0, - 0x00, 0x3F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xFE, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0x79, 0xE0, 0x00, 0x3C, 0xF0, 0x00, 0x1E, 0x78, 0x00, 0x1E, 0x3C, 0x00, - 0x0F, 0x1E, 0x00, 0x0F, 0x0F, 0x80, 0x1F, 0x83, 0xF0, 0x3F, 0x81, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0x80, 0x1F, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xBC, - 0x00, 0x0F, 0xBC, 0x00, 0x1F, 0x7C, 0x00, 0x3E, 0x78, 0x00, 0x7C, 0x78, - 0x00, 0xF8, 0x78, 0x00, 0xF0, 0x78, 0x01, 0xE0, 0xF0, 0x03, 0xC0, 0xF0, - 0x07, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x1E, 0x01, 0xF0, 0x3C, 0x01, 0xE0, - 0x78, 0x01, 0xE0, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFE, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, - 0x00, 0x07, 0x80, 0x00, 0x07, 0x80, 0x00, 0x07, 0x80, 0x00, 0x07, 0x80, - 0x00, 0x0F, 0x80, 0x00, 0x7F, 0xFF, 0xC0, 0x1F, 0xFF, 0xF8, 0x03, 0xFF, - 0xFF, 0x00, 0x7F, 0xFF, 0xE0, 0x1E, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x03, 0xC7, 0xE0, 0x00, 0xF7, 0xFF, 0x80, 0x1F, - 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0x80, 0xFE, 0x03, 0xF0, 0x1F, 0x00, 0x3F, - 0x03, 0xC0, 0x03, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x70, - 0x00, 0x00, 0x1E, 0x1E, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0xF0, 0x7C, 0x00, - 0x3C, 0x0F, 0x80, 0x0F, 0x80, 0xFC, 0x07, 0xE0, 0x1F, 0xFF, 0xF8, 0x01, - 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x3F, 0xF8, 0x00, 0x7F, 0xFC, 0x00, 0xFF, 0xFE, 0x01, 0xF8, - 0x3E, 0x03, 0xE0, 0x1F, 0x07, 0xC0, 0x1F, 0x0F, 0x80, 0x0F, 0x0F, 0x00, - 0x0F, 0x1F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x1F, - 0x80, 0x3C, 0x7F, 0xE0, 0x3D, 0xFF, 0xF0, 0x7B, 0xFF, 0xF8, 0x7F, 0xC1, - 0xF8, 0x7F, 0x00, 0x7C, 0x7E, 0x00, 0x7C, 0xFC, 0x00, 0x3C, 0xF8, 0x00, - 0x3C, 0xF8, 0x00, 0x3C, 0xF0, 0x00, 0x3C, 0xF0, 0x00, 0x38, 0xF0, 0x00, - 0x78, 0xF0, 0x00, 0x78, 0xF0, 0x00, 0xF0, 0xF8, 0x01, 0xF0, 0x7C, 0x03, - 0xE0, 0x7E, 0x0F, 0xC0, 0x3F, 0xFF, 0xC0, 0x3F, 0xFF, 0x80, 0x0F, 0xFE, - 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, 0xFF, - 0xFF, 0xF8, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, - 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, 0x00, 0x03, - 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0x80, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xFE, 0x00, 0x1F, - 0xFF, 0x80, 0x1F, 0xFF, 0xE0, 0x1F, 0x81, 0xF8, 0x1F, 0x00, 0x7C, 0x0F, - 0x00, 0x1E, 0x0F, 0x00, 0x0F, 0x07, 0x80, 0x07, 0x83, 0xC0, 0x03, 0xC1, - 0xE0, 0x03, 0xC0, 0xF8, 0x03, 0xC0, 0x7E, 0x07, 0xC0, 0x1F, 0xFF, 0xC0, - 0x07, 0xFF, 0xC0, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x07, 0xE0, 0x7E, - 0x07, 0xC0, 0x0F, 0x07, 0x80, 0x07, 0xC7, 0xC0, 0x01, 0xE3, 0xC0, 0x00, - 0xF3, 0xC0, 0x00, 0x79, 0xE0, 0x00, 0x3C, 0xF0, 0x00, 0x1C, 0x78, 0x00, - 0x1E, 0x3C, 0x00, 0x0F, 0x1F, 0x00, 0x0F, 0x0F, 0xC0, 0x0F, 0x83, 0xF0, - 0x3F, 0x81, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0xFC, - 0x03, 0xFF, 0xFC, 0x07, 0xF0, 0x7E, 0x07, 0xC0, 0x3E, 0x0F, 0x80, 0x1F, - 0x0F, 0x00, 0x0F, 0x1E, 0x00, 0x0F, 0x1E, 0x00, 0x0F, 0x3C, 0x00, 0x0F, - 0x3C, 0x00, 0x0F, 0x3C, 0x00, 0x1F, 0x3C, 0x00, 0x1F, 0x3C, 0x00, 0x3F, - 0x3E, 0x00, 0x7E, 0x3E, 0x00, 0xFE, 0x1F, 0x83, 0xFE, 0x1F, 0xFF, 0xFE, - 0x0F, 0xFF, 0xBC, 0x07, 0xFE, 0x3C, 0x01, 0xF8, 0x7C, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x78, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF0, 0xF0, 0x01, 0xF0, - 0xF0, 0x03, 0xE0, 0xF8, 0x07, 0xC0, 0xFC, 0x1F, 0xC0, 0x7F, 0xFF, 0x80, - 0x3F, 0xFE, 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xC1, 0xF0, - 0x78, 0x3E, 0x0F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7C, 0x1F, - 0x07, 0x83, 0xE0, 0xF8, 0x00, 0x03, 0xE0, 0x7C, 0x0F, 0x03, 0xE0, 0x7C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xE0, 0x7C, 0x0F, - 0x81, 0xE0, 0x7C, 0x01, 0x80, 0x30, 0x0C, 0x01, 0x80, 0x60, 0x3C, 0x06, - 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x70, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0xFE, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x03, 0xFE, 0x00, - 0x07, 0xFC, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xF8, 0x00, 0x07, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x1F, 0xF0, 0x00, - 0x01, 0xFF, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0E, - 0x00, 0x00, 0x00, 0x80, 0x1F, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xE3, 0xFF, - 0xFF, 0xF8, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, - 0xC7, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF8, 0x04, 0x00, 0x00, 0x01, 0xC0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x03, 0xFE, 0x00, 0x00, - 0x3F, 0xE0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0xC0, 0x00, 0xFF, 0x80, 0x00, 0xFF, 0x80, 0x01, - 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0xFE, - 0x00, 0x3F, 0xF8, 0x0F, 0xFF, 0xC1, 0xFF, 0xFE, 0x1F, 0x03, 0xE3, 0xE0, - 0x1F, 0x7C, 0x00, 0xF7, 0x80, 0x0F, 0x78, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x01, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0x80, 0x00, 0x78, 0x00, 0x0F, 0x80, - 0x00, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x3E, - 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x00, 0x00, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFE, - 0x00, 0x00, 0x7F, 0xE0, 0x0F, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xE0, - 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x0F, 0xC0, 0x00, 0x00, 0xFC, 0x00, - 0xFC, 0x00, 0x00, 0x01, 0xF0, 0x0F, 0xC0, 0x00, 0x00, 0x0F, 0x80, 0xF8, - 0x00, 0xFC, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0xF9, 0xE1, 0xF0, 0x78, 0x03, - 0xFF, 0xCF, 0x07, 0x87, 0xC0, 0x3F, 0x0F, 0xF0, 0x3C, 0x7C, 0x03, 0xE0, - 0x3F, 0x01, 0xE3, 0xC0, 0x3E, 0x01, 0xF8, 0x0F, 0x3E, 0x03, 0xE0, 0x0F, - 0x80, 0x79, 0xE0, 0x1E, 0x00, 0x7C, 0x03, 0xDF, 0x01, 0xE0, 0x03, 0xC0, - 0x3E, 0xF0, 0x1F, 0x00, 0x3E, 0x01, 0xE7, 0x80, 0xF0, 0x01, 0xE0, 0x0F, - 0x38, 0x07, 0x80, 0x0F, 0x00, 0xFB, 0xC0, 0x78, 0x00, 0xF0, 0x07, 0x9E, - 0x03, 0xC0, 0x07, 0x80, 0x7C, 0xF0, 0x1E, 0x00, 0x78, 0x07, 0xC7, 0x80, - 0xF0, 0x07, 0xC0, 0x7E, 0x3C, 0x07, 0x80, 0x7C, 0x07, 0xE1, 0xE0, 0x3E, - 0x07, 0xE0, 0x7E, 0x0F, 0x00, 0xF8, 0x7F, 0x8F, 0xC0, 0x7C, 0x07, 0xFF, - 0x7F, 0xFC, 0x01, 0xE0, 0x1F, 0xF1, 0xFF, 0x80, 0x0F, 0x00, 0x7E, 0x0F, - 0xF0, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, - 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFE, 0x00, 0xF8, 0x00, 0x00, - 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0x3F, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x1F, 0xE0, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x03, 0xDF, 0x00, 0x00, 0x1E, - 0x7C, 0x00, 0x00, 0x79, 0xF0, 0x00, 0x03, 0xC7, 0xC0, 0x00, 0x0F, 0x1F, - 0x00, 0x00, 0x78, 0x3C, 0x00, 0x03, 0xE0, 0xF0, 0x00, 0x0F, 0x03, 0xE0, - 0x00, 0x78, 0x0F, 0x80, 0x01, 0xE0, 0x3E, 0x00, 0x0F, 0x00, 0xF8, 0x00, - 0x3C, 0x03, 0xE0, 0x01, 0xE0, 0x0F, 0x80, 0x0F, 0x80, 0x1E, 0x00, 0x3C, - 0x00, 0x7C, 0x01, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, - 0xFF, 0x00, 0xFF, 0xFF, 0xFC, 0x07, 0xC0, 0x01, 0xF0, 0x3E, 0x00, 0x03, - 0xC0, 0xF8, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0xF8, - 0xF8, 0x00, 0x03, 0xE3, 0xC0, 0x00, 0x0F, 0x9F, 0x00, 0x00, 0x3E, 0xF8, - 0x00, 0x00, 0x7B, 0xE0, 0x00, 0x01, 0xF0, 0x01, 0xFF, 0xFF, 0x00, 0x0F, - 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0xE0, 0x3E, 0x00, - 0x1F, 0x81, 0xE0, 0x00, 0x7C, 0x0F, 0x00, 0x01, 0xE0, 0x78, 0x00, 0x0F, - 0x03, 0xC0, 0x00, 0x78, 0x3C, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x3C, 0x0F, - 0x00, 0x01, 0xE0, 0x78, 0x00, 0x1E, 0x07, 0xC0, 0x03, 0xE0, 0x3F, 0xFF, - 0xFC, 0x01, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFE, - 0x07, 0x80, 0x01, 0xF0, 0x3C, 0x00, 0x07, 0xC1, 0xE0, 0x00, 0x1E, 0x0F, - 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x07, 0x87, 0x80, 0x00, 0x3C, 0x3C, 0x00, - 0x01, 0xE1, 0xE0, 0x00, 0x1E, 0x1F, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x0F, - 0x87, 0x80, 0x00, 0xF8, 0x3C, 0x00, 0x1F, 0x81, 0xFF, 0xFF, 0xF8, 0x1F, - 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x1F, - 0xFF, 0xFC, 0x00, 0xFE, 0x03, 0xF0, 0x07, 0xE0, 0x03, 0xE0, 0x3E, 0x00, - 0x07, 0x81, 0xF0, 0x00, 0x1E, 0x07, 0x80, 0x00, 0x3C, 0x3C, 0x00, 0x00, - 0xF1, 0xF0, 0x00, 0x03, 0xC7, 0x80, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, 0x00, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x3C, 0xF0, 0x00, 0x01, 0xF3, 0xC0, 0x00, 0x07, - 0x8F, 0x80, 0x00, 0x3E, 0x3E, 0x00, 0x00, 0xF0, 0x7C, 0x00, 0x07, 0xC1, - 0xF0, 0x00, 0x3E, 0x03, 0xE0, 0x03, 0xF0, 0x0F, 0xE0, 0x3F, 0x80, 0x1F, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x01, 0xFF, 0xFF, 0x00, 0x03, 0xFF, 0xFF, 0x80, 0x07, 0xFF, - 0xFF, 0x80, 0x1F, 0xFF, 0xFF, 0x80, 0x3E, 0x00, 0x3F, 0x80, 0x78, 0x00, - 0x1F, 0x80, 0xF0, 0x00, 0x1F, 0x03, 0xE0, 0x00, 0x1E, 0x07, 0xC0, 0x00, - 0x3E, 0x0F, 0x00, 0x00, 0x3C, 0x1E, 0x00, 0x00, 0x78, 0x3C, 0x00, 0x00, - 0xF0, 0xF8, 0x00, 0x01, 0xE1, 0xF0, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0x07, - 0x87, 0x80, 0x00, 0x0F, 0x0F, 0x00, 0x00, 0x3C, 0x3E, 0x00, 0x00, 0x78, - 0x7C, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x01, 0xE1, 0xE0, 0x00, 0x07, 0x87, - 0xC0, 0x00, 0x0F, 0x0F, 0x80, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0x78, 0x3C, - 0x00, 0x01, 0xF0, 0x78, 0x00, 0x03, 0xC1, 0xF0, 0x00, 0x0F, 0x03, 0xE0, - 0x00, 0x3E, 0x07, 0x80, 0x01, 0xF8, 0x0F, 0x00, 0x0F, 0xE0, 0x1F, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, - 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFC, 0x07, 0xFF, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xE0, 0x3E, 0x00, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0x0F, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, - 0x07, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0x80, - 0x7F, 0xFF, 0xFF, 0x00, 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x1F, 0xFF, - 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0xFE, 0x00, 0x01, 0xFF, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, - 0xFF, 0xC0, 0xFF, 0xFF, 0xFE, 0x03, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xFF, - 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, - 0xF0, 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x7F, 0xC0, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xFF, 0x00, 0x07, - 0xFF, 0xFF, 0xC0, 0x07, 0xF0, 0x0F, 0xF0, 0x0F, 0xC0, 0x00, 0xF8, 0x0F, - 0xC0, 0x00, 0x3E, 0x07, 0x80, 0x00, 0x1F, 0x07, 0x80, 0x00, 0x07, 0x87, - 0xC0, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x1F, 0xFF, - 0xBC, 0x00, 0x0F, 0xFF, 0xDE, 0x00, 0x0F, 0xFF, 0xEF, 0x00, 0x07, 0xFF, - 0xF7, 0x80, 0x00, 0x00, 0x73, 0xC0, 0x00, 0x00, 0x39, 0xE0, 0x00, 0x00, - 0x3C, 0xF0, 0x00, 0x00, 0x1E, 0x78, 0x00, 0x00, 0x1F, 0x3E, 0x00, 0x00, - 0x0F, 0x8F, 0x00, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x0F, 0xC3, 0xF0, 0x00, - 0x0F, 0xE0, 0xFC, 0x00, 0x1F, 0xF0, 0x7F, 0x80, 0x7F, 0x78, 0x1F, 0xFF, - 0xFE, 0x38, 0x03, 0xFF, 0xFE, 0x1C, 0x00, 0xFF, 0xFC, 0x0E, 0x00, 0x0F, - 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0xF0, 0x00, 0x03, 0xC0, - 0x78, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x01, 0xF0, 0x3E, 0x00, 0x00, 0xF0, - 0x1E, 0x00, 0x00, 0x78, 0x0F, 0x00, 0x00, 0x3C, 0x0F, 0x80, 0x00, 0x3E, - 0x07, 0xC0, 0x00, 0x1F, 0x03, 0xC0, 0x00, 0x0F, 0x01, 0xE0, 0x00, 0x07, - 0x80, 0xF0, 0x00, 0x03, 0xC0, 0xF8, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x01, - 0xF0, 0x3C, 0x00, 0x00, 0xF0, 0x1F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, - 0xFC, 0x0F, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0xFE, 0x03, 0xC0, 0x00, - 0x0F, 0x01, 0xE0, 0x00, 0x07, 0x81, 0xF0, 0x00, 0x07, 0xC0, 0xF8, 0x00, - 0x03, 0xE0, 0x78, 0x00, 0x01, 0xE0, 0x3C, 0x00, 0x00, 0xF0, 0x1E, 0x00, - 0x00, 0x78, 0x1F, 0x00, 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x3C, 0x07, 0x80, - 0x00, 0x1E, 0x03, 0xC0, 0x00, 0x0F, 0x01, 0xE0, 0x00, 0x0F, 0x81, 0xF0, - 0x00, 0x07, 0xC0, 0xF0, 0x00, 0x03, 0xC0, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0x81, 0xF0, 0x3E, 0x07, - 0x80, 0xF0, 0x1E, 0x07, 0xC0, 0xF8, 0x1E, 0x03, 0xC0, 0x78, 0x1F, 0x03, - 0xE0, 0x78, 0x0F, 0x01, 0xE0, 0x7C, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0x81, - 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x1E, 0x07, 0xC0, 0xF8, 0x1E, 0x00, 0x00, - 0x00, 0x07, 0x80, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, 0x00, 0x07, - 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x0F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0x80, 0x00, 0x03, 0xC0, 0xF0, - 0x01, 0xE0, 0x78, 0x00, 0xF0, 0x78, 0x00, 0xF8, 0x3C, 0x00, 0x78, 0x1E, - 0x00, 0x3C, 0x0F, 0x00, 0x3E, 0x07, 0xC0, 0x3E, 0x03, 0xF0, 0x7E, 0x00, - 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0x00, 0x0F, 0xFE, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x01, 0xE0, 0x00, 0x0F, 0xC0, 0x78, 0x00, 0x07, 0xC0, 0x1E, 0x00, - 0x03, 0xE0, 0x0F, 0x80, 0x03, 0xF0, 0x03, 0xE0, 0x01, 0xF8, 0x00, 0xF0, - 0x00, 0xFC, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0x07, - 0xC0, 0x3F, 0x00, 0x01, 0xE0, 0x1F, 0x80, 0x00, 0x78, 0x0F, 0x80, 0x00, - 0x1E, 0x07, 0xC0, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x03, 0xE3, 0xF0, 0x00, - 0x00, 0xF1, 0xFC, 0x00, 0x00, 0x3C, 0xFF, 0x00, 0x00, 0x0F, 0x7F, 0xE0, - 0x00, 0x07, 0xFE, 0xF8, 0x00, 0x01, 0xFE, 0x1E, 0x00, 0x00, 0x7F, 0x07, - 0xC0, 0x00, 0x1F, 0x80, 0xF0, 0x00, 0x0F, 0xC0, 0x3E, 0x00, 0x03, 0xE0, - 0x07, 0x80, 0x00, 0xF0, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x0F, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x78, 0x00, 0x1F, 0x00, 0x1E, 0x00, 0x03, 0xE0, 0x07, 0x80, 0x00, 0xF8, - 0x03, 0xE0, 0x00, 0x1F, 0x00, 0xF0, 0x00, 0x07, 0xC0, 0x3C, 0x00, 0x00, - 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0xF8, - 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x01, 0xF0, 0x00, - 0x07, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x80, 0x00, 0x3E, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x7C, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, - 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, - 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xE0, - 0x01, 0xF8, 0x00, 0x00, 0x7E, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x0F, 0xF0, - 0x00, 0x03, 0xF8, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x3F, 0xC0, 0x00, 0x1F, - 0xC0, 0x7F, 0x80, 0x00, 0x7F, 0x80, 0xFF, 0x00, 0x00, 0xEF, 0x03, 0xFE, - 0x00, 0x03, 0xFE, 0x07, 0xBC, 0x00, 0x0F, 0x78, 0x0F, 0x3C, 0x00, 0x1E, - 0xF0, 0x1E, 0x78, 0x00, 0x79, 0xE0, 0x3C, 0xF0, 0x00, 0xF3, 0xC0, 0xF9, - 0xE0, 0x03, 0xCF, 0x81, 0xE3, 0xC0, 0x07, 0x9E, 0x03, 0xC7, 0x80, 0x1E, - 0x3C, 0x07, 0x8F, 0x00, 0x38, 0x78, 0x1F, 0x1E, 0x00, 0xF0, 0xF0, 0x3C, - 0x1E, 0x03, 0xC3, 0xE0, 0x78, 0x3C, 0x07, 0x87, 0x80, 0xF0, 0x78, 0x1E, - 0x0F, 0x01, 0xE0, 0xF0, 0x3C, 0x1E, 0x07, 0xC1, 0xE0, 0xF0, 0x7C, 0x0F, - 0x03, 0xC1, 0xE0, 0xF0, 0x1E, 0x07, 0x87, 0x81, 0xE0, 0x3C, 0x0F, 0x0E, - 0x03, 0xC0, 0x78, 0x0F, 0x3C, 0x07, 0x81, 0xF0, 0x1E, 0x70, 0x1F, 0x03, - 0xC0, 0x3D, 0xE0, 0x3C, 0x07, 0x80, 0x7F, 0x80, 0x78, 0x0F, 0x00, 0xFF, - 0x00, 0xF0, 0x3E, 0x01, 0xFC, 0x01, 0xE0, 0x78, 0x03, 0xF8, 0x07, 0xC0, - 0xF0, 0x07, 0xE0, 0x0F, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x01, 0xF0, - 0x00, 0x03, 0xC0, 0x7E, 0x00, 0x01, 0xF0, 0x3F, 0x80, 0x00, 0x78, 0x0F, - 0xE0, 0x00, 0x1E, 0x03, 0xFC, 0x00, 0x07, 0x80, 0xFF, 0x00, 0x03, 0xE0, - 0x3F, 0xE0, 0x00, 0xF0, 0x1F, 0xF8, 0x00, 0x3C, 0x07, 0x9E, 0x00, 0x0F, - 0x01, 0xE7, 0xC0, 0x03, 0xC0, 0x78, 0xF0, 0x01, 0xF0, 0x1E, 0x3E, 0x00, - 0x78, 0x0F, 0x87, 0x80, 0x1E, 0x03, 0xC1, 0xF0, 0x07, 0x80, 0xF0, 0x7C, - 0x01, 0xE0, 0x3C, 0x0F, 0x00, 0xF8, 0x1F, 0x03, 0xE0, 0x3C, 0x07, 0x80, - 0x78, 0x0F, 0x01, 0xE0, 0x1F, 0x03, 0xC0, 0x78, 0x07, 0xC1, 0xF0, 0x1E, - 0x00, 0xF8, 0x78, 0x0F, 0x80, 0x3E, 0x1E, 0x03, 0xC0, 0x07, 0x87, 0x80, - 0xF0, 0x01, 0xF1, 0xE0, 0x3C, 0x00, 0x3C, 0xF8, 0x0F, 0x00, 0x0F, 0xBC, - 0x07, 0xC0, 0x03, 0xEF, 0x01, 0xE0, 0x00, 0x7F, 0xC0, 0x78, 0x00, 0x1F, - 0xF0, 0x1E, 0x00, 0x03, 0xFC, 0x0F, 0x80, 0x00, 0xFE, 0x03, 0xC0, 0x00, - 0x1F, 0x80, 0xF0, 0x00, 0x07, 0xE0, 0x3C, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x00, - 0x0F, 0xFF, 0xFF, 0x80, 0x0F, 0xF0, 0x1F, 0xC0, 0x0F, 0xC0, 0x03, 0xF0, - 0x0F, 0x80, 0x00, 0xFC, 0x0F, 0x80, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0x0F, - 0x07, 0x80, 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x01, 0xE3, 0xC0, 0x00, 0x00, - 0xF3, 0xC0, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3D, 0xE0, 0x00, 0x00, - 0x1E, 0xF0, 0x00, 0x00, 0x0F, 0x78, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x03, 0xDE, 0x00, 0x00, 0x01, 0xEF, 0x00, 0x00, - 0x00, 0xF7, 0x80, 0x00, 0x00, 0xFB, 0xC0, 0x00, 0x00, 0x79, 0xE0, 0x00, - 0x00, 0x3C, 0xF0, 0x00, 0x00, 0x3E, 0x78, 0x00, 0x00, 0x1E, 0x3E, 0x00, - 0x00, 0x1F, 0x0F, 0x00, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0x1F, 0x03, 0xF0, - 0x00, 0x1F, 0x00, 0xFC, 0x00, 0x3F, 0x80, 0x3F, 0x80, 0x7F, 0x80, 0x1F, - 0xFF, 0xFF, 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, - 0x0F, 0xF8, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0xE0, 0x3E, 0x00, 0x3F, 0x81, 0xE0, - 0x00, 0x7C, 0x0F, 0x00, 0x01, 0xE0, 0xF8, 0x00, 0x0F, 0x07, 0xC0, 0x00, - 0x78, 0x3C, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x1E, 0x0F, 0x00, 0x01, 0xE0, - 0xF8, 0x00, 0x0F, 0x07, 0xC0, 0x00, 0xF8, 0x3C, 0x00, 0x0F, 0x81, 0xE0, - 0x01, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, - 0x80, 0x3F, 0xFF, 0xF0, 0x01, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x00, 0x0F, 0xFF, 0xFF, - 0x80, 0x0F, 0xF0, 0x1F, 0xC0, 0x0F, 0xC0, 0x03, 0xF0, 0x0F, 0xC0, 0x00, - 0xFC, 0x0F, 0x80, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0x0F, 0x07, 0x80, 0x00, - 0x07, 0xC7, 0xC0, 0x00, 0x01, 0xE3, 0xC0, 0x00, 0x00, 0xF3, 0xC0, 0x00, - 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3D, 0xE0, 0x00, 0x00, 0x1E, 0xF0, 0x00, - 0x00, 0x0F, 0x78, 0x00, 0x00, 0x07, 0xB8, 0x00, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0x03, 0xDE, 0x00, 0x00, 0x01, 0xEF, 0x00, 0x00, 0x00, 0xF7, 0x80, - 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3C, 0xF0, - 0x00, 0x00, 0x3C, 0x78, 0x00, 0x08, 0x3E, 0x3E, 0x00, 0x0E, 0x1E, 0x0F, - 0x00, 0x0F, 0x9F, 0x07, 0xC0, 0x07, 0xFF, 0x03, 0xF0, 0x01, 0xFF, 0x00, - 0xFC, 0x00, 0x7F, 0x00, 0x3F, 0x80, 0xFF, 0x80, 0x1F, 0xFF, 0xFF, 0xE0, - 0x03, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x7E, 0x00, 0x0F, 0xF0, 0x1F, - 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xFF, - 0xC0, 0x07, 0xFF, 0xFF, 0xC0, 0x1F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFE, - 0x03, 0xE0, 0x00, 0xFC, 0x0F, 0x00, 0x01, 0xF0, 0x3C, 0x00, 0x03, 0xC1, - 0xF0, 0x00, 0x0F, 0x07, 0xC0, 0x00, 0x3C, 0x1E, 0x00, 0x00, 0xF0, 0x78, - 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x1E, 0x0F, 0x80, 0x00, 0x78, 0x3E, 0x00, - 0x03, 0xE0, 0xF0, 0x00, 0x1F, 0x03, 0xC0, 0x01, 0xF8, 0x0F, 0xFF, 0xFF, - 0xC0, 0x7F, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0xF0, - 0x1E, 0x00, 0x07, 0xE0, 0xF8, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x1E, 0x0F, - 0x00, 0x00, 0x78, 0x3C, 0x00, 0x01, 0xE0, 0xF0, 0x00, 0x07, 0x87, 0xC0, - 0x00, 0x1E, 0x1F, 0x00, 0x00, 0xF0, 0x78, 0x00, 0x03, 0xC1, 0xE0, 0x00, - 0x0F, 0x07, 0x80, 0x00, 0x3C, 0x3E, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x03, - 0xC3, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0xFC, - 0x00, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xC0, 0x1F, 0xC0, 0x7F, 0x01, - 0xF0, 0x00, 0xFC, 0x0F, 0x00, 0x03, 0xE0, 0xF0, 0x00, 0x0F, 0x07, 0x00, - 0x00, 0x78, 0x78, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0x1E, 0x1E, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, - 0xFF, 0xE0, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0x0F, - 0xFF, 0xC0, 0x00, 0x07, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x3C, 0xF0, 0x00, 0x01, 0xE7, - 0x80, 0x00, 0x0F, 0x3C, 0x00, 0x00, 0x71, 0xE0, 0x00, 0x07, 0x8F, 0x00, - 0x00, 0x3C, 0x7C, 0x00, 0x03, 0xC1, 0xF0, 0x00, 0x7C, 0x0F, 0xE0, 0x1F, - 0xC0, 0x3F, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xF8, 0x00, - 0x03, 0xFE, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFE, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x0F, 0x00, 0x00, 0x3C, 0x1E, - 0x00, 0x00, 0xF8, 0x7C, 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x03, 0xC1, 0xE0, - 0x00, 0x07, 0x83, 0xC0, 0x00, 0x0F, 0x0F, 0x80, 0x00, 0x3E, 0x1F, 0x00, - 0x00, 0x7C, 0x3C, 0x00, 0x00, 0xF0, 0x78, 0x00, 0x01, 0xE0, 0xF0, 0x00, - 0x03, 0xC3, 0xE0, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x1F, 0x0F, 0x00, 0x00, - 0x3C, 0x1E, 0x00, 0x00, 0x78, 0x3C, 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x03, - 0xE1, 0xF0, 0x00, 0x07, 0x83, 0xC0, 0x00, 0x0F, 0x07, 0x80, 0x00, 0x1E, - 0x1F, 0x00, 0x00, 0x7C, 0x3E, 0x00, 0x00, 0xF8, 0x78, 0x00, 0x01, 0xE0, - 0xF0, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x0F, 0x83, 0xC0, 0x00, 0x1E, 0x07, - 0x80, 0x00, 0x7C, 0x0F, 0x80, 0x01, 0xF0, 0x0F, 0x80, 0x07, 0xE0, 0x1F, - 0xC0, 0x7F, 0x80, 0x1F, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0xF0, 0x00, 0x1F, - 0xFF, 0xC0, 0x00, 0x07, 0xFC, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFF, 0xC0, - 0x00, 0x0F, 0xBE, 0x00, 0x00, 0x79, 0xF0, 0x00, 0x07, 0xC7, 0x80, 0x00, - 0x3C, 0x3C, 0x00, 0x03, 0xE1, 0xE0, 0x00, 0x1E, 0x0F, 0x80, 0x01, 0xF0, - 0x7C, 0x00, 0x0F, 0x03, 0xE0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x80, 0x78, - 0x00, 0x78, 0x03, 0xC0, 0x07, 0xC0, 0x1E, 0x00, 0x3C, 0x00, 0xF0, 0x03, - 0xE0, 0x07, 0xC0, 0x1E, 0x00, 0x3E, 0x01, 0xF0, 0x01, 0xF0, 0x0F, 0x00, - 0x07, 0x80, 0xF0, 0x00, 0x3C, 0x07, 0x80, 0x01, 0xE0, 0x78, 0x00, 0x0F, - 0x07, 0xC0, 0x00, 0x7C, 0x3C, 0x00, 0x03, 0xE3, 0xE0, 0x00, 0x1F, 0x1E, - 0x00, 0x00, 0xF9, 0xF0, 0x00, 0x03, 0xCF, 0x00, 0x00, 0x1E, 0xF0, 0x00, - 0x00, 0xF7, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF0, - 0x00, 0x1F, 0x00, 0x03, 0xDE, 0x00, 0x07, 0xE0, 0x00, 0xFB, 0xC0, 0x00, - 0xFC, 0x00, 0x1E, 0x78, 0x00, 0x3F, 0x80, 0x07, 0xCF, 0x00, 0x07, 0xF0, - 0x00, 0xF9, 0xE0, 0x01, 0xFE, 0x00, 0x3E, 0x3C, 0x00, 0x7F, 0xC0, 0x07, - 0xC7, 0x80, 0x0F, 0x78, 0x01, 0xF0, 0xF0, 0x03, 0xEF, 0x00, 0x3E, 0x1E, - 0x00, 0x79, 0xE0, 0x0F, 0x83, 0xC0, 0x1F, 0x3C, 0x01, 0xF0, 0x78, 0x03, - 0xC7, 0x80, 0x3C, 0x0F, 0x00, 0xF8, 0xF0, 0x0F, 0x80, 0xE0, 0x1E, 0x1E, - 0x01, 0xE0, 0x1C, 0x07, 0xC1, 0xC0, 0x7C, 0x03, 0x80, 0xF0, 0x3C, 0x0F, - 0x00, 0x70, 0x3E, 0x07, 0x83, 0xE0, 0x0E, 0x07, 0x80, 0xF0, 0x78, 0x01, - 0xC1, 0xF0, 0x1E, 0x1F, 0x00, 0x3C, 0x3C, 0x03, 0xC3, 0xE0, 0x07, 0x8F, - 0x80, 0x78, 0x78, 0x00, 0xF1, 0xE0, 0x0F, 0x1F, 0x00, 0x1E, 0x7C, 0x01, - 0xE3, 0xC0, 0x03, 0xCF, 0x00, 0x3C, 0xF8, 0x00, 0x7B, 0xE0, 0x07, 0x9E, - 0x00, 0x0F, 0x78, 0x00, 0xF7, 0xC0, 0x01, 0xFF, 0x00, 0x1E, 0xF0, 0x00, - 0x3F, 0xC0, 0x03, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0x80, 0x00, 0xFE, - 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x7C, - 0x00, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x07, 0xC0, 0x00, 0x3E, 0x00, - 0x7C, 0x00, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x01, 0xF0, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x7C, 0x00, 0x00, 0xF8, - 0x0F, 0x80, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x00, 0x7C, 0x1F, 0x00, 0x00, - 0x07, 0xC3, 0xE0, 0x00, 0x00, 0x7C, 0x7C, 0x00, 0x00, 0x03, 0xEF, 0x80, - 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x0F, 0xBE, 0x00, - 0x00, 0x01, 0xF3, 0xE0, 0x00, 0x00, 0x3E, 0x1F, 0x00, 0x00, 0x03, 0xE1, - 0xF0, 0x00, 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x01, - 0xF0, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x03, 0xE0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x03, 0xF0, 0x03, 0xF0, 0x00, - 0x1F, 0x00, 0x7E, 0x00, 0x01, 0xF8, 0x0F, 0xC0, 0x00, 0x0F, 0x80, 0xF8, - 0x00, 0x00, 0x7D, 0xF0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x1F, 0x1F, 0x80, - 0x00, 0xF8, 0x3E, 0x00, 0x03, 0xE0, 0xF8, 0x00, 0x1F, 0x01, 0xF0, 0x00, - 0xF8, 0x07, 0xC0, 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0x3E, 0x01, 0xF0, - 0x00, 0xF8, 0x07, 0xC0, 0x01, 0xF0, 0x3E, 0x00, 0x07, 0xC1, 0xF0, 0x00, - 0x0F, 0x0F, 0x80, 0x00, 0x3E, 0x7C, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x01, - 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, - 0x1F, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xFE, - 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xFF, 0x80, 0x7F, - 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xF8, 0x00, 0x00, 0x7F, 0xC0, 0x1F, - 0xF0, 0x07, 0xFC, 0x01, 0xFE, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, - 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, - 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, - 0xE0, 0x00, 0x7F, 0xC0, 0x3F, 0xE0, 0x0F, 0xF8, 0x03, 0xFE, 0x00, 0xE3, - 0x8E, 0x38, 0xE1, 0x86, 0x18, 0x61, 0x87, 0x1C, 0x71, 0xC7, 0x0C, 0x30, - 0xC3, 0x0C, 0x38, 0xE3, 0x8E, 0x38, 0x61, 0x86, 0x18, 0x61, 0xC7, 0x1C, - 0x71, 0xC0, 0x00, 0x7F, 0xC0, 0x1F, 0xF0, 0x07, 0xFC, 0x03, 0xFE, 0x00, - 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, - 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, - 0x3C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, - 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, - 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x03, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x7F, 0x80, 0x3F, 0xE0, - 0x0F, 0xF8, 0x03, 0xFE, 0x00, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x1F, 0x00, - 0x1F, 0xC0, 0x0E, 0xE0, 0x0E, 0x70, 0x0F, 0x38, 0x07, 0x1C, 0x07, 0x0E, - 0x03, 0x83, 0x83, 0x81, 0xC3, 0xC0, 0xE1, 0xC0, 0x71, 0xC0, 0x39, 0xE0, - 0x0E, 0xE0, 0x07, 0xF0, 0x03, 0xF0, 0x01, 0xC0, 0x7F, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0xF8, 0x78, 0x3C, 0x1C, 0x0E, 0x0E, 0x07, 0x00, - 0x1F, 0xE0, 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, 0x7E, - 0x07, 0xE1, 0xF0, 0x07, 0xC3, 0xC0, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xF0, 0x00, 0x07, 0xE0, 0x0F, 0xFF, - 0xC0, 0xFF, 0xFF, 0x07, 0xFF, 0x9E, 0x1F, 0xC0, 0x3C, 0x7C, 0x00, 0x78, - 0xF0, 0x00, 0xF3, 0xC0, 0x03, 0xC7, 0x80, 0x07, 0x8F, 0x00, 0x1F, 0x1E, - 0x00, 0x7E, 0x3F, 0x07, 0xFC, 0x3F, 0xFF, 0x7E, 0x7F, 0xFC, 0xFC, 0x7F, - 0xF0, 0xF8, 0x3F, 0x00, 0xF0, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x0F, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x83, 0xE0, 0x03, 0xC7, 0xFC, - 0x01, 0xEF, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0xF7, 0x83, 0xF0, 0x7F, 0x00, - 0xF8, 0x3F, 0x00, 0x3E, 0x1F, 0x00, 0x0F, 0x1F, 0x80, 0x07, 0x8F, 0x80, - 0x03, 0xC7, 0x80, 0x01, 0xE3, 0xC0, 0x00, 0xF1, 0xE0, 0x00, 0x79, 0xF0, - 0x00, 0x3C, 0xF0, 0x00, 0x3C, 0x78, 0x00, 0x1E, 0x3C, 0x00, 0x0F, 0x1E, - 0x00, 0x0F, 0x9F, 0x00, 0x07, 0x8F, 0xC0, 0x07, 0xC7, 0xE0, 0x07, 0xC3, - 0xF8, 0x07, 0xC1, 0xFE, 0x0F, 0xC1, 0xEF, 0xFF, 0xE0, 0xF3, 0xFF, 0xC0, - 0x78, 0xFF, 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x03, 0xFF, - 0x80, 0x3F, 0xFF, 0x01, 0xFF, 0xFE, 0x0F, 0xE0, 0xF8, 0x7E, 0x01, 0xF1, - 0xF0, 0x03, 0xCF, 0x80, 0x0F, 0x3C, 0x00, 0x3D, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x1E, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x0F, 0x3C, - 0x00, 0x3C, 0xF8, 0x01, 0xE1, 0xF0, 0x0F, 0x87, 0xE0, 0xFC, 0x0F, 0xFF, - 0xE0, 0x3F, 0xFF, 0x00, 0x7F, 0xF8, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x3C, 0x00, 0x3F, 0x07, 0x80, 0x1F, 0xF8, 0xF0, 0x0F, 0xFF, 0x3E, 0x03, - 0xFF, 0xF7, 0x80, 0xFC, 0x1F, 0xF0, 0x3F, 0x00, 0xFE, 0x07, 0xC0, 0x0F, - 0xC1, 0xF0, 0x01, 0xF0, 0x3C, 0x00, 0x3E, 0x0F, 0x80, 0x07, 0xC1, 0xE0, - 0x00, 0x78, 0x3C, 0x00, 0x1F, 0x0F, 0x80, 0x03, 0xC1, 0xE0, 0x00, 0x78, - 0x3C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xE0, 0xF0, 0x00, 0x7C, 0x1E, 0x00, - 0x0F, 0x03, 0xC0, 0x03, 0xE0, 0x78, 0x00, 0x7C, 0x0F, 0x80, 0x1F, 0x80, - 0xF8, 0x07, 0xF0, 0x1F, 0x83, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0x3F, 0xFE, - 0xF0, 0x03, 0xFF, 0x1E, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x00, 0x1F, 0x80, - 0x01, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0xFE, 0x0F, 0xC1, - 0xF0, 0x07, 0xC7, 0xC0, 0x0F, 0x8F, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0x78, - 0x00, 0x3D, 0xE0, 0x00, 0x7B, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xBF, 0xFF, 0xFF, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x07, 0x80, 0x03, 0xCF, 0x80, 0x0F, 0x0F, 0x80, 0x3E, - 0x1F, 0x81, 0xF8, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0x80, 0x1F, 0xFC, 0x00, - 0x0F, 0xE0, 0x00, 0x00, 0x3E, 0x01, 0xFC, 0x07, 0xF8, 0x0F, 0xE0, 0x3E, - 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0xC0, 0x7F, 0xF0, 0xFF, 0xE3, - 0xFF, 0xC0, 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x3E, - 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x80, 0x1E, 0x00, - 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, - 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x07, - 0xFE, 0x3C, 0x01, 0xFF, 0xE7, 0x00, 0xFF, 0xFE, 0xE0, 0x1F, 0x83, 0xFC, - 0x07, 0xC0, 0x3F, 0x81, 0xF0, 0x03, 0xF0, 0x3C, 0x00, 0x7C, 0x0F, 0x00, - 0x0F, 0x81, 0xE0, 0x01, 0xF0, 0x78, 0x00, 0x3E, 0x0F, 0x00, 0x07, 0xC1, - 0xE0, 0x00, 0xF0, 0x38, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0xC1, 0xE0, 0x00, - 0xF8, 0x3C, 0x00, 0x1F, 0x07, 0x80, 0x03, 0xC0, 0xF0, 0x00, 0xF8, 0x1E, - 0x00, 0x3F, 0x03, 0xE0, 0x07, 0xE0, 0x3E, 0x01, 0xF8, 0x07, 0xE0, 0xFF, - 0x00, 0x7F, 0xFD, 0xE0, 0x0F, 0xFF, 0x3C, 0x00, 0xFF, 0xCF, 0x00, 0x07, - 0xE1, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x01, 0xE0, 0x03, 0xE0, - 0x3C, 0x00, 0xF8, 0x07, 0xE0, 0x7F, 0x00, 0x7F, 0xFF, 0xC0, 0x0F, 0xFF, - 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x78, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x83, 0xF0, 0x0F, - 0x1F, 0xF0, 0x1E, 0xFF, 0xF0, 0x3F, 0xFF, 0xE0, 0xFF, 0x87, 0xE1, 0xFC, - 0x07, 0xC3, 0xF0, 0x07, 0x87, 0xC0, 0x0F, 0x1F, 0x00, 0x1E, 0x3E, 0x00, - 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x01, 0xE1, 0xE0, 0x03, 0xC7, 0xC0, 0x07, - 0x8F, 0x00, 0x0F, 0x1E, 0x00, 0x1E, 0x3C, 0x00, 0x78, 0x78, 0x00, 0xF1, - 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x0F, 0x8F, 0x00, 0x1E, 0x1E, - 0x00, 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xC0, 0x01, - 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, 0xC0, - 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, - 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x00, 0x00, 0x07, - 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, - 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, - 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, - 0x07, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, - 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, - 0x78, 0x00, 0x3E, 0x00, 0x7F, 0x80, 0x3F, 0xC0, 0x0F, 0xE0, 0x03, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x0F, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x03, 0xC0, 0x0F, 0x81, 0xE0, 0x0F, 0x80, - 0xF0, 0x0F, 0x80, 0xF0, 0x1F, 0x00, 0x78, 0x1F, 0x00, 0x3C, 0x1F, 0x00, - 0x1E, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x0F, 0x1E, 0x00, 0x07, 0xBF, 0x80, - 0x03, 0xFF, 0xC0, 0x01, 0xFD, 0xE0, 0x01, 0xFC, 0xF8, 0x00, 0xFC, 0x3C, - 0x00, 0x7C, 0x1F, 0x00, 0x3C, 0x07, 0x80, 0x1E, 0x03, 0xC0, 0x1F, 0x01, - 0xF0, 0x0F, 0x00, 0x78, 0x07, 0x80, 0x3E, 0x03, 0xC0, 0x0F, 0x01, 0xE0, - 0x07, 0x81, 0xE0, 0x03, 0xE0, 0xF0, 0x00, 0xF0, 0x78, 0x00, 0x7C, 0x00, - 0x01, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x3C, 0x07, - 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, - 0xF0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x00, 0x00, - 0x07, 0xE0, 0x1F, 0x80, 0xF9, 0xFF, 0x07, 0xFC, 0x0F, 0x3F, 0xF8, 0xFF, - 0xE0, 0xF7, 0xFF, 0x9F, 0xFF, 0x0F, 0xF0, 0xFF, 0xC3, 0xF0, 0xFC, 0x07, - 0xF8, 0x1F, 0x1F, 0x80, 0x3F, 0x00, 0xF1, 0xF0, 0x03, 0xE0, 0x0F, 0x1E, - 0x00, 0x3C, 0x00, 0xF1, 0xE0, 0x03, 0xC0, 0x0F, 0x1E, 0x00, 0x3C, 0x00, - 0xF1, 0xE0, 0x07, 0x80, 0x0F, 0x3C, 0x00, 0x78, 0x01, 0xF3, 0xC0, 0x07, - 0x80, 0x1E, 0x3C, 0x00, 0x78, 0x01, 0xE3, 0xC0, 0x0F, 0x80, 0x1E, 0x3C, - 0x00, 0xF0, 0x01, 0xE7, 0xC0, 0x0F, 0x00, 0x3C, 0x78, 0x00, 0xF0, 0x03, - 0xC7, 0x80, 0x0F, 0x00, 0x3C, 0x78, 0x01, 0xE0, 0x03, 0xC7, 0x80, 0x1E, - 0x00, 0x3C, 0xF8, 0x01, 0xE0, 0x07, 0x8F, 0x00, 0x1E, 0x00, 0x78, 0xF0, - 0x01, 0xE0, 0x07, 0x8F, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x07, 0xE0, 0x1F, - 0x3F, 0xF0, 0x3C, 0xFF, 0xF0, 0x7B, 0xFF, 0xE0, 0xFF, 0x07, 0xE1, 0xF8, - 0x07, 0xC7, 0xE0, 0x07, 0x8F, 0x80, 0x0F, 0x1F, 0x00, 0x1E, 0x3C, 0x00, - 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x07, - 0x8F, 0x00, 0x0F, 0x1E, 0x00, 0x3E, 0x3C, 0x00, 0x78, 0xF0, 0x00, 0xF1, - 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x0F, 0x8F, 0x00, 0x1E, 0x3E, - 0x00, 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xC0, 0x00, - 0x1F, 0x80, 0x01, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0xFE, - 0x0F, 0xC1, 0xF0, 0x0F, 0x87, 0xC0, 0x0F, 0x8F, 0x00, 0x0F, 0x3C, 0x00, - 0x1E, 0x78, 0x00, 0x3D, 0xE0, 0x00, 0x7B, 0xC0, 0x00, 0xF7, 0x80, 0x01, - 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0x78, 0x00, 0x1E, 0xF0, 0x00, 0x3D, - 0xE0, 0x00, 0xF3, 0xC0, 0x01, 0xE7, 0x80, 0x07, 0x8F, 0x80, 0x1F, 0x0F, - 0x80, 0x7C, 0x1F, 0x83, 0xF8, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x1F, - 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x3C, 0x7F, 0xE0, - 0x07, 0xBF, 0xFE, 0x01, 0xFF, 0xFF, 0xC0, 0x3D, 0xE0, 0xFC, 0x07, 0xF0, - 0x0F, 0x80, 0xFC, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x07, 0xC0, 0x01, 0xE0, - 0xF8, 0x00, 0x3C, 0x1F, 0x00, 0x07, 0x83, 0xC0, 0x00, 0xF0, 0x78, 0x00, - 0x1E, 0x1F, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0xF0, 0x78, 0x00, 0x1E, 0x0F, - 0x00, 0x03, 0xC3, 0xE0, 0x00, 0xF8, 0x7C, 0x00, 0x1E, 0x0F, 0x80, 0x07, - 0xC1, 0xF8, 0x01, 0xF0, 0x3F, 0x80, 0x7C, 0x0F, 0xF8, 0x3F, 0x81, 0xEF, - 0xFF, 0xE0, 0x3C, 0xFF, 0xF8, 0x07, 0x8F, 0xFC, 0x00, 0xF0, 0xFE, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x3F, - 0xF8, 0xF0, 0x1F, 0xFF, 0x3C, 0x0F, 0xFF, 0xDF, 0x07, 0xE0, 0xFF, 0x83, - 0xE0, 0x1F, 0xE1, 0xF0, 0x03, 0xF8, 0x78, 0x00, 0xFE, 0x3C, 0x00, 0x1F, - 0x8F, 0x00, 0x07, 0xC7, 0x80, 0x01, 0xF1, 0xE0, 0x00, 0x7C, 0x78, 0x00, - 0x1F, 0x3C, 0x00, 0x0F, 0x8F, 0x00, 0x03, 0xE3, 0xC0, 0x00, 0xF8, 0xF0, - 0x00, 0x3E, 0x3C, 0x00, 0x1F, 0x8F, 0x00, 0x0F, 0xC3, 0xC0, 0x03, 0xF0, - 0xF8, 0x01, 0xFC, 0x1F, 0x00, 0xFF, 0x07, 0xE0, 0xFF, 0xC0, 0xFF, 0xFD, - 0xE0, 0x1F, 0xFE, 0x78, 0x03, 0xFF, 0x3E, 0x00, 0x3F, 0x0F, 0x80, 0x00, - 0x03, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x07, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0x87, 0xCF, 0xC3, 0xCF, 0xE1, 0xEF, - 0xE0, 0xFF, 0x80, 0x7F, 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x0F, - 0x00, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0x78, 0x00, 0x3C, 0x00, 0x3E, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, - 0x03, 0xC0, 0x03, 0xE0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x00, - 0x00, 0x3F, 0x80, 0x07, 0xFF, 0x00, 0xFF, 0xFC, 0x0F, 0xFF, 0xE0, 0xFC, - 0x1F, 0x87, 0x80, 0x3C, 0x7C, 0x01, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x00, - 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xFF, - 0xC0, 0x07, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xBC, - 0x00, 0x3D, 0xE0, 0x01, 0xEF, 0x00, 0x1F, 0x7C, 0x01, 0xF3, 0xF0, 0x1F, - 0x8F, 0xFF, 0xF8, 0x7F, 0xFF, 0x80, 0xFF, 0xF0, 0x01, 0xFE, 0x00, 0x03, - 0xC0, 0x1E, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC1, 0xFF, 0xEF, 0xFF, - 0x7F, 0xF0, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, - 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xE0, - 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0xF0, 0x7F, 0x81, - 0xF8, 0x07, 0xC0, 0x0F, 0x00, 0x0F, 0x0F, 0x00, 0x1E, 0x0F, 0x00, 0x1E, - 0x1F, 0x00, 0x1E, 0x1E, 0x00, 0x1E, 0x1E, 0x00, 0x1E, 0x1E, 0x00, 0x3C, - 0x1E, 0x00, 0x3C, 0x3E, 0x00, 0x3C, 0x3C, 0x00, 0x3C, 0x3C, 0x00, 0x3C, - 0x3C, 0x00, 0x7C, 0x3C, 0x00, 0x78, 0x78, 0x00, 0x78, 0x78, 0x00, 0x78, - 0x78, 0x00, 0x78, 0x78, 0x00, 0xF8, 0x78, 0x00, 0xF0, 0xF0, 0x01, 0xF0, - 0xF0, 0x03, 0xF0, 0xF0, 0x07, 0xF0, 0xF8, 0x1F, 0xF0, 0xFF, 0xFF, 0xE0, - 0x7F, 0xFD, 0xE0, 0x3F, 0xF1, 0xE0, 0x1F, 0xC0, 0x00, 0xF0, 0x00, 0x7F, - 0xC0, 0x01, 0xEF, 0x00, 0x0F, 0xBC, 0x00, 0x3C, 0x78, 0x01, 0xE1, 0xE0, - 0x07, 0x87, 0x80, 0x3C, 0x1E, 0x01, 0xF0, 0x78, 0x07, 0x81, 0xE0, 0x3E, - 0x07, 0x80, 0xF0, 0x1E, 0x07, 0x80, 0x38, 0x1E, 0x00, 0xF0, 0xF0, 0x03, - 0xC7, 0xC0, 0x0F, 0x1E, 0x00, 0x3C, 0xF0, 0x00, 0xF3, 0xC0, 0x03, 0xDE, - 0x00, 0x07, 0x78, 0x00, 0x1F, 0xC0, 0x00, 0x7E, 0x00, 0x01, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x07, 0xC0, 0x0F, 0x78, 0x03, - 0xE0, 0x0F, 0xBC, 0x03, 0xF0, 0x07, 0x9E, 0x01, 0xF8, 0x03, 0xCF, 0x00, - 0xFC, 0x03, 0xC7, 0x80, 0xFE, 0x01, 0xE3, 0xC0, 0x77, 0x01, 0xE0, 0xE0, - 0x7B, 0x80, 0xF0, 0x70, 0x39, 0xC0, 0xF0, 0x38, 0x3C, 0xE0, 0x78, 0x1C, - 0x1E, 0x78, 0x78, 0x0F, 0x1E, 0x3C, 0x3C, 0x07, 0x8F, 0x1E, 0x3C, 0x03, - 0xC7, 0x0F, 0x1E, 0x01, 0xE7, 0x87, 0x9E, 0x00, 0xF3, 0x81, 0xCF, 0x00, - 0x7B, 0xC0, 0xEF, 0x00, 0x3D, 0xC0, 0x77, 0x80, 0x1F, 0xE0, 0x3F, 0x80, - 0x0F, 0xF0, 0x1F, 0xC0, 0x07, 0xF0, 0x0F, 0xC0, 0x01, 0xF8, 0x07, 0xE0, - 0x00, 0xF8, 0x03, 0xE0, 0x00, 0x7C, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0xF0, - 0x00, 0x00, 0x03, 0xC0, 0x07, 0xC0, 0xF8, 0x01, 0xE0, 0x1E, 0x00, 0xF0, - 0x07, 0x80, 0x78, 0x00, 0xF0, 0x3C, 0x00, 0x3C, 0x1F, 0x00, 0x0F, 0x8F, - 0x80, 0x01, 0xE7, 0xC0, 0x00, 0x7D, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0xC0, 0x00, - 0x07, 0xF0, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xF7, 0x80, 0x00, 0xF9, 0xF0, - 0x00, 0x3C, 0x3C, 0x00, 0x1E, 0x0F, 0x80, 0x0F, 0x01, 0xE0, 0x07, 0x80, - 0x7C, 0x03, 0xE0, 0x0F, 0x01, 0xF0, 0x03, 0xE0, 0xF8, 0x00, 0x78, 0x00, - 0x03, 0xC0, 0x01, 0xE0, 0x78, 0x00, 0x78, 0x0F, 0x00, 0x0F, 0x01, 0xE0, - 0x03, 0xC0, 0x3C, 0x00, 0x78, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x07, 0xC0, - 0x0F, 0x00, 0xF0, 0x01, 0xE0, 0x3C, 0x00, 0x3C, 0x07, 0x80, 0x07, 0x81, - 0xE0, 0x00, 0xF0, 0x3C, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0xC1, 0xC0, 0x00, - 0x3C, 0x78, 0x00, 0x07, 0x9E, 0x00, 0x00, 0xF3, 0xC0, 0x00, 0x1E, 0xF0, - 0x00, 0x03, 0xDE, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x0F, 0xE0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x0F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x00, 0x01, - 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xE0, - 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, - 0x00, 0x01, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, - 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, - 0x00, 0x03, 0xC0, 0x00, 0x03, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x7E, 0x00, 0xFE, - 0x00, 0xF0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x07, 0x80, - 0x07, 0x80, 0x0F, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x00, - 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, - 0x38, 0x00, 0x38, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x78, 0x00, 0x78, 0x00, - 0x78, 0x00, 0x78, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0x7C, 0x00, 0x00, 0x70, - 0x07, 0x00, 0x60, 0x06, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0C, 0x01, 0xC0, - 0x1C, 0x01, 0xC0, 0x1C, 0x01, 0x80, 0x38, 0x03, 0x80, 0x38, 0x03, 0x00, - 0x30, 0x07, 0x00, 0x70, 0x07, 0x00, 0x60, 0x0E, 0x00, 0xE0, 0x0E, 0x00, - 0xE0, 0x0C, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x1C, 0x01, 0x80, 0x38, 0x03, - 0x80, 0x38, 0x03, 0x00, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x60, 0x0E, - 0x00, 0xE0, 0x06, 0x00, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3F, 0x00, 0x0F, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x1C, - 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0F, - 0x00, 0x07, 0x00, 0x1F, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x00, 0xF0, - 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xE0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x07, 0x80, - 0x0F, 0x00, 0x7F, 0x00, 0x7E, 0x00, 0xF8, 0x00, 0x0F, 0x00, 0x01, 0xFE, - 0x00, 0xCF, 0xFC, 0x0E, 0xE3, 0xF0, 0xE6, 0x07, 0xFF, 0x60, 0x0F, 0xF0, - 0x00, 0x1E, 0x00}; - -const GFXglyph FreeSansOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 13, 0, 1}, // 0x20 ' ' - {0, 11, 34, 13, 6, -33}, // 0x21 '!' - {47, 13, 12, 17, 8, -32}, // 0x22 '"' - {67, 28, 34, 26, 3, -32}, // 0x23 '#' - {186, 26, 42, 26, 3, -35}, // 0x24 '$' - {323, 36, 34, 42, 6, -32}, // 0x25 '%' - {476, 26, 34, 31, 4, -32}, // 0x26 '&' - {587, 5, 12, 9, 8, -32}, // 0x27 ''' - {595, 15, 44, 16, 5, -33}, // 0x28 '(' - {678, 15, 44, 16, 1, -33}, // 0x29 ')' - {761, 14, 13, 18, 8, -33}, // 0x2A '*' - {784, 23, 22, 27, 5, -20}, // 0x2B '+' - {848, 7, 12, 13, 3, -4}, // 0x2C ',' - {859, 12, 4, 16, 5, -14}, // 0x2D '-' - {865, 6, 5, 13, 4, -4}, // 0x2E '.' - {869, 21, 35, 13, -1, -33}, // 0x2F '/' - {961, 23, 34, 26, 5, -32}, // 0x30 '0' - {1059, 13, 33, 26, 10, -32}, // 0x31 '1' - {1113, 27, 33, 26, 2, -32}, // 0x32 '2' - {1225, 25, 34, 26, 3, -32}, // 0x33 '3' - {1332, 24, 33, 26, 3, -32}, // 0x34 '4' - {1431, 27, 34, 26, 3, -32}, // 0x35 '5' - {1546, 24, 34, 26, 4, -32}, // 0x36 '6' - {1648, 26, 33, 26, 6, -32}, // 0x37 '7' - {1756, 25, 34, 26, 3, -32}, // 0x38 '8' - {1863, 24, 34, 26, 4, -32}, // 0x39 '9' - {1965, 10, 25, 13, 5, -24}, // 0x3A ':' - {1997, 11, 32, 13, 4, -24}, // 0x3B ';' - {2041, 26, 23, 27, 4, -22}, // 0x3C '<' - {2116, 26, 12, 27, 3, -16}, // 0x3D '=' - {2155, 26, 23, 27, 2, -21}, // 0x3E '>' - {2230, 20, 35, 26, 9, -34}, // 0x3F '?' - {2318, 45, 42, 48, 4, -34}, // 0x40 '@' - {2555, 30, 34, 31, 1, -33}, // 0x41 'A' - {2683, 29, 34, 31, 4, -33}, // 0x42 'B' - {2807, 30, 36, 33, 5, -34}, // 0x43 'C' - {2942, 31, 34, 33, 4, -33}, // 0x44 'D' - {3074, 31, 34, 31, 4, -33}, // 0x45 'E' - {3206, 30, 34, 28, 4, -33}, // 0x46 'F' - {3334, 33, 36, 37, 5, -34}, // 0x47 'G' - {3483, 33, 34, 34, 4, -33}, // 0x48 'H' - {3624, 11, 34, 13, 5, -33}, // 0x49 'I' - {3671, 25, 35, 24, 2, -33}, // 0x4A 'J' - {3781, 34, 34, 31, 4, -33}, // 0x4B 'K' - {3926, 22, 34, 26, 4, -33}, // 0x4C 'L' - {4020, 39, 34, 40, 4, -33}, // 0x4D 'M' - {4186, 34, 34, 34, 4, -33}, // 0x4E 'N' - {4331, 33, 36, 36, 5, -34}, // 0x4F 'O' - {4480, 29, 34, 30, 4, -33}, // 0x50 'P' - {4604, 33, 38, 36, 5, -34}, // 0x51 'Q' - {4761, 30, 34, 33, 4, -33}, // 0x52 'R' - {4889, 29, 36, 31, 4, -34}, // 0x53 'S' - {5020, 28, 34, 29, 7, -33}, // 0x54 'T' - {5139, 31, 35, 34, 6, -33}, // 0x55 'U' - {5275, 29, 34, 30, 8, -33}, // 0x56 'V' - {5399, 43, 34, 44, 8, -33}, // 0x57 'W' - {5582, 36, 34, 31, 1, -33}, // 0x58 'X' - {5735, 30, 34, 32, 8, -33}, // 0x59 'Y' - {5863, 34, 34, 29, 1, -33}, // 0x5A 'Z' - {6008, 18, 44, 13, 1, -33}, // 0x5B '[' - {6107, 6, 35, 13, 7, -33}, // 0x5C '\' - {6134, 18, 44, 13, -1, -33}, // 0x5D ']' - {6233, 17, 18, 22, 6, -32}, // 0x5E '^' - {6272, 29, 2, 26, -3, 7}, // 0x5F '_' - {6280, 8, 7, 16, 8, -34}, // 0x60 '`' - {6287, 23, 27, 26, 3, -25}, // 0x61 'a' - {6365, 25, 35, 26, 3, -33}, // 0x62 'b' - {6475, 22, 27, 24, 4, -25}, // 0x63 'c' - {6550, 27, 35, 26, 4, -33}, // 0x64 'd' - {6669, 23, 27, 26, 4, -25}, // 0x65 'e' - {6747, 15, 34, 12, 3, -33}, // 0x66 'f' - {6811, 27, 36, 26, 2, -25}, // 0x67 'g' - {6933, 23, 34, 25, 3, -33}, // 0x68 'h' - {7031, 11, 34, 10, 3, -33}, // 0x69 'i' - {7078, 18, 44, 11, -2, -33}, // 0x6A 'j' - {7177, 25, 34, 24, 3, -33}, // 0x6B 'k' - {7284, 11, 34, 10, 3, -33}, // 0x6C 'l' - {7331, 36, 26, 38, 3, -25}, // 0x6D 'm' - {7448, 23, 26, 25, 3, -25}, // 0x6E 'n' - {7523, 23, 27, 26, 4, -25}, // 0x6F 'o' - {7601, 27, 36, 26, 1, -25}, // 0x70 'p' - {7723, 26, 36, 26, 3, -25}, // 0x71 'q' - {7840, 17, 26, 15, 3, -25}, // 0x72 'r' - {7896, 21, 27, 24, 3, -25}, // 0x73 's' - {7967, 13, 32, 12, 4, -30}, // 0x74 't' - {8019, 24, 26, 25, 4, -24}, // 0x75 'u' - {8097, 22, 25, 23, 6, -24}, // 0x76 'v' - {8166, 33, 25, 34, 6, -24}, // 0x77 'w' - {8270, 26, 25, 23, 1, -24}, // 0x78 'x' - {8352, 27, 35, 23, 0, -24}, // 0x79 'y' - {8471, 25, 25, 23, 1, -24}, // 0x7A 'z' - {8550, 16, 44, 16, 5, -33}, // 0x7B '{' - {8638, 12, 44, 12, 3, -33}, // 0x7C '|' - {8704, 16, 44, 16, -1, -33}, // 0x7D '}' - {8792, 21, 7, 27, 6, -19}}; // 0x7E '~' - -const GFXfont FreeSansOblique24pt7b PROGMEM = { - (uint8_t *)FreeSansOblique24pt7bBitmaps, - (GFXglyph *)FreeSansOblique24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 9483 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h deleted file mode 100644 index 0b5db81..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h +++ /dev/null @@ -1,222 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique9pt7bBitmaps[] PROGMEM = { - 0x10, 0x84, 0x22, 0x10, 0x84, 0x42, 0x10, 0x08, 0x00, 0xDE, 0xE5, 0x20, - 0x06, 0x40, 0x88, 0x13, 0x06, 0x43, 0xFE, 0x32, 0x04, 0x40, 0x98, 0x32, - 0x1F, 0xF0, 0x98, 0x22, 0x04, 0xC0, 0x02, 0x01, 0xF8, 0x6B, 0x99, 0x33, - 0x40, 0x68, 0x0F, 0x00, 0xF8, 0x07, 0xC1, 0x1B, 0x23, 0x64, 0x4E, 0x98, - 0xFC, 0x04, 0x00, 0x80, 0x3C, 0x08, 0xCC, 0x23, 0x18, 0x86, 0x32, 0x0C, - 0x64, 0x19, 0x90, 0x1E, 0x40, 0x01, 0x1E, 0x02, 0x66, 0x09, 0x8C, 0x23, - 0x18, 0x86, 0x62, 0x07, 0x80, 0x0F, 0x06, 0x63, 0x18, 0xC6, 0x3F, 0x07, - 0x03, 0xC1, 0xB3, 0xC7, 0xB0, 0xCC, 0x33, 0x3E, 0x79, 0x80, 0xFA, 0x04, - 0x10, 0x60, 0x83, 0x04, 0x18, 0x30, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x10, - 0x30, 0x20, 0x08, 0x18, 0x10, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x18, 0x30, - 0x41, 0x82, 0x0C, 0x10, 0x40, 0x19, 0x73, 0x16, 0x48, 0x04, 0x04, 0x02, - 0x1F, 0xF0, 0x80, 0x80, 0x40, 0x20, 0x6D, 0x28, 0xF0, 0xC0, 0x01, 0x02, - 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x0F, - 0x19, 0xC8, 0x6C, 0x36, 0x1A, 0x0F, 0x05, 0x86, 0xC3, 0x61, 0xB1, 0x9C, - 0x87, 0x80, 0x08, 0xCD, 0xE3, 0x18, 0xC4, 0x23, 0x18, 0xC4, 0x00, 0x07, - 0x83, 0x1C, 0x41, 0x98, 0x30, 0x06, 0x01, 0x80, 0x60, 0x38, 0x1C, 0x06, - 0x01, 0x80, 0x20, 0x0F, 0xF8, 0x0F, 0x86, 0x73, 0x0C, 0x83, 0x00, 0xC0, - 0x60, 0xE0, 0x06, 0x01, 0xB0, 0x6C, 0x13, 0x8C, 0x7C, 0x00, 0x00, 0x80, - 0xC0, 0xE0, 0xA0, 0x90, 0x98, 0x8C, 0x86, 0xFF, 0x81, 0x01, 0x80, 0xC0, - 0x60, 0x0F, 0xC3, 0x00, 0x40, 0x08, 0x03, 0x00, 0x7F, 0x1C, 0x70, 0x06, - 0x00, 0xC0, 0x1B, 0x06, 0x71, 0x87, 0xE0, 0x0F, 0x86, 0x73, 0x0D, 0x80, - 0x60, 0x1F, 0xCF, 0x3B, 0x86, 0xC1, 0xB0, 0x6C, 0x33, 0x98, 0x3C, 0x00, - 0x7F, 0xC0, 0x20, 0x10, 0x0C, 0x06, 0x01, 0x00, 0x80, 0x60, 0x10, 0x0C, - 0x02, 0x01, 0x80, 0x40, 0x00, 0x0F, 0x86, 0x73, 0x0C, 0xC3, 0x30, 0xCC, - 0x61, 0xE1, 0x86, 0x41, 0xB0, 0x6C, 0x13, 0x8C, 0x3E, 0x00, 0x0F, 0x06, - 0x73, 0x0D, 0x83, 0x60, 0xD8, 0x77, 0x3C, 0xFE, 0x01, 0x80, 0x6C, 0x33, - 0x98, 0x7C, 0x00, 0x30, 0x00, 0x00, 0x00, 0xC0, 0x18, 0x00, 0x00, 0x00, - 0x0C, 0x62, 0x11, 0x00, 0x00, 0x01, 0xC3, 0x8F, 0x0C, 0x07, 0x00, 0xE0, - 0x1E, 0x01, 0x00, 0x7F, 0xC0, 0x00, 0x03, 0xFE, 0x40, 0x3C, 0x03, 0x80, - 0x70, 0x18, 0x78, 0xE1, 0xC0, 0x00, 0x00, 0x1F, 0x30, 0xD0, 0x78, 0x30, - 0x30, 0x30, 0x30, 0x30, 0x30, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0xFE, - 0x00, 0xC0, 0xE0, 0xC0, 0x18, 0x61, 0xD3, 0x31, 0x9C, 0xD8, 0xC2, 0x36, - 0x31, 0x8F, 0x18, 0x67, 0xC6, 0x11, 0xB1, 0x8C, 0xCC, 0x67, 0x63, 0x0E, - 0xF0, 0x60, 0x00, 0x1C, 0x00, 0x01, 0x81, 0x00, 0x1F, 0xC0, 0x01, 0xC0, - 0x1C, 0x03, 0xC0, 0x24, 0x06, 0x60, 0x46, 0x0C, 0x61, 0x86, 0x1F, 0xE3, - 0x06, 0x20, 0x26, 0x03, 0x40, 0x30, 0x1F, 0xE1, 0x87, 0x30, 0x33, 0x03, - 0x30, 0x23, 0x06, 0x3F, 0xC6, 0x06, 0x60, 0x66, 0x06, 0x60, 0x66, 0x0C, - 0x7F, 0x80, 0x07, 0xC1, 0x86, 0x30, 0x32, 0x03, 0x60, 0x04, 0x00, 0xC0, - 0x0C, 0x00, 0xC0, 0x6C, 0x06, 0xC0, 0xC6, 0x18, 0x3E, 0x00, 0x1F, 0xE0, - 0xC1, 0x84, 0x06, 0x60, 0x33, 0x01, 0x98, 0x0C, 0x80, 0x64, 0x02, 0x60, - 0x33, 0x01, 0x98, 0x18, 0x81, 0x87, 0xF0, 0x00, 0x1F, 0xF1, 0x80, 0x10, - 0x03, 0x00, 0x30, 0x03, 0x00, 0x3F, 0xE2, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x04, 0x00, 0x7F, 0xC0, 0x1F, 0xF1, 0x80, 0x10, 0x03, 0x00, 0x30, 0x03, - 0x00, 0x3F, 0xC2, 0x00, 0x60, 0x06, 0x00, 0x60, 0x04, 0x00, 0x40, 0x00, - 0x07, 0xE0, 0xE1, 0x8C, 0x06, 0xC0, 0x36, 0x00, 0x60, 0x03, 0x07, 0xF8, - 0x02, 0xC0, 0x36, 0x01, 0x98, 0x1C, 0xE1, 0xC1, 0xF2, 0x00, 0x18, 0x08, - 0xC0, 0xC4, 0x06, 0x60, 0x33, 0x01, 0x18, 0x18, 0xFF, 0xC4, 0x06, 0x60, - 0x23, 0x01, 0x18, 0x18, 0x80, 0xC4, 0x06, 0x00, 0x33, 0x32, 0x26, 0x66, - 0x44, 0xCC, 0xC0, 0x00, 0xC0, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x30, - 0x0C, 0x03, 0x30, 0xCC, 0x63, 0x18, 0x7C, 0x00, 0x18, 0x18, 0x60, 0xC1, - 0x0E, 0x0C, 0x60, 0x33, 0x00, 0xD8, 0x03, 0xF0, 0x0C, 0xC0, 0x61, 0x81, - 0x86, 0x06, 0x0C, 0x10, 0x30, 0x40, 0x60, 0x18, 0x0C, 0x04, 0x06, 0x03, - 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, 0x18, 0x08, 0x07, 0xF8, 0x18, 0x06, - 0x18, 0x0E, 0x18, 0x0E, 0x34, 0x1E, 0x34, 0x36, 0x34, 0x34, 0x24, 0x64, - 0x24, 0x6C, 0x64, 0xCC, 0x64, 0x8C, 0x65, 0x88, 0x43, 0x08, 0x43, 0x18, - 0x18, 0x08, 0xE0, 0x47, 0x06, 0x6C, 0x33, 0x61, 0x99, 0x08, 0x8C, 0xC4, - 0x66, 0x61, 0xB3, 0x0D, 0x18, 0x38, 0x81, 0xC4, 0x06, 0x00, 0x07, 0xC0, - 0xC3, 0x8C, 0x0E, 0xC0, 0x36, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, - 0x36, 0x01, 0xB8, 0x18, 0xE1, 0x81, 0xF0, 0x00, 0x1F, 0xE1, 0x83, 0x10, - 0x33, 0x03, 0x30, 0x33, 0x06, 0x3F, 0xC2, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x04, 0x00, 0x40, 0x00, 0x07, 0xC0, 0xC3, 0x8C, 0x0E, 0xC0, 0x36, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x36, 0x09, 0xB8, 0x78, 0xE3, 0x81, - 0xF6, 0x00, 0x10, 0x1F, 0xF0, 0xC0, 0xC4, 0x06, 0x60, 0x33, 0x01, 0x18, - 0x18, 0xFF, 0x04, 0x0C, 0x60, 0x63, 0x03, 0x18, 0x18, 0x80, 0xC4, 0x06, - 0x00, 0x07, 0xC1, 0x87, 0x30, 0x33, 0x03, 0x30, 0x03, 0xC0, 0x0F, 0xC0, - 0x1E, 0x00, 0x6C, 0x06, 0xC0, 0x46, 0x0C, 0x3F, 0x00, 0xFF, 0xC3, 0x00, - 0xC0, 0x20, 0x18, 0x06, 0x01, 0x80, 0x60, 0x10, 0x0C, 0x03, 0x00, 0xC0, - 0x20, 0x00, 0x30, 0x13, 0x03, 0x20, 0x36, 0x03, 0x60, 0x26, 0x06, 0x60, - 0x64, 0x06, 0xC0, 0x6C, 0x04, 0xC0, 0xCE, 0x18, 0x3E, 0x00, 0xC0, 0x78, - 0x0B, 0x03, 0x20, 0xC4, 0x18, 0xC6, 0x18, 0x83, 0x30, 0x64, 0x0D, 0x80, - 0xA0, 0x1C, 0x03, 0x00, 0xC1, 0x83, 0xC1, 0x83, 0xC3, 0x86, 0xC2, 0x86, - 0xC6, 0x84, 0xC4, 0x8C, 0xCC, 0xC8, 0xC8, 0xD8, 0xD8, 0xD0, 0xD0, 0xF0, - 0x70, 0xE0, 0x60, 0xE0, 0x60, 0xE0, 0x0C, 0x0C, 0x30, 0x60, 0x63, 0x01, - 0x98, 0x02, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xE0, 0x0C, 0x80, 0x33, 0x01, - 0x8C, 0x0C, 0x18, 0x60, 0x60, 0xC0, 0x66, 0x0C, 0x60, 0xC2, 0x18, 0x33, - 0x03, 0x60, 0x1C, 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x01, 0x00, 0x30, - 0x00, 0x1F, 0xF0, 0x07, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, - 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x00, 0xFF, 0xC0, 0x0E, 0x10, 0x20, - 0x41, 0x02, 0x04, 0x08, 0x20, 0x40, 0x81, 0x04, 0x08, 0x10, 0x20, 0xE0, - 0xAA, 0xA9, 0x55, 0x40, 0x0E, 0x08, 0x10, 0x20, 0x41, 0x02, 0x04, 0x08, - 0x20, 0x40, 0x81, 0x04, 0x08, 0x10, 0xE0, 0x0C, 0x18, 0x51, 0xA2, 0x4C, - 0x50, 0x80, 0xFF, 0xE0, 0xC8, 0x80, 0x0F, 0x86, 0x33, 0x0C, 0x03, 0x03, - 0xDF, 0xEE, 0x0B, 0x02, 0xC1, 0x9F, 0xE0, 0x10, 0x04, 0x01, 0x00, 0xDC, - 0x39, 0x88, 0x32, 0x0D, 0x83, 0x40, 0xD0, 0x64, 0x1B, 0x8C, 0xBC, 0x00, - 0x1F, 0x18, 0xD8, 0x6C, 0x0C, 0x06, 0x03, 0x01, 0x86, 0x66, 0x3E, 0x00, - 0x00, 0x20, 0x08, 0x01, 0x0F, 0x23, 0x14, 0xC1, 0x18, 0x26, 0x04, 0xC0, - 0x98, 0x23, 0x04, 0x71, 0x87, 0xD0, 0x0F, 0x0C, 0x76, 0x0D, 0x83, 0xFF, - 0xF0, 0x0C, 0x03, 0x06, 0x63, 0x0F, 0x80, 0x1C, 0xC2, 0x1E, 0x20, 0x84, - 0x10, 0x41, 0x04, 0x20, 0x80, 0x0F, 0x46, 0x33, 0x0C, 0xC1, 0x60, 0xD8, - 0x26, 0x09, 0x86, 0x71, 0x8F, 0xE0, 0x10, 0x04, 0xC2, 0x1F, 0x00, 0x10, - 0x04, 0x01, 0x00, 0x9F, 0x39, 0x88, 0x22, 0x09, 0x02, 0x40, 0x90, 0x44, - 0x12, 0x04, 0x81, 0x00, 0x10, 0x02, 0x22, 0x64, 0x44, 0x48, 0x80, 0x04, - 0x00, 0x01, 0x08, 0x20, 0x82, 0x08, 0x41, 0x04, 0x10, 0x42, 0x08, 0xE0, - 0x10, 0x08, 0x04, 0x04, 0x32, 0x31, 0x20, 0xA0, 0xB8, 0x6C, 0x22, 0x11, - 0x90, 0xC8, 0x30, 0x11, 0x22, 0x22, 0x64, 0x44, 0x48, 0x80, 0x2F, 0x3C, - 0x63, 0x8C, 0x86, 0x19, 0x08, 0x44, 0x10, 0x88, 0x21, 0x10, 0x82, 0x21, - 0x04, 0x82, 0x11, 0x04, 0x20, 0x00, 0x0B, 0xF3, 0x18, 0x82, 0x20, 0x90, - 0x24, 0x09, 0x04, 0x41, 0x20, 0x48, 0x10, 0x0F, 0x0C, 0x76, 0x0D, 0x83, - 0xC0, 0xF0, 0x3C, 0x1B, 0x06, 0xE3, 0x0F, 0x00, 0x17, 0xC3, 0x1C, 0x41, - 0x98, 0x32, 0x06, 0x40, 0xC8, 0x33, 0x06, 0x71, 0x8B, 0xC1, 0x00, 0x20, - 0x08, 0x01, 0x00, 0x00, 0x1E, 0xCC, 0x66, 0x09, 0x82, 0xC0, 0xB0, 0x4C, - 0x13, 0x04, 0x63, 0x0F, 0xC0, 0x20, 0x08, 0x02, 0x00, 0x80, 0x2C, 0x60, - 0x81, 0x04, 0x08, 0x10, 0x20, 0x81, 0x00, 0x1E, 0x33, 0x63, 0x60, 0x70, - 0x1E, 0x03, 0xC3, 0xC6, 0x7C, 0x22, 0xF2, 0x44, 0x44, 0xCC, 0xCE, 0x21, - 0x20, 0x90, 0x48, 0x24, 0x12, 0x13, 0x09, 0x84, 0xE6, 0x3E, 0x00, 0xC1, - 0xE1, 0xB0, 0xC8, 0xC4, 0x43, 0x61, 0xA0, 0xF0, 0x70, 0x18, 0x00, 0xC7, - 0x1E, 0x38, 0xB3, 0xCD, 0x96, 0x4C, 0xB6, 0x6D, 0xB1, 0x4D, 0x0E, 0x78, - 0x63, 0x83, 0x1C, 0x00, 0x10, 0xC3, 0x10, 0x24, 0x07, 0x80, 0xE0, 0x1C, - 0x07, 0x81, 0x90, 0x23, 0x08, 0x20, 0x30, 0x46, 0x18, 0x42, 0x08, 0xC1, - 0x10, 0x24, 0x07, 0x80, 0xE0, 0x1C, 0x03, 0x00, 0x60, 0x08, 0x03, 0x01, - 0xC0, 0x00, 0x3F, 0x80, 0x80, 0x80, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, - 0x7F, 0x00, 0x18, 0x88, 0x42, 0x10, 0x88, 0xC3, 0x18, 0x88, 0x42, 0x18, - 0xE0, 0x11, 0x22, 0x22, 0x24, 0x44, 0x4C, 0x88, 0x88, 0x00, 0x38, 0xC2, - 0x10, 0x88, 0xC6, 0x18, 0x88, 0x42, 0x10, 0x88, 0xC0, 0x70, 0x4E, 0x41, - 0xC0}; - -const GFXglyph FreeSansOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 5, 13, 5, 2, -12}, // 0x21 '!' - {9, 5, 4, 6, 3, -12}, // 0x22 '"' - {12, 11, 13, 10, 1, -12}, // 0x23 '#' - {30, 11, 16, 10, 1, -13}, // 0x24 '$' - {52, 15, 13, 16, 2, -12}, // 0x25 '%' - {77, 10, 13, 12, 2, -12}, // 0x26 '&' - {94, 2, 4, 3, 3, -12}, // 0x27 ''' - {95, 7, 17, 6, 2, -12}, // 0x28 '(' - {110, 7, 17, 6, -1, -12}, // 0x29 ')' - {125, 6, 5, 7, 3, -12}, // 0x2A '*' - {129, 9, 8, 11, 2, -7}, // 0x2B '+' - {138, 3, 5, 5, 1, -1}, // 0x2C ',' - {140, 4, 1, 6, 2, -4}, // 0x2D '-' - {141, 2, 1, 5, 2, 0}, // 0x2E '.' - {142, 8, 13, 5, 0, -12}, // 0x2F '/' - {155, 9, 13, 10, 2, -12}, // 0x30 '0' - {170, 5, 13, 10, 4, -12}, // 0x31 '1' - {179, 11, 13, 10, 1, -12}, // 0x32 '2' - {197, 10, 13, 10, 1, -12}, // 0x33 '3' - {214, 9, 13, 10, 1, -12}, // 0x34 '4' - {229, 11, 13, 10, 1, -12}, // 0x35 '5' - {247, 10, 13, 10, 2, -12}, // 0x36 '6' - {264, 10, 13, 10, 2, -12}, // 0x37 '7' - {281, 10, 13, 10, 1, -12}, // 0x38 '8' - {298, 10, 13, 10, 1, -12}, // 0x39 '9' - {315, 4, 9, 5, 2, -8}, // 0x3A ':' - {320, 5, 12, 5, 1, -8}, // 0x3B ';' - {328, 9, 9, 11, 2, -8}, // 0x3C '<' - {339, 10, 4, 11, 1, -5}, // 0x3D '=' - {344, 9, 9, 11, 1, -7}, // 0x3E '>' - {355, 9, 13, 10, 3, -12}, // 0x3F '?' - {370, 18, 16, 18, 1, -12}, // 0x40 '@' - {406, 12, 13, 12, 0, -12}, // 0x41 'A' - {426, 12, 13, 12, 1, -12}, // 0x42 'B' - {446, 12, 13, 13, 2, -12}, // 0x43 'C' - {466, 13, 13, 13, 1, -12}, // 0x44 'D' - {488, 12, 13, 12, 1, -12}, // 0x45 'E' - {508, 12, 13, 11, 1, -12}, // 0x46 'F' - {528, 13, 13, 14, 2, -12}, // 0x47 'G' - {550, 13, 13, 13, 1, -12}, // 0x48 'H' - {572, 4, 13, 5, 2, -12}, // 0x49 'I' - {579, 10, 13, 9, 1, -12}, // 0x4A 'J' - {596, 14, 13, 12, 1, -12}, // 0x4B 'K' - {619, 9, 13, 10, 1, -12}, // 0x4C 'L' - {634, 16, 13, 15, 1, -12}, // 0x4D 'M' - {660, 13, 13, 13, 1, -12}, // 0x4E 'N' - {682, 13, 13, 14, 2, -12}, // 0x4F 'O' - {704, 12, 13, 12, 1, -12}, // 0x50 'P' - {724, 13, 14, 14, 2, -12}, // 0x51 'Q' - {747, 13, 13, 13, 1, -12}, // 0x52 'R' - {769, 12, 13, 12, 1, -12}, // 0x53 'S' - {789, 10, 13, 11, 3, -12}, // 0x54 'T' - {806, 12, 13, 13, 2, -12}, // 0x55 'U' - {826, 11, 13, 12, 3, -12}, // 0x56 'V' - {844, 16, 13, 17, 3, -12}, // 0x57 'W' - {870, 14, 13, 12, 0, -12}, // 0x58 'X' - {893, 12, 13, 12, 3, -12}, // 0x59 'Y' - {913, 12, 13, 11, 1, -12}, // 0x5A 'Z' - {933, 7, 17, 5, 0, -12}, // 0x5B '[' - {948, 2, 13, 5, 3, -12}, // 0x5C '\' - {952, 7, 17, 5, 0, -12}, // 0x5D ']' - {967, 7, 7, 8, 2, -12}, // 0x5E '^' - {974, 11, 1, 10, -1, 3}, // 0x5F '_' - {976, 3, 3, 6, 3, -12}, // 0x60 '`' - {978, 10, 10, 10, 1, -9}, // 0x61 'a' - {991, 10, 13, 10, 1, -12}, // 0x62 'b' - {1008, 9, 10, 9, 1, -9}, // 0x63 'c' - {1020, 11, 13, 10, 1, -12}, // 0x64 'd' - {1038, 10, 10, 10, 1, -9}, // 0x65 'e' - {1051, 6, 13, 5, 1, -12}, // 0x66 'f' - {1061, 10, 14, 10, 0, -9}, // 0x67 'g' - {1079, 10, 13, 10, 1, -12}, // 0x68 'h' - {1096, 4, 13, 4, 1, -12}, // 0x69 'i' - {1103, 6, 17, 4, -1, -12}, // 0x6A 'j' - {1116, 9, 13, 9, 1, -12}, // 0x6B 'k' - {1131, 4, 13, 4, 1, -12}, // 0x6C 'l' - {1138, 15, 10, 15, 1, -9}, // 0x6D 'm' - {1157, 10, 11, 10, 1, -10}, // 0x6E 'n' - {1171, 10, 10, 10, 1, -9}, // 0x6F 'o' - {1184, 11, 14, 10, 0, -9}, // 0x70 'p' - {1204, 10, 14, 10, 1, -9}, // 0x71 'q' - {1222, 7, 10, 6, 1, -9}, // 0x72 'r' - {1231, 8, 10, 9, 1, -9}, // 0x73 's' - {1241, 4, 12, 5, 2, -11}, // 0x74 't' - {1247, 9, 10, 10, 2, -9}, // 0x75 'u' - {1259, 9, 10, 9, 2, -9}, // 0x76 'v' - {1271, 13, 10, 13, 2, -9}, // 0x77 'w' - {1288, 11, 10, 9, 0, -9}, // 0x78 'x' - {1302, 11, 14, 9, 0, -9}, // 0x79 'y' - {1322, 9, 10, 9, 1, -9}, // 0x7A 'z' - {1334, 5, 17, 6, 2, -12}, // 0x7B '{' - {1345, 4, 17, 5, 1, -12}, // 0x7C '|' - {1354, 5, 17, 6, 0, -12}, // 0x7D '}' - {1365, 9, 3, 11, 2, -7}}; // 0x7E '~' - -const GFXfont FreeSansOblique9pt7b PROGMEM = { - (uint8_t *)FreeSansOblique9pt7bBitmaps, - (GFXglyph *)FreeSansOblique9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 2041 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h deleted file mode 100644 index 22cb53d..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h +++ /dev/null @@ -1,261 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFE, 0xA8, 0x3F, 0xCF, 0x3C, 0xF3, 0x8A, 0x20, 0x0C, 0x40, 0xC4, - 0x08, 0x40, 0x8C, 0x08, 0xC7, 0xFF, 0x18, 0x81, 0x88, 0x10, 0x81, 0x08, - 0xFF, 0xE1, 0x18, 0x31, 0x03, 0x10, 0x31, 0x02, 0x10, 0x04, 0x07, 0xC6, - 0x5B, 0x12, 0xC4, 0xB1, 0x0F, 0x41, 0xF0, 0x1E, 0x01, 0xE0, 0x58, 0x13, - 0x84, 0xE1, 0x3C, 0x4F, 0x96, 0x3F, 0x01, 0x00, 0x00, 0x04, 0x03, 0x83, - 0x03, 0x9F, 0x81, 0xC2, 0x20, 0x60, 0x90, 0x38, 0x24, 0x0C, 0x12, 0x03, - 0x0D, 0x00, 0xC6, 0x47, 0x9E, 0x23, 0x10, 0x09, 0x84, 0x04, 0xE1, 0x03, - 0x30, 0x40, 0x8C, 0x20, 0x43, 0x08, 0x10, 0xC4, 0x08, 0x1E, 0x00, 0x03, - 0xC0, 0x02, 0x30, 0x03, 0x08, 0x01, 0x84, 0x00, 0xC4, 0x00, 0x7C, 0xF8, - 0x1C, 0x38, 0x1E, 0x08, 0x33, 0x0C, 0x31, 0xC4, 0x10, 0x74, 0x18, 0x3A, - 0x0C, 0x0E, 0x07, 0x03, 0x83, 0xC3, 0xE2, 0x7E, 0x3E, 0xFF, 0xA0, 0x04, - 0x21, 0x08, 0x61, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC1, 0x04, 0x18, 0x20, - 0x40, 0x81, 0x81, 0x02, 0x04, 0x18, 0x20, 0x83, 0x0C, 0x30, 0xC3, 0x0C, - 0x30, 0x86, 0x10, 0x84, 0x20, 0x30, 0xB3, 0xD7, 0x54, 0x38, 0x7C, 0xD3, - 0x30, 0x30, 0x10, 0x04, 0x00, 0x80, 0x10, 0x02, 0x00, 0x41, 0xFF, 0xC1, - 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, 0x00, 0xDF, 0x95, 0x00, 0xFC, 0xFC, - 0x06, 0x0C, 0x10, 0x60, 0xC1, 0x06, 0x0C, 0x10, 0x60, 0xC1, 0x06, 0x0C, - 0x10, 0x60, 0xC0, 0x1E, 0x0C, 0xC6, 0x19, 0x86, 0xC0, 0xB0, 0x3C, 0x0F, - 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xD8, 0x66, 0x18, 0xCC, 0x1E, - 0x00, 0x11, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, - 0x0C, 0xFC, 0x1E, 0x18, 0xC4, 0x1A, 0x06, 0x01, 0x80, 0x60, 0x10, 0x0C, - 0x02, 0x01, 0x00, 0xC0, 0x60, 0x30, 0x18, 0x1F, 0xF8, 0x1E, 0x18, 0xE8, - 0x18, 0x06, 0x01, 0x00, 0x80, 0xF0, 0x7E, 0x03, 0xC0, 0x70, 0x0C, 0x03, - 0x00, 0xC0, 0x6E, 0x11, 0xF8, 0x01, 0x00, 0xC0, 0x70, 0x2C, 0x0B, 0x04, - 0xC2, 0x30, 0x8C, 0x43, 0x20, 0xC8, 0x33, 0xFF, 0x03, 0x00, 0xC0, 0x30, - 0x0C, 0x00, 0x03, 0xF1, 0x00, 0x40, 0x18, 0x0F, 0x80, 0xF8, 0x0E, 0x01, - 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x20, 0x1B, 0x8C, 0x7C, 0x00, 0x01, - 0xC3, 0xC1, 0xC0, 0xC0, 0x70, 0x18, 0x0E, 0xF3, 0xCE, 0xC1, 0xF0, 0x3C, - 0x0F, 0x03, 0xC0, 0xD8, 0x36, 0x08, 0xC6, 0x1E, 0x00, 0x3F, 0xD0, 0x38, - 0x08, 0x06, 0x01, 0x80, 0x40, 0x10, 0x0C, 0x02, 0x00, 0x80, 0x20, 0x10, - 0x04, 0x01, 0x00, 0x80, 0x20, 0x1F, 0x18, 0x6C, 0x0F, 0x03, 0xC0, 0xF8, - 0x67, 0x30, 0xF0, 0x1E, 0x09, 0xE6, 0x3B, 0x07, 0xC0, 0xF0, 0x3C, 0x0D, - 0x86, 0x1F, 0x00, 0x1E, 0x08, 0xC6, 0x1B, 0x02, 0xC0, 0xF0, 0x3C, 0x0F, - 0x03, 0xE0, 0xDC, 0x73, 0xEC, 0x06, 0x01, 0x80, 0xC0, 0x70, 0x38, 0x38, - 0x18, 0x00, 0xFC, 0x00, 0x3F, 0xCC, 0xC0, 0x00, 0x00, 0x06, 0x77, 0x12, - 0x40, 0x00, 0x00, 0x07, 0x01, 0xE0, 0x78, 0x1E, 0x07, 0x00, 0xC0, 0x0F, - 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x07, 0x00, 0x10, 0xFF, 0xF0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0x80, 0x0E, 0x00, 0x3C, 0x00, 0xF0, - 0x03, 0xC0, 0x0F, 0x00, 0x30, 0x0E, 0x07, 0x81, 0xE0, 0x78, 0x0E, 0x00, - 0x00, 0x00, 0x7C, 0x86, 0x83, 0xC3, 0x03, 0x03, 0x06, 0x0C, 0x08, 0x08, - 0x10, 0x10, 0x00, 0x00, 0x30, 0x30, 0x30, 0x03, 0xF0, 0x06, 0x06, 0x06, - 0x00, 0x86, 0x00, 0x26, 0x0E, 0xD3, 0x0C, 0xC7, 0x0C, 0x63, 0x84, 0x31, - 0xC6, 0x18, 0xE3, 0x08, 0x71, 0x8C, 0x4C, 0xC6, 0x46, 0x3D, 0xC1, 0x80, - 0x00, 0x30, 0x10, 0x07, 0xF0, 0x00, 0x80, 0x00, 0x60, 0x00, 0x70, 0x00, - 0x38, 0x00, 0x2E, 0x00, 0x13, 0x00, 0x19, 0xC0, 0x08, 0x60, 0x04, 0x38, - 0x04, 0x0C, 0x03, 0xFF, 0x03, 0x03, 0x81, 0x00, 0xE1, 0x80, 0x70, 0xC0, - 0x3D, 0xF0, 0x3F, 0xFF, 0x83, 0x0C, 0x30, 0x63, 0x06, 0x30, 0x63, 0x06, - 0x30, 0xC3, 0xF0, 0x30, 0xE3, 0x06, 0x30, 0x33, 0x03, 0x30, 0x33, 0x07, - 0x30, 0xEF, 0xFC, 0x07, 0xE2, 0x38, 0x3C, 0xC0, 0x3B, 0x00, 0x36, 0x00, - 0x38, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x03, - 0x00, 0x06, 0x00, 0x06, 0x00, 0x47, 0x03, 0x03, 0xF8, 0xFF, 0xC0, 0x30, - 0x78, 0x30, 0x1C, 0x30, 0x0E, 0x30, 0x06, 0x30, 0x03, 0x30, 0x03, 0x30, - 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x06, 0x30, 0x06, 0x30, - 0x0C, 0x30, 0x78, 0xFF, 0xC0, 0xFF, 0xFC, 0xC0, 0x33, 0x00, 0x4C, 0x00, - 0x30, 0x00, 0xC0, 0x43, 0x03, 0x0F, 0xFC, 0x30, 0x30, 0xC0, 0x43, 0x00, - 0x0C, 0x00, 0x30, 0x08, 0xC0, 0x23, 0x03, 0xBF, 0xFE, 0xFF, 0xFC, 0xC0, - 0x33, 0x00, 0x4C, 0x00, 0x30, 0x00, 0xC0, 0x43, 0x03, 0x0F, 0xFC, 0x30, - 0x30, 0xC0, 0x43, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x3F, - 0x00, 0x07, 0xE4, 0x1C, 0x3C, 0x30, 0x0C, 0x60, 0x0C, 0x60, 0x04, 0xC0, - 0x00, 0xC0, 0x00, 0xC0, 0x3F, 0xC0, 0x0C, 0xC0, 0x0C, 0xC0, 0x0C, 0x60, - 0x0C, 0x60, 0x0C, 0x30, 0x0C, 0x1C, 0x1C, 0x07, 0xE0, 0xFC, 0x3F, 0x30, - 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x3F, - 0xFC, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, - 0x0C, 0x30, 0x0C, 0xFC, 0x3F, 0xFC, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, - 0xC3, 0x0C, 0x30, 0xC3, 0x3F, 0x3F, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, - 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0xC8, 0xF0, 0xFC, 0xFE, 0x30, - 0x38, 0x30, 0x20, 0x30, 0x40, 0x30, 0x80, 0x33, 0x00, 0x36, 0x00, 0x3E, - 0x00, 0x37, 0x00, 0x33, 0x80, 0x31, 0xC0, 0x30, 0xE0, 0x30, 0x70, 0x30, - 0x38, 0x30, 0x3C, 0xFC, 0x7F, 0xFC, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, - 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, - 0xC0, 0x01, 0x80, 0x03, 0x00, 0x26, 0x00, 0x8C, 0x07, 0x7F, 0xFE, 0xF8, - 0x01, 0xE7, 0x00, 0x70, 0xE0, 0x0E, 0x1E, 0x03, 0xC2, 0xC0, 0x58, 0x5C, - 0x1B, 0x09, 0x82, 0x61, 0x38, 0x4C, 0x27, 0x11, 0x84, 0x72, 0x30, 0x8E, - 0xC6, 0x10, 0xD0, 0xC2, 0x1E, 0x18, 0x41, 0x83, 0x1C, 0x30, 0x67, 0xC4, - 0x3F, 0xF0, 0x1F, 0x78, 0x0E, 0x3C, 0x04, 0x3E, 0x04, 0x2E, 0x04, 0x27, - 0x04, 0x23, 0x84, 0x23, 0xC4, 0x21, 0xE4, 0x20, 0xE4, 0x20, 0x74, 0x20, - 0x3C, 0x20, 0x1C, 0x20, 0x0C, 0x70, 0x0C, 0xF8, 0x04, 0x07, 0xC0, 0x30, - 0x60, 0xC0, 0x63, 0x00, 0x66, 0x00, 0xD8, 0x00, 0xF0, 0x01, 0xE0, 0x03, - 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1B, 0x00, 0x66, 0x00, 0xC6, 0x03, 0x06, - 0x0C, 0x03, 0xE0, 0xFF, 0x83, 0x0E, 0x30, 0x73, 0x03, 0x30, 0x33, 0x03, - 0x30, 0x63, 0x0E, 0x3F, 0x83, 0x00, 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, - 0x30, 0x0F, 0xC0, 0x0F, 0xE0, 0x18, 0x30, 0x30, 0x18, 0x60, 0x0C, 0x60, - 0x0C, 0xC0, 0x06, 0xC0, 0x06, 0xC0, 0x06, 0xC0, 0x06, 0xC0, 0x06, 0xC0, - 0x06, 0x60, 0x0C, 0x60, 0x0C, 0x30, 0x18, 0x18, 0x30, 0x07, 0xC0, 0x03, - 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1F, 0xFF, 0x80, 0x61, 0xC0, 0xC1, - 0xC1, 0x81, 0x83, 0x03, 0x06, 0x06, 0x0C, 0x1C, 0x18, 0x70, 0x3F, 0x80, - 0x67, 0x00, 0xC7, 0x01, 0x8F, 0x03, 0x0F, 0x06, 0x0E, 0x0C, 0x0E, 0x7E, - 0x0F, 0x1F, 0x46, 0x19, 0x81, 0x30, 0x27, 0x02, 0xF0, 0x0F, 0x00, 0xF8, - 0x07, 0xC0, 0x38, 0x03, 0xC0, 0x34, 0x06, 0x80, 0xDC, 0x32, 0x7C, 0xFF, - 0xFF, 0x86, 0x0E, 0x0C, 0x1C, 0x18, 0x10, 0x30, 0x00, 0x60, 0x00, 0xC0, - 0x01, 0x80, 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, - 0x60, 0x00, 0xC0, 0x07, 0xE0, 0xFC, 0x1F, 0x30, 0x0E, 0x30, 0x04, 0x30, - 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, - 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x18, 0x08, 0x1C, 0x18, 0x07, - 0xE0, 0xFE, 0x0F, 0x9C, 0x03, 0x0E, 0x01, 0x83, 0x00, 0x81, 0xC0, 0x40, - 0x60, 0x40, 0x38, 0x20, 0x0C, 0x30, 0x07, 0x10, 0x01, 0x98, 0x00, 0xE8, - 0x00, 0x34, 0x00, 0x1E, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x00, 0xFC, - 0xFC, 0x3D, 0xE1, 0xC0, 0x63, 0x83, 0x01, 0x86, 0x0E, 0x04, 0x1C, 0x18, - 0x10, 0x70, 0x70, 0x80, 0xC3, 0xC2, 0x03, 0x8B, 0x08, 0x06, 0x6E, 0x40, - 0x1D, 0x19, 0x00, 0x74, 0x78, 0x00, 0xE1, 0xE0, 0x03, 0x83, 0x80, 0x0E, - 0x0C, 0x00, 0x10, 0x10, 0x00, 0x40, 0x40, 0x7F, 0x1F, 0x9E, 0x03, 0x07, - 0x03, 0x01, 0xC3, 0x00, 0x71, 0x00, 0x19, 0x00, 0x0F, 0x00, 0x03, 0x80, - 0x01, 0xE0, 0x01, 0xB0, 0x01, 0x9C, 0x00, 0x87, 0x00, 0x81, 0xC0, 0x80, - 0xE0, 0xC0, 0x79, 0xF8, 0x7F, 0xFE, 0x1F, 0x78, 0x0C, 0x38, 0x08, 0x1C, - 0x18, 0x0E, 0x10, 0x06, 0x20, 0x07, 0x60, 0x03, 0xC0, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x07, - 0xE0, 0x7F, 0xFB, 0x00, 0xC8, 0x07, 0x20, 0x38, 0x01, 0xC0, 0x07, 0x00, - 0x38, 0x01, 0xC0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x05, - 0xC0, 0x3E, 0x01, 0xBF, 0xFE, 0xFE, 0x31, 0x8C, 0x63, 0x18, 0xC6, 0x31, - 0x8C, 0x63, 0x18, 0xC6, 0x31, 0xF0, 0xC1, 0x81, 0x03, 0x06, 0x04, 0x0C, - 0x18, 0x10, 0x30, 0x60, 0x40, 0xC1, 0x81, 0x03, 0x06, 0xF8, 0xC6, 0x31, - 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC7, 0xF0, 0x0C, 0x07, - 0x01, 0x60, 0xD8, 0x23, 0x18, 0xC4, 0x1B, 0x06, 0x80, 0xC0, 0xFF, 0xF0, - 0xC7, 0x0C, 0x30, 0x3E, 0x31, 0x8C, 0x30, 0x0C, 0x03, 0x07, 0xC6, 0x33, - 0x0C, 0xC3, 0x31, 0xC7, 0xB8, 0x20, 0x38, 0x06, 0x01, 0x80, 0x60, 0x18, - 0x06, 0xF1, 0xC6, 0x61, 0xD8, 0x36, 0x0D, 0x83, 0x60, 0xD8, 0x26, 0x19, - 0x84, 0x3E, 0x00, 0x1E, 0x23, 0x63, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xE1, - 0x72, 0x3C, 0x00, 0x80, 0xE0, 0x18, 0x06, 0x01, 0x80, 0x61, 0xD8, 0x8E, - 0x61, 0xB0, 0x6C, 0x1B, 0x06, 0xC1, 0xB0, 0x6E, 0x19, 0xCE, 0x3D, 0xC0, - 0x1E, 0x08, 0xE4, 0x1B, 0xFE, 0xC0, 0x30, 0x0C, 0x03, 0x81, 0x60, 0x9C, - 0x41, 0xE0, 0x0F, 0x08, 0xC4, 0x06, 0x03, 0x01, 0x81, 0xF0, 0x60, 0x30, - 0x18, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0x60, 0xFC, 0x00, 0x1F, 0x03, - 0x1F, 0x60, 0xC6, 0x0C, 0x60, 0xC3, 0x18, 0x1F, 0x02, 0x00, 0x40, 0x07, - 0xFC, 0x40, 0x24, 0x02, 0xC0, 0x2C, 0x04, 0xE0, 0x83, 0xF0, 0x30, 0x1E, - 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0D, 0xE1, 0xCE, 0x30, 0xC6, 0x18, - 0xC3, 0x18, 0x63, 0x0C, 0x61, 0x8C, 0x31, 0x86, 0x79, 0xE0, 0x31, 0x80, - 0x00, 0x09, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xDF, 0x0C, 0x30, 0x00, 0x00, - 0x31, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xF2, 0xF0, - 0x20, 0x1C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0xFB, 0x08, 0x62, - 0x0C, 0x81, 0xE0, 0x3E, 0x06, 0xE0, 0xCE, 0x18, 0xC3, 0x0E, 0xF3, 0xE0, - 0x13, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC6, 0xF8, 0xF7, - 0x8F, 0x0E, 0x3C, 0xE3, 0x0C, 0x18, 0xC3, 0x06, 0x30, 0xC1, 0x8C, 0x30, - 0x63, 0x0C, 0x18, 0xC3, 0x06, 0x30, 0xC1, 0x8C, 0x30, 0x67, 0x9E, 0x3C, - 0xF7, 0x87, 0x18, 0xC3, 0x18, 0x63, 0x0C, 0x61, 0x8C, 0x31, 0x86, 0x30, - 0xC6, 0x19, 0xE7, 0x80, 0x1E, 0x18, 0xE4, 0x1B, 0x03, 0xC0, 0xF0, 0x3C, - 0x0F, 0x03, 0x60, 0x9C, 0x41, 0xE0, 0x77, 0x87, 0x18, 0xC3, 0x98, 0x33, - 0x06, 0x60, 0xCC, 0x19, 0x83, 0x30, 0xC7, 0x10, 0xDC, 0x18, 0x03, 0x00, - 0x60, 0x0C, 0x07, 0xE0, 0x1E, 0x8C, 0xE6, 0x1B, 0x06, 0xC1, 0xB0, 0x6C, - 0x1B, 0x06, 0xE1, 0x98, 0xE3, 0xD8, 0x06, 0x01, 0x80, 0x60, 0x18, 0x1F, - 0x37, 0x7B, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x7C, 0x7B, - 0x0E, 0x1C, 0x1E, 0x0F, 0x07, 0xC3, 0x87, 0x8A, 0xE0, 0x21, 0x8F, 0x98, - 0x61, 0x86, 0x18, 0x61, 0x86, 0x19, 0x38, 0xE3, 0x98, 0x66, 0x19, 0x86, - 0x61, 0x98, 0x66, 0x19, 0x86, 0x61, 0x9C, 0xE3, 0xDC, 0xF8, 0xEE, 0x08, - 0xC1, 0x18, 0x41, 0x88, 0x32, 0x03, 0x40, 0x68, 0x06, 0x00, 0xC0, 0x10, - 0x00, 0xF3, 0xE7, 0x61, 0x83, 0x70, 0xC2, 0x30, 0xC2, 0x30, 0xC4, 0x19, - 0x64, 0x19, 0x68, 0x0E, 0x38, 0x0E, 0x38, 0x0C, 0x30, 0x04, 0x10, 0xFB, - 0xC6, 0x30, 0x64, 0x0F, 0x00, 0xC0, 0x0C, 0x03, 0xC0, 0x98, 0x21, 0x8C, - 0x3B, 0xCF, 0x80, 0xF8, 0xEE, 0x08, 0xC1, 0x18, 0x41, 0x88, 0x31, 0x03, - 0x40, 0x68, 0x06, 0x00, 0xC0, 0x08, 0x02, 0x00, 0x40, 0x10, 0x1E, 0x03, - 0x80, 0x7F, 0x90, 0xE0, 0x30, 0x18, 0x0E, 0x03, 0x01, 0xC0, 0xE0, 0x30, - 0x5C, 0x3F, 0xF8, 0x19, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0xB0, 0x63, 0x18, - 0xC6, 0x31, 0x8C, 0x61, 0x80, 0xFF, 0xFF, 0x80, 0xC3, 0x18, 0xC6, 0x31, - 0x8C, 0x63, 0x06, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xCC, 0x00, 0x38, 0x06, - 0x62, 0x41, 0xC0}; - -const GFXglyph FreeSerif12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 2, 16, 8, 3, -15}, // 0x21 '!' - {4, 6, 6, 10, 1, -15}, // 0x22 '"' - {9, 12, 16, 12, 0, -15}, // 0x23 '#' - {33, 10, 18, 12, 1, -16}, // 0x24 '$' - {56, 18, 17, 20, 1, -16}, // 0x25 '%' - {95, 17, 16, 19, 1, -15}, // 0x26 '&' - {129, 2, 6, 5, 1, -15}, // 0x27 ''' - {131, 6, 20, 8, 1, -15}, // 0x28 '(' - {146, 6, 20, 8, 1, -15}, // 0x29 ')' - {161, 8, 10, 12, 3, -14}, // 0x2A '*' - {171, 11, 11, 14, 1, -10}, // 0x2B '+' - {187, 3, 6, 6, 2, -2}, // 0x2C ',' - {190, 6, 1, 8, 1, -5}, // 0x2D '-' - {191, 2, 3, 6, 2, -2}, // 0x2E '.' - {192, 7, 17, 7, 0, -16}, // 0x2F '/' - {207, 10, 17, 12, 1, -16}, // 0x30 '0' - {229, 6, 17, 12, 3, -16}, // 0x31 '1' - {242, 10, 15, 12, 1, -14}, // 0x32 '2' - {261, 10, 16, 12, 1, -15}, // 0x33 '3' - {281, 10, 16, 12, 1, -15}, // 0x34 '4' - {301, 10, 17, 12, 1, -16}, // 0x35 '5' - {323, 10, 17, 12, 1, -16}, // 0x36 '6' - {345, 10, 16, 12, 0, -15}, // 0x37 '7' - {365, 10, 17, 12, 1, -16}, // 0x38 '8' - {387, 10, 18, 12, 1, -16}, // 0x39 '9' - {410, 2, 12, 6, 2, -11}, // 0x3A ':' - {413, 4, 15, 6, 2, -11}, // 0x3B ';' - {421, 12, 13, 14, 1, -12}, // 0x3C '<' - {441, 12, 6, 14, 1, -8}, // 0x3D '=' - {450, 12, 13, 14, 1, -11}, // 0x3E '>' - {470, 8, 17, 11, 2, -16}, // 0x3F '?' - {487, 17, 16, 21, 2, -15}, // 0x40 '@' - {521, 17, 16, 17, 0, -15}, // 0x41 'A' - {555, 12, 16, 15, 1, -15}, // 0x42 'B' - {579, 15, 16, 16, 1, -15}, // 0x43 'C' - {609, 16, 16, 17, 0, -15}, // 0x44 'D' - {641, 14, 16, 15, 0, -15}, // 0x45 'E' - {669, 14, 16, 14, 0, -15}, // 0x46 'F' - {697, 16, 16, 17, 1, -15}, // 0x47 'G' - {729, 16, 16, 17, 0, -15}, // 0x48 'H' - {761, 6, 16, 8, 1, -15}, // 0x49 'I' - {773, 8, 16, 9, 0, -15}, // 0x4A 'J' - {789, 16, 16, 17, 1, -15}, // 0x4B 'K' - {821, 15, 16, 15, 0, -15}, // 0x4C 'L' - {851, 19, 16, 21, 1, -15}, // 0x4D 'M' - {889, 16, 16, 17, 1, -15}, // 0x4E 'N' - {921, 15, 16, 17, 1, -15}, // 0x4F 'O' - {951, 12, 16, 14, 0, -15}, // 0x50 'P' - {975, 16, 20, 17, 1, -15}, // 0x51 'Q' - {1015, 15, 16, 16, 0, -15}, // 0x52 'R' - {1045, 11, 16, 13, 0, -15}, // 0x53 'S' - {1067, 15, 16, 15, 0, -15}, // 0x54 'T' - {1097, 16, 16, 17, 1, -15}, // 0x55 'U' - {1129, 17, 16, 17, 0, -15}, // 0x56 'V' - {1163, 22, 16, 23, 0, -15}, // 0x57 'W' - {1207, 17, 16, 17, 0, -15}, // 0x58 'X' - {1241, 16, 16, 17, 0, -15}, // 0x59 'Y' - {1273, 14, 16, 15, 1, -15}, // 0x5A 'Z' - {1301, 5, 20, 8, 2, -15}, // 0x5B '[' - {1314, 7, 17, 7, 0, -16}, // 0x5C '\' - {1329, 5, 20, 8, 1, -15}, // 0x5D ']' - {1342, 10, 9, 11, 1, -15}, // 0x5E '^' - {1354, 12, 1, 12, 0, 3}, // 0x5F '_' - {1356, 5, 4, 6, 0, -15}, // 0x60 '`' - {1359, 10, 11, 10, 1, -10}, // 0x61 'a' - {1373, 10, 17, 12, 1, -16}, // 0x62 'b' - {1395, 8, 11, 11, 1, -10}, // 0x63 'c' - {1406, 10, 17, 12, 1, -16}, // 0x64 'd' - {1428, 10, 11, 11, 1, -10}, // 0x65 'e' - {1442, 9, 17, 9, 0, -16}, // 0x66 'f' - {1462, 12, 16, 11, 0, -10}, // 0x67 'g' - {1486, 11, 17, 12, 0, -16}, // 0x68 'h' - {1510, 5, 16, 7, 0, -15}, // 0x69 'i' - {1520, 6, 21, 8, 0, -15}, // 0x6A 'j' - {1536, 11, 17, 12, 1, -16}, // 0x6B 'k' - {1560, 5, 17, 6, 0, -16}, // 0x6C 'l' - {1571, 18, 11, 19, 0, -10}, // 0x6D 'm' - {1596, 11, 11, 12, 0, -10}, // 0x6E 'n' - {1612, 10, 11, 12, 1, -10}, // 0x6F 'o' - {1626, 11, 16, 12, 0, -10}, // 0x70 'p' - {1648, 10, 16, 12, 1, -10}, // 0x71 'q' - {1668, 8, 11, 8, 0, -10}, // 0x72 'r' - {1679, 7, 11, 9, 1, -10}, // 0x73 's' - {1689, 6, 13, 7, 1, -12}, // 0x74 't' - {1699, 10, 11, 12, 1, -10}, // 0x75 'u' - {1713, 11, 11, 11, 0, -10}, // 0x76 'v' - {1729, 16, 11, 16, 0, -10}, // 0x77 'w' - {1751, 11, 11, 12, 0, -10}, // 0x78 'x' - {1767, 11, 16, 11, 0, -10}, // 0x79 'y' - {1789, 10, 11, 10, 0, -10}, // 0x7A 'z' - {1803, 5, 21, 12, 2, -16}, // 0x7B '{' - {1817, 1, 17, 5, 2, -16}, // 0x7C '|' - {1820, 5, 21, 12, 5, -15}, // 0x7D '}' - {1834, 12, 3, 12, 0, -6}}; // 0x7E '~' - -const GFXfont FreeSerif12pt7b PROGMEM = {(uint8_t *)FreeSerif12pt7bBitmaps, - (GFXglyph *)FreeSerif12pt7bGlyphs, - 0x20, 0x7E, 29}; - -// Approx. 2511 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h deleted file mode 100644 index 3fd1ba5..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h +++ /dev/null @@ -1,431 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif18pt7bBitmaps[] PROGMEM = { - 0x6F, 0xFF, 0xFF, 0xFE, 0x66, 0x66, 0x66, 0x64, 0x40, 0x00, 0x6F, 0xF6, - 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0x46, 0x42, 0x42, 0x42, 0x03, 0x06, 0x01, - 0x83, 0x00, 0xC1, 0x80, 0x61, 0xC0, 0x30, 0xC0, 0x38, 0x60, 0x18, 0x30, - 0xFF, 0xFF, 0x7F, 0xFF, 0x83, 0x06, 0x01, 0x86, 0x00, 0xC3, 0x00, 0xC1, - 0x87, 0xFF, 0xFF, 0xFF, 0xFE, 0x18, 0x30, 0x0C, 0x18, 0x06, 0x18, 0x06, - 0x0C, 0x03, 0x06, 0x01, 0x83, 0x00, 0xC1, 0x80, 0x60, 0xC0, 0x02, 0x00, - 0x10, 0x03, 0xE0, 0x64, 0xE6, 0x23, 0x61, 0x1B, 0x08, 0x58, 0x42, 0xE2, - 0x03, 0x90, 0x1F, 0x80, 0x7E, 0x00, 0xFC, 0x01, 0xF0, 0x0F, 0xC0, 0x4E, - 0x02, 0x38, 0x10, 0xE0, 0x87, 0x04, 0x3C, 0x21, 0xE1, 0x1B, 0xC9, 0xCF, - 0xFC, 0x1F, 0x80, 0x10, 0x00, 0x80, 0x07, 0x80, 0x20, 0x0F, 0xF0, 0x70, - 0x0F, 0x07, 0xD0, 0x0F, 0x02, 0x18, 0x07, 0x01, 0x18, 0x07, 0x00, 0x8C, - 0x03, 0x80, 0x4C, 0x01, 0x80, 0x44, 0x00, 0xC0, 0x26, 0x00, 0x60, 0x22, - 0x0F, 0x30, 0x33, 0x1F, 0xCC, 0x73, 0x1E, 0x37, 0xF1, 0x8E, 0x19, 0xE1, - 0x8E, 0x04, 0x00, 0x86, 0x02, 0x00, 0xC7, 0x01, 0x00, 0xC3, 0x80, 0x80, - 0x61, 0x80, 0x80, 0x60, 0xC0, 0x40, 0x30, 0x60, 0x40, 0x30, 0x38, 0xE0, - 0x30, 0x0F, 0xE0, 0x18, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0x61, 0x80, 0x00, 0x60, 0x60, 0x00, 0x30, 0x30, 0x00, 0x18, 0x18, - 0x00, 0x0C, 0x0C, 0x00, 0x06, 0x0C, 0x00, 0x03, 0x8E, 0x00, 0x01, 0xCE, - 0x00, 0x00, 0x7C, 0x3F, 0xC0, 0x38, 0x07, 0x80, 0x3E, 0x03, 0x80, 0x77, - 0x01, 0x80, 0x73, 0xC0, 0x80, 0xF0, 0xF0, 0xC0, 0x70, 0x7C, 0xC0, 0x78, - 0x1E, 0x40, 0x3C, 0x07, 0xC0, 0x1E, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x0F, - 0xC0, 0xFF, 0x0D, 0xF0, 0xC7, 0xFC, 0x7F, 0xC1, 0xFC, 0x1F, 0x80, 0x3C, - 0x00, 0xFF, 0xFE, 0x92, 0x40, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0xC0, - 0xC0, 0x60, 0x70, 0x30, 0x18, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, - 0x70, 0x38, 0x0C, 0x06, 0x03, 0x80, 0xC0, 0x60, 0x18, 0x0C, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x80, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x60, 0x18, 0x0C, - 0x07, 0x01, 0x80, 0xC0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, - 0xE0, 0x60, 0x30, 0x38, 0x18, 0x0C, 0x0C, 0x04, 0x04, 0x04, 0x04, 0x04, - 0x00, 0x0C, 0x00, 0xC0, 0x0C, 0x0C, 0x46, 0xE4, 0xF7, 0x5E, 0x1F, 0x00, - 0xC0, 0x17, 0x8E, 0x4E, 0xE4, 0xFC, 0xC6, 0x0C, 0x00, 0xC0, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x6F, 0xFF, - 0x11, 0x24, 0x80, 0xFF, 0xFF, 0x6F, 0xF6, 0x00, 0xC0, 0x60, 0x18, 0x06, - 0x03, 0x80, 0xC0, 0x30, 0x1C, 0x06, 0x01, 0x80, 0xE0, 0x30, 0x0C, 0x07, - 0x01, 0x80, 0x60, 0x38, 0x0C, 0x03, 0x01, 0xC0, 0x60, 0x18, 0x0E, 0x03, - 0x00, 0x03, 0xE0, 0x0E, 0x70, 0x1C, 0x38, 0x38, 0x1C, 0x38, 0x1C, 0x78, - 0x1E, 0x70, 0x0E, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, - 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0x70, 0x0E, 0x70, - 0x0E, 0x78, 0x1E, 0x38, 0x1C, 0x38, 0x1C, 0x1C, 0x38, 0x0C, 0x30, 0x03, - 0xC0, 0x06, 0x03, 0x83, 0xE3, 0x38, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0x0E, - 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x80, - 0xE0, 0x38, 0x0E, 0x03, 0x81, 0xE1, 0xFF, 0x07, 0xC0, 0x1F, 0xF0, 0x3F, - 0xF8, 0x70, 0xF8, 0x60, 0x3C, 0xC0, 0x3C, 0x80, 0x1C, 0x00, 0x1C, 0x00, - 0x1C, 0x00, 0x18, 0x00, 0x18, 0x00, 0x30, 0x00, 0x30, 0x00, 0x60, 0x00, - 0xC0, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x01, 0x10, - 0x02, 0x3F, 0xFE, 0x7F, 0xFC, 0xFF, 0xFC, 0x0F, 0xC0, 0xFF, 0x0C, 0x3C, - 0x80, 0xE4, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x04, 0x00, 0x40, 0x04, 0x00, - 0xF8, 0x1F, 0xE0, 0x0F, 0x00, 0x1C, 0x00, 0xE0, 0x03, 0x00, 0x18, 0x00, - 0xC0, 0x06, 0x00, 0x60, 0x03, 0x78, 0x73, 0xFF, 0x0F, 0xC0, 0x00, 0x30, - 0x00, 0x30, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xB0, 0x01, 0x30, 0x03, 0x30, - 0x06, 0x30, 0x04, 0x30, 0x08, 0x30, 0x18, 0x30, 0x10, 0x30, 0x20, 0x30, - 0x60, 0x30, 0xC0, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x30, 0x00, 0x30, - 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x7F, 0xC3, - 0xFE, 0x1F, 0xE1, 0x80, 0x08, 0x00, 0xC0, 0x07, 0xC0, 0x7F, 0x81, 0xFF, - 0x00, 0xFC, 0x01, 0xE0, 0x07, 0x80, 0x1C, 0x00, 0x60, 0x03, 0x00, 0x18, - 0x00, 0xC0, 0x06, 0x00, 0x60, 0x07, 0x78, 0x73, 0xFF, 0x0F, 0xC0, 0x00, - 0x0E, 0x00, 0xF8, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x7C, 0x00, 0x79, 0xF0, 0x7F, 0xFC, 0xF8, 0x3C, 0xF0, 0x1E, 0xF0, - 0x1F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0x70, 0x0F, 0x78, - 0x0F, 0x78, 0x0E, 0x3C, 0x1E, 0x1E, 0x3C, 0x0F, 0xF8, 0x07, 0xE0, 0x3F, - 0xFD, 0xFF, 0xF7, 0xFF, 0xF0, 0x06, 0x80, 0x18, 0x00, 0x60, 0x03, 0x00, - 0x0C, 0x00, 0x30, 0x01, 0x80, 0x06, 0x00, 0x18, 0x00, 0xE0, 0x03, 0x00, - 0x0C, 0x00, 0x70, 0x01, 0x80, 0x06, 0x00, 0x38, 0x00, 0xC0, 0x03, 0x00, - 0x1C, 0x00, 0x60, 0x00, 0x0F, 0x83, 0xFC, 0x70, 0xE6, 0x07, 0xC0, 0x3C, - 0x03, 0xC0, 0x3E, 0x03, 0x70, 0x67, 0x8C, 0x3D, 0x81, 0xF0, 0x0F, 0x81, - 0x7C, 0x21, 0xE6, 0x0E, 0xC0, 0x7C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x36, - 0x06, 0x70, 0xE3, 0xFC, 0x0F, 0x80, 0x07, 0xC0, 0x1F, 0xF0, 0x3C, 0x78, - 0x38, 0x3C, 0x78, 0x1E, 0x70, 0x1E, 0xF0, 0x0E, 0xF0, 0x0F, 0xF0, 0x0F, - 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF8, 0x0F, 0x78, 0x0F, 0x3C, 0x3F, - 0x1F, 0xEE, 0x0F, 0x9E, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x78, - 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x00, 0x6F, 0xF6, - 0x00, 0x00, 0x00, 0x00, 0x06, 0xFF, 0x60, 0x67, 0xBC, 0xC0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x19, 0xEF, 0x78, 0x42, 0x22, 0x20, 0x00, 0x00, 0xC0, - 0x00, 0xF0, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x03, 0xF0, - 0x03, 0xF0, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, - 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xC0, - 0x00, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x80, - 0x00, 0x3C, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, 0xFC, - 0x00, 0xFC, 0x00, 0xF8, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF8, 0x00, 0xF0, - 0x00, 0x30, 0x00, 0x00, 0x1F, 0x81, 0xFF, 0x18, 0x7D, 0x81, 0xEC, 0x07, - 0xF0, 0x3F, 0x81, 0xE0, 0x0F, 0x00, 0x70, 0x03, 0x80, 0x38, 0x01, 0x80, - 0x08, 0x00, 0xC0, 0x04, 0x00, 0x20, 0x02, 0x00, 0x10, 0x00, 0x80, 0x00, - 0x00, 0x00, 0x03, 0x00, 0x3C, 0x01, 0xE0, 0x07, 0x00, 0x00, 0x7F, 0x00, - 0x01, 0xFF, 0xC0, 0x07, 0x80, 0xF0, 0x0F, 0x00, 0x38, 0x1C, 0x00, 0x1C, - 0x38, 0x00, 0x0C, 0x38, 0x00, 0x06, 0x70, 0x1E, 0x02, 0x70, 0x3F, 0xE3, - 0xF0, 0x71, 0xE1, 0xE0, 0xE0, 0xC1, 0xE0, 0xC0, 0xC1, 0xE0, 0xC1, 0xC1, - 0xE1, 0x81, 0xC1, 0xE1, 0x81, 0x83, 0xE1, 0x83, 0x82, 0xE1, 0x83, 0x86, - 0x71, 0xC7, 0x8C, 0x70, 0xF9, 0xF8, 0x38, 0xF0, 0xF0, 0x3C, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x07, 0x80, 0x70, 0x03, 0xFF, 0xE0, 0x00, 0x7F, 0x00, - 0x00, 0x10, 0x00, 0x00, 0x38, 0x00, 0x00, 0x38, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x5C, 0x00, 0x00, 0xDE, 0x00, 0x00, 0x8E, 0x00, - 0x01, 0x8F, 0x00, 0x01, 0x87, 0x00, 0x03, 0x07, 0x80, 0x03, 0x03, 0x80, - 0x02, 0x03, 0xC0, 0x06, 0x03, 0xC0, 0x07, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, - 0x0C, 0x01, 0xE0, 0x18, 0x00, 0xF0, 0x18, 0x00, 0xF0, 0x30, 0x00, 0x78, - 0x30, 0x00, 0x78, 0x70, 0x00, 0x7C, 0xFC, 0x01, 0xFF, 0xFF, 0xFC, 0x03, - 0xFF, 0xF8, 0x1E, 0x0F, 0xC1, 0xE0, 0x3C, 0x1E, 0x01, 0xE1, 0xE0, 0x1E, - 0x1E, 0x01, 0xE1, 0xE0, 0x1E, 0x1E, 0x03, 0xC1, 0xE0, 0x78, 0x1F, 0xFE, - 0x01, 0xFF, 0xF0, 0x1E, 0x07, 0xC1, 0xE0, 0x1E, 0x1E, 0x00, 0xF1, 0xE0, - 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x1E, 0x1E, - 0x07, 0xE3, 0xFF, 0xF8, 0xFF, 0xFE, 0x00, 0x00, 0xFE, 0x08, 0x0F, 0xFF, - 0x60, 0xFC, 0x1F, 0x87, 0xC0, 0x1E, 0x3C, 0x00, 0x38, 0xF0, 0x00, 0x67, - 0x80, 0x01, 0x9E, 0x00, 0x02, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x0F, - 0x00, 0x02, 0x1F, 0x00, 0x38, 0x3F, 0x03, 0x80, 0x7F, 0xFC, 0x00, 0x3F, - 0x80, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x78, 0x3F, 0x80, 0xF0, 0x0F, - 0x81, 0xE0, 0x0F, 0x83, 0xC0, 0x0F, 0x07, 0x80, 0x0F, 0x0F, 0x00, 0x1E, - 0x1E, 0x00, 0x1E, 0x3C, 0x00, 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x00, 0xF1, - 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x07, 0x8F, 0x00, 0x1E, 0x1E, - 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0x78, 0x01, 0xE0, 0xF0, 0x0F, 0x81, 0xE0, - 0x7E, 0x07, 0xFF, 0xF0, 0x3F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x87, 0xFF, - 0xF8, 0x3C, 0x01, 0x83, 0xC0, 0x08, 0x3C, 0x00, 0x83, 0xC0, 0x00, 0x3C, - 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x02, 0x03, 0xC0, 0x60, 0x3F, 0xFE, 0x03, - 0xFF, 0xE0, 0x3C, 0x06, 0x03, 0xC0, 0x20, 0x3C, 0x00, 0x03, 0xC0, 0x00, - 0x3C, 0x00, 0x03, 0xC0, 0x01, 0x3C, 0x00, 0x23, 0xC0, 0x06, 0x3C, 0x01, - 0xE7, 0xFF, 0xFE, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xBF, 0xFF, 0xCF, 0x00, - 0x67, 0x80, 0x13, 0xC0, 0x09, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, - 0x02, 0x1E, 0x03, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0xC0, 0x61, 0xE0, 0x10, - 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, - 0x03, 0xC0, 0x03, 0xF0, 0x03, 0xFC, 0x00, 0x00, 0xFE, 0x04, 0x07, 0xFF, - 0xB8, 0x1F, 0x03, 0xF0, 0xF8, 0x01, 0xE3, 0xE0, 0x01, 0xC7, 0x80, 0x01, - 0x9E, 0x00, 0x01, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x00, 0x07, 0x80, 0x07, 0xFF, 0x00, 0x07, 0xDE, 0x00, 0x07, 0xBC, - 0x00, 0x0F, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x3C, 0xF0, 0x00, 0x78, 0xF0, - 0x00, 0xF1, 0xF0, 0x01, 0xE1, 0xF0, 0x03, 0xC1, 0xF8, 0x1F, 0x00, 0xFF, - 0xFC, 0x00, 0x3F, 0x80, 0xFF, 0x03, 0xFD, 0xF8, 0x07, 0xE3, 0xC0, 0x0F, - 0x0F, 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x0F, - 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xFF, 0xFF, 0x0F, 0xFF, - 0xFC, 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x0F, 0x00, 0x3C, - 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x0F, 0x00, 0x3C, 0x3C, - 0x00, 0xF1, 0xF8, 0x07, 0xEF, 0xF0, 0x3F, 0xC0, 0xFF, 0xBF, 0x0F, 0x07, - 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, - 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC3, 0xF3, 0xFE, 0x0F, 0xF0, - 0x7E, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC6, 0x38, 0xF3, 0x8F, 0xF0, 0x7C, 0x00, 0xFF, 0x07, 0xFC, - 0xFC, 0x03, 0xC0, 0xF0, 0x07, 0x01, 0xE0, 0x1C, 0x03, 0xC0, 0x60, 0x07, - 0x81, 0x80, 0x0F, 0x06, 0x00, 0x1E, 0x18, 0x00, 0x3C, 0x60, 0x00, 0x79, - 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xDF, 0x00, 0x07, 0x8F, - 0x00, 0x0F, 0x0F, 0x00, 0x1E, 0x0F, 0x00, 0x3C, 0x0F, 0x00, 0x78, 0x0F, - 0x00, 0xF0, 0x1F, 0x01, 0xE0, 0x1F, 0x03, 0xC0, 0x1F, 0x0F, 0xC0, 0x3F, - 0x3F, 0xC1, 0xFF, 0x80, 0xFF, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x1E, - 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, - 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0x78, - 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, 0x04, 0xF0, - 0x01, 0x1E, 0x00, 0x63, 0xC0, 0x3C, 0xFF, 0xFF, 0xBF, 0xFF, 0xE0, 0xFC, - 0x00, 0x03, 0xF9, 0xF0, 0x00, 0x1F, 0x87, 0x80, 0x01, 0xF8, 0x3E, 0x00, - 0x0F, 0xC1, 0xF0, 0x00, 0x5E, 0x0B, 0xC0, 0x06, 0xF0, 0x5E, 0x00, 0x37, - 0x82, 0x78, 0x03, 0x3C, 0x13, 0xC0, 0x19, 0xE0, 0x8F, 0x01, 0x8F, 0x04, - 0x78, 0x0C, 0x78, 0x21, 0xE0, 0xC3, 0xC1, 0x0F, 0x06, 0x1E, 0x08, 0x3C, - 0x60, 0xF0, 0x41, 0xE3, 0x07, 0x82, 0x07, 0xB0, 0x3C, 0x10, 0x3D, 0x81, - 0xE0, 0x81, 0xF8, 0x0F, 0x04, 0x07, 0xC0, 0x78, 0x20, 0x3C, 0x03, 0xC1, - 0x00, 0xE0, 0x1E, 0x1C, 0x06, 0x01, 0xFB, 0xF8, 0x10, 0x1F, 0xE0, 0xFC, - 0x00, 0xFE, 0x78, 0x00, 0x70, 0x78, 0x00, 0x40, 0xF8, 0x00, 0x81, 0xF8, - 0x01, 0x02, 0xF8, 0x02, 0x04, 0xF8, 0x04, 0x08, 0xF0, 0x08, 0x11, 0xF0, - 0x10, 0x21, 0xF0, 0x20, 0x41, 0xF0, 0x40, 0x81, 0xF0, 0x81, 0x01, 0xF1, - 0x02, 0x01, 0xE2, 0x04, 0x03, 0xE4, 0x08, 0x03, 0xE8, 0x10, 0x03, 0xF0, - 0x20, 0x03, 0xE0, 0x40, 0x03, 0xC0, 0x80, 0x03, 0x81, 0x00, 0x07, 0x07, - 0x00, 0x06, 0x3F, 0x80, 0x04, 0x00, 0x00, 0xFE, 0x00, 0x07, 0xFF, 0x00, - 0x3E, 0x0F, 0x80, 0xF0, 0x07, 0x83, 0xC0, 0x07, 0x87, 0x80, 0x07, 0x1E, - 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0xC0, - 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x03, 0xFC, 0x00, - 0x07, 0xF8, 0x00, 0x0F, 0x78, 0x00, 0x3C, 0xF0, 0x00, 0x78, 0xE0, 0x01, - 0xE1, 0xE0, 0x03, 0xC1, 0xE0, 0x0F, 0x01, 0xF0, 0x7C, 0x00, 0xFF, 0xE0, - 0x00, 0x7F, 0x00, 0xFF, 0xF8, 0x1F, 0xFF, 0x83, 0xC1, 0xF0, 0xF0, 0x1E, - 0x3C, 0x07, 0xCF, 0x00, 0xF3, 0xC0, 0x3C, 0xF0, 0x0F, 0x3C, 0x03, 0xCF, - 0x01, 0xF3, 0xC0, 0x78, 0xF0, 0x7C, 0x3F, 0xFE, 0x0F, 0xFE, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, - 0x3C, 0x00, 0x1F, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x07, 0xFF, - 0x00, 0x3E, 0x0F, 0x80, 0xF0, 0x07, 0x83, 0xC0, 0x07, 0x87, 0x80, 0x0F, - 0x1E, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0xF0, 0x00, 0x1D, 0xE0, 0x00, 0x3F, - 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x03, 0xFC, - 0x00, 0x07, 0xF8, 0x00, 0x0F, 0x70, 0x00, 0x1C, 0xF0, 0x00, 0x79, 0xE0, - 0x00, 0xF1, 0xE0, 0x03, 0xC1, 0xC0, 0x07, 0x01, 0xC0, 0x1C, 0x01, 0xE0, - 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0xC0, 0xFF, 0xF0, - 0x03, 0xFF, 0xF0, 0x0F, 0x07, 0xC0, 0x78, 0x1E, 0x03, 0xC0, 0x78, 0x1E, - 0x03, 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xF0, 0x3C, 0x07, 0x81, 0xE0, 0x78, - 0x0F, 0x0F, 0x80, 0x7F, 0xF8, 0x03, 0xFE, 0x00, 0x1E, 0x78, 0x00, 0xF1, - 0xE0, 0x07, 0x87, 0x80, 0x3C, 0x3C, 0x01, 0xE0, 0xF0, 0x0F, 0x03, 0xC0, - 0x78, 0x0F, 0x03, 0xC0, 0x7C, 0x3F, 0x01, 0xF3, 0xFC, 0x07, 0xE0, 0x07, - 0x84, 0x1F, 0xFC, 0x3C, 0x3E, 0x30, 0x0E, 0x70, 0x06, 0x70, 0x06, 0x70, - 0x02, 0x78, 0x00, 0x7C, 0x00, 0x3F, 0x00, 0x1F, 0xC0, 0x0F, 0xE0, 0x03, - 0xF8, 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x0F, 0xC0, - 0x0F, 0xE0, 0x0F, 0x70, 0x1E, 0x78, 0x3C, 0x4F, 0xF8, 0x43, 0xF0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xF0, 0x7C, 0x0F, 0x03, 0x80, 0xF0, 0x10, - 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, - 0x00, 0x00, 0xF0, 0x00, 0x1F, 0x80, 0x03, 0xFC, 0x00, 0xFF, 0x01, 0xFD, - 0xF8, 0x01, 0xC3, 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, - 0x00, 0x83, 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, 0x00, - 0x83, 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, 0x00, 0x83, - 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, 0x00, 0x81, 0xE0, - 0x04, 0x07, 0x80, 0x30, 0x0F, 0x81, 0x80, 0x1F, 0xFC, 0x00, 0x1F, 0xC0, - 0x00, 0xFF, 0xC0, 0x7F, 0x3E, 0x00, 0x1E, 0x1E, 0x00, 0x0C, 0x0E, 0x00, - 0x18, 0x0F, 0x00, 0x18, 0x07, 0x00, 0x10, 0x07, 0x80, 0x30, 0x07, 0x80, - 0x30, 0x03, 0xC0, 0x60, 0x03, 0xC0, 0x60, 0x01, 0xE0, 0x40, 0x01, 0xE0, - 0xC0, 0x00, 0xF0, 0xC0, 0x00, 0xF1, 0x80, 0x00, 0x71, 0x80, 0x00, 0x7B, - 0x00, 0x00, 0x3B, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x08, 0x00, 0xFF, 0x9F, - 0xF0, 0x3F, 0x9F, 0x03, 0xE0, 0x07, 0x07, 0x80, 0xF0, 0x03, 0x03, 0xC0, - 0x78, 0x01, 0x80, 0xE0, 0x1E, 0x00, 0x80, 0x78, 0x0F, 0x00, 0xC0, 0x1C, - 0x03, 0x80, 0x60, 0x0F, 0x01, 0xE0, 0x20, 0x07, 0x81, 0xF0, 0x30, 0x01, - 0xC0, 0xBC, 0x18, 0x00, 0xF0, 0xDE, 0x08, 0x00, 0x78, 0x67, 0x0C, 0x00, - 0x1E, 0x23, 0xC4, 0x00, 0x0F, 0x31, 0xE6, 0x00, 0x03, 0x90, 0x7B, 0x00, - 0x01, 0xF8, 0x3D, 0x00, 0x00, 0xFC, 0x0F, 0x80, 0x00, 0x3C, 0x07, 0xC0, - 0x00, 0x1E, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0xE0, 0x00, 0x03, 0x00, 0x70, - 0x00, 0x01, 0x80, 0x10, 0x00, 0x00, 0x80, 0x08, 0x00, 0x7F, 0xE0, 0xFF, - 0x0F, 0xC0, 0x1E, 0x03, 0xE0, 0x0E, 0x00, 0xF0, 0x06, 0x00, 0x3C, 0x06, - 0x00, 0x0F, 0x06, 0x00, 0x07, 0x86, 0x00, 0x01, 0xE6, 0x00, 0x00, 0x7B, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x03, - 0xF0, 0x00, 0x03, 0x78, 0x00, 0x01, 0x9E, 0x00, 0x01, 0x87, 0x80, 0x01, - 0x83, 0xE0, 0x01, 0x80, 0xF0, 0x01, 0x80, 0x3C, 0x01, 0x80, 0x1F, 0x01, - 0xC0, 0x07, 0xC1, 0xE0, 0x03, 0xF3, 0xFE, 0x0F, 0xFE, 0xFF, 0xC0, 0xFF, - 0x7E, 0x00, 0x1C, 0x1E, 0x00, 0x18, 0x1F, 0x00, 0x30, 0x0F, 0x00, 0x60, - 0x07, 0x80, 0x60, 0x03, 0xC0, 0xC0, 0x03, 0xE1, 0x80, 0x01, 0xE1, 0x80, - 0x00, 0xF3, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x7E, 0x00, 0x01, 0xFF, 0x80, 0x3F, 0xFF, 0xF1, 0xFF, 0xFF, 0x9C, - 0x00, 0x78, 0xC0, 0x07, 0x84, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x3C, - 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x00, 0x00, 0x78, 0x00, 0x47, 0x80, 0x06, 0x78, 0x00, 0x33, 0x80, - 0x07, 0x3F, 0xFF, 0xFB, 0xFF, 0xFF, 0xC0, 0xFF, 0x83, 0x06, 0x0C, 0x18, - 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x07, 0xF0, 0xC0, 0x18, 0x06, 0x01, - 0x80, 0x70, 0x0C, 0x03, 0x00, 0xE0, 0x18, 0x06, 0x01, 0xC0, 0x30, 0x0C, - 0x03, 0x80, 0x60, 0x18, 0x07, 0x00, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x60, - 0x1C, 0x03, 0xFE, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, - 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x1F, 0xF0, 0x03, 0x80, 0x0F, 0x00, 0x1F, 0x00, 0x76, 0x00, 0xCE, - 0x03, 0x8C, 0x06, 0x1C, 0x1C, 0x18, 0x30, 0x30, 0xE0, 0x31, 0x80, 0x67, - 0x00, 0x6C, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xC0, 0xE0, 0x70, - 0x18, 0x0C, 0x03, 0x1F, 0x03, 0x8C, 0x38, 0x31, 0xC1, 0x8E, 0x0C, 0x00, - 0x60, 0x0F, 0x01, 0x98, 0x30, 0xC3, 0x86, 0x38, 0x31, 0xC1, 0x8E, 0x0C, - 0x78, 0xE5, 0xFB, 0xCF, 0x0C, 0x00, 0x00, 0x38, 0x00, 0xF8, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x39, - 0xF0, 0x3B, 0xFC, 0x3C, 0x3E, 0x38, 0x0E, 0x38, 0x0F, 0x38, 0x07, 0x38, - 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x06, 0x38, 0x0E, 0x38, - 0x0C, 0x3C, 0x1C, 0x1F, 0xF0, 0x07, 0xE0, 0x07, 0xE0, 0x7F, 0xE3, 0x87, - 0xD8, 0x0F, 0x60, 0x1B, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, - 0x0E, 0x00, 0x3C, 0x01, 0x78, 0x19, 0xFF, 0xC3, 0xFE, 0x03, 0xE0, 0x00, - 0x00, 0x00, 0x1C, 0x00, 0x7C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x07, 0x9C, 0x1F, 0xDC, 0x38, 0x7C, 0x70, - 0x3C, 0x70, 0x1C, 0x60, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, - 0x1C, 0xE0, 0x1C, 0xF0, 0x1C, 0x70, 0x1C, 0x7C, 0x3E, 0x3F, 0xDF, 0x0F, - 0x90, 0x0F, 0x81, 0xFF, 0x08, 0x3C, 0x80, 0xE7, 0xFF, 0x7F, 0xFF, 0x00, - 0x18, 0x00, 0xC0, 0x07, 0x00, 0x38, 0x03, 0xE0, 0x37, 0x83, 0x3F, 0xF0, - 0xFF, 0x03, 0xF0, 0x01, 0xF0, 0x3F, 0xC3, 0x8E, 0x18, 0x00, 0xC0, 0x0E, - 0x00, 0x70, 0x03, 0x80, 0x1C, 0x03, 0xFE, 0x1F, 0xF0, 0x38, 0x01, 0xC0, - 0x0E, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, - 0xC0, 0x0E, 0x00, 0x70, 0x07, 0xC0, 0xFF, 0x80, 0x0F, 0xC0, 0x1F, 0xFF, - 0x38, 0xFF, 0x70, 0x70, 0x70, 0x70, 0x70, 0x30, 0x70, 0x30, 0x70, 0x30, - 0x38, 0x20, 0x1C, 0x60, 0x0F, 0x80, 0x10, 0x00, 0x20, 0x00, 0x60, 0x00, - 0x7F, 0xE0, 0x3F, 0xFC, 0x1F, 0xFE, 0x20, 0x06, 0x40, 0x02, 0xC0, 0x02, - 0xC0, 0x04, 0xF0, 0x18, 0x7F, 0xF0, 0x1F, 0x80, 0x00, 0x00, 0x38, 0x00, - 0xF8, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, - 0x38, 0x00, 0x38, 0xF0, 0x3B, 0xF8, 0x3E, 0x3C, 0x3C, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x7C, 0x3E, 0xFE, 0x7F, 0x18, 0x3C, - 0x3C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x04, 0x3C, 0x7C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x3C, 0xFF, 0x03, 0x03, - 0xC1, 0xE0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0xC3, 0xE0, 0x70, - 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, - 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x37, 0x3B, 0xF8, 0xF8, 0x00, 0x00, - 0x1C, 0x00, 0x3E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x3F, 0x8E, 0x0F, 0x07, 0x06, 0x03, - 0x86, 0x01, 0xC4, 0x00, 0xE4, 0x00, 0x7E, 0x00, 0x3F, 0x80, 0x1D, 0xC0, - 0x0E, 0x70, 0x07, 0x1C, 0x03, 0x8F, 0x01, 0xC3, 0xC0, 0xE0, 0xF0, 0xF8, - 0x3C, 0xFE, 0x7F, 0x80, 0x00, 0x1C, 0x7C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x3C, 0xFF, 0x38, 0xF0, 0x7C, 0x3E, 0xFE, 0x7F, 0x83, - 0xE3, 0xF0, 0xE0, 0xE0, 0x70, 0x1C, 0x38, 0x1C, 0x07, 0x0E, 0x07, 0x01, - 0xC3, 0x81, 0xC0, 0x70, 0xE0, 0x70, 0x1C, 0x38, 0x1C, 0x07, 0x0E, 0x07, - 0x01, 0xC3, 0x81, 0xC0, 0x70, 0xE0, 0x70, 0x1C, 0x38, 0x1C, 0x07, 0x0E, - 0x07, 0x01, 0xC3, 0x81, 0xE0, 0x73, 0xF9, 0xFC, 0x7F, 0x38, 0xF0, 0xFB, - 0xF8, 0x3E, 0x3C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, - 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, - 0x1C, 0x78, 0x3C, 0xFE, 0x7F, 0x07, 0xE0, 0x1F, 0xF8, 0x3C, 0x7C, 0x78, - 0x3E, 0x70, 0x1E, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, - 0x0F, 0xF8, 0x0F, 0x78, 0x0E, 0x7C, 0x1C, 0x3E, 0x3C, 0x0F, 0xF0, 0x07, - 0xC0, 0x18, 0xF0, 0xFB, 0xFC, 0x3E, 0x1E, 0x38, 0x0E, 0x38, 0x0F, 0x38, - 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x06, 0x38, - 0x0E, 0x38, 0x0C, 0x3E, 0x1C, 0x3B, 0xF8, 0x39, 0xE0, 0x38, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x7C, 0x00, 0xFF, - 0x00, 0x07, 0xC4, 0x1F, 0xEC, 0x3C, 0x3C, 0x70, 0x1C, 0x70, 0x1C, 0x60, - 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xF0, - 0x1C, 0x70, 0x1C, 0x78, 0x3C, 0x3F, 0xDC, 0x1F, 0x1C, 0x00, 0x1C, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x3E, 0x00, - 0xFF, 0x19, 0xFF, 0x7C, 0xF3, 0x9C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, - 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x1F, 0x07, 0xF0, 0x3E, - 0x58, 0x7C, 0x0F, 0x03, 0xC0, 0x7C, 0x07, 0x80, 0xF8, 0x1F, 0x81, 0xF8, - 0x1E, 0x03, 0xC0, 0xF0, 0x3E, 0x1A, 0x7C, 0x10, 0x30, 0x70, 0xFE, 0xFE, - 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x79, - 0x7E, 0x3C, 0xF8, 0x7C, 0x38, 0x3C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x3C, 0x7C, 0x1F, 0xDF, 0x0F, 0x18, 0xFE, 0x1F, - 0x7C, 0x06, 0x38, 0x04, 0x1C, 0x04, 0x1C, 0x0C, 0x0E, 0x08, 0x0E, 0x18, - 0x07, 0x10, 0x07, 0x10, 0x07, 0x20, 0x03, 0xA0, 0x03, 0xE0, 0x01, 0xC0, - 0x01, 0xC0, 0x00, 0x80, 0x00, 0x80, 0xFC, 0x7F, 0x1F, 0x78, 0x3C, 0x06, - 0x38, 0x1C, 0x04, 0x38, 0x1C, 0x04, 0x1C, 0x1C, 0x0C, 0x1C, 0x0E, 0x08, - 0x1C, 0x1E, 0x18, 0x0E, 0x17, 0x10, 0x0E, 0x37, 0x10, 0x07, 0x23, 0x30, - 0x07, 0x63, 0xA0, 0x07, 0x43, 0xE0, 0x03, 0xC1, 0xC0, 0x03, 0x81, 0xC0, - 0x01, 0x80, 0x80, 0x01, 0x00, 0x80, 0x7F, 0x7E, 0x1E, 0x0C, 0x07, 0x8C, - 0x01, 0xC4, 0x00, 0x76, 0x00, 0x3E, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x03, - 0xE0, 0x01, 0x70, 0x01, 0x1C, 0x01, 0x8F, 0x01, 0x83, 0x80, 0x80, 0xE0, - 0xC0, 0x79, 0xF0, 0xFF, 0xFE, 0x0F, 0x7C, 0x06, 0x38, 0x06, 0x1C, 0x04, - 0x1C, 0x0C, 0x0E, 0x0C, 0x0E, 0x08, 0x0F, 0x18, 0x07, 0x10, 0x07, 0x90, - 0x03, 0xB0, 0x03, 0xA0, 0x01, 0xE0, 0x01, 0xE0, 0x00, 0xC0, 0x00, 0xC0, - 0x00, 0x80, 0x00, 0x80, 0x01, 0x80, 0x01, 0x00, 0x03, 0x00, 0x7E, 0x00, - 0x7C, 0x00, 0x78, 0x00, 0x7F, 0xF9, 0xFF, 0xE6, 0x07, 0x10, 0x38, 0x00, - 0xE0, 0x07, 0x00, 0x38, 0x01, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xE0, 0x07, - 0x01, 0x38, 0x0D, 0xC0, 0x3F, 0xFF, 0xBF, 0xFE, 0x07, 0x0E, 0x1C, 0x18, - 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x30, 0x60, 0x60, - 0x10, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1C, - 0x0E, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x70, 0x38, 0x18, - 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x08, 0x06, 0x06, - 0x08, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x38, - 0x70, 0xE0, 0x3E, 0x00, 0x7F, 0x87, 0xE3, 0xFE, 0x00, 0x7C}; - -const GFXglyph FreeSerif18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 4, 24, 12, 5, -23}, // 0x21 '!' - {12, 8, 9, 14, 3, -23}, // 0x22 '"' - {21, 17, 23, 17, 0, -22}, // 0x23 '#' - {70, 13, 27, 17, 2, -24}, // 0x24 '$' - {114, 25, 23, 29, 2, -22}, // 0x25 '%' - {186, 25, 25, 27, 1, -24}, // 0x26 '&' - {265, 3, 9, 7, 2, -23}, // 0x27 ''' - {269, 9, 30, 12, 2, -23}, // 0x28 '(' - {303, 9, 30, 12, 1, -22}, // 0x29 ')' - {337, 12, 14, 18, 3, -23}, // 0x2A '*' - {358, 16, 18, 20, 2, -17}, // 0x2B '+' - {394, 4, 9, 9, 2, -3}, // 0x2C ',' - {399, 8, 2, 12, 1, -8}, // 0x2D '-' - {401, 4, 4, 9, 2, -3}, // 0x2E '.' - {403, 10, 24, 10, 0, -23}, // 0x2F '/' - {433, 16, 24, 18, 1, -23}, // 0x30 '0' - {481, 10, 24, 18, 3, -23}, // 0x31 '1' - {511, 16, 24, 17, 1, -23}, // 0x32 '2' - {559, 13, 24, 17, 2, -23}, // 0x33 '3' - {598, 16, 23, 18, 0, -22}, // 0x34 '4' - {644, 13, 24, 17, 2, -23}, // 0x35 '5' - {683, 16, 24, 18, 1, -23}, // 0x36 '6' - {731, 14, 23, 18, 1, -22}, // 0x37 '7' - {772, 12, 25, 18, 2, -24}, // 0x38 '8' - {810, 16, 26, 17, 1, -24}, // 0x39 '9' - {862, 4, 17, 9, 2, -16}, // 0x3A ':' - {871, 5, 22, 9, 2, -16}, // 0x3B ';' - {885, 18, 18, 20, 1, -17}, // 0x3C '<' - {926, 18, 9, 20, 1, -12}, // 0x3D '=' - {947, 18, 18, 20, 1, -17}, // 0x3E '>' - {988, 13, 25, 16, 2, -24}, // 0x3F '?' - {1029, 24, 25, 30, 3, -24}, // 0x40 '@' - {1104, 24, 23, 25, 1, -22}, // 0x41 'A' - {1173, 20, 23, 22, 1, -22}, // 0x42 'B' - {1231, 22, 24, 23, 1, -23}, // 0x43 'C' - {1297, 23, 23, 25, 1, -22}, // 0x44 'D' - {1364, 20, 23, 21, 2, -22}, // 0x45 'E' - {1422, 17, 23, 20, 2, -22}, // 0x46 'F' - {1471, 23, 24, 25, 1, -23}, // 0x47 'G' - {1540, 22, 23, 25, 2, -22}, // 0x48 'H' - {1604, 9, 23, 11, 2, -22}, // 0x49 'I' - {1630, 12, 23, 13, 0, -22}, // 0x4A 'J' - {1665, 23, 23, 25, 2, -22}, // 0x4B 'K' - {1732, 19, 23, 21, 2, -22}, // 0x4C 'L' - {1787, 29, 23, 31, 1, -22}, // 0x4D 'M' - {1871, 23, 23, 25, 1, -22}, // 0x4E 'N' - {1938, 23, 24, 25, 1, -23}, // 0x4F 'O' - {2007, 18, 23, 20, 1, -22}, // 0x50 'P' - {2059, 23, 30, 25, 1, -23}, // 0x51 'Q' - {2146, 21, 23, 23, 2, -22}, // 0x52 'R' - {2207, 16, 24, 19, 1, -23}, // 0x53 'S' - {2255, 20, 23, 21, 1, -22}, // 0x54 'T' - {2313, 22, 23, 25, 2, -22}, // 0x55 'U' - {2377, 24, 23, 25, 0, -22}, // 0x56 'V' - {2446, 33, 23, 33, 0, -22}, // 0x57 'W' - {2541, 25, 23, 25, 0, -22}, // 0x58 'X' - {2613, 24, 23, 25, 1, -22}, // 0x59 'Y' - {2682, 21, 23, 21, 0, -22}, // 0x5A 'Z' - {2743, 7, 28, 12, 3, -22}, // 0x5B '[' - {2768, 10, 24, 10, 0, -23}, // 0x5C '\' - {2798, 7, 28, 12, 2, -22}, // 0x5D ']' - {2823, 15, 13, 16, 1, -22}, // 0x5E '^' - {2848, 18, 2, 17, 0, 3}, // 0x5F '_' - {2853, 8, 6, 9, 1, -23}, // 0x60 '`' - {2859, 13, 16, 15, 2, -15}, // 0x61 'a' - {2885, 16, 25, 17, 1, -24}, // 0x62 'b' - {2935, 14, 16, 16, 1, -15}, // 0x63 'c' - {2963, 16, 25, 17, 1, -24}, // 0x64 'd' - {3013, 13, 16, 16, 1, -15}, // 0x65 'e' - {3039, 13, 25, 13, 0, -24}, // 0x66 'f' - {3080, 16, 24, 16, 1, -15}, // 0x67 'g' - {3128, 16, 25, 17, 1, -24}, // 0x68 'h' - {3178, 8, 24, 10, 0, -23}, // 0x69 'i' - {3202, 9, 32, 12, 0, -23}, // 0x6A 'j' - {3238, 17, 25, 18, 1, -24}, // 0x6B 'k' - {3292, 8, 25, 9, 0, -24}, // 0x6C 'l' - {3317, 26, 16, 27, 1, -15}, // 0x6D 'm' - {3369, 16, 16, 17, 1, -15}, // 0x6E 'n' - {3401, 16, 16, 17, 1, -15}, // 0x6F 'o' - {3433, 16, 24, 17, 1, -15}, // 0x70 'p' - {3481, 16, 24, 17, 1, -15}, // 0x71 'q' - {3529, 11, 16, 12, 1, -15}, // 0x72 'r' - {3551, 10, 16, 13, 1, -15}, // 0x73 's' - {3571, 8, 19, 10, 2, -18}, // 0x74 't' - {3590, 16, 16, 17, 1, -15}, // 0x75 'u' - {3622, 16, 16, 16, 0, -15}, // 0x76 'v' - {3654, 24, 16, 24, 0, -15}, // 0x77 'w' - {3702, 17, 16, 17, 0, -15}, // 0x78 'x' - {3736, 16, 24, 16, 0, -15}, // 0x79 'y' - {3784, 14, 16, 15, 0, -15}, // 0x7A 'z' - {3812, 8, 30, 17, 3, -23}, // 0x7B '{' - {3842, 2, 24, 7, 2, -23}, // 0x7C '|' - {3848, 8, 30, 17, 6, -22}, // 0x7D '}' - {3878, 16, 4, 17, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSerif18pt7b PROGMEM = {(uint8_t *)FreeSerif18pt7bBitmaps, - (GFXglyph *)FreeSerif18pt7bGlyphs, - 0x20, 0x7E, 42}; - -// Approx. 4558 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h deleted file mode 100644 index cac1999..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h +++ /dev/null @@ -1,692 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif24pt7bBitmaps[] PROGMEM = { - 0x77, 0xBF, 0xFF, 0xFF, 0xFF, 0xFB, 0x9C, 0xE7, 0x39, 0xCE, 0x61, 0x08, - 0x42, 0x10, 0x84, 0x00, 0x00, 0xEF, 0xFF, 0xEE, 0x60, 0x6F, 0x0F, 0xF0, - 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, 0x60, - 0x66, 0x06, 0x00, 0xE0, 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x07, - 0x03, 0x80, 0x0E, 0x06, 0x00, 0x18, 0x0C, 0x00, 0x30, 0x38, 0x00, 0xE0, - 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC1, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, - 0xF0, 0x18, 0x0C, 0x00, 0x70, 0x38, 0x00, 0xE0, 0x70, 0x01, 0xC0, 0xE0, - 0x03, 0x81, 0xC0, 0x07, 0x03, 0x80, 0x0C, 0x06, 0x07, 0xFF, 0xFF, 0xEF, - 0xFF, 0xFF, 0xC0, 0xE0, 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x06, - 0x03, 0x80, 0x0C, 0x06, 0x00, 0x38, 0x1C, 0x00, 0x70, 0x38, 0x00, 0xE0, - 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x00, 0x00, 0x40, 0x00, 0x08, - 0x00, 0x01, 0x00, 0x01, 0xFC, 0x01, 0xE4, 0xF8, 0x70, 0x87, 0x9C, 0x10, - 0x77, 0x02, 0x06, 0xE0, 0x40, 0xDC, 0x08, 0x0B, 0x81, 0x00, 0x78, 0x20, - 0x07, 0x84, 0x00, 0xFC, 0x80, 0x0F, 0xF0, 0x00, 0xFE, 0x00, 0x07, 0xF0, - 0x00, 0x7F, 0x80, 0x03, 0xFC, 0x00, 0x3F, 0xC0, 0x05, 0xFC, 0x00, 0x8F, - 0x80, 0x10, 0xF8, 0x02, 0x0F, 0x00, 0x40, 0xF0, 0x08, 0x1E, 0x01, 0x03, - 0xE0, 0x20, 0x7C, 0x04, 0x0F, 0xC0, 0x83, 0xBC, 0x10, 0xE3, 0xE2, 0x78, - 0x3F, 0xFE, 0x00, 0xFE, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, - 0x01, 0xF0, 0x00, 0xC0, 0x03, 0xFC, 0x01, 0xE0, 0x03, 0xC7, 0x81, 0xE0, - 0x03, 0xC0, 0x7F, 0x60, 0x03, 0xC0, 0x20, 0x70, 0x01, 0xE0, 0x10, 0x30, - 0x01, 0xE0, 0x08, 0x38, 0x00, 0xE0, 0x04, 0x18, 0x00, 0xF0, 0x02, 0x1C, - 0x00, 0x78, 0x02, 0x0C, 0x00, 0x38, 0x01, 0x0E, 0x00, 0x1C, 0x01, 0x86, - 0x00, 0x0E, 0x00, 0x86, 0x00, 0x07, 0x00, 0x87, 0x03, 0xE1, 0x80, 0xC3, - 0x07, 0xFC, 0xE1, 0xC3, 0x87, 0xC6, 0x3F, 0xC1, 0x87, 0x81, 0x8F, 0x81, - 0xC7, 0x80, 0x40, 0x00, 0xC3, 0xC0, 0x20, 0x00, 0xE3, 0xC0, 0x10, 0x00, - 0x61, 0xC0, 0x08, 0x00, 0x61, 0xE0, 0x04, 0x00, 0x70, 0xF0, 0x06, 0x00, - 0x30, 0x70, 0x02, 0x00, 0x38, 0x38, 0x03, 0x00, 0x18, 0x1C, 0x01, 0x00, - 0x1C, 0x0E, 0x01, 0x80, 0x0C, 0x07, 0x01, 0x80, 0x0E, 0x01, 0xC3, 0x80, - 0x06, 0x00, 0x7F, 0x80, 0x06, 0x00, 0x1F, 0x00, 0x07, 0x00, 0x00, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x70, 0xE0, 0x00, - 0x00, 0xE0, 0x60, 0x00, 0x00, 0xC0, 0x30, 0x00, 0x01, 0xC0, 0x30, 0x00, - 0x01, 0xC0, 0x30, 0x00, 0x01, 0xC0, 0x30, 0x00, 0x01, 0xC0, 0x70, 0x00, - 0x01, 0xE0, 0xE0, 0x00, 0x01, 0xE1, 0xC0, 0x00, 0x00, 0xF3, 0x80, 0x00, - 0x00, 0xFF, 0x0F, 0xFC, 0x00, 0xFC, 0x03, 0xF0, 0x00, 0xF8, 0x01, 0xE0, - 0x01, 0xFC, 0x01, 0xC0, 0x07, 0x7C, 0x01, 0xC0, 0x0F, 0x3E, 0x01, 0x80, - 0x1E, 0x3E, 0x03, 0x00, 0x3C, 0x1F, 0x03, 0x00, 0x7C, 0x1F, 0x06, 0x00, - 0x78, 0x0F, 0x86, 0x00, 0x78, 0x07, 0xCC, 0x00, 0xF8, 0x07, 0xE8, 0x00, - 0xF8, 0x03, 0xF8, 0x00, 0xF8, 0x01, 0xF0, 0x00, 0xF8, 0x01, 0xF8, 0x00, - 0xFC, 0x00, 0xFC, 0x01, 0xFC, 0x01, 0xFE, 0x01, 0x7E, 0x03, 0xBF, 0x86, - 0x7F, 0x0F, 0x1F, 0xFE, 0x3F, 0xFC, 0x0F, 0xF8, 0x0F, 0xE0, 0x03, 0xF0, - 0x6F, 0xFF, 0xFF, 0x66, 0x66, 0x66, 0x00, 0x10, 0x02, 0x00, 0xC0, 0x18, - 0x03, 0x00, 0x60, 0x0E, 0x00, 0xC0, 0x1C, 0x03, 0x80, 0x38, 0x03, 0x80, - 0x78, 0x07, 0x00, 0x70, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x07, 0x00, 0x70, 0x07, 0x80, - 0x38, 0x03, 0x80, 0x38, 0x01, 0xC0, 0x0C, 0x00, 0xC0, 0x06, 0x00, 0x30, - 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, 0xC0, 0x06, 0x00, 0x30, 0x01, 0x80, - 0x0C, 0x00, 0x60, 0x07, 0x00, 0x30, 0x03, 0x80, 0x1C, 0x01, 0xC0, 0x1C, - 0x01, 0xE0, 0x0E, 0x00, 0xE0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0E, 0x00, 0xE0, 0x1E, - 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x38, 0x03, 0x00, 0x70, 0x0E, 0x00, 0xC0, - 0x18, 0x03, 0x00, 0x40, 0x08, 0x00, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, - 0x43, 0x86, 0xE1, 0x0F, 0xF1, 0x1F, 0xF9, 0x3E, 0x3D, 0x78, 0x07, 0xC0, - 0x01, 0x00, 0x07, 0xC0, 0x19, 0x30, 0xF9, 0x1E, 0xF1, 0x0F, 0xE1, 0x07, - 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x00, 0x38, 0x00, 0x00, - 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, - 0x00, 0x00, 0xE0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0x00, - 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, - 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, - 0x0E, 0x00, 0x00, 0x73, 0xEF, 0xFF, 0x7C, 0x10, 0x42, 0x08, 0xC6, 0x00, - 0xFF, 0xFF, 0xFC, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x1C, 0x00, 0xE0, 0x03, - 0x80, 0x0E, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x38, 0x00, 0xE0, 0x03, - 0x80, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xE0, 0x07, - 0x00, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xC0, 0x07, - 0x00, 0x3C, 0x00, 0xE0, 0x03, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x38, 0x00, 0x00, 0xFC, 0x00, 0x0E, 0x1C, 0x00, 0x70, 0x38, 0x03, - 0x80, 0x70, 0x1E, 0x01, 0xE0, 0xF0, 0x03, 0x83, 0xC0, 0x0F, 0x0F, 0x00, - 0x3C, 0x7C, 0x00, 0xF9, 0xE0, 0x01, 0xE7, 0x80, 0x07, 0xBE, 0x00, 0x1F, - 0xF8, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, 0xF8, - 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, - 0x7F, 0xE0, 0x01, 0xF7, 0x80, 0x07, 0x9E, 0x00, 0x1E, 0x7C, 0x00, 0xF8, - 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x07, 0x00, 0x38, 0x1E, 0x01, 0xE0, 0x38, - 0x07, 0x00, 0x70, 0x38, 0x00, 0xE1, 0xC0, 0x00, 0xFC, 0x00, 0x00, 0x80, - 0x1C, 0x03, 0xE0, 0x7F, 0x0C, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, - 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, - 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, - 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3F, - 0x0F, 0xFF, 0x01, 0xF8, 0x00, 0x3F, 0xF0, 0x07, 0xFF, 0xE0, 0x70, 0x3F, - 0x83, 0x00, 0x7C, 0x30, 0x01, 0xF1, 0x00, 0x0F, 0x98, 0x00, 0x3C, 0x80, - 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x1C, - 0x00, 0x01, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x70, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, - 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x43, 0x00, - 0x02, 0x30, 0x00, 0x23, 0xFF, 0xFF, 0x3F, 0xFF, 0xF3, 0xFF, 0xFF, 0x80, - 0x03, 0xF8, 0x03, 0xFF, 0x01, 0x83, 0xE0, 0x80, 0x3C, 0x40, 0x0F, 0x10, - 0x01, 0xC8, 0x00, 0x70, 0x00, 0x1C, 0x00, 0x06, 0x00, 0x03, 0x00, 0x00, - 0x80, 0x00, 0xC0, 0x00, 0x78, 0x00, 0x7F, 0x80, 0x7F, 0xF0, 0x01, 0xFE, - 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x01, 0xC0, - 0x00, 0x70, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, - 0x30, 0x00, 0x0C, 0x70, 0x06, 0x3F, 0x07, 0x0F, 0xFF, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0x00, 0x00, 0x38, 0x00, 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x01, - 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xDC, 0x00, 0x0C, 0xE0, 0x00, 0x47, 0x00, - 0x06, 0x38, 0x00, 0x61, 0xC0, 0x06, 0x0E, 0x00, 0x30, 0x70, 0x03, 0x03, - 0x80, 0x30, 0x1C, 0x01, 0x80, 0xE0, 0x18, 0x07, 0x01, 0x80, 0x38, 0x08, - 0x01, 0xC0, 0xC0, 0x0E, 0x0C, 0x00, 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xE0, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x01, 0xC0, 0x00, - 0x0E, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x00, - 0x40, 0x7F, 0xF8, 0x1F, 0xFE, 0x03, 0xFF, 0xC0, 0xC0, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x00, 0xC0, 0x00, 0x1C, 0x00, 0x07, 0xF8, 0x00, 0xFF, 0xC0, - 0x3F, 0xFE, 0x00, 0xFF, 0xE0, 0x01, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x7C, - 0x00, 0x07, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x1C, - 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x30, - 0x00, 0x0E, 0x00, 0x01, 0x80, 0x00, 0x71, 0xE0, 0x1C, 0x3F, 0x07, 0x07, - 0xFF, 0x80, 0x3F, 0x80, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x0F, - 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, - 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, - 0x07, 0xC7, 0xE0, 0x3E, 0xFF, 0xC3, 0xF8, 0x3F, 0x1F, 0x80, 0x7C, 0xF8, - 0x03, 0xF7, 0xC0, 0x0F, 0xBE, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, - 0xFC, 0x00, 0x7F, 0xE0, 0x03, 0xFF, 0x00, 0x1F, 0x78, 0x00, 0xFB, 0xE0, - 0x07, 0x9F, 0x00, 0x3C, 0x78, 0x03, 0xE3, 0xE0, 0x1E, 0x0F, 0x81, 0xE0, - 0x3E, 0x1E, 0x00, 0xFF, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0xFF, 0xF3, 0xFF, - 0xFF, 0x3F, 0xFF, 0xE7, 0x00, 0x0E, 0x40, 0x00, 0xEC, 0x00, 0x1C, 0x80, - 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, - 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x00, 0xE0, - 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x38, - 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x07, - 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xC0, 0x00, 0x03, 0xF0, 0x03, 0xFF, 0x03, 0xC1, 0xE0, 0xC0, 0x1C, 0x70, - 0x07, 0x18, 0x00, 0xEE, 0x00, 0x3B, 0x80, 0x0E, 0xF0, 0x03, 0xBC, 0x00, - 0xE7, 0x80, 0x71, 0xF0, 0x38, 0x3E, 0x1C, 0x07, 0xEE, 0x00, 0xFE, 0x00, - 0x1F, 0xC0, 0x03, 0xF8, 0x03, 0xFF, 0x01, 0xC7, 0xE0, 0xE0, 0xFC, 0x70, - 0x0F, 0x98, 0x01, 0xEE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x01, 0xF8, 0x00, - 0x7E, 0x00, 0x1F, 0xC0, 0x07, 0x70, 0x03, 0x9E, 0x00, 0xE3, 0xE0, 0xF0, - 0x7F, 0xF0, 0x07, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x3F, 0xF0, 0x03, 0xC3, - 0xE0, 0x3C, 0x0F, 0x83, 0xC0, 0x3C, 0x3E, 0x00, 0xF1, 0xE0, 0x07, 0xCF, - 0x00, 0x3E, 0xF8, 0x00, 0xF7, 0xC0, 0x07, 0xFE, 0x00, 0x3F, 0xF0, 0x01, - 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xF0, 0x03, 0xEF, 0x80, 0x1F, 0x7C, - 0x00, 0xF9, 0xF0, 0x0F, 0xC7, 0xE1, 0xFC, 0x1F, 0xF9, 0xE0, 0x3F, 0x1F, - 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, - 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, - 0x0F, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x00, 0x77, 0xFF, 0xF7, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xBF, 0xFF, 0xB8, 0x39, 0xF7, - 0xDF, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x73, 0xEF, - 0xFF, 0x7C, 0x10, 0x42, 0x08, 0xC6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x07, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, - 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xE0, - 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0x00, 0x00, 0x01, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0xE0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x07, - 0xF8, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xE0, - 0x0F, 0xFE, 0x0C, 0x1F, 0x88, 0x03, 0xEC, 0x01, 0xF7, 0x00, 0x7F, 0xC0, - 0x3F, 0xE0, 0x1F, 0x70, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xC0, 0x01, 0xE0, - 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, 0x70, 0x00, 0x30, 0x00, 0x10, - 0x00, 0x18, 0x00, 0x08, 0x00, 0x04, 0x00, 0x06, 0x00, 0x02, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x03, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, - 0xFF, 0x00, 0x00, 0xFC, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x07, 0xC0, - 0x00, 0x30, 0x0F, 0x00, 0x00, 0x18, 0x1E, 0x00, 0x00, 0x0C, 0x1E, 0x00, - 0x00, 0x04, 0x3C, 0x00, 0xF8, 0x06, 0x3C, 0x01, 0xFD, 0xC2, 0x78, 0x03, - 0xC7, 0xC3, 0x78, 0x07, 0x07, 0x81, 0xF0, 0x0E, 0x03, 0x81, 0xF0, 0x0E, - 0x03, 0x81, 0xF0, 0x1C, 0x07, 0x81, 0xF0, 0x1C, 0x07, 0x01, 0xF0, 0x38, - 0x07, 0x01, 0xF0, 0x38, 0x07, 0x03, 0xF0, 0x38, 0x0F, 0x02, 0xF0, 0x38, - 0x0E, 0x02, 0xF0, 0x38, 0x1E, 0x04, 0x78, 0x38, 0x1E, 0x0C, 0x78, 0x1C, - 0x6E, 0x18, 0x38, 0x1F, 0xC7, 0xF0, 0x3C, 0x0F, 0x03, 0xE0, 0x1E, 0x00, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x60, 0x00, 0xFC, 0x03, 0xE0, 0x00, 0x3F, - 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, - 0x80, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x0D, - 0xF0, 0x00, 0x00, 0x0D, 0xF0, 0x00, 0x00, 0x18, 0xF0, 0x00, 0x00, 0x18, - 0xF8, 0x00, 0x00, 0x38, 0x78, 0x00, 0x00, 0x30, 0x7C, 0x00, 0x00, 0x30, - 0x7C, 0x00, 0x00, 0x60, 0x3E, 0x00, 0x00, 0x60, 0x3E, 0x00, 0x00, 0xE0, - 0x1E, 0x00, 0x00, 0xC0, 0x1F, 0x00, 0x00, 0xC0, 0x1F, 0x00, 0x01, 0x80, - 0x0F, 0x80, 0x01, 0xFF, 0xFF, 0x80, 0x03, 0xFF, 0xFF, 0xC0, 0x03, 0x00, - 0x07, 0xC0, 0x07, 0x00, 0x07, 0xC0, 0x06, 0x00, 0x03, 0xE0, 0x06, 0x00, - 0x03, 0xE0, 0x0E, 0x00, 0x01, 0xF0, 0x0C, 0x00, 0x01, 0xF0, 0x1C, 0x00, - 0x01, 0xF8, 0x3C, 0x00, 0x01, 0xF8, 0x7E, 0x00, 0x01, 0xFC, 0xFF, 0x80, - 0x0F, 0xFF, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0x80, 0x1F, 0x01, 0xF8, - 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x00, 0xF8, 0x0F, 0x80, 0x1F, 0x81, 0xF0, - 0x01, 0xF0, 0x3E, 0x00, 0x3E, 0x07, 0xC0, 0x07, 0xC0, 0xF8, 0x00, 0xF8, - 0x1F, 0x00, 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0x7C, 0x01, 0xF0, 0x0F, 0x80, - 0xFC, 0x01, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xC0, 0x07, 0xC0, 0x7F, 0x00, - 0xF8, 0x01, 0xF0, 0x1F, 0x00, 0x1F, 0x03, 0xE0, 0x03, 0xE0, 0x7C, 0x00, - 0x3E, 0x0F, 0x80, 0x07, 0xC1, 0xF0, 0x00, 0xF8, 0x3E, 0x00, 0x1F, 0x07, - 0xC0, 0x03, 0xE0, 0xF8, 0x00, 0xF8, 0x1F, 0x00, 0x1F, 0x03, 0xE0, 0x07, - 0xC0, 0x7C, 0x07, 0xF0, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x00, 0x00, - 0x1F, 0xF0, 0x20, 0x07, 0xFF, 0xEE, 0x01, 0xF8, 0x1F, 0xE0, 0x3E, 0x00, - 0x7E, 0x07, 0x80, 0x01, 0xE0, 0xF0, 0x00, 0x1E, 0x1F, 0x00, 0x00, 0xE3, - 0xE0, 0x00, 0x06, 0x3C, 0x00, 0x00, 0x67, 0xC0, 0x00, 0x02, 0x7C, 0x00, - 0x00, 0x27, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x02, 0x0F, 0x80, 0x00, 0xE0, 0x7E, 0x00, 0x1C, 0x03, 0xF8, 0x0F, 0x00, - 0x0F, 0xFF, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0xFF, 0xC0, 0x00, 0x7F, - 0xFF, 0xF8, 0x00, 0x3E, 0x03, 0xFC, 0x00, 0x7C, 0x00, 0xFC, 0x00, 0xF8, - 0x00, 0x7E, 0x01, 0xF0, 0x00, 0x7E, 0x03, 0xE0, 0x00, 0x7C, 0x07, 0xC0, - 0x00, 0x7C, 0x0F, 0x80, 0x00, 0xF8, 0x1F, 0x00, 0x00, 0xF8, 0x3E, 0x00, - 0x01, 0xF0, 0x7C, 0x00, 0x03, 0xF0, 0xF8, 0x00, 0x03, 0xE1, 0xF0, 0x00, - 0x07, 0xC3, 0xE0, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x1F, 0x0F, 0x80, 0x00, - 0x3E, 0x1F, 0x00, 0x00, 0x7C, 0x3E, 0x00, 0x00, 0xF8, 0x7C, 0x00, 0x01, - 0xF0, 0xF8, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x1E, - 0x07, 0xC0, 0x00, 0x7C, 0x0F, 0x80, 0x01, 0xF0, 0x1F, 0x00, 0x03, 0xE0, - 0x3E, 0x00, 0x1F, 0x80, 0x7C, 0x00, 0x7C, 0x00, 0xF8, 0x0F, 0xF0, 0x07, - 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF0, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x07, - 0xFF, 0xFF, 0xE0, 0x7C, 0x00, 0x1C, 0x0F, 0x80, 0x01, 0x81, 0xF0, 0x00, - 0x30, 0x3E, 0x00, 0x02, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x20, 0x0F, 0x80, 0x04, - 0x01, 0xF0, 0x01, 0x80, 0x3E, 0x00, 0x70, 0x07, 0xFF, 0xFE, 0x00, 0xFF, - 0xFF, 0xC0, 0x1F, 0x00, 0x38, 0x03, 0xE0, 0x03, 0x00, 0x7C, 0x00, 0x20, - 0x0F, 0x80, 0x04, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0xF8, 0x00, 0x03, 0x1F, 0x00, 0x00, 0x43, 0xE0, 0x00, 0x18, - 0x7C, 0x00, 0x07, 0x0F, 0x80, 0x01, 0xC1, 0xF0, 0x00, 0xF8, 0x7F, 0xFF, - 0xFF, 0x3F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x1F, - 0x00, 0x07, 0x1F, 0x00, 0x03, 0x1F, 0x00, 0x03, 0x1F, 0x00, 0x01, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x08, 0x1F, 0x00, 0x08, 0x1F, 0x00, 0x18, 0x1F, 0x00, 0x38, 0x1F, - 0xFF, 0xF8, 0x1F, 0xFF, 0xF8, 0x1F, 0x00, 0x38, 0x1F, 0x00, 0x18, 0x1F, - 0x00, 0x08, 0x1F, 0x00, 0x08, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0xFF, - 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x08, 0x00, 0xFF, 0xFE, 0x70, 0x07, 0xE0, - 0x1F, 0xE0, 0x1F, 0x00, 0x0F, 0xC0, 0x78, 0x00, 0x07, 0x81, 0xE0, 0x00, - 0x07, 0x07, 0xC0, 0x00, 0x0E, 0x1F, 0x00, 0x00, 0x0C, 0x3E, 0x00, 0x00, - 0x08, 0xF8, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, - 0x7C, 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x01, 0xFD, 0xF0, 0x00, 0x01, 0xF3, - 0xE0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x07, 0xCF, 0x80, 0x00, 0x0F, 0x8F, - 0x80, 0x00, 0x1F, 0x1F, 0x00, 0x00, 0x3E, 0x3E, 0x00, 0x00, 0x7C, 0x3E, - 0x00, 0x00, 0xF8, 0x7C, 0x00, 0x01, 0xF0, 0x7C, 0x00, 0x03, 0xE0, 0xFC, - 0x00, 0x07, 0xC0, 0xFC, 0x00, 0x0F, 0x80, 0x7C, 0x00, 0x3F, 0x00, 0x7F, - 0x01, 0xFC, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x0F, 0xF8, 0x00, 0xFF, 0xE0, - 0x1F, 0xFC, 0xFE, 0x00, 0x1F, 0xC1, 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, - 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x3E, - 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, - 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, - 0x00, 0x0F, 0x81, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0xF8, 0x1F, 0x00, - 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, - 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x3E, - 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, - 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0xFE, - 0x00, 0x1F, 0xCF, 0xFE, 0x01, 0xFF, 0xC0, 0xFF, 0xF8, 0xFE, 0x03, 0xE0, - 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, - 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, - 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, - 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x0F, 0xE3, 0xFF, 0xE0, 0x0F, 0xFF, - 0x80, 0xFE, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, - 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, - 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, - 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3C, 0x0E, 0x1E, 0x0F, 0x8F, 0x07, - 0xCF, 0x01, 0xFF, 0x00, 0x7E, 0x00, 0xFF, 0xF8, 0x3F, 0xFC, 0x3F, 0xC0, - 0x07, 0xE0, 0x0F, 0x80, 0x07, 0x80, 0x0F, 0x80, 0x07, 0x00, 0x0F, 0x80, - 0x0E, 0x00, 0x0F, 0x80, 0x1C, 0x00, 0x0F, 0x80, 0x38, 0x00, 0x0F, 0x80, - 0x70, 0x00, 0x0F, 0x80, 0xE0, 0x00, 0x0F, 0x81, 0xC0, 0x00, 0x0F, 0x83, - 0x80, 0x00, 0x0F, 0x87, 0x00, 0x00, 0x0F, 0x9E, 0x00, 0x00, 0x0F, 0xBC, - 0x00, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0x00, 0x00, 0x0F, 0xDF, - 0x80, 0x00, 0x0F, 0x8F, 0xC0, 0x00, 0x0F, 0x87, 0xE0, 0x00, 0x0F, 0x83, - 0xF0, 0x00, 0x0F, 0x81, 0xF8, 0x00, 0x0F, 0x80, 0xFC, 0x00, 0x0F, 0x80, - 0x7E, 0x00, 0x0F, 0x80, 0x3F, 0x00, 0x0F, 0x80, 0x3F, 0x80, 0x0F, 0x80, - 0x1F, 0x80, 0x0F, 0x80, 0x0F, 0xC0, 0x0F, 0x80, 0x07, 0xE0, 0x0F, 0x80, - 0x07, 0xF0, 0x1F, 0xC0, 0x07, 0xFC, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0xF0, - 0x00, 0x0F, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x7C, 0x00, 0x01, 0x1F, 0x00, 0x00, 0xC7, 0xC0, 0x00, 0x21, 0xF0, - 0x00, 0x18, 0x7C, 0x00, 0x0E, 0x1F, 0x00, 0x1F, 0x8F, 0xFF, 0xFF, 0xCF, - 0xFF, 0xFF, 0xF0, 0xFF, 0x80, 0x00, 0x03, 0xFE, 0x7F, 0x80, 0x00, 0x07, - 0xF0, 0x3F, 0x00, 0x00, 0x1F, 0xC0, 0x7E, 0x00, 0x00, 0x3F, 0x80, 0xFE, - 0x00, 0x00, 0xFF, 0x01, 0xFC, 0x00, 0x01, 0xBE, 0x03, 0x7C, 0x00, 0x03, - 0x7C, 0x06, 0xF8, 0x00, 0x0E, 0xF8, 0x0D, 0xF8, 0x00, 0x19, 0xF0, 0x19, - 0xF0, 0x00, 0x73, 0xE0, 0x33, 0xF0, 0x00, 0xC7, 0xC0, 0x63, 0xE0, 0x03, - 0x8F, 0x80, 0xC7, 0xE0, 0x06, 0x1F, 0x01, 0x87, 0xC0, 0x1C, 0x3E, 0x03, - 0x0F, 0xC0, 0x30, 0x7C, 0x06, 0x0F, 0x80, 0x60, 0xF8, 0x0C, 0x1F, 0x81, - 0x81, 0xF0, 0x18, 0x1F, 0x03, 0x03, 0xE0, 0x30, 0x3F, 0x0C, 0x07, 0xC0, - 0x60, 0x3E, 0x18, 0x0F, 0x80, 0xC0, 0x7C, 0x70, 0x1F, 0x01, 0x80, 0x7C, - 0xC0, 0x3E, 0x03, 0x00, 0xFB, 0x80, 0x7C, 0x06, 0x00, 0xFE, 0x00, 0xF8, - 0x0C, 0x01, 0xFC, 0x01, 0xF0, 0x18, 0x03, 0xF0, 0x03, 0xE0, 0x30, 0x03, - 0xE0, 0x07, 0xC0, 0x60, 0x07, 0x80, 0x0F, 0x81, 0xE0, 0x07, 0x00, 0x1F, - 0x07, 0xE0, 0x0C, 0x00, 0xFF, 0x3F, 0xF0, 0x08, 0x07, 0xFF, 0x80, 0xFF, - 0x00, 0x03, 0xFF, 0x3F, 0x80, 0x00, 0xFC, 0x1F, 0xC0, 0x00, 0x78, 0x0F, - 0xC0, 0x00, 0x30, 0x0F, 0xE0, 0x00, 0x30, 0x0F, 0xF0, 0x00, 0x30, 0x0D, - 0xF8, 0x00, 0x30, 0x0D, 0xFC, 0x00, 0x30, 0x0C, 0xFC, 0x00, 0x30, 0x0C, - 0x7E, 0x00, 0x30, 0x0C, 0x3F, 0x00, 0x30, 0x0C, 0x1F, 0x80, 0x30, 0x0C, - 0x1F, 0xC0, 0x30, 0x0C, 0x0F, 0xE0, 0x30, 0x0C, 0x07, 0xE0, 0x30, 0x0C, - 0x03, 0xF0, 0x30, 0x0C, 0x01, 0xF8, 0x30, 0x0C, 0x01, 0xFC, 0x30, 0x0C, - 0x00, 0xFE, 0x30, 0x0C, 0x00, 0x7E, 0x30, 0x0C, 0x00, 0x3F, 0x30, 0x0C, - 0x00, 0x1F, 0xB0, 0x0C, 0x00, 0x0F, 0xF0, 0x0C, 0x00, 0x0F, 0xF0, 0x0C, - 0x00, 0x07, 0xF0, 0x0C, 0x00, 0x03, 0xF0, 0x0C, 0x00, 0x01, 0xF0, 0x0C, - 0x00, 0x00, 0xF0, 0x1E, 0x00, 0x00, 0xF0, 0x3F, 0x00, 0x00, 0x70, 0xFF, - 0xC0, 0x00, 0x30, 0x00, 0x00, 0x00, 0x10, 0x00, 0x1F, 0xE0, 0x00, 0x03, - 0xFF, 0xF0, 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, - 0x07, 0xC0, 0x7C, 0x00, 0x0F, 0x01, 0xE0, 0x00, 0x1E, 0x0F, 0x80, 0x00, - 0x7C, 0x3C, 0x00, 0x00, 0xF1, 0xF0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x0F, - 0x9E, 0x00, 0x00, 0x1E, 0xF8, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x01, 0xFF, - 0x80, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, 0xE0, - 0x00, 0x01, 0xFF, 0x80, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x1F, 0xF8, 0x00, - 0x00, 0x7D, 0xF0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x0F, 0x9F, 0x00, 0x00, - 0x3E, 0x3C, 0x00, 0x00, 0xF0, 0xF8, 0x00, 0x07, 0xC1, 0xE0, 0x00, 0x1E, - 0x07, 0xC0, 0x00, 0xF8, 0x0F, 0x80, 0x07, 0xC0, 0x1F, 0x00, 0x3E, 0x00, - 0x1F, 0x03, 0xE0, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0xFF, - 0xFF, 0x00, 0x7F, 0xFF, 0x80, 0x7C, 0x1F, 0xC0, 0xF8, 0x07, 0xC1, 0xF0, - 0x07, 0xC3, 0xE0, 0x0F, 0x87, 0xC0, 0x0F, 0x8F, 0x80, 0x1F, 0x1F, 0x00, - 0x3E, 0x3E, 0x00, 0x7C, 0x7C, 0x00, 0xF8, 0xF8, 0x01, 0xF1, 0xF0, 0x07, - 0xC3, 0xE0, 0x0F, 0x87, 0xC0, 0x3E, 0x0F, 0x81, 0xF8, 0x1F, 0xFF, 0xC0, - 0x3F, 0xFE, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xF0, - 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFF, 0xF8, - 0x00, 0x07, 0xC0, 0xF8, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x7C, - 0x03, 0xE0, 0x00, 0x7C, 0x07, 0x80, 0x00, 0x78, 0x1F, 0x00, 0x00, 0xF8, - 0x3C, 0x00, 0x00, 0xF0, 0xF8, 0x00, 0x01, 0xF1, 0xF0, 0x00, 0x03, 0xE3, - 0xC0, 0x00, 0x03, 0xCF, 0x80, 0x00, 0x07, 0xDF, 0x00, 0x00, 0x0F, 0xBE, - 0x00, 0x00, 0x1F, 0x7C, 0x00, 0x00, 0x3E, 0xF8, 0x00, 0x00, 0x7D, 0xF0, - 0x00, 0x00, 0xFB, 0xE0, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x03, 0xEF, 0x80, - 0x00, 0x07, 0xCF, 0x00, 0x00, 0x1F, 0x1F, 0x00, 0x00, 0x3E, 0x3E, 0x00, - 0x00, 0x7C, 0x3C, 0x00, 0x01, 0xF0, 0x7C, 0x00, 0x03, 0xE0, 0x78, 0x00, - 0x0F, 0x80, 0x78, 0x00, 0x1E, 0x00, 0x78, 0x00, 0x78, 0x00, 0x7C, 0x03, - 0xE0, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x1F, - 0x03, 0xF8, 0x01, 0xF0, 0x0F, 0x80, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x03, - 0xE0, 0x1F, 0x00, 0x3E, 0x01, 0xF0, 0x03, 0xE0, 0x1F, 0x00, 0x3E, 0x01, - 0xF0, 0x03, 0xE0, 0x1F, 0x00, 0x3E, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, - 0x7C, 0x01, 0xF0, 0x0F, 0x80, 0x1F, 0x07, 0xF0, 0x01, 0xFF, 0xFC, 0x00, - 0x1F, 0xFE, 0x00, 0x01, 0xF1, 0xF0, 0x00, 0x1F, 0x1F, 0x80, 0x01, 0xF0, - 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x01, 0xF0, 0x3E, 0x00, 0x1F, 0x03, 0xF0, - 0x01, 0xF0, 0x1F, 0x80, 0x1F, 0x00, 0xFC, 0x01, 0xF0, 0x07, 0xC0, 0x1F, - 0x00, 0x7E, 0x01, 0xF0, 0x03, 0xF0, 0x1F, 0x00, 0x1F, 0x83, 0xF8, 0x00, - 0xFC, 0xFF, 0xF0, 0x0F, 0xF0, 0x03, 0xF0, 0x20, 0x7F, 0xF3, 0x07, 0xC1, - 0xF8, 0x78, 0x03, 0xC3, 0x80, 0x0E, 0x3C, 0x00, 0x31, 0xE0, 0x01, 0xCF, - 0x00, 0x06, 0x7C, 0x00, 0x33, 0xE0, 0x01, 0x9F, 0x80, 0x00, 0x7E, 0x00, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0xC0, 0x01, - 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0x7F, - 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, - 0x07, 0xF8, 0x00, 0x3F, 0xC0, 0x01, 0xEF, 0x00, 0x1F, 0x3C, 0x01, 0xF1, - 0xF8, 0x1F, 0x0C, 0xFF, 0xF0, 0x40, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0x7C, 0x07, 0xF0, 0x0F, 0x80, 0x3C, 0x01, 0xF0, - 0x07, 0x00, 0x3E, 0x00, 0x60, 0x07, 0xC0, 0x08, 0x00, 0xF8, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x7F, 0xFC, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0x3F, 0xE0, 0x00, - 0xFC, 0x0F, 0x80, 0x00, 0x78, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x20, 0x07, 0xC0, 0x00, - 0x60, 0x07, 0xC0, 0x00, 0x60, 0x03, 0xE0, 0x00, 0xC0, 0x03, 0xF0, 0x01, - 0xC0, 0x01, 0xFC, 0x07, 0x80, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x0F, 0xF8, - 0x00, 0xFF, 0xF8, 0x01, 0xFF, 0x3F, 0xC0, 0x00, 0x7E, 0x0F, 0x80, 0x00, - 0x3C, 0x0F, 0xC0, 0x00, 0x38, 0x07, 0xC0, 0x00, 0x38, 0x07, 0xC0, 0x00, - 0x30, 0x03, 0xE0, 0x00, 0x70, 0x03, 0xE0, 0x00, 0x60, 0x01, 0xF0, 0x00, - 0x60, 0x01, 0xF0, 0x00, 0xE0, 0x01, 0xF8, 0x00, 0xC0, 0x00, 0xF8, 0x01, - 0xC0, 0x00, 0xF8, 0x01, 0x80, 0x00, 0x7C, 0x01, 0x80, 0x00, 0x7C, 0x03, - 0x80, 0x00, 0x3E, 0x03, 0x00, 0x00, 0x3E, 0x07, 0x00, 0x00, 0x1F, 0x06, - 0x00, 0x00, 0x1F, 0x06, 0x00, 0x00, 0x1F, 0x8E, 0x00, 0x00, 0x0F, 0x8C, - 0x00, 0x00, 0x0F, 0x9C, 0x00, 0x00, 0x07, 0xD8, 0x00, 0x00, 0x07, 0xD8, - 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x00, 0xE0, - 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x40, 0x00, 0xFF, 0xF1, 0xFF, - 0xF0, 0x1F, 0xF3, 0xF8, 0x07, 0xF8, 0x00, 0x7C, 0x1F, 0x80, 0x3F, 0x00, - 0x03, 0x80, 0xF8, 0x01, 0xF0, 0x00, 0x30, 0x0F, 0x80, 0x1F, 0x00, 0x03, - 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x30, 0x07, 0xC0, 0x0F, 0x80, 0x06, 0x00, - 0x3E, 0x00, 0x7C, 0x00, 0x60, 0x03, 0xE0, 0x07, 0xC0, 0x06, 0x00, 0x3E, - 0x00, 0x7C, 0x00, 0xC0, 0x01, 0xF0, 0x07, 0xE0, 0x0C, 0x00, 0x1F, 0x00, - 0xFE, 0x01, 0xC0, 0x01, 0xF0, 0x0D, 0xE0, 0x18, 0x00, 0x0F, 0x80, 0xDF, - 0x01, 0x80, 0x00, 0xF8, 0x19, 0xF0, 0x30, 0x00, 0x07, 0xC1, 0x8F, 0x83, - 0x00, 0x00, 0x7C, 0x38, 0xF8, 0x30, 0x00, 0x07, 0xC3, 0x0F, 0x86, 0x00, - 0x00, 0x3E, 0x30, 0x7C, 0x60, 0x00, 0x03, 0xE7, 0x07, 0xCE, 0x00, 0x00, - 0x3E, 0x60, 0x3E, 0xC0, 0x00, 0x01, 0xF6, 0x03, 0xEC, 0x00, 0x00, 0x1F, - 0xE0, 0x3F, 0xC0, 0x00, 0x01, 0xFC, 0x01, 0xF8, 0x00, 0x00, 0x0F, 0xC0, - 0x1F, 0x80, 0x00, 0x00, 0xF8, 0x01, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x0F, - 0x00, 0x00, 0x00, 0x78, 0x00, 0xF0, 0x00, 0x00, 0x07, 0x00, 0x07, 0x00, - 0x00, 0x00, 0x70, 0x00, 0x60, 0x00, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, - 0x00, 0x20, 0x00, 0x20, 0x00, 0x7F, 0xFE, 0x03, 0xFF, 0x8F, 0xF8, 0x00, - 0x7E, 0x01, 0xFC, 0x00, 0x1C, 0x00, 0x7E, 0x00, 0x1C, 0x00, 0x1F, 0x00, - 0x0C, 0x00, 0x07, 0xC0, 0x0E, 0x00, 0x03, 0xF0, 0x0E, 0x00, 0x00, 0xF8, - 0x0E, 0x00, 0x00, 0x3E, 0x06, 0x00, 0x00, 0x1F, 0x86, 0x00, 0x00, 0x07, - 0xC7, 0x00, 0x00, 0x01, 0xF7, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, - 0x3F, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x03, 0x9F, 0x00, 0x00, - 0x01, 0x8F, 0xC0, 0x00, 0x01, 0x83, 0xF0, 0x00, 0x01, 0xC0, 0xF8, 0x00, - 0x01, 0xC0, 0x7E, 0x00, 0x01, 0xC0, 0x1F, 0x80, 0x01, 0xC0, 0x07, 0xC0, - 0x00, 0xC0, 0x03, 0xF0, 0x00, 0xE0, 0x00, 0xFC, 0x00, 0xE0, 0x00, 0x7F, - 0x00, 0xF0, 0x00, 0x1F, 0x80, 0xFC, 0x00, 0x1F, 0xF3, 0xFF, 0x80, 0x7F, - 0xFE, 0xFF, 0xF8, 0x03, 0xFF, 0x3F, 0xE0, 0x00, 0x7C, 0x1F, 0xC0, 0x00, - 0x78, 0x0F, 0xC0, 0x00, 0x70, 0x07, 0xE0, 0x00, 0x60, 0x03, 0xF0, 0x00, - 0xE0, 0x01, 0xF0, 0x01, 0xC0, 0x01, 0xF8, 0x01, 0x80, 0x00, 0xFC, 0x03, - 0x80, 0x00, 0x7C, 0x07, 0x00, 0x00, 0x7E, 0x06, 0x00, 0x00, 0x3F, 0x0E, - 0x00, 0x00, 0x1F, 0x1C, 0x00, 0x00, 0x1F, 0x98, 0x00, 0x00, 0x0F, 0xF8, - 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x3F, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xF8, - 0xF0, 0x00, 0x3E, 0x38, 0x00, 0x0F, 0x86, 0x00, 0x03, 0xF0, 0xC0, 0x00, - 0x7C, 0x10, 0x00, 0x1F, 0x02, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF8, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFC, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x7E, - 0x00, 0x01, 0x0F, 0x80, 0x00, 0x63, 0xF0, 0x00, 0x0C, 0xFC, 0x00, 0x03, - 0xBF, 0x00, 0x00, 0xE7, 0xC0, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, - 0xFF, 0xF0, 0xFF, 0xF0, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, - 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, - 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0F, 0x07, 0xFC, 0xE0, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0x38, 0x00, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x1C, - 0x00, 0x70, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x1C, 0x00, 0x70, 0x01, - 0xC0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, - 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x01, 0xC0, 0x07, 0x00, 0x1E, 0x00, 0x38, - 0x00, 0xE0, 0x03, 0xC0, 0x07, 0xFF, 0x83, 0xC0, 0xE0, 0x70, 0x38, 0x1C, - 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, - 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x3F, 0xFC, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x03, 0xDC, - 0x00, 0x39, 0xC0, 0x07, 0x9E, 0x00, 0x70, 0xE0, 0x0F, 0x0F, 0x00, 0xE0, - 0x70, 0x1E, 0x07, 0x81, 0xC0, 0x38, 0x3C, 0x03, 0xC3, 0x80, 0x1C, 0x78, - 0x01, 0xE7, 0x00, 0x0E, 0xF0, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xE0, 0x3C, 0x0F, 0x81, 0xF0, 0x1E, 0x03, 0xC0, 0x38, 0x07, 0x03, - 0xF0, 0x07, 0x0E, 0x03, 0x81, 0xC1, 0xE0, 0x30, 0x78, 0x0E, 0x1E, 0x03, - 0x83, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x3E, 0x00, 0x73, 0x80, 0x70, 0xE0, - 0x70, 0x38, 0x38, 0x0E, 0x1C, 0x03, 0x8F, 0x00, 0xE3, 0xC0, 0x38, 0xF0, - 0x0E, 0x3E, 0x07, 0x8F, 0xC3, 0xE1, 0xFF, 0x3F, 0x1F, 0x07, 0x80, 0x06, - 0x00, 0x01, 0xF0, 0x00, 0x3F, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, - 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, - 0x00, 0x07, 0x80, 0x00, 0x3C, 0x7E, 0x01, 0xEF, 0xFC, 0x0F, 0xC3, 0xF0, - 0x7C, 0x07, 0x83, 0xC0, 0x3E, 0x1E, 0x00, 0xF0, 0xF0, 0x07, 0xC7, 0x80, - 0x1E, 0x3C, 0x00, 0xF1, 0xE0, 0x07, 0x8F, 0x00, 0x3C, 0x78, 0x01, 0xE3, - 0xC0, 0x0F, 0x1E, 0x00, 0x70, 0xF0, 0x03, 0x87, 0x80, 0x38, 0x3C, 0x01, - 0xC1, 0xE0, 0x1C, 0x0F, 0xC1, 0xC0, 0x1F, 0xFC, 0x00, 0x3F, 0x80, 0x01, - 0xFC, 0x00, 0xFF, 0xE0, 0x38, 0x3E, 0x0E, 0x03, 0xE3, 0x80, 0x7C, 0xE0, - 0x07, 0x18, 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, - 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x1B, 0xC0, - 0x02, 0x7C, 0x01, 0x87, 0xE0, 0x60, 0x7F, 0xF8, 0x07, 0xFE, 0x00, 0x3F, - 0x00, 0x00, 0x00, 0x60, 0x00, 0x0F, 0x80, 0x00, 0xFE, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x7C, 0x78, 0x07, 0xFD, - 0xE0, 0x3C, 0x3F, 0x81, 0xC0, 0x3E, 0x0E, 0x00, 0xF8, 0x38, 0x01, 0xE1, - 0xE0, 0x07, 0x87, 0x00, 0x1E, 0x3C, 0x00, 0x78, 0xF0, 0x01, 0xE3, 0xC0, - 0x07, 0x8F, 0x00, 0x1E, 0x3C, 0x00, 0x78, 0xF0, 0x01, 0xE3, 0xE0, 0x07, - 0x87, 0x80, 0x1E, 0x1F, 0x00, 0x78, 0x3E, 0x03, 0xE0, 0xFC, 0x1F, 0xF0, - 0xFF, 0xDF, 0x00, 0xFC, 0x60, 0x03, 0xF8, 0x03, 0xFF, 0x01, 0xC1, 0xE0, - 0xC0, 0x3C, 0x70, 0x0F, 0x98, 0x01, 0xE7, 0xFF, 0xFB, 0xFF, 0xFE, 0xE0, - 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x3C, 0x00, - 0x1F, 0x00, 0x05, 0xE0, 0x02, 0x7C, 0x01, 0x8F, 0xC1, 0xC3, 0xFF, 0xE0, - 0x7F, 0xF0, 0x07, 0xF0, 0x00, 0x00, 0x7E, 0x00, 0xFF, 0xC0, 0xE3, 0xE0, - 0x60, 0x70, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x07, 0xFF, 0x83, 0xFF, 0xC0, 0x3C, - 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, - 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x3F, - 0x00, 0xFF, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x3F, 0xF0, 0x03, 0xC7, 0xFE, - 0x3C, 0x1F, 0xF1, 0xC0, 0x70, 0x1E, 0x03, 0xC0, 0xF0, 0x0E, 0x07, 0x80, - 0x70, 0x3C, 0x03, 0x81, 0xE0, 0x1C, 0x07, 0x80, 0xC0, 0x3E, 0x0E, 0x00, - 0x78, 0xE0, 0x01, 0xFC, 0x00, 0x18, 0x00, 0x01, 0x80, 0x00, 0x18, 0x00, - 0x01, 0xE0, 0x00, 0x0F, 0xFF, 0xC0, 0x3F, 0xFF, 0x80, 0xFF, 0xFE, 0x0C, - 0x00, 0x38, 0xC0, 0x00, 0x4C, 0x00, 0x02, 0x60, 0x00, 0x17, 0x00, 0x01, - 0x38, 0x00, 0x09, 0xE0, 0x00, 0x87, 0xC0, 0x38, 0x1F, 0xFF, 0x00, 0x3F, - 0xC0, 0x00, 0x06, 0x00, 0x00, 0xF8, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0x80, - 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, - 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x87, 0xE0, 0x1E, - 0x7F, 0xC0, 0x7B, 0x0F, 0x81, 0xF8, 0x1E, 0x07, 0x80, 0x3C, 0x1E, 0x00, - 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, - 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, - 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, - 0xC3, 0xF0, 0x1F, 0x9F, 0xF1, 0xFF, 0x0E, 0x03, 0xE0, 0x7C, 0x0F, 0x80, - 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x70, - 0x7E, 0x1F, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, - 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x07, - 0xE7, 0xFF, 0x00, 0xE0, 0x1F, 0x01, 0xF0, 0x1F, 0x00, 0xE0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x70, 0x3F, 0x07, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xE0, 0x0E, 0xE0, - 0xEF, 0x1C, 0xFF, 0x87, 0xE0, 0x06, 0x00, 0x00, 0x7C, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, - 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, - 0x00, 0xF0, 0x7F, 0xE1, 0xE0, 0x3E, 0x03, 0xC0, 0x70, 0x07, 0x81, 0x80, - 0x0F, 0x06, 0x00, 0x1E, 0x18, 0x00, 0x3C, 0x60, 0x00, 0x79, 0x80, 0x00, - 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xDE, 0x00, 0x07, 0x9E, 0x00, 0x0F, - 0x3E, 0x00, 0x1E, 0x3E, 0x00, 0x3C, 0x3E, 0x00, 0x78, 0x3C, 0x00, 0xF0, - 0x3C, 0x01, 0xE0, 0x7C, 0x03, 0xC0, 0x7C, 0x0F, 0xC0, 0xFE, 0x7F, 0xE3, - 0xFF, 0x03, 0x03, 0xE1, 0xFC, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, - 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, - 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x07, 0xE7, 0xFF, 0x1E, 0x1F, 0x01, - 0xF8, 0x1F, 0xCF, 0xF0, 0xFF, 0x80, 0xFF, 0x0F, 0x70, 0xF8, 0x0F, 0x81, - 0xF8, 0x0F, 0x01, 0xE0, 0x1E, 0x00, 0xF0, 0x3C, 0x03, 0xC0, 0x1E, 0x07, - 0x80, 0x78, 0x03, 0xC0, 0xF0, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xE0, 0x0F, - 0x03, 0xC0, 0x3C, 0x01, 0xE0, 0x78, 0x07, 0x80, 0x3C, 0x0F, 0x00, 0xF0, - 0x07, 0x81, 0xE0, 0x1E, 0x00, 0xF0, 0x3C, 0x03, 0xC0, 0x1E, 0x07, 0x80, - 0x78, 0x03, 0xC0, 0xF0, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xE0, 0x0F, 0x03, - 0xC0, 0x3C, 0x01, 0xE0, 0x78, 0x07, 0x80, 0x3C, 0x1F, 0x81, 0xF8, 0x0F, - 0xCF, 0xFC, 0xFF, 0xC7, 0xFE, 0x1E, 0x1F, 0x83, 0xF9, 0xFF, 0x03, 0xFC, - 0x3E, 0x07, 0xC0, 0x7C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, - 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, - 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, - 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x0F, 0xC0, 0x7E, - 0x7F, 0xC3, 0xFC, 0x01, 0xFE, 0x00, 0x1F, 0xFE, 0x00, 0xF0, 0x7C, 0x0F, - 0x80, 0xF8, 0x3C, 0x01, 0xF1, 0xE0, 0x03, 0xE7, 0x80, 0x0F, 0xBE, 0x00, - 0x3F, 0xF8, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, - 0xF8, 0x00, 0x7F, 0xF0, 0x01, 0xE7, 0xC0, 0x07, 0x9F, 0x80, 0x3E, 0x3E, - 0x00, 0xF0, 0x7C, 0x07, 0x80, 0xF8, 0x3C, 0x01, 0xFF, 0xE0, 0x00, 0xFC, - 0x00, 0x0E, 0x3F, 0x07, 0xF7, 0xFE, 0x07, 0xE0, 0xF8, 0x3E, 0x03, 0xE1, - 0xE0, 0x0F, 0x0F, 0x00, 0x7C, 0x78, 0x03, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, - 0x78, 0xF0, 0x03, 0xC7, 0x80, 0x1E, 0x3C, 0x00, 0xF1, 0xE0, 0x07, 0x8F, - 0x00, 0x38, 0x78, 0x03, 0xC3, 0xC0, 0x1E, 0x1E, 0x00, 0xE0, 0xF8, 0x0E, - 0x07, 0xE0, 0xE0, 0x3D, 0xFE, 0x01, 0xE7, 0xC0, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x1F, 0x80, 0x03, 0xFF, 0x80, 0x00, 0x01, - 0xF8, 0x20, 0x3F, 0xF3, 0x03, 0xC1, 0xF8, 0x3C, 0x07, 0xC3, 0xC0, 0x1E, - 0x1C, 0x00, 0xF1, 0xE0, 0x07, 0x8E, 0x00, 0x3C, 0xF0, 0x01, 0xE7, 0x80, - 0x0F, 0x3C, 0x00, 0x79, 0xE0, 0x03, 0xCF, 0x00, 0x1E, 0x78, 0x00, 0xF3, - 0xE0, 0x07, 0x9F, 0x00, 0x3C, 0x7C, 0x01, 0xE3, 0xE0, 0x1F, 0x0F, 0xC1, - 0xF8, 0x3F, 0xF3, 0xC0, 0x7E, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x1E, 0x00, 0x03, 0xF8, 0x00, 0x7F, 0xE0, 0x06, 0x3C, 0xFC, - 0xFE, 0xFA, 0x78, 0xF8, 0x71, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, - 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x01, 0xF8, 0x0F, 0xFC, - 0x00, 0x1F, 0x91, 0x87, 0x98, 0x1D, 0xC0, 0x6E, 0x03, 0x70, 0x0B, 0xC0, - 0x5F, 0x80, 0x7E, 0x01, 0xFC, 0x07, 0xF0, 0x0F, 0xE0, 0x3F, 0x00, 0x7E, - 0x01, 0xF0, 0x07, 0xC0, 0x3E, 0x01, 0xF8, 0x0D, 0xE0, 0xC8, 0xF8, 0x00, - 0x04, 0x00, 0xC0, 0x0C, 0x01, 0xC0, 0x3C, 0x07, 0xFC, 0xFF, 0xC3, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xE2, - 0x1F, 0xC0, 0xF8, 0xFC, 0x0F, 0xE1, 0xF0, 0x0F, 0x83, 0xC0, 0x1E, 0x0F, - 0x00, 0x78, 0x3C, 0x01, 0xE0, 0xF0, 0x07, 0x83, 0xC0, 0x1E, 0x0F, 0x00, - 0x78, 0x3C, 0x01, 0xE0, 0xF0, 0x07, 0x83, 0xC0, 0x1E, 0x0F, 0x00, 0x78, - 0x3C, 0x01, 0xE0, 0xF0, 0x07, 0x83, 0xC0, 0x1E, 0x0F, 0x00, 0x78, 0x3C, - 0x01, 0xE0, 0xF8, 0x0F, 0x81, 0xF0, 0xFF, 0x03, 0xFE, 0x7F, 0x07, 0xE1, - 0xC0, 0xFF, 0x81, 0xFC, 0xFC, 0x01, 0xC1, 0xE0, 0x07, 0x07, 0x80, 0x18, - 0x0F, 0x00, 0x60, 0x3C, 0x01, 0x00, 0x78, 0x0C, 0x01, 0xE0, 0x30, 0x07, - 0x81, 0x80, 0x0F, 0x06, 0x00, 0x3C, 0x10, 0x00, 0x78, 0xC0, 0x01, 0xE3, - 0x00, 0x03, 0x98, 0x00, 0x0F, 0x60, 0x00, 0x3D, 0x00, 0x00, 0x7C, 0x00, - 0x01, 0xF0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x40, 0x00, 0xFF, 0x8F, 0xF8, 0x3F, 0x7E, 0x07, 0xE0, 0x0E, 0x3E, 0x03, - 0xC0, 0x0C, 0x1E, 0x03, 0xE0, 0x0C, 0x1E, 0x01, 0xE0, 0x0C, 0x1E, 0x01, - 0xE0, 0x18, 0x0F, 0x00, 0xF0, 0x18, 0x0F, 0x01, 0xF0, 0x10, 0x07, 0x81, - 0xF0, 0x30, 0x07, 0x81, 0x78, 0x30, 0x07, 0x83, 0x78, 0x60, 0x03, 0xC3, - 0x38, 0x60, 0x03, 0xC6, 0x3C, 0x40, 0x01, 0xC6, 0x3C, 0xC0, 0x01, 0xEC, - 0x1E, 0xC0, 0x01, 0xEC, 0x1F, 0x80, 0x00, 0xF8, 0x0F, 0x80, 0x00, 0xF8, - 0x0F, 0x00, 0x00, 0x70, 0x0F, 0x00, 0x00, 0x70, 0x07, 0x00, 0x00, 0x60, - 0x06, 0x00, 0x00, 0x20, 0x02, 0x00, 0x7F, 0xE7, 0xF0, 0x7E, 0x0F, 0x00, - 0xF8, 0x38, 0x01, 0xE0, 0xC0, 0x07, 0xC6, 0x00, 0x0F, 0x30, 0x00, 0x1E, - 0xC0, 0x00, 0x7E, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xC0, - 0x00, 0x3F, 0x00, 0x00, 0xDE, 0x00, 0x06, 0x7C, 0x00, 0x30, 0xF0, 0x01, - 0xC1, 0xE0, 0x06, 0x07, 0xC0, 0x30, 0x0F, 0x01, 0xC0, 0x1E, 0x0F, 0x00, - 0xFC, 0xFE, 0x07, 0xFC, 0xFF, 0xC0, 0xFC, 0xFC, 0x01, 0xE1, 0xE0, 0x03, - 0x07, 0x80, 0x18, 0x0F, 0x00, 0x60, 0x3C, 0x01, 0x80, 0x78, 0x0C, 0x01, - 0xE0, 0x30, 0x03, 0xC0, 0xC0, 0x0F, 0x06, 0x00, 0x3E, 0x18, 0x00, 0x78, - 0x40, 0x01, 0xF3, 0x00, 0x03, 0xCC, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, - 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x06, 0x00, 0x00, - 0x18, 0x00, 0x00, 0x40, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x60, - 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x0F, 0xF0, 0x00, 0x7F, 0x80, 0x01, - 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7F, 0xFF, 0x9F, 0xFF, 0xE6, 0x00, - 0xF1, 0x00, 0x78, 0x40, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0x80, 0x03, 0xE0, - 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0x80, 0x03, - 0xE0, 0x01, 0xF0, 0x04, 0x78, 0x01, 0x3E, 0x00, 0xDF, 0x00, 0x37, 0x80, - 0x1F, 0xFF, 0xFE, 0xFF, 0xFF, 0x80, 0x01, 0xE0, 0x78, 0x1C, 0x07, 0x80, - 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x70, 0x1C, 0x0E, 0x00, 0x70, - 0x07, 0x00, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x01, 0xC0, - 0x1E, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xE0, 0x0F, 0x00, 0x70, 0x0F, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0x70, 0x0E, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x0E, 0x07, 0x01, 0xC0, 0x70, - 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x3C, 0x07, 0x03, 0xC0, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0xFF, 0x80, 0xC7, 0x0F, 0x87, 0xB8, 0x0F, 0xFC, 0x00, - 0x07, 0xC0}; - -const GFXglyph FreeSerif24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 5, 32, 16, 6, -31}, // 0x21 '!' - {20, 12, 12, 19, 4, -31}, // 0x22 '"' - {38, 23, 31, 23, 0, -30}, // 0x23 '#' - {128, 19, 37, 24, 2, -33}, // 0x24 '$' - {216, 33, 32, 39, 3, -30}, // 0x25 '%' - {348, 32, 33, 37, 2, -31}, // 0x26 '&' - {480, 4, 12, 9, 3, -31}, // 0x27 ''' - {486, 12, 40, 16, 2, -31}, // 0x28 '(' - {546, 12, 40, 16, 2, -30}, // 0x29 ')' - {606, 16, 19, 24, 4, -30}, // 0x2A '*' - {644, 23, 23, 27, 2, -22}, // 0x2B '+' - {711, 6, 11, 12, 2, -4}, // 0x2C ',' - {720, 11, 2, 16, 2, -10}, // 0x2D '-' - {723, 5, 5, 12, 3, -3}, // 0x2E '.' - {727, 14, 32, 14, 0, -30}, // 0x2F '/' - {783, 22, 33, 23, 1, -31}, // 0x30 '0' - {874, 13, 32, 24, 5, -31}, // 0x31 '1' - {926, 21, 31, 23, 1, -30}, // 0x32 '2' - {1008, 18, 32, 23, 2, -30}, // 0x33 '3' - {1080, 21, 31, 24, 1, -30}, // 0x34 '4' - {1162, 19, 33, 24, 2, -31}, // 0x35 '5' - {1241, 21, 33, 23, 2, -31}, // 0x36 '6' - {1328, 20, 31, 24, 1, -30}, // 0x37 '7' - {1406, 18, 33, 23, 3, -31}, // 0x38 '8' - {1481, 21, 33, 24, 1, -31}, // 0x39 '9' - {1568, 5, 22, 12, 4, -20}, // 0x3A ':' - {1582, 6, 27, 12, 3, -20}, // 0x3B ';' - {1603, 24, 25, 27, 1, -24}, // 0x3C '<' - {1678, 24, 11, 27, 1, -16}, // 0x3D '=' - {1711, 24, 25, 27, 2, -23}, // 0x3E '>' - {1786, 17, 32, 21, 3, -31}, // 0x3F '?' - {1854, 32, 33, 41, 4, -31}, // 0x40 '@' - {1986, 32, 32, 34, 1, -31}, // 0x41 'A' - {2114, 27, 31, 30, 0, -30}, // 0x42 'B' - {2219, 28, 33, 31, 2, -31}, // 0x43 'C' - {2335, 31, 31, 34, 1, -30}, // 0x44 'D' - {2456, 27, 31, 29, 2, -30}, // 0x45 'E' - {2561, 24, 31, 27, 2, -30}, // 0x46 'F' - {2654, 31, 33, 35, 2, -31}, // 0x47 'G' - {2782, 30, 31, 34, 2, -30}, // 0x48 'H' - {2899, 13, 31, 15, 1, -30}, // 0x49 'I' - {2950, 17, 32, 18, 0, -30}, // 0x4A 'J' - {3018, 32, 31, 33, 1, -30}, // 0x4B 'K' - {3142, 26, 31, 29, 2, -30}, // 0x4C 'L' - {3243, 39, 31, 41, 1, -30}, // 0x4D 'M' - {3395, 32, 32, 34, 1, -30}, // 0x4E 'N' - {3523, 30, 33, 34, 2, -31}, // 0x4F 'O' - {3647, 23, 31, 27, 2, -30}, // 0x50 'P' - {3737, 31, 40, 34, 2, -31}, // 0x51 'Q' - {3892, 28, 31, 31, 2, -30}, // 0x52 'R' - {4001, 21, 33, 25, 2, -31}, // 0x53 'S' - {4088, 27, 31, 28, 1, -30}, // 0x54 'T' - {4193, 32, 32, 34, 1, -30}, // 0x55 'U' - {4321, 32, 32, 33, 0, -30}, // 0x56 'V' - {4449, 44, 32, 45, 0, -30}, // 0x57 'W' - {4625, 33, 31, 34, 0, -30}, // 0x58 'X' - {4753, 32, 31, 33, 0, -30}, // 0x59 'Y' - {4877, 27, 31, 29, 1, -30}, // 0x5A 'Z' - {4982, 9, 38, 16, 4, -30}, // 0x5B '[' - {5025, 14, 32, 14, 0, -30}, // 0x5C '\' - {5081, 9, 38, 16, 3, -30}, // 0x5D ']' - {5124, 20, 17, 22, 1, -30}, // 0x5E '^' - {5167, 24, 2, 23, 0, 5}, // 0x5F '_' - {5173, 10, 8, 12, 1, -31}, // 0x60 '`' - {5183, 18, 21, 20, 1, -20}, // 0x61 'a' - {5231, 21, 32, 24, 1, -31}, // 0x62 'b' - {5315, 19, 21, 21, 1, -20}, // 0x63 'c' - {5365, 22, 32, 23, 1, -31}, // 0x64 'd' - {5453, 18, 21, 21, 1, -20}, // 0x65 'e' - {5501, 17, 33, 18, 0, -32}, // 0x66 'f' - {5572, 21, 31, 22, 1, -20}, // 0x67 'g' - {5654, 22, 32, 23, 0, -31}, // 0x68 'h' - {5742, 11, 32, 13, 0, -31}, // 0x69 'i' - {5786, 12, 42, 16, 0, -31}, // 0x6A 'j' - {5849, 23, 32, 24, 1, -31}, // 0x6B 'k' - {5941, 11, 32, 12, 0, -31}, // 0x6C 'l' - {5985, 35, 21, 37, 1, -20}, // 0x6D 'm' - {6077, 22, 21, 23, 0, -20}, // 0x6E 'n' - {6135, 22, 21, 23, 1, -20}, // 0x6F 'o' - {6193, 21, 31, 24, 1, -20}, // 0x70 'p' - {6275, 21, 31, 23, 1, -20}, // 0x71 'q' - {6357, 15, 21, 16, 1, -20}, // 0x72 'r' - {6397, 13, 21, 17, 2, -20}, // 0x73 's' - {6432, 12, 26, 13, 1, -25}, // 0x74 't' - {6471, 22, 21, 23, 1, -20}, // 0x75 'u' - {6529, 22, 22, 22, 0, -20}, // 0x76 'v' - {6590, 32, 22, 32, 0, -20}, // 0x77 'w' - {6678, 22, 21, 23, 0, -20}, // 0x78 'x' - {6736, 22, 31, 22, 0, -20}, // 0x79 'y' - {6822, 18, 21, 20, 1, -20}, // 0x7A 'z' - {6870, 11, 41, 23, 5, -31}, // 0x7B '{' - {6927, 3, 32, 9, 3, -30}, // 0x7C '|' - {6939, 11, 41, 23, 7, -31}, // 0x7D '}' - {6996, 22, 5, 23, 1, -13}}; // 0x7E '~' - -const GFXfont FreeSerif24pt7b PROGMEM = {(uint8_t *)FreeSerif24pt7bBitmaps, - (GFXglyph *)FreeSerif24pt7bGlyphs, - 0x20, 0x7E, 56}; - -// Approx. 7682 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h deleted file mode 100644 index 22f82e4..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h +++ /dev/null @@ -1,197 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xEA, 0x03, 0xDE, 0xF7, 0x20, 0x11, 0x09, 0x04, 0x82, 0x4F, 0xF9, - 0x10, 0x89, 0xFF, 0x24, 0x12, 0x09, 0x0C, 0x80, 0x10, 0x7C, 0xD6, 0xD2, - 0xD0, 0xF0, 0x38, 0x1E, 0x17, 0x93, 0x93, 0xD6, 0x7C, 0x10, 0x38, 0x43, - 0x3C, 0x39, 0x21, 0x8A, 0x0C, 0x50, 0x65, 0x39, 0xCB, 0x20, 0xB9, 0x05, - 0x88, 0x4C, 0x44, 0x64, 0x21, 0xC0, 0x0E, 0x00, 0xC8, 0x06, 0x40, 0x32, - 0x01, 0xA0, 0x07, 0x78, 0x31, 0x87, 0x88, 0x46, 0x86, 0x34, 0x30, 0xC1, - 0xC7, 0x17, 0xCF, 0x00, 0xFE, 0x08, 0x88, 0x84, 0x63, 0x18, 0xC6, 0x10, - 0x82, 0x08, 0x20, 0x82, 0x08, 0x21, 0x0C, 0x63, 0x18, 0xC4, 0x22, 0x22, - 0x00, 0x63, 0x9A, 0xDC, 0x72, 0xB6, 0x08, 0x08, 0x04, 0x02, 0x01, 0x0F, - 0xF8, 0x40, 0x20, 0x10, 0x08, 0x00, 0xD8, 0xF0, 0xF0, 0x08, 0x84, 0x22, - 0x10, 0x8C, 0x42, 0x31, 0x00, 0x1C, 0x31, 0x98, 0xD8, 0x3C, 0x1E, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xD8, 0xC4, 0x61, 0xC0, 0x13, 0x8C, 0x63, 0x18, - 0xC6, 0x31, 0x8C, 0x67, 0x80, 0x3C, 0x4E, 0x86, 0x06, 0x06, 0x04, 0x0C, - 0x08, 0x10, 0x20, 0x41, 0xFE, 0x3C, 0xC6, 0x06, 0x04, 0x1C, 0x3E, 0x07, - 0x03, 0x03, 0x03, 0x06, 0xF8, 0x04, 0x18, 0x71, 0x64, 0xC9, 0xA3, 0x46, - 0xFE, 0x18, 0x30, 0x60, 0x0F, 0x10, 0x20, 0x3C, 0x0E, 0x07, 0x03, 0x03, - 0x03, 0x02, 0x04, 0xF8, 0x07, 0x1C, 0x30, 0x60, 0x60, 0xDC, 0xE6, 0xC3, - 0xC3, 0xC3, 0x43, 0x66, 0x3C, 0x7F, 0x82, 0x02, 0x02, 0x04, 0x04, 0x04, - 0x08, 0x08, 0x08, 0x10, 0x10, 0x3C, 0x8F, 0x1E, 0x3E, 0x4F, 0x06, 0x36, - 0xC7, 0x8F, 0x1B, 0x33, 0xC0, 0x3C, 0x66, 0xC2, 0xC3, 0xC3, 0xC3, 0xC3, - 0x63, 0x3F, 0x06, 0x06, 0x0C, 0x38, 0x60, 0xF0, 0x0F, 0xD8, 0x00, 0x03, - 0x28, 0x01, 0x87, 0x0E, 0x1C, 0x0C, 0x03, 0x80, 0x70, 0x0E, 0x00, 0x80, - 0xFF, 0x80, 0x00, 0x00, 0x0F, 0xF8, 0x80, 0x1C, 0x01, 0xC0, 0x1C, 0x01, - 0xC0, 0xE0, 0xE0, 0xE0, 0xC0, 0x00, 0x79, 0x1A, 0x18, 0x30, 0x60, 0x83, - 0x04, 0x10, 0x20, 0x40, 0x03, 0x00, 0x0F, 0x83, 0x8C, 0x60, 0x26, 0x02, - 0xC7, 0x9C, 0xC9, 0xD8, 0x9D, 0x99, 0xD9, 0x26, 0xEC, 0x60, 0x03, 0x04, - 0x0F, 0x80, 0x02, 0x00, 0x10, 0x01, 0xC0, 0x16, 0x00, 0x98, 0x04, 0xC0, - 0x43, 0x03, 0xF8, 0x20, 0x61, 0x03, 0x18, 0x1D, 0xE1, 0xF0, 0xFF, 0x86, - 0x1C, 0xC1, 0x98, 0x33, 0x0C, 0x7E, 0x0C, 0x31, 0x83, 0x30, 0x66, 0x0C, - 0xC3, 0x7F, 0xC0, 0x1F, 0x26, 0x1D, 0x81, 0xE0, 0x1C, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x0C, 0x00, 0xC1, 0x8F, 0xC0, 0xFF, 0x03, 0x1C, 0x30, - 0x63, 0x07, 0x30, 0x33, 0x03, 0x30, 0x33, 0x03, 0x30, 0x33, 0x06, 0x30, - 0xCF, 0xF0, 0xFF, 0x98, 0x26, 0x01, 0x80, 0x61, 0x1F, 0xC6, 0x11, 0x80, - 0x60, 0x18, 0x16, 0x0F, 0xFE, 0xFF, 0xB0, 0x58, 0x0C, 0x06, 0x13, 0xF9, - 0x84, 0xC0, 0x60, 0x30, 0x18, 0x1E, 0x00, 0x1F, 0x23, 0x0E, 0x60, 0x26, - 0x00, 0xC0, 0x0C, 0x0F, 0xC0, 0x6C, 0x06, 0xC0, 0x66, 0x06, 0x30, 0x60, - 0xF8, 0xF1, 0xEC, 0x19, 0x83, 0x30, 0x66, 0x0C, 0xFF, 0x98, 0x33, 0x06, - 0x60, 0xCC, 0x19, 0x83, 0x78, 0xF0, 0xF6, 0x66, 0x66, 0x66, 0x66, 0x6F, - 0x3C, 0x61, 0x86, 0x18, 0x61, 0x86, 0x18, 0x6D, 0xBC, 0xF3, 0xE6, 0x08, - 0x61, 0x06, 0x20, 0x64, 0x07, 0x80, 0x6C, 0x06, 0x60, 0x63, 0x06, 0x18, - 0x60, 0xCF, 0x3F, 0xF0, 0x18, 0x06, 0x01, 0x80, 0x60, 0x18, 0x06, 0x01, - 0x80, 0x60, 0x18, 0x16, 0x0B, 0xFE, 0xF0, 0x0E, 0x70, 0x38, 0xE0, 0x71, - 0xE1, 0x62, 0xC2, 0xC5, 0xC9, 0x89, 0x93, 0x13, 0x26, 0x23, 0x8C, 0x47, - 0x18, 0x84, 0x33, 0x88, 0xF0, 0xE0, 0xEE, 0x09, 0xC1, 0x2C, 0x25, 0xC4, - 0x9C, 0x91, 0x92, 0x1A, 0x41, 0xC8, 0x19, 0x03, 0x70, 0x20, 0x1F, 0x06, - 0x31, 0x83, 0x20, 0x2C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x68, 0x09, - 0x83, 0x18, 0xC1, 0xF0, 0xFE, 0x31, 0x98, 0x6C, 0x36, 0x1B, 0x19, 0xF8, - 0xC0, 0x60, 0x30, 0x18, 0x1E, 0x00, 0x1F, 0x06, 0x31, 0x83, 0x20, 0x2C, - 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x68, 0x19, 0x83, 0x18, 0xC0, 0xE0, - 0x0E, 0x00, 0xE0, 0x07, 0xFE, 0x0C, 0x61, 0x86, 0x30, 0xC6, 0x18, 0xC6, - 0x1F, 0x83, 0x70, 0x67, 0x0C, 0x71, 0x87, 0x78, 0x70, 0x1D, 0x31, 0x98, - 0x4C, 0x07, 0x80, 0xE0, 0x1C, 0x07, 0x01, 0xA0, 0xD8, 0xCB, 0xC0, 0xFF, - 0xF8, 0xCE, 0x18, 0x83, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, - 0xC0, 0x18, 0x07, 0x80, 0xF0, 0xEC, 0x09, 0x81, 0x30, 0x26, 0x04, 0xC0, - 0x98, 0x13, 0x02, 0x60, 0x4C, 0x08, 0xC2, 0x0F, 0x80, 0xF8, 0x77, 0x02, - 0x30, 0x23, 0x04, 0x18, 0x41, 0x84, 0x0C, 0x80, 0xC8, 0x07, 0x00, 0x70, - 0x02, 0x00, 0x20, 0xFB, 0xE7, 0xB0, 0xC0, 0x8C, 0x20, 0x86, 0x18, 0x41, - 0x8C, 0x40, 0xCB, 0x20, 0x65, 0x90, 0x1A, 0x70, 0x0E, 0x38, 0x03, 0x1C, - 0x01, 0x04, 0x00, 0x82, 0x00, 0xFC, 0xF9, 0x83, 0x06, 0x10, 0x19, 0x00, - 0xD0, 0x03, 0x00, 0x1C, 0x01, 0x30, 0x11, 0xC1, 0x86, 0x08, 0x19, 0xE3, - 0xF0, 0xF8, 0xF6, 0x06, 0x30, 0x41, 0x88, 0x1D, 0x00, 0xD0, 0x06, 0x00, - 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0xF0, 0x3F, 0xCC, 0x11, 0x06, 0x01, - 0x80, 0x70, 0x0C, 0x03, 0x00, 0xE0, 0x38, 0x06, 0x05, 0xC1, 0x7F, 0xE0, - 0xFB, 0x6D, 0xB6, 0xDB, 0x6D, 0xB8, 0x82, 0x10, 0x82, 0x10, 0x86, 0x10, - 0x86, 0x10, 0xED, 0xB6, 0xDB, 0x6D, 0xB6, 0xF8, 0x18, 0x1C, 0x34, 0x26, - 0x62, 0x42, 0xC1, 0xFF, 0x80, 0x84, 0x20, 0x79, 0x98, 0x30, 0xE6, 0xD9, - 0xB3, 0x3F, 0x20, 0x70, 0x18, 0x0C, 0x06, 0x03, 0x71, 0xCC, 0xC3, 0x61, - 0xB0, 0xD8, 0x6C, 0x63, 0xE0, 0x3C, 0xCF, 0x06, 0x0C, 0x18, 0x18, 0x9E, - 0x01, 0x03, 0x80, 0xC0, 0x60, 0x31, 0xD9, 0x9D, 0x86, 0xC3, 0x61, 0xB0, - 0xCC, 0x63, 0xF0, 0x3C, 0x46, 0xFE, 0xC0, 0xC0, 0xE1, 0x62, 0x3C, 0x1E, - 0x41, 0x83, 0x06, 0x1E, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x0F, 0x00, 0x3C, - 0x19, 0xF6, 0x31, 0x8C, 0x1E, 0x08, 0x04, 0x01, 0xFC, 0x40, 0xB0, 0x2E, - 0x11, 0xF8, 0x20, 0x70, 0x18, 0x0C, 0x06, 0x03, 0x71, 0xCC, 0xC6, 0x63, - 0x31, 0x98, 0xCC, 0x6F, 0x78, 0x60, 0x02, 0xE6, 0x66, 0x66, 0xF0, 0x18, - 0x00, 0x33, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8B, 0x80, 0x20, 0x70, 0x18, - 0x0C, 0x06, 0x03, 0x3D, 0x88, 0xD8, 0x78, 0x36, 0x19, 0x8C, 0x6F, 0x78, - 0x2E, 0x66, 0x66, 0x66, 0x66, 0x66, 0xF0, 0xEE, 0x71, 0xCE, 0x66, 0x31, - 0x98, 0xC6, 0x63, 0x19, 0x8C, 0x66, 0x31, 0xBD, 0xEF, 0xEE, 0x39, 0x98, - 0xCC, 0x66, 0x33, 0x19, 0x8D, 0xEF, 0x3E, 0x31, 0xB0, 0x78, 0x3C, 0x1E, - 0x0D, 0x8C, 0x7C, 0xEE, 0x39, 0x98, 0x6C, 0x36, 0x1B, 0x0D, 0x8C, 0xFC, - 0x60, 0x30, 0x18, 0x1E, 0x00, 0x3D, 0x31, 0xB0, 0xD8, 0x6C, 0x36, 0x1B, - 0x8C, 0xFE, 0x03, 0x01, 0x80, 0xC0, 0xF0, 0x6D, 0xC6, 0x18, 0x61, 0x86, - 0x3C, 0x76, 0x38, 0x58, 0x3E, 0x38, 0xFE, 0x27, 0x98, 0xC6, 0x31, 0x8C, - 0x38, 0xE7, 0x31, 0x98, 0xCC, 0x66, 0x33, 0x19, 0x8C, 0x7F, 0xF3, 0x61, - 0x22, 0x32, 0x14, 0x1C, 0x08, 0x08, 0xEF, 0x36, 0x61, 0x62, 0x22, 0x32, - 0x35, 0x41, 0x9C, 0x18, 0x81, 0x08, 0xF7, 0x12, 0x0E, 0x03, 0x01, 0xC1, - 0x21, 0x09, 0xCF, 0xF3, 0x61, 0x62, 0x32, 0x34, 0x14, 0x1C, 0x08, 0x08, - 0x08, 0x10, 0xE0, 0xFD, 0x18, 0x60, 0x83, 0x0C, 0x70, 0xFE, 0x19, 0x8C, - 0x63, 0x18, 0xC4, 0x61, 0x8C, 0x63, 0x18, 0xC3, 0xFF, 0xF0, 0xC3, 0x18, - 0xC6, 0x31, 0x84, 0x33, 0x18, 0xC6, 0x31, 0x98, 0x70, 0x24, 0xC1, 0xC0}; - -const GFXglyph FreeSerif9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 2, 12, 6, 2, -11}, // 0x21 '!' - {3, 5, 4, 7, 1, -11}, // 0x22 '"' - {6, 9, 12, 9, 0, -11}, // 0x23 '#' - {20, 8, 14, 9, 1, -12}, // 0x24 '$' - {34, 13, 12, 15, 1, -11}, // 0x25 '%' - {54, 13, 13, 14, 1, -12}, // 0x26 '&' - {76, 2, 4, 4, 1, -11}, // 0x27 ''' - {77, 5, 15, 6, 1, -11}, // 0x28 '(' - {87, 5, 15, 6, 0, -11}, // 0x29 ')' - {97, 6, 8, 9, 3, -11}, // 0x2A '*' - {103, 9, 9, 10, 0, -8}, // 0x2B '+' - {114, 2, 3, 4, 2, 0}, // 0x2C ',' - {115, 4, 1, 6, 1, -3}, // 0x2D '-' - {116, 2, 2, 5, 1, -1}, // 0x2E '.' - {117, 5, 12, 5, 0, -11}, // 0x2F '/' - {125, 9, 13, 9, 0, -12}, // 0x30 '0' - {140, 5, 13, 9, 2, -12}, // 0x31 '1' - {149, 8, 12, 9, 1, -11}, // 0x32 '2' - {161, 8, 12, 9, 0, -11}, // 0x33 '3' - {173, 7, 12, 9, 1, -11}, // 0x34 '4' - {184, 8, 12, 9, 0, -11}, // 0x35 '5' - {196, 8, 13, 9, 1, -12}, // 0x36 '6' - {209, 8, 12, 9, 0, -11}, // 0x37 '7' - {221, 7, 13, 9, 1, -12}, // 0x38 '8' - {233, 8, 14, 9, 1, -12}, // 0x39 '9' - {247, 2, 8, 5, 1, -7}, // 0x3A ':' - {249, 3, 10, 5, 1, -7}, // 0x3B ';' - {253, 9, 9, 10, 1, -8}, // 0x3C '<' - {264, 9, 5, 10, 1, -6}, // 0x3D '=' - {270, 10, 9, 10, 0, -8}, // 0x3E '>' - {282, 7, 13, 8, 1, -12}, // 0x3F '?' - {294, 12, 13, 16, 2, -12}, // 0x40 '@' - {314, 13, 12, 13, 0, -11}, // 0x41 'A' - {334, 11, 12, 11, 0, -11}, // 0x42 'B' - {351, 11, 12, 12, 1, -11}, // 0x43 'C' - {368, 12, 12, 13, 0, -11}, // 0x44 'D' - {386, 10, 12, 11, 1, -11}, // 0x45 'E' - {401, 9, 12, 10, 1, -11}, // 0x46 'F' - {415, 12, 12, 13, 1, -11}, // 0x47 'G' - {433, 11, 12, 13, 1, -11}, // 0x48 'H' - {450, 4, 12, 6, 1, -11}, // 0x49 'I' - {456, 6, 12, 7, 0, -11}, // 0x4A 'J' - {465, 12, 12, 13, 1, -11}, // 0x4B 'K' - {483, 10, 12, 11, 1, -11}, // 0x4C 'L' - {498, 15, 12, 16, 0, -11}, // 0x4D 'M' - {521, 11, 12, 13, 1, -11}, // 0x4E 'N' - {538, 11, 13, 13, 1, -12}, // 0x4F 'O' - {556, 9, 12, 10, 1, -11}, // 0x50 'P' - {570, 11, 16, 13, 1, -12}, // 0x51 'Q' - {592, 11, 12, 12, 1, -11}, // 0x52 'R' - {609, 9, 12, 10, 0, -11}, // 0x53 'S' - {623, 11, 12, 11, 0, -11}, // 0x54 'T' - {640, 11, 12, 13, 1, -11}, // 0x55 'U' - {657, 12, 12, 13, 0, -11}, // 0x56 'V' - {675, 17, 12, 17, 0, -11}, // 0x57 'W' - {701, 13, 12, 13, 0, -11}, // 0x58 'X' - {721, 12, 12, 13, 0, -11}, // 0x59 'Y' - {739, 11, 12, 11, 0, -11}, // 0x5A 'Z' - {756, 3, 15, 6, 2, -11}, // 0x5B '[' - {762, 5, 12, 5, 0, -11}, // 0x5C '\' - {770, 3, 15, 6, 1, -11}, // 0x5D ']' - {776, 8, 7, 8, 0, -11}, // 0x5E '^' - {783, 9, 1, 9, 0, 2}, // 0x5F '_' - {785, 4, 3, 5, 0, -11}, // 0x60 '`' - {787, 7, 8, 8, 1, -7}, // 0x61 'a' - {794, 9, 13, 9, 0, -12}, // 0x62 'b' - {809, 7, 8, 8, 0, -7}, // 0x63 'c' - {816, 9, 13, 9, 0, -12}, // 0x64 'd' - {831, 8, 8, 8, 0, -7}, // 0x65 'e' - {839, 7, 13, 7, 1, -12}, // 0x66 'f' - {851, 10, 12, 8, 0, -7}, // 0x67 'g' - {866, 9, 13, 9, 0, -12}, // 0x68 'h' - {881, 4, 11, 5, 1, -10}, // 0x69 'i' - {887, 5, 15, 6, 0, -10}, // 0x6A 'j' - {897, 9, 13, 9, 1, -12}, // 0x6B 'k' - {912, 4, 13, 5, 1, -12}, // 0x6C 'l' - {919, 14, 8, 14, 0, -7}, // 0x6D 'm' - {933, 9, 8, 9, 0, -7}, // 0x6E 'n' - {942, 9, 8, 9, 0, -7}, // 0x6F 'o' - {951, 9, 12, 9, 0, -7}, // 0x70 'p' - {965, 9, 12, 9, 0, -7}, // 0x71 'q' - {979, 6, 8, 6, 0, -7}, // 0x72 'r' - {985, 6, 8, 7, 1, -7}, // 0x73 's' - {991, 5, 9, 5, 0, -8}, // 0x74 't' - {997, 9, 8, 9, 0, -7}, // 0x75 'u' - {1006, 8, 8, 8, 0, -7}, // 0x76 'v' - {1014, 12, 8, 12, 0, -7}, // 0x77 'w' - {1026, 9, 8, 9, 0, -7}, // 0x78 'x' - {1035, 8, 12, 8, 0, -7}, // 0x79 'y' - {1047, 7, 8, 7, 1, -7}, // 0x7A 'z' - {1054, 5, 16, 9, 1, -12}, // 0x7B '{' - {1064, 1, 12, 4, 1, -11}, // 0x7C '|' - {1066, 5, 16, 9, 3, -11}, // 0x7D '}' - {1076, 9, 3, 9, 0, -5}}; // 0x7E '~' - -const GFXfont FreeSerif9pt7b PROGMEM = {(uint8_t *)FreeSerif9pt7bBitmaps, - (GFXglyph *)FreeSerif9pt7bGlyphs, 0x20, - 0x7E, 22}; - -// Approx. 1752 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h deleted file mode 100644 index 9dedae0..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h +++ /dev/null @@ -1,273 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold12pt7bBitmaps[] PROGMEM = { - 0x7F, 0xFF, 0x77, 0x66, 0x22, 0x00, 0x6F, 0xF7, 0xE3, 0xF1, 0xF8, 0xFC, - 0x7E, 0x3A, 0x09, 0x04, 0x0C, 0x40, 0xCC, 0x0C, 0xC0, 0x8C, 0x18, 0xC7, - 0xFF, 0x18, 0xC1, 0x88, 0x19, 0x81, 0x98, 0xFF, 0xE3, 0x18, 0x31, 0x83, - 0x18, 0x33, 0x03, 0x30, 0x08, 0x01, 0x00, 0xFC, 0x24, 0xEC, 0x8D, 0x90, - 0xBA, 0x07, 0xC0, 0x7E, 0x07, 0xF0, 0x7F, 0x07, 0xF0, 0x9F, 0x11, 0xE2, - 0x3E, 0x46, 0xE9, 0xC7, 0xC0, 0x20, 0x04, 0x00, 0x1E, 0x0C, 0x0E, 0x7F, - 0x07, 0x10, 0x83, 0xC4, 0x40, 0xE1, 0x30, 0x38, 0x88, 0x0E, 0x26, 0x03, - 0x91, 0x1E, 0x78, 0x8E, 0x40, 0x27, 0x10, 0x11, 0xC4, 0x0C, 0xE1, 0x02, - 0x38, 0x81, 0x0E, 0x20, 0x43, 0x90, 0x20, 0x78, 0x03, 0xE0, 0x01, 0x9E, - 0x00, 0xE3, 0x80, 0x38, 0xE0, 0x0F, 0x30, 0x03, 0xF0, 0x00, 0x78, 0x7C, - 0x1F, 0x06, 0x1B, 0xE1, 0x1C, 0x7C, 0x8F, 0x1F, 0x23, 0xC3, 0xF0, 0xF8, - 0x7C, 0x3E, 0x0F, 0x97, 0xC7, 0xFC, 0xFE, 0x3E, 0xFF, 0xFE, 0x90, 0x00, - 0x31, 0x0C, 0x31, 0x86, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x86, 0x18, 0x60, - 0xC1, 0x02, 0x04, 0x03, 0x06, 0x0C, 0x30, 0x61, 0x87, 0x1C, 0x71, 0xC7, - 0x1C, 0x71, 0x86, 0x38, 0xC2, 0x10, 0x80, 0x1C, 0x6E, 0xFA, 0xEF, 0xF1, - 0xC7, 0xFF, 0xAF, 0xBB, 0x1C, 0x04, 0x00, 0x06, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x6F, 0xF7, 0x11, 0x24, 0xFF, 0xFF, 0xC0, 0x6F, 0xF6, 0x03, 0x07, - 0x06, 0x06, 0x0C, 0x0C, 0x0C, 0x18, 0x18, 0x18, 0x30, 0x30, 0x30, 0x60, - 0x60, 0x60, 0xC0, 0x0E, 0x07, 0x71, 0xC7, 0x38, 0xEF, 0x1D, 0xE3, 0xFC, - 0x7F, 0x8F, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xF7, 0x1C, 0xE3, 0x8E, 0xE0, - 0xF8, 0x06, 0x0F, 0x1F, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0xF9, 0xFF, 0x0F, 0x03, 0xFC, 0x7F, 0xC4, - 0x3E, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x1C, 0x03, 0x80, 0x30, 0x06, 0x00, - 0xC1, 0x18, 0x13, 0xFE, 0x7F, 0xEF, 0xFE, 0x1F, 0x0C, 0xFA, 0x0F, 0x01, - 0xE0, 0x38, 0x0E, 0x03, 0xE0, 0x3E, 0x03, 0xE0, 0x3C, 0x03, 0x80, 0x70, - 0x0D, 0xC1, 0xBC, 0x43, 0xF0, 0x03, 0x80, 0xE0, 0x78, 0x3E, 0x17, 0x89, - 0xE2, 0x79, 0x1E, 0x87, 0xA1, 0xEF, 0xFF, 0xFF, 0xFF, 0xC1, 0xE0, 0x78, - 0x1E, 0x3F, 0xE7, 0xF8, 0xFF, 0x10, 0x04, 0x00, 0xF8, 0x1F, 0xC7, 0xFC, - 0x1F, 0xC0, 0x78, 0x07, 0x00, 0x60, 0x0D, 0xC1, 0x3C, 0x43, 0xF0, 0x00, - 0xE0, 0xF0, 0x38, 0x1E, 0x07, 0x80, 0xF0, 0x3F, 0xE7, 0x9E, 0xF1, 0xFE, - 0x3F, 0xC7, 0xF8, 0xF7, 0x1E, 0xE3, 0x8E, 0x60, 0xF8, 0x7F, 0xEF, 0xFD, - 0xFF, 0xA0, 0x68, 0x0C, 0x03, 0x80, 0x60, 0x0C, 0x03, 0x00, 0x60, 0x0C, - 0x03, 0x00, 0x60, 0x1C, 0x03, 0x00, 0x60, 0x1F, 0x0E, 0x73, 0x87, 0x70, - 0xEF, 0x1D, 0xF3, 0x1F, 0x81, 0xF8, 0x1F, 0xCC, 0xFB, 0x8F, 0xF0, 0xFE, - 0x1F, 0xC3, 0x9C, 0xF1, 0xF8, 0x1F, 0x06, 0x71, 0xC7, 0x78, 0xEF, 0x1F, - 0xE3, 0xFC, 0x7F, 0x8F, 0x79, 0xE7, 0xFC, 0x0F, 0x01, 0xC0, 0x78, 0x1C, - 0x0F, 0x07, 0x00, 0x6F, 0xF6, 0x00, 0x06, 0xFF, 0x60, 0x6F, 0xF6, 0x00, - 0x06, 0xFF, 0x71, 0x22, 0xC0, 0x00, 0x04, 0x00, 0x70, 0x07, 0xC0, 0xFC, - 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1C, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0x00, 0x03, 0x80, 0x0F, - 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x1F, 0x01, 0xF0, - 0x1F, 0x03, 0xF0, 0x3E, 0x00, 0xE0, 0x02, 0x00, 0x00, 0x3E, 0x11, 0xEC, - 0x3F, 0x8F, 0xE3, 0xC0, 0xF0, 0x78, 0x18, 0x08, 0x02, 0x00, 0x00, 0x00, - 0x1C, 0x07, 0x81, 0xE0, 0x30, 0x03, 0xF0, 0x0E, 0x18, 0x18, 0x04, 0x30, - 0x66, 0x70, 0xDB, 0x61, 0x99, 0xE3, 0x19, 0xE3, 0x31, 0xE6, 0x31, 0xE6, - 0x31, 0xE6, 0xF2, 0x66, 0xB2, 0x73, 0x3C, 0x38, 0x00, 0x1E, 0x04, 0x03, - 0xF8, 0x00, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x1B, 0xC0, 0x09, 0xE0, 0x0C, 0xF8, 0x04, 0x3C, 0x02, 0x1F, - 0x03, 0xFF, 0x81, 0x03, 0xC1, 0x80, 0xF0, 0x80, 0x7D, 0xF0, 0xFF, 0xFF, - 0xC0, 0xF3, 0xC3, 0xC7, 0x8F, 0x1E, 0x3C, 0x78, 0xF1, 0xE3, 0xCE, 0x0F, - 0xF0, 0x3C, 0x70, 0xF0, 0xE3, 0xC3, 0xCF, 0x0F, 0x3C, 0x3C, 0xF0, 0xE3, - 0xC7, 0xBF, 0xF8, 0x07, 0xE2, 0x38, 0x7C, 0xE0, 0x3B, 0xC0, 0x37, 0x00, - 0x7E, 0x00, 0x7C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x03, - 0x80, 0x07, 0x80, 0x27, 0x00, 0xC7, 0x86, 0x03, 0xF0, 0xFF, 0xE0, 0x1E, - 0x1E, 0x0F, 0x07, 0x87, 0x81, 0xE3, 0xC0, 0xF1, 0xE0, 0x3C, 0xF0, 0x1E, - 0x78, 0x0F, 0x3C, 0x07, 0x9E, 0x03, 0xCF, 0x01, 0xE7, 0x80, 0xE3, 0xC0, - 0xF1, 0xE0, 0xF0, 0xF0, 0xE1, 0xFF, 0xC0, 0xFF, 0xFC, 0x78, 0x38, 0xF0, - 0x31, 0xE0, 0x23, 0xC4, 0x07, 0x88, 0x0F, 0x30, 0x1F, 0xE0, 0x3C, 0xC0, - 0x78, 0x80, 0xF1, 0x01, 0xE0, 0x23, 0xC0, 0x47, 0x81, 0x8F, 0x07, 0x7F, - 0xFE, 0xFF, 0xFC, 0xF0, 0x73, 0xC0, 0xCF, 0x01, 0x3C, 0x40, 0xF1, 0x03, - 0xCC, 0x0F, 0xF0, 0x3C, 0xC0, 0xF1, 0x03, 0xC4, 0x0F, 0x00, 0x3C, 0x00, - 0xF0, 0x03, 0xC0, 0x3F, 0xC0, 0x07, 0xE2, 0x1C, 0x3E, 0x38, 0x0E, 0x78, - 0x06, 0x70, 0x06, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, - 0x7F, 0xF0, 0x1E, 0x70, 0x1E, 0x78, 0x1E, 0x38, 0x1E, 0x1E, 0x1E, 0x07, - 0xF0, 0xFE, 0xFF, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, - 0x3C, 0x78, 0x3C, 0x7F, 0xFC, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, - 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0xFE, 0xFF, 0xFF, 0x3C, 0x3C, - 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, - 0xFF, 0x0F, 0xF0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0xE3, 0xCE, - 0x38, 0xE3, 0x83, 0xE0, 0xFE, 0x7F, 0x3C, 0x0E, 0x1E, 0x04, 0x0F, 0x04, - 0x07, 0x84, 0x03, 0xCC, 0x01, 0xEE, 0x00, 0xFF, 0x00, 0x7F, 0xC0, 0x3C, - 0xF0, 0x1E, 0x7C, 0x0F, 0x1F, 0x07, 0x87, 0xC3, 0xC1, 0xF1, 0xE0, 0x7D, - 0xFC, 0xFF, 0xFE, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, - 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x01, 0x78, - 0x0D, 0xE0, 0x67, 0x83, 0xBF, 0xFE, 0xFC, 0x01, 0xF3, 0xC0, 0x3E, 0x3E, - 0x03, 0xE2, 0xE0, 0x5E, 0x2F, 0x05, 0xE2, 0xF0, 0x5E, 0x27, 0x09, 0xE2, - 0x78, 0x9E, 0x23, 0x91, 0xE2, 0x3D, 0x1E, 0x23, 0xF1, 0xE2, 0x1E, 0x1E, - 0x21, 0xE1, 0xE2, 0x0C, 0x1E, 0x20, 0xC1, 0xEF, 0x88, 0x3F, 0xF8, 0x1E, - 0xF8, 0x18, 0xF8, 0x11, 0xF8, 0x22, 0xF8, 0x45, 0xF0, 0x89, 0xF1, 0x11, - 0xF2, 0x21, 0xF4, 0x41, 0xF8, 0x81, 0xF1, 0x01, 0xE2, 0x03, 0xC4, 0x03, - 0x8C, 0x03, 0x7C, 0x02, 0x07, 0xF0, 0x0F, 0x1E, 0x0E, 0x03, 0x8F, 0x01, - 0xE7, 0x00, 0x77, 0x80, 0x3F, 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, - 0x03, 0xFC, 0x01, 0xEE, 0x00, 0xE7, 0x80, 0xF1, 0xC0, 0x70, 0x70, 0x70, - 0x0F, 0xE0, 0xFF, 0x87, 0x9E, 0x78, 0xF7, 0x8F, 0x78, 0xF7, 0x8F, 0x78, - 0xF7, 0x9E, 0x7F, 0x87, 0x80, 0x78, 0x07, 0x80, 0x78, 0x07, 0x80, 0x78, - 0x0F, 0xE0, 0x07, 0xF0, 0x0F, 0x1E, 0x0E, 0x07, 0x8F, 0x01, 0xE7, 0x00, - 0xF7, 0x80, 0x3F, 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, - 0x01, 0xEE, 0x00, 0xE7, 0x00, 0xF1, 0xC0, 0x70, 0x70, 0x70, 0x1C, 0xF0, - 0x03, 0xE0, 0x01, 0xF8, 0x00, 0x3E, 0x00, 0x07, 0xE0, 0xFF, 0xE0, 0x3C, - 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x38, 0x3C, - 0x70, 0x3F, 0xC0, 0x3D, 0xE0, 0x3C, 0xF0, 0x3C, 0xF8, 0x3C, 0x78, 0x3C, - 0x3C, 0x3C, 0x3E, 0xFF, 0x1F, 0x1F, 0x27, 0x0E, 0x60, 0x6E, 0x06, 0xF0, - 0x2F, 0x80, 0x7F, 0x07, 0xFC, 0x1F, 0xE0, 0x7E, 0x01, 0xF8, 0x07, 0xC0, - 0x7C, 0x06, 0xF0, 0xC9, 0xF8, 0xFF, 0xFF, 0xC7, 0x9F, 0x0F, 0x1C, 0x1E, - 0x10, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, - 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x07, 0xF8, 0xFE, - 0x1E, 0xF0, 0x09, 0xE0, 0x13, 0xC0, 0x27, 0x80, 0x4F, 0x00, 0x9E, 0x01, - 0x3C, 0x02, 0x78, 0x04, 0xF0, 0x09, 0xE0, 0x13, 0xC0, 0x27, 0x80, 0x47, - 0x81, 0x07, 0x84, 0x07, 0xF0, 0xFF, 0x0F, 0x9E, 0x03, 0x0F, 0x00, 0x83, - 0xC0, 0x81, 0xE0, 0x40, 0xF8, 0x60, 0x3C, 0x20, 0x1E, 0x10, 0x07, 0x90, - 0x03, 0xC8, 0x00, 0xF4, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x01, 0x80, 0x00, 0x80, 0x00, 0xFE, 0x7F, 0x9E, 0xF8, 0x3C, 0x08, - 0xF0, 0x78, 0x31, 0xE0, 0xF0, 0x41, 0xE0, 0xF0, 0x83, 0xC3, 0xE3, 0x07, - 0x85, 0xC4, 0x07, 0x93, 0xC8, 0x0F, 0x27, 0xB0, 0x0E, 0x47, 0x40, 0x1F, - 0x0F, 0x80, 0x3E, 0x1F, 0x00, 0x38, 0x1C, 0x00, 0x70, 0x38, 0x00, 0xE0, - 0x30, 0x00, 0x80, 0x40, 0xFF, 0x9F, 0x9F, 0x07, 0x07, 0x83, 0x03, 0xE3, - 0x00, 0xF9, 0x00, 0x3D, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, - 0xF8, 0x00, 0xBE, 0x00, 0x8F, 0x00, 0x83, 0xC0, 0xC1, 0xF0, 0xE0, 0xFD, - 0xF8, 0xFF, 0xFF, 0x1F, 0x7C, 0x06, 0x3C, 0x04, 0x3E, 0x0C, 0x1E, 0x08, - 0x0F, 0x10, 0x0F, 0x30, 0x07, 0xA0, 0x07, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x0F, 0xF0, 0x7F, 0xFC, - 0xE0, 0xF1, 0x83, 0xE2, 0x07, 0x84, 0x1E, 0x00, 0x7C, 0x00, 0xF0, 0x03, - 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x08, 0xF0, 0x13, 0xC0, 0x6F, 0x81, - 0x9E, 0x07, 0x7F, 0xFE, 0xFF, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCE, - 0x73, 0x9C, 0xE7, 0x39, 0xF0, 0xC0, 0x60, 0x60, 0x60, 0x30, 0x30, 0x30, - 0x18, 0x18, 0x18, 0x0C, 0x0C, 0x0C, 0x06, 0x06, 0x06, 0x03, 0xF9, 0xCE, - 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCF, 0xF0, 0x0C, - 0x07, 0x81, 0xE0, 0xCC, 0x33, 0x18, 0x66, 0x1B, 0x87, 0xC0, 0xC0, 0xFF, - 0xF0, 0xC7, 0x1C, 0x30, 0x1F, 0x0E, 0x71, 0xCF, 0x39, 0xE0, 0x3C, 0x1F, - 0x8E, 0xF3, 0x9E, 0xF3, 0xDE, 0x79, 0xFF, 0x80, 0xF8, 0x07, 0x80, 0x78, - 0x07, 0x80, 0x78, 0x07, 0xB8, 0x7D, 0xE7, 0x8E, 0x78, 0xF7, 0x8F, 0x78, - 0xF7, 0x8F, 0x78, 0xF7, 0x8E, 0x79, 0xC4, 0x78, 0x1F, 0x1D, 0xDC, 0xFE, - 0x7F, 0x07, 0x83, 0xC1, 0xE0, 0x78, 0x3C, 0x47, 0xC0, 0x03, 0xE0, 0x1E, - 0x01, 0xE0, 0x1E, 0x01, 0xE1, 0xDE, 0x7B, 0xE7, 0x1E, 0xF1, 0xEF, 0x1E, - 0xF1, 0xEF, 0x1E, 0xF1, 0xE7, 0x1E, 0x7B, 0xE1, 0xDF, 0x1F, 0x0C, 0x67, - 0x1B, 0xC7, 0xFF, 0xFC, 0x0F, 0x03, 0xC0, 0x78, 0x4E, 0x21, 0xF0, 0x1E, - 0x3B, 0x7B, 0x78, 0x78, 0xFC, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, - 0x78, 0x78, 0xFC, 0x3E, 0x0E, 0x7F, 0xCE, 0x79, 0xEF, 0x3C, 0xE7, 0x0F, - 0xC1, 0x00, 0x60, 0x1C, 0x03, 0xFE, 0x7F, 0xE3, 0xFF, 0x80, 0xF0, 0x33, - 0xFC, 0xF8, 0x07, 0x80, 0x78, 0x07, 0x80, 0x78, 0x07, 0xB8, 0x7D, 0xE7, - 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xEF, - 0xFF, 0x31, 0xE7, 0x8C, 0x03, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, - 0xBF, 0x06, 0x0F, 0x0F, 0x06, 0x00, 0x1F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0xCF, 0xCE, 0x7C, 0xF8, 0x03, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0xF9, 0xE1, 0x8F, 0x10, 0x79, - 0x03, 0xD8, 0x1F, 0xE0, 0xF7, 0x87, 0x9E, 0x3C, 0x71, 0xE3, 0xDF, 0xBF, - 0xF9, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0xBF, - 0xFB, 0xCF, 0x0F, 0xBE, 0x79, 0xE7, 0x8F, 0x3C, 0xF1, 0xE7, 0x9E, 0x3C, - 0xF3, 0xC7, 0x9E, 0x78, 0xF3, 0xCF, 0x1E, 0x79, 0xE3, 0xCF, 0x3C, 0x7B, - 0xFF, 0xDF, 0x80, 0xFB, 0x87, 0xDE, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, - 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0xFF, 0xF0, 0x1F, 0x07, 0x71, 0xC7, - 0x78, 0xFF, 0x1F, 0xE3, 0xFC, 0x7F, 0x8F, 0x71, 0xC7, 0x70, 0x7C, 0x00, - 0xFB, 0x87, 0xDE, 0x78, 0xE7, 0x8F, 0x78, 0xF7, 0x8F, 0x78, 0xF7, 0x8F, - 0x78, 0xE7, 0x9E, 0x7F, 0x87, 0x80, 0x78, 0x07, 0x80, 0x78, 0x0F, 0xC0, - 0x1E, 0x23, 0x9E, 0x71, 0xEF, 0x1E, 0xF1, 0xEF, 0x1E, 0xF1, 0xEF, 0x1E, - 0x71, 0xE7, 0x9E, 0x1F, 0xE0, 0x1E, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x3F, - 0xF9, 0xDF, 0xF7, 0xDD, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, - 0x0F, 0xC0, 0x3D, 0x43, 0xC3, 0xE0, 0xFC, 0x7E, 0x1F, 0x87, 0x83, 0xC2, - 0xBC, 0x08, 0x18, 0x38, 0x78, 0xFC, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, - 0x78, 0x78, 0x79, 0x3E, 0xFB, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, - 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x3F, 0xF0, 0xFC, 0xEF, 0x08, - 0xE1, 0x1E, 0x41, 0xC8, 0x3D, 0x03, 0xC0, 0x78, 0x0E, 0x00, 0xC0, 0x10, - 0x00, 0xFD, 0xF7, 0xBC, 0x71, 0x9E, 0x38, 0x87, 0x1E, 0x43, 0xCF, 0x40, - 0xEB, 0xA0, 0x7C, 0xF0, 0x1C, 0x70, 0x0E, 0x38, 0x06, 0x08, 0x01, 0x04, - 0x00, 0xFC, 0xF7, 0x84, 0x3C, 0x81, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x80, - 0xBC, 0x13, 0xC2, 0x1E, 0xFB, 0xF0, 0xFC, 0xEF, 0x08, 0xE1, 0x1E, 0x43, - 0xC8, 0x3A, 0x07, 0xC0, 0x78, 0x0E, 0x01, 0xC0, 0x18, 0x02, 0x00, 0x41, - 0xC8, 0x3A, 0x03, 0x80, 0xFF, 0xB1, 0xE8, 0x70, 0x3C, 0x1E, 0x07, 0x83, - 0xC1, 0xE0, 0x78, 0xBC, 0x2F, 0xF8, 0x07, 0x0E, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0xE0, 0x18, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1E, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xE0, 0x70, 0x38, 0x38, - 0x38, 0x38, 0x38, 0x38, 0x38, 0x18, 0x07, 0x38, 0x38, 0x38, 0x38, 0x38, - 0x38, 0x38, 0x38, 0x70, 0xE0, 0x70, 0x1F, 0x8B, 0x3F, 0x01, 0xC0}; - -const GFXglyph FreeSerifBold12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 4, 16, 8, 2, -15}, // 0x21 '!' - {8, 9, 7, 13, 2, -15}, // 0x22 '"' - {16, 12, 16, 12, 0, -15}, // 0x23 '#' - {40, 11, 20, 12, 1, -17}, // 0x24 '$' - {68, 18, 16, 24, 3, -15}, // 0x25 '%' - {104, 18, 16, 20, 1, -15}, // 0x26 '&' - {140, 3, 7, 7, 2, -15}, // 0x27 ''' - {143, 6, 21, 8, 1, -16}, // 0x28 '(' - {159, 6, 21, 8, 1, -16}, // 0x29 ')' - {175, 9, 10, 12, 2, -15}, // 0x2A '*' - {187, 12, 12, 16, 2, -11}, // 0x2B '+' - {205, 4, 8, 6, 1, -3}, // 0x2C ',' - {209, 6, 3, 8, 1, -6}, // 0x2D '-' - {212, 4, 4, 6, 1, -3}, // 0x2E '.' - {214, 8, 17, 7, -1, -15}, // 0x2F '/' - {231, 11, 16, 12, 1, -15}, // 0x30 '0' - {253, 9, 16, 12, 1, -15}, // 0x31 '1' - {271, 12, 16, 12, 0, -15}, // 0x32 '2' - {295, 11, 16, 12, 1, -15}, // 0x33 '3' - {317, 10, 16, 12, 1, -15}, // 0x34 '4' - {337, 11, 16, 12, 1, -15}, // 0x35 '5' - {359, 11, 16, 12, 1, -15}, // 0x36 '6' - {381, 11, 16, 12, 0, -15}, // 0x37 '7' - {403, 11, 16, 12, 1, -15}, // 0x38 '8' - {425, 11, 16, 12, 1, -15}, // 0x39 '9' - {447, 4, 11, 8, 2, -10}, // 0x3A ':' - {453, 4, 15, 8, 2, -10}, // 0x3B ';' - {461, 14, 14, 16, 1, -12}, // 0x3C '<' - {486, 14, 8, 16, 1, -9}, // 0x3D '=' - {500, 14, 14, 16, 1, -12}, // 0x3E '>' - {525, 10, 16, 12, 1, -15}, // 0x3F '?' - {545, 16, 16, 22, 3, -15}, // 0x40 '@' - {577, 17, 16, 17, 0, -15}, // 0x41 'A' - {611, 14, 16, 16, 1, -15}, // 0x42 'B' - {639, 15, 16, 17, 1, -15}, // 0x43 'C' - {669, 17, 16, 18, 0, -15}, // 0x44 'D' - {703, 15, 16, 16, 1, -15}, // 0x45 'E' - {733, 14, 16, 15, 1, -15}, // 0x46 'F' - {761, 16, 16, 19, 1, -15}, // 0x47 'G' - {793, 16, 16, 19, 2, -15}, // 0x48 'H' - {825, 8, 16, 9, 1, -15}, // 0x49 'I' - {841, 12, 18, 12, 0, -15}, // 0x4A 'J' - {868, 17, 16, 19, 2, -15}, // 0x4B 'K' - {902, 14, 16, 16, 2, -15}, // 0x4C 'L' - {930, 20, 16, 23, 1, -15}, // 0x4D 'M' - {970, 15, 16, 17, 1, -15}, // 0x4E 'N' - {1000, 17, 16, 19, 1, -15}, // 0x4F 'O' - {1034, 12, 16, 15, 2, -15}, // 0x50 'P' - {1058, 17, 20, 19, 1, -15}, // 0x51 'Q' - {1101, 16, 16, 17, 1, -15}, // 0x52 'R' - {1133, 12, 16, 14, 1, -15}, // 0x53 'S' - {1157, 15, 16, 15, 0, -15}, // 0x54 'T' - {1187, 15, 16, 17, 1, -15}, // 0x55 'U' - {1217, 17, 17, 17, 0, -15}, // 0x56 'V' - {1254, 23, 16, 24, 0, -15}, // 0x57 'W' - {1300, 17, 16, 17, 0, -15}, // 0x58 'X' - {1334, 16, 16, 17, 1, -15}, // 0x59 'Y' - {1366, 15, 16, 16, 0, -15}, // 0x5A 'Z' - {1396, 5, 20, 8, 2, -15}, // 0x5B '[' - {1409, 8, 17, 7, -1, -15}, // 0x5C '\' - {1426, 5, 20, 8, 2, -15}, // 0x5D ']' - {1439, 10, 9, 14, 2, -15}, // 0x5E '^' - {1451, 12, 1, 12, 0, 4}, // 0x5F '_' - {1453, 5, 4, 8, 0, -16}, // 0x60 '`' - {1456, 11, 11, 12, 1, -10}, // 0x61 'a' - {1472, 12, 16, 13, 1, -15}, // 0x62 'b' - {1496, 9, 11, 10, 1, -10}, // 0x63 'c' - {1509, 12, 16, 13, 1, -15}, // 0x64 'd' - {1533, 10, 11, 11, 1, -10}, // 0x65 'e' - {1547, 8, 16, 9, 1, -15}, // 0x66 'f' - {1563, 11, 16, 12, 1, -10}, // 0x67 'g' - {1585, 12, 16, 13, 1, -15}, // 0x68 'h' - {1609, 6, 16, 7, 1, -15}, // 0x69 'i' - {1621, 8, 21, 10, 0, -15}, // 0x6A 'j' - {1642, 13, 16, 13, 1, -15}, // 0x6B 'k' - {1668, 6, 16, 7, 1, -15}, // 0x6C 'l' - {1680, 19, 11, 20, 1, -10}, // 0x6D 'm' - {1707, 12, 11, 13, 1, -10}, // 0x6E 'n' - {1724, 11, 11, 12, 1, -10}, // 0x6F 'o' - {1740, 12, 16, 13, 1, -10}, // 0x70 'p' - {1764, 12, 16, 13, 1, -10}, // 0x71 'q' - {1788, 10, 11, 10, 1, -10}, // 0x72 'r' - {1802, 8, 11, 10, 1, -10}, // 0x73 's' - {1813, 8, 15, 8, 1, -14}, // 0x74 't' - {1828, 12, 11, 14, 1, -10}, // 0x75 'u' - {1845, 11, 11, 12, 0, -10}, // 0x76 'v' - {1861, 17, 11, 17, 0, -10}, // 0x77 'w' - {1885, 12, 11, 12, 0, -10}, // 0x78 'x' - {1902, 11, 16, 12, 0, -10}, // 0x79 'y' - {1924, 10, 11, 11, 1, -10}, // 0x7A 'z' - {1938, 8, 21, 9, 0, -16}, // 0x7B '{' - {1959, 2, 17, 5, 2, -15}, // 0x7C '|' - {1964, 8, 21, 9, 2, -16}, // 0x7D '}' - {1985, 11, 4, 12, 1, -7}}; // 0x7E '~' - -const GFXfont FreeSerifBold12pt7b PROGMEM = { - (uint8_t *)FreeSerifBold12pt7bBitmaps, - (GFXglyph *)FreeSerifBold12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 2663 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h deleted file mode 100644 index faecf4f..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h +++ /dev/null @@ -1,464 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold18pt7bBitmaps[] PROGMEM = { - 0x7B, 0xEF, 0xFF, 0xFF, 0xF7, 0x9E, 0x71, 0xC7, 0x0C, 0x20, 0x82, 0x00, - 0x00, 0x07, 0x3E, 0xFF, 0xFF, 0xDC, 0x60, 0x37, 0x83, 0xFC, 0x1F, 0xE0, - 0xFF, 0x07, 0xB8, 0x3D, 0xC0, 0xCC, 0x06, 0x20, 0x31, 0x01, 0x80, 0x03, - 0x8E, 0x00, 0xC3, 0x80, 0x30, 0xE0, 0x1C, 0x38, 0x07, 0x0E, 0x01, 0xC3, - 0x87, 0xFF, 0xFD, 0xFF, 0xFF, 0x7F, 0xFF, 0xC1, 0x87, 0x00, 0xE1, 0xC0, - 0x38, 0x70, 0x0E, 0x1C, 0x03, 0x86, 0x0F, 0xFF, 0xF3, 0xFF, 0xFC, 0xFF, - 0xFF, 0x07, 0x0E, 0x01, 0xC3, 0x80, 0x70, 0xE0, 0x1C, 0x30, 0x07, 0x0C, - 0x01, 0x87, 0x00, 0x61, 0xC0, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0xFF, - 0x03, 0x27, 0x8C, 0x47, 0x38, 0x86, 0x71, 0x0C, 0xF2, 0x09, 0xF4, 0x03, - 0xF8, 0x03, 0xF8, 0x07, 0xFC, 0x03, 0xFC, 0x03, 0xFE, 0x01, 0xFE, 0x03, - 0xFC, 0x04, 0xFC, 0x08, 0xFA, 0x10, 0xF4, 0x21, 0xEC, 0x43, 0xD8, 0x8F, - 0x3D, 0x3C, 0x3F, 0xF0, 0x1F, 0x00, 0x08, 0x00, 0x10, 0x00, 0x03, 0xC0, - 0x18, 0x01, 0xFE, 0x0F, 0x00, 0x7C, 0xFF, 0xC0, 0x1F, 0x0F, 0x90, 0x07, - 0xC1, 0x06, 0x00, 0xF0, 0x21, 0x80, 0x3E, 0x04, 0x30, 0x07, 0x81, 0x8C, - 0x00, 0xF0, 0x21, 0x80, 0x1E, 0x0C, 0x60, 0x03, 0xC1, 0x18, 0x1E, 0x3C, - 0xE3, 0x0F, 0xE7, 0xF8, 0xC3, 0xE6, 0x3C, 0x18, 0xF8, 0x40, 0x06, 0x3E, - 0x08, 0x01, 0x87, 0x81, 0x00, 0x31, 0xF0, 0x20, 0x0C, 0x3E, 0x04, 0x01, - 0x87, 0x81, 0x00, 0x60, 0xF0, 0x60, 0x18, 0x1E, 0x08, 0x03, 0x03, 0xC7, - 0x00, 0xC0, 0x3F, 0xC0, 0x18, 0x03, 0xE0, 0x00, 0x7E, 0x00, 0x00, 0x7F, - 0xE0, 0x00, 0x38, 0xF8, 0x00, 0x1E, 0x1F, 0x00, 0x07, 0x83, 0xC0, 0x01, - 0xF0, 0xF0, 0x00, 0x7C, 0x38, 0x00, 0x1F, 0x9C, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFE, 0x0F, 0xF0, 0x3F, 0x80, 0xF0, 0x1F, 0xF0, 0x18, 0x1C, 0xFE, - 0x0C, 0x0E, 0x1F, 0xC3, 0x07, 0x87, 0xF1, 0x81, 0xE0, 0xFE, 0x40, 0xF8, - 0x1F, 0xF0, 0x3F, 0x07, 0xF8, 0x0F, 0xC0, 0xFE, 0x03, 0xF8, 0x1F, 0xC0, - 0xFE, 0x07, 0xF8, 0x9F, 0xE3, 0xFF, 0xE7, 0xFF, 0x9F, 0xF0, 0xFF, 0xC3, - 0xF8, 0x0F, 0x80, 0x3C, 0x00, 0x6F, 0xFF, 0xFF, 0x66, 0x66, 0x00, 0x81, - 0x81, 0x81, 0x81, 0x80, 0xC0, 0xE0, 0x70, 0x70, 0x38, 0x3C, 0x1E, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x0E, 0x07, 0x03, 0x80, 0xE0, - 0x70, 0x18, 0x06, 0x01, 0x00, 0x40, 0x10, 0x04, 0x80, 0x30, 0x0C, 0x03, - 0x00, 0xC0, 0x60, 0x38, 0x1C, 0x07, 0x03, 0x81, 0xC0, 0xF0, 0x78, 0x3C, - 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xE0, 0x70, 0x38, 0x38, 0x1C, 0x0C, - 0x0C, 0x06, 0x04, 0x04, 0x04, 0x00, 0x03, 0x00, 0x1E, 0x00, 0x78, 0x1D, - 0xE6, 0xFB, 0x3D, 0xED, 0xF3, 0xFF, 0x01, 0xC0, 0x7F, 0xF3, 0xED, 0xFF, - 0x33, 0xD9, 0xE6, 0x07, 0x80, 0x1E, 0x00, 0x30, 0x00, 0x00, 0xE0, 0x00, - 0x1C, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, - 0x38, 0x00, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, - 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x73, 0xEF, 0xFF, 0xFD, 0xF0, - 0xC2, 0x18, 0xC6, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0x7B, 0xFF, 0xFF, 0xFD, - 0xE0, 0x00, 0xE0, 0x3C, 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, - 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, - 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x00, - 0x03, 0xC0, 0x0E, 0x70, 0x1E, 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x7C, 0x3E, - 0x7C, 0x3E, 0x7C, 0x3E, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3E, 0x7C, 0x3E, - 0x7C, 0x3E, 0x3C, 0x3C, 0x3C, 0x3C, 0x1E, 0x78, 0x0E, 0x70, 0x03, 0xC0, - 0x00, 0xC0, 0x3C, 0x0F, 0xC3, 0xFC, 0x4F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, - 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, - 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x1F, 0xEF, 0xFF, - 0x03, 0xE0, 0x0F, 0xF8, 0x1F, 0xFC, 0x3F, 0xFC, 0x30, 0xFE, 0x60, 0x7E, - 0x40, 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x78, - 0x00, 0x70, 0x00, 0xE0, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, 0x01, - 0x0C, 0x03, 0x1F, 0xFF, 0x1F, 0xFF, 0x3F, 0xFE, 0x7F, 0xFE, 0xFF, 0xFE, - 0x03, 0xF0, 0x0F, 0xF8, 0x3F, 0xFC, 0x21, 0xFE, 0x40, 0xFE, 0x00, 0x7E, - 0x00, 0x7E, 0x00, 0x7C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xFC, 0x03, 0xFE, - 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, - 0x00, 0x0E, 0x70, 0x0E, 0xFC, 0x1C, 0xFE, 0x38, 0x7F, 0xE0, 0x3F, 0x80, - 0x00, 0x38, 0x00, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x1F, 0x80, 0x5F, 0x00, - 0xBE, 0x02, 0x7C, 0x08, 0xF8, 0x31, 0xF0, 0x43, 0xE1, 0x07, 0xC4, 0x0F, - 0x88, 0x1F, 0x20, 0x3E, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, - 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x0F, 0xFE, 0x1F, - 0xF8, 0x7F, 0xF0, 0xFF, 0xE1, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x18, 0x00, - 0x3F, 0x80, 0xFF, 0xC1, 0xFF, 0xC3, 0xFF, 0xC3, 0xFF, 0x80, 0x3F, 0x80, - 0x0F, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x37, 0x80, 0x4F, 0x81, - 0x9F, 0xC6, 0x3F, 0xF8, 0x1F, 0x80, 0x00, 0x07, 0x00, 0x7C, 0x01, 0xF0, - 0x03, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0x7E, 0x00, - 0x7F, 0xF0, 0x7F, 0xFC, 0xFC, 0x7E, 0xFC, 0x7E, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0x7C, 0x3F, 0x7C, 0x3E, 0x3C, 0x3E, - 0x3E, 0x3C, 0x1E, 0x78, 0x07, 0xE0, 0x7F, 0xFF, 0x7F, 0xFE, 0x7F, 0xFE, - 0xFF, 0xFE, 0xFF, 0xFC, 0xC0, 0x1C, 0x80, 0x18, 0x80, 0x38, 0x00, 0x38, - 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, - 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x03, 0x80, 0x03, 0x80, 0x07, 0x80, - 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0F, 0xE0, 0x38, 0x78, 0x70, 0x3C, - 0xF0, 0x1E, 0xF0, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xFE, 0x3C, 0x7F, 0xB0, - 0x7F, 0xE0, 0x3F, 0xF0, 0x0F, 0xF8, 0x1F, 0xFC, 0x39, 0xFE, 0x70, 0xFF, - 0xF0, 0x3F, 0xF0, 0x3F, 0xF0, 0x1F, 0xF0, 0x1F, 0xF0, 0x1E, 0x78, 0x3E, - 0x7C, 0x7C, 0x3F, 0xF8, 0x0F, 0xE0, 0x07, 0xE0, 0x1E, 0x78, 0x3C, 0x7C, - 0x7C, 0x3C, 0x7C, 0x3E, 0xFC, 0x3E, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x3F, 0xFC, 0x3F, 0x7E, 0x3F, 0x7E, 0x3F, 0x3F, 0xFE, 0x0F, 0xFE, - 0x00, 0x7E, 0x00, 0x7C, 0x00, 0xF8, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xC0, - 0x0F, 0x80, 0x3E, 0x00, 0xE0, 0x00, 0x7B, 0xFF, 0xFF, 0xFD, 0xE0, 0x00, - 0x00, 0x07, 0xBF, 0xFF, 0xFF, 0xDE, 0x39, 0xFB, 0xF7, 0xEF, 0xC7, 0x00, - 0x00, 0x00, 0x01, 0xE7, 0xEF, 0xFF, 0xFF, 0xBF, 0x06, 0x08, 0x30, 0xC2, - 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x0F, 0x80, 0x07, 0xF0, - 0x03, 0xFC, 0x01, 0xFE, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x80, 0x1F, - 0xC0, 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x07, 0xF0, 0x00, - 0x3F, 0x80, 0x01, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x7C, 0x00, 0x01, 0x80, - 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x18, 0x00, 0x03, - 0xE0, 0x00, 0x7F, 0x00, 0x07, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, - 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x1F, 0xC0, - 0x0F, 0xE0, 0x07, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x00, 0xFE, 0x00, 0x1F, - 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0xFF, 0xC7, 0x1F, - 0xB8, 0x3E, 0xF0, 0xFF, 0xC3, 0xFF, 0x0F, 0xD8, 0x3F, 0x00, 0xF8, 0x07, - 0xC0, 0x1E, 0x00, 0x60, 0x03, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x00, - 0x00, 0x00, 0x00, 0x70, 0x03, 0xE0, 0x1F, 0x80, 0x7E, 0x01, 0xF8, 0x01, - 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xE0, 0x07, 0xC0, 0xF0, 0x0F, 0x00, - 0x38, 0x1E, 0x00, 0x0C, 0x3C, 0x07, 0x06, 0x38, 0x1F, 0x72, 0x78, 0x3C, - 0xF3, 0x78, 0x78, 0xE1, 0xF0, 0x70, 0xE1, 0xF0, 0xF0, 0xE1, 0xF0, 0xE0, - 0xC1, 0xF1, 0xE1, 0xC1, 0xF1, 0xC1, 0xC1, 0xF1, 0xC3, 0x82, 0xF1, 0xC3, - 0x86, 0x71, 0xC7, 0x8C, 0x79, 0xFB, 0xF8, 0x78, 0xF1, 0xF0, 0x3C, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0xC0, 0x78, 0x03, 0xFF, - 0xE0, 0x00, 0x7F, 0x80, 0x00, 0x10, 0x00, 0x00, 0x38, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0xFE, 0x00, 0x01, 0xBF, 0x00, 0x01, 0xBF, 0x00, 0x01, 0x1F, - 0x00, 0x03, 0x1F, 0x80, 0x02, 0x1F, 0x80, 0x06, 0x0F, 0xC0, 0x06, 0x0F, - 0xC0, 0x04, 0x07, 0xE0, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x18, 0x03, - 0xF0, 0x18, 0x03, 0xF0, 0x30, 0x01, 0xF8, 0x30, 0x01, 0xF8, 0x70, 0x01, - 0xFC, 0xFE, 0x0F, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFE, 0x0F, 0xE1, 0xF8, - 0x3F, 0x07, 0xC1, 0xF8, 0x3F, 0x0F, 0xC1, 0xF8, 0x7E, 0x0F, 0xC3, 0xF0, - 0x7E, 0x1F, 0x87, 0xE0, 0xFC, 0x7C, 0x07, 0xFF, 0x00, 0x3F, 0xFF, 0x01, - 0xF8, 0xFE, 0x0F, 0xC1, 0xF8, 0x7E, 0x0F, 0xC3, 0xF0, 0x3F, 0x1F, 0x81, - 0xF8, 0xFC, 0x0F, 0xC7, 0xE0, 0x7E, 0x3F, 0x03, 0xF1, 0xF8, 0x3F, 0x0F, - 0xC3, 0xF0, 0xFF, 0xFF, 0x1F, 0xFF, 0xC0, 0x00, 0x7E, 0x04, 0x07, 0xFF, - 0x18, 0x1F, 0x07, 0xF0, 0x7C, 0x03, 0xE1, 0xF0, 0x03, 0xC7, 0xC0, 0x03, - 0x9F, 0x80, 0x03, 0x3F, 0x00, 0x06, 0x7C, 0x00, 0x05, 0xF8, 0x00, 0x03, - 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x3F, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF8, - 0x00, 0x01, 0xF0, 0x00, 0x23, 0xF0, 0x00, 0xC3, 0xF0, 0x07, 0x03, 0xF0, - 0x3C, 0x01, 0xFF, 0xE0, 0x00, 0xFF, 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, - 0x00, 0x7E, 0x1F, 0x80, 0xFC, 0x1F, 0x81, 0xF8, 0x1F, 0x83, 0xF0, 0x1F, - 0x07, 0xE0, 0x3F, 0x0F, 0xC0, 0x7E, 0x1F, 0x80, 0x7E, 0x3F, 0x00, 0xFC, - 0x7E, 0x01, 0xF8, 0xFC, 0x03, 0xF1, 0xF8, 0x07, 0xE3, 0xF0, 0x0F, 0xC7, - 0xE0, 0x1F, 0x8F, 0xC0, 0x3F, 0x1F, 0x80, 0x7C, 0x3F, 0x01, 0xF8, 0x7E, - 0x03, 0xE0, 0xFC, 0x0F, 0x81, 0xF8, 0x1F, 0x03, 0xF0, 0xFC, 0x0F, 0xFF, - 0xE0, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0x0F, 0xC0, 0x78, - 0x7E, 0x01, 0xC3, 0xF0, 0x06, 0x1F, 0x80, 0x10, 0xFC, 0x10, 0x87, 0xE0, - 0x80, 0x3F, 0x0C, 0x01, 0xF8, 0xE0, 0x0F, 0xFF, 0x00, 0x7F, 0xF8, 0x03, - 0xF1, 0xC0, 0x1F, 0x86, 0x00, 0xFC, 0x10, 0x07, 0xE0, 0x80, 0x3F, 0x00, - 0x09, 0xF8, 0x00, 0xCF, 0xC0, 0x0C, 0x7E, 0x00, 0x63, 0xF0, 0x0F, 0x1F, - 0x81, 0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFC, 0xFF, 0xFF, 0xEF, 0xFF, 0xFC, - 0xFC, 0x0F, 0x9F, 0x80, 0x73, 0xF0, 0x06, 0x7E, 0x00, 0x4F, 0xC1, 0x09, - 0xF8, 0x20, 0x3F, 0x0C, 0x07, 0xE3, 0x80, 0xFF, 0xF0, 0x1F, 0xFE, 0x03, - 0xF1, 0xC0, 0x7E, 0x18, 0x0F, 0xC1, 0x01, 0xF8, 0x20, 0x3F, 0x00, 0x07, - 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x1F, - 0xE0, 0x07, 0xFF, 0x00, 0x00, 0x7E, 0x02, 0x01, 0xFF, 0xE3, 0x01, 0xF0, - 0x3F, 0x81, 0xF0, 0x07, 0xC1, 0xF0, 0x01, 0xE1, 0xF0, 0x00, 0x71, 0xF8, - 0x00, 0x18, 0xFC, 0x00, 0x0C, 0x7C, 0x00, 0x02, 0x7E, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, - 0xF0, 0x0F, 0xFF, 0xF8, 0x01, 0xFE, 0x7C, 0x00, 0x7E, 0x3F, 0x00, 0x3F, - 0x1F, 0x80, 0x1F, 0x87, 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xE0, 0xFC, 0x03, - 0xF0, 0x1F, 0x83, 0xF0, 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0x80, 0x00, 0xFF, - 0xC3, 0xFF, 0x7F, 0x81, 0xFE, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x7F, 0x81, 0xFE, 0xFF, 0xC3, 0xFF, 0xFF, - 0xEF, 0xF0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, - 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, - 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x1F, 0xE7, 0xFF, 0x07, 0xFF, 0x01, 0xFE, - 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, - 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, - 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, - 0x70, 0xFC, 0xF8, 0xFC, 0xF8, 0xF8, 0xF0, 0xF8, 0x71, 0xF0, 0x7F, 0xE0, - 0x1F, 0x80, 0xFF, 0xC3, 0xFF, 0x3F, 0xC0, 0x3E, 0x0F, 0xC0, 0x1C, 0x07, - 0xE0, 0x18, 0x03, 0xF0, 0x18, 0x01, 0xF8, 0x18, 0x00, 0xFC, 0x18, 0x00, - 0x7E, 0x18, 0x00, 0x3F, 0x18, 0x00, 0x1F, 0x9C, 0x00, 0x0F, 0xDF, 0x00, - 0x07, 0xFF, 0xC0, 0x03, 0xFF, 0xF0, 0x01, 0xF9, 0xF8, 0x00, 0xFC, 0xFE, - 0x00, 0x7E, 0x3F, 0x80, 0x3F, 0x0F, 0xE0, 0x1F, 0x83, 0xF8, 0x0F, 0xC0, - 0xFC, 0x07, 0xE0, 0x7F, 0x03, 0xF0, 0x1F, 0xC1, 0xF8, 0x07, 0xF1, 0xFE, - 0x03, 0xFD, 0xFF, 0x8F, 0xFF, 0xFF, 0xE0, 0x03, 0xFC, 0x00, 0x0F, 0xC0, - 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, - 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x01, 0x3F, - 0x00, 0x19, 0xF8, 0x00, 0xCF, 0xC0, 0x0C, 0x7E, 0x00, 0x63, 0xF0, 0x0F, - 0x1F, 0x81, 0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0x80, 0x03, 0xFE, - 0x7F, 0x00, 0x07, 0xF8, 0x7E, 0x00, 0x0F, 0xE0, 0xFE, 0x00, 0x3F, 0xC1, - 0x7C, 0x00, 0x5F, 0x82, 0xFC, 0x01, 0xBF, 0x05, 0xF8, 0x02, 0x7E, 0x09, - 0xF8, 0x0C, 0xFC, 0x13, 0xF0, 0x11, 0xF8, 0x23, 0xE0, 0x23, 0xF0, 0x47, - 0xE0, 0xC7, 0xE0, 0x87, 0xC1, 0x0F, 0xC1, 0x0F, 0xC6, 0x1F, 0x82, 0x0F, - 0x88, 0x3F, 0x04, 0x1F, 0xB0, 0x7E, 0x08, 0x3F, 0x60, 0xFC, 0x10, 0x3E, - 0x81, 0xF8, 0x20, 0x7F, 0x03, 0xF0, 0x40, 0x7C, 0x07, 0xE0, 0x80, 0xF8, - 0x0F, 0xC1, 0x00, 0xE0, 0x1F, 0x82, 0x01, 0xC0, 0x3F, 0x0E, 0x03, 0x80, - 0xFF, 0x7F, 0x82, 0x03, 0xFF, 0xFE, 0x00, 0xFE, 0xFE, 0x00, 0x70, 0xFE, - 0x00, 0x40, 0xFE, 0x00, 0x81, 0xFC, 0x01, 0x03, 0xFC, 0x02, 0x05, 0xFC, - 0x04, 0x09, 0xFC, 0x08, 0x11, 0xFC, 0x10, 0x23, 0xF8, 0x20, 0x43, 0xF8, - 0x40, 0x83, 0xF8, 0x81, 0x03, 0xF9, 0x02, 0x03, 0xFA, 0x04, 0x03, 0xF4, - 0x08, 0x07, 0xF8, 0x10, 0x07, 0xF0, 0x20, 0x07, 0xE0, 0x40, 0x07, 0xC0, - 0x80, 0x07, 0x81, 0x00, 0x0F, 0x02, 0x00, 0x0E, 0x0E, 0x00, 0x0C, 0x7F, - 0x00, 0x08, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xF0, 0x01, 0xF0, 0x7C, 0x01, - 0xF0, 0x1F, 0x01, 0xF0, 0x07, 0xC1, 0xF0, 0x01, 0xF1, 0xF8, 0x00, 0xFC, - 0xFC, 0x00, 0x7E, 0x7C, 0x00, 0x1F, 0x7E, 0x00, 0x0F, 0xFF, 0x00, 0x07, - 0xFF, 0x80, 0x03, 0xFF, 0xC0, 0x01, 0xFF, 0xE0, 0x00, 0xFF, 0xF0, 0x00, - 0x7F, 0xF8, 0x00, 0x3F, 0x7C, 0x00, 0x1F, 0x3E, 0x00, 0x1F, 0x9F, 0x80, - 0x0F, 0xC7, 0xC0, 0x07, 0xC1, 0xF0, 0x07, 0xC0, 0xFC, 0x07, 0xE0, 0x3F, - 0x07, 0xC0, 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xFC, 0x0F, - 0xFF, 0xE0, 0xFC, 0x7E, 0x1F, 0x87, 0xE3, 0xF0, 0x7E, 0x7E, 0x0F, 0xCF, - 0xC1, 0xF9, 0xF8, 0x3F, 0x3F, 0x07, 0xE7, 0xE0, 0xFC, 0xFC, 0x3F, 0x1F, - 0x8F, 0xC3, 0xFF, 0xF0, 0x7F, 0xF8, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, - 0x00, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, - 0x00, 0x1F, 0xE0, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xF0, - 0x01, 0xF0, 0x7C, 0x01, 0xF0, 0x1F, 0x01, 0xF0, 0x07, 0xC1, 0xF0, 0x01, - 0xF1, 0xF8, 0x00, 0xFC, 0xFC, 0x00, 0x7E, 0x7C, 0x00, 0x1F, 0x7E, 0x00, - 0x0F, 0xFF, 0x00, 0x07, 0xFF, 0x80, 0x03, 0xFF, 0xC0, 0x01, 0xFF, 0xE0, - 0x00, 0xFF, 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0x7C, 0x00, 0x1F, 0x3E, - 0x00, 0x0F, 0x9F, 0x80, 0x0F, 0xC7, 0xC0, 0x07, 0xC1, 0xF0, 0x07, 0xC0, - 0x78, 0x03, 0xC0, 0x1E, 0x07, 0xC0, 0x03, 0xFF, 0x80, 0x00, 0x7F, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, - 0xF8, 0x00, 0x0F, 0xE0, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x00, 0xFC, 0x3F, - 0x01, 0xF8, 0x3F, 0x03, 0xF0, 0x3F, 0x07, 0xE0, 0x7E, 0x0F, 0xC0, 0xFC, - 0x1F, 0x81, 0xF8, 0x3F, 0x03, 0xF0, 0x7E, 0x07, 0xC0, 0xFC, 0x1F, 0x81, - 0xF8, 0x7E, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x0F, 0xDF, 0xC0, 0x1F, - 0x9F, 0x80, 0x3F, 0x1F, 0x80, 0x7E, 0x3F, 0x80, 0xFC, 0x3F, 0x81, 0xF8, - 0x3F, 0x03, 0xF0, 0x7F, 0x07, 0xE0, 0x7F, 0x1F, 0xE0, 0x7F, 0x7F, 0xE0, - 0xFF, 0x07, 0xC2, 0x1F, 0xF2, 0x3C, 0x3E, 0x70, 0x0E, 0xF0, 0x06, 0xF0, - 0x06, 0xF0, 0x02, 0xF8, 0x00, 0xFE, 0x00, 0xFF, 0x80, 0x7F, 0xE0, 0x3F, - 0xF8, 0x1F, 0xFC, 0x0F, 0xFE, 0x03, 0xFE, 0x00, 0xFF, 0x00, 0x3F, 0x80, - 0x1F, 0xC0, 0x0F, 0xC0, 0x0F, 0xE0, 0x0E, 0xF0, 0x1E, 0xF8, 0x3C, 0x9F, - 0xF8, 0x87, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x7E, 0x3F, 0x83, - 0xF0, 0x7C, 0x1F, 0x81, 0xC0, 0xFC, 0x06, 0x07, 0xE0, 0x20, 0x3F, 0x00, - 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, - 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, - 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, - 0x00, 0x0F, 0xF0, 0x01, 0xFF, 0xE0, 0xFF, 0xC1, 0xFD, 0xFE, 0x01, 0xC3, - 0xF0, 0x02, 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, - 0x02, 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, 0x02, - 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, 0x02, 0x0F, - 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, 0x02, 0x0F, 0xC0, - 0x18, 0x1F, 0x80, 0x40, 0x7E, 0x03, 0x00, 0xFC, 0x18, 0x01, 0xFF, 0xC0, - 0x00, 0xFC, 0x00, 0xFF, 0xF0, 0x7F, 0x3F, 0xC0, 0x1E, 0x1F, 0x80, 0x0C, - 0x1F, 0x80, 0x08, 0x0F, 0xC0, 0x18, 0x0F, 0xC0, 0x18, 0x07, 0xE0, 0x10, - 0x07, 0xE0, 0x30, 0x07, 0xE0, 0x20, 0x03, 0xF0, 0x60, 0x03, 0xF0, 0x60, - 0x01, 0xF8, 0x40, 0x01, 0xF8, 0xC0, 0x00, 0xF8, 0x80, 0x00, 0xFC, 0x80, - 0x00, 0xFD, 0x80, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x1C, 0x00, - 0x00, 0x0C, 0x00, 0xFF, 0xE7, 0xFF, 0x0F, 0xCF, 0xE0, 0x7F, 0x00, 0xE1, - 0xF8, 0x0F, 0xC0, 0x30, 0x7E, 0x03, 0xF0, 0x0C, 0x1F, 0x80, 0x7C, 0x02, - 0x03, 0xE0, 0x1F, 0x81, 0x80, 0xFC, 0x07, 0xE0, 0x60, 0x3F, 0x03, 0xF8, - 0x10, 0x07, 0xC0, 0xBF, 0x0C, 0x01, 0xF8, 0x2F, 0xC3, 0x00, 0x7E, 0x19, - 0xF0, 0x80, 0x0F, 0x84, 0x7C, 0x60, 0x03, 0xF3, 0x0F, 0x98, 0x00, 0xFC, - 0xC3, 0xE4, 0x00, 0x1F, 0x20, 0xFB, 0x00, 0x07, 0xF8, 0x1F, 0xC0, 0x00, - 0xFC, 0x07, 0xE0, 0x00, 0x3F, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x3E, 0x00, - 0x01, 0xE0, 0x0F, 0x00, 0x00, 0x78, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x70, - 0x00, 0x03, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x06, 0x00, 0x00, 0x20, 0x00, - 0x80, 0x00, 0xFF, 0xF3, 0xFE, 0x7F, 0x80, 0x78, 0x3F, 0x80, 0x70, 0x1F, - 0xC0, 0x60, 0x0F, 0xC0, 0xC0, 0x0F, 0xE1, 0x80, 0x07, 0xF1, 0x00, 0x03, - 0xF3, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x9F, 0x80, 0x01, 0x8F, 0xC0, 0x03, 0x0F, 0xE0, 0x06, 0x07, 0xE0, 0x06, - 0x07, 0xF0, 0x0C, 0x03, 0xF8, 0x1C, 0x03, 0xF8, 0x3C, 0x03, 0xFC, 0xFF, - 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0x7F, 0x80, 0x1E, 0x3F, 0x80, 0x1C, 0x1F, - 0x80, 0x18, 0x1F, 0xC0, 0x10, 0x0F, 0xC0, 0x30, 0x07, 0xE0, 0x20, 0x07, - 0xE0, 0x60, 0x03, 0xF0, 0xC0, 0x03, 0xF0, 0x80, 0x01, 0xF9, 0x80, 0x01, - 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFF, 0x00, 0x01, - 0xFF, 0x80, 0x7F, 0xFF, 0xF3, 0xFF, 0xFF, 0x9F, 0x01, 0xF8, 0xE0, 0x1F, - 0x86, 0x01, 0xFC, 0x20, 0x0F, 0xC1, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, - 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x80, - 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x01, 0x0F, 0xC0, 0x18, 0xFC, - 0x00, 0xC7, 0xE0, 0x06, 0x7E, 0x00, 0x77, 0xF0, 0x07, 0x3F, 0x00, 0xFB, - 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0xFF, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xE0, 0x1E, - 0x01, 0xC0, 0x38, 0x07, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x1C, 0x03, 0x80, - 0x70, 0x07, 0x00, 0xE0, 0x1C, 0x01, 0xC0, 0x38, 0x07, 0x00, 0x70, 0x0E, - 0x01, 0xC0, 0x1C, 0x03, 0x80, 0x70, 0x0F, 0x00, 0xE0, 0xFF, 0xFF, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0xFF, 0xFF, 0x03, 0x80, 0x0F, 0x00, 0x1F, 0x00, 0x7E, 0x00, 0xEE, 0x03, - 0x9C, 0x07, 0x1C, 0x1C, 0x38, 0x38, 0x38, 0xE0, 0x71, 0xC0, 0x77, 0x00, - 0xEE, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xE0, 0xF0, - 0x78, 0x3C, 0x0E, 0x07, 0x0F, 0xE0, 0x3F, 0xF0, 0x78, 0xF8, 0x78, 0x7C, - 0x78, 0x7C, 0x38, 0x7C, 0x00, 0x7C, 0x03, 0xFC, 0x1E, 0x7C, 0x7C, 0x7C, - 0xFC, 0x7C, 0xFC, 0x7C, 0xFC, 0xFC, 0xFF, 0xFD, 0x7F, 0x7F, 0x3C, 0x3C, - 0xFC, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0xF8, 0x1F, 0x7F, 0x87, 0xE3, - 0xF1, 0xF0, 0x7E, 0x7C, 0x0F, 0x9F, 0x03, 0xF7, 0xC0, 0xFD, 0xF0, 0x3F, - 0x7C, 0x0F, 0xDF, 0x03, 0xF7, 0xC0, 0xFD, 0xF0, 0x3E, 0x7C, 0x1F, 0x1F, - 0x8F, 0xC6, 0x7F, 0xC1, 0x07, 0xC0, 0x07, 0xC0, 0x7F, 0xC3, 0xC7, 0x9F, - 0x1E, 0x78, 0x7B, 0xE1, 0xCF, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, - 0x80, 0x3F, 0x00, 0x7C, 0x00, 0xFC, 0x61, 0xFF, 0x03, 0xF0, 0x00, 0x7F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, - 0x01, 0xF0, 0x00, 0x7C, 0x07, 0x9F, 0x07, 0xF7, 0xC3, 0xE3, 0xF1, 0xF8, - 0x7C, 0x7C, 0x1F, 0x3F, 0x07, 0xCF, 0xC1, 0xF3, 0xF0, 0x7C, 0xFC, 0x1F, - 0x3F, 0x07, 0xCF, 0xC1, 0xF1, 0xF0, 0x7C, 0x7E, 0x1F, 0x0F, 0x8F, 0xC1, - 0xFD, 0xFC, 0x3E, 0x70, 0x0F, 0xC0, 0x7F, 0xC3, 0xC7, 0x1E, 0x1E, 0xF8, - 0x7B, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0xC0, 0x1F, - 0x03, 0x7E, 0x18, 0xFF, 0xC1, 0xFE, 0x03, 0xF0, 0x0F, 0x83, 0xF8, 0xF3, - 0xBE, 0xF7, 0xDC, 0xF8, 0x1F, 0x03, 0xE0, 0xFF, 0x1F, 0xE1, 0xF0, 0x3E, - 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, - 0xC0, 0xF8, 0x1F, 0x07, 0xF8, 0x0F, 0xC0, 0x1F, 0xFF, 0xDF, 0x1F, 0xFF, - 0x07, 0x8F, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, 0x7C, 0x78, 0x3C, - 0x1E, 0x3E, 0x03, 0xFC, 0x03, 0x00, 0x07, 0x00, 0x07, 0x80, 0x03, 0xFF, - 0xF1, 0xFF, 0xFE, 0x7F, 0xFF, 0x8F, 0xFF, 0xF8, 0x01, 0xFC, 0x00, 0x7F, - 0x00, 0x73, 0xFF, 0xF0, 0x7F, 0xC0, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, - 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, - 0x7C, 0x3E, 0xFF, 0x1F, 0xCF, 0xCF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, - 0xF0, 0x7C, 0xF8, 0x3E, 0x7C, 0x1F, 0x3E, 0x0F, 0x9F, 0x07, 0xCF, 0x83, - 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, 0x7D, 0xFC, 0x7F, 0x39, 0xFB, 0xF7, - 0xE7, 0x80, 0x00, 0x00, 0xFC, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, - 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x7F, 0x03, 0xC0, 0xFC, 0x1F, 0x83, 0xF0, - 0x3C, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, - 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, - 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7D, 0xCF, 0xF9, 0xEE, 0x7C, 0xFF, 0x0F, - 0x80, 0xFC, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x7F, 0x9F, 0x07, 0x87, - 0xC1, 0x81, 0xF0, 0xC0, 0x7C, 0x60, 0x1F, 0x30, 0x07, 0xDE, 0x01, 0xFF, - 0xC0, 0x7F, 0xF0, 0x1F, 0x3E, 0x07, 0xCF, 0xC1, 0xF1, 0xF8, 0x7C, 0x3E, - 0x1F, 0x07, 0xC7, 0xC1, 0xFB, 0xF9, 0xFF, 0xFC, 0xF9, 0xF3, 0xE7, 0xCF, - 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, - 0xE7, 0xCF, 0x9F, 0x7F, 0xFC, 0x7C, 0x1F, 0x0F, 0xBF, 0xCF, 0xF1, 0xF8, - 0xFF, 0x3F, 0x3E, 0x0F, 0x83, 0xE7, 0xC1, 0xF0, 0x7C, 0xF8, 0x3E, 0x0F, - 0x9F, 0x07, 0xC1, 0xF3, 0xE0, 0xF8, 0x3E, 0x7C, 0x1F, 0x07, 0xCF, 0x83, - 0xE0, 0xF9, 0xF0, 0x7C, 0x1F, 0x3E, 0x0F, 0x83, 0xE7, 0xC1, 0xF0, 0x7C, - 0xF8, 0x3E, 0x0F, 0x9F, 0x07, 0xC1, 0xF7, 0xF1, 0xFC, 0x7F, 0xFC, 0x7C, - 0x3E, 0xFF, 0x1F, 0xCF, 0xCF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, - 0x7C, 0xF8, 0x3E, 0x7C, 0x1F, 0x3E, 0x0F, 0x9F, 0x07, 0xCF, 0x83, 0xE7, - 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, 0x7D, 0xFC, 0x7F, 0x07, 0xF0, 0x0F, 0xFE, - 0x0F, 0x8F, 0x8F, 0x87, 0xE7, 0xC1, 0xF7, 0xE0, 0xFF, 0xF0, 0x7F, 0xF8, - 0x3F, 0xFC, 0x1F, 0xFE, 0x0F, 0xFF, 0x07, 0xEF, 0x83, 0xE7, 0xC1, 0xF1, - 0xF1, 0xF0, 0x7F, 0xF0, 0x0F, 0xE0, 0xFE, 0x7C, 0x07, 0xDF, 0xE0, 0xFE, - 0x3E, 0x1F, 0x07, 0xE3, 0xE0, 0x7C, 0x7C, 0x0F, 0xCF, 0x81, 0xF9, 0xF0, - 0x3F, 0x3E, 0x07, 0xE7, 0xC0, 0xFC, 0xF8, 0x1F, 0x9F, 0x03, 0xE3, 0xE0, - 0xFC, 0x7E, 0x3F, 0x0F, 0xBF, 0xC1, 0xF3, 0xE0, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7E, 0x00, 0x1F, 0xE0, - 0x00, 0x07, 0xC1, 0x0F, 0xF9, 0x8F, 0xCD, 0xCF, 0xC3, 0xE7, 0xC1, 0xF7, - 0xE0, 0xFB, 0xF0, 0x7D, 0xF8, 0x3E, 0xFC, 0x1F, 0x7E, 0x0F, 0xBF, 0x07, - 0xDF, 0x83, 0xE7, 0xE1, 0xF1, 0xF1, 0xF8, 0x7F, 0x7C, 0x1F, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x01, 0xF8, - 0x01, 0xFE, 0xFC, 0x73, 0xEF, 0xDF, 0xFE, 0xFC, 0xF7, 0xC3, 0xBE, 0x01, - 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, - 0x01, 0xF0, 0x1F, 0xE0, 0x1E, 0x23, 0xFE, 0x70, 0xEE, 0x06, 0xE0, 0x2F, - 0x80, 0xFF, 0x07, 0xFC, 0x3F, 0xE0, 0xFF, 0x81, 0xF8, 0x07, 0xC0, 0x7E, - 0x0E, 0xBF, 0xC8, 0xF8, 0x04, 0x03, 0x01, 0xC0, 0xF0, 0x7C, 0x3F, 0xEF, - 0xF9, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, - 0x7C, 0x5F, 0x37, 0xF8, 0xFE, 0x1E, 0x00, 0xFC, 0x7F, 0x1F, 0x07, 0xC7, - 0xC1, 0xF1, 0xF0, 0x7C, 0x7C, 0x1F, 0x1F, 0x07, 0xC7, 0xC1, 0xF1, 0xF0, - 0x7C, 0x7C, 0x1F, 0x1F, 0x07, 0xC7, 0xC1, 0xF1, 0xF0, 0x7C, 0x7C, 0x1F, - 0x1F, 0x8F, 0xC3, 0xFD, 0xFC, 0x7C, 0x60, 0xFF, 0x9F, 0xBF, 0x83, 0x0F, - 0x81, 0x87, 0xE0, 0x81, 0xF0, 0x40, 0xF8, 0x40, 0x3E, 0x20, 0x1F, 0x30, - 0x07, 0xD0, 0x03, 0xF8, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3C, 0x00, 0x0E, - 0x00, 0x07, 0x00, 0x01, 0x00, 0xFF, 0x3F, 0xCF, 0x7E, 0x1F, 0x06, 0x3E, - 0x0F, 0x06, 0x3E, 0x0F, 0x84, 0x1F, 0x0F, 0x8C, 0x1F, 0x1F, 0x88, 0x0F, - 0x17, 0xC8, 0x0F, 0x97, 0xD8, 0x0F, 0xB3, 0xD0, 0x07, 0xE3, 0xF0, 0x07, - 0xE3, 0xE0, 0x03, 0xC1, 0xE0, 0x03, 0xC1, 0xE0, 0x03, 0x81, 0xC0, 0x01, - 0x80, 0xC0, 0x01, 0x80, 0x80, 0xFF, 0x3F, 0x7E, 0x0C, 0x3E, 0x08, 0x3F, - 0x18, 0x1F, 0x30, 0x0F, 0xE0, 0x0F, 0xC0, 0x07, 0xE0, 0x03, 0xE0, 0x03, - 0xF0, 0x05, 0xF8, 0x0C, 0xF8, 0x18, 0xFC, 0x30, 0x7E, 0x70, 0x7E, 0xFC, - 0xFF, 0xFF, 0x3F, 0x7E, 0x0C, 0x7C, 0x0C, 0x3E, 0x08, 0x3E, 0x08, 0x1E, - 0x18, 0x1F, 0x10, 0x0F, 0x30, 0x0F, 0xA0, 0x0F, 0xA0, 0x07, 0xE0, 0x07, - 0xC0, 0x03, 0xC0, 0x03, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x00, 0x01, - 0x00, 0x61, 0x00, 0xF2, 0x00, 0xF6, 0x00, 0xFC, 0x00, 0x78, 0x00, 0x7F, - 0xFD, 0xFF, 0xF7, 0x0F, 0xD0, 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x3E, 0x01, - 0xF0, 0x0F, 0xC0, 0x3E, 0x01, 0xF8, 0x0F, 0xC1, 0x3E, 0x05, 0xF8, 0x7F, - 0xFF, 0xFF, 0xFF, 0x01, 0xE0, 0xF8, 0x3E, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x07, 0x87, - 0x80, 0x1E, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, - 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF8, 0x0F, 0x80, 0x78, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xF0, 0x0F, 0x80, 0xF0, - 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, - 0x01, 0xE0, 0x3C, 0x03, 0xC0, 0x0F, 0x0F, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, 0xE0, - 0xF8, 0x3C, 0x00, 0x3E, 0x00, 0x7F, 0xC6, 0xFF, 0xFF, 0x61, 0xFE, 0x00, - 0x7C}; - -const GFXglyph FreeSerifBold18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 6, 24, 12, 3, -23}, // 0x21 '!' - {18, 13, 10, 19, 3, -23}, // 0x22 '"' - {35, 18, 24, 17, 0, -23}, // 0x23 '#' - {89, 15, 28, 17, 1, -25}, // 0x24 '$' - {142, 27, 24, 35, 4, -23}, // 0x25 '%' - {223, 26, 25, 29, 2, -23}, // 0x26 '&' - {305, 4, 10, 10, 3, -23}, // 0x27 ''' - {310, 9, 30, 12, 2, -23}, // 0x28 '(' - {344, 9, 30, 12, 1, -23}, // 0x29 ')' - {378, 14, 15, 18, 2, -23}, // 0x2A '*' - {405, 19, 19, 24, 2, -17}, // 0x2B '+' - {451, 6, 12, 9, 1, -5}, // 0x2C ',' - {460, 8, 4, 12, 2, -9}, // 0x2D '-' - {464, 6, 6, 9, 1, -5}, // 0x2E '.' - {469, 11, 25, 10, -1, -23}, // 0x2F '/' - {504, 16, 24, 18, 1, -23}, // 0x30 '0' - {552, 12, 24, 18, 3, -23}, // 0x31 '1' - {588, 16, 24, 17, 1, -23}, // 0x32 '2' - {636, 16, 24, 18, 0, -23}, // 0x33 '3' - {684, 15, 24, 18, 1, -23}, // 0x34 '4' - {729, 15, 24, 18, 1, -23}, // 0x35 '5' - {774, 16, 24, 18, 1, -23}, // 0x36 '6' - {822, 16, 24, 17, 1, -23}, // 0x37 '7' - {870, 16, 24, 17, 1, -23}, // 0x38 '8' - {918, 16, 24, 18, 1, -23}, // 0x39 '9' - {966, 6, 16, 12, 3, -15}, // 0x3A ':' - {978, 7, 22, 12, 2, -15}, // 0x3B ';' - {998, 19, 20, 24, 2, -18}, // 0x3C '<' - {1046, 19, 12, 24, 2, -14}, // 0x3D '=' - {1075, 19, 20, 24, 3, -18}, // 0x3E '>' - {1123, 14, 24, 18, 2, -23}, // 0x3F '?' - {1165, 24, 25, 33, 4, -23}, // 0x40 '@' - {1240, 24, 24, 25, 1, -23}, // 0x41 'A' - {1312, 21, 24, 23, 1, -23}, // 0x42 'B' - {1375, 23, 25, 25, 1, -23}, // 0x43 'C' - {1447, 23, 24, 26, 1, -23}, // 0x44 'D' - {1516, 21, 24, 23, 2, -23}, // 0x45 'E' - {1579, 19, 24, 22, 2, -23}, // 0x46 'F' - {1636, 25, 25, 27, 1, -23}, // 0x47 'G' - {1715, 24, 24, 27, 2, -23}, // 0x48 'H' - {1787, 11, 24, 14, 2, -23}, // 0x49 'I' - {1820, 16, 27, 18, 0, -23}, // 0x4A 'J' - {1874, 25, 24, 27, 2, -23}, // 0x4B 'K' - {1949, 21, 24, 23, 2, -23}, // 0x4C 'L' - {2012, 31, 24, 33, 1, -23}, // 0x4D 'M' - {2105, 23, 24, 25, 1, -23}, // 0x4E 'N' - {2174, 25, 25, 27, 1, -23}, // 0x4F 'O' - {2253, 19, 24, 22, 2, -23}, // 0x50 'P' - {2310, 25, 30, 27, 1, -23}, // 0x51 'Q' - {2404, 23, 24, 25, 2, -23}, // 0x52 'R' - {2473, 16, 25, 20, 2, -23}, // 0x53 'S' - {2523, 21, 24, 23, 1, -23}, // 0x54 'T' - {2586, 22, 25, 25, 2, -23}, // 0x55 'U' - {2655, 24, 24, 25, 0, -23}, // 0x56 'V' - {2727, 34, 25, 34, 0, -23}, // 0x57 'W' - {2834, 24, 24, 25, 1, -23}, // 0x58 'X' - {2906, 24, 24, 25, 1, -23}, // 0x59 'Y' - {2978, 21, 24, 23, 1, -23}, // 0x5A 'Z' - {3041, 8, 29, 12, 2, -23}, // 0x5B '[' - {3070, 11, 25, 10, -1, -23}, // 0x5C '\' - {3105, 8, 29, 12, 2, -23}, // 0x5D ']' - {3134, 15, 13, 20, 3, -23}, // 0x5E '^' - {3159, 18, 3, 17, 0, 3}, // 0x5F '_' - {3166, 8, 6, 12, 0, -23}, // 0x60 '`' - {3172, 16, 16, 18, 1, -15}, // 0x61 'a' - {3204, 18, 24, 19, 1, -23}, // 0x62 'b' - {3258, 14, 16, 15, 1, -15}, // 0x63 'c' - {3286, 18, 24, 19, 1, -23}, // 0x64 'd' - {3340, 14, 16, 16, 1, -15}, // 0x65 'e' - {3368, 11, 24, 14, 2, -23}, // 0x66 'f' - {3401, 17, 23, 17, 1, -15}, // 0x67 'g' - {3450, 17, 24, 19, 1, -23}, // 0x68 'h' - {3501, 7, 24, 10, 2, -23}, // 0x69 'i' - {3522, 11, 31, 14, 0, -23}, // 0x6A 'j' - {3565, 18, 24, 19, 1, -23}, // 0x6B 'k' - {3619, 7, 24, 10, 1, -23}, // 0x6C 'l' - {3640, 27, 16, 29, 1, -15}, // 0x6D 'm' - {3694, 17, 16, 19, 1, -15}, // 0x6E 'n' - {3728, 17, 16, 18, 1, -15}, // 0x6F 'o' - {3762, 19, 23, 19, 0, -15}, // 0x70 'p' - {3817, 17, 23, 19, 1, -15}, // 0x71 'q' - {3866, 13, 16, 15, 1, -15}, // 0x72 'r' - {3892, 12, 16, 14, 1, -15}, // 0x73 's' - {3916, 10, 21, 12, 1, -20}, // 0x74 't' - {3943, 18, 16, 20, 1, -15}, // 0x75 'u' - {3979, 17, 16, 17, 0, -15}, // 0x76 'v' - {4013, 24, 16, 25, 0, -15}, // 0x77 'w' - {4061, 16, 16, 18, 1, -15}, // 0x78 'x' - {4093, 16, 23, 17, 0, -15}, // 0x79 'y' - {4139, 14, 16, 16, 0, -15}, // 0x7A 'z' - {4167, 11, 31, 14, 1, -24}, // 0x7B '{' - {4210, 3, 25, 8, 2, -23}, // 0x7C '|' - {4220, 11, 31, 14, 3, -24}, // 0x7D '}' - {4263, 16, 5, 18, 1, -11}}; // 0x7E '~' - -const GFXfont FreeSerifBold18pt7b PROGMEM = { - (uint8_t *)FreeSerifBold18pt7bBitmaps, - (GFXglyph *)FreeSerifBold18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 4945 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h deleted file mode 100644 index e6681f5..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h +++ /dev/null @@ -1,761 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold24pt7bBitmaps[] PROGMEM = { - 0x3C, 0x7E, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x7E, 0x7C, 0x7C, - 0x3C, 0x3C, 0x38, 0x38, 0x38, 0x38, 0x18, 0x10, 0x10, 0x10, 0x00, 0x00, - 0x00, 0x00, 0x3C, 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x3C, 0x70, 0x07, - 0x7C, 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xC0, - 0x3E, 0xE0, 0x0E, 0x70, 0x07, 0x38, 0x03, 0x9C, 0x01, 0xC4, 0x00, 0xE2, - 0x00, 0x20, 0x00, 0xF0, 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x0F, - 0x07, 0x80, 0x1E, 0x0F, 0x00, 0x3C, 0x1E, 0x00, 0x78, 0x3C, 0x00, 0xF0, - 0x78, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, - 0xF3, 0xFF, 0xFF, 0xE0, 0x78, 0x3C, 0x00, 0xF0, 0x78, 0x01, 0xC0, 0xE0, - 0x03, 0x81, 0xC0, 0x0F, 0x07, 0x80, 0x1E, 0x0F, 0x00, 0x3C, 0x1E, 0x0F, - 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0x03, 0x81, 0xC0, 0x0F, - 0x07, 0x80, 0x1E, 0x0F, 0x00, 0x3C, 0x1E, 0x00, 0x78, 0x3C, 0x00, 0xF0, - 0x78, 0x01, 0xE0, 0xE0, 0x03, 0x81, 0xC0, 0x07, 0x07, 0x80, 0x1E, 0x0F, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, - 0x7F, 0xF0, 0x0F, 0x37, 0xE0, 0xE1, 0x8F, 0x8E, 0x0C, 0x3C, 0x70, 0x60, - 0xE7, 0x83, 0x03, 0x3C, 0x18, 0x19, 0xF0, 0xC0, 0x4F, 0xC6, 0x02, 0x7F, - 0xF0, 0x03, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x3F, 0xFC, 0x00, 0xFF, 0xF0, - 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x1F, 0xFE, 0x00, 0x3F, 0xF8, 0x01, - 0xFF, 0xC0, 0x0C, 0xFF, 0x00, 0x63, 0xFA, 0x03, 0x0F, 0xD0, 0x18, 0x3E, - 0x80, 0xC1, 0xF6, 0x06, 0x0F, 0xB8, 0x30, 0x79, 0xC1, 0x87, 0xCF, 0x0C, - 0x3C, 0x7E, 0x67, 0xC0, 0xFF, 0xF8, 0x00, 0xFE, 0x00, 0x00, 0xC0, 0x00, - 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x30, - 0x00, 0x3E, 0x00, 0x0C, 0x00, 0x0F, 0xF0, 0x03, 0x80, 0x07, 0xE7, 0x03, - 0xE0, 0x01, 0xF8, 0x7F, 0xFC, 0x00, 0x3E, 0x07, 0xF7, 0x00, 0x0F, 0xC0, - 0x80, 0xE0, 0x03, 0xF0, 0x10, 0x38, 0x00, 0x7E, 0x02, 0x07, 0x00, 0x0F, - 0x80, 0x41, 0xC0, 0x03, 0xF0, 0x10, 0x30, 0x00, 0x7E, 0x02, 0x0E, 0x00, - 0x0F, 0x80, 0xC1, 0x80, 0x01, 0xF0, 0x10, 0x70, 0x00, 0x3E, 0x06, 0x1C, - 0x00, 0x07, 0xC1, 0x83, 0x80, 0x00, 0x7C, 0x60, 0xE0, 0x1F, 0x07, 0xF8, - 0x18, 0x0F, 0xF8, 0x7C, 0x07, 0x07, 0xF1, 0x00, 0x00, 0xC1, 0xF8, 0x10, - 0x00, 0x38, 0x3F, 0x02, 0x00, 0x06, 0x0F, 0xC0, 0x40, 0x01, 0xC3, 0xF0, - 0x08, 0x00, 0x30, 0x7E, 0x01, 0x00, 0x0E, 0x1F, 0x80, 0x40, 0x03, 0x83, - 0xF0, 0x08, 0x00, 0x60, 0x7E, 0x01, 0x00, 0x1C, 0x0F, 0x80, 0x40, 0x03, - 0x01, 0xF0, 0x18, 0x00, 0xE0, 0x3E, 0x02, 0x00, 0x18, 0x03, 0xC0, 0xC0, - 0x07, 0x00, 0x7C, 0x70, 0x00, 0xC0, 0x07, 0xFC, 0x00, 0x38, 0x00, 0x7E, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x07, 0x8F, - 0xE0, 0x00, 0x03, 0xC1, 0xF8, 0x00, 0x00, 0xF0, 0x3F, 0x00, 0x00, 0x7C, - 0x07, 0xC0, 0x00, 0x1F, 0x01, 0xF0, 0x00, 0x07, 0xE0, 0x7C, 0x00, 0x01, - 0xF8, 0x1E, 0x00, 0x00, 0x7F, 0x07, 0x80, 0x00, 0x1F, 0xE3, 0x80, 0x00, - 0x03, 0xFF, 0xC0, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x00, 0x1F, 0xE0, 0x3F, - 0xF0, 0x07, 0xFC, 0x01, 0xF0, 0x07, 0xFF, 0x00, 0x78, 0x07, 0xBF, 0xE0, - 0x1C, 0x03, 0x87, 0xFC, 0x07, 0x01, 0xE0, 0xFF, 0x81, 0x80, 0xF0, 0x3F, - 0xE0, 0xC0, 0x7C, 0x07, 0xFC, 0x30, 0x1F, 0x00, 0xFF, 0x98, 0x0F, 0xC0, - 0x3F, 0xFC, 0x03, 0xF0, 0x07, 0xFF, 0x00, 0xFE, 0x00, 0xFF, 0x80, 0x3F, - 0x80, 0x3F, 0xF0, 0x0F, 0xF0, 0x07, 0xFE, 0x03, 0xFC, 0x00, 0xFF, 0x81, - 0x7F, 0x80, 0x3F, 0xF8, 0xDF, 0xF0, 0x1F, 0xFF, 0xE3, 0xFF, 0x0E, 0xFF, - 0xF8, 0xFF, 0xFE, 0x1F, 0xFC, 0x0F, 0xFE, 0x03, 0xFE, 0x00, 0xFE, 0x00, - 0x3E, 0x00, 0x77, 0xFF, 0xFF, 0xFF, 0xEE, 0x73, 0x9C, 0xE2, 0x00, 0x00, - 0x00, 0x03, 0x00, 0x60, 0x1C, 0x03, 0x80, 0x70, 0x06, 0x00, 0xE0, 0x1C, - 0x01, 0xC0, 0x3C, 0x03, 0xC0, 0x78, 0x07, 0x80, 0x78, 0x07, 0x80, 0xF8, - 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0xF8, - 0x0F, 0x80, 0x78, 0x07, 0x80, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xC0, 0x1C, - 0x00, 0xE0, 0x0E, 0x00, 0x70, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x03, 0x00, - 0x10, 0x00, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x06, 0x00, - 0x70, 0x03, 0x80, 0x38, 0x03, 0xC0, 0x3C, 0x03, 0xE0, 0x1E, 0x01, 0xE0, - 0x1E, 0x01, 0xF0, 0x1F, 0x01, 0xF0, 0x1F, 0x01, 0xF0, 0x1F, 0x01, 0xF0, - 0x1F, 0x01, 0xF0, 0x1F, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x3C, 0x03, 0xC0, - 0x38, 0x03, 0x80, 0x70, 0x07, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x0C, - 0x00, 0x80, 0x00, 0x01, 0xC0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x03, 0xE0, 0x3C, 0x78, 0xEF, 0x9C, 0x7B, 0xF7, 0x3F, 0xFE, 0xDF, 0x8F, - 0xFF, 0xC0, 0x7F, 0x00, 0x3F, 0xC0, 0x7E, 0xBF, 0x3F, 0x77, 0xEF, 0x9C, - 0xFF, 0xC7, 0x1E, 0x63, 0xE3, 0x80, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x01, 0xC0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, - 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x3C, 0x7E, 0xFE, 0xFF, 0xFF, 0xFF, 0x7F, 0x07, 0x06, 0x06, 0x0C, - 0x18, 0x30, 0x60, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x3C, - 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x3C, 0x00, 0x1E, 0x00, 0x7C, 0x00, - 0xF0, 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0xF0, - 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0xF0, 0x01, - 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0xF0, 0x01, 0xE0, - 0x03, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xE0, 0x03, - 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF0, 0x00, 0x00, 0xFC, 0x00, - 0x0F, 0x3C, 0x00, 0x78, 0x78, 0x03, 0xE1, 0xF0, 0x1F, 0x03, 0xE0, 0x7C, - 0x0F, 0x83, 0xF0, 0x3F, 0x0F, 0xC0, 0xFC, 0x7F, 0x03, 0xF9, 0xFC, 0x0F, - 0xE7, 0xF0, 0x3F, 0xBF, 0xC0, 0xFE, 0xFF, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, - 0xF0, 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, - 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0x3F, - 0x9F, 0xC0, 0xFE, 0x7F, 0x03, 0xF9, 0xFC, 0x0F, 0xE3, 0xF0, 0x3F, 0x0F, - 0xC0, 0xFC, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x80, 0xF8, 0x7C, 0x01, 0xE1, - 0xE0, 0x03, 0xCF, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x18, 0x00, 0x1E, 0x00, - 0x1F, 0x80, 0x1F, 0xE0, 0x1F, 0xF8, 0x1D, 0xFE, 0x00, 0x3F, 0x80, 0x0F, - 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, - 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, - 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, - 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, - 0x00, 0xFE, 0x00, 0x7F, 0x80, 0x3F, 0xF8, 0xFF, 0xFF, 0xC0, 0x00, 0xFC, - 0x00, 0x1F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x1C, - 0x1F, 0xF1, 0xC0, 0x7F, 0x8C, 0x01, 0xFC, 0x40, 0x0F, 0xE0, 0x00, 0x3F, - 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x00, - 0x00, 0x70, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x38, - 0x01, 0x03, 0x80, 0x18, 0x38, 0x00, 0x81, 0x80, 0x1C, 0x1F, 0xFF, 0xE1, - 0xFF, 0xFF, 0x1F, 0xFF, 0xF9, 0xFF, 0xFF, 0x9F, 0xFF, 0xFC, 0xFF, 0xFF, - 0xE0, 0x00, 0xFE, 0x00, 0x3F, 0xFC, 0x03, 0xFF, 0xF0, 0x30, 0xFF, 0xC2, - 0x01, 0xFE, 0x30, 0x0F, 0xF1, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x0F, - 0xE0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, - 0x1F, 0xC0, 0x03, 0xFF, 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xF0, 0x00, 0xFF, - 0x80, 0x03, 0xFE, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0x80, 0x00, 0xFC, 0x00, - 0x07, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0x80, 0x00, 0x3C, - 0x00, 0x01, 0xC7, 0x80, 0x0E, 0x7F, 0x00, 0xE3, 0xFC, 0x06, 0x1F, 0xF8, - 0xE0, 0x7F, 0xFC, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x1E, - 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, - 0xFF, 0x00, 0x0D, 0xF8, 0x00, 0xEF, 0xC0, 0x06, 0x7E, 0x00, 0x63, 0xF0, - 0x07, 0x1F, 0x80, 0x30, 0xFC, 0x03, 0x07, 0xE0, 0x38, 0x3F, 0x03, 0x81, - 0xF8, 0x18, 0x0F, 0xC1, 0xC0, 0x7E, 0x1C, 0x03, 0xF0, 0xC0, 0x1F, 0x8E, - 0x00, 0xFC, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, - 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x07, 0xFF, - 0xF0, 0x7F, 0xFF, 0x0F, 0xFF, 0xE0, 0xFF, 0xFE, 0x0F, 0xFF, 0xE1, 0xFF, - 0xFC, 0x18, 0x00, 0x01, 0x80, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0x3F, - 0x80, 0x03, 0xFF, 0x80, 0x7F, 0xFE, 0x07, 0xFF, 0xF0, 0x7F, 0xFF, 0x87, - 0xFF, 0xFC, 0x7F, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x1F, 0xE0, 0x00, 0x7E, - 0x00, 0x03, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, - 0xC0, 0x00, 0x0C, 0x78, 0x00, 0x8F, 0xE0, 0x18, 0xFF, 0x87, 0x0F, 0xFF, - 0xE0, 0x7F, 0xF8, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x38, 0x00, 0x1F, 0x00, - 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, - 0x00, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xF0, 0x00, 0x7F, - 0x00, 0x07, 0xF8, 0x00, 0x3F, 0xFF, 0x01, 0xFF, 0xFE, 0x1F, 0xF1, 0xFC, - 0xFF, 0x07, 0xE7, 0xF8, 0x3F, 0xBF, 0xC1, 0xFD, 0xFE, 0x07, 0xFF, 0xF0, - 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x0F, 0xFF, 0xE0, 0x7F, 0xFF, 0x03, 0xFB, - 0xF8, 0x1F, 0xDF, 0xC0, 0xFE, 0xFE, 0x07, 0xE3, 0xF0, 0x3F, 0x1F, 0xC1, - 0xF0, 0x7E, 0x0F, 0x01, 0xF0, 0xF8, 0x03, 0xC7, 0x00, 0x07, 0xE0, 0x00, - 0x3F, 0xFF, 0xF9, 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0xFF, 0xE7, 0xFF, - 0xFF, 0x3F, 0xFF, 0xF9, 0x80, 0x07, 0x98, 0x00, 0x3C, 0xC0, 0x03, 0xE4, - 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x01, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, - 0x01, 0xFE, 0x00, 0x38, 0x7C, 0x07, 0x80, 0xF0, 0x78, 0x07, 0xC3, 0xC0, - 0x1F, 0x3E, 0x00, 0xF9, 0xF0, 0x07, 0xCF, 0xC0, 0x3E, 0x7E, 0x01, 0xF3, - 0xF8, 0x0F, 0x1F, 0xE0, 0xF8, 0x7F, 0xC7, 0x83, 0xFF, 0xF0, 0x0F, 0xFE, - 0x00, 0x7F, 0xFC, 0x01, 0xFF, 0xF0, 0x03, 0xFF, 0xC0, 0x1F, 0xFF, 0x03, - 0xBF, 0xFC, 0x7C, 0x7F, 0xE7, 0xC1, 0xFF, 0x3E, 0x07, 0xFF, 0xE0, 0x1F, - 0xFF, 0x00, 0x7F, 0xF8, 0x03, 0xFF, 0xC0, 0x0F, 0xFE, 0x00, 0x7F, 0xF0, - 0x03, 0xE7, 0x80, 0x1F, 0x3E, 0x01, 0xF0, 0xF8, 0x0F, 0x83, 0xE1, 0xF8, - 0x0F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x1C, 0x3C, 0x00, - 0xF0, 0x78, 0x07, 0x81, 0xF8, 0x3E, 0x07, 0xE1, 0xF8, 0x0F, 0xC7, 0xE0, - 0x3F, 0x3F, 0x80, 0xFE, 0xFE, 0x03, 0xFB, 0xF8, 0x0F, 0xFF, 0xE0, 0x3F, - 0xFF, 0x80, 0xFF, 0xFE, 0x03, 0xFF, 0xF8, 0x0F, 0xFF, 0xE0, 0x3F, 0xDF, - 0xC0, 0xFF, 0x7F, 0x03, 0xFC, 0xFC, 0x0F, 0xF3, 0xFC, 0x7F, 0x83, 0xFF, - 0xFE, 0x07, 0xF7, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xF8, - 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xC0, 0x00, - 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, 0x3F, 0x00, - 0x03, 0x80, 0x00, 0x00, 0x3C, 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x3C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x7E, 0xFF, 0xFF, - 0xFF, 0xFF, 0x7E, 0x3C, 0x3C, 0x3F, 0x3F, 0xDF, 0xEF, 0xF7, 0xF9, 0xF8, - 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x7F, 0x7F, - 0xBF, 0xFF, 0xFF, 0xFB, 0xFC, 0xFE, 0x07, 0x03, 0x01, 0x81, 0x81, 0x81, - 0x83, 0x81, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x01, - 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x01, - 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xE0, 0x00, - 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, - 0xE0, 0x00, 0x07, 0xFF, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x03, 0xFF, 0x00, - 0x00, 0x3F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0xC0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFF, 0xC0, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x0F, - 0xFE, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xE0, - 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x1F, 0xF0, 0x00, 0x1F, - 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, - 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x0F, - 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x00, 0x07, 0xF0, 0x07, 0xFF, 0x03, 0x87, 0xE1, 0xC0, 0xFC, 0xF0, 0x3F, - 0xBE, 0x07, 0xEF, 0xC1, 0xFF, 0xF0, 0x7F, 0xFC, 0x1F, 0xDF, 0x07, 0xF7, - 0x81, 0xFC, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x07, 0xE0, 0x03, - 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, 0x18, 0x00, 0x04, 0x00, 0x01, 0x00, - 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x3C, 0x00, 0x1F, 0x80, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0xFF, 0x00, 0x3F, - 0xC0, 0x07, 0xE0, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x1F, - 0xFF, 0xC0, 0x00, 0x1F, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x03, 0x80, 0x3C, 0x00, 0x00, 0xE0, 0x3C, 0x00, 0x00, 0x30, 0x3E, - 0x00, 0x00, 0x0C, 0x3E, 0x00, 0x3C, 0x37, 0x1F, 0x00, 0x7E, 0xF1, 0x9F, - 0x00, 0x7C, 0xF8, 0xCF, 0x80, 0x78, 0x7C, 0x37, 0xC0, 0x7C, 0x3C, 0x1F, - 0xC0, 0x3C, 0x1E, 0x0F, 0xE0, 0x3C, 0x0F, 0x07, 0xF0, 0x3E, 0x0F, 0x03, - 0xF8, 0x1E, 0x07, 0x81, 0xFC, 0x0F, 0x03, 0xC0, 0xFE, 0x0F, 0x03, 0xE0, - 0x7F, 0x07, 0x81, 0xE0, 0x6F, 0x83, 0xC1, 0xF0, 0x37, 0xC1, 0xE1, 0x78, - 0x31, 0xF0, 0xF9, 0xBC, 0x18, 0xF8, 0x3F, 0x9E, 0x38, 0x3C, 0x0F, 0x0F, - 0xF8, 0x1F, 0x00, 0x01, 0xF0, 0x07, 0x80, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0xC0, 0x01, 0xF8, 0x03, 0xE0, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x03, - 0xFF, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, - 0x03, 0x80, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x07, 0xE0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, - 0x0F, 0xF0, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, - 0x37, 0xF8, 0x00, 0x00, 0x33, 0xF8, 0x00, 0x00, 0x33, 0xFC, 0x00, 0x00, - 0x61, 0xFC, 0x00, 0x00, 0x61, 0xFE, 0x00, 0x00, 0xC1, 0xFE, 0x00, 0x00, - 0xC0, 0xFF, 0x00, 0x00, 0xC0, 0xFF, 0x00, 0x01, 0x80, 0x7F, 0x00, 0x01, - 0x80, 0x7F, 0x80, 0x03, 0x80, 0x7F, 0x80, 0x03, 0xFF, 0xFF, 0xC0, 0x03, - 0xFF, 0xFF, 0xC0, 0x07, 0x00, 0x3F, 0xC0, 0x06, 0x00, 0x1F, 0xE0, 0x0E, - 0x00, 0x1F, 0xE0, 0x0C, 0x00, 0x0F, 0xF0, 0x0C, 0x00, 0x0F, 0xF0, 0x1C, - 0x00, 0x0F, 0xF8, 0x1C, 0x00, 0x0F, 0xF8, 0x7E, 0x00, 0x0F, 0xFC, 0xFF, - 0x80, 0x7F, 0xFF, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x1F, 0xF8, - 0x7F, 0x00, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xFF, 0x01, 0xFE, - 0x0F, 0xF0, 0x1F, 0xE0, 0xFF, 0x01, 0xFE, 0x0F, 0xF0, 0x1F, 0xE0, 0xFF, - 0x01, 0xFE, 0x0F, 0xF0, 0x1F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, - 0x00, 0xFF, 0x0F, 0xC0, 0x0F, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, 0xC0, 0x0F, - 0xF0, 0xFF, 0x00, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x1F, 0xE0, 0xFF, 0x01, - 0xFE, 0x0F, 0xF0, 0x0F, 0xF0, 0xFF, 0x00, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, - 0xFF, 0x00, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, 0xFF, 0x00, 0xFF, 0x0F, 0xF0, - 0x0F, 0xE0, 0xFF, 0x01, 0xFE, 0x0F, 0xF0, 0x1F, 0xC0, 0xFF, 0x87, 0xF0, - 0x3F, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x08, 0x01, - 0xFF, 0xF0, 0x60, 0x0F, 0xC1, 0xF9, 0x80, 0xFC, 0x01, 0xFE, 0x07, 0xE0, - 0x01, 0xF8, 0x3F, 0x00, 0x03, 0xE1, 0xFC, 0x00, 0x07, 0x87, 0xE0, 0x00, - 0x1E, 0x3F, 0x80, 0x00, 0x38, 0xFE, 0x00, 0x00, 0x67, 0xF8, 0x00, 0x01, - 0x9F, 0xC0, 0x00, 0x02, 0x7F, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x0F, - 0xF0, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0xFC, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x87, 0xF0, 0x00, 0x07, 0x0F, 0xE0, 0x00, 0x38, 0x1F, 0x80, 0x01, 0xC0, - 0x3F, 0x00, 0x1E, 0x00, 0x7F, 0x01, 0xE0, 0x00, 0x7F, 0xFF, 0x00, 0x00, - 0x3F, 0xE0, 0x00, 0xFF, 0xFF, 0xE0, 0x00, 0x3F, 0xFF, 0xFE, 0x00, 0x0F, - 0xF8, 0x7F, 0x80, 0x0F, 0xF0, 0x1F, 0xC0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, - 0xF0, 0x07, 0xF0, 0x0F, 0xF0, 0x03, 0xF8, 0x0F, 0xF0, 0x03, 0xFC, 0x0F, - 0xF0, 0x01, 0xFC, 0x0F, 0xF0, 0x01, 0xFE, 0x0F, 0xF0, 0x01, 0xFE, 0x0F, - 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, - 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, - 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, - 0xF0, 0x00, 0xFE, 0x0F, 0xF0, 0x00, 0xFE, 0x0F, 0xF0, 0x01, 0xFE, 0x0F, - 0xF0, 0x01, 0xFC, 0x0F, 0xF0, 0x01, 0xFC, 0x0F, 0xF0, 0x03, 0xF8, 0x0F, - 0xF0, 0x03, 0xF0, 0x0F, 0xF0, 0x07, 0xE0, 0x0F, 0xF0, 0x0F, 0xC0, 0x0F, - 0xF8, 0x3F, 0x80, 0x1F, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xF0, 0x00, 0xFF, - 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xFC, 0x1F, 0xE0, 0x1F, 0xC1, 0xFE, 0x00, - 0x3C, 0x1F, 0xE0, 0x01, 0xC1, 0xFE, 0x00, 0x0C, 0x1F, 0xE0, 0x00, 0xC1, - 0xFE, 0x00, 0x04, 0x1F, 0xE0, 0x20, 0x41, 0xFE, 0x02, 0x00, 0x1F, 0xE0, - 0x60, 0x01, 0xFE, 0x06, 0x00, 0x1F, 0xE0, 0xE0, 0x01, 0xFE, 0x1E, 0x00, - 0x1F, 0xFF, 0xE0, 0x01, 0xFF, 0xFE, 0x00, 0x1F, 0xE3, 0xE0, 0x01, 0xFE, - 0x0E, 0x00, 0x1F, 0xE0, 0x60, 0x01, 0xFE, 0x06, 0x00, 0x1F, 0xE0, 0x20, - 0x01, 0xFE, 0x02, 0x00, 0x1F, 0xE0, 0x00, 0x11, 0xFE, 0x00, 0x03, 0x1F, - 0xE0, 0x00, 0x71, 0xFE, 0x00, 0x07, 0x1F, 0xE0, 0x00, 0xE1, 0xFE, 0x00, - 0x1E, 0x1F, 0xE0, 0x03, 0xE3, 0xFF, 0x01, 0xFE, 0xFF, 0xFF, 0xFF, 0xEF, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xC7, 0xFC, 0x07, - 0xE3, 0xFC, 0x00, 0xF1, 0xFE, 0x00, 0x38, 0xFF, 0x00, 0x0C, 0x7F, 0x80, - 0x06, 0x3F, 0xC0, 0x01, 0x1F, 0xE0, 0x20, 0x8F, 0xF0, 0x10, 0x07, 0xF8, - 0x18, 0x03, 0xFC, 0x0C, 0x01, 0xFE, 0x0E, 0x00, 0xFF, 0x1F, 0x00, 0x7F, - 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x1F, 0xE3, 0xE0, 0x0F, 0xF0, 0x70, 0x07, - 0xF8, 0x18, 0x03, 0xFC, 0x0C, 0x01, 0xFE, 0x02, 0x00, 0xFF, 0x01, 0x00, - 0x7F, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, - 0x07, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0xFF, 0xC0, 0x01, 0xFF, 0xFC, 0x00, 0x00, 0x0F, 0xF0, 0x08, 0x00, - 0x3F, 0xFE, 0x0C, 0x00, 0x3F, 0x07, 0xC6, 0x00, 0x7E, 0x00, 0xFF, 0x00, - 0x7E, 0x00, 0x1F, 0x80, 0x7E, 0x00, 0x07, 0xC0, 0x7F, 0x00, 0x01, 0xE0, - 0x3F, 0x00, 0x00, 0x70, 0x3F, 0x80, 0x00, 0x38, 0x1F, 0xC0, 0x00, 0x0C, - 0x1F, 0xE0, 0x00, 0x06, 0x0F, 0xE0, 0x00, 0x01, 0x07, 0xF0, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x0F, 0xF0, 0x03, 0xFF, 0xFF, 0xF8, 0x00, - 0x3F, 0xF1, 0xFC, 0x00, 0x0F, 0xF0, 0xFF, 0x00, 0x07, 0xF8, 0x7F, 0x80, - 0x03, 0xFC, 0x1F, 0xC0, 0x01, 0xFE, 0x0F, 0xE0, 0x00, 0xFF, 0x03, 0xF8, - 0x00, 0x7F, 0x80, 0xFC, 0x00, 0x3F, 0xC0, 0x3F, 0x00, 0x1F, 0xE0, 0x0F, - 0xC0, 0x0F, 0xF0, 0x03, 0xF8, 0x1F, 0xF0, 0x00, 0x7F, 0xFF, 0xC0, 0x00, - 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xFC, 0x1F, 0xFF, 0x9F, 0xF8, 0x03, 0xFF, - 0x07, 0xF8, 0x00, 0xFF, 0x03, 0xFC, 0x00, 0x7F, 0x81, 0xFE, 0x00, 0x3F, - 0xC0, 0xFF, 0x00, 0x1F, 0xE0, 0x7F, 0x80, 0x0F, 0xF0, 0x3F, 0xC0, 0x07, - 0xF8, 0x1F, 0xE0, 0x03, 0xFC, 0x0F, 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, - 0xFF, 0x03, 0xFC, 0x00, 0x7F, 0x81, 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0x00, - 0x1F, 0xE0, 0x7F, 0x80, 0x0F, 0xF0, 0x3F, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, - 0xFF, 0xFC, 0x0F, 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, 0xFF, 0x03, 0xFC, - 0x00, 0x7F, 0x81, 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0x00, 0x1F, 0xE0, 0x7F, - 0x80, 0x0F, 0xF0, 0x3F, 0xC0, 0x07, 0xF8, 0x1F, 0xE0, 0x03, 0xFC, 0x0F, - 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, 0xFF, 0x03, 0xFC, 0x00, 0x7F, 0x81, - 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0x00, 0x1F, 0xE0, 0xFF, 0xC0, 0x1F, 0xF9, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0xFE, 0x7F, 0xE0, 0x7F, 0x80, 0xFF, 0x01, - 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, - 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, 0xF0, 0x1F, 0xE0, - 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, - 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, - 0x0F, 0xFC, 0x7F, 0xFF, 0x01, 0xFF, 0xFC, 0x00, 0xFF, 0xC0, 0x01, 0xFE, - 0x00, 0x07, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, - 0x07, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, - 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, - 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x00, - 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x1F, - 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x78, 0x1F, 0xE3, - 0xF0, 0x7F, 0x8F, 0xC1, 0xFC, 0x3F, 0x07, 0xF0, 0xFC, 0x1F, 0xC1, 0xE0, - 0xFE, 0x07, 0xC3, 0xF0, 0x0F, 0xFF, 0x80, 0x07, 0xF0, 0x00, 0xFF, 0xFC, - 0x1F, 0xFF, 0x0F, 0xFC, 0x00, 0xFF, 0x01, 0xFE, 0x00, 0x1E, 0x00, 0x7F, - 0x80, 0x07, 0x00, 0x1F, 0xE0, 0x03, 0x80, 0x07, 0xF8, 0x01, 0xC0, 0x01, - 0xFE, 0x00, 0xE0, 0x00, 0x7F, 0x80, 0x70, 0x00, 0x1F, 0xE0, 0x38, 0x00, - 0x07, 0xF8, 0x1C, 0x00, 0x01, 0xFE, 0x0E, 0x00, 0x00, 0x7F, 0x87, 0x00, - 0x00, 0x1F, 0xE3, 0xC0, 0x00, 0x07, 0xF9, 0xF8, 0x00, 0x01, 0xFE, 0xFE, - 0x00, 0x00, 0x7F, 0xFF, 0xC0, 0x00, 0x1F, 0xFF, 0xF8, 0x00, 0x07, 0xFD, - 0xFF, 0x00, 0x01, 0xFE, 0x7F, 0xE0, 0x00, 0x7F, 0x8F, 0xF8, 0x00, 0x1F, - 0xE1, 0xFF, 0x00, 0x07, 0xF8, 0x3F, 0xE0, 0x01, 0xFE, 0x07, 0xFC, 0x00, - 0x7F, 0x81, 0xFF, 0x80, 0x1F, 0xE0, 0x3F, 0xE0, 0x07, 0xF8, 0x07, 0xFC, - 0x01, 0xFE, 0x00, 0xFF, 0x80, 0x7F, 0x80, 0x1F, 0xF0, 0x1F, 0xE0, 0x07, - 0xFE, 0x07, 0xF8, 0x00, 0xFF, 0x83, 0xFF, 0x00, 0x3F, 0xF3, 0xFF, 0xF0, - 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, - 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, - 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x01, 0x1F, 0xE0, 0x00, 0x31, 0xFE, - 0x00, 0x03, 0x1F, 0xE0, 0x00, 0x71, 0xFE, 0x00, 0x07, 0x1F, 0xE0, 0x00, - 0xE1, 0xFE, 0x00, 0x1E, 0x1F, 0xE0, 0x07, 0xE3, 0xFF, 0x01, 0xFE, 0xFF, - 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xFE, 0x7F, 0xF0, 0x00, 0x01, 0xFF, 0xE1, - 0xFF, 0x00, 0x00, 0x3F, 0xF0, 0x1F, 0xE0, 0x00, 0x0F, 0xFC, 0x03, 0xFC, - 0x00, 0x01, 0xFF, 0x80, 0x7F, 0xC0, 0x00, 0x2F, 0xF0, 0x0B, 0xF8, 0x00, - 0x0D, 0xFE, 0x01, 0x7F, 0x80, 0x01, 0xBF, 0xC0, 0x27, 0xF0, 0x00, 0x67, - 0xF8, 0x04, 0xFF, 0x00, 0x0C, 0xFF, 0x00, 0x8F, 0xE0, 0x03, 0x1F, 0xE0, - 0x11, 0xFE, 0x00, 0x63, 0xFC, 0x02, 0x3F, 0xC0, 0x08, 0x7F, 0x80, 0x43, - 0xF8, 0x03, 0x0F, 0xF0, 0x08, 0x7F, 0x80, 0x61, 0xFE, 0x01, 0x07, 0xF0, - 0x18, 0x3F, 0xC0, 0x20, 0xFF, 0x03, 0x07, 0xF8, 0x04, 0x0F, 0xE0, 0xC0, - 0xFF, 0x00, 0x81, 0xFE, 0x18, 0x1F, 0xE0, 0x10, 0x3F, 0xC6, 0x03, 0xFC, - 0x02, 0x03, 0xF8, 0xC0, 0x7F, 0x80, 0x40, 0x7F, 0x98, 0x0F, 0xF0, 0x08, - 0x07, 0xF6, 0x01, 0xFE, 0x01, 0x00, 0xFF, 0xC0, 0x3F, 0xC0, 0x20, 0x0F, - 0xF0, 0x07, 0xF8, 0x04, 0x01, 0xFE, 0x00, 0xFF, 0x00, 0x80, 0x1F, 0x80, - 0x1F, 0xE0, 0x10, 0x03, 0xF0, 0x03, 0xFC, 0x02, 0x00, 0x7E, 0x00, 0x7F, - 0x80, 0x40, 0x07, 0x80, 0x0F, 0xF0, 0x0C, 0x00, 0xF0, 0x01, 0xFE, 0x07, - 0xC0, 0x0C, 0x00, 0x7F, 0xE7, 0xFF, 0x01, 0x80, 0x3F, 0xFF, 0xFF, 0xC0, - 0x03, 0xFE, 0xFF, 0xC0, 0x01, 0xF0, 0xFF, 0xC0, 0x01, 0xC0, 0xFF, 0xC0, - 0x01, 0x80, 0xFF, 0x80, 0x03, 0x01, 0xFF, 0x80, 0x06, 0x03, 0xFF, 0x80, - 0x0C, 0x07, 0xFF, 0x80, 0x18, 0x0D, 0xFF, 0x80, 0x30, 0x19, 0xFF, 0x00, - 0x60, 0x31, 0xFF, 0x00, 0xC0, 0x61, 0xFF, 0x01, 0x80, 0xC1, 0xFF, 0x03, - 0x01, 0x83, 0xFF, 0x06, 0x03, 0x03, 0xFE, 0x0C, 0x06, 0x03, 0xFE, 0x18, - 0x0C, 0x03, 0xFE, 0x30, 0x18, 0x03, 0xFE, 0x60, 0x30, 0x03, 0xFE, 0xC0, - 0x60, 0x07, 0xFD, 0x80, 0xC0, 0x07, 0xFF, 0x01, 0x80, 0x07, 0xFE, 0x03, - 0x00, 0x07, 0xFC, 0x06, 0x00, 0x07, 0xF8, 0x0C, 0x00, 0x07, 0xF0, 0x18, - 0x00, 0x0F, 0xE0, 0x30, 0x00, 0x0F, 0xC0, 0x60, 0x00, 0x0F, 0x80, 0xC0, - 0x00, 0x0F, 0x01, 0xC0, 0x00, 0x0E, 0x0F, 0xC0, 0x00, 0x1C, 0x7F, 0xE0, - 0x00, 0x18, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x80, 0x00, 0x3F, - 0x07, 0xF0, 0x00, 0x7E, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x7E, - 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x07, 0xF0, 0x3F, 0x00, 0x03, 0xF8, 0x3F, - 0x80, 0x00, 0xFE, 0x3F, 0xC0, 0x00, 0x7F, 0x1F, 0xE0, 0x00, 0x3F, 0xCF, - 0xE0, 0x00, 0x0F, 0xEF, 0xF0, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x03, 0xFF, - 0xFC, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x7F, - 0xFF, 0x80, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x1F, 0xFF, 0xE0, 0x00, 0x0F, - 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xF8, 0x00, 0x03, 0xFD, 0xFC, 0x00, 0x01, - 0xFC, 0xFE, 0x00, 0x01, 0xFE, 0x7F, 0x80, 0x00, 0xFF, 0x1F, 0xC0, 0x00, - 0x7F, 0x0F, 0xE0, 0x00, 0x3F, 0x83, 0xF8, 0x00, 0x3F, 0x80, 0xFC, 0x00, - 0x1F, 0x80, 0x3F, 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x1F, 0x80, 0x03, 0xF8, - 0x3F, 0x80, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0xFF, - 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0x01, 0xFE, 0x1F, 0xE0, 0x7F, 0x81, 0xFC, - 0x1F, 0xE0, 0x7F, 0x87, 0xF8, 0x0F, 0xE1, 0xFE, 0x03, 0xFC, 0x7F, 0x80, - 0xFF, 0x1F, 0xE0, 0x3F, 0xC7, 0xF8, 0x0F, 0xF1, 0xFE, 0x03, 0xFC, 0x7F, - 0x80, 0xFF, 0x1F, 0xE0, 0x3F, 0x87, 0xF8, 0x1F, 0xE1, 0xFE, 0x07, 0xF0, - 0x7F, 0x87, 0xF8, 0x1F, 0xFF, 0xF8, 0x07, 0xFF, 0xF8, 0x01, 0xFE, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, - 0x03, 0xFF, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, - 0x3F, 0xFF, 0x80, 0x00, 0x3F, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0xFC, 0x00, - 0x7E, 0x00, 0x3F, 0x00, 0x7E, 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x07, 0xF0, - 0x3F, 0x00, 0x03, 0xF8, 0x3F, 0x80, 0x00, 0xFE, 0x1F, 0xC0, 0x00, 0x7F, - 0x1F, 0xE0, 0x00, 0x3F, 0xCF, 0xE0, 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x07, - 0xF7, 0xF8, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x00, - 0xFF, 0xFF, 0x00, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0x3F, 0xFF, 0xC0, 0x00, - 0x1F, 0xFF, 0xE0, 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xF8, 0x00, - 0x03, 0xFD, 0xFC, 0x00, 0x01, 0xFC, 0xFE, 0x00, 0x01, 0xFE, 0x7F, 0x80, - 0x00, 0xFF, 0x1F, 0xC0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, 0x3F, 0x83, 0xF8, - 0x00, 0x3F, 0x80, 0xFC, 0x00, 0x1F, 0x80, 0x3F, 0x00, 0x1F, 0x80, 0x0F, - 0xC0, 0x1F, 0x80, 0x03, 0xF0, 0x1F, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, - 0x0F, 0xFC, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x01, 0xFF, 0xC0, 0x00, - 0x00, 0x7F, 0xF0, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x07, 0xFF, 0x80, - 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0xFF, 0xFF, 0xE0, - 0x00, 0xFF, 0xFF, 0xF8, 0x00, 0x7F, 0xC3, 0xFC, 0x00, 0xFF, 0x01, 0xFC, - 0x01, 0xFE, 0x03, 0xFC, 0x03, 0xFC, 0x03, 0xF8, 0x07, 0xF8, 0x07, 0xF8, - 0x0F, 0xF0, 0x0F, 0xF0, 0x1F, 0xE0, 0x1F, 0xE0, 0x3F, 0xC0, 0x3F, 0xC0, - 0x7F, 0x80, 0x7F, 0x80, 0xFF, 0x00, 0xFF, 0x01, 0xFE, 0x01, 0xFC, 0x03, - 0xFC, 0x07, 0xF8, 0x07, 0xF8, 0x1F, 0xE0, 0x0F, 0xF0, 0xFF, 0x00, 0x1F, - 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x7F, 0x9F, 0xE0, 0x00, 0xFF, - 0x3F, 0xC0, 0x01, 0xFE, 0x3F, 0xC0, 0x03, 0xFC, 0x7F, 0xC0, 0x07, 0xF8, - 0x7F, 0xC0, 0x0F, 0xF0, 0x7F, 0x80, 0x1F, 0xE0, 0xFF, 0x80, 0x3F, 0xC0, - 0xFF, 0x80, 0x7F, 0x80, 0xFF, 0x00, 0xFF, 0x01, 0xFF, 0x01, 0xFE, 0x01, - 0xFF, 0x03, 0xFC, 0x01, 0xFF, 0x0F, 0xFC, 0x03, 0xFE, 0x7F, 0xFE, 0x03, - 0xFF, 0x03, 0xF8, 0x10, 0x7F, 0xF9, 0x87, 0xC1, 0xFC, 0x78, 0x03, 0xE7, - 0x80, 0x0F, 0x3C, 0x00, 0x3B, 0xE0, 0x01, 0xDF, 0x00, 0x06, 0xF8, 0x00, - 0x37, 0xE0, 0x00, 0xBF, 0x80, 0x01, 0xFF, 0x00, 0x0F, 0xFE, 0x00, 0x3F, - 0xFC, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xF0, 0x1F, 0xFF, 0xC0, 0x7F, 0xFF, - 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xE0, 0x03, 0xFF, 0x80, 0x07, 0xFC, 0x00, - 0x1F, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x3F, - 0xC0, 0x01, 0xEE, 0x00, 0x0F, 0x78, 0x00, 0xF3, 0xE0, 0x0F, 0x9F, 0xC0, - 0xF8, 0x8F, 0xFF, 0x04, 0x0F, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0x3F, 0xC3, 0xFF, 0x03, 0xFC, 0x0F, 0xE0, 0x3F, 0xC0, - 0x7C, 0x03, 0xFC, 0x03, 0xC0, 0x3F, 0xC0, 0x38, 0x03, 0xFC, 0x01, 0x80, - 0x3F, 0xC0, 0x10, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xFF, 0xC0, 0xFF, - 0xFE, 0x07, 0xFC, 0xFF, 0xC0, 0x07, 0xC1, 0xFE, 0x00, 0x0E, 0x07, 0xF8, - 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, - 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, - 0x81, 0xFE, 0x00, 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, - 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, - 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, 0x06, 0x07, 0xF8, - 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, - 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x03, - 0x00, 0xFF, 0x00, 0x0C, 0x03, 0xFC, 0x00, 0x30, 0x07, 0xF0, 0x01, 0x80, - 0x0F, 0xE0, 0x0E, 0x00, 0x1F, 0xE0, 0xF0, 0x00, 0x1F, 0xFF, 0x00, 0x00, - 0x1F, 0xF0, 0x00, 0xFF, 0xFF, 0x01, 0xFF, 0x9F, 0xFC, 0x00, 0x1F, 0x07, - 0xFC, 0x00, 0x07, 0x01, 0xFE, 0x00, 0x03, 0x00, 0x7F, 0x80, 0x03, 0x80, - 0x3F, 0xC0, 0x01, 0x80, 0x1F, 0xE0, 0x00, 0xC0, 0x07, 0xF8, 0x00, 0xC0, - 0x03, 0xFC, 0x00, 0x60, 0x00, 0xFF, 0x00, 0x30, 0x00, 0x7F, 0x80, 0x30, - 0x00, 0x1F, 0xE0, 0x18, 0x00, 0x0F, 0xF0, 0x18, 0x00, 0x07, 0xF8, 0x0C, - 0x00, 0x01, 0xFE, 0x06, 0x00, 0x00, 0xFF, 0x06, 0x00, 0x00, 0x3F, 0xC3, - 0x00, 0x00, 0x1F, 0xE3, 0x80, 0x00, 0x0F, 0xF1, 0x80, 0x00, 0x03, 0xFC, - 0xC0, 0x00, 0x01, 0xFE, 0xC0, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x00, 0x3F, - 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, - 0x01, 0x80, 0x00, 0xFF, 0xF8, 0x7F, 0xFF, 0x0F, 0xFB, 0xFF, 0x00, 0xFF, - 0xC0, 0x1F, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0x70, 0x3F, 0x80, 0x0F, 0xE0, - 0x03, 0x81, 0xFE, 0x00, 0x7F, 0x80, 0x1C, 0x0F, 0xF0, 0x03, 0xFC, 0x00, - 0xC0, 0x3F, 0x80, 0x0F, 0xE0, 0x06, 0x01, 0xFE, 0x00, 0x7F, 0x00, 0x70, - 0x0F, 0xF0, 0x07, 0xFC, 0x03, 0x00, 0x3F, 0x80, 0x3F, 0xE0, 0x18, 0x01, - 0xFE, 0x01, 0xFF, 0x01, 0xC0, 0x0F, 0xF0, 0x1B, 0xFC, 0x0C, 0x00, 0x3F, - 0x80, 0xCF, 0xE0, 0x60, 0x01, 0xFE, 0x06, 0x7F, 0x07, 0x00, 0x0F, 0xF0, - 0x63, 0xFC, 0x30, 0x00, 0x3F, 0x83, 0x0F, 0xE1, 0x80, 0x01, 0xFE, 0x30, - 0x7F, 0x1C, 0x00, 0x07, 0xF1, 0x81, 0xFC, 0xC0, 0x00, 0x3F, 0x8C, 0x0F, - 0xE6, 0x00, 0x01, 0xFE, 0xC0, 0x7F, 0x70, 0x00, 0x07, 0xF6, 0x01, 0xFB, - 0x00, 0x00, 0x3F, 0xE0, 0x0F, 0xF8, 0x00, 0x01, 0xFF, 0x00, 0x7F, 0xC0, - 0x00, 0x07, 0xF8, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x00, - 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xE0, 0x01, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x00, 0x07, - 0x00, 0x01, 0xC0, 0x00, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, - 0x00, 0x70, 0x00, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0xFF, 0xFF, 0x0F, - 0xFF, 0x3F, 0xF8, 0x01, 0xF8, 0x1F, 0xF8, 0x01, 0xE0, 0x0F, 0xF8, 0x01, - 0xC0, 0x0F, 0xF8, 0x01, 0x80, 0x07, 0xFC, 0x03, 0x80, 0x03, 0xFE, 0x07, - 0x00, 0x03, 0xFE, 0x06, 0x00, 0x01, 0xFF, 0x0C, 0x00, 0x00, 0xFF, 0x9C, - 0x00, 0x00, 0xFF, 0x98, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00, 0x3F, 0xF0, - 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x0F, 0xFC, - 0x00, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x19, 0xFE, 0x00, 0x00, 0x31, 0xFF, - 0x00, 0x00, 0x70, 0xFF, 0x80, 0x00, 0x60, 0x7F, 0x80, 0x00, 0xC0, 0x7F, - 0xC0, 0x01, 0xC0, 0x3F, 0xE0, 0x03, 0x80, 0x1F, 0xE0, 0x07, 0x00, 0x1F, - 0xF0, 0x07, 0x00, 0x0F, 0xF8, 0x0F, 0x00, 0x0F, 0xF8, 0x3F, 0x80, 0x1F, - 0xFC, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0x7F, 0xF0, 0x00, - 0x7E, 0x1F, 0xF0, 0x00, 0x38, 0x1F, 0xF0, 0x00, 0x38, 0x0F, 0xF0, 0x00, - 0x70, 0x0F, 0xF8, 0x00, 0x60, 0x07, 0xF8, 0x00, 0x60, 0x07, 0xFC, 0x00, - 0xC0, 0x03, 0xFC, 0x01, 0xC0, 0x01, 0xFE, 0x01, 0x80, 0x01, 0xFE, 0x03, - 0x00, 0x00, 0xFF, 0x03, 0x00, 0x00, 0xFF, 0x86, 0x00, 0x00, 0x7F, 0x8E, - 0x00, 0x00, 0x7F, 0xCC, 0x00, 0x00, 0x3F, 0xD8, 0x00, 0x00, 0x3F, 0xF8, - 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, 0xFE, - 0x00, 0x3F, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xFC, 0x3F, 0x80, 0x7F, 0xC3, - 0xE0, 0x07, 0xF8, 0x38, 0x00, 0xFF, 0x83, 0x80, 0x0F, 0xF0, 0x30, 0x01, - 0xFE, 0x07, 0x00, 0x3F, 0xE0, 0x60, 0x03, 0xFC, 0x06, 0x00, 0x7F, 0xC0, - 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x7F, 0x80, - 0x00, 0x0F, 0xF8, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, - 0xFE, 0x00, 0x00, 0x3F, 0xC0, 0x01, 0x07, 0xFC, 0x00, 0x30, 0xFF, 0x80, - 0x03, 0x0F, 0xF0, 0x00, 0x31, 0xFF, 0x00, 0x07, 0x1F, 0xE0, 0x00, 0xF3, - 0xFE, 0x00, 0x1E, 0x7F, 0xC0, 0x03, 0xE7, 0xF8, 0x01, 0xFE, 0xFF, 0xFF, - 0xFF, 0xEF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xF0, 0x7C, 0x0F, 0x81, - 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, - 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, - 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, - 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xFF, 0xFF, 0xF8, 0xF0, - 0x01, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x80, 0x0F, 0x00, - 0x1F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x78, 0x00, 0xF0, 0x01, - 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1F, - 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, - 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, - 0x1E, 0xFF, 0xFF, 0xFC, 0x1F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, - 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, - 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, - 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, - 0x0F, 0x81, 0xF0, 0x3F, 0xFF, 0xFF, 0xF8, 0x00, 0x78, 0x00, 0x07, 0xC0, - 0x00, 0x3F, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xE0, 0x01, 0xEF, 0x00, 0x0F, - 0x3C, 0x00, 0xF1, 0xE0, 0x07, 0x87, 0x80, 0x78, 0x3C, 0x03, 0xC0, 0xF0, - 0x3C, 0x07, 0x81, 0xE0, 0x1E, 0x1E, 0x00, 0xF0, 0xF0, 0x07, 0xCF, 0x00, - 0x1E, 0x78, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x70, 0x1F, 0x03, 0xF0, 0x7E, 0x03, 0xE0, 0x3E, 0x01, 0xE0, 0x1E, - 0x00, 0xE0, 0x03, 0xFC, 0x00, 0x3F, 0xFC, 0x03, 0xE1, 0xF8, 0x0F, 0x03, - 0xF0, 0x7C, 0x07, 0xC1, 0xF8, 0x1F, 0x87, 0xE0, 0x7E, 0x1F, 0x81, 0xF8, - 0x3C, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x01, 0xFE, 0x00, 0x3F, 0xF8, 0x03, - 0xE7, 0xE0, 0x3E, 0x1F, 0x83, 0xF0, 0x7E, 0x1F, 0x81, 0xF8, 0x7E, 0x07, - 0xE3, 0xF8, 0x1F, 0x8F, 0xE0, 0x7E, 0x3F, 0x83, 0xF8, 0xFF, 0x1F, 0xE1, - 0xFF, 0xDF, 0xF7, 0xFE, 0x3F, 0x07, 0xE0, 0xF8, 0xFF, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x0F, 0xC7, 0xF0, 0x07, 0xEF, 0xFE, 0x03, 0xFC, 0x3F, 0x81, 0xFC, 0x0F, - 0xE0, 0xFC, 0x03, 0xF0, 0x7E, 0x01, 0xFC, 0x3F, 0x00, 0xFE, 0x1F, 0x80, - 0x3F, 0x8F, 0xC0, 0x1F, 0xC7, 0xE0, 0x0F, 0xE3, 0xF0, 0x07, 0xF1, 0xF8, - 0x03, 0xF8, 0xFC, 0x01, 0xFC, 0x7E, 0x00, 0xFE, 0x3F, 0x00, 0x7F, 0x1F, - 0x80, 0x3F, 0x0F, 0xC0, 0x1F, 0x87, 0xE0, 0x1F, 0xC3, 0xF0, 0x0F, 0xC1, - 0xF8, 0x07, 0xE0, 0xFE, 0x07, 0xE0, 0x73, 0x87, 0xE0, 0x30, 0xFF, 0xC0, - 0x10, 0x1F, 0x80, 0x00, 0x00, 0xFC, 0x00, 0x7F, 0xE0, 0x3E, 0x3E, 0x0F, - 0x83, 0xE3, 0xE0, 0x7C, 0x7C, 0x0F, 0x9F, 0x01, 0xF3, 0xE0, 0x1C, 0x7C, - 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, - 0x00, 0x3F, 0x00, 0x07, 0xF0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x01, 0xFC, - 0x00, 0x1F, 0xC0, 0x21, 0xFE, 0x0C, 0x3F, 0xFF, 0x01, 0xFF, 0x80, 0x0F, - 0xC0, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, - 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, - 0xF8, 0x00, 0x01, 0xF8, 0x03, 0xF1, 0xF8, 0x07, 0xFD, 0xF8, 0x1F, 0xC7, - 0xF8, 0x1F, 0x83, 0xF8, 0x3F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0x7E, 0x01, - 0xF8, 0x7E, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, - 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, - 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0x7E, 0x01, 0xF8, 0x7F, 0x01, - 0xF8, 0x3F, 0x03, 0xF8, 0x3F, 0x03, 0xF8, 0x1F, 0x87, 0xFC, 0x0F, 0xFD, - 0xFF, 0x03, 0xF1, 0xC0, 0x03, 0xF0, 0x03, 0xFF, 0x01, 0xE1, 0xE0, 0xF8, - 0x7C, 0x3C, 0x0F, 0x1F, 0x03, 0xE7, 0xC0, 0xFB, 0xF0, 0x3E, 0xFC, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, - 0xC0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x1F, 0x80, 0x07, 0xF0, 0x0C, 0xFC, - 0x06, 0x3F, 0xC3, 0x07, 0xFF, 0x80, 0xFF, 0xC0, 0x0F, 0xC0, 0x00, 0xFC, - 0x01, 0xFF, 0x81, 0xF1, 0xC1, 0xF0, 0xF0, 0xF8, 0xF8, 0xFC, 0x7C, 0x7E, - 0x1C, 0x3F, 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x1F, 0xFF, 0x0F, - 0xFF, 0x80, 0xFC, 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x1F, 0x80, 0x0F, 0xC0, - 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0x3F, - 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, - 0xFC, 0x00, 0x7E, 0x00, 0x7F, 0x80, 0xFF, 0xF8, 0x00, 0x07, 0xF0, 0x03, - 0xFF, 0xFC, 0xF8, 0x7F, 0xBE, 0x07, 0x87, 0xC0, 0xF9, 0xF8, 0x1F, 0xBF, - 0x03, 0xF7, 0xE0, 0x7E, 0xFC, 0x0F, 0xDF, 0x81, 0xF9, 0xF0, 0x3F, 0x3E, - 0x07, 0xC3, 0xE1, 0xF8, 0x3C, 0x7E, 0x01, 0xFF, 0x00, 0x60, 0x00, 0x38, - 0x00, 0x0F, 0x00, 0x01, 0xF0, 0x00, 0x7F, 0xFF, 0x0F, 0xFF, 0xF9, 0xFF, - 0xFF, 0x9F, 0xFF, 0xF9, 0xFF, 0xFF, 0x0F, 0xFF, 0xEF, 0x00, 0x3F, 0xC0, - 0x03, 0xF8, 0x00, 0x7F, 0x00, 0x1C, 0xF8, 0x07, 0x0F, 0xFF, 0xC0, 0x7F, - 0xC0, 0xFF, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, - 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, - 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x87, 0xE0, 0x1F, 0x9F, 0xF0, 0x1F, 0xBF, - 0xF8, 0x1F, 0xF1, 0xF8, 0x1F, 0xC0, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x3F, 0xC1, 0xFE, 0xFF, 0xE3, - 0xFF, 0x0F, 0x07, 0xE1, 0xFE, 0x3F, 0xC7, 0xF8, 0x7F, 0x03, 0xC0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x7F, 0xC3, 0xF8, 0x3F, 0x07, 0xE0, 0xFC, 0x1F, - 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, 0xFC, 0x1F, 0x83, - 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE1, 0xFE, 0xFF, 0xE0, 0x00, - 0x70, 0x07, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x07, 0xF0, 0x0F, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0x01, 0xFC, 0x03, 0xF0, - 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, - 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, - 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, - 0xDC, 0x3F, 0xF8, 0xFB, 0xE3, 0xEF, 0x0F, 0xBC, 0x7C, 0x7F, 0xE0, 0x7E, - 0x00, 0xFF, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, - 0x00, 0x01, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE1, 0xFF, 0x83, - 0xF0, 0x3F, 0x01, 0xF8, 0x0E, 0x00, 0xFC, 0x06, 0x00, 0x7E, 0x06, 0x00, - 0x3F, 0x06, 0x00, 0x1F, 0x86, 0x00, 0x0F, 0xC7, 0x00, 0x07, 0xE7, 0x80, - 0x03, 0xF7, 0xE0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7E, 0x7F, - 0x00, 0x3F, 0x1F, 0xC0, 0x1F, 0x8F, 0xE0, 0x0F, 0xC3, 0xF8, 0x07, 0xE0, - 0xFE, 0x03, 0xF0, 0x7F, 0x81, 0xF8, 0x1F, 0xC0, 0xFC, 0x0F, 0xF0, 0xFF, - 0x07, 0xFD, 0xFF, 0xC7, 0xFF, 0xFF, 0x87, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, - 0x3F, 0x07, 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, - 0x07, 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, - 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x0F, 0xF7, - 0xFF, 0x00, 0x07, 0xE0, 0x3F, 0x07, 0xFC, 0xFF, 0x87, 0xFC, 0x0F, 0xEF, - 0xFE, 0x7F, 0xF0, 0x3F, 0xC3, 0xFF, 0x1F, 0x81, 0xFC, 0x0F, 0xE0, 0x7E, - 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x7E, 0x03, 0xF0, 0x1F, 0x83, 0xF0, 0x1F, - 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0xFC, 0x07, 0xE0, 0x3F, 0x07, - 0xE0, 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x0F, 0xC1, 0xF8, 0x0F, 0xC0, - 0x7E, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x7E, 0x03, 0xF0, 0x1F, 0x83, 0xF0, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0xFC, 0x07, 0xE0, 0x3F, - 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x0F, 0xC1, 0xF8, 0x0F, - 0xC0, 0x7E, 0x1F, 0xE0, 0xFF, 0x07, 0xFB, 0xFF, 0x8F, 0xFC, 0x7F, 0xE0, - 0x00, 0x07, 0xE0, 0xFF, 0x9F, 0xF0, 0x3F, 0xBF, 0xF8, 0x1F, 0xF1, 0xF8, - 0x1F, 0xC0, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x3F, 0xC1, 0xFE, 0xFF, 0xE3, 0xFF, 0x01, 0xFC, 0x00, - 0x3F, 0xF8, 0x03, 0xE3, 0xE0, 0x3E, 0x0F, 0x83, 0xF0, 0x7E, 0x1F, 0x01, - 0xF1, 0xF8, 0x0F, 0xCF, 0xC0, 0x7E, 0xFE, 0x03, 0xFF, 0xF0, 0x1F, 0xFF, - 0x80, 0xFF, 0xFC, 0x07, 0xFF, 0xE0, 0x3F, 0xFF, 0x01, 0xFF, 0xF8, 0x0F, - 0xFF, 0xC0, 0x7F, 0x7E, 0x03, 0xF3, 0xF0, 0x1F, 0x8F, 0x80, 0xF8, 0x7E, - 0x0F, 0xC1, 0xF0, 0x7C, 0x07, 0xC7, 0xC0, 0x1F, 0xFC, 0x00, 0x3F, 0x80, - 0x00, 0x0F, 0xC0, 0xFF, 0xBF, 0xF0, 0x3F, 0xF1, 0xF8, 0x1F, 0xC0, 0xFC, - 0x1F, 0xC0, 0xFC, 0x1F, 0x80, 0xFE, 0x1F, 0x80, 0x7E, 0x1F, 0x80, 0x7F, - 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, - 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, - 0x1F, 0x80, 0x7E, 0x1F, 0x80, 0x7E, 0x1F, 0x80, 0xFE, 0x1F, 0x80, 0xFC, - 0x1F, 0xC1, 0xF8, 0x1F, 0xE3, 0xF8, 0x1F, 0xBF, 0xE0, 0x1F, 0x8F, 0xC0, - 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, - 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xF8, 0x00, - 0x00, 0xF8, 0x08, 0x07, 0xFE, 0x18, 0x0F, 0xC7, 0x38, 0x1F, 0x83, 0xF8, - 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0x7E, 0x01, 0xF8, - 0x7E, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, - 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, - 0xFE, 0x01, 0xF8, 0x7E, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, - 0x3F, 0x83, 0xF8, 0x1F, 0xC7, 0xF8, 0x0F, 0xFD, 0xF8, 0x03, 0xF1, 0xF8, - 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, - 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xFF, - 0x00, 0x07, 0x9F, 0xF3, 0xF8, 0xFE, 0xFF, 0x8F, 0xFF, 0xF1, 0xFE, 0x7E, - 0x3F, 0x87, 0x87, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, - 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, - 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, - 0xF8, 0x00, 0x7F, 0x80, 0x3F, 0xFC, 0x00, 0x0F, 0x84, 0x3F, 0xF8, 0xE1, - 0xF3, 0x80, 0xEF, 0x00, 0xDE, 0x01, 0xBE, 0x01, 0x7E, 0x00, 0xFF, 0x01, - 0xFF, 0x81, 0xFF, 0xC3, 0xFF, 0xC3, 0xFF, 0xC1, 0xFF, 0x80, 0xFF, 0x80, - 0x7F, 0x80, 0x7F, 0x80, 0x7F, 0x00, 0x7E, 0x00, 0xFE, 0x01, 0xDF, 0x0F, - 0x37, 0xFC, 0x43, 0xF0, 0x01, 0x00, 0x0C, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x7C, 0x03, 0xF0, 0x1F, 0xC0, 0xFF, 0xF3, 0xFF, 0xC3, 0xF0, 0x0F, - 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, - 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, - 0xFC, 0x23, 0xF0, 0x8F, 0xE6, 0x1F, 0xF0, 0x7F, 0x80, 0xF8, 0x00, 0xFF, - 0x87, 0xFC, 0x1F, 0xC0, 0xFE, 0x07, 0xE0, 0x3F, 0x03, 0xF0, 0x1F, 0x81, - 0xF8, 0x0F, 0xC0, 0xFC, 0x07, 0xE0, 0x7E, 0x03, 0xF0, 0x3F, 0x01, 0xF8, - 0x1F, 0x80, 0xFC, 0x0F, 0xC0, 0x7E, 0x07, 0xE0, 0x3F, 0x03, 0xF0, 0x1F, - 0x81, 0xF8, 0x0F, 0xC0, 0xFC, 0x07, 0xE0, 0x7E, 0x03, 0xF0, 0x3F, 0x01, - 0xF8, 0x1F, 0x80, 0xFC, 0x0F, 0xC0, 0x7E, 0x07, 0xE0, 0x7F, 0x03, 0xF8, - 0x7F, 0xC0, 0xFF, 0xEF, 0xF8, 0x3F, 0xE7, 0xC0, 0x0F, 0xC2, 0x00, 0xFF, - 0xF1, 0xFC, 0xFF, 0x01, 0xE3, 0xFC, 0x03, 0x07, 0xF0, 0x0C, 0x1F, 0xC0, - 0x60, 0x3F, 0x81, 0x80, 0xFE, 0x04, 0x01, 0xF8, 0x30, 0x07, 0xF0, 0xC0, - 0x1F, 0xC6, 0x00, 0x3F, 0x98, 0x00, 0xFE, 0x40, 0x01, 0xFB, 0x00, 0x07, - 0xFC, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, 0x01, 0xF0, - 0x00, 0x07, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, - 0x01, 0x00, 0x00, 0xFF, 0xE7, 0xFF, 0x3F, 0xBF, 0xE0, 0xFE, 0x07, 0x0F, - 0xE0, 0x7F, 0x03, 0x83, 0xF0, 0x1F, 0x81, 0x81, 0xFC, 0x0F, 0xC0, 0xC0, - 0xFE, 0x07, 0xF0, 0x40, 0x3F, 0x03, 0xF8, 0x60, 0x1F, 0xC3, 0xFC, 0x30, - 0x07, 0xE1, 0xFE, 0x10, 0x03, 0xF0, 0x9F, 0x98, 0x01, 0xFC, 0xCF, 0xCC, - 0x00, 0x7E, 0x67, 0xEC, 0x00, 0x3F, 0xE1, 0xFE, 0x00, 0x1F, 0xF0, 0xFE, - 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x03, 0xF8, 0x3F, 0x80, 0x00, 0xFC, 0x0F, - 0x80, 0x00, 0x7C, 0x07, 0xC0, 0x00, 0x3E, 0x03, 0xE0, 0x00, 0x0F, 0x00, - 0xE0, 0x00, 0x07, 0x00, 0x70, 0x00, 0x03, 0x80, 0x38, 0x00, 0x00, 0x80, - 0x08, 0x00, 0xFF, 0xF3, 0xFD, 0xFF, 0x03, 0xC3, 0xFC, 0x0E, 0x07, 0xF0, - 0x30, 0x1F, 0xE1, 0x80, 0x3F, 0x8C, 0x00, 0x7F, 0x70, 0x01, 0xFF, 0x80, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0x80, 0x00, - 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x1B, 0xF8, 0x00, 0xCF, 0xF0, 0x06, 0x1F, - 0xC0, 0x38, 0x3F, 0x80, 0xC0, 0xFF, 0x07, 0x01, 0xFC, 0x3C, 0x07, 0xFB, - 0xFC, 0x7F, 0xF0, 0xFF, 0xE3, 0xFB, 0xFC, 0x07, 0x8F, 0xE0, 0x18, 0x7F, - 0x01, 0x81, 0xF8, 0x0C, 0x0F, 0xE0, 0x60, 0x7F, 0x06, 0x01, 0xF8, 0x30, - 0x0F, 0xE1, 0x80, 0x7F, 0x18, 0x01, 0xF8, 0xC0, 0x0F, 0xE6, 0x00, 0x3F, - 0x60, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, - 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x03, 0x82, 0x00, 0x3E, - 0x30, 0x01, 0xF1, 0x00, 0x0F, 0x98, 0x00, 0x3F, 0x80, 0x00, 0xF0, 0x00, - 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xFD, 0xE0, 0x7F, 0x30, 0x1F, 0xC6, 0x07, - 0xF8, 0x80, 0xFE, 0x00, 0x3F, 0xC0, 0x07, 0xF0, 0x01, 0xFC, 0x00, 0x3F, - 0x80, 0x0F, 0xE0, 0x03, 0xFC, 0x00, 0x7F, 0x00, 0x1F, 0xE0, 0x03, 0xF8, - 0x00, 0xFE, 0x03, 0x3F, 0xC0, 0x67, 0xF0, 0x19, 0xFE, 0x07, 0x3F, 0x83, - 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0x80, 0x00, 0x7C, 0x07, 0xE0, 0x3E, 0x00, - 0xF8, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, - 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, - 0x1F, 0x00, 0xF8, 0x03, 0xC0, 0x3C, 0x01, 0xF0, 0x00, 0xF0, 0x03, 0xE0, - 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, - 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, - 0x00, 0x3E, 0x00, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x3E, 0x00, - 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, - 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0x7C, 0x00, 0xF0, - 0x00, 0xF0, 0x03, 0xE0, 0x3C, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, - 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, 0x07, 0xC0, 0x7E, - 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0xFF, 0xC0, 0x47, 0xFF, 0xC3, 0x9F, - 0xFF, 0xFF, 0x70, 0x7F, 0xF8, 0x80, 0x7F, 0xC0, 0x00, 0x3E, 0x00}; - -const GFXglyph FreeSerifBold24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 8, 34, 16, 4, -32}, // 0x21 '!' - {34, 17, 13, 26, 4, -32}, // 0x22 '"' - {62, 23, 33, 23, 0, -32}, // 0x23 '#' - {157, 21, 39, 24, 1, -34}, // 0x24 '$' - {260, 35, 34, 47, 6, -32}, // 0x25 '%' - {409, 34, 34, 39, 3, -32}, // 0x26 '&' - {554, 5, 13, 13, 4, -32}, // 0x27 ''' - {563, 12, 41, 16, 2, -32}, // 0x28 '(' - {625, 12, 41, 16, 1, -32}, // 0x29 ')' - {687, 18, 21, 24, 3, -32}, // 0x2A '*' - {735, 26, 25, 32, 3, -24}, // 0x2B '+' - {817, 8, 15, 12, 2, -6}, // 0x2C ',' - {832, 11, 5, 16, 2, -12}, // 0x2D '-' - {839, 8, 8, 12, 2, -6}, // 0x2E '.' - {847, 15, 33, 13, -1, -32}, // 0x2F '/' - {909, 22, 34, 23, 1, -32}, // 0x30 '0' - {1003, 18, 33, 23, 3, -32}, // 0x31 '1' - {1078, 21, 33, 24, 1, -32}, // 0x32 '2' - {1165, 21, 34, 24, 1, -32}, // 0x33 '3' - {1255, 21, 33, 24, 1, -32}, // 0x34 '4' - {1342, 20, 32, 23, 2, -31}, // 0x35 '5' - {1422, 21, 34, 24, 1, -32}, // 0x36 '6' - {1512, 21, 32, 23, 1, -31}, // 0x37 '7' - {1596, 21, 34, 23, 1, -32}, // 0x38 '8' - {1686, 22, 34, 23, 1, -32}, // 0x39 '9' - {1780, 8, 24, 16, 4, -22}, // 0x3A ':' - {1804, 9, 31, 16, 3, -22}, // 0x3B ';' - {1839, 26, 26, 32, 3, -24}, // 0x3C '<' - {1924, 26, 17, 32, 3, -20}, // 0x3D '=' - {1980, 26, 26, 32, 3, -24}, // 0x3E '>' - {2065, 18, 34, 24, 3, -32}, // 0x3F '?' - {2142, 33, 34, 44, 5, -32}, // 0x40 '@' - {2283, 32, 33, 34, 1, -32}, // 0x41 'A' - {2415, 28, 32, 31, 1, -31}, // 0x42 'B' - {2527, 30, 34, 33, 2, -32}, // 0x43 'C' - {2655, 32, 32, 34, 1, -31}, // 0x44 'D' - {2783, 28, 32, 32, 2, -31}, // 0x45 'E' - {2895, 25, 32, 29, 2, -31}, // 0x46 'F' - {2995, 33, 34, 36, 2, -32}, // 0x47 'G' - {3136, 33, 32, 37, 2, -31}, // 0x48 'H' - {3268, 15, 32, 18, 2, -31}, // 0x49 'I' - {3328, 22, 37, 24, 0, -31}, // 0x4A 'J' - {3430, 34, 32, 36, 2, -31}, // 0x4B 'K' - {3566, 28, 32, 31, 2, -31}, // 0x4C 'L' - {3678, 43, 32, 45, 0, -31}, // 0x4D 'M' - {3850, 31, 32, 34, 1, -31}, // 0x4E 'N' - {3974, 33, 34, 37, 2, -32}, // 0x4F 'O' - {4115, 26, 32, 30, 2, -31}, // 0x50 'P' - {4219, 33, 41, 37, 2, -32}, // 0x51 'Q' - {4389, 31, 32, 34, 2, -31}, // 0x52 'R' - {4513, 21, 34, 27, 3, -32}, // 0x53 'S' - {4603, 28, 32, 30, 1, -31}, // 0x54 'T' - {4715, 30, 33, 34, 2, -31}, // 0x55 'U' - {4839, 33, 32, 33, 0, -31}, // 0x56 'V' - {4971, 45, 33, 46, 1, -31}, // 0x57 'W' - {5157, 32, 32, 34, 1, -31}, // 0x58 'X' - {5285, 32, 32, 33, 1, -31}, // 0x59 'Y' - {5413, 28, 32, 30, 1, -31}, // 0x5A 'Z' - {5525, 11, 39, 16, 3, -31}, // 0x5B '[' - {5579, 15, 33, 13, -1, -32}, // 0x5C '\' - {5641, 11, 39, 16, 2, -31}, // 0x5D ']' - {5695, 21, 17, 27, 3, -31}, // 0x5E '^' - {5740, 24, 3, 23, 0, 5}, // 0x5F '_' - {5749, 11, 9, 16, 0, -33}, // 0x60 '`' - {5762, 22, 24, 23, 1, -22}, // 0x61 'a' - {5828, 25, 33, 26, 0, -31}, // 0x62 'b' - {5932, 19, 24, 20, 1, -22}, // 0x63 'c' - {5989, 24, 33, 26, 1, -31}, // 0x64 'd' - {6088, 18, 24, 21, 1, -22}, // 0x65 'e' - {6142, 17, 33, 18, 1, -32}, // 0x66 'f' - {6213, 19, 32, 24, 2, -22}, // 0x67 'g' - {6289, 24, 32, 26, 0, -31}, // 0x68 'h' - {6385, 11, 33, 14, 1, -32}, // 0x69 'i' - {6431, 14, 42, 18, 0, -32}, // 0x6A 'j' - {6505, 25, 32, 26, 0, -31}, // 0x6B 'k' - {6605, 11, 32, 13, 0, -31}, // 0x6C 'l' - {6649, 37, 23, 39, 0, -22}, // 0x6D 'm' - {6756, 24, 23, 26, 0, -22}, // 0x6E 'n' - {6825, 21, 24, 24, 1, -22}, // 0x6F 'o' - {6888, 24, 32, 26, 0, -22}, // 0x70 'p' - {6984, 24, 32, 26, 1, -22}, // 0x71 'q' - {7080, 19, 23, 20, 0, -22}, // 0x72 'r' - {7135, 15, 24, 19, 2, -22}, // 0x73 's' - {7180, 14, 31, 16, 1, -29}, // 0x74 't' - {7235, 25, 23, 27, 0, -21}, // 0x75 'u' - {7307, 22, 23, 23, 0, -21}, // 0x76 'v' - {7371, 33, 23, 33, 0, -21}, // 0x77 'w' - {7466, 22, 22, 24, 1, -21}, // 0x78 'x' - {7527, 21, 31, 23, 0, -21}, // 0x79 'y' - {7609, 19, 22, 21, 1, -21}, // 0x7A 'z' - {7662, 14, 42, 19, 1, -33}, // 0x7B '{' - {7736, 4, 33, 10, 3, -32}, // 0x7C '|' - {7753, 14, 42, 19, 4, -33}, // 0x7D '}' - {7827, 22, 7, 24, 1, -14}}; // 0x7E '~' - -const GFXfont FreeSerifBold24pt7b PROGMEM = { - (uint8_t *)FreeSerifBold24pt7bBitmaps, - (GFXglyph *)FreeSerifBold24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 8519 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h deleted file mode 100644 index 2f1cf8f..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h +++ /dev/null @@ -1,204 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xF4, 0x92, 0x1F, 0xF0, 0xCF, 0x3C, 0xE3, 0x88, 0x13, 0x09, 0x84, - 0xC2, 0x47, 0xF9, 0x90, 0xC8, 0x4C, 0xFF, 0x13, 0x09, 0x0C, 0x86, 0x40, - 0x10, 0x38, 0xD6, 0x92, 0xD2, 0xF0, 0x7C, 0x3E, 0x17, 0x93, 0x93, 0xD6, - 0x7C, 0x10, 0x3C, 0x21, 0xCF, 0x0E, 0x24, 0x30, 0xA0, 0xC5, 0x03, 0x34, - 0xE7, 0x26, 0x40, 0xB9, 0x04, 0xC4, 0x23, 0x30, 0x8C, 0x84, 0x1C, 0x0F, - 0x00, 0xCC, 0x06, 0x60, 0x3E, 0x00, 0xE7, 0x8F, 0x18, 0x9C, 0x8C, 0xE4, - 0xE3, 0xC7, 0x9E, 0x3C, 0x72, 0xFD, 0xE0, 0xFF, 0x80, 0x32, 0x44, 0xCC, - 0xCC, 0xCC, 0xC4, 0x62, 0x10, 0x84, 0x22, 0x33, 0x33, 0x33, 0x32, 0x64, - 0x80, 0x31, 0x6B, 0xB1, 0x8E, 0xD6, 0x8C, 0x00, 0x08, 0x04, 0x02, 0x01, - 0x0F, 0xF8, 0x40, 0x20, 0x10, 0x08, 0x00, 0xDF, 0x95, 0x00, 0xFF, 0xFF, - 0x80, 0x0C, 0x21, 0x86, 0x10, 0xC3, 0x08, 0x61, 0x84, 0x30, 0xC0, 0x1C, - 0x33, 0x98, 0xDC, 0x7E, 0x3F, 0x1F, 0x8F, 0xC7, 0xE3, 0xB1, 0x98, 0xC3, - 0x80, 0x08, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0xBF, 0x3C, 0x3F, - 0x23, 0xC0, 0xE0, 0x70, 0x30, 0x38, 0x18, 0x18, 0x18, 0x5F, 0xDF, 0xE0, - 0x7C, 0x8E, 0x0E, 0x0E, 0x0C, 0x1E, 0x07, 0x03, 0x03, 0x02, 0xE6, 0xF8, - 0x06, 0x0E, 0x0E, 0x3E, 0x2E, 0x4E, 0x8E, 0x8E, 0xFF, 0xFF, 0x0E, 0x0E, - 0x3F, 0x7E, 0x40, 0x40, 0xF8, 0xFC, 0x1E, 0x06, 0x02, 0x02, 0xE4, 0xF8, - 0x07, 0x1C, 0x30, 0x70, 0xFC, 0xE6, 0xE7, 0xE7, 0xE7, 0x67, 0x66, 0x3C, - 0x7F, 0x3F, 0xA0, 0xD0, 0x40, 0x60, 0x30, 0x10, 0x18, 0x0C, 0x04, 0x06, - 0x03, 0x00, 0x3C, 0xC6, 0xC6, 0xC6, 0xFC, 0x7C, 0x3E, 0xCF, 0xC7, 0xC7, - 0xC6, 0x7C, 0x3E, 0x33, 0xB8, 0xDC, 0x7E, 0x3F, 0x1D, 0xCE, 0x7F, 0x07, - 0x07, 0x0F, 0x1C, 0x00, 0xFF, 0x80, 0x3F, 0xE0, 0xFF, 0x80, 0x37, 0xE5, - 0x40, 0x00, 0x00, 0x70, 0x78, 0x78, 0x78, 0x38, 0x03, 0x80, 0x3C, 0x03, - 0xC0, 0x30, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0xFF, 0xC0, 0xC0, 0x3C, 0x03, - 0xC0, 0x1C, 0x01, 0xC1, 0xE1, 0xE1, 0xE0, 0xE0, 0x00, 0x00, 0x3D, 0x9F, - 0x3E, 0x70, 0xE1, 0x04, 0x08, 0x00, 0x70, 0xE1, 0xC0, 0x0F, 0x81, 0x83, - 0x18, 0xC4, 0x89, 0x9C, 0x4C, 0xE4, 0x67, 0x22, 0x39, 0x22, 0x4F, 0xE3, - 0x00, 0x0C, 0x10, 0x1F, 0x00, 0x02, 0x00, 0x30, 0x01, 0xC0, 0x0E, 0x00, - 0xB8, 0x05, 0xC0, 0x4F, 0x02, 0x38, 0x3F, 0xE1, 0x07, 0x18, 0x3D, 0xE3, - 0xF0, 0xFF, 0x87, 0x1C, 0xE3, 0x9C, 0x73, 0x9C, 0x7F, 0x0E, 0x71, 0xC7, - 0x38, 0xE7, 0x1C, 0xE7, 0x7F, 0xC0, 0x1F, 0x26, 0x1D, 0xC1, 0xB0, 0x1E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x0E, 0x04, 0xE1, 0x0F, 0xC0, 0xFF, - 0x0E, 0x71, 0xC7, 0x38, 0x77, 0x0E, 0xE1, 0xDC, 0x3B, 0x87, 0x70, 0xCE, - 0x39, 0xC6, 0x7F, 0x80, 0xFF, 0xCE, 0x19, 0xC1, 0x38, 0x87, 0x30, 0xFE, - 0x1C, 0xC3, 0x88, 0x70, 0x2E, 0x0D, 0xC3, 0x7F, 0xE0, 0xFF, 0xDC, 0x37, - 0x05, 0xC4, 0x73, 0x1F, 0xC7, 0x31, 0xC4, 0x70, 0x1C, 0x07, 0x03, 0xE0, - 0x1F, 0x23, 0x0E, 0x70, 0x6E, 0x02, 0xE0, 0x0E, 0x00, 0xE1, 0xFE, 0x0E, - 0x60, 0xE7, 0x0E, 0x38, 0xE0, 0xF8, 0xF9, 0xF7, 0x0E, 0x70, 0xE7, 0x0E, - 0x70, 0xE7, 0xFE, 0x70, 0xE7, 0x0E, 0x70, 0xE7, 0x0E, 0x70, 0xEF, 0x9F, - 0xFB, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9D, 0xF0, 0x1F, 0x0E, 0x0E, 0x0E, - 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0xCE, 0xCC, 0x78, 0xF9, 0xF3, - 0x82, 0x1C, 0x20, 0xE2, 0x07, 0x20, 0x3F, 0x01, 0xDC, 0x0E, 0x70, 0x73, - 0xC3, 0x8F, 0x1C, 0x3D, 0xF3, 0xF0, 0xF8, 0x0E, 0x01, 0xC0, 0x38, 0x07, - 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x2E, 0x09, 0xC3, 0x7F, 0xE0, 0xF8, - 0x0F, 0x3C, 0x1E, 0x3C, 0x1E, 0x2E, 0x2E, 0x2E, 0x2E, 0x26, 0x4E, 0x27, - 0x4E, 0x27, 0x4E, 0x23, 0x8E, 0x23, 0x8E, 0x21, 0x0E, 0x71, 0x1F, 0xF0, - 0xEE, 0x09, 0xE1, 0x3E, 0x25, 0xE4, 0x9E, 0x91, 0xD2, 0x1E, 0x43, 0xC8, - 0x39, 0x03, 0x70, 0x20, 0x1F, 0x83, 0x0C, 0x70, 0xEE, 0x07, 0xE0, 0x7E, - 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x77, 0x0E, 0x30, 0xC1, 0xF8, 0xFF, 0x1C, - 0xE7, 0x1D, 0xC7, 0x71, 0xDC, 0xE7, 0xF1, 0xC0, 0x70, 0x1C, 0x07, 0x03, - 0xE0, 0x0F, 0x83, 0x9C, 0x70, 0xE6, 0x06, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, - 0x07, 0xE0, 0x76, 0x06, 0x30, 0xC1, 0x98, 0x0F, 0x00, 0x78, 0x03, 0xE0, - 0xFF, 0x07, 0x38, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x38, 0x7E, 0x07, 0x70, - 0x77, 0x87, 0x3C, 0x71, 0xEF, 0x8F, 0x39, 0x47, 0xC1, 0xC0, 0xF0, 0x7C, - 0x3E, 0x0F, 0x83, 0xC3, 0xC6, 0xBC, 0xFF, 0xFC, 0xE3, 0x8E, 0x10, 0xE0, - 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xF0, - 0xF8, 0xEE, 0x09, 0xC1, 0x38, 0x27, 0x04, 0xE0, 0x9C, 0x13, 0x82, 0x70, - 0x4E, 0x08, 0xE2, 0x0F, 0x80, 0xFC, 0x7B, 0xC1, 0x0E, 0x08, 0x70, 0x81, - 0xC4, 0x0E, 0x20, 0x7A, 0x01, 0xD0, 0x0E, 0x80, 0x38, 0x01, 0xC0, 0x04, - 0x00, 0x20, 0x00, 0xFD, 0xFB, 0xDC, 0x38, 0x43, 0x87, 0x10, 0xE1, 0xC4, - 0x38, 0xF2, 0x07, 0x2E, 0x81, 0xD3, 0xA0, 0x34, 0x70, 0x0E, 0x1C, 0x03, - 0x87, 0x00, 0x60, 0x80, 0x10, 0x20, 0xFE, 0xF3, 0xC3, 0x0F, 0x10, 0x39, - 0x00, 0xF0, 0x03, 0x80, 0x1E, 0x01, 0x70, 0x09, 0xC0, 0x8F, 0x08, 0x3D, - 0xF3, 0xF0, 0xFC, 0x7B, 0xC1, 0x8E, 0x08, 0x38, 0x81, 0xE8, 0x07, 0x40, - 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x1F, 0x00, 0xFF, 0xD8, - 0x72, 0x1E, 0x43, 0x80, 0xE0, 0x1C, 0x07, 0x01, 0xC0, 0x38, 0x2E, 0x0F, - 0x83, 0x7F, 0xE0, 0xFC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xF0, 0xC1, - 0x06, 0x18, 0x20, 0xC3, 0x04, 0x18, 0x60, 0x83, 0x0C, 0xF3, 0x33, 0x33, - 0x33, 0x33, 0x33, 0x33, 0xF0, 0x18, 0x1C, 0x34, 0x26, 0x62, 0x43, 0xC1, - 0xFF, 0x80, 0xC6, 0x30, 0x7C, 0x63, 0xB1, 0xC0, 0xE1, 0xF3, 0x3B, 0x9D, - 0xCE, 0xFF, 0x80, 0xF0, 0x1C, 0x07, 0x01, 0xDC, 0x7B, 0x9C, 0x77, 0x1D, - 0xC7, 0x71, 0xDC, 0x77, 0x39, 0x3C, 0x3C, 0xED, 0x9F, 0x0E, 0x1C, 0x38, - 0x39, 0x3C, 0x07, 0x80, 0xE0, 0x38, 0xEE, 0x77, 0xB8, 0xEE, 0x3B, 0x8E, - 0xE3, 0xB8, 0xE7, 0x78, 0xEF, 0x3C, 0x66, 0xE6, 0xFE, 0xE0, 0xE0, 0xE0, - 0x72, 0x3C, 0x3E, 0xED, 0xC7, 0xC7, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC7, - 0xC0, 0x31, 0xDF, 0xBF, 0x7E, 0xE7, 0x90, 0x60, 0xFC, 0xFE, 0x0C, 0x17, - 0xC0, 0xF0, 0x1C, 0x07, 0x01, 0xDC, 0x7B, 0x9C, 0xE7, 0x39, 0xCE, 0x73, - 0x9C, 0xE7, 0x3B, 0xFF, 0x73, 0x9D, 0xE7, 0x39, 0xCE, 0x73, 0x9D, 0xF0, - 0x1C, 0x71, 0xCF, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x7D, 0xBE, - 0xF0, 0x1C, 0x07, 0x01, 0xCE, 0x71, 0x1C, 0x87, 0x41, 0xF8, 0x77, 0x1C, - 0xE7, 0x1B, 0xEF, 0xF3, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9D, 0xF0, 0xF7, - 0x38, 0xF7, 0xB9, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, - 0x39, 0xCE, 0xFF, 0xFE, 0xF7, 0x1E, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, - 0x39, 0xCE, 0xFF, 0xC0, 0x3E, 0x31, 0xB8, 0xFC, 0x7E, 0x3F, 0x1F, 0x8E, - 0xC6, 0x3E, 0x00, 0xF7, 0x1E, 0xE7, 0x1D, 0xC7, 0x71, 0xDC, 0x77, 0x1D, - 0xCE, 0x7F, 0x1C, 0x07, 0x01, 0xC0, 0xF8, 0x00, 0x3C, 0x9C, 0xEE, 0x3B, - 0x8E, 0xE3, 0xB8, 0xEE, 0x39, 0xCE, 0x3F, 0x80, 0xE0, 0x38, 0x0E, 0x07, - 0xC0, 0xF7, 0x7B, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0xF8, 0x7E, 0x73, - 0xC7, 0x8E, 0x39, 0xB0, 0x10, 0xCF, 0x9C, 0x71, 0xC7, 0x1C, 0x71, 0xD3, - 0x80, 0xF7, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x3F, - 0xC0, 0xFB, 0xB8, 0x8C, 0x87, 0x43, 0xC0, 0xE0, 0x70, 0x10, 0x08, 0x00, - 0xF7, 0xB6, 0x31, 0x73, 0xA3, 0x3A, 0x3D, 0xA3, 0xDC, 0x18, 0xC1, 0x88, - 0x10, 0x80, 0xFB, 0xB8, 0x8E, 0x83, 0x81, 0xC0, 0xF0, 0x98, 0xCE, 0xEF, - 0x80, 0xF7, 0x62, 0x72, 0x34, 0x34, 0x3C, 0x18, 0x18, 0x10, 0x10, 0x10, - 0xE0, 0xE0, 0xFF, 0x1C, 0x70, 0xE3, 0x87, 0x1C, 0x71, 0xFE, 0x19, 0x8C, - 0x63, 0x18, 0xCC, 0x61, 0x8C, 0x63, 0x18, 0xC3, 0xFF, 0xF8, 0xC3, 0x18, - 0xC6, 0x31, 0x86, 0x33, 0x18, 0xC6, 0x31, 0x98, 0xF0, 0x8E}; - -const GFXglyph FreeSerifBold9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 3, 12, 6, 1, -11}, // 0x21 '!' - {5, 6, 5, 10, 2, -11}, // 0x22 '"' - {9, 9, 13, 9, 0, -12}, // 0x23 '#' - {24, 8, 14, 9, 1, -12}, // 0x24 '$' - {38, 14, 12, 18, 2, -11}, // 0x25 '%' - {59, 13, 12, 15, 1, -11}, // 0x26 '&' - {79, 2, 5, 5, 1, -11}, // 0x27 ''' - {81, 4, 15, 6, 1, -11}, // 0x28 '(' - {89, 4, 15, 6, 1, -11}, // 0x29 ')' - {97, 7, 7, 9, 2, -11}, // 0x2A '*' - {104, 9, 9, 12, 1, -8}, // 0x2B '+' - {115, 3, 6, 4, 1, -2}, // 0x2C ',' - {118, 4, 2, 6, 1, -4}, // 0x2D '-' - {119, 3, 3, 4, 1, -2}, // 0x2E '.' - {121, 6, 13, 5, 0, -11}, // 0x2F '/' - {131, 9, 12, 9, 0, -11}, // 0x30 '0' - {145, 6, 12, 9, 1, -11}, // 0x31 '1' - {154, 9, 12, 9, 0, -11}, // 0x32 '2' - {168, 8, 12, 9, 0, -11}, // 0x33 '3' - {180, 8, 12, 9, 1, -11}, // 0x34 '4' - {192, 8, 12, 9, 1, -11}, // 0x35 '5' - {204, 8, 12, 9, 1, -11}, // 0x36 '6' - {216, 9, 12, 9, 0, -11}, // 0x37 '7' - {230, 8, 12, 9, 1, -11}, // 0x38 '8' - {242, 9, 12, 9, 0, -11}, // 0x39 '9' - {256, 3, 9, 6, 1, -8}, // 0x3A ':' - {260, 3, 12, 6, 2, -8}, // 0x3B ';' - {265, 10, 10, 12, 1, -9}, // 0x3C '<' - {278, 10, 5, 12, 1, -6}, // 0x3D '=' - {285, 10, 10, 12, 1, -8}, // 0x3E '>' - {298, 7, 12, 9, 1, -11}, // 0x3F '?' - {309, 13, 12, 17, 2, -11}, // 0x40 '@' - {329, 13, 12, 13, 0, -11}, // 0x41 'A' - {349, 11, 12, 12, 0, -11}, // 0x42 'B' - {366, 11, 12, 13, 1, -11}, // 0x43 'C' - {383, 11, 12, 13, 1, -11}, // 0x44 'D' - {400, 11, 12, 12, 1, -11}, // 0x45 'E' - {417, 10, 12, 11, 1, -11}, // 0x46 'F' - {432, 12, 12, 14, 1, -11}, // 0x47 'G' - {450, 12, 12, 14, 1, -11}, // 0x48 'H' - {468, 5, 12, 7, 1, -11}, // 0x49 'I' - {476, 8, 14, 9, 0, -11}, // 0x4A 'J' - {490, 13, 12, 14, 1, -11}, // 0x4B 'K' - {510, 11, 12, 12, 1, -11}, // 0x4C 'L' - {527, 16, 12, 17, 0, -11}, // 0x4D 'M' - {551, 11, 12, 13, 1, -11}, // 0x4E 'N' - {568, 12, 12, 14, 1, -11}, // 0x4F 'O' - {586, 10, 12, 11, 1, -11}, // 0x50 'P' - {601, 12, 15, 14, 1, -11}, // 0x51 'Q' - {624, 12, 12, 13, 1, -11}, // 0x52 'R' - {642, 8, 12, 10, 1, -11}, // 0x53 'S' - {654, 12, 12, 12, 0, -11}, // 0x54 'T' - {672, 11, 12, 13, 1, -11}, // 0x55 'U' - {689, 13, 13, 13, 0, -11}, // 0x56 'V' - {711, 18, 12, 18, 0, -11}, // 0x57 'W' - {738, 13, 12, 13, 0, -11}, // 0x58 'X' - {758, 13, 12, 13, 0, -11}, // 0x59 'Y' - {778, 11, 12, 12, 1, -11}, // 0x5A 'Z' - {795, 4, 15, 6, 1, -11}, // 0x5B '[' - {803, 6, 13, 5, 0, -11}, // 0x5C '\' - {813, 4, 15, 6, 1, -11}, // 0x5D ']' - {821, 8, 7, 10, 1, -11}, // 0x5E '^' - {828, 9, 1, 9, 0, 3}, // 0x5F '_' - {830, 4, 3, 6, 0, -12}, // 0x60 '`' - {832, 9, 9, 9, 0, -8}, // 0x61 'a' - {843, 10, 12, 10, 0, -11}, // 0x62 'b' - {858, 7, 9, 8, 0, -8}, // 0x63 'c' - {866, 10, 12, 10, 0, -11}, // 0x64 'd' - {881, 8, 9, 8, 0, -8}, // 0x65 'e' - {890, 7, 12, 7, 0, -11}, // 0x66 'f' - {901, 7, 13, 9, 1, -8}, // 0x67 'g' - {913, 10, 12, 10, 0, -11}, // 0x68 'h' - {928, 5, 12, 5, 0, -11}, // 0x69 'i' - {936, 6, 16, 7, 0, -11}, // 0x6A 'j' - {948, 10, 12, 10, 0, -11}, // 0x6B 'k' - {963, 5, 12, 5, 0, -11}, // 0x6C 'l' - {971, 15, 9, 15, 0, -8}, // 0x6D 'm' - {988, 10, 9, 10, 0, -8}, // 0x6E 'n' - {1000, 9, 9, 9, 0, -8}, // 0x6F 'o' - {1011, 10, 13, 10, 0, -8}, // 0x70 'p' - {1028, 10, 13, 10, 0, -8}, // 0x71 'q' - {1045, 8, 9, 8, 0, -8}, // 0x72 'r' - {1054, 5, 9, 7, 1, -8}, // 0x73 's' - {1060, 6, 11, 6, 0, -10}, // 0x74 't' - {1069, 10, 9, 10, 0, -8}, // 0x75 'u' - {1081, 9, 9, 9, 0, -8}, // 0x76 'v' - {1092, 12, 9, 13, 0, -8}, // 0x77 'w' - {1106, 9, 9, 9, 0, -8}, // 0x78 'x' - {1117, 8, 13, 9, 0, -8}, // 0x79 'y' - {1130, 7, 9, 8, 1, -8}, // 0x7A 'z' - {1138, 5, 16, 7, 0, -12}, // 0x7B '{' - {1148, 1, 13, 4, 1, -11}, // 0x7C '|' - {1150, 5, 16, 7, 2, -12}, // 0x7D '}' - {1160, 8, 2, 9, 1, -4}}; // 0x7E '~' - -const GFXfont FreeSerifBold9pt7b PROGMEM = { - (uint8_t *)FreeSerifBold9pt7bBitmaps, (GFXglyph *)FreeSerifBold9pt7bGlyphs, - 0x20, 0x7E, 22}; - -// Approx. 1834 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h deleted file mode 100644 index d6674ce..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h +++ /dev/null @@ -1,294 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic12pt7bBitmaps[] PROGMEM = { - 0x07, 0x07, 0x07, 0x0F, 0x0E, 0x0E, 0x0C, 0x0C, 0x08, 0x18, 0x10, 0x00, - 0x00, 0x60, 0xF0, 0xF0, 0x60, 0x61, 0xF1, 0xF8, 0xF8, 0x6C, 0x34, 0x12, - 0x08, 0x01, 0x8C, 0x06, 0x60, 0x31, 0x80, 0xCC, 0x06, 0x30, 0xFF, 0xF0, - 0xC6, 0x03, 0x18, 0x0C, 0xC0, 0x63, 0x0F, 0xFF, 0x0C, 0x60, 0x33, 0x01, - 0x8C, 0x06, 0x30, 0x19, 0x80, 0x00, 0x80, 0x08, 0x07, 0xC1, 0x96, 0x31, - 0x33, 0x13, 0x3A, 0x23, 0xE0, 0x1E, 0x01, 0xF0, 0x07, 0x80, 0x7C, 0x05, - 0xC4, 0xCC, 0x48, 0xCC, 0x8C, 0xF8, 0x83, 0x30, 0x1E, 0x01, 0x00, 0x00, - 0x02, 0x07, 0x83, 0x03, 0x9F, 0x81, 0xC4, 0x20, 0x71, 0x10, 0x3C, 0x44, - 0x0E, 0x22, 0x03, 0x88, 0x80, 0xE4, 0x40, 0x1E, 0x31, 0xE0, 0x08, 0xE4, - 0x06, 0x71, 0x01, 0x3C, 0x40, 0x8E, 0x10, 0x23, 0x88, 0x10, 0xE2, 0x04, - 0x39, 0x02, 0x07, 0x80, 0x00, 0xF0, 0x01, 0x98, 0x03, 0x98, 0x03, 0x98, - 0x03, 0xB0, 0x03, 0xE0, 0x03, 0x80, 0x0F, 0x9F, 0x19, 0xCE, 0x31, 0xCC, - 0x61, 0xC8, 0xE1, 0xC8, 0xE0, 0xF0, 0xE0, 0xE0, 0xF0, 0x70, 0x78, 0x79, - 0x3F, 0xBE, 0x7F, 0xED, 0x20, 0x02, 0x08, 0x20, 0xC3, 0x0E, 0x18, 0x30, - 0xE1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x20, 0x40, 0x80, 0x81, 0x01, 0x00, - 0x10, 0x10, 0x20, 0x20, 0x40, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x70, 0xE1, - 0x83, 0x0C, 0x18, 0x61, 0x86, 0x00, 0x00, 0x0C, 0x33, 0x6C, 0x9B, 0xAE, - 0x1C, 0x3F, 0xEC, 0x9B, 0x36, 0x0C, 0x02, 0x00, 0x06, 0x00, 0x60, 0x06, - 0x00, 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x06, 0x00, 0x60, 0x06, - 0x00, 0x60, 0x31, 0xCE, 0x31, 0x08, 0x98, 0xFF, 0xFF, 0xC0, 0x6F, 0xF6, - 0x01, 0x80, 0x60, 0x30, 0x0C, 0x07, 0x01, 0x80, 0xE0, 0x30, 0x1C, 0x06, - 0x01, 0x80, 0xC0, 0x30, 0x18, 0x06, 0x03, 0x00, 0x03, 0x81, 0xC8, 0x71, - 0x1C, 0x33, 0x86, 0xE1, 0xDC, 0x3B, 0x87, 0xE0, 0xFC, 0x3B, 0x87, 0x70, - 0xEC, 0x39, 0x87, 0x31, 0xC2, 0x30, 0x3C, 0x00, 0x01, 0xC3, 0xF0, 0x38, - 0x0E, 0x03, 0x81, 0xE0, 0x70, 0x1C, 0x0F, 0x03, 0x80, 0xE0, 0x38, 0x1E, - 0x07, 0x01, 0xC0, 0xF0, 0xFF, 0x80, 0x07, 0x81, 0xF8, 0x47, 0x90, 0x70, - 0x0E, 0x01, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x60, 0x18, 0x06, 0x01, 0x80, - 0x40, 0x8F, 0xF3, 0xFC, 0xFF, 0x80, 0x07, 0xC3, 0x3C, 0x03, 0x80, 0x70, - 0x0C, 0x03, 0x81, 0xC0, 0xFC, 0x07, 0xC0, 0x78, 0x07, 0x00, 0xE0, 0x1C, - 0x03, 0x30, 0xE7, 0x10, 0x7C, 0x00, 0x00, 0x10, 0x01, 0x80, 0x3C, 0x03, - 0xE0, 0x2E, 0x02, 0x70, 0x23, 0x82, 0x38, 0x21, 0xC2, 0x0E, 0x1F, 0xF9, - 0xFF, 0xC0, 0x38, 0x01, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0xF0, 0x7E, 0x0F, - 0xE0, 0x80, 0x08, 0x01, 0xE0, 0x1F, 0x83, 0xF8, 0x03, 0xC0, 0x1C, 0x00, - 0xC0, 0x0C, 0x00, 0xC0, 0x08, 0x61, 0x8F, 0x30, 0x7C, 0x00, 0x00, 0x60, - 0x78, 0x1C, 0x0F, 0x01, 0xC0, 0x70, 0x1F, 0xC3, 0x8C, 0xE1, 0xDC, 0x3B, - 0x87, 0x61, 0xEC, 0x3D, 0x87, 0x31, 0xE2, 0x38, 0x3C, 0x00, 0x3F, 0xEF, - 0xF9, 0xFF, 0x60, 0xC8, 0x18, 0x06, 0x00, 0x80, 0x30, 0x0C, 0x01, 0x80, - 0x60, 0x1C, 0x03, 0x00, 0xC0, 0x18, 0x06, 0x00, 0x03, 0x81, 0x88, 0x61, - 0x8C, 0x31, 0x86, 0x38, 0xC7, 0xB0, 0x78, 0x0F, 0x86, 0x71, 0x87, 0x60, - 0x6C, 0x0D, 0x81, 0xB0, 0x63, 0x18, 0x3E, 0x00, 0x07, 0x81, 0xC8, 0x71, - 0x8E, 0x33, 0xC6, 0x70, 0xCE, 0x39, 0xC7, 0x38, 0xE3, 0x38, 0x3F, 0x01, - 0xC0, 0x38, 0x0E, 0x03, 0x81, 0xC0, 0xE0, 0x00, 0x0C, 0x3C, 0x78, 0x60, - 0x00, 0x00, 0x00, 0x61, 0xE3, 0xC3, 0x00, 0x0E, 0x0F, 0x0F, 0x0E, 0x00, - 0x00, 0x00, 0x00, 0x38, 0x38, 0x38, 0x18, 0x10, 0x20, 0x40, 0x00, 0x10, - 0x07, 0x01, 0xF0, 0x7C, 0x3F, 0x0F, 0x80, 0xE0, 0x0F, 0x80, 0x3E, 0x00, - 0xF8, 0x03, 0xE0, 0x07, 0x00, 0x10, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0x80, 0x07, 0x00, 0x3F, 0x00, 0x3E, 0x00, 0x7C, 0x00, - 0xF8, 0x01, 0xE0, 0x1F, 0x07, 0xE0, 0xF8, 0x1F, 0x01, 0xE0, 0x0C, 0x00, - 0x00, 0x1E, 0x19, 0x8C, 0xE6, 0x70, 0x38, 0x38, 0x1C, 0x18, 0x18, 0x08, - 0x08, 0x00, 0x00, 0x03, 0x03, 0xC1, 0xE0, 0x60, 0x00, 0x03, 0xF0, 0x07, - 0x06, 0x06, 0x00, 0x86, 0x0E, 0x66, 0x0D, 0xDB, 0x0C, 0xE7, 0x06, 0x33, - 0x83, 0x31, 0xC3, 0x18, 0xE1, 0x8C, 0x70, 0xCC, 0x4C, 0x66, 0x46, 0x1F, - 0xC1, 0x80, 0x00, 0x30, 0x10, 0x07, 0xF0, 0x00, 0x10, 0x00, 0x30, 0x00, - 0x70, 0x00, 0x70, 0x00, 0xF0, 0x01, 0xF0, 0x01, 0x78, 0x03, 0x78, 0x02, - 0x38, 0x04, 0x38, 0x0C, 0x38, 0x0F, 0xF8, 0x18, 0x3C, 0x30, 0x3C, 0x20, - 0x3C, 0x60, 0x3C, 0xF8, 0x7F, 0x1F, 0xFC, 0x07, 0x9E, 0x07, 0x0F, 0x07, - 0x0F, 0x0F, 0x0F, 0x0F, 0x1E, 0x0E, 0x3C, 0x0F, 0xE0, 0x1E, 0x3C, 0x1E, - 0x1E, 0x1C, 0x1E, 0x3C, 0x1E, 0x3C, 0x1E, 0x3C, 0x3E, 0x38, 0x3C, 0x7C, - 0x78, 0xFF, 0xE0, 0x01, 0xF2, 0x0E, 0x1C, 0x38, 0x18, 0xE0, 0x33, 0xC0, - 0x4F, 0x00, 0x9E, 0x00, 0x7C, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, - 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x1E, 0x04, 0x1E, 0x30, 0x0F, 0x80, 0x1F, - 0xFC, 0x01, 0xE3, 0xC0, 0x70, 0x78, 0x1C, 0x0E, 0x0F, 0x03, 0xC3, 0xC0, - 0xF0, 0xE0, 0x3C, 0x38, 0x0F, 0x1E, 0x03, 0xC7, 0x81, 0xF1, 0xC0, 0x78, - 0xF0, 0x1E, 0x3C, 0x0F, 0x0F, 0x03, 0xC3, 0x81, 0xC1, 0xE1, 0xE0, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0x83, 0xC1, 0xC1, 0xC0, 0x40, 0xE0, 0x20, 0xF0, - 0x00, 0x78, 0xC0, 0x38, 0x40, 0x1F, 0xE0, 0x1E, 0x70, 0x0F, 0x18, 0x07, - 0x08, 0x03, 0x84, 0x03, 0xC0, 0x61, 0xE0, 0x20, 0xE0, 0x30, 0xF8, 0x78, - 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x07, 0x87, 0x07, 0x02, 0x07, 0x02, 0x0F, - 0x00, 0x0F, 0x18, 0x0E, 0x10, 0x0F, 0xF0, 0x1E, 0x70, 0x1E, 0x30, 0x1C, - 0x20, 0x1C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x7C, 0x00, 0xFE, - 0x00, 0x01, 0xF9, 0x03, 0xC3, 0x83, 0x81, 0xC3, 0x80, 0x43, 0xC0, 0x23, - 0xC0, 0x01, 0xE0, 0x01, 0xF0, 0x00, 0xF0, 0x3F, 0xF8, 0x0F, 0x3C, 0x07, - 0x9E, 0x03, 0xCF, 0x01, 0xC3, 0x80, 0xE1, 0xE0, 0xF0, 0x78, 0x70, 0x0F, - 0xE0, 0x00, 0x1F, 0xE7, 0xF0, 0x78, 0x3C, 0x07, 0x83, 0xC0, 0x70, 0x3C, - 0x0F, 0x03, 0x80, 0xF0, 0x78, 0x0E, 0x07, 0x80, 0xE0, 0x70, 0x1F, 0xFF, - 0x01, 0xE0, 0xF0, 0x1C, 0x0F, 0x03, 0xC0, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, - 0xE0, 0x38, 0x1E, 0x07, 0xC3, 0xE0, 0xFE, 0x7F, 0x00, 0x1F, 0xC1, 0xE0, - 0x70, 0x1C, 0x0F, 0x03, 0xC0, 0xE0, 0x38, 0x1E, 0x07, 0x81, 0xC0, 0x70, - 0x3C, 0x0F, 0x03, 0x81, 0xF0, 0xFE, 0x00, 0x01, 0xFC, 0x03, 0xC0, 0x0F, - 0x00, 0x38, 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x3C, 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x0E, 0x70, 0x3B, 0xC0, 0xCE, - 0x01, 0xF0, 0x00, 0x1F, 0xEF, 0x83, 0xC1, 0x81, 0xC1, 0x80, 0xE1, 0x80, - 0xF1, 0x80, 0x79, 0x00, 0x39, 0x00, 0x1F, 0x80, 0x1F, 0xE0, 0x0F, 0x70, - 0x07, 0x3C, 0x07, 0x8E, 0x03, 0xC7, 0x01, 0xE3, 0xC0, 0xE0, 0xE0, 0xF8, - 0x78, 0xFE, 0xFE, 0x00, 0x1F, 0xE0, 0x0F, 0x00, 0x1C, 0x00, 0x38, 0x00, - 0xF0, 0x01, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x70, - 0x00, 0xE0, 0x03, 0xC0, 0x27, 0x00, 0xCE, 0x03, 0x3C, 0x1E, 0xFF, 0xFC, - 0x0F, 0x80, 0x7E, 0x0F, 0x00, 0xF0, 0x1E, 0x03, 0xE0, 0x3C, 0x0F, 0x80, - 0xB8, 0x17, 0x01, 0x70, 0x5E, 0x02, 0xF1, 0xBC, 0x05, 0xE2, 0x70, 0x11, - 0xC8, 0xE0, 0x23, 0xB3, 0xC0, 0x47, 0x47, 0x81, 0x0F, 0x8E, 0x02, 0x1E, - 0x1C, 0x04, 0x38, 0x78, 0x08, 0x70, 0xF0, 0x30, 0xC3, 0xE0, 0xF9, 0x8F, - 0xE0, 0x1F, 0x03, 0xE0, 0xF0, 0x38, 0x1E, 0x02, 0x03, 0xE0, 0xC0, 0xBC, - 0x10, 0x13, 0xC2, 0x02, 0x78, 0x40, 0x47, 0x90, 0x10, 0xF2, 0x02, 0x0F, - 0x40, 0x41, 0xE8, 0x18, 0x1E, 0x02, 0x03, 0xC0, 0x40, 0x38, 0x08, 0x06, - 0x03, 0x00, 0x40, 0x10, 0x08, 0x00, 0x01, 0xF8, 0x07, 0x1C, 0x0E, 0x0E, - 0x1E, 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x78, 0x0F, 0x78, 0x0F, 0xF8, 0x1F, - 0xF0, 0x1E, 0xF0, 0x1E, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x78, 0x70, 0x70, - 0x38, 0xE0, 0x1F, 0x80, 0x1F, 0xFC, 0x07, 0x9E, 0x07, 0x0F, 0x07, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0E, 0x1E, 0x0E, 0x3C, 0x1F, 0xF0, 0x1E, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x7C, 0x00, - 0xFE, 0x00, 0x01, 0xF8, 0x07, 0x1C, 0x0E, 0x0E, 0x1E, 0x0F, 0x3C, 0x0F, - 0x3C, 0x0F, 0x78, 0x0F, 0x78, 0x1F, 0xF8, 0x1F, 0xF0, 0x1E, 0xF0, 0x1E, - 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x78, 0x70, 0x70, 0x39, 0xC0, 0x0E, 0x00, - 0x08, 0x02, 0x3F, 0x04, 0x7F, 0xF8, 0x83, 0xF0, 0x1F, 0xF8, 0x07, 0x9E, - 0x07, 0x8F, 0x07, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x1E, 0x0E, 0x3C, - 0x1F, 0xF0, 0x1E, 0xF0, 0x1C, 0xF0, 0x3C, 0xF0, 0x3C, 0x78, 0x3C, 0x78, - 0x3C, 0x78, 0x7C, 0x3C, 0xFE, 0x3E, 0x07, 0x91, 0xC7, 0x18, 0x73, 0x82, - 0x38, 0x23, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x01, 0xE0, 0x1E, - 0x40, 0xE4, 0x0E, 0x60, 0xCE, 0x1C, 0x9F, 0x00, 0x7F, 0xFE, 0xE7, 0x9D, - 0x0E, 0x16, 0x3C, 0x20, 0x78, 0x40, 0xE0, 0x01, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x1C, 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0xFF, 0x00, 0x7F, 0x1F, 0x3C, 0x0E, 0x38, 0x04, 0x38, 0x0C, - 0x78, 0x08, 0x78, 0x08, 0x70, 0x08, 0x70, 0x10, 0xF0, 0x10, 0xF0, 0x10, - 0xF0, 0x10, 0xF0, 0x20, 0xF0, 0x20, 0xF0, 0x20, 0xF0, 0x40, 0x78, 0xC0, - 0x3F, 0x00, 0xFF, 0x1F, 0x3C, 0x06, 0x3C, 0x04, 0x3C, 0x08, 0x3C, 0x08, - 0x3C, 0x10, 0x1C, 0x20, 0x1C, 0x20, 0x1E, 0x40, 0x1E, 0x80, 0x1E, 0x80, - 0x1F, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x08, 0x00, 0xFE, 0x7C, - 0x79, 0xE1, 0xC1, 0x8F, 0x0E, 0x08, 0x78, 0x70, 0x43, 0xC7, 0x84, 0x1E, - 0x3E, 0x20, 0x72, 0xF2, 0x03, 0x97, 0x90, 0x1D, 0x1D, 0x00, 0xE8, 0xE8, - 0x07, 0x87, 0x80, 0x3C, 0x3C, 0x01, 0xC1, 0xC0, 0x0E, 0x0E, 0x00, 0x20, - 0x60, 0x01, 0x02, 0x00, 0x1F, 0xCF, 0x83, 0xC1, 0x81, 0xE1, 0x80, 0x71, - 0x80, 0x39, 0x80, 0x1F, 0x80, 0x07, 0x80, 0x03, 0x80, 0x01, 0xE0, 0x01, - 0xF0, 0x00, 0xB8, 0x00, 0x9C, 0x00, 0x8F, 0x00, 0x83, 0x80, 0xC1, 0xC0, - 0xE0, 0xF0, 0xF9, 0xFE, 0x00, 0xFE, 0x7C, 0xE0, 0x63, 0x81, 0x0F, 0x08, - 0x1C, 0x40, 0x71, 0x01, 0xE8, 0x03, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xE0, - 0x07, 0x80, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0F, 0x00, 0xFF, 0x00, 0x1F, - 0xFE, 0x38, 0x78, 0x60, 0xF1, 0x83, 0xC2, 0x0F, 0x00, 0x1E, 0x00, 0x78, - 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x47, - 0x81, 0x1F, 0x06, 0x3C, 0x3C, 0xFF, 0xF0, 0x07, 0xC1, 0x80, 0xE0, 0x30, - 0x0C, 0x03, 0x01, 0xC0, 0x60, 0x18, 0x06, 0x03, 0x80, 0xC0, 0x30, 0x0C, - 0x07, 0x01, 0xC0, 0x60, 0x18, 0x0E, 0x03, 0xE0, 0xC3, 0x06, 0x18, 0x61, - 0x83, 0x0C, 0x30, 0xC1, 0x86, 0x18, 0x60, 0xC3, 0x0F, 0x81, 0xC0, 0xE0, - 0x60, 0x30, 0x18, 0x1C, 0x0C, 0x06, 0x03, 0x03, 0x81, 0x80, 0xC0, 0x60, - 0x70, 0x38, 0x18, 0x0C, 0x0E, 0x1F, 0x00, 0x0C, 0x07, 0x81, 0xE0, 0xDC, - 0x33, 0x18, 0xC6, 0x1B, 0x06, 0xC0, 0xC0, 0xFF, 0xF0, 0xC7, 0x0C, 0x30, - 0x07, 0x70, 0xCE, 0x1C, 0xE3, 0x8E, 0x70, 0xC7, 0x0C, 0x71, 0xCE, 0x1C, - 0xE1, 0x8E, 0x79, 0xE9, 0xA7, 0x1C, 0x02, 0x07, 0xC0, 0x38, 0x06, 0x01, - 0xC0, 0x38, 0x06, 0x71, 0xF7, 0x38, 0xE7, 0x1C, 0xC3, 0xB8, 0x77, 0x1C, - 0xE3, 0xB8, 0xE7, 0x18, 0xE6, 0x0F, 0x80, 0x07, 0x0C, 0xCE, 0x66, 0x07, - 0x03, 0x83, 0x81, 0xC0, 0xE0, 0x70, 0xBC, 0x87, 0x80, 0x00, 0x08, 0x03, - 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x70, 0x01, 0xC0, 0x77, 0x03, 0x3C, 0x18, - 0xE0, 0xE3, 0x87, 0x0E, 0x1C, 0x70, 0x71, 0xC3, 0x87, 0x0E, 0x3C, 0x38, - 0xE8, 0xE5, 0xA1, 0xE7, 0x00, 0x07, 0x0C, 0xCE, 0x66, 0x37, 0x33, 0xBB, - 0xB1, 0xE0, 0xE0, 0x70, 0xB8, 0x87, 0x80, 0x00, 0x38, 0x01, 0xB0, 0x0C, - 0xC0, 0x30, 0x01, 0xC0, 0x07, 0x00, 0x7E, 0x00, 0xE0, 0x03, 0x80, 0x0E, - 0x00, 0x30, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x03, 0x80, 0x0E, - 0x00, 0x38, 0x00, 0xC0, 0x33, 0x00, 0xD8, 0x01, 0xC0, 0x00, 0x03, 0x80, - 0x73, 0xC7, 0x1C, 0x38, 0xE1, 0xCF, 0x06, 0x70, 0x1E, 0x01, 0x00, 0x1C, - 0x00, 0xF8, 0x07, 0xF0, 0xC7, 0x8C, 0x0C, 0x60, 0x63, 0x86, 0x07, 0xE0, - 0x01, 0x00, 0xF8, 0x01, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x31, 0xC3, - 0xBE, 0x1E, 0x70, 0xE3, 0x8F, 0x38, 0x71, 0xC3, 0x8E, 0x1C, 0xE1, 0xC7, - 0x0E, 0x3A, 0x71, 0xD3, 0x0F, 0x00, 0x1C, 0x71, 0xC0, 0x00, 0x6F, 0x8E, - 0x31, 0xC7, 0x18, 0x63, 0x8E, 0xBC, 0xE0, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0x00, 0x00, 0x0F, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x70, 0x0E, 0x01, 0xC0, - 0x38, 0x0E, 0x01, 0xC0, 0x38, 0x06, 0x01, 0xC3, 0x38, 0x6E, 0x07, 0x80, - 0x01, 0x00, 0xF8, 0x01, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x33, 0xE3, - 0x8C, 0x1C, 0xC0, 0xE4, 0x06, 0x40, 0x7E, 0x03, 0xF0, 0x1D, 0x81, 0xCE, - 0x0E, 0x72, 0x71, 0xA3, 0x8E, 0x00, 0x06, 0x7C, 0x70, 0xE1, 0xC3, 0x0E, - 0x1C, 0x38, 0x61, 0xC3, 0x87, 0x0C, 0x38, 0x72, 0xE9, 0xE0, 0x3C, 0x73, - 0xC7, 0x7D, 0x71, 0xE7, 0x9C, 0xF1, 0xCE, 0x3C, 0xF3, 0x8E, 0x39, 0xC3, - 0x8E, 0x71, 0xC3, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xD7, 0x1C, 0x7B, 0x8E, - 0x1C, 0x3C, 0xF1, 0xD7, 0x1E, 0x73, 0xCE, 0x3C, 0xE3, 0x8E, 0x39, 0xC7, - 0x9C, 0x71, 0xC7, 0x1D, 0x71, 0xEE, 0x1C, 0x0F, 0x06, 0x63, 0x9D, 0xC7, - 0x71, 0xF8, 0x7E, 0x3F, 0x8E, 0xE3, 0xB9, 0xC6, 0x60, 0xF0, 0x0F, 0x38, - 0x1F, 0x70, 0x71, 0xC1, 0xC7, 0x0E, 0x1C, 0x38, 0xF0, 0xE3, 0x83, 0x8E, - 0x1C, 0x70, 0x71, 0xC1, 0xCE, 0x07, 0xE0, 0x38, 0x00, 0xE0, 0x03, 0x80, - 0x3F, 0x00, 0x07, 0x70, 0xCE, 0x18, 0xE3, 0x8E, 0x70, 0xE7, 0x1C, 0xF1, - 0xCE, 0x1C, 0xE3, 0x8E, 0x38, 0xE7, 0x87, 0xB0, 0x07, 0x00, 0x70, 0x0F, - 0x03, 0xF8, 0x0D, 0xDF, 0x71, 0xAC, 0xF0, 0x38, 0x0E, 0x03, 0x81, 0xC0, - 0x70, 0x1C, 0x0E, 0x00, 0x1D, 0x99, 0x8C, 0x46, 0x23, 0x80, 0xE0, 0x70, - 0x1C, 0x06, 0x23, 0x19, 0x17, 0x00, 0x0C, 0x10, 0xE3, 0xF3, 0x86, 0x1C, - 0x38, 0x71, 0xC3, 0x87, 0x0E, 0x9E, 0x38, 0x00, 0xF8, 0xE3, 0x8E, 0x38, - 0xC3, 0x9C, 0x71, 0xC7, 0x18, 0x71, 0x87, 0x38, 0xE3, 0x8E, 0xFA, 0xF3, - 0xAE, 0x3C, 0xF0, 0xDC, 0x33, 0x0C, 0xC2, 0x31, 0x8C, 0xC3, 0x60, 0xF0, - 0x38, 0x0C, 0x02, 0x00, 0xE0, 0x86, 0xE3, 0x0C, 0xC6, 0x19, 0x9C, 0x23, - 0x78, 0xC7, 0xF9, 0x0E, 0x74, 0x1C, 0xF0, 0x31, 0xC0, 0x43, 0x00, 0x84, - 0x00, 0x0E, 0x31, 0xF3, 0x83, 0xA0, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x1C, - 0x00, 0xE0, 0x0B, 0x02, 0x5D, 0x3C, 0xF1, 0xC3, 0x00, 0x04, 0x67, 0x8C, - 0x79, 0x87, 0x10, 0xE2, 0x1C, 0x81, 0x90, 0x3A, 0x07, 0x80, 0xF0, 0x1C, - 0x03, 0x00, 0x40, 0x08, 0x32, 0x07, 0x80, 0x3F, 0xCF, 0xE6, 0x30, 0x08, - 0x04, 0x02, 0x01, 0x00, 0xC0, 0x30, 0x1E, 0x0F, 0x98, 0x76, 0x07, 0x00, - 0x01, 0xE0, 0x70, 0x1C, 0x03, 0x80, 0x60, 0x1C, 0x03, 0x80, 0x60, 0x0C, - 0x03, 0x80, 0xF0, 0x3C, 0x07, 0x00, 0x40, 0x0C, 0x01, 0x80, 0x70, 0x0E, - 0x01, 0xC0, 0x30, 0x03, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0xE0, - 0x18, 0x06, 0x01, 0x80, 0xE0, 0x38, 0x0C, 0x03, 0x00, 0xC0, 0x10, 0x1F, - 0x07, 0x03, 0x80, 0xE0, 0x30, 0x0C, 0x07, 0x01, 0x80, 0xE0, 0xE0, 0x00, - 0x38, 0x0F, 0xCD, 0x1F, 0x80, 0xE0}; - -const GFXglyph FreeSerifBoldItalic12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 8, 17, 9, 2, -15}, // 0x21 '!' - {17, 9, 7, 13, 4, -15}, // 0x22 '"' - {25, 14, 16, 12, -1, -15}, // 0x23 '#' - {53, 12, 20, 12, 0, -17}, // 0x24 '$' - {83, 18, 18, 20, 1, -16}, // 0x25 '%' - {124, 16, 17, 19, 0, -15}, // 0x26 '&' - {158, 3, 7, 7, 3, -15}, // 0x27 ''' - {161, 7, 21, 8, 1, -15}, // 0x28 '(' - {180, 7, 21, 8, -1, -15}, // 0x29 ')' - {199, 10, 10, 12, 1, -15}, // 0x2A '*' - {212, 12, 12, 14, 1, -11}, // 0x2B '+' - {230, 5, 8, 6, -2, -3}, // 0x2C ',' - {235, 6, 3, 8, 0, -6}, // 0x2D '-' - {238, 4, 4, 6, 0, -2}, // 0x2E '.' - {240, 10, 16, 8, 0, -15}, // 0x2F '/' - {260, 11, 17, 12, 0, -15}, // 0x30 '0' - {284, 10, 17, 12, 0, -15}, // 0x31 '1' - {306, 11, 17, 12, 0, -15}, // 0x32 '2' - {330, 11, 17, 12, 0, -15}, // 0x33 '3' - {354, 13, 16, 12, 0, -15}, // 0x34 '4' - {380, 12, 17, 12, 0, -15}, // 0x35 '5' - {406, 11, 17, 12, 1, -15}, // 0x36 '6' - {430, 11, 16, 12, 2, -15}, // 0x37 '7' - {452, 11, 17, 12, 0, -15}, // 0x38 '8' - {476, 11, 17, 12, 0, -15}, // 0x39 '9' - {500, 7, 12, 6, 0, -10}, // 0x3A ':' - {511, 8, 15, 6, -1, -10}, // 0x3B ';' - {526, 12, 13, 14, 1, -12}, // 0x3C '<' - {546, 12, 6, 14, 2, -8}, // 0x3D '=' - {555, 13, 13, 14, 1, -12}, // 0x3E '>' - {577, 9, 17, 12, 2, -15}, // 0x3F '?' - {597, 17, 16, 20, 1, -15}, // 0x40 '@' - {631, 16, 17, 17, 0, -15}, // 0x41 'A' - {665, 16, 17, 15, 0, -15}, // 0x42 'B' - {699, 15, 17, 15, 1, -15}, // 0x43 'C' - {731, 18, 17, 17, 0, -15}, // 0x44 'D' - {770, 17, 17, 15, 0, -15}, // 0x45 'E' - {807, 16, 17, 15, 0, -15}, // 0x46 'F' - {841, 17, 17, 17, 1, -15}, // 0x47 'G' - {878, 20, 17, 18, 0, -15}, // 0x48 'H' - {921, 10, 17, 9, 0, -15}, // 0x49 'I' - {943, 14, 18, 12, 0, -15}, // 0x4A 'J' - {975, 17, 17, 16, 0, -15}, // 0x4B 'K' - {1012, 15, 17, 15, 0, -15}, // 0x4C 'L' - {1044, 23, 17, 21, 0, -15}, // 0x4D 'M' - {1093, 19, 17, 17, 0, -15}, // 0x4E 'N' - {1134, 16, 17, 16, 1, -15}, // 0x4F 'O' - {1168, 16, 17, 14, 0, -15}, // 0x50 'P' - {1202, 16, 21, 16, 1, -15}, // 0x51 'Q' - {1244, 16, 17, 16, 0, -15}, // 0x52 'R' - {1278, 12, 17, 12, 0, -15}, // 0x53 'S' - {1304, 15, 17, 14, 2, -15}, // 0x54 'T' - {1336, 16, 17, 17, 3, -15}, // 0x55 'U' - {1370, 16, 16, 17, 3, -15}, // 0x56 'V' - {1402, 21, 16, 22, 3, -15}, // 0x57 'W' - {1444, 17, 17, 17, 0, -15}, // 0x58 'X' - {1481, 14, 17, 15, 3, -15}, // 0x59 'Y' - {1511, 15, 17, 13, 0, -15}, // 0x5A 'Z' - {1543, 10, 20, 8, -1, -15}, // 0x5B '[' - {1568, 6, 16, 10, 3, -15}, // 0x5C '\' - {1580, 9, 20, 8, -1, -15}, // 0x5D ']' - {1603, 10, 9, 14, 2, -15}, // 0x5E '^' - {1615, 12, 1, 12, 0, 4}, // 0x5F '_' - {1617, 5, 4, 8, 2, -15}, // 0x60 '`' - {1620, 12, 12, 12, 0, -10}, // 0x61 'a' - {1638, 11, 18, 12, 1, -16}, // 0x62 'b' - {1663, 9, 12, 10, 1, -10}, // 0x63 'c' - {1677, 14, 18, 12, 0, -16}, // 0x64 'd' - {1709, 9, 12, 10, 1, -10}, // 0x65 'e' - {1723, 14, 22, 12, -2, -16}, // 0x66 'f' - {1762, 13, 16, 12, -1, -10}, // 0x67 'g' - {1788, 13, 18, 13, 0, -16}, // 0x68 'h' - {1818, 6, 17, 7, 1, -15}, // 0x69 'i' - {1831, 11, 21, 8, -2, -15}, // 0x6A 'j' - {1860, 13, 18, 12, 0, -16}, // 0x6B 'k' - {1890, 7, 18, 7, 1, -16}, // 0x6C 'l' - {1906, 18, 12, 18, 0, -10}, // 0x6D 'm' - {1933, 12, 12, 13, 0, -10}, // 0x6E 'n' - {1951, 10, 12, 11, 1, -10}, // 0x6F 'o' - {1966, 14, 16, 12, -2, -10}, // 0x70 'p' - {1994, 12, 16, 12, 0, -10}, // 0x71 'q' - {2018, 10, 11, 10, 0, -10}, // 0x72 'r' - {2032, 9, 12, 9, 0, -10}, // 0x73 's' - {2046, 7, 15, 7, 1, -13}, // 0x74 't' - {2060, 12, 12, 13, 1, -10}, // 0x75 'u' - {2078, 10, 11, 11, 1, -10}, // 0x76 'v' - {2092, 15, 11, 16, 1, -10}, // 0x77 'w' - {2113, 13, 12, 11, -1, -10}, // 0x78 'x' - {2133, 11, 16, 10, -1, -10}, // 0x79 'y' - {2155, 10, 13, 10, 0, -10}, // 0x7A 'z' - {2172, 11, 21, 8, 0, -16}, // 0x7B '{' - {2201, 2, 16, 6, 3, -15}, // 0x7C '|' - {2205, 10, 21, 8, -3, -16}, // 0x7D '}' - {2232, 11, 4, 14, 1, -7}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic12pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic12pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 2910 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h deleted file mode 100644 index 8e75b24..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h +++ /dev/null @@ -1,502 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic18pt7bBitmaps[] PROGMEM = { - 0x01, 0xC0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x3C, 0x07, - 0x80, 0xE0, 0x1C, 0x03, 0x00, 0x60, 0x0C, 0x03, 0x00, 0x60, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x07, 0x81, 0xF8, 0x3F, 0x07, 0xE0, 0x78, 0x00, 0x38, - 0x1D, 0xE0, 0xF7, 0x83, 0xDC, 0x0E, 0x70, 0x39, 0xC0, 0xE6, 0x03, 0x18, - 0x0C, 0x40, 0x23, 0x01, 0x80, 0x00, 0x38, 0x60, 0x07, 0x0E, 0x00, 0x70, - 0xC0, 0x06, 0x1C, 0x00, 0xE1, 0xC0, 0x0E, 0x38, 0x01, 0xC3, 0x81, 0xFF, - 0xFF, 0x1F, 0xFF, 0xE1, 0xFF, 0xFE, 0x03, 0x86, 0x00, 0x30, 0xE0, 0x07, - 0x0E, 0x00, 0x71, 0xC0, 0x0E, 0x1C, 0x0F, 0xFF, 0xF8, 0xFF, 0xFF, 0x0F, - 0xFF, 0xF0, 0x1C, 0x30, 0x01, 0x87, 0x00, 0x38, 0x70, 0x03, 0x0E, 0x00, - 0x70, 0xE0, 0x07, 0x0C, 0x00, 0xE1, 0xC0, 0x00, 0x00, 0x08, 0x00, 0x0C, - 0x00, 0x7E, 0x00, 0xFF, 0xC0, 0xF3, 0x70, 0x71, 0x9C, 0x70, 0xC6, 0x38, - 0x43, 0x1C, 0x61, 0x0F, 0x30, 0x87, 0xD8, 0x03, 0xF8, 0x00, 0xFE, 0x00, - 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, 0x01, 0xFC, 0x00, 0xDF, 0x10, 0x47, - 0x88, 0x63, 0xCC, 0x31, 0xE6, 0x10, 0xF3, 0x98, 0x71, 0xCC, 0x78, 0x7E, - 0x78, 0x07, 0xF8, 0x03, 0xF0, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x03, 0xC0, - 0x18, 0x01, 0xFE, 0x0F, 0x00, 0x7C, 0xFF, 0xC0, 0x1F, 0x0F, 0x98, 0x07, - 0xC1, 0x06, 0x00, 0xF8, 0x21, 0x80, 0x3E, 0x04, 0x30, 0x07, 0xC1, 0x8C, - 0x00, 0xF0, 0x21, 0x80, 0x1E, 0x0C, 0x60, 0x03, 0xC1, 0x0C, 0x00, 0x78, - 0xC3, 0x03, 0xC7, 0xF8, 0x61, 0xFC, 0x7C, 0x18, 0x7C, 0xC0, 0x06, 0x1F, - 0x08, 0x00, 0xC7, 0xC1, 0x00, 0x30, 0xF0, 0x20, 0x06, 0x3E, 0x04, 0x01, - 0x87, 0xC1, 0x00, 0x30, 0xF0, 0x20, 0x0C, 0x1E, 0x0C, 0x03, 0x03, 0xC1, - 0x00, 0x60, 0x3C, 0xC0, 0x18, 0x07, 0xF8, 0x03, 0x00, 0x7C, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x1E, 0x38, 0x00, 0x0E, 0x0E, 0x00, - 0x0F, 0x07, 0x00, 0x07, 0x83, 0x80, 0x03, 0xC3, 0x80, 0x01, 0xE3, 0x80, - 0x00, 0xF7, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7F, 0x0F, - 0xF0, 0xE7, 0x81, 0xE0, 0xE3, 0xE0, 0xE0, 0xE1, 0xF0, 0x60, 0xE0, 0x7C, - 0x60, 0xF0, 0x3E, 0x20, 0x78, 0x1F, 0xB0, 0x3C, 0x07, 0xF0, 0x1F, 0x03, - 0xF0, 0x0F, 0x80, 0xFC, 0x03, 0xF0, 0x7F, 0x8D, 0xFF, 0xEF, 0xFC, 0x7F, - 0xE3, 0xFC, 0x0F, 0xC0, 0x78, 0x00, 0x3B, 0xDE, 0xE7, 0x39, 0x8C, 0x46, - 0x00, 0x00, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x1C, 0x07, 0x01, 0xE0, - 0x38, 0x0F, 0x01, 0xC0, 0x38, 0x0F, 0x01, 0xE0, 0x38, 0x07, 0x00, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x06, - 0x00, 0xC0, 0x08, 0x00, 0x80, 0x10, 0x00, 0x06, 0x00, 0x40, 0x04, 0x00, - 0x80, 0x18, 0x01, 0x00, 0x30, 0x06, 0x00, 0xC0, 0x1C, 0x03, 0x80, 0x70, - 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x01, 0xE0, 0x3C, 0x07, 0x00, 0xE0, 0x3C, - 0x07, 0x00, 0xE0, 0x38, 0x06, 0x01, 0xC0, 0x70, 0x18, 0x06, 0x01, 0x80, - 0x00, 0x07, 0x00, 0x38, 0x01, 0xC1, 0x8E, 0x3E, 0x23, 0xF9, 0x3F, 0xEB, - 0xE0, 0xE0, 0xFF, 0xF7, 0x93, 0xF8, 0x9F, 0x8E, 0x60, 0x70, 0x03, 0x80, - 0x08, 0x00, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, - 0x00, 0x0E, 0x00, 0x07, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, - 0x01, 0xC0, 0x00, 0x1C, 0x7C, 0xF9, 0xF1, 0xE1, 0xC3, 0x0C, 0x30, 0xC2, - 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xE0, 0x7B, 0xFF, 0xFF, 0x78, 0x00, 0x1C, - 0x00, 0xE0, 0x03, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, - 0x01, 0xC0, 0x07, 0x00, 0x38, 0x00, 0xE0, 0x07, 0x80, 0x1C, 0x00, 0x70, - 0x03, 0x80, 0x0E, 0x00, 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0xE0, 0x00, 0x00, 0xF0, 0x07, 0x30, 0x1C, 0x30, - 0x78, 0x60, 0xE0, 0xE3, 0xC1, 0xCF, 0x83, 0x9E, 0x0F, 0x3C, 0x1E, 0xF8, - 0x3D, 0xE0, 0x7B, 0xC1, 0xFF, 0x83, 0xFF, 0x07, 0xBC, 0x0F, 0x78, 0x3E, - 0xF0, 0x7D, 0xE0, 0xF3, 0x81, 0xE7, 0x07, 0x8E, 0x0F, 0x0C, 0x3C, 0x18, - 0x70, 0x19, 0xC0, 0x1E, 0x00, 0x00, 0x06, 0x01, 0xF8, 0x1F, 0xF0, 0x03, - 0xE0, 0x07, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF0, 0x03, 0xE0, - 0x07, 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xE0, 0x07, - 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, - 0x0F, 0xC0, 0xFF, 0xF0, 0x00, 0xF8, 0x01, 0xFC, 0x03, 0xFE, 0x06, 0x3F, - 0x08, 0x1F, 0x18, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0E, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, 0x00, 0xC0, - 0x01, 0x80, 0x03, 0x00, 0x06, 0x02, 0x0C, 0x06, 0x08, 0x0C, 0x1F, 0xFC, - 0x3F, 0xFC, 0x7F, 0xF8, 0xFF, 0xF8, 0x00, 0xF0, 0x07, 0xF8, 0x1F, 0xF0, - 0x61, 0xF0, 0x81, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0E, 0x00, 0x3C, 0x00, - 0xE0, 0x07, 0xC0, 0x3F, 0xC0, 0x1F, 0x80, 0x0F, 0x80, 0x1F, 0x00, 0x1E, - 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xC0, 0x07, 0x9C, 0x0E, 0x3C, - 0x38, 0x7F, 0xE0, 0x7E, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x3C, - 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x02, 0xF8, 0x01, 0x3C, 0x00, - 0x9F, 0x00, 0x47, 0xC0, 0x31, 0xE0, 0x18, 0x78, 0x0C, 0x3E, 0x06, 0x0F, - 0x83, 0x03, 0xC1, 0x80, 0xF0, 0x7F, 0xFF, 0x1F, 0xFF, 0xCF, 0xFF, 0xF0, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x07, 0xC0, 0x01, - 0xFF, 0x00, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x60, 0x00, 0x30, 0x00, - 0x10, 0x00, 0x1F, 0x00, 0x0F, 0xE0, 0x0F, 0xF8, 0x07, 0xFE, 0x00, 0x3F, - 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x38, 0x00, 0x1C, 0x00, - 0x0E, 0x00, 0x06, 0x00, 0x03, 0x00, 0x03, 0x87, 0x83, 0x83, 0xE3, 0x81, - 0xFF, 0x80, 0x3F, 0x00, 0x00, 0x00, 0x03, 0x80, 0x0F, 0x80, 0x1F, 0x00, - 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x1F, 0x00, - 0x1F, 0xF0, 0x1F, 0xFE, 0x0F, 0xCF, 0x07, 0xC3, 0xC7, 0xE1, 0xE3, 0xE0, - 0xF1, 0xF0, 0x78, 0xF8, 0x3C, 0x78, 0x3E, 0x3C, 0x1F, 0x1E, 0x0F, 0x0F, - 0x0F, 0x83, 0x87, 0x81, 0xE7, 0x80, 0x7F, 0x80, 0x0F, 0x80, 0x00, 0x3F, - 0xFF, 0x3F, 0xFE, 0x3F, 0xFE, 0x7F, 0xFC, 0x60, 0x1C, 0x80, 0x38, 0x80, - 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, 0xE0, 0x01, 0xC0, 0x01, 0xC0, 0x03, - 0x80, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x1C, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0x00, - 0xF8, 0x00, 0xFF, 0x00, 0xE1, 0xC0, 0xE0, 0xF0, 0xF0, 0x38, 0x78, 0x1C, - 0x3C, 0x0E, 0x1F, 0x07, 0x0F, 0x87, 0x07, 0xE7, 0x01, 0xFF, 0x00, 0x7E, - 0x00, 0x1F, 0x80, 0x3F, 0xE0, 0x73, 0xF0, 0x70, 0xFC, 0x70, 0x3E, 0x70, - 0x0F, 0x38, 0x07, 0x9C, 0x03, 0xCE, 0x01, 0xE7, 0x00, 0xE1, 0xC0, 0xE0, - 0x70, 0xE0, 0x0F, 0xC0, 0x00, 0x00, 0xF8, 0x01, 0xFF, 0x01, 0xF3, 0xC1, - 0xF0, 0xE1, 0xF0, 0x70, 0xF0, 0x3C, 0xF8, 0x1E, 0x7C, 0x0F, 0x3C, 0x0F, - 0x9E, 0x07, 0xCF, 0x03, 0xE7, 0x83, 0xF3, 0xC1, 0xF0, 0xF1, 0xF8, 0x3F, - 0xF8, 0x0F, 0xFC, 0x00, 0x7C, 0x00, 0x7C, 0x00, 0x7E, 0x00, 0x3E, 0x00, - 0x3C, 0x00, 0x7C, 0x00, 0x7C, 0x00, 0xF0, 0x00, 0xC0, 0x00, 0x00, 0x07, - 0x83, 0xF0, 0xFC, 0x3F, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x78, 0x3F, 0x0F, 0xC3, 0xF0, 0x78, 0x00, 0x03, 0xC0, 0xFC, - 0x1F, 0x83, 0xF0, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x0C, 0x03, 0xC0, 0x7C, 0x0F, 0x80, 0xF0, 0x0E, 0x01, 0x80, 0x30, 0x0C, - 0x03, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x7C, 0x00, - 0x7F, 0x00, 0x7F, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFE, 0x00, 0xFE, 0x00, - 0x3E, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, - 0x0F, 0xE0, 0x00, 0xFF, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x04, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, - 0x38, 0x00, 0x0F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xFC, 0x00, - 0x3F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xF0, 0x00, 0xFC, 0x00, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x01, 0xFC, 0x03, 0xFC, 0x00, 0xFC, 0x00, - 0x3C, 0x00, 0x08, 0x00, 0x00, 0x07, 0xC0, 0xFF, 0x0E, 0x3C, 0x70, 0xF3, - 0xC7, 0x8C, 0x3C, 0x01, 0xE0, 0x1F, 0x00, 0xF0, 0x07, 0x80, 0x78, 0x07, - 0x80, 0x30, 0x03, 0x00, 0x10, 0x01, 0x80, 0x08, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x07, 0x80, 0x7E, 0x03, 0xF0, 0x1F, 0x80, 0x78, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0xFF, 0xF8, 0x01, 0xF0, 0x1E, 0x01, 0xE0, 0x03, 0x81, 0xC0, - 0x00, 0xE1, 0xC0, 0x18, 0x38, 0xE0, 0x3F, 0xCC, 0xE0, 0x3C, 0xE7, 0x70, - 0x3C, 0x71, 0xF0, 0x1C, 0x30, 0xF8, 0x1E, 0x38, 0x7C, 0x0E, 0x1C, 0x3E, - 0x0F, 0x0E, 0x1F, 0x07, 0x0E, 0x0F, 0x83, 0x87, 0x0D, 0xC1, 0xC7, 0x86, - 0x70, 0xE5, 0xC6, 0x38, 0x7C, 0xFE, 0x1C, 0x1C, 0x3E, 0x07, 0x00, 0x00, - 0x01, 0xC0, 0x00, 0x00, 0x78, 0x00, 0x40, 0x1F, 0x00, 0xE0, 0x03, 0xFF, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x03, 0x00, 0x00, - 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x03, - 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x17, 0xC0, 0x00, 0x67, 0x80, 0x00, 0x8F, - 0x00, 0x03, 0x1F, 0x00, 0x0C, 0x3E, 0x00, 0x10, 0x7C, 0x00, 0x60, 0xF8, - 0x00, 0x81, 0xF0, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x18, 0x07, 0xC0, - 0x60, 0x0F, 0x81, 0xC0, 0x1F, 0x03, 0x00, 0x3E, 0x0E, 0x00, 0x7C, 0x3C, - 0x00, 0xFC, 0xFE, 0x0F, 0xFE, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xFC, 0x01, - 0xF8, 0x7E, 0x01, 0xF8, 0x3F, 0x01, 0xF0, 0x3F, 0x01, 0xF0, 0x3F, 0x01, - 0xF0, 0x3F, 0x03, 0xE0, 0x3F, 0x03, 0xE0, 0x7E, 0x03, 0xE0, 0xFC, 0x03, - 0xE3, 0xF0, 0x07, 0xFF, 0x80, 0x07, 0xC3, 0xE0, 0x07, 0xC1, 0xF8, 0x0F, - 0xC0, 0xF8, 0x0F, 0x80, 0xFC, 0x0F, 0x80, 0xFC, 0x0F, 0x80, 0xFC, 0x1F, - 0x80, 0xFC, 0x1F, 0x01, 0xFC, 0x1F, 0x01, 0xF8, 0x1F, 0x03, 0xF0, 0x3F, - 0x0F, 0xE0, 0x7F, 0xFF, 0xC0, 0xFF, 0xFE, 0x00, 0x00, 0x1F, 0x82, 0x01, - 0xFF, 0xE8, 0x07, 0xE0, 0xF0, 0x3F, 0x80, 0xE0, 0xFE, 0x00, 0xC1, 0xF8, - 0x01, 0x87, 0xE0, 0x02, 0x1F, 0x80, 0x04, 0x3F, 0x00, 0x00, 0xFC, 0x00, - 0x01, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, 0x00, - 0x3F, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x03, - 0xF0, 0x00, 0x03, 0xE0, 0x01, 0x07, 0xE0, 0x06, 0x07, 0xE0, 0x18, 0x07, - 0xE0, 0xE0, 0x07, 0xFF, 0x00, 0x01, 0xF8, 0x00, 0x07, 0xFF, 0xE0, 0x01, - 0xFF, 0xFE, 0x00, 0x1F, 0x87, 0xE0, 0x07, 0xE0, 0x7C, 0x01, 0xF0, 0x1F, - 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x0F, 0x80, 0x3F, 0x03, 0xE0, - 0x0F, 0xC0, 0xF8, 0x03, 0xF0, 0x3E, 0x00, 0xFC, 0x1F, 0x00, 0x3F, 0x07, - 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xF0, 0xFC, 0x01, 0xF8, 0x3E, 0x00, 0x7E, - 0x0F, 0x80, 0x3F, 0x83, 0xE0, 0x0F, 0xC1, 0xF8, 0x07, 0xF0, 0x7C, 0x01, - 0xF8, 0x1F, 0x00, 0xFC, 0x07, 0xC0, 0x7E, 0x03, 0xF0, 0x7E, 0x01, 0xFF, - 0xFF, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x07, 0xFF, 0xFE, 0x03, 0xFF, 0xFC, - 0x07, 0xE0, 0x78, 0x0F, 0xC0, 0x60, 0x1F, 0x00, 0x40, 0x3E, 0x00, 0x80, - 0x7C, 0x01, 0x01, 0xF8, 0x10, 0x03, 0xE0, 0x60, 0x07, 0xC3, 0x80, 0x0F, - 0xFF, 0x00, 0x3F, 0xFE, 0x00, 0x7C, 0x38, 0x00, 0xF8, 0x30, 0x03, 0xF0, - 0x60, 0x07, 0xC0, 0x80, 0x0F, 0x81, 0x00, 0x1F, 0x00, 0x10, 0x7E, 0x00, - 0x60, 0xF8, 0x01, 0xC1, 0xF0, 0x07, 0x03, 0xE0, 0x1E, 0x0F, 0xC0, 0xFC, - 0x3F, 0xFF, 0xF8, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFE, 0x03, 0xFF, 0xFC, - 0x07, 0xE0, 0x78, 0x0F, 0xC0, 0x60, 0x1F, 0x00, 0x40, 0x3E, 0x00, 0x80, - 0x7C, 0x01, 0x01, 0xF8, 0x20, 0x03, 0xE0, 0xC0, 0x07, 0xC3, 0x80, 0x0F, - 0xFE, 0x00, 0x3F, 0xFC, 0x00, 0x7C, 0x38, 0x00, 0xF8, 0x30, 0x03, 0xF0, - 0x60, 0x07, 0xC0, 0x80, 0x0F, 0x81, 0x00, 0x1F, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x00, 0x1F, 0xC2, 0x00, 0xFF, 0xF6, - 0x01, 0xF8, 0x3C, 0x03, 0xE0, 0x1C, 0x0F, 0xC0, 0x0C, 0x0F, 0xC0, 0x08, - 0x1F, 0x80, 0x08, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFC, 0x03, 0xFF, - 0xFC, 0x00, 0xFC, 0xFC, 0x00, 0xF8, 0xFC, 0x00, 0xF8, 0xFC, 0x00, 0xF8, - 0xFC, 0x00, 0xF0, 0x7C, 0x01, 0xF0, 0x7E, 0x01, 0xF0, 0x3E, 0x01, 0xF0, - 0x1F, 0x83, 0xE0, 0x0F, 0xFF, 0x80, 0x01, 0xFC, 0x00, 0x07, 0xFF, 0x3F, - 0xF8, 0x0F, 0xE0, 0x7F, 0x00, 0x7E, 0x01, 0xF8, 0x03, 0xF0, 0x0F, 0x80, - 0x1F, 0x00, 0x7C, 0x00, 0xF8, 0x07, 0xE0, 0x07, 0xC0, 0x3E, 0x00, 0x7E, - 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0xF8, 0x00, 0xF8, 0x07, - 0xC0, 0x0F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xF0, 0x03, 0xE0, 0x1F, 0x00, - 0x3F, 0x00, 0xF8, 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x7E, 0x00, 0x7C, - 0x03, 0xE0, 0x07, 0xE0, 0x1F, 0x00, 0x3E, 0x00, 0xF8, 0x01, 0xF0, 0x0F, - 0xC0, 0x0F, 0x80, 0x7C, 0x00, 0xFC, 0x03, 0xE0, 0x0F, 0xE0, 0x3F, 0x80, - 0xFF, 0xC7, 0xFF, 0x00, 0x07, 0xFE, 0x03, 0xF8, 0x07, 0xE0, 0x0F, 0xC0, - 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, - 0x80, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x03, 0xF0, 0x07, 0xC0, 0x0F, 0x80, - 0x1F, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0xC0, 0x3F, - 0x80, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x01, 0xFE, 0x00, 0x0F, 0xC0, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x80, 0x01, 0xF0, 0x00, - 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, - 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0xC0, - 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x61, 0xF0, - 0x0F, 0x3F, 0x00, 0xE7, 0xE0, 0x07, 0xFC, 0x00, 0x3F, 0x00, 0x00, 0x07, - 0xFF, 0x3F, 0x80, 0xFE, 0x07, 0x80, 0x7E, 0x03, 0x00, 0x3F, 0x03, 0x00, - 0x1F, 0x03, 0x00, 0x0F, 0x83, 0x00, 0x07, 0xC3, 0x00, 0x07, 0xE3, 0x00, - 0x03, 0xE3, 0x00, 0x01, 0xF3, 0x00, 0x00, 0xFB, 0x80, 0x00, 0xFB, 0xC0, - 0x00, 0x7F, 0xE0, 0x00, 0x3E, 0xF8, 0x00, 0x3F, 0x7C, 0x00, 0x1F, 0x1F, - 0x00, 0x0F, 0x8F, 0x80, 0x07, 0xC7, 0xE0, 0x07, 0xE1, 0xF0, 0x03, 0xE0, - 0xFC, 0x01, 0xF0, 0x3E, 0x00, 0xF8, 0x1F, 0x00, 0xFC, 0x07, 0xC0, 0xFE, - 0x07, 0xF0, 0xFF, 0xCF, 0xFC, 0x00, 0x07, 0xFF, 0x00, 0x07, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x1F, - 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, - 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0xFC, 0x00, 0x03, - 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x11, 0xF0, 0x00, 0xC7, 0xC0, - 0x06, 0x1F, 0x00, 0x38, 0x7C, 0x01, 0xE3, 0xF0, 0x3F, 0x9F, 0xFF, 0xFC, - 0xFF, 0xFF, 0xF0, 0x07, 0xF8, 0x00, 0x7F, 0x80, 0xFC, 0x00, 0x3F, 0x80, - 0x3E, 0x00, 0x3F, 0x80, 0x1F, 0x00, 0x3F, 0x80, 0x1F, 0x80, 0x1F, 0xC0, - 0x0F, 0xE0, 0x1B, 0xE0, 0x07, 0xF0, 0x0D, 0xF0, 0x02, 0xF8, 0x0D, 0xF0, - 0x03, 0x7C, 0x0C, 0xF8, 0x01, 0xBE, 0x06, 0x7C, 0x00, 0xDF, 0x06, 0x7C, - 0x00, 0xCF, 0x83, 0x3E, 0x00, 0x67, 0xC3, 0x1F, 0x00, 0x31, 0xE3, 0x0F, - 0x80, 0x38, 0xF9, 0x8F, 0x80, 0x18, 0x7D, 0x87, 0xC0, 0x0C, 0x3F, 0x83, - 0xE0, 0x06, 0x1F, 0xC1, 0xF0, 0x06, 0x0F, 0xC1, 0xF0, 0x03, 0x07, 0xC0, - 0xF8, 0x01, 0x83, 0xE0, 0x7C, 0x01, 0xC0, 0xE0, 0x7E, 0x00, 0xE0, 0x70, - 0x3F, 0x00, 0xF8, 0x30, 0x3F, 0x80, 0xFF, 0x10, 0x7F, 0xF0, 0x00, 0x07, - 0xF0, 0x0F, 0xE0, 0x3E, 0x00, 0x78, 0x07, 0xE0, 0x06, 0x00, 0x7C, 0x00, - 0xC0, 0x1F, 0xC0, 0x10, 0x03, 0xF8, 0x06, 0x00, 0x6F, 0x80, 0xC0, 0x19, - 0xF0, 0x10, 0x03, 0x3F, 0x02, 0x00, 0x63, 0xE0, 0xC0, 0x0C, 0x7C, 0x18, - 0x03, 0x07, 0xC2, 0x00, 0x60, 0xF8, 0x40, 0x0C, 0x0F, 0x98, 0x03, 0x81, - 0xF3, 0x00, 0x60, 0x3F, 0x40, 0x0C, 0x03, 0xF8, 0x01, 0x80, 0x7F, 0x00, - 0x60, 0x07, 0xC0, 0x0C, 0x00, 0xF8, 0x01, 0x80, 0x0F, 0x00, 0x70, 0x01, - 0xE0, 0x0E, 0x00, 0x18, 0x03, 0xE0, 0x03, 0x00, 0x02, 0x00, 0x60, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xC0, 0x07, 0xC3, 0xE0, 0x1F, 0x03, 0xC0, - 0x7C, 0x03, 0xC1, 0xF0, 0x07, 0x87, 0xE0, 0x0F, 0x8F, 0x80, 0x1F, 0x3F, - 0x00, 0x3E, 0x7C, 0x00, 0x7D, 0xF8, 0x01, 0xFB, 0xE0, 0x03, 0xF7, 0xC0, - 0x07, 0xDF, 0x80, 0x1F, 0xBF, 0x00, 0x3F, 0x7C, 0x00, 0x7C, 0xF8, 0x01, - 0xF9, 0xF0, 0x03, 0xE3, 0xE0, 0x0F, 0xC7, 0xC0, 0x1F, 0x07, 0x80, 0x7C, - 0x0F, 0x81, 0xF0, 0x0F, 0x87, 0xC0, 0x0F, 0xFE, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x07, 0xE3, 0xF0, 0x0F, 0x83, 0xE0, - 0x1F, 0x07, 0xE0, 0x3E, 0x0F, 0xC0, 0x7C, 0x1F, 0x81, 0xF0, 0x3F, 0x03, - 0xE0, 0xFE, 0x07, 0xC1, 0xF8, 0x0F, 0x87, 0xF0, 0x3E, 0x1F, 0xC0, 0x7F, - 0xFE, 0x00, 0xFF, 0xF0, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, - 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, - 0x03, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0xFF, 0xC0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xC0, 0x07, 0xC3, 0xE0, 0x1F, 0x03, 0xC0, - 0x7C, 0x03, 0xC1, 0xF0, 0x07, 0x87, 0xE0, 0x0F, 0x8F, 0x80, 0x1F, 0x3F, - 0x00, 0x3E, 0x7C, 0x00, 0x7D, 0xF8, 0x01, 0xFB, 0xF0, 0x03, 0xF7, 0xC0, - 0x07, 0xDF, 0x80, 0x0F, 0xBF, 0x00, 0x3F, 0x7C, 0x00, 0x7C, 0xF8, 0x01, - 0xF9, 0xF0, 0x03, 0xE3, 0xE0, 0x07, 0xC7, 0xC0, 0x1F, 0x07, 0x80, 0x7C, - 0x0F, 0x01, 0xF0, 0x0F, 0x07, 0x80, 0x07, 0xFE, 0x00, 0x03, 0x80, 0x00, - 0x0C, 0x00, 0x00, 0x3C, 0x00, 0x20, 0xFF, 0xC1, 0x87, 0xFF, 0xFE, 0x1E, - 0xFF, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xFC, - 0x01, 0xF8, 0x7E, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF0, 0x3F, - 0x01, 0xF0, 0x3F, 0x03, 0xF0, 0x3F, 0x03, 0xE0, 0x7E, 0x03, 0xE0, 0xFE, - 0x03, 0xE1, 0xF8, 0x07, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0xC0, - 0x0F, 0xCF, 0xC0, 0x0F, 0xCF, 0xC0, 0x0F, 0x8F, 0xE0, 0x0F, 0x87, 0xE0, - 0x1F, 0x87, 0xE0, 0x1F, 0x03, 0xF0, 0x1F, 0x03, 0xF0, 0x1F, 0x03, 0xF0, - 0x3F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0xFF, 0xE1, 0xFE, 0x00, 0xF8, 0x40, - 0xFF, 0xB0, 0x38, 0x3C, 0x1C, 0x07, 0x0F, 0x01, 0xC3, 0xC0, 0x20, 0xF0, - 0x08, 0x3E, 0x02, 0x0F, 0xC0, 0x03, 0xF8, 0x00, 0x7F, 0x00, 0x0F, 0xE0, - 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x00, - 0x03, 0xC4, 0x00, 0xF1, 0x00, 0x3C, 0x60, 0x0F, 0x38, 0x07, 0x8F, 0x83, - 0xC2, 0x3F, 0xE0, 0x83, 0xF0, 0x00, 0x3F, 0xFF, 0xF9, 0xFF, 0xFF, 0xCF, - 0x1F, 0x1E, 0x70, 0xF8, 0x77, 0x0F, 0x83, 0x30, 0x7C, 0x09, 0x03, 0xE0, - 0x40, 0x3F, 0x02, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x07, - 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, - 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, 0x07, 0xF0, 0x00, 0xFF, 0xF0, 0x00, - 0x7F, 0xF0, 0xFF, 0x1F, 0xC0, 0x3E, 0x1F, 0x80, 0x1C, 0x1F, 0x80, 0x18, - 0x1F, 0x00, 0x18, 0x1F, 0x00, 0x18, 0x1F, 0x00, 0x30, 0x3F, 0x00, 0x30, - 0x3E, 0x00, 0x30, 0x3E, 0x00, 0x30, 0x7E, 0x00, 0x60, 0x7C, 0x00, 0x60, - 0x7C, 0x00, 0x60, 0x7C, 0x00, 0xC0, 0x7C, 0x00, 0xC0, 0xF8, 0x00, 0xC0, - 0xF8, 0x00, 0xC0, 0xF8, 0x01, 0x80, 0xF8, 0x01, 0x80, 0xF8, 0x03, 0x80, - 0xF8, 0x03, 0x00, 0x7C, 0x06, 0x00, 0x7E, 0x1E, 0x00, 0x3F, 0xF8, 0x00, - 0x0F, 0xE0, 0x00, 0xFF, 0xE0, 0x7F, 0x3F, 0x80, 0x1C, 0x1F, 0x80, 0x18, - 0x1F, 0x80, 0x18, 0x1F, 0x80, 0x30, 0x1F, 0x80, 0x30, 0x0F, 0x80, 0x60, - 0x0F, 0x80, 0x40, 0x0F, 0x80, 0xC0, 0x0F, 0x81, 0x80, 0x0F, 0x81, 0x00, - 0x0F, 0xC3, 0x00, 0x0F, 0xC6, 0x00, 0x07, 0xC6, 0x00, 0x07, 0xCC, 0x00, - 0x07, 0xC8, 0x00, 0x07, 0xD8, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0x80, 0x00, - 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0xFF, 0xCF, 0xF8, 0x7E, 0x7F, 0x07, - 0xE0, 0x38, 0x7C, 0x07, 0x80, 0x60, 0xF8, 0x0F, 0x00, 0x81, 0xF0, 0x1E, - 0x03, 0x03, 0xE0, 0x3E, 0x04, 0x07, 0xE0, 0xFC, 0x18, 0x07, 0xC1, 0xF8, - 0x20, 0x0F, 0x87, 0xF0, 0xC0, 0x1F, 0x0B, 0xE1, 0x00, 0x3E, 0x37, 0xC6, - 0x00, 0x7C, 0x47, 0x88, 0x00, 0xF9, 0x8F, 0x30, 0x01, 0xF2, 0x1F, 0x40, - 0x03, 0xEC, 0x3E, 0x80, 0x03, 0xF0, 0x7F, 0x00, 0x07, 0xE0, 0xFC, 0x00, - 0x0F, 0x81, 0xF8, 0x00, 0x1F, 0x03, 0xE0, 0x00, 0x3C, 0x07, 0xC0, 0x00, - 0x78, 0x07, 0x00, 0x00, 0xF0, 0x0E, 0x00, 0x00, 0xC0, 0x18, 0x00, 0x01, - 0x80, 0x30, 0x00, 0x02, 0x00, 0x40, 0x00, 0x0F, 0xFE, 0x3F, 0x81, 0xFC, - 0x07, 0x80, 0x7C, 0x03, 0x00, 0x3F, 0x03, 0x00, 0x0F, 0x83, 0x80, 0x07, - 0xC1, 0x80, 0x03, 0xE1, 0x80, 0x00, 0xF9, 0x80, 0x00, 0x7D, 0x80, 0x00, - 0x3F, 0x80, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, - 0x01, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xCF, 0x00, - 0x00, 0xC7, 0xC0, 0x00, 0xC3, 0xE0, 0x00, 0xC1, 0xF0, 0x00, 0xC0, 0x7C, - 0x00, 0xE0, 0x3E, 0x00, 0xE0, 0x1F, 0x00, 0xF8, 0x1F, 0xE0, 0xFF, 0x1F, - 0xF8, 0x00, 0xFF, 0xC3, 0xF9, 0xF8, 0x07, 0x87, 0xC0, 0x38, 0x3E, 0x01, - 0x81, 0xF0, 0x18, 0x07, 0xC0, 0x80, 0x3E, 0x0C, 0x01, 0xF0, 0xC0, 0x07, - 0xC4, 0x00, 0x3E, 0x60, 0x01, 0xF6, 0x00, 0x07, 0xA0, 0x00, 0x3F, 0x00, - 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x3E, - 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, - 0x7E, 0x00, 0x07, 0xF0, 0x00, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xF8, 0x3F, - 0xFF, 0xC3, 0xE0, 0x7E, 0x1C, 0x07, 0xE0, 0xC0, 0x3E, 0x0C, 0x03, 0xF0, - 0x40, 0x3F, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x1F, - 0x80, 0x00, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x00, - 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x83, 0xE0, 0x0C, 0x3F, 0x00, - 0xC3, 0xF0, 0x0E, 0x1F, 0x00, 0xF1, 0xF8, 0x1F, 0x9F, 0xFF, 0xF8, 0xFF, - 0xFF, 0xC0, 0x01, 0xFC, 0x0F, 0xE0, 0x3C, 0x00, 0xE0, 0x03, 0x80, 0x1E, - 0x00, 0x78, 0x01, 0xC0, 0x07, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0x80, 0x0E, - 0x00, 0x38, 0x01, 0xE0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0F, - 0x00, 0x38, 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x3C, 0x00, 0xFF, 0x03, 0xF8, 0x00, 0xE0, 0x38, 0x07, 0x01, 0xC0, - 0x70, 0x0C, 0x03, 0x80, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x70, 0x0C, 0x03, - 0x80, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x70, 0x0C, 0x03, 0x80, 0xE0, 0x38, - 0x07, 0x01, 0xC0, 0x03, 0xFC, 0x0F, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x38, - 0x01, 0xE0, 0x07, 0x80, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0F, 0x00, 0x38, - 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, 0x00, 0x3C, - 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x00, 0x1C, - 0x00, 0xF0, 0x03, 0xC0, 0xFE, 0x03, 0xF8, 0x00, 0x03, 0xC0, 0x03, 0xC0, - 0x07, 0xE0, 0x07, 0xE0, 0x0E, 0x70, 0x0E, 0x70, 0x1C, 0x78, 0x1C, 0x38, - 0x3C, 0x3C, 0x38, 0x1C, 0x78, 0x1E, 0x70, 0x0E, 0xF0, 0x0E, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xE1, 0xE3, 0xC1, 0xC1, 0xC0, 0xC0, 0x00, - 0xF7, 0x80, 0xFD, 0xE0, 0x7C, 0xF0, 0x3C, 0x3C, 0x1E, 0x0F, 0x0F, 0x83, - 0x83, 0xC1, 0xE1, 0xE0, 0x78, 0x78, 0x1C, 0x3E, 0x0F, 0x0F, 0x03, 0xC3, - 0xC1, 0xF0, 0xF0, 0xFC, 0xFE, 0x6F, 0x6F, 0xF3, 0xF1, 0xF8, 0xF8, 0x3C, - 0x1C, 0x00, 0x01, 0xE0, 0x1F, 0xC0, 0x07, 0xC0, 0x07, 0xC0, 0x07, 0x80, - 0x07, 0x80, 0x0F, 0x80, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x3C, 0x1E, 0xFE, - 0x1F, 0x9F, 0x1F, 0x0F, 0x1E, 0x0F, 0x3E, 0x0F, 0x3C, 0x0F, 0x3C, 0x1F, - 0x78, 0x1E, 0x78, 0x1E, 0x78, 0x3C, 0x78, 0x3C, 0xF0, 0x78, 0xF0, 0xF0, - 0xF1, 0xE0, 0x7F, 0xC0, 0x3F, 0x00, 0x01, 0xF0, 0x3F, 0xC3, 0xCE, 0x3C, - 0xF3, 0xC7, 0x1E, 0x01, 0xE0, 0x0F, 0x00, 0xF8, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x03, 0x78, 0x31, 0xE3, 0x0F, 0xF0, 0x1E, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, 0x0F, - 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x01, 0xEF, 0x00, 0x7F, 0xE0, 0x3E, 0x7C, - 0x07, 0x8F, 0x01, 0xE1, 0xE0, 0x78, 0x3C, 0x0F, 0x0F, 0x83, 0xC1, 0xE0, - 0x78, 0x3C, 0x1E, 0x0F, 0x83, 0xC1, 0xF0, 0x78, 0x7C, 0x0F, 0x0F, 0x91, - 0xE3, 0xF6, 0x3F, 0xDF, 0x83, 0xF3, 0xE0, 0x3C, 0x38, 0x00, 0x01, 0xE0, - 0x3F, 0x83, 0xCE, 0x3C, 0x73, 0xC3, 0x9E, 0x1D, 0xE1, 0xCF, 0x1C, 0xFB, - 0xC7, 0xF8, 0x3C, 0x01, 0xE0, 0x0F, 0x02, 0x78, 0x31, 0xE3, 0x0F, 0xF0, - 0x1E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x1D, 0xC0, 0x01, 0xCE, 0x00, 0x1C, - 0x70, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, - 0x3C, 0x00, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x00, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x3C, 0x00, 0x03, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, - 0x80, 0x00, 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x80, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, - 0x00, 0x0F, 0x00, 0x0E, 0x70, 0x00, 0x77, 0x80, 0x03, 0xF8, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0xFE, 0x00, 0x7F, 0xFC, 0x1F, 0x1F, 0x87, 0xC3, 0xC1, - 0xF0, 0x78, 0x3C, 0x1F, 0x07, 0x83, 0xE0, 0xF0, 0xF8, 0x0E, 0x3E, 0x01, - 0xFF, 0x80, 0x3F, 0xC0, 0x0C, 0x00, 0x03, 0xC0, 0x00, 0x7F, 0x80, 0x0F, - 0xFE, 0x00, 0x7F, 0xF0, 0x70, 0xFF, 0x1C, 0x03, 0xE3, 0x80, 0x3C, 0x70, - 0x07, 0x0F, 0x03, 0xE0, 0xFF, 0xF0, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x03, - 0xE0, 0x00, 0xF0, 0x00, 0xF8, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, - 0x1F, 0x00, 0x0F, 0x0E, 0x07, 0x9F, 0x83, 0xDF, 0xC3, 0xE9, 0xE1, 0xE8, - 0xF0, 0xF8, 0xF8, 0x7C, 0x78, 0x7C, 0x3C, 0x3E, 0x3E, 0x1E, 0x1E, 0x1F, - 0x0F, 0x0F, 0x0F, 0x87, 0x87, 0xCB, 0xC3, 0xCB, 0xE1, 0xE9, 0xE0, 0xFC, - 0xF0, 0x38, 0x00, 0x03, 0x03, 0xC1, 0xE0, 0xF0, 0x30, 0x00, 0x00, 0x00, - 0x07, 0x3F, 0x87, 0x83, 0xC1, 0xE0, 0xF0, 0xF0, 0x78, 0x3C, 0x1E, 0x1E, - 0x0F, 0x27, 0x17, 0x93, 0xF1, 0xF8, 0x70, 0x00, 0x00, 0x06, 0x00, 0x0F, - 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x06, 0x00, 0xFE, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, - 0x00, 0x7C, 0x00, 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0xF8, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0xF0, 0x01, 0xF0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, - 0x03, 0xC0, 0xE3, 0xC0, 0xE7, 0x80, 0xFF, 0x00, 0x7C, 0x00, 0x1F, 0xC0, - 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, - 0x00, 0x1F, 0x00, 0x0F, 0x3F, 0x87, 0x87, 0x83, 0xC3, 0x03, 0xE3, 0x01, - 0xE3, 0x00, 0xF3, 0x00, 0x7B, 0x80, 0x7B, 0xC0, 0x3F, 0xE0, 0x1E, 0xF0, - 0x1F, 0x78, 0x0F, 0x1E, 0x07, 0x8F, 0x13, 0xC7, 0x93, 0xE1, 0xF9, 0xE0, - 0xF8, 0xF0, 0x38, 0x00, 0x1F, 0xC0, 0xF8, 0x1F, 0x03, 0xC0, 0x78, 0x1F, - 0x03, 0xE0, 0x78, 0x0F, 0x01, 0xE0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, - 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xE0, 0x3C, 0x8F, 0x31, 0xEC, 0x3F, 0x07, - 0xC0, 0x70, 0x00, 0x01, 0x87, 0x07, 0x0F, 0xE7, 0xE7, 0xE0, 0xF3, 0xF9, - 0xF8, 0x3D, 0x9E, 0x9E, 0x0F, 0x47, 0xC7, 0x83, 0xE1, 0xD1, 0xE1, 0xF8, - 0xF8, 0xF0, 0x7C, 0x3C, 0x3C, 0x1F, 0x0F, 0x1F, 0x0F, 0x87, 0xC7, 0x83, - 0xE1, 0xE1, 0xE0, 0xF0, 0x78, 0x78, 0x3C, 0x1E, 0x3C, 0x1F, 0x0F, 0x0F, - 0x27, 0x83, 0xC3, 0xD1, 0xE0, 0xF0, 0xFC, 0xF8, 0x78, 0x1C, 0x00, 0x01, - 0x8F, 0x0F, 0xE7, 0xE0, 0xF3, 0xF8, 0x3C, 0x9E, 0x0F, 0x47, 0x87, 0xA3, - 0xC1, 0xE8, 0xF0, 0x7C, 0x3C, 0x1E, 0x1E, 0x0F, 0x87, 0x83, 0xE1, 0xE0, - 0xF0, 0xF8, 0x3C, 0x3C, 0x1F, 0x0F, 0x27, 0x83, 0xD1, 0xE0, 0xFC, 0x78, - 0x1C, 0x00, 0x01, 0xF0, 0x0E, 0x30, 0x38, 0x70, 0xF0, 0xF3, 0xC1, 0xE7, - 0x83, 0xDE, 0x07, 0xBC, 0x1F, 0xF8, 0x3F, 0xE0, 0x7B, 0xC0, 0xF7, 0x83, - 0xCF, 0x07, 0x9E, 0x1E, 0x1C, 0x38, 0x1C, 0xE0, 0x1F, 0x00, 0x00, 0xE3, - 0x80, 0xFD, 0xF8, 0x0F, 0xFF, 0x81, 0xE8, 0xF0, 0x3E, 0x1E, 0x07, 0x83, - 0xC0, 0xF0, 0x78, 0x3E, 0x1F, 0x07, 0x83, 0xC0, 0xF0, 0x78, 0x1E, 0x1F, - 0x07, 0x83, 0xC0, 0xF0, 0xF8, 0x1E, 0x1E, 0x03, 0xC7, 0x80, 0xFF, 0xE0, - 0x1E, 0xF0, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, - 0xF8, 0x00, 0x3F, 0xC0, 0x00, 0x01, 0xEF, 0x07, 0xFF, 0x0F, 0x1E, 0x1E, - 0x1E, 0x1E, 0x1E, 0x3C, 0x1E, 0x7C, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0xF0, - 0x7C, 0xF0, 0x78, 0xF0, 0xF8, 0xF0, 0xF8, 0xF1, 0xF0, 0xFE, 0xF0, 0x7E, - 0xF0, 0x39, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, - 0xC0, 0x1F, 0xF8, 0x03, 0x9C, 0x7F, 0x7C, 0x3D, 0xF8, 0x7A, 0xE0, 0xF8, - 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF0, 0x01, - 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0x07, 0x18, 0xFF, - 0xC7, 0x1C, 0x70, 0x63, 0x81, 0x1E, 0x08, 0xF8, 0x07, 0xE0, 0x1F, 0x00, - 0x7C, 0x01, 0xF0, 0x07, 0x84, 0x3C, 0x20, 0xE1, 0x87, 0x1C, 0x70, 0x9E, - 0x00, 0x00, 0x80, 0x60, 0x30, 0x1C, 0x1F, 0x1F, 0xF7, 0xFC, 0x78, 0x1E, - 0x07, 0x83, 0xC0, 0xF0, 0x3C, 0x1F, 0x07, 0x81, 0xE0, 0x79, 0x3C, 0x4F, - 0x23, 0xF0, 0xFC, 0x1C, 0x00, 0x0F, 0x0F, 0x3F, 0x87, 0x8F, 0x83, 0xC7, - 0xC1, 0xE3, 0xE1, 0xE1, 0xE0, 0xF0, 0xF0, 0x78, 0xF8, 0x78, 0x78, 0x3C, - 0x3C, 0x3E, 0x1E, 0x1F, 0x1E, 0x1F, 0x0F, 0x17, 0x97, 0x9B, 0xCB, 0xF9, - 0xF9, 0xF8, 0xF8, 0x78, 0x38, 0x00, 0x18, 0x37, 0xC3, 0xDE, 0x1E, 0x78, - 0x73, 0xC1, 0x9E, 0x08, 0xF0, 0xC7, 0x84, 0x3C, 0x41, 0xE4, 0x0F, 0x40, - 0x7C, 0x03, 0xC0, 0x1C, 0x00, 0xC0, 0x04, 0x00, 0x38, 0x10, 0xDF, 0x06, - 0x3D, 0xE0, 0xC7, 0xBC, 0x38, 0x73, 0xC7, 0x06, 0x79, 0xF0, 0x8F, 0x3E, - 0x11, 0xEB, 0xC4, 0x3F, 0x79, 0x07, 0xCF, 0x60, 0xF9, 0xE8, 0x1E, 0x3E, - 0x03, 0x87, 0x80, 0x70, 0xF0, 0x0C, 0x0C, 0x01, 0x01, 0x00, 0x03, 0x83, - 0x87, 0xF1, 0xF0, 0x3C, 0xF8, 0x0F, 0x60, 0x03, 0xD0, 0x00, 0xF8, 0x00, - 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1F, 0x00, 0x0F, - 0xC0, 0x02, 0xF1, 0x39, 0x3C, 0xCF, 0xCF, 0xE3, 0xE1, 0xF0, 0x70, 0x38, - 0x00, 0x01, 0x83, 0x07, 0xE3, 0xC1, 0xF1, 0xE0, 0x78, 0xF0, 0x3E, 0x18, - 0x1F, 0x08, 0x07, 0x84, 0x03, 0xC6, 0x01, 0xE2, 0x00, 0xFB, 0x00, 0x3D, - 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xE0, 0x00, 0x60, 0x00, 0x60, 0x0E, 0x60, 0x0F, 0xE0, 0x07, 0xE0, 0x01, - 0xC0, 0x00, 0x1F, 0xFC, 0x3F, 0xF8, 0x7F, 0xE1, 0x81, 0x82, 0x06, 0x00, - 0x08, 0x00, 0x20, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x10, 0x00, 0x40, - 0x01, 0x80, 0x07, 0xC0, 0x1F, 0x86, 0x3F, 0x8E, 0xCF, 0x9C, 0x07, 0x30, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0xF8, 0x03, 0xC0, 0x0F, 0x00, 0x1E, 0x00, - 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x1F, 0x00, 0x7E, 0x00, 0x30, 0x00, - 0x60, 0x00, 0xE0, 0x01, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, 0x00, 0x0C, 0x00, - 0x0F, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, - 0x00, 0xF0, 0x00, 0x70, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0xC0, 0x07, - 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x10, 0x00, 0xF0, 0x03, 0xF0, - 0x0F, 0x00, 0x1E, 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, - 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x70, 0x01, 0xE0, 0x0F, 0x80, 0x7C, 0x00, - 0x3E, 0x00, 0x7F, 0xC6, 0xFF, 0xFF, 0x61, 0xFE, 0x00, 0x7C}; - -const GFXglyph FreeSerifBoldItalic18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 11, 25, 14, 2, -23}, // 0x21 '!' - {35, 14, 10, 19, 4, -23}, // 0x22 '"' - {53, 20, 25, 17, -1, -24}, // 0x23 '#' - {116, 17, 29, 18, 0, -25}, // 0x24 '$' - {178, 27, 25, 29, 1, -23}, // 0x25 '%' - {263, 25, 25, 27, 0, -23}, // 0x26 '&' - {342, 5, 10, 10, 4, -23}, // 0x27 ''' - {349, 11, 30, 12, 1, -23}, // 0x28 '(' - {391, 11, 30, 12, -2, -23}, // 0x29 ')' - {433, 13, 15, 18, 2, -23}, // 0x2A '*' - {458, 17, 17, 20, 1, -16}, // 0x2B '+' - {495, 7, 11, 9, -2, -4}, // 0x2C ',' - {505, 9, 4, 12, 0, -9}, // 0x2D '-' - {510, 6, 5, 9, 0, -3}, // 0x2E '.' - {514, 14, 25, 12, 0, -23}, // 0x2F '/' - {558, 15, 25, 18, 1, -23}, // 0x30 '0' - {605, 15, 25, 17, 0, -23}, // 0x31 '1' - {652, 16, 25, 18, 0, -23}, // 0x32 '2' - {702, 15, 25, 17, 1, -23}, // 0x33 '3' - {749, 18, 24, 17, 0, -23}, // 0x34 '4' - {803, 17, 25, 18, 0, -23}, // 0x35 '5' - {857, 17, 25, 18, 1, -23}, // 0x36 '6' - {911, 16, 24, 17, 3, -23}, // 0x37 '7' - {959, 17, 25, 18, 0, -23}, // 0x38 '8' - {1013, 17, 25, 18, 0, -23}, // 0x39 '9' - {1067, 10, 17, 9, 0, -15}, // 0x3A ':' - {1089, 11, 22, 9, -1, -15}, // 0x3B ';' - {1120, 18, 19, 20, 1, -18}, // 0x3C '<' - {1163, 18, 10, 20, 2, -13}, // 0x3D '=' - {1186, 18, 19, 20, 2, -18}, // 0x3E '>' - {1229, 13, 25, 17, 3, -23}, // 0x3F '?' - {1270, 25, 25, 29, 2, -23}, // 0x40 '@' - {1349, 23, 25, 24, 0, -23}, // 0x41 'A' - {1421, 24, 25, 22, 0, -23}, // 0x42 'B' - {1496, 23, 25, 22, 1, -23}, // 0x43 'C' - {1568, 26, 25, 25, 0, -23}, // 0x44 'D' - {1650, 23, 25, 22, 0, -23}, // 0x45 'E' - {1722, 23, 25, 21, 0, -23}, // 0x46 'F' - {1794, 24, 25, 25, 2, -23}, // 0x47 'G' - {1869, 29, 25, 26, 0, -23}, // 0x48 'H' - {1960, 15, 25, 13, 0, -23}, // 0x49 'I' - {2007, 20, 27, 17, 0, -23}, // 0x4A 'J' - {2075, 25, 25, 23, 0, -23}, // 0x4B 'K' - {2154, 22, 25, 21, 0, -23}, // 0x4C 'L' - {2223, 33, 25, 31, 0, -23}, // 0x4D 'M' - {2327, 27, 25, 25, 0, -23}, // 0x4E 'N' - {2412, 23, 25, 24, 1, -23}, // 0x4F 'O' - {2484, 23, 25, 21, 0, -23}, // 0x50 'P' - {2556, 23, 31, 24, 1, -23}, // 0x51 'Q' - {2646, 24, 25, 23, 0, -23}, // 0x52 'R' - {2721, 18, 25, 18, 0, -23}, // 0x53 'S' - {2778, 21, 25, 21, 3, -23}, // 0x54 'T' - {2844, 24, 25, 25, 4, -23}, // 0x55 'U' - {2919, 24, 25, 25, 4, -23}, // 0x56 'V' - {2994, 31, 25, 32, 4, -23}, // 0x57 'W' - {3091, 25, 25, 24, 0, -23}, // 0x58 'X' - {3170, 21, 25, 22, 4, -23}, // 0x59 'Y' - {3236, 21, 25, 20, 0, -23}, // 0x5A 'Z' - {3302, 14, 30, 12, -1, -23}, // 0x5B '[' - {3355, 10, 25, 14, 4, -23}, // 0x5C '\' - {3387, 14, 30, 12, -2, -23}, // 0x5D ']' - {3440, 16, 13, 20, 2, -23}, // 0x5E '^' - {3466, 18, 3, 17, 0, 3}, // 0x5F '_' - {3473, 7, 6, 12, 3, -23}, // 0x60 '`' - {3479, 18, 17, 18, 0, -15}, // 0x61 'a' - {3518, 16, 26, 17, 1, -24}, // 0x62 'b' - {3570, 13, 17, 15, 1, -15}, // 0x63 'c' - {3598, 19, 25, 18, 1, -23}, // 0x64 'd' - {3658, 13, 17, 15, 1, -15}, // 0x65 'e' - {3686, 21, 32, 17, -3, -24}, // 0x66 'f' - {3770, 19, 23, 17, -1, -15}, // 0x67 'g' - {3825, 17, 25, 19, 1, -23}, // 0x68 'h' - {3879, 9, 25, 10, 1, -23}, // 0x69 'i' - {3908, 16, 31, 12, -3, -23}, // 0x6A 'j' - {3970, 17, 25, 18, 1, -23}, // 0x6B 'k' - {4024, 11, 25, 10, 1, -23}, // 0x6C 'l' - {4059, 26, 17, 27, 0, -15}, // 0x6D 'm' - {4115, 18, 17, 18, 0, -15}, // 0x6E 'n' - {4154, 15, 17, 17, 1, -15}, // 0x6F 'o' - {4186, 19, 23, 17, -2, -15}, // 0x70 'p' - {4241, 16, 23, 17, 1, -15}, // 0x71 'q' - {4287, 15, 16, 14, 0, -15}, // 0x72 'r' - {4317, 13, 17, 12, 0, -15}, // 0x73 's' - {4345, 10, 22, 10, 1, -20}, // 0x74 't' - {4373, 17, 17, 19, 1, -15}, // 0x75 'u' - {4410, 13, 16, 15, 2, -15}, // 0x76 'v' - {4436, 19, 16, 23, 3, -15}, // 0x77 'w' - {4474, 18, 17, 17, -1, -15}, // 0x78 'x' - {4513, 17, 23, 15, -2, -15}, // 0x79 'y' - {4562, 15, 19, 14, 0, -15}, // 0x7A 'z' - {4598, 15, 32, 12, 0, -24}, // 0x7B '{' - {4658, 3, 25, 9, 4, -23}, // 0x7C '|' - {4668, 15, 32, 12, -5, -24}, // 0x7D '}' - {4728, 16, 5, 20, 2, -11}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic18pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic18pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 5410 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h deleted file mode 100644 index e2fa4cb..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h +++ /dev/null @@ -1,795 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic24pt7bBitmaps[] PROGMEM = { - 0x00, 0x3C, 0x00, 0xFC, 0x01, 0xF8, 0x07, 0xF0, 0x0F, 0xE0, 0x1F, 0xC0, - 0x3F, 0x00, 0x7E, 0x00, 0xF8, 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x1E, - 0x00, 0x3C, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x00, 0x0E, 0x00, - 0x18, 0x00, 0x30, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xF0, 0x03, 0xF0, 0x0F, 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x3F, 0x00, - 0x3C, 0x00, 0x1C, 0x01, 0xC7, 0xC0, 0x7D, 0xF8, 0x1F, 0xBF, 0x03, 0xF7, - 0xC0, 0x7C, 0xF8, 0x0F, 0x9E, 0x01, 0xE3, 0xC0, 0x3C, 0x70, 0x07, 0x1E, - 0x00, 0xE3, 0x80, 0x38, 0x70, 0x07, 0x0C, 0x00, 0xC0, 0x00, 0x03, 0xC1, - 0xE0, 0x00, 0x70, 0x38, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0xC1, 0xE0, 0x00, - 0x70, 0x38, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0x81, 0xC0, 0x00, 0xF0, 0x78, - 0x00, 0x1E, 0x0F, 0x00, 0x07, 0x83, 0xC0, 0x1F, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x00, 0xE0, 0x70, 0x00, 0x3C, 0x1E, 0x00, - 0x07, 0x83, 0xC0, 0x00, 0xE0, 0x70, 0x00, 0x3C, 0x1E, 0x00, 0x07, 0x83, - 0xC0, 0x00, 0xE0, 0x70, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFC, 0x1F, - 0xFF, 0xFF, 0x00, 0x38, 0x1C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xE0, 0xF0, - 0x00, 0x38, 0x1C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xC0, 0xE0, 0x00, 0x78, - 0x3C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xC0, 0xE0, 0x00, 0x78, 0x3C, 0x00, - 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x1F, - 0xE0, 0x00, 0x7F, 0xF8, 0x01, 0xF1, 0x9E, 0x01, 0xC1, 0x8F, 0x03, 0x83, - 0x8F, 0x03, 0x83, 0x06, 0x07, 0x83, 0x06, 0x07, 0x87, 0x06, 0x07, 0xC7, - 0x04, 0x07, 0xE6, 0x04, 0x07, 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x03, 0xFF, - 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x1F, - 0xE0, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xF0, 0x00, 0x3B, 0xF8, 0x20, 0x31, - 0xF8, 0x20, 0x30, 0xF8, 0x60, 0x70, 0xF8, 0x60, 0x60, 0xF8, 0x60, 0x60, - 0xF8, 0xF0, 0xE0, 0xF0, 0xF0, 0xE1, 0xE0, 0x78, 0xC3, 0xE0, 0x3C, 0xC7, - 0xC0, 0x0F, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x01, 0x80, 0x00, 0x03, 0x80, - 0x00, 0x03, 0x80, 0x00, 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0xF0, - 0x00, 0x70, 0x00, 0xFF, 0x80, 0x1C, 0x00, 0x3F, 0x38, 0x1F, 0x00, 0x0F, - 0xC7, 0xFF, 0xE0, 0x03, 0xF0, 0x3F, 0xB8, 0x00, 0x7E, 0x04, 0x07, 0x00, - 0x1F, 0x80, 0x81, 0xC0, 0x03, 0xF0, 0x10, 0x38, 0x00, 0xFC, 0x02, 0x0E, - 0x00, 0x1F, 0x80, 0x81, 0x80, 0x03, 0xF0, 0x10, 0x70, 0x00, 0x7C, 0x06, - 0x1C, 0x00, 0x0F, 0x80, 0x83, 0x80, 0x01, 0xF0, 0x30, 0xE0, 0x00, 0x1E, - 0x0C, 0x1C, 0x07, 0xC3, 0xE3, 0x07, 0x03, 0xFC, 0x3F, 0xC0, 0xC0, 0xFC, - 0x43, 0xE0, 0x38, 0x3E, 0x0C, 0x00, 0x0E, 0x0F, 0xC0, 0x80, 0x01, 0xC3, - 0xF0, 0x10, 0x00, 0x70, 0xFC, 0x02, 0x00, 0x0C, 0x1F, 0x80, 0x40, 0x03, - 0x83, 0xE0, 0x08, 0x00, 0x60, 0xFC, 0x02, 0x00, 0x1C, 0x1F, 0x80, 0x40, - 0x07, 0x03, 0xE0, 0x10, 0x00, 0xE0, 0x7C, 0x02, 0x00, 0x38, 0x0F, 0x80, - 0xC0, 0x06, 0x01, 0xF0, 0x30, 0x01, 0xC0, 0x1F, 0x0C, 0x00, 0x30, 0x01, - 0xFF, 0x00, 0x0E, 0x00, 0x1F, 0x80, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x01, 0xF1, 0xE0, 0x00, 0x00, 0xF0, 0x78, 0x00, 0x00, - 0xF0, 0x3C, 0x00, 0x00, 0x78, 0x1E, 0x00, 0x00, 0x7C, 0x0F, 0x00, 0x00, - 0x3E, 0x0F, 0x80, 0x00, 0x1F, 0x07, 0x80, 0x00, 0x0F, 0x87, 0x80, 0x00, - 0x07, 0xC7, 0x80, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, 0xFF, 0x07, 0xFE, - 0x03, 0xCF, 0xC0, 0xFE, 0x03, 0xC7, 0xE0, 0x3C, 0x07, 0xC3, 0xF0, 0x1C, - 0x07, 0xC0, 0xFC, 0x0C, 0x03, 0xC0, 0x7E, 0x0E, 0x03, 0xE0, 0x3F, 0x0E, - 0x01, 0xF0, 0x1F, 0xC6, 0x01, 0xF8, 0x07, 0xF6, 0x00, 0xFC, 0x03, 0xFF, - 0x00, 0x7E, 0x00, 0xFF, 0x00, 0x3F, 0x80, 0x7F, 0x80, 0x1F, 0xC0, 0x1F, - 0xC0, 0x07, 0xF0, 0x0F, 0xF0, 0x13, 0xFE, 0x0F, 0xFE, 0x18, 0xFF, 0xFE, - 0xFF, 0xF8, 0x3F, 0xFE, 0x3F, 0xF8, 0x07, 0xF8, 0x03, 0xF0, 0x00, 0x1C, - 0x7D, 0xFB, 0xF7, 0xCF, 0x9E, 0x3C, 0x71, 0xE3, 0x87, 0x0C, 0x00, 0x00, - 0x04, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x3C, 0x01, 0xE0, 0x0F, 0x80, 0x3C, 0x00, 0xF0, 0x07, - 0xC0, 0x1E, 0x00, 0x78, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF0, 0x03, - 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, - 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x30, 0x00, 0xE0, 0x01, 0x80, - 0x06, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x60, 0x01, 0x80, 0x00, 0x00, 0x01, - 0x00, 0x06, 0x00, 0x08, 0x00, 0x30, 0x00, 0x40, 0x01, 0x80, 0x06, 0x00, - 0x1C, 0x00, 0x30, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0xF0, - 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x7C, - 0x01, 0xF0, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x03, 0xE0, 0x0F, 0x80, 0x3C, - 0x01, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0xF0, 0x03, 0x80, 0x1E, 0x00, 0xF0, - 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x06, 0x00, 0x30, 0x00, 0x80, 0x00, 0x00, - 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x07, 0x0E, 0x1D, 0xF1, - 0xC7, 0xFF, 0x11, 0xFF, 0xE2, 0x3F, 0x7E, 0x4F, 0xC0, 0x3E, 0x00, 0x07, - 0xC0, 0x3F, 0x27, 0xEF, 0xC4, 0x7F, 0xF8, 0x8F, 0xFE, 0x38, 0xFB, 0x87, - 0x0E, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0x70, 0x00, 0x00, - 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x03, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x01, - 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, - 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0x80, 0x00, 0x0F, 0x07, 0xE1, 0xFC, 0x7F, 0x1F, 0xC3, 0xF0, 0x7C, - 0x0E, 0x03, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x1C, 0x04, 0x00, 0x7F, 0xF7, - 0xFF, 0x7F, 0xEF, 0xFE, 0xFF, 0xE0, 0x3C, 0x7E, 0xFF, 0xFF, 0xFF, 0x7E, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, - 0x78, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x07, - 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3C, - 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x01, 0xE0, - 0x00, 0x7C, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, - 0x1E, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0xE3, 0x80, 0x0F, 0x07, 0x00, 0x7C, 0x1C, 0x03, 0xE0, 0x78, 0x0F, 0x81, - 0xE0, 0x7C, 0x07, 0x83, 0xF0, 0x1F, 0x0F, 0xC0, 0xFC, 0x7E, 0x03, 0xF1, - 0xF8, 0x0F, 0xCF, 0xE0, 0x3F, 0x3F, 0x00, 0xFD, 0xFC, 0x07, 0xF7, 0xF0, - 0x1F, 0xDF, 0xC0, 0x7F, 0x7E, 0x01, 0xFB, 0xF8, 0x0F, 0xEF, 0xE0, 0x3F, - 0xBF, 0x80, 0xFE, 0xFC, 0x03, 0xF3, 0xF0, 0x1F, 0xCF, 0xC0, 0x7F, 0x3F, - 0x01, 0xF8, 0xFC, 0x07, 0xE3, 0xE0, 0x3F, 0x0F, 0x80, 0xFC, 0x1E, 0x07, - 0xE0, 0x78, 0x1F, 0x00, 0xE0, 0x78, 0x03, 0x83, 0xC0, 0x07, 0x1E, 0x00, - 0x07, 0xE0, 0x00, 0x00, 0x00, 0x70, 0x01, 0xFE, 0x01, 0xFF, 0xE0, 0x00, - 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, - 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x00, - 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xE0, - 0x00, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xFC, - 0x00, 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF0, 0x00, 0x3F, - 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x1F, 0xF8, 0x0F, 0xFF, 0xF0, 0x00, - 0x0F, 0x80, 0x01, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x7F, 0xFE, 0x03, 0x83, - 0xF8, 0x0C, 0x07, 0xF0, 0x60, 0x1F, 0xC3, 0x00, 0x3F, 0x00, 0x00, 0xFC, - 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x1E, - 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, - 0x0E, 0x00, 0x00, 0x70, 0x06, 0x03, 0x80, 0x10, 0x1C, 0x00, 0xC0, 0xE0, - 0x06, 0x07, 0xFF, 0xF8, 0x3F, 0xFF, 0xE1, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, - 0x3F, 0xFF, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, - 0x60, 0xFE, 0x03, 0x01, 0xFC, 0x08, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, - 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0xFC, - 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0xF0, 0x00, - 0x7F, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x03, - 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, - 0x00, 0x0F, 0x80, 0x00, 0x3C, 0x1C, 0x01, 0xF0, 0xF8, 0x07, 0x83, 0xF0, - 0x3C, 0x0F, 0xE1, 0xE0, 0x1F, 0xFE, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x00, - 0x07, 0x00, 0x00, 0x07, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xE0, 0x00, - 0x07, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x07, 0xFC, 0x00, - 0x06, 0xFC, 0x00, 0x06, 0x7E, 0x00, 0x06, 0x3F, 0x00, 0x06, 0x3F, 0x00, - 0x06, 0x1F, 0x80, 0x06, 0x0F, 0xC0, 0x06, 0x07, 0xE0, 0x03, 0x07, 0xE0, - 0x03, 0x03, 0xF0, 0x03, 0x01, 0xF8, 0x03, 0x01, 0xFC, 0x03, 0x00, 0xFC, - 0x03, 0x00, 0x7E, 0x03, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, - 0xF0, 0xFF, 0xFF, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x03, - 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, - 0x7F, 0xFC, 0x00, 0xFF, 0xFC, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x03, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x07, - 0xFF, 0x00, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0xC0, 0x00, 0xFF, 0xE0, 0x00, - 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, - 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0xFC, - 0x07, 0x80, 0xFC, 0x0F, 0x00, 0xFE, 0x1E, 0x00, 0x7F, 0xF8, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0x80, 0x00, - 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x01, 0xFC, - 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, - 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xF0, 0x0F, 0xE1, 0xF0, 0x3F, 0x81, 0xF0, - 0x7F, 0x03, 0xF0, 0xFC, 0x07, 0xE3, 0xF8, 0x0F, 0xC7, 0xF0, 0x1F, 0x8F, - 0xC0, 0x7F, 0x1F, 0x80, 0xFE, 0x3F, 0x01, 0xFC, 0x7C, 0x03, 0xF0, 0xF8, - 0x0F, 0xE1, 0xF0, 0x1F, 0xC1, 0xE0, 0x3F, 0x03, 0xC0, 0xFC, 0x07, 0x81, - 0xF0, 0x07, 0x87, 0xC0, 0x07, 0xFF, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xFF, - 0xFC, 0x1F, 0xFF, 0xF8, 0x3F, 0xFF, 0xE0, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, - 0x07, 0x00, 0x1C, 0x08, 0x00, 0x78, 0x30, 0x01, 0xE0, 0x40, 0x03, 0xC0, - 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, - 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x78, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, - 0x1E, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x03, 0xFE, 0x00, 0x3C, 0x78, - 0x03, 0xC1, 0xE0, 0x3C, 0x07, 0x81, 0xE0, 0x3C, 0x1F, 0x01, 0xE0, 0xF8, - 0x0F, 0x07, 0xC0, 0x78, 0x3F, 0x03, 0xC1, 0xF8, 0x3C, 0x0F, 0xE1, 0xE0, - 0x3F, 0x9E, 0x01, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x1F, 0xFC, 0x03, 0xCF, 0xF0, 0x3C, 0x3F, 0x83, 0xC0, 0xFC, 0x3C, - 0x03, 0xF1, 0xE0, 0x1F, 0x9E, 0x00, 0x7C, 0xF0, 0x03, 0xE7, 0x80, 0x1F, - 0x3C, 0x00, 0xF9, 0xE0, 0x07, 0x87, 0x00, 0x3C, 0x3C, 0x03, 0xC0, 0xF0, - 0x3C, 0x03, 0xC3, 0xC0, 0x07, 0xF0, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, - 0xE0, 0x03, 0xF1, 0xE0, 0x0F, 0xC1, 0xC0, 0x3F, 0x03, 0xC0, 0xFE, 0x07, - 0x81, 0xF8, 0x0F, 0x87, 0xF0, 0x1F, 0x0F, 0xC0, 0x3E, 0x3F, 0x80, 0xFC, - 0x7F, 0x01, 0xF8, 0xFC, 0x03, 0xF1, 0xF8, 0x07, 0xE3, 0xF0, 0x1F, 0xC7, - 0xE0, 0x3F, 0x8F, 0xC0, 0x7E, 0x0F, 0x81, 0xFC, 0x1F, 0x03, 0xF8, 0x1F, - 0x0F, 0xE0, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x03, - 0xF8, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF8, - 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x1F, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x01, 0xE0, 0x1F, 0x81, 0xFE, 0x0F, - 0xF0, 0x7F, 0x81, 0xF8, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x80, 0x7E, 0x07, 0xF8, 0x3F, - 0xC1, 0xFE, 0x07, 0xE0, 0x1E, 0x00, 0x00, 0x78, 0x01, 0xF8, 0x07, 0xF8, - 0x0F, 0xF0, 0x1F, 0xE0, 0x1F, 0x80, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x80, - 0x1F, 0x80, 0x3F, 0x80, 0x7F, 0x00, 0xFE, 0x00, 0xFC, 0x00, 0xF8, 0x00, - 0xE0, 0x01, 0xC0, 0x07, 0x00, 0x0C, 0x00, 0x30, 0x01, 0xC0, 0x0E, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x07, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x7F, 0x00, 0x03, 0xFF, 0x00, 0x0F, 0xFC, 0x00, 0x3F, 0xF0, - 0x01, 0xFF, 0xC0, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, 0x7F, 0xE0, 0x00, - 0xFF, 0x80, 0x00, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0xE0, 0x00, - 0x1F, 0xF8, 0x00, 0x07, 0xFE, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, - 0x00, 0x0F, 0xFC, 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x07, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x00, 0x0F, 0xFC, 0x00, 0x03, 0xFF, 0x80, - 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xFF, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0xFF, 0x00, 0x03, 0xFF, 0x00, 0x1F, 0xFC, - 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x3F, 0xF0, 0x00, - 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xE0, 0x00, 0x00, - 0x80, 0x00, 0x00, 0x01, 0xF8, 0x01, 0xFF, 0x80, 0xF1, 0xF0, 0x38, 0x3E, - 0x1E, 0x0F, 0xC7, 0xC3, 0xF1, 0xF0, 0xFC, 0x7C, 0x3F, 0x0E, 0x0F, 0xC0, - 0x07, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x07, - 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x03, 0xC0, 0x01, 0xF8, 0x00, 0xFF, 0x00, 0x3F, 0xC0, 0x0F, 0xF0, - 0x01, 0xF8, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x1F, - 0xFF, 0xC0, 0x00, 0x3F, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x7C, - 0x00, 0x03, 0x80, 0x7C, 0x00, 0x00, 0xE0, 0x7C, 0x00, 0x00, 0x38, 0x3C, - 0x00, 0xF0, 0x4C, 0x3E, 0x00, 0xFD, 0xE7, 0x1E, 0x00, 0xF3, 0xF1, 0x9F, - 0x00, 0xF1, 0xF0, 0xEF, 0x80, 0xF0, 0x78, 0x3F, 0x80, 0xF0, 0x3C, 0x1F, - 0xC0, 0x78, 0x1E, 0x0F, 0xE0, 0x78, 0x1E, 0x07, 0xF0, 0x3C, 0x0F, 0x03, - 0xF8, 0x3E, 0x07, 0x81, 0xFC, 0x1E, 0x07, 0x81, 0xFE, 0x0F, 0x03, 0xC0, - 0xDF, 0x07, 0x83, 0xC0, 0x6F, 0x83, 0xC3, 0xE0, 0x63, 0xE1, 0xF3, 0xF0, - 0x71, 0xF0, 0x7E, 0x78, 0x70, 0xF8, 0x1E, 0x3F, 0xF0, 0x3E, 0x00, 0x07, - 0xE0, 0x0F, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x03, 0x80, 0x03, 0xF0, - 0x07, 0xC0, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x00, - 0x00, 0x06, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, - 0x7E, 0x00, 0x00, 0x06, 0xFC, 0x00, 0x00, 0x19, 0xF8, 0x00, 0x00, 0x63, - 0xF8, 0x00, 0x00, 0xC7, 0xF0, 0x00, 0x03, 0x07, 0xE0, 0x00, 0x06, 0x0F, - 0xC0, 0x00, 0x18, 0x1F, 0x80, 0x00, 0x60, 0x3F, 0x00, 0x00, 0xC0, 0x7F, - 0x00, 0x03, 0x00, 0xFE, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0xF8, - 0x00, 0x60, 0x03, 0xF0, 0x00, 0xC0, 0x07, 0xE0, 0x03, 0x00, 0x0F, 0xE0, - 0x0E, 0x00, 0x1F, 0xC0, 0x18, 0x00, 0x3F, 0x80, 0x70, 0x00, 0x7F, 0x01, - 0xC0, 0x00, 0xFE, 0x03, 0x80, 0x01, 0xFE, 0x1F, 0x80, 0x07, 0xFE, 0x7F, - 0xC0, 0x3F, 0xFF, 0x01, 0xFF, 0xFF, 0x80, 0x00, 0xFF, 0xFF, 0xE0, 0x00, - 0xFE, 0x1F, 0xE0, 0x01, 0xFC, 0x1F, 0xE0, 0x03, 0xF8, 0x1F, 0xE0, 0x0F, - 0xE0, 0x3F, 0xC0, 0x1F, 0xC0, 0x7F, 0x80, 0x3F, 0x80, 0xFF, 0x00, 0x7F, - 0x01, 0xFE, 0x01, 0xFC, 0x03, 0xF8, 0x03, 0xF8, 0x0F, 0xF0, 0x07, 0xF0, - 0x1F, 0xC0, 0x0F, 0xC0, 0x7F, 0x00, 0x3F, 0x87, 0xF0, 0x00, 0x7F, 0xFF, - 0x00, 0x00, 0xFE, 0x1F, 0xC0, 0x03, 0xF8, 0x0F, 0xE0, 0x07, 0xF0, 0x0F, - 0xE0, 0x0F, 0xE0, 0x1F, 0xC0, 0x1F, 0xC0, 0x3F, 0xC0, 0x7F, 0x00, 0x7F, - 0x80, 0xFE, 0x00, 0xFF, 0x01, 0xFC, 0x01, 0xFE, 0x03, 0xF0, 0x07, 0xFC, - 0x0F, 0xE0, 0x0F, 0xF0, 0x1F, 0xC0, 0x3F, 0xE0, 0x3F, 0x80, 0x7F, 0x80, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x0F, 0xF8, 0x07, 0xFF, 0xFF, 0xC0, 0x3F, - 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x08, 0x00, 0x7F, 0xFE, 0xC0, - 0x0F, 0xF0, 0x7E, 0x00, 0xFE, 0x01, 0xF0, 0x1F, 0xE0, 0x07, 0x01, 0xFE, - 0x00, 0x38, 0x1F, 0xE0, 0x00, 0xC0, 0xFE, 0x00, 0x06, 0x0F, 0xF0, 0x00, - 0x30, 0xFF, 0x00, 0x01, 0x07, 0xF8, 0x00, 0x08, 0x7F, 0x80, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x00, 0x06, 0x03, 0xFC, 0x00, - 0x70, 0x0F, 0xE0, 0x07, 0x00, 0x1F, 0xC0, 0xE0, 0x00, 0x7F, 0xFE, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x00, 0x3F, 0xFF, 0xFE, - 0x00, 0x00, 0xFE, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x3F, 0x00, 0x03, 0xF8, - 0x07, 0xF0, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x03, - 0xF8, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x1F, 0xC0, 0x03, 0xFC, - 0x03, 0xF8, 0x00, 0x7F, 0x80, 0x7F, 0x00, 0x0F, 0xF0, 0x0F, 0xC0, 0x01, - 0xFE, 0x03, 0xF8, 0x00, 0x3F, 0xC0, 0x7F, 0x00, 0x07, 0xF8, 0x0F, 0xE0, - 0x01, 0xFF, 0x03, 0xF8, 0x00, 0x3F, 0xE0, 0x7F, 0x00, 0x07, 0xF8, 0x0F, - 0xE0, 0x00, 0xFF, 0x01, 0xFC, 0x00, 0x3F, 0xE0, 0x7F, 0x00, 0x07, 0xF8, - 0x0F, 0xE0, 0x01, 0xFF, 0x01, 0xFC, 0x00, 0x3F, 0xC0, 0x3F, 0x00, 0x0F, - 0xF0, 0x0F, 0xE0, 0x01, 0xFC, 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x3F, 0x80, - 0x1F, 0xC0, 0x0F, 0xE0, 0x0F, 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, 0x7F, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xF8, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFF, - 0x00, 0x7F, 0xFF, 0xFF, 0x00, 0x3F, 0xC0, 0x7E, 0x00, 0x3F, 0x80, 0x1E, - 0x00, 0x3F, 0x80, 0x0E, 0x00, 0x7F, 0x00, 0x06, 0x00, 0x7F, 0x00, 0x04, - 0x00, 0x7F, 0x00, 0x04, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, 0x01, 0x80, - 0x00, 0xFE, 0x01, 0x00, 0x00, 0xFE, 0x03, 0x00, 0x00, 0xFC, 0x0F, 0x00, - 0x01, 0xFF, 0xFF, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x01, 0xFC, 0x3E, 0x00, - 0x03, 0xF8, 0x1E, 0x00, 0x03, 0xF8, 0x0C, 0x00, 0x03, 0xF8, 0x0C, 0x00, - 0x03, 0xF8, 0x0C, 0x00, 0x07, 0xF0, 0x08, 0x00, 0x07, 0xF0, 0x00, 0x08, - 0x07, 0xF0, 0x00, 0x18, 0x07, 0xE0, 0x00, 0x30, 0x0F, 0xE0, 0x00, 0x30, - 0x0F, 0xE0, 0x00, 0x70, 0x0F, 0xE0, 0x01, 0xE0, 0x1F, 0xC0, 0x07, 0xE0, - 0x1F, 0xE0, 0x3F, 0xE0, 0x3F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xC0, - 0x01, 0xFF, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xFC, 0x00, 0xFF, 0x03, 0xF0, - 0x01, 0xFC, 0x01, 0xE0, 0x03, 0xF8, 0x01, 0xC0, 0x0F, 0xE0, 0x01, 0x80, - 0x1F, 0xC0, 0x02, 0x00, 0x3F, 0x80, 0x04, 0x00, 0x7F, 0x00, 0x00, 0x01, - 0xFC, 0x03, 0x00, 0x03, 0xF8, 0x04, 0x00, 0x07, 0xF0, 0x18, 0x00, 0x0F, - 0xC0, 0xF0, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0xFE, - 0x1F, 0x00, 0x03, 0xF8, 0x1E, 0x00, 0x07, 0xF0, 0x18, 0x00, 0x0F, 0xE0, - 0x30, 0x00, 0x1F, 0xC0, 0x60, 0x00, 0x7F, 0x00, 0x80, 0x00, 0xFE, 0x01, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0x02, 0x00, 0x0F, 0xFF, 0xEE, 0x00, 0x3F, 0xC0, - 0xFC, 0x00, 0x7F, 0x00, 0x7C, 0x01, 0xFE, 0x00, 0x3C, 0x03, 0xFC, 0x00, - 0x38, 0x07, 0xF8, 0x00, 0x18, 0x07, 0xF0, 0x00, 0x18, 0x0F, 0xF0, 0x00, - 0x10, 0x1F, 0xE0, 0x00, 0x10, 0x1F, 0xE0, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x00, 0xFF, 0x80, 0x1F, - 0xFF, 0xFF, 0x00, 0x07, 0xFC, 0xFF, 0x00, 0x03, 0xF8, 0xFF, 0x00, 0x03, - 0xF8, 0xFF, 0x00, 0x03, 0xF0, 0xFF, 0x00, 0x03, 0xF0, 0xFF, 0x00, 0x07, - 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xE0, 0x7F, 0x80, 0x07, - 0xE0, 0x3F, 0x80, 0x0F, 0xE0, 0x1F, 0xC0, 0x0F, 0xC0, 0x0F, 0xE0, 0x0F, - 0xC0, 0x07, 0xF0, 0x3F, 0x80, 0x01, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xE0, - 0x00, 0x01, 0xFF, 0xFC, 0x7F, 0xFE, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, 0x00, - 0xFE, 0x00, 0x3F, 0xC0, 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, - 0xFE, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x00, - 0x3F, 0x80, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x01, 0xFC, 0x00, - 0x7F, 0x00, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x07, 0xF0, 0x01, 0xFC, 0x00, - 0x0F, 0xC0, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x00, 0x7F, 0xFF, - 0xFF, 0xC0, 0x00, 0xFF, 0xFF, 0xFF, 0x80, 0x03, 0xF8, 0x00, 0x7F, 0x00, - 0x07, 0xF0, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x03, 0xF8, 0x00, 0x1F, 0xC0, - 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x3F, 0x80, - 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x03, 0xF0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, - 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x0F, 0xE0, - 0x00, 0xFF, 0x00, 0x3F, 0xC0, 0x01, 0xFE, 0x00, 0x7F, 0x80, 0x07, 0xFC, - 0x01, 0xFF, 0x00, 0x3F, 0xFF, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0xF8, - 0x03, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x3F, - 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xF0, 0x00, - 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFE, 0x00, 0x07, 0xF0, - 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x07, - 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFC, 0x00, - 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x3F, 0xC0, 0x01, 0xFC, - 0x00, 0x1F, 0xF0, 0x03, 0xFF, 0xF0, 0x00, 0x00, 0x07, 0xFF, 0xE0, 0x00, - 0x3F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x07, 0x03, 0xF0, 0x01, 0xF0, 0xFE, 0x00, - 0x3E, 0x1F, 0xC0, 0x07, 0xC3, 0xF0, 0x00, 0xF8, 0xFC, 0x00, 0x0F, 0x3F, - 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x01, 0xFF, 0xF8, - 0xFF, 0xC0, 0x1F, 0xF8, 0x0F, 0xC0, 0x03, 0xF8, 0x01, 0xC0, 0x00, 0xFE, - 0x00, 0xE0, 0x00, 0x3F, 0x80, 0x70, 0x00, 0x1F, 0xC0, 0x38, 0x00, 0x07, - 0xF0, 0x1C, 0x00, 0x01, 0xFC, 0x0E, 0x00, 0x00, 0x7F, 0x07, 0x00, 0x00, - 0x3F, 0x83, 0x80, 0x00, 0x0F, 0xE1, 0xC0, 0x00, 0x03, 0xF8, 0xE0, 0x00, - 0x00, 0xFC, 0x60, 0x00, 0x00, 0x7F, 0x7C, 0x00, 0x00, 0x1F, 0xFF, 0x00, - 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0xFE, 0x7F, - 0x00, 0x00, 0x3F, 0x9F, 0xC0, 0x00, 0x0F, 0xE3, 0xF8, 0x00, 0x07, 0xF0, - 0xFE, 0x00, 0x01, 0xFC, 0x1F, 0xC0, 0x00, 0x7F, 0x07, 0xF0, 0x00, 0x1F, - 0x80, 0xFE, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x03, 0xF8, 0x0F, 0xE0, 0x00, - 0xFE, 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x7F, 0x00, 0x1F, 0xE0, 0x0F, 0xE0, - 0x0F, 0xF8, 0x07, 0xFC, 0x0F, 0xFF, 0xC7, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, - 0x00, 0x03, 0xFF, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, - 0xE0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x03, 0xF8, 0x00, 0x04, 0x1F, 0xC0, 0x00, 0x60, 0xFC, 0x00, 0x06, - 0x0F, 0xE0, 0x00, 0x30, 0x7F, 0x00, 0x03, 0x83, 0xF8, 0x00, 0x7C, 0x3F, - 0x80, 0x0F, 0xC1, 0xFE, 0x03, 0xFE, 0x1F, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, - 0xFF, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x03, 0xFC, 0x00, 0x03, - 0xFC, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x80, 0x03, 0xFC, 0x00, 0x0F, 0xF8, - 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x80, 0x03, 0xFC, 0x00, 0x1F, 0xF0, 0x00, - 0x6F, 0xC0, 0x03, 0xFF, 0x00, 0x06, 0xFC, 0x00, 0x37, 0xF0, 0x00, 0x6F, - 0xE0, 0x06, 0x7E, 0x00, 0x04, 0xFE, 0x00, 0xEF, 0xE0, 0x00, 0xCF, 0xE0, - 0x0C, 0xFE, 0x00, 0x0C, 0xFE, 0x01, 0x8F, 0xE0, 0x00, 0xCF, 0xE0, 0x38, - 0xFC, 0x00, 0x18, 0x7E, 0x03, 0x1F, 0xC0, 0x01, 0x87, 0xE0, 0x61, 0xFC, - 0x00, 0x18, 0x7E, 0x0E, 0x1F, 0xC0, 0x01, 0x87, 0xE0, 0xC3, 0xF8, 0x00, - 0x30, 0x7F, 0x18, 0x3F, 0x80, 0x03, 0x07, 0xF3, 0x83, 0xF8, 0x00, 0x30, - 0x7F, 0x30, 0x3F, 0x00, 0x06, 0x07, 0xF7, 0x07, 0xF0, 0x00, 0x60, 0x3F, - 0xE0, 0x7F, 0x00, 0x06, 0x03, 0xFC, 0x07, 0xF0, 0x00, 0xE0, 0x3F, 0xC0, - 0x7E, 0x00, 0x0C, 0x03, 0xF8, 0x0F, 0xE0, 0x00, 0xC0, 0x3F, 0x00, 0xFE, - 0x00, 0x0C, 0x03, 0xF0, 0x0F, 0xE0, 0x01, 0xC0, 0x3E, 0x01, 0xFC, 0x00, - 0x1C, 0x03, 0xC0, 0x1F, 0xC0, 0x07, 0xE0, 0x3C, 0x03, 0xFE, 0x00, 0xFF, - 0xC1, 0x81, 0xFF, 0xFC, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x03, 0xFF, - 0x00, 0x1F, 0xF8, 0x03, 0xF8, 0x00, 0x3F, 0x00, 0x0F, 0xE0, 0x00, 0xF0, - 0x00, 0x7F, 0x00, 0x07, 0x00, 0x03, 0xFC, 0x00, 0x38, 0x00, 0x1F, 0xE0, - 0x01, 0x80, 0x01, 0xBF, 0x80, 0x0C, 0x00, 0x0D, 0xFC, 0x00, 0x60, 0x00, - 0x67, 0xF0, 0x07, 0x00, 0x02, 0x3F, 0x80, 0x30, 0x00, 0x30, 0xFE, 0x01, - 0x80, 0x01, 0x87, 0xF0, 0x0C, 0x00, 0x0C, 0x1F, 0xC0, 0xC0, 0x00, 0xC0, - 0xFE, 0x06, 0x00, 0x06, 0x07, 0xF8, 0x30, 0x00, 0x30, 0x1F, 0xC1, 0x80, - 0x01, 0x80, 0xFF, 0x18, 0x00, 0x18, 0x03, 0xF8, 0xC0, 0x00, 0xC0, 0x1F, - 0xC6, 0x00, 0x06, 0x00, 0x7F, 0x60, 0x00, 0x60, 0x03, 0xFB, 0x00, 0x03, - 0x00, 0x0F, 0xF8, 0x00, 0x18, 0x00, 0x7F, 0xC0, 0x01, 0xC0, 0x01, 0xFC, - 0x00, 0x0C, 0x00, 0x0F, 0xE0, 0x00, 0x60, 0x00, 0x3F, 0x00, 0x03, 0x00, - 0x01, 0xF0, 0x00, 0x38, 0x00, 0x07, 0x80, 0x01, 0xC0, 0x00, 0x3C, 0x00, - 0x3F, 0x00, 0x01, 0xE0, 0x03, 0xFF, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, - 0x30, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0x7E, - 0x1F, 0x80, 0x01, 0xF0, 0x0F, 0x80, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x00, - 0x1F, 0x80, 0xFE, 0x00, 0x3F, 0x03, 0xF8, 0x00, 0x7E, 0x07, 0xF0, 0x00, - 0xFE, 0x1F, 0xC0, 0x01, 0xFC, 0x7F, 0x80, 0x03, 0xF8, 0xFE, 0x00, 0x07, - 0xF3, 0xFC, 0x00, 0x1F, 0xE7, 0xF0, 0x00, 0x3F, 0xDF, 0xE0, 0x00, 0x7F, - 0xBF, 0xC0, 0x00, 0xFE, 0x7F, 0x80, 0x03, 0xFC, 0xFE, 0x00, 0x07, 0xFB, - 0xFC, 0x00, 0x0F, 0xF7, 0xF8, 0x00, 0x3F, 0xCF, 0xF0, 0x00, 0x7F, 0x9F, - 0xC0, 0x00, 0xFE, 0x3F, 0x80, 0x03, 0xFC, 0x7F, 0x00, 0x07, 0xF0, 0xFE, - 0x00, 0x1F, 0xC0, 0xFC, 0x00, 0x3F, 0x81, 0xF8, 0x00, 0xFE, 0x03, 0xF0, - 0x03, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x03, 0xE0, 0x1F, 0x00, 0x03, 0xE0, - 0xFC, 0x00, 0x03, 0xFF, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x01, 0xFF, - 0xFF, 0x80, 0x00, 0xFF, 0xFF, 0xE0, 0x00, 0xFE, 0x1F, 0xE0, 0x01, 0xFC, - 0x1F, 0xE0, 0x03, 0xF0, 0x1F, 0xC0, 0x0F, 0xE0, 0x3F, 0xC0, 0x1F, 0xC0, - 0x7F, 0x80, 0x3F, 0x80, 0xFF, 0x00, 0x7E, 0x01, 0xFE, 0x01, 0xFC, 0x03, - 0xFC, 0x03, 0xF8, 0x0F, 0xF8, 0x07, 0xF0, 0x1F, 0xE0, 0x0F, 0xC0, 0x7F, - 0x80, 0x3F, 0x81, 0xFE, 0x00, 0x7F, 0x07, 0xF8, 0x00, 0xFF, 0xFF, 0xC0, - 0x03, 0xFF, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, - 0x1F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0x00, 0x00, 0x7E, 0x1F, 0x80, 0x01, - 0xF0, 0x0F, 0x80, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x80, 0x1F, 0x80, 0xFE, - 0x00, 0x3F, 0x03, 0xF8, 0x00, 0x7E, 0x07, 0xF0, 0x00, 0xFE, 0x1F, 0xC0, - 0x01, 0xFC, 0x7F, 0x80, 0x03, 0xF8, 0xFE, 0x00, 0x07, 0xF3, 0xFC, 0x00, - 0x1F, 0xE7, 0xF8, 0x00, 0x3F, 0xDF, 0xE0, 0x00, 0x7F, 0xBF, 0xC0, 0x00, - 0xFF, 0x7F, 0x80, 0x01, 0xFC, 0xFE, 0x00, 0x07, 0xFB, 0xFC, 0x00, 0x0F, - 0xF7, 0xF8, 0x00, 0x1F, 0xCF, 0xF0, 0x00, 0x7F, 0x9F, 0xC0, 0x00, 0xFE, - 0x3F, 0x80, 0x01, 0xFC, 0x7F, 0x00, 0x07, 0xF0, 0xFE, 0x00, 0x0F, 0xE1, - 0xFC, 0x00, 0x3F, 0x81, 0xF8, 0x00, 0x7E, 0x03, 0xF0, 0x01, 0xF8, 0x03, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x1F, 0x80, 0x03, 0xE0, 0x7E, 0x00, 0x03, - 0xF3, 0xF0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x7F, 0xE0, 0x03, 0x03, 0xFF, - 0xF8, 0x1C, 0x0F, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFF, 0xC0, 0xE0, 0x3F, - 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x01, 0xFF, 0xFF, 0xC0, 0x00, 0x7F, - 0xFF, 0xF8, 0x00, 0x3F, 0xC3, 0xFC, 0x00, 0x3F, 0x81, 0xFE, 0x00, 0x3F, - 0x80, 0xFF, 0x00, 0x7F, 0x80, 0xFF, 0x00, 0x7F, 0x00, 0xFF, 0x00, 0x7F, - 0x00, 0xFF, 0x00, 0x7F, 0x00, 0xFF, 0x00, 0xFF, 0x01, 0xFE, 0x00, 0xFE, - 0x01, 0xFE, 0x00, 0xFE, 0x03, 0xFC, 0x00, 0xFE, 0x07, 0xF8, 0x01, 0xFC, - 0x1F, 0xF0, 0x01, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0xFE, 0x00, 0x03, 0xFD, - 0xFE, 0x00, 0x03, 0xF8, 0xFF, 0x00, 0x03, 0xF8, 0xFF, 0x00, 0x03, 0xF8, - 0xFF, 0x00, 0x07, 0xF8, 0x7F, 0x80, 0x07, 0xF0, 0x7F, 0x80, 0x07, 0xF0, - 0x3F, 0x80, 0x07, 0xF0, 0x3F, 0xC0, 0x0F, 0xE0, 0x3F, 0xC0, 0x0F, 0xE0, - 0x1F, 0xC0, 0x0F, 0xE0, 0x1F, 0xE0, 0x1F, 0xE0, 0x1F, 0xE0, 0x1F, 0xE0, - 0x0F, 0xF0, 0x3F, 0xF0, 0x0F, 0xF8, 0xFF, 0xFC, 0x0F, 0xFE, 0x00, 0x1F, - 0x83, 0x00, 0x7F, 0xF7, 0x00, 0xF8, 0x7E, 0x01, 0xE0, 0x1E, 0x03, 0xC0, - 0x0E, 0x03, 0xC0, 0x0E, 0x07, 0xC0, 0x0E, 0x07, 0xC0, 0x04, 0x07, 0xC0, - 0x04, 0x07, 0xE0, 0x04, 0x07, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFC, - 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x7F, - 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x20, 0x00, 0xF8, 0x20, 0x00, - 0xF8, 0x20, 0x00, 0xF8, 0x70, 0x00, 0xF8, 0x70, 0x00, 0xF0, 0x78, 0x01, - 0xF0, 0x78, 0x03, 0xE0, 0x7E, 0x07, 0xC0, 0x47, 0xFF, 0x80, 0xC0, 0xFC, - 0x00, 0x3F, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFC, 0xFE, 0x3F, 0x8F, 0x9E, - 0x07, 0xF0, 0xF3, 0x81, 0xFC, 0x0E, 0x60, 0x3F, 0x81, 0x98, 0x07, 0xF0, - 0x13, 0x00, 0xFC, 0x02, 0x00, 0x3F, 0x80, 0x40, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x7F, 0xFF, - 0x03, 0xFF, 0x0F, 0xFC, 0x00, 0xFC, 0x07, 0xF0, 0x00, 0x38, 0x07, 0xF0, - 0x00, 0x38, 0x07, 0xF0, 0x00, 0x30, 0x0F, 0xE0, 0x00, 0x30, 0x0F, 0xE0, - 0x00, 0x70, 0x0F, 0xE0, 0x00, 0x60, 0x0F, 0xE0, 0x00, 0x60, 0x1F, 0xC0, - 0x00, 0xE0, 0x1F, 0xC0, 0x00, 0xC0, 0x1F, 0xC0, 0x00, 0xC0, 0x3F, 0x80, - 0x00, 0xC0, 0x3F, 0x80, 0x01, 0x80, 0x3F, 0x80, 0x01, 0x80, 0x3F, 0x80, - 0x01, 0x80, 0x7F, 0x00, 0x01, 0x80, 0x7F, 0x00, 0x03, 0x00, 0x7F, 0x00, - 0x03, 0x00, 0x7E, 0x00, 0x03, 0x00, 0xFE, 0x00, 0x06, 0x00, 0xFE, 0x00, - 0x06, 0x00, 0xFC, 0x00, 0x06, 0x00, 0xFC, 0x00, 0x0E, 0x00, 0xFC, 0x00, - 0x0C, 0x00, 0xFC, 0x00, 0x1C, 0x00, 0xFC, 0x00, 0x18, 0x00, 0x7E, 0x00, - 0x38, 0x00, 0x7E, 0x00, 0x70, 0x00, 0x3F, 0x81, 0xE0, 0x00, 0x0F, 0xFF, - 0x80, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0xFC, 0x03, 0xFE, 0x7F, 0xE0, - 0x01, 0xF8, 0x7F, 0x80, 0x01, 0xC0, 0xFF, 0x00, 0x03, 0x80, 0xFE, 0x00, - 0x0E, 0x01, 0xFC, 0x00, 0x18, 0x03, 0xF8, 0x00, 0x70, 0x07, 0xF0, 0x00, - 0xC0, 0x0F, 0xF0, 0x03, 0x80, 0x1F, 0xE0, 0x0E, 0x00, 0x1F, 0xC0, 0x18, - 0x00, 0x3F, 0x80, 0x70, 0x00, 0x7F, 0x00, 0xC0, 0x00, 0xFE, 0x03, 0x00, - 0x01, 0xFC, 0x0E, 0x00, 0x03, 0xF8, 0x18, 0x00, 0x07, 0xF8, 0x60, 0x00, - 0x07, 0xF1, 0xC0, 0x00, 0x0F, 0xE3, 0x00, 0x00, 0x1F, 0xCC, 0x00, 0x00, - 0x3F, 0xB8, 0x00, 0x00, 0x7F, 0x60, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0xFF, 0xF8, - 0xFF, 0xF0, 0xFF, 0x9F, 0xF8, 0x1F, 0xE0, 0x0F, 0x87, 0xF8, 0x07, 0xE0, - 0x07, 0x03, 0xF8, 0x03, 0xF0, 0x03, 0x80, 0xFE, 0x01, 0xF8, 0x01, 0x80, - 0x7F, 0x00, 0xFC, 0x00, 0xC0, 0x3F, 0x80, 0x7F, 0x00, 0xC0, 0x1F, 0xC0, - 0x7F, 0x80, 0x60, 0x0F, 0xE0, 0x3F, 0xC0, 0x60, 0x07, 0xF0, 0x37, 0xE0, - 0x30, 0x03, 0xF8, 0x1B, 0xF0, 0x30, 0x00, 0xFC, 0x19, 0xF8, 0x18, 0x00, - 0x7E, 0x0C, 0xFE, 0x18, 0x00, 0x3F, 0x84, 0x7F, 0x0C, 0x00, 0x1F, 0xC6, - 0x3F, 0x8C, 0x00, 0x0F, 0xE2, 0x1F, 0xC6, 0x00, 0x07, 0xF3, 0x07, 0xE6, - 0x00, 0x03, 0xF9, 0x83, 0xF3, 0x00, 0x01, 0xFD, 0x81, 0xFB, 0x00, 0x00, - 0x7E, 0xC0, 0xFD, 0x80, 0x00, 0x3F, 0xC0, 0x7F, 0x80, 0x00, 0x1F, 0xE0, - 0x3F, 0xC0, 0x00, 0x0F, 0xE0, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x0F, 0xE0, - 0x00, 0x03, 0xF0, 0x07, 0xE0, 0x00, 0x01, 0xF8, 0x01, 0xF0, 0x00, 0x00, - 0x78, 0x00, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x00, 0x1C, 0x00, - 0x38, 0x00, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x00, 0x06, 0x00, 0x0C, 0x00, - 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x03, 0xFF, 0xF0, 0xFF, 0xC0, 0x3F, - 0xE0, 0x0F, 0xC0, 0x03, 0xF8, 0x01, 0xE0, 0x00, 0xFE, 0x00, 0xE0, 0x00, - 0x3F, 0x80, 0x70, 0x00, 0x07, 0xE0, 0x18, 0x00, 0x01, 0xFC, 0x0C, 0x00, - 0x00, 0x7F, 0x06, 0x00, 0x00, 0x0F, 0xC3, 0x00, 0x00, 0x03, 0xF9, 0x80, - 0x00, 0x00, 0xFE, 0xC0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x07, 0xF8, - 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x0F, - 0xC0, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x00, 0x77, 0xF0, 0x00, 0x00, 0x39, 0xFC, 0x00, 0x00, - 0x1C, 0x3F, 0x00, 0x00, 0x06, 0x0F, 0xE0, 0x00, 0x03, 0x03, 0xF8, 0x00, - 0x01, 0x80, 0x7E, 0x00, 0x00, 0xE0, 0x1F, 0xC0, 0x00, 0x70, 0x07, 0xF0, - 0x00, 0x38, 0x01, 0xFC, 0x00, 0x1E, 0x00, 0x7F, 0x80, 0x1F, 0xC0, 0x1F, - 0xF0, 0x0F, 0xFC, 0x3F, 0xFF, 0x80, 0xFF, 0xF8, 0x3F, 0xF3, 0xFC, 0x00, - 0xFC, 0x1F, 0xC0, 0x07, 0x81, 0xFC, 0x00, 0x70, 0x0F, 0xC0, 0x0E, 0x00, - 0xFE, 0x00, 0xC0, 0x0F, 0xE0, 0x1C, 0x00, 0x7E, 0x03, 0x80, 0x07, 0xF0, - 0x30, 0x00, 0x7F, 0x06, 0x00, 0x03, 0xF0, 0xE0, 0x00, 0x3F, 0x8C, 0x00, - 0x03, 0xF9, 0x80, 0x00, 0x1F, 0xB0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x1F, - 0xE0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x01, - 0xFF, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xF0, 0x3F, - 0xFF, 0xFF, 0x03, 0xF8, 0x0F, 0xF0, 0x7C, 0x01, 0xFE, 0x07, 0x80, 0x3F, - 0xC0, 0x70, 0x03, 0xF8, 0x06, 0x00, 0x7F, 0x80, 0xC0, 0x0F, 0xF0, 0x08, - 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x07, 0xF8, 0x00, 0xC0, 0xFF, 0x00, 0x0C, 0x1F, 0xE0, 0x01, 0x81, 0xFE, - 0x00, 0x38, 0x3F, 0xC0, 0x07, 0x87, 0xF8, 0x01, 0xF0, 0xFF, 0x00, 0xFF, - 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x7F, 0xE0, 0x0F, - 0xFC, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, - 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF0, - 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, - 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x00, - 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xFE, 0x01, - 0xFF, 0xC0, 0x00, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x1C, - 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, - 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x07, 0x00, 0x3C, 0x01, 0xE0, 0x0F, 0x00, - 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x01, - 0xC0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x0F, 0x00, 0x78, 0x00, 0x7F, 0xE0, - 0x0F, 0xFC, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, - 0x07, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, - 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x00, - 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, - 0xE0, 0x00, 0x78, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, - 0x00, 0x01, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x07, 0xFC, - 0x01, 0xFF, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x7F, 0x00, - 0x03, 0xF8, 0x00, 0x3F, 0xC0, 0x01, 0xEF, 0x00, 0x1E, 0x78, 0x00, 0xF1, - 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x3C, 0x07, 0xC1, 0xE0, 0x3C, 0x07, 0x83, - 0xE0, 0x3C, 0x1E, 0x00, 0xF1, 0xF0, 0x07, 0x8F, 0x00, 0x1E, 0xF8, 0x00, - 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x70, 0x3E, - 0x0F, 0x83, 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x0E, 0x01, 0xC0, 0x00, 0x3C, - 0x0C, 0x03, 0xF9, 0xF0, 0x1F, 0x3F, 0x80, 0xF8, 0x7E, 0x07, 0xC1, 0xF8, - 0x3F, 0x07, 0xC0, 0xF8, 0x1F, 0x07, 0xE0, 0x7C, 0x3F, 0x01, 0xF0, 0xFC, - 0x0F, 0x87, 0xE0, 0x3E, 0x1F, 0x80, 0xF8, 0x7E, 0x03, 0xC3, 0xF8, 0x1F, - 0x0F, 0xC0, 0x7C, 0x3F, 0x03, 0xF0, 0xFC, 0x0F, 0x83, 0xF0, 0x7E, 0x3F, - 0xC2, 0xF8, 0xBF, 0x9B, 0xE4, 0x7F, 0xCF, 0xE0, 0xFE, 0x3F, 0x01, 0xE0, - 0x78, 0x00, 0x00, 0x7C, 0x00, 0x3F, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0x7E, - 0x00, 0x01, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, - 0x03, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x3E, 0x01, 0xF9, 0xFC, 0x07, - 0xEF, 0xF8, 0x1F, 0x47, 0xF0, 0x7E, 0x0F, 0xC3, 0xF8, 0x3F, 0x0F, 0xC0, - 0xFC, 0x3F, 0x03, 0xF1, 0xF8, 0x0F, 0xC7, 0xE0, 0x3F, 0x1F, 0x01, 0xF8, - 0x7C, 0x07, 0xE3, 0xF0, 0x1F, 0x8F, 0xC0, 0xFC, 0x3E, 0x03, 0xF1, 0xF8, - 0x0F, 0x87, 0xE0, 0x7C, 0x1F, 0x03, 0xE0, 0xFC, 0x0F, 0x03, 0xF0, 0x78, - 0x0F, 0xC7, 0xC0, 0x1F, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x3F, 0x00, - 0x3F, 0xE0, 0x1E, 0x3C, 0x0F, 0x0F, 0x07, 0x87, 0xC3, 0xE1, 0xF1, 0xF0, - 0x38, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, 0xF8, 0x00, - 0xFC, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0xFC, 0x03, 0x3F, - 0x00, 0xCF, 0xE0, 0x61, 0xFC, 0x70, 0x3F, 0xF8, 0x07, 0xFC, 0x00, 0xFC, - 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x7F, 0xE0, 0x00, - 0x07, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, - 0x07, 0x9F, 0x80, 0x0F, 0xFF, 0xC0, 0x0F, 0x9F, 0xE0, 0x0F, 0x87, 0xF0, - 0x0F, 0x83, 0xF0, 0x0F, 0xC1, 0xF8, 0x07, 0xC0, 0xFC, 0x07, 0xE0, 0x7C, - 0x07, 0xE0, 0x7E, 0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x1F, 0x81, 0xF8, 0x0F, - 0x80, 0xFC, 0x0F, 0xC0, 0xFE, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x3F, 0x03, - 0xF0, 0x1F, 0x83, 0xF8, 0x0F, 0xC1, 0xF8, 0xC7, 0xE1, 0xFC, 0xC3, 0xF9, - 0xBE, 0xC0, 0xFF, 0x9F, 0xC0, 0x7F, 0x8F, 0xC0, 0x0F, 0x83, 0xC0, 0x00, - 0x00, 0x3F, 0x00, 0x3F, 0xE0, 0x1E, 0x3C, 0x0F, 0x0F, 0x07, 0x83, 0xC3, - 0xE0, 0xF1, 0xF0, 0x3C, 0xFC, 0x1E, 0x3F, 0x0F, 0x9F, 0x83, 0xC7, 0xE3, - 0xE1, 0xFB, 0xE0, 0xFF, 0xE0, 0x3F, 0xC0, 0x0F, 0xC0, 0x03, 0xF0, 0x00, - 0xFC, 0x03, 0x3F, 0x01, 0x8F, 0xC0, 0xC1, 0xF8, 0x70, 0x7F, 0xF8, 0x07, - 0xFC, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x03, 0xCE, 0x00, - 0x00, 0x78, 0xF0, 0x00, 0x0F, 0x8F, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x1F, - 0x06, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x3F, - 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x01, - 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x03, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x06, 0x1F, 0x00, 0x00, 0xF1, 0xE0, - 0x00, 0x0F, 0x3E, 0x00, 0x00, 0xF3, 0xC0, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x7F, 0xF0, 0x00, 0x7E, - 0x3F, 0xE0, 0x7C, 0x0F, 0xF0, 0x7E, 0x07, 0xC0, 0x7E, 0x03, 0xE0, 0x3F, - 0x01, 0xF0, 0x1F, 0x01, 0xF8, 0x0F, 0x80, 0xFC, 0x07, 0xC0, 0xFC, 0x01, - 0xE0, 0xFC, 0x00, 0x78, 0xFC, 0x00, 0x1F, 0xFC, 0x00, 0x0F, 0xF0, 0x00, - 0x1C, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xF8, 0x00, - 0x07, 0xFF, 0x80, 0x01, 0xFF, 0xF8, 0x00, 0x7F, 0xFE, 0x00, 0x77, 0xFF, - 0x80, 0xF0, 0x7F, 0xC0, 0xF0, 0x07, 0xE0, 0xF0, 0x01, 0xF0, 0x78, 0x00, - 0xF8, 0x3C, 0x00, 0x78, 0x1F, 0x00, 0x7C, 0x07, 0xC0, 0x78, 0x01, 0xFF, - 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x04, 0x00, 0x01, 0xF8, 0x00, 0x1F, - 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, - 0x00, 0x1F, 0x87, 0xC0, 0x3E, 0x1F, 0xC0, 0xFC, 0x7F, 0x81, 0xF9, 0x9F, - 0x03, 0xE6, 0x3E, 0x07, 0xD8, 0x7C, 0x1F, 0xA0, 0xF8, 0x3F, 0x83, 0xF0, - 0x7F, 0x07, 0xE0, 0xFC, 0x0F, 0xC3, 0xF8, 0x3F, 0x07, 0xE0, 0x7E, 0x0F, - 0xC0, 0xFC, 0x3F, 0x03, 0xF0, 0x7E, 0x07, 0xE0, 0xFC, 0x0F, 0xC1, 0xF0, - 0x3F, 0x17, 0xE0, 0x7E, 0x6F, 0xC0, 0xF9, 0x9F, 0x01, 0xF6, 0x3E, 0x03, - 0xF8, 0xFC, 0x07, 0xF1, 0xC0, 0x07, 0x80, 0x01, 0xE0, 0x3F, 0x03, 0xF0, - 0x3F, 0x03, 0xF0, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xC7, - 0xFC, 0x1F, 0xC0, 0xF8, 0x0F, 0x81, 0xF8, 0x1F, 0x81, 0xF0, 0x1F, 0x03, - 0xF0, 0x3E, 0x03, 0xE0, 0x3E, 0x07, 0xE0, 0x7C, 0x07, 0xC0, 0xFC, 0x2F, - 0x84, 0xF8, 0xCF, 0x98, 0xFF, 0x0F, 0xE0, 0x78, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x01, 0x00, 0x00, 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x1F, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, - 0x7C, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, - 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF0, 0x00, - 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x1F, - 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3F, 0x00, - 0x60, 0xF8, 0x03, 0xC3, 0xC0, 0x0F, 0x1F, 0x00, 0x3C, 0xF8, 0x00, 0x7F, - 0xC0, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0xFC, 0x00, 0x07, - 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x01, - 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x03, - 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xE3, 0xFF, 0x03, 0xE0, 0xFC, 0x07, - 0xE0, 0xF0, 0x07, 0xE0, 0xE0, 0x07, 0xC1, 0xC0, 0x0F, 0xC3, 0x80, 0x0F, - 0xC7, 0x00, 0x0F, 0x8E, 0x00, 0x0F, 0xBE, 0x00, 0x1F, 0xFE, 0x00, 0x1F, - 0xFE, 0x00, 0x1F, 0xFE, 0x00, 0x1F, 0x3E, 0x00, 0x3F, 0x3F, 0x00, 0x3F, - 0x1F, 0x00, 0x3E, 0x1F, 0x00, 0x7E, 0x1F, 0x04, 0x7E, 0x1F, 0x8C, 0x7E, - 0x0F, 0x98, 0x7C, 0x0F, 0xF0, 0xFC, 0x07, 0xE0, 0xE0, 0x03, 0xC0, 0x00, - 0x08, 0x0F, 0xC7, 0xFE, 0x07, 0xF0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, 0x7C, - 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x0F, 0x80, 0x7C, 0x07, 0xE0, 0x3E, 0x01, - 0xF0, 0x1F, 0x80, 0xFC, 0x07, 0xC0, 0x3E, 0x03, 0xF0, 0x1F, 0x80, 0xF8, - 0x0F, 0xC0, 0x7E, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x8F, 0x8C, 0x7C, 0x43, - 0xE4, 0x1F, 0xE0, 0xFE, 0x03, 0xC0, 0x00, 0x00, 0x70, 0x78, 0x0F, 0x83, - 0xFE, 0x3F, 0x87, 0xF8, 0x1F, 0xCF, 0xF1, 0xFF, 0x03, 0xF1, 0x3E, 0x73, - 0xE0, 0x7E, 0x47, 0xD8, 0x7C, 0x0F, 0xD0, 0xFB, 0x1F, 0x81, 0xF4, 0x3E, - 0xC3, 0xF0, 0x3E, 0x87, 0xF0, 0x7C, 0x0F, 0xE0, 0xFE, 0x1F, 0x81, 0xF4, - 0x1F, 0x83, 0xF0, 0x3F, 0x07, 0xE0, 0x7C, 0x07, 0xE0, 0xFC, 0x1F, 0x81, - 0xF8, 0x1F, 0x83, 0xF0, 0x3F, 0x07, 0xE0, 0x7C, 0x07, 0xE0, 0xFC, 0x0F, - 0x80, 0xF8, 0x1F, 0x03, 0xF0, 0x3F, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0xFC, - 0x0F, 0x88, 0xF8, 0x1F, 0x81, 0xF3, 0x3F, 0x03, 0xE0, 0x3E, 0x47, 0xE0, - 0xFC, 0x07, 0xF0, 0xFC, 0x1F, 0x80, 0xFE, 0x18, 0x00, 0x00, 0x0F, 0x00, - 0x00, 0x70, 0xF8, 0x7F, 0xC3, 0xF8, 0x1F, 0x8F, 0xF0, 0x3F, 0x33, 0xE0, - 0x7C, 0x87, 0xC1, 0xF9, 0x0F, 0x83, 0xF4, 0x1F, 0x07, 0xD0, 0x3E, 0x0F, - 0xE0, 0xFC, 0x3F, 0x81, 0xF8, 0x7F, 0x03, 0xE0, 0xFC, 0x0F, 0xC1, 0xF8, - 0x1F, 0x87, 0xE0, 0x3E, 0x0F, 0xC0, 0xFC, 0x1F, 0x81, 0xF0, 0x3E, 0x03, - 0xE0, 0xFC, 0x0F, 0xC9, 0xF8, 0x1F, 0x33, 0xE0, 0x3E, 0x47, 0xC0, 0x7F, - 0x1F, 0x80, 0xFE, 0x38, 0x00, 0xF0, 0x00, 0x00, 0x3F, 0x00, 0x0E, 0x38, - 0x03, 0xC1, 0xC0, 0x78, 0x1E, 0x0F, 0x81, 0xF0, 0xF0, 0x1F, 0x1F, 0x01, - 0xF3, 0xE0, 0x1F, 0x3E, 0x03, 0xF7, 0xC0, 0x3F, 0x7C, 0x03, 0xF7, 0xC0, - 0x3E, 0xFC, 0x03, 0xEF, 0xC0, 0x7E, 0xF8, 0x07, 0xCF, 0x80, 0x7C, 0xF8, - 0x0F, 0x8F, 0x80, 0xF8, 0xF8, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x3C, 0x03, - 0xC7, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x0F, 0x1F, 0x00, 0x3F, 0xE7, 0xF8, - 0x01, 0xF9, 0xFF, 0x00, 0x1F, 0x47, 0xF0, 0x07, 0xF0, 0x7E, 0x00, 0xFE, - 0x0F, 0xC0, 0x1F, 0x81, 0xF8, 0x03, 0xF0, 0x3F, 0x00, 0xFC, 0x07, 0xE0, - 0x1F, 0x81, 0xFC, 0x03, 0xE0, 0x3F, 0x00, 0x7C, 0x07, 0xE0, 0x1F, 0x81, - 0xFC, 0x03, 0xF0, 0x3F, 0x00, 0x7C, 0x07, 0xE0, 0x0F, 0x81, 0xF8, 0x03, - 0xF0, 0x3E, 0x00, 0x7E, 0x0F, 0xC0, 0x0F, 0x81, 0xF0, 0x01, 0xF0, 0x7C, - 0x00, 0x7F, 0x1F, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xF3, 0xE0, 0x00, 0x3E, - 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0xFC, - 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0xF9, 0xF0, 0x1F, 0x1F, 0xC0, 0xF8, - 0x7E, 0x07, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, 0xF8, 0x1F, 0x87, 0xE0, 0x7C, - 0x3F, 0x01, 0xF0, 0xFC, 0x0F, 0xC7, 0xE0, 0x3E, 0x1F, 0x80, 0xF8, 0x7E, - 0x07, 0xE3, 0xF0, 0x1F, 0x8F, 0xC0, 0x7C, 0x3F, 0x03, 0xF0, 0xFC, 0x0F, - 0xC3, 0xF0, 0x7E, 0x0F, 0xC3, 0xF8, 0x3F, 0x9B, 0xE0, 0x7F, 0xDF, 0x01, - 0xFE, 0x7C, 0x01, 0xF1, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3E, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xF8, - 0x00, 0x7F, 0xF8, 0x00, 0x00, 0x71, 0xE1, 0xFF, 0x3E, 0x07, 0xE7, 0xF0, - 0x7E, 0xFF, 0x07, 0xE9, 0xE0, 0x7D, 0x0E, 0x07, 0xD0, 0x00, 0xFE, 0x00, - 0x0F, 0xE0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0x80, - 0x01, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xF0, - 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xC0, 0x00, 0x01, - 0xF1, 0x07, 0xFF, 0x0F, 0x0F, 0x0E, 0x07, 0x1E, 0x06, 0x1E, 0x06, 0x1F, - 0x02, 0x1F, 0x02, 0x1F, 0x80, 0x0F, 0xC0, 0x0F, 0xE0, 0x0F, 0xF0, 0x07, - 0xF8, 0x03, 0xF8, 0x01, 0xFC, 0x00, 0xFC, 0x40, 0x7C, 0x40, 0x7C, 0x60, - 0x3C, 0xE0, 0x38, 0xF0, 0x38, 0xF8, 0xF0, 0xDF, 0xC0, 0x00, 0x20, 0x03, - 0x00, 0x38, 0x03, 0x80, 0x3C, 0x03, 0xE0, 0x7F, 0x07, 0xFF, 0x3F, 0xF8, - 0x7C, 0x07, 0xE0, 0x3F, 0x01, 0xF0, 0x0F, 0x80, 0xFC, 0x07, 0xC0, 0x3E, - 0x03, 0xF0, 0x1F, 0x80, 0xF8, 0x07, 0xC0, 0x7E, 0x03, 0xF1, 0x1F, 0x08, - 0xF8, 0x87, 0xC8, 0x3F, 0xC1, 0xFC, 0x07, 0x80, 0x00, 0x00, 0x40, 0x00, - 0x1F, 0x03, 0xF7, 0xF8, 0x0F, 0x87, 0xE0, 0x3E, 0x1F, 0x81, 0xF8, 0x7E, - 0x07, 0xC1, 0xF0, 0x1F, 0x07, 0xC0, 0xFC, 0x3F, 0x03, 0xE0, 0xF8, 0x0F, - 0x83, 0xE0, 0x7E, 0x0F, 0x81, 0xF8, 0x7E, 0x0F, 0xC1, 0xF0, 0x3F, 0x07, - 0xC1, 0xFC, 0x1F, 0x07, 0xE0, 0xF8, 0x2F, 0x83, 0xE1, 0x3C, 0x6F, 0x8D, - 0xF1, 0x3E, 0x67, 0xC8, 0xFF, 0x1F, 0xE3, 0xF8, 0x7F, 0x07, 0xC0, 0xF0, - 0x00, 0x06, 0x07, 0x1F, 0x07, 0xBF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, - 0xF8, 0x3C, 0x7C, 0x0C, 0x3E, 0x06, 0x1F, 0x03, 0x0F, 0x83, 0x07, 0xC1, - 0x83, 0xE1, 0x81, 0xF1, 0x80, 0xF9, 0x80, 0x7C, 0xC0, 0x3E, 0xC0, 0x1F, - 0xC0, 0x0F, 0xC0, 0x07, 0xC0, 0x03, 0xC0, 0x01, 0xC0, 0x00, 0xC0, 0x00, - 0x40, 0x00, 0x06, 0x01, 0x81, 0xC7, 0xC0, 0x30, 0x7F, 0xF8, 0x0E, 0x0F, - 0x9F, 0x01, 0xC1, 0xF3, 0xE0, 0x78, 0x3E, 0x7C, 0x1F, 0x03, 0xCF, 0xC3, - 0xE0, 0x30, 0xF8, 0xFC, 0x06, 0x1F, 0x1F, 0xC0, 0x83, 0xE7, 0xF8, 0x30, - 0x7C, 0xFF, 0x04, 0x0F, 0xB7, 0xE1, 0x81, 0xF6, 0xFC, 0x60, 0x3F, 0x8F, - 0x98, 0x07, 0xE1, 0xF3, 0x00, 0xFC, 0x3E, 0xC0, 0x1F, 0x07, 0xF0, 0x03, - 0xE0, 0xFC, 0x00, 0x78, 0x1F, 0x80, 0x0F, 0x03, 0xE0, 0x01, 0xC0, 0x78, - 0x00, 0x30, 0x0E, 0x00, 0x06, 0x01, 0x80, 0x00, 0x00, 0xF0, 0x1E, 0x0F, - 0xF0, 0x3E, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0xFF, 0x00, 0xF9, 0x8E, 0x00, - 0xFB, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xBF, 0x00, 0x01, - 0xBF, 0x08, 0x73, 0x1F, 0x18, 0xFF, 0x1F, 0x30, 0xFE, 0x1F, 0xE0, 0xFC, - 0x0F, 0xC0, 0x78, 0x07, 0x80, 0x00, 0x30, 0x1C, 0x0F, 0xF0, 0x7C, 0x07, - 0xE0, 0xF8, 0x0F, 0xC1, 0xF0, 0x0F, 0xC1, 0xE0, 0x1F, 0x81, 0xC0, 0x3F, - 0x03, 0x00, 0x3E, 0x06, 0x00, 0x7E, 0x08, 0x00, 0xFC, 0x30, 0x01, 0xF8, - 0x60, 0x01, 0xF1, 0x80, 0x03, 0xE3, 0x00, 0x07, 0xCC, 0x00, 0x0F, 0xD8, - 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x01, 0xC1, 0x80, 0x07, 0xE6, - 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x07, - 0xFF, 0xE1, 0xFF, 0xF8, 0x3F, 0xFF, 0x07, 0xFF, 0xC0, 0x80, 0x70, 0x30, - 0x1C, 0x04, 0x07, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, - 0x80, 0x00, 0x60, 0x00, 0x18, 0x00, 0x06, 0x00, 0x01, 0xC0, 0x00, 0x30, - 0x00, 0x0C, 0x00, 0x03, 0xE0, 0x00, 0xFE, 0x00, 0x1F, 0xE0, 0xC7, 0xFC, - 0x3D, 0xCF, 0xC7, 0x90, 0xF8, 0xF0, 0x07, 0x9C, 0x00, 0x3E, 0x00, 0x00, - 0x01, 0xF0, 0x00, 0xFC, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, - 0x07, 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xE0, - 0x00, 0x3E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0xC0, - 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, - 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, - 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, - 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, - 0x3E, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, - 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, - 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, - 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x03, 0xE0, 0x00, - 0x7C, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, - 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x03, 0xF0, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x03, 0xFF, 0x01, 0x3F, - 0xFE, 0x1D, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0x00, 0x1F, 0xF0, 0x00, 0x1F, - 0x00}; - -const GFXglyph FreeSerifBoldItalic24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 15, 33, 18, 3, -31}, // 0x21 '!' - {62, 19, 13, 26, 6, -31}, // 0x22 '"' - {93, 27, 33, 23, -2, -32}, // 0x23 '#' - {205, 24, 39, 24, -1, -33}, // 0x24 '$' - {322, 35, 32, 39, 2, -30}, // 0x25 '%' - {462, 33, 33, 37, 0, -31}, // 0x26 '&' - {599, 7, 13, 13, 6, -31}, // 0x27 ''' - {611, 14, 41, 16, 1, -31}, // 0x28 '(' - {683, 14, 41, 16, -2, -31}, // 0x29 ')' - {755, 19, 20, 23, 3, -31}, // 0x2A '*' - {803, 22, 23, 27, 2, -22}, // 0x2B '+' - {867, 10, 15, 12, -3, -5}, // 0x2C ',' - {886, 12, 5, 16, 0, -12}, // 0x2D '-' - {894, 8, 7, 12, 0, -5}, // 0x2E '.' - {901, 19, 33, 16, 0, -31}, // 0x2F '/' - {980, 22, 33, 23, 1, -31}, // 0x30 '0' - {1071, 20, 32, 23, 0, -31}, // 0x31 '1' - {1151, 22, 32, 23, 1, -31}, // 0x32 '2' - {1239, 22, 33, 24, 0, -31}, // 0x33 '3' - {1330, 25, 32, 23, 0, -31}, // 0x34 '4' - {1430, 24, 32, 24, 0, -30}, // 0x35 '5' - {1526, 23, 32, 24, 1, -30}, // 0x36 '6' - {1618, 23, 31, 23, 3, -30}, // 0x37 '7' - {1708, 21, 33, 23, 1, -31}, // 0x38 '8' - {1795, 23, 33, 23, 0, -31}, // 0x39 '9' - {1890, 13, 22, 12, 0, -20}, // 0x3A ':' - {1926, 15, 30, 12, -2, -20}, // 0x3B ';' - {1983, 24, 25, 27, 1, -23}, // 0x3C '<' - {2058, 24, 14, 27, 3, -18}, // 0x3D '=' - {2100, 24, 25, 27, 3, -23}, // 0x3E '>' - {2175, 18, 33, 24, 4, -31}, // 0x3F '?' - {2250, 33, 33, 39, 3, -31}, // 0x40 '@' - {2387, 31, 32, 33, 0, -31}, // 0x41 'A' - {2511, 31, 31, 30, 0, -30}, // 0x42 'B' - {2632, 29, 33, 29, 2, -31}, // 0x43 'C' - {2752, 35, 31, 34, 0, -30}, // 0x44 'D' - {2888, 32, 31, 30, 0, -30}, // 0x45 'E' - {3012, 31, 31, 29, 0, -30}, // 0x46 'F' - {3133, 32, 33, 33, 2, -31}, // 0x47 'G' - {3265, 39, 31, 35, 0, -30}, // 0x48 'H' - {3417, 21, 31, 18, 0, -30}, // 0x49 'I' - {3499, 27, 36, 23, 0, -30}, // 0x4A 'J' - {3621, 34, 31, 31, 0, -30}, // 0x4B 'K' - {3753, 29, 31, 29, 0, -30}, // 0x4C 'L' - {3866, 44, 32, 41, 0, -30}, // 0x4D 'M' - {4042, 37, 32, 33, 0, -30}, // 0x4E 'N' - {4190, 31, 33, 32, 2, -31}, // 0x4F 'O' - {4318, 31, 31, 28, 0, -30}, // 0x50 'P' - {4439, 31, 42, 32, 2, -31}, // 0x51 'Q' - {4602, 32, 31, 31, 0, -30}, // 0x52 'R' - {4726, 24, 33, 24, 0, -31}, // 0x53 'S' - {4825, 27, 31, 28, 4, -30}, // 0x54 'T' - {4930, 32, 32, 34, 5, -30}, // 0x55 'U' - {5058, 31, 32, 33, 6, -30}, // 0x56 'V' - {5182, 41, 32, 44, 6, -30}, // 0x57 'W' - {5346, 34, 31, 33, 0, -30}, // 0x58 'X' - {5478, 28, 31, 30, 6, -30}, // 0x59 'Y' - {5587, 28, 31, 26, 0, -30}, // 0x5A 'Z' - {5696, 19, 38, 16, -2, -30}, // 0x5B '[' - {5787, 13, 33, 19, 6, -31}, // 0x5C '\' - {5841, 19, 38, 16, -3, -30}, // 0x5D ']' - {5932, 21, 17, 27, 3, -30}, // 0x5E '^' - {5977, 24, 3, 23, 0, 5}, // 0x5F '_' - {5986, 10, 9, 16, 4, -32}, // 0x60 '`' - {5998, 22, 23, 24, 1, -21}, // 0x61 'a' - {6062, 22, 33, 23, 1, -31}, // 0x62 'b' - {6153, 18, 23, 20, 1, -21}, // 0x63 'c' - {6205, 25, 34, 24, 1, -32}, // 0x64 'd' - {6312, 18, 23, 20, 1, -21}, // 0x65 'e' - {6364, 28, 41, 23, -4, -31}, // 0x66 'f' - {6508, 25, 31, 23, -1, -21}, // 0x67 'g' - {6605, 23, 34, 26, 1, -32}, // 0x68 'h' - {6703, 12, 33, 14, 2, -31}, // 0x69 'i' - {6753, 22, 42, 16, -4, -31}, // 0x6A 'j' - {6869, 24, 34, 24, 1, -32}, // 0x6B 'k' - {6971, 13, 34, 14, 2, -32}, // 0x6C 'l' - {7027, 35, 23, 36, 0, -21}, // 0x6D 'm' - {7128, 23, 23, 25, 0, -21}, // 0x6E 'n' - {7195, 20, 23, 22, 1, -21}, // 0x6F 'o' - {7253, 27, 31, 23, -4, -21}, // 0x70 'p' - {7358, 22, 31, 23, 1, -21}, // 0x71 'q' - {7444, 20, 22, 19, 0, -21}, // 0x72 'r' - {7499, 16, 23, 17, 0, -21}, // 0x73 's' - {7545, 13, 29, 13, 2, -27}, // 0x74 't' - {7593, 22, 23, 25, 2, -21}, // 0x75 'u' - {7657, 17, 23, 21, 3, -21}, // 0x76 'v' - {7706, 27, 23, 31, 3, -21}, // 0x77 'w' - {7784, 24, 23, 22, -1, -21}, // 0x78 'x' - {7853, 23, 31, 20, -3, -21}, // 0x79 'y' - {7943, 19, 25, 19, 0, -20}, // 0x7A 'z' - {8003, 20, 41, 16, 0, -31}, // 0x7B '{' - {8106, 4, 33, 13, 5, -31}, // 0x7C '|' - {8123, 20, 41, 16, -6, -31}, // 0x7D '}' - {8226, 21, 7, 27, 3, -14}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic24pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic24pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 8917 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h deleted file mode 100644 index b5d9a55..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h +++ /dev/null @@ -1,217 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic9pt7bBitmaps[] PROGMEM = { - 0x0C, 0x31, 0xC6, 0x18, 0x41, 0x08, 0x20, 0x0E, 0x38, 0xE0, 0xCF, 0x38, - 0xA2, 0x88, 0x02, 0x40, 0xC8, 0x13, 0x06, 0x43, 0xFC, 0x32, 0x06, 0x40, - 0x98, 0x7F, 0x84, 0xC0, 0x90, 0x32, 0x04, 0xC0, 0x01, 0x01, 0xF0, 0x4B, - 0x99, 0x33, 0x24, 0x78, 0x07, 0x80, 0x38, 0x0B, 0x89, 0x31, 0x26, 0x64, - 0xC7, 0x30, 0x3C, 0x04, 0x00, 0x38, 0x41, 0x9F, 0x06, 0x48, 0x31, 0x60, - 0xCD, 0x03, 0x2C, 0x07, 0x27, 0x81, 0x39, 0x05, 0xC4, 0x26, 0x10, 0x98, - 0x84, 0x66, 0x10, 0xE0, 0x03, 0x80, 0x22, 0x03, 0x10, 0x19, 0x00, 0xF0, - 0x0F, 0x3C, 0xF8, 0xCC, 0xC4, 0xE7, 0x47, 0x3E, 0x38, 0xE1, 0xE7, 0x97, - 0xCF, 0x00, 0xFA, 0x80, 0x08, 0x88, 0x84, 0x62, 0x10, 0x84, 0x21, 0x08, - 0x41, 0x00, 0x20, 0x84, 0x10, 0x84, 0x21, 0x08, 0xC6, 0x23, 0x11, 0x00, - 0x18, 0x18, 0xD6, 0x38, 0x18, 0xF7, 0x18, 0x18, 0x08, 0x04, 0x02, 0x01, - 0x0F, 0xF8, 0x40, 0x20, 0x10, 0x08, 0x00, 0x6D, 0x95, 0x00, 0xFF, 0xC0, - 0xFF, 0x80, 0x06, 0x0C, 0x30, 0x60, 0x83, 0x04, 0x18, 0x20, 0xC1, 0x06, - 0x00, 0x0F, 0x0C, 0x8C, 0x6E, 0x37, 0x1B, 0x1F, 0x8F, 0xC7, 0xC7, 0x63, - 0xB1, 0x89, 0x83, 0x80, 0x06, 0x1E, 0x0E, 0x0E, 0x0C, 0x0C, 0x1C, 0x18, - 0x18, 0x18, 0x38, 0x38, 0xFC, 0x1F, 0x13, 0xD0, 0xE0, 0x70, 0x38, 0x38, - 0x18, 0x18, 0x18, 0x08, 0x08, 0x4F, 0xCF, 0xE0, 0x1F, 0x11, 0xC0, 0xE0, - 0x60, 0xC1, 0xF0, 0x38, 0x0C, 0x06, 0x03, 0x01, 0x19, 0x8F, 0x00, 0x00, - 0x80, 0xC0, 0xE1, 0xE0, 0xB0, 0x98, 0x9C, 0x8C, 0xFF, 0x07, 0x03, 0x01, - 0x80, 0x0F, 0x88, 0x08, 0x07, 0x83, 0xE0, 0x78, 0x1C, 0x06, 0x03, 0x01, - 0x80, 0x9C, 0x87, 0x80, 0x03, 0x87, 0x07, 0x07, 0x07, 0x03, 0xE3, 0x99, - 0xCC, 0xC6, 0x63, 0x33, 0x89, 0x87, 0x80, 0x3F, 0xBF, 0x90, 0x80, 0xC0, - 0x40, 0x60, 0x20, 0x30, 0x30, 0x10, 0x18, 0x08, 0x00, 0x1E, 0x13, 0x31, - 0x31, 0x3A, 0x1C, 0x1C, 0x6E, 0xC6, 0xC6, 0xC6, 0x44, 0x38, 0x0E, 0x1C, - 0x8C, 0x6C, 0x36, 0x3B, 0x1D, 0x8E, 0x7E, 0x0E, 0x07, 0x07, 0x0E, 0x0C, - 0x00, 0x39, 0xCE, 0x00, 0x03, 0x9C, 0xE0, 0x39, 0xCE, 0x00, 0x01, 0x8C, - 0x22, 0x20, 0x00, 0x01, 0xC3, 0xC7, 0x8E, 0x06, 0x01, 0xE0, 0x3C, 0x07, - 0x80, 0x40, 0xFF, 0x80, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x60, 0x1E, 0x03, - 0xC0, 0x78, 0x1C, 0x3C, 0x78, 0xF0, 0x40, 0x00, 0x1C, 0x27, 0x37, 0x07, - 0x0E, 0x1C, 0x30, 0x60, 0x40, 0x00, 0xE0, 0xE0, 0xE0, 0x0F, 0x80, 0xC3, - 0x08, 0x04, 0xC3, 0x3C, 0x24, 0xE2, 0x27, 0x33, 0x39, 0x11, 0xC9, 0x93, - 0x77, 0x18, 0x00, 0x70, 0x40, 0xFC, 0x00, 0x00, 0x80, 0x18, 0x01, 0x80, - 0x38, 0x05, 0x80, 0x5C, 0x09, 0xC1, 0x1C, 0x1F, 0xC2, 0x0C, 0x20, 0xC4, - 0x0E, 0xF3, 0xF0, 0x3F, 0xE0, 0xC7, 0x0C, 0x71, 0xC7, 0x1C, 0xE1, 0xF0, - 0x39, 0xC3, 0x8E, 0x38, 0xE3, 0x0E, 0x71, 0xE7, 0x1C, 0xFF, 0x00, 0x07, - 0xD1, 0xC7, 0x38, 0x27, 0x02, 0x70, 0x0F, 0x00, 0xE0, 0x0E, 0x00, 0xE0, - 0x0E, 0x00, 0x60, 0x87, 0x18, 0x1E, 0x00, 0x3F, 0xE0, 0x30, 0xE0, 0xC1, - 0x87, 0x07, 0x1C, 0x1C, 0x60, 0x73, 0x81, 0xCE, 0x07, 0x38, 0x38, 0xC0, - 0xE7, 0x07, 0x1C, 0x78, 0xFF, 0x80, 0x1F, 0xF8, 0x61, 0xC3, 0x04, 0x38, - 0x81, 0xCC, 0x0F, 0xE0, 0xE2, 0x07, 0x10, 0x38, 0x81, 0x81, 0x1C, 0x18, - 0xE3, 0x8F, 0xFC, 0x00, 0x3F, 0xF8, 0x61, 0xC3, 0x04, 0x38, 0x81, 0xCC, - 0x0F, 0xE0, 0xE2, 0x07, 0x10, 0x38, 0x81, 0x80, 0x1C, 0x00, 0xE0, 0x0F, - 0x80, 0x00, 0x07, 0x91, 0xC7, 0x38, 0x27, 0x00, 0x70, 0x0F, 0x00, 0xE1, - 0xFE, 0x0E, 0xE0, 0xCE, 0x0C, 0x60, 0xC7, 0x1C, 0x1F, 0x00, 0x1F, 0x7E, - 0x1C, 0x38, 0x30, 0x60, 0xE1, 0xC1, 0xC3, 0x83, 0x06, 0x0F, 0xFC, 0x1C, - 0x38, 0x38, 0x70, 0x60, 0xC1, 0xC3, 0x83, 0x87, 0x0F, 0x9F, 0x00, 0x3F, - 0x0C, 0x0C, 0x1C, 0x1C, 0x18, 0x38, 0x38, 0x38, 0x30, 0x70, 0x70, 0xF8, - 0x07, 0xC0, 0xE0, 0x38, 0x0C, 0x07, 0x01, 0xC0, 0x70, 0x18, 0x0E, 0x03, - 0x80, 0xC3, 0x30, 0xDC, 0x1E, 0x00, 0x1F, 0x78, 0x71, 0x83, 0x18, 0x39, - 0x81, 0xD0, 0x0D, 0x00, 0xFC, 0x07, 0x60, 0x3B, 0x81, 0x8C, 0x1C, 0x70, - 0xE1, 0x8F, 0xBE, 0x00, 0x1F, 0x00, 0xC0, 0x0C, 0x01, 0xC0, 0x1C, 0x01, - 0x80, 0x38, 0x03, 0x80, 0x38, 0x03, 0x01, 0x70, 0x37, 0x0E, 0xFF, 0xE0, - 0x1E, 0x07, 0x87, 0x07, 0x83, 0x83, 0x82, 0xC3, 0xC1, 0x62, 0xE0, 0xB1, - 0x70, 0x99, 0x30, 0x4D, 0xB8, 0x27, 0x9C, 0x13, 0x8C, 0x11, 0xC6, 0x0C, - 0xC7, 0x0F, 0x47, 0xC0, 0x3C, 0x3C, 0x38, 0x20, 0xE0, 0x85, 0xC4, 0x13, - 0x10, 0x4E, 0x42, 0x3A, 0x08, 0x78, 0x21, 0xE0, 0x83, 0x84, 0x0C, 0x18, - 0x10, 0x00, 0x40, 0x07, 0xC1, 0xCE, 0x38, 0x73, 0x87, 0x70, 0x77, 0x07, - 0xF0, 0xFE, 0x0E, 0xE0, 0xEE, 0x1C, 0xE1, 0xC6, 0x38, 0x3E, 0x00, 0x3F, - 0xC0, 0xC7, 0x0C, 0x71, 0xC7, 0x1C, 0x71, 0x8E, 0x3F, 0xC3, 0x80, 0x30, - 0x03, 0x00, 0x70, 0x07, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0xCE, 0x38, 0x73, - 0x87, 0x70, 0x77, 0x07, 0xF0, 0x7E, 0x0E, 0xE0, 0xEE, 0x0C, 0xE1, 0xC6, - 0x38, 0x36, 0x01, 0x80, 0x3C, 0x2D, 0xFC, 0x3F, 0xC0, 0xE7, 0x0C, 0x71, - 0xC7, 0x1C, 0x71, 0x8E, 0x3F, 0x83, 0xB8, 0x3B, 0x83, 0x3C, 0x71, 0xC7, - 0x1C, 0xF9, 0xF0, 0x0C, 0x89, 0x8C, 0x46, 0x23, 0x80, 0xE0, 0x78, 0x0E, - 0x03, 0x21, 0x90, 0xCC, 0xC9, 0xC0, 0x7F, 0xE9, 0xDF, 0x31, 0x4E, 0x21, - 0xC0, 0x38, 0x06, 0x01, 0xC0, 0x38, 0x06, 0x00, 0xC0, 0x38, 0x0F, 0xC0, - 0x7C, 0xF3, 0x82, 0x30, 0x27, 0x04, 0x70, 0x46, 0x04, 0xE0, 0x4E, 0x08, - 0xE0, 0x8E, 0x08, 0xE1, 0x0F, 0x30, 0x3C, 0x00, 0xFC, 0x73, 0x82, 0x38, - 0x23, 0x84, 0x38, 0x83, 0x90, 0x39, 0x01, 0xA0, 0x1C, 0x01, 0xC0, 0x18, - 0x01, 0x00, 0xF9, 0xF7, 0x30, 0xE2, 0x30, 0xC2, 0x38, 0xC4, 0x3B, 0xC4, - 0x3A, 0xE8, 0x3C, 0xE8, 0x3C, 0xF0, 0x18, 0xF0, 0x18, 0x60, 0x10, 0x60, - 0x10, 0x40, 0x3F, 0x78, 0x61, 0x83, 0x98, 0x1D, 0x00, 0x70, 0x03, 0x80, - 0x1C, 0x01, 0x60, 0x0B, 0x80, 0x9C, 0x08, 0x60, 0xC3, 0x8F, 0x7E, 0x00, - 0xF9, 0xE6, 0x18, 0xC2, 0x1C, 0x81, 0xA0, 0x34, 0x07, 0x00, 0xC0, 0x18, - 0x07, 0x00, 0xE0, 0x1C, 0x0F, 0xC0, 0x3F, 0xE6, 0x19, 0x87, 0x21, 0xC0, - 0x30, 0x0E, 0x03, 0x80, 0x60, 0x1C, 0x07, 0x05, 0xC1, 0x38, 0xEF, 0xFC, - 0x0E, 0x08, 0x18, 0x18, 0x18, 0x10, 0x30, 0x30, 0x30, 0x20, 0x60, 0x60, - 0x60, 0x40, 0xF0, 0xC6, 0x10, 0xC6, 0x10, 0x86, 0x30, 0x86, 0x30, 0x1E, - 0x0C, 0x18, 0x20, 0xC1, 0x83, 0x04, 0x18, 0x30, 0x60, 0x83, 0x06, 0x3C, - 0x00, 0x18, 0x1C, 0x34, 0x26, 0x66, 0x43, 0xC3, 0xFF, 0x80, 0xC6, 0x30, - 0x0D, 0x9D, 0x8C, 0xCC, 0x6E, 0x26, 0x33, 0x19, 0xBE, 0x66, 0x00, 0x00, - 0x78, 0x18, 0x30, 0x30, 0x3E, 0x73, 0x63, 0x63, 0x63, 0xC6, 0xC6, 0xCC, - 0x70, 0x0F, 0x3B, 0x70, 0x70, 0xE0, 0xE0, 0xE2, 0xE4, 0x78, 0x00, 0x00, - 0xF0, 0x1C, 0x06, 0x01, 0x83, 0xE3, 0x30, 0xCC, 0x63, 0x19, 0xCC, 0x63, - 0x38, 0xCF, 0x1D, 0x80, 0x0E, 0x75, 0xCB, 0xBE, 0xDE, 0x38, 0x72, 0x78, - 0x00, 0xE0, 0x34, 0x0C, 0x01, 0x80, 0x30, 0x1F, 0x01, 0x80, 0x30, 0x06, - 0x01, 0xC0, 0x30, 0x06, 0x00, 0xC0, 0x30, 0x06, 0x04, 0x80, 0xE0, 0x00, - 0x1C, 0x19, 0xD8, 0xCC, 0x66, 0x60, 0xE1, 0x80, 0xF0, 0x7E, 0x43, 0x21, - 0x8F, 0x00, 0x00, 0x1E, 0x07, 0x03, 0x01, 0x80, 0xD8, 0xFC, 0x76, 0x33, - 0x19, 0x99, 0xCC, 0xD6, 0x77, 0x30, 0x39, 0xC0, 0x0F, 0x31, 0x8C, 0xC6, - 0x31, 0xAE, 0x00, 0x03, 0x81, 0xC0, 0x00, 0x00, 0xE0, 0x30, 0x18, 0x18, - 0x0C, 0x06, 0x03, 0x03, 0x01, 0x80, 0xC2, 0xC1, 0xC0, 0x00, 0x0F, 0x00, - 0xC0, 0x60, 0x18, 0x06, 0xF3, 0x90, 0xC8, 0x34, 0x0F, 0x06, 0xC1, 0x98, - 0x66, 0xB9, 0xC0, 0x03, 0xCC, 0x63, 0x39, 0x8C, 0x66, 0x31, 0x8E, 0x70, - 0x7B, 0x99, 0xAF, 0xCE, 0x66, 0x63, 0x67, 0x33, 0x31, 0x99, 0x8C, 0xCC, - 0xE7, 0xC6, 0x30, 0x73, 0x7F, 0x73, 0x73, 0x63, 0x67, 0xE6, 0xC7, 0xC6, - 0x1E, 0x33, 0x63, 0x63, 0xC3, 0xC6, 0xC6, 0xCC, 0x78, 0x1D, 0xC3, 0xB1, - 0xCC, 0x63, 0x19, 0xCE, 0x63, 0x18, 0xCC, 0x3E, 0x1C, 0x06, 0x03, 0xE0, - 0x0D, 0x99, 0x8C, 0xCC, 0x6E, 0x76, 0x33, 0x19, 0x9C, 0x7C, 0x06, 0x07, - 0x07, 0xC0, 0x76, 0x3A, 0x30, 0x70, 0x60, 0x60, 0x60, 0xE0, 0x3D, 0x14, - 0x58, 0x38, 0x60, 0xA2, 0xF0, 0x08, 0xCC, 0xF6, 0x31, 0x98, 0xC6, 0x35, - 0xC0, 0xE3, 0x63, 0x66, 0x66, 0x66, 0xCC, 0xCC, 0xFE, 0xEC, 0xE6, 0xCD, - 0x8B, 0x26, 0x8E, 0x18, 0x20, 0xE4, 0xD9, 0x36, 0xE5, 0xDA, 0x77, 0x19, - 0xC6, 0x61, 0x10, 0x39, 0xC7, 0xB0, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xE1, - 0x5A, 0x67, 0x00, 0x39, 0x8C, 0xC3, 0x21, 0xA0, 0xD0, 0x68, 0x38, 0x0C, - 0x04, 0x04, 0x14, 0x0C, 0x00, 0x3E, 0x46, 0x0C, 0x08, 0x10, 0x20, 0x70, - 0x1A, 0x0E, 0x03, 0x0E, 0x0C, 0x0C, 0x08, 0x18, 0x18, 0x10, 0x60, 0x30, - 0x30, 0x30, 0x60, 0x60, 0x60, 0x30, 0xFF, 0xF0, 0x0C, 0x06, 0x06, 0x06, - 0x04, 0x0C, 0x0C, 0x0C, 0x06, 0x18, 0x18, 0x18, 0x30, 0x30, 0x30, 0xE0, - 0x71, 0x8F}; - -const GFXglyph FreeSerifBoldItalic9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 6, 13, 7, 1, -11}, // 0x21 '!' - {10, 6, 5, 10, 3, -11}, // 0x22 '"' - {14, 11, 13, 9, -1, -12}, // 0x23 '#' - {32, 11, 15, 9, -1, -12}, // 0x24 '$' - {53, 14, 13, 15, 1, -11}, // 0x25 '%' - {76, 13, 13, 14, 0, -11}, // 0x26 '&' - {98, 2, 5, 5, 3, -11}, // 0x27 ''' - {100, 5, 16, 6, 1, -11}, // 0x28 '(' - {110, 5, 16, 6, -1, -11}, // 0x29 ')' - {120, 8, 8, 9, 1, -11}, // 0x2A '*' - {128, 9, 9, 10, 0, -8}, // 0x2B '+' - {139, 3, 6, 5, -1, -2}, // 0x2C ',' - {142, 5, 2, 6, 0, -4}, // 0x2D '-' - {144, 3, 3, 4, 0, -1}, // 0x2E '.' - {146, 7, 12, 6, 0, -11}, // 0x2F '/' - {157, 9, 13, 9, 0, -11}, // 0x30 '0' - {172, 8, 13, 9, 0, -11}, // 0x31 '1' - {185, 9, 13, 9, 0, -11}, // 0x32 '2' - {200, 9, 13, 9, 0, -11}, // 0x33 '3' - {215, 9, 12, 9, 0, -11}, // 0x34 '4' - {229, 9, 13, 9, 0, -11}, // 0x35 '5' - {244, 9, 13, 9, 1, -11}, // 0x36 '6' - {259, 9, 12, 9, 1, -11}, // 0x37 '7' - {273, 8, 13, 9, 0, -11}, // 0x38 '8' - {286, 9, 13, 9, 0, -11}, // 0x39 '9' - {301, 5, 9, 5, 0, -7}, // 0x3A ':' - {307, 5, 11, 5, 0, -7}, // 0x3B ';' - {314, 9, 10, 10, 1, -9}, // 0x3C '<' - {326, 9, 5, 10, 1, -6}, // 0x3D '=' - {332, 9, 10, 10, 1, -9}, // 0x3E '>' - {344, 8, 13, 9, 1, -11}, // 0x3F '?' - {357, 13, 13, 15, 1, -12}, // 0x40 '@' - {379, 12, 13, 13, 0, -11}, // 0x41 'A' - {399, 12, 13, 12, 0, -11}, // 0x42 'B' - {419, 12, 13, 11, 1, -11}, // 0x43 'C' - {439, 14, 13, 13, 0, -11}, // 0x44 'D' - {462, 13, 13, 11, 0, -11}, // 0x45 'E' - {484, 13, 13, 11, 0, -11}, // 0x46 'F' - {506, 12, 13, 13, 1, -11}, // 0x47 'G' - {526, 15, 13, 14, 0, -11}, // 0x48 'H' - {551, 8, 13, 7, 0, -11}, // 0x49 'I' - {564, 10, 14, 9, 0, -11}, // 0x4A 'J' - {582, 13, 13, 12, 0, -11}, // 0x4B 'K' - {604, 12, 13, 11, 0, -11}, // 0x4C 'L' - {624, 17, 13, 16, 0, -11}, // 0x4D 'M' - {652, 14, 13, 13, 0, -11}, // 0x4E 'N' - {675, 12, 13, 12, 1, -11}, // 0x4F 'O' - {695, 12, 13, 11, 0, -11}, // 0x50 'P' - {715, 12, 16, 12, 1, -11}, // 0x51 'Q' - {739, 12, 13, 12, 0, -11}, // 0x52 'R' - {759, 9, 13, 9, 0, -11}, // 0x53 'S' - {774, 11, 13, 11, 2, -11}, // 0x54 'T' - {792, 12, 13, 13, 2, -11}, // 0x55 'U' - {812, 12, 12, 13, 2, -11}, // 0x56 'V' - {830, 16, 12, 17, 2, -11}, // 0x57 'W' - {854, 13, 13, 13, 0, -11}, // 0x58 'X' - {876, 11, 13, 11, 2, -11}, // 0x59 'Y' - {894, 11, 13, 10, 0, -11}, // 0x5A 'Z' - {912, 8, 15, 6, -1, -11}, // 0x5B '[' - {927, 5, 12, 7, 2, -11}, // 0x5C '\' - {935, 7, 15, 6, -1, -11}, // 0x5D ']' - {949, 8, 7, 10, 1, -11}, // 0x5E '^' - {956, 9, 1, 9, 0, 3}, // 0x5F '_' - {958, 4, 3, 6, 2, -11}, // 0x60 '`' - {960, 9, 9, 9, 0, -7}, // 0x61 'a' - {971, 8, 14, 9, 0, -12}, // 0x62 'b' - {985, 8, 9, 8, 0, -7}, // 0x63 'c' - {994, 10, 14, 9, 0, -12}, // 0x64 'd' - {1012, 7, 9, 7, 0, -7}, // 0x65 'e' - {1020, 11, 17, 9, -2, -12}, // 0x66 'f' - {1044, 9, 12, 9, 0, -7}, // 0x67 'g' - {1058, 9, 14, 10, 0, -12}, // 0x68 'h' - {1074, 5, 13, 5, 1, -11}, // 0x69 'i' - {1083, 9, 16, 6, -1, -11}, // 0x6A 'j' - {1101, 10, 14, 9, 0, -12}, // 0x6B 'k' - {1119, 5, 14, 5, 1, -12}, // 0x6C 'l' - {1128, 13, 9, 14, 0, -7}, // 0x6D 'm' - {1143, 8, 9, 9, 0, -7}, // 0x6E 'n' - {1152, 8, 9, 9, 0, -7}, // 0x6F 'o' - {1161, 10, 12, 9, -2, -7}, // 0x70 'p' - {1176, 9, 12, 9, 0, -7}, // 0x71 'q' - {1190, 8, 8, 7, 0, -7}, // 0x72 'r' - {1198, 6, 9, 6, 0, -7}, // 0x73 's' - {1205, 5, 12, 5, 1, -10}, // 0x74 't' - {1213, 8, 9, 10, 1, -7}, // 0x75 'u' - {1222, 7, 8, 8, 1, -7}, // 0x76 'v' - {1229, 10, 8, 12, 1, -7}, // 0x77 'w' - {1239, 10, 9, 9, -1, -7}, // 0x78 'x' - {1251, 9, 12, 8, -1, -7}, // 0x79 'y' - {1265, 8, 9, 7, 0, -7}, // 0x7A 'z' - {1274, 8, 16, 6, 0, -12}, // 0x7B '{' - {1290, 1, 12, 5, 2, -11}, // 0x7C '|' - {1292, 8, 16, 6, -2, -12}, // 0x7D '}' - {1308, 8, 2, 10, 1, -4}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic9pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic9pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 1982 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h deleted file mode 100644 index 85de005..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h +++ /dev/null @@ -1,273 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic12pt7bBitmaps[] PROGMEM = { - 0x0C, 0x31, 0xC6, 0x18, 0x43, 0x0C, 0x20, 0x84, 0x10, 0x03, 0x0C, 0x30, - 0x66, 0xCD, 0x12, 0x24, 0x51, 0x00, 0x03, 0x10, 0x11, 0x80, 0x8C, 0x0C, - 0x40, 0x46, 0x1F, 0xFC, 0x21, 0x01, 0x18, 0x18, 0x80, 0x84, 0x3F, 0xF8, - 0x62, 0x02, 0x30, 0x31, 0x01, 0x08, 0x08, 0xC0, 0x00, 0x40, 0x08, 0x07, - 0xC0, 0xCA, 0x18, 0xA1, 0x92, 0x19, 0x01, 0xD0, 0x0F, 0x00, 0x78, 0x03, - 0xC0, 0x2E, 0x02, 0x64, 0x46, 0x44, 0x64, 0x46, 0x64, 0xC1, 0xF0, 0x08, - 0x00, 0x80, 0x00, 0x08, 0x0F, 0x0C, 0x0C, 0x7C, 0x0C, 0x22, 0x06, 0x12, - 0x06, 0x09, 0x03, 0x09, 0x01, 0x84, 0x80, 0xC4, 0x8F, 0x3C, 0x4C, 0x40, - 0x4C, 0x20, 0x4E, 0x10, 0x26, 0x08, 0x23, 0x08, 0x11, 0x84, 0x10, 0xC4, - 0x08, 0x3C, 0x00, 0x00, 0xE0, 0x02, 0x60, 0x0C, 0xC0, 0x19, 0x80, 0x36, - 0x00, 0x70, 0x00, 0xC0, 0x07, 0x9F, 0x33, 0x08, 0xC3, 0x13, 0x06, 0x46, - 0x0D, 0x0C, 0x0C, 0x18, 0x1C, 0x1C, 0x5C, 0x9F, 0x1E, 0xFA, 0xA0, 0x02, - 0x08, 0x20, 0xC3, 0x06, 0x18, 0x30, 0xE1, 0x83, 0x06, 0x0C, 0x18, 0x30, - 0x60, 0x40, 0x80, 0x81, 0x00, 0x08, 0x10, 0x10, 0x20, 0x40, 0xC1, 0x83, - 0x06, 0x0C, 0x18, 0x70, 0xC1, 0x83, 0x0C, 0x10, 0x41, 0x04, 0x00, 0x18, - 0x18, 0x18, 0x93, 0x74, 0x38, 0xD7, 0x93, 0x18, 0x18, 0x04, 0x00, 0x80, - 0x10, 0x02, 0x00, 0x41, 0xFF, 0xC1, 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, - 0x00, 0x6C, 0x95, 0x00, 0xF8, 0xFC, 0x00, 0x40, 0x18, 0x02, 0x00, 0xC0, - 0x30, 0x06, 0x01, 0x80, 0x20, 0x0C, 0x01, 0x00, 0x60, 0x18, 0x03, 0x00, - 0xC0, 0x10, 0x06, 0x00, 0x07, 0x81, 0x98, 0x61, 0x18, 0x33, 0x06, 0xC0, - 0xD8, 0x1B, 0x03, 0xE0, 0xF8, 0x1F, 0x03, 0x60, 0x6C, 0x19, 0x83, 0x10, - 0xC3, 0x30, 0x3C, 0x00, 0x01, 0x87, 0xC0, 0xC0, 0x60, 0x30, 0x18, 0x18, - 0x0C, 0x06, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x60, 0x30, 0xFE, 0x00, - 0x0F, 0x0C, 0x64, 0x0C, 0x03, 0x00, 0xC0, 0x20, 0x18, 0x0C, 0x02, 0x01, - 0x00, 0x80, 0x40, 0x20, 0x10, 0x2F, 0xF0, 0x07, 0x86, 0x30, 0x0C, 0x03, - 0x01, 0x81, 0x81, 0xF0, 0x1E, 0x03, 0x80, 0x60, 0x18, 0x06, 0x01, 0x00, - 0xCC, 0x63, 0xE0, 0x00, 0x20, 0x0C, 0x03, 0x80, 0xA0, 0x2C, 0x09, 0x82, - 0x30, 0x84, 0x31, 0x8C, 0x33, 0x06, 0x7F, 0xE0, 0x30, 0x06, 0x00, 0x80, - 0x30, 0x03, 0xE1, 0x80, 0x20, 0x06, 0x00, 0xF0, 0x0F, 0x00, 0x60, 0x06, - 0x00, 0xC0, 0x18, 0x03, 0x00, 0x40, 0x18, 0x02, 0x30, 0x87, 0xE0, 0x00, - 0x70, 0x3C, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x7F, 0x07, 0x18, 0x60, - 0xCE, 0x0C, 0xC0, 0xCC, 0x0C, 0xC0, 0xCC, 0x18, 0x41, 0x86, 0x30, 0x3E, - 0x00, 0x7F, 0xF0, 0x18, 0x03, 0x00, 0xC0, 0x10, 0x06, 0x01, 0x80, 0x30, - 0x0C, 0x01, 0x00, 0x60, 0x08, 0x03, 0x00, 0xC0, 0x10, 0x06, 0x00, 0x0F, - 0x83, 0x18, 0xC1, 0x98, 0x33, 0x06, 0x71, 0x87, 0x60, 0x70, 0x17, 0x0C, - 0x71, 0x07, 0x60, 0x6C, 0x0D, 0x81, 0xB0, 0x63, 0x1C, 0x3E, 0x00, 0x07, - 0x83, 0x18, 0xC1, 0x18, 0x36, 0x06, 0xC0, 0xD8, 0x1B, 0x07, 0x60, 0xE6, - 0x38, 0x7F, 0x00, 0xC0, 0x30, 0x0C, 0x07, 0x03, 0xC0, 0xC0, 0x00, 0x33, - 0x30, 0x00, 0x00, 0xCC, 0xC0, 0x18, 0xC6, 0x00, 0x00, 0x00, 0x03, 0x18, - 0x44, 0x40, 0x00, 0x00, 0x03, 0x00, 0xF0, 0x38, 0x1E, 0x07, 0x80, 0xE0, - 0x0F, 0x00, 0x1C, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x00, 0x10, 0xFF, 0xF0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0x00, 0x0C, 0x00, 0xF0, 0x01, - 0xC0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x0F, 0x03, 0xC1, 0xE0, 0x78, 0x0E, - 0x00, 0x80, 0x00, 0x3E, 0x21, 0x90, 0x60, 0x30, 0x38, 0x38, 0x30, 0x30, - 0x20, 0x20, 0x10, 0x00, 0x00, 0x06, 0x03, 0x01, 0x80, 0x07, 0xE0, 0x1C, - 0x18, 0x30, 0x04, 0x60, 0x02, 0x61, 0xDA, 0xC3, 0x31, 0xC6, 0x31, 0xC4, - 0x31, 0xCC, 0x31, 0xCC, 0x21, 0xCC, 0x62, 0x6C, 0xE4, 0x67, 0x38, 0x30, - 0x00, 0x1C, 0x08, 0x07, 0xF0, 0x00, 0x20, 0x00, 0xC0, 0x03, 0x80, 0x0B, - 0x00, 0x16, 0x00, 0x4E, 0x00, 0x9C, 0x02, 0x18, 0x08, 0x30, 0x1F, 0xE0, - 0x40, 0xC1, 0x81, 0xC2, 0x03, 0x8C, 0x07, 0x3C, 0x1F, 0x80, 0x1F, 0xF0, - 0x1C, 0x60, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x38, 0x60, 0xC3, 0x03, 0xF0, - 0x1C, 0x30, 0x60, 0x61, 0x81, 0x86, 0x06, 0x38, 0x18, 0xC0, 0xC3, 0x06, - 0x3F, 0xF0, 0x01, 0xF9, 0x06, 0x0F, 0x1C, 0x06, 0x38, 0x02, 0x30, 0x02, - 0x60, 0x00, 0x60, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, - 0xC0, 0x00, 0xC0, 0x08, 0x60, 0x10, 0x30, 0x60, 0x1F, 0x80, 0x1F, 0xF0, - 0x07, 0x0C, 0x06, 0x06, 0x06, 0x06, 0x06, 0x03, 0x0E, 0x03, 0x0C, 0x03, - 0x0C, 0x03, 0x1C, 0x03, 0x1C, 0x07, 0x18, 0x06, 0x18, 0x06, 0x38, 0x0C, - 0x30, 0x18, 0x30, 0x70, 0xFF, 0x80, 0x1F, 0xFF, 0x07, 0x07, 0x06, 0x02, - 0x06, 0x02, 0x06, 0x00, 0x0E, 0x10, 0x0C, 0x30, 0x0F, 0xF0, 0x1C, 0x20, - 0x18, 0x20, 0x18, 0x00, 0x18, 0x00, 0x38, 0x04, 0x30, 0x08, 0x30, 0x38, - 0xFF, 0xF8, 0x1F, 0xFF, 0x07, 0x07, 0x07, 0x02, 0x06, 0x02, 0x06, 0x00, - 0x0E, 0x10, 0x0C, 0x30, 0x0F, 0xF0, 0x1C, 0x20, 0x1C, 0x20, 0x18, 0x00, - 0x18, 0x00, 0x38, 0x00, 0x30, 0x00, 0x30, 0x00, 0xFC, 0x00, 0x01, 0xF1, - 0x06, 0x0F, 0x18, 0x07, 0x38, 0x02, 0x30, 0x02, 0x60, 0x00, 0x60, 0x00, - 0xE0, 0x00, 0xC0, 0x7F, 0xC0, 0x1C, 0xC0, 0x1C, 0xC0, 0x18, 0xC0, 0x18, - 0x60, 0x18, 0x30, 0x38, 0x0F, 0xC0, 0x1F, 0xC7, 0xE0, 0xE0, 0x70, 0x18, - 0x0E, 0x03, 0x01, 0x80, 0x60, 0x30, 0x1C, 0x0E, 0x03, 0x01, 0x80, 0x7F, - 0xF0, 0x1C, 0x06, 0x03, 0x01, 0xC0, 0x60, 0x30, 0x0C, 0x06, 0x03, 0x81, - 0xC0, 0x60, 0x38, 0x0C, 0x06, 0x07, 0xE3, 0xF0, 0x1F, 0x83, 0x81, 0x80, - 0xC0, 0x60, 0x70, 0x30, 0x18, 0x1C, 0x0C, 0x06, 0x03, 0x03, 0x81, 0x80, - 0xC1, 0xF8, 0x03, 0xF0, 0x0C, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x18, 0x03, - 0x80, 0x30, 0x03, 0x00, 0x30, 0x07, 0x00, 0x60, 0x06, 0x0C, 0xE0, 0xCC, - 0x07, 0x80, 0x1F, 0xCF, 0x83, 0x83, 0x81, 0x81, 0x00, 0xC3, 0x00, 0x62, - 0x00, 0x72, 0x00, 0x36, 0x00, 0x1E, 0x00, 0x1D, 0x80, 0x0C, 0xE0, 0x06, - 0x30, 0x03, 0x1C, 0x03, 0x87, 0x01, 0x81, 0x80, 0xC0, 0xE1, 0xF9, 0xFC, - 0x1F, 0xC0, 0x1C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, 0x38, 0x00, 0xC0, - 0x03, 0x00, 0x1C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, 0x38, 0x0C, 0xC0, - 0x23, 0x03, 0xBF, 0xFE, 0x0F, 0x00, 0x78, 0x38, 0x07, 0x81, 0xC0, 0x38, - 0x0E, 0x02, 0xC0, 0x70, 0x3E, 0x05, 0xC1, 0x70, 0x2E, 0x13, 0x01, 0x31, - 0x98, 0x11, 0x89, 0xC0, 0x8C, 0x8C, 0x04, 0x6C, 0x60, 0x23, 0x43, 0x02, - 0x1C, 0x38, 0x10, 0xE1, 0x81, 0x86, 0x1C, 0x1F, 0x23, 0xF8, 0x1E, 0x07, - 0xC1, 0xC0, 0x60, 0x70, 0x10, 0x1C, 0x0C, 0x05, 0x82, 0x02, 0x60, 0x80, - 0x9C, 0x60, 0x23, 0x10, 0x10, 0xC4, 0x04, 0x19, 0x01, 0x06, 0xC0, 0x40, - 0xE0, 0x20, 0x38, 0x08, 0x0E, 0x06, 0x01, 0x03, 0xE0, 0x40, 0x01, 0xF0, - 0x0C, 0x10, 0x30, 0x10, 0xC0, 0x33, 0x00, 0x6E, 0x00, 0xD8, 0x01, 0xF0, - 0x03, 0xC0, 0x0D, 0x80, 0x1B, 0x00, 0x76, 0x00, 0xCC, 0x03, 0x08, 0x0C, - 0x18, 0x70, 0x0F, 0x80, 0x1F, 0xF0, 0x1C, 0x60, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x38, 0x30, 0xC1, 0x83, 0x0E, 0x1F, 0xE0, 0x60, 0x01, 0x80, 0x06, - 0x00, 0x38, 0x00, 0xC0, 0x03, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x06, 0x10, - 0x30, 0x30, 0xC0, 0x33, 0x00, 0x66, 0x00, 0xD8, 0x01, 0xB0, 0x03, 0xE0, - 0x0F, 0x80, 0x1B, 0x00, 0x36, 0x00, 0xCC, 0x03, 0x98, 0x06, 0x18, 0x18, - 0x18, 0xC0, 0x0E, 0x00, 0x20, 0x01, 0xF8, 0x36, 0x7F, 0x80, 0x1F, 0xF0, - 0x1C, 0x60, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x38, 0x70, 0xC3, 0x83, 0xF8, - 0x1D, 0xC0, 0x63, 0x01, 0x8C, 0x06, 0x18, 0x38, 0x60, 0xC1, 0xC3, 0x03, - 0x3F, 0x0F, 0x07, 0x90, 0xC7, 0x18, 0x21, 0x82, 0x18, 0x01, 0xC0, 0x0E, - 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xC4, 0x0C, 0x40, 0xC6, 0x08, 0xE1, - 0x89, 0xE0, 0x7F, 0xFE, 0xC7, 0x1D, 0x0C, 0x14, 0x18, 0x20, 0x70, 0x00, - 0xE0, 0x01, 0x80, 0x03, 0x00, 0x0E, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, - 0x01, 0xC0, 0x03, 0x00, 0x0E, 0x00, 0x7F, 0x80, 0x7E, 0x1F, 0x38, 0x0C, - 0x38, 0x0C, 0x30, 0x08, 0x30, 0x08, 0x70, 0x08, 0x70, 0x10, 0x60, 0x10, - 0x60, 0x10, 0xE0, 0x10, 0xC0, 0x20, 0xC0, 0x20, 0xC0, 0x60, 0xC0, 0x40, - 0x61, 0x80, 0x3F, 0x00, 0xFC, 0x3E, 0xE0, 0x18, 0xC0, 0x21, 0x80, 0xC3, - 0x81, 0x07, 0x04, 0x0E, 0x08, 0x0C, 0x20, 0x18, 0x80, 0x31, 0x00, 0x64, - 0x00, 0xF0, 0x01, 0xE0, 0x01, 0x80, 0x02, 0x00, 0x04, 0x00, 0xFD, 0xF8, - 0xF7, 0x07, 0x06, 0x30, 0x60, 0x63, 0x07, 0x04, 0x30, 0x70, 0x83, 0x8F, - 0x08, 0x38, 0xB1, 0x03, 0x93, 0x10, 0x19, 0x32, 0x01, 0xA3, 0x20, 0x1A, - 0x34, 0x01, 0xC3, 0x40, 0x1C, 0x38, 0x01, 0x83, 0x00, 0x18, 0x30, 0x01, - 0x02, 0x00, 0x1F, 0x9F, 0x0E, 0x06, 0x06, 0x04, 0x07, 0x08, 0x03, 0x10, - 0x03, 0x20, 0x03, 0xC0, 0x01, 0x80, 0x01, 0xC0, 0x03, 0xC0, 0x06, 0xE0, - 0x0C, 0x60, 0x18, 0x60, 0x30, 0x70, 0x70, 0x78, 0xF8, 0xFC, 0xFC, 0xFB, - 0x81, 0x8C, 0x08, 0x60, 0x83, 0x8C, 0x0C, 0xC0, 0x64, 0x03, 0xC0, 0x0C, - 0x00, 0xE0, 0x07, 0x00, 0x30, 0x01, 0x80, 0x1C, 0x00, 0xC0, 0x1F, 0xC0, - 0x1F, 0xFE, 0x30, 0x38, 0xC0, 0xF1, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, - 0x70, 0x01, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x01, 0xC0, - 0x47, 0x01, 0x1C, 0x06, 0x7F, 0xF8, 0x07, 0x04, 0x08, 0x08, 0x08, 0x18, - 0x10, 0x10, 0x10, 0x20, 0x20, 0x20, 0x20, 0x40, 0x40, 0x40, 0x80, 0x80, - 0x80, 0xE0, 0xC0, 0xC0, 0x40, 0x60, 0x20, 0x30, 0x30, 0x18, 0x18, 0x08, - 0x0C, 0x04, 0x06, 0x06, 0x03, 0x03, 0x0E, 0x04, 0x08, 0x10, 0x60, 0x81, - 0x02, 0x04, 0x18, 0x20, 0x40, 0x81, 0x02, 0x08, 0x10, 0x20, 0x47, 0x80, - 0x0C, 0x03, 0x81, 0xE0, 0x4C, 0x33, 0x08, 0x66, 0x19, 0x03, 0xC0, 0xC0, - 0xFF, 0xF0, 0xCE, 0x63, 0x07, 0xA0, 0xCE, 0x18, 0x63, 0x04, 0x60, 0xC6, - 0x0C, 0xC0, 0xCC, 0x18, 0xC3, 0x8C, 0x5A, 0x79, 0xC0, 0x38, 0x06, 0x01, - 0x80, 0x40, 0x30, 0x0C, 0xE3, 0xCC, 0xC3, 0x70, 0xD8, 0x36, 0x19, 0x06, - 0xC3, 0x30, 0x8C, 0xC3, 0xE0, 0x0F, 0x0C, 0xCC, 0x6C, 0x06, 0x06, 0x03, - 0x01, 0x80, 0xC0, 0x73, 0x1E, 0x00, 0x00, 0x70, 0x01, 0x80, 0x0C, 0x00, - 0x60, 0x02, 0x03, 0xF0, 0x31, 0x83, 0x08, 0x30, 0xC3, 0x06, 0x18, 0x31, - 0x81, 0x8C, 0x18, 0x61, 0xCB, 0x16, 0x8F, 0x38, 0x07, 0x19, 0x31, 0x63, - 0x62, 0xEC, 0xD0, 0xC0, 0xC0, 0xE6, 0x78, 0x00, 0x38, 0x01, 0x30, 0x0C, - 0x00, 0x20, 0x01, 0x80, 0x06, 0x00, 0xFE, 0x00, 0x40, 0x03, 0x00, 0x0C, - 0x00, 0x30, 0x00, 0x80, 0x06, 0x00, 0x18, 0x00, 0x60, 0x01, 0x80, 0x04, - 0x00, 0x30, 0x00, 0xC0, 0x02, 0x00, 0x90, 0x03, 0x80, 0x00, 0x07, 0xC0, - 0xC7, 0x18, 0x61, 0x86, 0x18, 0xE1, 0x8C, 0x07, 0x80, 0x80, 0x1C, 0x00, - 0xF0, 0x33, 0x84, 0x18, 0x80, 0x88, 0x08, 0x61, 0x03, 0xE0, 0x1C, 0x00, - 0xC0, 0x0C, 0x00, 0xC0, 0x18, 0x01, 0x8E, 0x1B, 0x61, 0xC6, 0x38, 0x63, - 0x8C, 0x30, 0xC3, 0x0C, 0x60, 0xC6, 0x1A, 0x61, 0xA4, 0x1C, 0x18, 0xC6, - 0x00, 0x0B, 0xC6, 0x23, 0x18, 0x8C, 0x63, 0x5C, 0x01, 0x80, 0xC0, 0x60, - 0x00, 0x00, 0x0C, 0x1E, 0x02, 0x03, 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, - 0x18, 0x08, 0x0C, 0x06, 0x02, 0x1B, 0x0F, 0x00, 0x1C, 0x01, 0x80, 0x30, - 0x06, 0x01, 0x80, 0x33, 0xC6, 0x30, 0x88, 0x32, 0x06, 0x80, 0xF0, 0x1B, - 0x06, 0x60, 0xC4, 0x18, 0xD2, 0x0C, 0x3C, 0x61, 0x86, 0x18, 0xC3, 0x0C, - 0x21, 0x86, 0x18, 0x43, 0x2D, 0x38, 0x78, 0xE7, 0x0D, 0xB5, 0x8D, 0x1C, - 0xC7, 0x0C, 0x63, 0x8E, 0x31, 0x86, 0x30, 0xC3, 0x18, 0xC1, 0x0C, 0x61, - 0x84, 0xB0, 0xC6, 0xB0, 0x63, 0x80, 0x78, 0xE1, 0xB6, 0x14, 0x63, 0x84, - 0x38, 0xC3, 0x0C, 0x70, 0x86, 0x18, 0x61, 0x96, 0x1A, 0xC1, 0xC0, 0x0F, - 0x06, 0x63, 0x0D, 0x83, 0x60, 0xF0, 0x3C, 0x1B, 0x06, 0xC3, 0x39, 0x87, - 0x80, 0x1E, 0xF0, 0x39, 0xC1, 0x86, 0x0C, 0x30, 0xC1, 0x86, 0x0C, 0x30, - 0xC3, 0x06, 0x18, 0x60, 0xC6, 0x07, 0xC0, 0x60, 0x03, 0x00, 0x18, 0x00, - 0xC0, 0x1F, 0x00, 0x07, 0x81, 0x9C, 0x63, 0x98, 0x76, 0x0C, 0xC1, 0xB0, - 0x76, 0x0E, 0xC3, 0x98, 0xB1, 0xE6, 0x00, 0x80, 0x30, 0x06, 0x00, 0xC0, - 0xFC, 0x79, 0x8F, 0xC5, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x60, 0x30, - 0x10, 0x00, 0x1E, 0x98, 0xCC, 0x27, 0x11, 0x80, 0xE0, 0x39, 0x0C, 0x86, - 0x62, 0x2E, 0x00, 0x08, 0x67, 0xCC, 0x30, 0xC6, 0x18, 0x61, 0x8C, 0x34, - 0xE0, 0xF0, 0xCC, 0x19, 0x83, 0x30, 0xC6, 0x18, 0x87, 0x31, 0x66, 0x3C, - 0xCB, 0x1A, 0x6B, 0x8E, 0x00, 0x70, 0xCC, 0x33, 0x04, 0xC2, 0x18, 0x86, - 0x41, 0x90, 0x68, 0x1C, 0x06, 0x01, 0x00, 0x61, 0x0F, 0x84, 0x36, 0x30, - 0xDC, 0xC1, 0x35, 0x08, 0xD4, 0x23, 0x91, 0x0E, 0x48, 0x30, 0xE0, 0xC3, - 0x02, 0x08, 0x00, 0x0C, 0x63, 0x4A, 0x07, 0x00, 0x70, 0x06, 0x00, 0x20, - 0x07, 0x00, 0xB0, 0x0B, 0x21, 0x14, 0xE1, 0x80, 0x38, 0x63, 0x0C, 0x30, - 0x86, 0x10, 0xC4, 0x0C, 0x81, 0xA0, 0x34, 0x07, 0x00, 0x60, 0x08, 0x02, - 0x00, 0x40, 0x10, 0x04, 0x07, 0x00, 0x1F, 0x90, 0x80, 0x80, 0xC0, 0xC0, - 0x40, 0x60, 0x60, 0x60, 0x38, 0x3E, 0x03, 0xA0, 0x60, 0x00, 0x83, 0x81, - 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, 0x10, 0x10, 0x1C, 0x06, 0x03, 0x03, - 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, 0x18, 0x07, 0x00, 0xFF, 0xFF, 0x07, - 0x00, 0xC0, 0x60, 0x30, 0x10, 0x18, 0x0C, 0x06, 0x06, 0x03, 0x01, 0x80, - 0x60, 0x40, 0x60, 0x30, 0x10, 0x18, 0x0C, 0x06, 0x06, 0x06, 0x00, 0x78, - 0x18, 0x8C, 0x0F, 0x00}; - -const GFXglyph FreeSerifItalic12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 6, 16, 8, 1, -15}, // 0x21 '!' - {12, 7, 6, 8, 3, -15}, // 0x22 '"' - {18, 13, 16, 12, 0, -15}, // 0x23 '#' - {44, 12, 20, 12, 0, -17}, // 0x24 '$' - {74, 17, 17, 20, 2, -16}, // 0x25 '%' - {111, 15, 16, 19, 2, -15}, // 0x26 '&' - {141, 2, 6, 5, 4, -15}, // 0x27 ''' - {143, 7, 20, 8, 1, -15}, // 0x28 '(' - {161, 7, 20, 8, 0, -15}, // 0x29 ')' - {179, 8, 10, 12, 4, -15}, // 0x2A '*' - {189, 11, 11, 16, 2, -10}, // 0x2B '+' - {205, 3, 6, 6, 0, -2}, // 0x2C ',' - {208, 5, 1, 8, 1, -5}, // 0x2D '-' - {209, 2, 3, 6, 1, -2}, // 0x2E '.' - {210, 11, 16, 7, 0, -15}, // 0x2F '/' - {232, 11, 17, 12, 1, -16}, // 0x30 '0' - {256, 9, 17, 12, 1, -16}, // 0x31 '1' - {276, 10, 15, 12, 1, -14}, // 0x32 '2' - {295, 10, 16, 12, 1, -15}, // 0x33 '3' - {315, 11, 16, 12, 0, -15}, // 0x34 '4' - {337, 11, 16, 12, 0, -15}, // 0x35 '5' - {359, 12, 17, 12, 1, -16}, // 0x36 '6' - {385, 11, 16, 12, 2, -15}, // 0x37 '7' - {407, 11, 17, 12, 1, -16}, // 0x38 '8' - {431, 11, 17, 12, 1, -16}, // 0x39 '9' - {455, 4, 11, 6, 1, -10}, // 0x3A ':' - {461, 5, 14, 6, 0, -10}, // 0x3B ';' - {470, 12, 13, 14, 1, -12}, // 0x3C '<' - {490, 12, 6, 16, 2, -8}, // 0x3D '=' - {499, 12, 13, 14, 2, -12}, // 0x3E '>' - {519, 9, 16, 11, 3, -15}, // 0x3F '?' - {537, 16, 16, 19, 2, -15}, // 0x40 '@' - {569, 15, 15, 16, 0, -14}, // 0x41 'A' - {598, 14, 16, 14, 0, -15}, // 0x42 'B' - {626, 16, 16, 15, 1, -15}, // 0x43 'C' - {658, 16, 16, 17, 0, -15}, // 0x44 'D' - {690, 16, 16, 14, 0, -15}, // 0x45 'E' - {722, 16, 16, 14, 0, -15}, // 0x46 'F' - {754, 16, 16, 17, 1, -15}, // 0x47 'G' - {786, 19, 16, 17, 0, -15}, // 0x48 'H' - {824, 9, 16, 8, 0, -15}, // 0x49 'I' - {842, 12, 16, 10, 0, -15}, // 0x4A 'J' - {866, 17, 16, 15, 0, -15}, // 0x4B 'K' - {900, 14, 16, 14, 0, -15}, // 0x4C 'L' - {928, 21, 16, 20, 0, -15}, // 0x4D 'M' - {970, 18, 16, 16, 0, -15}, // 0x4E 'N' - {1006, 15, 16, 16, 1, -15}, // 0x4F 'O' - {1036, 14, 16, 14, 0, -15}, // 0x50 'P' - {1064, 15, 20, 16, 1, -15}, // 0x51 'Q' - {1102, 14, 16, 15, 0, -15}, // 0x52 'R' - {1130, 12, 16, 11, 0, -15}, // 0x53 'S' - {1154, 15, 16, 14, 2, -15}, // 0x54 'T' - {1184, 16, 16, 17, 3, -15}, // 0x55 'U' - {1216, 15, 16, 16, 3, -15}, // 0x56 'V' - {1246, 20, 16, 21, 3, -15}, // 0x57 'W' - {1286, 16, 16, 16, 0, -15}, // 0x58 'X' - {1318, 13, 16, 14, 3, -15}, // 0x59 'Y' - {1344, 15, 16, 14, 0, -15}, // 0x5A 'Z' - {1374, 8, 20, 9, 1, -15}, // 0x5B '[' - {1394, 8, 16, 12, 3, -15}, // 0x5C '\' - {1410, 7, 20, 9, 1, -15}, // 0x5D ']' - {1428, 10, 9, 10, 0, -15}, // 0x5E '^' - {1440, 12, 1, 12, 0, 3}, // 0x5F '_' - {1442, 4, 4, 6, 3, -15}, // 0x60 '`' - {1444, 12, 11, 12, 0, -10}, // 0x61 'a' - {1461, 10, 16, 11, 1, -15}, // 0x62 'b' - {1481, 9, 11, 10, 1, -10}, // 0x63 'c' - {1494, 13, 16, 12, 0, -15}, // 0x64 'd' - {1520, 8, 11, 10, 1, -10}, // 0x65 'e' - {1531, 14, 22, 10, -2, -16}, // 0x66 'f' - {1570, 12, 16, 11, -1, -10}, // 0x67 'g' - {1594, 12, 16, 12, 0, -15}, // 0x68 'h' - {1618, 5, 16, 6, 1, -15}, // 0x69 'i' - {1628, 9, 21, 7, -2, -15}, // 0x6A 'j' - {1652, 11, 16, 11, 0, -15}, // 0x6B 'k' - {1674, 6, 16, 6, 1, -15}, // 0x6C 'l' - {1686, 17, 11, 17, 0, -10}, // 0x6D 'm' - {1710, 12, 11, 12, 0, -10}, // 0x6E 'n' - {1727, 10, 11, 11, 1, -10}, // 0x6F 'o' - {1741, 13, 16, 11, -2, -10}, // 0x70 'p' - {1767, 11, 16, 12, 0, -10}, // 0x71 'q' - {1789, 9, 11, 9, 0, -10}, // 0x72 'r' - {1802, 9, 11, 8, 0, -10}, // 0x73 's' - {1815, 6, 13, 6, 1, -12}, // 0x74 't' - {1825, 11, 11, 12, 1, -10}, // 0x75 'u' - {1841, 10, 11, 11, 1, -10}, // 0x76 'v' - {1855, 14, 11, 16, 2, -10}, // 0x77 'w' - {1875, 12, 11, 10, -1, -10}, // 0x78 'x' - {1892, 11, 16, 11, 0, -10}, // 0x79 'y' - {1914, 9, 13, 9, 0, -10}, // 0x7A 'z' - {1929, 9, 21, 10, 1, -16}, // 0x7B '{' - {1953, 1, 16, 7, 3, -15}, // 0x7C '|' - {1955, 9, 21, 10, 0, -16}, // 0x7D '}' - {1979, 11, 3, 13, 1, -6}}; // 0x7E '~' - -const GFXfont FreeSerifItalic12pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic12pt7bBitmaps, - (GFXglyph *)FreeSerifItalic12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 2656 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h deleted file mode 100644 index c25db35..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h +++ /dev/null @@ -1,452 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic18pt7bBitmaps[] PROGMEM = { - 0x01, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0x81, 0xE0, 0x70, 0x1C, 0x06, 0x01, - 0x80, 0xC0, 0x30, 0x0C, 0x02, 0x01, 0x80, 0x40, 0x10, 0x00, 0x00, 0x01, - 0x80, 0xF0, 0x3C, 0x06, 0x00, 0x38, 0x77, 0x8F, 0x78, 0xF7, 0x0E, 0x60, - 0xE6, 0x0C, 0xC1, 0x8C, 0x18, 0x81, 0x00, 0x00, 0x60, 0xC0, 0x0C, 0x38, - 0x03, 0x86, 0x00, 0x60, 0xC0, 0x0C, 0x38, 0x03, 0x06, 0x00, 0x60, 0xC0, - 0xFF, 0xFF, 0x1F, 0xFF, 0xE0, 0x61, 0xC0, 0x1C, 0x30, 0x03, 0x06, 0x00, - 0x61, 0xC0, 0x18, 0x30, 0x3F, 0xFF, 0xC7, 0xFF, 0xF8, 0x18, 0x30, 0x03, - 0x0E, 0x00, 0xE1, 0x80, 0x18, 0x30, 0x03, 0x0C, 0x00, 0xC1, 0x80, 0x18, - 0x70, 0x00, 0x00, 0x08, 0x00, 0x30, 0x00, 0x40, 0x0F, 0xC0, 0x61, 0xE1, - 0x86, 0xC6, 0x0D, 0x8C, 0x1A, 0x18, 0x24, 0x38, 0xC0, 0x39, 0x80, 0x7F, - 0x00, 0x7E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xDC, 0x03, 0x38, - 0x06, 0x32, 0x0C, 0x64, 0x18, 0xDC, 0x71, 0xB8, 0xC6, 0x39, 0x8C, 0x3F, - 0x30, 0x1F, 0x80, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0x07, 0x80, 0x60, - 0x0F, 0xE0, 0xE0, 0x0F, 0x0F, 0xB0, 0x0E, 0x04, 0x30, 0x07, 0x02, 0x18, - 0x07, 0x01, 0x18, 0x03, 0x00, 0x8C, 0x01, 0x80, 0x8C, 0x00, 0xC0, 0x4C, - 0x00, 0x60, 0x66, 0x1F, 0x30, 0x66, 0x1F, 0xCC, 0x63, 0x1C, 0x67, 0xE3, - 0x1C, 0x19, 0xE1, 0x1C, 0x04, 0x01, 0x8C, 0x02, 0x00, 0x8E, 0x01, 0x00, - 0xC7, 0x00, 0x80, 0xC3, 0x00, 0x80, 0x61, 0x80, 0xC0, 0x60, 0xC0, 0xC0, - 0x20, 0x70, 0xE0, 0x30, 0x1F, 0xC0, 0x10, 0x07, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xFC, 0x00, 0x07, 0x18, 0x00, 0x18, 0x60, 0x00, 0xE1, 0x80, 0x03, - 0x8C, 0x00, 0x0E, 0x60, 0x00, 0x3B, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x7F, 0x1F, 0xC3, 0x3C, 0x1C, 0x38, 0x70, 0x61, 0xE1, 0xE3, 0x87, - 0x07, 0x8C, 0x3C, 0x0F, 0x60, 0xF0, 0x3D, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xE0, 0x3E, 0x07, 0xC0, 0x7C, 0x77, 0x84, 0xFF, 0x8F, 0xE1, 0xF8, 0x0F, - 0x00, 0x3B, 0xDE, 0xE7, 0x33, 0x18, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, - 0xC0, 0xC0, 0xE0, 0x60, 0x70, 0x38, 0x18, 0x0C, 0x0E, 0x07, 0x03, 0x01, - 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x01, 0x00, 0x80, 0x40, 0x30, - 0x08, 0x04, 0x02, 0x00, 0x04, 0x01, 0x00, 0x80, 0x60, 0x10, 0x08, 0x04, - 0x03, 0x01, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x0E, 0x07, 0x03, 0x81, - 0x80, 0xC0, 0xE0, 0x60, 0x30, 0x30, 0x18, 0x18, 0x08, 0x08, 0x08, 0x08, - 0x00, 0x06, 0x00, 0x60, 0x06, 0x0C, 0x43, 0xE4, 0xF1, 0x58, 0x0E, 0x00, - 0xF0, 0x74, 0xEE, 0x47, 0xC4, 0x30, 0x60, 0x06, 0x00, 0x60, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x31, 0xCE, - 0x31, 0x08, 0x98, 0xFF, 0xFF, 0x6F, 0xF6, 0x00, 0x06, 0x00, 0x0E, 0x00, - 0x0C, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, - 0xE0, 0x00, 0xC0, 0x01, 0xC0, 0x03, 0x80, 0x03, 0x00, 0x07, 0x00, 0x06, - 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, - 0x00, 0x60, 0x00, 0xE0, 0x00, 0x00, 0x78, 0x00, 0xC3, 0x00, 0xC1, 0xC0, - 0xC0, 0x60, 0xE0, 0x30, 0xE0, 0x1C, 0x70, 0x0E, 0x70, 0x07, 0x38, 0x03, - 0xBC, 0x01, 0xDC, 0x01, 0xEE, 0x00, 0xFF, 0x00, 0x7F, 0x80, 0x3B, 0x80, - 0x1D, 0xC0, 0x1E, 0xE0, 0x0E, 0x70, 0x0F, 0x38, 0x07, 0x1C, 0x07, 0x06, - 0x03, 0x83, 0x83, 0x80, 0xC3, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x7F, 0x00, - 0x70, 0x07, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x01, - 0xC0, 0x38, 0x03, 0x80, 0x38, 0x03, 0x80, 0x70, 0x07, 0x00, 0x70, 0x0E, - 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x1E, 0x0F, 0xF8, 0x01, 0xF0, 0x07, 0xFC, - 0x0C, 0x3E, 0x10, 0x1F, 0x20, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, 0x00, 0xE0, - 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x04, - 0x30, 0x0C, 0x7F, 0xF8, 0xFF, 0xF0, 0x00, 0x7C, 0x00, 0xFF, 0x00, 0xC3, - 0xC0, 0x80, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x1C, 0x00, - 0x38, 0x00, 0xF0, 0x03, 0xFC, 0x00, 0x1F, 0x00, 0x03, 0xC0, 0x01, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x06, 0x00, 0x07, - 0x00, 0x03, 0x07, 0x87, 0x03, 0xFF, 0x00, 0xFC, 0x00, 0x00, 0x01, 0x80, - 0x01, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x01, 0xF0, 0x01, 0xB0, 0x01, 0xB8, - 0x01, 0x9C, 0x01, 0x8C, 0x00, 0x86, 0x00, 0x87, 0x00, 0x83, 0x80, 0x81, - 0x80, 0x81, 0xC0, 0xC0, 0xE0, 0xC0, 0x70, 0xFF, 0xFF, 0x7F, 0xFF, 0x00, - 0x1C, 0x00, 0x0C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0x80, - 0x01, 0xFF, 0x01, 0xFF, 0x02, 0x00, 0x02, 0x00, 0x06, 0x00, 0x07, 0x00, - 0x0F, 0xC0, 0x0F, 0xF0, 0x00, 0xF8, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x1C, - 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x08, 0x00, 0x18, - 0x00, 0x30, 0x00, 0x30, 0x70, 0xE0, 0xFF, 0x80, 0x7E, 0x00, 0x00, 0x03, - 0x80, 0x1F, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, - 0x00, 0x3C, 0x00, 0x3D, 0xF0, 0x1F, 0xFE, 0x1F, 0x0F, 0x8E, 0x03, 0xC7, - 0x00, 0xF7, 0x00, 0x7B, 0x80, 0x3D, 0x80, 0x1E, 0xC0, 0x0F, 0x60, 0x0F, - 0xB0, 0x07, 0x98, 0x03, 0xC4, 0x03, 0xC3, 0x03, 0xC0, 0xC3, 0x80, 0x1F, - 0x00, 0x3F, 0xFF, 0x7F, 0xFE, 0x40, 0x0E, 0x80, 0x0C, 0x00, 0x18, 0x00, - 0x18, 0x00, 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, 0xC0, 0x01, 0xC0, 0x01, - 0x80, 0x03, 0x80, 0x03, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x1C, - 0x00, 0x18, 0x00, 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, 0xE0, 0x00, 0x00, - 0xF8, 0x03, 0x0E, 0x06, 0x06, 0x0C, 0x03, 0x0C, 0x03, 0x0C, 0x03, 0x0C, - 0x03, 0x0E, 0x06, 0x07, 0x8E, 0x07, 0xD8, 0x03, 0xE0, 0x07, 0xF0, 0x1C, - 0xF8, 0x30, 0x3C, 0x60, 0x1C, 0x60, 0x0E, 0xC0, 0x06, 0xC0, 0x06, 0xC0, - 0x06, 0xC0, 0x06, 0xE0, 0x0C, 0x60, 0x18, 0x38, 0x30, 0x0F, 0xC0, 0x01, - 0xF8, 0x07, 0x8C, 0x0E, 0x06, 0x1E, 0x02, 0x3C, 0x03, 0x3C, 0x03, 0x78, - 0x03, 0x78, 0x03, 0x78, 0x03, 0x78, 0x07, 0x78, 0x07, 0x78, 0x07, 0x3C, - 0x0E, 0x3E, 0x1E, 0x1F, 0xEE, 0x07, 0x9C, 0x00, 0x38, 0x00, 0x78, 0x00, - 0x70, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xE0, 0x00, 0x0C, - 0x3C, 0x78, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0F, 0x1E, 0x18, - 0x00, 0x07, 0x03, 0xC1, 0xE0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x02, 0x03, 0x81, 0xC0, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x00, 0x00, - 0x00, 0x00, 0xC0, 0x01, 0xF0, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x01, - 0xF0, 0x03, 0xF0, 0x03, 0xF0, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xE0, - 0x00, 0x7E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x3F, - 0x00, 0x03, 0xC0, 0x00, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0xC0, 0x00, 0x3C, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, - 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3F, 0x00, 0x03, 0xC0, 0x01, - 0xF0, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x01, 0xF0, 0x03, 0xF0, 0x03, - 0xF0, 0x00, 0xF0, 0x00, 0x20, 0x00, 0x00, 0x0F, 0x81, 0x86, 0x30, 0x33, - 0x03, 0x30, 0x30, 0x03, 0x00, 0x60, 0x0E, 0x01, 0xC0, 0x38, 0x06, 0x00, - 0xC0, 0x08, 0x01, 0x00, 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, - 0x00, 0xF0, 0x0F, 0x00, 0x60, 0x00, 0x00, 0x7F, 0x00, 0x03, 0xFF, 0xE0, - 0x07, 0x80, 0xF0, 0x0E, 0x00, 0x38, 0x1C, 0x00, 0x0C, 0x38, 0x0E, 0x06, - 0x70, 0x3F, 0xE2, 0x70, 0x71, 0xE3, 0xF0, 0x60, 0xE1, 0xE0, 0xC0, 0xC1, - 0xE0, 0xC0, 0xC1, 0xE1, 0x81, 0xC1, 0xE1, 0x81, 0xC1, 0xE1, 0x81, 0x82, - 0xE1, 0x83, 0x82, 0x71, 0x83, 0x86, 0x71, 0xC7, 0x8C, 0x38, 0xF9, 0xF8, - 0x3C, 0xF0, 0xF0, 0x1E, 0x00, 0x00, 0x0F, 0x80, 0x30, 0x03, 0xFF, 0xE0, - 0x00, 0x7F, 0x00, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, - 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x5E, 0x00, 0x04, 0xF0, - 0x00, 0x63, 0x80, 0x02, 0x1C, 0x00, 0x20, 0xE0, 0x01, 0x07, 0x00, 0x10, - 0x3C, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0xC0, 0x38, 0x04, 0x01, 0xC0, - 0x60, 0x0E, 0x06, 0x00, 0x78, 0x30, 0x03, 0xC3, 0x00, 0x1E, 0x38, 0x00, - 0xFB, 0xF0, 0x1F, 0xE0, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x78, 0x3C, - 0x03, 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xE0, 0x3C, 0x07, 0x01, 0xE0, 0x78, - 0x1E, 0x03, 0x83, 0xE0, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x0F, 0x0F, 0x00, - 0x70, 0x3C, 0x03, 0x80, 0xF0, 0x3C, 0x07, 0x81, 0xC0, 0x3C, 0x0E, 0x01, - 0xE0, 0xF0, 0x0F, 0x07, 0x80, 0xF0, 0x38, 0x0F, 0x81, 0xC1, 0xF8, 0x1F, - 0xFF, 0x83, 0xFF, 0xE0, 0x00, 0x00, 0x3F, 0x08, 0x07, 0xFF, 0xC0, 0xF8, - 0x3E, 0x0F, 0x00, 0x70, 0xF0, 0x03, 0x8F, 0x00, 0x08, 0xF0, 0x00, 0x47, - 0x80, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, - 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, - 0x00, 0x03, 0x80, 0x02, 0x1E, 0x00, 0x20, 0x78, 0x02, 0x03, 0xE0, 0x60, - 0x07, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xFF, 0xC0, 0x00, 0xFF, 0xFC, - 0x00, 0x78, 0x1F, 0x00, 0x3C, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x0E, 0x00, - 0x78, 0x07, 0x00, 0x1E, 0x07, 0x80, 0x0F, 0x03, 0x80, 0x07, 0x81, 0xC0, - 0x03, 0xC1, 0xE0, 0x01, 0xE0, 0xF0, 0x00, 0xF0, 0x70, 0x00, 0x78, 0x38, - 0x00, 0x78, 0x3C, 0x00, 0x3C, 0x1E, 0x00, 0x3E, 0x0E, 0x00, 0x1E, 0x0F, - 0x00, 0x1E, 0x07, 0x80, 0x1E, 0x03, 0x80, 0x3E, 0x01, 0xC0, 0x7E, 0x01, - 0xFF, 0xFC, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x07, 0xFF, 0xF0, - 0x1E, 0x01, 0xC0, 0x78, 0x02, 0x01, 0xE0, 0x08, 0x07, 0x00, 0x00, 0x1C, - 0x08, 0x00, 0xF0, 0x60, 0x03, 0x83, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xF0, - 0x01, 0xE0, 0xC0, 0x07, 0x03, 0x00, 0x1C, 0x08, 0x00, 0xF0, 0x20, 0x03, - 0x80, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, 0x81, 0xE0, 0x06, 0x07, 0x00, - 0x38, 0x1C, 0x03, 0xC0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, 0x00, 0x07, 0xFF, - 0xFC, 0x07, 0xFF, 0xF0, 0x1E, 0x01, 0xC0, 0x78, 0x02, 0x01, 0xE0, 0x08, - 0x07, 0x00, 0x20, 0x1C, 0x00, 0x00, 0xF0, 0x20, 0x03, 0x81, 0x80, 0x0E, - 0x0C, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0xC0, 0x07, 0x03, 0x00, 0x1C, 0x0C, - 0x00, 0xF0, 0x20, 0x03, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, 0x01, - 0xE0, 0x00, 0x07, 0x00, 0x00, 0x1C, 0x00, 0x00, 0xF8, 0x00, 0x0F, 0xF8, - 0x00, 0x00, 0x00, 0x3F, 0x02, 0x01, 0xFF, 0x88, 0x0F, 0x81, 0xF0, 0x3C, - 0x01, 0xE0, 0xF0, 0x01, 0xC3, 0xC0, 0x01, 0x0F, 0x80, 0x02, 0x1E, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xC0, 0x00, - 0x0F, 0x00, 0x3F, 0xFE, 0x00, 0x1E, 0x3C, 0x00, 0x38, 0x78, 0x00, 0x70, - 0xF0, 0x00, 0xE0, 0xE0, 0x01, 0xC1, 0xE0, 0x07, 0x01, 0xE0, 0x0E, 0x01, - 0xF0, 0x3C, 0x01, 0xFF, 0xF0, 0x00, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x3F, - 0xE0, 0x3E, 0x00, 0xF0, 0x07, 0x80, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x1C, - 0x00, 0xF0, 0x03, 0x80, 0x1E, 0x00, 0x70, 0x03, 0x80, 0x1E, 0x00, 0x70, - 0x03, 0x80, 0x1E, 0x00, 0x70, 0x03, 0x80, 0x1F, 0xFF, 0xF0, 0x03, 0xFF, - 0xFE, 0x00, 0x70, 0x03, 0xC0, 0x0E, 0x00, 0x70, 0x03, 0xC0, 0x0E, 0x00, - 0x70, 0x03, 0xC0, 0x0E, 0x00, 0x78, 0x03, 0xC0, 0x0E, 0x00, 0x78, 0x01, - 0xC0, 0x0E, 0x00, 0x78, 0x01, 0xC0, 0x0E, 0x00, 0x78, 0x03, 0xE0, 0x3F, - 0xE1, 0xFF, 0x00, 0x07, 0xFC, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xE0, - 0x07, 0x00, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xE0, - 0x07, 0x00, 0x1C, 0x00, 0xF0, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x0F, - 0x00, 0x07, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0x70, 0x00, 0x38, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x00, 0x70, - 0x1E, 0x78, 0x0F, 0x38, 0x07, 0xF8, 0x01, 0xF0, 0x00, 0x07, 0xFC, 0x7F, - 0x80, 0xF8, 0x0F, 0x00, 0x38, 0x07, 0x00, 0x3C, 0x07, 0x00, 0x1C, 0x06, - 0x00, 0x0E, 0x06, 0x00, 0x07, 0x0C, 0x00, 0x07, 0x8C, 0x00, 0x03, 0x9C, - 0x00, 0x01, 0xD8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x73, - 0x80, 0x00, 0x39, 0xE0, 0x00, 0x3C, 0x78, 0x00, 0x1C, 0x1C, 0x00, 0x0E, - 0x0F, 0x00, 0x07, 0x03, 0x80, 0x07, 0x81, 0xE0, 0x03, 0x80, 0x70, 0x01, - 0xC0, 0x3C, 0x01, 0xE0, 0x1F, 0x03, 0xFE, 0x3F, 0xE0, 0x07, 0xFC, 0x00, - 0x1F, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, - 0x01, 0xC0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x80, - 0x00, 0x78, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0F, 0x00, 0x00, 0xE0, - 0x00, 0x0E, 0x00, 0x11, 0xE0, 0x03, 0x1E, 0x00, 0x61, 0xC0, 0x06, 0x1C, - 0x01, 0xE3, 0xFF, 0xFC, 0xFF, 0xFF, 0xC0, 0x07, 0xF0, 0x00, 0x7E, 0x03, - 0xE0, 0x01, 0xF0, 0x03, 0xC0, 0x03, 0xE0, 0x07, 0x80, 0x0F, 0x80, 0x1F, - 0x00, 0x37, 0x00, 0x2E, 0x00, 0x5E, 0x00, 0x5C, 0x01, 0xB8, 0x01, 0xB8, - 0x06, 0x70, 0x02, 0x78, 0x09, 0xE0, 0x04, 0x70, 0x33, 0xC0, 0x08, 0xE0, - 0xC7, 0x00, 0x31, 0xC1, 0x0E, 0x00, 0x43, 0x86, 0x3C, 0x00, 0x87, 0x18, - 0x70, 0x03, 0x0E, 0x20, 0xE0, 0x06, 0x1C, 0xC3, 0xC0, 0x08, 0x3B, 0x07, - 0x80, 0x10, 0x7C, 0x0E, 0x00, 0x60, 0x78, 0x1C, 0x00, 0x80, 0xE0, 0x78, - 0x03, 0x01, 0x80, 0xF0, 0x07, 0x03, 0x03, 0xE0, 0x3F, 0x84, 0x1F, 0xF0, - 0x00, 0x07, 0xC0, 0x3F, 0xC0, 0x78, 0x03, 0xE0, 0x0E, 0x00, 0x70, 0x03, - 0xC0, 0x18, 0x01, 0xF0, 0x0E, 0x00, 0x6C, 0x03, 0x00, 0x1B, 0x80, 0xC0, - 0x0C, 0xE0, 0x30, 0x03, 0x18, 0x1C, 0x00, 0xC7, 0x06, 0x00, 0x30, 0xC1, - 0x80, 0x18, 0x38, 0xE0, 0x06, 0x06, 0x30, 0x01, 0x81, 0x8C, 0x00, 0xC0, - 0x73, 0x00, 0x30, 0x0D, 0xC0, 0x0C, 0x03, 0xE0, 0x03, 0x00, 0x78, 0x01, - 0x80, 0x1E, 0x00, 0x60, 0x07, 0x00, 0x38, 0x00, 0xC0, 0x0E, 0x00, 0x30, - 0x0F, 0xE0, 0x04, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x07, 0xC1, - 0xE0, 0x1E, 0x01, 0xE0, 0x78, 0x01, 0xC1, 0xE0, 0x03, 0xC7, 0x80, 0x07, - 0x9F, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0xF8, 0x00, 0x3D, 0xE0, 0x00, 0xFF, - 0xC0, 0x01, 0xEF, 0x80, 0x03, 0xDE, 0x00, 0x0F, 0xBC, 0x00, 0x1E, 0x78, - 0x00, 0x7C, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xC1, 0xC0, 0x0F, 0x03, 0xC0, - 0x3C, 0x03, 0xC1, 0xF0, 0x03, 0xFF, 0x80, 0x01, 0xFC, 0x00, 0x00, 0x07, - 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x0E, 0x0F, 0x80, 0x78, 0x1F, 0x01, 0xC0, - 0x3C, 0x07, 0x00, 0xF0, 0x1C, 0x03, 0xC0, 0xF0, 0x0F, 0x03, 0x80, 0x78, - 0x0E, 0x01, 0xE0, 0x78, 0x1F, 0x01, 0xFF, 0xF8, 0x07, 0x7F, 0x00, 0x1C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x1C, 0x00, 0x00, 0xF0, 0x00, 0x0F, - 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xC1, 0xE0, - 0x1E, 0x01, 0xC0, 0x78, 0x03, 0xC1, 0xE0, 0x03, 0x87, 0x80, 0x07, 0x8F, - 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0x78, 0x00, 0x3D, 0xE0, 0x00, 0x7B, 0xC0, - 0x01, 0xFF, 0x80, 0x03, 0xDE, 0x00, 0x07, 0xBC, 0x00, 0x1F, 0x78, 0x00, - 0x3C, 0xF0, 0x00, 0xF1, 0xE0, 0x01, 0xE3, 0xC0, 0x07, 0x83, 0x80, 0x1E, - 0x07, 0x80, 0x78, 0x07, 0x01, 0xC0, 0x03, 0xDE, 0x00, 0x01, 0xC0, 0x00, - 0x06, 0x00, 0x00, 0x18, 0x00, 0x10, 0x7F, 0xC0, 0xC3, 0xFF, 0xFF, 0x08, - 0x07, 0xF0, 0x00, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x78, 0x3C, 0x03, - 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xE0, 0x3C, 0x07, 0x01, 0xE0, 0x78, 0x1E, - 0x03, 0x83, 0xF0, 0x1F, 0xFE, 0x01, 0xFF, 0xC0, 0x0F, 0x38, 0x00, 0x71, - 0xE0, 0x03, 0x87, 0x00, 0x3C, 0x38, 0x01, 0xC1, 0xE0, 0x0E, 0x07, 0x00, - 0xF0, 0x3C, 0x07, 0x81, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x3C, 0x1E, 0x00, - 0xF3, 0xFC, 0x07, 0xC0, 0x00, 0xF8, 0x81, 0xFF, 0xC1, 0xE1, 0xE1, 0xE0, - 0x70, 0xF0, 0x10, 0x78, 0x08, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x01, - 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, - 0x80, 0x3C, 0x40, 0x1E, 0x20, 0x0F, 0x38, 0x07, 0x9E, 0x07, 0x8F, 0x87, - 0x84, 0x7F, 0xC2, 0x0F, 0x80, 0x3F, 0xFF, 0xF7, 0xFF, 0xFF, 0x70, 0x78, - 0x76, 0x07, 0x02, 0xC0, 0x70, 0x28, 0x0F, 0x02, 0x00, 0xF0, 0x00, 0x0E, - 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x80, 0x00, - 0x70, 0x00, 0x07, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x01, 0xF0, 0x00, - 0xFF, 0xE0, 0x00, 0x7F, 0xE0, 0xFE, 0x3F, 0x00, 0x78, 0x3C, 0x00, 0x60, - 0xF0, 0x01, 0x81, 0xE0, 0x03, 0x03, 0xC0, 0x06, 0x07, 0x00, 0x08, 0x1E, - 0x00, 0x30, 0x3C, 0x00, 0x60, 0x70, 0x00, 0x81, 0xE0, 0x01, 0x03, 0xC0, - 0x06, 0x07, 0x80, 0x0C, 0x0E, 0x00, 0x10, 0x3C, 0x00, 0x60, 0x78, 0x00, - 0xC0, 0xF0, 0x01, 0x01, 0xE0, 0x06, 0x03, 0xC0, 0x08, 0x03, 0xC0, 0x30, - 0x07, 0xC1, 0xC0, 0x07, 0xFF, 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFF, 0x01, - 0xFB, 0xE0, 0x07, 0x8E, 0x00, 0x18, 0x78, 0x01, 0x83, 0xC0, 0x0C, 0x1E, - 0x00, 0xC0, 0xF0, 0x06, 0x03, 0x80, 0x60, 0x1C, 0x02, 0x00, 0xE0, 0x30, - 0x07, 0x83, 0x00, 0x3C, 0x10, 0x01, 0xE1, 0x80, 0x07, 0x08, 0x00, 0x38, - 0x80, 0x01, 0xC4, 0x00, 0x0E, 0x40, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x0E, 0x00, 0x00, 0x70, 0x00, 0x03, 0x00, 0x00, 0x10, 0x00, 0x00, 0xFF, - 0x3F, 0xC3, 0xFB, 0xE0, 0x78, 0x07, 0x8E, 0x03, 0xC0, 0x18, 0x78, 0x0E, - 0x01, 0x83, 0xC0, 0x70, 0x0C, 0x1E, 0x03, 0x80, 0x40, 0xF0, 0x3C, 0x06, - 0x03, 0x81, 0xE0, 0x60, 0x1C, 0x17, 0x83, 0x00, 0xE0, 0xBC, 0x30, 0x07, - 0x09, 0xE1, 0x00, 0x38, 0x47, 0x18, 0x01, 0xE4, 0x38, 0x80, 0x0F, 0x21, - 0xCC, 0x00, 0x7A, 0x0E, 0x40, 0x01, 0xD0, 0x76, 0x00, 0x0F, 0x03, 0xA0, - 0x00, 0x78, 0x1F, 0x00, 0x03, 0x80, 0xF0, 0x00, 0x1C, 0x07, 0x00, 0x00, - 0xC0, 0x38, 0x00, 0x06, 0x00, 0x80, 0x00, 0x20, 0x04, 0x00, 0x00, 0x0F, - 0xF8, 0x7F, 0x03, 0xE0, 0x3E, 0x01, 0xC0, 0x18, 0x01, 0xE0, 0x30, 0x01, - 0xE0, 0x60, 0x00, 0xE0, 0xC0, 0x00, 0xF1, 0xC0, 0x00, 0x71, 0x80, 0x00, - 0x7B, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xCE, 0x00, 0x01, 0x8F, 0x00, 0x01, - 0x07, 0x00, 0x03, 0x07, 0x00, 0x06, 0x07, 0x80, 0x0C, 0x03, 0x80, 0x18, - 0x03, 0xC0, 0x78, 0x03, 0xE0, 0xFE, 0x1F, 0xF8, 0xFF, 0x87, 0xE7, 0xC0, - 0x38, 0x70, 0x06, 0x0E, 0x01, 0x81, 0xE0, 0x30, 0x1C, 0x0C, 0x03, 0x83, - 0x00, 0x78, 0xC0, 0x07, 0x30, 0x00, 0xE4, 0x00, 0x1D, 0x80, 0x03, 0xE0, - 0x00, 0x38, 0x00, 0x0F, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, - 0x01, 0xE0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x01, 0xE0, 0x00, 0x7C, 0x00, - 0x3F, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, 0xE0, 0xE0, 0x0F, 0x82, - 0x00, 0x3C, 0x18, 0x01, 0xE0, 0x40, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xF0, 0x00, 0x07, - 0x80, 0x00, 0x3C, 0x00, 0xC1, 0xE0, 0x02, 0x0F, 0x00, 0x18, 0x38, 0x01, - 0xE1, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, 0x00, 0x01, 0xF8, 0x0C, 0x00, 0xC0, - 0x06, 0x00, 0x30, 0x01, 0x80, 0x18, 0x00, 0xC0, 0x06, 0x00, 0x30, 0x03, - 0x00, 0x18, 0x00, 0xC0, 0x06, 0x00, 0x60, 0x03, 0x00, 0x18, 0x01, 0xC0, - 0x0C, 0x00, 0x60, 0x03, 0x00, 0x30, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x06, - 0x00, 0x30, 0x01, 0xF8, 0x00, 0xE0, 0x0E, 0x00, 0x60, 0x07, 0x00, 0x30, - 0x03, 0x80, 0x18, 0x01, 0xC0, 0x0C, 0x00, 0xC0, 0x0E, 0x00, 0x60, 0x07, - 0x00, 0x30, 0x03, 0x80, 0x18, 0x01, 0xC0, 0x0C, 0x00, 0xC0, 0x0E, 0x00, - 0x60, 0x07, 0x00, 0x30, 0x03, 0xF0, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x0E, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x01, 0x80, 0x18, 0x01, 0x80, - 0x18, 0x03, 0x00, 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x06, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x0F, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x1F, 0x00, 0x36, 0x00, 0xCE, 0x01, 0x8C, 0x06, 0x1C, 0x0C, - 0x18, 0x38, 0x38, 0x60, 0x31, 0xC0, 0x73, 0x00, 0x6E, 0x00, 0xE0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0xE3, 0x8F, 0x0E, 0x18, 0x30, 0x01, 0xEC, 0x0E, - 0x58, 0x30, 0x70, 0xE0, 0xC3, 0x81, 0x86, 0x07, 0x1C, 0x0C, 0x38, 0x18, - 0xE0, 0x71, 0xC0, 0xE3, 0x83, 0x87, 0x0B, 0x2F, 0x36, 0xCF, 0xCF, 0x1F, - 0x1C, 0x00, 0x03, 0x00, 0x1F, 0x00, 0x07, 0x00, 0x07, 0x00, 0x06, 0x00, - 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x1C, 0x7C, 0x1C, 0xFE, - 0x19, 0x8F, 0x1A, 0x07, 0x3C, 0x07, 0x38, 0x07, 0x38, 0x07, 0x70, 0x0E, - 0x70, 0x0E, 0x70, 0x1C, 0x60, 0x18, 0xE0, 0x30, 0xE0, 0x60, 0xE1, 0xC0, - 0x3F, 0x00, 0x01, 0xF0, 0x38, 0xC3, 0x8E, 0x78, 0x73, 0x80, 0x3C, 0x01, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x47, 0x84, 0x3F, - 0xC0, 0x7C, 0x00, 0x00, 0x01, 0x80, 0x07, 0xC0, 0x00, 0xE0, 0x00, 0x60, - 0x00, 0x30, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0C, 0x00, 0x06, 0x00, 0xF7, - 0x01, 0xC7, 0x81, 0xC3, 0x81, 0xC1, 0xC1, 0xE0, 0xE0, 0xE0, 0x60, 0xF0, - 0x30, 0x78, 0x38, 0x78, 0x18, 0x3C, 0x0C, 0x1E, 0x0C, 0x0F, 0x0E, 0x27, - 0xCB, 0x21, 0xF9, 0xE0, 0x78, 0xE0, 0x00, 0xF0, 0x1C, 0xC3, 0x86, 0x38, - 0x33, 0xC3, 0x1C, 0x31, 0xE3, 0x1F, 0xE0, 0xF0, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x47, 0x84, 0x3F, 0xC0, 0x7C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x33, - 0x00, 0x06, 0x30, 0x00, 0xC0, 0x00, 0x0C, 0x00, 0x01, 0xC0, 0x00, 0x18, - 0x00, 0x01, 0x80, 0x00, 0x38, 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0x80, 0x03, - 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x06, 0x00, 0x00, - 0x60, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0C, 0x00, 0x00, 0xC0, 0x00, - 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x01, 0x80, 0x00, 0x18, 0x00, - 0x03, 0x00, 0x00, 0x30, 0x00, 0xC6, 0x00, 0x0C, 0xC0, 0x00, 0x78, 0x00, - 0x00, 0x01, 0xF8, 0x07, 0x1F, 0x0E, 0x0F, 0x0C, 0x0E, 0x18, 0x0E, 0x18, - 0x0E, 0x18, 0x1E, 0x18, 0x3C, 0x0C, 0x78, 0x07, 0xE0, 0x08, 0x00, 0x18, - 0x00, 0x1E, 0x00, 0x0F, 0xE0, 0x13, 0xF0, 0x60, 0x78, 0xC0, 0x38, 0xC0, - 0x18, 0xC0, 0x18, 0xC0, 0x30, 0x60, 0x60, 0x3F, 0x80, 0x03, 0x00, 0x1F, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x06, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0E, - 0x00, 0x0C, 0x00, 0x1C, 0x38, 0x1C, 0x7C, 0x1C, 0xCC, 0x19, 0x0C, 0x3A, - 0x0C, 0x3C, 0x1C, 0x3C, 0x18, 0x38, 0x18, 0x70, 0x38, 0x70, 0x38, 0x70, - 0x30, 0x60, 0x72, 0xE0, 0x76, 0xE0, 0x7C, 0xC0, 0x70, 0x03, 0x03, 0xC1, - 0xE0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x7E, 0x0F, 0x03, 0x81, 0x81, - 0xC0, 0xE0, 0x70, 0x30, 0x38, 0x1C, 0x1C, 0x4C, 0x47, 0xC3, 0xC0, 0x00, - 0x0C, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x18, 0x03, 0xF0, 0x00, 0xE0, 0x01, 0x80, 0x03, 0x00, - 0x0E, 0x00, 0x1C, 0x00, 0x30, 0x00, 0x60, 0x01, 0xC0, 0x03, 0x80, 0x06, - 0x00, 0x0C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xC0, 0x03, 0x80, 0x06, 0x00, - 0x0C, 0x06, 0x30, 0x0C, 0xC0, 0x0F, 0x00, 0x00, 0x03, 0x00, 0x3E, 0x00, - 0x1C, 0x00, 0x38, 0x00, 0x60, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0C, - 0x00, 0x38, 0xFC, 0x70, 0x60, 0xE1, 0x81, 0x86, 0x07, 0x10, 0x0E, 0x40, - 0x1B, 0x80, 0x3F, 0x00, 0xE7, 0x01, 0xCE, 0x03, 0x0C, 0x06, 0x1C, 0x5C, - 0x1D, 0x38, 0x3E, 0x60, 0x38, 0x03, 0x1F, 0x07, 0x07, 0x06, 0x0E, 0x0E, - 0x0E, 0x0C, 0x1C, 0x1C, 0x18, 0x38, 0x38, 0x38, 0x30, 0x70, 0x70, 0x70, - 0x64, 0xE4, 0xE8, 0xF0, 0xE0, 0x00, 0x06, 0x18, 0x1E, 0x3E, 0x3C, 0x3F, - 0x0E, 0x4C, 0x47, 0x0C, 0x8C, 0x8E, 0x1D, 0x0D, 0x0E, 0x1E, 0x1A, 0x0E, - 0x1C, 0x1E, 0x0C, 0x3C, 0x1C, 0x1C, 0x38, 0x38, 0x1C, 0x38, 0x38, 0x1C, - 0x30, 0x38, 0x18, 0x70, 0x30, 0x39, 0x70, 0x70, 0x32, 0x60, 0x70, 0x3C, - 0x60, 0x60, 0x38, 0x06, 0x0E, 0x1F, 0x1F, 0x83, 0x99, 0xC1, 0x98, 0xC1, - 0xD8, 0xE0, 0xE8, 0x70, 0x78, 0x30, 0x38, 0x38, 0x3C, 0x1C, 0x1C, 0x0E, - 0x0E, 0x06, 0x0E, 0x03, 0x17, 0x01, 0xB3, 0x80, 0xF1, 0x80, 0x70, 0x01, - 0xF0, 0x0E, 0x38, 0x38, 0x30, 0xE0, 0x73, 0x80, 0xEE, 0x01, 0xDC, 0x03, - 0xF8, 0x0F, 0xE0, 0x1D, 0xC0, 0x3B, 0x80, 0xE7, 0x03, 0x8E, 0x06, 0x0E, - 0x38, 0x07, 0xC0, 0x00, 0x00, 0xE7, 0xC0, 0x7C, 0xFE, 0x01, 0xD1, 0xF0, - 0x1E, 0x0F, 0x01, 0xC0, 0xF0, 0x38, 0x0F, 0x03, 0x80, 0xF0, 0x38, 0x0E, - 0x03, 0x01, 0xE0, 0x70, 0x1C, 0x07, 0x03, 0xC0, 0x60, 0x78, 0x06, 0x0F, - 0x00, 0xE1, 0xC0, 0x0F, 0xF0, 0x00, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, - 0x00, 0x1C, 0x00, 0x01, 0x80, 0x00, 0x38, 0x00, 0x0F, 0xF0, 0x00, 0x00, - 0xF7, 0x03, 0xCE, 0x0F, 0x06, 0x1E, 0x06, 0x1C, 0x04, 0x3C, 0x04, 0x78, - 0x04, 0x78, 0x0C, 0xF0, 0x08, 0xF0, 0x18, 0xF0, 0x38, 0xF0, 0xF0, 0xF9, - 0x70, 0x7E, 0x70, 0x3C, 0x70, 0x00, 0x60, 0x00, 0xE0, 0x00, 0xE0, 0x00, - 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x0F, 0xF0, 0x7C, 0x70, 0xE7, 0xC7, 0x4C, - 0x34, 0x01, 0xA0, 0x1E, 0x00, 0xF0, 0x07, 0x00, 0x78, 0x03, 0x80, 0x1C, - 0x00, 0xC0, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x00, 0x07, 0x88, 0x63, 0x86, - 0x0C, 0x30, 0x21, 0xC1, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x03, 0x80, 0x1C, - 0x10, 0x60, 0x83, 0x06, 0x18, 0x71, 0x82, 0x78, 0x00, 0x02, 0x03, 0x03, - 0x07, 0xF7, 0xF8, 0xE0, 0x60, 0x70, 0x38, 0x1C, 0x0C, 0x0E, 0x07, 0x03, - 0x01, 0x91, 0xC8, 0xF8, 0x78, 0x00, 0x1C, 0x0D, 0xF8, 0x38, 0x60, 0x70, - 0xC1, 0xC3, 0x83, 0x87, 0x07, 0x0C, 0x1E, 0x38, 0x78, 0x70, 0xB0, 0xE2, - 0x61, 0x8D, 0xC7, 0x33, 0x2C, 0xC6, 0x5F, 0x0F, 0x38, 0x1C, 0x00, 0x18, - 0x1B, 0xE0, 0x73, 0x81, 0xC6, 0x03, 0x18, 0x0C, 0x70, 0x21, 0xC1, 0x83, - 0x0C, 0x0C, 0x20, 0x31, 0x00, 0xC8, 0x03, 0x40, 0x0E, 0x00, 0x30, 0x00, - 0x80, 0x00, 0x18, 0x04, 0x1B, 0xE0, 0x30, 0x71, 0x80, 0xC1, 0xC6, 0x07, - 0x01, 0x1C, 0x2C, 0x08, 0x70, 0xB0, 0x20, 0xC4, 0xC1, 0x03, 0x21, 0x84, - 0x0D, 0x86, 0x20, 0x34, 0x19, 0x00, 0xE0, 0x68, 0x03, 0x81, 0xA0, 0x0C, - 0x07, 0x00, 0x30, 0x18, 0x00, 0x80, 0x40, 0x00, 0x03, 0x07, 0x0F, 0x8F, - 0x13, 0x93, 0x01, 0xB0, 0x01, 0xE0, 0x01, 0xC0, 0x00, 0xC0, 0x00, 0xC0, - 0x01, 0xC0, 0x03, 0xE0, 0x02, 0x60, 0x04, 0x62, 0x08, 0x64, 0xF0, 0x7C, - 0xE0, 0x30, 0x06, 0x06, 0x3F, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x81, - 0x03, 0x82, 0x01, 0x82, 0x01, 0xC4, 0x01, 0xC4, 0x01, 0xC8, 0x00, 0xC8, - 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x80, - 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x78, 0x00, 0x70, 0x00, 0x1F, 0xFC, - 0x7F, 0xE1, 0x01, 0x08, 0x08, 0x00, 0x40, 0x02, 0x00, 0x10, 0x00, 0x80, - 0x06, 0x00, 0x10, 0x00, 0x80, 0x04, 0x00, 0x38, 0x01, 0xF0, 0x0B, 0xE0, - 0x01, 0xC6, 0x03, 0x98, 0x03, 0x80, 0x00, 0x70, 0x0C, 0x01, 0x80, 0x38, - 0x03, 0x80, 0x30, 0x07, 0x00, 0x70, 0x07, 0x00, 0x60, 0x0E, 0x00, 0xE0, - 0x0C, 0x01, 0xC0, 0x1C, 0x07, 0x80, 0x30, 0x04, 0x00, 0x20, 0x03, 0x00, - 0x30, 0x07, 0x00, 0x70, 0x06, 0x00, 0x60, 0x0E, 0x00, 0xE0, 0x0C, 0x00, - 0xC0, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0xC0, 0x06, - 0x00, 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, 0x70, 0x07, 0x00, 0x70, 0x06, - 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0C, 0x00, 0x40, 0x04, 0x00, 0xC0, 0x1E, - 0x03, 0x80, 0x38, 0x03, 0x00, 0x70, 0x07, 0x00, 0x70, 0x06, 0x00, 0xE0, - 0x0E, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x70, 0x00, 0x1E, 0x00, 0x3F, 0xE1, - 0xF8, 0x7F, 0xC0, 0x07, 0x80}; - -const GFXglyph FreeSerifItalic18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 10, 23, 12, 1, -22}, // 0x21 '!' - {29, 12, 9, 12, 4, -22}, // 0x22 '"' - {43, 19, 23, 17, 0, -22}, // 0x23 '#' - {98, 15, 29, 17, 1, -25}, // 0x24 '$' - {153, 25, 23, 29, 3, -22}, // 0x25 '%' - {225, 22, 23, 27, 3, -22}, // 0x26 '&' - {289, 5, 9, 7, 4, -22}, // 0x27 ''' - {295, 9, 29, 12, 1, -22}, // 0x28 '(' - {328, 9, 29, 12, 1, -22}, // 0x29 ')' - {361, 12, 14, 18, 5, -22}, // 0x2A '*' - {382, 16, 18, 24, 4, -17}, // 0x2B '+' - {418, 5, 8, 9, -1, -2}, // 0x2C ',' - {423, 8, 2, 12, 2, -8}, // 0x2D '-' - {425, 4, 4, 9, 1, -3}, // 0x2E '.' - {427, 16, 23, 10, 0, -22}, // 0x2F '/' - {473, 17, 24, 17, 1, -23}, // 0x30 '0' - {524, 12, 24, 17, 2, -23}, // 0x31 '1' - {560, 16, 23, 17, 1, -22}, // 0x32 '2' - {606, 17, 24, 18, 0, -23}, // 0x33 '3' - {657, 17, 24, 17, 0, -23}, // 0x34 '4' - {708, 16, 23, 18, 0, -22}, // 0x35 '5' - {754, 17, 24, 18, 1, -23}, // 0x36 '6' - {805, 16, 23, 17, 3, -22}, // 0x37 '7' - {851, 16, 24, 18, 1, -23}, // 0x38 '8' - {899, 16, 24, 17, 1, -23}, // 0x39 '9' - {947, 7, 15, 9, 2, -14}, // 0x3A ':' - {961, 9, 20, 9, 1, -14}, // 0x3B ';' - {984, 18, 18, 20, 2, -17}, // 0x3C '<' - {1025, 18, 9, 23, 3, -12}, // 0x3D '=' - {1046, 18, 18, 20, 2, -17}, // 0x3E '>' - {1087, 12, 23, 16, 4, -22}, // 0x3F '?' - {1122, 24, 23, 27, 2, -22}, // 0x40 '@' - {1191, 21, 23, 23, 0, -22}, // 0x41 'A' - {1252, 21, 23, 21, 0, -22}, // 0x42 'B' - {1313, 21, 23, 21, 2, -22}, // 0x43 'C' - {1374, 25, 23, 25, 0, -22}, // 0x44 'D' - {1446, 22, 23, 20, 0, -22}, // 0x45 'E' - {1510, 22, 23, 20, 0, -22}, // 0x46 'F' - {1574, 23, 23, 24, 2, -22}, // 0x47 'G' - {1641, 27, 23, 25, 0, -22}, // 0x48 'H' - {1719, 14, 23, 11, 0, -22}, // 0x49 'I' - {1760, 17, 23, 15, 0, -22}, // 0x4A 'J' - {1809, 25, 23, 22, 0, -22}, // 0x4B 'K' - {1881, 20, 23, 20, 0, -22}, // 0x4C 'L' - {1939, 31, 23, 29, 0, -22}, // 0x4D 'M' - {2029, 26, 23, 24, 0, -22}, // 0x4E 'N' - {2104, 23, 23, 23, 1, -22}, // 0x4F 'O' - {2171, 22, 23, 20, 0, -22}, // 0x50 'P' - {2235, 23, 29, 23, 1, -22}, // 0x51 'Q' - {2319, 21, 23, 22, 0, -22}, // 0x52 'R' - {2380, 17, 23, 16, 0, -22}, // 0x53 'S' - {2429, 20, 23, 21, 3, -22}, // 0x54 'T' - {2487, 23, 23, 25, 4, -22}, // 0x55 'U' - {2554, 21, 23, 23, 5, -22}, // 0x56 'V' - {2615, 29, 23, 31, 5, -22}, // 0x57 'W' - {2699, 24, 23, 23, 0, -22}, // 0x58 'X' - {2768, 19, 23, 21, 4, -22}, // 0x59 'Y' - {2823, 22, 23, 20, 0, -22}, // 0x5A 'Z' - {2887, 13, 28, 14, 1, -22}, // 0x5B '[' - {2933, 12, 23, 17, 4, -22}, // 0x5C '\' - {2968, 12, 28, 14, 1, -22}, // 0x5D ']' - {3010, 15, 13, 15, 0, -22}, // 0x5E '^' - {3035, 18, 2, 17, 0, 3}, // 0x5F '_' - {3040, 6, 6, 9, 5, -22}, // 0x60 '`' - {3045, 15, 15, 17, 1, -14}, // 0x61 'a' - {3074, 16, 24, 17, 1, -23}, // 0x62 'b' - {3122, 13, 15, 14, 1, -14}, // 0x63 'c' - {3147, 17, 24, 18, 1, -23}, // 0x64 'd' - {3198, 13, 15, 14, 1, -14}, // 0x65 'e' - {3223, 20, 31, 15, -3, -23}, // 0x66 'f' - {3301, 16, 22, 15, -1, -14}, // 0x67 'g' - {3345, 16, 24, 17, 1, -23}, // 0x68 'h' - {3393, 9, 23, 9, 1, -22}, // 0x69 'i' - {3419, 15, 30, 10, -3, -22}, // 0x6A 'j' - {3476, 15, 24, 16, 1, -23}, // 0x6B 'k' - {3521, 8, 25, 9, 1, -23}, // 0x6C 'l' - {3546, 24, 15, 25, 0, -14}, // 0x6D 'm' - {3591, 17, 15, 17, 0, -14}, // 0x6E 'n' - {3623, 15, 15, 17, 1, -14}, // 0x6F 'o' - {3652, 20, 22, 16, -3, -14}, // 0x70 'p' - {3707, 16, 22, 17, 1, -14}, // 0x71 'q' - {3751, 13, 15, 13, 1, -14}, // 0x72 'r' - {3776, 13, 15, 12, 0, -14}, // 0x73 's' - {3801, 9, 18, 8, 1, -17}, // 0x74 't' - {3822, 15, 15, 17, 1, -14}, // 0x75 'u' - {3851, 14, 15, 16, 2, -14}, // 0x76 'v' - {3878, 22, 15, 24, 1, -14}, // 0x77 'w' - {3920, 16, 15, 15, -1, -14}, // 0x78 'x' - {3950, 16, 22, 16, 0, -14}, // 0x79 'y' - {3994, 14, 18, 14, 0, -14}, // 0x7A 'z' - {4026, 12, 30, 14, 2, -23}, // 0x7B '{' - {4071, 2, 23, 10, 4, -22}, // 0x7C '|' - {4077, 12, 31, 14, 0, -24}, // 0x7D '}' - {4124, 17, 4, 19, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSerifItalic18pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic18pt7bBitmaps, - (GFXglyph *)FreeSerifItalic18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 4805 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h deleted file mode 100644 index 98233a7..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h +++ /dev/null @@ -1,739 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic24pt7bBitmaps[] PROGMEM = { - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x01, 0xF0, 0x1E, 0x01, 0xE0, 0x1C, - 0x01, 0xC0, 0x3C, 0x03, 0x80, 0x38, 0x03, 0x80, 0x30, 0x07, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x04, 0x00, 0x40, 0x0C, 0x00, 0x80, 0x08, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0xF8, 0x0F, 0x80, 0xF8, 0x07, 0x00, - 0x38, 0x1D, 0xE0, 0x77, 0x83, 0xDC, 0x0E, 0x70, 0x39, 0xC1, 0xEE, 0x07, - 0x38, 0x1C, 0xC0, 0x63, 0x01, 0x8C, 0x06, 0x20, 0x10, 0x00, 0x06, 0x03, - 0x00, 0x07, 0x03, 0x80, 0x03, 0x81, 0xC0, 0x03, 0x81, 0xC0, 0x01, 0xC0, - 0xE0, 0x00, 0xE0, 0x70, 0x00, 0xE0, 0x70, 0x00, 0x70, 0x38, 0x00, 0x30, - 0x18, 0x00, 0x38, 0x1C, 0x03, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0x0E, - 0x07, 0x00, 0x06, 0x03, 0x00, 0x07, 0x03, 0x80, 0x03, 0x81, 0xC0, 0x03, - 0x81, 0xC0, 0x01, 0xC0, 0xE0, 0x00, 0xE0, 0x70, 0x1F, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFF, 0x80, 0x70, 0x38, 0x00, 0x38, 0x1C, 0x00, 0x1C, 0x0C, 0x00, - 0x1C, 0x0E, 0x00, 0x0E, 0x07, 0x00, 0x0E, 0x07, 0x00, 0x07, 0x03, 0x80, - 0x03, 0x81, 0xC0, 0x03, 0x81, 0xC0, 0x01, 0xC0, 0xE0, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0xFF, 0x80, 0x1C, 0x2F, 0x01, - 0x83, 0x3C, 0x1C, 0x18, 0xE1, 0xC0, 0xC3, 0x0E, 0x06, 0x18, 0x70, 0x60, - 0x83, 0x83, 0x04, 0x1E, 0x18, 0x00, 0xF8, 0xC0, 0x03, 0xEC, 0x00, 0x0F, - 0xE0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, - 0x00, 0x7F, 0x00, 0x03, 0x7C, 0x00, 0x19, 0xE0, 0x01, 0x87, 0x80, 0x0C, - 0x3C, 0x00, 0x60, 0xE2, 0x03, 0x07, 0x10, 0x30, 0x39, 0x81, 0x81, 0xCE, - 0x0C, 0x0C, 0x70, 0x60, 0xE3, 0xC6, 0x06, 0x0F, 0x30, 0x60, 0x1F, 0x9E, - 0x00, 0x3F, 0x80, 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, - 0x80, 0x00, 0x01, 0xF0, 0x00, 0xC0, 0x03, 0xFE, 0x01, 0xE0, 0x03, 0xC7, - 0x83, 0xE0, 0x03, 0xC0, 0x7F, 0x60, 0x03, 0xC0, 0x20, 0x70, 0x01, 0xC0, - 0x10, 0x30, 0x01, 0xE0, 0x08, 0x38, 0x00, 0xE0, 0x04, 0x18, 0x00, 0xF0, - 0x02, 0x1C, 0x00, 0x70, 0x02, 0x0C, 0x00, 0x38, 0x01, 0x0E, 0x00, 0x1C, - 0x01, 0x8E, 0x00, 0x0E, 0x00, 0x86, 0x00, 0x07, 0x00, 0x87, 0x03, 0xE1, - 0x80, 0xC3, 0x07, 0xFC, 0xE1, 0xC3, 0x87, 0xC6, 0x3F, 0x81, 0x87, 0x81, - 0x8F, 0x81, 0xC7, 0x80, 0x40, 0x00, 0xC3, 0xC0, 0x20, 0x00, 0xE3, 0xC0, - 0x10, 0x00, 0x61, 0xC0, 0x08, 0x00, 0x61, 0xE0, 0x04, 0x00, 0x70, 0xF0, - 0x06, 0x00, 0x30, 0x70, 0x02, 0x00, 0x38, 0x38, 0x03, 0x00, 0x18, 0x1C, - 0x01, 0x00, 0x1C, 0x0E, 0x01, 0x80, 0x0C, 0x07, 0x01, 0x80, 0x0E, 0x01, - 0xC3, 0x80, 0x06, 0x00, 0x7F, 0x80, 0x06, 0x00, 0x1F, 0x00, 0x07, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x71, - 0xC0, 0x00, 0x01, 0xC3, 0x80, 0x00, 0x0E, 0x0E, 0x00, 0x00, 0x38, 0x38, - 0x00, 0x01, 0xE0, 0xE0, 0x00, 0x07, 0x87, 0x00, 0x00, 0x1E, 0x18, 0x00, - 0x00, 0x78, 0xC0, 0x00, 0x01, 0xE6, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7F, - 0xC1, 0xFE, 0x03, 0x9F, 0x03, 0xE0, 0x3C, 0x3C, 0x07, 0x01, 0xE0, 0xF8, - 0x1C, 0x0F, 0x03, 0xE0, 0xE0, 0x7C, 0x07, 0x83, 0x01, 0xE0, 0x1F, 0x1C, - 0x07, 0x80, 0x7C, 0x60, 0x3E, 0x00, 0xFB, 0x00, 0xF8, 0x03, 0xFC, 0x03, - 0xE0, 0x07, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0x3F, 0x00, 0x3E, 0x00, 0x7C, - 0x00, 0xFC, 0x01, 0xF8, 0x0F, 0xF0, 0x03, 0xF0, 0xF3, 0xF0, 0x87, 0xFF, - 0x07, 0xFC, 0x07, 0xF0, 0x07, 0xC0, 0x39, 0xDE, 0xE7, 0x3B, 0x9C, 0xC6, - 0x31, 0x00, 0x00, 0x10, 0x01, 0x00, 0x18, 0x01, 0x80, 0x18, 0x01, 0x80, - 0x1C, 0x00, 0xC0, 0x0E, 0x00, 0xE0, 0x07, 0x00, 0x78, 0x03, 0x80, 0x3C, - 0x01, 0xE0, 0x0E, 0x00, 0x70, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0E, 0x00, - 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, - 0x00, 0x30, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x01, 0x80, 0x0C, 0x00, 0x60, - 0x01, 0x00, 0x0C, 0x00, 0x20, 0x00, 0x00, 0x80, 0x06, 0x00, 0x10, 0x00, - 0x80, 0x06, 0x00, 0x30, 0x00, 0xC0, 0x06, 0x00, 0x30, 0x01, 0x80, 0x0C, - 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, - 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xC0, 0x1E, 0x00, 0xF0, 0x07, - 0x80, 0x38, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x0E, 0x00, 0x60, 0x07, 0x00, - 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, 0x10, 0x01, 0x00, 0x00, 0x01, 0x00, - 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0xE1, 0x07, 0xE1, 0x0F, - 0xF1, 0x1F, 0x19, 0x30, 0x07, 0xC0, 0x03, 0x80, 0x0D, 0x60, 0x79, 0x3C, - 0xF1, 0x1F, 0xE1, 0x0F, 0xE1, 0x07, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, - 0x03, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, - 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, - 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, - 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, - 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x7C, 0xF9, - 0xF1, 0xE1, 0xC3, 0x0C, 0x10, 0xC1, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0x00, - 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x3C, - 0x00, 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, - 0xF0, 0x00, 0x07, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x3C, 0x00, - 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, - 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x3C, 0x00, 0x01, - 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, 0x00, - 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, - 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x03, 0x86, - 0x00, 0x30, 0x18, 0x03, 0x00, 0xC0, 0x38, 0x03, 0x03, 0x80, 0x18, 0x38, - 0x00, 0xC1, 0xC0, 0x07, 0x1C, 0x00, 0x38, 0xE0, 0x01, 0xCF, 0x00, 0x0E, - 0x70, 0x00, 0x77, 0x80, 0x07, 0xBC, 0x00, 0x3D, 0xE0, 0x01, 0xEE, 0x00, - 0x0F, 0xF0, 0x00, 0x77, 0x80, 0x07, 0xBC, 0x00, 0x3D, 0xC0, 0x01, 0xCE, - 0x00, 0x1E, 0x70, 0x00, 0xF3, 0x80, 0x07, 0x1C, 0x00, 0x78, 0xE0, 0x03, - 0x83, 0x00, 0x38, 0x18, 0x03, 0x80, 0xE0, 0x18, 0x03, 0x01, 0x80, 0x0C, - 0x38, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x80, 0x1F, 0xC0, 0x3F, 0xE0, - 0x01, 0xF0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x1E, - 0x00, 0x0F, 0x00, 0x07, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x1E, 0x00, - 0x0F, 0x00, 0x07, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x01, 0xE0, - 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3F, 0x01, 0xFF, - 0xF0, 0x00, 0x3F, 0x00, 0x07, 0xFE, 0x00, 0x7F, 0xF8, 0x07, 0x07, 0xE0, - 0x60, 0x1F, 0x06, 0x00, 0x7C, 0x20, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, - 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x0E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x70, - 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, - 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x01, 0x03, 0x00, 0x08, - 0x30, 0x00, 0xC3, 0xFF, 0xFC, 0x3F, 0xFF, 0xE3, 0xFF, 0xFE, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0xFF, 0xC0, 0x06, 0x0F, 0x80, 0x30, 0x1E, 0x01, 0x80, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x0E, 0x00, 0x01, - 0xF8, 0x00, 0x3F, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x0F, - 0x80, 0x00, 0x3E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, - 0x00, 0x1E, 0x00, 0x00, 0x70, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, 0x00, - 0x38, 0x00, 0x00, 0xC0, 0x70, 0x06, 0x03, 0xF8, 0x70, 0x07, 0xFF, 0x00, - 0x0F, 0xF0, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x70, 0x00, 0x03, 0xC0, - 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x37, 0x80, 0x00, - 0xDC, 0x00, 0x06, 0x70, 0x00, 0x33, 0xC0, 0x01, 0x8F, 0x00, 0x0C, 0x38, - 0x00, 0x60, 0xE0, 0x03, 0x07, 0x80, 0x18, 0x1E, 0x00, 0xC0, 0x70, 0x06, - 0x03, 0xC0, 0x30, 0x0F, 0x01, 0x80, 0x38, 0x0C, 0x00, 0xE0, 0x70, 0x07, - 0x81, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFE, 0x00, 0x0F, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, - 0x70, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0xFF, - 0xF0, 0x07, 0xFF, 0x80, 0x10, 0x00, 0x00, 0x40, 0x00, 0x02, 0x00, 0x00, - 0x08, 0x00, 0x00, 0x70, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x3F, - 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0C, 0x00, 0x00, - 0x70, 0x00, 0x01, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, - 0x70, 0x0E, 0x03, 0xF0, 0xE0, 0x07, 0xFF, 0x00, 0x0F, 0xE0, 0x00, 0x00, - 0x00, 0x0E, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x03, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, - 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x00, 0xF9, 0xF8, 0x01, 0xFF, 0xFC, - 0x07, 0xE0, 0x7C, 0x0F, 0x80, 0x7C, 0x3E, 0x00, 0x78, 0x78, 0x00, 0x78, - 0xF0, 0x00, 0xF3, 0xC0, 0x01, 0xE7, 0x80, 0x03, 0xCF, 0x00, 0x07, 0x9C, - 0x00, 0x0F, 0x38, 0x00, 0x3E, 0x70, 0x00, 0x78, 0xE0, 0x00, 0xF1, 0xC0, - 0x03, 0xC1, 0x80, 0x07, 0x83, 0x00, 0x1E, 0x03, 0x00, 0x38, 0x06, 0x01, - 0xE0, 0x03, 0x07, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xFF, 0xF9, 0xFF, 0xFF, - 0xCF, 0xFF, 0xFC, 0xE0, 0x00, 0xCC, 0x00, 0x0E, 0x40, 0x00, 0x60, 0x00, - 0x07, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x01, 0x80, - 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x07, - 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, - 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, - 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x38, - 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x03, 0x83, - 0x80, 0x1C, 0x03, 0x00, 0xE0, 0x0E, 0x07, 0x00, 0x1C, 0x1C, 0x00, 0x70, - 0x70, 0x01, 0xC1, 0xC0, 0x07, 0x07, 0x80, 0x1C, 0x1E, 0x00, 0xE0, 0x3C, - 0x07, 0x80, 0xFC, 0x38, 0x01, 0xFB, 0xC0, 0x03, 0xF8, 0x00, 0x0F, 0xE0, - 0x00, 0x7F, 0xC0, 0x07, 0x1F, 0x80, 0x78, 0x3F, 0x03, 0x80, 0x7C, 0x1E, - 0x00, 0xF8, 0x70, 0x01, 0xE3, 0x80, 0x03, 0xCE, 0x00, 0x07, 0x38, 0x00, - 0x1C, 0xE0, 0x00, 0x73, 0x80, 0x01, 0xCE, 0x00, 0x06, 0x1C, 0x00, 0x38, - 0x70, 0x01, 0xC0, 0xE0, 0x0E, 0x01, 0xE0, 0xE0, 0x01, 0xFE, 0x00, 0x00, - 0x1F, 0x80, 0x03, 0xC3, 0x00, 0x1C, 0x02, 0x00, 0xE0, 0x0C, 0x07, 0x00, - 0x18, 0x3C, 0x00, 0x60, 0xE0, 0x01, 0xC7, 0x80, 0x07, 0x1E, 0x00, 0x1C, - 0xF0, 0x00, 0x73, 0xC0, 0x01, 0xCF, 0x00, 0x07, 0x3C, 0x00, 0x3C, 0xF0, - 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x1E, 0x1E, 0x00, 0x78, 0x7C, 0x03, - 0xE0, 0xF8, 0x3F, 0x01, 0xFF, 0xBC, 0x03, 0xF1, 0xE0, 0x00, 0x0F, 0x80, - 0x00, 0x3C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x78, 0x00, - 0x0F, 0x80, 0x00, 0xE0, 0x00, 0x00, 0x07, 0x07, 0xC3, 0xE1, 0xF0, 0x70, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x38, 0x3E, 0x1F, 0x0F, 0x83, 0x80, 0x01, 0xC0, 0x7C, 0x0F, 0x81, - 0xF0, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x07, 0x80, 0xF8, 0x1F, 0x01, 0xE0, - 0x1C, 0x03, 0x00, 0xC0, 0x18, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0xC0, - 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xF8, 0x00, 0x3F, - 0xC0, 0x01, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, - 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x07, 0x00, 0x00, 0x02, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, - 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x1F, 0xE0, - 0x00, 0x7F, 0x80, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x80, 0x00, 0x00, - 0x03, 0xF0, 0x06, 0x1C, 0x0C, 0x0E, 0x1C, 0x06, 0x1C, 0x07, 0x1C, 0x07, - 0x1C, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x03, 0x00, - 0x06, 0x00, 0x04, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0xF8, 0x00, - 0xF8, 0x00, 0xF8, 0x00, 0x70, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x1F, - 0xFF, 0x80, 0x00, 0x3F, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x7C, - 0x00, 0x07, 0x80, 0x7C, 0x00, 0x00, 0xE0, 0x3C, 0x00, 0x00, 0x38, 0x3C, - 0x00, 0x00, 0x0C, 0x3C, 0x00, 0x78, 0x07, 0x1E, 0x00, 0xFE, 0xE1, 0x9E, - 0x00, 0xF1, 0xF0, 0xEF, 0x00, 0xE0, 0xF0, 0x37, 0x80, 0xE0, 0x38, 0x1F, - 0x80, 0x70, 0x1C, 0x0F, 0xC0, 0x70, 0x1E, 0x07, 0xE0, 0x38, 0x0F, 0x03, - 0xF0, 0x18, 0x07, 0x01, 0xF8, 0x1C, 0x03, 0x80, 0xFC, 0x0E, 0x01, 0xC0, - 0xDE, 0x07, 0x01, 0xE0, 0x6F, 0x03, 0x80, 0xE0, 0x73, 0xC1, 0xC0, 0xF0, - 0x31, 0xE0, 0xF0, 0xF8, 0x30, 0xF0, 0x38, 0xDC, 0x30, 0x3C, 0x1F, 0xC7, - 0xF0, 0x0E, 0x07, 0x81, 0xF0, 0x07, 0x80, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x01, 0x00, 0x03, 0xF0, - 0x0F, 0x80, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x03, 0xF0, - 0x00, 0x00, 0x37, 0x80, 0x00, 0x03, 0x3C, 0x00, 0x00, 0x19, 0xE0, 0x00, - 0x01, 0x8F, 0x80, 0x00, 0x08, 0x7C, 0x00, 0x00, 0xC3, 0xE0, 0x00, 0x0C, - 0x0F, 0x00, 0x00, 0x60, 0x78, 0x00, 0x06, 0x03, 0xC0, 0x00, 0x20, 0x1F, - 0x00, 0x03, 0x00, 0xF8, 0x00, 0x3F, 0xFF, 0xC0, 0x01, 0xFF, 0xFE, 0x00, - 0x18, 0x00, 0xF0, 0x00, 0xC0, 0x07, 0x80, 0x0C, 0x00, 0x3E, 0x00, 0xE0, - 0x01, 0xF0, 0x06, 0x00, 0x0F, 0x80, 0x70, 0x00, 0x3C, 0x03, 0x00, 0x01, - 0xE0, 0x38, 0x00, 0x0F, 0x83, 0xC0, 0x00, 0x7C, 0x3E, 0x00, 0x07, 0xF3, - 0xFC, 0x01, 0xFF, 0xE0, 0x03, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xF8, 0x00, - 0x3E, 0x07, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x3E, 0x01, 0xF0, 0x03, 0xC0, - 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x78, 0x01, 0xF0, - 0x07, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x00, 0xF0, - 0x3F, 0x00, 0x1F, 0xFF, 0x80, 0x01, 0xFF, 0xFC, 0x00, 0x1F, 0x07, 0xE0, - 0x01, 0xE0, 0x1F, 0x00, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x07, 0xC0, 0x3C, - 0x00, 0x7C, 0x03, 0xC0, 0x07, 0xC0, 0x7C, 0x00, 0x7C, 0x07, 0xC0, 0x07, - 0xC0, 0x78, 0x00, 0x7C, 0x0F, 0x80, 0x0F, 0x80, 0xF8, 0x00, 0xF8, 0x0F, - 0x00, 0x1F, 0x00, 0xF0, 0x03, 0xE0, 0x1F, 0x81, 0xFC, 0x03, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x01, 0xFE, 0x04, 0x00, 0x3F, 0xFF, - 0xE0, 0x03, 0xF0, 0x1F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0xF0, 0x00, 0x78, - 0x0F, 0x80, 0x00, 0xE0, 0x3C, 0x00, 0x03, 0x81, 0xF0, 0x00, 0x04, 0x0F, - 0x80, 0x00, 0x10, 0x7C, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0x3E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x02, 0x07, 0xC0, 0x00, 0x18, 0x0F, 0x80, - 0x00, 0xC0, 0x3E, 0x00, 0x06, 0x00, 0x7C, 0x00, 0x70, 0x00, 0xFC, 0x07, - 0x00, 0x00, 0xFF, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xFF, - 0x00, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x0F, 0xC0, 0xFC, 0x00, 0x07, 0xC0, - 0x1F, 0x00, 0x03, 0xE0, 0x07, 0xC0, 0x01, 0xE0, 0x01, 0xF0, 0x01, 0xF0, - 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0x0F, 0x00, 0x3C, - 0x00, 0x07, 0xC0, 0x3E, 0x00, 0x03, 0xE0, 0x1F, 0x00, 0x01, 0xF0, 0x0F, - 0x00, 0x00, 0xF8, 0x0F, 0x80, 0x00, 0x7C, 0x07, 0xC0, 0x00, 0x3E, 0x03, - 0xE0, 0x00, 0x1F, 0x01, 0xE0, 0x00, 0x1F, 0x81, 0xF0, 0x00, 0x0F, 0x80, - 0xF8, 0x00, 0x07, 0xC0, 0x78, 0x00, 0x03, 0xE0, 0x3C, 0x00, 0x03, 0xE0, - 0x3E, 0x00, 0x01, 0xF0, 0x1F, 0x00, 0x01, 0xF0, 0x0F, 0x00, 0x01, 0xF0, - 0x0F, 0x80, 0x01, 0xF8, 0x07, 0xC0, 0x01, 0xF0, 0x03, 0xE0, 0x01, 0xF0, - 0x01, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x0F, 0xE0, 0x01, 0xFF, 0xFF, 0xC0, - 0x03, 0xFF, 0xFE, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, - 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x00, 0x30, 0x03, 0xE0, 0x01, 0x00, - 0x1E, 0x00, 0x08, 0x01, 0xF0, 0x00, 0x40, 0x0F, 0x80, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x03, 0xC0, 0x10, 0x00, 0x3E, 0x01, 0x80, 0x01, 0xF0, 0x08, - 0x00, 0x0F, 0x01, 0xC0, 0x00, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xF0, 0x00, - 0x3E, 0x07, 0x00, 0x01, 0xE0, 0x18, 0x00, 0x1F, 0x00, 0xC0, 0x00, 0xF8, - 0x04, 0x00, 0x07, 0x80, 0x20, 0x00, 0x3C, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x08, 0x0F, 0x80, 0x00, 0xC0, - 0x7C, 0x00, 0x0E, 0x03, 0xC0, 0x00, 0xE0, 0x1E, 0x00, 0x0F, 0x01, 0xF8, - 0x03, 0xF8, 0x1F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xFC, 0x00, 0x03, 0xFF, - 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x00, - 0x30, 0x03, 0xE0, 0x01, 0x00, 0x1E, 0x00, 0x08, 0x01, 0xF0, 0x00, 0x40, - 0x0F, 0x80, 0x02, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x3E, - 0x00, 0x80, 0x01, 0xF0, 0x0C, 0x00, 0x0F, 0x00, 0xC0, 0x00, 0xF8, 0x0E, - 0x00, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x01, 0xE0, 0x18, 0x00, - 0x1F, 0x00, 0xC0, 0x00, 0xF8, 0x06, 0x00, 0x07, 0xC0, 0x20, 0x00, 0x3C, - 0x01, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xFF, - 0xC0, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x02, 0x00, 0x1F, 0xFF, 0x8C, 0x00, - 0xFC, 0x07, 0xF8, 0x03, 0xE0, 0x03, 0xF0, 0x0F, 0x00, 0x03, 0xC0, 0x3C, - 0x00, 0x03, 0x80, 0xF0, 0x00, 0x07, 0x03, 0xC0, 0x00, 0x0E, 0x0F, 0x80, - 0x00, 0x08, 0x3E, 0x00, 0x00, 0x10, 0x7C, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x03, 0xE0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x3F, - 0xFF, 0xE0, 0x00, 0x0F, 0xE7, 0xC0, 0x00, 0x0F, 0x0F, 0x80, 0x00, 0x1E, - 0x1F, 0x00, 0x00, 0x7C, 0x3E, 0x00, 0x00, 0xF0, 0x7C, 0x00, 0x01, 0xE0, - 0x78, 0x00, 0x03, 0xC0, 0xF8, 0x00, 0x0F, 0x01, 0xF0, 0x00, 0x1E, 0x01, - 0xF0, 0x00, 0x3C, 0x01, 0xE0, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x01, - 0xF8, 0x0F, 0x80, 0x00, 0xFF, 0xFC, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x03, - 0xFF, 0xE0, 0x7F, 0xF0, 0x07, 0xF8, 0x01, 0xFC, 0x00, 0x3E, 0x00, 0x0F, - 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, - 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3E, - 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, - 0x03, 0xC0, 0x01, 0xFF, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0xFF, 0x80, 0x01, - 0xE0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, - 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, - 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x03, 0xF8, 0x00, - 0xFE, 0x00, 0xFF, 0xE0, 0x7F, 0xFC, 0x00, 0x01, 0xFF, 0xC0, 0x1F, 0xE0, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0xC0, 0x01, - 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, - 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0xF8, 0x00, - 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, - 0x0F, 0xE0, 0x0F, 0xFE, 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x07, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x78, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x01, 0xC1, 0xE0, 0x07, 0xC7, - 0x80, 0x0F, 0x8F, 0x00, 0x1F, 0x3C, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x01, 0xFF, 0xE1, 0xFF, 0x80, 0x3F, 0xC0, 0x1F, 0x80, 0x0F, 0x80, - 0x0F, 0x00, 0x07, 0xC0, 0x0F, 0x00, 0x03, 0xC0, 0x0F, 0x00, 0x01, 0xE0, - 0x0E, 0x00, 0x01, 0xF0, 0x0E, 0x00, 0x00, 0xF8, 0x0E, 0x00, 0x00, 0x78, - 0x1C, 0x00, 0x00, 0x3C, 0x1C, 0x00, 0x00, 0x3E, 0x3C, 0x00, 0x00, 0x1F, - 0x38, 0x00, 0x00, 0x0F, 0x38, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x07, - 0xFE, 0x00, 0x00, 0x03, 0xDF, 0x00, 0x00, 0x01, 0xE7, 0xC0, 0x00, 0x01, - 0xF3, 0xE0, 0x00, 0x00, 0xF8, 0xF8, 0x00, 0x00, 0x78, 0x3C, 0x00, 0x00, - 0x3C, 0x1F, 0x00, 0x00, 0x3E, 0x07, 0xC0, 0x00, 0x1F, 0x03, 0xE0, 0x00, - 0x0F, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x3C, 0x00, 0x07, 0xC0, 0x1F, 0x00, - 0x03, 0xC0, 0x07, 0x80, 0x01, 0xE0, 0x03, 0xE0, 0x01, 0xF0, 0x01, 0xF8, - 0x01, 0xFC, 0x01, 0xFE, 0x03, 0xFF, 0xC3, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, - 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, - 0xF0, 0x00, 0x08, 0x3C, 0x00, 0x03, 0x0F, 0x80, 0x00, 0x41, 0xF0, 0x00, - 0x18, 0x3C, 0x00, 0x07, 0x07, 0x80, 0x01, 0xC1, 0xF8, 0x01, 0xF8, 0x7F, - 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0x00, 0x00, 0x3F, 0xC0, - 0x0F, 0xC0, 0x00, 0x1F, 0xC0, 0x01, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0xFC, - 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, - 0xFF, 0x00, 0x02, 0xF0, 0x00, 0x37, 0x80, 0x01, 0xBC, 0x00, 0x19, 0xE0, - 0x00, 0x6F, 0x80, 0x0E, 0xF8, 0x00, 0x1B, 0xE0, 0x03, 0x3E, 0x00, 0x04, - 0x78, 0x01, 0x8F, 0x00, 0x03, 0x1E, 0x00, 0xE7, 0xC0, 0x00, 0xC7, 0x80, - 0x31, 0xF0, 0x00, 0x21, 0xE0, 0x18, 0x78, 0x00, 0x18, 0x78, 0x0E, 0x1E, - 0x00, 0x06, 0x1E, 0x03, 0x0F, 0x80, 0x01, 0x87, 0x81, 0x83, 0xE0, 0x00, - 0x41, 0xF0, 0xE0, 0xF0, 0x00, 0x30, 0x7C, 0x30, 0x3C, 0x00, 0x0C, 0x0F, - 0x18, 0x1F, 0x00, 0x03, 0x03, 0xCE, 0x07, 0xC0, 0x01, 0x80, 0xF3, 0x01, - 0xE0, 0x00, 0x60, 0x3D, 0x80, 0xF8, 0x00, 0x18, 0x0F, 0xE0, 0x3E, 0x00, - 0x0C, 0x03, 0xF0, 0x0F, 0x00, 0x03, 0x00, 0xF8, 0x03, 0xC0, 0x00, 0xC0, - 0x3E, 0x01, 0xF0, 0x00, 0x70, 0x0F, 0x00, 0x7C, 0x00, 0x1C, 0x01, 0x80, - 0x3F, 0x00, 0x0F, 0x80, 0x60, 0x1F, 0xC0, 0x0F, 0xF8, 0x10, 0x1F, 0xFE, - 0x00, 0x03, 0xFC, 0x00, 0x3F, 0xE0, 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0xF8, - 0x00, 0x1C, 0x00, 0x1F, 0x00, 0x03, 0x80, 0x03, 0xF0, 0x00, 0x60, 0x00, - 0x7E, 0x00, 0x0C, 0x00, 0x0B, 0xE0, 0x03, 0x80, 0x03, 0x7C, 0x00, 0x60, - 0x00, 0x67, 0x80, 0x0C, 0x00, 0x0C, 0xF8, 0x03, 0x80, 0x03, 0x0F, 0x00, - 0x70, 0x00, 0x61, 0xF0, 0x0C, 0x00, 0x0C, 0x3E, 0x01, 0x80, 0x01, 0x83, - 0xC0, 0x70, 0x00, 0x60, 0x7C, 0x0C, 0x00, 0x0C, 0x07, 0x81, 0x80, 0x01, - 0x80, 0xF8, 0x30, 0x00, 0x60, 0x0F, 0x0E, 0x00, 0x0C, 0x01, 0xE1, 0x80, - 0x01, 0x80, 0x3E, 0x30, 0x00, 0x30, 0x03, 0xCE, 0x00, 0x0C, 0x00, 0x7D, - 0x80, 0x01, 0x80, 0x07, 0xB0, 0x00, 0x30, 0x00, 0xF6, 0x00, 0x0E, 0x00, - 0x1F, 0xC0, 0x01, 0x80, 0x01, 0xF0, 0x00, 0x30, 0x00, 0x3E, 0x00, 0x0E, - 0x00, 0x03, 0xC0, 0x01, 0xC0, 0x00, 0x70, 0x00, 0x7C, 0x00, 0x06, 0x00, - 0x3F, 0xE0, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x01, 0xF0, 0x7C, 0x00, 0x0F, 0x00, 0x78, - 0x00, 0x78, 0x00, 0xF0, 0x07, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x07, 0x81, - 0xF0, 0x00, 0x1E, 0x07, 0xC0, 0x00, 0x7C, 0x3E, 0x00, 0x01, 0xF1, 0xF0, - 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x1F, 0x3F, 0x00, 0x00, 0x7C, 0xF8, 0x00, - 0x01, 0xF7, 0xE0, 0x00, 0x0F, 0xDF, 0x00, 0x00, 0x3F, 0x7C, 0x00, 0x00, - 0xFB, 0xF0, 0x00, 0x07, 0xEF, 0xC0, 0x00, 0x1F, 0xBE, 0x00, 0x00, 0x7C, - 0xF8, 0x00, 0x03, 0xF3, 0xE0, 0x00, 0x0F, 0x8F, 0x80, 0x00, 0x3E, 0x3E, - 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x0F, 0x81, 0xE0, 0x00, 0x3E, 0x07, 0x80, - 0x01, 0xF0, 0x1F, 0x00, 0x0F, 0x80, 0x3C, 0x00, 0x7C, 0x00, 0x78, 0x03, - 0xC0, 0x00, 0xF8, 0x3E, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x0F, 0x81, 0xF8, - 0x00, 0x7C, 0x03, 0xE0, 0x03, 0xE0, 0x1F, 0x00, 0x1E, 0x00, 0x7C, 0x01, - 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0x78, 0x00, 0xF8, 0x03, 0xC0, - 0x07, 0xC0, 0x3E, 0x00, 0x3C, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x00, 0x3E, - 0x00, 0xF8, 0x03, 0xF0, 0x07, 0xC0, 0x7E, 0x00, 0x3F, 0xFF, 0xE0, 0x01, - 0xEF, 0xF8, 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x07, 0x80, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x03, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, - 0xFE, 0x00, 0x00, 0xF0, 0x7C, 0x00, 0x0F, 0x00, 0x78, 0x00, 0x78, 0x00, - 0xF0, 0x03, 0xC0, 0x03, 0xE0, 0x1E, 0x00, 0x07, 0x80, 0xF0, 0x00, 0x1E, - 0x07, 0xC0, 0x00, 0x7C, 0x3E, 0x00, 0x01, 0xF1, 0xF8, 0x00, 0x07, 0xC7, - 0xC0, 0x00, 0x1F, 0x3F, 0x00, 0x00, 0x7C, 0xF8, 0x00, 0x01, 0xF7, 0xE0, - 0x00, 0x0F, 0xDF, 0x80, 0x00, 0x3F, 0x7C, 0x00, 0x00, 0xFB, 0xF0, 0x00, - 0x03, 0xEF, 0xC0, 0x00, 0x1F, 0xBE, 0x00, 0x00, 0x7C, 0xF8, 0x00, 0x01, - 0xF3, 0xE0, 0x00, 0x0F, 0x8F, 0x80, 0x00, 0x3E, 0x3E, 0x00, 0x01, 0xF0, - 0xF8, 0x00, 0x07, 0xC3, 0xE0, 0x00, 0x3E, 0x07, 0x80, 0x01, 0xF0, 0x1F, - 0x00, 0x07, 0x80, 0x3C, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x01, 0xE0, - 0x1E, 0x00, 0x01, 0xF3, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x03, 0x00, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x04, 0x0F, 0xF0, 0x00, - 0x60, 0x7F, 0xFC, 0x07, 0x03, 0xFF, 0xFF, 0xF8, 0x38, 0x1F, 0xFF, 0x80, - 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xF8, 0x00, - 0x3E, 0x0F, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x3E, 0x01, 0xF0, 0x03, 0xC0, - 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x78, 0x01, 0xF0, - 0x07, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x00, 0xF0, - 0x1F, 0x80, 0x1F, 0xFF, 0xE0, 0x01, 0xFF, 0xF0, 0x00, 0x1E, 0x1E, 0x00, - 0x01, 0xE1, 0xE0, 0x00, 0x3E, 0x1F, 0x00, 0x03, 0xE0, 0xF0, 0x00, 0x3C, - 0x0F, 0x00, 0x03, 0xC0, 0xF8, 0x00, 0x7C, 0x07, 0x80, 0x07, 0xC0, 0x7C, - 0x00, 0x78, 0x03, 0xC0, 0x0F, 0x80, 0x3C, 0x00, 0xF8, 0x03, 0xE0, 0x0F, - 0x00, 0x1E, 0x00, 0xF0, 0x01, 0xE0, 0x1F, 0x00, 0x1F, 0x03, 0xF8, 0x00, - 0xF8, 0xFF, 0xE0, 0x0F, 0xE0, 0x00, 0x3F, 0x06, 0x01, 0xFF, 0xDC, 0x07, - 0xC1, 0xF0, 0x1E, 0x01, 0xE0, 0x3C, 0x01, 0xC0, 0xF0, 0x03, 0x81, 0xE0, - 0x03, 0x03, 0xC0, 0x04, 0x07, 0x80, 0x08, 0x0F, 0x80, 0x00, 0x1F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7C, 0x08, 0x00, 0x78, 0x10, - 0x00, 0xF0, 0x20, 0x01, 0xE0, 0xC0, 0x03, 0xC1, 0x80, 0x07, 0x83, 0x80, - 0x1E, 0x07, 0x00, 0x3C, 0x0F, 0x00, 0xF0, 0x1F, 0x87, 0xC0, 0x23, 0xFF, - 0x00, 0x81, 0xF8, 0x00, 0x3F, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFD, 0xF0, - 0x3E, 0x07, 0xB8, 0x07, 0xC0, 0x76, 0x00, 0xF8, 0x04, 0x80, 0x3E, 0x00, - 0xB0, 0x07, 0xC0, 0x14, 0x00, 0xF8, 0x02, 0x00, 0x1E, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xC0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, - 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x3F, 0xFF, 0x00, - 0x00, 0x7F, 0xFE, 0x03, 0xFE, 0x1F, 0xE0, 0x01, 0xF8, 0x1F, 0x80, 0x01, - 0xC0, 0x3E, 0x00, 0x03, 0x80, 0x7C, 0x00, 0x07, 0x00, 0xF8, 0x00, 0x0C, - 0x03, 0xE0, 0x00, 0x18, 0x07, 0xC0, 0x00, 0x70, 0x0F, 0x80, 0x00, 0xC0, - 0x1F, 0x00, 0x01, 0x80, 0x7C, 0x00, 0x03, 0x00, 0xF8, 0x00, 0x0E, 0x01, - 0xF0, 0x00, 0x18, 0x07, 0xC0, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x60, 0x1F, - 0x00, 0x01, 0x80, 0x3E, 0x00, 0x03, 0x00, 0xF8, 0x00, 0x06, 0x01, 0xF0, - 0x00, 0x18, 0x03, 0xE0, 0x00, 0x30, 0x07, 0xC0, 0x00, 0x60, 0x1F, 0x00, - 0x00, 0xC0, 0x3E, 0x00, 0x03, 0x00, 0x7C, 0x00, 0x06, 0x00, 0xF8, 0x00, - 0x18, 0x01, 0xF0, 0x00, 0x30, 0x03, 0xE0, 0x00, 0xC0, 0x03, 0xE0, 0x03, - 0x80, 0x03, 0xE0, 0x0E, 0x00, 0x03, 0xF0, 0x78, 0x00, 0x03, 0xFF, 0xC0, - 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0xE0, 0x0F, 0xF9, 0xFC, 0x00, 0x1F, - 0x07, 0xC0, 0x00, 0x78, 0x3E, 0x00, 0x03, 0x81, 0xF0, 0x00, 0x18, 0x0F, - 0x80, 0x01, 0xC0, 0x7C, 0x00, 0x0C, 0x01, 0xE0, 0x00, 0xC0, 0x0F, 0x80, - 0x06, 0x00, 0x7C, 0x00, 0x60, 0x03, 0xE0, 0x07, 0x00, 0x1F, 0x00, 0x30, - 0x00, 0xF8, 0x03, 0x00, 0x03, 0xC0, 0x18, 0x00, 0x1E, 0x01, 0x80, 0x00, - 0xF8, 0x1C, 0x00, 0x07, 0xC0, 0xC0, 0x00, 0x3E, 0x0C, 0x00, 0x01, 0xF0, - 0x60, 0x00, 0x07, 0x86, 0x00, 0x00, 0x3C, 0x30, 0x00, 0x01, 0xE3, 0x00, - 0x00, 0x0F, 0xB0, 0x00, 0x00, 0x7D, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x10, 0x00, - 0x00, 0xFF, 0xE3, 0xFF, 0x81, 0xFE, 0x7F, 0x01, 0xFC, 0x00, 0xF8, 0x7C, - 0x01, 0xF0, 0x00, 0xE0, 0xF8, 0x03, 0xE0, 0x01, 0x81, 0xF0, 0x03, 0xC0, - 0x07, 0x03, 0xE0, 0x07, 0x80, 0x0C, 0x03, 0xC0, 0x0F, 0x00, 0x18, 0x07, - 0x80, 0x1E, 0x00, 0x60, 0x0F, 0x00, 0x7E, 0x00, 0xC0, 0x1F, 0x00, 0xFC, - 0x03, 0x00, 0x3E, 0x03, 0xF8, 0x06, 0x00, 0x7C, 0x05, 0xF0, 0x18, 0x00, - 0xF8, 0x1B, 0xE0, 0x30, 0x01, 0xF0, 0x33, 0xC0, 0xC0, 0x01, 0xE0, 0xC7, - 0x83, 0x80, 0x03, 0xC1, 0x8F, 0x06, 0x00, 0x07, 0x86, 0x1E, 0x1C, 0x00, - 0x0F, 0x0C, 0x3C, 0x30, 0x00, 0x1F, 0x30, 0x7C, 0xE0, 0x00, 0x3E, 0x60, - 0xF9, 0x80, 0x00, 0x7D, 0x81, 0xF7, 0x00, 0x00, 0xFB, 0x03, 0xEC, 0x00, - 0x01, 0xFC, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x07, 0xE0, 0x00, 0x03, 0xE0, - 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x1F, 0x00, 0x00, 0x0F, 0x00, 0x3C, 0x00, - 0x00, 0x1E, 0x00, 0x78, 0x00, 0x00, 0x38, 0x00, 0xE0, 0x00, 0x00, 0x70, - 0x01, 0xC0, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x80, 0x06, 0x00, - 0x00, 0x07, 0xFF, 0x83, 0xFF, 0x01, 0xFE, 0x00, 0xFE, 0x00, 0x7C, 0x00, - 0x78, 0x00, 0x7C, 0x00, 0x70, 0x00, 0x3C, 0x00, 0xE0, 0x00, 0x3E, 0x01, - 0xC0, 0x00, 0x3E, 0x01, 0x80, 0x00, 0x1F, 0x03, 0x00, 0x00, 0x1F, 0x07, - 0x00, 0x00, 0x0F, 0x0E, 0x00, 0x00, 0x0F, 0x9C, 0x00, 0x00, 0x0F, 0xB8, - 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x03, 0xC0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x1C, 0xF0, 0x00, 0x00, 0x38, 0xF8, - 0x00, 0x00, 0x30, 0xF8, 0x00, 0x00, 0x60, 0x7C, 0x00, 0x00, 0xC0, 0x7C, - 0x00, 0x01, 0xC0, 0x3C, 0x00, 0x03, 0x80, 0x3E, 0x00, 0x07, 0x00, 0x3E, - 0x00, 0x0E, 0x00, 0x1F, 0x00, 0x1E, 0x00, 0x1F, 0x00, 0x7F, 0x00, 0x3F, - 0xC0, 0xFF, 0xC1, 0xFF, 0xF0, 0x7F, 0xF0, 0x7F, 0xC7, 0xF0, 0x03, 0xE0, - 0xF8, 0x00, 0x70, 0x3E, 0x00, 0x38, 0x07, 0x80, 0x0C, 0x01, 0xE0, 0x07, - 0x00, 0x7C, 0x03, 0x80, 0x1F, 0x00, 0xC0, 0x03, 0xC0, 0x60, 0x00, 0xF0, - 0x30, 0x00, 0x3E, 0x1C, 0x00, 0x07, 0x8E, 0x00, 0x01, 0xE3, 0x00, 0x00, - 0x7D, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x03, 0xFF, - 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0x81, 0xF0, 0x00, 0xFC, 0x0E, 0x00, 0x0F, - 0xC0, 0x60, 0x00, 0xFC, 0x06, 0x00, 0x0F, 0xC0, 0x20, 0x00, 0x7C, 0x00, - 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF0, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x01, 0xF8, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0xFC, 0x00, - 0x08, 0x0F, 0xC0, 0x00, 0x80, 0xFC, 0x00, 0x0C, 0x07, 0xC0, 0x00, 0x60, - 0x7E, 0x00, 0x07, 0x07, 0xE0, 0x01, 0xF0, 0x7F, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x3C, 0x00, 0x1C, 0x00, 0x0E, 0x00, - 0x07, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x03, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, - 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x07, 0x00, - 0x03, 0x80, 0x01, 0xC0, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x07, 0x80, 0x03, - 0xFC, 0x00, 0xF0, 0x00, 0x38, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, 0x80, - 0x01, 0xE0, 0x00, 0x70, 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, - 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x03, 0x80, - 0x01, 0xC0, 0x00, 0xF0, 0x00, 0x38, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, - 0x80, 0x01, 0xE0, 0x00, 0x70, 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x07, 0x00, - 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, - 0x80, 0x00, 0xFF, 0x80, 0x07, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0xF0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x00, 0x70, 0x00, - 0x38, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, - 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x78, 0x00, 0x38, - 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, - 0xC0, 0x00, 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, 0x38, 0x03, 0xFC, 0x00, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x03, 0xBC, - 0x00, 0x39, 0xC0, 0x07, 0x1E, 0x00, 0x70, 0xE0, 0x0E, 0x0F, 0x00, 0xE0, - 0x70, 0x1E, 0x07, 0x81, 0xC0, 0x38, 0x3C, 0x03, 0xC3, 0x80, 0x1C, 0x78, - 0x01, 0xE7, 0x00, 0x0E, 0xF0, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x60, 0xF0, 0xF8, 0x78, 0x3C, 0x1E, 0x0E, 0x07, 0x00, 0x1E, 0x70, - 0x03, 0x0B, 0x80, 0x70, 0x3C, 0x07, 0x01, 0xE0, 0x70, 0x0E, 0x07, 0x00, - 0x70, 0x78, 0x03, 0x83, 0x80, 0x38, 0x3C, 0x01, 0xC1, 0xC0, 0x0E, 0x1E, - 0x00, 0xF0, 0xF0, 0x07, 0x0F, 0x00, 0x78, 0x78, 0x03, 0xC3, 0xC0, 0x3E, - 0x1E, 0x01, 0x70, 0xF0, 0x17, 0x0F, 0x81, 0x38, 0xBE, 0x11, 0xC8, 0xFF, - 0x0F, 0x83, 0xF0, 0x70, 0x00, 0x00, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x78, 0x00, 0x03, 0x80, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x0F, - 0x80, 0x71, 0xFE, 0x03, 0x98, 0xF8, 0x3D, 0x03, 0xE1, 0xE8, 0x0F, 0x0E, - 0x80, 0x78, 0x78, 0x03, 0xC7, 0xC0, 0x1E, 0x3C, 0x00, 0xF1, 0xE0, 0x0F, - 0x1E, 0x00, 0x78, 0xF0, 0x03, 0xC7, 0x80, 0x3C, 0x38, 0x01, 0xE3, 0xC0, - 0x1E, 0x1E, 0x00, 0xE0, 0xE0, 0x0E, 0x07, 0x00, 0xF0, 0x78, 0x07, 0x03, - 0xC0, 0xE0, 0x0F, 0x0E, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x3F, 0x00, 0x38, - 0x60, 0x38, 0x1C, 0x1C, 0x0F, 0x0E, 0x03, 0x87, 0x80, 0x03, 0xC0, 0x00, - 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x02, 0x3E, 0x01, - 0x87, 0x80, 0xC1, 0xF0, 0x60, 0x3F, 0xF0, 0x03, 0xF0, 0x00, 0x00, 0x00, - 0x0E, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x1C, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x38, 0x00, 0x00, 0x38, 0x00, 0x00, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x71, - 0x70, 0x00, 0xC1, 0x70, 0x03, 0x80, 0xF0, 0x07, 0x80, 0xE0, 0x07, 0x01, - 0xE0, 0x0E, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x3C, 0x01, 0xC0, 0x3C, 0x01, - 0xC0, 0x78, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0x78, 0x03, 0x80, 0xF0, 0x07, - 0x80, 0xF0, 0x07, 0x80, 0xF0, 0x0F, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x17, - 0x08, 0xF0, 0x27, 0x10, 0x78, 0x47, 0x20, 0x7F, 0x87, 0xC0, 0x1E, 0x07, - 0x00, 0x00, 0x1F, 0x00, 0x1C, 0xF0, 0x1C, 0x1C, 0x0E, 0x07, 0x07, 0x01, - 0xC3, 0xC0, 0xF1, 0xE0, 0x38, 0x70, 0x1C, 0x3C, 0x0E, 0x1F, 0x0F, 0x07, - 0x8F, 0x01, 0xFE, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x01, 0x3C, 0x00, 0xC7, 0x80, 0x61, 0xF0, 0x60, 0x3F, 0xF0, - 0x03, 0xE0, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x03, 0x1C, 0x00, 0x00, - 0xC3, 0x80, 0x00, 0x38, 0x70, 0x00, 0x06, 0x00, 0x00, 0x01, 0xC0, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x07, 0xFF, 0xC0, 0x00, - 0xFF, 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x38, 0x00, 0x00, 0x07, 0x00, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, - 0xE0, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x70, 0x00, 0x00, 0x0E, 0x00, 0x00, - 0x03, 0xC0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, - 0x00, 0x00, 0x70, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0x80, 0x00, 0x38, - 0x60, 0x00, 0x07, 0x0C, 0x00, 0x00, 0xE3, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0x00, 0x3F, 0x00, 0x07, 0x0E, 0x00, 0x70, 0x3E, 0x07, 0x01, 0xF0, - 0x70, 0x0E, 0x07, 0x80, 0x70, 0x3C, 0x03, 0x81, 0xC0, 0x1C, 0x0E, 0x01, - 0xE0, 0x70, 0x0E, 0x03, 0x80, 0xF0, 0x0E, 0x0F, 0x00, 0x30, 0xE0, 0x00, - 0xFE, 0x00, 0x0C, 0x00, 0x00, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x7E, 0x00, - 0x03, 0xFE, 0x00, 0x0F, 0xFC, 0x00, 0x8F, 0xF0, 0x18, 0x0F, 0xC1, 0x80, - 0x1F, 0x18, 0x00, 0x78, 0xC0, 0x01, 0xC6, 0x00, 0x0E, 0x30, 0x00, 0x61, - 0xC0, 0x07, 0x06, 0x00, 0x70, 0x1C, 0x0E, 0x00, 0x3F, 0xC0, 0x00, 0x00, - 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1C, - 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x03, 0x80, 0x78, 0x7E, 0x03, 0x86, 0x70, - 0x3C, 0x43, 0x81, 0xE4, 0x1C, 0x0E, 0x40, 0xE0, 0x74, 0x0E, 0x07, 0xA0, - 0x70, 0x3E, 0x03, 0x81, 0xE0, 0x1C, 0x0F, 0x00, 0xE0, 0xF0, 0x0E, 0x07, - 0x80, 0x70, 0x38, 0x03, 0x81, 0xC0, 0x1C, 0x1E, 0x00, 0xC2, 0xF0, 0x0E, - 0x27, 0x00, 0x73, 0x38, 0x03, 0x93, 0xC0, 0x1F, 0x1E, 0x00, 0xE0, 0x03, - 0x81, 0xF0, 0x7C, 0x1F, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x71, 0xFC, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x1C, 0x07, 0x03, 0xC0, 0xF0, - 0x38, 0x0E, 0x07, 0x81, 0xE0, 0x70, 0x1C, 0x0F, 0x03, 0x84, 0xE2, 0x39, - 0x0F, 0x81, 0xC0, 0x00, 0x01, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, - 0xF0, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x3F, 0xC0, 0x00, 0xF0, 0x00, 0x1E, - 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0E, 0x00, 0x03, 0xC0, 0x00, 0x78, - 0x00, 0x0F, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x0F, 0x00, 0x01, 0xE0, - 0x00, 0x38, 0x00, 0x07, 0x00, 0x01, 0xE0, 0x00, 0x38, 0x00, 0x07, 0x00, - 0x00, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, - 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x01, 0xC7, 0x00, 0x38, 0xC0, 0x07, - 0x30, 0x00, 0x7C, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, - 0x00, 0x70, 0xFF, 0x83, 0x80, 0xF0, 0x3C, 0x06, 0x01, 0xE0, 0x60, 0x0E, - 0x06, 0x00, 0x70, 0xE0, 0x07, 0x8C, 0x00, 0x3C, 0xC0, 0x01, 0xCC, 0x00, - 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x07, 0x9E, 0x00, 0x38, 0xF0, 0x01, 0xC3, - 0x80, 0x1E, 0x1E, 0x00, 0xF0, 0x70, 0x07, 0x03, 0xC2, 0x78, 0x0E, 0x13, - 0xC0, 0x79, 0x1E, 0x01, 0xF0, 0x00, 0x07, 0x00, 0x00, 0xE1, 0xFC, 0x0F, - 0x80, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1C, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x70, 0x1E, 0x03, 0xC0, 0x78, 0x0E, 0x03, - 0xC0, 0x78, 0x0E, 0x01, 0xC0, 0x78, 0x0F, 0x01, 0xC0, 0x38, 0x4F, 0x11, - 0xE4, 0x39, 0x07, 0xC0, 0x70, 0x00, 0x07, 0x81, 0xC0, 0x78, 0xFE, 0x0F, - 0xC1, 0xF8, 0x3C, 0x33, 0x84, 0x70, 0x78, 0x87, 0x10, 0xE0, 0xF2, 0x0E, - 0x41, 0xC1, 0xC8, 0x39, 0x07, 0x87, 0xA0, 0x74, 0x0F, 0x0F, 0x40, 0xE8, - 0x1E, 0x1F, 0x01, 0xE0, 0x38, 0x3C, 0x07, 0xC0, 0xF0, 0xF8, 0x0F, 0x01, - 0xE1, 0xE0, 0x1E, 0x03, 0xC3, 0xC0, 0x38, 0x07, 0x07, 0x00, 0xF0, 0x1E, - 0x1E, 0x01, 0xE0, 0x3C, 0x3C, 0x03, 0x80, 0x79, 0x70, 0x07, 0x00, 0xE2, - 0xE0, 0x1E, 0x03, 0x8B, 0xC0, 0x3C, 0x07, 0x27, 0x80, 0x70, 0x0F, 0x8E, - 0x00, 0xE0, 0x1E, 0x00, 0x07, 0x81, 0xE3, 0xFC, 0x3F, 0x83, 0xC2, 0x3C, - 0x1E, 0x21, 0xE0, 0xF2, 0x0F, 0x07, 0x20, 0x70, 0x39, 0x07, 0x83, 0xD0, - 0x3C, 0x1F, 0x01, 0xE0, 0xE8, 0x0E, 0x0F, 0x80, 0xF0, 0x78, 0x07, 0x83, - 0xC0, 0x38, 0x1C, 0x01, 0xC1, 0xE0, 0x1E, 0x0F, 0x00, 0xF1, 0x70, 0x07, - 0x0B, 0x80, 0x38, 0xBC, 0x01, 0xC9, 0xE0, 0x0F, 0x8E, 0x00, 0x38, 0x00, - 0x00, 0x1F, 0x80, 0x07, 0x8F, 0x00, 0x70, 0x3C, 0x07, 0x00, 0xE0, 0x70, - 0x07, 0x87, 0x80, 0x3C, 0x78, 0x01, 0xE7, 0x80, 0x0F, 0x3C, 0x00, 0x7B, - 0xC0, 0x03, 0xDE, 0x00, 0x3D, 0xF0, 0x01, 0xEF, 0x80, 0x0F, 0x78, 0x00, - 0xF3, 0xC0, 0x07, 0x9E, 0x00, 0x78, 0xF0, 0x03, 0x87, 0x80, 0x38, 0x1C, - 0x03, 0x80, 0xF0, 0x38, 0x03, 0xC3, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x3C, - 0x3F, 0x00, 0x7F, 0x8F, 0xF0, 0x01, 0xF7, 0x3F, 0x00, 0x1D, 0x83, 0xF0, - 0x07, 0xA0, 0x3E, 0x00, 0xF8, 0x07, 0xC0, 0x1E, 0x00, 0xF8, 0x03, 0xC0, - 0x1F, 0x00, 0xF0, 0x03, 0xE0, 0x1E, 0x00, 0x7C, 0x03, 0xC0, 0x1F, 0x00, - 0x70, 0x03, 0xE0, 0x1E, 0x00, 0x78, 0x03, 0xC0, 0x1F, 0x00, 0x70, 0x03, - 0xC0, 0x0E, 0x00, 0xF8, 0x03, 0xC0, 0x1E, 0x00, 0x78, 0x07, 0x80, 0x0F, - 0x01, 0xE0, 0x01, 0xE0, 0x70, 0x00, 0x7C, 0x3C, 0x00, 0x0F, 0x7C, 0x00, - 0x01, 0xC0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x38, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x03, 0x8D, - 0xC0, 0x38, 0x2E, 0x07, 0x80, 0xF0, 0x78, 0x07, 0x03, 0x80, 0x38, 0x38, - 0x03, 0xC3, 0xC0, 0x1E, 0x3C, 0x00, 0xE1, 0xE0, 0x07, 0x1E, 0x00, 0x78, - 0xF0, 0x03, 0x87, 0x80, 0x3C, 0x78, 0x01, 0xE3, 0xC0, 0x1F, 0x1E, 0x01, - 0x70, 0xF0, 0x17, 0x87, 0x80, 0xBC, 0x3C, 0x09, 0xC0, 0xF1, 0x8E, 0x07, - 0xF8, 0xF0, 0x1F, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x1E, - 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, - 0x3E, 0x00, 0x0F, 0xFE, 0x00, 0x07, 0x87, 0x3F, 0x87, 0xC3, 0xC7, 0xE1, - 0xE6, 0xF0, 0xF6, 0x00, 0x72, 0x00, 0x3A, 0x00, 0x1D, 0x00, 0x1F, 0x00, - 0x0E, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0F, - 0x00, 0x00, 0x01, 0xF8, 0x81, 0x87, 0xC1, 0x80, 0xE1, 0xC0, 0x60, 0xE0, - 0x10, 0x70, 0x08, 0x3C, 0x04, 0x1F, 0x00, 0x07, 0xC0, 0x03, 0xE0, 0x00, - 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC1, 0x01, 0xE0, 0x80, 0x70, - 0x40, 0x38, 0x30, 0x1C, 0x38, 0x0C, 0x1C, 0x0E, 0x0F, 0x0E, 0x04, 0x7C, - 0x00, 0x00, 0xC0, 0x18, 0x03, 0x80, 0x78, 0x1F, 0x03, 0xFF, 0x7F, 0xF0, - 0xF0, 0x0E, 0x00, 0xE0, 0x1E, 0x01, 0xE0, 0x1C, 0x01, 0xC0, 0x3C, 0x03, - 0xC0, 0x38, 0x03, 0x80, 0x78, 0x07, 0x80, 0x70, 0x8F, 0x10, 0xF1, 0x0F, - 0x20, 0xFC, 0x07, 0x80, 0x00, 0x00, 0x00, 0xF0, 0x0E, 0x7F, 0x00, 0xE0, - 0xF0, 0x1E, 0x0E, 0x01, 0xE1, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, 0xE0, 0x3C, - 0x1C, 0x07, 0xC3, 0xC0, 0x78, 0x3C, 0x0F, 0x83, 0xC0, 0xB8, 0x38, 0x1F, - 0x87, 0x83, 0x70, 0x78, 0x27, 0x07, 0x86, 0x70, 0x70, 0xC7, 0x1F, 0x08, - 0xE1, 0xE1, 0x0E, 0x2E, 0x60, 0xE4, 0xFC, 0x0F, 0x87, 0x00, 0x70, 0x1C, - 0x03, 0xBF, 0x00, 0xF1, 0xE0, 0x3C, 0x78, 0x07, 0x1E, 0x00, 0xC3, 0x80, - 0x30, 0xE0, 0x08, 0x38, 0x06, 0x0E, 0x01, 0x03, 0x80, 0xC0, 0xF0, 0x20, - 0x3C, 0x10, 0x07, 0x04, 0x01, 0xC2, 0x00, 0x71, 0x00, 0x1C, 0xC0, 0x07, - 0x60, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x06, 0x00, 0x01, 0x00, - 0x00, 0x0C, 0x00, 0x40, 0x3B, 0xF8, 0x01, 0x00, 0xF1, 0xE0, 0x0C, 0x03, - 0xC3, 0x80, 0x78, 0x07, 0x0E, 0x01, 0xE0, 0x0C, 0x38, 0x0F, 0x80, 0x20, - 0xE0, 0x6E, 0x00, 0x83, 0x81, 0x38, 0x04, 0x0F, 0x0C, 0xE0, 0x10, 0x1C, - 0x23, 0x80, 0x80, 0x71, 0x8E, 0x06, 0x01, 0xCC, 0x38, 0x10, 0x07, 0x20, - 0xE0, 0x80, 0x1D, 0x83, 0x86, 0x00, 0x7C, 0x07, 0x30, 0x01, 0xF0, 0x1C, - 0x80, 0x07, 0x80, 0x74, 0x00, 0x1E, 0x01, 0xF0, 0x00, 0x70, 0x07, 0x80, - 0x01, 0xC0, 0x1C, 0x00, 0x06, 0x00, 0x60, 0x00, 0x10, 0x01, 0x00, 0x00, - 0x00, 0xE0, 0x38, 0x1F, 0x81, 0xF0, 0x8F, 0x09, 0x80, 0x3C, 0x40, 0x00, - 0x72, 0x00, 0x01, 0xD0, 0x00, 0x07, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x38, - 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x7C, 0x00, - 0x01, 0x70, 0x00, 0x09, 0xC0, 0x00, 0x67, 0x00, 0x01, 0x1E, 0x10, 0x08, - 0x38, 0x40, 0x40, 0xE2, 0x39, 0x03, 0xD0, 0xF8, 0x0F, 0x83, 0xC0, 0x1C, - 0x00, 0x07, 0x80, 0x33, 0xFC, 0x03, 0xC1, 0xE0, 0x1E, 0x07, 0x80, 0x70, - 0x3C, 0x01, 0x80, 0xE0, 0x0C, 0x07, 0x80, 0x40, 0x3C, 0x02, 0x00, 0xE0, - 0x20, 0x07, 0x81, 0x00, 0x3C, 0x18, 0x01, 0xE0, 0x80, 0x07, 0x0C, 0x00, - 0x38, 0x40, 0x01, 0xE4, 0x00, 0x0F, 0x60, 0x00, 0x3A, 0x00, 0x01, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x18, 0x00, 0x00, - 0x80, 0x00, 0x0C, 0x00, 0x00, 0x40, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, - 0x04, 0x00, 0x0E, 0x40, 0x00, 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, - 0xFF, 0x87, 0xFF, 0x82, 0x00, 0x83, 0x00, 0xC1, 0x00, 0xC0, 0x00, 0xC0, - 0x00, 0xC0, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x20, - 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x18, 0x00, 0x1E, - 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0xE8, 0xFC, 0x70, 0x1E, 0x38, 0x03, 0x88, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x0F, - 0x00, 0x07, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0x70, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0xC0, 0x00, 0x80, - 0x00, 0x60, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0F, 0x00, 0x07, - 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, - 0x38, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x01, 0x80, - 0x00, 0x70, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x18, 0x00, 0x0E, 0x00, 0x06, 0x00, 0x07, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0E, - 0x00, 0x0E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x3C, - 0x00, 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x18, 0x00, 0x08, 0x00, 0x1C, - 0x00, 0x7E, 0x00, 0x78, 0x00, 0xF0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xE0, - 0x01, 0xC0, 0x01, 0xC0, 0x03, 0xC0, 0x03, 0x80, 0x03, 0x80, 0x07, 0x80, - 0x07, 0x80, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x1C, 0x00, - 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFF, 0x80, 0xC7, 0xFF, 0x87, 0xBC, 0x3F, - 0xFE, 0x60, 0x3F, 0xF0, 0x00, 0x1F, 0x00}; - -const GFXglyph FreeSerifItalic24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 12, 32, 16, 2, -30}, // 0x21 '!' - {48, 14, 12, 16, 6, -31}, // 0x22 '"' - {69, 25, 31, 23, 0, -30}, // 0x23 '#' - {166, 21, 38, 24, 2, -33}, // 0x24 '$' - {266, 33, 32, 39, 4, -30}, // 0x25 '%' - {398, 30, 33, 37, 4, -31}, // 0x26 '&' - {522, 5, 12, 9, 6, -31}, // 0x27 ''' - {530, 13, 39, 16, 2, -30}, // 0x28 '(' - {594, 13, 39, 16, 0, -30}, // 0x29 ')' - {658, 16, 20, 23, 7, -31}, // 0x2A '*' - {698, 23, 23, 32, 4, -22}, // 0x2B '+' - {765, 7, 11, 12, -1, -4}, // 0x2C ',' - {775, 11, 3, 16, 2, -11}, // 0x2D '-' - {780, 5, 5, 12, 1, -3}, // 0x2E '.' - {784, 21, 33, 14, 0, -31}, // 0x2F '/' - {871, 21, 31, 23, 2, -30}, // 0x30 '0' - {953, 17, 32, 23, 2, -31}, // 0x31 '1' - {1021, 21, 31, 24, 0, -30}, // 0x32 '2' - {1103, 22, 32, 23, 0, -31}, // 0x33 '3' - {1191, 22, 32, 23, 0, -31}, // 0x34 '4' - {1279, 22, 32, 24, 0, -31}, // 0x35 '5' - {1367, 23, 32, 23, 1, -31}, // 0x36 '6' - {1459, 21, 32, 23, 4, -31}, // 0x37 '7' - {1543, 22, 32, 23, 1, -31}, // 0x38 '8' - {1631, 22, 33, 23, 1, -31}, // 0x39 '9' - {1722, 9, 22, 12, 2, -20}, // 0x3A ':' - {1747, 11, 27, 12, 1, -20}, // 0x3B ';' - {1785, 23, 25, 27, 3, -24}, // 0x3C '<' - {1857, 24, 12, 31, 4, -17}, // 0x3D '=' - {1893, 24, 25, 27, 3, -24}, // 0x3E '>' - {1968, 16, 33, 21, 6, -31}, // 0x3F '?' - {2034, 33, 33, 37, 3, -31}, // 0x40 '@' - {2171, 29, 31, 31, 0, -30}, // 0x41 'A' - {2284, 28, 31, 28, 0, -30}, // 0x42 'B' - {2393, 30, 33, 29, 2, -31}, // 0x43 'C' - {2517, 33, 31, 33, 0, -30}, // 0x44 'D' - {2645, 29, 31, 27, 0, -30}, // 0x45 'E' - {2758, 29, 31, 27, 0, -30}, // 0x46 'F' - {2871, 31, 33, 32, 2, -31}, // 0x47 'G' - {2999, 36, 31, 33, 0, -30}, // 0x48 'H' - {3139, 18, 31, 15, 0, -30}, // 0x49 'I' - {3209, 23, 32, 20, 0, -30}, // 0x4A 'J' - {3301, 33, 31, 30, 0, -30}, // 0x4B 'K' - {3429, 27, 31, 27, 0, -30}, // 0x4C 'L' - {3534, 42, 31, 39, 0, -30}, // 0x4D 'M' - {3697, 35, 32, 32, 0, -30}, // 0x4E 'N' - {3837, 30, 33, 31, 2, -31}, // 0x4F 'O' - {3961, 29, 31, 27, 0, -30}, // 0x50 'P' - {4074, 30, 41, 31, 2, -31}, // 0x51 'Q' - {4228, 28, 31, 29, 0, -30}, // 0x52 'R' - {4337, 23, 33, 21, 0, -31}, // 0x53 'S' - {4432, 27, 31, 28, 4, -30}, // 0x54 'T' - {4537, 31, 32, 33, 5, -30}, // 0x55 'U' - {4661, 29, 32, 31, 6, -30}, // 0x56 'V' - {4777, 39, 32, 42, 6, -30}, // 0x57 'W' - {4933, 32, 31, 31, 0, -30}, // 0x58 'X' - {5057, 26, 31, 28, 5, -30}, // 0x59 'Y' - {5158, 29, 31, 26, 0, -30}, // 0x5A 'Z' - {5271, 17, 39, 18, 1, -31}, // 0x5B '[' - {5354, 17, 33, 23, 5, -31}, // 0x5C '\' - {5425, 17, 39, 18, 1, -31}, // 0x5D ']' - {5508, 20, 17, 20, 0, -31}, // 0x5E '^' - {5551, 24, 2, 23, 0, 5}, // 0x5F '_' - {5557, 8, 8, 12, 6, -31}, // 0x60 '`' - {5565, 21, 21, 23, 1, -20}, // 0x61 'a' - {5621, 21, 33, 22, 1, -31}, // 0x62 'b' - {5708, 18, 22, 19, 1, -20}, // 0x63 'c' - {5758, 24, 33, 23, 1, -31}, // 0x64 'd' - {5857, 18, 22, 19, 1, -20}, // 0x65 'e' - {5907, 27, 42, 20, -4, -31}, // 0x66 'f' - {6049, 21, 31, 21, -1, -20}, // 0x67 'g' - {6131, 21, 32, 23, 1, -31}, // 0x68 'h' - {6215, 10, 32, 12, 2, -30}, // 0x69 'i' - {6255, 19, 41, 13, -3, -30}, // 0x6A 'j' - {6353, 21, 33, 21, 1, -31}, // 0x6B 'k' - {6440, 11, 33, 12, 2, -31}, // 0x6C 'l' - {6486, 31, 21, 34, 1, -20}, // 0x6D 'm' - {6568, 21, 21, 23, 1, -20}, // 0x6E 'n' - {6624, 21, 22, 22, 1, -20}, // 0x6F 'o' - {6682, 27, 31, 22, -4, -20}, // 0x70 'p' - {6787, 21, 31, 23, 1, -20}, // 0x71 'q' - {6869, 17, 21, 17, 1, -20}, // 0x72 'r' - {6914, 17, 22, 16, 0, -20}, // 0x73 's' - {6961, 12, 26, 11, 1, -24}, // 0x74 't' - {7000, 20, 22, 23, 1, -20}, // 0x75 'u' - {7055, 18, 22, 21, 3, -20}, // 0x76 'v' - {7105, 30, 22, 32, 2, -20}, // 0x77 'w' - {7188, 22, 22, 20, -1, -20}, // 0x78 'x' - {7249, 21, 31, 22, 1, -20}, // 0x79 'y' - {7331, 17, 24, 18, 0, -19}, // 0x7A 'z' - {7382, 17, 40, 19, 2, -31}, // 0x7B '{' - {7467, 3, 33, 13, 5, -31}, // 0x7C '|' - {7480, 16, 41, 19, 0, -32}, // 0x7D '}' - {7562, 22, 6, 25, 2, -14}}; // 0x7E '~' - -const GFXfont FreeSerifItalic24pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic24pt7bBitmaps, - (GFXglyph *)FreeSerifItalic24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 8251 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h deleted file mode 100644 index be4ad05..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h +++ /dev/null @@ -1,204 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic9pt7bBitmaps[] PROGMEM = { - 0x11, 0x12, 0x22, 0x24, 0x40, 0x0C, 0xDE, 0xE5, 0x40, 0x04, 0x82, 0x20, - 0x98, 0x24, 0x7F, 0xC4, 0x82, 0x23, 0xFC, 0x24, 0x11, 0x04, 0x83, 0x20, - 0x1C, 0x1B, 0x99, 0x4D, 0x26, 0x81, 0xC0, 0x70, 0x1C, 0x13, 0x49, 0xA4, - 0xDA, 0xC7, 0xC1, 0x00, 0x80, 0x1C, 0x61, 0xCF, 0x0E, 0x28, 0x30, 0xA0, - 0xC5, 0x03, 0x34, 0xE7, 0xAE, 0x40, 0xB1, 0x05, 0x84, 0x26, 0x20, 0x99, - 0x84, 0x3C, 0x03, 0x80, 0x6C, 0x06, 0xC0, 0x78, 0x06, 0x01, 0xEF, 0x66, - 0x24, 0x24, 0xC3, 0x8C, 0x10, 0xE3, 0x87, 0xCE, 0xFA, 0x08, 0x21, 0x08, - 0x61, 0x8C, 0x30, 0xC3, 0x0C, 0x30, 0x41, 0x02, 0x00, 0x10, 0x40, 0x82, - 0x0C, 0x30, 0xC3, 0x0C, 0x61, 0x84, 0x21, 0x08, 0x00, 0x30, 0xCA, 0x5E, - 0x6A, 0x93, 0x08, 0x08, 0x04, 0x02, 0x01, 0x0F, 0xF8, 0x40, 0x20, 0x10, - 0x08, 0x00, 0x56, 0xF0, 0xF0, 0x03, 0x02, 0x06, 0x04, 0x08, 0x08, 0x10, - 0x30, 0x20, 0x60, 0x40, 0xC0, 0x0E, 0x0C, 0x8C, 0x6C, 0x36, 0x1F, 0x0F, - 0x07, 0x87, 0xC3, 0x61, 0xB1, 0x88, 0x83, 0x80, 0x04, 0x70, 0xC3, 0x08, - 0x21, 0x86, 0x10, 0x43, 0x08, 0xF8, 0x1C, 0x67, 0x83, 0x03, 0x02, 0x06, - 0x0C, 0x08, 0x10, 0x20, 0x42, 0xFC, 0x0F, 0x08, 0xC0, 0x60, 0xC1, 0xE0, - 0x38, 0x0C, 0x06, 0x03, 0x01, 0x01, 0x1F, 0x00, 0x01, 0x01, 0x81, 0x41, - 0x61, 0x21, 0x11, 0x18, 0x88, 0xFF, 0x02, 0x03, 0x01, 0x00, 0x0F, 0x84, - 0x04, 0x03, 0x80, 0x60, 0x18, 0x0C, 0x06, 0x03, 0x03, 0x03, 0x1E, 0x00, - 0x01, 0x83, 0x87, 0x07, 0x03, 0x03, 0x73, 0xCD, 0x86, 0xC3, 0x61, 0xB1, - 0x88, 0xC3, 0xC0, 0x7F, 0x40, 0x80, 0x80, 0x40, 0x40, 0x60, 0x20, 0x20, - 0x10, 0x10, 0x18, 0x08, 0x00, 0x1E, 0x19, 0xCC, 0x66, 0x33, 0xB0, 0xE0, - 0x50, 0xCC, 0xC3, 0x61, 0xB0, 0xCC, 0xC3, 0xC0, 0x0E, 0x19, 0x8C, 0x6C, - 0x36, 0x1B, 0x0D, 0x86, 0xE6, 0x3F, 0x03, 0x03, 0x06, 0x0C, 0x00, 0x33, - 0x00, 0x00, 0xCC, 0x33, 0x00, 0x00, 0x44, 0x48, 0x01, 0x83, 0x86, 0x1C, - 0x0C, 0x03, 0x80, 0x30, 0x07, 0x00, 0x80, 0xFF, 0x80, 0x00, 0x00, 0x0F, - 0xF8, 0xC0, 0x1C, 0x03, 0x80, 0x70, 0x18, 0x38, 0x70, 0xC0, 0x80, 0x00, - 0x3C, 0x8C, 0x18, 0x30, 0xC3, 0x0C, 0x20, 0x40, 0x80, 0x06, 0x00, 0x0F, - 0xC0, 0xC3, 0x0C, 0x04, 0xC7, 0xBC, 0x64, 0xE2, 0x27, 0x31, 0x39, 0x91, - 0xCC, 0x93, 0x3B, 0x0E, 0x00, 0x1F, 0x80, 0x01, 0x00, 0x60, 0x14, 0x04, - 0xC0, 0x98, 0x23, 0x07, 0xE1, 0x04, 0x20, 0x88, 0x1B, 0x8F, 0x80, 0x3F, - 0xC1, 0x8C, 0x21, 0x8C, 0x31, 0x8C, 0x3E, 0x04, 0x61, 0x86, 0x30, 0xC4, - 0x19, 0x86, 0x7F, 0x80, 0x07, 0x91, 0x86, 0x30, 0x26, 0x02, 0x60, 0x0C, - 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0x61, 0x83, 0xE0, 0x3F, 0xC0, - 0x63, 0x82, 0x0C, 0x30, 0x31, 0x81, 0x8C, 0x0C, 0x40, 0x66, 0x07, 0x30, - 0x31, 0x03, 0x18, 0x71, 0xFE, 0x00, 0x3F, 0xF0, 0xC2, 0x08, 0x21, 0x80, - 0x19, 0x81, 0xF8, 0x11, 0x03, 0x10, 0x30, 0x02, 0x04, 0x60, 0x8F, 0xF8, - 0x3F, 0xF0, 0xC2, 0x08, 0x21, 0x80, 0x19, 0x81, 0xF8, 0x11, 0x03, 0x10, - 0x30, 0x02, 0x00, 0x60, 0x0F, 0x80, 0x07, 0x91, 0x87, 0x30, 0x26, 0x02, - 0x60, 0x0C, 0x00, 0xC1, 0xFC, 0x0C, 0xC0, 0xCC, 0x0C, 0x60, 0x83, 0xF0, - 0x3E, 0x3C, 0x30, 0x60, 0x81, 0x06, 0x0C, 0x18, 0x30, 0x7F, 0x81, 0x06, - 0x0C, 0x18, 0x30, 0x60, 0x81, 0x06, 0x0C, 0x3C, 0x78, 0x1E, 0x18, 0x20, - 0xC1, 0x83, 0x04, 0x18, 0x30, 0x41, 0x87, 0x80, 0x0F, 0x81, 0x80, 0x80, - 0xC0, 0x60, 0x20, 0x30, 0x18, 0x0C, 0x04, 0x36, 0x1E, 0x00, 0x3E, 0x78, - 0x61, 0x82, 0x10, 0x31, 0x01, 0xB0, 0x0E, 0x00, 0x58, 0x06, 0x60, 0x33, - 0x01, 0x0C, 0x18, 0x61, 0xE7, 0xC0, 0x3E, 0x01, 0x80, 0x20, 0x0C, 0x01, - 0x80, 0x30, 0x04, 0x01, 0x80, 0x30, 0x04, 0x0D, 0x83, 0x7F, 0xE0, 0x1C, - 0x07, 0x0C, 0x0E, 0x0C, 0x14, 0x14, 0x1C, 0x14, 0x2C, 0x16, 0x4C, 0x26, - 0x48, 0x26, 0x98, 0x27, 0x18, 0x27, 0x10, 0x42, 0x30, 0xF4, 0x7C, 0x38, - 0x78, 0x60, 0x83, 0x04, 0x2C, 0x41, 0x22, 0x09, 0x10, 0x4D, 0x84, 0x28, - 0x21, 0x41, 0x06, 0x10, 0x21, 0xE1, 0x00, 0x07, 0x83, 0x18, 0xC1, 0xB0, - 0x36, 0x07, 0xC0, 0xF0, 0x3E, 0x06, 0xC0, 0xD8, 0x31, 0x8C, 0x1E, 0x00, - 0x3F, 0xC1, 0x9C, 0x21, 0x8C, 0x31, 0x86, 0x31, 0x87, 0xE1, 0x80, 0x30, - 0x04, 0x01, 0x80, 0x78, 0x00, 0x07, 0x83, 0x18, 0xC1, 0x98, 0x36, 0x07, - 0xC0, 0xF0, 0x1E, 0x06, 0xC0, 0xD8, 0x31, 0x04, 0x13, 0x01, 0x80, 0x70, - 0xB7, 0xE0, 0x3F, 0xC1, 0x8C, 0x21, 0x8C, 0x31, 0x8C, 0x3F, 0x04, 0xC1, - 0x98, 0x31, 0x84, 0x31, 0x86, 0x78, 0x70, 0x1E, 0x4C, 0x63, 0x08, 0xC0, - 0x38, 0x07, 0x00, 0x60, 0x0C, 0x43, 0x10, 0xC6, 0x62, 0x70, 0x7F, 0xE9, - 0x8E, 0x31, 0x04, 0x01, 0x80, 0x30, 0x06, 0x00, 0x80, 0x30, 0x06, 0x00, - 0x80, 0x7E, 0x00, 0x7C, 0xF3, 0x02, 0x30, 0x46, 0x04, 0x60, 0x46, 0x04, - 0x40, 0x8C, 0x08, 0xC0, 0x8C, 0x10, 0xE3, 0x03, 0xC0, 0xF8, 0xEC, 0x0C, - 0x81, 0x18, 0x43, 0x08, 0x62, 0x0C, 0x81, 0x90, 0x14, 0x03, 0x00, 0x60, - 0x08, 0x00, 0xFB, 0xCE, 0x43, 0x0C, 0x86, 0x11, 0x8C, 0x43, 0x38, 0x86, - 0xB2, 0x0D, 0x24, 0x1C, 0x50, 0x38, 0xA0, 0x21, 0x80, 0x42, 0x01, 0x04, - 0x00, 0x3E, 0x71, 0x82, 0x0C, 0x40, 0xC8, 0x07, 0x00, 0x60, 0x06, 0x00, - 0xB0, 0x13, 0x02, 0x18, 0x61, 0x8F, 0x3E, 0xF9, 0xC8, 0x23, 0x10, 0xC8, - 0x34, 0x05, 0x01, 0x80, 0x40, 0x30, 0x0C, 0x03, 0x03, 0xE0, 0x3F, 0xE4, - 0x19, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0x40, 0x18, 0x06, 0x05, - 0x81, 0x7F, 0xE0, 0x0E, 0x10, 0x20, 0x81, 0x02, 0x04, 0x10, 0x20, 0x40, - 0x82, 0x04, 0x08, 0x1C, 0x00, 0x81, 0x04, 0x18, 0x20, 0xC1, 0x04, 0x08, - 0x20, 0x41, 0x38, 0x20, 0x82, 0x08, 0x41, 0x04, 0x10, 0xC2, 0x08, 0x20, - 0x8C, 0x00, 0x18, 0x18, 0x2C, 0x24, 0x46, 0x42, 0x83, 0xFF, 0x80, 0xD8, - 0x80, 0x1F, 0x98, 0x98, 0x4C, 0x2C, 0x36, 0x33, 0x3A, 0xEE, 0x38, 0x08, - 0x04, 0x02, 0x03, 0x71, 0xCC, 0xC6, 0xC3, 0x63, 0x21, 0x93, 0x8F, 0x00, - 0x1F, 0x33, 0x60, 0xC0, 0xC0, 0xC0, 0xC4, 0x78, 0x01, 0x80, 0x40, 0x60, - 0x20, 0xF1, 0x89, 0x8C, 0xC4, 0xC2, 0x63, 0x33, 0xAE, 0xE0, 0x0E, 0x65, - 0x8B, 0x2F, 0x98, 0x31, 0x3C, 0x01, 0xE0, 0x40, 0x08, 0x02, 0x00, 0x40, - 0x3E, 0x03, 0x00, 0x40, 0x08, 0x01, 0x00, 0x60, 0x0C, 0x01, 0x00, 0x20, - 0x04, 0x01, 0x00, 0xC0, 0x00, 0x1E, 0x19, 0xD8, 0xCC, 0xE1, 0xC3, 0x01, - 0xE0, 0xBC, 0x82, 0x41, 0x31, 0x0F, 0x00, 0x38, 0x08, 0x04, 0x02, 0x03, - 0x39, 0x6C, 0xC6, 0x46, 0x63, 0x21, 0x11, 0xB8, 0xE0, 0x30, 0x00, 0xE2, - 0x44, 0xC8, 0xCE, 0x06, 0x00, 0x00, 0x00, 0xC0, 0x83, 0x04, 0x08, 0x10, - 0x60, 0x81, 0x02, 0x04, 0x70, 0x38, 0x10, 0x10, 0x10, 0x37, 0x22, 0x24, - 0x38, 0x78, 0x48, 0x4D, 0xC6, 0x73, 0x32, 0x26, 0x64, 0x4C, 0xDE, 0x77, - 0x39, 0x5E, 0xCC, 0xCC, 0xCE, 0x66, 0x62, 0x22, 0x11, 0x11, 0xB9, 0x8E, - 0x77, 0x3B, 0x33, 0x62, 0x62, 0x42, 0x4D, 0xCE, 0x0F, 0x18, 0xD8, 0x7C, - 0x3C, 0x3E, 0x1B, 0x18, 0xF0, 0x3B, 0x87, 0x31, 0x8C, 0x43, 0x31, 0x88, - 0x62, 0x30, 0xF0, 0x60, 0x10, 0x04, 0x03, 0x80, 0x0F, 0x18, 0x98, 0x4C, - 0x2C, 0x26, 0x33, 0x38, 0xEC, 0x04, 0x02, 0x03, 0x03, 0xC0, 0x76, 0x50, - 0xC1, 0x06, 0x08, 0x10, 0x60, 0x1A, 0x6C, 0xC8, 0xC0, 0xD1, 0xB3, 0x5C, - 0x23, 0xC8, 0xC4, 0x21, 0x18, 0xE0, 0xC3, 0x42, 0x42, 0xC6, 0x86, 0x8C, - 0x9D, 0xEE, 0x62, 0xC4, 0x89, 0xA3, 0x47, 0x0C, 0x10, 0xE2, 0x2C, 0x44, - 0xD8, 0x9D, 0x23, 0xA4, 0x65, 0x0C, 0xC1, 0x10, 0x19, 0x95, 0x43, 0x01, - 0x80, 0xC0, 0xA0, 0x91, 0x8E, 0x70, 0x88, 0x46, 0x23, 0x20, 0x90, 0x50, - 0x28, 0x18, 0x08, 0x08, 0x08, 0x18, 0x00, 0x3F, 0x42, 0x04, 0x08, 0x10, - 0x20, 0x40, 0x72, 0x0E, 0x08, 0x61, 0x04, 0x30, 0x86, 0x08, 0x61, 0x04, - 0x30, 0xC3, 0x8F, 0x00, 0xFF, 0xF0, 0x1E, 0x0C, 0x10, 0x20, 0xC1, 0x82, - 0x04, 0x1C, 0x30, 0x40, 0x83, 0x04, 0x08, 0x20, 0x60, 0x99, 0x8E}; - -const GFXglyph FreeSerifItalic9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 4, 12, 6, 1, -11}, // 0x21 '!' - {6, 5, 4, 6, 3, -11}, // 0x22 '"' - {9, 10, 12, 9, 0, -11}, // 0x23 '#' - {24, 9, 15, 9, 1, -12}, // 0x24 '$' - {41, 14, 12, 15, 1, -11}, // 0x25 '%' - {62, 12, 12, 14, 1, -11}, // 0x26 '&' - {80, 2, 4, 4, 3, -11}, // 0x27 ''' - {81, 6, 15, 6, 1, -11}, // 0x28 '(' - {93, 6, 15, 6, 0, -11}, // 0x29 ')' - {105, 6, 8, 9, 3, -11}, // 0x2A '*' - {111, 9, 9, 12, 1, -8}, // 0x2B '+' - {122, 2, 4, 5, 0, -1}, // 0x2C ',' - {123, 4, 1, 6, 1, -3}, // 0x2D '-' - {124, 2, 2, 5, 0, -1}, // 0x2E '.' - {125, 8, 12, 5, 0, -11}, // 0x2F '/' - {137, 9, 13, 9, 1, -12}, // 0x30 '0' - {152, 6, 13, 9, 1, -12}, // 0x31 '1' - {162, 8, 12, 9, 1, -11}, // 0x32 '2' - {174, 9, 12, 9, 0, -11}, // 0x33 '3' - {188, 9, 12, 9, 0, -11}, // 0x34 '4' - {202, 9, 12, 9, 0, -11}, // 0x35 '5' - {216, 9, 13, 9, 1, -12}, // 0x36 '6' - {231, 9, 12, 9, 1, -11}, // 0x37 '7' - {245, 9, 13, 9, 1, -12}, // 0x38 '8' - {260, 9, 13, 9, 0, -12}, // 0x39 '9' - {275, 4, 8, 4, 1, -7}, // 0x3A ':' - {279, 4, 10, 4, 1, -7}, // 0x3B ';' - {284, 9, 9, 10, 1, -8}, // 0x3C '<' - {295, 9, 5, 12, 2, -6}, // 0x3D '=' - {301, 9, 9, 10, 1, -8}, // 0x3E '>' - {312, 7, 12, 8, 2, -11}, // 0x3F '?' - {323, 13, 12, 14, 1, -11}, // 0x40 '@' - {343, 11, 11, 12, 0, -10}, // 0x41 'A' - {359, 11, 12, 11, 0, -11}, // 0x42 'B' - {376, 12, 12, 11, 1, -11}, // 0x43 'C' - {394, 13, 12, 13, 0, -11}, // 0x44 'D' - {414, 12, 12, 10, 0, -11}, // 0x45 'E' - {432, 12, 12, 10, 0, -11}, // 0x46 'F' - {450, 12, 12, 12, 1, -11}, // 0x47 'G' - {468, 14, 12, 13, 0, -11}, // 0x48 'H' - {489, 7, 12, 6, 0, -11}, // 0x49 'I' - {500, 9, 12, 8, 0, -11}, // 0x4A 'J' - {514, 13, 12, 12, 0, -11}, // 0x4B 'K' - {534, 11, 12, 10, 0, -11}, // 0x4C 'L' - {551, 16, 12, 15, 0, -11}, // 0x4D 'M' - {575, 13, 12, 12, 0, -11}, // 0x4E 'N' - {595, 11, 12, 12, 1, -11}, // 0x4F 'O' - {612, 11, 12, 10, 0, -11}, // 0x50 'P' - {629, 11, 15, 12, 1, -11}, // 0x51 'Q' - {650, 11, 12, 11, 0, -11}, // 0x52 'R' - {667, 10, 12, 8, 0, -11}, // 0x53 'S' - {682, 11, 12, 11, 2, -11}, // 0x54 'T' - {699, 12, 12, 13, 2, -11}, // 0x55 'U' - {717, 11, 12, 12, 2, -11}, // 0x56 'V' - {734, 15, 12, 16, 2, -11}, // 0x57 'W' - {757, 12, 12, 12, 0, -11}, // 0x58 'X' - {775, 10, 12, 11, 2, -11}, // 0x59 'Y' - {790, 11, 12, 10, 0, -11}, // 0x5A 'Z' - {807, 7, 15, 7, 0, -11}, // 0x5B '[' - {821, 6, 12, 9, 2, -11}, // 0x5C '\' - {830, 6, 15, 7, 1, -11}, // 0x5D ']' - {842, 8, 7, 8, 0, -11}, // 0x5E '^' - {849, 9, 1, 9, 0, 2}, // 0x5F '_' - {851, 3, 3, 5, 2, -11}, // 0x60 '`' - {853, 9, 8, 9, 0, -7}, // 0x61 'a' - {862, 9, 12, 9, 0, -11}, // 0x62 'b' - {876, 8, 8, 7, 0, -7}, // 0x63 'c' - {884, 9, 12, 9, 0, -11}, // 0x64 'd' - {898, 7, 8, 7, 0, -7}, // 0x65 'e' - {905, 11, 17, 8, -1, -12}, // 0x66 'f' - {929, 9, 12, 8, 0, -7}, // 0x67 'g' - {943, 9, 12, 9, 0, -11}, // 0x68 'h' - {957, 4, 12, 4, 1, -11}, // 0x69 'i' - {963, 7, 16, 5, -1, -11}, // 0x6A 'j' - {977, 8, 12, 8, 0, -11}, // 0x6B 'k' - {989, 4, 12, 5, 1, -11}, // 0x6C 'l' - {995, 13, 8, 13, 0, -7}, // 0x6D 'm' - {1008, 8, 8, 9, 0, -7}, // 0x6E 'n' - {1016, 9, 8, 9, 0, -7}, // 0x6F 'o' - {1025, 10, 12, 8, -1, -7}, // 0x70 'p' - {1040, 9, 12, 9, 0, -7}, // 0x71 'q' - {1054, 7, 8, 7, 0, -7}, // 0x72 'r' - {1061, 7, 8, 6, 0, -7}, // 0x73 's' - {1068, 5, 9, 4, 0, -8}, // 0x74 't' - {1074, 8, 8, 9, 1, -7}, // 0x75 'u' - {1082, 7, 8, 8, 1, -7}, // 0x76 'v' - {1089, 11, 8, 12, 1, -7}, // 0x77 'w' - {1100, 9, 8, 8, -1, -7}, // 0x78 'x' - {1109, 9, 12, 9, 0, -7}, // 0x79 'y' - {1123, 8, 9, 7, 0, -7}, // 0x7A 'z' - {1132, 6, 15, 7, 1, -11}, // 0x7B '{' - {1144, 1, 12, 5, 2, -11}, // 0x7C '|' - {1146, 7, 16, 7, 0, -12}, // 0x7D '}' - {1160, 8, 3, 10, 1, -5}}; // 0x7E '~' - -const GFXfont FreeSerifItalic9pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic9pt7bBitmaps, - (GFXglyph *)FreeSerifItalic9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 1835 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Org_01.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Org_01.h deleted file mode 100644 index 9b80258..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Org_01.h +++ /dev/null @@ -1,131 +0,0 @@ -#pragma once -#include - -// Org_v01 by Orgdot (www.orgdot.com/aliasfonts). A tiny, -// stylized font with all characters within a 6 pixel height. - -const uint8_t Org_01Bitmaps[] PROGMEM = { - 0xE8, 0xA0, 0x57, 0xD5, 0xF5, 0x00, 0xFD, 0x3E, 0x5F, 0x80, 0x88, 0x88, - 0x88, 0x80, 0xF4, 0xBF, 0x2E, 0x80, 0x80, 0x6A, 0x40, 0x95, 0x80, 0xAA, - 0x80, 0x5D, 0x00, 0xC0, 0xF0, 0x80, 0x08, 0x88, 0x88, 0x00, 0xFC, 0x63, - 0x1F, 0x80, 0xF8, 0xF8, 0x7F, 0x0F, 0x80, 0xF8, 0x7E, 0x1F, 0x80, 0x8C, - 0x7E, 0x10, 0x80, 0xFC, 0x3E, 0x1F, 0x80, 0xFC, 0x3F, 0x1F, 0x80, 0xF8, - 0x42, 0x10, 0x80, 0xFC, 0x7F, 0x1F, 0x80, 0xFC, 0x7E, 0x1F, 0x80, 0x90, - 0xB0, 0x2A, 0x22, 0xF0, 0xF0, 0x88, 0xA8, 0xF8, 0x4E, 0x02, 0x00, 0xFD, - 0x6F, 0x0F, 0x80, 0xFC, 0x7F, 0x18, 0x80, 0xF4, 0x7D, 0x1F, 0x00, 0xFC, - 0x21, 0x0F, 0x80, 0xF4, 0x63, 0x1F, 0x00, 0xFC, 0x3F, 0x0F, 0x80, 0xFC, - 0x3F, 0x08, 0x00, 0xFC, 0x2F, 0x1F, 0x80, 0x8C, 0x7F, 0x18, 0x80, 0xF9, - 0x08, 0x4F, 0x80, 0x78, 0x85, 0x2F, 0x80, 0x8D, 0xB1, 0x68, 0x80, 0x84, - 0x21, 0x0F, 0x80, 0xFD, 0x6B, 0x5A, 0x80, 0xFC, 0x63, 0x18, 0x80, 0xFC, - 0x63, 0x1F, 0x80, 0xFC, 0x7F, 0x08, 0x00, 0xFC, 0x63, 0x3F, 0x80, 0xFC, - 0x7F, 0x29, 0x00, 0xFC, 0x3E, 0x1F, 0x80, 0xF9, 0x08, 0x42, 0x00, 0x8C, - 0x63, 0x1F, 0x80, 0x8C, 0x62, 0xA2, 0x00, 0xAD, 0x6B, 0x5F, 0x80, 0x8A, - 0x88, 0xA8, 0x80, 0x8C, 0x54, 0x42, 0x00, 0xF8, 0x7F, 0x0F, 0x80, 0xEA, - 0xC0, 0x82, 0x08, 0x20, 0x80, 0xD5, 0xC0, 0x54, 0xF8, 0x80, 0xF1, 0xFF, - 0x8F, 0x99, 0xF0, 0xF8, 0x8F, 0x1F, 0x99, 0xF0, 0xFF, 0x8F, 0x6B, 0xA4, - 0xF9, 0x9F, 0x10, 0x8F, 0x99, 0x90, 0xF0, 0x55, 0xC0, 0x8A, 0xF9, 0x90, - 0xF8, 0xFD, 0x63, 0x10, 0xF9, 0x99, 0xF9, 0x9F, 0xF9, 0x9F, 0x80, 0xF9, - 0x9F, 0x20, 0xF8, 0x88, 0x47, 0x1F, 0x27, 0xC8, 0x42, 0x00, 0x99, 0x9F, - 0x99, 0x97, 0x8C, 0x6B, 0xF0, 0x96, 0x69, 0x99, 0x9F, 0x10, 0x2E, 0x8F, - 0x2B, 0x22, 0xF8, 0x89, 0xA8, 0x0F, 0xE0}; - -const GFXglyph Org_01Glyphs[] PROGMEM = {{0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 1, 5, 2, 0, -4}, // 0x21 '!' - {1, 3, 1, 4, 0, -4}, // 0x22 '"' - {2, 5, 5, 6, 0, -4}, // 0x23 '#' - {6, 5, 5, 6, 0, -4}, // 0x24 '$' - {10, 5, 5, 6, 0, -4}, // 0x25 '%' - {14, 5, 5, 6, 0, -4}, // 0x26 '&' - {18, 1, 1, 2, 0, -4}, // 0x27 ''' - {19, 2, 5, 3, 0, -4}, // 0x28 '(' - {21, 2, 5, 3, 0, -4}, // 0x29 ')' - {23, 3, 3, 4, 0, -3}, // 0x2A '*' - {25, 3, 3, 4, 0, -3}, // 0x2B '+' - {27, 1, 2, 2, 0, 0}, // 0x2C ',' - {28, 4, 1, 5, 0, -2}, // 0x2D '-' - {29, 1, 1, 2, 0, 0}, // 0x2E '.' - {30, 5, 5, 6, 0, -4}, // 0x2F '/' - {34, 5, 5, 6, 0, -4}, // 0x30 '0' - {38, 1, 5, 2, 0, -4}, // 0x31 '1' - {39, 5, 5, 6, 0, -4}, // 0x32 '2' - {43, 5, 5, 6, 0, -4}, // 0x33 '3' - {47, 5, 5, 6, 0, -4}, // 0x34 '4' - {51, 5, 5, 6, 0, -4}, // 0x35 '5' - {55, 5, 5, 6, 0, -4}, // 0x36 '6' - {59, 5, 5, 6, 0, -4}, // 0x37 '7' - {63, 5, 5, 6, 0, -4}, // 0x38 '8' - {67, 5, 5, 6, 0, -4}, // 0x39 '9' - {71, 1, 4, 2, 0, -3}, // 0x3A ':' - {72, 1, 4, 2, 0, -3}, // 0x3B ';' - {73, 3, 5, 4, 0, -4}, // 0x3C '<' - {75, 4, 3, 5, 0, -3}, // 0x3D '=' - {77, 3, 5, 4, 0, -4}, // 0x3E '>' - {79, 5, 5, 6, 0, -4}, // 0x3F '?' - {83, 5, 5, 6, 0, -4}, // 0x40 '@' - {87, 5, 5, 6, 0, -4}, // 0x41 'A' - {91, 5, 5, 6, 0, -4}, // 0x42 'B' - {95, 5, 5, 6, 0, -4}, // 0x43 'C' - {99, 5, 5, 6, 0, -4}, // 0x44 'D' - {103, 5, 5, 6, 0, -4}, // 0x45 'E' - {107, 5, 5, 6, 0, -4}, // 0x46 'F' - {111, 5, 5, 6, 0, -4}, // 0x47 'G' - {115, 5, 5, 6, 0, -4}, // 0x48 'H' - {119, 5, 5, 6, 0, -4}, // 0x49 'I' - {123, 5, 5, 6, 0, -4}, // 0x4A 'J' - {127, 5, 5, 6, 0, -4}, // 0x4B 'K' - {131, 5, 5, 6, 0, -4}, // 0x4C 'L' - {135, 5, 5, 6, 0, -4}, // 0x4D 'M' - {139, 5, 5, 6, 0, -4}, // 0x4E 'N' - {143, 5, 5, 6, 0, -4}, // 0x4F 'O' - {147, 5, 5, 6, 0, -4}, // 0x50 'P' - {151, 5, 5, 6, 0, -4}, // 0x51 'Q' - {155, 5, 5, 6, 0, -4}, // 0x52 'R' - {159, 5, 5, 6, 0, -4}, // 0x53 'S' - {163, 5, 5, 6, 0, -4}, // 0x54 'T' - {167, 5, 5, 6, 0, -4}, // 0x55 'U' - {171, 5, 5, 6, 0, -4}, // 0x56 'V' - {175, 5, 5, 6, 0, -4}, // 0x57 'W' - {179, 5, 5, 6, 0, -4}, // 0x58 'X' - {183, 5, 5, 6, 0, -4}, // 0x59 'Y' - {187, 5, 5, 6, 0, -4}, // 0x5A 'Z' - {191, 2, 5, 3, 0, -4}, // 0x5B '[' - {193, 5, 5, 6, 0, -4}, // 0x5C '\' - {197, 2, 5, 3, 0, -4}, // 0x5D ']' - {199, 3, 2, 4, 0, -4}, // 0x5E '^' - {200, 5, 1, 6, 0, 1}, // 0x5F '_' - {201, 1, 1, 2, 0, -4}, // 0x60 '`' - {202, 4, 4, 5, 0, -3}, // 0x61 'a' - {204, 4, 5, 5, 0, -4}, // 0x62 'b' - {207, 4, 4, 5, 0, -3}, // 0x63 'c' - {209, 4, 5, 5, 0, -4}, // 0x64 'd' - {212, 4, 4, 5, 0, -3}, // 0x65 'e' - {214, 3, 5, 4, 0, -4}, // 0x66 'f' - {216, 4, 5, 5, 0, -3}, // 0x67 'g' - {219, 4, 5, 5, 0, -4}, // 0x68 'h' - {222, 1, 4, 2, 0, -3}, // 0x69 'i' - {223, 2, 5, 3, 0, -3}, // 0x6A 'j' - {225, 4, 5, 5, 0, -4}, // 0x6B 'k' - {228, 1, 5, 2, 0, -4}, // 0x6C 'l' - {229, 5, 4, 6, 0, -3}, // 0x6D 'm' - {232, 4, 4, 5, 0, -3}, // 0x6E 'n' - {234, 4, 4, 5, 0, -3}, // 0x6F 'o' - {236, 4, 5, 5, 0, -3}, // 0x70 'p' - {239, 4, 5, 5, 0, -3}, // 0x71 'q' - {242, 4, 4, 5, 0, -3}, // 0x72 'r' - {244, 4, 4, 5, 0, -3}, // 0x73 's' - {246, 5, 5, 6, 0, -4}, // 0x74 't' - {250, 4, 4, 5, 0, -3}, // 0x75 'u' - {252, 4, 4, 5, 0, -3}, // 0x76 'v' - {254, 5, 4, 6, 0, -3}, // 0x77 'w' - {257, 4, 4, 5, 0, -3}, // 0x78 'x' - {259, 4, 5, 5, 0, -3}, // 0x79 'y' - {262, 4, 4, 5, 0, -3}, // 0x7A 'z' - {264, 3, 5, 4, 0, -4}, // 0x7B '{' - {266, 1, 5, 2, 0, -4}, // 0x7C '|' - {267, 3, 5, 4, 0, -4}, // 0x7D '}' - {269, 5, 3, 6, 0, -3}}; // 0x7E '~' - -const GFXfont Org_01 PROGMEM = {(uint8_t *)Org_01Bitmaps, - (GFXglyph *)Org_01Glyphs, 0x20, 0x7E, 7}; - -// Approx. 943 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Picopixel.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Picopixel.h deleted file mode 100644 index 463b1b5..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Picopixel.h +++ /dev/null @@ -1,123 +0,0 @@ -#pragma once -#include - -// Picopixel by Sebastian Weber. A tiny font -// with all characters within a 6 pixel height. - -const uint8_t PicopixelBitmaps[] PROGMEM = { - 0xE8, 0xB4, 0x57, 0xD5, 0xF5, 0x00, 0x4E, 0x3E, 0x80, 0xA5, 0x4A, 0x4A, - 0x5A, 0x50, 0xC0, 0x6A, 0x40, 0x95, 0x80, 0xAA, 0x80, 0x5D, 0x00, 0x60, - 0xE0, 0x80, 0x25, 0x48, 0x56, 0xD4, 0x75, 0x40, 0xC5, 0x4E, 0xC5, 0x1C, - 0x97, 0x92, 0xF3, 0x1C, 0x53, 0x54, 0xE5, 0x48, 0x55, 0x54, 0x55, 0x94, - 0xA0, 0x46, 0x64, 0xE3, 0x80, 0x98, 0xC5, 0x04, 0x56, 0xC6, 0x57, 0xDA, - 0xD7, 0x5C, 0x72, 0x46, 0xD6, 0xDC, 0xF3, 0xCE, 0xF3, 0x48, 0x72, 0xD4, - 0xB7, 0xDA, 0xF8, 0x24, 0xD4, 0xBB, 0x5A, 0x92, 0x4E, 0x8E, 0xEB, 0x58, - 0x80, 0x9D, 0xB9, 0x90, 0x56, 0xD4, 0xD7, 0x48, 0x56, 0xD4, 0x40, 0xD7, - 0x5A, 0x71, 0x1C, 0xE9, 0x24, 0xB6, 0xD4, 0xB6, 0xA4, 0x8C, 0x6B, 0x55, - 0x00, 0xB5, 0x5A, 0xB5, 0x24, 0xE5, 0x4E, 0xEA, 0xC0, 0x91, 0x12, 0xD5, - 0xC0, 0x54, 0xF0, 0x90, 0xC7, 0xF0, 0x93, 0x5E, 0x71, 0x80, 0x25, 0xDE, - 0x5E, 0x30, 0x6E, 0x80, 0x77, 0x9C, 0x93, 0x5A, 0xB8, 0x45, 0x60, 0x92, - 0xEA, 0xAA, 0x40, 0xD5, 0x6A, 0xD6, 0x80, 0x55, 0x00, 0xD7, 0x40, 0x75, - 0x90, 0xE8, 0x71, 0xE0, 0xBA, 0x40, 0xB5, 0x80, 0xB5, 0x00, 0x8D, 0x54, - 0xAA, 0x80, 0xAC, 0xE0, 0xE5, 0x70, 0x6A, 0x26, 0xFC, 0xC8, 0xAC, 0x5A}; - -const GFXglyph PicopixelGlyphs[] PROGMEM = {{0, 0, 0, 2, 0, 1}, // 0x20 ' ' - {0, 1, 5, 2, 0, -4}, // 0x21 '!' - {1, 3, 2, 4, 0, -4}, // 0x22 '"' - {2, 5, 5, 6, 0, -4}, // 0x23 '#' - {6, 3, 6, 4, 0, -4}, // 0x24 '$' - {9, 3, 5, 4, 0, -4}, // 0x25 '%' - {11, 4, 5, 5, 0, -4}, // 0x26 '&' - {14, 1, 2, 2, 0, -4}, // 0x27 ''' - {15, 2, 5, 3, 0, -4}, // 0x28 '(' - {17, 2, 5, 3, 0, -4}, // 0x29 ')' - {19, 3, 3, 4, 0, -3}, // 0x2A '*' - {21, 3, 3, 4, 0, -3}, // 0x2B '+' - {23, 2, 2, 3, 0, 0}, // 0x2C ',' - {24, 3, 1, 4, 0, -2}, // 0x2D '-' - {25, 1, 1, 2, 0, 0}, // 0x2E '.' - {26, 3, 5, 4, 0, -4}, // 0x2F '/' - {28, 3, 5, 4, 0, -4}, // 0x30 '0' - {30, 2, 5, 3, 0, -4}, // 0x31 '1' - {32, 3, 5, 4, 0, -4}, // 0x32 '2' - {34, 3, 5, 4, 0, -4}, // 0x33 '3' - {36, 3, 5, 4, 0, -4}, // 0x34 '4' - {38, 3, 5, 4, 0, -4}, // 0x35 '5' - {40, 3, 5, 4, 0, -4}, // 0x36 '6' - {42, 3, 5, 4, 0, -4}, // 0x37 '7' - {44, 3, 5, 4, 0, -4}, // 0x38 '8' - {46, 3, 5, 4, 0, -4}, // 0x39 '9' - {48, 1, 3, 2, 0, -3}, // 0x3A ':' - {49, 2, 4, 3, 0, -3}, // 0x3B ';' - {50, 2, 3, 3, 0, -3}, // 0x3C '<' - {51, 3, 3, 4, 0, -3}, // 0x3D '=' - {53, 2, 3, 3, 0, -3}, // 0x3E '>' - {54, 3, 5, 4, 0, -4}, // 0x3F '?' - {56, 3, 5, 4, 0, -4}, // 0x40 '@' - {58, 3, 5, 4, 0, -4}, // 0x41 'A' - {60, 3, 5, 4, 0, -4}, // 0x42 'B' - {62, 3, 5, 4, 0, -4}, // 0x43 'C' - {64, 3, 5, 4, 0, -4}, // 0x44 'D' - {66, 3, 5, 4, 0, -4}, // 0x45 'E' - {68, 3, 5, 4, 0, -4}, // 0x46 'F' - {70, 3, 5, 4, 0, -4}, // 0x47 'G' - {72, 3, 5, 4, 0, -4}, // 0x48 'H' - {74, 1, 5, 2, 0, -4}, // 0x49 'I' - {75, 3, 5, 4, 0, -4}, // 0x4A 'J' - {77, 3, 5, 4, 0, -4}, // 0x4B 'K' - {79, 3, 5, 4, 0, -4}, // 0x4C 'L' - {81, 5, 5, 6, 0, -4}, // 0x4D 'M' - {85, 4, 5, 5, 0, -4}, // 0x4E 'N' - {88, 3, 5, 4, 0, -4}, // 0x4F 'O' - {90, 3, 5, 4, 0, -4}, // 0x50 'P' - {92, 3, 6, 4, 0, -4}, // 0x51 'Q' - {95, 3, 5, 4, 0, -4}, // 0x52 'R' - {97, 3, 5, 4, 0, -4}, // 0x53 'S' - {99, 3, 5, 4, 0, -4}, // 0x54 'T' - {101, 3, 5, 4, 0, -4}, // 0x55 'U' - {103, 3, 5, 4, 0, -4}, // 0x56 'V' - {105, 5, 5, 6, 0, -4}, // 0x57 'W' - {109, 3, 5, 4, 0, -4}, // 0x58 'X' - {111, 3, 5, 4, 0, -4}, // 0x59 'Y' - {113, 3, 5, 4, 0, -4}, // 0x5A 'Z' - {115, 2, 5, 3, 0, -4}, // 0x5B '[' - {117, 3, 5, 4, 0, -4}, // 0x5C '\' - {119, 2, 5, 3, 0, -4}, // 0x5D ']' - {121, 3, 2, 4, 0, -4}, // 0x5E '^' - {122, 4, 1, 4, 0, 1}, // 0x5F '_' - {123, 2, 2, 3, 0, -4}, // 0x60 '`' - {124, 3, 4, 4, 0, -3}, // 0x61 'a' - {126, 3, 5, 4, 0, -4}, // 0x62 'b' - {128, 3, 3, 4, 0, -2}, // 0x63 'c' - {130, 3, 5, 4, 0, -4}, // 0x64 'd' - {132, 3, 4, 4, 0, -3}, // 0x65 'e' - {134, 2, 5, 3, 0, -4}, // 0x66 'f' - {136, 3, 5, 4, 0, -3}, // 0x67 'g' - {138, 3, 5, 4, 0, -4}, // 0x68 'h' - {140, 1, 5, 2, 0, -4}, // 0x69 'i' - {141, 2, 6, 3, 0, -4}, // 0x6A 'j' - {143, 3, 5, 4, 0, -4}, // 0x6B 'k' - {145, 2, 5, 3, 0, -4}, // 0x6C 'l' - {147, 5, 3, 6, 0, -2}, // 0x6D 'm' - {149, 3, 3, 4, 0, -2}, // 0x6E 'n' - {151, 3, 3, 4, 0, -2}, // 0x6F 'o' - {153, 3, 4, 4, 0, -2}, // 0x70 'p' - {155, 3, 4, 4, 0, -2}, // 0x71 'q' - {157, 2, 3, 3, 0, -2}, // 0x72 'r' - {158, 3, 4, 4, 0, -3}, // 0x73 's' - {160, 2, 5, 3, 0, -4}, // 0x74 't' - {162, 3, 3, 4, 0, -2}, // 0x75 'u' - {164, 3, 3, 4, 0, -2}, // 0x76 'v' - {166, 5, 3, 6, 0, -2}, // 0x77 'w' - {168, 3, 3, 4, 0, -2}, // 0x78 'x' - {170, 3, 4, 4, 0, -2}, // 0x79 'y' - {172, 3, 4, 4, 0, -3}, // 0x7A 'z' - {174, 3, 5, 4, 0, -4}, // 0x7B '{' - {176, 1, 6, 2, 0, -4}, // 0x7C '|' - {177, 3, 5, 4, 0, -4}, // 0x7D '}' - {179, 4, 2, 5, 0, -3}}; // 0x7E '~' - -const GFXfont Picopixel PROGMEM = {(uint8_t *)PicopixelBitmaps, - (GFXglyph *)PicopixelGlyphs, 0x20, 0x7E, 7}; - -// Approx. 852 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h deleted file mode 100644 index 5b0ba4a..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h +++ /dev/null @@ -1,133 +0,0 @@ -#pragma once -#include - -/** -** The FontStruction “Tiny3x3a” -** (https://fontstruct.com/fontstructions/show/670512) by “Michaelangel007” is -** licensed under a Creative Commons Attribution Non-commercial Share Alike -*license -** (http://creativecommons.org/licenses/by-nc-sa/3.0/). -** “Tiny3x3a” was originally cloned (copied) from the FontStruction -** “CHECKER” (https://fontstruct.com/fontstructions/show/2391) by Wolf grant -** Grant, which is licensed under a Creative Commons Attribution Non-commercial -** Share Alike license (http://creativecommons.org/licenses/by-nc-sa/3.0/). -* -* Converted by eadmaster with fontconvert -**/ - -const uint8_t Tiny3x3a2pt7bBitmaps[] PROGMEM = { - 0xC0, 0xB4, 0xBF, 0x80, 0x6B, 0x00, 0xDD, 0x80, 0x59, 0x80, 0x80, 0x64, - 0x98, 0xF0, 0x5D, 0x00, 0xC0, 0xE0, 0x80, 0x2A, 0x00, 0x55, 0x00, 0x94, - 0xC9, 0x80, 0xEF, 0x80, 0xBC, 0x80, 0x6B, 0x00, 0x9F, 0x80, 0xE4, 0x80, - 0x7F, 0x00, 0xFC, 0x80, 0xA0, 0x58, 0x64, 0xE3, 0x80, 0x98, 0xD8, 0xD8, - 0x80, 0x5E, 0x80, 0xDF, 0x80, 0x71, 0x80, 0xD7, 0x00, 0xFB, 0x80, 0xFA, - 0x00, 0xD7, 0x80, 0xBE, 0x80, 0xE0, 0x27, 0x00, 0xBA, 0x80, 0x93, 0x80, - 0xFE, 0x80, 0xF6, 0x80, 0xF7, 0x80, 0xFE, 0x00, 0xF7, 0x00, 0xDE, 0x80, - 0x6B, 0x00, 0xE9, 0x00, 0xB7, 0x80, 0xB5, 0x00, 0xBF, 0x80, 0xAA, 0x80, - 0xA9, 0x00, 0xEB, 0x80, 0xEC, 0x88, 0x80, 0xDC, 0x54, 0xE0, 0x90, 0x70, - 0xBC, 0xF0, 0x7C, 0xB0, 0x68, 0xFC, 0xBC, 0xC0, 0x58, 0x9A, 0x80, 0xA4, - 0xDC, 0xD4, 0xF0, 0xF8, 0xF4, 0xE0, 0x60, 0x59, 0x80, 0xBC, 0xA8, 0xEC, - 0xF0, 0xAC, 0x80, 0x90, 0x79, 0x80, 0xF0, 0xCF, 0x00, 0x78}; - -const GFXglyph Tiny3x3a2pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 4, 0, 1}, // 0x20 ' ' - {0, 1, 2, 3, 1, -2}, // 0x21 '!' - {1, 3, 2, 4, 0, -2}, // 0x22 '"' - {2, 3, 3, 4, 0, -2}, // 0x23 '#' - {4, 3, 3, 4, 0, -2}, // 0x24 '$' - {6, 3, 3, 4, 0, -2}, // 0x25 '%' - {8, 3, 3, 4, 0, -2}, // 0x26 '&' - {10, 1, 1, 3, 1, -2}, // 0x27 ''' - {11, 2, 3, 3, 0, -2}, // 0x28 '(' - {12, 2, 3, 4, 1, -2}, // 0x29 ')' - {13, 2, 2, 4, 1, -2}, // 0x2A '*' - {14, 3, 3, 4, 0, -2}, // 0x2B '+' - {16, 1, 2, 2, 0, 0}, // 0x2C ',' - {17, 3, 1, 4, 0, -1}, // 0x2D '-' - {18, 1, 1, 2, 0, 0}, // 0x2E '.' - {19, 3, 3, 4, 0, -2}, // 0x2F '/' - {21, 3, 3, 4, 0, -2}, // 0x30 '0' - {23, 2, 3, 3, 0, -2}, // 0x31 '1' - {24, 3, 3, 4, 0, -2}, // 0x32 '2' - {26, 3, 3, 4, 0, -2}, // 0x33 '3' - {28, 3, 3, 4, 0, -2}, // 0x34 '4' - {30, 3, 3, 4, 0, -2}, // 0x35 '5' - {32, 3, 3, 4, 0, -2}, // 0x36 '6' - {34, 3, 3, 4, 0, -2}, // 0x37 '7' - {36, 3, 3, 4, 0, -2}, // 0x38 '8' - {38, 3, 3, 4, 0, -2}, // 0x39 '9' - {40, 1, 3, 3, 1, -2}, // 0x3A ':' - {41, 2, 3, 3, 0, -1}, // 0x3B ';' - {42, 2, 3, 3, 0, -2}, // 0x3C '<' - {43, 3, 3, 4, 0, -2}, // 0x3D '=' - {45, 2, 3, 4, 1, -2}, // 0x3E '>' - {46, 2, 3, 4, 1, -2}, // 0x3F '?' - {47, 3, 3, 4, 0, -2}, // 0x40 '@' - {49, 3, 3, 4, 0, -2}, // 0x41 'A' - {51, 3, 3, 4, 0, -2}, // 0x42 'B' - {53, 3, 3, 4, 0, -2}, // 0x43 'C' - {55, 3, 3, 4, 0, -2}, // 0x44 'D' - {57, 3, 3, 4, 0, -2}, // 0x45 'E' - {59, 3, 3, 4, 0, -2}, // 0x46 'F' - {61, 3, 3, 4, 0, -2}, // 0x47 'G' - {63, 3, 3, 4, 0, -2}, // 0x48 'H' - {65, 1, 3, 3, 1, -2}, // 0x49 'I' - {66, 3, 3, 4, 0, -2}, // 0x4A 'J' - {68, 3, 3, 4, 0, -2}, // 0x4B 'K' - {70, 3, 3, 4, 0, -2}, // 0x4C 'L' - {72, 3, 3, 4, 0, -2}, // 0x4D 'M' - {74, 3, 3, 4, 0, -2}, // 0x4E 'N' - {76, 3, 3, 4, 0, -2}, // 0x4F 'O' - {78, 3, 3, 4, 0, -2}, // 0x50 'P' - {80, 3, 3, 4, 0, -2}, // 0x51 'Q' - {82, 3, 3, 4, 0, -2}, // 0x52 'R' - {84, 3, 3, 4, 0, -2}, // 0x53 'S' - {86, 3, 3, 4, 0, -2}, // 0x54 'T' - {88, 3, 3, 4, 0, -2}, // 0x55 'U' - {90, 3, 3, 4, 0, -2}, // 0x56 'V' - {92, 3, 3, 4, 0, -2}, // 0x57 'W' - {94, 3, 3, 4, 0, -2}, // 0x58 'X' - {96, 3, 3, 4, 0, -2}, // 0x59 'Y' - {98, 3, 3, 4, 0, -2}, // 0x5A 'Z' - {100, 2, 3, 3, 0, -2}, // 0x5B '[' - {101, 3, 3, 4, 0, -2}, // 0x5C '\' - {103, 2, 3, 4, 1, -2}, // 0x5D ']' - {104, 3, 2, 4, 0, -2}, // 0x5E '^' - {105, 3, 1, 4, 0, 0}, // 0x5F '_' - {106, 2, 2, 3, 0, -2}, // 0x60 '`' - {107, 2, 2, 3, 0, -1}, // 0x61 'a' - {108, 2, 3, 3, 0, -2}, // 0x62 'b' - {109, 2, 2, 3, 0, -1}, // 0x63 'c' - {110, 2, 3, 3, 0, -2}, // 0x64 'd' - {111, 2, 2, 3, 0, -1}, // 0x65 'e' - {112, 2, 3, 3, 0, -2}, // 0x66 'f' - {113, 2, 3, 3, 0, -1}, // 0x67 'g' - {114, 2, 3, 3, 0, -2}, // 0x68 'h' - {115, 1, 2, 2, 0, -1}, // 0x69 'i' - {116, 2, 3, 3, 0, -1}, // 0x6A 'j' - {117, 3, 3, 4, 0, -2}, // 0x6B 'k' - {119, 2, 3, 3, 0, -2}, // 0x6C 'l' - {120, 3, 2, 4, 0, -1}, // 0x6D 'm' - {121, 3, 2, 4, 0, -1}, // 0x6E 'n' - {122, 2, 2, 3, 0, -1}, // 0x6F 'o' - {123, 2, 3, 3, 0, -1}, // 0x70 'p' - {124, 2, 3, 3, 0, -1}, // 0x71 'q' - {125, 2, 2, 3, 0, -1}, // 0x72 'r' - {126, 2, 2, 3, 0, -1}, // 0x73 's' - {127, 3, 3, 4, 0, -2}, // 0x74 't' - {129, 3, 2, 4, 0, -1}, // 0x75 'u' - {130, 3, 2, 4, 0, -1}, // 0x76 'v' - {131, 3, 2, 4, 0, -1}, // 0x77 'w' - {132, 2, 2, 3, 0, -1}, // 0x78 'x' - {133, 3, 3, 4, 0, -1}, // 0x79 'y' - {135, 2, 2, 3, 0, -1}, // 0x7A 'z' - {136, 3, 3, 4, 0, -2}, // 0x7B '{' - {138, 1, 4, 3, 1, -2}, // 0x7C '|' - {139, 3, 3, 4, 0, -2}, // 0x7D '}' - {141, 3, 2, 4, 0, -2}}; // 0x7E '~' - -const GFXfont Tiny3x3a2pt7b PROGMEM = {(uint8_t *)Tiny3x3a2pt7bBitmaps, - (GFXglyph *)Tiny3x3a2pt7bGlyphs, 0x20, - 0x7E, 4}; - -// Approx. 814 bytes diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/TomThumb.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/TomThumb.h deleted file mode 100644 index 2155500..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/Fonts/TomThumb.h +++ /dev/null @@ -1,477 +0,0 @@ -#pragma once -#include - -/** -** The original 3x5 font is licensed under the 3-clause BSD license: -** -** Copyright 1999 Brian J. Swetland -** Copyright 1999 Vassilii Khachaturov -** Portions (of vt100.c/vt100.h) copyright Dan Marks -** -** All rights reserved. -** -** Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions -** are met: -** 1. Redistributions of source code must retain the above copyright -** notice, this list of conditions, and the following disclaimer. -** 2. 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. -** 3. The name of the authors may not be used to endorse or promote products -** derived from this software without specific prior written permission. -** -** THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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. -** -** Modifications to Tom Thumb for improved readability are from Robey Pointer, -** see: -** http://robey.lag.net/2010/01/23/tiny-monospace-font.html -** -** The original author does not have any objection to relicensing of Robey -** Pointer's modifications (in this file) in a more permissive license. See -** the discussion at the above blog, and also here: -** http://opengameart.org/forumtopic/how-to-submit-art-using-the-3-clause-bsd-license -** -** Feb 21, 2016: Conversion from Linux BDF --> Adafruit GFX font, -** with the help of this Python script: -** https://gist.github.com/skelliam/322d421f028545f16f6d -** William Skellenger (williamj@skellenger.net) -** Twitter: @skelliam -** -** Jan 09, 2020: Bitmaps now compressed, to fix the bounding box problem, -** because non-compressed the calculated text width were wrong. -** Andreas Merkle (web@blue-andi.de) -*/ - -#define TOMTHUMB_USE_EXTENDED 0 - -const uint8_t TomThumbBitmaps[] PROGMEM = { - 0x00, /* 0x20 space */ - 0xE8, /* 0x21 exclam */ - 0xB4, /* 0x22 quotedbl */ - 0xBE, 0xFA, /* 0x23 numbersign */ - 0x79, 0xE4, /* 0x24 dollar */ - 0x85, 0x42, /* 0x25 percent */ - 0xDB, 0xD6, /* 0x26 ampersand */ - 0xC0, /* 0x27 quotesingle */ - 0x6A, 0x40, /* 0x28 parenleft */ - 0x95, 0x80, /* 0x29 parenright */ - 0xAA, 0x80, /* 0x2A asterisk */ - 0x5D, 0x00, /* 0x2B plus */ - 0x60, /* 0x2C comma */ - 0xE0, /* 0x2D hyphen */ - 0x80, /* 0x2E period */ - 0x25, 0x48, /* 0x2F slash */ - 0x76, 0xDC, /* 0x30 zero */ - 0x75, 0x40, /* 0x31 one */ - 0xC5, 0x4E, /* 0x32 two */ - 0xC5, 0x1C, /* 0x33 three */ - 0xB7, 0x92, /* 0x34 four */ - 0xF3, 0x1C, /* 0x35 five */ - 0x73, 0xDE, /* 0x36 six */ - 0xE5, 0x48, /* 0x37 seven */ - 0xF7, 0xDE, /* 0x38 eight */ - 0xF7, 0x9C, /* 0x39 nine */ - 0xA0, /* 0x3A colon */ - 0x46, /* 0x3B semicolon */ - 0x2A, 0x22, /* 0x3C less */ - 0xE3, 0x80, /* 0x3D equal */ - 0x88, 0xA8, /* 0x3E greater */ - 0xE5, 0x04, /* 0x3F question */ - 0x57, 0xC6, /* 0x40 at */ - 0x57, 0xDA, /* 0x41 A */ - 0xD7, 0x5C, /* 0x42 B */ - 0x72, 0x46, /* 0x43 C */ - 0xD6, 0xDC, /* 0x44 D */ - 0xF3, 0xCE, /* 0x45 E */ - 0xF3, 0xC8, /* 0x46 F */ - 0x73, 0xD6, /* 0x47 G */ - 0xB7, 0xDA, /* 0x48 H */ - 0xE9, 0x2E, /* 0x49 I */ - 0x24, 0xD4, /* 0x4A J */ - 0xB7, 0x5A, /* 0x4B K */ - 0x92, 0x4E, /* 0x4C L */ - 0xBF, 0xDA, /* 0x4D M */ - 0xBF, 0xFA, /* 0x4E N */ - 0x56, 0xD4, /* 0x4F O */ - 0xD7, 0x48, /* 0x50 P */ - 0x56, 0xF6, /* 0x51 Q */ - 0xD7, 0xEA, /* 0x52 R */ - 0x71, 0x1C, /* 0x53 S */ - 0xE9, 0x24, /* 0x54 T */ - 0xB6, 0xD6, /* 0x55 U */ - 0xB6, 0xA4, /* 0x56 V */ - 0xB7, 0xFA, /* 0x57 W */ - 0xB5, 0x5A, /* 0x58 X */ - 0xB5, 0x24, /* 0x59 Y */ - 0xE5, 0x4E, /* 0x5A Z */ - 0xF2, 0x4E, /* 0x5B bracketleft */ - 0x88, 0x80, /* 0x5C backslash */ - 0xE4, 0x9E, /* 0x5D bracketright */ - 0x54, /* 0x5E asciicircum */ - 0xE0, /* 0x5F underscore */ - 0x90, /* 0x60 grave */ - 0xCE, 0xF0, /* 0x61 a */ - 0x9A, 0xDC, /* 0x62 b */ - 0x72, 0x30, /* 0x63 c */ - 0x2E, 0xD6, /* 0x64 d */ - 0x77, 0x30, /* 0x65 e */ - 0x2B, 0xA4, /* 0x66 f */ - 0x77, 0x94, /* 0x67 g */ - 0x9A, 0xDA, /* 0x68 h */ - 0xB8, /* 0x69 i */ - 0x20, 0x9A, 0x80, /* 0x6A j */ - 0x97, 0x6A, /* 0x6B k */ - 0xC9, 0x2E, /* 0x6C l */ - 0xFF, 0xD0, /* 0x6D m */ - 0xD6, 0xD0, /* 0x6E n */ - 0x56, 0xA0, /* 0x6F o */ - 0xD6, 0xE8, /* 0x70 p */ - 0x76, 0xB2, /* 0x71 q */ - 0x72, 0x40, /* 0x72 r */ - 0x79, 0xE0, /* 0x73 s */ - 0x5D, 0x26, /* 0x74 t */ - 0xB6, 0xB0, /* 0x75 u */ - 0xB7, 0xA0, /* 0x76 v */ - 0xBF, 0xF0, /* 0x77 w */ - 0xA9, 0x50, /* 0x78 x */ - 0xB5, 0x94, /* 0x79 y */ - 0xEF, 0x70, /* 0x7A z */ - 0x6A, 0x26, /* 0x7B braceleft */ - 0xD8, /* 0x7C bar */ - 0xC8, 0xAC, /* 0x7D braceright */ - 0x78, /* 0x7E asciitilde */ -#if (TOMTHUMB_USE_EXTENDED) - 0xB8, /* 0xA1 exclamdown */ - 0x5E, 0x74, /* 0xA2 cent */ - 0x6B, 0xAE, /* 0xA3 sterling */ - 0xAB, 0xAA, /* 0xA4 currency */ - 0xB5, 0x74, /* 0xA5 yen */ - 0xD8, /* 0xA6 brokenbar */ - 0x6A, 0xAC, /* 0xA7 section */ - 0xA0, /* 0xA8 dieresis */ - 0x71, 0x80, /* 0xA9 copyright */ - 0x77, 0x8E, /* 0xAA ordfeminine */ - 0x64, /* 0xAB guillemotleft */ - 0xE4, /* 0xAC logicalnot */ - 0xC0, /* 0xAD softhyphen */ - 0xDA, 0x80, /* 0xAE registered */ - 0xE0, /* 0xAF macron */ - 0x55, 0x00, /* 0xB0 degree */ - 0x5D, 0x0E, /* 0xB1 plusminus */ - 0xC9, 0x80, /* 0xB2 twosuperior */ - 0xEF, 0x80, /* 0xB3 threesuperior */ - 0x60, /* 0xB4 acute */ - 0xB6, 0xE8, /* 0xB5 mu */ - 0x75, 0xB6, /* 0xB6 paragraph */ - 0xFF, 0x80, /* 0xB7 periodcentered */ - 0x47, 0x00, /* 0xB8 cedilla */ - 0xE0, /* 0xB9 onesuperior */ - 0x55, 0x0E, /* 0xBA ordmasculine */ - 0x98, /* 0xBB guillemotright */ - 0x90, 0x32, /* 0xBC onequarter */ - 0x90, 0x66, /* 0xBD onehalf */ - 0xD8, 0x32, /* 0xBE threequarters */ - 0x41, 0x4E, /* 0xBF questiondown */ - 0x45, 0x7A, /* 0xC0 Agrave */ - 0x51, 0x7A, /* 0xC1 Aacute */ - 0xE1, 0x7A, /* 0xC2 Acircumflex */ - 0x79, 0x7A, /* 0xC3 Atilde */ - 0xAA, 0xFA, /* 0xC4 Adieresis */ - 0xDA, 0xFA, /* 0xC5 Aring */ - 0x7B, 0xEE, /* 0xC6 AE */ - 0x72, 0x32, 0x80, /* 0xC7 Ccedilla */ - 0x47, 0xEE, /* 0xC8 Egrave */ - 0x53, 0xEE, /* 0xC9 Eacute */ - 0xE3, 0xEE, /* 0xCA Ecircumflex */ - 0xA3, 0xEE, /* 0xCB Edieresis */ - 0x47, 0xAE, /* 0xCC Igrave */ - 0x53, 0xAE, /* 0xCD Iacute */ - 0xE3, 0xAE, /* 0xCE Icircumflex */ - 0xA3, 0xAE, /* 0xCF Idieresis */ - 0xD7, 0xDC, /* 0xD0 Eth */ - 0xCE, 0xFA, /* 0xD1 Ntilde */ - 0x47, 0xDE, /* 0xD2 Ograve */ - 0x53, 0xDE, /* 0xD3 Oacute */ - 0xE3, 0xDE, /* 0xD4 Ocircumflex */ - 0xCF, 0xDE, /* 0xD5 Otilde */ - 0xA3, 0xDE, /* 0xD6 Odieresis */ - 0xAA, 0x80, /* 0xD7 multiply */ - 0x77, 0xDC, /* 0xD8 Oslash */ - 0x8A, 0xDE, /* 0xD9 Ugrave */ - 0x2A, 0xDE, /* 0xDA Uacute */ - 0xE2, 0xDE, /* 0xDB Ucircumflex */ - 0xA2, 0xDE, /* 0xDC Udieresis */ - 0x2A, 0xF4, /* 0xDD Yacute */ - 0x9E, 0xF8, /* 0xDE Thorn */ - 0x77, 0x5D, 0x00, /* 0xDF germandbls */ - 0x45, 0xDE, /* 0xE0 agrave */ - 0x51, 0xDE, /* 0xE1 aacute */ - 0xE1, 0xDE, /* 0xE2 acircumflex */ - 0x79, 0xDE, /* 0xE3 atilde */ - 0xA1, 0xDE, /* 0xE4 adieresis */ - 0x6D, 0xDE, /* 0xE5 aring */ - 0x7F, 0xE0, /* 0xE6 ae */ - 0x71, 0x94, /* 0xE7 ccedilla */ - 0x45, 0xF6, /* 0xE8 egrave */ - 0x51, 0xF6, /* 0xE9 eacute */ - 0xE1, 0xF6, /* 0xEA ecircumflex */ - 0xA1, 0xF6, /* 0xEB edieresis */ - 0x9A, 0x80, /* 0xEC igrave */ - 0x65, 0x40, /* 0xED iacute */ - 0xE1, 0x24, /* 0xEE icircumflex */ - 0xA1, 0x24, /* 0xEF idieresis */ - 0x79, 0xD6, /* 0xF0 eth */ - 0xCF, 0x5A, /* 0xF1 ntilde */ - 0x45, 0x54, /* 0xF2 ograve */ - 0x51, 0x54, /* 0xF3 oacute */ - 0xE1, 0x54, /* 0xF4 ocircumflex */ - 0xCD, 0x54, /* 0xF5 otilde */ - 0xA1, 0x54, /* 0xF6 odieresis */ - 0x43, 0x84, /* 0xF7 divide */ - 0x7E, 0xE0, /* 0xF8 oslash */ - 0x8A, 0xD6, /* 0xF9 ugrave */ - 0x2A, 0xD6, /* 0xFA uacute */ - 0xE2, 0xD6, /* 0xFB ucircumflex */ - 0xA2, 0xD6, /* 0xFC udieresis */ - 0x2A, 0xB2, 0x80, /* 0xFD yacute */ - 0x9A, 0xE8, /* 0xFE thorn */ - 0xA2, 0xB2, 0x80, /* 0xFF ydieresis */ - 0x00, /* 0x11D gcircumflex */ - 0x7B, 0xE6, /* 0x152 OE */ - 0x7F, 0x70, /* 0x153 oe */ - 0xAF, 0x3C, /* 0x160 Scaron */ - 0xAF, 0x3C, /* 0x161 scaron */ - 0xA2, 0xA4, /* 0x178 Ydieresis */ - 0xBD, 0xEE, /* 0x17D Zcaron */ - 0xBD, 0xEE, /* 0x17E zcaron */ - 0x00, /* 0xEA4 uni0EA4 */ - 0x00, /* 0x13A0 uni13A0 */ - 0x80, /* 0x2022 bullet */ - 0xA0, /* 0x2026 ellipsis */ - 0x7F, 0xE6, /* 0x20AC Euro */ - 0xEA, 0xAA, 0xE0, /* 0xFFFD uniFFFD */ -#endif /* (TOMTHUMB_USE_EXTENDED) */ -}; - -/* {offset, width, height, advance cursor, x offset, y offset} */ -const GFXglyph TomThumbGlyphs[] PROGMEM = { - {0, 1, 1, 2, 0, -5}, /* 0x20 space */ - {1, 1, 5, 2, 0, -5}, /* 0x21 exclam */ - {2, 3, 2, 4, 0, -5}, /* 0x22 quotedbl */ - {3, 3, 5, 4, 0, -5}, /* 0x23 numbersign */ - {5, 3, 5, 4, 0, -5}, /* 0x24 dollar */ - {7, 3, 5, 4, 0, -5}, /* 0x25 percent */ - {9, 3, 5, 4, 0, -5}, /* 0x26 ampersand */ - {11, 1, 2, 2, 0, -5}, /* 0x27 quotesingle */ - {12, 2, 5, 3, 0, -5}, /* 0x28 parenleft */ - {14, 2, 5, 3, 0, -5}, /* 0x29 parenright */ - {16, 3, 3, 4, 0, -5}, /* 0x2A asterisk */ - {18, 3, 3, 4, 0, -4}, /* 0x2B plus */ - {20, 2, 2, 3, 0, -2}, /* 0x2C comma */ - {21, 3, 1, 4, 0, -3}, /* 0x2D hyphen */ - {22, 1, 1, 2, 0, -1}, /* 0x2E period */ - {23, 3, 5, 4, 0, -5}, /* 0x2F slash */ - {25, 3, 5, 4, 0, -5}, /* 0x30 zero */ - {27, 2, 5, 3, 0, -5}, /* 0x31 one */ - {29, 3, 5, 4, 0, -5}, /* 0x32 two */ - {31, 3, 5, 4, 0, -5}, /* 0x33 three */ - {33, 3, 5, 4, 0, -5}, /* 0x34 four */ - {35, 3, 5, 4, 0, -5}, /* 0x35 five */ - {37, 3, 5, 4, 0, -5}, /* 0x36 six */ - {39, 3, 5, 4, 0, -5}, /* 0x37 seven */ - {41, 3, 5, 4, 0, -5}, /* 0x38 eight */ - {43, 3, 5, 4, 0, -5}, /* 0x39 nine */ - {45, 1, 3, 2, 0, -4}, /* 0x3A colon */ - {46, 2, 4, 3, 0, -4}, /* 0x3B semicolon */ - {47, 3, 5, 4, 0, -5}, /* 0x3C less */ - {49, 3, 3, 4, 0, -4}, /* 0x3D equal */ - {51, 3, 5, 4, 0, -5}, /* 0x3E greater */ - {53, 3, 5, 4, 0, -5}, /* 0x3F question */ - {55, 3, 5, 4, 0, -5}, /* 0x40 at */ - {57, 3, 5, 4, 0, -5}, /* 0x41 A */ - {59, 3, 5, 4, 0, -5}, /* 0x42 B */ - {61, 3, 5, 4, 0, -5}, /* 0x43 C */ - {63, 3, 5, 4, 0, -5}, /* 0x44 D */ - {65, 3, 5, 4, 0, -5}, /* 0x45 E */ - {67, 3, 5, 4, 0, -5}, /* 0x46 F */ - {69, 3, 5, 4, 0, -5}, /* 0x47 G */ - {71, 3, 5, 4, 0, -5}, /* 0x48 H */ - {73, 3, 5, 4, 0, -5}, /* 0x49 I */ - {75, 3, 5, 4, 0, -5}, /* 0x4A J */ - {77, 3, 5, 4, 0, -5}, /* 0x4B K */ - {79, 3, 5, 4, 0, -5}, /* 0x4C L */ - {81, 3, 5, 4, 0, -5}, /* 0x4D M */ - {83, 3, 5, 4, 0, -5}, /* 0x4E N */ - {85, 3, 5, 4, 0, -5}, /* 0x4F O */ - {87, 3, 5, 4, 0, -5}, /* 0x50 P */ - {89, 3, 5, 4, 0, -5}, /* 0x51 Q */ - {91, 3, 5, 4, 0, -5}, /* 0x52 R */ - {93, 3, 5, 4, 0, -5}, /* 0x53 S */ - {95, 3, 5, 4, 0, -5}, /* 0x54 T */ - {97, 3, 5, 4, 0, -5}, /* 0x55 U */ - {99, 3, 5, 4, 0, -5}, /* 0x56 V */ - {101, 3, 5, 4, 0, -5}, /* 0x57 W */ - {103, 3, 5, 4, 0, -5}, /* 0x58 X */ - {105, 3, 5, 4, 0, -5}, /* 0x59 Y */ - {107, 3, 5, 4, 0, -5}, /* 0x5A Z */ - {109, 3, 5, 4, 0, -5}, /* 0x5B bracketleft */ - {111, 3, 3, 4, 0, -4}, /* 0x5C backslash */ - {113, 3, 5, 4, 0, -5}, /* 0x5D bracketright */ - {115, 3, 2, 4, 0, -5}, /* 0x5E asciicircum */ - {116, 3, 1, 4, 0, -1}, /* 0x5F underscore */ - {117, 2, 2, 3, 0, -5}, /* 0x60 grave */ - {118, 3, 4, 4, 0, -4}, /* 0x61 a */ - {120, 3, 5, 4, 0, -5}, /* 0x62 b */ - {122, 3, 4, 4, 0, -4}, /* 0x63 c */ - {124, 3, 5, 4, 0, -5}, /* 0x64 d */ - {126, 3, 4, 4, 0, -4}, /* 0x65 e */ - {128, 3, 5, 4, 0, -5}, /* 0x66 f */ - {130, 3, 5, 4, 0, -4}, /* 0x67 g */ - {132, 3, 5, 4, 0, -5}, /* 0x68 h */ - {134, 1, 5, 2, 0, -5}, /* 0x69 i */ - {135, 3, 6, 4, 0, -5}, /* 0x6A j */ - {138, 3, 5, 4, 0, -5}, /* 0x6B k */ - {140, 3, 5, 4, 0, -5}, /* 0x6C l */ - {142, 3, 4, 4, 0, -4}, /* 0x6D m */ - {144, 3, 4, 4, 0, -4}, /* 0x6E n */ - {146, 3, 4, 4, 0, -4}, /* 0x6F o */ - {148, 3, 5, 4, 0, -4}, /* 0x70 p */ - {150, 3, 5, 4, 0, -4}, /* 0x71 q */ - {152, 3, 4, 4, 0, -4}, /* 0x72 r */ - {154, 3, 4, 4, 0, -4}, /* 0x73 s */ - {156, 3, 5, 4, 0, -5}, /* 0x74 t */ - {158, 3, 4, 4, 0, -4}, /* 0x75 u */ - {160, 3, 4, 4, 0, -4}, /* 0x76 v */ - {162, 3, 4, 4, 0, -4}, /* 0x77 w */ - {164, 3, 4, 4, 0, -4}, /* 0x78 x */ - {166, 3, 5, 4, 0, -4}, /* 0x79 y */ - {168, 3, 4, 4, 0, -4}, /* 0x7A z */ - {170, 3, 5, 4, 0, -5}, /* 0x7B braceleft */ - {172, 1, 5, 2, 0, -5}, /* 0x7C bar */ - {173, 3, 5, 4, 0, -5}, /* 0x7D braceright */ - {175, 3, 2, 4, 0, -5}, /* 0x7E asciitilde */ -#if (TOMTHUMB_USE_EXTENDED) - {176, 1, 5, 2, 0, -5}, /* 0xA1 exclamdown */ - {177, 3, 5, 4, 0, -5}, /* 0xA2 cent */ - {179, 3, 5, 4, 0, -5}, /* 0xA3 sterling */ - {181, 3, 5, 4, 0, -5}, /* 0xA4 currency */ - {183, 3, 5, 4, 0, -5}, /* 0xA5 yen */ - {185, 1, 5, 2, 0, -5}, /* 0xA6 brokenbar */ - {186, 3, 5, 4, 0, -5}, /* 0xA7 section */ - {188, 3, 1, 4, 0, -5}, /* 0xA8 dieresis */ - {189, 3, 3, 4, 0, -5}, /* 0xA9 copyright */ - {191, 3, 5, 4, 0, -5}, /* 0xAA ordfeminine */ - {193, 2, 3, 3, 0, -5}, /* 0xAB guillemotleft */ - {194, 3, 2, 4, 0, -4}, /* 0xAC logicalnot */ - {195, 2, 1, 3, 0, -3}, /* 0xAD softhyphen */ - {196, 3, 3, 4, 0, -5}, /* 0xAE registered */ - {198, 3, 1, 4, 0, -5}, /* 0xAF macron */ - {199, 3, 3, 4, 0, -5}, /* 0xB0 degree */ - {201, 3, 5, 4, 0, -5}, /* 0xB1 plusminus */ - {203, 3, 3, 4, 0, -5}, /* 0xB2 twosuperior */ - {205, 3, 3, 4, 0, -5}, /* 0xB3 threesuperior */ - {207, 2, 2, 3, 0, -5}, /* 0xB4 acute */ - {208, 3, 5, 4, 0, -5}, /* 0xB5 mu */ - {210, 3, 5, 4, 0, -5}, /* 0xB6 paragraph */ - {212, 3, 3, 4, 0, -4}, /* 0xB7 periodcentered */ - {214, 3, 3, 4, 0, -3}, /* 0xB8 cedilla */ - {216, 1, 3, 2, 0, -5}, /* 0xB9 onesuperior */ - {217, 3, 5, 4, 0, -5}, /* 0xBA ordmasculine */ - {219, 2, 3, 3, 0, -5}, /* 0xBB guillemotright */ - {220, 3, 5, 4, 0, -5}, /* 0xBC onequarter */ - {222, 3, 5, 4, 0, -5}, /* 0xBD onehalf */ - {224, 3, 5, 4, 0, -5}, /* 0xBE threequarters */ - {226, 3, 5, 4, 0, -5}, /* 0xBF questiondown */ - {228, 3, 5, 4, 0, -5}, /* 0xC0 Agrave */ - {230, 3, 5, 4, 0, -5}, /* 0xC1 Aacute */ - {232, 3, 5, 4, 0, -5}, /* 0xC2 Acircumflex */ - {234, 3, 5, 4, 0, -5}, /* 0xC3 Atilde */ - {236, 3, 5, 4, 0, -5}, /* 0xC4 Adieresis */ - {238, 3, 5, 4, 0, -5}, /* 0xC5 Aring */ - {240, 3, 5, 4, 0, -5}, /* 0xC6 AE */ - {242, 3, 6, 4, 0, -5}, /* 0xC7 Ccedilla */ - {245, 3, 5, 4, 0, -5}, /* 0xC8 Egrave */ - {247, 3, 5, 4, 0, -5}, /* 0xC9 Eacute */ - {249, 3, 5, 4, 0, -5}, /* 0xCA Ecircumflex */ - {251, 3, 5, 4, 0, -5}, /* 0xCB Edieresis */ - {253, 3, 5, 4, 0, -5}, /* 0xCC Igrave */ - {255, 3, 5, 4, 0, -5}, /* 0xCD Iacute */ - {257, 3, 5, 4, 0, -5}, /* 0xCE Icircumflex */ - {259, 3, 5, 4, 0, -5}, /* 0xCF Idieresis */ - {261, 3, 5, 4, 0, -5}, /* 0xD0 Eth */ - {263, 3, 5, 4, 0, -5}, /* 0xD1 Ntilde */ - {265, 3, 5, 4, 0, -5}, /* 0xD2 Ograve */ - {267, 3, 5, 4, 0, -5}, /* 0xD3 Oacute */ - {269, 3, 5, 4, 0, -5}, /* 0xD4 Ocircumflex */ - {271, 3, 5, 4, 0, -5}, /* 0xD5 Otilde */ - {273, 3, 5, 4, 0, -5}, /* 0xD6 Odieresis */ - {275, 3, 3, 4, 0, -4}, /* 0xD7 multiply */ - {277, 3, 5, 4, 0, -5}, /* 0xD8 Oslash */ - {279, 3, 5, 4, 0, -5}, /* 0xD9 Ugrave */ - {281, 3, 5, 4, 0, -5}, /* 0xDA Uacute */ - {283, 3, 5, 4, 0, -5}, /* 0xDB Ucircumflex */ - {285, 3, 5, 4, 0, -5}, /* 0xDC Udieresis */ - {287, 3, 5, 4, 0, -5}, /* 0xDD Yacute */ - {289, 3, 5, 4, 0, -5}, /* 0xDE Thorn */ - {291, 3, 6, 4, 0, -5}, /* 0xDF germandbls */ - {294, 3, 5, 4, 0, -5}, /* 0xE0 agrave */ - {296, 3, 5, 4, 0, -5}, /* 0xE1 aacute */ - {298, 3, 5, 4, 0, -5}, /* 0xE2 acircumflex */ - {300, 3, 5, 4, 0, -5}, /* 0xE3 atilde */ - {302, 3, 5, 4, 0, -5}, /* 0xE4 adieresis */ - {304, 3, 5, 4, 0, -5}, /* 0xE5 aring */ - {306, 3, 4, 4, 0, -4}, /* 0xE6 ae */ - {308, 3, 5, 4, 0, -4}, /* 0xE7 ccedilla */ - {310, 3, 5, 4, 0, -5}, /* 0xE8 egrave */ - {312, 3, 5, 4, 0, -5}, /* 0xE9 eacute */ - {314, 3, 5, 4, 0, -5}, /* 0xEA ecircumflex */ - {316, 3, 5, 4, 0, -5}, /* 0xEB edieresis */ - {318, 2, 5, 3, 0, -5}, /* 0xEC igrave */ - {320, 2, 5, 3, 0, -5}, /* 0xED iacute */ - {322, 3, 5, 4, 0, -5}, /* 0xEE icircumflex */ - {324, 3, 5, 4, 0, -5}, /* 0xEF idieresis */ - {326, 3, 5, 4, 0, -5}, /* 0xF0 eth */ - {328, 3, 5, 4, 0, -5}, /* 0xF1 ntilde */ - {330, 3, 5, 4, 0, -5}, /* 0xF2 ograve */ - {332, 3, 5, 4, 0, -5}, /* 0xF3 oacute */ - {334, 3, 5, 4, 0, -5}, /* 0xF4 ocircumflex */ - {336, 3, 5, 4, 0, -5}, /* 0xF5 otilde */ - {338, 3, 5, 4, 0, -5}, /* 0xF6 odieresis */ - {340, 3, 5, 4, 0, -5}, /* 0xF7 divide */ - {342, 3, 4, 4, 0, -4}, /* 0xF8 oslash */ - {344, 3, 5, 4, 0, -5}, /* 0xF9 ugrave */ - {346, 3, 5, 4, 0, -5}, /* 0xFA uacute */ - {348, 3, 5, 4, 0, -5}, /* 0xFB ucircumflex */ - {350, 3, 5, 4, 0, -5}, /* 0xFC udieresis */ - {352, 3, 6, 4, 0, -5}, /* 0xFD yacute */ - {355, 3, 5, 4, 0, -4}, /* 0xFE thorn */ - {357, 3, 6, 4, 0, -5}, /* 0xFF ydieresis */ - {360, 1, 1, 2, 0, -1}, /* 0x11D gcircumflex */ - {361, 3, 5, 4, 0, -5}, /* 0x152 OE */ - {363, 3, 4, 4, 0, -4}, /* 0x153 oe */ - {365, 3, 5, 4, 0, -5}, /* 0x160 Scaron */ - {367, 3, 5, 4, 0, -5}, /* 0x161 scaron */ - {369, 3, 5, 4, 0, -5}, /* 0x178 Ydieresis */ - {371, 3, 5, 4, 0, -5}, /* 0x17D Zcaron */ - {373, 3, 5, 4, 0, -5}, /* 0x17E zcaron */ - {375, 1, 1, 2, 0, -1}, /* 0xEA4 uni0EA4 */ - {376, 1, 1, 2, 0, -1}, /* 0x13A0 uni13A0 */ - {377, 1, 1, 2, 0, -3}, /* 0x2022 bullet */ - {378, 3, 1, 4, 0, -1}, /* 0x2026 ellipsis */ - {379, 3, 5, 4, 0, -5}, /* 0x20AC Euro */ - {381, 4, 5, 5, 0, -5}, /* 0xFFFD uniFFFD */ -#endif /* (TOMTHUMB_USE_EXTENDED) */ -}; - -const GFXfont TomThumb PROGMEM = {(uint8_t *)TomThumbBitmaps, - (GFXglyph *)TomThumbGlyphs, 0x20, 0x7E, 6}; diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/README.md b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/README.md deleted file mode 100644 index 6f36460..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# Adafruit GFX Library ![Build Status](https://github.com/adafruit/Adafruit-GFX-Library/workflows/Arduino%20Library%20CI/badge.svg) - -This is the core graphics library for all our displays, providing a common set of graphics primitives (points, lines, circles, etc.). It needs to be paired with a hardware-specific library for each display device we carry (to handle the lower-level functions). - -Adafruit invests time and resources providing this open source code, please support Adafruit and open-source hardware by purchasing products from Adafruit! - -Written by Limor Fried/Ladyada for Adafruit Industries. -BSD license, check license.txt for more information. -All text above must be included in any redistribution. - -Recent Arduino IDE releases include the Library Manager for easy installation. Otherwise, to download, click the DOWNLOAD ZIP button, uncompress and rename the uncompressed folder Adafruit_GFX. Confirm that the Adafruit_GFX folder contains Adafruit_GFX.cpp and Adafruit_GFX.h. Place the Adafruit_GFX library folder your ArduinoSketchFolder/Libraries/ folder. You may need to create the Libraries subfolder if its your first library. Restart the IDE. - -**You will also need to install the latest Adafruit BusIO library.** Search for "Adafruit BusIO" in the library manager, or install by hand from https://github.com/adafruit/Adafruit_BusIO - -# Useful Resources - -- Image2Code: This is a handy Java GUI utility to convert a BMP file into the array code necessary to display the image with the drawBitmap function. Check out the code at ehubin's GitHub repository: https://github.com/ehubin/Adafruit-GFX-Library/tree/master/Img2Code - -- drawXBitmap function: You can use the GIMP photo editor to save a .xbm file and use the array saved in the file to draw a bitmap with the drawXBitmap function. See the pull request here for more details: https://github.com/adafruit/Adafruit-GFX-Library/pull/31 - -- 'Fonts' folder contains bitmap fonts for use with recent (1.1 and later) Adafruit_GFX. To use a font in your Arduino sketch, \#include the corresponding .h file and pass address of GFXfont struct to setFont(). Pass NULL to revert to 'classic' fixed-space bitmap font. - -- 'fontconvert' folder contains a command-line tool for converting TTF fonts to Adafruit_GFX header format. - -- You can also use [this GFX Font Customiser tool](https://github.com/tchapi/Adafruit-GFX-Font-Customiser) (_web version [here](https://tchapi.github.io/Adafruit-GFX-Font-Customiser/)_) to customize or correct the output from [fontconvert](https://github.com/adafruit/Adafruit-GFX-Library/tree/master/fontconvert), and create fonts with only a subset of characters to optimize size. - ---- - -### Roadmap - -The PRIME DIRECTIVE is to maintain backward compatibility with existing Arduino sketches -- many are hosted elsewhere and don't track changes here, some are in print and can never be changed! This "little" library has grown organically over time and sometimes we paint ourselves into a design corner and just have to live with it or add progressively more ungainly workarounds. - -**We are grateful for everyone's contributions, but pull requests for the following will NOT be merged:** - -- Additional or incompatible font formats (see Prime Directive above). There are already two formats and the code is quite bloaty there as it is. This also creates liabilities for tools and documentation. What's there isn't perfect but it does the job. - -- Additional or incompatible bitmap formats, for similar reasons. It's getting messy. - -- Adding background color to custom fonts to erase prior screen contents. The ONLY acceptable methods are to clear the area with a filled rect, or (to avoid flicker) draw text into a GFXcanvas1 and copy to screen with drawBitmap() w/background color. This is on purpose and by design. We've discussed this. Glyphs can overlap. - -- Scrolling, whether hardware- or software-based. Such implementations tend to rely on hardware-specific features (not universally available), read access to the screen's framebuffer (ditto) and/or the addition of virtual functions in GFX which them must be added in *every* subclass, of which there are many. The GFX API is largely "set" at this point and this is just a limitation we live with now. - -- Please don't reformat code for the sake of reformatting code. The resulting large "visual diff" makes it impossible to untangle actual bug fixes from merely rearranged lines. clang-format will be the final arbiter. - -- Please no more pentagram-drawing PRs. Any oddly-specific drawing functions can go in your own code and aren't helpful in a library context. - -If you *must* have one of these features, consider creating a fork with the features required for your project...it's easy to keep synced with the upstream code. diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/component.mk b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/component.mk deleted file mode 100644 index 049f190..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/component.mk +++ /dev/null @@ -1 +0,0 @@ -COMPONENT_ADD_INCLUDEDIRS = . diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino deleted file mode 100644 index d4e3370..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino +++ /dev/null @@ -1,113 +0,0 @@ -/*** -This example is intended to demonstrate the use of getPixel() versus -getRawPixel() and the fast horizontal and vertical drawing routines -in the GFXcanvas family of classes, - -When using the GFXcanvas* classes as the image buffer for a hardware driver, -there is a need to get individual pixel color values at given physical -coordinates. Rather than subclasses or client classes call getBuffer() and -reinterpret the byte layout of the buffer, two methods are added to each of the -GFXcanvas* classes that allow fetching of specific pixel values. - - * getPixel(x, y) : Gets the pixel color value at the rotated coordinates in -the image. - * getRawPixel(x,y) : Gets the pixel color value at the unrotated coordinates -in the image. This is useful for getting the pixel value to map to a hardware -pixel location. This method was made protected as only the hardware driver -should be accessing it. - -The GFXcanvas*SerialDemo classes in this example will print to Serial the -contents of the underlying GFXcanvas buffer in both the current rotated layout -and the underlying physical layout. -***/ - -#include "GFXcanvasSerialDemo.h" -#include - -void setup() { - Serial.begin(115200); - - // first create a rectangular GFXcanvas8SerialDemo object and draw to it - GFXcanvas8SerialDemo demo8(21, 11); - - demo8.fillScreen(0x00); - demo8.setRotation(1); // now canvas is 11x21 - demo8.fillCircle(5, 10, 5, 0xAA); - demo8.writeFastHLine(0, 0, 11, 0x11); - demo8.writeFastHLine(10, 10, -11, 0x22); - demo8.writeFastHLine(0, 20, 11, 0x33); - demo8.writeFastVLine(0, 0, 21, 0x44); - demo8.writeFastVLine(10, 20, -21, 0x55); - - Serial.println("Demonstrating GFXcanvas rotated and raw pixels.\n"); - - // print it out rotated - - Serial.println("The canvas's content in the rotation of '0':\n"); - demo8.setRotation(0); - demo8.print(true); - Serial.println("\n"); - - Serial.println("The canvas's content in the rotation of '1' (which is what " - "it was drawn in):\n"); - demo8.setRotation(1); - demo8.print(true); - Serial.println("\n"); - - Serial.println("The canvas's content in the rotation of '2':\n"); - demo8.setRotation(2); - demo8.print(true); - Serial.println("\n"); - - Serial.println("The canvas's content in the rotation of '3':\n"); - demo8.setRotation(3); - demo8.print(true); - Serial.println("\n"); - - // print it out unrotated - Serial.println("The canvas's content in it's raw, physical layout:\n"); - demo8.print(false); - Serial.println("\n"); - - // Demonstrate GFXcanvas1SerialDemo - - GFXcanvas1SerialDemo demo1(21, 11); - demo1.fillScreen(0); - demo1.setRotation(0); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(1); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(2); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(3); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(1); - demo1.fillRect(3, 8, 5, 5, 1); - - Serial.println("\nThe GFXcanvas1 raw content after drawing a fast horizontal " - "line in each rotation:\n"); - demo1.print(false); - Serial.println("\n"); - - // Demonstrate GFXcanvas16SerialDemo - - GFXcanvas16SerialDemo demo16(21, 11); - demo16.fillScreen(0); - demo16.setRotation(0); - demo16.writeFastHLine(0, 0, 9, 0x1111); - demo16.setRotation(1); - demo16.writeFastHLine(0, 0, 9, 0x2222); - demo16.setRotation(2); - demo16.writeFastHLine(0, 0, 9, 0x3333); - demo16.setRotation(3); - demo16.writeFastHLine(0, 0, 9, 0x4444); - demo16.setRotation(1); - demo16.fillRect(3, 8, 5, 5, 0x8888); - - Serial.println("\nThe GFXcanvas16 raw content after drawing a fast " - "horizontal line in each rotation:\n"); - demo16.print(false); - Serial.println("\n"); -} - -void loop() {} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp deleted file mode 100644 index ed83a96..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp +++ /dev/null @@ -1,92 +0,0 @@ -#include "GFXcanvasSerialDemo.h" -#include - -GFXcanvas1SerialDemo::GFXcanvas1SerialDemo(uint16_t w, uint16_t h) - : GFXcanvas1(w, h) {} - -void GFXcanvas1SerialDemo::print(bool rotated) { - char pixel_buffer[8]; - uint16_t width, height; - - if (rotated) { - width = this->width(); - height = this->height(); - } else { - width = this->WIDTH; - height = this->HEIGHT; - } - - for (uint16_t y = 0; y < height; y++) { - for (uint16_t x = 0; x < width; x++) { - bool pixel; - if (rotated) { - pixel = this->getPixel(x, y); - } else { - pixel = this->getRawPixel(x, y); - } - sprintf(pixel_buffer, " %d", pixel); - Serial.print(pixel_buffer); - } - Serial.print("\n"); - } -} - -GFXcanvas8SerialDemo::GFXcanvas8SerialDemo(uint16_t w, uint16_t h) - : GFXcanvas8(w, h) {} - -void GFXcanvas8SerialDemo::print(bool rotated) { - char pixel_buffer[8]; - uint16_t width, height; - - if (rotated) { - width = this->width(); - height = this->height(); - } else { - width = this->WIDTH; - height = this->HEIGHT; - } - - for (uint16_t y = 0; y < height; y++) { - for (uint16_t x = 0; x < width; x++) { - uint8_t pixel; - if (rotated) { - pixel = this->getPixel(x, y); - } else { - pixel = this->getRawPixel(x, y); - } - sprintf(pixel_buffer, " %02x", pixel); - Serial.print(pixel_buffer); - } - Serial.print("\n"); - } -} - -GFXcanvas16SerialDemo::GFXcanvas16SerialDemo(uint16_t w, uint16_t h) - : GFXcanvas16(w, h) {} - -void GFXcanvas16SerialDemo::print(bool rotated) { - char pixel_buffer[8]; - uint16_t width, height; - - if (rotated) { - width = this->width(); - height = this->height(); - } else { - width = this->WIDTH; - height = this->HEIGHT; - } - - for (uint16_t y = 0; y < height; y++) { - for (uint16_t x = 0; x < width; x++) { - uint16_t pixel; - if (rotated) { - pixel = this->getPixel(x, y); - } else { - pixel = this->getRawPixel(x, y); - } - sprintf(pixel_buffer, " %04x", pixel); - Serial.print(pixel_buffer); - } - Serial.print("\n"); - } -} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h deleted file mode 100644 index 80589d9..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef __GFXcanvasSerialDemo__ -#define __GFXcanvasSerialDemo__ -#include - -/**********************************************************************/ -/*! - @brief Demonstrates using the GFXconvas classes as the backing store - for a device driver. -*/ -/**********************************************************************/ -class GFXcanvas1SerialDemo : public GFXcanvas1 { -public: - GFXcanvas1SerialDemo(uint16_t w, uint16_t h); - - /**********************************************************************/ - /*! - @brief Prints the current contents of the canvas to Serial - @param rotated true to print according to the current GFX rotation, - false to print to the native rotation of the canvas (or unrotated). - */ - /**********************************************************************/ - void print(bool rotated); -}; - -/**********************************************************************/ -/*! - @brief Demonstrates using the GFXconvas classes as the backing store - for a device driver. -*/ -/**********************************************************************/ -class GFXcanvas8SerialDemo : public GFXcanvas8 { -public: - GFXcanvas8SerialDemo(uint16_t w, uint16_t h); - - /**********************************************************************/ - /*! - @brief Prints the current contents of the canvas to Serial - @param rotated true to print according to the current GFX rotation, - false to print to the native rotation of the canvas (or unrotated). - */ - /**********************************************************************/ - void print(bool rotated); -}; - -/**********************************************************************/ -/*! - @brief Demonstrates using the GFXconvas classes as the backing store - for a device driver. -*/ -/**********************************************************************/ -class GFXcanvas16SerialDemo : public GFXcanvas16 { -public: - GFXcanvas16SerialDemo(uint16_t w, uint16_t h); - - /**********************************************************************/ - /*! - @brief Prints the current contents of the canvas to Serial - @param rotated true to print according to the current GFX rotation, - false to print to the native rotation of the canvas (or unrotated). - */ - /**********************************************************************/ - void print(bool rotated); -}; - -#endif // __GFXcanvasSerialDemo__ diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino deleted file mode 100644 index d141839..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino +++ /dev/null @@ -1,365 +0,0 @@ -/*************************************************** - This is our GFX example for the Adafruit ILI9341 Breakout and Shield - ----> http://www.adafruit.com/products/1651 - - Check out the links above for our tutorials and wiring diagrams - These displays use SPI to communicate, 4 or 5 pins are required to - interface (RST is optional) - Adafruit invests time and resources providing this open source code, - please support Adafruit and open-source hardware by purchasing - products from Adafruit! - - Written by Limor Fried/Ladyada for Adafruit Industries. - MIT license, all text above must be included in any redistribution - ****************************************************/ - - -#include "SPI.h" -#include "Adafruit_GFX.h" -#include "Adafruit_ILI9341.h" - -// For the Adafruit shield, these are the default. -#define TFT_DC 9 -#define TFT_CS 10 - -// Use hardware SPI (on Uno, #13, #12, #11) and the above for CS/DC -Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC); -// If using the breakout, change pins as desired -//Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_MOSI, TFT_CLK, TFT_RST, TFT_MISO); - -void setup() { - Serial.begin(9600); - Serial.println("ILI9341 Test!"); - - tft.begin(); - - // read diagnostics (optional but can help debug problems) - uint8_t x = tft.readcommand8(ILI9341_RDMODE); - Serial.print("Display Power Mode: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDMADCTL); - Serial.print("MADCTL Mode: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDPIXFMT); - Serial.print("Pixel Format: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDIMGFMT); - Serial.print("Image Format: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDSELFDIAG); - Serial.print("Self Diagnostic: 0x"); Serial.println(x, HEX); - - Serial.println(F("Benchmark Time (microseconds)")); - delay(10); - Serial.print(F("Screen fill ")); - Serial.println(testFillScreen()); - delay(500); - - Serial.print(F("Text ")); - Serial.println(testText()); - delay(3000); - - Serial.print(F("Lines ")); - Serial.println(testLines(ILI9341_CYAN)); - delay(500); - - Serial.print(F("Horiz/Vert Lines ")); - Serial.println(testFastLines(ILI9341_RED, ILI9341_BLUE)); - delay(500); - - Serial.print(F("Rectangles (outline) ")); - Serial.println(testRects(ILI9341_GREEN)); - delay(500); - - Serial.print(F("Rectangles (filled) ")); - Serial.println(testFilledRects(ILI9341_YELLOW, ILI9341_MAGENTA)); - delay(500); - - Serial.print(F("Circles (filled) ")); - Serial.println(testFilledCircles(10, ILI9341_MAGENTA)); - - Serial.print(F("Circles (outline) ")); - Serial.println(testCircles(10, ILI9341_WHITE)); - delay(500); - - Serial.print(F("Triangles (outline) ")); - Serial.println(testTriangles()); - delay(500); - - Serial.print(F("Triangles (filled) ")); - Serial.println(testFilledTriangles()); - delay(500); - - Serial.print(F("Rounded rects (outline) ")); - Serial.println(testRoundRects()); - delay(500); - - Serial.print(F("Rounded rects (filled) ")); - Serial.println(testFilledRoundRects()); - delay(500); - - Serial.println(F("Done!")); - -} - - -void loop(void) { - for(uint8_t rotation=0; rotation<4; rotation++) { - tft.setRotation(rotation); - testText(); - delay(1000); - } -} - -unsigned long testFillScreen() { - unsigned long start = micros(); - tft.fillScreen(ILI9341_BLACK); - yield(); - tft.fillScreen(ILI9341_RED); - yield(); - tft.fillScreen(ILI9341_GREEN); - yield(); - tft.fillScreen(ILI9341_BLUE); - yield(); - tft.fillScreen(ILI9341_BLACK); - yield(); - return micros() - start; -} - -unsigned long testText() { - tft.fillScreen(ILI9341_BLACK); - unsigned long start = micros(); - tft.setCursor(0, 0); - tft.setTextColor(ILI9341_WHITE); tft.setTextSize(1); - tft.println("Hello World!"); - tft.setTextColor(ILI9341_YELLOW); tft.setTextSize(2); - tft.println(1234.56); - tft.setTextColor(ILI9341_RED); tft.setTextSize(3); - tft.println(0xDEADBEEF, HEX); - tft.println(); - tft.setTextColor(ILI9341_GREEN); - tft.setTextSize(5); - tft.println("Groop"); - tft.setTextSize(2); - tft.println("I implore thee,"); - tft.setTextSize(1); - tft.println("my foonting turlingdromes."); - tft.println("And hooptiously drangle me"); - tft.println("with crinkly bindlewurdles,"); - tft.println("Or I will rend thee"); - tft.println("in the gobberwarts"); - tft.println("with my blurglecruncheon,"); - tft.println("see if I don't!"); - return micros() - start; -} - -unsigned long testLines(uint16_t color) { - unsigned long start, t; - int x1, y1, x2, y2, - w = tft.width(), - h = tft.height(); - - tft.fillScreen(ILI9341_BLACK); - yield(); - - x1 = y1 = 0; - y2 = h - 1; - start = micros(); - for(x2=0; x20; i-=6) { - i2 = i / 2; - start = micros(); - tft.fillRect(cx-i2, cy-i2, i, i, color1); - t += micros() - start; - // Outlines are not included in timing results - tft.drawRect(cx-i2, cy-i2, i, i, color2); - yield(); - } - - return t; -} - -unsigned long testFilledCircles(uint8_t radius, uint16_t color) { - unsigned long start; - int x, y, w = tft.width(), h = tft.height(), r2 = radius * 2; - - tft.fillScreen(ILI9341_BLACK); - start = micros(); - for(x=radius; x10; i-=5) { - start = micros(); - tft.fillTriangle(cx, cy - i, cx - i, cy + i, cx + i, cy + i, - tft.color565(0, i*10, i*10)); - t += micros() - start; - tft.drawTriangle(cx, cy - i, cx - i, cy + i, cx + i, cy + i, - tft.color565(i*10, i*10, 0)); - yield(); - } - - return t; -} - -unsigned long testRoundRects() { - unsigned long start; - int w, i, i2, - cx = tft.width() / 2 - 1, - cy = tft.height() / 2 - 1; - - tft.fillScreen(ILI9341_BLACK); - w = min(tft.width(), tft.height()); - start = micros(); - for(i=0; i20; i-=6) { - i2 = i / 2; - tft.fillRoundRect(cx-i2, cy-i2, i, i, i/8, tft.color565(0, i, 0)); - yield(); - } - - return micros() - start; -} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/Makefile b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/Makefile deleted file mode 100644 index 47f5a0e..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -all: fontconvert - -CC = gcc -CFLAGS = -Wall -I/usr/local/include/freetype2 -I/usr/include/freetype2 -I/usr/include -LIBS = -lfreetype - -fontconvert: fontconvert.c - $(CC) $(CFLAGS) $< $(LIBS) -o $@ - strip $@ - -clean: - rm -f fontconvert diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/bdf2adafruit.py b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/bdf2adafruit.py deleted file mode 100644 index 9d9ee8a..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/bdf2adafruit.py +++ /dev/null @@ -1,135 +0,0 @@ -#!/usr/bin/python2 - -# MIT License. - -# Copyright (c) 2016 William Skellenger -# -# 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. - -# This small script is designed to mostly take a BDF file and convert it to a -# format that can largely be cut/pasted as an Adafruit-format font. -# It was written in an hour or so and did what I needed it to do. -# I used it for one file. Maybe it bombs on other files. -# William Skellenger, Feb 2016 -# (email: williamj@skellenger.net) -# (Twitter: @skelliam) -# -# Usage: bdf2adafruit.py > out.txt -# -# Once you have out.txt you can cut/paste the contents into a new font -# header file as part of the Adafruit GFX library. - -import sys - -myfile = open(sys.argv[1]) - -processing = 0 -getting_rows = 0 - -chars = [] -bitmapData = [] - -class Glyph: - encoding = -1 - rows = [] - comment = "" - offset = -1 - width = 0 - height = 0 - advance = 0 - xoffs = 0 - yoffs = 0 - def __init__(self, comment): - self.comment = comment - self.rows = [] - -for line in myfile.readlines(): - if 'STARTCHAR' in line: - processing = 1 - vals = line.split() - g = Glyph(vals[1]) - #g.width = 8 #in this example always 8 bits wide - elif 'ENDCHAR' in line: - dataByteCompressed = 0 - dataByteCompressedIndex = 8 - g.height = len(bitmapData) - for value in bitmapData: - bitIndex = 0 - while bitIndex < g.width: - bit = (value >> (7 - bitIndex)) & 0x01 - dataByteCompressed |= bit << (dataByteCompressedIndex - 1) - dataByteCompressedIndex -= 1 - if dataByteCompressedIndex == 0: - dataByteCompressedIndex = 8 - g.rows.append(dataByteCompressed) - dataByteCompressed = 0 - bitIndex += 1 - if 8 != dataByteCompressedIndex: - g.rows.append(dataByteCompressed) - - chars.append(g) #append the completed glyph into list - processing = 0 - getting_rows = 0 - bitmapData.clear() - - if processing: - if 'ENCODING' in line: - vals = line.split() - g.encoding = int(vals[1]) - elif 'DWIDTH' in line: - vals = line.split() - #g.advance = int(vals[1]) #cursor advance seems to be the first number in DWIDTH - elif 'BBX' in line: - vals = line.split() - g.xoffs = 0 - g.yoffs = -(int(vals[2]) + int(vals[4])) - g.advance = (int(vals[1]) + 1) #x bounding box + 1 - g.width = int(vals[1]) - elif 'BITMAP' in line: - getting_rows = 1 - elif getting_rows: - #g.rows.append(int(line, 16)) #append pixel rows into glyph's list of rows - bitmapData.append(int(line, 16)) - -print - -i=0 -for char in chars: - char.offset = i - print("\t", end='') - num = 3 - for row in char.rows: - if num != 3: - print(" ", end = '') - print("0x%02X," %(row), end = ''), - i+=1 - num-=1 - - if num == 1: - print("\t\t", end = '') - if num == 2: - print("\t\t\t", end = '') - print("\t/* 0x%02X %s */" %(char.encoding, char.comment)) - -for char in chars: - # offset, bit-width, bit-height, advance cursor, x offset, y offset - print("\t{ %d, %d, %d, %d, %d, %d }, /* 0x%02X %s */" %( - char.offset, char.width, char.height, - char.advance, char.xoffs, char.yoffs, - char.encoding, char.comment)) diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/fontconvert.c b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/fontconvert.c deleted file mode 100644 index 302d1da..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/fontconvert.c +++ /dev/null @@ -1,291 +0,0 @@ -/* -TrueType to Adafruit_GFX font converter. Derived from Peter Jakobs' -Adafruit_ftGFX fork & makefont tool, and Paul Kourany's Adafruit_mfGFX. - -NOT AN ARDUINO SKETCH. This is a command-line tool for preprocessing -fonts to be used with the Adafruit_GFX Arduino library. - -For UNIX-like systems. Outputs to stdout; redirect to header file, e.g.: - ./fontconvert ~/Library/Fonts/FreeSans.ttf 18 > FreeSans18pt7b.h - -REQUIRES FREETYPE LIBRARY. www.freetype.org - -Currently this only extracts the printable 7-bit ASCII chars of a font. -Will eventually extend with some int'l chars a la ftGFX, not there yet. -Keep 7-bit fonts around as an option in that case, more compact. - -See notes at end for glyph nomenclature & other tidbits. -*/ -#ifndef ARDUINO - -#include -#include -#include -#include -#include FT_GLYPH_H -#include FT_MODULE_H -#include FT_TRUETYPE_DRIVER_H -#include "../gfxfont.h" // Adafruit_GFX font structures - -#define DPI 141 // Approximate res. of Adafruit 2.8" TFT - -// Accumulate bits for output, with periodic hexadecimal byte write -void enbit(uint8_t value) { - static uint8_t row = 0, sum = 0, bit = 0x80, firstCall = 1; - if (value) - sum |= bit; // Set bit if needed - if (!(bit >>= 1)) { // Advance to next bit, end of byte reached? - if (!firstCall) { // Format output table nicely - if (++row >= 12) { // Last entry on line? - printf(",\n "); // Newline format output - row = 0; // Reset row counter - } else { // Not end of line - printf(", "); // Simple comma delim - } - } - printf("0x%02X", sum); // Write byte value - sum = 0; // Clear for next byte - bit = 0x80; // Reset bit counter - firstCall = 0; // Formatting flag - } -} - -int main(int argc, char *argv[]) { - int i, j, err, size, first = ' ', last = '~', bitmapOffset = 0, x, y, byte; - char *fontName, c, *ptr; - FT_Library library; - FT_Face face; - FT_Glyph glyph; - FT_Bitmap *bitmap; - FT_BitmapGlyphRec *g; - GFXglyph *table; - uint8_t bit; - - // Parse command line. Valid syntaxes are: - // fontconvert [filename] [size] - // fontconvert [filename] [size] [last char] - // fontconvert [filename] [size] [first char] [last char] - // Unless overridden, default first and last chars are - // ' ' (space) and '~', respectively - - if (argc < 3) { - fprintf(stderr, "Usage: %s fontfile size [first] [last]\n", argv[0]); - return 1; - } - - size = atoi(argv[2]); - - if (argc == 4) { - last = atoi(argv[3]); - } else if (argc == 5) { - first = atoi(argv[3]); - last = atoi(argv[4]); - } - - if (last < first) { - i = first; - first = last; - last = i; - } - - ptr = strrchr(argv[1], '/'); // Find last slash in filename - if (ptr) - ptr++; // First character of filename (path stripped) - else - ptr = argv[1]; // No path; font in local dir. - - // Allocate space for font name and glyph table - if ((!(fontName = malloc(strlen(ptr) + 20))) || - (!(table = (GFXglyph *)malloc((last - first + 1) * sizeof(GFXglyph))))) { - fprintf(stderr, "Malloc error\n"); - return 1; - } - - // Derive font table names from filename. Period (filename - // extension) is truncated and replaced with the font size & bits. - strcpy(fontName, ptr); - ptr = strrchr(fontName, '.'); // Find last period (file ext) - if (!ptr) - ptr = &fontName[strlen(fontName)]; // If none, append - // Insert font size and 7/8 bit. fontName was alloc'd w/extra - // space to allow this, we're not sprintfing into Forbidden Zone. - sprintf(ptr, "%dpt%db", size, (last > 127) ? 8 : 7); - // Space and punctuation chars in name replaced w/ underscores. - for (i = 0; (c = fontName[i]); i++) { - if (isspace(c) || ispunct(c)) - fontName[i] = '_'; - } - - // Init FreeType lib, load font - if ((err = FT_Init_FreeType(&library))) { - fprintf(stderr, "FreeType init error: %d", err); - return err; - } - - // Use TrueType engine version 35, without subpixel rendering. - // This improves clarity of fonts since this library does not - // support rendering multiple levels of gray in a glyph. - // See https://github.com/adafruit/Adafruit-GFX-Library/issues/103 - FT_UInt interpreter_version = TT_INTERPRETER_VERSION_35; - FT_Property_Set(library, "truetype", "interpreter-version", - &interpreter_version); - - if ((err = FT_New_Face(library, argv[1], 0, &face))) { - fprintf(stderr, "Font load error: %d", err); - FT_Done_FreeType(library); - return err; - } - - // << 6 because '26dot6' fixed-point format - FT_Set_Char_Size(face, size << 6, 0, DPI, 0); - - // Currently all symbols from 'first' to 'last' are processed. - // Fonts may contain WAY more glyphs than that, but this code - // will need to handle encoding stuff to deal with extracting - // the right symbols, and that's not done yet. - // fprintf(stderr, "%ld glyphs\n", face->num_glyphs); - - printf("const uint8_t %sBitmaps[] PROGMEM = {\n ", fontName); - - // Process glyphs and output huge bitmap data array - for (i = first, j = 0; i <= last; i++, j++) { - // MONO renderer provides clean image with perfect crop - // (no wasted pixels) via bitmap struct. - if ((err = FT_Load_Char(face, i, FT_LOAD_TARGET_MONO))) { - fprintf(stderr, "Error %d loading char '%c'\n", err, i); - continue; - } - - if ((err = FT_Render_Glyph(face->glyph, FT_RENDER_MODE_MONO))) { - fprintf(stderr, "Error %d rendering char '%c'\n", err, i); - continue; - } - - if ((err = FT_Get_Glyph(face->glyph, &glyph))) { - fprintf(stderr, "Error %d getting glyph '%c'\n", err, i); - continue; - } - - bitmap = &face->glyph->bitmap; - g = (FT_BitmapGlyphRec *)glyph; - - // Minimal font and per-glyph information is stored to - // reduce flash space requirements. Glyph bitmaps are - // fully bit-packed; no per-scanline pad, though end of - // each character may be padded to next byte boundary - // when needed. 16-bit offset means 64K max for bitmaps, - // code currently doesn't check for overflow. (Doesn't - // check that size & offsets are within bounds either for - // that matter...please convert fonts responsibly.) - table[j].bitmapOffset = bitmapOffset; - table[j].width = bitmap->width; - table[j].height = bitmap->rows; - table[j].xAdvance = face->glyph->advance.x >> 6; - table[j].xOffset = g->left; - table[j].yOffset = 1 - g->top; - - for (y = 0; y < bitmap->rows; y++) { - for (x = 0; x < bitmap->width; x++) { - byte = x / 8; - bit = 0x80 >> (x & 7); - enbit(bitmap->buffer[y * bitmap->pitch + byte] & bit); - } - } - - // Pad end of char bitmap to next byte boundary if needed - int n = (bitmap->width * bitmap->rows) & 7; - if (n) { // Pixel count not an even multiple of 8? - n = 8 - n; // # bits to next multiple - while (n--) - enbit(0); - } - bitmapOffset += (bitmap->width * bitmap->rows + 7) / 8; - - FT_Done_Glyph(glyph); - } - - printf(" };\n\n"); // End bitmap array - - // Output glyph attributes table (one per character) - printf("const GFXglyph %sGlyphs[] PROGMEM = {\n", fontName); - for (i = first, j = 0; i <= last; i++, j++) { - printf(" { %5d, %3d, %3d, %3d, %4d, %4d }", table[j].bitmapOffset, - table[j].width, table[j].height, table[j].xAdvance, table[j].xOffset, - table[j].yOffset); - if (i < last) { - printf(", // 0x%02X", i); - if ((i >= ' ') && (i <= '~')) { - printf(" '%c'", i); - } - putchar('\n'); - } - } - printf(" }; // 0x%02X", last); - if ((last >= ' ') && (last <= '~')) - printf(" '%c'", last); - printf("\n\n"); - - // Output font structure - printf("const GFXfont %s PROGMEM = {\n", fontName); - printf(" (uint8_t *)%sBitmaps,\n", fontName); - printf(" (GFXglyph *)%sGlyphs,\n", fontName); - if (face->size->metrics.height == 0) { - // No face height info, assume fixed width and get from a glyph. - printf(" 0x%02X, 0x%02X, %d };\n\n", first, last, table[0].height); - } else { - printf(" 0x%02X, 0x%02X, %ld };\n\n", first, last, - face->size->metrics.height >> 6); - } - printf("// Approx. %d bytes\n", bitmapOffset + (last - first + 1) * 7 + 7); - // Size estimate is based on AVR struct and pointer sizes; - // actual size may vary. - - FT_Done_FreeType(library); - - return 0; -} - -/* ------------------------------------------------------------------------- - -Character metrics are slightly different from classic GFX & ftGFX. -In classic GFX: cursor position is the upper-left pixel of each 5x7 -character; lower extent of most glyphs (except those w/descenders) -is +6 pixels in Y direction. -W/new GFX fonts: cursor position is on baseline, where baseline is -'inclusive' (containing the bottom-most row of pixels in most symbols, -except those with descenders; ftGFX is one pixel lower). - -Cursor Y will be moved automatically when switching between classic -and new fonts. If you switch fonts, any print() calls will continue -along the same baseline. - - ...........#####.. -- yOffset - ..........######.. - ..........######.. - .........#######.. - ........#########. - * = Cursor pos. ........#########. - .......##########. - ......#####..####. - ......#####..####. - *.#.. .....#####...####. - .#.#. ....############## - #...# ...############### - #...# ...############### - ##### ..#####......##### - #...# .#####.......##### -====== #...# ====== #*###.........#### ======= Baseline - || xOffset - -glyph->xOffset and yOffset are pixel offsets, in GFX coordinate space -(+Y is down), from the cursor position to the top-left pixel of the -glyph bitmap. i.e. yOffset is typically negative, xOffset is typically -zero but a few glyphs will have other values (even negative xOffsets -sometimes, totally normal). glyph->xAdvance is the distance to move -the cursor on the X axis after drawing the corresponding symbol. - -There's also some changes with regard to 'background' color and new GFX -fonts (classic fonts unchanged). See Adafruit_GFX.cpp for explanation. -*/ - -#endif /* !ARDUINO */ diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/fontconvert_win.md b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/fontconvert_win.md deleted file mode 100644 index 1932841..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/fontconvert_win.md +++ /dev/null @@ -1,88 +0,0 @@ -### A short guide to use fontconvert.c to create your own fonts using MinGW. - -#### STEP 1: INSTALL MinGW - -Install MinGW (Minimalist GNU for Windows) from [MinGW.org](http://www.mingw.org/). -Please read carefully the instructions found on [Getting started page](http://www.mingw.org/wiki/Getting_Started). -I suggest installing with the "Graphical User Interface Installer". -To complete your initial installation you should further install some "packages". -For our purpose you should only install the "Basic Setup" packages. -To do that: - -1. Open the MinGW Installation Manager -2. From the left panel click "Basic Setup". -3. On the right panel choose "mingw32-base", "mingw-gcc-g++", "mingw-gcc-objc" and "msys-base" -and click "Mark for installation" -4. From the Menu click "Installation" and then "Apply changes". In the pop-up window select "Apply". - - -#### STEP 2: INSTALL Freetype Library - -To read about the freetype project visit [freetype.org](https://www.freetype.org/). -To Download the latest version of freetype go to [download page](http://download.savannah.gnu.org/releases/freetype/) -and choose "freetype-2.7.tar.gz" file (or a newer version if available). -To avoid long cd commands later in the command prompt, I suggest you unzip the file in the C:\ directory. -(I also renamed the folder to "ft27") -Before you build the library it's good to read these articles: -* [Using MSYS with MinGW](http://www.mingw.org/wiki/MSYS) -* [Installation and Use of Supplementary Libraries with MinGW](http://www.mingw.org/wiki/LibraryPathHOWTO) -* [Include Path](http://www.mingw.org/wiki/IncludePathHOWTO) - -Inside the unzipped folder there is another folder named "docs". Open it and read the INSTALL.UNIX (using notepad). -Pay attention to paragraph 3 (Build and Install the Library). So, let's begin the installation. -To give the appropriate commands we will use the MSYS command prompt (not cmd.exe of windows) which is UNIX like. -Follow the path C:\MinGW\msys\1.0 and double click "msys.bat". The command prompt environment appears. -Enter "ft27" directory using the cd commands: -``` -cd /c -cd ft27 -``` - -and then type one by one the commands: -``` -./configure --prefix=/mingw -make -make install -``` -Once you're finished, go inside "C:\MinGW\include" and there should be a new folder named "freetype2". -That, hopefully, means that you have installed the library correctly !! - -#### STEP 3: Build fontconvert.c - -Before proceeding I suggest you make a copy of Adafruit_GFX_library folder in C:\ directory. -Then, inside "fontconvert" folder open the "makefile" with an editor ( I used notepad++). -Change the commands so in the end the program looks like : -``` -all: fontconvert - -CC = gcc -CFLAGS = -Wall -I c:/mingw/include/freetype2 -LIBS = -lfreetype - -fontconvert: fontconvert.c - $(CC) $(CFLAGS) $< $(LIBS) -o $@ - -clean: - rm -f fontconvert -``` -Go back in the command prompt and with a cd command enter the fontconvert directory. -``` -cd /c/adafruit_gfx_library\fontconvert -``` -Give the command: -``` -make -``` -This command will, eventually, create a "fontconvert.exe" file inside fontconvert directory. - -#### STEP 4: Create your own font header files - -Now that you have an executable file, you can use it to create your own fonts to work with Adafruit GFX lib. -So, if we suppose that you already have a .ttf file with your favorite fonts, jump to the command prompt and type: -``` -./fontconvert yourfonts.ttf 9 > yourfonts9pt7b.h -``` -You can read more details at: [learn.adafruit](https://learn.adafruit.com/adafruit-gfx-graphics-library/using-fonts). - -Taraaaaaammm !! you've just created your new font header file. Put it inside the "Fonts" folder, grab a cup of coffee -and start playing with your Arduino (or whatever else ....)+ display module project. diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/makefonts.sh b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/makefonts.sh deleted file mode 100755 index 35f07ea..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/fontconvert/makefonts.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash - -# Ugly little Bash script, generates a set of .h files for GFX using -# GNU FreeFont sources. There are three fonts: 'Mono' (Courier-like), -# 'Sans' (Helvetica-like) and 'Serif' (Times-like); four styles: regular, -# bold, oblique or italic, and bold+oblique or bold+italic; and four -# sizes: 9, 12, 18 and 24 point. No real error checking or anything, -# this just powers through all the combinations, calling the fontconvert -# utility and redirecting the output to a .h file for each combo. - -# Adafruit_GFX repository does not include the source outline fonts -# (huge zipfile, different license) but they're easily acquired: -# http://savannah.gnu.org/projects/freefont/ - -convert=./fontconvert -inpath=~/Desktop/freefont/ -outpath=../Fonts/ -fonts=(FreeMono FreeSans FreeSerif) -styles=("" Bold Italic BoldItalic Oblique BoldOblique) -sizes=(9 12 18 24) - -for f in ${fonts[*]} -do - for index in ${!styles[*]} - do - st=${styles[$index]} - for si in ${sizes[*]} - do - infile=$inpath$f$st".ttf" - if [ -f $infile ] # Does source combination exist? - then - outfile=$outpath$f$st$si"pt7b.h" -# printf "%s %s %s > %s\n" $convert $infile $si $outfile - $convert $infile $si > $outfile - fi - done - done -done diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/gfxfont.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/gfxfont.h deleted file mode 100644 index 175bad6..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/gfxfont.h +++ /dev/null @@ -1,29 +0,0 @@ -// Font structures for newer Adafruit_GFX (1.1 and later). -// Example fonts are included in 'Fonts' directory. -// To use a font in your Arduino sketch, #include the corresponding .h -// file and pass address of GFXfont struct to setFont(). Pass NULL to -// revert to 'classic' fixed-space bitmap font. - -#ifndef _GFXFONT_H_ -#define _GFXFONT_H_ - -/// Font data stored PER GLYPH -typedef struct { - uint16_t bitmapOffset; ///< Pointer into GFXfont->bitmap - uint8_t width; ///< Bitmap dimensions in pixels - uint8_t height; ///< Bitmap dimensions in pixels - uint8_t xAdvance; ///< Distance to advance cursor (x axis) - int8_t xOffset; ///< X dist from cursor pos to UL corner - int8_t yOffset; ///< Y dist from cursor pos to UL corner -} GFXglyph; - -/// Data stored for FONT AS A WHOLE -typedef struct { - uint8_t *bitmap; ///< Glyph bitmaps, concatenated - GFXglyph *glyph; ///< Glyph array - uint16_t first; ///< ASCII extents (first char) - uint16_t last; ///< ASCII extents (last char) - uint8_t yAdvance; ///< Newline distance (y axis) -} GFXfont; - -#endif // _GFXFONT_H_ diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/glcdfont.c b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/glcdfont.c deleted file mode 100644 index 535da3a..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/glcdfont.c +++ /dev/null @@ -1,143 +0,0 @@ -// This is the 'classic' fixed-space bitmap font for Adafruit_GFX since 1.0. -// See gfxfont.h for newer custom bitmap font info. - -#ifndef FONT5X7_H -#define FONT5X7_H - -#ifdef __AVR__ -#include -#include -#elif defined(ESP8266) -#include -#elif defined(__IMXRT1052__) || defined(__IMXRT1062__) -// PROGMEM is defefind for T4 to place data in specific memory section -#undef PROGMEM -#define PROGMEM -#else -#define PROGMEM -#endif - -// Standard ASCII 5x7 font - -static const unsigned char font[] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x3E, 0x6B, - 0x4F, 0x6B, 0x3E, 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x18, 0x3C, 0x7E, 0x3C, - 0x18, 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, - 0x18, 0x3C, 0x18, 0x00, 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, 0x18, 0x24, - 0x18, 0x00, 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x30, 0x48, 0x3A, 0x06, 0x0E, - 0x26, 0x29, 0x79, 0x29, 0x26, 0x40, 0x7F, 0x05, 0x05, 0x07, 0x40, 0x7F, - 0x05, 0x25, 0x3F, 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x7F, 0x3E, 0x1C, 0x1C, - 0x08, 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x14, 0x22, 0x7F, 0x22, 0x14, 0x5F, - 0x5F, 0x00, 0x5F, 0x5F, 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, 0x66, 0x89, - 0x95, 0x6A, 0x60, 0x60, 0x60, 0x60, 0x60, 0x94, 0xA2, 0xFF, 0xA2, 0x94, - 0x08, 0x04, 0x7E, 0x04, 0x08, 0x10, 0x20, 0x7E, 0x20, 0x10, 0x08, 0x08, - 0x2A, 0x1C, 0x08, 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x1E, 0x10, 0x10, 0x10, - 0x10, 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x30, 0x38, 0x3E, 0x38, 0x30, 0x06, - 0x0E, 0x3E, 0x0E, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5F, - 0x00, 0x00, 0x00, 0x07, 0x00, 0x07, 0x00, 0x14, 0x7F, 0x14, 0x7F, 0x14, - 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x23, 0x13, 0x08, 0x64, 0x62, 0x36, 0x49, - 0x56, 0x20, 0x50, 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, 0x1C, 0x22, 0x41, - 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00, 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x08, - 0x08, 0x3E, 0x08, 0x08, 0x00, 0x80, 0x70, 0x30, 0x00, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x00, 0x00, 0x60, 0x60, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02, - 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, 0x42, 0x7F, 0x40, 0x00, 0x72, 0x49, - 0x49, 0x49, 0x46, 0x21, 0x41, 0x49, 0x4D, 0x33, 0x18, 0x14, 0x12, 0x7F, - 0x10, 0x27, 0x45, 0x45, 0x45, 0x39, 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x41, - 0x21, 0x11, 0x09, 0x07, 0x36, 0x49, 0x49, 0x49, 0x36, 0x46, 0x49, 0x49, - 0x29, 0x1E, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x40, 0x34, 0x00, 0x00, - 0x00, 0x08, 0x14, 0x22, 0x41, 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, 0x41, - 0x22, 0x14, 0x08, 0x02, 0x01, 0x59, 0x09, 0x06, 0x3E, 0x41, 0x5D, 0x59, - 0x4E, 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x7F, 0x49, 0x49, 0x49, 0x36, 0x3E, - 0x41, 0x41, 0x41, 0x22, 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x7F, 0x49, 0x49, - 0x49, 0x41, 0x7F, 0x09, 0x09, 0x09, 0x01, 0x3E, 0x41, 0x41, 0x51, 0x73, - 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, 0x41, 0x7F, 0x41, 0x00, 0x20, 0x40, - 0x41, 0x3F, 0x01, 0x7F, 0x08, 0x14, 0x22, 0x41, 0x7F, 0x40, 0x40, 0x40, - 0x40, 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x3E, - 0x41, 0x41, 0x41, 0x3E, 0x7F, 0x09, 0x09, 0x09, 0x06, 0x3E, 0x41, 0x51, - 0x21, 0x5E, 0x7F, 0x09, 0x19, 0x29, 0x46, 0x26, 0x49, 0x49, 0x49, 0x32, - 0x03, 0x01, 0x7F, 0x01, 0x03, 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x1F, 0x20, - 0x40, 0x20, 0x1F, 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x63, 0x14, 0x08, 0x14, - 0x63, 0x03, 0x04, 0x78, 0x04, 0x03, 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, - 0x7F, 0x41, 0x41, 0x41, 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, 0x41, 0x41, - 0x41, 0x7F, 0x04, 0x02, 0x01, 0x02, 0x04, 0x40, 0x40, 0x40, 0x40, 0x40, - 0x00, 0x03, 0x07, 0x08, 0x00, 0x20, 0x54, 0x54, 0x78, 0x40, 0x7F, 0x28, - 0x44, 0x44, 0x38, 0x38, 0x44, 0x44, 0x44, 0x28, 0x38, 0x44, 0x44, 0x28, - 0x7F, 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, 0x08, 0x7E, 0x09, 0x02, 0x18, - 0xA4, 0xA4, 0x9C, 0x78, 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, 0x44, 0x7D, - 0x40, 0x00, 0x20, 0x40, 0x40, 0x3D, 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00, - 0x00, 0x41, 0x7F, 0x40, 0x00, 0x7C, 0x04, 0x78, 0x04, 0x78, 0x7C, 0x08, - 0x04, 0x04, 0x78, 0x38, 0x44, 0x44, 0x44, 0x38, 0xFC, 0x18, 0x24, 0x24, - 0x18, 0x18, 0x24, 0x24, 0x18, 0xFC, 0x7C, 0x08, 0x04, 0x04, 0x08, 0x48, - 0x54, 0x54, 0x54, 0x24, 0x04, 0x04, 0x3F, 0x44, 0x24, 0x3C, 0x40, 0x40, - 0x20, 0x7C, 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x3C, 0x40, 0x30, 0x40, 0x3C, - 0x44, 0x28, 0x10, 0x28, 0x44, 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x44, 0x64, - 0x54, 0x4C, 0x44, 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, 0x00, 0x77, 0x00, - 0x00, 0x00, 0x41, 0x36, 0x08, 0x00, 0x02, 0x01, 0x02, 0x04, 0x02, 0x3C, - 0x26, 0x23, 0x26, 0x3C, 0x1E, 0xA1, 0xA1, 0x61, 0x12, 0x3A, 0x40, 0x40, - 0x20, 0x7A, 0x38, 0x54, 0x54, 0x55, 0x59, 0x21, 0x55, 0x55, 0x79, 0x41, - 0x22, 0x54, 0x54, 0x78, 0x42, // a-umlaut - 0x21, 0x55, 0x54, 0x78, 0x40, 0x20, 0x54, 0x55, 0x79, 0x40, 0x0C, 0x1E, - 0x52, 0x72, 0x12, 0x39, 0x55, 0x55, 0x55, 0x59, 0x39, 0x54, 0x54, 0x54, - 0x59, 0x39, 0x55, 0x54, 0x54, 0x58, 0x00, 0x00, 0x45, 0x7C, 0x41, 0x00, - 0x02, 0x45, 0x7D, 0x42, 0x00, 0x01, 0x45, 0x7C, 0x40, 0x7D, 0x12, 0x11, - 0x12, 0x7D, // A-umlaut - 0xF0, 0x28, 0x25, 0x28, 0xF0, 0x7C, 0x54, 0x55, 0x45, 0x00, 0x20, 0x54, - 0x54, 0x7C, 0x54, 0x7C, 0x0A, 0x09, 0x7F, 0x49, 0x32, 0x49, 0x49, 0x49, - 0x32, 0x3A, 0x44, 0x44, 0x44, 0x3A, // o-umlaut - 0x32, 0x4A, 0x48, 0x48, 0x30, 0x3A, 0x41, 0x41, 0x21, 0x7A, 0x3A, 0x42, - 0x40, 0x20, 0x78, 0x00, 0x9D, 0xA0, 0xA0, 0x7D, 0x3D, 0x42, 0x42, 0x42, - 0x3D, // O-umlaut - 0x3D, 0x40, 0x40, 0x40, 0x3D, 0x3C, 0x24, 0xFF, 0x24, 0x24, 0x48, 0x7E, - 0x49, 0x43, 0x66, 0x2B, 0x2F, 0xFC, 0x2F, 0x2B, 0xFF, 0x09, 0x29, 0xF6, - 0x20, 0xC0, 0x88, 0x7E, 0x09, 0x03, 0x20, 0x54, 0x54, 0x79, 0x41, 0x00, - 0x00, 0x44, 0x7D, 0x41, 0x30, 0x48, 0x48, 0x4A, 0x32, 0x38, 0x40, 0x40, - 0x22, 0x7A, 0x00, 0x7A, 0x0A, 0x0A, 0x72, 0x7D, 0x0D, 0x19, 0x31, 0x7D, - 0x26, 0x29, 0x29, 0x2F, 0x28, 0x26, 0x29, 0x29, 0x29, 0x26, 0x30, 0x48, - 0x4D, 0x40, 0x20, 0x38, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x38, 0x2F, 0x10, 0xC8, 0xAC, 0xBA, 0x2F, 0x10, 0x28, 0x34, 0xFA, 0x00, - 0x00, 0x7B, 0x00, 0x00, 0x08, 0x14, 0x2A, 0x14, 0x22, 0x22, 0x14, 0x2A, - 0x14, 0x08, 0x55, 0x00, 0x55, 0x00, 0x55, // #176 (25% block) missing in old - // code - 0xAA, 0x55, 0xAA, 0x55, 0xAA, // 50% block - 0xFF, 0x55, 0xFF, 0x55, 0xFF, // 75% block - 0x00, 0x00, 0x00, 0xFF, 0x00, 0x10, 0x10, 0x10, 0xFF, 0x00, 0x14, 0x14, - 0x14, 0xFF, 0x00, 0x10, 0x10, 0xFF, 0x00, 0xFF, 0x10, 0x10, 0xF0, 0x10, - 0xF0, 0x14, 0x14, 0x14, 0xFC, 0x00, 0x14, 0x14, 0xF7, 0x00, 0xFF, 0x00, - 0x00, 0xFF, 0x00, 0xFF, 0x14, 0x14, 0xF4, 0x04, 0xFC, 0x14, 0x14, 0x17, - 0x10, 0x1F, 0x10, 0x10, 0x1F, 0x10, 0x1F, 0x14, 0x14, 0x14, 0x1F, 0x00, - 0x10, 0x10, 0x10, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x10, 0x10, 0x10, - 0x10, 0x1F, 0x10, 0x10, 0x10, 0x10, 0xF0, 0x10, 0x00, 0x00, 0x00, 0xFF, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0xFF, 0x10, 0x00, - 0x00, 0x00, 0xFF, 0x14, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x1F, - 0x10, 0x17, 0x00, 0x00, 0xFC, 0x04, 0xF4, 0x14, 0x14, 0x17, 0x10, 0x17, - 0x14, 0x14, 0xF4, 0x04, 0xF4, 0x00, 0x00, 0xFF, 0x00, 0xF7, 0x14, 0x14, - 0x14, 0x14, 0x14, 0x14, 0x14, 0xF7, 0x00, 0xF7, 0x14, 0x14, 0x14, 0x17, - 0x14, 0x10, 0x10, 0x1F, 0x10, 0x1F, 0x14, 0x14, 0x14, 0xF4, 0x14, 0x10, - 0x10, 0xF0, 0x10, 0xF0, 0x00, 0x00, 0x1F, 0x10, 0x1F, 0x00, 0x00, 0x00, - 0x1F, 0x14, 0x00, 0x00, 0x00, 0xFC, 0x14, 0x00, 0x00, 0xF0, 0x10, 0xF0, - 0x10, 0x10, 0xFF, 0x10, 0xFF, 0x14, 0x14, 0x14, 0xFF, 0x14, 0x10, 0x10, - 0x10, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x38, 0x44, 0x44, - 0x38, 0x44, 0xFC, 0x4A, 0x4A, 0x4A, 0x34, // sharp-s or beta - 0x7E, 0x02, 0x02, 0x06, 0x06, 0x02, 0x7E, 0x02, 0x7E, 0x02, 0x63, 0x55, - 0x49, 0x41, 0x63, 0x38, 0x44, 0x44, 0x3C, 0x04, 0x40, 0x7E, 0x20, 0x1E, - 0x20, 0x06, 0x02, 0x7E, 0x02, 0x02, 0x99, 0xA5, 0xE7, 0xA5, 0x99, 0x1C, - 0x2A, 0x49, 0x2A, 0x1C, 0x4C, 0x72, 0x01, 0x72, 0x4C, 0x30, 0x4A, 0x4D, - 0x4D, 0x30, 0x30, 0x48, 0x78, 0x48, 0x30, 0xBC, 0x62, 0x5A, 0x46, 0x3D, - 0x3E, 0x49, 0x49, 0x49, 0x00, 0x7E, 0x01, 0x01, 0x01, 0x7E, 0x2A, 0x2A, - 0x2A, 0x2A, 0x2A, 0x44, 0x44, 0x5F, 0x44, 0x44, 0x40, 0x51, 0x4A, 0x44, - 0x40, 0x40, 0x44, 0x4A, 0x51, 0x40, 0x00, 0x00, 0xFF, 0x01, 0x03, 0xE0, - 0x80, 0xFF, 0x00, 0x00, 0x08, 0x08, 0x6B, 0x6B, 0x08, 0x36, 0x12, 0x36, - 0x24, 0x36, 0x06, 0x0F, 0x09, 0x0F, 0x06, 0x00, 0x00, 0x18, 0x18, 0x00, - 0x00, 0x00, 0x10, 0x10, 0x00, 0x30, 0x40, 0xFF, 0x01, 0x01, 0x00, 0x1F, - 0x01, 0x01, 0x1E, 0x00, 0x19, 0x1D, 0x17, 0x12, 0x00, 0x3C, 0x3C, 0x3C, - 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00 // #255 NBSP -}; - -// allow clean compilation with [-Wunused-const-variable=] and [-Wall] -static inline void avoid_unused_const_variable_compiler_warning(void) { - (void)font; -} - -#endif // FONT5X7_H diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/library.properties b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/library.properties deleted file mode 100644 index 3bbb3ff..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/library.properties +++ /dev/null @@ -1,10 +0,0 @@ -name=Adafruit GFX Library -version=1.12.6 -author=Adafruit -maintainer=Adafruit -sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. -paragraph=Install this library in addition to the display library for your hardware. -category=Display -url=https://github.com/adafruit/Adafruit-GFX-Library -architectures=* -depends=Adafruit BusIO diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/license.txt b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/license.txt deleted file mode 100644 index 7492e93..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit GFX Library/license.txt +++ /dev/null @@ -1,24 +0,0 @@ -Software License Agreement (BSD License) - -Copyright (c) 2012 Adafruit Industries. 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/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index f0e2614..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,46 +0,0 @@ -Thank you for opening an issue on an Adafruit Arduino library repository. To -improve the speed of resolution please review the following guidelines and -common troubleshooting steps below before creating the issue: - -- **Do not use GitHub issues for troubleshooting projects and issues.** Instead use - the forums at http://forums.adafruit.com to ask questions and troubleshoot why - something isn't working as expected. In many cases the problem is a common issue - that you will more quickly receive help from the forum community. GitHub issues - are meant for known defects in the code. If you don't know if there is a defect - in the code then start with troubleshooting on the forum first. - -- **If following a tutorial or guide be sure you didn't miss a step.** Carefully - check all of the steps and commands to run have been followed. Consult the - forum if you're unsure or have questions about steps in a guide/tutorial. - -- **For Arduino projects check these very common issues to ensure they don't apply**: - - - For uploading sketches or communicating with the board make sure you're using - a **USB data cable** and **not** a **USB charge-only cable**. It is sometimes - very hard to tell the difference between a data and charge cable! Try using the - cable with other devices or swapping to another cable to confirm it is not - the problem. - - - **Be sure you are supplying adequate power to the board.** Check the specs of - your board and plug in an external power supply. In many cases just - plugging a board into your computer is not enough to power it and other - peripherals. - - - **Double check all soldering joints and connections.** Flakey connections - cause many mysterious problems. See the [guide to excellent soldering](https://learn.adafruit.com/adafruit-guide-excellent-soldering/tools) for examples of good solder joints. - - - **Ensure you are using an official Arduino or Adafruit board.** We can't - guarantee a clone board will have the same functionality and work as expected - with this code and don't support them. - -If you're sure this issue is a defect in the code and checked the steps above -please fill in the following fields to provide enough troubleshooting information. -You may delete the guideline and text above to just leave the following details: - -- Arduino board: **INSERT ARDUINO BOARD NAME/TYPE HERE** - -- Arduino IDE version (found in Arduino -> About Arduino menu): **INSERT ARDUINO - VERSION HERE** - -- List the steps to reproduce the problem below (if possible attach a sketch or - copy the sketch code in too): **LIST REPRO STEPS BELOW** diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 7b641eb..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,26 +0,0 @@ -Thank you for creating a pull request to contribute to Adafruit's GitHub code! -Before you open the request please review the following guidelines and tips to -help it be more easily integrated: - -- **Describe the scope of your change--i.e. what the change does and what parts - of the code were modified.** This will help us understand any risks of integrating - the code. - -- **Describe any known limitations with your change.** For example if the change - doesn't apply to a supported platform of the library please mention it. - -- **Please run any tests or examples that can exercise your modified code.** We - strive to not break users of the code and running tests/examples helps with this - process. - -Thank you again for contributing! We will try to test and integrate the change -as soon as we can, but be aware we have many GitHub repositories to manage and -can't immediately respond to every request. There is no need to bump or check in -on a pull request (it will clutter the discussion of the request). - -Also don't be worried if the request is closed or not integrated--sometimes the -priorities of Adafruit's GitHub code (education, ease of use) might not match the -priorities of the pull request. Don't fret, the open source community thrives on -forks and GitHub makes it easy to keep your changes in a forked repo. - -After reviewing the guidelines above you can delete this text from the pull request. diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml deleted file mode 100644 index 32d54d9..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: Arduino Library CI - -on: [pull_request, push, repository_dispatch] - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/setup-python@v4 - with: - python-version: '3.x' - - uses: actions/checkout@v3 - - uses: actions/checkout@v3 - with: - repository: adafruit/ci-arduino - path: ci - - - name: pre-install - run: bash ci/actions_install.sh - - - name: test platforms - run: python3 ci/build_platform.py main_platforms - - - name: clang - run: python3 ci/run-clang-format.py -e "ci/*" -e "bin/*" -r . - - - name: doxygen - env: - GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }} - PRETTYNAME : "Adafruit IS31FL3731 Library" - run: bash ci/doxy_gen_and_deploy.sh diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.piopm b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.piopm deleted file mode 100644 index ccf819e..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/.piopm +++ /dev/null @@ -1 +0,0 @@ -{"type": "library", "name": "Adafruit IS31FL3731 Library", "version": "2.0.2", "spec": {"owner": "adafruit", "id": 1241, "name": "Adafruit IS31FL3731 Library", "requirements": null, "uri": null}} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp deleted file mode 100644 index fb1a347..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp +++ /dev/null @@ -1,273 +0,0 @@ -#include - -#ifndef _swap_int16_t -#define _swap_int16_t(a, b) \ - { \ - int16_t t = a; \ - a = b; \ - b = t; \ - } -#endif - -/**************************************************************************/ -/*! - @brief Constructor for breakout version - @param width Desired width of led display - @param height Desired height of led display -*/ -/**************************************************************************/ - -Adafruit_IS31FL3731::Adafruit_IS31FL3731(uint8_t width, uint8_t height) - : Adafruit_GFX(width, height) {} - -/**************************************************************************/ -/*! - @brief Constructor for FeatherWing version (15x7 LEDs) -*/ -/**************************************************************************/ -Adafruit_IS31FL3731_Wing::Adafruit_IS31FL3731_Wing(void) - : Adafruit_IS31FL3731(15, 7) {} - -/**************************************************************************/ -/*! - @brief Initialize hardware and clear display - @param addr The I2C address we expect to find the chip at - @param theWire The TwoWire I2C bus device to use, defaults to &Wire - @returns True on success, false if chip isnt found -*/ -/**************************************************************************/ -bool Adafruit_IS31FL3731::begin(uint8_t addr, TwoWire *theWire) { - if (_i2c_dev) { - delete _i2c_dev; - } - _i2c_dev = new Adafruit_I2CDevice(addr, theWire); - - if (!_i2c_dev->begin()) { - return false; - } - - _i2c_dev->setSpeed(400000); - _frame = 0; - - // shutdown - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x00); - - delay(10); - - // out of shutdown - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x01); - - // picture mode - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_CONFIG, - ISSI_REG_CONFIG_PICTUREMODE); - - displayFrame(_frame); - - // all LEDs on & 0 PWM - clear(); // set each led to 0 PWM - - for (uint8_t f = 0; f < 8; f++) { - for (uint8_t i = 0; i <= 0x11; i++) - writeRegister8(f, i, 0xff); // each 8 LEDs on - } - - audioSync(false); - - return true; -} - -/**************************************************************************/ -/*! - @brief Sets all LEDs on & 0 PWM for current frame. -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::clear(void) { - selectBank(_frame); - uint8_t erasebuf[25]; - - memset(erasebuf, 0, 25); - - for (uint8_t i = 0; i < 6; i++) { - erasebuf[0] = 0x24 + i * 24; - _i2c_dev->write(erasebuf, 25); - } -} - -/**************************************************************************/ -/*! - @brief Low level accesssor - sets a 8-bit PWM pixel value to a bank location - does not handle rotation, x/y or any rearrangements! - @param lednum The offset into the bank that corresponds to the LED - @param bank The bank/frame we will set the data in - @param pwm brightnes, from 0 (off) to 255 (max on) -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::setLEDPWM(uint8_t lednum, uint8_t pwm, uint8_t bank) { - if (lednum >= 144) - return; - writeRegister8(bank, 0x24 + lednum, pwm); -} - -/**************************************************************************/ -/*! - @brief Adafruit GFX low level accesssor - sets a 8-bit PWM pixel value - handles rotation and pixel arrangement, unlike setLEDPWM - @param x The x position, starting with 0 for left-most side - @param y The y position, starting with 0 for top-most side - @param color Despite being a 16-bit value, takes 0 (off) to 255 (max on) -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731_Wing::drawPixel(int16_t x, int16_t y, uint16_t color) { - // check rotation, move pixel around if necessary - switch (getRotation()) { - case 1: - _swap_int16_t(x, y); - x = 15 - x - 1; - break; - case 2: - x = 15 - x - 1; - y = 7 - y - 1; - break; - case 3: - _swap_int16_t(x, y); - y = 9 - y - 1; - break; - } - - // charlie wing is smaller: - if ((x < 0) || (x >= 16) || (y < 0) || (y >= 7)) - return; - - if (x > 7) { - x = 15 - x; - y += 8; - } else { - y = 7 - y; - } - - _swap_int16_t(x, y); - - if (color > 255) - color = 255; // PWM 8bit max - - setLEDPWM(x + y * 16, color, _frame); - return; -} - -/**************************************************************************/ -/*! - @brief Adafruit GFX low level accesssor - sets a 8-bit PWM pixel value - handles rotation and pixel arrangement, unlike setLEDPWM - @param x The x position, starting with 0 for left-most side - @param y The y position, starting with 0 for top-most side - @param color Despite being a 16-bit value, takes 0 (off) to 255 (max on) -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::drawPixel(int16_t x, int16_t y, uint16_t color) { - // check rotation, move pixel around if necessary - switch (getRotation()) { - case 1: - _swap_int16_t(x, y); - x = 16 - x - 1; - break; - case 2: - x = 16 - x - 1; - y = 9 - y - 1; - break; - case 3: - _swap_int16_t(x, y); - y = 9 - y - 1; - break; - } - - if ((x < 0) || (x >= 16)) - return; - if ((y < 0) || (y >= 9)) - return; - if (color > 255) - color = 255; // PWM 8bit max - - setLEDPWM(x + y * 16, color, _frame); - return; -} - -/**************************************************************************/ -/*! - @brief Set's this object's frame tracker (does not talk to the chip) - @param frame Ranges from 0 - 7 for the 8 frames -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::setFrame(uint8_t frame) { _frame = frame; } - -/**************************************************************************/ -/*! - @brief Have the chip set the display to the contents of a frame - @param frame Ranges from 0 - 7 for the 8 frames -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::displayFrame(uint8_t frame) { - if (frame > 7) - frame = 0; - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_PICTUREFRAME, frame); -} - -/**************************************************************************/ -/*! - @brief Switch to a given bank in the chip memory for future reads - @param bank The IS31 bank to switch to - @returns False if I2C command failed to be ack'd -*/ -/**************************************************************************/ -bool Adafruit_IS31FL3731::selectBank(uint8_t bank) { - uint8_t cmd[2] = {ISSI_COMMANDREGISTER, bank}; - return _i2c_dev->write(cmd, 2); -} - -/**************************************************************************/ -/*! - @brief Enable the audio 'sync' for brightness pulsing (not really tested) - @param sync True to enable, False to disable -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::audioSync(bool sync) { - if (sync) { - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_AUDIOSYNC, 0x1); - } else { - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_AUDIOSYNC, 0x0); - } -} - -/**************************************************************************/ -/*! - @brief Write one byte to a register located in a given bank - @param bank The IS31 bank to write the register location - @param reg the offset into the bank to write - @param data The byte value - @returns False if I2C command failed to be ack'd -*/ -/**************************************************************************/ -bool Adafruit_IS31FL3731::writeRegister8(uint8_t bank, uint8_t reg, - uint8_t data) { - selectBank(bank); - - uint8_t cmd[2] = {reg, data}; - return _i2c_dev->write(cmd, 2); -} - -/**************************************************************************/ -/*! - @brief Read one byte from a register located in a given bank - @param bank The IS31 bank to read the register location - @param reg the offset into the bank to read - @return 1 byte value -*/ -/**************************************************************************/ -uint8_t Adafruit_IS31FL3731::readRegister8(uint8_t bank, uint8_t reg) { - uint8_t val = 0xFF; - - selectBank(bank); - - _i2c_dev->write_then_read(®, 1, &val, 1); - - return val; -} diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h deleted file mode 100644 index f530253..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef _ADAFRUIT_IS31FL3731_H_ -#define _ADAFRUIT_IS31FL3731_H_ - -#include -#include -#include - -#define ISSI_ADDR_DEFAULT 0x74 - -#define ISSI_REG_CONFIG 0x00 -#define ISSI_REG_CONFIG_PICTUREMODE 0x00 -#define ISSI_REG_CONFIG_AUTOPLAYMODE 0x08 -#define ISSI_REG_CONFIG_AUDIOPLAYMODE 0x18 - -#define ISSI_CONF_PICTUREMODE 0x00 -#define ISSI_CONF_AUTOFRAMEMODE 0x04 -#define ISSI_CONF_AUDIOMODE 0x08 - -#define ISSI_REG_PICTUREFRAME 0x01 - -#define ISSI_REG_SHUTDOWN 0x0A -#define ISSI_REG_AUDIOSYNC 0x06 - -#define ISSI_COMMANDREGISTER 0xFD -#define ISSI_BANK_FUNCTIONREG 0x0B // helpfully called 'page nine' - -/**************************************************************************/ -/*! - @brief Constructor for generic IS31FL3731 breakout version -*/ -/**************************************************************************/ -class Adafruit_IS31FL3731 : public Adafruit_GFX { -public: - Adafruit_IS31FL3731(uint8_t x = 16, uint8_t y = 9); - bool begin(uint8_t addr = ISSI_ADDR_DEFAULT, TwoWire *theWire = &Wire); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void clear(void); - - void setLEDPWM(uint8_t lednum, uint8_t pwm, uint8_t bank = 0); - void audioSync(bool sync); - void setFrame(uint8_t b); - void displayFrame(uint8_t frame); - -protected: - bool selectBank(uint8_t bank); - bool writeRegister8(uint8_t bank, uint8_t reg, uint8_t data); - uint8_t readRegister8(uint8_t bank, uint8_t reg); - uint8_t _frame; ///< The frame (of 8) we are currently addressing - -private: - Adafruit_I2CDevice *_i2c_dev = NULL; -}; - -/**************************************************************************/ -/*! - @brief Constructor for FeatherWing IS31FL3731 version -*/ -/**************************************************************************/ -class Adafruit_IS31FL3731_Wing : public Adafruit_IS31FL3731 { -public: - Adafruit_IS31FL3731_Wing(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); -}; - -#endif diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md deleted file mode 100644 index d885b36..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,137 +0,0 @@ - -# Adafruit Community Code of Conduct - -## Our Pledge - -In the interest of fostering an open and welcoming environment, we as -contributors and leaders pledge to making participation in our project and -our community a harassment-free experience for everyone, regardless of age, body -size, disability, ethnicity, gender identity and expression, level or type of -experience, education, socio-economic status, nationality, personal appearance, -race, religion, or sexual identity and orientation. - -## Our Standards - -We are committed to providing a friendly, safe and welcoming environment for -all. - -Examples of behavior that contributes to creating a positive environment -include: - -* Be kind and courteous to others -* Using welcoming and inclusive language -* Being respectful of differing viewpoints and experiences -* Collaborating with other community members -* Gracefully accepting constructive criticism -* Focusing on what is best for the community -* Showing empathy towards other community members - -Examples of unacceptable behavior by participants include: - -* The use of sexualized language or imagery and sexual attention or advances -* The use of inappropriate images, including in a community member's avatar -* The use of inappropriate language, including in a community member's nickname -* Any spamming, flaming, baiting or other attention-stealing behavior -* Excessive or unwelcome helping; answering outside the scope of the question - asked -* Trolling, insulting/derogatory comments, and personal or political attacks -* Promoting or spreading disinformation, lies, or conspiracy theories against - a person, group, organisation, project, or community -* Public or private harassment -* Publishing others' private information, such as a physical or electronic - address, without explicit permission -* Other conduct which could reasonably be considered inappropriate - -The goal of the standards and moderation guidelines outlined here is to build -and maintain a respectful community. We ask that you don’t just aim to be -"technically unimpeachable", but rather try to be your best self. - -We value many things beyond technical expertise, including collaboration and -supporting others within our community. Providing a positive experience for -other community members can have a much more significant impact than simply -providing the correct answer. - -## Our Responsibilities - -Project leaders are responsible for clarifying the standards of acceptable -behavior and are expected to take appropriate and fair corrective action in -response to any instances of unacceptable behavior. - -Project leaders have the right and responsibility to remove, edit, or -reject messages, comments, commits, code, issues, and other contributions -that are not aligned to this Code of Conduct, or to ban temporarily or -permanently any community member for other behaviors that they deem -inappropriate, threatening, offensive, or harmful. - -## Moderation - -Instances of behaviors that violate the Adafruit Community Code of Conduct -may be reported by any member of the community. Community members are -encouraged to report these situations, including situations they witness -involving other community members. - -You may report in the following ways: - -In any situation, you may send an email to . - -On the Adafruit Discord, you may send an open message from any channel -to all Community Moderators by tagging @community moderators. You may -also send an open message from any channel, or a direct message to -@kattni#1507, @tannewt#4653, @danh#1614, @cater#2442, -@sommersoft#0222, @Mr. Certainly#0472 or @Andon#8175. - -Email and direct message reports will be kept confidential. - -In situations on Discord where the issue is particularly egregious, possibly -illegal, requires immediate action, or violates the Discord terms of service, -you should also report the message directly to Discord. - -These are the steps for upholding our community’s standards of conduct. - -1. Any member of the community may report any situation that violates the -Adafruit Community Code of Conduct. All reports will be reviewed and -investigated. -2. If the behavior is an egregious violation, the community member who -committed the violation may be banned immediately, without warning. -3. Otherwise, moderators will first respond to such behavior with a warning. -4. Moderators follow a soft "three strikes" policy - the community member may -be given another chance, if they are receptive to the warning and change their -behavior. -5. If the community member is unreceptive or unreasonable when warned by a -moderator, or the warning goes unheeded, they may be banned for a first or -second offense. Repeated offenses will result in the community member being -banned. - -## Scope - -This Code of Conduct and the enforcement policies listed above apply to all -Adafruit Community venues. This includes but is not limited to any community -spaces (both public and private), the entire Adafruit Discord server, and -Adafruit GitHub repositories. Examples of Adafruit Community spaces include -but are not limited to meet-ups, audio chats on the Adafruit Discord, or -interaction at a conference. - -This Code of Conduct applies both within project spaces and in public spaces -when an individual is representing the project or its community. As a community -member, you are representing our community, and are expected to behave -accordingly. - -## Attribution - -This Code of Conduct is adapted from the [Contributor Covenant], -version 1.4, available at -, -and the [Rust Code of Conduct](https://www.rust-lang.org/en-US/conduct.html). - -For other projects adopting the Adafruit Community Code of -Conduct, please contact the maintainers of those projects for enforcement. -If you wish to use this code of conduct for your own project, consider -explicitly mentioning your moderation policy or making a copy with your -own moderation policy so as to avoid confusion. - -[Contributor Covenant]: https://www.contributor-covenant.org diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/LICENSE b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/LICENSE deleted file mode 100644 index 3f50677..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2020 Ladyada for Adafruit Industries - -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. diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/README.md b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/README.md deleted file mode 100644 index 7f58723..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/README.md +++ /dev/null @@ -1 +0,0 @@ -# Adafruit IS31FL3731 [![Build Status](https://github.com/adafruit/Adafruit_IS31FL3731/workflows/Arduino%20Library%20CI/badge.svg)](https://github.com/adafruit/Adafruit_IS31FL3731/actions)[![Documentation](https://github.com/adafruit/ci-arduino/blob/master/assets/doxygen_badge.svg)](http://adafruit.github.io/Adafruit_IS31FL3731/html/index.html) diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino deleted file mode 100644 index a0fdcc2..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino +++ /dev/null @@ -1,107 +0,0 @@ -#include -#include -#include - -// If you're using the full breakout... -Adafruit_IS31FL3731 matrix = Adafruit_IS31FL3731(); -// If you're using the FeatherWing version -//Adafruit_IS31FL3731_Wing matrix = Adafruit_IS31FL3731_Wing(); - -static const uint8_t PROGMEM - smile_bmp[] = - { 0b00111100, - 0b01000010, - 0b10100101, - 0b10000001, - 0b10100101, - 0b10011001, - 0b01000010, - 0b00111100 }, - neutral_bmp[] = - { 0b00111100, - 0b01000010, - 0b10100101, - 0b10000001, - 0b10111101, - 0b10000001, - 0b01000010, - 0b00111100 }, - frown_bmp[] = - { 0b00111100, - 0b01000010, - 0b10100101, - 0b10000001, - 0b10011001, - 0b10100101, - 0b01000010, - 0b00111100 }; - - -void setup() { - - Serial.begin(9600); - Serial.println("ISSI manual animation test"); - if (! matrix.begin()) { - Serial.println("IS31 not found"); - while (1); - } - Serial.println("IS31 Found!"); - -} - - -void loop() { - matrix.setRotation(0); - - matrix.clear(); - matrix.drawBitmap(3, 0, smile_bmp, 8, 8, 255); - delay(500); - - matrix.clear(); - matrix.drawBitmap(3, 0, neutral_bmp, 8, 8, 64); - delay(500); - - matrix.clear(); - matrix.drawBitmap(3, 0, frown_bmp, 8, 8, 32); - delay(500); - - matrix.clear(); - matrix.drawPixel(0, 0, 255); - delay(500); - - matrix.clear(); - matrix.drawLine(0,0, matrix.width()-1, matrix.height()-1, 127); - delay(500); - - matrix.clear(); - matrix.drawRect(0,0, matrix.width(), matrix.height(), 255); - matrix.fillRect(2,2, matrix.width()-4, matrix.height()-4, 20); - delay(500); - - matrix.clear(); - matrix.drawCircle(8,4, 4, 64); - matrix.drawCircle(8,4, 2, 32); - delay(500); - - - matrix.setTextSize(1); - matrix.setTextWrap(false); // we dont want text to wrap so it scrolls nicely - matrix.setTextColor(100); - for (int8_t x=0; x>=-32; x--) { - matrix.clear(); - matrix.setCursor(x,0); - matrix.print("Hello"); - delay(100); - } - - matrix.setTextSize(2); - matrix.setTextWrap(false); // we dont want text to wrap so it scrolls nicely - matrix.setTextColor(32); - matrix.setRotation(1); - for (int8_t x=7; x>=-64; x--) { - matrix.clear(); - matrix.setCursor(x,0); - matrix.print("World"); - delay(100); - } -} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino deleted file mode 100644 index 2612930..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino +++ /dev/null @@ -1,43 +0,0 @@ -#include -#include -#include - -// If you're using the full breakout... -Adafruit_IS31FL3731 ledmatrix = Adafruit_IS31FL3731(); -// If you're using the FeatherWing version -//Adafruit_IS31FL3731_Wing ledmatrix = Adafruit_IS31FL3731_Wing(); - -void setup() { - - Serial.begin(9600); - Serial.println("ISSI manual animation test"); - if (! ledmatrix.begin()) { - Serial.println("IS31 not found"); - while (1); - } - Serial.println("IS31 Found!"); - - ledmatrix.setTextWrap(false); - ledmatrix.setTextColor(64); // quarter brightness - ledmatrix.setTextSize(1); - - // fill all 8 frames with some text - for (uint8_t frame = 0; frame < 8; frame++) { - ledmatrix.setFrame(frame); - ledmatrix.clear(); - ledmatrix.setCursor(0,0); - ledmatrix.write('a'+frame*3); - ledmatrix.write('b'+frame*3); - ledmatrix.write('c'+frame*3); - } -} - -int x = 0; - -void loop() { - // display each frame for 250 milliseconds - for (uint8_t frame = 0; frame < 8; frame++) { - ledmatrix.displayFrame(frame); - delay(250); - } -} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino deleted file mode 100644 index 7b17084..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino +++ /dev/null @@ -1,32 +0,0 @@ -#include -#include -#include - -// If you're using the full breakout... -Adafruit_IS31FL3731 ledmatrix = Adafruit_IS31FL3731(); -// If you're using the FeatherWing version -//Adafruit_IS31FL3731_Wing ledmatrix = Adafruit_IS31FL3731_Wing(); - - -// The lookup table to make the brightness changes be more visible -uint8_t sweep[] = {1, 2, 3, 4, 6, 8, 10, 15, 20, 30, 40, 60, 60, 40, 30, 20, 15, 10, 8, 6, 4, 3, 2, 1}; - -void setup() { - Serial.begin(9600); - Serial.println("ISSI swirl test"); - - if (! ledmatrix.begin()) { - Serial.println("IS31 not found"); - while (1); - } - Serial.println("IS31 found!"); -} - -void loop() { - // animate over all the pixels, and set the brightness from the sweep table - for (uint8_t incr = 0; incr < 24; incr++) - for (uint8_t x = 0; x < 16; x++) - for (uint8_t y = 0; y < 9; y++) - ledmatrix.drawPixel(x, y, sweep[(x+y+incr)%24]); - delay(20); -} \ No newline at end of file diff --git a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/library.properties b/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/library.properties deleted file mode 100644 index 86f5f31..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/Adafruit IS31FL3731 Library/library.properties +++ /dev/null @@ -1,10 +0,0 @@ -name=Adafruit IS31FL3731 Library -version=2.0.2 -author=Adafruit -maintainer=Adafruit -sentence=Arduino library for the Adafruit IS31FL3731 Charlieplex LED driver and CharliePlex FeatherWing. -paragraph=Arduino library for the Adafruit IS31FL3731 Charlieplex LED driver and CharliePlex FeatherWing. -category=Display -url=https://github.com/adafruit/Adafruit_IS31FL3731 -architectures=* -depends=Adafruit GFX Library, Adafruit BusIO diff --git a/hardware_test/.pio/libdeps/rp2040_usb/integrity.dat b/hardware_test/.pio/libdeps/rp2040_usb/integrity.dat deleted file mode 100644 index 98f8eeb..0000000 --- a/hardware_test/.pio/libdeps/rp2040_usb/integrity.dat +++ /dev/null @@ -1,2 +0,0 @@ -adafruit/Adafruit IS31FL3731 Library -adafruit/Adafruit BusIO \ No newline at end of file diff --git a/hardware_test/pioold/build/project.checksum b/hardware_test/pioold/build/project.checksum deleted file mode 100644 index bcbffec..0000000 --- a/hardware_test/pioold/build/project.checksum +++ /dev/null @@ -1 +0,0 @@ -2de8598838f642a36072de75e9b7456cb1dbd1f6 \ No newline at end of file diff --git a/hardware_test/pioold/build/rp2040_swd/.sconsign314.dblite b/hardware_test/pioold/build/rp2040_swd/.sconsign314.dblite deleted file mode 100644 index 2ebbf7103d3730d5b3770a774373c6802d4fa92a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38459 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 diff --git a/hardware_test/pioold/build/rp2040_swd/cpp.linker_script.ld b/hardware_test/pioold/build/rp2040_swd/cpp.linker_script.ld deleted file mode 100644 index 3860812..0000000 --- a/hardware_test/pioold/build/rp2040_swd/cpp.linker_script.ld +++ /dev/null @@ -1,160 +0,0 @@ -MEMORY -{ - FLASH(rx) : ORIGIN = 0x10000000, LENGTH = 2048k - RAM(rwx) : ORIGIN = 0x20000000, LENGTH = 256k - SCRATCH_X(rwx) : ORIGIN = 0x20040000, LENGTH = 4k - SCRATCH_Y(rwx) : ORIGIN = 0x20041000, LENGTH = 4k -} -ENTRY(_entry_point) -SECTIONS -{ - .flash_begin : { - __flash_binary_start = .; - } > FLASH - .second_stage_ota : { - KEEP (*(.second_stage_ota)) - } > FLASH - .boot2 : { - __boot2_start__ = .; - KEEP (*(.boot2)) - __boot2_end__ = .; - } > FLASH - ASSERT(__boot2_end__ - __boot2_start__ == 256, - "ERROR: Pico second stage bootloader must be 256 bytes in size") - .text : { - __logical_binary_start = .; - KEEP (*(.vectors)) - KEEP (*(.binary_info_header)) - __binary_info_header_end = .; - KEEP (*(.reset)) - KEEP (*(.init)) - *(.fini) - *crtbegin.o(.ctors) - *crtbegin?.o(.ctors) - *(EXCLUDE_FILE(*crtend?.o *crtend.o) .ctors) - *(SORT(.ctors.*)) - *(.ctors) - *crtbegin.o(.dtors) - *crtbegin?.o(.dtors) - *(EXCLUDE_FILE(*crtend?.o *crtend.o) .dtors) - *(SORT(.dtors.*)) - *(.dtors) - *(.eh_frame*) - . = ALIGN(4); - } > FLASH - .rodata : { - . = ALIGN(4); - *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.flashdata*))) - . = ALIGN(4); - } > FLASH - .ARM.extab : - { - *(.ARM.extab* .gnu.linkonce.armextab.*) - } > FLASH - __exidx_start = .; - .ARM.exidx : - { - *(.ARM.exidx* .gnu.linkonce.armexidx.*) - } > FLASH - __exidx_end = .; - . = ALIGN(4); - __binary_info_start = .; - .binary_info : - { - KEEP(*(.binary_info.keep.*)) - *(.binary_info.*) - } > FLASH - __binary_info_end = .; - . = ALIGN(4); - __etext = .; - .ram_vector_table (COPY): { - *(.ram_vector_table) - } > RAM - .data : { - __data_start__ = .; - *(vtable) - *(.time_critical*) - . = ALIGN(4); - *(.data*) - . = ALIGN(4); - *(.after_data.*) - . = ALIGN(4); - PROVIDE_HIDDEN (__mutex_array_start = .); - KEEP(*(SORT(.mutex_array.*))) - KEEP(*(.mutex_array)) - PROVIDE_HIDDEN (__mutex_array_end = .); - . = ALIGN(4); - PROVIDE_HIDDEN (__preinit_array_start = .); - KEEP(*(SORT(.preinit_array.*))) - KEEP(*(.preinit_array)) - PROVIDE_HIDDEN (__preinit_array_end = .); - . = ALIGN(4); - PROVIDE_HIDDEN (__init_array_start = .); - KEEP(*(SORT(.init_array.*))) - KEEP(*(.init_array)) - PROVIDE_HIDDEN (__init_array_end = .); - . = ALIGN(4); - PROVIDE_HIDDEN (__fini_array_start = .); - *(SORT(.fini_array.*)) - *(.fini_array) - PROVIDE_HIDDEN (__fini_array_end = .); - *(.jcr) - . = ALIGN(4); - __data_end__ = .; - } > RAM AT> FLASH - .uninitialized_data (COPY): { - . = ALIGN(4); - __uninitialized_data_start__ = .; - *(.uninitialized_data*) - __uninitialized_data_end__ = .; - } > RAM - .scratch_x : { - __scratch_x_start__ = .; - *(.scratch_x.*) - . = ALIGN(4); - __scratch_x_end__ = .; - } > SCRATCH_X AT > FLASH - __scratch_x_source__ = LOADADDR(.scratch_x); - .scratch_y : { - __scratch_y_start__ = .; - *(.scratch_y.*) - . = ALIGN(4); - __scratch_y_end__ = .; - } > SCRATCH_Y AT > FLASH - __scratch_y_source__ = LOADADDR(.scratch_y); - .bss : { - . = ALIGN(4); - __bss_start__ = .; - *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.bss*))) - *(COMMON) - . = ALIGN(4); - __bss_end__ = .; - } > RAM - .heap (COPY): - { - __end__ = .; - PROVIDE(end = .); - *(.heap*) - . = ORIGIN(RAM) + LENGTH(RAM) - 0x400; - __HeapLimit = .; - } > RAM - .stack1_dummy (COPY): - { - *(.stack1*) - } > SCRATCH_X - .stack_dummy (COPY): - { - *(.stack*) - } > RAM - .flash_end : { - __flash_binary_end = .; - } > FLASH - __StackTop = ORIGIN(RAM) + LENGTH(RAM); - __StackLimit = __StackTop - 0x400; - __StackOneTop = ORIGIN(SCRATCH_X) + LENGTH(SCRATCH_X); - __StackOneBottom = __StackOneTop - SIZEOF(.stack1_dummy); - __StackBottom = __StackTop - SIZEOF(.stack_dummy); - PROVIDE(__stack = __StackTop); - ASSERT(__StackLimit >= __HeapLimit, "region RAM overflowed") - ASSERT( __binary_info_header_end - __logical_binary_start <= 256, "Binary info must be in first 256 bytes of the binary") -} diff --git a/hardware_test/pioold/build/rp2040_swd/lib23c/Adafruit GFX Library/Adafruit_GFX.cpp.o b/hardware_test/pioold/build/rp2040_swd/lib23c/Adafruit GFX Library/Adafruit_GFX.cpp.o deleted file mode 100644 index 0962137fa98140fe69cf1a64eb28412f6027dde2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34784 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 R(H=<0UBYo3O{>sw{{gM(QWO9H diff --git a/hardware_test/pioold/build/rp2040_swd/lib23c/Adafruit GFX Library/Adafruit_SPITFT.cpp.o b/hardware_test/pioold/build/rp2040_swd/lib23c/Adafruit GFX Library/Adafruit_SPITFT.cpp.o deleted file mode 100644 index da1d6909c5fab4acc534961f6d0374b245d1b839..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16776 zcmcIqdvsLCdH?QSy%9o)mmWy0v=ZongjR2vr&j2J!B`Or5M)@bw2OB^k7c!h>^MPj z>;xMp#~_SBvRx9B1V>IMrE$}eoE$@&oVedNcV_qQ zXjdYCbPjiCzWILh`@Wg^X70>IM;f*?DvAOkDUc6A3Euq~h5^zj*=Cj} zU%hh$O{|E5r!Qqf!sshI=8R?xq-gD$GL(p=cr2NQ=8nF{=*-d}jZVg}Rjt6i^t)#Cgh^X6e?xC?*P;aBlD`qG`N(P|wVaN>XX44DAV}|HUr5vmG5Avu53?&45NBz`$NByLp%|(xru&49TD`H9B zY%=sx9kzRKdSAhQD!iA}KkPC7evmnN7|=sy^)B1CI_yK)dx1XRLtm3%2|xjiZ`g`6 zYObox-wye)6JnN>?0hyCc~D)MKcHljZIROmXAVH|s`13tWeK~yWr@RHB`3>UmGlem zvIDygynLWz--<5PJ+bd}6PPP2%*dQ-VAf~ZX(mqKbFNEfZs}d7yLa`Y%#p&Z+ znKzCU0O6?w%$owZbA)Q{aCw=z2JQTKLd4eJPAS><7~5sc%CFt@_+oW5qR2V{~^)S(P`gtSNb~ z{HSRt*`f^X$8p@>7?(4$rxu_HaMTF*G1k_y7N!x%Zif+EXH-WzWkgv$f-4Y;Zjb+b zDm`IB8@9!aDQlwM%ZI#DLfo4YYl?iogE5wc@trUVdAscx*+;?sh6XP-^{BWi-qcQL z&uHIoDg-n5>eVyUo?73z^30{A3y|lu&%0QBH1-83Y951?jbl(0eG{!)KbP8Wi`O!= z#N|)hzh--25>`gvJf|sT-%NGdQnXwxX~mE2mm5#niYNai^{+M4DP>)?7X4yXRNnQ) zX>VzVv(!_)jZrTquefWEc`@p*)miU{`3qj z=H&|wrd!U&bLqKS?8|UcVQV>_d%6^oMi&F%D8_<1G!OeY7h;EC<@Pak1d6ty=ghlG zSDMpSjNT>Yyt8N2)-X`$n&uGnAPc?!T^L$4mL@mD##prcj)afV@ppE-tJw`VNX zVn&8-rdua67T^xD+Fb+fp3_aSBQ?0gsUu|oLj_=AvrIZ#rFws!zO)o~+l-?zFc+3& zsY9g`NjYEM^NwvLj&k9c+>^iAMVV|l z;X>|F^&}MLO(f-Qw4bzPPeRc$v=|a?sCmw|aPps0FKT^R>$J;_>!RjjKBrHV@4cSsA z)zinc)YL(3W7cvlW+?WQB`WUvDeVtw=d|dP${LFnH)M(0^3yr=KFn5e#m9`a+i*4H ze$y6>F}iTYzu6(jZ_CB?8ht$W%ySJ2lrWLs{86H`KcGU&Uc z36if=l%)))0EN-x8}^;qXL4Wn+}wAziT3R%7VlMNdKW1ZWFz^iN-fH9&n{9CueviZ z9(Ak{r|;9rSMOfg-}ru}3bkH(`{Ajjc<%U;%^UV9IoHzbZ9D50ZQfuTRBPc{DzV?a zsuX98$1SJ#)#`x)I8p>R^gZ?itkK_Ps|S>I?XcSWK_+D1IPwWQ9YM*zkKdls_tRU! z_rR4HK#S(NP+e8Jo%joI-=rMyokqEr-anwa=du-NLGR+n)|96W=qQWZ%*N7tb#3_{ zrc^xhRG=;z-~TbJ=OgaZO;O1B=c|yb6#Vb_S2O>3F<4k3p(f6tGTT^tlP~9ugk0e~nbONZZu3wRcSuBfMxL(QLt;Z2lw^&YMWW@{n!Lq+&6zS=9o#8c2(;9lraK6b5`kPyf;$0RIb8#+c6$*Z#^)frlafaZy z!p_fl2E^DBt78R5TX5chy`KS3SS;pNC?oIK7EjVSFk`?}G-up`C*+AEP!uy(a8!>t zQ>9Y<@l*kiKc({S6h*3F*D-gQ56Tej`NWG+YpyDXq0|5l?-^zh@wHOK!*XThP2A^% z7l{EcV#mx-aFiI|Sh^OJs^3hZJkYn4YCb_fU?gZkctWQYI*ZQ(^+eDY#o!Cx5k^LB zY2$QS#xpUGXnoAVtjl0lrg77o07kxur;kzFf1$V7y4-}kWW^fjlL^~VjfyAs&+Vp? zQuzU2smgIZhUbl^Vhl&|7+%a{c+T6(Yx)dQ1gDRi^C*Iq5fQ&rnYtzYEDZcijHkJ^ z?eJSV&lP_({!1RclT-R#hMzszDfIvKr>VaF0dxL9i=%75xoPWX&2_#Wb3;$3%jtAE z&8S>yuBs^R^!N+RwIyXGR&!aYwboi%R%y=nxw>7Bepi9Hy{`44RSsWIacyy@&(YiE zHv3$MJpG=&UUOM>b!BbsZm285PB>hSP7f&ASd6aPR{RjeB*s1zucSmRR2C^q)Kn!+ zNmsIPuaJ^rkfY#tpBhBGGsGE1l;b5iL6YatiZdj-T?dnjx9m_o-MWKG#hoEkKNnI_ zO+FIRg!+0(Mlq07ptWX9^Pm^SVEcJ+T9S=u73NFr=fjUU9?!vOf4&ip zggby*5GYYWMRcftix_@m02QiL@eUhWvxMRE19-gS8j=cW5rkD5rz7jWzdqnWs-gwv$rLH!ncAUsrcz6lrP($CB7UMP@;kg>m~epNna=F>m+@>q^I2}m{e$x^bJ8J zmQ-kx^i7g}lce7y={HOI&60kLq~F5EBe)*~R~|J~VXK7SD)F^Q`W8vwD(PD#eVe3j zll0pq{dP&eQ_}C0^t&YeE@}REN%%)3{3GytM9}tUV$UNIemCO_R_+cKv7~}sk~<_h zu(7gw{3a*qRY?wgU#oz38beYc#vqaXSja{bWQAJhz#M4iGFi&Ow`ixqg=DOwPv%tB zjZX@`&-x_&S0w$nx!la~i(o>MlhF`StYrEn_#p=iJdr)Cq~FTrLDZ$-`|I@oF6vV7h7yBAO8zWmau%%QGDThrzK_}rLr#1iNq&Ok$xI5q zk4Csme_(y}BgZuGa zF4H+I1^3@27;zbS%jEU&2$u_)TnA5bnfy<|)7v*t7Kz6DBG)%!IR*F2 z_qe=}$xZNkF6;c8AT3t6ulHv&RCD<$hTj71T&6cm3hrlvTz-(rE$}Lr>12|EU!?y& zqj)#@3eb-iNrKGc35o534W^dlq)ZB2W z#MAF{l$6c@-B^D=&{EF2<>4K(kTN8a&WZ)Vpej&w0?(+gI7*^Yr?y)s90BPq(A9+tt|T+u`&0T@8n( z!z%Z7AMAId#_4&~<9Bp3ARDW)z_2zo?nG1l{b7f&-WuY>wAo-zwgjBBTAR_$!w#Pd zhqD2Fk4*X(H{!zq$Q+q9qDg9Pwfgt^Z3p{zc$|KBaAc=iVx*4#u6Z*X#JFB%;**m-Yy7qf|9}QLptHOm|wX?^u!{PDkA+>qh0FfTY z@iARLO>He@hU@#f`+N=l@Et2FXP8D$cXz9+%irR2b#;5ZUL1&iOc9oTXqy?3HG4Vl z3>a&<)8{zc=;-%1Z}IfH2pP$&0B)ZJSfTgnJ}868**KY(txYzY$KT`dqL(fH2y3;b ziw3;1sEW#r zC%fP8@cDNHx1j0qP>WG+Z`iu=KIm#(z0R4qYA~*KeS|KSu{o&M``8cxRPO0L3T#GpFRy`=V>k(m9WD2!xyPrPR zZ1Q%rZfa|Y$iUYp+b%Gm!bd?Z1^p}#FTPy(Di7OX+TnVgfw^djFfKA|b0l23fsT6D z5)m03h4M1CwYF`aHdM^zkoRCEn;<=CLf^Msg9i6aZ&u5iiM@f3X9zLd>RbE#4nKYa zgCHaL|;R*F_Q%bpq*6gc=oOVhuwS7=dvI2`1}VQbXUS-DI^RA zb2_$>OlLI8ODTU+{}yQK*Y6)BZ^Zh5{50TSFrfTZz>~R-r*kFg>3o{-oc^~+#E1W{ z&1Cu_Lh=BYvB>1FQ2sT5uXFh%mtW%YH@W;4<;Z)D*T2i0stKZ{;KneZi4{{jH3$3yltk}=;W z<=eR|@*5;SuitYM&hl}er++6-z|YPpq({<1%F#a>ck*K^&pUbEOF8=E$DI60A{i%f zG3Dp@JR}194xR8VK2L)H>qvhdpp9~r86MlQdBb+gsUF*{r2IRa7wv@be>ccqN;p1_ z#K-!Hc?Z>Feu#2x&*B69EF<|MA8*XjG?URJ(0HU%j^n}nKxGNZ=vNix2%;|`)ZWeO zSv=vmeUW4ww*<=1^0-AFic=aF<|p#d{fc-Vp&WU7DaU%&9(kT38F_?1Y+R6s`Heg* zjFulYE-5leYn=zovKe_%ZzuU?<5}_3@+}O8Ot`@jE&(_xtqRElPgZfFDYn z4!;9RI`ITkLKP+Vd9jHA4qR_a@V}k{m}wh*ge&7Ljl$jtXK54Z#y4{_<4x~AkTcz! z?xQ(fk?sQ)?*21#GviHYrpXAs^+ZNazx&K=Kin-SGP~i969CP4)0xG%bmy5FJ=^VP z=GNA*_n?{E$Ty;y(P8gK_uIs9qnV{i@D^mag57tU`?nMR4i%X8X&Xl9O)4_ZI_*9c z85{XlHA{y}`;GUj$OfztZdo(a8}D1QAPqOKnUPlc4mJyX+HGuRyy0FpGjRH?Y-YUS zel{~O%uOxwyaexSvycYwEbQhs3tHcAf)})z;nHnx7O?SNH#1bey5Y_3FKa+IxLI0+ zz4gt~CODSt{-@6lTSy1JC4b?^S7yrBM@JVtuY|iume3~^S1+D#@DE=~9Dcvg(|HiT z*+I#pzP^KAJQ&?yqVML$zt*608l3?h_|O?Oia#=L4b}@B9t$JlHlmKsw#0X81{|I9 z1P+gl5&7sGEpT|ujEHliPWX3r1{{r)z~ON^z?Xq#1)msvC=KXY;Mc@U*_aa!|2vB% z8Am!wEASyZv*GC6%s<2uI^5{-0RHRR^|PsZ+6E!S|%Zcges*EM6b2cS{v-HallZO~ z_|gz6_&${Q5^)0P|CB`%e77aOG2}aoAO}9Qb_8Dnwx{Nzzh+zj2n{4LzZDX0BjT0@ zP{DY1O1KWh(YFPWgnu1~GtRF!Prtj8f6MR@{+*EcE+ZdS1(GO#Pr|*0IAM#x0{2S^ z_d~>84zLB=Od`(c-%<3h6mjIA1s~zxJZ#U#j~no!qRPN0?9M?PHLI)1ki7jB(DAaI=EPZ8`^Ai zgz?p3F8H=cdv%!dXWU*HzdBZ$S3;SgkZt<&l2B{kS|w|VJ`UoLE<})e4@Xb419l-_&!2DvL%w> zv*5Zm&f9+??kNGnT(nt+IODusL%Slbws0Kv>oXFc7r!yr82E(Uha|o`$S1~StAS7a zJrQ`-zem0-tQSe}y(aO|!CUy(ieSNaL*h$L z3>`ngcU|I(L%wF@p}3-Rhv17xBgXkSiG0tZUL?U6jX2|cv>5odBUtdQmiV&p5PnLK zVJ`TpCBD86e>XW!_*;Rv z4g&B*{!#jwWY?Sza0%|WZnC*_$6TE3GF6kVePkY`UnjN84Y$H;4_7C?t(pPaO*hOx-QF9d zr}o{8(#G-Y$pQ0s@d)|jH_U#zp7bdior*QaS8hLCi@@GEHeix69P`Jc7~2i=dh-3a z7XQb`ZL4?8YA=5?o9Sk*Ey z%MZ-Po-T9a-~ZisV4k3At)W-zR(`|20LFU9Y+3aa4eVL(GO0hfu9~l*-}|U5>;4`_ z(a{I#mNiCo30tFrVQE+uTB{d?s|d@`=zl zD;ky1k|?~|Fun3*!ua{OekB z=4EZ%%4>;y#>i%ktcKvz+UW3LCTE|}qM@NsL>mf6qLJ{>h}Lfzi-uk{PH3-=E zZsiA~gBeRN%$u5JT*{Sm#ez08HZ~HCeuKsbFks!#Gdc40pc)vR8$3|X4zA9(CvI`*XKubDoAErs7N z|MJ*-Tt|-M?XVfrkJ5_$7xKhMojAYBdhs-89D73G_tQlWzT~lag_-|3fp4R$p7`6a z-SNAQ-6!xJ^r^?*>q-$k{%*Go>{E`-{q3hCH1614!p44?o1F^HmrB%UQ(u-+$?307 zj8CUh<)ut&DwTS5W=yxTOSwXE>@@Ny!119(E|;S^k;#$7rF#BTHWF$1f?*}hdf`Y| z#v`K%yB?xOFnj4@JwRl5shle;OciXyvX)AAqVD)2V}+vq@=k!mMj?Ba2d&TB$o%!E z6&cAIwmxsxdaXPA$cS$505&;Pzn95KeSc&$V=Uwf?orOnr6LhLp*h30u^QzBFV!%= z{!YR>dZB3Lbu5ion@xB0f@OSj$tcV(W6|23BMk0i!sbA=f_Z_Gtf)qivziDq*PIa^;u>}=5i)ZIED*kUhYmp)2eZ&Hu- zPpOo6ucvg|xSYdYOl8Z(l&Kf8iv|eJzVg^cMFBd{2uTVlmQ58=MKC1OWMds_zQv~G(L=XG1e=E>a_<-89* z592wFHF(+9EqkdH+VPu5G|d%qc1pJ_eOYXs5T8O3u!_8&u!-s(*3f)0pEnBFb-3n- zkeIDpX2~|N^%kt+QVH92r}8U>-={UzVT-MBxxVs6|+iE|pRZ-F}mGB@9!fpf2+?Dqgb{7n%xW;8%tZxcK<%M)Lhk@;L<4 zuqPxLwB-A#J8<~l-1i^C z=z}dq@_hoo`+1ym&6mHXB;R37$j$c|4EH{je4W6#`Lf`Pfk#8(uPe#-3UIvs@*Krr zOAfe2o$WIozF)Y;$6sTTF9RGucgZ&io7Y*2xi2n1f*)fm$Y3amLHOL^{}iw%v#b)mSx$pC5Y`jR=e7b_sV)K ztJT^rP^&nAi$e%W0M`Z@@_-~J)NxTtPcU^bB%z@_GNnCnN+5;wIDc?J=}8YQ_|*M= z_s;Cj&OTx|p>xjF%x}K$e)F66%v~K0ZtHM393+E-YA9yf#E@ zT+=6q9KLf^=ME=29qvHu?=Bhf#MB)_E;`;Ba9{b&|6VDhMc$v^UFH4vyV;6`6DWPI zhtm~j6H~`-dXA3lDWmx`T{Y?1MGv&n#UC%Kp<3S+pNGy>G4IqKH!WUxYG(rcG76Y; ziE13vjMSJ^K*6HO(C=mc742|2uN0eZ;!4KLMG-0ZUIXDqw%!Wx=f zb-Dg9Ihr18oi}}9=1qv4mAXoZ{FPS2d3 z;Wk?J!fCh3B|B=?PrH6XHNUyQ);pJ+8yz)ozdGYFJ8Zm6v?qBkH|&iJEJ52vo^EY= zZStmzLuq=p)i-@{=vkCJ+OcQoxjQ#k{nLRxD6u85Cvp+-#fYQ+(j^{6zt~M{Y5I64 zkATPa(AvMZdbFCJ*i-AjEwF~J_~RYy0eK(W$?+PJ9z1=CZEqZ-!bGpsJo-A1&i~j= zwO^W+xleX};Szbz4rG4%dg91HWw(pwG#CTHfwFKg{PLLv zR?XZ;X3ntwq-WrWn^t3PxqVi77(sVMz7%;qa*Rvsbv5wgMk;ZZr=P9cdSue$!kjxY zFt^?uR_%2XY&JgT97E1vYc zuN#Z&Lsiw}t#mNwezf8>TdTPxpCm8mxSp!9dcgH0TXRk)&dy;+M5vhJT%OS~c3Gvm zsLYD1$w`haHYVTse~CNW+HQ8&9PAAb?ss=?|A2dQa>N}RiNvDOSkw)0oqI!LZNyBi zcDK~k*ZJM`K7WhfSKs8WNydg_;qlmN_Z^#e^{fvkM`~MYBgydSVBDRIrOk13Y}8%f z+}zaCau;pJT0!AhIAW5c8p*N^eYHI_YwqlxYaErX`HmYLHyTxrg^opzWf(tNa45Em z-oB!kWY9d-gk7oG*K78CD$mK`-7y;s?2@@S@0!_Q&;kwT-835vx>3V#%z{W6SPygc zt2BI}hA-6cMH;?H!xwA#VhvxS;Y&1psfI7r@MRjlOv9IJ_;L-e)^HvU*;Z5{Dfc=sHTnz>_Yy4)5-<}~gXHuLna5BstzkE{627_+Va6Ua|gF&}x z_-$DbDT6j?IG;4L!JvSK2P}VasuCd}6IN_ctH$ROYBm_uuHo65Gs~ckEZMRJ7@NCYG zY!WGhc53)e4e!(NJ`L~J@P68u!zjZ&L=Cg)fNIhldML-v_9SN;^uZj|pxZTD-5r?k z)Nn(ybN3g6$~1hIX3y4abyw%|uF>$^*7i=)Oei`gIEi7K%_)GA%h`W>1b6@1?LD`^$otKm;*_V)#!@4%Hf3BMuiEtb8Oeyi~p zC_{|PZ_@1BV6(rrUM)p6{3DwEdBKlb<*ldZh5f2!`{{L!|38|2MY9(vL!SL>hRy!) z$oEhK?bYm$3Y*7|2m252=*-`ZrxN?g6Pn(4H2eGFeaZi+u%o3ghl!K5 zyXmW9NxBvDW*+s?DPePe%)`mxyTXQPwF%vBCS!Gji3F`k(TXUAI=Ag;-MlRn8lQ-S zx1ztH>^9RE3=;BQGK&9oUF4yD4$eX&$1ni@+6cWv+Uhno73j0M$VWZN_y zu(Yk_kuFHg-yDhUGe`SzYZ@Oh$N9<>j29B|H^oMyIW()i^7Q=4*oP)!*xYN5ZV!*d(A-?F;zKR3p9aSghjRL9S9f21h(=-~gNZ{W+NifX zUa;FXj>l4M!()T{gCiMF*vXcAtmYpbJQU2%hK=&GgpTGlaArWF1qLykLK7)-I5ddi zV-8}_jmHL47$Bk8XeyR0NjPYx3e~DH84E`Xw|oPJmyI+gQ)A;B`s2)PK|v$tXjo2- zZWZ+VP}^8&JcS8vy&4_vO&1(-`GYr-(`>e1X78Yxn=fZhZ?{177V~Sv-FiKbh8))fk@ajouQNL-s122h{76E00ll`svGfy%mc;vsuj zbFuL%caz}u?hg#7gQ3CU;&s}%FE$!WV(N75-Hyekt%&vpeWwaq%GeXrJNh>BLRZ+= z_eMV0FqRn44BWilyvpV%D&YUU1+dOpCx)*4PDLZ8w_-ov-WO6FMSr#@`s+ggdeOr@ z{h^M&#!%meP{F-NY%tc|XYC)EIbLLc$>7c5Xfzoc9~TQdFOn^Nv5{~hj)fX84_l4E z*-bqYsn|he*(VxhIraMo$3`)KCkFZ4;IAJW$4O)i%ln~FYNR)gMI<947T_kVuE|u; z-s_ZF^O=b&*#E)p>XK~LS=|@aiGpFMHXKV78 z{)YYgZuwsm-O2W8qEU{YCQ5VsEYU|eevAlBOHNdR>*?G=geD{BgLoK!Ld1U~{6M|t zaz0|qzrV7-bvdVyiEz^{J9d84<~t|tdysQn#0N$F{?@LKGfDVjf-(--?eF}A(EAI! zznpNA`^ouHyS~m-MC;i8l-)nhBX&DGC+zw=@3-&qPE<0$yw8gEK49NxoqtN!Z{5xh z6ZJBl68-Zr7=6a4Jl7k@0b=?%Vbpa`6bU~`A(I-*Ax}ZKOm+{XlsYQ;!NRZyaYqucZ#}}ck3z5RPR1Tneqly zhhNZ&k}`Lp9MA~WCV;}ynf~cJDOS)ixZ+SP0dSTAtTApgh2}oknsm)Y~Wu4RuRzy8& z`~hcjwdBGl-eQN9yl*`@r*l=e;5p^JIY_^I%eB>C?P0ip%kSl}xGp)y+lsoE$Yom| zk9j}x*ZFfRmA6*dA8W9><_($x*R(&@=`+7@ZCwA+&!Jflti$?5qV8(Hms)R{qh=}; zPA0>L?1s$rPT^Vb-V9g!-p2=vI{wzHm5f`3-q}H_8yp)M!KWvx!+(3!g;V$x8o@;e zCzE~2v55puGglp6oWtLpvw_d8$g+Mc57(QF-eRO3cxK_@@Dn@A z{N;NHhiW{`lRxk2JjOVz!o%(VZoGBiSmlZWSdYh&46@uk$WVE2z?K+uWg1tZ9Ny1i zbN|X9c`qQt(i6b15ML)rh$U|ZX_a>wb|Jl`AgR1LFbeTHHQs#KD+-irYP^lGrB6(k z>0=u2X4u^BGDzN(#%nFY`Re?0G zAItG@U$eh!q#j}ppMYMuowWXnY`O^vOHX9%h91AqdewNO-XY+se-FU$SxWXFsW&0@ z1U8`Pc@@1!HNA7t<8J^mNWCv>dU2(`D?yh2y`t&;6ngWe7-FgSlBRc1(c?KL_5MrK z`%mcIT0rk@P4B3pw_4F#goz7@O#jy5y)6aw7J#Sr?{Vl=fye!^7LW9Alctx3ULpT( z*7Qy*{?#gaW18L>=tY6c0MiQlHNA7tljCJQ7}CElYkFL-SA_;gQtyPO_cHXjUAVq} zJW}sPsV83i6>Pb-f|k+ywZ?k~cA<5s8p3LSxL|XcGH|&ZmLj3{M+F9{8~M!T|8ip< z*S{SJRqsyNYX35iLjVa?&j&p@fAL=m8NGzm6ZL%@cA2{HS};VZIS+oS}_O(4zVxf749 z$174#G{Co^$Ky%{*)A_hJ(2N-Qjac>rQVj=x$W}3B6{uMsqONXqSvkH{e#pK4srju zMVcd7-xsBxz-FN5Mw;u}gGc)3LgjdVVY#rvFQF$jID^xc4W8wn#lqObrYq;$4#8o2 zKK^jOI7Pe6Ku;Y9QoBOx30@WScpkBTJMl1&^(OI$W9i>z=<)yB$RPFZ2gxc|0L)`8 z86@vh;HmZSq1;D6Vs1YkS?)7J&xbq?{pjy~cGCLGW%2VIc<_yfk`Jx%a;F?)AGTN5)45K>%g~IAP5La5ig*Ww%y1p%Zas*}UY) zSe806U>{XatEVEu)c&b=7e!TBxxQ>ctO~K}rCo>z)ibIE8N*Xz+Kim*D>s*gv(R3% z)bWD#S6h~9-|o%q%h)r|MTFOa>U)c)RsWPgT=lb+yW^NK&f;1mxbouZi!Ihuqt3Xv z^zo(k1#nic&Sc?L;jGYp=jLa3EElh@#N*&>U+sH#CM)(?bAsc@=-Yu^%9F|y+u&?F z5bIhV`o!Exhs)QY+{l~oe!-FSy8<`!Lf=1gCp#P&m(S<$1{}&K`M2WW`d~Gltp#|c z6->~tDZHP*wTv}gkTYeW)!g;KM;2)EcEWR!Q!Q`!t*g&xKfVNg=A28}VHLc>-W&O! zskieKTYwt4wX%> z6vtGX6YNJu_Xg^e2}SVSDf0e-qcZ0f>@mM1P_O(4$7RZ$v^#vaa8%cFK6`y8=I_B) zpX7fUhu#lXqgf}wIg0S-yt1tK-;_0L;{#{IDoE|wt1TD&b*pb?ao}C%+z+#j0b!5e zy^-(A+|CP<&#&M!tH=B?wKcg}%bL|6XQ8_)*M4G$se9q?*``4Eg0gZoOJ3WFn;45) z2!eXzwqOA010CTNQ>wyIP%Zq%*XlbT5aHK8XM9`0l%=-H z3S^a_pen(47M0*ImP!zUfxu&uGZTtT&q%?8-;{<^Nogb*m18kECL!1(4eaiXCe%)8 z$mMalB~QP5$ldSpO3sx0v>ZvxozfG-hbQ_Xsbud^Z!{H|osLT>`B);II65nN1_!-E zL*IqrZX8`ijzkk6wBoI0V6t}ts_LpIwg@)!1HyyCm&F!go3LGY2uFIC8Q)_w{QHiP zAg+7M0YrSHMia5dXd;+lr?CQkqlsYQaGYU-iBQGiRR)yeS95qZhu3g;4ToDf+{)o~ z9A3xa^&DQ$;SC(#z~Ngtd@F}Had;DlKgjvb9KRVPWYDFXzA!USgcgq9!XT{_VLOL! z=kOgIzJtSea`^ge5aD4Cf0%18ak#|ctsG7Xzh)w|ad_Jrh<75ib9g(}fR^Qy*(S|f zYa-%;YBUiX;K2%dXTE}$4fA`3^M6wCDY6ao{Wj+x#KzRVOT(++x18UG9U=T74X=hU z=U*uJFKc)WTtS~%Bi>x&e4F7FC42;Z(*GJ>Hn74>!KXLX26b?*;J>8#_3(SH{l7S0 zGQ8rXe;9qze@tuN0LKbG&6^Fj!fOSeGRp={aJk^yHNP1?MV}ez*$hhr`Mv0qzJ_5w z%N)K~!0FAmVLrdZ`2sE})LxIj13C-7OXKf^!v&wZVZ(eqzRs86^>uzLyuZ$G0~n4) zo=nXp)UbapJ$5L3SU!?St8&UUttenu!5)KfaQu*ecsv|V&qc#y;qZ43dLAj!D&QFj zxgRZpW1hf%T>qzKHIDyS$~JW0Z^QKwCqrX}h@OFPu^;--5W~@ZV_uOr*_$s&bbU{Y zb7P#aVx)4tzwgQXKSaVYc|65=4$8A~Dlxr@XMW#}y~k4tRUQfHd3CRxV~hjwr=pYY z@Kcn323~Qh4Ln9G)hqWST2%IqQ1sA&xLP)|3-ZbG`S0#e$&pwfG98y=Bge`L?j~lr zfxGpPVKpw#hIKN|K?tXz)D)C#p?A8(19p2z+&CGN{o(SHq4&L_@l_%eDnF@SC6$;} zM?wb&BdOS2V)p33q>5cmj?g@?I&X+bjCx?YB$iB+eJq1ou%~A$3RfiSQ!!Y4gVry? z{)C#QCAH*wTUb@gw#SwA^RzcUvT|`)o|l~@@9{)Tjc<_PkEUhyTNw9gaE8hez<(WB z`tL4j54NJ%m#F+Y;BJrQ0X>ch|9Wcp7}in!1mM>LmdK~QpGqf{KKyZ|=aXtAilv&; z%Q(AJ<%|lhSVWD0E1FJ&iz-}Yx7HH-j<$_#x_NQgRLgBqw83s#`g87xmBlNywCl5h zAF>4AE%gVzxBzcVH7>&& zv$@5%f(G|klJ!<;HIh>26xSE^-Qk)(noP>Gn7?>B<%+0kDiNJi=U*X?}^7gIe8voWV`U9HGd;s4|4dp^c~NP#bw|0tbZXS;Fn#|81Fr- zG3uqzr|)`Zj5mNJBkuwd==+`-R%UjU9N=JkY*K zBS9tbaKb^*qIE= zm+xUaI$vPM^v-j7ib0P~`k3Aykw^2#`b7FHw@H&Qx*D;PN*4DGYsDMmynKp!biTuk#jQe~ab7MO#z7~SOmB$OvtvI9W5)Di9M4&T z_X@}BDZ#tK@%l^fZgafd$YXt?KC=5mg|o2!LdOS?cZ3ZBOPVvfzKuMD6bAhW9a=k? z5r>RQrcM5zkT->GX+5U38oQk{kET|Qp~Y59U8!J-&6=c1OT2}cZb4f@i{ej`-DK>pnl$WAV->-J zAc7Z9z4W37p?DIZ7olD}c+E-t2RwQ5FVHvXPO}->#DhMV%=_m1=FQA|*_mgBtMig1 z0XGR^&_MvNgKZ{|Zg(+=z;VczVe5HW+REu)$}s6G%e0|MlQJEJh6dO-w8)MO@DyUc z)*bVP^+t>Ac1FhC5ogB_!R_En1$BYeJ2N)nYn3h7+}4`A-Q15Z4zzs!k`mh}>XiqI zwscL&*)^q5Gf1^cstS_R%4|ArSaeFsswp+8q!P(&GLgzCF`GOjx(WkVS#iO-N5Whd=Y{}p~bKi^$$xU(n)z# z8k0^*6Mm#c^XAYGzkYjpxhul}GWfhSV$7b$Wbnhd2LocS$q*3ufS1N-L4n^ZDi_HR z68I3O+Pw?|0zV+|VSx_|{Gh-O3j7fP55XB6VL2Se7RB>A0{-e^wv#BH|EG)D$)b4P zqd1w(kG5L~(p`7}Zn~J|H40&P)rE0?xvGB8UbkpTBXwe1mCN`CsSvf&XuvrNrCUp> z)WMQ`s!(he=Z%#_sc7CWxZah0cO_Xeu~C<4!wkZnF_Zs3X2u|^R=v>dweAe5S9>cm zk8F#QLJ`l`D^S`ddbNQ0=p{;~m}(if+1N8D(YAaX6Lc7yQH6P8a3j& z?2h8b*L{HlUflv>@2$yo9|TNQ$y0@+_;cn<7_N%VXI<_a)-s2DExWUGljUi?^<;FD3SkL#s@B$9BupL8x i1RHw+BiPtW!)t~vj3W5VgCOSa2|@P_1AOA7NB0LE$C&E? diff --git a/hardware_test/pioold/build/rp2040_swd/libe40/Adafruit BusIO/Adafruit_I2CDevice.cpp.o b/hardware_test/pioold/build/rp2040_swd/libe40/Adafruit BusIO/Adafruit_I2CDevice.cpp.o deleted file mode 100644 index 6f288940ad16c58c985da0e0d67ea3328ea8e696..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3128 zcmb7GO>7%Q6n>NSPwIx&ahonx@ZNeS-Asu?pR}I& z_WS0|o0+$7{CeWKrx;_vjX?0X697TUkcU_?p1zqbCjDzJ7}q6z zZoZO)V9@Z_{AD7zWL+wH(IT?R(;+s`}jdkzbxw`|Q z-!`_lik7d30LSDiNhZq%3^c9FK#F2*d#ww+)i(IP{af7yN8xImZGyaA8{eJ9TZMlA zMq2Mf4`VQ=SCW_Ge<6+_?%bX8*DVj~{=n$G*CgHZ9_hT*O8ke7U$(Z_+_;*f;L=aP zjfLLwt<~#E=y@aV+xRf<-P9>|jBNBg8@{o6dyDnRuwA>e=A~Wffp^%|&*R5#{iBa` zz8{CpQ^2Z5=Lgt>AY2=T){Z`FB@k*_S37>+V)ETu30DmADe!ze{#|F8U4bk0)k4U< z&Vo_sg*slYLAjV5*Ku$4D()wf{WVBVPM(!RPzqUHHninjDYsaV zqp{e?*x1W3(T``ZXi6prtQ))TGqVFz;A!zr9by63an{C8O6{zJJs_j!vcR; z;9CT~Mc|JJ{1Jio3%p<8TLr#V-~$3a2A%kZ&WL6TfD4`x@QRITWB~W~T^paZum`@h zahHXg;YS;*7WP3CIw${BKLWTvkJ`b20L&ku$Z#%(MD@W;T+V-&dD1G(}C!plm#`5ha#uWkHERtTo)5`=MdA~z>VvM@Vzs>OOE*H7Ul6}1%HP^`2r+B=@h*oDuK_?kOG%)9iD!Ktg@!rhJu Gxb9zETf%Tz;^6g@4DD= z?=G!Fkl0wo3ZGcL58d3MR$`N2K^mbEgAr*O;sdJ?4njcbmkOjt0!gz3=ny_dM^Pdwg%c9zObnAPB%n03Y1v04{7cHRauA=Yu`a3d{35q2isU z4D1uKl{puP(Uq28=)&QZ!^6>6jF)ur8x_(vSXsWeBIMlB@Yz?+if5zIx1$p5(c}8P zg}d{xuY7jtglBedrebza23kXgJLfUndRTWwhoUd(AL=hhFBo?hYUf=LRKQo3ukaF{ z1horklx>uxgK=TU}mmlj zO84-r)_@EB8}Y3o1Piwd+Q1rFPeDpAEYCx>;+<{ax>1c0cV~o4WN*eU=-LNekVdIAZ>7O-vWmU`+Ba6e&Fn!=cclk}oqFi@zWZAN!&-pe3bna$HU%pKuk+^^mmMFu~b}FK)%eWMjlUvgGAhe1_uwwJ4pmLr*}Kmi00w+9!_7$=_@(?22Q^L zn$Y6H>LfRC_BEV+4X5A4={IruT25cf={IwFtH?7W5$ZX8JyV&zh?Q{ddT!E7rPa^E(^gHh>aU{ZSPQM#=p`4bRPD&Z-og{+fWYOOX9Vj9DAhtR@ zFB8}^qSe%}IrTrX`Ojcqhv(@Q$Cslq*>5rR9`F)l6XCUS`moJYoI0oknX{kf_-}Ij zYqtMI?CW3y{FKw*;P^k-_Evs1@TtvjGvjZ9y|{4XLb=xAbJXT7`^_+I^L3`a9>E^#r?rHvDWk`FV_ITL zO-%*@M{smLrpX8%hRDg(`7`(|3=&u`NMU!(0m+fZ!vd|(a;PhO4p9;lqvwjIJrpo) z3g*-^E}vFYroK0=rbZ?cveG+h4IrVOR*l%i2~9O*h(yf#9+^@TDupZv*Jt1lg#Ns& zg-4Y$kdP;0(<5qJo7Cm_WGbOE#AoCfZd@q{rI<l6g54DKYVc`tQHG@Fu;dDp&H77uFIOCrcQ^(if3~$ur?cV9Kv7Ob-4DNr)>z2 zeqK2<7Kjwx>~0O$mR4VZq@2VV6`MuC0*n}noQhaZ2yHqR*_lAMnL;F%O4ts#$4Gmz zRpHBBP5l9@Zd7%FS(mF00?>Ve_#x_%f7a%|Wb;&SN&hJIXq=$_5Ws7;{)*kt+VY=K z-wW`OEvMo_xD|HaKt1|PHs5LUk5i9+qqaP1%Qc(-s@+!+ZV$jl8=t-)s`~Bu9R{rU z$YXEL7n3&aKMT-I@;(5+-Qy6d9<%L&R7;UZyB*XczG;toCdVZ-{Y^i73=)s}3fs@L zL%#-F4t{+)X~f2{H#DnP*vODG2KW;(BL@C)T?apY&G|{_FS5DoEs!NaxVlv`uvx)M zTCLWpl9p>r(Enhrz(eO&u;@J8qHwqZV+XRSls<6pqo$7Ry>Erkno$aQN5%_ z{1i4Po`F2oIYtcc`zUbQeHZyH%m{mC_ZE(waifm7bW>w-e}iKu-W>88HbxBZ1`3>b z3gS`yrFoE?;r$24PP|rR=zE(H*%AF4n-lLU;$1`;;nB^H;rYHN?f5O0;< Z!e*vS5)Mx+z diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.clang-format b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.clang-format deleted file mode 100644 index c6cdd16..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.clang-format +++ /dev/null @@ -1,243 +0,0 @@ -Language: Cpp -# BasedOnStyle: LLVM -AccessModifierOffset: -2 -AlignAfterOpenBracket: Align -AlignArrayOfStructures: None -AlignConsecutiveAssignments: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: true -AlignConsecutiveBitFields: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: false -AlignConsecutiveDeclarations: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: false -AlignConsecutiveMacros: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - AlignFunctionPointers: false - PadOperators: false -AlignConsecutiveShortCaseStatements: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCaseColons: false -AlignEscapedNewlines: Right -AlignOperands: Align -AlignTrailingComments: - Kind: Always - OverEmptyLines: 0 -AllowAllArgumentsOnNextLine: true -AllowAllParametersOfDeclarationOnNextLine: true -AllowBreakBeforeNoexceptSpecifier: Never -AllowShortBlocksOnASingleLine: Never -AllowShortCaseLabelsOnASingleLine: false -AllowShortCompoundRequirementOnASingleLine: true -AllowShortEnumsOnASingleLine: true -AllowShortFunctionsOnASingleLine: All -AllowShortIfStatementsOnASingleLine: Never -AllowShortLambdasOnASingleLine: All -AllowShortLoopsOnASingleLine: false -AlwaysBreakAfterDefinitionReturnType: None -AlwaysBreakAfterReturnType: None -AlwaysBreakBeforeMultilineStrings: false -AlwaysBreakTemplateDeclarations: MultiLine -AttributeMacros: - - __capability -BinPackArguments: true -BinPackParameters: true -BitFieldColonSpacing: Both -BraceWrapping: - AfterCaseLabel: false - AfterClass: false - AfterControlStatement: Never - AfterEnum: false - AfterExternBlock: false - AfterFunction: false - AfterNamespace: false - AfterObjCDeclaration: false - AfterStruct: false - AfterUnion: false - BeforeCatch: false - BeforeElse: false - BeforeLambdaBody: false - BeforeWhile: false - IndentBraces: false - SplitEmptyFunction: true - SplitEmptyRecord: true - SplitEmptyNamespace: true -BreakAdjacentStringLiterals: true -BreakAfterAttributes: Leave -BreakAfterJavaFieldAnnotations: false -BreakArrays: true -BreakBeforeBinaryOperators: None -BreakBeforeConceptDeclarations: Always -BreakBeforeBraces: Attach -BreakBeforeInlineASMColon: OnlyMultiline -BreakBeforeTernaryOperators: true -BreakConstructorInitializers: BeforeColon -BreakInheritanceList: BeforeColon -BreakStringLiterals: true -ColumnLimit: 80 -CommentPragmas: '^ IWYU pragma:' -CompactNamespaces: false -ConstructorInitializerIndentWidth: 4 -ContinuationIndentWidth: 4 -Cpp11BracedListStyle: true -DerivePointerAlignment: false -DisableFormat: false -EmptyLineAfterAccessModifier: Never -EmptyLineBeforeAccessModifier: LogicalBlock -ExperimentalAutoDetectBinPacking: false -FixNamespaceComments: true -ForEachMacros: - - foreach - - Q_FOREACH - - BOOST_FOREACH -IfMacros: - - KJ_IF_MAYBE -IncludeBlocks: Preserve -IncludeCategories: - - Regex: '^"(llvm|llvm-c|clang|clang-c)/' - Priority: 2 - SortPriority: 0 - CaseSensitive: false - - Regex: '^(<|"(gtest|gmock|isl|json)/)' - Priority: 3 - SortPriority: 0 - CaseSensitive: false - - Regex: '.*' - Priority: 1 - SortPriority: 0 - CaseSensitive: false -IncludeIsMainRegex: '(Test)?$' -IncludeIsMainSourceRegex: '' -IndentAccessModifiers: false -IndentCaseBlocks: false -IndentCaseLabels: false -IndentExternBlock: AfterExternBlock -IndentGotoLabels: true -IndentPPDirectives: None -IndentRequiresClause: true -IndentWidth: 2 -IndentWrappedFunctionNames: false -InsertBraces: false -InsertNewlineAtEOF: false -InsertTrailingCommas: None -IntegerLiteralSeparator: - Binary: 0 - BinaryMinDigits: 0 - Decimal: 0 - DecimalMinDigits: 0 - Hex: 0 - HexMinDigits: 0 -JavaScriptQuotes: Leave -JavaScriptWrapImports: true -KeepEmptyLinesAtTheStartOfBlocks: true -KeepEmptyLinesAtEOF: false -LambdaBodyIndentation: Signature -LineEnding: DeriveLF -MacroBlockBegin: '' -MacroBlockEnd: '' -MaxEmptyLinesToKeep: 1 -NamespaceIndentation: None -ObjCBinPackProtocolList: Auto -ObjCBlockIndentWidth: 2 -ObjCBreakBeforeNestedBlockParam: true -ObjCSpaceAfterProperty: false -ObjCSpaceBeforeProtocolList: true -PackConstructorInitializers: BinPack -PenaltyBreakAssignment: 2 -PenaltyBreakBeforeFirstCallParameter: 19 -PenaltyBreakComment: 300 -PenaltyBreakFirstLessLess: 120 -PenaltyBreakOpenParenthesis: 0 -PenaltyBreakScopeResolution: 500 -PenaltyBreakString: 1000 -PenaltyBreakTemplateDeclaration: 10 -PenaltyExcessCharacter: 1000000 -PenaltyIndentedWhitespace: 0 -PenaltyReturnTypeOnItsOwnLine: 60 -PointerAlignment: Right -PPIndentWidth: -1 -QualifierAlignment: Leave -ReferenceAlignment: Pointer -ReflowComments: true -RemoveBracesLLVM: false -RemoveParentheses: Leave -RemoveSemicolon: false -RequiresClausePosition: OwnLine -RequiresExpressionIndentation: OuterScope -SeparateDefinitionBlocks: Leave -ShortNamespaceLines: 1 -SkipMacroDefinitionBody: false -SortIncludes: CaseSensitive -SortJavaStaticImport: Before -SortUsingDeclarations: LexicographicNumeric -SpaceAfterCStyleCast: false -SpaceAfterLogicalNot: false -SpaceAfterTemplateKeyword: true -SpaceAroundPointerQualifiers: Default -SpaceBeforeAssignmentOperators: true -SpaceBeforeCaseColon: false -SpaceBeforeCpp11BracedList: false -SpaceBeforeCtorInitializerColon: true -SpaceBeforeInheritanceColon: true -SpaceBeforeJsonColon: false -SpaceBeforeParens: ControlStatements -SpaceBeforeParensOptions: - AfterControlStatements: true - AfterForeachMacros: true - AfterFunctionDefinitionName: false - AfterFunctionDeclarationName: false - AfterIfMacros: true - AfterOverloadedOperator: false - AfterPlacementOperator: true - AfterRequiresInClause: false - AfterRequiresInExpression: false - BeforeNonEmptyParentheses: false -SpaceBeforeRangeBasedForLoopColon: true -SpaceBeforeSquareBrackets: false -SpaceInEmptyBlock: false -SpacesBeforeTrailingComments: 1 -SpacesInAngles: Never -SpacesInContainerLiterals: true -SpacesInLineCommentPrefix: - Minimum: 1 - Maximum: -1 -SpacesInParens: Never -SpacesInParensOptions: - InCStyleCasts: false - InConditionalStatements: false - InEmptyParentheses: false - Other: false -SpacesInSquareBrackets: false -Standard: Latest -StatementAttributeLikeMacros: - - Q_EMIT -StatementMacros: - - Q_UNUSED - - QT_REQUIRE_VERSION -TabWidth: 8 -UseTab: Never -VerilogBreakBetweenInstancePorts: true -WhitespaceSensitiveMacros: - - BOOST_PP_STRINGIZE - - CF_SWIFT_NAME - - NS_SWIFT_NAME - - PP_STRINGIZE - - STRINGIZE \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/ISSUE_TEMPLATE.md b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index f0e2614..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,46 +0,0 @@ -Thank you for opening an issue on an Adafruit Arduino library repository. To -improve the speed of resolution please review the following guidelines and -common troubleshooting steps below before creating the issue: - -- **Do not use GitHub issues for troubleshooting projects and issues.** Instead use - the forums at http://forums.adafruit.com to ask questions and troubleshoot why - something isn't working as expected. In many cases the problem is a common issue - that you will more quickly receive help from the forum community. GitHub issues - are meant for known defects in the code. If you don't know if there is a defect - in the code then start with troubleshooting on the forum first. - -- **If following a tutorial or guide be sure you didn't miss a step.** Carefully - check all of the steps and commands to run have been followed. Consult the - forum if you're unsure or have questions about steps in a guide/tutorial. - -- **For Arduino projects check these very common issues to ensure they don't apply**: - - - For uploading sketches or communicating with the board make sure you're using - a **USB data cable** and **not** a **USB charge-only cable**. It is sometimes - very hard to tell the difference between a data and charge cable! Try using the - cable with other devices or swapping to another cable to confirm it is not - the problem. - - - **Be sure you are supplying adequate power to the board.** Check the specs of - your board and plug in an external power supply. In many cases just - plugging a board into your computer is not enough to power it and other - peripherals. - - - **Double check all soldering joints and connections.** Flakey connections - cause many mysterious problems. See the [guide to excellent soldering](https://learn.adafruit.com/adafruit-guide-excellent-soldering/tools) for examples of good solder joints. - - - **Ensure you are using an official Arduino or Adafruit board.** We can't - guarantee a clone board will have the same functionality and work as expected - with this code and don't support them. - -If you're sure this issue is a defect in the code and checked the steps above -please fill in the following fields to provide enough troubleshooting information. -You may delete the guideline and text above to just leave the following details: - -- Arduino board: **INSERT ARDUINO BOARD NAME/TYPE HERE** - -- Arduino IDE version (found in Arduino -> About Arduino menu): **INSERT ARDUINO - VERSION HERE** - -- List the steps to reproduce the problem below (if possible attach a sketch or - copy the sketch code in too): **LIST REPRO STEPS BELOW** diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 7b641eb..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,26 +0,0 @@ -Thank you for creating a pull request to contribute to Adafruit's GitHub code! -Before you open the request please review the following guidelines and tips to -help it be more easily integrated: - -- **Describe the scope of your change--i.e. what the change does and what parts - of the code were modified.** This will help us understand any risks of integrating - the code. - -- **Describe any known limitations with your change.** For example if the change - doesn't apply to a supported platform of the library please mention it. - -- **Please run any tests or examples that can exercise your modified code.** We - strive to not break users of the code and running tests/examples helps with this - process. - -Thank you again for contributing! We will try to test and integrate the change -as soon as we can, but be aware we have many GitHub repositories to manage and -can't immediately respond to every request. There is no need to bump or check in -on a pull request (it will clutter the discussion of the request). - -Also don't be worried if the request is closed or not integrated--sometimes the -priorities of Adafruit's GitHub code (education, ease of use) might not match the -priorities of the pull request. Don't fret, the open source community thrives on -forks and GitHub makes it easy to keep your changes in a forked repo. - -After reviewing the guidelines above you can delete this text from the pull request. diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/workflows/githubci.yml b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/workflows/githubci.yml deleted file mode 100644 index 8a57d75..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.github/workflows/githubci.yml +++ /dev/null @@ -1,33 +0,0 @@ -name: Arduino Library CI - -on: [pull_request, push, repository_dispatch] - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/setup-python@v4 - with: - python-version: '3.x' - - uses: actions/checkout@v3 - - uses: actions/checkout@v3 - with: - repository: adafruit/ci-arduino - path: ci - - - name: Install the prerequisites - run: bash ci/actions_install.sh - - - name: Check for correct code formatting with clang-format - run: python3 ci/run-clang-format.py -e "ci/*" -e "bin/*" -r . - - - name: Check for correct documentation with doxygen - env: - GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }} - PRETTYNAME : "Adafruit Bus IO Library" - run: bash ci/doxy_gen_and_deploy.sh - - - name: Test the code on supported platforms - run: python3 ci/build_platform.py main_platforms zero feather32u4 - diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.piopm b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.piopm deleted file mode 100644 index 6bd37c1..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/.piopm +++ /dev/null @@ -1 +0,0 @@ -{"type": "library", "name": "Adafruit BusIO", "version": "1.17.4", "spec": {"owner": "adafruit", "id": 6214, "name": "Adafruit BusIO", "requirements": null, "uri": null}} \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.cpp b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.cpp deleted file mode 100644 index f3e8187..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.cpp +++ /dev/null @@ -1,384 +0,0 @@ -#include - -#if !defined(SPI_INTERFACES_COUNT) || \ - (defined(SPI_INTERFACES_COUNT) && (SPI_INTERFACES_COUNT > 0)) - -/*! - * @brief Create a register we access over an I2C Device (which defines the - * bus and address) - * @param i2cdevice The I2CDevice to use for underlying I2C access - * @param reg_addr The address pointer value for the I2C/SMBus register, can - * be 8 or 16 bits - * @param width The width of the register data itself, defaults to 1 byte - * @param byteorder The byte order of the register (used when width is > 1), - * defaults to LSBFIRST - * @param address_width The width of the register address itself, defaults - * to 1 byte - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register(Adafruit_I2CDevice *i2cdevice, - uint16_t reg_addr, - uint8_t width, - uint8_t byteorder, - uint8_t address_width) { - _i2cdevice = i2cdevice; - _spidevice = nullptr; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Create a register we access over an SPI Device (which defines the - * bus and CS pin) - * @param spidevice The SPIDevice to use for underlying SPI access - * @param reg_addr The address pointer value for the SPI register, can - * be 8 or 16 bits - * @param type The method we use to read/write data to SPI (which is not - * as well defined as I2C) - * @param width The width of the register data itself, defaults to 1 byte - * @param byteorder The byte order of the register (used when width is > 1), - * defaults to LSBFIRST - * @param address_width The width of the register address itself, defaults - * to 1 byte - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register(Adafruit_SPIDevice *spidevice, - uint16_t reg_addr, - Adafruit_BusIO_SPIRegType type, - uint8_t width, - uint8_t byteorder, - uint8_t address_width) { - _spidevice = spidevice; - _spiregtype = type; - _i2cdevice = nullptr; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Create a register we access over an I2C or SPI Device. This is a - * handy function because we can pass in nullptr for the unused interface, - * allowing libraries to mass-define all the registers - * @param i2cdevice The I2CDevice to use for underlying I2C access, if - * nullptr we use SPI - * @param spidevice The SPIDevice to use for underlying SPI access, if - * nullptr we use I2C - * @param reg_addr The address pointer value for the I2C/SMBus/SPI register, - * can be 8 or 16 bits - * @param type The method we use to read/write data to SPI (which is not - * as well defined as I2C) - * @param width The width of the register data itself, defaults to 1 byte - * @param byteorder The byte order of the register (used when width is > 1), - * defaults to LSBFIRST - * @param address_width The width of the register address itself, defaults - * to 1 byte - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register( - Adafruit_I2CDevice *i2cdevice, Adafruit_SPIDevice *spidevice, - Adafruit_BusIO_SPIRegType type, uint16_t reg_addr, uint8_t width, - uint8_t byteorder, uint8_t address_width) { - _spidevice = spidevice; - _i2cdevice = i2cdevice; - _spiregtype = type; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Create a register we access over a GenericDevice - * @param genericdevice Generic device to use - * @param reg_addr Register address we will read/write - * @param width Width of the register in bytes (1-4) - * @param byteorder Byte order of register data (LSBFIRST or MSBFIRST) - * @param address_width Width of the register address in bytes (1 or 2) - */ -Adafruit_BusIO_Register::Adafruit_BusIO_Register( - Adafruit_GenericDevice *genericdevice, uint16_t reg_addr, uint8_t width, - uint8_t byteorder, uint8_t address_width) { - _i2cdevice = nullptr; - _spidevice = nullptr; - _genericdevice = genericdevice; - _addrwidth = address_width; - _address = reg_addr; - _byteorder = byteorder; - _width = width; -} - -/*! - * @brief Write a buffer of data to the register location - * @param buffer Pointer to data to write - * @param len Number of bytes to write - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::write(uint8_t *buffer, uint8_t len) { - uint8_t addrbuffer[2] = {(uint8_t)(_address & 0xFF), - (uint8_t)(_address >> 8)}; - if (_i2cdevice) { - return _i2cdevice->write(buffer, len, true, addrbuffer, _addrwidth); - } - if (_spidevice) { - if (_spiregtype == ADDRESSED_OPCODE_BIT0_LOW_TO_WRITE) { - // very special case! - // pass the special opcode address which we set as the high byte of the - // regaddr - addrbuffer[0] = - (uint8_t)(_address >> 8) & ~0x01; // set bottom bit low to write - // the 'actual' reg addr is the second byte then - addrbuffer[1] = (uint8_t)(_address & 0xFF); - // the address appears to be a byte longer - return _spidevice->write(buffer, len, addrbuffer, _addrwidth + 1); - } - if (_spiregtype == ADDRBIT8_HIGH_TOREAD) { - addrbuffer[0] &= ~0x80; - } - if (_spiregtype == ADDRBIT8_HIGH_TOWRITE) { - addrbuffer[0] |= 0x80; - } - if (_spiregtype == AD8_HIGH_TOREAD_AD7_HIGH_TOINC) { - addrbuffer[0] &= ~0x80; - addrbuffer[0] |= 0x40; - } - return _spidevice->write(buffer, len, addrbuffer, _addrwidth); - } - if (_genericdevice) { - return _genericdevice->writeRegister(addrbuffer, _addrwidth, buffer, len); - } - return false; -} - -/*! - * @brief Write up to 4 bytes of data to the register location - * @param value Data to write - * @param numbytes How many bytes from 'value' to write - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::write(uint32_t value, uint8_t numbytes) { - if (numbytes == 0) { - numbytes = _width; - } - if (numbytes > 4) { - return false; - } - - // store a copy - _cached = value; - - for (int i = 0; i < numbytes; i++) { - if (_byteorder == LSBFIRST) { - _buffer[i] = value & 0xFF; - } else { - _buffer[numbytes - i - 1] = value & 0xFF; - } - value >>= 8; - } - return write(_buffer, numbytes); -} - -/*! - * @brief Read data from the register location. This does not do any error - * checking! - * @return Returns 0xFFFFFFFF on failure, value otherwise - */ -uint32_t Adafruit_BusIO_Register::read(void) { - if (!read(_buffer, _width)) { - return -1; - } - - uint32_t value = 0; - - for (int i = 0; i < _width; i++) { - value <<= 8; - if (_byteorder == LSBFIRST) { - value |= _buffer[_width - i - 1]; - } else { - value |= _buffer[i]; - } - } - - return value; -} - -/*! - * @brief Read cached data from last time we wrote to this register - * @return Returns 0xFFFFFFFF on failure, value otherwise - */ -uint32_t Adafruit_BusIO_Register::readCached(void) { return _cached; } - -/*! - @brief Read a number of bytes from a register into a buffer - @param buffer Buffer to read data into - @param len Number of bytes to read into the buffer - @return true on successful read, otherwise false -*/ -bool Adafruit_BusIO_Register::read(uint8_t *buffer, uint8_t len) { - uint8_t addrbuffer[2] = {(uint8_t)(_address & 0xFF), - (uint8_t)(_address >> 8)}; - if (_i2cdevice) { - return _i2cdevice->write_then_read(addrbuffer, _addrwidth, buffer, len); - } - if (_spidevice) { - if (_spiregtype == ADDRESSED_OPCODE_BIT0_LOW_TO_WRITE) { - // very special case! - // pass the special opcode address which we set as the high byte of the - // regaddr - addrbuffer[0] = - (uint8_t)(_address >> 8) | 0x01; // set bottom bit high to read - // the 'actual' reg addr is the second byte then - addrbuffer[1] = (uint8_t)(_address & 0xFF); - // the address appears to be a byte longer - return _spidevice->write_then_read(addrbuffer, _addrwidth + 1, buffer, - len); - } - if (_spiregtype == ADDRBIT8_HIGH_TOREAD) { - addrbuffer[0] |= 0x80; - } - if (_spiregtype == ADDRBIT8_HIGH_TOWRITE) { - addrbuffer[0] &= ~0x80; - } - if (_spiregtype == AD8_HIGH_TOREAD_AD7_HIGH_TOINC) { - addrbuffer[0] |= 0x80 | 0x40; - } - return _spidevice->write_then_read(addrbuffer, _addrwidth, buffer, len); - } - if (_genericdevice) { - return _genericdevice->readRegister(addrbuffer, _addrwidth, buffer, len); - } - return false; -} - -/*! - * @brief Read 2 bytes of data from the register location - * @param value Pointer to uint16_t variable to read into - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::read(uint16_t *value) { - if (!read(_buffer, 2)) { - return false; - } - - if (_byteorder == LSBFIRST) { - *value = _buffer[1]; - *value <<= 8; - *value |= _buffer[0]; - } else { - *value = _buffer[0]; - *value <<= 8; - *value |= _buffer[1]; - } - return true; -} - -/*! - * @brief Read 1 byte of data from the register location - * @param value Pointer to uint8_t variable to read into - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_Register::read(uint8_t *value) { - if (!read(_buffer, 1)) { - return false; - } - - *value = _buffer[0]; - return true; -} - -/*! - * @brief Pretty printer for this register - * @param s The Stream to print to, defaults to &Serial - */ -void Adafruit_BusIO_Register::print(Stream *s) { - uint32_t val = read(); - s->print("0x"); - s->print(val, HEX); -} - -/*! - * @brief Pretty printer for this register - * @param s The Stream to print to, defaults to &Serial - */ -void Adafruit_BusIO_Register::println(Stream *s) { - print(s); - s->println(); -} - -/*! - * @brief Create a slice of the register that we can address without - * touching other bits - * @param reg The Adafruit_BusIO_Register which defines the bus/register - * @param bits The number of bits wide we are slicing - * @param shift The number of bits that our bit-slice is shifted from LSB - */ -Adafruit_BusIO_RegisterBits::Adafruit_BusIO_RegisterBits( - Adafruit_BusIO_Register *reg, uint8_t bits, uint8_t shift) { - _register = reg; - _bits = bits; - _shift = shift; -} - -/*! - * @brief Read 4 bytes of data from the register - * @return data The 4 bytes to read - */ -uint32_t Adafruit_BusIO_RegisterBits::read(void) { - uint32_t val = _register->read(); - val >>= _shift; - return val & ((1 << (_bits)) - 1); -} - -/*! - * @brief Write 4 bytes of data to the register - * @param data The 4 bytes to write - * @return True on successful write (only really useful for I2C as SPI is - * uncheckable) - */ -bool Adafruit_BusIO_RegisterBits::write(uint32_t data) { - uint32_t val = _register->read(); - - // mask off the data before writing - uint32_t mask = (1 << (_bits)) - 1; - data &= mask; - - mask <<= _shift; - val &= ~mask; // remove the current data at that spot - val |= data << _shift; // and add in the new data - - return _register->write(val, _register->width()); -} - -/*! - * @brief The width of the register data, helpful for doing calculations - * @returns The data width used when initializing the register - */ -uint8_t Adafruit_BusIO_Register::width(void) { return _width; } - -/*! - * @brief Set the default width of data - * @param width the default width of data read from register - */ -void Adafruit_BusIO_Register::setWidth(uint8_t width) { _width = width; } - -/*! - * @brief Set register address - * @param address the address from register - */ -void Adafruit_BusIO_Register::setAddress(uint16_t address) { - _address = address; -} - -/*! - * @brief Set the width of register address - * @param address_width the width for register address - */ -void Adafruit_BusIO_Register::setAddressWidth(uint16_t address_width) { - _addrwidth = address_width; -} - -#endif // SPI exists diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.h deleted file mode 100644 index 046e04c..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_BusIO_Register.h +++ /dev/null @@ -1,117 +0,0 @@ -#ifndef Adafruit_BusIO_Register_h -#define Adafruit_BusIO_Register_h - -#include - -#if !defined(SPI_INTERFACES_COUNT) || \ - (defined(SPI_INTERFACES_COUNT) && (SPI_INTERFACES_COUNT > 0)) - -#include -#include -#include - -typedef enum _Adafruit_BusIO_SPIRegType { - ADDRBIT8_HIGH_TOREAD = 0, - /*!< - * ADDRBIT8_HIGH_TOREAD - * When reading a register you must actually send the value 0x80 + register - * address to the device. e.g. To read the register 0x0B the register value - * 0x8B is sent and to write 0x0B is sent. - */ - AD8_HIGH_TOREAD_AD7_HIGH_TOINC = 1, - - /*!< - * ADDRBIT8_HIGH_TOWRITE - * When writing to a register you must actually send the value 0x80 + - * the register address to the device. e.g. To write to the register 0x19 the - * register value 0x99 is sent and to read 0x19 is sent. - */ - ADDRBIT8_HIGH_TOWRITE = 2, - - /*!< - * ADDRESSED_OPCODE_LOWBIT_TO_WRITE - * Used by the MCP23S series, we send 0x40 |'rd with the opcode - * Then set the lowest bit to write - */ - ADDRESSED_OPCODE_BIT0_LOW_TO_WRITE = 3, - -} Adafruit_BusIO_SPIRegType; - -/*! - * @brief The class which defines a device register (a location to read/write - * data from) - */ -class Adafruit_BusIO_Register { -public: - Adafruit_BusIO_Register(Adafruit_I2CDevice *i2cdevice, uint16_t reg_addr, - uint8_t width = 1, uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - Adafruit_BusIO_Register(Adafruit_SPIDevice *spidevice, uint16_t reg_addr, - Adafruit_BusIO_SPIRegType type, uint8_t width = 1, - uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - Adafruit_BusIO_Register(Adafruit_I2CDevice *i2cdevice, - Adafruit_SPIDevice *spidevice, - Adafruit_BusIO_SPIRegType type, uint16_t reg_addr, - uint8_t width = 1, uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - Adafruit_BusIO_Register(Adafruit_GenericDevice *genericdevice, - uint16_t reg_addr, uint8_t width = 1, - uint8_t byteorder = LSBFIRST, - uint8_t address_width = 1); - - bool read(uint8_t *buffer, uint8_t len); - bool read(uint8_t *value); - bool read(uint16_t *value); - uint32_t read(void); - uint32_t readCached(void); - bool write(uint8_t *buffer, uint8_t len); - bool write(uint32_t value, uint8_t numbytes = 0); - - uint8_t width(void); - - void setWidth(uint8_t width); - void setAddress(uint16_t address); - void setAddressWidth(uint16_t address_width); - -#if !defined(NO_GLOBAL_INSTANCES) && !defined(NO_GLOBAL_SERIAL) - void print(Stream *s = &Serial); - void println(Stream *s = &Serial); -#else - void print(Stream *s); - void println(Stream *s); -#endif - -private: - Adafruit_I2CDevice *_i2cdevice; - Adafruit_SPIDevice *_spidevice; - Adafruit_GenericDevice *_genericdevice; - Adafruit_BusIO_SPIRegType _spiregtype; - uint16_t _address; - uint8_t _width, _addrwidth, _byteorder; - uint8_t _buffer[4]; // we won't support anything larger than uint32 for - // non-buffered read - uint32_t _cached = 0; -}; - -/*! - * @brief The class which defines a slice of bits from within a device register - * (a location to read/write data from) - */ -class Adafruit_BusIO_RegisterBits { -public: - Adafruit_BusIO_RegisterBits(Adafruit_BusIO_Register *reg, uint8_t bits, - uint8_t shift); - bool write(uint32_t value); - uint32_t read(void); - -private: - Adafruit_BusIO_Register *_register; - uint8_t _bits, _shift; -}; - -#endif // SPI exists -#endif // BusIO_Register_h diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.cpp b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.cpp deleted file mode 100644 index 37f9cfd..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.cpp +++ /dev/null @@ -1,90 +0,0 @@ -/* - Written with help by Claude! - https://claude.ai/chat/335f50b1-3dd8-435e-9139-57ec7ca26a3c (at this time - chats are not shareable :( -*/ - -#include "Adafruit_GenericDevice.h" - -/*! - * @brief Create a Generic device with the provided read/write functions - * @param obj Pointer to object instance - * @param read_func Function pointer for reading raw data - * @param write_func Function pointer for writing raw data - * @param readreg_func Function pointer for reading registers (optional) - * @param writereg_func Function pointer for writing registers (optional) */ -Adafruit_GenericDevice::Adafruit_GenericDevice( - void *obj, busio_genericdevice_read_t read_func, - busio_genericdevice_write_t write_func, - busio_genericdevice_readreg_t readreg_func, - busio_genericdevice_writereg_t writereg_func) { - _obj = obj; - _read_func = read_func; - _write_func = write_func; - _readreg_func = readreg_func; - _writereg_func = writereg_func; - _begun = false; -} - -/*! @brief Simple begin function (doesn't do much at this time) - @return true always -*/ -bool Adafruit_GenericDevice::begin(void) { - _begun = true; - return true; -} - -/*! -@brief Marks the GenericDevice as no longer in use. -@note: Since this is a GenericDevice, if you are using this with a Serial -object, this does NOT disable serial communication or release the RX/TX pins. -That must be done manually by calling Serial.end(). -*/ -void Adafruit_GenericDevice::end(void) { _begun = false; } - -/*! @brief Write a buffer of data - @param buffer Pointer to buffer of data to write - @param len Number of bytes to write - @return true if write was successful, otherwise false */ -bool Adafruit_GenericDevice::write(const uint8_t *buffer, size_t len) { - if (!_begun) - return false; - return _write_func(_obj, buffer, len); -} - -/*! @brief Read data into a buffer - @param buffer Pointer to buffer to read data into - @param len Number of bytes to read - @return true if read was successful, otherwise false */ -bool Adafruit_GenericDevice::read(uint8_t *buffer, size_t len) { - if (!_begun) - return false; - return _read_func(_obj, buffer, len); -} - -/*! @brief Read from a register location - @param addr_buf Buffer containing register address - @param addrsiz Size of register address in bytes - @param buf Buffer to store read data - @param bufsiz Size of data to read in bytes - @return true if read was successful, otherwise false */ -bool Adafruit_GenericDevice::readRegister(uint8_t *addr_buf, uint8_t addrsiz, - uint8_t *buf, uint16_t bufsiz) { - if (!_begun || !_readreg_func) - return false; - return _readreg_func(_obj, addr_buf, addrsiz, buf, bufsiz); -} - -/*! @brief Write to a register location - @param addr_buf Buffer containing register address - @param addrsiz Size of register address in bytes - @param buf Buffer containing data to write - @param bufsiz Size of data to write in bytes - @return true if write was successful, otherwise false */ -bool Adafruit_GenericDevice::writeRegister(uint8_t *addr_buf, uint8_t addrsiz, - const uint8_t *buf, - uint16_t bufsiz) { - if (!_begun || !_writereg_func) - return false; - return _writereg_func(_obj, addr_buf, addrsiz, buf, bufsiz); -} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.h deleted file mode 100644 index d5cb326..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_GenericDevice.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef ADAFRUIT_GENERICDEVICE_H -#define ADAFRUIT_GENERICDEVICE_H - -#include - -typedef bool (*busio_genericdevice_read_t)(void *obj, uint8_t *buffer, - size_t len); -typedef bool (*busio_genericdevice_write_t)(void *obj, const uint8_t *buffer, - size_t len); -typedef bool (*busio_genericdevice_readreg_t)(void *obj, uint8_t *addr_buf, - uint8_t addrsiz, uint8_t *data, - uint16_t datalen); -typedef bool (*busio_genericdevice_writereg_t)(void *obj, uint8_t *addr_buf, - uint8_t addrsiz, - const uint8_t *data, - uint16_t datalen); - -/*! - * @brief Class for communicating with a device via generic read/write functions - */ -class Adafruit_GenericDevice { -public: - Adafruit_GenericDevice( - void *obj, busio_genericdevice_read_t read_func, - busio_genericdevice_write_t write_func, - busio_genericdevice_readreg_t readreg_func = nullptr, - busio_genericdevice_writereg_t writereg_func = nullptr); - - bool begin(void); - void end(void); - - bool read(uint8_t *buffer, size_t len); - bool write(const uint8_t *buffer, size_t len); - bool readRegister(uint8_t *addr_buf, uint8_t addrsiz, uint8_t *buf, - uint16_t bufsiz); - bool writeRegister(uint8_t *addr_buf, uint8_t addrsiz, const uint8_t *buf, - uint16_t bufsiz); - -protected: - /*! @brief Function pointer for reading raw data from the device */ - busio_genericdevice_read_t _read_func; - /*! @brief Function pointer for writing raw data to the device */ - busio_genericdevice_write_t _write_func; - /*! @brief Function pointer for reading a 'register' from the device */ - busio_genericdevice_readreg_t _readreg_func; - /*! @brief Function pointer for writing a 'register' to the device */ - busio_genericdevice_writereg_t _writereg_func; - - bool _begun; ///< whether we have initialized yet (in case the function needs - ///< to do something) - -private: - void *_obj; ///< Pointer to object instance -}; - -#endif // ADAFRUIT_GENERICDEVICE_H diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.cpp b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.cpp deleted file mode 100644 index 2633cf1..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.cpp +++ /dev/null @@ -1,320 +0,0 @@ -#include "Adafruit_I2CDevice.h" - -// #define DEBUG_SERIAL Serial - -/*! - * @brief Create an I2C device at a given address - * @param addr The 7-bit I2C address for the device - * @param theWire The I2C bus to use, defaults to &Wire - */ -Adafruit_I2CDevice::Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire) { - _addr = addr; - _wire = theWire; - _begun = false; -#ifdef ARDUINO_ARCH_SAMD - _maxBufferSize = 250; // as defined in Wire.h's RingBuffer -#elif defined(ESP32) - _maxBufferSize = I2C_BUFFER_LENGTH; -#else - _maxBufferSize = 32; -#endif -} - -/*! - * @brief Initializes and does basic address detection - * @param addr_detect Whether we should attempt to detect the I2C address - * with a scan. 99% of sensors/devices don't mind, but once in a while they - * don't respond well to a scan! - * @return True if I2C initialized and a device with the addr found - */ -bool Adafruit_I2CDevice::begin(bool addr_detect) { - _wire->begin(); - _begun = true; - - if (addr_detect) { - return detected(); - } - return true; -} - -/*! - * @brief De-initialize device, turn off the Wire interface - */ -void Adafruit_I2CDevice::end(void) { - // Not all port implement Wire::end(), such as - // - ESP8266 - // - AVR core without WIRE_HAS_END - // - ESP32: end() is implemented since 2.0.1 which is latest at the moment. - // Temporarily disable for now to give time for user to update. -#if !(defined(ESP8266) || \ - (defined(ARDUINO_ARCH_AVR) && !defined(WIRE_HAS_END)) || \ - defined(ARDUINO_ARCH_ESP32)) - _wire->end(); - _begun = false; -#endif -} - -/*! - * @brief Scans I2C for the address - note will give a false-positive - * if there's no pullups on I2C - * @return True if I2C initialized and a device with the addr found - */ -bool Adafruit_I2CDevice::detected(void) { - // Init I2C if not done yet - if (!_begun && !begin()) { - return false; - } - - // A basic scanner, see if it ACK's - _wire->beginTransmission(_addr); -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("Address 0x")); - DEBUG_SERIAL.print(_addr, HEX); -#endif -#ifdef ARDUINO_ARCH_MBED - _wire->write(0); // forces a write request instead of a read -#endif - if (_wire->endTransmission() == 0) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F(" Detected")); -#endif - return true; - } -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F(" Not detected")); -#endif - return false; -} - -/*! - * @brief Write a buffer or two to the I2C device. Cannot be more than - * maxBufferSize() bytes. - * @param buffer Pointer to buffer of data to write. This is const to - * ensure the content of this buffer doesn't change. - * @param len Number of bytes from buffer to write - * @param prefix_buffer Pointer to optional array of data to write before - * buffer. Cannot be more than maxBufferSize() bytes. This is const to - * ensure the content of this buffer doesn't change. - * @param prefix_len Number of bytes from prefix buffer to write - * @param stop Whether to send an I2C STOP signal on write - * @return True if write was successful, otherwise false. - */ -bool Adafruit_I2CDevice::write(const uint8_t *buffer, size_t len, bool stop, - const uint8_t *prefix_buffer, - size_t prefix_len) { - if ((len + prefix_len) > maxBufferSize()) { - // currently not guaranteed to work if more than 32 bytes! - // we will need to find out if some platforms have larger - // I2C buffer sizes :/ -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F("\tI2CDevice could not write such a large buffer")); -#endif - return false; - } - - _wire->beginTransmission(_addr); - - // Write the prefix data (usually an address) - if ((prefix_len != 0) && (prefix_buffer != nullptr)) { - if (_wire->write(prefix_buffer, prefix_len) != prefix_len) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F("\tI2CDevice failed to write")); -#endif - return false; - } - } - - // Write the data itself - if (_wire->write(buffer, len) != len) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(F("\tI2CDevice failed to write")); -#endif - return false; - } - -#ifdef DEBUG_SERIAL - - DEBUG_SERIAL.print(F("\tI2CWRITE @ 0x")); - DEBUG_SERIAL.print(_addr, HEX); - DEBUG_SERIAL.print(F(" :: ")); - if ((prefix_len != 0) && (prefix_buffer != nullptr)) { - for (uint16_t i = 0; i < prefix_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(prefix_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - } - } - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (i % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - - if (stop) { - DEBUG_SERIAL.print("\tSTOP"); - } -#endif - - if (_wire->endTransmission(stop) == 0) { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println(); - // DEBUG_SERIAL.println("Sent!"); -#endif - return true; - } else { -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.println("\tFailed to send!"); -#endif - return false; - } -} - -/*! - * @brief Read from I2C into a buffer from the I2C device. - * Cannot be more than maxBufferSize() bytes. - * @param buffer Pointer to buffer of data to read into - * @param len Number of bytes from buffer to read. - * @param stop Whether to send an I2C STOP signal on read - * @return True if read was successful, otherwise false. - */ -bool Adafruit_I2CDevice::read(uint8_t *buffer, size_t len, bool stop) { - size_t pos = 0; - while (pos < len) { - size_t read_len = - ((len - pos) > maxBufferSize()) ? maxBufferSize() : (len - pos); - bool read_stop = (pos < (len - read_len)) ? false : stop; - if (!_read(buffer + pos, read_len, read_stop)) - return false; - pos += read_len; - } - return true; -} - -bool Adafruit_I2CDevice::_read(uint8_t *buffer, size_t len, bool stop) { -#if defined(TinyWireM_h) - size_t recv = _wire->requestFrom((uint8_t)_addr, (uint8_t)len); -#elif defined(ARDUINO_ARCH_MEGAAVR) - size_t recv = _wire->requestFrom(_addr, len, stop); -#else - size_t recv = _wire->requestFrom((uint8_t)_addr, (uint8_t)len, (uint8_t)stop); -#endif - - if (recv != len) { - // Not enough data available to fulfill our obligation! -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tI2CDevice did not receive enough data: ")); - DEBUG_SERIAL.println(recv); -#endif - return false; - } - - for (uint16_t i = 0; i < len; i++) { - buffer[i] = _wire->read(); - } - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tI2CREAD @ 0x")); - DEBUG_SERIAL.print(_addr, HEX); - DEBUG_SERIAL.print(F(" :: ")); - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - return true; -} - -/*! - * @brief Write some data, then read some data from I2C into another buffer. - * Cannot be more than maxBufferSize() bytes. The buffers can point to - * same/overlapping locations. - * @param write_buffer Pointer to buffer of data to write from - * @param write_len Number of bytes from buffer to write. - * @param read_buffer Pointer to buffer of data to read into. - * @param read_len Number of bytes from buffer to read. - * @param stop Whether to send an I2C STOP signal between the write and read - * @return True if write & read was successful, otherwise false. - */ -bool Adafruit_I2CDevice::write_then_read(const uint8_t *write_buffer, - size_t write_len, uint8_t *read_buffer, - size_t read_len, bool stop) { - if (!write(write_buffer, write_len, stop)) { - return false; - } - - return read(read_buffer, read_len); -} - -/*! - * @brief Returns the 7-bit address of this device - * @return The 7-bit address of this device - */ -uint8_t Adafruit_I2CDevice::address(void) { return _addr; } - -/*! - * @brief Change the I2C clock speed to desired (relies on - * underlying Wire support! - * @param desiredclk The desired I2C SCL frequency - * @return True if this platform supports changing I2C speed. - * Not necessarily that the speed was achieved! - */ -bool Adafruit_I2CDevice::setSpeed(uint32_t desiredclk) { -#if defined(__AVR_ATmega328__) || \ - defined(__AVR_ATmega328P__) // fix arduino core set clock - // calculate TWBR correctly - - if ((F_CPU / 18) < desiredclk) { -#ifdef DEBUG_SERIAL - Serial.println(F("I2C.setSpeed too high.")); -#endif - return false; - } - uint32_t atwbr = ((F_CPU / desiredclk) - 16) / 2; - if (atwbr > 16320) { -#ifdef DEBUG_SERIAL - Serial.println(F("I2C.setSpeed too low.")); -#endif - return false; - } - - if (atwbr <= 255) { - atwbr /= 1; - TWSR = 0x0; - } else if (atwbr <= 1020) { - atwbr /= 4; - TWSR = 0x1; - } else if (atwbr <= 4080) { - atwbr /= 16; - TWSR = 0x2; - } else { // if (atwbr <= 16320) - atwbr /= 64; - TWSR = 0x3; - } - TWBR = atwbr; - -#ifdef DEBUG_SERIAL - Serial.print(F("TWSR prescaler = ")); - Serial.println(pow(4, TWSR)); - Serial.print(F("TWBR = ")); - Serial.println(atwbr); -#endif - return true; -#elif (ARDUINO >= 157) && !defined(ARDUINO_STM32_FEATHER) && \ - !defined(TinyWireM_h) - _wire->setClock(desiredclk); - return true; - -#else - (void)desiredclk; - return false; -#endif -} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.h deleted file mode 100644 index 6bda7ba..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CDevice.h +++ /dev/null @@ -1,36 +0,0 @@ -#ifndef Adafruit_I2CDevice_h -#define Adafruit_I2CDevice_h - -#include -#include - -///< The class which defines how we will talk to this device over I2C -class Adafruit_I2CDevice { -public: - Adafruit_I2CDevice(uint8_t addr, TwoWire *theWire = &Wire); - uint8_t address(void); - bool begin(bool addr_detect = true); - void end(void); - bool detected(void); - - bool read(uint8_t *buffer, size_t len, bool stop = true); - bool write(const uint8_t *buffer, size_t len, bool stop = true, - const uint8_t *prefix_buffer = nullptr, size_t prefix_len = 0); - bool write_then_read(const uint8_t *write_buffer, size_t write_len, - uint8_t *read_buffer, size_t read_len, - bool stop = false); - bool setSpeed(uint32_t desiredclk); - - /*! @brief How many bytes we can read in a transaction - * @return The size of the Wire receive/transmit buffer */ - size_t maxBufferSize() { return _maxBufferSize; } - -private: - uint8_t _addr; - TwoWire *_wire; - bool _begun; - size_t _maxBufferSize; - bool _read(uint8_t *buffer, size_t len, bool stop); -}; - -#endif // Adafruit_I2CDevice_h diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CRegister.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CRegister.h deleted file mode 100644 index 186850f..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_I2CRegister.h +++ /dev/null @@ -1,10 +0,0 @@ -#ifndef _ADAFRUIT_I2C_REGISTER_H_ -#define _ADAFRUIT_I2C_REGISTER_H_ - -#include -#include - -typedef Adafruit_BusIO_Register Adafruit_I2CRegister; -typedef Adafruit_BusIO_RegisterBits Adafruit_I2CRegisterBits; - -#endif diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.cpp b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.cpp deleted file mode 100644 index 3283de6..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.cpp +++ /dev/null @@ -1,512 +0,0 @@ -#include "Adafruit_SPIDevice.h" - -// #define DEBUG_SERIAL Serial - -#ifdef BUSIO_USE_FAST_PINIO -#define BUSIO_SET_CLOCK_LOW() (*clkPort = *clkPort & ~clkPinMask) -#define BUSIO_SET_CLOCK_HIGH() (*clkPort = *clkPort | clkPinMask) -#define BUSIO_READ_MISO() (*misoPort & misoPinMask) -#define BUSIO_WRITE_MOSI(value) \ - do { \ - if (value) \ - *mosiPort = *mosiPort | mosiPinMask; \ - else \ - *mosiPort = *mosiPort & ~mosiPinMask; \ - } while (0) -#else -#define BUSIO_SET_CLOCK_LOW() digitalWrite(_sck, LOW) -#define BUSIO_SET_CLOCK_HIGH() digitalWrite(_sck, HIGH) -#define BUSIO_READ_MISO() digitalRead(_miso) -#define BUSIO_WRITE_MOSI(value) digitalWrite(_mosi, value) -#endif - -/*! - * @brief Create an SPI device with the given CS pin and settings - * @param cspin The arduino pin number to use for chip select - * @param freq The SPI clock frequency to use, defaults to 1MHz - * @param dataOrder The SPI data order to use for bits within each byte, - * defaults to SPI_BITORDER_MSBFIRST - * @param dataMode The SPI mode to use, defaults to SPI_MODE0 - * @param theSPI The SPI bus to use, defaults to &theSPI - */ -Adafruit_SPIDevice::Adafruit_SPIDevice(int8_t cspin, uint32_t freq, - BusIOBitOrder dataOrder, - uint8_t dataMode, SPIClass *theSPI) { -#ifdef BUSIO_HAS_HW_SPI - _cs = cspin; - _sck = _mosi = _miso = -1; - _spi = theSPI; - _begun = false; - _spiSetting = new SPISettings(freq, dataOrder, dataMode); - _freq = freq; - _dataOrder = dataOrder; - _dataMode = dataMode; -#else - // unused, but needed to suppress compiler warns - (void)cspin; - (void)freq; - (void)dataOrder; - (void)dataMode; - (void)theSPI; -#endif -} - -/*! - * @brief Create an SPI device with the given CS pin and settings - * @param cspin The arduino pin number to use for chip select - * @param sckpin The arduino pin number to use for SCK - * @param misopin The arduino pin number to use for MISO, set to -1 if not - * used - * @param mosipin The arduino pin number to use for MOSI, set to -1 if not - * used - * @param freq The SPI clock frequency to use, defaults to 1MHz - * @param dataOrder The SPI data order to use for bits within each byte, - * defaults to SPI_BITORDER_MSBFIRST - * @param dataMode The SPI mode to use, defaults to SPI_MODE0 - */ -Adafruit_SPIDevice::Adafruit_SPIDevice(int8_t cspin, int8_t sckpin, - int8_t misopin, int8_t mosipin, - uint32_t freq, BusIOBitOrder dataOrder, - uint8_t dataMode) { - _cs = cspin; - _sck = sckpin; - _miso = misopin; - _mosi = mosipin; - -#ifdef BUSIO_USE_FAST_PINIO - csPort = (BusIO_PortReg *)portOutputRegister(digitalPinToPort(cspin)); - csPinMask = digitalPinToBitMask(cspin); - if (mosipin != -1) { - mosiPort = (BusIO_PortReg *)portOutputRegister(digitalPinToPort(mosipin)); - mosiPinMask = digitalPinToBitMask(mosipin); - } - if (misopin != -1) { - misoPort = (BusIO_PortReg *)portInputRegister(digitalPinToPort(misopin)); - misoPinMask = digitalPinToBitMask(misopin); - } - clkPort = (BusIO_PortReg *)portOutputRegister(digitalPinToPort(sckpin)); - clkPinMask = digitalPinToBitMask(sckpin); -#endif - - _freq = freq; - _dataOrder = dataOrder; - _dataMode = dataMode; - _begun = false; -} - -/*! - * @brief Release memory allocated in constructors - */ -Adafruit_SPIDevice::~Adafruit_SPIDevice() { - if (_spiSetting) - delete _spiSetting; -} - -/*! - * @brief Initializes SPI bus and sets CS pin high - * @return Always returns true because there's no way to test success of SPI - * init - */ -bool Adafruit_SPIDevice::begin(void) { - if (_cs != -1) { - pinMode(_cs, OUTPUT); - digitalWrite(_cs, HIGH); - } - - if (_spi) { // hardware SPI -#ifdef BUSIO_HAS_HW_SPI - _spi->begin(); -#endif - } else { - pinMode(_sck, OUTPUT); - - if ((_dataMode == SPI_MODE0) || (_dataMode == SPI_MODE1)) { - // idle low on mode 0 and 1 - digitalWrite(_sck, LOW); - } else { - // idle high on mode 2 or 3 - digitalWrite(_sck, HIGH); - } - if (_mosi != -1) { - pinMode(_mosi, OUTPUT); - digitalWrite(_mosi, HIGH); - } - if (_miso != -1) { - pinMode(_miso, INPUT); - } - } - - _begun = true; - return true; -} - -/*! - * @brief Transfer (send/receive) a buffer over hard/soft SPI, without - * transaction management - * @param buffer The buffer to send and receive at the same time - * @param len The number of bytes to transfer - */ -void Adafruit_SPIDevice::transfer(uint8_t *buffer, size_t len) { - // - // HARDWARE SPI - // - if (_spi) { -#ifdef BUSIO_HAS_HW_SPI -#if defined(SPARK) - _spi->transfer(buffer, buffer, len, nullptr); -#elif defined(STM32) - for (size_t i = 0; i < len; i++) { - _spi->transfer(buffer[i]); - } -#else - _spi->transfer(buffer, len); -#endif - return; -#endif - } - - // - // SOFTWARE SPI - // - uint8_t startbit; - if (_dataOrder == SPI_BITORDER_LSBFIRST) { - startbit = 0x1; - } else { - startbit = 0x80; - } - - bool towrite, lastmosi = !(buffer[0] & startbit); - uint8_t bitdelay_us = (1000000 / _freq) / 2; - - for (size_t i = 0; i < len; i++) { - uint8_t reply = 0; - uint8_t send = buffer[i]; - - /* - Serial.print("\tSending software SPI byte 0x"); - Serial.print(send, HEX); - Serial.print(" -> 0x"); - */ - - // Serial.print(send, HEX); - for (uint8_t b = startbit; b != 0; - b = (_dataOrder == SPI_BITORDER_LSBFIRST) ? b << 1 : b >> 1) { - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_dataMode == SPI_MODE0 || _dataMode == SPI_MODE2) { - towrite = send & b; - if ((_mosi != -1) && (lastmosi != towrite)) { - BUSIO_WRITE_MOSI(towrite); - lastmosi = towrite; - } - - BUSIO_SET_CLOCK_HIGH(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_miso != -1) { - if (BUSIO_READ_MISO()) - reply |= b; - } - - BUSIO_SET_CLOCK_LOW(); - - } else if (_dataMode == SPI_MODE3) { - - if (_mosi != -1) { // transmit on falling edge - BUSIO_WRITE_MOSI(send & b); - } - - BUSIO_SET_CLOCK_LOW(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - BUSIO_SET_CLOCK_HIGH(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_miso != -1) { // read on rising edge - if (BUSIO_READ_MISO()) { - reply |= b; - } - } - - } else { // || _dataMode == SPI_MODE1) - - BUSIO_SET_CLOCK_HIGH(); - - if (bitdelay_us) { - delayMicroseconds(bitdelay_us); - } - - if (_mosi != -1) { - BUSIO_WRITE_MOSI(send & b); - } - - BUSIO_SET_CLOCK_LOW(); - - if (_miso != -1) { - if (BUSIO_READ_MISO()) { - reply |= b; - } - } - } - } - if (_miso != -1) { - buffer[i] = reply; - } - } - return; -} - -/*! - * @brief Transfer (send/receive) one byte over hard/soft SPI, without - * transaction management - * @param send The byte to send - * @return The byte received while transmitting - */ -uint8_t Adafruit_SPIDevice::transfer(uint8_t send) { - uint8_t data = send; - transfer(&data, 1); - return data; -} - -/*! - * @brief Manually begin a transaction (calls beginTransaction if hardware - * SPI) - */ -void Adafruit_SPIDevice::beginTransaction(void) { - if (_spi) { -#ifdef BUSIO_HAS_HW_SPI - _spi->beginTransaction(*_spiSetting); -#endif - } -} - -/*! - * @brief Manually end a transaction (calls endTransaction if hardware SPI) - */ -void Adafruit_SPIDevice::endTransaction(void) { - if (_spi) { -#ifdef BUSIO_HAS_HW_SPI - _spi->endTransaction(); -#endif - } -} - -/*! - * @brief Assert/Deassert the CS pin if it is defined - * @param value The state the CS is set to - */ -void Adafruit_SPIDevice::setChipSelect(int value) { - if (_cs != -1) { - digitalWrite(_cs, value); - } -} - -/*! - * @brief Write a buffer or two to the SPI device, with transaction - * management. - * @brief Manually begin a transaction (calls beginTransaction if hardware - * SPI) with asserting the CS pin - */ -void Adafruit_SPIDevice::beginTransactionWithAssertingCS() { - beginTransaction(); - setChipSelect(LOW); -} - -/*! - * @brief Manually end a transaction (calls endTransaction if hardware SPI) - * with deasserting the CS pin - */ -void Adafruit_SPIDevice::endTransactionWithDeassertingCS() { - setChipSelect(HIGH); - endTransaction(); -} - -/*! - * @brief Write a buffer or two to the SPI device, with transaction - * management. - * @param buffer Pointer to buffer of data to write - * @param len Number of bytes from buffer to write - * @param prefix_buffer Pointer to optional array of data to write before - * buffer. - * @param prefix_len Number of bytes from prefix buffer to write - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::write(const uint8_t *buffer, size_t len, - const uint8_t *prefix_buffer, - size_t prefix_len) { - beginTransactionWithAssertingCS(); - - // do the writing -#if defined(ARDUINO_ARCH_ESP32) - if (_spi) { - if (prefix_len > 0) { - _spi->transferBytes((uint8_t *)prefix_buffer, nullptr, prefix_len); - } - if (len > 0) { - _spi->transferBytes((uint8_t *)buffer, nullptr, len); - } - } else -#endif - { - for (size_t i = 0; i < prefix_len; i++) { - transfer(prefix_buffer[i]); - } - for (size_t i = 0; i < len; i++) { - transfer(buffer[i]); - } - } - endTransactionWithDeassertingCS(); - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Wrote: ")); - if ((prefix_len != 0) && (prefix_buffer != nullptr)) { - for (uint16_t i = 0; i < prefix_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(prefix_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - } - } - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (i % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - return true; -} - -/*! - * @brief Read from SPI into a buffer from the SPI device, with transaction - * management. - * @param buffer Pointer to buffer of data to read into - * @param len Number of bytes from buffer to read. - * @param sendvalue The 8-bits of data to write when doing the data read, - * defaults to 0xFF - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::read(uint8_t *buffer, size_t len, uint8_t sendvalue) { - memset(buffer, sendvalue, len); // clear out existing buffer - - beginTransactionWithAssertingCS(); - transfer(buffer, len); - endTransactionWithDeassertingCS(); - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Read: ")); - for (uint16_t i = 0; i < len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - return true; -} - -/*! - * @brief Write some data, then read some data from SPI into another buffer, - * with transaction management. The buffers can point to same/overlapping - * locations. This does not transmit-receive at the same time! - * @param write_buffer Pointer to buffer of data to write from - * @param write_len Number of bytes from buffer to write. - * @param read_buffer Pointer to buffer of data to read into. - * @param read_len Number of bytes from buffer to read. - * @param sendvalue The 8-bits of data to write when doing the data read, - * defaults to 0xFF - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::write_then_read(const uint8_t *write_buffer, - size_t write_len, uint8_t *read_buffer, - size_t read_len, uint8_t sendvalue) { - beginTransactionWithAssertingCS(); - // do the writing -#if defined(ARDUINO_ARCH_ESP32) - if (_spi) { - if (write_len > 0) { - _spi->transferBytes((uint8_t *)write_buffer, nullptr, write_len); - } - } else -#endif - { - for (size_t i = 0; i < write_len; i++) { - transfer(write_buffer[i]); - } - } - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Wrote: ")); - for (uint16_t i = 0; i < write_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(write_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (write_len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - // do the reading - for (size_t i = 0; i < read_len; i++) { - read_buffer[i] = transfer(sendvalue); - } - -#ifdef DEBUG_SERIAL - DEBUG_SERIAL.print(F("\tSPIDevice Read: ")); - for (uint16_t i = 0; i < read_len; i++) { - DEBUG_SERIAL.print(F("0x")); - DEBUG_SERIAL.print(read_buffer[i], HEX); - DEBUG_SERIAL.print(F(", ")); - if (read_len % 32 == 31) { - DEBUG_SERIAL.println(); - } - } - DEBUG_SERIAL.println(); -#endif - - endTransactionWithDeassertingCS(); - - return true; -} - -/*! - * @brief Write some data and read some data at the same time from SPI - * into the same buffer, with transaction management. This is basicaly a wrapper - * for transfer() with CS-pin and transaction management. This /does/ - * transmit-receive at the same time! - * @param buffer Pointer to buffer of data to write/read to/from - * @param len Number of bytes from buffer to write/read. - * @return Always returns true because there's no way to test success of SPI - * writes - */ -bool Adafruit_SPIDevice::write_and_read(uint8_t *buffer, size_t len) { - beginTransactionWithAssertingCS(); - transfer(buffer, len); - endTransactionWithDeassertingCS(); - - return true; -} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.h deleted file mode 100644 index 82a0281..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/Adafruit_SPIDevice.h +++ /dev/null @@ -1,149 +0,0 @@ -#ifndef Adafruit_SPIDevice_h -#define Adafruit_SPIDevice_h - -#include - -#if !defined(SPI_INTERFACES_COUNT) || \ - (defined(SPI_INTERFACES_COUNT) && (SPI_INTERFACES_COUNT > 0)) -// HW SPI available -#include -#define BUSIO_HAS_HW_SPI -#else -// SW SPI ONLY -enum { SPI_MODE0, SPI_MODE1, SPI_MODE2, SPI_MODE3 }; -typedef uint8_t SPIClass; -#endif - -// some modern SPI definitions don't have BitOrder enum -#if (defined(__AVR__) && !defined(ARDUINO_ARCH_MEGAAVR)) || \ - defined(ESP8266) || defined(TEENSYDUINO) || defined(SPARK) || \ - defined(ARDUINO_ARCH_SPRESENSE) || defined(MEGATINYCORE) || \ - defined(DXCORE) || defined(ARDUINO_AVR_ATmega4809) || \ - defined(ARDUINO_AVR_ATmega4808) || defined(ARDUINO_AVR_ATmega3209) || \ - defined(ARDUINO_AVR_ATmega3208) || defined(ARDUINO_AVR_ATmega1609) || \ - defined(ARDUINO_AVR_ATmega1608) || defined(ARDUINO_AVR_ATmega809) || \ - defined(ARDUINO_AVR_ATmega808) || defined(ARDUINO_ARCH_ARC32) || \ - defined(ARDUINO_ARCH_XMC) - -typedef enum _BitOrder { - SPI_BITORDER_MSBFIRST = MSBFIRST, - SPI_BITORDER_LSBFIRST = LSBFIRST, -} BusIOBitOrder; - -#elif defined(ESP32) || defined(__ASR6501__) || defined(__ASR6502__) - -// some modern SPI definitions don't have BitOrder enum and have different SPI -// mode defines -typedef enum _BitOrder { - SPI_BITORDER_MSBFIRST = SPI_MSBFIRST, - SPI_BITORDER_LSBFIRST = SPI_LSBFIRST, -} BusIOBitOrder; - -#else -// Some platforms have a BitOrder enum but its named MSBFIRST/LSBFIRST -#define SPI_BITORDER_MSBFIRST MSBFIRST -#define SPI_BITORDER_LSBFIRST LSBFIRST -typedef BitOrder BusIOBitOrder; -#endif - -#if defined(__IMXRT1062__) // Teensy 4.x -// *Warning* I disabled the usage of FAST_PINIO as the set/clear operations -// used in the cpp file are not atomic and can effect multiple IO pins -// and if an interrupt happens in between the time the code reads the register -// and writes out the updated value, that changes one or more other IO pins -// on that same IO port, those change will be clobbered when the updated -// values are written back. A fast version can be implemented that uses the -// ports set and clear registers which are atomic. -// typedef volatile uint32_t BusIO_PortReg; -// typedef uint32_t BusIO_PortMask; -// #define BUSIO_USE_FAST_PINIO - -#elif defined(__MBED__) || defined(__ZEPHYR__) -// Boards based on RTOS cores like mbed or Zephyr are not going to expose the -// low level registers needed for fast pin manipulation -#undef BUSIO_USE_FAST_PINIO - -#elif defined(ARDUINO_ARCH_XMC) -#undef BUSIO_USE_FAST_PINIO - -#elif defined(__AVR__) || defined(TEENSYDUINO) -typedef volatile uint8_t BusIO_PortReg; -typedef uint8_t BusIO_PortMask; -#define BUSIO_USE_FAST_PINIO - -#elif defined(ESP8266) || defined(ESP32) || defined(__SAM3X8E__) || \ - defined(ARDUINO_ARCH_SAMD) -typedef volatile uint32_t BusIO_PortReg; -typedef uint32_t BusIO_PortMask; -#define BUSIO_USE_FAST_PINIO - -#elif (defined(__arm__) || defined(ARDUINO_FEATHER52)) && \ - !defined(ARDUINO_ARCH_RP2040) && !defined(ARDUINO_SILABS) && \ - !defined(ARDUINO_UNOR4_MINIMA) && !defined(ARDUINO_UNOR4_WIFI) && \ - !defined(PORTDUINO) -typedef volatile uint32_t BusIO_PortReg; -typedef uint32_t BusIO_PortMask; -#if !defined(__ASR6501__) && !defined(__ASR6502__) -#define BUSIO_USE_FAST_PINIO -#endif - -#else -#undef BUSIO_USE_FAST_PINIO -#endif - -/**! The class which defines how we will talk to this device over SPI **/ -class Adafruit_SPIDevice { -public: -#ifdef BUSIO_HAS_HW_SPI - Adafruit_SPIDevice(int8_t cspin, uint32_t freq = 1000000, - BusIOBitOrder dataOrder = SPI_BITORDER_MSBFIRST, - uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = &SPI); -#else - Adafruit_SPIDevice(int8_t cspin, uint32_t freq = 1000000, - BusIOBitOrder dataOrder = SPI_BITORDER_MSBFIRST, - uint8_t dataMode = SPI_MODE0, SPIClass *theSPI = nullptr); -#endif - Adafruit_SPIDevice(int8_t cspin, int8_t sck, int8_t miso, int8_t mosi, - uint32_t freq = 1000000, - BusIOBitOrder dataOrder = SPI_BITORDER_MSBFIRST, - uint8_t dataMode = SPI_MODE0); - ~Adafruit_SPIDevice(); - - bool begin(void); - bool read(uint8_t *buffer, size_t len, uint8_t sendvalue = 0xFF); - bool write(const uint8_t *buffer, size_t len, - const uint8_t *prefix_buffer = nullptr, size_t prefix_len = 0); - bool write_then_read(const uint8_t *write_buffer, size_t write_len, - uint8_t *read_buffer, size_t read_len, - uint8_t sendvalue = 0xFF); - bool write_and_read(uint8_t *buffer, size_t len); - - uint8_t transfer(uint8_t send); - void transfer(uint8_t *buffer, size_t len); - void beginTransaction(void); - void endTransaction(void); - void beginTransactionWithAssertingCS(); - void endTransactionWithDeassertingCS(); - -private: -#ifdef BUSIO_HAS_HW_SPI - SPIClass *_spi = nullptr; - SPISettings *_spiSetting = nullptr; -#else - uint8_t *_spi = nullptr; - uint8_t *_spiSetting = nullptr; -#endif - uint32_t _freq; - BusIOBitOrder _dataOrder; - uint8_t _dataMode; - void setChipSelect(int value); - - int8_t _cs, _sck, _mosi, _miso; -#ifdef BUSIO_USE_FAST_PINIO - BusIO_PortReg *mosiPort, *clkPort, *misoPort, *csPort; - BusIO_PortMask mosiPinMask, misoPinMask, clkPinMask, csPinMask; -#endif - bool _begun; -}; - -#endif // Adafruit_SPIDevice_h diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/CMakeLists.txt b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/CMakeLists.txt deleted file mode 100644 index 3fcb0b8..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/CMakeLists.txt +++ /dev/null @@ -1,11 +0,0 @@ -# Adafruit Bus IO Library -# https://github.com/adafruit/Adafruit_BusIO -# MIT License - -cmake_minimum_required(VERSION 3.5) - -idf_component_register(SRCS "Adafruit_I2CDevice.cpp" "Adafruit_BusIO_Register.cpp" "Adafruit_SPIDevice.cpp" "Adafruit_GenericDevice.cpp" - INCLUDE_DIRS "." - REQUIRES arduino-esp32) - -project(Adafruit_BusIO) diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/LICENSE b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/LICENSE deleted file mode 100644 index 860e3e2..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2017 Adafruit Industries - -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. \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/README.md b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/README.md deleted file mode 100644 index 59712ff..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/README.md +++ /dev/null @@ -1,8 +0,0 @@ -# Adafruit Bus IO Library [![Build Status](https://github.com/adafruit/Adafruit_BusIO/workflows/Arduino%20Library%20CI/badge.svg)](https://github.com/adafruit/Adafruit_BusIO/actions) - - -This is a helper library to abstract away I2C, SPI, and 'generic transport' (e.g. UART) transactions and registers - -Adafruit invests time and resources providing this open source code, please support Adafruit and open-source hardware by purchasing products from Adafruit! - -MIT license, all text above must be included in any redistribution diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/component.mk b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/component.mk deleted file mode 100644 index 049f190..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/component.mk +++ /dev/null @@ -1 +0,0 @@ -COMPONENT_ADD_INCLUDEDIRS = . diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/.uno.test.skip b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/.uno.test.skip deleted file mode 100644 index e69de29..0000000 diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino deleted file mode 100644 index 59af308..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uartregtest/genericdevice_uartregtest.ino +++ /dev/null @@ -1,219 +0,0 @@ -/* - Advanced example of using bstracted transport for reading and writing - register data from a UART-based device such as a TMC2209 - - Written with help by Claude! - https://claude.ai/chat/335f50b1-3dd8-435e-9139-57ec7ca26a3c (at this time - chats are not shareable :( -*/ - -#include "Adafruit_BusIO_Register.h" -#include "Adafruit_GenericDevice.h" - -// Debugging macros -#define DEBUG_SERIAL Serial - -#ifdef DEBUG_SERIAL -#define DEBUG_PRINT(x) DEBUG_SERIAL.print(x) -#define DEBUG_PRINTLN(x) DEBUG_SERIAL.println(x) -#define DEBUG_PRINT_HEX(x) \ - do { \ - if (x < 0x10) \ - DEBUG_SERIAL.print('0'); \ - DEBUG_SERIAL.print(x, HEX); \ - DEBUG_SERIAL.print(' '); \ - } while (0) -#else -#define DEBUG_PRINT(x) -#define DEBUG_PRINTLN(x) -#define DEBUG_PRINT_HEX(x) -#endif - -#define TMC2209_IOIN 0x06 - -class TMC2209_UART { -private: - Stream *_uart_stream; - uint8_t _addr; - - static bool uart_read(void *thiz, uint8_t *buffer, size_t len) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - uint16_t timeout = 100; - while (dev->_uart_stream->available() < len && timeout--) { - delay(1); - } - if (timeout == 0) { - DEBUG_PRINTLN("Read timeout!"); - return false; - } - - DEBUG_PRINT("Reading: "); - for (size_t i = 0; i < len; i++) { - buffer[i] = dev->_uart_stream->read(); - DEBUG_PRINT_HEX(buffer[i]); - } - DEBUG_PRINTLN(""); - - return true; - } - - static bool uart_write(void *thiz, const uint8_t *buffer, size_t len) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - DEBUG_PRINT("Writing: "); - for (size_t i = 0; i < len; i++) { - DEBUG_PRINT_HEX(buffer[i]); - } - DEBUG_PRINTLN(""); - - dev->_uart_stream->write(buffer, len); - return true; - } - - static bool uart_readreg(void *thiz, uint8_t *addr_buf, uint8_t addrsiz, - uint8_t *data, uint16_t datalen) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - while (dev->_uart_stream->available()) - dev->_uart_stream->read(); - - uint8_t packet[4] = {0x05, uint8_t(dev->_addr << 1), addr_buf[0], 0x00}; - - packet[3] = calcCRC(packet, 3); - if (!uart_write(thiz, packet, 4)) - return false; - - // Read back echo - uint8_t echo[4]; - if (!uart_read(thiz, echo, 4)) - return false; - - // Verify echo - for (uint8_t i = 0; i < 4; i++) { - if (echo[i] != packet[i]) { - DEBUG_PRINTLN("Echo mismatch"); - return false; - } - } - - uint8_t response[8]; // sync + 0xFF + reg + 4 data bytes + CRC - if (!uart_read(thiz, response, 8)) - return false; - - // Verify response - if (response[0] != 0x05) { - DEBUG_PRINTLN("Invalid sync byte"); - return false; - } - - if (response[1] != 0xFF) { - DEBUG_PRINTLN("Invalid reply address"); - return false; - } - - if (response[2] != addr_buf[0]) { - DEBUG_PRINTLN("Register mismatch"); - return false; - } - - uint8_t crc = calcCRC(response, 7); - if (crc != response[7]) { - DEBUG_PRINTLN("CRC mismatch"); - return false; - } - - memcpy(data, &response[3], 4); - return true; - } - - static bool uart_writereg(void *thiz, uint8_t *addr_buf, uint8_t addrsiz, - const uint8_t *data, uint16_t datalen) { - TMC2209_UART *dev = (TMC2209_UART *)thiz; - while (dev->_uart_stream->available()) - dev->_uart_stream->read(); - - uint8_t packet[8] = {0x05, - uint8_t(dev->_addr << 1), - uint8_t(addr_buf[0] | 0x80), - data[0], - data[1], - data[2], - data[3], - 0x00}; - - packet[7] = calcCRC(packet, 7); - if (!uart_write(thiz, packet, 8)) - return false; - - uint8_t echo[8]; - if (!uart_read(thiz, echo, 8)) - return false; - - for (uint8_t i = 0; i < 8; i++) { - if (echo[i] != packet[i]) { - DEBUG_PRINTLN("Write echo mismatch"); - return false; - } - } - - return true; - } - - static uint8_t calcCRC(uint8_t *data, uint8_t length) { - uint8_t crc = 0; - for (uint8_t i = 0; i < length; i++) { - uint8_t currentByte = data[i]; - for (uint8_t j = 0; j < 8; j++) { - if ((crc >> 7) ^ (currentByte & 0x01)) { - crc = (crc << 1) ^ 0x07; - } else { - crc = crc << 1; - } - currentByte = currentByte >> 1; - } - } - return crc; - } - -public: - TMC2209_UART(Stream *serial, uint8_t addr) - : _uart_stream(serial), _addr(addr) {} - - Adafruit_GenericDevice *createDevice() { - return new Adafruit_GenericDevice(this, uart_read, uart_write, uart_readreg, - uart_writereg); - } -}; - -void setup() { - Serial.begin(115200); - while (!Serial) - ; - delay(100); - Serial.println("TMC2209 Generic Device register read/write test!"); - - Serial1.begin(115200); - - TMC2209_UART uart(&Serial1, 0); - Adafruit_GenericDevice *device = uart.createDevice(); - device->begin(); - - // Create register object for IOIN - Adafruit_BusIO_Register ioin_reg(device, - TMC2209_IOIN, // device and register address - 4, // width = 4 bytes - MSBFIRST, // byte order - 1); // address width = 1 byte - Serial.print("IOIN = 0x"); - Serial.println(ioin_reg.read(), HEX); - - // Create RegisterBits for VERSION field (bits 31:24) - Adafruit_BusIO_RegisterBits version_bits( - &ioin_reg, 8, 24); // 8 bits wide, starting at bit 24 - - Serial.println("Reading VERSION..."); - uint8_t version = version_bits.read(); - - Serial.print("VERSION = 0x"); - Serial.println(version, HEX); -} - -void loop() { delay(1000); } \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/.uno.test.skip b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/.uno.test.skip deleted file mode 100644 index e69de29..0000000 diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino deleted file mode 100644 index 6a11dbf..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/genericdevice_uarttest/genericdevice_uarttest.ino +++ /dev/null @@ -1,98 +0,0 @@ -/* - Abstracted transport for reading and writing data from a UART-based - device such as a TMC2209 - - Written with help by Claude! - https://claude.ai/chat/335f50b1-3dd8-435e-9139-57ec7ca26a3c (at this time - chats are not shareable :( -*/ - -#include "Adafruit_GenericDevice.h" - -/** - * Basic UART device class that demonstrates using GenericDevice with a Stream - * interface. This example shows how to wrap a Stream (like HardwareSerial or - * SoftwareSerial) with read/write callbacks that can be used by BusIO's - * register functions. - */ -class UARTDevice { -public: - UARTDevice(Stream *serial) : _serial(serial) {} - - // Static callback for writing data to UART - // Called by GenericDevice when data needs to be sent - static bool uart_write(void *thiz, const uint8_t *buffer, size_t len) { - UARTDevice *dev = (UARTDevice *)thiz; - dev->_serial->write(buffer, len); - return true; - } - - // Static callback for reading data from UART - // Includes timeout and will return false if not enough data available - static bool uart_read(void *thiz, uint8_t *buffer, size_t len) { - UARTDevice *dev = (UARTDevice *)thiz; - uint16_t timeout = 100; - while (dev->_serial->available() < len && timeout--) { - delay(1); - } - if (timeout == 0) { - return false; - } - for (size_t i = 0; i < len; i++) { - buffer[i] = dev->_serial->read(); - } - return true; - } - - // Create a GenericDevice instance using our callbacks - Adafruit_GenericDevice *createDevice() { - return new Adafruit_GenericDevice(this, uart_read, uart_write); - } - -private: - Stream *_serial; // Underlying Stream instance (HardwareSerial, etc) -}; - -void setup() { - Serial.begin(115200); - while (!Serial) - ; - delay(100); - - Serial.println("Generic Device test!"); - - // Initialize UART for device communication - Serial1.begin(115200); - - // Create UART wrapper and BusIO device - UARTDevice uart(&Serial1); - Adafruit_GenericDevice *device = uart.createDevice(); - device->begin(); - - // Test write/read cycle - uint8_t write_buf[4] = {0x5, 0x0, 0x0, 0x48}; - uint8_t read_buf[8]; - - Serial.println("Writing data..."); - if (!device->write(write_buf, 4)) { - Serial.println("Write failed!"); - return; - } - - Serial.println("Reading response..."); - if (!device->read(read_buf, 8)) { - Serial.println("Read failed!"); - return; - } - - // Print response bytes - Serial.print("Got response: "); - for (int i = 0; i < 8; i++) { - Serial.print("0x"); - Serial.print(read_buf[i], HEX); - Serial.print(" "); - } - Serial.println(); -} - -void loop() { delay(1000); } \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino deleted file mode 100644 index f2e6ba7..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_address_detect/i2c_address_detect.ino +++ /dev/null @@ -1,22 +0,0 @@ -#include - -Adafruit_I2CDevice i2c_dev = Adafruit_I2CDevice(0x10); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C address detection test"); - - if (!i2c_dev.begin()) { - Serial.print("Did not find device at 0x"); - Serial.println(i2c_dev.address(), HEX); - while (1) - ; - } - Serial.print("Device found on address 0x"); - Serial.println(i2c_dev.address(), HEX); -} - -void loop() {} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino deleted file mode 100644 index 4ac2626..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_readwrite/i2c_readwrite.ino +++ /dev/null @@ -1,45 +0,0 @@ -#include - -#define I2C_ADDRESS 0x60 -Adafruit_I2CDevice i2c_dev = Adafruit_I2CDevice(I2C_ADDRESS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C device read and write test"); - - if (!i2c_dev.begin()) { - Serial.print("Did not find device at 0x"); - Serial.println(i2c_dev.address(), HEX); - while (1) - ; - } - Serial.print("Device found on address 0x"); - Serial.println(i2c_dev.address(), HEX); - - uint8_t buffer[32]; - // Try to read 32 bytes - i2c_dev.read(buffer, 32); - Serial.print("Read: "); - for (uint8_t i = 0; i < 32; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); - - // read a register by writing first, then reading - buffer[0] = 0x0C; // we'll reuse the same buffer - i2c_dev.write_then_read(buffer, 1, buffer, 2, false); - Serial.print("Write then Read: "); - for (uint8_t i = 0; i < 2; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); -} - -void loop() {} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino deleted file mode 100644 index 2d44c83..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2c_registers/i2c_registers.ino +++ /dev/null @@ -1,43 +0,0 @@ -#include -#include - -#define I2C_ADDRESS 0x60 -Adafruit_I2CDevice i2c_dev = Adafruit_I2CDevice(I2C_ADDRESS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C device register test"); - - if (!i2c_dev.begin()) { - Serial.print("Did not find device at 0x"); - Serial.println(i2c_dev.address(), HEX); - while (1) - ; - } - Serial.print("Device found on address 0x"); - Serial.println(i2c_dev.address(), HEX); - - Adafruit_BusIO_Register id_reg = - Adafruit_BusIO_Register(&i2c_dev, 0x0C, 2, LSBFIRST); - uint16_t id; - id_reg.read(&id); - Serial.print("ID register = 0x"); - Serial.println(id, HEX); - - Adafruit_BusIO_Register thresh_reg = - Adafruit_BusIO_Register(&i2c_dev, 0x01, 2, LSBFIRST); - uint16_t thresh; - thresh_reg.read(&thresh); - Serial.print("Initial threshold register = 0x"); - Serial.println(thresh, HEX); - - thresh_reg.write(~thresh); - - Serial.print("Post threshold register = 0x"); - Serial.println(thresh_reg.read(), HEX); -} - -void loop() {} \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino deleted file mode 100644 index be04606..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/i2corspi_register/i2corspi_register.ino +++ /dev/null @@ -1,40 +0,0 @@ -#include - -// Define which interface to use by setting the unused interface to NULL! - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice *spi_dev = NULL; // new Adafruit_SPIDevice(SPIDEVICE_CS); - -#define I2C_ADDRESS 0x5D -Adafruit_I2CDevice *i2c_dev = new Adafruit_I2CDevice(I2C_ADDRESS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("I2C or SPI device register test"); - - if (spi_dev && !spi_dev->begin()) { - Serial.println("Could not initialize SPI device"); - } - - if (i2c_dev) { - if (i2c_dev->begin()) { - Serial.print("Device found on I2C address 0x"); - Serial.println(i2c_dev->address(), HEX); - } else { - Serial.print("Did not find I2C device at 0x"); - Serial.println(i2c_dev->address(), HEX); - } - } - - Adafruit_BusIO_Register id_reg = - Adafruit_BusIO_Register(i2c_dev, spi_dev, ADDRBIT8_HIGH_TOREAD, 0x0F); - uint8_t id = 0; - id_reg.read(&id); - Serial.print("ID register = 0x"); - Serial.println(id, HEX); -} - -void loop() {} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino deleted file mode 100644 index ebf14f9..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_modetest/spi_modetest.ino +++ /dev/null @@ -1,35 +0,0 @@ -#include - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice spi_dev = - Adafruit_SPIDevice(SPIDEVICE_CS, 100000, SPI_BITORDER_MSBFIRST, SPI_MODE1); -// Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice(SPIDEVICE_CS, 13, 12, 11, -// 100000, SPI_BITORDER_MSBFIRST, SPI_MODE1); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI device mode test"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } -} - -void loop() { - Serial.println("\n\nTransfer test"); - for (uint16_t x = 0; x <= 0xFF; x++) { - uint8_t i = x; - Serial.print("0x"); - Serial.print(i, HEX); - spi_dev.read(&i, 1, i); - Serial.print("/"); - Serial.print(i, HEX); - Serial.print(", "); - delay(25); - } -} \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino deleted file mode 100644 index 4b9ecf1..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_readwrite/spi_readwrite.ino +++ /dev/null @@ -1,43 +0,0 @@ -#include - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice(SPIDEVICE_CS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI device read and write test"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } - - uint8_t buffer[32]; - - // Try to read 32 bytes - spi_dev.read(buffer, 32); - Serial.print("Read: "); - for (uint8_t i = 0; i < 32; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); - - // read a register by writing first, then reading - buffer[0] = 0x8F; // we'll reuse the same buffer - spi_dev.write_then_read(buffer, 1, buffer, 2, false); - Serial.print("Write then Read: "); - for (uint8_t i = 0; i < 2; i++) { - Serial.print("0x"); - Serial.print(buffer[i], HEX); - Serial.print(", "); - } - Serial.println(); -} - -void loop() {} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino deleted file mode 100644 index d11b440..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_register_bits/spi_register_bits.ino +++ /dev/null @@ -1,268 +0,0 @@ -/*************************************************** - - This is an example for how to use Adafruit_BusIO_RegisterBits from - Adafruit_BusIO library. - - Designed specifically to work with the Adafruit RTD Sensor - ----> https://www.adafruit.com/products/3328 - uisng a MAX31865 RTD-to-Digital Converter - ----> https://datasheets.maximintegrated.com/en/ds/MAX31865.pdf - - This sensor uses SPI to communicate, 4 pins are required to - interface. - A fifth pin helps to detect when a new conversion is ready. - - Adafruit invests time and resources providing this open source code, - please support Adafruit and open-source hardware by purchasing - products from Adafruit! - - Example written (2020/3) by Andreas Hardtung/AnHard. - BSD license, all text above must be included in any redistribution - ****************************************************/ - -#include -#include - -#define MAX31865_SPI_SPEED (5000000) -#define MAX31865_SPI_BITORDER (SPI_BITORDER_MSBFIRST) -#define MAX31865_SPI_MODE (SPI_MODE1) - -#define MAX31865_SPI_CS (10) -#define MAX31865_READY_PIN (2) - -Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice( - MAX31865_SPI_CS, MAX31865_SPI_SPEED, MAX31865_SPI_BITORDER, - MAX31865_SPI_MODE, &SPI); // Hardware SPI -// Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice( MAX31865_SPI_CS, 13, 12, 11, -// MAX31865_SPI_SPEED, MAX31865_SPI_BITORDER, MAX31865_SPI_MODE); // Software -// SPI - -// MAX31865 chip related -// ********************************************************************************************* -Adafruit_BusIO_Register config_reg = - Adafruit_BusIO_Register(&spi_dev, 0x00, ADDRBIT8_HIGH_TOWRITE, 1, MSBFIRST); -Adafruit_BusIO_RegisterBits bias_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 7); -Adafruit_BusIO_RegisterBits auto_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 6); -Adafruit_BusIO_RegisterBits oneS_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 5); -Adafruit_BusIO_RegisterBits wire_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 4); -Adafruit_BusIO_RegisterBits faultT_bits = - Adafruit_BusIO_RegisterBits(&config_reg, 2, 2); -Adafruit_BusIO_RegisterBits faultR_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 1); -Adafruit_BusIO_RegisterBits fi50hz_bit = - Adafruit_BusIO_RegisterBits(&config_reg, 1, 0); - -Adafruit_BusIO_Register rRatio_reg = - Adafruit_BusIO_Register(&spi_dev, 0x01, ADDRBIT8_HIGH_TOWRITE, 2, MSBFIRST); -Adafruit_BusIO_RegisterBits rRatio_bits = - Adafruit_BusIO_RegisterBits(&rRatio_reg, 15, 1); -Adafruit_BusIO_RegisterBits fault_bit = - Adafruit_BusIO_RegisterBits(&rRatio_reg, 1, 0); - -Adafruit_BusIO_Register maxRratio_reg = - Adafruit_BusIO_Register(&spi_dev, 0x03, ADDRBIT8_HIGH_TOWRITE, 2, MSBFIRST); -Adafruit_BusIO_RegisterBits maxRratio_bits = - Adafruit_BusIO_RegisterBits(&maxRratio_reg, 15, 1); - -Adafruit_BusIO_Register minRratio_reg = - Adafruit_BusIO_Register(&spi_dev, 0x05, ADDRBIT8_HIGH_TOWRITE, 2, MSBFIRST); -Adafruit_BusIO_RegisterBits minRratio_bits = - Adafruit_BusIO_RegisterBits(&minRratio_reg, 15, 1); - -Adafruit_BusIO_Register fault_reg = - Adafruit_BusIO_Register(&spi_dev, 0x07, ADDRBIT8_HIGH_TOWRITE, 1, MSBFIRST); -Adafruit_BusIO_RegisterBits range_high_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 7); -Adafruit_BusIO_RegisterBits range_low_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 6); -Adafruit_BusIO_RegisterBits refin_high_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 5); -Adafruit_BusIO_RegisterBits refin_low_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 4); -Adafruit_BusIO_RegisterBits rtdin_low_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 3); -Adafruit_BusIO_RegisterBits voltage_fault_bit = - Adafruit_BusIO_RegisterBits(&fault_reg, 1, 2); - -// Print the details of the configuration register. -void printConfig(void) { - Serial.print("BIAS: "); - if (bias_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", AUTO: "); - if (auto_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", ONES: "); - if (oneS_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", WIRE: "); - if (wire_bit.read()) - Serial.print("3"); - else - Serial.print("2/4"); - Serial.print(", FAULTCLEAR: "); - if (faultR_bit.read()) - Serial.print("ON"); - else - Serial.print("OFF"); - Serial.print(", "); - if (fi50hz_bit.read()) - Serial.print("50HZ"); - else - Serial.print("60HZ"); - Serial.println(); -} - -// Check and print faults. Then clear them. -void checkFaults(void) { - if (fault_bit.read()) { - Serial.print("MAX: "); - Serial.println(maxRratio_bits.read()); - Serial.print("VAL: "); - Serial.println(rRatio_bits.read()); - Serial.print("MIN: "); - Serial.println(minRratio_bits.read()); - - if (range_high_fault_bit.read()) - Serial.println("Range high fault"); - if (range_low_fault_bit.read()) - Serial.println("Range low fault"); - if (refin_high_fault_bit.read()) - Serial.println("REFIN high fault"); - if (refin_low_fault_bit.read()) - Serial.println("REFIN low fault"); - if (rtdin_low_fault_bit.read()) - Serial.println("RTDIN low fault"); - if (voltage_fault_bit.read()) - Serial.println("Voltage fault"); - - faultR_bit.write(1); // clear fault - } -} - -void setup() { -#if (MAX31865_1_READY_PIN != -1) - pinMode(MAX31865_READY_PIN, INPUT_PULLUP); -#endif - - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI Adafruit_BusIO_RegisterBits test on MAX31865"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } - - // Set up for automode 50Hz. We don't care about selfheating. We want the - // highest possible sampling rate. - auto_bit.write(0); // Don't switch filtermode while auto_mode is on. - fi50hz_bit.write(1); // Set filter to 50Hz mode. - faultR_bit.write(1); // Clear faults. - bias_bit.write(1); // In automode we want to have the bias current always on. - delay(5); // Wait until bias current settles down. - // 10.5 time constants of the input RC network is required. - // 10ms worst case for 10kω reference resistor and a 0.1µF capacitor - // across the RTD inputs. Adafruit Module has 0.1µF and only - // 430/4300ω So here 0.43/4.3ms - auto_bit.write( - 1); // Now we can set automode. Automatically starting first conversion. - -// Test the READY_PIN -#if (defined(MAX31865_READY_PIN) && (MAX31865_READY_PIN != -1)) - int i = 0; - while (digitalRead(MAX31865_READY_PIN) && i++ <= 100) { - delay(1); - } - if (i >= 100) { - Serial.print("ERROR: Max31865 Pin detection does not work. PIN:"); - Serial.println(MAX31865_READY_PIN); - } -#else - delay(100); -#endif - - // Set ratio range. - // Setting the temperatures would need some more calculation - not related to - // Adafruit_BusIO_RegisterBits. - uint16_t ratio = rRatio_bits.read(); - maxRratio_bits.write((ratio < 0x8fffu - 1000u) ? ratio + 1000u : 0x8fffu); - minRratio_bits.write((ratio > 1000u) ? ratio - 1000u : 0u); - - printConfig(); - checkFaults(); -} - -void loop() { -#if (defined(MAX31865_READY_PIN) && (MAX31865_1_READY_PIN != -1)) - // Is conversion ready? - if (!digitalRead(MAX31865_READY_PIN)) -#else - // Warant conversion is ready. - delay(21); // 21ms for 50Hz-mode. 19ms in 60Hz-mode. -#endif - { - // Read ratio, calculate temperature, scale, filter and print. - Serial.println(rRatio2C(rRatio_bits.read()) * 100.0f, - 0); // Temperature scaled by 100 - // Check, print, clear faults. - checkFaults(); - } - - // Do something else. - // delay(15000); -} - -// Module/Sensor related. Here Adafruit PT100 module with a 2_Wire PT100 Class C -// ***************************** -float rRatio2C(uint16_t ratio) { - // A simple linear conversion. - const float R0 = 100.0f; - const float Rref = 430.0f; - const float alphaPT = 0.003850f; - const float ADCmax = (1u << 15) - 1.0f; - const float rscale = Rref / ADCmax; - // Measured temperature in boiling water 101.08°C with factor a = 1 and b = 0. - // Rref and MAX at about 22±2°C. Measured temperature in ice/water bath 0.76°C - // with factor a = 1 and b = 0. Rref and MAX at about 22±2°C. - // const float a = 1.0f / (alphaPT * R0); - const float a = (100.0f / 101.08f) / (alphaPT * R0); - // const float b = 0.0f; // 101.08 - const float b = -0.76f; // 100.32 > 101.08 - - return filterRing(((ratio * rscale) - R0) * a + b); -} - -// General purpose -// ********************************************************************************************* -#define RINGLENGTH 250 -float filterRing(float newVal) { - static float ring[RINGLENGTH] = {0.0}; - static uint8_t ringIndex = 0; - static bool ringFull = false; - - if (ringIndex == RINGLENGTH) { - ringFull = true; - ringIndex = 0; - } - ring[ringIndex] = newVal; - uint8_t loopEnd = (ringFull) ? RINGLENGTH : ringIndex + 1; - float ringSum = 0.0f; - for (uint8_t i = 0; i < loopEnd; i++) - ringSum += ring[i]; - ringIndex++; - return ringSum / loopEnd; -} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_registers/spi_registers.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_registers/spi_registers.ino deleted file mode 100644 index af6069b..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/examples/spi_registers/spi_registers.ino +++ /dev/null @@ -1,40 +0,0 @@ -#include -#include - -#define SPIDEVICE_CS 10 -Adafruit_SPIDevice spi_dev = Adafruit_SPIDevice(SPIDEVICE_CS); - -void setup() { - while (!Serial) { - delay(10); - } - Serial.begin(115200); - Serial.println("SPI device register test"); - - if (!spi_dev.begin()) { - Serial.println("Could not initialize SPI device"); - while (1) - ; - } - - Adafruit_BusIO_Register id_reg = - Adafruit_BusIO_Register(&spi_dev, 0x0F, ADDRBIT8_HIGH_TOREAD); - uint8_t id = 0; - id_reg.read(&id); - Serial.print("ID register = 0x"); - Serial.println(id, HEX); - - Adafruit_BusIO_Register thresh_reg = Adafruit_BusIO_Register( - &spi_dev, 0x0C, ADDRBIT8_HIGH_TOREAD, 2, LSBFIRST); - uint16_t thresh = 0; - thresh_reg.read(&thresh); - Serial.print("Initial threshold register = 0x"); - Serial.println(thresh, HEX); - - thresh_reg.write(~thresh); - - Serial.print("Post threshold register = 0x"); - Serial.println(thresh_reg.read(), HEX); -} - -void loop() {} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/library.properties b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/library.properties deleted file mode 100644 index 1615468..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit BusIO/library.properties +++ /dev/null @@ -1,9 +0,0 @@ -name=Adafruit BusIO -version=1.17.4 -author=Adafruit -maintainer=Adafruit -sentence=This is a library for abstracting away UART, I2C and SPI interfacing -paragraph=This is a library for abstracting away UART, I2C and SPI interfacing -category=Signal Input/Output -url=https://github.com/adafruit/Adafruit_BusIO -architectures=* diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.clang-format b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.clang-format deleted file mode 100644 index e1b53a0..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.clang-format +++ /dev/null @@ -1,239 +0,0 @@ -Language: Cpp -# BasedOnStyle: LLVM -AccessModifierOffset: -2 -AlignAfterOpenBracket: Align -AlignArrayOfStructures: None -AlignConsecutiveAssignments: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: true -AlignConsecutiveBitFields: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: false -AlignConsecutiveDeclarations: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: false -AlignConsecutiveMacros: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCompound: false - PadOperators: false -AlignConsecutiveShortCaseStatements: - Enabled: false - AcrossEmptyLines: false - AcrossComments: false - AlignCaseColons: false -AlignEscapedNewlines: Right -AlignOperands: Align -AlignTrailingComments: - Kind: Always - OverEmptyLines: 0 -AllowAllArgumentsOnNextLine: true -AllowAllParametersOfDeclarationOnNextLine: true -AllowBreakBeforeNoexceptSpecifier: Never -AllowShortBlocksOnASingleLine: Never -AllowShortCaseLabelsOnASingleLine: false -AllowShortCompoundRequirementOnASingleLine: true -AllowShortEnumsOnASingleLine: true -AllowShortFunctionsOnASingleLine: All -AllowShortIfStatementsOnASingleLine: Never -AllowShortLambdasOnASingleLine: All -AllowShortLoopsOnASingleLine: false -AlwaysBreakAfterDefinitionReturnType: None -AlwaysBreakAfterReturnType: None -AlwaysBreakBeforeMultilineStrings: false -AlwaysBreakTemplateDeclarations: MultiLine -AttributeMacros: - - __capability -BinPackArguments: true -BinPackParameters: true -BitFieldColonSpacing: Both -BraceWrapping: - AfterCaseLabel: false - AfterClass: false - AfterControlStatement: Never - AfterEnum: false - AfterExternBlock: false - AfterFunction: false - AfterNamespace: false - AfterObjCDeclaration: false - AfterStruct: false - AfterUnion: false - BeforeCatch: false - BeforeElse: false - BeforeLambdaBody: false - BeforeWhile: false - IndentBraces: false - SplitEmptyFunction: true - SplitEmptyRecord: true - SplitEmptyNamespace: true -BreakAdjacentStringLiterals: true -BreakAfterAttributes: Leave -BreakAfterJavaFieldAnnotations: false -BreakArrays: true -BreakBeforeBinaryOperators: None -BreakBeforeConceptDeclarations: Always -BreakBeforeBraces: Attach -BreakBeforeInlineASMColon: OnlyMultiline -BreakBeforeTernaryOperators: true -BreakConstructorInitializers: BeforeColon -BreakInheritanceList: BeforeColon -BreakStringLiterals: true -ColumnLimit: 80 -CommentPragmas: '^ IWYU pragma:' -CompactNamespaces: false -ConstructorInitializerIndentWidth: 4 -ContinuationIndentWidth: 4 -Cpp11BracedListStyle: true -DerivePointerAlignment: false -DisableFormat: false -EmptyLineAfterAccessModifier: Never -EmptyLineBeforeAccessModifier: LogicalBlock -ExperimentalAutoDetectBinPacking: false -FixNamespaceComments: true -ForEachMacros: - - foreach - - Q_FOREACH - - BOOST_FOREACH -IfMacros: - - KJ_IF_MAYBE -IncludeBlocks: Preserve -IncludeCategories: - - Regex: '^"(llvm|llvm-c|clang|clang-c)/' - Priority: 2 - SortPriority: 0 - CaseSensitive: false - - Regex: '^(<|"(gtest|gmock|isl|json)/)' - Priority: 3 - SortPriority: 0 - CaseSensitive: false - - Regex: '.*' - Priority: 1 - SortPriority: 0 - CaseSensitive: false -IncludeIsMainRegex: '(Test)?$' -IncludeIsMainSourceRegex: '' -IndentAccessModifiers: false -IndentCaseBlocks: false -IndentCaseLabels: false -IndentExternBlock: AfterExternBlock -IndentGotoLabels: true -IndentPPDirectives: None -IndentRequiresClause: true -IndentWidth: 2 -IndentWrappedFunctionNames: false -InsertBraces: false -InsertNewlineAtEOF: false -InsertTrailingCommas: None -IntegerLiteralSeparator: - Binary: 0 - BinaryMinDigits: 0 - Decimal: 0 - DecimalMinDigits: 0 - Hex: 0 - HexMinDigits: 0 -JavaScriptQuotes: Leave -JavaScriptWrapImports: true -KeepEmptyLinesAtTheStartOfBlocks: true -KeepEmptyLinesAtEOF: false -LambdaBodyIndentation: Signature -LineEnding: DeriveLF -MacroBlockBegin: '' -MacroBlockEnd: '' -MaxEmptyLinesToKeep: 1 -NamespaceIndentation: None -ObjCBinPackProtocolList: Auto -ObjCBlockIndentWidth: 2 -ObjCBreakBeforeNestedBlockParam: true -ObjCSpaceAfterProperty: false -ObjCSpaceBeforeProtocolList: true -PackConstructorInitializers: BinPack -PenaltyBreakAssignment: 2 -PenaltyBreakBeforeFirstCallParameter: 19 -PenaltyBreakComment: 300 -PenaltyBreakFirstLessLess: 120 -PenaltyBreakOpenParenthesis: 0 -PenaltyBreakScopeResolution: 500 -PenaltyBreakString: 1000 -PenaltyBreakTemplateDeclaration: 10 -PenaltyExcessCharacter: 1000000 -PenaltyIndentedWhitespace: 0 -PenaltyReturnTypeOnItsOwnLine: 60 -PointerAlignment: Right -PPIndentWidth: -1 -QualifierAlignment: Leave -ReferenceAlignment: Pointer -ReflowComments: true -RemoveBracesLLVM: false -RemoveParentheses: Leave -RemoveSemicolon: false -RequiresClausePosition: OwnLine -RequiresExpressionIndentation: OuterScope -SeparateDefinitionBlocks: Leave -ShortNamespaceLines: 1 -SkipMacroDefinitionBody: false -SortIncludes: CaseSensitive -SortJavaStaticImport: Before -SortUsingDeclarations: LexicographicNumeric -SpaceAfterCStyleCast: false -SpaceAfterLogicalNot: false -SpaceAfterTemplateKeyword: true -SpaceAroundPointerQualifiers: Default -SpaceBeforeAssignmentOperators: true -SpaceBeforeCaseColon: false -SpaceBeforeCpp11BracedList: false -SpaceBeforeCtorInitializerColon: true -SpaceBeforeInheritanceColon: true -SpaceBeforeJsonColon: false -SpaceBeforeParens: ControlStatements -SpaceBeforeParensOptions: - AfterControlStatements: true - AfterForeachMacros: true - AfterFunctionDefinitionName: false - AfterFunctionDeclarationName: false - AfterIfMacros: true - AfterOverloadedOperator: false - AfterPlacementOperator: true - AfterRequiresInClause: false - AfterRequiresInExpression: false - BeforeNonEmptyParentheses: false -SpaceBeforeRangeBasedForLoopColon: true -SpaceBeforeSquareBrackets: false -SpaceInEmptyBlock: false -SpacesBeforeTrailingComments: 1 -SpacesInAngles: Never -SpacesInContainerLiterals: true -SpacesInLineCommentPrefix: - Minimum: 1 - Maximum: -1 -SpacesInParens: Never -SpacesInParensOptions: - InCStyleCasts: false - InConditionalStatements: false - InEmptyParentheses: false - Other: false -SpacesInSquareBrackets: false -Standard: Latest -StatementAttributeLikeMacros: - - Q_EMIT -StatementMacros: - - Q_UNUSED - - QT_REQUIRE_VERSION -TabWidth: 8 -UseTab: Never -VerilogBreakBetweenInstancePorts: true -WhitespaceSensitiveMacros: - - BOOST_PP_STRINGIZE - - CF_SWIFT_NAME - - NS_SWIFT_NAME - - PP_STRINGIZE - - STRINGIZE diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index f0e2614..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,46 +0,0 @@ -Thank you for opening an issue on an Adafruit Arduino library repository. To -improve the speed of resolution please review the following guidelines and -common troubleshooting steps below before creating the issue: - -- **Do not use GitHub issues for troubleshooting projects and issues.** Instead use - the forums at http://forums.adafruit.com to ask questions and troubleshoot why - something isn't working as expected. In many cases the problem is a common issue - that you will more quickly receive help from the forum community. GitHub issues - are meant for known defects in the code. If you don't know if there is a defect - in the code then start with troubleshooting on the forum first. - -- **If following a tutorial or guide be sure you didn't miss a step.** Carefully - check all of the steps and commands to run have been followed. Consult the - forum if you're unsure or have questions about steps in a guide/tutorial. - -- **For Arduino projects check these very common issues to ensure they don't apply**: - - - For uploading sketches or communicating with the board make sure you're using - a **USB data cable** and **not** a **USB charge-only cable**. It is sometimes - very hard to tell the difference between a data and charge cable! Try using the - cable with other devices or swapping to another cable to confirm it is not - the problem. - - - **Be sure you are supplying adequate power to the board.** Check the specs of - your board and plug in an external power supply. In many cases just - plugging a board into your computer is not enough to power it and other - peripherals. - - - **Double check all soldering joints and connections.** Flakey connections - cause many mysterious problems. See the [guide to excellent soldering](https://learn.adafruit.com/adafruit-guide-excellent-soldering/tools) for examples of good solder joints. - - - **Ensure you are using an official Arduino or Adafruit board.** We can't - guarantee a clone board will have the same functionality and work as expected - with this code and don't support them. - -If you're sure this issue is a defect in the code and checked the steps above -please fill in the following fields to provide enough troubleshooting information. -You may delete the guideline and text above to just leave the following details: - -- Arduino board: **INSERT ARDUINO BOARD NAME/TYPE HERE** - -- Arduino IDE version (found in Arduino -> About Arduino menu): **INSERT ARDUINO - VERSION HERE** - -- List the steps to reproduce the problem below (if possible attach a sketch or - copy the sketch code in too): **LIST REPRO STEPS BELOW** diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 7b641eb..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,26 +0,0 @@ -Thank you for creating a pull request to contribute to Adafruit's GitHub code! -Before you open the request please review the following guidelines and tips to -help it be more easily integrated: - -- **Describe the scope of your change--i.e. what the change does and what parts - of the code were modified.** This will help us understand any risks of integrating - the code. - -- **Describe any known limitations with your change.** For example if the change - doesn't apply to a supported platform of the library please mention it. - -- **Please run any tests or examples that can exercise your modified code.** We - strive to not break users of the code and running tests/examples helps with this - process. - -Thank you again for contributing! We will try to test and integrate the change -as soon as we can, but be aware we have many GitHub repositories to manage and -can't immediately respond to every request. There is no need to bump or check in -on a pull request (it will clutter the discussion of the request). - -Also don't be worried if the request is closed or not integrated--sometimes the -priorities of Adafruit's GitHub code (education, ease of use) might not match the -priorities of the pull request. Don't fret, the open source community thrives on -forks and GitHub makes it easy to keep your changes in a forked repo. - -After reviewing the guidelines above you can delete this text from the pull request. diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/workflows/githubci.yml b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/workflows/githubci.yml deleted file mode 100644 index a04a162..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.github/workflows/githubci.yml +++ /dev/null @@ -1,36 +0,0 @@ -name: Arduino Library CI - -on: [pull_request, push, repository_dispatch] - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/setup-python@v4 - with: - python-version: '3.x' - - uses: actions/checkout@v3 - - uses: actions/checkout@v3 - with: - repository: adafruit/ci-arduino - path: ci - - - name: pre-install - run: bash ci/actions_install.sh - - - name: extra libraries - run: | - git clone --quiet https://github.com/adafruit/Adafruit_ILI9341.git /home/runner/Arduino/libraries/Adafruit_ILI9341 - - - name: test platforms - run: python3 ci/build_platform.py main_platforms - - - name: clang - run: python3 ci/run-clang-format.py -e "ci/*" -e "bin/*" -r . - - - name: doxygen - env: - GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }} - PRETTYNAME : "Adafruit GFX Library" - run: bash ci/doxy_gen_and_deploy.sh diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.gitignore b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.gitignore deleted file mode 100644 index 469bb73..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -default.vim -fontconvert/fontconvert -# Our handy .gitignore for automation ease -Doxyfile* -doxygen_sqlite3.db -html \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.piopm b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.piopm deleted file mode 100644 index 9ed8464..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/.piopm +++ /dev/null @@ -1 +0,0 @@ -{"type": "library", "name": "Adafruit GFX Library", "version": "1.12.6", "spec": {"owner": "adafruit", "id": 13, "name": "Adafruit GFX Library", "requirements": null, "uri": null}} \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.cpp b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.cpp deleted file mode 100644 index ae26bf1..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.cpp +++ /dev/null @@ -1,2952 +0,0 @@ -/* -This is the core graphics library for all our displays, providing a common -set of graphics primitives (points, lines, circles, etc.). It needs to be -paired with a hardware-specific library for each display device we carry -(to handle the lower-level functions). - -Adafruit invests time and resources providing this open source code, please -support Adafruit & open-source hardware by purchasing products from Adafruit! - -Copyright (c) 2013 Adafruit Industries. 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 "Adafruit_GFX.h" -#include "glcdfont.c" -#ifdef __AVR__ -#include -#elif defined(ESP8266) || defined(ESP32) -#include -#endif - -// Many (but maybe not all) non-AVR board installs define macros -// for compatibility with existing PROGMEM-reading AVR code. -// Do our own checks and defines here for good measure... - -#ifndef pgm_read_byte -#define pgm_read_byte(addr) (*(const unsigned char *)(addr)) -#endif -#ifndef pgm_read_word -#define pgm_read_word(addr) (*(const unsigned short *)(addr)) -#endif -#ifndef pgm_read_dword -#define pgm_read_dword(addr) (*(const unsigned long *)(addr)) -#endif - -// Pointers are a peculiar case...typically 16-bit on AVR boards, -// 32 bits elsewhere. Try to accommodate both... - -#if !defined(__INT_MAX__) || (__INT_MAX__ > 0xFFFF) -#define pgm_read_pointer(addr) ((void *)pgm_read_dword(addr)) -#else -#define pgm_read_pointer(addr) ((void *)pgm_read_word(addr)) -#endif - -inline GFXglyph *pgm_read_glyph_ptr(const GFXfont *gfxFont, uint8_t c) { -#ifdef __AVR__ - return &(((GFXglyph *)pgm_read_pointer(&gfxFont->glyph))[c]); -#else - // expression in __AVR__ section may generate "dereferencing type-punned - // pointer will break strict-aliasing rules" warning In fact, on other - // platforms (such as STM32) there is no need to do this pointer magic as - // program memory may be read in a usual way So expression may be simplified - return gfxFont->glyph + c; -#endif //__AVR__ -} - -inline uint8_t *pgm_read_bitmap_ptr(const GFXfont *gfxFont) { -#ifdef __AVR__ - return (uint8_t *)pgm_read_pointer(&gfxFont->bitmap); -#else - // expression in __AVR__ section generates "dereferencing type-punned pointer - // will break strict-aliasing rules" warning In fact, on other platforms (such - // as STM32) there is no need to do this pointer magic as program memory may - // be read in a usual way So expression may be simplified - return gfxFont->bitmap; -#endif //__AVR__ -} - -#ifndef min -#define min(a, b) (((a) < (b)) ? (a) : (b)) -#endif - -#ifndef _swap_int16_t -#define _swap_int16_t(a, b) \ - { \ - int16_t t = a; \ - a = b; \ - b = t; \ - } -#endif - -/**************************************************************************/ -/*! - @brief Instatiate a GFX context for graphics! Can only be done by a - superclass - @param w Display width, in pixels - @param h Display height, in pixels -*/ -/**************************************************************************/ -Adafruit_GFX::Adafruit_GFX(int16_t w, int16_t h) : WIDTH(w), HEIGHT(h) { - _width = WIDTH; - _height = HEIGHT; - rotation = 0; - cursor_y = cursor_x = 0; - textsize_x = textsize_y = 1; - textcolor = textbgcolor = 0xFFFF; - wrap = true; - _cp437 = false; - gfxFont = NULL; -} - -/**************************************************************************/ -/*! - @brief Write a line. Bresenham's algorithm - thx wikpedia - @param x0 Start point x coordinate - @param y0 Start point y coordinate - @param x1 End point x coordinate - @param y1 End point y coordinate - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - int16_t steep = abs(y1 - y0) > abs(x1 - x0); - if (steep) { - _swap_int16_t(x0, y0); - _swap_int16_t(x1, y1); - } - - if (x0 > x1) { - _swap_int16_t(x0, x1); - _swap_int16_t(y0, y1); - } - - int16_t dx, dy; - dx = x1 - x0; - dy = abs(y1 - y0); - - int16_t err = dx / 2; - int16_t ystep; - - if (y0 < y1) { - ystep = 1; - } else { - ystep = -1; - } - - for (; x0 <= x1; x0++) { - if (steep) { - writePixel(y0, x0, color); - } else { - writePixel(x0, y0, color); - } - err -= dy; - if (err < 0) { - y0 += ystep; - err += dx; - } - } -} - -/**************************************************************************/ -/*! - @brief Start a display-writing routine, overwrite in subclasses. -*/ -/**************************************************************************/ -void Adafruit_GFX::startWrite() {} - -/**************************************************************************/ -/*! - @brief Write a pixel, overwrite in subclasses if startWrite is defined! - @param x x coordinate - @param y y coordinate - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writePixel(int16_t x, int16_t y, uint16_t color) { - drawPixel(x, y, color); -} - -/**************************************************************************/ -/*! - @brief Write a perfectly vertical line, overwrite in subclasses if - startWrite is defined! - @param x Top-most x coordinate - @param y Top-most y coordinate - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // Overwrite in subclasses if startWrite is defined! - // Can be just writeLine(x, y, x, y+h-1, color); - // or writeFillRect(x, y, 1, h, color); - drawFastVLine(x, y, h, color); -} - -/**************************************************************************/ -/*! - @brief Write a perfectly horizontal line, overwrite in subclasses if - startWrite is defined! - @param x Left-most x coordinate - @param y Left-most y coordinate - @param w Width in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // Overwrite in subclasses if startWrite is defined! - // Example: writeLine(x, y, x+w-1, y, color); - // or writeFillRect(x, y, w, 1, color); - drawFastHLine(x, y, w, color); -} - -/**************************************************************************/ -/*! - @brief Write a rectangle completely with one color, overwrite in - subclasses if startWrite is defined! - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - // Overwrite in subclasses if desired! - fillRect(x, y, w, h, color); -} - -/**************************************************************************/ -/*! - @brief End a display-writing routine, overwrite in subclasses if - startWrite is defined! -*/ -/**************************************************************************/ -void Adafruit_GFX::endWrite() {} - -/**************************************************************************/ -/*! - @brief Draw a perfectly vertical line (this is often optimized in a - subclass!) - @param x Top-most x coordinate - @param y Top-most y coordinate - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - startWrite(); - writeLine(x, y, x, y + h - 1, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a perfectly horizontal line (this is often optimized in a - subclass!) - @param x Left-most x coordinate - @param y Left-most y coordinate - @param w Width in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - startWrite(); - writeLine(x, y, x + w - 1, y, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Fill a rectangle completely with one color. Update in subclasses if - desired! - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - startWrite(); - for (int16_t i = x; i < x + w; i++) { - writeFastVLine(i, y, h, color); - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Fill the screen completely with one color. Update in subclasses if - desired! - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillScreen(uint16_t color) { - fillRect(0, 0, _width, _height, color); -} - -/**************************************************************************/ -/*! - @brief Draw a line - @param x0 Start point x coordinate - @param y0 Start point y coordinate - @param x1 End point x coordinate - @param y1 End point y coordinate - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color) { - // Update in subclasses if desired! - if (x0 == x1) { - if (y0 > y1) - _swap_int16_t(y0, y1); - drawFastVLine(x0, y0, y1 - y0 + 1, color); - } else if (y0 == y1) { - if (x0 > x1) - _swap_int16_t(x0, x1); - drawFastHLine(x0, y0, x1 - x0 + 1, color); - } else { - startWrite(); - writeLine(x0, y0, x1, y1, color); - endWrite(); - } -} - -/**************************************************************************/ -/*! - @brief Draw an ellipse outline - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param rw Horizontal radius of ellipse - @param rh Vertical radius of ellipse - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - // Bresenham's ellipse algorithm - int16_t x = 0, y = rh; - int32_t rw2 = rw * rw, rh2 = rh * rh; - int32_t twoRw2 = 2 * rw2, twoRh2 = 2 * rh2; - - int32_t decision = rh2 - (rw2 * rh) + (rw2 / 4); - - startWrite(); - - // region 1 - while ((twoRh2 * x) < (twoRw2 * y)) { - writePixel(x0 + x, y0 + y, color); - writePixel(x0 - x, y0 + y, color); - writePixel(x0 + x, y0 - y, color); - writePixel(x0 - x, y0 - y, color); - x++; - if (decision < 0) { - decision += rh2 + (twoRh2 * x); - } else { - decision += rh2 + (twoRh2 * x) - (twoRw2 * y); - y--; - } - } - - // region 2 - decision = ((rh2 * (2 * x + 1) * (2 * x + 1)) >> 2) + - (rw2 * (y - 1) * (y - 1)) - (rw2 * rh2); - while (y >= 0) { - writePixel(x0 + x, y0 + y, color); - writePixel(x0 - x, y0 + y, color); - writePixel(x0 + x, y0 - y, color); - writePixel(x0 - x, y0 - y, color); - y--; - if (decision > 0) { - decision += rw2 - (twoRw2 * y); - } else { - decision += rw2 + (twoRh2 * x) - (twoRw2 * y); - x++; - } - } - - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw an ellipse with filled colour - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param rw Horizontal radius of ellipse - @param rh Vertical radius of ellipse - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - // Bresenham's ellipse algorithm - int16_t x = 0, y = rh; - int32_t rw2 = rw * rw, rh2 = rh * rh; - int32_t twoRw2 = 2 * rw2, twoRh2 = 2 * rh2; - - int32_t decision = rh2 - (rw2 * rh) + (rw2 / 4); - - startWrite(); - - // region 1 - while ((twoRh2 * x) < (twoRw2 * y)) { - x++; - if (decision < 0) { - decision += rh2 + (twoRh2 * x); - } else { - decision += rh2 + (twoRh2 * x) - (twoRw2 * y); - drawFastHLine(x0 - (x - 1), y0 + y, 2 * (x - 1) + 1, color); - drawFastHLine(x0 - (x - 1), y0 - y, 2 * (x - 1) + 1, color); - y--; - } - } - - // region 2 - decision = ((rh2 * (2 * x + 1) * (2 * x + 1)) >> 2) + - (rw2 * (y - 1) * (y - 1)) - (rw2 * rh2); - while (y >= 0) { - drawFastHLine(x0 - x, y0 + y, 2 * x + 1, color); - drawFastHLine(x0 - x, y0 - y, 2 * x + 1, color); - - y--; - if (decision > 0) { - decision += rw2 - (twoRw2 * y); - } else { - decision += rw2 + (twoRh2 * x) - (twoRw2 * y); - x++; - } - } - - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a circle outline - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawCircle(int16_t x0, int16_t y0, int16_t r, - uint16_t color) { -#if defined(ESP8266) - yield(); -#endif - int16_t f = 1 - r; - int16_t ddF_x = 1; - int16_t ddF_y = -2 * r; - int16_t x = 0; - int16_t y = r; - - startWrite(); - writePixel(x0, y0 + r, color); - writePixel(x0, y0 - r, color); - writePixel(x0 + r, y0, color); - writePixel(x0 - r, y0, color); - - while (x < y) { - if (f >= 0) { - y--; - ddF_y += 2; - f += ddF_y; - } - x++; - ddF_x += 2; - f += ddF_x; - - writePixel(x0 + x, y0 + y, color); - writePixel(x0 - x, y0 + y, color); - writePixel(x0 + x, y0 - y, color); - writePixel(x0 - x, y0 - y, color); - writePixel(x0 + y, y0 + x, color); - writePixel(x0 - y, y0 + x, color); - writePixel(x0 + y, y0 - x, color); - writePixel(x0 - y, y0 - x, color); - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Quarter-circle drawer, used to do circles and roundrects - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param cornername Mask bit #1, #2, #4, and #8 to indicate which quarters - of the circle we're doing - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawCircleHelper(int16_t x0, int16_t y0, int16_t r, - uint8_t cornername, uint16_t color) { - int16_t f = 1 - r; - int16_t ddF_x = 1; - int16_t ddF_y = -2 * r; - int16_t x = 0; - int16_t y = r; - - while (x < y) { - if (f >= 0) { - y--; - ddF_y += 2; - f += ddF_y; - } - x++; - ddF_x += 2; - f += ddF_x; - if (cornername & 0x4) { - writePixel(x0 + x, y0 + y, color); - writePixel(x0 + y, y0 + x, color); - } - if (cornername & 0x2) { - writePixel(x0 + x, y0 - y, color); - writePixel(x0 + y, y0 - x, color); - } - if (cornername & 0x8) { - writePixel(x0 - y, y0 + x, color); - writePixel(x0 - x, y0 + y, color); - } - if (cornername & 0x1) { - writePixel(x0 - y, y0 - x, color); - writePixel(x0 - x, y0 - y, color); - } - } -} - -/**************************************************************************/ -/*! - @brief Draw a circle with filled color - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillCircle(int16_t x0, int16_t y0, int16_t r, - uint16_t color) { - startWrite(); - writeFastVLine(x0, y0 - r, 2 * r + 1, color); - fillCircleHelper(x0, y0, r, 3, 0, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Half-circle drawer with fill, used for circles and roundrects - @param x0 Center-point x coordinate - @param y0 Center-point y coordinate - @param r Radius of circle - @param corners Mask bits indicating which sides of the circle we are - doing, left (1) and/or right (2) - @param delta Offset from center-point, used for round-rects - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillCircleHelper(int16_t x0, int16_t y0, int16_t r, - uint8_t corners, int16_t delta, - uint16_t color) { - - int16_t f = 1 - r; - int16_t ddF_x = 1; - int16_t ddF_y = -2 * r; - int16_t x = 0; - int16_t y = r; - int16_t px = x; - int16_t py = y; - - delta++; // Avoid some +1's in the loop - - while (x < y) { - if (f >= 0) { - y--; - ddF_y += 2; - f += ddF_y; - } - x++; - ddF_x += 2; - f += ddF_x; - // These checks avoid double-drawing certain lines, important - // for the SSD1306 library which has an INVERT drawing mode. - if (x < (y + 1)) { - if (corners & 1) - writeFastVLine(x0 + x, y0 - y, 2 * y + delta, color); - if (corners & 2) - writeFastVLine(x0 - x, y0 - y, 2 * y + delta, color); - } - if (y != py) { - if (corners & 1) - writeFastVLine(x0 + py, y0 - px, 2 * px + delta, color); - if (corners & 2) - writeFastVLine(x0 - py, y0 - px, 2 * px + delta, color); - py = y; - } - px = x; - } -} - -/**************************************************************************/ -/*! - @brief Draw a rectangle with no fill color - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - startWrite(); - writeFastHLine(x, y, w, color); - writeFastHLine(x, y + h - 1, w, color); - writeFastVLine(x, y, h, color); - writeFastVLine(x + w - 1, y, h, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a rounded rectangle with no fill color - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param r Radius of corner rounding - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRoundRect(int16_t x, int16_t y, int16_t w, int16_t h, - int16_t r, uint16_t color) { - int16_t max_radius = ((w < h) ? w : h) / 2; // 1/2 minor axis - if (r > max_radius) - r = max_radius; - // smarter version - startWrite(); - writeFastHLine(x + r, y, w - 2 * r, color); // Top - writeFastHLine(x + r, y + h - 1, w - 2 * r, color); // Bottom - writeFastVLine(x, y + r, h - 2 * r, color); // Left - writeFastVLine(x + w - 1, y + r, h - 2 * r, color); // Right - // draw four corners - drawCircleHelper(x + r, y + r, r, 1, color); - drawCircleHelper(x + w - r - 1, y + r, r, 2, color); - drawCircleHelper(x + w - r - 1, y + h - r - 1, r, 4, color); - drawCircleHelper(x + r, y + h - r - 1, r, 8, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a rounded rectangle with fill color - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param w Width in pixels - @param h Height in pixels - @param r Radius of corner rounding - @param color 16-bit 5-6-5 Color to draw/fill with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillRoundRect(int16_t x, int16_t y, int16_t w, int16_t h, - int16_t r, uint16_t color) { - int16_t max_radius = ((w < h) ? w : h) / 2; // 1/2 minor axis - if (r > max_radius) - r = max_radius; - // smarter version - startWrite(); - writeFillRect(x + r, y, w - 2 * r, h, color); - // draw four corners - fillCircleHelper(x + w - r - 1, y + r, r, 1, h - 2 * r - 1, color); - fillCircleHelper(x + r, y + r, r, 2, h - 2 * r - 1, color); - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a rotated rectangle - @param cenX x coordinate of center of rectangle. - For even width rectangles, this point - represents the pixel to the left of - true center. - @param cenY y coordinate of center of rectangle. - For even height rectangles, this point - represents the pixel above - true center. - @param w width of rectangle - @param h height of rectangle - @param angleDeg angle of rotation of rectangle - @param color 16-bit 5-6-5 Color to fill/draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRotatedRect(int16_t cenX, int16_t cenY, int16_t w, - int16_t h, int16_t angleDeg, - uint16_t color) { - - if (w < 1 || h < 1) - return; // We don't draw zero dimensioned objects - - int16_t W = w - 1; - int16_t H = h - 1; - - int16_t halfW = (W / 2); // Midpoint should always be integer - int16_t halfH = (H / 2); // Midpoint should always be integer - - int16_t x0 = W - halfW; // bottom-right - int16_t y0 = H - halfH; // bottom-right - int16_t x1 = -halfW; // bottom-left - int16_t y1 = H - halfH; // bottom-left - int16_t x2 = -halfW; // top-left - int16_t y2 = -halfH; // top-left - int16_t x3 = W - halfW; // top-right - int16_t y3 = -halfH; // top-right - - rotatePoint(x0, y0, angleDeg); - rotatePoint(x1, y1, angleDeg); - rotatePoint(x2, y2, angleDeg); - rotatePoint(x3, y3, angleDeg); - - x0 += cenX; - x1 += cenX; - x2 += cenX; - x3 += cenX; - - y0 += cenY; - y1 += cenY; - y2 += cenY; - y3 += cenY; - - drawLine(x0, y0, x1, y1, color); // bottom right to bottom left - drawLine(x1, y1, x2, y2, color); // bottom left to top left - drawLine(x2, y2, x3, y3, color); // top left to top right - drawLine(x3, y3, x0, y0, color); // top right to bottom right -} - -/**************************************************************************/ -/*! - @brief Draw a filled rotated rectangle - @param cenX x coordinate of center of rectangle. - For even width rectangles, this point - represents the pixel to the left of - true center. - @param cenY y coordinate of center of rectangle. - For even height rectangles, this point - represents the pixel above - true center. - @param w width of rectangle - @param h height of rectangle - @param angleDeg angle of rotation of rectangle - @param color 16-bit 5-6-5 Color to fill/draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillRotatedRect(int16_t cenX, int16_t cenY, int16_t w, - int16_t h, int16_t angleDeg, - uint16_t color) { - - if (w < 1 || h < 1) - return; // We don't draw zero dimensioned objects - - int16_t W = w - 1; - int16_t H = h - 1; - - int16_t halfW = (W / 2); // Midpoint should always be integer - int16_t halfH = (H / 2); // Midpoint should always be integer - - int16_t x0 = W - halfW; // bottom-right - int16_t y0 = H - halfH; // bottom-right - int16_t x1 = -halfW; // bottom-left - int16_t y1 = H - halfH; // bottom-left - int16_t x2 = -halfW; // top-left - int16_t y2 = -halfH; // top-left - int16_t x3 = W - halfW; // top-right - int16_t y3 = -halfH; // top-right - - rotatePoint(x0, y0, angleDeg); - rotatePoint(x1, y1, angleDeg); - rotatePoint(x2, y2, angleDeg); - rotatePoint(x3, y3, angleDeg); - - x0 += cenX; - x1 += cenX; - x2 += cenX; - x3 += cenX; - - y0 += cenY; - y1 += cenY; - y2 += cenY; - y3 += cenY; - - fillTriangle(x0, y0, x1, y1, x2, y2, color); - fillTriangle(x2, y2, x3, y3, x0, y0, color); -} - -/**************************************************************************/ -/*! - @brief Rotate a point in standard position - @param x0 x coordinate of point to rotate. This is passed by reference - and updated upon return - @param y0 y coordinate of point to rotate. This is passed by reference - and updated upon return - @param angleDeg angle to rotate the point by (degrees) -*/ -/**************************************************************************/ -void Adafruit_GFX::rotatePoint(int16_t &x0, int16_t &y0, int16_t angleDeg) { - float angleRad = radians(angleDeg); - float s = sin(angleRad); - float c = cos(angleRad); - - float x = x0; - float y = y0; - - // Rotate point - x0 = (int16_t)((x * c) - (y * s)); - y0 = (int16_t)((x * s) + (y * c)); -} - -/**************************************************************************/ -/*! - @brief Draw a triangle with no fill color - @param x0 Vertex #0 x coordinate - @param y0 Vertex #0 y coordinate - @param x1 Vertex #1 x coordinate - @param y1 Vertex #1 y coordinate - @param x2 Vertex #2 x coordinate - @param y2 Vertex #2 y coordinate - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - int16_t x2, int16_t y2, uint16_t color) { - drawLine(x0, y0, x1, y1, color); - drawLine(x1, y1, x2, y2, color); - drawLine(x2, y2, x0, y0, color); -} - -/**************************************************************************/ -/*! - @brief Draw a triangle with color-fill - @param x0 Vertex #0 x coordinate - @param y0 Vertex #0 y coordinate - @param x1 Vertex #1 x coordinate - @param y1 Vertex #1 y coordinate - @param x2 Vertex #2 x coordinate - @param y2 Vertex #2 y coordinate - @param color 16-bit 5-6-5 Color to fill/draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::fillTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - int16_t x2, int16_t y2, uint16_t color) { - - int16_t a, b, y, last; - - // Sort coordinates by Y order (y2 >= y1 >= y0) - if (y0 > y1) { - _swap_int16_t(y0, y1); - _swap_int16_t(x0, x1); - } - if (y1 > y2) { - _swap_int16_t(y2, y1); - _swap_int16_t(x2, x1); - } - if (y0 > y1) { - _swap_int16_t(y0, y1); - _swap_int16_t(x0, x1); - } - - startWrite(); - if (y0 == y2) { // Handle awkward all-on-same-line case as its own thing - a = b = x0; - if (x1 < a) - a = x1; - else if (x1 > b) - b = x1; - if (x2 < a) - a = x2; - else if (x2 > b) - b = x2; - writeFastHLine(a, y0, b - a + 1, color); - endWrite(); - return; - } - - int16_t dx01 = x1 - x0, dy01 = y1 - y0, dx02 = x2 - x0, dy02 = y2 - y0, - dx12 = x2 - x1, dy12 = y2 - y1; - int32_t sa = 0, sb = 0; - - // For upper part of triangle, find scanline crossings for segments - // 0-1 and 0-2. If y1=y2 (flat-bottomed triangle), the scanline y1 - // is included here (and second loop will be skipped, avoiding a /0 - // error there), otherwise scanline y1 is skipped here and handled - // in the second loop...which also avoids a /0 error here if y0=y1 - // (flat-topped triangle). - if (y1 == y2) - last = y1; // Include y1 scanline - else - last = y1 - 1; // Skip it - - for (y = y0; y <= last; y++) { - a = x0 + sa / dy01; - b = x0 + sb / dy02; - sa += dx01; - sb += dx02; - /* longhand: - a = x0 + (x1 - x0) * (y - y0) / (y1 - y0); - b = x0 + (x2 - x0) * (y - y0) / (y2 - y0); - */ - if (a > b) - _swap_int16_t(a, b); - writeFastHLine(a, y, b - a + 1, color); - } - - // For lower part of triangle, find scanline crossings for segments - // 0-2 and 1-2. This loop is skipped if y1=y2. - sa = (int32_t)dx12 * (y - y1); - sb = (int32_t)dx02 * (y - y0); - for (; y <= y2; y++) { - a = x1 + sa / dy12; - b = x0 + sb / dy02; - sa += dx12; - sb += dx02; - /* longhand: - a = x1 + (x2 - x1) * (y - y1) / (y2 - y1); - b = x0 + (x2 - x0) * (y - y0) / (y2 - y0); - */ - if (a > b) - _swap_int16_t(a, b); - writeFastHLine(a, y, b - a + 1, color); - } - endWrite(); -} - -// BITMAP / XBITMAP / GRAYSCALE / RGB BITMAP FUNCTIONS --------------------- - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 1-bit image at the specified (x,y) - position, using the specified foreground color (unset bits are transparent). - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h, uint16_t color) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); - if (b & 0x80) - writePixel(x + i, y, color); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 1-bit image at the specified (x,y) - position, using the specified foreground (for set bits) and background (unset - bits) colors. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw pixels with - @param bg 16-bit 5-6-5 Color to draw background with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h, uint16_t color, - uint16_t bg) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); - writePixel(x + i, y, (b & 0x80) ? color : bg); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 1-bit image at the specified (x,y) position, - using the specified foreground color (unset bits are transparent). - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, - int16_t h, uint16_t color) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = bitmap[j * byteWidth + i / 8]; - if (b & 0x80) - writePixel(x + i, y, color); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 1-bit image at the specified (x,y) position, - using the specified foreground (for set bits) and background (unset bits) - colors. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw pixels with - @param bg 16-bit 5-6-5 Color to draw background with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, - int16_t h, uint16_t color, uint16_t bg) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = bitmap[j * byteWidth + i / 8]; - writePixel(x + i, y, (b & 0x80) ? color : bg); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw PROGMEM-resident XBitMap Files (*.xbm), exported from GIMP. - Usage: Export from GIMP to *.xbm, rename *.xbm to *.c and open in editor. - C Array can be directly used with this function. - There is no RAM-resident version of this function; if generating bitmaps - in RAM, use the format defined by drawBitmap() and call that instead. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with monochrome bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels - @param color 16-bit 5-6-5 Color to draw pixels with -*/ -/**************************************************************************/ -void Adafruit_GFX::drawXBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h, uint16_t color) { - - int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t b = 0; - - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b >>= 1; - else - b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); - // Nearly identical to drawBitmap(), only the bit order - // is reversed here (left-to-right = LSB to MSB): - if (b & 0x01) - writePixel(x + i, y, color); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 8-bit image (grayscale) at the specified - (x,y) pos. Specifically for 8-bit display devices such as IS31FL3731; no - color reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, - const uint8_t bitmap[], int16_t w, - int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, (uint8_t)pgm_read_byte(&bitmap[j * w + i])); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 8-bit image (grayscale) at the specified (x,y) - pos. Specifically for 8-bit display devices such as IS31FL3731; no color - reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, - int16_t w, int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 8-bit image (grayscale) with a 1-bit mask - (set bits = opaque, unset bits = clear) at the specified (x,y) position. - BOTH buffers (grayscale and mask) must be PROGMEM-resident. - Specifically for 8-bit display devices such as IS31FL3731; no color - reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param mask byte array with mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, - const uint8_t bitmap[], - const uint8_t mask[], int16_t w, - int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&mask[j * bw + i / 8]); - if (b & 0x80) { - writePixel(x + i, y, (uint8_t)pgm_read_byte(&bitmap[j * w + i])); - } - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 8-bit image (grayscale) with a 1-bit mask - (set bits = opaque, unset bits = clear) at the specified (x,y) position. - BOTH buffers (grayscale and mask) must be RAM-residentt, no mix-and-match - Specifically for 8-bit display devices such as IS31FL3731; no color - reduction/expansion is performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with grayscale bitmap - @param mask byte array with mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, - uint8_t *mask, int16_t w, int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = mask[j * bw + i / 8]; - if (b & 0x80) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 16-bit image (RGB 5/6/5) at the specified - (x,y) position. For 16-bit display devices; no color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], - int16_t w, int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, pgm_read_word(&bitmap[j * w + i])); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 16-bit image (RGB 5/6/5) at the specified (x,y) - position. For 16-bit display devices; no color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, - int16_t w, int16_t h) { - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a PROGMEM-resident 16-bit image (RGB 5/6/5) with a 1-bit mask - (set bits = opaque, unset bits = clear) at the specified (x,y) position. BOTH - buffers (color and mask) must be PROGMEM-resident. For 16-bit display - devices; no color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param mask byte array with monochrome mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], - const uint8_t mask[], int16_t w, int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = pgm_read_byte(&mask[j * bw + i / 8]); - if (b & 0x80) { - writePixel(x + i, y, pgm_read_word(&bitmap[j * w + i])); - } - } - } - endWrite(); -} - -/**************************************************************************/ -/*! - @brief Draw a RAM-resident 16-bit image (RGB 5/6/5) with a 1-bit mask (set - bits = opaque, unset bits = clear) at the specified (x,y) position. BOTH - buffers (color and mask) must be RAM-resident. For 16-bit display devices; no - color reduction performed. - @param x Top left corner x coordinate - @param y Top left corner y coordinate - @param bitmap byte array with 16-bit color bitmap - @param mask byte array with monochrome mask bitmap - @param w Width of bitmap in pixels - @param h Height of bitmap in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, - uint8_t *mask, int16_t w, int16_t h) { - int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t b = 0; - startWrite(); - for (int16_t j = 0; j < h; j++, y++) { - for (int16_t i = 0; i < w; i++) { - if (i & 7) - b <<= 1; - else - b = mask[j * bw + i / 8]; - if (b & 0x80) { - writePixel(x + i, y, bitmap[j * w + i]); - } - } - } - endWrite(); -} - -// TEXT- AND CHARACTER-HANDLING FUNCTIONS ---------------------------------- - -// Draw a character -/**************************************************************************/ -/*! - @brief Draw a single character - @param x Bottom left corner x coordinate - @param y Bottom left corner y coordinate - @param c The 8-bit font-indexed character (likely ascii) - @param color 16-bit 5-6-5 Color to draw chraracter with - @param bg 16-bit 5-6-5 Color to fill background with (if same as color, - no background) - @param size Font magnification level, 1 is 'original' size -*/ -/**************************************************************************/ -void Adafruit_GFX::drawChar(int16_t x, int16_t y, unsigned char c, - uint16_t color, uint16_t bg, uint8_t size) { - drawChar(x, y, c, color, bg, size, size); -} - -// Draw a character -/**************************************************************************/ -/*! - @brief Draw a single character - @param x Bottom left corner x coordinate - @param y Bottom left corner y coordinate - @param c The 8-bit font-indexed character (likely ascii) - @param color 16-bit 5-6-5 Color to draw chraracter with - @param bg 16-bit 5-6-5 Color to fill background with (if same as color, - no background) - @param size_x Font magnification level in X-axis, 1 is 'original' size - @param size_y Font magnification level in Y-axis, 1 is 'original' size -*/ -/**************************************************************************/ -void Adafruit_GFX::drawChar(int16_t x, int16_t y, unsigned char c, - uint16_t color, uint16_t bg, uint8_t size_x, - uint8_t size_y) { - - if (!gfxFont) { // 'Classic' built-in font - - if ((x >= _width) || // Clip right - (y >= _height) || // Clip bottom - ((x + 6 * size_x - 1) < 0) || // Clip left - ((y + 8 * size_y - 1) < 0)) // Clip top - return; - - if (!_cp437 && (c >= 176)) - c++; // Handle 'classic' charset behavior - - startWrite(); - for (int8_t i = 0; i < 5; i++) { // Char bitmap = 5 columns - uint8_t line = pgm_read_byte(&font[c * 5 + i]); - for (int8_t j = 0; j < 8; j++, line >>= 1) { - if (line & 1) { - if (size_x == 1 && size_y == 1) - writePixel(x + i, y + j, color); - else - writeFillRect(x + i * size_x, y + j * size_y, size_x, size_y, - color); - } else if (bg != color) { - if (size_x == 1 && size_y == 1) - writePixel(x + i, y + j, bg); - else - writeFillRect(x + i * size_x, y + j * size_y, size_x, size_y, bg); - } - } - } - if (bg != color) { // If opaque, draw vertical line for last column - if (size_x == 1 && size_y == 1) - writeFastVLine(x + 5, y, 8, bg); - else - writeFillRect(x + 5 * size_x, y, size_x, 8 * size_y, bg); - } - endWrite(); - - } else { // Custom font - - // Character is assumed previously filtered by write() to eliminate - // newlines, returns, non-printable characters, etc. Calling - // drawChar() directly with 'bad' characters of font may cause mayhem! - - c -= (uint8_t)pgm_read_byte(&gfxFont->first); - GFXglyph *glyph = pgm_read_glyph_ptr(gfxFont, c); - uint8_t *bitmap = pgm_read_bitmap_ptr(gfxFont); - - uint16_t bo = pgm_read_word(&glyph->bitmapOffset); - uint8_t w = pgm_read_byte(&glyph->width), h = pgm_read_byte(&glyph->height); - int8_t xo = pgm_read_byte(&glyph->xOffset), - yo = pgm_read_byte(&glyph->yOffset); - uint8_t xx, yy, bits = 0, bit = 0; - int16_t xo16 = 0, yo16 = 0; - - if (size_x > 1 || size_y > 1) { - xo16 = xo; - yo16 = yo; - } - - // Todo: Add character clipping here - - // NOTE: THERE IS NO 'BACKGROUND' COLOR OPTION ON CUSTOM FONTS. - // THIS IS ON PURPOSE AND BY DESIGN. The background color feature - // has typically been used with the 'classic' font to overwrite old - // screen contents with new data. This ONLY works because the - // characters are a uniform size; it's not a sensible thing to do with - // proportionally-spaced fonts with glyphs of varying sizes (and that - // may overlap). To replace previously-drawn text when using a custom - // font, use the getTextBounds() function to determine the smallest - // rectangle encompassing a string, erase the area with fillRect(), - // then draw new text. This WILL infortunately 'blink' the text, but - // is unavoidable. Drawing 'background' pixels will NOT fix this, - // only creates a new set of problems. Have an idea to work around - // this (a canvas object type for MCUs that can afford the RAM and - // displays supporting setAddrWindow() and pushColors()), but haven't - // implemented this yet. - - startWrite(); - for (yy = 0; yy < h; yy++) { - for (xx = 0; xx < w; xx++) { - if (!(bit++ & 7)) { - bits = pgm_read_byte(&bitmap[bo++]); - } - if (bits & 0x80) { - if (size_x == 1 && size_y == 1) { - writePixel(x + xo + xx, y + yo + yy, color); - } else { - writeFillRect(x + (xo16 + xx) * size_x, y + (yo16 + yy) * size_y, - size_x, size_y, color); - } - } - bits <<= 1; - } - } - endWrite(); - - } // End classic vs custom font -} -/**************************************************************************/ -/*! - @brief Print one byte/character of data, used to support print() - @param c The 8-bit ascii character to write -*/ -/**************************************************************************/ -size_t Adafruit_GFX::write(uint8_t c) { - if (!gfxFont) { // 'Classic' built-in font - - if (c == '\n') { // Newline? - cursor_x = 0; // Reset x to zero, - cursor_y += textsize_y * 8; // advance y one line - } else if (c != '\r') { // Ignore carriage returns - if (wrap && ((cursor_x + textsize_x * 6) > _width)) { // Off right? - cursor_x = 0; // Reset x to zero, - cursor_y += textsize_y * 8; // advance y one line - } - drawChar(cursor_x, cursor_y, c, textcolor, textbgcolor, textsize_x, - textsize_y); - cursor_x += textsize_x * 6; // Advance x one char - } - - } else { // Custom font - - if (c == '\n') { - cursor_x = 0; - cursor_y += - (int16_t)textsize_y * (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } else if (c != '\r') { - uint8_t first = pgm_read_byte(&gfxFont->first); - if ((c >= first) && (c <= (uint8_t)pgm_read_byte(&gfxFont->last))) { - GFXglyph *glyph = pgm_read_glyph_ptr(gfxFont, c - first); - uint8_t w = pgm_read_byte(&glyph->width), - h = pgm_read_byte(&glyph->height); - if ((w > 0) && (h > 0)) { // Is there an associated bitmap? - int16_t xo = (int8_t)pgm_read_byte(&glyph->xOffset); // sic - if (wrap && ((cursor_x + textsize_x * (xo + w)) > _width)) { - cursor_x = 0; - cursor_y += (int16_t)textsize_y * - (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } - drawChar(cursor_x, cursor_y, c, textcolor, textbgcolor, textsize_x, - textsize_y); - } - cursor_x += - (uint8_t)pgm_read_byte(&glyph->xAdvance) * (int16_t)textsize_x; - } - } - } - return 1; -} - -/**************************************************************************/ -/*! - @brief Set text 'magnification' size. Each increase in s makes 1 pixel - that much bigger. - @param s Desired text size. 1 is default 6x8, 2 is 12x16, 3 is 18x24, etc -*/ -/**************************************************************************/ -void Adafruit_GFX::setTextSize(uint8_t s) { setTextSize(s, s); } - -/**************************************************************************/ -/*! - @brief Set text 'magnification' size. Each increase in s makes 1 pixel - that much bigger. - @param s_x Desired text width magnification level in X-axis. 1 is default - @param s_y Desired text width magnification level in Y-axis. 1 is default -*/ -/**************************************************************************/ -void Adafruit_GFX::setTextSize(uint8_t s_x, uint8_t s_y) { - textsize_x = (s_x > 0) ? s_x : 1; - textsize_y = (s_y > 0) ? s_y : 1; -} - -/**************************************************************************/ -/*! - @brief Set rotation setting for display - @param x 0 thru 3 corresponding to 4 cardinal rotations -*/ -/**************************************************************************/ -void Adafruit_GFX::setRotation(uint8_t x) { - rotation = (x & 3); - switch (rotation) { - case 0: - case 2: - _width = WIDTH; - _height = HEIGHT; - break; - case 1: - case 3: - _width = HEIGHT; - _height = WIDTH; - break; - } -} - -/**************************************************************************/ -/*! - @brief Set the font to display when print()ing, either custom or default - @param f The GFXfont object, if NULL use built in 6x8 font -*/ -/**************************************************************************/ -void Adafruit_GFX::setFont(const GFXfont *f) { - if (f) { // Font struct pointer passed in? - if (!gfxFont) { // And no current font struct? - // Switching from classic to new font behavior. - // Move cursor pos down 6 pixels so it's on baseline. - cursor_y += 6; - } - } else if (gfxFont) { // NULL passed. Current font struct defined? - // Switching from new to classic font behavior. - // Move cursor pos up 6 pixels so it's at top-left of char. - cursor_y -= 6; - } - gfxFont = (GFXfont *)f; -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a character with current font/size. - Broke this out as it's used by both the PROGMEM- and RAM-resident - getTextBounds() functions. - @param c The ASCII character in question - @param x Pointer to x location of character. Value is modified by - this function to advance to next character. - @param y Pointer to y location of character. Value is modified by - this function to advance to next character. - @param minx Pointer to minimum X coordinate, passed in to AND returned - by this function -- this is used to incrementally build a - bounding rectangle for a string. - @param miny Pointer to minimum Y coord, passed in AND returned. - @param maxx Pointer to maximum X coord, passed in AND returned. - @param maxy Pointer to maximum Y coord, passed in AND returned. -*/ -/**************************************************************************/ -void Adafruit_GFX::charBounds(unsigned char c, int16_t *x, int16_t *y, - int16_t *minx, int16_t *miny, int16_t *maxx, - int16_t *maxy) { - - if (gfxFont) { - - if (c == '\n') { // Newline? - *x = 0; // Reset x to zero, advance y by one line - *y += textsize_y * (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } else if (c != '\r') { // Not a carriage return; is normal char - uint8_t first = pgm_read_byte(&gfxFont->first), - last = pgm_read_byte(&gfxFont->last); - if ((c >= first) && (c <= last)) { // Char present in this font? - GFXglyph *glyph = pgm_read_glyph_ptr(gfxFont, c - first); - uint8_t gw = pgm_read_byte(&glyph->width), - gh = pgm_read_byte(&glyph->height), - xa = pgm_read_byte(&glyph->xAdvance); - int8_t xo = pgm_read_byte(&glyph->xOffset), - yo = pgm_read_byte(&glyph->yOffset); - if (wrap && ((*x + (((int16_t)xo + gw) * textsize_x)) > _width)) { - *x = 0; // Reset x to zero, advance y by one line - *y += textsize_y * (uint8_t)pgm_read_byte(&gfxFont->yAdvance); - } - int16_t tsx = (int16_t)textsize_x, tsy = (int16_t)textsize_y, - x1 = *x + xo * tsx, y1 = *y + yo * tsy, x2 = x1 + gw * tsx - 1, - y2 = y1 + gh * tsy - 1; - if (x1 < *minx) - *minx = x1; - if (y1 < *miny) - *miny = y1; - if (x2 > *maxx) - *maxx = x2; - if (y2 > *maxy) - *maxy = y2; - *x += xa * tsx; - } - } - - } else { // Default font - - if (c == '\n') { // Newline? - *x = 0; // Reset x to zero, - *y += textsize_y * 8; // advance y one line - // min/max x/y unchaged -- that waits for next 'normal' character - } else if (c != '\r') { // Normal char; ignore carriage returns - if (wrap && ((*x + textsize_x * 6) > _width)) { // Off right? - *x = 0; // Reset x to zero, - *y += textsize_y * 8; // advance y one line - } - int x2 = *x + textsize_x * 6 - 1, // Lower-right pixel of char - y2 = *y + textsize_y * 8 - 1; - if (x2 > *maxx) - *maxx = x2; // Track max x, y - if (y2 > *maxy) - *maxy = y2; - if (*x < *minx) - *minx = *x; // Track min x, y - if (*y < *miny) - *miny = *y; - *x += textsize_x * 6; // Advance x one char - } - } -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a string with current font/size. - Pass string and a cursor position, returns UL corner and W,H. - @param str The ASCII string to measure - @param x The current cursor X - @param y The current cursor Y - @param x1 The boundary X coordinate, returned by function - @param y1 The boundary Y coordinate, returned by function - @param w The boundary width, returned by function - @param h The boundary height, returned by function -*/ -/**************************************************************************/ -void Adafruit_GFX::getTextBounds(const char *str, int16_t x, int16_t y, - int16_t *x1, int16_t *y1, uint16_t *w, - uint16_t *h) { - - uint8_t c; // Current character - int16_t minx = 0x7FFF, miny = 0x7FFF, maxx = -1, maxy = -1; // Bound rect - // Bound rect is intentionally initialized inverted, so 1st char sets it - - *x1 = x; // Initial position is value passed in - *y1 = y; - *w = *h = 0; // Initial size is zero - - while ((c = *str++)) { - // charBounds() modifies x/y to advance for each character, - // and min/max x/y are updated to incrementally build bounding rect. - charBounds(c, &x, &y, &minx, &miny, &maxx, &maxy); - } - - if (maxx >= minx) { // If legit string bounds were found... - *x1 = minx; // Update x1 to least X coord, - *w = maxx - minx + 1; // And w to bound rect width - } - if (maxy >= miny) { // Same for height - *y1 = miny; - *h = maxy - miny + 1; - } -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a string with current font/size. Pass - string and a cursor position, returns UL corner and W,H. - @param str The ascii string to measure (as an arduino String() class) - @param x The current cursor X - @param y The current cursor Y - @param x1 The boundary X coordinate, set by function - @param y1 The boundary Y coordinate, set by function - @param w The boundary width, set by function - @param h The boundary height, set by function -*/ -/**************************************************************************/ -void Adafruit_GFX::getTextBounds(const String &str, int16_t x, int16_t y, - int16_t *x1, int16_t *y1, uint16_t *w, - uint16_t *h) { - if (str.length() != 0) { - getTextBounds(const_cast(str.c_str()), x, y, x1, y1, w, h); - } -} - -/**************************************************************************/ -/*! - @brief Helper to determine size of a PROGMEM string with current - font/size. Pass string and a cursor position, returns UL corner and W,H. - @param str The flash-memory ascii string to measure - @param x The current cursor X - @param y The current cursor Y - @param x1 The boundary X coordinate, set by function - @param y1 The boundary Y coordinate, set by function - @param w The boundary width, set by function - @param h The boundary height, set by function -*/ -/**************************************************************************/ -void Adafruit_GFX::getTextBounds(const __FlashStringHelper *str, int16_t x, - int16_t y, int16_t *x1, int16_t *y1, - uint16_t *w, uint16_t *h) { - uint8_t *s = (uint8_t *)str, c; - - *x1 = x; - *y1 = y; - *w = *h = 0; - - int16_t minx = _width, miny = _height, maxx = -1, maxy = -1; - - while ((c = pgm_read_byte(s++))) - charBounds(c, &x, &y, &minx, &miny, &maxx, &maxy); - - if (maxx >= minx) { - *x1 = minx; - *w = maxx - minx + 1; - } - if (maxy >= miny) { - *y1 = miny; - *h = maxy - miny + 1; - } -} - -/**************************************************************************/ -/*! - @brief Invert the display (ideally using built-in hardware command) - @param i True if you want to invert, false to make 'normal' -*/ -/**************************************************************************/ -void Adafruit_GFX::invertDisplay(bool i) { - // Do nothing, must be subclassed if supported by hardware - (void)i; // disable -Wunused-parameter warning -} - -/***************************************************************************/ - -/**************************************************************************/ -/*! - @brief Create a simple drawn button UI element -*/ -/**************************************************************************/ -Adafruit_GFX_Button::Adafruit_GFX_Button(void) { _gfx = 0; } - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings - @param gfx Pointer to our display so we can draw to it! - @param x The X coordinate of the center of the button - @param y The Y coordinate of the center of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize The font magnification of the label text -*/ -/**************************************************************************/ -// Classic initButton() function: pass center & size -void Adafruit_GFX_Button::initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, - uint16_t w, uint16_t h, uint16_t outline, - uint16_t fill, uint16_t textcolor, - char *label, uint8_t textsize) { - // Tweak arguments and pass to the newer initButtonUL() function... - initButtonUL(gfx, x - (w / 2), y - (h / 2), w, h, outline, fill, textcolor, - label, textsize); -} - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings - @param gfx Pointer to our display so we can draw to it! - @param x The X coordinate of the center of the button - @param y The Y coordinate of the center of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize_x The font magnification in X-axis of the label text - @param textsize_y The font magnification in Y-axis of the label text -*/ -/**************************************************************************/ -// Classic initButton() function: pass center & size -void Adafruit_GFX_Button::initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, - uint16_t w, uint16_t h, uint16_t outline, - uint16_t fill, uint16_t textcolor, - char *label, uint8_t textsize_x, - uint8_t textsize_y) { - // Tweak arguments and pass to the newer initButtonUL() function... - initButtonUL(gfx, x - (w / 2), y - (h / 2), w, h, outline, fill, textcolor, - label, textsize_x, textsize_y); -} - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings, with - upper-left coordinates - @param gfx Pointer to our display so we can draw to it! - @param x1 The X coordinate of the Upper-Left corner of the button - @param y1 The Y coordinate of the Upper-Left corner of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize The font magnification of the label text -*/ -/**************************************************************************/ -void Adafruit_GFX_Button::initButtonUL(Adafruit_GFX *gfx, int16_t x1, - int16_t y1, uint16_t w, uint16_t h, - uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, - uint8_t textsize) { - initButtonUL(gfx, x1, y1, w, h, outline, fill, textcolor, label, textsize, - textsize); -} - -/**************************************************************************/ -/*! - @brief Initialize button with our desired color/size/settings, with - upper-left coordinates - @param gfx Pointer to our display so we can draw to it! - @param x1 The X coordinate of the Upper-Left corner of the button - @param y1 The Y coordinate of the Upper-Left corner of the button - @param w Width of the buttton - @param h Height of the buttton - @param outline Color of the outline (16-bit 5-6-5 standard) - @param fill Color of the button fill (16-bit 5-6-5 standard) - @param textcolor Color of the button label (16-bit 5-6-5 standard) - @param label Ascii string of the text inside the button - @param textsize_x The font magnification in X-axis of the label text - @param textsize_y The font magnification in Y-axis of the label text -*/ -/**************************************************************************/ -void Adafruit_GFX_Button::initButtonUL(Adafruit_GFX *gfx, int16_t x1, - int16_t y1, uint16_t w, uint16_t h, - uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, - uint8_t textsize_x, uint8_t textsize_y) { - _x1 = x1; - _y1 = y1; - _w = w; - _h = h; - _outlinecolor = outline; - _fillcolor = fill; - _textcolor = textcolor; - _textsize_x = textsize_x; - _textsize_y = textsize_y; - _gfx = gfx; - strncpy(_label, label, 9); - _label[9] = 0; // strncpy does not place a null at the end. - // When 'label' is >9 characters, _label is not terminated. -} - -/**************************************************************************/ -/*! - @brief Draw the button on the screen - @param inverted Whether to draw with fill/text swapped to indicate - 'pressed' -*/ -/**************************************************************************/ -void Adafruit_GFX_Button::drawButton(bool inverted) { - uint16_t fill, outline, text; - - if (!inverted) { - fill = _fillcolor; - outline = _outlinecolor; - text = _textcolor; - } else { - fill = _textcolor; - outline = _outlinecolor; - text = _fillcolor; - } - - uint8_t r = min(_w, _h) / 4; // Corner radius - _gfx->fillRoundRect(_x1, _y1, _w, _h, r, fill); - _gfx->drawRoundRect(_x1, _y1, _w, _h, r, outline); - - _gfx->setCursor(_x1 + (_w / 2) - (strlen(_label) * 3 * _textsize_x), - _y1 + (_h / 2) - (4 * _textsize_y)); - _gfx->setTextColor(text); - _gfx->setTextSize(_textsize_x, _textsize_y); - _gfx->print(_label); -} - -/**************************************************************************/ -/*! - @brief Helper to let us know if a coordinate is within the bounds of the - button - @param x The X coordinate to check - @param y The Y coordinate to check - @returns True if within button graphics outline -*/ -/**************************************************************************/ -bool Adafruit_GFX_Button::contains(int16_t x, int16_t y) { - return ((x >= _x1) && (x < (int16_t)(_x1 + _w)) && (y >= _y1) && - (y < (int16_t)(_y1 + _h))); -} - -/**************************************************************************/ -/*! - @brief Query whether the button was pressed since we last checked state - @returns True if was not-pressed before, now is. -*/ -/**************************************************************************/ -bool Adafruit_GFX_Button::justPressed() { return (currstate && !laststate); } - -/**************************************************************************/ -/*! - @brief Query whether the button was released since we last checked state - @returns True if was pressed before, now is not. -*/ -/**************************************************************************/ -bool Adafruit_GFX_Button::justReleased() { return (!currstate && laststate); } - -// ------------------------------------------------------------------------- - -// GFXcanvas1, GFXcanvas8 and GFXcanvas16 (currently a WIP, don't get too -// comfy with the implementation) provide 1-, 8- and 16-bit offscreen -// canvases, the address of which can be passed to drawBitmap() or -// pushColors() (the latter appears only in a couple of GFX-subclassed TFT -// libraries at this time). This is here mostly to help with the recently- -// added proportionally-spaced fonts; adds a way to refresh a section of the -// screen without a massive flickering clear-and-redraw...but maybe you'll -// find other uses too. VERY RAM-intensive, since the buffer is in MCU -// memory and not the display driver...GXFcanvas1 might be minimally useful -// on an Uno-class board, but this and the others are much more likely to -// require at least a Mega or various recent ARM-type boards (recommended, -// as the text+bitmap draw can be pokey). GFXcanvas1 requires 1 bit per -// pixel (rounded up to nearest byte per scanline), GFXcanvas8 is 1 byte -// per pixel (no scanline pad), and GFXcanvas16 uses 2 bytes per pixel (no -// scanline pad). -// NOT EXTENSIVELY TESTED YET. MAY CONTAIN WORST BUGS KNOWN TO HUMANKIND. - -#ifdef __AVR__ -// Bitmask tables of 0x80>>X and ~(0x80>>X), because X>>Y is slow on AVR -const uint8_t PROGMEM GFXcanvas1::GFXsetBit[] = {0x80, 0x40, 0x20, 0x10, - 0x08, 0x04, 0x02, 0x01}; -const uint8_t PROGMEM GFXcanvas1::GFXclrBit[] = {0x7F, 0xBF, 0xDF, 0xEF, - 0xF7, 0xFB, 0xFD, 0xFE}; -#endif - -/**************************************************************************/ -/*! - @brief Instatiate a GFX 1-bit canvas context for graphics - @param w Display width, in pixels - @param h Display height, in pixels - @param allocate_buffer If true, a buffer is allocated with malloc. If - false, the subclass must initialize the buffer before any drawing operation, - and free it in the destructor. If false (the default), the buffer is - allocated and freed by the library. -*/ -/**************************************************************************/ -GFXcanvas1::GFXcanvas1(uint16_t w, uint16_t h, bool allocate_buffer) - : Adafruit_GFX(w, h), buffer_owned(allocate_buffer) { - if (allocate_buffer) { - uint32_t bytes = ((w + 7) / 8) * h; - if ((buffer = (uint8_t *)malloc(bytes))) { - memset(buffer, 0, bytes); - } - } else { - buffer = nullptr; - } -} - -/**************************************************************************/ -/*! - @brief Delete the canvas, free memory -*/ -/**************************************************************************/ -GFXcanvas1::~GFXcanvas1(void) { - if (buffer && buffer_owned) - free(buffer); -} - -/**************************************************************************/ -/*! - @brief Draw a pixel to the canvas framebuffer - @param x x coordinate - @param y y coordinate - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawPixel(int16_t x, int16_t y, uint16_t color) { - if (buffer) { - if ((x < 0) || (y < 0) || (x >= _width) || (y >= _height)) - return; - - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - - uint8_t *ptr = &buffer[(x / 8) + y * ((WIDTH + 7) / 8)]; -#ifdef __AVR__ - if (color) - *ptr |= pgm_read_byte(&GFXsetBit[x & 7]); - else - *ptr &= pgm_read_byte(&GFXclrBit[x & 7]); -#else - if (color) - *ptr |= 0x80 >> (x & 7); - else - *ptr &= ~(0x80 >> (x & 7)); -#endif - } -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given coordinate - @param x x coordinate - @param y y coordinate - @returns The desired pixel's binary color value, either 0x1 (on) or 0x0 - (off) -*/ -/**********************************************************************/ -bool GFXcanvas1::getPixel(int16_t x, int16_t y) const { - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - return getRawPixel(x, y); -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given, unrotated coordinate. - This method is intended for hardware drivers to get pixel value - in physical coordinates. - @param x x coordinate - @param y y coordinate - @returns The desired pixel's binary color value, either 0x1 (on) or 0x0 - (off) -*/ -/**********************************************************************/ -bool GFXcanvas1::getRawPixel(int16_t x, int16_t y) const { - if ((x < 0) || (y < 0) || (x >= WIDTH) || (y >= HEIGHT)) - return 0; - if (buffer) { - uint8_t *ptr = &buffer[(x / 8) + y * ((WIDTH + 7) / 8)]; - -#ifdef __AVR__ - return ((*ptr) & pgm_read_byte(&GFXsetBit[x & 7])) != 0; -#else - return ((*ptr) & (0x80 >> (x & 7))) != 0; -#endif - } - return 0; -} - -/**************************************************************************/ -/*! - @brief Fill the framebuffer completely with one color - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::fillScreen(uint16_t color) { - if (buffer) { - uint32_t bytes = ((WIDTH + 7) / 8) * HEIGHT; - memset(buffer, color ? 0xFF : 0x00, bytes); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param h Length of vertical line to be drawn, including first point - @param color Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - - if (h < 0) { // Convert negative heights to positive equivalent - h *= -1; - y -= h - 1; - if (y < 0) { - h += y; - y = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((x < 0) || (x >= width()) || (y >= height()) || ((y + h - 1) < 0)) { - return; - } - - if (y < 0) { // Clip top - h += y; - y = 0; - } - if (y + h > height()) { // Clip bottom - h = height() - y; - } - - if (getRotation() == 0) { - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - x -= h - 1; - drawFastRawHLine(x, y, h, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - y -= h - 1; - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - drawFastRawHLine(x, y, h, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param w Length of horizontal line to be drawn, including first point - @param color Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if (w < 0) { // Convert negative widths to positive equivalent - w *= -1; - x -= w - 1; - if (x < 0) { - w += x; - x = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((y < 0) || (y >= height()) || (x >= width()) || ((x + w - 1) < 0)) { - return; - } - - if (x < 0) { // Clip left - w += x; - x = 0; - } - if (x + w >= width()) { // Clip right - w = width() - x; - } - - if (getRotation() == 0) { - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - drawFastRawVLine(x, y, w, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - x -= w - 1; - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - y -= w - 1; - drawFastRawVLine(x, y, w, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastRawVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - int16_t row_bytes = ((WIDTH + 7) / 8); - uint8_t *ptr = &buffer[(x / 8) + y * row_bytes]; - - if (color > 0) { -#ifdef __AVR__ - uint8_t bit_mask = pgm_read_byte(&GFXsetBit[x & 7]); -#else - uint8_t bit_mask = (0x80 >> (x & 7)); -#endif - for (int16_t i = 0; i < h; i++) { - *ptr |= bit_mask; - ptr += row_bytes; - } - } else { -#ifdef __AVR__ - uint8_t bit_mask = pgm_read_byte(&GFXclrBit[x & 7]); -#else - uint8_t bit_mask = ~(0x80 >> (x & 7)); -#endif - for (int16_t i = 0; i < h; i++) { - *ptr &= bit_mask; - ptr += row_bytes; - } - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param w length of horizontal line to be drawn, including first point - @param color Binary (on or off) color to fill with -*/ -/**************************************************************************/ -void GFXcanvas1::drawFastRawHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - int16_t rowBytes = ((WIDTH + 7) / 8); - uint8_t *ptr = &buffer[(x / 8) + y * rowBytes]; - size_t remainingWidthBits = w; - - // check to see if first byte needs to be partially filled - if ((x & 7) > 0) { - // create bit mask for first byte - uint8_t startByteBitMask = 0x00; - for (int8_t i = (x & 7); ((i < 8) && (remainingWidthBits > 0)); i++) { -#ifdef __AVR__ - startByteBitMask |= pgm_read_byte(&GFXsetBit[i]); -#else - startByteBitMask |= (0x80 >> i); -#endif - remainingWidthBits--; - } - if (color > 0) { - *ptr |= startByteBitMask; - } else { - *ptr &= ~startByteBitMask; - } - - ptr++; - } - - // do the next remainingWidthBits bits - if (remainingWidthBits > 0) { - size_t remainingWholeBytes = remainingWidthBits / 8; - size_t lastByteBits = remainingWidthBits % 8; - uint8_t wholeByteColor = color > 0 ? 0xFF : 0x00; - - memset(ptr, wholeByteColor, remainingWholeBytes); - - if (lastByteBits > 0) { - uint8_t lastByteBitMask = 0x00; - for (size_t i = 0; i < lastByteBits; i++) { -#ifdef __AVR__ - lastByteBitMask |= pgm_read_byte(&GFXsetBit[i]); -#else - lastByteBitMask |= (0x80 >> i); -#endif - } - ptr += remainingWholeBytes; - - if (color > 0) { - *ptr |= lastByteBitMask; - } else { - *ptr &= ~lastByteBitMask; - } - } - } -} - -/**************************************************************************/ -/*! - @brief Instatiate a GFX 8-bit canvas context for graphics - @param w Display width, in pixels - @param h Display height, in pixels - @param allocate_buffer If true, a buffer is allocated with malloc. If - false, the subclass must initialize the buffer before any drawing operation, - and free it in the destructor. If false (the default), the buffer is - allocated and freed by the library. -*/ -/**************************************************************************/ -GFXcanvas8::GFXcanvas8(uint16_t w, uint16_t h, bool allocate_buffer) - : Adafruit_GFX(w, h), buffer_owned(allocate_buffer) { - if (allocate_buffer) { - uint32_t bytes = w * h; - if ((buffer = (uint8_t *)malloc(bytes))) { - memset(buffer, 0, bytes); - } - } else - buffer = nullptr; -} - -/**************************************************************************/ -/*! - @brief Delete the canvas, free memory -*/ -/**************************************************************************/ -GFXcanvas8::~GFXcanvas8(void) { - if (buffer && buffer_owned) - free(buffer); -} - -/**************************************************************************/ -/*! - @brief Draw a pixel to the canvas framebuffer - @param x x coordinate - @param y y coordinate - @param color 8-bit Color to fill with. Only lower byte of uint16_t is used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawPixel(int16_t x, int16_t y, uint16_t color) { - if (buffer) { - if ((x < 0) || (y < 0) || (x >= _width) || (y >= _height)) - return; - - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - - buffer[x + y * WIDTH] = color; - } -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given coordinate - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 8-bit color value -*/ -/**********************************************************************/ -uint8_t GFXcanvas8::getPixel(int16_t x, int16_t y) const { - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - return getRawPixel(x, y); -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given, unrotated coordinate. - This method is intended for hardware drivers to get pixel value - in physical coordinates. - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 8-bit color value -*/ -/**********************************************************************/ -uint8_t GFXcanvas8::getRawPixel(int16_t x, int16_t y) const { - if ((x < 0) || (y < 0) || (x >= WIDTH) || (y >= HEIGHT)) - return 0; - if (buffer) { - return buffer[x + y * WIDTH]; - } - return 0; -} - -/**************************************************************************/ -/*! - @brief Fill the framebuffer completely with one color - @param color 8-bit Color to fill with. Only lower byte of uint16_t is used. -*/ -/**************************************************************************/ -void GFXcanvas8::fillScreen(uint16_t color) { - if (buffer) { - memset(buffer, color, WIDTH * HEIGHT); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param h Length of vertical line to be drawn, including first point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if (h < 0) { // Convert negative heights to positive equivalent - h *= -1; - y -= h - 1; - if (y < 0) { - h += y; - y = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((x < 0) || (x >= width()) || (y >= height()) || ((y + h - 1) < 0)) { - return; - } - - if (y < 0) { // Clip top - h += y; - y = 0; - } - if (y + h > height()) { // Clip bottom - h = height() - y; - } - - if (getRotation() == 0) { - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - x -= h - 1; - drawFastRawHLine(x, y, h, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - y -= h - 1; - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - drawFastRawHLine(x, y, h, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param w Length of horizontal line to be drawn, including 1st point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - - if (w < 0) { // Convert negative widths to positive equivalent - w *= -1; - x -= w - 1; - if (x < 0) { - w += x; - x = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((y < 0) || (y >= height()) || (x >= width()) || ((x + w - 1) < 0)) { - return; - } - - if (x < 0) { // Clip left - w += x; - x = 0; - } - if (x + w >= width()) { // Clip right - w = width() - x; - } - - if (getRotation() == 0) { - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - drawFastRawVLine(x, y, w, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - x -= w - 1; - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - y -= w - 1; - drawFastRawVLine(x, y, w, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastRawVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - uint8_t *buffer_ptr = buffer + y * WIDTH + x; - for (int16_t i = 0; i < h; i++) { - (*buffer_ptr) = color; - buffer_ptr += WIDTH; - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param w length of horizontal line to be drawn, including first point - @param color 8-bit Color to fill with. Only lower byte of uint16_t is - used. -*/ -/**************************************************************************/ -void GFXcanvas8::drawFastRawHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - memset(buffer + y * WIDTH + x, color, w); -} - -/**************************************************************************/ -/*! - @brief Instatiate a GFX 16-bit canvas context for graphics - @param w Display width, in pixels - @param h Display height, in pixels - @param allocate_buffer If true, a buffer is allocated with malloc. If - false, the subclass must initialize the buffer before any drawing operation, - and free it in the destructor. If false (the default), the buffer is - allocated and freed by the library. -*/ -/**************************************************************************/ -GFXcanvas16::GFXcanvas16(uint16_t w, uint16_t h, bool allocate_buffer) - : Adafruit_GFX(w, h), buffer_owned(allocate_buffer) { - if (allocate_buffer) { - uint32_t bytes = w * h * 2; - if ((buffer = (uint16_t *)malloc(bytes))) { - memset(buffer, 0, bytes); - } - } else { - buffer = nullptr; - } -} - -/**************************************************************************/ -/*! - @brief Delete the canvas, free memory -*/ -/**************************************************************************/ -GFXcanvas16::~GFXcanvas16(void) { - if (buffer && buffer_owned) - free(buffer); -} - -/**************************************************************************/ -/*! - @brief Draw a pixel to the canvas framebuffer - @param x x coordinate - @param y y coordinate - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas16::drawPixel(int16_t x, int16_t y, uint16_t color) { - if (buffer) { - if ((x < 0) || (y < 0) || (x >= _width) || (y >= _height)) - return; - - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - - buffer[x + y * WIDTH] = color; - } -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given coordinate - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 16-bit 5-6-5 color value -*/ -/**********************************************************************/ -uint16_t GFXcanvas16::getPixel(int16_t x, int16_t y) const { - int16_t t; - switch (rotation) { - case 1: - t = x; - x = WIDTH - 1 - y; - y = t; - break; - case 2: - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - break; - case 3: - t = x; - x = y; - y = HEIGHT - 1 - t; - break; - } - return getRawPixel(x, y); -} - -/**********************************************************************/ -/*! - @brief Get the pixel color value at a given, unrotated coordinate. - This method is intended for hardware drivers to get pixel value - in physical coordinates. - @param x x coordinate - @param y y coordinate - @returns The desired pixel's 16-bit 5-6-5 color value -*/ -/**********************************************************************/ -uint16_t GFXcanvas16::getRawPixel(int16_t x, int16_t y) const { - if ((x < 0) || (y < 0) || (x >= WIDTH) || (y >= HEIGHT)) - return 0; - if (buffer) { - return buffer[x + y * WIDTH]; - } - return 0; -} - -/**************************************************************************/ -/*! - @brief Fill the framebuffer completely with one color - @param color 16-bit 5-6-5 Color to fill with -*/ -/**************************************************************************/ -void GFXcanvas16::fillScreen(uint16_t color) { - if (buffer) { - uint8_t hi = color >> 8, lo = color & 0xFF; - if (hi == lo) { - memset(buffer, lo, WIDTH * HEIGHT * 2); - } else { - uint32_t i, pixels = WIDTH * HEIGHT; - for (i = 0; i < pixels; i++) - buffer[i] = color; - } - } -} - -/**************************************************************************/ -/*! - @brief Reverses the "endian-ness" of each 16-bit pixel within the - canvas; little-endian to big-endian, or big-endian to little. - Most microcontrollers (such as SAMD) are little-endian, while - most displays tend toward big-endianness. All the drawing - functions (including RGB bitmap drawing) take care of this - automatically, but some specialized code (usually involving - DMA) can benefit from having pixel data already in the - display-native order. Note that this does NOT convert to a - SPECIFIC endian-ness, it just flips the bytes within each word. -*/ -/**************************************************************************/ -void GFXcanvas16::byteSwap(void) { - if (buffer) { - uint32_t i, pixels = WIDTH * HEIGHT; - for (i = 0; i < pixels; i++) - buffer[i] = __builtin_bswap16(buffer[i]); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if (h < 0) { // Convert negative heights to positive equivalent - h *= -1; - y -= h - 1; - if (y < 0) { - h += y; - y = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((x < 0) || (x >= width()) || (y >= height()) || ((y + h - 1) < 0)) { - return; - } - - if (y < 0) { // Clip top - h += y; - y = 0; - } - if (y + h > height()) { // Clip bottom - h = height() - y; - } - - if (getRotation() == 0) { - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - x -= h - 1; - drawFastRawHLine(x, y, h, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - y -= h - 1; - drawFastRawVLine(x, y, h, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - drawFastRawHLine(x, y, h, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing - @param x Line horizontal start point - @param y Line vertical start point - @param w Length of horizontal line to be drawn, including 1st point - @param color Color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if (w < 0) { // Convert negative widths to positive equivalent - w *= -1; - x -= w - 1; - if (x < 0) { - w += x; - x = 0; - } - } - - // Edge rejection (no-draw if totally off canvas) - if ((y < 0) || (y >= height()) || (x >= width()) || ((x + w - 1) < 0)) { - return; - } - - if (x < 0) { // Clip left - w += x; - x = 0; - } - if (x + w >= width()) { // Clip right - w = width() - x; - } - - if (getRotation() == 0) { - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 1) { - int16_t t = x; - x = WIDTH - 1 - y; - y = t; - drawFastRawVLine(x, y, w, color); - } else if (getRotation() == 2) { - x = WIDTH - 1 - x; - y = HEIGHT - 1 - y; - - x -= w - 1; - drawFastRawHLine(x, y, w, color); - } else if (getRotation() == 3) { - int16_t t = x; - x = y; - y = HEIGHT - 1 - t; - y -= w - 1; - drawFastRawVLine(x, y, w, color); - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized vertical line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param h length of vertical line to be drawn, including first point - @param color color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastRawVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - uint16_t *buffer_ptr = buffer + y * WIDTH + x; - for (int16_t i = 0; i < h; i++) { - (*buffer_ptr) = color; - buffer_ptr += WIDTH; - } -} - -/**************************************************************************/ -/*! - @brief Speed optimized horizontal line drawing into the raw canvas buffer - @param x Line horizontal start point - @param y Line vertical start point - @param w length of horizontal line to be drawn, including first point - @param color color 16-bit 5-6-5 Color to draw line with -*/ -/**************************************************************************/ -void GFXcanvas16::drawFastRawHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - // x & y already in raw (rotation 0) coordinates, no need to transform. - uint32_t buffer_index = y * WIDTH + x; - for (uint32_t i = buffer_index; i < buffer_index + w; i++) { - buffer[i] = color; - } -} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.h deleted file mode 100644 index dd9dc0d..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GFX.h +++ /dev/null @@ -1,406 +0,0 @@ -#ifndef _ADAFRUIT_GFX_H -#define _ADAFRUIT_GFX_H - -#if ARDUINO >= 100 -#include "Arduino.h" -#include "Print.h" -#else -#include "WProgram.h" -#endif -#include "gfxfont.h" - -#include -#include - -/// A generic graphics superclass that can handle all sorts of drawing. At a -/// minimum you can subclass and provide drawPixel(). At a maximum you can do a -/// ton of overriding to optimize. Used for any/all Adafruit displays! -class Adafruit_GFX : public Print { - -public: - Adafruit_GFX(int16_t w, int16_t h); // Constructor - - /**********************************************************************/ - /*! - @brief Draw to the screen/framebuffer/etc. - Must be overridden in subclass. - @param x X coordinate in pixels - @param y Y coordinate in pixels - @param color 16-bit pixel color. - */ - /**********************************************************************/ - virtual void drawPixel(int16_t x, int16_t y, uint16_t color) = 0; - - // TRANSACTION API / CORE DRAW API - // These MAY be overridden by the subclass to provide device-specific - // optimized code. Otherwise 'generic' versions are used. - virtual void startWrite(void); - virtual void writePixel(int16_t x, int16_t y, uint16_t color); - virtual void writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - virtual void writeFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - virtual void writeFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - virtual void writeLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color); - virtual void endWrite(void); - - // CONTROL API - // These MAY be overridden by the subclass to provide device-specific - // optimized code. Otherwise 'generic' versions are used. - virtual void setRotation(uint8_t r); - virtual void invertDisplay(bool i); - - // BASIC DRAW API - // These MAY be overridden by the subclass to provide device-specific - // optimized code. Otherwise 'generic' versions are used. - - // It's good to implement those, even if using transaction API - virtual void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - virtual void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - virtual void fillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - virtual void fillScreen(uint16_t color); - // Optional and probably not necessary to change - virtual void drawLine(int16_t x0, int16_t y0, int16_t x1, int16_t y1, - uint16_t color); - virtual void drawRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - - // These exist only with Adafruit_GFX (no subclass overrides) - void drawCircle(int16_t x0, int16_t y0, int16_t r, uint16_t color); - void drawCircleHelper(int16_t x0, int16_t y0, int16_t r, uint8_t cornername, - uint16_t color); - void fillCircle(int16_t x0, int16_t y0, int16_t r, uint16_t color); - void fillCircleHelper(int16_t x0, int16_t y0, int16_t r, uint8_t cornername, - int16_t delta, uint16_t color); - void drawEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color); - void fillEllipse(int16_t x0, int16_t y0, int16_t rw, int16_t rh, - uint16_t color); - void drawTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, - int16_t y2, uint16_t color); - void fillTriangle(int16_t x0, int16_t y0, int16_t x1, int16_t y1, int16_t x2, - int16_t y2, uint16_t color); - void drawRoundRect(int16_t x0, int16_t y0, int16_t w, int16_t h, - int16_t radius, uint16_t color); - void fillRoundRect(int16_t x0, int16_t y0, int16_t w, int16_t h, - int16_t radius, uint16_t color); - void drawRotatedRect(int16_t cenX, int16_t cenY, int16_t w, int16_t h, - int16_t angleDeg, uint16_t color); - void fillRotatedRect(int16_t cenX, int16_t cenY, int16_t w, int16_t h, - int16_t angleDeg, uint16_t color); - void rotatePoint(int16_t &x0, int16_t &y0, int16_t angleDeg); - void drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, - int16_t h, uint16_t color); - void drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, - int16_t h, uint16_t color, uint16_t bg); - void drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, int16_t h, - uint16_t color); - void drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, int16_t h, - uint16_t color, uint16_t bg); - void drawXBitmap(int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, - int16_t h, uint16_t color); - void drawGrayscaleBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - int16_t w, int16_t h); - void drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, - int16_t h); - void drawGrayscaleBitmap(int16_t x, int16_t y, const uint8_t bitmap[], - const uint8_t mask[], int16_t w, int16_t h); - void drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, uint8_t *mask, - int16_t w, int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], int16_t w, - int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, int16_t w, - int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], - const uint8_t mask[], int16_t w, int16_t h); - void drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, uint8_t *mask, - int16_t w, int16_t h); - void drawChar(int16_t x, int16_t y, unsigned char c, uint16_t color, - uint16_t bg, uint8_t size); - void drawChar(int16_t x, int16_t y, unsigned char c, uint16_t color, - uint16_t bg, uint8_t size_x, uint8_t size_y); - void getTextBounds(const char *string, int16_t x, int16_t y, int16_t *x1, - int16_t *y1, uint16_t *w, uint16_t *h); - void getTextBounds(const __FlashStringHelper *s, int16_t x, int16_t y, - int16_t *x1, int16_t *y1, uint16_t *w, uint16_t *h); - void getTextBounds(const String &str, int16_t x, int16_t y, int16_t *x1, - int16_t *y1, uint16_t *w, uint16_t *h); - void setTextSize(uint8_t s); - void setTextSize(uint8_t sx, uint8_t sy); - void setFont(const GFXfont *f = NULL); - - /**********************************************************************/ - /*! - @brief Set text cursor location - @param x X coordinate in pixels - @param y Y coordinate in pixels - */ - /**********************************************************************/ - void setCursor(int16_t x, int16_t y) { - cursor_x = x; - cursor_y = y; - } - - /**********************************************************************/ - /*! - @brief Set text font color with transparant background - @param c 16-bit 5-6-5 Color to draw text with - @note For 'transparent' background, background and foreground - are set to same color rather than using a separate flag. - */ - /**********************************************************************/ - void setTextColor(uint16_t c) { textcolor = textbgcolor = c; } - - /**********************************************************************/ - /*! - @brief Set text font color with custom background color - @param c 16-bit 5-6-5 Color to draw text with - @param bg 16-bit 5-6-5 Color to draw background/fill with - */ - /**********************************************************************/ - void setTextColor(uint16_t c, uint16_t bg) { - textcolor = c; - textbgcolor = bg; - } - - /**********************************************************************/ - /*! - @brief Set whether text that is too long for the screen width should - automatically wrap around to the next line (else clip right). - @param w true for wrapping, false for clipping - */ - /**********************************************************************/ - void setTextWrap(bool w) { wrap = w; } - - /**********************************************************************/ - /*! - @brief Enable (or disable) Code Page 437-compatible charset. - There was an error in glcdfont.c for the longest time -- one - character (#176, the 'light shade' block) was missing -- this - threw off the index of every character that followed it. - But a TON of code has been written with the erroneous - character indices. By default, the library uses the original - 'wrong' behavior and old sketches will still work. Pass - 'true' to this function to use correct CP437 character values - in your code. - @param x true = enable (new behavior), false = disable (old behavior) - */ - /**********************************************************************/ - void cp437(bool x = true) { _cp437 = x; } - - using Print::write; -#if ARDUINO >= 100 - virtual size_t write(uint8_t); -#else - virtual void write(uint8_t); -#endif - - /************************************************************************/ - /*! - @brief Get width of the display, accounting for current rotation - @returns Width in pixels - */ - /************************************************************************/ - int16_t width(void) const { return _width; }; - - /************************************************************************/ - /*! - @brief Get height of the display, accounting for current rotation - @returns Height in pixels - */ - /************************************************************************/ - int16_t height(void) const { return _height; } - - /************************************************************************/ - /*! - @brief Get rotation setting for display - @returns 0 thru 3 corresponding to 4 cardinal rotations - */ - /************************************************************************/ - uint8_t getRotation(void) const { return rotation; } - - // get current cursor position (get rotation safe maximum values, - // using: width() for x, height() for y) - /************************************************************************/ - /*! - @brief Get text cursor X location - @returns X coordinate in pixels - */ - /************************************************************************/ - int16_t getCursorX(void) const { return cursor_x; } - - /************************************************************************/ - /*! - @brief Get text cursor Y location - @returns Y coordinate in pixels - */ - /************************************************************************/ - int16_t getCursorY(void) const { return cursor_y; }; - -protected: - void charBounds(unsigned char c, int16_t *x, int16_t *y, int16_t *minx, - int16_t *miny, int16_t *maxx, int16_t *maxy); - int16_t WIDTH; ///< This is the 'raw' display width - never changes - int16_t HEIGHT; ///< This is the 'raw' display height - never changes - int16_t _width; ///< Display width as modified by current rotation - int16_t _height; ///< Display height as modified by current rotation - int16_t cursor_x; ///< x location to start print()ing text - int16_t cursor_y; ///< y location to start print()ing text - uint16_t textcolor; ///< 16-bit background color for print() - uint16_t textbgcolor; ///< 16-bit text color for print() - uint8_t textsize_x; ///< Desired magnification in X-axis of text to print() - uint8_t textsize_y; ///< Desired magnification in Y-axis of text to print() - uint8_t rotation; ///< Display rotation (0 thru 3) - bool wrap; ///< If set, 'wrap' text at right edge of display - bool _cp437; ///< If set, use correct CP437 charset (default is off) - GFXfont *gfxFont; ///< Pointer to special font -}; - -/// A simple drawn button UI element -class Adafruit_GFX_Button { - -public: - Adafruit_GFX_Button(void); - // "Classic" initButton() uses center & size - void initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize); - void initButton(Adafruit_GFX *gfx, int16_t x, int16_t y, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize_x, - uint8_t textsize_y); - // New/alt initButton() uses upper-left corner & size - void initButtonUL(Adafruit_GFX *gfx, int16_t x1, int16_t y1, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize); - void initButtonUL(Adafruit_GFX *gfx, int16_t x1, int16_t y1, uint16_t w, - uint16_t h, uint16_t outline, uint16_t fill, - uint16_t textcolor, char *label, uint8_t textsize_x, - uint8_t textsize_y); - void drawButton(bool inverted = false); - bool contains(int16_t x, int16_t y); - - /**********************************************************************/ - /*! - @brief Sets button state, should be done by some touch function - @param p True for pressed, false for not. - */ - /**********************************************************************/ - void press(bool p) { - laststate = currstate; - currstate = p; - } - - bool justPressed(); - bool justReleased(); - - /**********************************************************************/ - /*! - @brief Query whether the button is currently pressed - @returns True if pressed - */ - /**********************************************************************/ - bool isPressed(void) { return currstate; }; - -private: - Adafruit_GFX *_gfx; - int16_t _x1, _y1; // Coordinates of top-left corner - uint16_t _w, _h; - uint8_t _textsize_x; - uint8_t _textsize_y; - uint16_t _outlinecolor, _fillcolor, _textcolor; - char _label[10]; - - bool currstate, laststate; -}; - -/// A GFX 1-bit canvas context for graphics -class GFXcanvas1 : public Adafruit_GFX { -public: - GFXcanvas1(uint16_t w, uint16_t h, bool allocate_buffer = true); - ~GFXcanvas1(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillScreen(uint16_t color); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - bool getPixel(int16_t x, int16_t y) const; - /**********************************************************************/ - /*! - @brief Get a pointer to the internal buffer memory - @returns A pointer to the allocated buffer - */ - /**********************************************************************/ - uint8_t *getBuffer(void) const { return buffer; } - -protected: - bool getRawPixel(int16_t x, int16_t y) const; - void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint8_t *buffer; ///< Raster data: no longer private, allow subclass access - bool buffer_owned; ///< If true, destructor will free buffer, else it will do - ///< nothing - -private: -#ifdef __AVR__ - // Bitmask tables of 0x80>>X and ~(0x80>>X), because X>>Y is slow on AVR - static const uint8_t PROGMEM GFXsetBit[], GFXclrBit[]; -#endif -}; - -/// A GFX 8-bit canvas context for graphics -class GFXcanvas8 : public Adafruit_GFX { -public: - GFXcanvas8(uint16_t w, uint16_t h, bool allocate_buffer = true); - ~GFXcanvas8(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillScreen(uint16_t color); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint8_t getPixel(int16_t x, int16_t y) const; - /**********************************************************************/ - /*! - @brief Get a pointer to the internal buffer memory - @returns A pointer to the allocated buffer - */ - /**********************************************************************/ - uint8_t *getBuffer(void) const { return buffer; } - -protected: - uint8_t getRawPixel(int16_t x, int16_t y) const; - void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint8_t *buffer; ///< Raster data: no longer private, allow subclass access - bool buffer_owned; ///< If true, destructor will free buffer, else it will do - ///< nothing -}; - -/// A GFX 16-bit canvas context for graphics -class GFXcanvas16 : public Adafruit_GFX { -public: - GFXcanvas16(uint16_t w, uint16_t h, bool allocate_buffer = true); - ~GFXcanvas16(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillScreen(uint16_t color); - void byteSwap(void); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint16_t getPixel(int16_t x, int16_t y) const; - /**********************************************************************/ - /*! - @brief Get a pointer to the internal buffer memory - @returns A pointer to the allocated buffer - */ - /**********************************************************************/ - uint16_t *getBuffer(void) const { return buffer; } - -protected: - uint16_t getRawPixel(int16_t x, int16_t y) const; - void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint16_t *buffer; ///< Raster data: no longer private, allow subclass access - bool buffer_owned; ///< If true, destructor will free buffer, else it will do - ///< nothing -}; - -#endif // _ADAFRUIT_GFX_H diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.cpp b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.cpp deleted file mode 100644 index e3cbc72..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.cpp +++ /dev/null @@ -1,422 +0,0 @@ -/*! - * @file Adafruit_GrayOLED.cpp - * - * This is documentation for Adafruit's generic library for grayscale - * OLED displays: http://www.adafruit.com/category/63_98 - * - * These displays use I2C or SPI to communicate. I2C requires 2 pins - * (SCL+SDA) and optionally a RESET pin. SPI requires 4 pins (MOSI, SCK, - * select, data/command) and optionally a reset pin. Hardware SPI or - * 'bitbang' software SPI are both supported. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - * - */ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include "Adafruit_GrayOLED.h" -#include - -// SOME DEFINES AND STATIC VARIABLES USED INTERNALLY ----------------------- - -#define grayoled_swap(a, b) \ - (((a) ^= (b)), ((b) ^= (a)), ((a) ^= (b))) ///< No-temp-var swap operation - -// CONSTRUCTORS, DESTRUCTOR ------------------------------------------------ - -/*! - @brief Constructor for I2C-interfaced OLED displays. - @param bpp Bits per pixel, 1 for monochrome, 4 for 16-gray - @param w - Display width in pixels - @param h - Display height in pixels - @param twi - Pointer to an existing TwoWire instance (e.g. &Wire, the - microcontroller's primary I2C bus). - @param rst_pin - Reset pin (using Arduino pin numbering), or -1 if not used - (some displays might be wired to share the microcontroller's - reset pin). - @param clkDuring - Speed (in Hz) for Wire transmissions in library calls. - Defaults to 400000 (400 KHz), a known 'safe' value for most - microcontrollers, and meets the OLED datasheet spec. - Some systems can operate I2C faster (800 KHz for ESP32, 1 MHz - for many other 32-bit MCUs), and some (perhaps not all) - Many OLED's can work with this -- so it's optionally be specified - here and is not a default behavior. (Ignored if using pre-1.5.7 - Arduino software, which operates I2C at a fixed 100 KHz.) - @param clkAfter - Speed (in Hz) for Wire transmissions following library - calls. Defaults to 100000 (100 KHz), the default Arduino Wire - speed. This is done rather than leaving it at the 'during' speed - because other devices on the I2C bus might not be compatible - with the faster rate. (Ignored if using pre-1.5.7 Arduino - software, which operates I2C at a fixed 100 KHz.) - @note Call the object's begin() function before use -- buffer - allocation is performed there! -*/ -Adafruit_GrayOLED::Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, - TwoWire *twi, int16_t rst_pin, - uint32_t clkDuring, uint32_t clkAfter) - : Adafruit_GFX(w, h), i2c_preclk(clkDuring), i2c_postclk(clkAfter), - buffer(NULL), dcPin(-1), csPin(-1), rstPin(rst_pin), _bpp(bpp) { - i2c_dev = NULL; - _theWire = twi; -} - -/*! - @brief Constructor for SPI GrayOLED displays, using software (bitbang) - SPI. - @param bpp Bits per pixel, 1 for monochrome, 4 for 16-gray - @param w - Display width in pixels - @param h - Display height in pixels - @param mosi_pin - MOSI (master out, slave in) pin (using Arduino pin numbering). - This transfers serial data from microcontroller to display. - @param sclk_pin - SCLK (serial clock) pin (using Arduino pin numbering). - This clocks each bit from MOSI. - @param dc_pin - Data/command pin (using Arduino pin numbering), selects whether - display is receiving commands (low) or data (high). - @param rst_pin - Reset pin (using Arduino pin numbering), or -1 if not used - (some displays might be wired to share the microcontroller's - reset pin). - @param cs_pin - Chip-select pin (using Arduino pin numbering) for sharing the - bus with other devices. Active low. - @note Call the object's begin() function before use -- buffer - allocation is performed there! -*/ -Adafruit_GrayOLED::Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, - int16_t mosi_pin, int16_t sclk_pin, - int16_t dc_pin, int16_t rst_pin, - int16_t cs_pin) - : Adafruit_GFX(w, h), dcPin(dc_pin), csPin(cs_pin), rstPin(rst_pin), - _bpp(bpp) { - - spi_dev = new Adafruit_SPIDevice(cs_pin, sclk_pin, -1, mosi_pin, 1000000); -} - -/*! - @brief Constructor for SPI GrayOLED displays, using native hardware SPI. - @param bpp Bits per pixel, 1 for monochrome, 4 for 16-gray - @param w - Display width in pixels - @param h - Display height in pixels - @param spi - Pointer to an existing SPIClass instance (e.g. &SPI, the - microcontroller's primary SPI bus). - @param dc_pin - Data/command pin (using Arduino pin numbering), selects whether - display is receiving commands (low) or data (high). - @param rst_pin - Reset pin (using Arduino pin numbering), or -1 if not used - (some displays might be wired to share the microcontroller's - reset pin). - @param cs_pin - Chip-select pin (using Arduino pin numbering) for sharing the - bus with other devices. Active low. - @param bitrate - SPI clock rate for transfers to this display. Default if - unspecified is 8000000UL (8 MHz). - @note Call the object's begin() function before use -- buffer - allocation is performed there! -*/ -Adafruit_GrayOLED::Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, - SPIClass *spi, int16_t dc_pin, - int16_t rst_pin, int16_t cs_pin, - uint32_t bitrate) - : Adafruit_GFX(w, h), dcPin(dc_pin), csPin(cs_pin), rstPin(rst_pin), - _bpp(bpp) { - - spi_dev = new Adafruit_SPIDevice(cs_pin, bitrate, SPI_BITORDER_MSBFIRST, - SPI_MODE0, spi); -} - -/*! - @brief Destructor for Adafruit_GrayOLED object. -*/ -Adafruit_GrayOLED::~Adafruit_GrayOLED(void) { - if (buffer) { - free(buffer); - buffer = NULL; - } - if (spi_dev) - delete spi_dev; - if (i2c_dev) - delete i2c_dev; -} - -// LOW-LEVEL UTILS --------------------------------------------------------- - -/*! - @brief Issue single command byte to OLED, using I2C or hard/soft SPI as - needed. - @param c The single byte command -*/ -void Adafruit_GrayOLED::oled_command(uint8_t c) { - if (i2c_dev) { // I2C - uint8_t buf[2] = {0x00, c}; // Co = 0, D/C = 0 - i2c_dev->write(buf, 2); - } else { // SPI (hw or soft) -- transaction started in calling function - digitalWrite(dcPin, LOW); - spi_dev->write(&c, 1); - } -} - -// Issue list of commands to GrayOLED -/*! - @brief Issue multiple bytes of commands OLED, using I2C or hard/soft SPI as - needed. - @param c Pointer to the command array - @param n The number of bytes in the command array - @returns True for success on ability to write the data in I2C. -*/ - -bool Adafruit_GrayOLED::oled_commandList(const uint8_t *c, uint8_t n) { - if (i2c_dev) { // I2C - uint8_t dc_byte = 0x00; // Co = 0, D/C = 0 - if (!i2c_dev->write((uint8_t *)c, n, true, &dc_byte, 1)) { - return false; - } - } else { // SPI -- transaction started in calling function - digitalWrite(dcPin, LOW); - if (!spi_dev->write((uint8_t *)c, n)) { - return false; - } - } - return true; -} - -// ALLOCATE & INIT DISPLAY ------------------------------------------------- - -/*! - @brief Allocate RAM for image buffer, initialize peripherals and pins. - Note that subclasses must call this before other begin() init - @param addr - I2C address of corresponding oled display. - SPI displays (hardware or software) do not use addresses, but - this argument is still required. Default if unspecified is 0x3C. - @param reset - If true, and if the reset pin passed to the constructor is - valid, a hard reset will be performed before initializing the - display. If using multiple oled displays on the same bus, and - if they all share the same reset pin, you should only pass true - on the first display being initialized, false on all others, - else the already-initialized displays would be reset. Default if - unspecified is true. - @return true on successful allocation/init, false otherwise. - Well-behaved code should check the return value before - proceeding. - @note MUST call this function before any drawing or updates! -*/ -bool Adafruit_GrayOLED::_init(uint8_t addr, bool reset) { - - // attempt to malloc the bitmap framebuffer - if ((!buffer) && - !(buffer = (uint8_t *)malloc(_bpp * WIDTH * ((HEIGHT + 7) / 8)))) { - return false; - } - - // Reset OLED if requested and reset pin specified in constructor - if (reset && (rstPin >= 0)) { - pinMode(rstPin, OUTPUT); - digitalWrite(rstPin, HIGH); - delay(10); // VDD goes high at start, pause - digitalWrite(rstPin, LOW); // Bring reset low - delay(10); // Wait 10 ms - digitalWrite(rstPin, HIGH); // Bring out of reset - delay(10); - } - - // Setup pin directions - if (_theWire) { // using I2C - i2c_dev = new Adafruit_I2CDevice(addr, _theWire); - // look for i2c address: - if (!i2c_dev || !i2c_dev->begin()) { - return false; - } - } else { // Using one of the SPI modes, either soft or hardware - if (!spi_dev || !spi_dev->begin()) { - return false; - } - pinMode(dcPin, OUTPUT); // Set data/command pin as output - } - - clearDisplay(); - - // set max dirty window - window_x1 = 0; - window_y1 = 0; - window_x2 = WIDTH - 1; - window_y2 = HEIGHT - 1; - - return true; // Success -} - -// DRAWING FUNCTIONS ------------------------------------------------------- - -/*! - @brief Set/clear/invert a single pixel. This is also invoked by the - Adafruit_GFX library in generating many higher-level graphics - primitives. - @param x - Column of display -- 0 at left to (screen width - 1) at right. - @param y - Row of display -- 0 at top to (screen height -1) at bottom. - @param color - Pixel color, one of: MONOOLED_BLACK, MONOOLED_WHITE or - MONOOLED_INVERT. - @note Changes buffer contents only, no immediate effect on display. - Follow up with a call to display(), or with other graphics - commands as needed by one's own application. -*/ -void Adafruit_GrayOLED::drawPixel(int16_t x, int16_t y, uint16_t color) { - if ((x >= 0) && (x < width()) && (y >= 0) && (y < height())) { - // Pixel is in-bounds. Rotate coordinates if needed. - switch (getRotation()) { - case 1: - grayoled_swap(x, y); - x = WIDTH - x - 1; - break; - case 2: - x = WIDTH - x - 1; - y = HEIGHT - y - 1; - break; - case 3: - grayoled_swap(x, y); - y = HEIGHT - y - 1; - break; - } - - // adjust dirty window - window_x1 = min(window_x1, x); - window_y1 = min(window_y1, y); - window_x2 = max(window_x2, x); - window_y2 = max(window_y2, y); - - if (_bpp == 1) { - switch (color) { - case MONOOLED_WHITE: - buffer[x + (y / 8) * WIDTH] |= (1 << (y & 7)); - break; - case MONOOLED_BLACK: - buffer[x + (y / 8) * WIDTH] &= ~(1 << (y & 7)); - break; - case MONOOLED_INVERSE: - buffer[x + (y / 8) * WIDTH] ^= (1 << (y & 7)); - break; - } - } - if (_bpp == 4) { - uint8_t *pixelptr = &buffer[x / 2 + (y * WIDTH / 2)]; - // Serial.printf("(%d, %d) -> offset %d\n", x, y, x/2 + (y * WIDTH / 2)); - if (x % 2 == 0) { // even, left nibble - uint8_t t = pixelptr[0] & 0x0F; - t |= (color & 0xF) << 4; - pixelptr[0] = t; - } else { // odd, right lower nibble - uint8_t t = pixelptr[0] & 0xF0; - t |= color & 0xF; - pixelptr[0] = t; - } - } - } -} - -/*! - @brief Clear contents of display buffer (set all pixels to off). - @note Changes buffer contents only, no immediate effect on display. - Follow up with a call to display(), or with other graphics - commands as needed by one's own application. -*/ -void Adafruit_GrayOLED::clearDisplay(void) { - memset(buffer, 0, _bpp * WIDTH * ((HEIGHT + 7) / 8)); - // set max dirty window - window_x1 = 0; - window_y1 = 0; - window_x2 = WIDTH - 1; - window_y2 = HEIGHT - 1; -} - -/*! - @brief Return color of a single pixel in display buffer. - @param x - Column of display -- 0 at left to (screen width - 1) at right. - @param y - Row of display -- 0 at top to (screen height -1) at bottom. - @return true if pixel is set (usually MONOOLED_WHITE, unless display invert - mode is enabled), false if clear (MONOOLED_BLACK). - @note Reads from buffer contents; may not reflect current contents of - screen if display() has not been called. -*/ -bool Adafruit_GrayOLED::getPixel(int16_t x, int16_t y) { - if ((x >= 0) && (x < width()) && (y >= 0) && (y < height())) { - // Pixel is in-bounds. Rotate coordinates if needed. - switch (getRotation()) { - case 1: - grayoled_swap(x, y); - x = WIDTH - x - 1; - break; - case 2: - x = WIDTH - x - 1; - y = HEIGHT - y - 1; - break; - case 3: - grayoled_swap(x, y); - y = HEIGHT - y - 1; - break; - } - return (buffer[x + (y / 8) * WIDTH] & (1 << (y & 7))); - } - return false; // Pixel out of bounds -} - -/*! - @brief Get base address of display buffer for direct reading or writing. - @return Pointer to an unsigned 8-bit array, column-major, columns padded - to full byte boundary if needed. -*/ -uint8_t *Adafruit_GrayOLED::getBuffer(void) { return buffer; } - -// OTHER HARDWARE SETTINGS ------------------------------------------------- - -/*! - @brief Enable or disable display invert mode (white-on-black vs - black-on-white). Handy for testing! - @param i - If true, switch to invert mode (black-on-white), else normal - mode (white-on-black). - @note This has an immediate effect on the display, no need to call the - display() function -- buffer contents are not changed, rather a - different pixel mode of the display hardware is used. When - enabled, drawing MONOOLED_BLACK (value 0) pixels will actually draw - white, MONOOLED_WHITE (value 1) will draw black. -*/ -void Adafruit_GrayOLED::invertDisplay(bool i) { - oled_command(i ? GRAYOLED_INVERTDISPLAY : GRAYOLED_NORMALDISPLAY); -} - -/*! - @brief Adjust the display contrast. - @param level The contrast level from 0 to 0x7F - @note This has an immediate effect on the display, no need to call the - display() function -- buffer contents are not changed. -*/ -void Adafruit_GrayOLED::setContrast(uint8_t level) { - uint8_t cmd[] = {GRAYOLED_SETCONTRAST, level}; - oled_commandList(cmd, 2); -} - -#endif /* ATTIN85 not supported */ diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.h deleted file mode 100644 index 4c836a4..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_GrayOLED.h +++ /dev/null @@ -1,101 +0,0 @@ -/*! - * @file Adafruit_GrayOLED.h - * - * This is part of for Adafruit's GFX library, supplying generic support - * for grayscale OLED displays: http://www.adafruit.com/category/63_98 - * - * These displays use I2C or SPI to communicate. I2C requires 2 pins - * (SCL+SDA) and optionally a RESET pin. SPI requires 4 pins (MOSI, SCK, - * select, data/command) and optionally a reset pin. Hardware SPI or - * 'bitbang' software SPI are both supported. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - * - * Written by Limor Fried/Ladyada for Adafruit Industries, with - * contributions from the open source community. - * - * BSD license, all text above, and the splash screen header file, - * must be included in any redistribution. - * - */ - -#ifndef _Adafruit_GRAYOLED_H_ -#define _Adafruit_GRAYOLED_H_ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include -#include -#include -#include -#include - -#define GRAYOLED_SETCONTRAST 0x81 ///< Generic contrast for almost all OLEDs -#define GRAYOLED_NORMALDISPLAY 0xA6 ///< Generic non-invert for almost all OLEDs -#define GRAYOLED_INVERTDISPLAY 0xA7 ///< Generic invert for almost all OLEDs - -#define MONOOLED_BLACK 0 ///< Default black 'color' for monochrome OLEDS -#define MONOOLED_WHITE 1 ///< Default white 'color' for monochrome OLEDS -#define MONOOLED_INVERSE 2 ///< Default inversion command for monochrome OLEDS - -/*! - @brief Class that stores state and functions for interacting with - generic grayscale OLED displays. -*/ -class Adafruit_GrayOLED : public Adafruit_GFX { -public: - Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, TwoWire *twi = &Wire, - int16_t rst_pin = -1, uint32_t preclk = 400000, - uint32_t postclk = 100000); - Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, int16_t mosi_pin, - int16_t sclk_pin, int16_t dc_pin, int16_t rst_pin, - int16_t cs_pin); - Adafruit_GrayOLED(uint8_t bpp, uint16_t w, uint16_t h, SPIClass *spi, - int16_t dc_pin, int16_t rst_pin, int16_t cs_pin, - uint32_t bitrate = 8000000UL); - - ~Adafruit_GrayOLED(void); - - /** - @brief The function that sub-classes define that writes out the buffer to - the display over I2C or SPI - **/ - virtual void display(void) = 0; - void clearDisplay(void); - void invertDisplay(bool i); - void setContrast(uint8_t contrastlevel); - void drawPixel(int16_t x, int16_t y, uint16_t color); - bool getPixel(int16_t x, int16_t y); - uint8_t *getBuffer(void); - - void oled_command(uint8_t c); - bool oled_commandList(const uint8_t *c, uint8_t n); - -protected: - bool _init(uint8_t i2caddr = 0x3C, bool reset = true); - - Adafruit_SPIDevice *spi_dev = NULL; ///< The SPI interface BusIO device - Adafruit_I2CDevice *i2c_dev = NULL; ///< The I2C interface BusIO device - int32_t i2c_preclk = 400000, ///< Configurable 'high speed' I2C rate - i2c_postclk = 100000; ///< Configurable 'low speed' I2C rate - uint8_t *buffer = NULL; ///< Internal 1:1 framebuffer of display mem - - int16_t window_x1, ///< Dirty tracking window minimum x - window_y1, ///< Dirty tracking window minimum y - window_x2, ///< Dirty tracking window maximum x - window_y2; ///< Dirty tracking window maximum y - - int dcPin, ///< The Arduino pin connected to D/C (for SPI) - csPin, ///< The Arduino pin connected to CS (for SPI) - rstPin; ///< The Arduino pin connected to reset (-1 if unused) - - uint8_t _bpp = 1; ///< Bits per pixel color for this display -private: - TwoWire *_theWire = NULL; ///< The underlying hardware I2C -}; - -#endif // end __AVR_ATtiny85__ __AVR_ATtiny84__ -#endif // _Adafruit_GrayOLED_H_ diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.cpp b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.cpp deleted file mode 100644 index 870979b..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.cpp +++ /dev/null @@ -1,2621 +0,0 @@ -/*! - * @file Adafruit_SPITFT.cpp - * - * @mainpage Adafruit SPI TFT Displays (and some others) - * - * @section intro_sec Introduction - * - * Part of Adafruit's GFX graphics library. Originally this class was - * written to handle a range of color TFT displays connected via SPI, - * but over time this library and some display-specific subclasses have - * mutated to include some color OLEDs as well as parallel-interfaced - * displays. The name's been kept for the sake of older code. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - - * @section dependencies Dependencies - * - * This library depends on - * Adafruit_GFX - * being present on your system. Please make sure you have installed the latest - * version before using this library. - * - * @section author Author - * - * Written by Limor "ladyada" Fried for Adafruit Industries, - * with contributions from the open source community. - * - * @section license License - * - * BSD license, all text here must be included in any redistribution. - */ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include "Adafruit_SPITFT.h" - -#if defined(__AVR__) -#if defined(__AVR_XMEGA__) // only tested with __AVR_ATmega4809__ -#define AVR_WRITESPI(x) \ - for (SPI0_DATA = (x); (!(SPI0_INTFLAGS & _BV(SPI_IF_bp)));) -#elif defined(__LGT8F__) -#define AVR_WRITESPI(x) \ - SPDR = (x); \ - asm volatile("nop"); \ - while ((SPFR & _BV(RDEMPT))) \ - ; \ - SPFR = _BV(RDEMPT) | _BV(WREMPT) -#else -#define AVR_WRITESPI(x) for (SPDR = (x); (!(SPSR & _BV(SPIF)));) -#endif -#endif - -#if defined(PORT_IOBUS) -// On SAMD21, redefine digitalPinToPort() to use the slightly-faster -// PORT_IOBUS rather than PORT (not needed on SAMD51). -#undef digitalPinToPort -#define digitalPinToPort(P) (&(PORT_IOBUS->Group[g_APinDescription[P].ulPort])) -#endif // end PORT_IOBUS - -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) -// #pragma message ("GFX DMA IS ENABLED. HIGHLY EXPERIMENTAL.") -#include "wiring_private.h" // pinPeripheral() function -#include -#include // memalign() function -#define tcNum 2 // Timer/Counter for parallel write strobe PWM -#define wrPeripheral PIO_CCL // Use CCL to invert write strobe - -// DMA transfer-in-progress indicator and callback -static volatile bool dma_busy = false; -static void dma_callback(Adafruit_ZeroDMA *dma) { dma_busy = false; } - -#if defined(__SAMD51__) -// Timer/counter info by index # -static const struct { - Tc *tc; // -> Timer/Counter base address - int gclk; // GCLK ID - int evu; // EVSYS user ID -} tcList[] = {{TC0, TC0_GCLK_ID, EVSYS_ID_USER_TC0_EVU}, - {TC1, TC1_GCLK_ID, EVSYS_ID_USER_TC1_EVU}, - {TC2, TC2_GCLK_ID, EVSYS_ID_USER_TC2_EVU}, - {TC3, TC3_GCLK_ID, EVSYS_ID_USER_TC3_EVU}, -#if defined(TC4) - {TC4, TC4_GCLK_ID, EVSYS_ID_USER_TC4_EVU}, -#endif -#if defined(TC5) - {TC5, TC5_GCLK_ID, EVSYS_ID_USER_TC5_EVU}, -#endif -#if defined(TC6) - {TC6, TC6_GCLK_ID, EVSYS_ID_USER_TC6_EVU}, -#endif -#if defined(TC7) - {TC7, TC7_GCLK_ID, EVSYS_ID_USER_TC7_EVU} -#endif -}; -#define NUM_TIMERS (sizeof tcList / sizeof tcList[0]) ///< # timer/counters -#endif // end __SAMD51__ - -#endif // end USE_SPI_DMA - -// Possible values for Adafruit_SPITFT.connection: -#define TFT_HARD_SPI 0 ///< Display interface = hardware SPI -#define TFT_SOFT_SPI 1 ///< Display interface = software SPI -#define TFT_PARALLEL 2 ///< Display interface = 8- or 16-bit parallel - -// CONSTRUCTORS ------------------------------------------------------------ - -/*! - @brief Adafruit_SPITFT constructor for software (bitbang) SPI. - @param w Display width in pixels at default rotation setting (0). - @param h Display height in pixels at default rotation setting (0). - @param cs Arduino pin # for chip-select (-1 if unused, tie CS low). - @param dc Arduino pin # for data/command select (required). - @param mosi Arduino pin # for bitbang SPI MOSI signal (required). - @param sck Arduino pin # for bitbang SPI SCK signal (required). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @param miso Arduino pin # for bitbang SPI MISO signal (optional, - -1 default, many displays don't support SPI read). - @note Output pins are not initialized; application typically will - need to call subclass' begin() function, which in turn calls - this library's initSPI() function to initialize pins. -*/ -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t mosi, int8_t sck, int8_t rst, - int8_t miso) - : Adafruit_GFX(w, h), connection(TFT_SOFT_SPI), _rst(rst), _cs(cs), - _dc(dc) { - swspi._sck = sck; - swspi._mosi = mosi; - swspi._miso = miso; -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(CORE_TEENSY) -#if !defined(KINETISK) - dcPinMask = digitalPinToBitMask(dc); - swspi.sckPinMask = digitalPinToBitMask(sck); - swspi.mosiPinMask = digitalPinToBitMask(mosi); -#endif - dcPortSet = portSetRegister(dc); - dcPortClr = portClearRegister(dc); - swspi.sckPortSet = portSetRegister(sck); - swspi.sckPortClr = portClearRegister(sck); - swspi.mosiPortSet = portSetRegister(mosi); - swspi.mosiPortClr = portClearRegister(mosi); - if (cs >= 0) { -#if !defined(KINETISK) - csPinMask = digitalPinToBitMask(cs); -#endif - csPortSet = portSetRegister(cs); - csPortClr = portClearRegister(cs); - } else { -#if !defined(KINETISK) - csPinMask = 0; -#endif - csPortSet = dcPortSet; - csPortClr = dcPortClr; - } - if (miso >= 0) { - swspi.misoPort = portInputRegister(miso); -#if !defined(KINETISK) - swspi.misoPinMask = digitalPinToBitMask(miso); -#endif - } else { - swspi.misoPort = portInputRegister(dc); - } -#else // !CORE_TEENSY - dcPinMask = digitalPinToBitMask(dc); - swspi.sckPinMask = digitalPinToBitMask(sck); - swspi.mosiPinMask = digitalPinToBitMask(mosi); - dcPortSet = &(PORT->Group[g_APinDescription[dc].ulPort].OUTSET.reg); - dcPortClr = &(PORT->Group[g_APinDescription[dc].ulPort].OUTCLR.reg); - swspi.sckPortSet = &(PORT->Group[g_APinDescription[sck].ulPort].OUTSET.reg); - swspi.sckPortClr = &(PORT->Group[g_APinDescription[sck].ulPort].OUTCLR.reg); - swspi.mosiPortSet = &(PORT->Group[g_APinDescription[mosi].ulPort].OUTSET.reg); - swspi.mosiPortClr = &(PORT->Group[g_APinDescription[mosi].ulPort].OUTCLR.reg); - if (cs >= 0) { - csPinMask = digitalPinToBitMask(cs); - csPortSet = &(PORT->Group[g_APinDescription[cs].ulPort].OUTSET.reg); - csPortClr = &(PORT->Group[g_APinDescription[cs].ulPort].OUTCLR.reg); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPortSet = dcPortSet; - csPortClr = dcPortClr; - csPinMask = 0; - } - if (miso >= 0) { - swspi.misoPinMask = digitalPinToBitMask(miso); - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(miso)); - } else { - swspi.misoPinMask = 0; - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(dc)); - } -#endif // end !CORE_TEENSY -#else // !HAS_PORT_SET_CLR - dcPort = (PORTreg_t)portOutputRegister(digitalPinToPort(dc)); - dcPinMaskSet = digitalPinToBitMask(dc); - swspi.sckPort = (PORTreg_t)portOutputRegister(digitalPinToPort(sck)); - swspi.sckPinMaskSet = digitalPinToBitMask(sck); - swspi.mosiPort = (PORTreg_t)portOutputRegister(digitalPinToPort(mosi)); - swspi.mosiPinMaskSet = digitalPinToBitMask(mosi); - if (cs >= 0) { - csPort = (PORTreg_t)portOutputRegister(digitalPinToPort(cs)); - csPinMaskSet = digitalPinToBitMask(cs); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPort = dcPort; - csPinMaskSet = 0; - } - if (miso >= 0) { - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(miso)); - swspi.misoPinMask = digitalPinToBitMask(miso); - } else { - swspi.misoPort = (PORTreg_t)portInputRegister(digitalPinToPort(dc)); - swspi.misoPinMask = 0; - } - csPinMaskClr = ~csPinMaskSet; - dcPinMaskClr = ~dcPinMaskSet; - swspi.sckPinMaskClr = ~swspi.sckPinMaskSet; - swspi.mosiPinMaskClr = ~swspi.mosiPinMaskSet; -#endif // !end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -} - -/*! - @brief Adafruit_SPITFT constructor for hardware SPI using the board's - default SPI peripheral. - @param w Display width in pixels at default rotation setting (0). - @param h Display height in pixels at default rotation setting (0). - @param cs Arduino pin # for chip-select (-1 if unused, tie CS low). - @param dc Arduino pin # for data/command select (required). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @note Output pins are not initialized; application typically will - need to call subclass' begin() function, which in turn calls - this library's initSPI() function to initialize pins. -*/ -#if defined(ESP8266) // See notes below -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t rst) - : Adafruit_GFX(w, h), connection(TFT_HARD_SPI), _rst(rst), _cs(cs), - _dc(dc) { - hwspi._spi = &SPI; -} -#else // !ESP8266 -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t rst) - : Adafruit_SPITFT(w, h, &SPI, cs, dc, rst) { - // This just invokes the hardware SPI constructor below, - // passing the default SPI device (&SPI). -} -#endif // end !ESP8266 - -#if !defined(ESP8266) -// ESP8266 compiler freaks out at this constructor -- it can't disambiguate -// beteween the SPIClass pointer (argument #3) and a regular integer. -// Solution here it to just not offer this variant on the ESP8266. You can -// use the default hardware SPI peripheral, or you can use software SPI, -// but if there's any library out there that creates a 'virtual' SPIClass -// peripheral and drives it with software bitbanging, that's not supported. -/*! - @brief Adafruit_SPITFT constructor for hardware SPI using a specific - SPI peripheral. - @param w Display width in pixels at default rotation (0). - @param h Display height in pixels at default rotation (0). - @param spiClass Pointer to SPIClass type (e.g. &SPI or &SPI1). - @param cs Arduino pin # for chip-select (-1 if unused, tie CS low). - @param dc Arduino pin # for data/command select (required). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @note Output pins are not initialized in constructor; application - typically will need to call subclass' begin() function, which - in turn calls this library's initSPI() function to initialize - pins. EXCEPT...if you have built your own SERCOM SPI peripheral - (calling the SPIClass constructor) rather than one of the - built-in SPI devices (e.g. &SPI, &SPI1 and so forth), you will - need to call the begin() function for your object as well as - pinPeripheral() for the MOSI, MISO and SCK pins to configure - GPIO manually. Do this BEFORE calling the display-specific - begin or init function. Unfortunate but unavoidable. -*/ -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, SPIClass *spiClass, - int8_t cs, int8_t dc, int8_t rst) - : Adafruit_GFX(w, h), connection(TFT_HARD_SPI), _rst(rst), _cs(cs), - _dc(dc) { - hwspi._spi = spiClass; -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(CORE_TEENSY) -#if !defined(KINETISK) - dcPinMask = digitalPinToBitMask(dc); -#endif - dcPortSet = portSetRegister(dc); - dcPortClr = portClearRegister(dc); - if (cs >= 0) { -#if !defined(KINETISK) - csPinMask = digitalPinToBitMask(cs); -#endif - csPortSet = portSetRegister(cs); - csPortClr = portClearRegister(cs); - } else { // see comments below -#if !defined(KINETISK) - csPinMask = 0; -#endif - csPortSet = dcPortSet; - csPortClr = dcPortClr; - } -#else // !CORE_TEENSY - dcPinMask = digitalPinToBitMask(dc); - dcPortSet = &(PORT->Group[g_APinDescription[dc].ulPort].OUTSET.reg); - dcPortClr = &(PORT->Group[g_APinDescription[dc].ulPort].OUTCLR.reg); - if (cs >= 0) { - csPinMask = digitalPinToBitMask(cs); - csPortSet = &(PORT->Group[g_APinDescription[cs].ulPort].OUTSET.reg); - csPortClr = &(PORT->Group[g_APinDescription[cs].ulPort].OUTCLR.reg); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPortSet = dcPortSet; - csPortClr = dcPortClr; - csPinMask = 0; - } -#endif // end !CORE_TEENSY -#else // !HAS_PORT_SET_CLR - dcPort = (PORTreg_t)portOutputRegister(digitalPinToPort(dc)); - dcPinMaskSet = digitalPinToBitMask(dc); - if (cs >= 0) { - csPort = (PORTreg_t)portOutputRegister(digitalPinToPort(cs)); - csPinMaskSet = digitalPinToBitMask(cs); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPort = dcPort; - csPinMaskSet = 0; - } - csPinMaskClr = ~csPinMaskSet; - dcPinMaskClr = ~dcPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -} -#endif // end !ESP8266 - -/*! - @brief Adafruit_SPITFT constructor for parallel display connection. - @param w Display width in pixels at default rotation (0). - @param h Display height in pixels at default rotation (0). - @param busWidth If tft16 (enumeration in header file), is a 16-bit - parallel connection, else 8-bit. - 16-bit isn't fully implemented or tested yet so - applications should pass "tft8bitbus" for now...needed to - stick a required enum argument in there to - disambiguate this constructor from the soft-SPI case. - Argument is ignored on 8-bit architectures (no 'wide' - support there since PORTs are 8 bits anyway). - @param d0 Arduino pin # for data bit 0 (1+ are extrapolated). - The 8 (or 16) data bits MUST be contiguous and byte- - aligned (or word-aligned for wide interface) within - the same PORT register (might not correspond to - Arduino pin sequence). - @param wr Arduino pin # for write strobe (required). - @param dc Arduino pin # for data/command select (required). - @param cs Arduino pin # for chip-select (optional, -1 if unused, - tie CS low). - @param rst Arduino pin # for display reset (optional, display reset - can be tied to MCU reset, default of -1 means unused). - @param rd Arduino pin # for read strobe (optional, -1 if unused). - @note Output pins are not initialized; application typically will need - to call subclass' begin() function, which in turn calls this - library's initSPI() function to initialize pins. - Yes, the name is a misnomer...this library originally handled - only SPI displays, parallel being a recent addition (but not - wanting to break existing code). -*/ -Adafruit_SPITFT::Adafruit_SPITFT(uint16_t w, uint16_t h, tftBusWidth busWidth, - int8_t d0, int8_t wr, int8_t dc, int8_t cs, - int8_t rst, int8_t rd) - : Adafruit_GFX(w, h), connection(TFT_PARALLEL), _rst(rst), _cs(cs), - _dc(dc) { - tft8._d0 = d0; - tft8._wr = wr; - tft8._rd = rd; - tft8.wide = (busWidth == tft16bitbus); -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(CORE_TEENSY) - tft8.wrPortSet = portSetRegister(wr); - tft8.wrPortClr = portClearRegister(wr); -#if !defined(KINETISK) - dcPinMask = digitalPinToBitMask(dc); -#endif - dcPortSet = portSetRegister(dc); - dcPortClr = portClearRegister(dc); - if (cs >= 0) { -#if !defined(KINETISK) - csPinMask = digitalPinToBitMask(cs); -#endif - csPortSet = portSetRegister(cs); - csPortClr = portClearRegister(cs); - } else { // see comments below -#if !defined(KINETISK) - csPinMask = 0; -#endif - csPortSet = dcPortSet; - csPortClr = dcPortClr; - } - if (rd >= 0) { // if read-strobe pin specified... -#if defined(KINETISK) - tft8.rdPinMask = 1; -#else // !KINETISK - tft8.rdPinMask = digitalPinToBitMask(rd); -#endif - tft8.rdPortSet = portSetRegister(rd); - tft8.rdPortClr = portClearRegister(rd); - } else { - tft8.rdPinMask = 0; - tft8.rdPortSet = dcPortSet; - tft8.rdPortClr = dcPortClr; - } - // These are all uint8_t* pointers -- elsewhere they're recast - // as necessary if a 'wide' 16-bit interface is in use. - tft8.writePort = portOutputRegister(d0); - tft8.readPort = portInputRegister(d0); - tft8.dirSet = portModeRegister(d0); - tft8.dirClr = portModeRegister(d0); -#else // !CORE_TEENSY - tft8.wrPinMask = digitalPinToBitMask(wr); - tft8.wrPortSet = &(PORT->Group[g_APinDescription[wr].ulPort].OUTSET.reg); - tft8.wrPortClr = &(PORT->Group[g_APinDescription[wr].ulPort].OUTCLR.reg); - dcPinMask = digitalPinToBitMask(dc); - dcPortSet = &(PORT->Group[g_APinDescription[dc].ulPort].OUTSET.reg); - dcPortClr = &(PORT->Group[g_APinDescription[dc].ulPort].OUTCLR.reg); - if (cs >= 0) { - csPinMask = digitalPinToBitMask(cs); - csPortSet = &(PORT->Group[g_APinDescription[cs].ulPort].OUTSET.reg); - csPortClr = &(PORT->Group[g_APinDescription[cs].ulPort].OUTCLR.reg); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPortSet = dcPortSet; - csPortClr = dcPortClr; - csPinMask = 0; - } - if (rd >= 0) { // if read-strobe pin specified... - tft8.rdPinMask = digitalPinToBitMask(rd); - tft8.rdPortSet = &(PORT->Group[g_APinDescription[rd].ulPort].OUTSET.reg); - tft8.rdPortClr = &(PORT->Group[g_APinDescription[rd].ulPort].OUTCLR.reg); - } else { - tft8.rdPinMask = 0; - tft8.rdPortSet = dcPortSet; - tft8.rdPortClr = dcPortClr; - } - // Get pointers to PORT write/read/dir bytes within 32-bit PORT - uint8_t dBit = g_APinDescription[d0].ulPin; // d0 bit # in PORT - PortGroup *p = (&(PORT->Group[g_APinDescription[d0].ulPort])); - uint8_t offset = dBit / 8; // d[7:0] byte # within PORT - if (tft8.wide) - offset &= ~1; // d[15:8] byte # within PORT - // These are all uint8_t* pointers -- elsewhere they're recast - // as necessary if a 'wide' 16-bit interface is in use. - tft8.writePort = (volatile uint8_t *)&(p->OUT.reg) + offset; - tft8.readPort = (volatile uint8_t *)&(p->IN.reg) + offset; - tft8.dirSet = (volatile uint8_t *)&(p->DIRSET.reg) + offset; - tft8.dirClr = (volatile uint8_t *)&(p->DIRCLR.reg) + offset; -#endif // end !CORE_TEENSY -#else // !HAS_PORT_SET_CLR - tft8.wrPort = (PORTreg_t)portOutputRegister(digitalPinToPort(wr)); - tft8.wrPinMaskSet = digitalPinToBitMask(wr); - dcPort = (PORTreg_t)portOutputRegister(digitalPinToPort(dc)); - dcPinMaskSet = digitalPinToBitMask(dc); - if (cs >= 0) { - csPort = (PORTreg_t)portOutputRegister(digitalPinToPort(cs)); - csPinMaskSet = digitalPinToBitMask(cs); - } else { - // No chip-select line defined; might be permanently tied to GND. - // Assign a valid GPIO register (though not used for CS), and an - // empty pin bitmask...the nonsense bit-twiddling might be faster - // than checking _cs and possibly branching. - csPort = dcPort; - csPinMaskSet = 0; - } - if (rd >= 0) { // if read-strobe pin specified... - tft8.rdPort = (PORTreg_t)portOutputRegister(digitalPinToPort(rd)); - tft8.rdPinMaskSet = digitalPinToBitMask(rd); - } else { - tft8.rdPort = dcPort; - tft8.rdPinMaskSet = 0; - } - csPinMaskClr = ~csPinMaskSet; - dcPinMaskClr = ~dcPinMaskSet; - tft8.wrPinMaskClr = ~tft8.wrPinMaskSet; - tft8.rdPinMaskClr = ~tft8.rdPinMaskSet; - tft8.writePort = (PORTreg_t)portOutputRegister(digitalPinToPort(d0)); - tft8.readPort = (PORTreg_t)portInputRegister(digitalPinToPort(d0)); - tft8.portDir = (PORTreg_t)portModeRegister(digitalPinToPort(d0)); -#endif // end !HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -} - -// end constructors ------- - -// CLASS MEMBER FUNCTIONS -------------------------------------------------- - -// begin() and setAddrWindow() MUST be declared by any subclass. - -/*! - @brief Configure microcontroller pins for TFT interfacing. Typically - called by a subclass' begin() function. - @param freq SPI frequency when using hardware SPI. If default (0) - is passed, will fall back on a device-specific value. - Value is ignored when using software SPI or parallel - connection. - @param spiMode SPI mode when using hardware SPI. MUST be one of the - values SPI_MODE0, SPI_MODE1, SPI_MODE2 or SPI_MODE3 - defined in SPI.h. Do NOT attempt to pass '0' for - SPI_MODE0 and so forth...the values are NOT the same! - Use ONLY the defines! (Pity it's not an enum.) - @note Another anachronistically-named function; this is called even - when the display connection is parallel (not SPI). Also, this - could probably be made private...quite a few class functions - were generously put in the public section. -*/ -void Adafruit_SPITFT::initSPI(uint32_t freq, uint8_t spiMode) { - - if (!freq) - freq = DEFAULT_SPI_FREQ; // If no freq specified, use default - - // Init basic control pins common to all connection types - if (_cs >= 0) { - pinMode(_cs, OUTPUT); - digitalWrite(_cs, HIGH); // Deselect - } - pinMode(_dc, OUTPUT); - digitalWrite(_dc, HIGH); // Data mode - - if (connection == TFT_HARD_SPI) { - -#if defined(SPI_HAS_TRANSACTION) - hwspi.settings = SPISettings(freq, MSBFIRST, spiMode); -#else - hwspi._freq = freq; // Save freq value for later -#endif - hwspi._mode = spiMode; // Save spiMode value for later - // Call hwspi._spi->begin() ONLY if this is among the 'established' - // SPI interfaces in variant.h. For DIY roll-your-own SERCOM SPIs, - // begin() and pinPeripheral() calls MUST be made in one's calling - // code, BEFORE the screen-specific begin/init function is called. - // Reason for this is that SPI::begin() makes its own calls to - // pinPeripheral() based on g_APinDescription[n].ulPinType, which - // on non-established SPI interface pins will always be PIO_DIGITAL - // or similar, while we need PIO_SERCOM or PIO_SERCOM_ALT...it's - // highly unique between devices and variants for each pin or - // SERCOM so we can't make those calls ourselves here. And the SPI - // device needs to be set up before calling this because it's - // immediately followed with initialization commands. Blargh. - if ( -#if !defined(SPI_INTERFACES_COUNT) - 1 -#else -#if SPI_INTERFACES_COUNT > 0 - (hwspi._spi == &SPI) -#endif -#if SPI_INTERFACES_COUNT > 1 - || (hwspi._spi == &SPI1) -#endif -#if SPI_INTERFACES_COUNT > 2 - || (hwspi._spi == &SPI2) -#endif -#if SPI_INTERFACES_COUNT > 3 - || (hwspi._spi == &SPI3) -#endif -#if SPI_INTERFACES_COUNT > 4 - || (hwspi._spi == &SPI4) -#endif -#if SPI_INTERFACES_COUNT > 5 - || (hwspi._spi == &SPI5) -#endif -#endif // end SPI_INTERFACES_COUNT - ) { - hwspi._spi->begin(); - } - } else if (connection == TFT_SOFT_SPI) { - - pinMode(swspi._mosi, OUTPUT); - digitalWrite(swspi._mosi, LOW); - pinMode(swspi._sck, OUTPUT); - digitalWrite(swspi._sck, LOW); - if (swspi._miso >= 0) { - pinMode(swspi._miso, INPUT); - } - - } else { // TFT_PARALLEL - // Initialize data pins. We were only passed d0, so scan - // the pin description list looking for the other pins. - // They'll be on the same PORT, and within the next 7 (or 15) bits - // (because we need to write to a contiguous PORT byte or word). -#if defined(__AVR__) - // PORT registers are 8 bits wide, so just need a register match... - for (uint8_t i = 0; i < NUM_DIGITAL_PINS; i++) { - if ((PORTreg_t)portOutputRegister(digitalPinToPort(i)) == - tft8.writePort) { - pinMode(i, OUTPUT); - digitalWrite(i, LOW); - } - } -#elif defined(USE_FAST_PINIO) -#if defined(CORE_TEENSY) - if (!tft8.wide) { - *tft8.dirSet = 0xFF; // Set port to output - *tft8.writePort = 0x00; // Write all 0s - } else { - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; - *(volatile uint16_t *)tft8.writePort = 0x0000; - } -#else // !CORE_TEENSY - uint8_t portNum = g_APinDescription[tft8._d0].ulPort, // d0 PORT # - dBit = g_APinDescription[tft8._d0].ulPin, // d0 bit in PORT - lastBit = dBit + (tft8.wide ? 15 : 7); - for (uint8_t i = 0; i < PINS_COUNT; i++) { - if ((g_APinDescription[i].ulPort == portNum) && - (g_APinDescription[i].ulPin >= dBit) && - (g_APinDescription[i].ulPin <= (uint32_t)lastBit)) { - pinMode(i, OUTPUT); - digitalWrite(i, LOW); - } - } -#endif // end !CORE_TEENSY -#endif - pinMode(tft8._wr, OUTPUT); - digitalWrite(tft8._wr, HIGH); - if (tft8._rd >= 0) { - pinMode(tft8._rd, OUTPUT); - digitalWrite(tft8._rd, HIGH); - } - } - - if (_rst >= 0) { - // Toggle _rst low to reset - pinMode(_rst, OUTPUT); - digitalWrite(_rst, HIGH); - delay(100); - digitalWrite(_rst, LOW); - delay(100); - digitalWrite(_rst, HIGH); - delay(200); - } - -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - if (((connection == TFT_HARD_SPI) || (connection == TFT_PARALLEL)) && - (dma.allocate() == DMA_STATUS_OK)) { // Allocate channel - // The DMA library needs to alloc at least one valid descriptor, - // so we do that here. It's not used in the usual sense though, - // just before a transfer we copy descriptor[0] to this address. - if (dptr = dma.addDescriptor(NULL, NULL, 42, DMA_BEAT_SIZE_BYTE, false, - false)) { - // Alloc 2 scanlines worth of pixels on display's major axis, - // whichever that is, rounding each up to 2-pixel boundary. - int major = (WIDTH > HEIGHT) ? WIDTH : HEIGHT; - major += (major & 1); // -> next 2-pixel bound, if needed. - maxFillLen = major * 2; // 2 scanlines - // Note to future self: if you decide to make the pixel buffer - // much larger, remember that DMA transfer descriptors can't - // exceed 65,535 bytes (not 65,536), meaning 32,767 pixels max. - // Not that we have that kind of RAM to throw around right now. - if ((pixelBuf[0] = (uint16_t *)malloc(maxFillLen * sizeof(uint16_t)))) { - // Alloc OK. Get pointer to start of second scanline. - pixelBuf[1] = &pixelBuf[0][major]; - // Determine number of DMA descriptors needed to cover - // entire screen when entire 2-line pixelBuf is used - // (round up for fractional last descriptor). - int numDescriptors = (WIDTH * HEIGHT + (maxFillLen - 1)) / maxFillLen; - // DMA descriptors MUST be 128-bit (16 byte) aligned. - // memalign() is considered obsolete but it's replacements - // (aligned_alloc() or posix_memalign()) are not currently - // available in the version of ARM GCC in use, but this - // is, so here we are. - if ((descriptor = (DmacDescriptor *)memalign( - 16, numDescriptors * sizeof(DmacDescriptor)))) { - int dmac_id; - volatile uint32_t *data_reg; - - if (connection == TFT_HARD_SPI) { - // THIS IS AN AFFRONT TO NATURE, but I don't know - // any "clean" way to get the sercom number from the - // the SPIClass pointer (e.g. &SPI or &SPI1), which - // is all we have to work with. SPIClass does contain - // a SERCOM pointer but it is a PRIVATE member! - // Doing an UNSPEAKABLY HORRIBLE THING here, directly - // accessing the first 32-bit value in the SPIClass - // structure, knowing that's (currently) where the - // SERCOM pointer lives, but this ENTIRELY DEPENDS on - // that structure not changing nor the compiler - // rearranging things. Oh the humanity! - - if (*(SERCOM **)hwspi._spi == &sercom0) { - dmac_id = SERCOM0_DMAC_ID_TX; - data_reg = &SERCOM0->SPI.DATA.reg; -#if defined SERCOM1 - } else if (*(SERCOM **)hwspi._spi == &sercom1) { - dmac_id = SERCOM1_DMAC_ID_TX; - data_reg = &SERCOM1->SPI.DATA.reg; -#endif -#if defined SERCOM2 - } else if (*(SERCOM **)hwspi._spi == &sercom2) { - dmac_id = SERCOM2_DMAC_ID_TX; - data_reg = &SERCOM2->SPI.DATA.reg; -#endif -#if defined SERCOM3 - } else if (*(SERCOM **)hwspi._spi == &sercom3) { - dmac_id = SERCOM3_DMAC_ID_TX; - data_reg = &SERCOM3->SPI.DATA.reg; -#endif -#if defined SERCOM4 - } else if (*(SERCOM **)hwspi._spi == &sercom4) { - dmac_id = SERCOM4_DMAC_ID_TX; - data_reg = &SERCOM4->SPI.DATA.reg; -#endif -#if defined SERCOM5 - } else if (*(SERCOM **)hwspi._spi == &sercom5) { - dmac_id = SERCOM5_DMAC_ID_TX; - data_reg = &SERCOM5->SPI.DATA.reg; -#endif -#if defined SERCOM6 - } else if (*(SERCOM **)hwspi._spi == &sercom6) { - dmac_id = SERCOM6_DMAC_ID_TX; - data_reg = &SERCOM6->SPI.DATA.reg; -#endif -#if defined SERCOM7 - } else if (*(SERCOM **)hwspi._spi == &sercom7) { - dmac_id = SERCOM7_DMAC_ID_TX; - data_reg = &SERCOM7->SPI.DATA.reg; -#endif - } - dma.setPriority(DMA_PRIORITY_3); - dma.setTrigger(dmac_id); - dma.setAction(DMA_TRIGGER_ACTON_BEAT); - - // Initialize descriptor list. - for (int d = 0; d < numDescriptors; d++) { - // No need to set SRCADDR, DESCADDR or BTCNT -- - // those are done in the pixel-writing functions. - descriptor[d].BTCTRL.bit.VALID = true; - descriptor[d].BTCTRL.bit.EVOSEL = DMA_EVENT_OUTPUT_DISABLE; - descriptor[d].BTCTRL.bit.BLOCKACT = DMA_BLOCK_ACTION_NOACT; - descriptor[d].BTCTRL.bit.BEATSIZE = DMA_BEAT_SIZE_BYTE; - descriptor[d].BTCTRL.bit.DSTINC = 0; - descriptor[d].BTCTRL.bit.STEPSEL = DMA_STEPSEL_SRC; - descriptor[d].BTCTRL.bit.STEPSIZE = - DMA_ADDRESS_INCREMENT_STEP_SIZE_1; - descriptor[d].DSTADDR.reg = (uint32_t)data_reg; - } - - } else { // Parallel connection - -#if defined(__SAMD51__) - int dmaChannel = dma.getChannel(); - // Enable event output, use EVOSEL output - DMAC->Channel[dmaChannel].CHEVCTRL.bit.EVOE = 1; - DMAC->Channel[dmaChannel].CHEVCTRL.bit.EVOMODE = 0; - - // CONFIGURE TIMER/COUNTER (for write strobe) - - Tc *timer = tcList[tcNum].tc; // -> Timer struct - int id = tcList[tcNum].gclk; // Timer GCLK ID - GCLK_PCHCTRL_Type pchctrl; - - // Set up timer clock source from GCLK - GCLK->PCHCTRL[id].bit.CHEN = 0; // Stop timer - while (GCLK->PCHCTRL[id].bit.CHEN) - ; // Wait for it - pchctrl.bit.GEN = GCLK_PCHCTRL_GEN_GCLK0_Val; - pchctrl.bit.CHEN = 1; // Enable - GCLK->PCHCTRL[id].reg = pchctrl.reg; - while (!GCLK->PCHCTRL[id].bit.CHEN) - ; // Wait for it - - // Disable timer/counter before configuring it - timer->COUNT8.CTRLA.bit.ENABLE = 0; - while (timer->COUNT8.SYNCBUSY.bit.STATUS) - ; - - timer->COUNT8.WAVE.bit.WAVEGEN = 2; // NPWM - timer->COUNT8.CTRLA.bit.MODE = 1; // 8-bit - timer->COUNT8.CTRLA.bit.PRESCALER = 0; // 1:1 - while (timer->COUNT8.SYNCBUSY.bit.STATUS) - ; - - timer->COUNT8.CTRLBCLR.bit.DIR = 1; // Count UP - while (timer->COUNT8.SYNCBUSY.bit.CTRLB) - ; - timer->COUNT8.CTRLBSET.bit.ONESHOT = 1; // One-shot - while (timer->COUNT8.SYNCBUSY.bit.CTRLB) - ; - timer->COUNT8.PER.reg = 6; // PWM top - while (timer->COUNT8.SYNCBUSY.bit.PER) - ; - timer->COUNT8.CC[0].reg = 2; // Compare - while (timer->COUNT8.SYNCBUSY.bit.CC0) - ; - // Enable async input events, - // event action = restart. - timer->COUNT8.EVCTRL.bit.TCEI = 1; - timer->COUNT8.EVCTRL.bit.EVACT = 1; - - // Enable timer - timer->COUNT8.CTRLA.reg |= TC_CTRLA_ENABLE; - while (timer->COUNT8.SYNCBUSY.bit.STATUS) - ; - -#if (wrPeripheral == PIO_CCL) - // CONFIGURE CCL (inverts timer/counter output) - - MCLK->APBCMASK.bit.CCL_ = 1; // Enable CCL clock - CCL->CTRL.bit.ENABLE = 0; // Disable to config - CCL->CTRL.bit.SWRST = 1; // Reset CCL registers - CCL->LUTCTRL[tcNum].bit.ENABLE = 0; // Disable LUT - CCL->LUTCTRL[tcNum].bit.FILTSEL = 0; // No filter - CCL->LUTCTRL[tcNum].bit.INSEL0 = 6; // TC input - CCL->LUTCTRL[tcNum].bit.INSEL1 = 0; // MASK - CCL->LUTCTRL[tcNum].bit.INSEL2 = 0; // MASK - CCL->LUTCTRL[tcNum].bit.TRUTH = 1; // Invert in 0 - CCL->LUTCTRL[tcNum].bit.ENABLE = 1; // Enable LUT - CCL->CTRL.bit.ENABLE = 1; // Enable CCL -#endif - - // CONFIGURE EVENT SYSTEM - - // Set up event system clock source from GCLK... - // Disable EVSYS, wait for disable - GCLK->PCHCTRL[EVSYS_GCLK_ID_0].bit.CHEN = 0; - while (GCLK->PCHCTRL[EVSYS_GCLK_ID_0].bit.CHEN) - ; - pchctrl.bit.GEN = GCLK_PCHCTRL_GEN_GCLK0_Val; - pchctrl.bit.CHEN = 1; // Re-enable - GCLK->PCHCTRL[EVSYS_GCLK_ID_0].reg = pchctrl.reg; - // Wait for it, then enable EVSYS clock - while (!GCLK->PCHCTRL[EVSYS_GCLK_ID_0].bit.CHEN) - ; - MCLK->APBBMASK.bit.EVSYS_ = 1; - - // Connect Timer EVU to ch 0 - EVSYS->USER[tcList[tcNum].evu].reg = 1; - // Datasheet recommends single write operation; - // reg instead of bit. Also datasheet: PATH bits - // must be zero when using async! - EVSYS_CHANNEL_Type ev; - ev.reg = 0; - ev.bit.PATH = 2; // Asynchronous - ev.bit.EVGEN = 0x22 + dmaChannel; // DMA channel 0+ - EVSYS->Channel[0].CHANNEL.reg = ev.reg; - - // Initialize descriptor list. - for (int d = 0; d < numDescriptors; d++) { - // No need to set SRCADDR, DESCADDR or BTCNT -- - // those are done in the pixel-writing functions. - descriptor[d].BTCTRL.bit.VALID = true; - // Event strobe on beat xfer: - descriptor[d].BTCTRL.bit.EVOSEL = 0x3; - descriptor[d].BTCTRL.bit.BLOCKACT = DMA_BLOCK_ACTION_NOACT; - descriptor[d].BTCTRL.bit.BEATSIZE = - tft8.wide ? DMA_BEAT_SIZE_HWORD : DMA_BEAT_SIZE_BYTE; - descriptor[d].BTCTRL.bit.SRCINC = 1; - descriptor[d].BTCTRL.bit.DSTINC = 0; - descriptor[d].BTCTRL.bit.STEPSEL = DMA_STEPSEL_SRC; - descriptor[d].BTCTRL.bit.STEPSIZE = - DMA_ADDRESS_INCREMENT_STEP_SIZE_1; - descriptor[d].DSTADDR.reg = (uint32_t)tft8.writePort; - } -#endif // __SAMD51 - } // end parallel-specific DMA setup - - lastFillColor = 0x0000; - lastFillLen = 0; - dma.setCallback(dma_callback); - return; // Success! - // else clean up any partial allocation... - } // end descriptor memalign() - free(pixelBuf[0]); - pixelBuf[0] = pixelBuf[1] = NULL; - } // end pixelBuf malloc() - // Don't currently have a descriptor delete function in - // ZeroDMA lib, but if we did, it would be called here. - } // end addDescriptor() - dma.free(); // Deallocate DMA channel - } -#endif // end USE_SPI_DMA -} - -/*! - @brief Allow changing the SPI clock speed after initialization - @param freq Desired frequency of SPI clock, may not be the - end frequency you get based on what the chip can do! -*/ -void Adafruit_SPITFT::setSPISpeed(uint32_t freq) { -#if defined(SPI_HAS_TRANSACTION) - hwspi.settings = SPISettings(freq, MSBFIRST, hwspi._mode); -#else - hwspi._freq = freq; // Save freq value for later -#endif -} - -/*! - @brief Call before issuing command(s) or data to display. Performs - chip-select (if required) and starts an SPI transaction (if - using hardware SPI and transactions are supported). Required - for all display types; not an SPI-specific function. -*/ -void Adafruit_SPITFT::startWrite(void) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); -} - -/*! - @brief Call after issuing command(s) or data to display. Performs - chip-deselect (if required) and ends an SPI transaction (if - using hardware SPI and transactions are supported). Required - for all display types; not an SPI-specific function. -*/ -void Adafruit_SPITFT::endWrite(void) { - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -// ------------------------------------------------------------------------- -// Lower-level graphics operations. These functions require a chip-select -// and/or SPI transaction around them (via startWrite(), endWrite() above). -// Higher-level graphics primitives might start a single transaction and -// then make multiple calls to these functions (e.g. circle or text -// rendering might make repeated lines or rects) before ending the -// transaction. It's more efficient than starting a transaction every time. - -/*! - @brief Draw a single pixel to the display at requested coordinates. - Not self-contained; should follow a startWrite() call. - @param x Horizontal position (0 = left). - @param y Vertical position (0 = top). - @param color 16-bit pixel color in '565' RGB format. -*/ -void Adafruit_SPITFT::writePixel(int16_t x, int16_t y, uint16_t color) { - if ((x >= 0) && (x < _width) && (y >= 0) && (y < _height)) { - setAddrWindow(x, y, 1, 1); - SPI_WRITE16(color); - } -} - -/*! - @brief Swap bytes in an array of pixels; converts little-to-big or - big-to-little endian. Used by writePixels() below in some - situations, but may also be helpful for user code occasionally. - @param src Source address of 16-bit pixels buffer. - @param len Number of pixels to byte-swap. - @param dest Optional destination address if different than src -- - otherwise, if NULL (default) or same address is passed, - pixel buffer is overwritten in-place. -*/ -void Adafruit_SPITFT::swapBytes(uint16_t *src, uint32_t len, uint16_t *dest) { - if (!dest) - dest = src; // NULL -> overwrite src buffer - for (uint32_t i = 0; i < len; i++) { - dest[i] = __builtin_bswap16(src[i]); - } -} - -/*! - @brief Issue a series of pixels from memory to the display. Not self- - contained; should follow startWrite() and setAddrWindow() calls. - @param colors Pointer to array of 16-bit pixel values in '565' RGB - format. - @param len Number of elements in 'colors' array. - @param block If true (default case if unspecified), function blocks - until DMA transfer is complete. This is simply IGNORED - if DMA is not enabled. If false, the function returns - immediately after the last DMA transfer is started, - and one should use the dmaWait() function before - doing ANY other display-related activities (or even - any SPI-related activities, if using an SPI display - that shares the bus with other devices). - @param bigEndian If true, bitmap in memory is in big-endian order (most - significant byte first). By default this is false, as - most microcontrollers seem to be little-endian and - 16-bit pixel values must be byte-swapped before - issuing to the display (which tend toward big-endian - when using SPI or 8-bit parallel). If an application - can optimize around this -- for example, a bitmap in a - uint16_t array having the byte values already ordered - big-endian, this can save time here, ESPECIALLY if - using this function's non-blocking DMA mode. -*/ -void Adafruit_SPITFT::writePixels(uint16_t *colors, uint32_t len, bool block, - bool bigEndian) { - - if (!len) - return; // Avoid 0-byte transfers - - // avoid paramater-not-used complaints - (void)block; - (void)bigEndian; - -#if defined(ESP32) - if (connection == TFT_HARD_SPI) { - if (!bigEndian) { - hwspi._spi->writePixels(colors, len * 2); // Inbuilt endian-swap - } else { - hwspi._spi->writeBytes((uint8_t *)colors, len * 2); // Issue bytes direct - } - return; - } -#elif defined(ARDUINO_NRF52_ADAFRUIT) && \ - defined(NRF52840_XXAA) // Adafruit nRF52 use SPIM3 DMA at 32Mhz - if (!bigEndian) { - swapBytes(colors, len); // convert little-to-big endian for display - } - hwspi._spi->transfer(colors, NULL, 2 * len); // NULL RX to avoid overwrite - if (!bigEndian) { - swapBytes(colors, len); // big-to-little endian to restore pixel buffer - } - - return; -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - - if (!bigEndian) { - // switch to 16-bit writes - hw_write_masked(&spi_get_hw(pi_spi)->cr0, 15 << SPI_SSPCR0_DSS_LSB, - SPI_SSPCR0_DSS_BITS); - spi_write16_blocking(pi_spi, colors, len); - // switch back to 8-bit - hw_write_masked(&spi_get_hw(pi_spi)->cr0, 7 << SPI_SSPCR0_DSS_LSB, - SPI_SSPCR0_DSS_BITS); - } else { - spi_write_blocking(pi_spi, (uint8_t *)colors, len * 2); - } - return; -#elif defined(ARDUINO_ARCH_RTTHREAD) - if (!bigEndian) { - swapBytes(colors, len); // convert little-to-big endian for display - } - hwspi._spi->transfer(colors, 2 * len); - if (!bigEndian) { - swapBytes(colors, len); // big-to-little endian to restore pixel buffer - } - return; -#elif defined(USE_SPI_DMA) && \ - (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - if ((connection == TFT_HARD_SPI) || (connection == TFT_PARALLEL)) { - int maxSpan = maxFillLen / 2; // One scanline max - uint8_t pixelBufIdx = 0; // Active pixel buffer number -#if defined(__SAMD51__) - if (connection == TFT_PARALLEL) { - // Switch WR pin to PWM or CCL - pinPeripheral(tft8._wr, wrPeripheral); - } -#endif // end __SAMD51__ - if (!bigEndian) { // Normal little-endian situation... - while (len) { - int count = (len < maxSpan) ? len : maxSpan; - - // Because TFT and SAMD endianisms are different, must swap - // bytes from the 'colors' array passed into a DMA working - // buffer. This can take place while the prior DMA transfer - // is in progress, hence the need for two pixelBufs. - swapBytes(colors, count, pixelBuf[pixelBufIdx]); - colors += count; - - // The transfers themselves are relatively small, so we don't - // need a long descriptor list. We just alternate between the - // first two, sharing pixelBufIdx for that purpose. - descriptor[pixelBufIdx].SRCADDR.reg = - (uint32_t)pixelBuf[pixelBufIdx] + count * 2; - descriptor[pixelBufIdx].BTCTRL.bit.SRCINC = 1; - descriptor[pixelBufIdx].BTCNT.reg = count * 2; - descriptor[pixelBufIdx].DESCADDR.reg = 0; - - while (dma_busy) - ; // Wait for prior line to finish - - // Move new descriptor into place... - memcpy(dptr, &descriptor[pixelBufIdx], sizeof(DmacDescriptor)); - dma_busy = true; - dma.startJob(); // Trigger SPI DMA transfer - if (connection == TFT_PARALLEL) - dma.trigger(); - pixelBufIdx = 1 - pixelBufIdx; // Swap DMA pixel buffers - - len -= count; - } - } else { // bigEndian == true - // With big-endian pixel data, this can be handled as a single - // DMA transfer using chained descriptors. Even full screen, this - // needs only a relatively short descriptor list, each - // transferring a max of 32,767 (not 32,768) pixels. The list - // was allocated large enough to accommodate a full screen's - // worth of data, so this won't run past the end of the list. - int d, numDescriptors = (len + 32766) / 32767; - for (d = 0; d < numDescriptors; d++) { - int count = (len < 32767) ? len : 32767; - descriptor[d].SRCADDR.reg = (uint32_t)colors + count * 2; - descriptor[d].BTCTRL.bit.SRCINC = 1; - descriptor[d].BTCNT.reg = count * 2; - descriptor[d].DESCADDR.reg = (uint32_t)&descriptor[d + 1]; - len -= count; - colors += count; - } - descriptor[d - 1].DESCADDR.reg = 0; - - while (dma_busy) - ; // Wait for prior transfer (if any) to finish - - // Move first descriptor into place and start transfer... - memcpy(dptr, &descriptor[0], sizeof(DmacDescriptor)); - dma_busy = true; - dma.startJob(); // Trigger SPI DMA transfer - if (connection == TFT_PARALLEL) - dma.trigger(); - } // end bigEndian - - lastFillColor = 0x0000; // pixelBuf has been sullied - lastFillLen = 0; - if (block) { - while (dma_busy) - ; // Wait for last line to complete -#if defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO) - if (connection == TFT_HARD_SPI) { - // See SAMD51/21 note in writeColor() - hwspi._spi->setDataMode(hwspi._mode); - } else { - pinPeripheral(tft8._wr, PIO_OUTPUT); // Switch WR back to GPIO - } -#endif // end __SAMD51__ || ARDUINO_SAMD_ZERO - } - return; - } -#endif // end USE_SPI_DMA - - // All other cases (bitbang SPI or non-DMA hard SPI or parallel), - // use a loop with the normal 16-bit data write function: - - if (!bigEndian) { - while (len--) { - SPI_WRITE16(*colors++); - } - } else { - // Well this is awkward. SPI_WRITE16() was designed for little-endian - // hosts and big-endian displays as that's nearly always the typical - // case. If the bigEndian flag was set, data is already in display's - // order...so each pixel needs byte-swapping before being issued. - // Rather than having a separate big-endian SPI_WRITE16 (adding more - // bloat), it's preferred if calling function is smart and only uses - // bigEndian where DMA is supported. But we gotta handle this... - while (len--) { - SPI_WRITE16(__builtin_bswap16(*colors++)); - } - } -} - -/*! - @brief Wait for the last DMA transfer in a prior non-blocking - writePixels() call to complete. This does nothing if DMA - is not enabled, and is not needed if blocking writePixels() - was used (as is the default case). -*/ -void Adafruit_SPITFT::dmaWait(void) { -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - while (dma_busy) - ; -#if defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO) - if (connection == TFT_HARD_SPI) { - // See SAMD51/21 note in writeColor() - hwspi._spi->setDataMode(hwspi._mode); - } else { - pinPeripheral(tft8._wr, PIO_OUTPUT); // Switch WR back to GPIO - } -#endif // end __SAMD51__ || ARDUINO_SAMD_ZERO -#endif -} - -/*! - @brief Check if DMA transfer is active. Always returts false if DMA - is not enabled. - @return true if DMA is enabled and transmitting data, false otherwise. -*/ -bool Adafruit_SPITFT::dmaBusy(void) const { -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - return dma_busy; -#else - return false; -#endif -} - -/*! - @brief Issue a series of pixels, all the same color. Not self- - contained; should follow startWrite() and setAddrWindow() calls. - @param color 16-bit pixel color in '565' RGB format. - @param len Number of pixels to draw. -*/ -void Adafruit_SPITFT::writeColor(uint16_t color, uint32_t len) { - - if (!len) - return; // Avoid 0-byte transfers - - uint8_t hi = color >> 8, lo = color; - -#if defined(ESP32) // ESP32 has a special SPI pixel-writing function... - if (connection == TFT_HARD_SPI) { -#define SPI_MAX_PIXELS_AT_ONCE 32 -#define TMPBUF_LONGWORDS (SPI_MAX_PIXELS_AT_ONCE + 1) / 2 -#define TMPBUF_PIXELS (TMPBUF_LONGWORDS * 2) - static uint32_t temp[TMPBUF_LONGWORDS]; - uint32_t c32 = color * 0x00010001; - uint16_t bufLen = (len < TMPBUF_PIXELS) ? len : TMPBUF_PIXELS, xferLen, - fillLen; - // Fill temp buffer 32 bits at a time - fillLen = (bufLen + 1) / 2; // Round up to next 32-bit boundary - for (uint32_t t = 0; t < fillLen; t++) { - temp[t] = c32; - } - // Issue pixels in blocks from temp buffer - while (len) { // While pixels remain - xferLen = (bufLen < len) ? bufLen : len; // How many this pass? - writePixels((uint16_t *)temp, xferLen); - len -= xferLen; - } - return; - } -#elif defined(ARDUINO_NRF52_ADAFRUIT) && \ - defined(NRF52840_XXAA) // Adafruit nRF52840 use SPIM3 DMA at 32Mhz - // at most 2 scan lines - uint32_t const pixbufcount = min(len, ((uint32_t)2 * width())); - uint16_t *pixbuf = (uint16_t *)rtos_malloc(2 * pixbufcount); - - // use SPI3 DMA if we could allocate buffer, else fall back to writing each - // pixel loop below - if (pixbuf) { - uint16_t const swap_color = __builtin_bswap16(color); - - // fill buffer with color - for (uint32_t i = 0; i < pixbufcount; i++) { - pixbuf[i] = swap_color; - } - - while (len) { - uint32_t const count = min(len, pixbufcount); - writePixels(pixbuf, count, true, true); - len -= count; - } - - rtos_free(pixbuf); - return; - } -#elif defined(ARDUINO_ARCH_RTTHREAD) - uint16_t pixbufcount; - uint16_t *pixbuf; - int16_t lines = height() / 4; -#define QUICKPATH_MAX_LEN 16 - uint16_t quickpath_buffer[QUICKPATH_MAX_LEN]; - - do { - pixbufcount = min(len, (lines * width())); - if (pixbufcount > QUICKPATH_MAX_LEN) { - pixbuf = (uint16_t *)rt_malloc(2 * pixbufcount); - } else { - pixbuf = quickpath_buffer; - } - lines -= 2; - } while (!pixbuf && lines > 0); - - if (pixbuf) { - uint16_t const swap_color = __builtin_bswap16(color); - - while (len) { - uint16_t count = min(len, pixbufcount); - // fill buffer with color - for (uint16_t i = 0; i < count; i++) { - pixbuf[i] = swap_color; - } - // Don't need to swap color inside the function - // It has been done outside this function - writePixels(pixbuf, count, true, true); - len -= count; - } - if (pixbufcount > QUICKPATH_MAX_LEN) { - rt_free(pixbuf); - } -#undef QUICKPATH_MAX_LEN - return; - } -#else // !ESP32 -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) - if (((connection == TFT_HARD_SPI) || (connection == TFT_PARALLEL)) && - (len >= 16)) { // Don't bother with DMA on short pixel runs - int i, d, numDescriptors; - if (hi == lo) { // If high & low bytes are same... - onePixelBuf = color; - // Can do this with a relatively short descriptor list, - // each transferring a max of 32,767 (not 32,768) pixels. - // This won't run off the end of the allocated descriptor list, - // since we're using much larger chunks per descriptor here. - numDescriptors = (len + 32766) / 32767; - for (d = 0; d < numDescriptors; d++) { - int count = (len < 32767) ? len : 32767; - descriptor[d].SRCADDR.reg = (uint32_t)&onePixelBuf; - descriptor[d].BTCTRL.bit.SRCINC = 0; - descriptor[d].BTCNT.reg = count * 2; - descriptor[d].DESCADDR.reg = (uint32_t)&descriptor[d + 1]; - len -= count; - } - descriptor[d - 1].DESCADDR.reg = 0; - } else { - // If high and low bytes are distinct, it's necessary to fill - // a buffer with pixel data (swapping high and low bytes because - // TFT and SAMD are different endianisms) and create a longer - // descriptor list pointing repeatedly to this data. We can do - // this slightly faster working 2 pixels (32 bits) at a time. - uint32_t *pixelPtr = (uint32_t *)pixelBuf[0], - twoPixels = __builtin_bswap16(color) * 0x00010001; - // We can avoid some or all of the buffer-filling if the color - // is the same as last time... - if (color == lastFillColor) { - // If length is longer than prior instance, fill only the - // additional pixels in the buffer and update lastFillLen. - if (len > lastFillLen) { - int fillStart = lastFillLen / 2, - fillEnd = (((len < maxFillLen) ? len : maxFillLen) + 1) / 2; - for (i = fillStart; i < fillEnd; i++) - pixelPtr[i] = twoPixels; - lastFillLen = fillEnd * 2; - } // else do nothing, don't set pixels or change lastFillLen - } else { - int fillEnd = (((len < maxFillLen) ? len : maxFillLen) + 1) / 2; - for (i = 0; i < fillEnd; i++) - pixelPtr[i] = twoPixels; - lastFillLen = fillEnd * 2; - lastFillColor = color; - } - - numDescriptors = (len + maxFillLen - 1) / maxFillLen; - for (d = 0; d < numDescriptors; d++) { - int pixels = (len < maxFillLen) ? len : maxFillLen, bytes = pixels * 2; - descriptor[d].SRCADDR.reg = (uint32_t)pixelPtr + bytes; - descriptor[d].BTCTRL.bit.SRCINC = 1; - descriptor[d].BTCNT.reg = bytes; - descriptor[d].DESCADDR.reg = (uint32_t)&descriptor[d + 1]; - len -= pixels; - } - descriptor[d - 1].DESCADDR.reg = 0; - } - memcpy(dptr, &descriptor[0], sizeof(DmacDescriptor)); -#if defined(__SAMD51__) - if (connection == TFT_PARALLEL) { - // Switch WR pin to PWM or CCL - pinPeripheral(tft8._wr, wrPeripheral); - } -#endif // end __SAMD51__ - - dma_busy = true; - dma.startJob(); - if (connection == TFT_PARALLEL) - dma.trigger(); - while (dma_busy) - ; // Wait for completion - // Unfortunately blocking is necessary. An earlier version returned - // immediately and checked dma_busy on startWrite() instead, but it - // turns out to be MUCH slower on many graphics operations (as when - // drawing lines, pixel-by-pixel), perhaps because it's a volatile - // type and doesn't cache. Working on this. -#if defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO) - if (connection == TFT_HARD_SPI) { - // SAMD51: SPI DMA seems to leave the SPI peripheral in a freaky - // state on completion. Workaround is to explicitly set it back... - // (5/17/2019: apparently SAMD21 too, in certain cases, observed - // with ST7789 display.) - hwspi._spi->setDataMode(hwspi._mode); - } else { - pinPeripheral(tft8._wr, PIO_OUTPUT); // Switch WR back to GPIO - } -#endif // end __SAMD51__ - return; - } -#endif // end USE_SPI_DMA -#endif // end !ESP32 - - // All other cases (non-DMA hard SPI, bitbang SPI, parallel)... - - if (connection == TFT_HARD_SPI) { -#if defined(ESP8266) - do { - uint32_t pixelsThisPass = len; - if (pixelsThisPass > 50000) - pixelsThisPass = 50000; - len -= pixelsThisPass; - delay(1); // Periodic delay on long fills - while (pixelsThisPass--) { - hwspi._spi->write(hi); - hwspi._spi->write(lo); - } - } while (len); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - color = __builtin_bswap16(color); - - while (len--) - spi_write_blocking(pi_spi, (uint8_t *)&color, 2); -#else // !ESP8266 && !ARDUINO_ARCH_RP2040 - while (len--) { -#if defined(__AVR__) - AVR_WRITESPI(hi); - AVR_WRITESPI(lo); -#elif defined(ESP32) - hwspi._spi->write(hi); - hwspi._spi->write(lo); -#else - hwspi._spi->transfer(hi); - hwspi._spi->transfer(lo); -#endif - } -#endif // end !ESP8266 - } else if (connection == TFT_SOFT_SPI) { -#if defined(ESP8266) - do { - uint32_t pixelsThisPass = len; - if (pixelsThisPass > 20000) - pixelsThisPass = 20000; - len -= pixelsThisPass; - yield(); // Periodic yield() on long fills - while (pixelsThisPass--) { - for (uint16_t bit = 0, x = color; bit < 16; bit++) { - if (x & 0x8000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - x <<= 1; - } - } - } while (len); -#else // !ESP8266 - while (len--) { -#if defined(__AVR__) - for (uint8_t bit = 0, x = hi; bit < 8; bit++) { - if (x & 0x80) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - x <<= 1; - } - for (uint8_t bit = 0, x = lo; bit < 8; bit++) { - if (x & 0x80) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - x <<= 1; - } -#else // !__AVR__ - for (uint16_t bit = 0, x = color; bit < 16; bit++) { - if (x & 0x8000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - x <<= 1; - SPI_SCK_LOW(); - } -#endif // end !__AVR__ - } -#endif // end !ESP8266 - } else { // PARALLEL - if (hi == lo) { -#if defined(__AVR__) - len *= 2; - *tft8.writePort = hi; - while (len--) { - TFT_WR_STROBE(); - } -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - len *= 2; - *tft8.writePort = hi; - } else { - *(volatile uint16_t *)tft8.writePort = color; - } - while (len--) { - TFT_WR_STROBE(); - } -#endif - } else { - while (len--) { -#if defined(__AVR__) - *tft8.writePort = hi; - TFT_WR_STROBE(); - *tft8.writePort = lo; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - *tft8.writePort = hi; - TFT_WR_STROBE(); - *tft8.writePort = lo; - } else { - *(volatile uint16_t *)tft8.writePort = color; - } -#endif - TFT_WR_STROBE(); - } - } - } -} - -/*! - @brief Draw a filled rectangle to the display. Not self-contained; - should follow startWrite(). Typically used by higher-level - graphics primitives; user code shouldn't need to call this and - is likely to use the self-contained fillRect() instead. - writeFillRect() performs its own edge clipping and rejection; - see writeFillRectPreclipped() for a more 'raw' implementation. - @param x Horizontal position of first corner. - @param y Vertical position of first corner. - @param w Rectangle width in pixels (positive = right of first - corner, negative = left of first corner). - @param h Rectangle height in pixels (positive = below first - corner, negative = above first corner). - @param color 16-bit fill color in '565' RGB format. - @note Written in this deep-nested way because C by definition will - optimize for the 'if' case, not the 'else' -- avoids branches - and rejects clipped rectangles at the least-work possibility. -*/ -void Adafruit_SPITFT::writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - if (w && h) { // Nonzero width and height? - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Rectangle partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (x2 >= _width) { - w = _width - x; - } // Clip right - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - writeFillRectPreclipped(x, y, w, h, color); - } - } - } - } - } -} - -/*! - @brief Draw a horizontal line on the display. Performs edge clipping - and rejection. Not self-contained; should follow startWrite(). - Typically used by higher-level graphics primitives; user code - shouldn't need to call this and is likely to use the self- - contained drawFastHLine() instead. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param w Line width in pixels (positive = right of first point, - negative = point of first corner). - @param color 16-bit line color in '565' RGB format. -*/ -void inline Adafruit_SPITFT::writeFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if ((y >= 0) && (y < _height) && w) { // Y on screen, nonzero width - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - // Line partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (x2 >= _width) { - w = _width - x; - } // Clip right - writeFillRectPreclipped(x, y, w, 1, color); - } - } - } -} - -/*! - @brief Draw a vertical line on the display. Performs edge clipping and - rejection. Not self-contained; should follow startWrite(). - Typically used by higher-level graphics primitives; user code - shouldn't need to call this and is likely to use the self- - contained drawFastVLine() instead. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param h Line height in pixels (positive = below first point, - negative = above first point). - @param color 16-bit line color in '565' RGB format. -*/ -void inline Adafruit_SPITFT::writeFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if ((x >= 0) && (x < _width) && h) { // X on screen, nonzero height - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Line partly or fully overlaps screen - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - writeFillRectPreclipped(x, y, 1, h, color); - } - } - } -} - -/*! - @brief A lower-level version of writeFillRect(). This version requires - all inputs are in-bounds, that width and height are positive, - and no part extends offscreen. NO EDGE CLIPPING OR REJECTION IS - PERFORMED. If higher-level graphics primitives are written to - handle their own clipping earlier in the drawing process, this - can avoid unnecessary function calls and repeated clipping - operations in the lower-level functions. - @param x Horizontal position of first corner. MUST BE WITHIN - SCREEN BOUNDS. - @param y Vertical position of first corner. MUST BE WITHIN SCREEN - BOUNDS. - @param w Rectangle width in pixels. MUST BE POSITIVE AND NOT - EXTEND OFF SCREEN. - @param h Rectangle height in pixels. MUST BE POSITIVE AND NOT - EXTEND OFF SCREEN. - @param color 16-bit fill color in '565' RGB format. - @note This is a new function, no graphics primitives besides rects - and horizontal/vertical lines are written to best use this yet. -*/ -inline void Adafruit_SPITFT::writeFillRectPreclipped(int16_t x, int16_t y, - int16_t w, int16_t h, - uint16_t color) { - setAddrWindow(x, y, w, h); - writeColor(color, (uint32_t)w * h); -} - -// ------------------------------------------------------------------------- -// Ever-so-slightly higher-level graphics operations. Similar to the 'write' -// functions above, but these contain their own chip-select and SPI -// transactions as needed (via startWrite(), endWrite()). They're typically -// used solo -- as graphics primitives in themselves, not invoked by higher- -// level primitives (which should use the functions above for better -// performance). - -/*! - @brief Draw a single pixel to the display at requested coordinates. - Self-contained and provides its own transaction as needed - (see writePixel(x,y,color) for a lower-level variant). - Edge clipping is performed here. - @param x Horizontal position (0 = left). - @param y Vertical position (0 = top). - @param color 16-bit pixel color in '565' RGB format. -*/ -void Adafruit_SPITFT::drawPixel(int16_t x, int16_t y, uint16_t color) { - // Clip first... - if ((x >= 0) && (x < _width) && (y >= 0) && (y < _height)) { - // THEN set up transaction (if needed) and draw... - startWrite(); - setAddrWindow(x, y, 1, 1); - SPI_WRITE16(color); - endWrite(); - } -} - -/*! - @brief Draw a filled rectangle to the display. Self-contained and - provides its own transaction as needed (see writeFillRect() or - writeFillRectPreclipped() for lower-level variants). Edge - clipping and rejection is performed here. - @param x Horizontal position of first corner. - @param y Vertical position of first corner. - @param w Rectangle width in pixels (positive = right of first - corner, negative = left of first corner). - @param h Rectangle height in pixels (positive = below first - corner, negative = above first corner). - @param color 16-bit fill color in '565' RGB format. - @note This repeats the writeFillRect() function almost in its entirety, - with the addition of a transaction start/end. It's done this way - (rather than starting the transaction and calling writeFillRect() - to handle clipping and so forth) so that the transaction isn't - performed at all if the rectangle is rejected. It's really not - that much code. -*/ -void Adafruit_SPITFT::fillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color) { - if (w && h) { // Nonzero width and height? - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Rectangle partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (x2 >= _width) { - w = _width - x; - } // Clip right - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - startWrite(); - writeFillRectPreclipped(x, y, w, h, color); - endWrite(); - } - } - } - } - } -} - -/*! - @brief Draw a horizontal line on the display. Self-contained and - provides its own transaction as needed (see writeFastHLine() for - a lower-level variant). Edge clipping and rejection is performed - here. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param w Line width in pixels (positive = right of first point, - negative = point of first corner). - @param color 16-bit line color in '565' RGB format. - @note This repeats the writeFastHLine() function almost in its - entirety, with the addition of a transaction start/end. It's - done this way (rather than starting the transaction and calling - writeFastHLine() to handle clipping and so forth) so that the - transaction isn't performed at all if the line is rejected. -*/ -void Adafruit_SPITFT::drawFastHLine(int16_t x, int16_t y, int16_t w, - uint16_t color) { - if ((y >= 0) && (y < _height) && w) { // Y on screen, nonzero width - if (w < 0) { // If negative width... - x += w + 1; // Move X to left edge - w = -w; // Use positive width - } - if (x < _width) { // Not off right - int16_t x2 = x + w - 1; - if (x2 >= 0) { // Not off left - // Line partly or fully overlaps screen - if (x < 0) { - x = 0; - w = x2 + 1; - } // Clip left - if (x2 >= _width) { - w = _width - x; - } // Clip right - startWrite(); - writeFillRectPreclipped(x, y, w, 1, color); - endWrite(); - } - } - } -} - -/*! - @brief Draw a vertical line on the display. Self-contained and provides - its own transaction as needed (see writeFastHLine() for a lower- - level variant). Edge clipping and rejection is performed here. - @param x Horizontal position of first point. - @param y Vertical position of first point. - @param h Line height in pixels (positive = below first point, - negative = above first point). - @param color 16-bit line color in '565' RGB format. - @note This repeats the writeFastVLine() function almost in its - entirety, with the addition of a transaction start/end. It's - done this way (rather than starting the transaction and calling - writeFastVLine() to handle clipping and so forth) so that the - transaction isn't performed at all if the line is rejected. -*/ -void Adafruit_SPITFT::drawFastVLine(int16_t x, int16_t y, int16_t h, - uint16_t color) { - if ((x >= 0) && (x < _width) && h) { // X on screen, nonzero height - if (h < 0) { // If negative height... - y += h + 1; // Move Y to top edge - h = -h; // Use positive height - } - if (y < _height) { // Not off bottom - int16_t y2 = y + h - 1; - if (y2 >= 0) { // Not off top - // Line partly or fully overlaps screen - if (y < 0) { - y = 0; - h = y2 + 1; - } // Clip top - if (y2 >= _height) { - h = _height - y; - } // Clip bottom - startWrite(); - writeFillRectPreclipped(x, y, 1, h, color); - endWrite(); - } - } - } -} - -/*! - @brief Essentially writePixel() with a transaction around it. I don't - think this is in use by any of our code anymore (believe it was - for some older BMP-reading examples), but is kept here in case - any user code relies on it. Consider it DEPRECATED. - @param color 16-bit pixel color in '565' RGB format. -*/ -void Adafruit_SPITFT::pushColor(uint16_t color) { - startWrite(); - SPI_WRITE16(color); - endWrite(); -} - -/*! - @brief Draw a 16-bit image (565 RGB) at the specified (x,y) position. - For 16-bit display devices; no color reduction performed. - Adapted from https://github.com/PaulStoffregen/ILI9341_t3 - by Marc MERLIN. See examples/pictureEmbed to use this. - 5/6/2017: function name and arguments have changed for - compatibility with current GFX library and to avoid naming - problems in prior implementation. Formerly drawBitmap() with - arguments in different order. Handles its own transaction and - edge clipping/rejection. - @param x Top left corner horizontal coordinate. - @param y Top left corner vertical coordinate. - @param pcolors Pointer to 16-bit array of pixel values. - @param w Width of bitmap in pixels. - @param h Height of bitmap in pixels. -*/ -void Adafruit_SPITFT::drawRGBBitmap(int16_t x, int16_t y, uint16_t *pcolors, - int16_t w, int16_t h) { - - int16_t x2, y2; // Lower-right coord - if ((x >= _width) || // Off-edge right - (y >= _height) || // " top - ((x2 = (x + w - 1)) < 0) || // " left - ((y2 = (y + h - 1)) < 0)) - return; // " bottom - - int16_t bx1 = 0, by1 = 0, // Clipped top-left within bitmap - saveW = w; // Save original bitmap width value - if (x < 0) { // Clip left - w += x; - bx1 = -x; - x = 0; - } - if (y < 0) { // Clip top - h += y; - by1 = -y; - y = 0; - } - if (x2 >= _width) - w = _width - x; // Clip right - if (y2 >= _height) - h = _height - y; // Clip bottom - - pcolors += by1 * saveW + bx1; // Offset bitmap ptr to clipped top-left - startWrite(); - setAddrWindow(x, y, w, h); // Clipped area - while (h--) { // For each (clipped) scanline... - writePixels(pcolors, w); // Push one (clipped) row - pcolors += saveW; // Advance pointer by one full (unclipped) line - } - endWrite(); -} - -// ------------------------------------------------------------------------- -// Miscellaneous class member functions that don't draw anything. - -/*! - @brief Invert the colors of the display (if supported by hardware). - Self-contained, no transaction setup required. - @param i true = inverted display, false = normal display. -*/ -void Adafruit_SPITFT::invertDisplay(bool i) { - startWrite(); - writeCommand(i ? invertOnCommand : invertOffCommand); - endWrite(); -} - -/*! - @brief Given 8-bit red, green and blue values, return a 'packed' - 16-bit color value in '565' RGB format (5 bits red, 6 bits - green, 5 bits blue). This is just a mathematical operation, - no hardware is touched. - @param red 8-bit red brightnesss (0 = off, 255 = max). - @param green 8-bit green brightnesss (0 = off, 255 = max). - @param blue 8-bit blue brightnesss (0 = off, 255 = max). - @return 'Packed' 16-bit color value (565 format). -*/ -uint16_t Adafruit_SPITFT::color565(uint8_t red, uint8_t green, uint8_t blue) { - return ((red & 0xF8) << 8) | ((green & 0xFC) << 3) | (blue >> 3); -} - -/*! -@brief Adafruit_SPITFT Send Command handles complete sending of commands and -data -@param commandByte The Command Byte -@param dataBytes A pointer to the Data bytes to send -@param numDataBytes The number of bytes we should send -*/ -void Adafruit_SPITFT::sendCommand(uint8_t commandByte, uint8_t *dataBytes, - uint8_t numDataBytes) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); - - SPI_DC_LOW(); // Command mode - spiWrite(commandByte); // Send the command byte - - SPI_DC_HIGH(); - for (int i = 0; i < numDataBytes; i++) { - if ((connection == TFT_PARALLEL) && tft8.wide) { - SPI_WRITE16(*(uint16_t *)dataBytes); - dataBytes += 2; - } else { - spiWrite(*dataBytes); // Send the data bytes - dataBytes++; - } - } - - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -/*! - @brief Adafruit_SPITFT Send Command handles complete sending of commands and - data - @param commandByte The Command Byte - @param dataBytes A pointer to the Data bytes to send - @param numDataBytes The number of bytes we should send - */ -void Adafruit_SPITFT::sendCommand(uint8_t commandByte, const uint8_t *dataBytes, - uint8_t numDataBytes) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); - - SPI_DC_LOW(); // Command mode - spiWrite(commandByte); // Send the command byte - - SPI_DC_HIGH(); - for (int i = 0; i < numDataBytes; i++) { - if ((connection == TFT_PARALLEL) && tft8.wide) { - SPI_WRITE16(*(uint16_t *)dataBytes); - dataBytes += 2; - } else { - spiWrite(pgm_read_byte(dataBytes++)); - } - } - - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -/*! - @brief Adafruit_SPITFT sendCommand16 handles complete sending of - commands and data for 16-bit parallel displays. Currently somewhat - rigged for the NT35510, which has the odd behavior of wanting - commands 16-bit, but subsequent data as 8-bit values, despite - the 16-bit bus (high byte is always 0). Also seems to require - issuing and incrementing address with each transfer. - @param commandWord The command word (16 bits) - @param dataBytes A pointer to the data bytes to send - @param numDataBytes The number of bytes we should send - */ -void Adafruit_SPITFT::sendCommand16(uint16_t commandWord, - const uint8_t *dataBytes, - uint8_t numDataBytes) { - SPI_BEGIN_TRANSACTION(); - if (_cs >= 0) - SPI_CS_LOW(); - - if (numDataBytes == 0) { - SPI_DC_LOW(); // Command mode - SPI_WRITE16(commandWord); // Send the command word - SPI_DC_HIGH(); // Data mode - } - for (int i = 0; i < numDataBytes; i++) { - SPI_DC_LOW(); // Command mode - SPI_WRITE16(commandWord); // Send the command word - SPI_DC_HIGH(); // Data mode - commandWord++; - SPI_WRITE16((uint16_t)pgm_read_byte(dataBytes++)); - } - - if (_cs >= 0) - SPI_CS_HIGH(); - SPI_END_TRANSACTION(); -} - -/*! - @brief Read 8 bits of data from display configuration memory (not RAM). - This is highly undocumented/supported and should be avoided, - function is only included because some of the examples use it. - @param commandByte - The command register to read data from. - @param index - The byte index into the command to read from. - @return Unsigned 8-bit data read from display register. - */ -/**************************************************************************/ -uint8_t Adafruit_SPITFT::readcommand8(uint8_t commandByte, uint8_t index) { - uint8_t result; - startWrite(); - SPI_DC_LOW(); // Command mode - spiWrite(commandByte); - SPI_DC_HIGH(); // Data mode - do { - result = spiRead(); - } while (index--); // Discard bytes up to index'th - endWrite(); - return result; -} - -/*! - @brief Read 16 bits of data from display register. - For 16-bit parallel displays only. - @param addr Command/register to access. - @return Unsigned 16-bit data. - */ -uint16_t Adafruit_SPITFT::readcommand16(uint16_t addr) { -#if defined(USE_FAST_PINIO) // NOT SUPPORTED without USE_FAST_PINIO - uint16_t result = 0; - if ((connection == TFT_PARALLEL) && tft8.wide) { - startWrite(); - SPI_DC_LOW(); // Command mode - SPI_WRITE16(addr); - SPI_DC_HIGH(); // Data mode - TFT_RD_LOW(); // Read line LOW -#if defined(HAS_PORT_SET_CLR) - *(volatile uint16_t *)tft8.dirClr = 0xFFFF; // Input state - result = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; // Output state -#else // !HAS_PORT_SET_CLR - *(volatile uint16_t *)tft8.portDir = 0x0000; // Input state - result = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.portDir = 0xFFFF; // Output state -#endif // end !HAS_PORT_SET_CLR - TFT_RD_HIGH(); // Read line HIGH - endWrite(); - } - return result; -#else - (void)addr; // disable -Wunused-parameter warning - return 0; -#endif // end !USE_FAST_PINIO -} - -// ------------------------------------------------------------------------- -// Lowest-level hardware-interfacing functions. Many of these are inline and -// compile to different things based on #defines -- typically just a few -// instructions. Others, not so much, those are not inlined. - -/*! - @brief Start an SPI transaction if using the hardware SPI interface to - the display. If using an earlier version of the Arduino platform - (before the addition of SPI transactions), this instead attempts - to set up the SPI clock and mode. No action is taken if the - connection is not hardware SPI-based. This does NOT include a - chip-select operation -- see startWrite() for a function that - encapsulated both actions. -*/ -inline void Adafruit_SPITFT::SPI_BEGIN_TRANSACTION(void) { - if (connection == TFT_HARD_SPI) { -#if defined(SPI_HAS_TRANSACTION) - hwspi._spi->beginTransaction(hwspi.settings); -#else // No transactions, configure SPI manually... -#if defined(__AVR__) || defined(TEENSYDUINO) || defined(ARDUINO_ARCH_STM32F1) - hwspi._spi->setClockDivider(SPI_CLOCK_DIV2); -#elif defined(__arm__) - hwspi._spi->setClockDivider(11); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->setFrequency(hwspi._freq); -#elif defined(RASPI) || defined(ARDUINO_ARCH_STM32F1) - hwspi._spi->setClock(hwspi._freq); -#endif - hwspi._spi->setBitOrder(MSBFIRST); - hwspi._spi->setDataMode(hwspi._mode); -#endif // end !SPI_HAS_TRANSACTION - } -} - -/*! - @brief End an SPI transaction if using the hardware SPI interface to - the display. No action is taken if the connection is not - hardware SPI-based or if using an earlier version of the Arduino - platform (before the addition of SPI transactions). This does - NOT include a chip-deselect operation -- see endWrite() for a - function that encapsulated both actions. -*/ -inline void Adafruit_SPITFT::SPI_END_TRANSACTION(void) { -#if defined(SPI_HAS_TRANSACTION) - if (connection == TFT_HARD_SPI) { - hwspi._spi->endTransaction(); - } -#endif -} - -/*! - @brief Issue a single 8-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the byte. This is another of - those functions in the library with a now-not-accurate name - that's being maintained for compatibility with outside code. - This function is used even if display connection is parallel. - @param b 8-bit value to write. -*/ -void Adafruit_SPITFT::spiWrite(uint8_t b) { - if (connection == TFT_HARD_SPI) { -#if defined(__AVR__) - AVR_WRITESPI(b); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->write(b); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - spi_write_blocking(pi_spi, &b, 1); -#else - hwspi._spi->transfer(b); -#endif - } else if (connection == TFT_SOFT_SPI) { - for (uint8_t bit = 0; bit < 8; bit++) { - if (b & 0x80) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - b <<= 1; - SPI_SCK_LOW(); - } - } else { // TFT_PARALLEL -#if defined(__AVR__) - *tft8.writePort = b; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) - *tft8.writePort = b; - else - *(volatile uint16_t *)tft8.writePort = b; -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Write a single command byte to the display. Chip-select and - transaction must have been previously set -- this ONLY sets - the device to COMMAND mode, issues the byte and then restores - DATA mode. There is no corresponding explicit writeData() - function -- just use spiWrite(). - @param cmd 8-bit command to write. -*/ -void Adafruit_SPITFT::writeCommand(uint8_t cmd) { - SPI_DC_LOW(); - spiWrite(cmd); - SPI_DC_HIGH(); -} - -/*! - @brief Read a single 8-bit value from the display. Chip-select and - transaction must have been previously set -- this ONLY reads - the byte. This is another of those functions in the library - with a now-not-accurate name that's being maintained for - compatibility with outside code. This function is used even if - display connection is parallel. - @return Unsigned 8-bit value read (always zero if USE_FAST_PINIO is - not supported by the MCU architecture). -*/ -uint8_t Adafruit_SPITFT::spiRead(void) { - uint8_t b = 0; - uint16_t w = 0; - if (connection == TFT_HARD_SPI) { - return hwspi._spi->transfer((uint8_t)0); - } else if (connection == TFT_SOFT_SPI) { - if (swspi._miso >= 0) { - for (uint8_t i = 0; i < 8; i++) { - SPI_SCK_HIGH(); - b <<= 1; - if (SPI_MISO_READ()) - b++; - SPI_SCK_LOW(); - } - } - return b; - } else { // TFT_PARALLEL - if (tft8._rd >= 0) { -#if defined(USE_FAST_PINIO) - TFT_RD_LOW(); // Read line LOW -#if defined(__AVR__) - *tft8.portDir = 0x00; // Set port to input state - w = *tft8.readPort; // Read value from port - *tft8.portDir = 0xFF; // Restore port to output -#else // !__AVR__ - if (!tft8.wide) { // 8-bit TFT connection -#if defined(HAS_PORT_SET_CLR) - *tft8.dirClr = 0xFF; // Set port to input state - w = *tft8.readPort; // Read value from port - *tft8.dirSet = 0xFF; // Restore port to output -#else // !HAS_PORT_SET_CLR - *tft8.portDir = 0x00; // Set port to input state - w = *tft8.readPort; // Read value from port - *tft8.portDir = 0xFF; // Restore port to output -#endif // end HAS_PORT_SET_CLR - } else { // 16-bit TFT connection -#if defined(HAS_PORT_SET_CLR) - *(volatile uint16_t *)tft8.dirClr = 0xFFFF; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; // Output state -#else // !HAS_PORT_SET_CLR - *(volatile uint16_t *)tft8.portDir = 0x0000; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.portDir = 0xFFFF; // Output state -#endif // end !HAS_PORT_SET_CLR - } - TFT_RD_HIGH(); // Read line HIGH -#endif // end !__AVR__ -#else // !USE_FAST_PINIO - w = 0; // Parallel TFT is NOT SUPPORTED without USE_FAST_PINIO -#endif // end !USE_FAST_PINIO - } - return w; - } -} - -/*! - @brief Issue a single 16-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the word. - Thus operates ONLY on 'wide' (16-bit) parallel displays! - @param w 16-bit value to write. -*/ -void Adafruit_SPITFT::write16(uint16_t w) { - if (connection == TFT_PARALLEL) { -#if defined(USE_FAST_PINIO) - if (tft8.wide) - *(volatile uint16_t *)tft8.writePort = w; -#else - (void)w; // disable -Wunused-parameter warning -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Write a single command word to the display. Chip-select and - transaction must have been previously set -- this ONLY sets - the device to COMMAND mode, issues the byte and then restores - DATA mode. This operates ONLY on 'wide' (16-bit) parallel - displays! - @param cmd 16-bit command to write. -*/ -void Adafruit_SPITFT::writeCommand16(uint16_t cmd) { - SPI_DC_LOW(); - write16(cmd); - SPI_DC_HIGH(); -} - -/*! - @brief Read a single 16-bit value from the display. Chip-select and - transaction must have been previously set -- this ONLY reads - the byte. This operates ONLY on 'wide' (16-bit) parallel - displays! - @return Unsigned 16-bit value read (always zero if USE_FAST_PINIO is - not supported by the MCU architecture). -*/ -uint16_t Adafruit_SPITFT::read16(void) { - uint16_t w = 0; - if (connection == TFT_PARALLEL) { - if (tft8._rd >= 0) { -#if defined(USE_FAST_PINIO) - TFT_RD_LOW(); // Read line LOW - if (tft8.wide) { // 16-bit TFT connection -#if defined(HAS_PORT_SET_CLR) - *(volatile uint16_t *)tft8.dirClr = 0xFFFF; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.dirSet = 0xFFFF; // Output state -#else // !HAS_PORT_SET_CLR - *(volatile uint16_t *)tft8.portDir = 0x0000; // Input state - w = *(volatile uint16_t *)tft8.readPort; // 16-bit read - *(volatile uint16_t *)tft8.portDir = 0xFFFF; // Output state -#endif // end !HAS_PORT_SET_CLR - } - TFT_RD_HIGH(); // Read line HIGH -#else // !USE_FAST_PINIO - w = 0; // Parallel TFT is NOT SUPPORTED without USE_FAST_PINIO -#endif // end !USE_FAST_PINIO - } - } - return w; -} - -/*! - @brief Set the software (bitbang) SPI MOSI line HIGH. -*/ -inline void Adafruit_SPITFT::SPI_MOSI_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.mosiPortSet = 1; -#else // !KINETISK - *swspi.mosiPortSet = swspi.mosiPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.mosiPort |= swspi.mosiPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._mosi, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the software (bitbang) SPI MOSI line LOW. -*/ -inline void Adafruit_SPITFT::SPI_MOSI_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.mosiPortClr = 1; -#else // !KINETISK - *swspi.mosiPortClr = swspi.mosiPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.mosiPort &= swspi.mosiPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._mosi, LOW); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the software (bitbang) SPI SCK line HIGH. -*/ -inline void Adafruit_SPITFT::SPI_SCK_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.sckPortSet = 1; -#else // !KINETISK - *swspi.sckPortSet = swspi.sckPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.sckPort |= swspi.sckPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._sck, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the software (bitbang) SPI SCK line LOW. -*/ -inline void Adafruit_SPITFT::SPI_SCK_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *swspi.sckPortClr = 1; -#else // !KINETISK - *swspi.sckPortClr = swspi.sckPinMask; -#endif -#else // !HAS_PORT_SET_CLR - *swspi.sckPort &= swspi.sckPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(swspi._sck, LOW); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Read the state of the software (bitbang) SPI MISO line. - @return true if HIGH, false if LOW. -*/ -inline bool Adafruit_SPITFT::SPI_MISO_READ(void) { -#if defined(USE_FAST_PINIO) -#if defined(KINETISK) - return *swspi.misoPort; -#else // !KINETISK - return *swspi.misoPort & swspi.misoPinMask; -#endif // end !KINETISK -#else // !USE_FAST_PINIO - return digitalRead(swspi._miso); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Issue a single 16-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the word. Despite the name, - this function is used even if display connection is parallel; - name was maintaned for backward compatibility. Naming is also - not consistent with the 8-bit version, spiWrite(). Sorry about - that. Again, staying compatible with outside code. - @param w 16-bit value to write. -*/ -void Adafruit_SPITFT::SPI_WRITE16(uint16_t w) { - if (connection == TFT_HARD_SPI) { -#if defined(__AVR__) - AVR_WRITESPI(w >> 8); - AVR_WRITESPI(w); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->write16(w); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - w = __builtin_bswap16(w); - spi_write_blocking(pi_spi, (uint8_t *)&w, 2); -#elif defined(ARDUINO_ARCH_RTTHREAD) - hwspi._spi->transfer16(w); -#else - // MSB, LSB because TFTs are generally big-endian - hwspi._spi->transfer(w >> 8); - hwspi._spi->transfer(w); -#endif - } else if (connection == TFT_SOFT_SPI) { - for (uint8_t bit = 0; bit < 16; bit++) { - if (w & 0x8000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - w <<= 1; - } - } else { // TFT_PARALLEL -#if defined(__AVR__) - *tft8.writePort = w >> 8; - TFT_WR_STROBE(); - *tft8.writePort = w; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - *tft8.writePort = w >> 8; - TFT_WR_STROBE(); - *tft8.writePort = w; - } else { - *(volatile uint16_t *)tft8.writePort = w; - } -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Issue a single 32-bit value to the display. Chip-select, - transaction and data/command selection must have been - previously set -- this ONLY issues the longword. Despite the - name, this function is used even if display connection is - parallel; name was maintaned for backward compatibility. Naming - is also not consistent with the 8-bit version, spiWrite(). - Sorry about that. Again, staying compatible with outside code. - @param l 32-bit value to write. -*/ -void Adafruit_SPITFT::SPI_WRITE32(uint32_t l) { - if (connection == TFT_HARD_SPI) { -#if defined(__AVR__) - AVR_WRITESPI(l >> 24); - AVR_WRITESPI(l >> 16); - AVR_WRITESPI(l >> 8); - AVR_WRITESPI(l); -#elif defined(ESP8266) || defined(ESP32) - hwspi._spi->write32(l); -#elif defined(ARDUINO_ARCH_RP2040) - spi_inst_t *pi_spi = hwspi._spi == &SPI ? __SPI0_DEVICE : __SPI1_DEVICE; - l = __builtin_bswap32(l); - spi_write_blocking(pi_spi, (uint8_t *)&l, 4); -#elif defined(ARDUINO_ARCH_RTTHREAD) - hwspi._spi->transfer16(l >> 16); - hwspi._spi->transfer16(l); -#else - hwspi._spi->transfer(l >> 24); - hwspi._spi->transfer(l >> 16); - hwspi._spi->transfer(l >> 8); - hwspi._spi->transfer(l); -#endif - } else if (connection == TFT_SOFT_SPI) { - for (uint8_t bit = 0; bit < 32; bit++) { - if (l & 0x80000000) - SPI_MOSI_HIGH(); - else - SPI_MOSI_LOW(); - SPI_SCK_HIGH(); - SPI_SCK_LOW(); - l <<= 1; - } - } else { // TFT_PARALLEL -#if defined(__AVR__) - *tft8.writePort = l >> 24; - TFT_WR_STROBE(); - *tft8.writePort = l >> 16; - TFT_WR_STROBE(); - *tft8.writePort = l >> 8; - TFT_WR_STROBE(); - *tft8.writePort = l; -#elif defined(USE_FAST_PINIO) - if (!tft8.wide) { - *tft8.writePort = l >> 24; - TFT_WR_STROBE(); - *tft8.writePort = l >> 16; - TFT_WR_STROBE(); - *tft8.writePort = l >> 8; - TFT_WR_STROBE(); - *tft8.writePort = l; - } else { - *(volatile uint16_t *)tft8.writePort = l >> 16; - TFT_WR_STROBE(); - *(volatile uint16_t *)tft8.writePort = l; - } -#endif - TFT_WR_STROBE(); - } -} - -/*! - @brief Set the WR line LOW, then HIGH. Used for parallel-connected - interfaces when writing data. -*/ -inline void Adafruit_SPITFT::TFT_WR_STROBE(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *tft8.wrPortClr = 1; - *tft8.wrPortSet = 1; -#else // !KINETISK - *tft8.wrPortClr = tft8.wrPinMask; - *tft8.wrPortSet = tft8.wrPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *tft8.wrPort &= tft8.wrPinMaskClr; - *tft8.wrPort |= tft8.wrPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(tft8._wr, LOW); - digitalWrite(tft8._wr, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the RD line HIGH. Used for parallel-connected interfaces - when reading data. -*/ -inline void Adafruit_SPITFT::TFT_RD_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) - *tft8.rdPortSet = tft8.rdPinMask; -#else // !HAS_PORT_SET_CLR - *tft8.rdPort |= tft8.rdPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(tft8._rd, HIGH); -#endif // end !USE_FAST_PINIO -} - -/*! - @brief Set the RD line LOW. Used for parallel-connected interfaces - when reading data. -*/ -inline void Adafruit_SPITFT::TFT_RD_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) - *tft8.rdPortClr = tft8.rdPinMask; -#else // !HAS_PORT_SET_CLR - *tft8.rdPort &= tft8.rdPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(tft8._rd, LOW); -#endif // end !USE_FAST_PINIO -} - -#endif // end __AVR_ATtiny85__ __AVR_ATtiny84__ diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.h deleted file mode 100644 index 7d0843e..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT.h +++ /dev/null @@ -1,541 +0,0 @@ -/*! - * @file Adafruit_SPITFT.h - * - * Part of Adafruit's GFX graphics library. Originally this class was - * written to handle a range of color TFT displays connected via SPI, - * but over time this library and some display-specific subclasses have - * mutated to include some color OLEDs as well as parallel-interfaced - * displays. The name's been kept for the sake of older code. - * - * Adafruit invests time and resources providing this open source code, - * please support Adafruit and open-source hardware by purchasing - * products from Adafruit! - * - * Written by Limor "ladyada" Fried for Adafruit Industries, - * with contributions from the open source community. - * - * BSD license, all text here must be included in any redistribution. - */ - -#ifndef _ADAFRUIT_SPITFT_H_ -#define _ADAFRUIT_SPITFT_H_ - -// Not for ATtiny, at all -#if !defined(__AVR_ATtiny85__) && !defined(__AVR_ATtiny84__) - -#include "Adafruit_GFX.h" -#include - -// HARDWARE CONFIG --------------------------------------------------------- - -#if defined(__AVR__) -typedef uint8_t ADAGFX_PORT_t; ///< PORT values are 8-bit -#define USE_FAST_PINIO ///< Use direct PORT register access -#elif defined(ARDUINO_STM32_FEATHER) // WICED -typedef class HardwareSPI SPIClass; ///< SPI is a bit odd on WICED -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -#elif defined(__arm__) -#if defined(ARDUINO_ARCH_SAMD) -// Adafruit M0, M4 -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -#define USE_FAST_PINIO ///< Use direct PORT register access -#define HAS_PORT_SET_CLR ///< PORTs have set & clear registers -#elif defined(CORE_TEENSY) -// PJRC Teensy 4.x -#if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit - // PJRC Teensy 3.x -#else -typedef uint8_t ADAGFX_PORT_t; ///< PORT values are 8-bit -#endif -#define USE_FAST_PINIO ///< Use direct PORT register access -#define HAS_PORT_SET_CLR ///< PORTs have set & clear registers -#else -// Arduino Due? -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -// USE_FAST_PINIO not available here (yet)...Due has a totally different -// GPIO register set and will require some changes elsewhere (e.g. in -// constructors especially). -#endif -#else // !ARM -// Probably ESP8266 or ESP32. USE_FAST_PINIO is not available here (yet) -// but don't worry about it too much...the digitalWrite() implementation -// on these platforms is reasonably efficient and already RAM-resident, -// only gotcha then is no parallel connection support for now. -typedef uint32_t ADAGFX_PORT_t; ///< PORT values are 32-bit -#endif // end !ARM -typedef volatile ADAGFX_PORT_t *PORTreg_t; ///< PORT register type - -#if defined(__AVR__) && !defined(__LGT8F__) -#define DEFAULT_SPI_FREQ 8000000L ///< Hardware SPI default speed -#else -#define DEFAULT_SPI_FREQ 16000000L ///< Hardware SPI default speed -#endif - -#if defined(ADAFRUIT_PYPORTAL) || defined(ADAFRUIT_PYPORTAL_M4_TITANO) || \ - defined(ADAFRUIT_PYBADGE_M4_EXPRESS) || \ - defined(ADAFRUIT_PYGAMER_M4_EXPRESS) || \ - defined(ADAFRUIT_MONSTER_M4SK_EXPRESS) || defined(NRF52_SERIES) || \ - defined(ADAFRUIT_CIRCUITPLAYGROUND_M0) -#define USE_SPI_DMA ///< Auto DMA -#else - // #define USE_SPI_DMA ///< If set, - // use DMA if available -#endif -// Another "oops" name -- this now also handles parallel DMA. -// If DMA is enabled, Arduino sketch MUST #include -// Estimated RAM usage: -// 4 bytes/pixel on display major axis + 8 bytes/pixel on minor axis, -// e.g. 320x240 pixels = 320 * 4 + 240 * 8 = 3,200 bytes. - -#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) -#include -#endif - -// This is kind of a kludge. Needed a way to disambiguate the software SPI -// and parallel constructors via their argument lists. Originally tried a -// bool as the first argument to the parallel constructor (specifying 8-bit -// vs 16-bit interface) but the compiler regards this as equivalent to an -// integer and thus still ambiguous. SO...the parallel constructor requires -// an enumerated type as the first argument: tft8 (for 8-bit parallel) or -// tft16 (for 16-bit)...even though 16-bit isn't fully implemented or tested -// and might never be, still needed that disambiguation from soft SPI. -/*! For first arg to parallel constructor */ -enum tftBusWidth { tft8bitbus, tft16bitbus }; - -// SPI defaults for RP2040 -#if defined(ARDUINO_ARCH_RP2040) -#ifndef __SPI0_DEVICE -#define __SPI0_DEVICE spi0 -#endif -#ifndef __SPI1_DEVICE -#define __SPI1_DEVICE spi1 -#endif -#endif - -// CLASS DEFINITION -------------------------------------------------------- - -/*! - @brief Adafruit_SPITFT is an intermediary class between Adafruit_GFX - and various hardware-specific subclasses for different displays. - It handles certain operations that are common to a range of - displays (address window, area fills, etc.). Originally these were - all color TFT displays interfaced via SPI, but it's since expanded - to include color OLEDs and parallel-interfaced TFTs. THE NAME HAS - BEEN KEPT TO AVOID BREAKING A LOT OF SUBCLASSES AND EXAMPLE CODE. - Many of the class member functions similarly live on with names - that don't necessarily accurately describe what they're doing, - again to avoid breaking a lot of other code. If in doubt, read - the comments. -*/ -class Adafruit_SPITFT : public Adafruit_GFX { - -public: - // CONSTRUCTORS -------------------------------------------------------- - - // Software SPI constructor: expects width & height (at default rotation - // setting 0), 4 signal pins (cs, dc, mosi, sclk), 2 optional pins - // (reset, miso). cs argument is required but can be -1 if unused -- - // rather than moving it to the optional arguments, it was done this way - // to avoid breaking existing code (-1 option was a later addition). - Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, int8_t mosi, - int8_t sck, int8_t rst = -1, int8_t miso = -1); - - // Hardware SPI constructor using the default SPI port: expects width & - // height (at default rotation setting 0), 2 signal pins (cs, dc), - // optional reset pin. cs is required but can be -1 if unused -- rather - // than moving it to the optional arguments, it was done this way to - // avoid breaking existing code (-1 option was a later addition). - Adafruit_SPITFT(uint16_t w, uint16_t h, int8_t cs, int8_t dc, - int8_t rst = -1); - -#if !defined(ESP8266) // See notes in .cpp - // Hardware SPI constructor using an arbitrary SPI peripheral: expects - // width & height (rotation 0), SPIClass pointer, 2 signal pins (cs, dc) - // and optional reset pin. cs is required but can be -1 if unused. - Adafruit_SPITFT(uint16_t w, uint16_t h, SPIClass *spiClass, int8_t cs, - int8_t dc, int8_t rst = -1); -#endif // end !ESP8266 - - // Parallel constructor: expects width & height (rotation 0), flag - // indicating whether 16-bit (true) or 8-bit (false) interface, 3 signal - // pins (d0, wr, dc), 3 optional pins (cs, rst, rd). 16-bit parallel - // isn't even fully implemented but the 'wide' flag was added as a - // required argument to avoid ambiguity with other constructors. - Adafruit_SPITFT(uint16_t w, uint16_t h, tftBusWidth busWidth, int8_t d0, - int8_t wr, int8_t dc, int8_t cs = -1, int8_t rst = -1, - int8_t rd = -1); - - // DESTRUCTOR ---------------------------------------------------------- - - ~Adafruit_SPITFT(){}; - - // CLASS MEMBER FUNCTIONS ---------------------------------------------- - - // These first two functions MUST be declared by subclasses: - - /*! - @brief Display-specific initialization function. - @param freq SPI frequency, in hz (or 0 for default or unused). - */ - virtual void begin(uint32_t freq) = 0; - - /*! - @brief Set up the specific display hardware's "address window" - for subsequent pixel-pushing operations. - @param x Leftmost pixel of area to be drawn (MUST be within - display bounds at current rotation setting). - @param y Topmost pixel of area to be drawn (MUST be within - display bounds at current rotation setting). - @param w Width of area to be drawn, in pixels (MUST be >0 and, - added to x, within display bounds at current rotation). - @param h Height of area to be drawn, in pixels (MUST be >0 and, - added to x, within display bounds at current rotation). - */ - virtual void setAddrWindow(uint16_t x, uint16_t y, uint16_t w, - uint16_t h) = 0; - - // Remaining functions do not need to be declared in subclasses - // unless they wish to provide hardware-specific optimizations. - // Brief comments here...documented more thoroughly in .cpp file. - - // Subclass' begin() function invokes this to initialize hardware. - // freq=0 to use default SPI speed. spiMode must be one of the SPI_MODEn - // values defined in SPI.h, which are NOT the same as 0 for SPI_MODE0, - // 1 for SPI_MODE1, etc...use ONLY the SPI_MODEn defines! Only! - // Name is outdated (interface may be parallel) but for compatibility: - void initSPI(uint32_t freq = 0, uint8_t spiMode = SPI_MODE0); - void setSPISpeed(uint32_t freq); - // Chip select and/or hardware SPI transaction start as needed: - void startWrite(void); - // Chip deselect and/or hardware SPI transaction end as needed: - void endWrite(void); - void sendCommand(uint8_t commandByte, uint8_t *dataBytes, - uint8_t numDataBytes); - void sendCommand(uint8_t commandByte, const uint8_t *dataBytes = NULL, - uint8_t numDataBytes = 0); - void sendCommand16(uint16_t commandWord, const uint8_t *dataBytes = NULL, - uint8_t numDataBytes = 0); - uint8_t readcommand8(uint8_t commandByte, uint8_t index = 0); - uint16_t readcommand16(uint16_t addr); - - // These functions require a chip-select and/or SPI transaction - // around them. Higher-level graphics primitives might start a - // single transaction and then make multiple calls to these functions - // (e.g. circle or text rendering might make repeated lines or rects) - // before ending the transaction. It's more efficient than starting a - // transaction every time. - void writePixel(int16_t x, int16_t y, uint16_t color); - void writePixels(uint16_t *colors, uint32_t len, bool block = true, - bool bigEndian = false); - void writeColor(uint16_t color, uint32_t len); - void writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, - uint16_t color); - void writeFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - void writeFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - // This is a new function, similar to writeFillRect() except that - // all arguments MUST be onscreen, sorted and clipped. If higher-level - // primitives can handle their own sorting/clipping, it avoids repeating - // such operations in the low-level code, making it potentially faster. - // CALLING THIS WITH UNCLIPPED OR NEGATIVE VALUES COULD BE DISASTROUS. - inline void writeFillRectPreclipped(int16_t x, int16_t y, int16_t w, - int16_t h, uint16_t color); - // Another new function, companion to the new non-blocking - // writePixels() variant. - void dmaWait(void); - // Used by writePixels() in some situations, but might have rare need in - // user code, so it's public... - bool dmaBusy(void) const; // true if DMA is used and busy, false otherwise - void swapBytes(uint16_t *src, uint32_t len, uint16_t *dest = NULL); - - // These functions are similar to the 'write' functions above, but with - // a chip-select and/or SPI transaction built-in. They're typically used - // solo -- that is, as graphics primitives in themselves, not invoked by - // higher-level primitives (which should use the functions above). - void drawPixel(int16_t x, int16_t y, uint16_t color); - void fillRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color); - void drawFastHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - void drawFastVLine(int16_t x, int16_t y, int16_t h, uint16_t color); - // A single-pixel push encapsulated in a transaction. I don't think - // this is used anymore (BMP demos might've used it?) but is provided - // for backward compatibility, consider it deprecated: - void pushColor(uint16_t color); - - using Adafruit_GFX::drawRGBBitmap; // Check base class first - void drawRGBBitmap(int16_t x, int16_t y, uint16_t *pcolors, int16_t w, - int16_t h); - - void invertDisplay(bool i); - uint16_t color565(uint8_t r, uint8_t g, uint8_t b); - - // Despite parallel additions, function names kept for compatibility: - void spiWrite(uint8_t b); // Write single byte as DATA - void writeCommand(uint8_t cmd); // Write single byte as COMMAND - uint8_t spiRead(void); // Read single byte of data - void write16(uint16_t w); // Write 16-bit value as DATA - void writeCommand16(uint16_t cmd); // Write 16-bit value as COMMAND - uint16_t read16(void); // Read single 16-bit value - - // Most of these low-level functions were formerly macros in - // Adafruit_SPITFT_Macros.h. Some have been made into inline functions - // to avoid macro mishaps. Despite the addition of code for a parallel - // display interface, the names have been kept for backward - // compatibility (some subclasses may be invoking these): - void SPI_WRITE16(uint16_t w); // Not inline - void SPI_WRITE32(uint32_t l); // Not inline - // Old code had both a spiWrite16() function and SPI_WRITE16 macro - // in addition to the SPI_WRITE32 macro. The latter two have been - // made into functions here, and spiWrite16() removed (use SPI_WRITE16() - // instead). It looks like most subclasses had gotten comfortable with - // SPI_WRITE16 and SPI_WRITE32 anyway so those names were kept rather - // than the less-obnoxious camelcase variants, oh well. - - // Placing these functions entirely in the class definition inlines - // them implicitly them while allowing their use in other code: - - /*! - @brief Set the chip-select line HIGH. Does NOT check whether CS pin - is set (>=0), that should be handled in calling function. - Despite function name, this is used even if the display - connection is parallel. - */ - void SPI_CS_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *csPortSet = 1; -#else // !KINETISK - *csPortSet = csPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *csPort |= csPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_cs, HIGH); -#endif // end !USE_FAST_PINIO - } - - /*! - @brief Set the chip-select line LOW. Does NOT check whether CS pin - is set (>=0), that should be handled in calling function. - Despite function name, this is used even if the display - connection is parallel. - */ - void SPI_CS_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *csPortClr = 1; -#else // !KINETISK - *csPortClr = csPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *csPort &= csPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_cs, LOW); -#endif // end !USE_FAST_PINIO - } - - /*! - @brief Set the data/command line HIGH (data mode). - */ - void SPI_DC_HIGH(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *dcPortSet = 1; -#else // !KINETISK - *dcPortSet = dcPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *dcPort |= dcPinMaskSet; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_dc, HIGH); -#endif // end !USE_FAST_PINIO - } - - /*! - @brief Set the data/command line LOW (command mode). - */ - void SPI_DC_LOW(void) { -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if defined(KINETISK) - *dcPortClr = 1; -#else // !KINETISK - *dcPortClr = dcPinMask; -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - *dcPort &= dcPinMaskClr; -#endif // end !HAS_PORT_SET_CLR -#else // !USE_FAST_PINIO - digitalWrite(_dc, LOW); -#endif // end !USE_FAST_PINIO - } - -protected: - // A few more low-level member functions -- some may have previously - // been macros. Shouldn't have a need to access these externally, so - // they've been moved to the protected section. Additionally, they're - // declared inline here and the code is in the .cpp file, since outside - // code doesn't need to see these. - inline void SPI_MOSI_HIGH(void); - inline void SPI_MOSI_LOW(void); - inline void SPI_SCK_HIGH(void); - inline void SPI_SCK_LOW(void); - inline bool SPI_MISO_READ(void); - inline void SPI_BEGIN_TRANSACTION(void); - inline void SPI_END_TRANSACTION(void); - inline void TFT_WR_STROBE(void); // Parallel interface write strobe - inline void TFT_RD_HIGH(void); // Parallel interface read high - inline void TFT_RD_LOW(void); // Parallel interface read low - - // CLASS INSTANCE VARIABLES -------------------------------------------- - - // Here be dragons! There's a big union of three structures here -- - // one each for hardware SPI, software (bitbang) SPI, and parallel - // interfaces. This is to save some memory, since a display's connection - // will be only one of these. The order of some things is a little weird - // in an attempt to get values to align and pack better in RAM. - -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) - PORTreg_t csPortSet; ///< PORT register for chip select SET - PORTreg_t csPortClr; ///< PORT register for chip select CLEAR - PORTreg_t dcPortSet; ///< PORT register for data/command SET - PORTreg_t dcPortClr; ///< PORT register for data/command CLEAR -#else // !HAS_PORT_SET_CLR - PORTreg_t csPort; ///< PORT register for chip select - PORTreg_t dcPort; ///< PORT register for data/command -#endif // end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO -#if defined(__cplusplus) && (__cplusplus >= 201100) - union { -#endif - struct { // Values specific to HARDWARE SPI: - SPIClass *_spi; ///< SPI class pointer -#if defined(SPI_HAS_TRANSACTION) - SPISettings settings; ///< SPI transaction settings -#else - uint32_t _freq; ///< SPI bitrate (if no SPI transactions) -#endif - uint32_t _mode; ///< SPI data mode (transactions or no) - } hwspi; ///< Hardware SPI values - struct { // Values specific to SOFTWARE SPI: -#if defined(USE_FAST_PINIO) - PORTreg_t misoPort; ///< PORT (PIN) register for MISO -#if defined(HAS_PORT_SET_CLR) - PORTreg_t mosiPortSet; ///< PORT register for MOSI SET - PORTreg_t mosiPortClr; ///< PORT register for MOSI CLEAR - PORTreg_t sckPortSet; ///< PORT register for SCK SET - PORTreg_t sckPortClr; ///< PORT register for SCK CLEAR -#if !defined(KINETISK) - ADAGFX_PORT_t mosiPinMask; ///< Bitmask for MOSI - ADAGFX_PORT_t sckPinMask; ///< Bitmask for SCK -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - PORTreg_t mosiPort; ///< PORT register for MOSI - PORTreg_t sckPort; ///< PORT register for SCK - ADAGFX_PORT_t mosiPinMaskSet; ///< Bitmask for MOSI SET (OR) - ADAGFX_PORT_t mosiPinMaskClr; ///< Bitmask for MOSI CLEAR (AND) - ADAGFX_PORT_t sckPinMaskSet; ///< Bitmask for SCK SET (OR bitmask) - ADAGFX_PORT_t sckPinMaskClr; ///< Bitmask for SCK CLEAR (AND) -#endif // end HAS_PORT_SET_CLR -#if !defined(KINETISK) - ADAGFX_PORT_t misoPinMask; ///< Bitmask for MISO -#endif // end !KINETISK -#endif // end USE_FAST_PINIO - int8_t _mosi; ///< MOSI pin # - int8_t _miso; ///< MISO pin # - int8_t _sck; ///< SCK pin # - } swspi; ///< Software SPI values - struct { // Values specific to 8-bit parallel: -#if defined(USE_FAST_PINIO) - -#if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x - volatile uint32_t *writePort; ///< PORT register for DATA WRITE - volatile uint32_t *readPort; ///< PORT (PIN) register for DATA READ -#else - volatile uint8_t *writePort; ///< PORT register for DATA WRITE - volatile uint8_t *readPort; ///< PORT (PIN) register for DATA READ -#endif -#if defined(HAS_PORT_SET_CLR) - // Port direction register pointers are always 8-bit regardless of - // PORTreg_t -- even if 32-bit port, we modify a byte-aligned 8 bits. -#if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x - volatile uint32_t *dirSet; ///< PORT byte data direction SET - volatile uint32_t *dirClr; ///< PORT byte data direction CLEAR -#else - volatile uint8_t *dirSet; ///< PORT byte data direction SET - volatile uint8_t *dirClr; ///< PORT byte data direction CLEAR -#endif - PORTreg_t wrPortSet; ///< PORT register for write strobe SET - PORTreg_t wrPortClr; ///< PORT register for write strobe CLEAR - PORTreg_t rdPortSet; ///< PORT register for read strobe SET - PORTreg_t rdPortClr; ///< PORT register for read strobe CLEAR -#if !defined(KINETISK) - ADAGFX_PORT_t wrPinMask; ///< Bitmask for write strobe -#endif // end !KINETISK - ADAGFX_PORT_t rdPinMask; ///< Bitmask for read strobe -#else // !HAS_PORT_SET_CLR - // Port direction register pointer is always 8-bit regardless of - // PORTreg_t -- even if 32-bit port, we modify a byte-aligned 8 bits. - volatile uint8_t *portDir; ///< PORT direction register - PORTreg_t wrPort; ///< PORT register for write strobe - PORTreg_t rdPort; ///< PORT register for read strobe - ADAGFX_PORT_t wrPinMaskSet; ///< Bitmask for write strobe SET (OR) - ADAGFX_PORT_t wrPinMaskClr; ///< Bitmask for write strobe CLEAR (AND) - ADAGFX_PORT_t rdPinMaskSet; ///< Bitmask for read strobe SET (OR) - ADAGFX_PORT_t rdPinMaskClr; ///< Bitmask for read strobe CLEAR (AND) -#endif // end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO - int8_t _d0; ///< Data pin 0 # - int8_t _wr; ///< Write strobe pin # - int8_t _rd; ///< Read strobe pin # (or -1) - bool wide = 0; ///< If true, is 16-bit interface - } tft8; ///< Parallel interface settings -#if defined(__cplusplus) && (__cplusplus >= 201100) - }; ///< Only one interface is active -#endif -#if defined(USE_SPI_DMA) && \ - (defined(__SAMD51__) || \ - defined(ARDUINO_SAMD_ZERO)) // Used by hardware SPI and tft8 - Adafruit_ZeroDMA dma; ///< DMA instance - DmacDescriptor *dptr = NULL; ///< 1st descriptor - DmacDescriptor *descriptor = NULL; ///< Allocated descriptor list - uint16_t *pixelBuf[2]; ///< Working buffers - uint16_t maxFillLen; ///< Max pixels per DMA xfer - uint16_t lastFillColor = 0; ///< Last color used w/fill - uint32_t lastFillLen = 0; ///< # of pixels w/last fill - uint8_t onePixelBuf; ///< For hi==lo fill -#endif -#if defined(USE_FAST_PINIO) -#if defined(HAS_PORT_SET_CLR) -#if !defined(KINETISK) - ADAGFX_PORT_t csPinMask; ///< Bitmask for chip select - ADAGFX_PORT_t dcPinMask; ///< Bitmask for data/command -#endif // end !KINETISK -#else // !HAS_PORT_SET_CLR - ADAGFX_PORT_t csPinMaskSet; ///< Bitmask for chip select SET (OR) - ADAGFX_PORT_t csPinMaskClr; ///< Bitmask for chip select CLEAR (AND) - ADAGFX_PORT_t dcPinMaskSet; ///< Bitmask for data/command SET (OR) - ADAGFX_PORT_t dcPinMaskClr; ///< Bitmask for data/command CLEAR (AND) -#endif // end HAS_PORT_SET_CLR -#endif // end USE_FAST_PINIO - uint8_t connection; ///< TFT_HARD_SPI, TFT_SOFT_SPI, etc. - int8_t _rst; ///< Reset pin # (or -1) - int8_t _cs; ///< Chip select pin # (or -1) - int8_t _dc; ///< Data/command pin # - - int16_t _xstart = 0; ///< Internal framebuffer X offset - int16_t _ystart = 0; ///< Internal framebuffer Y offset - uint8_t invertOnCommand = 0; ///< Command to enable invert mode - uint8_t invertOffCommand = 0; ///< Command to disable invert mode - - uint32_t _freq = 0; ///< Dummy var to keep subclasses happy -}; - -#endif // end __AVR_ATtiny85__ __AVR_ATtiny84__ -#endif // end _ADAFRUIT_SPITFT_H_ diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT_Macros.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT_Macros.h deleted file mode 100644 index fcd6253..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Adafruit_SPITFT_Macros.h +++ /dev/null @@ -1,6 +0,0 @@ -// THIS FILE INTENTIONALLY LEFT BLANK. - -// Macros previously #defined here have been made into (mostly) inline -// functions in the Adafruit_SPITFT class. Other libraries might still -// contain code trying to #include this header file, so until everything's -// updated this file still exists (but doing nothing) to avoid trouble. diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/CMakeLists.txt b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/CMakeLists.txt deleted file mode 100644 index 531c721..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/CMakeLists.txt +++ /dev/null @@ -1,11 +0,0 @@ -# Adafruit GFX Library -# https://github.com/adafruit/Adafruit-GFX-Library -# BSD License - -cmake_minimum_required(VERSION 3.5) - -idf_component_register(SRCS "Adafruit_GFX.cpp" "Adafruit_GrayOLED.cpp" "Adafruit_SPITFT.cpp" "glcdfont.c" - INCLUDE_DIRS "." - REQUIRES arduino Adafruit_BusIO) - -project(Adafruit-GFX-Library) diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono12pt7b.h deleted file mode 100644 index d124f20..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono12pt7b.h +++ /dev/null @@ -1,229 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono12pt7bBitmaps[] PROGMEM = { - 0x49, 0x24, 0x92, 0x48, 0x01, 0xF8, 0xE7, 0xE7, 0x67, 0x42, 0x42, 0x42, - 0x42, 0x09, 0x02, 0x41, 0x10, 0x44, 0x11, 0x1F, 0xF1, 0x10, 0x4C, 0x12, - 0x3F, 0xE1, 0x20, 0x48, 0x12, 0x04, 0x81, 0x20, 0x48, 0x04, 0x07, 0xA2, - 0x19, 0x02, 0x40, 0x10, 0x03, 0x00, 0x3C, 0x00, 0x80, 0x10, 0x06, 0x01, - 0xE0, 0xA7, 0xC0, 0x40, 0x10, 0x04, 0x00, 0x3C, 0x19, 0x84, 0x21, 0x08, - 0x66, 0x0F, 0x00, 0x0C, 0x1C, 0x78, 0x01, 0xE0, 0xCC, 0x21, 0x08, 0x43, - 0x30, 0x78, 0x3E, 0x30, 0x10, 0x08, 0x02, 0x03, 0x03, 0x47, 0x14, 0x8A, - 0x43, 0x11, 0x8F, 0x60, 0xFD, 0xA4, 0x90, 0x05, 0x25, 0x24, 0x92, 0x48, - 0x92, 0x24, 0x11, 0x24, 0x89, 0x24, 0x92, 0x92, 0x90, 0x00, 0x04, 0x02, - 0x11, 0x07, 0xF0, 0xC0, 0x50, 0x48, 0x42, 0x00, 0x08, 0x04, 0x02, 0x01, - 0x00, 0x87, 0xFC, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, 0x3B, 0x9C, 0xCE, - 0x62, 0x00, 0xFF, 0xE0, 0xFF, 0x80, 0x00, 0x80, 0xC0, 0x40, 0x20, 0x20, - 0x10, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0x00, 0x80, - 0x80, 0x40, 0x00, 0x1C, 0x31, 0x90, 0x58, 0x38, 0x0C, 0x06, 0x03, 0x01, - 0x80, 0xC0, 0x60, 0x30, 0x34, 0x13, 0x18, 0x70, 0x30, 0xE1, 0x44, 0x81, - 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x81, 0x1F, 0xC0, 0x1E, 0x10, 0x90, - 0x68, 0x10, 0x08, 0x0C, 0x04, 0x04, 0x04, 0x06, 0x06, 0x06, 0x06, 0x0E, - 0x07, 0xFE, 0x3E, 0x10, 0x40, 0x08, 0x02, 0x00, 0x80, 0x40, 0xE0, 0x04, - 0x00, 0x80, 0x10, 0x04, 0x01, 0x00, 0xD8, 0x63, 0xE0, 0x06, 0x0A, 0x0A, - 0x12, 0x22, 0x22, 0x42, 0x42, 0x82, 0x82, 0xFF, 0x02, 0x02, 0x02, 0x0F, - 0x7F, 0x20, 0x10, 0x08, 0x04, 0x02, 0xF1, 0x8C, 0x03, 0x00, 0x80, 0x40, - 0x20, 0x18, 0x16, 0x18, 0xF0, 0x0F, 0x8C, 0x08, 0x08, 0x04, 0x04, 0x02, - 0x79, 0x46, 0xC1, 0xE0, 0x60, 0x28, 0x14, 0x19, 0x08, 0x78, 0xFF, 0x81, - 0x81, 0x02, 0x02, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08, - 0x08, 0x3E, 0x31, 0xB0, 0x70, 0x18, 0x0C, 0x05, 0x8C, 0x38, 0x63, 0x40, - 0x60, 0x30, 0x18, 0x1B, 0x18, 0xF8, 0x3C, 0x31, 0x30, 0x50, 0x28, 0x0C, - 0x0F, 0x06, 0x85, 0x3C, 0x80, 0x40, 0x40, 0x20, 0x20, 0x63, 0xE0, 0xFF, - 0x80, 0x07, 0xFC, 0x39, 0xCE, 0x00, 0x00, 0x06, 0x33, 0x98, 0xC4, 0x00, - 0x00, 0xC0, 0x60, 0x18, 0x0C, 0x06, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, - 0x00, 0x30, 0x01, 0x00, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xC0, 0x06, - 0x00, 0x30, 0x01, 0x80, 0x18, 0x01, 0x80, 0xC0, 0x30, 0x18, 0x0C, 0x02, - 0x00, 0x00, 0x3E, 0x60, 0xA0, 0x20, 0x10, 0x08, 0x08, 0x18, 0x10, 0x08, - 0x00, 0x00, 0x00, 0x01, 0xC0, 0xE0, 0x1C, 0x31, 0x10, 0x50, 0x28, 0x14, - 0x3A, 0x25, 0x22, 0x91, 0x4C, 0xA3, 0xF0, 0x08, 0x02, 0x01, 0x80, 0x7C, - 0x3F, 0x00, 0x0C, 0x00, 0x48, 0x01, 0x20, 0x04, 0x40, 0x21, 0x00, 0x84, - 0x04, 0x08, 0x1F, 0xE0, 0x40, 0x82, 0x01, 0x08, 0x04, 0x20, 0x13, 0xE1, - 0xF0, 0xFF, 0x08, 0x11, 0x01, 0x20, 0x24, 0x04, 0x81, 0x1F, 0xC2, 0x06, - 0x40, 0x68, 0x05, 0x00, 0xA0, 0x14, 0x05, 0xFF, 0x00, 0x1E, 0x48, 0x74, - 0x05, 0x01, 0x80, 0x20, 0x08, 0x02, 0x00, 0x80, 0x20, 0x04, 0x01, 0x01, - 0x30, 0x87, 0xC0, 0xFE, 0x10, 0x44, 0x09, 0x02, 0x40, 0x50, 0x14, 0x05, - 0x01, 0x40, 0x50, 0x14, 0x0D, 0x02, 0x41, 0x3F, 0x80, 0xFF, 0xC8, 0x09, - 0x01, 0x20, 0x04, 0x00, 0x88, 0x1F, 0x02, 0x20, 0x40, 0x08, 0x01, 0x00, - 0xA0, 0x14, 0x03, 0xFF, 0xC0, 0xFF, 0xE8, 0x05, 0x00, 0xA0, 0x04, 0x00, - 0x88, 0x1F, 0x02, 0x20, 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x01, 0xF0, - 0x00, 0x1F, 0x46, 0x19, 0x01, 0x60, 0x28, 0x01, 0x00, 0x20, 0x04, 0x00, - 0x83, 0xF0, 0x0B, 0x01, 0x20, 0x23, 0x0C, 0x3E, 0x00, 0xE1, 0xD0, 0x24, - 0x09, 0x02, 0x40, 0x90, 0x27, 0xF9, 0x02, 0x40, 0x90, 0x24, 0x09, 0x02, - 0x40, 0xB8, 0x70, 0xFE, 0x20, 0x40, 0x81, 0x02, 0x04, 0x08, 0x10, 0x20, - 0x40, 0x81, 0x1F, 0xC0, 0x0F, 0xE0, 0x10, 0x02, 0x00, 0x40, 0x08, 0x01, - 0x00, 0x20, 0x04, 0x80, 0x90, 0x12, 0x02, 0x40, 0xC6, 0x30, 0x7C, 0x00, - 0xF1, 0xE4, 0x0C, 0x41, 0x04, 0x20, 0x44, 0x04, 0x80, 0x5C, 0x06, 0x60, - 0x43, 0x04, 0x10, 0x40, 0x84, 0x08, 0x40, 0xCF, 0x07, 0xF8, 0x04, 0x00, - 0x80, 0x10, 0x02, 0x00, 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x04, 0x80, - 0x90, 0x12, 0x03, 0xFF, 0xC0, 0xE0, 0x3B, 0x01, 0x94, 0x14, 0xA0, 0xA4, - 0x89, 0x24, 0x49, 0x14, 0x48, 0xA2, 0x45, 0x12, 0x10, 0x90, 0x04, 0x80, - 0x24, 0x01, 0x78, 0x3C, 0xE0, 0xF6, 0x02, 0x50, 0x25, 0x02, 0x48, 0x24, - 0xC2, 0x44, 0x24, 0x22, 0x43, 0x24, 0x12, 0x40, 0xA4, 0x0A, 0x40, 0x6F, - 0x06, 0x0F, 0x03, 0x0C, 0x60, 0x64, 0x02, 0x80, 0x18, 0x01, 0x80, 0x18, - 0x01, 0x80, 0x18, 0x01, 0x40, 0x26, 0x06, 0x30, 0xC0, 0xF0, 0xFF, 0x10, - 0x64, 0x05, 0x01, 0x40, 0x50, 0x34, 0x19, 0xFC, 0x40, 0x10, 0x04, 0x01, - 0x00, 0x40, 0x3E, 0x00, 0x0F, 0x03, 0x0C, 0x60, 0x64, 0x02, 0x80, 0x18, - 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x01, 0x40, 0x26, 0x06, 0x30, 0xC1, - 0xF0, 0x0C, 0x01, 0xF1, 0x30, 0xE0, 0xFF, 0x04, 0x18, 0x40, 0xC4, 0x04, - 0x40, 0x44, 0x0C, 0x41, 0x87, 0xE0, 0x43, 0x04, 0x10, 0x40, 0x84, 0x04, - 0x40, 0x4F, 0x03, 0x1F, 0x48, 0x34, 0x05, 0x01, 0x40, 0x08, 0x01, 0xC0, - 0x0E, 0x00, 0x40, 0x18, 0x06, 0x01, 0xE1, 0xA7, 0xC0, 0xFF, 0xF0, 0x86, - 0x10, 0x82, 0x00, 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, - 0x02, 0x00, 0x40, 0x7F, 0x00, 0xF0, 0xF4, 0x02, 0x40, 0x24, 0x02, 0x40, - 0x24, 0x02, 0x40, 0x24, 0x02, 0x40, 0x24, 0x02, 0x40, 0x22, 0x04, 0x30, - 0xC0, 0xF0, 0xF8, 0x7C, 0x80, 0x22, 0x01, 0x04, 0x04, 0x10, 0x20, 0x40, - 0x80, 0x82, 0x02, 0x10, 0x08, 0x40, 0x11, 0x00, 0x48, 0x01, 0xA0, 0x03, - 0x00, 0x0C, 0x00, 0xF8, 0x7C, 0x80, 0x22, 0x00, 0x88, 0xC2, 0x23, 0x10, - 0x8E, 0x42, 0x29, 0x09, 0x24, 0x24, 0x90, 0x91, 0x41, 0x85, 0x06, 0x14, - 0x18, 0x70, 0x60, 0x80, 0xF0, 0xF2, 0x06, 0x30, 0x41, 0x08, 0x09, 0x80, - 0x50, 0x06, 0x00, 0x60, 0x0D, 0x00, 0x88, 0x10, 0xC2, 0x04, 0x60, 0x2F, - 0x0F, 0xF0, 0xF2, 0x02, 0x10, 0x41, 0x04, 0x08, 0x80, 0x50, 0x05, 0x00, - 0x20, 0x02, 0x00, 0x20, 0x02, 0x00, 0x20, 0x02, 0x01, 0xFC, 0xFF, 0x40, - 0xA0, 0x90, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x10, 0x50, 0x30, 0x18, - 0x0F, 0xFC, 0xF2, 0x49, 0x24, 0x92, 0x49, 0x24, 0x9C, 0x80, 0x60, 0x10, - 0x08, 0x02, 0x01, 0x00, 0x40, 0x20, 0x08, 0x04, 0x01, 0x00, 0x80, 0x20, - 0x10, 0x04, 0x02, 0x00, 0x80, 0x40, 0xE4, 0x92, 0x49, 0x24, 0x92, 0x49, - 0x3C, 0x08, 0x0C, 0x09, 0x0C, 0x4C, 0x14, 0x04, 0xFF, 0xFC, 0x84, 0x21, - 0x3E, 0x00, 0x60, 0x08, 0x02, 0x3F, 0x98, 0x28, 0x0A, 0x02, 0xC3, 0x9F, - 0x30, 0xE0, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, 0x13, 0xE0, 0xA0, - 0x86, 0x02, 0x20, 0x09, 0x00, 0x48, 0x02, 0x40, 0x13, 0x01, 0x14, 0x1B, - 0x9F, 0x00, 0x1F, 0x4C, 0x19, 0x01, 0x40, 0x28, 0x01, 0x00, 0x20, 0x02, - 0x00, 0x60, 0x43, 0xF0, 0x00, 0xC0, 0x08, 0x01, 0x00, 0x20, 0x04, 0x3C, - 0x98, 0x52, 0x06, 0x80, 0x50, 0x0A, 0x01, 0x40, 0x24, 0x0C, 0xC2, 0x87, - 0x98, 0x3F, 0x18, 0x68, 0x06, 0x01, 0xFF, 0xE0, 0x08, 0x03, 0x00, 0x60, - 0xC7, 0xC0, 0x0F, 0x98, 0x08, 0x04, 0x02, 0x07, 0xF8, 0x80, 0x40, 0x20, - 0x10, 0x08, 0x04, 0x02, 0x01, 0x03, 0xF8, 0x1E, 0x6C, 0x39, 0x03, 0x40, - 0x28, 0x05, 0x00, 0xA0, 0x12, 0x06, 0x61, 0x43, 0xC8, 0x01, 0x00, 0x20, - 0x08, 0x3E, 0x00, 0xC0, 0x10, 0x04, 0x01, 0x00, 0x40, 0x13, 0x87, 0x11, - 0x82, 0x40, 0x90, 0x24, 0x09, 0x02, 0x40, 0x90, 0x2E, 0x1C, 0x08, 0x04, - 0x02, 0x00, 0x00, 0x03, 0xC0, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00, - 0x80, 0x43, 0xFE, 0x04, 0x08, 0x10, 0x00, 0x1F, 0xC0, 0x81, 0x02, 0x04, - 0x08, 0x10, 0x20, 0x40, 0x81, 0x02, 0x0B, 0xE0, 0xE0, 0x02, 0x00, 0x20, - 0x02, 0x00, 0x20, 0x02, 0x3C, 0x21, 0x02, 0x60, 0x2C, 0x03, 0x80, 0x24, - 0x02, 0x20, 0x21, 0x02, 0x08, 0xE1, 0xF0, 0x78, 0x04, 0x02, 0x01, 0x00, - 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00, 0x80, 0x43, 0xFE, - 0xDC, 0xE3, 0x19, 0x90, 0x84, 0x84, 0x24, 0x21, 0x21, 0x09, 0x08, 0x48, - 0x42, 0x42, 0x17, 0x18, 0xC0, 0x67, 0x83, 0x84, 0x20, 0x22, 0x02, 0x20, - 0x22, 0x02, 0x20, 0x22, 0x02, 0x20, 0x2F, 0x07, 0x1F, 0x04, 0x11, 0x01, - 0x40, 0x18, 0x03, 0x00, 0x60, 0x0A, 0x02, 0x20, 0x83, 0xE0, 0xCF, 0x85, - 0x06, 0x60, 0x24, 0x01, 0x40, 0x14, 0x01, 0x40, 0x16, 0x02, 0x50, 0x44, - 0xF8, 0x40, 0x04, 0x00, 0x40, 0x0F, 0x00, 0x1E, 0x6C, 0x3B, 0x03, 0x40, - 0x28, 0x05, 0x00, 0xA0, 0x12, 0x06, 0x61, 0x43, 0xC8, 0x01, 0x00, 0x20, - 0x04, 0x03, 0xC0, 0xE3, 0x8B, 0x13, 0x80, 0x80, 0x20, 0x08, 0x02, 0x00, - 0x80, 0x20, 0x3F, 0x80, 0x1F, 0x58, 0x34, 0x05, 0x80, 0x1E, 0x00, 0x60, - 0x06, 0x01, 0xC0, 0xAF, 0xC0, 0x20, 0x04, 0x00, 0x80, 0x10, 0x0F, 0xF0, - 0x40, 0x08, 0x01, 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, 0x03, 0x04, 0x3F, - 0x00, 0xC1, 0xC8, 0x09, 0x01, 0x20, 0x24, 0x04, 0x80, 0x90, 0x12, 0x02, - 0x61, 0xC7, 0xCC, 0xF8, 0xF9, 0x01, 0x08, 0x10, 0x60, 0x81, 0x08, 0x08, - 0x40, 0x22, 0x01, 0x20, 0x05, 0x00, 0x30, 0x00, 0xF0, 0x7A, 0x01, 0x10, - 0x08, 0x8C, 0x42, 0x62, 0x12, 0x90, 0xA5, 0x05, 0x18, 0x28, 0xC0, 0x86, - 0x00, 0x78, 0xF3, 0x04, 0x18, 0x80, 0xD0, 0x06, 0x00, 0x70, 0x09, 0x81, - 0x0C, 0x20, 0x6F, 0x8F, 0xF0, 0xF2, 0x02, 0x20, 0x41, 0x04, 0x10, 0x80, - 0x88, 0x09, 0x00, 0x50, 0x06, 0x00, 0x20, 0x04, 0x00, 0x40, 0x08, 0x0F, - 0xE0, 0xFF, 0x41, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0xBF, - 0xC0, 0x19, 0x08, 0x42, 0x10, 0x84, 0x64, 0x18, 0x42, 0x10, 0x84, 0x20, - 0xC0, 0xFF, 0xFF, 0xC0, 0xC1, 0x08, 0x42, 0x10, 0x84, 0x10, 0x4C, 0x42, - 0x10, 0x84, 0x26, 0x00, 0x38, 0x13, 0x38, 0x38}; - -const GFXglyph FreeMono12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 3, 15, 14, 6, -14}, // 0x21 '!' - {6, 8, 7, 14, 3, -14}, // 0x22 '"' - {13, 10, 16, 14, 2, -14}, // 0x23 '#' - {33, 10, 17, 14, 2, -14}, // 0x24 '$' - {55, 10, 15, 14, 2, -14}, // 0x25 '%' - {74, 9, 12, 14, 3, -11}, // 0x26 '&' - {88, 3, 7, 14, 5, -14}, // 0x27 ''' - {91, 3, 18, 14, 7, -14}, // 0x28 '(' - {98, 3, 18, 14, 4, -14}, // 0x29 ')' - {105, 9, 9, 14, 3, -14}, // 0x2A '*' - {116, 9, 11, 14, 3, -11}, // 0x2B '+' - {129, 5, 7, 14, 3, -3}, // 0x2C ',' - {134, 11, 1, 14, 2, -6}, // 0x2D '-' - {136, 3, 3, 14, 5, -2}, // 0x2E '.' - {138, 9, 18, 14, 3, -15}, // 0x2F '/' - {159, 9, 15, 14, 3, -14}, // 0x30 '0' - {176, 7, 14, 14, 4, -13}, // 0x31 '1' - {189, 9, 15, 14, 2, -14}, // 0x32 '2' - {206, 10, 15, 14, 2, -14}, // 0x33 '3' - {225, 8, 15, 14, 3, -14}, // 0x34 '4' - {240, 9, 15, 14, 3, -14}, // 0x35 '5' - {257, 9, 15, 14, 3, -14}, // 0x36 '6' - {274, 8, 15, 14, 3, -14}, // 0x37 '7' - {289, 9, 15, 14, 3, -14}, // 0x38 '8' - {306, 9, 15, 14, 3, -14}, // 0x39 '9' - {323, 3, 10, 14, 5, -9}, // 0x3A ':' - {327, 5, 13, 14, 3, -9}, // 0x3B ';' - {336, 11, 11, 14, 2, -11}, // 0x3C '<' - {352, 12, 4, 14, 1, -8}, // 0x3D '=' - {358, 11, 11, 14, 2, -11}, // 0x3E '>' - {374, 9, 14, 14, 3, -13}, // 0x3F '?' - {390, 9, 16, 14, 3, -14}, // 0x40 '@' - {408, 14, 14, 14, 0, -13}, // 0x41 'A' - {433, 11, 14, 14, 2, -13}, // 0x42 'B' - {453, 10, 14, 14, 2, -13}, // 0x43 'C' - {471, 10, 14, 14, 2, -13}, // 0x44 'D' - {489, 11, 14, 14, 2, -13}, // 0x45 'E' - {509, 11, 14, 14, 2, -13}, // 0x46 'F' - {529, 11, 14, 14, 2, -13}, // 0x47 'G' - {549, 10, 14, 14, 2, -13}, // 0x48 'H' - {567, 7, 14, 14, 4, -13}, // 0x49 'I' - {580, 11, 14, 14, 2, -13}, // 0x4A 'J' - {600, 12, 14, 14, 2, -13}, // 0x4B 'K' - {621, 11, 14, 14, 2, -13}, // 0x4C 'L' - {641, 13, 14, 14, 1, -13}, // 0x4D 'M' - {664, 12, 14, 14, 1, -13}, // 0x4E 'N' - {685, 12, 14, 14, 1, -13}, // 0x4F 'O' - {706, 10, 14, 14, 2, -13}, // 0x50 'P' - {724, 12, 17, 14, 1, -13}, // 0x51 'Q' - {750, 12, 14, 14, 2, -13}, // 0x52 'R' - {771, 10, 14, 14, 2, -13}, // 0x53 'S' - {789, 11, 14, 14, 2, -13}, // 0x54 'T' - {809, 12, 14, 14, 1, -13}, // 0x55 'U' - {830, 14, 14, 14, 0, -13}, // 0x56 'V' - {855, 14, 14, 14, 0, -13}, // 0x57 'W' - {880, 12, 14, 14, 1, -13}, // 0x58 'X' - {901, 12, 14, 14, 1, -13}, // 0x59 'Y' - {922, 9, 14, 14, 3, -13}, // 0x5A 'Z' - {938, 3, 18, 14, 7, -14}, // 0x5B '[' - {945, 9, 18, 14, 3, -15}, // 0x5C '\' - {966, 3, 18, 14, 5, -14}, // 0x5D ']' - {973, 9, 6, 14, 3, -14}, // 0x5E '^' - {980, 14, 1, 14, 0, 3}, // 0x5F '_' - {982, 4, 4, 14, 4, -15}, // 0x60 '`' - {984, 10, 10, 14, 2, -9}, // 0x61 'a' - {997, 13, 15, 14, 0, -14}, // 0x62 'b' - {1022, 11, 10, 14, 2, -9}, // 0x63 'c' - {1036, 11, 15, 14, 2, -14}, // 0x64 'd' - {1057, 10, 10, 14, 2, -9}, // 0x65 'e' - {1070, 9, 15, 14, 4, -14}, // 0x66 'f' - {1087, 11, 14, 14, 2, -9}, // 0x67 'g' - {1107, 10, 15, 14, 2, -14}, // 0x68 'h' - {1126, 9, 15, 14, 3, -14}, // 0x69 'i' - {1143, 7, 19, 14, 3, -14}, // 0x6A 'j' - {1160, 12, 15, 14, 1, -14}, // 0x6B 'k' - {1183, 9, 15, 14, 3, -14}, // 0x6C 'l' - {1200, 13, 10, 14, 1, -9}, // 0x6D 'm' - {1217, 12, 10, 14, 1, -9}, // 0x6E 'n' - {1232, 11, 10, 14, 2, -9}, // 0x6F 'o' - {1246, 12, 14, 14, 1, -9}, // 0x70 'p' - {1267, 11, 14, 14, 2, -9}, // 0x71 'q' - {1287, 10, 10, 14, 3, -9}, // 0x72 'r' - {1300, 10, 10, 14, 2, -9}, // 0x73 's' - {1313, 11, 14, 14, 1, -13}, // 0x74 't' - {1333, 11, 10, 14, 2, -9}, // 0x75 'u' - {1347, 13, 10, 14, 1, -9}, // 0x76 'v' - {1364, 13, 10, 14, 1, -9}, // 0x77 'w' - {1381, 12, 10, 14, 1, -9}, // 0x78 'x' - {1396, 12, 14, 14, 1, -9}, // 0x79 'y' - {1417, 9, 10, 14, 3, -9}, // 0x7A 'z' - {1429, 5, 18, 14, 5, -14}, // 0x7B '{' - {1441, 1, 18, 14, 7, -14}, // 0x7C '|' - {1444, 5, 18, 14, 5, -14}, // 0x7D '}' - {1456, 10, 3, 14, 2, -7}}; // 0x7E '~' - -const GFXfont FreeMono12pt7b PROGMEM = {(uint8_t *)FreeMono12pt7bBitmaps, - (GFXglyph *)FreeMono12pt7bGlyphs, 0x20, - 0x7E, 24}; - -// Approx. 2132 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono18pt7b.h deleted file mode 100644 index 6a3641c..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono18pt7b.h +++ /dev/null @@ -1,365 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono18pt7bBitmaps[] PROGMEM = { - 0x27, 0x77, 0x77, 0x77, 0x77, 0x22, 0x22, 0x20, 0x00, 0x6F, 0xF6, 0xF1, - 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1E, 0xC3, 0x98, 0x33, 0x06, 0x60, 0xCC, - 0x18, 0x04, 0x20, 0x10, 0x80, 0x42, 0x01, 0x08, 0x04, 0x20, 0x10, 0x80, - 0x42, 0x01, 0x10, 0x04, 0x41, 0xFF, 0xF0, 0x44, 0x02, 0x10, 0x08, 0x40, - 0x21, 0x0F, 0xFF, 0xC2, 0x10, 0x08, 0x40, 0x21, 0x00, 0x84, 0x02, 0x10, - 0x08, 0x40, 0x23, 0x00, 0x88, 0x02, 0x20, 0x02, 0x00, 0x10, 0x00, 0x80, - 0x1F, 0xA3, 0x07, 0x10, 0x09, 0x00, 0x48, 0x00, 0x40, 0x03, 0x00, 0x0C, - 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x18, 0x00, 0x20, 0x01, 0x80, 0x0C, 0x00, - 0x70, 0x05, 0xE0, 0xC9, 0xF8, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, - 0x10, 0x00, 0x1E, 0x00, 0x42, 0x01, 0x02, 0x02, 0x04, 0x04, 0x08, 0x08, - 0x10, 0x08, 0x40, 0x0F, 0x00, 0x00, 0x1E, 0x01, 0xF0, 0x1F, 0x01, 0xE0, - 0x0E, 0x00, 0x00, 0x3C, 0x00, 0x86, 0x02, 0x06, 0x04, 0x04, 0x08, 0x08, - 0x10, 0x30, 0x10, 0xC0, 0x1E, 0x00, 0x0F, 0xC1, 0x00, 0x20, 0x02, 0x00, - 0x20, 0x02, 0x00, 0x10, 0x01, 0x00, 0x08, 0x03, 0xC0, 0x6C, 0x3C, 0x62, - 0x82, 0x68, 0x34, 0x81, 0xCC, 0x08, 0x61, 0xC3, 0xE7, 0xFF, 0xFF, 0xF6, - 0x66, 0x66, 0x08, 0xC4, 0x62, 0x31, 0x8C, 0xC6, 0x31, 0x8C, 0x63, 0x18, - 0xC3, 0x18, 0xC2, 0x18, 0xC3, 0x18, 0x86, 0x10, 0xC2, 0x18, 0xC6, 0x10, - 0xC6, 0x31, 0x8C, 0x63, 0x18, 0x8C, 0x62, 0x31, 0x98, 0x80, 0x02, 0x00, - 0x10, 0x00, 0x80, 0x04, 0x0C, 0x21, 0x9D, 0x70, 0x1C, 0x00, 0xA0, 0x0D, - 0x80, 0xC6, 0x04, 0x10, 0x40, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, - 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0xFF, 0xFE, 0x02, - 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, - 0x01, 0x00, 0x3E, 0x78, 0xF3, 0xC7, 0x8E, 0x18, 0x70, 0xC1, 0x80, 0xFF, - 0xFE, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x08, 0x00, 0xC0, 0x04, 0x00, 0x60, - 0x02, 0x00, 0x30, 0x01, 0x00, 0x18, 0x00, 0x80, 0x0C, 0x00, 0x40, 0x02, - 0x00, 0x20, 0x01, 0x00, 0x10, 0x00, 0x80, 0x08, 0x00, 0x40, 0x04, 0x00, - 0x20, 0x02, 0x00, 0x10, 0x01, 0x00, 0x08, 0x00, 0x80, 0x04, 0x00, 0x00, - 0x0F, 0x81, 0x82, 0x08, 0x08, 0x80, 0x24, 0x01, 0x60, 0x0E, 0x00, 0x30, - 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x06, 0x00, - 0x30, 0x03, 0x40, 0x12, 0x00, 0x88, 0x08, 0x60, 0xC0, 0xF8, 0x00, 0x06, - 0x00, 0x70, 0x06, 0x80, 0x64, 0x06, 0x20, 0x31, 0x00, 0x08, 0x00, 0x40, - 0x02, 0x00, 0x10, 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, - 0x40, 0x02, 0x00, 0x10, 0x00, 0x80, 0x04, 0x0F, 0xFF, 0x80, 0x0F, 0x80, - 0xC3, 0x08, 0x04, 0x80, 0x24, 0x00, 0x80, 0x04, 0x00, 0x20, 0x02, 0x00, - 0x10, 0x01, 0x00, 0x10, 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x01, 0x80, - 0x18, 0x01, 0x80, 0x58, 0x03, 0x80, 0x1F, 0xFF, 0x80, 0x0F, 0xC0, 0xC0, - 0x86, 0x01, 0x00, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x04, 0x00, - 0x20, 0x0F, 0x00, 0x06, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x40, - 0x01, 0x00, 0x04, 0x00, 0x2C, 0x01, 0x9C, 0x0C, 0x0F, 0xC0, 0x01, 0xC0, - 0x14, 0x02, 0x40, 0x64, 0x04, 0x40, 0xC4, 0x08, 0x41, 0x84, 0x10, 0x42, - 0x04, 0x20, 0x44, 0x04, 0x40, 0x48, 0x04, 0xFF, 0xF0, 0x04, 0x00, 0x40, - 0x04, 0x00, 0x40, 0x04, 0x07, 0xF0, 0x3F, 0xF0, 0x80, 0x02, 0x00, 0x08, - 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x0B, 0xF0, 0x30, 0x30, 0x00, 0x60, - 0x00, 0x80, 0x01, 0x00, 0x04, 0x00, 0x10, 0x00, 0x40, 0x01, 0x00, 0x0E, - 0x00, 0x2C, 0x01, 0x0C, 0x18, 0x0F, 0xC0, 0x01, 0xF0, 0x60, 0x18, 0x03, - 0x00, 0x20, 0x04, 0x00, 0x40, 0x0C, 0x00, 0x80, 0x08, 0xF8, 0x98, 0x4A, - 0x02, 0xE0, 0x3C, 0x01, 0x80, 0x14, 0x01, 0x40, 0x14, 0x03, 0x20, 0x21, - 0x0C, 0x0F, 0x80, 0xFF, 0xF8, 0x01, 0x80, 0x18, 0x03, 0x00, 0x20, 0x02, - 0x00, 0x20, 0x04, 0x00, 0x40, 0x04, 0x00, 0xC0, 0x08, 0x00, 0x80, 0x18, - 0x01, 0x00, 0x10, 0x01, 0x00, 0x30, 0x02, 0x00, 0x20, 0x02, 0x00, 0x0F, - 0x81, 0x83, 0x10, 0x05, 0x80, 0x38, 0x00, 0xC0, 0x06, 0x00, 0x30, 0x03, - 0x40, 0x11, 0x83, 0x07, 0xF0, 0x60, 0xC4, 0x01, 0x60, 0x0E, 0x00, 0x30, - 0x01, 0x80, 0x0E, 0x00, 0xD0, 0x04, 0x60, 0xC1, 0xFC, 0x00, 0x1F, 0x03, - 0x08, 0x40, 0x4C, 0x02, 0x80, 0x28, 0x02, 0x80, 0x18, 0x03, 0xC0, 0x74, - 0x05, 0x21, 0x91, 0xF1, 0x00, 0x10, 0x03, 0x00, 0x20, 0x02, 0x00, 0x40, - 0x0C, 0x01, 0x80, 0x60, 0xF8, 0x00, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, - 0x1D, 0xFF, 0xFD, 0xC0, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, 0x00, - 0x00, 0xF1, 0xE3, 0x8F, 0x1C, 0x38, 0xE1, 0xC3, 0x06, 0x00, 0x00, 0x06, - 0x00, 0x18, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x06, 0x00, 0x38, - 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x18, 0x00, 0x1C, 0x00, 0x0E, - 0x00, 0x07, 0x00, 0x03, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x07, 0xFF, 0xFC, 0xC0, 0x00, 0xC0, 0x00, 0xE0, 0x00, 0x70, - 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0C, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x70, - 0x03, 0x80, 0x0C, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0x60, 0x00, 0x3F, - 0x8E, 0x0C, 0x80, 0x28, 0x01, 0x80, 0x10, 0x01, 0x00, 0x10, 0x02, 0x00, - 0xC0, 0x38, 0x06, 0x00, 0x40, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, - 0x01, 0xF0, 0x1F, 0x00, 0xE0, 0x0F, 0x01, 0x86, 0x08, 0x08, 0x80, 0x24, - 0x01, 0x40, 0x0A, 0x00, 0x50, 0x1E, 0x83, 0x14, 0x20, 0xA2, 0x05, 0x10, - 0x28, 0x81, 0x46, 0x0A, 0x18, 0x50, 0x3F, 0x80, 0x04, 0x00, 0x10, 0x00, - 0x80, 0x02, 0x00, 0x18, 0x18, 0x3F, 0x00, 0x1F, 0xF0, 0x00, 0x06, 0x80, - 0x00, 0x34, 0x00, 0x01, 0x30, 0x00, 0x18, 0x80, 0x00, 0x86, 0x00, 0x04, - 0x30, 0x00, 0x60, 0x80, 0x02, 0x06, 0x00, 0x10, 0x10, 0x01, 0x80, 0x80, - 0x08, 0x06, 0x00, 0x7F, 0xF0, 0x06, 0x00, 0x80, 0x20, 0x06, 0x01, 0x00, - 0x10, 0x18, 0x00, 0xC0, 0x80, 0x06, 0x04, 0x00, 0x11, 0xFC, 0x0F, 0xF0, - 0xFF, 0xF8, 0x04, 0x01, 0x01, 0x00, 0x20, 0x40, 0x04, 0x10, 0x01, 0x04, - 0x00, 0x41, 0x00, 0x10, 0x40, 0x08, 0x10, 0x0C, 0x07, 0xFF, 0x01, 0x00, - 0x70, 0x40, 0x06, 0x10, 0x00, 0x84, 0x00, 0x11, 0x00, 0x04, 0x40, 0x01, - 0x10, 0x00, 0x44, 0x00, 0x21, 0x00, 0x33, 0xFF, 0xF8, 0x03, 0xF1, 0x06, - 0x0E, 0x8C, 0x01, 0xC4, 0x00, 0x64, 0x00, 0x12, 0x00, 0x0A, 0x00, 0x01, - 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, 0x08, 0x00, - 0x04, 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x20, 0x01, 0x88, 0x01, 0x83, - 0x03, 0x80, 0x7E, 0x00, 0xFF, 0xE0, 0x20, 0x18, 0x20, 0x0C, 0x20, 0x04, - 0x20, 0x02, 0x20, 0x02, 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, - 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, 0x20, 0x01, 0x20, 0x02, 0x20, 0x02, - 0x20, 0x04, 0x20, 0x0C, 0x20, 0x18, 0xFF, 0xE0, 0xFF, 0xFF, 0x08, 0x00, - 0x84, 0x00, 0x42, 0x00, 0x21, 0x00, 0x10, 0x80, 0x00, 0x40, 0x00, 0x20, - 0x40, 0x10, 0x20, 0x0F, 0xF0, 0x04, 0x08, 0x02, 0x04, 0x01, 0x00, 0x00, - 0x80, 0x00, 0x40, 0x02, 0x20, 0x01, 0x10, 0x00, 0x88, 0x00, 0x44, 0x00, - 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0x88, 0x00, 0x44, 0x00, 0x22, 0x00, 0x11, - 0x00, 0x08, 0x80, 0x00, 0x40, 0x00, 0x20, 0x40, 0x10, 0x20, 0x0F, 0xF0, - 0x04, 0x08, 0x02, 0x04, 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, - 0x00, 0x10, 0x00, 0x08, 0x00, 0x04, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xF9, - 0x06, 0x07, 0x84, 0x00, 0xC4, 0x00, 0x24, 0x00, 0x12, 0x00, 0x02, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x0F, 0xF8, - 0x00, 0x14, 0x00, 0x09, 0x00, 0x04, 0x80, 0x02, 0x20, 0x01, 0x18, 0x00, - 0x83, 0x01, 0xC0, 0x7F, 0x00, 0xFC, 0x3F, 0x20, 0x04, 0x20, 0x04, 0x20, - 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x3F, - 0xFC, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, - 0x04, 0x20, 0x04, 0x20, 0x04, 0x20, 0x04, 0xFC, 0x3F, 0xFF, 0xF8, 0x10, - 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, - 0x10, 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x40, 0x02, - 0x00, 0x10, 0x00, 0x81, 0xFF, 0xF0, 0x03, 0xFF, 0x80, 0x04, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, - 0x08, 0x00, 0x04, 0x00, 0x02, 0x10, 0x01, 0x08, 0x00, 0x84, 0x00, 0x42, - 0x00, 0x21, 0x00, 0x10, 0x80, 0x10, 0x20, 0x18, 0x0C, 0x18, 0x01, 0xF0, - 0x00, 0xFF, 0x1F, 0x84, 0x01, 0x81, 0x00, 0xC0, 0x40, 0x60, 0x10, 0x30, - 0x04, 0x18, 0x01, 0x0C, 0x00, 0x46, 0x00, 0x13, 0x00, 0x05, 0xF0, 0x01, - 0xC6, 0x00, 0x60, 0xC0, 0x10, 0x18, 0x04, 0x06, 0x01, 0x00, 0xC0, 0x40, - 0x30, 0x10, 0x04, 0x04, 0x01, 0x81, 0x00, 0x23, 0xFC, 0x0F, 0xFF, 0x80, - 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, - 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, - 0x42, 0x00, 0x84, 0x01, 0x08, 0x02, 0x10, 0x04, 0x20, 0x0F, 0xFF, 0xF0, - 0xF0, 0x01, 0xE7, 0x00, 0x70, 0xA0, 0x0A, 0x16, 0x03, 0x42, 0x40, 0x48, - 0x4C, 0x19, 0x08, 0x82, 0x21, 0x10, 0x44, 0x23, 0x18, 0x84, 0x22, 0x10, - 0x86, 0xC2, 0x10, 0x50, 0x42, 0x0E, 0x08, 0x41, 0xC1, 0x08, 0x00, 0x21, - 0x00, 0x04, 0x20, 0x00, 0x84, 0x00, 0x10, 0x80, 0x02, 0x7F, 0x03, 0xF0, - 0xF8, 0x1F, 0xC6, 0x00, 0x41, 0xC0, 0x10, 0x50, 0x04, 0x12, 0x01, 0x04, - 0xC0, 0x41, 0x10, 0x10, 0x46, 0x04, 0x10, 0x81, 0x04, 0x10, 0x41, 0x04, - 0x10, 0x40, 0x84, 0x10, 0x31, 0x04, 0x04, 0x41, 0x01, 0x90, 0x40, 0x24, - 0x10, 0x05, 0x04, 0x01, 0xC1, 0x00, 0x31, 0xFC, 0x0C, 0x03, 0xE0, 0x06, - 0x0C, 0x04, 0x01, 0x04, 0x00, 0x46, 0x00, 0x32, 0x00, 0x0B, 0x00, 0x05, - 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, - 0x0E, 0x00, 0x0D, 0x00, 0x04, 0xC0, 0x06, 0x20, 0x02, 0x08, 0x02, 0x03, - 0x06, 0x00, 0x7C, 0x00, 0xFF, 0xF0, 0x10, 0x0C, 0x10, 0x02, 0x10, 0x03, - 0x10, 0x01, 0x10, 0x01, 0x10, 0x01, 0x10, 0x03, 0x10, 0x06, 0x10, 0x0C, - 0x1F, 0xF0, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, - 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0xFF, 0xC0, 0x03, 0xE0, 0x06, 0x0C, - 0x04, 0x01, 0x04, 0x00, 0x46, 0x00, 0x32, 0x00, 0x0B, 0x00, 0x07, 0x00, - 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, 0x0E, - 0x00, 0x0D, 0x00, 0x04, 0xC0, 0x06, 0x20, 0x02, 0x08, 0x02, 0x03, 0x06, - 0x00, 0xFC, 0x00, 0x30, 0x00, 0x30, 0x00, 0x7F, 0xC6, 0x38, 0x1E, 0xFF, - 0xF0, 0x02, 0x01, 0x80, 0x40, 0x08, 0x08, 0x01, 0x81, 0x00, 0x10, 0x20, - 0x02, 0x04, 0x00, 0x40, 0x80, 0x18, 0x10, 0x06, 0x02, 0x03, 0x80, 0x7F, - 0xC0, 0x08, 0x18, 0x01, 0x01, 0x80, 0x20, 0x18, 0x04, 0x01, 0x80, 0x80, - 0x10, 0x10, 0x03, 0x02, 0x00, 0x20, 0x40, 0x06, 0x7F, 0x80, 0x70, 0x0F, - 0xC8, 0x61, 0xE2, 0x01, 0x90, 0x02, 0x40, 0x09, 0x00, 0x04, 0x00, 0x08, - 0x00, 0x38, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, - 0x00, 0x60, 0x01, 0x80, 0x0F, 0x00, 0x2B, 0x03, 0x23, 0xF0, 0xFF, 0xFF, - 0x02, 0x06, 0x04, 0x0C, 0x08, 0x18, 0x10, 0x20, 0x20, 0x00, 0x40, 0x00, - 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, - 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x01, 0xFF, 0xC0, - 0xFC, 0x1F, 0x90, 0x01, 0x08, 0x00, 0x84, 0x00, 0x42, 0x00, 0x21, 0x00, - 0x10, 0x80, 0x08, 0x40, 0x04, 0x20, 0x02, 0x10, 0x01, 0x08, 0x00, 0x84, - 0x00, 0x42, 0x00, 0x21, 0x00, 0x10, 0x80, 0x08, 0x40, 0x04, 0x10, 0x04, - 0x0C, 0x06, 0x03, 0x06, 0x00, 0x7C, 0x00, 0xFE, 0x03, 0xF8, 0x80, 0x02, - 0x04, 0x00, 0x10, 0x30, 0x01, 0x80, 0x80, 0x08, 0x06, 0x00, 0xC0, 0x30, - 0x06, 0x00, 0x80, 0x20, 0x06, 0x03, 0x00, 0x30, 0x10, 0x00, 0x80, 0x80, - 0x06, 0x0C, 0x00, 0x10, 0x40, 0x00, 0x86, 0x00, 0x06, 0x20, 0x00, 0x11, - 0x00, 0x00, 0xD8, 0x00, 0x06, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, - 0xFC, 0x0F, 0xE8, 0x00, 0x19, 0x00, 0x03, 0x10, 0x00, 0x62, 0x00, 0x08, - 0x41, 0x81, 0x08, 0x28, 0x21, 0x05, 0x04, 0x21, 0xA0, 0x84, 0x36, 0x30, - 0x84, 0x46, 0x08, 0x88, 0xC1, 0x31, 0x18, 0x24, 0x12, 0x04, 0x82, 0x40, - 0xB0, 0x48, 0x14, 0x09, 0x02, 0x80, 0xA0, 0x30, 0x1C, 0x06, 0x03, 0x80, - 0x7E, 0x0F, 0xC2, 0x00, 0x60, 0x60, 0x0C, 0x06, 0x03, 0x00, 0x60, 0xC0, - 0x0C, 0x10, 0x00, 0xC6, 0x00, 0x0D, 0x80, 0x00, 0xA0, 0x00, 0x1C, 0x00, - 0x03, 0x80, 0x00, 0xD8, 0x00, 0x11, 0x00, 0x06, 0x30, 0x01, 0x83, 0x00, - 0x60, 0x30, 0x08, 0x06, 0x03, 0x00, 0x60, 0xC0, 0x06, 0x7F, 0x07, 0xF0, - 0xFC, 0x1F, 0x98, 0x03, 0x04, 0x01, 0x03, 0x01, 0x80, 0xC1, 0x80, 0x20, - 0x80, 0x18, 0xC0, 0x04, 0x40, 0x03, 0x60, 0x00, 0xE0, 0x00, 0x20, 0x00, - 0x10, 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x80, - 0x00, 0x40, 0x00, 0x20, 0x03, 0xFF, 0x80, 0xFF, 0xF4, 0x00, 0xA0, 0x09, - 0x00, 0x48, 0x04, 0x40, 0x40, 0x02, 0x00, 0x20, 0x02, 0x00, 0x10, 0x01, - 0x00, 0x10, 0x00, 0x80, 0x08, 0x04, 0x80, 0x24, 0x01, 0x40, 0x0C, 0x00, - 0x60, 0x03, 0xFF, 0xF0, 0xFC, 0x21, 0x08, 0x42, 0x10, 0x84, 0x21, 0x08, - 0x42, 0x10, 0x84, 0x21, 0x08, 0x42, 0x10, 0xF8, 0x80, 0x02, 0x00, 0x10, - 0x00, 0xC0, 0x02, 0x00, 0x18, 0x00, 0x40, 0x03, 0x00, 0x08, 0x00, 0x40, - 0x01, 0x00, 0x08, 0x00, 0x20, 0x01, 0x00, 0x04, 0x00, 0x20, 0x00, 0x80, - 0x04, 0x00, 0x10, 0x00, 0x80, 0x02, 0x00, 0x10, 0x00, 0x40, 0x02, 0x00, - 0x08, 0x00, 0x40, 0xF8, 0x42, 0x10, 0x84, 0x21, 0x08, 0x42, 0x10, 0x84, - 0x21, 0x08, 0x42, 0x10, 0x84, 0x21, 0xF8, 0x02, 0x00, 0x38, 0x03, 0x60, - 0x11, 0x01, 0x8C, 0x18, 0x31, 0x80, 0xD8, 0x03, 0x80, 0x08, 0xFF, 0xFF, - 0xF8, 0xC1, 0x83, 0x06, 0x0C, 0x0F, 0xC0, 0x70, 0x30, 0x00, 0x10, 0x00, - 0x08, 0x00, 0x08, 0x00, 0x08, 0x0F, 0xF8, 0x30, 0x08, 0x40, 0x08, 0x80, - 0x08, 0x80, 0x08, 0x80, 0x08, 0x80, 0x38, 0x60, 0xE8, 0x3F, 0x8F, 0xF0, - 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x04, 0x00, - 0x01, 0x0F, 0x80, 0x4C, 0x18, 0x14, 0x01, 0x06, 0x00, 0x21, 0x80, 0x08, - 0x40, 0x01, 0x10, 0x00, 0x44, 0x00, 0x11, 0x00, 0x04, 0x40, 0x01, 0x18, - 0x00, 0x86, 0x00, 0x21, 0xC0, 0x10, 0x5C, 0x18, 0xF1, 0xF8, 0x00, 0x07, - 0xE4, 0x30, 0x78, 0x80, 0x32, 0x00, 0x24, 0x00, 0x50, 0x00, 0x20, 0x00, - 0x40, 0x00, 0x80, 0x01, 0x00, 0x03, 0x00, 0x02, 0x00, 0x12, 0x00, 0xC3, - 0x07, 0x01, 0xF8, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x80, 0x00, 0x20, 0x00, - 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x7C, 0x20, 0x60, 0xC8, 0x20, 0x0A, - 0x10, 0x01, 0x84, 0x00, 0x62, 0x00, 0x08, 0x80, 0x02, 0x20, 0x00, 0x88, - 0x00, 0x22, 0x00, 0x08, 0xC0, 0x06, 0x10, 0x01, 0x82, 0x00, 0xE0, 0x60, - 0xE8, 0x0F, 0xE3, 0xC0, 0x07, 0xE0, 0x1C, 0x18, 0x30, 0x0C, 0x60, 0x06, - 0x40, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0xFF, 0xFF, 0xC0, 0x00, 0xC0, 0x00, - 0x40, 0x00, 0x60, 0x00, 0x30, 0x03, 0x0C, 0x0E, 0x03, 0xF0, 0x03, 0xFC, - 0x18, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x0F, 0xFF, 0x82, 0x00, - 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, - 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0xFF, 0xF0, 0x0F, - 0xC7, 0x9C, 0x3A, 0x18, 0x07, 0x08, 0x01, 0x8C, 0x00, 0xC4, 0x00, 0x22, - 0x00, 0x11, 0x00, 0x08, 0x80, 0x04, 0x40, 0x02, 0x10, 0x03, 0x08, 0x01, - 0x82, 0x01, 0x40, 0xC3, 0x20, 0x3F, 0x10, 0x00, 0x08, 0x00, 0x04, 0x00, - 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x7F, 0x00, 0xF0, 0x00, - 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x47, - 0xC0, 0x2C, 0x18, 0x1C, 0x04, 0x0C, 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, - 0x00, 0x20, 0x80, 0x10, 0x40, 0x08, 0x20, 0x04, 0x10, 0x02, 0x08, 0x01, - 0x04, 0x00, 0x82, 0x00, 0x47, 0xC0, 0xF8, 0x06, 0x00, 0x18, 0x00, 0x60, - 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x02, 0x00, 0x08, - 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, - 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x03, 0xFF, 0xF0, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x40, 0x10, 0x04, - 0x01, 0x00, 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, 0x10, 0x04, 0x01, 0x00, - 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, 0x10, 0x08, 0x06, 0xFE, 0x00, 0xF0, - 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, - 0xFE, 0x10, 0x30, 0x10, 0xE0, 0x11, 0xC0, 0x13, 0x00, 0x16, 0x00, 0x1E, - 0x00, 0x1B, 0x00, 0x11, 0x80, 0x10, 0xC0, 0x10, 0x60, 0x10, 0x30, 0x10, - 0x18, 0x10, 0x1C, 0xF0, 0x3F, 0x7E, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, - 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, - 0x00, 0x80, 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x02, 0x00, 0x08, - 0x00, 0x20, 0x00, 0x80, 0xFF, 0xFC, 0xEF, 0x9E, 0x07, 0x1E, 0x20, 0xC1, - 0x82, 0x10, 0x20, 0x42, 0x04, 0x08, 0x40, 0x81, 0x08, 0x10, 0x21, 0x02, - 0x04, 0x20, 0x40, 0x84, 0x08, 0x10, 0x81, 0x02, 0x10, 0x20, 0x42, 0x04, - 0x08, 0x40, 0x81, 0x3E, 0x1C, 0x38, 0x71, 0xF0, 0x0B, 0x06, 0x07, 0x01, - 0x03, 0x00, 0x41, 0x00, 0x20, 0x80, 0x10, 0x40, 0x08, 0x20, 0x04, 0x10, - 0x02, 0x08, 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, 0x00, 0x20, 0x80, 0x13, - 0xF0, 0x3E, 0x07, 0xC0, 0x30, 0x60, 0x80, 0x22, 0x00, 0x24, 0x00, 0x50, - 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x05, 0x00, 0x12, 0x00, - 0x22, 0x00, 0x83, 0x06, 0x01, 0xF0, 0x00, 0xF1, 0xFC, 0x05, 0xC1, 0x81, - 0xC0, 0x10, 0x60, 0x02, 0x18, 0x00, 0xC4, 0x00, 0x11, 0x00, 0x04, 0x40, - 0x01, 0x10, 0x00, 0x44, 0x00, 0x11, 0x80, 0x08, 0x60, 0x02, 0x14, 0x01, - 0x04, 0xC1, 0x81, 0x0F, 0x80, 0x40, 0x00, 0x10, 0x00, 0x04, 0x00, 0x01, - 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xE3, 0xC6, - 0x0E, 0x86, 0x00, 0xE1, 0x00, 0x18, 0xC0, 0x06, 0x20, 0x00, 0x88, 0x00, - 0x22, 0x00, 0x08, 0x80, 0x02, 0x20, 0x00, 0x84, 0x00, 0x61, 0x00, 0x18, - 0x20, 0x0A, 0x06, 0x0C, 0x80, 0x7C, 0x20, 0x00, 0x08, 0x00, 0x02, 0x00, - 0x00, 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x02, 0x00, 0x0F, 0xF0, 0xF8, - 0x7C, 0x11, 0x8C, 0x2C, 0x00, 0x70, 0x00, 0xC0, 0x01, 0x00, 0x02, 0x00, - 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x01, - 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xD1, 0x83, 0x98, 0x04, 0x80, 0x24, 0x00, - 0x30, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0x30, 0x00, 0xE0, 0x03, 0x00, 0x1C, - 0x01, 0xF0, 0x1A, 0x7F, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, - 0x00, 0x08, 0x00, 0xFF, 0xFC, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, - 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, - 0x00, 0x08, 0x00, 0x08, 0x01, 0x06, 0x0F, 0x03, 0xF8, 0xF0, 0x3E, 0x08, - 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, 0x00, 0x20, 0x80, 0x10, 0x40, 0x08, - 0x20, 0x04, 0x10, 0x02, 0x08, 0x01, 0x04, 0x00, 0x82, 0x00, 0x41, 0x00, - 0xE0, 0x41, 0xD0, 0x1F, 0x8E, 0xFE, 0x0F, 0xE2, 0x00, 0x20, 0x60, 0x0C, - 0x0C, 0x01, 0x80, 0x80, 0x20, 0x18, 0x0C, 0x01, 0x01, 0x00, 0x30, 0x60, - 0x02, 0x08, 0x00, 0x41, 0x00, 0x0C, 0x60, 0x00, 0x88, 0x00, 0x19, 0x00, - 0x01, 0x40, 0x00, 0x38, 0x00, 0xFC, 0x07, 0xE4, 0x00, 0x10, 0x80, 0x02, - 0x18, 0x20, 0xC3, 0x0E, 0x18, 0x21, 0x42, 0x04, 0x28, 0x40, 0x8D, 0x88, - 0x19, 0x93, 0x03, 0x22, 0x60, 0x2C, 0x68, 0x05, 0x85, 0x00, 0xA0, 0xA0, - 0x1C, 0x1C, 0x01, 0x81, 0x80, 0x7C, 0x1F, 0x18, 0x03, 0x06, 0x03, 0x01, - 0x83, 0x00, 0x63, 0x00, 0x1B, 0x00, 0x07, 0x00, 0x03, 0x80, 0x03, 0x60, - 0x03, 0x18, 0x03, 0x06, 0x03, 0x01, 0x83, 0x00, 0x61, 0x00, 0x33, 0xF0, - 0x7E, 0xFC, 0x1F, 0x90, 0x01, 0x8C, 0x00, 0x86, 0x00, 0xC1, 0x80, 0x40, - 0xC0, 0x60, 0x20, 0x20, 0x18, 0x30, 0x04, 0x10, 0x03, 0x08, 0x00, 0x8C, - 0x00, 0x64, 0x00, 0x16, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x01, 0x00, 0x01, - 0x80, 0x00, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x20, 0x07, 0xFE, 0x00, - 0xFF, 0xF4, 0x01, 0x20, 0x09, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x00, - 0xC0, 0x04, 0x00, 0x40, 0x04, 0x00, 0x40, 0x14, 0x00, 0xA0, 0x07, 0xFF, - 0xE0, 0x07, 0x0C, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x30, 0xC0, 0x30, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x0C, 0x07, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x10, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x08, 0x07, 0x0C, 0x10, 0x10, 0x10, 0x10, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x30, 0xE0, 0x1C, 0x00, 0x44, 0x0D, 0x84, - 0x36, 0x04, 0x40, 0x07, 0x00}; - -const GFXglyph FreeMono18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 4, 22, 21, 8, -21}, // 0x21 '!' - {11, 11, 10, 21, 5, -20}, // 0x22 '"' - {25, 14, 24, 21, 3, -21}, // 0x23 '#' - {67, 13, 26, 21, 4, -22}, // 0x24 '$' - {110, 15, 21, 21, 3, -20}, // 0x25 '%' - {150, 12, 18, 21, 4, -17}, // 0x26 '&' - {177, 4, 10, 21, 8, -20}, // 0x27 ''' - {182, 5, 25, 21, 10, -20}, // 0x28 '(' - {198, 5, 25, 21, 6, -20}, // 0x29 ')' - {214, 13, 12, 21, 4, -20}, // 0x2A '*' - {234, 15, 17, 21, 3, -17}, // 0x2B '+' - {266, 7, 10, 21, 5, -4}, // 0x2C ',' - {275, 15, 1, 21, 3, -9}, // 0x2D '-' - {277, 5, 5, 21, 8, -4}, // 0x2E '.' - {281, 13, 26, 21, 4, -22}, // 0x2F '/' - {324, 13, 21, 21, 4, -20}, // 0x30 '0' - {359, 13, 21, 21, 4, -20}, // 0x31 '1' - {394, 13, 21, 21, 3, -20}, // 0x32 '2' - {429, 14, 21, 21, 3, -20}, // 0x33 '3' - {466, 12, 21, 21, 4, -20}, // 0x34 '4' - {498, 14, 21, 21, 3, -20}, // 0x35 '5' - {535, 12, 21, 21, 5, -20}, // 0x36 '6' - {567, 12, 21, 21, 4, -20}, // 0x37 '7' - {599, 13, 21, 21, 4, -20}, // 0x38 '8' - {634, 12, 21, 21, 5, -20}, // 0x39 '9' - {666, 5, 15, 21, 8, -14}, // 0x3A ':' - {676, 7, 20, 21, 5, -14}, // 0x3B ';' - {694, 15, 16, 21, 3, -17}, // 0x3C '<' - {724, 17, 6, 21, 2, -12}, // 0x3D '=' - {737, 15, 16, 21, 3, -17}, // 0x3E '>' - {767, 12, 20, 21, 5, -19}, // 0x3F '?' - {797, 13, 23, 21, 4, -20}, // 0x40 '@' - {835, 21, 20, 21, 0, -19}, // 0x41 'A' - {888, 18, 20, 21, 1, -19}, // 0x42 'B' - {933, 17, 20, 21, 2, -19}, // 0x43 'C' - {976, 16, 20, 21, 2, -19}, // 0x44 'D' - {1016, 17, 20, 21, 1, -19}, // 0x45 'E' - {1059, 17, 20, 21, 1, -19}, // 0x46 'F' - {1102, 17, 20, 21, 2, -19}, // 0x47 'G' - {1145, 16, 20, 21, 2, -19}, // 0x48 'H' - {1185, 13, 20, 21, 4, -19}, // 0x49 'I' - {1218, 17, 20, 21, 3, -19}, // 0x4A 'J' - {1261, 18, 20, 21, 1, -19}, // 0x4B 'K' - {1306, 15, 20, 21, 3, -19}, // 0x4C 'L' - {1344, 19, 20, 21, 1, -19}, // 0x4D 'M' - {1392, 18, 20, 21, 1, -19}, // 0x4E 'N' - {1437, 17, 20, 21, 2, -19}, // 0x4F 'O' - {1480, 16, 20, 21, 1, -19}, // 0x50 'P' - {1520, 17, 24, 21, 2, -19}, // 0x51 'Q' - {1571, 19, 20, 21, 1, -19}, // 0x52 'R' - {1619, 14, 20, 21, 3, -19}, // 0x53 'S' - {1654, 15, 20, 21, 3, -19}, // 0x54 'T' - {1692, 17, 20, 21, 2, -19}, // 0x55 'U' - {1735, 21, 20, 21, 0, -19}, // 0x56 'V' - {1788, 19, 20, 21, 1, -19}, // 0x57 'W' - {1836, 19, 20, 21, 1, -19}, // 0x58 'X' - {1884, 17, 20, 21, 2, -19}, // 0x59 'Y' - {1927, 13, 20, 21, 4, -19}, // 0x5A 'Z' - {1960, 5, 25, 21, 10, -20}, // 0x5B '[' - {1976, 13, 26, 21, 4, -22}, // 0x5C '\' - {2019, 5, 25, 21, 6, -20}, // 0x5D ']' - {2035, 13, 9, 21, 4, -20}, // 0x5E '^' - {2050, 21, 1, 21, 0, 4}, // 0x5F '_' - {2053, 6, 5, 21, 5, -21}, // 0x60 '`' - {2057, 16, 15, 21, 3, -14}, // 0x61 'a' - {2087, 18, 21, 21, 1, -20}, // 0x62 'b' - {2135, 15, 15, 21, 3, -14}, // 0x63 'c' - {2164, 18, 21, 21, 2, -20}, // 0x64 'd' - {2212, 16, 15, 21, 2, -14}, // 0x65 'e' - {2242, 14, 21, 21, 4, -20}, // 0x66 'f' - {2279, 17, 22, 21, 2, -14}, // 0x67 'g' - {2326, 17, 21, 21, 1, -20}, // 0x68 'h' - {2371, 14, 22, 21, 4, -21}, // 0x69 'i' - {2410, 10, 29, 21, 5, -21}, // 0x6A 'j' - {2447, 16, 21, 21, 2, -20}, // 0x6B 'k' - {2489, 14, 21, 21, 4, -20}, // 0x6C 'l' - {2526, 19, 15, 21, 1, -14}, // 0x6D 'm' - {2562, 17, 15, 21, 1, -14}, // 0x6E 'n' - {2594, 15, 15, 21, 3, -14}, // 0x6F 'o' - {2623, 18, 22, 21, 1, -14}, // 0x70 'p' - {2673, 18, 22, 21, 2, -14}, // 0x71 'q' - {2723, 15, 15, 21, 3, -14}, // 0x72 'r' - {2752, 13, 15, 21, 4, -14}, // 0x73 's' - {2777, 16, 20, 21, 1, -19}, // 0x74 't' - {2817, 17, 15, 21, 1, -14}, // 0x75 'u' - {2849, 19, 15, 21, 1, -14}, // 0x76 'v' - {2885, 19, 15, 21, 1, -14}, // 0x77 'w' - {2921, 17, 15, 21, 2, -14}, // 0x78 'x' - {2953, 17, 22, 21, 2, -14}, // 0x79 'y' - {3000, 13, 15, 21, 4, -14}, // 0x7A 'z' - {3025, 8, 25, 21, 6, -20}, // 0x7B '{' - {3050, 1, 25, 21, 10, -20}, // 0x7C '|' - {3054, 8, 25, 21, 7, -20}, // 0x7D '}' - {3079, 15, 5, 21, 3, -11}}; // 0x7E '~' - -const GFXfont FreeMono18pt7b PROGMEM = {(uint8_t *)FreeMono18pt7bBitmaps, - (GFXglyph *)FreeMono18pt7bGlyphs, 0x20, - 0x7E, 35}; - -// Approx. 3761 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono24pt7b.h deleted file mode 100644 index 2540ed4..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono24pt7b.h +++ /dev/null @@ -1,579 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono24pt7bBitmaps[] PROGMEM = { - 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x10, 0x84, 0x21, 0x08, - 0x00, 0x00, 0x00, 0x03, 0xBF, 0xFF, 0xB8, 0xFE, 0x7F, 0x7C, 0x3E, 0x7C, - 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, 0x3C, - 0x3E, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x01, - 0x86, 0x00, 0x30, 0xC0, 0x06, 0x18, 0x00, 0xC3, 0x00, 0x18, 0x60, 0x03, - 0x0C, 0x00, 0x61, 0x80, 0x0C, 0x70, 0x01, 0x8C, 0x00, 0x61, 0x80, 0x0C, - 0x30, 0x3F, 0xFF, 0xF7, 0xFF, 0xFE, 0x06, 0x18, 0x00, 0xC3, 0x00, 0x18, - 0x60, 0x03, 0x0C, 0x00, 0x61, 0x80, 0x0C, 0x30, 0x7F, 0xFF, 0xEF, 0xFF, - 0xFC, 0x06, 0x18, 0x00, 0xC7, 0x00, 0x38, 0xC0, 0x06, 0x18, 0x00, 0xC3, - 0x00, 0x18, 0x60, 0x03, 0x0C, 0x00, 0x61, 0x80, 0x0C, 0x30, 0x01, 0x86, - 0x00, 0x30, 0xC0, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x0F, 0xC0, - 0x0F, 0xFD, 0x87, 0x03, 0xE3, 0x80, 0x39, 0xC0, 0x06, 0x60, 0x01, 0x98, - 0x00, 0x06, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0xC0, 0x00, 0x7F, - 0x80, 0x03, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0x60, 0x00, 0x1C, 0x00, 0x03, - 0x80, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x80, 0x0E, 0xFC, 0x0F, 0x37, - 0xFF, 0x80, 0x7F, 0x80, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x07, 0x80, 0x01, 0xFE, 0x00, 0x38, - 0x70, 0x03, 0x03, 0x00, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x18, 0x06, - 0x01, 0x80, 0x30, 0x30, 0x03, 0x87, 0x00, 0x1F, 0xE0, 0x30, 0x78, 0x1F, - 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x00, 0xF8, 0x00, - 0x0C, 0x01, 0xE0, 0x00, 0x7F, 0x80, 0x0E, 0x1C, 0x00, 0xC0, 0xC0, 0x18, - 0x06, 0x01, 0x80, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x0C, 0x0E, 0x00, - 0xE1, 0xC0, 0x07, 0xF8, 0x00, 0x1E, 0x00, 0x03, 0xEC, 0x01, 0xFF, 0x00, - 0xE1, 0x00, 0x70, 0x00, 0x18, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x30, - 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x7C, 0x00, 0x3B, 0x83, - 0xD8, 0x60, 0xFE, 0x0C, 0x33, 0x03, 0x98, 0xC0, 0x66, 0x30, 0x0D, 0x8C, - 0x03, 0xC3, 0x00, 0x70, 0x60, 0x1C, 0x1C, 0x0F, 0x03, 0x87, 0x7C, 0x7F, - 0x9F, 0x07, 0x80, 0x00, 0xFE, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x3C, - 0x70, 0xE1, 0xC3, 0x87, 0x00, 0x06, 0x1C, 0x30, 0xE1, 0x87, 0x0E, 0x18, - 0x70, 0xE1, 0xC3, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0x87, 0x0E, 0x0C, - 0x1C, 0x38, 0x70, 0x60, 0xE1, 0xC1, 0x83, 0x83, 0x06, 0x06, 0x04, 0xC1, - 0xC1, 0x83, 0x83, 0x07, 0x0E, 0x0C, 0x1C, 0x38, 0x70, 0xE0, 0xE1, 0xC3, - 0x87, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0x87, 0x0E, 0x1C, 0x30, 0x61, 0xC3, - 0x0E, 0x18, 0x70, 0xC1, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x03, 0x00, 0x00, 0xC0, 0x10, 0x30, 0x3F, 0x8C, 0x7C, 0xFF, 0xFC, 0x07, - 0xF8, 0x00, 0x78, 0x00, 0x1F, 0x00, 0x0C, 0xC0, 0x06, 0x18, 0x03, 0x87, - 0x00, 0xC0, 0xC0, 0x60, 0x18, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, - 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, - 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, - 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, - 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, - 0x1F, 0x8F, 0x87, 0xC7, 0xC3, 0xE1, 0xE1, 0xF0, 0xF0, 0x78, 0x38, 0x3C, - 0x1C, 0x0E, 0x06, 0x00, 0x7F, 0xFF, 0xFD, 0xFF, 0xFF, 0xF0, 0x7D, 0xFF, - 0xFF, 0xFF, 0xEF, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x18, 0x00, 0x06, - 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x18, 0x00, 0x0E, 0x00, - 0x03, 0x00, 0x01, 0xC0, 0x00, 0x60, 0x00, 0x38, 0x00, 0x0C, 0x00, 0x07, - 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x00, 0x03, - 0xF0, 0x03, 0xFF, 0x01, 0xE1, 0xE0, 0xE0, 0x18, 0x30, 0x03, 0x1C, 0x00, - 0xE6, 0x00, 0x19, 0x80, 0x06, 0xE0, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, - 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, - 0x76, 0x00, 0x19, 0x80, 0x06, 0x70, 0x03, 0x8C, 0x00, 0xC3, 0x80, 0x60, - 0x78, 0x78, 0x0F, 0xFC, 0x00, 0xFC, 0x00, 0x03, 0x80, 0x07, 0x80, 0x0F, - 0x80, 0x1D, 0x80, 0x39, 0x80, 0x71, 0x80, 0xE1, 0x80, 0xC1, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xF0, 0x03, 0xFF, 0x01, 0xC0, 0xE0, - 0xC0, 0x1C, 0x60, 0x03, 0xB8, 0x00, 0x6C, 0x00, 0x0F, 0x00, 0x03, 0x00, - 0x00, 0xC0, 0x00, 0x30, 0x00, 0x18, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, - 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, - 0x00, 0xD0, 0x00, 0x38, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x03, - 0xF8, 0x01, 0xFF, 0xC0, 0x70, 0x3C, 0x18, 0x01, 0xC6, 0x00, 0x18, 0x00, - 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x01, 0xC0, 0x00, 0x70, 0x01, 0xFC, 0x00, 0x3F, 0x00, 0x00, - 0x78, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, - 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0xD8, 0x00, - 0x3B, 0x80, 0x0E, 0x3E, 0x07, 0x81, 0xFF, 0xE0, 0x07, 0xE0, 0x00, 0x00, - 0x3C, 0x00, 0x7C, 0x00, 0x6C, 0x00, 0xCC, 0x00, 0x8C, 0x01, 0x8C, 0x03, - 0x0C, 0x03, 0x0C, 0x06, 0x0C, 0x04, 0x0C, 0x0C, 0x0C, 0x08, 0x0C, 0x10, - 0x0C, 0x30, 0x0C, 0x20, 0x0C, 0x60, 0x0C, 0x40, 0x0C, 0x80, 0x0C, 0xFF, - 0xFF, 0xFF, 0xFF, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, - 0x0C, 0x00, 0x0C, 0x00, 0xFF, 0x00, 0xFF, 0x3F, 0xFF, 0x07, 0xFF, 0xE0, - 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x00, 0x01, - 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC7, 0xE0, 0x1F, 0xFF, 0x03, - 0x80, 0x70, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0x60, - 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x06, 0xC0, 0x01, 0xDC, 0x00, 0x71, 0xF0, 0x3C, 0x0F, - 0xFF, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x80, 0x3F, 0xF0, 0x3E, 0x00, 0x1E, - 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, - 0x18, 0x00, 0x06, 0x00, 0x03, 0x80, 0x00, 0xC1, 0xF8, 0x31, 0xFF, 0x0C, - 0xF0, 0xF3, 0x70, 0x0C, 0xD8, 0x01, 0xBC, 0x00, 0x6E, 0x00, 0x0F, 0x80, - 0x03, 0xC0, 0x00, 0xD8, 0x00, 0x36, 0x00, 0x0D, 0x80, 0x03, 0x30, 0x01, - 0x8E, 0x00, 0x61, 0xC0, 0x30, 0x38, 0x38, 0x07, 0xFC, 0x00, 0x7C, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xC0, - 0x00, 0x60, 0x00, 0x18, 0x00, 0x0E, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, - 0x30, 0x00, 0x18, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x30, - 0x00, 0x0C, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x03, 0xF0, 0x03, 0xFF, 0x03, 0xC0, 0xF1, 0xC0, 0x0E, - 0x60, 0x01, 0xB8, 0x00, 0x7C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x36, 0x00, 0x18, 0xC0, 0x0C, 0x1C, 0x0E, 0x03, 0xFF, 0x00, 0xFF, - 0xC0, 0x70, 0x38, 0x30, 0x03, 0x18, 0x00, 0x66, 0x00, 0x1B, 0x00, 0x03, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0x60, 0x01, 0x98, - 0x00, 0xE3, 0x00, 0x70, 0x70, 0x38, 0x0F, 0xFC, 0x00, 0xFC, 0x00, 0x07, - 0xE0, 0x03, 0xFE, 0x01, 0xC1, 0xC0, 0xC0, 0x38, 0x60, 0x07, 0x18, 0x00, - 0xCC, 0x00, 0x1B, 0x00, 0x06, 0xC0, 0x01, 0xB0, 0x00, 0x3C, 0x00, 0x1F, - 0x00, 0x07, 0x60, 0x03, 0xD8, 0x01, 0xB3, 0x00, 0xCC, 0xF0, 0xF3, 0x0F, - 0xF8, 0xC1, 0xF8, 0x30, 0x00, 0x1C, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, - 0xE0, 0x00, 0x30, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x07, 0x80, - 0x07, 0xC0, 0xFF, 0xC0, 0x1F, 0xC0, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, 0xEF, - 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0xFF, 0xFF, 0xFF, - 0xF7, 0xC0, 0x0F, 0x87, 0xF1, 0xFC, 0x7F, 0x1F, 0xC3, 0xE0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF1, 0xF8, 0x7C, 0x3F, 0x0F, - 0x83, 0xE0, 0xF0, 0x7C, 0x1E, 0x07, 0x81, 0xC0, 0xF0, 0x38, 0x04, 0x00, - 0x00, 0x00, 0x18, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, - 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x00, - 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x38, 0x00, 0x00, - 0x20, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, - 0xFF, 0x7F, 0xFF, 0xFF, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0E, 0x00, 0x00, 0x3C, 0x00, 0x01, 0xE0, - 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x01, 0xE0, - 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x0E, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x07, 0xF0, 0x1F, 0xFE, 0x3E, 0x07, 0x98, 0x00, 0xEC, 0x00, - 0x36, 0x00, 0x0F, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x01, 0xC0, - 0x00, 0xC0, 0x01, 0xC0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x00, 0x03, 0x00, - 0x01, 0x80, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x07, 0x80, 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, - 0x78, 0x00, 0x03, 0xF0, 0x03, 0xFF, 0x01, 0xE0, 0xE0, 0xE0, 0x1C, 0x30, - 0x03, 0x1C, 0x00, 0x66, 0x00, 0x19, 0x80, 0x06, 0xC0, 0x01, 0xB0, 0x07, - 0xEC, 0x07, 0xFB, 0x03, 0xC6, 0xC1, 0xC1, 0xB0, 0xE0, 0x6C, 0x30, 0x1B, - 0x0C, 0x06, 0xC3, 0x01, 0xB0, 0xC0, 0x6C, 0x18, 0x1B, 0x07, 0x86, 0xC0, - 0xFF, 0xF0, 0x0F, 0xFC, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x18, 0x00, - 0x07, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x80, 0xC0, 0xFF, 0xF0, - 0x0F, 0xE0, 0x07, 0xFF, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00, 0x1B, 0x00, - 0x00, 0x01, 0x98, 0x00, 0x00, 0x11, 0x80, 0x00, 0x03, 0x0C, 0x00, 0x00, - 0x30, 0xC0, 0x00, 0x06, 0x0C, 0x00, 0x00, 0x60, 0x60, 0x00, 0x06, 0x06, - 0x00, 0x00, 0xC0, 0x30, 0x00, 0x0C, 0x03, 0x00, 0x00, 0x80, 0x30, 0x00, - 0x18, 0x01, 0x80, 0x01, 0x80, 0x18, 0x00, 0x3F, 0xFF, 0x80, 0x03, 0xFF, - 0xFC, 0x00, 0x20, 0x00, 0xC0, 0x06, 0x00, 0x06, 0x00, 0x60, 0x00, 0x60, - 0x0C, 0x00, 0x06, 0x00, 0xC0, 0x00, 0x30, 0x0C, 0x00, 0x03, 0x01, 0x80, - 0x00, 0x18, 0x7F, 0xC0, 0x3F, 0xF7, 0xFC, 0x03, 0xFF, 0xFF, 0xFF, 0x03, - 0xFF, 0xFF, 0x01, 0x80, 0x0E, 0x06, 0x00, 0x1C, 0x18, 0x00, 0x38, 0x60, - 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, 0x00, 0x38, 0x60, 0x01, - 0xC1, 0x80, 0x1E, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, 0x60, 0x03, 0xC1, - 0x80, 0x03, 0x86, 0x00, 0x06, 0x18, 0x00, 0x1C, 0x60, 0x00, 0x31, 0x80, - 0x00, 0xC6, 0x00, 0x03, 0x18, 0x00, 0x0C, 0x60, 0x00, 0x61, 0x80, 0x03, - 0x86, 0x00, 0x1C, 0xFF, 0xFF, 0xE3, 0xFF, 0xFE, 0x00, 0x00, 0xFC, 0x00, - 0x0F, 0xFE, 0x60, 0xF0, 0x3D, 0x87, 0x00, 0x3E, 0x38, 0x00, 0x38, 0xC0, - 0x00, 0xE7, 0x00, 0x01, 0x98, 0x00, 0x06, 0x60, 0x00, 0x03, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, - 0xC7, 0x00, 0x06, 0x0E, 0x00, 0x70, 0x1E, 0x07, 0x80, 0x3F, 0xFC, 0x00, - 0x1F, 0x80, 0xFF, 0xFE, 0x03, 0xFF, 0xFE, 0x03, 0x00, 0x3C, 0x0C, 0x00, - 0x38, 0x30, 0x00, 0x70, 0xC0, 0x00, 0xC3, 0x00, 0x03, 0x8C, 0x00, 0x06, - 0x30, 0x00, 0x1C, 0xC0, 0x00, 0x33, 0x00, 0x00, 0xCC, 0x00, 0x03, 0x30, - 0x00, 0x0C, 0xC0, 0x00, 0x33, 0x00, 0x00, 0xCC, 0x00, 0x03, 0x30, 0x00, - 0x0C, 0xC0, 0x00, 0x33, 0x00, 0x01, 0x8C, 0x00, 0x06, 0x30, 0x00, 0x30, - 0xC0, 0x01, 0xC3, 0x00, 0x0E, 0x0C, 0x00, 0xF0, 0xFF, 0xFF, 0x83, 0xFF, - 0xF8, 0x00, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xE1, 0x80, 0x01, 0x86, 0x00, - 0x06, 0x18, 0x00, 0x18, 0x60, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x00, - 0x18, 0x0C, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x07, 0xFF, 0x00, 0x1F, - 0xFC, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x06, 0x03, 0x00, 0x18, 0x00, - 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0xC6, 0x00, 0x03, 0x18, 0x00, 0x0C, - 0x60, 0x00, 0x31, 0x80, 0x00, 0xC6, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF1, 0x80, 0x00, 0xC6, 0x00, - 0x03, 0x18, 0x00, 0x0C, 0x60, 0x00, 0x31, 0x80, 0x00, 0xC6, 0x00, 0x00, - 0x18, 0x0C, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x07, 0xFF, 0x00, 0x1F, - 0xFC, 0x00, 0x60, 0x30, 0x01, 0x80, 0xC0, 0x06, 0x03, 0x00, 0x18, 0x00, - 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0xFF, 0xF0, 0x03, 0xFF, - 0xC0, 0x00, 0x00, 0xFF, 0x00, 0x07, 0xFF, 0x98, 0x1E, 0x03, 0xF0, 0x70, - 0x01, 0xE1, 0x80, 0x01, 0xC6, 0x00, 0x01, 0x9C, 0x00, 0x03, 0x30, 0x00, - 0x00, 0x60, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, 0x03, 0xFF, - 0xC0, 0x07, 0xFF, 0x80, 0x00, 0x1B, 0x00, 0x00, 0x37, 0x00, 0x00, 0x66, - 0x00, 0x00, 0xCC, 0x00, 0x01, 0x8C, 0x00, 0x03, 0x1C, 0x00, 0x06, 0x1E, - 0x00, 0x0C, 0x0F, 0x00, 0xF8, 0x0F, 0xFF, 0xC0, 0x03, 0xFC, 0x00, 0x7F, - 0x01, 0xFC, 0xFE, 0x03, 0xF8, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, - 0x03, 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, - 0x30, 0x30, 0x00, 0x60, 0x60, 0x00, 0xC0, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, - 0x30, 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, 0x03, - 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0xFF, 0x01, 0xFF, 0xFE, - 0x03, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFE, 0x01, 0xFF, 0xFC, - 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, - 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x30, 0x60, 0x00, 0x60, 0xC0, 0x00, 0xC1, 0x80, 0x01, 0x83, 0x00, 0x03, - 0x06, 0x00, 0x06, 0x0C, 0x00, 0x0C, 0x18, 0x00, 0x30, 0x38, 0x00, 0x60, - 0x38, 0x01, 0x80, 0x3C, 0x0E, 0x00, 0x3F, 0xF8, 0x00, 0x0F, 0xC0, 0x00, - 0xFF, 0x81, 0xFE, 0xFF, 0x81, 0xFE, 0x18, 0x00, 0x30, 0x18, 0x00, 0xE0, - 0x18, 0x01, 0xC0, 0x18, 0x03, 0x80, 0x18, 0x07, 0x00, 0x18, 0x0E, 0x00, - 0x18, 0x18, 0x00, 0x18, 0x70, 0x00, 0x18, 0xE0, 0x00, 0x19, 0xE0, 0x00, - 0x1B, 0xF8, 0x00, 0x1F, 0x1C, 0x00, 0x1C, 0x06, 0x00, 0x18, 0x03, 0x00, - 0x18, 0x03, 0x80, 0x18, 0x01, 0x80, 0x18, 0x00, 0xC0, 0x18, 0x00, 0xC0, - 0x18, 0x00, 0x60, 0x18, 0x00, 0x60, 0x18, 0x00, 0x70, 0x18, 0x00, 0x30, - 0xFF, 0x80, 0x3F, 0xFF, 0x80, 0x1F, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x01, - 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, - 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, - 0x06, 0x00, 0x18, 0x30, 0x00, 0xC1, 0x80, 0x06, 0x0C, 0x00, 0x30, 0x60, - 0x01, 0x83, 0x00, 0x0C, 0x18, 0x00, 0x60, 0xC0, 0x03, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xC0, 0xFC, 0x00, 0x0F, 0xFF, 0x00, 0x03, 0xF3, 0x60, 0x01, - 0xB0, 0xD8, 0x00, 0x6C, 0x33, 0x00, 0x33, 0x0C, 0xC0, 0x0C, 0xC3, 0x38, - 0x07, 0x30, 0xC6, 0x01, 0x8C, 0x31, 0xC0, 0xE3, 0x0C, 0x30, 0x30, 0xC3, - 0x0C, 0x0C, 0x30, 0xC1, 0x86, 0x0C, 0x30, 0x61, 0x83, 0x0C, 0x0C, 0xC0, - 0xC3, 0x03, 0x30, 0x30, 0xC0, 0x78, 0x0C, 0x30, 0x1E, 0x03, 0x0C, 0x03, - 0x00, 0xC3, 0x00, 0x00, 0x30, 0xC0, 0x00, 0x0C, 0x30, 0x00, 0x03, 0x0C, - 0x00, 0x00, 0xC3, 0x00, 0x00, 0x30, 0xC0, 0x00, 0x0C, 0xFF, 0x00, 0x3F, - 0xFF, 0xC0, 0x0F, 0xF0, 0xFC, 0x00, 0xFF, 0xFC, 0x00, 0xFF, 0x1E, 0x00, - 0x0C, 0x1F, 0x00, 0x0C, 0x1B, 0x00, 0x0C, 0x19, 0x80, 0x0C, 0x19, 0xC0, - 0x0C, 0x18, 0xC0, 0x0C, 0x18, 0x60, 0x0C, 0x18, 0x60, 0x0C, 0x18, 0x30, - 0x0C, 0x18, 0x38, 0x0C, 0x18, 0x18, 0x0C, 0x18, 0x0C, 0x0C, 0x18, 0x0E, - 0x0C, 0x18, 0x06, 0x0C, 0x18, 0x03, 0x0C, 0x18, 0x03, 0x0C, 0x18, 0x01, - 0x8C, 0x18, 0x01, 0xCC, 0x18, 0x00, 0xCC, 0x18, 0x00, 0x6C, 0x18, 0x00, - 0x7C, 0x18, 0x00, 0x3C, 0x7F, 0x80, 0x1C, 0x7F, 0x80, 0x1C, 0x00, 0x7E, - 0x00, 0x01, 0xFF, 0xC0, 0x07, 0x81, 0xE0, 0x0E, 0x00, 0x70, 0x1C, 0x00, - 0x38, 0x38, 0x00, 0x1C, 0x30, 0x00, 0x0C, 0x70, 0x00, 0x0E, 0x60, 0x00, - 0x06, 0x60, 0x00, 0x06, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0x60, 0x00, 0x06, 0x60, 0x00, 0x06, 0x70, 0x00, - 0x0E, 0x30, 0x00, 0x0C, 0x38, 0x00, 0x1C, 0x1C, 0x00, 0x38, 0x0E, 0x00, - 0x70, 0x07, 0x81, 0xE0, 0x03, 0xFF, 0xC0, 0x00, 0x7E, 0x00, 0xFF, 0xFF, - 0x07, 0xFF, 0xFE, 0x06, 0x00, 0x78, 0x30, 0x00, 0xE1, 0x80, 0x03, 0x0C, - 0x00, 0x0C, 0x60, 0x00, 0x63, 0x00, 0x03, 0x18, 0x00, 0x18, 0xC0, 0x01, - 0xC6, 0x00, 0x0C, 0x30, 0x00, 0xC1, 0x80, 0x1E, 0x0F, 0xFF, 0xC0, 0x7F, - 0xF8, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, - 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, - 0x00, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x00, 0x00, 0x7E, 0x00, 0x01, 0xFF, - 0x80, 0x07, 0x81, 0xE0, 0x0E, 0x00, 0x70, 0x1C, 0x00, 0x38, 0x38, 0x00, - 0x1C, 0x30, 0x00, 0x0C, 0x70, 0x00, 0x0E, 0x60, 0x00, 0x06, 0x60, 0x00, - 0x06, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0x60, 0x00, 0x06, 0x60, 0x00, 0x06, 0x70, 0x00, 0x0E, 0x30, 0x00, - 0x0C, 0x18, 0x00, 0x1C, 0x0C, 0x00, 0x38, 0x06, 0x00, 0x70, 0x03, 0x81, - 0xE0, 0x00, 0xFF, 0xC0, 0x00, 0x7E, 0x00, 0x00, 0xE0, 0x00, 0x03, 0xFF, - 0x87, 0x07, 0xFF, 0xFE, 0x07, 0x00, 0xF8, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, - 0x80, 0x18, 0x03, 0xC0, 0x18, 0x00, 0xE0, 0x18, 0x00, 0x60, 0x18, 0x00, - 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, - 0x70, 0x18, 0x00, 0x60, 0x18, 0x01, 0xC0, 0x18, 0x07, 0x80, 0x1F, 0xFF, - 0x00, 0x1F, 0xFC, 0x00, 0x18, 0x0E, 0x00, 0x18, 0x07, 0x00, 0x18, 0x03, - 0x80, 0x18, 0x01, 0xC0, 0x18, 0x00, 0xE0, 0x18, 0x00, 0x60, 0x18, 0x00, - 0x30, 0x18, 0x00, 0x30, 0x18, 0x00, 0x18, 0xFF, 0x80, 0x1F, 0xFF, 0x80, - 0x0F, 0x03, 0xF8, 0x00, 0xFF, 0xE6, 0x1E, 0x07, 0xE3, 0x80, 0x1E, 0x30, - 0x00, 0xE6, 0x00, 0x06, 0x60, 0x00, 0x66, 0x00, 0x06, 0x60, 0x00, 0x07, - 0x00, 0x00, 0x30, 0x00, 0x01, 0xC0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0xC0, - 0x00, 0x3F, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x30, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, 0x03, 0xE0, 0x00, 0x7E, 0x00, - 0x06, 0xF8, 0x01, 0xED, 0xE0, 0x7C, 0xCF, 0xFF, 0x00, 0x3F, 0xC0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x03, 0x00, 0xF0, 0x0C, 0x03, 0xC0, 0x30, - 0x0F, 0x00, 0xC0, 0x3C, 0x03, 0x00, 0xC0, 0x0C, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, - 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, - 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, - 0x03, 0x00, 0x00, 0x0C, 0x00, 0x0F, 0xFF, 0xC0, 0x3F, 0xFF, 0x00, 0xFF, - 0x01, 0xFF, 0xFE, 0x03, 0xFC, 0xC0, 0x00, 0x61, 0x80, 0x00, 0xC3, 0x00, - 0x01, 0x86, 0x00, 0x03, 0x0C, 0x00, 0x06, 0x18, 0x00, 0x0C, 0x30, 0x00, - 0x18, 0x60, 0x00, 0x30, 0xC0, 0x00, 0x61, 0x80, 0x00, 0xC3, 0x00, 0x01, - 0x86, 0x00, 0x03, 0x0C, 0x00, 0x06, 0x18, 0x00, 0x0C, 0x30, 0x00, 0x18, - 0x60, 0x00, 0x30, 0xC0, 0x00, 0x61, 0x80, 0x00, 0xC3, 0x80, 0x03, 0x83, - 0x00, 0x06, 0x07, 0x00, 0x1C, 0x07, 0x00, 0x70, 0x07, 0x83, 0xC0, 0x07, - 0xFF, 0x00, 0x03, 0xF8, 0x00, 0x7F, 0xC0, 0x3F, 0xF7, 0xFC, 0x03, 0xFF, - 0x18, 0x00, 0x01, 0x80, 0xC0, 0x00, 0x30, 0x0C, 0x00, 0x03, 0x00, 0x60, - 0x00, 0x30, 0x06, 0x00, 0x06, 0x00, 0x60, 0x00, 0x60, 0x03, 0x00, 0x0C, - 0x00, 0x30, 0x00, 0xC0, 0x03, 0x80, 0x0C, 0x00, 0x18, 0x01, 0x80, 0x01, - 0x80, 0x18, 0x00, 0x0C, 0x03, 0x00, 0x00, 0xC0, 0x30, 0x00, 0x0E, 0x03, - 0x00, 0x00, 0x60, 0x60, 0x00, 0x06, 0x06, 0x00, 0x00, 0x30, 0xC0, 0x00, - 0x03, 0x0C, 0x00, 0x00, 0x30, 0x80, 0x00, 0x01, 0x98, 0x00, 0x00, 0x19, - 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xE0, 0x00, - 0xFF, 0x80, 0x7F, 0xFF, 0xE0, 0x1F, 0xF3, 0x00, 0x00, 0x30, 0xC0, 0x00, - 0x0C, 0x30, 0x00, 0x03, 0x0C, 0x03, 0x80, 0xC3, 0x01, 0xE0, 0x30, 0x60, - 0x78, 0x0C, 0x18, 0x1F, 0x02, 0x06, 0x04, 0xC0, 0x81, 0x83, 0x30, 0x60, - 0x60, 0xCC, 0x18, 0x18, 0x31, 0x86, 0x06, 0x18, 0x61, 0x81, 0x86, 0x18, - 0x60, 0x71, 0x87, 0x18, 0x0C, 0x40, 0xC6, 0x03, 0x30, 0x31, 0x00, 0xCC, - 0x0C, 0xC0, 0x33, 0x01, 0xB0, 0x0D, 0x80, 0x6C, 0x03, 0x60, 0x1B, 0x00, - 0xD8, 0x06, 0xC0, 0x34, 0x00, 0xF0, 0x07, 0x00, 0x3C, 0x01, 0xC0, 0x0E, - 0x00, 0x7F, 0x00, 0xFF, 0x7F, 0x00, 0xFF, 0x18, 0x00, 0x18, 0x0C, 0x00, - 0x38, 0x0E, 0x00, 0x70, 0x07, 0x00, 0x60, 0x03, 0x00, 0xC0, 0x01, 0x81, - 0x80, 0x01, 0xC3, 0x80, 0x00, 0xE7, 0x00, 0x00, 0x76, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x66, - 0x00, 0x00, 0xC3, 0x00, 0x01, 0x81, 0x80, 0x03, 0x81, 0xC0, 0x07, 0x00, - 0xE0, 0x06, 0x00, 0x60, 0x0C, 0x00, 0x30, 0x18, 0x00, 0x18, 0x38, 0x00, - 0x1C, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x00, - 0xFF, 0x18, 0x00, 0x18, 0x0C, 0x00, 0x30, 0x0E, 0x00, 0x70, 0x06, 0x00, - 0x60, 0x03, 0x00, 0xC0, 0x03, 0x81, 0xC0, 0x01, 0x81, 0x80, 0x00, 0xC3, - 0x00, 0x00, 0xE7, 0x00, 0x00, 0x66, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x07, 0xFF, 0xE0, 0x07, 0xFF, - 0xE0, 0x7F, 0xFF, 0x9F, 0xFF, 0xE6, 0x00, 0x19, 0x80, 0x0C, 0x60, 0x07, - 0x18, 0x03, 0x86, 0x00, 0xC1, 0x80, 0x70, 0x00, 0x38, 0x00, 0x0C, 0x00, - 0x07, 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x38, 0x00, 0x1C, - 0x00, 0x06, 0x00, 0x03, 0x80, 0x31, 0xC0, 0x0C, 0x60, 0x03, 0x30, 0x00, - 0xDC, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0xFF, 0xFF, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, - 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x18, 0x30, 0x60, 0xFF, 0xFC, 0xC0, 0x00, 0x30, 0x00, 0x06, 0x00, - 0x01, 0x80, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x06, - 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x80, 0x00, 0x60, - 0x00, 0x1C, 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, 0x18, 0x00, 0x07, 0x00, - 0x00, 0xC0, 0x00, 0x30, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, - 0x0C, 0xFF, 0xFC, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, - 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, - 0x18, 0x30, 0x60, 0xC1, 0x83, 0xFF, 0xFC, 0x00, 0x40, 0x00, 0x30, 0x00, - 0x1E, 0x00, 0x0E, 0xC0, 0x07, 0x38, 0x01, 0x87, 0x00, 0xC0, 0xC0, 0x60, - 0x18, 0x38, 0x03, 0x1C, 0x00, 0xE6, 0x00, 0x1F, 0x00, 0x03, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xE0, 0x70, 0x3C, 0x0E, 0x07, 0x03, - 0x01, 0xFC, 0x00, 0x7F, 0xFC, 0x01, 0xC0, 0x3C, 0x00, 0x00, 0x30, 0x00, - 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x60, 0x0F, 0xF9, 0x81, 0xFF, 0xFE, 0x0F, 0x80, 0x38, 0x70, 0x00, 0x63, - 0x80, 0x01, 0x8C, 0x00, 0x06, 0x30, 0x00, 0x18, 0xC0, 0x00, 0xE3, 0x00, - 0x07, 0x86, 0x00, 0x76, 0x1E, 0x07, 0x9F, 0x3F, 0xF8, 0x7C, 0x3F, 0x80, - 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, - 0x01, 0x80, 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x1F, 0x80, - 0x18, 0xFF, 0xC0, 0x33, 0x81, 0xC0, 0x6E, 0x01, 0xC0, 0xF0, 0x00, 0xC1, - 0xE0, 0x01, 0xC3, 0x80, 0x01, 0x87, 0x00, 0x03, 0x8C, 0x00, 0x03, 0x18, - 0x00, 0x06, 0x30, 0x00, 0x0C, 0x60, 0x00, 0x18, 0xC0, 0x00, 0x31, 0x80, - 0x00, 0x63, 0x80, 0x01, 0x87, 0x00, 0x03, 0x0F, 0x00, 0x0E, 0x1F, 0x00, - 0x38, 0x37, 0x00, 0xE3, 0xE7, 0x03, 0x87, 0xC7, 0xFE, 0x00, 0x03, 0xF0, - 0x00, 0x01, 0xFC, 0x00, 0x3F, 0xF9, 0x83, 0xC0, 0xFC, 0x38, 0x01, 0xE3, - 0x00, 0x07, 0x38, 0x00, 0x19, 0x80, 0x00, 0xDC, 0x00, 0x06, 0xC0, 0x00, - 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, - 0x00, 0x03, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x70, 0x00, 0x01, 0x80, 0x00, - 0xC7, 0x00, 0x1E, 0x1E, 0x03, 0xC0, 0x7F, 0xFC, 0x00, 0xFF, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x01, 0xF8, 0x18, 0x07, - 0xFE, 0x18, 0x0F, 0x07, 0x98, 0x1C, 0x01, 0xD8, 0x38, 0x00, 0xF8, 0x70, - 0x00, 0x78, 0x60, 0x00, 0x38, 0xE0, 0x00, 0x38, 0xC0, 0x00, 0x18, 0xC0, - 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, - 0x00, 0x18, 0x60, 0x00, 0x38, 0x60, 0x00, 0x38, 0x70, 0x00, 0x78, 0x38, - 0x00, 0xD8, 0x1C, 0x01, 0xD8, 0x0F, 0x07, 0x9F, 0x07, 0xFE, 0x1F, 0x01, - 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x3F, 0xF8, 0x07, 0x80, 0xF0, 0x70, 0x01, - 0xC3, 0x00, 0x07, 0x30, 0x00, 0x19, 0x80, 0x00, 0x78, 0x00, 0x03, 0xC0, - 0x00, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x0C, 0x00, 0x00, - 0x60, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x01, 0xC0, - 0x00, 0xC7, 0x00, 0x0E, 0x1E, 0x03, 0xE0, 0x3F, 0xFC, 0x00, 0x7F, 0x00, - 0x00, 0x7F, 0xC0, 0x3F, 0xFC, 0x0E, 0x00, 0x03, 0x80, 0x00, 0x60, 0x00, - 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0xFF, 0xFF, 0x9F, 0xFF, 0xF0, - 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, - 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, - 0x60, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x03, 0xFF, 0xFC, 0x7F, 0xFF, 0x80, 0x01, 0xF8, 0x00, 0x0F, 0xFC, - 0x7C, 0x38, 0x1C, 0xF8, 0xE0, 0x0D, 0x83, 0x00, 0x0F, 0x0E, 0x00, 0x1E, - 0x18, 0x00, 0x1C, 0x70, 0x00, 0x38, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x63, - 0x00, 0x00, 0xC6, 0x00, 0x01, 0x8C, 0x00, 0x03, 0x18, 0x00, 0x06, 0x18, - 0x00, 0x1C, 0x30, 0x00, 0x38, 0x30, 0x00, 0xF0, 0x70, 0x03, 0x60, 0x78, - 0x1C, 0xC0, 0x3F, 0xF1, 0x80, 0x1F, 0x83, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, - 0x80, 0x00, 0x0E, 0x00, 0x3F, 0xF8, 0x00, 0x7F, 0xC0, 0x00, 0xF8, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, - 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x3F, 0x00, 0x18, 0xFF, 0x80, - 0x37, 0x03, 0x80, 0x7C, 0x03, 0x80, 0xF0, 0x03, 0x81, 0xC0, 0x03, 0x03, - 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, - 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, 0x03, 0x00, - 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, 0x00, - 0x63, 0xFC, 0x07, 0xFF, 0xF8, 0x0F, 0xF0, 0x01, 0xC0, 0x00, 0x70, 0x00, - 0x1C, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0x03, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, - 0xC0, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xC0, 0x03, 0x00, 0x0C, - 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, - 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, - 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, - 0x70, 0x03, 0x80, 0x1C, 0xFF, 0xE3, 0xFF, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, - 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x1F, 0xE0, 0x60, 0x7F, 0x81, - 0x80, 0x60, 0x06, 0x07, 0x00, 0x18, 0x38, 0x00, 0x61, 0xC0, 0x01, 0x8E, - 0x00, 0x06, 0x70, 0x00, 0x1B, 0x80, 0x00, 0x7F, 0x00, 0x01, 0xCE, 0x00, - 0x06, 0x1C, 0x00, 0x18, 0x38, 0x00, 0x60, 0x70, 0x01, 0x80, 0xE0, 0x06, - 0x01, 0xC0, 0x18, 0x03, 0x80, 0x60, 0x07, 0x0F, 0x80, 0x7F, 0xFE, 0x01, - 0xFF, 0x3F, 0xC0, 0x0F, 0xF0, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, - 0x00, 0x30, 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xF0, 0x3C, 0x0F, 0x9F, 0x87, 0xE0, 0xFB, - 0x1C, 0xC7, 0x01, 0xE0, 0xD8, 0x38, 0x1C, 0x07, 0x01, 0x81, 0x80, 0x60, - 0x18, 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x81, - 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, - 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, - 0x18, 0x06, 0x01, 0x81, 0x80, 0x60, 0x18, 0x18, 0x06, 0x01, 0x8F, 0xE0, - 0x7C, 0x1F, 0xFE, 0x07, 0xC1, 0xF0, 0x00, 0x1F, 0x00, 0xF8, 0xFF, 0x81, - 0xF3, 0x83, 0x80, 0x6C, 0x03, 0x80, 0xF0, 0x03, 0x81, 0xC0, 0x03, 0x03, - 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, - 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, 0x03, 0x00, - 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, 0x30, 0x30, 0x00, - 0x67, 0xFC, 0x03, 0xFF, 0xF8, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0xFE, - 0x00, 0xF0, 0x3C, 0x07, 0x00, 0x38, 0x38, 0x00, 0x71, 0xC0, 0x00, 0xE6, - 0x00, 0x01, 0x98, 0x00, 0x06, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x36, 0x00, 0x01, - 0x98, 0x00, 0x06, 0x70, 0x00, 0x38, 0xE0, 0x01, 0xC1, 0xC0, 0x0E, 0x03, - 0xC0, 0xF0, 0x07, 0xFF, 0x80, 0x03, 0xF0, 0x00, 0x00, 0x3F, 0x01, 0xF1, - 0xFF, 0x83, 0xE7, 0x03, 0x80, 0xD8, 0x01, 0x81, 0xE0, 0x01, 0x83, 0xC0, - 0x03, 0x87, 0x00, 0x03, 0x0E, 0x00, 0x07, 0x18, 0x00, 0x06, 0x30, 0x00, - 0x0C, 0x60, 0x00, 0x18, 0xC0, 0x00, 0x31, 0x80, 0x00, 0x63, 0x00, 0x00, - 0xC7, 0x00, 0x03, 0x0E, 0x00, 0x06, 0x1E, 0x00, 0x18, 0x36, 0x00, 0x70, - 0x67, 0x03, 0xC0, 0xC7, 0xFE, 0x01, 0x83, 0xF0, 0x03, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, - 0x00, 0x00, 0xC0, 0x00, 0x0F, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x01, - 0xF8, 0x00, 0x07, 0xFF, 0x1F, 0x0F, 0x07, 0x9F, 0x1C, 0x01, 0xD8, 0x38, - 0x00, 0x78, 0x70, 0x00, 0x78, 0x60, 0x00, 0x38, 0xE0, 0x00, 0x38, 0xC0, - 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, 0x00, 0x18, 0xC0, - 0x00, 0x18, 0xC0, 0x00, 0x18, 0x60, 0x00, 0x38, 0x70, 0x00, 0x78, 0x30, - 0x00, 0x78, 0x1C, 0x01, 0xD8, 0x0F, 0x07, 0x98, 0x07, 0xFF, 0x18, 0x01, - 0xFC, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, 0x00, - 0x03, 0xFF, 0x00, 0x03, 0xFF, 0x7E, 0x03, 0xC3, 0xF0, 0x7F, 0x81, 0x8F, - 0x0E, 0x0C, 0xE0, 0x00, 0x7E, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x00, - 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, - 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, - 0x00, 0x00, 0x30, 0x00, 0x3F, 0xFF, 0xC1, 0xFF, 0xFE, 0x00, 0x07, 0xF0, - 0x07, 0xFF, 0x63, 0xC0, 0xF9, 0xC0, 0x0E, 0x60, 0x01, 0x98, 0x00, 0x66, - 0x00, 0x19, 0xC0, 0x00, 0x38, 0x00, 0x07, 0xC0, 0x00, 0x7F, 0xC0, 0x00, - 0x7C, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, - 0xF8, 0x00, 0x7F, 0x00, 0x3B, 0xF0, 0x3C, 0xDF, 0xFE, 0x00, 0xFE, 0x00, - 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, - 0x00, 0x06, 0x00, 0x03, 0xFF, 0xFE, 0x1F, 0xFF, 0xF0, 0x0C, 0x00, 0x00, - 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, 0x00, - 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x03, - 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x07, 0x07, 0x01, 0xF0, 0x1F, 0xFF, 0x00, 0x3F, 0x80, 0xF8, - 0x03, 0xF1, 0xF0, 0x07, 0xE0, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, - 0x03, 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x18, 0x18, 0x00, - 0x30, 0x30, 0x00, 0x60, 0x60, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, - 0x03, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, 0x00, 0x38, 0x18, 0x00, 0xF0, - 0x18, 0x03, 0x60, 0x38, 0x3C, 0xF8, 0x3F, 0xF1, 0xF0, 0x1F, 0x00, 0x00, - 0x7F, 0xC0, 0xFF, 0xDF, 0xF0, 0x3F, 0xF0, 0xC0, 0x00, 0xC0, 0x30, 0x00, - 0x30, 0x06, 0x00, 0x1C, 0x01, 0x80, 0x06, 0x00, 0x30, 0x01, 0x80, 0x0C, - 0x00, 0xC0, 0x03, 0x80, 0x30, 0x00, 0x60, 0x18, 0x00, 0x18, 0x06, 0x00, - 0x03, 0x03, 0x00, 0x00, 0xC0, 0xC0, 0x00, 0x18, 0x30, 0x00, 0x06, 0x18, - 0x00, 0x00, 0xC6, 0x00, 0x00, 0x33, 0x00, 0x00, 0x0E, 0xC0, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x7F, 0x00, 0x3F, 0xDF, 0xC0, 0x0F, 0xF1, - 0x80, 0x00, 0x20, 0x60, 0x00, 0x18, 0x18, 0x00, 0x06, 0x06, 0x03, 0x01, - 0x80, 0x81, 0xE0, 0x60, 0x30, 0x78, 0x10, 0x0C, 0x1E, 0x0C, 0x03, 0x0C, - 0xC3, 0x00, 0xC3, 0x30, 0xC0, 0x10, 0xCC, 0x30, 0x06, 0x61, 0x98, 0x01, - 0x98, 0x66, 0x00, 0x66, 0x19, 0x80, 0x0B, 0x03, 0x60, 0x03, 0xC0, 0xD0, - 0x00, 0xF0, 0x1C, 0x00, 0x38, 0x07, 0x00, 0x0E, 0x01, 0xC0, 0x3F, 0x81, - 0xFE, 0x3F, 0x81, 0xFE, 0x0C, 0x00, 0x38, 0x06, 0x00, 0x70, 0x03, 0x00, - 0xE0, 0x01, 0x81, 0xC0, 0x00, 0xC3, 0x80, 0x00, 0x67, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x67, 0x00, 0x00, 0xC3, - 0x80, 0x01, 0x81, 0xC0, 0x03, 0x00, 0xE0, 0x06, 0x00, 0x70, 0x0C, 0x00, - 0x38, 0x18, 0x00, 0x1C, 0x7F, 0x81, 0xFF, 0x7F, 0x81, 0xFF, 0x7F, 0x00, - 0xFF, 0x7F, 0x00, 0xFF, 0x18, 0x00, 0x0C, 0x18, 0x00, 0x18, 0x0C, 0x00, - 0x18, 0x0C, 0x00, 0x30, 0x06, 0x00, 0x30, 0x06, 0x00, 0x60, 0x03, 0x00, - 0x60, 0x03, 0x00, 0xC0, 0x01, 0x80, 0xC0, 0x01, 0x81, 0x80, 0x00, 0xC1, - 0x80, 0x00, 0xC3, 0x00, 0x00, 0x63, 0x00, 0x00, 0x66, 0x00, 0x00, 0x36, - 0x00, 0x00, 0x34, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x7F, 0xFC, 0x00, 0x7F, 0xFC, - 0x00, 0xFF, 0xFF, 0x7F, 0xFF, 0xB0, 0x01, 0x98, 0x01, 0xCC, 0x01, 0xC0, - 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xE0, - 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x03, 0x70, - 0x01, 0xB0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xE0, 0x7C, 0x0C, - 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, - 0x00, 0x60, 0x0C, 0x03, 0x00, 0xE0, 0xF0, 0x1E, 0x00, 0x70, 0x06, 0x00, - 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, - 0x0C, 0x01, 0x80, 0x18, 0x03, 0xE0, 0x1C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0xE0, 0x1F, 0x00, 0x60, 0x06, 0x00, 0xC0, 0x18, - 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x01, - 0x80, 0x38, 0x01, 0xE0, 0x3C, 0x1C, 0x03, 0x00, 0xC0, 0x18, 0x03, 0x00, - 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0xC0, - 0xF8, 0x1C, 0x00, 0x0F, 0x00, 0x03, 0xFC, 0x03, 0x70, 0xE0, 0x76, 0x07, - 0x8E, 0xC0, 0x1F, 0xC0, 0x00, 0xF0}; - -const GFXglyph FreeMono24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 5, 30, 28, 11, -28}, // 0x21 '!' - {19, 16, 14, 28, 6, -28}, // 0x22 '"' - {47, 19, 32, 28, 4, -29}, // 0x23 '#' - {123, 18, 33, 28, 5, -29}, // 0x24 '$' - {198, 20, 29, 28, 4, -27}, // 0x25 '%' - {271, 18, 25, 28, 5, -23}, // 0x26 '&' - {328, 7, 14, 28, 11, -28}, // 0x27 ''' - {341, 7, 34, 28, 14, -27}, // 0x28 '(' - {371, 7, 34, 28, 8, -27}, // 0x29 ')' - {401, 18, 16, 28, 5, -27}, // 0x2A '*' - {437, 20, 22, 28, 4, -23}, // 0x2B '+' - {492, 9, 14, 28, 6, -6}, // 0x2C ',' - {508, 22, 2, 28, 3, -13}, // 0x2D '-' - {514, 7, 6, 28, 11, -4}, // 0x2E '.' - {520, 18, 35, 28, 5, -30}, // 0x2F '/' - {599, 18, 30, 28, 5, -28}, // 0x30 '0' - {667, 16, 29, 28, 6, -28}, // 0x31 '1' - {725, 18, 29, 28, 5, -28}, // 0x32 '2' - {791, 19, 30, 28, 5, -28}, // 0x33 '3' - {863, 16, 28, 28, 6, -27}, // 0x34 '4' - {919, 19, 29, 28, 5, -27}, // 0x35 '5' - {988, 18, 30, 28, 6, -28}, // 0x36 '6' - {1056, 18, 28, 28, 5, -27}, // 0x37 '7' - {1119, 18, 30, 28, 5, -28}, // 0x38 '8' - {1187, 18, 30, 28, 6, -28}, // 0x39 '9' - {1255, 7, 21, 28, 11, -19}, // 0x3A ':' - {1274, 10, 27, 28, 7, -19}, // 0x3B ';' - {1308, 22, 22, 28, 3, -23}, // 0x3C '<' - {1369, 24, 9, 28, 2, -17}, // 0x3D '=' - {1396, 21, 22, 28, 4, -23}, // 0x3E '>' - {1454, 17, 28, 28, 6, -26}, // 0x3F '?' - {1514, 18, 32, 28, 5, -28}, // 0x40 '@' - {1586, 28, 26, 28, 0, -25}, // 0x41 'A' - {1677, 22, 26, 28, 3, -25}, // 0x42 'B' - {1749, 22, 28, 28, 3, -26}, // 0x43 'C' - {1826, 22, 26, 28, 3, -25}, // 0x44 'D' - {1898, 22, 26, 28, 3, -25}, // 0x45 'E' - {1970, 22, 26, 28, 3, -25}, // 0x46 'F' - {2042, 23, 28, 28, 3, -26}, // 0x47 'G' - {2123, 23, 26, 28, 3, -25}, // 0x48 'H' - {2198, 16, 26, 28, 6, -25}, // 0x49 'I' - {2250, 23, 27, 28, 4, -25}, // 0x4A 'J' - {2328, 24, 26, 28, 3, -25}, // 0x4B 'K' - {2406, 21, 26, 28, 4, -25}, // 0x4C 'L' - {2475, 26, 26, 28, 1, -25}, // 0x4D 'M' - {2560, 24, 26, 28, 2, -25}, // 0x4E 'N' - {2638, 24, 28, 28, 2, -26}, // 0x4F 'O' - {2722, 21, 26, 28, 3, -25}, // 0x50 'P' - {2791, 24, 32, 28, 2, -26}, // 0x51 'Q' - {2887, 24, 26, 28, 3, -25}, // 0x52 'R' - {2965, 20, 28, 28, 4, -26}, // 0x53 'S' - {3035, 22, 26, 28, 3, -25}, // 0x54 'T' - {3107, 23, 27, 28, 3, -25}, // 0x55 'U' - {3185, 28, 26, 28, 0, -25}, // 0x56 'V' - {3276, 26, 26, 28, 1, -25}, // 0x57 'W' - {3361, 24, 26, 28, 2, -25}, // 0x58 'X' - {3439, 24, 26, 28, 2, -25}, // 0x59 'Y' - {3517, 18, 26, 28, 5, -25}, // 0x5A 'Z' - {3576, 7, 34, 28, 13, -27}, // 0x5B '[' - {3606, 18, 35, 28, 5, -30}, // 0x5C '\' - {3685, 7, 34, 28, 8, -27}, // 0x5D ']' - {3715, 18, 12, 28, 5, -28}, // 0x5E '^' - {3742, 28, 2, 28, 0, 5}, // 0x5F '_' - {3749, 8, 7, 28, 7, -29}, // 0x60 '`' - {3756, 22, 22, 28, 3, -20}, // 0x61 'a' - {3817, 23, 29, 28, 2, -27}, // 0x62 'b' - {3901, 21, 22, 28, 4, -20}, // 0x63 'c' - {3959, 24, 29, 28, 3, -27}, // 0x64 'd' - {4046, 21, 22, 28, 3, -20}, // 0x65 'e' - {4104, 19, 28, 28, 6, -27}, // 0x66 'f' - {4171, 23, 30, 28, 3, -20}, // 0x67 'g' - {4258, 23, 28, 28, 3, -27}, // 0x68 'h' - {4339, 18, 29, 28, 5, -28}, // 0x69 'i' - {4405, 14, 38, 28, 6, -28}, // 0x6A 'j' - {4472, 22, 28, 28, 4, -27}, // 0x6B 'k' - {4549, 18, 28, 28, 5, -27}, // 0x6C 'l' - {4612, 28, 21, 28, 0, -20}, // 0x6D 'm' - {4686, 23, 21, 28, 2, -20}, // 0x6E 'n' - {4747, 22, 22, 28, 3, -20}, // 0x6F 'o' - {4808, 23, 30, 28, 2, -20}, // 0x70 'p' - {4895, 24, 30, 28, 3, -20}, // 0x71 'q' - {4985, 21, 20, 28, 5, -19}, // 0x72 'r' - {5038, 18, 22, 28, 5, -20}, // 0x73 's' - {5088, 21, 27, 28, 3, -25}, // 0x74 't' - {5159, 23, 21, 28, 3, -19}, // 0x75 'u' - {5220, 26, 20, 28, 1, -19}, // 0x76 'v' - {5285, 26, 20, 28, 1, -19}, // 0x77 'w' - {5350, 24, 20, 28, 2, -19}, // 0x78 'x' - {5410, 24, 29, 28, 2, -19}, // 0x79 'y' - {5497, 17, 20, 28, 6, -19}, // 0x7A 'z' - {5540, 11, 34, 28, 8, -27}, // 0x7B '{' - {5587, 2, 34, 28, 13, -27}, // 0x7C '|' - {5596, 11, 34, 28, 9, -27}, // 0x7D '}' - {5643, 20, 6, 28, 4, -15}}; // 0x7E '~' - -const GFXfont FreeMono24pt7b PROGMEM = {(uint8_t *)FreeMono24pt7bBitmaps, - (GFXglyph *)FreeMono24pt7bGlyphs, 0x20, - 0x7E, 47}; - -// Approx. 6330 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono9pt7b.h deleted file mode 100644 index a2e9a00..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMono9pt7b.h +++ /dev/null @@ -1,178 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMono9pt7bBitmaps[] PROGMEM = { - 0xAA, 0xA8, 0x0C, 0xED, 0x24, 0x92, 0x48, 0x24, 0x48, 0x91, 0x2F, 0xE4, - 0x89, 0x7F, 0x28, 0x51, 0x22, 0x40, 0x08, 0x3E, 0x62, 0x40, 0x30, 0x0E, - 0x01, 0x81, 0xC3, 0xBE, 0x08, 0x08, 0x71, 0x12, 0x23, 0x80, 0x23, 0xB8, - 0x0E, 0x22, 0x44, 0x70, 0x38, 0x81, 0x02, 0x06, 0x1A, 0x65, 0x46, 0xC8, - 0xEC, 0xE9, 0x24, 0x5A, 0xAA, 0xA9, 0x40, 0xA9, 0x55, 0x5A, 0x80, 0x10, - 0x22, 0x4B, 0xE3, 0x05, 0x11, 0x00, 0x10, 0x20, 0x47, 0xF1, 0x02, 0x04, - 0x00, 0x6B, 0x48, 0xFF, 0x00, 0xF0, 0x02, 0x08, 0x10, 0x60, 0x81, 0x04, - 0x08, 0x20, 0x41, 0x02, 0x08, 0x00, 0x38, 0x8A, 0x0C, 0x18, 0x30, 0x60, - 0xC1, 0x82, 0x88, 0xE0, 0x27, 0x28, 0x42, 0x10, 0x84, 0x21, 0x3E, 0x38, - 0x8A, 0x08, 0x10, 0x20, 0x82, 0x08, 0x61, 0x03, 0xF8, 0x7C, 0x06, 0x02, - 0x02, 0x1C, 0x06, 0x01, 0x01, 0x01, 0x42, 0x3C, 0x18, 0xA2, 0x92, 0x8A, - 0x28, 0xBF, 0x08, 0x21, 0xC0, 0x7C, 0x81, 0x03, 0xE4, 0x40, 0x40, 0x81, - 0x03, 0x88, 0xE0, 0x1E, 0x41, 0x04, 0x0B, 0x98, 0xB0, 0xC1, 0xC2, 0x88, - 0xE0, 0xFE, 0x04, 0x08, 0x20, 0x40, 0x82, 0x04, 0x08, 0x20, 0x40, 0x38, - 0x8A, 0x0C, 0x14, 0x47, 0x11, 0x41, 0x83, 0x8C, 0xE0, 0x38, 0x8A, 0x1C, - 0x18, 0x68, 0xCE, 0x81, 0x04, 0x13, 0xC0, 0xF0, 0x0F, 0x6C, 0x00, 0xD2, - 0xD2, 0x00, 0x03, 0x04, 0x18, 0x60, 0x60, 0x18, 0x04, 0x03, 0xFF, 0x80, - 0x00, 0x1F, 0xF0, 0x40, 0x18, 0x03, 0x00, 0x60, 0x20, 0x60, 0xC0, 0x80, - 0x3D, 0x84, 0x08, 0x30, 0xC2, 0x00, 0x00, 0x00, 0x30, 0x3C, 0x46, 0x82, - 0x8E, 0xB2, 0xA2, 0xA2, 0x9F, 0x80, 0x80, 0x40, 0x3C, 0x3C, 0x01, 0x40, - 0x28, 0x09, 0x01, 0x10, 0x42, 0x0F, 0xC1, 0x04, 0x40, 0x9E, 0x3C, 0xFE, - 0x21, 0x90, 0x48, 0x67, 0xE2, 0x09, 0x02, 0x81, 0x41, 0xFF, 0x80, 0x3E, - 0xB0, 0xF0, 0x30, 0x08, 0x04, 0x02, 0x00, 0x80, 0x60, 0x8F, 0x80, 0xFE, - 0x21, 0x90, 0x68, 0x14, 0x0A, 0x05, 0x02, 0x83, 0x43, 0x7F, 0x00, 0xFF, - 0x20, 0x90, 0x08, 0x87, 0xC2, 0x21, 0x00, 0x81, 0x40, 0xFF, 0xC0, 0xFF, - 0xA0, 0x50, 0x08, 0x87, 0xC2, 0x21, 0x00, 0x80, 0x40, 0x78, 0x00, 0x1E, - 0x98, 0x6C, 0x0A, 0x00, 0x80, 0x20, 0xF8, 0x0B, 0x02, 0x60, 0x87, 0xC0, - 0xE3, 0xA0, 0x90, 0x48, 0x27, 0xF2, 0x09, 0x04, 0x82, 0x41, 0x71, 0xC0, - 0xF9, 0x08, 0x42, 0x10, 0x84, 0x27, 0xC0, 0x1F, 0x02, 0x02, 0x02, 0x02, - 0x02, 0x82, 0x82, 0xC6, 0x78, 0xE3, 0xA1, 0x11, 0x09, 0x05, 0x83, 0x21, - 0x08, 0x84, 0x41, 0x70, 0xC0, 0xE0, 0x40, 0x40, 0x40, 0x40, 0x40, 0x41, - 0x41, 0x41, 0xFF, 0xE0, 0xEC, 0x19, 0x45, 0x28, 0xA4, 0xA4, 0x94, 0x91, - 0x12, 0x02, 0x40, 0x5C, 0x1C, 0xC3, 0xB0, 0x94, 0x4A, 0x24, 0x92, 0x49, - 0x14, 0x8A, 0x43, 0x70, 0x80, 0x1E, 0x31, 0x90, 0x50, 0x18, 0x0C, 0x06, - 0x02, 0x82, 0x63, 0x0F, 0x00, 0xFE, 0x43, 0x41, 0x41, 0x42, 0x7C, 0x40, - 0x40, 0x40, 0xF0, 0x1C, 0x31, 0x90, 0x50, 0x18, 0x0C, 0x06, 0x02, 0x82, - 0x63, 0x1F, 0x04, 0x07, 0x92, 0x30, 0xFE, 0x21, 0x90, 0x48, 0x24, 0x23, - 0xE1, 0x10, 0x84, 0x41, 0x70, 0xC0, 0x3A, 0xCD, 0x0A, 0x03, 0x01, 0x80, - 0xC1, 0xC7, 0x78, 0xFF, 0xC4, 0x62, 0x21, 0x00, 0x80, 0x40, 0x20, 0x10, - 0x08, 0x1F, 0x00, 0xE3, 0xA0, 0x90, 0x48, 0x24, 0x12, 0x09, 0x04, 0x82, - 0x22, 0x0E, 0x00, 0xF1, 0xE8, 0x10, 0x82, 0x10, 0x42, 0x10, 0x22, 0x04, - 0x80, 0x50, 0x0C, 0x00, 0x80, 0xF1, 0xE8, 0x09, 0x11, 0x25, 0x44, 0xA8, - 0x55, 0x0C, 0xA1, 0x8C, 0x31, 0x84, 0x30, 0xE3, 0xA0, 0x88, 0x82, 0x80, - 0x80, 0xC0, 0x90, 0x44, 0x41, 0x71, 0xC0, 0xE3, 0xA0, 0x88, 0x82, 0x81, - 0x40, 0x40, 0x20, 0x10, 0x08, 0x1F, 0x00, 0xFD, 0x0A, 0x20, 0x81, 0x04, - 0x10, 0x21, 0x83, 0xFC, 0xEA, 0xAA, 0xAA, 0xC0, 0x80, 0x81, 0x03, 0x02, - 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0xD5, 0x55, 0x55, 0xC0, - 0x10, 0x51, 0x22, 0x28, 0x20, 0xFF, 0xE0, 0x88, 0x80, 0x7E, 0x00, 0x80, - 0x47, 0xEC, 0x14, 0x0A, 0x0C, 0xFB, 0xC0, 0x20, 0x10, 0x0B, 0xC6, 0x12, - 0x05, 0x02, 0x81, 0x40, 0xB0, 0xB7, 0x80, 0x3A, 0x8E, 0x0C, 0x08, 0x10, - 0x10, 0x9E, 0x03, 0x00, 0x80, 0x47, 0xA4, 0x34, 0x0A, 0x05, 0x02, 0x81, - 0x21, 0x8F, 0x60, 0x3C, 0x43, 0x81, 0xFF, 0x80, 0x80, 0x61, 0x3E, 0x3D, - 0x04, 0x3E, 0x41, 0x04, 0x10, 0x41, 0x0F, 0x80, 0x3D, 0xA1, 0xA0, 0x50, - 0x28, 0x14, 0x09, 0x0C, 0x7A, 0x01, 0x01, 0x87, 0x80, 0xC0, 0x20, 0x10, - 0x0B, 0xC6, 0x32, 0x09, 0x04, 0x82, 0x41, 0x20, 0xB8, 0xE0, 0x10, 0x01, - 0xC0, 0x81, 0x02, 0x04, 0x08, 0x11, 0xFC, 0x10, 0x3E, 0x10, 0x84, 0x21, - 0x08, 0x42, 0x3F, 0x00, 0xC0, 0x40, 0x40, 0x4F, 0x44, 0x58, 0x70, 0x48, - 0x44, 0x42, 0xC7, 0x70, 0x20, 0x40, 0x81, 0x02, 0x04, 0x08, 0x10, 0x23, - 0xF8, 0xB7, 0x64, 0x62, 0x31, 0x18, 0x8C, 0x46, 0x23, 0x91, 0x5E, 0x31, - 0x90, 0x48, 0x24, 0x12, 0x09, 0x05, 0xC7, 0x3E, 0x31, 0xA0, 0x30, 0x18, - 0x0C, 0x05, 0x8C, 0x7C, 0xDE, 0x30, 0x90, 0x28, 0x14, 0x0A, 0x05, 0x84, - 0xBC, 0x40, 0x20, 0x38, 0x00, 0x3D, 0xA1, 0xA0, 0x50, 0x28, 0x14, 0x09, - 0x0C, 0x7A, 0x01, 0x00, 0x80, 0xE0, 0xCE, 0xA1, 0x82, 0x04, 0x08, 0x10, - 0x7C, 0x3A, 0x8D, 0x0B, 0x80, 0xF0, 0x70, 0xDE, 0x40, 0x40, 0xFC, 0x40, - 0x40, 0x40, 0x40, 0x40, 0x41, 0x3E, 0xC3, 0x41, 0x41, 0x41, 0x41, 0x41, - 0x43, 0x3D, 0xE3, 0xA0, 0x90, 0x84, 0x42, 0x20, 0xA0, 0x50, 0x10, 0xE3, - 0xC0, 0x92, 0x4B, 0x25, 0x92, 0xA9, 0x98, 0x44, 0xE3, 0x31, 0x05, 0x01, - 0x01, 0x41, 0x11, 0x05, 0xC7, 0xE3, 0xA0, 0x90, 0x84, 0x42, 0x40, 0xA0, - 0x60, 0x10, 0x10, 0x08, 0x3E, 0x00, 0xFD, 0x08, 0x20, 0x82, 0x08, 0x10, - 0xBF, 0x29, 0x24, 0xA2, 0x49, 0x26, 0xFF, 0xF8, 0x89, 0x24, 0x8A, 0x49, - 0x2C, 0x61, 0x24, 0x30}; - -const GFXglyph FreeMono9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 2, 11, 11, 4, -10}, // 0x21 '!' - {3, 6, 5, 11, 2, -10}, // 0x22 '"' - {7, 7, 12, 11, 2, -10}, // 0x23 '#' - {18, 8, 12, 11, 1, -10}, // 0x24 '$' - {30, 7, 11, 11, 2, -10}, // 0x25 '%' - {40, 7, 10, 11, 2, -9}, // 0x26 '&' - {49, 3, 5, 11, 4, -10}, // 0x27 ''' - {51, 2, 13, 11, 5, -10}, // 0x28 '(' - {55, 2, 13, 11, 4, -10}, // 0x29 ')' - {59, 7, 7, 11, 2, -10}, // 0x2A '*' - {66, 7, 7, 11, 2, -8}, // 0x2B '+' - {73, 3, 5, 11, 2, -1}, // 0x2C ',' - {75, 9, 1, 11, 1, -5}, // 0x2D '-' - {77, 2, 2, 11, 4, -1}, // 0x2E '.' - {78, 7, 13, 11, 2, -11}, // 0x2F '/' - {90, 7, 11, 11, 2, -10}, // 0x30 '0' - {100, 5, 11, 11, 3, -10}, // 0x31 '1' - {107, 7, 11, 11, 2, -10}, // 0x32 '2' - {117, 8, 11, 11, 1, -10}, // 0x33 '3' - {128, 6, 11, 11, 3, -10}, // 0x34 '4' - {137, 7, 11, 11, 2, -10}, // 0x35 '5' - {147, 7, 11, 11, 2, -10}, // 0x36 '6' - {157, 7, 11, 11, 2, -10}, // 0x37 '7' - {167, 7, 11, 11, 2, -10}, // 0x38 '8' - {177, 7, 11, 11, 2, -10}, // 0x39 '9' - {187, 2, 8, 11, 4, -7}, // 0x3A ':' - {189, 3, 11, 11, 3, -7}, // 0x3B ';' - {194, 8, 8, 11, 1, -8}, // 0x3C '<' - {202, 9, 4, 11, 1, -6}, // 0x3D '=' - {207, 9, 8, 11, 1, -8}, // 0x3E '>' - {216, 7, 10, 11, 2, -9}, // 0x3F '?' - {225, 8, 12, 11, 2, -10}, // 0x40 '@' - {237, 11, 10, 11, 0, -9}, // 0x41 'A' - {251, 9, 10, 11, 1, -9}, // 0x42 'B' - {263, 9, 10, 11, 1, -9}, // 0x43 'C' - {275, 9, 10, 11, 1, -9}, // 0x44 'D' - {287, 9, 10, 11, 1, -9}, // 0x45 'E' - {299, 9, 10, 11, 1, -9}, // 0x46 'F' - {311, 10, 10, 11, 1, -9}, // 0x47 'G' - {324, 9, 10, 11, 1, -9}, // 0x48 'H' - {336, 5, 10, 11, 3, -9}, // 0x49 'I' - {343, 8, 10, 11, 2, -9}, // 0x4A 'J' - {353, 9, 10, 11, 1, -9}, // 0x4B 'K' - {365, 8, 10, 11, 2, -9}, // 0x4C 'L' - {375, 11, 10, 11, 0, -9}, // 0x4D 'M' - {389, 9, 10, 11, 1, -9}, // 0x4E 'N' - {401, 9, 10, 11, 1, -9}, // 0x4F 'O' - {413, 8, 10, 11, 1, -9}, // 0x50 'P' - {423, 9, 13, 11, 1, -9}, // 0x51 'Q' - {438, 9, 10, 11, 1, -9}, // 0x52 'R' - {450, 7, 10, 11, 2, -9}, // 0x53 'S' - {459, 9, 10, 11, 1, -9}, // 0x54 'T' - {471, 9, 10, 11, 1, -9}, // 0x55 'U' - {483, 11, 10, 11, 0, -9}, // 0x56 'V' - {497, 11, 10, 11, 0, -9}, // 0x57 'W' - {511, 9, 10, 11, 1, -9}, // 0x58 'X' - {523, 9, 10, 11, 1, -9}, // 0x59 'Y' - {535, 7, 10, 11, 2, -9}, // 0x5A 'Z' - {544, 2, 13, 11, 5, -10}, // 0x5B '[' - {548, 7, 13, 11, 2, -11}, // 0x5C '\' - {560, 2, 13, 11, 4, -10}, // 0x5D ']' - {564, 7, 5, 11, 2, -10}, // 0x5E '^' - {569, 11, 1, 11, 0, 2}, // 0x5F '_' - {571, 3, 3, 11, 3, -11}, // 0x60 '`' - {573, 9, 8, 11, 1, -7}, // 0x61 'a' - {582, 9, 11, 11, 1, -10}, // 0x62 'b' - {595, 7, 8, 11, 2, -7}, // 0x63 'c' - {602, 9, 11, 11, 1, -10}, // 0x64 'd' - {615, 8, 8, 11, 1, -7}, // 0x65 'e' - {623, 6, 11, 11, 3, -10}, // 0x66 'f' - {632, 9, 11, 11, 1, -7}, // 0x67 'g' - {645, 9, 11, 11, 1, -10}, // 0x68 'h' - {658, 7, 10, 11, 2, -9}, // 0x69 'i' - {667, 5, 13, 11, 3, -9}, // 0x6A 'j' - {676, 8, 11, 11, 2, -10}, // 0x6B 'k' - {687, 7, 11, 11, 2, -10}, // 0x6C 'l' - {697, 9, 8, 11, 1, -7}, // 0x6D 'm' - {706, 9, 8, 11, 1, -7}, // 0x6E 'n' - {715, 9, 8, 11, 1, -7}, // 0x6F 'o' - {724, 9, 11, 11, 1, -7}, // 0x70 'p' - {737, 9, 11, 11, 1, -7}, // 0x71 'q' - {750, 7, 8, 11, 3, -7}, // 0x72 'r' - {757, 7, 8, 11, 2, -7}, // 0x73 's' - {764, 8, 10, 11, 2, -9}, // 0x74 't' - {774, 8, 8, 11, 1, -7}, // 0x75 'u' - {782, 9, 8, 11, 1, -7}, // 0x76 'v' - {791, 9, 8, 11, 1, -7}, // 0x77 'w' - {800, 9, 8, 11, 1, -7}, // 0x78 'x' - {809, 9, 11, 11, 1, -7}, // 0x79 'y' - {822, 7, 8, 11, 2, -7}, // 0x7A 'z' - {829, 3, 13, 11, 4, -10}, // 0x7B '{' - {834, 1, 13, 11, 5, -10}, // 0x7C '|' - {836, 3, 13, 11, 4, -10}, // 0x7D '}' - {841, 7, 3, 11, 2, -6}}; // 0x7E '~' - -const GFXfont FreeMono9pt7b PROGMEM = {(uint8_t *)FreeMono9pt7bBitmaps, - (GFXglyph *)FreeMono9pt7bGlyphs, 0x20, - 0x7E, 18}; - -// Approx. 1516 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h deleted file mode 100644 index a205386..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold12pt7b.h +++ /dev/null @@ -1,252 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xF6, 0x66, 0x60, 0x6F, 0x60, 0xE7, 0xE7, 0x62, 0x42, - 0x42, 0x42, 0x42, 0x11, 0x87, 0x30, 0xC6, 0x18, 0xC3, 0x31, 0xFF, 0xFF, - 0xF9, 0x98, 0x33, 0x06, 0x60, 0xCC, 0x7F, 0xEF, 0xFC, 0x66, 0x0C, 0xC3, - 0x98, 0x63, 0x04, 0x40, 0x0C, 0x03, 0x00, 0xC0, 0xFE, 0x7F, 0x9C, 0x66, - 0x09, 0x80, 0x78, 0x0F, 0xE0, 0x7F, 0x03, 0xE0, 0xF8, 0x7F, 0xFB, 0xFC, - 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x38, 0x1F, 0x0C, 0x42, 0x10, 0xC4, 0x1F, - 0x03, 0x9C, 0x3C, 0x7F, 0x33, 0xE0, 0x8C, 0x21, 0x08, 0xC3, 0xE0, 0x70, - 0x3E, 0x1F, 0xC6, 0x61, 0x80, 0x70, 0x0C, 0x07, 0x83, 0xEE, 0xDF, 0xB3, - 0xCC, 0x73, 0xFE, 0x7F, 0x80, 0xFD, 0x24, 0x90, 0x39, 0xDC, 0xE6, 0x73, - 0x18, 0xC6, 0x31, 0x8C, 0x31, 0x8E, 0x31, 0xC4, 0xE7, 0x1C, 0xE3, 0x1C, - 0x63, 0x18, 0xC6, 0x31, 0x98, 0xCE, 0x67, 0x10, 0x0C, 0x03, 0x00, 0xC3, - 0xB7, 0xFF, 0xDF, 0xE1, 0xE0, 0xFC, 0x33, 0x0C, 0xC0, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x00, 0x3B, 0x9C, 0xCE, 0x62, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0x80, 0x00, 0x40, 0x30, 0x1C, 0x07, 0x03, 0x80, 0xE0, 0x30, - 0x1C, 0x06, 0x03, 0x80, 0xC0, 0x70, 0x18, 0x0E, 0x03, 0x01, 0xC0, 0x60, - 0x38, 0x0E, 0x01, 0x00, 0x1E, 0x0F, 0xC6, 0x1B, 0x87, 0xC0, 0xF0, 0x3C, - 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x87, 0x61, 0x8F, 0xC1, 0xE0, 0x1C, - 0x0F, 0x0F, 0xC3, 0xB0, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x3F, 0xFF, 0xFC, 0x1F, 0x1F, 0xEE, 0x1F, 0x83, 0xC0, - 0xC0, 0x70, 0x38, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE3, 0xF0, 0xFF, 0xFF, - 0xFC, 0x3F, 0x0F, 0xF1, 0x87, 0x00, 0x60, 0x0C, 0x03, 0x83, 0xE0, 0x7C, - 0x01, 0xC0, 0x0C, 0x01, 0x80, 0x3C, 0x0F, 0xFF, 0x9F, 0xC0, 0x07, 0x07, - 0x83, 0xC3, 0xE1, 0xB1, 0xD8, 0xCC, 0xC6, 0xE3, 0x7F, 0xFF, 0xE0, 0x61, - 0xF8, 0xFC, 0x7F, 0x9F, 0xE6, 0x01, 0x80, 0x60, 0x1F, 0x87, 0xF9, 0x86, - 0x00, 0xC0, 0x30, 0x0C, 0x03, 0xC1, 0xBF, 0xE7, 0xE0, 0x07, 0xC7, 0xF3, - 0xC1, 0xC0, 0x60, 0x38, 0x0E, 0xF3, 0xFE, 0xF1, 0xF8, 0x3E, 0x0F, 0x83, - 0x71, 0xCF, 0xE1, 0xF0, 0xFF, 0xFF, 0xFC, 0x1F, 0x07, 0x01, 0x80, 0x60, - 0x38, 0x0C, 0x03, 0x01, 0xC0, 0x60, 0x18, 0x0E, 0x03, 0x00, 0xC0, 0x1E, - 0x1F, 0xEE, 0x1F, 0x03, 0xC0, 0xF0, 0x36, 0x19, 0xFE, 0x7F, 0xB8, 0x7C, - 0x0F, 0x03, 0xE1, 0xDF, 0xE3, 0xF0, 0x3E, 0x1F, 0xCE, 0x3B, 0x07, 0xC1, - 0xF0, 0x7E, 0x3D, 0xFF, 0x3D, 0xC0, 0x70, 0x18, 0x0E, 0x0F, 0x3F, 0x8F, - 0x80, 0xFF, 0x80, 0x00, 0xFF, 0x80, 0x77, 0x70, 0x00, 0x00, 0x76, 0x6C, - 0xC8, 0x80, 0x00, 0x30, 0x0F, 0x03, 0xE0, 0xF8, 0x3E, 0x0F, 0x80, 0x3E, - 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x00, 0x20, 0xFF, 0xFF, 0xFF, 0x00, 0x00, - 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x0F, 0x80, 0x3E, 0x00, 0xF8, - 0x03, 0xE0, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x0F, 0x00, 0x40, 0x00, 0x7C, - 0x7F, 0xB0, 0xF8, 0x30, 0x18, 0x1C, 0x3C, 0x3C, 0x18, 0x08, 0x00, 0x07, - 0x03, 0x81, 0xC0, 0x1E, 0x07, 0xF1, 0xC7, 0x30, 0x6C, 0x0D, 0x87, 0xB3, - 0xF6, 0xE6, 0xD8, 0xDB, 0x1B, 0x73, 0x67, 0xFC, 0x7F, 0x80, 0x30, 0x03, - 0x00, 0x71, 0xC7, 0xF8, 0x7C, 0x00, 0x3F, 0x80, 0x7F, 0x80, 0x1F, 0x00, - 0x76, 0x00, 0xEE, 0x01, 0x8C, 0x07, 0x18, 0x0E, 0x38, 0x1F, 0xF0, 0x7F, - 0xF0, 0xC0, 0x61, 0x80, 0xCF, 0xC7, 0xFF, 0x8F, 0xC0, 0xFF, 0xC7, 0xFF, - 0x0C, 0x1C, 0x60, 0x63, 0x03, 0x18, 0x38, 0xFF, 0x87, 0xFE, 0x30, 0x39, - 0x80, 0xCC, 0x06, 0x60, 0x7F, 0xFF, 0x7F, 0xF0, 0x0F, 0xF3, 0xFF, 0x70, - 0x76, 0x03, 0xC0, 0x3C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0x60, - 0x37, 0x07, 0x3F, 0xF0, 0xFC, 0xFF, 0x0F, 0xFC, 0x60, 0xE6, 0x06, 0x60, - 0x36, 0x03, 0x60, 0x36, 0x03, 0x60, 0x36, 0x03, 0x60, 0x76, 0x0E, 0xFF, - 0xCF, 0xF8, 0xFF, 0xF7, 0xFF, 0x8C, 0x0C, 0x60, 0x63, 0x1B, 0x18, 0xC0, - 0xFE, 0x07, 0xF0, 0x31, 0x81, 0x8C, 0xCC, 0x06, 0x60, 0x3F, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFF, 0xCC, 0x06, 0x60, 0x33, 0x19, 0x98, 0xC0, 0xFE, - 0x07, 0xF0, 0x31, 0x81, 0x8C, 0x0C, 0x00, 0x60, 0x0F, 0xF0, 0x7F, 0x80, - 0x0F, 0xF1, 0xFF, 0x9C, 0x1C, 0xC0, 0x6C, 0x03, 0x60, 0x03, 0x00, 0x18, - 0x7F, 0xC3, 0xFE, 0x01, 0xB8, 0x0C, 0xE0, 0xE3, 0xFF, 0x07, 0xE0, 0x7C, - 0xF9, 0xF3, 0xE3, 0x03, 0x0C, 0x0C, 0x30, 0x30, 0xC0, 0xC3, 0xFF, 0x0F, - 0xFC, 0x30, 0x30, 0xC0, 0xC3, 0x03, 0x0C, 0x0C, 0xFC, 0xFF, 0xF3, 0xF0, - 0xFF, 0xFF, 0xF0, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, - 0x00, 0xC0, 0x30, 0xFF, 0xFF, 0xF0, 0x0F, 0xF8, 0x7F, 0xC0, 0x30, 0x01, - 0x80, 0x0C, 0x00, 0x60, 0x03, 0x18, 0x18, 0xC0, 0xC6, 0x06, 0x30, 0x31, - 0xC3, 0x0F, 0xF8, 0x1F, 0x00, 0xFC, 0xFB, 0xF3, 0xE3, 0x0E, 0x0C, 0x70, - 0x33, 0x80, 0xFC, 0x03, 0xF0, 0x0F, 0xE0, 0x39, 0xC0, 0xC3, 0x03, 0x0E, - 0x0C, 0x18, 0xFC, 0x7F, 0xF0, 0xF0, 0xFF, 0x0F, 0xF0, 0x18, 0x01, 0x80, - 0x18, 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x31, 0x83, 0x18, 0x31, 0x83, - 0xFF, 0xFF, 0xFF, 0xF0, 0x3F, 0xC0, 0xF7, 0x87, 0x9E, 0x1E, 0x7C, 0xF9, - 0xB3, 0xE6, 0xFD, 0x99, 0xF6, 0x67, 0x99, 0x8E, 0x66, 0x31, 0x98, 0x06, - 0xFC, 0xFF, 0xF3, 0xF0, 0xF1, 0xFF, 0xCF, 0xCF, 0x0C, 0x78, 0x63, 0xE3, - 0x1B, 0x18, 0xDC, 0xC6, 0x76, 0x31, 0xB1, 0x8F, 0x8C, 0x3C, 0x61, 0xE7, - 0xE7, 0x3F, 0x18, 0x0F, 0x03, 0xFC, 0x70, 0xE6, 0x06, 0xE0, 0x7C, 0x03, - 0xC0, 0x3C, 0x03, 0xC0, 0x3E, 0x07, 0x60, 0x67, 0x0E, 0x3F, 0xC0, 0xF0, - 0xFF, 0x8F, 0xFE, 0x30, 0x73, 0x03, 0x30, 0x33, 0x03, 0x30, 0x73, 0xFE, - 0x3F, 0x83, 0x00, 0x30, 0x03, 0x00, 0xFF, 0x0F, 0xF0, 0x0F, 0x03, 0xFC, - 0x70, 0xE6, 0x06, 0xE0, 0x7C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3E, 0x07, - 0x60, 0x67, 0x0E, 0x3F, 0xC1, 0xF0, 0x18, 0x33, 0xFF, 0x3F, 0xE0, 0xFF, - 0x83, 0xFF, 0x83, 0x07, 0x0C, 0x0C, 0x30, 0x30, 0xC1, 0xC3, 0xFE, 0x0F, - 0xF0, 0x31, 0xE0, 0xC3, 0x83, 0x07, 0x0C, 0x0C, 0xFE, 0x3F, 0xF8, 0x70, - 0x3F, 0xDF, 0xFE, 0x1F, 0x03, 0xC0, 0xF8, 0x07, 0xE0, 0x7E, 0x01, 0xF0, - 0x3C, 0x0F, 0x87, 0xFF, 0xBF, 0xC0, 0xFF, 0xFF, 0xFF, 0xC6, 0x3C, 0x63, - 0xC6, 0x3C, 0x63, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x3F, 0xC3, 0xFC, 0xFF, 0xFF, 0xFF, 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, - 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, 0x60, 0x63, 0x9C, 0x1F, 0xC0, 0xF0, - 0xFC, 0x3F, 0xFC, 0x3F, 0x30, 0x0C, 0x38, 0x1C, 0x18, 0x18, 0x1C, 0x38, - 0x1C, 0x38, 0x0E, 0x70, 0x0E, 0x70, 0x0F, 0x60, 0x07, 0xE0, 0x07, 0xE0, - 0x03, 0xC0, 0x03, 0xC0, 0xFC, 0xFF, 0xF3, 0xF6, 0x01, 0xDC, 0xC6, 0x77, - 0x99, 0xDE, 0x67, 0x79, 0x8D, 0xFE, 0x3F, 0xF8, 0xF3, 0xE3, 0xCF, 0x8F, - 0x3C, 0x38, 0x70, 0xE1, 0xC0, 0xF8, 0xFB, 0xE3, 0xE3, 0x86, 0x0F, 0x38, - 0x1F, 0xC0, 0x3E, 0x00, 0x70, 0x03, 0xE0, 0x0F, 0x80, 0x77, 0x03, 0x8E, - 0x1E, 0x1C, 0xFC, 0xFF, 0xF3, 0xF0, 0xF9, 0xFF, 0x9F, 0x30, 0xC3, 0x9C, - 0x19, 0x81, 0xF8, 0x0F, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x3F, 0xC3, 0xFC, 0xFF, 0xBF, 0xEC, 0x3B, 0x0C, 0xC6, 0x33, 0x80, 0xC0, - 0x60, 0x38, 0xCC, 0x36, 0x0F, 0x03, 0xFF, 0xFF, 0xF0, 0xFF, 0xF1, 0x8C, - 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC7, 0xFE, 0x40, 0x30, 0x0E, - 0x01, 0x80, 0x70, 0x0C, 0x03, 0x80, 0x60, 0x1C, 0x03, 0x00, 0xE0, 0x18, - 0x07, 0x00, 0xC0, 0x38, 0x0E, 0x01, 0xC0, 0x70, 0x0C, 0x01, 0xFF, 0xC6, - 0x31, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x1F, 0xFE, 0x04, 0x03, - 0x01, 0xE0, 0xFC, 0x7B, 0x9C, 0x7E, 0x1F, 0x03, 0xFF, 0xFF, 0xFF, 0xF0, - 0xCE, 0x73, 0x3F, 0x07, 0xF8, 0x00, 0xC0, 0x0C, 0x1F, 0xC7, 0xFC, 0x60, - 0xCC, 0x0C, 0xC1, 0xCF, 0xFF, 0x3F, 0xF0, 0xF0, 0x07, 0x80, 0x0C, 0x00, - 0x60, 0x03, 0x7C, 0x1F, 0xF8, 0xF1, 0xC7, 0x07, 0x30, 0x19, 0x80, 0xCC, - 0x06, 0x60, 0x73, 0xC7, 0x7F, 0xFB, 0xDF, 0x00, 0x1F, 0xB3, 0xFF, 0x70, - 0xFE, 0x07, 0xC0, 0x3C, 0x00, 0xC0, 0x0C, 0x00, 0x70, 0x77, 0xFF, 0x1F, - 0xC0, 0x01, 0xE0, 0x0F, 0x00, 0x18, 0x00, 0xC1, 0xF6, 0x3F, 0xF1, 0xC7, - 0x9C, 0x1C, 0xC0, 0x66, 0x03, 0x30, 0x19, 0x81, 0xC7, 0x1E, 0x3F, 0xFC, - 0x7D, 0xE0, 0x1F, 0x83, 0xFC, 0x70, 0xEE, 0x07, 0xFF, 0xFF, 0xFF, 0xE0, - 0x0E, 0x00, 0x70, 0x73, 0xFF, 0x1F, 0xC0, 0x07, 0xC3, 0xFC, 0x60, 0x0C, - 0x0F, 0xFD, 0xFF, 0x86, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x01, - 0x81, 0xFF, 0xBF, 0xF0, 0x1F, 0x79, 0xFF, 0xDC, 0x79, 0x81, 0xCC, 0x06, - 0x60, 0x33, 0x01, 0x9C, 0x1C, 0x71, 0xE1, 0xFF, 0x07, 0xD8, 0x00, 0xC0, - 0x06, 0x00, 0x70, 0x7F, 0x03, 0xF0, 0xF0, 0x03, 0xC0, 0x03, 0x00, 0x0C, - 0x00, 0x37, 0xC0, 0xFF, 0x83, 0xC7, 0x0C, 0x0C, 0x30, 0x30, 0xC0, 0xC3, - 0x03, 0x0C, 0x0C, 0x30, 0x33, 0xF3, 0xFF, 0xCF, 0xC0, 0x06, 0x00, 0xC0, - 0x00, 0x3F, 0x07, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, - 0x03, 0x0F, 0xFF, 0xFF, 0xC0, 0x06, 0x06, 0x00, 0xFF, 0xFF, 0x03, 0x03, - 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0xFE, 0xFC, - 0xF0, 0x07, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x3F, 0x19, 0xF8, 0xDE, 0x07, - 0xE0, 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x6F, 0x03, 0x1C, 0x78, 0xFF, 0xC7, - 0xE0, 0x7E, 0x0F, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x61, 0xFF, 0xFF, 0xF8, 0xFE, 0xF1, - 0xFF, 0xF1, 0xCE, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC6, 0x31, - 0x8C, 0x63, 0x19, 0xF7, 0xBF, 0xEF, 0x78, 0x77, 0xC1, 0xFF, 0x83, 0xC7, - 0x0C, 0x0C, 0x30, 0x30, 0xC0, 0xC3, 0x03, 0x0C, 0x0C, 0x30, 0x33, 0xF1, - 0xFF, 0xC7, 0xC0, 0x1F, 0x83, 0xFC, 0x70, 0xEE, 0x07, 0xC0, 0x3C, 0x03, - 0xC0, 0x3E, 0x07, 0x70, 0xE3, 0xFC, 0x1F, 0x80, 0xF7, 0xE3, 0xFF, 0xC3, - 0xC3, 0x8E, 0x07, 0x30, 0x0C, 0xC0, 0x33, 0x00, 0xCE, 0x07, 0x3C, 0x38, - 0xFF, 0xC3, 0x7E, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x0F, 0xE0, 0x3F, 0x80, - 0x1F, 0xBC, 0xFF, 0xF7, 0x0F, 0x38, 0x1C, 0xC0, 0x33, 0x00, 0xCC, 0x03, - 0x38, 0x1C, 0x70, 0xF0, 0xFF, 0xC1, 0xFB, 0x00, 0x0C, 0x00, 0x30, 0x00, - 0xC0, 0x1F, 0xC0, 0x7F, 0x79, 0xE7, 0xFF, 0x1F, 0x31, 0xC0, 0x18, 0x01, - 0x80, 0x18, 0x01, 0x80, 0x18, 0x0F, 0xFC, 0xFF, 0xC0, 0x3F, 0x9F, 0xFE, - 0x1F, 0x82, 0xFE, 0x1F, 0xE0, 0xFF, 0x03, 0xE0, 0xFF, 0xFF, 0xF0, 0x30, - 0x06, 0x00, 0xC0, 0x7F, 0xEF, 0xFC, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, - 0x00, 0xC0, 0x18, 0x71, 0xFE, 0x1F, 0x00, 0xF1, 0xF7, 0x8F, 0x8C, 0x0C, - 0x60, 0x63, 0x03, 0x18, 0x18, 0xC0, 0xC6, 0x06, 0x38, 0xF0, 0xFF, 0xC3, - 0xEE, 0xFC, 0xFF, 0xF3, 0xF3, 0x87, 0x0E, 0x1C, 0x1C, 0x60, 0x73, 0x80, - 0xEC, 0x03, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x00, 0xF8, 0x7F, 0xE1, - 0xF7, 0x39, 0x8C, 0xE6, 0x37, 0xB0, 0xFF, 0xC3, 0xFF, 0x07, 0xBC, 0x1C, - 0xF0, 0x73, 0x81, 0x86, 0x00, 0x7C, 0xF9, 0xF3, 0xE3, 0xCF, 0x07, 0xF8, - 0x0F, 0xC0, 0x1E, 0x00, 0xFC, 0x07, 0x38, 0x38, 0x73, 0xF3, 0xFF, 0xCF, - 0xC0, 0xF9, 0xFF, 0x9F, 0x70, 0xE3, 0x0C, 0x39, 0xC1, 0x98, 0x19, 0x81, - 0xF8, 0x0F, 0x00, 0xF0, 0x06, 0x00, 0x60, 0x0E, 0x00, 0xC0, 0xFF, 0x0F, - 0xF0, 0x7F, 0xCF, 0xF9, 0x8E, 0x33, 0x80, 0x70, 0x1C, 0x07, 0x01, 0xC6, - 0x70, 0xFF, 0xFF, 0xFF, 0x80, 0x0E, 0x3C, 0x60, 0xC1, 0x83, 0x06, 0x0C, - 0x39, 0xE3, 0xC0, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x3C, 0x38, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0xE1, 0xC0, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x3C, - 0x79, 0x83, 0x06, 0x0C, 0x18, 0x31, 0xE3, 0x80, 0x3C, 0x37, 0xE7, 0x67, - 0xE6, 0x1C}; - -const GFXglyph FreeMonoBold12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 4, 15, 14, 5, -14}, // 0x21 '!' - {8, 8, 7, 14, 3, -13}, // 0x22 '"' - {15, 11, 18, 14, 2, -15}, // 0x23 '#' - {40, 10, 20, 14, 2, -16}, // 0x24 '$' - {65, 10, 15, 14, 2, -14}, // 0x25 '%' - {84, 10, 13, 14, 2, -12}, // 0x26 '&' - {101, 3, 7, 14, 5, -13}, // 0x27 ''' - {104, 5, 19, 14, 6, -14}, // 0x28 '(' - {116, 5, 19, 14, 3, -14}, // 0x29 ')' - {128, 10, 10, 14, 2, -14}, // 0x2A '*' - {141, 12, 13, 14, 1, -12}, // 0x2B '+' - {161, 5, 7, 14, 4, -2}, // 0x2C ',' - {166, 12, 2, 14, 1, -7}, // 0x2D '-' - {169, 3, 3, 14, 5, -2}, // 0x2E '.' - {171, 10, 20, 14, 2, -16}, // 0x2F '/' - {196, 10, 15, 14, 2, -14}, // 0x30 '0' - {215, 10, 15, 14, 2, -14}, // 0x31 '1' - {234, 10, 15, 14, 2, -14}, // 0x32 '2' - {253, 11, 15, 14, 1, -14}, // 0x33 '3' - {274, 9, 14, 14, 2, -13}, // 0x34 '4' - {290, 10, 15, 14, 2, -14}, // 0x35 '5' - {309, 10, 15, 14, 2, -14}, // 0x36 '6' - {328, 10, 15, 14, 2, -14}, // 0x37 '7' - {347, 10, 15, 14, 2, -14}, // 0x38 '8' - {366, 10, 15, 14, 3, -14}, // 0x39 '9' - {385, 3, 11, 14, 5, -10}, // 0x3A ':' - {390, 4, 15, 14, 4, -10}, // 0x3B ';' - {398, 12, 11, 14, 1, -11}, // 0x3C '<' - {415, 12, 7, 14, 1, -9}, // 0x3D '=' - {426, 12, 11, 14, 1, -11}, // 0x3E '>' - {443, 9, 14, 14, 3, -13}, // 0x3F '?' - {459, 11, 19, 14, 2, -14}, // 0x40 '@' - {486, 15, 14, 14, -1, -13}, // 0x41 'A' - {513, 13, 14, 14, 0, -13}, // 0x42 'B' - {536, 12, 14, 14, 1, -13}, // 0x43 'C' - {557, 12, 14, 14, 1, -13}, // 0x44 'D' - {578, 13, 14, 14, 0, -13}, // 0x45 'E' - {601, 13, 14, 14, 0, -13}, // 0x46 'F' - {624, 13, 14, 14, 1, -13}, // 0x47 'G' - {647, 14, 14, 14, 0, -13}, // 0x48 'H' - {672, 10, 14, 14, 2, -13}, // 0x49 'I' - {690, 13, 14, 14, 1, -13}, // 0x4A 'J' - {713, 14, 14, 14, 0, -13}, // 0x4B 'K' - {738, 12, 14, 14, 1, -13}, // 0x4C 'L' - {759, 14, 14, 14, 0, -13}, // 0x4D 'M' - {784, 13, 14, 14, 0, -13}, // 0x4E 'N' - {807, 12, 14, 14, 1, -13}, // 0x4F 'O' - {828, 12, 14, 14, 0, -13}, // 0x50 'P' - {849, 12, 17, 14, 1, -13}, // 0x51 'Q' - {875, 14, 14, 14, 0, -13}, // 0x52 'R' - {900, 10, 14, 14, 2, -13}, // 0x53 'S' - {918, 12, 14, 14, 1, -13}, // 0x54 'T' - {939, 12, 14, 14, 1, -13}, // 0x55 'U' - {960, 16, 14, 14, -1, -13}, // 0x56 'V' - {988, 14, 14, 14, 0, -13}, // 0x57 'W' - {1013, 14, 14, 14, 0, -13}, // 0x58 'X' - {1038, 12, 14, 14, 1, -13}, // 0x59 'Y' - {1059, 10, 14, 14, 2, -13}, // 0x5A 'Z' - {1077, 5, 19, 14, 6, -14}, // 0x5B '[' - {1089, 10, 20, 14, 2, -16}, // 0x5C '\' - {1114, 5, 19, 14, 3, -14}, // 0x5D ']' - {1126, 10, 8, 14, 2, -15}, // 0x5E '^' - {1136, 14, 2, 14, 0, 4}, // 0x5F '_' - {1140, 4, 4, 14, 4, -15}, // 0x60 '`' - {1142, 12, 11, 14, 1, -10}, // 0x61 'a' - {1159, 13, 15, 14, 0, -14}, // 0x62 'b' - {1184, 12, 11, 14, 1, -10}, // 0x63 'c' - {1201, 13, 15, 14, 1, -14}, // 0x64 'd' - {1226, 12, 11, 14, 1, -10}, // 0x65 'e' - {1243, 11, 15, 14, 2, -14}, // 0x66 'f' - {1264, 13, 16, 14, 1, -10}, // 0x67 'g' - {1290, 14, 15, 14, 0, -14}, // 0x68 'h' - {1317, 11, 14, 14, 1, -13}, // 0x69 'i' - {1337, 8, 19, 15, 3, -13}, // 0x6A 'j' - {1356, 13, 15, 14, 1, -14}, // 0x6B 'k' - {1381, 11, 15, 14, 1, -14}, // 0x6C 'l' - {1402, 15, 11, 14, 0, -10}, // 0x6D 'm' - {1423, 14, 11, 14, 0, -10}, // 0x6E 'n' - {1443, 12, 11, 14, 1, -10}, // 0x6F 'o' - {1460, 14, 16, 14, 0, -10}, // 0x70 'p' - {1488, 14, 16, 14, 0, -10}, // 0x71 'q' - {1516, 12, 11, 14, 1, -10}, // 0x72 'r' - {1533, 10, 11, 14, 2, -10}, // 0x73 's' - {1547, 11, 14, 14, 1, -13}, // 0x74 't' - {1567, 13, 11, 14, 0, -10}, // 0x75 'u' - {1585, 14, 11, 14, 0, -10}, // 0x76 'v' - {1605, 14, 11, 14, 0, -10}, // 0x77 'w' - {1625, 14, 11, 14, 0, -10}, // 0x78 'x' - {1645, 12, 16, 14, 1, -10}, // 0x79 'y' - {1669, 11, 11, 14, 1, -10}, // 0x7A 'z' - {1685, 7, 19, 14, 3, -14}, // 0x7B '{' - {1702, 2, 19, 14, 6, -14}, // 0x7C '|' - {1707, 7, 19, 14, 4, -14}, // 0x7D '}' - {1724, 12, 4, 14, 1, -7}}; // 0x7E '~' - -const GFXfont FreeMonoBold12pt7b PROGMEM = { - (uint8_t *)FreeMonoBold12pt7bBitmaps, (GFXglyph *)FreeMonoBold12pt7bGlyphs, - 0x20, 0x7E, 24}; - -// Approx. 2402 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h deleted file mode 100644 index 36664c1..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold18pt7b.h +++ /dev/null @@ -1,425 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold18pt7bBitmaps[] PROGMEM = { - 0x77, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0x9C, 0xE7, 0x39, 0xC4, 0x03, 0xBF, - 0xFF, 0xB8, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1E, 0xC1, 0x98, 0x33, - 0x06, 0x60, 0xCC, 0x18, 0x0E, 0x1C, 0x0F, 0x3C, 0x1F, 0x3C, 0x1E, 0x3C, - 0x1E, 0x3C, 0x1E, 0x78, 0x1E, 0x78, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x1E, 0x78, 0x1E, 0x78, 0x1E, 0x78, 0x7F, 0xFE, 0x7F, 0xFE, - 0x7F, 0xFE, 0x7F, 0xFE, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0xF0, - 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x03, 0x00, 0x1E, 0x00, 0x78, 0x01, - 0xE0, 0x1F, 0xF1, 0xFF, 0xE7, 0xFF, 0xBE, 0x1E, 0xF0, 0x3B, 0xC0, 0xCF, - 0xE0, 0x3F, 0xF8, 0x7F, 0xF0, 0x7F, 0xE0, 0x1F, 0xF0, 0x0F, 0xE0, 0x3F, - 0x80, 0xFF, 0x87, 0xFF, 0xFE, 0xFF, 0xF3, 0x7F, 0x80, 0x78, 0x01, 0xE0, - 0x07, 0x80, 0x1E, 0x00, 0x78, 0x00, 0xC0, 0x1E, 0x00, 0xFF, 0x03, 0x86, - 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x18, 0x38, 0x70, 0x3F, 0xC2, 0x1E, 0x3E, - 0x03, 0xF8, 0x3F, 0x83, 0xF8, 0x0F, 0x8F, 0x18, 0x7F, 0x01, 0xC7, 0x03, - 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x1C, 0x70, 0x1F, 0xC0, 0x0F, 0x00, 0x03, - 0xD0, 0x1F, 0xF0, 0x7F, 0xE1, 0xFF, 0xC3, 0xE6, 0x07, 0x80, 0x0F, 0x00, - 0x0F, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0xFE, 0x03, 0xFE, 0xFF, 0xBD, 0xFE, - 0x3F, 0xFC, 0x3F, 0x7C, 0x7C, 0xFF, 0xFE, 0xFF, 0xFC, 0xFF, 0xF8, 0x7E, - 0xF0, 0xFF, 0xFF, 0xF6, 0x66, 0x66, 0x07, 0x0F, 0x1F, 0x1E, 0x3E, 0x3C, - 0x78, 0x78, 0x78, 0x70, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0x78, 0x78, 0x78, 0x3C, 0x3C, 0x1E, 0x1F, 0x0F, 0x07, 0xE0, 0xF0, 0xF8, - 0x78, 0x7C, 0x3C, 0x3E, 0x1E, 0x1E, 0x1E, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0E, 0x1E, 0x1E, 0x1E, 0x3C, 0x3C, 0x78, 0xF8, 0xF0, 0xE0, - 0x01, 0x80, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFF, - 0xFF, 0xFF, 0x7F, 0xFE, 0x1F, 0xF8, 0x07, 0xE0, 0x0F, 0xF0, 0x1F, 0xF8, - 0x1E, 0x78, 0x1C, 0x38, 0x18, 0x18, 0x01, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0x80, 0x3E, 0x78, 0xF3, 0xC7, - 0x8E, 0x1C, 0x70, 0xE1, 0x80, 0x7F, 0xFF, 0xDF, 0xFF, 0xF9, 0xFF, 0xFF, - 0x3F, 0xFF, 0xE0, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x0E, 0x00, 0x3C, 0x00, - 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x1E, 0x00, 0x38, 0x00, 0xF0, - 0x01, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x3C, 0x00, 0x78, 0x01, 0xE0, 0x03, - 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x78, 0x00, 0xF0, 0x03, 0xC0, 0x07, 0x80, - 0x1E, 0x00, 0x3C, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, 0x03, 0x00, 0x00, - 0x07, 0xE0, 0x1F, 0xF8, 0x3F, 0xFC, 0x3F, 0xFC, 0x7C, 0x3E, 0x78, 0x1E, - 0xF8, 0x1F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, - 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF8, 0x1F, 0x78, 0x1E, - 0x7C, 0x3E, 0x3F, 0xFC, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, 0x07, 0xC0, - 0x1F, 0x80, 0xFF, 0x03, 0xFE, 0x0F, 0xBC, 0x0C, 0x78, 0x00, 0xF0, 0x01, - 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x81, 0xFF, 0xFB, 0xFF, 0xF7, - 0xFF, 0xE7, 0xFF, 0x80, 0x0F, 0xC0, 0x7F, 0xE1, 0xFF, 0xE3, 0xFF, 0xEF, - 0x87, 0xDE, 0x07, 0xF8, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x01, - 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, - 0x78, 0x03, 0xE0, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, - 0x0F, 0xC0, 0x7F, 0xF0, 0xFF, 0xF8, 0xFF, 0xFC, 0x70, 0x3E, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x3C, 0x03, 0xFC, 0x03, 0xF0, 0x03, 0xF0, - 0x03, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, - 0xE0, 0x3F, 0xFF, 0xFE, 0xFF, 0xFC, 0x7F, 0xF8, 0x1F, 0xE0, 0x00, 0xF8, - 0x03, 0xF0, 0x07, 0xE0, 0x1F, 0xC0, 0x77, 0x80, 0xEF, 0x03, 0x9E, 0x0F, - 0x3C, 0x1C, 0x78, 0x70, 0xF1, 0xE1, 0xE3, 0x83, 0xCF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x78, 0x07, 0xFC, 0x0F, 0xF8, 0x1F, 0xF0, - 0x1F, 0xC0, 0x3F, 0xFC, 0x1F, 0xFE, 0x0F, 0xFF, 0x07, 0xFF, 0x83, 0xC0, - 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x7B, 0xE0, 0x3F, 0xFC, 0x1F, 0xFF, 0x0F, - 0xFF, 0xC3, 0x83, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, - 0x00, 0x0F, 0xB8, 0x0F, 0xBF, 0xFF, 0xCF, 0xFF, 0xC3, 0xFF, 0xC0, 0x7F, - 0x80, 0x00, 0xFC, 0x07, 0xFC, 0x3F, 0xF8, 0xFF, 0xF1, 0xF8, 0x07, 0xC0, - 0x1F, 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xE7, 0xC3, 0xDF, 0xC7, 0x7F, 0xCF, - 0xFF, 0xDF, 0x8F, 0xFC, 0x07, 0xF0, 0x0F, 0xF0, 0x1F, 0xE0, 0x3D, 0xE0, - 0xFB, 0xFF, 0xE3, 0xFF, 0xC3, 0xFF, 0x01, 0xF8, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x01, 0xE0, 0x03, 0x80, 0x0F, 0x00, 0x1E, - 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, - 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x38, - 0x00, 0x70, 0x00, 0x07, 0xC0, 0x3F, 0xE0, 0xFF, 0xE3, 0xFF, 0xEF, 0x83, - 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, 0xF0, 0x1E, 0xF0, 0x78, 0xFF, 0xE0, - 0xFF, 0x81, 0xFF, 0x0F, 0xFF, 0x9E, 0x0F, 0x78, 0x0F, 0xF0, 0x1F, 0xE0, - 0x3F, 0xE0, 0xFB, 0xFF, 0xE7, 0xFF, 0xC7, 0xFF, 0x03, 0xF8, 0x00, 0x0F, - 0xC0, 0x3F, 0xE0, 0xFF, 0xE3, 0xFF, 0xEF, 0xC3, 0xDF, 0x03, 0xBC, 0x07, - 0xF8, 0x0F, 0xF0, 0x1F, 0xF0, 0x3D, 0xF1, 0xFB, 0xFF, 0xF3, 0xFE, 0xE3, - 0xFB, 0xC3, 0xE7, 0x80, 0x1E, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xE7, 0xFF, - 0x8F, 0xFE, 0x1F, 0xF0, 0x1F, 0x80, 0x00, 0x77, 0xFF, 0xF7, 0x00, 0x00, - 0x00, 0x00, 0xEF, 0xFF, 0xEE, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xF3, 0xC7, 0x8E, 0x3C, 0x70, 0xE1, 0x87, 0x0C, 0x00, - 0x00, 0x00, 0x00, 0x80, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0xFE, - 0x00, 0xFE, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, - 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7C, 0x00, - 0x07, 0x7F, 0xFF, 0xDF, 0xFF, 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE0, 0x00, - 0x00, 0x00, 0x00, 0x1F, 0xFF, 0xF7, 0xFF, 0xFE, 0x7F, 0xFF, 0xCF, 0xFF, - 0xF8, 0x00, 0x00, 0x3C, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, - 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x3F, 0x80, - 0x3F, 0x80, 0x3F, 0x80, 0x3F, 0x80, 0x3F, 0x80, 0x0F, 0x80, 0x03, 0x80, - 0x00, 0x1F, 0xC0, 0xFF, 0xE3, 0xFF, 0xF7, 0xFF, 0xEF, 0x07, 0xFE, 0x03, - 0xDC, 0x07, 0x80, 0x0F, 0x00, 0x7C, 0x03, 0xF8, 0x1F, 0xC0, 0x1E, 0x00, - 0x30, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x1F, 0x00, 0x3E, - 0x00, 0x7C, 0x00, 0x70, 0x00, 0x07, 0xE0, 0x1F, 0xE0, 0x7F, 0xE1, 0xE1, - 0xC7, 0x83, 0xCE, 0x03, 0xBC, 0x07, 0x70, 0x0E, 0xE0, 0x7D, 0xC3, 0xFB, - 0x8F, 0xF7, 0x3C, 0xEE, 0x71, 0xDC, 0xE3, 0xB9, 0xC7, 0x73, 0xCE, 0xE3, - 0xFF, 0xC3, 0xFF, 0x83, 0xFF, 0x00, 0x07, 0x00, 0x0E, 0x00, 0x1E, 0x02, - 0x1E, 0x1E, 0x3F, 0xFC, 0x1F, 0xF0, 0x1F, 0x80, 0x0F, 0xF8, 0x00, 0x7F, - 0xF0, 0x01, 0xFF, 0xC0, 0x03, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x07, 0xF8, - 0x00, 0x1C, 0xF0, 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x1E, 0x1E, 0x00, - 0x78, 0x78, 0x03, 0xC0, 0xF0, 0x0F, 0xFF, 0xC0, 0x3F, 0xFF, 0x01, 0xFF, - 0xFE, 0x07, 0xFF, 0xF8, 0x3C, 0x00, 0xF3, 0xFC, 0x1F, 0xEF, 0xF8, 0x7F, - 0xFF, 0xE1, 0xFF, 0x7F, 0x03, 0xF8, 0x7F, 0xFC, 0x0F, 0xFF, 0xF0, 0xFF, - 0xFF, 0x8F, 0xFF, 0xF8, 0x3C, 0x07, 0xC3, 0xC0, 0x3C, 0x3C, 0x03, 0xC3, - 0xC0, 0x7C, 0x3F, 0xFF, 0x83, 0xFF, 0xF0, 0x3F, 0xFF, 0x83, 0xFF, 0xFE, - 0x3C, 0x03, 0xE3, 0xC0, 0x1F, 0x3C, 0x00, 0xF3, 0xC0, 0x0F, 0x3C, 0x01, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xEF, 0xFF, 0xFC, 0x7F, 0xFF, 0x00, 0x01, - 0xF8, 0xC1, 0xFF, 0xFC, 0x7F, 0xFF, 0x9F, 0xFF, 0xF7, 0xE0, 0x7E, 0xF8, - 0x07, 0xFE, 0x00, 0x7F, 0x80, 0x0E, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, - 0x07, 0x7F, 0x03, 0xE7, 0xFF, 0xFC, 0x7F, 0xFF, 0x03, 0xFF, 0xC0, 0x1F, - 0xE0, 0xFF, 0xF0, 0x3F, 0xFF, 0x0F, 0xFF, 0xE3, 0xFF, 0xFC, 0x78, 0x1F, - 0x9E, 0x03, 0xE7, 0x80, 0x79, 0xE0, 0x0F, 0x78, 0x03, 0xDE, 0x00, 0xF7, - 0x80, 0x3D, 0xE0, 0x0F, 0x78, 0x03, 0xDE, 0x00, 0xF7, 0x80, 0x7D, 0xE0, - 0x1E, 0x78, 0x1F, 0xBF, 0xFF, 0xCF, 0xFF, 0xF3, 0xFF, 0xF0, 0x7F, 0xF0, - 0x00, 0x7F, 0xFF, 0xDF, 0xFF, 0xFB, 0xFF, 0xFF, 0x7F, 0xFF, 0xE3, 0xC0, - 0x3C, 0x78, 0x07, 0x8F, 0x1C, 0xF1, 0xE3, 0xCC, 0x3F, 0xF8, 0x07, 0xFF, - 0x00, 0xFF, 0xE0, 0x1F, 0xFC, 0x03, 0xC7, 0x80, 0x78, 0xF1, 0x8F, 0x0C, - 0x79, 0xE0, 0x0F, 0x3C, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF7, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF3, 0xC0, 0x1E, 0x78, 0x63, 0xCF, 0x1E, 0x79, 0xE3, 0xC6, 0x3F, 0xF8, - 0x07, 0xFF, 0x00, 0xFF, 0xE0, 0x1F, 0xFC, 0x03, 0xC7, 0x80, 0x78, 0xE0, - 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x1F, 0xFC, 0x03, 0xFF, 0x80, - 0x7F, 0xF0, 0x07, 0xFC, 0x00, 0x01, 0xFC, 0xE0, 0x7F, 0xFE, 0x1F, 0xFF, - 0xE3, 0xFF, 0xFE, 0x7F, 0x03, 0xE7, 0xC0, 0x1E, 0xF8, 0x00, 0xEF, 0x00, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x03, 0xFE, 0xF0, - 0x3F, 0xFF, 0x03, 0xFF, 0xF8, 0x3F, 0xF7, 0x80, 0x1E, 0x7E, 0x01, 0xE3, - 0xFF, 0xFE, 0x1F, 0xFF, 0xE0, 0xFF, 0xF8, 0x01, 0xFE, 0x00, 0x7F, 0x0F, - 0xE3, 0xFC, 0x7F, 0x9F, 0xE3, 0xFC, 0x7F, 0x1F, 0xC1, 0xE0, 0x3C, 0x0F, - 0x01, 0xE0, 0x78, 0x0F, 0x03, 0xC0, 0x78, 0x1E, 0x03, 0xC0, 0xFF, 0xFE, - 0x07, 0xFF, 0xF0, 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x0F, 0x01, 0xE0, 0x78, - 0x0F, 0x03, 0xC0, 0x78, 0x1E, 0x03, 0xC3, 0xFC, 0x7F, 0xBF, 0xE3, 0xFF, - 0xFF, 0x1F, 0xF7, 0xF0, 0x7F, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, - 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x83, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xF8, 0x01, 0xFF, 0xE0, 0x3F, 0xFC, - 0x07, 0xFF, 0x80, 0xFF, 0xF0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x38, 0x07, 0x8F, - 0x00, 0xF1, 0xE0, 0x1E, 0x3C, 0x03, 0xC7, 0x80, 0xF8, 0xF8, 0x3F, 0x1F, - 0xFF, 0xC3, 0xFF, 0xF0, 0x1F, 0xFC, 0x00, 0x7E, 0x00, 0xFF, 0x0F, 0xCF, - 0xF9, 0xFE, 0xFF, 0x9F, 0xEF, 0xF8, 0xFC, 0x3C, 0x1F, 0x03, 0xC3, 0xE0, - 0x3C, 0x7C, 0x03, 0xCF, 0x80, 0x3D, 0xF0, 0x03, 0xFE, 0x00, 0x3F, 0xF8, - 0x03, 0xFF, 0x80, 0x3E, 0x7C, 0x03, 0xC3, 0xE0, 0x3C, 0x1E, 0x03, 0xC0, - 0xF0, 0x3C, 0x0F, 0x0F, 0xF8, 0x7E, 0xFF, 0x87, 0xFF, 0xF8, 0x7F, 0x7F, - 0x03, 0xE0, 0xFF, 0xC0, 0x3F, 0xF0, 0x0F, 0xFC, 0x03, 0xFF, 0x00, 0x1E, - 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, - 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x01, 0x87, 0x80, 0xF1, 0xE0, 0x3C, - 0x78, 0x0F, 0x1E, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xC0, 0x3E, 0x00, 0xF8, 0xFC, 0x01, 0xF9, 0xFC, 0x07, 0xF3, 0xF8, - 0x0F, 0xE3, 0xF8, 0x3F, 0x87, 0xF0, 0x7F, 0x0F, 0xF1, 0xFE, 0x1F, 0xE3, - 0xFC, 0x3D, 0xE7, 0x78, 0x7B, 0xDE, 0xF0, 0xF7, 0xBD, 0xE1, 0xE7, 0xF3, - 0xC3, 0xCF, 0xE7, 0x87, 0x8F, 0x8F, 0x0F, 0x1F, 0x1E, 0x1E, 0x1E, 0x3C, - 0x3C, 0x00, 0x79, 0xFF, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x1F, 0xF7, - 0xF0, 0x1F, 0xC0, 0xFC, 0x1F, 0xEF, 0xE1, 0xFF, 0xFE, 0x1F, 0xFF, 0xF1, - 0xFF, 0x3F, 0x83, 0xC3, 0xF8, 0x3C, 0x3F, 0xC3, 0xC3, 0xFC, 0x3C, 0x3D, - 0xE3, 0xC3, 0xDE, 0x3C, 0x3C, 0xF3, 0xC3, 0xC7, 0xBC, 0x3C, 0x7B, 0xC3, - 0xC3, 0xFC, 0x3C, 0x3F, 0xC3, 0xC1, 0xFC, 0x3C, 0x1F, 0xCF, 0xF8, 0xFC, - 0xFF, 0x87, 0xCF, 0xF8, 0x7C, 0x7F, 0x03, 0xC0, 0x01, 0xF8, 0x00, 0x7F, - 0xE0, 0x0F, 0xFF, 0x81, 0xFF, 0xFC, 0x3F, 0x0F, 0xC7, 0xC0, 0x3E, 0x78, - 0x01, 0xEF, 0x80, 0x1F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, - 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x1F, 0x78, 0x01, 0xE7, 0xC0, 0x3E, - 0x3F, 0x0F, 0xC1, 0xFF, 0xF8, 0x1F, 0xFF, 0x00, 0x7F, 0xE0, 0x01, 0xF8, - 0x00, 0x7F, 0xF8, 0x3F, 0xFF, 0x8F, 0xFF, 0xF3, 0xFF, 0xFE, 0x3C, 0x0F, - 0xCF, 0x00, 0xF3, 0xC0, 0x3C, 0xF0, 0x0F, 0x3C, 0x03, 0xCF, 0x03, 0xF3, - 0xFF, 0xF8, 0xFF, 0xFC, 0x3F, 0xFE, 0x0F, 0xFE, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x3C, 0x00, 0x3F, 0xF8, 0x0F, 0xFE, 0x03, 0xFF, 0x80, 0x7F, 0xC0, - 0x00, 0x01, 0xF8, 0x00, 0x7F, 0xE0, 0x0F, 0xFF, 0x01, 0xFF, 0xF8, 0x3F, - 0x0F, 0xC7, 0xC0, 0x3E, 0x78, 0x01, 0xEF, 0x80, 0x1F, 0xF0, 0x00, 0xFF, - 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x1F, - 0x78, 0x01, 0xE7, 0xC0, 0x3E, 0x3F, 0x0F, 0xC1, 0xFF, 0xF8, 0x0F, 0xFF, - 0x00, 0x7F, 0xE0, 0x03, 0xF8, 0x00, 0x3F, 0x8E, 0x07, 0xFF, 0xF0, 0xFF, - 0xFF, 0x0F, 0xFF, 0xE0, 0x60, 0x78, 0x7F, 0xF8, 0x07, 0xFF, 0xF0, 0x3F, - 0xFF, 0xE0, 0xFF, 0xFF, 0x01, 0xE0, 0x7C, 0x0F, 0x01, 0xE0, 0x78, 0x0F, - 0x03, 0xC0, 0x78, 0x1E, 0x0F, 0xC0, 0xFF, 0xFC, 0x07, 0xFF, 0xC0, 0x3F, - 0xF8, 0x01, 0xFF, 0xE0, 0x0F, 0x0F, 0x80, 0x78, 0x3C, 0x03, 0xC0, 0xF0, - 0x1E, 0x07, 0xC3, 0xFE, 0x1F, 0xBF, 0xF0, 0x7F, 0xFF, 0x83, 0xF7, 0xF8, - 0x0F, 0x00, 0x07, 0xE7, 0x07, 0xFF, 0x8F, 0xFF, 0xC7, 0xFF, 0xE7, 0xC1, - 0xF3, 0xC0, 0x79, 0xE0, 0x3C, 0xF8, 0x00, 0x7F, 0x80, 0x1F, 0xFC, 0x07, - 0xFF, 0x81, 0xFF, 0xE0, 0x0F, 0xFB, 0x00, 0x7F, 0xC0, 0x1F, 0xE0, 0x0F, - 0xFC, 0x1F, 0xFF, 0xFF, 0xBF, 0xFF, 0x8D, 0xFF, 0x80, 0x3F, 0x00, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x1F, 0xE1, - 0xE3, 0xFC, 0x3C, 0x7F, 0x87, 0x8F, 0x60, 0xF0, 0xC0, 0x1E, 0x00, 0x03, - 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, - 0x80, 0x00, 0xF0, 0x01, 0xFF, 0xE0, 0x3F, 0xFC, 0x07, 0xFF, 0x80, 0x7F, - 0xE0, 0xFF, 0x0F, 0xF7, 0xFC, 0x7F, 0xFF, 0xE3, 0xFE, 0xFF, 0x1F, 0xF3, - 0xC0, 0x1E, 0x1E, 0x00, 0xF0, 0xF0, 0x07, 0x87, 0x80, 0x3C, 0x3C, 0x01, - 0xE1, 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x78, 0x03, 0xC3, 0xC0, 0x1E, 0x1E, - 0x00, 0xF0, 0xF0, 0x07, 0x87, 0xC0, 0x7C, 0x1F, 0x07, 0xC0, 0xFF, 0xFE, - 0x03, 0xFF, 0xE0, 0x0F, 0xFE, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x03, 0xFD, - 0xFF, 0x07, 0xFF, 0xFE, 0x0F, 0xFB, 0xF8, 0x1F, 0xE1, 0xC0, 0x07, 0x03, - 0xC0, 0x1E, 0x07, 0x80, 0x3C, 0x07, 0x80, 0xF0, 0x0F, 0x01, 0xE0, 0x0F, - 0x03, 0x80, 0x1E, 0x0F, 0x00, 0x3E, 0x1E, 0x00, 0x3C, 0x78, 0x00, 0x78, - 0xF0, 0x00, 0x7B, 0xC0, 0x00, 0xF7, 0x80, 0x01, 0xFF, 0x00, 0x01, 0xFC, - 0x00, 0x03, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0xFF, 0x0F, - 0xF7, 0xFC, 0x7F, 0xFF, 0xE3, 0xFF, 0xFE, 0x0F, 0xF7, 0x80, 0x0F, 0x3C, - 0x38, 0x78, 0xE3, 0xE3, 0x87, 0x1F, 0x1C, 0x38, 0xF8, 0xE1, 0xEF, 0xE7, - 0x0F, 0x7F, 0x78, 0x7B, 0xBB, 0xC3, 0xFD, 0xFE, 0x0F, 0xEF, 0xF0, 0x7E, - 0x3F, 0x03, 0xF1, 0xF8, 0x1F, 0x8F, 0xC0, 0xFC, 0x3E, 0x07, 0xC1, 0xF0, - 0x3E, 0x0F, 0x81, 0xF0, 0x7C, 0x00, 0x7E, 0x0F, 0xDF, 0xE3, 0xFF, 0xFC, - 0x7F, 0xBF, 0x07, 0xE1, 0xE0, 0xF8, 0x3E, 0x3E, 0x03, 0xEF, 0x80, 0x3D, - 0xE0, 0x03, 0xF8, 0x00, 0x3E, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, 0x3F, - 0x80, 0x0F, 0x78, 0x03, 0xC7, 0x80, 0xF8, 0x78, 0x3E, 0x0F, 0x8F, 0xE3, - 0xFF, 0xFC, 0x7F, 0xFF, 0x8F, 0xF7, 0xE0, 0xFC, 0x7E, 0x07, 0xEF, 0xF0, - 0xFF, 0xFF, 0x0F, 0xF7, 0xE0, 0x7E, 0x1E, 0x07, 0x81, 0xF0, 0xF8, 0x0F, - 0x0F, 0x00, 0x79, 0xE0, 0x07, 0xFE, 0x00, 0x3F, 0xC0, 0x01, 0xF8, 0x00, - 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, - 0x00, 0xF0, 0x00, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0xFF, 0xF0, 0x07, 0xFE, - 0x00, 0xFF, 0xFC, 0xFF, 0xFC, 0xFF, 0xFC, 0xFF, 0xFC, 0xF0, 0x3C, 0xF0, - 0x78, 0xF0, 0xF0, 0x70, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, 0x80, 0x07, - 0x00, 0x0F, 0x00, 0x1E, 0x0E, 0x1C, 0x0F, 0x38, 0x0F, 0x78, 0x0F, 0x7F, - 0xFF, 0x7F, 0xFF, 0x7F, 0xFF, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFE, 0xFF, 0xFF, 0xFE, 0xE0, 0x01, - 0xE0, 0x03, 0xC0, 0x03, 0xC0, 0x07, 0x80, 0x07, 0x00, 0x0F, 0x00, 0x0E, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x78, 0x00, 0xF0, - 0x00, 0xF0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, 0xC0, 0x07, 0x80, - 0x07, 0x80, 0x0F, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x3C, 0x00, - 0x38, 0x00, 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x7F, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x07, 0x00, 0x1F, 0x00, - 0x7F, 0x00, 0xFE, 0x03, 0xDE, 0x0F, 0x1E, 0x3E, 0x3E, 0xF8, 0x3F, 0xE0, - 0x3F, 0x80, 0x38, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xC3, 0x87, 0x0E, 0x1C, 0x30, 0x01, 0xFC, 0x01, 0xFF, 0xC0, - 0x3F, 0xFC, 0x07, 0xFF, 0xC0, 0x00, 0x78, 0x0F, 0xFF, 0x07, 0xFF, 0xE1, - 0xFF, 0xFC, 0x7F, 0xFF, 0x9F, 0x80, 0xF3, 0xC0, 0x1E, 0x78, 0x0F, 0xCF, - 0xFF, 0xFE, 0xFF, 0xFF, 0xCF, 0xFF, 0xF8, 0x7F, 0x3E, 0x7C, 0x00, 0x1F, - 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0F, - 0x3F, 0x01, 0xFF, 0xF8, 0x3F, 0xFF, 0x87, 0xFF, 0xF0, 0xFC, 0x1F, 0x1F, - 0x01, 0xF3, 0xC0, 0x1E, 0x78, 0x03, 0xCF, 0x00, 0x79, 0xE0, 0x0F, 0x3E, - 0x03, 0xE7, 0xE0, 0xFB, 0xFF, 0xFF, 0x7F, 0xFF, 0xCF, 0xFF, 0xF0, 0xF9, - 0xF8, 0x00, 0x03, 0xF3, 0x87, 0xFF, 0xCF, 0xFF, 0xEF, 0xFF, 0xF7, 0xE0, - 0xFF, 0xC0, 0x3F, 0xC0, 0x0F, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3E, - 0x00, 0x4F, 0x80, 0xF7, 0xFF, 0xF9, 0xFF, 0xF8, 0x7F, 0xF8, 0x0F, 0xF0, - 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x03, 0xF3, 0xC0, 0xFF, 0xBC, 0x1F, 0xFF, 0xC3, 0xFF, - 0xFC, 0x7E, 0x0F, 0xC7, 0x80, 0x7C, 0xF0, 0x03, 0xCF, 0x00, 0x3C, 0xF0, - 0x03, 0xCF, 0x00, 0x3C, 0xF8, 0x07, 0xC7, 0xE0, 0xFC, 0x7F, 0xFF, 0xF3, - 0xFF, 0xFF, 0x0F, 0xFF, 0xF0, 0x3F, 0x3E, 0x03, 0xF0, 0x03, 0xFF, 0x01, - 0xFF, 0xE0, 0xFF, 0xFC, 0x7E, 0x0F, 0x9E, 0x01, 0xEF, 0x00, 0x3F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0xE0, 0x00, 0x7F, 0xFF, - 0xCF, 0xFF, 0xF1, 0xFF, 0xF8, 0x0F, 0xF0, 0x03, 0xFC, 0x07, 0xFF, 0x0F, - 0xFF, 0x1F, 0xFF, 0x1E, 0x00, 0x1E, 0x00, 0xFF, 0xF8, 0xFF, 0xFC, 0xFF, - 0xFC, 0xFF, 0xF8, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0xFF, 0xF8, 0xFF, 0xF8, 0xFF, - 0xF8, 0xFF, 0xF8, 0x07, 0xE7, 0xC3, 0xFF, 0xFC, 0xFF, 0xFF, 0xBF, 0xFF, - 0xF7, 0xC1, 0xF9, 0xF0, 0x1F, 0x3C, 0x01, 0xE7, 0x80, 0x3C, 0xF0, 0x07, - 0x9E, 0x00, 0xF3, 0xE0, 0x3E, 0x3E, 0x0F, 0xC7, 0xFF, 0xF8, 0x7F, 0xFF, - 0x07, 0xFD, 0xE0, 0x3F, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3E, - 0x03, 0xFF, 0x80, 0x7F, 0xF0, 0x0F, 0xFC, 0x00, 0xFE, 0x00, 0x3E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x00, 0x00, 0x78, 0xF8, 0x03, 0xDF, 0xE0, 0x1F, 0xFF, 0x80, 0xFF, 0xFE, - 0x07, 0xE1, 0xF0, 0x3E, 0x07, 0x81, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x78, - 0x0F, 0x03, 0xC0, 0x78, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x1F, 0xC1, 0xFD, - 0xFE, 0x0F, 0xFF, 0xF0, 0x7F, 0xBF, 0x01, 0xF8, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xC0, 0x3F, 0xC0, - 0x3F, 0xC0, 0x3F, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFE, 0xFF, 0xFF, - 0xFF, 0xFF, 0x7F, 0xFE, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, 0x00, 0xF0, 0x0F, 0x00, 0xF0, - 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, - 0x0F, 0x00, 0xF0, 0x0F, 0x01, 0xFF, 0xFE, 0xFF, 0xEF, 0xFC, 0x7F, 0x00, - 0x7C, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0x3C, 0x00, 0x0F, - 0x00, 0x03, 0xC7, 0xF0, 0xF3, 0xFC, 0x3C, 0xFF, 0x0F, 0x3F, 0x83, 0xDF, - 0x00, 0xFF, 0x80, 0x3F, 0xC0, 0x0F, 0xE0, 0x03, 0xFC, 0x00, 0xF7, 0x80, - 0x3C, 0xF0, 0x0F, 0x1F, 0x0F, 0xC3, 0xFB, 0xF1, 0xFF, 0xFC, 0x7F, 0xDF, - 0x0F, 0xE0, 0x3F, 0xC0, 0x3F, 0xC0, 0x3F, 0xC0, 0x3F, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFE, 0x3D, 0xE3, - 0xC1, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x1F, 0xFF, 0xFE, 0x3E, 0x3C, 0x78, - 0xF0, 0xF1, 0xE3, 0xC3, 0xC7, 0x8F, 0x0F, 0x1E, 0x3C, 0x3C, 0x78, 0xF0, - 0xF1, 0xE3, 0xC3, 0xC7, 0x8F, 0x0F, 0x1E, 0xFE, 0x3E, 0x7F, 0xF8, 0xF9, - 0xFF, 0xE3, 0xE7, 0xDF, 0x0F, 0x1E, 0x1E, 0x7C, 0x03, 0xEF, 0xF0, 0x3F, - 0xFF, 0x83, 0xFF, 0xFC, 0x1F, 0x87, 0xC1, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, - 0xE0, 0x3C, 0x1E, 0x03, 0xC1, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, 0xE0, 0x3C, - 0x7F, 0x0F, 0xFF, 0xF0, 0xFF, 0xFF, 0x0F, 0xF7, 0xE0, 0x7E, 0x03, 0xF8, - 0x01, 0xFF, 0xC0, 0x7F, 0xFC, 0x1F, 0xFF, 0xC7, 0xE0, 0xFD, 0xF0, 0x07, - 0xFC, 0x00, 0x7F, 0x80, 0x0F, 0xF0, 0x01, 0xFE, 0x00, 0x3F, 0xE0, 0x0F, - 0xBF, 0x07, 0xE3, 0xFF, 0xF8, 0x3F, 0xFE, 0x03, 0xFF, 0x80, 0x1F, 0xC0, - 0x3E, 0x7E, 0x03, 0xF7, 0xFC, 0x1F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC1, 0xF8, - 0x3F, 0x0F, 0x80, 0x7C, 0x78, 0x01, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x78, - 0xF0, 0x03, 0xC7, 0xC0, 0x3E, 0x3F, 0x07, 0xE1, 0xFF, 0xFE, 0x0F, 0xFF, - 0xE0, 0x7B, 0xFE, 0x03, 0xCF, 0xC0, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, - 0x80, 0x00, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x01, 0xFE, 0x00, - 0x00, 0x03, 0xF3, 0xE0, 0x7F, 0xDF, 0x87, 0xFF, 0xFC, 0x7F, 0xFF, 0xE7, - 0xE0, 0xFC, 0x7C, 0x03, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x78, 0xF0, 0x03, - 0xC7, 0x80, 0x1E, 0x3E, 0x01, 0xF0, 0xFC, 0x1F, 0x83, 0xFF, 0xFC, 0x1F, - 0xFF, 0xE0, 0x3F, 0xEF, 0x00, 0x7E, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, - 0x00, 0x00, 0xF0, 0x00, 0x3F, 0xE0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, - 0x3F, 0xC0, 0x7E, 0x1E, 0x7F, 0x3F, 0xFF, 0xBF, 0xFF, 0xFF, 0xF1, 0xFE, - 0x00, 0xFC, 0x00, 0x7C, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, - 0x80, 0x03, 0xC0, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0xFF, 0xE1, 0xFF, 0xE0, - 0x07, 0xE6, 0x1F, 0xFE, 0x7F, 0xFE, 0x7F, 0xFE, 0x78, 0x1E, 0x78, 0x0E, - 0x7F, 0xE0, 0x3F, 0xFC, 0x03, 0xFE, 0x60, 0x1F, 0xE0, 0x0F, 0xF8, 0x1F, - 0xFF, 0xFF, 0xFF, 0xFE, 0x7F, 0xFC, 0x07, 0xE0, 0x0C, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x07, 0xFF, 0xF3, 0xFF, 0xF9, 0xFF, - 0xFC, 0xFF, 0xFC, 0x0F, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x07, 0x8F, 0xFF, 0xC3, 0xFF, - 0xC1, 0xFF, 0xC0, 0x3F, 0x80, 0xFC, 0x1F, 0xBF, 0x0F, 0xEF, 0xC3, 0xFB, - 0xF0, 0xFE, 0x3C, 0x07, 0x8F, 0x01, 0xE3, 0xC0, 0x78, 0xF0, 0x1E, 0x3C, - 0x07, 0x8F, 0x01, 0xE3, 0xC0, 0x78, 0xF8, 0x7E, 0x3F, 0xFF, 0xC7, 0xFF, - 0xF0, 0xFF, 0x7C, 0x0F, 0x9E, 0x7F, 0x07, 0xF7, 0xFC, 0x7F, 0xFF, 0xE3, - 0xFE, 0xFE, 0x0F, 0xE1, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x1E, 0x01, - 0xE0, 0xF0, 0x07, 0x8F, 0x00, 0x3E, 0x78, 0x00, 0xF7, 0x80, 0x07, 0xFC, - 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x7E, - 0x03, 0xF7, 0xF8, 0x3F, 0xFF, 0xC1, 0xFE, 0xFC, 0x07, 0xF3, 0xC7, 0x0F, - 0x1E, 0x7C, 0xF0, 0x73, 0xE7, 0x83, 0x9F, 0x7C, 0x1F, 0xFF, 0xC0, 0xFF, - 0xFE, 0x03, 0xF7, 0xF0, 0x1F, 0xBF, 0x80, 0xFC, 0xF8, 0x07, 0xC7, 0xC0, - 0x1E, 0x3E, 0x00, 0xE0, 0xE0, 0x7E, 0x0F, 0xDF, 0xE3, 0xFF, 0xFC, 0x7F, - 0xBF, 0x07, 0xE1, 0xF1, 0xF0, 0x1F, 0xFC, 0x01, 0xFF, 0x00, 0x1F, 0xC0, - 0x07, 0xF8, 0x01, 0xFF, 0xC0, 0x7E, 0xFC, 0x1F, 0x8F, 0xC7, 0xE0, 0xFD, - 0xFE, 0x3F, 0xFF, 0xC7, 0xFF, 0xF0, 0x7F, 0x7E, 0x0F, 0xDF, 0xE3, 0xFF, - 0xFC, 0x7F, 0xBF, 0x07, 0xE3, 0xC0, 0x78, 0x3C, 0x0E, 0x07, 0x83, 0xC0, - 0x78, 0x70, 0x0F, 0x1E, 0x00, 0xE3, 0x80, 0x1E, 0xF0, 0x01, 0xDC, 0x00, - 0x3F, 0x80, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0x00, 0x01, 0xE0, 0x00, - 0x38, 0x00, 0x0F, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x01, 0xFF, 0xE0, 0x1F, - 0xF8, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF9, 0xC7, - 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x78, 0x03, 0xC0, 0x1E, 0x07, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x81, 0xF0, 0xFC, 0x7E, 0x1F, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0xF8, 0xFC, 0x3E, 0x0F, - 0x83, 0xF0, 0x3E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xF0, 0x7E, - 0x0F, 0xC3, 0xF0, 0x38, 0x6F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x70, 0x3E, 0x0F, 0xC1, 0xF8, 0x3E, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x7C, 0x0F, 0xC1, 0xF0, - 0x7C, 0x3F, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x83, 0xE1, 0xF8, - 0xFC, 0x3F, 0x07, 0x00, 0x1E, 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0xDF, 0xFC, - 0xFF, 0x3F, 0xFB, 0x0F, 0xF8, 0x03, 0xF8, 0x00, 0x78}; - -const GFXglyph FreeMonoBold18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 5, 22, 21, 8, -21}, // 0x21 '!' - {14, 11, 10, 21, 5, -20}, // 0x22 '"' - {28, 16, 25, 21, 3, -22}, // 0x23 '#' - {78, 14, 28, 21, 4, -23}, // 0x24 '$' - {127, 15, 21, 21, 3, -20}, // 0x25 '%' - {167, 15, 20, 21, 3, -19}, // 0x26 '&' - {205, 4, 10, 21, 8, -20}, // 0x27 ''' - {210, 8, 27, 21, 9, -21}, // 0x28 '(' - {237, 8, 27, 21, 4, -21}, // 0x29 ')' - {264, 16, 15, 21, 3, -21}, // 0x2A '*' - {294, 16, 19, 21, 3, -18}, // 0x2B '+' - {332, 7, 10, 21, 5, -3}, // 0x2C ',' - {341, 19, 4, 21, 1, -11}, // 0x2D '-' - {351, 5, 5, 21, 8, -4}, // 0x2E '.' - {355, 15, 28, 21, 3, -23}, // 0x2F '/' - {408, 16, 23, 21, 3, -22}, // 0x30 '0' - {454, 15, 22, 21, 3, -21}, // 0x31 '1' - {496, 15, 23, 21, 3, -22}, // 0x32 '2' - {540, 16, 23, 21, 3, -22}, // 0x33 '3' - {586, 15, 21, 21, 3, -20}, // 0x34 '4' - {626, 17, 22, 21, 2, -21}, // 0x35 '5' - {673, 15, 23, 21, 4, -22}, // 0x36 '6' - {717, 15, 22, 21, 3, -21}, // 0x37 '7' - {759, 15, 23, 21, 3, -22}, // 0x38 '8' - {803, 15, 23, 21, 4, -22}, // 0x39 '9' - {847, 5, 16, 21, 8, -15}, // 0x3A ':' - {857, 7, 22, 21, 5, -15}, // 0x3B ';' - {877, 18, 16, 21, 1, -17}, // 0x3C '<' - {913, 19, 10, 21, 1, -14}, // 0x3D '=' - {937, 18, 16, 21, 2, -17}, // 0x3E '>' - {973, 15, 21, 21, 4, -20}, // 0x3F '?' - {1013, 15, 27, 21, 3, -21}, // 0x40 '@' - {1064, 22, 21, 21, -1, -20}, // 0x41 'A' - {1122, 20, 21, 21, 1, -20}, // 0x42 'B' - {1175, 19, 21, 21, 1, -20}, // 0x43 'C' - {1225, 18, 21, 21, 2, -20}, // 0x44 'D' - {1273, 19, 21, 21, 1, -20}, // 0x45 'E' - {1323, 19, 21, 21, 1, -20}, // 0x46 'F' - {1373, 20, 21, 21, 1, -20}, // 0x47 'G' - {1426, 21, 21, 21, 0, -20}, // 0x48 'H' - {1482, 14, 21, 21, 4, -20}, // 0x49 'I' - {1519, 19, 21, 21, 2, -20}, // 0x4A 'J' - {1569, 20, 21, 21, 1, -20}, // 0x4B 'K' - {1622, 18, 21, 21, 2, -20}, // 0x4C 'L' - {1670, 23, 21, 21, -1, -20}, // 0x4D 'M' - {1731, 20, 21, 21, 1, -20}, // 0x4E 'N' - {1784, 20, 21, 21, 1, -20}, // 0x4F 'O' - {1837, 18, 21, 21, 1, -20}, // 0x50 'P' - {1885, 20, 26, 21, 1, -20}, // 0x51 'Q' - {1950, 21, 21, 21, 0, -20}, // 0x52 'R' - {2006, 17, 21, 21, 2, -20}, // 0x53 'S' - {2051, 19, 21, 21, 1, -20}, // 0x54 'T' - {2101, 21, 21, 21, 0, -20}, // 0x55 'U' - {2157, 23, 21, 21, -1, -20}, // 0x56 'V' - {2218, 21, 21, 21, 0, -20}, // 0x57 'W' - {2274, 19, 21, 21, 1, -20}, // 0x58 'X' - {2324, 20, 21, 21, 1, -20}, // 0x59 'Y' - {2377, 16, 21, 21, 3, -20}, // 0x5A 'Z' - {2419, 8, 27, 21, 9, -21}, // 0x5B '[' - {2446, 15, 28, 21, 3, -23}, // 0x5C '\' - {2499, 8, 27, 21, 4, -21}, // 0x5D ']' - {2526, 15, 11, 21, 3, -21}, // 0x5E '^' - {2547, 21, 4, 21, 0, 4}, // 0x5F '_' - {2558, 6, 6, 21, 6, -22}, // 0x60 '`' - {2563, 19, 16, 21, 1, -15}, // 0x61 'a' - {2601, 19, 22, 21, 1, -21}, // 0x62 'b' - {2654, 17, 16, 21, 2, -15}, // 0x63 'c' - {2688, 20, 22, 21, 1, -21}, // 0x64 'd' - {2743, 18, 16, 21, 1, -15}, // 0x65 'e' - {2779, 16, 22, 21, 4, -21}, // 0x66 'f' - {2823, 19, 23, 21, 1, -15}, // 0x67 'g' - {2878, 21, 22, 21, 0, -21}, // 0x68 'h' - {2936, 16, 22, 21, 3, -21}, // 0x69 'i' - {2980, 12, 29, 21, 5, -21}, // 0x6A 'j' - {3024, 18, 22, 21, 2, -21}, // 0x6B 'k' - {3074, 16, 22, 21, 3, -21}, // 0x6C 'l' - {3118, 22, 16, 21, -1, -15}, // 0x6D 'm' - {3162, 20, 16, 21, 0, -15}, // 0x6E 'n' - {3202, 19, 16, 21, 1, -15}, // 0x6F 'o' - {3240, 21, 23, 21, 0, -15}, // 0x70 'p' - {3301, 21, 23, 22, 1, -15}, // 0x71 'q' - {3362, 17, 16, 21, 3, -15}, // 0x72 'r' - {3396, 16, 16, 21, 3, -15}, // 0x73 's' - {3428, 17, 21, 21, 1, -20}, // 0x74 't' - {3473, 18, 16, 21, 1, -15}, // 0x75 'u' - {3509, 21, 16, 21, 0, -15}, // 0x76 'v' - {3551, 21, 16, 21, 0, -15}, // 0x77 'w' - {3593, 19, 16, 21, 1, -15}, // 0x78 'x' - {3631, 19, 23, 21, 1, -15}, // 0x79 'y' - {3686, 14, 16, 21, 3, -15}, // 0x7A 'z' - {3714, 10, 27, 21, 6, -21}, // 0x7B '{' - {3748, 4, 27, 21, 9, -21}, // 0x7C '|' - {3762, 10, 27, 21, 6, -21}, // 0x7D '}' - {3796, 17, 8, 21, 2, -13}}; // 0x7E '~' - -const GFXfont FreeMonoBold18pt7b PROGMEM = { - (uint8_t *)FreeMonoBold18pt7bBitmaps, (GFXglyph *)FreeMonoBold18pt7bGlyphs, - 0x20, 0x7E, 35}; - -// Approx. 4485 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h deleted file mode 100644 index eb79d6e..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold24pt7b.h +++ /dev/null @@ -1,674 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold24pt7bBitmaps[] PROGMEM = { - 0x38, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0xF3, 0xE7, 0xCF, - 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE3, 0x82, 0x00, 0x00, 0x00, 0x71, 0xF7, - 0xFF, 0xEF, 0x9E, 0x00, 0xFC, 0x7E, 0xF8, 0x7D, 0xF0, 0xFB, 0xE1, 0xF7, - 0xC3, 0xEF, 0x87, 0xDF, 0x0F, 0xBE, 0x1F, 0x38, 0x1C, 0x70, 0x38, 0xE0, - 0x71, 0xC0, 0xE3, 0x81, 0xC7, 0x03, 0x80, 0x01, 0xC1, 0xC0, 0x0F, 0x8F, - 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xE0, 0x0F, 0x8F, 0x80, - 0x7E, 0x3E, 0x01, 0xF0, 0xF8, 0x07, 0xC7, 0xC0, 0x1F, 0x1F, 0x03, 0xFF, - 0xFF, 0x9F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFD, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, - 0x81, 0xF1, 0xF0, 0x07, 0xC7, 0xC0, 0x1F, 0x1F, 0x00, 0x7C, 0x7C, 0x1F, - 0xFF, 0xFC, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0x9F, 0xFF, - 0xFC, 0x0F, 0x8F, 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xE0, - 0x0F, 0x8F, 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xE0, 0x0F, - 0x8F, 0x80, 0x3C, 0x3C, 0x00, 0x00, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x1F, 0xFF, 0x07, 0xFF, 0xF1, 0xFF, 0xFE, - 0x7F, 0xFF, 0xDF, 0xC1, 0xFB, 0xF0, 0x1F, 0x7C, 0x01, 0xEF, 0x80, 0x39, - 0xF8, 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x03, 0xFF, 0xF0, - 0x0F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xC0, 0x07, 0xF8, 0x00, 0xFF, - 0x80, 0x1F, 0xF8, 0x07, 0xFF, 0x81, 0xFB, 0xFF, 0xFF, 0x7F, 0xFF, 0xCF, - 0xFF, 0xF1, 0xDF, 0xFC, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, - 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x01, 0xC0, 0x00, - 0x0F, 0x80, 0x00, 0xFF, 0x00, 0x1F, 0xFC, 0x00, 0xF0, 0xE0, 0x0F, 0x07, - 0x80, 0x70, 0x1C, 0x03, 0x80, 0xE0, 0x1C, 0x07, 0x00, 0xF0, 0x78, 0x03, - 0xC3, 0x80, 0x1F, 0xFC, 0x00, 0x7F, 0xC1, 0xF0, 0xF8, 0x7F, 0x00, 0x3F, - 0xF0, 0x0F, 0xFC, 0x03, 0xFF, 0x00, 0xFF, 0xC0, 0x07, 0xE0, 0xF8, 0x38, - 0x1F, 0xE0, 0x01, 0xFF, 0x80, 0x0F, 0x1E, 0x00, 0xF0, 0x78, 0x07, 0x01, - 0xC0, 0x38, 0x0E, 0x01, 0xC0, 0x70, 0x0F, 0x07, 0x80, 0x38, 0x78, 0x01, - 0xFF, 0xC0, 0x07, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0xFC, - 0x01, 0xFF, 0xE0, 0x1F, 0xFF, 0x00, 0xFF, 0xF8, 0x0F, 0xC7, 0x00, 0x7C, - 0x10, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0xFE, 0x00, 0x0F, 0xF8, 0x00, 0xFF, 0xC7, 0xCF, 0xFF, - 0x3F, 0x7E, 0xFF, 0xFF, 0xE7, 0xFF, 0xBE, 0x1F, 0xF9, 0xF0, 0x7F, 0x8F, - 0x83, 0xFC, 0x7C, 0x0F, 0xE3, 0xF0, 0x7F, 0xCF, 0xFF, 0xFF, 0x7F, 0xFF, - 0xF9, 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x0F, 0xE0, 0x00, 0xFD, 0xF7, 0xDF, - 0x7D, 0xF7, 0xDF, 0x38, 0xE3, 0x8E, 0x38, 0xE0, 0x01, 0x80, 0xF0, 0x7C, - 0x3F, 0x0F, 0xC7, 0xE1, 0xF8, 0xFC, 0x3E, 0x0F, 0x87, 0xC1, 0xF0, 0x7C, - 0x1F, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, - 0x81, 0xF0, 0x7C, 0x1F, 0x07, 0xC0, 0xF8, 0x3E, 0x0F, 0xC1, 0xF0, 0x7E, - 0x0F, 0x83, 0xF0, 0x7C, 0x1F, 0x03, 0xC0, 0x60, 0x3C, 0x0F, 0x83, 0xF0, - 0xFC, 0x1F, 0x83, 0xE0, 0xFC, 0x1F, 0x07, 0xC1, 0xF8, 0x3E, 0x0F, 0x83, - 0xE0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, - 0x1E, 0x0F, 0x83, 0xE0, 0xF8, 0x7C, 0x1F, 0x0F, 0xC3, 0xE1, 0xF8, 0x7C, - 0x3F, 0x0F, 0x83, 0xE0, 0xF0, 0x00, 0x00, 0x70, 0x00, 0x07, 0xC0, 0x00, - 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x10, 0x7C, 0x11, 0xF3, 0xE7, - 0xDF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0x87, 0xFF, 0xF0, 0x07, - 0xFC, 0x00, 0x3F, 0xE0, 0x03, 0xFF, 0x80, 0x3F, 0x7E, 0x01, 0xFB, 0xF0, - 0x1F, 0x8F, 0xC0, 0xF8, 0x3E, 0x03, 0x80, 0xE0, 0x00, 0x38, 0x00, 0x00, - 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, - 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, - 0x01, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xDF, 0xFF, 0xFF, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, - 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, - 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x70, 0x00, 0x1F, - 0x8F, 0x87, 0xC7, 0xC3, 0xE1, 0xE1, 0xF0, 0xF0, 0x78, 0x38, 0x3C, 0x1C, - 0x0E, 0x06, 0x00, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, 0x7D, 0xFF, 0xFF, 0xFF, 0xEF, 0x80, - 0x00, 0x00, 0x60, 0x00, 0x0F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, - 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0xC0, 0x00, 0xF8, 0x00, - 0x1F, 0x80, 0x01, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, - 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, - 0x00, 0xFC, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x83, 0xFF, 0xFE, - 0x1F, 0x83, 0xF1, 0xF8, 0x0F, 0xCF, 0x80, 0x3E, 0x7C, 0x01, 0xF7, 0xC0, - 0x07, 0xFE, 0x00, 0x3F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, - 0xE0, 0x03, 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0xFF, 0xC0, 0x07, 0xFE, 0x00, - 0x3F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7D, 0xF0, 0x07, 0xCF, - 0x80, 0x3E, 0x7E, 0x03, 0xF1, 0xF8, 0x3F, 0x0F, 0xFF, 0xF8, 0x3F, 0xFF, - 0x80, 0xFF, 0xF8, 0x03, 0xFF, 0x80, 0x07, 0xF0, 0x00, 0x01, 0xF8, 0x00, - 0x3F, 0x80, 0x0F, 0xF8, 0x01, 0xFF, 0x80, 0x7F, 0xF8, 0x0F, 0xEF, 0x80, - 0xFC, 0xF8, 0x07, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, - 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, - 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x3F, 0xFF, 0xE7, - 0xFF, 0xFF, 0x7F, 0xFF, 0xF7, 0xFF, 0xFF, 0x3F, 0xFF, 0xE0, 0x01, 0xFC, - 0x00, 0x3F, 0xF8, 0x07, 0xFF, 0xF0, 0x7F, 0xFF, 0xC7, 0xFF, 0xFF, 0x3F, - 0x03, 0xFB, 0xF0, 0x07, 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0xFB, 0x80, 0x07, - 0xC0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xF8, 0x00, - 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x00, - 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xE0, - 0x0E, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x03, 0xF8, 0x00, 0xFF, 0xF8, 0x0F, 0xFF, - 0xE0, 0xFF, 0xFF, 0x8F, 0xFF, 0xFE, 0x7E, 0x03, 0xF1, 0xC0, 0x0F, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x0F, - 0xC0, 0x0F, 0xFC, 0x00, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x3F, 0xF0, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F, - 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x01, 0xFF, 0xC0, - 0x3F, 0xBF, 0xFF, 0xFD, 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x1F, 0xFF, 0xC0, - 0x1F, 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x7F, 0x80, 0x07, - 0xF8, 0x00, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xEF, 0x80, 0x3E, 0xF8, 0x03, - 0xCF, 0x80, 0x7C, 0xF8, 0x0F, 0x8F, 0x80, 0xF0, 0xF8, 0x1F, 0x0F, 0x81, - 0xE0, 0xF8, 0x3E, 0x0F, 0x87, 0xC0, 0xF8, 0x78, 0x0F, 0x8F, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x0F, - 0x80, 0x07, 0xFE, 0x00, 0xFF, 0xF0, 0x0F, 0xFF, 0x00, 0xFF, 0xF0, 0x07, - 0xFE, 0x3F, 0xFF, 0xC1, 0xFF, 0xFF, 0x0F, 0xFF, 0xF8, 0x7F, 0xFF, 0xC3, - 0xFF, 0xFC, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, - 0x01, 0xF0, 0x00, 0x0F, 0xBF, 0x00, 0x7F, 0xFF, 0x03, 0xFF, 0xFC, 0x1F, - 0xFF, 0xF0, 0xFF, 0xFF, 0x83, 0xC0, 0xFE, 0x00, 0x01, 0xF0, 0x00, 0x0F, - 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, - 0x03, 0xE0, 0x00, 0x3F, 0xF0, 0x03, 0xF7, 0xE0, 0x3F, 0xBF, 0xFF, 0xF9, - 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x1F, 0xFF, 0x80, 0x1F, 0xF0, 0x00, 0x00, - 0x1F, 0xC0, 0x0F, 0xFF, 0x01, 0xFF, 0xF0, 0x7F, 0xFF, 0x0F, 0xFF, 0xE1, - 0xFF, 0x00, 0x1F, 0xC0, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, - 0x7C, 0x00, 0x0F, 0x8F, 0xC0, 0xF9, 0xFF, 0x0F, 0xFF, 0xF8, 0xFF, 0xFF, - 0xCF, 0xFF, 0xFC, 0xFF, 0x0F, 0xEF, 0xE0, 0x3E, 0xFC, 0x03, 0xFF, 0x80, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xF7, 0xC0, 0x3F, 0x7E, - 0x03, 0xF3, 0xF0, 0x7E, 0x3F, 0xFF, 0xE1, 0xFF, 0xFC, 0x0F, 0xFF, 0x80, - 0x7F, 0xF0, 0x01, 0xFC, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x1F, 0xF0, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, - 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, - 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x06, 0x00, 0x01, 0xF8, 0x00, 0xFF, - 0xF0, 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x7F, 0xFF, 0xE7, 0xE0, 0x7E, 0xFC, - 0x03, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xF7, - 0xC0, 0x3E, 0x7E, 0x07, 0xE3, 0xFF, 0xFC, 0x0F, 0xFF, 0x00, 0xFF, 0xF0, - 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x7F, 0x0F, 0xE7, 0xC0, 0x3E, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xFC, 0x03, 0xF7, 0xE0, - 0x7E, 0x7F, 0xFF, 0xE3, 0xFF, 0xFC, 0x1F, 0xFF, 0x80, 0xFF, 0xF0, 0x03, - 0xFC, 0x00, 0x03, 0xF8, 0x00, 0xFF, 0xE0, 0x1F, 0xFF, 0x83, 0xFF, 0xF8, - 0x7F, 0xFF, 0xC7, 0xE0, 0xFE, 0xFC, 0x03, 0xEF, 0x80, 0x3E, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x3F, 0xFC, 0x07, 0xF7, 0xE0, - 0xFF, 0x7F, 0xFF, 0xF3, 0xFF, 0xFF, 0x1F, 0xFF, 0xF0, 0xFF, 0x9F, 0x03, - 0xF1, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, - 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x0F, 0xF0, 0x7F, 0xFE, 0x0F, 0xFF, 0xC0, - 0xFF, 0xF8, 0x0F, 0xFF, 0x00, 0x3F, 0x80, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, - 0xEF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7D, 0xFF, - 0xFF, 0xFF, 0xEF, 0x80, 0x0F, 0x87, 0xF1, 0xFC, 0x7F, 0x1F, 0xC3, 0xE0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, - 0x1F, 0x87, 0xE1, 0xF0, 0xFC, 0x3E, 0x0F, 0x03, 0xC1, 0xE0, 0x78, 0x1C, - 0x07, 0x01, 0x80, 0x00, 0x00, 0x04, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x7F, - 0x00, 0x01, 0xFE, 0x00, 0x07, 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xC0, - 0x01, 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, 0x7F, 0xE0, 0x00, - 0xFF, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xFE, 0x00, 0x01, 0xFF, 0x80, - 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xFC, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1E, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x07, - 0xFC, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x7F, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, 0x3F, 0xF0, 0x01, - 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x7F, 0xC0, 0x03, 0xFE, 0x00, 0x1F, 0xF0, - 0x00, 0xFF, 0x80, 0x03, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x03, 0xF8, 0x01, 0xFF, 0xF0, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFC, 0xFF, 0xFF, 0xEF, 0xC0, 0x7E, 0xF8, 0x03, 0xFF, 0x80, 0x1F, - 0x70, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x3F, - 0xE0, 0x0F, 0xFC, 0x01, 0xFF, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x0F, - 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0x00, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, - 0x3F, 0x80, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0xFF, 0x80, 0x3F, 0xF8, - 0x0F, 0xFF, 0x83, 0xE0, 0xF8, 0x78, 0x07, 0x1E, 0x00, 0xF3, 0x80, 0x0E, - 0x70, 0x01, 0xDE, 0x00, 0x3B, 0x80, 0x3F, 0x70, 0x1F, 0xEE, 0x07, 0xFD, - 0xC1, 0xFF, 0xB8, 0x7E, 0x77, 0x0F, 0x0E, 0xE3, 0xC1, 0xDC, 0x70, 0x3B, - 0x8E, 0x07, 0x71, 0xC0, 0xEE, 0x3C, 0x1D, 0xC3, 0xC3, 0xB8, 0x7F, 0xF7, - 0x07, 0xFF, 0xE0, 0x7F, 0xFC, 0x03, 0xFB, 0xC0, 0x00, 0x38, 0x00, 0x07, - 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x61, 0xF0, 0x3E, 0x1F, 0xFF, 0xC3, - 0xFF, 0xF0, 0x1F, 0xFC, 0x01, 0xFC, 0x00, 0x07, 0xFF, 0x80, 0x00, 0x7F, - 0xFE, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x7F, 0xFE, - 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x0F, 0xBE, 0x00, - 0x00, 0x7D, 0xF8, 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x3E, 0x3E, 0x00, 0x03, - 0xE0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0xF0, 0x3F, 0x00, 0x0F, 0x80, - 0xF8, 0x00, 0x7F, 0xFF, 0xC0, 0x07, 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0xF8, - 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0x00, 0xF8, 0x00, 0xF8, 0x0F, - 0x80, 0x03, 0xE1, 0xFF, 0x80, 0xFF, 0xDF, 0xFE, 0x0F, 0xFF, 0xFF, 0xF0, - 0x7F, 0xFF, 0xFF, 0x83, 0xFF, 0xDF, 0xF8, 0x0F, 0xFC, 0x7F, 0xFF, 0xC0, - 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, - 0xFE, 0x07, 0xC0, 0x1F, 0xC1, 0xF0, 0x01, 0xF0, 0x7C, 0x00, 0x7C, 0x1F, - 0x00, 0x1F, 0x07, 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xE0, 0x7F, 0xFF, 0xF0, - 0x1F, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, - 0xFC, 0x1F, 0x00, 0x3F, 0x87, 0xC0, 0x03, 0xF1, 0xF0, 0x00, 0x7C, 0x7C, - 0x00, 0x1F, 0x1F, 0x00, 0x07, 0xC7, 0xC0, 0x03, 0xF7, 0xFF, 0xFF, 0xFB, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xE7, 0x01, 0xFF, 0xFF, 0xC1, 0xFF, - 0xFF, 0xE1, 0xFF, 0xFF, 0xF1, 0xFE, 0x07, 0xF8, 0xFC, 0x01, 0xFC, 0xFC, - 0x00, 0x7E, 0x7C, 0x00, 0x1F, 0x7E, 0x00, 0x0F, 0xBE, 0x00, 0x03, 0x9F, - 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x1F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x39, 0xFC, 0x00, - 0x7C, 0x7F, 0x80, 0xFF, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0x81, 0xFF, - 0xFF, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC1, - 0xF0, 0x0F, 0xF0, 0xF8, 0x01, 0xF8, 0x7C, 0x00, 0x7E, 0x3E, 0x00, 0x1F, - 0x1F, 0x00, 0x0F, 0xCF, 0x80, 0x03, 0xE7, 0xC0, 0x01, 0xF3, 0xE0, 0x00, - 0xF9, 0xF0, 0x00, 0x7C, 0xF8, 0x00, 0x3E, 0x7C, 0x00, 0x1F, 0x3E, 0x00, - 0x0F, 0x9F, 0x00, 0x07, 0xCF, 0x80, 0x07, 0xE7, 0xC0, 0x03, 0xE3, 0xE0, - 0x03, 0xF1, 0xF0, 0x07, 0xF1, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xFF, - 0x7F, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, - 0xF0, 0xF8, 0x00, 0xF8, 0x7C, 0x00, 0x7C, 0x3E, 0x0E, 0x3E, 0x1F, 0x0F, - 0x9F, 0x0F, 0x87, 0xC7, 0x07, 0xC3, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, - 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x3F, 0xFF, 0x00, 0x1F, - 0x0F, 0x80, 0x0F, 0x87, 0xC3, 0x87, 0xC1, 0xC3, 0xE3, 0xE0, 0x01, 0xF1, - 0xF0, 0x00, 0xF8, 0xF8, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, - 0xFF, 0xF8, 0xF8, 0x00, 0x7C, 0x7C, 0x00, 0x3E, 0x3E, 0x00, 0x1F, 0x1F, - 0x07, 0x0F, 0x8F, 0x87, 0xC3, 0x87, 0xC3, 0xE0, 0x03, 0xFF, 0xF0, 0x01, - 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x3F, 0xFF, 0x00, - 0x1F, 0x0F, 0x80, 0x0F, 0x87, 0xC0, 0x07, 0xC3, 0xE0, 0x03, 0xE0, 0xE0, - 0x01, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xFF, 0xF0, 0x01, 0xFF, 0xFC, - 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x00, - 0x7F, 0x8E, 0x00, 0xFF, 0xF7, 0x81, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE1, - 0xFF, 0xFF, 0xF1, 0xFE, 0x03, 0xF8, 0xFC, 0x00, 0xFC, 0xFC, 0x00, 0x3E, - 0x7C, 0x00, 0x1F, 0x7E, 0x00, 0x07, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x0F, - 0xFE, 0xF8, 0x0F, 0xFF, 0xFC, 0x07, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0x00, - 0xFF, 0xFF, 0xC0, 0x01, 0xF3, 0xF0, 0x00, 0xF9, 0xFC, 0x00, 0x7C, 0x7F, - 0x80, 0xFE, 0x3F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x80, - 0x7F, 0xFF, 0x00, 0x07, 0xFC, 0x00, 0x3F, 0xE1, 0xFF, 0x1F, 0xFC, 0xFF, - 0xE7, 0xFF, 0x3F, 0xF9, 0xFF, 0xCF, 0xFE, 0x3F, 0xE1, 0xFF, 0x07, 0xC0, - 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, 0x00, 0x3E, 0x07, - 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7F, 0xFF, 0xF8, 0x1F, 0xFF, 0xFE, - 0x07, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xF8, 0x1F, 0x00, - 0x3E, 0x07, 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, - 0x00, 0x3E, 0x07, 0xC0, 0x0F, 0x87, 0xFE, 0x1F, 0xFB, 0xFF, 0xCF, 0xFF, - 0xFF, 0xF3, 0xFF, 0xFF, 0xFC, 0xFF, 0xF7, 0xFE, 0x1F, 0xF8, 0x7F, 0xFF, - 0xDF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFC, 0x03, 0xE0, - 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x1F, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, - 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, - 0xE0, 0x3F, 0xFF, 0xF0, 0x0F, 0xFF, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x07, - 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x07, 0xC0, 0xE0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, 0x3E, - 0x00, 0x7C, 0x1F, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0x07, 0xC0, 0x1F, 0x83, - 0xF8, 0x3F, 0x81, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, - 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0xE0, 0xFF, 0x9F, 0xFE, - 0x3F, 0xFB, 0xFF, 0xC7, 0xFF, 0x7F, 0xF8, 0xFF, 0xE7, 0xFE, 0x0F, 0xF8, - 0x3E, 0x01, 0xF8, 0x07, 0xC0, 0xFE, 0x00, 0xF8, 0x3F, 0x80, 0x1F, 0x0F, - 0xE0, 0x03, 0xE3, 0xF8, 0x00, 0x7D, 0xFC, 0x00, 0x0F, 0xFF, 0x00, 0x01, - 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xF0, 0x00, 0xFE, 0x7F, - 0x00, 0x1F, 0x87, 0xF0, 0x03, 0xE0, 0x7E, 0x00, 0x7C, 0x07, 0xE0, 0x0F, - 0x80, 0x7E, 0x01, 0xF0, 0x0F, 0xC0, 0x3E, 0x00, 0xF8, 0x1F, 0xF8, 0x1F, - 0xF7, 0xFF, 0x81, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFE, 0x07, 0xFD, 0xFF, - 0x80, 0x7F, 0x00, 0x7F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x3F, 0xFF, 0x80, - 0x1F, 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x0F, 0x80, 0x0E, 0x07, 0xC0, 0x0F, 0x83, 0xE0, 0x07, 0xC1, - 0xF0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, 0x3E, 0x00, 0x7D, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xDF, 0xFF, 0xFF, 0xE0, 0x3F, 0x80, 0x03, 0xF8, 0xFF, 0x80, 0x0F, 0xF9, - 0xFF, 0x00, 0x1F, 0xF3, 0xFF, 0x00, 0x7F, 0xE3, 0xFE, 0x00, 0xFF, 0x83, - 0xFE, 0x03, 0xFE, 0x07, 0xFC, 0x07, 0xFC, 0x0F, 0xFC, 0x1F, 0xF8, 0x1F, - 0xF8, 0x3F, 0xF0, 0x3F, 0xF0, 0x7F, 0xE0, 0x7D, 0xF1, 0xF7, 0xC0, 0xFB, - 0xE3, 0xEF, 0x81, 0xF7, 0xEF, 0xDF, 0x03, 0xE7, 0xDF, 0x3E, 0x07, 0xCF, - 0xFE, 0x7C, 0x0F, 0x8F, 0xF8, 0xF8, 0x1F, 0x1F, 0xF1, 0xF0, 0x3E, 0x1F, - 0xE3, 0xE0, 0x7C, 0x3F, 0x87, 0xC0, 0xF8, 0x3F, 0x0F, 0x81, 0xF0, 0x00, - 0x1F, 0x03, 0xE0, 0x00, 0x3E, 0x1F, 0xF8, 0x03, 0xFF, 0x7F, 0xF8, 0x0F, - 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFD, 0xFF, 0x80, 0x3F, - 0xF0, 0x7F, 0x00, 0x7F, 0xEF, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, - 0xFC, 0x0F, 0xFF, 0x7F, 0xE0, 0x7F, 0xE1, 0xFF, 0x00, 0xF8, 0x1F, 0xF0, - 0x0F, 0x81, 0xFF, 0x80, 0xF8, 0x1F, 0xFC, 0x0F, 0x81, 0xFF, 0xC0, 0xF8, - 0x1F, 0x7E, 0x0F, 0x81, 0xF3, 0xF0, 0xF8, 0x1F, 0x3F, 0x0F, 0x81, 0xF1, - 0xF8, 0xF8, 0x1F, 0x0F, 0xCF, 0x81, 0xF0, 0xFC, 0xF8, 0x1F, 0x07, 0xEF, - 0x81, 0xF0, 0x3F, 0xF8, 0x1F, 0x03, 0xFF, 0x81, 0xF0, 0x1F, 0xF8, 0x1F, - 0x00, 0xFF, 0x81, 0xF0, 0x0F, 0xF8, 0x7F, 0xE0, 0x7F, 0x8F, 0xFF, 0x03, - 0xF8, 0xFF, 0xF0, 0x3F, 0x8F, 0xFF, 0x01, 0xF8, 0x7F, 0xE0, 0x0F, 0x80, - 0x00, 0x3F, 0x80, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, - 0xFE, 0x00, 0xFF, 0xFF, 0xE0, 0x3F, 0xC1, 0xFE, 0x0F, 0xE0, 0x0F, 0xE1, - 0xF8, 0x00, 0xFC, 0x7E, 0x00, 0x0F, 0xCF, 0x80, 0x00, 0xFB, 0xF0, 0x00, - 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x07, 0xFE, - 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xFF, 0x00, 0x00, - 0x7F, 0xF0, 0x00, 0x1F, 0xBE, 0x00, 0x03, 0xE7, 0xE0, 0x00, 0xFC, 0x7E, - 0x00, 0x3F, 0x0F, 0xE0, 0x0F, 0xE0, 0xFF, 0x07, 0xF8, 0x0F, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x00, 0xFF, 0xF8, 0x00, 0x03, - 0xF8, 0x00, 0x7F, 0xFF, 0x80, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xFC, 0x7F, 0xFF, 0xFE, 0x1F, 0x00, 0xFE, 0x1F, 0x00, 0x3F, 0x1F, - 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, - 0x00, 0x3F, 0x1F, 0x00, 0x7E, 0x1F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xF8, 0x1F, 0xFF, 0xF0, 0x1F, 0xFF, 0x80, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x7F, 0xFC, 0x00, 0xFF, - 0xFE, 0x00, 0xFF, 0xFE, 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFC, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0xE0, 0x3F, 0xC1, 0xFE, 0x0F, 0xE0, 0x0F, 0xE1, 0xF8, - 0x00, 0xFC, 0x7E, 0x00, 0x0F, 0xCF, 0x80, 0x00, 0xFB, 0xF0, 0x00, 0x1F, - 0xFC, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x07, 0xFE, 0x00, - 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x00, 0xFD, - 0xF0, 0x00, 0x1F, 0x3F, 0x00, 0x07, 0xE7, 0xF0, 0x01, 0xF8, 0x7F, 0x00, - 0x7F, 0x07, 0xF8, 0x3F, 0xC0, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFC, 0x00, - 0x7F, 0xFF, 0x00, 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x03, 0xFF, 0x87, 0x80, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0x07, - 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0x0F, 0x01, 0xF8, 0x00, 0x7F, 0xFF, - 0x80, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, - 0x7F, 0xFF, 0xFE, 0x00, 0xF8, 0x07, 0xE0, 0x0F, 0x80, 0x3F, 0x00, 0xF8, - 0x01, 0xF0, 0x0F, 0x80, 0x1F, 0x00, 0xF8, 0x01, 0xF0, 0x0F, 0x80, 0x3F, - 0x00, 0xF8, 0x0F, 0xE0, 0x0F, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xC0, 0x0F, - 0xFF, 0xF0, 0x00, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0xF8, 0x3F, - 0x80, 0x0F, 0x81, 0xFC, 0x00, 0xF8, 0x0F, 0xE0, 0x0F, 0x80, 0x7E, 0x00, - 0xF8, 0x03, 0xF0, 0x7F, 0xF0, 0x1F, 0xEF, 0xFF, 0x81, 0xFF, 0xFF, 0xF8, - 0x0F, 0xFF, 0xFF, 0x80, 0x7F, 0x7F, 0xF0, 0x07, 0xE0, 0x01, 0xFC, 0x70, - 0x1F, 0xFD, 0xE0, 0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, 0xFC, - 0x0F, 0xE7, 0xE0, 0x1F, 0x9F, 0x00, 0x3E, 0x7C, 0x00, 0xF9, 0xF0, 0x01, - 0xC7, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x7F, 0xFF, 0x00, - 0xFF, 0xFF, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xE0, 0x00, - 0x0F, 0xDC, 0x00, 0x1F, 0xF8, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0xC0, 0x0F, - 0xFF, 0xC0, 0xFE, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xCF, 0xFF, 0xFE, 0x1C, - 0xFF, 0xF0, 0x00, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC1, 0xF0, 0x7F, - 0xE0, 0xF8, 0x3F, 0xF0, 0x7C, 0x1F, 0xF8, 0x3E, 0x0F, 0xFC, 0x1F, 0x07, - 0xFE, 0x0F, 0x83, 0xEE, 0x07, 0xC0, 0xE0, 0x03, 0xE0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, - 0xF0, 0x00, 0x0F, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x07, 0xFF, 0xF0, 0x03, - 0xFF, 0xF8, 0x00, 0xFF, 0xF8, 0x00, 0x7F, 0xE0, 0x7F, 0xEF, 0xFF, 0x0F, - 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0xE0, 0x7F, 0xE1, - 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, - 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, - 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, - 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, - 0x81, 0xF0, 0x00, 0xF8, 0x1F, 0x80, 0x1F, 0x80, 0xF8, 0x01, 0xF0, 0x0F, - 0xE0, 0x7F, 0x00, 0x7F, 0xFF, 0xE0, 0x03, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, - 0x80, 0x00, 0xFF, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x7F, 0xE0, 0x1F, 0xFB, - 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFC, 0x0F, 0xFF, 0x7F, - 0xE0, 0x1F, 0xF8, 0x7C, 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x7C, 0x03, 0xE0, - 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7E, 0x00, - 0xF8, 0x00, 0xF8, 0x07, 0xC0, 0x03, 0xF0, 0x1F, 0x00, 0x07, 0xC0, 0xF8, - 0x00, 0x1F, 0x03, 0xE0, 0x00, 0x7E, 0x1F, 0x00, 0x00, 0xF8, 0x7C, 0x00, - 0x03, 0xF3, 0xF0, 0x00, 0x07, 0xCF, 0x80, 0x00, 0x1F, 0xBE, 0x00, 0x00, - 0x3F, 0xF0, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x07, - 0xF8, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0xFC, - 0x00, 0x00, 0x7F, 0xE0, 0x7F, 0xEF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, - 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0xE0, 0x7F, 0xE3, 0xE0, 0x00, 0x3C, 0x3E, - 0x0F, 0x83, 0xC3, 0xE1, 0xF8, 0x3C, 0x3E, 0x1F, 0x87, 0xC3, 0xE1, 0xFC, - 0x7C, 0x3E, 0x3F, 0xC7, 0xC1, 0xE3, 0xFC, 0x7C, 0x1F, 0x3F, 0xE7, 0xC1, - 0xF7, 0xFE, 0x78, 0x1F, 0x7F, 0xE7, 0x81, 0xF7, 0x9F, 0xF8, 0x1F, 0xF9, - 0xFF, 0x81, 0xFF, 0x9F, 0xF8, 0x0F, 0xF9, 0xFF, 0x80, 0xFF, 0x0F, 0xF8, - 0x0F, 0xF0, 0xFF, 0x80, 0xFF, 0x0F, 0xF0, 0x0F, 0xE0, 0x7F, 0x00, 0xFE, - 0x07, 0xF0, 0x0F, 0xE0, 0x7F, 0x00, 0xFC, 0x03, 0xF0, 0x07, 0xC0, 0x3F, - 0x00, 0x7F, 0x80, 0xFF, 0x3F, 0xF0, 0x7F, 0xEF, 0xFC, 0x1F, 0xFB, 0xFF, - 0x07, 0xFE, 0x7F, 0x80, 0xFF, 0x07, 0xE0, 0x3F, 0x00, 0xFC, 0x0F, 0x80, - 0x1F, 0x87, 0xC0, 0x03, 0xF3, 0xE0, 0x00, 0xFF, 0xF8, 0x00, 0x1F, 0xFC, - 0x00, 0x03, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, - 0xF0, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0xFC, 0xF8, 0x00, - 0x7E, 0x3F, 0x00, 0x3F, 0x07, 0xE0, 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0x1F, - 0x07, 0xFC, 0x0F, 0xFB, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF8, - 0x7F, 0xF7, 0xFC, 0x0F, 0xF8, 0x7F, 0x80, 0x7F, 0xBF, 0xF0, 0x3F, 0xFF, - 0xFC, 0x0F, 0xFF, 0xFF, 0x03, 0xFF, 0x7F, 0x80, 0x7F, 0x87, 0xE0, 0x1F, - 0x80, 0xFC, 0x07, 0xC0, 0x1F, 0x03, 0xE0, 0x03, 0xE1, 0xF8, 0x00, 0xFC, - 0x7C, 0x00, 0x1F, 0xBE, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x7F, 0xC0, 0x00, - 0x1F, 0xE0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0xFF, 0x00, 0x0F, 0xFF, 0xE0, 0x03, - 0xFF, 0xF8, 0x00, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0x00, 0x7F, 0xFF, 0xF3, - 0xFF, 0xFF, 0x9F, 0xFF, 0xFC, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0x3E, 0x03, - 0xF1, 0xF0, 0x1F, 0x8F, 0x81, 0xF8, 0x7C, 0x1F, 0x83, 0xE1, 0xF8, 0x0E, - 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, - 0x00, 0xFC, 0x00, 0x0F, 0xE0, 0x70, 0x7E, 0x07, 0xC7, 0xE0, 0x3E, 0x7E, - 0x01, 0xF7, 0xE0, 0x0F, 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xBF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xBE, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, - 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, - 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, - 0xFF, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x60, 0x00, 0x0F, 0x00, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, - 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xF0, - 0x00, 0x1F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x07, - 0xC0, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, - 0x1F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, - 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, - 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, - 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0x7F, 0xC0, 0x00, 0x40, 0x00, 0x06, 0x00, 0x00, 0xF0, - 0x00, 0x1F, 0x80, 0x03, 0xFC, 0x00, 0x7F, 0xE0, 0x0F, 0xFF, 0x00, 0xFF, - 0xF8, 0x1F, 0x9F, 0x83, 0xF0, 0xFC, 0x7E, 0x07, 0xEF, 0xC0, 0x3F, 0xF8, - 0x01, 0xFF, 0x80, 0x0F, 0x70, 0x00, 0x60, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0xE0, 0x78, 0x3E, 0x0F, 0xC3, 0xF0, 0x7C, 0x1E, 0x06, 0x01, 0xFF, - 0x00, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x0F, 0xFF, - 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x01, 0xFF, - 0xF8, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x7F, 0xFF, - 0xF8, 0x7F, 0x00, 0xF8, 0xFC, 0x00, 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x03, - 0xF8, 0xFC, 0x0F, 0xFE, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x3F, 0xFF, - 0xFF, 0x1F, 0xFE, 0xFE, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x1F, 0xE0, - 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x0F, - 0xE0, 0x03, 0xEF, 0xFF, 0x00, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0xF8, 0x3F, 0xE0, 0x7F, 0x07, 0xF0, 0x03, 0xF0, 0xFC, 0x00, - 0x3E, 0x1F, 0x80, 0x07, 0xE3, 0xE0, 0x00, 0x7C, 0x7C, 0x00, 0x0F, 0x8F, - 0x80, 0x01, 0xF1, 0xF0, 0x00, 0x3E, 0x3E, 0x00, 0x07, 0xC7, 0xE0, 0x01, - 0xF8, 0xFC, 0x00, 0x3E, 0x1F, 0xC0, 0x0F, 0xCF, 0xFE, 0x07, 0xF3, 0xFF, - 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0xE0, 0xFE, 0x7F, 0xF0, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFF, 0x18, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x3F, 0x81, 0xFC, 0x7E, 0x00, - 0x7C, 0x7C, 0x00, 0x7C, 0xFC, 0x00, 0x3C, 0xF8, 0x00, 0x38, 0xF8, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7C, 0x00, 0x06, 0x7E, 0x00, 0x1F, 0x7F, 0x80, 0x7F, 0x3F, 0xFF, - 0xFF, 0x1F, 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x07, 0xFF, 0xF8, 0x00, 0xFF, - 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0xF8, 0x00, 0xFE, 0x3E, 0x00, 0xFF, 0xEF, 0x80, 0xFF, 0xFF, - 0xE0, 0x7F, 0xFF, 0xF8, 0x3F, 0xFF, 0xFE, 0x1F, 0xE0, 0xFF, 0x87, 0xE0, - 0x0F, 0xE1, 0xF0, 0x01, 0xF8, 0xFC, 0x00, 0x7E, 0x3E, 0x00, 0x0F, 0x8F, - 0x80, 0x03, 0xE3, 0xE0, 0x00, 0xF8, 0xF8, 0x00, 0x3E, 0x3E, 0x00, 0x0F, - 0x8F, 0xC0, 0x07, 0xE1, 0xF0, 0x01, 0xF8, 0x7E, 0x00, 0xFE, 0x0F, 0xE0, - 0x7F, 0xE3, 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xC0, - 0xFF, 0xEF, 0xE0, 0x0F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x03, 0xFF, 0xC0, - 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x7F, 0x81, 0xFC, - 0x7E, 0x00, 0x7E, 0xFC, 0x00, 0x3E, 0xF8, 0x00, 0x3E, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, 0x80, 0x7E, - 0x3F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFE, 0x07, 0xFF, 0xF8, - 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xE0, 0x03, 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, - 0xFF, 0xFF, 0x07, 0xFF, 0xF8, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x01, 0xF0, - 0x00, 0x07, 0xC0, 0x01, 0xFF, 0xFF, 0x0F, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, - 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x07, - 0xC0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, - 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x01, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, 0xFF, 0xFF, 0xE1, 0xFF, - 0xFF, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xFF, 0xBF, 0x83, 0xFF, 0xFF, 0xE3, - 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xFB, 0xFC, 0x3F, 0xF9, 0xF8, 0x07, 0xF0, - 0xF8, 0x01, 0xF8, 0xFC, 0x00, 0xFC, 0x7C, 0x00, 0x3E, 0x3E, 0x00, 0x1F, - 0x1F, 0x00, 0x0F, 0x8F, 0x80, 0x07, 0xC7, 0xC0, 0x03, 0xE3, 0xF0, 0x03, - 0xF0, 0xF8, 0x01, 0xF8, 0x7E, 0x01, 0xFC, 0x3F, 0xC3, 0xFE, 0x0F, 0xFF, - 0xFF, 0x03, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xC0, 0x3F, 0xFB, 0xE0, 0x07, - 0xF1, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFE, 0x00, - 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0x00, 0x3F, 0xFE, 0x00, - 0x0F, 0xFC, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x0F, 0xC0, 0x07, 0xCF, 0xFC, 0x01, - 0xF7, 0xFF, 0x80, 0x7F, 0xFF, 0xF0, 0x1F, 0xFF, 0xFC, 0x07, 0xFC, 0x1F, - 0x81, 0xFC, 0x03, 0xE0, 0x7E, 0x00, 0xF8, 0x1F, 0x00, 0x3E, 0x07, 0xC0, - 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, 0x00, 0x3E, 0x07, - 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, 0x1F, 0x00, 0x3E, - 0x1F, 0xF0, 0x3F, 0xEF, 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, - 0xFF, 0xDF, 0xF0, 0x3F, 0xE0, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, - 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x0F, 0xFE, 0x00, 0x7F, 0xF0, - 0x01, 0xFF, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x7F, 0xFF, 0xF7, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0x00, 0x00, 0x7C, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, - 0xFF, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, - 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, - 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x3F, 0x00, 0x3F, 0xBF, 0xFF, 0xBF, 0xFF, - 0x9F, 0xFF, 0xCF, 0xFF, 0x83, 0xFF, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x80, - 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, - 0x87, 0xFC, 0x07, 0xC7, 0xFF, 0x03, 0xE3, 0xFF, 0x81, 0xF1, 0xFF, 0xC0, - 0xF8, 0x7F, 0xC0, 0x7C, 0xFE, 0x00, 0x3E, 0xFE, 0x00, 0x1F, 0xFE, 0x00, - 0x0F, 0xFE, 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xFF, 0xE0, - 0x00, 0xFF, 0xF8, 0x00, 0x7C, 0xFE, 0x00, 0x3E, 0x3F, 0x80, 0x1F, 0x0F, - 0xE0, 0x3F, 0x81, 0xFF, 0xBF, 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF0, - 0x7F, 0xFB, 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x0F, 0xFE, - 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, - 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x03, 0xFF, - 0xFF, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xF8, - 0x00, 0x3C, 0x1F, 0x00, 0xFD, 0xFC, 0xFF, 0x07, 0xFF, 0xFF, 0xFE, 0x1F, - 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFF, 0xF0, 0xFF, 0x1F, 0x87, 0xC1, 0xF8, - 0x7E, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, - 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, - 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, - 0x1F, 0x07, 0xC1, 0xF1, 0xFE, 0x1F, 0x87, 0xEF, 0xFC, 0x7F, 0x1F, 0xFF, - 0xF1, 0xFC, 0x7F, 0xFF, 0xC7, 0xF1, 0xFD, 0xFE, 0x1F, 0x87, 0xE0, 0x00, - 0x1F, 0x80, 0x1F, 0x9F, 0xF8, 0x1F, 0xDF, 0xFE, 0x0F, 0xFF, 0xFF, 0x87, - 0xFF, 0xFF, 0xC1, 0xFF, 0x07, 0xF0, 0x7F, 0x01, 0xF8, 0x3F, 0x00, 0x7C, - 0x1F, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0x07, 0xC0, 0x0F, 0x83, 0xE0, 0x07, - 0xC1, 0xF0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, 0x3E, 0x00, - 0x7C, 0x1F, 0x00, 0x3E, 0x3F, 0xE0, 0x7F, 0xBF, 0xF8, 0x7F, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFE, 0x1F, 0xFB, 0xFE, 0x07, 0xF8, 0x00, 0x7F, 0x00, 0x01, - 0xFF, 0xF0, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xC1, - 0xFE, 0x0F, 0xF1, 0xFC, 0x01, 0xFC, 0xFC, 0x00, 0x7E, 0xFC, 0x00, 0x1F, - 0xFC, 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0xF0, 0x00, 0x7E, 0xF8, 0x00, 0x7E, 0x7F, 0x00, - 0x7F, 0x1F, 0xC0, 0xFF, 0x07, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0x80, 0x7F, - 0xFF, 0x00, 0x1F, 0xFF, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x07, 0xE0, 0x03, - 0xF9, 0xFF, 0xC0, 0x7F, 0xBF, 0xFE, 0x07, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, - 0xFF, 0xC3, 0xFF, 0x83, 0xFC, 0x0F, 0xE0, 0x0F, 0xE0, 0xFC, 0x00, 0x7E, - 0x0F, 0xC0, 0x03, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF0, 0xF8, - 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x3F, 0x0F, 0xC0, 0x03, - 0xF0, 0xFE, 0x00, 0x7E, 0x0F, 0xF8, 0x1F, 0xE0, 0xFF, 0xFF, 0xFC, 0x0F, - 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xF0, 0x0F, 0x9F, 0xFC, 0x00, 0xF8, 0x7F, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x7F, 0xF8, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0xFF, 0xFC, - 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0x3F, 0xF9, 0xFC, 0x0F, 0xFF, 0xDF, 0xE1, 0xFF, 0xFF, 0xFE, 0x3F, - 0xFF, 0xFF, 0xE3, 0xF8, 0x1F, 0xFC, 0x7F, 0x00, 0x7F, 0x07, 0xC0, 0x03, - 0xF0, 0xFC, 0x00, 0x3F, 0x0F, 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, - 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, 0xC0, 0x01, 0xF0, 0xFC, 0x00, - 0x3F, 0x07, 0xE0, 0x07, 0xF0, 0x7F, 0x81, 0xFF, 0x03, 0xFF, 0xFF, 0xF0, - 0x1F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0x9F, 0x00, 0x0F, - 0xE1, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x3F, 0xFF, 0x00, - 0x03, 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x01, - 0xF0, 0x3F, 0xC7, 0xFC, 0x7F, 0xCF, 0xFE, 0x7F, 0xDF, 0xFF, 0x7F, 0xFF, - 0xFF, 0x3F, 0xFF, 0x0E, 0x07, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x07, 0xF0, - 0x00, 0x07, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, - 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xC0, - 0x00, 0x7F, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, - 0xE0, 0x7F, 0xFF, 0xC0, 0x03, 0xFC, 0x60, 0x7F, 0xFF, 0x87, 0xFF, 0xFC, - 0x7F, 0xFF, 0xE7, 0xFF, 0xFF, 0x3F, 0x01, 0xF9, 0xF0, 0x07, 0xCF, 0xC0, - 0x1C, 0x7F, 0xF0, 0x03, 0xFF, 0xF8, 0x0F, 0xFF, 0xF0, 0x3F, 0xFF, 0xC0, - 0x3F, 0xFF, 0x00, 0x0F, 0xFD, 0xC0, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xEF, 0xFF, 0xFE, 0x3F, - 0xFF, 0xC0, 0x07, 0xF8, 0x00, 0x07, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0xFF, - 0xF8, 0x7F, 0xFF, 0xF8, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, - 0x80, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, - 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x03, 0x83, 0xF0, 0x1F, 0x87, - 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xF8, 0x07, 0xFF, 0xC0, 0x03, - 0xFC, 0x00, 0x7F, 0x01, 0xFE, 0x7F, 0x81, 0xFF, 0x3F, 0xC0, 0xFF, 0x9F, - 0xE0, 0x7F, 0xC7, 0xF0, 0x1F, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x00, 0xF8, - 0x3E, 0x00, 0x7C, 0x1F, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0x07, 0xC0, 0x0F, - 0x83, 0xE0, 0x07, 0xC1, 0xF0, 0x03, 0xE0, 0xF8, 0x01, 0xF0, 0x7C, 0x01, - 0xF8, 0x3F, 0x01, 0xFC, 0x1F, 0xC1, 0xFF, 0x07, 0xFF, 0xFF, 0xC3, 0xFF, - 0xFF, 0xE0, 0xFF, 0xF7, 0xF0, 0x3F, 0xF3, 0xF0, 0x03, 0xF0, 0x00, 0x7F, - 0xE0, 0x7F, 0xEF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x0F, - 0xFF, 0x7F, 0xE0, 0x7F, 0xE0, 0xF8, 0x01, 0xF0, 0x0F, 0xC0, 0x1F, 0x00, - 0x7C, 0x03, 0xE0, 0x07, 0xE0, 0x3E, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xF0, - 0x7C, 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF8, 0xF8, 0x00, 0x0F, 0x9F, 0x00, - 0x00, 0xFD, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x7F, 0x80, 0x1F, 0xEF, 0xFC, 0x03, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, - 0xFC, 0x03, 0xFF, 0x7F, 0x80, 0x1F, 0xE1, 0xF0, 0xF8, 0x7C, 0x1F, 0x1F, - 0x87, 0xC1, 0xF1, 0xF8, 0xFC, 0x1F, 0x1F, 0xCF, 0x80, 0xFB, 0xFC, 0xF8, - 0x0F, 0xBF, 0xDF, 0x80, 0xFB, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x00, 0x7F, - 0xDF, 0xF0, 0x07, 0xF9, 0xFF, 0x00, 0x7F, 0x9F, 0xE0, 0x07, 0xF0, 0xFE, - 0x00, 0x3F, 0x0F, 0xE0, 0x03, 0xF0, 0x7E, 0x00, 0x3E, 0x07, 0xC0, 0x03, - 0xE0, 0x3C, 0x00, 0x3F, 0xC0, 0xFF, 0x1F, 0xF8, 0x7F, 0xE7, 0xFE, 0x1F, - 0xF9, 0xFF, 0x87, 0xFE, 0x3F, 0xC0, 0xFF, 0x03, 0xF8, 0x7F, 0x00, 0x7F, - 0x3F, 0x80, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xE0, 0x00, 0x3F, 0xE0, 0x00, - 0x07, 0xF8, 0x00, 0x07, 0xFF, 0x00, 0x03, 0xFF, 0xE0, 0x01, 0xFF, 0xFE, - 0x00, 0xFE, 0x1F, 0xC0, 0x7F, 0x03, 0xF8, 0x7F, 0xC0, 0xFF, 0xBF, 0xF8, - 0x7F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0x7F, 0xC0, 0xFF, 0x80, - 0x7F, 0x80, 0x7F, 0xBF, 0xF0, 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0x03, - 0xFF, 0x7F, 0x80, 0x7F, 0x8F, 0xC0, 0x07, 0x81, 0xF0, 0x03, 0xE0, 0x7E, - 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xF0, 0x3E, 0x00, 0x7C, 0x0F, 0x80, - 0x0F, 0x87, 0xC0, 0x03, 0xE1, 0xF0, 0x00, 0x7C, 0xF8, 0x00, 0x1F, 0xFE, - 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x07, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x1F, 0xFF, 0x80, - 0x0F, 0xFF, 0xF0, 0x03, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, - 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0x3F, 0xBE, 0x0F, 0xC3, 0x83, 0xF0, 0x00, 0xFC, 0x00, - 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, - 0xC0, 0x3B, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x78, 0x03, 0xF0, 0x1F, 0xC0, 0xFF, 0x07, - 0xF8, 0x1F, 0x80, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, - 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x0F, 0x81, 0xFE, 0x0F, - 0xF0, 0x3F, 0x80, 0xFF, 0x01, 0xFE, 0x00, 0xFC, 0x01, 0xF0, 0x07, 0xC0, - 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF8, - 0x07, 0xF8, 0x0F, 0xF0, 0x3F, 0xC0, 0x7F, 0x00, 0x78, 0x77, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xE0, 0x78, 0x03, 0xF0, 0x0F, - 0xE0, 0x3F, 0xC0, 0x7F, 0x00, 0x7E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, - 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, - 0x07, 0xC0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x03, 0xFC, 0x1F, 0xE0, 0xFC, - 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0xF8, 0x07, 0xE0, 0x7F, 0x83, 0xFC, 0x0F, 0xF0, 0x3F, 0x80, 0x78, - 0x00, 0x07, 0x80, 0x00, 0x7F, 0x80, 0x03, 0xFF, 0x03, 0x9F, 0xFE, 0x1F, - 0xFF, 0xFC, 0xFF, 0xF3, 0xFF, 0xFF, 0x87, 0xFF, 0x9C, 0x0F, 0xFC, 0x00, - 0x0F, 0xE0, 0x00, 0x1F, 0x00}; - -const GFXglyph FreeMonoBold24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 7, 31, 28, 10, -29}, // 0x21 '!' - {28, 15, 14, 28, 6, -28}, // 0x22 '"' - {55, 22, 34, 28, 3, -30}, // 0x23 '#' - {149, 19, 38, 28, 5, -31}, // 0x24 '$' - {240, 21, 30, 28, 4, -28}, // 0x25 '%' - {319, 21, 28, 28, 4, -26}, // 0x26 '&' - {393, 6, 14, 28, 11, -28}, // 0x27 ''' - {404, 10, 37, 28, 12, -29}, // 0x28 '(' - {451, 10, 37, 28, 6, -29}, // 0x29 ')' - {498, 21, 19, 28, 4, -28}, // 0x2A '*' - {548, 23, 26, 28, 3, -25}, // 0x2B '+' - {623, 9, 14, 28, 7, -6}, // 0x2C ',' - {639, 24, 5, 28, 2, -15}, // 0x2D '-' - {654, 7, 6, 28, 11, -4}, // 0x2E '.' - {660, 20, 38, 28, 4, -32}, // 0x2F '/' - {755, 21, 31, 28, 4, -29}, // 0x30 '0' - {837, 20, 29, 28, 4, -28}, // 0x31 '1' - {910, 21, 30, 28, 3, -29}, // 0x32 '2' - {989, 21, 31, 28, 4, -29}, // 0x33 '3' - {1071, 20, 28, 28, 4, -27}, // 0x34 '4' - {1141, 21, 31, 28, 4, -29}, // 0x35 '5' - {1223, 20, 31, 28, 5, -29}, // 0x36 '6' - {1301, 20, 30, 28, 4, -29}, // 0x37 '7' - {1376, 20, 31, 28, 4, -29}, // 0x38 '8' - {1454, 20, 31, 28, 5, -29}, // 0x39 '9' - {1532, 7, 22, 28, 11, -20}, // 0x3A ':' - {1552, 10, 28, 28, 6, -20}, // 0x3B ';' - {1587, 24, 21, 28, 2, -23}, // 0x3C '<' - {1650, 24, 14, 28, 2, -19}, // 0x3D '=' - {1692, 23, 22, 28, 3, -23}, // 0x3E '>' - {1756, 20, 29, 28, 5, -27}, // 0x3F '?' - {1829, 19, 36, 28, 4, -28}, // 0x40 '@' - {1915, 29, 27, 28, -1, -26}, // 0x41 'A' - {2013, 26, 27, 28, 1, -26}, // 0x42 'B' - {2101, 25, 29, 28, 2, -27}, // 0x43 'C' - {2192, 25, 27, 28, 1, -26}, // 0x44 'D' - {2277, 25, 27, 28, 1, -26}, // 0x45 'E' - {2362, 25, 27, 28, 1, -26}, // 0x46 'F' - {2447, 25, 29, 28, 2, -27}, // 0x47 'G' - {2538, 26, 27, 28, 1, -26}, // 0x48 'H' - {2626, 19, 27, 28, 5, -26}, // 0x49 'I' - {2691, 25, 28, 28, 3, -26}, // 0x4A 'J' - {2779, 27, 27, 28, 1, -26}, // 0x4B 'K' - {2871, 25, 27, 28, 2, -26}, // 0x4C 'L' - {2956, 31, 27, 28, -1, -26}, // 0x4D 'M' - {3061, 28, 27, 28, 0, -26}, // 0x4E 'N' - {3156, 27, 29, 28, 1, -27}, // 0x4F 'O' - {3254, 24, 27, 28, 1, -26}, // 0x50 'P' - {3335, 27, 35, 28, 1, -27}, // 0x51 'Q' - {3454, 28, 27, 28, 0, -26}, // 0x52 'R' - {3549, 22, 29, 28, 3, -27}, // 0x53 'S' - {3629, 25, 27, 28, 2, -26}, // 0x54 'T' - {3714, 28, 28, 28, 0, -26}, // 0x55 'U' - {3812, 30, 27, 28, -1, -26}, // 0x56 'V' - {3914, 28, 27, 28, 0, -26}, // 0x57 'W' - {4009, 26, 27, 28, 1, -26}, // 0x58 'X' - {4097, 26, 27, 28, 1, -26}, // 0x59 'Y' - {4185, 21, 27, 28, 4, -26}, // 0x5A 'Z' - {4256, 10, 37, 28, 12, -29}, // 0x5B '[' - {4303, 20, 38, 28, 4, -32}, // 0x5C '\' - {4398, 10, 37, 28, 6, -29}, // 0x5D ']' - {4445, 20, 15, 28, 4, -29}, // 0x5E '^' - {4483, 28, 5, 28, 0, 5}, // 0x5F '_' - {4501, 9, 8, 28, 8, -30}, // 0x60 '`' - {4510, 24, 23, 28, 2, -21}, // 0x61 'a' - {4579, 27, 31, 28, 0, -29}, // 0x62 'b' - {4684, 24, 23, 28, 3, -21}, // 0x63 'c' - {4753, 26, 31, 28, 2, -29}, // 0x64 'd' - {4854, 24, 23, 28, 2, -21}, // 0x65 'e' - {4923, 22, 30, 28, 4, -29}, // 0x66 'f' - {5006, 25, 31, 28, 2, -21}, // 0x67 'g' - {5103, 26, 30, 28, 1, -29}, // 0x68 'h' - {5201, 21, 29, 28, 4, -28}, // 0x69 'i' - {5278, 17, 38, 28, 5, -28}, // 0x6A 'j' - {5359, 25, 30, 28, 2, -29}, // 0x6B 'k' - {5453, 21, 30, 28, 4, -29}, // 0x6C 'l' - {5532, 30, 22, 28, -1, -21}, // 0x6D 'm' - {5615, 25, 22, 28, 1, -21}, // 0x6E 'n' - {5684, 25, 23, 28, 2, -21}, // 0x6F 'o' - {5756, 28, 31, 28, 0, -21}, // 0x70 'p' - {5865, 28, 31, 28, 1, -21}, // 0x71 'q' - {5974, 24, 22, 28, 3, -21}, // 0x72 'r' - {6040, 21, 23, 28, 4, -21}, // 0x73 's' - {6101, 23, 28, 28, 1, -26}, // 0x74 't' - {6182, 25, 22, 28, 1, -20}, // 0x75 'u' - {6251, 28, 21, 28, 0, -20}, // 0x76 'v' - {6325, 28, 21, 28, 0, -20}, // 0x77 'w' - {6399, 26, 21, 28, 1, -20}, // 0x78 'x' - {6468, 26, 30, 28, 1, -20}, // 0x79 'y' - {6566, 19, 21, 28, 5, -20}, // 0x7A 'z' - {6616, 14, 37, 28, 7, -29}, // 0x7B '{' - {6681, 5, 36, 28, 12, -28}, // 0x7C '|' - {6704, 14, 37, 28, 8, -29}, // 0x7D '}' - {6769, 22, 10, 28, 3, -17}}; // 0x7E '~' - -const GFXfont FreeMonoBold24pt7b PROGMEM = { - (uint8_t *)FreeMonoBold24pt7bBitmaps, (GFXglyph *)FreeMonoBold24pt7bGlyphs, - 0x20, 0x7E, 47}; - -// Approx. 7469 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h deleted file mode 100644 index 44320f8..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBold9pt7b.h +++ /dev/null @@ -1,191 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBold9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xD2, 0x1F, 0x80, 0xEC, 0x89, 0x12, 0x24, 0x40, 0x36, 0x36, - 0x36, 0x7F, 0x7F, 0x36, 0xFF, 0xFF, 0x3C, 0x3C, 0x3C, 0x00, 0x18, 0xFF, - 0xFE, 0x3C, 0x1F, 0x1F, 0x83, 0x46, 0x8D, 0xF0, 0xC1, 0x83, 0x00, 0x61, - 0x22, 0x44, 0x86, 0x67, 0x37, 0x11, 0x22, 0x4C, 0x70, 0x3C, 0x7E, 0x60, - 0x60, 0x30, 0x7B, 0xDF, 0xCE, 0xFF, 0x7F, 0xC9, 0x24, 0x37, 0x66, 0xCC, - 0xCC, 0xCC, 0x66, 0x31, 0xCE, 0x66, 0x33, 0x33, 0x33, 0x66, 0xC8, 0x18, - 0x18, 0xFF, 0xFF, 0x3C, 0x3C, 0x66, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x18, - 0x18, 0x18, 0x18, 0x6B, 0x48, 0xFF, 0xFF, 0xC0, 0xF0, 0x02, 0x0C, 0x18, - 0x60, 0xC3, 0x06, 0x0C, 0x30, 0x61, 0x83, 0x0C, 0x18, 0x20, 0x00, 0x38, - 0xFB, 0xBE, 0x3C, 0x78, 0xF1, 0xE3, 0xC7, 0xDD, 0xF1, 0xC0, 0x38, 0xF3, - 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0xFD, 0xF8, 0x3C, 0xFE, 0xC7, 0x03, - 0x03, 0x06, 0x0C, 0x18, 0x70, 0xE3, 0xFF, 0xFF, 0x7C, 0xFE, 0x03, 0x03, - 0x03, 0x1E, 0x1E, 0x07, 0x03, 0x03, 0xFE, 0x7C, 0x1C, 0x38, 0xB1, 0x64, - 0xD9, 0xBF, 0xFF, 0x3E, 0x7C, 0x7E, 0x3F, 0x18, 0x0F, 0xC7, 0xF3, 0x1C, - 0x06, 0x03, 0xC3, 0xFF, 0x9F, 0x80, 0x0F, 0x3F, 0x30, 0x60, 0x60, 0xDC, - 0xFE, 0xE3, 0xC3, 0x63, 0x7E, 0x3C, 0xFF, 0xFF, 0xC3, 0x03, 0x06, 0x06, - 0x06, 0x0C, 0x0C, 0x0C, 0x18, 0x38, 0xFB, 0x1E, 0x3C, 0x6F, 0x9F, 0x63, - 0xC7, 0x8F, 0xF1, 0xC0, 0x3C, 0x7E, 0xE6, 0xC3, 0xC3, 0xE7, 0x7F, 0x3B, - 0x06, 0x0E, 0xFC, 0xF0, 0xF0, 0x0F, 0x6C, 0x00, 0x1A, 0xD2, 0x00, 0x01, - 0x83, 0x87, 0x0E, 0x0F, 0x80, 0xE0, 0x1C, 0x03, 0xFF, 0xFF, 0xC0, 0x00, - 0x0F, 0xFF, 0xFC, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0xF9, 0xE3, 0xC1, 0x80, - 0x7C, 0xFE, 0xC7, 0x03, 0x0E, 0x1C, 0x00, 0x00, 0x00, 0x30, 0x30, 0x1E, - 0x1F, 0x1C, 0xDC, 0x6C, 0x76, 0x7B, 0x6D, 0xB6, 0xDB, 0x6F, 0xF3, 0xFC, - 0x06, 0x33, 0xF8, 0x78, 0x3C, 0x07, 0xC0, 0x38, 0x05, 0x81, 0xB0, 0x36, - 0x0F, 0xE1, 0xFC, 0x71, 0xDF, 0x7F, 0xEF, 0x80, 0xFF, 0x3F, 0xE6, 0x19, - 0x86, 0x7F, 0x1F, 0xE6, 0x1D, 0x83, 0x60, 0xFF, 0xFF, 0xF0, 0x1F, 0xBF, - 0xD8, 0xF8, 0x3C, 0x06, 0x03, 0x01, 0x80, 0x61, 0xBF, 0xC7, 0xC0, 0xFE, - 0x3F, 0xE6, 0x19, 0x83, 0x60, 0xD8, 0x36, 0x0D, 0x83, 0x61, 0xBF, 0xEF, - 0xE0, 0xFF, 0xFF, 0xD8, 0x6D, 0xB7, 0xC3, 0xE1, 0xB0, 0xC3, 0x61, 0xFF, - 0xFF, 0xE0, 0xFF, 0xFF, 0xD8, 0x6D, 0xB7, 0xC3, 0xE1, 0xB0, 0xC0, 0x60, - 0x7C, 0x3E, 0x00, 0x1F, 0x9F, 0xE6, 0x1B, 0x06, 0xC0, 0x30, 0x0C, 0x7F, - 0x1F, 0xE1, 0x9F, 0xE3, 0xF0, 0xF7, 0xFB, 0xD8, 0xCC, 0x66, 0x33, 0xF9, - 0xFC, 0xC6, 0x63, 0x7B, 0xFD, 0xE0, 0xFF, 0xF3, 0x0C, 0x30, 0xC3, 0x0C, - 0x33, 0xFF, 0xC0, 0x1F, 0xC7, 0xF0, 0x30, 0x0C, 0x03, 0x00, 0xCC, 0x33, - 0x0C, 0xC7, 0x3F, 0x87, 0xC0, 0xF7, 0xBD, 0xE6, 0x61, 0xB0, 0x78, 0x1F, - 0x06, 0xE1, 0x98, 0x63, 0x3C, 0xFF, 0x3C, 0xFC, 0x7E, 0x0C, 0x06, 0x03, - 0x01, 0x80, 0xC6, 0x63, 0x31, 0xFF, 0xFF, 0xE0, 0xE0, 0xFE, 0x3D, 0xC7, - 0x3D, 0xE7, 0xBC, 0xD7, 0x9B, 0xB3, 0x76, 0x60, 0xDE, 0x3F, 0xC7, 0x80, - 0xE1, 0xFE, 0x3D, 0xE3, 0x3C, 0x66, 0xCC, 0xDD, 0x99, 0xB3, 0x1E, 0x63, - 0xDE, 0x3B, 0xC3, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x7C, 0x07, 0x80, - 0xF0, 0x1F, 0x07, 0x71, 0xC7, 0xF0, 0x7C, 0x00, 0xFE, 0x7F, 0x98, 0x6C, - 0x36, 0x1B, 0xF9, 0xF8, 0xC0, 0x60, 0x7C, 0x3E, 0x00, 0x1F, 0x07, 0xF1, - 0xC7, 0x70, 0x7C, 0x07, 0x80, 0xF0, 0x1F, 0x07, 0x71, 0xC7, 0xF0, 0x7C, - 0x0C, 0x33, 0xFE, 0x7F, 0x80, 0xFC, 0x7F, 0x18, 0xCC, 0x66, 0x73, 0xF1, - 0xF0, 0xCC, 0x63, 0x7D, 0xFE, 0x60, 0x3F, 0xBF, 0xF0, 0x78, 0x0F, 0x03, - 0xF8, 0x3F, 0x83, 0xC3, 0xFF, 0xBF, 0x80, 0xFF, 0xFF, 0xF6, 0x7B, 0x3D, - 0x98, 0xC0, 0x60, 0x30, 0x18, 0x3F, 0x1F, 0x80, 0xF1, 0xFE, 0x3D, 0x83, - 0x30, 0x66, 0x0C, 0xC1, 0x98, 0x33, 0x06, 0x60, 0xC7, 0xF0, 0x7C, 0x00, - 0xFB, 0xFF, 0x7D, 0xC3, 0x18, 0xC3, 0x18, 0x36, 0x06, 0xC0, 0x50, 0x0E, - 0x01, 0xC0, 0x10, 0x00, 0xFB, 0xFE, 0xF6, 0x0D, 0x93, 0x6E, 0xDB, 0xB7, - 0xAD, 0xEE, 0x7B, 0x8E, 0xE3, 0x18, 0xF3, 0xFC, 0xF7, 0x38, 0xFC, 0x1E, - 0x03, 0x01, 0xE0, 0xCC, 0x73, 0xBC, 0xFF, 0x3C, 0xF3, 0xFC, 0xF7, 0x38, - 0xCC, 0x1E, 0x07, 0x80, 0xC0, 0x30, 0x0C, 0x0F, 0xC3, 0xF0, 0xFE, 0xFE, - 0xC6, 0xCC, 0x18, 0x18, 0x30, 0x63, 0xC3, 0xFF, 0xFF, 0xFF, 0xCC, 0xCC, - 0xCC, 0xCC, 0xCC, 0xFF, 0x01, 0x03, 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x18, - 0x30, 0x30, 0x60, 0x60, 0xC0, 0x80, 0xFF, 0x33, 0x33, 0x33, 0x33, 0x33, - 0xFF, 0x10, 0x71, 0xE3, 0x6C, 0x70, 0x40, 0xFF, 0xFF, 0xFC, 0x88, 0x80, - 0x7E, 0x3F, 0x8F, 0xCF, 0xEE, 0x36, 0x1B, 0xFE, 0xFF, 0xE0, 0x38, 0x06, - 0x01, 0xBC, 0x7F, 0x9C, 0x76, 0x0D, 0x83, 0x71, 0xFF, 0xEE, 0xF0, 0x3F, - 0xBF, 0xF8, 0x78, 0x3C, 0x07, 0x05, 0xFE, 0x7E, 0x03, 0x80, 0xE0, 0x18, - 0xF6, 0x7F, 0xB8, 0xEC, 0x1B, 0x06, 0xE3, 0x9F, 0xF3, 0xFC, 0x3E, 0x3F, - 0xB0, 0xFF, 0xFF, 0xFE, 0x01, 0xFE, 0x7E, 0x1F, 0x3F, 0x30, 0x7E, 0x7E, - 0x30, 0x30, 0x30, 0x30, 0xFE, 0xFE, 0x3F, 0xBF, 0xF9, 0xD8, 0x6C, 0x37, - 0x39, 0xFC, 0x76, 0x03, 0x01, 0x8F, 0xC7, 0xC0, 0xE0, 0x70, 0x18, 0x0D, - 0xC7, 0xF3, 0x99, 0x8C, 0xC6, 0x63, 0x7B, 0xFD, 0xE0, 0x18, 0x18, 0x00, - 0x78, 0x78, 0x18, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0x18, 0x60, 0x3F, 0xFC, - 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0F, 0xFF, 0x80, 0xE0, 0x70, 0x18, 0x0D, - 0xE6, 0xF3, 0xE1, 0xE0, 0xF8, 0x6E, 0x73, 0xF9, 0xE0, 0x78, 0x78, 0x18, - 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0xFF, 0xFF, 0xFD, 0x9F, 0xF9, 0x9B, - 0x33, 0x66, 0x6C, 0xCD, 0xBD, 0xFF, 0xBF, 0xEE, 0x7F, 0x98, 0xCC, 0x66, - 0x33, 0x1B, 0xDF, 0xEF, 0x3E, 0x3F, 0xB8, 0xF8, 0x3C, 0x1F, 0x1D, 0xFC, - 0x7C, 0xEF, 0x1F, 0xF9, 0xC3, 0xB0, 0x36, 0x06, 0xE1, 0xDF, 0xF3, 0x78, - 0x60, 0x0C, 0x03, 0xE0, 0x7C, 0x00, 0x1E, 0xEF, 0xFF, 0x87, 0x60, 0x6C, - 0x0D, 0xC3, 0x9F, 0xF0, 0xF6, 0x00, 0xC0, 0x18, 0x0F, 0x81, 0xF0, 0x77, - 0xBF, 0xCF, 0x06, 0x03, 0x01, 0x83, 0xF9, 0xFC, 0x3F, 0xFF, 0xC3, 0xFC, - 0x3F, 0xC3, 0xFF, 0xFC, 0x60, 0x60, 0x60, 0xFE, 0xFE, 0x60, 0x60, 0x60, - 0x61, 0x7F, 0x3E, 0xE7, 0x73, 0x98, 0xCC, 0x66, 0x33, 0x19, 0xFE, 0x7F, - 0xFB, 0xFF, 0x7C, 0xC6, 0x18, 0xC1, 0xB0, 0x36, 0x03, 0x80, 0x70, 0xF1, - 0xFE, 0x3D, 0xBB, 0x37, 0x63, 0xF8, 0x77, 0x0E, 0xE1, 0x8C, 0xF7, 0xFB, - 0xCD, 0x83, 0x83, 0xC3, 0xBB, 0xDF, 0xEF, 0xF3, 0xFC, 0xF6, 0x18, 0xCC, - 0x33, 0x07, 0x81, 0xE0, 0x30, 0x0C, 0x06, 0x0F, 0xC3, 0xF0, 0xFF, 0xFF, - 0x30, 0xC3, 0x0C, 0x7F, 0xFF, 0x37, 0x66, 0x66, 0xCC, 0x66, 0x66, 0x73, - 0xFF, 0xFF, 0xFF, 0xF0, 0xCE, 0x66, 0x66, 0x33, 0x66, 0x66, 0xEC, 0x70, - 0x7C, 0xF3, 0xC0, 0xC0}; - -const GFXglyph FreeMonoBold9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 3, 11, 11, 4, -10}, // 0x21 '!' - {5, 7, 5, 11, 2, -10}, // 0x22 '"' - {10, 8, 12, 11, 1, -10}, // 0x23 '#' - {22, 7, 14, 11, 2, -11}, // 0x24 '$' - {35, 7, 11, 11, 2, -10}, // 0x25 '%' - {45, 8, 10, 11, 1, -9}, // 0x26 '&' - {55, 3, 5, 11, 4, -10}, // 0x27 ''' - {57, 4, 14, 11, 5, -10}, // 0x28 '(' - {64, 4, 14, 11, 2, -10}, // 0x29 ')' - {71, 8, 7, 11, 2, -10}, // 0x2A '*' - {78, 8, 9, 11, 2, -8}, // 0x2B '+' - {87, 3, 5, 11, 3, -1}, // 0x2C ',' - {89, 9, 2, 11, 1, -5}, // 0x2D '-' - {92, 2, 2, 11, 4, -1}, // 0x2E '.' - {93, 7, 15, 11, 2, -12}, // 0x2F '/' - {107, 7, 12, 11, 2, -11}, // 0x30 '0' - {118, 7, 11, 11, 2, -10}, // 0x31 '1' - {128, 8, 12, 11, 1, -11}, // 0x32 '2' - {140, 8, 12, 11, 2, -11}, // 0x33 '3' - {152, 7, 10, 11, 2, -9}, // 0x34 '4' - {161, 9, 11, 11, 1, -10}, // 0x35 '5' - {174, 8, 12, 11, 2, -11}, // 0x36 '6' - {186, 8, 11, 11, 1, -10}, // 0x37 '7' - {197, 7, 12, 11, 2, -11}, // 0x38 '8' - {208, 8, 12, 11, 2, -11}, // 0x39 '9' - {220, 2, 8, 11, 4, -7}, // 0x3A ':' - {222, 3, 11, 11, 3, -7}, // 0x3B ';' - {227, 9, 8, 11, 1, -8}, // 0x3C '<' - {236, 9, 6, 11, 1, -7}, // 0x3D '=' - {243, 9, 8, 11, 1, -8}, // 0x3E '>' - {252, 8, 11, 11, 2, -10}, // 0x3F '?' - {263, 9, 15, 11, 1, -11}, // 0x40 '@' - {280, 11, 11, 11, 0, -10}, // 0x41 'A' - {296, 10, 11, 11, 1, -10}, // 0x42 'B' - {310, 9, 11, 11, 1, -10}, // 0x43 'C' - {323, 10, 11, 11, 0, -10}, // 0x44 'D' - {337, 9, 11, 11, 1, -10}, // 0x45 'E' - {350, 9, 11, 11, 1, -10}, // 0x46 'F' - {363, 10, 11, 11, 1, -10}, // 0x47 'G' - {377, 9, 11, 11, 1, -10}, // 0x48 'H' - {390, 6, 11, 11, 3, -10}, // 0x49 'I' - {399, 10, 11, 11, 1, -10}, // 0x4A 'J' - {413, 10, 11, 11, 1, -10}, // 0x4B 'K' - {427, 9, 11, 11, 1, -10}, // 0x4C 'L' - {440, 11, 11, 11, 0, -10}, // 0x4D 'M' - {456, 11, 11, 11, 0, -10}, // 0x4E 'N' - {472, 11, 11, 11, 0, -10}, // 0x4F 'O' - {488, 9, 11, 11, 1, -10}, // 0x50 'P' - {501, 11, 14, 11, 0, -10}, // 0x51 'Q' - {521, 9, 11, 11, 1, -10}, // 0x52 'R' - {534, 9, 11, 11, 1, -10}, // 0x53 'S' - {547, 9, 11, 11, 1, -10}, // 0x54 'T' - {560, 11, 11, 11, 0, -10}, // 0x55 'U' - {576, 11, 11, 11, 0, -10}, // 0x56 'V' - {592, 10, 11, 11, 0, -10}, // 0x57 'W' - {606, 10, 11, 11, 0, -10}, // 0x58 'X' - {620, 10, 11, 11, 0, -10}, // 0x59 'Y' - {634, 8, 11, 11, 2, -10}, // 0x5A 'Z' - {645, 4, 14, 11, 5, -10}, // 0x5B '[' - {652, 7, 15, 11, 2, -12}, // 0x5C '\' - {666, 4, 14, 11, 2, -10}, // 0x5D ']' - {673, 7, 6, 11, 2, -11}, // 0x5E '^' - {679, 11, 2, 11, 0, 3}, // 0x5F '_' - {682, 3, 3, 11, 3, -11}, // 0x60 '`' - {684, 9, 8, 11, 1, -7}, // 0x61 'a' - {693, 10, 11, 11, 0, -10}, // 0x62 'b' - {707, 9, 8, 11, 1, -7}, // 0x63 'c' - {716, 10, 11, 11, 1, -10}, // 0x64 'd' - {730, 9, 8, 11, 1, -7}, // 0x65 'e' - {739, 8, 11, 11, 2, -10}, // 0x66 'f' - {750, 9, 12, 11, 1, -7}, // 0x67 'g' - {764, 9, 11, 11, 1, -10}, // 0x68 'h' - {777, 8, 11, 11, 2, -10}, // 0x69 'i' - {788, 6, 15, 11, 2, -10}, // 0x6A 'j' - {800, 9, 11, 11, 1, -10}, // 0x6B 'k' - {813, 8, 11, 11, 2, -10}, // 0x6C 'l' - {824, 11, 8, 11, 0, -7}, // 0x6D 'm' - {835, 9, 8, 11, 1, -7}, // 0x6E 'n' - {844, 9, 8, 11, 1, -7}, // 0x6F 'o' - {853, 11, 12, 11, 0, -7}, // 0x70 'p' - {870, 11, 12, 11, 0, -7}, // 0x71 'q' - {887, 9, 8, 11, 1, -7}, // 0x72 'r' - {896, 8, 8, 11, 2, -7}, // 0x73 's' - {904, 8, 11, 11, 1, -10}, // 0x74 't' - {915, 9, 8, 11, 1, -7}, // 0x75 'u' - {924, 11, 8, 11, 0, -7}, // 0x76 'v' - {935, 11, 8, 11, 0, -7}, // 0x77 'w' - {946, 9, 8, 11, 1, -7}, // 0x78 'x' - {955, 10, 12, 11, 0, -7}, // 0x79 'y' - {970, 7, 8, 11, 2, -7}, // 0x7A 'z' - {977, 4, 14, 11, 3, -10}, // 0x7B '{' - {984, 2, 14, 11, 5, -10}, // 0x7C '|' - {988, 4, 14, 11, 4, -10}, // 0x7D '}' - {995, 9, 4, 11, 1, -6}}; // 0x7E '~' - -const GFXfont FreeMonoBold9pt7b PROGMEM = {(uint8_t *)FreeMonoBold9pt7bBitmaps, - (GFXglyph *)FreeMonoBold9pt7bGlyphs, - 0x20, 0x7E, 18}; - -// Approx. 1672 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h deleted file mode 100644 index 095fdd3..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique12pt7b.h +++ /dev/null @@ -1,271 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique12pt7bBitmaps[] PROGMEM = { - 0x1C, 0xF3, 0xCE, 0x38, 0xE7, 0x1C, 0x61, 0x86, 0x00, 0x63, 0x8C, 0x00, - 0xE7, 0xE7, 0xE6, 0xC6, 0xC6, 0xC4, 0x84, 0x03, 0x30, 0x19, 0x81, 0xDC, - 0x0C, 0xE0, 0x66, 0x1F, 0xFC, 0xFF, 0xE1, 0x98, 0x0C, 0xC0, 0xEE, 0x06, - 0x70, 0xFF, 0xCF, 0xFE, 0x1D, 0xC0, 0xCC, 0x06, 0x60, 0x77, 0x03, 0x30, - 0x00, 0x01, 0x00, 0x70, 0x0C, 0x07, 0xF1, 0xFE, 0x71, 0xCC, 0x11, 0x80, - 0x3F, 0x03, 0xF0, 0x0F, 0x20, 0x6E, 0x0D, 0xC3, 0x3F, 0xE7, 0xF8, 0x1C, - 0x03, 0x00, 0x60, 0x0C, 0x00, 0x0E, 0x03, 0xE0, 0xC4, 0x10, 0x82, 0x30, - 0x7C, 0x07, 0x78, 0x7C, 0x7F, 0x19, 0xF0, 0x62, 0x08, 0x41, 0x18, 0x3E, - 0x03, 0x80, 0x07, 0xC1, 0xF8, 0x62, 0x0C, 0x01, 0x80, 0x38, 0x0F, 0x03, - 0xF7, 0x6F, 0xD8, 0xF3, 0x1E, 0x7F, 0xE7, 0xF8, 0xFF, 0x6D, 0x20, 0x06, - 0x1C, 0x70, 0xC3, 0x06, 0x18, 0x30, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, - 0x70, 0x60, 0xC1, 0x00, 0x0C, 0x18, 0x38, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x30, 0x61, 0xC3, 0x0E, 0x38, 0x61, 0xC2, 0x00, 0x06, 0x00, 0xC0, - 0x18, 0x3F, 0x7F, 0xFE, 0xFF, 0x07, 0x81, 0xF8, 0x77, 0x0C, 0x60, 0x03, - 0x00, 0x70, 0x07, 0x00, 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0xE0, 0x0C, - 0x00, 0xC0, 0x0C, 0x01, 0xC0, 0x18, 0x00, 0x1C, 0xE3, 0x1C, 0x63, 0x08, - 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x7F, 0x00, 0x00, 0x08, 0x00, 0x70, 0x01, - 0x80, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x0C, 0x00, 0x70, 0x03, 0x80, 0x0C, - 0x00, 0x70, 0x03, 0x80, 0x0C, 0x00, 0x70, 0x03, 0x80, 0x0C, 0x00, 0x70, - 0x03, 0x80, 0x0C, 0x00, 0x20, 0x00, 0x07, 0x83, 0xF8, 0xE3, 0x98, 0x37, - 0x06, 0xC0, 0xD8, 0x1B, 0x03, 0xE0, 0xF8, 0x1B, 0x03, 0x60, 0xEE, 0x38, - 0xFE, 0x0F, 0x00, 0x03, 0xC1, 0xF0, 0x7E, 0x0C, 0xC0, 0x38, 0x07, 0x00, - 0xC0, 0x18, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, 0x61, 0xFF, 0xFF, 0xF0, - 0x03, 0xE0, 0x3F, 0x83, 0x8E, 0x38, 0x31, 0x81, 0x80, 0x18, 0x01, 0xC0, - 0x1C, 0x01, 0xC0, 0x38, 0x03, 0x80, 0x38, 0x47, 0x87, 0x3F, 0xF3, 0xFF, - 0x80, 0x07, 0xC1, 0xFF, 0x18, 0x70, 0x03, 0x00, 0x30, 0x06, 0x07, 0xC0, - 0x7C, 0x00, 0xE0, 0x06, 0x00, 0x60, 0x06, 0xC1, 0xCF, 0xF8, 0x7E, 0x00, - 0x01, 0xE0, 0x3C, 0x0F, 0x03, 0x60, 0xCC, 0x3B, 0x8E, 0x63, 0x8C, 0x61, - 0x9F, 0xFB, 0xFF, 0x01, 0x81, 0xF8, 0x3F, 0x00, 0x0F, 0xF1, 0xFE, 0x18, - 0x01, 0x80, 0x18, 0x03, 0xF8, 0x3F, 0xC3, 0x8E, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x0C, 0xC1, 0xCF, 0xF8, 0x7E, 0x00, 0x03, 0xE1, 0xFC, 0x70, 0x1C, - 0x03, 0x00, 0xC0, 0x1B, 0xC7, 0xFC, 0xF3, 0x98, 0x33, 0x06, 0x60, 0xCE, - 0x30, 0xFC, 0x0F, 0x00, 0xFF, 0xFF, 0xFB, 0x07, 0x60, 0xC0, 0x38, 0x06, - 0x01, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x70, 0x1C, 0x03, 0x80, 0x60, 0x08, - 0x00, 0x07, 0x83, 0xF8, 0xE3, 0xB0, 0x36, 0x06, 0xC0, 0xDC, 0x31, 0xFC, - 0x3F, 0x8C, 0x3B, 0x03, 0x60, 0x6C, 0x39, 0xFE, 0x1F, 0x00, 0x07, 0x81, - 0xF8, 0x63, 0x98, 0x33, 0x06, 0x60, 0xCE, 0x79, 0xFF, 0x1E, 0xC0, 0x18, - 0x06, 0x01, 0xC0, 0x71, 0xFC, 0x3E, 0x00, 0x19, 0xCC, 0x00, 0x00, 0x00, - 0x67, 0x30, 0x06, 0x1C, 0x30, 0x00, 0x00, 0x00, 0x00, 0x38, 0x71, 0xC3, - 0x0E, 0x18, 0x20, 0x00, 0x00, 0x18, 0x03, 0xC0, 0x7C, 0x1F, 0x03, 0xE0, - 0x3E, 0x00, 0x7C, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0x80, 0x08, 0x7F, 0xFB, - 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFB, 0xFF, 0xC0, 0x30, 0x01, - 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0x7C, 0x1F, 0x03, 0xE0, 0x7C, - 0x07, 0x80, 0x20, 0x00, 0x3E, 0x7F, 0xB0, 0xF8, 0x30, 0x18, 0x1C, 0x1C, - 0x3C, 0x38, 0x18, 0x00, 0x06, 0x07, 0x03, 0x00, 0x03, 0xC0, 0x7E, 0x0C, - 0x71, 0x83, 0x30, 0x33, 0x0F, 0x33, 0xE6, 0x76, 0x6C, 0x66, 0xC6, 0x6C, - 0x6C, 0xFC, 0xC7, 0xEC, 0x00, 0xC0, 0x0C, 0x00, 0xE3, 0x07, 0xF0, 0x3C, - 0x00, 0x07, 0xF0, 0x1F, 0xE0, 0x07, 0xC0, 0x1F, 0x80, 0x3B, 0x00, 0xE7, - 0x01, 0x8E, 0x07, 0x1C, 0x1F, 0xF8, 0x3F, 0xF0, 0xE0, 0x71, 0x80, 0xEF, - 0xC7, 0xFF, 0x8F, 0xC0, 0x3F, 0xF1, 0xFF, 0xC3, 0x06, 0x38, 0x31, 0xC1, - 0x8C, 0x18, 0x7F, 0xC3, 0xFE, 0x38, 0x39, 0xC0, 0xCC, 0x06, 0x60, 0x6F, - 0xFF, 0x7F, 0xE0, 0x03, 0xEC, 0x3F, 0xF1, 0xC3, 0x8C, 0x06, 0x60, 0x19, - 0x80, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x03, 0x3C, 0x1C, - 0x7F, 0xE0, 0x7E, 0x00, 0x3F, 0xE1, 0xFF, 0x87, 0x0C, 0x30, 0x31, 0x81, - 0x8C, 0x0C, 0xE0, 0x67, 0x03, 0x30, 0x31, 0x81, 0x8C, 0x0C, 0xE1, 0xCF, - 0xFC, 0x7F, 0x80, 0x1F, 0xFE, 0x3F, 0xFC, 0x38, 0x38, 0x70, 0x70, 0xCC, - 0xC1, 0x98, 0x03, 0xF0, 0x0F, 0xE0, 0x1D, 0x80, 0x31, 0x18, 0x60, 0x70, - 0xC0, 0xE7, 0xFF, 0x9F, 0xFF, 0x00, 0x1F, 0xFF, 0x1F, 0xFE, 0x0E, 0x06, - 0x0C, 0x0E, 0x0C, 0xC4, 0x0C, 0xC0, 0x1F, 0xC0, 0x1F, 0xC0, 0x19, 0xC0, - 0x19, 0x80, 0x18, 0x00, 0x38, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x07, 0xEC, - 0x7F, 0xF3, 0x83, 0x9C, 0x06, 0x60, 0x19, 0x80, 0x0C, 0x00, 0x30, 0xFE, - 0xC3, 0xFB, 0x01, 0xCC, 0x07, 0x3C, 0x38, 0x7F, 0xE0, 0x7E, 0x00, 0x0F, - 0xBF, 0x1F, 0xBE, 0x0E, 0x0C, 0x0C, 0x0C, 0x0C, 0x1C, 0x0C, 0x1C, 0x1F, - 0xF8, 0x1F, 0xF8, 0x18, 0x18, 0x18, 0x38, 0x18, 0x38, 0x38, 0x30, 0x7C, - 0xFC, 0xFC, 0xF8, 0x3F, 0xF3, 0xFF, 0x03, 0x00, 0x70, 0x07, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xC0, 0xFF, 0xCF, 0xFC, - 0x03, 0xFF, 0x03, 0xFF, 0x00, 0x38, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, - 0x00, 0x70, 0x20, 0x70, 0x60, 0x60, 0x60, 0x60, 0x60, 0xE0, 0xE1, 0xC0, - 0xFF, 0x80, 0x3F, 0x00, 0x1F, 0x9F, 0x1F, 0x9E, 0x0E, 0x38, 0x0C, 0x70, - 0x0C, 0xE0, 0x0F, 0xC0, 0x1F, 0xC0, 0x1F, 0xE0, 0x1C, 0xE0, 0x18, 0x60, - 0x18, 0x70, 0x38, 0x70, 0xFE, 0x3C, 0xFC, 0x3C, 0x3F, 0xC1, 0xFE, 0x01, - 0x80, 0x1C, 0x00, 0xE0, 0x06, 0x00, 0x30, 0x01, 0x80, 0x1C, 0x18, 0xE0, - 0xC6, 0x06, 0x30, 0x7F, 0xFF, 0xFF, 0xF8, 0x1E, 0x07, 0x87, 0x81, 0xE0, - 0xF0, 0xF0, 0x7C, 0x7C, 0x1F, 0x1F, 0x06, 0xCF, 0x81, 0xBF, 0x60, 0xEF, - 0x98, 0x3B, 0xEE, 0x0C, 0x73, 0x83, 0x1C, 0xC0, 0xC0, 0x30, 0xFC, 0x7E, - 0x3F, 0x1F, 0x80, 0x3C, 0x3F, 0x3E, 0x3F, 0x1E, 0x0C, 0x1F, 0x1C, 0x1F, - 0x1C, 0x1B, 0x98, 0x3B, 0x98, 0x3B, 0x98, 0x31, 0xF8, 0x31, 0xF8, 0x30, - 0xF0, 0x70, 0xF0, 0xFC, 0x70, 0xF8, 0x70, 0x03, 0xE0, 0x3F, 0xE1, 0xC3, - 0x8C, 0x07, 0x60, 0x0D, 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1B, 0x00, - 0x6E, 0x03, 0x1C, 0x38, 0x7F, 0xC0, 0x7C, 0x00, 0x3F, 0xE1, 0xFF, 0x83, - 0x0E, 0x38, 0x31, 0xC1, 0x8C, 0x0C, 0x60, 0xC3, 0xFC, 0x3F, 0xC1, 0xC0, - 0x0C, 0x00, 0x60, 0x0F, 0xF0, 0x7F, 0x80, 0x03, 0xE0, 0x3F, 0xE1, 0xC3, - 0x8C, 0x07, 0x60, 0x0D, 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1B, 0x00, - 0x6E, 0x03, 0x1C, 0x38, 0x7F, 0xC0, 0xFC, 0x03, 0x02, 0x1F, 0xFC, 0xFF, - 0xE0, 0x1F, 0xF0, 0x3F, 0xF0, 0x38, 0x70, 0x60, 0x60, 0xC0, 0xC1, 0x87, - 0x07, 0xFC, 0x0F, 0xF0, 0x18, 0xF0, 0x30, 0xE0, 0x60, 0xC1, 0xC1, 0xCF, - 0xE1, 0xFF, 0xC3, 0xC0, 0x0F, 0xB1, 0xFF, 0x30, 0xE6, 0x06, 0x60, 0x67, - 0x80, 0x7F, 0x01, 0xFC, 0x01, 0xC4, 0x0C, 0xC0, 0xCE, 0x18, 0xFF, 0x8B, - 0xE0, 0x7F, 0xFB, 0xFF, 0xD9, 0xCF, 0xCE, 0x7C, 0x63, 0x63, 0x18, 0x18, - 0x01, 0xC0, 0x0E, 0x00, 0x60, 0x03, 0x00, 0x18, 0x0F, 0xF8, 0x7F, 0xC0, - 0x7E, 0xFF, 0xF3, 0xF3, 0x03, 0x1C, 0x0C, 0x60, 0x31, 0x81, 0xC6, 0x06, - 0x38, 0x18, 0xE0, 0x63, 0x03, 0x8C, 0x0C, 0x30, 0x70, 0x7F, 0x80, 0xF8, - 0x00, 0xFC, 0x7F, 0xF8, 0xFD, 0xC0, 0x61, 0x81, 0xC3, 0x87, 0x07, 0x0C, - 0x0E, 0x38, 0x0C, 0x60, 0x19, 0xC0, 0x3F, 0x00, 0x7C, 0x00, 0xF8, 0x00, - 0xE0, 0x01, 0x80, 0x00, 0x7E, 0x7E, 0xFC, 0xFD, 0xC0, 0x73, 0x9C, 0xE7, - 0x79, 0x8E, 0xF7, 0x1B, 0xEE, 0x36, 0xD8, 0x7D, 0xF0, 0xF3, 0xE1, 0xE7, - 0x83, 0x8F, 0x07, 0x1E, 0x1C, 0x38, 0x00, 0x1F, 0x1F, 0x1F, 0x1F, 0x0E, - 0x1C, 0x07, 0x38, 0x07, 0x70, 0x03, 0xE0, 0x03, 0xC0, 0x03, 0xC0, 0x07, - 0xE0, 0x0E, 0xE0, 0x1C, 0x70, 0x38, 0x70, 0xFC, 0xFC, 0xFC, 0xFC, 0xF8, - 0xFF, 0xC7, 0xCC, 0x38, 0x73, 0x83, 0x9C, 0x0F, 0xC0, 0x7C, 0x01, 0xC0, - 0x0C, 0x00, 0x60, 0x03, 0x00, 0x38, 0x0F, 0xF8, 0x7F, 0x80, 0x0F, 0xF8, - 0x7F, 0xE1, 0xC7, 0x86, 0x1C, 0x18, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, - 0x0E, 0x00, 0x70, 0xC3, 0x83, 0x1C, 0x1C, 0x7F, 0xF3, 0xFF, 0x80, 0x0F, - 0x87, 0xC3, 0x03, 0x81, 0xC0, 0xC0, 0x60, 0x30, 0x38, 0x1C, 0x0C, 0x06, - 0x03, 0x03, 0x81, 0xC0, 0xC0, 0x60, 0x3E, 0x3F, 0x00, 0x41, 0xC3, 0x83, - 0x07, 0x0E, 0x1C, 0x18, 0x38, 0x70, 0xE0, 0xC1, 0xC3, 0x83, 0x06, 0x0E, - 0x1C, 0x18, 0x20, 0x1F, 0x0F, 0x80, 0xC0, 0xE0, 0x70, 0x30, 0x18, 0x0C, - 0x0E, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xE0, 0x70, 0x30, 0x18, 0x7C, 0x3E, - 0x00, 0x02, 0x01, 0x80, 0xF0, 0x7E, 0x3B, 0x9C, 0x7E, 0x1F, 0x03, 0xFF, - 0xFF, 0xFF, 0xFC, 0xCE, 0x73, 0x1F, 0xC3, 0xFE, 0x00, 0x60, 0x06, 0x0F, - 0xE3, 0xFE, 0x70, 0xCC, 0x0C, 0xC3, 0xCF, 0xFF, 0x7F, 0xF0, 0x1E, 0x00, - 0x3C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xDF, 0x81, 0xFF, 0x83, 0xC3, 0x8F, - 0x03, 0x1C, 0x06, 0x38, 0x0C, 0x70, 0x18, 0xE0, 0x63, 0xE1, 0x9F, 0xFE, - 0x3D, 0xF8, 0x00, 0x0F, 0xF3, 0xFF, 0x30, 0x76, 0x07, 0xE0, 0x6C, 0x00, - 0xC0, 0x0C, 0x00, 0xE0, 0x67, 0xFE, 0x3F, 0x80, 0x00, 0x3C, 0x00, 0xF0, - 0x01, 0xC0, 0x06, 0x07, 0xD8, 0x7F, 0xE3, 0x0F, 0x98, 0x1E, 0x60, 0x73, - 0x01, 0xCC, 0x07, 0x30, 0x3C, 0xE1, 0xF1, 0xFF, 0xE3, 0xF7, 0x80, 0x0F, - 0xC1, 0xFE, 0x78, 0x76, 0x03, 0xFF, 0xFF, 0xFF, 0xC0, 0x0C, 0x00, 0xE0, - 0xE7, 0xFE, 0x1F, 0x80, 0x00, 0xFC, 0x07, 0xF8, 0x0C, 0x00, 0x38, 0x01, - 0xFF, 0x07, 0xFE, 0x01, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x18, 0x00, 0x30, - 0x00, 0x60, 0x01, 0xC0, 0x1F, 0xF8, 0x3F, 0xF0, 0x00, 0x0F, 0xBC, 0x7F, - 0xF3, 0x0F, 0x18, 0x1C, 0xC0, 0x73, 0x01, 0x8C, 0x0E, 0x30, 0x38, 0xE3, - 0xE1, 0xFF, 0x83, 0xEC, 0x00, 0x30, 0x01, 0xC0, 0x06, 0x07, 0xF0, 0x1F, - 0x80, 0x1E, 0x01, 0xF0, 0x03, 0x00, 0x18, 0x00, 0xDE, 0x0F, 0xF8, 0x78, - 0xC3, 0x86, 0x18, 0x30, 0xC1, 0x8E, 0x1C, 0x70, 0xE3, 0x06, 0x7E, 0xFF, - 0xE7, 0xE0, 0x03, 0x80, 0x70, 0x00, 0x0F, 0xC1, 0xF0, 0x06, 0x00, 0xC0, - 0x38, 0x07, 0x00, 0xC0, 0x18, 0x03, 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x70, - 0x07, 0x00, 0x00, 0xFF, 0x1F, 0xF0, 0x07, 0x00, 0x70, 0x06, 0x00, 0x60, - 0x06, 0x00, 0xE0, 0x0E, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x1C, 0x03, 0x87, - 0xF0, 0xFE, 0x00, 0x1E, 0x00, 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0C, 0xFC, - 0x33, 0xE0, 0xDE, 0x07, 0xE0, 0x1F, 0x00, 0x7C, 0x01, 0xF8, 0x06, 0xF0, - 0x39, 0xC3, 0xE7, 0xEF, 0x1F, 0x80, 0x0F, 0x81, 0xF0, 0x06, 0x01, 0xC0, - 0x38, 0x06, 0x00, 0xC0, 0x18, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, 0x61, - 0xFF, 0xFF, 0xF8, 0x3F, 0xBC, 0x7F, 0xFC, 0xF3, 0x98, 0xC6, 0x33, 0x9C, - 0xE7, 0x39, 0xCC, 0x63, 0x18, 0xC6, 0x31, 0x8D, 0xF7, 0xBF, 0xEF, 0x78, - 0x3D, 0xE1, 0xFF, 0x8F, 0x8C, 0x38, 0x61, 0x83, 0x0C, 0x18, 0xE1, 0xC7, - 0x0E, 0x30, 0x67, 0xEF, 0xFE, 0x7E, 0x07, 0xC1, 0xFE, 0x38, 0x76, 0x03, - 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x06, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x1E, - 0xFC, 0x1F, 0xFE, 0x0F, 0x87, 0x0F, 0x03, 0x0E, 0x03, 0x0E, 0x03, 0x0E, - 0x07, 0x0E, 0x06, 0x1F, 0x0C, 0x1F, 0xF8, 0x19, 0xF0, 0x18, 0x00, 0x18, - 0x00, 0x38, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0x0F, 0xDE, 0x3F, 0xFC, 0xC3, - 0xE3, 0x03, 0x84, 0x07, 0x18, 0x0E, 0x30, 0x1C, 0x60, 0x78, 0xE1, 0xE0, - 0xFF, 0xC0, 0xF9, 0x80, 0x03, 0x00, 0x0E, 0x00, 0x1C, 0x01, 0xFC, 0x03, - 0xF8, 0x1E, 0x78, 0x7F, 0xF0, 0x7C, 0xC3, 0xC0, 0x0E, 0x00, 0x30, 0x00, - 0xC0, 0x03, 0x00, 0x1C, 0x03, 0xFF, 0x0F, 0xFC, 0x00, 0x07, 0xF1, 0xFF, - 0x30, 0x73, 0x86, 0x3F, 0x81, 0xFE, 0x03, 0xE6, 0x06, 0xE0, 0xEF, 0xFC, - 0xFF, 0x00, 0x0C, 0x07, 0x01, 0x83, 0xFF, 0xFF, 0xCE, 0x03, 0x00, 0xC0, - 0x30, 0x1C, 0x07, 0x01, 0x83, 0x7F, 0xCF, 0xC0, 0xF0, 0xFF, 0x1F, 0x60, - 0x76, 0x07, 0x60, 0x76, 0x06, 0x60, 0x66, 0x0E, 0x61, 0xE7, 0xFF, 0x3E, - 0xF0, 0x7E, 0x7E, 0xFC, 0xFC, 0xE0, 0xC0, 0xC3, 0x81, 0x86, 0x03, 0x98, - 0x07, 0x70, 0x06, 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x38, 0x00, 0xF8, 0x7F, - 0xE3, 0xE6, 0x63, 0x1B, 0xDC, 0x6F, 0x61, 0xFF, 0x87, 0xFC, 0x1E, 0xF0, - 0x73, 0x81, 0xCE, 0x06, 0x38, 0x00, 0x3E, 0x7C, 0xF9, 0xF1, 0xE7, 0x03, - 0xF8, 0x07, 0xC0, 0x1F, 0x01, 0xFC, 0x0F, 0x38, 0x78, 0xFB, 0xF7, 0xEF, - 0x9F, 0x80, 0x1F, 0x1F, 0x3E, 0x1F, 0x1C, 0x1C, 0x0C, 0x18, 0x0E, 0x38, - 0x0E, 0x70, 0x06, 0x60, 0x07, 0xE0, 0x07, 0xC0, 0x07, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x07, 0x00, 0x0E, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x1F, 0xF1, - 0xFF, 0x38, 0xE3, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC6, 0x38, 0x67, - 0xFE, 0x7F, 0xE0, 0x01, 0xC0, 0xF0, 0x70, 0x18, 0x06, 0x03, 0x80, 0xE0, - 0x30, 0x1C, 0x3E, 0x0F, 0x00, 0x60, 0x18, 0x06, 0x03, 0x80, 0xC0, 0x30, - 0x0F, 0x01, 0xC0, 0x0C, 0x71, 0xC7, 0x18, 0x63, 0x8E, 0x30, 0xC3, 0x1C, - 0x71, 0x86, 0x38, 0xE3, 0x04, 0x00, 0x0E, 0x07, 0x80, 0xC0, 0x60, 0x70, - 0x30, 0x18, 0x0C, 0x06, 0x01, 0xC1, 0xE1, 0xC0, 0xC0, 0xE0, 0x70, 0x30, - 0x38, 0x78, 0x38, 0x00, 0x3C, 0x27, 0xE6, 0xEF, 0xCC, 0x38}; - -const GFXglyph FreeMonoBoldOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 6, 15, 14, 6, -14}, // 0x21 '!' - {12, 8, 7, 14, 6, -13}, // 0x22 '"' - {19, 13, 18, 14, 2, -15}, // 0x23 '#' - {49, 11, 20, 14, 3, -16}, // 0x24 '$' - {77, 11, 15, 14, 3, -14}, // 0x25 '%' - {98, 11, 13, 14, 2, -12}, // 0x26 '&' - {116, 3, 7, 14, 8, -13}, // 0x27 ''' - {119, 7, 19, 14, 7, -14}, // 0x28 '(' - {136, 7, 19, 14, 2, -14}, // 0x29 ')' - {153, 11, 10, 14, 4, -14}, // 0x2A '*' - {167, 12, 13, 14, 3, -12}, // 0x2B '+' - {187, 6, 7, 14, 3, -2}, // 0x2C ',' - {193, 13, 2, 14, 2, -7}, // 0x2D '-' - {197, 3, 3, 14, 6, -2}, // 0x2E '.' - {199, 14, 20, 14, 2, -16}, // 0x2F '/' - {234, 11, 15, 14, 3, -14}, // 0x30 '0' - {255, 11, 15, 14, 2, -14}, // 0x31 '1' - {276, 13, 15, 14, 1, -14}, // 0x32 '2' - {301, 12, 15, 14, 2, -14}, // 0x33 '3' - {324, 11, 14, 14, 3, -13}, // 0x34 '4' - {344, 12, 15, 14, 2, -14}, // 0x35 '5' - {367, 11, 15, 14, 4, -14}, // 0x36 '6' - {388, 11, 15, 14, 4, -14}, // 0x37 '7' - {409, 11, 15, 14, 3, -14}, // 0x38 '8' - {430, 11, 15, 14, 3, -14}, // 0x39 '9' - {451, 5, 11, 14, 5, -10}, // 0x3A ':' - {458, 7, 15, 14, 3, -10}, // 0x3B ';' - {472, 13, 11, 14, 2, -11}, // 0x3C '<' - {490, 13, 7, 14, 2, -9}, // 0x3D '=' - {502, 13, 11, 14, 2, -11}, // 0x3E '>' - {520, 9, 14, 14, 5, -13}, // 0x3F '?' - {536, 12, 19, 14, 2, -14}, // 0x40 '@' - {565, 15, 14, 14, 0, -13}, // 0x41 'A' - {592, 13, 14, 14, 1, -13}, // 0x42 'B' - {615, 14, 14, 14, 2, -13}, // 0x43 'C' - {640, 13, 14, 14, 1, -13}, // 0x44 'D' - {663, 15, 14, 14, 0, -13}, // 0x45 'E' - {690, 16, 14, 14, 0, -13}, // 0x46 'F' - {718, 14, 14, 14, 1, -13}, // 0x47 'G' - {743, 16, 14, 14, 0, -13}, // 0x48 'H' - {771, 12, 14, 14, 2, -13}, // 0x49 'I' - {792, 16, 14, 14, 0, -13}, // 0x4A 'J' - {820, 16, 14, 14, 0, -13}, // 0x4B 'K' - {848, 13, 14, 14, 1, -13}, // 0x4C 'L' - {871, 18, 14, 14, 0, -13}, // 0x4D 'M' - {903, 16, 14, 14, 1, -13}, // 0x4E 'N' - {931, 14, 14, 14, 1, -13}, // 0x4F 'O' - {956, 13, 14, 14, 1, -13}, // 0x50 'P' - {979, 14, 17, 14, 1, -13}, // 0x51 'Q' - {1009, 15, 14, 14, 0, -13}, // 0x52 'R' - {1036, 12, 14, 14, 3, -13}, // 0x53 'S' - {1057, 13, 14, 14, 2, -13}, // 0x54 'T' - {1080, 14, 14, 14, 2, -13}, // 0x55 'U' - {1105, 15, 14, 14, 1, -13}, // 0x56 'V' - {1132, 15, 14, 14, 1, -13}, // 0x57 'W' - {1159, 16, 14, 14, 0, -13}, // 0x58 'X' - {1187, 13, 14, 14, 2, -13}, // 0x59 'Y' - {1210, 14, 14, 14, 1, -13}, // 0x5A 'Z' - {1235, 9, 19, 14, 5, -14}, // 0x5B '[' - {1257, 7, 20, 14, 5, -16}, // 0x5C '\' - {1275, 9, 19, 14, 3, -14}, // 0x5D ']' - {1297, 10, 8, 14, 4, -15}, // 0x5E '^' - {1307, 15, 2, 14, -1, 4}, // 0x5F '_' - {1311, 4, 4, 14, 7, -15}, // 0x60 '`' - {1313, 12, 11, 14, 2, -10}, // 0x61 'a' - {1330, 15, 15, 14, -1, -14}, // 0x62 'b' - {1359, 12, 11, 14, 2, -10}, // 0x63 'c' - {1376, 14, 15, 14, 2, -14}, // 0x64 'd' - {1403, 12, 11, 14, 2, -10}, // 0x65 'e' - {1420, 15, 15, 14, 2, -14}, // 0x66 'f' - {1449, 14, 16, 14, 2, -10}, // 0x67 'g' - {1477, 13, 15, 14, 1, -14}, // 0x68 'h' - {1502, 11, 14, 14, 2, -13}, // 0x69 'i' - {1522, 12, 19, 14, 1, -13}, // 0x6A 'j' - {1551, 14, 15, 14, 1, -14}, // 0x6B 'k' - {1578, 11, 15, 14, 2, -14}, // 0x6C 'l' - {1599, 15, 11, 14, 0, -10}, // 0x6D 'm' - {1620, 13, 11, 14, 1, -10}, // 0x6E 'n' - {1638, 12, 11, 14, 2, -10}, // 0x6F 'o' - {1655, 16, 16, 14, -1, -10}, // 0x70 'p' - {1687, 15, 16, 14, 1, -10}, // 0x71 'q' - {1717, 14, 11, 14, 1, -10}, // 0x72 'r' - {1737, 12, 11, 14, 2, -10}, // 0x73 's' - {1754, 10, 14, 14, 2, -13}, // 0x74 't' - {1772, 12, 11, 14, 2, -10}, // 0x75 'u' - {1789, 15, 11, 14, 1, -10}, // 0x76 'v' - {1810, 14, 11, 14, 2, -10}, // 0x77 'w' - {1830, 14, 11, 14, 1, -10}, // 0x78 'x' - {1850, 16, 16, 14, 0, -10}, // 0x79 'y' - {1882, 12, 11, 14, 2, -10}, // 0x7A 'z' - {1899, 10, 19, 14, 4, -14}, // 0x7B '{' - {1923, 6, 19, 14, 5, -14}, // 0x7C '|' - {1938, 9, 19, 14, 3, -14}, // 0x7D '}' - {1960, 12, 4, 14, 3, -7}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique12pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique12pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique12pt7bGlyphs, 0x20, 0x7E, 24}; - -// Approx. 2638 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h deleted file mode 100644 index 0400f25..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique18pt7b.h +++ /dev/null @@ -1,462 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique18pt7bBitmaps[] PROGMEM = { - 0x0F, 0x07, 0xC7, 0xE3, 0xF1, 0xF0, 0xF8, 0xFC, 0x7C, 0x3E, 0x1F, 0x0F, - 0x07, 0x87, 0xC3, 0xC1, 0xE0, 0x60, 0x00, 0x38, 0x3E, 0x1F, 0x0F, 0x83, - 0x80, 0xF8, 0xFF, 0x0E, 0xF1, 0xEF, 0x1E, 0xE1, 0xCE, 0x1C, 0xC1, 0xCC, - 0x18, 0xC1, 0x88, 0x18, 0x00, 0xE3, 0x80, 0x79, 0xE0, 0x1C, 0x70, 0x07, - 0x1C, 0x03, 0xCF, 0x00, 0xF3, 0xC0, 0x38, 0xE0, 0x7F, 0xFF, 0x3F, 0xFF, - 0xCF, 0xFF, 0xF3, 0xFF, 0xF8, 0x3C, 0xF0, 0x0F, 0x3C, 0x03, 0x8E, 0x0F, - 0xFF, 0xE3, 0xFF, 0xFC, 0xFF, 0xFF, 0x3F, 0xFF, 0x83, 0xCF, 0x00, 0xF3, - 0xC0, 0x38, 0xE0, 0x1E, 0x78, 0x07, 0x9E, 0x01, 0xC7, 0x00, 0x71, 0xC0, - 0x00, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x07, 0x80, 0x03, 0xF0, 0x03, 0xFF, - 0x81, 0xFF, 0xF0, 0xFF, 0xF8, 0x3C, 0x1E, 0x1E, 0x07, 0x87, 0x80, 0x01, - 0xF0, 0x00, 0x7F, 0xC0, 0x0F, 0xFC, 0x01, 0xFF, 0x80, 0x07, 0xF0, 0x00, - 0x3C, 0x70, 0x0F, 0x3C, 0x03, 0xCF, 0x83, 0xE3, 0xFF, 0xF8, 0xFF, 0xFC, - 0x3F, 0xFE, 0x0C, 0xFE, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, - 0xF0, 0x00, 0x18, 0x00, 0x03, 0xC0, 0x0F, 0xE0, 0x1C, 0x70, 0x30, 0x30, - 0x30, 0x30, 0x30, 0x70, 0x38, 0xE0, 0x1F, 0xC3, 0x0F, 0x1F, 0x01, 0xFC, - 0x0F, 0xE0, 0x7F, 0x00, 0xF8, 0xF0, 0x83, 0xF8, 0x07, 0x1C, 0x0E, 0x0C, - 0x0C, 0x0C, 0x0C, 0x1C, 0x0E, 0x38, 0x07, 0xF0, 0x03, 0xC0, 0x00, 0x7A, - 0x01, 0xFF, 0x03, 0xFF, 0x07, 0xFE, 0x0F, 0x9C, 0x0F, 0x00, 0x0F, 0x00, - 0x0F, 0x00, 0x07, 0x80, 0x1F, 0x80, 0x3F, 0xC0, 0x7F, 0xCF, 0x79, 0xFF, - 0xF1, 0xFE, 0xF1, 0xFC, 0xF0, 0xF8, 0xFF, 0xFE, 0xFF, 0xFE, 0x7F, 0xFE, - 0x1F, 0xBC, 0x7B, 0xFD, 0xEF, 0x73, 0x9C, 0xC6, 0x00, 0x01, 0xC0, 0xF0, - 0x3C, 0x1E, 0x0F, 0x03, 0xC1, 0xE0, 0x70, 0x3C, 0x0F, 0x07, 0x81, 0xE0, - 0x78, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3E, - 0x07, 0x81, 0xE0, 0x7C, 0x1F, 0x03, 0x80, 0x07, 0x03, 0xC0, 0xF8, 0x3E, - 0x07, 0x81, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, - 0xF0, 0x78, 0x1E, 0x07, 0x81, 0xC0, 0xF0, 0x3C, 0x1E, 0x07, 0x83, 0xC1, - 0xE0, 0x78, 0x3C, 0x0E, 0x00, 0x00, 0xC0, 0x03, 0xC0, 0x07, 0x00, 0x0E, - 0x02, 0x3C, 0x0F, 0xFF, 0xFF, 0xFF, 0xBF, 0xFE, 0x1F, 0xF0, 0x1F, 0x80, - 0x7F, 0x81, 0xEF, 0x07, 0x8F, 0x0F, 0x1E, 0x08, 0x10, 0x00, 0x00, 0x70, - 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x38, 0x00, - 0x1E, 0x03, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x0F, - 0x00, 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x07, 0x80, - 0x01, 0xC0, 0x00, 0x70, 0x00, 0x0F, 0x87, 0x87, 0x83, 0x83, 0xC1, 0xC1, - 0xC0, 0xC0, 0xE0, 0x60, 0x00, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, 0x38, 0x00, 0x03, 0xC0, - 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, - 0x78, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, - 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0xFC, 0x01, 0xFF, - 0x01, 0xFF, 0xC1, 0xFF, 0xE1, 0xF1, 0xF9, 0xE0, 0x7C, 0xF0, 0x1E, 0xF0, - 0x0F, 0x78, 0x07, 0xB8, 0x03, 0x9C, 0x03, 0xDE, 0x01, 0xCF, 0x00, 0xE7, - 0x00, 0x73, 0xC0, 0x79, 0xE0, 0x3C, 0xF0, 0x1C, 0x78, 0x1E, 0x3E, 0x1E, - 0x0F, 0xFF, 0x07, 0xFF, 0x01, 0xFF, 0x00, 0x7E, 0x00, 0x00, 0x7C, 0x03, - 0xF8, 0x0F, 0xE0, 0x7F, 0xC0, 0xF7, 0x81, 0x8F, 0x00, 0x1C, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, 0x00, 0x3C, 0x00, - 0x78, 0x00, 0xF0, 0x01, 0xC0, 0x03, 0x81, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xEF, 0xFF, 0xC0, 0x00, 0x1F, 0x00, 0x07, 0xFC, 0x00, 0xFF, 0xE0, 0x1F, - 0xFF, 0x03, 0xC1, 0xF0, 0x78, 0x0F, 0x07, 0x80, 0xF0, 0x70, 0x0F, 0x00, - 0x01, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x3F, 0x00, - 0x07, 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x07, 0xE0, 0x01, 0xF8, 0x00, - 0x3F, 0x03, 0x87, 0xFF, 0xF8, 0x7F, 0xFF, 0x87, 0xFF, 0xF8, 0xFF, 0xFF, - 0x00, 0x00, 0xFE, 0x00, 0xFF, 0xC0, 0x7F, 0xF8, 0x3F, 0xFF, 0x0E, 0x07, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x1F, 0xC0, - 0x0F, 0xE0, 0x03, 0xF0, 0x00, 0xFF, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, - 0x1E, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xF1, 0xFF, 0xF8, 0xFF, 0xFC, - 0x3F, 0xFE, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0x00, 0x3F, 0x00, 0x7F, 0x00, - 0xFE, 0x00, 0xFE, 0x01, 0xEE, 0x03, 0xDE, 0x07, 0x9E, 0x0F, 0x1C, 0x1E, - 0x1C, 0x3C, 0x3C, 0x78, 0x3C, 0xFF, 0xFE, 0xFF, 0xFE, 0xFF, 0xFE, 0xFF, - 0xFC, 0x00, 0x70, 0x03, 0xFC, 0x07, 0xFC, 0x07, 0xFC, 0x07, 0xF8, 0x07, - 0xFF, 0xC1, 0xFF, 0xF0, 0x7F, 0xFC, 0x3F, 0xFE, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xE0, 0x00, 0x3B, 0xE0, 0x1F, 0xFE, 0x07, 0xFF, 0xC1, 0xFF, 0xF8, - 0x78, 0x3E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, - 0x0F, 0x18, 0x0F, 0xCF, 0xFF, 0xE3, 0xFF, 0xF0, 0x7F, 0xF8, 0x07, 0xF0, - 0x00, 0x00, 0x0F, 0xC0, 0x0F, 0xFC, 0x03, 0xFF, 0x81, 0xFF, 0xE0, 0x7F, - 0x00, 0x1F, 0x80, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x9F, - 0x01, 0xEF, 0xF0, 0x3F, 0xFF, 0x0F, 0xFF, 0xF1, 0xFC, 0x3E, 0x3E, 0x03, - 0xC7, 0x80, 0x78, 0xF0, 0x0F, 0x1E, 0x03, 0xC3, 0xE0, 0xF8, 0x7F, 0xFE, - 0x07, 0xFF, 0x80, 0x7F, 0xE0, 0x07, 0xF0, 0x00, 0x7F, 0xFF, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x0E, 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x3C, - 0x00, 0x78, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xC0, - 0x03, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x0F, 0x00, 0x0E, 0x00, 0x1E, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x03, - 0xFF, 0xF0, 0xF8, 0x3E, 0x3E, 0x03, 0xC7, 0x80, 0x78, 0xF0, 0x0F, 0x1E, - 0x03, 0xC3, 0xE0, 0xF0, 0x3F, 0xFC, 0x03, 0xFF, 0x00, 0xFF, 0xE0, 0x7F, - 0xFE, 0x1F, 0x83, 0xE3, 0xC0, 0x3C, 0xF0, 0x07, 0x9E, 0x01, 0xF3, 0xE0, - 0x7C, 0x7F, 0xFF, 0x87, 0xFF, 0xE0, 0x7F, 0xF0, 0x03, 0xF8, 0x00, 0x00, - 0x7E, 0x00, 0x7F, 0xC0, 0x3F, 0xF8, 0x1F, 0xFE, 0x0F, 0x87, 0xC3, 0xC0, - 0xF1, 0xE0, 0x3C, 0x78, 0x0F, 0x1E, 0x03, 0xC7, 0x81, 0xF1, 0xF1, 0xFC, - 0x7F, 0xFE, 0x0F, 0xFF, 0x81, 0xFD, 0xE0, 0x3E, 0xF0, 0x00, 0x7C, 0x00, - 0x3E, 0x00, 0x1F, 0x00, 0x1F, 0x81, 0xFF, 0xC0, 0xFF, 0xE0, 0x3F, 0xE0, - 0x07, 0xE0, 0x00, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, 0x00, 0x00, - 0x03, 0x8F, 0x9F, 0x3E, 0x38, 0x01, 0xC0, 0x7C, 0x0F, 0x81, 0xF0, 0x3C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xC0, 0xF0, 0x1E, - 0x07, 0x80, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x30, 0x0E, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0xFE, 0x00, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, - 0x00, 0x1F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xF0, 0x00, 0x38, - 0x3F, 0xFF, 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0x9F, 0xFF, 0xE0, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0xFF, 0xF7, 0xFF, 0xFE, 0xFF, 0xFF, 0xDF, 0xFF, 0xF0, - 0x00, 0x00, 0x03, 0x80, 0x00, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0x00, - 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x0F, 0xE0, - 0x07, 0xF0, 0x07, 0xF8, 0x03, 0xF8, 0x01, 0xFC, 0x00, 0x3E, 0x00, 0x07, - 0x00, 0x00, 0x07, 0xE0, 0xFF, 0xC7, 0xFF, 0xBF, 0xFF, 0xF0, 0x7F, 0x80, - 0xFE, 0x03, 0xC0, 0x0F, 0x00, 0x78, 0x0F, 0xE1, 0xFE, 0x0F, 0xF0, 0x7E, - 0x01, 0xE0, 0x07, 0x00, 0x00, 0x00, 0x70, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0x70, 0x00, 0x00, 0x3E, 0x00, 0x3F, 0xE0, 0x1F, 0xF8, 0x0F, 0x0F, - 0x07, 0x01, 0xC3, 0x80, 0x71, 0xE0, 0x1C, 0x70, 0x0E, 0x18, 0x0F, 0x8E, - 0x1F, 0xE3, 0x8F, 0xF0, 0xE7, 0x9C, 0x33, 0xC7, 0x1C, 0xE1, 0xC7, 0x38, - 0x71, 0xCF, 0x18, 0x73, 0xFE, 0x38, 0x7F, 0xCE, 0x0F, 0xF3, 0x80, 0x00, - 0xE0, 0x00, 0x38, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0xC0, 0x7F, 0xF0, 0x0F, - 0xF8, 0x01, 0xF8, 0x00, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, 0xF8, - 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x07, 0xBC, 0x00, - 0x1C, 0xF0, 0x00, 0xF3, 0xC0, 0x07, 0x87, 0x80, 0x1E, 0x1E, 0x00, 0xF0, - 0x78, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0x80, 0xFF, 0xFF, 0x07, 0xFF, 0xFC, - 0x1E, 0x00, 0xF1, 0xFE, 0x1F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE1, 0xFF, 0xFF, - 0x07, 0xF8, 0x0F, 0xFF, 0xC0, 0x7F, 0xFF, 0x87, 0xFF, 0xFC, 0x1F, 0xFF, - 0xF0, 0x38, 0x0F, 0x81, 0xC0, 0x3C, 0x1E, 0x01, 0xE0, 0xF0, 0x3E, 0x07, - 0xFF, 0xE0, 0x3F, 0xFE, 0x03, 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0xE0, 0x1F, - 0x87, 0x00, 0x3C, 0x38, 0x01, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0xF3, 0xFF, - 0xFF, 0xBF, 0xFF, 0xF9, 0xFF, 0xFF, 0x8F, 0xFF, 0xF0, 0x00, 0x00, 0x7F, - 0x30, 0x0F, 0xFF, 0xC1, 0xFF, 0xFE, 0x1F, 0xFF, 0xF1, 0xF8, 0x3F, 0x1F, - 0x00, 0x78, 0xF0, 0x03, 0xCF, 0x80, 0x1C, 0x78, 0x00, 0x03, 0xC0, 0x00, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, - 0x00, 0x1F, 0x00, 0x38, 0x7E, 0x07, 0xC3, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, - 0x3F, 0xFC, 0x00, 0x7F, 0x80, 0x00, 0x0F, 0xFF, 0x80, 0x7F, 0xFE, 0x07, - 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0x78, 0x1F, 0x03, 0x80, 0x7C, 0x1C, 0x01, - 0xE1, 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x70, 0x03, 0xC3, 0x80, 0x1E, 0x1C, - 0x00, 0xF1, 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x70, 0x07, 0xC3, 0x80, 0x7C, - 0x3C, 0x07, 0xC3, 0xFF, 0xFC, 0x3F, 0xFF, 0xC1, 0xFF, 0xFC, 0x0F, 0xFF, - 0x80, 0x00, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC3, 0xFF, - 0xFF, 0x03, 0xC0, 0x3C, 0x0F, 0x00, 0xE0, 0x3C, 0x73, 0x80, 0xE3, 0xCC, - 0x03, 0xFF, 0x00, 0x1F, 0xFC, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, - 0x1E, 0x00, 0x3C, 0x70, 0x00, 0xF0, 0x07, 0x03, 0xC0, 0x1C, 0x0E, 0x00, - 0xF1, 0xFF, 0xFF, 0xC7, 0xFF, 0xFE, 0x3F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE0, - 0x07, 0xFF, 0xFE, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, 0xE0, - 0x3C, 0x01, 0xC0, 0x70, 0x07, 0x80, 0xE1, 0x8E, 0x03, 0xC7, 0x1C, 0x07, - 0xFE, 0x00, 0x0F, 0xFC, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0xF1, - 0xC0, 0x01, 0xE3, 0x80, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0xFF, 0xE0, 0x03, 0xFF, 0xC0, 0x07, 0xFF, 0x80, 0x0F, 0xFE, 0x00, - 0x00, 0x00, 0x3F, 0x18, 0x0F, 0xFF, 0xC0, 0xFF, 0xFE, 0x0F, 0xFF, 0xF0, - 0xFC, 0x0F, 0x0F, 0x80, 0x38, 0xF8, 0x01, 0x87, 0x80, 0x00, 0x78, 0x00, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x7F, 0xEF, 0x07, 0xFF, 0x78, - 0x3F, 0xFB, 0xC0, 0xFF, 0x9E, 0x00, 0x38, 0xFC, 0x03, 0xC3, 0xFF, 0xFE, - 0x1F, 0xFF, 0xE0, 0x3F, 0xFC, 0x00, 0x7F, 0x80, 0x00, 0x03, 0xF8, 0xFE, - 0x0F, 0xF3, 0xFC, 0x1F, 0xE7, 0xF8, 0x3F, 0x8F, 0xE0, 0x3C, 0x07, 0x80, - 0x70, 0x0E, 0x00, 0xE0, 0x1C, 0x03, 0xC0, 0x78, 0x07, 0x80, 0xF0, 0x0F, - 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0xFF, 0xFE, 0x01, 0xE0, - 0x3C, 0x03, 0x80, 0x70, 0x07, 0x00, 0xE0, 0x1E, 0x03, 0xC0, 0xFF, 0x1F, - 0xE1, 0xFE, 0x7F, 0xC7, 0xFC, 0xFF, 0x87, 0xF1, 0xFE, 0x00, 0x07, 0xFF, - 0xE1, 0xFF, 0xFC, 0x3F, 0xFF, 0x87, 0xFF, 0xE0, 0x07, 0x80, 0x00, 0xE0, - 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0x80, - 0x00, 0x70, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0E, 0x00, - 0x01, 0xC0, 0x0F, 0xFF, 0xC3, 0xFF, 0xF8, 0x7F, 0xFF, 0x07, 0xFF, 0xE0, - 0x00, 0x3F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, - 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x80, 0x1C, 0x03, 0x80, - 0x78, 0x0F, 0x00, 0xF0, 0x1E, 0x01, 0xC0, 0x38, 0x07, 0x80, 0x70, 0x1F, - 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xF0, 0x03, 0xFF, 0xC0, 0x00, 0xFC, 0x00, - 0x00, 0x07, 0xF8, 0xFC, 0x1F, 0xFB, 0xFC, 0x3F, 0xE7, 0xF0, 0x7F, 0xCF, - 0xE0, 0x3C, 0x1E, 0x00, 0x70, 0xF8, 0x00, 0xE3, 0xE0, 0x03, 0xCF, 0x00, - 0x07, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xF0, 0x00, - 0xF9, 0xF0, 0x01, 0xE1, 0xE0, 0x03, 0x83, 0xE0, 0x07, 0x03, 0xC0, 0x1E, - 0x07, 0x80, 0xFF, 0x8F, 0xE3, 0xFF, 0x0F, 0xC7, 0xFE, 0x1F, 0x8F, 0xF8, - 0x3E, 0x00, 0x0F, 0xFE, 0x00, 0xFF, 0xF0, 0x1F, 0xFE, 0x00, 0xFF, 0xE0, - 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0xC0, - 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x80, 0x60, 0x78, - 0x0F, 0x07, 0x80, 0xF0, 0x70, 0x0E, 0x07, 0x00, 0xE7, 0xFF, 0xFE, 0xFF, - 0xFF, 0xEF, 0xFF, 0xFE, 0xFF, 0xFF, 0xC0, 0x0F, 0xC0, 0x1F, 0x87, 0xE0, - 0x0F, 0xC7, 0xF8, 0x0F, 0xE1, 0xFC, 0x0F, 0xE0, 0x7E, 0x07, 0xE0, 0x3F, - 0x07, 0xF0, 0x3F, 0xC7, 0xF8, 0x1F, 0xE3, 0xF8, 0x0E, 0xF3, 0xDC, 0x07, - 0x7B, 0xDE, 0x03, 0x9F, 0xEF, 0x03, 0xCF, 0xE7, 0x81, 0xE7, 0xE3, 0x80, - 0xE3, 0xF1, 0xC0, 0x70, 0xF1, 0xE0, 0x38, 0x70, 0xF0, 0x3C, 0x00, 0x70, - 0x3F, 0xC1, 0xFE, 0x3F, 0xE1, 0xFF, 0x1F, 0xF0, 0xFF, 0x8F, 0xF0, 0x7F, - 0x80, 0x0F, 0xC1, 0xFE, 0x1F, 0xC1, 0xFF, 0x1F, 0xC3, 0xFE, 0x1F, 0xE1, - 0xFE, 0x07, 0xE0, 0x38, 0x07, 0xF0, 0x78, 0x07, 0xF0, 0x78, 0x0F, 0xF8, - 0x70, 0x0F, 0x78, 0x70, 0x0E, 0x78, 0xF0, 0x0E, 0x7C, 0xF0, 0x1E, 0x3C, - 0xF0, 0x1E, 0x3E, 0xE0, 0x1E, 0x1E, 0xE0, 0x1C, 0x1F, 0xE0, 0x1C, 0x0F, - 0xE0, 0x3C, 0x0F, 0xE0, 0x7F, 0x87, 0xC0, 0xFF, 0x87, 0xC0, 0xFF, 0x87, - 0xC0, 0xFF, 0x03, 0xC0, 0x00, 0x7E, 0x00, 0x1F, 0xF8, 0x07, 0xFF, 0xC0, - 0xFF, 0xFE, 0x1F, 0x87, 0xE3, 0xE0, 0x1F, 0x3C, 0x01, 0xF7, 0xC0, 0x0F, - 0x78, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x01, - 0xEF, 0x00, 0x3E, 0xF8, 0x03, 0xCF, 0x80, 0x7C, 0x7C, 0x1F, 0x87, 0xFF, - 0xF0, 0x3F, 0xFE, 0x01, 0xFF, 0x80, 0x07, 0xE0, 0x00, 0x0F, 0xFF, 0x80, - 0x7F, 0xFF, 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x38, 0x0F, 0x81, 0xC0, - 0x3C, 0x1E, 0x01, 0xE0, 0xF0, 0x0F, 0x07, 0x00, 0xF0, 0x38, 0x0F, 0x83, - 0xFF, 0xF8, 0x1F, 0xFF, 0x80, 0xFF, 0xF8, 0x07, 0xFF, 0x00, 0x38, 0x00, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x03, 0xFF, 0x80, 0x3F, 0xFC, 0x01, 0xFF, - 0xE0, 0x0F, 0xFE, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x1F, 0xF8, 0x07, 0xFF, - 0xC0, 0xFF, 0xFE, 0x1F, 0x87, 0xE3, 0xE0, 0x1F, 0x3C, 0x01, 0xF7, 0xC0, - 0x0F, 0x78, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x01, 0xEF, 0x00, 0x3E, 0xF8, 0x03, 0xCF, 0x80, 0x7C, 0x7C, 0x1F, 0x87, - 0xFF, 0xF0, 0x3F, 0xFE, 0x01, 0xFF, 0x80, 0x07, 0xE0, 0x01, 0xFE, 0x30, - 0x3F, 0xFF, 0x87, 0xFF, 0xF0, 0x7F, 0xFF, 0x07, 0x83, 0xC0, 0x07, 0xFF, - 0x80, 0x3F, 0xFF, 0x80, 0xFF, 0xFF, 0x03, 0xFF, 0xFE, 0x03, 0xC0, 0xF8, - 0x0E, 0x01, 0xE0, 0x38, 0x07, 0x81, 0xE0, 0x3E, 0x07, 0x83, 0xF0, 0x1F, - 0xFF, 0x80, 0x7F, 0xFC, 0x01, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x3C, 0x3E, - 0x00, 0xE0, 0x7C, 0x03, 0x80, 0xF0, 0x1E, 0x03, 0xE1, 0xFF, 0x07, 0xFF, - 0xFC, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0x80, 0xF8, 0x00, 0x7C, 0xE0, 0x7F, - 0xFC, 0x1F, 0xFF, 0x87, 0xFF, 0xE0, 0xF8, 0x7C, 0x3C, 0x07, 0x87, 0x80, - 0xE0, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xFE, 0x00, 0x3F, 0xF8, 0x03, 0xFF, - 0x80, 0x07, 0xF8, 0x40, 0x1F, 0x3C, 0x01, 0xE7, 0x80, 0x3C, 0xFC, 0x1F, - 0x1F, 0xFF, 0xE3, 0xFF, 0xF8, 0x7F, 0xFE, 0x00, 0x7E, 0x00, 0x7F, 0xFF, - 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0x0E, 0x1F, 0xE1, 0xC3, - 0xBC, 0x78, 0x77, 0x0F, 0x1E, 0xE1, 0xC1, 0x80, 0x38, 0x00, 0x0F, 0x00, - 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x3C, 0x00, - 0x07, 0x80, 0x0F, 0xFE, 0x03, 0xFF, 0xE0, 0x7F, 0xFC, 0x0F, 0xFF, 0x00, - 0x7F, 0x8F, 0xF3, 0xFE, 0x7F, 0xDF, 0xF7, 0xFC, 0xFF, 0x1F, 0xE3, 0xC0, - 0x3C, 0x1C, 0x01, 0xE0, 0xE0, 0x0F, 0x0F, 0x00, 0x70, 0x78, 0x03, 0x83, - 0xC0, 0x3C, 0x1C, 0x01, 0xE0, 0xE0, 0x0E, 0x0F, 0x00, 0x70, 0x78, 0x03, - 0x83, 0xC0, 0x3C, 0x1F, 0x01, 0xC0, 0xFC, 0x3E, 0x03, 0xFF, 0xE0, 0x1F, - 0xFE, 0x00, 0x7F, 0xE0, 0x00, 0xFC, 0x00, 0x00, 0x7F, 0x81, 0xFE, 0xFF, - 0x87, 0xFF, 0xFF, 0x0F, 0xFB, 0xFC, 0x1F, 0xE1, 0xC0, 0x0F, 0x03, 0xC0, - 0x1C, 0x07, 0x80, 0x78, 0x0F, 0x01, 0xE0, 0x1E, 0x03, 0x80, 0x1E, 0x0F, - 0x00, 0x3C, 0x3C, 0x00, 0x78, 0x70, 0x00, 0xF1, 0xE0, 0x01, 0xE7, 0x80, - 0x01, 0xEF, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, - 0x0F, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x7F, 0x87, 0xFF, - 0xFF, 0x1F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE1, 0xFE, 0x78, 0x00, 0xF1, 0xE3, - 0xC3, 0x87, 0x8F, 0x0E, 0x1E, 0x7C, 0x78, 0x79, 0xF9, 0xC1, 0xEF, 0xEF, - 0x07, 0xBF, 0xBC, 0x1D, 0xFE, 0xE0, 0x77, 0x7F, 0x81, 0xFD, 0xFE, 0x07, - 0xE3, 0xF0, 0x3F, 0x8F, 0xC0, 0xFC, 0x3F, 0x03, 0xF0, 0xF8, 0x0F, 0x83, - 0xE0, 0x3E, 0x0F, 0x80, 0xF0, 0x3C, 0x00, 0x07, 0xE0, 0x7E, 0x0F, 0xF0, - 0xFF, 0x0F, 0xF0, 0xFE, 0x0F, 0xE0, 0xFE, 0x03, 0xC0, 0xF8, 0x01, 0xE1, - 0xE0, 0x01, 0xF3, 0xC0, 0x00, 0xF7, 0x80, 0x00, 0x7F, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xEF, - 0x00, 0x07, 0xCF, 0x80, 0x0F, 0x87, 0xC0, 0x1F, 0x03, 0xC0, 0x7F, 0x07, - 0xF0, 0xFF, 0x8F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xE0, 0x7E, 0x0F, - 0xEF, 0xF0, 0xFF, 0xFF, 0x0F, 0xEF, 0xE0, 0xFE, 0x3C, 0x0F, 0x01, 0xE1, - 0xE0, 0x1E, 0x3E, 0x00, 0xF7, 0xC0, 0x0F, 0xF8, 0x00, 0x7F, 0x00, 0x07, - 0xE0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, - 0x78, 0x00, 0x07, 0x00, 0x07, 0xFF, 0x00, 0xFF, 0xF8, 0x0F, 0xFF, 0x00, - 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xE0, 0xFF, 0xFC, 0x3F, 0xFF, 0x87, 0xFF, - 0xF0, 0xF0, 0x7C, 0x1C, 0x1F, 0x03, 0x87, 0xC0, 0x61, 0xF0, 0x00, 0x7C, - 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x07, - 0x07, 0xC0, 0xE1, 0xF0, 0x3C, 0x7C, 0x07, 0x9F, 0xFF, 0xF3, 0xFF, 0xFC, - 0x7F, 0xFF, 0x8F, 0xFF, 0xF0, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xE0, - 0x70, 0x07, 0x80, 0x3C, 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x3C, - 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x38, 0x01, 0xC0, 0x0E, 0x00, - 0xF0, 0x07, 0x80, 0x38, 0x01, 0xC0, 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, - 0x80, 0xE0, 0x38, 0x0F, 0x03, 0xC0, 0xF0, 0x1C, 0x07, 0x81, 0xE0, 0x78, - 0x0E, 0x03, 0xC0, 0xF0, 0x3C, 0x07, 0x01, 0xE0, 0x78, 0x1E, 0x03, 0x80, - 0xF0, 0x3C, 0x0F, 0x01, 0xE0, 0x78, 0x1E, 0x03, 0x80, 0xF0, 0x3C, 0x06, - 0x07, 0xF8, 0x3F, 0xC1, 0xFC, 0x0F, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, - 0x1C, 0x00, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0F, - 0x00, 0x78, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0F, 0x00, 0x70, 0x03, 0x80, - 0x1C, 0x0F, 0xE0, 0xFF, 0x07, 0xF0, 0x3F, 0x80, 0x00, 0x40, 0x01, 0x80, - 0x07, 0x80, 0x3F, 0x80, 0xFF, 0x03, 0xFF, 0x0F, 0x9F, 0x3E, 0x1E, 0xF8, - 0x3F, 0xE0, 0x3F, 0x00, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0xC3, 0xC7, 0x0E, 0x3C, 0x30, 0x00, 0xFE, 0x00, - 0x7F, 0xF0, 0x1F, 0xFF, 0x03, 0xFF, 0xE0, 0x00, 0x3C, 0x07, 0xFF, 0x83, - 0xFF, 0xF0, 0xFF, 0xFC, 0x3F, 0xFF, 0x8F, 0x80, 0xF3, 0xE0, 0x1E, 0x78, - 0x1F, 0x8F, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xFF, 0xF8, 0xFE, 0x7E, 0x07, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xC0, - 0x00, 0x0F, 0x00, 0x00, 0x3C, 0xFC, 0x00, 0xEF, 0xFC, 0x03, 0xFF, 0xF8, - 0x1F, 0xFF, 0xE0, 0x7E, 0x0F, 0xC1, 0xE0, 0x1F, 0x07, 0x00, 0x3C, 0x1C, - 0x00, 0xF0, 0xE0, 0x03, 0xC3, 0x80, 0x1E, 0x0F, 0x00, 0xF8, 0x3E, 0x07, - 0xC7, 0xFF, 0xFF, 0x3F, 0xFF, 0xF8, 0xFF, 0xFF, 0x81, 0xF1, 0xF8, 0x00, - 0x00, 0xFE, 0x60, 0xFF, 0xFC, 0x3F, 0xFF, 0x8F, 0xFF, 0xF3, 0xF0, 0x3C, - 0xF8, 0x03, 0x9E, 0x00, 0x67, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, - 0xC0, 0x00, 0x7E, 0x01, 0xC7, 0xFF, 0xF8, 0xFF, 0xFE, 0x0F, 0xFF, 0x80, - 0x7F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, 0x07, 0xE3, 0x80, 0xFF, 0xDC, 0x0F, - 0xFF, 0xE0, 0xFF, 0xFF, 0x0F, 0xC1, 0xF0, 0xF8, 0x07, 0x87, 0x80, 0x1C, - 0x78, 0x00, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x70, 0xF0, 0x07, 0x87, 0xE0, - 0xFC, 0x1F, 0xFF, 0xF8, 0xFF, 0xFF, 0xC3, 0xFF, 0xFE, 0x07, 0xE3, 0xE0, - 0x00, 0xFC, 0x01, 0xFF, 0xC0, 0xFF, 0xF8, 0x7F, 0xFE, 0x3E, 0x0F, 0xCE, - 0x00, 0xF7, 0x00, 0x3D, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xE0, 0x1E, 0xFF, 0xFF, 0x9F, 0xFF, 0xE3, 0xFF, 0xF0, 0x3F, 0xF0, - 0x00, 0x0F, 0xF0, 0x01, 0xFF, 0xC0, 0x1F, 0xFE, 0x01, 0xFF, 0xE0, 0x0F, - 0x00, 0x00, 0xF0, 0x00, 0x3F, 0xFF, 0x03, 0xFF, 0xF8, 0x1F, 0xFF, 0xC0, - 0xFF, 0xFC, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x01, 0xC0, - 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x1F, - 0xFF, 0x81, 0xFF, 0xFC, 0x0F, 0xFF, 0xE0, 0x7F, 0xFE, 0x00, 0x01, 0xF9, - 0xF8, 0x3F, 0xFF, 0xC3, 0xFF, 0xFE, 0x7F, 0xFF, 0xE3, 0xE0, 0xFC, 0x3E, - 0x03, 0xE1, 0xE0, 0x0E, 0x1E, 0x00, 0x70, 0xF0, 0x03, 0x87, 0x80, 0x3C, - 0x3E, 0x03, 0xE1, 0xF8, 0x7E, 0x07, 0xFF, 0xF0, 0x3F, 0xFF, 0x80, 0xFF, - 0xFC, 0x01, 0xF9, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, - 0x7F, 0xF8, 0x07, 0xFF, 0x80, 0x3F, 0xF8, 0x00, 0xFF, 0x00, 0x00, 0x0F, - 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x03, 0xC0, 0x00, - 0x38, 0x00, 0x03, 0x9F, 0x00, 0x7F, 0xFC, 0x07, 0xFF, 0xC0, 0x7F, 0xFE, - 0x07, 0xC3, 0xE0, 0x70, 0x1E, 0x0F, 0x01, 0xC0, 0xF0, 0x1C, 0x0E, 0x03, - 0xC0, 0xE0, 0x3C, 0x1E, 0x03, 0x81, 0xE0, 0x38, 0x7F, 0x0F, 0xFF, 0xF8, - 0xFF, 0xFF, 0x8F, 0xF7, 0xF0, 0xFE, 0x00, 0x78, 0x00, 0x78, 0x00, 0x78, - 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x0F, 0xF0, 0x1F, 0xF0, - 0x0F, 0xF0, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xE0, - 0x01, 0xE0, 0x01, 0xC0, 0x01, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFC, 0x3F, 0xFE, 0x0F, 0xFF, 0x81, 0xFF, - 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0xF0, - 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x78, 0x00, - 0x1E, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x1F, 0xFE, - 0x0F, 0xFF, 0x03, 0xFF, 0x80, 0x7F, 0x80, 0x00, 0x07, 0xE0, 0x00, 0xFE, - 0x00, 0x0F, 0xE0, 0x00, 0x7C, 0x00, 0x01, 0xC0, 0x00, 0x3C, 0x00, 0x03, - 0xCF, 0xF0, 0x3C, 0xFF, 0x03, 0x9F, 0xF0, 0x38, 0xFE, 0x07, 0xBF, 0x00, - 0x7F, 0xC0, 0x07, 0xF8, 0x00, 0x7F, 0x00, 0x07, 0xF8, 0x00, 0xFF, 0xC0, - 0x0F, 0x7E, 0x00, 0xE3, 0xF0, 0x7E, 0x1F, 0xE7, 0xE1, 0xFE, 0xFE, 0x3F, - 0xE7, 0xE1, 0xFC, 0x03, 0xFC, 0x07, 0xFC, 0x07, 0xF8, 0x07, 0xF8, 0x00, - 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0xF0, 0x00, - 0xF0, 0x00, 0xE0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, - 0xC0, 0x01, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x1F, - 0x7C, 0x78, 0x7F, 0xFF, 0xF8, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xF0, 0xF1, - 0xF1, 0xE1, 0xC3, 0x83, 0xC7, 0x87, 0x07, 0x8F, 0x0E, 0x0E, 0x1C, 0x3C, - 0x1C, 0x38, 0x78, 0x78, 0x70, 0xE0, 0xF1, 0xE1, 0xC1, 0xC7, 0xE3, 0xC3, - 0xFF, 0xCF, 0xC7, 0xFF, 0x9F, 0x9F, 0xFF, 0x3E, 0x3E, 0x0F, 0x8F, 0x80, - 0xFD, 0xFF, 0x07, 0xFF, 0xF8, 0x3F, 0xFF, 0xE0, 0x7E, 0x1F, 0x07, 0xC0, - 0x78, 0x3C, 0x03, 0x81, 0xE0, 0x1C, 0x0E, 0x01, 0xE0, 0x70, 0x0F, 0x07, - 0x80, 0x70, 0x3C, 0x03, 0x87, 0xF0, 0x3F, 0x7F, 0xC3, 0xFF, 0xFE, 0x1F, - 0xEF, 0xE0, 0xFE, 0x01, 0xFC, 0x01, 0xFF, 0x80, 0xFF, 0xF8, 0x7F, 0xFE, - 0x3E, 0x0F, 0xDF, 0x01, 0xF7, 0x80, 0x3F, 0xC0, 0x0F, 0xF0, 0x03, 0xFC, - 0x01, 0xEF, 0x80, 0xFB, 0xF0, 0x7C, 0x7F, 0xFF, 0x1F, 0xFF, 0x03, 0xFF, - 0x80, 0x3F, 0x80, 0x07, 0xC7, 0xE0, 0x1F, 0xBF, 0xF0, 0x3F, 0xFF, 0xF0, - 0x7F, 0xFF, 0xE0, 0x3F, 0x07, 0xE0, 0x78, 0x03, 0xC0, 0xE0, 0x07, 0x81, - 0xC0, 0x0F, 0x07, 0x00, 0x1E, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xF0, 0x3E, - 0x07, 0xC0, 0xFF, 0xFF, 0x81, 0xFF, 0xFE, 0x03, 0xDF, 0xF0, 0x07, 0x1F, - 0x80, 0x0E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, 0x03, 0xFE, 0x00, - 0x0F, 0xFE, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x01, 0xF8, - 0xF8, 0x1F, 0xFF, 0xF1, 0xFF, 0xFF, 0xCF, 0xFF, 0xFE, 0x3E, 0x07, 0xC1, - 0xF0, 0x0F, 0x07, 0x80, 0x1C, 0x3C, 0x00, 0x70, 0xF0, 0x03, 0x83, 0xC0, - 0x0E, 0x0F, 0x80, 0x78, 0x3F, 0x07, 0xE0, 0x7F, 0xFF, 0x81, 0xFF, 0xFC, - 0x03, 0xFF, 0x70, 0x03, 0xF3, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xE0, 0x00, 0x3F, 0xE0, 0x01, 0xFF, 0xC0, 0x07, 0xFF, 0x00, 0x1F, - 0xF8, 0x00, 0x0F, 0xC3, 0xC1, 0xFC, 0xFF, 0x1F, 0xFF, 0xF1, 0xFF, 0xFE, - 0x03, 0xFC, 0x00, 0x3F, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x07, 0x80, - 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xF0, 0x00, 0xFF, 0xFC, 0x0F, 0xFF, - 0xE0, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, 0x03, 0xF3, 0x0F, 0xFF, 0x3F, 0xFF, - 0x3F, 0xFF, 0x7C, 0x0E, 0x78, 0x00, 0x7F, 0xE0, 0x3F, 0xFC, 0x1F, 0xFF, - 0x00, 0x3F, 0x70, 0x0F, 0xF8, 0x1F, 0xFF, 0xFE, 0xFF, 0xFC, 0xFF, 0xF8, - 0x0F, 0xE0, 0x06, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x7F, 0xFE, 0xFF, 0xFE, 0xFF, 0xFE, 0xFF, 0xFC, 0x1C, 0x00, 0x3C, 0x00, - 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x78, 0x00, 0x7C, 0x0E, - 0x7F, 0xFF, 0x7F, 0xFE, 0x3F, 0xFC, 0x0F, 0xE0, 0x7C, 0x0F, 0xFF, 0x07, - 0xFF, 0x81, 0xFF, 0xE0, 0x7E, 0x78, 0x03, 0x9E, 0x00, 0xE7, 0x80, 0x79, - 0xE0, 0x1E, 0x78, 0x07, 0x1E, 0x01, 0xC7, 0x80, 0xF1, 0xE0, 0xFC, 0x7F, - 0xFF, 0x9F, 0xFF, 0xE3, 0xFF, 0xF8, 0x3E, 0x7C, 0x7F, 0x87, 0xFF, 0xFC, - 0x7F, 0xFF, 0xE3, 0xFF, 0xFF, 0x1F, 0xE1, 0xE0, 0x3C, 0x0F, 0x03, 0xC0, - 0x78, 0x3C, 0x01, 0xE1, 0xC0, 0x0F, 0x1E, 0x00, 0x79, 0xE0, 0x03, 0xCE, - 0x00, 0x0F, 0xF0, 0x00, 0x7F, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0x80, 0x00, - 0x78, 0x00, 0x7E, 0x03, 0xF7, 0xF0, 0x3F, 0xFF, 0x81, 0xFD, 0xF8, 0x0F, - 0xE7, 0x8E, 0x1C, 0x3C, 0xF9, 0xE1, 0xE7, 0xCE, 0x0F, 0x7E, 0xF0, 0x7B, - 0xF7, 0x03, 0xFF, 0xF8, 0x1F, 0xDF, 0x80, 0xFC, 0xFC, 0x07, 0xE7, 0xE0, - 0x3E, 0x3E, 0x01, 0xF1, 0xF0, 0x0F, 0x07, 0x00, 0x0F, 0xE3, 0xF8, 0xFF, - 0x1F, 0xC7, 0xF9, 0xFE, 0x1F, 0x87, 0xF0, 0x7E, 0x7C, 0x01, 0xFF, 0xC0, - 0x07, 0xFC, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x1F, 0xF0, 0x01, 0xF7, - 0xC0, 0x1F, 0x1F, 0x03, 0xF0, 0x7C, 0x7F, 0xCF, 0xFB, 0xFE, 0x7F, 0xDF, - 0xE3, 0xFC, 0x07, 0xF0, 0x7F, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x07, - 0xE0, 0xFE, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0xF0, 0x01, - 0xE1, 0xE0, 0x01, 0xE1, 0xC0, 0x01, 0xE3, 0xC0, 0x00, 0xF7, 0x80, 0x00, - 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x7F, - 0xF0, 0x00, 0xFF, 0xF8, 0x00, 0xFF, 0xF0, 0x00, 0x7F, 0xF0, 0x00, 0x1F, - 0xFF, 0xC7, 0xFF, 0xF1, 0xFF, 0xF8, 0xFF, 0xFE, 0x3C, 0x1F, 0x0E, 0x1F, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0xF8, 0x3C, 0xFF, 0xFF, 0x3F, 0xFF, 0xCF, 0xFF, 0xE3, 0xFF, 0xF8, 0x00, - 0xF0, 0x1F, 0x03, 0xF0, 0x7E, 0x07, 0x80, 0x70, 0x0F, 0x00, 0xF0, 0x0E, - 0x00, 0xE0, 0x1E, 0x01, 0xC0, 0xFC, 0x0F, 0x80, 0xF8, 0x0F, 0xC0, 0x3C, - 0x03, 0xC0, 0x38, 0x03, 0x80, 0x78, 0x07, 0x80, 0x78, 0x07, 0xE0, 0x7E, - 0x03, 0xE0, 0x1C, 0x00, 0x02, 0x07, 0x07, 0x0F, 0x0F, 0x0E, 0x0E, 0x0E, - 0x1E, 0x1E, 0x1C, 0x1C, 0x1C, 0x3C, 0x3C, 0x38, 0x38, 0x38, 0x78, 0x78, - 0x70, 0x70, 0x70, 0xF0, 0xF0, 0xE0, 0xE0, 0x01, 0xC0, 0x1F, 0x00, 0xFC, - 0x07, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x0F, 0x00, - 0x78, 0x03, 0xC0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, 0x3F, 0x03, 0xC0, 0x1C, - 0x00, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x3C, 0x0F, 0xE0, 0x7E, 0x07, - 0xE0, 0x1E, 0x00, 0x0F, 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0xFF, 0xFC, 0xFF, - 0x3F, 0xFF, 0x0F, 0xF8, 0x03, 0xF8, 0x00, 0xF0}; - -const GFXglyph FreeMonoBoldOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 9, 22, 21, 9, -21}, // 0x21 '!' - {25, 12, 10, 21, 9, -20}, // 0x22 '"' - {40, 18, 25, 21, 4, -22}, // 0x23 '#' - {97, 18, 28, 21, 4, -23}, // 0x24 '$' - {160, 16, 21, 21, 5, -20}, // 0x25 '%' - {202, 16, 20, 21, 4, -19}, // 0x26 '&' - {242, 5, 10, 21, 12, -20}, // 0x27 ''' - {249, 10, 27, 21, 11, -21}, // 0x28 '(' - {283, 10, 27, 21, 4, -21}, // 0x29 ')' - {317, 15, 15, 21, 6, -21}, // 0x2A '*' - {346, 18, 19, 21, 4, -18}, // 0x2B '+' - {389, 9, 10, 21, 4, -3}, // 0x2C ',' - {401, 18, 4, 21, 4, -11}, // 0x2D '-' - {410, 5, 5, 21, 8, -4}, // 0x2E '.' - {414, 21, 28, 21, 2, -23}, // 0x2F '/' - {488, 17, 23, 21, 5, -22}, // 0x30 '0' - {537, 15, 22, 21, 3, -21}, // 0x31 '1' - {579, 20, 23, 21, 2, -22}, // 0x32 '2' - {637, 18, 23, 21, 3, -22}, // 0x33 '3' - {689, 16, 21, 21, 4, -20}, // 0x34 '4' - {731, 18, 22, 21, 4, -21}, // 0x35 '5' - {781, 19, 23, 21, 5, -22}, // 0x36 '6' - {836, 16, 22, 21, 6, -21}, // 0x37 '7' - {880, 19, 23, 21, 3, -22}, // 0x38 '8' - {935, 18, 23, 21, 4, -22}, // 0x39 '9' - {987, 7, 16, 21, 9, -15}, // 0x3A ':' - {1001, 11, 22, 21, 4, -15}, // 0x3B ';' - {1032, 18, 16, 21, 4, -17}, // 0x3C '<' - {1068, 19, 10, 21, 3, -14}, // 0x3D '=' - {1092, 19, 16, 21, 3, -17}, // 0x3E '>' - {1130, 14, 21, 21, 8, -20}, // 0x3F '?' - {1167, 18, 27, 21, 3, -21}, // 0x40 '@' - {1228, 22, 21, 21, 0, -20}, // 0x41 'A' - {1286, 21, 21, 21, 1, -20}, // 0x42 'B' - {1342, 21, 21, 21, 2, -20}, // 0x43 'C' - {1398, 21, 21, 21, 1, -20}, // 0x44 'D' - {1454, 22, 21, 21, 0, -20}, // 0x45 'E' - {1512, 23, 21, 21, 0, -20}, // 0x46 'F' - {1573, 21, 21, 21, 2, -20}, // 0x47 'G' - {1629, 23, 21, 21, 0, -20}, // 0x48 'H' - {1690, 19, 21, 21, 2, -20}, // 0x49 'I' - {1740, 23, 21, 21, 0, -20}, // 0x4A 'J' - {1801, 23, 21, 21, 0, -20}, // 0x4B 'K' - {1862, 20, 21, 21, 1, -20}, // 0x4C 'L' - {1915, 25, 21, 21, 0, -20}, // 0x4D 'M' - {1981, 24, 21, 21, 1, -20}, // 0x4E 'N' - {2044, 20, 21, 21, 2, -20}, // 0x4F 'O' - {2097, 21, 21, 21, 1, -20}, // 0x50 'P' - {2153, 20, 26, 21, 2, -20}, // 0x51 'Q' - {2218, 22, 21, 21, 0, -20}, // 0x52 'R' - {2276, 19, 21, 21, 3, -20}, // 0x53 'S' - {2326, 19, 21, 21, 3, -20}, // 0x54 'T' - {2376, 21, 21, 21, 3, -20}, // 0x55 'U' - {2432, 23, 21, 21, 1, -20}, // 0x56 'V' - {2493, 22, 21, 21, 2, -20}, // 0x57 'W' - {2551, 24, 21, 21, 0, -20}, // 0x58 'X' - {2614, 20, 21, 21, 3, -20}, // 0x59 'Y' - {2667, 19, 21, 21, 2, -20}, // 0x5A 'Z' - {2717, 13, 27, 21, 8, -21}, // 0x5B '[' - {2761, 10, 28, 21, 8, -23}, // 0x5C '\' - {2796, 13, 27, 21, 4, -21}, // 0x5D ']' - {2840, 15, 11, 21, 6, -21}, // 0x5E '^' - {2861, 21, 4, 21, -1, 4}, // 0x5F '_' - {2872, 6, 6, 21, 10, -22}, // 0x60 '`' - {2877, 19, 16, 21, 2, -15}, // 0x61 'a' - {2915, 22, 22, 21, 0, -21}, // 0x62 'b' - {2976, 19, 16, 21, 3, -15}, // 0x63 'c' - {3014, 21, 22, 21, 3, -21}, // 0x64 'd' - {3072, 18, 16, 21, 3, -15}, // 0x65 'e' - {3108, 21, 22, 21, 3, -21}, // 0x66 'f' - {3166, 21, 23, 21, 2, -15}, // 0x67 'g' - {3227, 20, 22, 21, 1, -21}, // 0x68 'h' - {3282, 16, 22, 21, 3, -21}, // 0x69 'i' - {3326, 18, 29, 21, 2, -21}, // 0x6A 'j' - {3392, 20, 22, 21, 1, -21}, // 0x6B 'k' - {3447, 16, 22, 21, 3, -21}, // 0x6C 'l' - {3491, 23, 16, 21, 0, -15}, // 0x6D 'm' - {3537, 21, 16, 21, 1, -15}, // 0x6E 'n' - {3579, 18, 16, 21, 3, -15}, // 0x6F 'o' - {3615, 23, 23, 21, -1, -15}, // 0x70 'p' - {3682, 22, 23, 21, 2, -15}, // 0x71 'q' - {3746, 20, 16, 21, 2, -15}, // 0x72 'r' - {3786, 16, 16, 21, 4, -15}, // 0x73 's' - {3818, 16, 21, 21, 4, -20}, // 0x74 't' - {3860, 18, 16, 21, 3, -15}, // 0x75 'u' - {3896, 21, 16, 21, 2, -15}, // 0x76 'v' - {3938, 21, 16, 21, 3, -15}, // 0x77 'w' - {3980, 21, 16, 21, 1, -15}, // 0x78 'x' - {4022, 24, 23, 21, -1, -15}, // 0x79 'y' - {4091, 18, 16, 21, 3, -15}, // 0x7A 'z' - {4127, 12, 27, 21, 8, -21}, // 0x7B '{' - {4168, 8, 27, 21, 8, -21}, // 0x7C '|' - {4195, 13, 27, 21, 4, -21}, // 0x7D '}' - {4239, 17, 8, 21, 4, -13}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique18pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique18pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique18pt7bGlyphs, 0x20, 0x7E, 35}; - -// Approx. 4928 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h deleted file mode 100644 index ac923bf..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique24pt7b.h +++ /dev/null @@ -1,744 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xE0, 0x3F, 0x07, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xE0, 0xFE, - 0x0F, 0xE0, 0xFE, 0x0F, 0xC0, 0xFC, 0x1F, 0xC1, 0xF8, 0x1F, 0x81, 0xF8, - 0x1F, 0x81, 0xF0, 0x1F, 0x01, 0xF0, 0x1E, 0x00, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x03, 0xC0, 0x7E, 0x0F, 0xE0, 0xFE, 0x0F, 0xC0, 0x78, 0x00, 0x7E, - 0x1F, 0xBF, 0x0F, 0xDF, 0x87, 0xCF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF1, - 0xE0, 0xF8, 0xF0, 0x7C, 0x78, 0x3C, 0x38, 0x1E, 0x1C, 0x0F, 0x0E, 0x07, - 0x0E, 0x03, 0x83, 0x01, 0x80, 0x00, 0x1C, 0x1C, 0x00, 0x3E, 0x3E, 0x00, - 0x3E, 0x3E, 0x00, 0x3C, 0x3C, 0x00, 0x7C, 0x7C, 0x00, 0x7C, 0x7C, 0x00, - 0x7C, 0x7C, 0x00, 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x0F, - 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x1F, - 0xFF, 0xFE, 0x03, 0xE3, 0xE0, 0x03, 0xE3, 0xE0, 0x03, 0xC3, 0xC0, 0x07, - 0xC7, 0xC0, 0x7F, 0xFF, 0xF8, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xF8, 0xFF, 0xFF, 0xF0, 0x0F, 0x0F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, - 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x3E, 0x1E, 0x00, 0x3E, 0x3E, 0x00, 0x3E, - 0x3E, 0x00, 0x3C, 0x3C, 0x00, 0x7C, 0x7C, 0x00, 0x38, 0x38, 0x00, 0x00, - 0x00, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0xFF, 0x00, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, - 0x01, 0xFF, 0xFF, 0x81, 0xFC, 0x1F, 0xC1, 0xF8, 0x03, 0xC0, 0xF8, 0x01, - 0xE0, 0x7C, 0x00, 0x40, 0x3F, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xFF, - 0x80, 0x03, 0xFF, 0xF8, 0x00, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0x00, 0x00, - 0x7F, 0xC0, 0x00, 0x07, 0xE0, 0xE0, 0x01, 0xF0, 0xF0, 0x00, 0xF8, 0xF8, - 0x00, 0xFC, 0x7E, 0x00, 0xFC, 0x3F, 0x81, 0xFE, 0x1F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFE, 0x03, 0xFF, 0xFC, 0x00, 0x07, 0xF0, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0xF8, - 0x00, 0x0F, 0xF8, 0x00, 0x7F, 0xE0, 0x03, 0xC3, 0xC0, 0x0E, 0x07, 0x00, - 0x70, 0x1C, 0x01, 0xC0, 0x70, 0x07, 0x01, 0xC0, 0x1C, 0x0E, 0x00, 0x78, - 0x78, 0x00, 0xFF, 0xC0, 0x03, 0xFE, 0x1F, 0x03, 0xE3, 0xFC, 0x00, 0x7F, - 0xC0, 0x0F, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xC0, 0x03, 0xF8, 0x7C, 0x0F, - 0x07, 0xFC, 0x00, 0x3F, 0xF0, 0x01, 0xE1, 0xE0, 0x07, 0x03, 0x80, 0x38, - 0x0E, 0x00, 0xE0, 0x38, 0x03, 0x80, 0xE0, 0x0E, 0x07, 0x00, 0x3C, 0x3C, - 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, - 0x01, 0xFF, 0x80, 0x3F, 0xFC, 0x03, 0xFF, 0xE0, 0x1F, 0xFE, 0x01, 0xF1, - 0xE0, 0x1F, 0x04, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, - 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0xE3, - 0xE7, 0xFF, 0x3F, 0x7E, 0xFF, 0xFB, 0xE7, 0xFF, 0x9E, 0x1F, 0xF1, 0xF0, - 0xFF, 0x8F, 0x83, 0xF8, 0x7C, 0x1F, 0xC3, 0xF0, 0xFF, 0x9F, 0xFF, 0xFC, - 0x7F, 0xFF, 0xE3, 0xFF, 0xFF, 0x0F, 0xFD, 0xF0, 0x1F, 0x80, 0x00, 0x7E, - 0xFD, 0xF3, 0xE7, 0xCF, 0x3E, 0x7C, 0xF1, 0xE3, 0xC7, 0x0E, 0x18, 0x00, - 0x00, 0x18, 0x00, 0xF0, 0x07, 0xC0, 0x3F, 0x01, 0xF8, 0x07, 0xC0, 0x3E, - 0x01, 0xF8, 0x07, 0xC0, 0x3E, 0x00, 0xF8, 0x07, 0xC0, 0x1F, 0x00, 0xF8, - 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x3E, 0x00, 0xF8, - 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0xFC, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x80, 0x7E, 0x00, 0xFC, 0x03, - 0xF0, 0x07, 0xC0, 0x1E, 0x00, 0x00, 0xC0, 0x07, 0x80, 0x3F, 0x00, 0xFC, - 0x03, 0xF0, 0x07, 0xE0, 0x1F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xF0, 0x07, - 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, - 0xF0, 0x07, 0xC0, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x01, - 0xF0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, - 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x00, 0xF0, 0x00, 0x00, 0x3C, - 0x00, 0x01, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x08, - 0x3C, 0x09, 0xF9, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, - 0x87, 0xFF, 0xE0, 0x07, 0xF8, 0x00, 0x7F, 0xC0, 0x07, 0xFF, 0x00, 0x7F, - 0xF8, 0x07, 0xE7, 0xE0, 0x3E, 0x3F, 0x01, 0xE0, 0xF8, 0x0E, 0x07, 0x80, - 0x00, 0x07, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x0F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x3E, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x7C, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xF0, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0xE0, 0x00, 0x03, 0xF0, 0x7E, 0x07, 0xC0, 0xFC, - 0x0F, 0x81, 0xF0, 0x1E, 0x03, 0xE0, 0x3C, 0x07, 0x80, 0x78, 0x0F, 0x00, - 0xE0, 0x0C, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x3C, 0xFF, 0xFF, 0xFF, 0xCF, 0x00, - 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xE0, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x07, 0x00, 0x00, - 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x1F, 0xFF, - 0xE0, 0x7F, 0xFF, 0xC0, 0xFC, 0x1F, 0x83, 0xF0, 0x1F, 0x8F, 0xC0, 0x1F, - 0x1F, 0x00, 0x3E, 0x7C, 0x00, 0x7C, 0xF8, 0x00, 0xF9, 0xF0, 0x01, 0xF3, - 0xC0, 0x07, 0xCF, 0x80, 0x0F, 0x9F, 0x00, 0x1E, 0x3E, 0x00, 0x3C, 0x78, - 0x00, 0xF8, 0xF0, 0x01, 0xF3, 0xE0, 0x03, 0xE7, 0xC0, 0x07, 0x8F, 0x80, - 0x1F, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0xF8, 0x7C, 0x01, 0xF0, 0xFC, 0x07, - 0xC1, 0xFC, 0x3F, 0x81, 0xFF, 0xFE, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, - 0x03, 0xFF, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x7E, - 0x00, 0x0F, 0xF0, 0x01, 0xFF, 0x80, 0x1F, 0xFC, 0x03, 0xFB, 0xE0, 0x1F, - 0x9E, 0x00, 0xF1, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, - 0x00, 0x1E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, - 0xC0, 0x00, 0x1E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, - 0x03, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, - 0x01, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3F, - 0xFF, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x03, 0xFF, 0xF0, - 0x01, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x80, 0x7F, 0x07, 0xF0, 0x1F, 0x00, - 0xFC, 0x0F, 0x80, 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0xF0, 0x01, 0xF0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xF8, - 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x70, 0x3F, 0x80, 0x3E, 0x1F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFF, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xFE, 0x00, 0x1F, - 0xFF, 0x80, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x0F, 0x81, 0xFC, 0x07, - 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x0F, 0xC0, - 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xC0, 0x01, 0xFF, 0xC0, 0x01, 0xFF, 0xC0, - 0x00, 0xFF, 0x80, 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x3C, 0x01, - 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, - 0xFC, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x07, 0xF0, 0x00, - 0x3F, 0xC0, 0x01, 0xFE, 0x00, 0x0F, 0xF8, 0x00, 0x7F, 0xE0, 0x03, 0xFF, - 0x80, 0x1F, 0xBE, 0x00, 0x7C, 0xF0, 0x03, 0xE7, 0xC0, 0x1F, 0x1F, 0x00, - 0xF8, 0x7C, 0x07, 0xE1, 0xE0, 0x3F, 0x07, 0x81, 0xF8, 0x3E, 0x07, 0xC0, - 0xF8, 0x3E, 0x03, 0xC1, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFE, - 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0x80, 0x00, 0xF8, 0x00, 0x3F, 0xF8, 0x01, - 0xFF, 0xE0, 0x07, 0xFF, 0x80, 0x1F, 0xFE, 0x00, 0x7F, 0xF0, 0x01, 0xFF, - 0xFF, 0x00, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0xC0, 0x3F, 0xFF, 0xE0, 0x3F, - 0xFF, 0xE0, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, - 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF7, 0xF0, 0x00, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0x80, 0x3F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x0F, 0x01, 0xFC, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, - 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0xF8, 0x3C, 0x03, 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, - 0xFC, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xF8, 0x00, 0x3F, 0xE0, 0x00, 0x00, - 0x01, 0xFC, 0x00, 0x07, 0xFE, 0x00, 0x1F, 0xFF, 0x00, 0x7F, 0xFF, 0x00, - 0xFF, 0xFE, 0x01, 0xFE, 0x1C, 0x03, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x0F, - 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x3E, 0x00, 0x3E, - 0xFF, 0x80, 0x7D, 0xFF, 0xC0, 0x7F, 0xFF, 0xE0, 0x7F, 0xFF, 0xE0, 0x7F, - 0x87, 0xF0, 0xFF, 0x03, 0xF0, 0xFC, 0x01, 0xF0, 0xF8, 0x01, 0xF0, 0xF8, - 0x01, 0xF0, 0xF8, 0x01, 0xF0, 0xF8, 0x03, 0xE0, 0xF8, 0x03, 0xE0, 0xFC, - 0x07, 0xC0, 0xFE, 0x0F, 0xC0, 0x7F, 0xFF, 0x80, 0x7F, 0xFF, 0x00, 0x3F, - 0xFE, 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0xFF, 0xFD, 0xFF, - 0xFF, 0xE7, 0xFF, 0xFF, 0xBF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFB, 0xE0, 0x07, - 0xCF, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x00, - 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x1F, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0xFF, - 0xE0, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0xE0, 0x7F, 0xFF, 0xC0, 0xFC, 0x1F, - 0xC3, 0xF0, 0x1F, 0x8F, 0xC0, 0x1F, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0x7C, - 0x7C, 0x01, 0xF0, 0xFC, 0x07, 0xE0, 0xFC, 0x1F, 0x81, 0xFF, 0xFE, 0x01, - 0xFF, 0xF0, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x3F, 0xFF, 0xE0, 0xFE, - 0x0F, 0xC3, 0xF0, 0x0F, 0xC7, 0xC0, 0x0F, 0x9F, 0x00, 0x1F, 0x3E, 0x00, - 0x3E, 0x7C, 0x00, 0xFC, 0xFC, 0x03, 0xF1, 0xFC, 0x1F, 0xE3, 0xFF, 0xFF, - 0x83, 0xFF, 0xFE, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x01, 0xFC, 0x00, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0xF8, 0x00, 0xFF, 0xFC, 0x01, 0xFF, - 0xFE, 0x03, 0xFF, 0xFE, 0x03, 0xF0, 0x7F, 0x07, 0xE0, 0x3F, 0x07, 0xC0, - 0x1F, 0x0F, 0xC0, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, - 0x3F, 0x0F, 0xC0, 0x7F, 0x0F, 0xE1, 0xFF, 0x07, 0xFF, 0xFE, 0x07, 0xFF, - 0xFE, 0x03, 0xFF, 0xBE, 0x01, 0xFF, 0x7C, 0x00, 0xFC, 0x7C, 0x00, 0x00, - 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x0F, - 0xE0, 0x00, 0x1F, 0xC0, 0x38, 0x7F, 0x80, 0x7F, 0xFF, 0x00, 0xFF, 0xFE, - 0x00, 0xFF, 0xF8, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0x07, 0x83, - 0xF1, 0xFC, 0x7F, 0x1F, 0x83, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x1F, 0x8F, 0xE3, 0xF8, 0xFC, - 0x1E, 0x00, 0x00, 0x3C, 0x00, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xC0, - 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF8, 0x03, 0xE0, 0x0F, 0xC0, - 0x1F, 0x00, 0x7C, 0x00, 0xF0, 0x03, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xC0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, - 0x03, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xE0, 0x00, - 0x7F, 0xC0, 0x00, 0xFF, 0x80, 0x03, 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x0F, - 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, - 0x3F, 0xE0, 0x00, 0x0F, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x3F, 0xE0, - 0x00, 0x07, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, - 0x80, 0x1F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, - 0xF3, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x80, 0x00, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, - 0x00, 0x1F, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x7F, - 0xE0, 0x00, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x03, 0xFE, 0x00, 0x07, 0xFC, - 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0x80, - 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFC, 0x01, 0xFF, - 0xE1, 0xFF, 0xFE, 0x3F, 0xFF, 0xE7, 0xFF, 0xFF, 0xF8, 0x1F, 0xFE, 0x00, - 0xFF, 0x80, 0x1F, 0xF0, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x0F, - 0xE0, 0x07, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xC0, 0x0F, 0xE0, - 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xF0, 0x00, 0x3F, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x00, - 0x3F, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0xF0, 0x01, - 0xFF, 0xF0, 0x0F, 0xFF, 0xE0, 0x3F, 0x07, 0xE0, 0x7C, 0x07, 0xC1, 0xE0, - 0x07, 0x87, 0xC0, 0x0F, 0x0F, 0x00, 0x1C, 0x3C, 0x00, 0x78, 0x78, 0x07, - 0xF1, 0xE0, 0x3F, 0xE3, 0xC1, 0xFF, 0x87, 0x87, 0xFF, 0x0E, 0x1F, 0x9E, - 0x3C, 0x7C, 0x3C, 0x78, 0xF0, 0x78, 0xF3, 0xC0, 0xE1, 0xC7, 0x83, 0xC3, - 0x8F, 0x07, 0x8F, 0x1E, 0x0F, 0x1E, 0x3E, 0x1C, 0x3C, 0x7F, 0xFC, 0x78, - 0x7F, 0xFC, 0xF0, 0x7F, 0xF1, 0xE0, 0x3F, 0xE3, 0xC0, 0x00, 0x07, 0x80, - 0x00, 0x0F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3F, 0x01, - 0xC0, 0x7F, 0xFF, 0x80, 0x7F, 0xFE, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0x80, - 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xE0, - 0x00, 0x1F, 0xFF, 0x80, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x0F, 0xFC, 0x00, - 0x00, 0x7F, 0xF0, 0x00, 0x01, 0xE7, 0xC0, 0x00, 0x0F, 0x9F, 0x00, 0x00, - 0x7C, 0x7C, 0x00, 0x01, 0xE1, 0xF8, 0x00, 0x0F, 0x87, 0xE0, 0x00, 0x7C, - 0x0F, 0x80, 0x01, 0xF0, 0x3E, 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x3F, 0xFF, - 0xF0, 0x01, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0xFC, - 0x01, 0xFF, 0xFF, 0xF8, 0x0F, 0xC0, 0x07, 0xE0, 0x3E, 0x00, 0x0F, 0x87, - 0xFF, 0x03, 0xFF, 0xBF, 0xFC, 0x1F, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, - 0xC1, 0xFF, 0xEF, 0xFE, 0x07, 0xFF, 0x00, 0x03, 0xFF, 0xFF, 0x80, 0x3F, - 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, - 0xFF, 0x80, 0x7C, 0x00, 0xFC, 0x03, 0xE0, 0x03, 0xE0, 0x1E, 0x00, 0x1F, - 0x01, 0xF0, 0x00, 0xF8, 0x0F, 0x80, 0x0F, 0x80, 0x7C, 0x01, 0xF8, 0x03, - 0xFF, 0xFF, 0x80, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xFC, 0x03, 0xC0, 0x0F, 0xF0, 0x3E, 0x00, 0x1F, - 0x81, 0xF0, 0x00, 0x7C, 0x0F, 0x80, 0x03, 0xE0, 0x78, 0x00, 0x1F, 0x03, - 0xC0, 0x03, 0xF1, 0xFF, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, - 0xFF, 0x87, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFE, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x03, 0xFF, 0xE6, 0x00, 0x7F, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0x03, - 0xFF, 0xFF, 0xF0, 0x7F, 0x81, 0xFF, 0x0F, 0xE0, 0x07, 0xE1, 0xF8, 0x00, - 0x3E, 0x1F, 0x00, 0x03, 0xE3, 0xF0, 0x00, 0x3C, 0x3E, 0x00, 0x03, 0xC7, - 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0xC0, - 0x00, 0x70, 0x7E, 0x00, 0x1F, 0x07, 0xF8, 0x07, 0xF0, 0x3F, 0xFF, 0xFF, - 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x00, 0x7F, 0xFE, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0xF0, 0x07, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0x00, 0xFE, - 0x01, 0xF0, 0x07, 0xE0, 0x1E, 0x00, 0x3F, 0x01, 0xE0, 0x01, 0xF0, 0x3E, - 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xF0, 0x3E, 0x00, 0x1F, 0x03, 0xC0, 0x01, - 0xF0, 0x7C, 0x00, 0x1F, 0x07, 0xC0, 0x03, 0xF0, 0x7C, 0x00, 0x3E, 0x07, - 0x80, 0x03, 0xE0, 0x78, 0x00, 0x7E, 0x0F, 0x80, 0x07, 0xC0, 0xF8, 0x00, - 0xFC, 0x0F, 0x80, 0x1F, 0x80, 0xF0, 0x07, 0xF0, 0x7F, 0xFF, 0xFE, 0x07, - 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, - 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, - 0xFE, 0x1F, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0x00, 0x78, 0x00, 0xF8, - 0x07, 0xC0, 0x07, 0xC0, 0x3E, 0x00, 0x3E, 0x01, 0xF0, 0xF1, 0xE0, 0x0F, - 0x0F, 0x8E, 0x00, 0x78, 0x7C, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x3F, 0xFE, - 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0xFF, 0xFC, 0x00, - 0x07, 0xC3, 0xC0, 0x00, 0x3E, 0x1E, 0x1E, 0x01, 0xE0, 0xE0, 0xF0, 0x0F, - 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x7C, 0x07, 0xC0, 0x03, 0xE1, 0xFF, 0xFF, - 0xFE, 0x1F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xF8, - 0x1F, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0xC0, - 0x1F, 0x00, 0x0F, 0x80, 0x3E, 0x00, 0x1E, 0x00, 0x78, 0x00, 0x7C, 0x00, - 0xF0, 0x70, 0xF8, 0x03, 0xE1, 0xF0, 0xE0, 0x07, 0xC3, 0xC0, 0x00, 0x0F, - 0xFF, 0x80, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0xFF, - 0xFC, 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x03, 0xC3, 0xE0, 0x00, 0x07, 0x87, - 0xC0, 0x00, 0x1F, 0x07, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x3F, 0xFF, 0x80, - 0x00, 0xFF, 0xFF, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x01, 0xFF, 0xF8, 0x00, - 0x00, 0x00, 0x07, 0xF8, 0x60, 0x03, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xF0, - 0x1F, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xE0, 0x7F, 0x80, 0xFE, 0x0F, 0xE0, - 0x03, 0xE0, 0xF8, 0x00, 0x3C, 0x1F, 0x00, 0x03, 0xC3, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x7F, 0xFC, 0xF8, 0x0F, 0xFF, - 0xEF, 0x80, 0xFF, 0xFE, 0xF8, 0x0F, 0xFF, 0xCF, 0x80, 0x7F, 0xF8, 0xF8, - 0x00, 0x1F, 0x0F, 0xC0, 0x01, 0xF0, 0xFE, 0x00, 0x1F, 0x07, 0xF8, 0x07, - 0xE0, 0x7F, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFC, 0x00, - 0x7F, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x01, 0xFF, 0x0F, 0xF8, 0x0F, - 0xFC, 0x7F, 0xF0, 0x7F, 0xF1, 0xFF, 0xC1, 0xFF, 0xC7, 0xFE, 0x03, 0xFE, - 0x1F, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3C, 0x00, 0x78, 0x00, - 0xF0, 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, - 0x00, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0x80, 0x1F, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xC0, 0x07, 0x80, 0x1F, 0x00, 0x1E, - 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, - 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x07, 0xFE, 0x1F, 0xF8, 0x3F, 0xF8, 0xFF, - 0xF0, 0xFF, 0xE3, 0xFF, 0xC3, 0xFF, 0x8F, 0xFE, 0x0F, 0xFC, 0x3F, 0xF8, - 0x00, 0x03, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xF0, 0x00, 0x7C, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x07, 0x80, 0x00, 0x07, 0xC0, 0x01, 0xFF, 0xFF, - 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x1F, 0xFF, - 0xF8, 0x00, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0xFC, 0x00, 0x3F, - 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xC0, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x0F, - 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0xC0, 0x07, 0x00, 0x0F, 0x80, - 0x1F, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x78, 0x00, 0x78, 0x01, - 0xF0, 0x01, 0xF0, 0x03, 0xE0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, 0x0F, - 0x80, 0x3F, 0x00, 0x1F, 0xC0, 0xFC, 0x00, 0x7F, 0xFF, 0xF8, 0x00, 0xFF, - 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x03, 0xFF, 0xC3, 0xFE, 0x0F, 0xFF, 0x8F, 0xFC, 0x1F, - 0xFF, 0x3F, 0xF8, 0x3F, 0xFE, 0x7F, 0xF0, 0x7F, 0xF8, 0x7F, 0xC0, 0x1F, - 0x01, 0xFC, 0x00, 0x3E, 0x07, 0xF0, 0x00, 0x78, 0x3F, 0x80, 0x01, 0xF0, - 0xFE, 0x00, 0x03, 0xE3, 0xF0, 0x00, 0x07, 0xDF, 0xC0, 0x00, 0x0F, 0xFE, - 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0xFF, 0xFE, - 0x00, 0x01, 0xFC, 0xFC, 0x00, 0x03, 0xE0, 0xFC, 0x00, 0x0F, 0x81, 0xF8, - 0x00, 0x1F, 0x01, 0xF8, 0x00, 0x3E, 0x03, 0xF0, 0x00, 0x78, 0x03, 0xE0, - 0x00, 0xF0, 0x07, 0xE0, 0x1F, 0xFE, 0x0F, 0xF8, 0x7F, 0xFC, 0x1F, 0xF8, - 0xFF, 0xF8, 0x1F, 0xF1, 0xFF, 0xF0, 0x3F, 0xE1, 0xFF, 0xC0, 0x7F, 0x80, - 0x03, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0xE0, 0x03, 0xFF, - 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x0E, 0x00, 0xF0, 0x01, 0xE0, 0x3E, 0x00, - 0x7C, 0x07, 0xC0, 0x0F, 0x80, 0xF8, 0x01, 0xF0, 0x1E, 0x00, 0x7C, 0x07, - 0xC0, 0x0F, 0x9F, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, - 0x9F, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x3F, - 0xC1, 0xFF, 0x00, 0x1F, 0xF0, 0x7F, 0xC0, 0x07, 0xFC, 0x1F, 0xF0, 0x03, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x00, 0xFF, 0x80, 0xFF, 0x80, 0x3F, 0xE0, - 0x3F, 0xE0, 0x0F, 0xF8, 0x1F, 0xF0, 0x03, 0xFF, 0x0F, 0xFC, 0x00, 0xF7, - 0xC3, 0xFF, 0x00, 0x7D, 0xF1, 0xF7, 0xC0, 0x1F, 0x7C, 0xFD, 0xF0, 0x07, - 0xDF, 0xBE, 0x78, 0x01, 0xE3, 0xFF, 0x3E, 0x00, 0x78, 0xFF, 0xCF, 0x80, - 0x3E, 0x3F, 0xE3, 0xE0, 0x0F, 0x87, 0xF0, 0xF8, 0x03, 0xE1, 0xFC, 0x3C, - 0x00, 0xF0, 0x7E, 0x1F, 0x00, 0x7C, 0x1F, 0x07, 0xC0, 0x1F, 0x00, 0x01, - 0xF0, 0x07, 0xC0, 0x00, 0x78, 0x07, 0xFE, 0x01, 0xFF, 0x83, 0xFF, 0xC0, - 0xFF, 0xF0, 0xFF, 0xF0, 0x7F, 0xFC, 0x3F, 0xF8, 0x1F, 0xFE, 0x0F, 0xFC, - 0x03, 0xFF, 0x00, 0x07, 0xF8, 0x07, 0xFF, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, - 0xFC, 0x0F, 0xFF, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0xFE, 0x0F, 0xFE, 0x01, - 0xFE, 0x00, 0xF8, 0x01, 0xFF, 0x00, 0xF0, 0x01, 0xFF, 0x01, 0xF0, 0x03, - 0xFF, 0x81, 0xF0, 0x03, 0xFF, 0x81, 0xF0, 0x03, 0xEF, 0xC1, 0xF0, 0x03, - 0xCF, 0xC1, 0xE0, 0x07, 0xC7, 0xE3, 0xE0, 0x07, 0xC7, 0xE3, 0xE0, 0x07, - 0xC3, 0xF3, 0xE0, 0x07, 0xC3, 0xF3, 0xC0, 0x07, 0x81, 0xF7, 0xC0, 0x0F, - 0x81, 0xFF, 0xC0, 0x0F, 0x80, 0xFF, 0xC0, 0x0F, 0x80, 0xFF, 0xC0, 0x0F, - 0x00, 0xFF, 0x80, 0x0F, 0x00, 0x7F, 0x80, 0x7F, 0xF0, 0x7F, 0x80, 0xFF, - 0xF0, 0x3F, 0x80, 0xFF, 0xF0, 0x3F, 0x00, 0xFF, 0xF0, 0x1F, 0x00, 0x7F, - 0xE0, 0x1F, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xFF, - 0xF8, 0x00, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF8, 0x0F, 0xF0, 0x7F, 0x83, - 0xF8, 0x03, 0xF0, 0xFC, 0x00, 0x7E, 0x1F, 0x00, 0x07, 0xE7, 0xE0, 0x00, - 0x7C, 0xF8, 0x00, 0x0F, 0xBE, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x3E, 0xF0, - 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x3E, 0xF8, 0x00, 0x07, - 0xDF, 0x00, 0x00, 0xFB, 0xE0, 0x00, 0x3E, 0x7C, 0x00, 0x0F, 0xCF, 0xC0, - 0x01, 0xF0, 0xF8, 0x00, 0x7E, 0x1F, 0x80, 0x3F, 0x83, 0xFC, 0x1F, 0xE0, - 0x3F, 0xFF, 0xF8, 0x03, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0x00, 0x03, 0xFF, - 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xF8, - 0x07, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0xF0, 0x0F, - 0x80, 0x7F, 0x00, 0xF8, 0x01, 0xF0, 0x0F, 0x00, 0x1F, 0x01, 0xF0, 0x01, - 0xF0, 0x1F, 0x00, 0x1F, 0x01, 0xF0, 0x03, 0xE0, 0x1E, 0x00, 0x7E, 0x01, - 0xE0, 0x0F, 0xC0, 0x3F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, - 0xE0, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7F, 0xFF, - 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xF0, 0x00, - 0x7F, 0xFE, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xFF, 0x80, 0x03, - 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF8, 0x0F, 0xF0, 0x7F, - 0x83, 0xF8, 0x03, 0xF0, 0xFC, 0x00, 0x3F, 0x1F, 0x00, 0x07, 0xE7, 0xC0, - 0x00, 0x7D, 0xF8, 0x00, 0x0F, 0xBE, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x3F, - 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x3E, 0xF8, 0x00, - 0x07, 0xDF, 0x00, 0x01, 0xFB, 0xE0, 0x00, 0x3E, 0x7E, 0x00, 0x0F, 0x8F, - 0xC0, 0x03, 0xF0, 0xFC, 0x01, 0xFC, 0x1F, 0xE0, 0xFF, 0x01, 0xFF, 0xFF, - 0xC0, 0x1F, 0xFF, 0xF0, 0x01, 0xFF, 0xFC, 0x00, 0x1F, 0xFE, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1F, 0xF8, 0x38, 0x0F, 0xFF, 0xFF, - 0x81, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0x00, 0xF0, - 0x1F, 0x80, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x01, 0xFF, - 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0x00, 0x7C, 0x03, - 0xF8, 0x03, 0xE0, 0x07, 0xC0, 0x1E, 0x00, 0x3E, 0x00, 0xF0, 0x01, 0xF0, - 0x0F, 0x80, 0x1F, 0x80, 0x7C, 0x01, 0xF8, 0x03, 0xE0, 0x3F, 0x80, 0x1F, - 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, - 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x1E, 0x07, 0xF0, 0x01, 0xF0, 0x1F, 0xC0, - 0x0F, 0x80, 0x7E, 0x00, 0x7C, 0x03, 0xF8, 0x03, 0xC0, 0x0F, 0xC0, 0xFF, - 0xE0, 0x7F, 0xCF, 0xFF, 0x01, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, - 0x3F, 0xDF, 0xFC, 0x01, 0xFC, 0x00, 0x0F, 0xE1, 0x80, 0x0F, 0xFF, 0xF0, - 0x0F, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xC1, 0xFC, 0x0F, - 0xE0, 0x7C, 0x01, 0xF8, 0x3E, 0x00, 0x3E, 0x0F, 0x80, 0x0F, 0x03, 0xE0, - 0x03, 0xC0, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x07, 0xFF, 0x80, 0x01, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFE, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xE1, 0xE0, 0x00, 0xF8, 0xF8, 0x00, - 0x3E, 0x3E, 0x00, 0x1F, 0x8F, 0xC0, 0x0F, 0xC3, 0xFC, 0x0F, 0xF0, 0xFF, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFE, 0x03, 0x9F, 0xFE, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF7, 0xFF, - 0xFF, 0xFD, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0x9F, 0x07, 0x83, 0xE7, - 0x83, 0xE0, 0xFB, 0xE0, 0xF8, 0x3E, 0xF8, 0x3E, 0x0F, 0x3E, 0x0F, 0x07, - 0xCF, 0x07, 0xC1, 0xF3, 0x81, 0xF0, 0x38, 0x00, 0x7C, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x7C, 0x00, 0x07, 0xFF, 0xF8, 0x01, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, - 0x80, 0x3F, 0xFF, 0xE0, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xF0, 0x7F, 0xE7, - 0xFF, 0x8F, 0xFF, 0x7F, 0xF9, 0xFF, 0xF7, 0xFF, 0x1F, 0xFE, 0x7F, 0xF0, - 0xFF, 0xC1, 0xE0, 0x01, 0xF0, 0x1E, 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xF0, - 0x3E, 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xE0, 0x3C, 0x00, 0x3E, 0x07, 0xC0, - 0x03, 0xE0, 0x7C, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xC0, 0x7C, 0x00, 0x3C, - 0x07, 0x80, 0x07, 0xC0, 0xF8, 0x00, 0x7C, 0x0F, 0x80, 0x07, 0xC0, 0xF8, - 0x00, 0x78, 0x0F, 0x80, 0x0F, 0x80, 0xFC, 0x01, 0xF8, 0x0F, 0xC0, 0x3F, - 0x00, 0xFF, 0x07, 0xE0, 0x07, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xC0, 0x03, - 0xFF, 0xF0, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x7F, 0xF0, - 0x1F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFC, 0x0F, - 0xFF, 0x7F, 0xE0, 0x3F, 0xF8, 0x7C, 0x00, 0x1F, 0x01, 0xF0, 0x00, 0xF8, - 0x07, 0xC0, 0x03, 0xE0, 0x1F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0xF8, 0x00, - 0xF8, 0x03, 0xE0, 0x03, 0xE0, 0x1F, 0x00, 0x0F, 0xC0, 0xFC, 0x00, 0x1F, - 0x03, 0xE0, 0x00, 0x7C, 0x1F, 0x00, 0x01, 0xF0, 0xFC, 0x00, 0x07, 0xC3, - 0xE0, 0x00, 0x1F, 0x9F, 0x00, 0x00, 0x3E, 0xFC, 0x00, 0x00, 0xFB, 0xE0, - 0x00, 0x03, 0xFF, 0x00, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0x7F, 0xF0, 0x3F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0x1E, 0x00, - 0x01, 0xE0, 0xF0, 0x7C, 0x1F, 0x0F, 0x87, 0xE0, 0xF0, 0x7C, 0x3F, 0x0F, - 0x83, 0xE3, 0xF8, 0x7C, 0x1F, 0x1F, 0xE3, 0xC0, 0xF9, 0xFF, 0x3E, 0x07, - 0xCF, 0xF9, 0xF0, 0x3E, 0xFF, 0xCF, 0x01, 0xF7, 0xBE, 0xF8, 0x0F, 0xFD, - 0xF7, 0xC0, 0x7B, 0xCF, 0xFC, 0x03, 0xFE, 0x7F, 0xE0, 0x3F, 0xE3, 0xFF, - 0x01, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, 0x7F, 0x80, 0x7F, 0x83, 0xFC, 0x03, - 0xF8, 0x1F, 0xC0, 0x1F, 0xC0, 0xFE, 0x00, 0xFC, 0x07, 0xF0, 0x07, 0xE0, - 0x3F, 0x00, 0x3E, 0x01, 0xF8, 0x00, 0x01, 0xFE, 0x03, 0xFE, 0x03, 0xFF, - 0x07, 0xFF, 0x07, 0xFF, 0x07, 0xFF, 0x07, 0xFE, 0x07, 0xFE, 0x03, 0xFC, - 0x03, 0xFC, 0x00, 0xFC, 0x03, 0xF0, 0x00, 0xFE, 0x07, 0xE0, 0x00, 0x7E, - 0x1F, 0xC0, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x00, 0x1F, - 0xFC, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, - 0xF8, 0x00, 0x00, 0xFC, 0xFC, 0x00, 0x01, 0xF8, 0x7E, 0x00, 0x03, 0xF0, - 0x7E, 0x00, 0x07, 0xE0, 0x3F, 0x00, 0x0F, 0xC0, 0x1F, 0x80, 0x7F, 0xE0, - 0x7F, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, 0xFF, 0xE0, - 0xFF, 0xE0, 0x7F, 0xC0, 0xFF, 0xC0, 0x7F, 0xC0, 0x7F, 0xFF, 0xF0, 0x3F, - 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0x03, 0xFF, 0x7F, 0x80, 0xFF, 0x87, 0xC0, - 0x1F, 0x01, 0xF8, 0x0F, 0x80, 0x3E, 0x07, 0xC0, 0x0F, 0xC3, 0xE0, 0x01, - 0xF1, 0xF0, 0x00, 0x7E, 0xF8, 0x00, 0x0F, 0xFC, 0x00, 0x03, 0xFE, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x00, 0xF0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x07, 0xFF, 0xF0, 0x03, 0xFF, 0xFE, 0x00, - 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x00, 0x01, 0xFF, - 0xFF, 0xC0, 0x3F, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xE0, - 0x3F, 0xFF, 0xFC, 0x07, 0xC0, 0x3F, 0x00, 0xF8, 0x0F, 0xC0, 0x1F, 0x03, - 0xF0, 0x03, 0xC0, 0xFC, 0x00, 0xF8, 0x3F, 0x00, 0x0E, 0x0F, 0xC0, 0x00, - 0x03, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x07, 0xE0, 0x00, 0x01, 0xF8, 0x0E, 0x00, 0x7E, 0x03, 0xE0, 0x1F, - 0x80, 0x7C, 0x07, 0xE0, 0x0F, 0x01, 0xF8, 0x03, 0xE0, 0x7E, 0x00, 0x7C, - 0x1F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x0F, 0xFF, - 0xFF, 0x81, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, 0x0F, - 0xFC, 0x07, 0xFF, 0x01, 0xFF, 0x80, 0x7C, 0x00, 0x1E, 0x00, 0x07, 0x80, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0xC0, 0x01, - 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x03, 0xE0, 0x00, 0xF8, - 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, - 0x80, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, - 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x00, 0x20, 0x03, 0xC0, 0x3E, 0x01, 0xF0, - 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, 0x0F, 0x80, - 0x7C, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x03, - 0xE0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x03, 0xE0, 0x1F, - 0x00, 0xF8, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x1F, 0x00, 0xF8, - 0x07, 0xC0, 0x3E, 0x00, 0xF0, 0x07, 0x80, 0x38, 0x00, 0xFF, 0xC0, 0x7F, - 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x03, 0xE0, 0x00, 0xF0, - 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, - 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, - 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x7F, 0xE0, 0x3F, 0xF8, - 0x0F, 0xFC, 0x03, 0xFF, 0x00, 0xFF, 0xC0, 0x00, 0x00, 0x08, 0x00, 0x01, - 0xC0, 0x00, 0x3C, 0x00, 0x07, 0xE0, 0x00, 0xFE, 0x00, 0x1F, 0xF0, 0x03, - 0xFF, 0x80, 0xFF, 0xF8, 0x1F, 0xCF, 0xC3, 0xF8, 0xFE, 0x7E, 0x07, 0xEF, - 0xC0, 0x3F, 0xF8, 0x03, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0xE0, 0x7F, 0xFF, - 0xFF, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xEF, 0xFF, 0xFF, 0xFF, 0x00, 0x60, 0xF0, 0xF8, 0x7C, 0x3E, 0x1F, 0x0F, - 0x06, 0x00, 0x3F, 0xE0, 0x03, 0xFF, 0xF8, 0x07, 0xFF, 0xFC, 0x07, 0xFF, - 0xFE, 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x3E, 0x00, 0x7F, 0xFE, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, 0xFC, 0x1F, 0xFF, - 0xFC, 0x3F, 0xFF, 0xFC, 0x7F, 0x00, 0x78, 0x7C, 0x00, 0x78, 0xF8, 0x00, - 0xF8, 0xF8, 0x03, 0xF8, 0xFC, 0x0F, 0xFE, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, - 0xFF, 0x7F, 0xFF, 0xFF, 0x3F, 0xFD, 0xFE, 0x0F, 0xE0, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0xF0, 0xFE, 0x00, 0x0F, 0xBF, 0xFC, 0x00, 0x7F, - 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xC0, 0x1F, 0xFF, 0xFF, 0x00, 0xFF, 0x03, - 0xF8, 0x0F, 0xE0, 0x07, 0xE0, 0x7E, 0x00, 0x3F, 0x03, 0xE0, 0x00, 0xF8, - 0x1F, 0x00, 0x07, 0xC0, 0xF0, 0x00, 0x3E, 0x0F, 0x80, 0x01, 0xF0, 0x7C, - 0x00, 0x1F, 0x03, 0xE0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0xC0, 0xFC, 0x00, - 0x7C, 0x0F, 0xE0, 0x07, 0xE3, 0xFF, 0xC0, 0xFE, 0x3F, 0xFF, 0xFF, 0xE1, - 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xE0, 0x7F, 0x9F, 0xFC, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x00, 0x1F, 0xE3, 0x80, 0x7F, 0xFF, 0xC0, 0x7F, 0xFF, - 0xE0, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF8, 0xFF, 0x01, 0xFC, 0x7E, 0x00, - 0x7C, 0x7E, 0x00, 0x3E, 0x3E, 0x00, 0x0E, 0x3E, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, - 0x00, 0x01, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x0C, 0x7F, 0x80, 0x3F, 0x1F, - 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x00, - 0x0F, 0xFC, 0x00, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x7C, 0x00, 0x3F, 0x87, 0xC0, 0x0F, - 0xFF, 0x7C, 0x03, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, - 0x81, 0xFC, 0x0F, 0xF8, 0x3F, 0x00, 0x3F, 0x83, 0xE0, 0x01, 0xF0, 0x7C, - 0x00, 0x1F, 0x07, 0xC0, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x0F, 0x80, 0x01, - 0xF0, 0xF8, 0x00, 0x1E, 0x0F, 0x80, 0x03, 0xE0, 0xF8, 0x00, 0x3E, 0x0F, - 0xC0, 0x07, 0xE0, 0xFC, 0x00, 0xFE, 0x07, 0xF0, 0x3F, 0xF8, 0x7F, 0xFF, - 0xFF, 0xC3, 0xFF, 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0xC0, 0xFF, 0xE7, 0xF8, - 0x03, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xF0, 0x03, 0xFF, - 0xF8, 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xFE, 0x1F, 0xE0, 0x7E, 0x3F, 0x80, - 0x1F, 0x3F, 0x00, 0x0F, 0x7E, 0x00, 0x0F, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x1C, 0x7F, 0x01, 0xFE, 0x7F, 0xFF, - 0xFE, 0x3F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0x03, 0xFF, - 0x00, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xF0, - 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0xE0, 0x01, 0xF0, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x7F, 0xFF, 0xF0, - 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, - 0xFF, 0xE0, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x03, 0xE0, 0x00, 0x07, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x0F, - 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0x0F, 0xFE, 0xFF, 0x03, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, - 0x0F, 0xFF, 0xFF, 0xF1, 0xFC, 0x1F, 0xFE, 0x3F, 0x80, 0x7F, 0x03, 0xE0, - 0x03, 0xF0, 0x7E, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xE0, 0xF8, 0x00, 0x3E, - 0x0F, 0x80, 0x03, 0xE0, 0xF8, 0x00, 0x3E, 0x0F, 0x80, 0x03, 0xC0, 0xF8, - 0x00, 0x7C, 0x0F, 0xC0, 0x0F, 0xC0, 0xFC, 0x01, 0xFC, 0x07, 0xF0, 0x7F, - 0x80, 0x7F, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF8, 0x00, - 0xFF, 0xEF, 0x80, 0x03, 0xF0, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xF0, 0x00, 0x00, 0x7E, 0x00, 0x1F, 0xFF, 0xE0, 0x03, 0xFF, 0xFC, 0x00, - 0x3F, 0xFF, 0x80, 0x03, 0xFF, 0xE0, 0x00, 0x3F, 0xF8, 0x00, 0x00, 0x03, - 0xF8, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xE0, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x01, 0xF1, 0xF8, 0x00, 0x79, 0xFF, 0x80, 0x1E, 0xFF, 0xF0, 0x0F, - 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0xFF, 0x07, 0xE0, 0x3F, 0x00, 0xF8, - 0x1F, 0x80, 0x3E, 0x07, 0xC0, 0x0F, 0x81, 0xF0, 0x03, 0xC0, 0x7C, 0x00, - 0xF0, 0x1E, 0x00, 0x7C, 0x0F, 0x80, 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0xF8, - 0x01, 0xE0, 0x3C, 0x00, 0xF8, 0x0F, 0x00, 0x3E, 0x1F, 0xF8, 0x3F, 0xEF, - 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0x3F, - 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x01, 0xFF, 0xC0, 0x07, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x1F, 0xFC, 0x00, - 0x3F, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, - 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x01, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x3F, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x07, - 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x01, 0xFF, 0xFE, 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xF8, 0x1F, 0xFF, 0xF0, - 0x3F, 0xFF, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xC0, 0x00, - 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF8, 0x00, 0x01, - 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, - 0xFF, 0xFF, 0x03, 0xFF, 0xFC, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0xC0, 0x0F, - 0xFC, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0xC0, - 0x00, 0x1F, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x3C, 0x3F, 0xF0, - 0x1F, 0x1F, 0xFC, 0x07, 0xC7, 0xFF, 0x01, 0xF1, 0xFF, 0xC0, 0x78, 0x7F, - 0xE0, 0x1E, 0x7F, 0x80, 0x0F, 0xBF, 0x80, 0x03, 0xFF, 0xC0, 0x00, 0xFF, - 0xC0, 0x00, 0x3F, 0xE0, 0x00, 0x0F, 0xFC, 0x00, 0x07, 0xFF, 0x80, 0x01, - 0xF7, 0xF0, 0x00, 0x7C, 0xFE, 0x00, 0x1E, 0x1F, 0xC0, 0x0F, 0x83, 0xF8, - 0x1F, 0xE0, 0xFF, 0xEF, 0xF8, 0x3F, 0xFB, 0xFE, 0x1F, 0xFE, 0xFF, 0x07, - 0xFF, 0x9F, 0xC0, 0xFF, 0xC0, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0xC0, 0x03, - 0xFF, 0x80, 0x07, 0xFF, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, - 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x7F, 0xFF, 0xF9, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0x00, 0x00, 0x07, 0x81, 0xE0, - 0x3F, 0xBF, 0x9F, 0xE1, 0xFF, 0xFE, 0xFF, 0x87, 0xFF, 0xFF, 0xFF, 0x1F, - 0xFF, 0xFF, 0xFC, 0x7F, 0xC7, 0xF1, 0xF0, 0x7E, 0x1F, 0x87, 0xC1, 0xF0, - 0x7C, 0x1F, 0x07, 0x81, 0xE0, 0x7C, 0x1E, 0x0F, 0x81, 0xE0, 0xF8, 0x3E, - 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3C, 0x0F, 0x03, - 0xC1, 0xF0, 0x7C, 0x0F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF1, - 0xFE, 0x1F, 0x87, 0xEF, 0xFC, 0x7F, 0x1F, 0xFF, 0xF3, 0xFC, 0x7F, 0xFF, - 0xCF, 0xF3, 0xFF, 0xFE, 0x3F, 0x8F, 0xE0, 0x00, 0x01, 0xF8, 0x01, 0xF9, - 0xFF, 0x80, 0xFE, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0x83, - 0xFF, 0x07, 0xE0, 0x3F, 0x00, 0xF8, 0x1F, 0x80, 0x3E, 0x07, 0xC0, 0x0F, - 0x81, 0xF0, 0x03, 0xC0, 0x7C, 0x00, 0xF0, 0x1E, 0x00, 0x7C, 0x0F, 0x80, - 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0xF8, 0x01, 0xE0, 0x3C, 0x00, 0xF8, 0x0F, - 0x00, 0x3E, 0x1F, 0xF8, 0x3F, 0xEF, 0xFE, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, - 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0x3F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, - 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0xFF, - 0x03, 0xF8, 0xFE, 0x00, 0xFE, 0x7C, 0x00, 0x3F, 0x7C, 0x00, 0x0F, 0xBE, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, - 0xC0, 0x00, 0xFB, 0xE0, 0x00, 0xFD, 0xF8, 0x00, 0x7C, 0xFE, 0x00, 0xFE, - 0x3F, 0x81, 0xFE, 0x1F, 0xFF, 0xFE, 0x07, 0xFF, 0xFE, 0x01, 0xFF, 0xFC, - 0x00, 0x7F, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x07, - 0xF9, 0xFF, 0xC0, 0x1F, 0xF7, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0xC0, 0x7F, - 0xFF, 0xFF, 0xC0, 0x7F, 0xF0, 0x3F, 0x80, 0x3F, 0x80, 0x1F, 0x80, 0x7E, - 0x00, 0x3F, 0x00, 0xF8, 0x00, 0x3E, 0x01, 0xF0, 0x00, 0x7C, 0x03, 0xC0, - 0x00, 0xF8, 0x0F, 0x80, 0x01, 0xF0, 0x1F, 0x00, 0x07, 0xE0, 0x3E, 0x00, - 0x0F, 0x80, 0x7C, 0x00, 0x3F, 0x01, 0xFC, 0x00, 0xFC, 0x03, 0xFE, 0x07, - 0xF8, 0x07, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0x80, 0x1E, 0xFF, 0xFC, - 0x00, 0x7C, 0xFF, 0xF0, 0x00, 0xF8, 0x7F, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x1F, - 0xFF, 0x80, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x07, 0xFF, 0x3F, 0xC0, 0xFF, 0xFD, 0xFE, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, - 0xFF, 0xFF, 0x8F, 0xE0, 0x7F, 0xF8, 0xFC, 0x00, 0xFE, 0x07, 0xC0, 0x03, - 0xE0, 0x7C, 0x00, 0x1F, 0x03, 0xE0, 0x00, 0xF8, 0x1E, 0x00, 0x07, 0xC1, - 0xF0, 0x00, 0x3E, 0x0F, 0x80, 0x01, 0xE0, 0x7C, 0x00, 0x1F, 0x03, 0xF0, - 0x01, 0xF8, 0x1F, 0x80, 0x1F, 0xC0, 0xFF, 0x03, 0xFC, 0x03, 0xFF, 0xFF, - 0xE0, 0x1F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xF8, 0x00, 0xFF, 0xE7, 0xC0, - 0x01, 0xFC, 0x3C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xFF, 0x80, 0x00, 0x7F, - 0xFE, 0x00, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0xFF, 0xF0, - 0x00, 0x00, 0x00, 0x0F, 0x80, 0x3F, 0xC3, 0xFE, 0x07, 0xFC, 0xFF, 0xE0, - 0x7F, 0xDF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0x1C, 0x00, 0x7F, - 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xC0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, - 0xFF, 0xF0, 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xCE, 0x03, 0xFF, 0xFC, - 0x0F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC3, 0xF8, 0x0F, 0x87, - 0xC0, 0x0E, 0x0F, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xFF, 0x80, 0x3F, - 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, 0x1F, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x00, - 0x3F, 0x1C, 0x00, 0x3E, 0x7C, 0x00, 0x7C, 0xFC, 0x03, 0xF3, 0xFF, 0xFF, - 0xE7, 0xFF, 0xFF, 0x8F, 0xFF, 0xFE, 0x1F, 0xFF, 0xF0, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, - 0x80, 0x00, 0x78, 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xE1, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xE0, 0x00, - 0x1E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3C, 0x00, - 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, 0xF7, 0xFF, - 0xFF, 0x7F, 0xFF, 0xF3, 0xFF, 0xFE, 0x1F, 0xFF, 0x80, 0x7F, 0x80, 0x7F, - 0x01, 0xFF, 0xFE, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xE0, - 0x3F, 0xC7, 0xC0, 0x07, 0x8F, 0x80, 0x1F, 0x3E, 0x00, 0x3E, 0x7C, 0x00, - 0x7C, 0xF8, 0x00, 0xF1, 0xF0, 0x03, 0xE3, 0xE0, 0x07, 0xC7, 0xC0, 0x0F, - 0x8F, 0x80, 0x1F, 0x1F, 0x00, 0x7C, 0x3E, 0x01, 0xF8, 0x7E, 0x0F, 0xFC, - 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xF1, 0xFF, 0xEF, 0xE1, 0xFF, 0xBF, 0x80, - 0xFC, 0x00, 0x00, 0x7F, 0xF0, 0x7F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF0, - 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xE1, 0xF8, 0x03, 0xE0, - 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x07, 0xC0, 0x0F, 0x80, 0xF8, 0x00, 0xFC, - 0x1F, 0x80, 0x07, 0xC1, 0xF0, 0x00, 0x7C, 0x3E, 0x00, 0x07, 0xE7, 0xE0, - 0x00, 0x3E, 0x7C, 0x00, 0x03, 0xEF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x03, - 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7F, 0xC0, 0x1F, 0xEF, 0xFC, 0x03, 0xFF, - 0xFF, 0xC0, 0x7F, 0xFF, 0xFC, 0x07, 0xFE, 0x7F, 0x80, 0x3F, 0xC3, 0xE1, - 0xF0, 0xF8, 0x3E, 0x3F, 0x0F, 0x03, 0xE3, 0xF1, 0xF0, 0x3E, 0x7F, 0x1E, - 0x03, 0xE7, 0xF3, 0xE0, 0x3E, 0xFF, 0xBC, 0x03, 0xFF, 0xFF, 0xC0, 0x3F, - 0xFF, 0xFC, 0x03, 0xFE, 0xFF, 0x80, 0x3F, 0xEF, 0xF8, 0x03, 0xFC, 0xFF, - 0x00, 0x3F, 0x8F, 0xF0, 0x03, 0xF8, 0x7E, 0x00, 0x3F, 0x07, 0xE0, 0x01, - 0xF0, 0x7C, 0x00, 0x1E, 0x07, 0xC0, 0x00, 0x03, 0xFE, 0x0F, 0xF8, 0x3F, - 0xF0, 0xFF, 0xC1, 0xFF, 0x8F, 0xFE, 0x0F, 0xFC, 0x7F, 0xF0, 0x7F, 0xC1, - 0xFF, 0x00, 0xFE, 0x1F, 0xC0, 0x03, 0xF9, 0xFC, 0x00, 0x0F, 0xFF, 0xC0, - 0x00, 0x3F, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x7F, 0xE0, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0xFE, 0xFE, 0x00, 0x0F, 0xE3, - 0xF8, 0x00, 0xFE, 0x0F, 0xE0, 0x3F, 0xE0, 0x7F, 0xC3, 0xFF, 0x87, 0xFF, - 0x3F, 0xFC, 0x7F, 0xF9, 0xFF, 0xE3, 0xFF, 0x87, 0xFE, 0x0F, 0xF8, 0x00, - 0x01, 0xFE, 0x03, 0xFE, 0x03, 0xFF, 0x07, 0xFF, 0x07, 0xFF, 0x07, 0xFF, - 0x07, 0xFF, 0x07, 0xFE, 0x03, 0xFC, 0x03, 0xFC, 0x01, 0xF8, 0x01, 0xF0, - 0x00, 0xF8, 0x03, 0xF0, 0x00, 0xF8, 0x03, 0xE0, 0x00, 0xFC, 0x07, 0xC0, - 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x7E, 0x1F, 0x00, - 0x00, 0x7E, 0x3E, 0x00, 0x00, 0x3E, 0x7C, 0x00, 0x00, 0x3E, 0x7C, 0x00, - 0x00, 0x3F, 0xF8, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, - 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, - 0x07, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, - 0xE0, 0xFF, 0xFF, 0xE0, 0x7C, 0x0F, 0xE0, 0x3C, 0x0F, 0xE0, 0x1E, 0x0F, - 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, - 0x80, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0xF0, 0x3F, - 0x00, 0xF8, 0x3F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0x80, 0x00, 0x0F, 0x00, 0x1F, 0xC0, 0x1F, - 0xE0, 0x1F, 0xF0, 0x0F, 0xE0, 0x0F, 0xC0, 0x07, 0xC0, 0x07, 0xC0, 0x03, - 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x78, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x3F, 0x80, 0x3F, 0xC0, 0x1F, 0xC0, - 0x0F, 0xE0, 0x07, 0xF8, 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, - 0x80, 0x07, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, - 0x7E, 0x00, 0x3F, 0x80, 0x1F, 0xE0, 0x07, 0xF0, 0x03, 0xF8, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x3E, - 0x07, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0xF8, 0x1F, 0x03, 0xC0, 0x78, 0x0F, - 0x03, 0xE0, 0x7C, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xF0, 0x3C, 0x07, - 0x80, 0xF0, 0x3E, 0x07, 0xC0, 0xF0, 0x1E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, - 0xC0, 0x70, 0x00, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0x7F, 0x00, 0x3F, 0xC0, - 0x0F, 0xE0, 0x03, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x0F, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0xF8, 0x00, 0x7E, 0x00, 0x3F, 0xC0, 0x0F, 0xE0, 0x07, 0xF0, 0x07, 0xF8, - 0x07, 0xF8, 0x03, 0xE0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF0, 0x00, 0x78, - 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x1F, 0x80, 0x7F, - 0xC0, 0x7F, 0xC0, 0x3F, 0xC0, 0x1F, 0xC0, 0x07, 0x80, 0x00, 0x03, 0xE0, - 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xE0, 0x39, 0xFF, 0xE0, 0xF7, 0xFF, 0xE7, - 0xFF, 0xCF, 0xFF, 0xFE, 0x0F, 0xFF, 0x38, 0x0F, 0xFC, 0x00, 0x0F, 0xE0, - 0x00, 0x0F, 0x80}; - -const GFXglyph FreeMonoBoldOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 12, 31, 28, 12, -29}, // 0x21 '!' - {47, 17, 14, 28, 11, -28}, // 0x22 '"' - {77, 24, 34, 28, 5, -30}, // 0x23 '#' - {179, 25, 38, 28, 4, -31}, // 0x24 '$' - {298, 22, 30, 28, 6, -28}, // 0x25 '%' - {381, 21, 28, 28, 5, -26}, // 0x26 '&' - {455, 7, 14, 28, 16, -28}, // 0x27 ''' - {468, 14, 37, 28, 14, -29}, // 0x28 '(' - {533, 14, 37, 28, 5, -29}, // 0x29 ')' - {598, 21, 19, 28, 8, -28}, // 0x2A '*' - {648, 24, 26, 28, 5, -25}, // 0x2B '+' - {726, 12, 14, 28, 6, -6}, // 0x2C ',' - {747, 24, 5, 28, 5, -15}, // 0x2D '-' - {762, 7, 6, 28, 11, -4}, // 0x2E '.' - {768, 28, 38, 28, 3, -32}, // 0x2F '/' - {901, 23, 31, 28, 6, -29}, // 0x30 '0' - {991, 21, 30, 28, 4, -29}, // 0x31 '1' - {1070, 26, 30, 28, 3, -29}, // 0x32 '2' - {1168, 25, 31, 28, 4, -29}, // 0x33 '3' - {1265, 22, 28, 28, 5, -27}, // 0x34 '4' - {1342, 25, 31, 28, 4, -29}, // 0x35 '5' - {1439, 24, 31, 28, 7, -29}, // 0x36 '6' - {1532, 22, 30, 28, 9, -29}, // 0x37 '7' - {1615, 23, 31, 28, 6, -29}, // 0x38 '8' - {1705, 24, 31, 28, 5, -29}, // 0x39 '9' - {1798, 10, 22, 28, 11, -20}, // 0x3A ':' - {1826, 15, 28, 28, 5, -20}, // 0x3B ';' - {1879, 25, 21, 28, 5, -23}, // 0x3C '<' - {1945, 26, 14, 28, 4, -19}, // 0x3D '=' - {1991, 25, 22, 28, 4, -23}, // 0x3E '>' - {2060, 19, 29, 28, 10, -27}, // 0x3F '?' - {2129, 23, 36, 28, 5, -28}, // 0x40 '@' - {2233, 30, 27, 28, 0, -26}, // 0x41 'A' - {2335, 29, 27, 28, 1, -26}, // 0x42 'B' - {2433, 28, 29, 28, 3, -27}, // 0x43 'C' - {2535, 28, 27, 28, 1, -26}, // 0x44 'D' - {2630, 29, 27, 28, 1, -26}, // 0x45 'E' - {2728, 31, 27, 28, 0, -26}, // 0x46 'F' - {2833, 28, 29, 28, 3, -27}, // 0x47 'G' - {2935, 30, 27, 28, 1, -26}, // 0x48 'H' - {3037, 25, 27, 28, 3, -26}, // 0x49 'I' - {3122, 31, 28, 28, 0, -26}, // 0x4A 'J' - {3231, 31, 27, 28, 0, -26}, // 0x4B 'K' - {3336, 27, 27, 28, 1, -26}, // 0x4C 'L' - {3428, 34, 27, 28, 0, -26}, // 0x4D 'M' - {3543, 32, 27, 28, 1, -26}, // 0x4E 'N' - {3651, 27, 29, 28, 3, -27}, // 0x4F 'O' - {3749, 28, 27, 28, 1, -26}, // 0x50 'P' - {3844, 27, 35, 28, 3, -27}, // 0x51 'Q' - {3963, 29, 27, 28, 0, -26}, // 0x52 'R' - {4061, 26, 29, 28, 3, -27}, // 0x53 'S' - {4156, 26, 27, 28, 4, -26}, // 0x54 'T' - {4244, 28, 28, 28, 4, -26}, // 0x55 'U' - {4342, 30, 27, 28, 2, -26}, // 0x56 'V' - {4444, 29, 27, 28, 3, -26}, // 0x57 'W' - {4542, 32, 27, 28, 0, -26}, // 0x58 'X' - {4650, 26, 27, 28, 4, -26}, // 0x59 'Y' - {4738, 27, 27, 28, 2, -26}, // 0x5A 'Z' - {4830, 18, 37, 28, 10, -29}, // 0x5B '[' - {4914, 13, 38, 28, 10, -32}, // 0x5C '\' - {4976, 18, 37, 28, 5, -29}, // 0x5D ']' - {5060, 20, 15, 28, 8, -29}, // 0x5E '^' - {5098, 29, 5, 28, -2, 5}, // 0x5F '_' - {5117, 8, 8, 28, 13, -30}, // 0x60 '`' - {5125, 24, 23, 28, 3, -21}, // 0x61 'a' - {5194, 29, 31, 28, 0, -29}, // 0x62 'b' - {5307, 25, 23, 28, 3, -21}, // 0x63 'c' - {5379, 28, 31, 28, 3, -29}, // 0x64 'd' - {5488, 24, 23, 28, 3, -21}, // 0x65 'e' - {5557, 28, 30, 28, 4, -29}, // 0x66 'f' - {5662, 28, 31, 28, 3, -21}, // 0x67 'g' - {5771, 26, 30, 28, 2, -29}, // 0x68 'h' - {5869, 23, 29, 28, 3, -28}, // 0x69 'i' - {5953, 23, 38, 28, 3, -28}, // 0x6A 'j' - {6063, 26, 30, 28, 2, -29}, // 0x6B 'k' - {6161, 23, 30, 28, 3, -29}, // 0x6C 'l' - {6248, 30, 22, 28, 0, -21}, // 0x6D 'm' - {6331, 26, 22, 28, 2, -21}, // 0x6E 'n' - {6403, 25, 23, 28, 3, -21}, // 0x6F 'o' - {6475, 31, 31, 28, -1, -21}, // 0x70 'p' - {6596, 29, 31, 28, 2, -21}, // 0x71 'q' - {6709, 28, 22, 28, 2, -21}, // 0x72 'r' - {6786, 23, 23, 28, 4, -21}, // 0x73 's' - {6853, 20, 28, 28, 5, -26}, // 0x74 't' - {6923, 23, 22, 28, 5, -20}, // 0x75 'u' - {6987, 28, 21, 28, 3, -20}, // 0x76 'v' - {7061, 28, 21, 28, 3, -20}, // 0x77 'w' - {7135, 29, 21, 28, 1, -20}, // 0x78 'x' - {7212, 32, 30, 28, -1, -20}, // 0x79 'y' - {7332, 25, 21, 28, 4, -20}, // 0x7A 'z' - {7398, 17, 37, 28, 10, -29}, // 0x7B '{' - {7477, 11, 36, 28, 11, -28}, // 0x7C '|' - {7527, 17, 37, 28, 6, -29}, // 0x7D '}' - {7606, 23, 10, 28, 5, -17}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique24pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique24pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique24pt7bGlyphs, 0x20, 0x7E, 47}; - -// Approx. 8307 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h deleted file mode 100644 index 86d3e9c..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoBoldOblique9pt7b.h +++ /dev/null @@ -1,205 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoBoldOblique9pt7bBitmaps[] PROGMEM = { - 0x39, 0xCC, 0x67, 0x31, 0x8C, 0x07, 0x38, 0x6C, 0xD9, 0x36, 0x48, 0x80, - 0x09, 0x0D, 0x86, 0xCF, 0xF7, 0xF9, 0xB3, 0xFD, 0xFE, 0x6C, 0x36, 0x1B, - 0x00, 0x00, 0x06, 0x07, 0x07, 0xE6, 0x33, 0x01, 0xE0, 0x7C, 0x06, 0x43, - 0x33, 0xBF, 0x83, 0x03, 0x00, 0x80, 0x1C, 0x11, 0x10, 0x88, 0x83, 0xB8, - 0xF3, 0xB8, 0x22, 0x21, 0x11, 0x07, 0x00, 0x0F, 0x1F, 0x30, 0x30, 0x38, - 0x7B, 0xDF, 0xCE, 0xFF, 0x7E, 0xFA, 0x80, 0x19, 0x8C, 0xC6, 0x63, 0x18, - 0xC6, 0x31, 0xC6, 0x30, 0x31, 0xC6, 0x31, 0x8C, 0x63, 0x31, 0x98, 0xCC, - 0x40, 0x08, 0x08, 0xFF, 0xFF, 0x38, 0x6C, 0x6C, 0x0C, 0x06, 0x03, 0x1F, - 0xFF, 0xF8, 0xC0, 0x60, 0x30, 0x10, 0x00, 0x36, 0x4C, 0x80, 0xFF, 0xFF, - 0xC0, 0xFC, 0x00, 0x00, 0x0C, 0x03, 0x00, 0xC0, 0x18, 0x06, 0x01, 0x80, - 0x30, 0x0C, 0x03, 0x00, 0x60, 0x18, 0x06, 0x00, 0xC0, 0x30, 0x00, 0x0F, - 0x0F, 0xCC, 0x6C, 0x36, 0x1B, 0x0D, 0x05, 0x86, 0xC3, 0x63, 0x3F, 0x8F, - 0x00, 0x06, 0x1C, 0x3C, 0x6C, 0x0C, 0x0C, 0x08, 0x18, 0x18, 0x18, 0xFE, - 0xFE, 0x07, 0x83, 0xF1, 0x8C, 0x43, 0x00, 0xC0, 0xE0, 0x70, 0x38, 0x38, - 0x1C, 0x6F, 0xF3, 0xFC, 0x1F, 0x1F, 0xC0, 0x60, 0x30, 0x30, 0x70, 0x38, - 0x06, 0x03, 0x03, 0xBF, 0x9F, 0x80, 0x03, 0x07, 0x0B, 0x1B, 0x32, 0x66, - 0xFF, 0xFF, 0x1E, 0x1E, 0x3F, 0x9F, 0x98, 0x0F, 0xC7, 0xF3, 0x18, 0x0C, - 0x06, 0x06, 0x7F, 0x1E, 0x00, 0x07, 0x87, 0xCE, 0x06, 0x06, 0x03, 0xF3, - 0xFD, 0xC6, 0xC3, 0x63, 0xBF, 0x8F, 0x80, 0xFF, 0xFF, 0xC3, 0x06, 0x06, - 0x0C, 0x18, 0x18, 0x30, 0x30, 0x60, 0x1F, 0x1F, 0xDC, 0x6C, 0x36, 0x31, - 0xF1, 0xF8, 0xC6, 0xC3, 0x63, 0xBF, 0x8F, 0x80, 0x1E, 0x3F, 0x33, 0x63, - 0x63, 0x67, 0x7F, 0x3E, 0x06, 0x1C, 0xF8, 0xF0, 0x77, 0x00, 0x00, 0xEE, - 0x1C, 0x70, 0x00, 0x00, 0x03, 0x0C, 0x61, 0x08, 0x00, 0x00, 0xC1, 0xE1, - 0xE1, 0xE0, 0xF0, 0x07, 0x00, 0xF0, 0x0C, 0x7F, 0xDF, 0xF0, 0x00, 0x00, - 0x7F, 0xFF, 0xF0, 0x30, 0x0F, 0x00, 0xE0, 0x1E, 0x07, 0xC7, 0x87, 0x83, - 0x00, 0x7D, 0xFF, 0x18, 0x30, 0xE3, 0x9C, 0x30, 0x01, 0xC3, 0x80, 0x0F, - 0x0F, 0xCC, 0x6C, 0x36, 0x72, 0x79, 0x7D, 0xB6, 0xDA, 0x6F, 0xB3, 0xD8, - 0x0C, 0x07, 0xE1, 0xE0, 0x0F, 0x83, 0xF0, 0x1E, 0x03, 0xC0, 0xD8, 0x31, - 0x87, 0xF1, 0xFE, 0x30, 0xDF, 0x3F, 0xC7, 0x80, 0x3F, 0xC7, 0xFC, 0x61, - 0x8C, 0x31, 0xFC, 0x3F, 0x84, 0x19, 0x83, 0x30, 0x6F, 0xFB, 0xFE, 0x00, - 0x0F, 0xF1, 0xFF, 0x30, 0x66, 0x06, 0x60, 0x0C, 0x00, 0xC0, 0x0C, 0x00, - 0xE0, 0xC7, 0xF8, 0x3F, 0x00, 0x3F, 0x87, 0xF8, 0x63, 0x8C, 0x31, 0x06, - 0x60, 0xCC, 0x19, 0x86, 0x31, 0xCF, 0xF3, 0xF8, 0x00, 0x3F, 0xE3, 0xFE, - 0x18, 0x61, 0xB6, 0x1F, 0x01, 0xF0, 0x32, 0x03, 0x00, 0x30, 0x4F, 0xFC, - 0xFF, 0xC0, 0x3F, 0xF3, 0xFE, 0x18, 0x61, 0xB6, 0x1F, 0x03, 0xF0, 0x32, - 0x03, 0x00, 0x30, 0x0F, 0xC0, 0xFC, 0x00, 0x0F, 0xE3, 0xFC, 0xC1, 0x30, - 0x06, 0x01, 0x80, 0x31, 0xF6, 0x3E, 0xE1, 0x9F, 0xF0, 0xF8, 0x00, 0x1E, - 0xF3, 0xCF, 0x18, 0x61, 0x84, 0x10, 0xC3, 0xFC, 0x3F, 0xC3, 0x08, 0x31, - 0x8F, 0xBC, 0xFB, 0xC0, 0x3F, 0xCF, 0xF0, 0x60, 0x10, 0x0C, 0x03, 0x00, - 0xC0, 0x20, 0x18, 0x3F, 0xCF, 0xF0, 0x07, 0xF0, 0x7F, 0x00, 0x80, 0x18, - 0x01, 0x80, 0x18, 0x61, 0x84, 0x10, 0xC3, 0x0F, 0xE0, 0x7C, 0x00, 0x3E, - 0xE7, 0xFC, 0x66, 0x0D, 0x81, 0x60, 0x7C, 0x0E, 0xC1, 0x98, 0x31, 0x1F, - 0x3B, 0xE7, 0x00, 0x3F, 0x07, 0xE0, 0x30, 0x06, 0x00, 0xC0, 0x10, 0x06, - 0x00, 0xC3, 0x18, 0x6F, 0xFB, 0xFF, 0x00, 0x38, 0x39, 0xC3, 0xC7, 0x3C, - 0x79, 0xE3, 0xDA, 0x1F, 0xF0, 0x9D, 0x8C, 0xCC, 0x60, 0x67, 0xCF, 0x3C, - 0x78, 0x3C, 0xF9, 0xE7, 0x87, 0x18, 0x3C, 0xC1, 0x66, 0x1B, 0xB0, 0xCD, - 0x06, 0x78, 0x31, 0xC3, 0xCE, 0x3E, 0x30, 0x0F, 0x0F, 0xE7, 0x1D, 0x83, - 0xC0, 0xF0, 0x3C, 0x0F, 0x06, 0xE3, 0x9F, 0xC3, 0xC0, 0x3F, 0xC7, 0xFC, - 0x61, 0x8C, 0x31, 0x8E, 0x3F, 0x87, 0xE1, 0x80, 0x30, 0x0F, 0xC3, 0xF0, - 0x00, 0x0F, 0x0F, 0xE7, 0x1D, 0x83, 0xC0, 0xF0, 0x3C, 0x0F, 0x06, 0xE3, - 0x1F, 0xC3, 0xC0, 0x80, 0x7F, 0x3F, 0xC0, 0x3F, 0xC3, 0xFE, 0x18, 0x61, - 0x86, 0x10, 0xE3, 0xFC, 0x3F, 0x83, 0x18, 0x31, 0xCF, 0x8F, 0xF8, 0x70, - 0x1E, 0xCF, 0xF7, 0x19, 0x80, 0x70, 0x1F, 0x81, 0xF3, 0x0C, 0xC3, 0x3F, - 0x8B, 0xC0, 0x7F, 0xCF, 0xF9, 0x93, 0x66, 0x60, 0xC0, 0x18, 0x02, 0x00, - 0xC0, 0x18, 0x0F, 0xC1, 0xF8, 0x00, 0xF9, 0xFF, 0x7D, 0x83, 0x30, 0x64, - 0x09, 0x83, 0x30, 0x66, 0x0C, 0xE3, 0x0F, 0xC0, 0xF0, 0x00, 0xF9, 0xFE, - 0x3D, 0x83, 0x30, 0xC6, 0x30, 0xE6, 0x0D, 0x81, 0xB0, 0x3C, 0x07, 0x00, - 0x60, 0x00, 0xF9, 0xFF, 0x3D, 0x83, 0x36, 0x64, 0xC8, 0xBF, 0x35, 0xE7, - 0xB8, 0xE7, 0x1C, 0xE3, 0x18, 0x00, 0x3C, 0xF3, 0xCF, 0x1C, 0xC0, 0xD8, - 0x0F, 0x00, 0x60, 0x0F, 0x01, 0xB8, 0x31, 0x8F, 0x3C, 0xF3, 0xC0, 0x79, - 0xEE, 0x38, 0xC6, 0x19, 0x81, 0xE0, 0x38, 0x06, 0x00, 0xC0, 0x18, 0x0F, - 0xC3, 0xF8, 0x00, 0x3F, 0xCF, 0xF3, 0x18, 0xCC, 0x06, 0x03, 0x01, 0x80, - 0xC6, 0x61, 0xBF, 0xCF, 0xF0, 0x1E, 0x3C, 0xC1, 0x83, 0x06, 0x08, 0x30, - 0x60, 0xC1, 0x06, 0x0F, 0x1E, 0x00, 0x06, 0x31, 0x86, 0x31, 0x8C, 0x31, - 0x8C, 0x61, 0x8C, 0x60, 0x1E, 0x78, 0x30, 0x60, 0xC1, 0x86, 0x0C, 0x18, - 0x30, 0x41, 0x8F, 0x1E, 0x00, 0x08, 0x1C, 0x3C, 0x76, 0xE7, 0xC3, 0x7F, - 0xFF, 0xFC, 0x88, 0x80, 0x0F, 0x07, 0xE1, 0xF9, 0xFE, 0xE3, 0x30, 0xCF, - 0xFD, 0xFF, 0x38, 0x07, 0x00, 0x60, 0x0F, 0xC1, 0xFC, 0x71, 0xCC, 0x19, - 0x83, 0x30, 0xDF, 0xFB, 0xBC, 0x00, 0x1F, 0xCF, 0xF6, 0x1B, 0x00, 0xC0, - 0x30, 0x0F, 0xF1, 0xF8, 0x01, 0xE0, 0x38, 0x03, 0x0F, 0x63, 0xFC, 0xC3, - 0x30, 0x66, 0x0C, 0xC3, 0x9F, 0xF9, 0xF7, 0x00, 0x1F, 0x1F, 0xD8, 0x3F, - 0xFF, 0xFE, 0x1B, 0xFC, 0xF8, 0x07, 0xC3, 0xF1, 0x81, 0xFE, 0x7F, 0x84, - 0x03, 0x00, 0xC0, 0x30, 0x3F, 0x8F, 0xE0, 0x1E, 0xE7, 0xFD, 0x86, 0x60, - 0xCC, 0x19, 0xC6, 0x3F, 0xC1, 0xD8, 0x03, 0x00, 0xE1, 0xF8, 0x3E, 0x00, - 0x38, 0x1E, 0x01, 0x00, 0xDC, 0x3F, 0x8C, 0x62, 0x19, 0x84, 0x63, 0x3D, - 0xFF, 0x7C, 0x06, 0x03, 0x00, 0x03, 0xC3, 0xE0, 0x20, 0x30, 0x18, 0x0C, - 0x3F, 0xFF, 0xE0, 0x01, 0x81, 0x80, 0x07, 0xF3, 0xF8, 0x0C, 0x04, 0x06, - 0x03, 0x01, 0x80, 0xC0, 0x40, 0x67, 0xE3, 0xE0, 0x38, 0x0E, 0x01, 0x80, - 0x4F, 0x37, 0xCF, 0x83, 0xC0, 0xF0, 0x26, 0x39, 0xEE, 0x78, 0x1F, 0x0F, - 0x01, 0x80, 0xC0, 0x60, 0x20, 0x30, 0x18, 0x0C, 0x3F, 0xFF, 0xE0, 0x7E, - 0xE7, 0xFF, 0x33, 0x32, 0x63, 0x66, 0x36, 0x62, 0xF7, 0x7F, 0x67, 0x77, - 0x8F, 0xF8, 0xC3, 0x10, 0x66, 0x08, 0xC3, 0x3C, 0x7F, 0x8F, 0x1F, 0x0F, - 0xE6, 0x1F, 0x03, 0xC0, 0xF8, 0x67, 0xF0, 0xF8, 0x3F, 0xE3, 0xFF, 0x1C, - 0x31, 0x83, 0x18, 0x31, 0x86, 0x3F, 0xE3, 0x78, 0x30, 0x03, 0x00, 0xFC, - 0x0F, 0x80, 0x1E, 0xEF, 0xFD, 0x86, 0x60, 0xCC, 0x19, 0xC7, 0x3F, 0xE1, - 0xE8, 0x03, 0x00, 0x60, 0x3E, 0x07, 0xC0, 0x39, 0xDF, 0xF1, 0xC0, 0x60, - 0x10, 0x0C, 0x0F, 0xF3, 0xF8, 0x1F, 0x7F, 0x63, 0x7E, 0x1F, 0xC3, 0xFE, - 0xFC, 0x10, 0x08, 0x0C, 0x1F, 0xEF, 0xF1, 0x80, 0x80, 0xC0, 0x60, 0x3F, - 0x8F, 0x80, 0xF3, 0xFC, 0xF6, 0x09, 0x86, 0x61, 0x98, 0xE7, 0xF8, 0xFE, - 0xFB, 0xFF, 0x7C, 0xC6, 0x19, 0x83, 0x60, 0x6C, 0x07, 0x00, 0xC0, 0xF1, - 0xFE, 0x3D, 0xB3, 0x37, 0xC7, 0xF8, 0xEE, 0x1D, 0xC3, 0x30, 0x79, 0xEF, - 0x38, 0xEE, 0x0F, 0x01, 0xE0, 0x6E, 0x3C, 0xE7, 0xBC, 0x3C, 0xF3, 0x8F, - 0x18, 0xC1, 0x9C, 0x19, 0x81, 0xF0, 0x0E, 0x00, 0xE0, 0x0C, 0x01, 0x80, - 0xFC, 0x0F, 0xC0, 0x7F, 0xBF, 0xD9, 0xC1, 0x83, 0x83, 0x1B, 0xFD, 0xFE, - 0x06, 0x1C, 0x60, 0xC1, 0x86, 0x3C, 0x70, 0x30, 0x41, 0x83, 0x07, 0x06, - 0x00, 0x33, 0x32, 0x26, 0x66, 0x44, 0xCC, 0xC8, 0x0C, 0x0E, 0x04, 0x0C, - 0x0C, 0x0C, 0x0F, 0x0F, 0x18, 0x18, 0x10, 0x30, 0xF0, 0xE0, 0x38, 0x7C, - 0xF7, 0xC1, 0xC0}; - -const GFXglyph FreeMonoBoldOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 5, 11, 11, 4, -10}, // 0x21 '!' - {7, 7, 5, 11, 4, -10}, // 0x22 '"' - {12, 9, 12, 11, 2, -10}, // 0x23 '#' - {26, 9, 14, 11, 2, -11}, // 0x24 '$' - {42, 9, 11, 11, 2, -10}, // 0x25 '%' - {55, 8, 10, 11, 2, -9}, // 0x26 '&' - {65, 2, 5, 11, 6, -10}, // 0x27 ''' - {67, 5, 14, 11, 5, -10}, // 0x28 '(' - {76, 5, 14, 11, 2, -10}, // 0x29 ')' - {85, 8, 7, 11, 3, -10}, // 0x2A '*' - {92, 9, 9, 11, 2, -8}, // 0x2B '+' - {103, 4, 5, 11, 2, -1}, // 0x2C ',' - {106, 9, 2, 11, 2, -5}, // 0x2D '-' - {109, 3, 2, 11, 4, -1}, // 0x2E '.' - {110, 11, 15, 11, 1, -12}, // 0x2F '/' - {131, 9, 12, 11, 2, -11}, // 0x30 '0' - {145, 8, 12, 11, 2, -11}, // 0x31 '1' - {157, 10, 12, 11, 1, -11}, // 0x32 '2' - {172, 9, 12, 11, 2, -11}, // 0x33 '3' - {186, 8, 10, 11, 2, -9}, // 0x34 '4' - {196, 9, 11, 11, 3, -10}, // 0x35 '5' - {209, 9, 12, 11, 3, -11}, // 0x36 '6' - {223, 8, 11, 11, 3, -10}, // 0x37 '7' - {234, 9, 12, 11, 2, -11}, // 0x38 '8' - {248, 8, 12, 11, 3, -11}, // 0x39 '9' - {260, 4, 8, 11, 4, -7}, // 0x3A ':' - {264, 6, 11, 11, 2, -7}, // 0x3B ';' - {273, 10, 8, 11, 2, -8}, // 0x3C '<' - {283, 10, 6, 11, 1, -7}, // 0x3D '=' - {291, 10, 8, 11, 1, -8}, // 0x3E '>' - {301, 7, 11, 11, 4, -10}, // 0x3F '?' - {311, 9, 15, 11, 2, -11}, // 0x40 '@' - {328, 11, 11, 11, 0, -10}, // 0x41 'A' - {344, 11, 11, 11, 0, -10}, // 0x42 'B' - {360, 12, 11, 11, 1, -10}, // 0x43 'C' - {377, 11, 11, 11, 0, -10}, // 0x44 'D' - {393, 12, 11, 11, 0, -10}, // 0x45 'E' - {410, 12, 11, 11, 0, -10}, // 0x46 'F' - {427, 11, 11, 11, 1, -10}, // 0x47 'G' - {443, 12, 11, 11, 0, -10}, // 0x48 'H' - {460, 10, 11, 11, 1, -10}, // 0x49 'I' - {474, 12, 11, 11, 0, -10}, // 0x4A 'J' - {491, 11, 11, 11, 0, -10}, // 0x4B 'K' - {507, 11, 11, 11, 0, -10}, // 0x4C 'L' - {523, 13, 11, 11, 0, -10}, // 0x4D 'M' - {541, 13, 11, 11, 0, -10}, // 0x4E 'N' - {559, 10, 11, 11, 1, -10}, // 0x4F 'O' - {573, 11, 11, 11, 0, -10}, // 0x50 'P' - {589, 10, 14, 11, 1, -10}, // 0x51 'Q' - {607, 12, 11, 11, 0, -10}, // 0x52 'R' - {624, 10, 11, 11, 2, -10}, // 0x53 'S' - {638, 11, 11, 11, 1, -10}, // 0x54 'T' - {654, 11, 11, 11, 1, -10}, // 0x55 'U' - {670, 11, 11, 11, 1, -10}, // 0x56 'V' - {686, 11, 11, 11, 1, -10}, // 0x57 'W' - {702, 12, 11, 11, 0, -10}, // 0x58 'X' - {719, 11, 11, 11, 1, -10}, // 0x59 'Y' - {735, 10, 11, 11, 1, -10}, // 0x5A 'Z' - {749, 7, 14, 11, 4, -10}, // 0x5B '[' - {762, 5, 15, 11, 4, -12}, // 0x5C '\' - {772, 7, 14, 11, 2, -10}, // 0x5D ']' - {785, 8, 6, 11, 3, -11}, // 0x5E '^' - {791, 11, 2, 11, -1, 3}, // 0x5F '_' - {794, 3, 3, 11, 5, -11}, // 0x60 '`' - {796, 10, 8, 11, 1, -7}, // 0x61 'a' - {806, 11, 11, 11, 0, -10}, // 0x62 'b' - {822, 10, 8, 11, 1, -7}, // 0x63 'c' - {832, 11, 11, 11, 1, -10}, // 0x64 'd' - {848, 9, 8, 11, 1, -7}, // 0x65 'e' - {857, 10, 11, 11, 2, -10}, // 0x66 'f' - {871, 11, 12, 11, 1, -7}, // 0x67 'g' - {888, 10, 11, 11, 1, -10}, // 0x68 'h' - {902, 9, 11, 11, 1, -10}, // 0x69 'i' - {915, 9, 15, 11, 1, -10}, // 0x6A 'j' - {932, 10, 11, 11, 1, -10}, // 0x6B 'k' - {946, 9, 11, 11, 1, -10}, // 0x6C 'l' - {959, 12, 8, 11, 0, -7}, // 0x6D 'm' - {971, 11, 8, 11, 1, -7}, // 0x6E 'n' - {982, 10, 8, 11, 1, -7}, // 0x6F 'o' - {992, 12, 12, 11, -1, -7}, // 0x70 'p' - {1010, 11, 12, 11, 1, -7}, // 0x71 'q' - {1027, 10, 8, 11, 1, -7}, // 0x72 'r' - {1037, 8, 8, 11, 2, -7}, // 0x73 's' - {1045, 9, 11, 11, 1, -10}, // 0x74 't' - {1058, 10, 8, 11, 1, -7}, // 0x75 'u' - {1068, 11, 8, 11, 1, -7}, // 0x76 'v' - {1079, 11, 8, 11, 1, -7}, // 0x77 'w' - {1090, 11, 8, 11, 1, -7}, // 0x78 'x' - {1101, 12, 12, 11, 0, -7}, // 0x79 'y' - {1119, 9, 8, 11, 2, -7}, // 0x7A 'z' - {1128, 7, 14, 11, 3, -10}, // 0x7B '{' - {1141, 4, 14, 11, 4, -10}, // 0x7C '|' - {1148, 8, 14, 11, 2, -10}, // 0x7D '}' - {1162, 9, 4, 11, 2, -6}}; // 0x7E '~' - -const GFXfont FreeMonoBoldOblique9pt7b PROGMEM = { - (uint8_t *)FreeMonoBoldOblique9pt7bBitmaps, - (GFXglyph *)FreeMonoBoldOblique9pt7bGlyphs, 0x20, 0x7E, 18}; - -// Approx. 1839 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h deleted file mode 100644 index 0617603..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique12pt7b.h +++ /dev/null @@ -1,250 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique12pt7bBitmaps[] PROGMEM = { - 0x11, 0x11, 0x12, 0x22, 0x22, 0x00, 0x0E, 0xE0, 0xE7, 0xE7, 0xC6, 0xC6, - 0xC6, 0x84, 0x84, 0x02, 0x40, 0x88, 0x12, 0x02, 0x40, 0x48, 0x7F, 0xC2, - 0x40, 0x48, 0x11, 0x1F, 0xF8, 0x48, 0x09, 0x02, 0x40, 0x48, 0x09, 0x02, - 0x20, 0x02, 0x01, 0x00, 0xF4, 0xC3, 0x60, 0x50, 0x04, 0x00, 0xC0, 0x0F, - 0x00, 0x60, 0x0A, 0x02, 0x81, 0x30, 0xC7, 0xC0, 0x80, 0x20, 0x08, 0x00, - 0x0E, 0x02, 0x20, 0x84, 0x10, 0x82, 0x20, 0x38, 0x00, 0x38, 0x38, 0x38, - 0x08, 0xE0, 0x22, 0x08, 0x41, 0x08, 0x22, 0x03, 0x80, 0x07, 0x84, 0x04, - 0x02, 0x01, 0x00, 0xC1, 0xA2, 0x8A, 0x85, 0x43, 0x31, 0x8F, 0x60, 0xFF, - 0x6D, 0x20, 0x00, 0x44, 0x42, 0x21, 0x08, 0x84, 0x21, 0x08, 0x42, 0x10, - 0x42, 0x00, 0x00, 0x84, 0x10, 0x84, 0x21, 0x08, 0x46, 0x21, 0x10, 0x88, - 0x44, 0x00, 0x04, 0x02, 0x02, 0x1D, 0x13, 0xF0, 0x40, 0x50, 0x48, 0x44, - 0x00, 0x02, 0x00, 0x40, 0x08, 0x02, 0x00, 0x41, 0xFF, 0xC1, 0x00, 0x20, - 0x08, 0x01, 0x00, 0x20, 0x00, 0x1C, 0xE3, 0x18, 0x63, 0x08, 0x00, 0xFF, - 0xE0, 0x7F, 0x00, 0x00, 0x08, 0x00, 0x80, 0x04, 0x00, 0x40, 0x04, 0x00, - 0x60, 0x02, 0x00, 0x20, 0x03, 0x00, 0x10, 0x01, 0x00, 0x18, 0x00, 0x80, - 0x08, 0x00, 0x80, 0x04, 0x00, 0x40, 0x04, 0x00, 0x00, 0x07, 0x06, 0x23, - 0x04, 0x81, 0x40, 0x50, 0x14, 0x06, 0x02, 0x80, 0xA0, 0x28, 0x0A, 0x04, - 0x83, 0x11, 0x83, 0x80, 0x03, 0x03, 0x83, 0x83, 0x43, 0x20, 0x10, 0x08, - 0x08, 0x04, 0x02, 0x01, 0x01, 0x00, 0x80, 0x43, 0xFE, 0x01, 0xC0, 0x62, - 0x0C, 0x10, 0x81, 0x00, 0x10, 0x02, 0x00, 0x60, 0x0C, 0x01, 0x00, 0x20, - 0x0C, 0x01, 0x80, 0x20, 0x04, 0x04, 0xFF, 0xC0, 0x07, 0xC3, 0x0C, 0x00, - 0x80, 0x10, 0x06, 0x01, 0x81, 0xC0, 0x0C, 0x00, 0x40, 0x08, 0x01, 0x00, - 0x20, 0x09, 0x86, 0x0F, 0x00, 0x00, 0xC0, 0x50, 0x24, 0x12, 0x04, 0x82, - 0x21, 0x08, 0x82, 0x21, 0x10, 0x4F, 0xF8, 0x04, 0x01, 0x00, 0x80, 0xF8, - 0x0F, 0xE2, 0x00, 0x40, 0x08, 0x01, 0x00, 0x4E, 0x0E, 0x20, 0x02, 0x00, - 0x40, 0x08, 0x01, 0x00, 0x40, 0x19, 0x06, 0x1F, 0x00, 0x01, 0xE0, 0xC0, - 0x60, 0x18, 0x02, 0x00, 0x80, 0x13, 0xC5, 0x88, 0xE0, 0x98, 0x12, 0x02, - 0x40, 0x48, 0x10, 0x84, 0x0F, 0x00, 0xFF, 0xA0, 0x20, 0x08, 0x04, 0x01, - 0x00, 0x80, 0x20, 0x10, 0x04, 0x02, 0x00, 0x80, 0x40, 0x10, 0x08, 0x02, - 0x00, 0x07, 0x81, 0x08, 0x40, 0x90, 0x12, 0x02, 0x40, 0x84, 0x20, 0x78, - 0x30, 0x88, 0x0A, 0x01, 0x40, 0x28, 0x08, 0x82, 0x0F, 0x80, 0x07, 0x81, - 0x08, 0x40, 0x90, 0x12, 0x02, 0x40, 0xC8, 0x39, 0x8D, 0x1E, 0x40, 0x08, - 0x02, 0x00, 0xC0, 0x30, 0x18, 0x3E, 0x00, 0x19, 0xCC, 0x00, 0x00, 0x0C, - 0xE6, 0x00, 0x06, 0x1C, 0x30, 0x00, 0x00, 0x00, 0x1C, 0x30, 0xE1, 0x86, - 0x08, 0x00, 0x00, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x06, 0x00, 0x30, - 0x00, 0xC0, 0x06, 0x00, 0x18, 0x00, 0xC0, 0x7F, 0xF8, 0x00, 0x00, 0x01, - 0xFF, 0xE0, 0x18, 0x00, 0xC0, 0x03, 0x00, 0x18, 0x00, 0x60, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x00, 0x3E, 0xC3, 0x81, 0x01, 0x03, - 0x06, 0x18, 0x20, 0x20, 0x00, 0x00, 0x00, 0xE0, 0xE0, 0x07, 0x82, 0x31, - 0x04, 0x81, 0x20, 0x48, 0x74, 0x65, 0x21, 0x48, 0x92, 0x28, 0x7A, 0x00, - 0x80, 0x20, 0x04, 0x00, 0xF8, 0x07, 0xE0, 0x02, 0x80, 0x0A, 0x00, 0x48, - 0x01, 0x20, 0x08, 0x40, 0x41, 0x01, 0x04, 0x0F, 0xF0, 0x20, 0x41, 0x01, - 0x04, 0x02, 0x20, 0x0B, 0xE1, 0xF0, 0x1F, 0xF0, 0x40, 0xC2, 0x02, 0x10, - 0x10, 0x81, 0x84, 0x18, 0x7F, 0x82, 0x02, 0x10, 0x08, 0x80, 0x44, 0x02, - 0x60, 0x22, 0x03, 0x7F, 0xE0, 0x07, 0x91, 0x87, 0x20, 0x34, 0x02, 0x40, - 0x08, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x00, 0x80, 0x04, 0x04, 0x61, - 0x81, 0xE0, 0x1F, 0xE0, 0x41, 0x82, 0x06, 0x10, 0x11, 0x00, 0x88, 0x04, - 0x40, 0x22, 0x01, 0x10, 0x11, 0x00, 0x88, 0x08, 0x40, 0xC2, 0x0C, 0x7F, - 0x80, 0x1F, 0xFC, 0x20, 0x10, 0x80, 0x82, 0x00, 0x08, 0x00, 0x22, 0x01, - 0xF8, 0x04, 0x20, 0x10, 0x00, 0x40, 0x01, 0x01, 0x0C, 0x04, 0x20, 0x13, - 0xFF, 0xC0, 0x1F, 0xFC, 0x20, 0x10, 0x80, 0x42, 0x01, 0x08, 0x00, 0x22, - 0x01, 0xF8, 0x04, 0x20, 0x10, 0x00, 0x40, 0x01, 0x00, 0x0C, 0x00, 0x20, - 0x03, 0xF8, 0x00, 0x07, 0xD0, 0x83, 0x30, 0x12, 0x00, 0x40, 0x04, 0x00, - 0x80, 0x08, 0x00, 0x83, 0xE8, 0x04, 0x80, 0x4C, 0x04, 0x60, 0x41, 0xF8, - 0x0F, 0x3C, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0x81, 0x01, 0x02, 0x03, - 0xFC, 0x08, 0x08, 0x10, 0x10, 0x20, 0x40, 0x40, 0x80, 0x81, 0x02, 0x02, - 0x1F, 0x1E, 0x00, 0x3F, 0xE0, 0x40, 0x08, 0x01, 0x00, 0x20, 0x08, 0x01, - 0x00, 0x20, 0x04, 0x00, 0x80, 0x20, 0x04, 0x00, 0x81, 0xFF, 0x00, 0x03, - 0xFE, 0x00, 0x20, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, - 0x00, 0x20, 0x40, 0x40, 0x80, 0x81, 0x01, 0x02, 0x04, 0x06, 0x10, 0x07, - 0xC0, 0x00, 0x1F, 0x1E, 0x10, 0x10, 0x20, 0xC0, 0x43, 0x00, 0x88, 0x01, - 0x20, 0x07, 0xC0, 0x0C, 0x40, 0x10, 0x40, 0x20, 0x80, 0x41, 0x01, 0x81, - 0x02, 0x02, 0x1F, 0x87, 0x00, 0x3F, 0x80, 0x40, 0x04, 0x00, 0x40, 0x08, - 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x01, 0x01, 0x10, 0x11, 0x02, 0x10, - 0x2F, 0xFE, 0x1C, 0x03, 0x85, 0x03, 0x02, 0x82, 0x81, 0x41, 0x40, 0xA1, - 0x20, 0x89, 0x30, 0x44, 0x90, 0x22, 0x88, 0x11, 0x44, 0x08, 0x42, 0x08, - 0x03, 0x04, 0x01, 0x02, 0x00, 0x87, 0xC3, 0xE0, 0x3C, 0x3E, 0x18, 0x08, - 0x38, 0x20, 0x50, 0x41, 0x20, 0x82, 0x61, 0x04, 0x42, 0x08, 0x88, 0x10, - 0x90, 0x41, 0x20, 0x83, 0x41, 0x02, 0x82, 0x06, 0x1F, 0x04, 0x00, 0x03, - 0xC0, 0x61, 0x84, 0x04, 0x40, 0x14, 0x00, 0xA0, 0x06, 0x00, 0x30, 0x01, - 0x80, 0x14, 0x00, 0xA0, 0x08, 0x80, 0x86, 0x18, 0x0F, 0x00, 0x1F, 0xE0, - 0x40, 0x82, 0x02, 0x10, 0x10, 0x80, 0x84, 0x08, 0x40, 0x83, 0xF8, 0x10, - 0x00, 0x80, 0x04, 0x00, 0x60, 0x02, 0x00, 0x7F, 0x00, 0x03, 0xC0, 0x61, - 0x84, 0x04, 0x40, 0x14, 0x00, 0xA0, 0x06, 0x00, 0x30, 0x01, 0x80, 0x14, - 0x00, 0xA0, 0x08, 0x80, 0x86, 0x18, 0x1F, 0x00, 0x40, 0x0F, 0xC4, 0x41, - 0xC0, 0x1F, 0xE0, 0x40, 0x82, 0x02, 0x10, 0x10, 0x80, 0x84, 0x08, 0x60, - 0x83, 0xF8, 0x10, 0xC0, 0x82, 0x04, 0x08, 0x40, 0x42, 0x03, 0x7E, 0x0C, - 0x07, 0xA3, 0x0C, 0x40, 0x90, 0x12, 0x00, 0x40, 0x06, 0x00, 0x3C, 0x00, - 0x40, 0x0A, 0x01, 0x40, 0x4C, 0x11, 0x7C, 0x00, 0xFF, 0xE8, 0x42, 0x84, - 0x20, 0x40, 0x04, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x00, 0x80, 0x10, - 0x01, 0x00, 0x10, 0x0F, 0xE0, 0xF8, 0xF9, 0x00, 0x88, 0x08, 0x80, 0x44, - 0x02, 0x20, 0x11, 0x01, 0x08, 0x08, 0x80, 0x44, 0x02, 0x20, 0x31, 0x01, - 0x04, 0x30, 0x1E, 0x00, 0xF8, 0x7D, 0x00, 0x42, 0x01, 0x08, 0x08, 0x20, - 0x40, 0x81, 0x02, 0x08, 0x08, 0x20, 0x11, 0x00, 0x48, 0x01, 0x20, 0x05, - 0x00, 0x14, 0x00, 0x60, 0x00, 0xF8, 0x7D, 0x00, 0x44, 0x01, 0x11, 0x84, - 0x46, 0x21, 0x18, 0x84, 0xA2, 0x12, 0x90, 0x91, 0x42, 0x45, 0x0A, 0x14, - 0x28, 0x60, 0xC1, 0x83, 0x06, 0x00, 0x1E, 0x1E, 0x10, 0x10, 0x10, 0x40, - 0x21, 0x00, 0x24, 0x00, 0x78, 0x00, 0x60, 0x01, 0xC0, 0x06, 0x80, 0x09, - 0x80, 0x21, 0x00, 0x81, 0x02, 0x02, 0x1E, 0x1F, 0x00, 0xF0, 0xF4, 0x04, - 0x20, 0x82, 0x18, 0x11, 0x01, 0x20, 0x1C, 0x00, 0x80, 0x08, 0x00, 0x80, - 0x10, 0x01, 0x00, 0x10, 0x0F, 0xE0, 0x0F, 0xF1, 0x01, 0x10, 0x21, 0x04, - 0x00, 0x80, 0x10, 0x02, 0x00, 0x40, 0x0C, 0x01, 0x82, 0x10, 0x22, 0x04, - 0x40, 0x47, 0xFC, 0x0E, 0x20, 0x40, 0x81, 0x02, 0x08, 0x10, 0x20, 0x40, - 0x82, 0x04, 0x08, 0x10, 0x20, 0x81, 0xE0, 0x84, 0x20, 0x84, 0x20, 0x84, - 0x21, 0x04, 0x21, 0x08, 0x21, 0x08, 0x40, 0x1E, 0x04, 0x08, 0x20, 0x40, - 0x81, 0x02, 0x04, 0x10, 0x20, 0x40, 0x81, 0x02, 0x08, 0x11, 0xE0, 0x04, - 0x06, 0x04, 0x84, 0x44, 0x14, 0x0C, 0xFF, 0xFE, 0x99, 0x90, 0x1F, 0xC0, - 0x06, 0x00, 0x20, 0x02, 0x1F, 0xE6, 0x04, 0xC0, 0x48, 0x04, 0x81, 0xC7, - 0xEF, 0x18, 0x00, 0x40, 0x02, 0x00, 0x10, 0x00, 0x80, 0x09, 0xF0, 0x50, - 0xC3, 0x03, 0x10, 0x08, 0x80, 0x48, 0x02, 0x40, 0x23, 0x03, 0x1C, 0x33, - 0xBE, 0x00, 0x0F, 0xD3, 0x07, 0x60, 0x24, 0x02, 0x80, 0x08, 0x00, 0x80, - 0x08, 0x06, 0x41, 0xC3, 0xF0, 0x00, 0x38, 0x00, 0x40, 0x02, 0x00, 0x20, - 0x01, 0x07, 0xC8, 0x43, 0x44, 0x0E, 0x40, 0x24, 0x01, 0x20, 0x09, 0x00, - 0xC8, 0x0E, 0x20, 0xE0, 0xF9, 0xC0, 0x0F, 0x86, 0x09, 0x00, 0xA0, 0x1F, - 0xFF, 0x00, 0x20, 0x06, 0x00, 0x60, 0xC7, 0xE0, 0x01, 0xF8, 0x10, 0x01, - 0x00, 0x08, 0x00, 0x40, 0x1F, 0xF0, 0x20, 0x01, 0x00, 0x08, 0x00, 0x40, - 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x03, 0xFE, 0x00, 0x0F, 0x31, 0x86, - 0x10, 0x10, 0x80, 0x88, 0x04, 0x40, 0x22, 0x02, 0x10, 0x10, 0x43, 0x81, - 0xE4, 0x00, 0x40, 0x02, 0x00, 0x20, 0x3E, 0x00, 0x1C, 0x00, 0x20, 0x03, - 0x00, 0x10, 0x00, 0x80, 0x05, 0xF0, 0x30, 0xC3, 0x02, 0x10, 0x10, 0x80, - 0x84, 0x0C, 0x20, 0x63, 0x02, 0x10, 0x13, 0xE3, 0xE0, 0x01, 0x80, 0x40, - 0x10, 0x00, 0x00, 0x07, 0xC0, 0x20, 0x08, 0x02, 0x00, 0x80, 0x20, 0x10, - 0x04, 0x01, 0x0F, 0xFC, 0x00, 0x40, 0x10, 0x0C, 0x00, 0x00, 0x07, 0xF0, - 0x04, 0x01, 0x00, 0x40, 0x20, 0x08, 0x02, 0x00, 0x80, 0x20, 0x10, 0x04, - 0x01, 0x00, 0x8F, 0xC0, 0x18, 0x00, 0x80, 0x08, 0x00, 0x80, 0x08, 0x01, - 0x1F, 0x10, 0x81, 0x30, 0x14, 0x01, 0xC0, 0x26, 0x02, 0x20, 0x21, 0x02, - 0x08, 0xE1, 0xE0, 0x0F, 0x80, 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, 0x20, - 0x08, 0x02, 0x00, 0x80, 0x20, 0x10, 0x04, 0x01, 0x0F, 0xFC, 0x3B, 0xB8, - 0x33, 0x91, 0x08, 0x44, 0x21, 0x10, 0x84, 0x42, 0x12, 0x10, 0x48, 0x42, - 0x21, 0x0B, 0xC6, 0x30, 0x19, 0xE0, 0xE3, 0x08, 0x11, 0x01, 0x10, 0x11, - 0x02, 0x10, 0x21, 0x02, 0x20, 0x2F, 0x87, 0x0F, 0x86, 0x19, 0x80, 0xA0, - 0x18, 0x03, 0x00, 0x60, 0x14, 0x06, 0x61, 0x87, 0xC0, 0x19, 0xF0, 0x28, - 0x20, 0xC0, 0x42, 0x01, 0x10, 0x04, 0x40, 0x11, 0x00, 0x86, 0x06, 0x14, - 0x30, 0xCF, 0x02, 0x00, 0x08, 0x00, 0x20, 0x03, 0xF0, 0x00, 0x0F, 0x39, - 0x85, 0x18, 0x18, 0x80, 0x88, 0x04, 0x40, 0x22, 0x01, 0x18, 0x18, 0x63, - 0x81, 0xE4, 0x00, 0x20, 0x01, 0x00, 0x10, 0x07, 0xE0, 0x1C, 0x78, 0x2C, - 0x01, 0x80, 0x18, 0x00, 0x80, 0x04, 0x00, 0x20, 0x02, 0x00, 0x10, 0x07, - 0xFC, 0x00, 0x0F, 0x44, 0x32, 0x04, 0x80, 0x1E, 0x00, 0x60, 0x0A, 0x02, - 0xC1, 0x2F, 0x80, 0x10, 0x08, 0x04, 0x02, 0x0F, 0xF9, 0x00, 0x80, 0x40, - 0x20, 0x20, 0x10, 0x08, 0x04, 0x19, 0xF0, 0xE0, 0xF2, 0x02, 0x40, 0x24, - 0x02, 0x40, 0x24, 0x06, 0x40, 0x44, 0x04, 0x41, 0xC3, 0xE6, 0xF8, 0xFA, - 0x01, 0x08, 0x10, 0x41, 0x02, 0x08, 0x10, 0x80, 0x48, 0x02, 0x40, 0x14, - 0x00, 0xC0, 0x00, 0xE0, 0x7A, 0x01, 0x10, 0x08, 0x8C, 0x84, 0xA4, 0x25, - 0x21, 0x4A, 0x0A, 0x50, 0x63, 0x02, 0x18, 0x00, 0x1E, 0x3C, 0x20, 0x40, - 0x46, 0x00, 0xB0, 0x03, 0x00, 0x0E, 0x00, 0xC8, 0x06, 0x10, 0x20, 0x23, - 0xE3, 0xC0, 0x3C, 0x3C, 0x40, 0x20, 0x81, 0x02, 0x08, 0x08, 0x20, 0x31, - 0x00, 0x48, 0x01, 0x40, 0x05, 0x00, 0x08, 0x00, 0x40, 0x02, 0x00, 0x08, - 0x03, 0xF0, 0x00, 0x3F, 0xC4, 0x18, 0x06, 0x01, 0x80, 0x60, 0x10, 0x04, - 0x01, 0x00, 0x40, 0x9F, 0xF0, 0x06, 0x10, 0x20, 0x41, 0x02, 0x04, 0x08, - 0x21, 0x80, 0x81, 0x02, 0x08, 0x10, 0x20, 0x40, 0xC0, 0x01, 0x11, 0x12, - 0x22, 0x24, 0x44, 0x44, 0x88, 0x80, 0x0C, 0x08, 0x10, 0x20, 0x40, 0x82, - 0x04, 0x08, 0x0C, 0x20, 0x81, 0x02, 0x04, 0x08, 0x21, 0x80, 0x38, 0x28, - 0x88, 0x0E, 0x00}; - -const GFXglyph FreeMonoOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 14, 0, 1}, // 0x20 ' ' - {0, 4, 15, 14, 6, -14}, // 0x21 '!' - {8, 8, 7, 14, 5, -14}, // 0x22 '"' - {15, 11, 16, 14, 3, -14}, // 0x23 '#' - {37, 10, 18, 14, 4, -15}, // 0x24 '$' - {60, 11, 15, 14, 3, -14}, // 0x25 '%' - {81, 9, 12, 14, 3, -11}, // 0x26 '&' - {95, 3, 7, 14, 8, -14}, // 0x27 ''' - {98, 5, 18, 14, 8, -14}, // 0x28 '(' - {110, 5, 18, 14, 4, -14}, // 0x29 ')' - {122, 9, 9, 14, 5, -14}, // 0x2A '*' - {133, 11, 11, 14, 3, -11}, // 0x2B '+' - {149, 6, 7, 14, 3, -3}, // 0x2C ',' - {155, 11, 1, 14, 3, -6}, // 0x2D '-' - {157, 3, 3, 14, 6, -2}, // 0x2E '.' - {159, 13, 18, 14, 2, -15}, // 0x2F '/' - {189, 10, 15, 14, 4, -14}, // 0x30 '0' - {208, 9, 15, 14, 3, -14}, // 0x31 '1' - {225, 12, 15, 14, 2, -14}, // 0x32 '2' - {248, 11, 15, 14, 3, -14}, // 0x33 '3' - {269, 10, 15, 14, 3, -14}, // 0x34 '4' - {288, 11, 15, 14, 3, -14}, // 0x35 '5' - {309, 11, 15, 14, 4, -14}, // 0x36 '6' - {330, 10, 15, 14, 5, -14}, // 0x37 '7' - {349, 11, 15, 14, 3, -14}, // 0x38 '8' - {370, 11, 15, 14, 3, -14}, // 0x39 '9' - {391, 5, 10, 14, 5, -9}, // 0x3A ':' - {398, 7, 13, 14, 3, -9}, // 0x3B ';' - {410, 12, 11, 14, 3, -11}, // 0x3C '<' - {427, 13, 4, 14, 2, -8}, // 0x3D '=' - {434, 12, 11, 14, 2, -11}, // 0x3E '>' - {451, 8, 14, 14, 6, -13}, // 0x3F '?' - {465, 10, 16, 14, 3, -14}, // 0x40 '@' - {485, 14, 14, 14, 0, -13}, // 0x41 'A' - {510, 13, 14, 14, 1, -13}, // 0x42 'B' - {533, 12, 14, 14, 3, -13}, // 0x43 'C' - {554, 13, 14, 14, 1, -13}, // 0x44 'D' - {577, 14, 14, 14, 1, -13}, // 0x45 'E' - {602, 14, 14, 14, 1, -13}, // 0x46 'F' - {627, 12, 14, 14, 3, -13}, // 0x47 'G' - {648, 15, 14, 14, 1, -13}, // 0x48 'H' - {675, 11, 14, 14, 3, -13}, // 0x49 'I' - {695, 15, 14, 14, 2, -13}, // 0x4A 'J' - {722, 15, 14, 14, 1, -13}, // 0x4B 'K' - {749, 12, 14, 14, 2, -13}, // 0x4C 'L' - {770, 17, 14, 14, 0, -13}, // 0x4D 'M' - {800, 15, 14, 14, 1, -13}, // 0x4E 'N' - {827, 13, 14, 14, 2, -13}, // 0x4F 'O' - {850, 13, 14, 14, 1, -13}, // 0x50 'P' - {873, 13, 17, 14, 2, -13}, // 0x51 'Q' - {901, 13, 14, 14, 1, -13}, // 0x52 'R' - {924, 11, 14, 14, 3, -13}, // 0x53 'S' - {944, 12, 14, 14, 4, -13}, // 0x54 'T' - {965, 13, 14, 14, 3, -13}, // 0x55 'U' - {988, 14, 14, 14, 3, -13}, // 0x56 'V' - {1013, 14, 14, 14, 3, -13}, // 0x57 'W' - {1038, 15, 14, 14, 1, -13}, // 0x58 'X' - {1065, 12, 14, 14, 4, -13}, // 0x59 'Y' - {1086, 12, 14, 14, 2, -13}, // 0x5A 'Z' - {1107, 7, 18, 14, 6, -14}, // 0x5B '[' - {1123, 5, 18, 14, 6, -15}, // 0x5C '\' - {1135, 7, 18, 14, 3, -14}, // 0x5D ']' - {1151, 9, 6, 14, 5, -14}, // 0x5E '^' - {1158, 15, 1, 14, -1, 3}, // 0x5F '_' - {1160, 3, 4, 14, 6, -15}, // 0x60 '`' - {1162, 12, 10, 14, 2, -9}, // 0x61 'a' - {1177, 13, 15, 14, 1, -14}, // 0x62 'b' - {1202, 12, 10, 14, 3, -9}, // 0x63 'c' - {1217, 13, 15, 14, 2, -14}, // 0x64 'd' - {1242, 11, 10, 14, 3, -9}, // 0x65 'e' - {1256, 13, 15, 14, 3, -14}, // 0x66 'f' - {1281, 13, 14, 14, 3, -9}, // 0x67 'g' - {1304, 13, 15, 14, 1, -14}, // 0x68 'h' - {1329, 10, 15, 14, 2, -14}, // 0x69 'i' - {1348, 10, 19, 14, 2, -14}, // 0x6A 'j' - {1372, 12, 15, 14, 2, -14}, // 0x6B 'k' - {1395, 10, 15, 14, 2, -14}, // 0x6C 'l' - {1414, 14, 10, 14, 0, -9}, // 0x6D 'm' - {1432, 12, 10, 14, 1, -9}, // 0x6E 'n' - {1447, 11, 10, 14, 3, -9}, // 0x6F 'o' - {1461, 14, 14, 14, 0, -9}, // 0x70 'p' - {1486, 13, 14, 14, 3, -9}, // 0x71 'q' - {1509, 13, 10, 14, 2, -9}, // 0x72 'r' - {1526, 10, 10, 14, 3, -9}, // 0x73 's' - {1539, 9, 14, 14, 3, -13}, // 0x74 't' - {1555, 12, 10, 14, 2, -9}, // 0x75 'u' - {1570, 13, 10, 14, 3, -9}, // 0x76 'v' - {1587, 13, 10, 14, 3, -9}, // 0x77 'w' - {1604, 14, 10, 14, 1, -9}, // 0x78 'x' - {1622, 14, 14, 14, 1, -9}, // 0x79 'y' - {1647, 11, 10, 14, 3, -9}, // 0x7A 'z' - {1661, 7, 18, 14, 5, -14}, // 0x7B '{' - {1677, 4, 17, 14, 6, -13}, // 0x7C '|' - {1686, 7, 18, 14, 4, -14}, // 0x7D '}' - {1702, 11, 3, 14, 3, -7}}; // 0x7E '~' - -const GFXfont FreeMonoOblique12pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique12pt7bBitmaps, - (GFXglyph *)FreeMonoOblique12pt7bGlyphs, 0x20, 0x7E, 24}; - -// Approx. 2379 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h deleted file mode 100644 index c12ae08..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique18pt7b.h +++ /dev/null @@ -1,400 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique18pt7bBitmaps[] PROGMEM = { - 0x00, 0x1C, 0x38, 0x70, 0xC1, 0x83, 0x06, 0x18, 0x30, 0x60, 0xC1, 0x02, - 0x04, 0x00, 0x00, 0x01, 0xC7, 0x8F, 0x1C, 0x00, 0x78, 0x7B, 0xC3, 0xFC, - 0x3D, 0xE1, 0xEF, 0x0F, 0x70, 0x73, 0x83, 0x98, 0x18, 0xC0, 0xC6, 0x06, - 0x00, 0x00, 0x8C, 0x01, 0x18, 0x06, 0x20, 0x08, 0x40, 0x11, 0x80, 0x62, - 0x00, 0xC4, 0x01, 0x18, 0x02, 0x30, 0x7F, 0xFC, 0x10, 0x80, 0x23, 0x00, - 0xC4, 0x01, 0x88, 0x3F, 0xFF, 0x04, 0x60, 0x18, 0x80, 0x21, 0x00, 0x46, - 0x01, 0x88, 0x03, 0x10, 0x04, 0x60, 0x08, 0xC0, 0x31, 0x00, 0x00, 0x30, - 0x00, 0x20, 0x00, 0x20, 0x00, 0xF9, 0x03, 0x0F, 0x06, 0x03, 0x04, 0x03, - 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x03, 0xC0, 0x00, 0x78, - 0x00, 0x0C, 0x00, 0x04, 0x00, 0x04, 0x40, 0x04, 0x40, 0x08, 0x40, 0x18, - 0xF0, 0x60, 0x9F, 0x80, 0x02, 0x00, 0x06, 0x00, 0x04, 0x00, 0x04, 0x00, - 0x04, 0x00, 0x03, 0xC0, 0x0C, 0x60, 0x08, 0x20, 0x10, 0x20, 0x10, 0x20, - 0x10, 0x40, 0x18, 0x80, 0x0F, 0x00, 0x00, 0x0F, 0x00, 0x78, 0x07, 0xC0, - 0x3C, 0x00, 0xE0, 0x00, 0x01, 0xE0, 0x02, 0x18, 0x04, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x08, 0x10, 0x0C, 0x20, 0x07, 0xC0, 0x01, 0xF0, 0x11, 0x81, - 0x00, 0x10, 0x00, 0x80, 0x04, 0x00, 0x20, 0x01, 0x80, 0x04, 0x00, 0xF0, - 0x09, 0x86, 0x84, 0x48, 0x32, 0x40, 0xA2, 0x07, 0x10, 0x30, 0x43, 0x81, - 0xE7, 0x80, 0x7B, 0xFD, 0xEF, 0x73, 0x98, 0xC6, 0x00, 0x01, 0x02, 0x06, - 0x0C, 0x0C, 0x18, 0x10, 0x30, 0x30, 0x60, 0x60, 0x60, 0xC0, 0xC0, 0xC0, - 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x40, 0x60, 0x60, 0x20, 0x04, 0x06, - 0x06, 0x02, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x06, - 0x06, 0x06, 0x0C, 0x0C, 0x0C, 0x18, 0x10, 0x30, 0x60, 0x40, 0xC0, 0x01, - 0x00, 0x04, 0x00, 0x10, 0x00, 0xC6, 0xE3, 0xF8, 0x7E, 0x00, 0x70, 0x03, - 0x40, 0x19, 0x80, 0xC2, 0x06, 0x0C, 0x00, 0x00, 0xC0, 0x01, 0x00, 0x02, - 0x00, 0x04, 0x00, 0x08, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0xFF, 0xFE, - 0x02, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x02, - 0x00, 0x04, 0x00, 0x0F, 0x87, 0x87, 0x83, 0x83, 0xC1, 0xC1, 0xC0, 0xC0, - 0xE0, 0x60, 0x00, 0xFF, 0xFF, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, 0x60, - 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0xC0, 0x00, 0x30, 0x00, 0x04, 0x00, - 0x01, 0x80, 0x00, 0x60, 0x00, 0x08, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, - 0x10, 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0x20, 0x00, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0x40, 0x00, 0x18, 0x00, 0x06, 0x00, 0x00, 0x80, 0x00, 0x20, - 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00, 0x01, - 0xF0, 0x18, 0x60, 0x80, 0x86, 0x01, 0x10, 0x04, 0x80, 0x12, 0x00, 0x50, - 0x01, 0x40, 0x0D, 0x00, 0x24, 0x00, 0xA0, 0x02, 0x80, 0x1A, 0x00, 0x48, - 0x01, 0x20, 0x0C, 0x80, 0x22, 0x01, 0x84, 0x0C, 0x18, 0x60, 0x3E, 0x00, - 0x00, 0x60, 0x07, 0x00, 0x68, 0x06, 0x40, 0xE4, 0x04, 0x20, 0x01, 0x00, - 0x08, 0x00, 0x40, 0x04, 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x80, 0x04, - 0x00, 0x20, 0x01, 0x00, 0x08, 0x00, 0x80, 0x04, 0x0F, 0xFF, 0x80, 0x00, - 0x3C, 0x00, 0x61, 0x80, 0x40, 0x40, 0x40, 0x10, 0x60, 0x08, 0x00, 0x04, - 0x00, 0x02, 0x00, 0x02, 0x00, 0x03, 0x00, 0x03, 0x00, 0x07, 0x00, 0x07, - 0x00, 0x06, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x0C, - 0x00, 0x1C, 0x01, 0x1C, 0x00, 0x8F, 0xFF, 0xC0, 0x00, 0xFC, 0x03, 0x06, - 0x06, 0x03, 0x00, 0x01, 0x00, 0x01, 0x00, 0x01, 0x00, 0x02, 0x00, 0x02, - 0x00, 0x0C, 0x00, 0xF0, 0x00, 0x18, 0x00, 0x04, 0x00, 0x02, 0x00, 0x02, - 0x00, 0x02, 0x00, 0x02, 0x00, 0x04, 0x00, 0x04, 0x40, 0x18, 0x70, 0x30, - 0x0F, 0xC0, 0x00, 0x1C, 0x00, 0xD0, 0x06, 0x80, 0x32, 0x00, 0x88, 0x04, - 0x20, 0x30, 0x81, 0x84, 0x04, 0x10, 0x20, 0x41, 0x81, 0x0C, 0x08, 0x60, - 0x21, 0x00, 0x8F, 0xFF, 0x80, 0x18, 0x00, 0x40, 0x01, 0x00, 0x04, 0x00, - 0x10, 0x07, 0xE0, 0x03, 0xFF, 0x03, 0x00, 0x01, 0x80, 0x00, 0x80, 0x00, - 0x40, 0x00, 0x20, 0x00, 0x30, 0x00, 0x1B, 0xE0, 0x0E, 0x0C, 0x00, 0x02, - 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, 0x08, 0x00, - 0x08, 0x00, 0x04, 0x60, 0x04, 0x18, 0x04, 0x06, 0x0C, 0x00, 0xF8, 0x00, - 0x00, 0x3F, 0x00, 0xC0, 0x03, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x30, 0x00, 0x20, 0x00, 0x40, 0x00, 0x43, 0xE0, 0x4C, 0x30, 0xB0, 0x18, - 0xE0, 0x08, 0xC0, 0x08, 0x80, 0x08, 0x80, 0x08, 0x80, 0x10, 0xC0, 0x10, - 0x40, 0x20, 0x20, 0xC0, 0x1F, 0x00, 0xFF, 0xFC, 0x00, 0xE0, 0x04, 0x00, - 0x60, 0x02, 0x00, 0x30, 0x01, 0x00, 0x18, 0x00, 0x80, 0x0C, 0x00, 0x40, - 0x06, 0x00, 0x20, 0x03, 0x00, 0x10, 0x01, 0x80, 0x08, 0x00, 0xC0, 0x04, - 0x00, 0x60, 0x02, 0x00, 0x00, 0x00, 0xF0, 0x06, 0x18, 0x10, 0x18, 0x40, - 0x11, 0x00, 0x22, 0x00, 0x44, 0x00, 0x88, 0x02, 0x18, 0x08, 0x18, 0x60, - 0x1F, 0x80, 0xC1, 0x82, 0x01, 0x88, 0x01, 0x20, 0x02, 0x40, 0x04, 0x80, - 0x09, 0x00, 0x23, 0x00, 0x83, 0x06, 0x01, 0xF0, 0x00, 0x00, 0xF0, 0x06, - 0x18, 0x10, 0x10, 0x40, 0x30, 0x80, 0x22, 0x00, 0x44, 0x00, 0x88, 0x03, - 0x10, 0x0E, 0x30, 0x34, 0x30, 0xD0, 0x3E, 0x20, 0x00, 0x40, 0x01, 0x00, - 0x02, 0x00, 0x08, 0x00, 0x20, 0x00, 0xC0, 0x02, 0x00, 0x18, 0x0F, 0xC0, - 0x00, 0x1C, 0x7C, 0xF9, 0xF1, 0xC0, 0x00, 0x00, 0x00, 0x01, 0xC7, 0xCF, - 0x9F, 0x1C, 0x00, 0x01, 0xC0, 0x7C, 0x0F, 0x81, 0xF0, 0x1C, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x07, 0x81, 0xE0, 0x3C, 0x0F, 0x01, - 0xC0, 0x70, 0x0E, 0x03, 0x80, 0x60, 0x00, 0x00, 0x01, 0x80, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x07, - 0x00, 0x00, 0xE0, 0x00, 0x38, 0x7F, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x18, 0x00, 0x03, 0x80, - 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x00, 0xE0, - 0x00, 0x0E, 0x00, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, - 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x00, 0x1F, 0xCE, 0x06, 0x80, - 0x38, 0x01, 0x80, 0x10, 0x01, 0x00, 0x20, 0x04, 0x01, 0x80, 0xF0, 0x18, - 0x01, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x0F, 0x80, 0xF8, - 0x07, 0x00, 0x01, 0xF0, 0x0C, 0x30, 0x30, 0x30, 0x40, 0x21, 0x00, 0x44, - 0x00, 0x88, 0x01, 0x10, 0x1E, 0x40, 0xC4, 0x86, 0x11, 0x08, 0x22, 0x20, - 0x48, 0x40, 0x90, 0x82, 0x21, 0x84, 0x40, 0xFC, 0x80, 0x01, 0x00, 0x02, - 0x00, 0x04, 0x00, 0x04, 0x00, 0x0C, 0x18, 0x07, 0xC0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x68, 0x00, 0x06, 0x40, 0x00, 0x32, 0x00, 0x03, 0x10, 0x00, - 0x10, 0x80, 0x01, 0x84, 0x00, 0x18, 0x10, 0x00, 0xC0, 0x80, 0x0C, 0x04, - 0x00, 0x60, 0x20, 0x06, 0x01, 0x00, 0x3F, 0xFC, 0x02, 0x00, 0x20, 0x10, - 0x01, 0x01, 0x00, 0x08, 0x08, 0x00, 0x40, 0x80, 0x02, 0x0C, 0x00, 0x09, - 0xFC, 0x07, 0xF0, 0x0F, 0xFF, 0x00, 0x40, 0x60, 0x20, 0x0C, 0x08, 0x01, - 0x02, 0x00, 0x40, 0x80, 0x10, 0x40, 0x08, 0x10, 0x06, 0x04, 0x03, 0x01, - 0xFF, 0x80, 0x40, 0x38, 0x20, 0x02, 0x08, 0x00, 0x42, 0x00, 0x10, 0x80, - 0x04, 0x40, 0x01, 0x10, 0x00, 0x84, 0x00, 0x41, 0x00, 0x23, 0xFF, 0xF0, - 0x00, 0xFC, 0x40, 0xC1, 0xF0, 0xC0, 0x1C, 0x60, 0x06, 0x10, 0x00, 0x88, - 0x00, 0x24, 0x00, 0x01, 0x00, 0x00, 0x40, 0x00, 0x30, 0x00, 0x08, 0x00, - 0x02, 0x00, 0x00, 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x03, 0x00, 0x00, - 0x40, 0x06, 0x08, 0x03, 0x01, 0x83, 0x80, 0x3F, 0x00, 0x0F, 0xFE, 0x00, - 0x80, 0xC0, 0x20, 0x18, 0x10, 0x02, 0x04, 0x00, 0x41, 0x00, 0x10, 0x40, - 0x04, 0x20, 0x01, 0x08, 0x00, 0x42, 0x00, 0x10, 0x80, 0x08, 0x20, 0x02, - 0x10, 0x00, 0x84, 0x00, 0x21, 0x00, 0x10, 0x40, 0x08, 0x20, 0x06, 0x08, - 0x03, 0x02, 0x01, 0x83, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x10, 0x02, 0x02, - 0x00, 0x60, 0x20, 0x06, 0x02, 0x00, 0x60, 0x20, 0x00, 0x04, 0x00, 0x00, - 0x40, 0x80, 0x04, 0x10, 0x00, 0x7F, 0x00, 0x04, 0x10, 0x00, 0x81, 0x00, - 0x08, 0x00, 0x00, 0x80, 0x00, 0x08, 0x00, 0x81, 0x00, 0x08, 0x10, 0x00, - 0x81, 0x00, 0x18, 0x10, 0x01, 0x8F, 0xFF, 0xF0, 0x0F, 0xFF, 0xF0, 0x10, - 0x03, 0x02, 0x00, 0x30, 0x20, 0x03, 0x02, 0x00, 0x20, 0x20, 0x00, 0x04, - 0x00, 0x00, 0x40, 0x80, 0x04, 0x10, 0x00, 0x7F, 0x00, 0x04, 0x10, 0x00, - 0x81, 0x00, 0x08, 0x00, 0x00, 0x80, 0x00, 0x08, 0x00, 0x01, 0x00, 0x00, - 0x10, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFE, - 0x40, 0xC0, 0xF0, 0x40, 0x1C, 0x20, 0x03, 0x10, 0x00, 0x88, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x08, 0x00, 0x02, 0x01, - 0xFE, 0x80, 0x02, 0x20, 0x00, 0x88, 0x00, 0x22, 0x00, 0x08, 0x40, 0x04, - 0x18, 0x01, 0x03, 0x81, 0xC0, 0x3F, 0x80, 0x07, 0xE1, 0xF8, 0x08, 0x02, - 0x00, 0x80, 0x10, 0x04, 0x00, 0x80, 0x20, 0x04, 0x01, 0x00, 0x20, 0x18, - 0x02, 0x00, 0x80, 0x10, 0x04, 0x00, 0x80, 0x3F, 0xFC, 0x01, 0x00, 0x60, - 0x10, 0x02, 0x00, 0x80, 0x10, 0x04, 0x00, 0x80, 0x20, 0x04, 0x02, 0x00, - 0x40, 0x10, 0x02, 0x00, 0x80, 0x10, 0x04, 0x00, 0x81, 0xF8, 0x3F, 0x00, - 0x0F, 0xFF, 0x80, 0x10, 0x00, 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, - 0x10, 0x00, 0x08, 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x1F, 0xFF, 0x00, 0x00, 0xFF, 0xF0, 0x00, 0x20, - 0x00, 0x02, 0x00, 0x00, 0x20, 0x00, 0x02, 0x00, 0x00, 0x20, 0x00, 0x04, - 0x00, 0x00, 0x40, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, 0x0C, 0x04, 0x00, - 0x80, 0x40, 0x08, 0x08, 0x00, 0x80, 0x80, 0x08, 0x08, 0x01, 0x00, 0x80, - 0x10, 0x0C, 0x02, 0x00, 0x60, 0xC0, 0x01, 0xF0, 0x00, 0x0F, 0xE1, 0xF8, - 0x08, 0x03, 0x00, 0x80, 0x60, 0x04, 0x06, 0x00, 0x20, 0x60, 0x01, 0x06, - 0x00, 0x10, 0xC0, 0x00, 0x8C, 0x00, 0x04, 0xC0, 0x00, 0x2F, 0x80, 0x01, - 0x8E, 0x00, 0x18, 0x30, 0x00, 0x80, 0xC0, 0x04, 0x06, 0x00, 0x20, 0x10, - 0x02, 0x00, 0xC0, 0x10, 0x06, 0x00, 0x80, 0x30, 0x04, 0x00, 0x81, 0xFC, - 0x07, 0x80, 0x07, 0xFC, 0x00, 0x10, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, - 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x40, - 0x00, 0x10, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x10, 0x20, 0x04, - 0x08, 0x01, 0x04, 0x00, 0x81, 0x00, 0x20, 0x40, 0x0B, 0xFF, 0xFE, 0x0F, - 0x00, 0x1E, 0x03, 0x00, 0x38, 0x05, 0x00, 0x68, 0x04, 0x80, 0x68, 0x04, - 0x80, 0xC8, 0x04, 0x80, 0x90, 0x04, 0x81, 0x90, 0x08, 0x43, 0x10, 0x08, - 0x42, 0x10, 0x08, 0x46, 0x10, 0x08, 0x4C, 0x20, 0x10, 0x2C, 0x20, 0x10, - 0x38, 0x20, 0x10, 0x30, 0x20, 0x10, 0x00, 0x40, 0x10, 0x00, 0x40, 0x20, - 0x00, 0x40, 0x20, 0x00, 0x40, 0x20, 0x00, 0x40, 0xFC, 0x07, 0xE0, 0x1F, - 0x01, 0xFC, 0x0C, 0x00, 0x80, 0x78, 0x02, 0x01, 0xE0, 0x18, 0x04, 0x80, - 0x60, 0x13, 0x01, 0x00, 0x4C, 0x04, 0x03, 0x18, 0x10, 0x0C, 0x60, 0xC0, - 0x20, 0x83, 0x00, 0x83, 0x08, 0x06, 0x0C, 0x20, 0x18, 0x18, 0x80, 0x40, - 0x66, 0x01, 0x00, 0x98, 0x04, 0x03, 0x40, 0x30, 0x0D, 0x00, 0xC0, 0x14, - 0x02, 0x00, 0x70, 0x3F, 0x80, 0xC0, 0x00, 0xF8, 0x01, 0x83, 0x01, 0x00, - 0xC1, 0x00, 0x21, 0x00, 0x19, 0x00, 0x04, 0x80, 0x02, 0x80, 0x01, 0x40, - 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x28, 0x00, 0x14, 0x00, 0x12, - 0x00, 0x09, 0x80, 0x08, 0x40, 0x08, 0x30, 0x08, 0x0C, 0x18, 0x01, 0xF0, - 0x00, 0x0F, 0xFE, 0x00, 0x40, 0x60, 0x20, 0x0C, 0x08, 0x01, 0x02, 0x00, - 0x40, 0x80, 0x10, 0x40, 0x04, 0x10, 0x02, 0x04, 0x01, 0x01, 0x01, 0x80, - 0x7F, 0x80, 0x20, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x40, - 0x00, 0x10, 0x00, 0x04, 0x00, 0x01, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xF8, - 0x01, 0x83, 0x01, 0x00, 0xC1, 0x00, 0x21, 0x00, 0x19, 0x00, 0x05, 0x00, - 0x02, 0x80, 0x01, 0x40, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x28, - 0x00, 0x14, 0x00, 0x12, 0x00, 0x09, 0x80, 0x08, 0x40, 0x08, 0x30, 0x08, - 0x0C, 0x18, 0x03, 0xF0, 0x00, 0xC0, 0x01, 0xC0, 0x01, 0xFE, 0x18, 0xC0, - 0xF0, 0x0F, 0xFE, 0x00, 0x40, 0x60, 0x20, 0x0C, 0x08, 0x01, 0x02, 0x00, - 0x40, 0x80, 0x10, 0x40, 0x04, 0x10, 0x02, 0x04, 0x01, 0x01, 0x01, 0x80, - 0x7F, 0x80, 0x20, 0x60, 0x08, 0x0C, 0x02, 0x03, 0x80, 0x80, 0x60, 0x40, - 0x18, 0x10, 0x03, 0x04, 0x00, 0xC1, 0x00, 0x1B, 0xF8, 0x07, 0x00, 0x7E, - 0x40, 0x60, 0xF0, 0x20, 0x1C, 0x10, 0x02, 0x08, 0x00, 0x82, 0x00, 0x00, - 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xC0, 0x00, - 0x18, 0x00, 0x01, 0x00, 0x00, 0x44, 0x00, 0x11, 0x00, 0x04, 0x40, 0x02, - 0x38, 0x01, 0x0B, 0x81, 0x82, 0x3F, 0x80, 0x3F, 0xFF, 0xA0, 0x20, 0x50, - 0x10, 0x28, 0x08, 0x24, 0x08, 0x10, 0x04, 0x00, 0x02, 0x00, 0x01, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x10, 0x00, 0x10, - 0x00, 0x08, 0x00, 0x04, 0x00, 0x02, 0x00, 0x02, 0x00, 0x01, 0x00, 0x1F, - 0xFC, 0x00, 0x7E, 0x0F, 0xC4, 0x00, 0x42, 0x00, 0x10, 0x80, 0x08, 0x20, - 0x02, 0x08, 0x00, 0x82, 0x00, 0x21, 0x00, 0x08, 0x40, 0x04, 0x10, 0x01, - 0x04, 0x00, 0x41, 0x00, 0x10, 0x80, 0x0C, 0x20, 0x02, 0x08, 0x00, 0x82, - 0x00, 0x60, 0x80, 0x10, 0x10, 0x08, 0x06, 0x0C, 0x00, 0x7C, 0x00, 0xFE, - 0x03, 0xF9, 0x80, 0x02, 0x0C, 0x00, 0x30, 0x20, 0x01, 0x01, 0x00, 0x10, - 0x08, 0x01, 0x80, 0x60, 0x08, 0x03, 0x00, 0xC0, 0x18, 0x04, 0x00, 0x40, - 0x60, 0x02, 0x06, 0x00, 0x10, 0x20, 0x00, 0xC3, 0x00, 0x06, 0x10, 0x00, - 0x31, 0x80, 0x00, 0x88, 0x00, 0x04, 0x80, 0x00, 0x2C, 0x00, 0x01, 0xC0, - 0x00, 0x0E, 0x00, 0x00, 0x7F, 0x07, 0xF2, 0x00, 0x04, 0x20, 0x00, 0xC2, - 0x00, 0x08, 0x20, 0xC0, 0x82, 0x0C, 0x18, 0x21, 0xA1, 0x02, 0x1A, 0x10, - 0x23, 0x23, 0x04, 0x32, 0x30, 0x46, 0x22, 0x04, 0x62, 0x60, 0x4C, 0x26, - 0x04, 0xC2, 0x40, 0x58, 0x24, 0x05, 0x82, 0xC0, 0x70, 0x28, 0x07, 0x02, - 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x00, 0x0F, 0xC1, 0xF8, 0x30, 0x03, 0x00, - 0xC0, 0x30, 0x06, 0x03, 0x00, 0x18, 0x10, 0x00, 0xC1, 0x00, 0x03, 0x18, - 0x00, 0x09, 0x80, 0x00, 0x78, 0x00, 0x01, 0x80, 0x00, 0x1C, 0x00, 0x01, - 0xA0, 0x00, 0x19, 0x80, 0x01, 0x84, 0x00, 0x18, 0x30, 0x01, 0x80, 0xC0, - 0x08, 0x06, 0x00, 0x80, 0x18, 0x08, 0x00, 0xC1, 0xF8, 0x3F, 0x80, 0x7E, - 0x0F, 0xC4, 0x00, 0xC1, 0x80, 0x60, 0x20, 0x30, 0x0C, 0x08, 0x03, 0x04, - 0x00, 0x43, 0x00, 0x19, 0x80, 0x02, 0xC0, 0x00, 0xE0, 0x00, 0x10, 0x00, - 0x04, 0x00, 0x01, 0x00, 0x00, 0x80, 0x00, 0x20, 0x00, 0x08, 0x00, 0x02, - 0x00, 0x01, 0x00, 0x00, 0x40, 0x03, 0xFF, 0x80, 0x0F, 0xFF, 0x86, 0x00, - 0x82, 0x00, 0x81, 0x00, 0xC1, 0x80, 0xC0, 0xC0, 0xC0, 0x00, 0xC0, 0x00, - 0xC0, 0x00, 0x40, 0x00, 0x40, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, - 0x60, 0x10, 0x60, 0x18, 0x20, 0x08, 0x20, 0x04, 0x20, 0x02, 0x30, 0x03, - 0x1F, 0xFF, 0x80, 0x07, 0xE0, 0x80, 0x10, 0x02, 0x00, 0xC0, 0x18, 0x02, - 0x00, 0x40, 0x18, 0x03, 0x00, 0x40, 0x08, 0x01, 0x00, 0x60, 0x0C, 0x01, - 0x00, 0x20, 0x04, 0x01, 0x80, 0x30, 0x04, 0x00, 0x80, 0x10, 0x06, 0x00, - 0xFC, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, - 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, - 0x02, 0x02, 0x02, 0x02, 0x00, 0x07, 0xE0, 0x0C, 0x01, 0x00, 0x20, 0x04, - 0x01, 0x80, 0x30, 0x04, 0x00, 0x80, 0x30, 0x06, 0x00, 0x80, 0x10, 0x02, - 0x00, 0xC0, 0x18, 0x02, 0x00, 0x40, 0x18, 0x03, 0x00, 0x40, 0x08, 0x03, - 0x00, 0x60, 0xF8, 0x00, 0x01, 0x00, 0x1C, 0x01, 0xB0, 0x19, 0x81, 0x86, - 0x18, 0x11, 0x80, 0xD8, 0x03, 0x80, 0x18, 0xFF, 0xFF, 0xF8, 0xC7, 0x1C, - 0x71, 0x80, 0x03, 0xF8, 0x0C, 0x0C, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, - 0x00, 0x02, 0x07, 0xFC, 0x18, 0x0C, 0x20, 0x04, 0x40, 0x04, 0x80, 0x04, - 0x80, 0x08, 0x80, 0x38, 0xC0, 0xE8, 0x3F, 0x0F, 0x0F, 0x00, 0x00, 0x20, - 0x00, 0x04, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x04, 0x00, 0x00, 0x87, - 0xC0, 0x13, 0x0C, 0x06, 0x80, 0x40, 0xE0, 0x0C, 0x18, 0x00, 0x82, 0x00, - 0x10, 0xC0, 0x02, 0x10, 0x00, 0x42, 0x00, 0x08, 0x40, 0x02, 0x08, 0x00, - 0x43, 0x80, 0x10, 0x70, 0x04, 0x09, 0x83, 0x0F, 0x1F, 0x80, 0x01, 0xFC, - 0x83, 0x03, 0xC6, 0x00, 0xE4, 0x00, 0x22, 0x00, 0x12, 0x00, 0x01, 0x00, - 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x20, 0x00, 0x18, 0x00, 0x64, - 0x00, 0x61, 0x81, 0xC0, 0x7F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x30, 0x00, - 0x0C, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x60, 0x3F, 0x18, 0x10, 0x64, - 0x18, 0x0D, 0x08, 0x01, 0xC2, 0x00, 0x71, 0x00, 0x0C, 0x80, 0x02, 0x20, - 0x00, 0x88, 0x00, 0x62, 0x00, 0x18, 0x80, 0x0E, 0x20, 0x03, 0x04, 0x03, - 0x40, 0xC1, 0xB0, 0x1F, 0x8F, 0x00, 0x01, 0xF0, 0x0E, 0x0C, 0x18, 0x06, - 0x30, 0x02, 0x60, 0x01, 0x40, 0x01, 0xC0, 0x01, 0xFF, 0xFF, 0x80, 0x00, - 0x80, 0x00, 0x80, 0x00, 0x40, 0x00, 0x60, 0x06, 0x30, 0x1C, 0x0F, 0xE0, - 0x00, 0x1F, 0xE0, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x40, 0x00, 0x08, 0x00, - 0x02, 0x00, 0x07, 0xFF, 0xC0, 0x08, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, - 0x08, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, 0x00, 0x80, 0x00, - 0x20, 0x00, 0x04, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x04, 0x00, 0x0F, - 0xFF, 0x00, 0x03, 0xE3, 0xE1, 0x83, 0x60, 0x40, 0x38, 0x10, 0x03, 0x04, - 0x00, 0x60, 0x80, 0x0C, 0x20, 0x01, 0x84, 0x00, 0x20, 0x80, 0x04, 0x10, - 0x01, 0x82, 0x00, 0x30, 0x60, 0x0C, 0x04, 0x02, 0x80, 0x61, 0x90, 0x07, - 0xC6, 0x00, 0x00, 0xC0, 0x00, 0x10, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, - 0x30, 0x00, 0x0C, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x40, 0x00, - 0x10, 0x00, 0x08, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x23, 0xE0, 0x0B, - 0x0C, 0x05, 0x00, 0x81, 0x80, 0x20, 0x40, 0x08, 0x10, 0x02, 0x08, 0x00, - 0x82, 0x00, 0x60, 0x80, 0x18, 0x20, 0x06, 0x10, 0x01, 0x84, 0x00, 0x61, - 0x00, 0x30, 0x40, 0x0C, 0xFC, 0x1F, 0xC0, 0x00, 0x30, 0x00, 0x60, 0x00, - 0xC0, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x20, - 0x00, 0x40, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x40, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x08, 0x00, 0x10, 0x1F, 0xFF, - 0x80, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x07, 0xFE, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, - 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x20, 0x00, - 0x40, 0x00, 0x80, 0x01, 0x00, 0x06, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, - 0x00, 0x80, 0x03, 0x00, 0x0C, 0x0F, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x60, - 0x00, 0x10, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0xC0, 0x00, 0x30, 0xFC, - 0x08, 0x18, 0x02, 0x0C, 0x00, 0x8C, 0x00, 0x66, 0x00, 0x1B, 0x00, 0x05, - 0x80, 0x01, 0xB0, 0x00, 0x46, 0x00, 0x31, 0xC0, 0x0C, 0x30, 0x02, 0x06, - 0x00, 0x80, 0xC0, 0x60, 0x30, 0xF8, 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x20, - 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x20, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x20, - 0x00, 0x40, 0x00, 0x80, 0x01, 0x00, 0x04, 0x00, 0x08, 0x0F, 0xFF, 0xC0, - 0x1C, 0xF1, 0xE0, 0xF1, 0xE3, 0x0E, 0x1C, 0x10, 0xC1, 0x81, 0x08, 0x10, - 0x30, 0x81, 0x03, 0x18, 0x10, 0x21, 0x83, 0x02, 0x10, 0x30, 0x21, 0x02, - 0x06, 0x10, 0x20, 0x63, 0x02, 0x04, 0x30, 0x60, 0x42, 0x06, 0x04, 0xF8, - 0x70, 0xF0, 0x0E, 0x3E, 0x01, 0x60, 0x81, 0xC0, 0x20, 0xC0, 0x10, 0x40, - 0x08, 0x20, 0x04, 0x30, 0x02, 0x10, 0x02, 0x08, 0x01, 0x04, 0x00, 0x82, - 0x00, 0x42, 0x00, 0x21, 0x00, 0x20, 0x80, 0x13, 0xF0, 0x3E, 0x01, 0xF0, - 0x06, 0x0C, 0x18, 0x06, 0x20, 0x03, 0x60, 0x01, 0x40, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x02, 0x80, 0x06, 0xC0, 0x04, 0x40, 0x18, - 0x30, 0x60, 0x1F, 0x80, 0x0F, 0x1F, 0x80, 0x16, 0x0C, 0x01, 0xC0, 0x20, - 0x30, 0x03, 0x03, 0x00, 0x10, 0x20, 0x01, 0x02, 0x00, 0x10, 0x40, 0x01, - 0x04, 0x00, 0x10, 0x40, 0x02, 0x06, 0x00, 0x60, 0x60, 0x04, 0x0B, 0x00, - 0x80, 0x98, 0x30, 0x08, 0xFC, 0x00, 0x80, 0x00, 0x08, 0x00, 0x01, 0x00, - 0x00, 0x10, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x0F, 0xF0, 0x00, 0x03, - 0xF1, 0xE1, 0x83, 0x20, 0x40, 0x34, 0x10, 0x03, 0x84, 0x00, 0x30, 0x80, - 0x04, 0x20, 0x00, 0x84, 0x00, 0x10, 0x80, 0x06, 0x10, 0x00, 0xC2, 0x00, - 0x30, 0x60, 0x0E, 0x04, 0x03, 0x40, 0x60, 0xC8, 0x07, 0xE2, 0x00, 0x00, - 0x40, 0x00, 0x08, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, 0x08, 0x00, 0x01, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0x87, 0xC0, 0x23, 0x08, 0x04, 0xC0, 0x00, - 0xE0, 0x00, 0x18, 0x00, 0x02, 0x00, 0x00, 0x80, 0x00, 0x10, 0x00, 0x02, - 0x00, 0x00, 0x40, 0x00, 0x10, 0x00, 0x02, 0x00, 0x00, 0x40, 0x00, 0x08, - 0x00, 0x3F, 0xFE, 0x00, 0x01, 0xFA, 0x0C, 0x1C, 0x20, 0x08, 0x80, 0x11, - 0x00, 0x03, 0x00, 0x03, 0xF8, 0x00, 0x7C, 0x00, 0x0C, 0x00, 0x09, 0x00, - 0x16, 0x00, 0x2C, 0x00, 0x9E, 0x06, 0x27, 0xF0, 0x00, 0x08, 0x00, 0x40, - 0x02, 0x00, 0x10, 0x00, 0x80, 0x7F, 0xFC, 0x40, 0x02, 0x00, 0x10, 0x00, - 0x80, 0x08, 0x00, 0x40, 0x02, 0x00, 0x10, 0x01, 0x00, 0x08, 0x00, 0x40, - 0x02, 0x00, 0xD8, 0x1C, 0x3F, 0x00, 0xF0, 0x1E, 0x20, 0x04, 0x80, 0x09, - 0x00, 0x12, 0x00, 0x24, 0x00, 0xC8, 0x01, 0x20, 0x02, 0x40, 0x04, 0x80, - 0x09, 0x00, 0x12, 0x00, 0x64, 0x03, 0x8C, 0x1D, 0x0F, 0xC3, 0x80, 0xFE, - 0x0F, 0xE6, 0x00, 0x20, 0x40, 0x08, 0x08, 0x03, 0x01, 0x80, 0x40, 0x30, - 0x18, 0x06, 0x02, 0x00, 0x40, 0x80, 0x08, 0x30, 0x01, 0x84, 0x00, 0x31, - 0x80, 0x02, 0x20, 0x00, 0x48, 0x00, 0x09, 0x00, 0x01, 0xC0, 0x00, 0xF8, - 0x0F, 0xA0, 0x01, 0x90, 0x00, 0x88, 0x40, 0xC4, 0x30, 0x42, 0x18, 0x61, - 0x1A, 0x20, 0x8D, 0x10, 0x4C, 0x98, 0x26, 0x48, 0x16, 0x2C, 0x0B, 0x14, - 0x07, 0x0A, 0x03, 0x07, 0x01, 0x81, 0x00, 0x0F, 0x83, 0xE0, 0xC0, 0x18, - 0x0C, 0x0C, 0x01, 0x83, 0x00, 0x18, 0xC0, 0x01, 0xB0, 0x00, 0x1C, 0x00, - 0x03, 0x00, 0x00, 0xF0, 0x00, 0x63, 0x00, 0x18, 0x30, 0x06, 0x06, 0x01, - 0x80, 0x60, 0x60, 0x06, 0x3F, 0x07, 0xE0, 0x0F, 0xC0, 0xF8, 0x30, 0x01, - 0x00, 0x80, 0x18, 0x04, 0x00, 0x80, 0x30, 0x0C, 0x01, 0x80, 0xC0, 0x04, - 0x04, 0x00, 0x30, 0x60, 0x01, 0x86, 0x00, 0x04, 0x20, 0x00, 0x23, 0x00, - 0x01, 0xB0, 0x00, 0x0D, 0x00, 0x00, 0x38, 0x00, 0x01, 0x80, 0x00, 0x08, - 0x00, 0x00, 0xC0, 0x00, 0x04, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, - 0x20, 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xFF, 0x10, 0x06, 0x10, 0x0C, 0x10, - 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, - 0x00, 0x0C, 0x00, 0x18, 0x04, 0x30, 0x0C, 0x60, 0x0C, 0xFF, 0xF8, 0x00, - 0xE0, 0x20, 0x08, 0x01, 0x00, 0x20, 0x04, 0x01, 0x00, 0x20, 0x04, 0x00, - 0x80, 0x20, 0x08, 0x0E, 0x00, 0x60, 0x04, 0x00, 0x80, 0x10, 0x02, 0x00, - 0x40, 0x08, 0x02, 0x00, 0x40, 0x08, 0x01, 0x00, 0x18, 0x00, 0x00, 0x10, - 0xC3, 0x08, 0x20, 0x86, 0x18, 0x41, 0x04, 0x30, 0xC2, 0x08, 0x21, 0x86, - 0x10, 0x43, 0x0C, 0x20, 0x06, 0x00, 0x40, 0x10, 0x04, 0x01, 0x00, 0x40, - 0x10, 0x04, 0x02, 0x00, 0x80, 0x20, 0x0C, 0x01, 0xC0, 0xC0, 0x40, 0x10, - 0x04, 0x03, 0x00, 0x80, 0x20, 0x08, 0x02, 0x01, 0x00, 0xC0, 0xE0, 0x00, - 0x1E, 0x02, 0x66, 0x0D, 0x86, 0x16, 0x06, 0x48, 0x07, 0x00}; - -const GFXglyph FreeMonoOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 21, 0, 1}, // 0x20 ' ' - {0, 7, 22, 21, 9, -21}, // 0x21 '!' - {20, 13, 10, 21, 7, -20}, // 0x22 '"' - {37, 15, 24, 21, 5, -21}, // 0x23 '#' - {82, 16, 26, 21, 4, -22}, // 0x24 '$' - {134, 16, 21, 21, 5, -20}, // 0x25 '%' - {176, 13, 18, 21, 5, -17}, // 0x26 '&' - {206, 5, 10, 21, 12, -20}, // 0x27 ''' - {213, 8, 25, 21, 12, -20}, // 0x28 '(' - {238, 8, 25, 21, 5, -20}, // 0x29 ')' - {263, 14, 11, 21, 7, -19}, // 0x2A '*' - {283, 15, 17, 21, 5, -17}, // 0x2B '+' - {315, 9, 10, 21, 4, -4}, // 0x2C ',' - {327, 16, 1, 21, 5, -9}, // 0x2D '-' - {329, 5, 5, 21, 8, -4}, // 0x2E '.' - {333, 19, 26, 21, 3, -22}, // 0x2F '/' - {395, 14, 21, 21, 5, -20}, // 0x30 '0' - {432, 13, 21, 21, 4, -20}, // 0x31 '1' - {467, 17, 21, 21, 3, -20}, // 0x32 '2' - {512, 16, 21, 21, 3, -20}, // 0x33 '3' - {554, 14, 21, 21, 5, -20}, // 0x34 '4' - {591, 17, 21, 21, 4, -20}, // 0x35 '5' - {636, 16, 21, 21, 6, -20}, // 0x36 '6' - {678, 13, 21, 21, 8, -20}, // 0x37 '7' - {713, 15, 21, 21, 5, -20}, // 0x38 '8' - {753, 15, 21, 21, 5, -20}, // 0x39 '9' - {793, 7, 15, 21, 8, -14}, // 0x3A ':' - {807, 11, 20, 21, 4, -14}, // 0x3B ';' - {835, 17, 16, 21, 5, -17}, // 0x3C '<' - {869, 19, 6, 21, 3, -12}, // 0x3D '=' - {884, 18, 16, 21, 3, -17}, // 0x3E '>' - {920, 12, 20, 21, 8, -19}, // 0x3F '?' - {950, 15, 23, 21, 5, -20}, // 0x40 '@' - {994, 21, 20, 21, 0, -19}, // 0x41 'A' - {1047, 18, 20, 21, 2, -19}, // 0x42 'B' - {1092, 18, 20, 21, 4, -19}, // 0x43 'C' - {1137, 18, 20, 21, 2, -19}, // 0x44 'D' - {1182, 20, 20, 21, 2, -19}, // 0x45 'E' - {1232, 20, 20, 21, 2, -19}, // 0x46 'F' - {1282, 18, 20, 21, 4, -19}, // 0x47 'G' - {1327, 21, 20, 21, 2, -19}, // 0x48 'H' - {1380, 17, 20, 21, 4, -19}, // 0x49 'I' - {1423, 20, 20, 21, 4, -19}, // 0x4A 'J' - {1473, 21, 20, 21, 2, -19}, // 0x4B 'K' - {1526, 18, 20, 21, 2, -19}, // 0x4C 'L' - {1571, 24, 20, 21, 1, -19}, // 0x4D 'M' - {1631, 22, 20, 21, 2, -19}, // 0x4E 'N' - {1686, 17, 20, 21, 4, -19}, // 0x4F 'O' - {1729, 18, 20, 21, 2, -19}, // 0x50 'P' - {1774, 17, 24, 21, 4, -19}, // 0x51 'Q' - {1825, 18, 20, 21, 2, -19}, // 0x52 'R' - {1870, 18, 20, 21, 3, -19}, // 0x53 'S' - {1915, 17, 20, 21, 5, -19}, // 0x54 'T' - {1958, 18, 20, 21, 5, -19}, // 0x55 'U' - {2003, 21, 20, 21, 4, -19}, // 0x56 'V' - {2056, 20, 20, 21, 4, -19}, // 0x57 'W' - {2106, 21, 20, 21, 2, -19}, // 0x58 'X' - {2159, 18, 20, 21, 5, -19}, // 0x59 'Y' - {2204, 17, 20, 21, 4, -19}, // 0x5A 'Z' - {2247, 11, 25, 21, 9, -20}, // 0x5B '[' - {2282, 8, 27, 21, 9, -22}, // 0x5C '\' - {2309, 11, 25, 21, 5, -20}, // 0x5D ']' - {2344, 13, 9, 21, 7, -20}, // 0x5E '^' - {2359, 21, 1, 21, -1, 4}, // 0x5F '_' - {2362, 5, 5, 21, 9, -21}, // 0x60 '`' - {2366, 16, 15, 21, 3, -14}, // 0x61 'a' - {2396, 19, 21, 21, 1, -20}, // 0x62 'b' - {2446, 17, 15, 21, 4, -14}, // 0x63 'c' - {2478, 18, 21, 21, 4, -20}, // 0x64 'd' - {2526, 16, 15, 21, 4, -14}, // 0x65 'e' - {2556, 19, 21, 21, 4, -20}, // 0x66 'f' - {2606, 19, 22, 21, 4, -14}, // 0x67 'g' - {2659, 18, 21, 21, 2, -20}, // 0x68 'h' - {2707, 15, 22, 21, 3, -21}, // 0x69 'i' - {2749, 15, 29, 21, 3, -21}, // 0x6A 'j' - {2804, 18, 21, 21, 2, -20}, // 0x6B 'k' - {2852, 15, 21, 21, 3, -20}, // 0x6C 'l' - {2892, 20, 15, 21, 1, -14}, // 0x6D 'm' - {2930, 17, 15, 21, 2, -14}, // 0x6E 'n' - {2962, 16, 15, 21, 4, -14}, // 0x6F 'o' - {2992, 20, 22, 21, 0, -14}, // 0x70 'p' - {3047, 19, 22, 21, 4, -14}, // 0x71 'q' - {3100, 19, 15, 21, 3, -14}, // 0x72 'r' - {3136, 15, 15, 21, 4, -14}, // 0x73 's' - {3165, 13, 20, 21, 5, -19}, // 0x74 't' - {3198, 15, 15, 21, 4, -14}, // 0x75 'u' - {3227, 19, 15, 21, 4, -14}, // 0x76 'v' - {3263, 17, 15, 21, 5, -14}, // 0x77 'w' - {3295, 19, 15, 21, 2, -14}, // 0x78 'x' - {3331, 21, 22, 21, 1, -14}, // 0x79 'y' - {3389, 16, 15, 21, 4, -14}, // 0x7A 'z' - {3419, 11, 25, 21, 8, -20}, // 0x7B '{' - {3454, 6, 24, 21, 9, -19}, // 0x7C '|' - {3472, 10, 25, 21, 6, -20}, // 0x7D '}' - {3504, 15, 5, 21, 5, -11}}; // 0x7E '~' - -const GFXfont FreeMonoOblique18pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique18pt7bBitmaps, - (GFXglyph *)FreeMonoOblique18pt7bGlyphs, 0x20, 0x7E, 35}; - -// Approx. 4186 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h deleted file mode 100644 index 28bbf9e..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique24pt7b.h +++ /dev/null @@ -1,645 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xC0, 0xF0, 0x3C, 0x0E, 0x03, 0x81, 0xE0, 0x78, 0x1C, 0x07, 0x01, - 0xC0, 0xE0, 0x38, 0x0E, 0x03, 0x00, 0xC0, 0x70, 0x1C, 0x06, 0x01, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x0F, 0x83, 0xE0, 0xF8, - 0x1C, 0x00, 0x7E, 0x3F, 0x7E, 0x3F, 0x7C, 0x3E, 0x7C, 0x3E, 0x7C, 0x3E, - 0x78, 0x3C, 0xF8, 0x7C, 0xF0, 0x78, 0xF0, 0x78, 0xF0, 0x78, 0xE0, 0x70, - 0xE0, 0x70, 0xE0, 0x70, 0xC0, 0x60, 0x00, 0x18, 0x30, 0x00, 0x61, 0x80, - 0x01, 0x86, 0x00, 0x04, 0x18, 0x00, 0x30, 0xC0, 0x00, 0xC3, 0x00, 0x03, - 0x0C, 0x00, 0x18, 0x30, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, - 0x07, 0xFF, 0xFF, 0x1F, 0xFF, 0xFC, 0x03, 0x0C, 0x00, 0x18, 0x30, 0x00, - 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, 0x00, 0x30, 0xC0, 0x1F, 0xFF, - 0xF8, 0x7F, 0xFF, 0xE0, 0x18, 0x30, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, - 0x06, 0x18, 0x00, 0x30, 0x40, 0x00, 0xC3, 0x00, 0x03, 0x0C, 0x00, 0x18, - 0x30, 0x00, 0x61, 0x80, 0x01, 0x86, 0x00, 0x06, 0x18, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x80, 0x00, 0x3F, 0x00, 0x07, 0xFD, 0x80, - 0x70, 0x7C, 0x06, 0x00, 0xE0, 0x60, 0x02, 0x07, 0x00, 0x10, 0x30, 0x00, - 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x70, 0x00, 0x01, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x18, - 0x00, 0x00, 0xC2, 0x00, 0x06, 0x30, 0x00, 0x61, 0x80, 0x03, 0x1E, 0x00, - 0x30, 0xFC, 0x07, 0x06, 0x7F, 0xF0, 0x00, 0xFE, 0x00, 0x01, 0x80, 0x00, - 0x0C, 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, - 0x00, 0x00, 0x78, 0x00, 0x07, 0xF8, 0x00, 0x38, 0x60, 0x01, 0xC0, 0xC0, - 0x06, 0x03, 0x00, 0x30, 0x0C, 0x00, 0xC0, 0x30, 0x03, 0x01, 0x80, 0x0C, - 0x0E, 0x00, 0x38, 0x70, 0x00, 0x7F, 0x81, 0xC0, 0xF8, 0x3F, 0x00, 0x07, - 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xC0, 0x00, 0x78, 0x00, 0x01, - 0x00, 0x78, 0x00, 0x07, 0xF8, 0x00, 0x38, 0x60, 0x01, 0x80, 0xC0, 0x06, - 0x03, 0x00, 0x30, 0x0C, 0x00, 0xC0, 0x30, 0x03, 0x01, 0x80, 0x0C, 0x0E, - 0x00, 0x18, 0x70, 0x00, 0x7F, 0x80, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, - 0x0F, 0xF8, 0x03, 0x8E, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x01, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x03, - 0xE0, 0x01, 0xCC, 0x0E, 0x60, 0xC3, 0xD8, 0x18, 0x63, 0x03, 0x18, 0xC0, - 0x33, 0x18, 0x06, 0xC3, 0x00, 0x70, 0x60, 0x0E, 0x0C, 0x01, 0xC0, 0xC0, - 0x78, 0x1C, 0x3B, 0xE1, 0xFE, 0x3C, 0x1F, 0x00, 0x00, 0x7E, 0xFD, 0xF3, - 0xE7, 0xCF, 0x3E, 0x78, 0xF1, 0xE3, 0x87, 0x0E, 0x18, 0x00, 0x00, 0x60, - 0x18, 0x07, 0x00, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x70, 0x0C, 0x03, 0x80, - 0x60, 0x1C, 0x03, 0x80, 0xE0, 0x1C, 0x03, 0x80, 0xF0, 0x1C, 0x03, 0x80, - 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x30, 0x02, 0x00, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x07, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x00, - 0xE0, 0x3C, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x38, 0x0E, 0x01, - 0x80, 0x70, 0x0C, 0x03, 0x00, 0xC0, 0x10, 0x00, 0x00, 0x20, 0x00, 0x18, - 0x00, 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x30, 0x0E, 0x0C, 0x0B, - 0xF3, 0x3E, 0x3F, 0xFE, 0x01, 0xFC, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x0E, - 0x60, 0x07, 0x18, 0x01, 0x83, 0x00, 0xC0, 0xC0, 0x60, 0x30, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x30, 0x00, 0x01, - 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, 0x80, - 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, - 0x03, 0xF0, 0x7E, 0x07, 0xC0, 0xF8, 0x0F, 0x81, 0xF0, 0x1E, 0x03, 0xE0, - 0x3C, 0x07, 0x80, 0x70, 0x0F, 0x00, 0xE0, 0x0C, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xE0, 0x3C, 0xFF, 0xFF, 0xFF, 0xCF, 0x00, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x03, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x03, 0x00, - 0x00, 0x07, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x1C, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x70, 0x00, 0x00, 0x60, 0x00, - 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0x03, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x06, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, - 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0x60, 0x00, 0x00, 0xE0, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x0F, 0xF8, 0x01, - 0xC1, 0xC0, 0x38, 0x0E, 0x07, 0x00, 0x60, 0xE0, 0x03, 0x0C, 0x00, 0x31, - 0x80, 0x03, 0x18, 0x00, 0x33, 0x00, 0x03, 0x30, 0x00, 0x33, 0x00, 0x03, - 0x20, 0x00, 0x26, 0x00, 0x06, 0x60, 0x00, 0x66, 0x00, 0x06, 0x40, 0x00, - 0x4C, 0x00, 0x0C, 0xC0, 0x00, 0xCC, 0x00, 0x0C, 0xC0, 0x01, 0x8C, 0x00, - 0x18, 0xC0, 0x01, 0x8C, 0x00, 0x30, 0xC0, 0x07, 0x06, 0x00, 0xE0, 0x60, - 0x1C, 0x03, 0x87, 0x80, 0x3F, 0xF0, 0x00, 0xFC, 0x00, 0x00, 0x0E, 0x00, - 0x0F, 0x00, 0x0F, 0x80, 0x0E, 0xC0, 0x1C, 0xC0, 0x1C, 0x60, 0x1C, 0x30, - 0x08, 0x18, 0x00, 0x1C, 0x00, 0x0C, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, - 0x80, 0x01, 0xC0, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, - 0x18, 0x00, 0x0C, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x01, 0x80, - 0x00, 0xC0, 0x00, 0x60, 0x00, 0x30, 0x1F, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, - 0x07, 0xE0, 0x00, 0x3F, 0xE0, 0x01, 0xE0, 0xE0, 0x07, 0x00, 0xE0, 0x1C, - 0x00, 0xE0, 0x30, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x00, 0x03, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, - 0x70, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xE0, - 0x00, 0xC3, 0x80, 0x01, 0x87, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, 0x00, 0x00, - 0x0F, 0xC0, 0x01, 0xFF, 0xC0, 0x1E, 0x07, 0x80, 0xE0, 0x06, 0x03, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, - 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xE0, 0x00, 0x01, - 0x80, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, - 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xE3, 0x00, 0x07, 0x0E, 0x00, - 0x38, 0x1E, 0x03, 0xC0, 0x3F, 0xFC, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0xF8, 0x00, 0x1B, 0x00, 0x06, 0x60, 0x01, 0x8C, 0x00, 0x63, - 0x00, 0x18, 0x60, 0x07, 0x0C, 0x00, 0xC1, 0x80, 0x30, 0x30, 0x0C, 0x0C, - 0x03, 0x01, 0x80, 0xC0, 0x30, 0x18, 0x06, 0x06, 0x00, 0xC1, 0x80, 0x30, - 0x60, 0x06, 0x18, 0x00, 0xC3, 0xFF, 0xFE, 0x7F, 0xFF, 0xC0, 0x00, 0xC0, - 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x18, 0x00, 0x03, 0x00, - 0x0F, 0xFC, 0x01, 0xFF, 0x80, 0x01, 0xFF, 0xF8, 0x0F, 0xFF, 0xC0, 0x40, - 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, - 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0xBF, 0xC0, 0x0F, 0xFF, - 0x80, 0xF8, 0x1E, 0x02, 0x00, 0x30, 0x00, 0x01, 0xC0, 0x00, 0x06, 0x00, - 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x00, 0x06, - 0x00, 0x00, 0x30, 0x00, 0x03, 0x80, 0x00, 0x18, 0xC0, 0x01, 0x87, 0x00, - 0x38, 0x1E, 0x07, 0x80, 0x7F, 0xF8, 0x00, 0x7E, 0x00, 0x00, 0x00, 0x03, - 0xF0, 0x00, 0xFF, 0xC0, 0x1F, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x01, - 0x80, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x00, - 0x0E, 0x00, 0x00, 0x60, 0x00, 0x07, 0x0F, 0x80, 0x31, 0xFF, 0x01, 0x9C, - 0x3C, 0x0D, 0x80, 0x60, 0xD8, 0x03, 0x87, 0x80, 0x0C, 0x38, 0x00, 0x61, - 0xC0, 0x03, 0x0C, 0x00, 0x18, 0x60, 0x00, 0xC3, 0x00, 0x0C, 0x18, 0x00, - 0x60, 0xE0, 0x06, 0x03, 0x00, 0x30, 0x1C, 0x07, 0x00, 0x70, 0x70, 0x01, - 0xFF, 0x00, 0x07, 0xE0, 0x00, 0x7F, 0xFF, 0xDF, 0xFF, 0xFC, 0x00, 0x0F, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x03, 0x00, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x18, 0x00, 0x0C, - 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, 0x00, 0x3F, 0x00, 0x0F, - 0xFC, 0x01, 0xC1, 0xE0, 0x70, 0x06, 0x06, 0x00, 0x30, 0xC0, 0x03, 0x1C, - 0x00, 0x31, 0x80, 0x03, 0x18, 0x00, 0x31, 0x80, 0x06, 0x18, 0x00, 0xE0, - 0xC0, 0x1C, 0x0F, 0x07, 0x80, 0x3F, 0xE0, 0x03, 0xFE, 0x00, 0xE0, 0x70, - 0x18, 0x03, 0x83, 0x00, 0x1C, 0x60, 0x00, 0xC6, 0x00, 0x0C, 0xC0, 0x00, - 0xCC, 0x00, 0x0C, 0xC0, 0x00, 0xCC, 0x00, 0x18, 0xC0, 0x03, 0x8E, 0x00, - 0x70, 0x60, 0x0E, 0x07, 0x83, 0xC0, 0x3F, 0xF0, 0x00, 0xFC, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0xFF, 0x80, 0x0F, 0x07, 0x00, 0x70, 0x0E, 0x03, 0x80, - 0x18, 0x0C, 0x00, 0x70, 0x60, 0x00, 0xC1, 0x80, 0x03, 0x0C, 0x00, 0x0C, - 0x30, 0x00, 0x30, 0xC0, 0x01, 0xC3, 0x00, 0x0F, 0x0C, 0x00, 0x6C, 0x38, - 0x03, 0xF0, 0x60, 0x1D, 0x81, 0xE1, 0xE6, 0x03, 0xFE, 0x18, 0x03, 0xE0, - 0xC0, 0x00, 0x03, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x03, - 0xC0, 0x00, 0x7C, 0x00, 0xFF, 0xC0, 0x01, 0xF8, 0x00, 0x00, 0x07, 0x83, - 0xF1, 0xFC, 0x7F, 0x1F, 0x83, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x7E, 0x3F, 0x8F, 0xE3, 0xF0, 0x78, - 0x00, 0x00, 0x3C, 0x00, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xC0, 0x0F, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x7E, 0x00, 0xFC, 0x03, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x3E, - 0x00, 0xF8, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x3C, 0x00, 0x70, 0x01, - 0xC0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0C, 0x00, 0x3F, 0xFF, 0xFF, 0x9F, - 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, - 0x00, 0x06, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, - 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x70, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x07, 0xF0, 0x3F, 0xFC, 0x78, - 0x1E, 0xC0, 0x07, 0xC0, 0x03, 0xC0, 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, - 0x06, 0x00, 0x06, 0x00, 0x1C, 0x00, 0x38, 0x00, 0xE0, 0x07, 0xC0, 0x07, - 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x7E, 0x00, 0xFE, 0x00, 0xFE, - 0x00, 0x7C, 0x00, 0x00, 0x3F, 0x00, 0x1F, 0xF0, 0x07, 0x07, 0x01, 0xC0, - 0x70, 0x60, 0x06, 0x1C, 0x00, 0xC3, 0x00, 0x18, 0xC0, 0x03, 0x18, 0x00, - 0x66, 0x00, 0xFC, 0xC0, 0x7F, 0x98, 0x1C, 0x66, 0x06, 0x0C, 0xC1, 0x81, - 0x98, 0x30, 0x33, 0x0C, 0x0E, 0x61, 0x81, 0x98, 0x30, 0x33, 0x06, 0x06, - 0x60, 0xF0, 0xCC, 0x0F, 0xF9, 0x80, 0x7F, 0x30, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x03, 0x80, 0x00, 0x30, 0x00, 0x07, 0x00, 0x00, - 0x70, 0x18, 0x0F, 0xFE, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x0F, - 0xFE, 0x00, 0x00, 0x06, 0xC0, 0x00, 0x00, 0xCC, 0x00, 0x00, 0x31, 0x80, - 0x00, 0x06, 0x30, 0x00, 0x01, 0x86, 0x00, 0x00, 0x60, 0xC0, 0x00, 0x0C, - 0x1C, 0x00, 0x03, 0x01, 0x80, 0x00, 0x40, 0x30, 0x00, 0x18, 0x06, 0x00, - 0x06, 0x00, 0xC0, 0x00, 0xC0, 0x18, 0x00, 0x30, 0x01, 0x80, 0x07, 0xFF, - 0xF0, 0x01, 0xFF, 0xFE, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x18, 0x03, - 0x00, 0x03, 0x00, 0x40, 0x00, 0x30, 0x18, 0x00, 0x06, 0x06, 0x00, 0x00, - 0xC0, 0xC0, 0x00, 0x18, 0xFF, 0x80, 0x7F, 0xFF, 0xF0, 0x0F, 0xFC, 0x03, - 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0xC0, 0x06, 0x00, 0x38, 0x01, 0x80, 0x07, - 0x00, 0xC0, 0x00, 0xC0, 0x30, 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x03, 0x00, - 0x03, 0x00, 0xC0, 0x01, 0x80, 0x60, 0x00, 0xC0, 0x18, 0x01, 0xE0, 0x07, - 0xFF, 0xE0, 0x01, 0xFF, 0xFC, 0x00, 0xE0, 0x03, 0x80, 0x30, 0x00, 0x70, - 0x0C, 0x00, 0x0E, 0x03, 0x00, 0x01, 0x80, 0xC0, 0x00, 0x60, 0x60, 0x00, - 0x18, 0x18, 0x00, 0x06, 0x06, 0x00, 0x03, 0x01, 0x80, 0x01, 0xC0, 0x60, - 0x00, 0xE0, 0x30, 0x00, 0x70, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0xFC, 0xC0, 0x3C, 0x0F, 0x60, 0x78, 0x01, - 0xF0, 0x70, 0x00, 0x70, 0x70, 0x00, 0x18, 0x30, 0x00, 0x0C, 0x30, 0x00, - 0x06, 0x38, 0x00, 0x02, 0x18, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x0C, 0x00, - 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, 0x00, 0x30, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x60, - 0x60, 0x00, 0x60, 0x38, 0x00, 0xE0, 0x0F, 0x01, 0xE0, 0x03, 0xFF, 0xC0, - 0x00, 0x3F, 0x00, 0x00, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0x00, 0x0C, - 0x00, 0xF0, 0x03, 0x00, 0x1C, 0x01, 0xC0, 0x03, 0x80, 0x60, 0x00, 0x60, - 0x18, 0x00, 0x1C, 0x06, 0x00, 0x03, 0x01, 0x80, 0x00, 0xC0, 0xC0, 0x00, - 0x30, 0x30, 0x00, 0x0C, 0x0C, 0x00, 0x03, 0x03, 0x00, 0x00, 0xC0, 0xC0, - 0x00, 0x60, 0x60, 0x00, 0x18, 0x18, 0x00, 0x06, 0x06, 0x00, 0x03, 0x01, - 0x80, 0x00, 0xC0, 0xE0, 0x00, 0x70, 0x30, 0x00, 0x18, 0x0C, 0x00, 0x0C, - 0x03, 0x00, 0x06, 0x00, 0xC0, 0x07, 0x00, 0x60, 0x07, 0x80, 0xFF, 0xFF, - 0xC0, 0x3F, 0xFF, 0x80, 0x00, 0x03, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFC, - 0x01, 0x80, 0x01, 0x80, 0x30, 0x00, 0x60, 0x0C, 0x00, 0x0C, 0x01, 0x80, - 0x01, 0x80, 0x30, 0x00, 0x30, 0x06, 0x00, 0x00, 0x00, 0xC0, 0xC0, 0x00, - 0x30, 0x18, 0x00, 0x06, 0x03, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x1F, 0xF8, - 0x00, 0x07, 0x03, 0x00, 0x00, 0xC0, 0x60, 0x00, 0x18, 0x0C, 0x00, 0x03, - 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x18, 0x00, 0x0C, 0x03, 0x00, 0x01, - 0x80, 0x60, 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x01, 0x80, 0x01, 0x80, 0x60, - 0x00, 0x30, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xFF, - 0xF0, 0x7F, 0xFF, 0xFF, 0x00, 0x60, 0x00, 0x30, 0x06, 0x00, 0x06, 0x00, - 0xC0, 0x00, 0x60, 0x0C, 0x00, 0x06, 0x00, 0xC0, 0x00, 0x60, 0x0C, 0x00, - 0x00, 0x00, 0xC0, 0xC0, 0x00, 0x18, 0x0C, 0x00, 0x01, 0x80, 0xC0, 0x00, - 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x38, 0x18, 0x00, 0x03, 0x01, - 0x80, 0x00, 0x30, 0x18, 0x00, 0x03, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xFF, 0xFC, 0x00, - 0x0F, 0xFF, 0xC0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0xFC, 0xC0, 0x3C, - 0x0F, 0xE0, 0x78, 0x01, 0xF0, 0x70, 0x00, 0x30, 0x70, 0x00, 0x18, 0x70, - 0x00, 0x0C, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, 0x18, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, - 0x80, 0x00, 0x01, 0x80, 0x1F, 0xFE, 0xC0, 0x0F, 0xFF, 0x60, 0x00, 0x06, - 0x30, 0x00, 0x06, 0x18, 0x00, 0x03, 0x0C, 0x00, 0x01, 0x87, 0x00, 0x00, - 0xC1, 0x80, 0x00, 0xE0, 0xE0, 0x00, 0x60, 0x38, 0x00, 0x70, 0x0F, 0x00, - 0xF8, 0x03, 0xFF, 0xF0, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xFC, 0x1F, 0xE0, - 0x7F, 0x83, 0xFC, 0x03, 0x00, 0x06, 0x00, 0x60, 0x01, 0x80, 0x1C, 0x00, - 0x30, 0x03, 0x00, 0x06, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x38, 0x01, - 0x80, 0x06, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x18, 0x01, 0xFF, 0xFF, - 0x00, 0x3F, 0xFF, 0xC0, 0x06, 0x00, 0x18, 0x01, 0x80, 0x03, 0x00, 0x30, - 0x00, 0x60, 0x06, 0x00, 0x0C, 0x00, 0xC0, 0x03, 0x00, 0x38, 0x00, 0x60, - 0x06, 0x00, 0x0C, 0x00, 0xC0, 0x01, 0x80, 0x18, 0x00, 0x70, 0x03, 0x00, - 0x0C, 0x00, 0xE0, 0x01, 0x80, 0xFF, 0x83, 0xFE, 0x1F, 0xF0, 0x7F, 0xC0, - 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x70, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, - 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, - 0x80, 0x00, 0x06, 0x00, 0x00, 0x38, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, - 0x00, 0x0C, 0x00, 0x00, 0x30, 0x00, 0xFF, 0xFF, 0x83, 0xFF, 0xFE, 0x00, - 0x00, 0x0F, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0x00, 0x00, 0x0C, 0x00, 0x00, - 0x00, 0xC0, 0x00, 0x00, 0x18, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x18, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x38, 0x00, 0x00, 0x03, 0x00, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x07, - 0x00, 0x20, 0x00, 0x60, 0x06, 0x00, 0x06, 0x00, 0x60, 0x00, 0x60, 0x06, - 0x00, 0x06, 0x00, 0x60, 0x00, 0xC0, 0x0C, 0x00, 0x0C, 0x00, 0xC0, 0x00, - 0xC0, 0x0C, 0x00, 0x18, 0x00, 0xE0, 0x03, 0x00, 0x07, 0x00, 0x70, 0x00, - 0x3C, 0x1C, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x03, - 0xFF, 0x07, 0xF8, 0x3F, 0xF8, 0x3F, 0xC0, 0x18, 0x00, 0x70, 0x00, 0xC0, - 0x07, 0x00, 0x0C, 0x00, 0x60, 0x00, 0x60, 0x0E, 0x00, 0x03, 0x00, 0xE0, - 0x00, 0x18, 0x0C, 0x00, 0x00, 0xC1, 0xC0, 0x00, 0x0C, 0x1C, 0x00, 0x00, - 0x61, 0x80, 0x00, 0x03, 0x3C, 0x00, 0x00, 0x1B, 0x78, 0x00, 0x01, 0xF0, - 0xE0, 0x00, 0x0F, 0x03, 0x80, 0x00, 0x60, 0x0C, 0x00, 0x03, 0x00, 0x70, - 0x00, 0x18, 0x01, 0x80, 0x01, 0x80, 0x0C, 0x00, 0x0C, 0x00, 0x60, 0x00, - 0x60, 0x01, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x01, 0x80, - 0x03, 0x00, 0xFF, 0xE0, 0x1F, 0x87, 0xFF, 0x00, 0x7C, 0x00, 0x07, 0xFF, - 0xE0, 0x03, 0xFF, 0xF0, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x03, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x30, 0x00, 0x00, 0x18, 0x00, 0x00, 0x0C, 0x00, 0x00, - 0x06, 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, - 0x00, 0xC0, 0x03, 0x00, 0x60, 0x01, 0x80, 0x60, 0x00, 0xC0, 0x30, 0x00, - 0x60, 0x18, 0x00, 0x30, 0x0C, 0x00, 0x30, 0x0E, 0x00, 0x18, 0x06, 0x00, - 0x0C, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, 0x00, 0x07, 0xF0, 0x00, 0x3F, - 0x07, 0xF0, 0x00, 0x7F, 0x01, 0xB0, 0x00, 0xD8, 0x01, 0xB0, 0x00, 0xD8, - 0x01, 0x98, 0x01, 0x98, 0x01, 0x98, 0x03, 0x30, 0x01, 0x98, 0x03, 0x30, - 0x03, 0x18, 0x06, 0x30, 0x03, 0x1C, 0x0C, 0x30, 0x03, 0x0C, 0x0C, 0x30, - 0x03, 0x0C, 0x18, 0x60, 0x07, 0x0C, 0x30, 0x60, 0x06, 0x0C, 0x30, 0x60, - 0x06, 0x06, 0x60, 0x60, 0x06, 0x06, 0xC0, 0x60, 0x06, 0x06, 0xC0, 0xC0, - 0x0C, 0x07, 0x80, 0xC0, 0x0C, 0x03, 0x00, 0xC0, 0x0C, 0x00, 0x00, 0xC0, - 0x0C, 0x00, 0x01, 0xC0, 0x0C, 0x00, 0x01, 0x80, 0x18, 0x00, 0x01, 0x80, - 0x18, 0x00, 0x01, 0x80, 0x18, 0x00, 0x01, 0x80, 0xFF, 0x80, 0x3F, 0xE0, - 0xFF, 0x80, 0x3F, 0xE0, 0x07, 0xE0, 0x0F, 0xFC, 0x3F, 0x80, 0x3F, 0xF0, - 0x0F, 0x00, 0x06, 0x00, 0x3C, 0x00, 0x10, 0x01, 0x98, 0x00, 0xC0, 0x06, - 0x60, 0x03, 0x00, 0x19, 0xC0, 0x0C, 0x00, 0x63, 0x00, 0x30, 0x01, 0x0C, - 0x01, 0x80, 0x0C, 0x18, 0x06, 0x00, 0x30, 0x60, 0x18, 0x00, 0xC1, 0xC0, - 0x60, 0x03, 0x03, 0x01, 0x00, 0x08, 0x0C, 0x0C, 0x00, 0x60, 0x18, 0x30, - 0x01, 0x80, 0x60, 0xC0, 0x06, 0x01, 0xC3, 0x00, 0x18, 0x03, 0x18, 0x00, - 0xC0, 0x0C, 0x60, 0x03, 0x00, 0x19, 0x80, 0x0C, 0x00, 0x66, 0x00, 0x30, - 0x01, 0xD8, 0x00, 0x80, 0x03, 0xC0, 0x06, 0x00, 0x0F, 0x00, 0xFF, 0xC0, - 0x1C, 0x03, 0xFE, 0x00, 0x70, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x7F, 0xF0, - 0x00, 0xF0, 0x78, 0x03, 0x80, 0x1C, 0x07, 0x00, 0x0E, 0x0E, 0x00, 0x06, - 0x0C, 0x00, 0x06, 0x18, 0x00, 0x07, 0x38, 0x00, 0x03, 0x30, 0x00, 0x03, - 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0xC0, 0x00, 0x03, - 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x06, 0xC0, 0x00, 0x06, 0xC0, 0x00, 0x06, - 0xC0, 0x00, 0x0C, 0xC0, 0x00, 0x1C, 0xC0, 0x00, 0x18, 0x60, 0x00, 0x30, - 0x60, 0x00, 0x70, 0x70, 0x00, 0xE0, 0x38, 0x01, 0xC0, 0x1E, 0x0F, 0x00, - 0x0F, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, - 0xC0, 0x06, 0x00, 0x78, 0x01, 0x80, 0x06, 0x00, 0xC0, 0x01, 0xC0, 0x30, - 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x03, 0x00, 0x03, 0x00, 0xC0, 0x01, 0xC0, - 0x60, 0x00, 0x60, 0x18, 0x00, 0x30, 0x06, 0x00, 0x18, 0x01, 0x80, 0x3C, - 0x00, 0xFF, 0xFE, 0x00, 0x3F, 0xFC, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, 0x00, 0x18, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x60, 0x00, 0x00, 0x30, 0x00, 0x00, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x7F, - 0xF0, 0x00, 0xF0, 0x78, 0x03, 0x80, 0x1C, 0x07, 0x00, 0x0E, 0x0E, 0x00, - 0x06, 0x0C, 0x00, 0x06, 0x18, 0x00, 0x03, 0x38, 0x00, 0x03, 0x30, 0x00, - 0x03, 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0x60, 0x00, 0x03, 0xC0, 0x00, - 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x06, 0xC0, 0x00, 0x06, 0xC0, 0x00, - 0x06, 0xC0, 0x00, 0x0C, 0xC0, 0x00, 0x1C, 0xC0, 0x00, 0x18, 0x60, 0x00, - 0x30, 0x60, 0x00, 0x70, 0x30, 0x00, 0xE0, 0x38, 0x01, 0xC0, 0x0E, 0x0F, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0x1F, 0xF8, - 0x30, 0x3F, 0xFF, 0xF0, 0x78, 0x0F, 0x80, 0x07, 0xFF, 0xFC, 0x01, 0xFF, - 0xFF, 0xC0, 0x06, 0x00, 0x78, 0x01, 0x80, 0x0E, 0x00, 0xC0, 0x01, 0xC0, - 0x30, 0x00, 0x30, 0x0C, 0x00, 0x0C, 0x03, 0x00, 0x03, 0x00, 0xC0, 0x00, - 0xC0, 0x60, 0x00, 0x60, 0x18, 0x00, 0x30, 0x06, 0x00, 0x38, 0x01, 0x80, - 0x3C, 0x00, 0xFF, 0xFC, 0x00, 0x3F, 0xFC, 0x00, 0x0C, 0x07, 0x80, 0x03, - 0x00, 0x70, 0x00, 0xC0, 0x0E, 0x00, 0x60, 0x01, 0x80, 0x18, 0x00, 0x70, - 0x06, 0x00, 0x0C, 0x01, 0x80, 0x03, 0x80, 0x60, 0x00, 0x60, 0x30, 0x00, - 0x1C, 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x00, 0xF0, 0x00, 0x1F, 0xC0, 0x00, - 0x7F, 0xF3, 0x00, 0xE0, 0x3B, 0x03, 0x80, 0x0F, 0x07, 0x00, 0x0E, 0x06, - 0x00, 0x06, 0x0C, 0x00, 0x06, 0x0C, 0x00, 0x06, 0x0C, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x07, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x18, 0x20, 0x00, 0x18, 0x60, 0x00, 0x18, 0x60, - 0x00, 0x30, 0x60, 0x00, 0x70, 0xF0, 0x00, 0xE0, 0xF8, 0x01, 0xC0, 0xDC, - 0x07, 0x80, 0x8F, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0xFF, 0xFE, 0x3F, - 0xFF, 0xFE, 0x30, 0x18, 0x06, 0x60, 0x18, 0x06, 0x60, 0x18, 0x06, 0x60, - 0x38, 0x0C, 0x60, 0x30, 0x04, 0x00, 0x30, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x30, 0x00, 0x00, 0x70, 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, - 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0xFF, 0xFE, 0x00, 0xFF, - 0xFC, 0x00, 0x7F, 0xC0, 0xFF, 0xDF, 0xF0, 0x3F, 0xF1, 0x80, 0x00, 0x60, - 0x60, 0x00, 0x30, 0x18, 0x00, 0x0C, 0x06, 0x00, 0x03, 0x03, 0x80, 0x00, - 0xC0, 0xC0, 0x00, 0x30, 0x30, 0x00, 0x18, 0x0C, 0x00, 0x06, 0x03, 0x00, - 0x01, 0x81, 0xC0, 0x00, 0x60, 0x60, 0x00, 0x18, 0x18, 0x00, 0x0C, 0x06, - 0x00, 0x03, 0x01, 0x80, 0x00, 0xC0, 0xC0, 0x00, 0x30, 0x30, 0x00, 0x1C, - 0x0C, 0x00, 0x06, 0x03, 0x00, 0x01, 0x80, 0xC0, 0x00, 0xC0, 0x30, 0x00, - 0x70, 0x0E, 0x00, 0x38, 0x01, 0xC0, 0x1C, 0x00, 0x38, 0x1E, 0x00, 0x07, - 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFF, 0x80, 0x3F, 0xFF, 0xF0, 0x07, - 0xFC, 0xE0, 0x00, 0x0C, 0x0C, 0x00, 0x03, 0x01, 0x80, 0x00, 0x60, 0x30, - 0x00, 0x18, 0x06, 0x00, 0x02, 0x00, 0xC0, 0x00, 0xC0, 0x0C, 0x00, 0x30, - 0x01, 0x80, 0x06, 0x00, 0x30, 0x01, 0x80, 0x06, 0x00, 0x60, 0x00, 0xC0, - 0x0C, 0x00, 0x18, 0x03, 0x00, 0x01, 0x80, 0xC0, 0x00, 0x30, 0x18, 0x00, - 0x06, 0x06, 0x00, 0x00, 0xC0, 0xC0, 0x00, 0x18, 0x30, 0x00, 0x03, 0x8C, - 0x00, 0x00, 0x31, 0x80, 0x00, 0x06, 0x60, 0x00, 0x00, 0xD8, 0x00, 0x00, - 0x1B, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x38, 0x00, 0x00, 0xFF, 0xC0, - 0x7F, 0xFF, 0xF8, 0x0F, 0xF8, 0xC0, 0x00, 0x0C, 0x18, 0x00, 0x01, 0x83, - 0x00, 0x00, 0x30, 0x60, 0x08, 0x0C, 0x0C, 0x07, 0x01, 0x81, 0x81, 0xE0, - 0x30, 0x60, 0x2C, 0x0C, 0x0C, 0x0D, 0x81, 0x81, 0x81, 0x30, 0x30, 0x30, - 0x66, 0x0C, 0x06, 0x08, 0xC1, 0x80, 0xC3, 0x0C, 0x30, 0x18, 0x41, 0x8C, - 0x03, 0x18, 0x31, 0x80, 0x62, 0x06, 0x30, 0x0C, 0xC0, 0xCC, 0x03, 0x10, - 0x19, 0x80, 0x66, 0x03, 0x30, 0x0C, 0x80, 0x6C, 0x01, 0xB0, 0x0D, 0x80, - 0x34, 0x01, 0xB0, 0x07, 0x80, 0x3C, 0x00, 0xE0, 0x07, 0x80, 0x1C, 0x00, - 0xF0, 0x00, 0x03, 0xF8, 0x03, 0xF8, 0x1F, 0xC0, 0x3F, 0xC0, 0x30, 0x00, - 0x30, 0x01, 0xC0, 0x03, 0x00, 0x06, 0x00, 0x30, 0x00, 0x18, 0x03, 0x00, - 0x00, 0xE0, 0x30, 0x00, 0x03, 0x03, 0x00, 0x00, 0x1C, 0x30, 0x00, 0x00, - 0x63, 0x00, 0x00, 0x03, 0xB0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x30, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x36, 0x00, 0x00, 0x03, 0x38, 0x00, - 0x00, 0x30, 0xC0, 0x00, 0x03, 0x07, 0x00, 0x00, 0x30, 0x18, 0x00, 0x03, - 0x00, 0x60, 0x00, 0x30, 0x03, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, - 0x70, 0x03, 0x00, 0x01, 0x80, 0xFF, 0x80, 0xFF, 0x07, 0xFC, 0x07, 0xF8, - 0x00, 0x7F, 0x80, 0x7F, 0x7F, 0x00, 0x7F, 0x1C, 0x00, 0x18, 0x0C, 0x00, - 0x30, 0x0C, 0x00, 0x70, 0x06, 0x00, 0xE0, 0x06, 0x00, 0xC0, 0x03, 0x01, - 0x80, 0x03, 0x03, 0x00, 0x01, 0x86, 0x00, 0x01, 0x8C, 0x00, 0x00, 0xD8, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x60, 0x00, 0x00, 0xC0, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, - 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, 0x00, 0x01, 0x80, - 0x00, 0xFF, 0xFE, 0x00, 0xFF, 0xFC, 0x00, 0x03, 0xFF, 0xFE, 0x07, 0xFF, - 0xF8, 0x0C, 0x00, 0x30, 0x10, 0x00, 0xC0, 0x60, 0x03, 0x80, 0xC0, 0x0E, - 0x01, 0x80, 0x38, 0x03, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, - 0x18, 0x00, 0x00, 0x60, 0x00, 0x01, 0x80, 0x00, 0x06, 0x00, 0x60, 0x18, - 0x00, 0xC0, 0x60, 0x01, 0x81, 0x80, 0x02, 0x06, 0x00, 0x0C, 0x18, 0x00, - 0x18, 0x60, 0x00, 0x30, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0x80, 0x01, 0xFE, - 0x03, 0xFC, 0x06, 0x00, 0x08, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, - 0x80, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x40, 0x01, 0x80, - 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x10, 0x00, 0x60, 0x00, 0xC0, 0x01, - 0x80, 0x03, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0x80, - 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x20, 0x00, 0xFF, 0x01, - 0xFE, 0x00, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x60, 0x18, 0x07, 0x00, 0xC0, - 0x30, 0x0C, 0x03, 0x80, 0x60, 0x18, 0x06, 0x00, 0xC0, 0x30, 0x0C, 0x03, - 0x00, 0x60, 0x18, 0x06, 0x01, 0x80, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x18, - 0x06, 0x01, 0x80, 0x60, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x04, 0x01, 0xFE, - 0x03, 0xFC, 0x00, 0x10, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x04, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x00, 0x06, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x06, 0x00, 0x08, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x06, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x01, 0x80, 0xFF, 0x01, - 0xFE, 0x00, 0x00, 0x10, 0x00, 0x0C, 0x00, 0x07, 0x80, 0x03, 0x60, 0x01, - 0x8C, 0x00, 0xC3, 0x80, 0xE0, 0x60, 0x70, 0x1C, 0x38, 0x03, 0x1C, 0x00, - 0x6E, 0x00, 0x1F, 0x00, 0x02, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xC3, 0x86, 0x0C, 0x18, 0x70, 0xC0, 0x00, 0x3F, 0x80, 0x0F, 0xFF, 0x80, - 0x78, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x00, - 0x01, 0x80, 0x00, 0x06, 0x00, 0x00, 0x38, 0x03, 0xFC, 0xC0, 0x7F, 0xFF, - 0x07, 0xC0, 0x0C, 0x38, 0x00, 0x31, 0xC0, 0x01, 0xCE, 0x00, 0x06, 0x30, - 0x00, 0x18, 0xC0, 0x00, 0xE3, 0x00, 0x07, 0x8E, 0x00, 0x7C, 0x1C, 0x0F, - 0x3F, 0x3F, 0xF0, 0xFC, 0x7F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x30, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x00, 0xC0, 0x00, 0x00, 0x10, 0x00, 0x00, 0x06, 0x07, 0xE0, 0x00, 0xC3, - 0xFF, 0x00, 0x19, 0xC0, 0xF0, 0x03, 0x60, 0x07, 0x00, 0xD8, 0x00, 0x60, - 0x1E, 0x00, 0x0E, 0x03, 0x80, 0x00, 0xC0, 0x60, 0x00, 0x18, 0x0C, 0x00, - 0x03, 0x03, 0x00, 0x00, 0x60, 0x60, 0x00, 0x0C, 0x0C, 0x00, 0x01, 0x81, - 0x80, 0x00, 0x60, 0x70, 0x00, 0x0C, 0x0E, 0x00, 0x03, 0x01, 0xC0, 0x00, - 0x60, 0x3C, 0x00, 0x18, 0x05, 0x80, 0x06, 0x01, 0xB8, 0x01, 0x83, 0xF3, - 0xC1, 0xE0, 0x7E, 0x3F, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3F, 0x00, - 0x07, 0xFF, 0x30, 0x38, 0x0F, 0xC1, 0x80, 0x1F, 0x0C, 0x00, 0x18, 0x60, - 0x00, 0x63, 0x00, 0x01, 0x9C, 0x00, 0x06, 0x60, 0x00, 0x01, 0x80, 0x00, - 0x0C, 0x00, 0x00, 0x30, 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x30, 0x00, 0x00, 0xE0, 0x00, 0x01, 0x80, 0x00, 0xC7, 0x00, - 0x0E, 0x0F, 0x01, 0xF0, 0x1F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x00, - 0x1F, 0x80, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x10, 0x00, 0x00, 0x18, 0x00, 0xFC, 0x0C, 0x01, - 0xFF, 0x86, 0x01, 0xC0, 0xE3, 0x03, 0x80, 0x1B, 0x03, 0x80, 0x05, 0x81, - 0x80, 0x03, 0xC1, 0x80, 0x00, 0xE1, 0x80, 0x00, 0x60, 0xC0, 0x00, 0x30, - 0x60, 0x00, 0x18, 0x60, 0x00, 0x0C, 0x30, 0x00, 0x06, 0x18, 0x00, 0x02, - 0x0C, 0x00, 0x03, 0x06, 0x00, 0x01, 0x83, 0x00, 0x01, 0xC1, 0xC0, 0x01, - 0xE0, 0x60, 0x01, 0xE0, 0x38, 0x01, 0xB0, 0x0F, 0x03, 0x9F, 0x03, 0xFF, - 0x0F, 0x80, 0x7E, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x07, 0xFF, 0x80, 0x78, - 0x0F, 0x03, 0x80, 0x0E, 0x1C, 0x00, 0x18, 0xE0, 0x00, 0x73, 0x00, 0x00, - 0xD8, 0x00, 0x03, 0x60, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0x00, 0x00, 0xC0, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x60, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x03, 0x07, 0x80, 0xF8, - 0x0F, 0xFF, 0x80, 0x0F, 0xF0, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, 0xFF, - 0xF0, 0x00, 0xF0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x18, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x07, 0xFF, 0xFC, 0x03, - 0xFF, 0xFF, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x60, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0xC0, - 0x00, 0x00, 0x30, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, - 0x80, 0x00, 0x00, 0x60, 0x00, 0x00, 0x18, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x01, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xFE, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFF, 0x87, 0xC1, 0xE0, 0xF3, 0xE1, 0xC0, - 0x1B, 0x01, 0xC0, 0x07, 0x81, 0xC0, 0x03, 0xC0, 0xC0, 0x00, 0xE0, 0xC0, - 0x00, 0x60, 0x60, 0x00, 0x30, 0x60, 0x00, 0x18, 0x30, 0x00, 0x0C, 0x18, - 0x00, 0x06, 0x0C, 0x00, 0x06, 0x06, 0x00, 0x03, 0x03, 0x00, 0x03, 0x81, - 0xC0, 0x01, 0xC0, 0x60, 0x01, 0xC0, 0x38, 0x03, 0x60, 0x0F, 0x07, 0x30, - 0x03, 0xFF, 0x18, 0x00, 0x7E, 0x0C, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x03, 0x80, 0x03, 0xFF, 0x80, 0x01, 0xFF, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, 0x83, 0xF0, 0x01, - 0x8F, 0xF8, 0x01, 0x98, 0x1C, 0x03, 0xB0, 0x0E, 0x03, 0x40, 0x06, 0x03, - 0x80, 0x06, 0x03, 0x00, 0x06, 0x03, 0x00, 0x06, 0x07, 0x00, 0x06, 0x06, - 0x00, 0x0E, 0x06, 0x00, 0x0E, 0x06, 0x00, 0x0E, 0x06, 0x00, 0x0C, 0x0C, - 0x00, 0x0C, 0x0C, 0x00, 0x1C, 0x0C, 0x00, 0x1C, 0x0C, 0x00, 0x18, 0x0C, - 0x00, 0x18, 0x18, 0x00, 0x18, 0xFF, 0x01, 0xFF, 0xFF, 0x01, 0xFF, 0x00, - 0x07, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x1F, - 0xF0, 0x00, 0x06, 0x00, 0x01, 0xC0, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, - 0xC0, 0x00, 0x18, 0x00, 0x07, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, - 0x00, 0x00, 0x60, 0x00, 0x1C, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, - 0x00, 0x01, 0x80, 0x7F, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x70, 0x00, - 0x07, 0x00, 0x00, 0x70, 0x00, 0x06, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0x03, 0xFF, 0xF0, - 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0x60, 0x00, 0x06, - 0x00, 0x00, 0x60, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x0C, 0x00, 0x00, - 0xC0, 0x00, 0x0C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x01, 0x80, 0x00, - 0x18, 0x00, 0x01, 0x80, 0x00, 0x38, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, - 0x03, 0x00, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, - 0x03, 0x80, 0xFF, 0xF0, 0x0F, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, 0x00, 0x00, 0x60, - 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0xFF, 0x00, 0xC1, - 0xFF, 0x00, 0x80, 0x70, 0x01, 0x80, 0xC0, 0x01, 0x83, 0x80, 0x01, 0x87, - 0x00, 0x01, 0x8C, 0x00, 0x03, 0x38, 0x00, 0x03, 0x70, 0x00, 0x03, 0xF8, - 0x00, 0x03, 0x9C, 0x00, 0x03, 0x0C, 0x00, 0x06, 0x0E, 0x00, 0x06, 0x07, - 0x00, 0x06, 0x03, 0x80, 0x06, 0x01, 0x80, 0x04, 0x00, 0xC0, 0x0C, 0x00, - 0xE0, 0xFC, 0x03, 0xFE, 0xFC, 0x03, 0xFC, 0x01, 0xFF, 0x00, 0x3F, 0xE0, - 0x00, 0x0C, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x00, 0x01, 0x80, - 0x00, 0x70, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, - 0x01, 0x80, 0x00, 0x30, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, - 0x18, 0x00, 0x03, 0x00, 0x00, 0x60, 0x00, 0x0C, 0x03, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0x00, 0x1E, 0x07, 0x81, 0xE7, 0xE1, 0xF8, 0x3D, 0x8E, 0xE3, - 0x81, 0xE0, 0xF8, 0x30, 0x38, 0x1E, 0x06, 0x06, 0x03, 0x80, 0xC1, 0x80, - 0x60, 0x18, 0x30, 0x0C, 0x03, 0x06, 0x01, 0x80, 0x60, 0xC0, 0x30, 0x08, - 0x18, 0x0C, 0x03, 0x06, 0x01, 0x80, 0x60, 0xC0, 0x30, 0x0C, 0x18, 0x06, - 0x01, 0x83, 0x00, 0x80, 0x60, 0x40, 0x30, 0x0C, 0x18, 0x06, 0x01, 0x83, - 0x00, 0xC0, 0x30, 0x60, 0x18, 0x06, 0x7F, 0x03, 0xC1, 0xFF, 0xE0, 0xF8, - 0x3E, 0x00, 0x03, 0xE0, 0x1F, 0x1F, 0xF0, 0x3E, 0x60, 0x70, 0x0F, 0x80, - 0x70, 0x3C, 0x00, 0x60, 0x70, 0x00, 0xC0, 0xC0, 0x01, 0x81, 0x80, 0x03, - 0x07, 0x00, 0x06, 0x0C, 0x00, 0x1C, 0x18, 0x00, 0x30, 0x30, 0x00, 0x60, - 0x60, 0x00, 0xC1, 0xC0, 0x01, 0x83, 0x00, 0x06, 0x06, 0x00, 0x0C, 0x0C, - 0x00, 0x18, 0x18, 0x00, 0x30, 0x70, 0x00, 0x67, 0xFC, 0x07, 0xFF, 0xF0, - 0x0F, 0xE0, 0x00, 0x3F, 0x00, 0x07, 0xFF, 0x00, 0x3C, 0x0F, 0x01, 0xC0, - 0x1C, 0x0C, 0x00, 0x38, 0x60, 0x00, 0x63, 0x00, 0x00, 0xDC, 0x00, 0x03, - 0x60, 0x00, 0x0D, 0x80, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, - 0x00, 0x1B, 0x00, 0x00, 0x6C, 0x00, 0x03, 0xB0, 0x00, 0x0C, 0x60, 0x00, - 0x61, 0xC0, 0x03, 0x03, 0x80, 0x38, 0x0F, 0x03, 0xC0, 0x0F, 0xFE, 0x00, - 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x1F, 0x8F, 0xFE, 0x00, 0xFC, - 0xE0, 0x78, 0x00, 0xCC, 0x00, 0xE0, 0x06, 0xC0, 0x03, 0x00, 0x3C, 0x00, - 0x1C, 0x01, 0xC0, 0x00, 0x60, 0x0C, 0x00, 0x03, 0x00, 0xE0, 0x00, 0x18, - 0x06, 0x00, 0x00, 0xC0, 0x30, 0x00, 0x06, 0x01, 0x80, 0x00, 0x30, 0x0C, - 0x00, 0x03, 0x00, 0xE0, 0x00, 0x18, 0x07, 0x00, 0x01, 0x80, 0x3C, 0x00, - 0x1C, 0x01, 0xE0, 0x01, 0xC0, 0x0D, 0x80, 0x1C, 0x00, 0xCF, 0x03, 0xC0, - 0x06, 0x3F, 0xF8, 0x00, 0x30, 0x7F, 0x00, 0x01, 0x80, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x30, 0x00, - 0x00, 0x01, 0x80, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x07, 0xFF, 0x00, 0x00, - 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, 0xE1, 0xF0, 0x78, - 0x1C, 0xFC, 0x38, 0x01, 0xB0, 0x1C, 0x00, 0x2C, 0x0E, 0x00, 0x0F, 0x03, - 0x00, 0x01, 0xC1, 0x80, 0x00, 0x60, 0x60, 0x00, 0x18, 0x30, 0x00, 0x06, - 0x0C, 0x00, 0x01, 0x83, 0x00, 0x00, 0x60, 0xC0, 0x00, 0x30, 0x30, 0x00, - 0x0C, 0x0C, 0x00, 0x07, 0x03, 0x80, 0x03, 0xC0, 0x60, 0x01, 0xB0, 0x1C, - 0x00, 0xD8, 0x03, 0xC0, 0xE6, 0x00, 0x7F, 0xF1, 0x80, 0x07, 0xE0, 0x60, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, - 0xC0, 0x00, 0x00, 0x30, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x7F, 0xF8, 0x00, 0x1F, 0xFE, 0x00, 0x07, 0xF0, 0x3E, 0x03, 0xF8, 0x7F, - 0xC0, 0x18, 0xF0, 0x60, 0x0C, 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xC0, - 0x00, 0x03, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x30, 0x00, 0x00, 0x38, 0x00, 0x00, 0x18, 0x00, 0x00, 0x0C, - 0x00, 0x00, 0x06, 0x00, 0x00, 0x03, 0x00, 0x00, 0x03, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x3F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, 0x00, 0x00, 0x3F, 0x00, - 0x0F, 0xFE, 0xC0, 0xF0, 0x3E, 0x0E, 0x00, 0x70, 0xE0, 0x01, 0x06, 0x00, - 0x08, 0x30, 0x00, 0x41, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3F, 0xF0, 0x00, - 0x3F, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x18, 0x00, 0x00, - 0xCC, 0x00, 0x06, 0x60, 0x00, 0x33, 0x00, 0x03, 0x3C, 0x00, 0x71, 0xF8, - 0x0F, 0x0D, 0xFF, 0xF0, 0x01, 0xFC, 0x00, 0x03, 0x00, 0x03, 0x00, 0x01, - 0x80, 0x00, 0xC0, 0x00, 0x60, 0x00, 0x70, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, - 0x0C, 0x00, 0x06, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0xC0, - 0x00, 0xE0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x18, 0x00, 0x0C, 0x00, 0x0E, - 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x80, 0x00, 0xC0, 0x03, 0x38, 0x0F, - 0x9F, 0xFF, 0x03, 0xF8, 0x00, 0xFC, 0x03, 0xFF, 0xE0, 0x1F, 0xC6, 0x00, - 0x0C, 0x30, 0x00, 0x61, 0x80, 0x03, 0x0C, 0x00, 0x18, 0x60, 0x01, 0x86, - 0x00, 0x0C, 0x30, 0x00, 0x61, 0x80, 0x03, 0x0C, 0x00, 0x18, 0x60, 0x01, - 0x86, 0x00, 0x0C, 0x30, 0x00, 0x61, 0x80, 0x03, 0x0C, 0x00, 0x38, 0x60, - 0x07, 0x83, 0x80, 0x6C, 0x1E, 0x1E, 0x7C, 0x7F, 0xE3, 0xE0, 0xF8, 0x00, - 0x00, 0x7F, 0xC0, 0xFF, 0xFF, 0xF0, 0x3F, 0xF1, 0xC0, 0x00, 0xC0, 0x30, - 0x00, 0x60, 0x0C, 0x00, 0x18, 0x03, 0x00, 0x0C, 0x00, 0xE0, 0x06, 0x00, - 0x18, 0x01, 0x80, 0x06, 0x00, 0xC0, 0x01, 0x80, 0x30, 0x00, 0x60, 0x18, - 0x00, 0x0C, 0x0C, 0x00, 0x03, 0x03, 0x00, 0x00, 0xC1, 0x80, 0x00, 0x30, - 0xC0, 0x00, 0x06, 0x30, 0x00, 0x01, 0x98, 0x00, 0x00, 0x6C, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x07, 0x80, 0x00, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0x3F, - 0xCC, 0x00, 0x03, 0x06, 0x00, 0x01, 0x83, 0x00, 0x01, 0x81, 0x81, 0x80, - 0xC0, 0xC1, 0xE0, 0x60, 0x60, 0xF0, 0x60, 0x30, 0xD8, 0x30, 0x18, 0x6C, - 0x30, 0x0C, 0x66, 0x18, 0x06, 0x33, 0x18, 0x03, 0x31, 0x8C, 0x01, 0x98, - 0x66, 0x00, 0xD8, 0x36, 0x00, 0x6C, 0x1B, 0x00, 0x3C, 0x0F, 0x00, 0x1E, - 0x07, 0x80, 0x0E, 0x03, 0x80, 0x07, 0x01, 0xC0, 0x00, 0x07, 0xF0, 0x3F, - 0xC3, 0xFC, 0x0F, 0xF0, 0x38, 0x00, 0x60, 0x07, 0x00, 0x70, 0x00, 0xE0, - 0x38, 0x00, 0x18, 0x1C, 0x00, 0x03, 0x0C, 0x00, 0x00, 0xEE, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x03, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xDC, 0x00, - 0x00, 0xE3, 0x80, 0x00, 0x70, 0x70, 0x00, 0x38, 0x0E, 0x00, 0x18, 0x01, - 0x80, 0x1C, 0x00, 0x30, 0x0E, 0x00, 0x0E, 0x0F, 0xF0, 0x3F, 0xE3, 0xFC, - 0x0F, 0xF8, 0x03, 0xF8, 0x07, 0xF8, 0x3F, 0xC0, 0x3F, 0xC0, 0x60, 0x00, - 0x30, 0x01, 0x80, 0x01, 0x80, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x01, 0x80, - 0x03, 0x80, 0x0C, 0x00, 0x0C, 0x00, 0xC0, 0x00, 0x60, 0x0C, 0x00, 0x03, - 0x00, 0x60, 0x00, 0x0C, 0x06, 0x00, 0x00, 0x60, 0x60, 0x00, 0x03, 0x06, - 0x00, 0x00, 0x1C, 0x30, 0x00, 0x00, 0x63, 0x00, 0x00, 0x03, 0x30, 0x00, - 0x00, 0x19, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, - 0x1C, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x60, - 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x03, 0x00, 0x00, - 0x00, 0x30, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0x00, - 0x07, 0xFF, 0xF8, 0x3F, 0xFF, 0xC3, 0x00, 0x0C, 0x18, 0x00, 0xC0, 0xC0, - 0x0C, 0x00, 0x00, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, - 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x01, 0x80, - 0x00, 0x18, 0x00, 0x01, 0x80, 0x0C, 0x18, 0x00, 0x61, 0x80, 0x02, 0x1F, - 0xFF, 0xF0, 0xFF, 0xFF, 0x80, 0x00, 0x0E, 0x00, 0x7C, 0x01, 0xC0, 0x03, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x01, 0xC0, 0x03, 0x00, - 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x01, 0xC0, 0x0F, 0x00, 0xF8, - 0x01, 0xF0, 0x00, 0x30, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x80, - 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0xE0, 0x01, 0x80, 0x03, - 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x01, 0x80, 0xC0, - 0x60, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x06, 0x03, 0x01, 0x80, 0xC0, 0x40, - 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x60, - 0x30, 0x18, 0x08, 0x0C, 0x06, 0x03, 0x01, 0x80, 0x80, 0xC0, 0x60, 0x30, - 0x00, 0x01, 0xC0, 0x03, 0xC0, 0x01, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, - 0x00, 0x0C, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x0C, 0x00, 0x18, 0x00, 0x38, 0x00, 0x38, 0x00, 0x3E, 0x00, 0x7C, 0x03, - 0xC0, 0x0E, 0x00, 0x18, 0x00, 0x70, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, - 0x06, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x00, 0x0E, - 0x00, 0xF8, 0x01, 0xC0, 0x00, 0x0F, 0x00, 0x01, 0xFC, 0x03, 0x70, 0xE0, - 0x7E, 0x07, 0x1E, 0xC0, 0x3F, 0x80, 0x01, 0xE0}; - -const GFXglyph FreeMonoOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 28, 0, 1}, // 0x20 ' ' - {0, 10, 30, 28, 12, -28}, // 0x21 '!' - {38, 16, 14, 28, 10, -28}, // 0x22 '"' - {66, 22, 32, 28, 6, -29}, // 0x23 '#' - {154, 21, 33, 28, 6, -29}, // 0x24 '$' - {241, 22, 29, 28, 6, -27}, // 0x25 '%' - {321, 19, 25, 28, 6, -23}, // 0x26 '&' - {381, 7, 14, 28, 16, -28}, // 0x27 ''' - {394, 11, 34, 28, 16, -27}, // 0x28 '(' - {441, 11, 34, 28, 7, -27}, // 0x29 ')' - {488, 18, 17, 28, 10, -28}, // 0x2A '*' - {527, 22, 22, 28, 6, -23}, // 0x2B '+' - {588, 12, 14, 28, 5, -6}, // 0x2C ',' - {609, 22, 2, 28, 6, -13}, // 0x2D '-' - {615, 7, 6, 28, 11, -4}, // 0x2E '.' - {621, 24, 35, 28, 5, -30}, // 0x2F '/' - {726, 20, 30, 28, 7, -28}, // 0x30 '0' - {801, 17, 29, 28, 6, -28}, // 0x31 '1' - {863, 23, 29, 28, 4, -28}, // 0x32 '2' - {947, 22, 30, 28, 5, -28}, // 0x33 '3' - {1030, 19, 28, 28, 7, -27}, // 0x34 '4' - {1097, 21, 29, 28, 6, -27}, // 0x35 '5' - {1174, 21, 30, 28, 9, -28}, // 0x36 '6' - {1253, 18, 28, 28, 10, -27}, // 0x37 '7' - {1316, 20, 30, 28, 7, -28}, // 0x38 '8' - {1391, 22, 30, 28, 6, -28}, // 0x39 '9' - {1474, 10, 21, 28, 11, -19}, // 0x3A ':' - {1501, 15, 27, 28, 5, -19}, // 0x3B ';' - {1552, 23, 22, 28, 6, -23}, // 0x3C '<' - {1616, 25, 9, 28, 4, -17}, // 0x3D '=' - {1645, 24, 22, 28, 4, -23}, // 0x3E '>' - {1711, 16, 28, 28, 11, -26}, // 0x3F '?' - {1767, 19, 32, 28, 7, -28}, // 0x40 '@' - {1843, 27, 26, 28, 1, -25}, // 0x41 'A' - {1931, 26, 26, 28, 2, -25}, // 0x42 'B' - {2016, 25, 28, 28, 5, -26}, // 0x43 'C' - {2104, 26, 26, 28, 2, -25}, // 0x44 'D' - {2189, 27, 26, 28, 2, -25}, // 0x45 'E' - {2277, 28, 26, 28, 2, -25}, // 0x46 'F' - {2368, 25, 28, 28, 5, -26}, // 0x47 'G' - {2456, 27, 26, 28, 3, -25}, // 0x48 'H' - {2544, 22, 26, 28, 6, -25}, // 0x49 'I' - {2616, 28, 27, 28, 5, -25}, // 0x4A 'J' - {2711, 29, 26, 28, 2, -25}, // 0x4B 'K' - {2806, 25, 26, 28, 3, -25}, // 0x4C 'L' - {2888, 32, 26, 28, 1, -25}, // 0x4D 'M' - {2992, 30, 26, 28, 2, -25}, // 0x4E 'N' - {3090, 24, 28, 28, 5, -26}, // 0x4F 'O' - {3174, 26, 26, 28, 2, -25}, // 0x50 'P' - {3259, 24, 32, 28, 5, -26}, // 0x51 'Q' - {3355, 26, 26, 28, 2, -25}, // 0x52 'R' - {3440, 24, 28, 28, 5, -26}, // 0x53 'S' - {3524, 24, 26, 28, 7, -25}, // 0x54 'T' - {3602, 26, 27, 28, 6, -25}, // 0x55 'U' - {3690, 27, 26, 28, 6, -25}, // 0x56 'V' - {3778, 27, 26, 28, 6, -25}, // 0x57 'W' - {3866, 29, 26, 28, 2, -25}, // 0x58 'X' - {3961, 24, 26, 28, 7, -25}, // 0x59 'Y' - {4039, 23, 26, 28, 5, -25}, // 0x5A 'Z' - {4114, 15, 34, 28, 12, -27}, // 0x5B '[' - {4178, 10, 35, 28, 12, -30}, // 0x5C '\' - {4222, 15, 34, 28, 6, -27}, // 0x5D ']' - {4286, 18, 12, 28, 9, -28}, // 0x5E '^' - {4313, 28, 2, 28, -1, 5}, // 0x5F '_' - {4320, 6, 7, 28, 13, -29}, // 0x60 '`' - {4326, 22, 22, 28, 4, -20}, // 0x61 'a' - {4387, 27, 29, 28, 1, -27}, // 0x62 'b' - {4485, 22, 22, 28, 6, -20}, // 0x63 'c' - {4546, 25, 29, 28, 5, -27}, // 0x64 'd' - {4637, 22, 22, 28, 5, -20}, // 0x65 'e' - {4698, 26, 28, 28, 5, -27}, // 0x66 'f' - {4789, 25, 30, 28, 5, -20}, // 0x67 'g' - {4883, 24, 28, 28, 3, -27}, // 0x68 'h' - {4967, 19, 29, 28, 5, -28}, // 0x69 'i' - {5036, 20, 38, 28, 4, -28}, // 0x6A 'j' - {5131, 24, 28, 28, 3, -27}, // 0x6B 'k' - {5215, 19, 28, 28, 5, -27}, // 0x6C 'l' - {5282, 27, 21, 28, 1, -20}, // 0x6D 'm' - {5353, 23, 21, 28, 3, -20}, // 0x6E 'n' - {5414, 22, 22, 28, 5, -20}, // 0x6F 'o' - {5475, 29, 30, 28, -1, -20}, // 0x70 'p' - {5584, 26, 30, 28, 5, -20}, // 0x71 'q' - {5682, 25, 20, 28, 4, -19}, // 0x72 'r' - {5745, 21, 22, 28, 5, -20}, // 0x73 's' - {5803, 17, 27, 28, 7, -25}, // 0x74 't' - {5861, 21, 21, 28, 6, -19}, // 0x75 'u' - {5917, 26, 20, 28, 5, -19}, // 0x76 'v' - {5982, 25, 20, 28, 6, -19}, // 0x77 'w' - {6045, 26, 20, 28, 3, -19}, // 0x78 'x' - {6110, 29, 29, 28, 1, -19}, // 0x79 'y' - {6216, 21, 20, 28, 5, -19}, // 0x7A 'z' - {6269, 15, 34, 28, 10, -27}, // 0x7B '{' - {6333, 9, 35, 28, 12, -28}, // 0x7C '|' - {6373, 15, 34, 28, 8, -27}, // 0x7D '}' - {6437, 20, 6, 28, 7, -15}}; // 0x7E '~' - -const GFXfont FreeMonoOblique24pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique24pt7bBitmaps, - (GFXglyph *)FreeMonoOblique24pt7bGlyphs, 0x20, 0x7E, 47}; - -// Approx. 7124 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h deleted file mode 100644 index 1e82964..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeMonoOblique9pt7b.h +++ /dev/null @@ -1,189 +0,0 @@ -#pragma once -#include - -const uint8_t FreeMonoOblique9pt7bBitmaps[] PROGMEM = { - 0x11, 0x22, 0x24, 0x40, 0x00, 0xC0, 0xDE, 0xE5, 0x29, 0x00, 0x09, 0x05, - 0x02, 0x82, 0x47, 0xF8, 0xA0, 0x51, 0xFE, 0x28, 0x14, 0x0A, 0x09, 0x00, - 0x08, 0x1D, 0x23, 0x40, 0x70, 0x1C, 0x02, 0x82, 0x84, 0x78, 0x20, 0x20, - 0x1C, 0x11, 0x08, 0x83, 0x80, 0x18, 0x71, 0xC0, 0x1C, 0x11, 0x08, 0x83, - 0x80, 0x1E, 0x60, 0x81, 0x03, 0x0A, 0x65, 0x46, 0x88, 0xE8, 0xFA, 0x80, - 0x12, 0x24, 0x48, 0x88, 0x88, 0x88, 0x80, 0x01, 0x11, 0x11, 0x11, 0x22, - 0x44, 0x80, 0x10, 0x22, 0x5B, 0xC3, 0x0A, 0x22, 0x00, 0x04, 0x02, 0x02, - 0x1F, 0xF0, 0x80, 0x40, 0x20, 0x00, 0x36, 0x4C, 0x80, 0xFF, 0x80, 0xF0, - 0x00, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, - 0x08, 0x08, 0x00, 0x1C, 0x45, 0x0A, 0x18, 0x30, 0x61, 0x42, 0x85, 0x11, - 0xC0, 0x04, 0x38, 0x90, 0x20, 0x81, 0x02, 0x04, 0x08, 0x23, 0xF8, 0x07, - 0x04, 0xC4, 0x20, 0x10, 0x10, 0x30, 0x20, 0x20, 0x60, 0x40, 0x3F, 0x80, - 0x0F, 0x00, 0x40, 0x20, 0x20, 0x60, 0x18, 0x04, 0x02, 0x01, 0x43, 0x1E, - 0x00, 0x03, 0x05, 0x0A, 0x12, 0x22, 0x22, 0x42, 0x7F, 0x04, 0x04, 0x1E, - 0x1F, 0x88, 0x08, 0x05, 0xC3, 0x30, 0x08, 0x04, 0x02, 0x02, 0x42, 0x1E, - 0x00, 0x07, 0x18, 0x20, 0x40, 0x5C, 0xA6, 0xC2, 0x82, 0x82, 0xC4, 0x78, - 0xFF, 0x04, 0x10, 0x20, 0x82, 0x04, 0x10, 0x20, 0x81, 0x00, 0x1E, 0x23, - 0x41, 0x41, 0x62, 0x1C, 0x66, 0x82, 0x82, 0x84, 0x78, 0x1E, 0x23, 0x41, - 0x41, 0x43, 0x65, 0x3A, 0x02, 0x04, 0x18, 0xE0, 0x6C, 0x00, 0x36, 0x18, - 0xC0, 0x00, 0x19, 0x8C, 0xC4, 0x00, 0x01, 0x83, 0x06, 0x0C, 0x06, 0x00, - 0x80, 0x30, 0x04, 0xFF, 0x80, 0x00, 0x1F, 0xF0, 0x20, 0x0C, 0x01, 0x00, - 0x60, 0x20, 0x60, 0xC1, 0x80, 0x3D, 0x8E, 0x08, 0x10, 0xC6, 0x08, 0x00, - 0x01, 0x80, 0x1C, 0x45, 0x0A, 0x79, 0x34, 0x69, 0x4E, 0x81, 0x03, 0x03, - 0xC0, 0x0F, 0x00, 0x60, 0x12, 0x02, 0x40, 0x88, 0x21, 0x07, 0xE1, 0x04, - 0x20, 0x5E, 0x3C, 0x3F, 0x84, 0x11, 0x04, 0x82, 0x3F, 0x88, 0x32, 0x04, - 0x81, 0x60, 0xBF, 0xC0, 0x1E, 0x98, 0xD0, 0x28, 0x08, 0x04, 0x02, 0x01, - 0x00, 0x41, 0x1F, 0x00, 0x3F, 0x0C, 0x22, 0x04, 0x81, 0x20, 0x48, 0x12, - 0x09, 0x02, 0x43, 0x3F, 0x00, 0x3F, 0xC4, 0x11, 0x00, 0x88, 0x3E, 0x08, - 0x82, 0x00, 0x82, 0x60, 0xBF, 0xE0, 0x3F, 0xE2, 0x08, 0x40, 0x11, 0x03, - 0xE0, 0x44, 0x08, 0x01, 0x00, 0x60, 0x1F, 0x00, 0x1E, 0x98, 0xD0, 0x08, - 0x08, 0x04, 0x7A, 0x05, 0x02, 0x41, 0x1F, 0x00, 0x3D, 0xE2, 0x18, 0x42, - 0x08, 0x43, 0xF8, 0x41, 0x08, 0x21, 0x08, 0x21, 0x1E, 0xF0, 0x3F, 0x82, - 0x02, 0x01, 0x00, 0x80, 0x40, 0x20, 0x20, 0x10, 0x7F, 0x00, 0x0F, 0xE0, - 0x20, 0x04, 0x00, 0x80, 0x10, 0x02, 0x20, 0x84, 0x10, 0x84, 0x0F, 0x00, - 0x3C, 0xE2, 0x10, 0x44, 0x11, 0x02, 0xC0, 0x64, 0x08, 0x81, 0x08, 0x61, - 0x1E, 0x38, 0x3E, 0x02, 0x00, 0x80, 0x20, 0x10, 0x04, 0x01, 0x04, 0x42, - 0x10, 0xBF, 0xE0, 0x38, 0x38, 0xC3, 0x05, 0x28, 0x29, 0x42, 0x52, 0x13, - 0x10, 0x99, 0x84, 0x08, 0x20, 0x47, 0x8F, 0x00, 0x70, 0xE6, 0x08, 0xA1, - 0x14, 0x22, 0x48, 0x49, 0x11, 0x22, 0x14, 0x43, 0x1E, 0x20, 0x1E, 0x18, - 0x90, 0x28, 0x18, 0x0C, 0x06, 0x05, 0x02, 0x46, 0x1E, 0x00, 0x3F, 0x84, - 0x31, 0x04, 0x81, 0x20, 0x8F, 0xC2, 0x00, 0x80, 0x60, 0x3E, 0x00, 0x1E, - 0x18, 0x90, 0x28, 0x18, 0x0C, 0x06, 0x05, 0x02, 0x46, 0x1E, 0x08, 0x0F, - 0x44, 0x60, 0x3F, 0x84, 0x31, 0x04, 0x81, 0x20, 0x8F, 0xC2, 0x10, 0x84, - 0x60, 0xBC, 0x10, 0x0F, 0x88, 0xC8, 0x24, 0x01, 0x80, 0x38, 0x05, 0x02, - 0xC2, 0x5E, 0x00, 0xFF, 0xC4, 0x44, 0x02, 0x01, 0x00, 0x80, 0x40, 0x60, - 0x20, 0x7E, 0x00, 0xF1, 0xD0, 0x24, 0x09, 0x02, 0x41, 0xA0, 0x48, 0x12, - 0x04, 0xC6, 0x1F, 0x00, 0xF1, 0xE8, 0x11, 0x02, 0x20, 0x82, 0x20, 0x44, - 0x09, 0x01, 0x40, 0x28, 0x02, 0x00, 0xF1, 0xE8, 0x09, 0x12, 0x26, 0x45, - 0x48, 0xAA, 0x29, 0x45, 0x28, 0xC6, 0x18, 0xC0, 0x38, 0xE2, 0x08, 0x26, - 0x05, 0x00, 0x40, 0x18, 0x04, 0x81, 0x08, 0x41, 0x1C, 0x70, 0xE3, 0xA0, - 0x90, 0x84, 0x81, 0x80, 0x80, 0x40, 0x20, 0x20, 0x7E, 0x00, 0x3F, 0x90, - 0x88, 0x80, 0x80, 0x80, 0x80, 0x80, 0x82, 0x82, 0x7F, 0x00, 0x39, 0x08, - 0x44, 0x21, 0x08, 0x42, 0x21, 0x0E, 0x00, 0x88, 0x44, 0x44, 0x22, 0x22, - 0x11, 0x11, 0x38, 0x42, 0x11, 0x08, 0x42, 0x10, 0x84, 0x2E, 0x00, 0x08, - 0x28, 0x92, 0x18, 0x20, 0xFF, 0xC0, 0xA4, 0x3E, 0x00, 0x80, 0x47, 0xA4, - 0x34, 0x12, 0x18, 0xF7, 0x38, 0x01, 0x00, 0x40, 0x09, 0xE1, 0xC6, 0x20, - 0x44, 0x09, 0x01, 0x30, 0x46, 0x13, 0xBC, 0x00, 0x1F, 0x48, 0x74, 0x0A, - 0x00, 0x80, 0x20, 0x0C, 0x18, 0xF8, 0x01, 0x80, 0x40, 0x23, 0x96, 0x32, - 0x0A, 0x05, 0x02, 0x81, 0x61, 0x1F, 0xE0, 0x1F, 0x30, 0xD0, 0x3F, 0xF8, - 0x04, 0x01, 0x00, 0x7C, 0x07, 0xC3, 0x00, 0x80, 0xFE, 0x10, 0x04, 0x01, - 0x00, 0x40, 0x10, 0x08, 0x0F, 0xE0, 0x1D, 0xD8, 0xC4, 0x12, 0x04, 0x82, - 0x20, 0x8C, 0x61, 0xE8, 0x02, 0x01, 0x07, 0x80, 0x30, 0x04, 0x01, 0x00, - 0x5C, 0x38, 0x88, 0x22, 0x08, 0x82, 0x21, 0x18, 0x4F, 0x3C, 0x04, 0x04, - 0x00, 0x38, 0x08, 0x08, 0x08, 0x08, 0x10, 0x10, 0xFF, 0x01, 0x00, 0x80, - 0x03, 0xF0, 0x10, 0x08, 0x04, 0x02, 0x02, 0x01, 0x00, 0x80, 0x40, 0x47, - 0xC0, 0x38, 0x08, 0x04, 0x02, 0x71, 0x20, 0xA0, 0xA0, 0x68, 0x24, 0x11, - 0x38, 0xE0, 0x3C, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x08, 0x10, 0x10, - 0xFF, 0x3E, 0xE2, 0x64, 0x88, 0x91, 0x12, 0x24, 0x48, 0x91, 0x17, 0x33, - 0x37, 0x14, 0x4C, 0x24, 0x12, 0x09, 0x08, 0x85, 0xE3, 0x1E, 0x10, 0x90, - 0x30, 0x18, 0x0C, 0x0B, 0x08, 0x78, 0x33, 0xC3, 0x8C, 0x40, 0x88, 0x12, - 0x02, 0x60, 0x8C, 0x31, 0x78, 0x20, 0x08, 0x03, 0xE0, 0x00, 0x1C, 0xD8, - 0xC4, 0x12, 0x04, 0x81, 0x20, 0x4C, 0x21, 0xF8, 0x02, 0x00, 0x81, 0xF0, - 0x73, 0x8E, 0x04, 0x04, 0x02, 0x01, 0x00, 0x81, 0xFC, 0x1F, 0x61, 0x40, - 0x3C, 0x03, 0x81, 0x82, 0xFC, 0x10, 0x63, 0xF9, 0x02, 0x04, 0x10, 0x20, - 0x40, 0x7C, 0xE3, 0x10, 0x90, 0x48, 0x24, 0x22, 0x11, 0x18, 0xF6, 0xF3, - 0xD0, 0x44, 0x10, 0x88, 0x24, 0x09, 0x02, 0x80, 0x40, 0xE1, 0xD0, 0x24, - 0x91, 0x24, 0x55, 0x19, 0x86, 0x61, 0x10, 0x39, 0xC4, 0x20, 0xB0, 0x30, - 0x0C, 0x04, 0x86, 0x13, 0x8E, 0x3C, 0x71, 0x04, 0x10, 0x40, 0x88, 0x09, - 0x00, 0xA0, 0x06, 0x00, 0x40, 0x08, 0x01, 0x00, 0xFC, 0x00, 0x7F, 0x42, - 0x04, 0x08, 0x10, 0x20, 0x42, 0xFE, 0x0C, 0x41, 0x04, 0x30, 0x8C, 0x08, - 0x21, 0x04, 0x10, 0x60, 0x24, 0x94, 0x92, 0x52, 0x40, 0x18, 0x20, 0x82, - 0x10, 0x40, 0xC4, 0x10, 0x82, 0x08, 0xC0, 0x61, 0x24, 0x30}; - -const GFXglyph FreeMonoOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 11, 0, 1}, // 0x20 ' ' - {0, 4, 11, 11, 4, -10}, // 0x21 '!' - {6, 5, 5, 11, 4, -10}, // 0x22 '"' - {10, 9, 12, 11, 2, -10}, // 0x23 '#' - {24, 8, 12, 11, 3, -10}, // 0x24 '$' - {36, 9, 11, 11, 2, -10}, // 0x25 '%' - {49, 7, 10, 11, 2, -9}, // 0x26 '&' - {58, 2, 5, 11, 6, -10}, // 0x27 ''' - {60, 4, 13, 11, 6, -10}, // 0x28 '(' - {67, 4, 13, 11, 3, -10}, // 0x29 ')' - {74, 7, 7, 11, 4, -10}, // 0x2A '*' - {81, 9, 8, 11, 2, -8}, // 0x2B '+' - {90, 4, 5, 11, 2, -1}, // 0x2C ',' - {93, 9, 1, 11, 2, -5}, // 0x2D '-' - {95, 2, 2, 11, 4, -1}, // 0x2E '.' - {96, 9, 13, 11, 2, -11}, // 0x2F '/' - {111, 7, 11, 11, 3, -10}, // 0x30 '0' - {121, 7, 11, 11, 2, -10}, // 0x31 '1' - {131, 9, 11, 11, 2, -10}, // 0x32 '2' - {144, 9, 11, 11, 2, -10}, // 0x33 '3' - {157, 8, 11, 11, 2, -10}, // 0x34 '4' - {168, 9, 11, 11, 2, -10}, // 0x35 '5' - {181, 8, 11, 11, 3, -10}, // 0x36 '6' - {192, 7, 11, 11, 4, -10}, // 0x37 '7' - {202, 8, 11, 11, 3, -10}, // 0x38 '8' - {213, 8, 11, 11, 3, -10}, // 0x39 '9' - {224, 3, 8, 11, 4, -7}, // 0x3A ':' - {227, 5, 11, 11, 2, -7}, // 0x3B ';' - {234, 9, 8, 11, 2, -8}, // 0x3C '<' - {243, 9, 4, 11, 2, -6}, // 0x3D '=' - {248, 9, 8, 11, 2, -8}, // 0x3E '>' - {257, 7, 10, 11, 4, -9}, // 0x3F '?' - {266, 7, 12, 11, 3, -10}, // 0x40 '@' - {277, 11, 10, 11, 0, -9}, // 0x41 'A' - {291, 10, 10, 11, 1, -9}, // 0x42 'B' - {304, 9, 10, 11, 2, -9}, // 0x43 'C' - {316, 10, 10, 11, 1, -9}, // 0x44 'D' - {329, 10, 10, 11, 1, -9}, // 0x45 'E' - {342, 11, 10, 11, 1, -9}, // 0x46 'F' - {356, 9, 10, 11, 2, -9}, // 0x47 'G' - {368, 11, 10, 11, 1, -9}, // 0x48 'H' - {382, 9, 10, 11, 2, -9}, // 0x49 'I' - {394, 11, 10, 11, 2, -9}, // 0x4A 'J' - {408, 11, 10, 11, 1, -9}, // 0x4B 'K' - {422, 10, 10, 11, 1, -9}, // 0x4C 'L' - {435, 13, 10, 11, 0, -9}, // 0x4D 'M' - {452, 11, 10, 11, 1, -9}, // 0x4E 'N' - {466, 9, 10, 11, 2, -9}, // 0x4F 'O' - {478, 10, 10, 11, 1, -9}, // 0x50 'P' - {491, 9, 13, 11, 2, -9}, // 0x51 'Q' - {506, 10, 10, 11, 1, -9}, // 0x52 'R' - {519, 9, 10, 11, 2, -9}, // 0x53 'S' - {531, 9, 10, 11, 3, -9}, // 0x54 'T' - {543, 10, 10, 11, 2, -9}, // 0x55 'U' - {556, 11, 10, 11, 2, -9}, // 0x56 'V' - {570, 11, 10, 11, 2, -9}, // 0x57 'W' - {584, 11, 10, 11, 1, -9}, // 0x58 'X' - {598, 9, 10, 11, 3, -9}, // 0x59 'Y' - {610, 9, 10, 11, 2, -9}, // 0x5A 'Z' - {622, 5, 13, 11, 5, -10}, // 0x5B '[' - {631, 4, 14, 11, 4, -11}, // 0x5C '\' - {638, 5, 13, 11, 2, -10}, // 0x5D ']' - {647, 7, 5, 11, 3, -10}, // 0x5E '^' - {652, 11, 1, 11, 0, 2}, // 0x5F '_' - {654, 2, 3, 11, 5, -11}, // 0x60 '`' - {655, 9, 8, 11, 2, -7}, // 0x61 'a' - {664, 11, 11, 11, 0, -10}, // 0x62 'b' - {680, 10, 8, 11, 2, -7}, // 0x63 'c' - {690, 9, 11, 11, 2, -10}, // 0x64 'd' - {703, 9, 8, 11, 2, -7}, // 0x65 'e' - {712, 10, 11, 11, 2, -10}, // 0x66 'f' - {726, 10, 11, 11, 2, -7}, // 0x67 'g' - {740, 10, 11, 11, 1, -10}, // 0x68 'h' - {754, 8, 11, 11, 2, -10}, // 0x69 'i' - {765, 9, 14, 11, 1, -10}, // 0x6A 'j' - {781, 9, 11, 11, 1, -10}, // 0x6B 'k' - {794, 8, 11, 11, 2, -10}, // 0x6C 'l' - {805, 11, 8, 11, 0, -7}, // 0x6D 'm' - {816, 9, 8, 11, 1, -7}, // 0x6E 'n' - {825, 9, 8, 11, 2, -7}, // 0x6F 'o' - {834, 11, 11, 11, 0, -7}, // 0x70 'p' - {850, 10, 11, 11, 2, -7}, // 0x71 'q' - {864, 9, 8, 11, 2, -7}, // 0x72 'r' - {873, 8, 8, 11, 2, -7}, // 0x73 's' - {881, 7, 10, 11, 2, -9}, // 0x74 't' - {890, 9, 8, 11, 2, -7}, // 0x75 'u' - {899, 10, 8, 11, 2, -7}, // 0x76 'v' - {909, 10, 8, 11, 2, -7}, // 0x77 'w' - {919, 10, 8, 11, 1, -7}, // 0x78 'x' - {929, 12, 11, 11, 0, -7}, // 0x79 'y' - {946, 8, 8, 11, 2, -7}, // 0x7A 'z' - {954, 6, 13, 11, 4, -10}, // 0x7B '{' - {964, 3, 12, 11, 5, -9}, // 0x7C '|' - {969, 6, 13, 11, 3, -10}, // 0x7D '}' - {979, 7, 3, 11, 3, -6}}; // 0x7E '~' - -const GFXfont FreeMonoOblique9pt7b PROGMEM = { - (uint8_t *)FreeMonoOblique9pt7bBitmaps, - (GFXglyph *)FreeMonoOblique9pt7bGlyphs, 0x20, 0x7E, 18}; - -// Approx. 1654 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans12pt7b.h deleted file mode 100644 index 6e77392..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans12pt7b.h +++ /dev/null @@ -1,272 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xCF, 0x3C, 0xF3, 0x8A, 0x20, 0x06, 0x30, - 0x31, 0x03, 0x18, 0x18, 0xC7, 0xFF, 0xBF, 0xFC, 0x31, 0x03, 0x18, 0x18, - 0xC7, 0xFF, 0xBF, 0xFC, 0x31, 0x01, 0x18, 0x18, 0xC0, 0xC6, 0x06, 0x30, - 0x04, 0x03, 0xE1, 0xFF, 0x72, 0x6C, 0x47, 0x88, 0xF1, 0x07, 0x20, 0x7E, - 0x03, 0xF0, 0x17, 0x02, 0x3C, 0x47, 0x88, 0xF1, 0x1B, 0x26, 0x7F, 0xC3, - 0xE0, 0x10, 0x02, 0x00, 0x00, 0x06, 0x03, 0xC0, 0x40, 0x7E, 0x0C, 0x0E, - 0x70, 0x80, 0xC3, 0x18, 0x0C, 0x31, 0x00, 0xE7, 0x30, 0x07, 0xE6, 0x00, - 0x3C, 0x40, 0x00, 0x0C, 0x7C, 0x00, 0x8F, 0xE0, 0x19, 0xC7, 0x01, 0x18, - 0x30, 0x31, 0x83, 0x02, 0x1C, 0x70, 0x40, 0xFE, 0x04, 0x07, 0xC0, 0x0F, - 0x00, 0x7E, 0x03, 0x9C, 0x0C, 0x30, 0x30, 0xC0, 0xE7, 0x01, 0xF8, 0x03, - 0x80, 0x3E, 0x01, 0xCC, 0x6E, 0x19, 0xB0, 0x7C, 0xC0, 0xF3, 0x03, 0xCE, - 0x1F, 0x9F, 0xE6, 0x1E, 0x1C, 0xFF, 0xA0, 0x08, 0x8C, 0x66, 0x31, 0x98, - 0xC6, 0x31, 0x8C, 0x63, 0x08, 0x63, 0x08, 0x61, 0x0C, 0x20, 0x82, 0x18, - 0xC3, 0x18, 0xC3, 0x18, 0xC6, 0x31, 0x8C, 0x62, 0x31, 0x88, 0xC4, 0x62, - 0x00, 0x10, 0x23, 0x5B, 0xE3, 0x8D, 0x91, 0x00, 0x0C, 0x03, 0x00, 0xC0, - 0x30, 0xFF, 0xFF, 0xF0, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0xF5, 0x60, - 0xFF, 0xF0, 0xF0, 0x02, 0x0C, 0x10, 0x20, 0xC1, 0x02, 0x0C, 0x10, 0x20, - 0xC1, 0x02, 0x0C, 0x10, 0x20, 0xC1, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x30, - 0x6E, 0x0F, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, - 0x0E, 0xC1, 0x9C, 0x71, 0xFC, 0x1F, 0x00, 0x08, 0xCF, 0xFF, 0x8C, 0x63, - 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0x1F, 0x0F, 0xF9, 0x87, 0x60, 0x7C, - 0x06, 0x00, 0xC0, 0x18, 0x07, 0x01, 0xC0, 0xF0, 0x78, 0x1C, 0x06, 0x00, - 0x80, 0x30, 0x07, 0xFF, 0xFF, 0xE0, 0x3F, 0x0F, 0xF3, 0x87, 0x60, 0x6C, - 0x0C, 0x01, 0x80, 0x70, 0x7C, 0x0F, 0x80, 0x18, 0x01, 0x80, 0x3C, 0x07, - 0x80, 0xD8, 0x73, 0xFC, 0x1F, 0x00, 0x01, 0x80, 0x70, 0x0E, 0x03, 0xC0, - 0xD8, 0x1B, 0x06, 0x61, 0x8C, 0x21, 0x8C, 0x33, 0x06, 0x7F, 0xFF, 0xFE, - 0x03, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x3F, 0xCF, 0xF9, 0x80, 0x30, 0x06, - 0x00, 0xDE, 0x1F, 0xE7, 0x0E, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x07, - 0x81, 0xF8, 0x73, 0xFC, 0x1F, 0x00, 0x0F, 0x07, 0xF9, 0xC3, 0x30, 0x74, - 0x01, 0x80, 0x33, 0xC7, 0xFE, 0xF0, 0xDC, 0x1F, 0x01, 0xE0, 0x3C, 0x06, - 0xC1, 0xDC, 0x71, 0xFC, 0x1F, 0x00, 0xFF, 0xFF, 0xFC, 0x01, 0x00, 0x60, - 0x18, 0x02, 0x00, 0xC0, 0x30, 0x06, 0x01, 0x80, 0x30, 0x04, 0x01, 0x80, - 0x30, 0x06, 0x01, 0x80, 0x30, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x30, 0x66, - 0x0C, 0xC1, 0x8C, 0x61, 0xFC, 0x3F, 0x8E, 0x3B, 0x01, 0xE0, 0x3C, 0x07, - 0x80, 0xD8, 0x31, 0xFC, 0x1F, 0x00, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x6C, - 0x07, 0x80, 0xF0, 0x1E, 0x07, 0x61, 0xEF, 0xFC, 0x79, 0x80, 0x30, 0x05, - 0x81, 0x98, 0x73, 0xFC, 0x1E, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0xF0, 0x00, - 0x0F, 0x56, 0x00, 0x00, 0x07, 0x01, 0xE0, 0xF8, 0x3C, 0x0F, 0x00, 0xE0, - 0x07, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xFF, 0xFF, 0xFF, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x0E, 0x00, 0x78, 0x01, 0xF0, 0x07, - 0xC0, 0x0F, 0x00, 0x70, 0x1E, 0x0F, 0x03, 0xC0, 0xF0, 0x08, 0x00, 0x1F, - 0x1F, 0xEE, 0x1B, 0x03, 0xC0, 0xC0, 0x30, 0x0C, 0x06, 0x03, 0x81, 0xC0, - 0xE0, 0x30, 0x0C, 0x03, 0x00, 0x00, 0x00, 0x0C, 0x03, 0x00, 0x00, 0xFE, - 0x00, 0x0F, 0xFE, 0x00, 0xF0, 0x3E, 0x07, 0x00, 0x3C, 0x38, 0x00, 0x30, - 0xC1, 0xE0, 0x66, 0x0F, 0xD9, 0xD8, 0x61, 0xC3, 0xC3, 0x07, 0x0F, 0x1C, - 0x1C, 0x3C, 0x60, 0x60, 0xF1, 0x81, 0x83, 0xC6, 0x06, 0x1B, 0x18, 0x38, - 0xEE, 0x71, 0xE7, 0x18, 0xFD, 0xF8, 0x71, 0xE7, 0xC0, 0xE0, 0x00, 0x01, - 0xE0, 0x00, 0x01, 0xFF, 0xC0, 0x01, 0xFC, 0x00, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x07, 0xE0, 0x06, 0x60, 0x06, 0x60, 0x0E, 0x70, 0x0C, 0x30, - 0x0C, 0x30, 0x1C, 0x38, 0x18, 0x18, 0x1F, 0xF8, 0x3F, 0xFC, 0x30, 0x1C, - 0x30, 0x0C, 0x70, 0x0E, 0x60, 0x06, 0x60, 0x06, 0xFF, 0xC7, 0xFF, 0x30, - 0x19, 0x80, 0x6C, 0x03, 0x60, 0x1B, 0x00, 0xD8, 0x0C, 0xFF, 0xC7, 0xFF, - 0x30, 0x0D, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x06, 0xFF, 0xF7, - 0xFE, 0x00, 0x07, 0xE0, 0x3F, 0xF0, 0xE0, 0x73, 0x80, 0x66, 0x00, 0x6C, - 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, 0x00, - 0x06, 0x00, 0x6C, 0x00, 0xDC, 0x03, 0x1E, 0x0E, 0x1F, 0xF8, 0x0F, 0xC0, - 0xFF, 0x83, 0xFF, 0x8C, 0x07, 0x30, 0x0E, 0xC0, 0x1B, 0x00, 0x7C, 0x00, - 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1F, 0x00, - 0x6C, 0x03, 0xB0, 0x1C, 0xFF, 0xE3, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xC0, - 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xFF, 0xEF, 0xFE, 0xC0, - 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xFF, 0xDF, - 0xFB, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x00, - 0x07, 0xF0, 0x1F, 0xFC, 0x3C, 0x1E, 0x70, 0x06, 0x60, 0x03, 0xE0, 0x00, - 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x7F, 0xC0, 0x7F, 0xC0, 0x03, 0xC0, 0x03, - 0x60, 0x03, 0x60, 0x07, 0x30, 0x0F, 0x3C, 0x1F, 0x1F, 0xFB, 0x07, 0xE1, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x03, 0xFF, 0xFF, 0xFF, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, - 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x01, - 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0x60, - 0x3C, 0x1E, 0x0F, 0x07, 0xC7, 0x7F, 0x1F, 0x00, 0xC0, 0x3B, 0x01, 0xCC, - 0x0E, 0x30, 0x70, 0xC3, 0x83, 0x1C, 0x0C, 0xE0, 0x33, 0x80, 0xDE, 0x03, - 0xDC, 0x0E, 0x38, 0x30, 0x60, 0xC1, 0xC3, 0x03, 0x8C, 0x06, 0x30, 0x1C, - 0xC0, 0x3B, 0x00, 0x60, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, - 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, - 0xFF, 0xFF, 0xF0, 0xE0, 0x07, 0xE0, 0x07, 0xF0, 0x0F, 0xF0, 0x0F, 0xD0, - 0x0F, 0xD8, 0x1B, 0xD8, 0x1B, 0xD8, 0x1B, 0xCC, 0x33, 0xCC, 0x33, 0xCC, - 0x33, 0xC6, 0x63, 0xC6, 0x63, 0xC6, 0x63, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC1, 0x83, 0xE0, 0x1F, 0x00, 0xFC, 0x07, 0xE0, 0x3D, 0x81, 0xEE, - 0x0F, 0x30, 0x79, 0xC3, 0xC6, 0x1E, 0x18, 0xF0, 0xE7, 0x83, 0x3C, 0x1D, - 0xE0, 0x6F, 0x01, 0xF8, 0x0F, 0xC0, 0x3E, 0x01, 0xC0, 0x03, 0xE0, 0x0F, - 0xFC, 0x0F, 0x07, 0x86, 0x00, 0xC6, 0x00, 0x33, 0x00, 0x1B, 0x00, 0x07, - 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x36, 0x00, - 0x33, 0x00, 0x18, 0xC0, 0x18, 0x78, 0x3C, 0x1F, 0xFC, 0x03, 0xF8, 0x00, - 0xFF, 0x8F, 0xFE, 0xC0, 0x6C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x07, - 0xFF, 0xEF, 0xFC, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, - 0xC0, 0x0C, 0x00, 0x03, 0xE0, 0x0F, 0xFC, 0x0F, 0x07, 0x86, 0x00, 0xC6, - 0x00, 0x33, 0x00, 0x1B, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0x78, 0x00, 0x36, 0x00, 0x33, 0x01, 0x98, 0xC0, 0xFC, 0x78, - 0x3C, 0x1F, 0xFF, 0x03, 0xF9, 0x80, 0x00, 0x40, 0xFF, 0xC3, 0xFF, 0xCC, - 0x03, 0xB0, 0x06, 0xC0, 0x1B, 0x00, 0x6C, 0x01, 0xB0, 0x0C, 0xFF, 0xE3, - 0xFF, 0xCC, 0x03, 0xB0, 0x06, 0xC0, 0x1B, 0x00, 0x6C, 0x01, 0xB0, 0x06, - 0xC0, 0x1B, 0x00, 0x70, 0x0F, 0xE0, 0x7F, 0xC3, 0x83, 0x9C, 0x07, 0x60, - 0x0D, 0x80, 0x06, 0x00, 0x1E, 0x00, 0x3F, 0x80, 0x3F, 0xC0, 0x0F, 0x80, - 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0xDE, 0x0E, 0x3F, 0xF0, 0x3F, 0x80, - 0xFF, 0xFF, 0xFF, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, - 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x80, 0xEE, 0x0E, 0x3F, 0xE0, 0x7C, 0x00, 0x60, 0x06, 0xC0, - 0x1D, 0xC0, 0x31, 0x80, 0x63, 0x01, 0xC7, 0x03, 0x06, 0x06, 0x0C, 0x1C, - 0x1C, 0x30, 0x18, 0x60, 0x31, 0xC0, 0x73, 0x00, 0x66, 0x00, 0xDC, 0x01, - 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0xE0, 0x30, 0x1D, 0x80, 0xE0, - 0x76, 0x07, 0x81, 0xD8, 0x1E, 0x06, 0x70, 0x7C, 0x18, 0xC1, 0xB0, 0xE3, - 0x0C, 0xC3, 0x8C, 0x33, 0x0C, 0x38, 0xC6, 0x30, 0x67, 0x18, 0xC1, 0x98, - 0x67, 0x06, 0x61, 0xD8, 0x1D, 0x83, 0x60, 0x3C, 0x0D, 0x80, 0xF0, 0x3E, - 0x03, 0xC0, 0x70, 0x0F, 0x01, 0xC0, 0x18, 0x07, 0x00, 0x70, 0x0E, 0x60, - 0x38, 0xE0, 0x60, 0xE1, 0xC0, 0xC3, 0x01, 0xCC, 0x01, 0xF8, 0x01, 0xE0, - 0x03, 0x80, 0x07, 0x80, 0x1F, 0x00, 0x33, 0x00, 0xE7, 0x03, 0x86, 0x06, - 0x0E, 0x1C, 0x0E, 0x70, 0x0C, 0xC0, 0x1C, 0x60, 0x06, 0x70, 0x0E, 0x30, - 0x1C, 0x38, 0x18, 0x1C, 0x38, 0x0C, 0x30, 0x0E, 0x70, 0x06, 0x60, 0x03, - 0xC0, 0x03, 0xC0, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xC0, 0x0E, - 0x00, 0xE0, 0x0E, 0x00, 0x60, 0x07, 0x00, 0x70, 0x07, 0x00, 0x30, 0x03, - 0x80, 0x38, 0x03, 0x80, 0x18, 0x01, 0xC0, 0x1C, 0x00, 0xFF, 0xFF, 0xFF, - 0xC0, 0xFF, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCF, - 0xF0, 0x81, 0x81, 0x02, 0x06, 0x04, 0x08, 0x18, 0x10, 0x20, 0x60, 0x40, - 0x81, 0x81, 0x02, 0x06, 0x04, 0xFF, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, - 0x33, 0x33, 0x33, 0x3F, 0xF0, 0x0C, 0x0E, 0x05, 0x86, 0xC3, 0x21, 0x19, - 0x8C, 0x83, 0xC1, 0x80, 0xFF, 0xFE, 0xE3, 0x8C, 0x30, 0x3F, 0x07, 0xF8, - 0xE1, 0xCC, 0x0C, 0x00, 0xC0, 0x1C, 0x3F, 0xCF, 0x8C, 0xC0, 0xCC, 0x0C, - 0xE3, 0xC7, 0xEF, 0x3C, 0x70, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, - 0x0C, 0xF8, 0xDF, 0xCF, 0x0E, 0xE0, 0x7C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xE0, 0x6F, 0x0E, 0xDF, 0xCC, 0xF8, 0x1F, 0x0F, 0xE7, 0x1B, - 0x83, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x38, 0x37, 0x1C, 0xFE, 0x1F, - 0x00, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x3C, 0xCF, 0xFB, 0x8F, - 0xE0, 0xF8, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF8, 0x3B, 0x8F, 0x3F, - 0x63, 0xCC, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x3C, 0x07, 0xFF, 0xFF, 0xFE, - 0x00, 0xC0, 0x1C, 0x0D, 0xC3, 0x1F, 0xE1, 0xF0, 0x3B, 0xD8, 0xC6, 0x7F, - 0xEC, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x00, 0x1E, 0x67, 0xFD, 0xC7, - 0xF0, 0x7C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x7C, 0x1D, 0xC7, 0x9F, - 0xB1, 0xE6, 0x00, 0xC0, 0x3E, 0x0E, 0x7F, 0xC7, 0xE0, 0xC0, 0x30, 0x0C, - 0x03, 0x00, 0xC0, 0x33, 0xCD, 0xFB, 0xC7, 0xE0, 0xF0, 0x3C, 0x0F, 0x03, - 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x30, 0xF0, 0x3F, 0xFF, 0xFF, - 0xF0, 0x33, 0x00, 0x03, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x3F, - 0xE0, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x01, 0x83, 0x30, 0xC6, 0x30, - 0xCC, 0x1B, 0x83, 0xF0, 0x77, 0x0C, 0x61, 0x8E, 0x30, 0xE6, 0x0C, 0xC1, - 0xD8, 0x18, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xCF, 0x1F, 0x6F, 0xDF, 0xFC, - 0x78, 0xFC, 0x18, 0x3C, 0x0C, 0x1E, 0x06, 0x0F, 0x03, 0x07, 0x81, 0x83, - 0xC0, 0xC1, 0xE0, 0x60, 0xF0, 0x30, 0x78, 0x18, 0x3C, 0x0C, 0x18, 0xCF, - 0x37, 0xEF, 0x1F, 0x83, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, - 0x0F, 0x03, 0xC0, 0xC0, 0x1F, 0x07, 0xF1, 0xC7, 0x70, 0x7C, 0x07, 0x80, - 0xF0, 0x1E, 0x03, 0xC0, 0x7C, 0x1D, 0xC7, 0x1F, 0xC1, 0xF0, 0xCF, 0x8D, - 0xFC, 0xF0, 0xEE, 0x06, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3E, - 0x07, 0xF0, 0xEF, 0xFC, 0xCF, 0x8C, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x00, - 0x1E, 0x67, 0xFD, 0xC7, 0xF0, 0x7C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, - 0x7C, 0x1D, 0xC7, 0x9F, 0xF1, 0xE6, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, - 0xCF, 0x7F, 0x38, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC0, 0x3E, 0x1F, - 0xEE, 0x1B, 0x00, 0xC0, 0x3C, 0x07, 0xF0, 0x3E, 0x01, 0xF0, 0x3E, 0x1D, - 0xFE, 0x3E, 0x00, 0x63, 0x19, 0xFF, 0xB1, 0x8C, 0x63, 0x18, 0xC6, 0x31, - 0xE7, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, - 0xF0, 0x7E, 0x3D, 0xFB, 0x3C, 0xC0, 0xE0, 0x66, 0x06, 0x60, 0x67, 0x0C, - 0x30, 0xC3, 0x0C, 0x39, 0x81, 0x98, 0x19, 0x81, 0xF0, 0x0F, 0x00, 0xE0, - 0x0E, 0x00, 0xC1, 0xC1, 0xB0, 0xE1, 0xD8, 0x70, 0xCC, 0x2C, 0x66, 0x36, - 0x31, 0x9B, 0x18, 0xCD, 0x98, 0x64, 0x6C, 0x16, 0x36, 0x0F, 0x1A, 0x07, - 0x8F, 0x03, 0x83, 0x80, 0xC1, 0xC0, 0x60, 0xEE, 0x18, 0xC6, 0x0C, 0xC1, - 0xF0, 0x1C, 0x01, 0x80, 0x78, 0x1B, 0x03, 0x30, 0xC7, 0x30, 0x66, 0x06, - 0xE0, 0x6C, 0x0D, 0x83, 0x38, 0x63, 0x0C, 0x63, 0x0E, 0x60, 0xCC, 0x1B, - 0x03, 0x60, 0x3C, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, 0xE0, 0x78, 0x0E, - 0x00, 0xFF, 0xFF, 0xF0, 0x18, 0x0C, 0x07, 0x03, 0x81, 0xC0, 0x60, 0x30, - 0x18, 0x0E, 0x03, 0xFF, 0xFF, 0xC0, 0x19, 0xCC, 0x63, 0x18, 0xC6, 0x31, - 0x99, 0x86, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x1C, 0x60, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0xC7, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x0C, 0x33, 0x31, - 0x8C, 0x63, 0x18, 0xC6, 0x73, 0x00, 0x70, 0x3E, 0x09, 0xE4, 0x1F, 0x03, - 0x80}; - -const GFXglyph FreeSans12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 2, 18, 8, 3, -17}, // 0x21 '!' - {5, 6, 6, 8, 1, -16}, // 0x22 '"' - {10, 13, 16, 13, 0, -15}, // 0x23 '#' - {36, 11, 20, 13, 1, -17}, // 0x24 '$' - {64, 20, 17, 21, 1, -16}, // 0x25 '%' - {107, 14, 17, 16, 1, -16}, // 0x26 '&' - {137, 2, 6, 5, 1, -16}, // 0x27 ''' - {139, 5, 23, 8, 2, -17}, // 0x28 '(' - {154, 5, 23, 8, 1, -17}, // 0x29 ')' - {169, 7, 7, 9, 1, -17}, // 0x2A '*' - {176, 10, 11, 14, 2, -10}, // 0x2B '+' - {190, 2, 6, 7, 2, -1}, // 0x2C ',' - {192, 6, 2, 8, 1, -7}, // 0x2D '-' - {194, 2, 2, 6, 2, -1}, // 0x2E '.' - {195, 7, 18, 7, 0, -17}, // 0x2F '/' - {211, 11, 17, 13, 1, -16}, // 0x30 '0' - {235, 5, 17, 13, 3, -16}, // 0x31 '1' - {246, 11, 17, 13, 1, -16}, // 0x32 '2' - {270, 11, 17, 13, 1, -16}, // 0x33 '3' - {294, 11, 17, 13, 1, -16}, // 0x34 '4' - {318, 11, 17, 13, 1, -16}, // 0x35 '5' - {342, 11, 17, 13, 1, -16}, // 0x36 '6' - {366, 11, 17, 13, 1, -16}, // 0x37 '7' - {390, 11, 17, 13, 1, -16}, // 0x38 '8' - {414, 11, 17, 13, 1, -16}, // 0x39 '9' - {438, 2, 13, 6, 2, -12}, // 0x3A ':' - {442, 2, 16, 6, 2, -11}, // 0x3B ';' - {446, 12, 12, 14, 1, -11}, // 0x3C '<' - {464, 12, 6, 14, 1, -8}, // 0x3D '=' - {473, 12, 12, 14, 1, -11}, // 0x3E '>' - {491, 10, 18, 13, 2, -17}, // 0x3F '?' - {514, 22, 21, 24, 1, -17}, // 0x40 '@' - {572, 16, 18, 16, 0, -17}, // 0x41 'A' - {608, 13, 18, 16, 2, -17}, // 0x42 'B' - {638, 15, 18, 17, 1, -17}, // 0x43 'C' - {672, 14, 18, 17, 2, -17}, // 0x44 'D' - {704, 12, 18, 15, 2, -17}, // 0x45 'E' - {731, 11, 18, 14, 2, -17}, // 0x46 'F' - {756, 16, 18, 18, 1, -17}, // 0x47 'G' - {792, 13, 18, 17, 2, -17}, // 0x48 'H' - {822, 2, 18, 7, 2, -17}, // 0x49 'I' - {827, 9, 18, 13, 1, -17}, // 0x4A 'J' - {848, 14, 18, 16, 2, -17}, // 0x4B 'K' - {880, 10, 18, 14, 2, -17}, // 0x4C 'L' - {903, 16, 18, 20, 2, -17}, // 0x4D 'M' - {939, 13, 18, 18, 2, -17}, // 0x4E 'N' - {969, 17, 18, 19, 1, -17}, // 0x4F 'O' - {1008, 12, 18, 16, 2, -17}, // 0x50 'P' - {1035, 17, 19, 19, 1, -17}, // 0x51 'Q' - {1076, 14, 18, 17, 2, -17}, // 0x52 'R' - {1108, 14, 18, 16, 1, -17}, // 0x53 'S' - {1140, 12, 18, 15, 1, -17}, // 0x54 'T' - {1167, 13, 18, 17, 2, -17}, // 0x55 'U' - {1197, 15, 18, 15, 0, -17}, // 0x56 'V' - {1231, 22, 18, 22, 0, -17}, // 0x57 'W' - {1281, 15, 18, 16, 0, -17}, // 0x58 'X' - {1315, 16, 18, 16, 0, -17}, // 0x59 'Y' - {1351, 13, 18, 15, 1, -17}, // 0x5A 'Z' - {1381, 4, 23, 7, 2, -17}, // 0x5B '[' - {1393, 7, 18, 7, 0, -17}, // 0x5C '\' - {1409, 4, 23, 7, 1, -17}, // 0x5D ']' - {1421, 9, 9, 11, 1, -16}, // 0x5E '^' - {1432, 15, 1, 13, -1, 4}, // 0x5F '_' - {1434, 5, 4, 6, 1, -17}, // 0x60 '`' - {1437, 12, 13, 13, 1, -12}, // 0x61 'a' - {1457, 12, 18, 13, 1, -17}, // 0x62 'b' - {1484, 10, 13, 12, 1, -12}, // 0x63 'c' - {1501, 11, 18, 13, 1, -17}, // 0x64 'd' - {1526, 11, 13, 13, 1, -12}, // 0x65 'e' - {1544, 5, 18, 7, 1, -17}, // 0x66 'f' - {1556, 11, 18, 13, 1, -12}, // 0x67 'g' - {1581, 10, 18, 13, 1, -17}, // 0x68 'h' - {1604, 2, 18, 5, 2, -17}, // 0x69 'i' - {1609, 4, 23, 6, 0, -17}, // 0x6A 'j' - {1621, 11, 18, 12, 1, -17}, // 0x6B 'k' - {1646, 2, 18, 5, 1, -17}, // 0x6C 'l' - {1651, 17, 13, 19, 1, -12}, // 0x6D 'm' - {1679, 10, 13, 13, 1, -12}, // 0x6E 'n' - {1696, 11, 13, 13, 1, -12}, // 0x6F 'o' - {1714, 12, 17, 13, 1, -12}, // 0x70 'p' - {1740, 11, 17, 13, 1, -12}, // 0x71 'q' - {1764, 6, 13, 8, 1, -12}, // 0x72 'r' - {1774, 10, 13, 12, 1, -12}, // 0x73 's' - {1791, 5, 16, 7, 1, -15}, // 0x74 't' - {1801, 10, 13, 13, 1, -12}, // 0x75 'u' - {1818, 12, 13, 12, 0, -12}, // 0x76 'v' - {1838, 17, 13, 17, 0, -12}, // 0x77 'w' - {1866, 11, 13, 11, 0, -12}, // 0x78 'x' - {1884, 11, 18, 11, 0, -12}, // 0x79 'y' - {1909, 10, 13, 12, 1, -12}, // 0x7A 'z' - {1926, 5, 23, 8, 1, -17}, // 0x7B '{' - {1941, 2, 23, 6, 2, -17}, // 0x7C '|' - {1947, 5, 23, 8, 2, -17}, // 0x7D '}' - {1962, 10, 5, 12, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSans12pt7b PROGMEM = {(uint8_t *)FreeSans12pt7bBitmaps, - (GFXglyph *)FreeSans12pt7bGlyphs, 0x20, - 0x7E, 29}; - -// Approx. 2641 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans18pt7b.h deleted file mode 100644 index f3a9606..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans18pt7b.h +++ /dev/null @@ -1,454 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans18pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE9, 0x20, 0x3F, 0xFC, 0xE3, 0xF1, - 0xF8, 0xFC, 0x7E, 0x3F, 0x1F, 0x8E, 0x82, 0x41, 0x00, 0x01, 0xC3, 0x80, - 0x38, 0x70, 0x06, 0x0E, 0x00, 0xC1, 0x80, 0x38, 0x70, 0x07, 0x0E, 0x0F, - 0xFF, 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE0, 0xE1, 0xC0, 0x1C, 0x38, 0x03, - 0x87, 0x00, 0x70, 0xE0, 0x0C, 0x18, 0x3F, 0xFF, 0xF7, 0xFF, 0xFE, 0xFF, - 0xFF, 0xC1, 0xC3, 0x80, 0x30, 0x60, 0x06, 0x0C, 0x01, 0xC3, 0x80, 0x38, - 0x70, 0x07, 0x0E, 0x00, 0xC1, 0x80, 0x03, 0x00, 0x0F, 0xC0, 0x3F, 0xF0, - 0x3F, 0xF8, 0x7B, 0x3C, 0xF3, 0x1C, 0xE3, 0x0E, 0xE3, 0x0E, 0xE3, 0x0E, - 0xE3, 0x00, 0xE3, 0x00, 0xF3, 0x00, 0x7B, 0x00, 0x7F, 0x80, 0x1F, 0xF0, - 0x07, 0xFC, 0x03, 0x7E, 0x03, 0x0F, 0x03, 0x07, 0xE3, 0x07, 0xE3, 0x07, - 0xE3, 0x07, 0xE3, 0x0F, 0x73, 0x3E, 0x7F, 0xFC, 0x3F, 0xF8, 0x0F, 0xE0, - 0x03, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x78, 0x00, - 0xE0, 0x0F, 0xF0, 0x06, 0x00, 0xFF, 0xC0, 0x70, 0x07, 0x0E, 0x07, 0x00, - 0x70, 0x38, 0x38, 0x03, 0x00, 0xC3, 0x80, 0x18, 0x06, 0x1C, 0x00, 0xE0, - 0x71, 0xC0, 0x03, 0x87, 0x8C, 0x00, 0x1F, 0xF8, 0xE0, 0x00, 0x7F, 0x86, - 0x00, 0x01, 0xF8, 0x70, 0x00, 0x00, 0x03, 0x03, 0xC0, 0x00, 0x38, 0x7F, - 0x80, 0x01, 0x87, 0xFE, 0x00, 0x1C, 0x38, 0x70, 0x00, 0xC3, 0x81, 0xC0, - 0x0E, 0x18, 0x06, 0x00, 0xE0, 0xC0, 0x30, 0x07, 0x07, 0x03, 0x80, 0x70, - 0x1C, 0x38, 0x03, 0x80, 0xFF, 0xC0, 0x38, 0x03, 0xFC, 0x01, 0x80, 0x07, - 0x80, 0x01, 0xF0, 0x00, 0x7F, 0x80, 0x0F, 0xFC, 0x01, 0xE1, 0xE0, 0x1C, - 0x0E, 0x01, 0xC0, 0xE0, 0x1C, 0x0E, 0x01, 0xE1, 0xE0, 0x0E, 0x3C, 0x00, - 0x77, 0x80, 0x07, 0xF0, 0x00, 0x7C, 0x00, 0x0F, 0xE0, 0x03, 0xCF, 0x1C, - 0x78, 0x79, 0xC7, 0x03, 0xDC, 0xE0, 0x1F, 0x8E, 0x00, 0xF8, 0xE0, 0x0F, - 0x0E, 0x00, 0x70, 0xF0, 0x0F, 0x87, 0xC3, 0xFC, 0x7F, 0xFD, 0xC3, 0xFF, - 0x0E, 0x0F, 0xC0, 0xF0, 0xFF, 0xFF, 0xFA, 0x40, 0x06, 0x06, 0x0C, 0x0C, - 0x18, 0x18, 0x38, 0x30, 0x70, 0x70, 0x70, 0x60, 0xE0, 0xE0, 0xE0, 0xE0, - 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0x60, 0x70, 0x70, 0x70, 0x30, 0x38, 0x18, - 0x18, 0x0C, 0x0C, 0x06, 0x03, 0xC0, 0x60, 0x30, 0x30, 0x38, 0x18, 0x1C, - 0x0C, 0x0E, 0x0E, 0x0E, 0x06, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, - 0x07, 0x07, 0x06, 0x0E, 0x0E, 0x0E, 0x0C, 0x1C, 0x18, 0x38, 0x30, 0x30, - 0x60, 0xC0, 0x0C, 0x03, 0x00, 0xC3, 0xB7, 0xFF, 0xC7, 0x81, 0xE0, 0xEC, - 0x73, 0x88, 0x40, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0xFF, - 0xF6, 0xDA, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xC0, 0x30, 0x18, - 0x06, 0x01, 0x80, 0xC0, 0x30, 0x0C, 0x06, 0x01, 0x80, 0x60, 0x30, 0x0C, - 0x03, 0x00, 0xC0, 0x60, 0x18, 0x06, 0x03, 0x00, 0xC0, 0x30, 0x18, 0x06, - 0x01, 0x80, 0xC0, 0x30, 0x00, 0x07, 0xE0, 0x0F, 0xF8, 0x1F, 0xFC, 0x3C, - 0x3C, 0x78, 0x1E, 0x70, 0x0E, 0x70, 0x0E, 0xE0, 0x07, 0xE0, 0x07, 0xE0, - 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, - 0x07, 0xE0, 0x07, 0xE0, 0x0F, 0x70, 0x0E, 0x70, 0x0E, 0x78, 0x1E, 0x3C, - 0x3C, 0x1F, 0xF8, 0x1F, 0xF0, 0x07, 0xE0, 0x03, 0x03, 0x07, 0x0F, 0x3F, - 0xFF, 0xFF, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0xE0, 0x1F, 0xF8, - 0x3F, 0xFC, 0x7C, 0x3E, 0x70, 0x0F, 0xF0, 0x0F, 0xE0, 0x07, 0xE0, 0x07, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF8, - 0x03, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x70, 0x00, - 0x60, 0x00, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xF0, - 0x07, 0xFE, 0x07, 0xFF, 0x87, 0x83, 0xC3, 0x80, 0xF3, 0x80, 0x39, 0xC0, - 0x1C, 0xE0, 0x0E, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x7F, 0x00, 0x3F, 0x00, - 0x1F, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, 0xF0, 0x01, - 0xF8, 0x00, 0xFE, 0x00, 0x77, 0x00, 0x73, 0xE0, 0xF8, 0xFF, 0xF8, 0x3F, - 0xF8, 0x07, 0xF0, 0x00, 0x00, 0x38, 0x00, 0x38, 0x00, 0x78, 0x00, 0xF8, - 0x00, 0xF8, 0x01, 0xF8, 0x03, 0xB8, 0x03, 0x38, 0x07, 0x38, 0x0E, 0x38, - 0x1C, 0x38, 0x18, 0x38, 0x38, 0x38, 0x70, 0x38, 0x60, 0x38, 0xE0, 0x38, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x1F, 0xFF, 0x0F, 0xFF, 0x8F, 0xFF, - 0xC7, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x39, - 0xF0, 0x3F, 0xFE, 0x1F, 0xFF, 0x8F, 0x83, 0xE7, 0x00, 0xF0, 0x00, 0x3C, - 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xFC, 0x00, - 0xEF, 0x00, 0x73, 0xC0, 0xF0, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xE0, 0x00, - 0x03, 0xE0, 0x0F, 0xF8, 0x1F, 0xFC, 0x3C, 0x1E, 0x38, 0x0E, 0x70, 0x0E, - 0x70, 0x00, 0x60, 0x00, 0xE0, 0x00, 0xE3, 0xE0, 0xEF, 0xF8, 0xFF, 0xFC, - 0xFC, 0x3E, 0xF0, 0x0E, 0xF0, 0x0F, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, - 0x60, 0x07, 0x70, 0x0F, 0x70, 0x0E, 0x3C, 0x3E, 0x3F, 0xFC, 0x1F, 0xF8, - 0x07, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x06, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x18, 0x00, 0x38, 0x00, 0x70, 0x00, 0x60, 0x00, 0xE0, - 0x00, 0xC0, 0x01, 0xC0, 0x01, 0x80, 0x03, 0x80, 0x03, 0x80, 0x07, 0x00, - 0x07, 0x00, 0x07, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, 0x87, 0x83, - 0xC7, 0x80, 0xF3, 0x80, 0x39, 0xC0, 0x1C, 0xE0, 0x0E, 0x78, 0x0F, 0x1E, - 0x0F, 0x07, 0xFF, 0x01, 0xFF, 0x03, 0xFF, 0xE3, 0xE0, 0xF9, 0xC0, 0x1D, - 0xC0, 0x0F, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0xF7, 0x00, - 0x73, 0xE0, 0xF8, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x07, 0xE0, - 0x1F, 0xF8, 0x3F, 0xFC, 0x7C, 0x3C, 0x70, 0x0E, 0xF0, 0x0E, 0xE0, 0x06, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x0F, 0x70, 0x0F, 0x78, 0x3F, - 0x3F, 0xFF, 0x1F, 0xF7, 0x07, 0xC7, 0x00, 0x07, 0x00, 0x06, 0x00, 0x0E, - 0x70, 0x0E, 0x70, 0x1C, 0x78, 0x3C, 0x3F, 0xF8, 0x1F, 0xF0, 0x07, 0xC0, - 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x07, 0xFF, 0x80, 0xFF, 0xF0, 0x00, 0x00, - 0x00, 0x07, 0xFF, 0xB6, 0xD6, 0x00, 0x00, 0x80, 0x03, 0xC0, 0x07, 0xE0, - 0x0F, 0xC0, 0x3F, 0x80, 0x7E, 0x00, 0xFC, 0x01, 0xF0, 0x00, 0xE0, 0x00, - 0x7C, 0x00, 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x07, 0xF0, 0x00, - 0x7E, 0x00, 0x0F, 0x00, 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x80, 0x80, 0x00, 0x70, 0x00, 0x3E, 0x00, 0x0F, 0xE0, 0x00, 0xFC, - 0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0x80, 0x0F, 0xC0, - 0x1F, 0x80, 0x7F, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x01, 0xC0, 0x00, - 0x80, 0x00, 0x00, 0x0F, 0xC0, 0x7F, 0xE1, 0xFF, 0xE3, 0xC3, 0xEF, 0x01, - 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0x00, 0x0E, 0x00, 0x38, 0x00, 0xF0, - 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x00, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x00, - 0x00, 0xFF, 0xFF, 0xC0, 0x01, 0xF8, 0x0F, 0xE0, 0x03, 0xE0, 0x01, 0xF0, - 0x07, 0x80, 0x00, 0xF8, 0x0F, 0x00, 0x00, 0x3C, 0x1E, 0x00, 0x00, 0x1E, - 0x3C, 0x03, 0xE0, 0x1E, 0x38, 0x0F, 0xF3, 0x8E, 0x78, 0x1E, 0x3F, 0x0F, - 0x70, 0x38, 0x1F, 0x07, 0x70, 0x78, 0x0F, 0x07, 0xE0, 0x70, 0x0E, 0x07, - 0xE0, 0x70, 0x0E, 0x07, 0xE0, 0xE0, 0x0E, 0x07, 0xE0, 0xE0, 0x1C, 0x07, - 0xE0, 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x38, 0x1C, - 0xF0, 0x70, 0x78, 0x3C, 0x70, 0x78, 0xFC, 0x78, 0x78, 0x3F, 0xDF, 0xF0, - 0x38, 0x1F, 0x0F, 0xC0, 0x3C, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x07, 0xF0, 0x0E, 0x00, 0x01, 0xFF, 0xFE, 0x00, - 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x03, - 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xDC, 0x00, 0x07, 0x78, - 0x00, 0x3C, 0xE0, 0x00, 0xE3, 0x80, 0x03, 0x8F, 0x00, 0x1E, 0x1C, 0x00, - 0x70, 0x70, 0x01, 0xC1, 0xE0, 0x0E, 0x03, 0x80, 0x38, 0x0E, 0x00, 0xE0, - 0x3C, 0x07, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0xFF, 0xFF, 0x83, 0xC0, 0x0E, - 0x0E, 0x00, 0x3C, 0x78, 0x00, 0xF1, 0xE0, 0x01, 0xC7, 0x00, 0x07, 0xBC, - 0x00, 0x1E, 0xF0, 0x00, 0x3B, 0x80, 0x00, 0xF0, 0xFF, 0xFC, 0x1F, 0xFF, - 0xE3, 0xFF, 0xFE, 0x70, 0x03, 0xCE, 0x00, 0x3D, 0xC0, 0x03, 0xB8, 0x00, - 0x77, 0x00, 0x0E, 0xE0, 0x01, 0xDC, 0x00, 0x73, 0x80, 0x1E, 0x7F, 0xFF, - 0x8F, 0xFF, 0xF1, 0xFF, 0xFF, 0x38, 0x00, 0xF7, 0x00, 0x0E, 0xE0, 0x00, - 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x03, - 0xF8, 0x00, 0xF7, 0xFF, 0xFC, 0xFF, 0xFF, 0x1F, 0xFF, 0x80, 0x00, 0xFF, - 0x00, 0x0F, 0xFF, 0x00, 0xFF, 0xFE, 0x07, 0xE0, 0x7C, 0x3E, 0x00, 0x78, - 0xF0, 0x00, 0xE7, 0x80, 0x03, 0xDC, 0x00, 0x07, 0x70, 0x00, 0x03, 0x80, - 0x00, 0x0E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, - 0x0E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x1D, 0xC0, 0x00, 0x77, - 0x00, 0x03, 0xDE, 0x00, 0x0E, 0x3C, 0x00, 0x78, 0xF8, 0x03, 0xC1, 0xF8, - 0x1F, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x03, 0xF8, 0x00, 0xFF, 0xF8, - 0x0F, 0xFF, 0xE0, 0xFF, 0xFF, 0x0E, 0x00, 0xF8, 0xE0, 0x03, 0xCE, 0x00, - 0x1C, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xFE, 0x00, 0x07, 0xE0, - 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, - 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x0F, 0xE0, 0x00, 0xEE, 0x00, 0x0E, - 0xE0, 0x01, 0xEE, 0x00, 0x3C, 0xE0, 0x0F, 0x8F, 0xFF, 0xF0, 0xFF, 0xFE, - 0x0F, 0xFF, 0x80, 0xFF, 0xFF, 0xBF, 0xFF, 0xEF, 0xFF, 0xFB, 0x80, 0x00, - 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, - 0x00, 0x0E, 0x00, 0x03, 0xFF, 0xFE, 0xFF, 0xFF, 0xBF, 0xFF, 0xEE, 0x00, - 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, - 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x0E, 0x00, - 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, - 0x00, 0x1F, 0xFF, 0xCF, 0xFF, 0xE7, 0xFF, 0xF3, 0x80, 0x01, 0xC0, 0x00, - 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, - 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x00, 0x00, 0x7F, - 0x80, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x0F, 0x80, 0xFC, 0x1E, 0x00, - 0x3E, 0x3C, 0x00, 0x0E, 0x78, 0x00, 0x0F, 0x70, 0x00, 0x07, 0x70, 0x00, - 0x00, 0xE0, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xE0, 0x03, - 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0x70, 0x00, 0x07, 0x70, 0x00, 0x0F, 0x78, 0x00, 0x0F, 0x3C, 0x00, - 0x1F, 0x1E, 0x00, 0x3F, 0x0F, 0xC0, 0xF7, 0x07, 0xFF, 0xE7, 0x03, 0xFF, - 0xC3, 0x00, 0xFF, 0x03, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, - 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, - 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, - 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, - 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1C, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, - 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1F, 0x80, 0x7E, - 0x01, 0xF8, 0x07, 0xE0, 0x1F, 0xC0, 0xF7, 0x87, 0x9F, 0xFE, 0x3F, 0xF0, - 0x3F, 0x00, 0xE0, 0x01, 0xEE, 0x00, 0x3C, 0xE0, 0x07, 0x8E, 0x00, 0xF0, - 0xE0, 0x1E, 0x0E, 0x03, 0xE0, 0xE0, 0x7C, 0x0E, 0x0F, 0x80, 0xE1, 0xF0, - 0x0E, 0x1E, 0x00, 0xE3, 0xC0, 0x0E, 0x7C, 0x00, 0xEF, 0xE0, 0x0F, 0xCE, - 0x00, 0xF8, 0xF0, 0x0F, 0x07, 0x80, 0xE0, 0x3C, 0x0E, 0x03, 0xC0, 0xE0, - 0x1E, 0x0E, 0x00, 0xF0, 0xE0, 0x0F, 0x0E, 0x00, 0x78, 0xE0, 0x03, 0xCE, - 0x00, 0x3C, 0xE0, 0x01, 0xEE, 0x00, 0x0F, 0xE0, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, - 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, - 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, - 0x38, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xF8, 0x00, 0x1F, 0xF8, - 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xFC, 0x00, 0x3F, 0xFC, 0x00, 0x3F, 0xFC, - 0x00, 0x3F, 0xEE, 0x00, 0x77, 0xEE, 0x00, 0x77, 0xEE, 0x00, 0x77, 0xE7, - 0x00, 0xE7, 0xE7, 0x00, 0xE7, 0xE7, 0x00, 0xE7, 0xE3, 0x81, 0xC7, 0xE3, - 0x81, 0xC7, 0xE3, 0x81, 0xC7, 0xE1, 0xC3, 0x87, 0xE1, 0xC3, 0x87, 0xE1, - 0xC3, 0x87, 0xE0, 0xE7, 0x07, 0xE0, 0xE7, 0x07, 0xE0, 0xE7, 0x07, 0xE0, - 0x7E, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x3C, 0x07, 0xE0, - 0x3C, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0xC0, 0x07, - 0xFC, 0x00, 0x7F, 0xE0, 0x07, 0xEF, 0x00, 0x7E, 0x70, 0x07, 0xE7, 0x80, - 0x7E, 0x3C, 0x07, 0xE1, 0xC0, 0x7E, 0x1E, 0x07, 0xE0, 0xE0, 0x7E, 0x0F, - 0x07, 0xE0, 0x78, 0x7E, 0x03, 0x87, 0xE0, 0x3C, 0x7E, 0x01, 0xE7, 0xE0, - 0x0E, 0x7E, 0x00, 0xF7, 0xE0, 0x07, 0xFE, 0x00, 0x3F, 0xE0, 0x03, 0xFE, - 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x0F, 0x00, 0x7F, 0x00, 0x01, 0xFF, - 0xF0, 0x01, 0xFF, 0xFC, 0x01, 0xF0, 0x1F, 0x01, 0xE0, 0x03, 0xC1, 0xE0, - 0x00, 0xF1, 0xE0, 0x00, 0x3C, 0xE0, 0x00, 0x0E, 0x70, 0x00, 0x07, 0x70, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, - 0xB8, 0x00, 0x03, 0x9C, 0x00, 0x01, 0xCF, 0x00, 0x01, 0xE3, 0xC0, 0x01, - 0xE0, 0xF0, 0x01, 0xE0, 0x3E, 0x03, 0xE0, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFF, 0xFC, 0x3F, 0xFF, 0x8F, 0xFF, 0xF3, - 0x80, 0x3E, 0xE0, 0x03, 0xF8, 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, - 0x01, 0xF8, 0x00, 0x7E, 0x00, 0x3F, 0x80, 0x1E, 0xFF, 0xFF, 0x3F, 0xFF, - 0x8F, 0xFF, 0xC3, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, - 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, - 0x00, 0x38, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xF0, 0x01, 0xFF, - 0xFC, 0x01, 0xF0, 0x1F, 0x01, 0xE0, 0x03, 0xC1, 0xE0, 0x00, 0xF1, 0xE0, - 0x00, 0x3C, 0xE0, 0x00, 0x0E, 0x70, 0x00, 0x07, 0x70, 0x00, 0x01, 0xF8, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xB8, 0x00, 0x03, - 0x9C, 0x00, 0x01, 0xCF, 0x00, 0x39, 0xE3, 0xC0, 0x1F, 0xE0, 0xF0, 0x07, - 0xE0, 0x3E, 0x03, 0xF0, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xEE, 0x00, 0x3F, - 0x83, 0x80, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x20, 0xFF, 0xFE, 0x0F, 0xFF, - 0xF8, 0xFF, 0xFF, 0xCE, 0x00, 0x3C, 0xE0, 0x01, 0xEE, 0x00, 0x0E, 0xE0, - 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x01, 0xCE, - 0x00, 0x3C, 0xFF, 0xFF, 0x8F, 0xFF, 0xF0, 0xFF, 0xFF, 0x8E, 0x00, 0x3C, - 0xE0, 0x01, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, - 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xEE, 0x00, 0x0E, 0xE0, 0x00, 0xFE, 0x00, - 0x0F, 0x03, 0xFC, 0x00, 0xFF, 0xF0, 0x1F, 0xFF, 0x83, 0xE0, 0x7C, 0x38, - 0x01, 0xE7, 0x00, 0x0E, 0x70, 0x00, 0xE7, 0x00, 0x00, 0x70, 0x00, 0x07, - 0x80, 0x00, 0x3E, 0x00, 0x01, 0xFE, 0x00, 0x0F, 0xFE, 0x00, 0x3F, 0xF8, - 0x00, 0x3F, 0xE0, 0x00, 0x3E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0xE0, 0x00, - 0x7E, 0x00, 0x07, 0xF0, 0x00, 0x77, 0x80, 0x0E, 0x7C, 0x03, 0xE3, 0xFF, - 0xFC, 0x1F, 0xFF, 0x80, 0x3F, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x80, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, - 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, - 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, - 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x38, - 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0xE0, 0x00, 0xFC, 0x00, - 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, - 0x3F, 0x00, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, - 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, - 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x1E, 0xF0, 0x07, - 0x9F, 0x01, 0xF1, 0xFF, 0xFC, 0x1F, 0xFE, 0x00, 0x7F, 0x00, 0xE0, 0x00, - 0x7F, 0x80, 0x03, 0xFC, 0x00, 0x1C, 0xE0, 0x01, 0xE7, 0x80, 0x0F, 0x3C, - 0x00, 0x70, 0xE0, 0x07, 0x87, 0x80, 0x3C, 0x1C, 0x01, 0xC0, 0xE0, 0x0E, - 0x07, 0x80, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x83, 0x80, 0x1C, - 0x1C, 0x00, 0xE0, 0xE0, 0x07, 0x8E, 0x00, 0x1C, 0x70, 0x00, 0xE3, 0x80, - 0x07, 0xB8, 0x00, 0x1D, 0xC0, 0x00, 0xEE, 0x00, 0x07, 0xE0, 0x00, 0x1F, - 0x00, 0x00, 0xF8, 0x00, 0x03, 0x80, 0x00, 0x70, 0x03, 0xC0, 0x0F, 0x70, - 0x03, 0xC0, 0x0F, 0x78, 0x03, 0xE0, 0x0F, 0x78, 0x03, 0xE0, 0x0E, 0x38, - 0x07, 0xE0, 0x0E, 0x38, 0x07, 0xF0, 0x1E, 0x3C, 0x07, 0x70, 0x1E, 0x3C, - 0x07, 0x70, 0x1C, 0x1C, 0x0E, 0x70, 0x1C, 0x1C, 0x0E, 0x38, 0x3C, 0x1C, - 0x0E, 0x38, 0x3C, 0x1E, 0x1E, 0x38, 0x38, 0x0E, 0x1C, 0x38, 0x38, 0x0E, - 0x1C, 0x1C, 0x38, 0x0E, 0x1C, 0x1C, 0x78, 0x0F, 0x3C, 0x1C, 0x70, 0x07, - 0x38, 0x0E, 0x70, 0x07, 0x38, 0x0E, 0x70, 0x07, 0x38, 0x0E, 0x70, 0x07, - 0x70, 0x0E, 0xE0, 0x03, 0xF0, 0x07, 0xE0, 0x03, 0xF0, 0x07, 0xE0, 0x03, - 0xF0, 0x07, 0xE0, 0x03, 0xE0, 0x03, 0xC0, 0x01, 0xE0, 0x03, 0xC0, 0x01, - 0xE0, 0x03, 0xC0, 0xF0, 0x00, 0x7B, 0xC0, 0x07, 0x8F, 0x00, 0x38, 0x78, - 0x03, 0xC1, 0xE0, 0x3C, 0x07, 0x81, 0xC0, 0x3C, 0x1E, 0x00, 0xF1, 0xE0, - 0x03, 0x8E, 0x00, 0x1E, 0xF0, 0x00, 0x7F, 0x00, 0x01, 0xF0, 0x00, 0x0F, - 0x80, 0x00, 0x7C, 0x00, 0x07, 0xF0, 0x00, 0x3B, 0x80, 0x03, 0xDE, 0x00, - 0x3C, 0x78, 0x01, 0xC1, 0xC0, 0x1E, 0x0F, 0x01, 0xE0, 0x3C, 0x0E, 0x00, - 0xE0, 0xF0, 0x07, 0x8F, 0x00, 0x1E, 0x70, 0x00, 0xF7, 0x80, 0x03, 0xC0, - 0xF0, 0x00, 0x3C, 0xF0, 0x00, 0x78, 0xF0, 0x01, 0xE1, 0xE0, 0x03, 0x81, - 0xE0, 0x0F, 0x01, 0xC0, 0x1C, 0x03, 0xC0, 0x78, 0x03, 0xC1, 0xE0, 0x07, - 0x83, 0x80, 0x07, 0x8F, 0x00, 0x07, 0x1C, 0x00, 0x0F, 0x78, 0x00, 0x0E, - 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, - 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x70, 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0x80, 0x00, - 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, - 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x7C, 0x00, - 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xF8, 0xE3, 0x8E, 0x38, 0xE3, - 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, - 0x8E, 0x38, 0xE3, 0x8F, 0xFF, 0xFC, 0xC0, 0x30, 0x06, 0x01, 0x80, 0x60, - 0x0C, 0x03, 0x00, 0xC0, 0x18, 0x06, 0x01, 0x80, 0x20, 0x0C, 0x03, 0x00, - 0x40, 0x18, 0x06, 0x01, 0x80, 0x30, 0x0C, 0x03, 0x00, 0x60, 0x18, 0x06, - 0x00, 0xC0, 0x30, 0xFF, 0xFF, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, - 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, - 0x1C, 0x7F, 0xFF, 0xFC, 0x07, 0x00, 0x78, 0x03, 0xC0, 0x3F, 0x01, 0xD8, - 0x0C, 0xE0, 0xE3, 0x06, 0x1C, 0x70, 0xE3, 0x83, 0x18, 0x1D, 0xC0, 0x6C, - 0x03, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xF0, 0xF0, 0xE0, 0xE0, - 0xE0, 0x07, 0xF0, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0x03, 0xC7, 0x00, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0xFE, 0x0F, 0xFF, 0x1F, 0xF3, - 0x9F, 0x01, 0xCF, 0x00, 0xE7, 0x00, 0x73, 0x80, 0x79, 0xE0, 0xFC, 0x7F, - 0xEF, 0x9F, 0xE3, 0xC7, 0xE1, 0xE0, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE3, 0xE0, 0xEF, 0xF8, - 0xFF, 0xFC, 0xFC, 0x3E, 0xF8, 0x1E, 0xF0, 0x0E, 0xE0, 0x0F, 0xE0, 0x07, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xF0, 0x0E, - 0xF8, 0x1E, 0xFC, 0x3C, 0xEF, 0xFC, 0xEF, 0xF8, 0xE3, 0xE0, 0x07, 0xF0, - 0x1F, 0xF8, 0x3F, 0xFC, 0x3C, 0x1E, 0x78, 0x0E, 0x70, 0x07, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x07, - 0x70, 0x07, 0x78, 0x0E, 0x7C, 0x1E, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, - 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, - 0x1C, 0x00, 0x0E, 0x0F, 0xC7, 0x1F, 0xFB, 0x9F, 0xFF, 0xDF, 0x07, 0xEF, - 0x01, 0xF7, 0x00, 0x7F, 0x80, 0x3F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x03, - 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x77, 0x00, 0x7B, 0xC0, 0x7D, 0xF0, - 0x7E, 0x7F, 0xFB, 0x1F, 0xF9, 0x83, 0xF0, 0xC0, 0x07, 0xE0, 0x1F, 0xF8, - 0x3F, 0xFC, 0x7C, 0x1E, 0x70, 0x0E, 0x60, 0x06, 0xE0, 0x07, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0x70, 0x07, - 0x78, 0x0E, 0x3C, 0x1E, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, 0x0E, 0x3C, - 0xF9, 0xC3, 0x87, 0x0E, 0x7F, 0xFF, 0xFC, 0xE1, 0xC3, 0x87, 0x0E, 0x1C, - 0x38, 0x70, 0xE1, 0xC3, 0x87, 0x0E, 0x1C, 0x38, 0x70, 0x07, 0xC7, 0x1F, - 0xF7, 0x3F, 0xFF, 0x3C, 0x3F, 0x78, 0x0F, 0x70, 0x0F, 0xE0, 0x07, 0xE0, - 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0x70, - 0x0F, 0x78, 0x0F, 0x7C, 0x3F, 0x3F, 0xF7, 0x1F, 0xE7, 0x07, 0xC7, 0x00, - 0x07, 0x00, 0x07, 0x00, 0x0E, 0x70, 0x0E, 0x78, 0x1E, 0x3F, 0xFC, 0x1F, - 0xF8, 0x07, 0xE0, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, - 0x1C, 0x00, 0x38, 0x00, 0x71, 0xF8, 0xE7, 0xFD, 0xDF, 0xFB, 0xF0, 0xFF, - 0xC0, 0xFF, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, - 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, - 0xE0, 0x0F, 0xC0, 0x1C, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFC, 0x1C, 0x71, 0xC7, 0x00, 0x00, 0x07, 0x1C, 0x71, 0xC7, 0x1C, - 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, - 0x73, 0xFF, 0xFB, 0xC0, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x3C, 0xE0, 0x78, 0xE0, 0xF0, - 0xE1, 0xE0, 0xE3, 0xC0, 0xE7, 0x80, 0xEF, 0x00, 0xEF, 0x80, 0xFF, 0x80, - 0xFB, 0xC0, 0xF1, 0xE0, 0xE0, 0xE0, 0xE0, 0xF0, 0xE0, 0x70, 0xE0, 0x78, - 0xE0, 0x3C, 0xE0, 0x1C, 0xE0, 0x1E, 0xE0, 0x0E, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xE3, 0xE0, 0xF8, 0xE7, 0xF1, 0xFE, - 0xEF, 0xFB, 0xFE, 0xF8, 0x7F, 0x0F, 0xF0, 0x3E, 0x07, 0xF0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, 0xE0, 0x1C, 0x07, - 0xE0, 0x1C, 0x07, 0xE3, 0xF1, 0xCF, 0xFB, 0xBF, 0xF7, 0xE1, 0xFF, 0x81, - 0xFE, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, - 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, - 0x1F, 0x80, 0x38, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, 0x87, 0x83, 0xC7, - 0x80, 0xF3, 0x80, 0x3B, 0x80, 0x1F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x01, - 0xF8, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0x3B, 0x80, 0x39, 0xE0, 0x3C, 0x78, - 0x3C, 0x3F, 0xFE, 0x0F, 0xFE, 0x01, 0xFC, 0x00, 0xE3, 0xE0, 0xE7, 0xF8, - 0xEF, 0xFC, 0xFC, 0x3E, 0xF8, 0x1E, 0xF0, 0x0E, 0xE0, 0x0F, 0xE0, 0x07, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xF0, 0x0E, - 0xF8, 0x1E, 0xFC, 0x3E, 0xFF, 0xFC, 0xEF, 0xF8, 0xE3, 0xE0, 0xE0, 0x00, - 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0x07, 0xE1, - 0x8F, 0xFC, 0xCF, 0xFF, 0x67, 0x83, 0xF7, 0x80, 0xFB, 0x80, 0x3F, 0xC0, - 0x1F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x7E, - 0x00, 0x3B, 0x80, 0x3D, 0xE0, 0x3E, 0xF8, 0x3F, 0x3F, 0xFF, 0x8F, 0xFD, - 0xC1, 0xF8, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, - 0x07, 0x00, 0x03, 0x80, 0xE3, 0xF7, 0xFB, 0xFF, 0x8F, 0x07, 0x83, 0x81, - 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, - 0x38, 0x00, 0x0F, 0xC0, 0xFF, 0x87, 0xFF, 0x3C, 0x1E, 0xE0, 0x3B, 0x80, - 0x0E, 0x00, 0x3C, 0x00, 0x7F, 0x00, 0xFF, 0x80, 0xFF, 0x80, 0x7F, 0x00, - 0x3F, 0x80, 0x7E, 0x01, 0xFC, 0x1F, 0x7F, 0xF8, 0xFF, 0xC1, 0xFC, 0x00, - 0x38, 0x70, 0xE1, 0xCF, 0xFF, 0xFF, 0x9C, 0x38, 0x70, 0xE1, 0xC3, 0x87, - 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0xE7, 0xC7, 0x80, 0xE0, 0x0F, 0xC0, - 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, 0x07, - 0xE0, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, 0xFC, 0x03, 0xFC, - 0x0F, 0xFC, 0x3F, 0x7F, 0xEE, 0xFF, 0x9C, 0x7E, 0x38, 0x70, 0x03, 0xB8, - 0x03, 0x9C, 0x01, 0xC7, 0x00, 0xE3, 0x80, 0xE1, 0xC0, 0x70, 0x70, 0x38, - 0x38, 0x38, 0x1C, 0x1C, 0x07, 0x0E, 0x03, 0x8E, 0x01, 0xC7, 0x00, 0x77, - 0x00, 0x3B, 0x80, 0x1D, 0xC0, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0x70, 0x00, 0xF0, 0x1C, 0x03, 0xB8, 0x1F, 0x03, 0xDC, 0x0F, 0x81, 0xCE, - 0x07, 0xC0, 0xE7, 0x83, 0xE0, 0x71, 0xC3, 0xB8, 0x70, 0xE1, 0xDC, 0x38, - 0x70, 0xEE, 0x1C, 0x1C, 0x63, 0x0E, 0x0E, 0x71, 0xCE, 0x07, 0x38, 0xE7, - 0x03, 0x9C, 0x73, 0x80, 0xEC, 0x19, 0x80, 0x7E, 0x0F, 0xC0, 0x3F, 0x07, - 0xE0, 0x0F, 0x83, 0xF0, 0x07, 0x80, 0xF0, 0x03, 0xC0, 0x78, 0x01, 0xE0, - 0x3C, 0x00, 0x70, 0x07, 0x38, 0x0E, 0x3C, 0x1C, 0x1C, 0x1C, 0x0E, 0x38, - 0x0F, 0x70, 0x07, 0x70, 0x03, 0xE0, 0x03, 0xC0, 0x01, 0xC0, 0x03, 0xE0, - 0x07, 0xE0, 0x07, 0x70, 0x0E, 0x78, 0x1E, 0x38, 0x1C, 0x1C, 0x38, 0x1E, - 0x78, 0x0E, 0x70, 0x07, 0x70, 0x07, 0x38, 0x03, 0x9C, 0x01, 0xC7, 0x01, - 0xC3, 0x80, 0xE1, 0xC0, 0x70, 0x70, 0x70, 0x38, 0x38, 0x1C, 0x3C, 0x07, - 0x1C, 0x03, 0x8E, 0x01, 0xCE, 0x00, 0x77, 0x00, 0x3B, 0x80, 0x1F, 0x80, - 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x38, - 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x0F, - 0x00, 0x00, 0x7F, 0xFC, 0xFF, 0xF9, 0xFF, 0xF0, 0x00, 0xE0, 0x03, 0x80, - 0x0E, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x1C, 0x00, 0x70, - 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF8, 0x07, 0x0F, 0x1F, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x38, 0xF8, 0xE0, 0xF8, 0x38, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1F, 0x0F, 0x07, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xE0, 0xF0, 0xF8, 0x38, - 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x1C, 0x1F, - 0x07, 0x1F, 0x1C, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, - 0x38, 0x38, 0xF8, 0xF0, 0xE0, 0x38, 0x00, 0xFC, 0x03, 0xFC, 0x1F, 0x3E, - 0x3C, 0x1F, 0xE0, 0x1F, 0x80, 0x1E, 0x00}; - -const GFXglyph FreeSans18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 3, 26, 12, 4, -25}, // 0x21 '!' - {10, 9, 9, 12, 1, -24}, // 0x22 '"' - {21, 19, 24, 19, 0, -23}, // 0x23 '#' - {78, 16, 30, 19, 2, -26}, // 0x24 '$' - {138, 29, 25, 31, 1, -24}, // 0x25 '%' - {229, 20, 25, 23, 2, -24}, // 0x26 '&' - {292, 3, 9, 7, 2, -24}, // 0x27 ''' - {296, 8, 33, 12, 3, -25}, // 0x28 '(' - {329, 8, 33, 12, 1, -25}, // 0x29 ')' - {362, 10, 10, 14, 2, -25}, // 0x2A '*' - {375, 16, 16, 20, 2, -15}, // 0x2B '+' - {407, 3, 9, 10, 3, -3}, // 0x2C ',' - {411, 8, 3, 12, 2, -10}, // 0x2D '-' - {414, 3, 4, 9, 3, -3}, // 0x2E '.' - {416, 10, 26, 10, 0, -25}, // 0x2F '/' - {449, 16, 25, 19, 2, -24}, // 0x30 '0' - {499, 8, 25, 19, 4, -24}, // 0x31 '1' - {524, 16, 25, 19, 2, -24}, // 0x32 '2' - {574, 17, 25, 19, 1, -24}, // 0x33 '3' - {628, 16, 25, 19, 1, -24}, // 0x34 '4' - {678, 17, 25, 19, 1, -24}, // 0x35 '5' - {732, 16, 25, 19, 2, -24}, // 0x36 '6' - {782, 16, 25, 19, 2, -24}, // 0x37 '7' - {832, 17, 25, 19, 1, -24}, // 0x38 '8' - {886, 16, 25, 19, 1, -24}, // 0x39 '9' - {936, 3, 19, 9, 3, -18}, // 0x3A ':' - {944, 3, 24, 9, 3, -18}, // 0x3B ';' - {953, 17, 17, 20, 2, -16}, // 0x3C '<' - {990, 17, 9, 20, 2, -12}, // 0x3D '=' - {1010, 17, 17, 20, 2, -16}, // 0x3E '>' - {1047, 15, 26, 19, 3, -25}, // 0x3F '?' - {1096, 32, 31, 36, 1, -25}, // 0x40 '@' - {1220, 22, 26, 23, 1, -25}, // 0x41 'A' - {1292, 19, 26, 23, 3, -25}, // 0x42 'B' - {1354, 22, 26, 25, 1, -25}, // 0x43 'C' - {1426, 20, 26, 24, 3, -25}, // 0x44 'D' - {1491, 18, 26, 22, 3, -25}, // 0x45 'E' - {1550, 17, 26, 21, 3, -25}, // 0x46 'F' - {1606, 24, 26, 27, 1, -25}, // 0x47 'G' - {1684, 19, 26, 25, 3, -25}, // 0x48 'H' - {1746, 3, 26, 10, 4, -25}, // 0x49 'I' - {1756, 14, 26, 18, 1, -25}, // 0x4A 'J' - {1802, 20, 26, 24, 3, -25}, // 0x4B 'K' - {1867, 15, 26, 20, 3, -25}, // 0x4C 'L' - {1916, 24, 26, 30, 3, -25}, // 0x4D 'M' - {1994, 20, 26, 26, 3, -25}, // 0x4E 'N' - {2059, 25, 26, 27, 1, -25}, // 0x4F 'O' - {2141, 18, 26, 23, 3, -25}, // 0x50 'P' - {2200, 25, 28, 27, 1, -25}, // 0x51 'Q' - {2288, 20, 26, 25, 3, -25}, // 0x52 'R' - {2353, 20, 26, 23, 1, -25}, // 0x53 'S' - {2418, 19, 26, 22, 1, -25}, // 0x54 'T' - {2480, 19, 26, 25, 3, -25}, // 0x55 'U' - {2542, 21, 26, 23, 1, -25}, // 0x56 'V' - {2611, 32, 26, 33, 0, -25}, // 0x57 'W' - {2715, 21, 26, 23, 1, -25}, // 0x58 'X' - {2784, 23, 26, 24, 0, -25}, // 0x59 'Y' - {2859, 19, 26, 22, 1, -25}, // 0x5A 'Z' - {2921, 6, 33, 10, 2, -25}, // 0x5B '[' - {2946, 10, 26, 10, 0, -25}, // 0x5C '\' - {2979, 6, 33, 10, 1, -25}, // 0x5D ']' - {3004, 13, 13, 16, 2, -24}, // 0x5E '^' - {3026, 21, 2, 19, -1, 5}, // 0x5F '_' - {3032, 7, 5, 9, 1, -25}, // 0x60 '`' - {3037, 17, 19, 19, 1, -18}, // 0x61 'a' - {3078, 16, 26, 20, 2, -25}, // 0x62 'b' - {3130, 16, 19, 18, 1, -18}, // 0x63 'c' - {3168, 17, 26, 20, 1, -25}, // 0x64 'd' - {3224, 16, 19, 19, 1, -18}, // 0x65 'e' - {3262, 7, 26, 10, 1, -25}, // 0x66 'f' - {3285, 16, 27, 19, 1, -18}, // 0x67 'g' - {3339, 15, 26, 19, 2, -25}, // 0x68 'h' - {3388, 3, 26, 8, 2, -25}, // 0x69 'i' - {3398, 6, 34, 9, 0, -25}, // 0x6A 'j' - {3424, 16, 26, 18, 2, -25}, // 0x6B 'k' - {3476, 3, 26, 7, 2, -25}, // 0x6C 'l' - {3486, 24, 19, 28, 2, -18}, // 0x6D 'm' - {3543, 15, 19, 19, 2, -18}, // 0x6E 'n' - {3579, 17, 19, 19, 1, -18}, // 0x6F 'o' - {3620, 16, 25, 20, 2, -18}, // 0x70 'p' - {3670, 17, 25, 20, 1, -18}, // 0x71 'q' - {3724, 9, 19, 12, 2, -18}, // 0x72 'r' - {3746, 14, 19, 17, 2, -18}, // 0x73 's' - {3780, 7, 23, 10, 1, -22}, // 0x74 't' - {3801, 15, 19, 19, 2, -18}, // 0x75 'u' - {3837, 17, 19, 17, 0, -18}, // 0x76 'v' - {3878, 25, 19, 25, 0, -18}, // 0x77 'w' - {3938, 16, 19, 17, 0, -18}, // 0x78 'x' - {3976, 17, 27, 17, 0, -18}, // 0x79 'y' - {4034, 15, 19, 17, 1, -18}, // 0x7A 'z' - {4070, 8, 33, 12, 1, -25}, // 0x7B '{' - {4103, 2, 33, 9, 3, -25}, // 0x7C '|' - {4112, 8, 33, 12, 3, -25}, // 0x7D '}' - {4145, 15, 7, 18, 1, -15}}; // 0x7E '~' - -const GFXfont FreeSans18pt7b PROGMEM = {(uint8_t *)FreeSans18pt7bBitmaps, - (GFXglyph *)FreeSans18pt7bGlyphs, 0x20, - 0x7E, 42}; - -// Approx. 4831 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans24pt7b.h deleted file mode 100644 index 3559530..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans24pt7b.h +++ /dev/null @@ -1,729 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans24pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x76, 0x66, - 0x66, 0x00, 0x0F, 0xFF, 0xFF, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1F, - 0xE3, 0xFC, 0x7F, 0x8F, 0xF1, 0xEC, 0x19, 0x83, 0x30, 0x60, 0x00, 0x70, - 0x3C, 0x00, 0x70, 0x3C, 0x00, 0xF0, 0x38, 0x00, 0xF0, 0x38, 0x00, 0xF0, - 0x78, 0x00, 0xE0, 0x78, 0x00, 0xE0, 0x78, 0x01, 0xE0, 0x70, 0x01, 0xE0, - 0x70, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x03, 0xC0, - 0xE0, 0x03, 0xC0, 0xE0, 0x03, 0xC0, 0xE0, 0x03, 0x81, 0xE0, 0x03, 0x81, - 0xE0, 0x03, 0x81, 0xE0, 0x07, 0x81, 0xC0, 0x07, 0x81, 0xC0, 0xFF, 0xFF, - 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0x0F, 0x03, 0x80, 0x0F, 0x03, - 0x80, 0x0F, 0x07, 0x80, 0x0E, 0x07, 0x80, 0x0E, 0x07, 0x80, 0x1E, 0x07, - 0x00, 0x1E, 0x07, 0x00, 0x1E, 0x07, 0x00, 0x1C, 0x0F, 0x00, 0x1C, 0x0F, - 0x00, 0x00, 0x38, 0x00, 0x01, 0xFC, 0x00, 0x1F, 0xFE, 0x00, 0x7F, 0xFE, - 0x01, 0xFF, 0xFE, 0x07, 0xE7, 0x3E, 0x0F, 0x8E, 0x3C, 0x3E, 0x1C, 0x3C, - 0x78, 0x38, 0x38, 0xF0, 0x70, 0x71, 0xE0, 0xE0, 0xE3, 0xC1, 0xC0, 0x07, - 0x83, 0x80, 0x0F, 0x87, 0x00, 0x0F, 0x8E, 0x00, 0x1F, 0xDC, 0x00, 0x1F, - 0xF8, 0x00, 0x1F, 0xFF, 0x00, 0x0F, 0xFF, 0x80, 0x07, 0xFF, 0x80, 0x03, - 0xFF, 0x80, 0x07, 0x1F, 0x80, 0x0E, 0x1F, 0x00, 0x1C, 0x1F, 0x00, 0x38, - 0x1F, 0xC0, 0x70, 0x3F, 0x80, 0xE0, 0x7F, 0x81, 0xC0, 0xFF, 0x03, 0x81, - 0xEF, 0x07, 0x07, 0x9F, 0x0E, 0x0F, 0x3E, 0x1C, 0x3E, 0x3F, 0x39, 0xF8, - 0x3F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x03, 0x80, 0x00, - 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, - 0x00, 0x00, 0x1C, 0x00, 0x0F, 0xC0, 0x00, 0x78, 0x00, 0x3F, 0xE0, 0x00, - 0xE0, 0x01, 0xFF, 0xE0, 0x03, 0x80, 0x03, 0xFF, 0xE0, 0x07, 0x00, 0x0F, - 0x87, 0xC0, 0x1C, 0x00, 0x3C, 0x03, 0xC0, 0x38, 0x00, 0x70, 0x03, 0x80, - 0xE0, 0x00, 0xE0, 0x07, 0x03, 0xC0, 0x01, 0xC0, 0x0E, 0x07, 0x00, 0x03, - 0x80, 0x1C, 0x1E, 0x00, 0x07, 0x80, 0x78, 0x38, 0x00, 0x07, 0xC3, 0xE0, - 0xF0, 0x00, 0x07, 0xFF, 0xC1, 0xC0, 0x00, 0x0F, 0xFF, 0x07, 0x80, 0x00, - 0x0F, 0xFC, 0x0E, 0x00, 0x00, 0x07, 0xE0, 0x38, 0x00, 0x00, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x00, 0x01, 0xC0, 0x3F, 0x00, 0x00, 0x03, 0x80, 0xFF, - 0x80, 0x00, 0x0E, 0x07, 0xFF, 0x80, 0x00, 0x3C, 0x0F, 0xFF, 0x80, 0x00, - 0x70, 0x3E, 0x1F, 0x00, 0x01, 0xE0, 0xF0, 0x0F, 0x00, 0x03, 0x81, 0xC0, - 0x0E, 0x00, 0x0F, 0x03, 0x80, 0x1C, 0x00, 0x1C, 0x07, 0x00, 0x38, 0x00, - 0x78, 0x0E, 0x00, 0x70, 0x00, 0xE0, 0x1E, 0x01, 0xE0, 0x03, 0x80, 0x1F, - 0x0F, 0x80, 0x07, 0x00, 0x1F, 0xFF, 0x00, 0x1C, 0x00, 0x3F, 0xFC, 0x00, - 0x38, 0x00, 0x1F, 0xF0, 0x00, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7E, 0x00, - 0x00, 0x1F, 0xF0, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x7F, 0xFC, 0x00, 0x07, - 0xC3, 0xC0, 0x00, 0xF8, 0x1E, 0x00, 0x0F, 0x00, 0xE0, 0x00, 0xF0, 0x0E, - 0x00, 0x0F, 0x00, 0xE0, 0x00, 0xF0, 0x0E, 0x00, 0x07, 0x81, 0xE0, 0x00, - 0x7C, 0x3C, 0x00, 0x03, 0xEF, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0xE0, 0x00, - 0x1F, 0x1E, 0x07, 0x83, 0xE0, 0xF0, 0x78, 0x7C, 0x0F, 0x8F, 0x87, 0x80, - 0x7C, 0xF0, 0xF0, 0x03, 0xFF, 0x0F, 0x00, 0x1F, 0xE0, 0xF0, 0x00, 0xFE, - 0x0F, 0x00, 0x0F, 0xC0, 0xF0, 0x00, 0x7E, 0x0F, 0x80, 0x0F, 0xF0, 0x7C, - 0x01, 0xFF, 0x07, 0xF0, 0x7D, 0xF8, 0x3F, 0xFF, 0x8F, 0xC1, 0xFF, 0xF0, - 0x7E, 0x0F, 0xFE, 0x03, 0xE0, 0x3F, 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF6, 0x66, 0x01, 0xC0, 0x70, 0x38, 0x1C, 0x07, 0x03, 0xC0, 0xE0, 0x78, - 0x1C, 0x07, 0x03, 0xC0, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x70, 0x3C, - 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, - 0xC0, 0x70, 0x1E, 0x07, 0x81, 0xE0, 0x38, 0x0F, 0x03, 0xC0, 0x70, 0x1E, - 0x03, 0x80, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x18, 0x07, 0xE0, 0x38, 0x07, - 0x01, 0xC0, 0x38, 0x0F, 0x01, 0xC0, 0x78, 0x0E, 0x03, 0x80, 0xF0, 0x1C, - 0x07, 0x01, 0xE0, 0x78, 0x1E, 0x03, 0x80, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, - 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x07, 0x81, 0xE0, 0x78, - 0x1E, 0x07, 0x03, 0xC0, 0xF0, 0x38, 0x1E, 0x07, 0x01, 0xC0, 0xE0, 0x38, - 0x1C, 0x06, 0x03, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x63, - 0x1B, 0xFF, 0xFF, 0xFF, 0xC3, 0xF0, 0x07, 0x80, 0x3F, 0x01, 0xCE, 0x07, - 0x3C, 0x38, 0x70, 0x21, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, - 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x0E, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0x00, 0x00, 0x0E, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, - 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0xFF, 0xFF, 0xF3, - 0x33, 0x36, 0xEC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF0, - 0x00, 0x38, 0x01, 0xC0, 0x0C, 0x00, 0xE0, 0x07, 0x00, 0x30, 0x03, 0x80, - 0x1C, 0x00, 0xC0, 0x06, 0x00, 0x70, 0x03, 0x80, 0x18, 0x01, 0xC0, 0x0E, - 0x00, 0x60, 0x03, 0x00, 0x38, 0x01, 0x80, 0x0C, 0x00, 0xE0, 0x07, 0x00, - 0x30, 0x03, 0x80, 0x1C, 0x00, 0xC0, 0x06, 0x00, 0x70, 0x03, 0x80, 0x18, - 0x01, 0xC0, 0x0E, 0x00, 0x60, 0x07, 0x00, 0x38, 0x00, 0x00, 0xFC, 0x00, - 0x0F, 0xFC, 0x00, 0xFF, 0xFC, 0x07, 0xFF, 0xF8, 0x1F, 0x87, 0xE0, 0xF8, - 0x07, 0xC3, 0xC0, 0x0F, 0x1F, 0x00, 0x3E, 0x78, 0x00, 0x79, 0xE0, 0x01, - 0xE7, 0x80, 0x07, 0xBC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, - 0xDE, 0x00, 0x1E, 0x78, 0x00, 0x79, 0xE0, 0x01, 0xE7, 0xC0, 0x0F, 0x8F, - 0x00, 0x3C, 0x3E, 0x01, 0xF0, 0x7C, 0x1F, 0x81, 0xFF, 0xFE, 0x03, 0xFF, - 0xF0, 0x03, 0xFF, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x60, 0x1C, 0x03, 0x80, - 0xF0, 0x3E, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x3C, 0x07, 0x80, 0xF0, - 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, - 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xFE, 0x01, 0xFF, - 0xFE, 0x0F, 0xFF, 0xFC, 0x3F, 0x03, 0xF9, 0xF0, 0x03, 0xE7, 0x80, 0x07, - 0xFE, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xC0, - 0x00, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, - 0x7C, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x80, 0x07, 0xF8, 0x00, 0x3F, 0xC0, - 0x03, 0xFC, 0x00, 0x1F, 0xC0, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x3E, - 0x00, 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, - 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, - 0x00, 0xFE, 0x00, 0x0F, 0xFF, 0x80, 0x3F, 0xFF, 0x80, 0xFF, 0xFF, 0x83, - 0xF0, 0x1F, 0x87, 0xC0, 0x1F, 0x1F, 0x00, 0x1F, 0x3C, 0x00, 0x1E, 0x78, - 0x00, 0x3C, 0xF0, 0x00, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0x80, 0x00, 0x7F, 0x00, 0x1F, 0xFC, 0x00, 0x3F, 0xE0, 0x00, 0x7F, - 0xE0, 0x00, 0xFF, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x03, - 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0xF0, 0x00, 0x1F, - 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0xFB, 0xC0, 0x01, 0xE7, 0xC0, 0x07, 0xC7, - 0xE0, 0x3F, 0x0F, 0xFF, 0xFE, 0x0F, 0xFF, 0xF8, 0x07, 0xFF, 0xC0, 0x03, - 0xFC, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x1F, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x3F, - 0xE0, 0x00, 0x7B, 0xC0, 0x01, 0xE7, 0x80, 0x07, 0x8F, 0x00, 0x0F, 0x1E, - 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0x78, 0x03, 0xC0, 0xF0, 0x07, 0x81, 0xE0, - 0x1E, 0x03, 0xC0, 0x78, 0x07, 0x81, 0xE0, 0x0F, 0x03, 0xC0, 0x1E, 0x0F, - 0x00, 0x3C, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x1F, 0xFF, 0xF0, 0x7F, 0xFF, 0xC1, 0xFF, 0xFF, 0x07, 0xFF, 0xFC, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x1F, 0x3F, 0x80, 0x7B, 0xFF, - 0x81, 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x1F, 0x80, 0xFC, 0x78, 0x01, 0xF8, - 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x80, 0x07, 0x9E, 0x00, 0x1E, 0x7C, 0x00, 0xF1, 0xFC, 0x0F, 0xC3, - 0xFF, 0xFE, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0x80, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x0F, 0xFE, 0x00, 0x7F, 0xFC, 0x03, 0xFF, 0xF8, 0x1F, 0x83, - 0xF0, 0xF8, 0x07, 0xC3, 0xC0, 0x0F, 0x8F, 0x00, 0x1E, 0x78, 0x00, 0x79, - 0xE0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0xFE, 0x03, 0xCF, - 0xFE, 0x0F, 0x7F, 0xFE, 0x3F, 0xFF, 0xFC, 0xFF, 0x03, 0xF3, 0xF0, 0x03, - 0xEF, 0x80, 0x07, 0xBE, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0x70, 0x00, 0x3D, 0xC0, 0x00, 0xF7, 0x80, - 0x07, 0x9F, 0x00, 0x3E, 0x3E, 0x00, 0xF8, 0xFC, 0x0F, 0xC1, 0xFF, 0xFE, - 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x07, 0xF8, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x07, 0x00, 0x00, - 0x78, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, - 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, - 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, - 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, - 0x01, 0xFE, 0x00, 0x1F, 0xFE, 0x00, 0xFF, 0xFC, 0x07, 0xFF, 0xF8, 0x3F, - 0x03, 0xF1, 0xF0, 0x03, 0xC7, 0xC0, 0x0F, 0x9E, 0x00, 0x1E, 0x78, 0x00, - 0x79, 0xE0, 0x01, 0xE7, 0x80, 0x0F, 0x8F, 0x00, 0x3C, 0x3F, 0x03, 0xF0, - 0x7F, 0xFF, 0x80, 0x7F, 0xF8, 0x03, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0xFC, - 0x0F, 0xC7, 0xC0, 0x0F, 0x9E, 0x00, 0x1E, 0xF8, 0x00, 0x7F, 0xC0, 0x00, - 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x80, 0x07, 0xDE, 0x00, 0x1E, 0x7C, 0x00, 0xF8, 0xFC, 0x0F, 0xC3, 0xFF, - 0xFF, 0x07, 0xFF, 0xF8, 0x07, 0xFF, 0x80, 0x07, 0xF8, 0x00, 0x01, 0xFC, - 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x83, 0xF0, 0x7E, 0x3E, - 0x00, 0xF1, 0xE0, 0x07, 0xCF, 0x00, 0x1E, 0xF0, 0x00, 0x77, 0x80, 0x03, - 0xBC, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xF8, 0x00, 0x3F, 0xE0, - 0x03, 0xEF, 0x00, 0x1F, 0x7C, 0x01, 0xF9, 0xF8, 0x3F, 0xCF, 0xFF, 0xFE, - 0x3F, 0xFE, 0xF0, 0xFF, 0xE7, 0x80, 0xFC, 0x3C, 0x00, 0x01, 0xE0, 0x00, - 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x9E, 0x00, 0x3C, 0xF0, 0x03, 0xC7, - 0xC0, 0x3E, 0x1F, 0x03, 0xE0, 0xFF, 0xFE, 0x03, 0xFF, 0xE0, 0x0F, 0xFE, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xF3, 0x33, 0x36, 0xEC, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0xC0, - 0x03, 0xFC, 0x00, 0x3F, 0xE0, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, - 0x80, 0x03, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xF0, - 0x00, 0x07, 0xFC, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, - 0xC0, 0x00, 0x3F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xC0, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0x80, 0x00, 0x01, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x3F, 0xC0, 0x00, 0x1F, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xF8, 0x00, - 0x01, 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0xC0, 0x03, 0xFC, 0x00, 0x1F, - 0xE0, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x07, 0xFC, 0x00, - 0x0F, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0xFF, 0xF0, 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x7E, 0x0F, 0xE7, 0x80, - 0x3E, 0x78, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x00, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, - 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xC0, - 0x00, 0x00, 0x3F, 0xFF, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x00, - 0x07, 0xFC, 0x03, 0xFF, 0x00, 0x01, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x7E, - 0x00, 0x00, 0x7F, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xF0, 0x07, 0xC0, 0x00, - 0x00, 0x3F, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xF0, 0x3C, 0x00, 0x7E, 0x00, - 0x3E, 0x0F, 0x00, 0x3F, 0xE3, 0xC3, 0xE3, 0xE0, 0x1F, 0xFE, 0x78, 0x3C, - 0x78, 0x07, 0xE1, 0xFF, 0x07, 0xDF, 0x01, 0xF0, 0x1F, 0xC0, 0xFB, 0xC0, - 0x7C, 0x01, 0xF8, 0x0F, 0x78, 0x0F, 0x00, 0x3F, 0x01, 0xEF, 0x03, 0xC0, - 0x07, 0xC0, 0x3F, 0xC0, 0x78, 0x00, 0xF8, 0x07, 0xF8, 0x0F, 0x00, 0x1F, - 0x00, 0xFF, 0x03, 0xC0, 0x03, 0xC0, 0x1F, 0xE0, 0x78, 0x00, 0x78, 0x07, - 0xFC, 0x0F, 0x00, 0x1F, 0x00, 0xF7, 0x81, 0xE0, 0x03, 0xC0, 0x1E, 0xF0, - 0x3C, 0x00, 0x78, 0x07, 0x9E, 0x07, 0x80, 0x1F, 0x01, 0xF3, 0xE0, 0xF8, - 0x07, 0xC0, 0x3C, 0x3C, 0x0F, 0x81, 0xF8, 0x0F, 0x87, 0x81, 0xF8, 0x7F, - 0x87, 0xE0, 0xF8, 0x1F, 0xFE, 0xFF, 0xF8, 0x0F, 0x01, 0xFF, 0x1F, 0xFC, - 0x01, 0xF0, 0x0F, 0x80, 0xFE, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x03, - 0xF0, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x03, 0xFE, 0x00, - 0x7C, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x80, 0x00, 0x01, 0xFF, 0xFF, 0xF8, - 0x00, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, - 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0xF7, 0xC0, 0x00, 0x03, - 0xDF, 0x00, 0x00, 0x1F, 0x3C, 0x00, 0x00, 0x78, 0xF8, 0x00, 0x01, 0xE3, - 0xE0, 0x00, 0x0F, 0x87, 0x80, 0x00, 0x3C, 0x1F, 0x00, 0x01, 0xF0, 0x7C, - 0x00, 0x07, 0x80, 0xF0, 0x00, 0x1E, 0x03, 0xE0, 0x00, 0xF8, 0x0F, 0x80, - 0x03, 0xC0, 0x1E, 0x00, 0x0F, 0x00, 0x7C, 0x00, 0x7C, 0x01, 0xF0, 0x01, - 0xE0, 0x03, 0xC0, 0x07, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xFE, 0x00, 0xFF, - 0xFF, 0xFC, 0x07, 0xFF, 0xFF, 0xF0, 0x1F, 0x00, 0x07, 0xC0, 0x78, 0x00, - 0x0F, 0x83, 0xE0, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0xF8, 0x3C, 0x00, 0x01, - 0xF1, 0xF0, 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x1F, 0x1E, 0x00, 0x00, 0x3E, - 0xF8, 0x00, 0x00, 0xFB, 0xE0, 0x00, 0x01, 0xE0, 0xFF, 0xFF, 0x80, 0x7F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0x0F, 0x00, 0x0F, 0xC7, - 0x80, 0x01, 0xE3, 0xC0, 0x00, 0xF9, 0xE0, 0x00, 0x3C, 0xF0, 0x00, 0x1E, - 0x78, 0x00, 0x0F, 0x3C, 0x00, 0x07, 0x9E, 0x00, 0x07, 0x8F, 0x00, 0x03, - 0xC7, 0x80, 0x07, 0xC3, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, - 0xF8, 0x7F, 0xFF, 0xFE, 0x3C, 0x00, 0x0F, 0x9E, 0x00, 0x03, 0xEF, 0x00, - 0x00, 0xF7, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, - 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x01, 0xFF, - 0x00, 0x01, 0xF7, 0x80, 0x01, 0xFB, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xF8, - 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x07, - 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0xFE, 0x01, - 0xF8, 0x07, 0xC0, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x3C, - 0x3C, 0x00, 0x01, 0xE3, 0xE0, 0x00, 0x07, 0x9E, 0x00, 0x00, 0x3C, 0xF0, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x03, 0xC0, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x0F, 0x78, 0x00, - 0x00, 0x7B, 0xC0, 0x00, 0x07, 0xDF, 0x00, 0x00, 0x3C, 0x78, 0x00, 0x01, - 0xE3, 0xE0, 0x00, 0x1F, 0x0F, 0x80, 0x01, 0xF0, 0x3E, 0x00, 0x1F, 0x81, - 0xFE, 0x03, 0xF8, 0x07, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, 0xF8, 0x00, 0x3F, - 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xFF, 0x80, 0x1F, 0xFF, 0xFE, - 0x03, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFE, 0x0F, 0x00, 0x0F, 0xE1, 0xE0, - 0x00, 0x7E, 0x3C, 0x00, 0x07, 0xE7, 0x80, 0x00, 0x7C, 0xF0, 0x00, 0x07, - 0xDE, 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x0F, 0x78, 0x00, 0x01, 0xEF, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x0F, - 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x07, 0xF8, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xF7, - 0x80, 0x00, 0x1E, 0xF0, 0x00, 0x03, 0xDE, 0x00, 0x00, 0xFB, 0xC0, 0x00, - 0x3E, 0x78, 0x00, 0x0F, 0xCF, 0x00, 0x03, 0xF1, 0xE0, 0x01, 0xFC, 0x3F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, - 0x00, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, - 0xFE, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xFF, 0xFF, - 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x3F, 0xFF, 0xFC, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0xFE, - 0x00, 0x07, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x7F, 0x80, 0x7F, - 0x01, 0xF8, 0x00, 0x3F, 0x07, 0xE0, 0x00, 0x1F, 0x0F, 0x80, 0x00, 0x1E, - 0x3E, 0x00, 0x00, 0x3E, 0x78, 0x00, 0x00, 0x3D, 0xF0, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0xFF, 0x80, 0x03, 0xFF, 0xFF, 0x00, - 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x07, 0xBC, 0x00, - 0x00, 0x0F, 0x78, 0x00, 0x00, 0x1E, 0xF8, 0x00, 0x00, 0x7D, 0xF0, 0x00, - 0x00, 0xF9, 0xF0, 0x00, 0x03, 0xF3, 0xF0, 0x00, 0x07, 0xE3, 0xF0, 0x00, - 0x1F, 0xC3, 0xF0, 0x00, 0xFF, 0x83, 0xFC, 0x07, 0xEF, 0x03, 0xFF, 0xFF, - 0x9E, 0x03, 0xFF, 0xFE, 0x1C, 0x01, 0xFF, 0xF0, 0x38, 0x00, 0x7F, 0x80, - 0x00, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0xE0, - 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, - 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x00, - 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, - 0x03, 0xC0, 0x00, 0x7F, 0x80, 0x0F, 0xF0, 0x01, 0xFE, 0x00, 0x3F, 0xC0, - 0x07, 0xF8, 0x01, 0xFF, 0x80, 0x3E, 0xF0, 0x0F, 0x9F, 0x83, 0xF1, 0xFF, - 0xFC, 0x3F, 0xFF, 0x01, 0xFF, 0xC0, 0x0F, 0xE0, 0x00, 0xF0, 0x00, 0x07, - 0xDE, 0x00, 0x01, 0xF3, 0xC0, 0x00, 0x7C, 0x78, 0x00, 0x1F, 0x0F, 0x00, - 0x07, 0xC1, 0xE0, 0x01, 0xF0, 0x3C, 0x00, 0x7C, 0x07, 0x80, 0x1F, 0x00, - 0xF0, 0x07, 0xC0, 0x1E, 0x01, 0xF0, 0x03, 0xC0, 0x7C, 0x00, 0x78, 0x1F, - 0x00, 0x0F, 0x07, 0xC0, 0x01, 0xE1, 0xF0, 0x00, 0x3C, 0x7E, 0x00, 0x07, - 0x9F, 0xE0, 0x00, 0xF7, 0xFE, 0x00, 0x1F, 0xF7, 0xC0, 0x03, 0xFC, 0x7C, - 0x00, 0x7F, 0x07, 0xC0, 0x0F, 0xC0, 0xF8, 0x01, 0xF0, 0x0F, 0x80, 0x3C, - 0x00, 0xF8, 0x07, 0x80, 0x1F, 0x80, 0xF0, 0x01, 0xF0, 0x1E, 0x00, 0x1F, - 0x03, 0xC0, 0x03, 0xF0, 0x78, 0x00, 0x3E, 0x0F, 0x00, 0x03, 0xE1, 0xE0, - 0x00, 0x3E, 0x3C, 0x00, 0x07, 0xC7, 0x80, 0x00, 0x7C, 0xF0, 0x00, 0x07, - 0xDE, 0x00, 0x00, 0xFC, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFC, 0x00, - 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, 0x7F, 0xFE, 0x00, - 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, - 0x00, 0xFF, 0xF7, 0x00, 0x00, 0xEF, 0xF7, 0x80, 0x01, 0xEF, 0xF7, 0x80, - 0x01, 0xEF, 0xF3, 0xC0, 0x01, 0xCF, 0xF3, 0xC0, 0x03, 0xCF, 0xF3, 0xC0, - 0x03, 0xCF, 0xF1, 0xE0, 0x03, 0x8F, 0xF1, 0xE0, 0x07, 0x8F, 0xF1, 0xE0, - 0x07, 0x8F, 0xF0, 0xF0, 0x0F, 0x0F, 0xF0, 0xF0, 0x0F, 0x0F, 0xF0, 0xF0, - 0x0F, 0x0F, 0xF0, 0x78, 0x1E, 0x0F, 0xF0, 0x78, 0x1E, 0x0F, 0xF0, 0x78, - 0x1E, 0x0F, 0xF0, 0x3C, 0x3C, 0x0F, 0xF0, 0x3C, 0x3C, 0x0F, 0xF0, 0x3C, - 0x3C, 0x0F, 0xF0, 0x1E, 0x78, 0x0F, 0xF0, 0x1E, 0x78, 0x0F, 0xF0, 0x0E, - 0x78, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x07, - 0xF0, 0x0F, 0xF0, 0x07, 0xE0, 0x0F, 0xF0, 0x07, 0xE0, 0x0F, 0xF0, 0x03, - 0xE0, 0x0F, 0xF8, 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x3F, - 0xF8, 0x00, 0x0F, 0xFE, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0xFF, 0xF8, 0x00, - 0x3F, 0xDE, 0x00, 0x0F, 0xF7, 0xC0, 0x03, 0xFC, 0xF8, 0x00, 0xFF, 0x1E, - 0x00, 0x3F, 0xC7, 0xC0, 0x0F, 0xF0, 0xF0, 0x03, 0xFC, 0x3E, 0x00, 0xFF, - 0x07, 0xC0, 0x3F, 0xC0, 0xF0, 0x0F, 0xF0, 0x3E, 0x03, 0xFC, 0x07, 0xC0, - 0xFF, 0x00, 0xF0, 0x3F, 0xC0, 0x3E, 0x0F, 0xF0, 0x07, 0x83, 0xFC, 0x01, - 0xF0, 0xFF, 0x00, 0x3E, 0x3F, 0xC0, 0x07, 0x8F, 0xF0, 0x01, 0xF3, 0xFC, - 0x00, 0x3E, 0xFF, 0x00, 0x07, 0xBF, 0xC0, 0x01, 0xFF, 0xF0, 0x00, 0x3F, - 0xFC, 0x00, 0x0F, 0xFF, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x00, - 0x0F, 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, - 0x80, 0x00, 0x7F, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0x80, - 0xFF, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x7E, 0x00, 0x03, 0xF0, 0x3E, 0x00, - 0x00, 0xF8, 0x3E, 0x00, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0x0F, 0x1F, 0x00, - 0x00, 0x07, 0xCF, 0x00, 0x00, 0x01, 0xE7, 0x80, 0x00, 0x00, 0xF7, 0xC0, - 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x00, 0x3E, 0xF0, 0x00, 0x00, 0x1E, 0x78, 0x00, 0x00, 0x0F, - 0x3E, 0x00, 0x00, 0x0F, 0x8F, 0x00, 0x00, 0x07, 0x87, 0xC0, 0x00, 0x07, - 0xC1, 0xF0, 0x00, 0x07, 0xC0, 0xFC, 0x00, 0x07, 0xE0, 0x3F, 0x00, 0x07, - 0xE0, 0x0F, 0xF0, 0x1F, 0xE0, 0x03, 0xFF, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFC, 0xF0, 0x00, - 0xFE, 0xF0, 0x00, 0x3E, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, - 0x0F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, - 0x0F, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x3E, 0xF0, 0x00, 0xFE, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xC0, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x80, - 0x00, 0x7F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0x80, 0xFF, - 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x7E, 0x00, 0x03, 0xF0, 0x3E, 0x00, 0x00, - 0xF8, 0x3E, 0x00, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0x0F, 0x1F, 0x00, 0x00, - 0x07, 0xCF, 0x00, 0x00, 0x01, 0xE7, 0x80, 0x00, 0x00, 0xF7, 0xC0, 0x00, - 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x0F, 0xF0, 0x00, - 0x00, 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xFE, 0x00, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x00, 0x3E, 0xF0, 0x00, 0x00, 0x1E, 0x78, 0x00, 0x00, 0x0F, 0x3E, - 0x00, 0x00, 0x0F, 0x8F, 0x00, 0x03, 0x87, 0x87, 0xC0, 0x03, 0xE7, 0xC1, - 0xF0, 0x00, 0xFF, 0xC0, 0xFC, 0x00, 0x3F, 0xE0, 0x3F, 0x00, 0x0F, 0xE0, - 0x0F, 0xF0, 0x1F, 0xF0, 0x03, 0xFF, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0xFF, - 0x00, 0x1F, 0xFF, 0xC7, 0xC0, 0x01, 0xFF, 0x01, 0xE0, 0x00, 0x00, 0x00, - 0x70, 0x00, 0x00, 0x00, 0x10, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xF8, 0xF0, 0x00, 0x3F, 0x3C, 0x00, 0x07, - 0xCF, 0x00, 0x00, 0xFB, 0xC0, 0x00, 0x1E, 0xF0, 0x00, 0x07, 0xBC, 0x00, - 0x01, 0xEF, 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x1E, 0xF0, 0x00, 0x07, 0xBC, - 0x00, 0x03, 0xCF, 0x00, 0x01, 0xF3, 0xC0, 0x00, 0xF8, 0xFF, 0xFF, 0xFC, - 0x3F, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xF8, 0xF0, 0x00, - 0x3F, 0x3C, 0x00, 0x03, 0xCF, 0x00, 0x00, 0xFB, 0xC0, 0x00, 0x1E, 0xF0, - 0x00, 0x07, 0xBC, 0x00, 0x01, 0xEF, 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x1E, - 0xF0, 0x00, 0x07, 0xBC, 0x00, 0x01, 0xEF, 0x00, 0x00, 0x7B, 0xC0, 0x00, - 0x1E, 0xF0, 0x00, 0x07, 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x7F, 0xC0, 0x00, - 0x7F, 0xFF, 0x00, 0x1F, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x81, 0xF8, 0x07, - 0xF0, 0x7C, 0x00, 0x1F, 0x0F, 0x00, 0x01, 0xE3, 0xE0, 0x00, 0x3E, 0x78, - 0x00, 0x03, 0xCF, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x07, 0xC0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFF, - 0xE0, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x7F, 0xFF, 0x00, 0x01, 0xFF, 0xF8, - 0x00, 0x03, 0xFF, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x07, 0xF8, 0x00, 0x00, 0xF7, 0x80, 0x00, 0x3E, 0xF8, 0x00, - 0x07, 0x9F, 0x80, 0x01, 0xF1, 0xFE, 0x01, 0xFC, 0x1F, 0xFF, 0xFF, 0x01, - 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, - 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, - 0x00, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x7D, 0xE0, 0x00, 0x1E, 0x7C, 0x00, 0x0F, 0x9F, - 0x80, 0x07, 0xE3, 0xF8, 0x07, 0xF0, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFC, - 0x00, 0xFF, 0xFC, 0x00, 0x0F, 0xF8, 0x00, 0xF8, 0x00, 0x00, 0xF7, 0xC0, - 0x00, 0x0F, 0x9E, 0x00, 0x00, 0x7C, 0xF8, 0x00, 0x03, 0xC7, 0xC0, 0x00, - 0x3E, 0x1E, 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x0F, 0x07, 0xC0, 0x00, 0xF8, - 0x1E, 0x00, 0x07, 0xC0, 0xF8, 0x00, 0x3C, 0x07, 0xC0, 0x03, 0xE0, 0x1E, - 0x00, 0x1F, 0x00, 0xF8, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x80, 0x1E, 0x00, - 0x7C, 0x00, 0xF8, 0x03, 0xC0, 0x03, 0xC0, 0x1E, 0x00, 0x1F, 0x01, 0xF0, - 0x00, 0xF8, 0x0F, 0x00, 0x03, 0xC0, 0x78, 0x00, 0x1F, 0x07, 0x80, 0x00, - 0xF8, 0x3C, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x1F, 0x1E, 0x00, 0x00, 0x78, - 0xF0, 0x00, 0x03, 0xC7, 0x80, 0x00, 0x1F, 0x78, 0x00, 0x00, 0x7B, 0xC0, - 0x00, 0x03, 0xDE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, - 0x00, 0x3F, 0x00, 0x07, 0xFE, 0x00, 0x0F, 0xC0, 0x01, 0xFF, 0x80, 0x03, - 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xFC, 0x00, 0x1E, 0x7C, 0x00, 0x7F, 0x80, - 0x0F, 0x9F, 0x00, 0x1F, 0xE0, 0x03, 0xE7, 0xC0, 0x07, 0xF8, 0x00, 0xF8, - 0xF0, 0x01, 0xFF, 0x00, 0x3C, 0x3E, 0x00, 0xF3, 0xC0, 0x1F, 0x0F, 0x80, - 0x3C, 0xF0, 0x07, 0xC3, 0xE0, 0x0F, 0x3C, 0x01, 0xF0, 0x78, 0x07, 0xC7, - 0x80, 0x78, 0x1F, 0x01, 0xE1, 0xE0, 0x1E, 0x07, 0xC0, 0x78, 0x78, 0x0F, - 0x80, 0xF0, 0x1E, 0x1E, 0x03, 0xE0, 0x3C, 0x0F, 0x83, 0xC0, 0xF0, 0x0F, - 0x83, 0xC0, 0xF0, 0x3C, 0x03, 0xE0, 0xF0, 0x3C, 0x1F, 0x00, 0x78, 0x3C, - 0x0F, 0x87, 0xC0, 0x1E, 0x1E, 0x01, 0xE1, 0xE0, 0x07, 0x87, 0x80, 0x78, - 0x78, 0x01, 0xF1, 0xE0, 0x1E, 0x1E, 0x00, 0x3C, 0xF8, 0x03, 0xCF, 0x80, - 0x0F, 0x3C, 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x3C, 0xF0, 0x00, 0xFB, - 0xC0, 0x0F, 0xBC, 0x00, 0x1F, 0xF0, 0x01, 0xFF, 0x00, 0x07, 0xF8, 0x00, - 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x03, 0xF8, - 0x00, 0x0F, 0xC0, 0x00, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x00, - 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x01, 0xF3, 0xF0, 0x00, 0x1F, 0x8F, 0x80, 0x00, 0xF8, 0x3E, 0x00, 0x0F, - 0x80, 0xF8, 0x00, 0xF8, 0x07, 0xC0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x00, - 0x7C, 0x07, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x3E, - 0x3E, 0x00, 0x01, 0xF1, 0xF0, 0x00, 0x07, 0xDF, 0x00, 0x00, 0x1F, 0xF0, - 0x00, 0x00, 0xFF, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x07, - 0xDF, 0x00, 0x00, 0x7C, 0x78, 0x00, 0x03, 0xE3, 0xE0, 0x00, 0x3E, 0x0F, - 0x80, 0x03, 0xE0, 0x3E, 0x00, 0x1F, 0x01, 0xF0, 0x01, 0xF0, 0x07, 0xC0, - 0x1F, 0x00, 0x3F, 0x00, 0xF8, 0x00, 0xF8, 0x0F, 0x80, 0x03, 0xE0, 0xF8, - 0x00, 0x1F, 0x8F, 0xC0, 0x00, 0x7C, 0x7C, 0x00, 0x01, 0xF7, 0xC0, 0x00, - 0x0F, 0xC0, 0xFC, 0x00, 0x00, 0xFD, 0xF0, 0x00, 0x03, 0xE7, 0xE0, 0x00, - 0x1F, 0x0F, 0x80, 0x00, 0x7C, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x1F, - 0x00, 0xF8, 0x00, 0x7C, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, - 0x0F, 0x80, 0x7C, 0x00, 0x1E, 0x01, 0xE0, 0x00, 0x7C, 0x0F, 0x80, 0x00, - 0xF8, 0x7C, 0x00, 0x03, 0xE1, 0xE0, 0x00, 0x07, 0xCF, 0x80, 0x00, 0x0F, - 0x3C, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0xFC, - 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3F, 0xFF, - 0xFF, 0xC7, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0xE0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xF8, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xF0, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xFF, - 0xFF, 0xE0, 0x07, 0x00, 0x18, 0x00, 0xE0, 0x07, 0x00, 0x18, 0x00, 0xE0, - 0x07, 0x00, 0x18, 0x00, 0xC0, 0x07, 0x00, 0x38, 0x00, 0xC0, 0x07, 0x00, - 0x38, 0x00, 0xC0, 0x06, 0x00, 0x38, 0x00, 0xC0, 0x06, 0x00, 0x38, 0x01, - 0xC0, 0x06, 0x00, 0x38, 0x01, 0xC0, 0x06, 0x00, 0x30, 0x01, 0xC0, 0x0E, - 0x00, 0x30, 0x01, 0xC0, 0x0E, 0x00, 0x30, 0x01, 0xC0, 0x0E, 0xFF, 0xFF, - 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x3F, - 0x00, 0x0F, 0xC0, 0x07, 0xF8, 0x01, 0xCE, 0x00, 0x73, 0x80, 0x3C, 0x70, - 0x0E, 0x1C, 0x07, 0x87, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x38, 0x07, 0x0E, - 0x01, 0xC7, 0x80, 0x79, 0xC0, 0x0E, 0x70, 0x03, 0xB8, 0x00, 0x70, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x0F, 0x01, 0xE0, 0x3C, 0x07, - 0x00, 0xE0, 0x1C, 0x01, 0xFF, 0x00, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xE0, - 0x3F, 0xFF, 0xF0, 0x7E, 0x03, 0xF8, 0x7C, 0x00, 0xF8, 0x78, 0x00, 0x78, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF8, - 0x00, 0x03, 0xF8, 0x00, 0xFF, 0xF8, 0x0F, 0xFF, 0xF8, 0x3F, 0xFE, 0x78, - 0x7F, 0x80, 0x78, 0xFC, 0x00, 0x78, 0xF8, 0x00, 0x78, 0xF0, 0x00, 0x78, - 0xF0, 0x00, 0xF8, 0xF0, 0x00, 0xF8, 0xF8, 0x03, 0xF8, 0x7E, 0x0F, 0xF8, - 0x7F, 0xFF, 0x7F, 0x3F, 0xFE, 0x3F, 0x1F, 0xFC, 0x3F, 0x07, 0xE0, 0x1F, - 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, - 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x7E, - 0x03, 0xC7, 0xFE, 0x0F, 0x7F, 0xFC, 0x3D, 0xFF, 0xF8, 0xFF, 0x07, 0xF3, - 0xF8, 0x07, 0xCF, 0xC0, 0x0F, 0xBE, 0x00, 0x1E, 0xF8, 0x00, 0x7B, 0xE0, - 0x01, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x01, 0xFF, - 0x80, 0x07, 0xBE, 0x00, 0x1E, 0xFC, 0x00, 0xFB, 0xF8, 0x07, 0xCF, 0xF0, - 0x7F, 0x3B, 0xFF, 0xF8, 0xE7, 0xFF, 0xC3, 0x8F, 0xFE, 0x00, 0x0F, 0xE0, - 0x00, 0x00, 0xFE, 0x00, 0x3F, 0xFC, 0x03, 0xFF, 0xF0, 0x3F, 0xFF, 0xC3, - 0xF0, 0x3F, 0x1F, 0x00, 0xF9, 0xF0, 0x03, 0xCF, 0x00, 0x0F, 0x78, 0x00, - 0x07, 0xC0, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, - 0x1E, 0x00, 0x1E, 0xF0, 0x00, 0xF7, 0xC0, 0x0F, 0x9F, 0x00, 0xF8, 0xFC, - 0x0F, 0xC3, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, 0x3F, 0xFC, 0x00, 0x7F, 0x00, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF0, - 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x01, - 0xFC, 0x1E, 0x0F, 0xFE, 0x3C, 0x3F, 0xFF, 0x78, 0xFF, 0xFF, 0xF3, 0xF8, - 0x3F, 0xE7, 0xC0, 0x1F, 0xDF, 0x00, 0x1F, 0xBE, 0x00, 0x1F, 0x78, 0x00, - 0x3F, 0xF0, 0x00, 0x7F, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, - 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x1F, - 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xFB, 0xC0, 0x01, 0xF7, 0xC0, 0x07, 0xE7, - 0xC0, 0x1F, 0xCF, 0xE0, 0xFF, 0x8F, 0xFF, 0xF7, 0x0F, 0xFF, 0xCE, 0x0F, - 0xFF, 0x1C, 0x07, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x0F, 0xFE, 0x00, 0xFF, - 0xFC, 0x07, 0xFF, 0xF8, 0x1F, 0x83, 0xF0, 0xF8, 0x07, 0xC7, 0xC0, 0x0F, - 0x9E, 0x00, 0x1E, 0x78, 0x00, 0x7B, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xFC, - 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x1E, - 0x7C, 0x00, 0x78, 0xF8, 0x03, 0xE3, 0xF0, 0x3F, 0x07, 0xFF, 0xF8, 0x0F, - 0xFF, 0xE0, 0x1F, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x03, 0xC3, 0xF0, 0xFC, - 0x7F, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x3F, 0xFF, 0xFF, 0xFF, 0x1E, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, - 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, - 0x1E, 0x07, 0x80, 0x00, 0xFC, 0x00, 0x1F, 0xF8, 0xF0, 0xFF, 0xFB, 0xC7, - 0xFF, 0xFF, 0x3F, 0x83, 0xFC, 0xF8, 0x07, 0xF7, 0xC0, 0x0F, 0xDE, 0x00, - 0x1F, 0x78, 0x00, 0x7F, 0xE0, 0x00, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, - 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, - 0x00, 0x3F, 0xC0, 0x00, 0xF7, 0x80, 0x07, 0xDE, 0x00, 0x1F, 0x7C, 0x00, - 0xFC, 0xF8, 0x07, 0xF3, 0xF8, 0x3F, 0xC7, 0xFF, 0xEF, 0x0F, 0xFF, 0x3C, - 0x1F, 0xF8, 0xF0, 0x1F, 0x83, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x79, 0xE0, - 0x01, 0xE7, 0xC0, 0x0F, 0x8F, 0x80, 0xFC, 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, - 0x80, 0xFF, 0xFC, 0x00, 0x7F, 0x80, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, - 0x00, 0xF0, 0xFE, 0x1E, 0x3F, 0xE3, 0xCF, 0xFF, 0x7B, 0xFF, 0xEF, 0xF0, - 0xFF, 0xF8, 0x07, 0xFF, 0x00, 0x7F, 0xC0, 0x0F, 0xF8, 0x01, 0xFE, 0x00, - 0x3F, 0xC0, 0x07, 0xF8, 0x00, 0xFF, 0x00, 0x1F, 0xE0, 0x03, 0xFC, 0x00, - 0x7F, 0x80, 0x0F, 0xF0, 0x01, 0xFE, 0x00, 0x3F, 0xC0, 0x07, 0xF8, 0x00, - 0xFF, 0x00, 0x1F, 0xE0, 0x03, 0xFC, 0x00, 0x7F, 0x80, 0x0F, 0xF0, 0x01, - 0xFE, 0x00, 0x3C, 0xFF, 0xFF, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x1F, - 0xFF, 0xFE, 0xFE, 0xF8, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x1F, 0x3C, 0x01, 0xF1, 0xE0, 0x1F, 0x0F, - 0x01, 0xF0, 0x78, 0x1F, 0x03, 0xC1, 0xF0, 0x1E, 0x1F, 0x00, 0xF1, 0xF0, - 0x07, 0x9F, 0x00, 0x3D, 0xF8, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x7F, - 0x7C, 0x03, 0xF1, 0xF0, 0x1F, 0x07, 0xC0, 0xF0, 0x3E, 0x07, 0x80, 0xF8, - 0x3C, 0x03, 0xC1, 0xE0, 0x1F, 0x0F, 0x00, 0x7C, 0x78, 0x03, 0xE3, 0xC0, - 0x0F, 0x9E, 0x00, 0x3C, 0xF0, 0x01, 0xF7, 0x80, 0x07, 0xC0, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0x00, 0xFC, 0x03, 0xF0, 0xE3, 0xFE, 0x0F, 0xFC, 0xE7, - 0xFF, 0x1F, 0xFE, 0xEF, 0xFF, 0xBF, 0xFE, 0xFE, 0x0F, 0xF8, 0x3F, 0xFC, - 0x07, 0xF0, 0x1F, 0xF8, 0x03, 0xE0, 0x0F, 0xF8, 0x03, 0xE0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, - 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0xF0, 0x03, 0xC0, 0x0F, 0x00, - 0x7E, 0x0E, 0x1F, 0xF8, 0xE7, 0xFF, 0xCE, 0xFF, 0xFE, 0xEF, 0x07, 0xFF, - 0xE0, 0x1F, 0xFC, 0x01, 0xFF, 0x80, 0x0F, 0xF8, 0x00, 0xFF, 0x00, 0x0F, - 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, - 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, - 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x00, 0xFF, 0x00, 0x0F, 0x00, 0xFE, 0x00, 0x07, 0xFF, 0x00, 0x3F, 0xFF, - 0x80, 0xFF, 0xFF, 0x83, 0xF8, 0x3F, 0x87, 0xC0, 0x1F, 0x1F, 0x00, 0x1F, - 0x3C, 0x00, 0x1E, 0x78, 0x00, 0x3D, 0xF0, 0x00, 0x7F, 0xC0, 0x00, 0x7F, - 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF8, - 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xF3, 0xC0, - 0x01, 0xE7, 0xC0, 0x07, 0xC7, 0xC0, 0x1F, 0x0F, 0xE0, 0xFE, 0x0F, 0xFF, - 0xF8, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x03, 0xF8, 0x00, 0x00, 0xFE, - 0x03, 0x8F, 0xFE, 0x0E, 0x7F, 0xFC, 0x3B, 0xFF, 0xF8, 0xFF, 0x87, 0xF3, - 0xF8, 0x07, 0xCF, 0xC0, 0x0F, 0xBE, 0x00, 0x1E, 0xF8, 0x00, 0x7B, 0xE0, - 0x01, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x01, 0xFF, - 0x80, 0x07, 0xBE, 0x00, 0x1E, 0xFC, 0x00, 0xFB, 0xF8, 0x07, 0xCF, 0xF0, - 0x7F, 0x3F, 0xFF, 0xF8, 0xF7, 0xFF, 0xC3, 0xC7, 0xFE, 0x0F, 0x07, 0xE0, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, - 0xFE, 0x00, 0x07, 0xFF, 0x1C, 0x3F, 0xFF, 0x38, 0xFF, 0xFF, 0x73, 0xF8, - 0x3F, 0xE7, 0xC0, 0x1F, 0xDF, 0x00, 0x1F, 0xBE, 0x00, 0x1F, 0x78, 0x00, - 0x3F, 0xF0, 0x00, 0x7F, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, - 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x1F, - 0xF0, 0x00, 0x7D, 0xE0, 0x00, 0xFB, 0xC0, 0x01, 0xF7, 0xC0, 0x07, 0xE7, - 0xC0, 0x1F, 0xCF, 0xE0, 0xFF, 0x8F, 0xFF, 0xEF, 0x0F, 0xFF, 0xDE, 0x0F, - 0xFE, 0x3C, 0x07, 0xF0, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x78, 0x00, 0xFE, 0x1F, 0xE7, 0xFE, 0xFF, 0xFF, 0x8F, - 0xC0, 0xF8, 0x0F, 0x80, 0xF8, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0x01, 0xFC, 0x00, 0xFF, 0xF0, - 0x1F, 0xFF, 0x83, 0xFF, 0xFC, 0x3E, 0x07, 0xE7, 0xC0, 0x3E, 0x78, 0x01, - 0xE7, 0x80, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xFC, - 0x00, 0x1F, 0xFC, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x03, 0xFE, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, - 0x80, 0x1F, 0x7E, 0x07, 0xE7, 0xFF, 0xFE, 0x3F, 0xFF, 0xC1, 0xFF, 0xF0, - 0x03, 0xFC, 0x00, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x8F, 0xFF, - 0xFF, 0xFF, 0xC7, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, - 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, 0x07, 0x81, - 0xE0, 0x78, 0x1F, 0xC7, 0xF0, 0xFC, 0x1F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, - 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, - 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, - 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x00, 0xFF, 0x00, 0x1F, 0xF0, 0x01, 0xFF, 0x00, 0x3F, 0xF8, 0x07, 0xFF, - 0xE0, 0xFF, 0x7F, 0xFF, 0x77, 0xFF, 0xE7, 0x1F, 0xFC, 0x70, 0x7E, 0x00, - 0x78, 0x00, 0x3E, 0xF0, 0x00, 0x79, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xE3, - 0xC0, 0x07, 0x87, 0xC0, 0x0F, 0x07, 0x80, 0x3C, 0x0F, 0x00, 0x78, 0x1F, - 0x01, 0xF0, 0x1E, 0x03, 0xC0, 0x3C, 0x07, 0x80, 0x7C, 0x1F, 0x00, 0x78, - 0x3C, 0x00, 0xF0, 0x78, 0x01, 0xF1, 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, - 0x80, 0x03, 0xDE, 0x00, 0x07, 0xBC, 0x00, 0x0F, 0x70, 0x00, 0x0F, 0xE0, - 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, - 0xF8, 0x03, 0xE0, 0x07, 0x9E, 0x00, 0xFC, 0x01, 0xE7, 0x80, 0x3F, 0x00, - 0x79, 0xF0, 0x0F, 0xC0, 0x3E, 0x3C, 0x07, 0xF0, 0x0F, 0x0F, 0x01, 0xFE, - 0x03, 0xC3, 0xC0, 0x7F, 0x80, 0xF0, 0x78, 0x1D, 0xE0, 0x78, 0x1E, 0x0F, - 0x38, 0x1E, 0x07, 0x83, 0xCF, 0x07, 0x81, 0xE0, 0xF3, 0xC1, 0xE0, 0x3C, - 0x38, 0xF0, 0xF0, 0x0F, 0x1E, 0x1C, 0x3C, 0x03, 0xC7, 0x87, 0x8F, 0x00, - 0x71, 0xE1, 0xE3, 0x80, 0x1E, 0x70, 0x79, 0xE0, 0x07, 0xBC, 0x0E, 0x78, - 0x01, 0xEF, 0x03, 0xDE, 0x00, 0x3B, 0xC0, 0xF7, 0x00, 0x0F, 0xE0, 0x3F, - 0xC0, 0x03, 0xF8, 0x07, 0xF0, 0x00, 0x7E, 0x01, 0xF8, 0x00, 0x1F, 0x80, - 0x7E, 0x00, 0x07, 0xC0, 0x1F, 0x80, 0x01, 0xF0, 0x03, 0xC0, 0x00, 0x7C, - 0x00, 0x78, 0xF0, 0x03, 0xE1, 0xE0, 0x0F, 0x07, 0xC0, 0x78, 0x0F, 0x03, - 0xE0, 0x1E, 0x0F, 0x00, 0x7C, 0x78, 0x00, 0xF3, 0xE0, 0x01, 0xEF, 0x00, - 0x07, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x03, - 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0xC0, 0x03, 0xCF, 0x00, 0x0F, 0x1E, - 0x00, 0x78, 0x7C, 0x03, 0xE0, 0xF0, 0x0F, 0x03, 0xE0, 0x78, 0x07, 0xC3, - 0xE0, 0x0F, 0x1F, 0x00, 0x3E, 0x78, 0x00, 0x7C, 0x78, 0x00, 0x3D, 0xE0, - 0x01, 0xF7, 0x80, 0x07, 0x8F, 0x00, 0x1E, 0x3C, 0x00, 0xF0, 0xF0, 0x03, - 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x78, 0x1E, 0x01, 0xE0, 0x3C, 0x07, 0x80, - 0xF0, 0x3C, 0x03, 0xC0, 0xF0, 0x07, 0x87, 0xC0, 0x1E, 0x1E, 0x00, 0x78, - 0x78, 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x0F, 0x3C, 0x00, 0x1F, 0xE0, - 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, - 0x3E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x3C, - 0x00, 0x01, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3E, 0x00, 0x0F, 0xF0, 0x00, - 0x3F, 0xC0, 0x00, 0xFE, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x7F, 0xFF, 0xF7, - 0xFF, 0xFF, 0x7F, 0xFF, 0xF7, 0xFF, 0xFF, 0x00, 0x01, 0xE0, 0x00, 0x3E, - 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, - 0x00, 0x07, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, - 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xC0, 0x00, 0x7C, - 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0x01, 0xE0, 0xFC, 0x1F, 0x87, 0x80, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, - 0xC0, 0x78, 0x1E, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0xC0, 0x3C, 0x03, 0x80, - 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, - 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0F, 0x00, 0xFC, 0x1F, 0x80, - 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0x1F, 0x83, 0xF0, 0x0F, 0x00, - 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x1C, 0x03, 0xC0, 0x3E, 0x03, - 0xC0, 0x78, 0x1F, 0x07, 0x80, 0xE0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0x70, 0x1E, 0x1F, 0x83, 0xF0, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0xF0, 0x0D, - 0xFF, 0x01, 0xF0, 0xF8, 0x7C, 0x0F, 0xFD, 0x80, 0x7F, 0x80, 0x03, 0xE0}; - -const GFXglyph FreeSans24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 4, 34, 16, 6, -33}, // 0x21 '!' - {17, 11, 12, 16, 2, -32}, // 0x22 '"' - {34, 24, 33, 26, 1, -31}, // 0x23 '#' - {133, 23, 41, 26, 1, -34}, // 0x24 '$' - {251, 39, 34, 42, 1, -32}, // 0x25 '%' - {417, 28, 34, 31, 2, -32}, // 0x26 '&' - {536, 4, 12, 9, 2, -32}, // 0x27 ''' - {542, 10, 44, 16, 3, -33}, // 0x28 '(' - {597, 10, 44, 16, 2, -33}, // 0x29 ')' - {652, 14, 14, 18, 2, -33}, // 0x2A '*' - {677, 23, 22, 27, 2, -21}, // 0x2B '+' - {741, 4, 12, 13, 4, -4}, // 0x2C ',' - {747, 11, 4, 16, 2, -14}, // 0x2D '-' - {753, 4, 5, 12, 4, -4}, // 0x2E '.' - {756, 13, 35, 13, 0, -33}, // 0x2F '/' - {813, 22, 34, 26, 2, -32}, // 0x30 '0' - {907, 11, 33, 26, 5, -32}, // 0x31 '1' - {953, 22, 33, 26, 2, -32}, // 0x32 '2' - {1044, 23, 34, 26, 1, -32}, // 0x33 '3' - {1142, 23, 33, 26, 1, -32}, // 0x34 '4' - {1237, 22, 34, 26, 2, -32}, // 0x35 '5' - {1331, 22, 34, 26, 2, -32}, // 0x36 '6' - {1425, 21, 33, 26, 2, -32}, // 0x37 '7' - {1512, 22, 34, 26, 2, -32}, // 0x38 '8' - {1606, 21, 34, 26, 2, -32}, // 0x39 '9' - {1696, 4, 25, 12, 4, -24}, // 0x3A ':' - {1709, 4, 32, 12, 4, -24}, // 0x3B ';' - {1725, 23, 23, 27, 2, -22}, // 0x3C '<' - {1792, 23, 12, 27, 2, -16}, // 0x3D '=' - {1827, 23, 23, 27, 2, -22}, // 0x3E '>' - {1894, 20, 35, 26, 4, -34}, // 0x3F '?' - {1982, 43, 42, 48, 2, -34}, // 0x40 '@' - {2208, 30, 34, 31, 1, -33}, // 0x41 'A' - {2336, 25, 34, 31, 4, -33}, // 0x42 'B' - {2443, 29, 36, 33, 2, -34}, // 0x43 'C' - {2574, 27, 34, 33, 4, -33}, // 0x44 'D' - {2689, 24, 34, 30, 4, -33}, // 0x45 'E' - {2791, 22, 34, 28, 4, -33}, // 0x46 'F' - {2885, 31, 36, 36, 2, -34}, // 0x47 'G' - {3025, 26, 34, 34, 4, -33}, // 0x48 'H' - {3136, 4, 34, 13, 5, -33}, // 0x49 'I' - {3153, 19, 35, 25, 2, -33}, // 0x4A 'J' - {3237, 27, 34, 32, 4, -33}, // 0x4B 'K' - {3352, 21, 34, 26, 4, -33}, // 0x4C 'L' - {3442, 32, 34, 40, 4, -33}, // 0x4D 'M' - {3578, 26, 34, 34, 4, -33}, // 0x4E 'N' - {3689, 33, 36, 37, 2, -34}, // 0x4F 'O' - {3838, 24, 34, 31, 4, -33}, // 0x50 'P' - {3940, 33, 38, 37, 2, -34}, // 0x51 'Q' - {4097, 26, 34, 33, 4, -33}, // 0x52 'R' - {4208, 27, 36, 31, 2, -34}, // 0x53 'S' - {4330, 26, 34, 30, 2, -33}, // 0x54 'T' - {4441, 26, 35, 34, 4, -33}, // 0x55 'U' - {4555, 29, 34, 30, 1, -33}, // 0x56 'V' - {4679, 42, 34, 44, 1, -33}, // 0x57 'W' - {4858, 29, 34, 31, 1, -33}, // 0x58 'X' - {4982, 30, 34, 32, 1, -33}, // 0x59 'Y' - {5110, 27, 34, 29, 1, -33}, // 0x5A 'Z' - {5225, 8, 44, 13, 3, -33}, // 0x5B '[' - {5269, 13, 35, 13, 0, -33}, // 0x5C '\' - {5326, 8, 44, 13, 1, -33}, // 0x5D ']' - {5370, 18, 18, 22, 2, -32}, // 0x5E '^' - {5411, 28, 2, 26, -1, 7}, // 0x5F '_' - {5418, 10, 7, 12, 1, -34}, // 0x60 '`' - {5427, 24, 27, 26, 1, -25}, // 0x61 'a' - {5508, 22, 35, 26, 3, -33}, // 0x62 'b' - {5605, 21, 27, 24, 1, -25}, // 0x63 'c' - {5676, 23, 35, 26, 1, -33}, // 0x64 'd' - {5777, 22, 27, 25, 1, -25}, // 0x65 'e' - {5852, 10, 34, 13, 1, -33}, // 0x66 'f' - {5895, 22, 36, 26, 1, -25}, // 0x67 'g' - {5994, 19, 34, 25, 3, -33}, // 0x68 'h' - {6075, 4, 34, 10, 3, -33}, // 0x69 'i' - {6092, 8, 44, 11, 0, -33}, // 0x6A 'j' - {6136, 21, 34, 24, 3, -33}, // 0x6B 'k' - {6226, 4, 34, 10, 3, -33}, // 0x6C 'l' - {6243, 32, 26, 38, 3, -25}, // 0x6D 'm' - {6347, 20, 26, 25, 3, -25}, // 0x6E 'n' - {6412, 23, 27, 25, 1, -25}, // 0x6F 'o' - {6490, 22, 35, 26, 3, -25}, // 0x70 'p' - {6587, 23, 35, 26, 1, -25}, // 0x71 'q' - {6688, 12, 26, 16, 3, -25}, // 0x72 'r' - {6727, 20, 27, 23, 1, -25}, // 0x73 's' - {6795, 10, 32, 13, 1, -30}, // 0x74 't' - {6835, 20, 26, 25, 3, -24}, // 0x75 'u' - {6900, 23, 25, 23, 0, -24}, // 0x76 'v' - {6972, 34, 25, 34, 0, -24}, // 0x77 'w' - {7079, 22, 25, 22, 0, -24}, // 0x78 'x' - {7148, 22, 35, 22, 0, -24}, // 0x79 'y' - {7245, 20, 25, 23, 1, -24}, // 0x7A 'z' - {7308, 11, 44, 16, 2, -33}, // 0x7B '{' - {7369, 3, 44, 12, 4, -33}, // 0x7C '|' - {7386, 11, 44, 16, 2, -33}, // 0x7D '}' - {7447, 19, 7, 24, 2, -19}}; // 0x7E '~' - -const GFXfont FreeSans24pt7b PROGMEM = {(uint8_t *)FreeSans24pt7bBitmaps, - (GFXglyph *)FreeSans24pt7bGlyphs, 0x20, - 0x7E, 56}; - -// Approx. 8136 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans9pt7b.h deleted file mode 100644 index 91c33b0..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSans9pt7b.h +++ /dev/null @@ -1,203 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSans9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xF8, 0xC0, 0xDE, 0xF7, 0x20, 0x09, 0x86, 0x41, 0x91, 0xFF, - 0x13, 0x04, 0xC3, 0x20, 0xC8, 0xFF, 0x89, 0x82, 0x61, 0x90, 0x10, 0x1F, - 0x14, 0xDA, 0x3D, 0x1E, 0x83, 0x40, 0x78, 0x17, 0x08, 0xF4, 0x7A, 0x35, - 0x33, 0xF0, 0x40, 0x20, 0x38, 0x10, 0xEC, 0x20, 0xC6, 0x20, 0xC6, 0x40, - 0xC6, 0x40, 0x6C, 0x80, 0x39, 0x00, 0x01, 0x3C, 0x02, 0x77, 0x02, 0x63, - 0x04, 0x63, 0x04, 0x77, 0x08, 0x3C, 0x0E, 0x06, 0x60, 0xCC, 0x19, 0x81, - 0xE0, 0x18, 0x0F, 0x03, 0x36, 0xC2, 0xD8, 0x73, 0x06, 0x31, 0xE3, 0xC4, - 0xFE, 0x13, 0x26, 0x6C, 0xCC, 0xCC, 0xC4, 0x66, 0x23, 0x10, 0x8C, 0x46, - 0x63, 0x33, 0x33, 0x32, 0x66, 0x4C, 0x80, 0x25, 0x7E, 0xA5, 0x00, 0x30, - 0xC3, 0x3F, 0x30, 0xC3, 0x0C, 0xD6, 0xF0, 0xC0, 0x08, 0x44, 0x21, 0x10, - 0x84, 0x42, 0x11, 0x08, 0x00, 0x3C, 0x66, 0x42, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC3, 0x42, 0x66, 0x3C, 0x11, 0x3F, 0x33, 0x33, 0x33, 0x33, - 0x30, 0x3E, 0x31, 0xB0, 0x78, 0x30, 0x18, 0x1C, 0x1C, 0x1C, 0x18, 0x18, - 0x10, 0x08, 0x07, 0xF8, 0x3C, 0x66, 0xC3, 0xC3, 0x03, 0x06, 0x1C, 0x07, - 0x03, 0xC3, 0xC3, 0x66, 0x3C, 0x0C, 0x18, 0x71, 0x62, 0xC9, 0xA3, 0x46, - 0xFE, 0x18, 0x30, 0x60, 0xC0, 0x7F, 0x20, 0x10, 0x08, 0x08, 0x07, 0xF3, - 0x8C, 0x03, 0x01, 0x80, 0xF0, 0x6C, 0x63, 0xE0, 0x1E, 0x31, 0x98, 0x78, - 0x0C, 0x06, 0xF3, 0x8D, 0x83, 0xC1, 0xE0, 0xD0, 0x6C, 0x63, 0xE0, 0xFF, - 0x03, 0x02, 0x06, 0x04, 0x0C, 0x08, 0x18, 0x18, 0x18, 0x10, 0x30, 0x30, - 0x3E, 0x31, 0xB0, 0x78, 0x3C, 0x1B, 0x18, 0xF8, 0xC6, 0xC1, 0xE0, 0xF0, - 0x6C, 0x63, 0xE0, 0x3C, 0x66, 0xC2, 0xC3, 0xC3, 0xC3, 0x67, 0x3B, 0x03, - 0x03, 0xC2, 0x66, 0x3C, 0xC0, 0x00, 0x30, 0xC0, 0x00, 0x00, 0x64, 0xA0, - 0x00, 0x81, 0xC7, 0x8E, 0x0C, 0x07, 0x80, 0x70, 0x0E, 0x01, 0x80, 0xFF, - 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x70, 0x0E, 0x01, 0xC0, 0x18, 0x38, 0x71, - 0xC0, 0x80, 0x00, 0x3E, 0x31, 0xB0, 0x78, 0x30, 0x18, 0x18, 0x38, 0x18, - 0x18, 0x0C, 0x00, 0x00, 0x01, 0x80, 0x03, 0xF0, 0x06, 0x0E, 0x06, 0x01, - 0x86, 0x00, 0x66, 0x1D, 0xBB, 0x31, 0xCF, 0x18, 0xC7, 0x98, 0x63, 0xCC, - 0x31, 0xE6, 0x11, 0xB3, 0x99, 0xCC, 0xF7, 0x86, 0x00, 0x01, 0x80, 0x00, - 0x70, 0x40, 0x0F, 0xE0, 0x06, 0x00, 0xF0, 0x0F, 0x00, 0x90, 0x19, 0x81, - 0x98, 0x10, 0x83, 0x0C, 0x3F, 0xC2, 0x04, 0x60, 0x66, 0x06, 0xC0, 0x30, - 0xFF, 0x18, 0x33, 0x03, 0x60, 0x6C, 0x0D, 0x83, 0x3F, 0xC6, 0x06, 0xC0, - 0x78, 0x0F, 0x01, 0xE0, 0x6F, 0xF8, 0x1F, 0x86, 0x19, 0x81, 0xA0, 0x3C, - 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x68, 0x0D, 0x83, 0x18, 0x61, 0xF0, - 0xFF, 0x18, 0x33, 0x03, 0x60, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, - 0x78, 0x0F, 0x03, 0x60, 0xCF, 0xF0, 0xFF, 0xE0, 0x30, 0x18, 0x0C, 0x06, - 0x03, 0xFD, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0F, 0xF8, 0xFF, 0xC0, 0xC0, - 0xC0, 0xC0, 0xC0, 0xFE, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x0F, 0x83, - 0x0E, 0x60, 0x66, 0x03, 0xC0, 0x0C, 0x00, 0xC1, 0xFC, 0x03, 0xC0, 0x36, - 0x03, 0x60, 0x73, 0x0F, 0x0F, 0x10, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, - 0x07, 0x80, 0xFF, 0xFE, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x06, - 0xFF, 0xFF, 0xFF, 0xC0, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x07, - 0x8F, 0x1E, 0x27, 0x80, 0xC0, 0xD8, 0x33, 0x0C, 0x63, 0x0C, 0xC1, 0xB8, - 0x3F, 0x07, 0x30, 0xC3, 0x18, 0x63, 0x06, 0x60, 0x6C, 0x0C, 0xC0, 0xC0, - 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xFF, 0xE0, - 0x3F, 0x01, 0xFC, 0x1F, 0xE0, 0xFD, 0x05, 0xEC, 0x6F, 0x63, 0x79, 0x13, - 0xCD, 0x9E, 0x6C, 0xF1, 0x47, 0x8E, 0x3C, 0x71, 0x80, 0xE0, 0x7C, 0x0F, - 0xC1, 0xE8, 0x3D, 0x87, 0x98, 0xF1, 0x1E, 0x33, 0xC3, 0x78, 0x6F, 0x07, - 0xE0, 0x7C, 0x0E, 0x0F, 0x81, 0x83, 0x18, 0x0C, 0xC0, 0x6C, 0x01, 0xE0, - 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1B, 0x01, 0x98, 0x0C, 0x60, 0xC0, 0xF8, - 0x00, 0xFF, 0x30, 0x6C, 0x0F, 0x03, 0xC0, 0xF0, 0x6F, 0xF3, 0x00, 0xC0, - 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x00, 0x0F, 0x81, 0x83, 0x18, 0x0C, 0xC0, - 0x6C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1B, 0x01, 0x98, 0x6C, - 0x60, 0xC0, 0xFB, 0x00, 0x08, 0xFF, 0x8C, 0x0E, 0xC0, 0x6C, 0x06, 0xC0, - 0x6C, 0x0C, 0xFF, 0x8C, 0x0E, 0xC0, 0x6C, 0x06, 0xC0, 0x6C, 0x06, 0xC0, - 0x70, 0x3F, 0x18, 0x6C, 0x0F, 0x03, 0xC0, 0x1E, 0x01, 0xF0, 0x0E, 0x00, - 0xF0, 0x3C, 0x0D, 0x86, 0x3F, 0x00, 0xFF, 0x86, 0x03, 0x01, 0x80, 0xC0, - 0x60, 0x30, 0x18, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x78, 0x0F, - 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xB0, 0x61, 0xF0, 0xC0, 0x6C, 0x0D, 0x81, 0x10, 0x63, 0x0C, 0x61, 0x04, - 0x60, 0xCC, 0x19, 0x01, 0x60, 0x3C, 0x07, 0x00, 0x60, 0xC1, 0x81, 0x30, - 0xE1, 0x98, 0x70, 0xCC, 0x28, 0x66, 0x26, 0x21, 0x13, 0x30, 0xC8, 0x98, - 0x6C, 0x4C, 0x14, 0x34, 0x0A, 0x1A, 0x07, 0x07, 0x03, 0x03, 0x80, 0x81, - 0x80, 0x60, 0x63, 0x0C, 0x30, 0xC1, 0x98, 0x0F, 0x00, 0xE0, 0x06, 0x00, - 0xF0, 0x19, 0x01, 0x98, 0x30, 0xC6, 0x0E, 0x60, 0x60, 0xC0, 0x36, 0x06, - 0x30, 0xC3, 0x0C, 0x19, 0x81, 0xD8, 0x0F, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x06, 0x00, 0xFF, 0xC0, 0x60, 0x30, 0x0C, 0x06, 0x03, - 0x01, 0xC0, 0x60, 0x30, 0x18, 0x06, 0x03, 0x00, 0xFF, 0xC0, 0xFB, 0x6D, - 0xB6, 0xDB, 0x6D, 0xB6, 0xE0, 0x84, 0x10, 0x84, 0x10, 0x84, 0x10, 0x84, - 0x10, 0x80, 0xED, 0xB6, 0xDB, 0x6D, 0xB6, 0xDB, 0xE0, 0x30, 0x60, 0xA2, - 0x44, 0xD8, 0xA1, 0x80, 0xFF, 0xC0, 0xC6, 0x30, 0x7E, 0x71, 0xB0, 0xC0, - 0x60, 0xF3, 0xDB, 0x0D, 0x86, 0xC7, 0x3D, 0xC0, 0xC0, 0x60, 0x30, 0x1B, - 0xCE, 0x36, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x7C, 0x6D, 0xE0, 0x3C, - 0x66, 0xC3, 0xC0, 0xC0, 0xC0, 0xC0, 0xC3, 0x66, 0x3C, 0x03, 0x03, 0x03, - 0x3B, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x67, 0x3B, 0x3C, 0x66, - 0xC3, 0xC3, 0xFF, 0xC0, 0xC0, 0xC3, 0x66, 0x3C, 0x36, 0x6F, 0x66, 0x66, - 0x66, 0x66, 0x60, 0x3B, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x67, - 0x3B, 0x03, 0x03, 0xC6, 0x7C, 0xC0, 0xC0, 0xC0, 0xDE, 0xE3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xFF, 0xFF, 0xC0, 0x30, 0x03, - 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0xE0, 0xC0, 0x60, 0x30, 0x18, 0x4C, - 0x46, 0x63, 0x61, 0xF0, 0xEC, 0x62, 0x31, 0x98, 0x6C, 0x30, 0xFF, 0xFF, - 0xFF, 0xC0, 0xDE, 0xF7, 0x1C, 0xF0, 0xC7, 0x86, 0x3C, 0x31, 0xE1, 0x8F, - 0x0C, 0x78, 0x63, 0xC3, 0x1E, 0x18, 0xC0, 0xDE, 0xE3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0x3C, 0x66, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0x66, 0x3C, 0xDE, 0x71, 0xB0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, - 0xE3, 0x6F, 0x30, 0x18, 0x0C, 0x00, 0x3B, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0x67, 0x3B, 0x03, 0x03, 0x03, 0xDF, 0x31, 0x8C, 0x63, 0x18, - 0xC6, 0x00, 0x3E, 0xE3, 0xC0, 0xC0, 0xE0, 0x3C, 0x07, 0xC3, 0xE3, 0x7E, - 0x66, 0xF6, 0x66, 0x66, 0x66, 0x67, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, 0xC3, - 0xC3, 0xC3, 0xC7, 0x7B, 0xC1, 0xA0, 0x98, 0xCC, 0x42, 0x21, 0xB0, 0xD0, - 0x28, 0x1C, 0x0C, 0x00, 0xC6, 0x1E, 0x38, 0x91, 0xC4, 0xCA, 0x66, 0xD3, - 0x16, 0xD0, 0xA6, 0x87, 0x1C, 0x38, 0xC0, 0xC6, 0x00, 0x43, 0x62, 0x36, - 0x1C, 0x18, 0x1C, 0x3C, 0x26, 0x62, 0x43, 0xC1, 0x21, 0x98, 0xCC, 0x42, - 0x61, 0xB0, 0xD0, 0x38, 0x1C, 0x0C, 0x06, 0x03, 0x01, 0x03, 0x00, 0xFE, - 0x0C, 0x30, 0xC1, 0x86, 0x18, 0x20, 0xC1, 0xFC, 0x36, 0x66, 0x66, 0x6E, - 0xCE, 0x66, 0x66, 0x66, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xC6, 0x66, - 0x66, 0x67, 0x37, 0x66, 0x66, 0x66, 0xC0, 0x61, 0x24, 0x38}; - -const GFXglyph FreeSans9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 2, 13, 6, 2, -12}, // 0x21 '!' - {4, 5, 4, 6, 1, -12}, // 0x22 '"' - {7, 10, 12, 10, 0, -11}, // 0x23 '#' - {22, 9, 16, 10, 1, -13}, // 0x24 '$' - {40, 16, 13, 16, 1, -12}, // 0x25 '%' - {66, 11, 13, 12, 1, -12}, // 0x26 '&' - {84, 2, 4, 4, 1, -12}, // 0x27 ''' - {85, 4, 17, 6, 1, -12}, // 0x28 '(' - {94, 4, 17, 6, 1, -12}, // 0x29 ')' - {103, 5, 5, 7, 1, -12}, // 0x2A '*' - {107, 6, 8, 11, 3, -7}, // 0x2B '+' - {113, 2, 4, 5, 2, 0}, // 0x2C ',' - {114, 4, 1, 6, 1, -4}, // 0x2D '-' - {115, 2, 1, 5, 1, 0}, // 0x2E '.' - {116, 5, 13, 5, 0, -12}, // 0x2F '/' - {125, 8, 13, 10, 1, -12}, // 0x30 '0' - {138, 4, 13, 10, 3, -12}, // 0x31 '1' - {145, 9, 13, 10, 1, -12}, // 0x32 '2' - {160, 8, 13, 10, 1, -12}, // 0x33 '3' - {173, 7, 13, 10, 2, -12}, // 0x34 '4' - {185, 9, 13, 10, 1, -12}, // 0x35 '5' - {200, 9, 13, 10, 1, -12}, // 0x36 '6' - {215, 8, 13, 10, 0, -12}, // 0x37 '7' - {228, 9, 13, 10, 1, -12}, // 0x38 '8' - {243, 8, 13, 10, 1, -12}, // 0x39 '9' - {256, 2, 10, 5, 1, -9}, // 0x3A ':' - {259, 3, 12, 5, 1, -8}, // 0x3B ';' - {264, 9, 9, 11, 1, -8}, // 0x3C '<' - {275, 9, 4, 11, 1, -5}, // 0x3D '=' - {280, 9, 9, 11, 1, -8}, // 0x3E '>' - {291, 9, 13, 10, 1, -12}, // 0x3F '?' - {306, 17, 16, 18, 1, -12}, // 0x40 '@' - {340, 12, 13, 12, 0, -12}, // 0x41 'A' - {360, 11, 13, 12, 1, -12}, // 0x42 'B' - {378, 11, 13, 13, 1, -12}, // 0x43 'C' - {396, 11, 13, 13, 1, -12}, // 0x44 'D' - {414, 9, 13, 11, 1, -12}, // 0x45 'E' - {429, 8, 13, 11, 1, -12}, // 0x46 'F' - {442, 12, 13, 14, 1, -12}, // 0x47 'G' - {462, 11, 13, 13, 1, -12}, // 0x48 'H' - {480, 2, 13, 5, 2, -12}, // 0x49 'I' - {484, 7, 13, 10, 1, -12}, // 0x4A 'J' - {496, 11, 13, 12, 1, -12}, // 0x4B 'K' - {514, 8, 13, 10, 1, -12}, // 0x4C 'L' - {527, 13, 13, 15, 1, -12}, // 0x4D 'M' - {549, 11, 13, 13, 1, -12}, // 0x4E 'N' - {567, 13, 13, 14, 1, -12}, // 0x4F 'O' - {589, 10, 13, 12, 1, -12}, // 0x50 'P' - {606, 13, 14, 14, 1, -12}, // 0x51 'Q' - {629, 12, 13, 13, 1, -12}, // 0x52 'R' - {649, 10, 13, 12, 1, -12}, // 0x53 'S' - {666, 9, 13, 11, 1, -12}, // 0x54 'T' - {681, 11, 13, 13, 1, -12}, // 0x55 'U' - {699, 11, 13, 12, 0, -12}, // 0x56 'V' - {717, 17, 13, 17, 0, -12}, // 0x57 'W' - {745, 12, 13, 12, 0, -12}, // 0x58 'X' - {765, 12, 13, 12, 0, -12}, // 0x59 'Y' - {785, 10, 13, 11, 1, -12}, // 0x5A 'Z' - {802, 3, 17, 5, 1, -12}, // 0x5B '[' - {809, 5, 13, 5, 0, -12}, // 0x5C '\' - {818, 3, 17, 5, 0, -12}, // 0x5D ']' - {825, 7, 7, 8, 1, -12}, // 0x5E '^' - {832, 10, 1, 10, 0, 3}, // 0x5F '_' - {834, 4, 3, 5, 0, -12}, // 0x60 '`' - {836, 9, 10, 10, 1, -9}, // 0x61 'a' - {848, 9, 13, 10, 1, -12}, // 0x62 'b' - {863, 8, 10, 9, 1, -9}, // 0x63 'c' - {873, 8, 13, 10, 1, -12}, // 0x64 'd' - {886, 8, 10, 10, 1, -9}, // 0x65 'e' - {896, 4, 13, 5, 1, -12}, // 0x66 'f' - {903, 8, 14, 10, 1, -9}, // 0x67 'g' - {917, 8, 13, 10, 1, -12}, // 0x68 'h' - {930, 2, 13, 4, 1, -12}, // 0x69 'i' - {934, 4, 17, 4, 0, -12}, // 0x6A 'j' - {943, 9, 13, 9, 1, -12}, // 0x6B 'k' - {958, 2, 13, 4, 1, -12}, // 0x6C 'l' - {962, 13, 10, 15, 1, -9}, // 0x6D 'm' - {979, 8, 10, 10, 1, -9}, // 0x6E 'n' - {989, 8, 10, 10, 1, -9}, // 0x6F 'o' - {999, 9, 13, 10, 1, -9}, // 0x70 'p' - {1014, 8, 13, 10, 1, -9}, // 0x71 'q' - {1027, 5, 10, 6, 1, -9}, // 0x72 'r' - {1034, 8, 10, 9, 1, -9}, // 0x73 's' - {1044, 4, 12, 5, 1, -11}, // 0x74 't' - {1050, 8, 10, 10, 1, -9}, // 0x75 'u' - {1060, 9, 10, 9, 0, -9}, // 0x76 'v' - {1072, 13, 10, 13, 0, -9}, // 0x77 'w' - {1089, 8, 10, 9, 0, -9}, // 0x78 'x' - {1099, 9, 14, 9, 0, -9}, // 0x79 'y' - {1115, 7, 10, 9, 1, -9}, // 0x7A 'z' - {1124, 4, 17, 6, 1, -12}, // 0x7B '{' - {1133, 2, 17, 4, 2, -12}, // 0x7C '|' - {1138, 4, 17, 6, 1, -12}, // 0x7D '}' - {1147, 7, 3, 9, 1, -7}}; // 0x7E '~' - -const GFXfont FreeSans9pt7b PROGMEM = {(uint8_t *)FreeSans9pt7bBitmaps, - (GFXglyph *)FreeSans9pt7bGlyphs, 0x20, - 0x7E, 22}; - -// Approx. 1822 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h deleted file mode 100644 index c1d6ef4..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold12pt7b.h +++ /dev/null @@ -1,290 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0x76, 0x66, 0x60, 0xFF, 0xF0, 0xF3, 0xFC, 0xFF, - 0x3F, 0xCF, 0x61, 0x98, 0x60, 0x0E, 0x70, 0x73, 0x83, 0x18, 0xFF, 0xF7, - 0xFF, 0xBF, 0xFC, 0x73, 0x83, 0x18, 0x18, 0xC7, 0xFF, 0xBF, 0xFD, 0xFF, - 0xE3, 0x18, 0x39, 0xC1, 0xCE, 0x0E, 0x70, 0x02, 0x00, 0x7E, 0x0F, 0xF8, - 0x7F, 0xE7, 0xAF, 0xB9, 0x3D, 0xC8, 0x0F, 0x40, 0x3F, 0x00, 0xFF, 0x00, - 0xFC, 0x05, 0xFF, 0x27, 0xF9, 0x3F, 0xEB, 0xEF, 0xFE, 0x3F, 0xE0, 0x7C, - 0x00, 0x80, 0x04, 0x00, 0x3C, 0x06, 0x0F, 0xC1, 0x81, 0xFC, 0x30, 0x73, - 0x8C, 0x0C, 0x31, 0x81, 0xCE, 0x60, 0x1F, 0xCC, 0x03, 0xF3, 0x00, 0x3C, - 0x67, 0x80, 0x19, 0xF8, 0x02, 0x7F, 0x80, 0xCE, 0x70, 0x11, 0x86, 0x06, - 0x39, 0xC1, 0x87, 0xF8, 0x30, 0x7E, 0x0C, 0x07, 0x80, 0x07, 0x80, 0x1F, - 0xC0, 0x3F, 0xE0, 0x3C, 0xE0, 0x3C, 0xE0, 0x3E, 0xE0, 0x0F, 0xC0, 0x07, - 0x00, 0x3F, 0x8C, 0x7F, 0xCC, 0xF1, 0xFC, 0xF0, 0xF8, 0xF0, 0x78, 0xF8, - 0xF8, 0x7F, 0xFC, 0x3F, 0xDE, 0x1F, 0x8E, 0xFF, 0xFF, 0x66, 0x0C, 0x73, - 0x8E, 0x71, 0xC7, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x1C, 0x71, 0xC3, - 0x8E, 0x18, 0x70, 0xC3, 0x87, 0x1C, 0x38, 0xE3, 0x87, 0x1C, 0x71, 0xC7, - 0x1C, 0x71, 0xCE, 0x38, 0xE7, 0x1C, 0x63, 0x80, 0x10, 0x23, 0x5F, 0xF3, - 0x87, 0x1B, 0x14, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x0F, 0xFF, 0xFF, 0xFF, - 0xF8, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x00, 0xFF, 0xF3, 0x36, 0xC0, 0xFF, - 0xFF, 0xC0, 0xFF, 0xF0, 0x0C, 0x30, 0x86, 0x18, 0x61, 0x0C, 0x30, 0xC2, - 0x18, 0x61, 0x84, 0x30, 0xC0, 0x1F, 0x83, 0xFC, 0x7F, 0xE7, 0x9E, 0xF0, - 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, - 0xF7, 0x9E, 0x7F, 0xE3, 0xFC, 0x0F, 0x00, 0x06, 0x1C, 0x7F, 0xFF, 0xE3, - 0xC7, 0x8F, 0x1E, 0x3C, 0x78, 0xF1, 0xE3, 0xC7, 0x8F, 0x1E, 0x1F, 0x83, - 0xFC, 0x7F, 0xEF, 0x9F, 0xF0, 0xFF, 0x0F, 0x00, 0xF0, 0x0F, 0x01, 0xE0, - 0x3C, 0x0F, 0x81, 0xE0, 0x3C, 0x03, 0x80, 0x7F, 0xF7, 0xFF, 0x7F, 0xF0, - 0x1F, 0x07, 0xFC, 0xFF, 0xEF, 0x1E, 0xF1, 0xE0, 0x1E, 0x03, 0xC0, 0x78, - 0x07, 0xC0, 0x1E, 0x00, 0xF0, 0x0F, 0xF0, 0xFF, 0x1F, 0x7F, 0xE7, 0xFC, - 0x1F, 0x80, 0x03, 0xC0, 0xF8, 0x1F, 0x07, 0xE1, 0xBC, 0x27, 0x8C, 0xF3, - 0x1E, 0x63, 0xD8, 0x7B, 0xFF, 0xFF, 0xFF, 0xFE, 0x07, 0x80, 0xF0, 0x1E, - 0x03, 0xC0, 0x3F, 0xE7, 0xFE, 0x7F, 0xE7, 0x00, 0x60, 0x06, 0xF8, 0x7F, - 0xCF, 0xFE, 0xF1, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xFE, 0x1E, 0xFF, - 0xE7, 0xFC, 0x3F, 0x00, 0x0F, 0x83, 0xFC, 0x7F, 0xE7, 0x9F, 0xF0, 0x0F, - 0x78, 0xFF, 0xCF, 0xFE, 0xF9, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xF7, - 0x9F, 0x7F, 0xE3, 0xFC, 0x0F, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, - 0x1C, 0x07, 0x01, 0xE0, 0x38, 0x0F, 0x01, 0xC0, 0x78, 0x0F, 0x01, 0xE0, - 0x38, 0x0F, 0x01, 0xE0, 0x3C, 0x00, 0x0F, 0x03, 0xFC, 0x7F, 0xC7, 0x9E, - 0x70, 0xE7, 0x0E, 0x39, 0xC1, 0xF8, 0x3F, 0xC7, 0x9E, 0xF0, 0xFF, 0x0F, - 0xF0, 0xFF, 0x9F, 0x7F, 0xE3, 0xFC, 0x1F, 0x80, 0x1F, 0x03, 0xFC, 0x7F, - 0xEF, 0x9E, 0xF0, 0xEF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF9, 0xF7, 0xFF, 0x3F, - 0xF1, 0xEF, 0x00, 0xEF, 0x1E, 0x7F, 0xE7, 0xFC, 0x1F, 0x00, 0xFF, 0xF0, - 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0x11, 0x6C, - 0x00, 0x10, 0x07, 0x03, 0xF1, 0xFC, 0x7E, 0x0F, 0x80, 0xE0, 0x0F, 0xC0, - 0x3F, 0x80, 0x7F, 0x00, 0xF0, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x0E, 0x00, 0xFC, - 0x07, 0xF0, 0x0F, 0xE0, 0x1F, 0x00, 0xF0, 0x7F, 0x1F, 0x8F, 0xE0, 0xF0, - 0x08, 0x00, 0x1F, 0x07, 0xFC, 0x7F, 0xEF, 0x9F, 0xF0, 0xFF, 0x0F, 0x00, - 0xF0, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x0E, 0x00, 0xE0, 0x00, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x00, 0xFE, 0x00, 0x1F, 0xFC, 0x03, 0xC0, - 0xF0, 0x38, 0x01, 0xC3, 0x80, 0x07, 0x18, 0x3D, 0x99, 0x87, 0xEC, 0x6C, - 0x71, 0xC3, 0xC3, 0x06, 0x1E, 0x18, 0x30, 0xF1, 0x81, 0x87, 0x8C, 0x18, - 0x7C, 0x60, 0xC3, 0x63, 0x8E, 0x3B, 0x8F, 0xDF, 0x8C, 0x3C, 0xF0, 0x70, - 0x00, 0x01, 0xC0, 0x00, 0x07, 0x80, 0x80, 0x1F, 0xFE, 0x00, 0x1F, 0xC0, - 0x00, 0x03, 0xE0, 0x03, 0xE0, 0x03, 0xE0, 0x07, 0xF0, 0x07, 0xF0, 0x07, - 0x70, 0x0F, 0x78, 0x0E, 0x78, 0x0E, 0x38, 0x1E, 0x3C, 0x1C, 0x3C, 0x3F, - 0xFC, 0x3F, 0xFE, 0x3F, 0xFE, 0x78, 0x0E, 0x78, 0x0F, 0x70, 0x0F, 0xF0, - 0x07, 0xFF, 0xC3, 0xFF, 0xCF, 0xFF, 0x3C, 0x3E, 0xF0, 0x7B, 0xC1, 0xEF, - 0x0F, 0xBF, 0xFC, 0xFF, 0xE3, 0xFF, 0xCF, 0x07, 0xBC, 0x0F, 0xF0, 0x3F, - 0xC0, 0xFF, 0x07, 0xFF, 0xFE, 0xFF, 0xFB, 0xFF, 0x80, 0x07, 0xE0, 0x1F, - 0xF8, 0x3F, 0xFC, 0x7C, 0x3E, 0x78, 0x1F, 0xF8, 0x0F, 0xF0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF8, 0x0F, 0x78, - 0x1F, 0x7C, 0x3E, 0x3F, 0xFE, 0x1F, 0xFC, 0x07, 0xF0, 0xFF, 0xE1, 0xFF, - 0xE3, 0xFF, 0xE7, 0x83, 0xEF, 0x03, 0xDE, 0x07, 0xFC, 0x07, 0xF8, 0x0F, - 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x03, 0xFE, 0x07, 0xBC, - 0x1F, 0x7F, 0xFC, 0xFF, 0xF1, 0xFF, 0x80, 0xFF, 0xF7, 0xFF, 0xBF, 0xFD, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1F, 0xFC, 0xFF, 0xE7, 0xFF, 0x3C, - 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0xFE, 0xFF, 0xEF, 0xFE, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0x03, 0xF0, 0x0F, 0xFC, 0x3F, 0xFE, 0x3E, 0x1F, - 0x78, 0x07, 0x78, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x7F, 0xF0, 0x7F, - 0xF0, 0x7F, 0xF0, 0x07, 0x78, 0x07, 0x7C, 0x0F, 0x3E, 0x1F, 0x3F, 0xFB, - 0x0F, 0xFB, 0x03, 0xE3, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, - 0x3F, 0xC0, 0xFF, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xFC, - 0x0F, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xF0, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0xE0, 0x3C, - 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, - 0xF8, 0xFF, 0x1F, 0xE3, 0xFC, 0x7B, 0xFE, 0x7F, 0xC3, 0xE0, 0xF0, 0x3E, - 0xF0, 0x3C, 0xF0, 0x78, 0xF0, 0xF0, 0xF1, 0xE0, 0xF3, 0xC0, 0xF7, 0x80, - 0xFF, 0x00, 0xFF, 0x80, 0xFF, 0x80, 0xFB, 0xC0, 0xF1, 0xE0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0x78, 0xF0, 0x3C, 0xF0, 0x3E, 0xF0, 0x1E, 0xF0, 0x1E, - 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0xFF, 0xFF, 0xFF, 0xFC, 0xF8, - 0x1F, 0xFE, 0x0F, 0xFF, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0xFF, 0xE1, 0xFF, - 0xF9, 0xFF, 0xFC, 0xEF, 0xFE, 0x77, 0xFB, 0x3B, 0xFD, 0xDD, 0xFE, 0xFC, - 0xFF, 0x7E, 0x7F, 0x9F, 0x3F, 0xCF, 0x9F, 0xE7, 0x8F, 0xF3, 0xC7, 0xF8, - 0xE3, 0xC0, 0xF0, 0x1F, 0xF0, 0x3F, 0xF0, 0x7F, 0xE0, 0xFF, 0xE1, 0xFF, - 0xC3, 0xFD, 0xC7, 0xFB, 0x8F, 0xF3, 0x9F, 0xE7, 0x3F, 0xC7, 0x7F, 0x8F, - 0xFF, 0x0F, 0xFE, 0x1F, 0xFC, 0x1F, 0xF8, 0x1F, 0xF0, 0x3F, 0xE0, 0x3C, - 0x03, 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x87, 0xC7, 0xC7, 0x80, 0xF3, 0xC0, - 0x7B, 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x01, 0xFE, - 0x00, 0xF7, 0x80, 0xF3, 0xC0, 0x78, 0xF0, 0xF8, 0x7F, 0xFC, 0x1F, 0xFC, - 0x03, 0xF8, 0x00, 0xFF, 0xE3, 0xFF, 0xEF, 0xFF, 0xBC, 0x1F, 0xF0, 0x3F, - 0xC0, 0xFF, 0x03, 0xFC, 0x1F, 0xFF, 0xFB, 0xFF, 0xCF, 0xFE, 0x3C, 0x00, - 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x00, 0x03, - 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x87, 0xC7, 0xC7, 0x80, 0xF3, 0xC0, 0x7B, - 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x01, 0xFE, 0x04, - 0xF7, 0x87, 0xF3, 0xC3, 0xF8, 0xF0, 0xF8, 0x7F, 0xFC, 0x1F, 0xFF, 0x83, - 0xF1, 0x80, 0x00, 0x00, 0xFF, 0xF8, 0xFF, 0xFC, 0xFF, 0xFC, 0xF0, 0x3E, - 0xF0, 0x1E, 0xF0, 0x1E, 0xF0, 0x1E, 0xF0, 0x3C, 0xFF, 0xF8, 0xFF, 0xF0, - 0xFF, 0xF8, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x3C, - 0xF0, 0x3C, 0xF0, 0x1F, 0x0F, 0xC0, 0x7F, 0xE1, 0xFF, 0xE7, 0xC3, 0xEF, - 0x03, 0xDE, 0x00, 0x3C, 0x00, 0x7F, 0x00, 0x7F, 0xF0, 0x3F, 0xF8, 0x0F, - 0xF8, 0x01, 0xF0, 0x01, 0xFE, 0x03, 0xDE, 0x0F, 0xBF, 0xFE, 0x3F, 0xF8, - 0x1F, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, - 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, - 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xF7, 0x87, 0x9F, 0xFE, 0x3F, 0xF0, 0x3F, - 0x00, 0x70, 0x0E, 0xF0, 0x3D, 0xE0, 0x79, 0xC0, 0xE3, 0x81, 0xC7, 0x87, - 0x87, 0x0E, 0x0E, 0x1C, 0x1E, 0x78, 0x1C, 0xE0, 0x39, 0xC0, 0x73, 0x80, - 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x70, - 0x38, 0x1C, 0xE0, 0xF0, 0x79, 0xE1, 0xF0, 0xF3, 0xC3, 0xE1, 0xE3, 0x87, - 0xC3, 0x87, 0x0F, 0x87, 0x0E, 0x3B, 0x9E, 0x1E, 0x77, 0x38, 0x1C, 0xEE, - 0x70, 0x39, 0xCC, 0xE0, 0x73, 0x99, 0xC0, 0x6E, 0x3F, 0x00, 0xFC, 0x7E, - 0x01, 0xF8, 0xFC, 0x03, 0xF0, 0xF8, 0x03, 0xE1, 0xE0, 0x07, 0x83, 0xC0, - 0x0F, 0x07, 0x80, 0xF0, 0x3C, 0xF0, 0xF9, 0xE1, 0xE1, 0xE7, 0x83, 0xCF, - 0x03, 0xFC, 0x03, 0xF0, 0x07, 0xE0, 0x07, 0x80, 0x0F, 0x00, 0x3F, 0x00, - 0xFF, 0x01, 0xFE, 0x07, 0x9E, 0x0F, 0x1E, 0x3C, 0x3C, 0xF8, 0x3D, 0xE0, - 0x78, 0xF0, 0x1E, 0x78, 0x1E, 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x78, 0x1E, - 0x78, 0x0E, 0x70, 0x0F, 0xF0, 0x07, 0xE0, 0x07, 0xE0, 0x03, 0xC0, 0x03, - 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, - 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x01, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF8, 0x07, 0x80, 0x78, 0x07, 0x80, 0x7C, 0x03, 0xC0, 0x3C, 0x03, - 0xC0, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFC, 0xF3, 0xCF, - 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xFF, 0xFF, - 0xC0, 0xC1, 0x81, 0x03, 0x06, 0x04, 0x0C, 0x18, 0x10, 0x30, 0x60, 0x40, - 0xC1, 0x81, 0x03, 0x06, 0xFF, 0xFF, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, - 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0xFF, 0xFF, 0xC0, 0x0F, 0x00, - 0xF0, 0x0F, 0x01, 0xF8, 0x1B, 0x83, 0x9C, 0x39, 0xC3, 0x0C, 0x70, 0xE7, - 0x0E, 0xE0, 0x70, 0xFF, 0xFF, 0xFF, 0xFC, 0xE6, 0x30, 0x1F, 0x83, 0xFF, - 0x1F, 0xFD, 0xE1, 0xE0, 0x0F, 0x03, 0xF9, 0xFF, 0xDF, 0x1E, 0xF0, 0xF7, - 0x8F, 0xBF, 0xFC, 0xFF, 0xE3, 0xCF, 0x80, 0xF0, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x7B, 0xC3, 0xFF, 0x9F, 0xFE, 0xF8, 0xF7, 0x83, 0xFC, - 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3F, 0xE3, 0xDF, 0xFE, 0xFF, 0xE7, 0xBE, - 0x00, 0x0F, 0x83, 0xFE, 0x7F, 0xF7, 0x8F, 0xF0, 0x7F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x77, 0x8F, 0x7F, 0xF3, 0xFE, 0x0F, 0x80, 0x00, 0x78, 0x03, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x8F, 0xBC, 0xFF, 0xEF, 0xFF, 0x78, 0xFF, - 0x83, 0xFC, 0x1F, 0xE0, 0xFF, 0x07, 0xF8, 0x3D, 0xE3, 0xEF, 0xFF, 0x3F, - 0xF8, 0xFB, 0xC0, 0x1F, 0x81, 0xFE, 0x1F, 0xF9, 0xF1, 0xCF, 0x07, 0x7F, - 0xFB, 0xFF, 0xDE, 0x00, 0xF0, 0x03, 0xC3, 0x9F, 0xFC, 0x7F, 0xC0, 0xF8, - 0x00, 0x3E, 0xFD, 0xFB, 0xC7, 0x9F, 0xBF, 0x3C, 0x78, 0xF1, 0xE3, 0xC7, - 0x8F, 0x1E, 0x3C, 0x78, 0xF0, 0x1E, 0x79, 0xFB, 0xDF, 0xFE, 0xF1, 0xFF, - 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7F, 0xC7, 0xDF, 0xFE, 0x7F, - 0xF1, 0xF7, 0x80, 0x3C, 0x01, 0xFF, 0x1E, 0x7F, 0xF0, 0xFE, 0x00, 0xF0, - 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x7C, 0xFF, 0xEF, 0xFF, 0xF9, - 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, - 0xFF, 0x0F, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x3C, - 0xF3, 0xC0, 0x00, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, 0xF3, 0xCF, 0x3C, - 0xF3, 0xCF, 0xFF, 0xFF, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, - 0x0F, 0x0F, 0xF1, 0xEF, 0x3C, 0xF7, 0x8F, 0xF0, 0xFF, 0x0F, 0xF8, 0xFF, - 0x8F, 0x3C, 0xF1, 0xCF, 0x1E, 0xF0, 0xEF, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0x8F, 0x9F, 0xFB, 0xFB, 0xFF, 0xFF, - 0xFC, 0xF8, 0xFF, 0x1E, 0x1F, 0xE3, 0xC3, 0xFC, 0x78, 0x7F, 0x8F, 0x0F, - 0xF1, 0xE1, 0xFE, 0x3C, 0x3F, 0xC7, 0x87, 0xF8, 0xF0, 0xFF, 0x1E, 0x1E, - 0xF7, 0xCF, 0xFE, 0xFF, 0xFF, 0x9F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, - 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xF0, 0x0F, 0x81, 0xFF, 0x1F, - 0xFC, 0xF1, 0xEF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7B, 0xC7, - 0x9F, 0xFC, 0x7F, 0xC0, 0xF8, 0x00, 0xF7, 0xC7, 0xFF, 0x3F, 0xFD, 0xF1, - 0xEF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7F, 0xC7, 0xBF, 0xFD, - 0xFF, 0xCF, 0x78, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x00, - 0x0F, 0x79, 0xFF, 0xDF, 0xFE, 0xF1, 0xFF, 0x07, 0xF8, 0x3F, 0xC1, 0xFE, - 0x0F, 0xF0, 0x7B, 0xC7, 0xDF, 0xFE, 0x7F, 0xF1, 0xF7, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0xF3, 0xF7, 0xFF, 0xF8, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0x1F, 0x87, 0xFC, 0xFF, 0xEF, - 0x0F, 0xF8, 0x0F, 0xF0, 0x7F, 0xE0, 0xFF, 0x01, 0xFF, 0x0F, 0xFF, 0xE7, - 0xFE, 0x1F, 0x80, 0x79, 0xE7, 0xBF, 0xFD, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, - 0x7D, 0xF3, 0xC0, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, - 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x1F, 0xFF, 0xF7, 0xFF, 0x3E, 0xF0, 0xF0, - 0x7B, 0x83, 0x9E, 0x1C, 0xF1, 0xE3, 0x8E, 0x1C, 0x70, 0x77, 0x83, 0xB8, - 0x1D, 0xC0, 0x7E, 0x03, 0xE0, 0x1F, 0x00, 0x70, 0x00, 0xF0, 0xE1, 0xDC, - 0x78, 0x77, 0x1F, 0x3D, 0xE7, 0xCF, 0x79, 0xB3, 0x8E, 0x6C, 0xE3, 0xBB, - 0x38, 0xEE, 0xFC, 0x1F, 0x3F, 0x07, 0xC7, 0xC1, 0xF1, 0xF0, 0x7C, 0x78, - 0x0E, 0x1E, 0x00, 0x78, 0xF3, 0xC7, 0x8F, 0x78, 0x3B, 0x81, 0xFC, 0x07, - 0xC0, 0x1E, 0x01, 0xF0, 0x1F, 0xC0, 0xEF, 0x0F, 0x78, 0xF1, 0xE7, 0x87, - 0x00, 0xF0, 0x7B, 0x83, 0x9E, 0x1C, 0x71, 0xE3, 0x8E, 0x1E, 0x70, 0x73, - 0x83, 0xB8, 0x1F, 0xC0, 0x7E, 0x03, 0xE0, 0x0F, 0x00, 0x70, 0x03, 0x80, - 0x3C, 0x07, 0xC0, 0x3E, 0x01, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFC, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x0F, 0xFF, 0xFF, 0xFF, 0xC0, - 0x1C, 0xF3, 0xCE, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0xBC, 0xF0, 0xE3, 0x8E, - 0x38, 0xE3, 0x8E, 0x3C, 0xF1, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0xE3, 0x8F, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x0F, 0x3D, 0xC7, 0x1C, - 0x71, 0xC7, 0x1C, 0xF3, 0xCE, 0x00, 0x78, 0x0F, 0xE0, 0xCF, 0x30, 0x7F, - 0x01, 0xE0}; - -const GFXglyph FreeSansBold12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 7, 0, 1}, // 0x20 ' ' - {0, 4, 17, 8, 3, -16}, // 0x21 '!' - {9, 10, 6, 11, 1, -17}, // 0x22 '"' - {17, 13, 16, 13, 0, -15}, // 0x23 '#' - {43, 13, 20, 13, 0, -17}, // 0x24 '$' - {76, 19, 17, 21, 1, -16}, // 0x25 '%' - {117, 16, 17, 17, 1, -16}, // 0x26 '&' - {151, 4, 6, 6, 1, -17}, // 0x27 ''' - {154, 6, 22, 8, 1, -17}, // 0x28 '(' - {171, 6, 22, 8, 1, -17}, // 0x29 ')' - {188, 7, 8, 9, 1, -17}, // 0x2A '*' - {195, 11, 11, 14, 2, -10}, // 0x2B '+' - {211, 4, 7, 6, 1, -2}, // 0x2C ',' - {215, 6, 3, 8, 1, -7}, // 0x2D '-' - {218, 4, 3, 6, 1, -2}, // 0x2E '.' - {220, 6, 17, 7, 0, -16}, // 0x2F '/' - {233, 12, 17, 13, 1, -16}, // 0x30 '0' - {259, 7, 17, 14, 3, -16}, // 0x31 '1' - {274, 12, 17, 13, 1, -16}, // 0x32 '2' - {300, 12, 17, 13, 1, -16}, // 0x33 '3' - {326, 11, 17, 13, 1, -16}, // 0x34 '4' - {350, 12, 17, 13, 1, -16}, // 0x35 '5' - {376, 12, 17, 13, 1, -16}, // 0x36 '6' - {402, 11, 17, 13, 1, -16}, // 0x37 '7' - {426, 12, 17, 13, 1, -16}, // 0x38 '8' - {452, 12, 17, 13, 1, -16}, // 0x39 '9' - {478, 4, 12, 6, 1, -11}, // 0x3A ':' - {484, 4, 16, 6, 1, -11}, // 0x3B ';' - {492, 12, 12, 14, 1, -11}, // 0x3C '<' - {510, 12, 9, 14, 1, -9}, // 0x3D '=' - {524, 12, 12, 14, 1, -11}, // 0x3E '>' - {542, 12, 18, 15, 2, -17}, // 0x3F '?' - {569, 21, 21, 23, 1, -17}, // 0x40 '@' - {625, 16, 18, 17, 0, -17}, // 0x41 'A' - {661, 14, 18, 17, 2, -17}, // 0x42 'B' - {693, 16, 18, 17, 1, -17}, // 0x43 'C' - {729, 15, 18, 17, 2, -17}, // 0x44 'D' - {763, 13, 18, 16, 2, -17}, // 0x45 'E' - {793, 12, 18, 15, 2, -17}, // 0x46 'F' - {820, 16, 18, 18, 1, -17}, // 0x47 'G' - {856, 14, 18, 18, 2, -17}, // 0x48 'H' - {888, 4, 18, 7, 2, -17}, // 0x49 'I' - {897, 11, 18, 14, 1, -17}, // 0x4A 'J' - {922, 16, 18, 17, 2, -17}, // 0x4B 'K' - {958, 11, 18, 15, 2, -17}, // 0x4C 'L' - {983, 17, 18, 21, 2, -17}, // 0x4D 'M' - {1022, 15, 18, 18, 2, -17}, // 0x4E 'N' - {1056, 17, 18, 19, 1, -17}, // 0x4F 'O' - {1095, 14, 18, 16, 2, -17}, // 0x50 'P' - {1127, 17, 19, 19, 1, -17}, // 0x51 'Q' - {1168, 16, 18, 17, 2, -17}, // 0x52 'R' - {1204, 15, 18, 16, 1, -17}, // 0x53 'S' - {1238, 12, 18, 15, 2, -17}, // 0x54 'T' - {1265, 14, 18, 18, 2, -17}, // 0x55 'U' - {1297, 15, 18, 16, 0, -17}, // 0x56 'V' - {1331, 23, 18, 23, 0, -17}, // 0x57 'W' - {1383, 15, 18, 16, 1, -17}, // 0x58 'X' - {1417, 16, 18, 15, 0, -17}, // 0x59 'Y' - {1453, 13, 18, 15, 1, -17}, // 0x5A 'Z' - {1483, 6, 23, 8, 2, -17}, // 0x5B '[' - {1501, 7, 17, 7, 0, -16}, // 0x5C '\' - {1516, 6, 23, 8, 0, -17}, // 0x5D ']' - {1534, 12, 11, 14, 1, -16}, // 0x5E '^' - {1551, 15, 2, 13, -1, 4}, // 0x5F '_' - {1555, 4, 3, 6, 0, -17}, // 0x60 '`' - {1557, 13, 13, 14, 1, -12}, // 0x61 'a' - {1579, 13, 18, 15, 2, -17}, // 0x62 'b' - {1609, 12, 13, 13, 1, -12}, // 0x63 'c' - {1629, 13, 18, 15, 1, -17}, // 0x64 'd' - {1659, 13, 13, 14, 1, -12}, // 0x65 'e' - {1681, 7, 18, 8, 1, -17}, // 0x66 'f' - {1697, 13, 18, 15, 1, -12}, // 0x67 'g' - {1727, 12, 18, 14, 2, -17}, // 0x68 'h' - {1754, 4, 18, 7, 2, -17}, // 0x69 'i' - {1763, 6, 23, 7, 0, -17}, // 0x6A 'j' - {1781, 12, 18, 14, 2, -17}, // 0x6B 'k' - {1808, 4, 18, 6, 2, -17}, // 0x6C 'l' - {1817, 19, 13, 21, 2, -12}, // 0x6D 'm' - {1848, 12, 13, 15, 2, -12}, // 0x6E 'n' - {1868, 13, 13, 15, 1, -12}, // 0x6F 'o' - {1890, 13, 18, 15, 2, -12}, // 0x70 'p' - {1920, 13, 18, 15, 1, -12}, // 0x71 'q' - {1950, 8, 13, 9, 2, -12}, // 0x72 'r' - {1963, 12, 13, 13, 1, -12}, // 0x73 's' - {1983, 6, 15, 8, 1, -14}, // 0x74 't' - {1995, 12, 13, 15, 2, -12}, // 0x75 'u' - {2015, 13, 13, 13, 0, -12}, // 0x76 'v' - {2037, 18, 13, 19, 0, -12}, // 0x77 'w' - {2067, 13, 13, 13, 0, -12}, // 0x78 'x' - {2089, 13, 18, 13, 0, -12}, // 0x79 'y' - {2119, 10, 13, 12, 1, -12}, // 0x7A 'z' - {2136, 6, 23, 9, 1, -17}, // 0x7B '{' - {2154, 2, 22, 7, 2, -17}, // 0x7C '|' - {2160, 6, 23, 9, 3, -17}, // 0x7D '}' - {2178, 12, 5, 12, 0, -7}}; // 0x7E '~' - -const GFXfont FreeSansBold12pt7b PROGMEM = { - (uint8_t *)FreeSansBold12pt7bBitmaps, (GFXglyph *)FreeSansBold12pt7bGlyphs, - 0x20, 0x7E, 29}; - -// Approx. 2858 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h deleted file mode 100644 index f0e2807..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold18pt7b.h +++ /dev/null @@ -1,483 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold18pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xE7, 0x39, 0xCE, 0x73, 0x80, - 0x0F, 0xFF, 0xFF, 0xF8, 0xF8, 0xFF, 0xC7, 0xFE, 0x3F, 0xF1, 0xFF, 0x8F, - 0xFC, 0x7D, 0xC1, 0xCE, 0x0E, 0x70, 0x70, 0x03, 0xC3, 0x80, 0x3C, 0x78, - 0x03, 0xC7, 0x80, 0x38, 0x78, 0x07, 0x87, 0x07, 0xFF, 0xFF, 0x7F, 0xFF, - 0xF7, 0xFF, 0xFF, 0x7F, 0xFF, 0xF0, 0xF0, 0xE0, 0x0F, 0x0E, 0x00, 0xF1, - 0xE0, 0x0F, 0x1E, 0x00, 0xE1, 0xE0, 0xFF, 0xFF, 0xCF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xCF, 0xFF, 0xFC, 0x1C, 0x3C, 0x03, 0xC3, 0x80, 0x3C, 0x78, 0x03, - 0xC7, 0x80, 0x38, 0x78, 0x03, 0x87, 0x80, 0x00, 0x60, 0x00, 0x7F, 0x80, - 0x3F, 0xFC, 0x0F, 0xFF, 0xC3, 0xFF, 0xFC, 0xFC, 0xDF, 0x9F, 0x19, 0xFB, - 0xC3, 0x1F, 0x78, 0x63, 0xEF, 0x8C, 0x01, 0xFD, 0x80, 0x1F, 0xF0, 0x01, - 0xFF, 0xC0, 0x1F, 0xFE, 0x00, 0x7F, 0xE0, 0x03, 0xFE, 0x00, 0x67, 0xE0, - 0x0C, 0x7F, 0xE1, 0x8F, 0xFC, 0x31, 0xFF, 0xC6, 0x3E, 0xFC, 0xDF, 0x9F, - 0xFF, 0xF1, 0xFF, 0xFC, 0x0F, 0xFF, 0x00, 0x7F, 0x80, 0x01, 0x80, 0x00, - 0x30, 0x00, 0x06, 0x00, 0x0F, 0x00, 0x1C, 0x01, 0xFE, 0x00, 0xE0, 0x1F, - 0xF8, 0x0E, 0x00, 0xFF, 0xC0, 0x70, 0x0F, 0x0F, 0x07, 0x00, 0x70, 0x38, - 0x38, 0x03, 0x81, 0xC3, 0x80, 0x1C, 0x0E, 0x3C, 0x00, 0xF0, 0xF1, 0xC0, - 0x03, 0xFF, 0x1C, 0x00, 0x1F, 0xF8, 0xE0, 0x00, 0x7F, 0x8E, 0x00, 0x00, - 0xF0, 0x70, 0xF8, 0x00, 0x07, 0x1F, 0xF0, 0x00, 0x39, 0xFF, 0xC0, 0x03, - 0x8F, 0xFE, 0x00, 0x1C, 0xF0, 0x78, 0x01, 0xC7, 0x01, 0xC0, 0x0C, 0x38, - 0x0E, 0x00, 0xE1, 0xC0, 0x70, 0x06, 0x0F, 0x07, 0x80, 0x70, 0x3F, 0xF8, - 0x07, 0x01, 0xFF, 0xC0, 0x38, 0x07, 0xFC, 0x03, 0x80, 0x0F, 0x80, 0x01, - 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0xC0, 0x03, 0xFF, 0x80, 0x1F, 0x1E, - 0x00, 0x7C, 0x78, 0x01, 0xF1, 0xE0, 0x07, 0xE7, 0x80, 0x0F, 0xBC, 0x00, - 0x1F, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xF0, 0xF0, 0xFF, - 0xE3, 0xC7, 0xE7, 0xCF, 0x3F, 0x0F, 0xF8, 0xF8, 0x3F, 0xE3, 0xE0, 0x7F, - 0x8F, 0x80, 0xFC, 0x3F, 0x03, 0xF0, 0x7E, 0x3F, 0xE1, 0xFF, 0xFF, 0x83, - 0xFF, 0xFF, 0x07, 0xFE, 0x7E, 0x07, 0xF0, 0xFC, 0xFF, 0xFF, 0xFF, 0xFD, - 0xCE, 0x70, 0x07, 0x87, 0x83, 0xC3, 0xC1, 0xE1, 0xE0, 0xF0, 0x78, 0x78, - 0x3C, 0x1E, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, - 0x0F, 0x03, 0x81, 0xE0, 0xF0, 0x78, 0x1E, 0x0F, 0x03, 0x81, 0xE0, 0x70, - 0x3C, 0x0E, 0x07, 0x80, 0xF0, 0x38, 0x1E, 0x07, 0x83, 0xC0, 0xF0, 0x78, - 0x3C, 0x0F, 0x07, 0x83, 0xC0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, - 0xC1, 0xE0, 0xF0, 0x78, 0x78, 0x3C, 0x1E, 0x0F, 0x0F, 0x07, 0x87, 0x83, - 0xC1, 0xC1, 0xE0, 0xE0, 0xF0, 0x00, 0x06, 0x00, 0x60, 0x06, 0x07, 0x6E, - 0x7F, 0xE3, 0xFC, 0x0F, 0x01, 0xF8, 0x1F, 0x83, 0x9C, 0x10, 0x80, 0x03, - 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xC0, 0x03, 0xC0, 0x03, - 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0xFF, 0xFF, 0xFF, 0x8C, 0x63, - 0x37, 0xB0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x80, 0x01, - 0x81, 0xC0, 0xC0, 0x60, 0x70, 0x38, 0x18, 0x0C, 0x0E, 0x06, 0x03, 0x01, - 0x81, 0xC0, 0xC0, 0x60, 0x30, 0x38, 0x18, 0x0C, 0x0E, 0x07, 0x03, 0x01, - 0x81, 0xC0, 0xC0, 0x00, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, 0x87, 0xFF, - 0xC7, 0xE3, 0xF3, 0xE0, 0xF9, 0xF0, 0x7D, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, - 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, - 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xDF, 0x07, 0xCF, 0x83, 0xE7, 0xE3, - 0xF1, 0xFF, 0xF0, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x01, 0xC0, - 0xF0, 0x3C, 0x1F, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0xC1, 0xF0, 0x7C, - 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, - 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC0, 0x07, 0xF0, 0x0F, 0xFE, 0x0F, 0xFF, - 0x8F, 0xFF, 0xE7, 0xE3, 0xF7, 0xE0, 0xFF, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, - 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xE0, 0x03, 0xE0, 0x03, 0xF0, 0x03, 0xF0, - 0x07, 0xF0, 0x07, 0xF0, 0x07, 0xE0, 0x07, 0xE0, 0x07, 0xC0, 0x07, 0xC0, - 0x03, 0xE0, 0x03, 0xFF, 0xFD, 0xFF, 0xFE, 0xFF, 0xFF, 0x7F, 0xFF, 0x80, - 0x07, 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0xFF, 0xCF, 0xC3, 0xF7, 0xC0, - 0xFB, 0xE0, 0x7D, 0xF0, 0x3E, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x0F, 0x80, - 0x3F, 0x80, 0x1F, 0xC0, 0x0F, 0xF0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, - 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x83, 0xF7, 0xC3, 0xF3, 0xFF, 0xF8, 0xFF, - 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0xFC, 0x01, 0xFC, - 0x01, 0xFC, 0x03, 0xFC, 0x07, 0x7C, 0x07, 0x7C, 0x0E, 0x7C, 0x0E, 0x7C, - 0x1C, 0x7C, 0x18, 0x7C, 0x38, 0x7C, 0x70, 0x7C, 0x60, 0x7C, 0xE0, 0x7C, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x7C, 0x00, 0x7C, - 0x00, 0x7C, 0x00, 0x7C, 0x00, 0x7C, 0x00, 0x7C, 0x1F, 0xFF, 0x0F, 0xFF, - 0x8F, 0xFF, 0xC7, 0xFF, 0xE3, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x00, 0x70, - 0x00, 0x79, 0xF0, 0x3F, 0xFE, 0x1F, 0xFF, 0x8F, 0xFF, 0xE7, 0xC3, 0xF0, - 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xFE, 0x03, - 0xFF, 0x03, 0xFF, 0xC3, 0xF3, 0xFF, 0xF1, 0xFF, 0xF8, 0x3F, 0xF0, 0x07, - 0xE0, 0x00, 0x03, 0xF8, 0x03, 0xFF, 0x81, 0xFF, 0xF0, 0xFF, 0xFE, 0x3E, - 0x1F, 0x9F, 0x03, 0xE7, 0xC0, 0x03, 0xE0, 0x00, 0xF8, 0xF8, 0x3E, 0xFF, - 0x8F, 0xFF, 0xF3, 0xFF, 0xFE, 0xFE, 0x1F, 0xBF, 0x03, 0xFF, 0x80, 0x7F, - 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xF7, 0x80, 0x7D, 0xF0, 0x3E, 0x7E, - 0x1F, 0x8F, 0xFF, 0xC1, 0xFF, 0xF0, 0x3F, 0xF0, 0x03, 0xF0, 0x00, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xF0, 0x00, 0xF8, - 0x00, 0xF8, 0x00, 0x78, 0x00, 0x7C, 0x00, 0x3C, 0x00, 0x3E, 0x00, 0x1E, - 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xC0, 0x03, - 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x78, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xE0, 0x07, 0xFC, 0x0F, 0xFF, 0x07, - 0xFF, 0xC7, 0xC3, 0xF3, 0xC0, 0xF9, 0xE0, 0x3C, 0xF0, 0x1E, 0x78, 0x1F, - 0x1E, 0x1F, 0x07, 0xFF, 0x01, 0xFF, 0x03, 0xFF, 0xE3, 0xF1, 0xF9, 0xF0, - 0x7D, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x83, 0xF7, - 0xC3, 0xF3, 0xFF, 0xF8, 0xFF, 0xF8, 0x3F, 0xF8, 0x07, 0xF0, 0x00, 0x07, - 0xE0, 0x0F, 0xFC, 0x0F, 0xFF, 0x0F, 0xFF, 0xC7, 0xE3, 0xF7, 0xE0, 0xFB, - 0xE0, 0x3D, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x83, - 0xF7, 0xE3, 0xFB, 0xFF, 0xFC, 0xFF, 0xFE, 0x3F, 0xDF, 0x07, 0xCF, 0x80, - 0x07, 0x80, 0x03, 0xDF, 0x03, 0xE7, 0xC3, 0xE3, 0xFF, 0xF0, 0xFF, 0xF0, - 0x3F, 0xF0, 0x07, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xC6, 0x33, 0x9B, 0xD8, 0x00, 0x00, 0xC0, 0x00, - 0xF0, 0x01, 0xFC, 0x03, 0xFF, 0x03, 0xFF, 0x07, 0xFE, 0x0F, 0xFC, 0x03, - 0xF8, 0x00, 0xF0, 0x00, 0x3F, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x07, - 0xFF, 0x00, 0x3F, 0xF0, 0x01, 0xFC, 0x00, 0x1F, 0x00, 0x00, 0xC0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0xC0, 0x00, 0x3C, 0x00, 0x0F, 0xE0, 0x03, 0xFF, 0x00, 0x3F, 0xF0, - 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0x00, 0x03, 0xC0, 0x07, 0xF0, - 0x0F, 0xFC, 0x1F, 0xF8, 0x3F, 0xF8, 0x3F, 0xF0, 0x0F, 0xE0, 0x03, 0xC0, - 0x00, 0xC0, 0x00, 0x00, 0x07, 0xF0, 0x07, 0xFF, 0x03, 0xFF, 0xF1, 0xFF, - 0xFC, 0x7E, 0x3F, 0xBF, 0x03, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, - 0xC0, 0x03, 0xF0, 0x01, 0xFC, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x80, - 0x1F, 0xC0, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, - 0x00, 0xF8, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, - 0xFF, 0xFF, 0xC0, 0x01, 0xF8, 0x07, 0xF0, 0x03, 0xE0, 0x01, 0xF8, 0x07, - 0x80, 0x00, 0x7C, 0x0F, 0x00, 0x00, 0x3C, 0x1E, 0x03, 0xE3, 0x9E, 0x3C, - 0x0F, 0xF7, 0x8E, 0x38, 0x1F, 0xFF, 0x0E, 0x78, 0x3E, 0x1F, 0x07, 0x70, - 0x38, 0x0F, 0x07, 0x70, 0x78, 0x0F, 0x07, 0xE0, 0x70, 0x0E, 0x07, 0xE0, - 0x70, 0x0E, 0x07, 0xE0, 0xE0, 0x0E, 0x07, 0xE0, 0xE0, 0x1E, 0x0F, 0xE0, - 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x3C, 0x1E, 0xE0, 0xF0, 0x3C, 0x3C, 0xF0, - 0xF0, 0xFC, 0x7C, 0x70, 0x7F, 0xFF, 0xF8, 0x78, 0x3F, 0xCF, 0xF0, 0x3C, - 0x1F, 0x07, 0xC0, 0x3E, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x0F, - 0xC0, 0x01, 0x00, 0x07, 0xF0, 0x0F, 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, - 0xFF, 0xFF, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0x80, 0x01, 0xFF, - 0x80, 0x01, 0xFF, 0x80, 0x01, 0xF7, 0xC0, 0x03, 0xE7, 0xC0, 0x03, 0xE7, - 0xC0, 0x03, 0xE3, 0xE0, 0x07, 0xC3, 0xE0, 0x07, 0xC3, 0xE0, 0x07, 0xC1, - 0xF0, 0x0F, 0x81, 0xF0, 0x0F, 0x81, 0xF0, 0x0F, 0xFF, 0xF8, 0x1F, 0xFF, - 0xF8, 0x1F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFC, 0x3E, 0x00, 0x7C, 0x3E, 0x00, - 0x7E, 0x3E, 0x00, 0x3E, 0x7C, 0x00, 0x3E, 0x7C, 0x00, 0x3F, 0x7C, 0x00, - 0x1F, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0xFF, 0xFF, 0x8F, 0xFF, 0xFC, 0xF8, - 0x07, 0xEF, 0x80, 0x3E, 0xF8, 0x03, 0xEF, 0x80, 0x3E, 0xF8, 0x03, 0xEF, - 0x80, 0x3E, 0xF8, 0x07, 0xCF, 0xFF, 0xF8, 0xFF, 0xFF, 0x0F, 0xFF, 0xF8, - 0xFF, 0xFF, 0xCF, 0x80, 0x7E, 0xF8, 0x01, 0xEF, 0x80, 0x1F, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x3E, 0xFF, 0xFF, 0xEF, 0xFF, - 0xFC, 0xFF, 0xFF, 0x8F, 0xFF, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xFF, 0x80, - 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0xC3, 0xF8, 0x1F, 0x87, 0xE0, 0x1F, 0x9F, - 0x80, 0x1F, 0x3E, 0x00, 0x1F, 0x7C, 0x00, 0x3F, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x7D, 0xF0, 0x00, - 0xFB, 0xF0, 0x03, 0xF3, 0xF0, 0x0F, 0xC7, 0xF0, 0x3F, 0x87, 0xFF, 0xFE, - 0x07, 0xFF, 0xF8, 0x03, 0xFF, 0xC0, 0x01, 0xFE, 0x00, 0xFF, 0xFC, 0x07, - 0xFF, 0xF8, 0x3F, 0xFF, 0xE1, 0xFF, 0xFF, 0x8F, 0x80, 0xFE, 0x7C, 0x01, - 0xF3, 0xE0, 0x07, 0xDF, 0x00, 0x3E, 0xF8, 0x01, 0xF7, 0xC0, 0x07, 0xFE, - 0x00, 0x3F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x03, - 0xFF, 0x00, 0x1F, 0xF8, 0x00, 0xFF, 0xC0, 0x0F, 0xFE, 0x00, 0x7D, 0xF0, - 0x03, 0xEF, 0x80, 0x3E, 0x7C, 0x07, 0xF3, 0xFF, 0xFF, 0x1F, 0xFF, 0xF0, - 0xFF, 0xFF, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, 0xDF, 0xFF, 0xFB, 0xFF, - 0xFF, 0x7F, 0xFF, 0xEF, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7F, 0xFF, 0xCF, 0xFF, - 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE7, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, - 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0xFF, 0xEF, 0xFF, 0xF7, - 0xFF, 0xFB, 0xFF, 0xFD, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, - 0x00, 0x7C, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x03, 0xFF, 0xE0, 0x07, 0xFF, - 0xF8, 0x0F, 0xFF, 0xFC, 0x1F, 0xC0, 0xFE, 0x3F, 0x00, 0x7E, 0x7E, 0x00, - 0x3F, 0x7C, 0x00, 0x1F, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x03, 0xFF, 0xF8, 0x03, 0xFF, 0xF8, 0x03, - 0xFF, 0xF8, 0x03, 0xFF, 0xFC, 0x00, 0x0F, 0x7C, 0x00, 0x1F, 0x7C, 0x00, - 0x1F, 0x7E, 0x00, 0x3F, 0x3F, 0x00, 0x7F, 0x1F, 0xC1, 0xFF, 0x0F, 0xFF, - 0xFF, 0x07, 0xFF, 0xE7, 0x03, 0xFF, 0xC7, 0x00, 0xFF, 0x07, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0x01, 0xFF, - 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, - 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F, 0xF8, 0x1F, - 0xF8, 0x1F, 0xFC, 0x3F, 0x7F, 0xFE, 0x3F, 0xFC, 0x1F, 0xF8, 0x07, 0xE0, - 0xF8, 0x01, 0xFB, 0xE0, 0x0F, 0xCF, 0x80, 0x7E, 0x3E, 0x03, 0xF0, 0xF8, - 0x1F, 0x83, 0xE0, 0xFC, 0x0F, 0x87, 0xE0, 0x3E, 0x3F, 0x00, 0xF8, 0xF8, - 0x03, 0xE7, 0xE0, 0x0F, 0xBF, 0x00, 0x3F, 0xF8, 0x00, 0xFF, 0xF0, 0x03, - 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x3F, 0xBF, 0x00, 0xFC, 0x7E, 0x03, 0xE0, - 0xFC, 0x0F, 0x81, 0xF8, 0x3E, 0x07, 0xE0, 0xF8, 0x0F, 0xC3, 0xE0, 0x1F, - 0x8F, 0x80, 0x7F, 0x3E, 0x00, 0xFC, 0xF8, 0x01, 0xFB, 0xE0, 0x03, 0xF0, - 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, - 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, - 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0x00, 0xFF, 0xFF, - 0x00, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0x81, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0x81, 0xFF, 0xFB, 0xC3, 0xDF, 0xFB, - 0xC3, 0xDF, 0xFB, 0xC3, 0xDF, 0xFB, 0xC3, 0xDF, 0xF9, 0xC7, 0xDF, 0xF9, - 0xE7, 0x9F, 0xF9, 0xE7, 0x9F, 0xF9, 0xE7, 0x9F, 0xF9, 0xE7, 0x9F, 0xF8, - 0xFF, 0x1F, 0xF8, 0xFF, 0x1F, 0xF8, 0xFF, 0x1F, 0xF8, 0xFF, 0x1F, 0xF8, - 0x7F, 0x1F, 0xF8, 0x7E, 0x1F, 0xF8, 0x7E, 0x1F, 0xF8, 0x7E, 0x1F, 0xF8, - 0x3E, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x1F, 0xFE, 0x01, 0xFF, 0xE0, 0x1F, - 0xFF, 0x01, 0xFF, 0xF0, 0x1F, 0xFF, 0x81, 0xFF, 0xF8, 0x1F, 0xFF, 0xC1, - 0xFF, 0xBC, 0x1F, 0xFB, 0xE1, 0xFF, 0x9F, 0x1F, 0xF9, 0xF1, 0xFF, 0x8F, - 0x9F, 0xF8, 0x79, 0xFF, 0x87, 0xDF, 0xF8, 0x3D, 0xFF, 0x83, 0xFF, 0xF8, - 0x1F, 0xFF, 0x81, 0xFF, 0xF8, 0x0F, 0xFF, 0x80, 0xFF, 0xF8, 0x07, 0xFF, - 0x80, 0x3F, 0xF8, 0x03, 0xFF, 0x80, 0x1F, 0x00, 0x7F, 0x00, 0x01, 0xFF, - 0xF0, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x01, 0xFC, 0x1F, 0xC1, 0xF8, - 0x03, 0xF1, 0xF8, 0x00, 0xFC, 0xF8, 0x00, 0x3E, 0x7C, 0x00, 0x1F, 0x7C, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, - 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, 0x1F, 0xF8, 0x00, 0x0F, - 0xBE, 0x00, 0x0F, 0x9F, 0x00, 0x07, 0xCF, 0xC0, 0x07, 0xE3, 0xF0, 0x07, - 0xE0, 0xFE, 0x0F, 0xE0, 0x7F, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x03, 0xFF, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFF, 0xFC, 0x1F, 0xFF, 0xE3, 0xFF, 0xFE, - 0x7F, 0xFF, 0xEF, 0x80, 0xFF, 0xF0, 0x0F, 0xFE, 0x00, 0xFF, 0xC0, 0x1F, - 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xE0, 0x1F, 0xFC, 0x07, 0xEF, 0xFF, 0xFD, - 0xFF, 0xFF, 0x3F, 0xFF, 0xC7, 0xFF, 0xE0, 0xF8, 0x00, 0x1F, 0x00, 0x03, - 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, - 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFF, - 0xF0, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x01, 0xFC, 0x1F, 0xC1, 0xF8, - 0x03, 0xF1, 0xF8, 0x00, 0xFC, 0xF8, 0x00, 0x3E, 0x7C, 0x00, 0x1F, 0x7C, - 0x00, 0x07, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, - 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, 0x1F, 0xF8, 0x01, 0x0F, - 0xBE, 0x01, 0xCF, 0x9F, 0x01, 0xFF, 0xCF, 0xC0, 0x7F, 0xE3, 0xF0, 0x1F, - 0xE0, 0xFE, 0x0F, 0xF0, 0x7F, 0xFF, 0xF8, 0x0F, 0xFF, 0xFE, 0x03, 0xFF, - 0xEF, 0x80, 0x3F, 0xC3, 0x80, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0x07, 0xFF, - 0xFE, 0x3F, 0xFF, 0xF9, 0xFF, 0xFF, 0xCF, 0x80, 0x3F, 0x7C, 0x00, 0xFB, - 0xE0, 0x07, 0xDF, 0x00, 0x3E, 0xF8, 0x01, 0xF7, 0xC0, 0x0F, 0x3E, 0x00, - 0xF9, 0xFF, 0xFF, 0x8F, 0xFF, 0xF8, 0x7F, 0xFF, 0xC3, 0xFF, 0xFF, 0x1F, - 0x00, 0xFC, 0xF8, 0x03, 0xE7, 0xC0, 0x1F, 0x3E, 0x00, 0xF9, 0xF0, 0x07, - 0xCF, 0x80, 0x3E, 0x7C, 0x01, 0xF3, 0xE0, 0x0F, 0x9F, 0x00, 0x7C, 0xF8, - 0x03, 0xF7, 0xC0, 0x0F, 0xC0, 0x07, 0xF8, 0x01, 0xFF, 0xF0, 0x3F, 0xFF, - 0x87, 0xFF, 0xFC, 0x7E, 0x0F, 0xCF, 0xC0, 0x7E, 0xF8, 0x03, 0xEF, 0x80, - 0x3E, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0x00, 0x07, 0xFF, 0xC0, 0x3F, - 0xFF, 0x81, 0xFF, 0xFC, 0x03, 0xFF, 0xE0, 0x01, 0xFF, 0x00, 0x03, 0xF0, - 0x00, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xFC, 0x03, 0xFF, 0xE0, 0x7E, - 0x7F, 0xFF, 0xE3, 0xFF, 0xFC, 0x1F, 0xFF, 0x00, 0x3F, 0xC0, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x1F, 0x00, 0x03, 0xE0, - 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, - 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, - 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, - 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x01, 0xFF, - 0x80, 0x1F, 0x7C, 0x03, 0xE7, 0xE0, 0x7E, 0x3F, 0xFF, 0xC3, 0xFF, 0xFC, - 0x0F, 0xFF, 0x00, 0x3F, 0xC0, 0xF8, 0x00, 0xFB, 0xE0, 0x03, 0xE7, 0xC0, - 0x1F, 0x9F, 0x00, 0x7C, 0x7C, 0x01, 0xF0, 0xF8, 0x07, 0xC3, 0xE0, 0x3E, - 0x0F, 0x80, 0xF8, 0x1E, 0x03, 0xE0, 0x7C, 0x1F, 0x01, 0xF0, 0x7C, 0x03, - 0xC1, 0xF0, 0x0F, 0x87, 0x80, 0x3E, 0x3E, 0x00, 0xF8, 0xF8, 0x01, 0xE3, - 0xC0, 0x07, 0xCF, 0x00, 0x1F, 0x7C, 0x00, 0x3D, 0xE0, 0x00, 0xFF, 0x80, - 0x03, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x00, - 0xF8, 0x00, 0x03, 0xE0, 0x00, 0xF8, 0x07, 0xC0, 0x3F, 0xF8, 0x07, 0xE0, - 0x3E, 0xFC, 0x07, 0xE0, 0x3E, 0x7C, 0x0F, 0xE0, 0x3E, 0x7C, 0x0F, 0xE0, - 0x7E, 0x7C, 0x0F, 0xE0, 0x7C, 0x7C, 0x0F, 0xF0, 0x7C, 0x3E, 0x0F, 0xF0, - 0x7C, 0x3E, 0x1E, 0xF0, 0x78, 0x3E, 0x1E, 0x70, 0xF8, 0x1E, 0x1E, 0x70, - 0xF8, 0x1E, 0x1E, 0x78, 0xF8, 0x1F, 0x1E, 0x78, 0xF0, 0x1F, 0x3C, 0x78, - 0xF0, 0x0F, 0x3C, 0x39, 0xF0, 0x0F, 0x3C, 0x3D, 0xF0, 0x0F, 0x3C, 0x3D, - 0xE0, 0x0F, 0xBC, 0x3D, 0xE0, 0x07, 0xF8, 0x3D, 0xE0, 0x07, 0xF8, 0x1F, - 0xE0, 0x07, 0xF8, 0x1F, 0xC0, 0x03, 0xF8, 0x1F, 0xC0, 0x03, 0xF8, 0x1F, - 0xC0, 0x03, 0xF0, 0x0F, 0x80, 0x03, 0xF0, 0x0F, 0x80, 0x01, 0xF0, 0x0F, - 0x80, 0xFE, 0x01, 0xF9, 0xF8, 0x07, 0xE3, 0xF0, 0x3F, 0x0F, 0xC0, 0xF8, - 0x1F, 0x87, 0xE0, 0x7E, 0x3F, 0x00, 0xFC, 0xFC, 0x01, 0xF7, 0xE0, 0x07, - 0xFF, 0x00, 0x0F, 0xFC, 0x00, 0x3F, 0xE0, 0x00, 0x7F, 0x00, 0x00, 0xFC, - 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0x80, 0x03, 0xFF, 0x00, - 0x1F, 0x7E, 0x00, 0xFC, 0xF8, 0x03, 0xE3, 0xF0, 0x1F, 0x87, 0xC0, 0x7C, - 0x1F, 0x83, 0xF0, 0x3F, 0x1F, 0x80, 0xFC, 0x7E, 0x01, 0xFB, 0xF0, 0x07, - 0xF0, 0xFC, 0x01, 0xFF, 0xE0, 0x0F, 0x9F, 0x00, 0xFC, 0xFC, 0x07, 0xC3, - 0xE0, 0x7E, 0x1F, 0x83, 0xE0, 0x7C, 0x1F, 0x03, 0xF1, 0xF0, 0x0F, 0x8F, - 0x80, 0x7E, 0xF8, 0x01, 0xF7, 0xC0, 0x0F, 0xFC, 0x00, 0x3F, 0xE0, 0x00, - 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x7E, 0x00, 0x1F, - 0x80, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF8, - 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x00, - 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, - 0xFC, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, - 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, - 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, - 0xF8, 0xF8, 0xF8, 0xF8, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x38, 0x06, - 0x01, 0x80, 0x70, 0x0C, 0x03, 0x00, 0xE0, 0x18, 0x06, 0x01, 0xC0, 0x30, - 0x0C, 0x03, 0x00, 0xE0, 0x18, 0x06, 0x01, 0xC0, 0x30, 0x0C, 0x03, 0x80, - 0x60, 0x18, 0x07, 0x01, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x1F, 0x1F, - 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, - 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0xFF, 0xFF, - 0xFF, 0xFF, 0x03, 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x0F, 0xF0, 0x0F, 0xF0, - 0x0F, 0x78, 0x1E, 0x78, 0x1E, 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x1E, - 0x78, 0x1E, 0x78, 0x1E, 0x70, 0x0F, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0xF8, 0xF0, 0xF0, 0xE0, 0xE0, 0x07, 0xF8, 0x07, - 0xFF, 0x83, 0xFF, 0xF1, 0xFF, 0xFE, 0x7C, 0x1F, 0xBE, 0x03, 0xE0, 0x00, - 0xF8, 0x01, 0xFE, 0x0F, 0xFF, 0x8F, 0xFF, 0xE7, 0xF8, 0xFB, 0xF0, 0x3E, - 0xF8, 0x0F, 0xBE, 0x07, 0xEF, 0xC3, 0xFB, 0xFF, 0xFE, 0x7F, 0xFF, 0x8F, - 0xFB, 0xF1, 0xF8, 0xFC, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE7, 0xE0, 0xFB, 0xFC, - 0x3F, 0xFF, 0xCF, 0xFF, 0xF3, 0xF8, 0x7E, 0xFC, 0x0F, 0xBF, 0x03, 0xFF, - 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xF0, - 0x3F, 0xFC, 0x0F, 0xBF, 0x87, 0xEF, 0xFF, 0xF3, 0xFF, 0xFC, 0xFB, 0xFC, - 0x3E, 0x7E, 0x00, 0x03, 0xF0, 0x07, 0xFE, 0x0F, 0xFF, 0x87, 0xFF, 0xE7, - 0xE1, 0xFB, 0xE0, 0x7F, 0xE0, 0x3F, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, - 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0xFB, 0xE0, 0x7D, 0xF8, 0x7E, 0x7F, - 0xFE, 0x3F, 0xFE, 0x0F, 0xFE, 0x00, 0xFC, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, - 0xF8, 0x1F, 0x1F, 0x0F, 0xFB, 0xE3, 0xFF, 0xFC, 0xFF, 0xFF, 0xBF, 0x8F, - 0xF7, 0xC0, 0x7F, 0xF8, 0x0F, 0xFE, 0x00, 0xFF, 0xC0, 0x1F, 0xF8, 0x03, - 0xFF, 0x00, 0x7F, 0xE0, 0x0F, 0xFE, 0x03, 0xF7, 0xC0, 0x7E, 0xFC, 0x3F, - 0xCF, 0xFF, 0xF8, 0xFF, 0xFF, 0x0F, 0xFB, 0xE0, 0xFC, 0x7C, 0x07, 0xE0, - 0x07, 0xFE, 0x03, 0xFF, 0xE0, 0xFF, 0xF8, 0x7E, 0x1F, 0x1F, 0x03, 0xCF, - 0x80, 0xFB, 0xE0, 0x1E, 0xFF, 0xFF, 0xBF, 0xFF, 0xEF, 0xFF, 0xFB, 0xE0, - 0x00, 0xF8, 0x00, 0x3F, 0x03, 0xE7, 0xE1, 0xF9, 0xFF, 0xFC, 0x3F, 0xFE, - 0x07, 0xFF, 0x00, 0x7F, 0x00, 0x0F, 0xC7, 0xF3, 0xFC, 0xFF, 0x3E, 0x0F, - 0x83, 0xE3, 0xFE, 0xFF, 0xBF, 0xE3, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, - 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, - 0x0F, 0x80, 0x07, 0xC7, 0xC3, 0xFD, 0xF3, 0xFF, 0xFC, 0xFF, 0xFF, 0x7E, - 0x1F, 0xDF, 0x03, 0xFF, 0xC0, 0xFF, 0xE0, 0x1F, 0xF8, 0x07, 0xFE, 0x01, - 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xFC, 0x0F, 0xDF, 0x03, 0xF7, 0xE1, 0xFD, - 0xFF, 0xFF, 0x3F, 0xFF, 0xC7, 0xFD, 0xF0, 0x7C, 0x7C, 0x00, 0x1F, 0x00, - 0x07, 0xFF, 0x03, 0xF7, 0xE1, 0xF9, 0xFF, 0xFC, 0x3F, 0xFE, 0x01, 0xFE, - 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, - 0xC0, 0x03, 0xE0, 0x01, 0xF1, 0xF0, 0xFB, 0xFE, 0x7F, 0xFF, 0xBF, 0xFF, - 0xDF, 0xC3, 0xFF, 0xC0, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, - 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, - 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xC0, 0xFF, 0xFF, 0xF0, - 0x00, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0x3E, 0x7C, 0xF9, 0xF0, 0x00, 0x00, 0x1F, 0x3E, 0x7C, 0xF9, - 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, - 0x7C, 0xF9, 0xF3, 0xFF, 0xFF, 0xFE, 0xF8, 0xF8, 0x00, 0x7C, 0x00, 0x3E, - 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x3E, - 0xF8, 0x3E, 0x7C, 0x3F, 0x3E, 0x3F, 0x1F, 0x3F, 0x0F, 0x9F, 0x07, 0xDF, - 0x03, 0xFF, 0x81, 0xFF, 0xC0, 0xFF, 0xF0, 0x7F, 0xF8, 0x3F, 0x7E, 0x1F, - 0x1F, 0x0F, 0x87, 0xC7, 0xC3, 0xF3, 0xE0, 0xF9, 0xF0, 0x7E, 0xF8, 0x1F, - 0x7C, 0x0F, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xF8, 0xF8, 0x3F, 0x1F, - 0x7F, 0x9F, 0xF3, 0xFF, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xC3, 0xF8, - 0x7F, 0xF8, 0x3F, 0x07, 0xFE, 0x07, 0xC0, 0xFF, 0xC0, 0xF8, 0x1F, 0xF8, - 0x1F, 0x03, 0xFF, 0x03, 0xE0, 0x7F, 0xE0, 0x7C, 0x0F, 0xFC, 0x0F, 0x81, - 0xFF, 0x81, 0xF0, 0x3F, 0xF0, 0x3E, 0x07, 0xFE, 0x07, 0xC0, 0xFF, 0xC0, - 0xF8, 0x1F, 0xF8, 0x1F, 0x03, 0xFF, 0x03, 0xE0, 0x7F, 0xE0, 0x7C, 0x0F, - 0x80, 0xF8, 0xF8, 0x7D, 0xFF, 0x3F, 0xFF, 0xDF, 0xFF, 0xEF, 0xE1, 0xFF, - 0xE0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, - 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, - 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xE0, 0x03, 0xF8, 0x01, 0xFF, 0xC0, 0x7F, - 0xFC, 0x1F, 0xFF, 0xC7, 0xF0, 0xFC, 0xF8, 0x0F, 0xBF, 0x01, 0xFF, 0xC0, - 0x1F, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xE0, 0x0F, 0xFC, 0x01, 0xFF, 0xC0, - 0x7E, 0xF8, 0x0F, 0x9F, 0x87, 0xF1, 0xFF, 0xFC, 0x1F, 0xFF, 0x01, 0xFF, - 0xC0, 0x0F, 0xE0, 0x00, 0xF8, 0xF8, 0x3E, 0xFF, 0x8F, 0xFF, 0xF3, 0xFF, - 0xFC, 0xFE, 0x1F, 0xBF, 0x03, 0xEF, 0xC0, 0xFF, 0xE0, 0x1F, 0xF8, 0x07, - 0xFE, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xFC, 0x0F, 0xFF, 0x03, 0xEF, - 0xE1, 0xFB, 0xFF, 0xFC, 0xFF, 0xFF, 0x3E, 0xFF, 0x0F, 0x8F, 0x83, 0xE0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0xE3, 0xE1, 0xFF, 0x7C, 0x7F, 0xFF, 0x9F, 0xFF, - 0xF7, 0xF1, 0xFE, 0xF8, 0x0F, 0xFF, 0x01, 0xFF, 0xC0, 0x1F, 0xF8, 0x03, - 0xFF, 0x00, 0x7F, 0xE0, 0x0F, 0xFC, 0x01, 0xFF, 0xC0, 0x7E, 0xF8, 0x0F, - 0xDF, 0x83, 0xF9, 0xFF, 0xFF, 0x3F, 0xFF, 0xE1, 0xFF, 0x7C, 0x1F, 0x8F, - 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1F, - 0x00, 0x03, 0xE0, 0x00, 0x7C, 0xF8, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xE1, - 0xF8, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, - 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x00, 0x07, 0xF0, 0x0F, 0xFE, - 0x0F, 0xFF, 0x87, 0xFF, 0xE7, 0xE1, 0xF3, 0xE0, 0x79, 0xF8, 0x00, 0xFF, - 0x80, 0x3F, 0xFC, 0x1F, 0xFF, 0x83, 0xFF, 0xC0, 0x3F, 0xF0, 0x01, 0xFF, - 0xC0, 0x7D, 0xF0, 0x7E, 0xFF, 0xFE, 0x3F, 0xFF, 0x0F, 0xFF, 0x01, 0xFE, - 0x00, 0x3E, 0x1F, 0x0F, 0x87, 0xC3, 0xE7, 0xFF, 0xFF, 0xFF, 0x3E, 0x1F, - 0x0F, 0x87, 0xC3, 0xE1, 0xF0, 0xF8, 0x7C, 0x3E, 0x1F, 0x0F, 0x87, 0xF3, - 0xF8, 0xFC, 0x3E, 0xF8, 0x0F, 0xFC, 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, - 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x1F, 0xF8, 0x0F, 0xFC, 0x07, - 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0xFF, 0xF0, 0xFF, 0xFF, - 0xFF, 0x7F, 0xFF, 0x9F, 0xF7, 0xC7, 0xE3, 0xE0, 0x7C, 0x07, 0xCF, 0x80, - 0xF9, 0xF0, 0x1F, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, 0x7C, 0x1F, 0x07, 0x83, - 0xC0, 0xF8, 0xF8, 0x1F, 0x1F, 0x01, 0xE3, 0xC0, 0x3E, 0x78, 0x07, 0xDF, - 0x00, 0x7B, 0xC0, 0x0F, 0xF8, 0x01, 0xFF, 0x00, 0x1F, 0xC0, 0x03, 0xF8, - 0x00, 0x7F, 0x00, 0x07, 0xC0, 0x00, 0xFC, 0x1F, 0x03, 0xEF, 0x83, 0xE0, - 0x7D, 0xF0, 0x7E, 0x1F, 0x3E, 0x0F, 0xC3, 0xE3, 0xC3, 0xF8, 0x7C, 0x7C, - 0x7F, 0x0F, 0x0F, 0x8F, 0xF3, 0xE1, 0xF1, 0xDE, 0x7C, 0x1E, 0x7B, 0xCF, - 0x83, 0xEF, 0x39, 0xE0, 0x7D, 0xE7, 0x3C, 0x07, 0xB8, 0xFF, 0x80, 0xF7, - 0x1F, 0xE0, 0x1F, 0xE3, 0xFC, 0x03, 0xFC, 0x3F, 0x80, 0x3F, 0x07, 0xF0, - 0x07, 0xE0, 0xFC, 0x00, 0xFC, 0x1F, 0x80, 0x0F, 0x83, 0xF0, 0x00, 0xFC, - 0x1F, 0x9F, 0x07, 0xE7, 0xE3, 0xF0, 0xF8, 0xF8, 0x1F, 0x7E, 0x07, 0xDF, - 0x00, 0xFF, 0x80, 0x1F, 0xE0, 0x07, 0xF0, 0x00, 0xF8, 0x00, 0x7F, 0x00, - 0x3F, 0xE0, 0x0F, 0xF8, 0x07, 0xDF, 0x03, 0xF7, 0xE0, 0xF8, 0xF8, 0x7E, - 0x3F, 0x1F, 0x07, 0xEF, 0xC0, 0xF8, 0x7C, 0x03, 0xEF, 0x80, 0xF9, 0xF8, - 0x1F, 0x1F, 0x03, 0xE3, 0xE0, 0xF8, 0x7C, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, - 0x78, 0x0F, 0x1F, 0x01, 0xF3, 0xC0, 0x3E, 0x78, 0x03, 0xDF, 0x00, 0x7F, - 0xC0, 0x0F, 0xF8, 0x00, 0xFF, 0x00, 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, - 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x07, 0xF8, - 0x00, 0xFE, 0x00, 0x1F, 0x80, 0x03, 0xE0, 0x00, 0x7F, 0xFE, 0x7F, 0xFE, - 0x7F, 0xFE, 0x7F, 0xFE, 0x00, 0x7E, 0x00, 0xFC, 0x01, 0xF8, 0x03, 0xF0, - 0x03, 0xF0, 0x07, 0xE0, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x00, 0x7E, 0x00, - 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x87, - 0xC7, 0xE3, 0xF1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC1, - 0xE0, 0xF0, 0xF9, 0xF8, 0xF0, 0x7E, 0x0F, 0x83, 0xC1, 0xE0, 0xF0, 0x78, - 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xFC, 0x7E, 0x1F, 0x07, 0x80, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xE0, 0xF0, 0x7C, 0x3E, 0x1F, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, - 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x7C, 0x1F, 0x83, 0xC7, 0xE7, 0xC3, - 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC7, 0xE3, 0xE1, - 0xF0, 0xF0, 0x00, 0x3C, 0x00, 0xFE, 0x0F, 0xFE, 0x1E, 0x1F, 0xFC, 0x0F, - 0xC0, 0x0F, 0x00}; - -const GFXglyph FreeSansBold18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 10, 0, 1}, // 0x20 ' ' - {0, 5, 25, 12, 4, -24}, // 0x21 '!' - {16, 13, 9, 17, 2, -25}, // 0x22 '"' - {31, 20, 24, 19, 0, -23}, // 0x23 '#' - {91, 19, 29, 19, 0, -25}, // 0x24 '$' - {160, 29, 25, 31, 1, -24}, // 0x25 '%' - {251, 22, 25, 25, 2, -24}, // 0x26 '&' - {320, 5, 9, 9, 2, -25}, // 0x27 ''' - {326, 9, 33, 12, 1, -25}, // 0x28 '(' - {364, 9, 33, 12, 1, -25}, // 0x29 ')' - {402, 12, 11, 14, 0, -25}, // 0x2A '*' - {419, 16, 16, 20, 2, -15}, // 0x2B '+' - {451, 5, 11, 9, 2, -4}, // 0x2C ',' - {458, 9, 4, 12, 1, -10}, // 0x2D '-' - {463, 5, 5, 9, 2, -4}, // 0x2E '.' - {467, 9, 25, 10, 0, -24}, // 0x2F '/' - {496, 17, 25, 19, 1, -24}, // 0x30 '0' - {550, 10, 25, 19, 3, -24}, // 0x31 '1' - {582, 17, 25, 19, 1, -24}, // 0x32 '2' - {636, 17, 25, 19, 1, -24}, // 0x33 '3' - {690, 16, 25, 19, 2, -24}, // 0x34 '4' - {740, 17, 25, 19, 1, -24}, // 0x35 '5' - {794, 18, 25, 19, 1, -24}, // 0x36 '6' - {851, 17, 25, 19, 1, -24}, // 0x37 '7' - {905, 17, 25, 19, 1, -24}, // 0x38 '8' - {959, 17, 25, 19, 1, -24}, // 0x39 '9' - {1013, 5, 18, 9, 2, -17}, // 0x3A ':' - {1025, 5, 24, 9, 2, -17}, // 0x3B ';' - {1040, 18, 17, 20, 1, -16}, // 0x3C '<' - {1079, 17, 12, 20, 2, -13}, // 0x3D '=' - {1105, 18, 17, 20, 1, -16}, // 0x3E '>' - {1144, 18, 26, 21, 2, -25}, // 0x3F '?' - {1203, 32, 31, 34, 1, -25}, // 0x40 '@' - {1327, 24, 26, 24, 0, -25}, // 0x41 'A' - {1405, 20, 26, 25, 3, -25}, // 0x42 'B' - {1470, 23, 26, 25, 1, -25}, // 0x43 'C' - {1545, 21, 26, 25, 3, -25}, // 0x44 'D' - {1614, 19, 26, 23, 3, -25}, // 0x45 'E' - {1676, 17, 26, 22, 3, -25}, // 0x46 'F' - {1732, 24, 26, 27, 1, -25}, // 0x47 'G' - {1810, 20, 26, 26, 3, -25}, // 0x48 'H' - {1875, 5, 26, 11, 3, -25}, // 0x49 'I' - {1892, 16, 26, 20, 1, -25}, // 0x4A 'J' - {1944, 22, 26, 25, 3, -25}, // 0x4B 'K' - {2016, 17, 26, 22, 3, -25}, // 0x4C 'L' - {2072, 24, 26, 30, 3, -25}, // 0x4D 'M' - {2150, 20, 26, 26, 3, -25}, // 0x4E 'N' - {2215, 25, 26, 27, 1, -25}, // 0x4F 'O' - {2297, 19, 26, 24, 3, -25}, // 0x50 'P' - {2359, 25, 27, 27, 1, -25}, // 0x51 'Q' - {2444, 21, 26, 25, 3, -25}, // 0x52 'R' - {2513, 20, 26, 24, 2, -25}, // 0x53 'S' - {2578, 19, 26, 23, 2, -25}, // 0x54 'T' - {2640, 20, 26, 26, 3, -25}, // 0x55 'U' - {2705, 22, 26, 23, 1, -25}, // 0x56 'V' - {2777, 32, 26, 34, 1, -25}, // 0x57 'W' - {2881, 22, 26, 24, 1, -25}, // 0x58 'X' - {2953, 21, 26, 22, 1, -25}, // 0x59 'Y' - {3022, 19, 26, 21, 1, -25}, // 0x5A 'Z' - {3084, 8, 33, 12, 2, -25}, // 0x5B '[' - {3117, 10, 25, 10, 0, -24}, // 0x5C '\' - {3149, 8, 33, 12, 1, -25}, // 0x5D ']' - {3182, 16, 15, 20, 2, -23}, // 0x5E '^' - {3212, 21, 3, 19, -1, 5}, // 0x5F '_' - {3220, 7, 5, 9, 1, -25}, // 0x60 '`' - {3225, 18, 19, 20, 1, -18}, // 0x61 'a' - {3268, 18, 26, 22, 2, -25}, // 0x62 'b' - {3327, 17, 19, 20, 1, -18}, // 0x63 'c' - {3368, 19, 26, 22, 1, -25}, // 0x64 'd' - {3430, 18, 19, 20, 1, -18}, // 0x65 'e' - {3473, 10, 26, 12, 1, -25}, // 0x66 'f' - {3506, 18, 26, 21, 1, -18}, // 0x67 'g' - {3565, 17, 26, 21, 2, -25}, // 0x68 'h' - {3621, 5, 26, 10, 2, -25}, // 0x69 'i' - {3638, 7, 33, 10, 0, -25}, // 0x6A 'j' - {3667, 17, 26, 20, 2, -25}, // 0x6B 'k' - {3723, 5, 26, 9, 2, -25}, // 0x6C 'l' - {3740, 27, 19, 31, 2, -18}, // 0x6D 'm' - {3805, 17, 19, 21, 2, -18}, // 0x6E 'n' - {3846, 19, 19, 21, 1, -18}, // 0x6F 'o' - {3892, 18, 26, 22, 2, -18}, // 0x70 'p' - {3951, 19, 26, 22, 1, -18}, // 0x71 'q' - {4013, 11, 19, 14, 2, -18}, // 0x72 'r' - {4040, 17, 19, 19, 1, -18}, // 0x73 's' - {4081, 9, 23, 12, 1, -22}, // 0x74 't' - {4107, 17, 19, 21, 2, -18}, // 0x75 'u' - {4148, 19, 19, 19, 0, -18}, // 0x76 'v' - {4194, 27, 19, 27, 0, -18}, // 0x77 'w' - {4259, 18, 19, 19, 1, -18}, // 0x78 'x' - {4302, 19, 26, 19, 0, -18}, // 0x79 'y' - {4364, 16, 19, 18, 1, -18}, // 0x7A 'z' - {4402, 9, 33, 14, 1, -25}, // 0x7B '{' - {4440, 3, 33, 10, 4, -25}, // 0x7C '|' - {4453, 9, 33, 14, 3, -25}, // 0x7D '}' - {4491, 15, 6, 18, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSansBold18pt7b PROGMEM = { - (uint8_t *)FreeSansBold18pt7bBitmaps, (GFXglyph *)FreeSansBold18pt7bGlyphs, - 0x20, 0x7E, 42}; - -// Approx. 5175 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h deleted file mode 100644 index 5dd7a54..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold24pt7b.h +++ /dev/null @@ -1,786 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold24pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xDF, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xC7, 0x0E, 0x1C, 0x00, 0x00, 0x07, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFE, 0x1F, 0xFF, 0x87, 0xFF, 0xE1, - 0xFF, 0xF8, 0x7F, 0xFE, 0x1F, 0xFF, 0x87, 0xFF, 0xE1, 0xFD, 0xF0, 0x3E, - 0x7C, 0x0F, 0x9F, 0x03, 0xE3, 0x80, 0x70, 0xE0, 0x1C, 0x00, 0xF8, 0x3E, - 0x00, 0x3E, 0x0F, 0x80, 0x0F, 0x83, 0xE0, 0x03, 0xE0, 0xF8, 0x00, 0xF8, - 0x7C, 0x00, 0x7C, 0x1F, 0x00, 0x1F, 0x07, 0xC1, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xFF, - 0x03, 0xE0, 0xF8, 0x00, 0xF8, 0x3E, 0x00, 0x3E, 0x1F, 0x00, 0x1F, 0x07, - 0xC0, 0x07, 0xC1, 0xF0, 0x01, 0xF0, 0x7C, 0x00, 0x7C, 0x1F, 0x03, 0xFF, - 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF3, - 0xFF, 0xFF, 0xFC, 0x0F, 0x87, 0xC0, 0x07, 0xC1, 0xF0, 0x01, 0xF0, 0x7C, - 0x00, 0x7C, 0x1F, 0x00, 0x1F, 0x07, 0xC0, 0x07, 0xC3, 0xE0, 0x03, 0xE0, - 0xF8, 0x00, 0xF8, 0x3E, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF8, 0x7F, 0x73, 0xFE, 0x7F, 0x38, - 0xFF, 0x3F, 0x1C, 0x3F, 0xDF, 0x8E, 0x0F, 0xEF, 0xC7, 0x07, 0xF7, 0xE3, - 0x80, 0x03, 0xF9, 0xC0, 0x01, 0xFE, 0xE0, 0x00, 0x7F, 0xF0, 0x00, 0x3F, - 0xFC, 0x00, 0x0F, 0xFF, 0xC0, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0x80, - 0x0F, 0xFF, 0xE0, 0x01, 0xFF, 0xF8, 0x00, 0xE7, 0xFC, 0x00, 0x71, 0xFF, - 0x00, 0x38, 0x7F, 0xFF, 0x1C, 0x1F, 0xFF, 0x8E, 0x0F, 0xFF, 0xC7, 0x07, - 0xFF, 0xE3, 0x87, 0xFB, 0xF9, 0xC3, 0xF9, 0xFE, 0xE7, 0xFC, 0x7F, 0xFF, - 0xFC, 0x3F, 0xFF, 0xFC, 0x0F, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x00, 0x3F, - 0xE0, 0x00, 0x03, 0x80, 0x00, 0x01, 0xC0, 0x00, 0x00, 0xE0, 0x00, 0x00, - 0x70, 0x00, 0x03, 0xE0, 0x00, 0x3C, 0x00, 0x1F, 0xF0, 0x00, 0x78, 0x00, - 0x7F, 0xF8, 0x01, 0xE0, 0x01, 0xFF, 0xF0, 0x03, 0xC0, 0x07, 0xFF, 0xF0, - 0x0F, 0x00, 0x0F, 0x83, 0xE0, 0x1E, 0x00, 0x3E, 0x03, 0xE0, 0x78, 0x00, - 0x78, 0x03, 0xC0, 0xF0, 0x00, 0xF0, 0x07, 0x83, 0xC0, 0x01, 0xE0, 0x0F, - 0x07, 0x80, 0x03, 0xE0, 0x3E, 0x1E, 0x00, 0x03, 0xE0, 0xF8, 0x3C, 0x00, - 0x07, 0xFF, 0xF0, 0xF0, 0x00, 0x07, 0xFF, 0xC1, 0xE0, 0x00, 0x07, 0xFF, - 0x07, 0x80, 0x00, 0x07, 0xFC, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x3C, 0x00, - 0x00, 0x00, 0x00, 0xF0, 0x1F, 0x00, 0x00, 0x01, 0xE0, 0xFF, 0x80, 0x00, - 0x07, 0x87, 0xFF, 0xC0, 0x00, 0x0F, 0x0F, 0xFF, 0x80, 0x00, 0x3C, 0x3F, - 0xFF, 0x80, 0x00, 0x78, 0xFC, 0x1F, 0x00, 0x01, 0xE1, 0xF0, 0x1F, 0x00, - 0x03, 0xC3, 0xC0, 0x1E, 0x00, 0x0F, 0x07, 0x80, 0x3C, 0x00, 0x1E, 0x0F, - 0x00, 0x78, 0x00, 0x78, 0x1F, 0x01, 0xF0, 0x00, 0xF0, 0x1F, 0x07, 0xC0, - 0x03, 0xC0, 0x3F, 0xFF, 0x80, 0x07, 0x80, 0x3F, 0xFE, 0x00, 0x1E, 0x00, - 0x7F, 0xF8, 0x00, 0x7C, 0x00, 0x3F, 0xE0, 0x00, 0xF0, 0x00, 0x1F, 0x00, - 0x00, 0x3F, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, - 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xCF, 0xC0, 0x00, 0xFE, - 0x1F, 0x00, 0x03, 0xF8, 0x7C, 0x00, 0x0F, 0xE1, 0xF0, 0x00, 0x3F, 0xC7, - 0xC0, 0x00, 0x7F, 0x3E, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x03, 0xFF, 0xC0, - 0x00, 0x07, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x07, 0xFF, 0x03, 0xE0, 0x3F, 0xFE, 0x0F, 0x83, 0xFF, 0xF8, 0x3E, 0x1F, - 0xF3, 0xF1, 0xF8, 0x7F, 0x07, 0xE7, 0xE3, 0xFC, 0x1F, 0xFF, 0x0F, 0xE0, - 0x3F, 0xFC, 0x3F, 0x80, 0x7F, 0xF0, 0xFE, 0x01, 0xFF, 0x83, 0xF8, 0x03, - 0xFE, 0x0F, 0xF0, 0x0F, 0xF0, 0x3F, 0xE0, 0x7F, 0xE0, 0x7F, 0xC3, 0xFF, - 0xC1, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFB, 0xFC, - 0x0F, 0xFF, 0xC7, 0xF8, 0x1F, 0xFE, 0x0F, 0xE0, 0x0F, 0xE0, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBE, 0x7C, 0xF8, 0xE1, 0xC0, 0x00, - 0xF0, 0x0F, 0x80, 0xF8, 0x07, 0xC0, 0x7C, 0x07, 0xE0, 0x3E, 0x03, 0xF0, - 0x1F, 0x80, 0xF8, 0x0F, 0xC0, 0x7E, 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x0F, - 0xC0, 0xFC, 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, - 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0x3F, 0x00, 0xF8, 0x07, 0xE0, 0x3F, 0x01, - 0xF8, 0x07, 0xC0, 0x3F, 0x01, 0xF8, 0x07, 0xC0, 0x3F, 0x00, 0xF8, 0x07, - 0xE0, 0x1F, 0x00, 0xF8, 0x03, 0xE0, 0x1F, 0x00, 0x7C, 0x01, 0xE0, 0x78, - 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, - 0x0F, 0xC0, 0x3E, 0x01, 0xF8, 0x0F, 0xC0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, - 0x7E, 0x01, 0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x1F, 0x80, 0xFC, 0x07, - 0xE0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, 0x7E, 0x03, 0xE0, 0x3F, 0x01, 0xF8, - 0x0F, 0xC0, 0x7C, 0x07, 0xE0, 0x3F, 0x01, 0xF0, 0x1F, 0x80, 0xF8, 0x0F, - 0xC0, 0x7C, 0x07, 0xE0, 0x3E, 0x03, 0xF0, 0x1F, 0x01, 0xF0, 0x00, 0x03, - 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x06, 0x38, 0xDF, 0xFF, 0xFF, 0xFF, - 0x9F, 0xFE, 0x07, 0xC0, 0x1F, 0xC0, 0x3F, 0x80, 0xF7, 0x83, 0xC7, 0x87, - 0x8F, 0x02, 0x08, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, - 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, - 0x00, 0x3E, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x1F, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x87, 0x0E, 0x1C, 0x78, 0xEF, 0xDF, 0x38, 0x00, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x80, 0x00, 0x38, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0x00, - 0x70, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x38, - 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x38, 0x03, 0xC0, 0x1C, 0x00, - 0xE0, 0x07, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x01, 0xE0, 0x0E, 0x00, 0x70, - 0x03, 0x80, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x00, 0x00, - 0xFF, 0x00, 0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF8, 0x1F, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x3F, 0xC3, 0xFC, 0x7F, 0x81, 0xFE, 0x7F, - 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x7F, - 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x81, 0xFE, 0x3F, - 0xC3, 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, 0x1F, 0xFF, 0xF8, 0x0F, - 0xFF, 0xF0, 0x03, 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x00, 0x3C, 0x01, 0xF0, - 0x07, 0xC0, 0x3F, 0x01, 0xFC, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, - 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, - 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, - 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x01, 0xFE, 0x00, 0x0F, 0xFF, 0x80, - 0x3F, 0xFF, 0x80, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0x9F, - 0xE0, 0xFF, 0x7F, 0x80, 0xFF, 0xFE, 0x01, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, - 0x03, 0xFF, 0xF0, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x7F, 0x80, 0x00, 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x7F, - 0xC0, 0x01, 0xFF, 0x00, 0x07, 0xF8, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0x00, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x00, 0x01, - 0xFC, 0x00, 0x03, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xBF, - 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, 0xFF, 0xFF, 0xFC, 0x01, 0xFE, 0x00, 0x0F, - 0xFF, 0x80, 0x7F, 0xFF, 0x81, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0x8F, 0xFF, - 0xFF, 0x1F, 0xE1, 0xFF, 0x7F, 0x81, 0xFE, 0xFE, 0x01, 0xFD, 0xFC, 0x03, - 0xFB, 0xF8, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7F, - 0x00, 0x01, 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0xC0, - 0x00, 0xFF, 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0xC0, - 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, - 0x07, 0xFF, 0xF8, 0x0F, 0xF7, 0xF8, 0x3F, 0xCF, 0xFF, 0xFF, 0x9F, 0xFF, - 0xFE, 0x1F, 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x07, 0xF8, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x03, 0xFE, 0x00, 0x0F, 0xF8, - 0x00, 0x7F, 0xE0, 0x03, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x7B, 0xF8, 0x01, - 0xEF, 0xE0, 0x0F, 0x3F, 0x80, 0x78, 0xFE, 0x01, 0xE3, 0xF8, 0x0F, 0x0F, - 0xE0, 0x38, 0x3F, 0x81, 0xE0, 0xFE, 0x07, 0x03, 0xF8, 0x3C, 0x0F, 0xE1, - 0xE0, 0x3F, 0x87, 0x00, 0xFE, 0x3C, 0x03, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0x00, 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0x80, - 0x00, 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xE0, 0x1F, 0xFF, 0xFC, 0x3F, - 0xFF, 0xF8, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0x8F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xF1, 0xF8, 0x03, 0xEF, 0xFE, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFE, - 0x1F, 0xFF, 0xFE, 0x7F, 0xFF, 0xFC, 0xFE, 0x07, 0xFC, 0x00, 0x07, 0xF8, - 0x00, 0x07, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, - 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xF8, - 0x0F, 0xF7, 0xF8, 0x3F, 0xEF, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0x0F, 0xFF, - 0xFC, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x03, 0xF8, 0x00, 0x00, 0xFF, - 0x00, 0x07, 0xFF, 0x80, 0x1F, 0xFF, 0xC0, 0x7F, 0xFF, 0x81, 0xFF, 0xFF, - 0x87, 0xFF, 0xFF, 0x8F, 0xF0, 0xFF, 0x3F, 0xC0, 0xFE, 0x7F, 0x00, 0x00, - 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE3, 0xF0, 0x1F, - 0xDF, 0xF8, 0x3F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0xFF, 0xFF, 0xF9, 0xFF, - 0x87, 0xFB, 0xFC, 0x07, 0xF7, 0xF8, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, - 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, 0x7E, 0x00, 0xFE, 0xFC, 0x01, - 0xFD, 0xFC, 0x07, 0xFB, 0xF8, 0x0F, 0xE3, 0xFC, 0x7F, 0xC7, 0xFF, 0xFF, - 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xF8, 0x0F, 0xFF, 0xE0, 0x07, 0xFF, 0x80, - 0x03, 0xF8, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x3F, 0x00, - 0x00, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, - 0x7F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, - 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xF8, 0x00, 0x07, 0xF0, - 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFC, 0x00, - 0x01, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x1F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x7F, 0x83, 0xFC, 0x7F, - 0x00, 0xFC, 0x7E, 0x00, 0xFC, 0x7E, 0x00, 0x7C, 0x7E, 0x00, 0x7C, 0x7E, - 0x00, 0xFC, 0x3F, 0x00, 0xF8, 0x3F, 0x83, 0xF8, 0x0F, 0xFF, 0xF0, 0x07, - 0xFF, 0xC0, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF8, 0x3F, 0xC3, 0xFC, 0x7F, - 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, - 0x00, 0xFE, 0x7F, 0x83, 0xFE, 0x7F, 0xFF, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xF8, 0x0F, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x00, - 0xFF, 0x00, 0x03, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF0, 0x3F, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x7F, 0xC3, 0xFC, 0x7F, 0x01, 0xFE, 0xFF, - 0x00, 0xFE, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0x7F, - 0x01, 0xFF, 0x7F, 0xC3, 0xFF, 0x7F, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x1F, - 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0x07, 0xFE, 0x7F, 0x01, 0xFC, 0x7E, 0x00, - 0x00, 0x7E, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x7F, 0x01, 0xFC, 0x7F, - 0x83, 0xFC, 0x7F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF0, 0x1F, - 0xFF, 0xE0, 0x07, 0xFF, 0x80, 0x01, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFE, 0x1C, 0x38, 0x71, 0xE7, 0xBF, 0x7C, 0xE0, 0x00, - 0x00, 0x02, 0x00, 0x00, 0x3C, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xF0, 0x01, - 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0xFF, 0xFC, 0x0F, 0xFF, 0xC0, 0x7F, 0xFC, - 0x01, 0xFF, 0xC0, 0x03, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xE0, 0x00, - 0x1F, 0xF8, 0x00, 0x3F, 0xFE, 0x00, 0x0F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, - 0x01, 0xFF, 0xF8, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x0F, 0xE0, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x80, 0x00, - 0x01, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xFE, 0x00, - 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xF0, 0x00, 0x7F, 0xFC, - 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0xE0, - 0x01, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0xFF, 0xF8, 0x0F, 0xFF, 0x80, 0xFF, - 0xFC, 0x03, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x1E, 0x00, - 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x07, 0xFF, 0xC0, 0x1F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0x7F, - 0x83, 0xFE, 0x7F, 0x01, 0xFE, 0xFF, 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFE, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x00, - 0x01, 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xF8, 0x00, - 0x3F, 0xF0, 0x00, 0x3F, 0xE0, 0x00, 0x7F, 0x80, 0x00, 0x7F, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x00, 0x3F, 0xFF, 0xE0, - 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xF8, 0x00, - 0x03, 0xFE, 0x01, 0xFF, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x7F, - 0x80, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x07, 0xF0, 0x00, - 0x00, 0x1F, 0x00, 0xFC, 0x00, 0x00, 0x01, 0xF0, 0x3F, 0x00, 0x00, 0x00, - 0x3E, 0x0F, 0xC0, 0x07, 0xE3, 0xC3, 0xE1, 0xF0, 0x03, 0xFE, 0xF8, 0x3C, - 0x7E, 0x01, 0xFF, 0xFF, 0x07, 0x8F, 0x80, 0x7E, 0x1F, 0xC0, 0x7B, 0xF0, - 0x1F, 0x81, 0xF8, 0x0F, 0x7C, 0x03, 0xE0, 0x1F, 0x01, 0xEF, 0x80, 0xF8, - 0x03, 0xC0, 0x3F, 0xF0, 0x1E, 0x00, 0x78, 0x07, 0xFC, 0x07, 0xC0, 0x0F, - 0x00, 0xFF, 0x80, 0xF0, 0x01, 0xE0, 0x1F, 0xF0, 0x1E, 0x00, 0x38, 0x07, - 0xFE, 0x07, 0xC0, 0x0F, 0x00, 0xFF, 0xC0, 0xF8, 0x01, 0xE0, 0x1E, 0xF8, - 0x1F, 0x00, 0x38, 0x07, 0xDF, 0x03, 0xE0, 0x0F, 0x00, 0xF3, 0xF0, 0x7C, - 0x03, 0xE0, 0x3E, 0x3E, 0x0F, 0xC0, 0xFC, 0x0F, 0x87, 0xC0, 0xFC, 0x3F, - 0xC7, 0xF0, 0xFC, 0x1F, 0xFF, 0xFF, 0xFC, 0x0F, 0xC1, 0xFF, 0xEF, 0xFF, - 0x01, 0xFC, 0x1F, 0xF8, 0xFF, 0x80, 0x1F, 0xC0, 0xFC, 0x07, 0xC0, 0x01, - 0xFC, 0x00, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x60, 0x00, 0x01, 0xFF, 0xFF, - 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x7F, 0xFF, 0xF0, - 0x00, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, - 0x0F, 0xF8, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, - 0x1F, 0xFC, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, - 0x3F, 0xFE, 0x00, 0x00, 0x3F, 0x7E, 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, - 0x7F, 0x7F, 0x00, 0x00, 0x7E, 0x3F, 0x00, 0x00, 0xFE, 0x3F, 0x80, 0x00, - 0xFE, 0x3F, 0x80, 0x01, 0xFC, 0x1F, 0x80, 0x01, 0xFC, 0x1F, 0xC0, 0x01, - 0xF8, 0x1F, 0xC0, 0x03, 0xF8, 0x0F, 0xE0, 0x03, 0xF8, 0x0F, 0xE0, 0x03, - 0xF0, 0x0F, 0xE0, 0x07, 0xF0, 0x07, 0xF0, 0x07, 0xFF, 0xFF, 0xF0, 0x07, - 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xF8, 0x1F, - 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x3F, - 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x00, 0xFE, 0x3F, 0x80, 0x00, 0xFE, 0x7F, - 0x00, 0x00, 0xFE, 0x7F, 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x7F, 0xFF, - 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFF, - 0x8F, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFF, 0x3F, 0x80, 0x1F, 0xF7, 0xF0, - 0x01, 0xFE, 0xFE, 0x00, 0x1F, 0xDF, 0xC0, 0x03, 0xFB, 0xF8, 0x00, 0x7F, - 0x7F, 0x00, 0x1F, 0xCF, 0xE0, 0x07, 0xF9, 0xFF, 0xFF, 0xFE, 0x3F, 0xFF, - 0xFF, 0x87, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFE, 0x1F, 0xFF, 0xFF, 0xE3, - 0xFF, 0xFF, 0xFE, 0x7F, 0x00, 0x1F, 0xEF, 0xE0, 0x01, 0xFD, 0xFC, 0x00, - 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, - 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0x00, 0x1F, 0xEF, 0xFF, 0xFF, - 0xFD, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xFC, 0x1F, 0xFF, 0xFC, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x03, 0xFF, - 0xF8, 0x00, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0xFF, 0xC1, 0xFF, 0x81, 0xFF, 0x0F, 0xF8, 0x01, 0xFE, - 0x3F, 0xC0, 0x07, 0xF9, 0xFE, 0x00, 0x0F, 0xE7, 0xF8, 0x00, 0x1F, 0xDF, - 0xC0, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x0F, 0xE0, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, - 0x7F, 0x00, 0x01, 0xFD, 0xFC, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x3F, 0xCF, - 0xF0, 0x00, 0xFE, 0x3F, 0xE0, 0x07, 0xF8, 0x7F, 0xE0, 0x7F, 0xC0, 0xFF, - 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0xC0, 0x07, 0xFF, - 0xFE, 0x00, 0x0F, 0xFF, 0xE0, 0x00, 0x07, 0xFC, 0x00, 0xFF, 0xFF, 0xC0, - 0x0F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFC, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF8, 0xFE, 0x00, 0xFF, 0xCF, 0xE0, 0x03, - 0xFC, 0xFE, 0x00, 0x1F, 0xEF, 0xE0, 0x01, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, - 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, - 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x7F, - 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xFF, 0xE0, - 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x1F, - 0xEF, 0xE0, 0x01, 0xFE, 0xFE, 0x00, 0x3F, 0xCF, 0xE0, 0x0F, 0xFC, 0xFF, - 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xF7, - 0xFF, 0xFF, 0xFB, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, - 0x07, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, - 0xFE, 0x7F, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x9F, 0xC0, 0x00, 0x0F, 0xE0, - 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, - 0xFC, 0xFF, 0xFF, 0xFC, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xFF, - 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xFF, - 0x07, 0xFE, 0x03, 0xFF, 0x0F, 0xF0, 0x01, 0xFE, 0x3F, 0xC0, 0x01, 0xFC, - 0x7F, 0x00, 0x01, 0xFD, 0xFE, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x00, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0xF8, - 0x00, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0xC0, - 0x07, 0xFF, 0xFF, 0xC0, 0x00, 0x1F, 0xBF, 0x80, 0x00, 0x3F, 0x7F, 0x00, - 0x00, 0x7E, 0xFF, 0x00, 0x01, 0xFC, 0xFF, 0x00, 0x03, 0xF9, 0xFF, 0x00, - 0x0F, 0xF1, 0xFF, 0x00, 0x3F, 0xE3, 0xFF, 0x83, 0xFF, 0xC3, 0xFF, 0xFF, - 0xFF, 0x83, 0xFF, 0xFF, 0xDF, 0x03, 0xFF, 0xFF, 0x9E, 0x03, 0xFF, 0xFE, - 0x3C, 0x01, 0xFF, 0xF0, 0x78, 0x00, 0x7F, 0x80, 0x00, 0xFE, 0x00, 0x0F, - 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xE0, - 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, - 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, - 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, - 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, - 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, - 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, - 0xFF, 0xC0, 0x01, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x01, - 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, - 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, - 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, - 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, - 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xFF, 0xE0, - 0x1F, 0xFF, 0x80, 0x7F, 0xFE, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xE0, 0x1F, - 0xFF, 0xC0, 0xFF, 0xFF, 0x87, 0xFD, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFC, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0xFE, - 0x00, 0x0F, 0xF3, 0xF8, 0x00, 0x7F, 0x8F, 0xE0, 0x03, 0xFC, 0x3F, 0x80, - 0x1F, 0xE0, 0xFE, 0x00, 0xFF, 0x83, 0xF8, 0x07, 0xFC, 0x0F, 0xE0, 0x1F, - 0xE0, 0x3F, 0x80, 0xFF, 0x00, 0xFE, 0x07, 0xF8, 0x03, 0xF8, 0x3F, 0xC0, - 0x0F, 0xE1, 0xFE, 0x00, 0x3F, 0x8F, 0xF0, 0x00, 0xFE, 0x7F, 0x80, 0x03, - 0xFB, 0xFC, 0x00, 0x0F, 0xFF, 0xE0, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0xFF, - 0xFF, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x3F, 0xF7, - 0xF8, 0x00, 0xFF, 0x8F, 0xF0, 0x03, 0xFC, 0x3F, 0xC0, 0x0F, 0xE0, 0x7F, - 0x80, 0x3F, 0x80, 0xFF, 0x00, 0xFE, 0x01, 0xFE, 0x03, 0xF8, 0x07, 0xFC, - 0x0F, 0xE0, 0x0F, 0xF0, 0x3F, 0x80, 0x1F, 0xE0, 0xFE, 0x00, 0x3F, 0xC3, - 0xF8, 0x00, 0xFF, 0x8F, 0xE0, 0x01, 0xFE, 0x3F, 0x80, 0x03, 0xFC, 0xFE, - 0x00, 0x07, 0xFB, 0xF8, 0x00, 0x1F, 0xF0, 0xFE, 0x00, 0x01, 0xFC, 0x00, - 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, - 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, - 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, - 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, - 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, - 0x07, 0xF0, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFF, 0xE0, 0x03, - 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0xFC, 0x00, - 0x7F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xFF, 0xC0, - 0x1F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xFC, - 0x07, 0xFF, 0xFF, 0xBE, 0x03, 0xEF, 0xFF, 0xDF, 0x01, 0xF7, 0xFF, 0xEF, - 0x80, 0xFB, 0xFF, 0xF7, 0xC0, 0xFD, 0xFF, 0xFB, 0xF0, 0x7C, 0xFF, 0xFC, - 0xF8, 0x3E, 0x7F, 0xFE, 0x7C, 0x1F, 0x3F, 0xFF, 0x3E, 0x0F, 0x9F, 0xFF, - 0x9F, 0x8F, 0x8F, 0xFF, 0xC7, 0xC7, 0xC7, 0xFF, 0xE3, 0xE3, 0xE3, 0xFF, - 0xF1, 0xF1, 0xF1, 0xFF, 0xF8, 0xFC, 0xF8, 0xFF, 0xFC, 0x3E, 0xF8, 0x7F, - 0xFE, 0x1F, 0x7C, 0x3F, 0xFF, 0x0F, 0xBE, 0x1F, 0xFF, 0x87, 0xDF, 0x0F, - 0xFF, 0xC3, 0xFF, 0x07, 0xFF, 0xE0, 0xFF, 0x83, 0xFF, 0xF0, 0x7F, 0xC1, - 0xFF, 0xF8, 0x3F, 0xE0, 0xFF, 0xFC, 0x1F, 0xF0, 0x7F, 0xFE, 0x07, 0xF0, - 0x3F, 0xFF, 0x03, 0xF8, 0x1F, 0xC0, 0xFE, 0x00, 0x07, 0xFF, 0xF0, 0x00, - 0x7F, 0xFF, 0x80, 0x07, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0xC0, 0x07, 0xFF, - 0xFC, 0x00, 0x7F, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xF0, - 0x07, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0xF8, 0x07, 0xFF, 0xEF, 0xC0, 0x7F, - 0xFE, 0xFE, 0x07, 0xFF, 0xE7, 0xE0, 0x7F, 0xFE, 0x7F, 0x07, 0xFF, 0xE3, - 0xF0, 0x7F, 0xFE, 0x1F, 0x87, 0xFF, 0xE1, 0xFC, 0x7F, 0xFE, 0x0F, 0xC7, - 0xFF, 0xE0, 0xFE, 0x7F, 0xFE, 0x07, 0xE7, 0xFF, 0xE0, 0x3F, 0x7F, 0xFE, - 0x03, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xE0, 0x0F, - 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xE0, 0x07, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, - 0xE0, 0x03, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0xE0, 0x00, 0xFF, 0xFE, 0x00, - 0x0F, 0xFF, 0xE0, 0x00, 0x7F, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, - 0x80, 0x00, 0x7F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, - 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x3F, 0xC0, - 0x0F, 0xF8, 0x3F, 0xC0, 0x01, 0xFE, 0x1F, 0xC0, 0x00, 0x7F, 0x1F, 0xE0, - 0x00, 0x3F, 0xCF, 0xE0, 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x07, 0xF7, 0xF8, - 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x00, 0xFF, 0xFC, 0x00, 0x00, 0x7F, 0xFE, - 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x1F, 0xFF, 0x80, 0x00, 0x0F, 0xFF, - 0xC0, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x01, 0xFF, - 0xFC, 0x00, 0x01, 0xFE, 0xFE, 0x00, 0x00, 0xFE, 0x7F, 0x00, 0x00, 0x7F, - 0x3F, 0xC0, 0x00, 0x7F, 0x8F, 0xE0, 0x00, 0x3F, 0x87, 0xF8, 0x00, 0x3F, - 0xC1, 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xFF, 0xFF, - 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xFC, 0xFF, - 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xEF, 0xE0, 0x0F, 0xFB, 0xF8, 0x00, 0xFF, - 0xFE, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xF8, 0x00, - 0x7F, 0xFE, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF8, - 0x03, 0xFE, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xF3, - 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x0F, 0xE0, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, 0xE0, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, - 0xE0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x80, 0x00, 0x7F, 0xFF, - 0xE0, 0x00, 0x7F, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, - 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xF0, 0x3F, 0xC0, 0x07, 0xF8, 0x3F, 0xC0, - 0x01, 0xFE, 0x1F, 0xC0, 0x00, 0x7F, 0x1F, 0xE0, 0x00, 0x3F, 0xCF, 0xE0, - 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x03, 0xFF, 0xF8, - 0x00, 0x00, 0xFF, 0xFC, 0x00, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x3F, 0xFF, - 0x00, 0x00, 0x1F, 0xFF, 0x80, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x01, 0xFF, 0xFC, 0x00, 0x21, 0xFE, - 0xFE, 0x00, 0x38, 0xFE, 0x7F, 0x00, 0x3E, 0x7F, 0x3F, 0xC0, 0x3F, 0xFF, - 0x8F, 0xE0, 0x0F, 0xFF, 0x87, 0xF8, 0x03, 0xFF, 0xC1, 0xFE, 0x00, 0xFF, - 0xC0, 0xFF, 0xC0, 0x7F, 0xE0, 0x3F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, - 0xFC, 0x03, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFF, 0xC0, 0x1F, 0xFF, - 0xCF, 0xC0, 0x01, 0xFF, 0x03, 0xC0, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0xFF, - 0xF8, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0x8F, 0xFF, 0xFF, 0xF8, - 0xFF, 0xFF, 0xFF, 0xCF, 0xFF, 0xFF, 0xFC, 0xFE, 0x00, 0x3F, 0xEF, 0xE0, - 0x01, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x0F, - 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, 0xE0, 0x01, 0xFC, 0xFE, - 0x00, 0x3F, 0xCF, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x8F, - 0xE0, 0x07, 0xF8, 0xFE, 0x00, 0x1F, 0xCF, 0xE0, 0x01, 0xFC, 0xFE, 0x00, - 0x1F, 0xCF, 0xE0, 0x01, 0xFC, 0xFE, 0x00, 0x1F, 0xCF, 0xE0, 0x01, 0xFC, - 0xFE, 0x00, 0x1F, 0xCF, 0xE0, 0x01, 0xFC, 0xFE, 0x00, 0x1F, 0xCF, 0xE0, - 0x01, 0xFC, 0xFE, 0x00, 0x1F, 0xEF, 0xE0, 0x00, 0xFF, 0x00, 0xFF, 0xC0, - 0x00, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xF0, 0x3F, - 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xFC, 0x7F, 0xC0, 0xFF, 0xCF, 0xF0, 0x03, - 0xFE, 0xFE, 0x00, 0x1F, 0xEF, 0xE0, 0x00, 0xFE, 0xFE, 0x00, 0x0F, 0xEF, - 0xE0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x7F, 0xFC, - 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0xF0, - 0x07, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, - 0x03, 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x07, - 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, - 0x00, 0x0F, 0xE7, 0xFC, 0x03, 0xFE, 0x7F, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0xFC, 0x00, - 0x07, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0xFE, 0x00, - 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, - 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, 0x00, 0x3F, 0xFF, - 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x80, 0x03, - 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, - 0x00, 0x3F, 0xFF, 0x00, 0x07, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, 0x1F, - 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0xC0, - 0x01, 0xFF, 0xFC, 0x00, 0x7F, 0xBF, 0xC0, 0x1F, 0xE7, 0xFC, 0x07, 0xFC, - 0x7F, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, - 0xFE, 0x00, 0x7F, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x03, - 0xFF, 0xF0, 0x00, 0x1F, 0xDF, 0xC0, 0x01, 0xFC, 0xFE, 0x00, 0x0F, 0xE7, - 0xF0, 0x00, 0x7F, 0x1F, 0xC0, 0x03, 0xF0, 0xFE, 0x00, 0x3F, 0x87, 0xF0, - 0x01, 0xFC, 0x1F, 0xC0, 0x0F, 0xC0, 0xFE, 0x00, 0xFE, 0x03, 0xF0, 0x07, - 0xF0, 0x1F, 0x80, 0x3F, 0x00, 0xFE, 0x03, 0xF8, 0x03, 0xF0, 0x1F, 0xC0, - 0x1F, 0x80, 0xFC, 0x00, 0xFE, 0x07, 0xE0, 0x03, 0xF0, 0x7F, 0x00, 0x1F, - 0x83, 0xF0, 0x00, 0xFE, 0x1F, 0x80, 0x03, 0xF1, 0xF8, 0x00, 0x1F, 0x8F, - 0xC0, 0x00, 0xFC, 0x7E, 0x00, 0x03, 0xF3, 0xE0, 0x00, 0x1F, 0xBF, 0x00, - 0x00, 0xFD, 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x1F, 0xFC, 0x00, 0x00, - 0xFF, 0xE0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0xFF, - 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0xFF, 0x00, 0x3F, 0x80, 0x1F, 0xFF, 0xE0, 0x07, 0xF0, 0x03, 0xFD, - 0xFC, 0x01, 0xFE, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0xE0, 0x0F, 0xE7, 0xF0, - 0x07, 0xFC, 0x01, 0xFC, 0x7F, 0x00, 0xFF, 0x80, 0x7F, 0x8F, 0xE0, 0x1F, - 0xF0, 0x0F, 0xE1, 0xFC, 0x07, 0xFF, 0x01, 0xFC, 0x3F, 0x80, 0xFB, 0xE0, - 0x3F, 0x83, 0xF0, 0x1F, 0x7C, 0x07, 0xE0, 0x7F, 0x03, 0xEF, 0x81, 0xFC, - 0x0F, 0xE0, 0x7D, 0xF0, 0x3F, 0x80, 0xFC, 0x1F, 0x9F, 0x07, 0xF0, 0x1F, - 0x83, 0xE3, 0xE0, 0xFC, 0x03, 0xF0, 0x7C, 0x7C, 0x1F, 0x80, 0x7F, 0x0F, - 0x8F, 0x87, 0xF0, 0x07, 0xE1, 0xF0, 0xF8, 0xFC, 0x00, 0xFC, 0x7E, 0x1F, - 0x1F, 0x80, 0x1F, 0x8F, 0x83, 0xE3, 0xF0, 0x01, 0xF9, 0xF0, 0x7C, 0x7E, - 0x00, 0x3F, 0x3E, 0x0F, 0x9F, 0x80, 0x07, 0xE7, 0xC0, 0xFB, 0xF0, 0x00, - 0xFD, 0xF0, 0x1F, 0x7E, 0x00, 0x0F, 0xBE, 0x03, 0xEF, 0xC0, 0x01, 0xFF, - 0xC0, 0x7D, 0xF0, 0x00, 0x3F, 0xF8, 0x0F, 0xFE, 0x00, 0x03, 0xFF, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0xC0, 0x1F, 0xF0, 0x00, 0x0F, 0xF8, 0x03, 0xFE, - 0x00, 0x01, 0xFF, 0x00, 0x7F, 0xC0, 0x00, 0x1F, 0xE0, 0x07, 0xF8, 0x00, - 0x03, 0xFC, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x00, 0x07, - 0xE0, 0x03, 0xF8, 0x00, 0x7F, 0x80, 0x07, 0xF9, 0xFF, 0x00, 0x3F, 0xC3, - 0xFC, 0x00, 0xFF, 0x07, 0xF8, 0x07, 0xF8, 0x1F, 0xE0, 0x1F, 0xC0, 0x3F, - 0xC0, 0xFF, 0x00, 0xFF, 0x07, 0xF8, 0x01, 0xFE, 0x1F, 0xE0, 0x03, 0xF8, - 0xFF, 0x00, 0x0F, 0xF3, 0xF8, 0x00, 0x1F, 0xDF, 0xE0, 0x00, 0x3F, 0xFF, - 0x00, 0x00, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x07, 0xFF, 0x00, - 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x03, 0xFF, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x7F, 0xF8, 0x00, 0x03, - 0xFF, 0xF0, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x7F, 0x7F, 0x80, 0x03, 0xF8, - 0xFF, 0x00, 0x1F, 0xE1, 0xFC, 0x00, 0x7F, 0x07, 0xF8, 0x03, 0xFC, 0x0F, - 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x80, 0x7F, 0x83, 0xFC, 0x01, 0xFE, - 0x0F, 0xF0, 0x03, 0xFC, 0x7F, 0x80, 0x0F, 0xFB, 0xFE, 0x00, 0x1F, 0xE0, - 0xFF, 0x00, 0x07, 0xFF, 0xF8, 0x00, 0x7F, 0x9F, 0xE0, 0x03, 0xFC, 0xFF, - 0x00, 0x3F, 0xC3, 0xFC, 0x01, 0xFE, 0x0F, 0xE0, 0x0F, 0xE0, 0x7F, 0x00, - 0xFF, 0x01, 0xFC, 0x07, 0xF0, 0x0F, 0xE0, 0x7F, 0x80, 0x3F, 0x83, 0xF8, - 0x01, 0xFC, 0x3F, 0xC0, 0x07, 0xF1, 0xFC, 0x00, 0x3F, 0x8F, 0xE0, 0x00, - 0xFE, 0xFE, 0x00, 0x07, 0xF7, 0xF0, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0xFF, - 0xF8, 0x00, 0x03, 0xFF, 0x80, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, 0xC0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xE0, - 0x00, 0x00, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, - 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x3F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, - 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xC0, 0x00, - 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFE, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, - 0x00, 0x0F, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, - 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, - 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, - 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0xE0, 0x03, 0xC0, 0x07, 0x00, - 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x70, - 0x01, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0x70, 0x01, 0xC0, 0x07, - 0x00, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, - 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xE0, - 0x03, 0x80, 0x0E, 0x00, 0x3C, 0x00, 0x70, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, - 0xFE, 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, - 0x1F, 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, - 0xC3, 0xF8, 0x7F, 0x0F, 0xE1, 0xFC, 0x3F, 0x87, 0xF0, 0xFE, 0x1F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xF0, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x80, 0x03, 0xFE, 0x00, 0x0F, 0xFC, 0x00, - 0x7D, 0xF0, 0x01, 0xF7, 0xC0, 0x0F, 0xDF, 0x80, 0x3E, 0x3E, 0x00, 0xF8, - 0xFC, 0x07, 0xE1, 0xF0, 0x1F, 0x07, 0xC0, 0xFC, 0x1F, 0x83, 0xE0, 0x3E, - 0x0F, 0x80, 0xFC, 0x7E, 0x01, 0xF1, 0xF0, 0x07, 0xC7, 0xC0, 0x1F, 0xBE, - 0x00, 0x3E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x3E, 0x0F, 0x83, 0xC0, 0xF0, 0x38, 0x1E, - 0x01, 0xFF, 0x00, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, - 0x7F, 0xFF, 0xF8, 0x7F, 0xFF, 0xFC, 0x7F, 0x03, 0xFC, 0x7E, 0x01, 0xFC, - 0x00, 0x01, 0xFC, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xFC, 0x03, 0xFF, 0xFC, - 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x7F, 0xC1, 0xFC, 0xFF, 0x01, 0xFC, - 0xFE, 0x01, 0xFC, 0xFE, 0x03, 0xFC, 0xFE, 0x03, 0xFC, 0xFF, 0x07, 0xFC, - 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0x7F, 0xFF, 0xFC, 0x3F, 0xFD, 0xFE, - 0x1F, 0xF0, 0xFF, 0x07, 0xE0, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, - 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x0F, - 0xC0, 0x3F, 0x9F, 0xF8, 0x1F, 0xDF, 0xFF, 0x0F, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0xE3, 0xFF, 0xFF, 0xF9, 0xFF, 0x83, 0xFE, 0xFF, 0x80, 0xFF, 0x7F, - 0x80, 0x3F, 0xBF, 0xC0, 0x1F, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x03, 0xFF, - 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x3F, - 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x1F, 0xDF, 0xF0, 0x1F, 0xEF, 0xFC, 0x1F, - 0xF7, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xF1, 0xFF, 0xFF, 0xF8, 0xFE, 0xFF, - 0xF8, 0x7F, 0x3F, 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x00, 0xFF, 0x00, 0x07, - 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0x9F, 0xF0, 0x7F, 0xBF, 0xC0, 0x7F, 0x7F, 0x00, 0x7F, 0xFC, 0x00, - 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0xFD, - 0xFE, 0x03, 0xFB, 0xFE, 0x0F, 0xF3, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x87, - 0xFF, 0xFE, 0x07, 0xFF, 0xF8, 0x03, 0xFF, 0xE0, 0x01, 0xFE, 0x00, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, - 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x3F, 0x80, 0x7E, 0x1F, 0xC0, 0xFF, 0xCF, 0xE1, 0xFF, 0xF7, - 0xF1, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFE, 0xFF, 0x83, - 0xFF, 0x7F, 0x80, 0xFF, 0xBF, 0x80, 0x3F, 0xFF, 0xC0, 0x1F, 0xFF, 0xC0, - 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, - 0x00, 0x7F, 0xFE, 0x00, 0x3F, 0xFF, 0x80, 0x3F, 0xDF, 0xC0, 0x1F, 0xEF, - 0xF0, 0x1F, 0xF7, 0xFC, 0x1F, 0xF9, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, 0xFE, - 0x3F, 0xFF, 0xFF, 0x0F, 0xFF, 0xBF, 0x81, 0xFF, 0x9F, 0xC0, 0x3F, 0x00, - 0x00, 0x00, 0xFE, 0x00, 0x03, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, - 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xC3, 0xF8, 0x7F, 0x80, 0xFC, 0x7F, 0x00, - 0xFC, 0x7F, 0x00, 0x7C, 0xFE, 0x00, 0x7E, 0xFE, 0x00, 0x7E, 0xFF, 0xFF, - 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0xFE, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x7F, 0x7F, 0x00, - 0xFE, 0x3F, 0xC1, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, 0x0F, 0xFF, - 0xF0, 0x03, 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x01, 0xFC, 0x1F, 0xF0, 0xFF, - 0xC3, 0xFF, 0x1F, 0xFC, 0x7F, 0x81, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, - 0x0F, 0xFF, 0xBF, 0xFE, 0xFF, 0xFB, 0xFF, 0xE1, 0xFC, 0x07, 0xF0, 0x1F, - 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, - 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, - 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x00, 0x00, 0xF8, 0x7F, 0x07, 0xFE, - 0x7F, 0x0F, 0xFF, 0x7F, 0x1F, 0xFF, 0x7F, 0x3F, 0xFF, 0xFF, 0x3F, 0xFF, - 0xFF, 0x7F, 0xC3, 0xFF, 0x7F, 0x81, 0xFF, 0x7F, 0x00, 0xFF, 0xFF, 0x00, - 0xFF, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, - 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0xFF, 0xFF, 0x00, - 0xFF, 0x7F, 0x81, 0xFF, 0x7F, 0xC3, 0xFF, 0x3F, 0xFF, 0xFF, 0x3F, 0xFF, - 0xFF, 0x1F, 0xFF, 0xFF, 0x0F, 0xFF, 0x7F, 0x07, 0xFE, 0x7F, 0x01, 0xF8, - 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x7F, 0x00, - 0xFF, 0x7F, 0x01, 0xFE, 0x7F, 0xC3, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, - 0xF8, 0x0F, 0xFF, 0xE0, 0x01, 0xFF, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, - 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x3F, 0x83, - 0xF8, 0xFF, 0xC7, 0xF7, 0xFF, 0xCF, 0xEF, 0xFF, 0xDF, 0xFF, 0xFF, 0xBF, - 0xFF, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0x01, 0xFF, 0xFE, 0x01, 0xFF, 0xF8, - 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, - 0x3F, 0xFF, 0x00, 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, - 0xFF, 0xF0, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, - 0xFF, 0x00, 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFC, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF0, 0x00, - 0x00, 0x00, 0x07, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, - 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, - 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, 0x1F, 0xC7, 0xF1, 0xFC, 0x7F, - 0x1F, 0xC7, 0xF1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFE, 0xFE, 0x00, - 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, - 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, 0x00, 0xFE, - 0x00, 0x01, 0xFC, 0x03, 0xFB, 0xF8, 0x0F, 0xE7, 0xF0, 0x3F, 0xCF, 0xE0, - 0xFF, 0x1F, 0xC3, 0xFC, 0x3F, 0x87, 0xF0, 0x7F, 0x1F, 0xC0, 0xFE, 0x7F, - 0x01, 0xFD, 0xFC, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0xE0, - 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0xE0, 0x7F, 0xDF, 0xC0, 0xFF, 0x3F, 0xC1, - 0xFC, 0x3F, 0x83, 0xF8, 0x3F, 0x87, 0xF0, 0x7F, 0x8F, 0xE0, 0x7F, 0x1F, - 0xC0, 0xFF, 0x3F, 0x80, 0xFE, 0x7F, 0x01, 0xFE, 0xFE, 0x01, 0xFD, 0xFC, - 0x03, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFE, 0x1F, 0x80, 0x7E, - 0x0F, 0xE7, 0xFE, 0x1F, 0xF8, 0xFE, 0xFF, 0xF3, 0xFF, 0xCF, 0xFF, 0xFF, - 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0x83, 0xFF, 0x0F, 0xFF, 0xF0, 0x1F, 0xE0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, - 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, - 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, - 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, - 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, - 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, - 0x01, 0xFC, 0x07, 0xFF, 0xE0, 0x1F, 0xC0, 0x7F, 0xFE, 0x01, 0xFC, 0x07, - 0xF0, 0xFE, 0x1F, 0xC1, 0xFC, 0xFF, 0xE3, 0xFB, 0xFF, 0xE7, 0xFF, 0xFF, - 0xEF, 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0x80, 0xFF, - 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF, - 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, 0xFE, - 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xE0, - 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, 0xFE, 0x00, - 0xFE, 0x00, 0x7F, 0x80, 0x01, 0xFF, 0xF0, 0x01, 0xFF, 0xFE, 0x01, 0xFF, - 0xFF, 0x81, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF1, 0xFF, 0x07, 0xFC, 0xFF, - 0x01, 0xFE, 0x7F, 0x00, 0x7F, 0x7F, 0x80, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, - 0xC0, 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, - 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xBF, 0x80, 0x3F, 0x9F, 0xE0, 0x3F, - 0xCF, 0xF8, 0x3F, 0xE3, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, - 0xF0, 0x0F, 0xFF, 0xF0, 0x03, 0xFF, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0xFE, - 0x1F, 0x80, 0x7F, 0x3F, 0xF0, 0x3F, 0xBF, 0xFE, 0x1F, 0xDF, 0xFF, 0x8F, - 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xF3, 0xFF, 0x07, 0xFD, 0xFF, 0x01, 0xFE, - 0xFF, 0x00, 0x7F, 0x7F, 0x80, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, 0xC0, 0x07, - 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, - 0x7F, 0xFF, 0x00, 0x7F, 0xFF, 0x80, 0x3F, 0xBF, 0xE0, 0x3F, 0xDF, 0xF8, - 0x3F, 0xCF, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xE3, 0xFB, 0xFF, 0xE1, 0xFD, - 0xFF, 0xF0, 0xFE, 0x7F, 0xE0, 0x7F, 0x0F, 0xC0, 0x3F, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x1F, 0xC0, 0x00, 0x00, 0x00, 0xFC, 0x3F, 0x81, 0xFF, 0x9F, 0xC3, 0xFF, - 0xEF, 0xE1, 0xFF, 0xF7, 0xF1, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, 0xFD, 0xFF, - 0x07, 0xFE, 0xFF, 0x01, 0xFF, 0x7F, 0x00, 0x7F, 0xFF, 0x80, 0x3F, 0xFF, - 0x80, 0x0F, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x01, 0xFF, - 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xBF, 0x80, 0x3F, - 0xDF, 0xE0, 0x3F, 0xEF, 0xF8, 0x3F, 0xF3, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, - 0xFC, 0x7F, 0xFE, 0xFE, 0x1F, 0xFF, 0x7F, 0x03, 0xFF, 0x3F, 0x80, 0x7E, - 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0xFE, 0x1F, 0xFC, - 0x7F, 0xFB, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x7F, 0x80, - 0xFF, 0x01, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xE0, 0x1F, 0xC0, 0x3F, - 0x80, 0x7F, 0x00, 0xFE, 0x01, 0xFC, 0x03, 0xF8, 0x07, 0xF0, 0x0F, 0xE0, - 0x1F, 0xC0, 0x3F, 0x80, 0x7F, 0x00, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x07, - 0xFF, 0xE0, 0x0F, 0xFF, 0xF8, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x7F, - 0x81, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0xC0, 0x00, 0x7F, - 0xFC, 0x00, 0x7F, 0xFF, 0x80, 0x3F, 0xFF, 0xF0, 0x1F, 0xFF, 0xFC, 0x07, - 0xFF, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x0F, 0xFF, 0x00, 0x01, 0xFF, 0x00, - 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x7F, 0x00, 0x7F, 0x7F, 0x81, 0xFE, 0x7F, - 0xFF, 0xFE, 0x3F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, 0x0F, 0xFF, 0xF0, 0x01, - 0xFF, 0x80, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, - 0x8F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF3, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, - 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, - 0x83, 0xF8, 0x3F, 0x83, 0xF8, 0x3F, 0x83, 0xFF, 0x3F, 0xF1, 0xFF, 0x0F, - 0xF0, 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, - 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, - 0x7F, 0xFE, 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xF8, 0x03, 0xFF, 0xF0, 0x07, - 0xFF, 0xE0, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x3F, 0xFF, 0x00, 0x7F, - 0xFE, 0x00, 0xFF, 0xFC, 0x03, 0xFF, 0xFC, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, - 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xDF, 0xFF, 0xBF, 0x9F, 0xFF, 0x7F, 0x1F, - 0xFC, 0xFE, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x3F, 0xBF, 0x80, 0x1F, 0x9F, - 0xC0, 0x1F, 0xC7, 0xE0, 0x0F, 0xE3, 0xF8, 0x07, 0xE1, 0xFC, 0x07, 0xF0, - 0x7E, 0x03, 0xF8, 0x3F, 0x81, 0xF8, 0x1F, 0xC0, 0xFC, 0x07, 0xE0, 0xFE, - 0x03, 0xF8, 0x7E, 0x00, 0xFC, 0x3F, 0x00, 0x7E, 0x1F, 0x80, 0x3F, 0x1F, - 0x80, 0x0F, 0xCF, 0xC0, 0x07, 0xE7, 0xE0, 0x03, 0xF7, 0xE0, 0x00, 0xFF, - 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0xF8, 0x00, 0x0F, 0xFC, 0x00, 0x07, - 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0xFC, 0x03, 0xF8, 0x0F, 0xFF, 0xC0, 0x7F, 0x01, 0xFF, 0xF8, 0x0F, 0xE0, - 0x3F, 0x3F, 0x03, 0xFE, 0x07, 0xE7, 0xE0, 0x7F, 0xC1, 0xFC, 0xFE, 0x0F, - 0xF8, 0x3F, 0x9F, 0xC1, 0xFF, 0x07, 0xE1, 0xF8, 0x3D, 0xE0, 0xFC, 0x3F, - 0x0F, 0xBE, 0x3F, 0x87, 0xF1, 0xF7, 0xC7, 0xE0, 0x7E, 0x3E, 0xF8, 0xFC, - 0x0F, 0xC7, 0xDF, 0x1F, 0x81, 0xF9, 0xF1, 0xE3, 0xF0, 0x3F, 0x3E, 0x3E, - 0xFC, 0x03, 0xF7, 0xC7, 0xDF, 0x80, 0x7E, 0xF8, 0xFB, 0xF0, 0x0F, 0xDE, - 0x1F, 0x7C, 0x00, 0xFF, 0xC1, 0xFF, 0x80, 0x1F, 0xF8, 0x3F, 0xF0, 0x03, - 0xFF, 0x07, 0xFE, 0x00, 0x7F, 0xC0, 0xFF, 0x80, 0x07, 0xF8, 0x1F, 0xF0, - 0x00, 0xFF, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, - 0xF0, 0x00, 0xFF, 0x00, 0xFF, 0x7F, 0x81, 0xFE, 0x3F, 0x81, 0xFC, 0x3F, - 0xC3, 0xFC, 0x1F, 0xC3, 0xF8, 0x0F, 0xE7, 0xF0, 0x0F, 0xEF, 0xF0, 0x07, - 0xFF, 0xE0, 0x03, 0xFF, 0xC0, 0x03, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x00, - 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x03, - 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x0F, 0xE7, 0xF0, 0x1F, - 0xE7, 0xF0, 0x1F, 0xC3, 0xF8, 0x3F, 0xC3, 0xFC, 0x7F, 0x81, 0xFC, 0x7F, - 0x01, 0xFE, 0xFF, 0x00, 0xFF, 0x7F, 0x00, 0x3F, 0xBF, 0x80, 0x1F, 0xDF, - 0xC0, 0x0F, 0xC7, 0xF0, 0x07, 0xE3, 0xF8, 0x07, 0xF1, 0xFC, 0x03, 0xF0, - 0x7F, 0x01, 0xF8, 0x3F, 0x81, 0xFC, 0x0F, 0xC0, 0xFC, 0x07, 0xF0, 0x7E, - 0x03, 0xF8, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0x7E, 0x1F, 0x80, 0x3F, 0x8F, - 0xC0, 0x0F, 0xCF, 0xC0, 0x07, 0xE7, 0xE0, 0x03, 0xFB, 0xF0, 0x00, 0xFD, - 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFC, 0x00, 0x07, - 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x1F, 0xC0, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x0F, 0xFC, 0x00, - 0x07, 0xFC, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x7F, 0xFF, - 0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xBF, - 0xFF, 0xFC, 0x00, 0x3F, 0xE0, 0x03, 0xFE, 0x00, 0x1F, 0xE0, 0x01, 0xFE, - 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x1F, - 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, 0x1F, 0xE0, 0x01, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF8, 0x01, 0xF8, 0x1F, 0xC1, 0xFE, 0x0F, 0xF0, 0xFF, - 0x87, 0xE0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, - 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x3F, - 0x0F, 0xF0, 0x7F, 0x03, 0xF8, 0x1F, 0xE0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, - 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, - 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xE0, 0x3F, 0xE0, 0xFF, 0x07, 0xF8, 0x1F, - 0xC0, 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFC, 0x07, 0xF0, 0x3F, 0xC1, 0xFE, 0x0F, 0xF8, 0x0F, 0xC0, 0x3E, 0x01, - 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, - 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x80, 0x7F, 0x81, 0xFC, - 0x0F, 0xE0, 0xFF, 0x0F, 0xC0, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, - 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, - 0x0F, 0xC3, 0xFE, 0x1F, 0xE0, 0xFF, 0x07, 0xF0, 0x3F, 0x00, 0x1F, 0x00, - 0x03, 0xFE, 0x00, 0x1F, 0xF8, 0x0F, 0xFF, 0xF0, 0xFF, 0x0F, 0xFF, 0xF0, - 0x1F, 0xF8, 0x00, 0x7F, 0x80, 0x00, 0xF8}; - -const GFXglyph FreeSansBold24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 13, 0, 1}, // 0x20 ' ' - {0, 7, 34, 16, 5, -33}, // 0x21 '!' - {30, 18, 12, 22, 2, -33}, // 0x22 '"' - {57, 26, 33, 26, 0, -31}, // 0x23 '#' - {165, 25, 40, 26, 1, -34}, // 0x24 '$' - {290, 39, 34, 42, 1, -32}, // 0x25 '%' - {456, 30, 35, 34, 3, -33}, // 0x26 '&' - {588, 7, 12, 12, 3, -33}, // 0x27 ''' - {599, 13, 44, 16, 2, -33}, // 0x28 '(' - {671, 13, 44, 16, 1, -33}, // 0x29 ')' - {743, 15, 15, 18, 1, -33}, // 0x2A '*' - {772, 23, 22, 27, 2, -21}, // 0x2B '+' - {836, 7, 15, 12, 2, -6}, // 0x2C ',' - {850, 13, 6, 16, 1, -15}, // 0x2D '-' - {860, 7, 7, 12, 2, -6}, // 0x2E '.' - {867, 13, 34, 13, 0, -32}, // 0x2F '/' - {923, 24, 35, 26, 1, -33}, // 0x30 '0' - {1028, 14, 33, 26, 4, -32}, // 0x31 '1' - {1086, 23, 34, 26, 2, -33}, // 0x32 '2' - {1184, 23, 35, 26, 2, -33}, // 0x33 '3' - {1285, 22, 33, 26, 2, -32}, // 0x34 '4' - {1376, 23, 34, 26, 2, -32}, // 0x35 '5' - {1474, 23, 35, 26, 2, -33}, // 0x36 '6' - {1575, 23, 33, 26, 1, -32}, // 0x37 '7' - {1670, 24, 35, 26, 1, -33}, // 0x38 '8' - {1775, 24, 35, 26, 1, -33}, // 0x39 '9' - {1880, 7, 25, 12, 2, -24}, // 0x3A ':' - {1902, 7, 33, 12, 2, -24}, // 0x3B ';' - {1931, 23, 23, 27, 2, -22}, // 0x3C '<' - {1998, 23, 18, 27, 2, -19}, // 0x3D '=' - {2050, 23, 23, 27, 2, -22}, // 0x3E '>' - {2117, 24, 35, 29, 3, -34}, // 0x3F '?' - {2222, 43, 41, 46, 1, -34}, // 0x40 '@' - {2443, 32, 34, 33, 0, -33}, // 0x41 'A' - {2579, 27, 34, 33, 4, -33}, // 0x42 'B' - {2694, 30, 36, 34, 2, -34}, // 0x43 'C' - {2829, 28, 34, 34, 4, -33}, // 0x44 'D' - {2948, 25, 34, 31, 4, -33}, // 0x45 'E' - {3055, 24, 34, 30, 4, -33}, // 0x46 'F' - {3157, 31, 36, 36, 2, -34}, // 0x47 'G' - {3297, 27, 34, 35, 4, -33}, // 0x48 'H' - {3412, 7, 34, 15, 4, -33}, // 0x49 'I' - {3442, 22, 35, 27, 1, -33}, // 0x4A 'J' - {3539, 30, 34, 34, 4, -33}, // 0x4B 'K' - {3667, 23, 34, 29, 4, -33}, // 0x4C 'L' - {3765, 33, 34, 41, 4, -33}, // 0x4D 'M' - {3906, 28, 34, 35, 4, -33}, // 0x4E 'N' - {4025, 33, 36, 37, 2, -34}, // 0x4F 'O' - {4174, 26, 34, 32, 4, -33}, // 0x50 'P' - {4285, 33, 37, 37, 2, -34}, // 0x51 'Q' - {4438, 28, 34, 34, 4, -33}, // 0x52 'R' - {4557, 28, 36, 32, 2, -34}, // 0x53 'S' - {4683, 27, 34, 30, 2, -33}, // 0x54 'T' - {4798, 27, 35, 35, 4, -33}, // 0x55 'U' - {4917, 29, 34, 31, 1, -33}, // 0x56 'V' - {5041, 43, 34, 45, 1, -33}, // 0x57 'W' - {5224, 30, 34, 32, 1, -33}, // 0x58 'X' - {5352, 29, 34, 30, 1, -33}, // 0x59 'Y' - {5476, 26, 34, 29, 1, -33}, // 0x5A 'Z' - {5587, 11, 43, 16, 3, -33}, // 0x5B '[' - {5647, 14, 34, 13, -1, -32}, // 0x5C '\' - {5707, 11, 43, 16, 1, -33}, // 0x5D ']' - {5767, 22, 20, 27, 3, -32}, // 0x5E '^' - {5822, 28, 4, 26, -1, 6}, // 0x5F '_' - {5836, 9, 7, 12, 1, -35}, // 0x60 '`' - {5844, 24, 26, 27, 2, -24}, // 0x61 'a' - {5922, 25, 35, 29, 3, -33}, // 0x62 'b' - {6032, 23, 26, 26, 2, -24}, // 0x63 'c' - {6107, 25, 35, 29, 2, -33}, // 0x64 'd' - {6217, 24, 26, 27, 2, -24}, // 0x65 'e' - {6295, 14, 34, 16, 1, -33}, // 0x66 'f' - {6355, 24, 36, 29, 2, -24}, // 0x67 'g' - {6463, 23, 34, 28, 3, -33}, // 0x68 'h' - {6561, 7, 34, 13, 3, -33}, // 0x69 'i' - {6591, 10, 45, 13, 0, -33}, // 0x6A 'j' - {6648, 23, 34, 27, 3, -33}, // 0x6B 'k' - {6746, 7, 34, 13, 3, -33}, // 0x6C 'l' - {6776, 36, 25, 42, 3, -24}, // 0x6D 'm' - {6889, 23, 25, 29, 3, -24}, // 0x6E 'n' - {6961, 25, 26, 29, 2, -24}, // 0x6F 'o' - {7043, 25, 36, 29, 3, -24}, // 0x70 'p' - {7156, 25, 36, 29, 2, -24}, // 0x71 'q' - {7269, 15, 25, 18, 3, -24}, // 0x72 'r' - {7316, 24, 26, 26, 1, -24}, // 0x73 's' - {7394, 12, 32, 16, 2, -30}, // 0x74 't' - {7442, 23, 26, 29, 3, -24}, // 0x75 'u' - {7517, 25, 25, 25, 0, -24}, // 0x76 'v' - {7596, 35, 25, 37, 1, -24}, // 0x77 'w' - {7706, 24, 25, 26, 1, -24}, // 0x78 'x' - {7781, 25, 36, 26, 0, -24}, // 0x79 'y' - {7894, 21, 25, 24, 1, -24}, // 0x7A 'z' - {7960, 13, 43, 18, 2, -33}, // 0x7B '{' - {8030, 4, 44, 13, 5, -33}, // 0x7C '|' - {8052, 13, 43, 18, 3, -33}, // 0x7D '}' - {8122, 21, 8, 23, 1, -14}}; // 0x7E '~' - -const GFXfont FreeSansBold24pt7b PROGMEM = { - (uint8_t *)FreeSansBold24pt7bBitmaps, (GFXglyph *)FreeSansBold24pt7bGlyphs, - 0x20, 0x7E, 56}; - -// Approx. 8815 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h deleted file mode 100644 index cffb178..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBold9pt7b.h +++ /dev/null @@ -1,210 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBold9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFF, 0xFE, 0x48, 0x7E, 0xEF, 0xDF, 0xBF, 0x74, 0x40, 0x19, 0x86, - 0x67, 0xFD, 0xFF, 0x33, 0x0C, 0xC3, 0x33, 0xFE, 0xFF, 0x99, 0x86, 0x61, - 0x90, 0x10, 0x1F, 0x1F, 0xDE, 0xFF, 0x3F, 0x83, 0xC0, 0xFC, 0x1F, 0x09, - 0xFC, 0xFE, 0xF7, 0xF1, 0xE0, 0x40, 0x38, 0x10, 0x7C, 0x30, 0xC6, 0x20, - 0xC6, 0x40, 0xC6, 0x40, 0x7C, 0x80, 0x39, 0x9C, 0x01, 0x3E, 0x03, 0x63, - 0x02, 0x63, 0x04, 0x63, 0x0C, 0x3E, 0x08, 0x1C, 0x0E, 0x01, 0xF8, 0x3B, - 0x83, 0xB8, 0x3F, 0x01, 0xE0, 0x3E, 0x67, 0x76, 0xE3, 0xEE, 0x1C, 0xF3, - 0xC7, 0xFE, 0x3F, 0x70, 0xFF, 0xF4, 0x18, 0x63, 0x1C, 0x73, 0x8E, 0x38, - 0xE3, 0x8E, 0x18, 0x70, 0xC3, 0x06, 0x08, 0x61, 0x83, 0x0E, 0x38, 0x71, - 0xC7, 0x1C, 0x71, 0xC6, 0x38, 0xE3, 0x18, 0x40, 0x21, 0x3E, 0x45, 0x28, - 0x38, 0x70, 0xE7, 0xFF, 0xE7, 0x0E, 0x1C, 0xFC, 0x9C, 0xFF, 0xC0, 0xFC, - 0x08, 0xC4, 0x23, 0x10, 0x84, 0x62, 0x11, 0x88, 0x00, 0x3E, 0x3F, 0x9D, - 0xDC, 0x7E, 0x3F, 0x1F, 0x8F, 0xC7, 0xE3, 0xF1, 0xDD, 0xCF, 0xE3, 0xE0, - 0x08, 0xFF, 0xF3, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x80, 0x3E, 0x3F, 0xB8, - 0xFC, 0x70, 0x38, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x0F, 0xF7, 0xF8, - 0x3C, 0x7F, 0xE7, 0xE7, 0x07, 0x0C, 0x0E, 0x07, 0x07, 0xE7, 0xE7, 0x7E, - 0x3C, 0x0E, 0x1E, 0x1E, 0x2E, 0x2E, 0x4E, 0x4E, 0x8E, 0xFF, 0xFF, 0x0E, - 0x0E, 0x0E, 0x7F, 0x3F, 0x90, 0x18, 0x0D, 0xE7, 0xFB, 0x9E, 0x07, 0x03, - 0x81, 0xF1, 0xFF, 0xE7, 0xC0, 0x3E, 0x3F, 0x9C, 0xFC, 0x0E, 0xE7, 0xFB, - 0xDF, 0xC7, 0xE3, 0xF1, 0xDD, 0xEF, 0xE3, 0xE0, 0xFF, 0xFF, 0xC0, 0xE0, - 0xE0, 0x60, 0x70, 0x30, 0x38, 0x1C, 0x0C, 0x0E, 0x07, 0x03, 0x80, 0x3F, - 0x1F, 0xEE, 0x3F, 0x87, 0xE3, 0xCF, 0xC7, 0xFB, 0xCF, 0xE1, 0xF8, 0x7F, - 0x3D, 0xFE, 0x3F, 0x00, 0x3E, 0x3F, 0xBD, 0xDC, 0x7E, 0x3F, 0x1F, 0xDE, - 0xFF, 0x3B, 0x81, 0xF9, 0xCF, 0xE3, 0xC0, 0xFC, 0x00, 0x07, 0xE0, 0xFC, - 0x00, 0x07, 0xE5, 0xE0, 0x00, 0x83, 0xC7, 0xDF, 0x0C, 0x07, 0x80, 0xF8, - 0x1F, 0x01, 0x80, 0xFF, 0xFF, 0xC0, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x70, - 0x3F, 0x03, 0xE0, 0x38, 0x7D, 0xF1, 0xE0, 0x80, 0x00, 0x3E, 0x3F, 0xB8, - 0xFC, 0x70, 0x38, 0x1C, 0x1C, 0x1C, 0x1C, 0x0E, 0x00, 0x03, 0x81, 0xC0, - 0x03, 0xF0, 0x0F, 0xFC, 0x1E, 0x0E, 0x38, 0x02, 0x70, 0xE9, 0x63, 0x19, - 0xC2, 0x19, 0xC6, 0x11, 0xC6, 0x33, 0xC6, 0x32, 0x63, 0xFE, 0x73, 0xDC, - 0x3C, 0x00, 0x1F, 0xF8, 0x07, 0xF0, 0x07, 0x00, 0xF0, 0x0F, 0x80, 0xF8, - 0x1D, 0x81, 0x9C, 0x19, 0xC3, 0x8C, 0x3F, 0xE7, 0xFE, 0x70, 0x66, 0x07, - 0xE0, 0x70, 0xFF, 0x9F, 0xFB, 0x83, 0xF0, 0x7E, 0x0F, 0xFF, 0x3F, 0xF7, - 0x06, 0xE0, 0xFC, 0x1F, 0x83, 0xFF, 0xEF, 0xF8, 0x1F, 0x83, 0xFE, 0x78, - 0xE7, 0x07, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x07, 0x07, 0x78, - 0xF3, 0xFE, 0x1F, 0x80, 0xFF, 0x8F, 0xFC, 0xE0, 0xEE, 0x0E, 0xE0, 0x7E, - 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, 0x0E, 0xE0, 0xEF, 0xFC, 0xFF, 0x80, - 0xFF, 0xFF, 0xF8, 0x1C, 0x0E, 0x07, 0xFB, 0xFD, 0xC0, 0xE0, 0x70, 0x38, - 0x1F, 0xFF, 0xF8, 0xFF, 0xFF, 0xF8, 0x1C, 0x0E, 0x07, 0xFB, 0xFD, 0xC0, - 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x00, 0x0F, 0x87, 0xF9, 0xE3, 0xB8, 0x3E, - 0x01, 0xC0, 0x38, 0xFF, 0x1F, 0xE0, 0x6E, 0x0D, 0xE3, 0x9F, 0xD0, 0xF2, - 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xFF, 0xFF, 0xFF, 0x07, 0xE0, - 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0E, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0xE7, 0xE7, 0xE7, 0x7E, 0x3C, - 0xE0, 0xEE, 0x1C, 0xE3, 0x8E, 0x70, 0xEE, 0x0F, 0xC0, 0xFE, 0x0F, 0x70, - 0xE7, 0x0E, 0x38, 0xE1, 0xCE, 0x0E, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, - 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xE0, 0xFF, 0xFF, 0xF8, 0x7F, 0xE1, - 0xFF, 0x87, 0xFE, 0x1F, 0xEC, 0x7F, 0xB3, 0x7E, 0xCD, 0xFB, 0x37, 0xEC, - 0xDF, 0x9E, 0x7E, 0x79, 0xF9, 0xE7, 0xE7, 0x9C, 0xE0, 0xFE, 0x1F, 0xC3, - 0xFC, 0x7F, 0xCF, 0xD9, 0xFB, 0xBF, 0x37, 0xE7, 0xFC, 0x7F, 0x87, 0xF0, - 0xFE, 0x0E, 0x0F, 0x81, 0xFF, 0x1E, 0x3C, 0xE0, 0xEE, 0x03, 0xF0, 0x1F, - 0x80, 0xFC, 0x07, 0xE0, 0x3B, 0x83, 0x9E, 0x3C, 0x7F, 0xC0, 0xF8, 0x00, - 0xFF, 0x9F, 0xFB, 0x87, 0xF0, 0x7E, 0x0F, 0xC3, 0xFF, 0xF7, 0xFC, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x00, 0x0F, 0x81, 0xFF, 0x1E, 0x3C, 0xE0, - 0xEE, 0x03, 0xF0, 0x1F, 0x80, 0xFC, 0x07, 0xE1, 0xBB, 0x8F, 0x9E, 0x3C, - 0x7F, 0xE0, 0xFB, 0x80, 0x08, 0xFF, 0x8F, 0xFC, 0xE0, 0xEE, 0x0E, 0xE0, - 0xEE, 0x0E, 0xFF, 0xCF, 0xFC, 0xE0, 0xEE, 0x0E, 0xE0, 0xEE, 0x0E, 0xE0, - 0xF0, 0x3F, 0x0F, 0xFB, 0xC7, 0xF0, 0x7E, 0x01, 0xFC, 0x1F, 0xF0, 0x3F, - 0x00, 0xFC, 0x1D, 0xC7, 0xBF, 0xE1, 0xF8, 0xFF, 0xFF, 0xC7, 0x03, 0x81, - 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0xFC, - 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, 0xFC, 0x1F, - 0xC7, 0xBF, 0xE1, 0xF0, 0x60, 0x67, 0x0E, 0x70, 0xE3, 0x0C, 0x30, 0xC3, - 0x9C, 0x19, 0x81, 0x98, 0x1F, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x06, 0x00, - 0x61, 0xC3, 0xB8, 0xE1, 0x9C, 0x70, 0xCE, 0x3C, 0xE3, 0x36, 0x71, 0x9B, - 0x30, 0xED, 0x98, 0x36, 0x7C, 0x1B, 0x3C, 0x0F, 0x1E, 0x07, 0x8F, 0x01, - 0xC3, 0x80, 0xE1, 0x80, 0x70, 0xE7, 0x8E, 0x39, 0xC1, 0xF8, 0x1F, 0x80, - 0xF0, 0x07, 0x00, 0xF0, 0x1F, 0x81, 0x9C, 0x39, 0xC7, 0x0E, 0x70, 0xE0, - 0xE0, 0xFC, 0x39, 0xC7, 0x18, 0xC3, 0xB8, 0x36, 0x07, 0xC0, 0x70, 0x0E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0xFF, 0xFF, 0xC0, 0xE0, 0xE0, 0xF0, - 0x70, 0x70, 0x70, 0x78, 0x38, 0x38, 0x1F, 0xFF, 0xF8, 0xFF, 0xEE, 0xEE, - 0xEE, 0xEE, 0xEE, 0xEE, 0xEF, 0xF0, 0x86, 0x10, 0x86, 0x10, 0x84, 0x30, - 0x84, 0x30, 0x80, 0xFF, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x7F, 0xF0, - 0x18, 0x1C, 0x3C, 0x3E, 0x36, 0x66, 0x63, 0xC3, 0xFF, 0xC0, 0xCC, 0x3F, - 0x1F, 0xEE, 0x38, 0x0E, 0x3F, 0x9E, 0xEE, 0x3B, 0x9E, 0xFF, 0x9E, 0xE0, - 0xE0, 0x38, 0x0E, 0x03, 0xBC, 0xFF, 0xBC, 0xEE, 0x1F, 0x87, 0xE1, 0xF8, - 0x7F, 0x3B, 0xFE, 0xEF, 0x00, 0x1F, 0x3F, 0xDC, 0x7C, 0x0E, 0x07, 0x03, - 0x80, 0xE3, 0x7F, 0x8F, 0x00, 0x03, 0x81, 0xC0, 0xE7, 0x77, 0xFB, 0xBF, - 0x8F, 0xC7, 0xE3, 0xF1, 0xFD, 0xEF, 0xF3, 0xB8, 0x3E, 0x3F, 0x9C, 0xDC, - 0x3F, 0xFF, 0xFF, 0x81, 0xC3, 0x7F, 0x8F, 0x00, 0x3B, 0xDD, 0xFF, 0xB9, - 0xCE, 0x73, 0x9C, 0xE7, 0x00, 0x3B, 0xBF, 0xDD, 0xFC, 0x7E, 0x3F, 0x1F, - 0x8F, 0xEF, 0x7F, 0x9D, 0xC0, 0xFC, 0x77, 0xF1, 0xF0, 0xE0, 0x70, 0x38, - 0x1D, 0xEF, 0xFF, 0x9F, 0x8F, 0xC7, 0xE3, 0xF1, 0xF8, 0xFC, 0x7E, 0x38, - 0xFC, 0x7F, 0xFF, 0xFF, 0xFE, 0x77, 0x07, 0x77, 0x77, 0x77, 0x77, 0x77, - 0x7F, 0xE0, 0xE0, 0x70, 0x38, 0x1C, 0x7E, 0x77, 0x73, 0xF1, 0xF8, 0xFE, - 0x77, 0x39, 0xDC, 0x6E, 0x38, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xEF, 0x7B, - 0xFF, 0xFE, 0x39, 0xF8, 0xE7, 0xE3, 0x9F, 0x8E, 0x7E, 0x39, 0xF8, 0xE7, - 0xE3, 0x9F, 0x8E, 0x70, 0xEF, 0x7F, 0xF8, 0xFC, 0x7E, 0x3F, 0x1F, 0x8F, - 0xC7, 0xE3, 0xF1, 0xC0, 0x1E, 0x1F, 0xE7, 0x3B, 0x87, 0xE1, 0xF8, 0x7E, - 0x1D, 0xCE, 0x7F, 0x87, 0x80, 0xEF, 0x3F, 0xEF, 0x3B, 0x87, 0xE1, 0xF8, - 0x7E, 0x1F, 0xCE, 0xFF, 0xBB, 0xCE, 0x03, 0x80, 0xE0, 0x38, 0x00, 0x3B, - 0xBF, 0xFD, 0xFC, 0x7E, 0x3F, 0x1F, 0x8F, 0xEF, 0x7F, 0x9D, 0xC0, 0xE0, - 0x70, 0x38, 0x1C, 0xEF, 0xFF, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x80, 0x3E, - 0x3F, 0xB8, 0xFC, 0x0F, 0xC3, 0xFC, 0x3F, 0xC7, 0xFF, 0x1F, 0x00, 0x73, - 0xBF, 0xF7, 0x39, 0xCE, 0x73, 0x9E, 0x70, 0xE3, 0xF1, 0xF8, 0xFC, 0x7E, - 0x3F, 0x1F, 0x8F, 0xC7, 0xFF, 0xBD, 0xC0, 0xE1, 0x98, 0x67, 0x39, 0xCC, - 0x33, 0x0D, 0xC3, 0xE0, 0x78, 0x1E, 0x07, 0x00, 0xE3, 0x1D, 0x9E, 0x66, - 0x79, 0x99, 0xE6, 0x77, 0xB8, 0xD2, 0xC3, 0xCF, 0x0F, 0x3C, 0x3C, 0xF0, - 0x73, 0x80, 0x73, 0x9C, 0xE3, 0xF0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0xFC, - 0x73, 0x9C, 0xE0, 0xE1, 0xD8, 0x67, 0x39, 0xCE, 0x33, 0x0E, 0xC3, 0xE0, - 0x78, 0x1E, 0x03, 0x00, 0xC0, 0x70, 0x38, 0x0E, 0x00, 0xFE, 0xFE, 0x0E, - 0x1C, 0x38, 0x38, 0x70, 0xE0, 0xFF, 0xFF, 0x37, 0x66, 0x66, 0x6E, 0xE6, - 0x66, 0x66, 0x67, 0x30, 0xFF, 0xFF, 0x80, 0xCE, 0x66, 0x66, 0x67, 0x76, - 0x66, 0x66, 0x6E, 0xC0, 0x71, 0x8E}; - -const GFXglyph FreeSansBold9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 3, 13, 6, 2, -12}, // 0x21 '!' - {5, 7, 5, 9, 1, -12}, // 0x22 '"' - {10, 10, 12, 10, 0, -11}, // 0x23 '#' - {25, 9, 15, 10, 1, -13}, // 0x24 '$' - {42, 16, 13, 16, 0, -12}, // 0x25 '%' - {68, 12, 13, 13, 1, -12}, // 0x26 '&' - {88, 3, 5, 5, 1, -12}, // 0x27 ''' - {90, 6, 17, 6, 1, -12}, // 0x28 '(' - {103, 6, 17, 6, 0, -12}, // 0x29 ')' - {116, 5, 6, 7, 1, -12}, // 0x2A '*' - {120, 7, 8, 11, 2, -7}, // 0x2B '+' - {127, 3, 5, 4, 1, -1}, // 0x2C ',' - {129, 5, 2, 6, 0, -5}, // 0x2D '-' - {131, 3, 2, 4, 1, -1}, // 0x2E '.' - {132, 5, 13, 5, 0, -12}, // 0x2F '/' - {141, 9, 13, 10, 1, -12}, // 0x30 '0' - {156, 5, 13, 10, 2, -12}, // 0x31 '1' - {165, 9, 13, 10, 1, -12}, // 0x32 '2' - {180, 8, 13, 10, 1, -12}, // 0x33 '3' - {193, 8, 13, 10, 2, -12}, // 0x34 '4' - {206, 9, 13, 10, 1, -12}, // 0x35 '5' - {221, 9, 13, 10, 1, -12}, // 0x36 '6' - {236, 9, 13, 10, 0, -12}, // 0x37 '7' - {251, 10, 13, 10, 0, -12}, // 0x38 '8' - {268, 9, 13, 10, 1, -12}, // 0x39 '9' - {283, 3, 9, 4, 1, -8}, // 0x3A ':' - {287, 3, 12, 4, 1, -8}, // 0x3B ';' - {292, 9, 9, 11, 1, -8}, // 0x3C '<' - {303, 9, 6, 11, 1, -6}, // 0x3D '=' - {310, 9, 9, 11, 1, -8}, // 0x3E '>' - {321, 9, 13, 11, 1, -12}, // 0x3F '?' - {336, 16, 15, 18, 0, -12}, // 0x40 '@' - {366, 12, 13, 13, 0, -12}, // 0x41 'A' - {386, 11, 13, 13, 1, -12}, // 0x42 'B' - {404, 12, 13, 13, 1, -12}, // 0x43 'C' - {424, 12, 13, 13, 1, -12}, // 0x44 'D' - {444, 9, 13, 12, 1, -12}, // 0x45 'E' - {459, 9, 13, 11, 1, -12}, // 0x46 'F' - {474, 11, 13, 14, 1, -12}, // 0x47 'G' - {492, 11, 13, 13, 1, -12}, // 0x48 'H' - {510, 3, 13, 6, 1, -12}, // 0x49 'I' - {515, 8, 13, 10, 1, -12}, // 0x4A 'J' - {528, 12, 13, 13, 1, -12}, // 0x4B 'K' - {548, 8, 13, 11, 1, -12}, // 0x4C 'L' - {561, 14, 13, 16, 1, -12}, // 0x4D 'M' - {584, 11, 13, 14, 1, -12}, // 0x4E 'N' - {602, 13, 13, 14, 1, -12}, // 0x4F 'O' - {624, 11, 13, 12, 1, -12}, // 0x50 'P' - {642, 13, 14, 14, 1, -12}, // 0x51 'Q' - {665, 12, 13, 13, 1, -12}, // 0x52 'R' - {685, 11, 13, 12, 1, -12}, // 0x53 'S' - {703, 9, 13, 12, 2, -12}, // 0x54 'T' - {718, 11, 13, 13, 1, -12}, // 0x55 'U' - {736, 12, 13, 12, 0, -12}, // 0x56 'V' - {756, 17, 13, 17, 0, -12}, // 0x57 'W' - {784, 12, 13, 12, 0, -12}, // 0x58 'X' - {804, 11, 13, 12, 1, -12}, // 0x59 'Y' - {822, 9, 13, 11, 1, -12}, // 0x5A 'Z' - {837, 4, 17, 6, 1, -12}, // 0x5B '[' - {846, 5, 13, 5, 0, -12}, // 0x5C '\' - {855, 4, 17, 6, 0, -12}, // 0x5D ']' - {864, 8, 8, 11, 1, -12}, // 0x5E '^' - {872, 10, 1, 10, 0, 4}, // 0x5F '_' - {874, 3, 2, 5, 0, -12}, // 0x60 '`' - {875, 10, 10, 10, 1, -9}, // 0x61 'a' - {888, 10, 13, 11, 1, -12}, // 0x62 'b' - {905, 9, 10, 10, 1, -9}, // 0x63 'c' - {917, 9, 13, 11, 1, -12}, // 0x64 'd' - {932, 9, 10, 10, 1, -9}, // 0x65 'e' - {944, 5, 13, 6, 1, -12}, // 0x66 'f' - {953, 9, 14, 11, 1, -9}, // 0x67 'g' - {969, 9, 13, 11, 1, -12}, // 0x68 'h' - {984, 3, 13, 5, 1, -12}, // 0x69 'i' - {989, 4, 17, 5, 0, -12}, // 0x6A 'j' - {998, 9, 13, 10, 1, -12}, // 0x6B 'k' - {1013, 3, 13, 5, 1, -12}, // 0x6C 'l' - {1018, 14, 10, 16, 1, -9}, // 0x6D 'm' - {1036, 9, 10, 11, 1, -9}, // 0x6E 'n' - {1048, 10, 10, 11, 1, -9}, // 0x6F 'o' - {1061, 10, 14, 11, 1, -9}, // 0x70 'p' - {1079, 9, 14, 11, 1, -9}, // 0x71 'q' - {1095, 6, 10, 7, 1, -9}, // 0x72 'r' - {1103, 9, 10, 10, 1, -9}, // 0x73 's' - {1115, 5, 12, 6, 1, -11}, // 0x74 't' - {1123, 9, 10, 11, 1, -9}, // 0x75 'u' - {1135, 10, 10, 10, 0, -9}, // 0x76 'v' - {1148, 14, 10, 14, 0, -9}, // 0x77 'w' - {1166, 10, 10, 10, 0, -9}, // 0x78 'x' - {1179, 10, 14, 10, 0, -9}, // 0x79 'y' - {1197, 8, 10, 9, 1, -9}, // 0x7A 'z' - {1207, 4, 17, 7, 1, -12}, // 0x7B '{' - {1216, 1, 17, 5, 2, -12}, // 0x7C '|' - {1219, 4, 17, 7, 2, -12}, // 0x7D '}' - {1228, 8, 2, 9, 0, -4}}; // 0x7E '~' - -const GFXfont FreeSansBold9pt7b PROGMEM = {(uint8_t *)FreeSansBold9pt7bBitmaps, - (GFXglyph *)FreeSansBold9pt7bGlyphs, - 0x20, 0x7E, 22}; - -// Approx. 1902 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h deleted file mode 100644 index ff76ce3..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique12pt7b.h +++ /dev/null @@ -1,319 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique12pt7bBitmaps[] PROGMEM = { - 0x1C, 0x3C, 0x78, 0xE1, 0xC3, 0x8F, 0x1C, 0x38, 0x70, 0xC1, 0x83, 0x00, - 0x1C, 0x78, 0xF0, 0x71, 0xFC, 0xFE, 0x3B, 0x8E, 0xC3, 0x30, 0xC0, 0x01, - 0x8C, 0x07, 0x38, 0x0C, 0x61, 0xFF, 0xF3, 0xFF, 0xE7, 0xFF, 0x83, 0x9C, - 0x0E, 0x70, 0x1C, 0xE1, 0xFF, 0xF3, 0xFF, 0xC7, 0xFF, 0x83, 0x18, 0x0E, - 0x70, 0x18, 0xC0, 0x73, 0x80, 0x00, 0x40, 0x07, 0xF0, 0x3F, 0xF0, 0xFF, - 0xF3, 0xC9, 0xE7, 0xB3, 0xCF, 0x60, 0x1F, 0xC0, 0x3F, 0xC0, 0x3F, 0xE0, - 0x1F, 0xE0, 0x1B, 0xE0, 0x33, 0xDE, 0x47, 0xBC, 0x8F, 0x7F, 0x7C, 0x7F, - 0xF0, 0x7F, 0x80, 0x18, 0x00, 0x20, 0x00, 0xC0, 0x00, 0x00, 0x01, 0x87, - 0x80, 0xC3, 0xF0, 0x61, 0xFE, 0x10, 0xE1, 0x8C, 0x30, 0x66, 0x0C, 0x3B, - 0x03, 0xFC, 0x80, 0x7E, 0x60, 0x0F, 0x30, 0x00, 0x18, 0x70, 0x0C, 0x7E, - 0x03, 0x1F, 0xC1, 0x8E, 0x30, 0xC3, 0x1C, 0x60, 0xFE, 0x18, 0x1F, 0x8C, - 0x07, 0x80, 0x01, 0xE0, 0x07, 0xF0, 0x1F, 0xE0, 0x79, 0xC0, 0xF3, 0x81, - 0xEE, 0x01, 0xF8, 0x01, 0xE0, 0x1F, 0xC6, 0x7B, 0xDD, 0xE3, 0xF7, 0x87, - 0xEF, 0x07, 0x9F, 0x1F, 0x3F, 0xFF, 0x3F, 0xDE, 0x3F, 0x1C, 0x7F, 0xEE, - 0xCC, 0x03, 0x83, 0x81, 0x81, 0xC1, 0xC0, 0xE0, 0xE0, 0x70, 0x70, 0x38, - 0x3C, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x18, 0x0E, 0x07, - 0x01, 0x80, 0x06, 0x03, 0x81, 0xC0, 0x60, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0xE0, 0xE0, 0x70, 0x38, 0x38, 0x1C, 0x1C, 0x0E, 0x0E, 0x06, - 0x07, 0x07, 0x00, 0x0C, 0x0C, 0x4F, 0xFF, 0x1C, 0x3C, 0x6C, 0x44, 0x03, - 0x80, 0x38, 0x07, 0x00, 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0xF0, 0xE0, 0x0E, - 0x00, 0xE0, 0x0C, 0x00, 0x7B, 0xDC, 0x23, 0x33, 0x00, 0x7F, 0xFF, 0xF0, - 0x7F, 0xE0, 0x00, 0xC0, 0x30, 0x18, 0x04, 0x03, 0x00, 0x80, 0x60, 0x10, - 0x0C, 0x02, 0x01, 0x80, 0x40, 0x30, 0x08, 0x06, 0x01, 0x00, 0xC0, 0x00, - 0x03, 0xC0, 0x7F, 0x87, 0xFC, 0x78, 0xF3, 0xC7, 0xBC, 0x3D, 0xE1, 0xEF, - 0x0F, 0xF0, 0x7F, 0x87, 0xBC, 0x3D, 0xE1, 0xEF, 0x1E, 0x78, 0xF3, 0xFF, - 0x0F, 0xF0, 0x3E, 0x00, 0x03, 0x83, 0x83, 0xCF, 0xEF, 0xF0, 0x78, 0x38, - 0x1C, 0x0E, 0x0F, 0x07, 0x03, 0x81, 0xC1, 0xE0, 0xF0, 0x70, 0x38, 0x00, - 0x03, 0xF0, 0x0F, 0xF8, 0x7F, 0xF8, 0xF1, 0xF3, 0xC1, 0xE7, 0x83, 0xC0, - 0x07, 0x80, 0x1E, 0x00, 0x78, 0x03, 0xE0, 0x0F, 0x00, 0x7C, 0x01, 0xE0, - 0x07, 0x00, 0x1F, 0xFC, 0x3F, 0xF8, 0xFF, 0xF0, 0x07, 0xE0, 0xFF, 0x8F, - 0xFE, 0xF8, 0xF7, 0x87, 0x80, 0x78, 0x0F, 0x80, 0xFC, 0x07, 0xE0, 0x0F, - 0x80, 0x3C, 0x01, 0xEF, 0x0F, 0x78, 0xF3, 0xFF, 0x8F, 0xF8, 0x3F, 0x00, - 0x00, 0x78, 0x07, 0xC0, 0x7E, 0x03, 0xF0, 0x37, 0x03, 0x38, 0x31, 0xC3, - 0x9E, 0x38, 0xF1, 0x87, 0x1F, 0xFE, 0xFF, 0xF7, 0xFF, 0x80, 0xF0, 0x07, - 0x00, 0x38, 0x03, 0xC0, 0x07, 0xFC, 0x1F, 0xF0, 0xFF, 0xC3, 0x00, 0x1C, - 0x00, 0x7F, 0x81, 0xFF, 0x0F, 0xFE, 0x38, 0xF8, 0x01, 0xE0, 0x07, 0x80, - 0x1E, 0xF0, 0xF3, 0xC7, 0xCF, 0xFE, 0x1F, 0xF0, 0x3F, 0x00, 0x03, 0xE0, - 0x7F, 0x87, 0xFE, 0x78, 0xF3, 0xC0, 0x3D, 0xE1, 0xFF, 0x8F, 0xFE, 0xF8, - 0xF7, 0xC7, 0xBC, 0x3D, 0xE1, 0xEF, 0x1E, 0x7C, 0xF3, 0xFF, 0x0F, 0xF0, - 0x1F, 0x00, 0x7F, 0xFB, 0xFF, 0xDF, 0xFE, 0x00, 0xE0, 0x0E, 0x00, 0xE0, - 0x0E, 0x00, 0xE0, 0x0F, 0x00, 0x70, 0x07, 0x00, 0x78, 0x03, 0x80, 0x3C, - 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x00, 0x03, 0xF0, 0x1F, 0xE0, 0xFF, 0xC7, - 0x8F, 0x1C, 0x3C, 0x71, 0xE0, 0xFF, 0x03, 0xF8, 0x3F, 0xF1, 0xF1, 0xE7, - 0x87, 0xBC, 0x1E, 0xF0, 0x7B, 0xE3, 0xCF, 0xFF, 0x1F, 0xF8, 0x1F, 0x80, - 0x03, 0xE0, 0x3F, 0xE1, 0xFF, 0x8F, 0x9F, 0x3C, 0x3D, 0xE0, 0xF7, 0x83, - 0xDE, 0x1F, 0x78, 0xFD, 0xFF, 0xE3, 0xFF, 0x87, 0xDE, 0x00, 0xF3, 0xC7, - 0x8F, 0xFE, 0x1F, 0xF0, 0x3F, 0x00, 0x1C, 0xF3, 0x80, 0x00, 0x00, 0x00, - 0x01, 0xCF, 0x38, 0x0E, 0x3C, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF1, - 0xE3, 0x81, 0x06, 0x18, 0x60, 0x00, 0x00, 0x01, 0xC0, 0x7E, 0x1F, 0xE7, - 0xF8, 0x7E, 0x03, 0xE0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x00, 0x78, 0x00, - 0xC0, 0x3F, 0xFC, 0xFF, 0xF3, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, - 0xFF, 0x9F, 0xFC, 0x7F, 0xF0, 0x30, 0x01, 0xE0, 0x0F, 0xE0, 0x3F, 0xC0, - 0x7F, 0x80, 0x7C, 0x07, 0xE1, 0xFE, 0x7F, 0x87, 0xE0, 0x38, 0x00, 0x00, - 0x00, 0x0F, 0xC1, 0xFF, 0x8F, 0xFC, 0xF1, 0xFF, 0x07, 0xF0, 0x3C, 0x01, - 0xE0, 0x1E, 0x01, 0xE0, 0x3E, 0x03, 0xE0, 0x1C, 0x01, 0xC0, 0x0E, 0x00, - 0x00, 0x07, 0x80, 0x3C, 0x01, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x03, 0xFF, - 0x80, 0x3C, 0x0F, 0x01, 0xC0, 0x0E, 0x0E, 0x00, 0x1C, 0x70, 0xF7, 0x73, - 0x87, 0xF8, 0xCC, 0x31, 0xE3, 0x61, 0x87, 0x0D, 0x8C, 0x1C, 0x3C, 0x30, - 0x61, 0xB1, 0x81, 0x86, 0xC6, 0x0C, 0x3B, 0x18, 0x71, 0xCC, 0x63, 0xCE, - 0x31, 0xFB, 0xF0, 0xE3, 0xCF, 0x01, 0xC0, 0x00, 0x03, 0xC0, 0xC0, 0x07, - 0xFF, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x3F, 0x00, 0x1F, 0x80, - 0x1F, 0xC0, 0x0F, 0xE0, 0x0F, 0xF0, 0x07, 0x7C, 0x07, 0x1E, 0x03, 0x8F, - 0x03, 0x87, 0x83, 0xC3, 0xC1, 0xFF, 0xE1, 0xFF, 0xF0, 0xFF, 0xFC, 0xF0, - 0x1E, 0x70, 0x0F, 0x78, 0x07, 0xB8, 0x03, 0xC0, 0x0F, 0xFE, 0x0F, 0xFF, - 0x87, 0xFF, 0xE3, 0xC0, 0xF1, 0xC0, 0x78, 0xE0, 0x3C, 0xF0, 0x3C, 0x7F, - 0xFC, 0x3F, 0xFC, 0x1F, 0xFF, 0x0E, 0x07, 0xCF, 0x01, 0xE7, 0x80, 0xF3, - 0x80, 0x79, 0xC0, 0x79, 0xFF, 0xF8, 0xFF, 0xFC, 0x7F, 0xF8, 0x00, 0x01, - 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE1, 0xF3, 0xC0, 0x79, 0xE0, 0x3D, - 0xE0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, - 0x0F, 0x00, 0xE7, 0x80, 0xF3, 0xE0, 0xF0, 0xFF, 0xF8, 0x3F, 0xF0, 0x07, - 0xE0, 0x00, 0x1F, 0xFC, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0x81, 0xF1, 0xC0, - 0x79, 0xE0, 0x3C, 0xF0, 0x1E, 0x78, 0x0F, 0x38, 0x07, 0x9C, 0x03, 0xDE, - 0x03, 0xCF, 0x01, 0xE7, 0x81, 0xF3, 0x80, 0xF1, 0xC1, 0xF1, 0xFF, 0xF0, - 0xFF, 0xF0, 0x7F, 0xE0, 0x00, 0x0F, 0xFF, 0x1F, 0xFF, 0x1F, 0xFF, 0x1C, - 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0xFF, - 0xF8, 0xFF, 0xF8, 0xFF, 0xF8, 0x1F, 0xFF, 0x1F, 0xFE, 0x1F, 0xFE, 0x1C, - 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3F, 0xF8, 0x3F, 0xF8, 0x3F, - 0xF8, 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0xE0, 0x00, 0x01, 0xFC, 0x03, 0xFF, 0x03, 0xFF, 0xC3, - 0xE0, 0xF3, 0xC0, 0x39, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0xF0, 0x7F, - 0x78, 0x3F, 0xBC, 0x1F, 0xDE, 0x01, 0xCF, 0x00, 0xE7, 0xC0, 0xF1, 0xF0, - 0xF8, 0xFF, 0xFC, 0x3F, 0xEC, 0x07, 0xE6, 0x00, 0x1E, 0x03, 0x8F, 0x01, - 0xC7, 0x01, 0xE3, 0x80, 0xF3, 0xC0, 0x79, 0xE0, 0x38, 0xF0, 0x1C, 0x7F, - 0xFE, 0x3F, 0xFF, 0x3F, 0xFF, 0x9E, 0x03, 0x8F, 0x01, 0xC7, 0x01, 0xE3, - 0x80, 0xF3, 0xC0, 0x71, 0xE0, 0x38, 0xF0, 0x3C, 0x70, 0x1E, 0x00, 0x1E, - 0x3C, 0x78, 0xE1, 0xC7, 0x8F, 0x1E, 0x38, 0x71, 0xE3, 0xC7, 0x8E, 0x1C, - 0x78, 0xF1, 0xE0, 0x00, 0x1C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x38, - 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xC0, 0x07, 0x3C, 0x3C, - 0xF0, 0xF3, 0xC3, 0x8F, 0x1E, 0x3F, 0xF8, 0x7F, 0xC0, 0xFC, 0x00, 0x1E, - 0x07, 0xC7, 0x83, 0xE1, 0xE1, 0xE0, 0x70, 0xF0, 0x1C, 0x78, 0x0F, 0x3C, - 0x03, 0xDE, 0x00, 0xFF, 0x00, 0x3F, 0xC0, 0x0F, 0xF0, 0x07, 0xDE, 0x01, - 0xE7, 0xC0, 0x78, 0xF0, 0x1C, 0x3E, 0x0F, 0x07, 0x83, 0xC0, 0xF0, 0xF0, - 0x3C, 0x38, 0x07, 0x80, 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xC0, - 0x0E, 0x00, 0xF0, 0x07, 0x80, 0x38, 0x01, 0xC0, 0x1E, 0x00, 0xF0, 0x07, - 0x80, 0x38, 0x01, 0xC0, 0x1F, 0xFE, 0xFF, 0xF7, 0xFF, 0x80, 0x1F, 0x03, - 0xF1, 0xF0, 0x3F, 0x1F, 0x07, 0xF1, 0xF0, 0x7F, 0x3F, 0x0F, 0xE3, 0xF0, - 0xEE, 0x3B, 0x1E, 0xE3, 0xB1, 0xDE, 0x3B, 0x1D, 0xE7, 0xB3, 0x9C, 0x7B, - 0x39, 0xC7, 0x37, 0x9C, 0x73, 0x73, 0xCF, 0x3F, 0x3C, 0xF3, 0xE3, 0x8F, - 0x3E, 0x38, 0xE3, 0xC3, 0x8E, 0x3C, 0x78, 0x1E, 0x03, 0x87, 0xC0, 0xE1, - 0xF0, 0x38, 0x7C, 0x1E, 0x1F, 0x87, 0x8F, 0xE1, 0xC3, 0xB8, 0x70, 0xEF, - 0x1C, 0x39, 0xCF, 0x1E, 0x73, 0xC7, 0x8E, 0xE1, 0xC3, 0xB8, 0x70, 0xEE, - 0x1C, 0x1F, 0x8F, 0x07, 0xE3, 0xC1, 0xF0, 0xE0, 0x3C, 0x38, 0x0F, 0x00, - 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE3, 0xE3, 0xC0, 0xF9, 0xE0, - 0x3D, 0xE0, 0x1E, 0xF0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x03, 0xDE, - 0x01, 0xEF, 0x00, 0xF7, 0xC0, 0xF1, 0xF0, 0xF0, 0xFF, 0xF0, 0x3F, 0xF0, - 0x07, 0xE0, 0x00, 0x1F, 0xFC, 0x1F, 0xFE, 0x1F, 0xFF, 0x1C, 0x1F, 0x1C, - 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0x1E, 0x3F, 0xFC, 0x3F, 0xFC, 0x7F, - 0xF0, 0x78, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE3, 0xE3, - 0xC0, 0xF9, 0xC0, 0x3D, 0xE0, 0x1E, 0xF0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, - 0xFC, 0x03, 0xDE, 0x09, 0xEF, 0x0E, 0xE7, 0xC7, 0xF1, 0xF1, 0xF0, 0xFF, - 0xF8, 0x3F, 0xFE, 0x07, 0xE6, 0x00, 0x02, 0x00, 0x0F, 0xFE, 0x0F, 0xFF, - 0x87, 0xFF, 0xE3, 0x81, 0xF1, 0xC0, 0x78, 0xE0, 0x3C, 0xF0, 0x1C, 0x78, - 0x1E, 0x3F, 0xFC, 0x1F, 0xFC, 0x1F, 0xFF, 0x8F, 0x03, 0xC7, 0x81, 0xE3, - 0x80, 0xF1, 0xC0, 0xF1, 0xE0, 0x78, 0xF0, 0x3C, 0x78, 0x1F, 0x00, 0x03, - 0xF8, 0x0F, 0xFE, 0x1F, 0xFF, 0x1E, 0x1F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, - 0x00, 0x3F, 0x00, 0x1F, 0xF0, 0x0F, 0xFC, 0x01, 0xFE, 0x00, 0x3E, 0xF0, - 0x1E, 0xF0, 0x1E, 0xF8, 0x3C, 0x7F, 0xF8, 0x7F, 0xF0, 0x1F, 0xC0, 0x7F, - 0xFE, 0xFF, 0xFD, 0xFF, 0xF8, 0x1C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, - 0x03, 0x80, 0x07, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xE0, 0x01, - 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x38, 0x00, 0x1E, 0x07, 0x1C, - 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x3C, 0x0E, 0x38, 0x0E, 0x78, 0x1E, 0x78, - 0x1E, 0x78, 0x1E, 0x78, 0x1C, 0x70, 0x1C, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, - 0x38, 0xF8, 0x78, 0xFF, 0xF0, 0x7F, 0xE0, 0x1F, 0x80, 0xF0, 0x1F, 0xE0, - 0x39, 0xC0, 0xF3, 0x81, 0xC7, 0x07, 0x8E, 0x0E, 0x1C, 0x3C, 0x3C, 0x70, - 0x79, 0xE0, 0xF3, 0x80, 0xEF, 0x01, 0xDC, 0x03, 0xB8, 0x07, 0xE0, 0x0F, - 0x80, 0x1F, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x70, 0x7F, 0x87, 0x83, - 0xFC, 0x3C, 0x3D, 0xE1, 0xE1, 0xEF, 0x1F, 0x0E, 0x78, 0xD8, 0xF3, 0xC6, - 0xC7, 0x0E, 0x76, 0x78, 0x73, 0x33, 0x83, 0xB9, 0x9C, 0x1D, 0xCD, 0xC0, - 0xEC, 0x6E, 0x07, 0xE3, 0xE0, 0x3E, 0x1F, 0x01, 0xF0, 0xF0, 0x0F, 0x87, - 0x80, 0x78, 0x38, 0x03, 0xC1, 0xC0, 0x00, 0x0F, 0x03, 0xC3, 0xC1, 0xE0, - 0xF8, 0xF0, 0x1E, 0x78, 0x07, 0x9E, 0x00, 0xFF, 0x00, 0x3F, 0x80, 0x0F, - 0xC0, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3F, 0x00, 0x1F, 0xC0, 0x0F, 0xF0, - 0x07, 0x9E, 0x03, 0xC7, 0x80, 0xF0, 0xF0, 0x78, 0x3C, 0x3C, 0x0F, 0x80, - 0x78, 0x1E, 0xF0, 0x79, 0xE0, 0xF3, 0xC3, 0xC3, 0xCF, 0x07, 0x9E, 0x0F, - 0x78, 0x0F, 0xE0, 0x1F, 0x80, 0x3F, 0x00, 0x3C, 0x00, 0x70, 0x00, 0xE0, - 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x1F, 0xFF, - 0x0F, 0xFF, 0x87, 0xFF, 0xC0, 0x03, 0xC0, 0x03, 0xE0, 0x03, 0xE0, 0x03, - 0xE0, 0x03, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, - 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xFF, 0xF0, 0xFF, 0xF8, 0x7F, 0xFC, - 0x00, 0x0F, 0xC3, 0xF0, 0xFC, 0x38, 0x1E, 0x07, 0x01, 0xC0, 0x70, 0x1C, - 0x0F, 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x0F, - 0x03, 0x80, 0xFC, 0x3F, 0x0F, 0xC0, 0x08, 0x88, 0xC4, 0x44, 0x66, 0x66, - 0x66, 0x62, 0x22, 0x33, 0x33, 0x30, 0x0F, 0xC3, 0xF0, 0xFC, 0x07, 0x03, - 0xC0, 0xE0, 0x38, 0x0E, 0x03, 0x81, 0xC0, 0x70, 0x1C, 0x07, 0x03, 0xC0, - 0xE0, 0x38, 0x0E, 0x03, 0x81, 0xE0, 0x70, 0xFC, 0x3F, 0x0F, 0xC0, 0x03, - 0x80, 0xF0, 0x1E, 0x07, 0xE1, 0xDC, 0x3B, 0x8E, 0x71, 0x86, 0x70, 0xFC, - 0x1F, 0x83, 0x80, 0x7F, 0xFE, 0xFF, 0xFC, 0xE6, 0x30, 0x07, 0xE0, 0xFF, - 0x8F, 0xFE, 0x70, 0xE0, 0x07, 0x03, 0xF8, 0xFF, 0xCF, 0x9E, 0xF0, 0xF7, - 0x8F, 0x3F, 0xF8, 0xFF, 0xC3, 0xDF, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0x9F, 0x07, 0xFF, 0x0F, 0xFF, 0x3E, 0x3E, - 0x78, 0x3C, 0xF0, 0x79, 0xC0, 0xF3, 0x81, 0xEF, 0x07, 0x9F, 0x1F, 0x3F, - 0xFC, 0x7F, 0xF0, 0xEF, 0x80, 0x07, 0xC0, 0xFF, 0x8F, 0xFE, 0xF8, 0xF7, - 0x87, 0xB8, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0xF7, 0x8F, 0x1F, 0xF8, 0xFF, - 0x81, 0xF0, 0x00, 0x00, 0x1E, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x03, - 0xC0, 0xF7, 0x87, 0xFE, 0x1F, 0xFC, 0x7C, 0x78, 0xF0, 0x73, 0xC0, 0xE7, - 0x81, 0x8F, 0x07, 0x1E, 0x0E, 0x3E, 0x3C, 0x7F, 0xF8, 0x7F, 0xE0, 0x7D, - 0xC0, 0x07, 0xC0, 0xFF, 0x8F, 0xFE, 0xF0, 0xF7, 0x87, 0xFF, 0xFF, 0xFF, - 0xFE, 0x00, 0xF0, 0x07, 0xC7, 0x9F, 0xF8, 0xFF, 0x81, 0xF0, 0x00, 0x07, - 0x87, 0xC7, 0xE3, 0xC1, 0xC3, 0xF9, 0xFC, 0x78, 0x3C, 0x1C, 0x0E, 0x07, - 0x07, 0x83, 0x81, 0xC0, 0xE0, 0xF0, 0x78, 0x00, 0x03, 0xDE, 0x1F, 0xF8, - 0x7F, 0xF1, 0xF1, 0xE3, 0xC1, 0xCF, 0x03, 0x9E, 0x06, 0x3C, 0x0C, 0x78, - 0x38, 0xF8, 0xF1, 0xFF, 0xC1, 0xFF, 0x81, 0xF7, 0x00, 0x0E, 0x3C, 0x3C, - 0x78, 0xF0, 0x7F, 0xC0, 0x7E, 0x00, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x07, - 0x00, 0x3C, 0x00, 0xF7, 0xC3, 0xBF, 0x8F, 0xFF, 0x3C, 0x3D, 0xE0, 0xE7, - 0x83, 0x9C, 0x0E, 0x70, 0x79, 0xC1, 0xEF, 0x07, 0x3C, 0x1C, 0xE0, 0x73, - 0x83, 0xC0, 0x0E, 0x3C, 0x70, 0x00, 0x03, 0x8F, 0x1E, 0x38, 0x71, 0xE3, - 0xC7, 0x0E, 0x1C, 0x78, 0xF1, 0xC0, 0x03, 0xC0, 0xE0, 0x38, 0x00, 0x00, - 0x01, 0xE0, 0x70, 0x1C, 0x07, 0x03, 0xC0, 0xF0, 0x38, 0x0E, 0x03, 0x81, - 0xE0, 0x70, 0x1C, 0x07, 0x03, 0xC0, 0xF0, 0xF8, 0x3E, 0x0F, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0x87, 0x87, 0x1E, - 0x0E, 0x78, 0x3D, 0xE0, 0x7F, 0x80, 0xFE, 0x01, 0xFE, 0x03, 0xFC, 0x0F, - 0x38, 0x1E, 0x78, 0x38, 0xF0, 0x70, 0xF0, 0xE1, 0xE0, 0x0E, 0x3C, 0x78, - 0xE1, 0xC3, 0x8F, 0x1E, 0x38, 0x71, 0xE3, 0xC7, 0x0E, 0x1C, 0x78, 0xF1, - 0xC0, 0x1C, 0xF1, 0xE0, 0xEF, 0xDF, 0x87, 0xFF, 0xFE, 0x7C, 0x78, 0xF3, - 0xC3, 0x87, 0x9C, 0x1C, 0x38, 0xE1, 0xE1, 0xC7, 0x0E, 0x0E, 0x78, 0x70, - 0xF3, 0xC3, 0x87, 0x9C, 0x3C, 0x38, 0xE1, 0xE1, 0xC7, 0x0E, 0x0E, 0x00, - 0x3D, 0xF0, 0xEF, 0xE3, 0xFF, 0xCF, 0x0F, 0x78, 0x39, 0xC0, 0xE7, 0x03, - 0x9C, 0x1E, 0xF0, 0x7B, 0xC1, 0xCE, 0x07, 0x38, 0x1C, 0xE0, 0xF0, 0x07, - 0xE0, 0x7F, 0xE3, 0xFF, 0x9F, 0x1F, 0x78, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, - 0x1F, 0xF0, 0x7B, 0xE3, 0xE7, 0xFF, 0x1F, 0xF8, 0x1F, 0x80, 0x0E, 0x7C, - 0x0F, 0xFE, 0x0F, 0xFF, 0x1F, 0x1F, 0x1E, 0x0F, 0x1E, 0x0F, 0x1C, 0x0F, - 0x1C, 0x0F, 0x3C, 0x1E, 0x3E, 0x3E, 0x3F, 0xFC, 0x3F, 0xF8, 0x7B, 0xE0, - 0x78, 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0xF0, 0x00, 0x07, 0xBC, - 0x7F, 0xF3, 0xFF, 0x9F, 0x1E, 0x78, 0x3B, 0xC0, 0xEF, 0x03, 0x3C, 0x0C, - 0xF0, 0x73, 0xE3, 0xCF, 0xFF, 0x1F, 0xF8, 0x3C, 0xE0, 0x03, 0x80, 0x1E, - 0x00, 0x78, 0x01, 0xC0, 0x07, 0x00, 0x3D, 0xCE, 0xE3, 0xF8, 0xF0, 0x78, - 0x1E, 0x07, 0x01, 0xC0, 0xF0, 0x3C, 0x0E, 0x03, 0x80, 0xE0, 0x00, 0x1F, - 0xC3, 0xFE, 0x7F, 0xFF, 0x0F, 0xF0, 0x0F, 0xE0, 0x7F, 0xC1, 0xFE, 0x03, - 0xEE, 0x1E, 0xFF, 0xC7, 0xFC, 0x3F, 0x00, 0x1E, 0x1E, 0x1C, 0x7F, 0xFF, - 0x3C, 0x38, 0x38, 0x38, 0x78, 0x78, 0x70, 0x7C, 0xF8, 0x78, 0x38, 0x3C, - 0xE0, 0xE3, 0x83, 0x9E, 0x0E, 0x70, 0x79, 0xC1, 0xE7, 0x07, 0x3C, 0x1C, - 0xF0, 0xF3, 0xE7, 0xCF, 0xFF, 0x1F, 0xF8, 0x3C, 0xE0, 0xF0, 0x77, 0x87, - 0xBC, 0x38, 0xE3, 0xC7, 0x1C, 0x39, 0xE1, 0xCE, 0x0E, 0xE0, 0x77, 0x03, - 0xF0, 0x0F, 0x80, 0x78, 0x03, 0xC0, 0x00, 0xF1, 0xC3, 0xF8, 0xE3, 0xFC, - 0xF1, 0xDE, 0x79, 0xEF, 0x3C, 0xE7, 0xB6, 0x73, 0xDB, 0x70, 0xED, 0xB8, - 0x7C, 0xF8, 0x3E, 0x7C, 0x1F, 0x3C, 0x0F, 0x1E, 0x07, 0x8E, 0x00, 0x0F, - 0x1E, 0x0F, 0x3C, 0x0F, 0x38, 0x07, 0x70, 0x07, 0xF0, 0x03, 0xE0, 0x03, - 0xC0, 0x07, 0xC0, 0x0F, 0xE0, 0x1E, 0xE0, 0x3C, 0xF0, 0x3C, 0xF0, 0x78, - 0x78, 0x3C, 0x1C, 0x78, 0x78, 0xF0, 0xE1, 0xE3, 0xC1, 0xC7, 0x03, 0x9E, - 0x07, 0x38, 0x0E, 0xE0, 0x1D, 0xC0, 0x3F, 0x00, 0x7E, 0x00, 0x78, 0x00, - 0xF0, 0x01, 0xC0, 0x07, 0x00, 0x7E, 0x00, 0xF8, 0x01, 0xE0, 0x00, 0x1F, - 0xF9, 0xFF, 0xCF, 0xFC, 0x01, 0xE0, 0x3E, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3F, 0xF9, 0xFF, 0xCF, 0xFC, 0x00, 0x07, 0x87, 0xC3, - 0xE3, 0xC1, 0xC0, 0xE0, 0x70, 0x38, 0x3C, 0x1C, 0x0E, 0x1E, 0x0F, 0x03, - 0x81, 0xC0, 0xE0, 0x70, 0x78, 0x38, 0x1C, 0x0F, 0x87, 0xC1, 0xC0, 0x0C, - 0x30, 0x86, 0x18, 0x61, 0x8C, 0x30, 0xC3, 0x0C, 0x61, 0x86, 0x18, 0x63, - 0x0C, 0x30, 0xC2, 0x00, 0x00, 0x07, 0x07, 0xC3, 0xE0, 0x70, 0x38, 0x3C, - 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xE0, 0xF0, 0xE0, 0x70, 0x78, 0x38, 0x1C, - 0x0E, 0x07, 0x07, 0x8F, 0x87, 0xC3, 0xC0, 0x3C, 0x07, 0xE0, 0xC7, 0x30, - 0x7E, 0x01, 0xC0}; - -const GFXglyph FreeSansBoldOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 7, 0, 1}, // 0x20 ' ' - {0, 7, 17, 8, 3, -16}, // 0x21 '!' - {15, 10, 6, 11, 4, -17}, // 0x22 '"' - {23, 15, 16, 13, 1, -15}, // 0x23 '#' - {53, 15, 21, 13, 1, -17}, // 0x24 '$' - {93, 18, 18, 21, 3, -17}, // 0x25 '%' - {134, 15, 17, 17, 2, -16}, // 0x26 '&' - {166, 4, 6, 6, 4, -17}, // 0x27 ''' - {169, 9, 22, 8, 2, -17}, // 0x28 '(' - {194, 9, 22, 8, -1, -16}, // 0x29 ')' - {219, 8, 8, 9, 3, -17}, // 0x2A '*' - {227, 12, 11, 14, 2, -10}, // 0x2B '+' - {244, 5, 7, 7, 1, -2}, // 0x2C ',' - {249, 7, 3, 8, 2, -7}, // 0x2D '-' - {252, 4, 3, 7, 2, -2}, // 0x2E '.' - {254, 10, 17, 7, 0, -16}, // 0x2F '/' - {276, 13, 17, 13, 2, -16}, // 0x30 '0' - {304, 9, 17, 13, 4, -16}, // 0x31 '1' - {324, 15, 17, 13, 1, -16}, // 0x32 '2' - {356, 13, 17, 13, 2, -16}, // 0x33 '3' - {384, 13, 17, 13, 1, -16}, // 0x34 '4' - {412, 14, 17, 13, 1, -16}, // 0x35 '5' - {442, 13, 17, 13, 2, -16}, // 0x36 '6' - {470, 13, 17, 13, 3, -16}, // 0x37 '7' - {498, 14, 17, 13, 1, -16}, // 0x38 '8' - {528, 14, 17, 13, 2, -16}, // 0x39 '9' - {558, 6, 12, 8, 3, -11}, // 0x3A ':' - {567, 7, 16, 8, 2, -11}, // 0x3B ';' - {581, 13, 12, 14, 2, -11}, // 0x3C '<' - {601, 14, 9, 14, 1, -9}, // 0x3D '=' - {617, 13, 12, 14, 1, -10}, // 0x3E '>' - {637, 13, 18, 15, 4, -17}, // 0x3F '?' - {667, 22, 21, 23, 2, -17}, // 0x40 '@' - {725, 17, 18, 17, 0, -17}, // 0x41 'A' - {764, 17, 18, 17, 2, -17}, // 0x42 'B' - {803, 17, 18, 17, 3, -17}, // 0x43 'C' - {842, 17, 18, 17, 2, -17}, // 0x44 'D' - {881, 16, 18, 16, 2, -17}, // 0x45 'E' - {917, 16, 18, 15, 2, -17}, // 0x46 'F' - {953, 17, 18, 19, 3, -17}, // 0x47 'G' - {992, 17, 18, 17, 2, -17}, // 0x48 'H' - {1031, 7, 18, 7, 2, -17}, // 0x49 'I' - {1047, 14, 18, 13, 1, -17}, // 0x4A 'J' - {1079, 18, 18, 17, 2, -17}, // 0x4B 'K' - {1120, 13, 18, 15, 2, -17}, // 0x4C 'L' - {1150, 20, 18, 20, 2, -17}, // 0x4D 'M' - {1195, 18, 18, 17, 2, -17}, // 0x4E 'N' - {1236, 17, 18, 19, 3, -17}, // 0x4F 'O' - {1275, 16, 18, 16, 2, -17}, // 0x50 'P' - {1311, 17, 19, 19, 3, -17}, // 0x51 'Q' - {1352, 17, 18, 17, 2, -17}, // 0x52 'R' - {1391, 16, 18, 16, 2, -17}, // 0x53 'S' - {1427, 15, 18, 15, 3, -17}, // 0x54 'T' - {1461, 16, 18, 17, 3, -17}, // 0x55 'U' - {1497, 15, 18, 16, 4, -17}, // 0x56 'V' - {1531, 21, 18, 23, 4, -17}, // 0x57 'W' - {1579, 18, 18, 16, 1, -17}, // 0x58 'X' - {1620, 15, 18, 16, 4, -17}, // 0x59 'Y' - {1654, 17, 18, 15, 1, -17}, // 0x5A 'Z' - {1693, 10, 23, 8, 1, -17}, // 0x5B '[' - {1722, 4, 23, 7, 3, -22}, // 0x5C '\' - {1734, 10, 23, 8, 0, -17}, // 0x5D ']' - {1763, 11, 11, 14, 3, -16}, // 0x5E '^' - {1779, 15, 2, 13, -2, 4}, // 0x5F '_' - {1783, 4, 3, 8, 4, -17}, // 0x60 '`' - {1785, 13, 13, 13, 1, -12}, // 0x61 'a' - {1807, 15, 18, 15, 1, -17}, // 0x62 'b' - {1841, 13, 13, 13, 2, -12}, // 0x63 'c' - {1863, 15, 18, 15, 2, -17}, // 0x64 'd' - {1897, 13, 13, 13, 2, -12}, // 0x65 'e' - {1919, 9, 18, 8, 2, -17}, // 0x66 'f' - {1940, 15, 18, 15, 1, -12}, // 0x67 'g' - {1974, 14, 18, 15, 2, -17}, // 0x68 'h' - {2006, 7, 18, 7, 2, -17}, // 0x69 'i' - {2022, 10, 23, 7, -1, -17}, // 0x6A 'j' - {2051, 15, 18, 13, 1, -17}, // 0x6B 'k' - {2085, 7, 18, 7, 2, -17}, // 0x6C 'l' - {2101, 21, 13, 21, 1, -12}, // 0x6D 'm' - {2136, 14, 13, 15, 2, -12}, // 0x6E 'n' - {2159, 14, 13, 15, 2, -12}, // 0x6F 'o' - {2182, 16, 18, 15, 0, -12}, // 0x70 'p' - {2218, 14, 18, 15, 2, -12}, // 0x71 'q' - {2250, 10, 13, 9, 2, -12}, // 0x72 'r' - {2267, 12, 13, 13, 3, -12}, // 0x73 's' - {2287, 8, 15, 8, 2, -14}, // 0x74 't' - {2302, 14, 13, 15, 2, -12}, // 0x75 'u' - {2325, 13, 13, 13, 3, -12}, // 0x76 'v' - {2347, 17, 13, 19, 3, -12}, // 0x77 'w' - {2375, 16, 13, 13, 0, -12}, // 0x78 'x' - {2401, 15, 18, 13, 1, -12}, // 0x79 'y' - {2435, 13, 13, 12, 1, -12}, // 0x7A 'z' - {2457, 9, 23, 9, 3, -17}, // 0x7B '{' - {2483, 6, 23, 7, 1, -17}, // 0x7C '|' - {2501, 9, 23, 9, 0, -17}, // 0x7D '}' - {2527, 12, 5, 14, 2, -7}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique12pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique12pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 3207 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h deleted file mode 100644 index 441c6b5..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique18pt7b.h +++ /dev/null @@ -1,547 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique18pt7bBitmaps[] PROGMEM = { - 0x06, 0x01, 0xC0, 0x7C, 0x1F, 0x0F, 0xC3, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, - 0xC0, 0xF0, 0x7C, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1C, 0x07, 0x01, 0xC0, - 0x60, 0x7C, 0x1F, 0x07, 0xC3, 0xF0, 0xF8, 0x00, 0x78, 0x7B, 0xC3, 0xFE, - 0x3F, 0xE1, 0xEF, 0x0F, 0x78, 0x7B, 0x83, 0x9C, 0x1C, 0xC0, 0xC0, 0x00, - 0x3C, 0x38, 0x00, 0xF1, 0xE0, 0x07, 0x87, 0x00, 0x1E, 0x3C, 0x00, 0xF0, - 0xE0, 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0x1F, 0xFF, 0xF8, - 0x0F, 0x0E, 0x00, 0x3C, 0x78, 0x00, 0xE1, 0xE0, 0x07, 0x8F, 0x00, 0x1C, - 0x3C, 0x07, 0xFF, 0xFE, 0x1F, 0xFF, 0xF8, 0x7F, 0xFF, 0xE3, 0xFF, 0xFF, - 0x01, 0xE3, 0xC0, 0x0F, 0x0E, 0x00, 0x3C, 0x78, 0x01, 0xE1, 0xC0, 0x07, - 0x8F, 0x00, 0x3C, 0x38, 0x00, 0x00, 0x0C, 0x00, 0x01, 0x80, 0x00, 0xFC, - 0x00, 0xFF, 0xC0, 0x3F, 0xFC, 0x0F, 0xFF, 0xC3, 0xE6, 0x78, 0x78, 0xCF, - 0x1E, 0x39, 0xE3, 0xC7, 0x3C, 0x78, 0xC0, 0x0F, 0x98, 0x01, 0xFF, 0x00, - 0x1F, 0xF8, 0x01, 0xFF, 0x80, 0x1F, 0xF8, 0x00, 0x7F, 0x80, 0x0F, 0xF0, - 0x03, 0xBE, 0x00, 0x67, 0xCF, 0x8C, 0xF9, 0xF1, 0x9F, 0x3E, 0x77, 0xC7, - 0xEF, 0xF8, 0x7F, 0xFE, 0x0F, 0xFF, 0x80, 0xFF, 0xE0, 0x03, 0xE0, 0x00, - 0x38, 0x00, 0x06, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x07, 0x01, 0xE0, - 0x03, 0x81, 0xFE, 0x00, 0xC0, 0xFF, 0x80, 0x70, 0x7F, 0xF0, 0x38, 0x1E, - 0x3C, 0x1C, 0x0F, 0x07, 0x06, 0x03, 0x81, 0xC3, 0x80, 0xE0, 0xF1, 0xC0, - 0x3C, 0x78, 0xE0, 0x0F, 0xFE, 0x30, 0x01, 0xFF, 0x1C, 0x00, 0x7F, 0x8E, - 0x00, 0x07, 0x83, 0x00, 0x00, 0x01, 0x83, 0xE0, 0x00, 0xE3, 0xFE, 0x00, - 0x71, 0xFF, 0x80, 0x18, 0xFF, 0xF0, 0x0C, 0x3C, 0x3C, 0x07, 0x1C, 0x07, - 0x03, 0x87, 0x01, 0xC0, 0xC1, 0xE1, 0xE0, 0x60, 0x7F, 0xF8, 0x38, 0x0F, - 0xFC, 0x1C, 0x03, 0xFE, 0x06, 0x00, 0x3E, 0x00, 0x00, 0x1F, 0x00, 0x03, - 0xFC, 0x00, 0x3F, 0xF0, 0x03, 0xFF, 0x80, 0x3F, 0x3C, 0x01, 0xF1, 0xE0, - 0x0F, 0x8F, 0x00, 0x7C, 0xF0, 0x03, 0xFF, 0x80, 0x0F, 0xF8, 0x00, 0x3F, - 0x00, 0x03, 0xF0, 0x00, 0x7F, 0xC7, 0x8F, 0xFE, 0x3C, 0xFC, 0xFB, 0xCF, - 0x83, 0xFE, 0xF8, 0x1F, 0xE7, 0xC0, 0x7E, 0x3E, 0x03, 0xE1, 0xF0, 0x1F, - 0x0F, 0xE3, 0xFC, 0x7F, 0xFF, 0xE1, 0xFF, 0xFF, 0x87, 0xFE, 0x7C, 0x0F, - 0xE1, 0xF0, 0x7B, 0xFF, 0xEF, 0x7B, 0x9C, 0xC0, 0x00, 0x78, 0x07, 0x80, - 0x78, 0x03, 0x80, 0x3C, 0x03, 0xC0, 0x1E, 0x01, 0xE0, 0x1E, 0x00, 0xF0, - 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0xF0, 0x07, - 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, - 0x07, 0x80, 0x1C, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x00, 0xE0, 0x07, 0x80, - 0x1C, 0x00, 0x01, 0xC0, 0x0F, 0x00, 0x38, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x01, 0xC0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, - 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0xF8, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x1E, - 0x00, 0xF0, 0x07, 0x80, 0x78, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x1E, 0x01, - 0xE0, 0x1E, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x00, 0x03, 0x00, 0x70, 0x07, - 0x04, 0x63, 0xFF, 0xF7, 0xFF, 0x1F, 0x83, 0xF0, 0x3B, 0x87, 0x38, 0x21, - 0x00, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x7C, 0x07, 0xFF, 0xFD, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xE0, - 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x3E, 0x7C, 0xF3, 0xE7, 0xC1, 0x87, 0x0C, 0x39, 0xE3, 0x00, 0x7F, - 0xDF, 0xFF, 0xFB, 0xFE, 0x7D, 0xF7, 0xBE, 0xF8, 0x00, 0x0E, 0x00, 0x18, - 0x00, 0x70, 0x00, 0xC0, 0x03, 0x80, 0x06, 0x00, 0x1C, 0x00, 0x30, 0x00, - 0xE0, 0x01, 0x80, 0x07, 0x00, 0x0C, 0x00, 0x38, 0x00, 0x60, 0x01, 0xC0, - 0x03, 0x00, 0x0E, 0x00, 0x18, 0x00, 0x70, 0x00, 0xC0, 0x03, 0x80, 0x06, - 0x00, 0x1C, 0x00, 0x30, 0x00, 0xE0, 0x00, 0x00, 0xFC, 0x00, 0x7F, 0xC0, - 0x7F, 0xF8, 0x3F, 0xFE, 0x0F, 0x8F, 0xC7, 0xC1, 0xF1, 0xE0, 0x7C, 0xF8, - 0x1F, 0x3E, 0x07, 0xDF, 0x01, 0xF7, 0xC0, 0x7D, 0xF0, 0x3F, 0x7C, 0x0F, - 0xBF, 0x03, 0xEF, 0x80, 0xFB, 0xE0, 0x3E, 0xF8, 0x1F, 0x3E, 0x07, 0xCF, - 0x81, 0xE3, 0xE0, 0xF8, 0xFC, 0x7C, 0x1F, 0xFF, 0x07, 0xFF, 0x80, 0xFF, - 0xC0, 0x0F, 0x80, 0x00, 0x00, 0x70, 0x03, 0x80, 0x3C, 0x03, 0xE0, 0xFF, - 0x3F, 0xF3, 0xFF, 0x9F, 0xFC, 0x03, 0xE0, 0x1F, 0x01, 0xF0, 0x0F, 0x80, - 0x7C, 0x03, 0xE0, 0x1E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x3E, - 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x3E, 0x00, 0x00, 0x1F, 0x80, - 0x07, 0xFF, 0x00, 0x7F, 0xFC, 0x07, 0xFF, 0xE0, 0x7E, 0x1F, 0x83, 0xE0, - 0x7C, 0x1F, 0x03, 0xE1, 0xF0, 0x1F, 0x0F, 0x80, 0xF8, 0x00, 0x0F, 0x80, - 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xE0, 0x00, 0xFC, - 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, - 0x00, 0x03, 0xF0, 0x00, 0x1F, 0xFF, 0xE1, 0xFF, 0xFF, 0x0F, 0xFF, 0xF0, - 0x7F, 0xFF, 0x80, 0x00, 0x7F, 0x00, 0x1F, 0xFC, 0x03, 0xFF, 0xE0, 0x7F, - 0xFF, 0x0F, 0x83, 0xF0, 0xF0, 0x1F, 0x1F, 0x01, 0xF1, 0xE0, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0xFC, 0x00, 0xFF, 0x80, 0x0F, 0xF0, 0x00, 0xFF, 0x80, - 0x0F, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xCF, 0x80, 0x7C, - 0xF8, 0x07, 0xCF, 0x80, 0xF8, 0xFC, 0x3F, 0x8F, 0xFF, 0xF0, 0x7F, 0xFE, - 0x03, 0xFF, 0xC0, 0x0F, 0xE0, 0x00, 0x00, 0x07, 0xE0, 0x01, 0xFC, 0x00, - 0x7F, 0x00, 0x1F, 0xE0, 0x03, 0xFC, 0x00, 0xEF, 0x80, 0x3D, 0xF0, 0x0F, - 0x7C, 0x03, 0xCF, 0x80, 0xF1, 0xF0, 0x1C, 0x3E, 0x07, 0x07, 0xC1, 0xE1, - 0xF0, 0x78, 0x3E, 0x1E, 0x07, 0xC3, 0xFF, 0xFE, 0x7F, 0xFF, 0xDF, 0xFF, - 0xFB, 0xFF, 0xFF, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, 0x1F, - 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x01, 0xFF, 0xF0, 0x3F, 0xFF, 0x03, - 0xFF, 0xF0, 0x3F, 0xFF, 0x07, 0x80, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x00, - 0xF7, 0xE0, 0x0F, 0xFF, 0x01, 0xFF, 0xF8, 0x1F, 0xFF, 0x83, 0xF0, 0xFC, - 0x3E, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, - 0x8F, 0x80, 0xF8, 0xF8, 0x1F, 0x8F, 0xC3, 0xF0, 0xFF, 0xFE, 0x07, 0xFF, - 0xC0, 0x3F, 0xF8, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, - 0xFF, 0x03, 0xFF, 0xE0, 0xF8, 0x7E, 0x3E, 0x07, 0xC7, 0x80, 0x01, 0xF0, - 0x00, 0x3C, 0xFC, 0x07, 0xFF, 0xC1, 0xFF, 0xFC, 0x3F, 0xFF, 0xC7, 0xE1, - 0xF8, 0xF8, 0x1F, 0x3E, 0x03, 0xE7, 0x80, 0x7C, 0xF0, 0x0F, 0x9E, 0x01, - 0xE3, 0xC0, 0x7C, 0x78, 0x1F, 0x0F, 0x87, 0xE0, 0xFF, 0xF8, 0x1F, 0xFE, - 0x01, 0xFF, 0x80, 0x0F, 0xC0, 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xF9, 0xFF, - 0xFF, 0x7F, 0xFF, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, - 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x07, 0x80, 0x01, 0xF0, 0x00, 0x7C, - 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x3E, 0x00, - 0x07, 0xC0, 0x00, 0x00, 0x7F, 0x00, 0x1F, 0xFC, 0x07, 0xFF, 0xE0, 0xFF, - 0xFF, 0x0F, 0x81, 0xF1, 0xF0, 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x1E, 0x1F, - 0x07, 0xE0, 0xFF, 0xFC, 0x07, 0xFF, 0x00, 0xFF, 0xF8, 0x1F, 0xFF, 0x83, - 0xF0, 0xFC, 0x7C, 0x07, 0xC7, 0xC0, 0x7C, 0xF8, 0x07, 0xCF, 0x80, 0x7C, - 0xF8, 0x0F, 0x8F, 0x80, 0xF8, 0xFC, 0x3F, 0x0F, 0xFF, 0xF0, 0x7F, 0xFE, - 0x03, 0xFF, 0x80, 0x0F, 0xE0, 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, - 0xFF, 0x03, 0xFF, 0xE0, 0xFC, 0x3E, 0x3F, 0x03, 0xC7, 0xC0, 0x79, 0xF0, - 0x0F, 0x3E, 0x01, 0xE7, 0xC0, 0x3C, 0xF8, 0x0F, 0x9F, 0x03, 0xE3, 0xF0, - 0xFC, 0x7F, 0xFF, 0x87, 0xFF, 0xF0, 0x7F, 0xFE, 0x07, 0xE7, 0x80, 0x01, - 0xF0, 0x00, 0x3C, 0x7C, 0x0F, 0x8F, 0xC3, 0xE1, 0xFF, 0xF8, 0x1F, 0xFE, - 0x01, 0xFF, 0x80, 0x0F, 0xC0, 0x00, 0x0F, 0x87, 0xC3, 0xC3, 0xE1, 0xF0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xE1, 0xF0, 0xF0, - 0xF8, 0x7C, 0x00, 0x07, 0xC1, 0xF0, 0x78, 0x3E, 0x0F, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x83, 0xE0, 0xF0, 0x7C, - 0x1F, 0x00, 0xC0, 0x70, 0x18, 0x0E, 0x0F, 0x03, 0x00, 0x00, 0x00, 0x20, - 0x00, 0x3C, 0x00, 0x3F, 0x80, 0x3F, 0xE0, 0x3F, 0xFC, 0x3F, 0xFC, 0x1F, - 0xFC, 0x07, 0xFC, 0x00, 0xFC, 0x00, 0x1F, 0xF0, 0x03, 0xFF, 0x80, 0x1F, - 0xFE, 0x00, 0xFF, 0xF0, 0x03, 0xFE, 0x00, 0x1F, 0xC0, 0x00, 0x78, 0x00, - 0x03, 0x00, 0x1F, 0xFF, 0xF3, 0xFF, 0xFE, 0x3F, 0xFF, 0xE3, 0xFF, 0xFE, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, - 0xC7, 0xFF, 0xFC, 0xFF, 0xFF, 0x8F, 0xFF, 0xF8, 0x18, 0x00, 0x03, 0xC0, - 0x00, 0x7F, 0x00, 0x0F, 0xF8, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0x3F, - 0xF8, 0x01, 0xFF, 0x00, 0x07, 0xE0, 0x07, 0xFC, 0x07, 0xFF, 0x07, 0xFF, - 0x87, 0xFF, 0x80, 0xFF, 0x80, 0x3F, 0x80, 0x07, 0x80, 0x00, 0x80, 0x00, - 0x00, 0x03, 0xF8, 0x03, 0xFF, 0xC1, 0xFF, 0xF8, 0xFF, 0xFE, 0x7E, 0x1F, - 0xDF, 0x03, 0xFF, 0x80, 0x7F, 0xE0, 0x1F, 0xF8, 0x07, 0xC0, 0x03, 0xE0, - 0x01, 0xF8, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x80, 0x1F, - 0x80, 0x07, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x07, 0xC0, 0x01, 0xF0, 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0x00, 0x7F, 0x80, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x03, 0xFF, 0xFE, - 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x0F, 0xC0, 0x03, 0xE0, 0x0F, 0x80, 0x00, - 0xF8, 0x0F, 0x00, 0x00, 0x3C, 0x0F, 0x01, 0xF1, 0xCF, 0x0F, 0x03, 0xFD, - 0xC7, 0x8F, 0x03, 0xFF, 0xE1, 0xC7, 0x03, 0xE3, 0xE0, 0xE7, 0x03, 0xC0, - 0xF0, 0x73, 0x83, 0xC0, 0x78, 0x3B, 0x81, 0xE0, 0x38, 0x1D, 0xC1, 0xE0, - 0x1C, 0x1C, 0xC0, 0xF0, 0x1C, 0x0E, 0xE0, 0x70, 0x0E, 0x0F, 0x70, 0x78, - 0x0E, 0x07, 0x38, 0x3C, 0x0F, 0x07, 0x1C, 0x1E, 0x0F, 0x87, 0x8E, 0x0F, - 0x8F, 0xCF, 0x87, 0x07, 0xFF, 0xFF, 0x83, 0xC1, 0xFE, 0x7F, 0x00, 0xE0, - 0x3C, 0x1F, 0x00, 0x78, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x0F, - 0xC0, 0x01, 0x00, 0x03, 0xF8, 0x07, 0x80, 0x00, 0xFF, 0xFF, 0xC0, 0x00, - 0x1F, 0xFF, 0xE0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x00, - 0x0F, 0xE0, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xC0, 0x00, 0xFF, 0x80, 0x03, - 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x1F, 0x7C, 0x00, 0x7E, 0xF8, 0x00, 0xF9, - 0xF0, 0x03, 0xF3, 0xE0, 0x07, 0xC3, 0xE0, 0x1F, 0x87, 0xC0, 0x3E, 0x0F, - 0x80, 0xF8, 0x1F, 0x01, 0xF0, 0x3E, 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF8, - 0x3F, 0xFF, 0xF0, 0xFF, 0xFF, 0xF1, 0xF0, 0x03, 0xE7, 0xC0, 0x07, 0xCF, - 0x80, 0x0F, 0xBE, 0x00, 0x1F, 0x7C, 0x00, 0x3F, 0xF0, 0x00, 0x7C, 0x07, - 0xFF, 0xF0, 0x07, 0xFF, 0xFC, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x0F, - 0xC0, 0x3F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x1F, - 0x80, 0x1E, 0x1F, 0x80, 0x3E, 0x1F, 0x00, 0x7C, 0x1F, 0xFF, 0xF8, 0x1F, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3F, 0xFF, 0xF8, 0x3E, 0x00, 0xFC, 0x3E, - 0x00, 0x7C, 0x3E, 0x00, 0x7C, 0x7E, 0x00, 0x7C, 0x7C, 0x00, 0x7C, 0x7C, - 0x00, 0xF8, 0x7C, 0x01, 0xF8, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xC0, 0xFF, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xF8, 0x01, - 0xFF, 0xFC, 0x03, 0xFF, 0xFE, 0x07, 0xE0, 0x7F, 0x0F, 0xC0, 0x3F, 0x1F, - 0x80, 0x1F, 0x3F, 0x00, 0x1F, 0x3E, 0x00, 0x1F, 0x7E, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x7C, 0xF8, - 0x00, 0x7C, 0xFC, 0x00, 0xF8, 0xFC, 0x01, 0xF8, 0x7F, 0x07, 0xF0, 0x7F, - 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0x0F, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x07, - 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xFE, 0x0F, - 0x80, 0x7E, 0x0F, 0x80, 0x3F, 0x0F, 0x80, 0x1F, 0x1F, 0x80, 0x1F, 0x1F, - 0x80, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x1F, 0x3F, - 0x00, 0x1F, 0x3E, 0x00, 0x3E, 0x3E, 0x00, 0x3E, 0x3E, 0x00, 0x3E, 0x3E, - 0x00, 0x3E, 0x7E, 0x00, 0x7C, 0x7C, 0x00, 0x7C, 0x7C, 0x00, 0xF8, 0x7C, - 0x01, 0xF8, 0x7C, 0x07, 0xF0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xC0, 0xFF, - 0xFF, 0x00, 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x07, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFE, 0x0F, 0x80, 0x00, 0x0F, 0x80, 0x00, 0x0F, - 0x80, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF0, 0x3F, - 0xFF, 0xF0, 0x3E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFF, - 0xFF, 0xF0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0x07, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, 0xE0, 0xF8, - 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFF, 0xFF, 0x03, 0xFF, 0xFE, - 0x07, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, - 0x80, 0x00, 0x3F, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0xF8, 0x01, 0xFF, 0xFC, 0x03, - 0xFF, 0xFE, 0x07, 0xE0, 0x7E, 0x0F, 0x80, 0x3F, 0x1F, 0x00, 0x1F, 0x3E, - 0x00, 0x1F, 0x3E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0xF8, 0x03, 0xFF, 0xF8, 0x07, 0xFF, 0xF8, 0x07, 0xFE, 0xF8, - 0x07, 0xFE, 0xF8, 0x00, 0x3E, 0xF8, 0x00, 0x3E, 0xFC, 0x00, 0x7E, 0xFC, - 0x00, 0x7C, 0x7E, 0x00, 0xFC, 0x7F, 0x83, 0xFC, 0x3F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xBC, 0x0F, 0xFF, 0x38, 0x03, 0xFC, 0x38, 0x03, 0xE0, 0x07, 0xC0, - 0xF8, 0x01, 0xF0, 0x7E, 0x00, 0x7C, 0x1F, 0x00, 0x3F, 0x07, 0xC0, 0x0F, - 0x81, 0xF0, 0x03, 0xE0, 0xFC, 0x00, 0xF8, 0x3E, 0x00, 0x3E, 0x0F, 0x80, - 0x1F, 0x83, 0xE0, 0x07, 0xC0, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x1F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC1, 0xF0, 0x03, 0xE0, 0x7C, 0x00, 0xF8, - 0x3F, 0x00, 0x3E, 0x0F, 0x80, 0x0F, 0x83, 0xE0, 0x07, 0xE0, 0xF8, 0x01, - 0xF0, 0x3E, 0x00, 0x7C, 0x1F, 0x80, 0x1F, 0x07, 0xC0, 0x0F, 0xC1, 0xF0, - 0x03, 0xF0, 0x7C, 0x00, 0xF8, 0x3F, 0x00, 0x3E, 0x00, 0x07, 0xC3, 0xF0, - 0xFC, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x7E, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, - 0x3F, 0x0F, 0xC3, 0xE0, 0xF8, 0x3E, 0x0F, 0x87, 0xE1, 0xF0, 0x7C, 0x1F, - 0x07, 0xC3, 0xF0, 0xFC, 0x3E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, - 0x01, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, - 0x00, 0x3E, 0x00, 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x7C, 0x0F, - 0x8F, 0x81, 0xF8, 0xF8, 0x1F, 0x0F, 0x81, 0xF0, 0xF8, 0x1F, 0x0F, 0xC3, - 0xF0, 0xFF, 0xFE, 0x07, 0xFF, 0xC0, 0x3F, 0xF8, 0x01, 0xFC, 0x00, 0x07, - 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xE0, 0x7C, 0x03, 0xF0, 0x3F, 0x03, 0xF8, - 0x0F, 0x81, 0xF8, 0x03, 0xE0, 0xFC, 0x00, 0xF8, 0x7E, 0x00, 0x7E, 0x3F, - 0x00, 0x1F, 0x1F, 0x80, 0x07, 0xCF, 0xC0, 0x01, 0xF7, 0xE0, 0x00, 0x7F, - 0xF0, 0x00, 0x3F, 0xFC, 0x00, 0x0F, 0xFF, 0x80, 0x03, 0xFF, 0xF0, 0x00, - 0xFE, 0xFC, 0x00, 0x3F, 0x1F, 0x80, 0x1F, 0x87, 0xE0, 0x07, 0xC0, 0xFC, - 0x01, 0xF0, 0x3F, 0x00, 0x7C, 0x07, 0xE0, 0x1F, 0x01, 0xFC, 0x0F, 0xC0, - 0x3F, 0x03, 0xE0, 0x0F, 0xE0, 0xF8, 0x01, 0xF8, 0x3E, 0x00, 0x3F, 0x00, - 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x0F, 0xC0, 0x03, - 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, 0x80, 0x07, 0xC0, 0x01, 0xF0, - 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x0F, 0xC0, 0x03, 0xE0, 0x00, 0xF8, 0x00, - 0x3E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, - 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, 0xE0, 0x03, - 0xF8, 0x01, 0xFC, 0x07, 0xF0, 0x07, 0xF8, 0x1F, 0xE0, 0x0F, 0xF0, 0x3F, - 0xC0, 0x3F, 0xE0, 0x7F, 0x80, 0x7F, 0xC0, 0xFF, 0x01, 0xFF, 0x01, 0xFE, - 0x03, 0xFE, 0x07, 0xDC, 0x07, 0x7C, 0x0F, 0xB8, 0x1E, 0xF8, 0x1F, 0x70, - 0x3D, 0xF0, 0x3E, 0xF0, 0xF7, 0xC0, 0xF9, 0xE1, 0xEF, 0x81, 0xF3, 0xC7, - 0x9F, 0x03, 0xE7, 0x8F, 0x3E, 0x07, 0xCF, 0x3C, 0x7C, 0x0F, 0x9E, 0x79, - 0xF0, 0x3E, 0x3C, 0xE3, 0xE0, 0x7C, 0x7B, 0xC7, 0xC0, 0xF8, 0xF7, 0x8F, - 0x81, 0xF1, 0xFE, 0x1E, 0x07, 0xE3, 0xFC, 0x7C, 0x0F, 0x87, 0xF0, 0xF8, - 0x1F, 0x0F, 0xE1, 0xF0, 0x3E, 0x1F, 0x83, 0xE0, 0x7C, 0x3F, 0x0F, 0x81, - 0xF0, 0x7E, 0x1F, 0x00, 0x03, 0xE0, 0x07, 0xC0, 0x7E, 0x00, 0xF8, 0x1F, - 0xC0, 0x1F, 0x03, 0xF8, 0x03, 0xE0, 0x7F, 0x80, 0x7C, 0x0F, 0xF0, 0x1F, - 0x01, 0xFF, 0x03, 0xE0, 0x7F, 0xE0, 0x7C, 0x0F, 0xBC, 0x0F, 0x81, 0xF7, - 0xC1, 0xF0, 0x3E, 0xF8, 0x7C, 0x0F, 0x8F, 0x0F, 0x81, 0xF1, 0xF1, 0xF0, - 0x3E, 0x3E, 0x3E, 0x07, 0xC3, 0xC7, 0xC0, 0xF8, 0x7D, 0xF0, 0x3E, 0x0F, - 0xBE, 0x07, 0xC0, 0xF7, 0xC0, 0xF8, 0x1F, 0xF8, 0x1F, 0x01, 0xFE, 0x03, - 0xC0, 0x3F, 0xC0, 0xF8, 0x07, 0xF8, 0x1F, 0x00, 0x7F, 0x03, 0xE0, 0x0F, - 0xE0, 0x7C, 0x01, 0xF8, 0x1F, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xFF, 0xC0, 0x7E, 0x07, 0xF0, - 0x7E, 0x01, 0xF8, 0x7C, 0x00, 0x7E, 0x3E, 0x00, 0x1F, 0x3E, 0x00, 0x0F, - 0x9E, 0x00, 0x07, 0xDF, 0x00, 0x03, 0xEF, 0x80, 0x01, 0xFF, 0x80, 0x00, - 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x7D, 0xF0, 0x00, 0x3E, 0xF8, 0x00, - 0x1F, 0x7C, 0x00, 0x1F, 0x3E, 0x00, 0x1F, 0x9F, 0x80, 0x0F, 0x87, 0xE0, - 0x0F, 0x83, 0xF8, 0x1F, 0x80, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0x80, 0x0F, - 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xF0, - 0x3F, 0xFF, 0xF0, 0x7F, 0xFF, 0xF0, 0xF8, 0x07, 0xE1, 0xF0, 0x07, 0xC3, - 0xE0, 0x0F, 0x8F, 0xC0, 0x1F, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0xF8, 0x7C, - 0x01, 0xF0, 0xF8, 0x07, 0xC3, 0xFF, 0xFF, 0x87, 0xFF, 0xFE, 0x0F, 0xFF, - 0xF8, 0x1F, 0xFF, 0x80, 0x3E, 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF0, 0x00, - 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x3F, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x7F, 0xFF, 0xC0, 0x7F, 0x07, - 0xF0, 0x7E, 0x01, 0xF8, 0x7E, 0x00, 0x7E, 0x3E, 0x00, 0x1F, 0x3E, 0x00, - 0x0F, 0x9E, 0x00, 0x07, 0xDF, 0x00, 0x03, 0xEF, 0x80, 0x01, 0xF7, 0x80, - 0x00, 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x7D, 0xF0, 0x00, 0x3E, 0xF8, - 0x02, 0x1F, 0x7C, 0x03, 0x9F, 0x3E, 0x03, 0xFF, 0x9F, 0x81, 0xFF, 0x87, - 0xE0, 0x7F, 0x83, 0xF8, 0x3F, 0xC0, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xF0, - 0x0F, 0xFF, 0xFC, 0x01, 0xFE, 0x1C, 0x00, 0x00, 0x0C, 0x00, 0x07, 0xFF, - 0xF8, 0x07, 0xFF, 0xFE, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x0F, 0x80, - 0x3F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x0F, 0x80, 0x1F, 0x1F, 0x80, - 0x1E, 0x1F, 0x00, 0x3E, 0x1F, 0x00, 0x7C, 0x1F, 0xFF, 0xF8, 0x1F, 0xFF, - 0xE0, 0x3F, 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x3E, 0x01, 0xF8, 0x3E, 0x00, - 0xF8, 0x3E, 0x00, 0xF8, 0x7E, 0x00, 0xF8, 0x7C, 0x00, 0xF8, 0x7C, 0x01, - 0xF0, 0x7C, 0x01, 0xF0, 0x7C, 0x01, 0xF0, 0xFC, 0x01, 0xF0, 0xF8, 0x01, - 0xF0, 0xF8, 0x01, 0xF0, 0x00, 0x3F, 0xC0, 0x07, 0xFF, 0xC0, 0x3F, 0xFF, - 0x81, 0xFF, 0xFF, 0x0F, 0xC0, 0xFC, 0x3E, 0x01, 0xF1, 0xF0, 0x07, 0xC7, - 0xC0, 0x1F, 0x1F, 0x00, 0x00, 0x7E, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xFF, - 0x80, 0x0F, 0xFF, 0xC0, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, 0x03, 0xFE, - 0x00, 0x01, 0xF8, 0x00, 0x03, 0xEF, 0x80, 0x0F, 0xBE, 0x00, 0x3C, 0xFC, - 0x01, 0xF3, 0xF8, 0x1F, 0x87, 0xFF, 0xFE, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, - 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xFF, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xF0, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x3E, - 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, - 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, - 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, - 0x00, 0x0F, 0x80, 0x1F, 0x1F, 0x80, 0x1F, 0x1F, 0x00, 0x1F, 0x1F, 0x00, - 0x3F, 0x1F, 0x00, 0x3E, 0x1F, 0x00, 0x3E, 0x3E, 0x00, 0x3E, 0x3E, 0x00, - 0x7E, 0x3E, 0x00, 0x7C, 0x3E, 0x00, 0x7C, 0x3E, 0x00, 0x7C, 0x7C, 0x00, - 0x7C, 0x7C, 0x00, 0xFC, 0x7C, 0x00, 0xF8, 0x7C, 0x00, 0xF8, 0x7C, 0x00, - 0xF8, 0xF8, 0x00, 0xF8, 0xF8, 0x01, 0xF8, 0xF8, 0x01, 0xF0, 0xF8, 0x01, - 0xF0, 0xF8, 0x03, 0xE0, 0xFE, 0x0F, 0xE0, 0x7F, 0xFF, 0xC0, 0x7F, 0xFF, - 0x80, 0x1F, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0xFC, 0x00, 0x7F, 0xF0, 0x03, - 0xE7, 0xC0, 0x0F, 0x9F, 0x00, 0x7C, 0x7C, 0x01, 0xF1, 0xF0, 0x0F, 0x87, - 0xC0, 0x3E, 0x1F, 0x01, 0xF0, 0x7C, 0x07, 0x81, 0xF0, 0x3E, 0x03, 0xC0, - 0xF0, 0x0F, 0x07, 0xC0, 0x3E, 0x1E, 0x00, 0xF8, 0xF8, 0x03, 0xE3, 0xC0, - 0x0F, 0x9F, 0x00, 0x3E, 0x78, 0x00, 0xFB, 0xE0, 0x01, 0xEF, 0x00, 0x07, - 0xFC, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xE0, - 0x00, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x07, 0xE0, 0x1F, 0xF8, - 0x07, 0xE0, 0x3F, 0xF8, 0x0F, 0xE0, 0x3E, 0xF8, 0x0F, 0xE0, 0x7E, 0xF8, - 0x1F, 0xE0, 0x7C, 0xF8, 0x1F, 0xE0, 0x7C, 0xF8, 0x3F, 0xE0, 0xF8, 0xF8, - 0x3D, 0xE0, 0xF8, 0x78, 0x3D, 0xE1, 0xF0, 0x78, 0x79, 0xE1, 0xF0, 0x78, - 0x79, 0xE1, 0xE0, 0x78, 0xF9, 0xE3, 0xE0, 0x78, 0xF1, 0xE3, 0xC0, 0x79, - 0xF1, 0xE7, 0xC0, 0x79, 0xE1, 0xE7, 0x80, 0x79, 0xE1, 0xE7, 0x80, 0x7B, - 0xC1, 0xEF, 0x80, 0x7B, 0xC1, 0xEF, 0x00, 0x7F, 0x81, 0xFF, 0x00, 0x7F, - 0x81, 0xFE, 0x00, 0x7F, 0x01, 0xFE, 0x00, 0x7F, 0x01, 0xFC, 0x00, 0x7F, - 0x01, 0xFC, 0x00, 0x7E, 0x01, 0xF8, 0x00, 0x3E, 0x01, 0xF8, 0x00, 0x3C, - 0x01, 0xF0, 0x00, 0x03, 0xF0, 0x07, 0xE0, 0x7E, 0x01, 0xF8, 0x07, 0xE0, - 0x7E, 0x00, 0xFC, 0x1F, 0x80, 0x1F, 0x83, 0xE0, 0x01, 0xF8, 0xF8, 0x00, - 0x3F, 0x3F, 0x00, 0x03, 0xEF, 0xC0, 0x00, 0x7F, 0xF0, 0x00, 0x0F, 0xFC, - 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x7F, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xC0, - 0x00, 0x3E, 0xF8, 0x00, 0x0F, 0xDF, 0x80, 0x03, 0xF3, 0xF0, 0x00, 0xFC, - 0x3F, 0x00, 0x3F, 0x07, 0xE0, 0x07, 0xE0, 0xFC, 0x01, 0xF8, 0x0F, 0xC0, - 0x7E, 0x01, 0xF8, 0x1F, 0x80, 0x3F, 0x80, 0x7C, 0x00, 0xFD, 0xF8, 0x07, - 0xE7, 0xE0, 0x1F, 0x1F, 0x80, 0xFC, 0x3E, 0x07, 0xE0, 0xFC, 0x1F, 0x03, - 0xF0, 0xFC, 0x07, 0xC7, 0xE0, 0x1F, 0x1F, 0x00, 0x7E, 0xFC, 0x00, 0xFB, - 0xE0, 0x03, 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, - 0x01, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x01, - 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0x81, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xE0, 0x00, - 0x07, 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF8, 0x00, - 0x03, 0xF8, 0x00, 0x01, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, - 0xF0, 0x7F, 0xFF, 0xF0, 0x00, 0x01, 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x1F, - 0xF0, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0xF0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x00, 0xE7, 0x39, 0xCE, 0x31, 0x8C, - 0x63, 0x1C, 0xE7, 0x39, 0xCE, 0x31, 0x8C, 0x63, 0x9C, 0xE7, 0x38, 0x01, - 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x1F, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x3E, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x3E, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x1F, 0xF0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, - 0x00, 0x00, 0x7C, 0x00, 0xFC, 0x01, 0xFC, 0x01, 0xFC, 0x03, 0xFC, 0x03, - 0x9E, 0x07, 0x9E, 0x0F, 0x1E, 0x0F, 0x1E, 0x1E, 0x1E, 0x1C, 0x0F, 0x3C, - 0x0F, 0x78, 0x0F, 0x78, 0x0F, 0xF0, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFE, 0xF3, 0x8C, 0x71, 0x80, 0x01, 0xFE, 0x01, 0xFF, 0xE0, - 0xFF, 0xF8, 0x7F, 0xFF, 0x1F, 0x0F, 0xC7, 0x81, 0xF0, 0x00, 0x7C, 0x00, - 0xFE, 0x07, 0xFF, 0x87, 0xFF, 0xE3, 0xFE, 0xF9, 0xF0, 0x7C, 0xF8, 0x1F, - 0x3E, 0x0F, 0xCF, 0x87, 0xF3, 0xFF, 0xF8, 0xFF, 0xFE, 0x1F, 0xEF, 0x81, - 0xE3, 0xF0, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, - 0x07, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF9, 0xF8, 0x0F, 0xFF, - 0xC1, 0xFF, 0xFE, 0x1F, 0xFF, 0xE1, 0xFC, 0x3F, 0x1F, 0x83, 0xF1, 0xF0, - 0x1F, 0x3E, 0x01, 0xF3, 0xE0, 0x1F, 0x3C, 0x01, 0xF3, 0xC0, 0x1F, 0x3C, - 0x03, 0xE7, 0xC0, 0x3E, 0x7E, 0x07, 0xC7, 0xF1, 0xFC, 0x7F, 0xFF, 0x87, - 0xFF, 0xF0, 0xFB, 0xFE, 0x0F, 0x9F, 0x80, 0x00, 0xFC, 0x01, 0xFF, 0xC0, - 0xFF, 0xF8, 0x7F, 0xFF, 0x3F, 0x0F, 0xCF, 0x81, 0xF7, 0xC0, 0x7D, 0xF0, - 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x0F, - 0xBE, 0x07, 0xCF, 0xC3, 0xF1, 0xFF, 0xF8, 0x7F, 0xFC, 0x0F, 0xFE, 0x00, - 0xFE, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, - 0x3E, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x7E, 0x7C, - 0x07, 0xFD, 0xF0, 0x3F, 0xFF, 0xC1, 0xFF, 0xFE, 0x0F, 0xE3, 0xF8, 0x3E, - 0x07, 0xE1, 0xF0, 0x1F, 0x87, 0xC0, 0x3C, 0x3E, 0x00, 0xF0, 0xF8, 0x07, - 0xC3, 0xE0, 0x1F, 0x0F, 0x80, 0x7C, 0x3E, 0x03, 0xE0, 0xF8, 0x1F, 0x83, - 0xF0, 0xFE, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x7E, - 0x7C, 0x00, 0x00, 0xFE, 0x00, 0x7F, 0xE0, 0x3F, 0xFE, 0x0F, 0xFF, 0xE3, - 0xF0, 0x7E, 0x7C, 0x07, 0xDF, 0x00, 0xFB, 0xE0, 0x1F, 0x7F, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x1F, 0x3F, - 0x07, 0xE3, 0xFF, 0xF8, 0x7F, 0xFE, 0x03, 0xFF, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0xF8, 0x1F, 0xC1, 0xFE, 0x0F, 0xF0, 0x7C, 0x07, 0xC0, 0x3E, 0x0F, - 0xFE, 0x7F, 0xF3, 0xFF, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, - 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x78, 0x07, 0xC0, 0x3E, 0x01, - 0xF0, 0x0F, 0x80, 0xF8, 0x07, 0xC0, 0x00, 0x00, 0x7C, 0x7C, 0x07, 0xFD, - 0xF0, 0x3F, 0xF7, 0x81, 0xFF, 0xFE, 0x0F, 0xE3, 0xF8, 0x3E, 0x07, 0xE1, - 0xF8, 0x0F, 0x87, 0xC0, 0x3C, 0x1E, 0x00, 0xF0, 0xF8, 0x03, 0xC3, 0xE0, - 0x1F, 0x0F, 0x80, 0x78, 0x3E, 0x03, 0xE0, 0xF8, 0x1F, 0x83, 0xF0, 0xFE, - 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xC0, 0x3F, 0xEF, 0x00, 0x3E, 0x7C, 0x00, - 0x01, 0xF0, 0x00, 0x07, 0xC3, 0xE0, 0x3E, 0x0F, 0x80, 0xF8, 0x3F, 0x0F, - 0xC0, 0x7F, 0xFE, 0x00, 0xFF, 0xF0, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x0F, 0x80, 0x00, 0xF8, 0xF8, 0x0F, 0xBF, 0xE0, 0xFF, 0xFF, 0x0F, - 0xFF, 0xF1, 0xFC, 0x3F, 0x1F, 0x81, 0xF1, 0xF0, 0x1F, 0x1F, 0x01, 0xF1, - 0xE0, 0x1F, 0x3E, 0x03, 0xE3, 0xE0, 0x3E, 0x3E, 0x03, 0xE3, 0xE0, 0x3E, - 0x7C, 0x03, 0xE7, 0xC0, 0x7C, 0x7C, 0x07, 0xC7, 0xC0, 0x7C, 0x7C, 0x07, - 0xCF, 0x80, 0x78, 0x07, 0xC1, 0xF0, 0x7C, 0x3E, 0x00, 0x00, 0x00, 0x00, - 0x3E, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, - 0x0F, 0x87, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, 0x3E, 0x00, - 0x00, 0x3E, 0x00, 0x78, 0x01, 0xF0, 0x03, 0xE0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, - 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x80, - 0x1F, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x1F, - 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x03, 0xF0, 0x1F, 0xC0, 0x3F, 0x80, - 0x7E, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, - 0x0F, 0x80, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, - 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x07, 0xC7, 0xE0, 0x3E, 0x7E, 0x01, - 0xF7, 0xE0, 0x0F, 0xFE, 0x00, 0xFF, 0xE0, 0x07, 0xFF, 0x00, 0x3F, 0xFC, - 0x01, 0xFF, 0xE0, 0x0F, 0xDF, 0x00, 0xFC, 0xFC, 0x07, 0xC3, 0xE0, 0x3E, - 0x1F, 0x01, 0xF0, 0xFC, 0x0F, 0x83, 0xE0, 0xF8, 0x1F, 0x87, 0xC0, 0xFC, - 0x00, 0x07, 0xC1, 0xF0, 0x7C, 0x3E, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x1F, - 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x0F, 0x83, 0xE0, 0xF8, 0x3E, 0x0F, 0x87, - 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC3, 0xE0, 0xF8, 0x3E, 0x00, 0x0F, 0x8F, - 0x83, 0xF0, 0x3E, 0xFF, 0x3F, 0xE0, 0xF7, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, - 0xFF, 0x1F, 0xC7, 0xF8, 0x7C, 0x7C, 0x0F, 0x81, 0xF1, 0xF0, 0x3E, 0x07, - 0xCF, 0x81, 0xF0, 0x3E, 0x3E, 0x07, 0xC0, 0xF8, 0xF8, 0x1F, 0x03, 0xE3, - 0xE0, 0x7C, 0x0F, 0x8F, 0x81, 0xF0, 0x3E, 0x7C, 0x0F, 0x81, 0xF1, 0xF0, - 0x3E, 0x07, 0xC7, 0xC0, 0xF8, 0x1F, 0x1F, 0x03, 0xE0, 0x7C, 0x7C, 0x0F, - 0x81, 0xE3, 0xE0, 0x7C, 0x0F, 0x8F, 0x81, 0xF0, 0x3E, 0x00, 0x0F, 0x8F, - 0x80, 0xFB, 0xFE, 0x0F, 0xFF, 0xF1, 0xFF, 0xFF, 0x1F, 0xC3, 0xF1, 0xF8, - 0x1F, 0x1F, 0x01, 0xF1, 0xF0, 0x1F, 0x3E, 0x01, 0xF3, 0xE0, 0x3E, 0x3E, - 0x03, 0xE3, 0xE0, 0x3E, 0x3C, 0x03, 0xE7, 0xC0, 0x3E, 0x7C, 0x07, 0xC7, - 0xC0, 0x7C, 0x7C, 0x07, 0xC7, 0x80, 0x7C, 0xF8, 0x07, 0x80, 0x00, 0xFE, - 0x00, 0x7F, 0xF0, 0x3F, 0xFF, 0x0F, 0xFF, 0xE3, 0xF8, 0xFE, 0x7C, 0x0F, - 0xDF, 0x00, 0xFB, 0xE0, 0x1F, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xE0, 0x1F, - 0xFC, 0x03, 0xEF, 0x80, 0x7D, 0xF8, 0x1F, 0x3F, 0x07, 0xE3, 0xFF, 0xF8, - 0x7F, 0xFE, 0x07, 0xFF, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xE7, 0xE0, 0x0F, - 0xBF, 0xC0, 0x7D, 0xFF, 0x81, 0xFF, 0xFE, 0x07, 0xF0, 0xFC, 0x1F, 0x81, - 0xF0, 0x7C, 0x07, 0xC3, 0xE0, 0x1F, 0x0F, 0x80, 0x7C, 0x3E, 0x01, 0xF0, - 0xF0, 0x07, 0xC3, 0xC0, 0x3E, 0x1F, 0x00, 0xF8, 0x7E, 0x07, 0xC1, 0xFC, - 0x7F, 0x07, 0xFF, 0xF8, 0x1F, 0xFF, 0xC0, 0xFB, 0xFE, 0x03, 0xE7, 0xE0, - 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x1F, - 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x01, - 0xF1, 0xF0, 0x7F, 0xDF, 0x0F, 0xFD, 0xF1, 0xFF, 0xFE, 0x3F, 0x8F, 0xE3, - 0xE0, 0x7E, 0x7C, 0x03, 0xE7, 0xC0, 0x3E, 0xF8, 0x03, 0xCF, 0x80, 0x3C, - 0xF8, 0x07, 0xCF, 0x80, 0x7C, 0xF8, 0x0F, 0x8F, 0x81, 0xF8, 0xFC, 0x3F, - 0x87, 0xFF, 0xF8, 0x7F, 0xFF, 0x83, 0xFF, 0xF0, 0x1F, 0x9F, 0x00, 0x01, - 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x0F, 0x8E, 0x1F, 0x7C, 0x3F, - 0xF0, 0xFF, 0xE1, 0xFC, 0x03, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x3E, 0x00, - 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, - 0x00, 0x7C, 0x00, 0xF0, 0x03, 0xE0, 0x00, 0x01, 0xFC, 0x01, 0xFF, 0xC0, - 0xFF, 0xF8, 0x7F, 0xFF, 0x3F, 0x0F, 0xCF, 0x81, 0xF3, 0xF0, 0x00, 0xFF, - 0x80, 0x3F, 0xFC, 0x07, 0xFF, 0xC0, 0x7F, 0xF8, 0x03, 0xFE, 0x00, 0x1F, - 0xBE, 0x03, 0xEF, 0xC1, 0xFB, 0xFF, 0xFC, 0x7F, 0xFE, 0x0F, 0xFF, 0x00, - 0xFE, 0x00, 0x0F, 0x81, 0xF0, 0x7C, 0x0F, 0x81, 0xF0, 0xFF, 0xBF, 0xF7, - 0xFE, 0x3E, 0x07, 0xC0, 0xF8, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, - 0xF8, 0x1F, 0x03, 0xE0, 0x7F, 0x0F, 0xE1, 0xFC, 0x1F, 0x80, 0x1F, 0x01, - 0xF1, 0xF0, 0x1F, 0x3E, 0x03, 0xE3, 0xE0, 0x3E, 0x3E, 0x03, 0xE3, 0xE0, - 0x3E, 0x3E, 0x03, 0xE7, 0xC0, 0x7C, 0x7C, 0x07, 0xC7, 0xC0, 0x7C, 0x7C, - 0x07, 0xC7, 0xC0, 0x7C, 0xF8, 0x0F, 0x8F, 0x81, 0xF8, 0xF8, 0x3F, 0x8F, - 0xFF, 0xF8, 0xFF, 0xFF, 0x07, 0xFD, 0xF0, 0x3F, 0x1F, 0x00, 0xF8, 0x0F, - 0xFE, 0x03, 0xEF, 0x81, 0xF3, 0xE0, 0x7C, 0xF8, 0x3E, 0x3E, 0x0F, 0x8F, - 0x87, 0xC1, 0xE1, 0xF0, 0x78, 0xF8, 0x1E, 0x3E, 0x07, 0x9F, 0x01, 0xF7, - 0x80, 0x7F, 0xE0, 0x1F, 0xF0, 0x03, 0xFC, 0x00, 0xFE, 0x00, 0x3F, 0x80, - 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0xF8, 0x1F, 0x07, 0xFF, 0x03, 0xE0, 0xFB, - 0xE0, 0xFC, 0x1F, 0x7C, 0x1F, 0x87, 0xCF, 0x87, 0xF0, 0xF9, 0xF0, 0xFE, - 0x3E, 0x3E, 0x3D, 0xC7, 0xC3, 0xC7, 0xB9, 0xF0, 0x79, 0xE7, 0x3E, 0x0F, - 0x3C, 0xE7, 0x81, 0xEF, 0x1D, 0xF0, 0x3D, 0xE3, 0xBC, 0x07, 0xBC, 0x7F, - 0x80, 0xFF, 0x0F, 0xE0, 0x1F, 0xE1, 0xFC, 0x03, 0xF8, 0x3F, 0x00, 0x7F, - 0x07, 0xE0, 0x0F, 0xC0, 0xF8, 0x01, 0xF8, 0x1F, 0x00, 0x00, 0x0F, 0xC1, - 0xF8, 0x3F, 0x07, 0xC0, 0x7C, 0x3E, 0x01, 0xF9, 0xF8, 0x03, 0xEF, 0xC0, - 0x0F, 0xBE, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0x80, 0x01, 0xFC, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x3E, 0xF8, - 0x01, 0xFB, 0xF0, 0x07, 0xC7, 0xC0, 0x3E, 0x1F, 0x81, 0xF8, 0x7E, 0x0F, - 0xC0, 0xF8, 0x00, 0x1F, 0x80, 0x7C, 0x3E, 0x03, 0xE0, 0xF8, 0x0F, 0x03, - 0xE0, 0x7C, 0x0F, 0x81, 0xE0, 0x3E, 0x0F, 0x80, 0xF8, 0x3C, 0x03, 0xE1, - 0xF0, 0x07, 0x87, 0x80, 0x1F, 0x3E, 0x00, 0x7C, 0xF0, 0x01, 0xF7, 0xC0, - 0x07, 0xDE, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xC0, 0x01, 0xFE, 0x00, 0x03, - 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, - 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x01, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x0F, 0xFF, 0xE1, 0xFF, 0xFC, 0x3F, - 0xFF, 0x87, 0xFF, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, - 0xF0, 0x01, 0xFC, 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, 0xF8, - 0x00, 0x7E, 0x00, 0x1F, 0x80, 0x07, 0xFF, 0xF8, 0xFF, 0xFF, 0x1F, 0xFF, - 0xE3, 0xFF, 0xFC, 0x00, 0x00, 0x7C, 0x03, 0xF0, 0x1F, 0xC0, 0xFE, 0x03, - 0xE0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, - 0xE0, 0x0F, 0x80, 0x3C, 0x01, 0xF0, 0x1F, 0x80, 0x70, 0x01, 0xF8, 0x01, - 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, - 0xF0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xFC, 0x07, 0xE0, 0x0F, 0x80, - 0x1E, 0x00, 0x03, 0x81, 0xC0, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0C, 0x0E, - 0x07, 0x03, 0x81, 0xC0, 0xC0, 0xE0, 0x70, 0x38, 0x18, 0x1C, 0x0E, 0x07, - 0x03, 0x81, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x18, 0x1C, 0x0E, 0x07, 0x01, - 0x80, 0x80, 0x00, 0x00, 0x01, 0xE0, 0x07, 0xC0, 0x1F, 0x80, 0xFE, 0x00, - 0x78, 0x01, 0xE0, 0x07, 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, - 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x7E, 0x00, 0x38, 0x07, 0xE0, - 0x3E, 0x00, 0xF0, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, - 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x1F, 0x01, 0xF8, 0x0F, 0xE0, 0x3F, 0x00, - 0xF8, 0x00, 0x0F, 0x00, 0x1F, 0xC1, 0xDF, 0xF0, 0xEE, 0x3F, 0xE6, 0x07, - 0xF0, 0x01, 0xE0}; - -const GFXglyph FreeSansBoldOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 10, 0, 1}, // 0x20 ' ' - {0, 10, 25, 12, 4, -24}, // 0x21 '!' - {32, 13, 9, 17, 6, -25}, // 0x22 '"' - {47, 22, 24, 19, 1, -23}, // 0x23 '#' - {113, 19, 31, 19, 2, -26}, // 0x24 '$' - {187, 26, 26, 31, 5, -25}, // 0x25 '%' - {272, 21, 25, 25, 3, -24}, // 0x26 '&' - {338, 5, 9, 8, 6, -25}, // 0x27 ''' - {344, 13, 33, 12, 3, -25}, // 0x28 '(' - {398, 13, 33, 12, -1, -25}, // 0x29 ')' - {452, 12, 11, 14, 5, -25}, // 0x2A '*' - {469, 18, 16, 20, 3, -15}, // 0x2B '+' - {505, 7, 11, 10, 1, -4}, // 0x2C ',' - {515, 10, 4, 12, 2, -10}, // 0x2D '-' - {520, 6, 5, 10, 2, -4}, // 0x2E '.' - {524, 15, 25, 10, 0, -24}, // 0x2F '/' - {571, 18, 25, 19, 3, -24}, // 0x30 '0' - {628, 13, 25, 19, 6, -24}, // 0x31 '1' - {669, 21, 25, 19, 1, -24}, // 0x32 '2' - {735, 20, 25, 19, 2, -24}, // 0x33 '3' - {798, 19, 25, 19, 2, -24}, // 0x34 '4' - {858, 20, 24, 19, 2, -23}, // 0x35 '5' - {918, 19, 25, 19, 3, -24}, // 0x36 '6' - {978, 19, 24, 19, 5, -23}, // 0x37 '7' - {1035, 20, 25, 19, 2, -24}, // 0x38 '8' - {1098, 19, 25, 19, 2, -24}, // 0x39 '9' - {1158, 9, 18, 12, 4, -17}, // 0x3A ':' - {1179, 10, 24, 12, 3, -17}, // 0x3B ';' - {1209, 19, 17, 20, 3, -16}, // 0x3C '<' - {1250, 20, 12, 20, 2, -13}, // 0x3D '=' - {1280, 19, 17, 20, 1, -15}, // 0x3E '>' - {1321, 18, 26, 21, 6, -25}, // 0x3F '?' - {1380, 33, 31, 34, 3, -25}, // 0x40 '@' - {1508, 23, 26, 25, 1, -25}, // 0x41 'A' - {1583, 24, 26, 25, 3, -25}, // 0x42 'B' - {1661, 24, 26, 25, 4, -25}, // 0x43 'C' - {1739, 24, 26, 25, 3, -25}, // 0x44 'D' - {1817, 24, 26, 23, 3, -25}, // 0x45 'E' - {1895, 23, 26, 21, 3, -25}, // 0x46 'F' - {1970, 24, 26, 27, 4, -25}, // 0x47 'G' - {2048, 26, 26, 25, 2, -25}, // 0x48 'H' - {2133, 10, 26, 10, 2, -25}, // 0x49 'I' - {2166, 20, 26, 19, 2, -25}, // 0x4A 'J' - {2231, 26, 26, 25, 3, -25}, // 0x4B 'K' - {2316, 18, 26, 21, 3, -25}, // 0x4C 'L' - {2375, 31, 26, 29, 2, -25}, // 0x4D 'M' - {2476, 27, 26, 25, 2, -25}, // 0x4E 'N' - {2564, 25, 26, 27, 4, -25}, // 0x4F 'O' - {2646, 23, 26, 23, 3, -25}, // 0x50 'P' - {2721, 25, 27, 27, 4, -25}, // 0x51 'Q' - {2806, 24, 26, 25, 3, -25}, // 0x52 'R' - {2884, 22, 26, 23, 3, -25}, // 0x53 'S' - {2956, 21, 26, 21, 5, -25}, // 0x54 'T' - {3025, 24, 26, 25, 4, -25}, // 0x55 'U' - {3103, 22, 26, 23, 6, -25}, // 0x56 'V' - {3175, 32, 26, 33, 6, -25}, // 0x57 'W' - {3279, 27, 26, 23, 1, -25}, // 0x58 'X' - {3367, 22, 26, 23, 6, -25}, // 0x59 'Y' - {3439, 25, 26, 21, 1, -25}, // 0x5A 'Z' - {3521, 15, 33, 12, 1, -25}, // 0x5B '[' - {3583, 5, 25, 10, 5, -24}, // 0x5C '\' - {3599, 15, 33, 12, -1, -25}, // 0x5D ']' - {3661, 16, 15, 20, 4, -23}, // 0x5E '^' - {3691, 21, 3, 19, -2, 5}, // 0x5F '_' - {3699, 5, 5, 12, 6, -25}, // 0x60 '`' - {3703, 18, 19, 19, 2, -18}, // 0x61 'a' - {3746, 20, 26, 21, 2, -25}, // 0x62 'b' - {3811, 18, 19, 19, 3, -18}, // 0x63 'c' - {3854, 22, 26, 21, 3, -25}, // 0x64 'd' - {3926, 19, 19, 19, 2, -18}, // 0x65 'e' - {3972, 13, 26, 12, 3, -25}, // 0x66 'f' - {4015, 22, 27, 21, 1, -18}, // 0x67 'g' - {4090, 20, 26, 21, 2, -25}, // 0x68 'h' - {4155, 10, 26, 10, 2, -25}, // 0x69 'i' - {4188, 15, 34, 10, -2, -25}, // 0x6A 'j' - {4252, 21, 26, 19, 2, -25}, // 0x6B 'k' - {4321, 10, 26, 10, 2, -25}, // 0x6C 'l' - {4354, 30, 19, 31, 2, -18}, // 0x6D 'm' - {4426, 20, 19, 21, 2, -18}, // 0x6E 'n' - {4474, 19, 19, 21, 3, -18}, // 0x6F 'o' - {4520, 22, 27, 21, 0, -18}, // 0x70 'p' - {4595, 20, 27, 21, 3, -18}, // 0x71 'q' - {4663, 15, 19, 14, 2, -18}, // 0x72 'r' - {4699, 18, 19, 19, 2, -18}, // 0x73 's' - {4742, 11, 23, 12, 4, -22}, // 0x74 't' - {4774, 20, 19, 21, 3, -18}, // 0x75 'u' - {4822, 18, 19, 19, 5, -18}, // 0x76 'v' - {4865, 27, 19, 27, 4, -18}, // 0x77 'w' - {4930, 22, 19, 19, 1, -18}, // 0x78 'x' - {4983, 22, 27, 19, 1, -18}, // 0x79 'y' - {5058, 19, 19, 17, 1, -18}, // 0x7A 'z' - {5104, 14, 33, 14, 2, -25}, // 0x7B '{' - {5162, 9, 33, 10, 2, -25}, // 0x7C '|' - {5200, 14, 33, 14, 2, -25}, // 0x7D '}' - {5258, 17, 6, 20, 3, -10}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique18pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique18pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 5943 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h deleted file mode 100644 index a20229d..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique24pt7b.h +++ /dev/null @@ -1,895 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xE0, 0x07, 0xF0, 0x1F, 0xC0, 0xFF, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, - 0x80, 0xFE, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x1F, - 0x80, 0x7E, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0xF8, 0x03, 0xE0, 0x0F, - 0x80, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x1F, - 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0xFE, 0x03, 0xF8, 0x00, - 0x7E, 0x0F, 0xDF, 0x83, 0xF7, 0xE0, 0xFF, 0xF0, 0x7E, 0xFC, 0x1F, 0xBF, - 0x07, 0xEF, 0xC1, 0xFB, 0xE0, 0x7C, 0xF8, 0x1F, 0x3C, 0x07, 0x8F, 0x01, - 0xE3, 0x80, 0x70, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x3E, 0x0F, 0x80, 0x03, - 0xE0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x01, 0xF0, 0x7C, 0x00, 0x0F, 0x83, - 0xE0, 0x00, 0xF8, 0x3E, 0x00, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF8, - 0x7F, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0x0F, - 0x83, 0xE0, 0x00, 0x7C, 0x3E, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x3E, 0x0F, - 0x80, 0x03, 0xE0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0xF8, 0x7C, 0x00, - 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0x1F, 0x07, 0xC0, 0x00, 0xF8, 0x3E, - 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x7C, 0x1F, 0x00, 0x07, 0xC1, 0xF0, 0x00, - 0x3E, 0x0F, 0x80, 0x01, 0xF0, 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0xF8, - 0x3C, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x38, 0x00, 0x00, 0x0E, - 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x7F, 0xFF, 0x00, 0x3F, 0xFF, 0xE0, 0x1F, - 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0x07, 0xF3, 0x9F, 0xC1, 0xF8, 0xE3, 0xF0, - 0x7C, 0x38, 0xFC, 0x3F, 0x0E, 0x3F, 0x0F, 0xC7, 0x8F, 0xC3, 0xF1, 0xC0, - 0x00, 0xFE, 0x70, 0x00, 0x3F, 0xDC, 0x00, 0x0F, 0xFF, 0x00, 0x01, 0xFF, - 0xE0, 0x00, 0x3F, 0xFE, 0x00, 0x0F, 0xFF, 0xE0, 0x00, 0xFF, 0xFC, 0x00, - 0x0F, 0xFF, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x77, 0xF8, 0x00, 0x1C, 0xFE, - 0x00, 0x07, 0x3F, 0x8F, 0xE3, 0xCF, 0xE3, 0xF8, 0xE3, 0xF8, 0xFE, 0x38, - 0xFC, 0x3F, 0x8E, 0x7F, 0x0F, 0xF3, 0x9F, 0xC3, 0xFD, 0xFF, 0xE0, 0x7F, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFC, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x38, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x03, 0x80, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x01, 0xF8, 0x00, 0x07, - 0x80, 0x7F, 0xE0, 0x00, 0xF0, 0x0F, 0xFF, 0x00, 0x1E, 0x01, 0xFF, 0xF0, - 0x01, 0xC0, 0x3F, 0xFF, 0x80, 0x3C, 0x07, 0xE1, 0xF8, 0x07, 0x80, 0x78, - 0x07, 0x80, 0xF0, 0x0F, 0x80, 0x78, 0x0E, 0x00, 0xF0, 0x07, 0x81, 0xC0, - 0x0F, 0x00, 0xF8, 0x3C, 0x00, 0xF0, 0x0F, 0x07, 0x80, 0x0F, 0xC3, 0xF0, - 0xF0, 0x00, 0xFF, 0xFE, 0x0E, 0x00, 0x07, 0xFF, 0xC1, 0xE0, 0x00, 0x7F, - 0xF8, 0x3C, 0x00, 0x03, 0xFF, 0x07, 0x80, 0x00, 0x0F, 0xC0, 0x70, 0x00, - 0x00, 0x00, 0x0E, 0x03, 0xF0, 0x00, 0x01, 0xE0, 0xFF, 0xC0, 0x00, 0x3C, - 0x1F, 0xFE, 0x00, 0x03, 0x83, 0xFF, 0xE0, 0x00, 0x70, 0x7F, 0xFF, 0x00, - 0x0F, 0x0F, 0xC3, 0xF0, 0x01, 0xE0, 0xF0, 0x0F, 0x00, 0x3C, 0x1F, 0x00, - 0xF0, 0x03, 0x81, 0xE0, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xF0, 0x0F, 0x01, - 0xE0, 0x1E, 0x01, 0xE0, 0x1F, 0x87, 0xE0, 0x1C, 0x01, 0xFF, 0xFC, 0x03, - 0x80, 0x0F, 0xFF, 0x80, 0x78, 0x00, 0xFF, 0xF0, 0x0F, 0x00, 0x07, 0xFE, - 0x01, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3F, 0xF0, - 0x00, 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0xFF, 0x00, 0x03, 0xFF, 0xF8, 0x00, - 0x3F, 0x9F, 0xC0, 0x03, 0xF8, 0x7E, 0x00, 0x1F, 0xC3, 0xF0, 0x00, 0xFE, - 0x1F, 0x00, 0x07, 0xF1, 0xF8, 0x00, 0x3F, 0xCF, 0xC0, 0x01, 0xFE, 0xFC, - 0x00, 0x07, 0xFF, 0xC0, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0xFF, 0xC0, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x1F, 0xFF, 0x07, 0xC1, 0xFF, - 0xF8, 0x3E, 0x3F, 0xFF, 0xE3, 0xE3, 0xFE, 0x3F, 0x1F, 0x1F, 0xC1, 0xFD, - 0xF1, 0xFC, 0x07, 0xFF, 0x8F, 0xC0, 0x3F, 0xF8, 0xFE, 0x00, 0xFF, 0xC7, - 0xF0, 0x07, 0xFC, 0x3F, 0x80, 0x1F, 0xC1, 0xFC, 0x00, 0xFE, 0x0F, 0xF0, - 0x1F, 0xF8, 0x7F, 0xC1, 0xFF, 0xC1, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, - 0xFC, 0x3F, 0xFF, 0xCF, 0xE0, 0x7F, 0xF8, 0x7F, 0x80, 0xFF, 0x00, 0x00, - 0x7E, 0xFD, 0xFF, 0xEF, 0xDF, 0xBF, 0x7C, 0xF9, 0xE3, 0xC7, 0x00, 0x00, - 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0xC0, 0x07, 0xC0, 0x07, 0xC0, - 0x07, 0xE0, 0x03, 0xE0, 0x03, 0xE0, 0x03, 0xF0, 0x01, 0xF0, 0x01, 0xF8, - 0x00, 0xF8, 0x00, 0xFC, 0x00, 0x7C, 0x00, 0x7E, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x03, 0xF0, 0x01, - 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, - 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x3E, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, - 0x1E, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x7C, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x03, 0xE0, 0x01, 0xF0, 0x00, - 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, - 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, - 0x00, 0x1F, 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xE0, 0x03, - 0xE0, 0x03, 0xF0, 0x01, 0xF0, 0x01, 0xF8, 0x00, 0xF8, 0x00, 0xFC, 0x00, - 0x7C, 0x00, 0x7C, 0x00, 0x7E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3F, 0x00, - 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xE0, 0x03, 0x80, 0x07, - 0x00, 0x0E, 0x07, 0x3C, 0x6F, 0xFF, 0xFF, 0xFF, 0xBF, 0xFE, 0x0F, 0xE0, - 0x1F, 0xC0, 0x7F, 0x81, 0xEF, 0x87, 0x8F, 0x0E, 0x1E, 0x08, 0x10, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, - 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFE, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF8, 0x00, - 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xC7, 0xF1, 0xF8, 0xFE, 0x3F, - 0x8F, 0xE0, 0x38, 0x1C, 0x07, 0x03, 0xC0, 0xE0, 0xF0, 0xFC, 0x3C, 0x0C, - 0x00, 0x7F, 0xFD, 0xFF, 0xF7, 0xFF, 0x9F, 0xFE, 0xFF, 0xFB, 0xFF, 0xE0, - 0x7F, 0x7F, 0x7F, 0x7E, 0xFE, 0xFE, 0xFE, 0x00, 0x00, 0x70, 0x00, 0x0E, - 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x03, - 0x80, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x01, - 0xC0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, - 0x70, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, - 0x38, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, - 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, - 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x1F, 0xFC, 0x00, 0x3F, 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x3F, 0xFF, 0xF0, - 0x1F, 0xC7, 0xF8, 0x1F, 0xC1, 0xFE, 0x1F, 0xC0, 0x7F, 0x0F, 0xC0, 0x3F, - 0x8F, 0xE0, 0x1F, 0xC7, 0xF0, 0x0F, 0xE3, 0xF0, 0x07, 0xF3, 0xF8, 0x03, - 0xF9, 0xFC, 0x01, 0xFC, 0xFC, 0x01, 0xFE, 0xFE, 0x00, 0xFE, 0x7F, 0x00, - 0x7F, 0x3F, 0x80, 0x3F, 0x9F, 0xC0, 0x1F, 0xCF, 0xE0, 0x1F, 0xEF, 0xE0, - 0x0F, 0xE7, 0xF0, 0x07, 0xF3, 0xF8, 0x03, 0xF9, 0xFC, 0x03, 0xF8, 0xFE, - 0x01, 0xFC, 0x7F, 0x00, 0xFE, 0x3F, 0x80, 0xFE, 0x1F, 0xE0, 0x7F, 0x0F, - 0xF8, 0xFF, 0x03, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x80, - 0x1F, 0xFF, 0x00, 0x07, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x0F, - 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x07, 0xE0, 0x0F, 0xF0, 0x3F, 0xF9, 0xFF, - 0xF8, 0xFF, 0xFC, 0xFF, 0xFE, 0x7F, 0xFF, 0x00, 0x3F, 0x80, 0x1F, 0x80, - 0x0F, 0xC0, 0x0F, 0xE0, 0x07, 0xF0, 0x03, 0xF8, 0x01, 0xF8, 0x01, 0xFC, - 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x00, 0x1F, 0x80, 0x1F, 0xC0, 0x0F, - 0xE0, 0x07, 0xF0, 0x03, 0xF0, 0x01, 0xF8, 0x01, 0xFC, 0x00, 0xFE, 0x00, - 0x7F, 0x00, 0x3F, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x00, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x7F, 0xFC, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0xE0, - 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0x07, 0xFC, 0x07, 0xF0, 0x1F, 0xE0, 0x7F, - 0x00, 0x7F, 0x03, 0xF0, 0x03, 0xF8, 0x1F, 0x80, 0x1F, 0xC1, 0xF8, 0x00, - 0xFE, 0x0F, 0xC0, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x1F, 0xF8, 0x00, 0x01, 0xFF, - 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xC0, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x03, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0xFC, 0x1F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xF0, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x0F, 0xFF, 0x80, 0x0F, 0xFF, 0xF0, 0x07, - 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xC0, 0xFE, 0x1F, 0xF0, 0x7F, 0x01, 0xFC, - 0x1F, 0x80, 0x7F, 0x07, 0xE0, 0x1F, 0xC3, 0xF0, 0x07, 0xF0, 0xFC, 0x01, - 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x80, 0x01, - 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xFF, 0x80, - 0x01, 0xFF, 0xE0, 0x00, 0x07, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7F, 0x3F, 0x80, - 0x3F, 0xCF, 0xE0, 0x0F, 0xE3, 0xF8, 0x07, 0xF8, 0xFF, 0x83, 0xFC, 0x3F, - 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xE0, - 0x03, 0xFF, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x7F, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xF0, 0x00, - 0x3F, 0xF8, 0x00, 0x3D, 0xFC, 0x00, 0x3C, 0xFE, 0x00, 0x3E, 0x7E, 0x00, - 0x3E, 0x7F, 0x00, 0x1E, 0x3F, 0x80, 0x1E, 0x1F, 0xC0, 0x1E, 0x0F, 0xC0, - 0x1F, 0x07, 0xE0, 0x1F, 0x07, 0xF0, 0x1F, 0x03, 0xF8, 0x1F, 0x01, 0xFC, - 0x0F, 0x80, 0xFC, 0x0F, 0x80, 0xFE, 0x0F, 0x80, 0x7F, 0x07, 0xFF, 0xFF, - 0xF7, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xFC, 0xFF, 0xFF, - 0xFE, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x7F, 0xFF, 0xE0, 0x0F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, - 0xF0, 0x0F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0x7C, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x03, 0xE3, 0xF0, 0x00, 0x7F, 0xFF, 0x80, 0x1F, 0xFF, 0xF8, 0x03, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xF0, 0x1F, 0xE1, 0xFF, 0x03, 0xF0, 0x1F, 0xE0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0xFE, 0x00, 0xFE, 0x1F, - 0xC0, 0x3F, 0x83, 0xF8, 0x07, 0xF0, 0x7F, 0x83, 0xFC, 0x0F, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFE, 0x00, 0x0F, - 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xFE, - 0x00, 0x1F, 0xFF, 0x80, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0xF8, 0x1F, 0xC3, - 0xFC, 0x1F, 0x80, 0xFE, 0x0F, 0xC0, 0x3F, 0x0F, 0xC0, 0x00, 0x07, 0xE0, - 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xF8, 0xFC, 0x01, 0xF9, - 0xFF, 0x80, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xF8, 0x7F, 0xFF, 0xFC, 0x3F, - 0xE1, 0xFF, 0x1F, 0xE0, 0x7F, 0x8F, 0xE0, 0x1F, 0xCF, 0xE0, 0x0F, 0xE7, - 0xF0, 0x07, 0xF3, 0xF0, 0x03, 0xF9, 0xF8, 0x01, 0xF8, 0xFC, 0x01, 0xFC, - 0x7E, 0x00, 0xFE, 0x3F, 0x00, 0xFE, 0x1F, 0xC0, 0xFF, 0x0F, 0xF0, 0xFF, - 0x03, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x80, 0x1F, 0xFF, - 0x80, 0x07, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xCF, - 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, 0xF8, 0xFF, 0xFF, 0xFE, 0x7F, 0xFF, 0xFF, - 0x9F, 0xFF, 0xFF, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x1F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xF8, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xE0, - 0x00, 0x03, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, - 0x01, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, - 0x0F, 0xFF, 0x80, 0x07, 0xFF, 0xF0, 0x03, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, - 0xC0, 0xFE, 0x0F, 0xF0, 0x3E, 0x01, 0xFC, 0x1F, 0x80, 0x3F, 0x07, 0xC0, - 0x0F, 0xC1, 0xF0, 0x03, 0xF0, 0x7C, 0x01, 0xF8, 0x1F, 0x00, 0xFC, 0x03, - 0xF0, 0x7F, 0x00, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, - 0x07, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0x81, 0xFE, 0x1F, 0xE0, 0xFE, 0x03, - 0xFC, 0x3F, 0x00, 0x7F, 0x1F, 0xC0, 0x1F, 0xC7, 0xE0, 0x07, 0xF3, 0xF8, - 0x01, 0xFC, 0xFE, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0x8F, 0xE0, 0x0F, 0xE3, - 0xFC, 0x07, 0xF0, 0xFF, 0x87, 0xFC, 0x3F, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, - 0x00, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xC0, 0x03, 0xFF, 0xE0, 0x00, 0x3F, - 0xC0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xFC, 0x00, 0x3F, 0xFF, 0x00, - 0x3F, 0xFF, 0xC0, 0x3F, 0xFF, 0xF0, 0x3F, 0xC3, 0xF8, 0x3F, 0xC0, 0xFE, - 0x1F, 0xC0, 0x3F, 0x1F, 0xC0, 0x1F, 0x8F, 0xE0, 0x0F, 0xC7, 0xE0, 0x07, - 0xE7, 0xF0, 0x03, 0xF3, 0xF8, 0x01, 0xF9, 0xFC, 0x01, 0xFC, 0xFE, 0x00, - 0xFE, 0x7F, 0x00, 0xFE, 0x3F, 0xC0, 0xFF, 0x1F, 0xF0, 0xFF, 0x87, 0xFF, - 0xFF, 0xC3, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xE0, 0x3F, 0xF3, 0xF0, 0x07, - 0xE3, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7E, 0x1F, 0xC0, 0x7E, 0x0F, 0xF0, 0xFF, 0x07, 0xFF, 0xFF, 0x01, - 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0x00, 0x0F, 0xFF, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x07, 0xF0, 0x7F, 0x07, 0xF0, 0x7E, 0x0F, 0xE0, - 0xFE, 0x0F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x07, 0xF0, 0x7F, 0x07, - 0xE0, 0xFE, 0x0F, 0xE0, 0xFE, 0x00, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, - 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, - 0x03, 0x80, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0E, 0x00, 0xF0, 0x0F, 0xC0, - 0x3C, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0xE0, 0x00, - 0x01, 0xF8, 0x00, 0x03, 0xFE, 0x00, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0xE0, - 0x1F, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0x1F, 0xFF, 0x80, - 0x0F, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x3F, 0xFE, - 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0xFF, 0xFF, 0x80, 0x07, 0xFF, 0xF8, 0x00, - 0x7F, 0xFF, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x00, 0x01, 0xF8, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x80, 0x1F, 0xFF, 0xFF, 0xC7, 0xFF, - 0xFF, 0xF1, 0xFF, 0xFF, 0xFC, 0x7F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, - 0xFF, 0x1F, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xF8, 0xFF, - 0xFF, 0xFE, 0x3F, 0xFF, 0xFF, 0x80, 0x04, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0x7E, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x0F, 0xFF, 0x00, 0x03, 0xFF, - 0xF8, 0x00, 0x7F, 0xFF, 0x80, 0x07, 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xC0, - 0x01, 0xFF, 0xF0, 0x00, 0x1F, 0xFC, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xFF, - 0xC0, 0x07, 0xFF, 0xE0, 0x0F, 0xFF, 0xF0, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, - 0xE0, 0x1F, 0xFF, 0xC0, 0x07, 0xFF, 0x80, 0x01, 0xFF, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, - 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xF8, 0x0F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFE, - 0x1F, 0xFF, 0xFE, 0x3F, 0xC1, 0xFF, 0x3F, 0x80, 0xFF, 0x7F, 0x00, 0x7F, - 0x7E, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xF8, - 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFE, 0x00, - 0x01, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, - 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xC0, 0x00, - 0x00, 0x00, 0x7F, 0xFF, 0xC0, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0x80, 0x00, - 0x01, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xE0, 0x1F, 0xF8, 0x00, 0x07, - 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0x80, 0x07, 0xE0, - 0x00, 0x00, 0xFE, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF0, 0x0F, 0xC0, 0x00, - 0x00, 0x0F, 0x80, 0xFC, 0x00, 0x00, 0x00, 0x3E, 0x07, 0xC0, 0x03, 0xF1, - 0xF1, 0xF0, 0x7C, 0x00, 0xFF, 0xCF, 0x07, 0x87, 0xE0, 0x1F, 0xFF, 0xF8, - 0x3C, 0x7E, 0x01, 0xF8, 0x7F, 0x81, 0xE3, 0xE0, 0x1F, 0x01, 0xF8, 0x0F, - 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x79, 0xF0, 0x1F, 0x00, 0x7C, 0x03, 0xDF, - 0x00, 0xF0, 0x03, 0xE0, 0x1C, 0xF8, 0x0F, 0x80, 0x1E, 0x01, 0xE7, 0xC0, - 0x78, 0x00, 0xF0, 0x0F, 0x3C, 0x07, 0xC0, 0x0F, 0x00, 0xF3, 0xE0, 0x3C, - 0x00, 0x78, 0x07, 0x9F, 0x03, 0xE0, 0x07, 0x80, 0x78, 0xF8, 0x1F, 0x00, - 0x7C, 0x07, 0xC7, 0xC0, 0xF8, 0x07, 0xC0, 0x7C, 0x3E, 0x07, 0xC0, 0x7E, - 0x07, 0xC1, 0xF0, 0x3F, 0x07, 0xF8, 0xFC, 0x0F, 0x81, 0xFF, 0xFF, 0xFF, - 0xC0, 0x7E, 0x07, 0xFF, 0xBF, 0xFC, 0x01, 0xF0, 0x1F, 0xF8, 0xFF, 0x80, - 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x3F, - 0xE0, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xE0, 0x03, 0x80, 0x00, 0x01, 0xFF, - 0xFF, 0xFE, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, - 0xFE, 0x00, 0x00, 0x00, 0x07, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, - 0xF0, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x7F, - 0xF0, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00, 0xFF, 0xF0, 0x00, 0x00, 0xFF, - 0xF0, 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x03, 0xFB, - 0xF8, 0x00, 0x07, 0xF3, 0xF8, 0x00, 0x07, 0xE3, 0xF8, 0x00, 0x0F, 0xE3, - 0xF8, 0x00, 0x0F, 0xC3, 0xF8, 0x00, 0x1F, 0xC3, 0xF8, 0x00, 0x1F, 0x83, - 0xF8, 0x00, 0x3F, 0x81, 0xFC, 0x00, 0x7F, 0x01, 0xFC, 0x00, 0x7F, 0x01, - 0xFC, 0x00, 0xFE, 0x01, 0xFC, 0x00, 0xFC, 0x01, 0xFC, 0x01, 0xFF, 0xFF, - 0xFC, 0x01, 0xFF, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, - 0xFE, 0x07, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xFE, 0x0F, 0xE0, 0x00, - 0xFE, 0x1F, 0xC0, 0x00, 0xFE, 0x1F, 0xC0, 0x00, 0xFE, 0x3F, 0x80, 0x00, - 0xFE, 0x3F, 0x80, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x7F, 0xFF, 0x00, 0x00, - 0x7F, 0x01, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, - 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, - 0xFF, 0x03, 0xF8, 0x00, 0xFF, 0x03, 0xF8, 0x00, 0x7F, 0x07, 0xF0, 0x00, - 0x7F, 0x07, 0xF0, 0x00, 0x7F, 0x07, 0xF0, 0x00, 0x7E, 0x07, 0xF0, 0x00, - 0xFE, 0x0F, 0xF0, 0x03, 0xFC, 0x0F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, - 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, - 0xF8, 0x1F, 0xFF, 0xFF, 0xF8, 0x1F, 0xC0, 0x07, 0xFC, 0x1F, 0xC0, 0x01, - 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x3F, 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x01, - 0xFC, 0x3F, 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x03, 0xF8, 0x7F, 0x00, 0x07, - 0xF8, 0x7F, 0x00, 0x0F, 0xF0, 0x7F, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xFF, - 0xE0, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0xF0, 0x00, 0x7F, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, - 0xFC, 0x01, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0x03, 0xFE, 0x07, 0xFC, 0x01, - 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xE0, 0x00, 0x7F, 0x1F, 0xE0, 0x00, - 0x7F, 0x1F, 0xC0, 0x00, 0x7F, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xF8, 0xFE, 0x00, 0x03, - 0xF8, 0xFF, 0x00, 0x07, 0xF8, 0xFF, 0x00, 0x07, 0xF0, 0x7F, 0x80, 0x1F, - 0xF0, 0x7F, 0xE0, 0x7F, 0xE0, 0x3F, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, - 0x80, 0x1F, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xFE, 0x00, 0x03, 0xFF, 0xF8, - 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFF, - 0xE0, 0x03, 0xFF, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, - 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xF8, 0x03, 0xFE, 0x07, 0xF0, 0x01, - 0xFF, 0x07, 0xF0, 0x00, 0xFF, 0x07, 0xF0, 0x00, 0x7F, 0x07, 0xF0, 0x00, - 0x7F, 0x0F, 0xF0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, - 0x7F, 0x0F, 0xE0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, 0x7F, 0x1F, 0xC0, 0x00, - 0x7F, 0x1F, 0xC0, 0x00, 0xFE, 0x1F, 0xC0, 0x00, 0xFE, 0x1F, 0xC0, 0x00, - 0xFE, 0x1F, 0xC0, 0x01, 0xFE, 0x3F, 0x80, 0x01, 0xFC, 0x3F, 0x80, 0x01, - 0xFC, 0x3F, 0x80, 0x03, 0xF8, 0x3F, 0x80, 0x07, 0xF8, 0x7F, 0x00, 0x0F, - 0xF0, 0x7F, 0x00, 0x1F, 0xF0, 0x7F, 0x00, 0x7F, 0xE0, 0x7F, 0xFF, 0xFF, - 0xC0, 0x7F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFE, - 0x00, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xFF, 0x80, 0x00, 0x01, 0xFF, 0xFF, - 0xFF, 0x01, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, - 0xFE, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xF8, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xF0, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x00, 0x0F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, - 0xE0, 0x1F, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, - 0xE0, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, - 0x80, 0x00, 0xFF, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, 0xFF, 0x01, 0xFF, 0xFF, - 0xFE, 0x01, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, - 0xFE, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x07, 0xF0, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, - 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, - 0xC0, 0x0F, 0xFF, 0xFF, 0xC0, 0x0F, 0xE0, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x03, 0xFF, - 0xF8, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xFF, 0x80, 0x0F, 0xFF, - 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFC, 0x07, 0xFC, 0x0F, 0xF8, - 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0x3F, 0x87, 0xF0, 0x00, 0x1F, 0xC7, 0xF0, - 0x00, 0x0F, 0xE3, 0xF8, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x00, 0x7F, - 0x00, 0x3F, 0xFF, 0x3F, 0x00, 0x1F, 0xFF, 0xBF, 0x80, 0x0F, 0xFF, 0x9F, - 0xC0, 0x07, 0xFF, 0xCF, 0xE0, 0x03, 0xFF, 0xE7, 0xF0, 0x03, 0xFF, 0xF3, - 0xF8, 0x00, 0x01, 0xF9, 0xFC, 0x00, 0x01, 0xF8, 0xFF, 0x00, 0x00, 0xFC, - 0x7F, 0x80, 0x00, 0xFE, 0x3F, 0xC0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, - 0x87, 0xFC, 0x00, 0xFF, 0x81, 0xFF, 0x81, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFE, 0xF8, 0x03, 0xFF, 0xFC, - 0x78, 0x00, 0x7F, 0xFC, 0x3C, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, 0xF0, 0x00, 0x3F, 0x80, - 0xFE, 0x00, 0x0F, 0xE0, 0x1F, 0xC0, 0x01, 0xFC, 0x07, 0xF0, 0x00, 0x3F, - 0x80, 0xFE, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, 0xFE, 0x03, 0xF8, 0x00, - 0x3F, 0x80, 0xFF, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, 0xFE, 0x03, 0xF8, - 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x07, 0xF0, 0x0F, 0xFF, 0xFF, 0xFE, 0x03, - 0xFF, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xFF, - 0x01, 0xFF, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0xF8, 0x0F, 0xE0, 0x00, - 0x7F, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, 0xF0, - 0x00, 0x7F, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x01, 0xFC, 0x07, - 0xF0, 0x00, 0x3F, 0x80, 0xFE, 0x00, 0x0F, 0xE0, 0x1F, 0xC0, 0x01, 0xFC, - 0x07, 0xF0, 0x00, 0x3F, 0x80, 0xFE, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, - 0xFE, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x7F, 0x00, 0x07, 0xF0, 0x1F, 0xC0, - 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x07, 0xF0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, - 0x0F, 0xE0, 0x3F, 0x81, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, - 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x7F, 0x01, 0xFC, - 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, - 0x03, 0xF8, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0xFE, - 0x03, 0xF8, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x0F, 0xE0, 0xFE, 0x03, 0xFC, 0x1F, 0xC0, 0x7F, 0x03, 0xF8, 0x0F, 0xE0, - 0xFE, 0x01, 0xFC, 0x1F, 0xC0, 0x3F, 0x83, 0xF8, 0x0F, 0xE0, 0x7F, 0x01, - 0xFC, 0x0F, 0xF0, 0xFF, 0x81, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xF8, 0x03, - 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0x80, 0x03, 0xFF, 0xE0, 0x00, 0x1F, 0xE0, - 0x00, 0x00, 0x00, 0xFE, 0x00, 0x0F, 0xF0, 0x0F, 0xF0, 0x00, 0xFF, 0x00, - 0x7F, 0x00, 0x1F, 0xF0, 0x03, 0xF8, 0x01, 0xFF, 0x00, 0x1F, 0xC0, 0x1F, - 0xE0, 0x00, 0xFE, 0x01, 0xFE, 0x00, 0x0F, 0xE0, 0x1F, 0xE0, 0x00, 0x7F, - 0x01, 0xFE, 0x00, 0x03, 0xF8, 0x1F, 0xE0, 0x00, 0x1F, 0xC1, 0xFE, 0x00, - 0x00, 0xFE, 0x1F, 0xE0, 0x00, 0x0F, 0xE3, 0xFE, 0x00, 0x00, 0x7F, 0x3F, - 0xC0, 0x00, 0x03, 0xFB, 0xFC, 0x00, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, - 0xFF, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0x00, 0x7F, 0xFF, 0xC0, - 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0x1F, 0xFF, 0xF8, 0x00, 0x01, 0xFF, - 0x9F, 0xE0, 0x00, 0x0F, 0xF8, 0xFF, 0x00, 0x00, 0x7F, 0x83, 0xFC, 0x00, - 0x03, 0xF8, 0x1F, 0xF0, 0x00, 0x1F, 0xC0, 0x7F, 0x80, 0x01, 0xFC, 0x01, - 0xFE, 0x00, 0x0F, 0xE0, 0x0F, 0xF0, 0x00, 0x7F, 0x00, 0x3F, 0xC0, 0x03, - 0xF8, 0x01, 0xFF, 0x00, 0x3F, 0x80, 0x07, 0xF8, 0x01, 0xFC, 0x00, 0x3F, - 0xE0, 0x0F, 0xE0, 0x00, 0xFF, 0x00, 0x7F, 0x00, 0x07, 0xFC, 0x03, 0xF8, - 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x01, 0xFC, 0x00, 0x01, 0xFC, - 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xF8, - 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, - 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, - 0x00, 0x0F, 0xE0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, - 0x00, 0x1F, 0xC0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, - 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x7F, 0x00, - 0x00, 0x7F, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, - 0x80, 0x03, 0xFF, 0x80, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x7F, 0xE0, 0x01, - 0xFF, 0xC0, 0x3F, 0xF0, 0x00, 0xFF, 0xE0, 0x3F, 0xF8, 0x00, 0xFF, 0xF0, - 0x1F, 0xFC, 0x00, 0x7F, 0xF8, 0x0F, 0xFE, 0x00, 0x7D, 0xF8, 0x07, 0xEF, - 0x00, 0x3E, 0xFC, 0x03, 0xF7, 0x80, 0x3F, 0xFE, 0x03, 0xFB, 0xC0, 0x1F, - 0x7F, 0x01, 0xFD, 0xE0, 0x1F, 0xBF, 0x00, 0xFE, 0xF0, 0x0F, 0x9F, 0x80, - 0x7E, 0x78, 0x0F, 0xDF, 0xC0, 0x7F, 0x3E, 0x07, 0xCF, 0xE0, 0x3F, 0x9F, - 0x07, 0xE7, 0xF0, 0x1F, 0xCF, 0x83, 0xE3, 0xF0, 0x0F, 0xE7, 0xC3, 0xF1, - 0xF8, 0x07, 0xE3, 0xE1, 0xF9, 0xFC, 0x07, 0xF1, 0xF0, 0xF8, 0xFE, 0x03, - 0xF8, 0xF8, 0xFC, 0x7F, 0x01, 0xFC, 0x7C, 0x7C, 0x3F, 0x00, 0xFC, 0x3E, - 0x7E, 0x1F, 0x80, 0x7E, 0x1F, 0x3E, 0x1F, 0xC0, 0x7F, 0x0F, 0xBF, 0x0F, - 0xE0, 0x3F, 0x87, 0xDF, 0x07, 0xE0, 0x1F, 0xC3, 0xFF, 0x83, 0xF0, 0x0F, - 0xC1, 0xFF, 0xC3, 0xF8, 0x0F, 0xE0, 0xFF, 0xC1, 0xFC, 0x07, 0xF0, 0x7F, - 0xE0, 0xFE, 0x03, 0xF8, 0x3F, 0xE0, 0x7E, 0x01, 0xFC, 0x1F, 0xF0, 0x3F, - 0x00, 0xFC, 0x0F, 0xF0, 0x3F, 0x80, 0xFE, 0x07, 0xF8, 0x1F, 0xC0, 0x7F, - 0x03, 0xF8, 0x0F, 0xC0, 0x00, 0x01, 0xFE, 0x00, 0x07, 0xE0, 0x3F, 0xC0, - 0x01, 0xFC, 0x07, 0xFC, 0x00, 0x3F, 0x80, 0xFF, 0x80, 0x07, 0xF0, 0x1F, - 0xF0, 0x00, 0xFC, 0x07, 0xFF, 0x00, 0x3F, 0x80, 0xFF, 0xE0, 0x07, 0xF0, - 0x1F, 0xFC, 0x00, 0xFE, 0x03, 0xFF, 0xC0, 0x1F, 0x80, 0xFF, 0xF8, 0x03, - 0xF0, 0x1F, 0xFF, 0x80, 0xFE, 0x03, 0xFB, 0xF0, 0x1F, 0xC0, 0x7E, 0x7E, - 0x03, 0xF8, 0x0F, 0xC7, 0xE0, 0x7E, 0x03, 0xF8, 0xFC, 0x0F, 0xC0, 0x7F, - 0x1F, 0x83, 0xF8, 0x0F, 0xE1, 0xF8, 0x7F, 0x01, 0xF8, 0x3F, 0x0F, 0xE0, - 0x3F, 0x07, 0xF1, 0xF8, 0x0F, 0xE0, 0x7E, 0x3F, 0x01, 0xFC, 0x0F, 0xCF, - 0xE0, 0x3F, 0x00, 0xFD, 0xFC, 0x07, 0xE0, 0x1F, 0xBF, 0x81, 0xFC, 0x03, - 0xF7, 0xE0, 0x3F, 0x80, 0x3F, 0xFC, 0x07, 0xF0, 0x07, 0xFF, 0x80, 0xFC, - 0x00, 0xFF, 0xF0, 0x1F, 0x80, 0x0F, 0xFC, 0x07, 0xF0, 0x01, 0xFF, 0x80, - 0xFE, 0x00, 0x3F, 0xF0, 0x1F, 0xC0, 0x03, 0xFE, 0x03, 0xF0, 0x00, 0x7F, - 0xC0, 0x7E, 0x00, 0x07, 0xF0, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x01, - 0xFF, 0xFF, 0xF0, 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, - 0x3F, 0xF0, 0x3F, 0xF8, 0x1F, 0xF0, 0x03, 0xFE, 0x07, 0xF0, 0x00, 0x7F, - 0x83, 0xF8, 0x00, 0x0F, 0xF1, 0xFE, 0x00, 0x03, 0xFC, 0x7F, 0x00, 0x00, - 0x7F, 0x3F, 0x80, 0x00, 0x1F, 0xCF, 0xE0, 0x00, 0x07, 0xF7, 0xF0, 0x00, - 0x01, 0xFD, 0xFC, 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x1F, 0xDF, 0xC0, - 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0xFE, 0xFE, - 0x00, 0x00, 0x3F, 0xBF, 0x80, 0x00, 0x0F, 0xEF, 0xE0, 0x00, 0x07, 0xF3, - 0xF8, 0x00, 0x01, 0xFC, 0xFE, 0x00, 0x00, 0xFE, 0x3F, 0xC0, 0x00, 0x7F, - 0x8F, 0xF0, 0x00, 0x1F, 0xC1, 0xFE, 0x00, 0x0F, 0xE0, 0x7F, 0xC0, 0x0F, - 0xF8, 0x1F, 0xFC, 0x0F, 0xFC, 0x03, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, - 0xFF, 0x00, 0x0F, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFF, 0x80, 0x00, 0x1F, - 0xFF, 0x80, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x03, - 0xFF, 0xFF, 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xE0, 0x3F, - 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xC1, 0xFE, 0x00, 0xFF, 0x83, 0xF8, - 0x00, 0xFF, 0x07, 0xF0, 0x00, 0xFE, 0x0F, 0xE0, 0x01, 0xFC, 0x1F, 0xC0, - 0x03, 0xF8, 0x7F, 0x00, 0x07, 0xF0, 0xFE, 0x00, 0x1F, 0xC1, 0xFC, 0x00, - 0x3F, 0x83, 0xF8, 0x00, 0xFE, 0x07, 0xF0, 0x07, 0xFC, 0x1F, 0xFF, 0xFF, - 0xF0, 0x3F, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFE, - 0x03, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0x80, 0x0F, 0xE0, 0x00, 0x00, - 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x0F, - 0xE0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x01, 0xFF, 0xF8, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x01, 0xFF, 0xFF, 0xF0, - 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x3F, 0xF0, 0x3F, - 0xF0, 0x1F, 0xF0, 0x03, 0xFE, 0x07, 0xF8, 0x00, 0x7F, 0x83, 0xFC, 0x00, - 0x0F, 0xF1, 0xFE, 0x00, 0x03, 0xFC, 0x7F, 0x00, 0x00, 0x7F, 0x3F, 0x80, - 0x00, 0x1F, 0xCF, 0xE0, 0x00, 0x07, 0xF3, 0xF0, 0x00, 0x01, 0xFD, 0xFC, - 0x00, 0x00, 0x7F, 0x7F, 0x00, 0x00, 0x1F, 0xDF, 0x80, 0x00, 0x07, 0xFF, - 0xE0, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0xFE, 0xFE, 0x00, 0x00, 0x3F, - 0xBF, 0x80, 0x00, 0x0F, 0xEF, 0xE0, 0x01, 0x87, 0xF3, 0xF8, 0x00, 0xF1, - 0xFC, 0xFE, 0x00, 0x7C, 0xFE, 0x3F, 0xC0, 0x3F, 0xFF, 0x8F, 0xF0, 0x07, - 0xFF, 0xC1, 0xFE, 0x01, 0xFF, 0xE0, 0x7F, 0xC0, 0x3F, 0xF8, 0x1F, 0xFC, - 0x0F, 0xFC, 0x03, 0xFF, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, 0x0F, - 0xFF, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xFF, 0x00, 0x1F, 0xFF, 0x9F, 0x80, - 0x01, 0xFF, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x60, 0x00, 0x01, 0xFF, 0xFF, - 0xF0, 0x00, 0xFF, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, - 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xFC, 0x0F, 0xE0, - 0x03, 0xFE, 0x0F, 0xF0, 0x00, 0xFF, 0x07, 0xF0, 0x00, 0x3F, 0x83, 0xF8, - 0x00, 0x1F, 0xC1, 0xFC, 0x00, 0x0F, 0xC0, 0xFE, 0x00, 0x07, 0xE0, 0xFE, - 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x3F, 0x80, 0x0F, 0xF0, 0x1F, - 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x07, - 0xFF, 0xFF, 0xF0, 0x03, 0xFF, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, 0xFF, 0x01, - 0xFC, 0x00, 0x7F, 0x80, 0xFE, 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x0F, 0xE0, - 0x3F, 0x80, 0x07, 0xF0, 0x1F, 0xC0, 0x03, 0xF8, 0x1F, 0xC0, 0x01, 0xFC, - 0x0F, 0xE0, 0x01, 0xFC, 0x07, 0xF0, 0x00, 0xFE, 0x03, 0xF8, 0x00, 0x7F, - 0x01, 0xFC, 0x00, 0x3F, 0x81, 0xFC, 0x00, 0x1F, 0xC0, 0xFE, 0x00, 0x0F, - 0xE0, 0x7F, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x7F, - 0xFF, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, - 0xF8, 0x0F, 0xFF, 0xFF, 0xF0, 0x3F, 0xC0, 0x7F, 0xC1, 0xFE, 0x00, 0xFF, - 0x07, 0xF0, 0x01, 0xFC, 0x3F, 0x80, 0x07, 0xF0, 0xFE, 0x00, 0x1F, 0xC3, - 0xF8, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0xFF, - 0xE0, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x07, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, - 0xFE, 0x00, 0x1F, 0xFF, 0xFE, 0x00, 0x0F, 0xFF, 0xF8, 0x00, 0x03, 0xFF, - 0xF0, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0x07, 0xF3, 0xF8, 0x00, 0x1F, 0xCF, 0xE0, 0x00, 0x7E, 0x3F, - 0x80, 0x03, 0xF8, 0xFF, 0x00, 0x1F, 0xE3, 0xFF, 0x01, 0xFF, 0x07, 0xFF, - 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, - 0xF0, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0x3F, 0xF0, 0x00, 0x7F, 0xFF, 0xFF, - 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xFE, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x7F, - 0x07, 0xF0, 0x00, 0x7F, 0x07, 0xF0, 0x00, 0xFE, 0x0F, 0xE0, 0x00, 0xFE, - 0x0F, 0xE0, 0x00, 0xFE, 0x0F, 0xE0, 0x00, 0xFE, 0x0F, 0xE0, 0x00, 0xFE, - 0x0F, 0xE0, 0x01, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, - 0x1F, 0xC0, 0x01, 0xFC, 0x1F, 0xC0, 0x01, 0xFC, 0x3F, 0x80, 0x03, 0xF8, - 0x3F, 0x80, 0x03, 0xF8, 0x3F, 0x80, 0x03, 0xF8, 0x3F, 0x80, 0x03, 0xF8, - 0x3F, 0x80, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, - 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x0F, 0xE0, - 0xFE, 0x00, 0x0F, 0xE0, 0xFE, 0x00, 0x0F, 0xE0, 0xFE, 0x00, 0x0F, 0xE0, - 0xFE, 0x00, 0x1F, 0xC0, 0xFE, 0x00, 0x1F, 0xC0, 0xFF, 0x00, 0x3F, 0x80, - 0xFF, 0xC0, 0xFF, 0x80, 0x7F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFE, 0x00, - 0x3F, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0xF8, 0x00, 0x0F, 0xFF, 0xE0, 0x00, - 0x01, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x03, 0xF9, 0xFC, 0x00, 0x0F, 0xE7, - 0xF0, 0x00, 0x7F, 0x1F, 0xC0, 0x01, 0xFC, 0x7F, 0x00, 0x0F, 0xE1, 0xFC, - 0x00, 0x3F, 0x87, 0xF0, 0x01, 0xFC, 0x1F, 0xC0, 0x07, 0xF0, 0x3F, 0x00, - 0x3F, 0x80, 0xFC, 0x00, 0xFC, 0x03, 0xF0, 0x07, 0xF0, 0x0F, 0xC0, 0x1F, - 0x80, 0x3F, 0x80, 0xFE, 0x00, 0xFE, 0x03, 0xF0, 0x03, 0xF8, 0x1F, 0xC0, - 0x0F, 0xE0, 0x7E, 0x00, 0x1F, 0x83, 0xF8, 0x00, 0x7E, 0x0F, 0xC0, 0x01, - 0xF8, 0x7E, 0x00, 0x07, 0xE1, 0xF8, 0x00, 0x1F, 0x8F, 0xC0, 0x00, 0x7E, - 0x3F, 0x00, 0x01, 0xF9, 0xF8, 0x00, 0x07, 0xE7, 0xE0, 0x00, 0x0F, 0xFF, - 0x00, 0x00, 0x3F, 0xFC, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x03, 0xFF, 0x00, - 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x01, 0xFC, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x00, - 0xFE, 0x00, 0x7F, 0x80, 0x1F, 0xFF, 0xC0, 0x0F, 0xF0, 0x03, 0xFB, 0xF8, - 0x01, 0xFE, 0x00, 0x7F, 0x7F, 0x00, 0x7F, 0xC0, 0x1F, 0xCF, 0xE0, 0x0F, - 0xF8, 0x03, 0xF9, 0xFC, 0x03, 0xFF, 0x00, 0xFE, 0x3F, 0x80, 0x7F, 0xE0, - 0x1F, 0xC7, 0xF0, 0x1F, 0xFC, 0x07, 0xF0, 0x7E, 0x03, 0xFF, 0x80, 0xFE, - 0x0F, 0xC0, 0x7D, 0xF0, 0x1F, 0x81, 0xF8, 0x1F, 0xBE, 0x07, 0xF0, 0x3F, - 0x03, 0xE7, 0xC0, 0xFC, 0x07, 0xE0, 0xFC, 0xF8, 0x3F, 0x80, 0xFC, 0x1F, - 0x1F, 0x07, 0xE0, 0x1F, 0x83, 0xE3, 0xE0, 0xFC, 0x03, 0xF0, 0xFC, 0x7C, - 0x3F, 0x00, 0x7E, 0x1F, 0x0F, 0x87, 0xE0, 0x0F, 0xC7, 0xE1, 0xF1, 0xF8, - 0x01, 0xF8, 0xF8, 0x3E, 0x3F, 0x00, 0x3F, 0x3F, 0x07, 0xCF, 0xC0, 0x07, - 0xE7, 0xC0, 0xF9, 0xF8, 0x00, 0xFC, 0xF8, 0x1F, 0x3E, 0x00, 0x1F, 0xBE, - 0x03, 0xEF, 0xC0, 0x01, 0xF7, 0xC0, 0x7D, 0xF0, 0x00, 0x3F, 0xF8, 0x0F, - 0xFE, 0x00, 0x07, 0xFE, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, - 0x00, 0x1F, 0xF0, 0x07, 0xFC, 0x00, 0x03, 0xFE, 0x00, 0xFF, 0x80, 0x00, - 0x7F, 0x80, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0x01, 0xFC, - 0x00, 0x7F, 0x80, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x01, - 0xFC, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x0F, 0xF0, 0x07, 0xFC, 0x00, 0xFF, - 0x00, 0x1F, 0xE0, 0x07, 0xF8, 0x00, 0xFF, 0x00, 0x7F, 0x80, 0x03, 0xFC, - 0x07, 0xF8, 0x00, 0x1F, 0xE0, 0x7F, 0x80, 0x00, 0xFF, 0x07, 0xF8, 0x00, - 0x03, 0xFC, 0x3F, 0x80, 0x00, 0x1F, 0xE3, 0xF8, 0x00, 0x00, 0x7F, 0x3F, - 0xC0, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x00, - 0x7F, 0xFC, 0x00, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x00, 0x0F, 0xFC, 0x00, - 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x00, 0x1F, - 0xF0, 0x00, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x00, - 0x00, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x00, 0xFF, 0xFE, - 0x00, 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x00, 0xFF, 0x3F, 0xC0, 0x00, 0x0F, - 0xF1, 0xFE, 0x00, 0x00, 0xFF, 0x07, 0xF8, 0x00, 0x07, 0xF0, 0x3F, 0xC0, - 0x00, 0x7F, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x07, 0xF8, 0x00, 0x7F, 0x80, - 0x3F, 0xC0, 0x07, 0xF8, 0x01, 0xFF, 0x00, 0x7F, 0x80, 0x07, 0xF8, 0x07, - 0xFC, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x7F, - 0xBF, 0xC0, 0x07, 0xF8, 0xFE, 0x00, 0x3F, 0x87, 0xF8, 0x03, 0xFC, 0x3F, - 0xC0, 0x3F, 0xC0, 0xFE, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x3F, 0xC1, - 0xFE, 0x00, 0xFE, 0x0F, 0xE0, 0x07, 0xF0, 0xFE, 0x00, 0x3F, 0x8F, 0xE0, - 0x00, 0xFE, 0x7F, 0x00, 0x07, 0xF7, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x01, - 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0x80, 0x00, 0x3F, 0xF8, 0x00, 0x01, 0xFF, - 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, - 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, 0xF8, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFF, - 0x01, 0xFF, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xC0, 0x7F, 0xFF, 0xFF, - 0xC0, 0x3F, 0xFF, 0xFF, 0xE0, 0x00, 0x00, 0x7F, 0xF8, 0x03, 0xFF, 0x80, - 0x1F, 0xFC, 0x00, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0x7E, 0x00, 0x03, 0xF0, - 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, - 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x7E, - 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, - 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xF8, 0x00, 0x0F, 0xC0, - 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F, - 0xC0, 0x00, 0x7E, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xFF, 0xC0, - 0x0F, 0xFE, 0x00, 0x7F, 0xF0, 0x07, 0xFF, 0x80, 0x3F, 0xFC, 0x00, 0x81, - 0xC3, 0xC7, 0x8F, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0xC7, 0x8F, 0x1E, - 0x1C, 0x38, 0x70, 0xE1, 0xC3, 0x87, 0x8F, 0x1E, 0x3C, 0x38, 0x70, 0xE1, - 0xC3, 0x87, 0x0F, 0x1E, 0x3C, 0x78, 0xF0, 0x00, 0x7F, 0xF8, 0x03, 0xFF, - 0xC0, 0x1F, 0xFC, 0x00, 0xFF, 0xE0, 0x07, 0xFF, 0x00, 0x01, 0xF8, 0x00, - 0x1F, 0xC0, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, - 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x03, - 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, - 0x03, 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x7F, - 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, - 0x7F, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, - 0x00, 0x7F, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x01, 0xFF, - 0xE0, 0x0F, 0xFE, 0x00, 0x7F, 0xF0, 0x03, 0xFF, 0x80, 0x3F, 0xFC, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0xFE, 0x00, 0x0F, 0xF0, 0x00, 0x7F, 0x80, 0x07, - 0xFC, 0x00, 0x7F, 0xE0, 0x03, 0xFF, 0x80, 0x3E, 0xFC, 0x01, 0xF3, 0xE0, - 0x1F, 0x1F, 0x01, 0xF8, 0xF8, 0x0F, 0x87, 0xE0, 0xFC, 0x3F, 0x07, 0xC0, - 0xF8, 0x7C, 0x07, 0xC7, 0xE0, 0x3E, 0x3E, 0x01, 0xFB, 0xF0, 0x0F, 0xDF, - 0x00, 0x3F, 0xF0, 0x01, 0xF0, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFD, 0xFF, 0xFF, 0xFF, 0xE0, 0xF8, 0xF0, 0xF1, 0xE1, - 0xC3, 0xC3, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x7F, 0x03, 0xFC, 0x3F, 0x00, - 0xFE, 0x1F, 0x80, 0x7E, 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x80, 0x1F, - 0xFF, 0xC0, 0x7F, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0xFF, 0xF7, 0xF0, 0xFF, - 0x83, 0xF8, 0xFF, 0x01, 0xF8, 0x7F, 0x00, 0xFC, 0x7F, 0x00, 0xFE, 0x3F, - 0x80, 0x7F, 0x1F, 0xC0, 0x7F, 0x8F, 0xF0, 0xFF, 0x87, 0xFF, 0xFF, 0xC3, - 0xFF, 0xFF, 0xE0, 0xFF, 0xF7, 0xF8, 0x3F, 0xF3, 0xFC, 0x07, 0xE0, 0x00, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xE0, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x3F, 0x80, 0x1F, - 0x9F, 0xFC, 0x03, 0xF7, 0xFF, 0xC0, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, - 0x83, 0xFF, 0x0F, 0xF0, 0x7F, 0x80, 0xFF, 0x0F, 0xE0, 0x1F, 0xE3, 0xF8, - 0x01, 0xFC, 0x7F, 0x00, 0x3F, 0x8F, 0xC0, 0x07, 0xF1, 0xF8, 0x00, 0xFE, - 0x7F, 0x00, 0x1F, 0xCF, 0xC0, 0x03, 0xF9, 0xF8, 0x00, 0xFE, 0x3F, 0x00, - 0x1F, 0xC7, 0xE0, 0x03, 0xF9, 0xFC, 0x00, 0xFE, 0x3F, 0xC0, 0x3F, 0xC7, - 0xF8, 0x0F, 0xF0, 0xFF, 0x83, 0xFC, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, - 0xC0, 0xFF, 0xFF, 0xF0, 0x1F, 0x9F, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x80, 0x7F, 0xFF, - 0xE0, 0x7F, 0xFF, 0xF0, 0x7F, 0x83, 0xFC, 0x7F, 0x00, 0xFE, 0x3F, 0x00, - 0x7F, 0x3F, 0x80, 0x3F, 0x9F, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x0F, 0xE0, - 0x00, 0x07, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0x9F, - 0xE0, 0x3F, 0x87, 0xF8, 0x3F, 0x83, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, - 0x3F, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x7F, 0x00, 0x3F, - 0xF3, 0xF8, 0x03, 0xFF, 0xDF, 0x80, 0x7F, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, - 0xE0, 0x3F, 0xC3, 0xFF, 0x03, 0xFC, 0x0F, 0xF8, 0x3F, 0xC0, 0x3F, 0x81, - 0xFC, 0x01, 0xFC, 0x1F, 0xC0, 0x07, 0xE0, 0xFE, 0x00, 0x3F, 0x07, 0xF0, - 0x03, 0xF8, 0x7F, 0x00, 0x1F, 0x83, 0xF8, 0x00, 0xFC, 0x1F, 0xC0, 0x07, - 0xE0, 0xFE, 0x00, 0x3F, 0x07, 0xF0, 0x03, 0xF0, 0x3F, 0x80, 0x3F, 0x81, - 0xFC, 0x01, 0xFC, 0x0F, 0xF0, 0x1F, 0xE0, 0x3F, 0xC3, 0xFF, 0x01, 0xFF, - 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xFC, 0x00, 0xFF, 0xCF, - 0xE0, 0x01, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0xFC, 0x00, - 0x7F, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xF0, 0x7F, 0x87, 0xF8, - 0x7F, 0x01, 0xFE, 0x7F, 0x00, 0x7F, 0x3F, 0x80, 0x3F, 0xBF, 0x80, 0x1F, - 0xDF, 0xC0, 0x0F, 0xEF, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFD, 0xFC, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x3F, 0x80, 0x3F, 0x9F, 0xE0, 0x3F, 0x87, 0xF8, 0x3F, 0xC3, 0xFF, - 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0x80, 0x0F, 0xFF, 0x80, 0x00, - 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0x0F, 0xF8, 0x07, 0xFE, - 0x01, 0xFF, 0x80, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xC0, 0x03, 0xF0, 0x01, - 0xFC, 0x03, 0xFF, 0xF1, 0xFF, 0xF8, 0x7F, 0xFE, 0x1F, 0xFF, 0x80, 0xFE, - 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x7F, 0x00, - 0x1F, 0xC0, 0x07, 0xE0, 0x01, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, - 0xE0, 0x03, 0xF0, 0x00, 0xFC, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x07, 0xF0, - 0x01, 0xF8, 0x00, 0x7E, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x07, 0xC3, 0xF8, - 0x01, 0xFF, 0x9F, 0x80, 0x1F, 0xFE, 0xFC, 0x01, 0xFF, 0xFF, 0xE0, 0x1F, - 0xFF, 0xFF, 0x01, 0xFE, 0x1F, 0xF8, 0x1F, 0xE0, 0x3F, 0x80, 0xFE, 0x01, - 0xFC, 0x0F, 0xE0, 0x0F, 0xE0, 0x7F, 0x00, 0x3F, 0x07, 0xF0, 0x01, 0xF8, - 0x3F, 0x80, 0x0F, 0x81, 0xF8, 0x00, 0x7C, 0x1F, 0xC0, 0x07, 0xE0, 0xFE, - 0x00, 0x3F, 0x07, 0xF0, 0x01, 0xF0, 0x3F, 0x80, 0x1F, 0x81, 0xFC, 0x00, - 0xFC, 0x0F, 0xE0, 0x0F, 0xE0, 0x7F, 0x80, 0xFF, 0x03, 0xFE, 0x1F, 0xF0, - 0x0F, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0xFC, 0x01, 0xFF, 0xF7, 0xE0, 0x07, - 0xFE, 0x7F, 0x00, 0x0F, 0xC3, 0xF0, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x01, - 0xFC, 0x0F, 0xE0, 0x0F, 0xC0, 0x7F, 0x00, 0xFE, 0x03, 0xFC, 0x1F, 0xE0, - 0x1F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xE0, 0x01, 0xFF, 0xFC, 0x00, 0x01, - 0xFF, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xE0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFE, 0x0F, - 0xC0, 0x1F, 0xCF, 0xFE, 0x03, 0xFB, 0xFF, 0xE0, 0x7F, 0xFF, 0xFE, 0x0F, - 0xFF, 0xFF, 0xC3, 0xFF, 0x07, 0xF8, 0x7F, 0x80, 0x7F, 0x0F, 0xE0, 0x0F, - 0xE1, 0xFC, 0x01, 0xFC, 0x7F, 0x00, 0x3F, 0x0F, 0xE0, 0x07, 0xE1, 0xFC, - 0x01, 0xFC, 0x3F, 0x00, 0x3F, 0x87, 0xE0, 0x07, 0xF1, 0xFC, 0x00, 0xFC, - 0x3F, 0x80, 0x1F, 0x87, 0xF0, 0x07, 0xF0, 0xFC, 0x00, 0xFE, 0x1F, 0x80, - 0x1F, 0xC7, 0xF0, 0x03, 0xF0, 0xFE, 0x00, 0x7E, 0x1F, 0xC0, 0x1F, 0xC3, - 0xF0, 0x03, 0xF8, 0xFE, 0x00, 0x7F, 0x1F, 0xC0, 0x0F, 0xC0, 0x01, 0xFC, - 0x07, 0xF0, 0x1F, 0x80, 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x3F, 0x80, 0xFE, - 0x03, 0xF8, 0x0F, 0xC0, 0x3F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7E, - 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFC, 0x03, 0xF0, 0x1F, 0xC0, 0x7F, - 0x01, 0xFC, 0x07, 0xE0, 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x00, 0x00, 0x0F, - 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x3F, - 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xF0, 0x00, 0xFE, - 0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, 0x7E, 0x00, 0x1F, 0xC0, 0x03, 0xF8, - 0x00, 0x7F, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x7F, 0x00, 0x0F, 0xE0, - 0x01, 0xFC, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x01, 0xFC, 0x00, 0x3F, 0x80, - 0x07, 0xF0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x07, 0xF0, 0x00, 0xFE, 0x00, - 0x1F, 0x80, 0x03, 0xF0, 0x00, 0xFE, 0x00, 0x1F, 0xC0, 0x03, 0xF8, 0x00, - 0x7E, 0x00, 0x0F, 0xC0, 0x03, 0xF8, 0x03, 0xFF, 0x00, 0x7F, 0xC0, 0x0F, - 0xF8, 0x03, 0xFE, 0x00, 0x7E, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, - 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x7F, 0x00, 0xFE, 0x07, 0xE0, 0x3F, 0xC0, 0x7E, 0x07, - 0xF8, 0x0F, 0xE0, 0xFF, 0x00, 0xFE, 0x1F, 0xC0, 0x0F, 0xE3, 0xF8, 0x00, - 0xFC, 0x7F, 0x00, 0x0F, 0xCF, 0xE0, 0x01, 0xFD, 0xFC, 0x00, 0x1F, 0xFF, - 0x80, 0x01, 0xFF, 0xF8, 0x00, 0x1F, 0xFF, 0x80, 0x03, 0xFF, 0xFC, 0x00, - 0x3F, 0xFF, 0xC0, 0x03, 0xFE, 0xFE, 0x00, 0x3F, 0xCF, 0xE0, 0x03, 0xF0, - 0xFE, 0x00, 0x7F, 0x07, 0xF0, 0x07, 0xF0, 0x7F, 0x00, 0x7F, 0x07, 0xF8, - 0x07, 0xE0, 0x3F, 0x80, 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0xC0, 0xFE, - 0x01, 0xFC, 0x0F, 0xC0, 0x1F, 0xE0, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0x80, - 0x7E, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFC, 0x03, 0xF0, 0x1F, 0xC0, - 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x3F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xC0, - 0x3F, 0x01, 0xFC, 0x07, 0xF0, 0x1F, 0xC0, 0x7E, 0x03, 0xF8, 0x0F, 0xE0, - 0x3F, 0x80, 0xFC, 0x03, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, - 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x00, 0x07, 0xF0, 0xFC, 0x03, 0xF0, 0x07, - 0xE3, 0xFF, 0x0F, 0xFC, 0x07, 0xEF, 0xFF, 0x3F, 0xFE, 0x0F, 0xFF, 0xFF, - 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0xF8, 0x7F, 0xF0, 0xFF, - 0x0F, 0xE0, 0x3F, 0xC0, 0x7F, 0x0F, 0xE0, 0x3F, 0x80, 0x7F, 0x1F, 0xC0, - 0x3F, 0x80, 0x7E, 0x1F, 0xC0, 0x3F, 0x00, 0x7E, 0x1F, 0xC0, 0x3F, 0x00, - 0xFE, 0x1F, 0x80, 0x7F, 0x00, 0xFE, 0x3F, 0x80, 0x7F, 0x00, 0xFC, 0x3F, - 0x80, 0x7F, 0x00, 0xFC, 0x3F, 0x80, 0x7E, 0x01, 0xFC, 0x3F, 0x00, 0x7E, - 0x01, 0xFC, 0x3F, 0x00, 0xFE, 0x01, 0xFC, 0x7F, 0x00, 0xFE, 0x01, 0xF8, - 0x7F, 0x00, 0xFE, 0x01, 0xF8, 0x7F, 0x00, 0xFC, 0x03, 0xF8, 0x7E, 0x01, - 0xFC, 0x03, 0xF8, 0x7E, 0x01, 0xFC, 0x03, 0xF8, 0xFE, 0x01, 0xFC, 0x03, - 0xF0, 0xFE, 0x01, 0xF8, 0x03, 0xF0, 0xFE, 0x01, 0xF8, 0x07, 0xF0, 0x07, - 0xF0, 0xFE, 0x00, 0xFE, 0x7F, 0xF0, 0x1F, 0x9F, 0xFF, 0x03, 0xFF, 0xFF, - 0xF0, 0xFF, 0xFF, 0xFE, 0x1F, 0xF8, 0x3F, 0xC3, 0xFC, 0x03, 0xF8, 0x7F, - 0x00, 0x7F, 0x0F, 0xE0, 0x0F, 0xE3, 0xF8, 0x01, 0xF8, 0x7F, 0x00, 0x3F, - 0x0F, 0xC0, 0x0F, 0xE1, 0xF8, 0x01, 0xFC, 0x7F, 0x00, 0x3F, 0x8F, 0xE0, - 0x07, 0xE1, 0xFC, 0x00, 0xFC, 0x3F, 0x00, 0x3F, 0x87, 0xE0, 0x07, 0xF1, - 0xFC, 0x00, 0xFE, 0x3F, 0x80, 0x1F, 0x87, 0xF0, 0x03, 0xF0, 0xFC, 0x00, - 0xFE, 0x3F, 0x80, 0x1F, 0xC7, 0xF0, 0x03, 0xF8, 0xFE, 0x00, 0x7E, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0xFF, 0x00, 0x1F, 0xFF, 0xE0, 0x0F, 0xFF, - 0xFC, 0x07, 0xFF, 0xFF, 0x83, 0xFC, 0x1F, 0xE1, 0xFE, 0x03, 0xFC, 0xFF, - 0x00, 0xFF, 0x3F, 0x80, 0x1F, 0xDF, 0xC0, 0x07, 0xF7, 0xF0, 0x01, 0xFD, - 0xFC, 0x00, 0x7F, 0xFE, 0x00, 0x1F, 0xFF, 0x80, 0x07, 0xFF, 0xE0, 0x03, - 0xFB, 0xF8, 0x00, 0xFE, 0xFE, 0x00, 0x3F, 0xBF, 0x80, 0x1F, 0xCF, 0xF0, - 0x0F, 0xF3, 0xFC, 0x07, 0xF8, 0x7F, 0x83, 0xFC, 0x1F, 0xFF, 0xFE, 0x03, - 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0x80, 0x0F, 0xFF, 0x80, 0x00, 0x7F, 0x00, - 0x00, 0x01, 0xFC, 0x3F, 0x00, 0x0F, 0xCF, 0xFE, 0x00, 0x7E, 0xFF, 0xF8, - 0x07, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, 0xFF, 0x01, 0xFF, 0x87, 0xF8, 0x0F, - 0xF0, 0x1F, 0xE0, 0xFF, 0x00, 0xFF, 0x07, 0xF0, 0x03, 0xF8, 0x3F, 0x80, - 0x1F, 0xC1, 0xF8, 0x00, 0xFE, 0x0F, 0xC0, 0x07, 0xF0, 0xFE, 0x00, 0x3F, - 0x87, 0xF0, 0x01, 0xFC, 0x3F, 0x00, 0x1F, 0xC1, 0xF8, 0x00, 0xFE, 0x1F, - 0xC0, 0x07, 0xF0, 0xFE, 0x00, 0x7F, 0x07, 0xF8, 0x07, 0xF8, 0x3F, 0xC0, - 0x7F, 0x81, 0xFF, 0x87, 0xF8, 0x1F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFC, - 0x07, 0xF7, 0xFF, 0xC0, 0x3F, 0x1F, 0xF8, 0x01, 0xF8, 0x7F, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x07, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x87, 0xF0, - 0x0F, 0xFE, 0x7F, 0x01, 0xFF, 0xF7, 0xE0, 0x3F, 0xFF, 0x7E, 0x07, 0xFF, - 0xFF, 0xE0, 0xFF, 0x07, 0xFE, 0x1F, 0xE0, 0x3F, 0xE3, 0xFC, 0x03, 0xFC, - 0x3F, 0x80, 0x1F, 0xC7, 0xF0, 0x01, 0xFC, 0x7F, 0x00, 0x1F, 0xC7, 0xF0, - 0x01, 0xF8, 0xFE, 0x00, 0x1F, 0x8F, 0xE0, 0x03, 0xF8, 0xFE, 0x00, 0x3F, - 0x8F, 0xE0, 0x03, 0xF8, 0xFE, 0x00, 0x7F, 0x0F, 0xE0, 0x07, 0xF0, 0xFE, - 0x00, 0xFF, 0x0F, 0xF0, 0x1F, 0xF0, 0x7F, 0x87, 0xFF, 0x07, 0xFF, 0xFF, - 0xE0, 0x3F, 0xFF, 0x7E, 0x03, 0xFF, 0xEF, 0xE0, 0x1F, 0xFC, 0xFE, 0x00, - 0x7F, 0x0F, 0xC0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x07, - 0xF0, 0xF0, 0x7F, 0x3F, 0x07, 0xE7, 0xE0, 0x7E, 0xFE, 0x0F, 0xFF, 0xE0, - 0xFF, 0xFE, 0x0F, 0xFC, 0x00, 0xFF, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x00, - 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x80, - 0x03, 0xF8, 0x00, 0x3F, 0x00, 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xF0, - 0x00, 0x7F, 0x00, 0x07, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0xFE, - 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0xFC, 0x07, - 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x0F, 0xE0, 0xFF, 0x1F, 0xC0, 0x7F, 0x1F, - 0xC0, 0x7F, 0x1F, 0xE0, 0x00, 0x1F, 0xFC, 0x00, 0x1F, 0xFF, 0xC0, 0x0F, - 0xFF, 0xF0, 0x07, 0xFF, 0xF8, 0x03, 0xFF, 0xFC, 0x00, 0x7F, 0xFE, 0x00, - 0x0F, 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFE, 0xFC, 0x00, 0xFE, 0xFE, - 0x00, 0xFE, 0xFF, 0x03, 0xFC, 0x7F, 0xFF, 0xF8, 0x7F, 0xFF, 0xF8, 0x3F, - 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, 0x03, 0xFE, 0x00, 0x03, 0xF0, 0x1F, 0xC0, - 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x3F, 0x80, 0xFE, 0x1F, 0xFF, 0x7F, 0xFD, - 0xFF, 0xFF, 0xFF, 0xC7, 0xF0, 0x1F, 0xC0, 0x7E, 0x01, 0xF8, 0x0F, 0xE0, - 0x3F, 0x80, 0xFE, 0x03, 0xF0, 0x0F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, - 0x1F, 0x80, 0xFE, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0xF0, 0xFF, 0xC3, 0xFF, - 0x07, 0xFC, 0x0F, 0xE0, 0x0F, 0xC0, 0x0F, 0xE1, 0xF8, 0x01, 0xFC, 0x7F, - 0x00, 0x3F, 0x0F, 0xE0, 0x0F, 0xE1, 0xFC, 0x01, 0xFC, 0x3F, 0x00, 0x3F, - 0x87, 0xE0, 0x07, 0xE1, 0xFC, 0x00, 0xFC, 0x3F, 0x80, 0x3F, 0x87, 0xF0, - 0x07, 0xF0, 0xFC, 0x00, 0xFE, 0x1F, 0x80, 0x1F, 0x87, 0xF0, 0x03, 0xF0, - 0xFE, 0x00, 0xFE, 0x1F, 0x80, 0x1F, 0xC3, 0xF0, 0x03, 0xF0, 0xFE, 0x00, - 0x7E, 0x1F, 0xC0, 0x1F, 0xC3, 0xF8, 0x07, 0xF8, 0x7F, 0x01, 0xFF, 0x0F, - 0xF0, 0x7F, 0xC1, 0xFF, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0x03, 0xFF, 0xEF, - 0xE0, 0x3F, 0xF9, 0xFC, 0x01, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x7F, 0x7F, - 0x00, 0x3F, 0xBF, 0x80, 0x3F, 0x8F, 0xC0, 0x1F, 0xC7, 0xE0, 0x1F, 0xC3, - 0xF0, 0x0F, 0xC1, 0xFC, 0x0F, 0xE0, 0xFE, 0x07, 0xE0, 0x7F, 0x07, 0xF0, - 0x3F, 0x83, 0xF0, 0x0F, 0xC3, 0xF8, 0x07, 0xE1, 0xF8, 0x03, 0xF1, 0xFC, - 0x01, 0xF8, 0xFC, 0x00, 0xFC, 0xFC, 0x00, 0x7E, 0x7E, 0x00, 0x3F, 0x7E, - 0x00, 0x0F, 0xBF, 0x00, 0x07, 0xFF, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xFF, - 0x80, 0x00, 0xFF, 0x80, 0x00, 0x7F, 0xC0, 0x00, 0x3F, 0xC0, 0x00, 0x1F, - 0xE0, 0x00, 0x00, 0xFE, 0x03, 0xF8, 0x0F, 0xFF, 0xC0, 0x7F, 0x01, 0xFF, - 0xF8, 0x1F, 0xE0, 0x3F, 0x7F, 0x03, 0xFC, 0x0F, 0xEF, 0xE0, 0xFF, 0x81, - 0xF9, 0xFC, 0x1F, 0xF0, 0x7F, 0x3F, 0x83, 0xFE, 0x0F, 0xC3, 0xF0, 0xFF, - 0xC3, 0xF8, 0x7E, 0x1E, 0xF8, 0x7E, 0x0F, 0xC7, 0xDF, 0x1F, 0xC1, 0xF8, - 0xFB, 0xE3, 0xF0, 0x3F, 0x1E, 0x7C, 0x7E, 0x07, 0xE7, 0xCF, 0x9F, 0x80, - 0xFC, 0xF1, 0xF3, 0xF0, 0x1F, 0xBE, 0x3E, 0xFC, 0x03, 0xF7, 0x87, 0xDF, - 0x80, 0x7E, 0xF0, 0xFF, 0xE0, 0x0F, 0xFE, 0x1F, 0xFC, 0x01, 0xFF, 0x83, - 0xFF, 0x00, 0x3F, 0xF0, 0x7F, 0xE0, 0x07, 0xFC, 0x0F, 0xF8, 0x00, 0x7F, - 0x81, 0xFF, 0x00, 0x0F, 0xF0, 0x3F, 0xC0, 0x01, 0xFC, 0x07, 0xF8, 0x00, - 0x3F, 0x80, 0xFE, 0x00, 0x00, 0x03, 0xFC, 0x07, 0xF8, 0x1F, 0xE0, 0x7F, - 0x80, 0x7F, 0x03, 0xF8, 0x03, 0xF8, 0x3F, 0x80, 0x1F, 0xE3, 0xF8, 0x00, - 0x7F, 0x3F, 0x80, 0x03, 0xF9, 0xFC, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x7F, - 0xFC, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0x7F, 0xC0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x01, 0xFF, 0x80, 0x00, - 0x1F, 0xFE, 0x00, 0x01, 0xFF, 0xF0, 0x00, 0x1F, 0xDF, 0xC0, 0x01, 0xFC, - 0xFE, 0x00, 0x1F, 0xE7, 0xF8, 0x00, 0xFE, 0x1F, 0xC0, 0x0F, 0xE0, 0xFE, - 0x00, 0xFF, 0x07, 0xF8, 0x0F, 0xF0, 0x1F, 0xC0, 0xFF, 0x00, 0xFF, 0x00, - 0x0F, 0xE0, 0x03, 0xF0, 0x7F, 0x00, 0x3F, 0x83, 0xF8, 0x01, 0xF8, 0x1F, - 0xC0, 0x1F, 0xC0, 0xFE, 0x00, 0xFC, 0x03, 0xF8, 0x0F, 0xE0, 0x1F, 0xC0, - 0x7E, 0x00, 0xFE, 0x07, 0xE0, 0x07, 0xF0, 0x3F, 0x00, 0x3F, 0x83, 0xF0, - 0x01, 0xFC, 0x1F, 0x80, 0x0F, 0xE1, 0xF8, 0x00, 0x3F, 0x0F, 0xC0, 0x01, - 0xF8, 0xFC, 0x00, 0x0F, 0xC7, 0xC0, 0x00, 0x7F, 0x7E, 0x00, 0x03, 0xFB, - 0xE0, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0xFF, 0xF0, 0x00, 0x03, 0xFF, 0x80, - 0x00, 0x1F, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, - 0x3F, 0xC0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF8, 0x00, - 0x01, 0xFF, 0x80, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x07, - 0xF8, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xC0, 0xFF, - 0xFF, 0xF0, 0x3F, 0xFF, 0xF8, 0x1F, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0x80, - 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF8, - 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x7F, 0xFF, 0xFC, 0x1F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, - 0xE0, 0xFF, 0xFF, 0xF8, 0x00, 0x00, 0x0F, 0xC0, 0x0F, 0xF0, 0x07, 0xFC, - 0x01, 0xFE, 0x00, 0xFF, 0x80, 0x3E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x01, - 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF8, - 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x3F, 0x00, 0x7F, 0x80, 0x1F, 0x80, 0x07, 0xE0, 0x03, 0xFC, 0x00, 0x3F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, - 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x01, - 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xF8, 0x01, 0xFE, 0x00, 0x7F, - 0x80, 0x0F, 0xE0, 0x01, 0xF8, 0x00, 0x00, 0x78, 0x03, 0xC0, 0x1C, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1C, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x03, 0xC0, 0x1C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, - 0x03, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x70, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x70, - 0x07, 0x80, 0x3C, 0x00, 0x00, 0x7E, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x01, - 0xFE, 0x00, 0x7F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xF0, 0x00, - 0xFF, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x07, 0xF8, 0x03, 0xF0, 0x00, 0xF8, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, - 0x80, 0x07, 0xC0, 0x01, 0xF0, 0x07, 0xFC, 0x01, 0xFE, 0x00, 0xFF, 0x80, - 0x3F, 0xC0, 0x0F, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0xFF, 0x80, 0x07, 0xFF, - 0x03, 0xDF, 0xFE, 0x0F, 0xF0, 0x7F, 0xFB, 0x80, 0xFF, 0xE0, 0x01, 0xFF, - 0x00, 0x03, 0xF0}; - -const GFXglyph FreeSansBoldOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 13, 0, 1}, // 0x20 ' ' - {0, 14, 34, 16, 5, -33}, // 0x21 '!' - {60, 18, 12, 22, 8, -33}, // 0x22 '"' - {87, 29, 33, 26, 2, -31}, // 0x23 '#' - {207, 26, 42, 26, 3, -35}, // 0x24 '$' - {344, 36, 34, 42, 6, -32}, // 0x25 '%' - {497, 29, 35, 34, 4, -33}, // 0x26 '&' - {624, 7, 12, 11, 8, -33}, // 0x27 ''' - {635, 17, 44, 16, 4, -33}, // 0x28 '(' - {729, 17, 44, 16, 0, -34}, // 0x29 ')' - {823, 15, 15, 18, 7, -33}, // 0x2A '*' - {852, 24, 22, 27, 4, -21}, // 0x2B '+' - {918, 10, 15, 13, 1, -6}, // 0x2C ',' - {937, 14, 6, 16, 3, -15}, // 0x2D '-' - {948, 8, 7, 13, 3, -6}, // 0x2E '.' - {955, 20, 34, 13, 0, -32}, // 0x2F '/' - {1040, 25, 35, 26, 4, -33}, // 0x30 '0' - {1150, 17, 33, 26, 8, -32}, // 0x31 '1' - {1221, 29, 34, 26, 1, -33}, // 0x32 '2' - {1345, 26, 35, 26, 3, -33}, // 0x33 '3' - {1459, 25, 32, 26, 3, -31}, // 0x34 '4' - {1559, 27, 34, 26, 3, -32}, // 0x35 '5' - {1674, 25, 35, 26, 4, -33}, // 0x36 '6' - {1784, 26, 33, 26, 6, -32}, // 0x37 '7' - {1892, 26, 35, 26, 3, -33}, // 0x38 '8' - {2006, 25, 35, 26, 4, -33}, // 0x39 '9' - {2116, 12, 25, 16, 5, -24}, // 0x3A ':' - {2154, 14, 33, 16, 3, -24}, // 0x3B ';' - {2212, 26, 23, 27, 4, -22}, // 0x3C '<' - {2287, 26, 18, 27, 3, -19}, // 0x3D '=' - {2346, 26, 23, 27, 1, -21}, // 0x3E '>' - {2421, 24, 35, 29, 8, -34}, // 0x3F '?' - {2526, 45, 41, 46, 3, -34}, // 0x40 '@' - {2757, 32, 34, 34, 1, -33}, // 0x41 'A' - {2893, 32, 34, 34, 4, -33}, // 0x42 'B' - {3029, 32, 36, 34, 5, -34}, // 0x43 'C' - {3173, 32, 34, 34, 4, -33}, // 0x44 'D' - {3309, 32, 34, 31, 4, -33}, // 0x45 'E' - {3445, 32, 34, 29, 3, -33}, // 0x46 'F' - {3581, 33, 36, 37, 5, -34}, // 0x47 'G' - {3730, 35, 34, 34, 3, -33}, // 0x48 'H' - {3879, 14, 34, 13, 3, -33}, // 0x49 'I' - {3939, 27, 35, 26, 3, -33}, // 0x4A 'J' - {4058, 37, 34, 34, 3, -33}, // 0x4B 'K' - {4216, 24, 34, 29, 4, -33}, // 0x4C 'L' - {4318, 41, 34, 39, 3, -33}, // 0x4D 'M' - {4493, 35, 34, 34, 3, -33}, // 0x4E 'N' - {4642, 34, 36, 37, 5, -34}, // 0x4F 'O' - {4795, 31, 34, 31, 4, -33}, // 0x50 'P' - {4927, 34, 37, 37, 5, -34}, // 0x51 'Q' - {5085, 33, 34, 34, 4, -33}, // 0x52 'R' - {5226, 30, 36, 31, 4, -34}, // 0x53 'S' - {5361, 28, 34, 29, 7, -33}, // 0x54 'T' - {5480, 32, 35, 34, 6, -33}, // 0x55 'U' - {5620, 30, 34, 31, 8, -33}, // 0x56 'V' - {5748, 43, 34, 44, 8, -33}, // 0x57 'W' - {5931, 37, 34, 31, 1, -33}, // 0x58 'X' - {6089, 29, 34, 31, 9, -33}, // 0x59 'Y' - {6213, 33, 34, 29, 1, -33}, // 0x5A 'Z' - {6354, 21, 43, 16, 1, -33}, // 0x5B '[' - {6467, 7, 36, 13, 6, -34}, // 0x5C '\' - {6499, 21, 43, 16, -1, -33}, // 0x5D ']' - {6612, 21, 20, 27, 6, -32}, // 0x5E '^' - {6665, 29, 4, 26, -3, 6}, // 0x5F '_' - {6680, 7, 7, 16, 8, -35}, // 0x60 '`' - {6687, 25, 26, 26, 2, -24}, // 0x61 'a' - {6769, 27, 35, 29, 3, -33}, // 0x62 'b' - {6888, 25, 26, 26, 4, -24}, // 0x63 'c' - {6970, 29, 35, 29, 4, -33}, // 0x64 'd' - {7097, 25, 26, 26, 3, -24}, // 0x65 'e' - {7179, 18, 34, 16, 4, -33}, // 0x66 'f' - {7256, 29, 35, 29, 2, -24}, // 0x67 'g' - {7383, 27, 34, 29, 3, -33}, // 0x68 'h' - {7498, 14, 34, 13, 3, -33}, // 0x69 'i' - {7558, 19, 44, 13, -2, -33}, // 0x6A 'j' - {7663, 28, 34, 26, 3, -33}, // 0x6B 'k' - {7782, 14, 34, 13, 3, -33}, // 0x6C 'l' - {7842, 40, 25, 42, 3, -24}, // 0x6D 'm' - {7967, 27, 25, 29, 3, -24}, // 0x6E 'n' - {8052, 26, 26, 29, 4, -24}, // 0x6F 'o' - {8137, 29, 35, 29, 1, -24}, // 0x70 'p' - {8264, 28, 35, 29, 3, -24}, // 0x71 'q' - {8387, 20, 25, 18, 3, -24}, // 0x72 'r' - {8450, 24, 26, 26, 3, -24}, // 0x73 's' - {8528, 14, 32, 16, 5, -30}, // 0x74 't' - {8584, 27, 26, 29, 4, -24}, // 0x75 'u' - {8672, 25, 25, 26, 6, -24}, // 0x76 'v' - {8751, 35, 25, 37, 6, -24}, // 0x77 'w' - {8861, 29, 25, 26, 1, -24}, // 0x78 'x' - {8952, 29, 35, 26, 2, -24}, // 0x79 'y' - {9079, 26, 25, 23, 1, -24}, // 0x7A 'z' - {9161, 18, 43, 18, 4, -33}, // 0x7B '{' - {9258, 13, 43, 13, 3, -33}, // 0x7C '|' - {9328, 18, 43, 18, 2, -33}, // 0x7D '}' - {9425, 22, 8, 27, 5, -14}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique24pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique24pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 10119 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h deleted file mode 100644 index ff72f73..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansBoldOblique9pt7b.h +++ /dev/null @@ -1,229 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansBoldOblique9pt7bBitmaps[] PROGMEM = { - 0x21, 0x8E, 0x73, 0x18, 0xC6, 0x21, 0x19, 0xCE, 0x00, 0xEF, 0xDF, 0xBE, - 0x68, 0x80, 0x06, 0xC1, 0x99, 0xFF, 0xBF, 0xF1, 0xB0, 0x66, 0x0C, 0xC7, - 0xFC, 0xFF, 0x8C, 0x83, 0x30, 0x64, 0x00, 0x02, 0x00, 0xF0, 0x7F, 0x1D, - 0x73, 0xEE, 0x78, 0x0F, 0x00, 0xF8, 0x0F, 0xC1, 0xBB, 0xA7, 0x74, 0xEF, - 0xF8, 0xFE, 0x04, 0x00, 0x80, 0x3C, 0x11, 0xF8, 0x8E, 0x66, 0x31, 0x90, - 0xCE, 0x83, 0xF4, 0x07, 0xB0, 0x00, 0x9E, 0x04, 0xFC, 0x26, 0x31, 0x98, - 0xC4, 0x7E, 0x20, 0xF0, 0x07, 0x80, 0xFC, 0x1D, 0xC1, 0xDC, 0x1F, 0x80, - 0xE0, 0x3E, 0x37, 0x77, 0xE3, 0xEE, 0x3C, 0xE3, 0xCF, 0xFE, 0x3C, 0xE0, - 0xFF, 0xE8, 0x06, 0x06, 0x0C, 0x18, 0x38, 0x30, 0x70, 0x60, 0xE0, 0xE0, - 0xE0, 0xE0, 0xE0, 0xE0, 0x60, 0x70, 0x30, 0x0C, 0x0E, 0x06, 0x07, 0x07, - 0x07, 0x07, 0x07, 0x07, 0x06, 0x0E, 0x0C, 0x1C, 0x18, 0x30, 0x60, 0x60, - 0x32, 0xBF, 0x9C, 0xD2, 0x40, 0x0C, 0x06, 0x07, 0x1F, 0xFF, 0xF0, 0xC0, - 0xE0, 0x60, 0x77, 0x72, 0x6C, 0xFF, 0xC0, 0xFC, 0x02, 0x02, 0x04, 0x04, - 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x0F, 0x07, 0xE3, - 0x9D, 0xC7, 0x71, 0xDC, 0x7E, 0x1F, 0x8E, 0xE3, 0xB8, 0xEE, 0x73, 0xF8, - 0x3C, 0x00, 0x04, 0x3B, 0xF7, 0xE1, 0xC3, 0x06, 0x1C, 0x38, 0x70, 0xC1, - 0x87, 0x00, 0x0F, 0x87, 0xFC, 0xE3, 0xB8, 0x70, 0x0E, 0x03, 0x80, 0xF0, - 0x38, 0x1E, 0x07, 0x01, 0xC0, 0x7F, 0xCF, 0xF8, 0x0F, 0xC7, 0xFC, 0xE3, - 0xB8, 0x70, 0x1C, 0x0F, 0x03, 0xF0, 0x0E, 0x01, 0xDC, 0x3B, 0x8E, 0x7F, - 0x83, 0xE0, 0x03, 0xC0, 0xE0, 0x58, 0x2E, 0x13, 0x8C, 0xE6, 0x33, 0xFE, - 0xFF, 0x81, 0xC0, 0x60, 0x18, 0x0F, 0xE3, 0xFC, 0x60, 0x0C, 0x03, 0x78, - 0x7F, 0x9C, 0x70, 0x0E, 0x01, 0xDC, 0x33, 0x8E, 0x7F, 0x83, 0xE0, 0x0F, - 0x07, 0xE3, 0x9D, 0xC0, 0x7F, 0x1F, 0xEF, 0x3B, 0x8E, 0xE3, 0xB8, 0xCE, - 0x71, 0xF8, 0x3C, 0x00, 0x7F, 0xDF, 0xF0, 0x18, 0x0C, 0x06, 0x03, 0x81, - 0xC0, 0x60, 0x38, 0x0C, 0x07, 0x01, 0x80, 0x60, 0x00, 0x0F, 0x83, 0xFC, - 0xE3, 0x9C, 0x73, 0x9C, 0x3F, 0x0F, 0xE3, 0x8E, 0xE1, 0xDC, 0x3B, 0x8E, - 0x7F, 0xC3, 0xE0, 0x0F, 0x83, 0xF8, 0xE3, 0xB8, 0x77, 0x0E, 0xE1, 0xDC, - 0x7B, 0xFE, 0x3D, 0xC0, 0x33, 0x8E, 0x7F, 0x87, 0xC0, 0x77, 0x00, 0x00, - 0x0E, 0xE0, 0x39, 0xC0, 0x00, 0x01, 0xCE, 0x71, 0x19, 0x80, 0x00, 0x00, - 0x70, 0xFD, 0xF8, 0x70, 0x3F, 0x03, 0xF8, 0x1E, 0x01, 0x80, 0x7F, 0xDF, - 0xF0, 0x00, 0x00, 0xFF, 0xBF, 0xE0, 0x60, 0x1E, 0x07, 0xF0, 0x3F, 0x03, - 0x87, 0xEF, 0xC3, 0x80, 0x00, 0x00, 0x1F, 0x1F, 0xFE, 0x1F, 0x87, 0x01, - 0xC0, 0xE0, 0x70, 0x78, 0x3C, 0x0E, 0x00, 0x00, 0xE0, 0x38, 0x00, 0x00, - 0xFC, 0x00, 0xFF, 0xC0, 0xF0, 0x78, 0x70, 0x07, 0x38, 0x01, 0xCC, 0x3F, - 0x36, 0x31, 0x8D, 0x98, 0x63, 0xC4, 0x11, 0xF3, 0x0C, 0x6C, 0xC6, 0x73, - 0x3E, 0xF8, 0xE7, 0x3C, 0x1E, 0x00, 0x03, 0xFE, 0x00, 0x3F, 0x00, 0x01, - 0xE0, 0x0F, 0x00, 0xF8, 0x07, 0xC0, 0x6F, 0x03, 0x38, 0x31, 0xC3, 0x8E, - 0x1F, 0xF1, 0xFF, 0x8C, 0x1E, 0xE0, 0x76, 0x03, 0x80, 0x1F, 0xF0, 0xFF, - 0xC6, 0x0E, 0x70, 0x73, 0x87, 0x1F, 0xF0, 0xFF, 0x86, 0x0E, 0x70, 0x73, - 0x83, 0x9C, 0x38, 0xFF, 0xC7, 0xF8, 0x00, 0x07, 0xE0, 0xFF, 0x8F, 0x1E, - 0x70, 0x77, 0x00, 0x30, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x03, 0xBC, - 0x38, 0xFF, 0x83, 0xF0, 0x00, 0x1F, 0xE0, 0xFF, 0x86, 0x1E, 0x70, 0x73, - 0x83, 0x9C, 0x1C, 0xC0, 0xE6, 0x07, 0x70, 0x73, 0x83, 0x9C, 0x38, 0xFF, - 0x8F, 0xF0, 0x00, 0x1F, 0xF8, 0xFF, 0x86, 0x00, 0x70, 0x03, 0x80, 0x1F, - 0xF0, 0xFF, 0x86, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xFF, 0xC7, 0xFC, - 0x00, 0x1F, 0xF1, 0xFF, 0x18, 0x03, 0x80, 0x38, 0x03, 0xFC, 0x3F, 0xC7, - 0x00, 0x70, 0x07, 0x00, 0x70, 0x06, 0x00, 0xE0, 0x00, 0x07, 0xC1, 0xFE, - 0x38, 0x77, 0x03, 0x70, 0x0E, 0x00, 0xE1, 0xEE, 0x1E, 0xE0, 0x6E, 0x0E, - 0x70, 0xE7, 0xFC, 0x1F, 0x40, 0x1C, 0x1C, 0x60, 0x63, 0x83, 0x8E, 0x0E, - 0x38, 0x38, 0xFF, 0xC3, 0xFF, 0x1C, 0x1C, 0x70, 0x71, 0xC1, 0xC6, 0x06, - 0x18, 0x38, 0xE0, 0xE0, 0x39, 0xCE, 0x63, 0x39, 0xCE, 0x63, 0x39, 0xCE, - 0x00, 0x00, 0xC0, 0x18, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x00, 0xE0, 0x1C, - 0xE3, 0x9C, 0x73, 0x9C, 0x7F, 0x87, 0xC0, 0x1C, 0x3C, 0x71, 0xC1, 0x8E, - 0x0E, 0x70, 0x3B, 0x80, 0xFC, 0x03, 0xF0, 0x0E, 0xE0, 0x73, 0x81, 0xC7, - 0x07, 0x1C, 0x18, 0x38, 0xE0, 0xF0, 0x1C, 0x07, 0x01, 0x80, 0xE0, 0x38, - 0x0E, 0x03, 0x80, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xFF, 0x7F, 0x80, 0x1E, - 0x1F, 0x1E, 0x1E, 0x3E, 0x1E, 0x3E, 0x3E, 0x36, 0x3E, 0x36, 0x6E, 0x36, - 0x6C, 0x76, 0xCC, 0x76, 0xDC, 0x67, 0x9C, 0x67, 0x98, 0xE7, 0x18, 0xE7, - 0x18, 0x1C, 0x1C, 0x70, 0x63, 0xE1, 0x8F, 0x8E, 0x3E, 0x38, 0xDC, 0xC3, - 0x33, 0x1C, 0xEC, 0x71, 0xF1, 0xC7, 0xC6, 0x1E, 0x18, 0x38, 0xE0, 0xE0, - 0x07, 0xC0, 0xFF, 0x8E, 0x1E, 0xE0, 0x77, 0x03, 0xF0, 0x1F, 0x80, 0xFC, - 0x07, 0xE0, 0x77, 0x03, 0xBC, 0x38, 0xFF, 0x81, 0xF0, 0x00, 0x1F, 0xF0, - 0xFF, 0xC6, 0x0E, 0x70, 0x73, 0x83, 0x9C, 0x38, 0xFF, 0x87, 0xF8, 0x70, - 0x03, 0x80, 0x1C, 0x00, 0xC0, 0x0E, 0x00, 0x00, 0x07, 0xC0, 0xFF, 0x8F, - 0x1C, 0xE0, 0x77, 0x03, 0xB0, 0x1F, 0x80, 0xFC, 0x06, 0xE1, 0x77, 0x1F, - 0x3C, 0x78, 0xFF, 0xC1, 0xF6, 0x00, 0x20, 0x1F, 0xF0, 0xFF, 0xC6, 0x0E, - 0x70, 0x73, 0x83, 0x9C, 0x38, 0xFF, 0x87, 0xFC, 0x70, 0x73, 0x83, 0x9C, - 0x38, 0xC1, 0xC6, 0x0F, 0x00, 0x07, 0xE0, 0xFF, 0xC7, 0x0E, 0x70, 0x73, - 0x80, 0x1F, 0x80, 0x7F, 0x80, 0x7E, 0x00, 0x77, 0x03, 0xBC, 0x38, 0xFF, - 0xC3, 0xF8, 0x00, 0xFF, 0xDF, 0xF8, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x06, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xC0, 0x18, 0x07, 0x00, 0x38, 0x31, 0xC1, - 0x8C, 0x1C, 0xE0, 0xE7, 0x07, 0x38, 0x31, 0xC3, 0x9C, 0x1C, 0xE0, 0xE7, - 0x06, 0x38, 0x70, 0xFF, 0x03, 0xE0, 0x00, 0xE0, 0xFC, 0x1D, 0x87, 0x30, - 0xC6, 0x38, 0xC6, 0x19, 0xC3, 0xB0, 0x7E, 0x0F, 0x80, 0xF0, 0x1C, 0x03, - 0x00, 0xE1, 0xC3, 0xF1, 0xE3, 0xB8, 0xF1, 0xDC, 0x78, 0xCE, 0x6C, 0xE7, - 0x36, 0x63, 0xB3, 0x70, 0xD9, 0xB0, 0x7C, 0xD8, 0x3C, 0x78, 0x1E, 0x3C, - 0x0E, 0x1C, 0x07, 0x0E, 0x00, 0x0E, 0x1C, 0x38, 0xE0, 0xE7, 0x01, 0xD8, - 0x07, 0xE0, 0x0F, 0x00, 0x38, 0x01, 0xE0, 0x0F, 0xC0, 0x77, 0x01, 0x8E, - 0x0E, 0x38, 0x70, 0xF0, 0xE0, 0xEE, 0x39, 0xC7, 0x39, 0xC3, 0x70, 0x7C, - 0x0F, 0x80, 0xE0, 0x1C, 0x03, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x3F, 0xF3, - 0xFF, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x3C, 0x07, - 0x80, 0x70, 0x0F, 0xFC, 0xFF, 0xC0, 0x0F, 0x0F, 0x0C, 0x1C, 0x18, 0x18, - 0x18, 0x18, 0x30, 0x30, 0x30, 0x30, 0x60, 0x60, 0x60, 0x78, 0x78, 0x12, - 0x4C, 0x92, 0x49, 0x26, 0xD9, 0x20, 0x1E, 0x1E, 0x06, 0x06, 0x06, 0x0C, - 0x0C, 0x0C, 0x0C, 0x18, 0x18, 0x18, 0x18, 0x38, 0x30, 0xF0, 0xF0, 0x06, - 0x0E, 0x0E, 0x1B, 0x33, 0x33, 0x63, 0x63, 0xFF, 0xE0, 0xCC, 0x1F, 0x8F, - 0xF3, 0x1C, 0x06, 0x1F, 0x9F, 0xEE, 0x3B, 0x9C, 0xFF, 0x1D, 0xC0, 0x18, - 0x03, 0x00, 0xE0, 0x1D, 0xC3, 0xFC, 0x71, 0xDC, 0x3B, 0x87, 0x70, 0xEE, - 0x39, 0xCF, 0x7F, 0xCF, 0xE0, 0x0F, 0x0F, 0xF7, 0x1D, 0xC0, 0xE0, 0x38, - 0x0E, 0x03, 0x8E, 0x7F, 0x0F, 0x80, 0x00, 0x60, 0x06, 0x00, 0x61, 0xEE, - 0x3F, 0xE7, 0x9C, 0x71, 0xCE, 0x1C, 0xE1, 0xCE, 0x1C, 0xE3, 0x87, 0xF8, - 0x7F, 0x80, 0x1F, 0x0F, 0xE7, 0x1D, 0xC7, 0xFF, 0xFF, 0xFE, 0x03, 0x8E, - 0x7F, 0x0F, 0x80, 0x1C, 0xF3, 0x3F, 0xFD, 0xC7, 0x18, 0x63, 0x8E, 0x30, - 0xC0, 0x0F, 0x71, 0xFE, 0x3C, 0xE3, 0x8E, 0x70, 0xE7, 0x0E, 0x70, 0xC7, - 0x1C, 0x3F, 0xC3, 0xFC, 0x01, 0xCE, 0x38, 0x7F, 0x03, 0xE0, 0x18, 0x03, - 0x00, 0xE0, 0x1D, 0xE3, 0xFE, 0x71, 0xCC, 0x3B, 0x86, 0x70, 0xCC, 0x39, - 0x87, 0x30, 0xEE, 0x18, 0x39, 0xC0, 0x63, 0x39, 0xCE, 0x63, 0x39, 0xCE, - 0x00, 0x06, 0x06, 0x00, 0x0E, 0x0E, 0x0C, 0x0C, 0x1C, 0x1C, 0x1C, 0x18, - 0x18, 0x38, 0x38, 0x30, 0x70, 0xE0, 0x18, 0x03, 0x00, 0xE0, 0x1C, 0xE3, - 0x38, 0x6E, 0x1F, 0x83, 0xF0, 0x7E, 0x0E, 0xE1, 0x9C, 0x73, 0x8E, 0x38, - 0x39, 0xCE, 0x63, 0x39, 0xCE, 0x63, 0x39, 0xCE, 0x00, 0x3B, 0x9E, 0x3F, - 0xFF, 0x39, 0xC7, 0x71, 0xC6, 0x71, 0x86, 0x71, 0x8E, 0x63, 0x8E, 0x63, - 0x8C, 0xE3, 0x8C, 0xE3, 0x1C, 0x3B, 0xC7, 0xFC, 0xE3, 0xB8, 0x77, 0x0C, - 0xE1, 0x98, 0x73, 0x0E, 0xE1, 0xDC, 0x30, 0x0F, 0x87, 0xF9, 0xE7, 0xB8, - 0x7E, 0x0F, 0xC1, 0xF8, 0x77, 0x9E, 0x7F, 0x87, 0xC0, 0x1D, 0xE1, 0xFE, - 0x1C, 0x73, 0x87, 0x38, 0x73, 0x87, 0x38, 0xE3, 0x8E, 0x7F, 0xC7, 0xF8, - 0x60, 0x06, 0x00, 0x60, 0x0E, 0x00, 0x1E, 0xE7, 0xFD, 0xE7, 0x38, 0xEE, - 0x1D, 0xC3, 0xB8, 0x77, 0x1C, 0x7F, 0x8F, 0xF0, 0x0E, 0x01, 0x80, 0x30, - 0x06, 0x00, 0x3B, 0x36, 0x38, 0x70, 0x70, 0x70, 0x60, 0x60, 0xE0, 0xE0, - 0x3E, 0x3F, 0xF8, 0xFC, 0x0F, 0xC3, 0xF8, 0x3D, 0x8E, 0xFE, 0x3E, 0x00, - 0x38, 0xCF, 0xFE, 0x71, 0x86, 0x38, 0xE3, 0x8F, 0x3C, 0x31, 0xDC, 0x77, - 0x19, 0x86, 0x63, 0xB8, 0xEE, 0x33, 0x9C, 0xFF, 0x1F, 0xC0, 0xE1, 0x98, - 0xE6, 0x31, 0x9C, 0x66, 0x1B, 0x86, 0xC1, 0xF0, 0x78, 0x0E, 0x00, 0xE7, - 0x1B, 0x9C, 0xEE, 0x73, 0x3B, 0xDC, 0xEB, 0x63, 0xAD, 0x8F, 0xBC, 0x1C, - 0xF0, 0x73, 0xC1, 0xCE, 0x00, 0x1C, 0xE1, 0xCC, 0x0D, 0x80, 0xF8, 0x0F, - 0x00, 0xF0, 0x1F, 0x03, 0xB8, 0x33, 0x87, 0x38, 0x70, 0xCE, 0x38, 0xC6, - 0x19, 0xC3, 0x30, 0x66, 0x0F, 0x81, 0xF0, 0x3C, 0x03, 0x80, 0x60, 0x18, - 0x0F, 0x01, 0xC0, 0x00, 0x1F, 0xCF, 0xF0, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0x7F, 0xBF, 0xE0, 0x0E, 0x38, 0x61, 0x83, 0x06, 0x0C, 0x78, - 0xF0, 0xC1, 0x83, 0x0E, 0x1C, 0x38, 0x78, 0x70, 0x18, 0xC4, 0x21, 0x18, - 0xC4, 0x21, 0x18, 0xC4, 0x23, 0x18, 0x80, 0x1C, 0x3C, 0x38, 0x70, 0xE1, - 0x83, 0x06, 0x1E, 0x5C, 0x60, 0xC1, 0x83, 0x0C, 0x38, 0xE0, 0x71, 0x8E}; - -const GFXglyph FreeSansBoldOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 5, 13, 6, 2, -12}, // 0x21 '!' - {9, 7, 5, 9, 3, -12}, // 0x22 '"' - {14, 11, 12, 10, 1, -11}, // 0x23 '#' - {31, 11, 16, 10, 1, -13}, // 0x24 '$' - {53, 14, 13, 16, 2, -12}, // 0x25 '%' - {76, 12, 13, 13, 2, -12}, // 0x26 '&' - {96, 3, 5, 4, 3, -12}, // 0x27 ''' - {98, 8, 17, 6, 2, -12}, // 0x28 '(' - {115, 8, 17, 6, -2, -13}, // 0x29 ')' - {132, 6, 6, 7, 3, -12}, // 0x2A '*' - {137, 9, 8, 11, 2, -7}, // 0x2B '+' - {146, 4, 6, 5, 0, -2}, // 0x2C ',' - {149, 5, 2, 6, 1, -5}, // 0x2D '-' - {151, 3, 2, 5, 1, -1}, // 0x2E '.' - {152, 8, 13, 5, 0, -12}, // 0x2F '/' - {165, 10, 13, 10, 1, -12}, // 0x30 '0' - {182, 7, 13, 10, 3, -12}, // 0x31 '1' - {194, 11, 13, 10, 1, -12}, // 0x32 '2' - {212, 11, 13, 10, 1, -12}, // 0x33 '3' - {230, 10, 12, 10, 1, -11}, // 0x34 '4' - {245, 11, 13, 10, 1, -12}, // 0x35 '5' - {263, 10, 13, 10, 2, -12}, // 0x36 '6' - {280, 10, 13, 10, 2, -12}, // 0x37 '7' - {297, 11, 13, 10, 1, -12}, // 0x38 '8' - {315, 11, 13, 10, 1, -12}, // 0x39 '9' - {333, 4, 9, 6, 2, -8}, // 0x3A ':' - {338, 5, 12, 6, 1, -8}, // 0x3B ';' - {346, 10, 9, 11, 1, -8}, // 0x3C '<' - {358, 10, 6, 11, 1, -6}, // 0x3D '=' - {366, 10, 9, 11, 1, -7}, // 0x3E '>' - {378, 10, 13, 11, 3, -12}, // 0x3F '?' - {395, 18, 16, 18, 1, -13}, // 0x40 '@' - {431, 13, 13, 13, 0, -12}, // 0x41 'A' - {453, 13, 13, 13, 1, -12}, // 0x42 'B' - {475, 13, 13, 13, 2, -12}, // 0x43 'C' - {497, 13, 13, 13, 1, -12}, // 0x44 'D' - {519, 13, 13, 12, 1, -12}, // 0x45 'E' - {541, 12, 13, 11, 1, -12}, // 0x46 'F' - {561, 12, 13, 14, 2, -12}, // 0x47 'G' - {581, 14, 13, 13, 1, -12}, // 0x48 'H' - {604, 5, 13, 5, 1, -12}, // 0x49 'I' - {613, 11, 13, 10, 1, -12}, // 0x4A 'J' - {631, 14, 13, 13, 1, -12}, // 0x4B 'K' - {654, 10, 13, 11, 1, -12}, // 0x4C 'L' - {671, 16, 13, 15, 1, -12}, // 0x4D 'M' - {697, 14, 13, 13, 1, -12}, // 0x4E 'N' - {720, 13, 13, 14, 2, -12}, // 0x4F 'O' - {742, 13, 13, 12, 1, -12}, // 0x50 'P' - {764, 13, 14, 14, 2, -12}, // 0x51 'Q' - {787, 13, 13, 13, 1, -12}, // 0x52 'R' - {809, 13, 13, 12, 1, -12}, // 0x53 'S' - {831, 11, 13, 11, 3, -12}, // 0x54 'T' - {849, 13, 13, 13, 2, -12}, // 0x55 'U' - {871, 11, 13, 12, 3, -12}, // 0x56 'V' - {889, 17, 13, 17, 3, -12}, // 0x57 'W' - {917, 14, 13, 12, 0, -12}, // 0x58 'X' - {940, 11, 13, 12, 3, -12}, // 0x59 'Y' - {958, 12, 13, 11, 1, -12}, // 0x5A 'Z' - {978, 8, 17, 6, 0, -12}, // 0x5B '[' - {995, 3, 17, 5, 2, -16}, // 0x5C '\' - {1002, 8, 17, 6, 0, -13}, // 0x5D ']' - {1019, 8, 8, 11, 2, -12}, // 0x5E '^' - {1027, 11, 1, 10, -1, 4}, // 0x5F '_' - {1029, 3, 2, 6, 3, -12}, // 0x60 '`' - {1030, 10, 10, 10, 1, -9}, // 0x61 'a' - {1043, 11, 13, 11, 1, -12}, // 0x62 'b' - {1061, 10, 10, 10, 1, -9}, // 0x63 'c' - {1074, 12, 13, 11, 1, -12}, // 0x64 'd' - {1094, 10, 10, 10, 1, -9}, // 0x65 'e' - {1107, 6, 13, 6, 2, -12}, // 0x66 'f' - {1117, 12, 14, 11, 0, -9}, // 0x67 'g' - {1138, 11, 13, 11, 1, -12}, // 0x68 'h' - {1156, 5, 13, 5, 1, -12}, // 0x69 'i' - {1165, 8, 17, 5, -1, -12}, // 0x6A 'j' - {1182, 11, 13, 10, 1, -12}, // 0x6B 'k' - {1200, 5, 13, 5, 1, -12}, // 0x6C 'l' - {1209, 16, 10, 16, 1, -9}, // 0x6D 'm' - {1229, 11, 10, 11, 1, -9}, // 0x6E 'n' - {1243, 11, 10, 11, 1, -9}, // 0x6F 'o' - {1257, 12, 14, 11, 0, -9}, // 0x70 'p' - {1278, 11, 14, 11, 1, -9}, // 0x71 'q' - {1298, 8, 10, 7, 1, -9}, // 0x72 'r' - {1308, 9, 10, 10, 2, -9}, // 0x73 's' - {1320, 6, 12, 6, 2, -11}, // 0x74 't' - {1329, 10, 10, 11, 2, -9}, // 0x75 'u' - {1342, 10, 10, 10, 2, -9}, // 0x76 'v' - {1355, 14, 10, 14, 2, -9}, // 0x77 'w' - {1373, 12, 10, 10, 0, -9}, // 0x78 'x' - {1388, 11, 14, 10, 1, -9}, // 0x79 'y' - {1408, 10, 10, 9, 0, -9}, // 0x7A 'z' - {1421, 7, 17, 7, 2, -12}, // 0x7B '{' - {1436, 5, 17, 5, 1, -12}, // 0x7C '|' - {1447, 7, 17, 7, 0, -13}, // 0x7D '}' - {1462, 8, 2, 11, 2, -4}}; // 0x7E '~' - -const GFXfont FreeSansBoldOblique9pt7b PROGMEM = { - (uint8_t *)FreeSansBoldOblique9pt7bBitmaps, - (GFXglyph *)FreeSansBoldOblique9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 2136 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h deleted file mode 100644 index ce55f4d..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique12pt7b.h +++ /dev/null @@ -1,304 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique12pt7bBitmaps[] PROGMEM = { - 0x0C, 0x61, 0x86, 0x18, 0x63, 0x0C, 0x30, 0xC2, 0x18, 0x61, 0x00, 0x00, - 0xC3, 0x00, 0xCF, 0x3C, 0xE2, 0x8A, 0x20, 0x01, 0x8C, 0x03, 0x18, 0x06, - 0x60, 0x18, 0xC0, 0x31, 0x83, 0xFF, 0x87, 0xFF, 0x03, 0x18, 0x0C, 0x60, - 0x18, 0xC0, 0x23, 0x03, 0xFF, 0x8F, 0xFF, 0x02, 0x30, 0x0C, 0x60, 0x18, - 0x80, 0x63, 0x00, 0xC6, 0x00, 0x00, 0x80, 0x3F, 0x03, 0xFC, 0x32, 0x73, - 0x91, 0x99, 0x8C, 0xCC, 0x06, 0x60, 0x3E, 0x00, 0x7E, 0x01, 0xFC, 0x0C, - 0xEC, 0x43, 0x62, 0x1B, 0x11, 0x9D, 0x9C, 0x7F, 0xC1, 0xF8, 0x02, 0x00, - 0x10, 0x01, 0x80, 0x00, 0x00, 0x01, 0x83, 0xC0, 0x60, 0xFC, 0x18, 0x30, - 0xC2, 0x0C, 0x18, 0xC1, 0x83, 0x30, 0x38, 0xCC, 0x03, 0xF1, 0x00, 0x3C, - 0x40, 0x00, 0x18, 0xF0, 0x06, 0x3F, 0x01, 0x8C, 0x30, 0x23, 0x06, 0x0C, - 0x60, 0xC3, 0x0E, 0x30, 0xC0, 0xFC, 0x10, 0x0F, 0x00, 0x01, 0xE0, 0x3F, - 0x81, 0x8C, 0x18, 0x60, 0xC3, 0x06, 0x30, 0x1F, 0x00, 0xE0, 0x1F, 0x01, - 0xDC, 0xD8, 0x6D, 0x81, 0xEC, 0x0E, 0x60, 0x73, 0x87, 0xCF, 0xE6, 0x3E, - 0x38, 0xFE, 0xA0, 0x03, 0x06, 0x04, 0x0C, 0x18, 0x18, 0x30, 0x30, 0x60, - 0x60, 0x60, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0x40, 0x60, - 0x60, 0x20, 0x04, 0x06, 0x06, 0x02, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, - 0x03, 0x03, 0x06, 0x06, 0x06, 0x0C, 0x0C, 0x18, 0x18, 0x30, 0x20, 0x60, - 0xC0, 0x0C, 0x0C, 0x49, 0x7F, 0x3C, 0x3C, 0x6C, 0x00, 0x03, 0x00, 0x30, - 0x03, 0x00, 0x30, 0xFF, 0xFF, 0xFF, 0x06, 0x00, 0x60, 0x06, 0x00, 0xC0, - 0x0C, 0x00, 0x77, 0x22, 0x6C, 0xFF, 0xF0, 0xFC, 0x00, 0x40, 0x30, 0x08, - 0x06, 0x01, 0x00, 0xC0, 0x20, 0x18, 0x04, 0x02, 0x00, 0x80, 0x40, 0x10, - 0x08, 0x02, 0x01, 0x00, 0xC0, 0x20, 0x00, 0x07, 0xC0, 0xFE, 0x1C, 0x73, - 0x83, 0x30, 0x36, 0x03, 0x60, 0x36, 0x03, 0xC0, 0x7C, 0x07, 0xC0, 0x6C, - 0x06, 0xC0, 0xEC, 0x0C, 0xE3, 0x87, 0xF0, 0x3E, 0x00, 0x02, 0x0C, 0x77, - 0xEF, 0xC1, 0x83, 0x0C, 0x18, 0x30, 0x61, 0xC3, 0x06, 0x0C, 0x18, 0x60, - 0x03, 0xF0, 0x1F, 0xE0, 0xE1, 0xC7, 0x03, 0x18, 0x0C, 0x00, 0x30, 0x01, - 0x80, 0x0E, 0x00, 0x70, 0x07, 0x80, 0x78, 0x07, 0x80, 0x38, 0x01, 0xC0, - 0x06, 0x00, 0x1F, 0xFC, 0xFF, 0xE0, 0x07, 0xC0, 0xFE, 0x1C, 0x73, 0x03, - 0x30, 0x30, 0x03, 0x00, 0xE0, 0x7C, 0x07, 0xC0, 0x0E, 0x00, 0x60, 0x06, - 0xC0, 0x6C, 0x0C, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x00, 0x60, 0x06, 0x00, - 0xE0, 0x1E, 0x03, 0xE0, 0x6C, 0x0C, 0xC1, 0x8C, 0x30, 0xC6, 0x1C, 0xC1, - 0x8F, 0xFF, 0xFF, 0xE0, 0x18, 0x03, 0x00, 0x30, 0x03, 0x00, 0x0F, 0xF8, - 0x7F, 0xC6, 0x00, 0x30, 0x01, 0x00, 0x1B, 0xC0, 0xFF, 0x06, 0x1C, 0x60, - 0x60, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x0C, 0x60, 0x63, 0x86, 0x0F, 0xE0, - 0x3E, 0x00, 0x03, 0xC0, 0xFE, 0x1C, 0x73, 0x83, 0x30, 0x06, 0x00, 0x67, - 0x87, 0xFC, 0xF0, 0xEE, 0x06, 0xC0, 0x6C, 0x06, 0xC0, 0x4C, 0x0C, 0xE1, - 0x87, 0xF8, 0x3E, 0x00, 0x3F, 0xFB, 0xFF, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, - 0x00, 0xC0, 0x06, 0x00, 0x60, 0x06, 0x00, 0x70, 0x03, 0x00, 0x30, 0x03, - 0x80, 0x18, 0x01, 0xC0, 0x0C, 0x00, 0xE0, 0x00, 0x07, 0xC0, 0xFE, 0x1C, - 0x73, 0x03, 0x30, 0x33, 0x03, 0x38, 0x61, 0xFC, 0x3F, 0xC7, 0x0E, 0x60, - 0x6C, 0x06, 0xC0, 0x6C, 0x0C, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x07, 0xC1, - 0xFE, 0x38, 0x73, 0x03, 0x60, 0x36, 0x03, 0x60, 0x36, 0x07, 0x70, 0xF3, - 0xFE, 0x1E, 0x60, 0x0E, 0x00, 0xCC, 0x1C, 0xE3, 0x87, 0xF0, 0x3C, 0x00, - 0x39, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x39, 0xC0, 0x1C, 0x70, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x07, 0x1C, 0x20, 0x86, 0x30, 0x00, 0x00, 0x01, 0xC0, - 0x3C, 0x0F, 0x81, 0xE0, 0x7C, 0x03, 0x80, 0x0F, 0x00, 0x1F, 0x00, 0x3E, - 0x00, 0x38, 0x00, 0x40, 0x7F, 0xFB, 0xFF, 0x80, 0x00, 0x00, 0x0F, 0xFF, - 0x7F, 0xF0, 0x20, 0x01, 0xC0, 0x07, 0xC0, 0x0F, 0x80, 0x0F, 0x00, 0x1C, - 0x03, 0xE0, 0x78, 0x1F, 0x03, 0xC0, 0x38, 0x00, 0x00, 0x00, 0x0F, 0x87, - 0xF9, 0xC3, 0xB0, 0x3C, 0x06, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x01, 0xC0, - 0x30, 0x0C, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x30, 0x06, 0x00, 0x00, - 0x3F, 0x80, 0x01, 0xFF, 0xE0, 0x0F, 0x01, 0xE0, 0x38, 0x00, 0xE0, 0xE0, - 0x00, 0xC3, 0x87, 0x81, 0xCE, 0x1F, 0xB1, 0x98, 0x71, 0xC3, 0x61, 0x83, - 0x86, 0xC6, 0x06, 0x0F, 0x0C, 0x0C, 0x3E, 0x30, 0x30, 0x6C, 0x60, 0x61, - 0xD8, 0xC1, 0x87, 0x31, 0xC7, 0x1C, 0x61, 0xF7, 0xF0, 0x63, 0xCF, 0x80, - 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xFF, 0xE0, 0x00, 0x7F, 0x00, 0x00, - 0x00, 0x38, 0x00, 0x78, 0x00, 0x7C, 0x00, 0xFC, 0x00, 0xDC, 0x01, 0xCC, - 0x01, 0x8C, 0x03, 0x8C, 0x03, 0x0C, 0x06, 0x0C, 0x0E, 0x0E, 0x0F, 0xFE, - 0x1F, 0xFE, 0x18, 0x06, 0x38, 0x06, 0x30, 0x06, 0x70, 0x06, 0x60, 0x07, - 0x0F, 0xF8, 0x1F, 0xF8, 0x60, 0x38, 0xC0, 0x31, 0x80, 0x63, 0x00, 0xCE, - 0x03, 0x18, 0x0C, 0x3F, 0xF0, 0x7F, 0xF0, 0xC0, 0x73, 0x00, 0x66, 0x00, - 0xCC, 0x01, 0x98, 0x06, 0x70, 0x1C, 0xFF, 0xF1, 0xFF, 0x80, 0x01, 0xF8, - 0x07, 0xFE, 0x0E, 0x0E, 0x1C, 0x03, 0x38, 0x03, 0x30, 0x00, 0x60, 0x00, - 0x60, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x06, - 0xC0, 0x0C, 0xE0, 0x1C, 0x70, 0x78, 0x3F, 0xF0, 0x1F, 0x80, 0x0F, 0xF8, - 0x1F, 0xFC, 0x18, 0x0E, 0x18, 0x07, 0x18, 0x03, 0x18, 0x03, 0x38, 0x03, - 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x70, 0x06, 0x70, 0x06, 0x60, 0x0C, - 0x60, 0x0C, 0x60, 0x18, 0xE0, 0x78, 0xFF, 0xE0, 0xFF, 0x80, 0x0F, 0xFF, - 0x1F, 0xFE, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x18, 0x00, 0x38, 0x00, - 0x30, 0x00, 0x3F, 0xFC, 0x3F, 0xF8, 0x70, 0x00, 0x70, 0x00, 0x60, 0x00, - 0x60, 0x00, 0x60, 0x00, 0xE0, 0x00, 0xFF, 0xF8, 0xFF, 0xF8, 0x0F, 0xFE, - 0x3F, 0xFC, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x0E, 0x00, 0x18, - 0x00, 0x3F, 0xF0, 0x7F, 0xE1, 0xC0, 0x03, 0x80, 0x06, 0x00, 0x0C, 0x00, - 0x18, 0x00, 0x70, 0x00, 0xC0, 0x01, 0x80, 0x00, 0x01, 0xF8, 0x07, 0xFE, - 0x0E, 0x0F, 0x18, 0x03, 0x30, 0x03, 0x70, 0x00, 0x60, 0x00, 0x60, 0x00, - 0xC0, 0x7F, 0xC0, 0x7E, 0xC0, 0x02, 0xC0, 0x06, 0xC0, 0x06, 0xE0, 0x0E, - 0x60, 0x1E, 0x78, 0x3C, 0x3F, 0xE4, 0x0F, 0x84, 0x0C, 0x01, 0x8E, 0x00, - 0xC6, 0x00, 0xE3, 0x00, 0x61, 0x80, 0x30, 0xC0, 0x18, 0xE0, 0x0C, 0x60, - 0x0E, 0x3F, 0xFE, 0x1F, 0xFF, 0x1C, 0x01, 0x8E, 0x01, 0xC6, 0x00, 0xE3, - 0x00, 0x61, 0x80, 0x31, 0xC0, 0x18, 0xC0, 0x1C, 0x60, 0x0C, 0x00, 0x0C, - 0x71, 0x86, 0x18, 0x63, 0x8C, 0x30, 0xC3, 0x1C, 0x61, 0x86, 0x18, 0xE3, - 0x00, 0x00, 0x18, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x38, 0x01, - 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x38, 0x01, 0x8C, 0x0C, 0x60, 0x63, - 0x07, 0x1C, 0x70, 0x7F, 0x01, 0xF0, 0x00, 0x0C, 0x03, 0x87, 0x01, 0xC1, - 0x80, 0xE0, 0x60, 0x60, 0x18, 0x70, 0x06, 0x38, 0x03, 0x9C, 0x00, 0xCE, - 0x00, 0x37, 0x80, 0x0F, 0x70, 0x07, 0x8C, 0x01, 0xC3, 0x80, 0x60, 0x60, - 0x18, 0x1C, 0x06, 0x03, 0x03, 0x80, 0xE0, 0xC0, 0x18, 0x30, 0x07, 0x00, - 0x0C, 0x03, 0x80, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x0E, 0x01, 0x80, 0x30, - 0x06, 0x01, 0xC0, 0x38, 0x06, 0x00, 0xC0, 0x18, 0x07, 0x00, 0xFF, 0xFF, - 0xFC, 0x0E, 0x00, 0x71, 0xE0, 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x1E, 0x1E, - 0x01, 0xE1, 0xE0, 0x36, 0x3B, 0x03, 0x63, 0x30, 0x6E, 0x33, 0x0E, 0xC3, - 0x30, 0xCC, 0x33, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x31, 0xC6, 0x33, 0x18, - 0x61, 0xE1, 0x8E, 0x1E, 0x18, 0xC1, 0xC1, 0x8C, 0x1C, 0x38, 0x0C, 0x01, - 0x8F, 0x00, 0xC7, 0x80, 0x63, 0xE0, 0x71, 0xF0, 0x30, 0xD8, 0x18, 0xEE, - 0x0C, 0x63, 0x06, 0x31, 0xC7, 0x18, 0xE3, 0x0C, 0x31, 0x8C, 0x1C, 0xC6, - 0x06, 0x63, 0x03, 0xF1, 0x80, 0xF1, 0xC0, 0x78, 0xC0, 0x3C, 0x60, 0x0E, - 0x00, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0x83, 0xC3, 0x80, 0x63, 0x00, 0x3B, - 0x80, 0x0D, 0x80, 0x06, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0xF8, 0x00, 0x6C, 0x00, 0x36, 0x00, 0x31, 0x80, 0x30, 0xF0, 0x78, 0x3F, - 0xF0, 0x07, 0xE0, 0x00, 0x0F, 0xF8, 0x3F, 0xF8, 0x60, 0x38, 0xC0, 0x31, - 0x80, 0x63, 0x00, 0xCE, 0x03, 0x18, 0x0E, 0x3F, 0xF8, 0x7F, 0xE1, 0xC0, - 0x03, 0x80, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x70, 0x00, 0xC0, 0x01, - 0x80, 0x00, 0x00, 0xFC, 0x01, 0xFF, 0xC0, 0xF0, 0x78, 0x70, 0x06, 0x38, - 0x01, 0xCC, 0x00, 0x36, 0x00, 0x0D, 0x80, 0x03, 0xC0, 0x00, 0xF0, 0x00, - 0x3C, 0x00, 0x1B, 0x00, 0x06, 0xC0, 0x03, 0x38, 0x1D, 0xC6, 0x03, 0xE1, - 0xE0, 0xF0, 0x3F, 0xFE, 0x03, 0xF1, 0xC0, 0x00, 0x20, 0x0F, 0xFC, 0x1F, - 0xFE, 0x18, 0x07, 0x18, 0x03, 0x18, 0x03, 0x18, 0x03, 0x38, 0x06, 0x30, - 0x0C, 0x3F, 0xF8, 0x3F, 0xF8, 0x70, 0x1C, 0x70, 0x0C, 0x60, 0x0C, 0x60, - 0x0C, 0x60, 0x18, 0xE0, 0x18, 0xC0, 0x18, 0xC0, 0x1C, 0x03, 0xF8, 0x1F, - 0xF8, 0x70, 0x38, 0xC0, 0x33, 0x00, 0x66, 0x00, 0x0C, 0x00, 0x1E, 0x00, - 0x1F, 0xC0, 0x0F, 0xF0, 0x01, 0xF0, 0x00, 0xEC, 0x00, 0xD8, 0x01, 0xB0, - 0x06, 0x70, 0x38, 0x7F, 0xE0, 0x3F, 0x00, 0xFF, 0xFF, 0xFF, 0xF0, 0x70, - 0x01, 0xC0, 0x06, 0x00, 0x18, 0x00, 0x60, 0x03, 0x80, 0x0C, 0x00, 0x30, - 0x00, 0xC0, 0x03, 0x00, 0x1C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, 0x18, - 0x00, 0xE0, 0x00, 0x18, 0x03, 0x38, 0x03, 0x30, 0x07, 0x30, 0x06, 0x30, - 0x06, 0x70, 0x06, 0x70, 0x0E, 0x60, 0x0C, 0x60, 0x0C, 0x60, 0x0C, 0xE0, - 0x0C, 0xC0, 0x1C, 0xC0, 0x18, 0xC0, 0x18, 0xC0, 0x38, 0xE0, 0x70, 0x7F, - 0xE0, 0x1F, 0x80, 0xC0, 0x0F, 0xC0, 0x1B, 0x80, 0x73, 0x00, 0xC6, 0x03, - 0x0C, 0x06, 0x18, 0x18, 0x30, 0x70, 0x60, 0xC0, 0xE3, 0x81, 0xC6, 0x01, - 0x9C, 0x03, 0x30, 0x06, 0xE0, 0x0D, 0x80, 0x1E, 0x00, 0x3C, 0x00, 0x70, - 0x00, 0xC0, 0x70, 0x1F, 0x01, 0xC0, 0x6C, 0x0F, 0x03, 0xB0, 0x3C, 0x0C, - 0xC1, 0xF0, 0x73, 0x06, 0xC1, 0x8C, 0x3B, 0x06, 0x30, 0xC6, 0x30, 0xC7, - 0x18, 0xC3, 0x18, 0x67, 0x0C, 0xE1, 0x98, 0x33, 0x06, 0xE0, 0xDC, 0x1B, - 0x03, 0x60, 0x6C, 0x07, 0x81, 0xE0, 0x1C, 0x07, 0x80, 0x70, 0x1C, 0x01, - 0x80, 0x70, 0x00, 0x07, 0x00, 0xE0, 0xE0, 0x38, 0x0C, 0x0E, 0x01, 0xC3, - 0x80, 0x18, 0xE0, 0x03, 0x98, 0x00, 0x36, 0x00, 0x07, 0x80, 0x00, 0xF0, - 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x01, 0xDC, 0x00, 0x73, 0x80, 0x1C, 0x30, - 0x03, 0x07, 0x00, 0xC0, 0x60, 0x38, 0x0E, 0x0E, 0x00, 0xC0, 0xE0, 0x06, - 0x60, 0x0C, 0x70, 0x1C, 0x70, 0x38, 0x30, 0x70, 0x38, 0x60, 0x18, 0xC0, - 0x1D, 0xC0, 0x1F, 0x80, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x0F, 0xFF, - 0x87, 0xFF, 0x80, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, - 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x01, - 0xC0, 0x01, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xFF, 0xF8, 0x7F, 0xFC, - 0x00, 0x07, 0xC1, 0xE0, 0x60, 0x18, 0x0C, 0x03, 0x00, 0xC0, 0x30, 0x1C, - 0x06, 0x01, 0x80, 0x60, 0x18, 0x0E, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x06, - 0x01, 0x80, 0x60, 0x1E, 0x07, 0x80, 0x93, 0x6C, 0x92, 0x49, 0x24, 0xDB, - 0x24, 0x07, 0x81, 0xE0, 0x18, 0x06, 0x01, 0x80, 0xC0, 0x30, 0x0C, 0x03, - 0x01, 0xC0, 0x60, 0x18, 0x06, 0x01, 0x80, 0xE0, 0x30, 0x0C, 0x03, 0x00, - 0xC0, 0x60, 0x18, 0x1E, 0x0F, 0x80, 0x03, 0x01, 0xC0, 0xD8, 0x36, 0x19, - 0x84, 0x63, 0x19, 0x83, 0x60, 0xC0, 0xFF, 0xFC, 0xE6, 0x23, 0x07, 0xC3, - 0xFC, 0xE3, 0x98, 0x30, 0x06, 0x01, 0x87, 0xF3, 0xC6, 0xC0, 0xD8, 0x3B, - 0x0E, 0x7F, 0x77, 0xCC, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x30, 0x01, 0x80, - 0x0C, 0xF0, 0x7F, 0xC3, 0x87, 0x38, 0x19, 0x80, 0xCC, 0x06, 0x60, 0x32, - 0x03, 0xB0, 0x19, 0xC1, 0xCE, 0x1C, 0x7F, 0xC3, 0x7C, 0x00, 0x0F, 0x83, - 0xF8, 0xE3, 0xB8, 0x36, 0x07, 0xC0, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x1B, - 0x86, 0x3F, 0xC3, 0xE0, 0x00, 0x0C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, - 0x18, 0x3E, 0x61, 0xFF, 0x0E, 0x3C, 0x70, 0x71, 0x80, 0xCE, 0x07, 0x30, - 0x18, 0xC0, 0x63, 0x01, 0x8C, 0x0E, 0x38, 0x78, 0x7F, 0xC0, 0xFB, 0x00, - 0x07, 0xC1, 0xFE, 0x38, 0x77, 0x03, 0x60, 0x37, 0xFF, 0xFF, 0xFC, 0x00, - 0xC0, 0x0C, 0x06, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x07, 0x0F, 0x1C, 0x18, - 0x18, 0x7E, 0x7E, 0x30, 0x30, 0x30, 0x30, 0x60, 0x60, 0x60, 0x60, 0x60, - 0xC0, 0xC0, 0x03, 0xCC, 0x3F, 0xA1, 0xC7, 0x8E, 0x0E, 0x30, 0x38, 0xC0, - 0xC6, 0x03, 0x18, 0x0C, 0x60, 0x71, 0x81, 0xC7, 0x0E, 0x0F, 0xF8, 0x1E, - 0x60, 0x03, 0x80, 0x0C, 0x30, 0x70, 0x7F, 0x80, 0xF8, 0x00, 0x0C, 0x00, - 0xC0, 0x0C, 0x01, 0x80, 0x18, 0x01, 0x9E, 0x1F, 0xF1, 0xC7, 0x38, 0x33, - 0x03, 0x30, 0x33, 0x07, 0x30, 0x66, 0x06, 0x60, 0x66, 0x06, 0x60, 0xC6, - 0x0C, 0x18, 0xC0, 0x00, 0x18, 0xC6, 0x33, 0x18, 0xC6, 0x31, 0x98, 0xC6, - 0x00, 0x01, 0x80, 0xC0, 0x00, 0x00, 0x00, 0x18, 0x1C, 0x0C, 0x06, 0x03, - 0x01, 0x81, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x18, 0x0C, 0x06, 0x03, 0x03, - 0x87, 0x83, 0x80, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x30, 0x01, 0x80, 0x0C, - 0x18, 0x61, 0x83, 0x38, 0x33, 0x81, 0xB8, 0x0F, 0xC0, 0x77, 0x03, 0x18, - 0x30, 0xC1, 0x87, 0x0C, 0x18, 0x60, 0xE3, 0x03, 0x00, 0x18, 0xC6, 0x63, - 0x18, 0xC6, 0x33, 0x18, 0xC6, 0x31, 0x98, 0xC6, 0x00, 0x1B, 0xE3, 0xC3, - 0xFD, 0xFC, 0xF1, 0xE1, 0x9C, 0x18, 0x33, 0x03, 0x06, 0x60, 0xC0, 0xCC, - 0x18, 0x3B, 0x83, 0x06, 0x60, 0x60, 0xCC, 0x0C, 0x19, 0x83, 0x03, 0x30, - 0x60, 0xE6, 0x0C, 0x18, 0x1B, 0xE1, 0xFF, 0x3C, 0x73, 0x83, 0x30, 0x33, - 0x03, 0x30, 0x77, 0x06, 0x60, 0x66, 0x06, 0x60, 0x66, 0x0C, 0x60, 0xC0, - 0x07, 0xC1, 0xFE, 0x38, 0x77, 0x03, 0x60, 0x3E, 0x03, 0xC0, 0x3C, 0x06, - 0xC0, 0x6C, 0x0E, 0xE1, 0xC7, 0xF8, 0x3E, 0x00, 0x0C, 0xF0, 0x3F, 0xE0, - 0xE1, 0xC7, 0x03, 0x1C, 0x0C, 0x60, 0x31, 0x80, 0xCE, 0x07, 0x38, 0x18, - 0xE0, 0xE3, 0xC7, 0x0F, 0xF8, 0x77, 0xC1, 0x80, 0x06, 0x00, 0x18, 0x00, - 0x60, 0x03, 0x80, 0x00, 0x0F, 0x98, 0xFF, 0xCE, 0x3C, 0xE0, 0xE6, 0x03, - 0x70, 0x1B, 0x01, 0x98, 0x0C, 0xC0, 0x66, 0x07, 0x38, 0x78, 0xFF, 0x83, - 0xCC, 0x00, 0x60, 0x07, 0x00, 0x38, 0x01, 0x80, 0x0C, 0x00, 0x1B, 0x8F, - 0xCF, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xE0, 0x60, 0x30, 0x18, 0x0C, 0x06, - 0x00, 0x0F, 0xC1, 0xFF, 0x30, 0x76, 0x03, 0x60, 0x07, 0x80, 0x3F, 0x80, - 0x7E, 0x00, 0x6C, 0x06, 0xE0, 0xCF, 0xF8, 0x3E, 0x00, 0x18, 0x30, 0x67, - 0xEF, 0xC6, 0x0C, 0x30, 0x60, 0xC1, 0x83, 0x0C, 0x18, 0x3C, 0x38, 0x30, - 0x33, 0x03, 0x30, 0x37, 0x06, 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, 0xC0, - 0xEC, 0x0C, 0xC3, 0xCF, 0xFC, 0x7C, 0xC0, 0xC0, 0x78, 0x1B, 0x03, 0x60, - 0xC6, 0x18, 0xC6, 0x19, 0xC3, 0x30, 0x6C, 0x0D, 0x81, 0xE0, 0x3C, 0x03, - 0x00, 0xC1, 0xC3, 0xE1, 0xE1, 0xB0, 0xF0, 0xD8, 0x78, 0xCC, 0x6C, 0x66, - 0x36, 0x63, 0x33, 0x30, 0x99, 0xB0, 0x58, 0xD8, 0x2C, 0x78, 0x1C, 0x3C, - 0x0E, 0x1C, 0x06, 0x0E, 0x00, 0x0C, 0x1C, 0x30, 0xE0, 0xE3, 0x01, 0x98, - 0x07, 0xC0, 0x0E, 0x00, 0x30, 0x01, 0xE0, 0x0F, 0x80, 0x73, 0x01, 0x8C, - 0x0C, 0x38, 0x60, 0x60, 0x18, 0x0C, 0x60, 0x61, 0x83, 0x86, 0x0C, 0x1C, - 0x60, 0x31, 0x80, 0xCC, 0x03, 0x30, 0x0D, 0x80, 0x36, 0x00, 0xF0, 0x03, - 0x80, 0x06, 0x00, 0x30, 0x00, 0xC0, 0x06, 0x00, 0xF0, 0x03, 0x80, 0x00, - 0x1F, 0xF1, 0xFF, 0x00, 0x70, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, - 0x18, 0x03, 0x00, 0x60, 0x0F, 0xFC, 0xFF, 0xC0, 0x07, 0x0E, 0x18, 0x18, - 0x18, 0x18, 0x30, 0x30, 0x30, 0x30, 0x60, 0xE0, 0xE0, 0x60, 0x60, 0x60, - 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xF0, 0x60, 0x0C, 0x30, 0x82, 0x08, 0x61, - 0x84, 0x10, 0x43, 0x0C, 0x20, 0x86, 0x18, 0x41, 0x04, 0x30, 0xC2, 0x00, - 0x00, 0x06, 0x07, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, - 0x01, 0xC0, 0xE0, 0x60, 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, 0x01, - 0x83, 0x83, 0x80, 0x38, 0x0F, 0x82, 0x38, 0x83, 0xE0, 0x38}; - -const GFXglyph FreeSansOblique12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 7, 0, 1}, // 0x20 ' ' - {0, 6, 18, 7, 3, -17}, // 0x21 '!' - {14, 6, 6, 9, 4, -16}, // 0x22 '"' - {19, 15, 18, 13, 1, -17}, // 0x23 '#' - {53, 13, 21, 13, 2, -17}, // 0x24 '$' - {88, 19, 17, 21, 3, -16}, // 0x25 '%' - {129, 13, 17, 16, 2, -16}, // 0x26 '&' - {157, 2, 6, 5, 4, -16}, // 0x27 ''' - {159, 8, 23, 8, 3, -17}, // 0x28 '(' - {182, 8, 23, 8, 0, -16}, // 0x29 ')' - {205, 8, 8, 9, 4, -17}, // 0x2A '*' - {213, 12, 11, 14, 2, -10}, // 0x2B '+' - {230, 4, 6, 7, 1, -1}, // 0x2C ',' - {233, 6, 2, 8, 2, -7}, // 0x2D '-' - {235, 3, 2, 7, 2, -1}, // 0x2E '.' - {236, 10, 18, 7, 0, -17}, // 0x2F '/' - {259, 12, 17, 13, 2, -16}, // 0x30 '0' - {285, 7, 17, 13, 5, -16}, // 0x31 '1' - {300, 14, 17, 13, 1, -16}, // 0x32 '2' - {330, 12, 17, 13, 2, -16}, // 0x33 '3' - {356, 12, 17, 13, 2, -16}, // 0x34 '4' - {382, 13, 17, 13, 2, -16}, // 0x35 '5' - {410, 12, 17, 13, 2, -16}, // 0x36 '6' - {436, 13, 17, 13, 3, -16}, // 0x37 '7' - {464, 12, 17, 13, 2, -16}, // 0x38 '8' - {490, 12, 17, 13, 2, -16}, // 0x39 '9' - {516, 5, 12, 7, 3, -11}, // 0x3A ':' - {524, 6, 16, 7, 2, -11}, // 0x3B ';' - {536, 13, 12, 14, 2, -11}, // 0x3C '<' - {556, 13, 6, 14, 2, -8}, // 0x3D '=' - {566, 13, 12, 14, 1, -10}, // 0x3E '>' - {586, 11, 18, 13, 4, -17}, // 0x3F '?' - {611, 23, 21, 24, 2, -17}, // 0x40 '@' - {672, 16, 18, 16, 0, -17}, // 0x41 'A' - {708, 15, 18, 16, 2, -17}, // 0x42 'B' - {742, 16, 18, 17, 2, -17}, // 0x43 'C' - {778, 16, 18, 17, 2, -17}, // 0x44 'D' - {814, 16, 18, 16, 2, -17}, // 0x45 'E' - {850, 15, 18, 14, 2, -17}, // 0x46 'F' - {884, 16, 18, 19, 3, -17}, // 0x47 'G' - {920, 17, 18, 17, 2, -17}, // 0x48 'H' - {959, 6, 18, 7, 2, -17}, // 0x49 'I' - {973, 13, 18, 12, 1, -17}, // 0x4A 'J' - {1003, 18, 18, 16, 2, -17}, // 0x4B 'K' - {1044, 11, 18, 13, 2, -17}, // 0x4C 'L' - {1069, 20, 18, 20, 2, -17}, // 0x4D 'M' - {1114, 17, 18, 18, 2, -17}, // 0x4E 'N' - {1153, 17, 18, 18, 2, -17}, // 0x4F 'O' - {1192, 15, 18, 15, 2, -17}, // 0x50 'P' - {1226, 18, 19, 19, 2, -17}, // 0x51 'Q' - {1269, 16, 18, 17, 2, -17}, // 0x52 'R' - {1305, 15, 18, 16, 2, -17}, // 0x53 'S' - {1339, 14, 18, 15, 4, -17}, // 0x54 'T' - {1371, 16, 18, 17, 3, -17}, // 0x55 'U' - {1407, 15, 18, 15, 4, -17}, // 0x56 'V' - {1441, 22, 18, 22, 4, -17}, // 0x57 'W' - {1491, 19, 18, 16, 0, -17}, // 0x58 'X' - {1534, 16, 18, 16, 4, -17}, // 0x59 'Y' - {1570, 17, 18, 15, 1, -17}, // 0x5A 'Z' - {1609, 10, 23, 7, 0, -17}, // 0x5B '[' - {1638, 3, 18, 7, 4, -17}, // 0x5C '\' - {1645, 10, 23, 7, -1, -16}, // 0x5D ']' - {1674, 10, 9, 11, 2, -16}, // 0x5E '^' - {1686, 14, 1, 13, -1, 4}, // 0x5F '_' - {1688, 4, 4, 8, 4, -17}, // 0x60 '`' - {1690, 11, 13, 13, 2, -12}, // 0x61 'a' - {1708, 13, 18, 13, 1, -17}, // 0x62 'b' - {1738, 11, 13, 12, 2, -12}, // 0x63 'c' - {1756, 14, 18, 13, 2, -17}, // 0x64 'd' - {1788, 12, 13, 13, 2, -12}, // 0x65 'e' - {1808, 8, 18, 6, 2, -17}, // 0x66 'f' - {1826, 14, 18, 13, 1, -12}, // 0x67 'g' - {1858, 12, 18, 13, 1, -17}, // 0x68 'h' - {1885, 5, 18, 5, 2, -17}, // 0x69 'i' - {1897, 9, 23, 6, -1, -17}, // 0x6A 'j' - {1923, 13, 18, 12, 1, -17}, // 0x6B 'k' - {1953, 5, 18, 5, 2, -17}, // 0x6C 'l' - {1965, 19, 13, 20, 1, -12}, // 0x6D 'm' - {1996, 12, 13, 13, 1, -12}, // 0x6E 'n' - {2016, 12, 13, 13, 2, -12}, // 0x6F 'o' - {2036, 14, 18, 14, 0, -12}, // 0x70 'p' - {2068, 13, 18, 13, 2, -12}, // 0x71 'q' - {2098, 9, 13, 8, 1, -12}, // 0x72 'r' - {2113, 12, 13, 12, 1, -12}, // 0x73 's' - {2133, 7, 16, 6, 2, -15}, // 0x74 't' - {2147, 12, 13, 13, 2, -12}, // 0x75 'u' - {2167, 11, 13, 12, 3, -12}, // 0x76 'v' - {2185, 17, 13, 17, 3, -12}, // 0x77 'w' - {2213, 14, 13, 12, 0, -12}, // 0x78 'x' - {2236, 14, 18, 11, 0, -12}, // 0x79 'y' - {2268, 12, 13, 12, 1, -12}, // 0x7A 'z' - {2288, 8, 23, 8, 3, -17}, // 0x7B '{' - {2311, 6, 23, 6, 1, -17}, // 0x7C '|' - {2329, 9, 23, 8, -1, -16}, // 0x7D '}' - {2355, 11, 5, 14, 3, -10}}; // 0x7E '~' - -const GFXfont FreeSansOblique12pt7b PROGMEM = { - (uint8_t *)FreeSansOblique12pt7bBitmaps, - (GFXglyph *)FreeSansOblique12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 3034 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h deleted file mode 100644 index f85b07f..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique18pt7b.h +++ /dev/null @@ -1,520 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique18pt7bBitmaps[] PROGMEM = { - 0x03, 0x83, 0x81, 0xC0, 0xE0, 0x70, 0x78, 0x38, 0x1C, 0x0E, 0x07, 0x07, - 0x83, 0x81, 0xC0, 0xE0, 0x60, 0x30, 0x30, 0x18, 0x0C, 0x04, 0x00, 0x00, - 0x01, 0xC0, 0xE0, 0x70, 0x78, 0x00, 0x71, 0xDC, 0x7F, 0x3F, 0x8E, 0xE3, - 0xB8, 0xEC, 0x33, 0x0C, 0xC3, 0x00, 0x00, 0x38, 0x70, 0x01, 0xC3, 0x80, - 0x0C, 0x18, 0x00, 0xE1, 0xC0, 0x06, 0x0C, 0x00, 0x70, 0xE0, 0x03, 0x87, - 0x03, 0xFF, 0xFF, 0x1F, 0xFF, 0xF0, 0xFF, 0xFF, 0x80, 0x60, 0xC0, 0x07, - 0x0E, 0x00, 0x30, 0x60, 0x03, 0x87, 0x00, 0x18, 0x30, 0x1F, 0xFF, 0xF8, - 0xFF, 0xFF, 0xC7, 0xFF, 0xFC, 0x07, 0x0E, 0x00, 0x30, 0x70, 0x03, 0x87, - 0x00, 0x1C, 0x38, 0x00, 0xC1, 0x80, 0x0E, 0x1C, 0x00, 0x60, 0xC0, 0x00, - 0x00, 0x0C, 0x00, 0x07, 0xF8, 0x01, 0xFF, 0xC0, 0x3F, 0xFE, 0x07, 0x99, - 0xF0, 0xF1, 0x87, 0x0E, 0x18, 0x71, 0xC1, 0x87, 0x1C, 0x38, 0x01, 0xC3, - 0x00, 0x1C, 0x30, 0x01, 0xE3, 0x00, 0x0F, 0xB0, 0x00, 0xFF, 0x80, 0x03, - 0xFF, 0x00, 0x0F, 0xF8, 0x00, 0x6F, 0xC0, 0x06, 0x3C, 0x00, 0xC1, 0xCE, - 0x0C, 0x1C, 0xE0, 0xC1, 0xCE, 0x0C, 0x38, 0xF1, 0xC3, 0x8F, 0x98, 0xF0, - 0x7F, 0xFE, 0x03, 0xFF, 0xC0, 0x0F, 0xF0, 0x00, 0x30, 0x00, 0x03, 0x00, - 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x07, 0x03, 0xE0, 0x03, - 0x81, 0xFC, 0x00, 0xC0, 0xFF, 0x00, 0x60, 0x70, 0xE0, 0x38, 0x38, 0x18, - 0x1C, 0x0C, 0x06, 0x0E, 0x03, 0x01, 0x83, 0x00, 0xC0, 0xE1, 0x80, 0x38, - 0x70, 0xE0, 0x0F, 0xF8, 0x70, 0x01, 0xFC, 0x18, 0x00, 0x3E, 0x0C, 0x00, - 0x00, 0x06, 0x07, 0x80, 0x03, 0x87, 0xF8, 0x00, 0xC3, 0xFE, 0x00, 0x61, - 0xE1, 0xC0, 0x30, 0x60, 0x30, 0x1C, 0x30, 0x0C, 0x0E, 0x0C, 0x03, 0x03, - 0x03, 0x01, 0x81, 0x80, 0xE1, 0xE0, 0xC0, 0x1F, 0xF0, 0x70, 0x07, 0xF8, - 0x18, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x07, 0xF8, 0x00, 0xFF, 0xC0, - 0x1E, 0x3C, 0x03, 0xC1, 0xC0, 0x38, 0x1C, 0x03, 0x81, 0xC0, 0x38, 0x38, - 0x03, 0xC7, 0x00, 0x1D, 0xE0, 0x01, 0xFC, 0x00, 0x1F, 0x00, 0x07, 0xF0, - 0x01, 0xF7, 0x87, 0x3C, 0x3C, 0xE7, 0x81, 0xCE, 0x70, 0x1F, 0xCE, 0x00, - 0xFC, 0xE0, 0x07, 0x8E, 0x00, 0x78, 0xF0, 0x1F, 0x8F, 0x87, 0xFC, 0x7F, - 0xF9, 0xC3, 0xFE, 0x1E, 0x1F, 0x80, 0xE0, 0x77, 0xFE, 0xEE, 0xCC, 0xC0, - 0x00, 0x30, 0x06, 0x00, 0xC0, 0x18, 0x03, 0x80, 0x30, 0x06, 0x00, 0xE0, - 0x0C, 0x01, 0xC0, 0x18, 0x03, 0x80, 0x38, 0x07, 0x00, 0x70, 0x07, 0x00, - 0x70, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, - 0xE0, 0x0E, 0x00, 0xE0, 0x06, 0x00, 0x70, 0x07, 0x00, 0x30, 0x03, 0x00, - 0x18, 0x00, 0x01, 0x80, 0x0C, 0x00, 0xC0, 0x0E, 0x00, 0xE0, 0x06, 0x00, - 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, - 0x70, 0x07, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x03, - 0x80, 0x38, 0x03, 0x00, 0x70, 0x06, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x00, 0x06, 0x01, 0x84, 0x47, 0xF7, 0xFF, 0xCF, 0xC1, - 0xE0, 0xD8, 0x67, 0x18, 0xC0, 0x00, 0x70, 0x00, 0x1C, 0x00, 0x0F, 0x00, - 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x0F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0x70, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0xE0, - 0x00, 0x38, 0x00, 0x0E, 0x00, 0x3B, 0xDC, 0x21, 0x18, 0x98, 0xFF, 0xFF, - 0xFF, 0xE0, 0x7F, 0xFE, 0x00, 0x06, 0x00, 0x18, 0x00, 0x30, 0x00, 0xC0, - 0x01, 0x80, 0x06, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x60, 0x01, 0x80, 0x03, - 0x00, 0x0C, 0x00, 0x18, 0x00, 0x60, 0x00, 0xC0, 0x03, 0x00, 0x06, 0x00, - 0x18, 0x00, 0x20, 0x00, 0xC0, 0x03, 0x00, 0x06, 0x00, 0x18, 0x00, 0x30, - 0x00, 0xC0, 0x01, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x7F, 0xC0, 0x7F, 0xF8, - 0x3E, 0x1E, 0x0F, 0x03, 0xC7, 0x80, 0x71, 0xC0, 0x1C, 0xE0, 0x07, 0x38, - 0x01, 0xDE, 0x00, 0x77, 0x00, 0x1D, 0xC0, 0x0F, 0x70, 0x03, 0xFC, 0x00, - 0xEE, 0x00, 0x3B, 0x80, 0x0E, 0xE0, 0x07, 0xB8, 0x01, 0xCE, 0x00, 0xF3, - 0x80, 0x38, 0xF0, 0x1E, 0x1E, 0x1F, 0x07, 0xFF, 0x80, 0xFF, 0xC0, 0x0F, - 0x80, 0x00, 0x00, 0xC0, 0x70, 0x3C, 0x3E, 0xFF, 0xBF, 0xEF, 0xF8, 0x1E, - 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x0F, 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x07, - 0x81, 0xC0, 0x70, 0x1C, 0x07, 0x01, 0xC0, 0xE0, 0x38, 0x00, 0x00, 0x3F, - 0x00, 0x0F, 0xFC, 0x03, 0xFF, 0xE0, 0x7C, 0x1E, 0x07, 0x80, 0xF0, 0xF0, - 0x07, 0x0E, 0x00, 0x70, 0xE0, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, - 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x03, 0xF0, 0x00, 0xFC, 0x00, - 0x1F, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0x80, 0x00, - 0x70, 0x00, 0x07, 0x00, 0x00, 0xFF, 0xFF, 0x8F, 0xFF, 0xF0, 0xFF, 0xFF, - 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x03, 0xC1, 0xF0, 0x70, - 0x0E, 0x1C, 0x01, 0xC3, 0x80, 0x38, 0xE0, 0x07, 0x00, 0x01, 0xC0, 0x00, - 0xF0, 0x03, 0xFC, 0x00, 0x7F, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0x00, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x9C, 0x00, 0x73, 0x80, 0x1E, 0x70, 0x03, - 0x8F, 0x00, 0xF1, 0xF0, 0x7C, 0x1F, 0xFF, 0x01, 0xFF, 0xC0, 0x0F, 0xC0, - 0x00, 0x00, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x1F, - 0x80, 0x0F, 0xE0, 0x07, 0xF0, 0x03, 0xDC, 0x01, 0xE7, 0x00, 0x71, 0xC0, - 0x38, 0xF0, 0x1C, 0x38, 0x0E, 0x0E, 0x07, 0x03, 0x83, 0x80, 0xE1, 0xC0, - 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x70, 0x00, 0x38, - 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x01, 0xFF, - 0xF0, 0x3F, 0xFF, 0x03, 0xFF, 0xE0, 0x78, 0x00, 0x07, 0x00, 0x00, 0x70, - 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0xFC, 0x01, 0xFF, 0xF0, 0x1F, - 0xFF, 0x83, 0xE0, 0x78, 0x3C, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, - 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x03, 0x8E, 0x00, 0x78, - 0xE0, 0x0F, 0x0F, 0x81, 0xE0, 0x7F, 0xFC, 0x03, 0xFF, 0x80, 0x0F, 0xE0, - 0x00, 0x00, 0x7E, 0x00, 0x3F, 0xF0, 0x0F, 0xFF, 0x03, 0xE1, 0xF0, 0xF0, - 0x0E, 0x1C, 0x01, 0xC7, 0x00, 0x01, 0xE0, 0x00, 0x38, 0x00, 0x07, 0x1F, - 0x01, 0xCF, 0xF8, 0x3B, 0xFF, 0x87, 0xE0, 0xF8, 0xF0, 0x0F, 0x3C, 0x00, - 0xE7, 0x80, 0x1C, 0xE0, 0x03, 0x9C, 0x00, 0x73, 0x80, 0x1C, 0x70, 0x03, - 0x8F, 0x00, 0xE0, 0xF0, 0x78, 0x1F, 0xFF, 0x01, 0xFF, 0x80, 0x0F, 0xC0, - 0x00, 0x3F, 0xFF, 0xCF, 0xFF, 0xF7, 0xFF, 0xFC, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x03, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, - 0x0E, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x1C, - 0x00, 0x0E, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xF0, 0x00, 0x38, 0x00, - 0x1E, 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x7E, - 0x00, 0x3F, 0xF0, 0x1F, 0xFF, 0x07, 0xC1, 0xF0, 0xE0, 0x0E, 0x38, 0x01, - 0xC7, 0x00, 0x38, 0xE0, 0x0E, 0x1C, 0x01, 0xC3, 0xC0, 0xF0, 0x3F, 0xFC, - 0x03, 0xFE, 0x01, 0xFF, 0xF0, 0x7C, 0x1E, 0x1E, 0x01, 0xE3, 0x80, 0x1C, - 0xE0, 0x03, 0x9C, 0x00, 0x73, 0x80, 0x0E, 0x70, 0x03, 0x8F, 0x00, 0xF1, - 0xF0, 0x7C, 0x1F, 0xFF, 0x01, 0xFF, 0xC0, 0x0F, 0xC0, 0x00, 0x00, 0x7E, - 0x00, 0x3F, 0xF0, 0x1F, 0xFF, 0x07, 0xC1, 0xE0, 0xE0, 0x1E, 0x38, 0x01, - 0xC7, 0x00, 0x39, 0xC0, 0x07, 0x38, 0x00, 0xE7, 0x00, 0x3C, 0xE0, 0x07, - 0x9E, 0x01, 0xE3, 0xE0, 0xFC, 0x3F, 0xFB, 0x83, 0xFE, 0xF0, 0x3F, 0x1C, - 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x1C, 0x70, 0x07, 0x8E, 0x01, 0xE1, - 0xE0, 0xF8, 0x1F, 0xFE, 0x01, 0xFF, 0x80, 0x0F, 0xC0, 0x00, 0x0E, 0x3C, - 0x78, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, - 0xF1, 0xE3, 0x80, 0x07, 0x0F, 0x0F, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x78, 0x70, 0x10, 0x10, - 0x30, 0x20, 0xC0, 0x00, 0x00, 0x20, 0x00, 0x1C, 0x00, 0x1F, 0x80, 0x1F, - 0xC0, 0x0F, 0xC0, 0x0F, 0xE0, 0x07, 0xE0, 0x03, 0xF0, 0x00, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, - 0x00, 0x0F, 0xC0, 0x00, 0x78, 0x00, 0x01, 0x00, 0x7F, 0xFF, 0xDF, 0xFF, - 0xF7, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFB, - 0xFF, 0xFE, 0xFF, 0xFF, 0x80, 0x10, 0x00, 0x03, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, - 0x00, 0x01, 0xE0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0xFE, 0x00, 0x7E, 0x00, - 0x7F, 0x00, 0x3F, 0x00, 0x07, 0x00, 0x00, 0x80, 0x00, 0x00, 0x03, 0xF8, - 0x0F, 0xFC, 0x1F, 0xFE, 0x3C, 0x1F, 0x78, 0x07, 0x70, 0x07, 0xE0, 0x07, - 0xE0, 0x07, 0x00, 0x0E, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, - 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, - 0x3C, 0x00, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x07, - 0xFF, 0xFE, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x0F, 0x80, 0x03, 0xE0, 0x0F, - 0x00, 0x00, 0xF8, 0x0F, 0x00, 0x00, 0x3C, 0x0F, 0x01, 0xF0, 0x0F, 0x0F, - 0x03, 0xFD, 0xC7, 0x8F, 0x03, 0xFE, 0xE1, 0xC7, 0x03, 0xC3, 0x60, 0xE7, - 0x03, 0xC0, 0xF0, 0x77, 0x83, 0xC0, 0x70, 0x3B, 0x83, 0xC0, 0x78, 0x1D, - 0xC1, 0xC0, 0x38, 0x1F, 0xC1, 0xE0, 0x1C, 0x0E, 0xE0, 0xE0, 0x1C, 0x0F, - 0x70, 0x70, 0x0E, 0x07, 0x38, 0x38, 0x0E, 0x07, 0x9C, 0x1C, 0x0F, 0x07, - 0x8E, 0x0F, 0x0F, 0x8F, 0x87, 0x03, 0xFD, 0xFF, 0x83, 0xC1, 0xFC, 0xFF, - 0x80, 0xE0, 0x7C, 0x3F, 0x00, 0x78, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x00, 0x07, 0x80, 0x00, 0x00, 0x01, 0xF8, 0x07, 0x00, 0x00, 0x7F, 0xFF, - 0x80, 0x00, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x01, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0xFF, - 0x00, 0x01, 0xDE, 0x00, 0x07, 0x9C, 0x00, 0x0E, 0x38, 0x00, 0x3C, 0x70, - 0x00, 0x70, 0xF0, 0x01, 0xC1, 0xE0, 0x07, 0x83, 0xC0, 0x0E, 0x07, 0x80, - 0x38, 0x07, 0x00, 0x70, 0x0E, 0x01, 0xFF, 0xFC, 0x03, 0xFF, 0xFC, 0x0F, - 0xFF, 0xF8, 0x1C, 0x00, 0xF0, 0x70, 0x01, 0xE1, 0xE0, 0x01, 0xC3, 0x80, - 0x03, 0x8F, 0x00, 0x07, 0x1C, 0x00, 0x0E, 0x78, 0x00, 0x1E, 0xE0, 0x00, - 0x3C, 0x07, 0xFF, 0xC0, 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x0E, 0x00, 0xF0, - 0xF0, 0x03, 0x87, 0x00, 0x1C, 0x38, 0x00, 0xE1, 0xC0, 0x07, 0x0E, 0x00, - 0x70, 0xF0, 0x03, 0x87, 0x00, 0x78, 0x3F, 0xFF, 0x81, 0xFF, 0xF8, 0x0F, - 0xFF, 0xF0, 0xE0, 0x03, 0xC7, 0x00, 0x0E, 0x38, 0x00, 0x71, 0xC0, 0x03, - 0x9E, 0x00, 0x1C, 0xE0, 0x00, 0xE7, 0x00, 0x0E, 0x38, 0x00, 0xF1, 0xC0, - 0x0F, 0x1F, 0xFF, 0xF0, 0xFF, 0xFF, 0x07, 0xFF, 0xE0, 0x00, 0x00, 0x1F, - 0x80, 0x03, 0xFF, 0x80, 0x1F, 0xFF, 0x01, 0xF8, 0x3E, 0x07, 0x80, 0x38, - 0x38, 0x00, 0xF1, 0xC0, 0x01, 0xCF, 0x00, 0x07, 0x38, 0x00, 0x01, 0xE0, - 0x00, 0x07, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, - 0x0E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x7B, 0x80, 0x01, 0xCE, - 0x00, 0x0F, 0x3C, 0x00, 0x38, 0x70, 0x01, 0xE1, 0xE0, 0x0F, 0x07, 0xC0, - 0xF8, 0x0F, 0xFF, 0xC0, 0x1F, 0xFC, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xFF, - 0xC0, 0x0F, 0xFF, 0xE0, 0x1F, 0xFF, 0xE0, 0x38, 0x03, 0xE0, 0xF0, 0x03, - 0xC1, 0xC0, 0x03, 0x83, 0x80, 0x03, 0x87, 0x00, 0x07, 0x1E, 0x00, 0x0E, - 0x3C, 0x00, 0x1C, 0x70, 0x00, 0x38, 0xE0, 0x00, 0x71, 0xC0, 0x00, 0xE7, - 0x80, 0x03, 0x8F, 0x00, 0x07, 0x1C, 0x00, 0x0E, 0x38, 0x00, 0x3C, 0x70, - 0x00, 0x71, 0xE0, 0x01, 0xE3, 0x80, 0x03, 0x87, 0x00, 0x0E, 0x0E, 0x00, - 0x3C, 0x1C, 0x01, 0xF0, 0x7F, 0xFF, 0xC0, 0xFF, 0xFE, 0x01, 0xFF, 0xF0, - 0x00, 0x07, 0xFF, 0xFE, 0x0F, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x38, 0x00, - 0x00, 0xF0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x70, 0x00, 0x00, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0x07, 0xFF, 0xFE, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x70, 0x00, 0x01, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, - 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x7F, 0xFF, 0xF0, 0xFF, 0xFF, - 0xC1, 0xFF, 0xFF, 0x80, 0x07, 0xFF, 0xFC, 0x1F, 0xFF, 0xF0, 0x7F, 0xFF, - 0xC1, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, - 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xC0, 0x00, 0x07, 0xFF, - 0xF0, 0x1F, 0xFF, 0xC0, 0xFF, 0xFF, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, - 0x38, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x70, - 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xE0, 0x00, - 0x03, 0x80, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0xF8, 0x01, 0xFF, - 0xFC, 0x03, 0xE0, 0x3E, 0x07, 0x80, 0x0E, 0x0F, 0x00, 0x0F, 0x1E, 0x00, - 0x07, 0x1C, 0x00, 0x07, 0x38, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, - 0x00, 0x70, 0x00, 0x00, 0xF0, 0x07, 0xFE, 0xE0, 0x07, 0xFE, 0xE0, 0x07, - 0xFE, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, 0x00, - 0x1C, 0xF0, 0x00, 0x3C, 0x70, 0x00, 0x7C, 0x78, 0x00, 0xFC, 0x3E, 0x03, - 0xDC, 0x1F, 0xFF, 0x98, 0x0F, 0xFE, 0x18, 0x03, 0xF8, 0x18, 0x07, 0x00, - 0x07, 0x83, 0x80, 0x03, 0xC1, 0xC0, 0x01, 0xC0, 0xE0, 0x00, 0xE0, 0xF0, - 0x00, 0x70, 0x70, 0x00, 0x78, 0x38, 0x00, 0x3C, 0x1C, 0x00, 0x1C, 0x1E, - 0x00, 0x0E, 0x0F, 0x00, 0x07, 0x07, 0x00, 0x07, 0x83, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE0, 0xE0, 0x00, 0x70, 0x70, 0x00, 0x78, - 0x38, 0x00, 0x38, 0x1C, 0x00, 0x1C, 0x1E, 0x00, 0x0E, 0x0E, 0x00, 0x0F, - 0x07, 0x00, 0x07, 0x83, 0x80, 0x03, 0x81, 0xC0, 0x01, 0xC1, 0xE0, 0x00, - 0xE0, 0xE0, 0x00, 0xF0, 0x70, 0x00, 0x78, 0x00, 0x07, 0x0F, 0x0F, 0x0E, - 0x0E, 0x0E, 0x0E, 0x1E, 0x1C, 0x1C, 0x1C, 0x1C, 0x3C, 0x3C, 0x38, 0x38, - 0x38, 0x38, 0x78, 0x70, 0x70, 0x70, 0x70, 0xF0, 0xF0, 0xE0, 0x00, 0x01, - 0xC0, 0x00, 0x70, 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, - 0x00, 0x38, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0x70, 0x00, - 0x1C, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x1E, - 0x1C, 0x07, 0x0E, 0x01, 0xC3, 0x80, 0x70, 0xE0, 0x3C, 0x38, 0x0E, 0x0F, - 0x0F, 0x81, 0xFF, 0xC0, 0x7F, 0xE0, 0x07, 0xE0, 0x00, 0x07, 0x00, 0x07, - 0x83, 0x80, 0x07, 0x81, 0xC0, 0x0F, 0x00, 0xE0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0x70, 0x0F, 0x00, 0x38, 0x0F, 0x00, 0x1C, 0x1F, 0x00, 0x1E, 0x1E, - 0x00, 0x0F, 0x1E, 0x00, 0x07, 0x1E, 0x00, 0x03, 0x9F, 0x00, 0x01, 0xDF, - 0xC0, 0x01, 0xFC, 0xE0, 0x00, 0xFC, 0x78, 0x00, 0x7C, 0x1C, 0x00, 0x3C, - 0x0F, 0x00, 0x1C, 0x07, 0x80, 0x1E, 0x01, 0xE0, 0x0E, 0x00, 0xF0, 0x07, - 0x00, 0x38, 0x03, 0x80, 0x1E, 0x01, 0xC0, 0x07, 0x01, 0xE0, 0x03, 0xC0, - 0xE0, 0x00, 0xE0, 0x70, 0x00, 0x78, 0x00, 0x07, 0x00, 0x07, 0x00, 0x07, - 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x78, 0x00, 0x70, 0x00, 0x70, - 0x00, 0x70, 0x00, 0x70, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, - 0xC0, 0x00, 0xF8, 0x3E, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x7E, 0x0F, 0x80, - 0x03, 0xF0, 0xFC, 0x00, 0x3F, 0x07, 0x70, 0x01, 0xF8, 0x3B, 0x80, 0x1D, - 0xC1, 0xDC, 0x00, 0xEE, 0x0E, 0xE0, 0x0E, 0xE0, 0xE7, 0x00, 0x77, 0x07, - 0x38, 0x07, 0x38, 0x39, 0xC0, 0x31, 0xC1, 0xCE, 0x03, 0x9E, 0x1E, 0x38, - 0x38, 0xE0, 0xE1, 0xC1, 0xC7, 0x07, 0x0E, 0x1C, 0x38, 0x38, 0x70, 0xE1, - 0xC1, 0xC3, 0x8E, 0x1E, 0x1E, 0x1C, 0x70, 0xE0, 0xE0, 0xE7, 0x07, 0x07, - 0x07, 0x38, 0x38, 0x38, 0x1F, 0x81, 0xC1, 0xC0, 0xF8, 0x1E, 0x1C, 0x07, - 0xC0, 0xE0, 0xE0, 0x3C, 0x07, 0x07, 0x01, 0xE0, 0x38, 0x00, 0x07, 0x80, - 0x03, 0x83, 0xE0, 0x01, 0xC1, 0xF0, 0x00, 0xE0, 0xF8, 0x00, 0xE0, 0xFE, - 0x00, 0x70, 0x7F, 0x00, 0x38, 0x3B, 0xC0, 0x1C, 0x1D, 0xE0, 0x1E, 0x0E, - 0x70, 0x0E, 0x0E, 0x3C, 0x07, 0x07, 0x0E, 0x03, 0x83, 0x87, 0x81, 0xC1, - 0xC3, 0xC1, 0xE1, 0xE0, 0xE0, 0xE0, 0xE0, 0x78, 0x70, 0x70, 0x1C, 0x38, - 0x38, 0x0F, 0x1C, 0x1C, 0x07, 0x9E, 0x1E, 0x01, 0xCE, 0x0E, 0x00, 0xF7, - 0x07, 0x00, 0x3B, 0x83, 0x80, 0x1F, 0xC1, 0xC0, 0x07, 0xC1, 0xC0, 0x03, - 0xE0, 0xE0, 0x01, 0xF0, 0x70, 0x00, 0x78, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0xFF, 0xF0, 0x01, 0xFF, 0xF8, 0x03, 0xE0, 0x7C, 0x07, 0x80, 0x1E, 0x0F, - 0x00, 0x0E, 0x1C, 0x00, 0x0F, 0x3C, 0x00, 0x07, 0x38, 0x00, 0x07, 0x70, - 0x00, 0x07, 0x70, 0x00, 0x07, 0x70, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xE0, - 0x00, 0x0F, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, 0x00, 0x0E, 0xE0, - 0x00, 0x1C, 0xE0, 0x00, 0x1C, 0xF0, 0x00, 0x38, 0x70, 0x00, 0x78, 0x78, - 0x00, 0xF0, 0x3E, 0x07, 0xE0, 0x1F, 0xFF, 0xC0, 0x0F, 0xFF, 0x00, 0x03, - 0xF8, 0x00, 0x07, 0xFF, 0xE0, 0x1F, 0xFF, 0xC0, 0x7F, 0xFF, 0x81, 0xC0, - 0x1F, 0x0F, 0x00, 0x3C, 0x38, 0x00, 0x70, 0xE0, 0x01, 0xC3, 0x80, 0x07, - 0x1E, 0x00, 0x1C, 0x78, 0x00, 0xE1, 0xC0, 0x07, 0x87, 0x00, 0x3C, 0x1F, - 0xFF, 0xE0, 0xFF, 0xFF, 0x03, 0xFF, 0xF0, 0x0E, 0x00, 0x00, 0x38, 0x00, - 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x70, 0x00, 0x01, - 0xC0, 0x00, 0x07, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, - 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xFF, 0x00, - 0x7C, 0x07, 0xC0, 0x78, 0x00, 0xF0, 0x78, 0x00, 0x38, 0x78, 0x00, 0x1E, - 0x78, 0x00, 0x07, 0x38, 0x00, 0x03, 0xBC, 0x00, 0x01, 0xDC, 0x00, 0x00, - 0xEE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x1D, 0xC0, 0x00, 0x0E, 0xE0, 0x00, 0x0F, 0x70, 0x00, 0x07, 0x38, 0x00, - 0x87, 0x9E, 0x00, 0xE7, 0x87, 0x00, 0x7F, 0x83, 0xC0, 0x1F, 0x80, 0xF8, - 0x1F, 0x80, 0x3F, 0xFF, 0xE0, 0x0F, 0xFF, 0x78, 0x01, 0xFE, 0x1E, 0x00, - 0x00, 0x07, 0x00, 0x00, 0x02, 0x00, 0x07, 0xFF, 0xF0, 0x0F, 0xFF, 0xF8, - 0x1F, 0xFF, 0xF0, 0x38, 0x00, 0xF0, 0xF0, 0x00, 0xE1, 0xC0, 0x01, 0xC3, - 0x80, 0x03, 0x87, 0x00, 0x07, 0x1E, 0x00, 0x0E, 0x3C, 0x00, 0x38, 0x70, - 0x00, 0xF0, 0xE0, 0x03, 0xC1, 0xFF, 0xFE, 0x07, 0xFF, 0xF8, 0x0F, 0xFF, - 0xF8, 0x1C, 0x00, 0x78, 0x38, 0x00, 0x70, 0x70, 0x00, 0xE1, 0xE0, 0x01, - 0xC3, 0x80, 0x03, 0x87, 0x00, 0x06, 0x0E, 0x00, 0x1C, 0x1C, 0x00, 0x38, - 0x78, 0x00, 0x70, 0xE0, 0x00, 0xE1, 0xC0, 0x01, 0xE0, 0x00, 0x3F, 0xC0, - 0x07, 0xFF, 0xC0, 0x3F, 0xFF, 0x81, 0xF0, 0x1E, 0x0F, 0x00, 0x3C, 0x38, - 0x00, 0x71, 0xC0, 0x01, 0xC7, 0x00, 0x07, 0x1C, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xFE, 0x00, 0x07, 0xFF, 0x00, - 0x03, 0xFE, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xF3, 0x80, 0x01, 0xCE, 0x00, - 0x07, 0x38, 0x00, 0x18, 0xE0, 0x00, 0xE3, 0xC0, 0x07, 0x07, 0x80, 0x7C, - 0x1F, 0xFF, 0xE0, 0x3F, 0xFE, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1E, 0x00, - 0x01, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0xC0, - 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x78, - 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0xF0, 0x00, 0x0F, - 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xE0, 0x00, 0x0E, 0x00, 0x0F, 0x0E, 0x00, 0x0F, 0x0E, 0x00, 0x0E, 0x0E, - 0x00, 0x0E, 0x1E, 0x00, 0x0E, 0x1C, 0x00, 0x1E, 0x1C, 0x00, 0x1C, 0x1C, - 0x00, 0x1C, 0x3C, 0x00, 0x1C, 0x3C, 0x00, 0x1C, 0x38, 0x00, 0x3C, 0x38, - 0x00, 0x38, 0x38, 0x00, 0x38, 0x78, 0x00, 0x38, 0x70, 0x00, 0x78, 0x70, - 0x00, 0x78, 0x70, 0x00, 0x70, 0xF0, 0x00, 0x70, 0xF0, 0x00, 0x70, 0xE0, - 0x00, 0xF0, 0xE0, 0x00, 0xE0, 0xF0, 0x03, 0xE0, 0x78, 0x0F, 0xC0, 0x7F, - 0xFF, 0x80, 0x1F, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0xE0, 0x00, 0x3F, 0x80, - 0x03, 0xFC, 0x00, 0x1D, 0xE0, 0x01, 0xE7, 0x00, 0x0E, 0x38, 0x00, 0xE1, - 0xC0, 0x07, 0x0E, 0x00, 0x70, 0x70, 0x07, 0x83, 0xC0, 0x38, 0x1E, 0x03, - 0xC0, 0xF0, 0x1C, 0x03, 0x81, 0xE0, 0x1C, 0x0E, 0x00, 0xE0, 0xF0, 0x07, - 0x07, 0x00, 0x3C, 0x70, 0x01, 0xE3, 0x80, 0x0F, 0x38, 0x00, 0x39, 0xC0, - 0x01, 0xDC, 0x00, 0x0E, 0xE0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0xE0, 0x07, 0x80, - 0x1E, 0xE0, 0x07, 0xC0, 0x1E, 0xE0, 0x0F, 0xC0, 0x1C, 0xE0, 0x0F, 0xC0, - 0x3C, 0xE0, 0x1F, 0xC0, 0x38, 0xE0, 0x1D, 0xC0, 0x78, 0xE0, 0x3D, 0xC0, - 0x70, 0xE0, 0x39, 0xC0, 0xF0, 0xE0, 0x79, 0xC0, 0xE0, 0xE0, 0x71, 0xC0, - 0xE0, 0xE0, 0xF1, 0xC1, 0xC0, 0xE0, 0xE1, 0xC1, 0xC0, 0xE1, 0xE1, 0xC3, - 0xC0, 0x61, 0xC1, 0xC3, 0x80, 0x63, 0xC1, 0xC7, 0x80, 0x63, 0x80, 0xE7, - 0x00, 0x67, 0x80, 0xEF, 0x00, 0x67, 0x00, 0xEE, 0x00, 0x7F, 0x00, 0xEE, - 0x00, 0x7E, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0xFC, 0x00, 0x7C, 0x00, 0xF8, - 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x78, 0x00, 0xF8, 0x00, 0x78, 0x00, 0xF0, - 0x00, 0x03, 0xC0, 0x03, 0xC0, 0x78, 0x00, 0xF0, 0x07, 0x80, 0x1C, 0x00, - 0xF0, 0x07, 0x80, 0x0F, 0x01, 0xE0, 0x01, 0xE0, 0x78, 0x00, 0x1C, 0x1E, - 0x00, 0x03, 0xC7, 0x80, 0x00, 0x39, 0xE0, 0x00, 0x07, 0xB8, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x0F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xF3, 0x80, 0x00, 0x3C, - 0x78, 0x00, 0x0F, 0x0F, 0x00, 0x03, 0xC0, 0xF0, 0x00, 0x70, 0x1E, 0x00, - 0x1E, 0x01, 0xE0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x03, 0xC0, 0x78, 0x00, - 0x78, 0x1E, 0x00, 0x0F, 0x00, 0xF0, 0x00, 0x3C, 0xE0, 0x00, 0x71, 0xE0, - 0x01, 0xE3, 0xC0, 0x07, 0x83, 0xC0, 0x1E, 0x07, 0x80, 0x78, 0x07, 0x00, - 0xE0, 0x0F, 0x03, 0xC0, 0x1E, 0x0F, 0x00, 0x1C, 0x3C, 0x00, 0x3C, 0xF0, - 0x00, 0x39, 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFE, 0x00, 0x00, 0xF8, 0x00, - 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, - 0x1C, 0x00, 0x00, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xC0, 0x00, 0x03, - 0x80, 0x00, 0x07, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0x81, - 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x00, 0x01, 0xF8, 0x1F, 0xC0, 0xFE, 0x07, - 0x00, 0x38, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x03, 0xC0, - 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, - 0x00, 0x38, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x78, 0x03, 0x80, - 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x70, 0x03, 0xF8, 0x1F, 0xC0, 0xFE, 0x00, - 0xCC, 0xCC, 0xCC, 0x46, 0x66, 0x66, 0x66, 0x66, 0x66, 0x62, 0x33, 0x33, - 0x33, 0x03, 0xF8, 0x1F, 0xC0, 0xFE, 0x00, 0x70, 0x07, 0x00, 0x38, 0x01, - 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xE0, - 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, - 0xC0, 0x1E, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x1E, 0x00, 0xE0, - 0x07, 0x03, 0xF8, 0x1F, 0xC0, 0xFC, 0x00, 0x00, 0xF0, 0x03, 0xC0, 0x1F, - 0x00, 0x7C, 0x03, 0xB8, 0x1C, 0xE0, 0x63, 0x83, 0x8E, 0x1C, 0x38, 0x60, - 0x73, 0x81, 0xCC, 0x07, 0x70, 0x1F, 0x80, 0x70, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0xF1, 0xC3, 0x86, 0x0C, 0x00, 0xFE, 0x01, 0xFF, 0xE0, 0xFF, - 0xFC, 0x3C, 0x0F, 0x1C, 0x01, 0xC0, 0x00, 0x70, 0x00, 0x1C, 0x00, 0x0E, - 0x00, 0x1F, 0x83, 0xFF, 0xE3, 0xFE, 0x39, 0xF0, 0x1E, 0xF0, 0x07, 0x38, - 0x01, 0xCE, 0x00, 0xF3, 0xC0, 0xFC, 0xFF, 0xF7, 0x9F, 0xF1, 0xE1, 0xF0, - 0x38, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0xF0, - 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x71, 0xF0, 0x0E, 0xFF, 0x83, 0xFF, - 0xF8, 0x7F, 0x0F, 0x0F, 0x80, 0xF1, 0xE0, 0x0E, 0x38, 0x01, 0xCF, 0x00, - 0x39, 0xE0, 0x07, 0x38, 0x00, 0xE7, 0x00, 0x38, 0xE0, 0x07, 0x3C, 0x00, - 0xE7, 0x80, 0x38, 0xF8, 0x0F, 0x1F, 0x87, 0xC3, 0xFF, 0xF0, 0xE7, 0xFC, - 0x1C, 0x7E, 0x00, 0x01, 0xF8, 0x07, 0xFC, 0x0F, 0xFE, 0x1E, 0x0F, 0x3C, - 0x07, 0x78, 0x07, 0x70, 0x07, 0x70, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0xE0, - 0x00, 0xE0, 0x00, 0xE0, 0x0E, 0xE0, 0x1C, 0xF0, 0x3C, 0x78, 0x78, 0x7F, - 0xF0, 0x3F, 0xE0, 0x0F, 0x80, 0x00, 0x00, 0x70, 0x00, 0x0F, 0x00, 0x00, - 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x01, 0xE0, 0x1F, - 0x1C, 0x07, 0xFD, 0xC0, 0xFF, 0xDC, 0x1E, 0x0F, 0xC3, 0xC0, 0x7C, 0x38, - 0x07, 0x87, 0x00, 0x38, 0x70, 0x03, 0x8F, 0x00, 0x38, 0xE0, 0x07, 0x8E, - 0x00, 0x70, 0xE0, 0x07, 0x0E, 0x00, 0xF0, 0xE0, 0x0F, 0x0F, 0x01, 0xF0, - 0x78, 0x7E, 0x07, 0xFF, 0xE0, 0x3F, 0xEE, 0x01, 0xF8, 0xE0, 0x01, 0xF8, - 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xC1, 0xF3, 0xC0, 0x79, 0xC0, 0x1D, 0xC0, - 0x0E, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0x1C, 0x00, 0x0E, - 0x00, 0x07, 0x00, 0x73, 0xC0, 0x78, 0xF0, 0x78, 0x7F, 0xF8, 0x1F, 0xF8, - 0x03, 0xF0, 0x00, 0x01, 0xE0, 0x7C, 0x1F, 0x83, 0x80, 0x70, 0x1C, 0x03, - 0x83, 0xFC, 0x7F, 0x8F, 0xF0, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x0F, 0x01, - 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0xE0, 0x1C, 0x00, 0x00, 0xFC, 0x60, 0x7F, 0xCC, 0x1F, 0xFF, 0x87, 0xC3, - 0xF1, 0xE0, 0x3E, 0x38, 0x03, 0x8E, 0x00, 0x71, 0xC0, 0x0E, 0x38, 0x01, - 0xCE, 0x00, 0x79, 0xC0, 0x0E, 0x38, 0x01, 0xC7, 0x00, 0x78, 0xE0, 0x0F, - 0x1E, 0x03, 0xC1, 0xE1, 0xF8, 0x3F, 0xFF, 0x03, 0xFE, 0xE0, 0x1F, 0x1C, - 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, 0x18, 0x38, 0x07, 0x07, 0x83, 0xC0, - 0x7F, 0xF8, 0x0F, 0xFC, 0x00, 0x7E, 0x00, 0x00, 0x07, 0x00, 0x01, 0xC0, - 0x00, 0x70, 0x00, 0x1C, 0x00, 0x0F, 0x00, 0x03, 0x80, 0x00, 0xE0, 0x00, - 0x38, 0xFC, 0x0E, 0xFF, 0x87, 0xFF, 0xF1, 0xF8, 0x3C, 0x7C, 0x07, 0x1E, - 0x01, 0xC7, 0x00, 0x73, 0xC0, 0x1C, 0xE0, 0x0F, 0x38, 0x03, 0x8E, 0x00, - 0xE3, 0x80, 0x39, 0xE0, 0x0E, 0x70, 0x07, 0x9C, 0x01, 0xC7, 0x00, 0x71, - 0xC0, 0x1C, 0xE0, 0x07, 0x38, 0x03, 0x80, 0x07, 0x07, 0x0F, 0x0E, 0x00, - 0x00, 0x00, 0x1E, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x38, 0x38, 0x38, 0x38, - 0x38, 0x78, 0x70, 0x70, 0x70, 0x70, 0xF0, 0xE0, 0xE0, 0x00, 0x3C, 0x00, - 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x00, - 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x03, 0x80, 0x1E, 0x00, - 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, - 0x38, 0x00, 0xE0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x0F, 0x00, - 0x38, 0x00, 0xE0, 0x1F, 0x80, 0x7C, 0x03, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x1C, 0x00, 0x03, - 0x80, 0x00, 0x70, 0x1E, 0x0E, 0x07, 0x83, 0xC1, 0xE0, 0x70, 0x70, 0x0E, - 0x1C, 0x01, 0xCF, 0x00, 0x3B, 0xC0, 0x0F, 0xF8, 0x01, 0xFF, 0x80, 0x3E, - 0x70, 0x07, 0x8E, 0x00, 0xE0, 0xE0, 0x38, 0x1C, 0x07, 0x03, 0xC0, 0xE0, - 0x38, 0x1C, 0x07, 0x03, 0x80, 0xF0, 0xE0, 0x0E, 0x1C, 0x01, 0xE0, 0x07, - 0x07, 0x0F, 0x0E, 0x0E, 0x0E, 0x0E, 0x1E, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x38, 0x38, 0x38, 0x38, 0x38, 0x78, 0x70, 0x70, 0x70, 0x70, 0xF0, 0xE0, - 0xE0, 0x1E, 0x7C, 0x0F, 0x83, 0xBF, 0xE7, 0xF8, 0x7F, 0xFD, 0xFF, 0x8F, - 0xC3, 0xF0, 0xF1, 0xE0, 0x3C, 0x0E, 0x38, 0x07, 0x01, 0xCF, 0x01, 0xE0, - 0x39, 0xC0, 0x38, 0x07, 0x38, 0x07, 0x00, 0xE7, 0x00, 0xE0, 0x1C, 0xE0, - 0x1C, 0x07, 0x3C, 0x07, 0x00, 0xE7, 0x00, 0xE0, 0x1C, 0xE0, 0x1C, 0x03, - 0x9C, 0x03, 0x80, 0xF3, 0x80, 0x70, 0x1C, 0x70, 0x1C, 0x03, 0x9C, 0x03, - 0x80, 0x73, 0x80, 0x70, 0x0E, 0x00, 0x1E, 0x3E, 0x07, 0x7F, 0xE1, 0xFF, - 0xF8, 0x7E, 0x0F, 0x1F, 0x01, 0xC7, 0x80, 0x73, 0xC0, 0x1C, 0xE0, 0x07, - 0x38, 0x03, 0xCE, 0x00, 0xE3, 0x80, 0x39, 0xE0, 0x0E, 0x70, 0x03, 0x9C, - 0x01, 0xC7, 0x00, 0x71, 0xC0, 0x1C, 0x70, 0x07, 0x38, 0x01, 0xCE, 0x00, - 0xE0, 0x01, 0xF8, 0x03, 0xFF, 0x03, 0xFF, 0xC3, 0xE1, 0xE3, 0xC0, 0x79, - 0xC0, 0x1D, 0xC0, 0x0E, 0xE0, 0x07, 0x70, 0x03, 0xF0, 0x01, 0xF8, 0x01, - 0xDC, 0x00, 0xEE, 0x00, 0x77, 0x00, 0x73, 0xC0, 0x78, 0xF0, 0xF8, 0x7F, - 0xF8, 0x1F, 0xF8, 0x03, 0xF0, 0x00, 0x03, 0x8F, 0x80, 0x1D, 0xFF, 0x01, - 0xFF, 0xFC, 0x0F, 0xC1, 0xE0, 0x7C, 0x07, 0x83, 0xC0, 0x1C, 0x1C, 0x00, - 0xE1, 0xE0, 0x07, 0x0E, 0x00, 0x38, 0x70, 0x01, 0xC3, 0x80, 0x1E, 0x1C, - 0x00, 0xE1, 0xE0, 0x07, 0x0F, 0x00, 0x70, 0x78, 0x07, 0x83, 0xF0, 0xF8, - 0x3F, 0xFF, 0x81, 0xDF, 0xF8, 0x0E, 0x3F, 0x00, 0x70, 0x00, 0x03, 0x80, - 0x00, 0x3C, 0x00, 0x01, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x70, 0x00, 0x03, - 0x80, 0x00, 0x00, 0x00, 0xF8, 0xF0, 0x7F, 0xEE, 0x0F, 0xFF, 0xE1, 0xF0, - 0xFE, 0x3C, 0x07, 0xE3, 0x80, 0x3E, 0x70, 0x03, 0xC7, 0x00, 0x3C, 0x70, - 0x03, 0xCE, 0x00, 0x3C, 0xE0, 0x07, 0x8E, 0x00, 0x78, 0xE0, 0x07, 0x8E, - 0x00, 0xF8, 0xF0, 0x1F, 0x87, 0x87, 0xF0, 0x7F, 0xF7, 0x03, 0xFE, 0x70, - 0x0F, 0x8F, 0x00, 0x00, 0xF0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0E, - 0x00, 0x01, 0xE0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x04, 0x00, 0x1E, - 0x78, 0xE7, 0xC7, 0x7C, 0x3F, 0x01, 0xF0, 0x0F, 0x00, 0xF0, 0x07, 0x00, - 0x38, 0x01, 0xC0, 0x0E, 0x00, 0xF0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, - 0x00, 0x70, 0x07, 0x00, 0x38, 0x00, 0x01, 0xF8, 0x07, 0xFE, 0x0F, 0xFF, - 0x1E, 0x0F, 0x3C, 0x07, 0x38, 0x07, 0x38, 0x00, 0x3C, 0x00, 0x3F, 0x80, - 0x1F, 0xF8, 0x07, 0xFC, 0x00, 0x7E, 0x00, 0x0E, 0xE0, 0x0E, 0xE0, 0x1E, - 0xF0, 0x3C, 0x7F, 0xF8, 0x7F, 0xF0, 0x1F, 0xC0, 0x0E, 0x03, 0x80, 0xE0, - 0x38, 0x7F, 0xDF, 0xEF, 0xF8, 0x70, 0x1C, 0x0E, 0x03, 0x80, 0xE0, 0x38, - 0x1E, 0x07, 0x01, 0xC0, 0x70, 0x1C, 0x0F, 0x03, 0x80, 0xFC, 0x3F, 0x07, - 0x80, 0x1C, 0x03, 0xC7, 0x00, 0xE1, 0xC0, 0x38, 0xF0, 0x0E, 0x38, 0x03, - 0x8E, 0x00, 0xE3, 0x80, 0x70, 0xE0, 0x1C, 0x78, 0x07, 0x1C, 0x01, 0xC7, - 0x00, 0x71, 0xC0, 0x3C, 0x70, 0x0E, 0x38, 0x07, 0x8E, 0x03, 0xE3, 0x81, - 0xF8, 0xFF, 0xFE, 0x1F, 0xFF, 0x03, 0xF1, 0xC0, 0xE0, 0x07, 0xE0, 0x0F, - 0xE0, 0x0E, 0xE0, 0x1C, 0x70, 0x1C, 0x70, 0x38, 0x70, 0x38, 0x70, 0x70, - 0x70, 0xF0, 0x70, 0xE0, 0x71, 0xC0, 0x71, 0xC0, 0x33, 0x80, 0x3B, 0x80, - 0x3F, 0x00, 0x3F, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0xE0, 0x1C, - 0x07, 0xE0, 0x3C, 0x0E, 0xE0, 0x3C, 0x0E, 0xE0, 0x7C, 0x1C, 0xE0, 0x7C, - 0x1C, 0xE0, 0xEC, 0x38, 0xE0, 0xEC, 0x38, 0x61, 0xCC, 0x70, 0x61, 0xCC, - 0x70, 0x63, 0x8C, 0xE0, 0x73, 0x8C, 0xE0, 0x77, 0x0C, 0xC0, 0x77, 0x0D, - 0xC0, 0x7E, 0x0D, 0x80, 0x7E, 0x0F, 0x80, 0x7C, 0x0F, 0x80, 0x7C, 0x0F, - 0x00, 0x78, 0x0F, 0x00, 0x78, 0x0E, 0x00, 0x0E, 0x00, 0xE1, 0xE0, 0x38, - 0x1C, 0x0E, 0x03, 0xC3, 0x80, 0x38, 0xE0, 0x07, 0xBC, 0x00, 0x77, 0x00, - 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x1C, 0x00, 0x07, 0xC0, 0x01, 0xF8, 0x00, - 0x77, 0x80, 0x1E, 0x70, 0x07, 0x8F, 0x00, 0xE0, 0xE0, 0x38, 0x1C, 0x0E, - 0x01, 0xC3, 0x80, 0x38, 0x00, 0x0E, 0x00, 0x70, 0xF0, 0x0F, 0x07, 0x00, - 0xE0, 0x70, 0x1C, 0x07, 0x01, 0xC0, 0x70, 0x38, 0x07, 0x03, 0x80, 0x70, - 0x70, 0x07, 0x07, 0x00, 0x70, 0xE0, 0x03, 0x9E, 0x00, 0x39, 0xC0, 0x03, - 0xB8, 0x00, 0x3B, 0x80, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xE0, 0x00, - 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, - 0x07, 0x00, 0x00, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, - 0x00, 0x07, 0xFF, 0xC0, 0xFF, 0xF8, 0x3F, 0xFF, 0x00, 0x01, 0xC0, 0x00, - 0x70, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x01, 0xC0, 0x00, 0x70, 0x00, 0x1C, - 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x00, 0x7F, 0xFE, 0x1F, 0xFF, 0xC3, 0xFF, 0xF8, 0x00, 0x00, - 0x70, 0x1F, 0x01, 0xF0, 0x3C, 0x03, 0x80, 0x38, 0x07, 0x00, 0x70, 0x07, - 0x00, 0x70, 0x07, 0x00, 0xE0, 0x0E, 0x01, 0xE0, 0x3C, 0x0F, 0x80, 0xE0, - 0x0F, 0x00, 0x78, 0x03, 0x80, 0x38, 0x03, 0x80, 0x38, 0x03, 0x80, 0x38, - 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x0E, 0x00, 0xF8, 0x0F, 0x80, 0x78, - 0x00, 0x01, 0x80, 0xC0, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x0C, 0x06, 0x03, - 0x01, 0x81, 0xC0, 0xC0, 0x60, 0x30, 0x18, 0x18, 0x0C, 0x06, 0x03, 0x01, - 0x81, 0x80, 0xC0, 0x60, 0x30, 0x38, 0x18, 0x0C, 0x06, 0x03, 0x03, 0x01, - 0x80, 0xC0, 0x00, 0x01, 0xE0, 0x1F, 0x01, 0xF0, 0x07, 0x00, 0xE0, 0x0E, - 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x1C, - 0x01, 0xE0, 0x0F, 0x00, 0x70, 0x1F, 0x03, 0xC0, 0x78, 0x07, 0x00, 0x70, - 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x03, 0xC0, - 0xF8, 0x0F, 0x80, 0xE0, 0x00, 0x1C, 0x00, 0x3F, 0x00, 0x7F, 0x83, 0x63, - 0xC7, 0xC1, 0xFE, 0x00, 0xFC, 0x00, 0x78}; - -const GFXglyph FreeSansOblique18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 10, 0, 1}, // 0x20 ' ' - {0, 9, 26, 10, 4, -25}, // 0x21 '!' - {30, 10, 9, 12, 6, -24}, // 0x22 '"' - {42, 21, 25, 19, 2, -24}, // 0x23 '#' - {108, 20, 31, 19, 2, -26}, // 0x24 '$' - {186, 26, 25, 31, 5, -24}, // 0x25 '%' - {268, 20, 25, 23, 3, -24}, // 0x26 '&' - {331, 4, 9, 7, 6, -24}, // 0x27 ''' - {336, 12, 33, 12, 4, -25}, // 0x28 '(' - {386, 12, 33, 12, -1, -24}, // 0x29 ')' - {436, 10, 10, 14, 6, -25}, // 0x2A '*' - {449, 18, 16, 20, 3, -15}, // 0x2B '+' - {485, 5, 8, 10, 2, -2}, // 0x2C ',' - {490, 9, 3, 12, 3, -10}, // 0x2D '-' - {494, 4, 4, 10, 3, -3}, // 0x2E '.' - {496, 15, 26, 10, 0, -25}, // 0x2F '/' - {545, 18, 25, 19, 3, -24}, // 0x30 '0' - {602, 10, 25, 19, 7, -24}, // 0x31 '1' - {634, 20, 25, 19, 2, -24}, // 0x32 '2' - {697, 19, 25, 19, 2, -24}, // 0x33 '3' - {757, 18, 25, 19, 2, -24}, // 0x34 '4' - {814, 20, 25, 19, 2, -24}, // 0x35 '5' - {877, 19, 25, 19, 3, -24}, // 0x36 '6' - {937, 18, 25, 19, 5, -24}, // 0x37 '7' - {994, 19, 25, 19, 3, -24}, // 0x38 '8' - {1054, 19, 25, 19, 2, -24}, // 0x39 '9' - {1114, 7, 19, 10, 4, -18}, // 0x3A ':' - {1131, 8, 24, 10, 3, -18}, // 0x3B ';' - {1155, 19, 17, 20, 3, -16}, // 0x3C '<' - {1196, 18, 9, 20, 3, -12}, // 0x3D '=' - {1217, 19, 17, 20, 2, -15}, // 0x3E '>' - {1258, 16, 26, 19, 6, -25}, // 0x3F '?' - {1310, 33, 31, 36, 3, -25}, // 0x40 '@' - {1438, 23, 26, 23, 0, -25}, // 0x41 'A' - {1513, 21, 26, 23, 3, -25}, // 0x42 'B' - {1582, 22, 26, 25, 4, -25}, // 0x43 'C' - {1654, 23, 26, 25, 3, -25}, // 0x44 'D' - {1729, 23, 26, 23, 3, -25}, // 0x45 'E' - {1804, 22, 26, 21, 3, -25}, // 0x46 'F' - {1876, 24, 26, 27, 4, -25}, // 0x47 'G' - {1954, 25, 26, 25, 3, -25}, // 0x48 'H' - {2036, 8, 26, 10, 4, -25}, // 0x49 'I' - {2062, 18, 26, 18, 2, -25}, // 0x4A 'J' - {2121, 25, 26, 23, 3, -25}, // 0x4B 'K' - {2203, 16, 26, 19, 3, -25}, // 0x4C 'L' - {2255, 29, 26, 30, 3, -25}, // 0x4D 'M' - {2350, 25, 26, 26, 3, -25}, // 0x4E 'N' - {2432, 24, 26, 27, 4, -25}, // 0x4F 'O' - {2510, 22, 26, 23, 3, -25}, // 0x50 'P' - {2582, 25, 28, 27, 4, -25}, // 0x51 'Q' - {2670, 23, 26, 25, 3, -25}, // 0x52 'R' - {2745, 22, 26, 23, 3, -25}, // 0x53 'S' - {2817, 20, 26, 21, 6, -25}, // 0x54 'T' - {2882, 24, 26, 25, 4, -25}, // 0x55 'U' - {2960, 21, 26, 23, 6, -25}, // 0x56 'V' - {3029, 32, 26, 33, 6, -25}, // 0x57 'W' - {3133, 27, 26, 23, 1, -25}, // 0x58 'X' - {3221, 23, 26, 24, 6, -25}, // 0x59 'Y' - {3296, 25, 26, 21, 1, -25}, // 0x5A 'Z' - {3378, 13, 33, 10, 1, -25}, // 0x5B '[' - {3432, 4, 26, 10, 5, -25}, // 0x5C '\' - {3445, 13, 33, 10, -1, -24}, // 0x5D ']' - {3499, 14, 14, 16, 3, -24}, // 0x5E '^' - {3524, 21, 2, 19, -2, 5}, // 0x5F '_' - {3530, 6, 5, 12, 6, -25}, // 0x60 '`' - {3534, 18, 19, 19, 2, -18}, // 0x61 'a' - {3577, 19, 26, 20, 2, -25}, // 0x62 'b' - {3639, 16, 19, 18, 3, -18}, // 0x63 'c' - {3677, 20, 26, 20, 3, -25}, // 0x64 'd' - {3742, 17, 19, 19, 3, -18}, // 0x65 'e' - {3783, 11, 26, 9, 2, -25}, // 0x66 'f' - {3819, 19, 27, 19, 2, -18}, // 0x67 'g' - {3884, 18, 26, 19, 2, -25}, // 0x68 'h' - {3943, 8, 26, 8, 2, -25}, // 0x69 'i' - {3969, 14, 34, 8, -2, -25}, // 0x6A 'j' - {4029, 19, 26, 18, 2, -25}, // 0x6B 'k' - {4091, 8, 26, 8, 2, -25}, // 0x6C 'l' - {4117, 27, 19, 29, 2, -18}, // 0x6D 'm' - {4182, 18, 19, 19, 2, -18}, // 0x6E 'n' - {4225, 17, 19, 19, 3, -18}, // 0x6F 'o' - {4266, 21, 26, 20, 0, -18}, // 0x70 'p' - {4335, 20, 27, 19, 2, -18}, // 0x71 'q' - {4403, 13, 19, 11, 2, -18}, // 0x72 'r' - {4434, 16, 19, 18, 2, -18}, // 0x73 's' - {4472, 10, 23, 9, 3, -22}, // 0x74 't' - {4501, 18, 19, 19, 3, -18}, // 0x75 'u' - {4544, 16, 19, 17, 4, -18}, // 0x76 'v' - {4582, 24, 19, 25, 4, -18}, // 0x77 'w' - {4639, 19, 19, 17, 1, -18}, // 0x78 'x' - {4685, 20, 27, 17, 0, -18}, // 0x79 'y' - {4753, 19, 19, 17, 1, -18}, // 0x7A 'z' - {4799, 12, 33, 12, 3, -25}, // 0x7B '{' - {4849, 9, 33, 9, 2, -25}, // 0x7C '|' - {4887, 12, 33, 12, 0, -24}, // 0x7D '}' - {4937, 16, 7, 20, 5, -15}}; // 0x7E '~' - -const GFXfont FreeSansOblique18pt7b PROGMEM = { - (uint8_t *)FreeSansOblique18pt7bBitmaps, - (GFXglyph *)FreeSansOblique18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 5623 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h deleted file mode 100644 index 805aefa..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique24pt7b.h +++ /dev/null @@ -1,842 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique24pt7bBitmaps[] PROGMEM = { - 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x3C, 0x07, - 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x38, 0x07, 0x00, 0xE0, 0x18, 0x03, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1E, 0x07, 0x80, 0xF0, 0x1E, 0x00, 0x78, - 0x7B, 0xC3, 0xDE, 0x1F, 0xE1, 0xEF, 0x0F, 0x78, 0x7B, 0xC3, 0xDC, 0x1C, - 0xE0, 0xE7, 0x07, 0x30, 0x31, 0x81, 0x80, 0x00, 0x07, 0x81, 0xC0, 0x00, - 0x78, 0x3C, 0x00, 0x07, 0x03, 0xC0, 0x00, 0xF0, 0x38, 0x00, 0x0E, 0x07, - 0x80, 0x01, 0xE0, 0x70, 0x00, 0x1E, 0x0F, 0x00, 0x01, 0xC0, 0xF0, 0x00, - 0x3C, 0x0E, 0x00, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, - 0xFE, 0x00, 0x70, 0x3C, 0x00, 0x0F, 0x03, 0x80, 0x00, 0xF0, 0x78, 0x00, - 0x0E, 0x07, 0x80, 0x01, 0xE0, 0x70, 0x00, 0x1C, 0x0F, 0x00, 0x03, 0xC0, - 0xE0, 0x00, 0x3C, 0x1E, 0x00, 0x03, 0x81, 0xE0, 0x0F, 0xFF, 0xFF, 0xE0, - 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0xE0, 0x0F, 0x03, 0x80, 0x00, 0xE0, - 0x78, 0x00, 0x1E, 0x07, 0x00, 0x01, 0xC0, 0xF0, 0x00, 0x1C, 0x0F, 0x00, - 0x03, 0xC0, 0xE0, 0x00, 0x38, 0x1E, 0x00, 0x07, 0x81, 0xC0, 0x00, 0x78, - 0x3C, 0x00, 0x07, 0x03, 0xC0, 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x30, - 0x00, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0xF8, 0x00, 0x7F, 0xFF, 0x00, 0x7F, - 0xFF, 0xE0, 0x1F, 0x18, 0xF8, 0x0F, 0x8E, 0x1F, 0x07, 0xC3, 0x83, 0xC1, - 0xE0, 0xE0, 0xF0, 0x70, 0x38, 0x3C, 0x3C, 0x0C, 0x0F, 0x0F, 0x07, 0x00, - 0x03, 0xC1, 0xC0, 0x00, 0xF0, 0x70, 0x00, 0x3E, 0x1C, 0x00, 0x0F, 0xE6, - 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xFE, 0x00, 0x03, 0xFF, 0xE0, 0x00, - 0x3F, 0xFC, 0x00, 0x03, 0xFF, 0x80, 0x01, 0xC7, 0xF0, 0x00, 0x70, 0x7C, - 0x00, 0x1C, 0x0F, 0x00, 0x06, 0x03, 0xCF, 0x03, 0x80, 0xF3, 0xC0, 0xE0, - 0x3C, 0xF0, 0x38, 0x0E, 0x3C, 0x0E, 0x07, 0x8F, 0x03, 0x01, 0xE3, 0xE1, - 0xC0, 0xF0, 0xF8, 0x70, 0x78, 0x1F, 0x9C, 0xFC, 0x03, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x38, 0x00, 0x00, 0x0E, 0x00, - 0x00, 0x03, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x07, 0x80, 0x1F, 0x00, 0x00, 0x70, 0x07, 0xFC, 0x00, 0x0E, - 0x00, 0xFF, 0xE0, 0x01, 0xC0, 0x1E, 0x1E, 0x00, 0x3C, 0x03, 0x80, 0xF0, - 0x03, 0x80, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x70, 0x0E, 0x00, 0xE0, - 0x07, 0x01, 0xC0, 0x0E, 0x00, 0x70, 0x3C, 0x00, 0xE0, 0x0E, 0x03, 0x80, - 0x0E, 0x00, 0xE0, 0x70, 0x00, 0xF0, 0x1C, 0x0E, 0x00, 0x07, 0x87, 0xC1, - 0xE0, 0x00, 0x7F, 0xF8, 0x1C, 0x00, 0x03, 0xFE, 0x03, 0x80, 0x00, 0x0F, - 0x80, 0x70, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x01, 0xE0, 0x1F, - 0x00, 0x00, 0x1C, 0x07, 0xFC, 0x00, 0x03, 0x80, 0xFF, 0xE0, 0x00, 0x70, - 0x1E, 0x1E, 0x00, 0x0F, 0x03, 0x80, 0xF0, 0x00, 0xE0, 0x70, 0x07, 0x00, - 0x1C, 0x07, 0x00, 0x70, 0x03, 0x80, 0xE0, 0x07, 0x00, 0x70, 0x0E, 0x00, - 0x70, 0x0F, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x1C, 0x00, - 0xF0, 0x1C, 0x03, 0x80, 0x07, 0x87, 0xC0, 0x70, 0x00, 0x7F, 0xF8, 0x07, - 0x00, 0x03, 0xFE, 0x00, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF8, 0x00, - 0x03, 0xFF, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0xF8, 0x7C, 0x00, 0x78, 0x0F, - 0x00, 0x1E, 0x03, 0xC0, 0x0F, 0x00, 0xF0, 0x03, 0xC0, 0x3C, 0x00, 0xF0, - 0x1E, 0x00, 0x3C, 0x07, 0x80, 0x0F, 0x87, 0xC0, 0x01, 0xE3, 0xE0, 0x00, - 0x7F, 0xF0, 0x00, 0x0F, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x03, 0xFC, 0x00, - 0x03, 0xFF, 0x00, 0x01, 0xFB, 0xE0, 0x70, 0xF8, 0x7C, 0x1C, 0x7C, 0x1F, - 0x0E, 0x3C, 0x03, 0xE3, 0x9E, 0x00, 0x79, 0xE7, 0x80, 0x1F, 0xF3, 0xC0, - 0x03, 0xF8, 0xF0, 0x00, 0xFE, 0x3C, 0x00, 0x1F, 0x0F, 0x00, 0x07, 0xC3, - 0xE0, 0x03, 0xF8, 0xF8, 0x03, 0xFE, 0x3F, 0x83, 0xF7, 0xC7, 0xFF, 0xF8, - 0xF0, 0xFF, 0xFC, 0x3E, 0x1F, 0xFC, 0x07, 0x81, 0xFC, 0x00, 0x00, 0x7B, - 0xDF, 0xEF, 0x7B, 0xDC, 0xE7, 0x31, 0x80, 0x00, 0x0E, 0x00, 0x38, 0x00, - 0xE0, 0x03, 0x80, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, - 0x0F, 0x00, 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, - 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, - 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, - 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, - 0x70, 0x00, 0xE0, 0x00, 0xC0, 0x00, 0x00, 0x30, 0x00, 0x70, 0x00, 0xE0, - 0x00, 0xC0, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x0E, 0x00, - 0x1C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x07, - 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, - 0x07, 0x00, 0x0E, 0x00, 0x3C, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x07, - 0x00, 0x0E, 0x00, 0x3C, 0x00, 0x70, 0x01, 0xE0, 0x03, 0x80, 0x0F, 0x00, - 0x1C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x1C, 0x00, 0x70, - 0x01, 0xC0, 0x07, 0x00, 0x00, 0x01, 0xC0, 0x07, 0x00, 0x38, 0x18, 0xE3, - 0x7B, 0xBF, 0xFF, 0xF3, 0xFF, 0x01, 0xE0, 0x1F, 0xC0, 0xF7, 0x07, 0x9E, - 0x1C, 0x38, 0x20, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x78, - 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, - 0x00, 0x1C, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xE0, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, - 0x78, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, - 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x3E, 0x7C, 0xF9, 0xE7, - 0xC1, 0x83, 0x0C, 0x18, 0x63, 0xC6, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFE, 0x7D, 0xF7, 0xBE, 0xF8, 0x00, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, - 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, - 0x00, 0x30, 0x00, 0x03, 0x80, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, 0x0C, - 0x00, 0x00, 0xE0, 0x00, 0x06, 0x00, 0x00, 0x70, 0x00, 0x03, 0x00, 0x00, - 0x38, 0x00, 0x01, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x00, 0x0E, 0x00, - 0x00, 0x60, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x38, - 0x00, 0x01, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x00, 0x0E, 0x00, 0x00, - 0x60, 0x00, 0x07, 0x00, 0x00, 0x30, 0x00, 0x03, 0x80, 0x00, 0x18, 0x00, - 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, - 0xE0, 0x3F, 0x0F, 0xC0, 0xF8, 0x07, 0x81, 0xE0, 0x0F, 0x87, 0x80, 0x0F, - 0x1F, 0x00, 0x1E, 0x3C, 0x00, 0x3C, 0x78, 0x00, 0x79, 0xE0, 0x00, 0xF3, - 0xC0, 0x01, 0xE7, 0x80, 0x07, 0xDE, 0x00, 0x0F, 0xBC, 0x00, 0x1E, 0x78, - 0x00, 0x3C, 0xF0, 0x00, 0x79, 0xE0, 0x00, 0xF7, 0x80, 0x03, 0xEF, 0x00, - 0x07, 0xDE, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0x78, 0x00, 0x7C, 0xF0, 0x00, - 0xF1, 0xE0, 0x03, 0xE3, 0xC0, 0x07, 0x87, 0xC0, 0x1F, 0x0F, 0x80, 0x7C, - 0x0F, 0xC3, 0xF0, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0x00, 0x1F, 0xFC, 0x00, - 0x0F, 0xC0, 0x00, 0x00, 0x18, 0x01, 0xC0, 0x1C, 0x01, 0xE0, 0x1F, 0x0F, - 0xFB, 0xFF, 0xDF, 0xFC, 0xFF, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, - 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, - 0x78, 0x07, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, - 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, 0x00, 0x00, 0x03, 0xFC, - 0x00, 0x03, 0xFF, 0xE0, 0x00, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xE0, 0x0F, - 0xC0, 0xFC, 0x03, 0xE0, 0x07, 0xC0, 0xF8, 0x00, 0xF8, 0x1F, 0x00, 0x0F, - 0x03, 0xC0, 0x01, 0xE0, 0xF8, 0x00, 0x3C, 0x1E, 0x00, 0x07, 0x80, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0xFF, - 0xFF, 0xFC, 0x3F, 0xFF, 0xFF, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFC, - 0x00, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xFE, 0x00, 0x3F, 0xFF, 0x80, 0x3F, - 0xFF, 0xE0, 0x1F, 0x81, 0xF8, 0x1F, 0x00, 0x7C, 0x1F, 0x00, 0x1E, 0x0F, - 0x00, 0x0F, 0x0F, 0x80, 0x07, 0x87, 0x80, 0x03, 0xC0, 0x00, 0x03, 0xC0, - 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x7F, 0xE0, - 0x00, 0x3F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xFE, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0x79, 0xE0, 0x00, 0x3C, 0xF0, 0x00, 0x1E, 0x78, 0x00, 0x1E, 0x3C, 0x00, - 0x0F, 0x1E, 0x00, 0x0F, 0x0F, 0x80, 0x1F, 0x83, 0xF0, 0x3F, 0x81, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0x80, 0x1F, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x03, 0xFC, 0x00, 0x07, 0xBC, - 0x00, 0x0F, 0xBC, 0x00, 0x1F, 0x7C, 0x00, 0x3E, 0x78, 0x00, 0x7C, 0x78, - 0x00, 0xF8, 0x78, 0x00, 0xF0, 0x78, 0x01, 0xE0, 0xF0, 0x03, 0xC0, 0xF0, - 0x07, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x1E, 0x01, 0xF0, 0x3C, 0x01, 0xE0, - 0x78, 0x01, 0xE0, 0x7F, 0xFF, 0xFF, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, - 0xFF, 0xFF, 0xFE, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, - 0x00, 0x07, 0x80, 0x00, 0x07, 0x80, 0x00, 0x07, 0x80, 0x00, 0x07, 0x80, - 0x00, 0x0F, 0x80, 0x00, 0x7F, 0xFF, 0xC0, 0x1F, 0xFF, 0xF8, 0x03, 0xFF, - 0xFF, 0x00, 0x7F, 0xFF, 0xE0, 0x1E, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x03, 0xC7, 0xE0, 0x00, 0xF7, 0xFF, 0x80, 0x1F, - 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0x80, 0xFE, 0x03, 0xF0, 0x1F, 0x00, 0x3F, - 0x03, 0xC0, 0x03, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x70, - 0x00, 0x00, 0x1E, 0x1E, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0xF0, 0x7C, 0x00, - 0x3C, 0x0F, 0x80, 0x0F, 0x80, 0xFC, 0x07, 0xE0, 0x1F, 0xFF, 0xF8, 0x01, - 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x3F, 0xF8, 0x00, 0x7F, 0xFC, 0x00, 0xFF, 0xFE, 0x01, 0xF8, - 0x3E, 0x03, 0xE0, 0x1F, 0x07, 0xC0, 0x1F, 0x0F, 0x80, 0x0F, 0x0F, 0x00, - 0x0F, 0x1F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x1F, - 0x80, 0x3C, 0x7F, 0xE0, 0x3D, 0xFF, 0xF0, 0x7B, 0xFF, 0xF8, 0x7F, 0xC1, - 0xF8, 0x7F, 0x00, 0x7C, 0x7E, 0x00, 0x7C, 0xFC, 0x00, 0x3C, 0xF8, 0x00, - 0x3C, 0xF8, 0x00, 0x3C, 0xF0, 0x00, 0x3C, 0xF0, 0x00, 0x38, 0xF0, 0x00, - 0x78, 0xF0, 0x00, 0x78, 0xF0, 0x00, 0xF0, 0xF8, 0x01, 0xF0, 0x7C, 0x03, - 0xE0, 0x7E, 0x0F, 0xC0, 0x3F, 0xFF, 0xC0, 0x3F, 0xFF, 0x80, 0x0F, 0xFE, - 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xFF, 0xFF, 0x87, 0xFF, 0xFF, 0xE1, 0xFF, - 0xFF, 0xF8, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, - 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, 0x00, 0x03, - 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0x80, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xFE, 0x00, 0x1F, - 0xFF, 0x80, 0x1F, 0xFF, 0xE0, 0x1F, 0x81, 0xF8, 0x1F, 0x00, 0x7C, 0x0F, - 0x00, 0x1E, 0x0F, 0x00, 0x0F, 0x07, 0x80, 0x07, 0x83, 0xC0, 0x03, 0xC1, - 0xE0, 0x03, 0xC0, 0xF8, 0x03, 0xC0, 0x7E, 0x07, 0xC0, 0x1F, 0xFF, 0xC0, - 0x07, 0xFF, 0xC0, 0x03, 0xFF, 0xE0, 0x07, 0xFF, 0xF8, 0x07, 0xE0, 0x7E, - 0x07, 0xC0, 0x0F, 0x07, 0x80, 0x07, 0xC7, 0xC0, 0x01, 0xE3, 0xC0, 0x00, - 0xF3, 0xC0, 0x00, 0x79, 0xE0, 0x00, 0x3C, 0xF0, 0x00, 0x1C, 0x78, 0x00, - 0x1E, 0x3C, 0x00, 0x0F, 0x1F, 0x00, 0x0F, 0x0F, 0xC0, 0x0F, 0x83, 0xF0, - 0x3F, 0x81, 0xFF, 0xFF, 0x80, 0x7F, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0xFC, - 0x03, 0xFF, 0xFC, 0x07, 0xF0, 0x7E, 0x07, 0xC0, 0x3E, 0x0F, 0x80, 0x1F, - 0x0F, 0x00, 0x0F, 0x1E, 0x00, 0x0F, 0x1E, 0x00, 0x0F, 0x3C, 0x00, 0x0F, - 0x3C, 0x00, 0x0F, 0x3C, 0x00, 0x1F, 0x3C, 0x00, 0x1F, 0x3C, 0x00, 0x3F, - 0x3E, 0x00, 0x7E, 0x3E, 0x00, 0xFE, 0x1F, 0x83, 0xFE, 0x1F, 0xFF, 0xFE, - 0x0F, 0xFF, 0xBC, 0x07, 0xFE, 0x3C, 0x01, 0xF8, 0x7C, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x78, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF0, 0xF0, 0x01, 0xF0, - 0xF0, 0x03, 0xE0, 0xF8, 0x07, 0xC0, 0xFC, 0x1F, 0xC0, 0x7F, 0xFF, 0x80, - 0x3F, 0xFE, 0x00, 0x1F, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xC1, 0xF0, - 0x78, 0x3E, 0x0F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7C, 0x1F, - 0x07, 0x83, 0xE0, 0xF8, 0x00, 0x03, 0xE0, 0x7C, 0x0F, 0x03, 0xE0, 0x7C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xE0, 0x7C, 0x0F, - 0x81, 0xE0, 0x7C, 0x01, 0x80, 0x30, 0x0C, 0x01, 0x80, 0x60, 0x3C, 0x06, - 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x70, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0xFE, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x03, 0xFE, 0x00, - 0x07, 0xFC, 0x00, 0x07, 0xFC, 0x00, 0x0F, 0xF8, 0x00, 0x07, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x1F, 0xF0, 0x00, - 0x01, 0xFF, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0E, - 0x00, 0x00, 0x00, 0x80, 0x1F, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xE3, 0xFF, - 0xFF, 0xF8, 0xFF, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0x1F, 0xFF, 0xFF, - 0xC7, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF8, 0x04, 0x00, 0x00, 0x01, 0xC0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x03, 0xFE, 0x00, 0x00, - 0x3F, 0xE0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, - 0x3F, 0x80, 0x00, 0x7F, 0xC0, 0x00, 0xFF, 0x80, 0x00, 0xFF, 0x80, 0x01, - 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0xFE, - 0x00, 0x3F, 0xF8, 0x0F, 0xFF, 0xC1, 0xFF, 0xFE, 0x1F, 0x03, 0xE3, 0xE0, - 0x1F, 0x7C, 0x00, 0xF7, 0x80, 0x0F, 0x78, 0x00, 0xFF, 0x00, 0x0F, 0xF0, - 0x01, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0x80, 0x00, 0x78, 0x00, 0x0F, 0x80, - 0x00, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, 0x3E, - 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0x80, 0x00, 0x00, 0x00, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFE, - 0x00, 0x00, 0x7F, 0xE0, 0x0F, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xE0, - 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x0F, 0xC0, 0x00, 0x00, 0xFC, 0x00, - 0xFC, 0x00, 0x00, 0x01, 0xF0, 0x0F, 0xC0, 0x00, 0x00, 0x0F, 0x80, 0xF8, - 0x00, 0xFC, 0x00, 0x3E, 0x0F, 0x80, 0x1F, 0xF9, 0xE1, 0xF0, 0x78, 0x03, - 0xFF, 0xCF, 0x07, 0x87, 0xC0, 0x3F, 0x0F, 0xF0, 0x3C, 0x7C, 0x03, 0xE0, - 0x3F, 0x01, 0xE3, 0xC0, 0x3E, 0x01, 0xF8, 0x0F, 0x3E, 0x03, 0xE0, 0x0F, - 0x80, 0x79, 0xE0, 0x1E, 0x00, 0x7C, 0x03, 0xDF, 0x01, 0xE0, 0x03, 0xC0, - 0x3E, 0xF0, 0x1F, 0x00, 0x3E, 0x01, 0xE7, 0x80, 0xF0, 0x01, 0xE0, 0x0F, - 0x38, 0x07, 0x80, 0x0F, 0x00, 0xFB, 0xC0, 0x78, 0x00, 0xF0, 0x07, 0x9E, - 0x03, 0xC0, 0x07, 0x80, 0x7C, 0xF0, 0x1E, 0x00, 0x78, 0x07, 0xC7, 0x80, - 0xF0, 0x07, 0xC0, 0x7E, 0x3C, 0x07, 0x80, 0x7C, 0x07, 0xE1, 0xE0, 0x3E, - 0x07, 0xE0, 0x7E, 0x0F, 0x00, 0xF8, 0x7F, 0x8F, 0xC0, 0x7C, 0x07, 0xFF, - 0x7F, 0xFC, 0x01, 0xE0, 0x1F, 0xF1, 0xFF, 0x80, 0x0F, 0x00, 0x7E, 0x0F, - 0xF0, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, - 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFE, 0x00, 0xF8, 0x00, 0x00, - 0x0F, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x1F, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0x3F, 0xFF, 0xE0, 0x00, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x1F, 0xE0, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x03, 0xDF, 0x00, 0x00, 0x1E, - 0x7C, 0x00, 0x00, 0x79, 0xF0, 0x00, 0x03, 0xC7, 0xC0, 0x00, 0x0F, 0x1F, - 0x00, 0x00, 0x78, 0x3C, 0x00, 0x03, 0xE0, 0xF0, 0x00, 0x0F, 0x03, 0xE0, - 0x00, 0x78, 0x0F, 0x80, 0x01, 0xE0, 0x3E, 0x00, 0x0F, 0x00, 0xF8, 0x00, - 0x3C, 0x03, 0xE0, 0x01, 0xE0, 0x0F, 0x80, 0x0F, 0x80, 0x1E, 0x00, 0x3C, - 0x00, 0x7C, 0x01, 0xFF, 0xFF, 0xF0, 0x07, 0xFF, 0xFF, 0xC0, 0x3F, 0xFF, - 0xFF, 0x00, 0xFF, 0xFF, 0xFC, 0x07, 0xC0, 0x01, 0xF0, 0x3E, 0x00, 0x03, - 0xC0, 0xF8, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0xF8, - 0xF8, 0x00, 0x03, 0xE3, 0xC0, 0x00, 0x0F, 0x9F, 0x00, 0x00, 0x3E, 0xF8, - 0x00, 0x00, 0x7B, 0xE0, 0x00, 0x01, 0xF0, 0x01, 0xFF, 0xFF, 0x00, 0x0F, - 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xFC, 0x03, 0xFF, 0xFF, 0xE0, 0x3E, 0x00, - 0x1F, 0x81, 0xE0, 0x00, 0x7C, 0x0F, 0x00, 0x01, 0xE0, 0x78, 0x00, 0x0F, - 0x03, 0xC0, 0x00, 0x78, 0x3C, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x3C, 0x0F, - 0x00, 0x01, 0xE0, 0x78, 0x00, 0x1E, 0x07, 0xC0, 0x03, 0xE0, 0x3F, 0xFF, - 0xFC, 0x01, 0xFF, 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0xFF, 0xFF, 0xFE, - 0x07, 0x80, 0x01, 0xF0, 0x3C, 0x00, 0x07, 0xC1, 0xE0, 0x00, 0x1E, 0x0F, - 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x07, 0x87, 0x80, 0x00, 0x3C, 0x3C, 0x00, - 0x01, 0xE1, 0xE0, 0x00, 0x1E, 0x1F, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x0F, - 0x87, 0x80, 0x00, 0xF8, 0x3C, 0x00, 0x1F, 0x81, 0xFF, 0xFF, 0xF8, 0x1F, - 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x1F, - 0xFF, 0xFC, 0x00, 0xFE, 0x03, 0xF0, 0x07, 0xE0, 0x03, 0xE0, 0x3E, 0x00, - 0x07, 0x81, 0xF0, 0x00, 0x1E, 0x07, 0x80, 0x00, 0x3C, 0x3C, 0x00, 0x00, - 0xF1, 0xF0, 0x00, 0x03, 0xC7, 0x80, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, 0x00, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x3C, 0xF0, 0x00, 0x01, 0xF3, 0xC0, 0x00, 0x07, - 0x8F, 0x80, 0x00, 0x3E, 0x3E, 0x00, 0x00, 0xF0, 0x7C, 0x00, 0x07, 0xC1, - 0xF0, 0x00, 0x3E, 0x03, 0xE0, 0x03, 0xF0, 0x0F, 0xE0, 0x3F, 0x80, 0x1F, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x01, 0xFF, 0xFF, 0x00, 0x03, 0xFF, 0xFF, 0x80, 0x07, 0xFF, - 0xFF, 0x80, 0x1F, 0xFF, 0xFF, 0x80, 0x3E, 0x00, 0x3F, 0x80, 0x78, 0x00, - 0x1F, 0x80, 0xF0, 0x00, 0x1F, 0x03, 0xE0, 0x00, 0x1E, 0x07, 0xC0, 0x00, - 0x3E, 0x0F, 0x00, 0x00, 0x3C, 0x1E, 0x00, 0x00, 0x78, 0x3C, 0x00, 0x00, - 0xF0, 0xF8, 0x00, 0x01, 0xE1, 0xF0, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0x07, - 0x87, 0x80, 0x00, 0x0F, 0x0F, 0x00, 0x00, 0x3C, 0x3E, 0x00, 0x00, 0x78, - 0x7C, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x01, 0xE1, 0xE0, 0x00, 0x07, 0x87, - 0xC0, 0x00, 0x0F, 0x0F, 0x80, 0x00, 0x3E, 0x1E, 0x00, 0x00, 0x78, 0x3C, - 0x00, 0x01, 0xF0, 0x78, 0x00, 0x03, 0xC1, 0xF0, 0x00, 0x0F, 0x03, 0xE0, - 0x00, 0x3E, 0x07, 0x80, 0x01, 0xF8, 0x0F, 0x00, 0x0F, 0xE0, 0x1F, 0xFF, - 0xFF, 0x80, 0x7F, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xF0, 0x01, 0xFF, 0xFF, - 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFE, 0x03, 0xFF, 0xFF, 0xFC, 0x07, 0xFF, - 0xFF, 0xF0, 0x1F, 0xFF, 0xFF, 0xE0, 0x3E, 0x00, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0x0F, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, - 0x07, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x3F, 0xFF, 0xFF, 0x80, - 0x7F, 0xFF, 0xFF, 0x00, 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x1F, 0xFF, - 0xFF, 0xE0, 0x7F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFF, 0x81, 0xFF, 0xFF, - 0xFE, 0x00, 0x01, 0xFF, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, 0xF0, 0x1F, 0xFF, - 0xFF, 0xC0, 0xFF, 0xFF, 0xFE, 0x03, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xFF, - 0xFF, 0xC0, 0x0F, 0xFF, 0xFF, 0x00, 0x7F, 0xFF, 0xFC, 0x01, 0xFF, 0xFF, - 0xF0, 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x7F, 0xC0, 0x00, 0x01, 0xFF, 0xF8, 0x00, 0x07, 0xFF, 0xFF, 0x00, 0x07, - 0xFF, 0xFF, 0xC0, 0x07, 0xF0, 0x0F, 0xF0, 0x0F, 0xC0, 0x00, 0xF8, 0x0F, - 0xC0, 0x00, 0x3E, 0x07, 0x80, 0x00, 0x1F, 0x07, 0x80, 0x00, 0x07, 0x87, - 0xC0, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x3C, 0x00, 0x1F, 0xFF, - 0xBC, 0x00, 0x0F, 0xFF, 0xDE, 0x00, 0x0F, 0xFF, 0xEF, 0x00, 0x07, 0xFF, - 0xF7, 0x80, 0x00, 0x00, 0x73, 0xC0, 0x00, 0x00, 0x39, 0xE0, 0x00, 0x00, - 0x3C, 0xF0, 0x00, 0x00, 0x1E, 0x78, 0x00, 0x00, 0x1F, 0x3E, 0x00, 0x00, - 0x0F, 0x8F, 0x00, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x0F, 0xC3, 0xF0, 0x00, - 0x0F, 0xE0, 0xFC, 0x00, 0x1F, 0xF0, 0x7F, 0x80, 0x7F, 0x78, 0x1F, 0xFF, - 0xFE, 0x38, 0x03, 0xFF, 0xFE, 0x1C, 0x00, 0xFF, 0xFC, 0x0E, 0x00, 0x0F, - 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0xF0, 0x00, 0x03, 0xC0, - 0x78, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x01, 0xF0, 0x3E, 0x00, 0x00, 0xF0, - 0x1E, 0x00, 0x00, 0x78, 0x0F, 0x00, 0x00, 0x3C, 0x0F, 0x80, 0x00, 0x3E, - 0x07, 0xC0, 0x00, 0x1F, 0x03, 0xC0, 0x00, 0x0F, 0x01, 0xE0, 0x00, 0x07, - 0x80, 0xF0, 0x00, 0x03, 0xC0, 0xF8, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x01, - 0xF0, 0x3C, 0x00, 0x00, 0xF0, 0x1F, 0xFF, 0xFF, 0xF8, 0x0F, 0xFF, 0xFF, - 0xFC, 0x0F, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0xFE, 0x03, 0xC0, 0x00, - 0x0F, 0x01, 0xE0, 0x00, 0x07, 0x81, 0xF0, 0x00, 0x07, 0xC0, 0xF8, 0x00, - 0x03, 0xE0, 0x78, 0x00, 0x01, 0xE0, 0x3C, 0x00, 0x00, 0xF0, 0x1E, 0x00, - 0x00, 0x78, 0x1F, 0x00, 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x3C, 0x07, 0x80, - 0x00, 0x1E, 0x03, 0xC0, 0x00, 0x0F, 0x01, 0xE0, 0x00, 0x0F, 0x81, 0xF0, - 0x00, 0x07, 0xC0, 0xF0, 0x00, 0x03, 0xC0, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0x81, 0xF0, 0x3E, 0x07, - 0x80, 0xF0, 0x1E, 0x07, 0xC0, 0xF8, 0x1E, 0x03, 0xC0, 0x78, 0x1F, 0x03, - 0xE0, 0x78, 0x0F, 0x01, 0xE0, 0x7C, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0x81, - 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x1E, 0x07, 0xC0, 0xF8, 0x1E, 0x00, 0x00, - 0x00, 0x07, 0x80, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0xF0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x80, 0x00, 0x07, - 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0x78, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x0F, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0x80, 0x00, 0x03, 0xC0, 0xF0, - 0x01, 0xE0, 0x78, 0x00, 0xF0, 0x78, 0x00, 0xF8, 0x3C, 0x00, 0x78, 0x1E, - 0x00, 0x3C, 0x0F, 0x00, 0x3E, 0x07, 0xC0, 0x3E, 0x03, 0xF0, 0x7E, 0x00, - 0xFF, 0xFF, 0x00, 0x3F, 0xFF, 0x00, 0x0F, 0xFE, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x01, 0xE0, 0x00, 0x0F, 0xC0, 0x78, 0x00, 0x07, 0xC0, 0x1E, 0x00, - 0x03, 0xE0, 0x0F, 0x80, 0x03, 0xF0, 0x03, 0xE0, 0x01, 0xF8, 0x00, 0xF0, - 0x00, 0xFC, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0x07, - 0xC0, 0x3F, 0x00, 0x01, 0xE0, 0x1F, 0x80, 0x00, 0x78, 0x0F, 0x80, 0x00, - 0x1E, 0x07, 0xC0, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x03, 0xE3, 0xF0, 0x00, - 0x00, 0xF1, 0xFC, 0x00, 0x00, 0x3C, 0xFF, 0x00, 0x00, 0x0F, 0x7F, 0xE0, - 0x00, 0x07, 0xFE, 0xF8, 0x00, 0x01, 0xFE, 0x1E, 0x00, 0x00, 0x7F, 0x07, - 0xC0, 0x00, 0x1F, 0x80, 0xF0, 0x00, 0x0F, 0xC0, 0x3E, 0x00, 0x03, 0xE0, - 0x07, 0x80, 0x00, 0xF0, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x0F, - 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x78, 0x00, 0x1F, 0x00, 0x1E, 0x00, 0x03, 0xE0, 0x07, 0x80, 0x00, 0xF8, - 0x03, 0xE0, 0x00, 0x1F, 0x00, 0xF0, 0x00, 0x07, 0xC0, 0x3C, 0x00, 0x00, - 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0xF8, - 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x01, 0xF0, 0x00, - 0x07, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x0F, - 0x80, 0x00, 0x3E, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x7C, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, - 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x3C, 0x00, 0x00, 0xF0, - 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, 0xE0, - 0x01, 0xF8, 0x00, 0x00, 0x7E, 0x03, 0xF8, 0x00, 0x01, 0xFC, 0x0F, 0xF0, - 0x00, 0x03, 0xF8, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x3F, 0xC0, 0x00, 0x1F, - 0xC0, 0x7F, 0x80, 0x00, 0x7F, 0x80, 0xFF, 0x00, 0x00, 0xEF, 0x03, 0xFE, - 0x00, 0x03, 0xFE, 0x07, 0xBC, 0x00, 0x0F, 0x78, 0x0F, 0x3C, 0x00, 0x1E, - 0xF0, 0x1E, 0x78, 0x00, 0x79, 0xE0, 0x3C, 0xF0, 0x00, 0xF3, 0xC0, 0xF9, - 0xE0, 0x03, 0xCF, 0x81, 0xE3, 0xC0, 0x07, 0x9E, 0x03, 0xC7, 0x80, 0x1E, - 0x3C, 0x07, 0x8F, 0x00, 0x38, 0x78, 0x1F, 0x1E, 0x00, 0xF0, 0xF0, 0x3C, - 0x1E, 0x03, 0xC3, 0xE0, 0x78, 0x3C, 0x07, 0x87, 0x80, 0xF0, 0x78, 0x1E, - 0x0F, 0x01, 0xE0, 0xF0, 0x3C, 0x1E, 0x07, 0xC1, 0xE0, 0xF0, 0x7C, 0x0F, - 0x03, 0xC1, 0xE0, 0xF0, 0x1E, 0x07, 0x87, 0x81, 0xE0, 0x3C, 0x0F, 0x0E, - 0x03, 0xC0, 0x78, 0x0F, 0x3C, 0x07, 0x81, 0xF0, 0x1E, 0x70, 0x1F, 0x03, - 0xC0, 0x3D, 0xE0, 0x3C, 0x07, 0x80, 0x7F, 0x80, 0x78, 0x0F, 0x00, 0xFF, - 0x00, 0xF0, 0x3E, 0x01, 0xFC, 0x01, 0xE0, 0x78, 0x03, 0xF8, 0x07, 0xC0, - 0xF0, 0x07, 0xE0, 0x0F, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x01, 0xF0, - 0x00, 0x03, 0xC0, 0x7E, 0x00, 0x01, 0xF0, 0x3F, 0x80, 0x00, 0x78, 0x0F, - 0xE0, 0x00, 0x1E, 0x03, 0xFC, 0x00, 0x07, 0x80, 0xFF, 0x00, 0x03, 0xE0, - 0x3F, 0xE0, 0x00, 0xF0, 0x1F, 0xF8, 0x00, 0x3C, 0x07, 0x9E, 0x00, 0x0F, - 0x01, 0xE7, 0xC0, 0x03, 0xC0, 0x78, 0xF0, 0x01, 0xF0, 0x1E, 0x3E, 0x00, - 0x78, 0x0F, 0x87, 0x80, 0x1E, 0x03, 0xC1, 0xF0, 0x07, 0x80, 0xF0, 0x7C, - 0x01, 0xE0, 0x3C, 0x0F, 0x00, 0xF8, 0x1F, 0x03, 0xE0, 0x3C, 0x07, 0x80, - 0x78, 0x0F, 0x01, 0xE0, 0x1F, 0x03, 0xC0, 0x78, 0x07, 0xC1, 0xF0, 0x1E, - 0x00, 0xF8, 0x78, 0x0F, 0x80, 0x3E, 0x1E, 0x03, 0xC0, 0x07, 0x87, 0x80, - 0xF0, 0x01, 0xF1, 0xE0, 0x3C, 0x00, 0x3C, 0xF8, 0x0F, 0x00, 0x0F, 0xBC, - 0x07, 0xC0, 0x03, 0xEF, 0x01, 0xE0, 0x00, 0x7F, 0xC0, 0x78, 0x00, 0x1F, - 0xF0, 0x1E, 0x00, 0x03, 0xFC, 0x0F, 0x80, 0x00, 0xFE, 0x03, 0xC0, 0x00, - 0x1F, 0x80, 0xF0, 0x00, 0x07, 0xE0, 0x3C, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x00, - 0x0F, 0xFF, 0xFF, 0x80, 0x0F, 0xF0, 0x1F, 0xC0, 0x0F, 0xC0, 0x03, 0xF0, - 0x0F, 0x80, 0x00, 0xFC, 0x0F, 0x80, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0x0F, - 0x07, 0x80, 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x01, 0xE3, 0xC0, 0x00, 0x00, - 0xF3, 0xC0, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3D, 0xE0, 0x00, 0x00, - 0x1E, 0xF0, 0x00, 0x00, 0x0F, 0x78, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x07, 0xFC, 0x00, 0x00, 0x03, 0xDE, 0x00, 0x00, 0x01, 0xEF, 0x00, 0x00, - 0x00, 0xF7, 0x80, 0x00, 0x00, 0xFB, 0xC0, 0x00, 0x00, 0x79, 0xE0, 0x00, - 0x00, 0x3C, 0xF0, 0x00, 0x00, 0x3E, 0x78, 0x00, 0x00, 0x1E, 0x3E, 0x00, - 0x00, 0x1F, 0x0F, 0x00, 0x00, 0x1F, 0x07, 0xC0, 0x00, 0x1F, 0x03, 0xF0, - 0x00, 0x1F, 0x00, 0xFC, 0x00, 0x3F, 0x80, 0x3F, 0x80, 0x7F, 0x80, 0x1F, - 0xFF, 0xFF, 0x00, 0x03, 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, - 0x0F, 0xF8, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0x00, 0x0F, 0xFF, 0xFE, 0x00, - 0x7F, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0xE0, 0x3E, 0x00, 0x3F, 0x81, 0xE0, - 0x00, 0x7C, 0x0F, 0x00, 0x01, 0xE0, 0xF8, 0x00, 0x0F, 0x07, 0xC0, 0x00, - 0x78, 0x3C, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x1E, 0x0F, 0x00, 0x01, 0xE0, - 0xF8, 0x00, 0x0F, 0x07, 0xC0, 0x00, 0xF8, 0x3C, 0x00, 0x0F, 0x81, 0xE0, - 0x01, 0xF8, 0x0F, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xFC, 0x07, 0xFF, 0xFF, - 0x80, 0x3F, 0xFF, 0xF0, 0x01, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x07, 0x80, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x00, 0x0F, 0xFF, 0xFF, - 0x80, 0x0F, 0xF0, 0x1F, 0xC0, 0x0F, 0xC0, 0x03, 0xF0, 0x0F, 0xC0, 0x00, - 0xFC, 0x0F, 0x80, 0x00, 0x3E, 0x0F, 0x80, 0x00, 0x0F, 0x07, 0x80, 0x00, - 0x07, 0xC7, 0xC0, 0x00, 0x01, 0xE3, 0xC0, 0x00, 0x00, 0xF3, 0xC0, 0x00, - 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3D, 0xE0, 0x00, 0x00, 0x1E, 0xF0, 0x00, - 0x00, 0x0F, 0x78, 0x00, 0x00, 0x07, 0xB8, 0x00, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0x03, 0xDE, 0x00, 0x00, 0x01, 0xEF, 0x00, 0x00, 0x00, 0xF7, 0x80, - 0x00, 0x00, 0x7B, 0xC0, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x00, 0x3C, 0xF0, - 0x00, 0x00, 0x3C, 0x78, 0x00, 0x08, 0x3E, 0x3E, 0x00, 0x0E, 0x1E, 0x0F, - 0x00, 0x0F, 0x9F, 0x07, 0xC0, 0x07, 0xFF, 0x03, 0xF0, 0x01, 0xFF, 0x00, - 0xFC, 0x00, 0x7F, 0x00, 0x3F, 0x80, 0xFF, 0x80, 0x1F, 0xFF, 0xFF, 0xE0, - 0x03, 0xFF, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x7E, 0x00, 0x0F, 0xF0, 0x1F, - 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xFF, - 0xC0, 0x07, 0xFF, 0xFF, 0xC0, 0x1F, 0xFF, 0xFF, 0x80, 0xFF, 0xFF, 0xFE, - 0x03, 0xE0, 0x00, 0xFC, 0x0F, 0x00, 0x01, 0xF0, 0x3C, 0x00, 0x03, 0xC1, - 0xF0, 0x00, 0x0F, 0x07, 0xC0, 0x00, 0x3C, 0x1E, 0x00, 0x00, 0xF0, 0x78, - 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x1E, 0x0F, 0x80, 0x00, 0x78, 0x3E, 0x00, - 0x03, 0xE0, 0xF0, 0x00, 0x1F, 0x03, 0xC0, 0x01, 0xF8, 0x0F, 0xFF, 0xFF, - 0xC0, 0x7F, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xF8, 0x07, 0xFF, 0xFF, 0xF0, - 0x1E, 0x00, 0x07, 0xE0, 0xF8, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x1E, 0x0F, - 0x00, 0x00, 0x78, 0x3C, 0x00, 0x01, 0xE0, 0xF0, 0x00, 0x07, 0x87, 0xC0, - 0x00, 0x1E, 0x1F, 0x00, 0x00, 0xF0, 0x78, 0x00, 0x03, 0xC1, 0xE0, 0x00, - 0x0F, 0x07, 0x80, 0x00, 0x3C, 0x3E, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x03, - 0xC3, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0xFC, - 0x00, 0x1F, 0xFF, 0xF8, 0x01, 0xFF, 0xFF, 0xC0, 0x1F, 0xC0, 0x7F, 0x01, - 0xF0, 0x00, 0xFC, 0x0F, 0x00, 0x03, 0xE0, 0xF0, 0x00, 0x0F, 0x07, 0x00, - 0x00, 0x78, 0x78, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0x1E, 0x1E, 0x00, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, - 0xFF, 0xE0, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0x0F, - 0xFF, 0xC0, 0x00, 0x07, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x07, - 0xF0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x3C, 0xF0, 0x00, 0x01, 0xE7, - 0x80, 0x00, 0x0F, 0x3C, 0x00, 0x00, 0x71, 0xE0, 0x00, 0x07, 0x8F, 0x00, - 0x00, 0x3C, 0x7C, 0x00, 0x03, 0xC1, 0xF0, 0x00, 0x7C, 0x0F, 0xE0, 0x1F, - 0xC0, 0x3F, 0xFF, 0xFC, 0x00, 0xFF, 0xFF, 0xC0, 0x03, 0xFF, 0xF8, 0x00, - 0x03, 0xFE, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0x7F, - 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFE, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0x0F, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x0F, 0x00, 0x00, 0x3C, 0x1E, - 0x00, 0x00, 0xF8, 0x7C, 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x03, 0xC1, 0xE0, - 0x00, 0x07, 0x83, 0xC0, 0x00, 0x0F, 0x0F, 0x80, 0x00, 0x3E, 0x1F, 0x00, - 0x00, 0x7C, 0x3C, 0x00, 0x00, 0xF0, 0x78, 0x00, 0x01, 0xE0, 0xF0, 0x00, - 0x03, 0xC3, 0xE0, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x1F, 0x0F, 0x00, 0x00, - 0x3C, 0x1E, 0x00, 0x00, 0x78, 0x3C, 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x03, - 0xE1, 0xF0, 0x00, 0x07, 0x83, 0xC0, 0x00, 0x0F, 0x07, 0x80, 0x00, 0x1E, - 0x1F, 0x00, 0x00, 0x7C, 0x3E, 0x00, 0x00, 0xF8, 0x78, 0x00, 0x01, 0xE0, - 0xF0, 0x00, 0x03, 0xC1, 0xE0, 0x00, 0x0F, 0x83, 0xC0, 0x00, 0x1E, 0x07, - 0x80, 0x00, 0x7C, 0x0F, 0x80, 0x01, 0xF0, 0x0F, 0x80, 0x07, 0xE0, 0x1F, - 0xC0, 0x7F, 0x80, 0x1F, 0xFF, 0xFE, 0x00, 0x1F, 0xFF, 0xF0, 0x00, 0x1F, - 0xFF, 0xC0, 0x00, 0x07, 0xFC, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFF, 0xC0, - 0x00, 0x0F, 0xBE, 0x00, 0x00, 0x79, 0xF0, 0x00, 0x07, 0xC7, 0x80, 0x00, - 0x3C, 0x3C, 0x00, 0x03, 0xE1, 0xE0, 0x00, 0x1E, 0x0F, 0x80, 0x01, 0xF0, - 0x7C, 0x00, 0x0F, 0x03, 0xE0, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x80, 0x78, - 0x00, 0x78, 0x03, 0xC0, 0x07, 0xC0, 0x1E, 0x00, 0x3C, 0x00, 0xF0, 0x03, - 0xE0, 0x07, 0xC0, 0x1E, 0x00, 0x3E, 0x01, 0xF0, 0x01, 0xF0, 0x0F, 0x00, - 0x07, 0x80, 0xF0, 0x00, 0x3C, 0x07, 0x80, 0x01, 0xE0, 0x78, 0x00, 0x0F, - 0x07, 0xC0, 0x00, 0x7C, 0x3C, 0x00, 0x03, 0xE3, 0xE0, 0x00, 0x1F, 0x1E, - 0x00, 0x00, 0xF9, 0xF0, 0x00, 0x03, 0xCF, 0x00, 0x00, 0x1E, 0xF0, 0x00, - 0x00, 0xF7, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF0, - 0x00, 0x1F, 0x00, 0x03, 0xDE, 0x00, 0x07, 0xE0, 0x00, 0xFB, 0xC0, 0x00, - 0xFC, 0x00, 0x1E, 0x78, 0x00, 0x3F, 0x80, 0x07, 0xCF, 0x00, 0x07, 0xF0, - 0x00, 0xF9, 0xE0, 0x01, 0xFE, 0x00, 0x3E, 0x3C, 0x00, 0x7F, 0xC0, 0x07, - 0xC7, 0x80, 0x0F, 0x78, 0x01, 0xF0, 0xF0, 0x03, 0xEF, 0x00, 0x3E, 0x1E, - 0x00, 0x79, 0xE0, 0x0F, 0x83, 0xC0, 0x1F, 0x3C, 0x01, 0xF0, 0x78, 0x03, - 0xC7, 0x80, 0x3C, 0x0F, 0x00, 0xF8, 0xF0, 0x0F, 0x80, 0xE0, 0x1E, 0x1E, - 0x01, 0xE0, 0x1C, 0x07, 0xC1, 0xC0, 0x7C, 0x03, 0x80, 0xF0, 0x3C, 0x0F, - 0x00, 0x70, 0x3E, 0x07, 0x83, 0xE0, 0x0E, 0x07, 0x80, 0xF0, 0x78, 0x01, - 0xC1, 0xF0, 0x1E, 0x1F, 0x00, 0x3C, 0x3C, 0x03, 0xC3, 0xE0, 0x07, 0x8F, - 0x80, 0x78, 0x78, 0x00, 0xF1, 0xE0, 0x0F, 0x1F, 0x00, 0x1E, 0x7C, 0x01, - 0xE3, 0xC0, 0x03, 0xCF, 0x00, 0x3C, 0xF8, 0x00, 0x7B, 0xE0, 0x07, 0x9E, - 0x00, 0x0F, 0x78, 0x00, 0xF7, 0xC0, 0x01, 0xFF, 0x00, 0x1E, 0xF0, 0x00, - 0x3F, 0xC0, 0x03, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0x80, 0x00, 0xFE, - 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x7C, - 0x00, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x07, 0xC0, 0x00, 0x3E, 0x00, - 0x7C, 0x00, 0x07, 0xC0, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, - 0x00, 0x01, 0xF0, 0x03, 0xE0, 0x00, 0x1F, 0x00, 0x7C, 0x00, 0x00, 0xF8, - 0x0F, 0x80, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x00, 0x7C, 0x1F, 0x00, 0x00, - 0x07, 0xC3, 0xE0, 0x00, 0x00, 0x7C, 0x7C, 0x00, 0x00, 0x03, 0xEF, 0x80, - 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x0F, 0xBE, 0x00, - 0x00, 0x01, 0xF3, 0xE0, 0x00, 0x00, 0x3E, 0x1F, 0x00, 0x00, 0x03, 0xE1, - 0xF0, 0x00, 0x00, 0x7C, 0x0F, 0x80, 0x00, 0x0F, 0x80, 0xF8, 0x00, 0x01, - 0xF0, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x03, 0xE0, - 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x03, 0xF0, 0x03, 0xF0, 0x00, - 0x1F, 0x00, 0x7E, 0x00, 0x01, 0xF8, 0x0F, 0xC0, 0x00, 0x0F, 0x80, 0xF8, - 0x00, 0x00, 0x7D, 0xF0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x1F, 0x1F, 0x80, - 0x00, 0xF8, 0x3E, 0x00, 0x03, 0xE0, 0xF8, 0x00, 0x1F, 0x01, 0xF0, 0x00, - 0xF8, 0x07, 0xC0, 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0x3E, 0x01, 0xF0, - 0x00, 0xF8, 0x07, 0xC0, 0x01, 0xF0, 0x3E, 0x00, 0x07, 0xC1, 0xF0, 0x00, - 0x0F, 0x0F, 0x80, 0x00, 0x3E, 0x7C, 0x00, 0x00, 0x79, 0xE0, 0x00, 0x01, - 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xC0, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x07, 0x80, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xFF, 0xFF, 0xC0, - 0x1F, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xFE, - 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xFE, 0x01, 0xFF, 0xFF, 0xFF, 0x80, 0x7F, - 0xFF, 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0xF8, 0x00, 0x00, 0x7F, 0xC0, 0x1F, - 0xF0, 0x07, 0xFC, 0x01, 0xFE, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, - 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, - 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, - 0xE0, 0x00, 0x7F, 0xC0, 0x3F, 0xE0, 0x0F, 0xF8, 0x03, 0xFE, 0x00, 0xE3, - 0x8E, 0x38, 0xE1, 0x86, 0x18, 0x61, 0x87, 0x1C, 0x71, 0xC7, 0x0C, 0x30, - 0xC3, 0x0C, 0x38, 0xE3, 0x8E, 0x38, 0x61, 0x86, 0x18, 0x61, 0xC7, 0x1C, - 0x71, 0xC0, 0x00, 0x7F, 0xC0, 0x1F, 0xF0, 0x07, 0xFC, 0x03, 0xFE, 0x00, - 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, - 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, - 0x3C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, - 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, - 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x03, - 0xC0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x7F, 0x80, 0x3F, 0xE0, - 0x0F, 0xF8, 0x03, 0xFE, 0x00, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x1F, 0x00, - 0x1F, 0xC0, 0x0E, 0xE0, 0x0E, 0x70, 0x0F, 0x38, 0x07, 0x1C, 0x07, 0x0E, - 0x03, 0x83, 0x83, 0x81, 0xC3, 0xC0, 0xE1, 0xC0, 0x71, 0xC0, 0x39, 0xE0, - 0x0E, 0xE0, 0x07, 0xF0, 0x03, 0xF0, 0x01, 0xC0, 0x7F, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0xF8, 0x78, 0x3C, 0x1C, 0x0E, 0x0E, 0x07, 0x00, - 0x1F, 0xE0, 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xF0, 0x1F, 0xFF, 0xF0, 0x7E, - 0x07, 0xE1, 0xF0, 0x07, 0xC3, 0xC0, 0x07, 0x80, 0x00, 0x0F, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xF0, 0x00, 0x07, 0xE0, 0x0F, 0xFF, - 0xC0, 0xFF, 0xFF, 0x07, 0xFF, 0x9E, 0x1F, 0xC0, 0x3C, 0x7C, 0x00, 0x78, - 0xF0, 0x00, 0xF3, 0xC0, 0x03, 0xC7, 0x80, 0x07, 0x8F, 0x00, 0x1F, 0x1E, - 0x00, 0x7E, 0x3F, 0x07, 0xFC, 0x3F, 0xFF, 0x7E, 0x7F, 0xFC, 0xFC, 0x7F, - 0xF0, 0xF8, 0x3F, 0x00, 0xF0, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x0F, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0x83, 0xE0, 0x03, 0xC7, 0xFC, - 0x01, 0xEF, 0xFF, 0x00, 0xFF, 0xFF, 0xC0, 0xF7, 0x83, 0xF0, 0x7F, 0x00, - 0xF8, 0x3F, 0x00, 0x3E, 0x1F, 0x00, 0x0F, 0x1F, 0x80, 0x07, 0x8F, 0x80, - 0x03, 0xC7, 0x80, 0x01, 0xE3, 0xC0, 0x00, 0xF1, 0xE0, 0x00, 0x79, 0xF0, - 0x00, 0x3C, 0xF0, 0x00, 0x3C, 0x78, 0x00, 0x1E, 0x3C, 0x00, 0x0F, 0x1E, - 0x00, 0x0F, 0x9F, 0x00, 0x07, 0x8F, 0xC0, 0x07, 0xC7, 0xE0, 0x07, 0xC3, - 0xF8, 0x07, 0xC1, 0xFE, 0x0F, 0xC1, 0xEF, 0xFF, 0xE0, 0xF3, 0xFF, 0xC0, - 0x78, 0xFF, 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x3F, 0x80, 0x03, 0xFF, - 0x80, 0x3F, 0xFF, 0x01, 0xFF, 0xFE, 0x0F, 0xE0, 0xF8, 0x7E, 0x01, 0xF1, - 0xF0, 0x03, 0xCF, 0x80, 0x0F, 0x3C, 0x00, 0x3D, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x1E, 0x00, 0x00, 0xF8, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x0F, 0x3C, - 0x00, 0x3C, 0xF8, 0x01, 0xE1, 0xF0, 0x0F, 0x87, 0xE0, 0xFC, 0x0F, 0xFF, - 0xE0, 0x3F, 0xFF, 0x00, 0x7F, 0xF8, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, - 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x3C, 0x00, 0x3F, 0x07, 0x80, 0x1F, 0xF8, 0xF0, 0x0F, 0xFF, 0x3E, 0x03, - 0xFF, 0xF7, 0x80, 0xFC, 0x1F, 0xF0, 0x3F, 0x00, 0xFE, 0x07, 0xC0, 0x0F, - 0xC1, 0xF0, 0x01, 0xF0, 0x3C, 0x00, 0x3E, 0x0F, 0x80, 0x07, 0xC1, 0xE0, - 0x00, 0x78, 0x3C, 0x00, 0x1F, 0x0F, 0x80, 0x03, 0xC1, 0xE0, 0x00, 0x78, - 0x3C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xE0, 0xF0, 0x00, 0x7C, 0x1E, 0x00, - 0x0F, 0x03, 0xC0, 0x03, 0xE0, 0x78, 0x00, 0x7C, 0x0F, 0x80, 0x1F, 0x80, - 0xF8, 0x07, 0xF0, 0x1F, 0x83, 0xFC, 0x03, 0xFF, 0xFF, 0x80, 0x3F, 0xFE, - 0xF0, 0x03, 0xFF, 0x1E, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x00, 0x1F, 0x80, - 0x01, 0xFF, 0xC0, 0x07, 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0xFE, 0x0F, 0xC1, - 0xF0, 0x07, 0xC7, 0xC0, 0x0F, 0x8F, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0x78, - 0x00, 0x3D, 0xE0, 0x00, 0x7B, 0xFF, 0xFF, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xBF, 0xFF, 0xFF, 0x78, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x07, 0x80, 0x03, 0xCF, 0x80, 0x0F, 0x0F, 0x80, 0x3E, - 0x1F, 0x81, 0xF8, 0x1F, 0xFF, 0xE0, 0x1F, 0xFF, 0x80, 0x1F, 0xFC, 0x00, - 0x0F, 0xE0, 0x00, 0x00, 0x3E, 0x01, 0xFC, 0x07, 0xF8, 0x0F, 0xE0, 0x3E, - 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x07, 0xC0, 0x7F, 0xF0, 0xFF, 0xE3, - 0xFF, 0xC0, 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x3E, - 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x80, 0x1E, 0x00, - 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, - 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xE0, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x07, - 0xFE, 0x3C, 0x01, 0xFF, 0xE7, 0x00, 0xFF, 0xFE, 0xE0, 0x1F, 0x83, 0xFC, - 0x07, 0xC0, 0x3F, 0x81, 0xF0, 0x03, 0xF0, 0x3C, 0x00, 0x7C, 0x0F, 0x00, - 0x0F, 0x81, 0xE0, 0x01, 0xF0, 0x78, 0x00, 0x3E, 0x0F, 0x00, 0x07, 0xC1, - 0xE0, 0x00, 0xF0, 0x38, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0xC1, 0xE0, 0x00, - 0xF8, 0x3C, 0x00, 0x1F, 0x07, 0x80, 0x03, 0xC0, 0xF0, 0x00, 0xF8, 0x1E, - 0x00, 0x3F, 0x03, 0xE0, 0x07, 0xE0, 0x3E, 0x01, 0xF8, 0x07, 0xE0, 0xFF, - 0x00, 0x7F, 0xFD, 0xE0, 0x0F, 0xFF, 0x3C, 0x00, 0xFF, 0xCF, 0x00, 0x07, - 0xE1, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x01, 0xE0, 0x03, 0xE0, - 0x3C, 0x00, 0xF8, 0x07, 0xE0, 0x7F, 0x00, 0x7F, 0xFF, 0xC0, 0x0F, 0xFF, - 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x78, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x83, 0xF0, 0x0F, - 0x1F, 0xF0, 0x1E, 0xFF, 0xF0, 0x3F, 0xFF, 0xE0, 0xFF, 0x87, 0xE1, 0xFC, - 0x07, 0xC3, 0xF0, 0x07, 0x87, 0xC0, 0x0F, 0x1F, 0x00, 0x1E, 0x3E, 0x00, - 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x01, 0xE1, 0xE0, 0x03, 0xC7, 0xC0, 0x07, - 0x8F, 0x00, 0x0F, 0x1E, 0x00, 0x1E, 0x3C, 0x00, 0x78, 0x78, 0x00, 0xF1, - 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x0F, 0x8F, 0x00, 0x1E, 0x1E, - 0x00, 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xC0, 0x01, - 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, 0xC0, - 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, - 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x00, 0x00, 0x07, - 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, - 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x3C, - 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, - 0x07, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, - 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, - 0x78, 0x00, 0x3E, 0x00, 0x7F, 0x80, 0x3F, 0xC0, 0x0F, 0xE0, 0x03, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x0F, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x03, 0xC0, 0x0F, 0x81, 0xE0, 0x0F, 0x80, - 0xF0, 0x0F, 0x80, 0xF0, 0x1F, 0x00, 0x78, 0x1F, 0x00, 0x3C, 0x1F, 0x00, - 0x1E, 0x1F, 0x00, 0x1F, 0x1F, 0x00, 0x0F, 0x1E, 0x00, 0x07, 0xBF, 0x80, - 0x03, 0xFF, 0xC0, 0x01, 0xFD, 0xE0, 0x01, 0xFC, 0xF8, 0x00, 0xFC, 0x3C, - 0x00, 0x7C, 0x1F, 0x00, 0x3C, 0x07, 0x80, 0x1E, 0x03, 0xC0, 0x1F, 0x01, - 0xF0, 0x0F, 0x00, 0x78, 0x07, 0x80, 0x3E, 0x03, 0xC0, 0x0F, 0x01, 0xE0, - 0x07, 0x81, 0xE0, 0x03, 0xE0, 0xF0, 0x00, 0xF0, 0x78, 0x00, 0x7C, 0x00, - 0x01, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x3C, 0x07, - 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, - 0xF0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x00, 0x00, - 0x07, 0xE0, 0x1F, 0x80, 0xF9, 0xFF, 0x07, 0xFC, 0x0F, 0x3F, 0xF8, 0xFF, - 0xE0, 0xF7, 0xFF, 0x9F, 0xFF, 0x0F, 0xF0, 0xFF, 0xC3, 0xF0, 0xFC, 0x07, - 0xF8, 0x1F, 0x1F, 0x80, 0x3F, 0x00, 0xF1, 0xF0, 0x03, 0xE0, 0x0F, 0x1E, - 0x00, 0x3C, 0x00, 0xF1, 0xE0, 0x03, 0xC0, 0x0F, 0x1E, 0x00, 0x3C, 0x00, - 0xF1, 0xE0, 0x07, 0x80, 0x0F, 0x3C, 0x00, 0x78, 0x01, 0xF3, 0xC0, 0x07, - 0x80, 0x1E, 0x3C, 0x00, 0x78, 0x01, 0xE3, 0xC0, 0x0F, 0x80, 0x1E, 0x3C, - 0x00, 0xF0, 0x01, 0xE7, 0xC0, 0x0F, 0x00, 0x3C, 0x78, 0x00, 0xF0, 0x03, - 0xC7, 0x80, 0x0F, 0x00, 0x3C, 0x78, 0x01, 0xE0, 0x03, 0xC7, 0x80, 0x1E, - 0x00, 0x3C, 0xF8, 0x01, 0xE0, 0x07, 0x8F, 0x00, 0x1E, 0x00, 0x78, 0xF0, - 0x01, 0xE0, 0x07, 0x8F, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x07, 0xE0, 0x1F, - 0x3F, 0xF0, 0x3C, 0xFF, 0xF0, 0x7B, 0xFF, 0xE0, 0xFF, 0x07, 0xE1, 0xF8, - 0x07, 0xC7, 0xE0, 0x07, 0x8F, 0x80, 0x0F, 0x1F, 0x00, 0x1E, 0x3C, 0x00, - 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x07, - 0x8F, 0x00, 0x0F, 0x1E, 0x00, 0x3E, 0x3C, 0x00, 0x78, 0xF0, 0x00, 0xF1, - 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x0F, 0x8F, 0x00, 0x1E, 0x3E, - 0x00, 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xC0, 0x00, - 0x1F, 0x80, 0x01, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, 0x3F, 0xFF, 0xC0, 0xFE, - 0x0F, 0xC1, 0xF0, 0x0F, 0x87, 0xC0, 0x0F, 0x8F, 0x00, 0x0F, 0x3C, 0x00, - 0x1E, 0x78, 0x00, 0x3D, 0xE0, 0x00, 0x7B, 0xC0, 0x00, 0xF7, 0x80, 0x01, - 0xFE, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0x78, 0x00, 0x1E, 0xF0, 0x00, 0x3D, - 0xE0, 0x00, 0xF3, 0xC0, 0x01, 0xE7, 0x80, 0x07, 0x8F, 0x80, 0x1F, 0x0F, - 0x80, 0x7C, 0x1F, 0x83, 0xF8, 0x1F, 0xFF, 0xE0, 0x3F, 0xFF, 0x00, 0x1F, - 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x3C, 0x7F, 0xE0, - 0x07, 0xBF, 0xFE, 0x01, 0xFF, 0xFF, 0xC0, 0x3D, 0xE0, 0xFC, 0x07, 0xF0, - 0x0F, 0x80, 0xFC, 0x00, 0xF8, 0x1F, 0x00, 0x0F, 0x07, 0xC0, 0x01, 0xE0, - 0xF8, 0x00, 0x3C, 0x1F, 0x00, 0x07, 0x83, 0xC0, 0x00, 0xF0, 0x78, 0x00, - 0x1E, 0x1F, 0x00, 0x03, 0xC3, 0xC0, 0x00, 0xF0, 0x78, 0x00, 0x1E, 0x0F, - 0x00, 0x03, 0xC3, 0xE0, 0x00, 0xF8, 0x7C, 0x00, 0x1E, 0x0F, 0x80, 0x07, - 0xC1, 0xF8, 0x01, 0xF0, 0x3F, 0x80, 0x7C, 0x0F, 0xF8, 0x3F, 0x81, 0xEF, - 0xFF, 0xE0, 0x3C, 0xFF, 0xF8, 0x07, 0x8F, 0xFC, 0x00, 0xF0, 0xFE, 0x00, - 0x3E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x3F, - 0xF8, 0xF0, 0x1F, 0xFF, 0x3C, 0x0F, 0xFF, 0xDF, 0x07, 0xE0, 0xFF, 0x83, - 0xE0, 0x1F, 0xE1, 0xF0, 0x03, 0xF8, 0x78, 0x00, 0xFE, 0x3C, 0x00, 0x1F, - 0x8F, 0x00, 0x07, 0xC7, 0x80, 0x01, 0xF1, 0xE0, 0x00, 0x7C, 0x78, 0x00, - 0x1F, 0x3C, 0x00, 0x0F, 0x8F, 0x00, 0x03, 0xE3, 0xC0, 0x00, 0xF8, 0xF0, - 0x00, 0x3E, 0x3C, 0x00, 0x1F, 0x8F, 0x00, 0x0F, 0xC3, 0xC0, 0x03, 0xF0, - 0xF8, 0x01, 0xFC, 0x1F, 0x00, 0xFF, 0x07, 0xE0, 0xFF, 0xC0, 0xFF, 0xFD, - 0xE0, 0x1F, 0xFE, 0x78, 0x03, 0xFF, 0x3E, 0x00, 0x3F, 0x0F, 0x80, 0x00, - 0x03, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x1F, 0x00, - 0x00, 0x07, 0xC0, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x0F, 0x80, 0x00, 0x07, 0x87, 0xCF, 0xC3, 0xCF, 0xE1, 0xEF, - 0xE0, 0xFF, 0x80, 0x7F, 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x0F, - 0x00, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0x78, 0x00, 0x3C, 0x00, 0x3E, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, - 0x03, 0xC0, 0x03, 0xE0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x00, - 0x00, 0x3F, 0x80, 0x07, 0xFF, 0x00, 0xFF, 0xFC, 0x0F, 0xFF, 0xE0, 0xFC, - 0x1F, 0x87, 0x80, 0x3C, 0x7C, 0x01, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, 0x00, - 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xFF, - 0xC0, 0x07, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xBC, - 0x00, 0x3D, 0xE0, 0x01, 0xEF, 0x00, 0x1F, 0x7C, 0x01, 0xF3, 0xF0, 0x1F, - 0x8F, 0xFF, 0xF8, 0x7F, 0xFF, 0x80, 0xFF, 0xF0, 0x01, 0xFE, 0x00, 0x03, - 0xC0, 0x1E, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC1, 0xFF, 0xEF, 0xFF, - 0x7F, 0xF0, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, - 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xE0, - 0x0F, 0x00, 0x78, 0x07, 0xC0, 0x3C, 0x01, 0xE0, 0x0F, 0xF0, 0x7F, 0x81, - 0xF8, 0x07, 0xC0, 0x0F, 0x00, 0x0F, 0x0F, 0x00, 0x1E, 0x0F, 0x00, 0x1E, - 0x1F, 0x00, 0x1E, 0x1E, 0x00, 0x1E, 0x1E, 0x00, 0x1E, 0x1E, 0x00, 0x3C, - 0x1E, 0x00, 0x3C, 0x3E, 0x00, 0x3C, 0x3C, 0x00, 0x3C, 0x3C, 0x00, 0x3C, - 0x3C, 0x00, 0x7C, 0x3C, 0x00, 0x78, 0x78, 0x00, 0x78, 0x78, 0x00, 0x78, - 0x78, 0x00, 0x78, 0x78, 0x00, 0xF8, 0x78, 0x00, 0xF0, 0xF0, 0x01, 0xF0, - 0xF0, 0x03, 0xF0, 0xF0, 0x07, 0xF0, 0xF8, 0x1F, 0xF0, 0xFF, 0xFF, 0xE0, - 0x7F, 0xFD, 0xE0, 0x3F, 0xF1, 0xE0, 0x1F, 0xC0, 0x00, 0xF0, 0x00, 0x7F, - 0xC0, 0x01, 0xEF, 0x00, 0x0F, 0xBC, 0x00, 0x3C, 0x78, 0x01, 0xE1, 0xE0, - 0x07, 0x87, 0x80, 0x3C, 0x1E, 0x01, 0xF0, 0x78, 0x07, 0x81, 0xE0, 0x3E, - 0x07, 0x80, 0xF0, 0x1E, 0x07, 0x80, 0x38, 0x1E, 0x00, 0xF0, 0xF0, 0x03, - 0xC7, 0xC0, 0x0F, 0x1E, 0x00, 0x3C, 0xF0, 0x00, 0xF3, 0xC0, 0x03, 0xDE, - 0x00, 0x07, 0x78, 0x00, 0x1F, 0xC0, 0x00, 0x7E, 0x00, 0x01, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x07, 0xC0, 0x0F, 0x78, 0x03, - 0xE0, 0x0F, 0xBC, 0x03, 0xF0, 0x07, 0x9E, 0x01, 0xF8, 0x03, 0xCF, 0x00, - 0xFC, 0x03, 0xC7, 0x80, 0xFE, 0x01, 0xE3, 0xC0, 0x77, 0x01, 0xE0, 0xE0, - 0x7B, 0x80, 0xF0, 0x70, 0x39, 0xC0, 0xF0, 0x38, 0x3C, 0xE0, 0x78, 0x1C, - 0x1E, 0x78, 0x78, 0x0F, 0x1E, 0x3C, 0x3C, 0x07, 0x8F, 0x1E, 0x3C, 0x03, - 0xC7, 0x0F, 0x1E, 0x01, 0xE7, 0x87, 0x9E, 0x00, 0xF3, 0x81, 0xCF, 0x00, - 0x7B, 0xC0, 0xEF, 0x00, 0x3D, 0xC0, 0x77, 0x80, 0x1F, 0xE0, 0x3F, 0x80, - 0x0F, 0xF0, 0x1F, 0xC0, 0x07, 0xF0, 0x0F, 0xC0, 0x01, 0xF8, 0x07, 0xE0, - 0x00, 0xF8, 0x03, 0xE0, 0x00, 0x7C, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0xF0, - 0x00, 0x00, 0x03, 0xC0, 0x07, 0xC0, 0xF8, 0x01, 0xE0, 0x1E, 0x00, 0xF0, - 0x07, 0x80, 0x78, 0x00, 0xF0, 0x3C, 0x00, 0x3C, 0x1F, 0x00, 0x0F, 0x8F, - 0x80, 0x01, 0xE7, 0xC0, 0x00, 0x7D, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0xC0, 0x00, - 0x07, 0xF0, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xF7, 0x80, 0x00, 0xF9, 0xF0, - 0x00, 0x3C, 0x3C, 0x00, 0x1E, 0x0F, 0x80, 0x0F, 0x01, 0xE0, 0x07, 0x80, - 0x7C, 0x03, 0xE0, 0x0F, 0x01, 0xF0, 0x03, 0xE0, 0xF8, 0x00, 0x78, 0x00, - 0x03, 0xC0, 0x01, 0xE0, 0x78, 0x00, 0x78, 0x0F, 0x00, 0x0F, 0x01, 0xE0, - 0x03, 0xC0, 0x3C, 0x00, 0x78, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x07, 0xC0, - 0x0F, 0x00, 0xF0, 0x01, 0xE0, 0x3C, 0x00, 0x3C, 0x07, 0x80, 0x07, 0x81, - 0xE0, 0x00, 0xF0, 0x3C, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0xC1, 0xC0, 0x00, - 0x3C, 0x78, 0x00, 0x07, 0x9E, 0x00, 0x00, 0xF3, 0xC0, 0x00, 0x1E, 0xF0, - 0x00, 0x03, 0xDE, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x0F, 0xE0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, - 0x00, 0x0F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x00, 0x01, - 0xFF, 0xFF, 0x81, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xE0, 0x7F, 0xFF, 0xE0, - 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, - 0x00, 0x01, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x01, 0xE0, - 0x00, 0x01, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, - 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, 0x00, 0x03, 0xE0, - 0x00, 0x03, 0xC0, 0x00, 0x03, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, 0xE0, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x7E, 0x00, 0xFE, - 0x00, 0xF0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x07, 0x80, - 0x07, 0x80, 0x0F, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF8, 0x00, - 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, - 0x38, 0x00, 0x38, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x78, 0x00, 0x78, 0x00, - 0x78, 0x00, 0x78, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xE0, 0x00, - 0xE0, 0x00, 0xF0, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0x7C, 0x00, 0x00, 0x70, - 0x07, 0x00, 0x60, 0x06, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0C, 0x01, 0xC0, - 0x1C, 0x01, 0xC0, 0x1C, 0x01, 0x80, 0x38, 0x03, 0x80, 0x38, 0x03, 0x00, - 0x30, 0x07, 0x00, 0x70, 0x07, 0x00, 0x60, 0x0E, 0x00, 0xE0, 0x0E, 0x00, - 0xE0, 0x0C, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x1C, 0x01, 0x80, 0x38, 0x03, - 0x80, 0x38, 0x03, 0x00, 0x70, 0x07, 0x00, 0x70, 0x07, 0x00, 0x60, 0x0E, - 0x00, 0xE0, 0x06, 0x00, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3F, 0x00, 0x0F, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x1E, - 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x1C, - 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0F, - 0x00, 0x07, 0x00, 0x1F, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x00, 0xF0, - 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xE0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x07, 0x80, - 0x0F, 0x00, 0x7F, 0x00, 0x7E, 0x00, 0xF8, 0x00, 0x0F, 0x00, 0x01, 0xFE, - 0x00, 0xCF, 0xFC, 0x0E, 0xE3, 0xF0, 0xE6, 0x07, 0xFF, 0x60, 0x0F, 0xF0, - 0x00, 0x1E, 0x00}; - -const GFXglyph FreeSansOblique24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 13, 0, 1}, // 0x20 ' ' - {0, 11, 34, 13, 6, -33}, // 0x21 '!' - {47, 13, 12, 17, 8, -32}, // 0x22 '"' - {67, 28, 34, 26, 3, -32}, // 0x23 '#' - {186, 26, 42, 26, 3, -35}, // 0x24 '$' - {323, 36, 34, 42, 6, -32}, // 0x25 '%' - {476, 26, 34, 31, 4, -32}, // 0x26 '&' - {587, 5, 12, 9, 8, -32}, // 0x27 ''' - {595, 15, 44, 16, 5, -33}, // 0x28 '(' - {678, 15, 44, 16, 1, -33}, // 0x29 ')' - {761, 14, 13, 18, 8, -33}, // 0x2A '*' - {784, 23, 22, 27, 5, -20}, // 0x2B '+' - {848, 7, 12, 13, 3, -4}, // 0x2C ',' - {859, 12, 4, 16, 5, -14}, // 0x2D '-' - {865, 6, 5, 13, 4, -4}, // 0x2E '.' - {869, 21, 35, 13, -1, -33}, // 0x2F '/' - {961, 23, 34, 26, 5, -32}, // 0x30 '0' - {1059, 13, 33, 26, 10, -32}, // 0x31 '1' - {1113, 27, 33, 26, 2, -32}, // 0x32 '2' - {1225, 25, 34, 26, 3, -32}, // 0x33 '3' - {1332, 24, 33, 26, 3, -32}, // 0x34 '4' - {1431, 27, 34, 26, 3, -32}, // 0x35 '5' - {1546, 24, 34, 26, 4, -32}, // 0x36 '6' - {1648, 26, 33, 26, 6, -32}, // 0x37 '7' - {1756, 25, 34, 26, 3, -32}, // 0x38 '8' - {1863, 24, 34, 26, 4, -32}, // 0x39 '9' - {1965, 10, 25, 13, 5, -24}, // 0x3A ':' - {1997, 11, 32, 13, 4, -24}, // 0x3B ';' - {2041, 26, 23, 27, 4, -22}, // 0x3C '<' - {2116, 26, 12, 27, 3, -16}, // 0x3D '=' - {2155, 26, 23, 27, 2, -21}, // 0x3E '>' - {2230, 20, 35, 26, 9, -34}, // 0x3F '?' - {2318, 45, 42, 48, 4, -34}, // 0x40 '@' - {2555, 30, 34, 31, 1, -33}, // 0x41 'A' - {2683, 29, 34, 31, 4, -33}, // 0x42 'B' - {2807, 30, 36, 33, 5, -34}, // 0x43 'C' - {2942, 31, 34, 33, 4, -33}, // 0x44 'D' - {3074, 31, 34, 31, 4, -33}, // 0x45 'E' - {3206, 30, 34, 28, 4, -33}, // 0x46 'F' - {3334, 33, 36, 37, 5, -34}, // 0x47 'G' - {3483, 33, 34, 34, 4, -33}, // 0x48 'H' - {3624, 11, 34, 13, 5, -33}, // 0x49 'I' - {3671, 25, 35, 24, 2, -33}, // 0x4A 'J' - {3781, 34, 34, 31, 4, -33}, // 0x4B 'K' - {3926, 22, 34, 26, 4, -33}, // 0x4C 'L' - {4020, 39, 34, 40, 4, -33}, // 0x4D 'M' - {4186, 34, 34, 34, 4, -33}, // 0x4E 'N' - {4331, 33, 36, 36, 5, -34}, // 0x4F 'O' - {4480, 29, 34, 30, 4, -33}, // 0x50 'P' - {4604, 33, 38, 36, 5, -34}, // 0x51 'Q' - {4761, 30, 34, 33, 4, -33}, // 0x52 'R' - {4889, 29, 36, 31, 4, -34}, // 0x53 'S' - {5020, 28, 34, 29, 7, -33}, // 0x54 'T' - {5139, 31, 35, 34, 6, -33}, // 0x55 'U' - {5275, 29, 34, 30, 8, -33}, // 0x56 'V' - {5399, 43, 34, 44, 8, -33}, // 0x57 'W' - {5582, 36, 34, 31, 1, -33}, // 0x58 'X' - {5735, 30, 34, 32, 8, -33}, // 0x59 'Y' - {5863, 34, 34, 29, 1, -33}, // 0x5A 'Z' - {6008, 18, 44, 13, 1, -33}, // 0x5B '[' - {6107, 6, 35, 13, 7, -33}, // 0x5C '\' - {6134, 18, 44, 13, -1, -33}, // 0x5D ']' - {6233, 17, 18, 22, 6, -32}, // 0x5E '^' - {6272, 29, 2, 26, -3, 7}, // 0x5F '_' - {6280, 8, 7, 16, 8, -34}, // 0x60 '`' - {6287, 23, 27, 26, 3, -25}, // 0x61 'a' - {6365, 25, 35, 26, 3, -33}, // 0x62 'b' - {6475, 22, 27, 24, 4, -25}, // 0x63 'c' - {6550, 27, 35, 26, 4, -33}, // 0x64 'd' - {6669, 23, 27, 26, 4, -25}, // 0x65 'e' - {6747, 15, 34, 12, 3, -33}, // 0x66 'f' - {6811, 27, 36, 26, 2, -25}, // 0x67 'g' - {6933, 23, 34, 25, 3, -33}, // 0x68 'h' - {7031, 11, 34, 10, 3, -33}, // 0x69 'i' - {7078, 18, 44, 11, -2, -33}, // 0x6A 'j' - {7177, 25, 34, 24, 3, -33}, // 0x6B 'k' - {7284, 11, 34, 10, 3, -33}, // 0x6C 'l' - {7331, 36, 26, 38, 3, -25}, // 0x6D 'm' - {7448, 23, 26, 25, 3, -25}, // 0x6E 'n' - {7523, 23, 27, 26, 4, -25}, // 0x6F 'o' - {7601, 27, 36, 26, 1, -25}, // 0x70 'p' - {7723, 26, 36, 26, 3, -25}, // 0x71 'q' - {7840, 17, 26, 15, 3, -25}, // 0x72 'r' - {7896, 21, 27, 24, 3, -25}, // 0x73 's' - {7967, 13, 32, 12, 4, -30}, // 0x74 't' - {8019, 24, 26, 25, 4, -24}, // 0x75 'u' - {8097, 22, 25, 23, 6, -24}, // 0x76 'v' - {8166, 33, 25, 34, 6, -24}, // 0x77 'w' - {8270, 26, 25, 23, 1, -24}, // 0x78 'x' - {8352, 27, 35, 23, 0, -24}, // 0x79 'y' - {8471, 25, 25, 23, 1, -24}, // 0x7A 'z' - {8550, 16, 44, 16, 5, -33}, // 0x7B '{' - {8638, 12, 44, 12, 3, -33}, // 0x7C '|' - {8704, 16, 44, 16, -1, -33}, // 0x7D '}' - {8792, 21, 7, 27, 6, -19}}; // 0x7E '~' - -const GFXfont FreeSansOblique24pt7b PROGMEM = { - (uint8_t *)FreeSansOblique24pt7bBitmaps, - (GFXglyph *)FreeSansOblique24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 9483 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h deleted file mode 100644 index 0b5db81..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSansOblique9pt7b.h +++ /dev/null @@ -1,222 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSansOblique9pt7bBitmaps[] PROGMEM = { - 0x10, 0x84, 0x22, 0x10, 0x84, 0x42, 0x10, 0x08, 0x00, 0xDE, 0xE5, 0x20, - 0x06, 0x40, 0x88, 0x13, 0x06, 0x43, 0xFE, 0x32, 0x04, 0x40, 0x98, 0x32, - 0x1F, 0xF0, 0x98, 0x22, 0x04, 0xC0, 0x02, 0x01, 0xF8, 0x6B, 0x99, 0x33, - 0x40, 0x68, 0x0F, 0x00, 0xF8, 0x07, 0xC1, 0x1B, 0x23, 0x64, 0x4E, 0x98, - 0xFC, 0x04, 0x00, 0x80, 0x3C, 0x08, 0xCC, 0x23, 0x18, 0x86, 0x32, 0x0C, - 0x64, 0x19, 0x90, 0x1E, 0x40, 0x01, 0x1E, 0x02, 0x66, 0x09, 0x8C, 0x23, - 0x18, 0x86, 0x62, 0x07, 0x80, 0x0F, 0x06, 0x63, 0x18, 0xC6, 0x3F, 0x07, - 0x03, 0xC1, 0xB3, 0xC7, 0xB0, 0xCC, 0x33, 0x3E, 0x79, 0x80, 0xFA, 0x04, - 0x10, 0x60, 0x83, 0x04, 0x18, 0x30, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x10, - 0x30, 0x20, 0x08, 0x18, 0x10, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x18, 0x30, - 0x41, 0x82, 0x0C, 0x10, 0x40, 0x19, 0x73, 0x16, 0x48, 0x04, 0x04, 0x02, - 0x1F, 0xF0, 0x80, 0x80, 0x40, 0x20, 0x6D, 0x28, 0xF0, 0xC0, 0x01, 0x02, - 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x0F, - 0x19, 0xC8, 0x6C, 0x36, 0x1A, 0x0F, 0x05, 0x86, 0xC3, 0x61, 0xB1, 0x9C, - 0x87, 0x80, 0x08, 0xCD, 0xE3, 0x18, 0xC4, 0x23, 0x18, 0xC4, 0x00, 0x07, - 0x83, 0x1C, 0x41, 0x98, 0x30, 0x06, 0x01, 0x80, 0x60, 0x38, 0x1C, 0x06, - 0x01, 0x80, 0x20, 0x0F, 0xF8, 0x0F, 0x86, 0x73, 0x0C, 0x83, 0x00, 0xC0, - 0x60, 0xE0, 0x06, 0x01, 0xB0, 0x6C, 0x13, 0x8C, 0x7C, 0x00, 0x00, 0x80, - 0xC0, 0xE0, 0xA0, 0x90, 0x98, 0x8C, 0x86, 0xFF, 0x81, 0x01, 0x80, 0xC0, - 0x60, 0x0F, 0xC3, 0x00, 0x40, 0x08, 0x03, 0x00, 0x7F, 0x1C, 0x70, 0x06, - 0x00, 0xC0, 0x1B, 0x06, 0x71, 0x87, 0xE0, 0x0F, 0x86, 0x73, 0x0D, 0x80, - 0x60, 0x1F, 0xCF, 0x3B, 0x86, 0xC1, 0xB0, 0x6C, 0x33, 0x98, 0x3C, 0x00, - 0x7F, 0xC0, 0x20, 0x10, 0x0C, 0x06, 0x01, 0x00, 0x80, 0x60, 0x10, 0x0C, - 0x02, 0x01, 0x80, 0x40, 0x00, 0x0F, 0x86, 0x73, 0x0C, 0xC3, 0x30, 0xCC, - 0x61, 0xE1, 0x86, 0x41, 0xB0, 0x6C, 0x13, 0x8C, 0x3E, 0x00, 0x0F, 0x06, - 0x73, 0x0D, 0x83, 0x60, 0xD8, 0x77, 0x3C, 0xFE, 0x01, 0x80, 0x6C, 0x33, - 0x98, 0x7C, 0x00, 0x30, 0x00, 0x00, 0x00, 0xC0, 0x18, 0x00, 0x00, 0x00, - 0x0C, 0x62, 0x11, 0x00, 0x00, 0x01, 0xC3, 0x8F, 0x0C, 0x07, 0x00, 0xE0, - 0x1E, 0x01, 0x00, 0x7F, 0xC0, 0x00, 0x03, 0xFE, 0x40, 0x3C, 0x03, 0x80, - 0x70, 0x18, 0x78, 0xE1, 0xC0, 0x00, 0x00, 0x1F, 0x30, 0xD0, 0x78, 0x30, - 0x30, 0x30, 0x30, 0x30, 0x30, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0xFE, - 0x00, 0xC0, 0xE0, 0xC0, 0x18, 0x61, 0xD3, 0x31, 0x9C, 0xD8, 0xC2, 0x36, - 0x31, 0x8F, 0x18, 0x67, 0xC6, 0x11, 0xB1, 0x8C, 0xCC, 0x67, 0x63, 0x0E, - 0xF0, 0x60, 0x00, 0x1C, 0x00, 0x01, 0x81, 0x00, 0x1F, 0xC0, 0x01, 0xC0, - 0x1C, 0x03, 0xC0, 0x24, 0x06, 0x60, 0x46, 0x0C, 0x61, 0x86, 0x1F, 0xE3, - 0x06, 0x20, 0x26, 0x03, 0x40, 0x30, 0x1F, 0xE1, 0x87, 0x30, 0x33, 0x03, - 0x30, 0x23, 0x06, 0x3F, 0xC6, 0x06, 0x60, 0x66, 0x06, 0x60, 0x66, 0x0C, - 0x7F, 0x80, 0x07, 0xC1, 0x86, 0x30, 0x32, 0x03, 0x60, 0x04, 0x00, 0xC0, - 0x0C, 0x00, 0xC0, 0x6C, 0x06, 0xC0, 0xC6, 0x18, 0x3E, 0x00, 0x1F, 0xE0, - 0xC1, 0x84, 0x06, 0x60, 0x33, 0x01, 0x98, 0x0C, 0x80, 0x64, 0x02, 0x60, - 0x33, 0x01, 0x98, 0x18, 0x81, 0x87, 0xF0, 0x00, 0x1F, 0xF1, 0x80, 0x10, - 0x03, 0x00, 0x30, 0x03, 0x00, 0x3F, 0xE2, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x04, 0x00, 0x7F, 0xC0, 0x1F, 0xF1, 0x80, 0x10, 0x03, 0x00, 0x30, 0x03, - 0x00, 0x3F, 0xC2, 0x00, 0x60, 0x06, 0x00, 0x60, 0x04, 0x00, 0x40, 0x00, - 0x07, 0xE0, 0xE1, 0x8C, 0x06, 0xC0, 0x36, 0x00, 0x60, 0x03, 0x07, 0xF8, - 0x02, 0xC0, 0x36, 0x01, 0x98, 0x1C, 0xE1, 0xC1, 0xF2, 0x00, 0x18, 0x08, - 0xC0, 0xC4, 0x06, 0x60, 0x33, 0x01, 0x18, 0x18, 0xFF, 0xC4, 0x06, 0x60, - 0x23, 0x01, 0x18, 0x18, 0x80, 0xC4, 0x06, 0x00, 0x33, 0x32, 0x26, 0x66, - 0x44, 0xCC, 0xC0, 0x00, 0xC0, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x30, - 0x0C, 0x03, 0x30, 0xCC, 0x63, 0x18, 0x7C, 0x00, 0x18, 0x18, 0x60, 0xC1, - 0x0E, 0x0C, 0x60, 0x33, 0x00, 0xD8, 0x03, 0xF0, 0x0C, 0xC0, 0x61, 0x81, - 0x86, 0x06, 0x0C, 0x10, 0x30, 0x40, 0x60, 0x18, 0x0C, 0x04, 0x06, 0x03, - 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, 0x18, 0x08, 0x07, 0xF8, 0x18, 0x06, - 0x18, 0x0E, 0x18, 0x0E, 0x34, 0x1E, 0x34, 0x36, 0x34, 0x34, 0x24, 0x64, - 0x24, 0x6C, 0x64, 0xCC, 0x64, 0x8C, 0x65, 0x88, 0x43, 0x08, 0x43, 0x18, - 0x18, 0x08, 0xE0, 0x47, 0x06, 0x6C, 0x33, 0x61, 0x99, 0x08, 0x8C, 0xC4, - 0x66, 0x61, 0xB3, 0x0D, 0x18, 0x38, 0x81, 0xC4, 0x06, 0x00, 0x07, 0xC0, - 0xC3, 0x8C, 0x0E, 0xC0, 0x36, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, - 0x36, 0x01, 0xB8, 0x18, 0xE1, 0x81, 0xF0, 0x00, 0x1F, 0xE1, 0x83, 0x10, - 0x33, 0x03, 0x30, 0x33, 0x06, 0x3F, 0xC2, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x04, 0x00, 0x40, 0x00, 0x07, 0xC0, 0xC3, 0x8C, 0x0E, 0xC0, 0x36, 0x01, - 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x36, 0x09, 0xB8, 0x78, 0xE3, 0x81, - 0xF6, 0x00, 0x10, 0x1F, 0xF0, 0xC0, 0xC4, 0x06, 0x60, 0x33, 0x01, 0x18, - 0x18, 0xFF, 0x04, 0x0C, 0x60, 0x63, 0x03, 0x18, 0x18, 0x80, 0xC4, 0x06, - 0x00, 0x07, 0xC1, 0x87, 0x30, 0x33, 0x03, 0x30, 0x03, 0xC0, 0x0F, 0xC0, - 0x1E, 0x00, 0x6C, 0x06, 0xC0, 0x46, 0x0C, 0x3F, 0x00, 0xFF, 0xC3, 0x00, - 0xC0, 0x20, 0x18, 0x06, 0x01, 0x80, 0x60, 0x10, 0x0C, 0x03, 0x00, 0xC0, - 0x20, 0x00, 0x30, 0x13, 0x03, 0x20, 0x36, 0x03, 0x60, 0x26, 0x06, 0x60, - 0x64, 0x06, 0xC0, 0x6C, 0x04, 0xC0, 0xCE, 0x18, 0x3E, 0x00, 0xC0, 0x78, - 0x0B, 0x03, 0x20, 0xC4, 0x18, 0xC6, 0x18, 0x83, 0x30, 0x64, 0x0D, 0x80, - 0xA0, 0x1C, 0x03, 0x00, 0xC1, 0x83, 0xC1, 0x83, 0xC3, 0x86, 0xC2, 0x86, - 0xC6, 0x84, 0xC4, 0x8C, 0xCC, 0xC8, 0xC8, 0xD8, 0xD8, 0xD0, 0xD0, 0xF0, - 0x70, 0xE0, 0x60, 0xE0, 0x60, 0xE0, 0x0C, 0x0C, 0x30, 0x60, 0x63, 0x01, - 0x98, 0x02, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xE0, 0x0C, 0x80, 0x33, 0x01, - 0x8C, 0x0C, 0x18, 0x60, 0x60, 0xC0, 0x66, 0x0C, 0x60, 0xC2, 0x18, 0x33, - 0x03, 0x60, 0x1C, 0x01, 0x80, 0x18, 0x01, 0x80, 0x18, 0x01, 0x00, 0x30, - 0x00, 0x1F, 0xF0, 0x07, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, - 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0C, 0x00, 0xFF, 0xC0, 0x0E, 0x10, 0x20, - 0x41, 0x02, 0x04, 0x08, 0x20, 0x40, 0x81, 0x04, 0x08, 0x10, 0x20, 0xE0, - 0xAA, 0xA9, 0x55, 0x40, 0x0E, 0x08, 0x10, 0x20, 0x41, 0x02, 0x04, 0x08, - 0x20, 0x40, 0x81, 0x04, 0x08, 0x10, 0xE0, 0x0C, 0x18, 0x51, 0xA2, 0x4C, - 0x50, 0x80, 0xFF, 0xE0, 0xC8, 0x80, 0x0F, 0x86, 0x33, 0x0C, 0x03, 0x03, - 0xDF, 0xEE, 0x0B, 0x02, 0xC1, 0x9F, 0xE0, 0x10, 0x04, 0x01, 0x00, 0xDC, - 0x39, 0x88, 0x32, 0x0D, 0x83, 0x40, 0xD0, 0x64, 0x1B, 0x8C, 0xBC, 0x00, - 0x1F, 0x18, 0xD8, 0x6C, 0x0C, 0x06, 0x03, 0x01, 0x86, 0x66, 0x3E, 0x00, - 0x00, 0x20, 0x08, 0x01, 0x0F, 0x23, 0x14, 0xC1, 0x18, 0x26, 0x04, 0xC0, - 0x98, 0x23, 0x04, 0x71, 0x87, 0xD0, 0x0F, 0x0C, 0x76, 0x0D, 0x83, 0xFF, - 0xF0, 0x0C, 0x03, 0x06, 0x63, 0x0F, 0x80, 0x1C, 0xC2, 0x1E, 0x20, 0x84, - 0x10, 0x41, 0x04, 0x20, 0x80, 0x0F, 0x46, 0x33, 0x0C, 0xC1, 0x60, 0xD8, - 0x26, 0x09, 0x86, 0x71, 0x8F, 0xE0, 0x10, 0x04, 0xC2, 0x1F, 0x00, 0x10, - 0x04, 0x01, 0x00, 0x9F, 0x39, 0x88, 0x22, 0x09, 0x02, 0x40, 0x90, 0x44, - 0x12, 0x04, 0x81, 0x00, 0x10, 0x02, 0x22, 0x64, 0x44, 0x48, 0x80, 0x04, - 0x00, 0x01, 0x08, 0x20, 0x82, 0x08, 0x41, 0x04, 0x10, 0x42, 0x08, 0xE0, - 0x10, 0x08, 0x04, 0x04, 0x32, 0x31, 0x20, 0xA0, 0xB8, 0x6C, 0x22, 0x11, - 0x90, 0xC8, 0x30, 0x11, 0x22, 0x22, 0x64, 0x44, 0x48, 0x80, 0x2F, 0x3C, - 0x63, 0x8C, 0x86, 0x19, 0x08, 0x44, 0x10, 0x88, 0x21, 0x10, 0x82, 0x21, - 0x04, 0x82, 0x11, 0x04, 0x20, 0x00, 0x0B, 0xF3, 0x18, 0x82, 0x20, 0x90, - 0x24, 0x09, 0x04, 0x41, 0x20, 0x48, 0x10, 0x0F, 0x0C, 0x76, 0x0D, 0x83, - 0xC0, 0xF0, 0x3C, 0x1B, 0x06, 0xE3, 0x0F, 0x00, 0x17, 0xC3, 0x1C, 0x41, - 0x98, 0x32, 0x06, 0x40, 0xC8, 0x33, 0x06, 0x71, 0x8B, 0xC1, 0x00, 0x20, - 0x08, 0x01, 0x00, 0x00, 0x1E, 0xCC, 0x66, 0x09, 0x82, 0xC0, 0xB0, 0x4C, - 0x13, 0x04, 0x63, 0x0F, 0xC0, 0x20, 0x08, 0x02, 0x00, 0x80, 0x2C, 0x60, - 0x81, 0x04, 0x08, 0x10, 0x20, 0x81, 0x00, 0x1E, 0x33, 0x63, 0x60, 0x70, - 0x1E, 0x03, 0xC3, 0xC6, 0x7C, 0x22, 0xF2, 0x44, 0x44, 0xCC, 0xCE, 0x21, - 0x20, 0x90, 0x48, 0x24, 0x12, 0x13, 0x09, 0x84, 0xE6, 0x3E, 0x00, 0xC1, - 0xE1, 0xB0, 0xC8, 0xC4, 0x43, 0x61, 0xA0, 0xF0, 0x70, 0x18, 0x00, 0xC7, - 0x1E, 0x38, 0xB3, 0xCD, 0x96, 0x4C, 0xB6, 0x6D, 0xB1, 0x4D, 0x0E, 0x78, - 0x63, 0x83, 0x1C, 0x00, 0x10, 0xC3, 0x10, 0x24, 0x07, 0x80, 0xE0, 0x1C, - 0x07, 0x81, 0x90, 0x23, 0x08, 0x20, 0x30, 0x46, 0x18, 0x42, 0x08, 0xC1, - 0x10, 0x24, 0x07, 0x80, 0xE0, 0x1C, 0x03, 0x00, 0x60, 0x08, 0x03, 0x01, - 0xC0, 0x00, 0x3F, 0x80, 0x80, 0x80, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, - 0x7F, 0x00, 0x18, 0x88, 0x42, 0x10, 0x88, 0xC3, 0x18, 0x88, 0x42, 0x18, - 0xE0, 0x11, 0x22, 0x22, 0x24, 0x44, 0x4C, 0x88, 0x88, 0x00, 0x38, 0xC2, - 0x10, 0x88, 0xC6, 0x18, 0x88, 0x42, 0x10, 0x88, 0xC0, 0x70, 0x4E, 0x41, - 0xC0}; - -const GFXglyph FreeSansOblique9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 5, 13, 5, 2, -12}, // 0x21 '!' - {9, 5, 4, 6, 3, -12}, // 0x22 '"' - {12, 11, 13, 10, 1, -12}, // 0x23 '#' - {30, 11, 16, 10, 1, -13}, // 0x24 '$' - {52, 15, 13, 16, 2, -12}, // 0x25 '%' - {77, 10, 13, 12, 2, -12}, // 0x26 '&' - {94, 2, 4, 3, 3, -12}, // 0x27 ''' - {95, 7, 17, 6, 2, -12}, // 0x28 '(' - {110, 7, 17, 6, -1, -12}, // 0x29 ')' - {125, 6, 5, 7, 3, -12}, // 0x2A '*' - {129, 9, 8, 11, 2, -7}, // 0x2B '+' - {138, 3, 5, 5, 1, -1}, // 0x2C ',' - {140, 4, 1, 6, 2, -4}, // 0x2D '-' - {141, 2, 1, 5, 2, 0}, // 0x2E '.' - {142, 8, 13, 5, 0, -12}, // 0x2F '/' - {155, 9, 13, 10, 2, -12}, // 0x30 '0' - {170, 5, 13, 10, 4, -12}, // 0x31 '1' - {179, 11, 13, 10, 1, -12}, // 0x32 '2' - {197, 10, 13, 10, 1, -12}, // 0x33 '3' - {214, 9, 13, 10, 1, -12}, // 0x34 '4' - {229, 11, 13, 10, 1, -12}, // 0x35 '5' - {247, 10, 13, 10, 2, -12}, // 0x36 '6' - {264, 10, 13, 10, 2, -12}, // 0x37 '7' - {281, 10, 13, 10, 1, -12}, // 0x38 '8' - {298, 10, 13, 10, 1, -12}, // 0x39 '9' - {315, 4, 9, 5, 2, -8}, // 0x3A ':' - {320, 5, 12, 5, 1, -8}, // 0x3B ';' - {328, 9, 9, 11, 2, -8}, // 0x3C '<' - {339, 10, 4, 11, 1, -5}, // 0x3D '=' - {344, 9, 9, 11, 1, -7}, // 0x3E '>' - {355, 9, 13, 10, 3, -12}, // 0x3F '?' - {370, 18, 16, 18, 1, -12}, // 0x40 '@' - {406, 12, 13, 12, 0, -12}, // 0x41 'A' - {426, 12, 13, 12, 1, -12}, // 0x42 'B' - {446, 12, 13, 13, 2, -12}, // 0x43 'C' - {466, 13, 13, 13, 1, -12}, // 0x44 'D' - {488, 12, 13, 12, 1, -12}, // 0x45 'E' - {508, 12, 13, 11, 1, -12}, // 0x46 'F' - {528, 13, 13, 14, 2, -12}, // 0x47 'G' - {550, 13, 13, 13, 1, -12}, // 0x48 'H' - {572, 4, 13, 5, 2, -12}, // 0x49 'I' - {579, 10, 13, 9, 1, -12}, // 0x4A 'J' - {596, 14, 13, 12, 1, -12}, // 0x4B 'K' - {619, 9, 13, 10, 1, -12}, // 0x4C 'L' - {634, 16, 13, 15, 1, -12}, // 0x4D 'M' - {660, 13, 13, 13, 1, -12}, // 0x4E 'N' - {682, 13, 13, 14, 2, -12}, // 0x4F 'O' - {704, 12, 13, 12, 1, -12}, // 0x50 'P' - {724, 13, 14, 14, 2, -12}, // 0x51 'Q' - {747, 13, 13, 13, 1, -12}, // 0x52 'R' - {769, 12, 13, 12, 1, -12}, // 0x53 'S' - {789, 10, 13, 11, 3, -12}, // 0x54 'T' - {806, 12, 13, 13, 2, -12}, // 0x55 'U' - {826, 11, 13, 12, 3, -12}, // 0x56 'V' - {844, 16, 13, 17, 3, -12}, // 0x57 'W' - {870, 14, 13, 12, 0, -12}, // 0x58 'X' - {893, 12, 13, 12, 3, -12}, // 0x59 'Y' - {913, 12, 13, 11, 1, -12}, // 0x5A 'Z' - {933, 7, 17, 5, 0, -12}, // 0x5B '[' - {948, 2, 13, 5, 3, -12}, // 0x5C '\' - {952, 7, 17, 5, 0, -12}, // 0x5D ']' - {967, 7, 7, 8, 2, -12}, // 0x5E '^' - {974, 11, 1, 10, -1, 3}, // 0x5F '_' - {976, 3, 3, 6, 3, -12}, // 0x60 '`' - {978, 10, 10, 10, 1, -9}, // 0x61 'a' - {991, 10, 13, 10, 1, -12}, // 0x62 'b' - {1008, 9, 10, 9, 1, -9}, // 0x63 'c' - {1020, 11, 13, 10, 1, -12}, // 0x64 'd' - {1038, 10, 10, 10, 1, -9}, // 0x65 'e' - {1051, 6, 13, 5, 1, -12}, // 0x66 'f' - {1061, 10, 14, 10, 0, -9}, // 0x67 'g' - {1079, 10, 13, 10, 1, -12}, // 0x68 'h' - {1096, 4, 13, 4, 1, -12}, // 0x69 'i' - {1103, 6, 17, 4, -1, -12}, // 0x6A 'j' - {1116, 9, 13, 9, 1, -12}, // 0x6B 'k' - {1131, 4, 13, 4, 1, -12}, // 0x6C 'l' - {1138, 15, 10, 15, 1, -9}, // 0x6D 'm' - {1157, 10, 11, 10, 1, -10}, // 0x6E 'n' - {1171, 10, 10, 10, 1, -9}, // 0x6F 'o' - {1184, 11, 14, 10, 0, -9}, // 0x70 'p' - {1204, 10, 14, 10, 1, -9}, // 0x71 'q' - {1222, 7, 10, 6, 1, -9}, // 0x72 'r' - {1231, 8, 10, 9, 1, -9}, // 0x73 's' - {1241, 4, 12, 5, 2, -11}, // 0x74 't' - {1247, 9, 10, 10, 2, -9}, // 0x75 'u' - {1259, 9, 10, 9, 2, -9}, // 0x76 'v' - {1271, 13, 10, 13, 2, -9}, // 0x77 'w' - {1288, 11, 10, 9, 0, -9}, // 0x78 'x' - {1302, 11, 14, 9, 0, -9}, // 0x79 'y' - {1322, 9, 10, 9, 1, -9}, // 0x7A 'z' - {1334, 5, 17, 6, 2, -12}, // 0x7B '{' - {1345, 4, 17, 5, 1, -12}, // 0x7C '|' - {1354, 5, 17, 6, 0, -12}, // 0x7D '}' - {1365, 9, 3, 11, 2, -7}}; // 0x7E '~' - -const GFXfont FreeSansOblique9pt7b PROGMEM = { - (uint8_t *)FreeSansOblique9pt7bBitmaps, - (GFXglyph *)FreeSansOblique9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 2041 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h deleted file mode 100644 index 22cb53d..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif12pt7b.h +++ /dev/null @@ -1,261 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif12pt7bBitmaps[] PROGMEM = { - 0xFF, 0xFE, 0xA8, 0x3F, 0xCF, 0x3C, 0xF3, 0x8A, 0x20, 0x0C, 0x40, 0xC4, - 0x08, 0x40, 0x8C, 0x08, 0xC7, 0xFF, 0x18, 0x81, 0x88, 0x10, 0x81, 0x08, - 0xFF, 0xE1, 0x18, 0x31, 0x03, 0x10, 0x31, 0x02, 0x10, 0x04, 0x07, 0xC6, - 0x5B, 0x12, 0xC4, 0xB1, 0x0F, 0x41, 0xF0, 0x1E, 0x01, 0xE0, 0x58, 0x13, - 0x84, 0xE1, 0x3C, 0x4F, 0x96, 0x3F, 0x01, 0x00, 0x00, 0x04, 0x03, 0x83, - 0x03, 0x9F, 0x81, 0xC2, 0x20, 0x60, 0x90, 0x38, 0x24, 0x0C, 0x12, 0x03, - 0x0D, 0x00, 0xC6, 0x47, 0x9E, 0x23, 0x10, 0x09, 0x84, 0x04, 0xE1, 0x03, - 0x30, 0x40, 0x8C, 0x20, 0x43, 0x08, 0x10, 0xC4, 0x08, 0x1E, 0x00, 0x03, - 0xC0, 0x02, 0x30, 0x03, 0x08, 0x01, 0x84, 0x00, 0xC4, 0x00, 0x7C, 0xF8, - 0x1C, 0x38, 0x1E, 0x08, 0x33, 0x0C, 0x31, 0xC4, 0x10, 0x74, 0x18, 0x3A, - 0x0C, 0x0E, 0x07, 0x03, 0x83, 0xC3, 0xE2, 0x7E, 0x3E, 0xFF, 0xA0, 0x04, - 0x21, 0x08, 0x61, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC1, 0x04, 0x18, 0x20, - 0x40, 0x81, 0x81, 0x02, 0x04, 0x18, 0x20, 0x83, 0x0C, 0x30, 0xC3, 0x0C, - 0x30, 0x86, 0x10, 0x84, 0x20, 0x30, 0xB3, 0xD7, 0x54, 0x38, 0x7C, 0xD3, - 0x30, 0x30, 0x10, 0x04, 0x00, 0x80, 0x10, 0x02, 0x00, 0x41, 0xFF, 0xC1, - 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, 0x00, 0xDF, 0x95, 0x00, 0xFC, 0xFC, - 0x06, 0x0C, 0x10, 0x60, 0xC1, 0x06, 0x0C, 0x10, 0x60, 0xC1, 0x06, 0x0C, - 0x10, 0x60, 0xC0, 0x1E, 0x0C, 0xC6, 0x19, 0x86, 0xC0, 0xB0, 0x3C, 0x0F, - 0x03, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0xC0, 0xD8, 0x66, 0x18, 0xCC, 0x1E, - 0x00, 0x11, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, - 0x0C, 0xFC, 0x1E, 0x18, 0xC4, 0x1A, 0x06, 0x01, 0x80, 0x60, 0x10, 0x0C, - 0x02, 0x01, 0x00, 0xC0, 0x60, 0x30, 0x18, 0x1F, 0xF8, 0x1E, 0x18, 0xE8, - 0x18, 0x06, 0x01, 0x00, 0x80, 0xF0, 0x7E, 0x03, 0xC0, 0x70, 0x0C, 0x03, - 0x00, 0xC0, 0x6E, 0x11, 0xF8, 0x01, 0x00, 0xC0, 0x70, 0x2C, 0x0B, 0x04, - 0xC2, 0x30, 0x8C, 0x43, 0x20, 0xC8, 0x33, 0xFF, 0x03, 0x00, 0xC0, 0x30, - 0x0C, 0x00, 0x03, 0xF1, 0x00, 0x40, 0x18, 0x0F, 0x80, 0xF8, 0x0E, 0x01, - 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x20, 0x1B, 0x8C, 0x7C, 0x00, 0x01, - 0xC3, 0xC1, 0xC0, 0xC0, 0x70, 0x18, 0x0E, 0xF3, 0xCE, 0xC1, 0xF0, 0x3C, - 0x0F, 0x03, 0xC0, 0xD8, 0x36, 0x08, 0xC6, 0x1E, 0x00, 0x3F, 0xD0, 0x38, - 0x08, 0x06, 0x01, 0x80, 0x40, 0x10, 0x0C, 0x02, 0x00, 0x80, 0x20, 0x10, - 0x04, 0x01, 0x00, 0x80, 0x20, 0x1F, 0x18, 0x6C, 0x0F, 0x03, 0xC0, 0xF8, - 0x67, 0x30, 0xF0, 0x1E, 0x09, 0xE6, 0x3B, 0x07, 0xC0, 0xF0, 0x3C, 0x0D, - 0x86, 0x1F, 0x00, 0x1E, 0x08, 0xC6, 0x1B, 0x02, 0xC0, 0xF0, 0x3C, 0x0F, - 0x03, 0xE0, 0xDC, 0x73, 0xEC, 0x06, 0x01, 0x80, 0xC0, 0x70, 0x38, 0x38, - 0x18, 0x00, 0xFC, 0x00, 0x3F, 0xCC, 0xC0, 0x00, 0x00, 0x06, 0x77, 0x12, - 0x40, 0x00, 0x00, 0x07, 0x01, 0xE0, 0x78, 0x1E, 0x07, 0x00, 0xC0, 0x0F, - 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x07, 0x00, 0x10, 0xFF, 0xF0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0x80, 0x0E, 0x00, 0x3C, 0x00, 0xF0, - 0x03, 0xC0, 0x0F, 0x00, 0x30, 0x0E, 0x07, 0x81, 0xE0, 0x78, 0x0E, 0x00, - 0x00, 0x00, 0x7C, 0x86, 0x83, 0xC3, 0x03, 0x03, 0x06, 0x0C, 0x08, 0x08, - 0x10, 0x10, 0x00, 0x00, 0x30, 0x30, 0x30, 0x03, 0xF0, 0x06, 0x06, 0x06, - 0x00, 0x86, 0x00, 0x26, 0x0E, 0xD3, 0x0C, 0xC7, 0x0C, 0x63, 0x84, 0x31, - 0xC6, 0x18, 0xE3, 0x08, 0x71, 0x8C, 0x4C, 0xC6, 0x46, 0x3D, 0xC1, 0x80, - 0x00, 0x30, 0x10, 0x07, 0xF0, 0x00, 0x80, 0x00, 0x60, 0x00, 0x70, 0x00, - 0x38, 0x00, 0x2E, 0x00, 0x13, 0x00, 0x19, 0xC0, 0x08, 0x60, 0x04, 0x38, - 0x04, 0x0C, 0x03, 0xFF, 0x03, 0x03, 0x81, 0x00, 0xE1, 0x80, 0x70, 0xC0, - 0x3D, 0xF0, 0x3F, 0xFF, 0x83, 0x0C, 0x30, 0x63, 0x06, 0x30, 0x63, 0x06, - 0x30, 0xC3, 0xF0, 0x30, 0xE3, 0x06, 0x30, 0x33, 0x03, 0x30, 0x33, 0x07, - 0x30, 0xEF, 0xFC, 0x07, 0xE2, 0x38, 0x3C, 0xC0, 0x3B, 0x00, 0x36, 0x00, - 0x38, 0x00, 0x30, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x03, - 0x00, 0x06, 0x00, 0x06, 0x00, 0x47, 0x03, 0x03, 0xF8, 0xFF, 0xC0, 0x30, - 0x78, 0x30, 0x1C, 0x30, 0x0E, 0x30, 0x06, 0x30, 0x03, 0x30, 0x03, 0x30, - 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x03, 0x30, 0x06, 0x30, 0x06, 0x30, - 0x0C, 0x30, 0x78, 0xFF, 0xC0, 0xFF, 0xFC, 0xC0, 0x33, 0x00, 0x4C, 0x00, - 0x30, 0x00, 0xC0, 0x43, 0x03, 0x0F, 0xFC, 0x30, 0x30, 0xC0, 0x43, 0x00, - 0x0C, 0x00, 0x30, 0x08, 0xC0, 0x23, 0x03, 0xBF, 0xFE, 0xFF, 0xFC, 0xC0, - 0x33, 0x00, 0x4C, 0x00, 0x30, 0x00, 0xC0, 0x43, 0x03, 0x0F, 0xFC, 0x30, - 0x30, 0xC0, 0x43, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, 0x3F, - 0x00, 0x07, 0xE4, 0x1C, 0x3C, 0x30, 0x0C, 0x60, 0x0C, 0x60, 0x04, 0xC0, - 0x00, 0xC0, 0x00, 0xC0, 0x3F, 0xC0, 0x0C, 0xC0, 0x0C, 0xC0, 0x0C, 0x60, - 0x0C, 0x60, 0x0C, 0x30, 0x0C, 0x1C, 0x1C, 0x07, 0xE0, 0xFC, 0x3F, 0x30, - 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x3F, - 0xFC, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, 0x0C, 0x30, - 0x0C, 0x30, 0x0C, 0xFC, 0x3F, 0xFC, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, - 0xC3, 0x0C, 0x30, 0xC3, 0x3F, 0x3F, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, - 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0x0C, 0xC8, 0xF0, 0xFC, 0xFE, 0x30, - 0x38, 0x30, 0x20, 0x30, 0x40, 0x30, 0x80, 0x33, 0x00, 0x36, 0x00, 0x3E, - 0x00, 0x37, 0x00, 0x33, 0x80, 0x31, 0xC0, 0x30, 0xE0, 0x30, 0x70, 0x30, - 0x38, 0x30, 0x3C, 0xFC, 0x7F, 0xFC, 0x00, 0x60, 0x00, 0xC0, 0x01, 0x80, - 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, - 0xC0, 0x01, 0x80, 0x03, 0x00, 0x26, 0x00, 0x8C, 0x07, 0x7F, 0xFE, 0xF8, - 0x01, 0xE7, 0x00, 0x70, 0xE0, 0x0E, 0x1E, 0x03, 0xC2, 0xC0, 0x58, 0x5C, - 0x1B, 0x09, 0x82, 0x61, 0x38, 0x4C, 0x27, 0x11, 0x84, 0x72, 0x30, 0x8E, - 0xC6, 0x10, 0xD0, 0xC2, 0x1E, 0x18, 0x41, 0x83, 0x1C, 0x30, 0x67, 0xC4, - 0x3F, 0xF0, 0x1F, 0x78, 0x0E, 0x3C, 0x04, 0x3E, 0x04, 0x2E, 0x04, 0x27, - 0x04, 0x23, 0x84, 0x23, 0xC4, 0x21, 0xE4, 0x20, 0xE4, 0x20, 0x74, 0x20, - 0x3C, 0x20, 0x1C, 0x20, 0x0C, 0x70, 0x0C, 0xF8, 0x04, 0x07, 0xC0, 0x30, - 0x60, 0xC0, 0x63, 0x00, 0x66, 0x00, 0xD8, 0x00, 0xF0, 0x01, 0xE0, 0x03, - 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1B, 0x00, 0x66, 0x00, 0xC6, 0x03, 0x06, - 0x0C, 0x03, 0xE0, 0xFF, 0x83, 0x0E, 0x30, 0x73, 0x03, 0x30, 0x33, 0x03, - 0x30, 0x63, 0x0E, 0x3F, 0x83, 0x00, 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, - 0x30, 0x0F, 0xC0, 0x0F, 0xE0, 0x18, 0x30, 0x30, 0x18, 0x60, 0x0C, 0x60, - 0x0C, 0xC0, 0x06, 0xC0, 0x06, 0xC0, 0x06, 0xC0, 0x06, 0xC0, 0x06, 0xC0, - 0x06, 0x60, 0x0C, 0x60, 0x0C, 0x30, 0x18, 0x18, 0x30, 0x07, 0xC0, 0x03, - 0xC0, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1F, 0xFF, 0x80, 0x61, 0xC0, 0xC1, - 0xC1, 0x81, 0x83, 0x03, 0x06, 0x06, 0x0C, 0x1C, 0x18, 0x70, 0x3F, 0x80, - 0x67, 0x00, 0xC7, 0x01, 0x8F, 0x03, 0x0F, 0x06, 0x0E, 0x0C, 0x0E, 0x7E, - 0x0F, 0x1F, 0x46, 0x19, 0x81, 0x30, 0x27, 0x02, 0xF0, 0x0F, 0x00, 0xF8, - 0x07, 0xC0, 0x38, 0x03, 0xC0, 0x34, 0x06, 0x80, 0xDC, 0x32, 0x7C, 0xFF, - 0xFF, 0x86, 0x0E, 0x0C, 0x1C, 0x18, 0x10, 0x30, 0x00, 0x60, 0x00, 0xC0, - 0x01, 0x80, 0x03, 0x00, 0x06, 0x00, 0x0C, 0x00, 0x18, 0x00, 0x30, 0x00, - 0x60, 0x00, 0xC0, 0x07, 0xE0, 0xFC, 0x1F, 0x30, 0x0E, 0x30, 0x04, 0x30, - 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, - 0x04, 0x30, 0x04, 0x30, 0x04, 0x30, 0x04, 0x18, 0x08, 0x1C, 0x18, 0x07, - 0xE0, 0xFE, 0x0F, 0x9C, 0x03, 0x0E, 0x01, 0x83, 0x00, 0x81, 0xC0, 0x40, - 0x60, 0x40, 0x38, 0x20, 0x0C, 0x30, 0x07, 0x10, 0x01, 0x98, 0x00, 0xE8, - 0x00, 0x34, 0x00, 0x1E, 0x00, 0x06, 0x00, 0x03, 0x00, 0x01, 0x00, 0xFC, - 0xFC, 0x3D, 0xE1, 0xC0, 0x63, 0x83, 0x01, 0x86, 0x0E, 0x04, 0x1C, 0x18, - 0x10, 0x70, 0x70, 0x80, 0xC3, 0xC2, 0x03, 0x8B, 0x08, 0x06, 0x6E, 0x40, - 0x1D, 0x19, 0x00, 0x74, 0x78, 0x00, 0xE1, 0xE0, 0x03, 0x83, 0x80, 0x0E, - 0x0C, 0x00, 0x10, 0x10, 0x00, 0x40, 0x40, 0x7F, 0x1F, 0x9E, 0x03, 0x07, - 0x03, 0x01, 0xC3, 0x00, 0x71, 0x00, 0x19, 0x00, 0x0F, 0x00, 0x03, 0x80, - 0x01, 0xE0, 0x01, 0xB0, 0x01, 0x9C, 0x00, 0x87, 0x00, 0x81, 0xC0, 0x80, - 0xE0, 0xC0, 0x79, 0xF8, 0x7F, 0xFE, 0x1F, 0x78, 0x0C, 0x38, 0x08, 0x1C, - 0x18, 0x0E, 0x10, 0x06, 0x20, 0x07, 0x60, 0x03, 0xC0, 0x01, 0x80, 0x01, - 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x07, - 0xE0, 0x7F, 0xFB, 0x00, 0xC8, 0x07, 0x20, 0x38, 0x01, 0xC0, 0x07, 0x00, - 0x38, 0x01, 0xC0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x05, - 0xC0, 0x3E, 0x01, 0xBF, 0xFE, 0xFE, 0x31, 0x8C, 0x63, 0x18, 0xC6, 0x31, - 0x8C, 0x63, 0x18, 0xC6, 0x31, 0xF0, 0xC1, 0x81, 0x03, 0x06, 0x04, 0x0C, - 0x18, 0x10, 0x30, 0x60, 0x40, 0xC1, 0x81, 0x03, 0x06, 0xF8, 0xC6, 0x31, - 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC7, 0xF0, 0x0C, 0x07, - 0x01, 0x60, 0xD8, 0x23, 0x18, 0xC4, 0x1B, 0x06, 0x80, 0xC0, 0xFF, 0xF0, - 0xC7, 0x0C, 0x30, 0x3E, 0x31, 0x8C, 0x30, 0x0C, 0x03, 0x07, 0xC6, 0x33, - 0x0C, 0xC3, 0x31, 0xC7, 0xB8, 0x20, 0x38, 0x06, 0x01, 0x80, 0x60, 0x18, - 0x06, 0xF1, 0xC6, 0x61, 0xD8, 0x36, 0x0D, 0x83, 0x60, 0xD8, 0x26, 0x19, - 0x84, 0x3E, 0x00, 0x1E, 0x23, 0x63, 0xC0, 0xC0, 0xC0, 0xC0, 0xC0, 0xE1, - 0x72, 0x3C, 0x00, 0x80, 0xE0, 0x18, 0x06, 0x01, 0x80, 0x61, 0xD8, 0x8E, - 0x61, 0xB0, 0x6C, 0x1B, 0x06, 0xC1, 0xB0, 0x6E, 0x19, 0xCE, 0x3D, 0xC0, - 0x1E, 0x08, 0xE4, 0x1B, 0xFE, 0xC0, 0x30, 0x0C, 0x03, 0x81, 0x60, 0x9C, - 0x41, 0xE0, 0x0F, 0x08, 0xC4, 0x06, 0x03, 0x01, 0x81, 0xF0, 0x60, 0x30, - 0x18, 0x0C, 0x06, 0x03, 0x01, 0x80, 0xC0, 0x60, 0xFC, 0x00, 0x1F, 0x03, - 0x1F, 0x60, 0xC6, 0x0C, 0x60, 0xC3, 0x18, 0x1F, 0x02, 0x00, 0x40, 0x07, - 0xFC, 0x40, 0x24, 0x02, 0xC0, 0x2C, 0x04, 0xE0, 0x83, 0xF0, 0x30, 0x1E, - 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x0D, 0xE1, 0xCE, 0x30, 0xC6, 0x18, - 0xC3, 0x18, 0x63, 0x0C, 0x61, 0x8C, 0x31, 0x86, 0x79, 0xE0, 0x31, 0x80, - 0x00, 0x09, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xDF, 0x0C, 0x30, 0x00, 0x00, - 0x31, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xC3, 0x0C, 0x30, 0xF2, 0xF0, - 0x20, 0x1C, 0x01, 0x80, 0x30, 0x06, 0x00, 0xC0, 0x18, 0xFB, 0x08, 0x62, - 0x0C, 0x81, 0xE0, 0x3E, 0x06, 0xE0, 0xCE, 0x18, 0xC3, 0x0E, 0xF3, 0xE0, - 0x13, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xC6, 0xF8, 0xF7, - 0x8F, 0x0E, 0x3C, 0xE3, 0x0C, 0x18, 0xC3, 0x06, 0x30, 0xC1, 0x8C, 0x30, - 0x63, 0x0C, 0x18, 0xC3, 0x06, 0x30, 0xC1, 0x8C, 0x30, 0x67, 0x9E, 0x3C, - 0xF7, 0x87, 0x18, 0xC3, 0x18, 0x63, 0x0C, 0x61, 0x8C, 0x31, 0x86, 0x30, - 0xC6, 0x19, 0xE7, 0x80, 0x1E, 0x18, 0xE4, 0x1B, 0x03, 0xC0, 0xF0, 0x3C, - 0x0F, 0x03, 0x60, 0x9C, 0x41, 0xE0, 0x77, 0x87, 0x18, 0xC3, 0x98, 0x33, - 0x06, 0x60, 0xCC, 0x19, 0x83, 0x30, 0xC7, 0x10, 0xDC, 0x18, 0x03, 0x00, - 0x60, 0x0C, 0x07, 0xE0, 0x1E, 0x8C, 0xE6, 0x1B, 0x06, 0xC1, 0xB0, 0x6C, - 0x1B, 0x06, 0xE1, 0x98, 0xE3, 0xD8, 0x06, 0x01, 0x80, 0x60, 0x18, 0x1F, - 0x37, 0x7B, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x7C, 0x7B, - 0x0E, 0x1C, 0x1E, 0x0F, 0x07, 0xC3, 0x87, 0x8A, 0xE0, 0x21, 0x8F, 0x98, - 0x61, 0x86, 0x18, 0x61, 0x86, 0x19, 0x38, 0xE3, 0x98, 0x66, 0x19, 0x86, - 0x61, 0x98, 0x66, 0x19, 0x86, 0x61, 0x9C, 0xE3, 0xDC, 0xF8, 0xEE, 0x08, - 0xC1, 0x18, 0x41, 0x88, 0x32, 0x03, 0x40, 0x68, 0x06, 0x00, 0xC0, 0x10, - 0x00, 0xF3, 0xE7, 0x61, 0x83, 0x70, 0xC2, 0x30, 0xC2, 0x30, 0xC4, 0x19, - 0x64, 0x19, 0x68, 0x0E, 0x38, 0x0E, 0x38, 0x0C, 0x30, 0x04, 0x10, 0xFB, - 0xC6, 0x30, 0x64, 0x0F, 0x00, 0xC0, 0x0C, 0x03, 0xC0, 0x98, 0x21, 0x8C, - 0x3B, 0xCF, 0x80, 0xF8, 0xEE, 0x08, 0xC1, 0x18, 0x41, 0x88, 0x31, 0x03, - 0x40, 0x68, 0x06, 0x00, 0xC0, 0x08, 0x02, 0x00, 0x40, 0x10, 0x1E, 0x03, - 0x80, 0x7F, 0x90, 0xE0, 0x30, 0x18, 0x0E, 0x03, 0x01, 0xC0, 0xE0, 0x30, - 0x5C, 0x3F, 0xF8, 0x19, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0xB0, 0x63, 0x18, - 0xC6, 0x31, 0x8C, 0x61, 0x80, 0xFF, 0xFF, 0x80, 0xC3, 0x18, 0xC6, 0x31, - 0x8C, 0x63, 0x06, 0xC6, 0x31, 0x8C, 0x63, 0x18, 0xCC, 0x00, 0x38, 0x06, - 0x62, 0x41, 0xC0}; - -const GFXglyph FreeSerif12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 2, 16, 8, 3, -15}, // 0x21 '!' - {4, 6, 6, 10, 1, -15}, // 0x22 '"' - {9, 12, 16, 12, 0, -15}, // 0x23 '#' - {33, 10, 18, 12, 1, -16}, // 0x24 '$' - {56, 18, 17, 20, 1, -16}, // 0x25 '%' - {95, 17, 16, 19, 1, -15}, // 0x26 '&' - {129, 2, 6, 5, 1, -15}, // 0x27 ''' - {131, 6, 20, 8, 1, -15}, // 0x28 '(' - {146, 6, 20, 8, 1, -15}, // 0x29 ')' - {161, 8, 10, 12, 3, -14}, // 0x2A '*' - {171, 11, 11, 14, 1, -10}, // 0x2B '+' - {187, 3, 6, 6, 2, -2}, // 0x2C ',' - {190, 6, 1, 8, 1, -5}, // 0x2D '-' - {191, 2, 3, 6, 2, -2}, // 0x2E '.' - {192, 7, 17, 7, 0, -16}, // 0x2F '/' - {207, 10, 17, 12, 1, -16}, // 0x30 '0' - {229, 6, 17, 12, 3, -16}, // 0x31 '1' - {242, 10, 15, 12, 1, -14}, // 0x32 '2' - {261, 10, 16, 12, 1, -15}, // 0x33 '3' - {281, 10, 16, 12, 1, -15}, // 0x34 '4' - {301, 10, 17, 12, 1, -16}, // 0x35 '5' - {323, 10, 17, 12, 1, -16}, // 0x36 '6' - {345, 10, 16, 12, 0, -15}, // 0x37 '7' - {365, 10, 17, 12, 1, -16}, // 0x38 '8' - {387, 10, 18, 12, 1, -16}, // 0x39 '9' - {410, 2, 12, 6, 2, -11}, // 0x3A ':' - {413, 4, 15, 6, 2, -11}, // 0x3B ';' - {421, 12, 13, 14, 1, -12}, // 0x3C '<' - {441, 12, 6, 14, 1, -8}, // 0x3D '=' - {450, 12, 13, 14, 1, -11}, // 0x3E '>' - {470, 8, 17, 11, 2, -16}, // 0x3F '?' - {487, 17, 16, 21, 2, -15}, // 0x40 '@' - {521, 17, 16, 17, 0, -15}, // 0x41 'A' - {555, 12, 16, 15, 1, -15}, // 0x42 'B' - {579, 15, 16, 16, 1, -15}, // 0x43 'C' - {609, 16, 16, 17, 0, -15}, // 0x44 'D' - {641, 14, 16, 15, 0, -15}, // 0x45 'E' - {669, 14, 16, 14, 0, -15}, // 0x46 'F' - {697, 16, 16, 17, 1, -15}, // 0x47 'G' - {729, 16, 16, 17, 0, -15}, // 0x48 'H' - {761, 6, 16, 8, 1, -15}, // 0x49 'I' - {773, 8, 16, 9, 0, -15}, // 0x4A 'J' - {789, 16, 16, 17, 1, -15}, // 0x4B 'K' - {821, 15, 16, 15, 0, -15}, // 0x4C 'L' - {851, 19, 16, 21, 1, -15}, // 0x4D 'M' - {889, 16, 16, 17, 1, -15}, // 0x4E 'N' - {921, 15, 16, 17, 1, -15}, // 0x4F 'O' - {951, 12, 16, 14, 0, -15}, // 0x50 'P' - {975, 16, 20, 17, 1, -15}, // 0x51 'Q' - {1015, 15, 16, 16, 0, -15}, // 0x52 'R' - {1045, 11, 16, 13, 0, -15}, // 0x53 'S' - {1067, 15, 16, 15, 0, -15}, // 0x54 'T' - {1097, 16, 16, 17, 1, -15}, // 0x55 'U' - {1129, 17, 16, 17, 0, -15}, // 0x56 'V' - {1163, 22, 16, 23, 0, -15}, // 0x57 'W' - {1207, 17, 16, 17, 0, -15}, // 0x58 'X' - {1241, 16, 16, 17, 0, -15}, // 0x59 'Y' - {1273, 14, 16, 15, 1, -15}, // 0x5A 'Z' - {1301, 5, 20, 8, 2, -15}, // 0x5B '[' - {1314, 7, 17, 7, 0, -16}, // 0x5C '\' - {1329, 5, 20, 8, 1, -15}, // 0x5D ']' - {1342, 10, 9, 11, 1, -15}, // 0x5E '^' - {1354, 12, 1, 12, 0, 3}, // 0x5F '_' - {1356, 5, 4, 6, 0, -15}, // 0x60 '`' - {1359, 10, 11, 10, 1, -10}, // 0x61 'a' - {1373, 10, 17, 12, 1, -16}, // 0x62 'b' - {1395, 8, 11, 11, 1, -10}, // 0x63 'c' - {1406, 10, 17, 12, 1, -16}, // 0x64 'd' - {1428, 10, 11, 11, 1, -10}, // 0x65 'e' - {1442, 9, 17, 9, 0, -16}, // 0x66 'f' - {1462, 12, 16, 11, 0, -10}, // 0x67 'g' - {1486, 11, 17, 12, 0, -16}, // 0x68 'h' - {1510, 5, 16, 7, 0, -15}, // 0x69 'i' - {1520, 6, 21, 8, 0, -15}, // 0x6A 'j' - {1536, 11, 17, 12, 1, -16}, // 0x6B 'k' - {1560, 5, 17, 6, 0, -16}, // 0x6C 'l' - {1571, 18, 11, 19, 0, -10}, // 0x6D 'm' - {1596, 11, 11, 12, 0, -10}, // 0x6E 'n' - {1612, 10, 11, 12, 1, -10}, // 0x6F 'o' - {1626, 11, 16, 12, 0, -10}, // 0x70 'p' - {1648, 10, 16, 12, 1, -10}, // 0x71 'q' - {1668, 8, 11, 8, 0, -10}, // 0x72 'r' - {1679, 7, 11, 9, 1, -10}, // 0x73 's' - {1689, 6, 13, 7, 1, -12}, // 0x74 't' - {1699, 10, 11, 12, 1, -10}, // 0x75 'u' - {1713, 11, 11, 11, 0, -10}, // 0x76 'v' - {1729, 16, 11, 16, 0, -10}, // 0x77 'w' - {1751, 11, 11, 12, 0, -10}, // 0x78 'x' - {1767, 11, 16, 11, 0, -10}, // 0x79 'y' - {1789, 10, 11, 10, 0, -10}, // 0x7A 'z' - {1803, 5, 21, 12, 2, -16}, // 0x7B '{' - {1817, 1, 17, 5, 2, -16}, // 0x7C '|' - {1820, 5, 21, 12, 5, -15}, // 0x7D '}' - {1834, 12, 3, 12, 0, -6}}; // 0x7E '~' - -const GFXfont FreeSerif12pt7b PROGMEM = {(uint8_t *)FreeSerif12pt7bBitmaps, - (GFXglyph *)FreeSerif12pt7bGlyphs, - 0x20, 0x7E, 29}; - -// Approx. 2511 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h deleted file mode 100644 index 3fd1ba5..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif18pt7b.h +++ /dev/null @@ -1,431 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif18pt7bBitmaps[] PROGMEM = { - 0x6F, 0xFF, 0xFF, 0xFE, 0x66, 0x66, 0x66, 0x64, 0x40, 0x00, 0x6F, 0xF6, - 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0x46, 0x42, 0x42, 0x42, 0x03, 0x06, 0x01, - 0x83, 0x00, 0xC1, 0x80, 0x61, 0xC0, 0x30, 0xC0, 0x38, 0x60, 0x18, 0x30, - 0xFF, 0xFF, 0x7F, 0xFF, 0x83, 0x06, 0x01, 0x86, 0x00, 0xC3, 0x00, 0xC1, - 0x87, 0xFF, 0xFF, 0xFF, 0xFE, 0x18, 0x30, 0x0C, 0x18, 0x06, 0x18, 0x06, - 0x0C, 0x03, 0x06, 0x01, 0x83, 0x00, 0xC1, 0x80, 0x60, 0xC0, 0x02, 0x00, - 0x10, 0x03, 0xE0, 0x64, 0xE6, 0x23, 0x61, 0x1B, 0x08, 0x58, 0x42, 0xE2, - 0x03, 0x90, 0x1F, 0x80, 0x7E, 0x00, 0xFC, 0x01, 0xF0, 0x0F, 0xC0, 0x4E, - 0x02, 0x38, 0x10, 0xE0, 0x87, 0x04, 0x3C, 0x21, 0xE1, 0x1B, 0xC9, 0xCF, - 0xFC, 0x1F, 0x80, 0x10, 0x00, 0x80, 0x07, 0x80, 0x20, 0x0F, 0xF0, 0x70, - 0x0F, 0x07, 0xD0, 0x0F, 0x02, 0x18, 0x07, 0x01, 0x18, 0x07, 0x00, 0x8C, - 0x03, 0x80, 0x4C, 0x01, 0x80, 0x44, 0x00, 0xC0, 0x26, 0x00, 0x60, 0x22, - 0x0F, 0x30, 0x33, 0x1F, 0xCC, 0x73, 0x1E, 0x37, 0xF1, 0x8E, 0x19, 0xE1, - 0x8E, 0x04, 0x00, 0x86, 0x02, 0x00, 0xC7, 0x01, 0x00, 0xC3, 0x80, 0x80, - 0x61, 0x80, 0x80, 0x60, 0xC0, 0x40, 0x30, 0x60, 0x40, 0x30, 0x38, 0xE0, - 0x30, 0x0F, 0xE0, 0x18, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0x61, 0x80, 0x00, 0x60, 0x60, 0x00, 0x30, 0x30, 0x00, 0x18, 0x18, - 0x00, 0x0C, 0x0C, 0x00, 0x06, 0x0C, 0x00, 0x03, 0x8E, 0x00, 0x01, 0xCE, - 0x00, 0x00, 0x7C, 0x3F, 0xC0, 0x38, 0x07, 0x80, 0x3E, 0x03, 0x80, 0x77, - 0x01, 0x80, 0x73, 0xC0, 0x80, 0xF0, 0xF0, 0xC0, 0x70, 0x7C, 0xC0, 0x78, - 0x1E, 0x40, 0x3C, 0x07, 0xC0, 0x1E, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x0F, - 0xC0, 0xFF, 0x0D, 0xF0, 0xC7, 0xFC, 0x7F, 0xC1, 0xFC, 0x1F, 0x80, 0x3C, - 0x00, 0xFF, 0xFE, 0x92, 0x40, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0xC0, - 0xC0, 0x60, 0x70, 0x30, 0x18, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, - 0x70, 0x38, 0x0C, 0x06, 0x03, 0x80, 0xC0, 0x60, 0x18, 0x0C, 0x03, 0x00, - 0xC0, 0x30, 0x0C, 0x80, 0x30, 0x0C, 0x03, 0x00, 0xC0, 0x60, 0x18, 0x0C, - 0x07, 0x01, 0x80, 0xC0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, - 0xE0, 0x60, 0x30, 0x38, 0x18, 0x0C, 0x0C, 0x04, 0x04, 0x04, 0x04, 0x04, - 0x00, 0x0C, 0x00, 0xC0, 0x0C, 0x0C, 0x46, 0xE4, 0xF7, 0x5E, 0x1F, 0x00, - 0xC0, 0x17, 0x8E, 0x4E, 0xE4, 0xFC, 0xC6, 0x0C, 0x00, 0xC0, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x6F, 0xFF, - 0x11, 0x24, 0x80, 0xFF, 0xFF, 0x6F, 0xF6, 0x00, 0xC0, 0x60, 0x18, 0x06, - 0x03, 0x80, 0xC0, 0x30, 0x1C, 0x06, 0x01, 0x80, 0xE0, 0x30, 0x0C, 0x07, - 0x01, 0x80, 0x60, 0x38, 0x0C, 0x03, 0x01, 0xC0, 0x60, 0x18, 0x0E, 0x03, - 0x00, 0x03, 0xE0, 0x0E, 0x70, 0x1C, 0x38, 0x38, 0x1C, 0x38, 0x1C, 0x78, - 0x1E, 0x70, 0x0E, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, - 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0x70, 0x0E, 0x70, - 0x0E, 0x78, 0x1E, 0x38, 0x1C, 0x38, 0x1C, 0x1C, 0x38, 0x0C, 0x30, 0x03, - 0xC0, 0x06, 0x03, 0x83, 0xE3, 0x38, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0x0E, - 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x80, 0xE0, 0x38, 0x0E, 0x03, 0x80, - 0xE0, 0x38, 0x0E, 0x03, 0x81, 0xE1, 0xFF, 0x07, 0xC0, 0x1F, 0xF0, 0x3F, - 0xF8, 0x70, 0xF8, 0x60, 0x3C, 0xC0, 0x3C, 0x80, 0x1C, 0x00, 0x1C, 0x00, - 0x1C, 0x00, 0x18, 0x00, 0x18, 0x00, 0x30, 0x00, 0x30, 0x00, 0x60, 0x00, - 0xC0, 0x00, 0x80, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x01, 0x10, - 0x02, 0x3F, 0xFE, 0x7F, 0xFC, 0xFF, 0xFC, 0x0F, 0xC0, 0xFF, 0x0C, 0x3C, - 0x80, 0xE4, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x04, 0x00, 0x40, 0x04, 0x00, - 0xF8, 0x1F, 0xE0, 0x0F, 0x00, 0x1C, 0x00, 0xE0, 0x03, 0x00, 0x18, 0x00, - 0xC0, 0x06, 0x00, 0x60, 0x03, 0x78, 0x73, 0xFF, 0x0F, 0xC0, 0x00, 0x30, - 0x00, 0x30, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xB0, 0x01, 0x30, 0x03, 0x30, - 0x06, 0x30, 0x04, 0x30, 0x08, 0x30, 0x18, 0x30, 0x10, 0x30, 0x20, 0x30, - 0x60, 0x30, 0xC0, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x30, 0x00, 0x30, - 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x00, 0x7F, 0xC3, - 0xFE, 0x1F, 0xE1, 0x80, 0x08, 0x00, 0xC0, 0x07, 0xC0, 0x7F, 0x81, 0xFF, - 0x00, 0xFC, 0x01, 0xE0, 0x07, 0x80, 0x1C, 0x00, 0x60, 0x03, 0x00, 0x18, - 0x00, 0xC0, 0x06, 0x00, 0x60, 0x07, 0x78, 0x73, 0xFF, 0x0F, 0xC0, 0x00, - 0x0E, 0x00, 0xF8, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x7C, 0x00, 0x79, 0xF0, 0x7F, 0xFC, 0xF8, 0x3C, 0xF0, 0x1E, 0xF0, - 0x1F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0x70, 0x0F, 0x78, - 0x0F, 0x78, 0x0E, 0x3C, 0x1E, 0x1E, 0x3C, 0x0F, 0xF8, 0x07, 0xE0, 0x3F, - 0xFD, 0xFF, 0xF7, 0xFF, 0xF0, 0x06, 0x80, 0x18, 0x00, 0x60, 0x03, 0x00, - 0x0C, 0x00, 0x30, 0x01, 0x80, 0x06, 0x00, 0x18, 0x00, 0xE0, 0x03, 0x00, - 0x0C, 0x00, 0x70, 0x01, 0x80, 0x06, 0x00, 0x38, 0x00, 0xC0, 0x03, 0x00, - 0x1C, 0x00, 0x60, 0x00, 0x0F, 0x83, 0xFC, 0x70, 0xE6, 0x07, 0xC0, 0x3C, - 0x03, 0xC0, 0x3E, 0x03, 0x70, 0x67, 0x8C, 0x3D, 0x81, 0xF0, 0x0F, 0x81, - 0x7C, 0x21, 0xE6, 0x0E, 0xC0, 0x7C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x36, - 0x06, 0x70, 0xE3, 0xFC, 0x0F, 0x80, 0x07, 0xC0, 0x1F, 0xF0, 0x3C, 0x78, - 0x38, 0x3C, 0x78, 0x1E, 0x70, 0x1E, 0xF0, 0x0E, 0xF0, 0x0F, 0xF0, 0x0F, - 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF8, 0x0F, 0x78, 0x0F, 0x3C, 0x3F, - 0x1F, 0xEE, 0x0F, 0x9E, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x78, - 0x00, 0xF0, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x00, 0x6F, 0xF6, - 0x00, 0x00, 0x00, 0x00, 0x06, 0xFF, 0x60, 0x67, 0xBC, 0xC0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x19, 0xEF, 0x78, 0x42, 0x22, 0x20, 0x00, 0x00, 0xC0, - 0x00, 0xF0, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x03, 0xF0, - 0x03, 0xF0, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, - 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xC0, - 0x00, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x80, - 0x00, 0x3C, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, 0xFC, - 0x00, 0xFC, 0x00, 0xF8, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF8, 0x00, 0xF0, - 0x00, 0x30, 0x00, 0x00, 0x1F, 0x81, 0xFF, 0x18, 0x7D, 0x81, 0xEC, 0x07, - 0xF0, 0x3F, 0x81, 0xE0, 0x0F, 0x00, 0x70, 0x03, 0x80, 0x38, 0x01, 0x80, - 0x08, 0x00, 0xC0, 0x04, 0x00, 0x20, 0x02, 0x00, 0x10, 0x00, 0x80, 0x00, - 0x00, 0x00, 0x03, 0x00, 0x3C, 0x01, 0xE0, 0x07, 0x00, 0x00, 0x7F, 0x00, - 0x01, 0xFF, 0xC0, 0x07, 0x80, 0xF0, 0x0F, 0x00, 0x38, 0x1C, 0x00, 0x1C, - 0x38, 0x00, 0x0C, 0x38, 0x00, 0x06, 0x70, 0x1E, 0x02, 0x70, 0x3F, 0xE3, - 0xF0, 0x71, 0xE1, 0xE0, 0xE0, 0xC1, 0xE0, 0xC0, 0xC1, 0xE0, 0xC1, 0xC1, - 0xE1, 0x81, 0xC1, 0xE1, 0x81, 0x83, 0xE1, 0x83, 0x82, 0xE1, 0x83, 0x86, - 0x71, 0xC7, 0x8C, 0x70, 0xF9, 0xF8, 0x38, 0xF0, 0xF0, 0x3C, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x07, 0x80, 0x70, 0x03, 0xFF, 0xE0, 0x00, 0x7F, 0x00, - 0x00, 0x10, 0x00, 0x00, 0x38, 0x00, 0x00, 0x38, 0x00, 0x00, 0x38, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x5C, 0x00, 0x00, 0xDE, 0x00, 0x00, 0x8E, 0x00, - 0x01, 0x8F, 0x00, 0x01, 0x87, 0x00, 0x03, 0x07, 0x80, 0x03, 0x03, 0x80, - 0x02, 0x03, 0xC0, 0x06, 0x03, 0xC0, 0x07, 0xFF, 0xC0, 0x0F, 0xFF, 0xE0, - 0x0C, 0x01, 0xE0, 0x18, 0x00, 0xF0, 0x18, 0x00, 0xF0, 0x30, 0x00, 0x78, - 0x30, 0x00, 0x78, 0x70, 0x00, 0x7C, 0xFC, 0x01, 0xFF, 0xFF, 0xFC, 0x03, - 0xFF, 0xF8, 0x1E, 0x0F, 0xC1, 0xE0, 0x3C, 0x1E, 0x01, 0xE1, 0xE0, 0x1E, - 0x1E, 0x01, 0xE1, 0xE0, 0x1E, 0x1E, 0x03, 0xC1, 0xE0, 0x78, 0x1F, 0xFE, - 0x01, 0xFF, 0xF0, 0x1E, 0x07, 0xC1, 0xE0, 0x1E, 0x1E, 0x00, 0xF1, 0xE0, - 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x0F, 0x1E, 0x00, 0xF1, 0xE0, 0x1E, 0x1E, - 0x07, 0xE3, 0xFF, 0xF8, 0xFF, 0xFE, 0x00, 0x00, 0xFE, 0x08, 0x0F, 0xFF, - 0x60, 0xFC, 0x1F, 0x87, 0xC0, 0x1E, 0x3C, 0x00, 0x38, 0xF0, 0x00, 0x67, - 0x80, 0x01, 0x9E, 0x00, 0x02, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x0F, - 0x00, 0x02, 0x1F, 0x00, 0x38, 0x3F, 0x03, 0x80, 0x7F, 0xFC, 0x00, 0x3F, - 0x80, 0xFF, 0xFC, 0x00, 0x7F, 0xFF, 0x00, 0x78, 0x3F, 0x80, 0xF0, 0x0F, - 0x81, 0xE0, 0x0F, 0x83, 0xC0, 0x0F, 0x07, 0x80, 0x0F, 0x0F, 0x00, 0x1E, - 0x1E, 0x00, 0x1E, 0x3C, 0x00, 0x3C, 0x78, 0x00, 0x78, 0xF0, 0x00, 0xF1, - 0xE0, 0x01, 0xE3, 0xC0, 0x03, 0xC7, 0x80, 0x07, 0x8F, 0x00, 0x1E, 0x1E, - 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0x78, 0x01, 0xE0, 0xF0, 0x0F, 0x81, 0xE0, - 0x7E, 0x07, 0xFF, 0xF0, 0x3F, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x87, 0xFF, - 0xF8, 0x3C, 0x01, 0x83, 0xC0, 0x08, 0x3C, 0x00, 0x83, 0xC0, 0x00, 0x3C, - 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x02, 0x03, 0xC0, 0x60, 0x3F, 0xFE, 0x03, - 0xFF, 0xE0, 0x3C, 0x06, 0x03, 0xC0, 0x20, 0x3C, 0x00, 0x03, 0xC0, 0x00, - 0x3C, 0x00, 0x03, 0xC0, 0x01, 0x3C, 0x00, 0x23, 0xC0, 0x06, 0x3C, 0x01, - 0xE7, 0xFF, 0xFE, 0xFF, 0xFF, 0xC0, 0xFF, 0xFF, 0xBF, 0xFF, 0xCF, 0x00, - 0x67, 0x80, 0x13, 0xC0, 0x09, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, - 0x02, 0x1E, 0x03, 0x0F, 0xFF, 0x87, 0xFF, 0xC3, 0xC0, 0x61, 0xE0, 0x10, - 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, - 0x03, 0xC0, 0x03, 0xF0, 0x03, 0xFC, 0x00, 0x00, 0xFE, 0x04, 0x07, 0xFF, - 0xB8, 0x1F, 0x03, 0xF0, 0xF8, 0x01, 0xE3, 0xE0, 0x01, 0xC7, 0x80, 0x01, - 0x9E, 0x00, 0x01, 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, - 0xC0, 0x00, 0x07, 0x80, 0x07, 0xFF, 0x00, 0x07, 0xDE, 0x00, 0x07, 0xBC, - 0x00, 0x0F, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x3C, 0xF0, 0x00, 0x78, 0xF0, - 0x00, 0xF1, 0xF0, 0x01, 0xE1, 0xF0, 0x03, 0xC1, 0xF8, 0x1F, 0x00, 0xFF, - 0xFC, 0x00, 0x3F, 0x80, 0xFF, 0x03, 0xFD, 0xF8, 0x07, 0xE3, 0xC0, 0x0F, - 0x0F, 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x0F, - 0x00, 0x3C, 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xFF, 0xFF, 0x0F, 0xFF, - 0xFC, 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x0F, 0x00, 0x3C, - 0x3C, 0x00, 0xF0, 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x0F, 0x00, 0x3C, 0x3C, - 0x00, 0xF1, 0xF8, 0x07, 0xEF, 0xF0, 0x3F, 0xC0, 0xFF, 0xBF, 0x0F, 0x07, - 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, - 0xF0, 0x78, 0x3C, 0x1E, 0x0F, 0x07, 0x83, 0xC3, 0xF3, 0xFE, 0x0F, 0xF0, - 0x7E, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC6, 0x38, 0xF3, 0x8F, 0xF0, 0x7C, 0x00, 0xFF, 0x07, 0xFC, - 0xFC, 0x03, 0xC0, 0xF0, 0x07, 0x01, 0xE0, 0x1C, 0x03, 0xC0, 0x60, 0x07, - 0x81, 0x80, 0x0F, 0x06, 0x00, 0x1E, 0x18, 0x00, 0x3C, 0x60, 0x00, 0x79, - 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xDF, 0x00, 0x07, 0x8F, - 0x00, 0x0F, 0x0F, 0x00, 0x1E, 0x0F, 0x00, 0x3C, 0x0F, 0x00, 0x78, 0x0F, - 0x00, 0xF0, 0x1F, 0x01, 0xE0, 0x1F, 0x03, 0xC0, 0x1F, 0x0F, 0xC0, 0x3F, - 0x3F, 0xC1, 0xFF, 0x80, 0xFF, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x1E, - 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, - 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0x78, - 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x80, 0x04, 0xF0, - 0x01, 0x1E, 0x00, 0x63, 0xC0, 0x3C, 0xFF, 0xFF, 0xBF, 0xFF, 0xE0, 0xFC, - 0x00, 0x03, 0xF9, 0xF0, 0x00, 0x1F, 0x87, 0x80, 0x01, 0xF8, 0x3E, 0x00, - 0x0F, 0xC1, 0xF0, 0x00, 0x5E, 0x0B, 0xC0, 0x06, 0xF0, 0x5E, 0x00, 0x37, - 0x82, 0x78, 0x03, 0x3C, 0x13, 0xC0, 0x19, 0xE0, 0x8F, 0x01, 0x8F, 0x04, - 0x78, 0x0C, 0x78, 0x21, 0xE0, 0xC3, 0xC1, 0x0F, 0x06, 0x1E, 0x08, 0x3C, - 0x60, 0xF0, 0x41, 0xE3, 0x07, 0x82, 0x07, 0xB0, 0x3C, 0x10, 0x3D, 0x81, - 0xE0, 0x81, 0xF8, 0x0F, 0x04, 0x07, 0xC0, 0x78, 0x20, 0x3C, 0x03, 0xC1, - 0x00, 0xE0, 0x1E, 0x1C, 0x06, 0x01, 0xFB, 0xF8, 0x10, 0x1F, 0xE0, 0xFC, - 0x00, 0xFE, 0x78, 0x00, 0x70, 0x78, 0x00, 0x40, 0xF8, 0x00, 0x81, 0xF8, - 0x01, 0x02, 0xF8, 0x02, 0x04, 0xF8, 0x04, 0x08, 0xF0, 0x08, 0x11, 0xF0, - 0x10, 0x21, 0xF0, 0x20, 0x41, 0xF0, 0x40, 0x81, 0xF0, 0x81, 0x01, 0xF1, - 0x02, 0x01, 0xE2, 0x04, 0x03, 0xE4, 0x08, 0x03, 0xE8, 0x10, 0x03, 0xF0, - 0x20, 0x03, 0xE0, 0x40, 0x03, 0xC0, 0x80, 0x03, 0x81, 0x00, 0x07, 0x07, - 0x00, 0x06, 0x3F, 0x80, 0x04, 0x00, 0x00, 0xFE, 0x00, 0x07, 0xFF, 0x00, - 0x3E, 0x0F, 0x80, 0xF0, 0x07, 0x83, 0xC0, 0x07, 0x87, 0x80, 0x07, 0x1E, - 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0xC0, - 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x03, 0xFC, 0x00, - 0x07, 0xF8, 0x00, 0x0F, 0x78, 0x00, 0x3C, 0xF0, 0x00, 0x78, 0xE0, 0x01, - 0xE1, 0xE0, 0x03, 0xC1, 0xE0, 0x0F, 0x01, 0xF0, 0x7C, 0x00, 0xFF, 0xE0, - 0x00, 0x7F, 0x00, 0xFF, 0xF8, 0x1F, 0xFF, 0x83, 0xC1, 0xF0, 0xF0, 0x1E, - 0x3C, 0x07, 0xCF, 0x00, 0xF3, 0xC0, 0x3C, 0xF0, 0x0F, 0x3C, 0x03, 0xCF, - 0x01, 0xF3, 0xC0, 0x78, 0xF0, 0x7C, 0x3F, 0xFE, 0x0F, 0xFE, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, - 0x3C, 0x00, 0x1F, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x07, 0xFF, - 0x00, 0x3E, 0x0F, 0x80, 0xF0, 0x07, 0x83, 0xC0, 0x07, 0x87, 0x80, 0x0F, - 0x1E, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0xF0, 0x00, 0x1D, 0xE0, 0x00, 0x3F, - 0xC0, 0x00, 0x7F, 0x80, 0x00, 0xFF, 0x00, 0x01, 0xFE, 0x00, 0x03, 0xFC, - 0x00, 0x07, 0xF8, 0x00, 0x0F, 0x70, 0x00, 0x1C, 0xF0, 0x00, 0x79, 0xE0, - 0x00, 0xF1, 0xE0, 0x03, 0xC1, 0xC0, 0x07, 0x01, 0xC0, 0x1C, 0x01, 0xE0, - 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x0F, 0xC0, 0xFF, 0xF0, - 0x03, 0xFF, 0xF0, 0x0F, 0x07, 0xC0, 0x78, 0x1E, 0x03, 0xC0, 0x78, 0x1E, - 0x03, 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xF0, 0x3C, 0x07, 0x81, 0xE0, 0x78, - 0x0F, 0x0F, 0x80, 0x7F, 0xF8, 0x03, 0xFE, 0x00, 0x1E, 0x78, 0x00, 0xF1, - 0xE0, 0x07, 0x87, 0x80, 0x3C, 0x3C, 0x01, 0xE0, 0xF0, 0x0F, 0x03, 0xC0, - 0x78, 0x0F, 0x03, 0xC0, 0x7C, 0x3F, 0x01, 0xF3, 0xFC, 0x07, 0xE0, 0x07, - 0x84, 0x1F, 0xFC, 0x3C, 0x3E, 0x30, 0x0E, 0x70, 0x06, 0x70, 0x06, 0x70, - 0x02, 0x78, 0x00, 0x7C, 0x00, 0x3F, 0x00, 0x1F, 0xC0, 0x0F, 0xE0, 0x03, - 0xF8, 0x00, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x0F, 0xC0, - 0x0F, 0xE0, 0x0F, 0x70, 0x1E, 0x78, 0x3C, 0x4F, 0xF8, 0x43, 0xF0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xF0, 0x7C, 0x0F, 0x03, 0x80, 0xF0, 0x10, - 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x0F, - 0x00, 0x00, 0xF0, 0x00, 0x1F, 0x80, 0x03, 0xFC, 0x00, 0xFF, 0x01, 0xFD, - 0xF8, 0x01, 0xC3, 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, - 0x00, 0x83, 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, 0x00, - 0x83, 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, 0x00, 0x83, - 0xC0, 0x02, 0x0F, 0x00, 0x08, 0x3C, 0x00, 0x20, 0xF0, 0x00, 0x81, 0xE0, - 0x04, 0x07, 0x80, 0x30, 0x0F, 0x81, 0x80, 0x1F, 0xFC, 0x00, 0x1F, 0xC0, - 0x00, 0xFF, 0xC0, 0x7F, 0x3E, 0x00, 0x1E, 0x1E, 0x00, 0x0C, 0x0E, 0x00, - 0x18, 0x0F, 0x00, 0x18, 0x07, 0x00, 0x10, 0x07, 0x80, 0x30, 0x07, 0x80, - 0x30, 0x03, 0xC0, 0x60, 0x03, 0xC0, 0x60, 0x01, 0xE0, 0x40, 0x01, 0xE0, - 0xC0, 0x00, 0xF0, 0xC0, 0x00, 0xF1, 0x80, 0x00, 0x71, 0x80, 0x00, 0x7B, - 0x00, 0x00, 0x3B, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x08, 0x00, 0xFF, 0x9F, - 0xF0, 0x3F, 0x9F, 0x03, 0xE0, 0x07, 0x07, 0x80, 0xF0, 0x03, 0x03, 0xC0, - 0x78, 0x01, 0x80, 0xE0, 0x1E, 0x00, 0x80, 0x78, 0x0F, 0x00, 0xC0, 0x1C, - 0x03, 0x80, 0x60, 0x0F, 0x01, 0xE0, 0x20, 0x07, 0x81, 0xF0, 0x30, 0x01, - 0xC0, 0xBC, 0x18, 0x00, 0xF0, 0xDE, 0x08, 0x00, 0x78, 0x67, 0x0C, 0x00, - 0x1E, 0x23, 0xC4, 0x00, 0x0F, 0x31, 0xE6, 0x00, 0x03, 0x90, 0x7B, 0x00, - 0x01, 0xF8, 0x3D, 0x00, 0x00, 0xFC, 0x0F, 0x80, 0x00, 0x3C, 0x07, 0xC0, - 0x00, 0x1E, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0xE0, 0x00, 0x03, 0x00, 0x70, - 0x00, 0x01, 0x80, 0x10, 0x00, 0x00, 0x80, 0x08, 0x00, 0x7F, 0xE0, 0xFF, - 0x0F, 0xC0, 0x1E, 0x03, 0xE0, 0x0E, 0x00, 0xF0, 0x06, 0x00, 0x3C, 0x06, - 0x00, 0x0F, 0x06, 0x00, 0x07, 0x86, 0x00, 0x01, 0xE6, 0x00, 0x00, 0x7B, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x03, - 0xF0, 0x00, 0x03, 0x78, 0x00, 0x01, 0x9E, 0x00, 0x01, 0x87, 0x80, 0x01, - 0x83, 0xE0, 0x01, 0x80, 0xF0, 0x01, 0x80, 0x3C, 0x01, 0x80, 0x1F, 0x01, - 0xC0, 0x07, 0xC1, 0xE0, 0x03, 0xF3, 0xFE, 0x0F, 0xFE, 0xFF, 0xC0, 0xFF, - 0x7E, 0x00, 0x1C, 0x1E, 0x00, 0x18, 0x1F, 0x00, 0x30, 0x0F, 0x00, 0x60, - 0x07, 0x80, 0x60, 0x03, 0xC0, 0xC0, 0x03, 0xE1, 0x80, 0x01, 0xE1, 0x80, - 0x00, 0xF3, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, - 0x00, 0x7E, 0x00, 0x01, 0xFF, 0x80, 0x3F, 0xFF, 0xF1, 0xFF, 0xFF, 0x9C, - 0x00, 0x78, 0xC0, 0x07, 0x84, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x3C, - 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x00, 0x00, 0x78, 0x00, 0x47, 0x80, 0x06, 0x78, 0x00, 0x33, 0x80, - 0x07, 0x3F, 0xFF, 0xFB, 0xFF, 0xFF, 0xC0, 0xFF, 0x83, 0x06, 0x0C, 0x18, - 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x07, 0xF0, 0xC0, 0x18, 0x06, 0x01, - 0x80, 0x70, 0x0C, 0x03, 0x00, 0xE0, 0x18, 0x06, 0x01, 0xC0, 0x30, 0x0C, - 0x03, 0x80, 0x60, 0x18, 0x07, 0x00, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x60, - 0x1C, 0x03, 0xFE, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, - 0x30, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x1F, 0xF0, 0x03, 0x80, 0x0F, 0x00, 0x1F, 0x00, 0x76, 0x00, 0xCE, - 0x03, 0x8C, 0x06, 0x1C, 0x1C, 0x18, 0x30, 0x30, 0xE0, 0x31, 0x80, 0x67, - 0x00, 0x6C, 0x00, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0xC0, 0xE0, 0x70, - 0x18, 0x0C, 0x03, 0x1F, 0x03, 0x8C, 0x38, 0x31, 0xC1, 0x8E, 0x0C, 0x00, - 0x60, 0x0F, 0x01, 0x98, 0x30, 0xC3, 0x86, 0x38, 0x31, 0xC1, 0x8E, 0x0C, - 0x78, 0xE5, 0xFB, 0xCF, 0x0C, 0x00, 0x00, 0x38, 0x00, 0xF8, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x39, - 0xF0, 0x3B, 0xFC, 0x3C, 0x3E, 0x38, 0x0E, 0x38, 0x0F, 0x38, 0x07, 0x38, - 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x06, 0x38, 0x0E, 0x38, - 0x0C, 0x3C, 0x1C, 0x1F, 0xF0, 0x07, 0xE0, 0x07, 0xE0, 0x7F, 0xE3, 0x87, - 0xD8, 0x0F, 0x60, 0x1B, 0x00, 0x0C, 0x00, 0x30, 0x00, 0xC0, 0x03, 0x00, - 0x0E, 0x00, 0x3C, 0x01, 0x78, 0x19, 0xFF, 0xC3, 0xFE, 0x03, 0xE0, 0x00, - 0x00, 0x00, 0x1C, 0x00, 0x7C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x07, 0x9C, 0x1F, 0xDC, 0x38, 0x7C, 0x70, - 0x3C, 0x70, 0x1C, 0x60, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, - 0x1C, 0xE0, 0x1C, 0xF0, 0x1C, 0x70, 0x1C, 0x7C, 0x3E, 0x3F, 0xDF, 0x0F, - 0x90, 0x0F, 0x81, 0xFF, 0x08, 0x3C, 0x80, 0xE7, 0xFF, 0x7F, 0xFF, 0x00, - 0x18, 0x00, 0xC0, 0x07, 0x00, 0x38, 0x03, 0xE0, 0x37, 0x83, 0x3F, 0xF0, - 0xFF, 0x03, 0xF0, 0x01, 0xF0, 0x3F, 0xC3, 0x8E, 0x18, 0x00, 0xC0, 0x0E, - 0x00, 0x70, 0x03, 0x80, 0x1C, 0x03, 0xFE, 0x1F, 0xF0, 0x38, 0x01, 0xC0, - 0x0E, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, - 0xC0, 0x0E, 0x00, 0x70, 0x07, 0xC0, 0xFF, 0x80, 0x0F, 0xC0, 0x1F, 0xFF, - 0x38, 0xFF, 0x70, 0x70, 0x70, 0x70, 0x70, 0x30, 0x70, 0x30, 0x70, 0x30, - 0x38, 0x20, 0x1C, 0x60, 0x0F, 0x80, 0x10, 0x00, 0x20, 0x00, 0x60, 0x00, - 0x7F, 0xE0, 0x3F, 0xFC, 0x1F, 0xFE, 0x20, 0x06, 0x40, 0x02, 0xC0, 0x02, - 0xC0, 0x04, 0xF0, 0x18, 0x7F, 0xF0, 0x1F, 0x80, 0x00, 0x00, 0x38, 0x00, - 0xF8, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, - 0x38, 0x00, 0x38, 0xF0, 0x3B, 0xF8, 0x3E, 0x3C, 0x3C, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x7C, 0x3E, 0xFE, 0x7F, 0x18, 0x3C, - 0x3C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x04, 0x3C, 0x7C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x3C, 0xFF, 0x03, 0x03, - 0xC1, 0xE0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0xC3, 0xE0, 0x70, - 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, - 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x37, 0x3B, 0xF8, 0xF8, 0x00, 0x00, - 0x1C, 0x00, 0x3E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x3F, 0x8E, 0x0F, 0x07, 0x06, 0x03, - 0x86, 0x01, 0xC4, 0x00, 0xE4, 0x00, 0x7E, 0x00, 0x3F, 0x80, 0x1D, 0xC0, - 0x0E, 0x70, 0x07, 0x1C, 0x03, 0x8F, 0x01, 0xC3, 0xC0, 0xE0, 0xF0, 0xF8, - 0x3C, 0xFE, 0x7F, 0x80, 0x00, 0x1C, 0x7C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x3C, 0xFF, 0x38, 0xF0, 0x7C, 0x3E, 0xFE, 0x7F, 0x83, - 0xE3, 0xF0, 0xE0, 0xE0, 0x70, 0x1C, 0x38, 0x1C, 0x07, 0x0E, 0x07, 0x01, - 0xC3, 0x81, 0xC0, 0x70, 0xE0, 0x70, 0x1C, 0x38, 0x1C, 0x07, 0x0E, 0x07, - 0x01, 0xC3, 0x81, 0xC0, 0x70, 0xE0, 0x70, 0x1C, 0x38, 0x1C, 0x07, 0x0E, - 0x07, 0x01, 0xC3, 0x81, 0xE0, 0x73, 0xF9, 0xFC, 0x7F, 0x38, 0xF0, 0xFB, - 0xF8, 0x3E, 0x3C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, - 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, - 0x1C, 0x78, 0x3C, 0xFE, 0x7F, 0x07, 0xE0, 0x1F, 0xF8, 0x3C, 0x7C, 0x78, - 0x3E, 0x70, 0x1E, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, 0xF0, - 0x0F, 0xF8, 0x0F, 0x78, 0x0E, 0x7C, 0x1C, 0x3E, 0x3C, 0x0F, 0xF0, 0x07, - 0xC0, 0x18, 0xF0, 0xFB, 0xFC, 0x3E, 0x1E, 0x38, 0x0E, 0x38, 0x0F, 0x38, - 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x07, 0x38, 0x06, 0x38, - 0x0E, 0x38, 0x0C, 0x3E, 0x1C, 0x3B, 0xF8, 0x39, 0xE0, 0x38, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, 0x00, 0x7C, 0x00, 0xFF, - 0x00, 0x07, 0xC4, 0x1F, 0xEC, 0x3C, 0x3C, 0x70, 0x1C, 0x70, 0x1C, 0x60, - 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xE0, 0x1C, 0xF0, - 0x1C, 0x70, 0x1C, 0x78, 0x3C, 0x3F, 0xDC, 0x1F, 0x1C, 0x00, 0x1C, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x3E, 0x00, - 0xFF, 0x19, 0xFF, 0x7C, 0xF3, 0x9C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, - 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x1F, 0x07, 0xF0, 0x3E, - 0x58, 0x7C, 0x0F, 0x03, 0xC0, 0x7C, 0x07, 0x80, 0xF8, 0x1F, 0x81, 0xF8, - 0x1E, 0x03, 0xC0, 0xF0, 0x3E, 0x1A, 0x7C, 0x10, 0x30, 0x70, 0xFE, 0xFE, - 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x79, - 0x7E, 0x3C, 0xF8, 0x7C, 0x38, 0x3C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, 0x38, 0x1C, - 0x38, 0x1C, 0x38, 0x1C, 0x3C, 0x7C, 0x1F, 0xDF, 0x0F, 0x18, 0xFE, 0x1F, - 0x7C, 0x06, 0x38, 0x04, 0x1C, 0x04, 0x1C, 0x0C, 0x0E, 0x08, 0x0E, 0x18, - 0x07, 0x10, 0x07, 0x10, 0x07, 0x20, 0x03, 0xA0, 0x03, 0xE0, 0x01, 0xC0, - 0x01, 0xC0, 0x00, 0x80, 0x00, 0x80, 0xFC, 0x7F, 0x1F, 0x78, 0x3C, 0x06, - 0x38, 0x1C, 0x04, 0x38, 0x1C, 0x04, 0x1C, 0x1C, 0x0C, 0x1C, 0x0E, 0x08, - 0x1C, 0x1E, 0x18, 0x0E, 0x17, 0x10, 0x0E, 0x37, 0x10, 0x07, 0x23, 0x30, - 0x07, 0x63, 0xA0, 0x07, 0x43, 0xE0, 0x03, 0xC1, 0xC0, 0x03, 0x81, 0xC0, - 0x01, 0x80, 0x80, 0x01, 0x00, 0x80, 0x7F, 0x7E, 0x1E, 0x0C, 0x07, 0x8C, - 0x01, 0xC4, 0x00, 0x76, 0x00, 0x3E, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x03, - 0xE0, 0x01, 0x70, 0x01, 0x1C, 0x01, 0x8F, 0x01, 0x83, 0x80, 0x80, 0xE0, - 0xC0, 0x79, 0xF0, 0xFF, 0xFE, 0x0F, 0x7C, 0x06, 0x38, 0x06, 0x1C, 0x04, - 0x1C, 0x0C, 0x0E, 0x0C, 0x0E, 0x08, 0x0F, 0x18, 0x07, 0x10, 0x07, 0x90, - 0x03, 0xB0, 0x03, 0xA0, 0x01, 0xE0, 0x01, 0xE0, 0x00, 0xC0, 0x00, 0xC0, - 0x00, 0x80, 0x00, 0x80, 0x01, 0x80, 0x01, 0x00, 0x03, 0x00, 0x7E, 0x00, - 0x7C, 0x00, 0x78, 0x00, 0x7F, 0xF9, 0xFF, 0xE6, 0x07, 0x10, 0x38, 0x00, - 0xE0, 0x07, 0x00, 0x38, 0x01, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xE0, 0x07, - 0x01, 0x38, 0x0D, 0xC0, 0x3F, 0xFF, 0xBF, 0xFE, 0x07, 0x0E, 0x1C, 0x18, - 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x30, 0x60, 0x60, - 0x10, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x1C, - 0x0E, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x70, 0x38, 0x18, - 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x08, 0x06, 0x06, - 0x08, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x38, - 0x70, 0xE0, 0x3E, 0x00, 0x7F, 0x87, 0xE3, 0xFE, 0x00, 0x7C}; - -const GFXglyph FreeSerif18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 4, 24, 12, 5, -23}, // 0x21 '!' - {12, 8, 9, 14, 3, -23}, // 0x22 '"' - {21, 17, 23, 17, 0, -22}, // 0x23 '#' - {70, 13, 27, 17, 2, -24}, // 0x24 '$' - {114, 25, 23, 29, 2, -22}, // 0x25 '%' - {186, 25, 25, 27, 1, -24}, // 0x26 '&' - {265, 3, 9, 7, 2, -23}, // 0x27 ''' - {269, 9, 30, 12, 2, -23}, // 0x28 '(' - {303, 9, 30, 12, 1, -22}, // 0x29 ')' - {337, 12, 14, 18, 3, -23}, // 0x2A '*' - {358, 16, 18, 20, 2, -17}, // 0x2B '+' - {394, 4, 9, 9, 2, -3}, // 0x2C ',' - {399, 8, 2, 12, 1, -8}, // 0x2D '-' - {401, 4, 4, 9, 2, -3}, // 0x2E '.' - {403, 10, 24, 10, 0, -23}, // 0x2F '/' - {433, 16, 24, 18, 1, -23}, // 0x30 '0' - {481, 10, 24, 18, 3, -23}, // 0x31 '1' - {511, 16, 24, 17, 1, -23}, // 0x32 '2' - {559, 13, 24, 17, 2, -23}, // 0x33 '3' - {598, 16, 23, 18, 0, -22}, // 0x34 '4' - {644, 13, 24, 17, 2, -23}, // 0x35 '5' - {683, 16, 24, 18, 1, -23}, // 0x36 '6' - {731, 14, 23, 18, 1, -22}, // 0x37 '7' - {772, 12, 25, 18, 2, -24}, // 0x38 '8' - {810, 16, 26, 17, 1, -24}, // 0x39 '9' - {862, 4, 17, 9, 2, -16}, // 0x3A ':' - {871, 5, 22, 9, 2, -16}, // 0x3B ';' - {885, 18, 18, 20, 1, -17}, // 0x3C '<' - {926, 18, 9, 20, 1, -12}, // 0x3D '=' - {947, 18, 18, 20, 1, -17}, // 0x3E '>' - {988, 13, 25, 16, 2, -24}, // 0x3F '?' - {1029, 24, 25, 30, 3, -24}, // 0x40 '@' - {1104, 24, 23, 25, 1, -22}, // 0x41 'A' - {1173, 20, 23, 22, 1, -22}, // 0x42 'B' - {1231, 22, 24, 23, 1, -23}, // 0x43 'C' - {1297, 23, 23, 25, 1, -22}, // 0x44 'D' - {1364, 20, 23, 21, 2, -22}, // 0x45 'E' - {1422, 17, 23, 20, 2, -22}, // 0x46 'F' - {1471, 23, 24, 25, 1, -23}, // 0x47 'G' - {1540, 22, 23, 25, 2, -22}, // 0x48 'H' - {1604, 9, 23, 11, 2, -22}, // 0x49 'I' - {1630, 12, 23, 13, 0, -22}, // 0x4A 'J' - {1665, 23, 23, 25, 2, -22}, // 0x4B 'K' - {1732, 19, 23, 21, 2, -22}, // 0x4C 'L' - {1787, 29, 23, 31, 1, -22}, // 0x4D 'M' - {1871, 23, 23, 25, 1, -22}, // 0x4E 'N' - {1938, 23, 24, 25, 1, -23}, // 0x4F 'O' - {2007, 18, 23, 20, 1, -22}, // 0x50 'P' - {2059, 23, 30, 25, 1, -23}, // 0x51 'Q' - {2146, 21, 23, 23, 2, -22}, // 0x52 'R' - {2207, 16, 24, 19, 1, -23}, // 0x53 'S' - {2255, 20, 23, 21, 1, -22}, // 0x54 'T' - {2313, 22, 23, 25, 2, -22}, // 0x55 'U' - {2377, 24, 23, 25, 0, -22}, // 0x56 'V' - {2446, 33, 23, 33, 0, -22}, // 0x57 'W' - {2541, 25, 23, 25, 0, -22}, // 0x58 'X' - {2613, 24, 23, 25, 1, -22}, // 0x59 'Y' - {2682, 21, 23, 21, 0, -22}, // 0x5A 'Z' - {2743, 7, 28, 12, 3, -22}, // 0x5B '[' - {2768, 10, 24, 10, 0, -23}, // 0x5C '\' - {2798, 7, 28, 12, 2, -22}, // 0x5D ']' - {2823, 15, 13, 16, 1, -22}, // 0x5E '^' - {2848, 18, 2, 17, 0, 3}, // 0x5F '_' - {2853, 8, 6, 9, 1, -23}, // 0x60 '`' - {2859, 13, 16, 15, 2, -15}, // 0x61 'a' - {2885, 16, 25, 17, 1, -24}, // 0x62 'b' - {2935, 14, 16, 16, 1, -15}, // 0x63 'c' - {2963, 16, 25, 17, 1, -24}, // 0x64 'd' - {3013, 13, 16, 16, 1, -15}, // 0x65 'e' - {3039, 13, 25, 13, 0, -24}, // 0x66 'f' - {3080, 16, 24, 16, 1, -15}, // 0x67 'g' - {3128, 16, 25, 17, 1, -24}, // 0x68 'h' - {3178, 8, 24, 10, 0, -23}, // 0x69 'i' - {3202, 9, 32, 12, 0, -23}, // 0x6A 'j' - {3238, 17, 25, 18, 1, -24}, // 0x6B 'k' - {3292, 8, 25, 9, 0, -24}, // 0x6C 'l' - {3317, 26, 16, 27, 1, -15}, // 0x6D 'm' - {3369, 16, 16, 17, 1, -15}, // 0x6E 'n' - {3401, 16, 16, 17, 1, -15}, // 0x6F 'o' - {3433, 16, 24, 17, 1, -15}, // 0x70 'p' - {3481, 16, 24, 17, 1, -15}, // 0x71 'q' - {3529, 11, 16, 12, 1, -15}, // 0x72 'r' - {3551, 10, 16, 13, 1, -15}, // 0x73 's' - {3571, 8, 19, 10, 2, -18}, // 0x74 't' - {3590, 16, 16, 17, 1, -15}, // 0x75 'u' - {3622, 16, 16, 16, 0, -15}, // 0x76 'v' - {3654, 24, 16, 24, 0, -15}, // 0x77 'w' - {3702, 17, 16, 17, 0, -15}, // 0x78 'x' - {3736, 16, 24, 16, 0, -15}, // 0x79 'y' - {3784, 14, 16, 15, 0, -15}, // 0x7A 'z' - {3812, 8, 30, 17, 3, -23}, // 0x7B '{' - {3842, 2, 24, 7, 2, -23}, // 0x7C '|' - {3848, 8, 30, 17, 6, -22}, // 0x7D '}' - {3878, 16, 4, 17, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSerif18pt7b PROGMEM = {(uint8_t *)FreeSerif18pt7bBitmaps, - (GFXglyph *)FreeSerif18pt7bGlyphs, - 0x20, 0x7E, 42}; - -// Approx. 4558 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h deleted file mode 100644 index cac1999..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif24pt7b.h +++ /dev/null @@ -1,692 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif24pt7bBitmaps[] PROGMEM = { - 0x77, 0xBF, 0xFF, 0xFF, 0xFF, 0xFB, 0x9C, 0xE7, 0x39, 0xCE, 0x61, 0x08, - 0x42, 0x10, 0x84, 0x00, 0x00, 0xEF, 0xFF, 0xEE, 0x60, 0x6F, 0x0F, 0xF0, - 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0x60, 0x66, 0x06, 0x60, 0x66, 0x06, 0x60, - 0x66, 0x06, 0x00, 0xE0, 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x07, - 0x03, 0x80, 0x0E, 0x06, 0x00, 0x18, 0x0C, 0x00, 0x30, 0x38, 0x00, 0xE0, - 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC1, 0xFF, 0xFF, 0xFB, 0xFF, 0xFF, - 0xF0, 0x18, 0x0C, 0x00, 0x70, 0x38, 0x00, 0xE0, 0x70, 0x01, 0xC0, 0xE0, - 0x03, 0x81, 0xC0, 0x07, 0x03, 0x80, 0x0C, 0x06, 0x07, 0xFF, 0xFF, 0xEF, - 0xFF, 0xFF, 0xC0, 0xE0, 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x06, - 0x03, 0x80, 0x0C, 0x06, 0x00, 0x38, 0x1C, 0x00, 0x70, 0x38, 0x00, 0xE0, - 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x00, 0x00, 0x40, 0x00, 0x08, - 0x00, 0x01, 0x00, 0x01, 0xFC, 0x01, 0xE4, 0xF8, 0x70, 0x87, 0x9C, 0x10, - 0x77, 0x02, 0x06, 0xE0, 0x40, 0xDC, 0x08, 0x0B, 0x81, 0x00, 0x78, 0x20, - 0x07, 0x84, 0x00, 0xFC, 0x80, 0x0F, 0xF0, 0x00, 0xFE, 0x00, 0x07, 0xF0, - 0x00, 0x7F, 0x80, 0x03, 0xFC, 0x00, 0x3F, 0xC0, 0x05, 0xFC, 0x00, 0x8F, - 0x80, 0x10, 0xF8, 0x02, 0x0F, 0x00, 0x40, 0xF0, 0x08, 0x1E, 0x01, 0x03, - 0xE0, 0x20, 0x7C, 0x04, 0x0F, 0xC0, 0x83, 0xBC, 0x10, 0xE3, 0xE2, 0x78, - 0x3F, 0xFE, 0x00, 0xFE, 0x00, 0x01, 0x00, 0x00, 0x20, 0x00, 0x04, 0x00, - 0x01, 0xF0, 0x00, 0xC0, 0x03, 0xFC, 0x01, 0xE0, 0x03, 0xC7, 0x81, 0xE0, - 0x03, 0xC0, 0x7F, 0x60, 0x03, 0xC0, 0x20, 0x70, 0x01, 0xE0, 0x10, 0x30, - 0x01, 0xE0, 0x08, 0x38, 0x00, 0xE0, 0x04, 0x18, 0x00, 0xF0, 0x02, 0x1C, - 0x00, 0x78, 0x02, 0x0C, 0x00, 0x38, 0x01, 0x0E, 0x00, 0x1C, 0x01, 0x86, - 0x00, 0x0E, 0x00, 0x86, 0x00, 0x07, 0x00, 0x87, 0x03, 0xE1, 0x80, 0xC3, - 0x07, 0xFC, 0xE1, 0xC3, 0x87, 0xC6, 0x3F, 0xC1, 0x87, 0x81, 0x8F, 0x81, - 0xC7, 0x80, 0x40, 0x00, 0xC3, 0xC0, 0x20, 0x00, 0xE3, 0xC0, 0x10, 0x00, - 0x61, 0xC0, 0x08, 0x00, 0x61, 0xE0, 0x04, 0x00, 0x70, 0xF0, 0x06, 0x00, - 0x30, 0x70, 0x02, 0x00, 0x38, 0x38, 0x03, 0x00, 0x18, 0x1C, 0x01, 0x00, - 0x1C, 0x0E, 0x01, 0x80, 0x0C, 0x07, 0x01, 0x80, 0x0E, 0x01, 0xC3, 0x80, - 0x06, 0x00, 0x7F, 0x80, 0x06, 0x00, 0x1F, 0x00, 0x07, 0x00, 0x00, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x70, 0xE0, 0x00, - 0x00, 0xE0, 0x60, 0x00, 0x00, 0xC0, 0x30, 0x00, 0x01, 0xC0, 0x30, 0x00, - 0x01, 0xC0, 0x30, 0x00, 0x01, 0xC0, 0x30, 0x00, 0x01, 0xC0, 0x70, 0x00, - 0x01, 0xE0, 0xE0, 0x00, 0x01, 0xE1, 0xC0, 0x00, 0x00, 0xF3, 0x80, 0x00, - 0x00, 0xFF, 0x0F, 0xFC, 0x00, 0xFC, 0x03, 0xF0, 0x00, 0xF8, 0x01, 0xE0, - 0x01, 0xFC, 0x01, 0xC0, 0x07, 0x7C, 0x01, 0xC0, 0x0F, 0x3E, 0x01, 0x80, - 0x1E, 0x3E, 0x03, 0x00, 0x3C, 0x1F, 0x03, 0x00, 0x7C, 0x1F, 0x06, 0x00, - 0x78, 0x0F, 0x86, 0x00, 0x78, 0x07, 0xCC, 0x00, 0xF8, 0x07, 0xE8, 0x00, - 0xF8, 0x03, 0xF8, 0x00, 0xF8, 0x01, 0xF0, 0x00, 0xF8, 0x01, 0xF8, 0x00, - 0xFC, 0x00, 0xFC, 0x01, 0xFC, 0x01, 0xFE, 0x01, 0x7E, 0x03, 0xBF, 0x86, - 0x7F, 0x0F, 0x1F, 0xFE, 0x3F, 0xFC, 0x0F, 0xF8, 0x0F, 0xE0, 0x03, 0xF0, - 0x6F, 0xFF, 0xFF, 0x66, 0x66, 0x66, 0x00, 0x10, 0x02, 0x00, 0xC0, 0x18, - 0x03, 0x00, 0x60, 0x0E, 0x00, 0xC0, 0x1C, 0x03, 0x80, 0x38, 0x03, 0x80, - 0x78, 0x07, 0x00, 0x70, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x07, 0x00, 0x70, 0x07, 0x80, - 0x38, 0x03, 0x80, 0x38, 0x01, 0xC0, 0x0C, 0x00, 0xC0, 0x06, 0x00, 0x30, - 0x01, 0x80, 0x0C, 0x00, 0x60, 0x03, 0xC0, 0x06, 0x00, 0x30, 0x01, 0x80, - 0x0C, 0x00, 0x60, 0x07, 0x00, 0x30, 0x03, 0x80, 0x1C, 0x01, 0xC0, 0x1C, - 0x01, 0xE0, 0x0E, 0x00, 0xE0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0E, 0x00, 0xE0, 0x1E, - 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x38, 0x03, 0x00, 0x70, 0x0E, 0x00, 0xC0, - 0x18, 0x03, 0x00, 0x40, 0x08, 0x00, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, - 0x43, 0x86, 0xE1, 0x0F, 0xF1, 0x1F, 0xF9, 0x3E, 0x3D, 0x78, 0x07, 0xC0, - 0x01, 0x00, 0x07, 0xC0, 0x19, 0x30, 0xF9, 0x1E, 0xF1, 0x0F, 0xE1, 0x07, - 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x00, 0x38, 0x00, 0x00, - 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, - 0x00, 0x00, 0xE0, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0x00, - 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, - 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, - 0x0E, 0x00, 0x00, 0x73, 0xEF, 0xFF, 0x7C, 0x10, 0x42, 0x08, 0xC6, 0x00, - 0xFF, 0xFF, 0xFC, 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x1C, 0x00, 0xE0, 0x03, - 0x80, 0x0E, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, 0x38, 0x00, 0xE0, 0x03, - 0x80, 0x1C, 0x00, 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xE0, 0x07, - 0x00, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xC0, 0x07, - 0x00, 0x3C, 0x00, 0xE0, 0x03, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x38, 0x00, 0x00, 0xFC, 0x00, 0x0E, 0x1C, 0x00, 0x70, 0x38, 0x03, - 0x80, 0x70, 0x1E, 0x01, 0xE0, 0xF0, 0x03, 0x83, 0xC0, 0x0F, 0x0F, 0x00, - 0x3C, 0x7C, 0x00, 0xF9, 0xE0, 0x01, 0xE7, 0x80, 0x07, 0xBE, 0x00, 0x1F, - 0xF8, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, 0xF8, - 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, - 0x7F, 0xE0, 0x01, 0xF7, 0x80, 0x07, 0x9E, 0x00, 0x1E, 0x7C, 0x00, 0xF8, - 0xF0, 0x03, 0xC3, 0xC0, 0x0F, 0x07, 0x00, 0x38, 0x1E, 0x01, 0xE0, 0x38, - 0x07, 0x00, 0x70, 0x38, 0x00, 0xE1, 0xC0, 0x00, 0xFC, 0x00, 0x00, 0x80, - 0x1C, 0x03, 0xE0, 0x7F, 0x0C, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x07, - 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, 0xF0, - 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x1E, 0x00, - 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x3F, - 0x0F, 0xFF, 0x01, 0xF8, 0x00, 0x3F, 0xF0, 0x07, 0xFF, 0xE0, 0x70, 0x3F, - 0x83, 0x00, 0x7C, 0x30, 0x01, 0xF1, 0x00, 0x0F, 0x98, 0x00, 0x3C, 0x80, - 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x1C, - 0x00, 0x01, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x70, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, - 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x43, 0x00, - 0x02, 0x30, 0x00, 0x23, 0xFF, 0xFF, 0x3F, 0xFF, 0xF3, 0xFF, 0xFF, 0x80, - 0x03, 0xF8, 0x03, 0xFF, 0x01, 0x83, 0xE0, 0x80, 0x3C, 0x40, 0x0F, 0x10, - 0x01, 0xC8, 0x00, 0x70, 0x00, 0x1C, 0x00, 0x06, 0x00, 0x03, 0x00, 0x00, - 0x80, 0x00, 0xC0, 0x00, 0x78, 0x00, 0x7F, 0x80, 0x7F, 0xF0, 0x01, 0xFE, - 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x01, 0xC0, - 0x00, 0x70, 0x00, 0x1C, 0x00, 0x07, 0x00, 0x01, 0x80, 0x00, 0x60, 0x00, - 0x30, 0x00, 0x0C, 0x70, 0x06, 0x3F, 0x07, 0x0F, 0xFF, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0x00, 0x00, 0x38, 0x00, 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x01, - 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xDC, 0x00, 0x0C, 0xE0, 0x00, 0x47, 0x00, - 0x06, 0x38, 0x00, 0x61, 0xC0, 0x06, 0x0E, 0x00, 0x30, 0x70, 0x03, 0x03, - 0x80, 0x30, 0x1C, 0x01, 0x80, 0xE0, 0x18, 0x07, 0x01, 0x80, 0x38, 0x08, - 0x01, 0xC0, 0xC0, 0x0E, 0x0C, 0x00, 0x70, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, - 0xE0, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x01, 0xC0, 0x00, - 0x0E, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x1C, 0x00, 0x00, 0x00, - 0x40, 0x7F, 0xF8, 0x1F, 0xFE, 0x03, 0xFF, 0xC0, 0xC0, 0x00, 0x18, 0x00, - 0x06, 0x00, 0x00, 0xC0, 0x00, 0x1C, 0x00, 0x07, 0xF8, 0x00, 0xFF, 0xC0, - 0x3F, 0xFE, 0x00, 0xFF, 0xE0, 0x01, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x7C, - 0x00, 0x07, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x1C, - 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x30, - 0x00, 0x0E, 0x00, 0x01, 0x80, 0x00, 0x71, 0xE0, 0x1C, 0x3F, 0x07, 0x07, - 0xFF, 0x80, 0x3F, 0x80, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x0F, - 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, - 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, - 0x07, 0xC7, 0xE0, 0x3E, 0xFF, 0xC3, 0xF8, 0x3F, 0x1F, 0x80, 0x7C, 0xF8, - 0x03, 0xF7, 0xC0, 0x0F, 0xBE, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0x80, 0x0F, - 0xFC, 0x00, 0x7F, 0xE0, 0x03, 0xFF, 0x00, 0x1F, 0x78, 0x00, 0xFB, 0xE0, - 0x07, 0x9F, 0x00, 0x3C, 0x78, 0x03, 0xE3, 0xE0, 0x1E, 0x0F, 0x81, 0xE0, - 0x3E, 0x1E, 0x00, 0xFF, 0xE0, 0x00, 0xFC, 0x00, 0x3F, 0xFF, 0xF3, 0xFF, - 0xFF, 0x3F, 0xFF, 0xE7, 0x00, 0x0E, 0x40, 0x00, 0xEC, 0x00, 0x1C, 0x80, - 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, - 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x00, 0xE0, - 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x38, - 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x07, - 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x1E, 0x00, 0x01, - 0xC0, 0x00, 0x03, 0xF0, 0x03, 0xFF, 0x03, 0xC1, 0xE0, 0xC0, 0x1C, 0x70, - 0x07, 0x18, 0x00, 0xEE, 0x00, 0x3B, 0x80, 0x0E, 0xF0, 0x03, 0xBC, 0x00, - 0xE7, 0x80, 0x71, 0xF0, 0x38, 0x3E, 0x1C, 0x07, 0xEE, 0x00, 0xFE, 0x00, - 0x1F, 0xC0, 0x03, 0xF8, 0x03, 0xFF, 0x01, 0xC7, 0xE0, 0xE0, 0xFC, 0x70, - 0x0F, 0x98, 0x01, 0xEE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x01, 0xF8, 0x00, - 0x7E, 0x00, 0x1F, 0xC0, 0x07, 0x70, 0x03, 0x9E, 0x00, 0xE3, 0xE0, 0xF0, - 0x7F, 0xF0, 0x07, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x3F, 0xF0, 0x03, 0xC3, - 0xE0, 0x3C, 0x0F, 0x83, 0xC0, 0x3C, 0x3E, 0x00, 0xF1, 0xE0, 0x07, 0xCF, - 0x00, 0x3E, 0xF8, 0x00, 0xF7, 0xC0, 0x07, 0xFE, 0x00, 0x3F, 0xF0, 0x01, - 0xFF, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xF0, 0x03, 0xEF, 0x80, 0x1F, 0x7C, - 0x00, 0xF9, 0xF0, 0x0F, 0xC7, 0xE1, 0xFC, 0x1F, 0xF9, 0xE0, 0x3F, 0x1F, - 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, - 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x3C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, - 0x0F, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x00, 0x77, 0xFF, 0xF7, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xBF, 0xFF, 0xB8, 0x39, 0xF7, - 0xDF, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x73, 0xEF, - 0xFF, 0x7C, 0x10, 0x42, 0x08, 0xC6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x07, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, - 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xE0, - 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0x00, 0x00, 0x01, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, 0xE0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x07, - 0xF8, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xE0, - 0x0F, 0xFE, 0x0C, 0x1F, 0x88, 0x03, 0xEC, 0x01, 0xF7, 0x00, 0x7F, 0xC0, - 0x3F, 0xE0, 0x1F, 0x70, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xC0, 0x01, 0xE0, - 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, 0x70, 0x00, 0x30, 0x00, 0x10, - 0x00, 0x18, 0x00, 0x08, 0x00, 0x04, 0x00, 0x06, 0x00, 0x02, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x03, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x3F, - 0xFF, 0x00, 0x00, 0xFC, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x07, 0xC0, - 0x00, 0x30, 0x0F, 0x00, 0x00, 0x18, 0x1E, 0x00, 0x00, 0x0C, 0x1E, 0x00, - 0x00, 0x04, 0x3C, 0x00, 0xF8, 0x06, 0x3C, 0x01, 0xFD, 0xC2, 0x78, 0x03, - 0xC7, 0xC3, 0x78, 0x07, 0x07, 0x81, 0xF0, 0x0E, 0x03, 0x81, 0xF0, 0x0E, - 0x03, 0x81, 0xF0, 0x1C, 0x07, 0x81, 0xF0, 0x1C, 0x07, 0x01, 0xF0, 0x38, - 0x07, 0x01, 0xF0, 0x38, 0x07, 0x03, 0xF0, 0x38, 0x0F, 0x02, 0xF0, 0x38, - 0x0E, 0x02, 0xF0, 0x38, 0x1E, 0x04, 0x78, 0x38, 0x1E, 0x0C, 0x78, 0x1C, - 0x6E, 0x18, 0x38, 0x1F, 0xC7, 0xF0, 0x3C, 0x0F, 0x03, 0xE0, 0x1E, 0x00, - 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x60, 0x00, 0xFC, 0x03, 0xE0, 0x00, 0x3F, - 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, - 0x80, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x0D, - 0xF0, 0x00, 0x00, 0x0D, 0xF0, 0x00, 0x00, 0x18, 0xF0, 0x00, 0x00, 0x18, - 0xF8, 0x00, 0x00, 0x38, 0x78, 0x00, 0x00, 0x30, 0x7C, 0x00, 0x00, 0x30, - 0x7C, 0x00, 0x00, 0x60, 0x3E, 0x00, 0x00, 0x60, 0x3E, 0x00, 0x00, 0xE0, - 0x1E, 0x00, 0x00, 0xC0, 0x1F, 0x00, 0x00, 0xC0, 0x1F, 0x00, 0x01, 0x80, - 0x0F, 0x80, 0x01, 0xFF, 0xFF, 0x80, 0x03, 0xFF, 0xFF, 0xC0, 0x03, 0x00, - 0x07, 0xC0, 0x07, 0x00, 0x07, 0xC0, 0x06, 0x00, 0x03, 0xE0, 0x06, 0x00, - 0x03, 0xE0, 0x0E, 0x00, 0x01, 0xF0, 0x0C, 0x00, 0x01, 0xF0, 0x1C, 0x00, - 0x01, 0xF8, 0x3C, 0x00, 0x01, 0xF8, 0x7E, 0x00, 0x01, 0xFC, 0xFF, 0x80, - 0x0F, 0xFF, 0xFF, 0xFF, 0xE0, 0x03, 0xFF, 0xFF, 0x80, 0x1F, 0x01, 0xF8, - 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x00, 0xF8, 0x0F, 0x80, 0x1F, 0x81, 0xF0, - 0x01, 0xF0, 0x3E, 0x00, 0x3E, 0x07, 0xC0, 0x07, 0xC0, 0xF8, 0x00, 0xF8, - 0x1F, 0x00, 0x1F, 0x03, 0xE0, 0x07, 0xC0, 0x7C, 0x01, 0xF0, 0x0F, 0x80, - 0xFC, 0x01, 0xFF, 0xFE, 0x00, 0x3F, 0xFF, 0xC0, 0x07, 0xC0, 0x7F, 0x00, - 0xF8, 0x01, 0xF0, 0x1F, 0x00, 0x1F, 0x03, 0xE0, 0x03, 0xE0, 0x7C, 0x00, - 0x3E, 0x0F, 0x80, 0x07, 0xC1, 0xF0, 0x00, 0xF8, 0x3E, 0x00, 0x1F, 0x07, - 0xC0, 0x03, 0xE0, 0xF8, 0x00, 0xF8, 0x1F, 0x00, 0x1F, 0x03, 0xE0, 0x07, - 0xC0, 0x7C, 0x07, 0xF0, 0x1F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x00, 0x00, - 0x1F, 0xF0, 0x20, 0x07, 0xFF, 0xEE, 0x01, 0xF8, 0x1F, 0xE0, 0x3E, 0x00, - 0x7E, 0x07, 0x80, 0x01, 0xE0, 0xF0, 0x00, 0x1E, 0x1F, 0x00, 0x00, 0xE3, - 0xE0, 0x00, 0x06, 0x3C, 0x00, 0x00, 0x67, 0xC0, 0x00, 0x02, 0x7C, 0x00, - 0x00, 0x27, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x02, 0x0F, 0x80, 0x00, 0xE0, 0x7E, 0x00, 0x1C, 0x03, 0xF8, 0x0F, 0x00, - 0x0F, 0xFF, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0xFF, 0xFF, 0xC0, 0x00, 0x7F, - 0xFF, 0xF8, 0x00, 0x3E, 0x03, 0xFC, 0x00, 0x7C, 0x00, 0xFC, 0x00, 0xF8, - 0x00, 0x7E, 0x01, 0xF0, 0x00, 0x7E, 0x03, 0xE0, 0x00, 0x7C, 0x07, 0xC0, - 0x00, 0x7C, 0x0F, 0x80, 0x00, 0xF8, 0x1F, 0x00, 0x00, 0xF8, 0x3E, 0x00, - 0x01, 0xF0, 0x7C, 0x00, 0x03, 0xF0, 0xF8, 0x00, 0x03, 0xE1, 0xF0, 0x00, - 0x07, 0xC3, 0xE0, 0x00, 0x0F, 0x87, 0xC0, 0x00, 0x1F, 0x0F, 0x80, 0x00, - 0x3E, 0x1F, 0x00, 0x00, 0x7C, 0x3E, 0x00, 0x00, 0xF8, 0x7C, 0x00, 0x01, - 0xF0, 0xF8, 0x00, 0x07, 0xC1, 0xF0, 0x00, 0x0F, 0x83, 0xE0, 0x00, 0x1E, - 0x07, 0xC0, 0x00, 0x7C, 0x0F, 0x80, 0x01, 0xF0, 0x1F, 0x00, 0x03, 0xE0, - 0x3E, 0x00, 0x1F, 0x80, 0x7C, 0x00, 0x7C, 0x00, 0xF8, 0x0F, 0xF0, 0x07, - 0xFF, 0xFF, 0x80, 0x3F, 0xFF, 0xF0, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x07, - 0xFF, 0xFF, 0xE0, 0x7C, 0x00, 0x1C, 0x0F, 0x80, 0x01, 0x81, 0xF0, 0x00, - 0x30, 0x3E, 0x00, 0x02, 0x07, 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x20, 0x0F, 0x80, 0x04, - 0x01, 0xF0, 0x01, 0x80, 0x3E, 0x00, 0x70, 0x07, 0xFF, 0xFE, 0x00, 0xFF, - 0xFF, 0xC0, 0x1F, 0x00, 0x38, 0x03, 0xE0, 0x03, 0x00, 0x7C, 0x00, 0x20, - 0x0F, 0x80, 0x04, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0xF8, 0x00, 0x03, 0x1F, 0x00, 0x00, 0x43, 0xE0, 0x00, 0x18, - 0x7C, 0x00, 0x07, 0x0F, 0x80, 0x01, 0xC1, 0xF0, 0x00, 0xF8, 0x7F, 0xFF, - 0xFF, 0x3F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0x1F, - 0x00, 0x07, 0x1F, 0x00, 0x03, 0x1F, 0x00, 0x03, 0x1F, 0x00, 0x01, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x08, 0x1F, 0x00, 0x08, 0x1F, 0x00, 0x18, 0x1F, 0x00, 0x38, 0x1F, - 0xFF, 0xF8, 0x1F, 0xFF, 0xF8, 0x1F, 0x00, 0x38, 0x1F, 0x00, 0x18, 0x1F, - 0x00, 0x08, 0x1F, 0x00, 0x08, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x3F, 0x80, 0x00, 0xFF, - 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x08, 0x00, 0xFF, 0xFE, 0x70, 0x07, 0xE0, - 0x1F, 0xE0, 0x1F, 0x00, 0x0F, 0xC0, 0x78, 0x00, 0x07, 0x81, 0xE0, 0x00, - 0x07, 0x07, 0xC0, 0x00, 0x0E, 0x1F, 0x00, 0x00, 0x0C, 0x3E, 0x00, 0x00, - 0x08, 0xF8, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, - 0x7C, 0x00, 0x03, 0xFF, 0xF8, 0x00, 0x01, 0xFD, 0xF0, 0x00, 0x01, 0xF3, - 0xE0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x07, 0xCF, 0x80, 0x00, 0x0F, 0x8F, - 0x80, 0x00, 0x1F, 0x1F, 0x00, 0x00, 0x3E, 0x3E, 0x00, 0x00, 0x7C, 0x3E, - 0x00, 0x00, 0xF8, 0x7C, 0x00, 0x01, 0xF0, 0x7C, 0x00, 0x03, 0xE0, 0xFC, - 0x00, 0x07, 0xC0, 0xFC, 0x00, 0x0F, 0x80, 0x7C, 0x00, 0x3F, 0x00, 0x7F, - 0x01, 0xFC, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x0F, 0xF8, 0x00, 0xFF, 0xE0, - 0x1F, 0xFC, 0xFE, 0x00, 0x1F, 0xC1, 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, - 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x3E, - 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, - 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, - 0x00, 0x0F, 0x81, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFF, 0xF8, 0x1F, 0x00, - 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, - 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, 0xF0, 0x00, 0x3E, - 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0x7C, 0x00, 0x0F, 0x81, - 0xF0, 0x00, 0x3E, 0x07, 0xC0, 0x00, 0xF8, 0x1F, 0x00, 0x03, 0xE0, 0xFE, - 0x00, 0x1F, 0xCF, 0xFE, 0x01, 0xFF, 0xC0, 0xFF, 0xF8, 0xFE, 0x03, 0xE0, - 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x03, - 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, - 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, - 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x0F, 0xE3, 0xFF, 0xE0, 0x0F, 0xFF, - 0x80, 0xFE, 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, - 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x1F, 0x00, - 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, - 0x00, 0x3E, 0x00, 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, - 0xF0, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3C, 0x0E, 0x1E, 0x0F, 0x8F, 0x07, - 0xCF, 0x01, 0xFF, 0x00, 0x7E, 0x00, 0xFF, 0xF8, 0x3F, 0xFC, 0x3F, 0xC0, - 0x07, 0xE0, 0x0F, 0x80, 0x07, 0x80, 0x0F, 0x80, 0x07, 0x00, 0x0F, 0x80, - 0x0E, 0x00, 0x0F, 0x80, 0x1C, 0x00, 0x0F, 0x80, 0x38, 0x00, 0x0F, 0x80, - 0x70, 0x00, 0x0F, 0x80, 0xE0, 0x00, 0x0F, 0x81, 0xC0, 0x00, 0x0F, 0x83, - 0x80, 0x00, 0x0F, 0x87, 0x00, 0x00, 0x0F, 0x9E, 0x00, 0x00, 0x0F, 0xBC, - 0x00, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0x00, 0x00, 0x0F, 0xDF, - 0x80, 0x00, 0x0F, 0x8F, 0xC0, 0x00, 0x0F, 0x87, 0xE0, 0x00, 0x0F, 0x83, - 0xF0, 0x00, 0x0F, 0x81, 0xF8, 0x00, 0x0F, 0x80, 0xFC, 0x00, 0x0F, 0x80, - 0x7E, 0x00, 0x0F, 0x80, 0x3F, 0x00, 0x0F, 0x80, 0x3F, 0x80, 0x0F, 0x80, - 0x1F, 0x80, 0x0F, 0x80, 0x0F, 0xC0, 0x0F, 0x80, 0x07, 0xE0, 0x0F, 0x80, - 0x07, 0xF0, 0x1F, 0xC0, 0x07, 0xFC, 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0xF0, - 0x00, 0x0F, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x7C, 0x00, 0x01, 0x1F, 0x00, 0x00, 0xC7, 0xC0, 0x00, 0x21, 0xF0, - 0x00, 0x18, 0x7C, 0x00, 0x0E, 0x1F, 0x00, 0x1F, 0x8F, 0xFF, 0xFF, 0xCF, - 0xFF, 0xFF, 0xF0, 0xFF, 0x80, 0x00, 0x03, 0xFE, 0x7F, 0x80, 0x00, 0x07, - 0xF0, 0x3F, 0x00, 0x00, 0x1F, 0xC0, 0x7E, 0x00, 0x00, 0x3F, 0x80, 0xFE, - 0x00, 0x00, 0xFF, 0x01, 0xFC, 0x00, 0x01, 0xBE, 0x03, 0x7C, 0x00, 0x03, - 0x7C, 0x06, 0xF8, 0x00, 0x0E, 0xF8, 0x0D, 0xF8, 0x00, 0x19, 0xF0, 0x19, - 0xF0, 0x00, 0x73, 0xE0, 0x33, 0xF0, 0x00, 0xC7, 0xC0, 0x63, 0xE0, 0x03, - 0x8F, 0x80, 0xC7, 0xE0, 0x06, 0x1F, 0x01, 0x87, 0xC0, 0x1C, 0x3E, 0x03, - 0x0F, 0xC0, 0x30, 0x7C, 0x06, 0x0F, 0x80, 0x60, 0xF8, 0x0C, 0x1F, 0x81, - 0x81, 0xF0, 0x18, 0x1F, 0x03, 0x03, 0xE0, 0x30, 0x3F, 0x0C, 0x07, 0xC0, - 0x60, 0x3E, 0x18, 0x0F, 0x80, 0xC0, 0x7C, 0x70, 0x1F, 0x01, 0x80, 0x7C, - 0xC0, 0x3E, 0x03, 0x00, 0xFB, 0x80, 0x7C, 0x06, 0x00, 0xFE, 0x00, 0xF8, - 0x0C, 0x01, 0xFC, 0x01, 0xF0, 0x18, 0x03, 0xF0, 0x03, 0xE0, 0x30, 0x03, - 0xE0, 0x07, 0xC0, 0x60, 0x07, 0x80, 0x0F, 0x81, 0xE0, 0x07, 0x00, 0x1F, - 0x07, 0xE0, 0x0C, 0x00, 0xFF, 0x3F, 0xF0, 0x08, 0x07, 0xFF, 0x80, 0xFF, - 0x00, 0x03, 0xFF, 0x3F, 0x80, 0x00, 0xFC, 0x1F, 0xC0, 0x00, 0x78, 0x0F, - 0xC0, 0x00, 0x30, 0x0F, 0xE0, 0x00, 0x30, 0x0F, 0xF0, 0x00, 0x30, 0x0D, - 0xF8, 0x00, 0x30, 0x0D, 0xFC, 0x00, 0x30, 0x0C, 0xFC, 0x00, 0x30, 0x0C, - 0x7E, 0x00, 0x30, 0x0C, 0x3F, 0x00, 0x30, 0x0C, 0x1F, 0x80, 0x30, 0x0C, - 0x1F, 0xC0, 0x30, 0x0C, 0x0F, 0xE0, 0x30, 0x0C, 0x07, 0xE0, 0x30, 0x0C, - 0x03, 0xF0, 0x30, 0x0C, 0x01, 0xF8, 0x30, 0x0C, 0x01, 0xFC, 0x30, 0x0C, - 0x00, 0xFE, 0x30, 0x0C, 0x00, 0x7E, 0x30, 0x0C, 0x00, 0x3F, 0x30, 0x0C, - 0x00, 0x1F, 0xB0, 0x0C, 0x00, 0x0F, 0xF0, 0x0C, 0x00, 0x0F, 0xF0, 0x0C, - 0x00, 0x07, 0xF0, 0x0C, 0x00, 0x03, 0xF0, 0x0C, 0x00, 0x01, 0xF0, 0x0C, - 0x00, 0x00, 0xF0, 0x1E, 0x00, 0x00, 0xF0, 0x3F, 0x00, 0x00, 0x70, 0xFF, - 0xC0, 0x00, 0x30, 0x00, 0x00, 0x00, 0x10, 0x00, 0x1F, 0xE0, 0x00, 0x03, - 0xFF, 0xF0, 0x00, 0x1F, 0x03, 0xE0, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, - 0x07, 0xC0, 0x7C, 0x00, 0x0F, 0x01, 0xE0, 0x00, 0x1E, 0x0F, 0x80, 0x00, - 0x7C, 0x3C, 0x00, 0x00, 0xF1, 0xF0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x0F, - 0x9E, 0x00, 0x00, 0x1E, 0xF8, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x01, 0xFF, - 0x80, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, 0xE0, - 0x00, 0x01, 0xFF, 0x80, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x1F, 0xF8, 0x00, - 0x00, 0x7D, 0xF0, 0x00, 0x03, 0xE7, 0xC0, 0x00, 0x0F, 0x9F, 0x00, 0x00, - 0x3E, 0x3C, 0x00, 0x00, 0xF0, 0xF8, 0x00, 0x07, 0xC1, 0xE0, 0x00, 0x1E, - 0x07, 0xC0, 0x00, 0xF8, 0x0F, 0x80, 0x07, 0xC0, 0x1F, 0x00, 0x3E, 0x00, - 0x1F, 0x03, 0xE0, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0xFF, - 0xFF, 0x00, 0x7F, 0xFF, 0x80, 0x7C, 0x1F, 0xC0, 0xF8, 0x07, 0xC1, 0xF0, - 0x07, 0xC3, 0xE0, 0x0F, 0x87, 0xC0, 0x0F, 0x8F, 0x80, 0x1F, 0x1F, 0x00, - 0x3E, 0x3E, 0x00, 0x7C, 0x7C, 0x00, 0xF8, 0xF8, 0x01, 0xF1, 0xF0, 0x07, - 0xC3, 0xE0, 0x0F, 0x87, 0xC0, 0x3E, 0x0F, 0x81, 0xF8, 0x1F, 0xFF, 0xC0, - 0x3F, 0xFE, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, - 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xF0, - 0x00, 0x3F, 0xFC, 0x00, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFF, 0xF8, - 0x00, 0x07, 0xC0, 0xF8, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x7C, - 0x03, 0xE0, 0x00, 0x7C, 0x07, 0x80, 0x00, 0x78, 0x1F, 0x00, 0x00, 0xF8, - 0x3C, 0x00, 0x00, 0xF0, 0xF8, 0x00, 0x01, 0xF1, 0xF0, 0x00, 0x03, 0xE3, - 0xC0, 0x00, 0x03, 0xCF, 0x80, 0x00, 0x07, 0xDF, 0x00, 0x00, 0x0F, 0xBE, - 0x00, 0x00, 0x1F, 0x7C, 0x00, 0x00, 0x3E, 0xF8, 0x00, 0x00, 0x7D, 0xF0, - 0x00, 0x00, 0xFB, 0xE0, 0x00, 0x01, 0xF7, 0xC0, 0x00, 0x03, 0xEF, 0x80, - 0x00, 0x07, 0xCF, 0x00, 0x00, 0x1F, 0x1F, 0x00, 0x00, 0x3E, 0x3E, 0x00, - 0x00, 0x7C, 0x3C, 0x00, 0x01, 0xF0, 0x7C, 0x00, 0x03, 0xE0, 0x78, 0x00, - 0x0F, 0x80, 0x78, 0x00, 0x1E, 0x00, 0x78, 0x00, 0x78, 0x00, 0x7C, 0x03, - 0xE0, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x1F, - 0x03, 0xF8, 0x01, 0xF0, 0x0F, 0x80, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x03, - 0xE0, 0x1F, 0x00, 0x3E, 0x01, 0xF0, 0x03, 0xE0, 0x1F, 0x00, 0x3E, 0x01, - 0xF0, 0x03, 0xE0, 0x1F, 0x00, 0x3E, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, - 0x7C, 0x01, 0xF0, 0x0F, 0x80, 0x1F, 0x07, 0xF0, 0x01, 0xFF, 0xFC, 0x00, - 0x1F, 0xFE, 0x00, 0x01, 0xF1, 0xF0, 0x00, 0x1F, 0x1F, 0x80, 0x01, 0xF0, - 0xF8, 0x00, 0x1F, 0x07, 0xC0, 0x01, 0xF0, 0x3E, 0x00, 0x1F, 0x03, 0xF0, - 0x01, 0xF0, 0x1F, 0x80, 0x1F, 0x00, 0xFC, 0x01, 0xF0, 0x07, 0xC0, 0x1F, - 0x00, 0x7E, 0x01, 0xF0, 0x03, 0xF0, 0x1F, 0x00, 0x1F, 0x83, 0xF8, 0x00, - 0xFC, 0xFF, 0xF0, 0x0F, 0xF0, 0x03, 0xF0, 0x20, 0x7F, 0xF3, 0x07, 0xC1, - 0xF8, 0x78, 0x03, 0xC3, 0x80, 0x0E, 0x3C, 0x00, 0x31, 0xE0, 0x01, 0xCF, - 0x00, 0x06, 0x7C, 0x00, 0x33, 0xE0, 0x01, 0x9F, 0x80, 0x00, 0x7E, 0x00, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0xE0, 0x00, 0xFF, 0xC0, 0x01, - 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0x7F, - 0x00, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, - 0x07, 0xF8, 0x00, 0x3F, 0xC0, 0x01, 0xEF, 0x00, 0x1F, 0x3C, 0x01, 0xF1, - 0xF8, 0x1F, 0x0C, 0xFF, 0xF0, 0x40, 0xFE, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0x7C, 0x07, 0xF0, 0x0F, 0x80, 0x3C, 0x01, 0xF0, - 0x07, 0x00, 0x3E, 0x00, 0x60, 0x07, 0xC0, 0x08, 0x00, 0xF8, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x7F, - 0x00, 0x00, 0x7F, 0xFC, 0x00, 0xFF, 0xF8, 0x03, 0xFF, 0x3F, 0xE0, 0x00, - 0xFC, 0x0F, 0x80, 0x00, 0x78, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, - 0x30, 0x0F, 0x80, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x20, 0x07, 0xC0, 0x00, - 0x60, 0x07, 0xC0, 0x00, 0x60, 0x03, 0xE0, 0x00, 0xC0, 0x03, 0xF0, 0x01, - 0xC0, 0x01, 0xFC, 0x07, 0x80, 0x00, 0x7F, 0xFE, 0x00, 0x00, 0x0F, 0xF8, - 0x00, 0xFF, 0xF8, 0x01, 0xFF, 0x3F, 0xC0, 0x00, 0x7E, 0x0F, 0x80, 0x00, - 0x3C, 0x0F, 0xC0, 0x00, 0x38, 0x07, 0xC0, 0x00, 0x38, 0x07, 0xC0, 0x00, - 0x30, 0x03, 0xE0, 0x00, 0x70, 0x03, 0xE0, 0x00, 0x60, 0x01, 0xF0, 0x00, - 0x60, 0x01, 0xF0, 0x00, 0xE0, 0x01, 0xF8, 0x00, 0xC0, 0x00, 0xF8, 0x01, - 0xC0, 0x00, 0xF8, 0x01, 0x80, 0x00, 0x7C, 0x01, 0x80, 0x00, 0x7C, 0x03, - 0x80, 0x00, 0x3E, 0x03, 0x00, 0x00, 0x3E, 0x07, 0x00, 0x00, 0x1F, 0x06, - 0x00, 0x00, 0x1F, 0x06, 0x00, 0x00, 0x1F, 0x8E, 0x00, 0x00, 0x0F, 0x8C, - 0x00, 0x00, 0x0F, 0x9C, 0x00, 0x00, 0x07, 0xD8, 0x00, 0x00, 0x07, 0xD8, - 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x00, 0xE0, - 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x40, 0x00, 0xFF, 0xF1, 0xFF, - 0xF0, 0x1F, 0xF3, 0xF8, 0x07, 0xF8, 0x00, 0x7C, 0x1F, 0x80, 0x3F, 0x00, - 0x03, 0x80, 0xF8, 0x01, 0xF0, 0x00, 0x30, 0x0F, 0x80, 0x1F, 0x00, 0x03, - 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x30, 0x07, 0xC0, 0x0F, 0x80, 0x06, 0x00, - 0x3E, 0x00, 0x7C, 0x00, 0x60, 0x03, 0xE0, 0x07, 0xC0, 0x06, 0x00, 0x3E, - 0x00, 0x7C, 0x00, 0xC0, 0x01, 0xF0, 0x07, 0xE0, 0x0C, 0x00, 0x1F, 0x00, - 0xFE, 0x01, 0xC0, 0x01, 0xF0, 0x0D, 0xE0, 0x18, 0x00, 0x0F, 0x80, 0xDF, - 0x01, 0x80, 0x00, 0xF8, 0x19, 0xF0, 0x30, 0x00, 0x07, 0xC1, 0x8F, 0x83, - 0x00, 0x00, 0x7C, 0x38, 0xF8, 0x30, 0x00, 0x07, 0xC3, 0x0F, 0x86, 0x00, - 0x00, 0x3E, 0x30, 0x7C, 0x60, 0x00, 0x03, 0xE7, 0x07, 0xCE, 0x00, 0x00, - 0x3E, 0x60, 0x3E, 0xC0, 0x00, 0x01, 0xF6, 0x03, 0xEC, 0x00, 0x00, 0x1F, - 0xE0, 0x3F, 0xC0, 0x00, 0x01, 0xFC, 0x01, 0xF8, 0x00, 0x00, 0x0F, 0xC0, - 0x1F, 0x80, 0x00, 0x00, 0xF8, 0x01, 0xF8, 0x00, 0x00, 0x0F, 0x80, 0x0F, - 0x00, 0x00, 0x00, 0x78, 0x00, 0xF0, 0x00, 0x00, 0x07, 0x00, 0x07, 0x00, - 0x00, 0x00, 0x70, 0x00, 0x60, 0x00, 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, - 0x00, 0x20, 0x00, 0x20, 0x00, 0x7F, 0xFE, 0x03, 0xFF, 0x8F, 0xF8, 0x00, - 0x7E, 0x01, 0xFC, 0x00, 0x1C, 0x00, 0x7E, 0x00, 0x1C, 0x00, 0x1F, 0x00, - 0x0C, 0x00, 0x07, 0xC0, 0x0E, 0x00, 0x03, 0xF0, 0x0E, 0x00, 0x00, 0xF8, - 0x0E, 0x00, 0x00, 0x3E, 0x06, 0x00, 0x00, 0x1F, 0x86, 0x00, 0x00, 0x07, - 0xC7, 0x00, 0x00, 0x01, 0xF7, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, - 0x3F, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x03, 0x9F, 0x00, 0x00, - 0x01, 0x8F, 0xC0, 0x00, 0x01, 0x83, 0xF0, 0x00, 0x01, 0xC0, 0xF8, 0x00, - 0x01, 0xC0, 0x7E, 0x00, 0x01, 0xC0, 0x1F, 0x80, 0x01, 0xC0, 0x07, 0xC0, - 0x00, 0xC0, 0x03, 0xF0, 0x00, 0xE0, 0x00, 0xFC, 0x00, 0xE0, 0x00, 0x7F, - 0x00, 0xF0, 0x00, 0x1F, 0x80, 0xFC, 0x00, 0x1F, 0xF3, 0xFF, 0x80, 0x7F, - 0xFE, 0xFF, 0xF8, 0x03, 0xFF, 0x3F, 0xE0, 0x00, 0x7C, 0x1F, 0xC0, 0x00, - 0x78, 0x0F, 0xC0, 0x00, 0x70, 0x07, 0xE0, 0x00, 0x60, 0x03, 0xF0, 0x00, - 0xE0, 0x01, 0xF0, 0x01, 0xC0, 0x01, 0xF8, 0x01, 0x80, 0x00, 0xFC, 0x03, - 0x80, 0x00, 0x7C, 0x07, 0x00, 0x00, 0x7E, 0x06, 0x00, 0x00, 0x3F, 0x0E, - 0x00, 0x00, 0x1F, 0x1C, 0x00, 0x00, 0x1F, 0x98, 0x00, 0x00, 0x0F, 0xF8, - 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x3F, 0xFF, 0xFF, 0xC7, 0xFF, 0xFF, 0xF8, - 0xF0, 0x00, 0x3E, 0x38, 0x00, 0x0F, 0x86, 0x00, 0x03, 0xF0, 0xC0, 0x00, - 0x7C, 0x10, 0x00, 0x1F, 0x02, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF8, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFC, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x7E, - 0x00, 0x01, 0x0F, 0x80, 0x00, 0x63, 0xF0, 0x00, 0x0C, 0xFC, 0x00, 0x03, - 0xBF, 0x00, 0x00, 0xE7, 0xC0, 0x00, 0x7D, 0xFF, 0xFF, 0xFF, 0xBF, 0xFF, - 0xFF, 0xF0, 0xFF, 0xF0, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, - 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, - 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0F, 0x07, 0xFC, 0xE0, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0x38, 0x00, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x1C, - 0x00, 0x70, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x1C, 0x00, 0x70, 0x01, - 0xC0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0x70, 0x01, 0xC0, 0x07, 0x00, - 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x01, 0xC0, 0x07, 0x00, 0x1E, 0x00, 0x38, - 0x00, 0xE0, 0x03, 0xC0, 0x07, 0xFF, 0x83, 0xC0, 0xE0, 0x70, 0x38, 0x1C, - 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, - 0x81, 0xC0, 0xE0, 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, - 0x70, 0x38, 0x1C, 0x0E, 0x07, 0x03, 0x81, 0xC0, 0xE0, 0x70, 0x3F, 0xFC, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x03, 0xDC, - 0x00, 0x39, 0xC0, 0x07, 0x9E, 0x00, 0x70, 0xE0, 0x0F, 0x0F, 0x00, 0xE0, - 0x70, 0x1E, 0x07, 0x81, 0xC0, 0x38, 0x3C, 0x03, 0xC3, 0x80, 0x1C, 0x78, - 0x01, 0xE7, 0x00, 0x0E, 0xF0, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xE0, 0x3C, 0x0F, 0x81, 0xF0, 0x1E, 0x03, 0xC0, 0x38, 0x07, 0x03, - 0xF0, 0x07, 0x0E, 0x03, 0x81, 0xC1, 0xE0, 0x30, 0x78, 0x0E, 0x1E, 0x03, - 0x83, 0x00, 0xE0, 0x00, 0x38, 0x00, 0x3E, 0x00, 0x73, 0x80, 0x70, 0xE0, - 0x70, 0x38, 0x38, 0x0E, 0x1C, 0x03, 0x8F, 0x00, 0xE3, 0xC0, 0x38, 0xF0, - 0x0E, 0x3E, 0x07, 0x8F, 0xC3, 0xE1, 0xFF, 0x3F, 0x1F, 0x07, 0x80, 0x06, - 0x00, 0x01, 0xF0, 0x00, 0x3F, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, - 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, - 0x00, 0x07, 0x80, 0x00, 0x3C, 0x7E, 0x01, 0xEF, 0xFC, 0x0F, 0xC3, 0xF0, - 0x7C, 0x07, 0x83, 0xC0, 0x3E, 0x1E, 0x00, 0xF0, 0xF0, 0x07, 0xC7, 0x80, - 0x1E, 0x3C, 0x00, 0xF1, 0xE0, 0x07, 0x8F, 0x00, 0x3C, 0x78, 0x01, 0xE3, - 0xC0, 0x0F, 0x1E, 0x00, 0x70, 0xF0, 0x03, 0x87, 0x80, 0x38, 0x3C, 0x01, - 0xC1, 0xE0, 0x1C, 0x0F, 0xC1, 0xC0, 0x1F, 0xFC, 0x00, 0x3F, 0x80, 0x01, - 0xFC, 0x00, 0xFF, 0xE0, 0x38, 0x3E, 0x0E, 0x03, 0xE3, 0x80, 0x7C, 0xE0, - 0x07, 0x18, 0x00, 0x03, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, - 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x1B, 0xC0, - 0x02, 0x7C, 0x01, 0x87, 0xE0, 0x60, 0x7F, 0xF8, 0x07, 0xFE, 0x00, 0x3F, - 0x00, 0x00, 0x00, 0x60, 0x00, 0x0F, 0x80, 0x00, 0xFE, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x7C, 0x78, 0x07, 0xFD, - 0xE0, 0x3C, 0x3F, 0x81, 0xC0, 0x3E, 0x0E, 0x00, 0xF8, 0x38, 0x01, 0xE1, - 0xE0, 0x07, 0x87, 0x00, 0x1E, 0x3C, 0x00, 0x78, 0xF0, 0x01, 0xE3, 0xC0, - 0x07, 0x8F, 0x00, 0x1E, 0x3C, 0x00, 0x78, 0xF0, 0x01, 0xE3, 0xE0, 0x07, - 0x87, 0x80, 0x1E, 0x1F, 0x00, 0x78, 0x3E, 0x03, 0xE0, 0xFC, 0x1F, 0xF0, - 0xFF, 0xDF, 0x00, 0xFC, 0x60, 0x03, 0xF8, 0x03, 0xFF, 0x01, 0xC1, 0xE0, - 0xC0, 0x3C, 0x70, 0x0F, 0x98, 0x01, 0xE7, 0xFF, 0xFB, 0xFF, 0xFE, 0xE0, - 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, 0x80, 0x00, 0xF0, 0x00, 0x3C, 0x00, - 0x1F, 0x00, 0x05, 0xE0, 0x02, 0x7C, 0x01, 0x8F, 0xC1, 0xC3, 0xFF, 0xE0, - 0x7F, 0xF0, 0x07, 0xF0, 0x00, 0x00, 0x7E, 0x00, 0xFF, 0xC0, 0xE3, 0xE0, - 0x60, 0x70, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x07, 0xFF, 0x83, 0xFF, 0xC0, 0x3C, - 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0F, 0x00, 0x07, 0x80, - 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x3F, - 0x00, 0xFF, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x3F, 0xF0, 0x03, 0xC7, 0xFE, - 0x3C, 0x1F, 0xF1, 0xC0, 0x70, 0x1E, 0x03, 0xC0, 0xF0, 0x0E, 0x07, 0x80, - 0x70, 0x3C, 0x03, 0x81, 0xE0, 0x1C, 0x07, 0x80, 0xC0, 0x3E, 0x0E, 0x00, - 0x78, 0xE0, 0x01, 0xFC, 0x00, 0x18, 0x00, 0x01, 0x80, 0x00, 0x18, 0x00, - 0x01, 0xE0, 0x00, 0x0F, 0xFF, 0xC0, 0x3F, 0xFF, 0x80, 0xFF, 0xFE, 0x0C, - 0x00, 0x38, 0xC0, 0x00, 0x4C, 0x00, 0x02, 0x60, 0x00, 0x17, 0x00, 0x01, - 0x38, 0x00, 0x09, 0xE0, 0x00, 0x87, 0xC0, 0x38, 0x1F, 0xFF, 0x00, 0x3F, - 0xC0, 0x00, 0x06, 0x00, 0x00, 0xF8, 0x00, 0x0F, 0xE0, 0x00, 0x07, 0x80, - 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, - 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x87, 0xE0, 0x1E, - 0x7F, 0xC0, 0x7B, 0x0F, 0x81, 0xF8, 0x1E, 0x07, 0x80, 0x3C, 0x1E, 0x00, - 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, - 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, - 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, - 0xC3, 0xF0, 0x1F, 0x9F, 0xF1, 0xFF, 0x0E, 0x03, 0xE0, 0x7C, 0x0F, 0x80, - 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x70, - 0x7E, 0x1F, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, - 0x03, 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x07, - 0xE7, 0xFF, 0x00, 0xE0, 0x1F, 0x01, 0xF0, 0x1F, 0x00, 0xE0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x70, 0x3F, 0x07, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, - 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x00, 0xE0, 0x0E, 0xE0, - 0xEF, 0x1C, 0xFF, 0x87, 0xE0, 0x06, 0x00, 0x00, 0x7C, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x80, - 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, - 0x00, 0xF0, 0x7F, 0xE1, 0xE0, 0x3E, 0x03, 0xC0, 0x70, 0x07, 0x81, 0x80, - 0x0F, 0x06, 0x00, 0x1E, 0x18, 0x00, 0x3C, 0x60, 0x00, 0x79, 0x80, 0x00, - 0xFF, 0x00, 0x01, 0xFF, 0x00, 0x03, 0xDE, 0x00, 0x07, 0x9E, 0x00, 0x0F, - 0x3E, 0x00, 0x1E, 0x3E, 0x00, 0x3C, 0x3E, 0x00, 0x78, 0x3C, 0x00, 0xF0, - 0x3C, 0x01, 0xE0, 0x7C, 0x03, 0xC0, 0x7C, 0x0F, 0xC0, 0xFE, 0x7F, 0xE3, - 0xFF, 0x03, 0x03, 0xE1, 0xFC, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, - 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, - 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x07, 0xE7, 0xFF, 0x1E, 0x1F, 0x01, - 0xF8, 0x1F, 0xCF, 0xF0, 0xFF, 0x80, 0xFF, 0x0F, 0x70, 0xF8, 0x0F, 0x81, - 0xF8, 0x0F, 0x01, 0xE0, 0x1E, 0x00, 0xF0, 0x3C, 0x03, 0xC0, 0x1E, 0x07, - 0x80, 0x78, 0x03, 0xC0, 0xF0, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xE0, 0x0F, - 0x03, 0xC0, 0x3C, 0x01, 0xE0, 0x78, 0x07, 0x80, 0x3C, 0x0F, 0x00, 0xF0, - 0x07, 0x81, 0xE0, 0x1E, 0x00, 0xF0, 0x3C, 0x03, 0xC0, 0x1E, 0x07, 0x80, - 0x78, 0x03, 0xC0, 0xF0, 0x0F, 0x00, 0x78, 0x1E, 0x01, 0xE0, 0x0F, 0x03, - 0xC0, 0x3C, 0x01, 0xE0, 0x78, 0x07, 0x80, 0x3C, 0x1F, 0x81, 0xF8, 0x0F, - 0xCF, 0xFC, 0xFF, 0xC7, 0xFE, 0x1E, 0x1F, 0x83, 0xF9, 0xFF, 0x03, 0xFC, - 0x3E, 0x07, 0xC0, 0x7C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, - 0x07, 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, - 0x80, 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x07, 0x80, - 0x3C, 0x1E, 0x00, 0xF0, 0x78, 0x03, 0xC1, 0xE0, 0x0F, 0x0F, 0xC0, 0x7E, - 0x7F, 0xC3, 0xFC, 0x01, 0xFE, 0x00, 0x1F, 0xFE, 0x00, 0xF0, 0x7C, 0x0F, - 0x80, 0xF8, 0x3C, 0x01, 0xF1, 0xE0, 0x03, 0xE7, 0x80, 0x0F, 0xBE, 0x00, - 0x3F, 0xF8, 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x07, 0xFE, 0x00, 0x1F, - 0xF8, 0x00, 0x7F, 0xF0, 0x01, 0xE7, 0xC0, 0x07, 0x9F, 0x80, 0x3E, 0x3E, - 0x00, 0xF0, 0x7C, 0x07, 0x80, 0xF8, 0x3C, 0x01, 0xFF, 0xE0, 0x00, 0xFC, - 0x00, 0x0E, 0x3F, 0x07, 0xF7, 0xFE, 0x07, 0xE0, 0xF8, 0x3E, 0x03, 0xE1, - 0xE0, 0x0F, 0x0F, 0x00, 0x7C, 0x78, 0x03, 0xE3, 0xC0, 0x0F, 0x1E, 0x00, - 0x78, 0xF0, 0x03, 0xC7, 0x80, 0x1E, 0x3C, 0x00, 0xF1, 0xE0, 0x07, 0x8F, - 0x00, 0x38, 0x78, 0x03, 0xC3, 0xC0, 0x1E, 0x1E, 0x00, 0xE0, 0xF8, 0x0E, - 0x07, 0xE0, 0xE0, 0x3D, 0xFE, 0x01, 0xE7, 0xC0, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x1F, 0x80, 0x03, 0xFF, 0x80, 0x00, 0x01, - 0xF8, 0x20, 0x3F, 0xF3, 0x03, 0xC1, 0xF8, 0x3C, 0x07, 0xC3, 0xC0, 0x1E, - 0x1C, 0x00, 0xF1, 0xE0, 0x07, 0x8E, 0x00, 0x3C, 0xF0, 0x01, 0xE7, 0x80, - 0x0F, 0x3C, 0x00, 0x79, 0xE0, 0x03, 0xCF, 0x00, 0x1E, 0x78, 0x00, 0xF3, - 0xE0, 0x07, 0x9F, 0x00, 0x3C, 0x7C, 0x01, 0xE3, 0xE0, 0x1F, 0x0F, 0xC1, - 0xF8, 0x3F, 0xF3, 0xC0, 0x7E, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x1E, 0x00, 0x03, 0xF8, 0x00, 0x7F, 0xE0, 0x06, 0x3C, 0xFC, - 0xFE, 0xFA, 0x78, 0xF8, 0x71, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, - 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x01, 0xF8, 0x0F, 0xFC, - 0x00, 0x1F, 0x91, 0x87, 0x98, 0x1D, 0xC0, 0x6E, 0x03, 0x70, 0x0B, 0xC0, - 0x5F, 0x80, 0x7E, 0x01, 0xFC, 0x07, 0xF0, 0x0F, 0xE0, 0x3F, 0x00, 0x7E, - 0x01, 0xF0, 0x07, 0xC0, 0x3E, 0x01, 0xF8, 0x0D, 0xE0, 0xC8, 0xF8, 0x00, - 0x04, 0x00, 0xC0, 0x0C, 0x01, 0xC0, 0x3C, 0x07, 0xFC, 0xFF, 0xC3, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xE2, - 0x1F, 0xC0, 0xF8, 0xFC, 0x0F, 0xE1, 0xF0, 0x0F, 0x83, 0xC0, 0x1E, 0x0F, - 0x00, 0x78, 0x3C, 0x01, 0xE0, 0xF0, 0x07, 0x83, 0xC0, 0x1E, 0x0F, 0x00, - 0x78, 0x3C, 0x01, 0xE0, 0xF0, 0x07, 0x83, 0xC0, 0x1E, 0x0F, 0x00, 0x78, - 0x3C, 0x01, 0xE0, 0xF0, 0x07, 0x83, 0xC0, 0x1E, 0x0F, 0x00, 0x78, 0x3C, - 0x01, 0xE0, 0xF8, 0x0F, 0x81, 0xF0, 0xFF, 0x03, 0xFE, 0x7F, 0x07, 0xE1, - 0xC0, 0xFF, 0x81, 0xFC, 0xFC, 0x01, 0xC1, 0xE0, 0x07, 0x07, 0x80, 0x18, - 0x0F, 0x00, 0x60, 0x3C, 0x01, 0x00, 0x78, 0x0C, 0x01, 0xE0, 0x30, 0x07, - 0x81, 0x80, 0x0F, 0x06, 0x00, 0x3C, 0x10, 0x00, 0x78, 0xC0, 0x01, 0xE3, - 0x00, 0x03, 0x98, 0x00, 0x0F, 0x60, 0x00, 0x3D, 0x00, 0x00, 0x7C, 0x00, - 0x01, 0xF0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x40, 0x00, 0xFF, 0x8F, 0xF8, 0x3F, 0x7E, 0x07, 0xE0, 0x0E, 0x3E, 0x03, - 0xC0, 0x0C, 0x1E, 0x03, 0xE0, 0x0C, 0x1E, 0x01, 0xE0, 0x0C, 0x1E, 0x01, - 0xE0, 0x18, 0x0F, 0x00, 0xF0, 0x18, 0x0F, 0x01, 0xF0, 0x10, 0x07, 0x81, - 0xF0, 0x30, 0x07, 0x81, 0x78, 0x30, 0x07, 0x83, 0x78, 0x60, 0x03, 0xC3, - 0x38, 0x60, 0x03, 0xC6, 0x3C, 0x40, 0x01, 0xC6, 0x3C, 0xC0, 0x01, 0xEC, - 0x1E, 0xC0, 0x01, 0xEC, 0x1F, 0x80, 0x00, 0xF8, 0x0F, 0x80, 0x00, 0xF8, - 0x0F, 0x00, 0x00, 0x70, 0x0F, 0x00, 0x00, 0x70, 0x07, 0x00, 0x00, 0x60, - 0x06, 0x00, 0x00, 0x20, 0x02, 0x00, 0x7F, 0xE7, 0xF0, 0x7E, 0x0F, 0x00, - 0xF8, 0x38, 0x01, 0xE0, 0xC0, 0x07, 0xC6, 0x00, 0x0F, 0x30, 0x00, 0x1E, - 0xC0, 0x00, 0x7E, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xC0, - 0x00, 0x3F, 0x00, 0x00, 0xDE, 0x00, 0x06, 0x7C, 0x00, 0x30, 0xF0, 0x01, - 0xC1, 0xE0, 0x06, 0x07, 0xC0, 0x30, 0x0F, 0x01, 0xC0, 0x1E, 0x0F, 0x00, - 0xFC, 0xFE, 0x07, 0xFC, 0xFF, 0xC0, 0xFC, 0xFC, 0x01, 0xE1, 0xE0, 0x03, - 0x07, 0x80, 0x18, 0x0F, 0x00, 0x60, 0x3C, 0x01, 0x80, 0x78, 0x0C, 0x01, - 0xE0, 0x30, 0x03, 0xC0, 0xC0, 0x0F, 0x06, 0x00, 0x3E, 0x18, 0x00, 0x78, - 0x40, 0x01, 0xF3, 0x00, 0x03, 0xCC, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, - 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x06, 0x00, 0x00, - 0x18, 0x00, 0x00, 0x40, 0x00, 0x03, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x60, - 0x00, 0x01, 0x80, 0x00, 0x0C, 0x00, 0x0F, 0xF0, 0x00, 0x7F, 0x80, 0x01, - 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7F, 0xFF, 0x9F, 0xFF, 0xE6, 0x00, - 0xF1, 0x00, 0x78, 0x40, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0x80, 0x03, 0xE0, - 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0x80, 0x03, - 0xE0, 0x01, 0xF0, 0x04, 0x78, 0x01, 0x3E, 0x00, 0xDF, 0x00, 0x37, 0x80, - 0x1F, 0xFF, 0xFE, 0xFF, 0xFF, 0x80, 0x01, 0xE0, 0x78, 0x1C, 0x07, 0x80, - 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x70, 0x1C, 0x0E, 0x00, 0x70, - 0x07, 0x00, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x01, 0xC0, - 0x1E, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xE0, 0x0F, 0x00, 0x70, 0x0F, 0x00, 0xE0, 0x1C, 0x03, - 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0x70, 0x0E, 0x01, 0xC0, 0x1C, 0x01, 0xC0, 0x0E, 0x07, 0x01, 0xC0, 0x70, - 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x0E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x3C, 0x07, 0x03, 0xC0, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0xFF, 0x80, 0xC7, 0x0F, 0x87, 0xB8, 0x0F, 0xFC, 0x00, - 0x07, 0xC0}; - -const GFXglyph FreeSerif24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 5, 32, 16, 6, -31}, // 0x21 '!' - {20, 12, 12, 19, 4, -31}, // 0x22 '"' - {38, 23, 31, 23, 0, -30}, // 0x23 '#' - {128, 19, 37, 24, 2, -33}, // 0x24 '$' - {216, 33, 32, 39, 3, -30}, // 0x25 '%' - {348, 32, 33, 37, 2, -31}, // 0x26 '&' - {480, 4, 12, 9, 3, -31}, // 0x27 ''' - {486, 12, 40, 16, 2, -31}, // 0x28 '(' - {546, 12, 40, 16, 2, -30}, // 0x29 ')' - {606, 16, 19, 24, 4, -30}, // 0x2A '*' - {644, 23, 23, 27, 2, -22}, // 0x2B '+' - {711, 6, 11, 12, 2, -4}, // 0x2C ',' - {720, 11, 2, 16, 2, -10}, // 0x2D '-' - {723, 5, 5, 12, 3, -3}, // 0x2E '.' - {727, 14, 32, 14, 0, -30}, // 0x2F '/' - {783, 22, 33, 23, 1, -31}, // 0x30 '0' - {874, 13, 32, 24, 5, -31}, // 0x31 '1' - {926, 21, 31, 23, 1, -30}, // 0x32 '2' - {1008, 18, 32, 23, 2, -30}, // 0x33 '3' - {1080, 21, 31, 24, 1, -30}, // 0x34 '4' - {1162, 19, 33, 24, 2, -31}, // 0x35 '5' - {1241, 21, 33, 23, 2, -31}, // 0x36 '6' - {1328, 20, 31, 24, 1, -30}, // 0x37 '7' - {1406, 18, 33, 23, 3, -31}, // 0x38 '8' - {1481, 21, 33, 24, 1, -31}, // 0x39 '9' - {1568, 5, 22, 12, 4, -20}, // 0x3A ':' - {1582, 6, 27, 12, 3, -20}, // 0x3B ';' - {1603, 24, 25, 27, 1, -24}, // 0x3C '<' - {1678, 24, 11, 27, 1, -16}, // 0x3D '=' - {1711, 24, 25, 27, 2, -23}, // 0x3E '>' - {1786, 17, 32, 21, 3, -31}, // 0x3F '?' - {1854, 32, 33, 41, 4, -31}, // 0x40 '@' - {1986, 32, 32, 34, 1, -31}, // 0x41 'A' - {2114, 27, 31, 30, 0, -30}, // 0x42 'B' - {2219, 28, 33, 31, 2, -31}, // 0x43 'C' - {2335, 31, 31, 34, 1, -30}, // 0x44 'D' - {2456, 27, 31, 29, 2, -30}, // 0x45 'E' - {2561, 24, 31, 27, 2, -30}, // 0x46 'F' - {2654, 31, 33, 35, 2, -31}, // 0x47 'G' - {2782, 30, 31, 34, 2, -30}, // 0x48 'H' - {2899, 13, 31, 15, 1, -30}, // 0x49 'I' - {2950, 17, 32, 18, 0, -30}, // 0x4A 'J' - {3018, 32, 31, 33, 1, -30}, // 0x4B 'K' - {3142, 26, 31, 29, 2, -30}, // 0x4C 'L' - {3243, 39, 31, 41, 1, -30}, // 0x4D 'M' - {3395, 32, 32, 34, 1, -30}, // 0x4E 'N' - {3523, 30, 33, 34, 2, -31}, // 0x4F 'O' - {3647, 23, 31, 27, 2, -30}, // 0x50 'P' - {3737, 31, 40, 34, 2, -31}, // 0x51 'Q' - {3892, 28, 31, 31, 2, -30}, // 0x52 'R' - {4001, 21, 33, 25, 2, -31}, // 0x53 'S' - {4088, 27, 31, 28, 1, -30}, // 0x54 'T' - {4193, 32, 32, 34, 1, -30}, // 0x55 'U' - {4321, 32, 32, 33, 0, -30}, // 0x56 'V' - {4449, 44, 32, 45, 0, -30}, // 0x57 'W' - {4625, 33, 31, 34, 0, -30}, // 0x58 'X' - {4753, 32, 31, 33, 0, -30}, // 0x59 'Y' - {4877, 27, 31, 29, 1, -30}, // 0x5A 'Z' - {4982, 9, 38, 16, 4, -30}, // 0x5B '[' - {5025, 14, 32, 14, 0, -30}, // 0x5C '\' - {5081, 9, 38, 16, 3, -30}, // 0x5D ']' - {5124, 20, 17, 22, 1, -30}, // 0x5E '^' - {5167, 24, 2, 23, 0, 5}, // 0x5F '_' - {5173, 10, 8, 12, 1, -31}, // 0x60 '`' - {5183, 18, 21, 20, 1, -20}, // 0x61 'a' - {5231, 21, 32, 24, 1, -31}, // 0x62 'b' - {5315, 19, 21, 21, 1, -20}, // 0x63 'c' - {5365, 22, 32, 23, 1, -31}, // 0x64 'd' - {5453, 18, 21, 21, 1, -20}, // 0x65 'e' - {5501, 17, 33, 18, 0, -32}, // 0x66 'f' - {5572, 21, 31, 22, 1, -20}, // 0x67 'g' - {5654, 22, 32, 23, 0, -31}, // 0x68 'h' - {5742, 11, 32, 13, 0, -31}, // 0x69 'i' - {5786, 12, 42, 16, 0, -31}, // 0x6A 'j' - {5849, 23, 32, 24, 1, -31}, // 0x6B 'k' - {5941, 11, 32, 12, 0, -31}, // 0x6C 'l' - {5985, 35, 21, 37, 1, -20}, // 0x6D 'm' - {6077, 22, 21, 23, 0, -20}, // 0x6E 'n' - {6135, 22, 21, 23, 1, -20}, // 0x6F 'o' - {6193, 21, 31, 24, 1, -20}, // 0x70 'p' - {6275, 21, 31, 23, 1, -20}, // 0x71 'q' - {6357, 15, 21, 16, 1, -20}, // 0x72 'r' - {6397, 13, 21, 17, 2, -20}, // 0x73 's' - {6432, 12, 26, 13, 1, -25}, // 0x74 't' - {6471, 22, 21, 23, 1, -20}, // 0x75 'u' - {6529, 22, 22, 22, 0, -20}, // 0x76 'v' - {6590, 32, 22, 32, 0, -20}, // 0x77 'w' - {6678, 22, 21, 23, 0, -20}, // 0x78 'x' - {6736, 22, 31, 22, 0, -20}, // 0x79 'y' - {6822, 18, 21, 20, 1, -20}, // 0x7A 'z' - {6870, 11, 41, 23, 5, -31}, // 0x7B '{' - {6927, 3, 32, 9, 3, -30}, // 0x7C '|' - {6939, 11, 41, 23, 7, -31}, // 0x7D '}' - {6996, 22, 5, 23, 1, -13}}; // 0x7E '~' - -const GFXfont FreeSerif24pt7b PROGMEM = {(uint8_t *)FreeSerif24pt7bBitmaps, - (GFXglyph *)FreeSerif24pt7bGlyphs, - 0x20, 0x7E, 56}; - -// Approx. 7682 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h deleted file mode 100644 index 22f82e4..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerif9pt7b.h +++ /dev/null @@ -1,197 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerif9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xEA, 0x03, 0xDE, 0xF7, 0x20, 0x11, 0x09, 0x04, 0x82, 0x4F, 0xF9, - 0x10, 0x89, 0xFF, 0x24, 0x12, 0x09, 0x0C, 0x80, 0x10, 0x7C, 0xD6, 0xD2, - 0xD0, 0xF0, 0x38, 0x1E, 0x17, 0x93, 0x93, 0xD6, 0x7C, 0x10, 0x38, 0x43, - 0x3C, 0x39, 0x21, 0x8A, 0x0C, 0x50, 0x65, 0x39, 0xCB, 0x20, 0xB9, 0x05, - 0x88, 0x4C, 0x44, 0x64, 0x21, 0xC0, 0x0E, 0x00, 0xC8, 0x06, 0x40, 0x32, - 0x01, 0xA0, 0x07, 0x78, 0x31, 0x87, 0x88, 0x46, 0x86, 0x34, 0x30, 0xC1, - 0xC7, 0x17, 0xCF, 0x00, 0xFE, 0x08, 0x88, 0x84, 0x63, 0x18, 0xC6, 0x10, - 0x82, 0x08, 0x20, 0x82, 0x08, 0x21, 0x0C, 0x63, 0x18, 0xC4, 0x22, 0x22, - 0x00, 0x63, 0x9A, 0xDC, 0x72, 0xB6, 0x08, 0x08, 0x04, 0x02, 0x01, 0x0F, - 0xF8, 0x40, 0x20, 0x10, 0x08, 0x00, 0xD8, 0xF0, 0xF0, 0x08, 0x84, 0x22, - 0x10, 0x8C, 0x42, 0x31, 0x00, 0x1C, 0x31, 0x98, 0xD8, 0x3C, 0x1E, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xD8, 0xC4, 0x61, 0xC0, 0x13, 0x8C, 0x63, 0x18, - 0xC6, 0x31, 0x8C, 0x67, 0x80, 0x3C, 0x4E, 0x86, 0x06, 0x06, 0x04, 0x0C, - 0x08, 0x10, 0x20, 0x41, 0xFE, 0x3C, 0xC6, 0x06, 0x04, 0x1C, 0x3E, 0x07, - 0x03, 0x03, 0x03, 0x06, 0xF8, 0x04, 0x18, 0x71, 0x64, 0xC9, 0xA3, 0x46, - 0xFE, 0x18, 0x30, 0x60, 0x0F, 0x10, 0x20, 0x3C, 0x0E, 0x07, 0x03, 0x03, - 0x03, 0x02, 0x04, 0xF8, 0x07, 0x1C, 0x30, 0x60, 0x60, 0xDC, 0xE6, 0xC3, - 0xC3, 0xC3, 0x43, 0x66, 0x3C, 0x7F, 0x82, 0x02, 0x02, 0x04, 0x04, 0x04, - 0x08, 0x08, 0x08, 0x10, 0x10, 0x3C, 0x8F, 0x1E, 0x3E, 0x4F, 0x06, 0x36, - 0xC7, 0x8F, 0x1B, 0x33, 0xC0, 0x3C, 0x66, 0xC2, 0xC3, 0xC3, 0xC3, 0xC3, - 0x63, 0x3F, 0x06, 0x06, 0x0C, 0x38, 0x60, 0xF0, 0x0F, 0xD8, 0x00, 0x03, - 0x28, 0x01, 0x87, 0x0E, 0x1C, 0x0C, 0x03, 0x80, 0x70, 0x0E, 0x00, 0x80, - 0xFF, 0x80, 0x00, 0x00, 0x0F, 0xF8, 0x80, 0x1C, 0x01, 0xC0, 0x1C, 0x01, - 0xC0, 0xE0, 0xE0, 0xE0, 0xC0, 0x00, 0x79, 0x1A, 0x18, 0x30, 0x60, 0x83, - 0x04, 0x10, 0x20, 0x40, 0x03, 0x00, 0x0F, 0x83, 0x8C, 0x60, 0x26, 0x02, - 0xC7, 0x9C, 0xC9, 0xD8, 0x9D, 0x99, 0xD9, 0x26, 0xEC, 0x60, 0x03, 0x04, - 0x0F, 0x80, 0x02, 0x00, 0x10, 0x01, 0xC0, 0x16, 0x00, 0x98, 0x04, 0xC0, - 0x43, 0x03, 0xF8, 0x20, 0x61, 0x03, 0x18, 0x1D, 0xE1, 0xF0, 0xFF, 0x86, - 0x1C, 0xC1, 0x98, 0x33, 0x0C, 0x7E, 0x0C, 0x31, 0x83, 0x30, 0x66, 0x0C, - 0xC3, 0x7F, 0xC0, 0x1F, 0x26, 0x1D, 0x81, 0xE0, 0x1C, 0x01, 0x80, 0x30, - 0x06, 0x00, 0xC0, 0x0C, 0x00, 0xC1, 0x8F, 0xC0, 0xFF, 0x03, 0x1C, 0x30, - 0x63, 0x07, 0x30, 0x33, 0x03, 0x30, 0x33, 0x03, 0x30, 0x33, 0x06, 0x30, - 0xCF, 0xF0, 0xFF, 0x98, 0x26, 0x01, 0x80, 0x61, 0x1F, 0xC6, 0x11, 0x80, - 0x60, 0x18, 0x16, 0x0F, 0xFE, 0xFF, 0xB0, 0x58, 0x0C, 0x06, 0x13, 0xF9, - 0x84, 0xC0, 0x60, 0x30, 0x18, 0x1E, 0x00, 0x1F, 0x23, 0x0E, 0x60, 0x26, - 0x00, 0xC0, 0x0C, 0x0F, 0xC0, 0x6C, 0x06, 0xC0, 0x66, 0x06, 0x30, 0x60, - 0xF8, 0xF1, 0xEC, 0x19, 0x83, 0x30, 0x66, 0x0C, 0xFF, 0x98, 0x33, 0x06, - 0x60, 0xCC, 0x19, 0x83, 0x78, 0xF0, 0xF6, 0x66, 0x66, 0x66, 0x66, 0x6F, - 0x3C, 0x61, 0x86, 0x18, 0x61, 0x86, 0x18, 0x6D, 0xBC, 0xF3, 0xE6, 0x08, - 0x61, 0x06, 0x20, 0x64, 0x07, 0x80, 0x6C, 0x06, 0x60, 0x63, 0x06, 0x18, - 0x60, 0xCF, 0x3F, 0xF0, 0x18, 0x06, 0x01, 0x80, 0x60, 0x18, 0x06, 0x01, - 0x80, 0x60, 0x18, 0x16, 0x0B, 0xFE, 0xF0, 0x0E, 0x70, 0x38, 0xE0, 0x71, - 0xE1, 0x62, 0xC2, 0xC5, 0xC9, 0x89, 0x93, 0x13, 0x26, 0x23, 0x8C, 0x47, - 0x18, 0x84, 0x33, 0x88, 0xF0, 0xE0, 0xEE, 0x09, 0xC1, 0x2C, 0x25, 0xC4, - 0x9C, 0x91, 0x92, 0x1A, 0x41, 0xC8, 0x19, 0x03, 0x70, 0x20, 0x1F, 0x06, - 0x31, 0x83, 0x20, 0x2C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x68, 0x09, - 0x83, 0x18, 0xC1, 0xF0, 0xFE, 0x31, 0x98, 0x6C, 0x36, 0x1B, 0x19, 0xF8, - 0xC0, 0x60, 0x30, 0x18, 0x1E, 0x00, 0x1F, 0x06, 0x31, 0x83, 0x20, 0x2C, - 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x68, 0x19, 0x83, 0x18, 0xC0, 0xE0, - 0x0E, 0x00, 0xE0, 0x07, 0xFE, 0x0C, 0x61, 0x86, 0x30, 0xC6, 0x18, 0xC6, - 0x1F, 0x83, 0x70, 0x67, 0x0C, 0x71, 0x87, 0x78, 0x70, 0x1D, 0x31, 0x98, - 0x4C, 0x07, 0x80, 0xE0, 0x1C, 0x07, 0x01, 0xA0, 0xD8, 0xCB, 0xC0, 0xFF, - 0xF8, 0xCE, 0x18, 0x83, 0x00, 0x60, 0x0C, 0x01, 0x80, 0x30, 0x06, 0x00, - 0xC0, 0x18, 0x07, 0x80, 0xF0, 0xEC, 0x09, 0x81, 0x30, 0x26, 0x04, 0xC0, - 0x98, 0x13, 0x02, 0x60, 0x4C, 0x08, 0xC2, 0x0F, 0x80, 0xF8, 0x77, 0x02, - 0x30, 0x23, 0x04, 0x18, 0x41, 0x84, 0x0C, 0x80, 0xC8, 0x07, 0x00, 0x70, - 0x02, 0x00, 0x20, 0xFB, 0xE7, 0xB0, 0xC0, 0x8C, 0x20, 0x86, 0x18, 0x41, - 0x8C, 0x40, 0xCB, 0x20, 0x65, 0x90, 0x1A, 0x70, 0x0E, 0x38, 0x03, 0x1C, - 0x01, 0x04, 0x00, 0x82, 0x00, 0xFC, 0xF9, 0x83, 0x06, 0x10, 0x19, 0x00, - 0xD0, 0x03, 0x00, 0x1C, 0x01, 0x30, 0x11, 0xC1, 0x86, 0x08, 0x19, 0xE3, - 0xF0, 0xF8, 0xF6, 0x06, 0x30, 0x41, 0x88, 0x1D, 0x00, 0xD0, 0x06, 0x00, - 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, 0xF0, 0x3F, 0xCC, 0x11, 0x06, 0x01, - 0x80, 0x70, 0x0C, 0x03, 0x00, 0xE0, 0x38, 0x06, 0x05, 0xC1, 0x7F, 0xE0, - 0xFB, 0x6D, 0xB6, 0xDB, 0x6D, 0xB8, 0x82, 0x10, 0x82, 0x10, 0x86, 0x10, - 0x86, 0x10, 0xED, 0xB6, 0xDB, 0x6D, 0xB6, 0xF8, 0x18, 0x1C, 0x34, 0x26, - 0x62, 0x42, 0xC1, 0xFF, 0x80, 0x84, 0x20, 0x79, 0x98, 0x30, 0xE6, 0xD9, - 0xB3, 0x3F, 0x20, 0x70, 0x18, 0x0C, 0x06, 0x03, 0x71, 0xCC, 0xC3, 0x61, - 0xB0, 0xD8, 0x6C, 0x63, 0xE0, 0x3C, 0xCF, 0x06, 0x0C, 0x18, 0x18, 0x9E, - 0x01, 0x03, 0x80, 0xC0, 0x60, 0x31, 0xD9, 0x9D, 0x86, 0xC3, 0x61, 0xB0, - 0xCC, 0x63, 0xF0, 0x3C, 0x46, 0xFE, 0xC0, 0xC0, 0xE1, 0x62, 0x3C, 0x1E, - 0x41, 0x83, 0x06, 0x1E, 0x18, 0x30, 0x60, 0xC1, 0x83, 0x0F, 0x00, 0x3C, - 0x19, 0xF6, 0x31, 0x8C, 0x1E, 0x08, 0x04, 0x01, 0xFC, 0x40, 0xB0, 0x2E, - 0x11, 0xF8, 0x20, 0x70, 0x18, 0x0C, 0x06, 0x03, 0x71, 0xCC, 0xC6, 0x63, - 0x31, 0x98, 0xCC, 0x6F, 0x78, 0x60, 0x02, 0xE6, 0x66, 0x66, 0xF0, 0x18, - 0x00, 0x33, 0x8C, 0x63, 0x18, 0xC6, 0x31, 0x8B, 0x80, 0x20, 0x70, 0x18, - 0x0C, 0x06, 0x03, 0x3D, 0x88, 0xD8, 0x78, 0x36, 0x19, 0x8C, 0x6F, 0x78, - 0x2E, 0x66, 0x66, 0x66, 0x66, 0x66, 0xF0, 0xEE, 0x71, 0xCE, 0x66, 0x31, - 0x98, 0xC6, 0x63, 0x19, 0x8C, 0x66, 0x31, 0xBD, 0xEF, 0xEE, 0x39, 0x98, - 0xCC, 0x66, 0x33, 0x19, 0x8D, 0xEF, 0x3E, 0x31, 0xB0, 0x78, 0x3C, 0x1E, - 0x0D, 0x8C, 0x7C, 0xEE, 0x39, 0x98, 0x6C, 0x36, 0x1B, 0x0D, 0x8C, 0xFC, - 0x60, 0x30, 0x18, 0x1E, 0x00, 0x3D, 0x31, 0xB0, 0xD8, 0x6C, 0x36, 0x1B, - 0x8C, 0xFE, 0x03, 0x01, 0x80, 0xC0, 0xF0, 0x6D, 0xC6, 0x18, 0x61, 0x86, - 0x3C, 0x76, 0x38, 0x58, 0x3E, 0x38, 0xFE, 0x27, 0x98, 0xC6, 0x31, 0x8C, - 0x38, 0xE7, 0x31, 0x98, 0xCC, 0x66, 0x33, 0x19, 0x8C, 0x7F, 0xF3, 0x61, - 0x22, 0x32, 0x14, 0x1C, 0x08, 0x08, 0xEF, 0x36, 0x61, 0x62, 0x22, 0x32, - 0x35, 0x41, 0x9C, 0x18, 0x81, 0x08, 0xF7, 0x12, 0x0E, 0x03, 0x01, 0xC1, - 0x21, 0x09, 0xCF, 0xF3, 0x61, 0x62, 0x32, 0x34, 0x14, 0x1C, 0x08, 0x08, - 0x08, 0x10, 0xE0, 0xFD, 0x18, 0x60, 0x83, 0x0C, 0x70, 0xFE, 0x19, 0x8C, - 0x63, 0x18, 0xC4, 0x61, 0x8C, 0x63, 0x18, 0xC3, 0xFF, 0xF0, 0xC3, 0x18, - 0xC6, 0x31, 0x84, 0x33, 0x18, 0xC6, 0x31, 0x98, 0x70, 0x24, 0xC1, 0xC0}; - -const GFXglyph FreeSerif9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 2, 12, 6, 2, -11}, // 0x21 '!' - {3, 5, 4, 7, 1, -11}, // 0x22 '"' - {6, 9, 12, 9, 0, -11}, // 0x23 '#' - {20, 8, 14, 9, 1, -12}, // 0x24 '$' - {34, 13, 12, 15, 1, -11}, // 0x25 '%' - {54, 13, 13, 14, 1, -12}, // 0x26 '&' - {76, 2, 4, 4, 1, -11}, // 0x27 ''' - {77, 5, 15, 6, 1, -11}, // 0x28 '(' - {87, 5, 15, 6, 0, -11}, // 0x29 ')' - {97, 6, 8, 9, 3, -11}, // 0x2A '*' - {103, 9, 9, 10, 0, -8}, // 0x2B '+' - {114, 2, 3, 4, 2, 0}, // 0x2C ',' - {115, 4, 1, 6, 1, -3}, // 0x2D '-' - {116, 2, 2, 5, 1, -1}, // 0x2E '.' - {117, 5, 12, 5, 0, -11}, // 0x2F '/' - {125, 9, 13, 9, 0, -12}, // 0x30 '0' - {140, 5, 13, 9, 2, -12}, // 0x31 '1' - {149, 8, 12, 9, 1, -11}, // 0x32 '2' - {161, 8, 12, 9, 0, -11}, // 0x33 '3' - {173, 7, 12, 9, 1, -11}, // 0x34 '4' - {184, 8, 12, 9, 0, -11}, // 0x35 '5' - {196, 8, 13, 9, 1, -12}, // 0x36 '6' - {209, 8, 12, 9, 0, -11}, // 0x37 '7' - {221, 7, 13, 9, 1, -12}, // 0x38 '8' - {233, 8, 14, 9, 1, -12}, // 0x39 '9' - {247, 2, 8, 5, 1, -7}, // 0x3A ':' - {249, 3, 10, 5, 1, -7}, // 0x3B ';' - {253, 9, 9, 10, 1, -8}, // 0x3C '<' - {264, 9, 5, 10, 1, -6}, // 0x3D '=' - {270, 10, 9, 10, 0, -8}, // 0x3E '>' - {282, 7, 13, 8, 1, -12}, // 0x3F '?' - {294, 12, 13, 16, 2, -12}, // 0x40 '@' - {314, 13, 12, 13, 0, -11}, // 0x41 'A' - {334, 11, 12, 11, 0, -11}, // 0x42 'B' - {351, 11, 12, 12, 1, -11}, // 0x43 'C' - {368, 12, 12, 13, 0, -11}, // 0x44 'D' - {386, 10, 12, 11, 1, -11}, // 0x45 'E' - {401, 9, 12, 10, 1, -11}, // 0x46 'F' - {415, 12, 12, 13, 1, -11}, // 0x47 'G' - {433, 11, 12, 13, 1, -11}, // 0x48 'H' - {450, 4, 12, 6, 1, -11}, // 0x49 'I' - {456, 6, 12, 7, 0, -11}, // 0x4A 'J' - {465, 12, 12, 13, 1, -11}, // 0x4B 'K' - {483, 10, 12, 11, 1, -11}, // 0x4C 'L' - {498, 15, 12, 16, 0, -11}, // 0x4D 'M' - {521, 11, 12, 13, 1, -11}, // 0x4E 'N' - {538, 11, 13, 13, 1, -12}, // 0x4F 'O' - {556, 9, 12, 10, 1, -11}, // 0x50 'P' - {570, 11, 16, 13, 1, -12}, // 0x51 'Q' - {592, 11, 12, 12, 1, -11}, // 0x52 'R' - {609, 9, 12, 10, 0, -11}, // 0x53 'S' - {623, 11, 12, 11, 0, -11}, // 0x54 'T' - {640, 11, 12, 13, 1, -11}, // 0x55 'U' - {657, 12, 12, 13, 0, -11}, // 0x56 'V' - {675, 17, 12, 17, 0, -11}, // 0x57 'W' - {701, 13, 12, 13, 0, -11}, // 0x58 'X' - {721, 12, 12, 13, 0, -11}, // 0x59 'Y' - {739, 11, 12, 11, 0, -11}, // 0x5A 'Z' - {756, 3, 15, 6, 2, -11}, // 0x5B '[' - {762, 5, 12, 5, 0, -11}, // 0x5C '\' - {770, 3, 15, 6, 1, -11}, // 0x5D ']' - {776, 8, 7, 8, 0, -11}, // 0x5E '^' - {783, 9, 1, 9, 0, 2}, // 0x5F '_' - {785, 4, 3, 5, 0, -11}, // 0x60 '`' - {787, 7, 8, 8, 1, -7}, // 0x61 'a' - {794, 9, 13, 9, 0, -12}, // 0x62 'b' - {809, 7, 8, 8, 0, -7}, // 0x63 'c' - {816, 9, 13, 9, 0, -12}, // 0x64 'd' - {831, 8, 8, 8, 0, -7}, // 0x65 'e' - {839, 7, 13, 7, 1, -12}, // 0x66 'f' - {851, 10, 12, 8, 0, -7}, // 0x67 'g' - {866, 9, 13, 9, 0, -12}, // 0x68 'h' - {881, 4, 11, 5, 1, -10}, // 0x69 'i' - {887, 5, 15, 6, 0, -10}, // 0x6A 'j' - {897, 9, 13, 9, 1, -12}, // 0x6B 'k' - {912, 4, 13, 5, 1, -12}, // 0x6C 'l' - {919, 14, 8, 14, 0, -7}, // 0x6D 'm' - {933, 9, 8, 9, 0, -7}, // 0x6E 'n' - {942, 9, 8, 9, 0, -7}, // 0x6F 'o' - {951, 9, 12, 9, 0, -7}, // 0x70 'p' - {965, 9, 12, 9, 0, -7}, // 0x71 'q' - {979, 6, 8, 6, 0, -7}, // 0x72 'r' - {985, 6, 8, 7, 1, -7}, // 0x73 's' - {991, 5, 9, 5, 0, -8}, // 0x74 't' - {997, 9, 8, 9, 0, -7}, // 0x75 'u' - {1006, 8, 8, 8, 0, -7}, // 0x76 'v' - {1014, 12, 8, 12, 0, -7}, // 0x77 'w' - {1026, 9, 8, 9, 0, -7}, // 0x78 'x' - {1035, 8, 12, 8, 0, -7}, // 0x79 'y' - {1047, 7, 8, 7, 1, -7}, // 0x7A 'z' - {1054, 5, 16, 9, 1, -12}, // 0x7B '{' - {1064, 1, 12, 4, 1, -11}, // 0x7C '|' - {1066, 5, 16, 9, 3, -11}, // 0x7D '}' - {1076, 9, 3, 9, 0, -5}}; // 0x7E '~' - -const GFXfont FreeSerif9pt7b PROGMEM = {(uint8_t *)FreeSerif9pt7bBitmaps, - (GFXglyph *)FreeSerif9pt7bGlyphs, 0x20, - 0x7E, 22}; - -// Approx. 1752 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h deleted file mode 100644 index 9dedae0..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold12pt7b.h +++ /dev/null @@ -1,273 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold12pt7bBitmaps[] PROGMEM = { - 0x7F, 0xFF, 0x77, 0x66, 0x22, 0x00, 0x6F, 0xF7, 0xE3, 0xF1, 0xF8, 0xFC, - 0x7E, 0x3A, 0x09, 0x04, 0x0C, 0x40, 0xCC, 0x0C, 0xC0, 0x8C, 0x18, 0xC7, - 0xFF, 0x18, 0xC1, 0x88, 0x19, 0x81, 0x98, 0xFF, 0xE3, 0x18, 0x31, 0x83, - 0x18, 0x33, 0x03, 0x30, 0x08, 0x01, 0x00, 0xFC, 0x24, 0xEC, 0x8D, 0x90, - 0xBA, 0x07, 0xC0, 0x7E, 0x07, 0xF0, 0x7F, 0x07, 0xF0, 0x9F, 0x11, 0xE2, - 0x3E, 0x46, 0xE9, 0xC7, 0xC0, 0x20, 0x04, 0x00, 0x1E, 0x0C, 0x0E, 0x7F, - 0x07, 0x10, 0x83, 0xC4, 0x40, 0xE1, 0x30, 0x38, 0x88, 0x0E, 0x26, 0x03, - 0x91, 0x1E, 0x78, 0x8E, 0x40, 0x27, 0x10, 0x11, 0xC4, 0x0C, 0xE1, 0x02, - 0x38, 0x81, 0x0E, 0x20, 0x43, 0x90, 0x20, 0x78, 0x03, 0xE0, 0x01, 0x9E, - 0x00, 0xE3, 0x80, 0x38, 0xE0, 0x0F, 0x30, 0x03, 0xF0, 0x00, 0x78, 0x7C, - 0x1F, 0x06, 0x1B, 0xE1, 0x1C, 0x7C, 0x8F, 0x1F, 0x23, 0xC3, 0xF0, 0xF8, - 0x7C, 0x3E, 0x0F, 0x97, 0xC7, 0xFC, 0xFE, 0x3E, 0xFF, 0xFE, 0x90, 0x00, - 0x31, 0x0C, 0x31, 0x86, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0x86, 0x18, 0x60, - 0xC1, 0x02, 0x04, 0x03, 0x06, 0x0C, 0x30, 0x61, 0x87, 0x1C, 0x71, 0xC7, - 0x1C, 0x71, 0x86, 0x38, 0xC2, 0x10, 0x80, 0x1C, 0x6E, 0xFA, 0xEF, 0xF1, - 0xC7, 0xFF, 0xAF, 0xBB, 0x1C, 0x04, 0x00, 0x06, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x06, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x6F, 0xF7, 0x11, 0x24, 0xFF, 0xFF, 0xC0, 0x6F, 0xF6, 0x03, 0x07, - 0x06, 0x06, 0x0C, 0x0C, 0x0C, 0x18, 0x18, 0x18, 0x30, 0x30, 0x30, 0x60, - 0x60, 0x60, 0xC0, 0x0E, 0x07, 0x71, 0xC7, 0x38, 0xEF, 0x1D, 0xE3, 0xFC, - 0x7F, 0x8F, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xF7, 0x1C, 0xE3, 0x8E, 0xE0, - 0xF8, 0x06, 0x0F, 0x1F, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x1E, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0xF9, 0xFF, 0x0F, 0x03, 0xFC, 0x7F, 0xC4, - 0x3E, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x1C, 0x03, 0x80, 0x30, 0x06, 0x00, - 0xC1, 0x18, 0x13, 0xFE, 0x7F, 0xEF, 0xFE, 0x1F, 0x0C, 0xFA, 0x0F, 0x01, - 0xE0, 0x38, 0x0E, 0x03, 0xE0, 0x3E, 0x03, 0xE0, 0x3C, 0x03, 0x80, 0x70, - 0x0D, 0xC1, 0xBC, 0x43, 0xF0, 0x03, 0x80, 0xE0, 0x78, 0x3E, 0x17, 0x89, - 0xE2, 0x79, 0x1E, 0x87, 0xA1, 0xEF, 0xFF, 0xFF, 0xFF, 0xC1, 0xE0, 0x78, - 0x1E, 0x3F, 0xE7, 0xF8, 0xFF, 0x10, 0x04, 0x00, 0xF8, 0x1F, 0xC7, 0xFC, - 0x1F, 0xC0, 0x78, 0x07, 0x00, 0x60, 0x0D, 0xC1, 0x3C, 0x43, 0xF0, 0x00, - 0xE0, 0xF0, 0x38, 0x1E, 0x07, 0x80, 0xF0, 0x3F, 0xE7, 0x9E, 0xF1, 0xFE, - 0x3F, 0xC7, 0xF8, 0xF7, 0x1E, 0xE3, 0x8E, 0x60, 0xF8, 0x7F, 0xEF, 0xFD, - 0xFF, 0xA0, 0x68, 0x0C, 0x03, 0x80, 0x60, 0x0C, 0x03, 0x00, 0x60, 0x0C, - 0x03, 0x00, 0x60, 0x1C, 0x03, 0x00, 0x60, 0x1F, 0x0E, 0x73, 0x87, 0x70, - 0xEF, 0x1D, 0xF3, 0x1F, 0x81, 0xF8, 0x1F, 0xCC, 0xFB, 0x8F, 0xF0, 0xFE, - 0x1F, 0xC3, 0x9C, 0xF1, 0xF8, 0x1F, 0x06, 0x71, 0xC7, 0x78, 0xEF, 0x1F, - 0xE3, 0xFC, 0x7F, 0x8F, 0x79, 0xE7, 0xFC, 0x0F, 0x01, 0xC0, 0x78, 0x1C, - 0x0F, 0x07, 0x00, 0x6F, 0xF6, 0x00, 0x06, 0xFF, 0x60, 0x6F, 0xF6, 0x00, - 0x06, 0xFF, 0x71, 0x22, 0xC0, 0x00, 0x04, 0x00, 0x70, 0x07, 0xC0, 0xFC, - 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0x1F, 0x00, 0x1F, 0x00, 0x1F, 0x00, 0x1F, - 0x00, 0x1F, 0x00, 0x1C, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xFF, 0xFF, 0x00, 0x03, 0x80, 0x0F, - 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x0F, 0x80, 0x1F, 0x01, 0xF0, - 0x1F, 0x03, 0xF0, 0x3E, 0x00, 0xE0, 0x02, 0x00, 0x00, 0x3E, 0x11, 0xEC, - 0x3F, 0x8F, 0xE3, 0xC0, 0xF0, 0x78, 0x18, 0x08, 0x02, 0x00, 0x00, 0x00, - 0x1C, 0x07, 0x81, 0xE0, 0x30, 0x03, 0xF0, 0x0E, 0x18, 0x18, 0x04, 0x30, - 0x66, 0x70, 0xDB, 0x61, 0x99, 0xE3, 0x19, 0xE3, 0x31, 0xE6, 0x31, 0xE6, - 0x31, 0xE6, 0xF2, 0x66, 0xB2, 0x73, 0x3C, 0x38, 0x00, 0x1E, 0x04, 0x03, - 0xF8, 0x00, 0x80, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x3E, 0x00, - 0x1F, 0x00, 0x1B, 0xC0, 0x09, 0xE0, 0x0C, 0xF8, 0x04, 0x3C, 0x02, 0x1F, - 0x03, 0xFF, 0x81, 0x03, 0xC1, 0x80, 0xF0, 0x80, 0x7D, 0xF0, 0xFF, 0xFF, - 0xC0, 0xF3, 0xC3, 0xC7, 0x8F, 0x1E, 0x3C, 0x78, 0xF1, 0xE3, 0xCE, 0x0F, - 0xF0, 0x3C, 0x70, 0xF0, 0xE3, 0xC3, 0xCF, 0x0F, 0x3C, 0x3C, 0xF0, 0xE3, - 0xC7, 0xBF, 0xF8, 0x07, 0xE2, 0x38, 0x7C, 0xE0, 0x3B, 0xC0, 0x37, 0x00, - 0x7E, 0x00, 0x7C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x03, - 0x80, 0x07, 0x80, 0x27, 0x00, 0xC7, 0x86, 0x03, 0xF0, 0xFF, 0xE0, 0x1E, - 0x1E, 0x0F, 0x07, 0x87, 0x81, 0xE3, 0xC0, 0xF1, 0xE0, 0x3C, 0xF0, 0x1E, - 0x78, 0x0F, 0x3C, 0x07, 0x9E, 0x03, 0xCF, 0x01, 0xE7, 0x80, 0xE3, 0xC0, - 0xF1, 0xE0, 0xF0, 0xF0, 0xE1, 0xFF, 0xC0, 0xFF, 0xFC, 0x78, 0x38, 0xF0, - 0x31, 0xE0, 0x23, 0xC4, 0x07, 0x88, 0x0F, 0x30, 0x1F, 0xE0, 0x3C, 0xC0, - 0x78, 0x80, 0xF1, 0x01, 0xE0, 0x23, 0xC0, 0x47, 0x81, 0x8F, 0x07, 0x7F, - 0xFE, 0xFF, 0xFC, 0xF0, 0x73, 0xC0, 0xCF, 0x01, 0x3C, 0x40, 0xF1, 0x03, - 0xCC, 0x0F, 0xF0, 0x3C, 0xC0, 0xF1, 0x03, 0xC4, 0x0F, 0x00, 0x3C, 0x00, - 0xF0, 0x03, 0xC0, 0x3F, 0xC0, 0x07, 0xE2, 0x1C, 0x3E, 0x38, 0x0E, 0x78, - 0x06, 0x70, 0x06, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, 0x00, 0xF0, - 0x7F, 0xF0, 0x1E, 0x70, 0x1E, 0x78, 0x1E, 0x38, 0x1E, 0x1E, 0x1E, 0x07, - 0xF0, 0xFE, 0xFF, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, - 0x3C, 0x78, 0x3C, 0x7F, 0xFC, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, - 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0xFE, 0xFF, 0xFF, 0x3C, 0x3C, - 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, - 0xFF, 0x0F, 0xF0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, - 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0x03, 0xC0, 0x3C, 0xE3, 0xCE, - 0x38, 0xE3, 0x83, 0xE0, 0xFE, 0x7F, 0x3C, 0x0E, 0x1E, 0x04, 0x0F, 0x04, - 0x07, 0x84, 0x03, 0xCC, 0x01, 0xEE, 0x00, 0xFF, 0x00, 0x7F, 0xC0, 0x3C, - 0xF0, 0x1E, 0x7C, 0x0F, 0x1F, 0x07, 0x87, 0xC3, 0xC1, 0xF1, 0xE0, 0x7D, - 0xFC, 0xFF, 0xFE, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, - 0x07, 0x80, 0x1E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x80, 0x1E, 0x01, 0x78, - 0x0D, 0xE0, 0x67, 0x83, 0xBF, 0xFE, 0xFC, 0x01, 0xF3, 0xC0, 0x3E, 0x3E, - 0x03, 0xE2, 0xE0, 0x5E, 0x2F, 0x05, 0xE2, 0xF0, 0x5E, 0x27, 0x09, 0xE2, - 0x78, 0x9E, 0x23, 0x91, 0xE2, 0x3D, 0x1E, 0x23, 0xF1, 0xE2, 0x1E, 0x1E, - 0x21, 0xE1, 0xE2, 0x0C, 0x1E, 0x20, 0xC1, 0xEF, 0x88, 0x3F, 0xF8, 0x1E, - 0xF8, 0x18, 0xF8, 0x11, 0xF8, 0x22, 0xF8, 0x45, 0xF0, 0x89, 0xF1, 0x11, - 0xF2, 0x21, 0xF4, 0x41, 0xF8, 0x81, 0xF1, 0x01, 0xE2, 0x03, 0xC4, 0x03, - 0x8C, 0x03, 0x7C, 0x02, 0x07, 0xF0, 0x0F, 0x1E, 0x0E, 0x03, 0x8F, 0x01, - 0xE7, 0x00, 0x77, 0x80, 0x3F, 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, - 0x03, 0xFC, 0x01, 0xEE, 0x00, 0xE7, 0x80, 0xF1, 0xC0, 0x70, 0x70, 0x70, - 0x0F, 0xE0, 0xFF, 0x87, 0x9E, 0x78, 0xF7, 0x8F, 0x78, 0xF7, 0x8F, 0x78, - 0xF7, 0x9E, 0x7F, 0x87, 0x80, 0x78, 0x07, 0x80, 0x78, 0x07, 0x80, 0x78, - 0x0F, 0xE0, 0x07, 0xF0, 0x0F, 0x1E, 0x0E, 0x07, 0x8F, 0x01, 0xE7, 0x00, - 0xF7, 0x80, 0x3F, 0xC0, 0x1F, 0xE0, 0x0F, 0xF0, 0x07, 0xF8, 0x03, 0xFC, - 0x01, 0xEE, 0x00, 0xE7, 0x00, 0xF1, 0xC0, 0x70, 0x70, 0x70, 0x1C, 0xF0, - 0x03, 0xE0, 0x01, 0xF8, 0x00, 0x3E, 0x00, 0x07, 0xE0, 0xFF, 0xE0, 0x3C, - 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x3C, 0x38, 0x3C, - 0x70, 0x3F, 0xC0, 0x3D, 0xE0, 0x3C, 0xF0, 0x3C, 0xF8, 0x3C, 0x78, 0x3C, - 0x3C, 0x3C, 0x3E, 0xFF, 0x1F, 0x1F, 0x27, 0x0E, 0x60, 0x6E, 0x06, 0xF0, - 0x2F, 0x80, 0x7F, 0x07, 0xFC, 0x1F, 0xE0, 0x7E, 0x01, 0xF8, 0x07, 0xC0, - 0x7C, 0x06, 0xF0, 0xC9, 0xF8, 0xFF, 0xFF, 0xC7, 0x9F, 0x0F, 0x1C, 0x1E, - 0x10, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, - 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x07, 0xF8, 0xFE, - 0x1E, 0xF0, 0x09, 0xE0, 0x13, 0xC0, 0x27, 0x80, 0x4F, 0x00, 0x9E, 0x01, - 0x3C, 0x02, 0x78, 0x04, 0xF0, 0x09, 0xE0, 0x13, 0xC0, 0x27, 0x80, 0x47, - 0x81, 0x07, 0x84, 0x07, 0xF0, 0xFF, 0x0F, 0x9E, 0x03, 0x0F, 0x00, 0x83, - 0xC0, 0x81, 0xE0, 0x40, 0xF8, 0x60, 0x3C, 0x20, 0x1E, 0x10, 0x07, 0x90, - 0x03, 0xC8, 0x00, 0xF4, 0x00, 0x7C, 0x00, 0x3E, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x01, 0x80, 0x00, 0x80, 0x00, 0xFE, 0x7F, 0x9E, 0xF8, 0x3C, 0x08, - 0xF0, 0x78, 0x31, 0xE0, 0xF0, 0x41, 0xE0, 0xF0, 0x83, 0xC3, 0xE3, 0x07, - 0x85, 0xC4, 0x07, 0x93, 0xC8, 0x0F, 0x27, 0xB0, 0x0E, 0x47, 0x40, 0x1F, - 0x0F, 0x80, 0x3E, 0x1F, 0x00, 0x38, 0x1C, 0x00, 0x70, 0x38, 0x00, 0xE0, - 0x30, 0x00, 0x80, 0x40, 0xFF, 0x9F, 0x9F, 0x07, 0x07, 0x83, 0x03, 0xE3, - 0x00, 0xF9, 0x00, 0x3D, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, - 0xF8, 0x00, 0xBE, 0x00, 0x8F, 0x00, 0x83, 0xC0, 0xC1, 0xF0, 0xE0, 0xFD, - 0xF8, 0xFF, 0xFF, 0x1F, 0x7C, 0x06, 0x3C, 0x04, 0x3E, 0x0C, 0x1E, 0x08, - 0x0F, 0x10, 0x0F, 0x30, 0x07, 0xA0, 0x07, 0xC0, 0x03, 0xC0, 0x03, 0xC0, - 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x03, 0xC0, 0x0F, 0xF0, 0x7F, 0xFC, - 0xE0, 0xF1, 0x83, 0xE2, 0x07, 0x84, 0x1E, 0x00, 0x7C, 0x00, 0xF0, 0x03, - 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x08, 0xF0, 0x13, 0xC0, 0x6F, 0x81, - 0x9E, 0x07, 0x7F, 0xFE, 0xFF, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCE, - 0x73, 0x9C, 0xE7, 0x39, 0xF0, 0xC0, 0x60, 0x60, 0x60, 0x30, 0x30, 0x30, - 0x18, 0x18, 0x18, 0x0C, 0x0C, 0x0C, 0x06, 0x06, 0x06, 0x03, 0xF9, 0xCE, - 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCF, 0xF0, 0x0C, - 0x07, 0x81, 0xE0, 0xCC, 0x33, 0x18, 0x66, 0x1B, 0x87, 0xC0, 0xC0, 0xFF, - 0xF0, 0xC7, 0x1C, 0x30, 0x1F, 0x0E, 0x71, 0xCF, 0x39, 0xE0, 0x3C, 0x1F, - 0x8E, 0xF3, 0x9E, 0xF3, 0xDE, 0x79, 0xFF, 0x80, 0xF8, 0x07, 0x80, 0x78, - 0x07, 0x80, 0x78, 0x07, 0xB8, 0x7D, 0xE7, 0x8E, 0x78, 0xF7, 0x8F, 0x78, - 0xF7, 0x8F, 0x78, 0xF7, 0x8E, 0x79, 0xC4, 0x78, 0x1F, 0x1D, 0xDC, 0xFE, - 0x7F, 0x07, 0x83, 0xC1, 0xE0, 0x78, 0x3C, 0x47, 0xC0, 0x03, 0xE0, 0x1E, - 0x01, 0xE0, 0x1E, 0x01, 0xE1, 0xDE, 0x7B, 0xE7, 0x1E, 0xF1, 0xEF, 0x1E, - 0xF1, 0xEF, 0x1E, 0xF1, 0xE7, 0x1E, 0x7B, 0xE1, 0xDF, 0x1F, 0x0C, 0x67, - 0x1B, 0xC7, 0xFF, 0xFC, 0x0F, 0x03, 0xC0, 0x78, 0x4E, 0x21, 0xF0, 0x1E, - 0x3B, 0x7B, 0x78, 0x78, 0xFC, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, - 0x78, 0x78, 0xFC, 0x3E, 0x0E, 0x7F, 0xCE, 0x79, 0xEF, 0x3C, 0xE7, 0x0F, - 0xC1, 0x00, 0x60, 0x1C, 0x03, 0xFE, 0x7F, 0xE3, 0xFF, 0x80, 0xF0, 0x33, - 0xFC, 0xF8, 0x07, 0x80, 0x78, 0x07, 0x80, 0x78, 0x07, 0xB8, 0x7D, 0xE7, - 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xEF, - 0xFF, 0x31, 0xE7, 0x8C, 0x03, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, - 0xBF, 0x06, 0x0F, 0x0F, 0x06, 0x00, 0x1F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0xCF, 0xCE, 0x7C, 0xF8, 0x03, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0xF9, 0xE1, 0x8F, 0x10, 0x79, - 0x03, 0xD8, 0x1F, 0xE0, 0xF7, 0x87, 0x9E, 0x3C, 0x71, 0xE3, 0xDF, 0xBF, - 0xF9, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0xBF, - 0xFB, 0xCF, 0x0F, 0xBE, 0x79, 0xE7, 0x8F, 0x3C, 0xF1, 0xE7, 0x9E, 0x3C, - 0xF3, 0xC7, 0x9E, 0x78, 0xF3, 0xCF, 0x1E, 0x79, 0xE3, 0xCF, 0x3C, 0x7B, - 0xFF, 0xDF, 0x80, 0xFB, 0x87, 0xDE, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, - 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0xFF, 0xF0, 0x1F, 0x07, 0x71, 0xC7, - 0x78, 0xFF, 0x1F, 0xE3, 0xFC, 0x7F, 0x8F, 0x71, 0xC7, 0x70, 0x7C, 0x00, - 0xFB, 0x87, 0xDE, 0x78, 0xE7, 0x8F, 0x78, 0xF7, 0x8F, 0x78, 0xF7, 0x8F, - 0x78, 0xE7, 0x9E, 0x7F, 0x87, 0x80, 0x78, 0x07, 0x80, 0x78, 0x0F, 0xC0, - 0x1E, 0x23, 0x9E, 0x71, 0xEF, 0x1E, 0xF1, 0xEF, 0x1E, 0xF1, 0xEF, 0x1E, - 0x71, 0xE7, 0x9E, 0x1F, 0xE0, 0x1E, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x3F, - 0xF9, 0xDF, 0xF7, 0xDD, 0xE0, 0x78, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1E, - 0x0F, 0xC0, 0x3D, 0x43, 0xC3, 0xE0, 0xFC, 0x7E, 0x1F, 0x87, 0x83, 0xC2, - 0xBC, 0x08, 0x18, 0x38, 0x78, 0xFC, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, - 0x78, 0x78, 0x79, 0x3E, 0xFB, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, - 0x9E, 0x79, 0xE7, 0x9E, 0x79, 0xE7, 0x9E, 0x3F, 0xF0, 0xFC, 0xEF, 0x08, - 0xE1, 0x1E, 0x41, 0xC8, 0x3D, 0x03, 0xC0, 0x78, 0x0E, 0x00, 0xC0, 0x10, - 0x00, 0xFD, 0xF7, 0xBC, 0x71, 0x9E, 0x38, 0x87, 0x1E, 0x43, 0xCF, 0x40, - 0xEB, 0xA0, 0x7C, 0xF0, 0x1C, 0x70, 0x0E, 0x38, 0x06, 0x08, 0x01, 0x04, - 0x00, 0xFC, 0xF7, 0x84, 0x3C, 0x81, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x80, - 0xBC, 0x13, 0xC2, 0x1E, 0xFB, 0xF0, 0xFC, 0xEF, 0x08, 0xE1, 0x1E, 0x43, - 0xC8, 0x3A, 0x07, 0xC0, 0x78, 0x0E, 0x01, 0xC0, 0x18, 0x02, 0x00, 0x41, - 0xC8, 0x3A, 0x03, 0x80, 0xFF, 0xB1, 0xE8, 0x70, 0x3C, 0x1E, 0x07, 0x83, - 0xC1, 0xE0, 0x78, 0xBC, 0x2F, 0xF8, 0x07, 0x0E, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1C, 0x1C, 0x1C, 0xE0, 0x18, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, 0x1C, - 0x1C, 0x1E, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0xE0, 0x70, 0x38, 0x38, - 0x38, 0x38, 0x38, 0x38, 0x38, 0x18, 0x07, 0x38, 0x38, 0x38, 0x38, 0x38, - 0x38, 0x38, 0x38, 0x70, 0xE0, 0x70, 0x1F, 0x8B, 0x3F, 0x01, 0xC0}; - -const GFXglyph FreeSerifBold12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 4, 16, 8, 2, -15}, // 0x21 '!' - {8, 9, 7, 13, 2, -15}, // 0x22 '"' - {16, 12, 16, 12, 0, -15}, // 0x23 '#' - {40, 11, 20, 12, 1, -17}, // 0x24 '$' - {68, 18, 16, 24, 3, -15}, // 0x25 '%' - {104, 18, 16, 20, 1, -15}, // 0x26 '&' - {140, 3, 7, 7, 2, -15}, // 0x27 ''' - {143, 6, 21, 8, 1, -16}, // 0x28 '(' - {159, 6, 21, 8, 1, -16}, // 0x29 ')' - {175, 9, 10, 12, 2, -15}, // 0x2A '*' - {187, 12, 12, 16, 2, -11}, // 0x2B '+' - {205, 4, 8, 6, 1, -3}, // 0x2C ',' - {209, 6, 3, 8, 1, -6}, // 0x2D '-' - {212, 4, 4, 6, 1, -3}, // 0x2E '.' - {214, 8, 17, 7, -1, -15}, // 0x2F '/' - {231, 11, 16, 12, 1, -15}, // 0x30 '0' - {253, 9, 16, 12, 1, -15}, // 0x31 '1' - {271, 12, 16, 12, 0, -15}, // 0x32 '2' - {295, 11, 16, 12, 1, -15}, // 0x33 '3' - {317, 10, 16, 12, 1, -15}, // 0x34 '4' - {337, 11, 16, 12, 1, -15}, // 0x35 '5' - {359, 11, 16, 12, 1, -15}, // 0x36 '6' - {381, 11, 16, 12, 0, -15}, // 0x37 '7' - {403, 11, 16, 12, 1, -15}, // 0x38 '8' - {425, 11, 16, 12, 1, -15}, // 0x39 '9' - {447, 4, 11, 8, 2, -10}, // 0x3A ':' - {453, 4, 15, 8, 2, -10}, // 0x3B ';' - {461, 14, 14, 16, 1, -12}, // 0x3C '<' - {486, 14, 8, 16, 1, -9}, // 0x3D '=' - {500, 14, 14, 16, 1, -12}, // 0x3E '>' - {525, 10, 16, 12, 1, -15}, // 0x3F '?' - {545, 16, 16, 22, 3, -15}, // 0x40 '@' - {577, 17, 16, 17, 0, -15}, // 0x41 'A' - {611, 14, 16, 16, 1, -15}, // 0x42 'B' - {639, 15, 16, 17, 1, -15}, // 0x43 'C' - {669, 17, 16, 18, 0, -15}, // 0x44 'D' - {703, 15, 16, 16, 1, -15}, // 0x45 'E' - {733, 14, 16, 15, 1, -15}, // 0x46 'F' - {761, 16, 16, 19, 1, -15}, // 0x47 'G' - {793, 16, 16, 19, 2, -15}, // 0x48 'H' - {825, 8, 16, 9, 1, -15}, // 0x49 'I' - {841, 12, 18, 12, 0, -15}, // 0x4A 'J' - {868, 17, 16, 19, 2, -15}, // 0x4B 'K' - {902, 14, 16, 16, 2, -15}, // 0x4C 'L' - {930, 20, 16, 23, 1, -15}, // 0x4D 'M' - {970, 15, 16, 17, 1, -15}, // 0x4E 'N' - {1000, 17, 16, 19, 1, -15}, // 0x4F 'O' - {1034, 12, 16, 15, 2, -15}, // 0x50 'P' - {1058, 17, 20, 19, 1, -15}, // 0x51 'Q' - {1101, 16, 16, 17, 1, -15}, // 0x52 'R' - {1133, 12, 16, 14, 1, -15}, // 0x53 'S' - {1157, 15, 16, 15, 0, -15}, // 0x54 'T' - {1187, 15, 16, 17, 1, -15}, // 0x55 'U' - {1217, 17, 17, 17, 0, -15}, // 0x56 'V' - {1254, 23, 16, 24, 0, -15}, // 0x57 'W' - {1300, 17, 16, 17, 0, -15}, // 0x58 'X' - {1334, 16, 16, 17, 1, -15}, // 0x59 'Y' - {1366, 15, 16, 16, 0, -15}, // 0x5A 'Z' - {1396, 5, 20, 8, 2, -15}, // 0x5B '[' - {1409, 8, 17, 7, -1, -15}, // 0x5C '\' - {1426, 5, 20, 8, 2, -15}, // 0x5D ']' - {1439, 10, 9, 14, 2, -15}, // 0x5E '^' - {1451, 12, 1, 12, 0, 4}, // 0x5F '_' - {1453, 5, 4, 8, 0, -16}, // 0x60 '`' - {1456, 11, 11, 12, 1, -10}, // 0x61 'a' - {1472, 12, 16, 13, 1, -15}, // 0x62 'b' - {1496, 9, 11, 10, 1, -10}, // 0x63 'c' - {1509, 12, 16, 13, 1, -15}, // 0x64 'd' - {1533, 10, 11, 11, 1, -10}, // 0x65 'e' - {1547, 8, 16, 9, 1, -15}, // 0x66 'f' - {1563, 11, 16, 12, 1, -10}, // 0x67 'g' - {1585, 12, 16, 13, 1, -15}, // 0x68 'h' - {1609, 6, 16, 7, 1, -15}, // 0x69 'i' - {1621, 8, 21, 10, 0, -15}, // 0x6A 'j' - {1642, 13, 16, 13, 1, -15}, // 0x6B 'k' - {1668, 6, 16, 7, 1, -15}, // 0x6C 'l' - {1680, 19, 11, 20, 1, -10}, // 0x6D 'm' - {1707, 12, 11, 13, 1, -10}, // 0x6E 'n' - {1724, 11, 11, 12, 1, -10}, // 0x6F 'o' - {1740, 12, 16, 13, 1, -10}, // 0x70 'p' - {1764, 12, 16, 13, 1, -10}, // 0x71 'q' - {1788, 10, 11, 10, 1, -10}, // 0x72 'r' - {1802, 8, 11, 10, 1, -10}, // 0x73 's' - {1813, 8, 15, 8, 1, -14}, // 0x74 't' - {1828, 12, 11, 14, 1, -10}, // 0x75 'u' - {1845, 11, 11, 12, 0, -10}, // 0x76 'v' - {1861, 17, 11, 17, 0, -10}, // 0x77 'w' - {1885, 12, 11, 12, 0, -10}, // 0x78 'x' - {1902, 11, 16, 12, 0, -10}, // 0x79 'y' - {1924, 10, 11, 11, 1, -10}, // 0x7A 'z' - {1938, 8, 21, 9, 0, -16}, // 0x7B '{' - {1959, 2, 17, 5, 2, -15}, // 0x7C '|' - {1964, 8, 21, 9, 2, -16}, // 0x7D '}' - {1985, 11, 4, 12, 1, -7}}; // 0x7E '~' - -const GFXfont FreeSerifBold12pt7b PROGMEM = { - (uint8_t *)FreeSerifBold12pt7bBitmaps, - (GFXglyph *)FreeSerifBold12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 2663 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h deleted file mode 100644 index faecf4f..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold18pt7b.h +++ /dev/null @@ -1,464 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold18pt7bBitmaps[] PROGMEM = { - 0x7B, 0xEF, 0xFF, 0xFF, 0xF7, 0x9E, 0x71, 0xC7, 0x0C, 0x20, 0x82, 0x00, - 0x00, 0x07, 0x3E, 0xFF, 0xFF, 0xDC, 0x60, 0x37, 0x83, 0xFC, 0x1F, 0xE0, - 0xFF, 0x07, 0xB8, 0x3D, 0xC0, 0xCC, 0x06, 0x20, 0x31, 0x01, 0x80, 0x03, - 0x8E, 0x00, 0xC3, 0x80, 0x30, 0xE0, 0x1C, 0x38, 0x07, 0x0E, 0x01, 0xC3, - 0x87, 0xFF, 0xFD, 0xFF, 0xFF, 0x7F, 0xFF, 0xC1, 0x87, 0x00, 0xE1, 0xC0, - 0x38, 0x70, 0x0E, 0x1C, 0x03, 0x86, 0x0F, 0xFF, 0xF3, 0xFF, 0xFC, 0xFF, - 0xFF, 0x07, 0x0E, 0x01, 0xC3, 0x80, 0x70, 0xE0, 0x1C, 0x30, 0x07, 0x0C, - 0x01, 0x87, 0x00, 0x61, 0xC0, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0xFF, - 0x03, 0x27, 0x8C, 0x47, 0x38, 0x86, 0x71, 0x0C, 0xF2, 0x09, 0xF4, 0x03, - 0xF8, 0x03, 0xF8, 0x07, 0xFC, 0x03, 0xFC, 0x03, 0xFE, 0x01, 0xFE, 0x03, - 0xFC, 0x04, 0xFC, 0x08, 0xFA, 0x10, 0xF4, 0x21, 0xEC, 0x43, 0xD8, 0x8F, - 0x3D, 0x3C, 0x3F, 0xF0, 0x1F, 0x00, 0x08, 0x00, 0x10, 0x00, 0x03, 0xC0, - 0x18, 0x01, 0xFE, 0x0F, 0x00, 0x7C, 0xFF, 0xC0, 0x1F, 0x0F, 0x90, 0x07, - 0xC1, 0x06, 0x00, 0xF0, 0x21, 0x80, 0x3E, 0x04, 0x30, 0x07, 0x81, 0x8C, - 0x00, 0xF0, 0x21, 0x80, 0x1E, 0x0C, 0x60, 0x03, 0xC1, 0x18, 0x1E, 0x3C, - 0xE3, 0x0F, 0xE7, 0xF8, 0xC3, 0xE6, 0x3C, 0x18, 0xF8, 0x40, 0x06, 0x3E, - 0x08, 0x01, 0x87, 0x81, 0x00, 0x31, 0xF0, 0x20, 0x0C, 0x3E, 0x04, 0x01, - 0x87, 0x81, 0x00, 0x60, 0xF0, 0x60, 0x18, 0x1E, 0x08, 0x03, 0x03, 0xC7, - 0x00, 0xC0, 0x3F, 0xC0, 0x18, 0x03, 0xE0, 0x00, 0x7E, 0x00, 0x00, 0x7F, - 0xE0, 0x00, 0x38, 0xF8, 0x00, 0x1E, 0x1F, 0x00, 0x07, 0x83, 0xC0, 0x01, - 0xF0, 0xF0, 0x00, 0x7C, 0x38, 0x00, 0x1F, 0x9C, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFE, 0x0F, 0xF0, 0x3F, 0x80, 0xF0, 0x1F, 0xF0, 0x18, 0x1C, 0xFE, - 0x0C, 0x0E, 0x1F, 0xC3, 0x07, 0x87, 0xF1, 0x81, 0xE0, 0xFE, 0x40, 0xF8, - 0x1F, 0xF0, 0x3F, 0x07, 0xF8, 0x0F, 0xC0, 0xFE, 0x03, 0xF8, 0x1F, 0xC0, - 0xFE, 0x07, 0xF8, 0x9F, 0xE3, 0xFF, 0xE7, 0xFF, 0x9F, 0xF0, 0xFF, 0xC3, - 0xF8, 0x0F, 0x80, 0x3C, 0x00, 0x6F, 0xFF, 0xFF, 0x66, 0x66, 0x00, 0x81, - 0x81, 0x81, 0x81, 0x80, 0xC0, 0xE0, 0x70, 0x70, 0x38, 0x3C, 0x1E, 0x0F, - 0x07, 0x83, 0xC1, 0xE0, 0xF0, 0x78, 0x3C, 0x0E, 0x07, 0x03, 0x80, 0xE0, - 0x70, 0x18, 0x06, 0x01, 0x00, 0x40, 0x10, 0x04, 0x80, 0x30, 0x0C, 0x03, - 0x00, 0xC0, 0x60, 0x38, 0x1C, 0x07, 0x03, 0x81, 0xC0, 0xF0, 0x78, 0x3C, - 0x1E, 0x0F, 0x07, 0x83, 0xC1, 0xE0, 0xE0, 0x70, 0x38, 0x38, 0x1C, 0x0C, - 0x0C, 0x06, 0x04, 0x04, 0x04, 0x00, 0x03, 0x00, 0x1E, 0x00, 0x78, 0x1D, - 0xE6, 0xFB, 0x3D, 0xED, 0xF3, 0xFF, 0x01, 0xC0, 0x7F, 0xF3, 0xED, 0xFF, - 0x33, 0xD9, 0xE6, 0x07, 0x80, 0x1E, 0x00, 0x30, 0x00, 0x00, 0xE0, 0x00, - 0x1C, 0x00, 0x03, 0x80, 0x00, 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, - 0x38, 0x00, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, - 0x70, 0x00, 0x0E, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x00, - 0xE0, 0x00, 0x1C, 0x00, 0x03, 0x80, 0x00, 0x73, 0xEF, 0xFF, 0xFD, 0xF0, - 0xC2, 0x18, 0xC6, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0x7B, 0xFF, 0xFF, 0xFD, - 0xE0, 0x00, 0xE0, 0x3C, 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, - 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, - 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x1C, 0x07, 0x00, 0xE0, 0x00, - 0x03, 0xC0, 0x0E, 0x70, 0x1E, 0x78, 0x3C, 0x3C, 0x3C, 0x3C, 0x7C, 0x3E, - 0x7C, 0x3E, 0x7C, 0x3E, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3E, 0x7C, 0x3E, - 0x7C, 0x3E, 0x3C, 0x3C, 0x3C, 0x3C, 0x1E, 0x78, 0x0E, 0x70, 0x03, 0xC0, - 0x00, 0xC0, 0x3C, 0x0F, 0xC3, 0xFC, 0x4F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, - 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, - 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x0F, 0xC0, 0xFC, 0x1F, 0xEF, 0xFF, - 0x03, 0xE0, 0x0F, 0xF8, 0x1F, 0xFC, 0x3F, 0xFC, 0x30, 0xFE, 0x60, 0x7E, - 0x40, 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x78, - 0x00, 0x70, 0x00, 0xE0, 0x00, 0xC0, 0x01, 0x80, 0x03, 0x00, 0x06, 0x01, - 0x0C, 0x03, 0x1F, 0xFF, 0x1F, 0xFF, 0x3F, 0xFE, 0x7F, 0xFE, 0xFF, 0xFE, - 0x03, 0xF0, 0x0F, 0xF8, 0x3F, 0xFC, 0x21, 0xFE, 0x40, 0xFE, 0x00, 0x7E, - 0x00, 0x7E, 0x00, 0x7C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xFC, 0x03, 0xFE, - 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, - 0x00, 0x0E, 0x70, 0x0E, 0xFC, 0x1C, 0xFE, 0x38, 0x7F, 0xE0, 0x3F, 0x80, - 0x00, 0x38, 0x00, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x1F, 0x80, 0x5F, 0x00, - 0xBE, 0x02, 0x7C, 0x08, 0xF8, 0x31, 0xF0, 0x43, 0xE1, 0x07, 0xC4, 0x0F, - 0x88, 0x1F, 0x20, 0x3E, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, - 0x07, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x0F, 0xFE, 0x1F, - 0xF8, 0x7F, 0xF0, 0xFF, 0xE1, 0x80, 0x03, 0x00, 0x0C, 0x00, 0x18, 0x00, - 0x3F, 0x80, 0xFF, 0xC1, 0xFF, 0xC3, 0xFF, 0xC3, 0xFF, 0x80, 0x3F, 0x80, - 0x0F, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x37, 0x80, 0x4F, 0x81, - 0x9F, 0xC6, 0x3F, 0xF8, 0x1F, 0x80, 0x00, 0x07, 0x00, 0x7C, 0x01, 0xF0, - 0x03, 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x1F, 0x00, 0x3E, 0x00, 0x7E, 0x00, - 0x7F, 0xF0, 0x7F, 0xFC, 0xFC, 0x7E, 0xFC, 0x7E, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, 0x7C, 0x3F, 0x7C, 0x3E, 0x3C, 0x3E, - 0x3E, 0x3C, 0x1E, 0x78, 0x07, 0xE0, 0x7F, 0xFF, 0x7F, 0xFE, 0x7F, 0xFE, - 0xFF, 0xFE, 0xFF, 0xFC, 0xC0, 0x1C, 0x80, 0x18, 0x80, 0x38, 0x00, 0x38, - 0x00, 0x70, 0x00, 0x70, 0x00, 0x70, 0x00, 0xE0, 0x00, 0xE0, 0x00, 0xE0, - 0x01, 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x03, 0x80, 0x03, 0x80, 0x07, 0x80, - 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0F, 0xE0, 0x38, 0x78, 0x70, 0x3C, - 0xF0, 0x1E, 0xF0, 0x1E, 0xF8, 0x1E, 0xF8, 0x1E, 0xFE, 0x3C, 0x7F, 0xB0, - 0x7F, 0xE0, 0x3F, 0xF0, 0x0F, 0xF8, 0x1F, 0xFC, 0x39, 0xFE, 0x70, 0xFF, - 0xF0, 0x3F, 0xF0, 0x3F, 0xF0, 0x1F, 0xF0, 0x1F, 0xF0, 0x1E, 0x78, 0x3E, - 0x7C, 0x7C, 0x3F, 0xF8, 0x0F, 0xE0, 0x07, 0xE0, 0x1E, 0x78, 0x3C, 0x7C, - 0x7C, 0x3C, 0x7C, 0x3E, 0xFC, 0x3E, 0xFC, 0x3F, 0xFC, 0x3F, 0xFC, 0x3F, - 0xFC, 0x3F, 0xFC, 0x3F, 0x7E, 0x3F, 0x7E, 0x3F, 0x3F, 0xFE, 0x0F, 0xFE, - 0x00, 0x7E, 0x00, 0x7C, 0x00, 0xF8, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xC0, - 0x0F, 0x80, 0x3E, 0x00, 0xE0, 0x00, 0x7B, 0xFF, 0xFF, 0xFD, 0xE0, 0x00, - 0x00, 0x07, 0xBF, 0xFF, 0xFF, 0xDE, 0x39, 0xFB, 0xF7, 0xEF, 0xC7, 0x00, - 0x00, 0x00, 0x01, 0xE7, 0xEF, 0xFF, 0xFF, 0xBF, 0x06, 0x08, 0x30, 0xC2, - 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x0F, 0x80, 0x07, 0xF0, - 0x03, 0xFC, 0x01, 0xFE, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x3F, 0x80, 0x1F, - 0xC0, 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x07, 0xF0, 0x00, - 0x3F, 0x80, 0x01, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x7C, 0x00, 0x01, 0x80, - 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, 0x18, 0x00, 0x03, - 0xE0, 0x00, 0x7F, 0x00, 0x07, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, - 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x1F, 0xC0, - 0x0F, 0xE0, 0x07, 0xF0, 0x07, 0xF8, 0x03, 0xFC, 0x00, 0xFE, 0x00, 0x1F, - 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0xFF, 0xC7, 0x1F, - 0xB8, 0x3E, 0xF0, 0xFF, 0xC3, 0xFF, 0x0F, 0xD8, 0x3F, 0x00, 0xF8, 0x07, - 0xC0, 0x1E, 0x00, 0x60, 0x03, 0x00, 0x08, 0x00, 0x20, 0x00, 0x80, 0x00, - 0x00, 0x00, 0x00, 0x70, 0x03, 0xE0, 0x1F, 0x80, 0x7E, 0x01, 0xF8, 0x01, - 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xE0, 0x07, 0xC0, 0xF0, 0x0F, 0x00, - 0x38, 0x1E, 0x00, 0x0C, 0x3C, 0x07, 0x06, 0x38, 0x1F, 0x72, 0x78, 0x3C, - 0xF3, 0x78, 0x78, 0xE1, 0xF0, 0x70, 0xE1, 0xF0, 0xF0, 0xE1, 0xF0, 0xE0, - 0xC1, 0xF1, 0xE1, 0xC1, 0xF1, 0xC1, 0xC1, 0xF1, 0xC3, 0x82, 0xF1, 0xC3, - 0x86, 0x71, 0xC7, 0x8C, 0x79, 0xFB, 0xF8, 0x78, 0xF1, 0xF0, 0x3C, 0x00, - 0x00, 0x1E, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0xC0, 0x78, 0x03, 0xFF, - 0xE0, 0x00, 0x7F, 0x80, 0x00, 0x10, 0x00, 0x00, 0x38, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0xFE, 0x00, 0x01, 0xBF, 0x00, 0x01, 0xBF, 0x00, 0x01, 0x1F, - 0x00, 0x03, 0x1F, 0x80, 0x02, 0x1F, 0x80, 0x06, 0x0F, 0xC0, 0x06, 0x0F, - 0xC0, 0x04, 0x07, 0xE0, 0x0F, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x18, 0x03, - 0xF0, 0x18, 0x03, 0xF0, 0x30, 0x01, 0xF8, 0x30, 0x01, 0xF8, 0x70, 0x01, - 0xFC, 0xFE, 0x0F, 0xFF, 0xFF, 0xFE, 0x07, 0xFF, 0xFE, 0x0F, 0xE1, 0xF8, - 0x3F, 0x07, 0xC1, 0xF8, 0x3F, 0x0F, 0xC1, 0xF8, 0x7E, 0x0F, 0xC3, 0xF0, - 0x7E, 0x1F, 0x87, 0xE0, 0xFC, 0x7C, 0x07, 0xFF, 0x00, 0x3F, 0xFF, 0x01, - 0xF8, 0xFE, 0x0F, 0xC1, 0xF8, 0x7E, 0x0F, 0xC3, 0xF0, 0x3F, 0x1F, 0x81, - 0xF8, 0xFC, 0x0F, 0xC7, 0xE0, 0x7E, 0x3F, 0x03, 0xF1, 0xF8, 0x3F, 0x0F, - 0xC3, 0xF0, 0xFF, 0xFF, 0x1F, 0xFF, 0xC0, 0x00, 0x7E, 0x04, 0x07, 0xFF, - 0x18, 0x1F, 0x07, 0xF0, 0x7C, 0x03, 0xE1, 0xF0, 0x03, 0xC7, 0xC0, 0x03, - 0x9F, 0x80, 0x03, 0x3F, 0x00, 0x06, 0x7C, 0x00, 0x05, 0xF8, 0x00, 0x03, - 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x1F, 0x80, 0x00, 0x3F, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF8, - 0x00, 0x01, 0xF0, 0x00, 0x23, 0xF0, 0x00, 0xC3, 0xF0, 0x07, 0x03, 0xF0, - 0x3C, 0x01, 0xFF, 0xE0, 0x00, 0xFF, 0x00, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, - 0x00, 0x7E, 0x1F, 0x80, 0xFC, 0x1F, 0x81, 0xF8, 0x1F, 0x83, 0xF0, 0x1F, - 0x07, 0xE0, 0x3F, 0x0F, 0xC0, 0x7E, 0x1F, 0x80, 0x7E, 0x3F, 0x00, 0xFC, - 0x7E, 0x01, 0xF8, 0xFC, 0x03, 0xF1, 0xF8, 0x07, 0xE3, 0xF0, 0x0F, 0xC7, - 0xE0, 0x1F, 0x8F, 0xC0, 0x3F, 0x1F, 0x80, 0x7C, 0x3F, 0x01, 0xF8, 0x7E, - 0x03, 0xE0, 0xFC, 0x0F, 0x81, 0xF8, 0x1F, 0x03, 0xF0, 0xFC, 0x0F, 0xFF, - 0xE0, 0x7F, 0xFF, 0x00, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0x0F, 0xC0, 0x78, - 0x7E, 0x01, 0xC3, 0xF0, 0x06, 0x1F, 0x80, 0x10, 0xFC, 0x10, 0x87, 0xE0, - 0x80, 0x3F, 0x0C, 0x01, 0xF8, 0xE0, 0x0F, 0xFF, 0x00, 0x7F, 0xF8, 0x03, - 0xF1, 0xC0, 0x1F, 0x86, 0x00, 0xFC, 0x10, 0x07, 0xE0, 0x80, 0x3F, 0x00, - 0x09, 0xF8, 0x00, 0xCF, 0xC0, 0x0C, 0x7E, 0x00, 0x63, 0xF0, 0x0F, 0x1F, - 0x81, 0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFC, 0xFF, 0xFF, 0xEF, 0xFF, 0xFC, - 0xFC, 0x0F, 0x9F, 0x80, 0x73, 0xF0, 0x06, 0x7E, 0x00, 0x4F, 0xC1, 0x09, - 0xF8, 0x20, 0x3F, 0x0C, 0x07, 0xE3, 0x80, 0xFF, 0xF0, 0x1F, 0xFE, 0x03, - 0xF1, 0xC0, 0x7E, 0x18, 0x0F, 0xC1, 0x01, 0xF8, 0x20, 0x3F, 0x00, 0x07, - 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x1F, - 0xE0, 0x07, 0xFF, 0x00, 0x00, 0x7E, 0x02, 0x01, 0xFF, 0xE3, 0x01, 0xF0, - 0x3F, 0x81, 0xF0, 0x07, 0xC1, 0xF0, 0x01, 0xE1, 0xF0, 0x00, 0x71, 0xF8, - 0x00, 0x18, 0xFC, 0x00, 0x0C, 0x7C, 0x00, 0x02, 0x7E, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, - 0xF0, 0x0F, 0xFF, 0xF8, 0x01, 0xFE, 0x7C, 0x00, 0x7E, 0x3F, 0x00, 0x3F, - 0x1F, 0x80, 0x1F, 0x87, 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xE0, 0xFC, 0x03, - 0xF0, 0x1F, 0x83, 0xF0, 0x07, 0xFF, 0xE0, 0x00, 0x7F, 0x80, 0x00, 0xFF, - 0xC3, 0xFF, 0x7F, 0x81, 0xFE, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0xFF, 0xFC, 0x3F, 0xFF, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x3F, - 0x00, 0xFC, 0x3F, 0x00, 0xFC, 0x7F, 0x81, 0xFE, 0xFF, 0xC3, 0xFF, 0xFF, - 0xEF, 0xF0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, - 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, - 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x1F, 0xE7, 0xFF, 0x07, 0xFF, 0x01, 0xFE, - 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, - 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, - 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, 0x00, 0xFC, - 0x70, 0xFC, 0xF8, 0xFC, 0xF8, 0xF8, 0xF0, 0xF8, 0x71, 0xF0, 0x7F, 0xE0, - 0x1F, 0x80, 0xFF, 0xC3, 0xFF, 0x3F, 0xC0, 0x3E, 0x0F, 0xC0, 0x1C, 0x07, - 0xE0, 0x18, 0x03, 0xF0, 0x18, 0x01, 0xF8, 0x18, 0x00, 0xFC, 0x18, 0x00, - 0x7E, 0x18, 0x00, 0x3F, 0x18, 0x00, 0x1F, 0x9C, 0x00, 0x0F, 0xDF, 0x00, - 0x07, 0xFF, 0xC0, 0x03, 0xFF, 0xF0, 0x01, 0xF9, 0xF8, 0x00, 0xFC, 0xFE, - 0x00, 0x7E, 0x3F, 0x80, 0x3F, 0x0F, 0xE0, 0x1F, 0x83, 0xF8, 0x0F, 0xC0, - 0xFC, 0x07, 0xE0, 0x7F, 0x03, 0xF0, 0x1F, 0xC1, 0xF8, 0x07, 0xF1, 0xFE, - 0x03, 0xFD, 0xFF, 0x8F, 0xFF, 0xFF, 0xE0, 0x03, 0xFC, 0x00, 0x0F, 0xC0, - 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, - 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x01, 0x3F, - 0x00, 0x19, 0xF8, 0x00, 0xCF, 0xC0, 0x0C, 0x7E, 0x00, 0x63, 0xF0, 0x0F, - 0x1F, 0x81, 0xFB, 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0x80, 0x03, 0xFE, - 0x7F, 0x00, 0x07, 0xF8, 0x7E, 0x00, 0x0F, 0xE0, 0xFE, 0x00, 0x3F, 0xC1, - 0x7C, 0x00, 0x5F, 0x82, 0xFC, 0x01, 0xBF, 0x05, 0xF8, 0x02, 0x7E, 0x09, - 0xF8, 0x0C, 0xFC, 0x13, 0xF0, 0x11, 0xF8, 0x23, 0xE0, 0x23, 0xF0, 0x47, - 0xE0, 0xC7, 0xE0, 0x87, 0xC1, 0x0F, 0xC1, 0x0F, 0xC6, 0x1F, 0x82, 0x0F, - 0x88, 0x3F, 0x04, 0x1F, 0xB0, 0x7E, 0x08, 0x3F, 0x60, 0xFC, 0x10, 0x3E, - 0x81, 0xF8, 0x20, 0x7F, 0x03, 0xF0, 0x40, 0x7C, 0x07, 0xE0, 0x80, 0xF8, - 0x0F, 0xC1, 0x00, 0xE0, 0x1F, 0x82, 0x01, 0xC0, 0x3F, 0x0E, 0x03, 0x80, - 0xFF, 0x7F, 0x82, 0x03, 0xFF, 0xFE, 0x00, 0xFE, 0xFE, 0x00, 0x70, 0xFE, - 0x00, 0x40, 0xFE, 0x00, 0x81, 0xFC, 0x01, 0x03, 0xFC, 0x02, 0x05, 0xFC, - 0x04, 0x09, 0xFC, 0x08, 0x11, 0xFC, 0x10, 0x23, 0xF8, 0x20, 0x43, 0xF8, - 0x40, 0x83, 0xF8, 0x81, 0x03, 0xF9, 0x02, 0x03, 0xFA, 0x04, 0x03, 0xF4, - 0x08, 0x07, 0xF8, 0x10, 0x07, 0xF0, 0x20, 0x07, 0xE0, 0x40, 0x07, 0xC0, - 0x80, 0x07, 0x81, 0x00, 0x0F, 0x02, 0x00, 0x0E, 0x0E, 0x00, 0x0C, 0x7F, - 0x00, 0x08, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xF0, 0x01, 0xF0, 0x7C, 0x01, - 0xF0, 0x1F, 0x01, 0xF0, 0x07, 0xC1, 0xF0, 0x01, 0xF1, 0xF8, 0x00, 0xFC, - 0xFC, 0x00, 0x7E, 0x7C, 0x00, 0x1F, 0x7E, 0x00, 0x0F, 0xFF, 0x00, 0x07, - 0xFF, 0x80, 0x03, 0xFF, 0xC0, 0x01, 0xFF, 0xE0, 0x00, 0xFF, 0xF0, 0x00, - 0x7F, 0xF8, 0x00, 0x3F, 0x7C, 0x00, 0x1F, 0x3E, 0x00, 0x1F, 0x9F, 0x80, - 0x0F, 0xC7, 0xC0, 0x07, 0xC1, 0xF0, 0x07, 0xC0, 0xFC, 0x07, 0xE0, 0x3F, - 0x07, 0xC0, 0x07, 0xFF, 0xC0, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0xFC, 0x0F, - 0xFF, 0xE0, 0xFC, 0x7E, 0x1F, 0x87, 0xE3, 0xF0, 0x7E, 0x7E, 0x0F, 0xCF, - 0xC1, 0xF9, 0xF8, 0x3F, 0x3F, 0x07, 0xE7, 0xE0, 0xFC, 0xFC, 0x3F, 0x1F, - 0x8F, 0xC3, 0xFF, 0xF0, 0x7F, 0xF8, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, - 0x00, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, - 0x00, 0x1F, 0xE0, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x01, 0xFF, 0xF0, - 0x01, 0xF0, 0x7C, 0x01, 0xF0, 0x1F, 0x01, 0xF0, 0x07, 0xC1, 0xF0, 0x01, - 0xF1, 0xF8, 0x00, 0xFC, 0xFC, 0x00, 0x7E, 0x7C, 0x00, 0x1F, 0x7E, 0x00, - 0x0F, 0xFF, 0x00, 0x07, 0xFF, 0x80, 0x03, 0xFF, 0xC0, 0x01, 0xFF, 0xE0, - 0x00, 0xFF, 0xF0, 0x00, 0x7F, 0xF8, 0x00, 0x3F, 0x7C, 0x00, 0x1F, 0x3E, - 0x00, 0x0F, 0x9F, 0x80, 0x0F, 0xC7, 0xC0, 0x07, 0xC1, 0xF0, 0x07, 0xC0, - 0x78, 0x03, 0xC0, 0x1E, 0x07, 0xC0, 0x03, 0xFF, 0x80, 0x00, 0x7F, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x0F, 0xF0, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, - 0xF8, 0x00, 0x0F, 0xE0, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0x00, 0xFC, 0x3F, - 0x01, 0xF8, 0x3F, 0x03, 0xF0, 0x3F, 0x07, 0xE0, 0x7E, 0x0F, 0xC0, 0xFC, - 0x1F, 0x81, 0xF8, 0x3F, 0x03, 0xF0, 0x7E, 0x07, 0xC0, 0xFC, 0x1F, 0x81, - 0xF8, 0x7E, 0x03, 0xFF, 0xF0, 0x07, 0xFF, 0xC0, 0x0F, 0xDF, 0xC0, 0x1F, - 0x9F, 0x80, 0x3F, 0x1F, 0x80, 0x7E, 0x3F, 0x80, 0xFC, 0x3F, 0x81, 0xF8, - 0x3F, 0x03, 0xF0, 0x7F, 0x07, 0xE0, 0x7F, 0x1F, 0xE0, 0x7F, 0x7F, 0xE0, - 0xFF, 0x07, 0xC2, 0x1F, 0xF2, 0x3C, 0x3E, 0x70, 0x0E, 0xF0, 0x06, 0xF0, - 0x06, 0xF0, 0x02, 0xF8, 0x00, 0xFE, 0x00, 0xFF, 0x80, 0x7F, 0xE0, 0x3F, - 0xF8, 0x1F, 0xFC, 0x0F, 0xFE, 0x03, 0xFE, 0x00, 0xFF, 0x00, 0x3F, 0x80, - 0x1F, 0xC0, 0x0F, 0xC0, 0x0F, 0xE0, 0x0E, 0xF0, 0x1E, 0xF8, 0x3C, 0x9F, - 0xF8, 0x87, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x7E, 0x3F, 0x83, - 0xF0, 0x7C, 0x1F, 0x81, 0xC0, 0xFC, 0x06, 0x07, 0xE0, 0x20, 0x3F, 0x00, - 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, - 0x80, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, - 0x0F, 0xC0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, - 0x00, 0x0F, 0xF0, 0x01, 0xFF, 0xE0, 0xFF, 0xC1, 0xFD, 0xFE, 0x01, 0xC3, - 0xF0, 0x02, 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, - 0x02, 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, 0x02, - 0x0F, 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, 0x02, 0x0F, - 0xC0, 0x08, 0x3F, 0x00, 0x20, 0xFC, 0x00, 0x83, 0xF0, 0x02, 0x0F, 0xC0, - 0x18, 0x1F, 0x80, 0x40, 0x7E, 0x03, 0x00, 0xFC, 0x18, 0x01, 0xFF, 0xC0, - 0x00, 0xFC, 0x00, 0xFF, 0xF0, 0x7F, 0x3F, 0xC0, 0x1E, 0x1F, 0x80, 0x0C, - 0x1F, 0x80, 0x08, 0x0F, 0xC0, 0x18, 0x0F, 0xC0, 0x18, 0x07, 0xE0, 0x10, - 0x07, 0xE0, 0x30, 0x07, 0xE0, 0x20, 0x03, 0xF0, 0x60, 0x03, 0xF0, 0x60, - 0x01, 0xF8, 0x40, 0x01, 0xF8, 0xC0, 0x00, 0xF8, 0x80, 0x00, 0xFC, 0x80, - 0x00, 0xFD, 0x80, 0x00, 0x7F, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3E, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x1C, 0x00, - 0x00, 0x0C, 0x00, 0xFF, 0xE7, 0xFF, 0x0F, 0xCF, 0xE0, 0x7F, 0x00, 0xE1, - 0xF8, 0x0F, 0xC0, 0x30, 0x7E, 0x03, 0xF0, 0x0C, 0x1F, 0x80, 0x7C, 0x02, - 0x03, 0xE0, 0x1F, 0x81, 0x80, 0xFC, 0x07, 0xE0, 0x60, 0x3F, 0x03, 0xF8, - 0x10, 0x07, 0xC0, 0xBF, 0x0C, 0x01, 0xF8, 0x2F, 0xC3, 0x00, 0x7E, 0x19, - 0xF0, 0x80, 0x0F, 0x84, 0x7C, 0x60, 0x03, 0xF3, 0x0F, 0x98, 0x00, 0xFC, - 0xC3, 0xE4, 0x00, 0x1F, 0x20, 0xFB, 0x00, 0x07, 0xF8, 0x1F, 0xC0, 0x00, - 0xFC, 0x07, 0xE0, 0x00, 0x3F, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x3E, 0x00, - 0x01, 0xE0, 0x0F, 0x00, 0x00, 0x78, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x70, - 0x00, 0x03, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x06, 0x00, 0x00, 0x20, 0x00, - 0x80, 0x00, 0xFF, 0xF3, 0xFE, 0x7F, 0x80, 0x78, 0x3F, 0x80, 0x70, 0x1F, - 0xC0, 0x60, 0x0F, 0xC0, 0xC0, 0x0F, 0xE1, 0x80, 0x07, 0xF1, 0x00, 0x03, - 0xF3, 0x00, 0x03, 0xFE, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7F, 0x00, 0x00, 0xFF, 0x80, 0x00, - 0x9F, 0x80, 0x01, 0x8F, 0xC0, 0x03, 0x0F, 0xE0, 0x06, 0x07, 0xE0, 0x06, - 0x07, 0xF0, 0x0C, 0x03, 0xF8, 0x1C, 0x03, 0xF8, 0x3C, 0x03, 0xFC, 0xFF, - 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0x7F, 0x80, 0x1E, 0x3F, 0x80, 0x1C, 0x1F, - 0x80, 0x18, 0x1F, 0xC0, 0x10, 0x0F, 0xC0, 0x30, 0x07, 0xE0, 0x20, 0x07, - 0xE0, 0x60, 0x03, 0xF0, 0xC0, 0x03, 0xF0, 0x80, 0x01, 0xF9, 0x80, 0x01, - 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFF, 0x00, 0x01, - 0xFF, 0x80, 0x7F, 0xFF, 0xF3, 0xFF, 0xFF, 0x9F, 0x01, 0xF8, 0xE0, 0x1F, - 0x86, 0x01, 0xFC, 0x20, 0x0F, 0xC1, 0x00, 0xFC, 0x00, 0x07, 0xE0, 0x00, - 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x80, - 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x01, 0x0F, 0xC0, 0x18, 0xFC, - 0x00, 0xC7, 0xE0, 0x06, 0x7E, 0x00, 0x77, 0xF0, 0x07, 0x3F, 0x00, 0xFB, - 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0xFF, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, - 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xE0, 0x1E, - 0x01, 0xC0, 0x38, 0x07, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x1C, 0x03, 0x80, - 0x70, 0x07, 0x00, 0xE0, 0x1C, 0x01, 0xC0, 0x38, 0x07, 0x00, 0x70, 0x0E, - 0x01, 0xC0, 0x1C, 0x03, 0x80, 0x70, 0x0F, 0x00, 0xE0, 0xFF, 0xFF, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, - 0xFF, 0xFF, 0x03, 0x80, 0x0F, 0x00, 0x1F, 0x00, 0x7E, 0x00, 0xEE, 0x03, - 0x9C, 0x07, 0x1C, 0x1C, 0x38, 0x38, 0x38, 0xE0, 0x71, 0xC0, 0x77, 0x00, - 0xEE, 0x00, 0xE0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xE0, 0xF0, - 0x78, 0x3C, 0x0E, 0x07, 0x0F, 0xE0, 0x3F, 0xF0, 0x78, 0xF8, 0x78, 0x7C, - 0x78, 0x7C, 0x38, 0x7C, 0x00, 0x7C, 0x03, 0xFC, 0x1E, 0x7C, 0x7C, 0x7C, - 0xFC, 0x7C, 0xFC, 0x7C, 0xFC, 0xFC, 0xFF, 0xFD, 0x7F, 0x7F, 0x3C, 0x3C, - 0xFC, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0xF8, 0x1F, 0x7F, 0x87, 0xE3, - 0xF1, 0xF0, 0x7E, 0x7C, 0x0F, 0x9F, 0x03, 0xF7, 0xC0, 0xFD, 0xF0, 0x3F, - 0x7C, 0x0F, 0xDF, 0x03, 0xF7, 0xC0, 0xFD, 0xF0, 0x3E, 0x7C, 0x1F, 0x1F, - 0x8F, 0xC6, 0x7F, 0xC1, 0x07, 0xC0, 0x07, 0xC0, 0x7F, 0xC3, 0xC7, 0x9F, - 0x1E, 0x78, 0x7B, 0xE1, 0xCF, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, - 0x80, 0x3F, 0x00, 0x7C, 0x00, 0xFC, 0x61, 0xFF, 0x03, 0xF0, 0x00, 0x7F, - 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, - 0x01, 0xF0, 0x00, 0x7C, 0x07, 0x9F, 0x07, 0xF7, 0xC3, 0xE3, 0xF1, 0xF8, - 0x7C, 0x7C, 0x1F, 0x3F, 0x07, 0xCF, 0xC1, 0xF3, 0xF0, 0x7C, 0xFC, 0x1F, - 0x3F, 0x07, 0xCF, 0xC1, 0xF1, 0xF0, 0x7C, 0x7E, 0x1F, 0x0F, 0x8F, 0xC1, - 0xFD, 0xFC, 0x3E, 0x70, 0x0F, 0xC0, 0x7F, 0xC3, 0xC7, 0x1E, 0x1E, 0xF8, - 0x7B, 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0xC0, 0x1F, - 0x03, 0x7E, 0x18, 0xFF, 0xC1, 0xFE, 0x03, 0xF0, 0x0F, 0x83, 0xF8, 0xF3, - 0xBE, 0xF7, 0xDC, 0xF8, 0x1F, 0x03, 0xE0, 0xFF, 0x1F, 0xE1, 0xF0, 0x3E, - 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, - 0xC0, 0xF8, 0x1F, 0x07, 0xF8, 0x0F, 0xC0, 0x1F, 0xFF, 0xDF, 0x1F, 0xFF, - 0x07, 0x8F, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, 0x7C, 0x78, 0x3C, - 0x1E, 0x3E, 0x03, 0xFC, 0x03, 0x00, 0x07, 0x00, 0x07, 0x80, 0x03, 0xFF, - 0xF1, 0xFF, 0xFE, 0x7F, 0xFF, 0x8F, 0xFF, 0xF8, 0x01, 0xFC, 0x00, 0x7F, - 0x00, 0x73, 0xFF, 0xF0, 0x7F, 0xC0, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x00, - 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x00, 0xF8, 0x00, 0x7C, - 0x7C, 0x3E, 0xFF, 0x1F, 0xCF, 0xCF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, - 0xF0, 0x7C, 0xF8, 0x3E, 0x7C, 0x1F, 0x3E, 0x0F, 0x9F, 0x07, 0xCF, 0x83, - 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, 0x7D, 0xFC, 0x7F, 0x39, 0xFB, 0xF7, - 0xE7, 0x80, 0x00, 0x00, 0xFC, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, - 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x7F, 0x03, 0xC0, 0xFC, 0x1F, 0x83, 0xF0, - 0x3C, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, - 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, - 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7D, 0xCF, 0xF9, 0xEE, 0x7C, 0xFF, 0x0F, - 0x80, 0xFC, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x7F, 0x9F, 0x07, 0x87, - 0xC1, 0x81, 0xF0, 0xC0, 0x7C, 0x60, 0x1F, 0x30, 0x07, 0xDE, 0x01, 0xFF, - 0xC0, 0x7F, 0xF0, 0x1F, 0x3E, 0x07, 0xCF, 0xC1, 0xF1, 0xF8, 0x7C, 0x3E, - 0x1F, 0x07, 0xC7, 0xC1, 0xFB, 0xF9, 0xFF, 0xFC, 0xF9, 0xF3, 0xE7, 0xCF, - 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, - 0xE7, 0xCF, 0x9F, 0x7F, 0xFC, 0x7C, 0x1F, 0x0F, 0xBF, 0xCF, 0xF1, 0xF8, - 0xFF, 0x3F, 0x3E, 0x0F, 0x83, 0xE7, 0xC1, 0xF0, 0x7C, 0xF8, 0x3E, 0x0F, - 0x9F, 0x07, 0xC1, 0xF3, 0xE0, 0xF8, 0x3E, 0x7C, 0x1F, 0x07, 0xCF, 0x83, - 0xE0, 0xF9, 0xF0, 0x7C, 0x1F, 0x3E, 0x0F, 0x83, 0xE7, 0xC1, 0xF0, 0x7C, - 0xF8, 0x3E, 0x0F, 0x9F, 0x07, 0xC1, 0xF7, 0xF1, 0xFC, 0x7F, 0xFC, 0x7C, - 0x3E, 0xFF, 0x1F, 0xCF, 0xCF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, - 0x7C, 0xF8, 0x3E, 0x7C, 0x1F, 0x3E, 0x0F, 0x9F, 0x07, 0xCF, 0x83, 0xE7, - 0xC1, 0xF3, 0xE0, 0xF9, 0xF0, 0x7D, 0xFC, 0x7F, 0x07, 0xF0, 0x0F, 0xFE, - 0x0F, 0x8F, 0x8F, 0x87, 0xE7, 0xC1, 0xF7, 0xE0, 0xFF, 0xF0, 0x7F, 0xF8, - 0x3F, 0xFC, 0x1F, 0xFE, 0x0F, 0xFF, 0x07, 0xEF, 0x83, 0xE7, 0xC1, 0xF1, - 0xF1, 0xF0, 0x7F, 0xF0, 0x0F, 0xE0, 0xFE, 0x7C, 0x07, 0xDF, 0xE0, 0xFE, - 0x3E, 0x1F, 0x07, 0xE3, 0xE0, 0x7C, 0x7C, 0x0F, 0xCF, 0x81, 0xF9, 0xF0, - 0x3F, 0x3E, 0x07, 0xE7, 0xC0, 0xFC, 0xF8, 0x1F, 0x9F, 0x03, 0xE3, 0xE0, - 0xFC, 0x7E, 0x3F, 0x0F, 0xBF, 0xC1, 0xF3, 0xE0, 0x3E, 0x00, 0x07, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7E, 0x00, 0x1F, 0xE0, - 0x00, 0x07, 0xC1, 0x0F, 0xF9, 0x8F, 0xCD, 0xCF, 0xC3, 0xE7, 0xC1, 0xF7, - 0xE0, 0xFB, 0xF0, 0x7D, 0xF8, 0x3E, 0xFC, 0x1F, 0x7E, 0x0F, 0xBF, 0x07, - 0xDF, 0x83, 0xE7, 0xE1, 0xF1, 0xF1, 0xF8, 0x7F, 0x7C, 0x1F, 0x3E, 0x00, - 0x1F, 0x00, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xE0, 0x01, 0xF0, 0x01, 0xF8, - 0x01, 0xFE, 0xFC, 0x73, 0xEF, 0xDF, 0xFE, 0xFC, 0xF7, 0xC3, 0xBE, 0x01, - 0xF0, 0x0F, 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x07, 0xC0, 0x3E, - 0x01, 0xF0, 0x1F, 0xE0, 0x1E, 0x23, 0xFE, 0x70, 0xEE, 0x06, 0xE0, 0x2F, - 0x80, 0xFF, 0x07, 0xFC, 0x3F, 0xE0, 0xFF, 0x81, 0xF8, 0x07, 0xC0, 0x7E, - 0x0E, 0xBF, 0xC8, 0xF8, 0x04, 0x03, 0x01, 0xC0, 0xF0, 0x7C, 0x3F, 0xEF, - 0xF9, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, 0x7C, 0x1F, 0x07, 0xC1, 0xF0, - 0x7C, 0x5F, 0x37, 0xF8, 0xFE, 0x1E, 0x00, 0xFC, 0x7F, 0x1F, 0x07, 0xC7, - 0xC1, 0xF1, 0xF0, 0x7C, 0x7C, 0x1F, 0x1F, 0x07, 0xC7, 0xC1, 0xF1, 0xF0, - 0x7C, 0x7C, 0x1F, 0x1F, 0x07, 0xC7, 0xC1, 0xF1, 0xF0, 0x7C, 0x7C, 0x1F, - 0x1F, 0x8F, 0xC3, 0xFD, 0xFC, 0x7C, 0x60, 0xFF, 0x9F, 0xBF, 0x83, 0x0F, - 0x81, 0x87, 0xE0, 0x81, 0xF0, 0x40, 0xF8, 0x40, 0x3E, 0x20, 0x1F, 0x30, - 0x07, 0xD0, 0x03, 0xF8, 0x00, 0xF8, 0x00, 0x7C, 0x00, 0x3C, 0x00, 0x0E, - 0x00, 0x07, 0x00, 0x01, 0x00, 0xFF, 0x3F, 0xCF, 0x7E, 0x1F, 0x06, 0x3E, - 0x0F, 0x06, 0x3E, 0x0F, 0x84, 0x1F, 0x0F, 0x8C, 0x1F, 0x1F, 0x88, 0x0F, - 0x17, 0xC8, 0x0F, 0x97, 0xD8, 0x0F, 0xB3, 0xD0, 0x07, 0xE3, 0xF0, 0x07, - 0xE3, 0xE0, 0x03, 0xC1, 0xE0, 0x03, 0xC1, 0xE0, 0x03, 0x81, 0xC0, 0x01, - 0x80, 0xC0, 0x01, 0x80, 0x80, 0xFF, 0x3F, 0x7E, 0x0C, 0x3E, 0x08, 0x3F, - 0x18, 0x1F, 0x30, 0x0F, 0xE0, 0x0F, 0xC0, 0x07, 0xE0, 0x03, 0xE0, 0x03, - 0xF0, 0x05, 0xF8, 0x0C, 0xF8, 0x18, 0xFC, 0x30, 0x7E, 0x70, 0x7E, 0xFC, - 0xFF, 0xFF, 0x3F, 0x7E, 0x0C, 0x7C, 0x0C, 0x3E, 0x08, 0x3E, 0x08, 0x1E, - 0x18, 0x1F, 0x10, 0x0F, 0x30, 0x0F, 0xA0, 0x0F, 0xA0, 0x07, 0xE0, 0x07, - 0xC0, 0x03, 0xC0, 0x03, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x00, 0x01, - 0x00, 0x61, 0x00, 0xF2, 0x00, 0xF6, 0x00, 0xFC, 0x00, 0x78, 0x00, 0x7F, - 0xFD, 0xFF, 0xF7, 0x0F, 0xD0, 0x3E, 0x01, 0xF0, 0x0F, 0xC0, 0x3E, 0x01, - 0xF0, 0x0F, 0xC0, 0x3E, 0x01, 0xF8, 0x0F, 0xC1, 0x3E, 0x05, 0xF8, 0x7F, - 0xFF, 0xFF, 0xFF, 0x01, 0xE0, 0xF8, 0x3E, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0xC0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x07, 0x87, - 0x80, 0x1E, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, - 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF8, 0x0F, 0x80, 0x78, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, 0xF0, 0x0F, 0x80, 0xF0, - 0x0F, 0x01, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, - 0x01, 0xE0, 0x3C, 0x03, 0xC0, 0x0F, 0x0F, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, 0xE0, - 0xF8, 0x3C, 0x00, 0x3E, 0x00, 0x7F, 0xC6, 0xFF, 0xFF, 0x61, 0xFE, 0x00, - 0x7C}; - -const GFXglyph FreeSerifBold18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 6, 24, 12, 3, -23}, // 0x21 '!' - {18, 13, 10, 19, 3, -23}, // 0x22 '"' - {35, 18, 24, 17, 0, -23}, // 0x23 '#' - {89, 15, 28, 17, 1, -25}, // 0x24 '$' - {142, 27, 24, 35, 4, -23}, // 0x25 '%' - {223, 26, 25, 29, 2, -23}, // 0x26 '&' - {305, 4, 10, 10, 3, -23}, // 0x27 ''' - {310, 9, 30, 12, 2, -23}, // 0x28 '(' - {344, 9, 30, 12, 1, -23}, // 0x29 ')' - {378, 14, 15, 18, 2, -23}, // 0x2A '*' - {405, 19, 19, 24, 2, -17}, // 0x2B '+' - {451, 6, 12, 9, 1, -5}, // 0x2C ',' - {460, 8, 4, 12, 2, -9}, // 0x2D '-' - {464, 6, 6, 9, 1, -5}, // 0x2E '.' - {469, 11, 25, 10, -1, -23}, // 0x2F '/' - {504, 16, 24, 18, 1, -23}, // 0x30 '0' - {552, 12, 24, 18, 3, -23}, // 0x31 '1' - {588, 16, 24, 17, 1, -23}, // 0x32 '2' - {636, 16, 24, 18, 0, -23}, // 0x33 '3' - {684, 15, 24, 18, 1, -23}, // 0x34 '4' - {729, 15, 24, 18, 1, -23}, // 0x35 '5' - {774, 16, 24, 18, 1, -23}, // 0x36 '6' - {822, 16, 24, 17, 1, -23}, // 0x37 '7' - {870, 16, 24, 17, 1, -23}, // 0x38 '8' - {918, 16, 24, 18, 1, -23}, // 0x39 '9' - {966, 6, 16, 12, 3, -15}, // 0x3A ':' - {978, 7, 22, 12, 2, -15}, // 0x3B ';' - {998, 19, 20, 24, 2, -18}, // 0x3C '<' - {1046, 19, 12, 24, 2, -14}, // 0x3D '=' - {1075, 19, 20, 24, 3, -18}, // 0x3E '>' - {1123, 14, 24, 18, 2, -23}, // 0x3F '?' - {1165, 24, 25, 33, 4, -23}, // 0x40 '@' - {1240, 24, 24, 25, 1, -23}, // 0x41 'A' - {1312, 21, 24, 23, 1, -23}, // 0x42 'B' - {1375, 23, 25, 25, 1, -23}, // 0x43 'C' - {1447, 23, 24, 26, 1, -23}, // 0x44 'D' - {1516, 21, 24, 23, 2, -23}, // 0x45 'E' - {1579, 19, 24, 22, 2, -23}, // 0x46 'F' - {1636, 25, 25, 27, 1, -23}, // 0x47 'G' - {1715, 24, 24, 27, 2, -23}, // 0x48 'H' - {1787, 11, 24, 14, 2, -23}, // 0x49 'I' - {1820, 16, 27, 18, 0, -23}, // 0x4A 'J' - {1874, 25, 24, 27, 2, -23}, // 0x4B 'K' - {1949, 21, 24, 23, 2, -23}, // 0x4C 'L' - {2012, 31, 24, 33, 1, -23}, // 0x4D 'M' - {2105, 23, 24, 25, 1, -23}, // 0x4E 'N' - {2174, 25, 25, 27, 1, -23}, // 0x4F 'O' - {2253, 19, 24, 22, 2, -23}, // 0x50 'P' - {2310, 25, 30, 27, 1, -23}, // 0x51 'Q' - {2404, 23, 24, 25, 2, -23}, // 0x52 'R' - {2473, 16, 25, 20, 2, -23}, // 0x53 'S' - {2523, 21, 24, 23, 1, -23}, // 0x54 'T' - {2586, 22, 25, 25, 2, -23}, // 0x55 'U' - {2655, 24, 24, 25, 0, -23}, // 0x56 'V' - {2727, 34, 25, 34, 0, -23}, // 0x57 'W' - {2834, 24, 24, 25, 1, -23}, // 0x58 'X' - {2906, 24, 24, 25, 1, -23}, // 0x59 'Y' - {2978, 21, 24, 23, 1, -23}, // 0x5A 'Z' - {3041, 8, 29, 12, 2, -23}, // 0x5B '[' - {3070, 11, 25, 10, -1, -23}, // 0x5C '\' - {3105, 8, 29, 12, 2, -23}, // 0x5D ']' - {3134, 15, 13, 20, 3, -23}, // 0x5E '^' - {3159, 18, 3, 17, 0, 3}, // 0x5F '_' - {3166, 8, 6, 12, 0, -23}, // 0x60 '`' - {3172, 16, 16, 18, 1, -15}, // 0x61 'a' - {3204, 18, 24, 19, 1, -23}, // 0x62 'b' - {3258, 14, 16, 15, 1, -15}, // 0x63 'c' - {3286, 18, 24, 19, 1, -23}, // 0x64 'd' - {3340, 14, 16, 16, 1, -15}, // 0x65 'e' - {3368, 11, 24, 14, 2, -23}, // 0x66 'f' - {3401, 17, 23, 17, 1, -15}, // 0x67 'g' - {3450, 17, 24, 19, 1, -23}, // 0x68 'h' - {3501, 7, 24, 10, 2, -23}, // 0x69 'i' - {3522, 11, 31, 14, 0, -23}, // 0x6A 'j' - {3565, 18, 24, 19, 1, -23}, // 0x6B 'k' - {3619, 7, 24, 10, 1, -23}, // 0x6C 'l' - {3640, 27, 16, 29, 1, -15}, // 0x6D 'm' - {3694, 17, 16, 19, 1, -15}, // 0x6E 'n' - {3728, 17, 16, 18, 1, -15}, // 0x6F 'o' - {3762, 19, 23, 19, 0, -15}, // 0x70 'p' - {3817, 17, 23, 19, 1, -15}, // 0x71 'q' - {3866, 13, 16, 15, 1, -15}, // 0x72 'r' - {3892, 12, 16, 14, 1, -15}, // 0x73 's' - {3916, 10, 21, 12, 1, -20}, // 0x74 't' - {3943, 18, 16, 20, 1, -15}, // 0x75 'u' - {3979, 17, 16, 17, 0, -15}, // 0x76 'v' - {4013, 24, 16, 25, 0, -15}, // 0x77 'w' - {4061, 16, 16, 18, 1, -15}, // 0x78 'x' - {4093, 16, 23, 17, 0, -15}, // 0x79 'y' - {4139, 14, 16, 16, 0, -15}, // 0x7A 'z' - {4167, 11, 31, 14, 1, -24}, // 0x7B '{' - {4210, 3, 25, 8, 2, -23}, // 0x7C '|' - {4220, 11, 31, 14, 3, -24}, // 0x7D '}' - {4263, 16, 5, 18, 1, -11}}; // 0x7E '~' - -const GFXfont FreeSerifBold18pt7b PROGMEM = { - (uint8_t *)FreeSerifBold18pt7bBitmaps, - (GFXglyph *)FreeSerifBold18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 4945 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h deleted file mode 100644 index e6681f5..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold24pt7b.h +++ /dev/null @@ -1,761 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold24pt7bBitmaps[] PROGMEM = { - 0x3C, 0x7E, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x7E, 0x7C, 0x7C, - 0x3C, 0x3C, 0x38, 0x38, 0x38, 0x38, 0x18, 0x10, 0x10, 0x10, 0x00, 0x00, - 0x00, 0x00, 0x3C, 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x3C, 0x70, 0x07, - 0x7C, 0x07, 0xFE, 0x03, 0xFF, 0x01, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xC0, - 0x3E, 0xE0, 0x0E, 0x70, 0x07, 0x38, 0x03, 0x9C, 0x01, 0xC4, 0x00, 0xE2, - 0x00, 0x20, 0x00, 0xF0, 0x70, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0x0F, - 0x07, 0x80, 0x1E, 0x0F, 0x00, 0x3C, 0x1E, 0x00, 0x78, 0x3C, 0x00, 0xF0, - 0x78, 0x01, 0xC0, 0xE0, 0x03, 0x81, 0xC0, 0xFF, 0xFF, 0xF9, 0xFF, 0xFF, - 0xF3, 0xFF, 0xFF, 0xE0, 0x78, 0x3C, 0x00, 0xF0, 0x78, 0x01, 0xC0, 0xE0, - 0x03, 0x81, 0xC0, 0x0F, 0x07, 0x80, 0x1E, 0x0F, 0x00, 0x3C, 0x1E, 0x0F, - 0xFF, 0xFF, 0xDF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFF, 0x03, 0x81, 0xC0, 0x0F, - 0x07, 0x80, 0x1E, 0x0F, 0x00, 0x3C, 0x1E, 0x00, 0x78, 0x3C, 0x00, 0xF0, - 0x78, 0x01, 0xE0, 0xE0, 0x03, 0x81, 0xC0, 0x07, 0x07, 0x80, 0x1E, 0x0F, - 0x00, 0x00, 0x60, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, - 0x7F, 0xF0, 0x0F, 0x37, 0xE0, 0xE1, 0x8F, 0x8E, 0x0C, 0x3C, 0x70, 0x60, - 0xE7, 0x83, 0x03, 0x3C, 0x18, 0x19, 0xF0, 0xC0, 0x4F, 0xC6, 0x02, 0x7F, - 0xF0, 0x03, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x3F, 0xFC, 0x00, 0xFF, 0xF0, - 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0x80, 0x1F, 0xFE, 0x00, 0x3F, 0xF8, 0x01, - 0xFF, 0xC0, 0x0C, 0xFF, 0x00, 0x63, 0xFA, 0x03, 0x0F, 0xD0, 0x18, 0x3E, - 0x80, 0xC1, 0xF6, 0x06, 0x0F, 0xB8, 0x30, 0x79, 0xC1, 0x87, 0xCF, 0x0C, - 0x3C, 0x7E, 0x67, 0xC0, 0xFF, 0xF8, 0x00, 0xFE, 0x00, 0x00, 0xC0, 0x00, - 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x30, - 0x00, 0x3E, 0x00, 0x0C, 0x00, 0x0F, 0xF0, 0x03, 0x80, 0x07, 0xE7, 0x03, - 0xE0, 0x01, 0xF8, 0x7F, 0xFC, 0x00, 0x3E, 0x07, 0xF7, 0x00, 0x0F, 0xC0, - 0x80, 0xE0, 0x03, 0xF0, 0x10, 0x38, 0x00, 0x7E, 0x02, 0x07, 0x00, 0x0F, - 0x80, 0x41, 0xC0, 0x03, 0xF0, 0x10, 0x30, 0x00, 0x7E, 0x02, 0x0E, 0x00, - 0x0F, 0x80, 0xC1, 0x80, 0x01, 0xF0, 0x10, 0x70, 0x00, 0x3E, 0x06, 0x1C, - 0x00, 0x07, 0xC1, 0x83, 0x80, 0x00, 0x7C, 0x60, 0xE0, 0x1F, 0x07, 0xF8, - 0x18, 0x0F, 0xF8, 0x7C, 0x07, 0x07, 0xF1, 0x00, 0x00, 0xC1, 0xF8, 0x10, - 0x00, 0x38, 0x3F, 0x02, 0x00, 0x06, 0x0F, 0xC0, 0x40, 0x01, 0xC3, 0xF0, - 0x08, 0x00, 0x30, 0x7E, 0x01, 0x00, 0x0E, 0x1F, 0x80, 0x40, 0x03, 0x83, - 0xF0, 0x08, 0x00, 0x60, 0x7E, 0x01, 0x00, 0x1C, 0x0F, 0x80, 0x40, 0x03, - 0x01, 0xF0, 0x18, 0x00, 0xE0, 0x3E, 0x02, 0x00, 0x18, 0x03, 0xC0, 0xC0, - 0x07, 0x00, 0x7C, 0x70, 0x00, 0xC0, 0x07, 0xFC, 0x00, 0x38, 0x00, 0x7E, - 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x07, 0x8F, - 0xE0, 0x00, 0x03, 0xC1, 0xF8, 0x00, 0x00, 0xF0, 0x3F, 0x00, 0x00, 0x7C, - 0x07, 0xC0, 0x00, 0x1F, 0x01, 0xF0, 0x00, 0x07, 0xE0, 0x7C, 0x00, 0x01, - 0xF8, 0x1E, 0x00, 0x00, 0x7F, 0x07, 0x80, 0x00, 0x1F, 0xE3, 0x80, 0x00, - 0x03, 0xFF, 0xC0, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x00, 0x1F, 0xE0, 0x3F, - 0xF0, 0x07, 0xFC, 0x01, 0xF0, 0x07, 0xFF, 0x00, 0x78, 0x07, 0xBF, 0xE0, - 0x1C, 0x03, 0x87, 0xFC, 0x07, 0x01, 0xE0, 0xFF, 0x81, 0x80, 0xF0, 0x3F, - 0xE0, 0xC0, 0x7C, 0x07, 0xFC, 0x30, 0x1F, 0x00, 0xFF, 0x98, 0x0F, 0xC0, - 0x3F, 0xFC, 0x03, 0xF0, 0x07, 0xFF, 0x00, 0xFE, 0x00, 0xFF, 0x80, 0x3F, - 0x80, 0x3F, 0xF0, 0x0F, 0xF0, 0x07, 0xFE, 0x03, 0xFC, 0x00, 0xFF, 0x81, - 0x7F, 0x80, 0x3F, 0xF8, 0xDF, 0xF0, 0x1F, 0xFF, 0xE3, 0xFF, 0x0E, 0xFF, - 0xF8, 0xFF, 0xFE, 0x1F, 0xFC, 0x0F, 0xFE, 0x03, 0xFE, 0x00, 0xFE, 0x00, - 0x3E, 0x00, 0x77, 0xFF, 0xFF, 0xFF, 0xEE, 0x73, 0x9C, 0xE2, 0x00, 0x00, - 0x00, 0x03, 0x00, 0x60, 0x1C, 0x03, 0x80, 0x70, 0x06, 0x00, 0xE0, 0x1C, - 0x01, 0xC0, 0x3C, 0x03, 0xC0, 0x78, 0x07, 0x80, 0x78, 0x07, 0x80, 0xF8, - 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0xF8, 0x0F, 0x80, 0xF8, - 0x0F, 0x80, 0x78, 0x07, 0x80, 0x78, 0x03, 0xC0, 0x3C, 0x01, 0xC0, 0x1C, - 0x00, 0xE0, 0x0E, 0x00, 0x70, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x03, 0x00, - 0x10, 0x00, 0x0C, 0x00, 0x60, 0x03, 0x00, 0x18, 0x00, 0xC0, 0x06, 0x00, - 0x70, 0x03, 0x80, 0x38, 0x03, 0xC0, 0x3C, 0x03, 0xE0, 0x1E, 0x01, 0xE0, - 0x1E, 0x01, 0xF0, 0x1F, 0x01, 0xF0, 0x1F, 0x01, 0xF0, 0x1F, 0x01, 0xF0, - 0x1F, 0x01, 0xF0, 0x1F, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x3C, 0x03, 0xC0, - 0x38, 0x03, 0x80, 0x70, 0x07, 0x00, 0xE0, 0x0C, 0x01, 0x80, 0x30, 0x0C, - 0x00, 0x80, 0x00, 0x01, 0xC0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x03, 0xE0, 0x3C, 0x78, 0xEF, 0x9C, 0x7B, 0xF7, 0x3F, 0xFE, 0xDF, 0x8F, - 0xFF, 0xC0, 0x7F, 0x00, 0x3F, 0xC0, 0x7E, 0xBF, 0x3F, 0x77, 0xEF, 0x9C, - 0xFF, 0xC7, 0x1E, 0x63, 0xE3, 0x80, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x80, - 0x01, 0xC0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x00, 0x01, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, 0x80, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x07, - 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x07, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x3C, 0x7E, 0xFE, 0xFF, 0xFF, 0xFF, 0x7F, 0x07, 0x06, 0x06, 0x0C, - 0x18, 0x30, 0x60, 0xC0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x3C, - 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x3C, 0x00, 0x1E, 0x00, 0x7C, 0x00, - 0xF0, 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0xF0, - 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0xF0, 0x01, - 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0xF0, 0x01, 0xE0, - 0x03, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF0, 0x01, 0xE0, 0x03, - 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0xF0, 0x00, 0x00, 0xFC, 0x00, - 0x0F, 0x3C, 0x00, 0x78, 0x78, 0x03, 0xE1, 0xF0, 0x1F, 0x03, 0xE0, 0x7C, - 0x0F, 0x83, 0xF0, 0x3F, 0x0F, 0xC0, 0xFC, 0x7F, 0x03, 0xF9, 0xFC, 0x0F, - 0xE7, 0xF0, 0x3F, 0xBF, 0xC0, 0xFE, 0xFF, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, - 0xF0, 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, - 0x3F, 0xFF, 0xC0, 0xFF, 0xFF, 0x03, 0xFF, 0xFC, 0x0F, 0xFF, 0xF0, 0x3F, - 0x9F, 0xC0, 0xFE, 0x7F, 0x03, 0xF9, 0xFC, 0x0F, 0xE3, 0xF0, 0x3F, 0x0F, - 0xC0, 0xFC, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x80, 0xF8, 0x7C, 0x01, 0xE1, - 0xE0, 0x03, 0xCF, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x18, 0x00, 0x1E, 0x00, - 0x1F, 0x80, 0x1F, 0xE0, 0x1F, 0xF8, 0x1D, 0xFE, 0x00, 0x3F, 0x80, 0x0F, - 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, - 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, - 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, - 0xE0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, - 0x00, 0xFE, 0x00, 0x7F, 0x80, 0x3F, 0xF8, 0xFF, 0xFF, 0xC0, 0x00, 0xFC, - 0x00, 0x1F, 0xF8, 0x03, 0xFF, 0xE0, 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x1C, - 0x1F, 0xF1, 0xC0, 0x7F, 0x8C, 0x01, 0xFC, 0x40, 0x0F, 0xE0, 0x00, 0x3F, - 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x00, - 0x00, 0x70, 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x38, - 0x01, 0x03, 0x80, 0x18, 0x38, 0x00, 0x81, 0x80, 0x1C, 0x1F, 0xFF, 0xE1, - 0xFF, 0xFF, 0x1F, 0xFF, 0xF9, 0xFF, 0xFF, 0x9F, 0xFF, 0xFC, 0xFF, 0xFF, - 0xE0, 0x00, 0xFE, 0x00, 0x3F, 0xFC, 0x03, 0xFF, 0xF0, 0x30, 0xFF, 0xC2, - 0x01, 0xFE, 0x30, 0x0F, 0xF1, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x0F, - 0xE0, 0x00, 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, - 0x1F, 0xC0, 0x03, 0xFF, 0x00, 0x3F, 0xFC, 0x00, 0x7F, 0xF0, 0x00, 0xFF, - 0x80, 0x03, 0xFE, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0x80, 0x00, 0xFC, 0x00, - 0x07, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0x80, 0x00, 0x3C, - 0x00, 0x01, 0xC7, 0x80, 0x0E, 0x7F, 0x00, 0xE3, 0xFC, 0x06, 0x1F, 0xF8, - 0xE0, 0x7F, 0xFC, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x1E, - 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, - 0xFF, 0x00, 0x0D, 0xF8, 0x00, 0xEF, 0xC0, 0x06, 0x7E, 0x00, 0x63, 0xF0, - 0x07, 0x1F, 0x80, 0x30, 0xFC, 0x03, 0x07, 0xE0, 0x38, 0x3F, 0x03, 0x81, - 0xF8, 0x18, 0x0F, 0xC1, 0xC0, 0x7E, 0x1C, 0x03, 0xF0, 0xC0, 0x1F, 0x8E, - 0x00, 0xFC, 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xC0, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0xFC, 0x00, - 0x07, 0xE0, 0x00, 0x3F, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xC0, 0x07, 0xFF, - 0xF0, 0x7F, 0xFF, 0x0F, 0xFF, 0xE0, 0xFF, 0xFE, 0x0F, 0xFF, 0xE1, 0xFF, - 0xFC, 0x18, 0x00, 0x01, 0x80, 0x00, 0x18, 0x00, 0x03, 0x00, 0x00, 0x3F, - 0x80, 0x03, 0xFF, 0x80, 0x7F, 0xFE, 0x07, 0xFF, 0xF0, 0x7F, 0xFF, 0x87, - 0xFF, 0xFC, 0x7F, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x1F, 0xE0, 0x00, 0x7E, - 0x00, 0x03, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, - 0xC0, 0x00, 0x0C, 0x78, 0x00, 0x8F, 0xE0, 0x18, 0xFF, 0x87, 0x0F, 0xFF, - 0xE0, 0x7F, 0xF8, 0x01, 0xFE, 0x00, 0x00, 0x00, 0x38, 0x00, 0x1F, 0x00, - 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, - 0x00, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0xFE, 0x00, 0x0F, 0xF0, 0x00, 0x7F, - 0x00, 0x07, 0xF8, 0x00, 0x3F, 0xFF, 0x01, 0xFF, 0xFE, 0x1F, 0xF1, 0xFC, - 0xFF, 0x07, 0xE7, 0xF8, 0x3F, 0xBF, 0xC1, 0xFD, 0xFE, 0x07, 0xFF, 0xF0, - 0x3F, 0xFF, 0x81, 0xFF, 0xFC, 0x0F, 0xFF, 0xE0, 0x7F, 0xFF, 0x03, 0xFB, - 0xF8, 0x1F, 0xDF, 0xC0, 0xFE, 0xFE, 0x07, 0xE3, 0xF0, 0x3F, 0x1F, 0xC1, - 0xF0, 0x7E, 0x0F, 0x01, 0xF0, 0xF8, 0x03, 0xC7, 0x00, 0x07, 0xE0, 0x00, - 0x3F, 0xFF, 0xF9, 0xFF, 0xFF, 0xDF, 0xFF, 0xFE, 0xFF, 0xFF, 0xE7, 0xFF, - 0xFF, 0x3F, 0xFF, 0xF9, 0x80, 0x07, 0x98, 0x00, 0x3C, 0xC0, 0x03, 0xE4, - 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x01, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0xC0, 0x00, 0x3C, 0x00, 0x01, - 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, - 0x01, 0xFE, 0x00, 0x38, 0x7C, 0x07, 0x80, 0xF0, 0x78, 0x07, 0xC3, 0xC0, - 0x1F, 0x3E, 0x00, 0xF9, 0xF0, 0x07, 0xCF, 0xC0, 0x3E, 0x7E, 0x01, 0xF3, - 0xF8, 0x0F, 0x1F, 0xE0, 0xF8, 0x7F, 0xC7, 0x83, 0xFF, 0xF0, 0x0F, 0xFE, - 0x00, 0x7F, 0xFC, 0x01, 0xFF, 0xF0, 0x03, 0xFF, 0xC0, 0x1F, 0xFF, 0x03, - 0xBF, 0xFC, 0x7C, 0x7F, 0xE7, 0xC1, 0xFF, 0x3E, 0x07, 0xFF, 0xE0, 0x1F, - 0xFF, 0x00, 0x7F, 0xF8, 0x03, 0xFF, 0xC0, 0x0F, 0xFE, 0x00, 0x7F, 0xF0, - 0x03, 0xE7, 0x80, 0x1F, 0x3E, 0x01, 0xF0, 0xF8, 0x0F, 0x83, 0xE1, 0xF8, - 0x0F, 0xFF, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFC, 0x00, 0x1C, 0x3C, 0x00, - 0xF0, 0x78, 0x07, 0x81, 0xF8, 0x3E, 0x07, 0xE1, 0xF8, 0x0F, 0xC7, 0xE0, - 0x3F, 0x3F, 0x80, 0xFE, 0xFE, 0x03, 0xFB, 0xF8, 0x0F, 0xFF, 0xE0, 0x3F, - 0xFF, 0x80, 0xFF, 0xFE, 0x03, 0xFF, 0xF8, 0x0F, 0xFF, 0xE0, 0x3F, 0xDF, - 0xC0, 0xFF, 0x7F, 0x03, 0xFC, 0xFC, 0x0F, 0xF3, 0xFC, 0x7F, 0x83, 0xFF, - 0xFE, 0x07, 0xF7, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0x00, 0x03, 0xF8, - 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xC0, 0x00, - 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x00, 0x3F, 0x00, - 0x03, 0x80, 0x00, 0x00, 0x3C, 0x7E, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x3C, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3C, 0x7E, 0xFF, 0xFF, - 0xFF, 0xFF, 0x7E, 0x3C, 0x3C, 0x3F, 0x3F, 0xDF, 0xEF, 0xF7, 0xF9, 0xF8, - 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x7F, 0x7F, - 0xBF, 0xFF, 0xFF, 0xFB, 0xFC, 0xFE, 0x07, 0x03, 0x01, 0x81, 0x81, 0x81, - 0x83, 0x81, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, - 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0xC0, 0x01, 0xFF, 0x80, 0x01, - 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x01, - 0xFF, 0x80, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0x80, 0x00, 0x3F, 0xE0, 0x00, - 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, - 0xE0, 0x00, 0x07, 0xFF, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x03, 0xFF, 0x00, - 0x00, 0x3F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x30, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0xC0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0xFF, 0xC0, 0x00, 0x0F, 0xFC, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x0F, - 0xFE, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xE0, - 0x00, 0x07, 0xFE, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x1F, 0xF0, 0x00, 0x1F, - 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, - 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x1F, 0xF8, 0x00, 0x3F, 0xF0, 0x00, 0x0F, - 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x30, 0x00, 0x00, - 0x00, 0x07, 0xF0, 0x07, 0xFF, 0x03, 0x87, 0xE1, 0xC0, 0xFC, 0xF0, 0x3F, - 0xBE, 0x07, 0xEF, 0xC1, 0xFF, 0xF0, 0x7F, 0xFC, 0x1F, 0xDF, 0x07, 0xF7, - 0x81, 0xFC, 0x00, 0xFE, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x07, 0xE0, 0x03, - 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, 0x18, 0x00, 0x04, 0x00, 0x01, 0x00, - 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x3C, 0x00, 0x1F, 0x80, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0xFF, 0x00, 0x3F, - 0xC0, 0x07, 0xE0, 0x00, 0xF0, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x1F, - 0xFF, 0xC0, 0x00, 0x1F, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x03, 0x80, 0x3C, 0x00, 0x00, 0xE0, 0x3C, 0x00, 0x00, 0x30, 0x3E, - 0x00, 0x00, 0x0C, 0x3E, 0x00, 0x3C, 0x37, 0x1F, 0x00, 0x7E, 0xF1, 0x9F, - 0x00, 0x7C, 0xF8, 0xCF, 0x80, 0x78, 0x7C, 0x37, 0xC0, 0x7C, 0x3C, 0x1F, - 0xC0, 0x3C, 0x1E, 0x0F, 0xE0, 0x3C, 0x0F, 0x07, 0xF0, 0x3E, 0x0F, 0x03, - 0xF8, 0x1E, 0x07, 0x81, 0xFC, 0x0F, 0x03, 0xC0, 0xFE, 0x0F, 0x03, 0xE0, - 0x7F, 0x07, 0x81, 0xE0, 0x6F, 0x83, 0xC1, 0xF0, 0x37, 0xC1, 0xE1, 0x78, - 0x31, 0xF0, 0xF9, 0xBC, 0x18, 0xF8, 0x3F, 0x9E, 0x38, 0x3C, 0x0F, 0x0F, - 0xF8, 0x1F, 0x00, 0x01, 0xF0, 0x07, 0x80, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x00, 0xF8, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0xC0, 0x01, 0xF8, 0x03, 0xE0, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x03, - 0xFF, 0x00, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, - 0x03, 0x80, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x07, 0xE0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, - 0x0F, 0xF0, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, - 0x37, 0xF8, 0x00, 0x00, 0x33, 0xF8, 0x00, 0x00, 0x33, 0xFC, 0x00, 0x00, - 0x61, 0xFC, 0x00, 0x00, 0x61, 0xFE, 0x00, 0x00, 0xC1, 0xFE, 0x00, 0x00, - 0xC0, 0xFF, 0x00, 0x00, 0xC0, 0xFF, 0x00, 0x01, 0x80, 0x7F, 0x00, 0x01, - 0x80, 0x7F, 0x80, 0x03, 0x80, 0x7F, 0x80, 0x03, 0xFF, 0xFF, 0xC0, 0x03, - 0xFF, 0xFF, 0xC0, 0x07, 0x00, 0x3F, 0xC0, 0x06, 0x00, 0x1F, 0xE0, 0x0E, - 0x00, 0x1F, 0xE0, 0x0C, 0x00, 0x0F, 0xF0, 0x0C, 0x00, 0x0F, 0xF0, 0x1C, - 0x00, 0x0F, 0xF8, 0x1C, 0x00, 0x0F, 0xF8, 0x7E, 0x00, 0x0F, 0xFC, 0xFF, - 0x80, 0x7F, 0xFF, 0xFF, 0xFF, 0xF0, 0x0F, 0xFF, 0xFF, 0xE0, 0x1F, 0xF8, - 0x7F, 0x00, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, 0xC0, 0xFF, 0x01, 0xFE, - 0x0F, 0xF0, 0x1F, 0xE0, 0xFF, 0x01, 0xFE, 0x0F, 0xF0, 0x1F, 0xE0, 0xFF, - 0x01, 0xFE, 0x0F, 0xF0, 0x1F, 0xC0, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x3F, - 0x00, 0xFF, 0x0F, 0xC0, 0x0F, 0xFF, 0xE0, 0x00, 0xFF, 0xFF, 0xC0, 0x0F, - 0xF0, 0xFF, 0x00, 0xFF, 0x03, 0xFC, 0x0F, 0xF0, 0x1F, 0xE0, 0xFF, 0x01, - 0xFE, 0x0F, 0xF0, 0x0F, 0xF0, 0xFF, 0x00, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, - 0xFF, 0x00, 0xFF, 0x0F, 0xF0, 0x0F, 0xF0, 0xFF, 0x00, 0xFF, 0x0F, 0xF0, - 0x0F, 0xE0, 0xFF, 0x01, 0xFE, 0x0F, 0xF0, 0x1F, 0xC0, 0xFF, 0x87, 0xF0, - 0x3F, 0xFF, 0xFE, 0x0F, 0xFF, 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x08, 0x01, - 0xFF, 0xF0, 0x60, 0x0F, 0xC1, 0xF9, 0x80, 0xFC, 0x01, 0xFE, 0x07, 0xE0, - 0x01, 0xF8, 0x3F, 0x00, 0x03, 0xE1, 0xFC, 0x00, 0x07, 0x87, 0xE0, 0x00, - 0x1E, 0x3F, 0x80, 0x00, 0x38, 0xFE, 0x00, 0x00, 0x67, 0xF8, 0x00, 0x01, - 0x9F, 0xC0, 0x00, 0x02, 0x7F, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x0F, - 0xF0, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0x03, 0xFC, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x87, 0xF0, 0x00, 0x07, 0x0F, 0xE0, 0x00, 0x38, 0x1F, 0x80, 0x01, 0xC0, - 0x3F, 0x00, 0x1E, 0x00, 0x7F, 0x01, 0xE0, 0x00, 0x7F, 0xFF, 0x00, 0x00, - 0x3F, 0xE0, 0x00, 0xFF, 0xFF, 0xE0, 0x00, 0x3F, 0xFF, 0xFE, 0x00, 0x0F, - 0xF8, 0x7F, 0x80, 0x0F, 0xF0, 0x1F, 0xC0, 0x0F, 0xF0, 0x0F, 0xF0, 0x0F, - 0xF0, 0x07, 0xF0, 0x0F, 0xF0, 0x03, 0xF8, 0x0F, 0xF0, 0x03, 0xFC, 0x0F, - 0xF0, 0x01, 0xFC, 0x0F, 0xF0, 0x01, 0xFE, 0x0F, 0xF0, 0x01, 0xFE, 0x0F, - 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, - 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, - 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, 0xF0, 0x00, 0xFF, 0x0F, - 0xF0, 0x00, 0xFE, 0x0F, 0xF0, 0x00, 0xFE, 0x0F, 0xF0, 0x01, 0xFE, 0x0F, - 0xF0, 0x01, 0xFC, 0x0F, 0xF0, 0x01, 0xFC, 0x0F, 0xF0, 0x03, 0xF8, 0x0F, - 0xF0, 0x03, 0xF0, 0x0F, 0xF0, 0x07, 0xE0, 0x0F, 0xF0, 0x0F, 0xC0, 0x0F, - 0xF8, 0x3F, 0x80, 0x1F, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xF0, 0x00, 0xFF, - 0xFF, 0xFF, 0xC3, 0xFF, 0xFF, 0xFC, 0x1F, 0xE0, 0x1F, 0xC1, 0xFE, 0x00, - 0x3C, 0x1F, 0xE0, 0x01, 0xC1, 0xFE, 0x00, 0x0C, 0x1F, 0xE0, 0x00, 0xC1, - 0xFE, 0x00, 0x04, 0x1F, 0xE0, 0x20, 0x41, 0xFE, 0x02, 0x00, 0x1F, 0xE0, - 0x60, 0x01, 0xFE, 0x06, 0x00, 0x1F, 0xE0, 0xE0, 0x01, 0xFE, 0x1E, 0x00, - 0x1F, 0xFF, 0xE0, 0x01, 0xFF, 0xFE, 0x00, 0x1F, 0xE3, 0xE0, 0x01, 0xFE, - 0x0E, 0x00, 0x1F, 0xE0, 0x60, 0x01, 0xFE, 0x06, 0x00, 0x1F, 0xE0, 0x20, - 0x01, 0xFE, 0x02, 0x00, 0x1F, 0xE0, 0x00, 0x11, 0xFE, 0x00, 0x03, 0x1F, - 0xE0, 0x00, 0x71, 0xFE, 0x00, 0x07, 0x1F, 0xE0, 0x00, 0xE1, 0xFE, 0x00, - 0x1E, 0x1F, 0xE0, 0x03, 0xE3, 0xFF, 0x01, 0xFE, 0xFF, 0xFF, 0xFF, 0xEF, - 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0x9F, 0xFF, 0xFF, 0xC7, 0xFC, 0x07, - 0xE3, 0xFC, 0x00, 0xF1, 0xFE, 0x00, 0x38, 0xFF, 0x00, 0x0C, 0x7F, 0x80, - 0x06, 0x3F, 0xC0, 0x01, 0x1F, 0xE0, 0x20, 0x8F, 0xF0, 0x10, 0x07, 0xF8, - 0x18, 0x03, 0xFC, 0x0C, 0x01, 0xFE, 0x0E, 0x00, 0xFF, 0x1F, 0x00, 0x7F, - 0xFF, 0x80, 0x3F, 0xFF, 0xC0, 0x1F, 0xE3, 0xE0, 0x0F, 0xF0, 0x70, 0x07, - 0xF8, 0x18, 0x03, 0xFC, 0x0C, 0x01, 0xFE, 0x02, 0x00, 0xFF, 0x01, 0x00, - 0x7F, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, - 0x07, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, - 0x00, 0xFF, 0xC0, 0x01, 0xFF, 0xFC, 0x00, 0x00, 0x0F, 0xF0, 0x08, 0x00, - 0x3F, 0xFE, 0x0C, 0x00, 0x3F, 0x07, 0xC6, 0x00, 0x7E, 0x00, 0xFF, 0x00, - 0x7E, 0x00, 0x1F, 0x80, 0x7E, 0x00, 0x07, 0xC0, 0x7F, 0x00, 0x01, 0xE0, - 0x3F, 0x00, 0x00, 0x70, 0x3F, 0x80, 0x00, 0x38, 0x1F, 0xC0, 0x00, 0x0C, - 0x1F, 0xE0, 0x00, 0x06, 0x0F, 0xE0, 0x00, 0x01, 0x07, 0xF0, 0x00, 0x00, - 0x07, 0xF8, 0x00, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x00, 0xFF, 0x00, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x0F, 0xF0, 0x03, 0xFF, 0xFF, 0xF8, 0x00, - 0x3F, 0xF1, 0xFC, 0x00, 0x0F, 0xF0, 0xFF, 0x00, 0x07, 0xF8, 0x7F, 0x80, - 0x03, 0xFC, 0x1F, 0xC0, 0x01, 0xFE, 0x0F, 0xE0, 0x00, 0xFF, 0x03, 0xF8, - 0x00, 0x7F, 0x80, 0xFC, 0x00, 0x3F, 0xC0, 0x3F, 0x00, 0x1F, 0xE0, 0x0F, - 0xC0, 0x0F, 0xF0, 0x03, 0xF8, 0x1F, 0xF0, 0x00, 0x7F, 0xFF, 0xC0, 0x00, - 0x07, 0xFE, 0x00, 0x00, 0xFF, 0xFC, 0x1F, 0xFF, 0x9F, 0xF8, 0x03, 0xFF, - 0x07, 0xF8, 0x00, 0xFF, 0x03, 0xFC, 0x00, 0x7F, 0x81, 0xFE, 0x00, 0x3F, - 0xC0, 0xFF, 0x00, 0x1F, 0xE0, 0x7F, 0x80, 0x0F, 0xF0, 0x3F, 0xC0, 0x07, - 0xF8, 0x1F, 0xE0, 0x03, 0xFC, 0x0F, 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, - 0xFF, 0x03, 0xFC, 0x00, 0x7F, 0x81, 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0x00, - 0x1F, 0xE0, 0x7F, 0x80, 0x0F, 0xF0, 0x3F, 0xFF, 0xFF, 0xF8, 0x1F, 0xFF, - 0xFF, 0xFC, 0x0F, 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, 0xFF, 0x03, 0xFC, - 0x00, 0x7F, 0x81, 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0x00, 0x1F, 0xE0, 0x7F, - 0x80, 0x0F, 0xF0, 0x3F, 0xC0, 0x07, 0xF8, 0x1F, 0xE0, 0x03, 0xFC, 0x0F, - 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, 0xFF, 0x03, 0xFC, 0x00, 0x7F, 0x81, - 0xFE, 0x00, 0x3F, 0xC0, 0xFF, 0x00, 0x1F, 0xE0, 0xFF, 0xC0, 0x1F, 0xF9, - 0xFF, 0xF8, 0x3F, 0xFF, 0xFF, 0xFE, 0x7F, 0xE0, 0x7F, 0x80, 0xFF, 0x01, - 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, - 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, 0xF0, 0x1F, 0xE0, - 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, 0x07, 0xF8, 0x0F, - 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x7F, 0x80, 0xFF, 0x01, 0xFE, 0x03, 0xFC, - 0x0F, 0xFC, 0x7F, 0xFF, 0x01, 0xFF, 0xFC, 0x00, 0xFF, 0xC0, 0x01, 0xFE, - 0x00, 0x07, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, - 0x07, 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, - 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, - 0x00, 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x00, - 0x1F, 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x1F, - 0xE0, 0x00, 0x7F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF8, 0x78, 0x1F, 0xE3, - 0xF0, 0x7F, 0x8F, 0xC1, 0xFC, 0x3F, 0x07, 0xF0, 0xFC, 0x1F, 0xC1, 0xE0, - 0xFE, 0x07, 0xC3, 0xF0, 0x0F, 0xFF, 0x80, 0x07, 0xF0, 0x00, 0xFF, 0xFC, - 0x1F, 0xFF, 0x0F, 0xFC, 0x00, 0xFF, 0x01, 0xFE, 0x00, 0x1E, 0x00, 0x7F, - 0x80, 0x07, 0x00, 0x1F, 0xE0, 0x03, 0x80, 0x07, 0xF8, 0x01, 0xC0, 0x01, - 0xFE, 0x00, 0xE0, 0x00, 0x7F, 0x80, 0x70, 0x00, 0x1F, 0xE0, 0x38, 0x00, - 0x07, 0xF8, 0x1C, 0x00, 0x01, 0xFE, 0x0E, 0x00, 0x00, 0x7F, 0x87, 0x00, - 0x00, 0x1F, 0xE3, 0xC0, 0x00, 0x07, 0xF9, 0xF8, 0x00, 0x01, 0xFE, 0xFE, - 0x00, 0x00, 0x7F, 0xFF, 0xC0, 0x00, 0x1F, 0xFF, 0xF8, 0x00, 0x07, 0xFD, - 0xFF, 0x00, 0x01, 0xFE, 0x7F, 0xE0, 0x00, 0x7F, 0x8F, 0xF8, 0x00, 0x1F, - 0xE1, 0xFF, 0x00, 0x07, 0xF8, 0x3F, 0xE0, 0x01, 0xFE, 0x07, 0xFC, 0x00, - 0x7F, 0x81, 0xFF, 0x80, 0x1F, 0xE0, 0x3F, 0xE0, 0x07, 0xF8, 0x07, 0xFC, - 0x01, 0xFE, 0x00, 0xFF, 0x80, 0x7F, 0x80, 0x1F, 0xF0, 0x1F, 0xE0, 0x07, - 0xFE, 0x07, 0xF8, 0x00, 0xFF, 0x83, 0xFF, 0x00, 0x3F, 0xF3, 0xFF, 0xF0, - 0xFF, 0xFF, 0xFF, 0xFE, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, - 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, - 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, - 0x00, 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x1F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x01, 0x1F, 0xE0, 0x00, 0x31, 0xFE, - 0x00, 0x03, 0x1F, 0xE0, 0x00, 0x71, 0xFE, 0x00, 0x07, 0x1F, 0xE0, 0x00, - 0xE1, 0xFE, 0x00, 0x1E, 0x1F, 0xE0, 0x07, 0xE3, 0xFF, 0x01, 0xFE, 0xFF, - 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xFE, 0x7F, 0xF0, 0x00, 0x01, 0xFF, 0xE1, - 0xFF, 0x00, 0x00, 0x3F, 0xF0, 0x1F, 0xE0, 0x00, 0x0F, 0xFC, 0x03, 0xFC, - 0x00, 0x01, 0xFF, 0x80, 0x7F, 0xC0, 0x00, 0x2F, 0xF0, 0x0B, 0xF8, 0x00, - 0x0D, 0xFE, 0x01, 0x7F, 0x80, 0x01, 0xBF, 0xC0, 0x27, 0xF0, 0x00, 0x67, - 0xF8, 0x04, 0xFF, 0x00, 0x0C, 0xFF, 0x00, 0x8F, 0xE0, 0x03, 0x1F, 0xE0, - 0x11, 0xFE, 0x00, 0x63, 0xFC, 0x02, 0x3F, 0xC0, 0x08, 0x7F, 0x80, 0x43, - 0xF8, 0x03, 0x0F, 0xF0, 0x08, 0x7F, 0x80, 0x61, 0xFE, 0x01, 0x07, 0xF0, - 0x18, 0x3F, 0xC0, 0x20, 0xFF, 0x03, 0x07, 0xF8, 0x04, 0x0F, 0xE0, 0xC0, - 0xFF, 0x00, 0x81, 0xFE, 0x18, 0x1F, 0xE0, 0x10, 0x3F, 0xC6, 0x03, 0xFC, - 0x02, 0x03, 0xF8, 0xC0, 0x7F, 0x80, 0x40, 0x7F, 0x98, 0x0F, 0xF0, 0x08, - 0x07, 0xF6, 0x01, 0xFE, 0x01, 0x00, 0xFF, 0xC0, 0x3F, 0xC0, 0x20, 0x0F, - 0xF0, 0x07, 0xF8, 0x04, 0x01, 0xFE, 0x00, 0xFF, 0x00, 0x80, 0x1F, 0x80, - 0x1F, 0xE0, 0x10, 0x03, 0xF0, 0x03, 0xFC, 0x02, 0x00, 0x7E, 0x00, 0x7F, - 0x80, 0x40, 0x07, 0x80, 0x0F, 0xF0, 0x0C, 0x00, 0xF0, 0x01, 0xFE, 0x07, - 0xC0, 0x0C, 0x00, 0x7F, 0xE7, 0xFF, 0x01, 0x80, 0x3F, 0xFF, 0xFF, 0xC0, - 0x03, 0xFE, 0xFF, 0xC0, 0x01, 0xF0, 0xFF, 0xC0, 0x01, 0xC0, 0xFF, 0xC0, - 0x01, 0x80, 0xFF, 0x80, 0x03, 0x01, 0xFF, 0x80, 0x06, 0x03, 0xFF, 0x80, - 0x0C, 0x07, 0xFF, 0x80, 0x18, 0x0D, 0xFF, 0x80, 0x30, 0x19, 0xFF, 0x00, - 0x60, 0x31, 0xFF, 0x00, 0xC0, 0x61, 0xFF, 0x01, 0x80, 0xC1, 0xFF, 0x03, - 0x01, 0x83, 0xFF, 0x06, 0x03, 0x03, 0xFE, 0x0C, 0x06, 0x03, 0xFE, 0x18, - 0x0C, 0x03, 0xFE, 0x30, 0x18, 0x03, 0xFE, 0x60, 0x30, 0x03, 0xFE, 0xC0, - 0x60, 0x07, 0xFD, 0x80, 0xC0, 0x07, 0xFF, 0x01, 0x80, 0x07, 0xFE, 0x03, - 0x00, 0x07, 0xFC, 0x06, 0x00, 0x07, 0xF8, 0x0C, 0x00, 0x07, 0xF0, 0x18, - 0x00, 0x0F, 0xE0, 0x30, 0x00, 0x0F, 0xC0, 0x60, 0x00, 0x0F, 0x80, 0xC0, - 0x00, 0x0F, 0x01, 0xC0, 0x00, 0x0E, 0x0F, 0xC0, 0x00, 0x1C, 0x7F, 0xE0, - 0x00, 0x18, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x3F, 0xFF, 0x80, 0x00, 0x3F, - 0x07, 0xF0, 0x00, 0x7E, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x7E, - 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x07, 0xF0, 0x3F, 0x00, 0x03, 0xF8, 0x3F, - 0x80, 0x00, 0xFE, 0x3F, 0xC0, 0x00, 0x7F, 0x1F, 0xE0, 0x00, 0x3F, 0xCF, - 0xE0, 0x00, 0x0F, 0xEF, 0xF0, 0x00, 0x07, 0xF7, 0xF8, 0x00, 0x03, 0xFF, - 0xFC, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x7F, - 0xFF, 0x80, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x1F, 0xFF, 0xE0, 0x00, 0x0F, - 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xF8, 0x00, 0x03, 0xFD, 0xFC, 0x00, 0x01, - 0xFC, 0xFE, 0x00, 0x01, 0xFE, 0x7F, 0x80, 0x00, 0xFF, 0x1F, 0xC0, 0x00, - 0x7F, 0x0F, 0xE0, 0x00, 0x3F, 0x83, 0xF8, 0x00, 0x3F, 0x80, 0xFC, 0x00, - 0x1F, 0x80, 0x3F, 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x1F, 0x80, 0x03, 0xF8, - 0x3F, 0x80, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0xFF, - 0xFF, 0xE0, 0x1F, 0xFF, 0xFF, 0x01, 0xFE, 0x1F, 0xE0, 0x7F, 0x81, 0xFC, - 0x1F, 0xE0, 0x7F, 0x87, 0xF8, 0x0F, 0xE1, 0xFE, 0x03, 0xFC, 0x7F, 0x80, - 0xFF, 0x1F, 0xE0, 0x3F, 0xC7, 0xF8, 0x0F, 0xF1, 0xFE, 0x03, 0xFC, 0x7F, - 0x80, 0xFF, 0x1F, 0xE0, 0x3F, 0x87, 0xF8, 0x1F, 0xE1, 0xFE, 0x07, 0xF0, - 0x7F, 0x87, 0xF8, 0x1F, 0xFF, 0xF8, 0x07, 0xFF, 0xF8, 0x01, 0xFE, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, 0x01, 0xFE, - 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF8, 0x00, - 0x03, 0xFF, 0x00, 0x03, 0xFF, 0xF0, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, - 0x3F, 0xFF, 0x80, 0x00, 0x3F, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0xFC, 0x00, - 0x7E, 0x00, 0x3F, 0x00, 0x7E, 0x00, 0x1F, 0xC0, 0x7F, 0x00, 0x07, 0xF0, - 0x3F, 0x00, 0x03, 0xF8, 0x3F, 0x80, 0x00, 0xFE, 0x1F, 0xC0, 0x00, 0x7F, - 0x1F, 0xE0, 0x00, 0x3F, 0xCF, 0xE0, 0x00, 0x0F, 0xE7, 0xF0, 0x00, 0x07, - 0xF7, 0xF8, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x00, - 0xFF, 0xFF, 0x00, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0x3F, 0xFF, 0xC0, 0x00, - 0x1F, 0xFF, 0xE0, 0x00, 0x0F, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xF8, 0x00, - 0x03, 0xFD, 0xFC, 0x00, 0x01, 0xFC, 0xFE, 0x00, 0x01, 0xFE, 0x7F, 0x80, - 0x00, 0xFF, 0x1F, 0xC0, 0x00, 0x7F, 0x0F, 0xE0, 0x00, 0x3F, 0x83, 0xF8, - 0x00, 0x3F, 0x80, 0xFC, 0x00, 0x1F, 0x80, 0x3F, 0x00, 0x1F, 0x80, 0x0F, - 0xC0, 0x1F, 0x80, 0x03, 0xF0, 0x1F, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x00, - 0x0F, 0xFC, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x01, 0xFF, 0xC0, 0x00, - 0x00, 0x7F, 0xF0, 0x00, 0x00, 0x1F, 0xFC, 0x00, 0x00, 0x07, 0xFF, 0x80, - 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0xFF, 0xFF, 0xE0, - 0x00, 0xFF, 0xFF, 0xF8, 0x00, 0x7F, 0xC3, 0xFC, 0x00, 0xFF, 0x01, 0xFC, - 0x01, 0xFE, 0x03, 0xFC, 0x03, 0xFC, 0x03, 0xF8, 0x07, 0xF8, 0x07, 0xF8, - 0x0F, 0xF0, 0x0F, 0xF0, 0x1F, 0xE0, 0x1F, 0xE0, 0x3F, 0xC0, 0x3F, 0xC0, - 0x7F, 0x80, 0x7F, 0x80, 0xFF, 0x00, 0xFF, 0x01, 0xFE, 0x01, 0xFC, 0x03, - 0xFC, 0x07, 0xF8, 0x07, 0xF8, 0x1F, 0xE0, 0x0F, 0xF0, 0xFF, 0x00, 0x1F, - 0xFF, 0xF8, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x7F, 0x9F, 0xE0, 0x00, 0xFF, - 0x3F, 0xC0, 0x01, 0xFE, 0x3F, 0xC0, 0x03, 0xFC, 0x7F, 0xC0, 0x07, 0xF8, - 0x7F, 0xC0, 0x0F, 0xF0, 0x7F, 0x80, 0x1F, 0xE0, 0xFF, 0x80, 0x3F, 0xC0, - 0xFF, 0x80, 0x7F, 0x80, 0xFF, 0x00, 0xFF, 0x01, 0xFF, 0x01, 0xFE, 0x01, - 0xFF, 0x03, 0xFC, 0x01, 0xFF, 0x0F, 0xFC, 0x03, 0xFE, 0x7F, 0xFE, 0x03, - 0xFF, 0x03, 0xF8, 0x10, 0x7F, 0xF9, 0x87, 0xC1, 0xFC, 0x78, 0x03, 0xE7, - 0x80, 0x0F, 0x3C, 0x00, 0x3B, 0xE0, 0x01, 0xDF, 0x00, 0x06, 0xF8, 0x00, - 0x37, 0xE0, 0x00, 0xBF, 0x80, 0x01, 0xFF, 0x00, 0x0F, 0xFE, 0x00, 0x3F, - 0xFC, 0x01, 0xFF, 0xF8, 0x07, 0xFF, 0xF0, 0x1F, 0xFF, 0xC0, 0x7F, 0xFF, - 0x00, 0xFF, 0xFC, 0x01, 0xFF, 0xE0, 0x03, 0xFF, 0x80, 0x07, 0xFC, 0x00, - 0x1F, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFE, 0x00, 0x07, 0xF0, 0x00, 0x3F, - 0xC0, 0x01, 0xEE, 0x00, 0x0F, 0x78, 0x00, 0xF3, 0xE0, 0x0F, 0x9F, 0xC0, - 0xF8, 0x8F, 0xFF, 0x04, 0x0F, 0xE0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFC, 0x3F, 0xC3, 0xFF, 0x03, 0xFC, 0x0F, 0xE0, 0x3F, 0xC0, - 0x7C, 0x03, 0xFC, 0x03, 0xC0, 0x3F, 0xC0, 0x38, 0x03, 0xFC, 0x01, 0x80, - 0x3F, 0xC0, 0x10, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, - 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, - 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, - 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x3F, 0xFF, 0xC0, 0xFF, - 0xFE, 0x07, 0xFC, 0xFF, 0xC0, 0x07, 0xC1, 0xFE, 0x00, 0x0E, 0x07, 0xF8, - 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, - 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, - 0x81, 0xFE, 0x00, 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, - 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, - 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, 0x06, 0x07, 0xF8, - 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x01, 0x81, 0xFE, 0x00, - 0x06, 0x07, 0xF8, 0x00, 0x18, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x80, 0x03, - 0x00, 0xFF, 0x00, 0x0C, 0x03, 0xFC, 0x00, 0x30, 0x07, 0xF0, 0x01, 0x80, - 0x0F, 0xE0, 0x0E, 0x00, 0x1F, 0xE0, 0xF0, 0x00, 0x1F, 0xFF, 0x00, 0x00, - 0x1F, 0xF0, 0x00, 0xFF, 0xFF, 0x01, 0xFF, 0x9F, 0xFC, 0x00, 0x1F, 0x07, - 0xFC, 0x00, 0x07, 0x01, 0xFE, 0x00, 0x03, 0x00, 0x7F, 0x80, 0x03, 0x80, - 0x3F, 0xC0, 0x01, 0x80, 0x1F, 0xE0, 0x00, 0xC0, 0x07, 0xF8, 0x00, 0xC0, - 0x03, 0xFC, 0x00, 0x60, 0x00, 0xFF, 0x00, 0x30, 0x00, 0x7F, 0x80, 0x30, - 0x00, 0x1F, 0xE0, 0x18, 0x00, 0x0F, 0xF0, 0x18, 0x00, 0x07, 0xF8, 0x0C, - 0x00, 0x01, 0xFE, 0x06, 0x00, 0x00, 0xFF, 0x06, 0x00, 0x00, 0x3F, 0xC3, - 0x00, 0x00, 0x1F, 0xE3, 0x80, 0x00, 0x0F, 0xF1, 0x80, 0x00, 0x03, 0xFC, - 0xC0, 0x00, 0x01, 0xFE, 0xC0, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x00, 0x3F, - 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, - 0x01, 0x80, 0x00, 0xFF, 0xF8, 0x7F, 0xFF, 0x0F, 0xFB, 0xFF, 0x00, 0xFF, - 0xC0, 0x1F, 0x0F, 0xF0, 0x03, 0xFC, 0x00, 0x70, 0x3F, 0x80, 0x0F, 0xE0, - 0x03, 0x81, 0xFE, 0x00, 0x7F, 0x80, 0x1C, 0x0F, 0xF0, 0x03, 0xFC, 0x00, - 0xC0, 0x3F, 0x80, 0x0F, 0xE0, 0x06, 0x01, 0xFE, 0x00, 0x7F, 0x00, 0x70, - 0x0F, 0xF0, 0x07, 0xFC, 0x03, 0x00, 0x3F, 0x80, 0x3F, 0xE0, 0x18, 0x01, - 0xFE, 0x01, 0xFF, 0x01, 0xC0, 0x0F, 0xF0, 0x1B, 0xFC, 0x0C, 0x00, 0x3F, - 0x80, 0xCF, 0xE0, 0x60, 0x01, 0xFE, 0x06, 0x7F, 0x07, 0x00, 0x0F, 0xF0, - 0x63, 0xFC, 0x30, 0x00, 0x3F, 0x83, 0x0F, 0xE1, 0x80, 0x01, 0xFE, 0x30, - 0x7F, 0x1C, 0x00, 0x07, 0xF1, 0x81, 0xFC, 0xC0, 0x00, 0x3F, 0x8C, 0x0F, - 0xE6, 0x00, 0x01, 0xFE, 0xC0, 0x7F, 0x70, 0x00, 0x07, 0xF6, 0x01, 0xFB, - 0x00, 0x00, 0x3F, 0xE0, 0x0F, 0xF8, 0x00, 0x01, 0xFF, 0x00, 0x7F, 0xC0, - 0x00, 0x07, 0xF8, 0x01, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x00, - 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x00, 0x07, 0xE0, 0x01, 0xF0, 0x00, 0x00, - 0x3E, 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x00, 0x07, - 0x00, 0x01, 0xC0, 0x00, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, - 0x00, 0x70, 0x00, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0xFF, 0xFF, 0x0F, - 0xFF, 0x3F, 0xF8, 0x01, 0xF8, 0x1F, 0xF8, 0x01, 0xE0, 0x0F, 0xF8, 0x01, - 0xC0, 0x0F, 0xF8, 0x01, 0x80, 0x07, 0xFC, 0x03, 0x80, 0x03, 0xFE, 0x07, - 0x00, 0x03, 0xFE, 0x06, 0x00, 0x01, 0xFF, 0x0C, 0x00, 0x00, 0xFF, 0x9C, - 0x00, 0x00, 0xFF, 0x98, 0x00, 0x00, 0x7F, 0xF0, 0x00, 0x00, 0x3F, 0xF0, - 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x0F, 0xFC, - 0x00, 0x00, 0x0F, 0xFE, 0x00, 0x00, 0x19, 0xFE, 0x00, 0x00, 0x31, 0xFF, - 0x00, 0x00, 0x70, 0xFF, 0x80, 0x00, 0x60, 0x7F, 0x80, 0x00, 0xC0, 0x7F, - 0xC0, 0x01, 0xC0, 0x3F, 0xE0, 0x03, 0x80, 0x1F, 0xE0, 0x07, 0x00, 0x1F, - 0xF0, 0x07, 0x00, 0x0F, 0xF8, 0x0F, 0x00, 0x0F, 0xF8, 0x3F, 0x80, 0x1F, - 0xFC, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0xFF, 0x7F, 0xF0, 0x00, - 0x7E, 0x1F, 0xF0, 0x00, 0x38, 0x1F, 0xF0, 0x00, 0x38, 0x0F, 0xF0, 0x00, - 0x70, 0x0F, 0xF8, 0x00, 0x60, 0x07, 0xF8, 0x00, 0x60, 0x07, 0xFC, 0x00, - 0xC0, 0x03, 0xFC, 0x01, 0xC0, 0x01, 0xFE, 0x01, 0x80, 0x01, 0xFE, 0x03, - 0x00, 0x00, 0xFF, 0x03, 0x00, 0x00, 0xFF, 0x86, 0x00, 0x00, 0x7F, 0x8E, - 0x00, 0x00, 0x7F, 0xCC, 0x00, 0x00, 0x3F, 0xD8, 0x00, 0x00, 0x3F, 0xF8, - 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x1F, 0xF8, 0x00, 0x00, 0x7F, 0xFE, - 0x00, 0x3F, 0xFF, 0xFF, 0xE3, 0xFF, 0xFF, 0xFC, 0x3F, 0x80, 0x7F, 0xC3, - 0xE0, 0x07, 0xF8, 0x38, 0x00, 0xFF, 0x83, 0x80, 0x0F, 0xF0, 0x30, 0x01, - 0xFE, 0x07, 0x00, 0x3F, 0xE0, 0x60, 0x03, 0xFC, 0x06, 0x00, 0x7F, 0xC0, - 0x00, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xF0, 0x00, 0x01, - 0xFE, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x7F, 0x80, - 0x00, 0x0F, 0xF8, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, - 0xFE, 0x00, 0x00, 0x3F, 0xC0, 0x01, 0x07, 0xFC, 0x00, 0x30, 0xFF, 0x80, - 0x03, 0x0F, 0xF0, 0x00, 0x31, 0xFF, 0x00, 0x07, 0x1F, 0xE0, 0x00, 0xF3, - 0xFE, 0x00, 0x1E, 0x7F, 0xC0, 0x03, 0xE7, 0xF8, 0x01, 0xFE, 0xFF, 0xFF, - 0xFF, 0xEF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0xF0, 0x7C, 0x0F, 0x81, - 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, - 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, - 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, - 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xFF, 0xFF, 0xF8, 0xF0, - 0x01, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x80, 0x0F, 0x00, - 0x1F, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x7C, 0x00, 0x78, 0x00, 0xF0, 0x01, - 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1F, - 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xE0, - 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, - 0x1E, 0xFF, 0xFF, 0xFC, 0x1F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, - 0x03, 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, - 0xE0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, - 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0xC0, 0xF8, 0x1F, 0x03, 0xE0, 0x7C, - 0x0F, 0x81, 0xF0, 0x3F, 0xFF, 0xFF, 0xF8, 0x00, 0x78, 0x00, 0x07, 0xC0, - 0x00, 0x3F, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xE0, 0x01, 0xEF, 0x00, 0x0F, - 0x3C, 0x00, 0xF1, 0xE0, 0x07, 0x87, 0x80, 0x78, 0x3C, 0x03, 0xC0, 0xF0, - 0x3C, 0x07, 0x81, 0xE0, 0x1E, 0x1E, 0x00, 0xF0, 0xF0, 0x07, 0xCF, 0x00, - 0x1E, 0x78, 0x00, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x70, 0x1F, 0x03, 0xF0, 0x7E, 0x03, 0xE0, 0x3E, 0x01, 0xE0, 0x1E, - 0x00, 0xE0, 0x03, 0xFC, 0x00, 0x3F, 0xFC, 0x03, 0xE1, 0xF8, 0x0F, 0x03, - 0xF0, 0x7C, 0x07, 0xC1, 0xF8, 0x1F, 0x87, 0xE0, 0x7E, 0x1F, 0x81, 0xF8, - 0x3C, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x01, 0xFE, 0x00, 0x3F, 0xF8, 0x03, - 0xE7, 0xE0, 0x3E, 0x1F, 0x83, 0xF0, 0x7E, 0x1F, 0x81, 0xF8, 0x7E, 0x07, - 0xE3, 0xF8, 0x1F, 0x8F, 0xE0, 0x7E, 0x3F, 0x83, 0xF8, 0xFF, 0x1F, 0xE1, - 0xFF, 0xDF, 0xF7, 0xFE, 0x3F, 0x07, 0xE0, 0xF8, 0xFF, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x00, - 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, 0x00, - 0x0F, 0xC7, 0xF0, 0x07, 0xEF, 0xFE, 0x03, 0xFC, 0x3F, 0x81, 0xFC, 0x0F, - 0xE0, 0xFC, 0x03, 0xF0, 0x7E, 0x01, 0xFC, 0x3F, 0x00, 0xFE, 0x1F, 0x80, - 0x3F, 0x8F, 0xC0, 0x1F, 0xC7, 0xE0, 0x0F, 0xE3, 0xF0, 0x07, 0xF1, 0xF8, - 0x03, 0xF8, 0xFC, 0x01, 0xFC, 0x7E, 0x00, 0xFE, 0x3F, 0x00, 0x7F, 0x1F, - 0x80, 0x3F, 0x0F, 0xC0, 0x1F, 0x87, 0xE0, 0x1F, 0xC3, 0xF0, 0x0F, 0xC1, - 0xF8, 0x07, 0xE0, 0xFE, 0x07, 0xE0, 0x73, 0x87, 0xE0, 0x30, 0xFF, 0xC0, - 0x10, 0x1F, 0x80, 0x00, 0x00, 0xFC, 0x00, 0x7F, 0xE0, 0x3E, 0x3E, 0x0F, - 0x83, 0xE3, 0xE0, 0x7C, 0x7C, 0x0F, 0x9F, 0x01, 0xF3, 0xE0, 0x1C, 0x7C, - 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, - 0x00, 0x3F, 0x00, 0x07, 0xF0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, 0x01, 0xFC, - 0x00, 0x1F, 0xC0, 0x21, 0xFE, 0x0C, 0x3F, 0xFF, 0x01, 0xFF, 0x80, 0x0F, - 0xC0, 0x00, 0x1F, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, - 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, - 0xF8, 0x00, 0x01, 0xF8, 0x03, 0xF1, 0xF8, 0x07, 0xFD, 0xF8, 0x1F, 0xC7, - 0xF8, 0x1F, 0x83, 0xF8, 0x3F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0x7E, 0x01, - 0xF8, 0x7E, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, - 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, - 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0x7E, 0x01, 0xF8, 0x7F, 0x01, - 0xF8, 0x3F, 0x03, 0xF8, 0x3F, 0x03, 0xF8, 0x1F, 0x87, 0xFC, 0x0F, 0xFD, - 0xFF, 0x03, 0xF1, 0xC0, 0x03, 0xF0, 0x03, 0xFF, 0x01, 0xE1, 0xE0, 0xF8, - 0x7C, 0x3C, 0x0F, 0x1F, 0x03, 0xE7, 0xC0, 0xFB, 0xF0, 0x3E, 0xFC, 0x0F, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x0F, - 0xC0, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x1F, 0x80, 0x07, 0xF0, 0x0C, 0xFC, - 0x06, 0x3F, 0xC3, 0x07, 0xFF, 0x80, 0xFF, 0xC0, 0x0F, 0xC0, 0x00, 0xFC, - 0x01, 0xFF, 0x81, 0xF1, 0xC1, 0xF0, 0xF0, 0xF8, 0xF8, 0xFC, 0x7C, 0x7E, - 0x1C, 0x3F, 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x1F, 0xFF, 0x0F, - 0xFF, 0x80, 0xFC, 0x00, 0x7E, 0x00, 0x3F, 0x00, 0x1F, 0x80, 0x0F, 0xC0, - 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x7E, 0x00, 0x3F, - 0x00, 0x1F, 0x80, 0x0F, 0xC0, 0x07, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x00, - 0xFC, 0x00, 0x7E, 0x00, 0x7F, 0x80, 0xFF, 0xF8, 0x00, 0x07, 0xF0, 0x03, - 0xFF, 0xFC, 0xF8, 0x7F, 0xBE, 0x07, 0x87, 0xC0, 0xF9, 0xF8, 0x1F, 0xBF, - 0x03, 0xF7, 0xE0, 0x7E, 0xFC, 0x0F, 0xDF, 0x81, 0xF9, 0xF0, 0x3F, 0x3E, - 0x07, 0xC3, 0xE1, 0xF8, 0x3C, 0x7E, 0x01, 0xFF, 0x00, 0x60, 0x00, 0x38, - 0x00, 0x0F, 0x00, 0x01, 0xF0, 0x00, 0x7F, 0xFF, 0x0F, 0xFF, 0xF9, 0xFF, - 0xFF, 0x9F, 0xFF, 0xF9, 0xFF, 0xFF, 0x0F, 0xFF, 0xEF, 0x00, 0x3F, 0xC0, - 0x03, 0xF8, 0x00, 0x7F, 0x00, 0x1C, 0xF8, 0x07, 0x0F, 0xFF, 0xC0, 0x7F, - 0xC0, 0xFF, 0x80, 0x00, 0x3F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, - 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, - 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x87, 0xE0, 0x1F, 0x9F, 0xF0, 0x1F, 0xBF, - 0xF8, 0x1F, 0xF1, 0xF8, 0x1F, 0xC0, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, - 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x3F, 0xC1, 0xFE, 0xFF, 0xE3, - 0xFF, 0x0F, 0x07, 0xE1, 0xFE, 0x3F, 0xC7, 0xF8, 0x7F, 0x03, 0xC0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x7F, 0xC3, 0xF8, 0x3F, 0x07, 0xE0, 0xFC, 0x1F, - 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, 0xFC, 0x1F, 0x83, - 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, 0xE1, 0xFE, 0xFF, 0xE0, 0x00, - 0x70, 0x07, 0xF0, 0x3F, 0xC0, 0xFF, 0x03, 0xFC, 0x07, 0xF0, 0x0F, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0x01, 0xFC, 0x03, 0xF0, - 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, - 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, - 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, - 0xDC, 0x3F, 0xF8, 0xFB, 0xE3, 0xEF, 0x0F, 0xBC, 0x7C, 0x7F, 0xE0, 0x7E, - 0x00, 0xFF, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xF0, - 0x00, 0x01, 0xF8, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, - 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xE1, 0xFF, 0x83, - 0xF0, 0x3F, 0x01, 0xF8, 0x0E, 0x00, 0xFC, 0x06, 0x00, 0x7E, 0x06, 0x00, - 0x3F, 0x06, 0x00, 0x1F, 0x86, 0x00, 0x0F, 0xC7, 0x00, 0x07, 0xE7, 0x80, - 0x03, 0xF7, 0xE0, 0x01, 0xFF, 0xF8, 0x00, 0xFF, 0xFC, 0x00, 0x7E, 0x7F, - 0x00, 0x3F, 0x1F, 0xC0, 0x1F, 0x8F, 0xE0, 0x0F, 0xC3, 0xF8, 0x07, 0xE0, - 0xFE, 0x03, 0xF0, 0x7F, 0x81, 0xF8, 0x1F, 0xC0, 0xFC, 0x0F, 0xF0, 0xFF, - 0x07, 0xFD, 0xFF, 0xC7, 0xFF, 0xFF, 0x87, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, - 0x3F, 0x07, 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, - 0x07, 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x07, - 0xE0, 0xFC, 0x1F, 0x83, 0xF0, 0x7E, 0x0F, 0xC1, 0xF8, 0x3F, 0x0F, 0xF7, - 0xFF, 0x00, 0x07, 0xE0, 0x3F, 0x07, 0xFC, 0xFF, 0x87, 0xFC, 0x0F, 0xEF, - 0xFE, 0x7F, 0xF0, 0x3F, 0xC3, 0xFF, 0x1F, 0x81, 0xFC, 0x0F, 0xE0, 0x7E, - 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x7E, 0x03, 0xF0, 0x1F, 0x83, 0xF0, 0x1F, - 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0xFC, 0x07, 0xE0, 0x3F, 0x07, - 0xE0, 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x0F, 0xC1, 0xF8, 0x0F, 0xC0, - 0x7E, 0x0F, 0xC0, 0x7E, 0x03, 0xF0, 0x7E, 0x03, 0xF0, 0x1F, 0x83, 0xF0, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x07, 0xE0, 0xFC, 0x07, 0xE0, 0x3F, - 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x0F, 0xC1, 0xF8, 0x0F, - 0xC0, 0x7E, 0x1F, 0xE0, 0xFF, 0x07, 0xFB, 0xFF, 0x8F, 0xFC, 0x7F, 0xE0, - 0x00, 0x07, 0xE0, 0xFF, 0x9F, 0xF0, 0x3F, 0xBF, 0xF8, 0x1F, 0xF1, 0xF8, - 0x1F, 0xC0, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, 0x1F, 0x80, 0xFC, - 0x1F, 0x80, 0xFC, 0x3F, 0xC1, 0xFE, 0xFF, 0xE3, 0xFF, 0x01, 0xFC, 0x00, - 0x3F, 0xF8, 0x03, 0xE3, 0xE0, 0x3E, 0x0F, 0x83, 0xF0, 0x7E, 0x1F, 0x01, - 0xF1, 0xF8, 0x0F, 0xCF, 0xC0, 0x7E, 0xFE, 0x03, 0xFF, 0xF0, 0x1F, 0xFF, - 0x80, 0xFF, 0xFC, 0x07, 0xFF, 0xE0, 0x3F, 0xFF, 0x01, 0xFF, 0xF8, 0x0F, - 0xFF, 0xC0, 0x7F, 0x7E, 0x03, 0xF3, 0xF0, 0x1F, 0x8F, 0x80, 0xF8, 0x7E, - 0x0F, 0xC1, 0xF0, 0x7C, 0x07, 0xC7, 0xC0, 0x1F, 0xFC, 0x00, 0x3F, 0x80, - 0x00, 0x0F, 0xC0, 0xFF, 0xBF, 0xF0, 0x3F, 0xF1, 0xF8, 0x1F, 0xC0, 0xFC, - 0x1F, 0xC0, 0xFC, 0x1F, 0x80, 0xFE, 0x1F, 0x80, 0x7E, 0x1F, 0x80, 0x7F, - 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, - 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, 0x1F, 0x80, 0x7F, - 0x1F, 0x80, 0x7E, 0x1F, 0x80, 0x7E, 0x1F, 0x80, 0xFE, 0x1F, 0x80, 0xFC, - 0x1F, 0xC1, 0xF8, 0x1F, 0xE3, 0xF8, 0x1F, 0xBF, 0xE0, 0x1F, 0x8F, 0xC0, - 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, - 0x1F, 0x80, 0x00, 0x1F, 0x80, 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0xF8, 0x00, - 0x00, 0xF8, 0x08, 0x07, 0xFE, 0x18, 0x0F, 0xC7, 0x38, 0x1F, 0x83, 0xF8, - 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0x7E, 0x01, 0xF8, - 0x7E, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, - 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, 0xFE, 0x01, 0xF8, - 0xFE, 0x01, 0xF8, 0x7E, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, - 0x3F, 0x83, 0xF8, 0x1F, 0xC7, 0xF8, 0x0F, 0xFD, 0xF8, 0x03, 0xF1, 0xF8, - 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, - 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x03, 0xFC, 0x00, 0x0F, 0xFF, - 0x00, 0x07, 0x9F, 0xF3, 0xF8, 0xFE, 0xFF, 0x8F, 0xFF, 0xF1, 0xFE, 0x7E, - 0x3F, 0x87, 0x87, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, - 0x7E, 0x00, 0x0F, 0xC0, 0x01, 0xF8, 0x00, 0x3F, 0x00, 0x07, 0xE0, 0x00, - 0xFC, 0x00, 0x1F, 0x80, 0x03, 0xF0, 0x00, 0x7E, 0x00, 0x0F, 0xC0, 0x01, - 0xF8, 0x00, 0x7F, 0x80, 0x3F, 0xFC, 0x00, 0x0F, 0x84, 0x3F, 0xF8, 0xE1, - 0xF3, 0x80, 0xEF, 0x00, 0xDE, 0x01, 0xBE, 0x01, 0x7E, 0x00, 0xFF, 0x01, - 0xFF, 0x81, 0xFF, 0xC3, 0xFF, 0xC3, 0xFF, 0xC1, 0xFF, 0x80, 0xFF, 0x80, - 0x7F, 0x80, 0x7F, 0x80, 0x7F, 0x00, 0x7E, 0x00, 0xFE, 0x01, 0xDF, 0x0F, - 0x37, 0xFC, 0x43, 0xF0, 0x01, 0x00, 0x0C, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x7C, 0x03, 0xF0, 0x1F, 0xC0, 0xFF, 0xF3, 0xFF, 0xC3, 0xF0, 0x0F, - 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, - 0xF0, 0x0F, 0xC0, 0x3F, 0x00, 0xFC, 0x03, 0xF0, 0x0F, 0xC0, 0x3F, 0x00, - 0xFC, 0x23, 0xF0, 0x8F, 0xE6, 0x1F, 0xF0, 0x7F, 0x80, 0xF8, 0x00, 0xFF, - 0x87, 0xFC, 0x1F, 0xC0, 0xFE, 0x07, 0xE0, 0x3F, 0x03, 0xF0, 0x1F, 0x81, - 0xF8, 0x0F, 0xC0, 0xFC, 0x07, 0xE0, 0x7E, 0x03, 0xF0, 0x3F, 0x01, 0xF8, - 0x1F, 0x80, 0xFC, 0x0F, 0xC0, 0x7E, 0x07, 0xE0, 0x3F, 0x03, 0xF0, 0x1F, - 0x81, 0xF8, 0x0F, 0xC0, 0xFC, 0x07, 0xE0, 0x7E, 0x03, 0xF0, 0x3F, 0x01, - 0xF8, 0x1F, 0x80, 0xFC, 0x0F, 0xC0, 0x7E, 0x07, 0xE0, 0x7F, 0x03, 0xF8, - 0x7F, 0xC0, 0xFF, 0xEF, 0xF8, 0x3F, 0xE7, 0xC0, 0x0F, 0xC2, 0x00, 0xFF, - 0xF1, 0xFC, 0xFF, 0x01, 0xE3, 0xFC, 0x03, 0x07, 0xF0, 0x0C, 0x1F, 0xC0, - 0x60, 0x3F, 0x81, 0x80, 0xFE, 0x04, 0x01, 0xF8, 0x30, 0x07, 0xF0, 0xC0, - 0x1F, 0xC6, 0x00, 0x3F, 0x98, 0x00, 0xFE, 0x40, 0x01, 0xFB, 0x00, 0x07, - 0xFC, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, 0x01, 0xF0, - 0x00, 0x07, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, - 0x01, 0x00, 0x00, 0xFF, 0xE7, 0xFF, 0x3F, 0xBF, 0xE0, 0xFE, 0x07, 0x0F, - 0xE0, 0x7F, 0x03, 0x83, 0xF0, 0x1F, 0x81, 0x81, 0xFC, 0x0F, 0xC0, 0xC0, - 0xFE, 0x07, 0xF0, 0x40, 0x3F, 0x03, 0xF8, 0x60, 0x1F, 0xC3, 0xFC, 0x30, - 0x07, 0xE1, 0xFE, 0x10, 0x03, 0xF0, 0x9F, 0x98, 0x01, 0xFC, 0xCF, 0xCC, - 0x00, 0x7E, 0x67, 0xEC, 0x00, 0x3F, 0xE1, 0xFE, 0x00, 0x1F, 0xF0, 0xFE, - 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x03, 0xF8, 0x3F, 0x80, 0x00, 0xFC, 0x0F, - 0x80, 0x00, 0x7C, 0x07, 0xC0, 0x00, 0x3E, 0x03, 0xE0, 0x00, 0x0F, 0x00, - 0xE0, 0x00, 0x07, 0x00, 0x70, 0x00, 0x03, 0x80, 0x38, 0x00, 0x00, 0x80, - 0x08, 0x00, 0xFF, 0xF3, 0xFD, 0xFF, 0x03, 0xC3, 0xFC, 0x0E, 0x07, 0xF0, - 0x30, 0x1F, 0xE1, 0x80, 0x3F, 0x8C, 0x00, 0x7F, 0x70, 0x01, 0xFF, 0x80, - 0x03, 0xFC, 0x00, 0x0F, 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0x3F, 0x80, 0x00, - 0xFF, 0x00, 0x07, 0xFE, 0x00, 0x1B, 0xF8, 0x00, 0xCF, 0xF0, 0x06, 0x1F, - 0xC0, 0x38, 0x3F, 0x80, 0xC0, 0xFF, 0x07, 0x01, 0xFC, 0x3C, 0x07, 0xFB, - 0xFC, 0x7F, 0xF0, 0xFF, 0xE3, 0xFB, 0xFC, 0x07, 0x8F, 0xE0, 0x18, 0x7F, - 0x01, 0x81, 0xF8, 0x0C, 0x0F, 0xE0, 0x60, 0x7F, 0x06, 0x01, 0xF8, 0x30, - 0x0F, 0xE1, 0x80, 0x7F, 0x18, 0x01, 0xF8, 0xC0, 0x0F, 0xE6, 0x00, 0x3F, - 0x60, 0x01, 0xFF, 0x00, 0x0F, 0xF0, 0x00, 0x3F, 0x80, 0x01, 0xFC, 0x00, - 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x38, - 0x00, 0x00, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x60, 0x03, 0x82, 0x00, 0x3E, - 0x30, 0x01, 0xF1, 0x00, 0x0F, 0x98, 0x00, 0x3F, 0x80, 0x00, 0xF0, 0x00, - 0x00, 0x7F, 0xFF, 0xEF, 0xFF, 0xFD, 0xE0, 0x7F, 0x30, 0x1F, 0xC6, 0x07, - 0xF8, 0x80, 0xFE, 0x00, 0x3F, 0xC0, 0x07, 0xF0, 0x01, 0xFC, 0x00, 0x3F, - 0x80, 0x0F, 0xE0, 0x03, 0xFC, 0x00, 0x7F, 0x00, 0x1F, 0xE0, 0x03, 0xF8, - 0x00, 0xFE, 0x03, 0x3F, 0xC0, 0x67, 0xF0, 0x19, 0xFE, 0x07, 0x3F, 0x83, - 0xEF, 0xFF, 0xFD, 0xFF, 0xFF, 0x80, 0x00, 0x7C, 0x07, 0xE0, 0x3E, 0x00, - 0xF8, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, - 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, - 0x1F, 0x00, 0xF8, 0x03, 0xC0, 0x3C, 0x01, 0xF0, 0x00, 0xF0, 0x03, 0xE0, - 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, - 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, - 0x00, 0x3E, 0x00, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xF0, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x3E, 0x00, - 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, - 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0x7C, 0x00, 0xF0, - 0x00, 0xF0, 0x03, 0xE0, 0x3C, 0x01, 0xF0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, - 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, - 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x01, 0xF0, 0x07, 0xC0, 0x7E, - 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0xFF, 0xC0, 0x47, 0xFF, 0xC3, 0x9F, - 0xFF, 0xFF, 0x70, 0x7F, 0xF8, 0x80, 0x7F, 0xC0, 0x00, 0x3E, 0x00}; - -const GFXglyph FreeSerifBold24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 8, 34, 16, 4, -32}, // 0x21 '!' - {34, 17, 13, 26, 4, -32}, // 0x22 '"' - {62, 23, 33, 23, 0, -32}, // 0x23 '#' - {157, 21, 39, 24, 1, -34}, // 0x24 '$' - {260, 35, 34, 47, 6, -32}, // 0x25 '%' - {409, 34, 34, 39, 3, -32}, // 0x26 '&' - {554, 5, 13, 13, 4, -32}, // 0x27 ''' - {563, 12, 41, 16, 2, -32}, // 0x28 '(' - {625, 12, 41, 16, 1, -32}, // 0x29 ')' - {687, 18, 21, 24, 3, -32}, // 0x2A '*' - {735, 26, 25, 32, 3, -24}, // 0x2B '+' - {817, 8, 15, 12, 2, -6}, // 0x2C ',' - {832, 11, 5, 16, 2, -12}, // 0x2D '-' - {839, 8, 8, 12, 2, -6}, // 0x2E '.' - {847, 15, 33, 13, -1, -32}, // 0x2F '/' - {909, 22, 34, 23, 1, -32}, // 0x30 '0' - {1003, 18, 33, 23, 3, -32}, // 0x31 '1' - {1078, 21, 33, 24, 1, -32}, // 0x32 '2' - {1165, 21, 34, 24, 1, -32}, // 0x33 '3' - {1255, 21, 33, 24, 1, -32}, // 0x34 '4' - {1342, 20, 32, 23, 2, -31}, // 0x35 '5' - {1422, 21, 34, 24, 1, -32}, // 0x36 '6' - {1512, 21, 32, 23, 1, -31}, // 0x37 '7' - {1596, 21, 34, 23, 1, -32}, // 0x38 '8' - {1686, 22, 34, 23, 1, -32}, // 0x39 '9' - {1780, 8, 24, 16, 4, -22}, // 0x3A ':' - {1804, 9, 31, 16, 3, -22}, // 0x3B ';' - {1839, 26, 26, 32, 3, -24}, // 0x3C '<' - {1924, 26, 17, 32, 3, -20}, // 0x3D '=' - {1980, 26, 26, 32, 3, -24}, // 0x3E '>' - {2065, 18, 34, 24, 3, -32}, // 0x3F '?' - {2142, 33, 34, 44, 5, -32}, // 0x40 '@' - {2283, 32, 33, 34, 1, -32}, // 0x41 'A' - {2415, 28, 32, 31, 1, -31}, // 0x42 'B' - {2527, 30, 34, 33, 2, -32}, // 0x43 'C' - {2655, 32, 32, 34, 1, -31}, // 0x44 'D' - {2783, 28, 32, 32, 2, -31}, // 0x45 'E' - {2895, 25, 32, 29, 2, -31}, // 0x46 'F' - {2995, 33, 34, 36, 2, -32}, // 0x47 'G' - {3136, 33, 32, 37, 2, -31}, // 0x48 'H' - {3268, 15, 32, 18, 2, -31}, // 0x49 'I' - {3328, 22, 37, 24, 0, -31}, // 0x4A 'J' - {3430, 34, 32, 36, 2, -31}, // 0x4B 'K' - {3566, 28, 32, 31, 2, -31}, // 0x4C 'L' - {3678, 43, 32, 45, 0, -31}, // 0x4D 'M' - {3850, 31, 32, 34, 1, -31}, // 0x4E 'N' - {3974, 33, 34, 37, 2, -32}, // 0x4F 'O' - {4115, 26, 32, 30, 2, -31}, // 0x50 'P' - {4219, 33, 41, 37, 2, -32}, // 0x51 'Q' - {4389, 31, 32, 34, 2, -31}, // 0x52 'R' - {4513, 21, 34, 27, 3, -32}, // 0x53 'S' - {4603, 28, 32, 30, 1, -31}, // 0x54 'T' - {4715, 30, 33, 34, 2, -31}, // 0x55 'U' - {4839, 33, 32, 33, 0, -31}, // 0x56 'V' - {4971, 45, 33, 46, 1, -31}, // 0x57 'W' - {5157, 32, 32, 34, 1, -31}, // 0x58 'X' - {5285, 32, 32, 33, 1, -31}, // 0x59 'Y' - {5413, 28, 32, 30, 1, -31}, // 0x5A 'Z' - {5525, 11, 39, 16, 3, -31}, // 0x5B '[' - {5579, 15, 33, 13, -1, -32}, // 0x5C '\' - {5641, 11, 39, 16, 2, -31}, // 0x5D ']' - {5695, 21, 17, 27, 3, -31}, // 0x5E '^' - {5740, 24, 3, 23, 0, 5}, // 0x5F '_' - {5749, 11, 9, 16, 0, -33}, // 0x60 '`' - {5762, 22, 24, 23, 1, -22}, // 0x61 'a' - {5828, 25, 33, 26, 0, -31}, // 0x62 'b' - {5932, 19, 24, 20, 1, -22}, // 0x63 'c' - {5989, 24, 33, 26, 1, -31}, // 0x64 'd' - {6088, 18, 24, 21, 1, -22}, // 0x65 'e' - {6142, 17, 33, 18, 1, -32}, // 0x66 'f' - {6213, 19, 32, 24, 2, -22}, // 0x67 'g' - {6289, 24, 32, 26, 0, -31}, // 0x68 'h' - {6385, 11, 33, 14, 1, -32}, // 0x69 'i' - {6431, 14, 42, 18, 0, -32}, // 0x6A 'j' - {6505, 25, 32, 26, 0, -31}, // 0x6B 'k' - {6605, 11, 32, 13, 0, -31}, // 0x6C 'l' - {6649, 37, 23, 39, 0, -22}, // 0x6D 'm' - {6756, 24, 23, 26, 0, -22}, // 0x6E 'n' - {6825, 21, 24, 24, 1, -22}, // 0x6F 'o' - {6888, 24, 32, 26, 0, -22}, // 0x70 'p' - {6984, 24, 32, 26, 1, -22}, // 0x71 'q' - {7080, 19, 23, 20, 0, -22}, // 0x72 'r' - {7135, 15, 24, 19, 2, -22}, // 0x73 's' - {7180, 14, 31, 16, 1, -29}, // 0x74 't' - {7235, 25, 23, 27, 0, -21}, // 0x75 'u' - {7307, 22, 23, 23, 0, -21}, // 0x76 'v' - {7371, 33, 23, 33, 0, -21}, // 0x77 'w' - {7466, 22, 22, 24, 1, -21}, // 0x78 'x' - {7527, 21, 31, 23, 0, -21}, // 0x79 'y' - {7609, 19, 22, 21, 1, -21}, // 0x7A 'z' - {7662, 14, 42, 19, 1, -33}, // 0x7B '{' - {7736, 4, 33, 10, 3, -32}, // 0x7C '|' - {7753, 14, 42, 19, 4, -33}, // 0x7D '}' - {7827, 22, 7, 24, 1, -14}}; // 0x7E '~' - -const GFXfont FreeSerifBold24pt7b PROGMEM = { - (uint8_t *)FreeSerifBold24pt7bBitmaps, - (GFXglyph *)FreeSerifBold24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 8519 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h deleted file mode 100644 index 2f1cf8f..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBold9pt7b.h +++ /dev/null @@ -1,204 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBold9pt7bBitmaps[] PROGMEM = { - 0xFF, 0xF4, 0x92, 0x1F, 0xF0, 0xCF, 0x3C, 0xE3, 0x88, 0x13, 0x09, 0x84, - 0xC2, 0x47, 0xF9, 0x90, 0xC8, 0x4C, 0xFF, 0x13, 0x09, 0x0C, 0x86, 0x40, - 0x10, 0x38, 0xD6, 0x92, 0xD2, 0xF0, 0x7C, 0x3E, 0x17, 0x93, 0x93, 0xD6, - 0x7C, 0x10, 0x3C, 0x21, 0xCF, 0x0E, 0x24, 0x30, 0xA0, 0xC5, 0x03, 0x34, - 0xE7, 0x26, 0x40, 0xB9, 0x04, 0xC4, 0x23, 0x30, 0x8C, 0x84, 0x1C, 0x0F, - 0x00, 0xCC, 0x06, 0x60, 0x3E, 0x00, 0xE7, 0x8F, 0x18, 0x9C, 0x8C, 0xE4, - 0xE3, 0xC7, 0x9E, 0x3C, 0x72, 0xFD, 0xE0, 0xFF, 0x80, 0x32, 0x44, 0xCC, - 0xCC, 0xCC, 0xC4, 0x62, 0x10, 0x84, 0x22, 0x33, 0x33, 0x33, 0x32, 0x64, - 0x80, 0x31, 0x6B, 0xB1, 0x8E, 0xD6, 0x8C, 0x00, 0x08, 0x04, 0x02, 0x01, - 0x0F, 0xF8, 0x40, 0x20, 0x10, 0x08, 0x00, 0xDF, 0x95, 0x00, 0xFF, 0xFF, - 0x80, 0x0C, 0x21, 0x86, 0x10, 0xC3, 0x08, 0x61, 0x84, 0x30, 0xC0, 0x1C, - 0x33, 0x98, 0xDC, 0x7E, 0x3F, 0x1F, 0x8F, 0xC7, 0xE3, 0xB1, 0x98, 0xC3, - 0x80, 0x08, 0xE3, 0x8E, 0x38, 0xE3, 0x8E, 0x38, 0xE3, 0xBF, 0x3C, 0x3F, - 0x23, 0xC0, 0xE0, 0x70, 0x30, 0x38, 0x18, 0x18, 0x18, 0x5F, 0xDF, 0xE0, - 0x7C, 0x8E, 0x0E, 0x0E, 0x0C, 0x1E, 0x07, 0x03, 0x03, 0x02, 0xE6, 0xF8, - 0x06, 0x0E, 0x0E, 0x3E, 0x2E, 0x4E, 0x8E, 0x8E, 0xFF, 0xFF, 0x0E, 0x0E, - 0x3F, 0x7E, 0x40, 0x40, 0xF8, 0xFC, 0x1E, 0x06, 0x02, 0x02, 0xE4, 0xF8, - 0x07, 0x1C, 0x30, 0x70, 0xFC, 0xE6, 0xE7, 0xE7, 0xE7, 0x67, 0x66, 0x3C, - 0x7F, 0x3F, 0xA0, 0xD0, 0x40, 0x60, 0x30, 0x10, 0x18, 0x0C, 0x04, 0x06, - 0x03, 0x00, 0x3C, 0xC6, 0xC6, 0xC6, 0xFC, 0x7C, 0x3E, 0xCF, 0xC7, 0xC7, - 0xC6, 0x7C, 0x3E, 0x33, 0xB8, 0xDC, 0x7E, 0x3F, 0x1D, 0xCE, 0x7F, 0x07, - 0x07, 0x0F, 0x1C, 0x00, 0xFF, 0x80, 0x3F, 0xE0, 0xFF, 0x80, 0x37, 0xE5, - 0x40, 0x00, 0x00, 0x70, 0x78, 0x78, 0x78, 0x38, 0x03, 0x80, 0x3C, 0x03, - 0xC0, 0x30, 0xFF, 0xC0, 0x00, 0x00, 0x00, 0xFF, 0xC0, 0xC0, 0x3C, 0x03, - 0xC0, 0x1C, 0x01, 0xC1, 0xE1, 0xE1, 0xE0, 0xE0, 0x00, 0x00, 0x3D, 0x9F, - 0x3E, 0x70, 0xE1, 0x04, 0x08, 0x00, 0x70, 0xE1, 0xC0, 0x0F, 0x81, 0x83, - 0x18, 0xC4, 0x89, 0x9C, 0x4C, 0xE4, 0x67, 0x22, 0x39, 0x22, 0x4F, 0xE3, - 0x00, 0x0C, 0x10, 0x1F, 0x00, 0x02, 0x00, 0x30, 0x01, 0xC0, 0x0E, 0x00, - 0xB8, 0x05, 0xC0, 0x4F, 0x02, 0x38, 0x3F, 0xE1, 0x07, 0x18, 0x3D, 0xE3, - 0xF0, 0xFF, 0x87, 0x1C, 0xE3, 0x9C, 0x73, 0x9C, 0x7F, 0x0E, 0x71, 0xC7, - 0x38, 0xE7, 0x1C, 0xE7, 0x7F, 0xC0, 0x1F, 0x26, 0x1D, 0xC1, 0xB0, 0x1E, - 0x01, 0xC0, 0x38, 0x07, 0x00, 0xE0, 0x0E, 0x04, 0xE1, 0x0F, 0xC0, 0xFF, - 0x0E, 0x71, 0xC7, 0x38, 0x77, 0x0E, 0xE1, 0xDC, 0x3B, 0x87, 0x70, 0xCE, - 0x39, 0xC6, 0x7F, 0x80, 0xFF, 0xCE, 0x19, 0xC1, 0x38, 0x87, 0x30, 0xFE, - 0x1C, 0xC3, 0x88, 0x70, 0x2E, 0x0D, 0xC3, 0x7F, 0xE0, 0xFF, 0xDC, 0x37, - 0x05, 0xC4, 0x73, 0x1F, 0xC7, 0x31, 0xC4, 0x70, 0x1C, 0x07, 0x03, 0xE0, - 0x1F, 0x23, 0x0E, 0x70, 0x6E, 0x02, 0xE0, 0x0E, 0x00, 0xE1, 0xFE, 0x0E, - 0x60, 0xE7, 0x0E, 0x38, 0xE0, 0xF8, 0xF9, 0xF7, 0x0E, 0x70, 0xE7, 0x0E, - 0x70, 0xE7, 0xFE, 0x70, 0xE7, 0x0E, 0x70, 0xE7, 0x0E, 0x70, 0xEF, 0x9F, - 0xFB, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9D, 0xF0, 0x1F, 0x0E, 0x0E, 0x0E, - 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0x0E, 0xCE, 0xCC, 0x78, 0xF9, 0xF3, - 0x82, 0x1C, 0x20, 0xE2, 0x07, 0x20, 0x3F, 0x01, 0xDC, 0x0E, 0x70, 0x73, - 0xC3, 0x8F, 0x1C, 0x3D, 0xF3, 0xF0, 0xF8, 0x0E, 0x01, 0xC0, 0x38, 0x07, - 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x70, 0x2E, 0x09, 0xC3, 0x7F, 0xE0, 0xF8, - 0x0F, 0x3C, 0x1E, 0x3C, 0x1E, 0x2E, 0x2E, 0x2E, 0x2E, 0x26, 0x4E, 0x27, - 0x4E, 0x27, 0x4E, 0x23, 0x8E, 0x23, 0x8E, 0x21, 0x0E, 0x71, 0x1F, 0xF0, - 0xEE, 0x09, 0xE1, 0x3E, 0x25, 0xE4, 0x9E, 0x91, 0xD2, 0x1E, 0x43, 0xC8, - 0x39, 0x03, 0x70, 0x20, 0x1F, 0x83, 0x0C, 0x70, 0xEE, 0x07, 0xE0, 0x7E, - 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x77, 0x0E, 0x30, 0xC1, 0xF8, 0xFF, 0x1C, - 0xE7, 0x1D, 0xC7, 0x71, 0xDC, 0xE7, 0xF1, 0xC0, 0x70, 0x1C, 0x07, 0x03, - 0xE0, 0x0F, 0x83, 0x9C, 0x70, 0xE6, 0x06, 0xE0, 0x7E, 0x07, 0xE0, 0x7E, - 0x07, 0xE0, 0x76, 0x06, 0x30, 0xC1, 0x98, 0x0F, 0x00, 0x78, 0x03, 0xE0, - 0xFF, 0x07, 0x38, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x38, 0x7E, 0x07, 0x70, - 0x77, 0x87, 0x3C, 0x71, 0xEF, 0x8F, 0x39, 0x47, 0xC1, 0xC0, 0xF0, 0x7C, - 0x3E, 0x0F, 0x83, 0xC3, 0xC6, 0xBC, 0xFF, 0xFC, 0xE3, 0x8E, 0x10, 0xE0, - 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xF0, - 0xF8, 0xEE, 0x09, 0xC1, 0x38, 0x27, 0x04, 0xE0, 0x9C, 0x13, 0x82, 0x70, - 0x4E, 0x08, 0xE2, 0x0F, 0x80, 0xFC, 0x7B, 0xC1, 0x0E, 0x08, 0x70, 0x81, - 0xC4, 0x0E, 0x20, 0x7A, 0x01, 0xD0, 0x0E, 0x80, 0x38, 0x01, 0xC0, 0x04, - 0x00, 0x20, 0x00, 0xFD, 0xFB, 0xDC, 0x38, 0x43, 0x87, 0x10, 0xE1, 0xC4, - 0x38, 0xF2, 0x07, 0x2E, 0x81, 0xD3, 0xA0, 0x34, 0x70, 0x0E, 0x1C, 0x03, - 0x87, 0x00, 0x60, 0x80, 0x10, 0x20, 0xFE, 0xF3, 0xC3, 0x0F, 0x10, 0x39, - 0x00, 0xF0, 0x03, 0x80, 0x1E, 0x01, 0x70, 0x09, 0xC0, 0x8F, 0x08, 0x3D, - 0xF3, 0xF0, 0xFC, 0x7B, 0xC1, 0x8E, 0x08, 0x38, 0x81, 0xE8, 0x07, 0x40, - 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x1F, 0x00, 0xFF, 0xD8, - 0x72, 0x1E, 0x43, 0x80, 0xE0, 0x1C, 0x07, 0x01, 0xC0, 0x38, 0x2E, 0x0F, - 0x83, 0x7F, 0xE0, 0xFC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xF0, 0xC1, - 0x06, 0x18, 0x20, 0xC3, 0x04, 0x18, 0x60, 0x83, 0x0C, 0xF3, 0x33, 0x33, - 0x33, 0x33, 0x33, 0x33, 0xF0, 0x18, 0x1C, 0x34, 0x26, 0x62, 0x43, 0xC1, - 0xFF, 0x80, 0xC6, 0x30, 0x7C, 0x63, 0xB1, 0xC0, 0xE1, 0xF3, 0x3B, 0x9D, - 0xCE, 0xFF, 0x80, 0xF0, 0x1C, 0x07, 0x01, 0xDC, 0x7B, 0x9C, 0x77, 0x1D, - 0xC7, 0x71, 0xDC, 0x77, 0x39, 0x3C, 0x3C, 0xED, 0x9F, 0x0E, 0x1C, 0x38, - 0x39, 0x3C, 0x07, 0x80, 0xE0, 0x38, 0xEE, 0x77, 0xB8, 0xEE, 0x3B, 0x8E, - 0xE3, 0xB8, 0xE7, 0x78, 0xEF, 0x3C, 0x66, 0xE6, 0xFE, 0xE0, 0xE0, 0xE0, - 0x72, 0x3C, 0x3E, 0xED, 0xC7, 0xC7, 0x0E, 0x1C, 0x38, 0x70, 0xE1, 0xC7, - 0xC0, 0x31, 0xDF, 0xBF, 0x7E, 0xE7, 0x90, 0x60, 0xFC, 0xFE, 0x0C, 0x17, - 0xC0, 0xF0, 0x1C, 0x07, 0x01, 0xDC, 0x7B, 0x9C, 0xE7, 0x39, 0xCE, 0x73, - 0x9C, 0xE7, 0x3B, 0xFF, 0x73, 0x9D, 0xE7, 0x39, 0xCE, 0x73, 0x9D, 0xF0, - 0x1C, 0x71, 0xCF, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xC7, 0x1C, 0x7D, 0xBE, - 0xF0, 0x1C, 0x07, 0x01, 0xCE, 0x71, 0x1C, 0x87, 0x41, 0xF8, 0x77, 0x1C, - 0xE7, 0x1B, 0xEF, 0xF3, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9D, 0xF0, 0xF7, - 0x38, 0xF7, 0xB9, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, - 0x39, 0xCE, 0xFF, 0xFE, 0xF7, 0x1E, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, - 0x39, 0xCE, 0xFF, 0xC0, 0x3E, 0x31, 0xB8, 0xFC, 0x7E, 0x3F, 0x1F, 0x8E, - 0xC6, 0x3E, 0x00, 0xF7, 0x1E, 0xE7, 0x1D, 0xC7, 0x71, 0xDC, 0x77, 0x1D, - 0xCE, 0x7F, 0x1C, 0x07, 0x01, 0xC0, 0xF8, 0x00, 0x3C, 0x9C, 0xEE, 0x3B, - 0x8E, 0xE3, 0xB8, 0xEE, 0x39, 0xCE, 0x3F, 0x80, 0xE0, 0x38, 0x0E, 0x07, - 0xC0, 0xF7, 0x7B, 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0xF8, 0x7E, 0x73, - 0xC7, 0x8E, 0x39, 0xB0, 0x10, 0xCF, 0x9C, 0x71, 0xC7, 0x1C, 0x71, 0xD3, - 0x80, 0xF7, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x3F, - 0xC0, 0xFB, 0xB8, 0x8C, 0x87, 0x43, 0xC0, 0xE0, 0x70, 0x10, 0x08, 0x00, - 0xF7, 0xB6, 0x31, 0x73, 0xA3, 0x3A, 0x3D, 0xA3, 0xDC, 0x18, 0xC1, 0x88, - 0x10, 0x80, 0xFB, 0xB8, 0x8E, 0x83, 0x81, 0xC0, 0xF0, 0x98, 0xCE, 0xEF, - 0x80, 0xF7, 0x62, 0x72, 0x34, 0x34, 0x3C, 0x18, 0x18, 0x10, 0x10, 0x10, - 0xE0, 0xE0, 0xFF, 0x1C, 0x70, 0xE3, 0x87, 0x1C, 0x71, 0xFE, 0x19, 0x8C, - 0x63, 0x18, 0xCC, 0x61, 0x8C, 0x63, 0x18, 0xC3, 0xFF, 0xF8, 0xC3, 0x18, - 0xC6, 0x31, 0x86, 0x33, 0x18, 0xC6, 0x31, 0x98, 0xF0, 0x8E}; - -const GFXglyph FreeSerifBold9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 3, 12, 6, 1, -11}, // 0x21 '!' - {5, 6, 5, 10, 2, -11}, // 0x22 '"' - {9, 9, 13, 9, 0, -12}, // 0x23 '#' - {24, 8, 14, 9, 1, -12}, // 0x24 '$' - {38, 14, 12, 18, 2, -11}, // 0x25 '%' - {59, 13, 12, 15, 1, -11}, // 0x26 '&' - {79, 2, 5, 5, 1, -11}, // 0x27 ''' - {81, 4, 15, 6, 1, -11}, // 0x28 '(' - {89, 4, 15, 6, 1, -11}, // 0x29 ')' - {97, 7, 7, 9, 2, -11}, // 0x2A '*' - {104, 9, 9, 12, 1, -8}, // 0x2B '+' - {115, 3, 6, 4, 1, -2}, // 0x2C ',' - {118, 4, 2, 6, 1, -4}, // 0x2D '-' - {119, 3, 3, 4, 1, -2}, // 0x2E '.' - {121, 6, 13, 5, 0, -11}, // 0x2F '/' - {131, 9, 12, 9, 0, -11}, // 0x30 '0' - {145, 6, 12, 9, 1, -11}, // 0x31 '1' - {154, 9, 12, 9, 0, -11}, // 0x32 '2' - {168, 8, 12, 9, 0, -11}, // 0x33 '3' - {180, 8, 12, 9, 1, -11}, // 0x34 '4' - {192, 8, 12, 9, 1, -11}, // 0x35 '5' - {204, 8, 12, 9, 1, -11}, // 0x36 '6' - {216, 9, 12, 9, 0, -11}, // 0x37 '7' - {230, 8, 12, 9, 1, -11}, // 0x38 '8' - {242, 9, 12, 9, 0, -11}, // 0x39 '9' - {256, 3, 9, 6, 1, -8}, // 0x3A ':' - {260, 3, 12, 6, 2, -8}, // 0x3B ';' - {265, 10, 10, 12, 1, -9}, // 0x3C '<' - {278, 10, 5, 12, 1, -6}, // 0x3D '=' - {285, 10, 10, 12, 1, -8}, // 0x3E '>' - {298, 7, 12, 9, 1, -11}, // 0x3F '?' - {309, 13, 12, 17, 2, -11}, // 0x40 '@' - {329, 13, 12, 13, 0, -11}, // 0x41 'A' - {349, 11, 12, 12, 0, -11}, // 0x42 'B' - {366, 11, 12, 13, 1, -11}, // 0x43 'C' - {383, 11, 12, 13, 1, -11}, // 0x44 'D' - {400, 11, 12, 12, 1, -11}, // 0x45 'E' - {417, 10, 12, 11, 1, -11}, // 0x46 'F' - {432, 12, 12, 14, 1, -11}, // 0x47 'G' - {450, 12, 12, 14, 1, -11}, // 0x48 'H' - {468, 5, 12, 7, 1, -11}, // 0x49 'I' - {476, 8, 14, 9, 0, -11}, // 0x4A 'J' - {490, 13, 12, 14, 1, -11}, // 0x4B 'K' - {510, 11, 12, 12, 1, -11}, // 0x4C 'L' - {527, 16, 12, 17, 0, -11}, // 0x4D 'M' - {551, 11, 12, 13, 1, -11}, // 0x4E 'N' - {568, 12, 12, 14, 1, -11}, // 0x4F 'O' - {586, 10, 12, 11, 1, -11}, // 0x50 'P' - {601, 12, 15, 14, 1, -11}, // 0x51 'Q' - {624, 12, 12, 13, 1, -11}, // 0x52 'R' - {642, 8, 12, 10, 1, -11}, // 0x53 'S' - {654, 12, 12, 12, 0, -11}, // 0x54 'T' - {672, 11, 12, 13, 1, -11}, // 0x55 'U' - {689, 13, 13, 13, 0, -11}, // 0x56 'V' - {711, 18, 12, 18, 0, -11}, // 0x57 'W' - {738, 13, 12, 13, 0, -11}, // 0x58 'X' - {758, 13, 12, 13, 0, -11}, // 0x59 'Y' - {778, 11, 12, 12, 1, -11}, // 0x5A 'Z' - {795, 4, 15, 6, 1, -11}, // 0x5B '[' - {803, 6, 13, 5, 0, -11}, // 0x5C '\' - {813, 4, 15, 6, 1, -11}, // 0x5D ']' - {821, 8, 7, 10, 1, -11}, // 0x5E '^' - {828, 9, 1, 9, 0, 3}, // 0x5F '_' - {830, 4, 3, 6, 0, -12}, // 0x60 '`' - {832, 9, 9, 9, 0, -8}, // 0x61 'a' - {843, 10, 12, 10, 0, -11}, // 0x62 'b' - {858, 7, 9, 8, 0, -8}, // 0x63 'c' - {866, 10, 12, 10, 0, -11}, // 0x64 'd' - {881, 8, 9, 8, 0, -8}, // 0x65 'e' - {890, 7, 12, 7, 0, -11}, // 0x66 'f' - {901, 7, 13, 9, 1, -8}, // 0x67 'g' - {913, 10, 12, 10, 0, -11}, // 0x68 'h' - {928, 5, 12, 5, 0, -11}, // 0x69 'i' - {936, 6, 16, 7, 0, -11}, // 0x6A 'j' - {948, 10, 12, 10, 0, -11}, // 0x6B 'k' - {963, 5, 12, 5, 0, -11}, // 0x6C 'l' - {971, 15, 9, 15, 0, -8}, // 0x6D 'm' - {988, 10, 9, 10, 0, -8}, // 0x6E 'n' - {1000, 9, 9, 9, 0, -8}, // 0x6F 'o' - {1011, 10, 13, 10, 0, -8}, // 0x70 'p' - {1028, 10, 13, 10, 0, -8}, // 0x71 'q' - {1045, 8, 9, 8, 0, -8}, // 0x72 'r' - {1054, 5, 9, 7, 1, -8}, // 0x73 's' - {1060, 6, 11, 6, 0, -10}, // 0x74 't' - {1069, 10, 9, 10, 0, -8}, // 0x75 'u' - {1081, 9, 9, 9, 0, -8}, // 0x76 'v' - {1092, 12, 9, 13, 0, -8}, // 0x77 'w' - {1106, 9, 9, 9, 0, -8}, // 0x78 'x' - {1117, 8, 13, 9, 0, -8}, // 0x79 'y' - {1130, 7, 9, 8, 1, -8}, // 0x7A 'z' - {1138, 5, 16, 7, 0, -12}, // 0x7B '{' - {1148, 1, 13, 4, 1, -11}, // 0x7C '|' - {1150, 5, 16, 7, 2, -12}, // 0x7D '}' - {1160, 8, 2, 9, 1, -4}}; // 0x7E '~' - -const GFXfont FreeSerifBold9pt7b PROGMEM = { - (uint8_t *)FreeSerifBold9pt7bBitmaps, (GFXglyph *)FreeSerifBold9pt7bGlyphs, - 0x20, 0x7E, 22}; - -// Approx. 1834 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h deleted file mode 100644 index d6674ce..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic12pt7b.h +++ /dev/null @@ -1,294 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic12pt7bBitmaps[] PROGMEM = { - 0x07, 0x07, 0x07, 0x0F, 0x0E, 0x0E, 0x0C, 0x0C, 0x08, 0x18, 0x10, 0x00, - 0x00, 0x60, 0xF0, 0xF0, 0x60, 0x61, 0xF1, 0xF8, 0xF8, 0x6C, 0x34, 0x12, - 0x08, 0x01, 0x8C, 0x06, 0x60, 0x31, 0x80, 0xCC, 0x06, 0x30, 0xFF, 0xF0, - 0xC6, 0x03, 0x18, 0x0C, 0xC0, 0x63, 0x0F, 0xFF, 0x0C, 0x60, 0x33, 0x01, - 0x8C, 0x06, 0x30, 0x19, 0x80, 0x00, 0x80, 0x08, 0x07, 0xC1, 0x96, 0x31, - 0x33, 0x13, 0x3A, 0x23, 0xE0, 0x1E, 0x01, 0xF0, 0x07, 0x80, 0x7C, 0x05, - 0xC4, 0xCC, 0x48, 0xCC, 0x8C, 0xF8, 0x83, 0x30, 0x1E, 0x01, 0x00, 0x00, - 0x02, 0x07, 0x83, 0x03, 0x9F, 0x81, 0xC4, 0x20, 0x71, 0x10, 0x3C, 0x44, - 0x0E, 0x22, 0x03, 0x88, 0x80, 0xE4, 0x40, 0x1E, 0x31, 0xE0, 0x08, 0xE4, - 0x06, 0x71, 0x01, 0x3C, 0x40, 0x8E, 0x10, 0x23, 0x88, 0x10, 0xE2, 0x04, - 0x39, 0x02, 0x07, 0x80, 0x00, 0xF0, 0x01, 0x98, 0x03, 0x98, 0x03, 0x98, - 0x03, 0xB0, 0x03, 0xE0, 0x03, 0x80, 0x0F, 0x9F, 0x19, 0xCE, 0x31, 0xCC, - 0x61, 0xC8, 0xE1, 0xC8, 0xE0, 0xF0, 0xE0, 0xE0, 0xF0, 0x70, 0x78, 0x79, - 0x3F, 0xBE, 0x7F, 0xED, 0x20, 0x02, 0x08, 0x20, 0xC3, 0x0E, 0x18, 0x30, - 0xE1, 0x83, 0x06, 0x0C, 0x18, 0x30, 0x20, 0x40, 0x80, 0x81, 0x01, 0x00, - 0x10, 0x10, 0x20, 0x20, 0x40, 0xC1, 0x83, 0x06, 0x0C, 0x18, 0x70, 0xE1, - 0x83, 0x0C, 0x18, 0x61, 0x86, 0x00, 0x00, 0x0C, 0x33, 0x6C, 0x9B, 0xAE, - 0x1C, 0x3F, 0xEC, 0x9B, 0x36, 0x0C, 0x02, 0x00, 0x06, 0x00, 0x60, 0x06, - 0x00, 0x60, 0x06, 0x0F, 0xFF, 0xFF, 0xF0, 0x60, 0x06, 0x00, 0x60, 0x06, - 0x00, 0x60, 0x31, 0xCE, 0x31, 0x08, 0x98, 0xFF, 0xFF, 0xC0, 0x6F, 0xF6, - 0x01, 0x80, 0x60, 0x30, 0x0C, 0x07, 0x01, 0x80, 0xE0, 0x30, 0x1C, 0x06, - 0x01, 0x80, 0xC0, 0x30, 0x18, 0x06, 0x03, 0x00, 0x03, 0x81, 0xC8, 0x71, - 0x1C, 0x33, 0x86, 0xE1, 0xDC, 0x3B, 0x87, 0xE0, 0xFC, 0x3B, 0x87, 0x70, - 0xEC, 0x39, 0x87, 0x31, 0xC2, 0x30, 0x3C, 0x00, 0x01, 0xC3, 0xF0, 0x38, - 0x0E, 0x03, 0x81, 0xE0, 0x70, 0x1C, 0x0F, 0x03, 0x80, 0xE0, 0x38, 0x1E, - 0x07, 0x01, 0xC0, 0xF0, 0xFF, 0x80, 0x07, 0x81, 0xF8, 0x47, 0x90, 0x70, - 0x0E, 0x01, 0xC0, 0x30, 0x0E, 0x01, 0x80, 0x60, 0x18, 0x06, 0x01, 0x80, - 0x40, 0x8F, 0xF3, 0xFC, 0xFF, 0x80, 0x07, 0xC3, 0x3C, 0x03, 0x80, 0x70, - 0x0C, 0x03, 0x81, 0xC0, 0xFC, 0x07, 0xC0, 0x78, 0x07, 0x00, 0xE0, 0x1C, - 0x03, 0x30, 0xE7, 0x10, 0x7C, 0x00, 0x00, 0x10, 0x01, 0x80, 0x3C, 0x03, - 0xE0, 0x2E, 0x02, 0x70, 0x23, 0x82, 0x38, 0x21, 0xC2, 0x0E, 0x1F, 0xF9, - 0xFF, 0xC0, 0x38, 0x01, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0xF0, 0x7E, 0x0F, - 0xE0, 0x80, 0x08, 0x01, 0xE0, 0x1F, 0x83, 0xF8, 0x03, 0xC0, 0x1C, 0x00, - 0xC0, 0x0C, 0x00, 0xC0, 0x08, 0x61, 0x8F, 0x30, 0x7C, 0x00, 0x00, 0x60, - 0x78, 0x1C, 0x0F, 0x01, 0xC0, 0x70, 0x1F, 0xC3, 0x8C, 0xE1, 0xDC, 0x3B, - 0x87, 0x61, 0xEC, 0x3D, 0x87, 0x31, 0xE2, 0x38, 0x3C, 0x00, 0x3F, 0xEF, - 0xF9, 0xFF, 0x60, 0xC8, 0x18, 0x06, 0x00, 0x80, 0x30, 0x0C, 0x01, 0x80, - 0x60, 0x1C, 0x03, 0x00, 0xC0, 0x18, 0x06, 0x00, 0x03, 0x81, 0x88, 0x61, - 0x8C, 0x31, 0x86, 0x38, 0xC7, 0xB0, 0x78, 0x0F, 0x86, 0x71, 0x87, 0x60, - 0x6C, 0x0D, 0x81, 0xB0, 0x63, 0x18, 0x3E, 0x00, 0x07, 0x81, 0xC8, 0x71, - 0x8E, 0x33, 0xC6, 0x70, 0xCE, 0x39, 0xC7, 0x38, 0xE3, 0x38, 0x3F, 0x01, - 0xC0, 0x38, 0x0E, 0x03, 0x81, 0xC0, 0xE0, 0x00, 0x0C, 0x3C, 0x78, 0x60, - 0x00, 0x00, 0x00, 0x61, 0xE3, 0xC3, 0x00, 0x0E, 0x0F, 0x0F, 0x0E, 0x00, - 0x00, 0x00, 0x00, 0x38, 0x38, 0x38, 0x18, 0x10, 0x20, 0x40, 0x00, 0x10, - 0x07, 0x01, 0xF0, 0x7C, 0x3F, 0x0F, 0x80, 0xE0, 0x0F, 0x80, 0x3E, 0x00, - 0xF8, 0x03, 0xE0, 0x07, 0x00, 0x10, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0x80, 0x07, 0x00, 0x3F, 0x00, 0x3E, 0x00, 0x7C, 0x00, - 0xF8, 0x01, 0xE0, 0x1F, 0x07, 0xE0, 0xF8, 0x1F, 0x01, 0xE0, 0x0C, 0x00, - 0x00, 0x1E, 0x19, 0x8C, 0xE6, 0x70, 0x38, 0x38, 0x1C, 0x18, 0x18, 0x08, - 0x08, 0x00, 0x00, 0x03, 0x03, 0xC1, 0xE0, 0x60, 0x00, 0x03, 0xF0, 0x07, - 0x06, 0x06, 0x00, 0x86, 0x0E, 0x66, 0x0D, 0xDB, 0x0C, 0xE7, 0x06, 0x33, - 0x83, 0x31, 0xC3, 0x18, 0xE1, 0x8C, 0x70, 0xCC, 0x4C, 0x66, 0x46, 0x1F, - 0xC1, 0x80, 0x00, 0x30, 0x10, 0x07, 0xF0, 0x00, 0x10, 0x00, 0x30, 0x00, - 0x70, 0x00, 0x70, 0x00, 0xF0, 0x01, 0xF0, 0x01, 0x78, 0x03, 0x78, 0x02, - 0x38, 0x04, 0x38, 0x0C, 0x38, 0x0F, 0xF8, 0x18, 0x3C, 0x30, 0x3C, 0x20, - 0x3C, 0x60, 0x3C, 0xF8, 0x7F, 0x1F, 0xFC, 0x07, 0x9E, 0x07, 0x0F, 0x07, - 0x0F, 0x0F, 0x0F, 0x0F, 0x1E, 0x0E, 0x3C, 0x0F, 0xE0, 0x1E, 0x3C, 0x1E, - 0x1E, 0x1C, 0x1E, 0x3C, 0x1E, 0x3C, 0x1E, 0x3C, 0x3E, 0x38, 0x3C, 0x7C, - 0x78, 0xFF, 0xE0, 0x01, 0xF2, 0x0E, 0x1C, 0x38, 0x18, 0xE0, 0x33, 0xC0, - 0x4F, 0x00, 0x9E, 0x00, 0x7C, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, - 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x1E, 0x04, 0x1E, 0x30, 0x0F, 0x80, 0x1F, - 0xFC, 0x01, 0xE3, 0xC0, 0x70, 0x78, 0x1C, 0x0E, 0x0F, 0x03, 0xC3, 0xC0, - 0xF0, 0xE0, 0x3C, 0x38, 0x0F, 0x1E, 0x03, 0xC7, 0x81, 0xF1, 0xC0, 0x78, - 0xF0, 0x1E, 0x3C, 0x0F, 0x0F, 0x03, 0xC3, 0x81, 0xC1, 0xE1, 0xE0, 0xFF, - 0xE0, 0x00, 0x1F, 0xFF, 0x83, 0xC1, 0xC1, 0xC0, 0x40, 0xE0, 0x20, 0xF0, - 0x00, 0x78, 0xC0, 0x38, 0x40, 0x1F, 0xE0, 0x1E, 0x70, 0x0F, 0x18, 0x07, - 0x08, 0x03, 0x84, 0x03, 0xC0, 0x61, 0xE0, 0x20, 0xE0, 0x30, 0xF8, 0x78, - 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0x07, 0x87, 0x07, 0x02, 0x07, 0x02, 0x0F, - 0x00, 0x0F, 0x18, 0x0E, 0x10, 0x0F, 0xF0, 0x1E, 0x70, 0x1E, 0x30, 0x1C, - 0x20, 0x1C, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x7C, 0x00, 0xFE, - 0x00, 0x01, 0xF9, 0x03, 0xC3, 0x83, 0x81, 0xC3, 0x80, 0x43, 0xC0, 0x23, - 0xC0, 0x01, 0xE0, 0x01, 0xF0, 0x00, 0xF0, 0x3F, 0xF8, 0x0F, 0x3C, 0x07, - 0x9E, 0x03, 0xCF, 0x01, 0xC3, 0x80, 0xE1, 0xE0, 0xF0, 0x78, 0x70, 0x0F, - 0xE0, 0x00, 0x1F, 0xE7, 0xF0, 0x78, 0x3C, 0x07, 0x83, 0xC0, 0x70, 0x3C, - 0x0F, 0x03, 0x80, 0xF0, 0x78, 0x0E, 0x07, 0x80, 0xE0, 0x70, 0x1F, 0xFF, - 0x01, 0xE0, 0xF0, 0x1C, 0x0F, 0x03, 0xC0, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, - 0xE0, 0x38, 0x1E, 0x07, 0xC3, 0xE0, 0xFE, 0x7F, 0x00, 0x1F, 0xC1, 0xE0, - 0x70, 0x1C, 0x0F, 0x03, 0xC0, 0xE0, 0x38, 0x1E, 0x07, 0x81, 0xC0, 0x70, - 0x3C, 0x0F, 0x03, 0x81, 0xF0, 0xFE, 0x00, 0x01, 0xFC, 0x03, 0xC0, 0x0F, - 0x00, 0x38, 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x3C, 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x0E, 0x70, 0x3B, 0xC0, 0xCE, - 0x01, 0xF0, 0x00, 0x1F, 0xEF, 0x83, 0xC1, 0x81, 0xC1, 0x80, 0xE1, 0x80, - 0xF1, 0x80, 0x79, 0x00, 0x39, 0x00, 0x1F, 0x80, 0x1F, 0xE0, 0x0F, 0x70, - 0x07, 0x3C, 0x07, 0x8E, 0x03, 0xC7, 0x01, 0xE3, 0xC0, 0xE0, 0xE0, 0xF8, - 0x78, 0xFE, 0xFE, 0x00, 0x1F, 0xE0, 0x0F, 0x00, 0x1C, 0x00, 0x38, 0x00, - 0xF0, 0x01, 0xE0, 0x03, 0x80, 0x07, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x70, - 0x00, 0xE0, 0x03, 0xC0, 0x27, 0x00, 0xCE, 0x03, 0x3C, 0x1E, 0xFF, 0xFC, - 0x0F, 0x80, 0x7E, 0x0F, 0x00, 0xF0, 0x1E, 0x03, 0xE0, 0x3C, 0x0F, 0x80, - 0xB8, 0x17, 0x01, 0x70, 0x5E, 0x02, 0xF1, 0xBC, 0x05, 0xE2, 0x70, 0x11, - 0xC8, 0xE0, 0x23, 0xB3, 0xC0, 0x47, 0x47, 0x81, 0x0F, 0x8E, 0x02, 0x1E, - 0x1C, 0x04, 0x38, 0x78, 0x08, 0x70, 0xF0, 0x30, 0xC3, 0xE0, 0xF9, 0x8F, - 0xE0, 0x1F, 0x03, 0xE0, 0xF0, 0x38, 0x1E, 0x02, 0x03, 0xE0, 0xC0, 0xBC, - 0x10, 0x13, 0xC2, 0x02, 0x78, 0x40, 0x47, 0x90, 0x10, 0xF2, 0x02, 0x0F, - 0x40, 0x41, 0xE8, 0x18, 0x1E, 0x02, 0x03, 0xC0, 0x40, 0x38, 0x08, 0x06, - 0x03, 0x00, 0x40, 0x10, 0x08, 0x00, 0x01, 0xF8, 0x07, 0x1C, 0x0E, 0x0E, - 0x1E, 0x0F, 0x3C, 0x0F, 0x3C, 0x0F, 0x78, 0x0F, 0x78, 0x0F, 0xF8, 0x1F, - 0xF0, 0x1E, 0xF0, 0x1E, 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x78, 0x70, 0x70, - 0x38, 0xE0, 0x1F, 0x80, 0x1F, 0xFC, 0x07, 0x9E, 0x07, 0x0F, 0x07, 0x0F, - 0x0F, 0x0F, 0x0F, 0x0F, 0x0E, 0x1E, 0x0E, 0x3C, 0x1F, 0xF0, 0x1E, 0x00, - 0x1C, 0x00, 0x1C, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x7C, 0x00, - 0xFE, 0x00, 0x01, 0xF8, 0x07, 0x1C, 0x0E, 0x0E, 0x1E, 0x0F, 0x3C, 0x0F, - 0x3C, 0x0F, 0x78, 0x0F, 0x78, 0x1F, 0xF8, 0x1F, 0xF0, 0x1E, 0xF0, 0x1E, - 0xF0, 0x3C, 0xF0, 0x3C, 0xF0, 0x78, 0x70, 0x70, 0x39, 0xC0, 0x0E, 0x00, - 0x08, 0x02, 0x3F, 0x04, 0x7F, 0xF8, 0x83, 0xF0, 0x1F, 0xF8, 0x07, 0x9E, - 0x07, 0x8F, 0x07, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x1E, 0x0E, 0x3C, - 0x1F, 0xF0, 0x1E, 0xF0, 0x1C, 0xF0, 0x3C, 0xF0, 0x3C, 0x78, 0x3C, 0x78, - 0x3C, 0x78, 0x7C, 0x3C, 0xFE, 0x3E, 0x07, 0x91, 0xC7, 0x18, 0x73, 0x82, - 0x38, 0x23, 0xC0, 0x3E, 0x01, 0xF0, 0x0F, 0x80, 0x7C, 0x01, 0xE0, 0x1E, - 0x40, 0xE4, 0x0E, 0x60, 0xCE, 0x1C, 0x9F, 0x00, 0x7F, 0xFE, 0xE7, 0x9D, - 0x0E, 0x16, 0x3C, 0x20, 0x78, 0x40, 0xE0, 0x01, 0xC0, 0x07, 0x80, 0x0F, - 0x00, 0x1C, 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0x80, 0x0F, 0x00, - 0x1E, 0x00, 0xFF, 0x00, 0x7F, 0x1F, 0x3C, 0x0E, 0x38, 0x04, 0x38, 0x0C, - 0x78, 0x08, 0x78, 0x08, 0x70, 0x08, 0x70, 0x10, 0xF0, 0x10, 0xF0, 0x10, - 0xF0, 0x10, 0xF0, 0x20, 0xF0, 0x20, 0xF0, 0x20, 0xF0, 0x40, 0x78, 0xC0, - 0x3F, 0x00, 0xFF, 0x1F, 0x3C, 0x06, 0x3C, 0x04, 0x3C, 0x08, 0x3C, 0x08, - 0x3C, 0x10, 0x1C, 0x20, 0x1C, 0x20, 0x1E, 0x40, 0x1E, 0x80, 0x1E, 0x80, - 0x1F, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x08, 0x00, 0xFE, 0x7C, - 0x79, 0xE1, 0xC1, 0x8F, 0x0E, 0x08, 0x78, 0x70, 0x43, 0xC7, 0x84, 0x1E, - 0x3E, 0x20, 0x72, 0xF2, 0x03, 0x97, 0x90, 0x1D, 0x1D, 0x00, 0xE8, 0xE8, - 0x07, 0x87, 0x80, 0x3C, 0x3C, 0x01, 0xC1, 0xC0, 0x0E, 0x0E, 0x00, 0x20, - 0x60, 0x01, 0x02, 0x00, 0x1F, 0xCF, 0x83, 0xC1, 0x81, 0xE1, 0x80, 0x71, - 0x80, 0x39, 0x80, 0x1F, 0x80, 0x07, 0x80, 0x03, 0x80, 0x01, 0xE0, 0x01, - 0xF0, 0x00, 0xB8, 0x00, 0x9C, 0x00, 0x8F, 0x00, 0x83, 0x80, 0xC1, 0xC0, - 0xE0, 0xF0, 0xF9, 0xFE, 0x00, 0xFE, 0x7C, 0xE0, 0x63, 0x81, 0x0F, 0x08, - 0x1C, 0x40, 0x71, 0x01, 0xE8, 0x03, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xE0, - 0x07, 0x80, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0F, 0x00, 0xFF, 0x00, 0x1F, - 0xFE, 0x38, 0x78, 0x60, 0xF1, 0x83, 0xC2, 0x0F, 0x00, 0x1E, 0x00, 0x78, - 0x01, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x47, - 0x81, 0x1F, 0x06, 0x3C, 0x3C, 0xFF, 0xF0, 0x07, 0xC1, 0x80, 0xE0, 0x30, - 0x0C, 0x03, 0x01, 0xC0, 0x60, 0x18, 0x06, 0x03, 0x80, 0xC0, 0x30, 0x0C, - 0x07, 0x01, 0xC0, 0x60, 0x18, 0x0E, 0x03, 0xE0, 0xC3, 0x06, 0x18, 0x61, - 0x83, 0x0C, 0x30, 0xC1, 0x86, 0x18, 0x60, 0xC3, 0x0F, 0x81, 0xC0, 0xE0, - 0x60, 0x30, 0x18, 0x1C, 0x0C, 0x06, 0x03, 0x03, 0x81, 0x80, 0xC0, 0x60, - 0x70, 0x38, 0x18, 0x0C, 0x0E, 0x1F, 0x00, 0x0C, 0x07, 0x81, 0xE0, 0xDC, - 0x33, 0x18, 0xC6, 0x1B, 0x06, 0xC0, 0xC0, 0xFF, 0xF0, 0xC7, 0x0C, 0x30, - 0x07, 0x70, 0xCE, 0x1C, 0xE3, 0x8E, 0x70, 0xC7, 0x0C, 0x71, 0xCE, 0x1C, - 0xE1, 0x8E, 0x79, 0xE9, 0xA7, 0x1C, 0x02, 0x07, 0xC0, 0x38, 0x06, 0x01, - 0xC0, 0x38, 0x06, 0x71, 0xF7, 0x38, 0xE7, 0x1C, 0xC3, 0xB8, 0x77, 0x1C, - 0xE3, 0xB8, 0xE7, 0x18, 0xE6, 0x0F, 0x80, 0x07, 0x0C, 0xCE, 0x66, 0x07, - 0x03, 0x83, 0x81, 0xC0, 0xE0, 0x70, 0xBC, 0x87, 0x80, 0x00, 0x08, 0x03, - 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x70, 0x01, 0xC0, 0x77, 0x03, 0x3C, 0x18, - 0xE0, 0xE3, 0x87, 0x0E, 0x1C, 0x70, 0x71, 0xC3, 0x87, 0x0E, 0x3C, 0x38, - 0xE8, 0xE5, 0xA1, 0xE7, 0x00, 0x07, 0x0C, 0xCE, 0x66, 0x37, 0x33, 0xBB, - 0xB1, 0xE0, 0xE0, 0x70, 0xB8, 0x87, 0x80, 0x00, 0x38, 0x01, 0xB0, 0x0C, - 0xC0, 0x30, 0x01, 0xC0, 0x07, 0x00, 0x7E, 0x00, 0xE0, 0x03, 0x80, 0x0E, - 0x00, 0x30, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x03, 0x80, 0x0E, - 0x00, 0x38, 0x00, 0xC0, 0x33, 0x00, 0xD8, 0x01, 0xC0, 0x00, 0x03, 0x80, - 0x73, 0xC7, 0x1C, 0x38, 0xE1, 0xCF, 0x06, 0x70, 0x1E, 0x01, 0x00, 0x1C, - 0x00, 0xF8, 0x07, 0xF0, 0xC7, 0x8C, 0x0C, 0x60, 0x63, 0x86, 0x07, 0xE0, - 0x01, 0x00, 0xF8, 0x01, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x31, 0xC3, - 0xBE, 0x1E, 0x70, 0xE3, 0x8F, 0x38, 0x71, 0xC3, 0x8E, 0x1C, 0xE1, 0xC7, - 0x0E, 0x3A, 0x71, 0xD3, 0x0F, 0x00, 0x1C, 0x71, 0xC0, 0x00, 0x6F, 0x8E, - 0x31, 0xC7, 0x18, 0x63, 0x8E, 0xBC, 0xE0, 0x00, 0xE0, 0x1C, 0x03, 0x80, - 0x00, 0x00, 0x0F, 0x80, 0x70, 0x0E, 0x01, 0xC0, 0x70, 0x0E, 0x01, 0xC0, - 0x38, 0x0E, 0x01, 0xC0, 0x38, 0x06, 0x01, 0xC3, 0x38, 0x6E, 0x07, 0x80, - 0x01, 0x00, 0xF8, 0x01, 0xC0, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x33, 0xE3, - 0x8C, 0x1C, 0xC0, 0xE4, 0x06, 0x40, 0x7E, 0x03, 0xF0, 0x1D, 0x81, 0xCE, - 0x0E, 0x72, 0x71, 0xA3, 0x8E, 0x00, 0x06, 0x7C, 0x70, 0xE1, 0xC3, 0x0E, - 0x1C, 0x38, 0x61, 0xC3, 0x87, 0x0C, 0x38, 0x72, 0xE9, 0xE0, 0x3C, 0x73, - 0xC7, 0x7D, 0x71, 0xE7, 0x9C, 0xF1, 0xCE, 0x3C, 0xF3, 0x8E, 0x39, 0xC3, - 0x8E, 0x71, 0xC3, 0x1C, 0x71, 0xC7, 0x1C, 0x71, 0xD7, 0x1C, 0x7B, 0x8E, - 0x1C, 0x3C, 0xF1, 0xD7, 0x1E, 0x73, 0xCE, 0x3C, 0xE3, 0x8E, 0x39, 0xC7, - 0x9C, 0x71, 0xC7, 0x1D, 0x71, 0xEE, 0x1C, 0x0F, 0x06, 0x63, 0x9D, 0xC7, - 0x71, 0xF8, 0x7E, 0x3F, 0x8E, 0xE3, 0xB9, 0xC6, 0x60, 0xF0, 0x0F, 0x38, - 0x1F, 0x70, 0x71, 0xC1, 0xC7, 0x0E, 0x1C, 0x38, 0xF0, 0xE3, 0x83, 0x8E, - 0x1C, 0x70, 0x71, 0xC1, 0xCE, 0x07, 0xE0, 0x38, 0x00, 0xE0, 0x03, 0x80, - 0x3F, 0x00, 0x07, 0x70, 0xCE, 0x18, 0xE3, 0x8E, 0x70, 0xE7, 0x1C, 0xF1, - 0xCE, 0x1C, 0xE3, 0x8E, 0x38, 0xE7, 0x87, 0xB0, 0x07, 0x00, 0x70, 0x0F, - 0x03, 0xF8, 0x0D, 0xDF, 0x71, 0xAC, 0xF0, 0x38, 0x0E, 0x03, 0x81, 0xC0, - 0x70, 0x1C, 0x0E, 0x00, 0x1D, 0x99, 0x8C, 0x46, 0x23, 0x80, 0xE0, 0x70, - 0x1C, 0x06, 0x23, 0x19, 0x17, 0x00, 0x0C, 0x10, 0xE3, 0xF3, 0x86, 0x1C, - 0x38, 0x71, 0xC3, 0x87, 0x0E, 0x9E, 0x38, 0x00, 0xF8, 0xE3, 0x8E, 0x38, - 0xC3, 0x9C, 0x71, 0xC7, 0x18, 0x71, 0x87, 0x38, 0xE3, 0x8E, 0xFA, 0xF3, - 0xAE, 0x3C, 0xF0, 0xDC, 0x33, 0x0C, 0xC2, 0x31, 0x8C, 0xC3, 0x60, 0xF0, - 0x38, 0x0C, 0x02, 0x00, 0xE0, 0x86, 0xE3, 0x0C, 0xC6, 0x19, 0x9C, 0x23, - 0x78, 0xC7, 0xF9, 0x0E, 0x74, 0x1C, 0xF0, 0x31, 0xC0, 0x43, 0x00, 0x84, - 0x00, 0x0E, 0x31, 0xF3, 0x83, 0xA0, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x1C, - 0x00, 0xE0, 0x0B, 0x02, 0x5D, 0x3C, 0xF1, 0xC3, 0x00, 0x04, 0x67, 0x8C, - 0x79, 0x87, 0x10, 0xE2, 0x1C, 0x81, 0x90, 0x3A, 0x07, 0x80, 0xF0, 0x1C, - 0x03, 0x00, 0x40, 0x08, 0x32, 0x07, 0x80, 0x3F, 0xCF, 0xE6, 0x30, 0x08, - 0x04, 0x02, 0x01, 0x00, 0xC0, 0x30, 0x1E, 0x0F, 0x98, 0x76, 0x07, 0x00, - 0x01, 0xE0, 0x70, 0x1C, 0x03, 0x80, 0x60, 0x1C, 0x03, 0x80, 0x60, 0x0C, - 0x03, 0x80, 0xF0, 0x3C, 0x07, 0x00, 0x40, 0x0C, 0x01, 0x80, 0x70, 0x0E, - 0x01, 0xC0, 0x30, 0x03, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0xE0, - 0x18, 0x06, 0x01, 0x80, 0xE0, 0x38, 0x0C, 0x03, 0x00, 0xC0, 0x10, 0x1F, - 0x07, 0x03, 0x80, 0xE0, 0x30, 0x0C, 0x07, 0x01, 0x80, 0xE0, 0xE0, 0x00, - 0x38, 0x0F, 0xCD, 0x1F, 0x80, 0xE0}; - -const GFXglyph FreeSerifBoldItalic12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 8, 17, 9, 2, -15}, // 0x21 '!' - {17, 9, 7, 13, 4, -15}, // 0x22 '"' - {25, 14, 16, 12, -1, -15}, // 0x23 '#' - {53, 12, 20, 12, 0, -17}, // 0x24 '$' - {83, 18, 18, 20, 1, -16}, // 0x25 '%' - {124, 16, 17, 19, 0, -15}, // 0x26 '&' - {158, 3, 7, 7, 3, -15}, // 0x27 ''' - {161, 7, 21, 8, 1, -15}, // 0x28 '(' - {180, 7, 21, 8, -1, -15}, // 0x29 ')' - {199, 10, 10, 12, 1, -15}, // 0x2A '*' - {212, 12, 12, 14, 1, -11}, // 0x2B '+' - {230, 5, 8, 6, -2, -3}, // 0x2C ',' - {235, 6, 3, 8, 0, -6}, // 0x2D '-' - {238, 4, 4, 6, 0, -2}, // 0x2E '.' - {240, 10, 16, 8, 0, -15}, // 0x2F '/' - {260, 11, 17, 12, 0, -15}, // 0x30 '0' - {284, 10, 17, 12, 0, -15}, // 0x31 '1' - {306, 11, 17, 12, 0, -15}, // 0x32 '2' - {330, 11, 17, 12, 0, -15}, // 0x33 '3' - {354, 13, 16, 12, 0, -15}, // 0x34 '4' - {380, 12, 17, 12, 0, -15}, // 0x35 '5' - {406, 11, 17, 12, 1, -15}, // 0x36 '6' - {430, 11, 16, 12, 2, -15}, // 0x37 '7' - {452, 11, 17, 12, 0, -15}, // 0x38 '8' - {476, 11, 17, 12, 0, -15}, // 0x39 '9' - {500, 7, 12, 6, 0, -10}, // 0x3A ':' - {511, 8, 15, 6, -1, -10}, // 0x3B ';' - {526, 12, 13, 14, 1, -12}, // 0x3C '<' - {546, 12, 6, 14, 2, -8}, // 0x3D '=' - {555, 13, 13, 14, 1, -12}, // 0x3E '>' - {577, 9, 17, 12, 2, -15}, // 0x3F '?' - {597, 17, 16, 20, 1, -15}, // 0x40 '@' - {631, 16, 17, 17, 0, -15}, // 0x41 'A' - {665, 16, 17, 15, 0, -15}, // 0x42 'B' - {699, 15, 17, 15, 1, -15}, // 0x43 'C' - {731, 18, 17, 17, 0, -15}, // 0x44 'D' - {770, 17, 17, 15, 0, -15}, // 0x45 'E' - {807, 16, 17, 15, 0, -15}, // 0x46 'F' - {841, 17, 17, 17, 1, -15}, // 0x47 'G' - {878, 20, 17, 18, 0, -15}, // 0x48 'H' - {921, 10, 17, 9, 0, -15}, // 0x49 'I' - {943, 14, 18, 12, 0, -15}, // 0x4A 'J' - {975, 17, 17, 16, 0, -15}, // 0x4B 'K' - {1012, 15, 17, 15, 0, -15}, // 0x4C 'L' - {1044, 23, 17, 21, 0, -15}, // 0x4D 'M' - {1093, 19, 17, 17, 0, -15}, // 0x4E 'N' - {1134, 16, 17, 16, 1, -15}, // 0x4F 'O' - {1168, 16, 17, 14, 0, -15}, // 0x50 'P' - {1202, 16, 21, 16, 1, -15}, // 0x51 'Q' - {1244, 16, 17, 16, 0, -15}, // 0x52 'R' - {1278, 12, 17, 12, 0, -15}, // 0x53 'S' - {1304, 15, 17, 14, 2, -15}, // 0x54 'T' - {1336, 16, 17, 17, 3, -15}, // 0x55 'U' - {1370, 16, 16, 17, 3, -15}, // 0x56 'V' - {1402, 21, 16, 22, 3, -15}, // 0x57 'W' - {1444, 17, 17, 17, 0, -15}, // 0x58 'X' - {1481, 14, 17, 15, 3, -15}, // 0x59 'Y' - {1511, 15, 17, 13, 0, -15}, // 0x5A 'Z' - {1543, 10, 20, 8, -1, -15}, // 0x5B '[' - {1568, 6, 16, 10, 3, -15}, // 0x5C '\' - {1580, 9, 20, 8, -1, -15}, // 0x5D ']' - {1603, 10, 9, 14, 2, -15}, // 0x5E '^' - {1615, 12, 1, 12, 0, 4}, // 0x5F '_' - {1617, 5, 4, 8, 2, -15}, // 0x60 '`' - {1620, 12, 12, 12, 0, -10}, // 0x61 'a' - {1638, 11, 18, 12, 1, -16}, // 0x62 'b' - {1663, 9, 12, 10, 1, -10}, // 0x63 'c' - {1677, 14, 18, 12, 0, -16}, // 0x64 'd' - {1709, 9, 12, 10, 1, -10}, // 0x65 'e' - {1723, 14, 22, 12, -2, -16}, // 0x66 'f' - {1762, 13, 16, 12, -1, -10}, // 0x67 'g' - {1788, 13, 18, 13, 0, -16}, // 0x68 'h' - {1818, 6, 17, 7, 1, -15}, // 0x69 'i' - {1831, 11, 21, 8, -2, -15}, // 0x6A 'j' - {1860, 13, 18, 12, 0, -16}, // 0x6B 'k' - {1890, 7, 18, 7, 1, -16}, // 0x6C 'l' - {1906, 18, 12, 18, 0, -10}, // 0x6D 'm' - {1933, 12, 12, 13, 0, -10}, // 0x6E 'n' - {1951, 10, 12, 11, 1, -10}, // 0x6F 'o' - {1966, 14, 16, 12, -2, -10}, // 0x70 'p' - {1994, 12, 16, 12, 0, -10}, // 0x71 'q' - {2018, 10, 11, 10, 0, -10}, // 0x72 'r' - {2032, 9, 12, 9, 0, -10}, // 0x73 's' - {2046, 7, 15, 7, 1, -13}, // 0x74 't' - {2060, 12, 12, 13, 1, -10}, // 0x75 'u' - {2078, 10, 11, 11, 1, -10}, // 0x76 'v' - {2092, 15, 11, 16, 1, -10}, // 0x77 'w' - {2113, 13, 12, 11, -1, -10}, // 0x78 'x' - {2133, 11, 16, 10, -1, -10}, // 0x79 'y' - {2155, 10, 13, 10, 0, -10}, // 0x7A 'z' - {2172, 11, 21, 8, 0, -16}, // 0x7B '{' - {2201, 2, 16, 6, 3, -15}, // 0x7C '|' - {2205, 10, 21, 8, -3, -16}, // 0x7D '}' - {2232, 11, 4, 14, 1, -7}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic12pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic12pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 2910 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h deleted file mode 100644 index 8e75b24..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic18pt7b.h +++ /dev/null @@ -1,502 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic18pt7bBitmaps[] PROGMEM = { - 0x01, 0xC0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x3C, 0x07, - 0x80, 0xE0, 0x1C, 0x03, 0x00, 0x60, 0x0C, 0x03, 0x00, 0x60, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x07, 0x81, 0xF8, 0x3F, 0x07, 0xE0, 0x78, 0x00, 0x38, - 0x1D, 0xE0, 0xF7, 0x83, 0xDC, 0x0E, 0x70, 0x39, 0xC0, 0xE6, 0x03, 0x18, - 0x0C, 0x40, 0x23, 0x01, 0x80, 0x00, 0x38, 0x60, 0x07, 0x0E, 0x00, 0x70, - 0xC0, 0x06, 0x1C, 0x00, 0xE1, 0xC0, 0x0E, 0x38, 0x01, 0xC3, 0x81, 0xFF, - 0xFF, 0x1F, 0xFF, 0xE1, 0xFF, 0xFE, 0x03, 0x86, 0x00, 0x30, 0xE0, 0x07, - 0x0E, 0x00, 0x71, 0xC0, 0x0E, 0x1C, 0x0F, 0xFF, 0xF8, 0xFF, 0xFF, 0x0F, - 0xFF, 0xF0, 0x1C, 0x30, 0x01, 0x87, 0x00, 0x38, 0x70, 0x03, 0x0E, 0x00, - 0x70, 0xE0, 0x07, 0x0C, 0x00, 0xE1, 0xC0, 0x00, 0x00, 0x08, 0x00, 0x0C, - 0x00, 0x7E, 0x00, 0xFF, 0xC0, 0xF3, 0x70, 0x71, 0x9C, 0x70, 0xC6, 0x38, - 0x43, 0x1C, 0x61, 0x0F, 0x30, 0x87, 0xD8, 0x03, 0xF8, 0x00, 0xFE, 0x00, - 0x3F, 0x80, 0x0F, 0xE0, 0x03, 0xF8, 0x01, 0xFC, 0x00, 0xDF, 0x10, 0x47, - 0x88, 0x63, 0xCC, 0x31, 0xE6, 0x10, 0xF3, 0x98, 0x71, 0xCC, 0x78, 0x7E, - 0x78, 0x07, 0xF8, 0x03, 0xF0, 0x01, 0x80, 0x00, 0xC0, 0x00, 0x03, 0xC0, - 0x18, 0x01, 0xFE, 0x0F, 0x00, 0x7C, 0xFF, 0xC0, 0x1F, 0x0F, 0x98, 0x07, - 0xC1, 0x06, 0x00, 0xF8, 0x21, 0x80, 0x3E, 0x04, 0x30, 0x07, 0xC1, 0x8C, - 0x00, 0xF0, 0x21, 0x80, 0x1E, 0x0C, 0x60, 0x03, 0xC1, 0x0C, 0x00, 0x78, - 0xC3, 0x03, 0xC7, 0xF8, 0x61, 0xFC, 0x7C, 0x18, 0x7C, 0xC0, 0x06, 0x1F, - 0x08, 0x00, 0xC7, 0xC1, 0x00, 0x30, 0xF0, 0x20, 0x06, 0x3E, 0x04, 0x01, - 0x87, 0xC1, 0x00, 0x30, 0xF0, 0x20, 0x0C, 0x1E, 0x0C, 0x03, 0x03, 0xC1, - 0x00, 0x60, 0x3C, 0xC0, 0x18, 0x07, 0xF8, 0x03, 0x00, 0x7C, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x1F, 0xF0, 0x00, 0x1E, 0x38, 0x00, 0x0E, 0x0E, 0x00, - 0x0F, 0x07, 0x00, 0x07, 0x83, 0x80, 0x03, 0xC3, 0x80, 0x01, 0xE3, 0x80, - 0x00, 0xF7, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x7F, 0x0F, - 0xF0, 0xE7, 0x81, 0xE0, 0xE3, 0xE0, 0xE0, 0xE1, 0xF0, 0x60, 0xE0, 0x7C, - 0x60, 0xF0, 0x3E, 0x20, 0x78, 0x1F, 0xB0, 0x3C, 0x07, 0xF0, 0x1F, 0x03, - 0xF0, 0x0F, 0x80, 0xFC, 0x03, 0xF0, 0x7F, 0x8D, 0xFF, 0xEF, 0xFC, 0x7F, - 0xE3, 0xFC, 0x0F, 0xC0, 0x78, 0x00, 0x3B, 0xDE, 0xE7, 0x39, 0x8C, 0x46, - 0x00, 0x00, 0x60, 0x18, 0x06, 0x01, 0x80, 0x60, 0x1C, 0x07, 0x01, 0xE0, - 0x38, 0x0F, 0x01, 0xC0, 0x38, 0x0F, 0x01, 0xE0, 0x38, 0x07, 0x00, 0xE0, - 0x1C, 0x03, 0x80, 0x70, 0x0E, 0x00, 0xC0, 0x18, 0x03, 0x00, 0x60, 0x06, - 0x00, 0xC0, 0x08, 0x00, 0x80, 0x10, 0x00, 0x06, 0x00, 0x40, 0x04, 0x00, - 0x80, 0x18, 0x01, 0x00, 0x30, 0x06, 0x00, 0xC0, 0x1C, 0x03, 0x80, 0x70, - 0x0E, 0x01, 0xC0, 0x38, 0x07, 0x01, 0xE0, 0x3C, 0x07, 0x00, 0xE0, 0x3C, - 0x07, 0x00, 0xE0, 0x38, 0x06, 0x01, 0xC0, 0x70, 0x18, 0x06, 0x01, 0x80, - 0x00, 0x07, 0x00, 0x38, 0x01, 0xC1, 0x8E, 0x3E, 0x23, 0xF9, 0x3F, 0xEB, - 0xE0, 0xE0, 0xFF, 0xF7, 0x93, 0xF8, 0x9F, 0x8E, 0x60, 0x70, 0x03, 0x80, - 0x08, 0x00, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, - 0x00, 0x0E, 0x00, 0x07, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xC0, - 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, - 0x01, 0xC0, 0x00, 0x1C, 0x7C, 0xF9, 0xF1, 0xE1, 0xC3, 0x0C, 0x30, 0xC2, - 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0xE0, 0x7B, 0xFF, 0xFF, 0x78, 0x00, 0x1C, - 0x00, 0xE0, 0x03, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, - 0x01, 0xC0, 0x07, 0x00, 0x38, 0x00, 0xE0, 0x07, 0x80, 0x1C, 0x00, 0x70, - 0x03, 0x80, 0x0E, 0x00, 0x70, 0x01, 0xC0, 0x0E, 0x00, 0x38, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0xE0, 0x00, 0x00, 0xF0, 0x07, 0x30, 0x1C, 0x30, - 0x78, 0x60, 0xE0, 0xE3, 0xC1, 0xCF, 0x83, 0x9E, 0x0F, 0x3C, 0x1E, 0xF8, - 0x3D, 0xE0, 0x7B, 0xC1, 0xFF, 0x83, 0xFF, 0x07, 0xBC, 0x0F, 0x78, 0x3E, - 0xF0, 0x7D, 0xE0, 0xF3, 0x81, 0xE7, 0x07, 0x8E, 0x0F, 0x0C, 0x3C, 0x18, - 0x70, 0x19, 0xC0, 0x1E, 0x00, 0x00, 0x06, 0x01, 0xF8, 0x1F, 0xF0, 0x03, - 0xE0, 0x07, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF0, 0x03, 0xE0, - 0x07, 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xE0, 0x07, - 0xC0, 0x0F, 0x80, 0x1F, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, - 0x0F, 0xC0, 0xFF, 0xF0, 0x00, 0xF8, 0x01, 0xFC, 0x03, 0xFE, 0x06, 0x3F, - 0x08, 0x1F, 0x18, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0E, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, 0x00, 0xC0, - 0x01, 0x80, 0x03, 0x00, 0x06, 0x02, 0x0C, 0x06, 0x08, 0x0C, 0x1F, 0xFC, - 0x3F, 0xFC, 0x7F, 0xF8, 0xFF, 0xF8, 0x00, 0xF0, 0x07, 0xF8, 0x1F, 0xF0, - 0x61, 0xF0, 0x81, 0xE0, 0x03, 0xC0, 0x07, 0x80, 0x0E, 0x00, 0x3C, 0x00, - 0xE0, 0x07, 0xC0, 0x3F, 0xC0, 0x1F, 0x80, 0x0F, 0x80, 0x1F, 0x00, 0x1E, - 0x00, 0x3C, 0x00, 0x78, 0x00, 0xF0, 0x01, 0xC0, 0x07, 0x9C, 0x0E, 0x3C, - 0x38, 0x7F, 0xE0, 0x7E, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x70, 0x00, 0x3C, - 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x07, 0xE0, 0x02, 0xF8, 0x01, 0x3C, 0x00, - 0x9F, 0x00, 0x47, 0xC0, 0x31, 0xE0, 0x18, 0x78, 0x0C, 0x3E, 0x06, 0x0F, - 0x83, 0x03, 0xC1, 0x80, 0xF0, 0x7F, 0xFF, 0x1F, 0xFF, 0xCF, 0xFF, 0xF0, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x07, 0xC0, 0x01, - 0xFF, 0x00, 0xFF, 0x80, 0xFF, 0xC0, 0x7F, 0xE0, 0x60, 0x00, 0x30, 0x00, - 0x10, 0x00, 0x1F, 0x00, 0x0F, 0xE0, 0x0F, 0xF8, 0x07, 0xFE, 0x00, 0x3F, - 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x38, 0x00, 0x1C, 0x00, - 0x0E, 0x00, 0x06, 0x00, 0x03, 0x00, 0x03, 0x87, 0x83, 0x83, 0xE3, 0x81, - 0xFF, 0x80, 0x3F, 0x00, 0x00, 0x00, 0x03, 0x80, 0x0F, 0x80, 0x1F, 0x00, - 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x1F, 0x00, - 0x1F, 0xF0, 0x1F, 0xFE, 0x0F, 0xCF, 0x07, 0xC3, 0xC7, 0xE1, 0xE3, 0xE0, - 0xF1, 0xF0, 0x78, 0xF8, 0x3C, 0x78, 0x3E, 0x3C, 0x1F, 0x1E, 0x0F, 0x0F, - 0x0F, 0x83, 0x87, 0x81, 0xE7, 0x80, 0x7F, 0x80, 0x0F, 0x80, 0x00, 0x3F, - 0xFF, 0x3F, 0xFE, 0x3F, 0xFE, 0x7F, 0xFC, 0x60, 0x1C, 0x80, 0x38, 0x80, - 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, 0xE0, 0x01, 0xC0, 0x01, 0xC0, 0x03, - 0x80, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x1C, - 0x00, 0x38, 0x00, 0x38, 0x00, 0x70, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0x00, - 0xF8, 0x00, 0xFF, 0x00, 0xE1, 0xC0, 0xE0, 0xF0, 0xF0, 0x38, 0x78, 0x1C, - 0x3C, 0x0E, 0x1F, 0x07, 0x0F, 0x87, 0x07, 0xE7, 0x01, 0xFF, 0x00, 0x7E, - 0x00, 0x1F, 0x80, 0x3F, 0xE0, 0x73, 0xF0, 0x70, 0xFC, 0x70, 0x3E, 0x70, - 0x0F, 0x38, 0x07, 0x9C, 0x03, 0xCE, 0x01, 0xE7, 0x00, 0xE1, 0xC0, 0xE0, - 0x70, 0xE0, 0x0F, 0xC0, 0x00, 0x00, 0xF8, 0x01, 0xFF, 0x01, 0xF3, 0xC1, - 0xF0, 0xE1, 0xF0, 0x70, 0xF0, 0x3C, 0xF8, 0x1E, 0x7C, 0x0F, 0x3C, 0x0F, - 0x9E, 0x07, 0xCF, 0x03, 0xE7, 0x83, 0xF3, 0xC1, 0xF0, 0xF1, 0xF8, 0x3F, - 0xF8, 0x0F, 0xFC, 0x00, 0x7C, 0x00, 0x7C, 0x00, 0x7E, 0x00, 0x3E, 0x00, - 0x3C, 0x00, 0x7C, 0x00, 0x7C, 0x00, 0xF0, 0x00, 0xC0, 0x00, 0x00, 0x07, - 0x83, 0xF0, 0xFC, 0x3F, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x78, 0x3F, 0x0F, 0xC3, 0xF0, 0x78, 0x00, 0x03, 0xC0, 0xFC, - 0x1F, 0x83, 0xF0, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x0C, 0x03, 0xC0, 0x7C, 0x0F, 0x80, 0xF0, 0x0E, 0x01, 0x80, 0x30, 0x0C, - 0x03, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x7C, 0x00, - 0x7F, 0x00, 0x7F, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFE, 0x00, 0xFE, 0x00, - 0x3E, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xE0, 0x01, 0xFE, 0x00, - 0x0F, 0xE0, 0x00, 0xFF, 0x00, 0x0F, 0xC0, 0x00, 0xF0, 0x00, 0x04, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, - 0x38, 0x00, 0x0F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xFC, 0x00, - 0x3F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xF0, 0x00, 0xFC, 0x00, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x01, 0xFC, 0x03, 0xFC, 0x00, 0xFC, 0x00, - 0x3C, 0x00, 0x08, 0x00, 0x00, 0x07, 0xC0, 0xFF, 0x0E, 0x3C, 0x70, 0xF3, - 0xC7, 0x8C, 0x3C, 0x01, 0xE0, 0x1F, 0x00, 0xF0, 0x07, 0x80, 0x78, 0x07, - 0x80, 0x30, 0x03, 0x00, 0x10, 0x01, 0x80, 0x08, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x07, 0x80, 0x7E, 0x03, 0xF0, 0x1F, 0x80, 0x78, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0xFF, 0xF8, 0x01, 0xF0, 0x1E, 0x01, 0xE0, 0x03, 0x81, 0xC0, - 0x00, 0xE1, 0xC0, 0x18, 0x38, 0xE0, 0x3F, 0xCC, 0xE0, 0x3C, 0xE7, 0x70, - 0x3C, 0x71, 0xF0, 0x1C, 0x30, 0xF8, 0x1E, 0x38, 0x7C, 0x0E, 0x1C, 0x3E, - 0x0F, 0x0E, 0x1F, 0x07, 0x0E, 0x0F, 0x83, 0x87, 0x0D, 0xC1, 0xC7, 0x86, - 0x70, 0xE5, 0xC6, 0x38, 0x7C, 0xFE, 0x1C, 0x1C, 0x3E, 0x07, 0x00, 0x00, - 0x01, 0xC0, 0x00, 0x00, 0x78, 0x00, 0x40, 0x1F, 0x00, 0xE0, 0x03, 0xFF, - 0xE0, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x03, 0x00, 0x00, - 0x0E, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x03, - 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x17, 0xC0, 0x00, 0x67, 0x80, 0x00, 0x8F, - 0x00, 0x03, 0x1F, 0x00, 0x0C, 0x3E, 0x00, 0x10, 0x7C, 0x00, 0x60, 0xF8, - 0x00, 0x81, 0xF0, 0x03, 0xFF, 0xE0, 0x0F, 0xFF, 0xE0, 0x18, 0x07, 0xC0, - 0x60, 0x0F, 0x81, 0xC0, 0x1F, 0x03, 0x00, 0x3E, 0x0E, 0x00, 0x7C, 0x3C, - 0x00, 0xFC, 0xFE, 0x0F, 0xFE, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xFC, 0x01, - 0xF8, 0x7E, 0x01, 0xF8, 0x3F, 0x01, 0xF0, 0x3F, 0x01, 0xF0, 0x3F, 0x01, - 0xF0, 0x3F, 0x03, 0xE0, 0x3F, 0x03, 0xE0, 0x7E, 0x03, 0xE0, 0xFC, 0x03, - 0xE3, 0xF0, 0x07, 0xFF, 0x80, 0x07, 0xC3, 0xE0, 0x07, 0xC1, 0xF8, 0x0F, - 0xC0, 0xF8, 0x0F, 0x80, 0xFC, 0x0F, 0x80, 0xFC, 0x0F, 0x80, 0xFC, 0x1F, - 0x80, 0xFC, 0x1F, 0x01, 0xFC, 0x1F, 0x01, 0xF8, 0x1F, 0x03, 0xF0, 0x3F, - 0x0F, 0xE0, 0x7F, 0xFF, 0xC0, 0xFF, 0xFE, 0x00, 0x00, 0x1F, 0x82, 0x01, - 0xFF, 0xE8, 0x07, 0xE0, 0xF0, 0x3F, 0x80, 0xE0, 0xFE, 0x00, 0xC1, 0xF8, - 0x01, 0x87, 0xE0, 0x02, 0x1F, 0x80, 0x04, 0x3F, 0x00, 0x00, 0xFC, 0x00, - 0x01, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, 0x00, - 0x3F, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF8, 0x00, 0x03, - 0xF0, 0x00, 0x03, 0xE0, 0x01, 0x07, 0xE0, 0x06, 0x07, 0xE0, 0x18, 0x07, - 0xE0, 0xE0, 0x07, 0xFF, 0x00, 0x01, 0xF8, 0x00, 0x07, 0xFF, 0xE0, 0x01, - 0xFF, 0xFE, 0x00, 0x1F, 0x87, 0xE0, 0x07, 0xE0, 0x7C, 0x01, 0xF0, 0x1F, - 0x80, 0x7C, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x0F, 0x80, 0x3F, 0x03, 0xE0, - 0x0F, 0xC0, 0xF8, 0x03, 0xF0, 0x3E, 0x00, 0xFC, 0x1F, 0x00, 0x3F, 0x07, - 0xC0, 0x0F, 0xC1, 0xF0, 0x07, 0xF0, 0xFC, 0x01, 0xF8, 0x3E, 0x00, 0x7E, - 0x0F, 0x80, 0x3F, 0x83, 0xE0, 0x0F, 0xC1, 0xF8, 0x07, 0xF0, 0x7C, 0x01, - 0xF8, 0x1F, 0x00, 0xFC, 0x07, 0xC0, 0x7E, 0x03, 0xF0, 0x7E, 0x01, 0xFF, - 0xFF, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x07, 0xFF, 0xFE, 0x03, 0xFF, 0xFC, - 0x07, 0xE0, 0x78, 0x0F, 0xC0, 0x60, 0x1F, 0x00, 0x40, 0x3E, 0x00, 0x80, - 0x7C, 0x01, 0x01, 0xF8, 0x10, 0x03, 0xE0, 0x60, 0x07, 0xC3, 0x80, 0x0F, - 0xFF, 0x00, 0x3F, 0xFE, 0x00, 0x7C, 0x38, 0x00, 0xF8, 0x30, 0x03, 0xF0, - 0x60, 0x07, 0xC0, 0x80, 0x0F, 0x81, 0x00, 0x1F, 0x00, 0x10, 0x7E, 0x00, - 0x60, 0xF8, 0x01, 0xC1, 0xF0, 0x07, 0x03, 0xE0, 0x1E, 0x0F, 0xC0, 0xFC, - 0x3F, 0xFF, 0xF8, 0xFF, 0xFF, 0xE0, 0x07, 0xFF, 0xFE, 0x03, 0xFF, 0xFC, - 0x07, 0xE0, 0x78, 0x0F, 0xC0, 0x60, 0x1F, 0x00, 0x40, 0x3E, 0x00, 0x80, - 0x7C, 0x01, 0x01, 0xF8, 0x20, 0x03, 0xE0, 0xC0, 0x07, 0xC3, 0x80, 0x0F, - 0xFE, 0x00, 0x3F, 0xFC, 0x00, 0x7C, 0x38, 0x00, 0xF8, 0x30, 0x03, 0xF0, - 0x60, 0x07, 0xC0, 0x80, 0x0F, 0x81, 0x00, 0x1F, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, 0x00, - 0x3F, 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x00, 0x1F, 0xC2, 0x00, 0xFF, 0xF6, - 0x01, 0xF8, 0x3C, 0x03, 0xE0, 0x1C, 0x0F, 0xC0, 0x0C, 0x0F, 0xC0, 0x08, - 0x1F, 0x80, 0x08, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFE, 0x00, 0x00, 0xFC, 0x03, 0xFF, - 0xFC, 0x00, 0xFC, 0xFC, 0x00, 0xF8, 0xFC, 0x00, 0xF8, 0xFC, 0x00, 0xF8, - 0xFC, 0x00, 0xF0, 0x7C, 0x01, 0xF0, 0x7E, 0x01, 0xF0, 0x3E, 0x01, 0xF0, - 0x1F, 0x83, 0xE0, 0x0F, 0xFF, 0x80, 0x01, 0xFC, 0x00, 0x07, 0xFF, 0x3F, - 0xF8, 0x0F, 0xE0, 0x7F, 0x00, 0x7E, 0x01, 0xF8, 0x03, 0xF0, 0x0F, 0x80, - 0x1F, 0x00, 0x7C, 0x00, 0xF8, 0x07, 0xE0, 0x07, 0xC0, 0x3E, 0x00, 0x7E, - 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0xF8, 0x00, 0xF8, 0x07, - 0xC0, 0x0F, 0xFF, 0xFE, 0x00, 0x7F, 0xFF, 0xF0, 0x03, 0xE0, 0x1F, 0x00, - 0x3F, 0x00, 0xF8, 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x7E, 0x00, 0x7C, - 0x03, 0xE0, 0x07, 0xE0, 0x1F, 0x00, 0x3E, 0x00, 0xF8, 0x01, 0xF0, 0x0F, - 0xC0, 0x0F, 0x80, 0x7C, 0x00, 0xFC, 0x03, 0xE0, 0x0F, 0xE0, 0x3F, 0x80, - 0xFF, 0xC7, 0xFF, 0x00, 0x07, 0xFE, 0x03, 0xF8, 0x07, 0xE0, 0x0F, 0xC0, - 0x1F, 0x00, 0x3E, 0x00, 0x7C, 0x01, 0xF0, 0x03, 0xE0, 0x07, 0xC0, 0x0F, - 0x80, 0x3E, 0x00, 0x7C, 0x00, 0xF8, 0x03, 0xF0, 0x07, 0xC0, 0x0F, 0x80, - 0x1F, 0x00, 0x7C, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0xC0, 0x3F, - 0x80, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x01, 0xFE, 0x00, 0x0F, 0xC0, 0x00, - 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x80, 0x01, 0xF0, 0x00, - 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, - 0x07, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0xC0, - 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x61, 0xF0, - 0x0F, 0x3F, 0x00, 0xE7, 0xE0, 0x07, 0xFC, 0x00, 0x3F, 0x00, 0x00, 0x07, - 0xFF, 0x3F, 0x80, 0xFE, 0x07, 0x80, 0x7E, 0x03, 0x00, 0x3F, 0x03, 0x00, - 0x1F, 0x03, 0x00, 0x0F, 0x83, 0x00, 0x07, 0xC3, 0x00, 0x07, 0xE3, 0x00, - 0x03, 0xE3, 0x00, 0x01, 0xF3, 0x00, 0x00, 0xFB, 0x80, 0x00, 0xFB, 0xC0, - 0x00, 0x7F, 0xE0, 0x00, 0x3E, 0xF8, 0x00, 0x3F, 0x7C, 0x00, 0x1F, 0x1F, - 0x00, 0x0F, 0x8F, 0x80, 0x07, 0xC7, 0xE0, 0x07, 0xE1, 0xF0, 0x03, 0xE0, - 0xFC, 0x01, 0xF0, 0x3E, 0x00, 0xF8, 0x1F, 0x00, 0xFC, 0x07, 0xC0, 0xFE, - 0x07, 0xF0, 0xFF, 0xCF, 0xFC, 0x00, 0x07, 0xFF, 0x00, 0x07, 0xF0, 0x00, - 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x1F, - 0x00, 0x00, 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, - 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x1F, 0x00, 0x00, 0xFC, 0x00, 0x03, - 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x11, 0xF0, 0x00, 0xC7, 0xC0, - 0x06, 0x1F, 0x00, 0x38, 0x7C, 0x01, 0xE3, 0xF0, 0x3F, 0x9F, 0xFF, 0xFC, - 0xFF, 0xFF, 0xF0, 0x07, 0xF8, 0x00, 0x7F, 0x80, 0xFC, 0x00, 0x3F, 0x80, - 0x3E, 0x00, 0x3F, 0x80, 0x1F, 0x00, 0x3F, 0x80, 0x1F, 0x80, 0x1F, 0xC0, - 0x0F, 0xE0, 0x1B, 0xE0, 0x07, 0xF0, 0x0D, 0xF0, 0x02, 0xF8, 0x0D, 0xF0, - 0x03, 0x7C, 0x0C, 0xF8, 0x01, 0xBE, 0x06, 0x7C, 0x00, 0xDF, 0x06, 0x7C, - 0x00, 0xCF, 0x83, 0x3E, 0x00, 0x67, 0xC3, 0x1F, 0x00, 0x31, 0xE3, 0x0F, - 0x80, 0x38, 0xF9, 0x8F, 0x80, 0x18, 0x7D, 0x87, 0xC0, 0x0C, 0x3F, 0x83, - 0xE0, 0x06, 0x1F, 0xC1, 0xF0, 0x06, 0x0F, 0xC1, 0xF0, 0x03, 0x07, 0xC0, - 0xF8, 0x01, 0x83, 0xE0, 0x7C, 0x01, 0xC0, 0xE0, 0x7E, 0x00, 0xE0, 0x70, - 0x3F, 0x00, 0xF8, 0x30, 0x3F, 0x80, 0xFF, 0x10, 0x7F, 0xF0, 0x00, 0x07, - 0xF0, 0x0F, 0xE0, 0x3E, 0x00, 0x78, 0x07, 0xE0, 0x06, 0x00, 0x7C, 0x00, - 0xC0, 0x1F, 0xC0, 0x10, 0x03, 0xF8, 0x06, 0x00, 0x6F, 0x80, 0xC0, 0x19, - 0xF0, 0x10, 0x03, 0x3F, 0x02, 0x00, 0x63, 0xE0, 0xC0, 0x0C, 0x7C, 0x18, - 0x03, 0x07, 0xC2, 0x00, 0x60, 0xF8, 0x40, 0x0C, 0x0F, 0x98, 0x03, 0x81, - 0xF3, 0x00, 0x60, 0x3F, 0x40, 0x0C, 0x03, 0xF8, 0x01, 0x80, 0x7F, 0x00, - 0x60, 0x07, 0xC0, 0x0C, 0x00, 0xF8, 0x01, 0x80, 0x0F, 0x00, 0x70, 0x01, - 0xE0, 0x0E, 0x00, 0x18, 0x03, 0xE0, 0x03, 0x00, 0x02, 0x00, 0x60, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xC0, 0x07, 0xC3, 0xE0, 0x1F, 0x03, 0xC0, - 0x7C, 0x03, 0xC1, 0xF0, 0x07, 0x87, 0xE0, 0x0F, 0x8F, 0x80, 0x1F, 0x3F, - 0x00, 0x3E, 0x7C, 0x00, 0x7D, 0xF8, 0x01, 0xFB, 0xE0, 0x03, 0xF7, 0xC0, - 0x07, 0xDF, 0x80, 0x1F, 0xBF, 0x00, 0x3F, 0x7C, 0x00, 0x7C, 0xF8, 0x01, - 0xF9, 0xF0, 0x03, 0xE3, 0xE0, 0x0F, 0xC7, 0xC0, 0x1F, 0x07, 0x80, 0x7C, - 0x0F, 0x81, 0xF0, 0x0F, 0x87, 0xC0, 0x0F, 0xFE, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xFF, 0xE0, 0x03, 0xFF, 0xF0, 0x07, 0xE3, 0xF0, 0x0F, 0x83, 0xE0, - 0x1F, 0x07, 0xE0, 0x3E, 0x0F, 0xC0, 0x7C, 0x1F, 0x81, 0xF0, 0x3F, 0x03, - 0xE0, 0xFE, 0x07, 0xC1, 0xF8, 0x0F, 0x87, 0xF0, 0x3E, 0x1F, 0xC0, 0x7F, - 0xFE, 0x00, 0xFF, 0xF0, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x80, - 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF8, 0x00, 0x01, 0xF0, 0x00, - 0x03, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x80, 0x00, 0xFF, 0xC0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0xFF, 0xC0, 0x07, 0xC3, 0xE0, 0x1F, 0x03, 0xC0, - 0x7C, 0x03, 0xC1, 0xF0, 0x07, 0x87, 0xE0, 0x0F, 0x8F, 0x80, 0x1F, 0x3F, - 0x00, 0x3E, 0x7C, 0x00, 0x7D, 0xF8, 0x01, 0xFB, 0xF0, 0x03, 0xF7, 0xC0, - 0x07, 0xDF, 0x80, 0x0F, 0xBF, 0x00, 0x3F, 0x7C, 0x00, 0x7C, 0xF8, 0x01, - 0xF9, 0xF0, 0x03, 0xE3, 0xE0, 0x07, 0xC7, 0xC0, 0x1F, 0x07, 0x80, 0x7C, - 0x0F, 0x01, 0xF0, 0x0F, 0x07, 0x80, 0x07, 0xFE, 0x00, 0x03, 0x80, 0x00, - 0x0C, 0x00, 0x00, 0x3C, 0x00, 0x20, 0xFF, 0xC1, 0x87, 0xFF, 0xFE, 0x1E, - 0xFF, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xFF, 0xE0, 0x01, 0xFF, 0xFC, - 0x01, 0xF8, 0x7E, 0x01, 0xF8, 0x3F, 0x01, 0xF8, 0x3F, 0x01, 0xF0, 0x3F, - 0x01, 0xF0, 0x3F, 0x03, 0xF0, 0x3F, 0x03, 0xE0, 0x7E, 0x03, 0xE0, 0xFE, - 0x03, 0xE1, 0xF8, 0x07, 0xFF, 0xF0, 0x07, 0xFF, 0x80, 0x07, 0xDF, 0xC0, - 0x0F, 0xCF, 0xC0, 0x0F, 0xCF, 0xC0, 0x0F, 0x8F, 0xE0, 0x0F, 0x87, 0xE0, - 0x1F, 0x87, 0xE0, 0x1F, 0x03, 0xF0, 0x1F, 0x03, 0xF0, 0x1F, 0x03, 0xF0, - 0x3F, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0xFF, 0xE1, 0xFE, 0x00, 0xF8, 0x40, - 0xFF, 0xB0, 0x38, 0x3C, 0x1C, 0x07, 0x0F, 0x01, 0xC3, 0xC0, 0x20, 0xF0, - 0x08, 0x3E, 0x02, 0x0F, 0xC0, 0x03, 0xF8, 0x00, 0x7F, 0x00, 0x0F, 0xE0, - 0x01, 0xFC, 0x00, 0x3F, 0x80, 0x07, 0xE0, 0x00, 0xFC, 0x00, 0x1F, 0x00, - 0x03, 0xC4, 0x00, 0xF1, 0x00, 0x3C, 0x60, 0x0F, 0x38, 0x07, 0x8F, 0x83, - 0xC2, 0x3F, 0xE0, 0x83, 0xF0, 0x00, 0x3F, 0xFF, 0xF9, 0xFF, 0xFF, 0xCF, - 0x1F, 0x1E, 0x70, 0xF8, 0x77, 0x0F, 0x83, 0x30, 0x7C, 0x09, 0x03, 0xE0, - 0x40, 0x3F, 0x02, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x07, - 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, - 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, 0x07, 0xF0, 0x00, 0xFF, 0xF0, 0x00, - 0x7F, 0xF0, 0xFF, 0x1F, 0xC0, 0x3E, 0x1F, 0x80, 0x1C, 0x1F, 0x80, 0x18, - 0x1F, 0x00, 0x18, 0x1F, 0x00, 0x18, 0x1F, 0x00, 0x30, 0x3F, 0x00, 0x30, - 0x3E, 0x00, 0x30, 0x3E, 0x00, 0x30, 0x7E, 0x00, 0x60, 0x7C, 0x00, 0x60, - 0x7C, 0x00, 0x60, 0x7C, 0x00, 0xC0, 0x7C, 0x00, 0xC0, 0xF8, 0x00, 0xC0, - 0xF8, 0x00, 0xC0, 0xF8, 0x01, 0x80, 0xF8, 0x01, 0x80, 0xF8, 0x03, 0x80, - 0xF8, 0x03, 0x00, 0x7C, 0x06, 0x00, 0x7E, 0x1E, 0x00, 0x3F, 0xF8, 0x00, - 0x0F, 0xE0, 0x00, 0xFF, 0xE0, 0x7F, 0x3F, 0x80, 0x1C, 0x1F, 0x80, 0x18, - 0x1F, 0x80, 0x18, 0x1F, 0x80, 0x30, 0x1F, 0x80, 0x30, 0x0F, 0x80, 0x60, - 0x0F, 0x80, 0x40, 0x0F, 0x80, 0xC0, 0x0F, 0x81, 0x80, 0x0F, 0x81, 0x00, - 0x0F, 0xC3, 0x00, 0x0F, 0xC6, 0x00, 0x07, 0xC6, 0x00, 0x07, 0xCC, 0x00, - 0x07, 0xC8, 0x00, 0x07, 0xD8, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0xC0, 0x00, 0x03, 0x80, 0x00, - 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0xFF, 0xCF, 0xF8, 0x7E, 0x7F, 0x07, - 0xE0, 0x38, 0x7C, 0x07, 0x80, 0x60, 0xF8, 0x0F, 0x00, 0x81, 0xF0, 0x1E, - 0x03, 0x03, 0xE0, 0x3E, 0x04, 0x07, 0xE0, 0xFC, 0x18, 0x07, 0xC1, 0xF8, - 0x20, 0x0F, 0x87, 0xF0, 0xC0, 0x1F, 0x0B, 0xE1, 0x00, 0x3E, 0x37, 0xC6, - 0x00, 0x7C, 0x47, 0x88, 0x00, 0xF9, 0x8F, 0x30, 0x01, 0xF2, 0x1F, 0x40, - 0x03, 0xEC, 0x3E, 0x80, 0x03, 0xF0, 0x7F, 0x00, 0x07, 0xE0, 0xFC, 0x00, - 0x0F, 0x81, 0xF8, 0x00, 0x1F, 0x03, 0xE0, 0x00, 0x3C, 0x07, 0xC0, 0x00, - 0x78, 0x07, 0x00, 0x00, 0xF0, 0x0E, 0x00, 0x00, 0xC0, 0x18, 0x00, 0x01, - 0x80, 0x30, 0x00, 0x02, 0x00, 0x40, 0x00, 0x0F, 0xFE, 0x3F, 0x81, 0xFC, - 0x07, 0x80, 0x7C, 0x03, 0x00, 0x3F, 0x03, 0x00, 0x0F, 0x83, 0x80, 0x07, - 0xC1, 0x80, 0x03, 0xE1, 0x80, 0x00, 0xF9, 0x80, 0x00, 0x7D, 0x80, 0x00, - 0x3F, 0x80, 0x00, 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x03, 0xE0, 0x00, - 0x01, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xBE, 0x00, 0x00, 0xCF, 0x00, - 0x00, 0xC7, 0xC0, 0x00, 0xC3, 0xE0, 0x00, 0xC1, 0xF0, 0x00, 0xC0, 0x7C, - 0x00, 0xE0, 0x3E, 0x00, 0xE0, 0x1F, 0x00, 0xF8, 0x1F, 0xE0, 0xFF, 0x1F, - 0xF8, 0x00, 0xFF, 0xC3, 0xF9, 0xF8, 0x07, 0x87, 0xC0, 0x38, 0x3E, 0x01, - 0x81, 0xF0, 0x18, 0x07, 0xC0, 0x80, 0x3E, 0x0C, 0x01, 0xF0, 0xC0, 0x07, - 0xC4, 0x00, 0x3E, 0x60, 0x01, 0xF6, 0x00, 0x07, 0xA0, 0x00, 0x3F, 0x00, - 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0xFC, 0x00, 0x07, 0xC0, 0x00, 0x3E, - 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, - 0x7E, 0x00, 0x07, 0xF0, 0x00, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xF8, 0x3F, - 0xFF, 0xC3, 0xE0, 0x7E, 0x1C, 0x07, 0xE0, 0xC0, 0x3E, 0x0C, 0x03, 0xF0, - 0x40, 0x3F, 0x00, 0x03, 0xF0, 0x00, 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x1F, - 0x80, 0x00, 0xF8, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x00, - 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x83, 0xE0, 0x0C, 0x3F, 0x00, - 0xC3, 0xF0, 0x0E, 0x1F, 0x00, 0xF1, 0xF8, 0x1F, 0x9F, 0xFF, 0xF8, 0xFF, - 0xFF, 0xC0, 0x01, 0xFC, 0x0F, 0xE0, 0x3C, 0x00, 0xE0, 0x03, 0x80, 0x1E, - 0x00, 0x78, 0x01, 0xC0, 0x07, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0x80, 0x0E, - 0x00, 0x38, 0x01, 0xE0, 0x07, 0x00, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0F, - 0x00, 0x38, 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, - 0x00, 0x3C, 0x00, 0xFF, 0x03, 0xF8, 0x00, 0xE0, 0x38, 0x07, 0x01, 0xC0, - 0x70, 0x0C, 0x03, 0x80, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x70, 0x0C, 0x03, - 0x80, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x70, 0x0C, 0x03, 0x80, 0xE0, 0x38, - 0x07, 0x01, 0xC0, 0x03, 0xFC, 0x0F, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x38, - 0x01, 0xE0, 0x07, 0x80, 0x1C, 0x00, 0x70, 0x03, 0xC0, 0x0F, 0x00, 0x38, - 0x00, 0xE0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x01, 0xC0, 0x0F, 0x00, 0x3C, - 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x00, 0x1C, - 0x00, 0xF0, 0x03, 0xC0, 0xFE, 0x03, 0xF8, 0x00, 0x03, 0xC0, 0x03, 0xC0, - 0x07, 0xE0, 0x07, 0xE0, 0x0E, 0x70, 0x0E, 0x70, 0x1C, 0x78, 0x1C, 0x38, - 0x3C, 0x3C, 0x38, 0x1C, 0x78, 0x1E, 0x70, 0x0E, 0xF0, 0x0E, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xE1, 0xE3, 0xC1, 0xC1, 0xC0, 0xC0, 0x00, - 0xF7, 0x80, 0xFD, 0xE0, 0x7C, 0xF0, 0x3C, 0x3C, 0x1E, 0x0F, 0x0F, 0x83, - 0x83, 0xC1, 0xE1, 0xE0, 0x78, 0x78, 0x1C, 0x3E, 0x0F, 0x0F, 0x03, 0xC3, - 0xC1, 0xF0, 0xF0, 0xFC, 0xFE, 0x6F, 0x6F, 0xF3, 0xF1, 0xF8, 0xF8, 0x3C, - 0x1C, 0x00, 0x01, 0xE0, 0x1F, 0xC0, 0x07, 0xC0, 0x07, 0xC0, 0x07, 0x80, - 0x07, 0x80, 0x0F, 0x80, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x3C, 0x1E, 0xFE, - 0x1F, 0x9F, 0x1F, 0x0F, 0x1E, 0x0F, 0x3E, 0x0F, 0x3C, 0x0F, 0x3C, 0x1F, - 0x78, 0x1E, 0x78, 0x1E, 0x78, 0x3C, 0x78, 0x3C, 0xF0, 0x78, 0xF0, 0xF0, - 0xF1, 0xE0, 0x7F, 0xC0, 0x3F, 0x00, 0x01, 0xF0, 0x3F, 0xC3, 0xCE, 0x3C, - 0xF3, 0xC7, 0x1E, 0x01, 0xE0, 0x0F, 0x00, 0xF8, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x0F, 0x03, 0x78, 0x31, 0xE3, 0x0F, 0xF0, 0x1E, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, 0x0F, - 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x01, 0xEF, 0x00, 0x7F, 0xE0, 0x3E, 0x7C, - 0x07, 0x8F, 0x01, 0xE1, 0xE0, 0x78, 0x3C, 0x0F, 0x0F, 0x83, 0xC1, 0xE0, - 0x78, 0x3C, 0x1E, 0x0F, 0x83, 0xC1, 0xF0, 0x78, 0x7C, 0x0F, 0x0F, 0x91, - 0xE3, 0xF6, 0x3F, 0xDF, 0x83, 0xF3, 0xE0, 0x3C, 0x38, 0x00, 0x01, 0xE0, - 0x3F, 0x83, 0xCE, 0x3C, 0x73, 0xC3, 0x9E, 0x1D, 0xE1, 0xCF, 0x1C, 0xFB, - 0xC7, 0xF8, 0x3C, 0x01, 0xE0, 0x0F, 0x02, 0x78, 0x31, 0xE3, 0x0F, 0xF0, - 0x1E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x1D, 0xC0, 0x01, 0xCE, 0x00, 0x1C, - 0x70, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x07, 0x80, 0x00, - 0x3C, 0x00, 0x0F, 0xFC, 0x00, 0x7F, 0xE0, 0x00, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x3C, 0x00, 0x03, 0xE0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x07, - 0x80, 0x00, 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, 0x00, - 0x07, 0x80, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, - 0x00, 0x0F, 0x00, 0x0E, 0x70, 0x00, 0x77, 0x80, 0x03, 0xF8, 0x00, 0x0F, - 0x80, 0x00, 0x00, 0xFE, 0x00, 0x7F, 0xFC, 0x1F, 0x1F, 0x87, 0xC3, 0xC1, - 0xF0, 0x78, 0x3C, 0x1F, 0x07, 0x83, 0xE0, 0xF0, 0xF8, 0x0E, 0x3E, 0x01, - 0xFF, 0x80, 0x3F, 0xC0, 0x0C, 0x00, 0x03, 0xC0, 0x00, 0x7F, 0x80, 0x0F, - 0xFE, 0x00, 0x7F, 0xF0, 0x70, 0xFF, 0x1C, 0x03, 0xE3, 0x80, 0x3C, 0x70, - 0x07, 0x0F, 0x03, 0xE0, 0xFF, 0xF0, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x03, - 0xE0, 0x00, 0xF0, 0x00, 0xF8, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, 0x00, - 0x1F, 0x00, 0x0F, 0x0E, 0x07, 0x9F, 0x83, 0xDF, 0xC3, 0xE9, 0xE1, 0xE8, - 0xF0, 0xF8, 0xF8, 0x7C, 0x78, 0x7C, 0x3C, 0x3E, 0x3E, 0x1E, 0x1E, 0x1F, - 0x0F, 0x0F, 0x0F, 0x87, 0x87, 0xCB, 0xC3, 0xCB, 0xE1, 0xE9, 0xE0, 0xFC, - 0xF0, 0x38, 0x00, 0x03, 0x03, 0xC1, 0xE0, 0xF0, 0x30, 0x00, 0x00, 0x00, - 0x07, 0x3F, 0x87, 0x83, 0xC1, 0xE0, 0xF0, 0xF0, 0x78, 0x3C, 0x1E, 0x1E, - 0x0F, 0x27, 0x17, 0x93, 0xF1, 0xF8, 0x70, 0x00, 0x00, 0x06, 0x00, 0x0F, - 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x06, 0x00, 0xFE, 0x00, 0x3E, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3C, - 0x00, 0x7C, 0x00, 0x78, 0x00, 0x78, 0x00, 0x78, 0x00, 0xF8, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0xF0, 0x01, 0xF0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, - 0x03, 0xC0, 0xE3, 0xC0, 0xE7, 0x80, 0xFF, 0x00, 0x7C, 0x00, 0x1F, 0xC0, - 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1E, - 0x00, 0x1F, 0x00, 0x0F, 0x3F, 0x87, 0x87, 0x83, 0xC3, 0x03, 0xE3, 0x01, - 0xE3, 0x00, 0xF3, 0x00, 0x7B, 0x80, 0x7B, 0xC0, 0x3F, 0xE0, 0x1E, 0xF0, - 0x1F, 0x78, 0x0F, 0x1E, 0x07, 0x8F, 0x13, 0xC7, 0x93, 0xE1, 0xF9, 0xE0, - 0xF8, 0xF0, 0x38, 0x00, 0x1F, 0xC0, 0xF8, 0x1F, 0x03, 0xC0, 0x78, 0x1F, - 0x03, 0xE0, 0x78, 0x0F, 0x01, 0xE0, 0x78, 0x0F, 0x01, 0xE0, 0x3C, 0x0F, - 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xE0, 0x3C, 0x8F, 0x31, 0xEC, 0x3F, 0x07, - 0xC0, 0x70, 0x00, 0x01, 0x87, 0x07, 0x0F, 0xE7, 0xE7, 0xE0, 0xF3, 0xF9, - 0xF8, 0x3D, 0x9E, 0x9E, 0x0F, 0x47, 0xC7, 0x83, 0xE1, 0xD1, 0xE1, 0xF8, - 0xF8, 0xF0, 0x7C, 0x3C, 0x3C, 0x1F, 0x0F, 0x1F, 0x0F, 0x87, 0xC7, 0x83, - 0xE1, 0xE1, 0xE0, 0xF0, 0x78, 0x78, 0x3C, 0x1E, 0x3C, 0x1F, 0x0F, 0x0F, - 0x27, 0x83, 0xC3, 0xD1, 0xE0, 0xF0, 0xFC, 0xF8, 0x78, 0x1C, 0x00, 0x01, - 0x8F, 0x0F, 0xE7, 0xE0, 0xF3, 0xF8, 0x3C, 0x9E, 0x0F, 0x47, 0x87, 0xA3, - 0xC1, 0xE8, 0xF0, 0x7C, 0x3C, 0x1E, 0x1E, 0x0F, 0x87, 0x83, 0xE1, 0xE0, - 0xF0, 0xF8, 0x3C, 0x3C, 0x1F, 0x0F, 0x27, 0x83, 0xD1, 0xE0, 0xFC, 0x78, - 0x1C, 0x00, 0x01, 0xF0, 0x0E, 0x30, 0x38, 0x70, 0xF0, 0xF3, 0xC1, 0xE7, - 0x83, 0xDE, 0x07, 0xBC, 0x1F, 0xF8, 0x3F, 0xE0, 0x7B, 0xC0, 0xF7, 0x83, - 0xCF, 0x07, 0x9E, 0x1E, 0x1C, 0x38, 0x1C, 0xE0, 0x1F, 0x00, 0x00, 0xE3, - 0x80, 0xFD, 0xF8, 0x0F, 0xFF, 0x81, 0xE8, 0xF0, 0x3E, 0x1E, 0x07, 0x83, - 0xC0, 0xF0, 0x78, 0x3E, 0x1F, 0x07, 0x83, 0xC0, 0xF0, 0x78, 0x1E, 0x1F, - 0x07, 0x83, 0xC0, 0xF0, 0xF8, 0x1E, 0x1E, 0x03, 0xC7, 0x80, 0xFF, 0xE0, - 0x1E, 0xF0, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, - 0xF8, 0x00, 0x3F, 0xC0, 0x00, 0x01, 0xEF, 0x07, 0xFF, 0x0F, 0x1E, 0x1E, - 0x1E, 0x1E, 0x1E, 0x3C, 0x1E, 0x7C, 0x3C, 0x78, 0x3C, 0x78, 0x3C, 0xF0, - 0x7C, 0xF0, 0x78, 0xF0, 0xF8, 0xF0, 0xF8, 0xF1, 0xF0, 0xFE, 0xF0, 0x7E, - 0xF0, 0x39, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x01, 0xE0, 0x03, 0xC0, 0x03, - 0xC0, 0x1F, 0xF8, 0x03, 0x9C, 0x7F, 0x7C, 0x3D, 0xF8, 0x7A, 0xE0, 0xF8, - 0x03, 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xF0, 0x01, - 0xE0, 0x07, 0xC0, 0x0F, 0x00, 0x1E, 0x00, 0x7C, 0x00, 0x07, 0x18, 0xFF, - 0xC7, 0x1C, 0x70, 0x63, 0x81, 0x1E, 0x08, 0xF8, 0x07, 0xE0, 0x1F, 0x00, - 0x7C, 0x01, 0xF0, 0x07, 0x84, 0x3C, 0x20, 0xE1, 0x87, 0x1C, 0x70, 0x9E, - 0x00, 0x00, 0x80, 0x60, 0x30, 0x1C, 0x1F, 0x1F, 0xF7, 0xFC, 0x78, 0x1E, - 0x07, 0x83, 0xC0, 0xF0, 0x3C, 0x1F, 0x07, 0x81, 0xE0, 0x79, 0x3C, 0x4F, - 0x23, 0xF0, 0xFC, 0x1C, 0x00, 0x0F, 0x0F, 0x3F, 0x87, 0x8F, 0x83, 0xC7, - 0xC1, 0xE3, 0xE1, 0xE1, 0xE0, 0xF0, 0xF0, 0x78, 0xF8, 0x78, 0x78, 0x3C, - 0x3C, 0x3E, 0x1E, 0x1F, 0x1E, 0x1F, 0x0F, 0x17, 0x97, 0x9B, 0xCB, 0xF9, - 0xF9, 0xF8, 0xF8, 0x78, 0x38, 0x00, 0x18, 0x37, 0xC3, 0xDE, 0x1E, 0x78, - 0x73, 0xC1, 0x9E, 0x08, 0xF0, 0xC7, 0x84, 0x3C, 0x41, 0xE4, 0x0F, 0x40, - 0x7C, 0x03, 0xC0, 0x1C, 0x00, 0xC0, 0x04, 0x00, 0x38, 0x10, 0xDF, 0x06, - 0x3D, 0xE0, 0xC7, 0xBC, 0x38, 0x73, 0xC7, 0x06, 0x79, 0xF0, 0x8F, 0x3E, - 0x11, 0xEB, 0xC4, 0x3F, 0x79, 0x07, 0xCF, 0x60, 0xF9, 0xE8, 0x1E, 0x3E, - 0x03, 0x87, 0x80, 0x70, 0xF0, 0x0C, 0x0C, 0x01, 0x01, 0x00, 0x03, 0x83, - 0x87, 0xF1, 0xF0, 0x3C, 0xF8, 0x0F, 0x60, 0x03, 0xD0, 0x00, 0xF8, 0x00, - 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x1F, 0x00, 0x0F, - 0xC0, 0x02, 0xF1, 0x39, 0x3C, 0xCF, 0xCF, 0xE3, 0xE1, 0xF0, 0x70, 0x38, - 0x00, 0x01, 0x83, 0x07, 0xE3, 0xC1, 0xF1, 0xE0, 0x78, 0xF0, 0x3E, 0x18, - 0x1F, 0x08, 0x07, 0x84, 0x03, 0xC6, 0x01, 0xE2, 0x00, 0xFB, 0x00, 0x3D, - 0x00, 0x1F, 0x80, 0x0F, 0x80, 0x07, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xE0, 0x00, 0x60, 0x00, 0x60, 0x0E, 0x60, 0x0F, 0xE0, 0x07, 0xE0, 0x01, - 0xC0, 0x00, 0x1F, 0xFC, 0x3F, 0xF8, 0x7F, 0xE1, 0x81, 0x82, 0x06, 0x00, - 0x08, 0x00, 0x20, 0x00, 0xC0, 0x03, 0x00, 0x0C, 0x00, 0x10, 0x00, 0x40, - 0x01, 0x80, 0x07, 0xC0, 0x1F, 0x86, 0x3F, 0x8E, 0xCF, 0x9C, 0x07, 0x30, - 0x03, 0xC0, 0x00, 0x1E, 0x00, 0xF8, 0x03, 0xC0, 0x0F, 0x00, 0x1E, 0x00, - 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x78, 0x01, 0xE0, 0x03, 0xC0, 0x1F, 0x00, 0x7E, 0x00, 0x30, 0x00, - 0x60, 0x00, 0xE0, 0x01, 0xC0, 0x07, 0x80, 0x0F, 0x00, 0x1E, 0x00, 0x38, - 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, 0x00, 0x0E, 0x00, 0x0C, 0x00, - 0x0F, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE0, - 0x00, 0xF0, 0x00, 0x70, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x78, 0x00, 0xE0, 0x03, 0xC0, 0x07, - 0x80, 0x0F, 0x00, 0x1C, 0x00, 0x18, 0x00, 0x10, 0x00, 0xF0, 0x03, 0xF0, - 0x0F, 0x00, 0x1E, 0x00, 0x38, 0x00, 0xF0, 0x01, 0xE0, 0x03, 0xC0, 0x07, - 0x00, 0x1E, 0x00, 0x3C, 0x00, 0x70, 0x01, 0xE0, 0x0F, 0x80, 0x7C, 0x00, - 0x3E, 0x00, 0x7F, 0xC6, 0xFF, 0xFF, 0x61, 0xFE, 0x00, 0x7C}; - -const GFXglyph FreeSerifBoldItalic18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 11, 25, 14, 2, -23}, // 0x21 '!' - {35, 14, 10, 19, 4, -23}, // 0x22 '"' - {53, 20, 25, 17, -1, -24}, // 0x23 '#' - {116, 17, 29, 18, 0, -25}, // 0x24 '$' - {178, 27, 25, 29, 1, -23}, // 0x25 '%' - {263, 25, 25, 27, 0, -23}, // 0x26 '&' - {342, 5, 10, 10, 4, -23}, // 0x27 ''' - {349, 11, 30, 12, 1, -23}, // 0x28 '(' - {391, 11, 30, 12, -2, -23}, // 0x29 ')' - {433, 13, 15, 18, 2, -23}, // 0x2A '*' - {458, 17, 17, 20, 1, -16}, // 0x2B '+' - {495, 7, 11, 9, -2, -4}, // 0x2C ',' - {505, 9, 4, 12, 0, -9}, // 0x2D '-' - {510, 6, 5, 9, 0, -3}, // 0x2E '.' - {514, 14, 25, 12, 0, -23}, // 0x2F '/' - {558, 15, 25, 18, 1, -23}, // 0x30 '0' - {605, 15, 25, 17, 0, -23}, // 0x31 '1' - {652, 16, 25, 18, 0, -23}, // 0x32 '2' - {702, 15, 25, 17, 1, -23}, // 0x33 '3' - {749, 18, 24, 17, 0, -23}, // 0x34 '4' - {803, 17, 25, 18, 0, -23}, // 0x35 '5' - {857, 17, 25, 18, 1, -23}, // 0x36 '6' - {911, 16, 24, 17, 3, -23}, // 0x37 '7' - {959, 17, 25, 18, 0, -23}, // 0x38 '8' - {1013, 17, 25, 18, 0, -23}, // 0x39 '9' - {1067, 10, 17, 9, 0, -15}, // 0x3A ':' - {1089, 11, 22, 9, -1, -15}, // 0x3B ';' - {1120, 18, 19, 20, 1, -18}, // 0x3C '<' - {1163, 18, 10, 20, 2, -13}, // 0x3D '=' - {1186, 18, 19, 20, 2, -18}, // 0x3E '>' - {1229, 13, 25, 17, 3, -23}, // 0x3F '?' - {1270, 25, 25, 29, 2, -23}, // 0x40 '@' - {1349, 23, 25, 24, 0, -23}, // 0x41 'A' - {1421, 24, 25, 22, 0, -23}, // 0x42 'B' - {1496, 23, 25, 22, 1, -23}, // 0x43 'C' - {1568, 26, 25, 25, 0, -23}, // 0x44 'D' - {1650, 23, 25, 22, 0, -23}, // 0x45 'E' - {1722, 23, 25, 21, 0, -23}, // 0x46 'F' - {1794, 24, 25, 25, 2, -23}, // 0x47 'G' - {1869, 29, 25, 26, 0, -23}, // 0x48 'H' - {1960, 15, 25, 13, 0, -23}, // 0x49 'I' - {2007, 20, 27, 17, 0, -23}, // 0x4A 'J' - {2075, 25, 25, 23, 0, -23}, // 0x4B 'K' - {2154, 22, 25, 21, 0, -23}, // 0x4C 'L' - {2223, 33, 25, 31, 0, -23}, // 0x4D 'M' - {2327, 27, 25, 25, 0, -23}, // 0x4E 'N' - {2412, 23, 25, 24, 1, -23}, // 0x4F 'O' - {2484, 23, 25, 21, 0, -23}, // 0x50 'P' - {2556, 23, 31, 24, 1, -23}, // 0x51 'Q' - {2646, 24, 25, 23, 0, -23}, // 0x52 'R' - {2721, 18, 25, 18, 0, -23}, // 0x53 'S' - {2778, 21, 25, 21, 3, -23}, // 0x54 'T' - {2844, 24, 25, 25, 4, -23}, // 0x55 'U' - {2919, 24, 25, 25, 4, -23}, // 0x56 'V' - {2994, 31, 25, 32, 4, -23}, // 0x57 'W' - {3091, 25, 25, 24, 0, -23}, // 0x58 'X' - {3170, 21, 25, 22, 4, -23}, // 0x59 'Y' - {3236, 21, 25, 20, 0, -23}, // 0x5A 'Z' - {3302, 14, 30, 12, -1, -23}, // 0x5B '[' - {3355, 10, 25, 14, 4, -23}, // 0x5C '\' - {3387, 14, 30, 12, -2, -23}, // 0x5D ']' - {3440, 16, 13, 20, 2, -23}, // 0x5E '^' - {3466, 18, 3, 17, 0, 3}, // 0x5F '_' - {3473, 7, 6, 12, 3, -23}, // 0x60 '`' - {3479, 18, 17, 18, 0, -15}, // 0x61 'a' - {3518, 16, 26, 17, 1, -24}, // 0x62 'b' - {3570, 13, 17, 15, 1, -15}, // 0x63 'c' - {3598, 19, 25, 18, 1, -23}, // 0x64 'd' - {3658, 13, 17, 15, 1, -15}, // 0x65 'e' - {3686, 21, 32, 17, -3, -24}, // 0x66 'f' - {3770, 19, 23, 17, -1, -15}, // 0x67 'g' - {3825, 17, 25, 19, 1, -23}, // 0x68 'h' - {3879, 9, 25, 10, 1, -23}, // 0x69 'i' - {3908, 16, 31, 12, -3, -23}, // 0x6A 'j' - {3970, 17, 25, 18, 1, -23}, // 0x6B 'k' - {4024, 11, 25, 10, 1, -23}, // 0x6C 'l' - {4059, 26, 17, 27, 0, -15}, // 0x6D 'm' - {4115, 18, 17, 18, 0, -15}, // 0x6E 'n' - {4154, 15, 17, 17, 1, -15}, // 0x6F 'o' - {4186, 19, 23, 17, -2, -15}, // 0x70 'p' - {4241, 16, 23, 17, 1, -15}, // 0x71 'q' - {4287, 15, 16, 14, 0, -15}, // 0x72 'r' - {4317, 13, 17, 12, 0, -15}, // 0x73 's' - {4345, 10, 22, 10, 1, -20}, // 0x74 't' - {4373, 17, 17, 19, 1, -15}, // 0x75 'u' - {4410, 13, 16, 15, 2, -15}, // 0x76 'v' - {4436, 19, 16, 23, 3, -15}, // 0x77 'w' - {4474, 18, 17, 17, -1, -15}, // 0x78 'x' - {4513, 17, 23, 15, -2, -15}, // 0x79 'y' - {4562, 15, 19, 14, 0, -15}, // 0x7A 'z' - {4598, 15, 32, 12, 0, -24}, // 0x7B '{' - {4658, 3, 25, 9, 4, -23}, // 0x7C '|' - {4668, 15, 32, 12, -5, -24}, // 0x7D '}' - {4728, 16, 5, 20, 2, -11}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic18pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic18pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 5410 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h deleted file mode 100644 index e2fa4cb..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic24pt7b.h +++ /dev/null @@ -1,795 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic24pt7bBitmaps[] PROGMEM = { - 0x00, 0x3C, 0x00, 0xFC, 0x01, 0xF8, 0x07, 0xF0, 0x0F, 0xE0, 0x1F, 0xC0, - 0x3F, 0x00, 0x7E, 0x00, 0xF8, 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x1E, - 0x00, 0x3C, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x00, 0x0E, 0x00, - 0x18, 0x00, 0x30, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xF0, 0x03, 0xF0, 0x0F, 0xF0, 0x1F, 0xE0, 0x3F, 0xC0, 0x3F, 0x00, - 0x3C, 0x00, 0x1C, 0x01, 0xC7, 0xC0, 0x7D, 0xF8, 0x1F, 0xBF, 0x03, 0xF7, - 0xC0, 0x7C, 0xF8, 0x0F, 0x9E, 0x01, 0xE3, 0xC0, 0x3C, 0x70, 0x07, 0x1E, - 0x00, 0xE3, 0x80, 0x38, 0x70, 0x07, 0x0C, 0x00, 0xC0, 0x00, 0x03, 0xC1, - 0xE0, 0x00, 0x70, 0x38, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0xC1, 0xE0, 0x00, - 0x70, 0x38, 0x00, 0x1E, 0x0F, 0x00, 0x03, 0x81, 0xC0, 0x00, 0xF0, 0x78, - 0x00, 0x1E, 0x0F, 0x00, 0x07, 0x83, 0xC0, 0x1F, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0xF0, 0x7F, 0xFF, 0xFC, 0x00, 0xE0, 0x70, 0x00, 0x3C, 0x1E, 0x00, - 0x07, 0x83, 0xC0, 0x00, 0xE0, 0x70, 0x00, 0x3C, 0x1E, 0x00, 0x07, 0x83, - 0xC0, 0x00, 0xE0, 0x70, 0x07, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFC, 0x1F, - 0xFF, 0xFF, 0x00, 0x38, 0x1C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xE0, 0xF0, - 0x00, 0x38, 0x1C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xC0, 0xE0, 0x00, 0x78, - 0x3C, 0x00, 0x0F, 0x07, 0x80, 0x01, 0xC0, 0xE0, 0x00, 0x78, 0x3C, 0x00, - 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xC0, 0x00, 0x00, 0xC0, 0x00, 0x1F, - 0xE0, 0x00, 0x7F, 0xF8, 0x01, 0xF1, 0x9E, 0x01, 0xC1, 0x8F, 0x03, 0x83, - 0x8F, 0x03, 0x83, 0x06, 0x07, 0x83, 0x06, 0x07, 0x87, 0x06, 0x07, 0xC7, - 0x04, 0x07, 0xE6, 0x04, 0x07, 0xFE, 0x00, 0x03, 0xFE, 0x00, 0x03, 0xFF, - 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x7F, 0xE0, 0x00, 0x1F, - 0xE0, 0x00, 0x1F, 0xF0, 0x00, 0x3F, 0xF0, 0x00, 0x3B, 0xF8, 0x20, 0x31, - 0xF8, 0x20, 0x30, 0xF8, 0x60, 0x70, 0xF8, 0x60, 0x60, 0xF8, 0x60, 0x60, - 0xF8, 0xF0, 0xE0, 0xF0, 0xF0, 0xE1, 0xE0, 0x78, 0xC3, 0xE0, 0x3C, 0xC7, - 0xC0, 0x0F, 0xFF, 0x00, 0x03, 0xFC, 0x00, 0x01, 0x80, 0x00, 0x03, 0x80, - 0x00, 0x03, 0x80, 0x00, 0x03, 0x00, 0x00, 0x03, 0x00, 0x00, 0x01, 0xF0, - 0x00, 0x70, 0x00, 0xFF, 0x80, 0x1C, 0x00, 0x3F, 0x38, 0x1F, 0x00, 0x0F, - 0xC7, 0xFF, 0xE0, 0x03, 0xF0, 0x3F, 0xB8, 0x00, 0x7E, 0x04, 0x07, 0x00, - 0x1F, 0x80, 0x81, 0xC0, 0x03, 0xF0, 0x10, 0x38, 0x00, 0xFC, 0x02, 0x0E, - 0x00, 0x1F, 0x80, 0x81, 0x80, 0x03, 0xF0, 0x10, 0x70, 0x00, 0x7C, 0x06, - 0x1C, 0x00, 0x0F, 0x80, 0x83, 0x80, 0x01, 0xF0, 0x30, 0xE0, 0x00, 0x1E, - 0x0C, 0x1C, 0x07, 0xC3, 0xE3, 0x07, 0x03, 0xFC, 0x3F, 0xC0, 0xC0, 0xFC, - 0x43, 0xE0, 0x38, 0x3E, 0x0C, 0x00, 0x0E, 0x0F, 0xC0, 0x80, 0x01, 0xC3, - 0xF0, 0x10, 0x00, 0x70, 0xFC, 0x02, 0x00, 0x0C, 0x1F, 0x80, 0x40, 0x03, - 0x83, 0xE0, 0x08, 0x00, 0x60, 0xFC, 0x02, 0x00, 0x1C, 0x1F, 0x80, 0x40, - 0x07, 0x03, 0xE0, 0x10, 0x00, 0xE0, 0x7C, 0x02, 0x00, 0x38, 0x0F, 0x80, - 0xC0, 0x06, 0x01, 0xF0, 0x30, 0x01, 0xC0, 0x1F, 0x0C, 0x00, 0x30, 0x01, - 0xFF, 0x00, 0x0E, 0x00, 0x1F, 0x80, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x01, 0xF1, 0xE0, 0x00, 0x00, 0xF0, 0x78, 0x00, 0x00, - 0xF0, 0x3C, 0x00, 0x00, 0x78, 0x1E, 0x00, 0x00, 0x7C, 0x0F, 0x00, 0x00, - 0x3E, 0x0F, 0x80, 0x00, 0x1F, 0x07, 0x80, 0x00, 0x0F, 0x87, 0x80, 0x00, - 0x07, 0xC7, 0x80, 0x00, 0x03, 0xFF, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, - 0x00, 0xFC, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, 0xFF, 0x07, 0xFE, - 0x03, 0xCF, 0xC0, 0xFE, 0x03, 0xC7, 0xE0, 0x3C, 0x07, 0xC3, 0xF0, 0x1C, - 0x07, 0xC0, 0xFC, 0x0C, 0x03, 0xC0, 0x7E, 0x0E, 0x03, 0xE0, 0x3F, 0x0E, - 0x01, 0xF0, 0x1F, 0xC6, 0x01, 0xF8, 0x07, 0xF6, 0x00, 0xFC, 0x03, 0xFF, - 0x00, 0x7E, 0x00, 0xFF, 0x00, 0x3F, 0x80, 0x7F, 0x80, 0x1F, 0xC0, 0x1F, - 0xC0, 0x07, 0xF0, 0x0F, 0xF0, 0x13, 0xFE, 0x0F, 0xFE, 0x18, 0xFF, 0xFE, - 0xFF, 0xF8, 0x3F, 0xFE, 0x3F, 0xF8, 0x07, 0xF8, 0x03, 0xF0, 0x00, 0x1C, - 0x7D, 0xFB, 0xF7, 0xCF, 0x9E, 0x3C, 0x71, 0xE3, 0x87, 0x0C, 0x00, 0x00, - 0x04, 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x3C, 0x01, - 0xE0, 0x0F, 0x00, 0x3C, 0x01, 0xE0, 0x0F, 0x80, 0x3C, 0x00, 0xF0, 0x07, - 0xC0, 0x1E, 0x00, 0x78, 0x03, 0xE0, 0x0F, 0x80, 0x3E, 0x00, 0xF0, 0x03, - 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, - 0x70, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, 0x30, 0x00, 0xE0, 0x01, 0x80, - 0x06, 0x00, 0x0C, 0x00, 0x30, 0x00, 0x60, 0x01, 0x80, 0x00, 0x00, 0x01, - 0x00, 0x06, 0x00, 0x08, 0x00, 0x30, 0x00, 0x40, 0x01, 0x80, 0x06, 0x00, - 0x1C, 0x00, 0x30, 0x00, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0xF0, - 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xF0, 0x03, 0xC0, 0x0F, 0x00, 0x7C, - 0x01, 0xF0, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x03, 0xE0, 0x0F, 0x80, 0x3C, - 0x01, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0xF0, 0x03, 0x80, 0x1E, 0x00, 0xF0, - 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x06, 0x00, 0x30, 0x00, 0x80, 0x00, 0x00, - 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x07, 0x0E, 0x1D, 0xF1, - 0xC7, 0xFF, 0x11, 0xFF, 0xE2, 0x3F, 0x7E, 0x4F, 0xC0, 0x3E, 0x00, 0x07, - 0xC0, 0x3F, 0x27, 0xEF, 0xC4, 0x7F, 0xF8, 0x8F, 0xFE, 0x38, 0xFB, 0x87, - 0x0E, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0x70, 0x00, 0x00, - 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x03, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x01, - 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, - 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x07, 0x80, 0x00, 0x0F, 0x07, 0xE1, 0xFC, 0x7F, 0x1F, 0xC3, 0xF0, 0x7C, - 0x0E, 0x03, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x1C, 0x04, 0x00, 0x7F, 0xF7, - 0xFF, 0x7F, 0xEF, 0xFE, 0xFF, 0xE0, 0x3C, 0x7E, 0xFF, 0xFF, 0xFF, 0x7E, - 0x3C, 0x00, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, - 0x78, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x07, - 0xC0, 0x00, 0xF0, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3C, - 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x01, 0xE0, - 0x00, 0x7C, 0x00, 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x78, 0x00, 0x0F, 0x00, - 0x03, 0xC0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, - 0x1E, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0xE3, 0x80, 0x0F, 0x07, 0x00, 0x7C, 0x1C, 0x03, 0xE0, 0x78, 0x0F, 0x81, - 0xE0, 0x7C, 0x07, 0x83, 0xF0, 0x1F, 0x0F, 0xC0, 0xFC, 0x7E, 0x03, 0xF1, - 0xF8, 0x0F, 0xCF, 0xE0, 0x3F, 0x3F, 0x00, 0xFD, 0xFC, 0x07, 0xF7, 0xF0, - 0x1F, 0xDF, 0xC0, 0x7F, 0x7E, 0x01, 0xFB, 0xF8, 0x0F, 0xEF, 0xE0, 0x3F, - 0xBF, 0x80, 0xFE, 0xFC, 0x03, 0xF3, 0xF0, 0x1F, 0xCF, 0xC0, 0x7F, 0x3F, - 0x01, 0xF8, 0xFC, 0x07, 0xE3, 0xE0, 0x3F, 0x0F, 0x80, 0xFC, 0x1E, 0x07, - 0xE0, 0x78, 0x1F, 0x00, 0xE0, 0x78, 0x03, 0x83, 0xC0, 0x07, 0x1E, 0x00, - 0x07, 0xE0, 0x00, 0x00, 0x00, 0x70, 0x01, 0xFE, 0x01, 0xFF, 0xE0, 0x00, - 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, - 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x3F, 0x00, - 0x03, 0xF0, 0x00, 0x7F, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xE0, - 0x00, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0xFC, 0x00, 0x1F, 0xC0, 0x01, 0xFC, - 0x00, 0x1F, 0x80, 0x01, 0xF8, 0x00, 0x3F, 0x80, 0x03, 0xF0, 0x00, 0x3F, - 0x00, 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x1F, 0xF8, 0x0F, 0xFF, 0xF0, 0x00, - 0x0F, 0x80, 0x01, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x7F, 0xFE, 0x03, 0x83, - 0xF8, 0x0C, 0x07, 0xF0, 0x60, 0x1F, 0xC3, 0x00, 0x3F, 0x00, 0x00, 0xFC, - 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3E, 0x00, 0x01, 0xF8, 0x00, - 0x07, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x1E, - 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x3C, 0x00, 0x01, 0xE0, 0x00, - 0x0E, 0x00, 0x00, 0x70, 0x06, 0x03, 0x80, 0x10, 0x1C, 0x00, 0xC0, 0xE0, - 0x06, 0x07, 0xFF, 0xF8, 0x3F, 0xFF, 0xE1, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, - 0x3F, 0xFF, 0xE0, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xC0, 0x0F, 0xFF, 0x80, - 0x60, 0xFE, 0x03, 0x01, 0xFC, 0x08, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, - 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0xFC, - 0x00, 0x07, 0xC0, 0x00, 0x3E, 0x00, 0x07, 0xF8, 0x00, 0x7F, 0xF0, 0x00, - 0x7F, 0xE0, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x00, 0x01, 0xFC, 0x00, 0x03, - 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, - 0x00, 0x0F, 0x80, 0x00, 0x3C, 0x1C, 0x01, 0xF0, 0xF8, 0x07, 0x83, 0xF0, - 0x3C, 0x0F, 0xE1, 0xE0, 0x1F, 0xFE, 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x00, - 0x07, 0x00, 0x00, 0x07, 0x80, 0x00, 0x07, 0xC0, 0x00, 0x07, 0xE0, 0x00, - 0x07, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x07, 0xFC, 0x00, - 0x06, 0xFC, 0x00, 0x06, 0x7E, 0x00, 0x06, 0x3F, 0x00, 0x06, 0x3F, 0x00, - 0x06, 0x1F, 0x80, 0x06, 0x0F, 0xC0, 0x06, 0x07, 0xE0, 0x03, 0x07, 0xE0, - 0x03, 0x03, 0xF0, 0x03, 0x01, 0xF8, 0x03, 0x01, 0xFC, 0x03, 0x00, 0xFC, - 0x03, 0x00, 0x7E, 0x03, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, - 0xF0, 0xFF, 0xFF, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x07, 0xE0, 0x00, 0x03, - 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x3F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, 0x7F, 0xFE, 0x00, - 0x7F, 0xFC, 0x00, 0xFF, 0xFC, 0x00, 0xC0, 0x00, 0x01, 0x80, 0x00, 0x01, - 0x80, 0x00, 0x03, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x07, 0xFE, 0x00, 0x07, - 0xFF, 0x00, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0xC0, 0x00, 0xFF, 0xE0, 0x00, - 0x1F, 0xE0, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF0, 0x00, - 0x03, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, - 0x01, 0xE0, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0xFC, - 0x07, 0x80, 0xFC, 0x0F, 0x00, 0xFE, 0x1E, 0x00, 0x7F, 0xF8, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0x80, 0x00, - 0x7E, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x01, 0xFC, - 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0x3F, 0x80, 0x00, 0xFE, 0x00, - 0x01, 0xFF, 0xF0, 0x07, 0xFF, 0xF0, 0x0F, 0xE1, 0xF0, 0x3F, 0x81, 0xF0, - 0x7F, 0x03, 0xF0, 0xFC, 0x07, 0xE3, 0xF8, 0x0F, 0xC7, 0xF0, 0x1F, 0x8F, - 0xC0, 0x7F, 0x1F, 0x80, 0xFE, 0x3F, 0x01, 0xFC, 0x7C, 0x03, 0xF0, 0xF8, - 0x0F, 0xE1, 0xF0, 0x1F, 0xC1, 0xE0, 0x3F, 0x03, 0xC0, 0xFC, 0x07, 0x81, - 0xF0, 0x07, 0x87, 0xC0, 0x07, 0xFF, 0x00, 0x03, 0xF8, 0x00, 0x0F, 0xFF, - 0xFC, 0x1F, 0xFF, 0xF8, 0x3F, 0xFF, 0xE0, 0xFF, 0xFF, 0xC1, 0xFF, 0xFF, - 0x07, 0x00, 0x1C, 0x08, 0x00, 0x78, 0x30, 0x01, 0xE0, 0x40, 0x03, 0xC0, - 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, - 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x78, 0x00, 0x01, - 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x1E, 0x00, - 0x00, 0x78, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, - 0x1E, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x03, 0xFE, 0x00, 0x3C, 0x78, - 0x03, 0xC1, 0xE0, 0x3C, 0x07, 0x81, 0xE0, 0x3C, 0x1F, 0x01, 0xE0, 0xF8, - 0x0F, 0x07, 0xC0, 0x78, 0x3F, 0x03, 0xC1, 0xF8, 0x3C, 0x0F, 0xE1, 0xE0, - 0x3F, 0x9E, 0x01, 0xFF, 0xC0, 0x07, 0xFC, 0x00, 0x3F, 0xC0, 0x00, 0xFF, - 0x00, 0x1F, 0xFC, 0x03, 0xCF, 0xF0, 0x3C, 0x3F, 0x83, 0xC0, 0xFC, 0x3C, - 0x03, 0xF1, 0xE0, 0x1F, 0x9E, 0x00, 0x7C, 0xF0, 0x03, 0xE7, 0x80, 0x1F, - 0x3C, 0x00, 0xF9, 0xE0, 0x07, 0x87, 0x00, 0x3C, 0x3C, 0x03, 0xC0, 0xF0, - 0x3C, 0x03, 0xC3, 0xC0, 0x07, 0xF0, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, - 0xE0, 0x03, 0xF1, 0xE0, 0x0F, 0xC1, 0xC0, 0x3F, 0x03, 0xC0, 0xFE, 0x07, - 0x81, 0xF8, 0x0F, 0x87, 0xF0, 0x1F, 0x0F, 0xC0, 0x3E, 0x3F, 0x80, 0xFC, - 0x7F, 0x01, 0xF8, 0xFC, 0x03, 0xF1, 0xF8, 0x07, 0xE3, 0xF0, 0x1F, 0xC7, - 0xE0, 0x3F, 0x8F, 0xC0, 0x7E, 0x0F, 0x81, 0xFC, 0x1F, 0x03, 0xF8, 0x1F, - 0x0F, 0xE0, 0x1F, 0xFF, 0xC0, 0x1F, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x03, - 0xF8, 0x00, 0x0F, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF8, - 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x1F, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x01, 0xE0, 0x1F, 0x81, 0xFE, 0x0F, - 0xF0, 0x7F, 0x81, 0xF8, 0x07, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x80, 0x7E, 0x07, 0xF8, 0x3F, - 0xC1, 0xFE, 0x07, 0xE0, 0x1E, 0x00, 0x00, 0x78, 0x01, 0xF8, 0x07, 0xF8, - 0x0F, 0xF0, 0x1F, 0xE0, 0x1F, 0x80, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x80, - 0x1F, 0x80, 0x3F, 0x80, 0x7F, 0x00, 0xFE, 0x00, 0xFC, 0x00, 0xF8, 0x00, - 0xE0, 0x01, 0xC0, 0x07, 0x00, 0x0C, 0x00, 0x30, 0x01, 0xC0, 0x0E, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x07, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x7F, 0x00, 0x03, 0xFF, 0x00, 0x0F, 0xFC, 0x00, 0x3F, 0xF0, - 0x01, 0xFF, 0xC0, 0x07, 0xFE, 0x00, 0x1F, 0xF8, 0x00, 0x7F, 0xE0, 0x00, - 0xFF, 0x80, 0x00, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0xE0, 0x00, - 0x1F, 0xF8, 0x00, 0x07, 0xFE, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, - 0x00, 0x0F, 0xFC, 0x00, 0x03, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x07, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0x80, 0x00, 0x00, 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x00, 0x0F, 0xFC, 0x00, 0x03, 0xFF, 0x80, - 0x00, 0x7F, 0xE0, 0x00, 0x1F, 0xF8, 0x00, 0x07, 0xFF, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0xFF, 0x00, 0x03, 0xFF, 0x00, 0x1F, 0xFC, - 0x00, 0x7F, 0xE0, 0x01, 0xFF, 0x80, 0x0F, 0xFE, 0x00, 0x3F, 0xF0, 0x00, - 0xFF, 0xC0, 0x00, 0xFF, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xE0, 0x00, 0x00, - 0x80, 0x00, 0x00, 0x01, 0xF8, 0x01, 0xFF, 0x80, 0xF1, 0xF0, 0x38, 0x3E, - 0x1E, 0x0F, 0xC7, 0xC3, 0xF1, 0xF0, 0xFC, 0x7C, 0x3F, 0x0E, 0x0F, 0xC0, - 0x07, 0xF0, 0x01, 0xF8, 0x00, 0xFC, 0x00, 0x3F, 0x00, 0x1F, 0x00, 0x07, - 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0x60, 0x00, 0x30, 0x00, 0x0C, 0x00, - 0x06, 0x00, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x03, 0xC0, 0x01, 0xF8, 0x00, 0xFF, 0x00, 0x3F, 0xC0, 0x0F, 0xF0, - 0x01, 0xF8, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x1F, - 0xFF, 0xC0, 0x00, 0x3F, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x7C, - 0x00, 0x03, 0x80, 0x7C, 0x00, 0x00, 0xE0, 0x7C, 0x00, 0x00, 0x38, 0x3C, - 0x00, 0xF0, 0x4C, 0x3E, 0x00, 0xFD, 0xE7, 0x1E, 0x00, 0xF3, 0xF1, 0x9F, - 0x00, 0xF1, 0xF0, 0xEF, 0x80, 0xF0, 0x78, 0x3F, 0x80, 0xF0, 0x3C, 0x1F, - 0xC0, 0x78, 0x1E, 0x0F, 0xE0, 0x78, 0x1E, 0x07, 0xF0, 0x3C, 0x0F, 0x03, - 0xF8, 0x3E, 0x07, 0x81, 0xFC, 0x1E, 0x07, 0x81, 0xFE, 0x0F, 0x03, 0xC0, - 0xDF, 0x07, 0x83, 0xC0, 0x6F, 0x83, 0xC3, 0xE0, 0x63, 0xE1, 0xF3, 0xF0, - 0x71, 0xF0, 0x7E, 0x78, 0x70, 0xF8, 0x1E, 0x3F, 0xF0, 0x3E, 0x00, 0x07, - 0xE0, 0x0F, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x03, 0x80, 0x03, 0xF0, - 0x07, 0xC0, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x00, - 0x00, 0x06, 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, - 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, - 0x7E, 0x00, 0x00, 0x06, 0xFC, 0x00, 0x00, 0x19, 0xF8, 0x00, 0x00, 0x63, - 0xF8, 0x00, 0x00, 0xC7, 0xF0, 0x00, 0x03, 0x07, 0xE0, 0x00, 0x06, 0x0F, - 0xC0, 0x00, 0x18, 0x1F, 0x80, 0x00, 0x60, 0x3F, 0x00, 0x00, 0xC0, 0x7F, - 0x00, 0x03, 0x00, 0xFE, 0x00, 0x0F, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0xF8, - 0x00, 0x60, 0x03, 0xF0, 0x00, 0xC0, 0x07, 0xE0, 0x03, 0x00, 0x0F, 0xE0, - 0x0E, 0x00, 0x1F, 0xC0, 0x18, 0x00, 0x3F, 0x80, 0x70, 0x00, 0x7F, 0x01, - 0xC0, 0x00, 0xFE, 0x03, 0x80, 0x01, 0xFE, 0x1F, 0x80, 0x07, 0xFE, 0x7F, - 0xC0, 0x3F, 0xFF, 0x01, 0xFF, 0xFF, 0x80, 0x00, 0xFF, 0xFF, 0xE0, 0x00, - 0xFE, 0x1F, 0xE0, 0x01, 0xFC, 0x1F, 0xE0, 0x03, 0xF8, 0x1F, 0xE0, 0x0F, - 0xE0, 0x3F, 0xC0, 0x1F, 0xC0, 0x7F, 0x80, 0x3F, 0x80, 0xFF, 0x00, 0x7F, - 0x01, 0xFE, 0x01, 0xFC, 0x03, 0xF8, 0x03, 0xF8, 0x0F, 0xF0, 0x07, 0xF0, - 0x1F, 0xC0, 0x0F, 0xC0, 0x7F, 0x00, 0x3F, 0x87, 0xF0, 0x00, 0x7F, 0xFF, - 0x00, 0x00, 0xFE, 0x1F, 0xC0, 0x03, 0xF8, 0x0F, 0xE0, 0x07, 0xF0, 0x0F, - 0xE0, 0x0F, 0xE0, 0x1F, 0xC0, 0x1F, 0xC0, 0x3F, 0xC0, 0x7F, 0x00, 0x7F, - 0x80, 0xFE, 0x00, 0xFF, 0x01, 0xFC, 0x01, 0xFE, 0x03, 0xF0, 0x07, 0xFC, - 0x0F, 0xE0, 0x0F, 0xF0, 0x1F, 0xC0, 0x3F, 0xE0, 0x3F, 0x80, 0x7F, 0x80, - 0xFE, 0x01, 0xFE, 0x01, 0xFE, 0x0F, 0xF8, 0x07, 0xFF, 0xFF, 0xC0, 0x3F, - 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x08, 0x00, 0x7F, 0xFE, 0xC0, - 0x0F, 0xF0, 0x7E, 0x00, 0xFE, 0x01, 0xF0, 0x1F, 0xE0, 0x07, 0x01, 0xFE, - 0x00, 0x38, 0x1F, 0xE0, 0x00, 0xC0, 0xFE, 0x00, 0x06, 0x0F, 0xF0, 0x00, - 0x30, 0xFF, 0x00, 0x01, 0x07, 0xF8, 0x00, 0x08, 0x7F, 0x80, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x3F, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x0F, 0xF0, - 0x00, 0x00, 0xFF, 0x80, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x03, - 0xFC, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x60, 0x7F, 0x00, 0x06, 0x03, 0xFC, 0x00, - 0x70, 0x0F, 0xE0, 0x07, 0x00, 0x1F, 0xC0, 0xE0, 0x00, 0x7F, 0xFE, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x01, 0xFF, 0xFF, 0x80, 0x00, 0x3F, 0xFF, 0xFE, - 0x00, 0x00, 0xFE, 0x07, 0xF0, 0x00, 0x1F, 0xC0, 0x3F, 0x00, 0x03, 0xF8, - 0x07, 0xF0, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x03, - 0xF8, 0x00, 0xFE, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x1F, 0xC0, 0x03, 0xFC, - 0x03, 0xF8, 0x00, 0x7F, 0x80, 0x7F, 0x00, 0x0F, 0xF0, 0x0F, 0xC0, 0x01, - 0xFE, 0x03, 0xF8, 0x00, 0x3F, 0xC0, 0x7F, 0x00, 0x07, 0xF8, 0x0F, 0xE0, - 0x01, 0xFF, 0x03, 0xF8, 0x00, 0x3F, 0xE0, 0x7F, 0x00, 0x07, 0xF8, 0x0F, - 0xE0, 0x00, 0xFF, 0x01, 0xFC, 0x00, 0x3F, 0xE0, 0x7F, 0x00, 0x07, 0xF8, - 0x0F, 0xE0, 0x01, 0xFF, 0x01, 0xFC, 0x00, 0x3F, 0xC0, 0x3F, 0x00, 0x0F, - 0xF0, 0x0F, 0xE0, 0x01, 0xFC, 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x3F, 0x80, - 0x1F, 0xC0, 0x0F, 0xE0, 0x0F, 0xF0, 0x01, 0xFE, 0x07, 0xF8, 0x00, 0x7F, - 0xFF, 0xFC, 0x00, 0x3F, 0xFF, 0xF8, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFF, - 0x00, 0x7F, 0xFF, 0xFF, 0x00, 0x3F, 0xC0, 0x7E, 0x00, 0x3F, 0x80, 0x1E, - 0x00, 0x3F, 0x80, 0x0E, 0x00, 0x7F, 0x00, 0x06, 0x00, 0x7F, 0x00, 0x04, - 0x00, 0x7F, 0x00, 0x04, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, 0x01, 0x80, - 0x00, 0xFE, 0x01, 0x00, 0x00, 0xFE, 0x03, 0x00, 0x00, 0xFC, 0x0F, 0x00, - 0x01, 0xFF, 0xFF, 0x00, 0x01, 0xFF, 0xFE, 0x00, 0x01, 0xFC, 0x3E, 0x00, - 0x03, 0xF8, 0x1E, 0x00, 0x03, 0xF8, 0x0C, 0x00, 0x03, 0xF8, 0x0C, 0x00, - 0x03, 0xF8, 0x0C, 0x00, 0x07, 0xF0, 0x08, 0x00, 0x07, 0xF0, 0x00, 0x08, - 0x07, 0xF0, 0x00, 0x18, 0x07, 0xE0, 0x00, 0x30, 0x0F, 0xE0, 0x00, 0x30, - 0x0F, 0xE0, 0x00, 0x70, 0x0F, 0xE0, 0x01, 0xE0, 0x1F, 0xC0, 0x07, 0xE0, - 0x1F, 0xE0, 0x3F, 0xE0, 0x3F, 0xFF, 0xFF, 0xE0, 0xFF, 0xFF, 0xFF, 0xC0, - 0x01, 0xFF, 0xFF, 0xFE, 0x00, 0xFF, 0xFF, 0xFC, 0x00, 0xFF, 0x03, 0xF0, - 0x01, 0xFC, 0x01, 0xE0, 0x03, 0xF8, 0x01, 0xC0, 0x0F, 0xE0, 0x01, 0x80, - 0x1F, 0xC0, 0x02, 0x00, 0x3F, 0x80, 0x04, 0x00, 0x7F, 0x00, 0x00, 0x01, - 0xFC, 0x03, 0x00, 0x03, 0xF8, 0x04, 0x00, 0x07, 0xF0, 0x18, 0x00, 0x0F, - 0xC0, 0xF0, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x7F, 0xFF, 0x80, 0x00, 0xFE, - 0x1F, 0x00, 0x03, 0xF8, 0x1E, 0x00, 0x07, 0xF0, 0x18, 0x00, 0x0F, 0xE0, - 0x30, 0x00, 0x1F, 0xC0, 0x60, 0x00, 0x7F, 0x00, 0x80, 0x00, 0xFE, 0x01, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, - 0x00, 0x1F, 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFF, 0x00, 0x00, - 0x01, 0xFE, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, - 0x00, 0x00, 0x00, 0xFF, 0x02, 0x00, 0x0F, 0xFF, 0xEE, 0x00, 0x3F, 0xC0, - 0xFC, 0x00, 0x7F, 0x00, 0x7C, 0x01, 0xFE, 0x00, 0x3C, 0x03, 0xFC, 0x00, - 0x38, 0x07, 0xF8, 0x00, 0x18, 0x07, 0xF0, 0x00, 0x18, 0x0F, 0xF0, 0x00, - 0x10, 0x1F, 0xE0, 0x00, 0x10, 0x1F, 0xE0, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x00, 0x3F, 0xC0, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x00, 0x7F, 0x80, 0x00, - 0x00, 0x7F, 0x80, 0x00, 0x00, 0xFF, 0x80, 0x00, 0x00, 0xFF, 0x80, 0x1F, - 0xFF, 0xFF, 0x00, 0x07, 0xFC, 0xFF, 0x00, 0x03, 0xF8, 0xFF, 0x00, 0x03, - 0xF8, 0xFF, 0x00, 0x03, 0xF0, 0xFF, 0x00, 0x03, 0xF0, 0xFF, 0x00, 0x07, - 0xF0, 0x7F, 0x00, 0x07, 0xF0, 0x7F, 0x00, 0x07, 0xE0, 0x7F, 0x80, 0x07, - 0xE0, 0x3F, 0x80, 0x0F, 0xE0, 0x1F, 0xC0, 0x0F, 0xC0, 0x0F, 0xE0, 0x0F, - 0xC0, 0x07, 0xF0, 0x3F, 0x80, 0x01, 0xFF, 0xFE, 0x00, 0x00, 0x3F, 0xE0, - 0x00, 0x01, 0xFF, 0xFC, 0x7F, 0xFE, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, 0x00, - 0xFE, 0x00, 0x3F, 0xC0, 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, - 0xFE, 0x00, 0x0F, 0xE0, 0x01, 0xFC, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x00, - 0x3F, 0x80, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x01, 0xFC, 0x00, - 0x7F, 0x00, 0x03, 0xF8, 0x00, 0xFE, 0x00, 0x07, 0xF0, 0x01, 0xFC, 0x00, - 0x0F, 0xC0, 0x03, 0xF8, 0x00, 0x3F, 0x80, 0x0F, 0xE0, 0x00, 0x7F, 0xFF, - 0xFF, 0xC0, 0x00, 0xFF, 0xFF, 0xFF, 0x80, 0x03, 0xF8, 0x00, 0x7F, 0x00, - 0x07, 0xF0, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x03, 0xF8, 0x00, 0x1F, 0xC0, - 0x07, 0xF0, 0x00, 0x7F, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x3F, 0x80, - 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x03, 0xF0, 0x00, 0xFE, 0x00, 0x0F, 0xE0, - 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x07, 0xF0, 0x00, 0x3F, 0x80, 0x0F, 0xE0, - 0x00, 0xFF, 0x00, 0x3F, 0xC0, 0x01, 0xFE, 0x00, 0x7F, 0x80, 0x07, 0xFC, - 0x01, 0xFF, 0x00, 0x3F, 0xFF, 0x1F, 0xFF, 0xC0, 0x00, 0x01, 0xFF, 0xF8, - 0x03, 0xFE, 0x00, 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x3F, - 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xF0, 0x00, - 0x3F, 0x80, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, 0xFE, 0x00, 0x07, 0xF0, - 0x00, 0x3F, 0x80, 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFE, 0x00, 0x07, - 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0xFC, 0x00, - 0x0F, 0xE0, 0x00, 0x7F, 0x00, 0x03, 0xF8, 0x00, 0x3F, 0xC0, 0x01, 0xFC, - 0x00, 0x1F, 0xF0, 0x03, 0xFF, 0xF0, 0x00, 0x00, 0x07, 0xFF, 0xE0, 0x00, - 0x3F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x0F, 0xE0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x3F, - 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x07, 0x03, 0xF0, 0x01, 0xF0, 0xFE, 0x00, - 0x3E, 0x1F, 0xC0, 0x07, 0xC3, 0xF0, 0x00, 0xF8, 0xFC, 0x00, 0x0F, 0x3F, - 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x01, 0xFF, 0xF8, - 0xFF, 0xC0, 0x1F, 0xF8, 0x0F, 0xC0, 0x03, 0xF8, 0x01, 0xC0, 0x00, 0xFE, - 0x00, 0xE0, 0x00, 0x3F, 0x80, 0x70, 0x00, 0x1F, 0xC0, 0x38, 0x00, 0x07, - 0xF0, 0x1C, 0x00, 0x01, 0xFC, 0x0E, 0x00, 0x00, 0x7F, 0x07, 0x00, 0x00, - 0x3F, 0x83, 0x80, 0x00, 0x0F, 0xE1, 0xC0, 0x00, 0x03, 0xF8, 0xE0, 0x00, - 0x00, 0xFC, 0x60, 0x00, 0x00, 0x7F, 0x7C, 0x00, 0x00, 0x1F, 0xFF, 0x00, - 0x00, 0x07, 0xFF, 0xE0, 0x00, 0x03, 0xFB, 0xF8, 0x00, 0x00, 0xFE, 0x7F, - 0x00, 0x00, 0x3F, 0x9F, 0xC0, 0x00, 0x0F, 0xE3, 0xF8, 0x00, 0x07, 0xF0, - 0xFE, 0x00, 0x01, 0xFC, 0x1F, 0xC0, 0x00, 0x7F, 0x07, 0xF0, 0x00, 0x1F, - 0x80, 0xFE, 0x00, 0x0F, 0xE0, 0x3F, 0x80, 0x03, 0xF8, 0x0F, 0xE0, 0x00, - 0xFE, 0x01, 0xFC, 0x00, 0x7F, 0x00, 0x7F, 0x00, 0x1F, 0xE0, 0x0F, 0xE0, - 0x0F, 0xF8, 0x07, 0xFC, 0x0F, 0xFF, 0xC7, 0xFF, 0xC0, 0x01, 0xFF, 0xF8, - 0x00, 0x03, 0xFF, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x7F, 0x00, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, - 0xE0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x3F, 0x80, - 0x00, 0x01, 0xFC, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, - 0x07, 0xF0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x03, 0xF8, 0x00, 0x04, 0x1F, 0xC0, 0x00, 0x60, 0xFC, 0x00, 0x06, - 0x0F, 0xE0, 0x00, 0x30, 0x7F, 0x00, 0x03, 0x83, 0xF8, 0x00, 0x7C, 0x3F, - 0x80, 0x0F, 0xC1, 0xFE, 0x03, 0xFE, 0x1F, 0xFF, 0xFF, 0xF3, 0xFF, 0xFF, - 0xFF, 0x00, 0x01, 0xFF, 0xC0, 0x00, 0x3F, 0xF0, 0x03, 0xFC, 0x00, 0x03, - 0xFC, 0x00, 0x3F, 0xC0, 0x00, 0x7F, 0x80, 0x03, 0xFC, 0x00, 0x0F, 0xF8, - 0x00, 0x3F, 0xC0, 0x00, 0xFF, 0x80, 0x03, 0xFC, 0x00, 0x1F, 0xF0, 0x00, - 0x6F, 0xC0, 0x03, 0xFF, 0x00, 0x06, 0xFC, 0x00, 0x37, 0xF0, 0x00, 0x6F, - 0xE0, 0x06, 0x7E, 0x00, 0x04, 0xFE, 0x00, 0xEF, 0xE0, 0x00, 0xCF, 0xE0, - 0x0C, 0xFE, 0x00, 0x0C, 0xFE, 0x01, 0x8F, 0xE0, 0x00, 0xCF, 0xE0, 0x38, - 0xFC, 0x00, 0x18, 0x7E, 0x03, 0x1F, 0xC0, 0x01, 0x87, 0xE0, 0x61, 0xFC, - 0x00, 0x18, 0x7E, 0x0E, 0x1F, 0xC0, 0x01, 0x87, 0xE0, 0xC3, 0xF8, 0x00, - 0x30, 0x7F, 0x18, 0x3F, 0x80, 0x03, 0x07, 0xF3, 0x83, 0xF8, 0x00, 0x30, - 0x7F, 0x30, 0x3F, 0x00, 0x06, 0x07, 0xF7, 0x07, 0xF0, 0x00, 0x60, 0x3F, - 0xE0, 0x7F, 0x00, 0x06, 0x03, 0xFC, 0x07, 0xF0, 0x00, 0xE0, 0x3F, 0xC0, - 0x7E, 0x00, 0x0C, 0x03, 0xF8, 0x0F, 0xE0, 0x00, 0xC0, 0x3F, 0x00, 0xFE, - 0x00, 0x0C, 0x03, 0xF0, 0x0F, 0xE0, 0x01, 0xC0, 0x3E, 0x01, 0xFC, 0x00, - 0x1C, 0x03, 0xC0, 0x1F, 0xC0, 0x07, 0xE0, 0x3C, 0x03, 0xFE, 0x00, 0xFF, - 0xC1, 0x81, 0xFF, 0xFC, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x03, 0xFF, - 0x00, 0x1F, 0xF8, 0x03, 0xF8, 0x00, 0x3F, 0x00, 0x0F, 0xE0, 0x00, 0xF0, - 0x00, 0x7F, 0x00, 0x07, 0x00, 0x03, 0xFC, 0x00, 0x38, 0x00, 0x1F, 0xE0, - 0x01, 0x80, 0x01, 0xBF, 0x80, 0x0C, 0x00, 0x0D, 0xFC, 0x00, 0x60, 0x00, - 0x67, 0xF0, 0x07, 0x00, 0x02, 0x3F, 0x80, 0x30, 0x00, 0x30, 0xFE, 0x01, - 0x80, 0x01, 0x87, 0xF0, 0x0C, 0x00, 0x0C, 0x1F, 0xC0, 0xC0, 0x00, 0xC0, - 0xFE, 0x06, 0x00, 0x06, 0x07, 0xF8, 0x30, 0x00, 0x30, 0x1F, 0xC1, 0x80, - 0x01, 0x80, 0xFF, 0x18, 0x00, 0x18, 0x03, 0xF8, 0xC0, 0x00, 0xC0, 0x1F, - 0xC6, 0x00, 0x06, 0x00, 0x7F, 0x60, 0x00, 0x60, 0x03, 0xFB, 0x00, 0x03, - 0x00, 0x0F, 0xF8, 0x00, 0x18, 0x00, 0x7F, 0xC0, 0x01, 0xC0, 0x01, 0xFC, - 0x00, 0x0C, 0x00, 0x0F, 0xE0, 0x00, 0x60, 0x00, 0x3F, 0x00, 0x03, 0x00, - 0x01, 0xF0, 0x00, 0x38, 0x00, 0x07, 0x80, 0x01, 0xC0, 0x00, 0x3C, 0x00, - 0x3F, 0x00, 0x01, 0xE0, 0x03, 0xFF, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, - 0x30, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0x80, 0x00, 0x7E, - 0x1F, 0x80, 0x01, 0xF0, 0x0F, 0x80, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x00, - 0x1F, 0x80, 0xFE, 0x00, 0x3F, 0x03, 0xF8, 0x00, 0x7E, 0x07, 0xF0, 0x00, - 0xFE, 0x1F, 0xC0, 0x01, 0xFC, 0x7F, 0x80, 0x03, 0xF8, 0xFE, 0x00, 0x07, - 0xF3, 0xFC, 0x00, 0x1F, 0xE7, 0xF0, 0x00, 0x3F, 0xDF, 0xE0, 0x00, 0x7F, - 0xBF, 0xC0, 0x00, 0xFE, 0x7F, 0x80, 0x03, 0xFC, 0xFE, 0x00, 0x07, 0xFB, - 0xFC, 0x00, 0x0F, 0xF7, 0xF8, 0x00, 0x3F, 0xCF, 0xF0, 0x00, 0x7F, 0x9F, - 0xC0, 0x00, 0xFE, 0x3F, 0x80, 0x03, 0xFC, 0x7F, 0x00, 0x07, 0xF0, 0xFE, - 0x00, 0x1F, 0xC0, 0xFC, 0x00, 0x3F, 0x81, 0xF8, 0x00, 0xFE, 0x03, 0xF0, - 0x03, 0xF8, 0x03, 0xF0, 0x07, 0xE0, 0x03, 0xE0, 0x1F, 0x00, 0x03, 0xE0, - 0xFC, 0x00, 0x03, 0xFF, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x01, 0xFF, - 0xFF, 0x80, 0x00, 0xFF, 0xFF, 0xE0, 0x00, 0xFE, 0x1F, 0xE0, 0x01, 0xFC, - 0x1F, 0xE0, 0x03, 0xF0, 0x1F, 0xC0, 0x0F, 0xE0, 0x3F, 0xC0, 0x1F, 0xC0, - 0x7F, 0x80, 0x3F, 0x80, 0xFF, 0x00, 0x7E, 0x01, 0xFE, 0x01, 0xFC, 0x03, - 0xFC, 0x03, 0xF8, 0x0F, 0xF8, 0x07, 0xF0, 0x1F, 0xE0, 0x0F, 0xC0, 0x7F, - 0x80, 0x3F, 0x81, 0xFE, 0x00, 0x7F, 0x07, 0xF8, 0x00, 0xFF, 0xFF, 0xC0, - 0x03, 0xFF, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, - 0x1F, 0x80, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, - 0xFC, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x0F, 0xE0, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x01, 0xFC, - 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x3F, 0xFF, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xFF, 0x00, 0x00, 0x7E, 0x1F, 0x80, 0x01, - 0xF0, 0x0F, 0x80, 0x0F, 0xC0, 0x1F, 0x80, 0x3F, 0x80, 0x1F, 0x80, 0xFE, - 0x00, 0x3F, 0x03, 0xF8, 0x00, 0x7E, 0x07, 0xF0, 0x00, 0xFE, 0x1F, 0xC0, - 0x01, 0xFC, 0x7F, 0x80, 0x03, 0xF8, 0xFE, 0x00, 0x07, 0xF3, 0xFC, 0x00, - 0x1F, 0xE7, 0xF8, 0x00, 0x3F, 0xDF, 0xE0, 0x00, 0x7F, 0xBF, 0xC0, 0x00, - 0xFF, 0x7F, 0x80, 0x01, 0xFC, 0xFE, 0x00, 0x07, 0xFB, 0xFC, 0x00, 0x0F, - 0xF7, 0xF8, 0x00, 0x1F, 0xCF, 0xF0, 0x00, 0x7F, 0x9F, 0xC0, 0x00, 0xFE, - 0x3F, 0x80, 0x01, 0xFC, 0x7F, 0x00, 0x07, 0xF0, 0xFE, 0x00, 0x0F, 0xE1, - 0xFC, 0x00, 0x3F, 0x81, 0xF8, 0x00, 0x7E, 0x03, 0xF0, 0x01, 0xF8, 0x03, - 0xE0, 0x07, 0xE0, 0x07, 0xE0, 0x1F, 0x80, 0x03, 0xE0, 0x7E, 0x00, 0x03, - 0xF3, 0xF0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x01, 0x80, 0x00, 0x00, 0x06, - 0x00, 0x00, 0x00, 0x1C, 0x00, 0x00, 0xC0, 0x7F, 0xE0, 0x03, 0x03, 0xFF, - 0xF8, 0x1C, 0x0F, 0xFF, 0xFF, 0xF0, 0x3F, 0xFF, 0xFF, 0xC0, 0xE0, 0x3F, - 0xFF, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x01, 0xFF, 0xFF, 0xC0, 0x00, 0x7F, - 0xFF, 0xF8, 0x00, 0x3F, 0xC3, 0xFC, 0x00, 0x3F, 0x81, 0xFE, 0x00, 0x3F, - 0x80, 0xFF, 0x00, 0x7F, 0x80, 0xFF, 0x00, 0x7F, 0x00, 0xFF, 0x00, 0x7F, - 0x00, 0xFF, 0x00, 0x7F, 0x00, 0xFF, 0x00, 0xFF, 0x01, 0xFE, 0x00, 0xFE, - 0x01, 0xFE, 0x00, 0xFE, 0x03, 0xFC, 0x00, 0xFE, 0x07, 0xF8, 0x01, 0xFC, - 0x1F, 0xF0, 0x01, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0xFE, 0x00, 0x03, 0xFD, - 0xFE, 0x00, 0x03, 0xF8, 0xFF, 0x00, 0x03, 0xF8, 0xFF, 0x00, 0x03, 0xF8, - 0xFF, 0x00, 0x07, 0xF8, 0x7F, 0x80, 0x07, 0xF0, 0x7F, 0x80, 0x07, 0xF0, - 0x3F, 0x80, 0x07, 0xF0, 0x3F, 0xC0, 0x0F, 0xE0, 0x3F, 0xC0, 0x0F, 0xE0, - 0x1F, 0xC0, 0x0F, 0xE0, 0x1F, 0xE0, 0x1F, 0xE0, 0x1F, 0xE0, 0x1F, 0xE0, - 0x0F, 0xF0, 0x3F, 0xF0, 0x0F, 0xF8, 0xFF, 0xFC, 0x0F, 0xFE, 0x00, 0x1F, - 0x83, 0x00, 0x7F, 0xF7, 0x00, 0xF8, 0x7E, 0x01, 0xE0, 0x1E, 0x03, 0xC0, - 0x0E, 0x03, 0xC0, 0x0E, 0x07, 0xC0, 0x0E, 0x07, 0xC0, 0x04, 0x07, 0xC0, - 0x04, 0x07, 0xE0, 0x04, 0x07, 0xF0, 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFC, - 0x00, 0x03, 0xFF, 0x00, 0x01, 0xFF, 0x80, 0x00, 0xFF, 0xC0, 0x00, 0x7F, - 0xE0, 0x00, 0x3F, 0xE0, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0xF0, 0x00, 0x07, - 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x20, 0x00, 0xF8, 0x20, 0x00, - 0xF8, 0x20, 0x00, 0xF8, 0x70, 0x00, 0xF8, 0x70, 0x00, 0xF0, 0x78, 0x01, - 0xF0, 0x78, 0x03, 0xE0, 0x7E, 0x07, 0xC0, 0x47, 0xFF, 0x80, 0xC0, 0xFC, - 0x00, 0x3F, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFC, 0xFE, 0x3F, 0x8F, 0x9E, - 0x07, 0xF0, 0xF3, 0x81, 0xFC, 0x0E, 0x60, 0x3F, 0x81, 0x98, 0x07, 0xF0, - 0x13, 0x00, 0xFC, 0x02, 0x00, 0x3F, 0x80, 0x40, 0x07, 0xF0, 0x00, 0x00, - 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, - 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, - 0x03, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, - 0x00, 0x00, 0x7E, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x3F, 0xFF, 0xC0, 0x00, 0x7F, 0xFF, - 0x03, 0xFF, 0x0F, 0xFC, 0x00, 0xFC, 0x07, 0xF0, 0x00, 0x38, 0x07, 0xF0, - 0x00, 0x38, 0x07, 0xF0, 0x00, 0x30, 0x0F, 0xE0, 0x00, 0x30, 0x0F, 0xE0, - 0x00, 0x70, 0x0F, 0xE0, 0x00, 0x60, 0x0F, 0xE0, 0x00, 0x60, 0x1F, 0xC0, - 0x00, 0xE0, 0x1F, 0xC0, 0x00, 0xC0, 0x1F, 0xC0, 0x00, 0xC0, 0x3F, 0x80, - 0x00, 0xC0, 0x3F, 0x80, 0x01, 0x80, 0x3F, 0x80, 0x01, 0x80, 0x3F, 0x80, - 0x01, 0x80, 0x7F, 0x00, 0x01, 0x80, 0x7F, 0x00, 0x03, 0x00, 0x7F, 0x00, - 0x03, 0x00, 0x7E, 0x00, 0x03, 0x00, 0xFE, 0x00, 0x06, 0x00, 0xFE, 0x00, - 0x06, 0x00, 0xFC, 0x00, 0x06, 0x00, 0xFC, 0x00, 0x0E, 0x00, 0xFC, 0x00, - 0x0C, 0x00, 0xFC, 0x00, 0x1C, 0x00, 0xFC, 0x00, 0x18, 0x00, 0x7E, 0x00, - 0x38, 0x00, 0x7E, 0x00, 0x70, 0x00, 0x3F, 0x81, 0xE0, 0x00, 0x0F, 0xFF, - 0x80, 0x00, 0x03, 0xFE, 0x00, 0x00, 0xFF, 0xFC, 0x03, 0xFE, 0x7F, 0xE0, - 0x01, 0xF8, 0x7F, 0x80, 0x01, 0xC0, 0xFF, 0x00, 0x03, 0x80, 0xFE, 0x00, - 0x0E, 0x01, 0xFC, 0x00, 0x18, 0x03, 0xF8, 0x00, 0x70, 0x07, 0xF0, 0x00, - 0xC0, 0x0F, 0xF0, 0x03, 0x80, 0x1F, 0xE0, 0x0E, 0x00, 0x1F, 0xC0, 0x18, - 0x00, 0x3F, 0x80, 0x70, 0x00, 0x7F, 0x00, 0xC0, 0x00, 0xFE, 0x03, 0x00, - 0x01, 0xFC, 0x0E, 0x00, 0x03, 0xF8, 0x18, 0x00, 0x07, 0xF8, 0x60, 0x00, - 0x07, 0xF1, 0xC0, 0x00, 0x0F, 0xE3, 0x00, 0x00, 0x1F, 0xCC, 0x00, 0x00, - 0x3F, 0xB8, 0x00, 0x00, 0x7F, 0x60, 0x00, 0x00, 0xFF, 0xC0, 0x00, 0x00, - 0xFF, 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x07, - 0xE0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0xFF, 0xF8, - 0xFF, 0xF0, 0xFF, 0x9F, 0xF8, 0x1F, 0xE0, 0x0F, 0x87, 0xF8, 0x07, 0xE0, - 0x07, 0x03, 0xF8, 0x03, 0xF0, 0x03, 0x80, 0xFE, 0x01, 0xF8, 0x01, 0x80, - 0x7F, 0x00, 0xFC, 0x00, 0xC0, 0x3F, 0x80, 0x7F, 0x00, 0xC0, 0x1F, 0xC0, - 0x7F, 0x80, 0x60, 0x0F, 0xE0, 0x3F, 0xC0, 0x60, 0x07, 0xF0, 0x37, 0xE0, - 0x30, 0x03, 0xF8, 0x1B, 0xF0, 0x30, 0x00, 0xFC, 0x19, 0xF8, 0x18, 0x00, - 0x7E, 0x0C, 0xFE, 0x18, 0x00, 0x3F, 0x84, 0x7F, 0x0C, 0x00, 0x1F, 0xC6, - 0x3F, 0x8C, 0x00, 0x0F, 0xE2, 0x1F, 0xC6, 0x00, 0x07, 0xF3, 0x07, 0xE6, - 0x00, 0x03, 0xF9, 0x83, 0xF3, 0x00, 0x01, 0xFD, 0x81, 0xFB, 0x00, 0x00, - 0x7E, 0xC0, 0xFD, 0x80, 0x00, 0x3F, 0xC0, 0x7F, 0x80, 0x00, 0x1F, 0xE0, - 0x3F, 0xC0, 0x00, 0x0F, 0xE0, 0x1F, 0xC0, 0x00, 0x07, 0xF0, 0x0F, 0xE0, - 0x00, 0x03, 0xF0, 0x07, 0xE0, 0x00, 0x01, 0xF8, 0x01, 0xF0, 0x00, 0x00, - 0x78, 0x00, 0xF0, 0x00, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x00, 0x1C, 0x00, - 0x38, 0x00, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x00, 0x06, 0x00, 0x0C, 0x00, - 0x00, 0x03, 0x00, 0x06, 0x00, 0x00, 0x03, 0xFF, 0xF0, 0xFF, 0xC0, 0x3F, - 0xE0, 0x0F, 0xC0, 0x03, 0xF8, 0x01, 0xE0, 0x00, 0xFE, 0x00, 0xE0, 0x00, - 0x3F, 0x80, 0x70, 0x00, 0x07, 0xE0, 0x18, 0x00, 0x01, 0xFC, 0x0C, 0x00, - 0x00, 0x7F, 0x06, 0x00, 0x00, 0x0F, 0xC3, 0x00, 0x00, 0x03, 0xF9, 0x80, - 0x00, 0x00, 0xFE, 0xC0, 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x07, 0xF8, - 0x00, 0x00, 0x01, 0xFC, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x0F, - 0xC0, 0x00, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x00, - 0xFF, 0x80, 0x00, 0x00, 0x77, 0xF0, 0x00, 0x00, 0x39, 0xFC, 0x00, 0x00, - 0x1C, 0x3F, 0x00, 0x00, 0x06, 0x0F, 0xE0, 0x00, 0x03, 0x03, 0xF8, 0x00, - 0x01, 0x80, 0x7E, 0x00, 0x00, 0xE0, 0x1F, 0xC0, 0x00, 0x70, 0x07, 0xF0, - 0x00, 0x38, 0x01, 0xFC, 0x00, 0x1E, 0x00, 0x7F, 0x80, 0x1F, 0xC0, 0x1F, - 0xF0, 0x0F, 0xFC, 0x3F, 0xFF, 0x80, 0xFF, 0xF8, 0x3F, 0xF3, 0xFC, 0x00, - 0xFC, 0x1F, 0xC0, 0x07, 0x81, 0xFC, 0x00, 0x70, 0x0F, 0xC0, 0x0E, 0x00, - 0xFE, 0x00, 0xC0, 0x0F, 0xE0, 0x1C, 0x00, 0x7E, 0x03, 0x80, 0x07, 0xF0, - 0x30, 0x00, 0x7F, 0x06, 0x00, 0x03, 0xF0, 0xE0, 0x00, 0x3F, 0x8C, 0x00, - 0x03, 0xF9, 0x80, 0x00, 0x1F, 0xB0, 0x00, 0x01, 0xFF, 0x00, 0x00, 0x1F, - 0xE0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x1F, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x3F, 0x80, 0x00, 0x03, - 0xF8, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x7F, 0x00, - 0x00, 0x07, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x01, - 0xFF, 0x00, 0x00, 0xFF, 0xFE, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xF0, 0x3F, - 0xFF, 0xFF, 0x03, 0xF8, 0x0F, 0xF0, 0x7C, 0x01, 0xFE, 0x07, 0x80, 0x3F, - 0xC0, 0x70, 0x03, 0xF8, 0x06, 0x00, 0x7F, 0x80, 0xC0, 0x0F, 0xF0, 0x08, - 0x01, 0xFE, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x7F, - 0x80, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, 0xE0, 0x00, - 0x03, 0xFC, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x07, 0xF8, 0x00, 0x00, 0xFF, - 0x00, 0x00, 0x1F, 0xE0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0x3F, 0xC0, 0x00, - 0x07, 0xF8, 0x00, 0xC0, 0xFF, 0x00, 0x0C, 0x1F, 0xE0, 0x01, 0x81, 0xFE, - 0x00, 0x38, 0x3F, 0xC0, 0x07, 0x87, 0xF8, 0x01, 0xF0, 0xFF, 0x00, 0xFF, - 0x0F, 0xFF, 0xFF, 0xF0, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x7F, 0xE0, 0x0F, - 0xFC, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, - 0x00, 0x07, 0x80, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF0, - 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1E, 0x00, 0x03, 0xC0, - 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x78, 0x00, 0x0F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, - 0x0F, 0x00, 0x01, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x00, - 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xFE, 0x01, - 0xFF, 0xC0, 0x00, 0xF0, 0x07, 0x80, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x1C, - 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, - 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x07, 0x00, 0x3C, 0x01, 0xE0, 0x0F, 0x00, - 0x3C, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x01, 0xE0, 0x0F, 0x00, 0x78, 0x01, - 0xC0, 0x0F, 0x00, 0x78, 0x03, 0xC0, 0x0F, 0x00, 0x78, 0x00, 0x7F, 0xE0, - 0x0F, 0xFC, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, - 0x07, 0x80, 0x01, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF0, 0x00, - 0x3E, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x1E, 0x00, 0x07, 0xC0, 0x00, - 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xC0, 0x00, 0xF8, 0x00, 0x1F, 0x00, 0x03, - 0xE0, 0x00, 0x78, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x0F, - 0x00, 0x01, 0xE0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, 0xE0, 0x07, 0xFC, - 0x01, 0xFF, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0x00, 0x7F, 0x00, - 0x03, 0xF8, 0x00, 0x3F, 0xC0, 0x01, 0xEF, 0x00, 0x1E, 0x78, 0x00, 0xF1, - 0xE0, 0x0F, 0x0F, 0x00, 0x78, 0x3C, 0x07, 0xC1, 0xE0, 0x3C, 0x07, 0x83, - 0xE0, 0x3C, 0x1E, 0x00, 0xF1, 0xF0, 0x07, 0x8F, 0x00, 0x1E, 0xF8, 0x00, - 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x70, 0x3E, - 0x0F, 0x83, 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x0E, 0x01, 0xC0, 0x00, 0x3C, - 0x0C, 0x03, 0xF9, 0xF0, 0x1F, 0x3F, 0x80, 0xF8, 0x7E, 0x07, 0xC1, 0xF8, - 0x3F, 0x07, 0xC0, 0xF8, 0x1F, 0x07, 0xE0, 0x7C, 0x3F, 0x01, 0xF0, 0xFC, - 0x0F, 0x87, 0xE0, 0x3E, 0x1F, 0x80, 0xF8, 0x7E, 0x03, 0xC3, 0xF8, 0x1F, - 0x0F, 0xC0, 0x7C, 0x3F, 0x03, 0xF0, 0xFC, 0x0F, 0x83, 0xF0, 0x7E, 0x3F, - 0xC2, 0xF8, 0xBF, 0x9B, 0xE4, 0x7F, 0xCF, 0xE0, 0xFE, 0x3F, 0x01, 0xE0, - 0x78, 0x00, 0x00, 0x7C, 0x00, 0x3F, 0xF0, 0x00, 0x1F, 0x80, 0x00, 0x7E, - 0x00, 0x01, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x00, 0x00, 0x7C, 0x00, - 0x03, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x3E, 0x01, 0xF9, 0xFC, 0x07, - 0xEF, 0xF8, 0x1F, 0x47, 0xF0, 0x7E, 0x0F, 0xC3, 0xF8, 0x3F, 0x0F, 0xC0, - 0xFC, 0x3F, 0x03, 0xF1, 0xF8, 0x0F, 0xC7, 0xE0, 0x3F, 0x1F, 0x01, 0xF8, - 0x7C, 0x07, 0xE3, 0xF0, 0x1F, 0x8F, 0xC0, 0xFC, 0x3E, 0x03, 0xF1, 0xF8, - 0x0F, 0x87, 0xE0, 0x7C, 0x1F, 0x03, 0xE0, 0xFC, 0x0F, 0x03, 0xF0, 0x78, - 0x0F, 0xC7, 0xC0, 0x1F, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x3F, 0x00, - 0x3F, 0xE0, 0x1E, 0x3C, 0x0F, 0x0F, 0x07, 0x87, 0xC3, 0xE1, 0xF1, 0xF0, - 0x38, 0xFC, 0x00, 0x3E, 0x00, 0x1F, 0x80, 0x07, 0xE0, 0x01, 0xF8, 0x00, - 0xFC, 0x00, 0x3F, 0x00, 0x0F, 0xC0, 0x03, 0xF0, 0x00, 0xFC, 0x03, 0x3F, - 0x00, 0xCF, 0xE0, 0x61, 0xFC, 0x70, 0x3F, 0xF8, 0x07, 0xFC, 0x00, 0xFC, - 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x0F, 0xC0, 0x00, 0x7F, 0xE0, 0x00, - 0x07, 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0xFC, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x1F, 0x80, - 0x07, 0x9F, 0x80, 0x0F, 0xFF, 0xC0, 0x0F, 0x9F, 0xE0, 0x0F, 0x87, 0xF0, - 0x0F, 0x83, 0xF0, 0x0F, 0xC1, 0xF8, 0x07, 0xC0, 0xFC, 0x07, 0xE0, 0x7C, - 0x07, 0xE0, 0x7E, 0x03, 0xF0, 0x3F, 0x03, 0xF0, 0x1F, 0x81, 0xF8, 0x0F, - 0x80, 0xFC, 0x0F, 0xC0, 0xFE, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0x3F, 0x03, - 0xF0, 0x1F, 0x83, 0xF8, 0x0F, 0xC1, 0xF8, 0xC7, 0xE1, 0xFC, 0xC3, 0xF9, - 0xBE, 0xC0, 0xFF, 0x9F, 0xC0, 0x7F, 0x8F, 0xC0, 0x0F, 0x83, 0xC0, 0x00, - 0x00, 0x3F, 0x00, 0x3F, 0xE0, 0x1E, 0x3C, 0x0F, 0x0F, 0x07, 0x83, 0xC3, - 0xE0, 0xF1, 0xF0, 0x3C, 0xFC, 0x1E, 0x3F, 0x0F, 0x9F, 0x83, 0xC7, 0xE3, - 0xE1, 0xFB, 0xE0, 0xFF, 0xE0, 0x3F, 0xC0, 0x0F, 0xC0, 0x03, 0xF0, 0x00, - 0xFC, 0x03, 0x3F, 0x01, 0x8F, 0xC0, 0xC1, 0xF8, 0x70, 0x7F, 0xF8, 0x07, - 0xFC, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x03, 0xCE, 0x00, - 0x00, 0x78, 0xF0, 0x00, 0x0F, 0x8F, 0x00, 0x00, 0xF0, 0xF0, 0x00, 0x1F, - 0x06, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x03, 0xFF, 0xC0, 0x00, 0x3F, - 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x01, - 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x03, 0xF0, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x07, 0xC0, - 0x00, 0x00, 0xFC, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x01, 0xF0, 0x00, 0x06, 0x1F, 0x00, 0x00, 0xF1, 0xE0, - 0x00, 0x0F, 0x3E, 0x00, 0x00, 0xF3, 0xC0, 0x00, 0x07, 0xF8, 0x00, 0x00, - 0x3E, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x7F, 0xF0, 0x00, 0x7E, - 0x3F, 0xE0, 0x7C, 0x0F, 0xF0, 0x7E, 0x07, 0xC0, 0x7E, 0x03, 0xE0, 0x3F, - 0x01, 0xF0, 0x1F, 0x01, 0xF8, 0x0F, 0x80, 0xFC, 0x07, 0xC0, 0xFC, 0x01, - 0xE0, 0xFC, 0x00, 0x78, 0xFC, 0x00, 0x1F, 0xFC, 0x00, 0x0F, 0xF0, 0x00, - 0x1C, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x0F, 0xF8, 0x00, - 0x07, 0xFF, 0x80, 0x01, 0xFF, 0xF8, 0x00, 0x7F, 0xFE, 0x00, 0x77, 0xFF, - 0x80, 0xF0, 0x7F, 0xC0, 0xF0, 0x07, 0xE0, 0xF0, 0x01, 0xF0, 0x78, 0x00, - 0xF8, 0x3C, 0x00, 0x78, 0x1F, 0x00, 0x7C, 0x07, 0xC0, 0x78, 0x01, 0xFF, - 0xF8, 0x00, 0x1F, 0xE0, 0x00, 0x00, 0x04, 0x00, 0x01, 0xF8, 0x00, 0x1F, - 0xF0, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x7E, - 0x00, 0x00, 0xFC, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x0F, 0xC0, - 0x00, 0x1F, 0x87, 0xC0, 0x3E, 0x1F, 0xC0, 0xFC, 0x7F, 0x81, 0xF9, 0x9F, - 0x03, 0xE6, 0x3E, 0x07, 0xD8, 0x7C, 0x1F, 0xA0, 0xF8, 0x3F, 0x83, 0xF0, - 0x7F, 0x07, 0xE0, 0xFC, 0x0F, 0xC3, 0xF8, 0x3F, 0x07, 0xE0, 0x7E, 0x0F, - 0xC0, 0xFC, 0x3F, 0x03, 0xF0, 0x7E, 0x07, 0xE0, 0xFC, 0x0F, 0xC1, 0xF0, - 0x3F, 0x17, 0xE0, 0x7E, 0x6F, 0xC0, 0xF9, 0x9F, 0x01, 0xF6, 0x3E, 0x03, - 0xF8, 0xFC, 0x07, 0xF1, 0xC0, 0x07, 0x80, 0x01, 0xE0, 0x3F, 0x03, 0xF0, - 0x3F, 0x03, 0xF0, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xC7, - 0xFC, 0x1F, 0xC0, 0xF8, 0x0F, 0x81, 0xF8, 0x1F, 0x81, 0xF0, 0x1F, 0x03, - 0xF0, 0x3E, 0x03, 0xE0, 0x3E, 0x07, 0xE0, 0x7C, 0x07, 0xC0, 0xFC, 0x2F, - 0x84, 0xF8, 0xCF, 0x98, 0xFF, 0x0F, 0xE0, 0x78, 0x00, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, - 0x01, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x01, 0x00, 0x00, 0xFC, 0x00, 0x1F, 0xF0, 0x00, 0x1F, 0xC0, - 0x00, 0x3E, 0x00, 0x01, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, - 0x7C, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xF8, - 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF0, 0x00, - 0x0F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x1F, - 0x80, 0x00, 0x7E, 0x00, 0x01, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x3F, 0x00, - 0x60, 0xF8, 0x03, 0xC3, 0xC0, 0x0F, 0x1F, 0x00, 0x3C, 0xF8, 0x00, 0x7F, - 0xC0, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0xFC, 0x00, 0x07, - 0xFC, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xF8, 0x00, 0x01, - 0xF8, 0x00, 0x01, 0xF8, 0x00, 0x01, 0xF0, 0x00, 0x01, 0xF0, 0x00, 0x03, - 0xF0, 0x00, 0x03, 0xF0, 0x00, 0x03, 0xE3, 0xFF, 0x03, 0xE0, 0xFC, 0x07, - 0xE0, 0xF0, 0x07, 0xE0, 0xE0, 0x07, 0xC1, 0xC0, 0x0F, 0xC3, 0x80, 0x0F, - 0xC7, 0x00, 0x0F, 0x8E, 0x00, 0x0F, 0xBE, 0x00, 0x1F, 0xFE, 0x00, 0x1F, - 0xFE, 0x00, 0x1F, 0xFE, 0x00, 0x1F, 0x3E, 0x00, 0x3F, 0x3F, 0x00, 0x3F, - 0x1F, 0x00, 0x3E, 0x1F, 0x00, 0x7E, 0x1F, 0x04, 0x7E, 0x1F, 0x8C, 0x7E, - 0x0F, 0x98, 0x7C, 0x0F, 0xF0, 0xFC, 0x07, 0xE0, 0xE0, 0x03, 0xC0, 0x00, - 0x08, 0x0F, 0xC7, 0xFE, 0x07, 0xF0, 0x3F, 0x01, 0xF8, 0x0F, 0xC0, 0x7C, - 0x07, 0xE0, 0x3F, 0x01, 0xF8, 0x0F, 0x80, 0x7C, 0x07, 0xE0, 0x3E, 0x01, - 0xF0, 0x1F, 0x80, 0xFC, 0x07, 0xC0, 0x3E, 0x03, 0xF0, 0x1F, 0x80, 0xF8, - 0x0F, 0xC0, 0x7E, 0x03, 0xE0, 0x1F, 0x00, 0xF8, 0x8F, 0x8C, 0x7C, 0x43, - 0xE4, 0x1F, 0xE0, 0xFE, 0x03, 0xC0, 0x00, 0x00, 0x70, 0x78, 0x0F, 0x83, - 0xFE, 0x3F, 0x87, 0xF8, 0x1F, 0xCF, 0xF1, 0xFF, 0x03, 0xF1, 0x3E, 0x73, - 0xE0, 0x7E, 0x47, 0xD8, 0x7C, 0x0F, 0xD0, 0xFB, 0x1F, 0x81, 0xF4, 0x3E, - 0xC3, 0xF0, 0x3E, 0x87, 0xF0, 0x7C, 0x0F, 0xE0, 0xFE, 0x1F, 0x81, 0xF4, - 0x1F, 0x83, 0xF0, 0x3F, 0x07, 0xE0, 0x7C, 0x07, 0xE0, 0xFC, 0x1F, 0x81, - 0xF8, 0x1F, 0x83, 0xF0, 0x3F, 0x07, 0xE0, 0x7C, 0x07, 0xE0, 0xFC, 0x0F, - 0x80, 0xF8, 0x1F, 0x03, 0xF0, 0x3F, 0x07, 0xE0, 0x7E, 0x07, 0xE0, 0xFC, - 0x0F, 0x88, 0xF8, 0x1F, 0x81, 0xF3, 0x3F, 0x03, 0xE0, 0x3E, 0x47, 0xE0, - 0xFC, 0x07, 0xF0, 0xFC, 0x1F, 0x80, 0xFE, 0x18, 0x00, 0x00, 0x0F, 0x00, - 0x00, 0x70, 0xF8, 0x7F, 0xC3, 0xF8, 0x1F, 0x8F, 0xF0, 0x3F, 0x33, 0xE0, - 0x7C, 0x87, 0xC1, 0xF9, 0x0F, 0x83, 0xF4, 0x1F, 0x07, 0xD0, 0x3E, 0x0F, - 0xE0, 0xFC, 0x3F, 0x81, 0xF8, 0x7F, 0x03, 0xE0, 0xFC, 0x0F, 0xC1, 0xF8, - 0x1F, 0x87, 0xE0, 0x3E, 0x0F, 0xC0, 0xFC, 0x1F, 0x81, 0xF0, 0x3E, 0x03, - 0xE0, 0xFC, 0x0F, 0xC9, 0xF8, 0x1F, 0x33, 0xE0, 0x3E, 0x47, 0xC0, 0x7F, - 0x1F, 0x80, 0xFE, 0x38, 0x00, 0xF0, 0x00, 0x00, 0x3F, 0x00, 0x0E, 0x38, - 0x03, 0xC1, 0xC0, 0x78, 0x1E, 0x0F, 0x81, 0xF0, 0xF0, 0x1F, 0x1F, 0x01, - 0xF3, 0xE0, 0x1F, 0x3E, 0x03, 0xF7, 0xC0, 0x3F, 0x7C, 0x03, 0xF7, 0xC0, - 0x3E, 0xFC, 0x03, 0xEF, 0xC0, 0x7E, 0xF8, 0x07, 0xCF, 0x80, 0x7C, 0xF8, - 0x0F, 0x8F, 0x80, 0xF8, 0xF8, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x3C, 0x03, - 0xC7, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0x0F, 0x1F, 0x00, 0x3F, 0xE7, 0xF8, - 0x01, 0xF9, 0xFF, 0x00, 0x1F, 0x47, 0xF0, 0x07, 0xF0, 0x7E, 0x00, 0xFE, - 0x0F, 0xC0, 0x1F, 0x81, 0xF8, 0x03, 0xF0, 0x3F, 0x00, 0xFC, 0x07, 0xE0, - 0x1F, 0x81, 0xFC, 0x03, 0xE0, 0x3F, 0x00, 0x7C, 0x07, 0xE0, 0x1F, 0x81, - 0xFC, 0x03, 0xF0, 0x3F, 0x00, 0x7C, 0x07, 0xE0, 0x0F, 0x81, 0xF8, 0x03, - 0xF0, 0x3E, 0x00, 0x7E, 0x0F, 0xC0, 0x0F, 0x81, 0xF0, 0x01, 0xF0, 0x7C, - 0x00, 0x7F, 0x1F, 0x00, 0x0F, 0xFF, 0xC0, 0x01, 0xF3, 0xE0, 0x00, 0x3E, - 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x3E, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x3F, 0xFC, - 0x00, 0x00, 0x00, 0x3E, 0x00, 0x03, 0xF9, 0xF0, 0x1F, 0x1F, 0xC0, 0xF8, - 0x7E, 0x07, 0xC1, 0xF8, 0x3F, 0x07, 0xE0, 0xF8, 0x1F, 0x87, 0xE0, 0x7C, - 0x3F, 0x01, 0xF0, 0xFC, 0x0F, 0xC7, 0xE0, 0x3E, 0x1F, 0x80, 0xF8, 0x7E, - 0x07, 0xE3, 0xF0, 0x1F, 0x8F, 0xC0, 0x7C, 0x3F, 0x03, 0xF0, 0xFC, 0x0F, - 0xC3, 0xF0, 0x7E, 0x0F, 0xC3, 0xF8, 0x3F, 0x9B, 0xE0, 0x7F, 0xDF, 0x01, - 0xFE, 0x7C, 0x01, 0xF1, 0xF0, 0x00, 0x0F, 0xC0, 0x00, 0x3E, 0x00, 0x00, - 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x7C, 0x00, 0x03, 0xF8, - 0x00, 0x7F, 0xF8, 0x00, 0x00, 0x71, 0xE1, 0xFF, 0x3E, 0x07, 0xE7, 0xF0, - 0x7E, 0xFF, 0x07, 0xE9, 0xE0, 0x7D, 0x0E, 0x07, 0xD0, 0x00, 0xFE, 0x00, - 0x0F, 0xE0, 0x00, 0xFC, 0x00, 0x0F, 0xC0, 0x01, 0xFC, 0x00, 0x1F, 0x80, - 0x01, 0xF8, 0x00, 0x1F, 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x03, 0xF0, - 0x00, 0x7E, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, 0xC0, 0x00, 0x01, - 0xF1, 0x07, 0xFF, 0x0F, 0x0F, 0x0E, 0x07, 0x1E, 0x06, 0x1E, 0x06, 0x1F, - 0x02, 0x1F, 0x02, 0x1F, 0x80, 0x0F, 0xC0, 0x0F, 0xE0, 0x0F, 0xF0, 0x07, - 0xF8, 0x03, 0xF8, 0x01, 0xFC, 0x00, 0xFC, 0x40, 0x7C, 0x40, 0x7C, 0x60, - 0x3C, 0xE0, 0x38, 0xF0, 0x38, 0xF8, 0xF0, 0xDF, 0xC0, 0x00, 0x20, 0x03, - 0x00, 0x38, 0x03, 0x80, 0x3C, 0x03, 0xE0, 0x7F, 0x07, 0xFF, 0x3F, 0xF8, - 0x7C, 0x07, 0xE0, 0x3F, 0x01, 0xF0, 0x0F, 0x80, 0xFC, 0x07, 0xC0, 0x3E, - 0x03, 0xF0, 0x1F, 0x80, 0xF8, 0x07, 0xC0, 0x7E, 0x03, 0xF1, 0x1F, 0x08, - 0xF8, 0x87, 0xC8, 0x3F, 0xC1, 0xFC, 0x07, 0x80, 0x00, 0x00, 0x40, 0x00, - 0x1F, 0x03, 0xF7, 0xF8, 0x0F, 0x87, 0xE0, 0x3E, 0x1F, 0x81, 0xF8, 0x7E, - 0x07, 0xC1, 0xF0, 0x1F, 0x07, 0xC0, 0xFC, 0x3F, 0x03, 0xE0, 0xF8, 0x0F, - 0x83, 0xE0, 0x7E, 0x0F, 0x81, 0xF8, 0x7E, 0x0F, 0xC1, 0xF0, 0x3F, 0x07, - 0xC1, 0xFC, 0x1F, 0x07, 0xE0, 0xF8, 0x2F, 0x83, 0xE1, 0x3C, 0x6F, 0x8D, - 0xF1, 0x3E, 0x67, 0xC8, 0xFF, 0x1F, 0xE3, 0xF8, 0x7F, 0x07, 0xC0, 0xF0, - 0x00, 0x06, 0x07, 0x1F, 0x07, 0xBF, 0x83, 0xE7, 0xC1, 0xF3, 0xE0, 0xF9, - 0xF8, 0x3C, 0x7C, 0x0C, 0x3E, 0x06, 0x1F, 0x03, 0x0F, 0x83, 0x07, 0xC1, - 0x83, 0xE1, 0x81, 0xF1, 0x80, 0xF9, 0x80, 0x7C, 0xC0, 0x3E, 0xC0, 0x1F, - 0xC0, 0x0F, 0xC0, 0x07, 0xC0, 0x03, 0xC0, 0x01, 0xC0, 0x00, 0xC0, 0x00, - 0x40, 0x00, 0x06, 0x01, 0x81, 0xC7, 0xC0, 0x30, 0x7F, 0xF8, 0x0E, 0x0F, - 0x9F, 0x01, 0xC1, 0xF3, 0xE0, 0x78, 0x3E, 0x7C, 0x1F, 0x03, 0xCF, 0xC3, - 0xE0, 0x30, 0xF8, 0xFC, 0x06, 0x1F, 0x1F, 0xC0, 0x83, 0xE7, 0xF8, 0x30, - 0x7C, 0xFF, 0x04, 0x0F, 0xB7, 0xE1, 0x81, 0xF6, 0xFC, 0x60, 0x3F, 0x8F, - 0x98, 0x07, 0xE1, 0xF3, 0x00, 0xFC, 0x3E, 0xC0, 0x1F, 0x07, 0xF0, 0x03, - 0xE0, 0xFC, 0x00, 0x78, 0x1F, 0x80, 0x0F, 0x03, 0xE0, 0x01, 0xC0, 0x78, - 0x00, 0x30, 0x0E, 0x00, 0x06, 0x01, 0x80, 0x00, 0x00, 0xF0, 0x1E, 0x0F, - 0xF0, 0x3E, 0x01, 0xF8, 0x7F, 0x01, 0xF8, 0xFF, 0x00, 0xF9, 0x8E, 0x00, - 0xFB, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x7C, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xFE, 0x00, 0x01, 0xBF, 0x00, 0x01, - 0xBF, 0x08, 0x73, 0x1F, 0x18, 0xFF, 0x1F, 0x30, 0xFE, 0x1F, 0xE0, 0xFC, - 0x0F, 0xC0, 0x78, 0x07, 0x80, 0x00, 0x30, 0x1C, 0x0F, 0xF0, 0x7C, 0x07, - 0xE0, 0xF8, 0x0F, 0xC1, 0xF0, 0x0F, 0xC1, 0xE0, 0x1F, 0x81, 0xC0, 0x3F, - 0x03, 0x00, 0x3E, 0x06, 0x00, 0x7E, 0x08, 0x00, 0xFC, 0x30, 0x01, 0xF8, - 0x60, 0x01, 0xF1, 0x80, 0x03, 0xE3, 0x00, 0x07, 0xCC, 0x00, 0x0F, 0xD8, - 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0xC0, 0x00, 0x3F, 0x00, 0x00, 0x7E, 0x00, - 0x00, 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x07, 0x00, 0x00, - 0x0C, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x01, 0xC1, 0x80, 0x07, 0xE6, - 0x00, 0x0F, 0xF8, 0x00, 0x1F, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x07, - 0xFF, 0xE1, 0xFF, 0xF8, 0x3F, 0xFF, 0x07, 0xFF, 0xC0, 0x80, 0x70, 0x30, - 0x1C, 0x04, 0x07, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x0E, 0x00, 0x03, - 0x80, 0x00, 0x60, 0x00, 0x18, 0x00, 0x06, 0x00, 0x01, 0xC0, 0x00, 0x30, - 0x00, 0x0C, 0x00, 0x03, 0xE0, 0x00, 0xFE, 0x00, 0x1F, 0xE0, 0xC7, 0xFC, - 0x3D, 0xCF, 0xC7, 0x90, 0xF8, 0xF0, 0x07, 0x9C, 0x00, 0x3E, 0x00, 0x00, - 0x01, 0xF0, 0x00, 0xFC, 0x00, 0x1F, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, - 0x07, 0xC0, 0x00, 0x78, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, 0x80, - 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, 0xE0, - 0x00, 0x3E, 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0xC0, - 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, - 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x03, - 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, - 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7E, 0x00, - 0x03, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, - 0x3E, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, - 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x7C, 0x00, 0x07, 0xC0, 0x00, 0x7C, - 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, 0x0F, - 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, - 0xF8, 0x00, 0x03, 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x03, 0xE0, 0x00, - 0x7C, 0x00, 0x07, 0xC0, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x00, 0xF8, 0x00, - 0x0F, 0x80, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, - 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x07, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0x80, - 0x03, 0xF0, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x03, 0xFF, 0x01, 0x3F, - 0xFE, 0x1D, 0xFF, 0xFF, 0xFE, 0x0F, 0xFF, 0x00, 0x1F, 0xF0, 0x00, 0x1F, - 0x00}; - -const GFXglyph FreeSerifBoldItalic24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 15, 33, 18, 3, -31}, // 0x21 '!' - {62, 19, 13, 26, 6, -31}, // 0x22 '"' - {93, 27, 33, 23, -2, -32}, // 0x23 '#' - {205, 24, 39, 24, -1, -33}, // 0x24 '$' - {322, 35, 32, 39, 2, -30}, // 0x25 '%' - {462, 33, 33, 37, 0, -31}, // 0x26 '&' - {599, 7, 13, 13, 6, -31}, // 0x27 ''' - {611, 14, 41, 16, 1, -31}, // 0x28 '(' - {683, 14, 41, 16, -2, -31}, // 0x29 ')' - {755, 19, 20, 23, 3, -31}, // 0x2A '*' - {803, 22, 23, 27, 2, -22}, // 0x2B '+' - {867, 10, 15, 12, -3, -5}, // 0x2C ',' - {886, 12, 5, 16, 0, -12}, // 0x2D '-' - {894, 8, 7, 12, 0, -5}, // 0x2E '.' - {901, 19, 33, 16, 0, -31}, // 0x2F '/' - {980, 22, 33, 23, 1, -31}, // 0x30 '0' - {1071, 20, 32, 23, 0, -31}, // 0x31 '1' - {1151, 22, 32, 23, 1, -31}, // 0x32 '2' - {1239, 22, 33, 24, 0, -31}, // 0x33 '3' - {1330, 25, 32, 23, 0, -31}, // 0x34 '4' - {1430, 24, 32, 24, 0, -30}, // 0x35 '5' - {1526, 23, 32, 24, 1, -30}, // 0x36 '6' - {1618, 23, 31, 23, 3, -30}, // 0x37 '7' - {1708, 21, 33, 23, 1, -31}, // 0x38 '8' - {1795, 23, 33, 23, 0, -31}, // 0x39 '9' - {1890, 13, 22, 12, 0, -20}, // 0x3A ':' - {1926, 15, 30, 12, -2, -20}, // 0x3B ';' - {1983, 24, 25, 27, 1, -23}, // 0x3C '<' - {2058, 24, 14, 27, 3, -18}, // 0x3D '=' - {2100, 24, 25, 27, 3, -23}, // 0x3E '>' - {2175, 18, 33, 24, 4, -31}, // 0x3F '?' - {2250, 33, 33, 39, 3, -31}, // 0x40 '@' - {2387, 31, 32, 33, 0, -31}, // 0x41 'A' - {2511, 31, 31, 30, 0, -30}, // 0x42 'B' - {2632, 29, 33, 29, 2, -31}, // 0x43 'C' - {2752, 35, 31, 34, 0, -30}, // 0x44 'D' - {2888, 32, 31, 30, 0, -30}, // 0x45 'E' - {3012, 31, 31, 29, 0, -30}, // 0x46 'F' - {3133, 32, 33, 33, 2, -31}, // 0x47 'G' - {3265, 39, 31, 35, 0, -30}, // 0x48 'H' - {3417, 21, 31, 18, 0, -30}, // 0x49 'I' - {3499, 27, 36, 23, 0, -30}, // 0x4A 'J' - {3621, 34, 31, 31, 0, -30}, // 0x4B 'K' - {3753, 29, 31, 29, 0, -30}, // 0x4C 'L' - {3866, 44, 32, 41, 0, -30}, // 0x4D 'M' - {4042, 37, 32, 33, 0, -30}, // 0x4E 'N' - {4190, 31, 33, 32, 2, -31}, // 0x4F 'O' - {4318, 31, 31, 28, 0, -30}, // 0x50 'P' - {4439, 31, 42, 32, 2, -31}, // 0x51 'Q' - {4602, 32, 31, 31, 0, -30}, // 0x52 'R' - {4726, 24, 33, 24, 0, -31}, // 0x53 'S' - {4825, 27, 31, 28, 4, -30}, // 0x54 'T' - {4930, 32, 32, 34, 5, -30}, // 0x55 'U' - {5058, 31, 32, 33, 6, -30}, // 0x56 'V' - {5182, 41, 32, 44, 6, -30}, // 0x57 'W' - {5346, 34, 31, 33, 0, -30}, // 0x58 'X' - {5478, 28, 31, 30, 6, -30}, // 0x59 'Y' - {5587, 28, 31, 26, 0, -30}, // 0x5A 'Z' - {5696, 19, 38, 16, -2, -30}, // 0x5B '[' - {5787, 13, 33, 19, 6, -31}, // 0x5C '\' - {5841, 19, 38, 16, -3, -30}, // 0x5D ']' - {5932, 21, 17, 27, 3, -30}, // 0x5E '^' - {5977, 24, 3, 23, 0, 5}, // 0x5F '_' - {5986, 10, 9, 16, 4, -32}, // 0x60 '`' - {5998, 22, 23, 24, 1, -21}, // 0x61 'a' - {6062, 22, 33, 23, 1, -31}, // 0x62 'b' - {6153, 18, 23, 20, 1, -21}, // 0x63 'c' - {6205, 25, 34, 24, 1, -32}, // 0x64 'd' - {6312, 18, 23, 20, 1, -21}, // 0x65 'e' - {6364, 28, 41, 23, -4, -31}, // 0x66 'f' - {6508, 25, 31, 23, -1, -21}, // 0x67 'g' - {6605, 23, 34, 26, 1, -32}, // 0x68 'h' - {6703, 12, 33, 14, 2, -31}, // 0x69 'i' - {6753, 22, 42, 16, -4, -31}, // 0x6A 'j' - {6869, 24, 34, 24, 1, -32}, // 0x6B 'k' - {6971, 13, 34, 14, 2, -32}, // 0x6C 'l' - {7027, 35, 23, 36, 0, -21}, // 0x6D 'm' - {7128, 23, 23, 25, 0, -21}, // 0x6E 'n' - {7195, 20, 23, 22, 1, -21}, // 0x6F 'o' - {7253, 27, 31, 23, -4, -21}, // 0x70 'p' - {7358, 22, 31, 23, 1, -21}, // 0x71 'q' - {7444, 20, 22, 19, 0, -21}, // 0x72 'r' - {7499, 16, 23, 17, 0, -21}, // 0x73 's' - {7545, 13, 29, 13, 2, -27}, // 0x74 't' - {7593, 22, 23, 25, 2, -21}, // 0x75 'u' - {7657, 17, 23, 21, 3, -21}, // 0x76 'v' - {7706, 27, 23, 31, 3, -21}, // 0x77 'w' - {7784, 24, 23, 22, -1, -21}, // 0x78 'x' - {7853, 23, 31, 20, -3, -21}, // 0x79 'y' - {7943, 19, 25, 19, 0, -20}, // 0x7A 'z' - {8003, 20, 41, 16, 0, -31}, // 0x7B '{' - {8106, 4, 33, 13, 5, -31}, // 0x7C '|' - {8123, 20, 41, 16, -6, -31}, // 0x7D '}' - {8226, 21, 7, 27, 3, -14}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic24pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic24pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 8917 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h deleted file mode 100644 index b5d9a55..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifBoldItalic9pt7b.h +++ /dev/null @@ -1,217 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifBoldItalic9pt7bBitmaps[] PROGMEM = { - 0x0C, 0x31, 0xC6, 0x18, 0x41, 0x08, 0x20, 0x0E, 0x38, 0xE0, 0xCF, 0x38, - 0xA2, 0x88, 0x02, 0x40, 0xC8, 0x13, 0x06, 0x43, 0xFC, 0x32, 0x06, 0x40, - 0x98, 0x7F, 0x84, 0xC0, 0x90, 0x32, 0x04, 0xC0, 0x01, 0x01, 0xF0, 0x4B, - 0x99, 0x33, 0x24, 0x78, 0x07, 0x80, 0x38, 0x0B, 0x89, 0x31, 0x26, 0x64, - 0xC7, 0x30, 0x3C, 0x04, 0x00, 0x38, 0x41, 0x9F, 0x06, 0x48, 0x31, 0x60, - 0xCD, 0x03, 0x2C, 0x07, 0x27, 0x81, 0x39, 0x05, 0xC4, 0x26, 0x10, 0x98, - 0x84, 0x66, 0x10, 0xE0, 0x03, 0x80, 0x22, 0x03, 0x10, 0x19, 0x00, 0xF0, - 0x0F, 0x3C, 0xF8, 0xCC, 0xC4, 0xE7, 0x47, 0x3E, 0x38, 0xE1, 0xE7, 0x97, - 0xCF, 0x00, 0xFA, 0x80, 0x08, 0x88, 0x84, 0x62, 0x10, 0x84, 0x21, 0x08, - 0x41, 0x00, 0x20, 0x84, 0x10, 0x84, 0x21, 0x08, 0xC6, 0x23, 0x11, 0x00, - 0x18, 0x18, 0xD6, 0x38, 0x18, 0xF7, 0x18, 0x18, 0x08, 0x04, 0x02, 0x01, - 0x0F, 0xF8, 0x40, 0x20, 0x10, 0x08, 0x00, 0x6D, 0x95, 0x00, 0xFF, 0xC0, - 0xFF, 0x80, 0x06, 0x0C, 0x30, 0x60, 0x83, 0x04, 0x18, 0x20, 0xC1, 0x06, - 0x00, 0x0F, 0x0C, 0x8C, 0x6E, 0x37, 0x1B, 0x1F, 0x8F, 0xC7, 0xC7, 0x63, - 0xB1, 0x89, 0x83, 0x80, 0x06, 0x1E, 0x0E, 0x0E, 0x0C, 0x0C, 0x1C, 0x18, - 0x18, 0x18, 0x38, 0x38, 0xFC, 0x1F, 0x13, 0xD0, 0xE0, 0x70, 0x38, 0x38, - 0x18, 0x18, 0x18, 0x08, 0x08, 0x4F, 0xCF, 0xE0, 0x1F, 0x11, 0xC0, 0xE0, - 0x60, 0xC1, 0xF0, 0x38, 0x0C, 0x06, 0x03, 0x01, 0x19, 0x8F, 0x00, 0x00, - 0x80, 0xC0, 0xE1, 0xE0, 0xB0, 0x98, 0x9C, 0x8C, 0xFF, 0x07, 0x03, 0x01, - 0x80, 0x0F, 0x88, 0x08, 0x07, 0x83, 0xE0, 0x78, 0x1C, 0x06, 0x03, 0x01, - 0x80, 0x9C, 0x87, 0x80, 0x03, 0x87, 0x07, 0x07, 0x07, 0x03, 0xE3, 0x99, - 0xCC, 0xC6, 0x63, 0x33, 0x89, 0x87, 0x80, 0x3F, 0xBF, 0x90, 0x80, 0xC0, - 0x40, 0x60, 0x20, 0x30, 0x30, 0x10, 0x18, 0x08, 0x00, 0x1E, 0x13, 0x31, - 0x31, 0x3A, 0x1C, 0x1C, 0x6E, 0xC6, 0xC6, 0xC6, 0x44, 0x38, 0x0E, 0x1C, - 0x8C, 0x6C, 0x36, 0x3B, 0x1D, 0x8E, 0x7E, 0x0E, 0x07, 0x07, 0x0E, 0x0C, - 0x00, 0x39, 0xCE, 0x00, 0x03, 0x9C, 0xE0, 0x39, 0xCE, 0x00, 0x01, 0x8C, - 0x22, 0x20, 0x00, 0x01, 0xC3, 0xC7, 0x8E, 0x06, 0x01, 0xE0, 0x3C, 0x07, - 0x80, 0x40, 0xFF, 0x80, 0x00, 0x00, 0x0F, 0xF8, 0x00, 0x60, 0x1E, 0x03, - 0xC0, 0x78, 0x1C, 0x3C, 0x78, 0xF0, 0x40, 0x00, 0x1C, 0x27, 0x37, 0x07, - 0x0E, 0x1C, 0x30, 0x60, 0x40, 0x00, 0xE0, 0xE0, 0xE0, 0x0F, 0x80, 0xC3, - 0x08, 0x04, 0xC3, 0x3C, 0x24, 0xE2, 0x27, 0x33, 0x39, 0x11, 0xC9, 0x93, - 0x77, 0x18, 0x00, 0x70, 0x40, 0xFC, 0x00, 0x00, 0x80, 0x18, 0x01, 0x80, - 0x38, 0x05, 0x80, 0x5C, 0x09, 0xC1, 0x1C, 0x1F, 0xC2, 0x0C, 0x20, 0xC4, - 0x0E, 0xF3, 0xF0, 0x3F, 0xE0, 0xC7, 0x0C, 0x71, 0xC7, 0x1C, 0xE1, 0xF0, - 0x39, 0xC3, 0x8E, 0x38, 0xE3, 0x0E, 0x71, 0xE7, 0x1C, 0xFF, 0x00, 0x07, - 0xD1, 0xC7, 0x38, 0x27, 0x02, 0x70, 0x0F, 0x00, 0xE0, 0x0E, 0x00, 0xE0, - 0x0E, 0x00, 0x60, 0x87, 0x18, 0x1E, 0x00, 0x3F, 0xE0, 0x30, 0xE0, 0xC1, - 0x87, 0x07, 0x1C, 0x1C, 0x60, 0x73, 0x81, 0xCE, 0x07, 0x38, 0x38, 0xC0, - 0xE7, 0x07, 0x1C, 0x78, 0xFF, 0x80, 0x1F, 0xF8, 0x61, 0xC3, 0x04, 0x38, - 0x81, 0xCC, 0x0F, 0xE0, 0xE2, 0x07, 0x10, 0x38, 0x81, 0x81, 0x1C, 0x18, - 0xE3, 0x8F, 0xFC, 0x00, 0x3F, 0xF8, 0x61, 0xC3, 0x04, 0x38, 0x81, 0xCC, - 0x0F, 0xE0, 0xE2, 0x07, 0x10, 0x38, 0x81, 0x80, 0x1C, 0x00, 0xE0, 0x0F, - 0x80, 0x00, 0x07, 0x91, 0xC7, 0x38, 0x27, 0x00, 0x70, 0x0F, 0x00, 0xE1, - 0xFE, 0x0E, 0xE0, 0xCE, 0x0C, 0x60, 0xC7, 0x1C, 0x1F, 0x00, 0x1F, 0x7E, - 0x1C, 0x38, 0x30, 0x60, 0xE1, 0xC1, 0xC3, 0x83, 0x06, 0x0F, 0xFC, 0x1C, - 0x38, 0x38, 0x70, 0x60, 0xC1, 0xC3, 0x83, 0x87, 0x0F, 0x9F, 0x00, 0x3F, - 0x0C, 0x0C, 0x1C, 0x1C, 0x18, 0x38, 0x38, 0x38, 0x30, 0x70, 0x70, 0xF8, - 0x07, 0xC0, 0xE0, 0x38, 0x0C, 0x07, 0x01, 0xC0, 0x70, 0x18, 0x0E, 0x03, - 0x80, 0xC3, 0x30, 0xDC, 0x1E, 0x00, 0x1F, 0x78, 0x71, 0x83, 0x18, 0x39, - 0x81, 0xD0, 0x0D, 0x00, 0xFC, 0x07, 0x60, 0x3B, 0x81, 0x8C, 0x1C, 0x70, - 0xE1, 0x8F, 0xBE, 0x00, 0x1F, 0x00, 0xC0, 0x0C, 0x01, 0xC0, 0x1C, 0x01, - 0x80, 0x38, 0x03, 0x80, 0x38, 0x03, 0x01, 0x70, 0x37, 0x0E, 0xFF, 0xE0, - 0x1E, 0x07, 0x87, 0x07, 0x83, 0x83, 0x82, 0xC3, 0xC1, 0x62, 0xE0, 0xB1, - 0x70, 0x99, 0x30, 0x4D, 0xB8, 0x27, 0x9C, 0x13, 0x8C, 0x11, 0xC6, 0x0C, - 0xC7, 0x0F, 0x47, 0xC0, 0x3C, 0x3C, 0x38, 0x20, 0xE0, 0x85, 0xC4, 0x13, - 0x10, 0x4E, 0x42, 0x3A, 0x08, 0x78, 0x21, 0xE0, 0x83, 0x84, 0x0C, 0x18, - 0x10, 0x00, 0x40, 0x07, 0xC1, 0xCE, 0x38, 0x73, 0x87, 0x70, 0x77, 0x07, - 0xF0, 0xFE, 0x0E, 0xE0, 0xEE, 0x1C, 0xE1, 0xC6, 0x38, 0x3E, 0x00, 0x3F, - 0xC0, 0xC7, 0x0C, 0x71, 0xC7, 0x1C, 0x71, 0x8E, 0x3F, 0xC3, 0x80, 0x30, - 0x03, 0x00, 0x70, 0x07, 0x00, 0xF8, 0x00, 0x07, 0xC0, 0xCE, 0x38, 0x73, - 0x87, 0x70, 0x77, 0x07, 0xF0, 0x7E, 0x0E, 0xE0, 0xEE, 0x0C, 0xE1, 0xC6, - 0x38, 0x36, 0x01, 0x80, 0x3C, 0x2D, 0xFC, 0x3F, 0xC0, 0xE7, 0x0C, 0x71, - 0xC7, 0x1C, 0x71, 0x8E, 0x3F, 0x83, 0xB8, 0x3B, 0x83, 0x3C, 0x71, 0xC7, - 0x1C, 0xF9, 0xF0, 0x0C, 0x89, 0x8C, 0x46, 0x23, 0x80, 0xE0, 0x78, 0x0E, - 0x03, 0x21, 0x90, 0xCC, 0xC9, 0xC0, 0x7F, 0xE9, 0xDF, 0x31, 0x4E, 0x21, - 0xC0, 0x38, 0x06, 0x01, 0xC0, 0x38, 0x06, 0x00, 0xC0, 0x38, 0x0F, 0xC0, - 0x7C, 0xF3, 0x82, 0x30, 0x27, 0x04, 0x70, 0x46, 0x04, 0xE0, 0x4E, 0x08, - 0xE0, 0x8E, 0x08, 0xE1, 0x0F, 0x30, 0x3C, 0x00, 0xFC, 0x73, 0x82, 0x38, - 0x23, 0x84, 0x38, 0x83, 0x90, 0x39, 0x01, 0xA0, 0x1C, 0x01, 0xC0, 0x18, - 0x01, 0x00, 0xF9, 0xF7, 0x30, 0xE2, 0x30, 0xC2, 0x38, 0xC4, 0x3B, 0xC4, - 0x3A, 0xE8, 0x3C, 0xE8, 0x3C, 0xF0, 0x18, 0xF0, 0x18, 0x60, 0x10, 0x60, - 0x10, 0x40, 0x3F, 0x78, 0x61, 0x83, 0x98, 0x1D, 0x00, 0x70, 0x03, 0x80, - 0x1C, 0x01, 0x60, 0x0B, 0x80, 0x9C, 0x08, 0x60, 0xC3, 0x8F, 0x7E, 0x00, - 0xF9, 0xE6, 0x18, 0xC2, 0x1C, 0x81, 0xA0, 0x34, 0x07, 0x00, 0xC0, 0x18, - 0x07, 0x00, 0xE0, 0x1C, 0x0F, 0xC0, 0x3F, 0xE6, 0x19, 0x87, 0x21, 0xC0, - 0x30, 0x0E, 0x03, 0x80, 0x60, 0x1C, 0x07, 0x05, 0xC1, 0x38, 0xEF, 0xFC, - 0x0E, 0x08, 0x18, 0x18, 0x18, 0x10, 0x30, 0x30, 0x30, 0x20, 0x60, 0x60, - 0x60, 0x40, 0xF0, 0xC6, 0x10, 0xC6, 0x10, 0x86, 0x30, 0x86, 0x30, 0x1E, - 0x0C, 0x18, 0x20, 0xC1, 0x83, 0x04, 0x18, 0x30, 0x60, 0x83, 0x06, 0x3C, - 0x00, 0x18, 0x1C, 0x34, 0x26, 0x66, 0x43, 0xC3, 0xFF, 0x80, 0xC6, 0x30, - 0x0D, 0x9D, 0x8C, 0xCC, 0x6E, 0x26, 0x33, 0x19, 0xBE, 0x66, 0x00, 0x00, - 0x78, 0x18, 0x30, 0x30, 0x3E, 0x73, 0x63, 0x63, 0x63, 0xC6, 0xC6, 0xCC, - 0x70, 0x0F, 0x3B, 0x70, 0x70, 0xE0, 0xE0, 0xE2, 0xE4, 0x78, 0x00, 0x00, - 0xF0, 0x1C, 0x06, 0x01, 0x83, 0xE3, 0x30, 0xCC, 0x63, 0x19, 0xCC, 0x63, - 0x38, 0xCF, 0x1D, 0x80, 0x0E, 0x75, 0xCB, 0xBE, 0xDE, 0x38, 0x72, 0x78, - 0x00, 0xE0, 0x34, 0x0C, 0x01, 0x80, 0x30, 0x1F, 0x01, 0x80, 0x30, 0x06, - 0x01, 0xC0, 0x30, 0x06, 0x00, 0xC0, 0x30, 0x06, 0x04, 0x80, 0xE0, 0x00, - 0x1C, 0x19, 0xD8, 0xCC, 0x66, 0x60, 0xE1, 0x80, 0xF0, 0x7E, 0x43, 0x21, - 0x8F, 0x00, 0x00, 0x1E, 0x07, 0x03, 0x01, 0x80, 0xD8, 0xFC, 0x76, 0x33, - 0x19, 0x99, 0xCC, 0xD6, 0x77, 0x30, 0x39, 0xC0, 0x0F, 0x31, 0x8C, 0xC6, - 0x31, 0xAE, 0x00, 0x03, 0x81, 0xC0, 0x00, 0x00, 0xE0, 0x30, 0x18, 0x18, - 0x0C, 0x06, 0x03, 0x03, 0x01, 0x80, 0xC2, 0xC1, 0xC0, 0x00, 0x0F, 0x00, - 0xC0, 0x60, 0x18, 0x06, 0xF3, 0x90, 0xC8, 0x34, 0x0F, 0x06, 0xC1, 0x98, - 0x66, 0xB9, 0xC0, 0x03, 0xCC, 0x63, 0x39, 0x8C, 0x66, 0x31, 0x8E, 0x70, - 0x7B, 0x99, 0xAF, 0xCE, 0x66, 0x63, 0x67, 0x33, 0x31, 0x99, 0x8C, 0xCC, - 0xE7, 0xC6, 0x30, 0x73, 0x7F, 0x73, 0x73, 0x63, 0x67, 0xE6, 0xC7, 0xC6, - 0x1E, 0x33, 0x63, 0x63, 0xC3, 0xC6, 0xC6, 0xCC, 0x78, 0x1D, 0xC3, 0xB1, - 0xCC, 0x63, 0x19, 0xCE, 0x63, 0x18, 0xCC, 0x3E, 0x1C, 0x06, 0x03, 0xE0, - 0x0D, 0x99, 0x8C, 0xCC, 0x6E, 0x76, 0x33, 0x19, 0x9C, 0x7C, 0x06, 0x07, - 0x07, 0xC0, 0x76, 0x3A, 0x30, 0x70, 0x60, 0x60, 0x60, 0xE0, 0x3D, 0x14, - 0x58, 0x38, 0x60, 0xA2, 0xF0, 0x08, 0xCC, 0xF6, 0x31, 0x98, 0xC6, 0x35, - 0xC0, 0xE3, 0x63, 0x66, 0x66, 0x66, 0xCC, 0xCC, 0xFE, 0xEC, 0xE6, 0xCD, - 0x8B, 0x26, 0x8E, 0x18, 0x20, 0xE4, 0xD9, 0x36, 0xE5, 0xDA, 0x77, 0x19, - 0xC6, 0x61, 0x10, 0x39, 0xC7, 0xB0, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0xE1, - 0x5A, 0x67, 0x00, 0x39, 0x8C, 0xC3, 0x21, 0xA0, 0xD0, 0x68, 0x38, 0x0C, - 0x04, 0x04, 0x14, 0x0C, 0x00, 0x3E, 0x46, 0x0C, 0x08, 0x10, 0x20, 0x70, - 0x1A, 0x0E, 0x03, 0x0E, 0x0C, 0x0C, 0x08, 0x18, 0x18, 0x10, 0x60, 0x30, - 0x30, 0x30, 0x60, 0x60, 0x60, 0x30, 0xFF, 0xF0, 0x0C, 0x06, 0x06, 0x06, - 0x04, 0x0C, 0x0C, 0x0C, 0x06, 0x18, 0x18, 0x18, 0x30, 0x30, 0x30, 0xE0, - 0x71, 0x8F}; - -const GFXglyph FreeSerifBoldItalic9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 6, 13, 7, 1, -11}, // 0x21 '!' - {10, 6, 5, 10, 3, -11}, // 0x22 '"' - {14, 11, 13, 9, -1, -12}, // 0x23 '#' - {32, 11, 15, 9, -1, -12}, // 0x24 '$' - {53, 14, 13, 15, 1, -11}, // 0x25 '%' - {76, 13, 13, 14, 0, -11}, // 0x26 '&' - {98, 2, 5, 5, 3, -11}, // 0x27 ''' - {100, 5, 16, 6, 1, -11}, // 0x28 '(' - {110, 5, 16, 6, -1, -11}, // 0x29 ')' - {120, 8, 8, 9, 1, -11}, // 0x2A '*' - {128, 9, 9, 10, 0, -8}, // 0x2B '+' - {139, 3, 6, 5, -1, -2}, // 0x2C ',' - {142, 5, 2, 6, 0, -4}, // 0x2D '-' - {144, 3, 3, 4, 0, -1}, // 0x2E '.' - {146, 7, 12, 6, 0, -11}, // 0x2F '/' - {157, 9, 13, 9, 0, -11}, // 0x30 '0' - {172, 8, 13, 9, 0, -11}, // 0x31 '1' - {185, 9, 13, 9, 0, -11}, // 0x32 '2' - {200, 9, 13, 9, 0, -11}, // 0x33 '3' - {215, 9, 12, 9, 0, -11}, // 0x34 '4' - {229, 9, 13, 9, 0, -11}, // 0x35 '5' - {244, 9, 13, 9, 1, -11}, // 0x36 '6' - {259, 9, 12, 9, 1, -11}, // 0x37 '7' - {273, 8, 13, 9, 0, -11}, // 0x38 '8' - {286, 9, 13, 9, 0, -11}, // 0x39 '9' - {301, 5, 9, 5, 0, -7}, // 0x3A ':' - {307, 5, 11, 5, 0, -7}, // 0x3B ';' - {314, 9, 10, 10, 1, -9}, // 0x3C '<' - {326, 9, 5, 10, 1, -6}, // 0x3D '=' - {332, 9, 10, 10, 1, -9}, // 0x3E '>' - {344, 8, 13, 9, 1, -11}, // 0x3F '?' - {357, 13, 13, 15, 1, -12}, // 0x40 '@' - {379, 12, 13, 13, 0, -11}, // 0x41 'A' - {399, 12, 13, 12, 0, -11}, // 0x42 'B' - {419, 12, 13, 11, 1, -11}, // 0x43 'C' - {439, 14, 13, 13, 0, -11}, // 0x44 'D' - {462, 13, 13, 11, 0, -11}, // 0x45 'E' - {484, 13, 13, 11, 0, -11}, // 0x46 'F' - {506, 12, 13, 13, 1, -11}, // 0x47 'G' - {526, 15, 13, 14, 0, -11}, // 0x48 'H' - {551, 8, 13, 7, 0, -11}, // 0x49 'I' - {564, 10, 14, 9, 0, -11}, // 0x4A 'J' - {582, 13, 13, 12, 0, -11}, // 0x4B 'K' - {604, 12, 13, 11, 0, -11}, // 0x4C 'L' - {624, 17, 13, 16, 0, -11}, // 0x4D 'M' - {652, 14, 13, 13, 0, -11}, // 0x4E 'N' - {675, 12, 13, 12, 1, -11}, // 0x4F 'O' - {695, 12, 13, 11, 0, -11}, // 0x50 'P' - {715, 12, 16, 12, 1, -11}, // 0x51 'Q' - {739, 12, 13, 12, 0, -11}, // 0x52 'R' - {759, 9, 13, 9, 0, -11}, // 0x53 'S' - {774, 11, 13, 11, 2, -11}, // 0x54 'T' - {792, 12, 13, 13, 2, -11}, // 0x55 'U' - {812, 12, 12, 13, 2, -11}, // 0x56 'V' - {830, 16, 12, 17, 2, -11}, // 0x57 'W' - {854, 13, 13, 13, 0, -11}, // 0x58 'X' - {876, 11, 13, 11, 2, -11}, // 0x59 'Y' - {894, 11, 13, 10, 0, -11}, // 0x5A 'Z' - {912, 8, 15, 6, -1, -11}, // 0x5B '[' - {927, 5, 12, 7, 2, -11}, // 0x5C '\' - {935, 7, 15, 6, -1, -11}, // 0x5D ']' - {949, 8, 7, 10, 1, -11}, // 0x5E '^' - {956, 9, 1, 9, 0, 3}, // 0x5F '_' - {958, 4, 3, 6, 2, -11}, // 0x60 '`' - {960, 9, 9, 9, 0, -7}, // 0x61 'a' - {971, 8, 14, 9, 0, -12}, // 0x62 'b' - {985, 8, 9, 8, 0, -7}, // 0x63 'c' - {994, 10, 14, 9, 0, -12}, // 0x64 'd' - {1012, 7, 9, 7, 0, -7}, // 0x65 'e' - {1020, 11, 17, 9, -2, -12}, // 0x66 'f' - {1044, 9, 12, 9, 0, -7}, // 0x67 'g' - {1058, 9, 14, 10, 0, -12}, // 0x68 'h' - {1074, 5, 13, 5, 1, -11}, // 0x69 'i' - {1083, 9, 16, 6, -1, -11}, // 0x6A 'j' - {1101, 10, 14, 9, 0, -12}, // 0x6B 'k' - {1119, 5, 14, 5, 1, -12}, // 0x6C 'l' - {1128, 13, 9, 14, 0, -7}, // 0x6D 'm' - {1143, 8, 9, 9, 0, -7}, // 0x6E 'n' - {1152, 8, 9, 9, 0, -7}, // 0x6F 'o' - {1161, 10, 12, 9, -2, -7}, // 0x70 'p' - {1176, 9, 12, 9, 0, -7}, // 0x71 'q' - {1190, 8, 8, 7, 0, -7}, // 0x72 'r' - {1198, 6, 9, 6, 0, -7}, // 0x73 's' - {1205, 5, 12, 5, 1, -10}, // 0x74 't' - {1213, 8, 9, 10, 1, -7}, // 0x75 'u' - {1222, 7, 8, 8, 1, -7}, // 0x76 'v' - {1229, 10, 8, 12, 1, -7}, // 0x77 'w' - {1239, 10, 9, 9, -1, -7}, // 0x78 'x' - {1251, 9, 12, 8, -1, -7}, // 0x79 'y' - {1265, 8, 9, 7, 0, -7}, // 0x7A 'z' - {1274, 8, 16, 6, 0, -12}, // 0x7B '{' - {1290, 1, 12, 5, 2, -11}, // 0x7C '|' - {1292, 8, 16, 6, -2, -12}, // 0x7D '}' - {1308, 8, 2, 10, 1, -4}}; // 0x7E '~' - -const GFXfont FreeSerifBoldItalic9pt7b PROGMEM = { - (uint8_t *)FreeSerifBoldItalic9pt7bBitmaps, - (GFXglyph *)FreeSerifBoldItalic9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 1982 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h deleted file mode 100644 index 85de005..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic12pt7b.h +++ /dev/null @@ -1,273 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic12pt7bBitmaps[] PROGMEM = { - 0x0C, 0x31, 0xC6, 0x18, 0x43, 0x0C, 0x20, 0x84, 0x10, 0x03, 0x0C, 0x30, - 0x66, 0xCD, 0x12, 0x24, 0x51, 0x00, 0x03, 0x10, 0x11, 0x80, 0x8C, 0x0C, - 0x40, 0x46, 0x1F, 0xFC, 0x21, 0x01, 0x18, 0x18, 0x80, 0x84, 0x3F, 0xF8, - 0x62, 0x02, 0x30, 0x31, 0x01, 0x08, 0x08, 0xC0, 0x00, 0x40, 0x08, 0x07, - 0xC0, 0xCA, 0x18, 0xA1, 0x92, 0x19, 0x01, 0xD0, 0x0F, 0x00, 0x78, 0x03, - 0xC0, 0x2E, 0x02, 0x64, 0x46, 0x44, 0x64, 0x46, 0x64, 0xC1, 0xF0, 0x08, - 0x00, 0x80, 0x00, 0x08, 0x0F, 0x0C, 0x0C, 0x7C, 0x0C, 0x22, 0x06, 0x12, - 0x06, 0x09, 0x03, 0x09, 0x01, 0x84, 0x80, 0xC4, 0x8F, 0x3C, 0x4C, 0x40, - 0x4C, 0x20, 0x4E, 0x10, 0x26, 0x08, 0x23, 0x08, 0x11, 0x84, 0x10, 0xC4, - 0x08, 0x3C, 0x00, 0x00, 0xE0, 0x02, 0x60, 0x0C, 0xC0, 0x19, 0x80, 0x36, - 0x00, 0x70, 0x00, 0xC0, 0x07, 0x9F, 0x33, 0x08, 0xC3, 0x13, 0x06, 0x46, - 0x0D, 0x0C, 0x0C, 0x18, 0x1C, 0x1C, 0x5C, 0x9F, 0x1E, 0xFA, 0xA0, 0x02, - 0x08, 0x20, 0xC3, 0x06, 0x18, 0x30, 0xE1, 0x83, 0x06, 0x0C, 0x18, 0x30, - 0x60, 0x40, 0x80, 0x81, 0x00, 0x08, 0x10, 0x10, 0x20, 0x40, 0xC1, 0x83, - 0x06, 0x0C, 0x18, 0x70, 0xC1, 0x83, 0x0C, 0x10, 0x41, 0x04, 0x00, 0x18, - 0x18, 0x18, 0x93, 0x74, 0x38, 0xD7, 0x93, 0x18, 0x18, 0x04, 0x00, 0x80, - 0x10, 0x02, 0x00, 0x41, 0xFF, 0xC1, 0x00, 0x20, 0x04, 0x00, 0x80, 0x10, - 0x00, 0x6C, 0x95, 0x00, 0xF8, 0xFC, 0x00, 0x40, 0x18, 0x02, 0x00, 0xC0, - 0x30, 0x06, 0x01, 0x80, 0x20, 0x0C, 0x01, 0x00, 0x60, 0x18, 0x03, 0x00, - 0xC0, 0x10, 0x06, 0x00, 0x07, 0x81, 0x98, 0x61, 0x18, 0x33, 0x06, 0xC0, - 0xD8, 0x1B, 0x03, 0xE0, 0xF8, 0x1F, 0x03, 0x60, 0x6C, 0x19, 0x83, 0x10, - 0xC3, 0x30, 0x3C, 0x00, 0x01, 0x87, 0xC0, 0xC0, 0x60, 0x30, 0x18, 0x18, - 0x0C, 0x06, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x60, 0x30, 0xFE, 0x00, - 0x0F, 0x0C, 0x64, 0x0C, 0x03, 0x00, 0xC0, 0x20, 0x18, 0x0C, 0x02, 0x01, - 0x00, 0x80, 0x40, 0x20, 0x10, 0x2F, 0xF0, 0x07, 0x86, 0x30, 0x0C, 0x03, - 0x01, 0x81, 0x81, 0xF0, 0x1E, 0x03, 0x80, 0x60, 0x18, 0x06, 0x01, 0x00, - 0xCC, 0x63, 0xE0, 0x00, 0x20, 0x0C, 0x03, 0x80, 0xA0, 0x2C, 0x09, 0x82, - 0x30, 0x84, 0x31, 0x8C, 0x33, 0x06, 0x7F, 0xE0, 0x30, 0x06, 0x00, 0x80, - 0x30, 0x03, 0xE1, 0x80, 0x20, 0x06, 0x00, 0xF0, 0x0F, 0x00, 0x60, 0x06, - 0x00, 0xC0, 0x18, 0x03, 0x00, 0x40, 0x18, 0x02, 0x30, 0x87, 0xE0, 0x00, - 0x70, 0x3C, 0x07, 0x00, 0xE0, 0x1C, 0x03, 0x80, 0x7F, 0x07, 0x18, 0x60, - 0xCE, 0x0C, 0xC0, 0xCC, 0x0C, 0xC0, 0xCC, 0x18, 0x41, 0x86, 0x30, 0x3E, - 0x00, 0x7F, 0xF0, 0x18, 0x03, 0x00, 0xC0, 0x10, 0x06, 0x01, 0x80, 0x30, - 0x0C, 0x01, 0x00, 0x60, 0x08, 0x03, 0x00, 0xC0, 0x10, 0x06, 0x00, 0x0F, - 0x83, 0x18, 0xC1, 0x98, 0x33, 0x06, 0x71, 0x87, 0x60, 0x70, 0x17, 0x0C, - 0x71, 0x07, 0x60, 0x6C, 0x0D, 0x81, 0xB0, 0x63, 0x1C, 0x3E, 0x00, 0x07, - 0x83, 0x18, 0xC1, 0x18, 0x36, 0x06, 0xC0, 0xD8, 0x1B, 0x07, 0x60, 0xE6, - 0x38, 0x7F, 0x00, 0xC0, 0x30, 0x0C, 0x07, 0x03, 0xC0, 0xC0, 0x00, 0x33, - 0x30, 0x00, 0x00, 0xCC, 0xC0, 0x18, 0xC6, 0x00, 0x00, 0x00, 0x03, 0x18, - 0x44, 0x40, 0x00, 0x00, 0x03, 0x00, 0xF0, 0x38, 0x1E, 0x07, 0x80, 0xE0, - 0x0F, 0x00, 0x1C, 0x00, 0x78, 0x01, 0xE0, 0x07, 0x00, 0x10, 0xFF, 0xF0, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0x00, 0x0C, 0x00, 0xF0, 0x01, - 0xC0, 0x07, 0x80, 0x1E, 0x00, 0x70, 0x0F, 0x03, 0xC1, 0xE0, 0x78, 0x0E, - 0x00, 0x80, 0x00, 0x3E, 0x21, 0x90, 0x60, 0x30, 0x38, 0x38, 0x30, 0x30, - 0x20, 0x20, 0x10, 0x00, 0x00, 0x06, 0x03, 0x01, 0x80, 0x07, 0xE0, 0x1C, - 0x18, 0x30, 0x04, 0x60, 0x02, 0x61, 0xDA, 0xC3, 0x31, 0xC6, 0x31, 0xC4, - 0x31, 0xCC, 0x31, 0xCC, 0x21, 0xCC, 0x62, 0x6C, 0xE4, 0x67, 0x38, 0x30, - 0x00, 0x1C, 0x08, 0x07, 0xF0, 0x00, 0x20, 0x00, 0xC0, 0x03, 0x80, 0x0B, - 0x00, 0x16, 0x00, 0x4E, 0x00, 0x9C, 0x02, 0x18, 0x08, 0x30, 0x1F, 0xE0, - 0x40, 0xC1, 0x81, 0xC2, 0x03, 0x8C, 0x07, 0x3C, 0x1F, 0x80, 0x1F, 0xF0, - 0x1C, 0x60, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x38, 0x60, 0xC3, 0x03, 0xF0, - 0x1C, 0x30, 0x60, 0x61, 0x81, 0x86, 0x06, 0x38, 0x18, 0xC0, 0xC3, 0x06, - 0x3F, 0xF0, 0x01, 0xF9, 0x06, 0x0F, 0x1C, 0x06, 0x38, 0x02, 0x30, 0x02, - 0x60, 0x00, 0x60, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0xC0, 0x00, - 0xC0, 0x00, 0xC0, 0x08, 0x60, 0x10, 0x30, 0x60, 0x1F, 0x80, 0x1F, 0xF0, - 0x07, 0x0C, 0x06, 0x06, 0x06, 0x06, 0x06, 0x03, 0x0E, 0x03, 0x0C, 0x03, - 0x0C, 0x03, 0x1C, 0x03, 0x1C, 0x07, 0x18, 0x06, 0x18, 0x06, 0x38, 0x0C, - 0x30, 0x18, 0x30, 0x70, 0xFF, 0x80, 0x1F, 0xFF, 0x07, 0x07, 0x06, 0x02, - 0x06, 0x02, 0x06, 0x00, 0x0E, 0x10, 0x0C, 0x30, 0x0F, 0xF0, 0x1C, 0x20, - 0x18, 0x20, 0x18, 0x00, 0x18, 0x00, 0x38, 0x04, 0x30, 0x08, 0x30, 0x38, - 0xFF, 0xF8, 0x1F, 0xFF, 0x07, 0x07, 0x07, 0x02, 0x06, 0x02, 0x06, 0x00, - 0x0E, 0x10, 0x0C, 0x30, 0x0F, 0xF0, 0x1C, 0x20, 0x1C, 0x20, 0x18, 0x00, - 0x18, 0x00, 0x38, 0x00, 0x30, 0x00, 0x30, 0x00, 0xFC, 0x00, 0x01, 0xF1, - 0x06, 0x0F, 0x18, 0x07, 0x38, 0x02, 0x30, 0x02, 0x60, 0x00, 0x60, 0x00, - 0xE0, 0x00, 0xC0, 0x7F, 0xC0, 0x1C, 0xC0, 0x1C, 0xC0, 0x18, 0xC0, 0x18, - 0x60, 0x18, 0x30, 0x38, 0x0F, 0xC0, 0x1F, 0xC7, 0xE0, 0xE0, 0x70, 0x18, - 0x0E, 0x03, 0x01, 0x80, 0x60, 0x30, 0x1C, 0x0E, 0x03, 0x01, 0x80, 0x7F, - 0xF0, 0x1C, 0x06, 0x03, 0x01, 0xC0, 0x60, 0x30, 0x0C, 0x06, 0x03, 0x81, - 0xC0, 0x60, 0x38, 0x0C, 0x06, 0x07, 0xE3, 0xF0, 0x1F, 0x83, 0x81, 0x80, - 0xC0, 0x60, 0x70, 0x30, 0x18, 0x1C, 0x0C, 0x06, 0x03, 0x03, 0x81, 0x80, - 0xC1, 0xF8, 0x03, 0xF0, 0x0C, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x18, 0x03, - 0x80, 0x30, 0x03, 0x00, 0x30, 0x07, 0x00, 0x60, 0x06, 0x0C, 0xE0, 0xCC, - 0x07, 0x80, 0x1F, 0xCF, 0x83, 0x83, 0x81, 0x81, 0x00, 0xC3, 0x00, 0x62, - 0x00, 0x72, 0x00, 0x36, 0x00, 0x1E, 0x00, 0x1D, 0x80, 0x0C, 0xE0, 0x06, - 0x30, 0x03, 0x1C, 0x03, 0x87, 0x01, 0x81, 0x80, 0xC0, 0xE1, 0xF9, 0xFC, - 0x1F, 0xC0, 0x1C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, 0x38, 0x00, 0xC0, - 0x03, 0x00, 0x1C, 0x00, 0x60, 0x01, 0x80, 0x06, 0x00, 0x38, 0x0C, 0xC0, - 0x23, 0x03, 0xBF, 0xFE, 0x0F, 0x00, 0x78, 0x38, 0x07, 0x81, 0xC0, 0x38, - 0x0E, 0x02, 0xC0, 0x70, 0x3E, 0x05, 0xC1, 0x70, 0x2E, 0x13, 0x01, 0x31, - 0x98, 0x11, 0x89, 0xC0, 0x8C, 0x8C, 0x04, 0x6C, 0x60, 0x23, 0x43, 0x02, - 0x1C, 0x38, 0x10, 0xE1, 0x81, 0x86, 0x1C, 0x1F, 0x23, 0xF8, 0x1E, 0x07, - 0xC1, 0xC0, 0x60, 0x70, 0x10, 0x1C, 0x0C, 0x05, 0x82, 0x02, 0x60, 0x80, - 0x9C, 0x60, 0x23, 0x10, 0x10, 0xC4, 0x04, 0x19, 0x01, 0x06, 0xC0, 0x40, - 0xE0, 0x20, 0x38, 0x08, 0x0E, 0x06, 0x01, 0x03, 0xE0, 0x40, 0x01, 0xF0, - 0x0C, 0x10, 0x30, 0x10, 0xC0, 0x33, 0x00, 0x6E, 0x00, 0xD8, 0x01, 0xF0, - 0x03, 0xC0, 0x0D, 0x80, 0x1B, 0x00, 0x76, 0x00, 0xCC, 0x03, 0x08, 0x0C, - 0x18, 0x70, 0x0F, 0x80, 0x1F, 0xF0, 0x1C, 0x60, 0x60, 0xC1, 0x83, 0x06, - 0x0C, 0x38, 0x30, 0xC1, 0x83, 0x0E, 0x1F, 0xE0, 0x60, 0x01, 0x80, 0x06, - 0x00, 0x38, 0x00, 0xC0, 0x03, 0x00, 0x3F, 0x00, 0x01, 0xF0, 0x06, 0x10, - 0x30, 0x30, 0xC0, 0x33, 0x00, 0x66, 0x00, 0xD8, 0x01, 0xB0, 0x03, 0xE0, - 0x0F, 0x80, 0x1B, 0x00, 0x36, 0x00, 0xCC, 0x03, 0x98, 0x06, 0x18, 0x18, - 0x18, 0xC0, 0x0E, 0x00, 0x20, 0x01, 0xF8, 0x36, 0x7F, 0x80, 0x1F, 0xF0, - 0x1C, 0x60, 0x60, 0xC1, 0x83, 0x06, 0x0C, 0x38, 0x70, 0xC3, 0x83, 0xF8, - 0x1D, 0xC0, 0x63, 0x01, 0x8C, 0x06, 0x18, 0x38, 0x60, 0xC1, 0xC3, 0x03, - 0x3F, 0x0F, 0x07, 0x90, 0xC7, 0x18, 0x21, 0x82, 0x18, 0x01, 0xC0, 0x0E, - 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xC4, 0x0C, 0x40, 0xC6, 0x08, 0xE1, - 0x89, 0xE0, 0x7F, 0xFE, 0xC7, 0x1D, 0x0C, 0x14, 0x18, 0x20, 0x70, 0x00, - 0xE0, 0x01, 0x80, 0x03, 0x00, 0x0E, 0x00, 0x18, 0x00, 0x30, 0x00, 0x60, - 0x01, 0xC0, 0x03, 0x00, 0x0E, 0x00, 0x7F, 0x80, 0x7E, 0x1F, 0x38, 0x0C, - 0x38, 0x0C, 0x30, 0x08, 0x30, 0x08, 0x70, 0x08, 0x70, 0x10, 0x60, 0x10, - 0x60, 0x10, 0xE0, 0x10, 0xC0, 0x20, 0xC0, 0x20, 0xC0, 0x60, 0xC0, 0x40, - 0x61, 0x80, 0x3F, 0x00, 0xFC, 0x3E, 0xE0, 0x18, 0xC0, 0x21, 0x80, 0xC3, - 0x81, 0x07, 0x04, 0x0E, 0x08, 0x0C, 0x20, 0x18, 0x80, 0x31, 0x00, 0x64, - 0x00, 0xF0, 0x01, 0xE0, 0x01, 0x80, 0x02, 0x00, 0x04, 0x00, 0xFD, 0xF8, - 0xF7, 0x07, 0x06, 0x30, 0x60, 0x63, 0x07, 0x04, 0x30, 0x70, 0x83, 0x8F, - 0x08, 0x38, 0xB1, 0x03, 0x93, 0x10, 0x19, 0x32, 0x01, 0xA3, 0x20, 0x1A, - 0x34, 0x01, 0xC3, 0x40, 0x1C, 0x38, 0x01, 0x83, 0x00, 0x18, 0x30, 0x01, - 0x02, 0x00, 0x1F, 0x9F, 0x0E, 0x06, 0x06, 0x04, 0x07, 0x08, 0x03, 0x10, - 0x03, 0x20, 0x03, 0xC0, 0x01, 0x80, 0x01, 0xC0, 0x03, 0xC0, 0x06, 0xE0, - 0x0C, 0x60, 0x18, 0x60, 0x30, 0x70, 0x70, 0x78, 0xF8, 0xFC, 0xFC, 0xFB, - 0x81, 0x8C, 0x08, 0x60, 0x83, 0x8C, 0x0C, 0xC0, 0x64, 0x03, 0xC0, 0x0C, - 0x00, 0xE0, 0x07, 0x00, 0x30, 0x01, 0x80, 0x1C, 0x00, 0xC0, 0x1F, 0xC0, - 0x1F, 0xFE, 0x30, 0x38, 0xC0, 0xF1, 0x01, 0xC0, 0x07, 0x00, 0x1C, 0x00, - 0x70, 0x01, 0xE0, 0x03, 0x80, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x01, 0xC0, - 0x47, 0x01, 0x1C, 0x06, 0x7F, 0xF8, 0x07, 0x04, 0x08, 0x08, 0x08, 0x18, - 0x10, 0x10, 0x10, 0x20, 0x20, 0x20, 0x20, 0x40, 0x40, 0x40, 0x80, 0x80, - 0x80, 0xE0, 0xC0, 0xC0, 0x40, 0x60, 0x20, 0x30, 0x30, 0x18, 0x18, 0x08, - 0x0C, 0x04, 0x06, 0x06, 0x03, 0x03, 0x0E, 0x04, 0x08, 0x10, 0x60, 0x81, - 0x02, 0x04, 0x18, 0x20, 0x40, 0x81, 0x02, 0x08, 0x10, 0x20, 0x47, 0x80, - 0x0C, 0x03, 0x81, 0xE0, 0x4C, 0x33, 0x08, 0x66, 0x19, 0x03, 0xC0, 0xC0, - 0xFF, 0xF0, 0xCE, 0x63, 0x07, 0xA0, 0xCE, 0x18, 0x63, 0x04, 0x60, 0xC6, - 0x0C, 0xC0, 0xCC, 0x18, 0xC3, 0x8C, 0x5A, 0x79, 0xC0, 0x38, 0x06, 0x01, - 0x80, 0x40, 0x30, 0x0C, 0xE3, 0xCC, 0xC3, 0x70, 0xD8, 0x36, 0x19, 0x06, - 0xC3, 0x30, 0x8C, 0xC3, 0xE0, 0x0F, 0x0C, 0xCC, 0x6C, 0x06, 0x06, 0x03, - 0x01, 0x80, 0xC0, 0x73, 0x1E, 0x00, 0x00, 0x70, 0x01, 0x80, 0x0C, 0x00, - 0x60, 0x02, 0x03, 0xF0, 0x31, 0x83, 0x08, 0x30, 0xC3, 0x06, 0x18, 0x31, - 0x81, 0x8C, 0x18, 0x61, 0xCB, 0x16, 0x8F, 0x38, 0x07, 0x19, 0x31, 0x63, - 0x62, 0xEC, 0xD0, 0xC0, 0xC0, 0xE6, 0x78, 0x00, 0x38, 0x01, 0x30, 0x0C, - 0x00, 0x20, 0x01, 0x80, 0x06, 0x00, 0xFE, 0x00, 0x40, 0x03, 0x00, 0x0C, - 0x00, 0x30, 0x00, 0x80, 0x06, 0x00, 0x18, 0x00, 0x60, 0x01, 0x80, 0x04, - 0x00, 0x30, 0x00, 0xC0, 0x02, 0x00, 0x90, 0x03, 0x80, 0x00, 0x07, 0xC0, - 0xC7, 0x18, 0x61, 0x86, 0x18, 0xE1, 0x8C, 0x07, 0x80, 0x80, 0x1C, 0x00, - 0xF0, 0x33, 0x84, 0x18, 0x80, 0x88, 0x08, 0x61, 0x03, 0xE0, 0x1C, 0x00, - 0xC0, 0x0C, 0x00, 0xC0, 0x18, 0x01, 0x8E, 0x1B, 0x61, 0xC6, 0x38, 0x63, - 0x8C, 0x30, 0xC3, 0x0C, 0x60, 0xC6, 0x1A, 0x61, 0xA4, 0x1C, 0x18, 0xC6, - 0x00, 0x0B, 0xC6, 0x23, 0x18, 0x8C, 0x63, 0x5C, 0x01, 0x80, 0xC0, 0x60, - 0x00, 0x00, 0x0C, 0x1E, 0x02, 0x03, 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, - 0x18, 0x08, 0x0C, 0x06, 0x02, 0x1B, 0x0F, 0x00, 0x1C, 0x01, 0x80, 0x30, - 0x06, 0x01, 0x80, 0x33, 0xC6, 0x30, 0x88, 0x32, 0x06, 0x80, 0xF0, 0x1B, - 0x06, 0x60, 0xC4, 0x18, 0xD2, 0x0C, 0x3C, 0x61, 0x86, 0x18, 0xC3, 0x0C, - 0x21, 0x86, 0x18, 0x43, 0x2D, 0x38, 0x78, 0xE7, 0x0D, 0xB5, 0x8D, 0x1C, - 0xC7, 0x0C, 0x63, 0x8E, 0x31, 0x86, 0x30, 0xC3, 0x18, 0xC1, 0x0C, 0x61, - 0x84, 0xB0, 0xC6, 0xB0, 0x63, 0x80, 0x78, 0xE1, 0xB6, 0x14, 0x63, 0x84, - 0x38, 0xC3, 0x0C, 0x70, 0x86, 0x18, 0x61, 0x96, 0x1A, 0xC1, 0xC0, 0x0F, - 0x06, 0x63, 0x0D, 0x83, 0x60, 0xF0, 0x3C, 0x1B, 0x06, 0xC3, 0x39, 0x87, - 0x80, 0x1E, 0xF0, 0x39, 0xC1, 0x86, 0x0C, 0x30, 0xC1, 0x86, 0x0C, 0x30, - 0xC3, 0x06, 0x18, 0x60, 0xC6, 0x07, 0xC0, 0x60, 0x03, 0x00, 0x18, 0x00, - 0xC0, 0x1F, 0x00, 0x07, 0x81, 0x9C, 0x63, 0x98, 0x76, 0x0C, 0xC1, 0xB0, - 0x76, 0x0E, 0xC3, 0x98, 0xB1, 0xE6, 0x00, 0x80, 0x30, 0x06, 0x00, 0xC0, - 0xFC, 0x79, 0x8F, 0xC5, 0x07, 0x03, 0x01, 0x80, 0xC0, 0xC0, 0x60, 0x30, - 0x10, 0x00, 0x1E, 0x98, 0xCC, 0x27, 0x11, 0x80, 0xE0, 0x39, 0x0C, 0x86, - 0x62, 0x2E, 0x00, 0x08, 0x67, 0xCC, 0x30, 0xC6, 0x18, 0x61, 0x8C, 0x34, - 0xE0, 0xF0, 0xCC, 0x19, 0x83, 0x30, 0xC6, 0x18, 0x87, 0x31, 0x66, 0x3C, - 0xCB, 0x1A, 0x6B, 0x8E, 0x00, 0x70, 0xCC, 0x33, 0x04, 0xC2, 0x18, 0x86, - 0x41, 0x90, 0x68, 0x1C, 0x06, 0x01, 0x00, 0x61, 0x0F, 0x84, 0x36, 0x30, - 0xDC, 0xC1, 0x35, 0x08, 0xD4, 0x23, 0x91, 0x0E, 0x48, 0x30, 0xE0, 0xC3, - 0x02, 0x08, 0x00, 0x0C, 0x63, 0x4A, 0x07, 0x00, 0x70, 0x06, 0x00, 0x20, - 0x07, 0x00, 0xB0, 0x0B, 0x21, 0x14, 0xE1, 0x80, 0x38, 0x63, 0x0C, 0x30, - 0x86, 0x10, 0xC4, 0x0C, 0x81, 0xA0, 0x34, 0x07, 0x00, 0x60, 0x08, 0x02, - 0x00, 0x40, 0x10, 0x04, 0x07, 0x00, 0x1F, 0x90, 0x80, 0x80, 0xC0, 0xC0, - 0x40, 0x60, 0x60, 0x60, 0x38, 0x3E, 0x03, 0xA0, 0x60, 0x00, 0x83, 0x81, - 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, 0x10, 0x10, 0x1C, 0x06, 0x03, 0x03, - 0x01, 0x80, 0xC0, 0x40, 0x60, 0x30, 0x18, 0x07, 0x00, 0xFF, 0xFF, 0x07, - 0x00, 0xC0, 0x60, 0x30, 0x10, 0x18, 0x0C, 0x06, 0x06, 0x03, 0x01, 0x80, - 0x60, 0x40, 0x60, 0x30, 0x10, 0x18, 0x0C, 0x06, 0x06, 0x06, 0x00, 0x78, - 0x18, 0x8C, 0x0F, 0x00}; - -const GFXglyph FreeSerifItalic12pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 6, 16, 8, 1, -15}, // 0x21 '!' - {12, 7, 6, 8, 3, -15}, // 0x22 '"' - {18, 13, 16, 12, 0, -15}, // 0x23 '#' - {44, 12, 20, 12, 0, -17}, // 0x24 '$' - {74, 17, 17, 20, 2, -16}, // 0x25 '%' - {111, 15, 16, 19, 2, -15}, // 0x26 '&' - {141, 2, 6, 5, 4, -15}, // 0x27 ''' - {143, 7, 20, 8, 1, -15}, // 0x28 '(' - {161, 7, 20, 8, 0, -15}, // 0x29 ')' - {179, 8, 10, 12, 4, -15}, // 0x2A '*' - {189, 11, 11, 16, 2, -10}, // 0x2B '+' - {205, 3, 6, 6, 0, -2}, // 0x2C ',' - {208, 5, 1, 8, 1, -5}, // 0x2D '-' - {209, 2, 3, 6, 1, -2}, // 0x2E '.' - {210, 11, 16, 7, 0, -15}, // 0x2F '/' - {232, 11, 17, 12, 1, -16}, // 0x30 '0' - {256, 9, 17, 12, 1, -16}, // 0x31 '1' - {276, 10, 15, 12, 1, -14}, // 0x32 '2' - {295, 10, 16, 12, 1, -15}, // 0x33 '3' - {315, 11, 16, 12, 0, -15}, // 0x34 '4' - {337, 11, 16, 12, 0, -15}, // 0x35 '5' - {359, 12, 17, 12, 1, -16}, // 0x36 '6' - {385, 11, 16, 12, 2, -15}, // 0x37 '7' - {407, 11, 17, 12, 1, -16}, // 0x38 '8' - {431, 11, 17, 12, 1, -16}, // 0x39 '9' - {455, 4, 11, 6, 1, -10}, // 0x3A ':' - {461, 5, 14, 6, 0, -10}, // 0x3B ';' - {470, 12, 13, 14, 1, -12}, // 0x3C '<' - {490, 12, 6, 16, 2, -8}, // 0x3D '=' - {499, 12, 13, 14, 2, -12}, // 0x3E '>' - {519, 9, 16, 11, 3, -15}, // 0x3F '?' - {537, 16, 16, 19, 2, -15}, // 0x40 '@' - {569, 15, 15, 16, 0, -14}, // 0x41 'A' - {598, 14, 16, 14, 0, -15}, // 0x42 'B' - {626, 16, 16, 15, 1, -15}, // 0x43 'C' - {658, 16, 16, 17, 0, -15}, // 0x44 'D' - {690, 16, 16, 14, 0, -15}, // 0x45 'E' - {722, 16, 16, 14, 0, -15}, // 0x46 'F' - {754, 16, 16, 17, 1, -15}, // 0x47 'G' - {786, 19, 16, 17, 0, -15}, // 0x48 'H' - {824, 9, 16, 8, 0, -15}, // 0x49 'I' - {842, 12, 16, 10, 0, -15}, // 0x4A 'J' - {866, 17, 16, 15, 0, -15}, // 0x4B 'K' - {900, 14, 16, 14, 0, -15}, // 0x4C 'L' - {928, 21, 16, 20, 0, -15}, // 0x4D 'M' - {970, 18, 16, 16, 0, -15}, // 0x4E 'N' - {1006, 15, 16, 16, 1, -15}, // 0x4F 'O' - {1036, 14, 16, 14, 0, -15}, // 0x50 'P' - {1064, 15, 20, 16, 1, -15}, // 0x51 'Q' - {1102, 14, 16, 15, 0, -15}, // 0x52 'R' - {1130, 12, 16, 11, 0, -15}, // 0x53 'S' - {1154, 15, 16, 14, 2, -15}, // 0x54 'T' - {1184, 16, 16, 17, 3, -15}, // 0x55 'U' - {1216, 15, 16, 16, 3, -15}, // 0x56 'V' - {1246, 20, 16, 21, 3, -15}, // 0x57 'W' - {1286, 16, 16, 16, 0, -15}, // 0x58 'X' - {1318, 13, 16, 14, 3, -15}, // 0x59 'Y' - {1344, 15, 16, 14, 0, -15}, // 0x5A 'Z' - {1374, 8, 20, 9, 1, -15}, // 0x5B '[' - {1394, 8, 16, 12, 3, -15}, // 0x5C '\' - {1410, 7, 20, 9, 1, -15}, // 0x5D ']' - {1428, 10, 9, 10, 0, -15}, // 0x5E '^' - {1440, 12, 1, 12, 0, 3}, // 0x5F '_' - {1442, 4, 4, 6, 3, -15}, // 0x60 '`' - {1444, 12, 11, 12, 0, -10}, // 0x61 'a' - {1461, 10, 16, 11, 1, -15}, // 0x62 'b' - {1481, 9, 11, 10, 1, -10}, // 0x63 'c' - {1494, 13, 16, 12, 0, -15}, // 0x64 'd' - {1520, 8, 11, 10, 1, -10}, // 0x65 'e' - {1531, 14, 22, 10, -2, -16}, // 0x66 'f' - {1570, 12, 16, 11, -1, -10}, // 0x67 'g' - {1594, 12, 16, 12, 0, -15}, // 0x68 'h' - {1618, 5, 16, 6, 1, -15}, // 0x69 'i' - {1628, 9, 21, 7, -2, -15}, // 0x6A 'j' - {1652, 11, 16, 11, 0, -15}, // 0x6B 'k' - {1674, 6, 16, 6, 1, -15}, // 0x6C 'l' - {1686, 17, 11, 17, 0, -10}, // 0x6D 'm' - {1710, 12, 11, 12, 0, -10}, // 0x6E 'n' - {1727, 10, 11, 11, 1, -10}, // 0x6F 'o' - {1741, 13, 16, 11, -2, -10}, // 0x70 'p' - {1767, 11, 16, 12, 0, -10}, // 0x71 'q' - {1789, 9, 11, 9, 0, -10}, // 0x72 'r' - {1802, 9, 11, 8, 0, -10}, // 0x73 's' - {1815, 6, 13, 6, 1, -12}, // 0x74 't' - {1825, 11, 11, 12, 1, -10}, // 0x75 'u' - {1841, 10, 11, 11, 1, -10}, // 0x76 'v' - {1855, 14, 11, 16, 2, -10}, // 0x77 'w' - {1875, 12, 11, 10, -1, -10}, // 0x78 'x' - {1892, 11, 16, 11, 0, -10}, // 0x79 'y' - {1914, 9, 13, 9, 0, -10}, // 0x7A 'z' - {1929, 9, 21, 10, 1, -16}, // 0x7B '{' - {1953, 1, 16, 7, 3, -15}, // 0x7C '|' - {1955, 9, 21, 10, 0, -16}, // 0x7D '}' - {1979, 11, 3, 13, 1, -6}}; // 0x7E '~' - -const GFXfont FreeSerifItalic12pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic12pt7bBitmaps, - (GFXglyph *)FreeSerifItalic12pt7bGlyphs, 0x20, 0x7E, 29}; - -// Approx. 2656 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h deleted file mode 100644 index c25db35..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic18pt7b.h +++ /dev/null @@ -1,452 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic18pt7bBitmaps[] PROGMEM = { - 0x01, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0x81, 0xE0, 0x70, 0x1C, 0x06, 0x01, - 0x80, 0xC0, 0x30, 0x0C, 0x02, 0x01, 0x80, 0x40, 0x10, 0x00, 0x00, 0x01, - 0x80, 0xF0, 0x3C, 0x06, 0x00, 0x38, 0x77, 0x8F, 0x78, 0xF7, 0x0E, 0x60, - 0xE6, 0x0C, 0xC1, 0x8C, 0x18, 0x81, 0x00, 0x00, 0x60, 0xC0, 0x0C, 0x38, - 0x03, 0x86, 0x00, 0x60, 0xC0, 0x0C, 0x38, 0x03, 0x06, 0x00, 0x60, 0xC0, - 0xFF, 0xFF, 0x1F, 0xFF, 0xE0, 0x61, 0xC0, 0x1C, 0x30, 0x03, 0x06, 0x00, - 0x61, 0xC0, 0x18, 0x30, 0x3F, 0xFF, 0xC7, 0xFF, 0xF8, 0x18, 0x30, 0x03, - 0x0E, 0x00, 0xE1, 0x80, 0x18, 0x30, 0x03, 0x0C, 0x00, 0xC1, 0x80, 0x18, - 0x70, 0x00, 0x00, 0x08, 0x00, 0x30, 0x00, 0x40, 0x0F, 0xC0, 0x61, 0xE1, - 0x86, 0xC6, 0x0D, 0x8C, 0x1A, 0x18, 0x24, 0x38, 0xC0, 0x39, 0x80, 0x7F, - 0x00, 0x7E, 0x00, 0x3E, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0xDC, 0x03, 0x38, - 0x06, 0x32, 0x0C, 0x64, 0x18, 0xDC, 0x71, 0xB8, 0xC6, 0x39, 0x8C, 0x3F, - 0x30, 0x1F, 0x80, 0x18, 0x00, 0x30, 0x00, 0x60, 0x00, 0x07, 0x80, 0x60, - 0x0F, 0xE0, 0xE0, 0x0F, 0x0F, 0xB0, 0x0E, 0x04, 0x30, 0x07, 0x02, 0x18, - 0x07, 0x01, 0x18, 0x03, 0x00, 0x8C, 0x01, 0x80, 0x8C, 0x00, 0xC0, 0x4C, - 0x00, 0x60, 0x66, 0x1F, 0x30, 0x66, 0x1F, 0xCC, 0x63, 0x1C, 0x67, 0xE3, - 0x1C, 0x19, 0xE1, 0x1C, 0x04, 0x01, 0x8C, 0x02, 0x00, 0x8E, 0x01, 0x00, - 0xC7, 0x00, 0x80, 0xC3, 0x00, 0x80, 0x61, 0x80, 0xC0, 0x60, 0xC0, 0xC0, - 0x20, 0x70, 0xE0, 0x30, 0x1F, 0xC0, 0x10, 0x07, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xFC, 0x00, 0x07, 0x18, 0x00, 0x18, 0x60, 0x00, 0xE1, 0x80, 0x03, - 0x8C, 0x00, 0x0E, 0x60, 0x00, 0x3B, 0x00, 0x00, 0xF0, 0x00, 0x07, 0x80, - 0x00, 0x7F, 0x1F, 0xC3, 0x3C, 0x1C, 0x38, 0x70, 0x61, 0xE1, 0xE3, 0x87, - 0x07, 0x8C, 0x3C, 0x0F, 0x60, 0xF0, 0x3D, 0x03, 0xC0, 0x78, 0x0F, 0x01, - 0xE0, 0x3E, 0x07, 0xC0, 0x7C, 0x77, 0x84, 0xFF, 0x8F, 0xE1, 0xF8, 0x0F, - 0x00, 0x3B, 0xDE, 0xE7, 0x33, 0x18, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, - 0xC0, 0xC0, 0xE0, 0x60, 0x70, 0x38, 0x18, 0x0C, 0x0E, 0x07, 0x03, 0x01, - 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x06, 0x01, 0x00, 0x80, 0x40, 0x30, - 0x08, 0x04, 0x02, 0x00, 0x04, 0x01, 0x00, 0x80, 0x60, 0x10, 0x08, 0x04, - 0x03, 0x01, 0x80, 0xC0, 0x60, 0x30, 0x18, 0x0C, 0x0E, 0x07, 0x03, 0x81, - 0x80, 0xC0, 0xE0, 0x60, 0x30, 0x30, 0x18, 0x18, 0x08, 0x08, 0x08, 0x08, - 0x00, 0x06, 0x00, 0x60, 0x06, 0x0C, 0x43, 0xE4, 0xF1, 0x58, 0x0E, 0x00, - 0xF0, 0x74, 0xEE, 0x47, 0xC4, 0x30, 0x60, 0x06, 0x00, 0x60, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, - 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x01, 0x80, 0x31, 0xCE, - 0x31, 0x08, 0x98, 0xFF, 0xFF, 0x6F, 0xF6, 0x00, 0x06, 0x00, 0x0E, 0x00, - 0x0C, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, - 0xE0, 0x00, 0xC0, 0x01, 0xC0, 0x03, 0x80, 0x03, 0x00, 0x07, 0x00, 0x06, - 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, - 0x00, 0x60, 0x00, 0xE0, 0x00, 0x00, 0x78, 0x00, 0xC3, 0x00, 0xC1, 0xC0, - 0xC0, 0x60, 0xE0, 0x30, 0xE0, 0x1C, 0x70, 0x0E, 0x70, 0x07, 0x38, 0x03, - 0xBC, 0x01, 0xDC, 0x01, 0xEE, 0x00, 0xFF, 0x00, 0x7F, 0x80, 0x3B, 0x80, - 0x1D, 0xC0, 0x1E, 0xE0, 0x0E, 0x70, 0x0F, 0x38, 0x07, 0x1C, 0x07, 0x06, - 0x03, 0x83, 0x83, 0x80, 0xC3, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x7F, 0x00, - 0x70, 0x07, 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0E, 0x01, 0xC0, 0x1C, 0x01, - 0xC0, 0x38, 0x03, 0x80, 0x38, 0x03, 0x80, 0x70, 0x07, 0x00, 0x70, 0x0E, - 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x1E, 0x0F, 0xF8, 0x01, 0xF0, 0x07, 0xFC, - 0x0C, 0x3E, 0x10, 0x1F, 0x20, 0x0F, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0F, - 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x38, 0x00, 0x30, 0x00, 0x70, 0x00, 0xE0, - 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0E, 0x00, 0x1C, 0x00, 0x38, 0x04, - 0x30, 0x0C, 0x7F, 0xF8, 0xFF, 0xF0, 0x00, 0x7C, 0x00, 0xFF, 0x00, 0xC3, - 0xC0, 0x80, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x1C, 0x00, - 0x38, 0x00, 0xF0, 0x03, 0xFC, 0x00, 0x1F, 0x00, 0x03, 0xC0, 0x01, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x06, 0x00, 0x07, - 0x00, 0x03, 0x07, 0x87, 0x03, 0xFF, 0x00, 0xFC, 0x00, 0x00, 0x01, 0x80, - 0x01, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x01, 0xF0, 0x01, 0xB0, 0x01, 0xB8, - 0x01, 0x9C, 0x01, 0x8C, 0x00, 0x86, 0x00, 0x87, 0x00, 0x83, 0x80, 0x81, - 0x80, 0x81, 0xC0, 0xC0, 0xE0, 0xC0, 0x70, 0xFF, 0xFF, 0x7F, 0xFF, 0x00, - 0x1C, 0x00, 0x0C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0x80, - 0x01, 0xFF, 0x01, 0xFF, 0x02, 0x00, 0x02, 0x00, 0x06, 0x00, 0x07, 0x00, - 0x0F, 0xC0, 0x0F, 0xF0, 0x00, 0xF8, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x1C, - 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x0C, 0x00, 0x08, 0x00, 0x18, - 0x00, 0x30, 0x00, 0x30, 0x70, 0xE0, 0xFF, 0x80, 0x7E, 0x00, 0x00, 0x03, - 0x80, 0x1F, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x38, - 0x00, 0x3C, 0x00, 0x3D, 0xF0, 0x1F, 0xFE, 0x1F, 0x0F, 0x8E, 0x03, 0xC7, - 0x00, 0xF7, 0x00, 0x7B, 0x80, 0x3D, 0x80, 0x1E, 0xC0, 0x0F, 0x60, 0x0F, - 0xB0, 0x07, 0x98, 0x03, 0xC4, 0x03, 0xC3, 0x03, 0xC0, 0xC3, 0x80, 0x1F, - 0x00, 0x3F, 0xFF, 0x7F, 0xFE, 0x40, 0x0E, 0x80, 0x0C, 0x00, 0x18, 0x00, - 0x18, 0x00, 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, 0xC0, 0x01, 0xC0, 0x01, - 0x80, 0x03, 0x80, 0x03, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x1C, - 0x00, 0x18, 0x00, 0x30, 0x00, 0x70, 0x00, 0x60, 0x00, 0xE0, 0x00, 0x00, - 0xF8, 0x03, 0x0E, 0x06, 0x06, 0x0C, 0x03, 0x0C, 0x03, 0x0C, 0x03, 0x0C, - 0x03, 0x0E, 0x06, 0x07, 0x8E, 0x07, 0xD8, 0x03, 0xE0, 0x07, 0xF0, 0x1C, - 0xF8, 0x30, 0x3C, 0x60, 0x1C, 0x60, 0x0E, 0xC0, 0x06, 0xC0, 0x06, 0xC0, - 0x06, 0xC0, 0x06, 0xE0, 0x0C, 0x60, 0x18, 0x38, 0x30, 0x0F, 0xC0, 0x01, - 0xF8, 0x07, 0x8C, 0x0E, 0x06, 0x1E, 0x02, 0x3C, 0x03, 0x3C, 0x03, 0x78, - 0x03, 0x78, 0x03, 0x78, 0x03, 0x78, 0x07, 0x78, 0x07, 0x78, 0x07, 0x3C, - 0x0E, 0x3E, 0x1E, 0x1F, 0xEE, 0x07, 0x9C, 0x00, 0x38, 0x00, 0x78, 0x00, - 0x70, 0x01, 0xE0, 0x03, 0xC0, 0x0F, 0x00, 0x3C, 0x00, 0xE0, 0x00, 0x0C, - 0x3C, 0x78, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0F, 0x1E, 0x18, - 0x00, 0x07, 0x03, 0xC1, 0xE0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x02, 0x03, 0x81, 0xC0, 0xE0, 0x30, 0x10, 0x10, 0x10, 0x00, 0x00, - 0x00, 0x00, 0xC0, 0x01, 0xF0, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x01, - 0xF0, 0x03, 0xF0, 0x03, 0xF0, 0x00, 0xF0, 0x00, 0x3E, 0x00, 0x07, 0xE0, - 0x00, 0x7E, 0x00, 0x03, 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xF0, 0x00, 0x3F, - 0x00, 0x03, 0xC0, 0x00, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, 0xF0, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xFF, - 0xFF, 0xC0, 0xC0, 0x00, 0x3C, 0x00, 0x07, 0xE0, 0x00, 0x7E, 0x00, 0x07, - 0xE0, 0x00, 0x3E, 0x00, 0x03, 0xE0, 0x00, 0x3F, 0x00, 0x03, 0xC0, 0x01, - 0xF0, 0x01, 0xF8, 0x01, 0xF8, 0x01, 0xF0, 0x01, 0xF0, 0x03, 0xF0, 0x03, - 0xF0, 0x00, 0xF0, 0x00, 0x20, 0x00, 0x00, 0x0F, 0x81, 0x86, 0x30, 0x33, - 0x03, 0x30, 0x30, 0x03, 0x00, 0x60, 0x0E, 0x01, 0xC0, 0x38, 0x06, 0x00, - 0xC0, 0x08, 0x01, 0x00, 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, - 0x00, 0xF0, 0x0F, 0x00, 0x60, 0x00, 0x00, 0x7F, 0x00, 0x03, 0xFF, 0xE0, - 0x07, 0x80, 0xF0, 0x0E, 0x00, 0x38, 0x1C, 0x00, 0x0C, 0x38, 0x0E, 0x06, - 0x70, 0x3F, 0xE2, 0x70, 0x71, 0xE3, 0xF0, 0x60, 0xE1, 0xE0, 0xC0, 0xC1, - 0xE0, 0xC0, 0xC1, 0xE1, 0x81, 0xC1, 0xE1, 0x81, 0xC1, 0xE1, 0x81, 0x82, - 0xE1, 0x83, 0x82, 0x71, 0x83, 0x86, 0x71, 0xC7, 0x8C, 0x38, 0xF9, 0xF8, - 0x3C, 0xF0, 0xF0, 0x1E, 0x00, 0x00, 0x0F, 0x80, 0x30, 0x03, 0xFF, 0xE0, - 0x00, 0x7F, 0x00, 0x00, 0x03, 0x00, 0x00, 0x18, 0x00, 0x01, 0xC0, 0x00, - 0x1E, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x5E, 0x00, 0x04, 0xF0, - 0x00, 0x63, 0x80, 0x02, 0x1C, 0x00, 0x20, 0xE0, 0x01, 0x07, 0x00, 0x10, - 0x3C, 0x01, 0xFF, 0xE0, 0x0F, 0xFF, 0x00, 0xC0, 0x38, 0x04, 0x01, 0xC0, - 0x60, 0x0E, 0x06, 0x00, 0x78, 0x30, 0x03, 0xC3, 0x00, 0x1E, 0x38, 0x00, - 0xFB, 0xF0, 0x1F, 0xE0, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x78, 0x3C, - 0x03, 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xE0, 0x3C, 0x07, 0x01, 0xE0, 0x78, - 0x1E, 0x03, 0x83, 0xE0, 0x1F, 0xF8, 0x01, 0xFF, 0xC0, 0x0F, 0x0F, 0x00, - 0x70, 0x3C, 0x03, 0x80, 0xF0, 0x3C, 0x07, 0x81, 0xC0, 0x3C, 0x0E, 0x01, - 0xE0, 0xF0, 0x0F, 0x07, 0x80, 0xF0, 0x38, 0x0F, 0x81, 0xC1, 0xF8, 0x1F, - 0xFF, 0x83, 0xFF, 0xE0, 0x00, 0x00, 0x3F, 0x08, 0x07, 0xFF, 0xC0, 0xF8, - 0x3E, 0x0F, 0x00, 0x70, 0xF0, 0x03, 0x8F, 0x00, 0x08, 0xF0, 0x00, 0x47, - 0x80, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x01, 0xE0, 0x00, - 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xF0, - 0x00, 0x03, 0x80, 0x02, 0x1E, 0x00, 0x20, 0x78, 0x02, 0x03, 0xE0, 0x60, - 0x07, 0xFE, 0x00, 0x0F, 0xC0, 0x00, 0x07, 0xFF, 0xC0, 0x00, 0xFF, 0xFC, - 0x00, 0x78, 0x1F, 0x00, 0x3C, 0x03, 0xC0, 0x1E, 0x00, 0xF0, 0x0E, 0x00, - 0x78, 0x07, 0x00, 0x1E, 0x07, 0x80, 0x0F, 0x03, 0x80, 0x07, 0x81, 0xC0, - 0x03, 0xC1, 0xE0, 0x01, 0xE0, 0xF0, 0x00, 0xF0, 0x70, 0x00, 0x78, 0x38, - 0x00, 0x78, 0x3C, 0x00, 0x3C, 0x1E, 0x00, 0x3E, 0x0E, 0x00, 0x1E, 0x0F, - 0x00, 0x1E, 0x07, 0x80, 0x1E, 0x03, 0x80, 0x3E, 0x01, 0xC0, 0x7E, 0x01, - 0xFF, 0xFC, 0x03, 0xFF, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x07, 0xFF, 0xF0, - 0x1E, 0x01, 0xC0, 0x78, 0x02, 0x01, 0xE0, 0x08, 0x07, 0x00, 0x00, 0x1C, - 0x08, 0x00, 0xF0, 0x60, 0x03, 0x83, 0x80, 0x0F, 0xFC, 0x00, 0x7F, 0xF0, - 0x01, 0xE0, 0xC0, 0x07, 0x03, 0x00, 0x1C, 0x08, 0x00, 0xF0, 0x20, 0x03, - 0x80, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, 0x81, 0xE0, 0x06, 0x07, 0x00, - 0x38, 0x1C, 0x03, 0xC0, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, 0x00, 0x07, 0xFF, - 0xFC, 0x07, 0xFF, 0xF0, 0x1E, 0x01, 0xC0, 0x78, 0x02, 0x01, 0xE0, 0x08, - 0x07, 0x00, 0x20, 0x1C, 0x00, 0x00, 0xF0, 0x20, 0x03, 0x81, 0x80, 0x0E, - 0x0C, 0x00, 0x7F, 0xF0, 0x01, 0xFF, 0xC0, 0x07, 0x03, 0x00, 0x1C, 0x0C, - 0x00, 0xF0, 0x20, 0x03, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, 0x01, - 0xE0, 0x00, 0x07, 0x00, 0x00, 0x1C, 0x00, 0x00, 0xF8, 0x00, 0x0F, 0xF8, - 0x00, 0x00, 0x00, 0x3F, 0x02, 0x01, 0xFF, 0x88, 0x0F, 0x81, 0xF0, 0x3C, - 0x01, 0xE0, 0xF0, 0x01, 0xC3, 0xC0, 0x01, 0x0F, 0x80, 0x02, 0x1E, 0x00, - 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x00, 0x01, 0xE0, 0x00, 0x07, 0xC0, 0x00, - 0x0F, 0x00, 0x3F, 0xFE, 0x00, 0x1E, 0x3C, 0x00, 0x38, 0x78, 0x00, 0x70, - 0xF0, 0x00, 0xE0, 0xE0, 0x01, 0xC1, 0xE0, 0x07, 0x01, 0xE0, 0x0E, 0x01, - 0xF0, 0x3C, 0x01, 0xFF, 0xF0, 0x00, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x3F, - 0xE0, 0x3E, 0x00, 0xF0, 0x07, 0x80, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x1C, - 0x00, 0xF0, 0x03, 0x80, 0x1E, 0x00, 0x70, 0x03, 0x80, 0x1E, 0x00, 0x70, - 0x03, 0x80, 0x1E, 0x00, 0x70, 0x03, 0x80, 0x1F, 0xFF, 0xF0, 0x03, 0xFF, - 0xFE, 0x00, 0x70, 0x03, 0xC0, 0x0E, 0x00, 0x70, 0x03, 0xC0, 0x0E, 0x00, - 0x70, 0x03, 0xC0, 0x0E, 0x00, 0x78, 0x03, 0xC0, 0x0E, 0x00, 0x78, 0x01, - 0xC0, 0x0E, 0x00, 0x78, 0x01, 0xC0, 0x0E, 0x00, 0x78, 0x03, 0xE0, 0x3F, - 0xE1, 0xFF, 0x00, 0x07, 0xFC, 0x07, 0xC0, 0x1E, 0x00, 0x78, 0x01, 0xC0, - 0x07, 0x00, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xE0, - 0x07, 0x00, 0x1C, 0x00, 0xF0, 0x03, 0x80, 0x0E, 0x00, 0x78, 0x01, 0xE0, - 0x07, 0x00, 0x1C, 0x00, 0xF0, 0x0F, 0xF8, 0x00, 0x00, 0xFF, 0x80, 0x0F, - 0x00, 0x07, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0x70, 0x00, 0x38, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x00, 0x70, - 0x1E, 0x78, 0x0F, 0x38, 0x07, 0xF8, 0x01, 0xF0, 0x00, 0x07, 0xFC, 0x7F, - 0x80, 0xF8, 0x0F, 0x00, 0x38, 0x07, 0x00, 0x3C, 0x07, 0x00, 0x1C, 0x06, - 0x00, 0x0E, 0x06, 0x00, 0x07, 0x0C, 0x00, 0x07, 0x8C, 0x00, 0x03, 0x9C, - 0x00, 0x01, 0xD8, 0x00, 0x01, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x73, - 0x80, 0x00, 0x39, 0xE0, 0x00, 0x3C, 0x78, 0x00, 0x1C, 0x1C, 0x00, 0x0E, - 0x0F, 0x00, 0x07, 0x03, 0x80, 0x07, 0x81, 0xE0, 0x03, 0x80, 0x70, 0x01, - 0xC0, 0x3C, 0x01, 0xE0, 0x1F, 0x03, 0xFE, 0x3F, 0xE0, 0x07, 0xFC, 0x00, - 0x1F, 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, - 0x01, 0xC0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x80, - 0x00, 0x78, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x0F, 0x00, 0x00, 0xE0, - 0x00, 0x0E, 0x00, 0x11, 0xE0, 0x03, 0x1E, 0x00, 0x61, 0xC0, 0x06, 0x1C, - 0x01, 0xE3, 0xFF, 0xFC, 0xFF, 0xFF, 0xC0, 0x07, 0xF0, 0x00, 0x7E, 0x03, - 0xE0, 0x01, 0xF0, 0x03, 0xC0, 0x03, 0xE0, 0x07, 0x80, 0x0F, 0x80, 0x1F, - 0x00, 0x37, 0x00, 0x2E, 0x00, 0x5E, 0x00, 0x5C, 0x01, 0xB8, 0x01, 0xB8, - 0x06, 0x70, 0x02, 0x78, 0x09, 0xE0, 0x04, 0x70, 0x33, 0xC0, 0x08, 0xE0, - 0xC7, 0x00, 0x31, 0xC1, 0x0E, 0x00, 0x43, 0x86, 0x3C, 0x00, 0x87, 0x18, - 0x70, 0x03, 0x0E, 0x20, 0xE0, 0x06, 0x1C, 0xC3, 0xC0, 0x08, 0x3B, 0x07, - 0x80, 0x10, 0x7C, 0x0E, 0x00, 0x60, 0x78, 0x1C, 0x00, 0x80, 0xE0, 0x78, - 0x03, 0x01, 0x80, 0xF0, 0x07, 0x03, 0x03, 0xE0, 0x3F, 0x84, 0x1F, 0xF0, - 0x00, 0x07, 0xC0, 0x3F, 0xC0, 0x78, 0x03, 0xE0, 0x0E, 0x00, 0x70, 0x03, - 0xC0, 0x18, 0x01, 0xF0, 0x0E, 0x00, 0x6C, 0x03, 0x00, 0x1B, 0x80, 0xC0, - 0x0C, 0xE0, 0x30, 0x03, 0x18, 0x1C, 0x00, 0xC7, 0x06, 0x00, 0x30, 0xC1, - 0x80, 0x18, 0x38, 0xE0, 0x06, 0x06, 0x30, 0x01, 0x81, 0x8C, 0x00, 0xC0, - 0x73, 0x00, 0x30, 0x0D, 0xC0, 0x0C, 0x03, 0xE0, 0x03, 0x00, 0x78, 0x01, - 0x80, 0x1E, 0x00, 0x60, 0x07, 0x00, 0x38, 0x00, 0xC0, 0x0E, 0x00, 0x30, - 0x0F, 0xE0, 0x04, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x07, 0xC1, - 0xE0, 0x1E, 0x01, 0xE0, 0x78, 0x01, 0xC1, 0xE0, 0x03, 0xC7, 0x80, 0x07, - 0x9F, 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0xF8, 0x00, 0x3D, 0xE0, 0x00, 0xFF, - 0xC0, 0x01, 0xEF, 0x80, 0x03, 0xDE, 0x00, 0x0F, 0xBC, 0x00, 0x1E, 0x78, - 0x00, 0x7C, 0xF0, 0x00, 0xF1, 0xE0, 0x03, 0xC1, 0xC0, 0x0F, 0x03, 0xC0, - 0x3C, 0x03, 0xC1, 0xF0, 0x03, 0xFF, 0x80, 0x01, 0xFC, 0x00, 0x00, 0x07, - 0xFF, 0xC0, 0x07, 0xFF, 0xC0, 0x0E, 0x0F, 0x80, 0x78, 0x1F, 0x01, 0xC0, - 0x3C, 0x07, 0x00, 0xF0, 0x1C, 0x03, 0xC0, 0xF0, 0x0F, 0x03, 0x80, 0x78, - 0x0E, 0x01, 0xE0, 0x78, 0x1F, 0x01, 0xFF, 0xF8, 0x07, 0x7F, 0x00, 0x1C, - 0x00, 0x00, 0xF0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, - 0x01, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x1C, 0x00, 0x00, 0xF0, 0x00, 0x0F, - 0xF0, 0x00, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0xFF, 0xE0, 0x03, 0xC1, 0xE0, - 0x1E, 0x01, 0xC0, 0x78, 0x03, 0xC1, 0xE0, 0x03, 0x87, 0x80, 0x07, 0x8F, - 0x00, 0x0F, 0x3C, 0x00, 0x1E, 0x78, 0x00, 0x3D, 0xE0, 0x00, 0x7B, 0xC0, - 0x01, 0xFF, 0x80, 0x03, 0xDE, 0x00, 0x07, 0xBC, 0x00, 0x1F, 0x78, 0x00, - 0x3C, 0xF0, 0x00, 0xF1, 0xE0, 0x01, 0xE3, 0xC0, 0x07, 0x83, 0x80, 0x1E, - 0x07, 0x80, 0x78, 0x07, 0x01, 0xC0, 0x03, 0xDE, 0x00, 0x01, 0xC0, 0x00, - 0x06, 0x00, 0x00, 0x18, 0x00, 0x10, 0x7F, 0xC0, 0xC3, 0xFF, 0xFF, 0x08, - 0x07, 0xF0, 0x00, 0x07, 0xFF, 0x80, 0x0F, 0xFF, 0x00, 0x78, 0x3C, 0x03, - 0xC0, 0xF0, 0x1E, 0x07, 0x80, 0xE0, 0x3C, 0x07, 0x01, 0xE0, 0x78, 0x1E, - 0x03, 0x83, 0xF0, 0x1F, 0xFE, 0x01, 0xFF, 0xC0, 0x0F, 0x38, 0x00, 0x71, - 0xE0, 0x03, 0x87, 0x00, 0x3C, 0x38, 0x01, 0xC1, 0xE0, 0x0E, 0x07, 0x00, - 0xF0, 0x3C, 0x07, 0x81, 0xE0, 0x38, 0x07, 0x01, 0xC0, 0x3C, 0x1E, 0x00, - 0xF3, 0xFC, 0x07, 0xC0, 0x00, 0xF8, 0x81, 0xFF, 0xC1, 0xE1, 0xE1, 0xE0, - 0x70, 0xF0, 0x10, 0x78, 0x08, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0x80, 0x01, - 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, - 0x80, 0x3C, 0x40, 0x1E, 0x20, 0x0F, 0x38, 0x07, 0x9E, 0x07, 0x8F, 0x87, - 0x84, 0x7F, 0xC2, 0x0F, 0x80, 0x3F, 0xFF, 0xF7, 0xFF, 0xFF, 0x70, 0x78, - 0x76, 0x07, 0x02, 0xC0, 0x70, 0x28, 0x0F, 0x02, 0x00, 0xF0, 0x00, 0x0E, - 0x00, 0x01, 0xE0, 0x00, 0x1E, 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x03, - 0xC0, 0x00, 0x3C, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x07, 0x80, 0x00, - 0x70, 0x00, 0x07, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x01, 0xF0, 0x00, - 0xFF, 0xE0, 0x00, 0x7F, 0xE0, 0xFE, 0x3F, 0x00, 0x78, 0x3C, 0x00, 0x60, - 0xF0, 0x01, 0x81, 0xE0, 0x03, 0x03, 0xC0, 0x06, 0x07, 0x00, 0x08, 0x1E, - 0x00, 0x30, 0x3C, 0x00, 0x60, 0x70, 0x00, 0x81, 0xE0, 0x01, 0x03, 0xC0, - 0x06, 0x07, 0x80, 0x0C, 0x0E, 0x00, 0x10, 0x3C, 0x00, 0x60, 0x78, 0x00, - 0xC0, 0xF0, 0x01, 0x01, 0xE0, 0x06, 0x03, 0xC0, 0x08, 0x03, 0xC0, 0x30, - 0x07, 0xC1, 0xC0, 0x07, 0xFF, 0x00, 0x03, 0xF8, 0x00, 0x00, 0xFF, 0x01, - 0xFB, 0xE0, 0x07, 0x8E, 0x00, 0x18, 0x78, 0x01, 0x83, 0xC0, 0x0C, 0x1E, - 0x00, 0xC0, 0xF0, 0x06, 0x03, 0x80, 0x60, 0x1C, 0x02, 0x00, 0xE0, 0x30, - 0x07, 0x83, 0x00, 0x3C, 0x10, 0x01, 0xE1, 0x80, 0x07, 0x08, 0x00, 0x38, - 0x80, 0x01, 0xC4, 0x00, 0x0E, 0x40, 0x00, 0x7C, 0x00, 0x03, 0xE0, 0x00, - 0x0E, 0x00, 0x00, 0x70, 0x00, 0x03, 0x00, 0x00, 0x10, 0x00, 0x00, 0xFF, - 0x3F, 0xC3, 0xFB, 0xE0, 0x78, 0x07, 0x8E, 0x03, 0xC0, 0x18, 0x78, 0x0E, - 0x01, 0x83, 0xC0, 0x70, 0x0C, 0x1E, 0x03, 0x80, 0x40, 0xF0, 0x3C, 0x06, - 0x03, 0x81, 0xE0, 0x60, 0x1C, 0x17, 0x83, 0x00, 0xE0, 0xBC, 0x30, 0x07, - 0x09, 0xE1, 0x00, 0x38, 0x47, 0x18, 0x01, 0xE4, 0x38, 0x80, 0x0F, 0x21, - 0xCC, 0x00, 0x7A, 0x0E, 0x40, 0x01, 0xD0, 0x76, 0x00, 0x0F, 0x03, 0xA0, - 0x00, 0x78, 0x1F, 0x00, 0x03, 0x80, 0xF0, 0x00, 0x1C, 0x07, 0x00, 0x00, - 0xC0, 0x38, 0x00, 0x06, 0x00, 0x80, 0x00, 0x20, 0x04, 0x00, 0x00, 0x0F, - 0xF8, 0x7F, 0x03, 0xE0, 0x3E, 0x01, 0xC0, 0x18, 0x01, 0xE0, 0x30, 0x01, - 0xE0, 0x60, 0x00, 0xE0, 0xC0, 0x00, 0xF1, 0xC0, 0x00, 0x71, 0x80, 0x00, - 0x7B, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x3C, 0x00, 0x00, 0x7E, 0x00, 0x00, 0xCE, 0x00, 0x01, 0x8F, 0x00, 0x01, - 0x07, 0x00, 0x03, 0x07, 0x00, 0x06, 0x07, 0x80, 0x0C, 0x03, 0x80, 0x18, - 0x03, 0xC0, 0x78, 0x03, 0xE0, 0xFE, 0x1F, 0xF8, 0xFF, 0x87, 0xE7, 0xC0, - 0x38, 0x70, 0x06, 0x0E, 0x01, 0x81, 0xE0, 0x30, 0x1C, 0x0C, 0x03, 0x83, - 0x00, 0x78, 0xC0, 0x07, 0x30, 0x00, 0xE4, 0x00, 0x1D, 0x80, 0x03, 0xE0, - 0x00, 0x38, 0x00, 0x0F, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x07, 0x00, - 0x01, 0xE0, 0x00, 0x38, 0x00, 0x07, 0x00, 0x01, 0xE0, 0x00, 0x7C, 0x00, - 0x3F, 0xF0, 0x00, 0x07, 0xFF, 0xFC, 0x3F, 0xFF, 0xE0, 0xE0, 0x0F, 0x82, - 0x00, 0x3C, 0x18, 0x01, 0xE0, 0x40, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, - 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x80, 0x00, 0x1C, 0x00, 0x00, 0xF0, 0x00, 0x07, - 0x80, 0x00, 0x3C, 0x00, 0xC1, 0xE0, 0x02, 0x0F, 0x00, 0x18, 0x38, 0x01, - 0xE1, 0xFF, 0xFF, 0x0F, 0xFF, 0xFC, 0x00, 0x01, 0xF8, 0x0C, 0x00, 0xC0, - 0x06, 0x00, 0x30, 0x01, 0x80, 0x18, 0x00, 0xC0, 0x06, 0x00, 0x30, 0x03, - 0x00, 0x18, 0x00, 0xC0, 0x06, 0x00, 0x60, 0x03, 0x00, 0x18, 0x01, 0xC0, - 0x0C, 0x00, 0x60, 0x03, 0x00, 0x30, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x06, - 0x00, 0x30, 0x01, 0xF8, 0x00, 0xE0, 0x0E, 0x00, 0x60, 0x07, 0x00, 0x30, - 0x03, 0x80, 0x18, 0x01, 0xC0, 0x0C, 0x00, 0xC0, 0x0E, 0x00, 0x60, 0x07, - 0x00, 0x30, 0x03, 0x80, 0x18, 0x01, 0xC0, 0x0C, 0x00, 0xC0, 0x0E, 0x00, - 0x60, 0x07, 0x00, 0x30, 0x03, 0xF0, 0x06, 0x00, 0x60, 0x06, 0x00, 0x60, - 0x0E, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x01, 0x80, 0x18, 0x01, 0x80, - 0x18, 0x03, 0x00, 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, 0x60, 0x06, 0x00, - 0x60, 0x06, 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x0F, 0xC0, 0x03, 0x80, - 0x07, 0x00, 0x1F, 0x00, 0x36, 0x00, 0xCE, 0x01, 0x8C, 0x06, 0x1C, 0x0C, - 0x18, 0x38, 0x38, 0x60, 0x31, 0xC0, 0x73, 0x00, 0x6E, 0x00, 0xE0, 0xFF, - 0xFF, 0xFF, 0xFF, 0xF0, 0xE3, 0x8F, 0x0E, 0x18, 0x30, 0x01, 0xEC, 0x0E, - 0x58, 0x30, 0x70, 0xE0, 0xC3, 0x81, 0x86, 0x07, 0x1C, 0x0C, 0x38, 0x18, - 0xE0, 0x71, 0xC0, 0xE3, 0x83, 0x87, 0x0B, 0x2F, 0x36, 0xCF, 0xCF, 0x1F, - 0x1C, 0x00, 0x03, 0x00, 0x1F, 0x00, 0x07, 0x00, 0x07, 0x00, 0x06, 0x00, - 0x0E, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x0C, 0x00, 0x1C, 0x7C, 0x1C, 0xFE, - 0x19, 0x8F, 0x1A, 0x07, 0x3C, 0x07, 0x38, 0x07, 0x38, 0x07, 0x70, 0x0E, - 0x70, 0x0E, 0x70, 0x1C, 0x60, 0x18, 0xE0, 0x30, 0xE0, 0x60, 0xE1, 0xC0, - 0x3F, 0x00, 0x01, 0xF0, 0x38, 0xC3, 0x8E, 0x78, 0x73, 0x80, 0x3C, 0x01, - 0xC0, 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x47, 0x84, 0x3F, - 0xC0, 0x7C, 0x00, 0x00, 0x01, 0x80, 0x07, 0xC0, 0x00, 0xE0, 0x00, 0x60, - 0x00, 0x30, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0C, 0x00, 0x06, 0x00, 0xF7, - 0x01, 0xC7, 0x81, 0xC3, 0x81, 0xC1, 0xC1, 0xE0, 0xE0, 0xE0, 0x60, 0xF0, - 0x30, 0x78, 0x38, 0x78, 0x18, 0x3C, 0x0C, 0x1E, 0x0C, 0x0F, 0x0E, 0x27, - 0xCB, 0x21, 0xF9, 0xE0, 0x78, 0xE0, 0x00, 0xF0, 0x1C, 0xC3, 0x86, 0x38, - 0x33, 0xC3, 0x1C, 0x31, 0xE3, 0x1F, 0xE0, 0xF0, 0x07, 0x80, 0x3C, 0x01, - 0xE0, 0x47, 0x84, 0x3F, 0xC0, 0x7C, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x33, - 0x00, 0x06, 0x30, 0x00, 0xC0, 0x00, 0x0C, 0x00, 0x01, 0xC0, 0x00, 0x18, - 0x00, 0x01, 0x80, 0x00, 0x38, 0x00, 0x3F, 0xF8, 0x03, 0xFF, 0x80, 0x03, - 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x06, 0x00, 0x00, - 0x60, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x0C, 0x00, 0x00, 0xC0, 0x00, - 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x18, 0x00, 0x01, 0x80, 0x00, 0x18, 0x00, - 0x03, 0x00, 0x00, 0x30, 0x00, 0xC6, 0x00, 0x0C, 0xC0, 0x00, 0x78, 0x00, - 0x00, 0x01, 0xF8, 0x07, 0x1F, 0x0E, 0x0F, 0x0C, 0x0E, 0x18, 0x0E, 0x18, - 0x0E, 0x18, 0x1E, 0x18, 0x3C, 0x0C, 0x78, 0x07, 0xE0, 0x08, 0x00, 0x18, - 0x00, 0x1E, 0x00, 0x0F, 0xE0, 0x13, 0xF0, 0x60, 0x78, 0xC0, 0x38, 0xC0, - 0x18, 0xC0, 0x18, 0xC0, 0x30, 0x60, 0x60, 0x3F, 0x80, 0x03, 0x00, 0x1F, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x06, 0x00, 0x06, 0x00, 0x0E, 0x00, 0x0E, - 0x00, 0x0C, 0x00, 0x1C, 0x38, 0x1C, 0x7C, 0x1C, 0xCC, 0x19, 0x0C, 0x3A, - 0x0C, 0x3C, 0x1C, 0x3C, 0x18, 0x38, 0x18, 0x70, 0x38, 0x70, 0x38, 0x70, - 0x30, 0x60, 0x72, 0xE0, 0x76, 0xE0, 0x7C, 0xC0, 0x70, 0x03, 0x03, 0xC1, - 0xE0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x7E, 0x0F, 0x03, 0x81, 0x81, - 0xC0, 0xE0, 0x70, 0x30, 0x38, 0x1C, 0x1C, 0x4C, 0x47, 0xC3, 0xC0, 0x00, - 0x0C, 0x00, 0x3C, 0x00, 0x78, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x18, 0x03, 0xF0, 0x00, 0xE0, 0x01, 0x80, 0x03, 0x00, - 0x0E, 0x00, 0x1C, 0x00, 0x30, 0x00, 0x60, 0x01, 0xC0, 0x03, 0x80, 0x06, - 0x00, 0x0C, 0x00, 0x38, 0x00, 0x70, 0x00, 0xC0, 0x03, 0x80, 0x06, 0x00, - 0x0C, 0x06, 0x30, 0x0C, 0xC0, 0x0F, 0x00, 0x00, 0x03, 0x00, 0x3E, 0x00, - 0x1C, 0x00, 0x38, 0x00, 0x60, 0x01, 0xC0, 0x03, 0x80, 0x07, 0x00, 0x0C, - 0x00, 0x38, 0xFC, 0x70, 0x60, 0xE1, 0x81, 0x86, 0x07, 0x10, 0x0E, 0x40, - 0x1B, 0x80, 0x3F, 0x00, 0xE7, 0x01, 0xCE, 0x03, 0x0C, 0x06, 0x1C, 0x5C, - 0x1D, 0x38, 0x3E, 0x60, 0x38, 0x03, 0x1F, 0x07, 0x07, 0x06, 0x0E, 0x0E, - 0x0E, 0x0C, 0x1C, 0x1C, 0x18, 0x38, 0x38, 0x38, 0x30, 0x70, 0x70, 0x70, - 0x64, 0xE4, 0xE8, 0xF0, 0xE0, 0x00, 0x06, 0x18, 0x1E, 0x3E, 0x3C, 0x3F, - 0x0E, 0x4C, 0x47, 0x0C, 0x8C, 0x8E, 0x1D, 0x0D, 0x0E, 0x1E, 0x1A, 0x0E, - 0x1C, 0x1E, 0x0C, 0x3C, 0x1C, 0x1C, 0x38, 0x38, 0x1C, 0x38, 0x38, 0x1C, - 0x30, 0x38, 0x18, 0x70, 0x30, 0x39, 0x70, 0x70, 0x32, 0x60, 0x70, 0x3C, - 0x60, 0x60, 0x38, 0x06, 0x0E, 0x1F, 0x1F, 0x83, 0x99, 0xC1, 0x98, 0xC1, - 0xD8, 0xE0, 0xE8, 0x70, 0x78, 0x30, 0x38, 0x38, 0x3C, 0x1C, 0x1C, 0x0E, - 0x0E, 0x06, 0x0E, 0x03, 0x17, 0x01, 0xB3, 0x80, 0xF1, 0x80, 0x70, 0x01, - 0xF0, 0x0E, 0x38, 0x38, 0x30, 0xE0, 0x73, 0x80, 0xEE, 0x01, 0xDC, 0x03, - 0xF8, 0x0F, 0xE0, 0x1D, 0xC0, 0x3B, 0x80, 0xE7, 0x03, 0x8E, 0x06, 0x0E, - 0x38, 0x07, 0xC0, 0x00, 0x00, 0xE7, 0xC0, 0x7C, 0xFE, 0x01, 0xD1, 0xF0, - 0x1E, 0x0F, 0x01, 0xC0, 0xF0, 0x38, 0x0F, 0x03, 0x80, 0xF0, 0x38, 0x0E, - 0x03, 0x01, 0xE0, 0x70, 0x1C, 0x07, 0x03, 0xC0, 0x60, 0x78, 0x06, 0x0F, - 0x00, 0xE1, 0xC0, 0x0F, 0xF0, 0x00, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xC0, - 0x00, 0x1C, 0x00, 0x01, 0x80, 0x00, 0x38, 0x00, 0x0F, 0xF0, 0x00, 0x00, - 0xF7, 0x03, 0xCE, 0x0F, 0x06, 0x1E, 0x06, 0x1C, 0x04, 0x3C, 0x04, 0x78, - 0x04, 0x78, 0x0C, 0xF0, 0x08, 0xF0, 0x18, 0xF0, 0x38, 0xF0, 0xF0, 0xF9, - 0x70, 0x7E, 0x70, 0x3C, 0x70, 0x00, 0x60, 0x00, 0xE0, 0x00, 0xE0, 0x00, - 0xC0, 0x01, 0xC0, 0x01, 0xC0, 0x0F, 0xF0, 0x7C, 0x70, 0xE7, 0xC7, 0x4C, - 0x34, 0x01, 0xA0, 0x1E, 0x00, 0xF0, 0x07, 0x00, 0x78, 0x03, 0x80, 0x1C, - 0x00, 0xC0, 0x0E, 0x00, 0x70, 0x03, 0x80, 0x00, 0x07, 0x88, 0x63, 0x86, - 0x0C, 0x30, 0x21, 0xC1, 0x0E, 0x00, 0x38, 0x00, 0xE0, 0x03, 0x80, 0x1C, - 0x10, 0x60, 0x83, 0x06, 0x18, 0x71, 0x82, 0x78, 0x00, 0x02, 0x03, 0x03, - 0x07, 0xF7, 0xF8, 0xE0, 0x60, 0x70, 0x38, 0x1C, 0x0C, 0x0E, 0x07, 0x03, - 0x01, 0x91, 0xC8, 0xF8, 0x78, 0x00, 0x1C, 0x0D, 0xF8, 0x38, 0x60, 0x70, - 0xC1, 0xC3, 0x83, 0x87, 0x07, 0x0C, 0x1E, 0x38, 0x78, 0x70, 0xB0, 0xE2, - 0x61, 0x8D, 0xC7, 0x33, 0x2C, 0xC6, 0x5F, 0x0F, 0x38, 0x1C, 0x00, 0x18, - 0x1B, 0xE0, 0x73, 0x81, 0xC6, 0x03, 0x18, 0x0C, 0x70, 0x21, 0xC1, 0x83, - 0x0C, 0x0C, 0x20, 0x31, 0x00, 0xC8, 0x03, 0x40, 0x0E, 0x00, 0x30, 0x00, - 0x80, 0x00, 0x18, 0x04, 0x1B, 0xE0, 0x30, 0x71, 0x80, 0xC1, 0xC6, 0x07, - 0x01, 0x1C, 0x2C, 0x08, 0x70, 0xB0, 0x20, 0xC4, 0xC1, 0x03, 0x21, 0x84, - 0x0D, 0x86, 0x20, 0x34, 0x19, 0x00, 0xE0, 0x68, 0x03, 0x81, 0xA0, 0x0C, - 0x07, 0x00, 0x30, 0x18, 0x00, 0x80, 0x40, 0x00, 0x03, 0x07, 0x0F, 0x8F, - 0x13, 0x93, 0x01, 0xB0, 0x01, 0xE0, 0x01, 0xC0, 0x00, 0xC0, 0x00, 0xC0, - 0x01, 0xC0, 0x03, 0xE0, 0x02, 0x60, 0x04, 0x62, 0x08, 0x64, 0xF0, 0x7C, - 0xE0, 0x30, 0x06, 0x06, 0x3F, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x81, - 0x03, 0x82, 0x01, 0x82, 0x01, 0xC4, 0x01, 0xC4, 0x01, 0xC8, 0x00, 0xC8, - 0x00, 0xD0, 0x00, 0xF0, 0x00, 0xE0, 0x00, 0xC0, 0x00, 0xC0, 0x00, 0x80, - 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x78, 0x00, 0x70, 0x00, 0x1F, 0xFC, - 0x7F, 0xE1, 0x01, 0x08, 0x08, 0x00, 0x40, 0x02, 0x00, 0x10, 0x00, 0x80, - 0x06, 0x00, 0x10, 0x00, 0x80, 0x04, 0x00, 0x38, 0x01, 0xF0, 0x0B, 0xE0, - 0x01, 0xC6, 0x03, 0x98, 0x03, 0x80, 0x00, 0x70, 0x0C, 0x01, 0x80, 0x38, - 0x03, 0x80, 0x30, 0x07, 0x00, 0x70, 0x07, 0x00, 0x60, 0x0E, 0x00, 0xE0, - 0x0C, 0x01, 0xC0, 0x1C, 0x07, 0x80, 0x30, 0x04, 0x00, 0x20, 0x03, 0x00, - 0x30, 0x07, 0x00, 0x70, 0x06, 0x00, 0x60, 0x0E, 0x00, 0xE0, 0x0C, 0x00, - 0xC0, 0x07, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0x00, 0xC0, 0x06, - 0x00, 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, 0x70, 0x07, 0x00, 0x70, 0x06, - 0x00, 0xE0, 0x0E, 0x00, 0xE0, 0x0C, 0x00, 0x40, 0x04, 0x00, 0xC0, 0x1E, - 0x03, 0x80, 0x38, 0x03, 0x00, 0x70, 0x07, 0x00, 0x70, 0x06, 0x00, 0xE0, - 0x0E, 0x00, 0xC0, 0x1C, 0x01, 0x80, 0x70, 0x00, 0x1E, 0x00, 0x3F, 0xE1, - 0xF8, 0x7F, 0xC0, 0x07, 0x80}; - -const GFXglyph FreeSerifItalic18pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 9, 0, 1}, // 0x20 ' ' - {0, 10, 23, 12, 1, -22}, // 0x21 '!' - {29, 12, 9, 12, 4, -22}, // 0x22 '"' - {43, 19, 23, 17, 0, -22}, // 0x23 '#' - {98, 15, 29, 17, 1, -25}, // 0x24 '$' - {153, 25, 23, 29, 3, -22}, // 0x25 '%' - {225, 22, 23, 27, 3, -22}, // 0x26 '&' - {289, 5, 9, 7, 4, -22}, // 0x27 ''' - {295, 9, 29, 12, 1, -22}, // 0x28 '(' - {328, 9, 29, 12, 1, -22}, // 0x29 ')' - {361, 12, 14, 18, 5, -22}, // 0x2A '*' - {382, 16, 18, 24, 4, -17}, // 0x2B '+' - {418, 5, 8, 9, -1, -2}, // 0x2C ',' - {423, 8, 2, 12, 2, -8}, // 0x2D '-' - {425, 4, 4, 9, 1, -3}, // 0x2E '.' - {427, 16, 23, 10, 0, -22}, // 0x2F '/' - {473, 17, 24, 17, 1, -23}, // 0x30 '0' - {524, 12, 24, 17, 2, -23}, // 0x31 '1' - {560, 16, 23, 17, 1, -22}, // 0x32 '2' - {606, 17, 24, 18, 0, -23}, // 0x33 '3' - {657, 17, 24, 17, 0, -23}, // 0x34 '4' - {708, 16, 23, 18, 0, -22}, // 0x35 '5' - {754, 17, 24, 18, 1, -23}, // 0x36 '6' - {805, 16, 23, 17, 3, -22}, // 0x37 '7' - {851, 16, 24, 18, 1, -23}, // 0x38 '8' - {899, 16, 24, 17, 1, -23}, // 0x39 '9' - {947, 7, 15, 9, 2, -14}, // 0x3A ':' - {961, 9, 20, 9, 1, -14}, // 0x3B ';' - {984, 18, 18, 20, 2, -17}, // 0x3C '<' - {1025, 18, 9, 23, 3, -12}, // 0x3D '=' - {1046, 18, 18, 20, 2, -17}, // 0x3E '>' - {1087, 12, 23, 16, 4, -22}, // 0x3F '?' - {1122, 24, 23, 27, 2, -22}, // 0x40 '@' - {1191, 21, 23, 23, 0, -22}, // 0x41 'A' - {1252, 21, 23, 21, 0, -22}, // 0x42 'B' - {1313, 21, 23, 21, 2, -22}, // 0x43 'C' - {1374, 25, 23, 25, 0, -22}, // 0x44 'D' - {1446, 22, 23, 20, 0, -22}, // 0x45 'E' - {1510, 22, 23, 20, 0, -22}, // 0x46 'F' - {1574, 23, 23, 24, 2, -22}, // 0x47 'G' - {1641, 27, 23, 25, 0, -22}, // 0x48 'H' - {1719, 14, 23, 11, 0, -22}, // 0x49 'I' - {1760, 17, 23, 15, 0, -22}, // 0x4A 'J' - {1809, 25, 23, 22, 0, -22}, // 0x4B 'K' - {1881, 20, 23, 20, 0, -22}, // 0x4C 'L' - {1939, 31, 23, 29, 0, -22}, // 0x4D 'M' - {2029, 26, 23, 24, 0, -22}, // 0x4E 'N' - {2104, 23, 23, 23, 1, -22}, // 0x4F 'O' - {2171, 22, 23, 20, 0, -22}, // 0x50 'P' - {2235, 23, 29, 23, 1, -22}, // 0x51 'Q' - {2319, 21, 23, 22, 0, -22}, // 0x52 'R' - {2380, 17, 23, 16, 0, -22}, // 0x53 'S' - {2429, 20, 23, 21, 3, -22}, // 0x54 'T' - {2487, 23, 23, 25, 4, -22}, // 0x55 'U' - {2554, 21, 23, 23, 5, -22}, // 0x56 'V' - {2615, 29, 23, 31, 5, -22}, // 0x57 'W' - {2699, 24, 23, 23, 0, -22}, // 0x58 'X' - {2768, 19, 23, 21, 4, -22}, // 0x59 'Y' - {2823, 22, 23, 20, 0, -22}, // 0x5A 'Z' - {2887, 13, 28, 14, 1, -22}, // 0x5B '[' - {2933, 12, 23, 17, 4, -22}, // 0x5C '\' - {2968, 12, 28, 14, 1, -22}, // 0x5D ']' - {3010, 15, 13, 15, 0, -22}, // 0x5E '^' - {3035, 18, 2, 17, 0, 3}, // 0x5F '_' - {3040, 6, 6, 9, 5, -22}, // 0x60 '`' - {3045, 15, 15, 17, 1, -14}, // 0x61 'a' - {3074, 16, 24, 17, 1, -23}, // 0x62 'b' - {3122, 13, 15, 14, 1, -14}, // 0x63 'c' - {3147, 17, 24, 18, 1, -23}, // 0x64 'd' - {3198, 13, 15, 14, 1, -14}, // 0x65 'e' - {3223, 20, 31, 15, -3, -23}, // 0x66 'f' - {3301, 16, 22, 15, -1, -14}, // 0x67 'g' - {3345, 16, 24, 17, 1, -23}, // 0x68 'h' - {3393, 9, 23, 9, 1, -22}, // 0x69 'i' - {3419, 15, 30, 10, -3, -22}, // 0x6A 'j' - {3476, 15, 24, 16, 1, -23}, // 0x6B 'k' - {3521, 8, 25, 9, 1, -23}, // 0x6C 'l' - {3546, 24, 15, 25, 0, -14}, // 0x6D 'm' - {3591, 17, 15, 17, 0, -14}, // 0x6E 'n' - {3623, 15, 15, 17, 1, -14}, // 0x6F 'o' - {3652, 20, 22, 16, -3, -14}, // 0x70 'p' - {3707, 16, 22, 17, 1, -14}, // 0x71 'q' - {3751, 13, 15, 13, 1, -14}, // 0x72 'r' - {3776, 13, 15, 12, 0, -14}, // 0x73 's' - {3801, 9, 18, 8, 1, -17}, // 0x74 't' - {3822, 15, 15, 17, 1, -14}, // 0x75 'u' - {3851, 14, 15, 16, 2, -14}, // 0x76 'v' - {3878, 22, 15, 24, 1, -14}, // 0x77 'w' - {3920, 16, 15, 15, -1, -14}, // 0x78 'x' - {3950, 16, 22, 16, 0, -14}, // 0x79 'y' - {3994, 14, 18, 14, 0, -14}, // 0x7A 'z' - {4026, 12, 30, 14, 2, -23}, // 0x7B '{' - {4071, 2, 23, 10, 4, -22}, // 0x7C '|' - {4077, 12, 31, 14, 0, -24}, // 0x7D '}' - {4124, 17, 4, 19, 1, -10}}; // 0x7E '~' - -const GFXfont FreeSerifItalic18pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic18pt7bBitmaps, - (GFXglyph *)FreeSerifItalic18pt7bGlyphs, 0x20, 0x7E, 42}; - -// Approx. 4805 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h deleted file mode 100644 index 98233a7..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic24pt7b.h +++ /dev/null @@ -1,739 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic24pt7bBitmaps[] PROGMEM = { - 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x01, 0xF0, 0x1E, 0x01, 0xE0, 0x1C, - 0x01, 0xC0, 0x3C, 0x03, 0x80, 0x38, 0x03, 0x80, 0x30, 0x07, 0x00, 0x60, - 0x06, 0x00, 0x60, 0x04, 0x00, 0x40, 0x0C, 0x00, 0x80, 0x08, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0xF8, 0x0F, 0x80, 0xF8, 0x07, 0x00, - 0x38, 0x1D, 0xE0, 0x77, 0x83, 0xDC, 0x0E, 0x70, 0x39, 0xC1, 0xEE, 0x07, - 0x38, 0x1C, 0xC0, 0x63, 0x01, 0x8C, 0x06, 0x20, 0x10, 0x00, 0x06, 0x03, - 0x00, 0x07, 0x03, 0x80, 0x03, 0x81, 0xC0, 0x03, 0x81, 0xC0, 0x01, 0xC0, - 0xE0, 0x00, 0xE0, 0x70, 0x00, 0xE0, 0x70, 0x00, 0x70, 0x38, 0x00, 0x30, - 0x18, 0x00, 0x38, 0x1C, 0x03, 0xFF, 0xFF, 0xE1, 0xFF, 0xFF, 0xF0, 0x0E, - 0x07, 0x00, 0x06, 0x03, 0x00, 0x07, 0x03, 0x80, 0x03, 0x81, 0xC0, 0x03, - 0x81, 0xC0, 0x01, 0xC0, 0xE0, 0x00, 0xE0, 0x70, 0x1F, 0xFF, 0xFF, 0x8F, - 0xFF, 0xFF, 0x80, 0x70, 0x38, 0x00, 0x38, 0x1C, 0x00, 0x1C, 0x0C, 0x00, - 0x1C, 0x0E, 0x00, 0x0E, 0x07, 0x00, 0x0E, 0x07, 0x00, 0x07, 0x03, 0x80, - 0x03, 0x81, 0xC0, 0x03, 0x81, 0xC0, 0x01, 0xC0, 0xE0, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x18, 0x00, 0x00, 0xC0, 0x00, 0xFF, 0x80, 0x1C, 0x2F, 0x01, - 0x83, 0x3C, 0x1C, 0x18, 0xE1, 0xC0, 0xC3, 0x0E, 0x06, 0x18, 0x70, 0x60, - 0x83, 0x83, 0x04, 0x1E, 0x18, 0x00, 0xF8, 0xC0, 0x03, 0xEC, 0x00, 0x0F, - 0xE0, 0x00, 0x3F, 0x00, 0x00, 0xFC, 0x00, 0x03, 0xF0, 0x00, 0x0F, 0xC0, - 0x00, 0x7F, 0x00, 0x03, 0x7C, 0x00, 0x19, 0xE0, 0x01, 0x87, 0x80, 0x0C, - 0x3C, 0x00, 0x60, 0xE2, 0x03, 0x07, 0x10, 0x30, 0x39, 0x81, 0x81, 0xCE, - 0x0C, 0x0C, 0x70, 0x60, 0xE3, 0xC6, 0x06, 0x0F, 0x30, 0x60, 0x1F, 0x9E, - 0x00, 0x3F, 0x80, 0x00, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, - 0x80, 0x00, 0x01, 0xF0, 0x00, 0xC0, 0x03, 0xFE, 0x01, 0xE0, 0x03, 0xC7, - 0x83, 0xE0, 0x03, 0xC0, 0x7F, 0x60, 0x03, 0xC0, 0x20, 0x70, 0x01, 0xC0, - 0x10, 0x30, 0x01, 0xE0, 0x08, 0x38, 0x00, 0xE0, 0x04, 0x18, 0x00, 0xF0, - 0x02, 0x1C, 0x00, 0x70, 0x02, 0x0C, 0x00, 0x38, 0x01, 0x0E, 0x00, 0x1C, - 0x01, 0x8E, 0x00, 0x0E, 0x00, 0x86, 0x00, 0x07, 0x00, 0x87, 0x03, 0xE1, - 0x80, 0xC3, 0x07, 0xFC, 0xE1, 0xC3, 0x87, 0xC6, 0x3F, 0x81, 0x87, 0x81, - 0x8F, 0x81, 0xC7, 0x80, 0x40, 0x00, 0xC3, 0xC0, 0x20, 0x00, 0xE3, 0xC0, - 0x10, 0x00, 0x61, 0xC0, 0x08, 0x00, 0x61, 0xE0, 0x04, 0x00, 0x70, 0xF0, - 0x06, 0x00, 0x30, 0x70, 0x02, 0x00, 0x38, 0x38, 0x03, 0x00, 0x18, 0x1C, - 0x01, 0x00, 0x1C, 0x0E, 0x01, 0x80, 0x0C, 0x07, 0x01, 0x80, 0x0E, 0x01, - 0xC3, 0x80, 0x06, 0x00, 0x7F, 0x80, 0x06, 0x00, 0x1F, 0x00, 0x07, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x71, - 0xC0, 0x00, 0x01, 0xC3, 0x80, 0x00, 0x0E, 0x0E, 0x00, 0x00, 0x38, 0x38, - 0x00, 0x01, 0xE0, 0xE0, 0x00, 0x07, 0x87, 0x00, 0x00, 0x1E, 0x18, 0x00, - 0x00, 0x78, 0xC0, 0x00, 0x01, 0xE6, 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7F, - 0xC1, 0xFE, 0x03, 0x9F, 0x03, 0xE0, 0x3C, 0x3C, 0x07, 0x01, 0xE0, 0xF8, - 0x1C, 0x0F, 0x03, 0xE0, 0xE0, 0x7C, 0x07, 0x83, 0x01, 0xE0, 0x1F, 0x1C, - 0x07, 0x80, 0x7C, 0x60, 0x3E, 0x00, 0xFB, 0x00, 0xF8, 0x03, 0xFC, 0x03, - 0xE0, 0x07, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0x3F, 0x00, 0x3E, 0x00, 0x7C, - 0x00, 0xFC, 0x01, 0xF8, 0x0F, 0xF0, 0x03, 0xF0, 0xF3, 0xF0, 0x87, 0xFF, - 0x07, 0xFC, 0x07, 0xF0, 0x07, 0xC0, 0x39, 0xDE, 0xE7, 0x3B, 0x9C, 0xC6, - 0x31, 0x00, 0x00, 0x10, 0x01, 0x00, 0x18, 0x01, 0x80, 0x18, 0x01, 0x80, - 0x1C, 0x00, 0xC0, 0x0E, 0x00, 0xE0, 0x07, 0x00, 0x78, 0x03, 0x80, 0x3C, - 0x01, 0xE0, 0x0E, 0x00, 0x70, 0x07, 0x80, 0x3C, 0x01, 0xE0, 0x0E, 0x00, - 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, 0x0E, - 0x00, 0x30, 0x01, 0x80, 0x0C, 0x00, 0x60, 0x01, 0x80, 0x0C, 0x00, 0x60, - 0x01, 0x00, 0x0C, 0x00, 0x20, 0x00, 0x00, 0x80, 0x06, 0x00, 0x10, 0x00, - 0x80, 0x06, 0x00, 0x30, 0x00, 0xC0, 0x06, 0x00, 0x30, 0x01, 0x80, 0x0C, - 0x00, 0x70, 0x03, 0x80, 0x1C, 0x00, 0xE0, 0x07, 0x00, 0x38, 0x01, 0xC0, - 0x1E, 0x00, 0xF0, 0x07, 0x80, 0x3C, 0x01, 0xC0, 0x1E, 0x00, 0xF0, 0x07, - 0x80, 0x38, 0x03, 0xC0, 0x1C, 0x00, 0xE0, 0x0E, 0x00, 0x60, 0x07, 0x00, - 0x30, 0x03, 0x00, 0x30, 0x03, 0x00, 0x10, 0x01, 0x00, 0x00, 0x01, 0x00, - 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, 0xE1, 0x07, 0xE1, 0x0F, - 0xF1, 0x1F, 0x19, 0x30, 0x07, 0xC0, 0x03, 0x80, 0x0D, 0x60, 0x79, 0x3C, - 0xF1, 0x1F, 0xE1, 0x0F, 0xE1, 0x07, 0x03, 0x80, 0x03, 0x80, 0x03, 0x80, - 0x03, 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, - 0xC0, 0x00, 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, - 0x00, 0x00, 0x38, 0x00, 0x00, 0x70, 0x03, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xE0, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x00, - 0x00, 0x38, 0x00, 0x00, 0x70, 0x00, 0x00, 0xE0, 0x00, 0x01, 0xC0, 0x00, - 0x03, 0x80, 0x00, 0x07, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x1C, 0x7C, 0xF9, - 0xF1, 0xE1, 0xC3, 0x0C, 0x10, 0xC1, 0x00, 0x7F, 0xFF, 0xFF, 0xFF, 0x00, - 0x77, 0xFF, 0xF7, 0x00, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x3C, - 0x00, 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, 0x00, - 0xF0, 0x00, 0x07, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x3C, 0x00, - 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, - 0x00, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, 0x3C, 0x00, 0x01, - 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x70, 0x00, - 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, - 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x03, 0x86, - 0x00, 0x30, 0x18, 0x03, 0x00, 0xC0, 0x38, 0x03, 0x03, 0x80, 0x18, 0x38, - 0x00, 0xC1, 0xC0, 0x07, 0x1C, 0x00, 0x38, 0xE0, 0x01, 0xCF, 0x00, 0x0E, - 0x70, 0x00, 0x77, 0x80, 0x07, 0xBC, 0x00, 0x3D, 0xE0, 0x01, 0xEE, 0x00, - 0x0F, 0xF0, 0x00, 0x77, 0x80, 0x07, 0xBC, 0x00, 0x3D, 0xC0, 0x01, 0xCE, - 0x00, 0x1E, 0x70, 0x00, 0xF3, 0x80, 0x07, 0x1C, 0x00, 0x78, 0xE0, 0x03, - 0x83, 0x00, 0x38, 0x18, 0x03, 0x80, 0xE0, 0x18, 0x03, 0x01, 0x80, 0x0C, - 0x38, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x80, 0x1F, 0xC0, 0x3F, 0xE0, - 0x01, 0xF0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x1E, - 0x00, 0x0F, 0x00, 0x07, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x00, - 0xF0, 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x1E, 0x00, - 0x0F, 0x00, 0x07, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x01, 0xE0, 0x01, 0xE0, - 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x3C, 0x00, 0x3F, 0x01, 0xFF, - 0xF0, 0x00, 0x3F, 0x00, 0x07, 0xFE, 0x00, 0x7F, 0xF8, 0x07, 0x07, 0xE0, - 0x60, 0x1F, 0x06, 0x00, 0x7C, 0x20, 0x01, 0xE0, 0x00, 0x0F, 0x00, 0x00, - 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x0E, 0x00, - 0x00, 0xF0, 0x00, 0x07, 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x70, - 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x00, 0x03, - 0x00, 0x00, 0x30, 0x00, 0x03, 0x00, 0x00, 0x30, 0x01, 0x03, 0x00, 0x08, - 0x30, 0x00, 0xC3, 0xFF, 0xFC, 0x3F, 0xFF, 0xE3, 0xFF, 0xFE, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0xFF, 0xC0, 0x06, 0x0F, 0x80, 0x30, 0x1E, 0x01, 0x80, - 0x3C, 0x00, 0x00, 0xF0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x78, - 0x00, 0x01, 0xE0, 0x00, 0x0E, 0x00, 0x00, 0xF0, 0x00, 0x0E, 0x00, 0x01, - 0xF8, 0x00, 0x3F, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x07, 0xC0, 0x00, 0x0F, - 0x80, 0x00, 0x3E, 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x07, 0x80, - 0x00, 0x1E, 0x00, 0x00, 0x70, 0x00, 0x01, 0xC0, 0x00, 0x07, 0x00, 0x00, - 0x38, 0x00, 0x00, 0xC0, 0x70, 0x06, 0x03, 0xF8, 0x70, 0x07, 0xFF, 0x00, - 0x0F, 0xF0, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x70, 0x00, 0x03, 0xC0, - 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xE0, 0x00, 0x37, 0x80, 0x00, - 0xDC, 0x00, 0x06, 0x70, 0x00, 0x33, 0xC0, 0x01, 0x8F, 0x00, 0x0C, 0x38, - 0x00, 0x60, 0xE0, 0x03, 0x07, 0x80, 0x18, 0x1E, 0x00, 0xC0, 0x70, 0x06, - 0x03, 0xC0, 0x30, 0x0F, 0x01, 0x80, 0x38, 0x0C, 0x00, 0xE0, 0x70, 0x07, - 0x81, 0xFF, 0xFF, 0xEF, 0xFF, 0xFF, 0xBF, 0xFF, 0xFE, 0x00, 0x0F, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x80, 0x00, 0x1E, 0x00, 0x00, - 0x70, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x00, 0x00, 0x3F, 0xFC, 0x00, 0xFF, - 0xF0, 0x07, 0xFF, 0x80, 0x10, 0x00, 0x00, 0x40, 0x00, 0x02, 0x00, 0x00, - 0x08, 0x00, 0x00, 0x70, 0x00, 0x01, 0xF8, 0x00, 0x0F, 0xF0, 0x00, 0x3F, - 0xF0, 0x00, 0x1F, 0xE0, 0x00, 0x1F, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3C, - 0x00, 0x00, 0x78, 0x00, 0x01, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0E, 0x00, - 0x00, 0x38, 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0C, 0x00, 0x00, - 0x70, 0x00, 0x01, 0xC0, 0x00, 0x06, 0x00, 0x00, 0x30, 0x00, 0x01, 0x80, - 0x70, 0x0E, 0x03, 0xF0, 0xE0, 0x07, 0xFF, 0x00, 0x0F, 0xE0, 0x00, 0x00, - 0x00, 0x0E, 0x00, 0x01, 0xF0, 0x00, 0x1F, 0x00, 0x00, 0xF8, 0x00, 0x03, - 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x7C, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xC0, - 0x00, 0x0F, 0x80, 0x00, 0x3E, 0x00, 0x00, 0xF9, 0xF8, 0x01, 0xFF, 0xFC, - 0x07, 0xE0, 0x7C, 0x0F, 0x80, 0x7C, 0x3E, 0x00, 0x78, 0x78, 0x00, 0x78, - 0xF0, 0x00, 0xF3, 0xC0, 0x01, 0xE7, 0x80, 0x03, 0xCF, 0x00, 0x07, 0x9C, - 0x00, 0x0F, 0x38, 0x00, 0x3E, 0x70, 0x00, 0x78, 0xE0, 0x00, 0xF1, 0xC0, - 0x03, 0xC1, 0x80, 0x07, 0x83, 0x00, 0x1E, 0x03, 0x00, 0x38, 0x06, 0x01, - 0xE0, 0x03, 0x07, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0xFF, 0xF9, 0xFF, 0xFF, - 0xCF, 0xFF, 0xFC, 0xE0, 0x00, 0xCC, 0x00, 0x0E, 0x40, 0x00, 0x60, 0x00, - 0x07, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x38, 0x00, 0x01, 0x80, - 0x00, 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0xE0, 0x00, 0x07, - 0x00, 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x38, 0x00, 0x03, 0x80, 0x00, - 0x1C, 0x00, 0x01, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x0E, 0x00, - 0x00, 0x70, 0x00, 0x07, 0x00, 0x00, 0x78, 0x00, 0x03, 0x80, 0x00, 0x38, - 0x00, 0x01, 0xC0, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x03, 0x83, - 0x80, 0x1C, 0x03, 0x00, 0xE0, 0x0E, 0x07, 0x00, 0x1C, 0x1C, 0x00, 0x70, - 0x70, 0x01, 0xC1, 0xC0, 0x07, 0x07, 0x80, 0x1C, 0x1E, 0x00, 0xE0, 0x3C, - 0x07, 0x80, 0xFC, 0x38, 0x01, 0xFB, 0xC0, 0x03, 0xF8, 0x00, 0x0F, 0xE0, - 0x00, 0x7F, 0xC0, 0x07, 0x1F, 0x80, 0x78, 0x3F, 0x03, 0x80, 0x7C, 0x1E, - 0x00, 0xF8, 0x70, 0x01, 0xE3, 0x80, 0x03, 0xCE, 0x00, 0x07, 0x38, 0x00, - 0x1C, 0xE0, 0x00, 0x73, 0x80, 0x01, 0xCE, 0x00, 0x06, 0x1C, 0x00, 0x38, - 0x70, 0x01, 0xC0, 0xE0, 0x0E, 0x01, 0xE0, 0xE0, 0x01, 0xFE, 0x00, 0x00, - 0x1F, 0x80, 0x03, 0xC3, 0x00, 0x1C, 0x02, 0x00, 0xE0, 0x0C, 0x07, 0x00, - 0x18, 0x3C, 0x00, 0x60, 0xE0, 0x01, 0xC7, 0x80, 0x07, 0x1E, 0x00, 0x1C, - 0xF0, 0x00, 0x73, 0xC0, 0x01, 0xCF, 0x00, 0x07, 0x3C, 0x00, 0x3C, 0xF0, - 0x00, 0xF3, 0xC0, 0x03, 0xCF, 0x00, 0x1E, 0x1E, 0x00, 0x78, 0x7C, 0x03, - 0xE0, 0xF8, 0x3F, 0x01, 0xFF, 0xBC, 0x03, 0xF1, 0xE0, 0x00, 0x0F, 0x80, - 0x00, 0x3C, 0x00, 0x01, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x7C, 0x00, 0x03, - 0xE0, 0x00, 0x1F, 0x00, 0x00, 0xF0, 0x00, 0x0F, 0x80, 0x00, 0x78, 0x00, - 0x0F, 0x80, 0x00, 0xE0, 0x00, 0x00, 0x07, 0x07, 0xC3, 0xE1, 0xF0, 0x70, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x38, 0x3E, 0x1F, 0x0F, 0x83, 0x80, 0x01, 0xC0, 0x7C, 0x0F, 0x81, - 0xF0, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x07, 0x80, 0xF8, 0x1F, 0x01, 0xE0, - 0x1C, 0x03, 0x00, 0xC0, 0x18, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x0C, 0x00, 0x00, 0xF8, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0xC0, - 0x01, 0xFC, 0x00, 0x0F, 0xE0, 0x00, 0xFF, 0x00, 0x07, 0xF8, 0x00, 0x3F, - 0xC0, 0x01, 0xFC, 0x00, 0x07, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x1F, 0x80, - 0x00, 0x3F, 0xC0, 0x00, 0x1F, 0xE0, 0x00, 0x07, 0xF0, 0x00, 0x03, 0xF8, - 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x7F, 0x80, 0x00, 0x1F, - 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x07, 0x00, 0x00, 0x02, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x80, 0x00, 0x00, - 0xE0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x3F, 0x80, 0x00, - 0x0F, 0xF0, 0x00, 0x03, 0xFC, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x07, 0xF0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x1F, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0xFE, 0x00, 0x07, 0xF8, 0x00, 0x1F, 0xE0, - 0x00, 0x7F, 0x80, 0x01, 0xFC, 0x00, 0x07, 0xF0, 0x00, 0x3F, 0xC0, 0x00, - 0xFF, 0x00, 0x00, 0xFC, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x80, 0x00, 0x00, - 0x03, 0xF0, 0x06, 0x1C, 0x0C, 0x0E, 0x1C, 0x06, 0x1C, 0x07, 0x1C, 0x07, - 0x1C, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x1E, 0x00, 0x3C, - 0x00, 0x38, 0x00, 0x70, 0x00, 0xE0, 0x01, 0xC0, 0x03, 0x80, 0x03, 0x00, - 0x06, 0x00, 0x04, 0x00, 0x08, 0x00, 0x08, 0x00, 0x08, 0x00, 0x10, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0xF8, 0x00, - 0xF8, 0x00, 0xF8, 0x00, 0x70, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x1F, - 0xFF, 0x80, 0x00, 0x3F, 0x01, 0xF0, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x7C, - 0x00, 0x07, 0x80, 0x7C, 0x00, 0x00, 0xE0, 0x3C, 0x00, 0x00, 0x38, 0x3C, - 0x00, 0x00, 0x0C, 0x3C, 0x00, 0x78, 0x07, 0x1E, 0x00, 0xFE, 0xE1, 0x9E, - 0x00, 0xF1, 0xF0, 0xEF, 0x00, 0xE0, 0xF0, 0x37, 0x80, 0xE0, 0x38, 0x1F, - 0x80, 0x70, 0x1C, 0x0F, 0xC0, 0x70, 0x1E, 0x07, 0xE0, 0x38, 0x0F, 0x03, - 0xF0, 0x18, 0x07, 0x01, 0xF8, 0x1C, 0x03, 0x80, 0xFC, 0x0E, 0x01, 0xC0, - 0xDE, 0x07, 0x01, 0xE0, 0x6F, 0x03, 0x80, 0xE0, 0x73, 0xC1, 0xC0, 0xF0, - 0x31, 0xE0, 0xF0, 0xF8, 0x30, 0xF0, 0x38, 0xDC, 0x30, 0x3C, 0x1F, 0xC7, - 0xF0, 0x0E, 0x07, 0x81, 0xF0, 0x07, 0x80, 0x00, 0x00, 0x01, 0xE0, 0x00, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x01, 0x00, 0x03, 0xF0, - 0x0F, 0x80, 0x00, 0x7F, 0xFF, 0x00, 0x00, 0x07, 0xFC, 0x00, 0x00, 0x00, - 0x00, 0x18, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, - 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x03, 0xF0, - 0x00, 0x00, 0x37, 0x80, 0x00, 0x03, 0x3C, 0x00, 0x00, 0x19, 0xE0, 0x00, - 0x01, 0x8F, 0x80, 0x00, 0x08, 0x7C, 0x00, 0x00, 0xC3, 0xE0, 0x00, 0x0C, - 0x0F, 0x00, 0x00, 0x60, 0x78, 0x00, 0x06, 0x03, 0xC0, 0x00, 0x20, 0x1F, - 0x00, 0x03, 0x00, 0xF8, 0x00, 0x3F, 0xFF, 0xC0, 0x01, 0xFF, 0xFE, 0x00, - 0x18, 0x00, 0xF0, 0x00, 0xC0, 0x07, 0x80, 0x0C, 0x00, 0x3E, 0x00, 0xE0, - 0x01, 0xF0, 0x06, 0x00, 0x0F, 0x80, 0x70, 0x00, 0x3C, 0x03, 0x00, 0x01, - 0xE0, 0x38, 0x00, 0x0F, 0x83, 0xC0, 0x00, 0x7C, 0x3E, 0x00, 0x07, 0xF3, - 0xFC, 0x01, 0xFF, 0xE0, 0x03, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xF8, 0x00, - 0x3E, 0x07, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x3E, 0x01, 0xF0, 0x03, 0xC0, - 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x78, 0x01, 0xF0, - 0x07, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x00, 0xF0, - 0x3F, 0x00, 0x1F, 0xFF, 0x80, 0x01, 0xFF, 0xFC, 0x00, 0x1F, 0x07, 0xE0, - 0x01, 0xE0, 0x1F, 0x00, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x07, 0xC0, 0x3C, - 0x00, 0x7C, 0x03, 0xC0, 0x07, 0xC0, 0x7C, 0x00, 0x7C, 0x07, 0xC0, 0x07, - 0xC0, 0x78, 0x00, 0x7C, 0x0F, 0x80, 0x0F, 0x80, 0xF8, 0x00, 0xF8, 0x0F, - 0x00, 0x1F, 0x00, 0xF0, 0x03, 0xE0, 0x1F, 0x81, 0xFC, 0x03, 0xFF, 0xFF, - 0x80, 0xFF, 0xFF, 0xC0, 0x00, 0x00, 0x01, 0xFE, 0x04, 0x00, 0x3F, 0xFF, - 0xE0, 0x03, 0xF0, 0x1F, 0x80, 0x1F, 0x00, 0x3E, 0x00, 0xF0, 0x00, 0x78, - 0x0F, 0x80, 0x00, 0xE0, 0x3C, 0x00, 0x03, 0x81, 0xF0, 0x00, 0x04, 0x0F, - 0x80, 0x00, 0x10, 0x7C, 0x00, 0x00, 0x41, 0xF0, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x00, 0x3E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x07, 0xC0, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x01, 0xF0, 0x00, 0x02, 0x07, 0xC0, 0x00, 0x18, 0x0F, 0x80, - 0x00, 0xC0, 0x3E, 0x00, 0x06, 0x00, 0x7C, 0x00, 0x70, 0x00, 0xFC, 0x07, - 0x00, 0x00, 0xFF, 0xF8, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x03, 0xFF, 0xFF, - 0x00, 0x00, 0x3F, 0xFF, 0xE0, 0x00, 0x0F, 0xC0, 0xFC, 0x00, 0x07, 0xC0, - 0x1F, 0x00, 0x03, 0xE0, 0x07, 0xC0, 0x01, 0xE0, 0x01, 0xF0, 0x01, 0xF0, - 0x00, 0x7C, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x7C, 0x00, 0x0F, 0x00, 0x3C, - 0x00, 0x07, 0xC0, 0x3E, 0x00, 0x03, 0xE0, 0x1F, 0x00, 0x01, 0xF0, 0x0F, - 0x00, 0x00, 0xF8, 0x0F, 0x80, 0x00, 0x7C, 0x07, 0xC0, 0x00, 0x3E, 0x03, - 0xE0, 0x00, 0x1F, 0x01, 0xE0, 0x00, 0x1F, 0x81, 0xF0, 0x00, 0x0F, 0x80, - 0xF8, 0x00, 0x07, 0xC0, 0x78, 0x00, 0x03, 0xE0, 0x3C, 0x00, 0x03, 0xE0, - 0x3E, 0x00, 0x01, 0xF0, 0x1F, 0x00, 0x01, 0xF0, 0x0F, 0x00, 0x01, 0xF0, - 0x0F, 0x80, 0x01, 0xF8, 0x07, 0xC0, 0x01, 0xF0, 0x03, 0xE0, 0x01, 0xF0, - 0x01, 0xE0, 0x03, 0xF0, 0x01, 0xF8, 0x0F, 0xE0, 0x01, 0xFF, 0xFF, 0xC0, - 0x03, 0xFF, 0xFE, 0x00, 0x00, 0x03, 0xFF, 0xFF, 0xF8, 0x03, 0xFF, 0xFF, - 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x00, 0x30, 0x03, 0xE0, 0x01, 0x00, - 0x1E, 0x00, 0x08, 0x01, 0xF0, 0x00, 0x40, 0x0F, 0x80, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x03, 0xC0, 0x10, 0x00, 0x3E, 0x01, 0x80, 0x01, 0xF0, 0x08, - 0x00, 0x0F, 0x01, 0xC0, 0x00, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xF0, 0x00, - 0x3E, 0x07, 0x00, 0x01, 0xE0, 0x18, 0x00, 0x1F, 0x00, 0xC0, 0x00, 0xF8, - 0x04, 0x00, 0x07, 0x80, 0x20, 0x00, 0x3C, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x08, 0x0F, 0x80, 0x00, 0xC0, - 0x7C, 0x00, 0x0E, 0x03, 0xC0, 0x00, 0xE0, 0x1E, 0x00, 0x0F, 0x01, 0xF8, - 0x03, 0xF8, 0x1F, 0xFF, 0xFF, 0x83, 0xFF, 0xFF, 0xFC, 0x00, 0x03, 0xFF, - 0xFF, 0xF8, 0x03, 0xFF, 0xFF, 0xC0, 0x0F, 0x80, 0x1E, 0x00, 0x7C, 0x00, - 0x30, 0x03, 0xE0, 0x01, 0x00, 0x1E, 0x00, 0x08, 0x01, 0xF0, 0x00, 0x40, - 0x0F, 0x80, 0x02, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x3E, - 0x00, 0x80, 0x01, 0xF0, 0x0C, 0x00, 0x0F, 0x00, 0xC0, 0x00, 0xF8, 0x0E, - 0x00, 0x07, 0xFF, 0xF0, 0x00, 0x3F, 0xFF, 0x00, 0x01, 0xE0, 0x18, 0x00, - 0x1F, 0x00, 0xC0, 0x00, 0xF8, 0x06, 0x00, 0x07, 0xC0, 0x20, 0x00, 0x3C, - 0x01, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0x0F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xFF, - 0xC0, 0x00, 0x00, 0x00, 0x01, 0xFE, 0x02, 0x00, 0x1F, 0xFF, 0x8C, 0x00, - 0xFC, 0x07, 0xF8, 0x03, 0xE0, 0x03, 0xF0, 0x0F, 0x00, 0x03, 0xC0, 0x3C, - 0x00, 0x03, 0x80, 0xF0, 0x00, 0x07, 0x03, 0xC0, 0x00, 0x0E, 0x0F, 0x80, - 0x00, 0x08, 0x3E, 0x00, 0x00, 0x10, 0x7C, 0x00, 0x00, 0x01, 0xF0, 0x00, - 0x00, 0x03, 0xE0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x3F, - 0xFF, 0xE0, 0x00, 0x0F, 0xE7, 0xC0, 0x00, 0x0F, 0x0F, 0x80, 0x00, 0x1E, - 0x1F, 0x00, 0x00, 0x7C, 0x3E, 0x00, 0x00, 0xF0, 0x7C, 0x00, 0x01, 0xE0, - 0x78, 0x00, 0x03, 0xC0, 0xF8, 0x00, 0x0F, 0x01, 0xF0, 0x00, 0x1E, 0x01, - 0xF0, 0x00, 0x3C, 0x01, 0xE0, 0x00, 0xF8, 0x01, 0xF0, 0x03, 0xE0, 0x01, - 0xF8, 0x0F, 0x80, 0x00, 0xFF, 0xFC, 0x00, 0x00, 0x7F, 0xC0, 0x00, 0x03, - 0xFF, 0xE0, 0x7F, 0xF0, 0x07, 0xF8, 0x01, 0xFC, 0x00, 0x3E, 0x00, 0x0F, - 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, - 0x78, 0x00, 0x1E, 0x00, 0x07, 0x80, 0x01, 0xE0, 0x00, 0xF8, 0x00, 0x3E, - 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, - 0x03, 0xC0, 0x01, 0xFF, 0xFF, 0xFC, 0x00, 0x1F, 0xFF, 0xFF, 0x80, 0x01, - 0xE0, 0x00, 0x78, 0x00, 0x3E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF8, - 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x00, 0x7C, 0x00, - 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, - 0x80, 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x03, 0xF8, 0x00, - 0xFE, 0x00, 0xFF, 0xE0, 0x7F, 0xFC, 0x00, 0x01, 0xFF, 0xC0, 0x1F, 0xE0, - 0x03, 0xE0, 0x00, 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x07, 0xC0, 0x01, - 0xF0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, - 0x00, 0x7C, 0x00, 0x1F, 0x00, 0x07, 0xC0, 0x01, 0xE0, 0x00, 0xF8, 0x00, - 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x01, 0xF0, 0x00, 0x7C, 0x00, 0x1E, - 0x00, 0x0F, 0x80, 0x03, 0xE0, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x1F, 0x00, - 0x0F, 0xE0, 0x0F, 0xFE, 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x07, 0xF0, 0x00, - 0x07, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1E, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x03, 0xC0, 0x00, 0x0F, 0x80, 0x00, 0x1F, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x78, 0x00, 0x01, 0xF0, 0x00, 0x03, 0xE0, - 0x00, 0x07, 0x80, 0x00, 0x1F, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x78, 0x00, - 0x00, 0xF0, 0x00, 0x03, 0xE0, 0x00, 0x07, 0xC0, 0x00, 0x0F, 0x00, 0x00, - 0x1E, 0x00, 0x00, 0x7C, 0x00, 0x00, 0xF0, 0x01, 0xC1, 0xE0, 0x07, 0xC7, - 0x80, 0x0F, 0x8F, 0x00, 0x1F, 0x3C, 0x00, 0x1F, 0xF0, 0x00, 0x0F, 0x80, - 0x00, 0x01, 0xFF, 0xE1, 0xFF, 0x80, 0x3F, 0xC0, 0x1F, 0x80, 0x0F, 0x80, - 0x0F, 0x00, 0x07, 0xC0, 0x0F, 0x00, 0x03, 0xC0, 0x0F, 0x00, 0x01, 0xE0, - 0x0E, 0x00, 0x01, 0xF0, 0x0E, 0x00, 0x00, 0xF8, 0x0E, 0x00, 0x00, 0x78, - 0x1C, 0x00, 0x00, 0x3C, 0x1C, 0x00, 0x00, 0x3E, 0x3C, 0x00, 0x00, 0x1F, - 0x38, 0x00, 0x00, 0x0F, 0x38, 0x00, 0x00, 0x07, 0xF8, 0x00, 0x00, 0x07, - 0xFE, 0x00, 0x00, 0x03, 0xDF, 0x00, 0x00, 0x01, 0xE7, 0xC0, 0x00, 0x01, - 0xF3, 0xE0, 0x00, 0x00, 0xF8, 0xF8, 0x00, 0x00, 0x78, 0x3C, 0x00, 0x00, - 0x3C, 0x1F, 0x00, 0x00, 0x3E, 0x07, 0xC0, 0x00, 0x1F, 0x03, 0xE0, 0x00, - 0x0F, 0x00, 0xF8, 0x00, 0x0F, 0x80, 0x3C, 0x00, 0x07, 0xC0, 0x1F, 0x00, - 0x03, 0xC0, 0x07, 0x80, 0x01, 0xE0, 0x03, 0xE0, 0x01, 0xF0, 0x01, 0xF8, - 0x01, 0xFC, 0x01, 0xFE, 0x03, 0xFF, 0xC3, 0xFF, 0xE0, 0x03, 0xFF, 0xE0, - 0x00, 0x0F, 0xF0, 0x00, 0x00, 0xFC, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, - 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, - 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, - 0x0F, 0x80, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x80, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x01, - 0xF0, 0x00, 0x08, 0x3C, 0x00, 0x03, 0x0F, 0x80, 0x00, 0x41, 0xF0, 0x00, - 0x18, 0x3C, 0x00, 0x07, 0x07, 0x80, 0x01, 0xC1, 0xF8, 0x01, 0xF8, 0x7F, - 0xFF, 0xFF, 0x3F, 0xFF, 0xFF, 0xC0, 0x01, 0xFF, 0x00, 0x00, 0x3F, 0xC0, - 0x0F, 0xC0, 0x00, 0x1F, 0xC0, 0x01, 0xF0, 0x00, 0x0F, 0xE0, 0x00, 0xFC, - 0x00, 0x03, 0xF0, 0x00, 0x3F, 0x00, 0x01, 0xFC, 0x00, 0x0F, 0xC0, 0x00, - 0xFF, 0x00, 0x02, 0xF0, 0x00, 0x37, 0x80, 0x01, 0xBC, 0x00, 0x19, 0xE0, - 0x00, 0x6F, 0x80, 0x0E, 0xF8, 0x00, 0x1B, 0xE0, 0x03, 0x3E, 0x00, 0x04, - 0x78, 0x01, 0x8F, 0x00, 0x03, 0x1E, 0x00, 0xE7, 0xC0, 0x00, 0xC7, 0x80, - 0x31, 0xF0, 0x00, 0x21, 0xE0, 0x18, 0x78, 0x00, 0x18, 0x78, 0x0E, 0x1E, - 0x00, 0x06, 0x1E, 0x03, 0x0F, 0x80, 0x01, 0x87, 0x81, 0x83, 0xE0, 0x00, - 0x41, 0xF0, 0xE0, 0xF0, 0x00, 0x30, 0x7C, 0x30, 0x3C, 0x00, 0x0C, 0x0F, - 0x18, 0x1F, 0x00, 0x03, 0x03, 0xCE, 0x07, 0xC0, 0x01, 0x80, 0xF3, 0x01, - 0xE0, 0x00, 0x60, 0x3D, 0x80, 0xF8, 0x00, 0x18, 0x0F, 0xE0, 0x3E, 0x00, - 0x0C, 0x03, 0xF0, 0x0F, 0x00, 0x03, 0x00, 0xF8, 0x03, 0xC0, 0x00, 0xC0, - 0x3E, 0x01, 0xF0, 0x00, 0x70, 0x0F, 0x00, 0x7C, 0x00, 0x1C, 0x01, 0x80, - 0x3F, 0x00, 0x0F, 0x80, 0x60, 0x1F, 0xC0, 0x0F, 0xF8, 0x10, 0x1F, 0xFE, - 0x00, 0x03, 0xFC, 0x00, 0x3F, 0xE0, 0x1F, 0xC0, 0x01, 0xF8, 0x00, 0xF8, - 0x00, 0x1C, 0x00, 0x1F, 0x00, 0x03, 0x80, 0x03, 0xF0, 0x00, 0x60, 0x00, - 0x7E, 0x00, 0x0C, 0x00, 0x0B, 0xE0, 0x03, 0x80, 0x03, 0x7C, 0x00, 0x60, - 0x00, 0x67, 0x80, 0x0C, 0x00, 0x0C, 0xF8, 0x03, 0x80, 0x03, 0x0F, 0x00, - 0x70, 0x00, 0x61, 0xF0, 0x0C, 0x00, 0x0C, 0x3E, 0x01, 0x80, 0x01, 0x83, - 0xC0, 0x70, 0x00, 0x60, 0x7C, 0x0C, 0x00, 0x0C, 0x07, 0x81, 0x80, 0x01, - 0x80, 0xF8, 0x30, 0x00, 0x60, 0x0F, 0x0E, 0x00, 0x0C, 0x01, 0xE1, 0x80, - 0x01, 0x80, 0x3E, 0x30, 0x00, 0x30, 0x03, 0xCE, 0x00, 0x0C, 0x00, 0x7D, - 0x80, 0x01, 0x80, 0x07, 0xB0, 0x00, 0x30, 0x00, 0xF6, 0x00, 0x0E, 0x00, - 0x1F, 0xC0, 0x01, 0x80, 0x01, 0xF0, 0x00, 0x30, 0x00, 0x3E, 0x00, 0x0E, - 0x00, 0x03, 0xC0, 0x01, 0xC0, 0x00, 0x70, 0x00, 0x7C, 0x00, 0x06, 0x00, - 0x3F, 0xE0, 0x00, 0xC0, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0xFE, - 0x00, 0x00, 0x1F, 0xFE, 0x00, 0x01, 0xF0, 0x7C, 0x00, 0x0F, 0x00, 0x78, - 0x00, 0x78, 0x00, 0xF0, 0x07, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x07, 0x81, - 0xF0, 0x00, 0x1E, 0x07, 0xC0, 0x00, 0x7C, 0x3E, 0x00, 0x01, 0xF1, 0xF0, - 0x00, 0x07, 0xC7, 0xC0, 0x00, 0x1F, 0x3F, 0x00, 0x00, 0x7C, 0xF8, 0x00, - 0x01, 0xF7, 0xE0, 0x00, 0x0F, 0xDF, 0x00, 0x00, 0x3F, 0x7C, 0x00, 0x00, - 0xFB, 0xF0, 0x00, 0x07, 0xEF, 0xC0, 0x00, 0x1F, 0xBE, 0x00, 0x00, 0x7C, - 0xF8, 0x00, 0x03, 0xF3, 0xE0, 0x00, 0x0F, 0x8F, 0x80, 0x00, 0x3E, 0x3E, - 0x00, 0x01, 0xF0, 0xF8, 0x00, 0x0F, 0x81, 0xE0, 0x00, 0x3E, 0x07, 0x80, - 0x01, 0xF0, 0x1F, 0x00, 0x0F, 0x80, 0x3C, 0x00, 0x7C, 0x00, 0x78, 0x03, - 0xC0, 0x00, 0xF8, 0x3E, 0x00, 0x01, 0xFF, 0xE0, 0x00, 0x01, 0xFC, 0x00, - 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x0F, 0x81, 0xF8, - 0x00, 0x7C, 0x03, 0xE0, 0x03, 0xE0, 0x1F, 0x00, 0x1E, 0x00, 0x7C, 0x01, - 0xF0, 0x03, 0xE0, 0x0F, 0x80, 0x1F, 0x00, 0x78, 0x00, 0xF8, 0x03, 0xC0, - 0x07, 0xC0, 0x3E, 0x00, 0x3C, 0x01, 0xF0, 0x03, 0xE0, 0x0F, 0x00, 0x3E, - 0x00, 0xF8, 0x03, 0xF0, 0x07, 0xC0, 0x7E, 0x00, 0x3F, 0xFF, 0xE0, 0x01, - 0xEF, 0xF8, 0x00, 0x1F, 0x00, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x07, 0x80, - 0x00, 0x00, 0x3C, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x00, 0xF0, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x1F, 0xC0, - 0x00, 0x03, 0xFF, 0x80, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1F, - 0xFE, 0x00, 0x00, 0xF0, 0x7C, 0x00, 0x0F, 0x00, 0x78, 0x00, 0x78, 0x00, - 0xF0, 0x03, 0xC0, 0x03, 0xE0, 0x1E, 0x00, 0x07, 0x80, 0xF0, 0x00, 0x1E, - 0x07, 0xC0, 0x00, 0x7C, 0x3E, 0x00, 0x01, 0xF1, 0xF8, 0x00, 0x07, 0xC7, - 0xC0, 0x00, 0x1F, 0x3F, 0x00, 0x00, 0x7C, 0xF8, 0x00, 0x01, 0xF7, 0xE0, - 0x00, 0x0F, 0xDF, 0x80, 0x00, 0x3F, 0x7C, 0x00, 0x00, 0xFB, 0xF0, 0x00, - 0x03, 0xEF, 0xC0, 0x00, 0x1F, 0xBE, 0x00, 0x00, 0x7C, 0xF8, 0x00, 0x01, - 0xF3, 0xE0, 0x00, 0x0F, 0x8F, 0x80, 0x00, 0x3E, 0x3E, 0x00, 0x01, 0xF0, - 0xF8, 0x00, 0x07, 0xC3, 0xE0, 0x00, 0x3E, 0x07, 0x80, 0x01, 0xF0, 0x1F, - 0x00, 0x07, 0x80, 0x3C, 0x00, 0x3C, 0x00, 0xF8, 0x01, 0xE0, 0x01, 0xE0, - 0x1E, 0x00, 0x01, 0xF3, 0xE0, 0x00, 0x01, 0xFE, 0x00, 0x00, 0x03, 0x00, - 0x00, 0x00, 0x18, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x04, 0x0F, 0xF0, 0x00, - 0x60, 0x7F, 0xFC, 0x07, 0x03, 0xFF, 0xFF, 0xF8, 0x38, 0x1F, 0xFF, 0x80, - 0x00, 0x07, 0xF8, 0x00, 0x03, 0xFF, 0xFE, 0x00, 0x07, 0xFF, 0xF8, 0x00, - 0x3E, 0x0F, 0xC0, 0x03, 0xE0, 0x3E, 0x00, 0x3E, 0x01, 0xF0, 0x03, 0xC0, - 0x1F, 0x00, 0x7C, 0x01, 0xF0, 0x07, 0xC0, 0x1F, 0x00, 0x78, 0x01, 0xF0, - 0x07, 0x80, 0x3E, 0x00, 0xF8, 0x03, 0xE0, 0x0F, 0x80, 0x7C, 0x00, 0xF0, - 0x1F, 0x80, 0x1F, 0xFF, 0xE0, 0x01, 0xFF, 0xF0, 0x00, 0x1E, 0x1E, 0x00, - 0x01, 0xE1, 0xE0, 0x00, 0x3E, 0x1F, 0x00, 0x03, 0xE0, 0xF0, 0x00, 0x3C, - 0x0F, 0x00, 0x03, 0xC0, 0xF8, 0x00, 0x7C, 0x07, 0x80, 0x07, 0xC0, 0x7C, - 0x00, 0x78, 0x03, 0xC0, 0x0F, 0x80, 0x3C, 0x00, 0xF8, 0x03, 0xE0, 0x0F, - 0x00, 0x1E, 0x00, 0xF0, 0x01, 0xE0, 0x1F, 0x00, 0x1F, 0x03, 0xF8, 0x00, - 0xF8, 0xFF, 0xE0, 0x0F, 0xE0, 0x00, 0x3F, 0x06, 0x01, 0xFF, 0xDC, 0x07, - 0xC1, 0xF0, 0x1E, 0x01, 0xE0, 0x3C, 0x01, 0xC0, 0xF0, 0x03, 0x81, 0xE0, - 0x03, 0x03, 0xC0, 0x04, 0x07, 0x80, 0x08, 0x0F, 0x80, 0x00, 0x1F, 0x00, - 0x00, 0x1F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x3F, 0x00, - 0x00, 0x3E, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x7C, 0x08, 0x00, 0x78, 0x10, - 0x00, 0xF0, 0x20, 0x01, 0xE0, 0xC0, 0x03, 0xC1, 0x80, 0x07, 0x83, 0x80, - 0x1E, 0x07, 0x00, 0x3C, 0x0F, 0x00, 0xF0, 0x1F, 0x87, 0xC0, 0x23, 0xFF, - 0x00, 0x81, 0xF8, 0x00, 0x3F, 0xFF, 0xFF, 0xE7, 0xFF, 0xFF, 0xFD, 0xF0, - 0x3E, 0x07, 0xB8, 0x07, 0xC0, 0x76, 0x00, 0xF8, 0x04, 0x80, 0x3E, 0x00, - 0xB0, 0x07, 0xC0, 0x14, 0x00, 0xF8, 0x02, 0x00, 0x1E, 0x00, 0x00, 0x07, - 0xC0, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xC0, 0x00, - 0x00, 0xF8, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0xF8, - 0x00, 0x00, 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, - 0x1F, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, - 0x00, 0x03, 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x03, - 0xE0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x3F, 0xC0, 0x00, 0x3F, 0xFF, 0x00, - 0x00, 0x7F, 0xFE, 0x03, 0xFE, 0x1F, 0xE0, 0x01, 0xF8, 0x1F, 0x80, 0x01, - 0xC0, 0x3E, 0x00, 0x03, 0x80, 0x7C, 0x00, 0x07, 0x00, 0xF8, 0x00, 0x0C, - 0x03, 0xE0, 0x00, 0x18, 0x07, 0xC0, 0x00, 0x70, 0x0F, 0x80, 0x00, 0xC0, - 0x1F, 0x00, 0x01, 0x80, 0x7C, 0x00, 0x03, 0x00, 0xF8, 0x00, 0x0E, 0x01, - 0xF0, 0x00, 0x18, 0x07, 0xC0, 0x00, 0x30, 0x0F, 0x80, 0x00, 0x60, 0x1F, - 0x00, 0x01, 0x80, 0x3E, 0x00, 0x03, 0x00, 0xF8, 0x00, 0x06, 0x01, 0xF0, - 0x00, 0x18, 0x03, 0xE0, 0x00, 0x30, 0x07, 0xC0, 0x00, 0x60, 0x1F, 0x00, - 0x00, 0xC0, 0x3E, 0x00, 0x03, 0x00, 0x7C, 0x00, 0x06, 0x00, 0xF8, 0x00, - 0x18, 0x01, 0xF0, 0x00, 0x30, 0x03, 0xE0, 0x00, 0xC0, 0x03, 0xE0, 0x03, - 0x80, 0x03, 0xE0, 0x0E, 0x00, 0x03, 0xF0, 0x78, 0x00, 0x03, 0xFF, 0xC0, - 0x00, 0x01, 0xFE, 0x00, 0x00, 0xFF, 0xE0, 0x0F, 0xF9, 0xFC, 0x00, 0x1F, - 0x07, 0xC0, 0x00, 0x78, 0x3E, 0x00, 0x03, 0x81, 0xF0, 0x00, 0x18, 0x0F, - 0x80, 0x01, 0xC0, 0x7C, 0x00, 0x0C, 0x01, 0xE0, 0x00, 0xC0, 0x0F, 0x80, - 0x06, 0x00, 0x7C, 0x00, 0x60, 0x03, 0xE0, 0x07, 0x00, 0x1F, 0x00, 0x30, - 0x00, 0xF8, 0x03, 0x00, 0x03, 0xC0, 0x18, 0x00, 0x1E, 0x01, 0x80, 0x00, - 0xF8, 0x1C, 0x00, 0x07, 0xC0, 0xC0, 0x00, 0x3E, 0x0C, 0x00, 0x01, 0xF0, - 0x60, 0x00, 0x07, 0x86, 0x00, 0x00, 0x3C, 0x30, 0x00, 0x01, 0xE3, 0x00, - 0x00, 0x0F, 0xB0, 0x00, 0x00, 0x7D, 0x80, 0x00, 0x03, 0xF8, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x00, 0xE0, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x10, 0x00, - 0x00, 0xFF, 0xE3, 0xFF, 0x81, 0xFE, 0x7F, 0x01, 0xFC, 0x00, 0xF8, 0x7C, - 0x01, 0xF0, 0x00, 0xE0, 0xF8, 0x03, 0xE0, 0x01, 0x81, 0xF0, 0x03, 0xC0, - 0x07, 0x03, 0xE0, 0x07, 0x80, 0x0C, 0x03, 0xC0, 0x0F, 0x00, 0x18, 0x07, - 0x80, 0x1E, 0x00, 0x60, 0x0F, 0x00, 0x7E, 0x00, 0xC0, 0x1F, 0x00, 0xFC, - 0x03, 0x00, 0x3E, 0x03, 0xF8, 0x06, 0x00, 0x7C, 0x05, 0xF0, 0x18, 0x00, - 0xF8, 0x1B, 0xE0, 0x30, 0x01, 0xF0, 0x33, 0xC0, 0xC0, 0x01, 0xE0, 0xC7, - 0x83, 0x80, 0x03, 0xC1, 0x8F, 0x06, 0x00, 0x07, 0x86, 0x1E, 0x1C, 0x00, - 0x0F, 0x0C, 0x3C, 0x30, 0x00, 0x1F, 0x30, 0x7C, 0xE0, 0x00, 0x3E, 0x60, - 0xF9, 0x80, 0x00, 0x7D, 0x81, 0xF7, 0x00, 0x00, 0xFB, 0x03, 0xEC, 0x00, - 0x01, 0xFC, 0x03, 0xF8, 0x00, 0x01, 0xF8, 0x07, 0xE0, 0x00, 0x03, 0xE0, - 0x0F, 0x80, 0x00, 0x07, 0xC0, 0x1F, 0x00, 0x00, 0x0F, 0x00, 0x3C, 0x00, - 0x00, 0x1E, 0x00, 0x78, 0x00, 0x00, 0x38, 0x00, 0xE0, 0x00, 0x00, 0x70, - 0x01, 0xC0, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x80, 0x06, 0x00, - 0x00, 0x07, 0xFF, 0x83, 0xFF, 0x01, 0xFE, 0x00, 0xFE, 0x00, 0x7C, 0x00, - 0x78, 0x00, 0x7C, 0x00, 0x70, 0x00, 0x3C, 0x00, 0xE0, 0x00, 0x3E, 0x01, - 0xC0, 0x00, 0x3E, 0x01, 0x80, 0x00, 0x1F, 0x03, 0x00, 0x00, 0x1F, 0x07, - 0x00, 0x00, 0x0F, 0x0E, 0x00, 0x00, 0x0F, 0x9C, 0x00, 0x00, 0x0F, 0xB8, - 0x00, 0x00, 0x07, 0xF0, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x03, 0xC0, - 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x07, 0xF0, - 0x00, 0x00, 0x0F, 0xF0, 0x00, 0x00, 0x1C, 0xF0, 0x00, 0x00, 0x38, 0xF8, - 0x00, 0x00, 0x30, 0xF8, 0x00, 0x00, 0x60, 0x7C, 0x00, 0x00, 0xC0, 0x7C, - 0x00, 0x01, 0xC0, 0x3C, 0x00, 0x03, 0x80, 0x3E, 0x00, 0x07, 0x00, 0x3E, - 0x00, 0x0E, 0x00, 0x1F, 0x00, 0x1E, 0x00, 0x1F, 0x00, 0x7F, 0x00, 0x3F, - 0xC0, 0xFF, 0xC1, 0xFF, 0xF0, 0x7F, 0xF0, 0x7F, 0xC7, 0xF0, 0x03, 0xE0, - 0xF8, 0x00, 0x70, 0x3E, 0x00, 0x38, 0x07, 0x80, 0x0C, 0x01, 0xE0, 0x07, - 0x00, 0x7C, 0x03, 0x80, 0x1F, 0x00, 0xC0, 0x03, 0xC0, 0x60, 0x00, 0xF0, - 0x30, 0x00, 0x3E, 0x1C, 0x00, 0x07, 0x8E, 0x00, 0x01, 0xE3, 0x00, 0x00, - 0x7D, 0x80, 0x00, 0x1F, 0xC0, 0x00, 0x03, 0xF0, 0x00, 0x00, 0xF8, 0x00, - 0x00, 0x3C, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x01, 0xF0, - 0x00, 0x00, 0x78, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x0F, 0x80, 0x00, 0x03, - 0xC0, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x0F, 0xC0, 0x00, 0x07, 0xF0, 0x00, 0x0F, 0xFF, 0xC0, 0x00, 0x03, 0xFF, - 0xFF, 0xF8, 0x1F, 0xFF, 0xFF, 0x81, 0xF0, 0x00, 0xFC, 0x0E, 0x00, 0x0F, - 0xC0, 0x60, 0x00, 0xFC, 0x06, 0x00, 0x0F, 0xC0, 0x20, 0x00, 0x7C, 0x00, - 0x00, 0x07, 0xE0, 0x00, 0x00, 0x7E, 0x00, 0x00, 0x07, 0xE0, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x03, 0xE0, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF0, - 0x00, 0x00, 0x3F, 0x00, 0x00, 0x03, 0xF0, 0x00, 0x00, 0x1F, 0x00, 0x00, - 0x01, 0xF8, 0x00, 0x00, 0x1F, 0x80, 0x00, 0x01, 0xF8, 0x00, 0x00, 0x1F, - 0x80, 0x00, 0x00, 0xF8, 0x00, 0x00, 0x0F, 0xC0, 0x00, 0x00, 0xFC, 0x00, - 0x08, 0x0F, 0xC0, 0x00, 0x80, 0xFC, 0x00, 0x0C, 0x07, 0xC0, 0x00, 0x60, - 0x7E, 0x00, 0x07, 0x07, 0xE0, 0x01, 0xF0, 0x7F, 0xFF, 0xFF, 0x83, 0xFF, - 0xFF, 0xFC, 0x00, 0x00, 0x3F, 0x80, 0x3C, 0x00, 0x1C, 0x00, 0x0E, 0x00, - 0x07, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0xE0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x03, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, - 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x07, 0x00, - 0x03, 0x80, 0x01, 0xC0, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x38, - 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x07, 0x80, 0x03, - 0xFC, 0x00, 0xF0, 0x00, 0x38, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, 0x80, - 0x01, 0xE0, 0x00, 0x70, 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, - 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x03, 0x80, - 0x01, 0xC0, 0x00, 0xF0, 0x00, 0x38, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, - 0x80, 0x01, 0xE0, 0x00, 0x70, 0x00, 0x3C, 0x00, 0x0E, 0x00, 0x07, 0x00, - 0x03, 0xC0, 0x00, 0xE0, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, - 0x80, 0x00, 0xFF, 0x80, 0x07, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0xF0, - 0x00, 0x70, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0E, 0x00, 0x07, - 0x00, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xE0, 0x00, 0x70, 0x00, - 0x38, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x03, 0x80, - 0x03, 0x80, 0x01, 0xC0, 0x00, 0xE0, 0x00, 0x70, 0x00, 0x78, 0x00, 0x38, - 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x07, 0x00, 0x03, 0x80, 0x01, - 0xC0, 0x00, 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, 0x38, 0x03, 0xFC, 0x00, - 0x00, 0xF0, 0x00, 0x0F, 0x00, 0x01, 0xF8, 0x00, 0x1F, 0x80, 0x03, 0xBC, - 0x00, 0x39, 0xC0, 0x07, 0x1E, 0x00, 0x70, 0xE0, 0x0E, 0x0F, 0x00, 0xE0, - 0x70, 0x1E, 0x07, 0x81, 0xC0, 0x38, 0x3C, 0x03, 0xC3, 0x80, 0x1C, 0x78, - 0x01, 0xE7, 0x00, 0x0E, 0xF0, 0x00, 0xF0, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0x60, 0xF0, 0xF8, 0x78, 0x3C, 0x1E, 0x0E, 0x07, 0x00, 0x1E, 0x70, - 0x03, 0x0B, 0x80, 0x70, 0x3C, 0x07, 0x01, 0xE0, 0x70, 0x0E, 0x07, 0x00, - 0x70, 0x78, 0x03, 0x83, 0x80, 0x38, 0x3C, 0x01, 0xC1, 0xC0, 0x0E, 0x1E, - 0x00, 0xF0, 0xF0, 0x07, 0x0F, 0x00, 0x78, 0x78, 0x03, 0xC3, 0xC0, 0x3E, - 0x1E, 0x01, 0x70, 0xF0, 0x17, 0x0F, 0x81, 0x38, 0xBE, 0x11, 0xC8, 0xFF, - 0x0F, 0x83, 0xF0, 0x70, 0x00, 0x00, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x78, 0x00, 0x03, 0x80, 0x00, 0x1C, 0x00, 0x01, 0xE0, 0x00, 0x0F, 0x0F, - 0x80, 0x71, 0xFE, 0x03, 0x98, 0xF8, 0x3D, 0x03, 0xE1, 0xE8, 0x0F, 0x0E, - 0x80, 0x78, 0x78, 0x03, 0xC7, 0xC0, 0x1E, 0x3C, 0x00, 0xF1, 0xE0, 0x0F, - 0x1E, 0x00, 0x78, 0xF0, 0x03, 0xC7, 0x80, 0x3C, 0x38, 0x01, 0xE3, 0xC0, - 0x1E, 0x1E, 0x00, 0xE0, 0xE0, 0x0E, 0x07, 0x00, 0xF0, 0x78, 0x07, 0x03, - 0xC0, 0xE0, 0x0F, 0x0E, 0x00, 0x1F, 0x80, 0x00, 0x00, 0x3F, 0x00, 0x38, - 0x60, 0x38, 0x1C, 0x1C, 0x0F, 0x0E, 0x03, 0x87, 0x80, 0x03, 0xC0, 0x00, - 0xE0, 0x00, 0x78, 0x00, 0x1E, 0x00, 0x07, 0x00, 0x03, 0xC0, 0x00, 0xF0, - 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, 0x00, 0xF0, 0x02, 0x3E, 0x01, - 0x87, 0x80, 0xC1, 0xF0, 0x60, 0x3F, 0xF0, 0x03, 0xF0, 0x00, 0x00, 0x00, - 0x0E, 0x00, 0x00, 0xFE, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x1E, 0x00, 0x00, - 0x1C, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x3C, 0x00, 0x00, - 0x38, 0x00, 0x00, 0x38, 0x00, 0x00, 0x78, 0x00, 0x1E, 0x78, 0x00, 0x71, - 0x70, 0x00, 0xC1, 0x70, 0x03, 0x80, 0xF0, 0x07, 0x80, 0xE0, 0x07, 0x01, - 0xE0, 0x0E, 0x01, 0xE0, 0x1E, 0x01, 0xE0, 0x3C, 0x01, 0xC0, 0x3C, 0x01, - 0xC0, 0x78, 0x03, 0xC0, 0x78, 0x03, 0xC0, 0x78, 0x03, 0x80, 0xF0, 0x07, - 0x80, 0xF0, 0x07, 0x80, 0xF0, 0x0F, 0x80, 0xF0, 0x0F, 0x00, 0xF0, 0x17, - 0x08, 0xF0, 0x27, 0x10, 0x78, 0x47, 0x20, 0x7F, 0x87, 0xC0, 0x1E, 0x07, - 0x00, 0x00, 0x1F, 0x00, 0x1C, 0xF0, 0x1C, 0x1C, 0x0E, 0x07, 0x07, 0x01, - 0xC3, 0xC0, 0xF1, 0xE0, 0x38, 0x70, 0x1C, 0x3C, 0x0E, 0x1F, 0x0F, 0x07, - 0x8F, 0x01, 0xFE, 0x00, 0xF0, 0x00, 0x3C, 0x00, 0x0F, 0x00, 0x03, 0xC0, - 0x00, 0xF0, 0x01, 0x3C, 0x00, 0xC7, 0x80, 0x61, 0xF0, 0x60, 0x3F, 0xF0, - 0x03, 0xE0, 0x00, 0x00, 0x00, 0x07, 0xC0, 0x00, 0x03, 0x1C, 0x00, 0x00, - 0xC3, 0x80, 0x00, 0x38, 0x70, 0x00, 0x06, 0x00, 0x00, 0x01, 0xC0, 0x00, - 0x00, 0x30, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x00, 0x78, - 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, 0x00, 0x07, 0xFF, 0xC0, 0x00, - 0xFF, 0xF8, 0x00, 0x01, 0xE0, 0x00, 0x00, 0x38, 0x00, 0x00, 0x07, 0x00, - 0x00, 0x01, 0xE0, 0x00, 0x00, 0x3C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, - 0xE0, 0x00, 0x00, 0x1C, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0xF0, 0x00, - 0x00, 0x1C, 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x1E, - 0x00, 0x00, 0x03, 0x80, 0x00, 0x00, 0x70, 0x00, 0x00, 0x0E, 0x00, 0x00, - 0x03, 0xC0, 0x00, 0x00, 0x70, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0xC0, - 0x00, 0x00, 0x70, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x01, 0x80, 0x00, 0x38, - 0x60, 0x00, 0x07, 0x0C, 0x00, 0x00, 0xE3, 0x00, 0x00, 0x0F, 0x80, 0x00, - 0x00, 0x00, 0x3F, 0x00, 0x07, 0x0E, 0x00, 0x70, 0x3E, 0x07, 0x01, 0xF0, - 0x70, 0x0E, 0x07, 0x80, 0x70, 0x3C, 0x03, 0x81, 0xC0, 0x1C, 0x0E, 0x01, - 0xE0, 0x70, 0x0E, 0x03, 0x80, 0xF0, 0x0E, 0x0F, 0x00, 0x30, 0xE0, 0x00, - 0xFE, 0x00, 0x0C, 0x00, 0x00, 0xC0, 0x00, 0x0E, 0x00, 0x00, 0x7E, 0x00, - 0x03, 0xFE, 0x00, 0x0F, 0xFC, 0x00, 0x8F, 0xF0, 0x18, 0x0F, 0xC1, 0x80, - 0x1F, 0x18, 0x00, 0x78, 0xC0, 0x01, 0xC6, 0x00, 0x0E, 0x30, 0x00, 0x61, - 0xC0, 0x07, 0x06, 0x00, 0x70, 0x1C, 0x0E, 0x00, 0x3F, 0xC0, 0x00, 0x00, - 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, - 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1C, - 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x03, 0x80, 0x78, 0x7E, 0x03, 0x86, 0x70, - 0x3C, 0x43, 0x81, 0xE4, 0x1C, 0x0E, 0x40, 0xE0, 0x74, 0x0E, 0x07, 0xA0, - 0x70, 0x3E, 0x03, 0x81, 0xE0, 0x1C, 0x0F, 0x00, 0xE0, 0xF0, 0x0E, 0x07, - 0x80, 0x70, 0x38, 0x03, 0x81, 0xC0, 0x1C, 0x1E, 0x00, 0xC2, 0xF0, 0x0E, - 0x27, 0x00, 0x73, 0x38, 0x03, 0x93, 0xC0, 0x1F, 0x1E, 0x00, 0xE0, 0x03, - 0x81, 0xF0, 0x7C, 0x1F, 0x03, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x71, 0xFC, 0x1F, 0x07, 0x81, 0xE0, 0x78, 0x1C, 0x07, 0x03, 0xC0, 0xF0, - 0x38, 0x0E, 0x07, 0x81, 0xE0, 0x70, 0x1C, 0x0F, 0x03, 0x84, 0xE2, 0x39, - 0x0F, 0x81, 0xC0, 0x00, 0x01, 0xC0, 0x00, 0x7C, 0x00, 0x0F, 0x80, 0x01, - 0xF0, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x3F, 0xC0, 0x00, 0xF0, 0x00, 0x1E, - 0x00, 0x03, 0xC0, 0x00, 0x78, 0x00, 0x0E, 0x00, 0x03, 0xC0, 0x00, 0x78, - 0x00, 0x0F, 0x00, 0x01, 0xC0, 0x00, 0x38, 0x00, 0x0F, 0x00, 0x01, 0xE0, - 0x00, 0x38, 0x00, 0x07, 0x00, 0x01, 0xE0, 0x00, 0x38, 0x00, 0x07, 0x00, - 0x00, 0xE0, 0x00, 0x3C, 0x00, 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x00, - 0x07, 0x00, 0x00, 0xE0, 0x00, 0x1C, 0x01, 0xC7, 0x00, 0x38, 0xC0, 0x07, - 0x30, 0x00, 0x7C, 0x00, 0x00, 0x00, 0xF0, 0x00, 0x7F, 0x00, 0x00, 0x78, - 0x00, 0x03, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0xE0, 0x00, 0x07, 0x00, 0x00, - 0x78, 0x00, 0x03, 0xC0, 0x00, 0x1C, 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, - 0x00, 0x70, 0xFF, 0x83, 0x80, 0xF0, 0x3C, 0x06, 0x01, 0xE0, 0x60, 0x0E, - 0x06, 0x00, 0x70, 0xE0, 0x07, 0x8C, 0x00, 0x3C, 0xC0, 0x01, 0xCC, 0x00, - 0x0F, 0xF0, 0x00, 0xFF, 0x80, 0x07, 0x9E, 0x00, 0x38, 0xF0, 0x01, 0xC3, - 0x80, 0x1E, 0x1E, 0x00, 0xF0, 0x70, 0x07, 0x03, 0xC2, 0x78, 0x0E, 0x13, - 0xC0, 0x79, 0x1E, 0x01, 0xF0, 0x00, 0x07, 0x00, 0x00, 0xE1, 0xFC, 0x0F, - 0x80, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x1C, 0x07, 0x80, 0xF0, 0x1E, 0x03, - 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0x70, 0x1E, 0x03, 0xC0, 0x78, 0x0E, 0x03, - 0xC0, 0x78, 0x0E, 0x01, 0xC0, 0x78, 0x0F, 0x01, 0xC0, 0x38, 0x4F, 0x11, - 0xE4, 0x39, 0x07, 0xC0, 0x70, 0x00, 0x07, 0x81, 0xC0, 0x78, 0xFE, 0x0F, - 0xC1, 0xF8, 0x3C, 0x33, 0x84, 0x70, 0x78, 0x87, 0x10, 0xE0, 0xF2, 0x0E, - 0x41, 0xC1, 0xC8, 0x39, 0x07, 0x87, 0xA0, 0x74, 0x0F, 0x0F, 0x40, 0xE8, - 0x1E, 0x1F, 0x01, 0xE0, 0x38, 0x3C, 0x07, 0xC0, 0xF0, 0xF8, 0x0F, 0x01, - 0xE1, 0xE0, 0x1E, 0x03, 0xC3, 0xC0, 0x38, 0x07, 0x07, 0x00, 0xF0, 0x1E, - 0x1E, 0x01, 0xE0, 0x3C, 0x3C, 0x03, 0x80, 0x79, 0x70, 0x07, 0x00, 0xE2, - 0xE0, 0x1E, 0x03, 0x8B, 0xC0, 0x3C, 0x07, 0x27, 0x80, 0x70, 0x0F, 0x8E, - 0x00, 0xE0, 0x1E, 0x00, 0x07, 0x81, 0xE3, 0xFC, 0x3F, 0x83, 0xC2, 0x3C, - 0x1E, 0x21, 0xE0, 0xF2, 0x0F, 0x07, 0x20, 0x70, 0x39, 0x07, 0x83, 0xD0, - 0x3C, 0x1F, 0x01, 0xE0, 0xE8, 0x0E, 0x0F, 0x80, 0xF0, 0x78, 0x07, 0x83, - 0xC0, 0x38, 0x1C, 0x01, 0xC1, 0xE0, 0x1E, 0x0F, 0x00, 0xF1, 0x70, 0x07, - 0x0B, 0x80, 0x38, 0xBC, 0x01, 0xC9, 0xE0, 0x0F, 0x8E, 0x00, 0x38, 0x00, - 0x00, 0x1F, 0x80, 0x07, 0x8F, 0x00, 0x70, 0x3C, 0x07, 0x00, 0xE0, 0x70, - 0x07, 0x87, 0x80, 0x3C, 0x78, 0x01, 0xE7, 0x80, 0x0F, 0x3C, 0x00, 0x7B, - 0xC0, 0x03, 0xDE, 0x00, 0x3D, 0xF0, 0x01, 0xEF, 0x80, 0x0F, 0x78, 0x00, - 0xF3, 0xC0, 0x07, 0x9E, 0x00, 0x78, 0xF0, 0x03, 0x87, 0x80, 0x38, 0x1C, - 0x03, 0x80, 0xF0, 0x38, 0x03, 0xC3, 0x00, 0x07, 0xE0, 0x00, 0x00, 0x3C, - 0x3F, 0x00, 0x7F, 0x8F, 0xF0, 0x01, 0xF7, 0x3F, 0x00, 0x1D, 0x83, 0xF0, - 0x07, 0xA0, 0x3E, 0x00, 0xF8, 0x07, 0xC0, 0x1E, 0x00, 0xF8, 0x03, 0xC0, - 0x1F, 0x00, 0xF0, 0x03, 0xE0, 0x1E, 0x00, 0x7C, 0x03, 0xC0, 0x1F, 0x00, - 0x70, 0x03, 0xE0, 0x1E, 0x00, 0x78, 0x03, 0xC0, 0x1F, 0x00, 0x70, 0x03, - 0xC0, 0x0E, 0x00, 0xF8, 0x03, 0xC0, 0x1E, 0x00, 0x78, 0x07, 0x80, 0x0F, - 0x01, 0xE0, 0x01, 0xE0, 0x70, 0x00, 0x7C, 0x3C, 0x00, 0x0F, 0x7C, 0x00, - 0x01, 0xC0, 0x00, 0x00, 0x78, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xE0, - 0x00, 0x00, 0x38, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x01, 0xE0, 0x00, 0x00, - 0x7E, 0x00, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0x1F, 0x00, 0x03, 0x8D, - 0xC0, 0x38, 0x2E, 0x07, 0x80, 0xF0, 0x78, 0x07, 0x03, 0x80, 0x38, 0x38, - 0x03, 0xC3, 0xC0, 0x1E, 0x3C, 0x00, 0xE1, 0xE0, 0x07, 0x1E, 0x00, 0x78, - 0xF0, 0x03, 0x87, 0x80, 0x3C, 0x78, 0x01, 0xE3, 0xC0, 0x1F, 0x1E, 0x01, - 0x70, 0xF0, 0x17, 0x87, 0x80, 0xBC, 0x3C, 0x09, 0xC0, 0xF1, 0x8E, 0x07, - 0xF8, 0xF0, 0x1F, 0x07, 0x80, 0x00, 0x38, 0x00, 0x03, 0xC0, 0x00, 0x1E, - 0x00, 0x00, 0xE0, 0x00, 0x0F, 0x00, 0x00, 0x78, 0x00, 0x03, 0xC0, 0x00, - 0x3E, 0x00, 0x0F, 0xFE, 0x00, 0x07, 0x87, 0x3F, 0x87, 0xC3, 0xC7, 0xE1, - 0xE6, 0xF0, 0xF6, 0x00, 0x72, 0x00, 0x3A, 0x00, 0x1D, 0x00, 0x1F, 0x00, - 0x0E, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x03, 0xC0, 0x01, 0xE0, 0x00, 0xF0, - 0x00, 0xF0, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x1E, 0x00, 0x0F, - 0x00, 0x00, 0x01, 0xF8, 0x81, 0x87, 0xC1, 0x80, 0xE1, 0xC0, 0x60, 0xE0, - 0x10, 0x70, 0x08, 0x3C, 0x04, 0x1F, 0x00, 0x07, 0xC0, 0x03, 0xE0, 0x00, - 0xF8, 0x00, 0x3E, 0x00, 0x0F, 0x00, 0x03, 0xC1, 0x01, 0xE0, 0x80, 0x70, - 0x40, 0x38, 0x30, 0x1C, 0x38, 0x0C, 0x1C, 0x0E, 0x0F, 0x0E, 0x04, 0x7C, - 0x00, 0x00, 0xC0, 0x18, 0x03, 0x80, 0x78, 0x1F, 0x03, 0xFF, 0x7F, 0xF0, - 0xF0, 0x0E, 0x00, 0xE0, 0x1E, 0x01, 0xE0, 0x1C, 0x01, 0xC0, 0x3C, 0x03, - 0xC0, 0x38, 0x03, 0x80, 0x78, 0x07, 0x80, 0x70, 0x8F, 0x10, 0xF1, 0x0F, - 0x20, 0xFC, 0x07, 0x80, 0x00, 0x00, 0x00, 0xF0, 0x0E, 0x7F, 0x00, 0xE0, - 0xF0, 0x1E, 0x0E, 0x01, 0xE1, 0xE0, 0x3C, 0x1E, 0x03, 0xC1, 0xE0, 0x3C, - 0x1C, 0x07, 0xC3, 0xC0, 0x78, 0x3C, 0x0F, 0x83, 0xC0, 0xB8, 0x38, 0x1F, - 0x87, 0x83, 0x70, 0x78, 0x27, 0x07, 0x86, 0x70, 0x70, 0xC7, 0x1F, 0x08, - 0xE1, 0xE1, 0x0E, 0x2E, 0x60, 0xE4, 0xFC, 0x0F, 0x87, 0x00, 0x70, 0x1C, - 0x03, 0xBF, 0x00, 0xF1, 0xE0, 0x3C, 0x78, 0x07, 0x1E, 0x00, 0xC3, 0x80, - 0x30, 0xE0, 0x08, 0x38, 0x06, 0x0E, 0x01, 0x03, 0x80, 0xC0, 0xF0, 0x20, - 0x3C, 0x10, 0x07, 0x04, 0x01, 0xC2, 0x00, 0x71, 0x00, 0x1C, 0xC0, 0x07, - 0x60, 0x01, 0xF0, 0x00, 0x78, 0x00, 0x1C, 0x00, 0x06, 0x00, 0x01, 0x00, - 0x00, 0x0C, 0x00, 0x40, 0x3B, 0xF8, 0x01, 0x00, 0xF1, 0xE0, 0x0C, 0x03, - 0xC3, 0x80, 0x78, 0x07, 0x0E, 0x01, 0xE0, 0x0C, 0x38, 0x0F, 0x80, 0x20, - 0xE0, 0x6E, 0x00, 0x83, 0x81, 0x38, 0x04, 0x0F, 0x0C, 0xE0, 0x10, 0x1C, - 0x23, 0x80, 0x80, 0x71, 0x8E, 0x06, 0x01, 0xCC, 0x38, 0x10, 0x07, 0x20, - 0xE0, 0x80, 0x1D, 0x83, 0x86, 0x00, 0x7C, 0x07, 0x30, 0x01, 0xF0, 0x1C, - 0x80, 0x07, 0x80, 0x74, 0x00, 0x1E, 0x01, 0xF0, 0x00, 0x70, 0x07, 0x80, - 0x01, 0xC0, 0x1C, 0x00, 0x06, 0x00, 0x60, 0x00, 0x10, 0x01, 0x00, 0x00, - 0x00, 0xE0, 0x38, 0x1F, 0x81, 0xF0, 0x8F, 0x09, 0x80, 0x3C, 0x40, 0x00, - 0x72, 0x00, 0x01, 0xD0, 0x00, 0x07, 0xC0, 0x00, 0x1E, 0x00, 0x00, 0x38, - 0x00, 0x00, 0xE0, 0x00, 0x03, 0x80, 0x00, 0x0F, 0x00, 0x00, 0x7C, 0x00, - 0x01, 0x70, 0x00, 0x09, 0xC0, 0x00, 0x67, 0x00, 0x01, 0x1E, 0x10, 0x08, - 0x38, 0x40, 0x40, 0xE2, 0x39, 0x03, 0xD0, 0xF8, 0x0F, 0x83, 0xC0, 0x1C, - 0x00, 0x07, 0x80, 0x33, 0xFC, 0x03, 0xC1, 0xE0, 0x1E, 0x07, 0x80, 0x70, - 0x3C, 0x01, 0x80, 0xE0, 0x0C, 0x07, 0x80, 0x40, 0x3C, 0x02, 0x00, 0xE0, - 0x20, 0x07, 0x81, 0x00, 0x3C, 0x18, 0x01, 0xE0, 0x80, 0x07, 0x0C, 0x00, - 0x38, 0x40, 0x01, 0xE4, 0x00, 0x0F, 0x60, 0x00, 0x3A, 0x00, 0x01, 0xF0, - 0x00, 0x0F, 0x00, 0x00, 0x70, 0x00, 0x03, 0x80, 0x00, 0x18, 0x00, 0x00, - 0x80, 0x00, 0x0C, 0x00, 0x00, 0x40, 0x00, 0x04, 0x00, 0x00, 0x40, 0x00, - 0x04, 0x00, 0x0E, 0x40, 0x00, 0x7C, 0x00, 0x03, 0xC0, 0x00, 0x00, 0x0F, - 0xFF, 0x87, 0xFF, 0x82, 0x00, 0x83, 0x00, 0xC1, 0x00, 0xC0, 0x00, 0xC0, - 0x00, 0xC0, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x60, 0x00, 0x20, - 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x30, 0x00, 0x18, 0x00, 0x1E, - 0x00, 0x1F, 0xC0, 0x1F, 0xF0, 0xE8, 0xFC, 0x70, 0x1E, 0x38, 0x03, 0x88, - 0x00, 0x78, 0x00, 0x0F, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x0F, - 0x00, 0x07, 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, - 0x70, 0x00, 0x78, 0x00, 0x3C, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0F, 0x00, - 0x07, 0x80, 0x07, 0x80, 0x03, 0xC0, 0x07, 0xC0, 0x07, 0xC0, 0x00, 0x80, - 0x00, 0x60, 0x00, 0x38, 0x00, 0x1C, 0x00, 0x0E, 0x00, 0x0F, 0x00, 0x07, - 0x80, 0x03, 0x80, 0x01, 0xC0, 0x01, 0xE0, 0x00, 0xF0, 0x00, 0x70, 0x00, - 0x38, 0x00, 0x3C, 0x00, 0x1E, 0x00, 0x0E, 0x00, 0x07, 0x00, 0x01, 0x80, - 0x00, 0x70, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xFF, 0xFF, 0xE0, 0x00, 0x18, 0x00, 0x0E, 0x00, 0x06, 0x00, 0x07, - 0x00, 0x07, 0x00, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0F, 0x00, 0x0E, - 0x00, 0x0E, 0x00, 0x1E, 0x00, 0x1E, 0x00, 0x1C, 0x00, 0x1C, 0x00, 0x3C, - 0x00, 0x3C, 0x00, 0x38, 0x00, 0x38, 0x00, 0x18, 0x00, 0x08, 0x00, 0x1C, - 0x00, 0x7E, 0x00, 0x78, 0x00, 0xF0, 0x00, 0xE0, 0x01, 0xE0, 0x01, 0xE0, - 0x01, 0xC0, 0x01, 0xC0, 0x03, 0xC0, 0x03, 0x80, 0x03, 0x80, 0x07, 0x80, - 0x07, 0x80, 0x07, 0x00, 0x07, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x1C, 0x00, - 0xF8, 0x00, 0x1F, 0x80, 0x00, 0xFF, 0x80, 0xC7, 0xFF, 0x87, 0xBC, 0x3F, - 0xFE, 0x60, 0x3F, 0xF0, 0x00, 0x1F, 0x00}; - -const GFXglyph FreeSerifItalic24pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 12, 0, 1}, // 0x20 ' ' - {0, 12, 32, 16, 2, -30}, // 0x21 '!' - {48, 14, 12, 16, 6, -31}, // 0x22 '"' - {69, 25, 31, 23, 0, -30}, // 0x23 '#' - {166, 21, 38, 24, 2, -33}, // 0x24 '$' - {266, 33, 32, 39, 4, -30}, // 0x25 '%' - {398, 30, 33, 37, 4, -31}, // 0x26 '&' - {522, 5, 12, 9, 6, -31}, // 0x27 ''' - {530, 13, 39, 16, 2, -30}, // 0x28 '(' - {594, 13, 39, 16, 0, -30}, // 0x29 ')' - {658, 16, 20, 23, 7, -31}, // 0x2A '*' - {698, 23, 23, 32, 4, -22}, // 0x2B '+' - {765, 7, 11, 12, -1, -4}, // 0x2C ',' - {775, 11, 3, 16, 2, -11}, // 0x2D '-' - {780, 5, 5, 12, 1, -3}, // 0x2E '.' - {784, 21, 33, 14, 0, -31}, // 0x2F '/' - {871, 21, 31, 23, 2, -30}, // 0x30 '0' - {953, 17, 32, 23, 2, -31}, // 0x31 '1' - {1021, 21, 31, 24, 0, -30}, // 0x32 '2' - {1103, 22, 32, 23, 0, -31}, // 0x33 '3' - {1191, 22, 32, 23, 0, -31}, // 0x34 '4' - {1279, 22, 32, 24, 0, -31}, // 0x35 '5' - {1367, 23, 32, 23, 1, -31}, // 0x36 '6' - {1459, 21, 32, 23, 4, -31}, // 0x37 '7' - {1543, 22, 32, 23, 1, -31}, // 0x38 '8' - {1631, 22, 33, 23, 1, -31}, // 0x39 '9' - {1722, 9, 22, 12, 2, -20}, // 0x3A ':' - {1747, 11, 27, 12, 1, -20}, // 0x3B ';' - {1785, 23, 25, 27, 3, -24}, // 0x3C '<' - {1857, 24, 12, 31, 4, -17}, // 0x3D '=' - {1893, 24, 25, 27, 3, -24}, // 0x3E '>' - {1968, 16, 33, 21, 6, -31}, // 0x3F '?' - {2034, 33, 33, 37, 3, -31}, // 0x40 '@' - {2171, 29, 31, 31, 0, -30}, // 0x41 'A' - {2284, 28, 31, 28, 0, -30}, // 0x42 'B' - {2393, 30, 33, 29, 2, -31}, // 0x43 'C' - {2517, 33, 31, 33, 0, -30}, // 0x44 'D' - {2645, 29, 31, 27, 0, -30}, // 0x45 'E' - {2758, 29, 31, 27, 0, -30}, // 0x46 'F' - {2871, 31, 33, 32, 2, -31}, // 0x47 'G' - {2999, 36, 31, 33, 0, -30}, // 0x48 'H' - {3139, 18, 31, 15, 0, -30}, // 0x49 'I' - {3209, 23, 32, 20, 0, -30}, // 0x4A 'J' - {3301, 33, 31, 30, 0, -30}, // 0x4B 'K' - {3429, 27, 31, 27, 0, -30}, // 0x4C 'L' - {3534, 42, 31, 39, 0, -30}, // 0x4D 'M' - {3697, 35, 32, 32, 0, -30}, // 0x4E 'N' - {3837, 30, 33, 31, 2, -31}, // 0x4F 'O' - {3961, 29, 31, 27, 0, -30}, // 0x50 'P' - {4074, 30, 41, 31, 2, -31}, // 0x51 'Q' - {4228, 28, 31, 29, 0, -30}, // 0x52 'R' - {4337, 23, 33, 21, 0, -31}, // 0x53 'S' - {4432, 27, 31, 28, 4, -30}, // 0x54 'T' - {4537, 31, 32, 33, 5, -30}, // 0x55 'U' - {4661, 29, 32, 31, 6, -30}, // 0x56 'V' - {4777, 39, 32, 42, 6, -30}, // 0x57 'W' - {4933, 32, 31, 31, 0, -30}, // 0x58 'X' - {5057, 26, 31, 28, 5, -30}, // 0x59 'Y' - {5158, 29, 31, 26, 0, -30}, // 0x5A 'Z' - {5271, 17, 39, 18, 1, -31}, // 0x5B '[' - {5354, 17, 33, 23, 5, -31}, // 0x5C '\' - {5425, 17, 39, 18, 1, -31}, // 0x5D ']' - {5508, 20, 17, 20, 0, -31}, // 0x5E '^' - {5551, 24, 2, 23, 0, 5}, // 0x5F '_' - {5557, 8, 8, 12, 6, -31}, // 0x60 '`' - {5565, 21, 21, 23, 1, -20}, // 0x61 'a' - {5621, 21, 33, 22, 1, -31}, // 0x62 'b' - {5708, 18, 22, 19, 1, -20}, // 0x63 'c' - {5758, 24, 33, 23, 1, -31}, // 0x64 'd' - {5857, 18, 22, 19, 1, -20}, // 0x65 'e' - {5907, 27, 42, 20, -4, -31}, // 0x66 'f' - {6049, 21, 31, 21, -1, -20}, // 0x67 'g' - {6131, 21, 32, 23, 1, -31}, // 0x68 'h' - {6215, 10, 32, 12, 2, -30}, // 0x69 'i' - {6255, 19, 41, 13, -3, -30}, // 0x6A 'j' - {6353, 21, 33, 21, 1, -31}, // 0x6B 'k' - {6440, 11, 33, 12, 2, -31}, // 0x6C 'l' - {6486, 31, 21, 34, 1, -20}, // 0x6D 'm' - {6568, 21, 21, 23, 1, -20}, // 0x6E 'n' - {6624, 21, 22, 22, 1, -20}, // 0x6F 'o' - {6682, 27, 31, 22, -4, -20}, // 0x70 'p' - {6787, 21, 31, 23, 1, -20}, // 0x71 'q' - {6869, 17, 21, 17, 1, -20}, // 0x72 'r' - {6914, 17, 22, 16, 0, -20}, // 0x73 's' - {6961, 12, 26, 11, 1, -24}, // 0x74 't' - {7000, 20, 22, 23, 1, -20}, // 0x75 'u' - {7055, 18, 22, 21, 3, -20}, // 0x76 'v' - {7105, 30, 22, 32, 2, -20}, // 0x77 'w' - {7188, 22, 22, 20, -1, -20}, // 0x78 'x' - {7249, 21, 31, 22, 1, -20}, // 0x79 'y' - {7331, 17, 24, 18, 0, -19}, // 0x7A 'z' - {7382, 17, 40, 19, 2, -31}, // 0x7B '{' - {7467, 3, 33, 13, 5, -31}, // 0x7C '|' - {7480, 16, 41, 19, 0, -32}, // 0x7D '}' - {7562, 22, 6, 25, 2, -14}}; // 0x7E '~' - -const GFXfont FreeSerifItalic24pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic24pt7bBitmaps, - (GFXglyph *)FreeSerifItalic24pt7bGlyphs, 0x20, 0x7E, 56}; - -// Approx. 8251 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h deleted file mode 100644 index be4ad05..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/FreeSerifItalic9pt7b.h +++ /dev/null @@ -1,204 +0,0 @@ -#pragma once -#include - -const uint8_t FreeSerifItalic9pt7bBitmaps[] PROGMEM = { - 0x11, 0x12, 0x22, 0x24, 0x40, 0x0C, 0xDE, 0xE5, 0x40, 0x04, 0x82, 0x20, - 0x98, 0x24, 0x7F, 0xC4, 0x82, 0x23, 0xFC, 0x24, 0x11, 0x04, 0x83, 0x20, - 0x1C, 0x1B, 0x99, 0x4D, 0x26, 0x81, 0xC0, 0x70, 0x1C, 0x13, 0x49, 0xA4, - 0xDA, 0xC7, 0xC1, 0x00, 0x80, 0x1C, 0x61, 0xCF, 0x0E, 0x28, 0x30, 0xA0, - 0xC5, 0x03, 0x34, 0xE7, 0xAE, 0x40, 0xB1, 0x05, 0x84, 0x26, 0x20, 0x99, - 0x84, 0x3C, 0x03, 0x80, 0x6C, 0x06, 0xC0, 0x78, 0x06, 0x01, 0xEF, 0x66, - 0x24, 0x24, 0xC3, 0x8C, 0x10, 0xE3, 0x87, 0xCE, 0xFA, 0x08, 0x21, 0x08, - 0x61, 0x8C, 0x30, 0xC3, 0x0C, 0x30, 0x41, 0x02, 0x00, 0x10, 0x40, 0x82, - 0x0C, 0x30, 0xC3, 0x0C, 0x61, 0x84, 0x21, 0x08, 0x00, 0x30, 0xCA, 0x5E, - 0x6A, 0x93, 0x08, 0x08, 0x04, 0x02, 0x01, 0x0F, 0xF8, 0x40, 0x20, 0x10, - 0x08, 0x00, 0x56, 0xF0, 0xF0, 0x03, 0x02, 0x06, 0x04, 0x08, 0x08, 0x10, - 0x30, 0x20, 0x60, 0x40, 0xC0, 0x0E, 0x0C, 0x8C, 0x6C, 0x36, 0x1F, 0x0F, - 0x07, 0x87, 0xC3, 0x61, 0xB1, 0x88, 0x83, 0x80, 0x04, 0x70, 0xC3, 0x08, - 0x21, 0x86, 0x10, 0x43, 0x08, 0xF8, 0x1C, 0x67, 0x83, 0x03, 0x02, 0x06, - 0x0C, 0x08, 0x10, 0x20, 0x42, 0xFC, 0x0F, 0x08, 0xC0, 0x60, 0xC1, 0xE0, - 0x38, 0x0C, 0x06, 0x03, 0x01, 0x01, 0x1F, 0x00, 0x01, 0x01, 0x81, 0x41, - 0x61, 0x21, 0x11, 0x18, 0x88, 0xFF, 0x02, 0x03, 0x01, 0x00, 0x0F, 0x84, - 0x04, 0x03, 0x80, 0x60, 0x18, 0x0C, 0x06, 0x03, 0x03, 0x03, 0x1E, 0x00, - 0x01, 0x83, 0x87, 0x07, 0x03, 0x03, 0x73, 0xCD, 0x86, 0xC3, 0x61, 0xB1, - 0x88, 0xC3, 0xC0, 0x7F, 0x40, 0x80, 0x80, 0x40, 0x40, 0x60, 0x20, 0x20, - 0x10, 0x10, 0x18, 0x08, 0x00, 0x1E, 0x19, 0xCC, 0x66, 0x33, 0xB0, 0xE0, - 0x50, 0xCC, 0xC3, 0x61, 0xB0, 0xCC, 0xC3, 0xC0, 0x0E, 0x19, 0x8C, 0x6C, - 0x36, 0x1B, 0x0D, 0x86, 0xE6, 0x3F, 0x03, 0x03, 0x06, 0x0C, 0x00, 0x33, - 0x00, 0x00, 0xCC, 0x33, 0x00, 0x00, 0x44, 0x48, 0x01, 0x83, 0x86, 0x1C, - 0x0C, 0x03, 0x80, 0x30, 0x07, 0x00, 0x80, 0xFF, 0x80, 0x00, 0x00, 0x0F, - 0xF8, 0xC0, 0x1C, 0x03, 0x80, 0x70, 0x18, 0x38, 0x70, 0xC0, 0x80, 0x00, - 0x3C, 0x8C, 0x18, 0x30, 0xC3, 0x0C, 0x20, 0x40, 0x80, 0x06, 0x00, 0x0F, - 0xC0, 0xC3, 0x0C, 0x04, 0xC7, 0xBC, 0x64, 0xE2, 0x27, 0x31, 0x39, 0x91, - 0xCC, 0x93, 0x3B, 0x0E, 0x00, 0x1F, 0x80, 0x01, 0x00, 0x60, 0x14, 0x04, - 0xC0, 0x98, 0x23, 0x07, 0xE1, 0x04, 0x20, 0x88, 0x1B, 0x8F, 0x80, 0x3F, - 0xC1, 0x8C, 0x21, 0x8C, 0x31, 0x8C, 0x3E, 0x04, 0x61, 0x86, 0x30, 0xC4, - 0x19, 0x86, 0x7F, 0x80, 0x07, 0x91, 0x86, 0x30, 0x26, 0x02, 0x60, 0x0C, - 0x00, 0xC0, 0x0C, 0x00, 0xC0, 0x0C, 0x00, 0x61, 0x83, 0xE0, 0x3F, 0xC0, - 0x63, 0x82, 0x0C, 0x30, 0x31, 0x81, 0x8C, 0x0C, 0x40, 0x66, 0x07, 0x30, - 0x31, 0x03, 0x18, 0x71, 0xFE, 0x00, 0x3F, 0xF0, 0xC2, 0x08, 0x21, 0x80, - 0x19, 0x81, 0xF8, 0x11, 0x03, 0x10, 0x30, 0x02, 0x04, 0x60, 0x8F, 0xF8, - 0x3F, 0xF0, 0xC2, 0x08, 0x21, 0x80, 0x19, 0x81, 0xF8, 0x11, 0x03, 0x10, - 0x30, 0x02, 0x00, 0x60, 0x0F, 0x80, 0x07, 0x91, 0x87, 0x30, 0x26, 0x02, - 0x60, 0x0C, 0x00, 0xC1, 0xFC, 0x0C, 0xC0, 0xCC, 0x0C, 0x60, 0x83, 0xF0, - 0x3E, 0x3C, 0x30, 0x60, 0x81, 0x06, 0x0C, 0x18, 0x30, 0x7F, 0x81, 0x06, - 0x0C, 0x18, 0x30, 0x60, 0x81, 0x06, 0x0C, 0x3C, 0x78, 0x1E, 0x18, 0x20, - 0xC1, 0x83, 0x04, 0x18, 0x30, 0x41, 0x87, 0x80, 0x0F, 0x81, 0x80, 0x80, - 0xC0, 0x60, 0x20, 0x30, 0x18, 0x0C, 0x04, 0x36, 0x1E, 0x00, 0x3E, 0x78, - 0x61, 0x82, 0x10, 0x31, 0x01, 0xB0, 0x0E, 0x00, 0x58, 0x06, 0x60, 0x33, - 0x01, 0x0C, 0x18, 0x61, 0xE7, 0xC0, 0x3E, 0x01, 0x80, 0x20, 0x0C, 0x01, - 0x80, 0x30, 0x04, 0x01, 0x80, 0x30, 0x04, 0x0D, 0x83, 0x7F, 0xE0, 0x1C, - 0x07, 0x0C, 0x0E, 0x0C, 0x14, 0x14, 0x1C, 0x14, 0x2C, 0x16, 0x4C, 0x26, - 0x48, 0x26, 0x98, 0x27, 0x18, 0x27, 0x10, 0x42, 0x30, 0xF4, 0x7C, 0x38, - 0x78, 0x60, 0x83, 0x04, 0x2C, 0x41, 0x22, 0x09, 0x10, 0x4D, 0x84, 0x28, - 0x21, 0x41, 0x06, 0x10, 0x21, 0xE1, 0x00, 0x07, 0x83, 0x18, 0xC1, 0xB0, - 0x36, 0x07, 0xC0, 0xF0, 0x3E, 0x06, 0xC0, 0xD8, 0x31, 0x8C, 0x1E, 0x00, - 0x3F, 0xC1, 0x9C, 0x21, 0x8C, 0x31, 0x86, 0x31, 0x87, 0xE1, 0x80, 0x30, - 0x04, 0x01, 0x80, 0x78, 0x00, 0x07, 0x83, 0x18, 0xC1, 0x98, 0x36, 0x07, - 0xC0, 0xF0, 0x1E, 0x06, 0xC0, 0xD8, 0x31, 0x04, 0x13, 0x01, 0x80, 0x70, - 0xB7, 0xE0, 0x3F, 0xC1, 0x8C, 0x21, 0x8C, 0x31, 0x8C, 0x3F, 0x04, 0xC1, - 0x98, 0x31, 0x84, 0x31, 0x86, 0x78, 0x70, 0x1E, 0x4C, 0x63, 0x08, 0xC0, - 0x38, 0x07, 0x00, 0x60, 0x0C, 0x43, 0x10, 0xC6, 0x62, 0x70, 0x7F, 0xE9, - 0x8E, 0x31, 0x04, 0x01, 0x80, 0x30, 0x06, 0x00, 0x80, 0x30, 0x06, 0x00, - 0x80, 0x7E, 0x00, 0x7C, 0xF3, 0x02, 0x30, 0x46, 0x04, 0x60, 0x46, 0x04, - 0x40, 0x8C, 0x08, 0xC0, 0x8C, 0x10, 0xE3, 0x03, 0xC0, 0xF8, 0xEC, 0x0C, - 0x81, 0x18, 0x43, 0x08, 0x62, 0x0C, 0x81, 0x90, 0x14, 0x03, 0x00, 0x60, - 0x08, 0x00, 0xFB, 0xCE, 0x43, 0x0C, 0x86, 0x11, 0x8C, 0x43, 0x38, 0x86, - 0xB2, 0x0D, 0x24, 0x1C, 0x50, 0x38, 0xA0, 0x21, 0x80, 0x42, 0x01, 0x04, - 0x00, 0x3E, 0x71, 0x82, 0x0C, 0x40, 0xC8, 0x07, 0x00, 0x60, 0x06, 0x00, - 0xB0, 0x13, 0x02, 0x18, 0x61, 0x8F, 0x3E, 0xF9, 0xC8, 0x23, 0x10, 0xC8, - 0x34, 0x05, 0x01, 0x80, 0x40, 0x30, 0x0C, 0x03, 0x03, 0xE0, 0x3F, 0xE4, - 0x19, 0x03, 0x00, 0xC0, 0x30, 0x0C, 0x03, 0x00, 0x40, 0x18, 0x06, 0x05, - 0x81, 0x7F, 0xE0, 0x0E, 0x10, 0x20, 0x81, 0x02, 0x04, 0x10, 0x20, 0x40, - 0x82, 0x04, 0x08, 0x1C, 0x00, 0x81, 0x04, 0x18, 0x20, 0xC1, 0x04, 0x08, - 0x20, 0x41, 0x38, 0x20, 0x82, 0x08, 0x41, 0x04, 0x10, 0xC2, 0x08, 0x20, - 0x8C, 0x00, 0x18, 0x18, 0x2C, 0x24, 0x46, 0x42, 0x83, 0xFF, 0x80, 0xD8, - 0x80, 0x1F, 0x98, 0x98, 0x4C, 0x2C, 0x36, 0x33, 0x3A, 0xEE, 0x38, 0x08, - 0x04, 0x02, 0x03, 0x71, 0xCC, 0xC6, 0xC3, 0x63, 0x21, 0x93, 0x8F, 0x00, - 0x1F, 0x33, 0x60, 0xC0, 0xC0, 0xC0, 0xC4, 0x78, 0x01, 0x80, 0x40, 0x60, - 0x20, 0xF1, 0x89, 0x8C, 0xC4, 0xC2, 0x63, 0x33, 0xAE, 0xE0, 0x0E, 0x65, - 0x8B, 0x2F, 0x98, 0x31, 0x3C, 0x01, 0xE0, 0x40, 0x08, 0x02, 0x00, 0x40, - 0x3E, 0x03, 0x00, 0x40, 0x08, 0x01, 0x00, 0x60, 0x0C, 0x01, 0x00, 0x20, - 0x04, 0x01, 0x00, 0xC0, 0x00, 0x1E, 0x19, 0xD8, 0xCC, 0xE1, 0xC3, 0x01, - 0xE0, 0xBC, 0x82, 0x41, 0x31, 0x0F, 0x00, 0x38, 0x08, 0x04, 0x02, 0x03, - 0x39, 0x6C, 0xC6, 0x46, 0x63, 0x21, 0x11, 0xB8, 0xE0, 0x30, 0x00, 0xE2, - 0x44, 0xC8, 0xCE, 0x06, 0x00, 0x00, 0x00, 0xC0, 0x83, 0x04, 0x08, 0x10, - 0x60, 0x81, 0x02, 0x04, 0x70, 0x38, 0x10, 0x10, 0x10, 0x37, 0x22, 0x24, - 0x38, 0x78, 0x48, 0x4D, 0xC6, 0x73, 0x32, 0x26, 0x64, 0x4C, 0xDE, 0x77, - 0x39, 0x5E, 0xCC, 0xCC, 0xCE, 0x66, 0x62, 0x22, 0x11, 0x11, 0xB9, 0x8E, - 0x77, 0x3B, 0x33, 0x62, 0x62, 0x42, 0x4D, 0xCE, 0x0F, 0x18, 0xD8, 0x7C, - 0x3C, 0x3E, 0x1B, 0x18, 0xF0, 0x3B, 0x87, 0x31, 0x8C, 0x43, 0x31, 0x88, - 0x62, 0x30, 0xF0, 0x60, 0x10, 0x04, 0x03, 0x80, 0x0F, 0x18, 0x98, 0x4C, - 0x2C, 0x26, 0x33, 0x38, 0xEC, 0x04, 0x02, 0x03, 0x03, 0xC0, 0x76, 0x50, - 0xC1, 0x06, 0x08, 0x10, 0x60, 0x1A, 0x6C, 0xC8, 0xC0, 0xD1, 0xB3, 0x5C, - 0x23, 0xC8, 0xC4, 0x21, 0x18, 0xE0, 0xC3, 0x42, 0x42, 0xC6, 0x86, 0x8C, - 0x9D, 0xEE, 0x62, 0xC4, 0x89, 0xA3, 0x47, 0x0C, 0x10, 0xE2, 0x2C, 0x44, - 0xD8, 0x9D, 0x23, 0xA4, 0x65, 0x0C, 0xC1, 0x10, 0x19, 0x95, 0x43, 0x01, - 0x80, 0xC0, 0xA0, 0x91, 0x8E, 0x70, 0x88, 0x46, 0x23, 0x20, 0x90, 0x50, - 0x28, 0x18, 0x08, 0x08, 0x08, 0x18, 0x00, 0x3F, 0x42, 0x04, 0x08, 0x10, - 0x20, 0x40, 0x72, 0x0E, 0x08, 0x61, 0x04, 0x30, 0x86, 0x08, 0x61, 0x04, - 0x30, 0xC3, 0x8F, 0x00, 0xFF, 0xF0, 0x1E, 0x0C, 0x10, 0x20, 0xC1, 0x82, - 0x04, 0x1C, 0x30, 0x40, 0x83, 0x04, 0x08, 0x20, 0x60, 0x99, 0x8E}; - -const GFXglyph FreeSerifItalic9pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 5, 0, 1}, // 0x20 ' ' - {0, 4, 12, 6, 1, -11}, // 0x21 '!' - {6, 5, 4, 6, 3, -11}, // 0x22 '"' - {9, 10, 12, 9, 0, -11}, // 0x23 '#' - {24, 9, 15, 9, 1, -12}, // 0x24 '$' - {41, 14, 12, 15, 1, -11}, // 0x25 '%' - {62, 12, 12, 14, 1, -11}, // 0x26 '&' - {80, 2, 4, 4, 3, -11}, // 0x27 ''' - {81, 6, 15, 6, 1, -11}, // 0x28 '(' - {93, 6, 15, 6, 0, -11}, // 0x29 ')' - {105, 6, 8, 9, 3, -11}, // 0x2A '*' - {111, 9, 9, 12, 1, -8}, // 0x2B '+' - {122, 2, 4, 5, 0, -1}, // 0x2C ',' - {123, 4, 1, 6, 1, -3}, // 0x2D '-' - {124, 2, 2, 5, 0, -1}, // 0x2E '.' - {125, 8, 12, 5, 0, -11}, // 0x2F '/' - {137, 9, 13, 9, 1, -12}, // 0x30 '0' - {152, 6, 13, 9, 1, -12}, // 0x31 '1' - {162, 8, 12, 9, 1, -11}, // 0x32 '2' - {174, 9, 12, 9, 0, -11}, // 0x33 '3' - {188, 9, 12, 9, 0, -11}, // 0x34 '4' - {202, 9, 12, 9, 0, -11}, // 0x35 '5' - {216, 9, 13, 9, 1, -12}, // 0x36 '6' - {231, 9, 12, 9, 1, -11}, // 0x37 '7' - {245, 9, 13, 9, 1, -12}, // 0x38 '8' - {260, 9, 13, 9, 0, -12}, // 0x39 '9' - {275, 4, 8, 4, 1, -7}, // 0x3A ':' - {279, 4, 10, 4, 1, -7}, // 0x3B ';' - {284, 9, 9, 10, 1, -8}, // 0x3C '<' - {295, 9, 5, 12, 2, -6}, // 0x3D '=' - {301, 9, 9, 10, 1, -8}, // 0x3E '>' - {312, 7, 12, 8, 2, -11}, // 0x3F '?' - {323, 13, 12, 14, 1, -11}, // 0x40 '@' - {343, 11, 11, 12, 0, -10}, // 0x41 'A' - {359, 11, 12, 11, 0, -11}, // 0x42 'B' - {376, 12, 12, 11, 1, -11}, // 0x43 'C' - {394, 13, 12, 13, 0, -11}, // 0x44 'D' - {414, 12, 12, 10, 0, -11}, // 0x45 'E' - {432, 12, 12, 10, 0, -11}, // 0x46 'F' - {450, 12, 12, 12, 1, -11}, // 0x47 'G' - {468, 14, 12, 13, 0, -11}, // 0x48 'H' - {489, 7, 12, 6, 0, -11}, // 0x49 'I' - {500, 9, 12, 8, 0, -11}, // 0x4A 'J' - {514, 13, 12, 12, 0, -11}, // 0x4B 'K' - {534, 11, 12, 10, 0, -11}, // 0x4C 'L' - {551, 16, 12, 15, 0, -11}, // 0x4D 'M' - {575, 13, 12, 12, 0, -11}, // 0x4E 'N' - {595, 11, 12, 12, 1, -11}, // 0x4F 'O' - {612, 11, 12, 10, 0, -11}, // 0x50 'P' - {629, 11, 15, 12, 1, -11}, // 0x51 'Q' - {650, 11, 12, 11, 0, -11}, // 0x52 'R' - {667, 10, 12, 8, 0, -11}, // 0x53 'S' - {682, 11, 12, 11, 2, -11}, // 0x54 'T' - {699, 12, 12, 13, 2, -11}, // 0x55 'U' - {717, 11, 12, 12, 2, -11}, // 0x56 'V' - {734, 15, 12, 16, 2, -11}, // 0x57 'W' - {757, 12, 12, 12, 0, -11}, // 0x58 'X' - {775, 10, 12, 11, 2, -11}, // 0x59 'Y' - {790, 11, 12, 10, 0, -11}, // 0x5A 'Z' - {807, 7, 15, 7, 0, -11}, // 0x5B '[' - {821, 6, 12, 9, 2, -11}, // 0x5C '\' - {830, 6, 15, 7, 1, -11}, // 0x5D ']' - {842, 8, 7, 8, 0, -11}, // 0x5E '^' - {849, 9, 1, 9, 0, 2}, // 0x5F '_' - {851, 3, 3, 5, 2, -11}, // 0x60 '`' - {853, 9, 8, 9, 0, -7}, // 0x61 'a' - {862, 9, 12, 9, 0, -11}, // 0x62 'b' - {876, 8, 8, 7, 0, -7}, // 0x63 'c' - {884, 9, 12, 9, 0, -11}, // 0x64 'd' - {898, 7, 8, 7, 0, -7}, // 0x65 'e' - {905, 11, 17, 8, -1, -12}, // 0x66 'f' - {929, 9, 12, 8, 0, -7}, // 0x67 'g' - {943, 9, 12, 9, 0, -11}, // 0x68 'h' - {957, 4, 12, 4, 1, -11}, // 0x69 'i' - {963, 7, 16, 5, -1, -11}, // 0x6A 'j' - {977, 8, 12, 8, 0, -11}, // 0x6B 'k' - {989, 4, 12, 5, 1, -11}, // 0x6C 'l' - {995, 13, 8, 13, 0, -7}, // 0x6D 'm' - {1008, 8, 8, 9, 0, -7}, // 0x6E 'n' - {1016, 9, 8, 9, 0, -7}, // 0x6F 'o' - {1025, 10, 12, 8, -1, -7}, // 0x70 'p' - {1040, 9, 12, 9, 0, -7}, // 0x71 'q' - {1054, 7, 8, 7, 0, -7}, // 0x72 'r' - {1061, 7, 8, 6, 0, -7}, // 0x73 's' - {1068, 5, 9, 4, 0, -8}, // 0x74 't' - {1074, 8, 8, 9, 1, -7}, // 0x75 'u' - {1082, 7, 8, 8, 1, -7}, // 0x76 'v' - {1089, 11, 8, 12, 1, -7}, // 0x77 'w' - {1100, 9, 8, 8, -1, -7}, // 0x78 'x' - {1109, 9, 12, 9, 0, -7}, // 0x79 'y' - {1123, 8, 9, 7, 0, -7}, // 0x7A 'z' - {1132, 6, 15, 7, 1, -11}, // 0x7B '{' - {1144, 1, 12, 5, 2, -11}, // 0x7C '|' - {1146, 7, 16, 7, 0, -12}, // 0x7D '}' - {1160, 8, 3, 10, 1, -5}}; // 0x7E '~' - -const GFXfont FreeSerifItalic9pt7b PROGMEM = { - (uint8_t *)FreeSerifItalic9pt7bBitmaps, - (GFXglyph *)FreeSerifItalic9pt7bGlyphs, 0x20, 0x7E, 22}; - -// Approx. 1835 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Org_01.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Org_01.h deleted file mode 100644 index 9b80258..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Org_01.h +++ /dev/null @@ -1,131 +0,0 @@ -#pragma once -#include - -// Org_v01 by Orgdot (www.orgdot.com/aliasfonts). A tiny, -// stylized font with all characters within a 6 pixel height. - -const uint8_t Org_01Bitmaps[] PROGMEM = { - 0xE8, 0xA0, 0x57, 0xD5, 0xF5, 0x00, 0xFD, 0x3E, 0x5F, 0x80, 0x88, 0x88, - 0x88, 0x80, 0xF4, 0xBF, 0x2E, 0x80, 0x80, 0x6A, 0x40, 0x95, 0x80, 0xAA, - 0x80, 0x5D, 0x00, 0xC0, 0xF0, 0x80, 0x08, 0x88, 0x88, 0x00, 0xFC, 0x63, - 0x1F, 0x80, 0xF8, 0xF8, 0x7F, 0x0F, 0x80, 0xF8, 0x7E, 0x1F, 0x80, 0x8C, - 0x7E, 0x10, 0x80, 0xFC, 0x3E, 0x1F, 0x80, 0xFC, 0x3F, 0x1F, 0x80, 0xF8, - 0x42, 0x10, 0x80, 0xFC, 0x7F, 0x1F, 0x80, 0xFC, 0x7E, 0x1F, 0x80, 0x90, - 0xB0, 0x2A, 0x22, 0xF0, 0xF0, 0x88, 0xA8, 0xF8, 0x4E, 0x02, 0x00, 0xFD, - 0x6F, 0x0F, 0x80, 0xFC, 0x7F, 0x18, 0x80, 0xF4, 0x7D, 0x1F, 0x00, 0xFC, - 0x21, 0x0F, 0x80, 0xF4, 0x63, 0x1F, 0x00, 0xFC, 0x3F, 0x0F, 0x80, 0xFC, - 0x3F, 0x08, 0x00, 0xFC, 0x2F, 0x1F, 0x80, 0x8C, 0x7F, 0x18, 0x80, 0xF9, - 0x08, 0x4F, 0x80, 0x78, 0x85, 0x2F, 0x80, 0x8D, 0xB1, 0x68, 0x80, 0x84, - 0x21, 0x0F, 0x80, 0xFD, 0x6B, 0x5A, 0x80, 0xFC, 0x63, 0x18, 0x80, 0xFC, - 0x63, 0x1F, 0x80, 0xFC, 0x7F, 0x08, 0x00, 0xFC, 0x63, 0x3F, 0x80, 0xFC, - 0x7F, 0x29, 0x00, 0xFC, 0x3E, 0x1F, 0x80, 0xF9, 0x08, 0x42, 0x00, 0x8C, - 0x63, 0x1F, 0x80, 0x8C, 0x62, 0xA2, 0x00, 0xAD, 0x6B, 0x5F, 0x80, 0x8A, - 0x88, 0xA8, 0x80, 0x8C, 0x54, 0x42, 0x00, 0xF8, 0x7F, 0x0F, 0x80, 0xEA, - 0xC0, 0x82, 0x08, 0x20, 0x80, 0xD5, 0xC0, 0x54, 0xF8, 0x80, 0xF1, 0xFF, - 0x8F, 0x99, 0xF0, 0xF8, 0x8F, 0x1F, 0x99, 0xF0, 0xFF, 0x8F, 0x6B, 0xA4, - 0xF9, 0x9F, 0x10, 0x8F, 0x99, 0x90, 0xF0, 0x55, 0xC0, 0x8A, 0xF9, 0x90, - 0xF8, 0xFD, 0x63, 0x10, 0xF9, 0x99, 0xF9, 0x9F, 0xF9, 0x9F, 0x80, 0xF9, - 0x9F, 0x20, 0xF8, 0x88, 0x47, 0x1F, 0x27, 0xC8, 0x42, 0x00, 0x99, 0x9F, - 0x99, 0x97, 0x8C, 0x6B, 0xF0, 0x96, 0x69, 0x99, 0x9F, 0x10, 0x2E, 0x8F, - 0x2B, 0x22, 0xF8, 0x89, 0xA8, 0x0F, 0xE0}; - -const GFXglyph Org_01Glyphs[] PROGMEM = {{0, 0, 0, 6, 0, 1}, // 0x20 ' ' - {0, 1, 5, 2, 0, -4}, // 0x21 '!' - {1, 3, 1, 4, 0, -4}, // 0x22 '"' - {2, 5, 5, 6, 0, -4}, // 0x23 '#' - {6, 5, 5, 6, 0, -4}, // 0x24 '$' - {10, 5, 5, 6, 0, -4}, // 0x25 '%' - {14, 5, 5, 6, 0, -4}, // 0x26 '&' - {18, 1, 1, 2, 0, -4}, // 0x27 ''' - {19, 2, 5, 3, 0, -4}, // 0x28 '(' - {21, 2, 5, 3, 0, -4}, // 0x29 ')' - {23, 3, 3, 4, 0, -3}, // 0x2A '*' - {25, 3, 3, 4, 0, -3}, // 0x2B '+' - {27, 1, 2, 2, 0, 0}, // 0x2C ',' - {28, 4, 1, 5, 0, -2}, // 0x2D '-' - {29, 1, 1, 2, 0, 0}, // 0x2E '.' - {30, 5, 5, 6, 0, -4}, // 0x2F '/' - {34, 5, 5, 6, 0, -4}, // 0x30 '0' - {38, 1, 5, 2, 0, -4}, // 0x31 '1' - {39, 5, 5, 6, 0, -4}, // 0x32 '2' - {43, 5, 5, 6, 0, -4}, // 0x33 '3' - {47, 5, 5, 6, 0, -4}, // 0x34 '4' - {51, 5, 5, 6, 0, -4}, // 0x35 '5' - {55, 5, 5, 6, 0, -4}, // 0x36 '6' - {59, 5, 5, 6, 0, -4}, // 0x37 '7' - {63, 5, 5, 6, 0, -4}, // 0x38 '8' - {67, 5, 5, 6, 0, -4}, // 0x39 '9' - {71, 1, 4, 2, 0, -3}, // 0x3A ':' - {72, 1, 4, 2, 0, -3}, // 0x3B ';' - {73, 3, 5, 4, 0, -4}, // 0x3C '<' - {75, 4, 3, 5, 0, -3}, // 0x3D '=' - {77, 3, 5, 4, 0, -4}, // 0x3E '>' - {79, 5, 5, 6, 0, -4}, // 0x3F '?' - {83, 5, 5, 6, 0, -4}, // 0x40 '@' - {87, 5, 5, 6, 0, -4}, // 0x41 'A' - {91, 5, 5, 6, 0, -4}, // 0x42 'B' - {95, 5, 5, 6, 0, -4}, // 0x43 'C' - {99, 5, 5, 6, 0, -4}, // 0x44 'D' - {103, 5, 5, 6, 0, -4}, // 0x45 'E' - {107, 5, 5, 6, 0, -4}, // 0x46 'F' - {111, 5, 5, 6, 0, -4}, // 0x47 'G' - {115, 5, 5, 6, 0, -4}, // 0x48 'H' - {119, 5, 5, 6, 0, -4}, // 0x49 'I' - {123, 5, 5, 6, 0, -4}, // 0x4A 'J' - {127, 5, 5, 6, 0, -4}, // 0x4B 'K' - {131, 5, 5, 6, 0, -4}, // 0x4C 'L' - {135, 5, 5, 6, 0, -4}, // 0x4D 'M' - {139, 5, 5, 6, 0, -4}, // 0x4E 'N' - {143, 5, 5, 6, 0, -4}, // 0x4F 'O' - {147, 5, 5, 6, 0, -4}, // 0x50 'P' - {151, 5, 5, 6, 0, -4}, // 0x51 'Q' - {155, 5, 5, 6, 0, -4}, // 0x52 'R' - {159, 5, 5, 6, 0, -4}, // 0x53 'S' - {163, 5, 5, 6, 0, -4}, // 0x54 'T' - {167, 5, 5, 6, 0, -4}, // 0x55 'U' - {171, 5, 5, 6, 0, -4}, // 0x56 'V' - {175, 5, 5, 6, 0, -4}, // 0x57 'W' - {179, 5, 5, 6, 0, -4}, // 0x58 'X' - {183, 5, 5, 6, 0, -4}, // 0x59 'Y' - {187, 5, 5, 6, 0, -4}, // 0x5A 'Z' - {191, 2, 5, 3, 0, -4}, // 0x5B '[' - {193, 5, 5, 6, 0, -4}, // 0x5C '\' - {197, 2, 5, 3, 0, -4}, // 0x5D ']' - {199, 3, 2, 4, 0, -4}, // 0x5E '^' - {200, 5, 1, 6, 0, 1}, // 0x5F '_' - {201, 1, 1, 2, 0, -4}, // 0x60 '`' - {202, 4, 4, 5, 0, -3}, // 0x61 'a' - {204, 4, 5, 5, 0, -4}, // 0x62 'b' - {207, 4, 4, 5, 0, -3}, // 0x63 'c' - {209, 4, 5, 5, 0, -4}, // 0x64 'd' - {212, 4, 4, 5, 0, -3}, // 0x65 'e' - {214, 3, 5, 4, 0, -4}, // 0x66 'f' - {216, 4, 5, 5, 0, -3}, // 0x67 'g' - {219, 4, 5, 5, 0, -4}, // 0x68 'h' - {222, 1, 4, 2, 0, -3}, // 0x69 'i' - {223, 2, 5, 3, 0, -3}, // 0x6A 'j' - {225, 4, 5, 5, 0, -4}, // 0x6B 'k' - {228, 1, 5, 2, 0, -4}, // 0x6C 'l' - {229, 5, 4, 6, 0, -3}, // 0x6D 'm' - {232, 4, 4, 5, 0, -3}, // 0x6E 'n' - {234, 4, 4, 5, 0, -3}, // 0x6F 'o' - {236, 4, 5, 5, 0, -3}, // 0x70 'p' - {239, 4, 5, 5, 0, -3}, // 0x71 'q' - {242, 4, 4, 5, 0, -3}, // 0x72 'r' - {244, 4, 4, 5, 0, -3}, // 0x73 's' - {246, 5, 5, 6, 0, -4}, // 0x74 't' - {250, 4, 4, 5, 0, -3}, // 0x75 'u' - {252, 4, 4, 5, 0, -3}, // 0x76 'v' - {254, 5, 4, 6, 0, -3}, // 0x77 'w' - {257, 4, 4, 5, 0, -3}, // 0x78 'x' - {259, 4, 5, 5, 0, -3}, // 0x79 'y' - {262, 4, 4, 5, 0, -3}, // 0x7A 'z' - {264, 3, 5, 4, 0, -4}, // 0x7B '{' - {266, 1, 5, 2, 0, -4}, // 0x7C '|' - {267, 3, 5, 4, 0, -4}, // 0x7D '}' - {269, 5, 3, 6, 0, -3}}; // 0x7E '~' - -const GFXfont Org_01 PROGMEM = {(uint8_t *)Org_01Bitmaps, - (GFXglyph *)Org_01Glyphs, 0x20, 0x7E, 7}; - -// Approx. 943 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Picopixel.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Picopixel.h deleted file mode 100644 index 463b1b5..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Picopixel.h +++ /dev/null @@ -1,123 +0,0 @@ -#pragma once -#include - -// Picopixel by Sebastian Weber. A tiny font -// with all characters within a 6 pixel height. - -const uint8_t PicopixelBitmaps[] PROGMEM = { - 0xE8, 0xB4, 0x57, 0xD5, 0xF5, 0x00, 0x4E, 0x3E, 0x80, 0xA5, 0x4A, 0x4A, - 0x5A, 0x50, 0xC0, 0x6A, 0x40, 0x95, 0x80, 0xAA, 0x80, 0x5D, 0x00, 0x60, - 0xE0, 0x80, 0x25, 0x48, 0x56, 0xD4, 0x75, 0x40, 0xC5, 0x4E, 0xC5, 0x1C, - 0x97, 0x92, 0xF3, 0x1C, 0x53, 0x54, 0xE5, 0x48, 0x55, 0x54, 0x55, 0x94, - 0xA0, 0x46, 0x64, 0xE3, 0x80, 0x98, 0xC5, 0x04, 0x56, 0xC6, 0x57, 0xDA, - 0xD7, 0x5C, 0x72, 0x46, 0xD6, 0xDC, 0xF3, 0xCE, 0xF3, 0x48, 0x72, 0xD4, - 0xB7, 0xDA, 0xF8, 0x24, 0xD4, 0xBB, 0x5A, 0x92, 0x4E, 0x8E, 0xEB, 0x58, - 0x80, 0x9D, 0xB9, 0x90, 0x56, 0xD4, 0xD7, 0x48, 0x56, 0xD4, 0x40, 0xD7, - 0x5A, 0x71, 0x1C, 0xE9, 0x24, 0xB6, 0xD4, 0xB6, 0xA4, 0x8C, 0x6B, 0x55, - 0x00, 0xB5, 0x5A, 0xB5, 0x24, 0xE5, 0x4E, 0xEA, 0xC0, 0x91, 0x12, 0xD5, - 0xC0, 0x54, 0xF0, 0x90, 0xC7, 0xF0, 0x93, 0x5E, 0x71, 0x80, 0x25, 0xDE, - 0x5E, 0x30, 0x6E, 0x80, 0x77, 0x9C, 0x93, 0x5A, 0xB8, 0x45, 0x60, 0x92, - 0xEA, 0xAA, 0x40, 0xD5, 0x6A, 0xD6, 0x80, 0x55, 0x00, 0xD7, 0x40, 0x75, - 0x90, 0xE8, 0x71, 0xE0, 0xBA, 0x40, 0xB5, 0x80, 0xB5, 0x00, 0x8D, 0x54, - 0xAA, 0x80, 0xAC, 0xE0, 0xE5, 0x70, 0x6A, 0x26, 0xFC, 0xC8, 0xAC, 0x5A}; - -const GFXglyph PicopixelGlyphs[] PROGMEM = {{0, 0, 0, 2, 0, 1}, // 0x20 ' ' - {0, 1, 5, 2, 0, -4}, // 0x21 '!' - {1, 3, 2, 4, 0, -4}, // 0x22 '"' - {2, 5, 5, 6, 0, -4}, // 0x23 '#' - {6, 3, 6, 4, 0, -4}, // 0x24 '$' - {9, 3, 5, 4, 0, -4}, // 0x25 '%' - {11, 4, 5, 5, 0, -4}, // 0x26 '&' - {14, 1, 2, 2, 0, -4}, // 0x27 ''' - {15, 2, 5, 3, 0, -4}, // 0x28 '(' - {17, 2, 5, 3, 0, -4}, // 0x29 ')' - {19, 3, 3, 4, 0, -3}, // 0x2A '*' - {21, 3, 3, 4, 0, -3}, // 0x2B '+' - {23, 2, 2, 3, 0, 0}, // 0x2C ',' - {24, 3, 1, 4, 0, -2}, // 0x2D '-' - {25, 1, 1, 2, 0, 0}, // 0x2E '.' - {26, 3, 5, 4, 0, -4}, // 0x2F '/' - {28, 3, 5, 4, 0, -4}, // 0x30 '0' - {30, 2, 5, 3, 0, -4}, // 0x31 '1' - {32, 3, 5, 4, 0, -4}, // 0x32 '2' - {34, 3, 5, 4, 0, -4}, // 0x33 '3' - {36, 3, 5, 4, 0, -4}, // 0x34 '4' - {38, 3, 5, 4, 0, -4}, // 0x35 '5' - {40, 3, 5, 4, 0, -4}, // 0x36 '6' - {42, 3, 5, 4, 0, -4}, // 0x37 '7' - {44, 3, 5, 4, 0, -4}, // 0x38 '8' - {46, 3, 5, 4, 0, -4}, // 0x39 '9' - {48, 1, 3, 2, 0, -3}, // 0x3A ':' - {49, 2, 4, 3, 0, -3}, // 0x3B ';' - {50, 2, 3, 3, 0, -3}, // 0x3C '<' - {51, 3, 3, 4, 0, -3}, // 0x3D '=' - {53, 2, 3, 3, 0, -3}, // 0x3E '>' - {54, 3, 5, 4, 0, -4}, // 0x3F '?' - {56, 3, 5, 4, 0, -4}, // 0x40 '@' - {58, 3, 5, 4, 0, -4}, // 0x41 'A' - {60, 3, 5, 4, 0, -4}, // 0x42 'B' - {62, 3, 5, 4, 0, -4}, // 0x43 'C' - {64, 3, 5, 4, 0, -4}, // 0x44 'D' - {66, 3, 5, 4, 0, -4}, // 0x45 'E' - {68, 3, 5, 4, 0, -4}, // 0x46 'F' - {70, 3, 5, 4, 0, -4}, // 0x47 'G' - {72, 3, 5, 4, 0, -4}, // 0x48 'H' - {74, 1, 5, 2, 0, -4}, // 0x49 'I' - {75, 3, 5, 4, 0, -4}, // 0x4A 'J' - {77, 3, 5, 4, 0, -4}, // 0x4B 'K' - {79, 3, 5, 4, 0, -4}, // 0x4C 'L' - {81, 5, 5, 6, 0, -4}, // 0x4D 'M' - {85, 4, 5, 5, 0, -4}, // 0x4E 'N' - {88, 3, 5, 4, 0, -4}, // 0x4F 'O' - {90, 3, 5, 4, 0, -4}, // 0x50 'P' - {92, 3, 6, 4, 0, -4}, // 0x51 'Q' - {95, 3, 5, 4, 0, -4}, // 0x52 'R' - {97, 3, 5, 4, 0, -4}, // 0x53 'S' - {99, 3, 5, 4, 0, -4}, // 0x54 'T' - {101, 3, 5, 4, 0, -4}, // 0x55 'U' - {103, 3, 5, 4, 0, -4}, // 0x56 'V' - {105, 5, 5, 6, 0, -4}, // 0x57 'W' - {109, 3, 5, 4, 0, -4}, // 0x58 'X' - {111, 3, 5, 4, 0, -4}, // 0x59 'Y' - {113, 3, 5, 4, 0, -4}, // 0x5A 'Z' - {115, 2, 5, 3, 0, -4}, // 0x5B '[' - {117, 3, 5, 4, 0, -4}, // 0x5C '\' - {119, 2, 5, 3, 0, -4}, // 0x5D ']' - {121, 3, 2, 4, 0, -4}, // 0x5E '^' - {122, 4, 1, 4, 0, 1}, // 0x5F '_' - {123, 2, 2, 3, 0, -4}, // 0x60 '`' - {124, 3, 4, 4, 0, -3}, // 0x61 'a' - {126, 3, 5, 4, 0, -4}, // 0x62 'b' - {128, 3, 3, 4, 0, -2}, // 0x63 'c' - {130, 3, 5, 4, 0, -4}, // 0x64 'd' - {132, 3, 4, 4, 0, -3}, // 0x65 'e' - {134, 2, 5, 3, 0, -4}, // 0x66 'f' - {136, 3, 5, 4, 0, -3}, // 0x67 'g' - {138, 3, 5, 4, 0, -4}, // 0x68 'h' - {140, 1, 5, 2, 0, -4}, // 0x69 'i' - {141, 2, 6, 3, 0, -4}, // 0x6A 'j' - {143, 3, 5, 4, 0, -4}, // 0x6B 'k' - {145, 2, 5, 3, 0, -4}, // 0x6C 'l' - {147, 5, 3, 6, 0, -2}, // 0x6D 'm' - {149, 3, 3, 4, 0, -2}, // 0x6E 'n' - {151, 3, 3, 4, 0, -2}, // 0x6F 'o' - {153, 3, 4, 4, 0, -2}, // 0x70 'p' - {155, 3, 4, 4, 0, -2}, // 0x71 'q' - {157, 2, 3, 3, 0, -2}, // 0x72 'r' - {158, 3, 4, 4, 0, -3}, // 0x73 's' - {160, 2, 5, 3, 0, -4}, // 0x74 't' - {162, 3, 3, 4, 0, -2}, // 0x75 'u' - {164, 3, 3, 4, 0, -2}, // 0x76 'v' - {166, 5, 3, 6, 0, -2}, // 0x77 'w' - {168, 3, 3, 4, 0, -2}, // 0x78 'x' - {170, 3, 4, 4, 0, -2}, // 0x79 'y' - {172, 3, 4, 4, 0, -3}, // 0x7A 'z' - {174, 3, 5, 4, 0, -4}, // 0x7B '{' - {176, 1, 6, 2, 0, -4}, // 0x7C '|' - {177, 3, 5, 4, 0, -4}, // 0x7D '}' - {179, 4, 2, 5, 0, -3}}; // 0x7E '~' - -const GFXfont Picopixel PROGMEM = {(uint8_t *)PicopixelBitmaps, - (GFXglyph *)PicopixelGlyphs, 0x20, 0x7E, 7}; - -// Approx. 852 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h deleted file mode 100644 index 5b0ba4a..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/Tiny3x3a2pt7b.h +++ /dev/null @@ -1,133 +0,0 @@ -#pragma once -#include - -/** -** The FontStruction “Tiny3x3a” -** (https://fontstruct.com/fontstructions/show/670512) by “Michaelangel007” is -** licensed under a Creative Commons Attribution Non-commercial Share Alike -*license -** (http://creativecommons.org/licenses/by-nc-sa/3.0/). -** “Tiny3x3a” was originally cloned (copied) from the FontStruction -** “CHECKER” (https://fontstruct.com/fontstructions/show/2391) by Wolf grant -** Grant, which is licensed under a Creative Commons Attribution Non-commercial -** Share Alike license (http://creativecommons.org/licenses/by-nc-sa/3.0/). -* -* Converted by eadmaster with fontconvert -**/ - -const uint8_t Tiny3x3a2pt7bBitmaps[] PROGMEM = { - 0xC0, 0xB4, 0xBF, 0x80, 0x6B, 0x00, 0xDD, 0x80, 0x59, 0x80, 0x80, 0x64, - 0x98, 0xF0, 0x5D, 0x00, 0xC0, 0xE0, 0x80, 0x2A, 0x00, 0x55, 0x00, 0x94, - 0xC9, 0x80, 0xEF, 0x80, 0xBC, 0x80, 0x6B, 0x00, 0x9F, 0x80, 0xE4, 0x80, - 0x7F, 0x00, 0xFC, 0x80, 0xA0, 0x58, 0x64, 0xE3, 0x80, 0x98, 0xD8, 0xD8, - 0x80, 0x5E, 0x80, 0xDF, 0x80, 0x71, 0x80, 0xD7, 0x00, 0xFB, 0x80, 0xFA, - 0x00, 0xD7, 0x80, 0xBE, 0x80, 0xE0, 0x27, 0x00, 0xBA, 0x80, 0x93, 0x80, - 0xFE, 0x80, 0xF6, 0x80, 0xF7, 0x80, 0xFE, 0x00, 0xF7, 0x00, 0xDE, 0x80, - 0x6B, 0x00, 0xE9, 0x00, 0xB7, 0x80, 0xB5, 0x00, 0xBF, 0x80, 0xAA, 0x80, - 0xA9, 0x00, 0xEB, 0x80, 0xEC, 0x88, 0x80, 0xDC, 0x54, 0xE0, 0x90, 0x70, - 0xBC, 0xF0, 0x7C, 0xB0, 0x68, 0xFC, 0xBC, 0xC0, 0x58, 0x9A, 0x80, 0xA4, - 0xDC, 0xD4, 0xF0, 0xF8, 0xF4, 0xE0, 0x60, 0x59, 0x80, 0xBC, 0xA8, 0xEC, - 0xF0, 0xAC, 0x80, 0x90, 0x79, 0x80, 0xF0, 0xCF, 0x00, 0x78}; - -const GFXglyph Tiny3x3a2pt7bGlyphs[] PROGMEM = { - {0, 0, 0, 4, 0, 1}, // 0x20 ' ' - {0, 1, 2, 3, 1, -2}, // 0x21 '!' - {1, 3, 2, 4, 0, -2}, // 0x22 '"' - {2, 3, 3, 4, 0, -2}, // 0x23 '#' - {4, 3, 3, 4, 0, -2}, // 0x24 '$' - {6, 3, 3, 4, 0, -2}, // 0x25 '%' - {8, 3, 3, 4, 0, -2}, // 0x26 '&' - {10, 1, 1, 3, 1, -2}, // 0x27 ''' - {11, 2, 3, 3, 0, -2}, // 0x28 '(' - {12, 2, 3, 4, 1, -2}, // 0x29 ')' - {13, 2, 2, 4, 1, -2}, // 0x2A '*' - {14, 3, 3, 4, 0, -2}, // 0x2B '+' - {16, 1, 2, 2, 0, 0}, // 0x2C ',' - {17, 3, 1, 4, 0, -1}, // 0x2D '-' - {18, 1, 1, 2, 0, 0}, // 0x2E '.' - {19, 3, 3, 4, 0, -2}, // 0x2F '/' - {21, 3, 3, 4, 0, -2}, // 0x30 '0' - {23, 2, 3, 3, 0, -2}, // 0x31 '1' - {24, 3, 3, 4, 0, -2}, // 0x32 '2' - {26, 3, 3, 4, 0, -2}, // 0x33 '3' - {28, 3, 3, 4, 0, -2}, // 0x34 '4' - {30, 3, 3, 4, 0, -2}, // 0x35 '5' - {32, 3, 3, 4, 0, -2}, // 0x36 '6' - {34, 3, 3, 4, 0, -2}, // 0x37 '7' - {36, 3, 3, 4, 0, -2}, // 0x38 '8' - {38, 3, 3, 4, 0, -2}, // 0x39 '9' - {40, 1, 3, 3, 1, -2}, // 0x3A ':' - {41, 2, 3, 3, 0, -1}, // 0x3B ';' - {42, 2, 3, 3, 0, -2}, // 0x3C '<' - {43, 3, 3, 4, 0, -2}, // 0x3D '=' - {45, 2, 3, 4, 1, -2}, // 0x3E '>' - {46, 2, 3, 4, 1, -2}, // 0x3F '?' - {47, 3, 3, 4, 0, -2}, // 0x40 '@' - {49, 3, 3, 4, 0, -2}, // 0x41 'A' - {51, 3, 3, 4, 0, -2}, // 0x42 'B' - {53, 3, 3, 4, 0, -2}, // 0x43 'C' - {55, 3, 3, 4, 0, -2}, // 0x44 'D' - {57, 3, 3, 4, 0, -2}, // 0x45 'E' - {59, 3, 3, 4, 0, -2}, // 0x46 'F' - {61, 3, 3, 4, 0, -2}, // 0x47 'G' - {63, 3, 3, 4, 0, -2}, // 0x48 'H' - {65, 1, 3, 3, 1, -2}, // 0x49 'I' - {66, 3, 3, 4, 0, -2}, // 0x4A 'J' - {68, 3, 3, 4, 0, -2}, // 0x4B 'K' - {70, 3, 3, 4, 0, -2}, // 0x4C 'L' - {72, 3, 3, 4, 0, -2}, // 0x4D 'M' - {74, 3, 3, 4, 0, -2}, // 0x4E 'N' - {76, 3, 3, 4, 0, -2}, // 0x4F 'O' - {78, 3, 3, 4, 0, -2}, // 0x50 'P' - {80, 3, 3, 4, 0, -2}, // 0x51 'Q' - {82, 3, 3, 4, 0, -2}, // 0x52 'R' - {84, 3, 3, 4, 0, -2}, // 0x53 'S' - {86, 3, 3, 4, 0, -2}, // 0x54 'T' - {88, 3, 3, 4, 0, -2}, // 0x55 'U' - {90, 3, 3, 4, 0, -2}, // 0x56 'V' - {92, 3, 3, 4, 0, -2}, // 0x57 'W' - {94, 3, 3, 4, 0, -2}, // 0x58 'X' - {96, 3, 3, 4, 0, -2}, // 0x59 'Y' - {98, 3, 3, 4, 0, -2}, // 0x5A 'Z' - {100, 2, 3, 3, 0, -2}, // 0x5B '[' - {101, 3, 3, 4, 0, -2}, // 0x5C '\' - {103, 2, 3, 4, 1, -2}, // 0x5D ']' - {104, 3, 2, 4, 0, -2}, // 0x5E '^' - {105, 3, 1, 4, 0, 0}, // 0x5F '_' - {106, 2, 2, 3, 0, -2}, // 0x60 '`' - {107, 2, 2, 3, 0, -1}, // 0x61 'a' - {108, 2, 3, 3, 0, -2}, // 0x62 'b' - {109, 2, 2, 3, 0, -1}, // 0x63 'c' - {110, 2, 3, 3, 0, -2}, // 0x64 'd' - {111, 2, 2, 3, 0, -1}, // 0x65 'e' - {112, 2, 3, 3, 0, -2}, // 0x66 'f' - {113, 2, 3, 3, 0, -1}, // 0x67 'g' - {114, 2, 3, 3, 0, -2}, // 0x68 'h' - {115, 1, 2, 2, 0, -1}, // 0x69 'i' - {116, 2, 3, 3, 0, -1}, // 0x6A 'j' - {117, 3, 3, 4, 0, -2}, // 0x6B 'k' - {119, 2, 3, 3, 0, -2}, // 0x6C 'l' - {120, 3, 2, 4, 0, -1}, // 0x6D 'm' - {121, 3, 2, 4, 0, -1}, // 0x6E 'n' - {122, 2, 2, 3, 0, -1}, // 0x6F 'o' - {123, 2, 3, 3, 0, -1}, // 0x70 'p' - {124, 2, 3, 3, 0, -1}, // 0x71 'q' - {125, 2, 2, 3, 0, -1}, // 0x72 'r' - {126, 2, 2, 3, 0, -1}, // 0x73 's' - {127, 3, 3, 4, 0, -2}, // 0x74 't' - {129, 3, 2, 4, 0, -1}, // 0x75 'u' - {130, 3, 2, 4, 0, -1}, // 0x76 'v' - {131, 3, 2, 4, 0, -1}, // 0x77 'w' - {132, 2, 2, 3, 0, -1}, // 0x78 'x' - {133, 3, 3, 4, 0, -1}, // 0x79 'y' - {135, 2, 2, 3, 0, -1}, // 0x7A 'z' - {136, 3, 3, 4, 0, -2}, // 0x7B '{' - {138, 1, 4, 3, 1, -2}, // 0x7C '|' - {139, 3, 3, 4, 0, -2}, // 0x7D '}' - {141, 3, 2, 4, 0, -2}}; // 0x7E '~' - -const GFXfont Tiny3x3a2pt7b PROGMEM = {(uint8_t *)Tiny3x3a2pt7bBitmaps, - (GFXglyph *)Tiny3x3a2pt7bGlyphs, 0x20, - 0x7E, 4}; - -// Approx. 814 bytes diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/TomThumb.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/TomThumb.h deleted file mode 100644 index 2155500..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/Fonts/TomThumb.h +++ /dev/null @@ -1,477 +0,0 @@ -#pragma once -#include - -/** -** The original 3x5 font is licensed under the 3-clause BSD license: -** -** Copyright 1999 Brian J. Swetland -** Copyright 1999 Vassilii Khachaturov -** Portions (of vt100.c/vt100.h) copyright Dan Marks -** -** All rights reserved. -** -** Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions -** are met: -** 1. Redistributions of source code must retain the above copyright -** notice, this list of conditions, and the following disclaimer. -** 2. 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. -** 3. The name of the authors may not be used to endorse or promote products -** derived from this software without specific prior written permission. -** -** THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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. -** -** Modifications to Tom Thumb for improved readability are from Robey Pointer, -** see: -** http://robey.lag.net/2010/01/23/tiny-monospace-font.html -** -** The original author does not have any objection to relicensing of Robey -** Pointer's modifications (in this file) in a more permissive license. See -** the discussion at the above blog, and also here: -** http://opengameart.org/forumtopic/how-to-submit-art-using-the-3-clause-bsd-license -** -** Feb 21, 2016: Conversion from Linux BDF --> Adafruit GFX font, -** with the help of this Python script: -** https://gist.github.com/skelliam/322d421f028545f16f6d -** William Skellenger (williamj@skellenger.net) -** Twitter: @skelliam -** -** Jan 09, 2020: Bitmaps now compressed, to fix the bounding box problem, -** because non-compressed the calculated text width were wrong. -** Andreas Merkle (web@blue-andi.de) -*/ - -#define TOMTHUMB_USE_EXTENDED 0 - -const uint8_t TomThumbBitmaps[] PROGMEM = { - 0x00, /* 0x20 space */ - 0xE8, /* 0x21 exclam */ - 0xB4, /* 0x22 quotedbl */ - 0xBE, 0xFA, /* 0x23 numbersign */ - 0x79, 0xE4, /* 0x24 dollar */ - 0x85, 0x42, /* 0x25 percent */ - 0xDB, 0xD6, /* 0x26 ampersand */ - 0xC0, /* 0x27 quotesingle */ - 0x6A, 0x40, /* 0x28 parenleft */ - 0x95, 0x80, /* 0x29 parenright */ - 0xAA, 0x80, /* 0x2A asterisk */ - 0x5D, 0x00, /* 0x2B plus */ - 0x60, /* 0x2C comma */ - 0xE0, /* 0x2D hyphen */ - 0x80, /* 0x2E period */ - 0x25, 0x48, /* 0x2F slash */ - 0x76, 0xDC, /* 0x30 zero */ - 0x75, 0x40, /* 0x31 one */ - 0xC5, 0x4E, /* 0x32 two */ - 0xC5, 0x1C, /* 0x33 three */ - 0xB7, 0x92, /* 0x34 four */ - 0xF3, 0x1C, /* 0x35 five */ - 0x73, 0xDE, /* 0x36 six */ - 0xE5, 0x48, /* 0x37 seven */ - 0xF7, 0xDE, /* 0x38 eight */ - 0xF7, 0x9C, /* 0x39 nine */ - 0xA0, /* 0x3A colon */ - 0x46, /* 0x3B semicolon */ - 0x2A, 0x22, /* 0x3C less */ - 0xE3, 0x80, /* 0x3D equal */ - 0x88, 0xA8, /* 0x3E greater */ - 0xE5, 0x04, /* 0x3F question */ - 0x57, 0xC6, /* 0x40 at */ - 0x57, 0xDA, /* 0x41 A */ - 0xD7, 0x5C, /* 0x42 B */ - 0x72, 0x46, /* 0x43 C */ - 0xD6, 0xDC, /* 0x44 D */ - 0xF3, 0xCE, /* 0x45 E */ - 0xF3, 0xC8, /* 0x46 F */ - 0x73, 0xD6, /* 0x47 G */ - 0xB7, 0xDA, /* 0x48 H */ - 0xE9, 0x2E, /* 0x49 I */ - 0x24, 0xD4, /* 0x4A J */ - 0xB7, 0x5A, /* 0x4B K */ - 0x92, 0x4E, /* 0x4C L */ - 0xBF, 0xDA, /* 0x4D M */ - 0xBF, 0xFA, /* 0x4E N */ - 0x56, 0xD4, /* 0x4F O */ - 0xD7, 0x48, /* 0x50 P */ - 0x56, 0xF6, /* 0x51 Q */ - 0xD7, 0xEA, /* 0x52 R */ - 0x71, 0x1C, /* 0x53 S */ - 0xE9, 0x24, /* 0x54 T */ - 0xB6, 0xD6, /* 0x55 U */ - 0xB6, 0xA4, /* 0x56 V */ - 0xB7, 0xFA, /* 0x57 W */ - 0xB5, 0x5A, /* 0x58 X */ - 0xB5, 0x24, /* 0x59 Y */ - 0xE5, 0x4E, /* 0x5A Z */ - 0xF2, 0x4E, /* 0x5B bracketleft */ - 0x88, 0x80, /* 0x5C backslash */ - 0xE4, 0x9E, /* 0x5D bracketright */ - 0x54, /* 0x5E asciicircum */ - 0xE0, /* 0x5F underscore */ - 0x90, /* 0x60 grave */ - 0xCE, 0xF0, /* 0x61 a */ - 0x9A, 0xDC, /* 0x62 b */ - 0x72, 0x30, /* 0x63 c */ - 0x2E, 0xD6, /* 0x64 d */ - 0x77, 0x30, /* 0x65 e */ - 0x2B, 0xA4, /* 0x66 f */ - 0x77, 0x94, /* 0x67 g */ - 0x9A, 0xDA, /* 0x68 h */ - 0xB8, /* 0x69 i */ - 0x20, 0x9A, 0x80, /* 0x6A j */ - 0x97, 0x6A, /* 0x6B k */ - 0xC9, 0x2E, /* 0x6C l */ - 0xFF, 0xD0, /* 0x6D m */ - 0xD6, 0xD0, /* 0x6E n */ - 0x56, 0xA0, /* 0x6F o */ - 0xD6, 0xE8, /* 0x70 p */ - 0x76, 0xB2, /* 0x71 q */ - 0x72, 0x40, /* 0x72 r */ - 0x79, 0xE0, /* 0x73 s */ - 0x5D, 0x26, /* 0x74 t */ - 0xB6, 0xB0, /* 0x75 u */ - 0xB7, 0xA0, /* 0x76 v */ - 0xBF, 0xF0, /* 0x77 w */ - 0xA9, 0x50, /* 0x78 x */ - 0xB5, 0x94, /* 0x79 y */ - 0xEF, 0x70, /* 0x7A z */ - 0x6A, 0x26, /* 0x7B braceleft */ - 0xD8, /* 0x7C bar */ - 0xC8, 0xAC, /* 0x7D braceright */ - 0x78, /* 0x7E asciitilde */ -#if (TOMTHUMB_USE_EXTENDED) - 0xB8, /* 0xA1 exclamdown */ - 0x5E, 0x74, /* 0xA2 cent */ - 0x6B, 0xAE, /* 0xA3 sterling */ - 0xAB, 0xAA, /* 0xA4 currency */ - 0xB5, 0x74, /* 0xA5 yen */ - 0xD8, /* 0xA6 brokenbar */ - 0x6A, 0xAC, /* 0xA7 section */ - 0xA0, /* 0xA8 dieresis */ - 0x71, 0x80, /* 0xA9 copyright */ - 0x77, 0x8E, /* 0xAA ordfeminine */ - 0x64, /* 0xAB guillemotleft */ - 0xE4, /* 0xAC logicalnot */ - 0xC0, /* 0xAD softhyphen */ - 0xDA, 0x80, /* 0xAE registered */ - 0xE0, /* 0xAF macron */ - 0x55, 0x00, /* 0xB0 degree */ - 0x5D, 0x0E, /* 0xB1 plusminus */ - 0xC9, 0x80, /* 0xB2 twosuperior */ - 0xEF, 0x80, /* 0xB3 threesuperior */ - 0x60, /* 0xB4 acute */ - 0xB6, 0xE8, /* 0xB5 mu */ - 0x75, 0xB6, /* 0xB6 paragraph */ - 0xFF, 0x80, /* 0xB7 periodcentered */ - 0x47, 0x00, /* 0xB8 cedilla */ - 0xE0, /* 0xB9 onesuperior */ - 0x55, 0x0E, /* 0xBA ordmasculine */ - 0x98, /* 0xBB guillemotright */ - 0x90, 0x32, /* 0xBC onequarter */ - 0x90, 0x66, /* 0xBD onehalf */ - 0xD8, 0x32, /* 0xBE threequarters */ - 0x41, 0x4E, /* 0xBF questiondown */ - 0x45, 0x7A, /* 0xC0 Agrave */ - 0x51, 0x7A, /* 0xC1 Aacute */ - 0xE1, 0x7A, /* 0xC2 Acircumflex */ - 0x79, 0x7A, /* 0xC3 Atilde */ - 0xAA, 0xFA, /* 0xC4 Adieresis */ - 0xDA, 0xFA, /* 0xC5 Aring */ - 0x7B, 0xEE, /* 0xC6 AE */ - 0x72, 0x32, 0x80, /* 0xC7 Ccedilla */ - 0x47, 0xEE, /* 0xC8 Egrave */ - 0x53, 0xEE, /* 0xC9 Eacute */ - 0xE3, 0xEE, /* 0xCA Ecircumflex */ - 0xA3, 0xEE, /* 0xCB Edieresis */ - 0x47, 0xAE, /* 0xCC Igrave */ - 0x53, 0xAE, /* 0xCD Iacute */ - 0xE3, 0xAE, /* 0xCE Icircumflex */ - 0xA3, 0xAE, /* 0xCF Idieresis */ - 0xD7, 0xDC, /* 0xD0 Eth */ - 0xCE, 0xFA, /* 0xD1 Ntilde */ - 0x47, 0xDE, /* 0xD2 Ograve */ - 0x53, 0xDE, /* 0xD3 Oacute */ - 0xE3, 0xDE, /* 0xD4 Ocircumflex */ - 0xCF, 0xDE, /* 0xD5 Otilde */ - 0xA3, 0xDE, /* 0xD6 Odieresis */ - 0xAA, 0x80, /* 0xD7 multiply */ - 0x77, 0xDC, /* 0xD8 Oslash */ - 0x8A, 0xDE, /* 0xD9 Ugrave */ - 0x2A, 0xDE, /* 0xDA Uacute */ - 0xE2, 0xDE, /* 0xDB Ucircumflex */ - 0xA2, 0xDE, /* 0xDC Udieresis */ - 0x2A, 0xF4, /* 0xDD Yacute */ - 0x9E, 0xF8, /* 0xDE Thorn */ - 0x77, 0x5D, 0x00, /* 0xDF germandbls */ - 0x45, 0xDE, /* 0xE0 agrave */ - 0x51, 0xDE, /* 0xE1 aacute */ - 0xE1, 0xDE, /* 0xE2 acircumflex */ - 0x79, 0xDE, /* 0xE3 atilde */ - 0xA1, 0xDE, /* 0xE4 adieresis */ - 0x6D, 0xDE, /* 0xE5 aring */ - 0x7F, 0xE0, /* 0xE6 ae */ - 0x71, 0x94, /* 0xE7 ccedilla */ - 0x45, 0xF6, /* 0xE8 egrave */ - 0x51, 0xF6, /* 0xE9 eacute */ - 0xE1, 0xF6, /* 0xEA ecircumflex */ - 0xA1, 0xF6, /* 0xEB edieresis */ - 0x9A, 0x80, /* 0xEC igrave */ - 0x65, 0x40, /* 0xED iacute */ - 0xE1, 0x24, /* 0xEE icircumflex */ - 0xA1, 0x24, /* 0xEF idieresis */ - 0x79, 0xD6, /* 0xF0 eth */ - 0xCF, 0x5A, /* 0xF1 ntilde */ - 0x45, 0x54, /* 0xF2 ograve */ - 0x51, 0x54, /* 0xF3 oacute */ - 0xE1, 0x54, /* 0xF4 ocircumflex */ - 0xCD, 0x54, /* 0xF5 otilde */ - 0xA1, 0x54, /* 0xF6 odieresis */ - 0x43, 0x84, /* 0xF7 divide */ - 0x7E, 0xE0, /* 0xF8 oslash */ - 0x8A, 0xD6, /* 0xF9 ugrave */ - 0x2A, 0xD6, /* 0xFA uacute */ - 0xE2, 0xD6, /* 0xFB ucircumflex */ - 0xA2, 0xD6, /* 0xFC udieresis */ - 0x2A, 0xB2, 0x80, /* 0xFD yacute */ - 0x9A, 0xE8, /* 0xFE thorn */ - 0xA2, 0xB2, 0x80, /* 0xFF ydieresis */ - 0x00, /* 0x11D gcircumflex */ - 0x7B, 0xE6, /* 0x152 OE */ - 0x7F, 0x70, /* 0x153 oe */ - 0xAF, 0x3C, /* 0x160 Scaron */ - 0xAF, 0x3C, /* 0x161 scaron */ - 0xA2, 0xA4, /* 0x178 Ydieresis */ - 0xBD, 0xEE, /* 0x17D Zcaron */ - 0xBD, 0xEE, /* 0x17E zcaron */ - 0x00, /* 0xEA4 uni0EA4 */ - 0x00, /* 0x13A0 uni13A0 */ - 0x80, /* 0x2022 bullet */ - 0xA0, /* 0x2026 ellipsis */ - 0x7F, 0xE6, /* 0x20AC Euro */ - 0xEA, 0xAA, 0xE0, /* 0xFFFD uniFFFD */ -#endif /* (TOMTHUMB_USE_EXTENDED) */ -}; - -/* {offset, width, height, advance cursor, x offset, y offset} */ -const GFXglyph TomThumbGlyphs[] PROGMEM = { - {0, 1, 1, 2, 0, -5}, /* 0x20 space */ - {1, 1, 5, 2, 0, -5}, /* 0x21 exclam */ - {2, 3, 2, 4, 0, -5}, /* 0x22 quotedbl */ - {3, 3, 5, 4, 0, -5}, /* 0x23 numbersign */ - {5, 3, 5, 4, 0, -5}, /* 0x24 dollar */ - {7, 3, 5, 4, 0, -5}, /* 0x25 percent */ - {9, 3, 5, 4, 0, -5}, /* 0x26 ampersand */ - {11, 1, 2, 2, 0, -5}, /* 0x27 quotesingle */ - {12, 2, 5, 3, 0, -5}, /* 0x28 parenleft */ - {14, 2, 5, 3, 0, -5}, /* 0x29 parenright */ - {16, 3, 3, 4, 0, -5}, /* 0x2A asterisk */ - {18, 3, 3, 4, 0, -4}, /* 0x2B plus */ - {20, 2, 2, 3, 0, -2}, /* 0x2C comma */ - {21, 3, 1, 4, 0, -3}, /* 0x2D hyphen */ - {22, 1, 1, 2, 0, -1}, /* 0x2E period */ - {23, 3, 5, 4, 0, -5}, /* 0x2F slash */ - {25, 3, 5, 4, 0, -5}, /* 0x30 zero */ - {27, 2, 5, 3, 0, -5}, /* 0x31 one */ - {29, 3, 5, 4, 0, -5}, /* 0x32 two */ - {31, 3, 5, 4, 0, -5}, /* 0x33 three */ - {33, 3, 5, 4, 0, -5}, /* 0x34 four */ - {35, 3, 5, 4, 0, -5}, /* 0x35 five */ - {37, 3, 5, 4, 0, -5}, /* 0x36 six */ - {39, 3, 5, 4, 0, -5}, /* 0x37 seven */ - {41, 3, 5, 4, 0, -5}, /* 0x38 eight */ - {43, 3, 5, 4, 0, -5}, /* 0x39 nine */ - {45, 1, 3, 2, 0, -4}, /* 0x3A colon */ - {46, 2, 4, 3, 0, -4}, /* 0x3B semicolon */ - {47, 3, 5, 4, 0, -5}, /* 0x3C less */ - {49, 3, 3, 4, 0, -4}, /* 0x3D equal */ - {51, 3, 5, 4, 0, -5}, /* 0x3E greater */ - {53, 3, 5, 4, 0, -5}, /* 0x3F question */ - {55, 3, 5, 4, 0, -5}, /* 0x40 at */ - {57, 3, 5, 4, 0, -5}, /* 0x41 A */ - {59, 3, 5, 4, 0, -5}, /* 0x42 B */ - {61, 3, 5, 4, 0, -5}, /* 0x43 C */ - {63, 3, 5, 4, 0, -5}, /* 0x44 D */ - {65, 3, 5, 4, 0, -5}, /* 0x45 E */ - {67, 3, 5, 4, 0, -5}, /* 0x46 F */ - {69, 3, 5, 4, 0, -5}, /* 0x47 G */ - {71, 3, 5, 4, 0, -5}, /* 0x48 H */ - {73, 3, 5, 4, 0, -5}, /* 0x49 I */ - {75, 3, 5, 4, 0, -5}, /* 0x4A J */ - {77, 3, 5, 4, 0, -5}, /* 0x4B K */ - {79, 3, 5, 4, 0, -5}, /* 0x4C L */ - {81, 3, 5, 4, 0, -5}, /* 0x4D M */ - {83, 3, 5, 4, 0, -5}, /* 0x4E N */ - {85, 3, 5, 4, 0, -5}, /* 0x4F O */ - {87, 3, 5, 4, 0, -5}, /* 0x50 P */ - {89, 3, 5, 4, 0, -5}, /* 0x51 Q */ - {91, 3, 5, 4, 0, -5}, /* 0x52 R */ - {93, 3, 5, 4, 0, -5}, /* 0x53 S */ - {95, 3, 5, 4, 0, -5}, /* 0x54 T */ - {97, 3, 5, 4, 0, -5}, /* 0x55 U */ - {99, 3, 5, 4, 0, -5}, /* 0x56 V */ - {101, 3, 5, 4, 0, -5}, /* 0x57 W */ - {103, 3, 5, 4, 0, -5}, /* 0x58 X */ - {105, 3, 5, 4, 0, -5}, /* 0x59 Y */ - {107, 3, 5, 4, 0, -5}, /* 0x5A Z */ - {109, 3, 5, 4, 0, -5}, /* 0x5B bracketleft */ - {111, 3, 3, 4, 0, -4}, /* 0x5C backslash */ - {113, 3, 5, 4, 0, -5}, /* 0x5D bracketright */ - {115, 3, 2, 4, 0, -5}, /* 0x5E asciicircum */ - {116, 3, 1, 4, 0, -1}, /* 0x5F underscore */ - {117, 2, 2, 3, 0, -5}, /* 0x60 grave */ - {118, 3, 4, 4, 0, -4}, /* 0x61 a */ - {120, 3, 5, 4, 0, -5}, /* 0x62 b */ - {122, 3, 4, 4, 0, -4}, /* 0x63 c */ - {124, 3, 5, 4, 0, -5}, /* 0x64 d */ - {126, 3, 4, 4, 0, -4}, /* 0x65 e */ - {128, 3, 5, 4, 0, -5}, /* 0x66 f */ - {130, 3, 5, 4, 0, -4}, /* 0x67 g */ - {132, 3, 5, 4, 0, -5}, /* 0x68 h */ - {134, 1, 5, 2, 0, -5}, /* 0x69 i */ - {135, 3, 6, 4, 0, -5}, /* 0x6A j */ - {138, 3, 5, 4, 0, -5}, /* 0x6B k */ - {140, 3, 5, 4, 0, -5}, /* 0x6C l */ - {142, 3, 4, 4, 0, -4}, /* 0x6D m */ - {144, 3, 4, 4, 0, -4}, /* 0x6E n */ - {146, 3, 4, 4, 0, -4}, /* 0x6F o */ - {148, 3, 5, 4, 0, -4}, /* 0x70 p */ - {150, 3, 5, 4, 0, -4}, /* 0x71 q */ - {152, 3, 4, 4, 0, -4}, /* 0x72 r */ - {154, 3, 4, 4, 0, -4}, /* 0x73 s */ - {156, 3, 5, 4, 0, -5}, /* 0x74 t */ - {158, 3, 4, 4, 0, -4}, /* 0x75 u */ - {160, 3, 4, 4, 0, -4}, /* 0x76 v */ - {162, 3, 4, 4, 0, -4}, /* 0x77 w */ - {164, 3, 4, 4, 0, -4}, /* 0x78 x */ - {166, 3, 5, 4, 0, -4}, /* 0x79 y */ - {168, 3, 4, 4, 0, -4}, /* 0x7A z */ - {170, 3, 5, 4, 0, -5}, /* 0x7B braceleft */ - {172, 1, 5, 2, 0, -5}, /* 0x7C bar */ - {173, 3, 5, 4, 0, -5}, /* 0x7D braceright */ - {175, 3, 2, 4, 0, -5}, /* 0x7E asciitilde */ -#if (TOMTHUMB_USE_EXTENDED) - {176, 1, 5, 2, 0, -5}, /* 0xA1 exclamdown */ - {177, 3, 5, 4, 0, -5}, /* 0xA2 cent */ - {179, 3, 5, 4, 0, -5}, /* 0xA3 sterling */ - {181, 3, 5, 4, 0, -5}, /* 0xA4 currency */ - {183, 3, 5, 4, 0, -5}, /* 0xA5 yen */ - {185, 1, 5, 2, 0, -5}, /* 0xA6 brokenbar */ - {186, 3, 5, 4, 0, -5}, /* 0xA7 section */ - {188, 3, 1, 4, 0, -5}, /* 0xA8 dieresis */ - {189, 3, 3, 4, 0, -5}, /* 0xA9 copyright */ - {191, 3, 5, 4, 0, -5}, /* 0xAA ordfeminine */ - {193, 2, 3, 3, 0, -5}, /* 0xAB guillemotleft */ - {194, 3, 2, 4, 0, -4}, /* 0xAC logicalnot */ - {195, 2, 1, 3, 0, -3}, /* 0xAD softhyphen */ - {196, 3, 3, 4, 0, -5}, /* 0xAE registered */ - {198, 3, 1, 4, 0, -5}, /* 0xAF macron */ - {199, 3, 3, 4, 0, -5}, /* 0xB0 degree */ - {201, 3, 5, 4, 0, -5}, /* 0xB1 plusminus */ - {203, 3, 3, 4, 0, -5}, /* 0xB2 twosuperior */ - {205, 3, 3, 4, 0, -5}, /* 0xB3 threesuperior */ - {207, 2, 2, 3, 0, -5}, /* 0xB4 acute */ - {208, 3, 5, 4, 0, -5}, /* 0xB5 mu */ - {210, 3, 5, 4, 0, -5}, /* 0xB6 paragraph */ - {212, 3, 3, 4, 0, -4}, /* 0xB7 periodcentered */ - {214, 3, 3, 4, 0, -3}, /* 0xB8 cedilla */ - {216, 1, 3, 2, 0, -5}, /* 0xB9 onesuperior */ - {217, 3, 5, 4, 0, -5}, /* 0xBA ordmasculine */ - {219, 2, 3, 3, 0, -5}, /* 0xBB guillemotright */ - {220, 3, 5, 4, 0, -5}, /* 0xBC onequarter */ - {222, 3, 5, 4, 0, -5}, /* 0xBD onehalf */ - {224, 3, 5, 4, 0, -5}, /* 0xBE threequarters */ - {226, 3, 5, 4, 0, -5}, /* 0xBF questiondown */ - {228, 3, 5, 4, 0, -5}, /* 0xC0 Agrave */ - {230, 3, 5, 4, 0, -5}, /* 0xC1 Aacute */ - {232, 3, 5, 4, 0, -5}, /* 0xC2 Acircumflex */ - {234, 3, 5, 4, 0, -5}, /* 0xC3 Atilde */ - {236, 3, 5, 4, 0, -5}, /* 0xC4 Adieresis */ - {238, 3, 5, 4, 0, -5}, /* 0xC5 Aring */ - {240, 3, 5, 4, 0, -5}, /* 0xC6 AE */ - {242, 3, 6, 4, 0, -5}, /* 0xC7 Ccedilla */ - {245, 3, 5, 4, 0, -5}, /* 0xC8 Egrave */ - {247, 3, 5, 4, 0, -5}, /* 0xC9 Eacute */ - {249, 3, 5, 4, 0, -5}, /* 0xCA Ecircumflex */ - {251, 3, 5, 4, 0, -5}, /* 0xCB Edieresis */ - {253, 3, 5, 4, 0, -5}, /* 0xCC Igrave */ - {255, 3, 5, 4, 0, -5}, /* 0xCD Iacute */ - {257, 3, 5, 4, 0, -5}, /* 0xCE Icircumflex */ - {259, 3, 5, 4, 0, -5}, /* 0xCF Idieresis */ - {261, 3, 5, 4, 0, -5}, /* 0xD0 Eth */ - {263, 3, 5, 4, 0, -5}, /* 0xD1 Ntilde */ - {265, 3, 5, 4, 0, -5}, /* 0xD2 Ograve */ - {267, 3, 5, 4, 0, -5}, /* 0xD3 Oacute */ - {269, 3, 5, 4, 0, -5}, /* 0xD4 Ocircumflex */ - {271, 3, 5, 4, 0, -5}, /* 0xD5 Otilde */ - {273, 3, 5, 4, 0, -5}, /* 0xD6 Odieresis */ - {275, 3, 3, 4, 0, -4}, /* 0xD7 multiply */ - {277, 3, 5, 4, 0, -5}, /* 0xD8 Oslash */ - {279, 3, 5, 4, 0, -5}, /* 0xD9 Ugrave */ - {281, 3, 5, 4, 0, -5}, /* 0xDA Uacute */ - {283, 3, 5, 4, 0, -5}, /* 0xDB Ucircumflex */ - {285, 3, 5, 4, 0, -5}, /* 0xDC Udieresis */ - {287, 3, 5, 4, 0, -5}, /* 0xDD Yacute */ - {289, 3, 5, 4, 0, -5}, /* 0xDE Thorn */ - {291, 3, 6, 4, 0, -5}, /* 0xDF germandbls */ - {294, 3, 5, 4, 0, -5}, /* 0xE0 agrave */ - {296, 3, 5, 4, 0, -5}, /* 0xE1 aacute */ - {298, 3, 5, 4, 0, -5}, /* 0xE2 acircumflex */ - {300, 3, 5, 4, 0, -5}, /* 0xE3 atilde */ - {302, 3, 5, 4, 0, -5}, /* 0xE4 adieresis */ - {304, 3, 5, 4, 0, -5}, /* 0xE5 aring */ - {306, 3, 4, 4, 0, -4}, /* 0xE6 ae */ - {308, 3, 5, 4, 0, -4}, /* 0xE7 ccedilla */ - {310, 3, 5, 4, 0, -5}, /* 0xE8 egrave */ - {312, 3, 5, 4, 0, -5}, /* 0xE9 eacute */ - {314, 3, 5, 4, 0, -5}, /* 0xEA ecircumflex */ - {316, 3, 5, 4, 0, -5}, /* 0xEB edieresis */ - {318, 2, 5, 3, 0, -5}, /* 0xEC igrave */ - {320, 2, 5, 3, 0, -5}, /* 0xED iacute */ - {322, 3, 5, 4, 0, -5}, /* 0xEE icircumflex */ - {324, 3, 5, 4, 0, -5}, /* 0xEF idieresis */ - {326, 3, 5, 4, 0, -5}, /* 0xF0 eth */ - {328, 3, 5, 4, 0, -5}, /* 0xF1 ntilde */ - {330, 3, 5, 4, 0, -5}, /* 0xF2 ograve */ - {332, 3, 5, 4, 0, -5}, /* 0xF3 oacute */ - {334, 3, 5, 4, 0, -5}, /* 0xF4 ocircumflex */ - {336, 3, 5, 4, 0, -5}, /* 0xF5 otilde */ - {338, 3, 5, 4, 0, -5}, /* 0xF6 odieresis */ - {340, 3, 5, 4, 0, -5}, /* 0xF7 divide */ - {342, 3, 4, 4, 0, -4}, /* 0xF8 oslash */ - {344, 3, 5, 4, 0, -5}, /* 0xF9 ugrave */ - {346, 3, 5, 4, 0, -5}, /* 0xFA uacute */ - {348, 3, 5, 4, 0, -5}, /* 0xFB ucircumflex */ - {350, 3, 5, 4, 0, -5}, /* 0xFC udieresis */ - {352, 3, 6, 4, 0, -5}, /* 0xFD yacute */ - {355, 3, 5, 4, 0, -4}, /* 0xFE thorn */ - {357, 3, 6, 4, 0, -5}, /* 0xFF ydieresis */ - {360, 1, 1, 2, 0, -1}, /* 0x11D gcircumflex */ - {361, 3, 5, 4, 0, -5}, /* 0x152 OE */ - {363, 3, 4, 4, 0, -4}, /* 0x153 oe */ - {365, 3, 5, 4, 0, -5}, /* 0x160 Scaron */ - {367, 3, 5, 4, 0, -5}, /* 0x161 scaron */ - {369, 3, 5, 4, 0, -5}, /* 0x178 Ydieresis */ - {371, 3, 5, 4, 0, -5}, /* 0x17D Zcaron */ - {373, 3, 5, 4, 0, -5}, /* 0x17E zcaron */ - {375, 1, 1, 2, 0, -1}, /* 0xEA4 uni0EA4 */ - {376, 1, 1, 2, 0, -1}, /* 0x13A0 uni13A0 */ - {377, 1, 1, 2, 0, -3}, /* 0x2022 bullet */ - {378, 3, 1, 4, 0, -1}, /* 0x2026 ellipsis */ - {379, 3, 5, 4, 0, -5}, /* 0x20AC Euro */ - {381, 4, 5, 5, 0, -5}, /* 0xFFFD uniFFFD */ -#endif /* (TOMTHUMB_USE_EXTENDED) */ -}; - -const GFXfont TomThumb PROGMEM = {(uint8_t *)TomThumbBitmaps, - (GFXglyph *)TomThumbGlyphs, 0x20, 0x7E, 6}; diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/README.md b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/README.md deleted file mode 100644 index 6f36460..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# Adafruit GFX Library ![Build Status](https://github.com/adafruit/Adafruit-GFX-Library/workflows/Arduino%20Library%20CI/badge.svg) - -This is the core graphics library for all our displays, providing a common set of graphics primitives (points, lines, circles, etc.). It needs to be paired with a hardware-specific library for each display device we carry (to handle the lower-level functions). - -Adafruit invests time and resources providing this open source code, please support Adafruit and open-source hardware by purchasing products from Adafruit! - -Written by Limor Fried/Ladyada for Adafruit Industries. -BSD license, check license.txt for more information. -All text above must be included in any redistribution. - -Recent Arduino IDE releases include the Library Manager for easy installation. Otherwise, to download, click the DOWNLOAD ZIP button, uncompress and rename the uncompressed folder Adafruit_GFX. Confirm that the Adafruit_GFX folder contains Adafruit_GFX.cpp and Adafruit_GFX.h. Place the Adafruit_GFX library folder your ArduinoSketchFolder/Libraries/ folder. You may need to create the Libraries subfolder if its your first library. Restart the IDE. - -**You will also need to install the latest Adafruit BusIO library.** Search for "Adafruit BusIO" in the library manager, or install by hand from https://github.com/adafruit/Adafruit_BusIO - -# Useful Resources - -- Image2Code: This is a handy Java GUI utility to convert a BMP file into the array code necessary to display the image with the drawBitmap function. Check out the code at ehubin's GitHub repository: https://github.com/ehubin/Adafruit-GFX-Library/tree/master/Img2Code - -- drawXBitmap function: You can use the GIMP photo editor to save a .xbm file and use the array saved in the file to draw a bitmap with the drawXBitmap function. See the pull request here for more details: https://github.com/adafruit/Adafruit-GFX-Library/pull/31 - -- 'Fonts' folder contains bitmap fonts for use with recent (1.1 and later) Adafruit_GFX. To use a font in your Arduino sketch, \#include the corresponding .h file and pass address of GFXfont struct to setFont(). Pass NULL to revert to 'classic' fixed-space bitmap font. - -- 'fontconvert' folder contains a command-line tool for converting TTF fonts to Adafruit_GFX header format. - -- You can also use [this GFX Font Customiser tool](https://github.com/tchapi/Adafruit-GFX-Font-Customiser) (_web version [here](https://tchapi.github.io/Adafruit-GFX-Font-Customiser/)_) to customize or correct the output from [fontconvert](https://github.com/adafruit/Adafruit-GFX-Library/tree/master/fontconvert), and create fonts with only a subset of characters to optimize size. - ---- - -### Roadmap - -The PRIME DIRECTIVE is to maintain backward compatibility with existing Arduino sketches -- many are hosted elsewhere and don't track changes here, some are in print and can never be changed! This "little" library has grown organically over time and sometimes we paint ourselves into a design corner and just have to live with it or add progressively more ungainly workarounds. - -**We are grateful for everyone's contributions, but pull requests for the following will NOT be merged:** - -- Additional or incompatible font formats (see Prime Directive above). There are already two formats and the code is quite bloaty there as it is. This also creates liabilities for tools and documentation. What's there isn't perfect but it does the job. - -- Additional or incompatible bitmap formats, for similar reasons. It's getting messy. - -- Adding background color to custom fonts to erase prior screen contents. The ONLY acceptable methods are to clear the area with a filled rect, or (to avoid flicker) draw text into a GFXcanvas1 and copy to screen with drawBitmap() w/background color. This is on purpose and by design. We've discussed this. Glyphs can overlap. - -- Scrolling, whether hardware- or software-based. Such implementations tend to rely on hardware-specific features (not universally available), read access to the screen's framebuffer (ditto) and/or the addition of virtual functions in GFX which them must be added in *every* subclass, of which there are many. The GFX API is largely "set" at this point and this is just a limitation we live with now. - -- Please don't reformat code for the sake of reformatting code. The resulting large "visual diff" makes it impossible to untangle actual bug fixes from merely rearranged lines. clang-format will be the final arbiter. - -- Please no more pentagram-drawing PRs. Any oddly-specific drawing functions can go in your own code and aren't helpful in a library context. - -If you *must* have one of these features, consider creating a fork with the features required for your project...it's easy to keep synced with the upstream code. diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/component.mk b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/component.mk deleted file mode 100644 index 049f190..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/component.mk +++ /dev/null @@ -1 +0,0 @@ -COMPONENT_ADD_INCLUDEDIRS = . diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino deleted file mode 100644 index d4e3370..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvas.ino +++ /dev/null @@ -1,113 +0,0 @@ -/*** -This example is intended to demonstrate the use of getPixel() versus -getRawPixel() and the fast horizontal and vertical drawing routines -in the GFXcanvas family of classes, - -When using the GFXcanvas* classes as the image buffer for a hardware driver, -there is a need to get individual pixel color values at given physical -coordinates. Rather than subclasses or client classes call getBuffer() and -reinterpret the byte layout of the buffer, two methods are added to each of the -GFXcanvas* classes that allow fetching of specific pixel values. - - * getPixel(x, y) : Gets the pixel color value at the rotated coordinates in -the image. - * getRawPixel(x,y) : Gets the pixel color value at the unrotated coordinates -in the image. This is useful for getting the pixel value to map to a hardware -pixel location. This method was made protected as only the hardware driver -should be accessing it. - -The GFXcanvas*SerialDemo classes in this example will print to Serial the -contents of the underlying GFXcanvas buffer in both the current rotated layout -and the underlying physical layout. -***/ - -#include "GFXcanvasSerialDemo.h" -#include - -void setup() { - Serial.begin(115200); - - // first create a rectangular GFXcanvas8SerialDemo object and draw to it - GFXcanvas8SerialDemo demo8(21, 11); - - demo8.fillScreen(0x00); - demo8.setRotation(1); // now canvas is 11x21 - demo8.fillCircle(5, 10, 5, 0xAA); - demo8.writeFastHLine(0, 0, 11, 0x11); - demo8.writeFastHLine(10, 10, -11, 0x22); - demo8.writeFastHLine(0, 20, 11, 0x33); - demo8.writeFastVLine(0, 0, 21, 0x44); - demo8.writeFastVLine(10, 20, -21, 0x55); - - Serial.println("Demonstrating GFXcanvas rotated and raw pixels.\n"); - - // print it out rotated - - Serial.println("The canvas's content in the rotation of '0':\n"); - demo8.setRotation(0); - demo8.print(true); - Serial.println("\n"); - - Serial.println("The canvas's content in the rotation of '1' (which is what " - "it was drawn in):\n"); - demo8.setRotation(1); - demo8.print(true); - Serial.println("\n"); - - Serial.println("The canvas's content in the rotation of '2':\n"); - demo8.setRotation(2); - demo8.print(true); - Serial.println("\n"); - - Serial.println("The canvas's content in the rotation of '3':\n"); - demo8.setRotation(3); - demo8.print(true); - Serial.println("\n"); - - // print it out unrotated - Serial.println("The canvas's content in it's raw, physical layout:\n"); - demo8.print(false); - Serial.println("\n"); - - // Demonstrate GFXcanvas1SerialDemo - - GFXcanvas1SerialDemo demo1(21, 11); - demo1.fillScreen(0); - demo1.setRotation(0); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(1); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(2); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(3); - demo1.writeFastHLine(0, 0, 9, 1); - demo1.setRotation(1); - demo1.fillRect(3, 8, 5, 5, 1); - - Serial.println("\nThe GFXcanvas1 raw content after drawing a fast horizontal " - "line in each rotation:\n"); - demo1.print(false); - Serial.println("\n"); - - // Demonstrate GFXcanvas16SerialDemo - - GFXcanvas16SerialDemo demo16(21, 11); - demo16.fillScreen(0); - demo16.setRotation(0); - demo16.writeFastHLine(0, 0, 9, 0x1111); - demo16.setRotation(1); - demo16.writeFastHLine(0, 0, 9, 0x2222); - demo16.setRotation(2); - demo16.writeFastHLine(0, 0, 9, 0x3333); - demo16.setRotation(3); - demo16.writeFastHLine(0, 0, 9, 0x4444); - demo16.setRotation(1); - demo16.fillRect(3, 8, 5, 5, 0x8888); - - Serial.println("\nThe GFXcanvas16 raw content after drawing a fast " - "horizontal line in each rotation:\n"); - demo16.print(false); - Serial.println("\n"); -} - -void loop() {} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp deleted file mode 100644 index ed83a96..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.cpp +++ /dev/null @@ -1,92 +0,0 @@ -#include "GFXcanvasSerialDemo.h" -#include - -GFXcanvas1SerialDemo::GFXcanvas1SerialDemo(uint16_t w, uint16_t h) - : GFXcanvas1(w, h) {} - -void GFXcanvas1SerialDemo::print(bool rotated) { - char pixel_buffer[8]; - uint16_t width, height; - - if (rotated) { - width = this->width(); - height = this->height(); - } else { - width = this->WIDTH; - height = this->HEIGHT; - } - - for (uint16_t y = 0; y < height; y++) { - for (uint16_t x = 0; x < width; x++) { - bool pixel; - if (rotated) { - pixel = this->getPixel(x, y); - } else { - pixel = this->getRawPixel(x, y); - } - sprintf(pixel_buffer, " %d", pixel); - Serial.print(pixel_buffer); - } - Serial.print("\n"); - } -} - -GFXcanvas8SerialDemo::GFXcanvas8SerialDemo(uint16_t w, uint16_t h) - : GFXcanvas8(w, h) {} - -void GFXcanvas8SerialDemo::print(bool rotated) { - char pixel_buffer[8]; - uint16_t width, height; - - if (rotated) { - width = this->width(); - height = this->height(); - } else { - width = this->WIDTH; - height = this->HEIGHT; - } - - for (uint16_t y = 0; y < height; y++) { - for (uint16_t x = 0; x < width; x++) { - uint8_t pixel; - if (rotated) { - pixel = this->getPixel(x, y); - } else { - pixel = this->getRawPixel(x, y); - } - sprintf(pixel_buffer, " %02x", pixel); - Serial.print(pixel_buffer); - } - Serial.print("\n"); - } -} - -GFXcanvas16SerialDemo::GFXcanvas16SerialDemo(uint16_t w, uint16_t h) - : GFXcanvas16(w, h) {} - -void GFXcanvas16SerialDemo::print(bool rotated) { - char pixel_buffer[8]; - uint16_t width, height; - - if (rotated) { - width = this->width(); - height = this->height(); - } else { - width = this->WIDTH; - height = this->HEIGHT; - } - - for (uint16_t y = 0; y < height; y++) { - for (uint16_t x = 0; x < width; x++) { - uint16_t pixel; - if (rotated) { - pixel = this->getPixel(x, y); - } else { - pixel = this->getRawPixel(x, y); - } - sprintf(pixel_buffer, " %04x", pixel); - Serial.print(pixel_buffer); - } - Serial.print("\n"); - } -} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h deleted file mode 100644 index 80589d9..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/GFXcanvas/GFXcanvasSerialDemo.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef __GFXcanvasSerialDemo__ -#define __GFXcanvasSerialDemo__ -#include - -/**********************************************************************/ -/*! - @brief Demonstrates using the GFXconvas classes as the backing store - for a device driver. -*/ -/**********************************************************************/ -class GFXcanvas1SerialDemo : public GFXcanvas1 { -public: - GFXcanvas1SerialDemo(uint16_t w, uint16_t h); - - /**********************************************************************/ - /*! - @brief Prints the current contents of the canvas to Serial - @param rotated true to print according to the current GFX rotation, - false to print to the native rotation of the canvas (or unrotated). - */ - /**********************************************************************/ - void print(bool rotated); -}; - -/**********************************************************************/ -/*! - @brief Demonstrates using the GFXconvas classes as the backing store - for a device driver. -*/ -/**********************************************************************/ -class GFXcanvas8SerialDemo : public GFXcanvas8 { -public: - GFXcanvas8SerialDemo(uint16_t w, uint16_t h); - - /**********************************************************************/ - /*! - @brief Prints the current contents of the canvas to Serial - @param rotated true to print according to the current GFX rotation, - false to print to the native rotation of the canvas (or unrotated). - */ - /**********************************************************************/ - void print(bool rotated); -}; - -/**********************************************************************/ -/*! - @brief Demonstrates using the GFXconvas classes as the backing store - for a device driver. -*/ -/**********************************************************************/ -class GFXcanvas16SerialDemo : public GFXcanvas16 { -public: - GFXcanvas16SerialDemo(uint16_t w, uint16_t h); - - /**********************************************************************/ - /*! - @brief Prints the current contents of the canvas to Serial - @param rotated true to print according to the current GFX rotation, - false to print to the native rotation of the canvas (or unrotated). - */ - /**********************************************************************/ - void print(bool rotated); -}; - -#endif // __GFXcanvasSerialDemo__ diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino deleted file mode 100644 index d141839..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/examples/mock_ili9341/mock_ili9341.ino +++ /dev/null @@ -1,365 +0,0 @@ -/*************************************************** - This is our GFX example for the Adafruit ILI9341 Breakout and Shield - ----> http://www.adafruit.com/products/1651 - - Check out the links above for our tutorials and wiring diagrams - These displays use SPI to communicate, 4 or 5 pins are required to - interface (RST is optional) - Adafruit invests time and resources providing this open source code, - please support Adafruit and open-source hardware by purchasing - products from Adafruit! - - Written by Limor Fried/Ladyada for Adafruit Industries. - MIT license, all text above must be included in any redistribution - ****************************************************/ - - -#include "SPI.h" -#include "Adafruit_GFX.h" -#include "Adafruit_ILI9341.h" - -// For the Adafruit shield, these are the default. -#define TFT_DC 9 -#define TFT_CS 10 - -// Use hardware SPI (on Uno, #13, #12, #11) and the above for CS/DC -Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC); -// If using the breakout, change pins as desired -//Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_MOSI, TFT_CLK, TFT_RST, TFT_MISO); - -void setup() { - Serial.begin(9600); - Serial.println("ILI9341 Test!"); - - tft.begin(); - - // read diagnostics (optional but can help debug problems) - uint8_t x = tft.readcommand8(ILI9341_RDMODE); - Serial.print("Display Power Mode: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDMADCTL); - Serial.print("MADCTL Mode: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDPIXFMT); - Serial.print("Pixel Format: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDIMGFMT); - Serial.print("Image Format: 0x"); Serial.println(x, HEX); - x = tft.readcommand8(ILI9341_RDSELFDIAG); - Serial.print("Self Diagnostic: 0x"); Serial.println(x, HEX); - - Serial.println(F("Benchmark Time (microseconds)")); - delay(10); - Serial.print(F("Screen fill ")); - Serial.println(testFillScreen()); - delay(500); - - Serial.print(F("Text ")); - Serial.println(testText()); - delay(3000); - - Serial.print(F("Lines ")); - Serial.println(testLines(ILI9341_CYAN)); - delay(500); - - Serial.print(F("Horiz/Vert Lines ")); - Serial.println(testFastLines(ILI9341_RED, ILI9341_BLUE)); - delay(500); - - Serial.print(F("Rectangles (outline) ")); - Serial.println(testRects(ILI9341_GREEN)); - delay(500); - - Serial.print(F("Rectangles (filled) ")); - Serial.println(testFilledRects(ILI9341_YELLOW, ILI9341_MAGENTA)); - delay(500); - - Serial.print(F("Circles (filled) ")); - Serial.println(testFilledCircles(10, ILI9341_MAGENTA)); - - Serial.print(F("Circles (outline) ")); - Serial.println(testCircles(10, ILI9341_WHITE)); - delay(500); - - Serial.print(F("Triangles (outline) ")); - Serial.println(testTriangles()); - delay(500); - - Serial.print(F("Triangles (filled) ")); - Serial.println(testFilledTriangles()); - delay(500); - - Serial.print(F("Rounded rects (outline) ")); - Serial.println(testRoundRects()); - delay(500); - - Serial.print(F("Rounded rects (filled) ")); - Serial.println(testFilledRoundRects()); - delay(500); - - Serial.println(F("Done!")); - -} - - -void loop(void) { - for(uint8_t rotation=0; rotation<4; rotation++) { - tft.setRotation(rotation); - testText(); - delay(1000); - } -} - -unsigned long testFillScreen() { - unsigned long start = micros(); - tft.fillScreen(ILI9341_BLACK); - yield(); - tft.fillScreen(ILI9341_RED); - yield(); - tft.fillScreen(ILI9341_GREEN); - yield(); - tft.fillScreen(ILI9341_BLUE); - yield(); - tft.fillScreen(ILI9341_BLACK); - yield(); - return micros() - start; -} - -unsigned long testText() { - tft.fillScreen(ILI9341_BLACK); - unsigned long start = micros(); - tft.setCursor(0, 0); - tft.setTextColor(ILI9341_WHITE); tft.setTextSize(1); - tft.println("Hello World!"); - tft.setTextColor(ILI9341_YELLOW); tft.setTextSize(2); - tft.println(1234.56); - tft.setTextColor(ILI9341_RED); tft.setTextSize(3); - tft.println(0xDEADBEEF, HEX); - tft.println(); - tft.setTextColor(ILI9341_GREEN); - tft.setTextSize(5); - tft.println("Groop"); - tft.setTextSize(2); - tft.println("I implore thee,"); - tft.setTextSize(1); - tft.println("my foonting turlingdromes."); - tft.println("And hooptiously drangle me"); - tft.println("with crinkly bindlewurdles,"); - tft.println("Or I will rend thee"); - tft.println("in the gobberwarts"); - tft.println("with my blurglecruncheon,"); - tft.println("see if I don't!"); - return micros() - start; -} - -unsigned long testLines(uint16_t color) { - unsigned long start, t; - int x1, y1, x2, y2, - w = tft.width(), - h = tft.height(); - - tft.fillScreen(ILI9341_BLACK); - yield(); - - x1 = y1 = 0; - y2 = h - 1; - start = micros(); - for(x2=0; x20; i-=6) { - i2 = i / 2; - start = micros(); - tft.fillRect(cx-i2, cy-i2, i, i, color1); - t += micros() - start; - // Outlines are not included in timing results - tft.drawRect(cx-i2, cy-i2, i, i, color2); - yield(); - } - - return t; -} - -unsigned long testFilledCircles(uint8_t radius, uint16_t color) { - unsigned long start; - int x, y, w = tft.width(), h = tft.height(), r2 = radius * 2; - - tft.fillScreen(ILI9341_BLACK); - start = micros(); - for(x=radius; x10; i-=5) { - start = micros(); - tft.fillTriangle(cx, cy - i, cx - i, cy + i, cx + i, cy + i, - tft.color565(0, i*10, i*10)); - t += micros() - start; - tft.drawTriangle(cx, cy - i, cx - i, cy + i, cx + i, cy + i, - tft.color565(i*10, i*10, 0)); - yield(); - } - - return t; -} - -unsigned long testRoundRects() { - unsigned long start; - int w, i, i2, - cx = tft.width() / 2 - 1, - cy = tft.height() / 2 - 1; - - tft.fillScreen(ILI9341_BLACK); - w = min(tft.width(), tft.height()); - start = micros(); - for(i=0; i20; i-=6) { - i2 = i / 2; - tft.fillRoundRect(cx-i2, cy-i2, i, i, i/8, tft.color565(0, i, 0)); - yield(); - } - - return micros() - start; -} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/Makefile b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/Makefile deleted file mode 100644 index 47f5a0e..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -all: fontconvert - -CC = gcc -CFLAGS = -Wall -I/usr/local/include/freetype2 -I/usr/include/freetype2 -I/usr/include -LIBS = -lfreetype - -fontconvert: fontconvert.c - $(CC) $(CFLAGS) $< $(LIBS) -o $@ - strip $@ - -clean: - rm -f fontconvert diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/bdf2adafruit.py b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/bdf2adafruit.py deleted file mode 100644 index 9d9ee8a..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/bdf2adafruit.py +++ /dev/null @@ -1,135 +0,0 @@ -#!/usr/bin/python2 - -# MIT License. - -# Copyright (c) 2016 William Skellenger -# -# 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. - -# This small script is designed to mostly take a BDF file and convert it to a -# format that can largely be cut/pasted as an Adafruit-format font. -# It was written in an hour or so and did what I needed it to do. -# I used it for one file. Maybe it bombs on other files. -# William Skellenger, Feb 2016 -# (email: williamj@skellenger.net) -# (Twitter: @skelliam) -# -# Usage: bdf2adafruit.py > out.txt -# -# Once you have out.txt you can cut/paste the contents into a new font -# header file as part of the Adafruit GFX library. - -import sys - -myfile = open(sys.argv[1]) - -processing = 0 -getting_rows = 0 - -chars = [] -bitmapData = [] - -class Glyph: - encoding = -1 - rows = [] - comment = "" - offset = -1 - width = 0 - height = 0 - advance = 0 - xoffs = 0 - yoffs = 0 - def __init__(self, comment): - self.comment = comment - self.rows = [] - -for line in myfile.readlines(): - if 'STARTCHAR' in line: - processing = 1 - vals = line.split() - g = Glyph(vals[1]) - #g.width = 8 #in this example always 8 bits wide - elif 'ENDCHAR' in line: - dataByteCompressed = 0 - dataByteCompressedIndex = 8 - g.height = len(bitmapData) - for value in bitmapData: - bitIndex = 0 - while bitIndex < g.width: - bit = (value >> (7 - bitIndex)) & 0x01 - dataByteCompressed |= bit << (dataByteCompressedIndex - 1) - dataByteCompressedIndex -= 1 - if dataByteCompressedIndex == 0: - dataByteCompressedIndex = 8 - g.rows.append(dataByteCompressed) - dataByteCompressed = 0 - bitIndex += 1 - if 8 != dataByteCompressedIndex: - g.rows.append(dataByteCompressed) - - chars.append(g) #append the completed glyph into list - processing = 0 - getting_rows = 0 - bitmapData.clear() - - if processing: - if 'ENCODING' in line: - vals = line.split() - g.encoding = int(vals[1]) - elif 'DWIDTH' in line: - vals = line.split() - #g.advance = int(vals[1]) #cursor advance seems to be the first number in DWIDTH - elif 'BBX' in line: - vals = line.split() - g.xoffs = 0 - g.yoffs = -(int(vals[2]) + int(vals[4])) - g.advance = (int(vals[1]) + 1) #x bounding box + 1 - g.width = int(vals[1]) - elif 'BITMAP' in line: - getting_rows = 1 - elif getting_rows: - #g.rows.append(int(line, 16)) #append pixel rows into glyph's list of rows - bitmapData.append(int(line, 16)) - -print - -i=0 -for char in chars: - char.offset = i - print("\t", end='') - num = 3 - for row in char.rows: - if num != 3: - print(" ", end = '') - print("0x%02X," %(row), end = ''), - i+=1 - num-=1 - - if num == 1: - print("\t\t", end = '') - if num == 2: - print("\t\t\t", end = '') - print("\t/* 0x%02X %s */" %(char.encoding, char.comment)) - -for char in chars: - # offset, bit-width, bit-height, advance cursor, x offset, y offset - print("\t{ %d, %d, %d, %d, %d, %d }, /* 0x%02X %s */" %( - char.offset, char.width, char.height, - char.advance, char.xoffs, char.yoffs, - char.encoding, char.comment)) diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert.c b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert.c deleted file mode 100644 index 302d1da..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert.c +++ /dev/null @@ -1,291 +0,0 @@ -/* -TrueType to Adafruit_GFX font converter. Derived from Peter Jakobs' -Adafruit_ftGFX fork & makefont tool, and Paul Kourany's Adafruit_mfGFX. - -NOT AN ARDUINO SKETCH. This is a command-line tool for preprocessing -fonts to be used with the Adafruit_GFX Arduino library. - -For UNIX-like systems. Outputs to stdout; redirect to header file, e.g.: - ./fontconvert ~/Library/Fonts/FreeSans.ttf 18 > FreeSans18pt7b.h - -REQUIRES FREETYPE LIBRARY. www.freetype.org - -Currently this only extracts the printable 7-bit ASCII chars of a font. -Will eventually extend with some int'l chars a la ftGFX, not there yet. -Keep 7-bit fonts around as an option in that case, more compact. - -See notes at end for glyph nomenclature & other tidbits. -*/ -#ifndef ARDUINO - -#include -#include -#include -#include -#include FT_GLYPH_H -#include FT_MODULE_H -#include FT_TRUETYPE_DRIVER_H -#include "../gfxfont.h" // Adafruit_GFX font structures - -#define DPI 141 // Approximate res. of Adafruit 2.8" TFT - -// Accumulate bits for output, with periodic hexadecimal byte write -void enbit(uint8_t value) { - static uint8_t row = 0, sum = 0, bit = 0x80, firstCall = 1; - if (value) - sum |= bit; // Set bit if needed - if (!(bit >>= 1)) { // Advance to next bit, end of byte reached? - if (!firstCall) { // Format output table nicely - if (++row >= 12) { // Last entry on line? - printf(",\n "); // Newline format output - row = 0; // Reset row counter - } else { // Not end of line - printf(", "); // Simple comma delim - } - } - printf("0x%02X", sum); // Write byte value - sum = 0; // Clear for next byte - bit = 0x80; // Reset bit counter - firstCall = 0; // Formatting flag - } -} - -int main(int argc, char *argv[]) { - int i, j, err, size, first = ' ', last = '~', bitmapOffset = 0, x, y, byte; - char *fontName, c, *ptr; - FT_Library library; - FT_Face face; - FT_Glyph glyph; - FT_Bitmap *bitmap; - FT_BitmapGlyphRec *g; - GFXglyph *table; - uint8_t bit; - - // Parse command line. Valid syntaxes are: - // fontconvert [filename] [size] - // fontconvert [filename] [size] [last char] - // fontconvert [filename] [size] [first char] [last char] - // Unless overridden, default first and last chars are - // ' ' (space) and '~', respectively - - if (argc < 3) { - fprintf(stderr, "Usage: %s fontfile size [first] [last]\n", argv[0]); - return 1; - } - - size = atoi(argv[2]); - - if (argc == 4) { - last = atoi(argv[3]); - } else if (argc == 5) { - first = atoi(argv[3]); - last = atoi(argv[4]); - } - - if (last < first) { - i = first; - first = last; - last = i; - } - - ptr = strrchr(argv[1], '/'); // Find last slash in filename - if (ptr) - ptr++; // First character of filename (path stripped) - else - ptr = argv[1]; // No path; font in local dir. - - // Allocate space for font name and glyph table - if ((!(fontName = malloc(strlen(ptr) + 20))) || - (!(table = (GFXglyph *)malloc((last - first + 1) * sizeof(GFXglyph))))) { - fprintf(stderr, "Malloc error\n"); - return 1; - } - - // Derive font table names from filename. Period (filename - // extension) is truncated and replaced with the font size & bits. - strcpy(fontName, ptr); - ptr = strrchr(fontName, '.'); // Find last period (file ext) - if (!ptr) - ptr = &fontName[strlen(fontName)]; // If none, append - // Insert font size and 7/8 bit. fontName was alloc'd w/extra - // space to allow this, we're not sprintfing into Forbidden Zone. - sprintf(ptr, "%dpt%db", size, (last > 127) ? 8 : 7); - // Space and punctuation chars in name replaced w/ underscores. - for (i = 0; (c = fontName[i]); i++) { - if (isspace(c) || ispunct(c)) - fontName[i] = '_'; - } - - // Init FreeType lib, load font - if ((err = FT_Init_FreeType(&library))) { - fprintf(stderr, "FreeType init error: %d", err); - return err; - } - - // Use TrueType engine version 35, without subpixel rendering. - // This improves clarity of fonts since this library does not - // support rendering multiple levels of gray in a glyph. - // See https://github.com/adafruit/Adafruit-GFX-Library/issues/103 - FT_UInt interpreter_version = TT_INTERPRETER_VERSION_35; - FT_Property_Set(library, "truetype", "interpreter-version", - &interpreter_version); - - if ((err = FT_New_Face(library, argv[1], 0, &face))) { - fprintf(stderr, "Font load error: %d", err); - FT_Done_FreeType(library); - return err; - } - - // << 6 because '26dot6' fixed-point format - FT_Set_Char_Size(face, size << 6, 0, DPI, 0); - - // Currently all symbols from 'first' to 'last' are processed. - // Fonts may contain WAY more glyphs than that, but this code - // will need to handle encoding stuff to deal with extracting - // the right symbols, and that's not done yet. - // fprintf(stderr, "%ld glyphs\n", face->num_glyphs); - - printf("const uint8_t %sBitmaps[] PROGMEM = {\n ", fontName); - - // Process glyphs and output huge bitmap data array - for (i = first, j = 0; i <= last; i++, j++) { - // MONO renderer provides clean image with perfect crop - // (no wasted pixels) via bitmap struct. - if ((err = FT_Load_Char(face, i, FT_LOAD_TARGET_MONO))) { - fprintf(stderr, "Error %d loading char '%c'\n", err, i); - continue; - } - - if ((err = FT_Render_Glyph(face->glyph, FT_RENDER_MODE_MONO))) { - fprintf(stderr, "Error %d rendering char '%c'\n", err, i); - continue; - } - - if ((err = FT_Get_Glyph(face->glyph, &glyph))) { - fprintf(stderr, "Error %d getting glyph '%c'\n", err, i); - continue; - } - - bitmap = &face->glyph->bitmap; - g = (FT_BitmapGlyphRec *)glyph; - - // Minimal font and per-glyph information is stored to - // reduce flash space requirements. Glyph bitmaps are - // fully bit-packed; no per-scanline pad, though end of - // each character may be padded to next byte boundary - // when needed. 16-bit offset means 64K max for bitmaps, - // code currently doesn't check for overflow. (Doesn't - // check that size & offsets are within bounds either for - // that matter...please convert fonts responsibly.) - table[j].bitmapOffset = bitmapOffset; - table[j].width = bitmap->width; - table[j].height = bitmap->rows; - table[j].xAdvance = face->glyph->advance.x >> 6; - table[j].xOffset = g->left; - table[j].yOffset = 1 - g->top; - - for (y = 0; y < bitmap->rows; y++) { - for (x = 0; x < bitmap->width; x++) { - byte = x / 8; - bit = 0x80 >> (x & 7); - enbit(bitmap->buffer[y * bitmap->pitch + byte] & bit); - } - } - - // Pad end of char bitmap to next byte boundary if needed - int n = (bitmap->width * bitmap->rows) & 7; - if (n) { // Pixel count not an even multiple of 8? - n = 8 - n; // # bits to next multiple - while (n--) - enbit(0); - } - bitmapOffset += (bitmap->width * bitmap->rows + 7) / 8; - - FT_Done_Glyph(glyph); - } - - printf(" };\n\n"); // End bitmap array - - // Output glyph attributes table (one per character) - printf("const GFXglyph %sGlyphs[] PROGMEM = {\n", fontName); - for (i = first, j = 0; i <= last; i++, j++) { - printf(" { %5d, %3d, %3d, %3d, %4d, %4d }", table[j].bitmapOffset, - table[j].width, table[j].height, table[j].xAdvance, table[j].xOffset, - table[j].yOffset); - if (i < last) { - printf(", // 0x%02X", i); - if ((i >= ' ') && (i <= '~')) { - printf(" '%c'", i); - } - putchar('\n'); - } - } - printf(" }; // 0x%02X", last); - if ((last >= ' ') && (last <= '~')) - printf(" '%c'", last); - printf("\n\n"); - - // Output font structure - printf("const GFXfont %s PROGMEM = {\n", fontName); - printf(" (uint8_t *)%sBitmaps,\n", fontName); - printf(" (GFXglyph *)%sGlyphs,\n", fontName); - if (face->size->metrics.height == 0) { - // No face height info, assume fixed width and get from a glyph. - printf(" 0x%02X, 0x%02X, %d };\n\n", first, last, table[0].height); - } else { - printf(" 0x%02X, 0x%02X, %ld };\n\n", first, last, - face->size->metrics.height >> 6); - } - printf("// Approx. %d bytes\n", bitmapOffset + (last - first + 1) * 7 + 7); - // Size estimate is based on AVR struct and pointer sizes; - // actual size may vary. - - FT_Done_FreeType(library); - - return 0; -} - -/* ------------------------------------------------------------------------- - -Character metrics are slightly different from classic GFX & ftGFX. -In classic GFX: cursor position is the upper-left pixel of each 5x7 -character; lower extent of most glyphs (except those w/descenders) -is +6 pixels in Y direction. -W/new GFX fonts: cursor position is on baseline, where baseline is -'inclusive' (containing the bottom-most row of pixels in most symbols, -except those with descenders; ftGFX is one pixel lower). - -Cursor Y will be moved automatically when switching between classic -and new fonts. If you switch fonts, any print() calls will continue -along the same baseline. - - ...........#####.. -- yOffset - ..........######.. - ..........######.. - .........#######.. - ........#########. - * = Cursor pos. ........#########. - .......##########. - ......#####..####. - ......#####..####. - *.#.. .....#####...####. - .#.#. ....############## - #...# ...############### - #...# ...############### - ##### ..#####......##### - #...# .#####.......##### -====== #...# ====== #*###.........#### ======= Baseline - || xOffset - -glyph->xOffset and yOffset are pixel offsets, in GFX coordinate space -(+Y is down), from the cursor position to the top-left pixel of the -glyph bitmap. i.e. yOffset is typically negative, xOffset is typically -zero but a few glyphs will have other values (even negative xOffsets -sometimes, totally normal). glyph->xAdvance is the distance to move -the cursor on the X axis after drawing the corresponding symbol. - -There's also some changes with regard to 'background' color and new GFX -fonts (classic fonts unchanged). See Adafruit_GFX.cpp for explanation. -*/ - -#endif /* !ARDUINO */ diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert_win.md b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert_win.md deleted file mode 100644 index 1932841..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/fontconvert_win.md +++ /dev/null @@ -1,88 +0,0 @@ -### A short guide to use fontconvert.c to create your own fonts using MinGW. - -#### STEP 1: INSTALL MinGW - -Install MinGW (Minimalist GNU for Windows) from [MinGW.org](http://www.mingw.org/). -Please read carefully the instructions found on [Getting started page](http://www.mingw.org/wiki/Getting_Started). -I suggest installing with the "Graphical User Interface Installer". -To complete your initial installation you should further install some "packages". -For our purpose you should only install the "Basic Setup" packages. -To do that: - -1. Open the MinGW Installation Manager -2. From the left panel click "Basic Setup". -3. On the right panel choose "mingw32-base", "mingw-gcc-g++", "mingw-gcc-objc" and "msys-base" -and click "Mark for installation" -4. From the Menu click "Installation" and then "Apply changes". In the pop-up window select "Apply". - - -#### STEP 2: INSTALL Freetype Library - -To read about the freetype project visit [freetype.org](https://www.freetype.org/). -To Download the latest version of freetype go to [download page](http://download.savannah.gnu.org/releases/freetype/) -and choose "freetype-2.7.tar.gz" file (or a newer version if available). -To avoid long cd commands later in the command prompt, I suggest you unzip the file in the C:\ directory. -(I also renamed the folder to "ft27") -Before you build the library it's good to read these articles: -* [Using MSYS with MinGW](http://www.mingw.org/wiki/MSYS) -* [Installation and Use of Supplementary Libraries with MinGW](http://www.mingw.org/wiki/LibraryPathHOWTO) -* [Include Path](http://www.mingw.org/wiki/IncludePathHOWTO) - -Inside the unzipped folder there is another folder named "docs". Open it and read the INSTALL.UNIX (using notepad). -Pay attention to paragraph 3 (Build and Install the Library). So, let's begin the installation. -To give the appropriate commands we will use the MSYS command prompt (not cmd.exe of windows) which is UNIX like. -Follow the path C:\MinGW\msys\1.0 and double click "msys.bat". The command prompt environment appears. -Enter "ft27" directory using the cd commands: -``` -cd /c -cd ft27 -``` - -and then type one by one the commands: -``` -./configure --prefix=/mingw -make -make install -``` -Once you're finished, go inside "C:\MinGW\include" and there should be a new folder named "freetype2". -That, hopefully, means that you have installed the library correctly !! - -#### STEP 3: Build fontconvert.c - -Before proceeding I suggest you make a copy of Adafruit_GFX_library folder in C:\ directory. -Then, inside "fontconvert" folder open the "makefile" with an editor ( I used notepad++). -Change the commands so in the end the program looks like : -``` -all: fontconvert - -CC = gcc -CFLAGS = -Wall -I c:/mingw/include/freetype2 -LIBS = -lfreetype - -fontconvert: fontconvert.c - $(CC) $(CFLAGS) $< $(LIBS) -o $@ - -clean: - rm -f fontconvert -``` -Go back in the command prompt and with a cd command enter the fontconvert directory. -``` -cd /c/adafruit_gfx_library\fontconvert -``` -Give the command: -``` -make -``` -This command will, eventually, create a "fontconvert.exe" file inside fontconvert directory. - -#### STEP 4: Create your own font header files - -Now that you have an executable file, you can use it to create your own fonts to work with Adafruit GFX lib. -So, if we suppose that you already have a .ttf file with your favorite fonts, jump to the command prompt and type: -``` -./fontconvert yourfonts.ttf 9 > yourfonts9pt7b.h -``` -You can read more details at: [learn.adafruit](https://learn.adafruit.com/adafruit-gfx-graphics-library/using-fonts). - -Taraaaaaammm !! you've just created your new font header file. Put it inside the "Fonts" folder, grab a cup of coffee -and start playing with your Arduino (or whatever else ....)+ display module project. diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/makefonts.sh b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/makefonts.sh deleted file mode 100755 index 35f07ea..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/fontconvert/makefonts.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash - -# Ugly little Bash script, generates a set of .h files for GFX using -# GNU FreeFont sources. There are three fonts: 'Mono' (Courier-like), -# 'Sans' (Helvetica-like) and 'Serif' (Times-like); four styles: regular, -# bold, oblique or italic, and bold+oblique or bold+italic; and four -# sizes: 9, 12, 18 and 24 point. No real error checking or anything, -# this just powers through all the combinations, calling the fontconvert -# utility and redirecting the output to a .h file for each combo. - -# Adafruit_GFX repository does not include the source outline fonts -# (huge zipfile, different license) but they're easily acquired: -# http://savannah.gnu.org/projects/freefont/ - -convert=./fontconvert -inpath=~/Desktop/freefont/ -outpath=../Fonts/ -fonts=(FreeMono FreeSans FreeSerif) -styles=("" Bold Italic BoldItalic Oblique BoldOblique) -sizes=(9 12 18 24) - -for f in ${fonts[*]} -do - for index in ${!styles[*]} - do - st=${styles[$index]} - for si in ${sizes[*]} - do - infile=$inpath$f$st".ttf" - if [ -f $infile ] # Does source combination exist? - then - outfile=$outpath$f$st$si"pt7b.h" -# printf "%s %s %s > %s\n" $convert $infile $si $outfile - $convert $infile $si > $outfile - fi - done - done -done diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/gfxfont.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/gfxfont.h deleted file mode 100644 index 175bad6..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/gfxfont.h +++ /dev/null @@ -1,29 +0,0 @@ -// Font structures for newer Adafruit_GFX (1.1 and later). -// Example fonts are included in 'Fonts' directory. -// To use a font in your Arduino sketch, #include the corresponding .h -// file and pass address of GFXfont struct to setFont(). Pass NULL to -// revert to 'classic' fixed-space bitmap font. - -#ifndef _GFXFONT_H_ -#define _GFXFONT_H_ - -/// Font data stored PER GLYPH -typedef struct { - uint16_t bitmapOffset; ///< Pointer into GFXfont->bitmap - uint8_t width; ///< Bitmap dimensions in pixels - uint8_t height; ///< Bitmap dimensions in pixels - uint8_t xAdvance; ///< Distance to advance cursor (x axis) - int8_t xOffset; ///< X dist from cursor pos to UL corner - int8_t yOffset; ///< Y dist from cursor pos to UL corner -} GFXglyph; - -/// Data stored for FONT AS A WHOLE -typedef struct { - uint8_t *bitmap; ///< Glyph bitmaps, concatenated - GFXglyph *glyph; ///< Glyph array - uint16_t first; ///< ASCII extents (first char) - uint16_t last; ///< ASCII extents (last char) - uint8_t yAdvance; ///< Newline distance (y axis) -} GFXfont; - -#endif // _GFXFONT_H_ diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/glcdfont.c b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/glcdfont.c deleted file mode 100644 index 535da3a..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/glcdfont.c +++ /dev/null @@ -1,143 +0,0 @@ -// This is the 'classic' fixed-space bitmap font for Adafruit_GFX since 1.0. -// See gfxfont.h for newer custom bitmap font info. - -#ifndef FONT5X7_H -#define FONT5X7_H - -#ifdef __AVR__ -#include -#include -#elif defined(ESP8266) -#include -#elif defined(__IMXRT1052__) || defined(__IMXRT1062__) -// PROGMEM is defefind for T4 to place data in specific memory section -#undef PROGMEM -#define PROGMEM -#else -#define PROGMEM -#endif - -// Standard ASCII 5x7 font - -static const unsigned char font[] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x3E, 0x6B, - 0x4F, 0x6B, 0x3E, 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x18, 0x3C, 0x7E, 0x3C, - 0x18, 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, - 0x18, 0x3C, 0x18, 0x00, 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, 0x18, 0x24, - 0x18, 0x00, 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x30, 0x48, 0x3A, 0x06, 0x0E, - 0x26, 0x29, 0x79, 0x29, 0x26, 0x40, 0x7F, 0x05, 0x05, 0x07, 0x40, 0x7F, - 0x05, 0x25, 0x3F, 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x7F, 0x3E, 0x1C, 0x1C, - 0x08, 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x14, 0x22, 0x7F, 0x22, 0x14, 0x5F, - 0x5F, 0x00, 0x5F, 0x5F, 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, 0x66, 0x89, - 0x95, 0x6A, 0x60, 0x60, 0x60, 0x60, 0x60, 0x94, 0xA2, 0xFF, 0xA2, 0x94, - 0x08, 0x04, 0x7E, 0x04, 0x08, 0x10, 0x20, 0x7E, 0x20, 0x10, 0x08, 0x08, - 0x2A, 0x1C, 0x08, 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x1E, 0x10, 0x10, 0x10, - 0x10, 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x30, 0x38, 0x3E, 0x38, 0x30, 0x06, - 0x0E, 0x3E, 0x0E, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5F, - 0x00, 0x00, 0x00, 0x07, 0x00, 0x07, 0x00, 0x14, 0x7F, 0x14, 0x7F, 0x14, - 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x23, 0x13, 0x08, 0x64, 0x62, 0x36, 0x49, - 0x56, 0x20, 0x50, 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, 0x1C, 0x22, 0x41, - 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00, 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x08, - 0x08, 0x3E, 0x08, 0x08, 0x00, 0x80, 0x70, 0x30, 0x00, 0x08, 0x08, 0x08, - 0x08, 0x08, 0x00, 0x00, 0x60, 0x60, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02, - 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, 0x42, 0x7F, 0x40, 0x00, 0x72, 0x49, - 0x49, 0x49, 0x46, 0x21, 0x41, 0x49, 0x4D, 0x33, 0x18, 0x14, 0x12, 0x7F, - 0x10, 0x27, 0x45, 0x45, 0x45, 0x39, 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x41, - 0x21, 0x11, 0x09, 0x07, 0x36, 0x49, 0x49, 0x49, 0x36, 0x46, 0x49, 0x49, - 0x29, 0x1E, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x40, 0x34, 0x00, 0x00, - 0x00, 0x08, 0x14, 0x22, 0x41, 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, 0x41, - 0x22, 0x14, 0x08, 0x02, 0x01, 0x59, 0x09, 0x06, 0x3E, 0x41, 0x5D, 0x59, - 0x4E, 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x7F, 0x49, 0x49, 0x49, 0x36, 0x3E, - 0x41, 0x41, 0x41, 0x22, 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x7F, 0x49, 0x49, - 0x49, 0x41, 0x7F, 0x09, 0x09, 0x09, 0x01, 0x3E, 0x41, 0x41, 0x51, 0x73, - 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, 0x41, 0x7F, 0x41, 0x00, 0x20, 0x40, - 0x41, 0x3F, 0x01, 0x7F, 0x08, 0x14, 0x22, 0x41, 0x7F, 0x40, 0x40, 0x40, - 0x40, 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x3E, - 0x41, 0x41, 0x41, 0x3E, 0x7F, 0x09, 0x09, 0x09, 0x06, 0x3E, 0x41, 0x51, - 0x21, 0x5E, 0x7F, 0x09, 0x19, 0x29, 0x46, 0x26, 0x49, 0x49, 0x49, 0x32, - 0x03, 0x01, 0x7F, 0x01, 0x03, 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x1F, 0x20, - 0x40, 0x20, 0x1F, 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x63, 0x14, 0x08, 0x14, - 0x63, 0x03, 0x04, 0x78, 0x04, 0x03, 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, - 0x7F, 0x41, 0x41, 0x41, 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, 0x41, 0x41, - 0x41, 0x7F, 0x04, 0x02, 0x01, 0x02, 0x04, 0x40, 0x40, 0x40, 0x40, 0x40, - 0x00, 0x03, 0x07, 0x08, 0x00, 0x20, 0x54, 0x54, 0x78, 0x40, 0x7F, 0x28, - 0x44, 0x44, 0x38, 0x38, 0x44, 0x44, 0x44, 0x28, 0x38, 0x44, 0x44, 0x28, - 0x7F, 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, 0x08, 0x7E, 0x09, 0x02, 0x18, - 0xA4, 0xA4, 0x9C, 0x78, 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, 0x44, 0x7D, - 0x40, 0x00, 0x20, 0x40, 0x40, 0x3D, 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00, - 0x00, 0x41, 0x7F, 0x40, 0x00, 0x7C, 0x04, 0x78, 0x04, 0x78, 0x7C, 0x08, - 0x04, 0x04, 0x78, 0x38, 0x44, 0x44, 0x44, 0x38, 0xFC, 0x18, 0x24, 0x24, - 0x18, 0x18, 0x24, 0x24, 0x18, 0xFC, 0x7C, 0x08, 0x04, 0x04, 0x08, 0x48, - 0x54, 0x54, 0x54, 0x24, 0x04, 0x04, 0x3F, 0x44, 0x24, 0x3C, 0x40, 0x40, - 0x20, 0x7C, 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x3C, 0x40, 0x30, 0x40, 0x3C, - 0x44, 0x28, 0x10, 0x28, 0x44, 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x44, 0x64, - 0x54, 0x4C, 0x44, 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, 0x00, 0x77, 0x00, - 0x00, 0x00, 0x41, 0x36, 0x08, 0x00, 0x02, 0x01, 0x02, 0x04, 0x02, 0x3C, - 0x26, 0x23, 0x26, 0x3C, 0x1E, 0xA1, 0xA1, 0x61, 0x12, 0x3A, 0x40, 0x40, - 0x20, 0x7A, 0x38, 0x54, 0x54, 0x55, 0x59, 0x21, 0x55, 0x55, 0x79, 0x41, - 0x22, 0x54, 0x54, 0x78, 0x42, // a-umlaut - 0x21, 0x55, 0x54, 0x78, 0x40, 0x20, 0x54, 0x55, 0x79, 0x40, 0x0C, 0x1E, - 0x52, 0x72, 0x12, 0x39, 0x55, 0x55, 0x55, 0x59, 0x39, 0x54, 0x54, 0x54, - 0x59, 0x39, 0x55, 0x54, 0x54, 0x58, 0x00, 0x00, 0x45, 0x7C, 0x41, 0x00, - 0x02, 0x45, 0x7D, 0x42, 0x00, 0x01, 0x45, 0x7C, 0x40, 0x7D, 0x12, 0x11, - 0x12, 0x7D, // A-umlaut - 0xF0, 0x28, 0x25, 0x28, 0xF0, 0x7C, 0x54, 0x55, 0x45, 0x00, 0x20, 0x54, - 0x54, 0x7C, 0x54, 0x7C, 0x0A, 0x09, 0x7F, 0x49, 0x32, 0x49, 0x49, 0x49, - 0x32, 0x3A, 0x44, 0x44, 0x44, 0x3A, // o-umlaut - 0x32, 0x4A, 0x48, 0x48, 0x30, 0x3A, 0x41, 0x41, 0x21, 0x7A, 0x3A, 0x42, - 0x40, 0x20, 0x78, 0x00, 0x9D, 0xA0, 0xA0, 0x7D, 0x3D, 0x42, 0x42, 0x42, - 0x3D, // O-umlaut - 0x3D, 0x40, 0x40, 0x40, 0x3D, 0x3C, 0x24, 0xFF, 0x24, 0x24, 0x48, 0x7E, - 0x49, 0x43, 0x66, 0x2B, 0x2F, 0xFC, 0x2F, 0x2B, 0xFF, 0x09, 0x29, 0xF6, - 0x20, 0xC0, 0x88, 0x7E, 0x09, 0x03, 0x20, 0x54, 0x54, 0x79, 0x41, 0x00, - 0x00, 0x44, 0x7D, 0x41, 0x30, 0x48, 0x48, 0x4A, 0x32, 0x38, 0x40, 0x40, - 0x22, 0x7A, 0x00, 0x7A, 0x0A, 0x0A, 0x72, 0x7D, 0x0D, 0x19, 0x31, 0x7D, - 0x26, 0x29, 0x29, 0x2F, 0x28, 0x26, 0x29, 0x29, 0x29, 0x26, 0x30, 0x48, - 0x4D, 0x40, 0x20, 0x38, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, - 0x38, 0x2F, 0x10, 0xC8, 0xAC, 0xBA, 0x2F, 0x10, 0x28, 0x34, 0xFA, 0x00, - 0x00, 0x7B, 0x00, 0x00, 0x08, 0x14, 0x2A, 0x14, 0x22, 0x22, 0x14, 0x2A, - 0x14, 0x08, 0x55, 0x00, 0x55, 0x00, 0x55, // #176 (25% block) missing in old - // code - 0xAA, 0x55, 0xAA, 0x55, 0xAA, // 50% block - 0xFF, 0x55, 0xFF, 0x55, 0xFF, // 75% block - 0x00, 0x00, 0x00, 0xFF, 0x00, 0x10, 0x10, 0x10, 0xFF, 0x00, 0x14, 0x14, - 0x14, 0xFF, 0x00, 0x10, 0x10, 0xFF, 0x00, 0xFF, 0x10, 0x10, 0xF0, 0x10, - 0xF0, 0x14, 0x14, 0x14, 0xFC, 0x00, 0x14, 0x14, 0xF7, 0x00, 0xFF, 0x00, - 0x00, 0xFF, 0x00, 0xFF, 0x14, 0x14, 0xF4, 0x04, 0xFC, 0x14, 0x14, 0x17, - 0x10, 0x1F, 0x10, 0x10, 0x1F, 0x10, 0x1F, 0x14, 0x14, 0x14, 0x1F, 0x00, - 0x10, 0x10, 0x10, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x10, 0x10, 0x10, - 0x10, 0x1F, 0x10, 0x10, 0x10, 0x10, 0xF0, 0x10, 0x00, 0x00, 0x00, 0xFF, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0xFF, 0x10, 0x00, - 0x00, 0x00, 0xFF, 0x14, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0x00, 0x1F, - 0x10, 0x17, 0x00, 0x00, 0xFC, 0x04, 0xF4, 0x14, 0x14, 0x17, 0x10, 0x17, - 0x14, 0x14, 0xF4, 0x04, 0xF4, 0x00, 0x00, 0xFF, 0x00, 0xF7, 0x14, 0x14, - 0x14, 0x14, 0x14, 0x14, 0x14, 0xF7, 0x00, 0xF7, 0x14, 0x14, 0x14, 0x17, - 0x14, 0x10, 0x10, 0x1F, 0x10, 0x1F, 0x14, 0x14, 0x14, 0xF4, 0x14, 0x10, - 0x10, 0xF0, 0x10, 0xF0, 0x00, 0x00, 0x1F, 0x10, 0x1F, 0x00, 0x00, 0x00, - 0x1F, 0x14, 0x00, 0x00, 0x00, 0xFC, 0x14, 0x00, 0x00, 0xF0, 0x10, 0xF0, - 0x10, 0x10, 0xFF, 0x10, 0xFF, 0x14, 0x14, 0x14, 0xFF, 0x14, 0x10, 0x10, - 0x10, 0x1F, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x10, 0xFF, 0xFF, 0xFF, 0xFF, - 0xFF, 0xF0, 0xF0, 0xF0, 0xF0, 0xF0, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0x0F, 0x0F, 0x38, 0x44, 0x44, - 0x38, 0x44, 0xFC, 0x4A, 0x4A, 0x4A, 0x34, // sharp-s or beta - 0x7E, 0x02, 0x02, 0x06, 0x06, 0x02, 0x7E, 0x02, 0x7E, 0x02, 0x63, 0x55, - 0x49, 0x41, 0x63, 0x38, 0x44, 0x44, 0x3C, 0x04, 0x40, 0x7E, 0x20, 0x1E, - 0x20, 0x06, 0x02, 0x7E, 0x02, 0x02, 0x99, 0xA5, 0xE7, 0xA5, 0x99, 0x1C, - 0x2A, 0x49, 0x2A, 0x1C, 0x4C, 0x72, 0x01, 0x72, 0x4C, 0x30, 0x4A, 0x4D, - 0x4D, 0x30, 0x30, 0x48, 0x78, 0x48, 0x30, 0xBC, 0x62, 0x5A, 0x46, 0x3D, - 0x3E, 0x49, 0x49, 0x49, 0x00, 0x7E, 0x01, 0x01, 0x01, 0x7E, 0x2A, 0x2A, - 0x2A, 0x2A, 0x2A, 0x44, 0x44, 0x5F, 0x44, 0x44, 0x40, 0x51, 0x4A, 0x44, - 0x40, 0x40, 0x44, 0x4A, 0x51, 0x40, 0x00, 0x00, 0xFF, 0x01, 0x03, 0xE0, - 0x80, 0xFF, 0x00, 0x00, 0x08, 0x08, 0x6B, 0x6B, 0x08, 0x36, 0x12, 0x36, - 0x24, 0x36, 0x06, 0x0F, 0x09, 0x0F, 0x06, 0x00, 0x00, 0x18, 0x18, 0x00, - 0x00, 0x00, 0x10, 0x10, 0x00, 0x30, 0x40, 0xFF, 0x01, 0x01, 0x00, 0x1F, - 0x01, 0x01, 0x1E, 0x00, 0x19, 0x1D, 0x17, 0x12, 0x00, 0x3C, 0x3C, 0x3C, - 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00 // #255 NBSP -}; - -// allow clean compilation with [-Wunused-const-variable=] and [-Wall] -static inline void avoid_unused_const_variable_compiler_warning(void) { - (void)font; -} - -#endif // FONT5X7_H diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/library.properties b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/library.properties deleted file mode 100644 index 3bbb3ff..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/library.properties +++ /dev/null @@ -1,10 +0,0 @@ -name=Adafruit GFX Library -version=1.12.6 -author=Adafruit -maintainer=Adafruit -sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. -paragraph=Install this library in addition to the display library for your hardware. -category=Display -url=https://github.com/adafruit/Adafruit-GFX-Library -architectures=* -depends=Adafruit BusIO diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/license.txt b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/license.txt deleted file mode 100644 index 7492e93..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit GFX Library/license.txt +++ /dev/null @@ -1,24 +0,0 @@ -Software License Agreement (BSD License) - -Copyright (c) 2012 Adafruit Industries. 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/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md deleted file mode 100644 index f0e2614..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,46 +0,0 @@ -Thank you for opening an issue on an Adafruit Arduino library repository. To -improve the speed of resolution please review the following guidelines and -common troubleshooting steps below before creating the issue: - -- **Do not use GitHub issues for troubleshooting projects and issues.** Instead use - the forums at http://forums.adafruit.com to ask questions and troubleshoot why - something isn't working as expected. In many cases the problem is a common issue - that you will more quickly receive help from the forum community. GitHub issues - are meant for known defects in the code. If you don't know if there is a defect - in the code then start with troubleshooting on the forum first. - -- **If following a tutorial or guide be sure you didn't miss a step.** Carefully - check all of the steps and commands to run have been followed. Consult the - forum if you're unsure or have questions about steps in a guide/tutorial. - -- **For Arduino projects check these very common issues to ensure they don't apply**: - - - For uploading sketches or communicating with the board make sure you're using - a **USB data cable** and **not** a **USB charge-only cable**. It is sometimes - very hard to tell the difference between a data and charge cable! Try using the - cable with other devices or swapping to another cable to confirm it is not - the problem. - - - **Be sure you are supplying adequate power to the board.** Check the specs of - your board and plug in an external power supply. In many cases just - plugging a board into your computer is not enough to power it and other - peripherals. - - - **Double check all soldering joints and connections.** Flakey connections - cause many mysterious problems. See the [guide to excellent soldering](https://learn.adafruit.com/adafruit-guide-excellent-soldering/tools) for examples of good solder joints. - - - **Ensure you are using an official Arduino or Adafruit board.** We can't - guarantee a clone board will have the same functionality and work as expected - with this code and don't support them. - -If you're sure this issue is a defect in the code and checked the steps above -please fill in the following fields to provide enough troubleshooting information. -You may delete the guideline and text above to just leave the following details: - -- Arduino board: **INSERT ARDUINO BOARD NAME/TYPE HERE** - -- Arduino IDE version (found in Arduino -> About Arduino menu): **INSERT ARDUINO - VERSION HERE** - -- List the steps to reproduce the problem below (if possible attach a sketch or - copy the sketch code in too): **LIST REPRO STEPS BELOW** diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 7b641eb..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,26 +0,0 @@ -Thank you for creating a pull request to contribute to Adafruit's GitHub code! -Before you open the request please review the following guidelines and tips to -help it be more easily integrated: - -- **Describe the scope of your change--i.e. what the change does and what parts - of the code were modified.** This will help us understand any risks of integrating - the code. - -- **Describe any known limitations with your change.** For example if the change - doesn't apply to a supported platform of the library please mention it. - -- **Please run any tests or examples that can exercise your modified code.** We - strive to not break users of the code and running tests/examples helps with this - process. - -Thank you again for contributing! We will try to test and integrate the change -as soon as we can, but be aware we have many GitHub repositories to manage and -can't immediately respond to every request. There is no need to bump or check in -on a pull request (it will clutter the discussion of the request). - -Also don't be worried if the request is closed or not integrated--sometimes the -priorities of Adafruit's GitHub code (education, ease of use) might not match the -priorities of the pull request. Don't fret, the open source community thrives on -forks and GitHub makes it easy to keep your changes in a forked repo. - -After reviewing the guidelines above you can delete this text from the pull request. diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml deleted file mode 100644 index 32d54d9..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.github/workflows/githubci.yml +++ /dev/null @@ -1,32 +0,0 @@ -name: Arduino Library CI - -on: [pull_request, push, repository_dispatch] - -jobs: - build: - runs-on: ubuntu-latest - - steps: - - uses: actions/setup-python@v4 - with: - python-version: '3.x' - - uses: actions/checkout@v3 - - uses: actions/checkout@v3 - with: - repository: adafruit/ci-arduino - path: ci - - - name: pre-install - run: bash ci/actions_install.sh - - - name: test platforms - run: python3 ci/build_platform.py main_platforms - - - name: clang - run: python3 ci/run-clang-format.py -e "ci/*" -e "bin/*" -r . - - - name: doxygen - env: - GH_REPO_TOKEN: ${{ secrets.GH_REPO_TOKEN }} - PRETTYNAME : "Adafruit IS31FL3731 Library" - run: bash ci/doxy_gen_and_deploy.sh diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.piopm b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.piopm deleted file mode 100644 index ccf819e..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/.piopm +++ /dev/null @@ -1 +0,0 @@ -{"type": "library", "name": "Adafruit IS31FL3731 Library", "version": "2.0.2", "spec": {"owner": "adafruit", "id": 1241, "name": "Adafruit IS31FL3731 Library", "requirements": null, "uri": null}} \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp deleted file mode 100644 index fb1a347..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.cpp +++ /dev/null @@ -1,273 +0,0 @@ -#include - -#ifndef _swap_int16_t -#define _swap_int16_t(a, b) \ - { \ - int16_t t = a; \ - a = b; \ - b = t; \ - } -#endif - -/**************************************************************************/ -/*! - @brief Constructor for breakout version - @param width Desired width of led display - @param height Desired height of led display -*/ -/**************************************************************************/ - -Adafruit_IS31FL3731::Adafruit_IS31FL3731(uint8_t width, uint8_t height) - : Adafruit_GFX(width, height) {} - -/**************************************************************************/ -/*! - @brief Constructor for FeatherWing version (15x7 LEDs) -*/ -/**************************************************************************/ -Adafruit_IS31FL3731_Wing::Adafruit_IS31FL3731_Wing(void) - : Adafruit_IS31FL3731(15, 7) {} - -/**************************************************************************/ -/*! - @brief Initialize hardware and clear display - @param addr The I2C address we expect to find the chip at - @param theWire The TwoWire I2C bus device to use, defaults to &Wire - @returns True on success, false if chip isnt found -*/ -/**************************************************************************/ -bool Adafruit_IS31FL3731::begin(uint8_t addr, TwoWire *theWire) { - if (_i2c_dev) { - delete _i2c_dev; - } - _i2c_dev = new Adafruit_I2CDevice(addr, theWire); - - if (!_i2c_dev->begin()) { - return false; - } - - _i2c_dev->setSpeed(400000); - _frame = 0; - - // shutdown - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x00); - - delay(10); - - // out of shutdown - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_SHUTDOWN, 0x01); - - // picture mode - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_CONFIG, - ISSI_REG_CONFIG_PICTUREMODE); - - displayFrame(_frame); - - // all LEDs on & 0 PWM - clear(); // set each led to 0 PWM - - for (uint8_t f = 0; f < 8; f++) { - for (uint8_t i = 0; i <= 0x11; i++) - writeRegister8(f, i, 0xff); // each 8 LEDs on - } - - audioSync(false); - - return true; -} - -/**************************************************************************/ -/*! - @brief Sets all LEDs on & 0 PWM for current frame. -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::clear(void) { - selectBank(_frame); - uint8_t erasebuf[25]; - - memset(erasebuf, 0, 25); - - for (uint8_t i = 0; i < 6; i++) { - erasebuf[0] = 0x24 + i * 24; - _i2c_dev->write(erasebuf, 25); - } -} - -/**************************************************************************/ -/*! - @brief Low level accesssor - sets a 8-bit PWM pixel value to a bank location - does not handle rotation, x/y or any rearrangements! - @param lednum The offset into the bank that corresponds to the LED - @param bank The bank/frame we will set the data in - @param pwm brightnes, from 0 (off) to 255 (max on) -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::setLEDPWM(uint8_t lednum, uint8_t pwm, uint8_t bank) { - if (lednum >= 144) - return; - writeRegister8(bank, 0x24 + lednum, pwm); -} - -/**************************************************************************/ -/*! - @brief Adafruit GFX low level accesssor - sets a 8-bit PWM pixel value - handles rotation and pixel arrangement, unlike setLEDPWM - @param x The x position, starting with 0 for left-most side - @param y The y position, starting with 0 for top-most side - @param color Despite being a 16-bit value, takes 0 (off) to 255 (max on) -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731_Wing::drawPixel(int16_t x, int16_t y, uint16_t color) { - // check rotation, move pixel around if necessary - switch (getRotation()) { - case 1: - _swap_int16_t(x, y); - x = 15 - x - 1; - break; - case 2: - x = 15 - x - 1; - y = 7 - y - 1; - break; - case 3: - _swap_int16_t(x, y); - y = 9 - y - 1; - break; - } - - // charlie wing is smaller: - if ((x < 0) || (x >= 16) || (y < 0) || (y >= 7)) - return; - - if (x > 7) { - x = 15 - x; - y += 8; - } else { - y = 7 - y; - } - - _swap_int16_t(x, y); - - if (color > 255) - color = 255; // PWM 8bit max - - setLEDPWM(x + y * 16, color, _frame); - return; -} - -/**************************************************************************/ -/*! - @brief Adafruit GFX low level accesssor - sets a 8-bit PWM pixel value - handles rotation and pixel arrangement, unlike setLEDPWM - @param x The x position, starting with 0 for left-most side - @param y The y position, starting with 0 for top-most side - @param color Despite being a 16-bit value, takes 0 (off) to 255 (max on) -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::drawPixel(int16_t x, int16_t y, uint16_t color) { - // check rotation, move pixel around if necessary - switch (getRotation()) { - case 1: - _swap_int16_t(x, y); - x = 16 - x - 1; - break; - case 2: - x = 16 - x - 1; - y = 9 - y - 1; - break; - case 3: - _swap_int16_t(x, y); - y = 9 - y - 1; - break; - } - - if ((x < 0) || (x >= 16)) - return; - if ((y < 0) || (y >= 9)) - return; - if (color > 255) - color = 255; // PWM 8bit max - - setLEDPWM(x + y * 16, color, _frame); - return; -} - -/**************************************************************************/ -/*! - @brief Set's this object's frame tracker (does not talk to the chip) - @param frame Ranges from 0 - 7 for the 8 frames -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::setFrame(uint8_t frame) { _frame = frame; } - -/**************************************************************************/ -/*! - @brief Have the chip set the display to the contents of a frame - @param frame Ranges from 0 - 7 for the 8 frames -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::displayFrame(uint8_t frame) { - if (frame > 7) - frame = 0; - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_PICTUREFRAME, frame); -} - -/**************************************************************************/ -/*! - @brief Switch to a given bank in the chip memory for future reads - @param bank The IS31 bank to switch to - @returns False if I2C command failed to be ack'd -*/ -/**************************************************************************/ -bool Adafruit_IS31FL3731::selectBank(uint8_t bank) { - uint8_t cmd[2] = {ISSI_COMMANDREGISTER, bank}; - return _i2c_dev->write(cmd, 2); -} - -/**************************************************************************/ -/*! - @brief Enable the audio 'sync' for brightness pulsing (not really tested) - @param sync True to enable, False to disable -*/ -/**************************************************************************/ -void Adafruit_IS31FL3731::audioSync(bool sync) { - if (sync) { - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_AUDIOSYNC, 0x1); - } else { - writeRegister8(ISSI_BANK_FUNCTIONREG, ISSI_REG_AUDIOSYNC, 0x0); - } -} - -/**************************************************************************/ -/*! - @brief Write one byte to a register located in a given bank - @param bank The IS31 bank to write the register location - @param reg the offset into the bank to write - @param data The byte value - @returns False if I2C command failed to be ack'd -*/ -/**************************************************************************/ -bool Adafruit_IS31FL3731::writeRegister8(uint8_t bank, uint8_t reg, - uint8_t data) { - selectBank(bank); - - uint8_t cmd[2] = {reg, data}; - return _i2c_dev->write(cmd, 2); -} - -/**************************************************************************/ -/*! - @brief Read one byte from a register located in a given bank - @param bank The IS31 bank to read the register location - @param reg the offset into the bank to read - @return 1 byte value -*/ -/**************************************************************************/ -uint8_t Adafruit_IS31FL3731::readRegister8(uint8_t bank, uint8_t reg) { - uint8_t val = 0xFF; - - selectBank(bank); - - _i2c_dev->write_then_read(®, 1, &val, 1); - - return val; -} diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h deleted file mode 100644 index f530253..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/Adafruit_IS31FL3731.h +++ /dev/null @@ -1,65 +0,0 @@ -#ifndef _ADAFRUIT_IS31FL3731_H_ -#define _ADAFRUIT_IS31FL3731_H_ - -#include -#include -#include - -#define ISSI_ADDR_DEFAULT 0x74 - -#define ISSI_REG_CONFIG 0x00 -#define ISSI_REG_CONFIG_PICTUREMODE 0x00 -#define ISSI_REG_CONFIG_AUTOPLAYMODE 0x08 -#define ISSI_REG_CONFIG_AUDIOPLAYMODE 0x18 - -#define ISSI_CONF_PICTUREMODE 0x00 -#define ISSI_CONF_AUTOFRAMEMODE 0x04 -#define ISSI_CONF_AUDIOMODE 0x08 - -#define ISSI_REG_PICTUREFRAME 0x01 - -#define ISSI_REG_SHUTDOWN 0x0A -#define ISSI_REG_AUDIOSYNC 0x06 - -#define ISSI_COMMANDREGISTER 0xFD -#define ISSI_BANK_FUNCTIONREG 0x0B // helpfully called 'page nine' - -/**************************************************************************/ -/*! - @brief Constructor for generic IS31FL3731 breakout version -*/ -/**************************************************************************/ -class Adafruit_IS31FL3731 : public Adafruit_GFX { -public: - Adafruit_IS31FL3731(uint8_t x = 16, uint8_t y = 9); - bool begin(uint8_t addr = ISSI_ADDR_DEFAULT, TwoWire *theWire = &Wire); - void drawPixel(int16_t x, int16_t y, uint16_t color); - void clear(void); - - void setLEDPWM(uint8_t lednum, uint8_t pwm, uint8_t bank = 0); - void audioSync(bool sync); - void setFrame(uint8_t b); - void displayFrame(uint8_t frame); - -protected: - bool selectBank(uint8_t bank); - bool writeRegister8(uint8_t bank, uint8_t reg, uint8_t data); - uint8_t readRegister8(uint8_t bank, uint8_t reg); - uint8_t _frame; ///< The frame (of 8) we are currently addressing - -private: - Adafruit_I2CDevice *_i2c_dev = NULL; -}; - -/**************************************************************************/ -/*! - @brief Constructor for FeatherWing IS31FL3731 version -*/ -/**************************************************************************/ -class Adafruit_IS31FL3731_Wing : public Adafruit_IS31FL3731 { -public: - Adafruit_IS31FL3731_Wing(void); - void drawPixel(int16_t x, int16_t y, uint16_t color); -}; - -#endif diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md deleted file mode 100644 index d885b36..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,137 +0,0 @@ - -# Adafruit Community Code of Conduct - -## Our Pledge - -In the interest of fostering an open and welcoming environment, we as -contributors and leaders pledge to making participation in our project and -our community a harassment-free experience for everyone, regardless of age, body -size, disability, ethnicity, gender identity and expression, level or type of -experience, education, socio-economic status, nationality, personal appearance, -race, religion, or sexual identity and orientation. - -## Our Standards - -We are committed to providing a friendly, safe and welcoming environment for -all. - -Examples of behavior that contributes to creating a positive environment -include: - -* Be kind and courteous to others -* Using welcoming and inclusive language -* Being respectful of differing viewpoints and experiences -* Collaborating with other community members -* Gracefully accepting constructive criticism -* Focusing on what is best for the community -* Showing empathy towards other community members - -Examples of unacceptable behavior by participants include: - -* The use of sexualized language or imagery and sexual attention or advances -* The use of inappropriate images, including in a community member's avatar -* The use of inappropriate language, including in a community member's nickname -* Any spamming, flaming, baiting or other attention-stealing behavior -* Excessive or unwelcome helping; answering outside the scope of the question - asked -* Trolling, insulting/derogatory comments, and personal or political attacks -* Promoting or spreading disinformation, lies, or conspiracy theories against - a person, group, organisation, project, or community -* Public or private harassment -* Publishing others' private information, such as a physical or electronic - address, without explicit permission -* Other conduct which could reasonably be considered inappropriate - -The goal of the standards and moderation guidelines outlined here is to build -and maintain a respectful community. We ask that you don’t just aim to be -"technically unimpeachable", but rather try to be your best self. - -We value many things beyond technical expertise, including collaboration and -supporting others within our community. Providing a positive experience for -other community members can have a much more significant impact than simply -providing the correct answer. - -## Our Responsibilities - -Project leaders are responsible for clarifying the standards of acceptable -behavior and are expected to take appropriate and fair corrective action in -response to any instances of unacceptable behavior. - -Project leaders have the right and responsibility to remove, edit, or -reject messages, comments, commits, code, issues, and other contributions -that are not aligned to this Code of Conduct, or to ban temporarily or -permanently any community member for other behaviors that they deem -inappropriate, threatening, offensive, or harmful. - -## Moderation - -Instances of behaviors that violate the Adafruit Community Code of Conduct -may be reported by any member of the community. Community members are -encouraged to report these situations, including situations they witness -involving other community members. - -You may report in the following ways: - -In any situation, you may send an email to . - -On the Adafruit Discord, you may send an open message from any channel -to all Community Moderators by tagging @community moderators. You may -also send an open message from any channel, or a direct message to -@kattni#1507, @tannewt#4653, @danh#1614, @cater#2442, -@sommersoft#0222, @Mr. Certainly#0472 or @Andon#8175. - -Email and direct message reports will be kept confidential. - -In situations on Discord where the issue is particularly egregious, possibly -illegal, requires immediate action, or violates the Discord terms of service, -you should also report the message directly to Discord. - -These are the steps for upholding our community’s standards of conduct. - -1. Any member of the community may report any situation that violates the -Adafruit Community Code of Conduct. All reports will be reviewed and -investigated. -2. If the behavior is an egregious violation, the community member who -committed the violation may be banned immediately, without warning. -3. Otherwise, moderators will first respond to such behavior with a warning. -4. Moderators follow a soft "three strikes" policy - the community member may -be given another chance, if they are receptive to the warning and change their -behavior. -5. If the community member is unreceptive or unreasonable when warned by a -moderator, or the warning goes unheeded, they may be banned for a first or -second offense. Repeated offenses will result in the community member being -banned. - -## Scope - -This Code of Conduct and the enforcement policies listed above apply to all -Adafruit Community venues. This includes but is not limited to any community -spaces (both public and private), the entire Adafruit Discord server, and -Adafruit GitHub repositories. Examples of Adafruit Community spaces include -but are not limited to meet-ups, audio chats on the Adafruit Discord, or -interaction at a conference. - -This Code of Conduct applies both within project spaces and in public spaces -when an individual is representing the project or its community. As a community -member, you are representing our community, and are expected to behave -accordingly. - -## Attribution - -This Code of Conduct is adapted from the [Contributor Covenant], -version 1.4, available at -, -and the [Rust Code of Conduct](https://www.rust-lang.org/en-US/conduct.html). - -For other projects adopting the Adafruit Community Code of -Conduct, please contact the maintainers of those projects for enforcement. -If you wish to use this code of conduct for your own project, consider -explicitly mentioning your moderation policy or making a copy with your -own moderation policy so as to avoid confusion. - -[Contributor Covenant]: https://www.contributor-covenant.org diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/LICENSE b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/LICENSE deleted file mode 100644 index 3f50677..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2020 Ladyada for Adafruit Industries - -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. diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/README.md b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/README.md deleted file mode 100644 index 7f58723..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/README.md +++ /dev/null @@ -1 +0,0 @@ -# Adafruit IS31FL3731 [![Build Status](https://github.com/adafruit/Adafruit_IS31FL3731/workflows/Arduino%20Library%20CI/badge.svg)](https://github.com/adafruit/Adafruit_IS31FL3731/actions)[![Documentation](https://github.com/adafruit/ci-arduino/blob/master/assets/doxygen_badge.svg)](http://adafruit.github.io/Adafruit_IS31FL3731/html/index.html) diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino deleted file mode 100644 index a0fdcc2..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/gfxdemo/gfxdemo.ino +++ /dev/null @@ -1,107 +0,0 @@ -#include -#include -#include - -// If you're using the full breakout... -Adafruit_IS31FL3731 matrix = Adafruit_IS31FL3731(); -// If you're using the FeatherWing version -//Adafruit_IS31FL3731_Wing matrix = Adafruit_IS31FL3731_Wing(); - -static const uint8_t PROGMEM - smile_bmp[] = - { 0b00111100, - 0b01000010, - 0b10100101, - 0b10000001, - 0b10100101, - 0b10011001, - 0b01000010, - 0b00111100 }, - neutral_bmp[] = - { 0b00111100, - 0b01000010, - 0b10100101, - 0b10000001, - 0b10111101, - 0b10000001, - 0b01000010, - 0b00111100 }, - frown_bmp[] = - { 0b00111100, - 0b01000010, - 0b10100101, - 0b10000001, - 0b10011001, - 0b10100101, - 0b01000010, - 0b00111100 }; - - -void setup() { - - Serial.begin(9600); - Serial.println("ISSI manual animation test"); - if (! matrix.begin()) { - Serial.println("IS31 not found"); - while (1); - } - Serial.println("IS31 Found!"); - -} - - -void loop() { - matrix.setRotation(0); - - matrix.clear(); - matrix.drawBitmap(3, 0, smile_bmp, 8, 8, 255); - delay(500); - - matrix.clear(); - matrix.drawBitmap(3, 0, neutral_bmp, 8, 8, 64); - delay(500); - - matrix.clear(); - matrix.drawBitmap(3, 0, frown_bmp, 8, 8, 32); - delay(500); - - matrix.clear(); - matrix.drawPixel(0, 0, 255); - delay(500); - - matrix.clear(); - matrix.drawLine(0,0, matrix.width()-1, matrix.height()-1, 127); - delay(500); - - matrix.clear(); - matrix.drawRect(0,0, matrix.width(), matrix.height(), 255); - matrix.fillRect(2,2, matrix.width()-4, matrix.height()-4, 20); - delay(500); - - matrix.clear(); - matrix.drawCircle(8,4, 4, 64); - matrix.drawCircle(8,4, 2, 32); - delay(500); - - - matrix.setTextSize(1); - matrix.setTextWrap(false); // we dont want text to wrap so it scrolls nicely - matrix.setTextColor(100); - for (int8_t x=0; x>=-32; x--) { - matrix.clear(); - matrix.setCursor(x,0); - matrix.print("Hello"); - delay(100); - } - - matrix.setTextSize(2); - matrix.setTextWrap(false); // we dont want text to wrap so it scrolls nicely - matrix.setTextColor(32); - matrix.setRotation(1); - for (int8_t x=7; x>=-64; x--) { - matrix.clear(); - matrix.setCursor(x,0); - matrix.print("World"); - delay(100); - } -} \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino deleted file mode 100644 index 2612930..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/manualanim/manualanim.ino +++ /dev/null @@ -1,43 +0,0 @@ -#include -#include -#include - -// If you're using the full breakout... -Adafruit_IS31FL3731 ledmatrix = Adafruit_IS31FL3731(); -// If you're using the FeatherWing version -//Adafruit_IS31FL3731_Wing ledmatrix = Adafruit_IS31FL3731_Wing(); - -void setup() { - - Serial.begin(9600); - Serial.println("ISSI manual animation test"); - if (! ledmatrix.begin()) { - Serial.println("IS31 not found"); - while (1); - } - Serial.println("IS31 Found!"); - - ledmatrix.setTextWrap(false); - ledmatrix.setTextColor(64); // quarter brightness - ledmatrix.setTextSize(1); - - // fill all 8 frames with some text - for (uint8_t frame = 0; frame < 8; frame++) { - ledmatrix.setFrame(frame); - ledmatrix.clear(); - ledmatrix.setCursor(0,0); - ledmatrix.write('a'+frame*3); - ledmatrix.write('b'+frame*3); - ledmatrix.write('c'+frame*3); - } -} - -int x = 0; - -void loop() { - // display each frame for 250 milliseconds - for (uint8_t frame = 0; frame < 8; frame++) { - ledmatrix.displayFrame(frame); - delay(250); - } -} \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino deleted file mode 100644 index 7b17084..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/examples/swirldemo/swirldemo.ino +++ /dev/null @@ -1,32 +0,0 @@ -#include -#include -#include - -// If you're using the full breakout... -Adafruit_IS31FL3731 ledmatrix = Adafruit_IS31FL3731(); -// If you're using the FeatherWing version -//Adafruit_IS31FL3731_Wing ledmatrix = Adafruit_IS31FL3731_Wing(); - - -// The lookup table to make the brightness changes be more visible -uint8_t sweep[] = {1, 2, 3, 4, 6, 8, 10, 15, 20, 30, 40, 60, 60, 40, 30, 20, 15, 10, 8, 6, 4, 3, 2, 1}; - -void setup() { - Serial.begin(9600); - Serial.println("ISSI swirl test"); - - if (! ledmatrix.begin()) { - Serial.println("IS31 not found"); - while (1); - } - Serial.println("IS31 found!"); -} - -void loop() { - // animate over all the pixels, and set the brightness from the sweep table - for (uint8_t incr = 0; incr < 24; incr++) - for (uint8_t x = 0; x < 16; x++) - for (uint8_t y = 0; y < 9; y++) - ledmatrix.drawPixel(x, y, sweep[(x+y+incr)%24]); - delay(20); -} \ No newline at end of file diff --git a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/library.properties b/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/library.properties deleted file mode 100644 index 86f5f31..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/Adafruit IS31FL3731 Library/library.properties +++ /dev/null @@ -1,10 +0,0 @@ -name=Adafruit IS31FL3731 Library -version=2.0.2 -author=Adafruit -maintainer=Adafruit -sentence=Arduino library for the Adafruit IS31FL3731 Charlieplex LED driver and CharliePlex FeatherWing. -paragraph=Arduino library for the Adafruit IS31FL3731 Charlieplex LED driver and CharliePlex FeatherWing. -category=Display -url=https://github.com/adafruit/Adafruit_IS31FL3731 -architectures=* -depends=Adafruit GFX Library, Adafruit BusIO diff --git a/hardware_test/pioold/libdeps/rp2040_swd/integrity.dat b/hardware_test/pioold/libdeps/rp2040_swd/integrity.dat deleted file mode 100644 index 98f8eeb..0000000 --- a/hardware_test/pioold/libdeps/rp2040_swd/integrity.dat +++ /dev/null @@ -1,2 +0,0 @@ -adafruit/Adafruit IS31FL3731 Library -adafruit/Adafruit BusIO \ No newline at end of file diff --git a/hardware_test/platformio.ini b/hardware_test/platformio.ini deleted file mode 100644 index f430a48..0000000 --- a/hardware_test/platformio.ini +++ /dev/null @@ -1,19 +0,0 @@ -[env:rp2040_usb] -platform = https://github.com/maxgerhardt/platform-raspberrypi.git -board = pico -framework = arduino -board_build.core = earlephilhower -board_build.usb_product = "Secfest 2026 Badge" -monitor_speed = 115200 - -upload_protocol = picotool - -lib_deps = - adafruit/Adafruit IS31FL3731 Library - adafruit/Adafruit BusIO - -build_flags = - -D PICO_SCAN_I2C_FOR_WIRE - -D ARDUINO_USB_MODE=1 - -D ARDUINO_USB_CDC_ON_BOOT=1 - -I src diff --git a/hardware_test/src/main.cpp b/hardware_test/src/main.cpp deleted file mode 100644 index 4e32265..0000000 --- a/hardware_test/src/main.cpp +++ /dev/null @@ -1,400 +0,0 @@ -// Secfest 2026 Badge — Hardware Test Sketch -// Tests: buttons, front LEDs, flashlight LED, IS31FL3731 LED matrix, I2C bus scan, scrolling text - -#include -#include -#include -#include - -bool hidMode = false; - -static const int8_t cos_lookup[] = { 0, 1, 1, 0, -1, -1, 0, 1 }; -static const int8_t sin_lookup[] = { 1, 0, -1, -1, 0, 1, 1, 0 }; - -// --- Buttons (active LOW, internal pull-ups) --- -// Per schematic: BTN_A=GP8, B=GP9, UP=GP10, DWN=GP11, LFT=GP12, RGT=GP13 -#define BTN_A 8 -#define BTN_B 9 -#define BTN_UP 10 -#define BTN_DOWN 11 -#define BTN_LEFT 12 -#define BTN_RIGHT 13 - -const int BUTTONS[] = { BTN_A, BTN_B, BTN_UP, BTN_DOWN, BTN_LEFT, BTN_RIGHT }; -const char* BTN_NAMES[] = { "A", "B", "Up", "Down", "Left", "Right" }; -const int NUM_BUTTONS = 6; - -// --- LEDs --- -#define LED_FLASHLIGHT 15 // MOSFET gate, HIGH = on -#define LED_FRONT_1 23 -#define LED_FRONT_2 24 -#define LED_FRONT_3 25 -#define LED_FRONT_4 26 - -const int FRONT_LEDS[] = { LED_FRONT_1, LED_FRONT_2, LED_FRONT_3, LED_FRONT_4 }; -const int NUM_LEDS = 4; - -// Front LEDs are wired active-low (anode to 3V3, cathode to GPIO via series R). -// Drive LOW to light them; HIGH (or open-drain Hi-Z) to turn them off. -const int FRONT_LED_ON = LOW; -const int FRONT_LED_OFF = HIGH; - -// --- IS31FL3731 LED matrix --- -// Dedicated I2C bus per schematic: SDA_LED=GPIO4, SCL_LED=GPIO5, address 0x74. -// GP4/GP5 are I2C0 pins on the RP2040, so the matrix uses `Wire`. -#define LED_MATRIX_SDA 4 -#define LED_MATRIX_SCL 5 -#define IS31_ADDR 0x74 - -// --- Main I2C bus (user / SAO) --- -// Per schematic: SDA=GPIO2, SCL=GPIO3. -// GP2/GP3 are I2C1 pins on the RP2040, so the SAO bus uses `Wire1`. -#define MAIN_SDA 2 -#define MAIN_SCL 3 - -// Wire = LED matrix bus (GPIO4/5, I2C0) -// Wire1 = main / SAO bus (GPIO2/3, I2C1) -Adafruit_IS31FL3731* matrix = nullptr; - -static const int MATRIX_W = 9; -static const int MATRIX_H = 16; - -static inline bool matrixPixelIsDead(int x, int y) { - return x == y; -} - -static inline void matrixSetPixel(int x, int y, uint8_t brightness) { - if (x < 0 || x >= MATRIX_W || y < 0 || y >= MATRIX_H) return; - matrix->drawPixel(x, (MATRIX_H - 1) - y, brightness); -} - -static void matrixFill(uint8_t brightness) { - for (int y = 0; y < MATRIX_H; y++) - for (int x = 0; x < MATRIX_W; x++) - matrixSetPixel(x, y, brightness); -} - -// ------------------------------------------------------------------ helpers -- - -void blinkFrontLeds(int times, int ms) { - for (int i = 0; i < times; i++) { - for (int p : FRONT_LEDS) digitalWrite(p, FRONT_LED_ON); - delay(ms); - for (int p : FRONT_LEDS) digitalWrite(p, FRONT_LED_OFF); - delay(ms); - } -} - -void scanI2C(TwoWire& bus, const char* label) { - Serial.print("\nI2C scan — "); - Serial.print(label); - Serial.println(":"); - int found = 0; - for (uint8_t addr = 1; addr < 127; addr++) { - bus.beginTransmission(addr); - if (bus.endTransmission() == 0) { - Serial.print(" Device at 0x"); - if (addr < 16) Serial.print('0'); - Serial.println(addr, HEX); - found++; - } - } - if (!found) Serial.println(" (none found)"); -} - -// ------------------------------------------------------------------- animation state --- - -enum AnimState { - ANIM_RAIN, - ANIM_SPARKLE, - ANIM_BOUNCE, - ANIM_PLASMA, - ANIM_MATRIX, - ANIM_PULSE, - ANIM_TEXT_SCROLL, - ANIM_COUNT -}; - -AnimState animState = ANIM_RAIN; -uint32_t animStartTime = 0; -int scrollPos = 0; -uint32_t lastFrameTime = 0; -const uint32_t FRAME_TIME = 100; -const uint32_t ANIM_DURATION = 4000; - -struct Drop { int x; int y; int8_t vy; }; -Drop drops[9]; -uint8_t sparkles[MATRIX_W][MATRIX_H]; -uint8_t plasma[MATRIX_W][MATRIX_H]; -int bounceX = 4, bounceY = 8; -int8_t bounceVX = 1, bounceVY = -1; - -void initAnimations() { - for (int i = 0; i < 9; i++) { - drops[i].x = i; - drops[i].y = random(0, 16); - drops[i].vy = random(1, 3); - } - for (int x = 0; x < MATRIX_W; x++) - for (int y = 0; y < MATRIX_H; y++) - sparkles[x][y] = 0; - bounceX = 4; bounceY = 8; - bounceVX = 1; bounceVY = -1; -} - -void runAnimation() { - if (!matrix) return; - - uint32_t now = millis(); - if (now - lastFrameTime < FRAME_TIME) return; - lastFrameTime = now; - - switch (animState) { - case ANIM_RAIN: - matrix->clear(); - for (int i = 0; i < 9; i++) { - matrixSetPixel(drops[i].x, drops[i].y, 255); - drops[i].y += drops[i].vy; - if (drops[i].y >= MATRIX_H) { - drops[i].y = 0; - drops[i].x = random(0, MATRIX_W); - } - } - break; - - case ANIM_SPARKLE: { - matrix->clear(); - for (int x = 0; x < MATRIX_W; x++) { - for (int y = 0; y < MATRIX_H; y++) { - if (sparkles[x][y] > 0) { - matrixSetPixel(x, y, sparkles[x][y]); - if (sparkles[x][y] > 20) sparkles[x][y] -= 20; - else sparkles[x][y] = 0; - } - } - } - int sx = random(0, MATRIX_W); - int sy = random(0, MATRIX_H); - if (!matrixPixelIsDead(sx, sy)) sparkles[sx][sy] = 255; - break; - } - - case ANIM_BOUNCE: - matrix->clear(); - if (!matrixPixelIsDead(bounceX, bounceY)) matrixSetPixel(bounceX, bounceY, 255); - bounceX += bounceVX; - bounceY += bounceVY; - if (bounceX <= 0 || bounceX >= MATRIX_W - 1) bounceVX *= -1; - if (bounceY <= 0 || bounceY >= MATRIX_H - 1) bounceVY *= -1; - break; - - case ANIM_PLASMA: { - static uint32_t t = 0; - t += 2; - for (int x = 0; x < MATRIX_W; x++) { - for (int y = 0; y < MATRIX_H; y++) { - uint8_t v = 128 + 127 * sin((x * 0.3) + (y * 0.2) + (t * 0.05)); - plasma[x][y] = v; - } - } - matrix->clear(); - for (int x = 0; x < MATRIX_W; x++) - for (int y = 0; y < MATRIX_H; y++) - if (!matrixPixelIsDead(x, y)) matrixSetPixel(x, y, plasma[x][y]); - break; - } - - case ANIM_MATRIX: { - static uint32_t t = 0; - t++; - matrix->clear(); - for (int x = 0; x < MATRIX_W; x++) { - int y = (t + x * 3) % MATRIX_H; - int brightness = 255; - for (int dy = 0; dy < 5 && y - dy >= 0; dy++) { - int b = brightness - (dy * 50); - if (b > 0) matrixSetPixel(x, y - dy, b); - } - } - break; - } - - case ANIM_PULSE: { - static uint32_t t = 0; - t++; - matrix->clear(); - int center = 4; - for (int r = 0; r < 8; r++) { - int ring = (t + r) % 8; - uint8_t b = (ring < 4) ? 255 : 100; - for (int a = 0; a < 8; a++) { - int x = center + ring * cos_lookup[a]; - int y = center + ring * sin_lookup[a]; - if (x >= 0 && x < MATRIX_W && y >= 0 && y < MATRIX_H && !matrixPixelIsDead(x, y)) - matrixSetPixel(x, y, b); - } - } - break; - } - - case ANIM_TEXT_SCROLL: { - matrix->clear(); - matrix->setTextSize(1); - matrix->setTextColor(255); - const char* scrollText = "Welcome to Securityfest 2026 "; - matrix->setCursor(16 - scrollPos, 1); - matrix->print(scrollText); - scrollPos++; - if (scrollPos > strlen(scrollText) * 6 + 16) { - animState = ANIM_RAIN; - initAnimations(); - } - delay(60); - return; - } - - default: - animState = ANIM_RAIN; - initAnimations(); - animStartTime = millis(); - break; - } - - if (millis() - animStartTime > ANIM_DURATION) { - animState = (AnimState)((animState + 1) % ANIM_TEXT_SCROLL); - animStartTime = millis(); - if (animState == ANIM_TEXT_SCROLL) { - scrollPos = 0; - } else { - initAnimations(); - } - } -} - -// ------------------------------------------------------------------- setup --- - -void setup() { - pinMode(BTN_A, INPUT_PULLUP); - - if (digitalRead(BTN_A) == LOW) { - hidMode = true; - Serial.end(); - } else { - Serial.begin(115200); - delay(2000); - Serial.println("\n=== Secfest 2026 Badge Hardware Test ===\n"); - } - - for (int pin : BUTTONS) pinMode(pin, INPUT_PULLUP); - Serial.println("[Buttons] GP8-GP13 configured with pull-ups"); - - for (int pin : FRONT_LEDS) { pinMode(pin, OUTPUT); digitalWrite(pin, FRONT_LED_OFF); } - pinMode(LED_FLASHLIGHT, OUTPUT); - digitalWrite(LED_FLASHLIGHT, LOW); - Serial.println("[LEDs] GPIO 15, 23-26 configured"); - - Serial.println("\n[Test] Front LEDs — sweeping both polarities"); - for (int i = 0; i < NUM_LEDS; i++) { - int pin = FRONT_LEDS[i]; - Serial.print(" FRONT_LED_"); Serial.print(i + 1); - Serial.print(" on GP"); Serial.println(pin); - pinMode(pin, OUTPUT); - digitalWrite(pin, HIGH); - delay(50); - digitalWrite(pin, LOW); - delay(50); - pinMode(pin, INPUT); - delay(200); - pinMode(pin, OUTPUT); - digitalWrite(pin, FRONT_LED_OFF); - } - - Serial.println("[Test] Flashlight LED — 3 pulses"); - for (int i = 0; i < 3; i++) { - digitalWrite(LED_FLASHLIGHT, HIGH); - delay(150); - digitalWrite(LED_FLASHLIGHT, LOW); - delay(150); - } - - Wire.setSDA(LED_MATRIX_SDA); - Wire.setSCL(LED_MATRIX_SCL); - Wire.begin(); - - Serial.println("\n[Test] IS31FL3731 LED matrix (9x9) on GP4/GP5"); - matrix = new Adafruit_IS31FL3731(9, 16); - if (!matrix->begin(IS31_ADDR, &Wire)) { - Serial.println(" ERROR: IS31FL3731 not found at 0x74"); - matrix = nullptr; - } else { - Serial.println(" Found! Starting animation loop..."); - initAnimations(); - lastFrameTime = millis(); - animStartTime = millis(); - } - - Wire1.setSDA(MAIN_SDA); - Wire1.setSCL(MAIN_SCL); - Wire1.begin(); - - scanI2C(Wire, "matrix bus (SDA=GP4, SCL=GP5)"); - scanI2C(Wire1, "main bus (SDA=GP2, SCL=GP3)"); - - Serial.println("\n[Ready] Animation loop running. Hold Button A to reset.\n"); - blinkFrontLeds(3, 100); -} - -// -------------------------------------------------------------------- TinyUSB HID --- - -extern "C" { -bool tud_hid_n_report_complete_cb(uint8_t itf, uint8_t const* report, uint16_t len) { - (void)itf; (void)report; (void)len; - return true; -} - -void tud_hid_set_report_cb(uint8_t itf, uint8_t report_id, uint8_t report_type, uint8_t const* buffer, uint16_t bufsize) { - (void)itf; (void)report_id; (void)report_type; (void)buffer; (void)bufsize; -} - -uint16_t tud_hid_get_report_cb(uint8_t itf, uint8_t report_id, uint8_t report_type, uint8_t* buffer, uint16_t bufsize) { - (void)itf; (void)report_id; (void)report_type; - if (bufsize < 1) return 0; - uint8_t btn = 0; - for (int i = 0; i < NUM_BUTTONS; i++) { - if (digitalRead(BUTTONS[i]) == LOW) btn |= (1 << i); - } - buffer[0] = btn; - return 1; -} -} - -// -------------------------------------------------------------------- loop --- - -bool prevState[NUM_BUTTONS] = {}; - -void loop() { - if (digitalRead(BTN_A) == LOW && !prevState[0]) { - Serial.println("\n[Reset] Rebooting..."); - delay(100); - rp2040.reboot(); - } - - if (matrix) { - runAnimation(); - } - - for (int i = 0; i < NUM_BUTTONS; i++) { - bool pressed = (digitalRead(BUTTONS[i]) == LOW); - if (pressed && !prevState[i]) { - Serial.print("[Button] "); - Serial.println(BTN_NAMES[i]); - for (int p : FRONT_LEDS) digitalWrite(p, HIGH); - delay(60); - for (int p : FRONT_LEDS) digitalWrite(p, LOW); - delay(60); - for (int p : FRONT_LEDS) digitalWrite(p, FRONT_LED_OFF); - } - prevState[i] = pressed; - } - delay(10); -} \ No newline at end of file diff --git a/rp2040_badge_primary/js/index.html b/rp2040_badge_primary/js/index.html deleted file mode 100644 index cbc804e..0000000 --- a/rp2040_badge_primary/js/index.html +++ /dev/null @@ -1,1034 +0,0 @@ - - - - - - Securityfest 2026 Badge - - - -

Securityfest 2026 Badge

- -
- - -
-
-
-
-
-
- -
-
-
- -
- - - - - - -
- -
-
-
- GPIO0 -
-
-
- GPIO1 PWM -
-
-
- -
- Navigate - A Select - B Back -
- - - - diff --git a/rp2040_badge_primary/platformio.ini b/rp2040_badge_primary/platformio.ini deleted file mode 100644 index 284290c..0000000 --- a/rp2040_badge_primary/platformio.ini +++ /dev/null @@ -1,12 +0,0 @@ -[env:rp2040_swd] -platform = raspberrypi -board = rpipico -framework = arduino -monitor_speed = 115200 - -upload_protocol = cmsis-dap -debug_tool = cmsis-dap - -build_flags = - -D PICO_SCAN_I2C_FOR_WIRE - -I src \ No newline at end of file diff --git a/rp2040_badge_primary/src/main.cpp b/rp2040_badge_primary/src/main.cpp deleted file mode 100644 index a10c2c4..0000000 --- a/rp2040_badge_primary/src/main.cpp +++ /dev/null @@ -1,830 +0,0 @@ -#include -#include - -#define BUTTON_A 9 -#define BUTTON_B 10 -#define BUTTON_UP 11 -#define BUTTON_DOWN 12 -#define BUTTON_LEFT 13 -#define BUTTON_RIGHT 14 - -#define FRONT_LED_1 23 -#define FRONT_LED_2 24 -#define FRONT_LED_3 25 -#define FRONT_LED_4 26 - -#define FLASHLIGHT_LED 15 - -#define SAO_GPIO0 0 -#define SAO_GPIO1 1 - -#define LED_MATRIX_SDA 2 -#define LED_MATRIX_SCL 3 -#define LED_MATRIX_ADDR 0x74 - -#define MATRIX_COLS 9 -#define MATRIX_ROWS 9 - -#define IDLE_TIMEOUT 5000 - -const char* RANDOM_MESSAGES[] = { - "Hack the planet!", - "0x00 0x01 0x10", - "Securityfest 2026!", - "RP2040 rocks!", - "Buy the dip!", - "Nice badge!", - "#!.!/#!.!", - "0xDEAD 0xBEEF", - "Pwned!", - "1337 h4x0r", - "Kernel panic!", - "sudo make me", - "CTF{D3bug}", - "0-day here", - "Badgelife!" -}; -const int NUM_MESSAGES = sizeof(RANDOM_MESSAGES) / sizeof(RANDOM_MESSAGES[0]); - -uint8_t matrixBuffer[MATRIX_ROWS][MATRIX_COLS]; -unsigned long lastActivity = 0; -int currentMenuItem = 0; -enum { MODE_MENU, MODE_TETRIS, MODE_SNAKE, MODE_BRICK, MODE_PONG, MODE_TVBGONE, MODE_IDLE } currentMode = MODE_MENU; -bool inSubmenu = false; - -void ledMatrixBegin() { - Wire.setSDA(LED_MATRIX_SDA); - Wire.setSCL(LED_MATRIX_SCL); - Wire.begin(); - delay(10); - Wire.beginTransmission(LED_MATRIX_ADDR); - Wire.write(0x00); - Wire.write(0x01); - Wire.endTransmission(); -} - -void ledMatrixClear() { - memset(matrixBuffer, 0, sizeof(matrixBuffer)); - for (int page = 0; page < 2; page++) { - Wire.beginTransmission(LED_MATRIX_ADDR); - Wire.write(0x00); - Wire.write(page); - Wire.endTransmission(); - Wire.requestFrom(LED_MATRIX_ADDR, MATRIX_COLS); - for (int i = 0; i < MATRIX_COLS; i++) { - Wire.read(); - } - for (int c = 0; c < MATRIX_COLS; c++) { - Wire.beginTransmission(LED_MATRIX_ADDR); - Wire.write(0x01 + c); - Wire.write(0x00); - Wire.endTransmission(); - } - } -} - -void ledMatrixSetPixel(int x, int y, uint8_t brightness) { - if (x >= 0 && x < MATRIX_COLS && y >= 0 && y < MATRIX_ROWS) { - matrixBuffer[y][x] = brightness; - Wire.beginTransmission(LED_MATRIX_ADDR); - Wire.write(0x01 + x); - Wire.write(brightness); - Wire.endTransmission(); - } -} - -void ledMatrixDrawChar(int x, int y, char c, uint8_t brightness) { - const uint8_t font[16][5] = { - {0x00,0x00,0x00,0x00,0x00}, - {0x00,0x00,0x5F,0x00,0x00}, - {0x00,0x07,0x00,0x07,0x00}, - {0x14,0x7F,0x14,0x7F,0x14}, - {0x24,0x2A,0x7F,0x2A,0x12}, - {0x46,0x26,0x10,0x26,0x46}, - {0x08,0x3E,0x28,0x3E,0x08}, - {0x00,0x00,0x07,0x00,0x00}, - {0x3E,0x3E,0x3E,0x3E,0x3E}, - {0x00,0x07,0x07,0x07,0x00}, - {0x1C,0x1C,0x1C,0x1C,0x1C}, - {0x1C,0x1C,0x1C,0x10,0x00}, - {0x00,0x04,0x3E,0x04,0x00}, - {0x08,0x1C,0x3E,0x1C,0x08}, - {0x1C,0x3E,0x3E,0x3E,0x08}, - {0x1C,0x2A,0x2A,0x2A,0x08} - }; - int idx = 0; - if (c >= 'A' && c <= 'Z') idx = c - 'A' + 10; - else if (c >= '0' && c <= '9') idx = c - '0'; - else if (c == '!') idx = 1; - else if (c == '.') idx = 15; - else if (c == '(') idx = 13; - else if (c == ')') idx = 13; - else if (c == '{') idx = 0; - else if (c == '}') idx = 0; - else return; - for (int col = 0; col < 5; col++) { - uint8_t colData = font[idx][col]; - for (int row = 0; row < 8; row++) { - if (colData & (1 << row)) { - ledMatrixSetPixel(x + col, y + row, brightness); - } - } - } -} - -void drawText(const char* text, int x, int y, uint8_t brightness) { - int cursorX = x; - while (*text) { - ledMatrixDrawChar(cursorX, y, *text, brightness); - cursorX += 6; - if (cursorX > MATRIX_COLS) break; - text++; - } -} - -void drawTextCentered(const char* text, int y, uint8_t brightness) { - int len = 0; - const char* p = text; - while (*p) { len++; p++; } - int x = (MATRIX_COLS - len * 6) / 2; - if (x < 0) x = 0; - drawText(text, x, y, brightness); -} - -void setupButtons() { - pinMode(BUTTON_A, INPUT_PULLUP); - pinMode(BUTTON_B, INPUT_PULLUP); - pinMode(BUTTON_UP, INPUT_PULLUP); - pinMode(BUTTON_DOWN, INPUT_PULLUP); - pinMode(BUTTON_LEFT, INPUT_PULLUP); - pinMode(BUTTON_RIGHT, INPUT_PULLUP); -} - -void setupFrontLEDs() { - pinMode(FRONT_LED_1, OUTPUT); - pinMode(FRONT_LED_2, OUTPUT); - pinMode(FRONT_LED_3, OUTPUT); - pinMode(FRONT_LED_4, OUTPUT); -} - -void setupFlashlight() { - pinMode(FLASHLIGHT_LED, OUTPUT); - digitalWrite(FLASHLIGHT_LED, LOW); -} - -void setupSAO() { - pinMode(SAO_GPIO0, OUTPUT); - pinMode(SAO_GPIO1, OUTPUT); - digitalWrite(SAO_GPIO0, LOW); - digitalWrite(SAO_GPIO1, LOW); -} - -bool buttonPressed(int btn) { - return digitalRead(btn) == LOW; -} - -bool anyButtonPressed() { - return buttonPressed(BUTTON_A) || buttonPressed(BUTTON_B) || - buttonPressed(BUTTON_UP) || buttonPressed(BUTTON_DOWN) || - buttonPressed(BUTTON_LEFT) || buttonPressed(BUTTON_RIGHT); -} - -void waitForButtonRelease() { - while (anyButtonPressed()) delay(10); - delay(50); -} - -void recordActivity() { - lastActivity = millis(); -} - -void knightRiderSweep(unsigned long interval) { - static int pos = 0; - static bool dir = true; - static unsigned long lastUpdate = 0; - static bool leds[4] = {0, 0, 0, 0}; - - if (millis() - lastUpdate > interval) { - lastUpdate = millis(); - memset(leds, 0, sizeof(leds)); - if (dir) { - pos++; - if (pos >= 4) { pos = 3; dir = false; } - } else { - pos--; - if (pos < 0) { pos = 1; dir = true; } - } - if (pos >= 0 && pos < 4) leds[pos] = true; - } - - digitalWrite(FRONT_LED_1, leds[0]); - digitalWrite(FRONT_LED_2, leds[1]); - digitalWrite(FRONT_LED_3, leds[2]); - digitalWrite(FRONT_LED_4, leds[3]); -} - -unsigned long saoToggleTime = 0; -bool saoGPIO0State = false; -unsigned long saoPWMTime = 0; -bool saoPWMDirection = true; -float saoPWMValue = 0; - -void updateSAO(unsigned long now) { - if (now - saoToggleTime >= 1000) { - saoToggleTime = now; - saoGPIO0State = !saoGPIO0State; - digitalWrite(SAO_GPIO0, saoGPIO0State); - } - - if (now - saoPWMTime >= 30) { - saoPWMTime = now; - if (saoPWMDirection) { - saoPWMValue += 1.67f; - if (saoPWMValue >= 100) { saoPWMValue = 100; saoPWMDirection = false; } - } else { - saoPWMValue -= 1.67f; - if (saoPWMValue <= 0) { saoPWMValue = 0; saoPWMDirection = true; } - } - analogWrite(SAO_GPIO1, (int)(saoPWMValue * 255.0f / 100.0f)); - } -} - -const int TVBGONE_CODES[][2] = { - {9000, 4500}, - {4500, 4500} -}; -int tvbgoneStep = 0; -unsigned long tvbgoneLastToggle = 0; -bool tvbgoneOn = false; - -void updateTVBGone(unsigned long now) { - if (currentMode != MODE_TVBGONE) return; - if (now - tvbgoneLastToggle > 20) { - tvbgoneLastToggle = now; - tvbgoneOn = !tvbgoneOn; - digitalWrite(FLASHLIGHT_LED, tvbgoneOn ? HIGH : LOW); - } -} - -void showMenu() { - ledMatrixClear(); - const char* items[] = {"Tetris", "Snake", "Brick", "Pong", "TV-B-Gone"}; - for (int i = 0; i < 5; i++) { - if (i == currentMenuItem) { - ledMatrixSetPixel(0, 1 + i * 2, 255); - ledMatrixSetPixel(1, 1 + i * 2, 150); - } - ledMatrixSetPixel(2, 1 + i * 2, (i == currentMenuItem) ? 255 : 80); - ledMatrixSetPixel(3, 1 + i * 2, 80); - } - char buf[16]; - buf[0] = 'A' + currentMenuItem; - buf[1] = '\0'; - drawText(buf, 3, 1 + currentMenuItem * 2, 255); -} - -void handleMenuInput() { - if (buttonPressed(BUTTON_UP)) { - recordActivity(); - if (currentMenuItem > 0) currentMenuItem--; - waitForButtonRelease(); - showMenu(); - } else if (buttonPressed(BUTTON_DOWN)) { - recordActivity(); - if (currentMenuItem < 4) currentMenuItem++; - waitForButtonRelease(); - showMenu(); - } else if (buttonPressed(BUTTON_A)) { - recordActivity(); - waitForButtonRelease(); - switch (currentMenuItem) { - case 0: currentMode = MODE_TETRIS; break; - case 1: currentMode = MODE_SNAKE; break; - case 2: currentMode = MODE_BRICK; break; - case 3: currentMode = MODE_PONG; break; - case 4: currentMode = MODE_TVBGONE; break; - } - ledMatrixClear(); - } -} - -class TetrisGame { -public: - static const int W = 7; - static const int H = 15; - static const int BLOCKS[7][4]; - uint8_t field[H][W]; - int pieceX, pieceY, pieceType, pieceRot; - unsigned long lastFall; - int score; - bool gameOver; - - TetrisGame() { reset(); } - - void reset() { - memset(field, 0, sizeof(field)); - score = 0; - gameOver = false; - newPiece(); - } - - void newPiece() { - pieceType = random(7); - pieceX = W / 2 - 2; - pieceY = 0; - pieceRot = 0; - } - - bool canPlace(int px, int py, int type, int rot) { - for (int i = 0; i < 4; i++) { - for (int j = 0; j < 4; j++) { - if (getBlock(type, rot, i, j) && (px + j < 0 || px + j >= W || py + i >= H || field[py + i][px + j])) { - return false; - } - } - } - return true; - } - - bool getBlock(int type, int rot, int x, int y) { - static const uint8_t pieces[7][4][4] = { - {{0,1,0,0},{0,1,0,0},{0,1,0,0},{0,1,0,0}}, - {{0,1,1,0},{0,1,0,0},{0,1,1,0},{0,0,0,0}}, - {{0,1,1,0},{0,0,1,0},{0,1,1,0},{0,0,0,0}}, - {{0,0,1,0},{0,0,1,0},{0,1,1,0},{0,0,0,0}}, - {{0,1,0,0},{0,1,0,0},{0,1,1,0},{0,0,0,0}}, - {{0,1,0,0},{0,1,0,0},{0,1,0,0},{0,1,0,0}}, - {{0,0,0,0},{0,1,1,0},{0,1,1,0},{0,0,0,0}} - }; - int r = rot % 4; - if (type == 0) { - const uint8_t I[4][4] = {{1,1,1,1},{0,0,0,0},{0,0,0,0},{0,0,0,0}}; - if (r == 0 && y < 4 && x < 4) return I[y][x]; - } - if (y < 4 && x < 4) return pieces[type][r][y * 4 + x]; - return 0; - } - - void lockPiece() { - for (int i = 0; i < 4; i++) { - for (int j = 0; j < 4; j++) { - if (getBlock(pieceType, pieceRot, j, i)) { - int fx = pieceX + j; - int fy = pieceY + i; - if (fy >= 0 && fy < H && fx >= 0 && fx < W) { - field[fy][fx] = (pieceType + 1) * 30; - } - } - } - } - clearLines(); - newPiece(); - } - - void clearLines() { - for (int y = H - 1; y >= 0; y--) { - bool full = true; - for (int x = 0; x < W; x++) { - if (!field[y][x]) { full = false; break; } - } - if (full) { - score += 100; - for (int yy = y; yy > 0; yy--) { - for (int x = 0; x < W; x++) { - field[yy][x] = field[yy - 1][x]; - } - } - for (int x = 0; x < W; x++) field[0][x] = 0; - } - } - } - - void render() { - ledMatrixClear(); - for (int y = 0; y < H && y < MATRIX_ROWS; y++) { - for (int x = 0; x < W && x < MATRIX_COLS; x++) { - if (field[y][x]) { - ledMatrixSetPixel(x, y, field[y][x]); - } - } - } - for (int i = 0; i < 4; i++) { - for (int j = 0; j < 4; j++) { - if (getBlock(pieceType, pieceRot, j, i)) { - int px = pieceX + j; - int py = pieceY + i; - if (py >= 0 && py < MATRIX_ROWS && px >= 0 && px < MATRIX_COLS) { - ledMatrixSetPixel(px, py, 255); - } - } - } - } - } - - void update() { - if (gameOver) return; - unsigned long now = millis(); - if (now - lastFall > 500) { - lastFall = now; - if (canPlace(pieceX, pieceY + 1, pieceType, pieceRot)) { - pieceY++; - } else { - lockPiece(); - if (!canPlace(pieceX, pieceY, pieceType, pieceRot)) { - gameOver = true; - } - } - } - } - - void input() { - if (buttonPressed(BUTTON_LEFT)) { - recordActivity(); - if (canPlace(pieceX - 1, pieceY, pieceType, pieceRot)) pieceX--; - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_RIGHT)) { - recordActivity(); - if (canPlace(pieceX + 1, pieceY, pieceType, pieceRot)) pieceX++; - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_UP)) { - recordActivity(); - if (canPlace(pieceX, pieceY, pieceType, (pieceRot + 1) % 4)) pieceRot = (pieceRot + 1) % 4; - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_DOWN)) { - recordActivity(); - if (canPlace(pieceX, pieceY + 1, pieceType, pieceRot)) pieceY++; - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_B)) { - recordActivity(); - currentMode = MODE_MENU; - waitForButtonRelease(); - } - } -}; - -class SnakeGame { -public: - static const int MAX_LEN = 30; - int snakeX[MAX_LEN], snakeY[MAX_LEN]; - int snakeLen; - int dirX, dirY; - int foodX, foodY; - unsigned long lastMove; - int score; - bool gameOver; - - SnakeGame() { reset(); } - - void reset() { - snakeLen = 3; - for (int i = 0; i < snakeLen; i++) { - snakeX[i] = 4; - snakeY[i] = 4 - i; - } - dirX = 0; - dirY = 1; - score = 0; - gameOver = false; - spawnFood(); - } - - void spawnFood() { - foodX = random(MATRIX_COLS); - foodY = random(MATRIX_ROWS); - for (int i = 0; i < snakeLen; i++) { - if (snakeX[i] == foodX && snakeY[i] == foodY) { - spawnFood(); - return; - } - } - } - - void render() { - ledMatrixClear(); - ledMatrixSetPixel(foodX, foodY, 255); - for (int i = 0; i < snakeLen; i++) { - ledMatrixSetPixel(snakeX[i], snakeY[i], i == 0 ? 255 : 150); - } - } - - void update() { - if (gameOver) return; - unsigned long now = millis(); - if (now - lastMove > 150) { - lastMove = now; - int headX = snakeX[0] + dirX; - int headY = snakeY[0] + dirY; - if (headX < 0 || headX >= MATRIX_COLS || headY < 0 || headY >= MATRIX_ROWS) { - gameOver = true; - return; - } - for (int i = 1; i < snakeLen; i++) { - if (snakeX[i] == headX && snakeY[i] == headY) { - gameOver = true; - return; - } - } - for (int i = snakeLen - 1; i > 0; i--) { - snakeX[i] = snakeX[i - 1]; - snakeY[i] = snakeY[i - 1]; - } - snakeX[0] = headX; - snakeY[0] = headY; - if (headX == foodX && headY == foodY) { - if (snakeLen < MAX_LEN) snakeLen++; - score += 10; - spawnFood(); - } - } - } - - void input() { - if (buttonPressed(BUTTON_LEFT)) { - recordActivity(); - if (dirX != 1) { dirX = -1; dirY = 0; } - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_RIGHT)) { - recordActivity(); - if (dirX != -1) { dirX = 1; dirY = 0; } - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_UP)) { - recordActivity(); - if (dirY != 1) { dirX = 0; dirY = -1; } - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_DOWN)) { - recordActivity(); - if (dirY != -1) { dirX = 0; dirY = 1; } - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_B)) { - recordActivity(); - currentMode = MODE_MENU; - waitForButtonRelease(); - } - } -}; - -class BrickGame { -public: - static const int ROWS = 4; - static const int COLS = 5; - int bricks[ROWS][COLS]; - int ballX, ballY, ballVX, ballVY; - int paddleX; - unsigned long lastUpdate; - int score; - bool gameOver; - - BrickGame() { reset(); } - - void reset() { - memset(bricks, 0, sizeof(bricks)); - for (int r = 0; r < ROWS; r++) { - for (int c = 0; c < COLS; c++) { - bricks[r][c] = (r + 1) * 40; - } - } - ballX = 4; - ballY = 4; - ballVX = 1; - ballVY = -1; - paddleX = 4; - score = 0; - gameOver = false; - } - - void render() { - ledMatrixClear(); - for (int r = 0; r < ROWS; r++) { - for (int c = 0; c < COLS; c++) { - if (bricks[r][c]) { - ledMatrixSetPixel(c, r + 1, bricks[r][c]); - } - } - } - ledMatrixSetPixel(ballX, ballY, 255); - ledMatrixSetPixel(paddleX, 8, 255); - if (paddleX > 0) ledMatrixSetPixel(paddleX - 1, 8, 100); - if (paddleX < 8) ledMatrixSetPixel(paddleX + 1, 8, 100); - } - - void update() { - if (gameOver) return; - unsigned long now = millis(); - if (now - lastUpdate > 200) { - lastUpdate = now; - ballX += ballVX; - ballY += ballVY; - if (ballX < 0 || ballX >= MATRIX_COLS) { - ballVX = -ballVX; - ballX += ballVX; - } - if (ballY < 0) { - ballVY = -ballVY; - ballY += ballVY; - } - if (ballY == 8) { - if (abs(ballX - paddleX) <= 1) { - ballVY = -ballVY; - score += 10; - } else { - gameOver = true; - } - } - int bx = ballX; - int by = ballY; - if (by >= 1 && by <= ROWS && bx >= 0 && bx < COLS) { - if (bricks[by - 1][bx]) { - bricks[by - 1][bx] = 0; - ballVY = -ballVY; - score += 10; - } - } - } - } - - void input() { - if (buttonPressed(BUTTON_LEFT)) { - recordActivity(); - if (paddleX > 0) paddleX--; - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_RIGHT)) { - recordActivity(); - if (paddleX < 8) paddleX++; - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_B)) { - recordActivity(); - currentMode = MODE_MENU; - waitForButtonRelease(); - } - } -}; - -class PongGame { -public: - int leftY, rightY; - int ballX, ballY, ballVX, ballVY; - int leftScore, rightScore; - unsigned long lastUpdate; - bool gameOver; - - PongGame() { reset(); } - - void reset() { - leftY = 4; - rightY = 4; - ballX = 4; - ballY = 4; - ballVX = 1; - ballVY = random(2) ? 1 : -1; - leftScore = 0; - rightScore = 0; - gameOver = false; - } - - void render() { - ledMatrixClear(); - ledMatrixSetPixel(0, leftY, 255); - ledMatrixSetPixel(8, rightY, 255); - ledMatrixSetPixel(ballX, ballY, 255); - } - - void update() { - if (gameOver) return; - unsigned long now = millis(); - if (now - lastUpdate > 200) { - lastUpdate = now; - ballX += ballVX; - ballY += ballVY; - if (ballY < 0 || ballY >= MATRIX_ROWS) { - ballVY = -ballVY; - } - if (ballX == 1 && abs(ballY - leftY) <= 1) { - ballVX = -ballVX; - leftScore++; - } - if (ballX == 7 && abs(ballY - rightY) <= 1) { - ballVX = -ballVX; - rightScore++; - } - if (ballX < 0 || ballX > 8) { - gameOver = true; - } - } - } - - void input() { - if (buttonPressed(BUTTON_LEFT)) { - recordActivity(); - if (leftY > 0) leftY--; - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_RIGHT)) { - recordActivity(); - if (rightY > 0) rightY--; - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_UP)) { - recordActivity(); - rightY = leftY; - if (rightY > 0) rightY--; - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_DOWN)) { - recordActivity(); - rightY = leftY; - if (rightY < 8) rightY++; - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_A)) { - recordActivity(); - if (leftY < 8) leftY++; - waitForButtonRelease(); - } else if (buttonPressed(BUTTON_B)) { - recordActivity(); - currentMode = MODE_MENU; - waitForButtonRelease(); - } - } -}; - -TetrisGame tetrisGame; -SnakeGame snakeGame; -BrickGame brickGame; -PongGame pongGame; - -void showIdleScreen() { - ledMatrixClear(); - int msgIdx = random(NUM_MESSAGES); - drawTextCentered(RANDOM_MESSAGES[msgIdx], 4, 150); - currentMode = MODE_IDLE; - lastActivity = millis(); -} - -void setup() { - delay(1000); - setupButtons(); - setupFrontLEDs(); - setupFlashlight(); - setupSAO(); - ledMatrixBegin(); - ledMatrixClear(); - showMenu(); - lastActivity = millis(); -} - -void loop() { - unsigned long now = millis(); - - knightRiderSweep(80); - updateSAO(now); - updateTVBGone(now); - - if (anyButtonPressed()) { - if (currentMode == MODE_IDLE) { - currentMode = MODE_MENU; - showMenu(); - } - lastActivity = millis(); - } - - if (now - lastActivity > IDLE_TIMEOUT) { - if (currentMode != MODE_IDLE && currentMode != MODE_TVBGONE) { - showIdleScreen(); - } - } - - switch (currentMode) { - case MODE_MENU: - handleMenuInput(); - break; - case MODE_TETRIS: - tetrisGame.input(); - tetrisGame.update(); - tetrisGame.render(); - break; - case MODE_SNAKE: - snakeGame.input(); - snakeGame.update(); - snakeGame.render(); - break; - case MODE_BRICK: - brickGame.input(); - brickGame.update(); - brickGame.render(); - break; - case MODE_PONG: - pongGame.input(); - pongGame.update(); - pongGame.render(); - break; - case MODE_TVBGONE: - if (buttonPressed(BUTTON_B)) { - recordActivity(); - currentMode = MODE_MENU; - digitalWrite(FLASHLIGHT_LED, LOW); - waitForButtonRelease(); - showMenu(); - } - break; - case MODE_IDLE: - break; - } - - delay(10); -} diff --git a/welcome_demo/.pio/build/project.checksum b/welcome_demo/.pio/build/project.checksum index 4088248..df9cf3b 100644 --- a/welcome_demo/.pio/build/project.checksum +++ b/welcome_demo/.pio/build/project.checksum @@ -1 +1 @@ -7bad751cc212e33e418ee5528532e97d795b8d82 \ No newline at end of file +11b43f3b2b511fe7454baf368b17d1fda87cd079 \ No newline at end of file diff --git a/welcome_demo/.pio/build/rp2040_usb/.sconsign314.dblite b/welcome_demo/.pio/build/rp2040_usb/.sconsign314.dblite index 0eb81d1c5f31c6616984ef04e868cc5d9159d339..28c52480d98dd13c6cc01845000642e2f8dfdfcb 100644 GIT binary patch delta 13103 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 Bl-K|O delta 13643 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 Y``28f0mdz~e&OstfR(1}xTpL70>el;Z2$lO diff --git a/welcome_demo/.pio/build/rp2040_usb/firmware.elf b/welcome_demo/.pio/build/rp2040_usb/firmware.elf index 21e41fcbb7b61c88b1f0d4e9f25b4b56ae5d2ff4..6ec7e17aaf51a88377546e0542fe8bec087776a5 100755 GIT binary patch delta 267527 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%0D?sIb_F*-p)~G+#E8 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 z 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

Ed=SMrS_a_Vh|hHt;CJ`=q^w{lw%kKg@3 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 delta 153600 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 diff --git a/welcome_demo/.pio/build/rp2040_usb/firmware.uf2 b/welcome_demo/.pio/build/rp2040_usb/firmware.uf2 index a36ae5795518bee559dce2e61e6d0fd89df35a9a..c28239c88ee600a9fd6966a39c77930395b95286 100644 GIT binary patch delta 80961 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�o5uKm>7G|%k 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

r@i;vJB~gQ-j?E(2hZ9) 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 D+9R%) delta 28605 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⁣jy*ZJ@;S%?h5K?GH!Fsog}lf!?2p2a~n{ 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 a7)xokfz!|lMo#m3iIJO*xzhVyP5fW({kZ1< diff --git a/welcome_demo/.pio/build/rp2040_usb/lib0b0/libAdafruit BusIO.a b/welcome_demo/.pio/build/rp2040_usb/lib0b0/libAdafruit BusIO.a index d022554a42d93feef50b7a3d72529942e214736c..6c4fd2c1a7921ff31416bdbeaeeda7a3bde6df06 100644 GIT binary patch delta 67 zcmZoz!`QHfae@q+iG_igq2)%UDqbja^CI3PnDAyUtxp^VRe diff --git a/welcome_demo/.pio/build/rp2040_usb/lib11a/libEEPROM.a b/welcome_demo/.pio/build/rp2040_usb/lib11a/libEEPROM.a index ef8c9dc75e00df54cfb0418cce46827c68442f6e..652d506519e34d53fe2b9d67ef86b9ebe6f0c578 100644 GIT binary patch delta 29 fcmbOxH%)GW44a9CftiuPMx_u&D06cS<1AhPa`^{{ delta 29 fcmbOxH%)GW44aXmsgbGaMx_u&D06cS<1AhPa={0P diff --git a/welcome_demo/.pio/build/rp2040_usb/lib153/libSPI.a b/welcome_demo/.pio/build/rp2040_usb/lib153/libSPI.a index 465407566e9a005c9c1947d3e4a6fca8f65bd445..5241129fe55d9c8f7992f5237fe4a2e17af9d80b 100644 GIT binary patch delta 31 icmdlpjd9O3#tAZPCKd)}hL#(ZCb2@9n|HA`xdH&5A_;l` delta 31 icmdlpjd9O3#tAZPMuw(FrluQ}Cb2@9n|HA`xdH&4Gzn?| diff --git a/welcome_demo/.pio/build/rp2040_usb/lib5a0/libAdafruit GFX Library.a b/welcome_demo/.pio/build/rp2040_usb/lib5a0/libAdafruit GFX Library.a index 21f27a4075358012e72da5d3d6f72b05c2042456..b5e29c1b76f4a9916d35fa650254b64e53612e99 100644 GIT binary patch delta 80 zcmex0ljYY;mI*R!CKd)}Mg|*|B4EtT4Ki#UU|~bc$qh1Mn-?wFBL`Im=2sow;f5r? K-H(fL4HE$H?VrLKrEJQ9xH(14@n^Q_HXxz0HU^@8>_w9v`hd)%d}hwRwzrKdH`v! zRsJdxNJeW7JDwxxXD%!sQEEzM;NDbqp71<=S2Yz_ zSfuugI9=*Uq*&dd2_vX?RzMtrFR4xG{J`Fxd|jO%@{p7d#T(V~9D!tAFmoa5sy7x3 z6*RZdIIMcfg~}0ihsZAalvKsr)$LdZxOPt+5Do%^dhS00?N*8ZYB-aiV53e>dxDV~ z(^B9~i}ZOA(-j^i2{P}-K1O`+P}e!(kxR3DC7YB91n_#40>wF`*VD_alRU{fnnLS? z6Ue!TULAQ-dc_1=CP@(Uab=f?l2VUgnD#taFq`OUq7YcQ z094N*i!G7d#LFZ;S{yovj{dbSk+Q>}RZAskSTQiI<;$d4v)=Wy11DCHbOlD?+a?G~<)l0d8CX09V+;Q0^8kDl^qjfK)#>&Qh8*??X0 z@e~%7-FC>zh4!7KV1WScViGP5lg>O2(9G>h*9HrGAON2gX#>+Z;L^lxS){!>iX(tM z@-**Lv=`Mf6bLqJf>sm~6z2DCaF3?JV5=rvw^KaMR-oI}M5=7SXfV6YJG4t)H2CTw zXPONaJEa4ru$s zD=tEL@YWe^^W%Q;azOo6+crUz3OOv;XEXNIo4V&GMN+gf;hl8dFGNX(zLYnPO&PLp zyguaV#NmBY+_D+iK3i|&^OC)vAJM1rUPK1arfHm`ivfX^oa?(q$8_XH{RSV?c3X<1 z<#qabK6Pyfw&|*1ADcjBU+DRK&f5%GAJ^~jg=4$87y_`RPbYjk@Hd@Fef>C*nygP! z^RV;}-6w8zdkV_9B|+HU2wlJZ2z2yM31T6({4Ir8c~|%Ai3cp+3;*h39NTc>E41}Z z(D1FJlCy%*EP_j#5#key<+UK&sC_~%c6YI{jRTHL7i85dMn7MWHlLJhj4N3pYGjs2 z2ws`|O@^q9liKA#HXHqOnShg8_Heu3m=fjyeGw+6JDmf7>;7W4ICMqK8eTUCO5QND z`HXg4x(O@aHnAMZ6W`HQ~ylg}y_`oXUpzVUo#w^#ZexWx`Re#Y0yYtfRB zYQf60azKXIN={0G$h4_^K#7W$U-d=UMhjgx?=18=oddIGS~K%G;Nk?t-?qip455b& znQN6+H6I{UGmeJkYb}pH-rrG3b=THd-b>sSS9xbUY+^2qXUt>{xuzbWnWw8 z#e4QI4wJhq@ki#w4_Wg>6G26{FAP~{tl275AGhlH^kog5*<*$Hd`4@%Rv-TXc2WY} z-XU>LIz%s6v-m%$1BuJlKc0fbH7m)dahST>bIbaj_k5U+2W;wJct3|-90IwJ$V{8g SCqXzqDNX!=hoJ&1rT-6h#G@Dh delta 3210 zcmZWre@s$PI<}pbjp;evsO(JTg_(K_ulj49`(O_KIeRYobUJZ z{hXUh6{b>!v5A3MGfQWc+J_3pZK9v0Fk`o7DDm>T3kpNxp@vTa?7MAJT3-C;rc#}) zTS5)N_~h-?3)tF878${KJk>mw1H&JXVEnD$9uN-1X6m`|+FMO4I54zA%Y{&dvizBc zkoH>TuOg1PUf|$<P`8pMa>Zl2MW&&2H=y#Lo_Wo#z=jUX`zAlQNC~ZjVx+IEVBKzcf0@lcHlN zj6OJloPXrh(Wj+T)Uaie1koH<7m6G$k6*BCD%moI*2zK!=D>duGMf?1aoQRt3n;W^xdaU>0W53z3UOBpvfdHZvEbw? zlCHqWyW}*xr3dlqS(I_bMKQMh4WaA ziPl*g$Rz>clzcRW-Ky=dnG5Z^NWmfw+`}SV9wwc64Dc$qJ6#(r@PQzFR-_F~V*oAO zwk6stqZk4>BhRuqwO}}=WhfA8);O&^h*OyDJE6Ur27|4dpE~w6TY+vz^Gk)d!Rj{e z)GmwL;HgWDX%2P+GquolTtp(@1)?k?>ncgXgw_j zN0&HeRcHJt4nleG=2>m)lYaAZK>bzQF@d)VIs6Fw>J44w>G9E}l>u+3>wY6g6a4ZKOh9GR~(+PVW*qP3hzHuBc zP1eV*9?t$l_lX<()P*u`OAwAXLO1RRDB?~$LdX7;AbQ1?zr__JPtyyySb zxg1B}pOX>`Pu@T zY=pjl4nii7&4yo3q!dc;l}3Zpm|rj6WQglQ!-t076{gjprYG1hOD#ZTotNMnDtD3 z-Kzy5v&RfGeYPRmYxc1pVB0n57K`M0X%V|<&SC$gHYBf@{|E=k>t>3nvF)YXbKCr# k%{+~VL;VYzXWKy$$c1EP+H|G_c4AT*{{y$70z0Mu59__7JOBUy diff --git a/welcome_demo/.pio/build/rp2040_usb/src/main.cpp.o b/welcome_demo/.pio/build/rp2040_usb/src/main.cpp.o index a0a4a3324bd6cedad83810dee4c6b53d4a9c28a8..3427e00a8fca37f224894b4ccea52fcd0e55d56c 100644 GIT binary patch literal 20272 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 IHr4Nc0gsy}b^rhX diff --git a/welcome_demo/.pio/build/rp2040_usb/src/serial_games.cpp.o b/welcome_demo/.pio/build/rp2040_usb/src/serial_games.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..47d6dd99733c9754d57ad2f6557c61eaab3dd372 GIT binary patch literal 21904 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 literal 0 HcmV?d00001 diff --git a/welcome_demo/flash.sh b/welcome_demo/flash.sh new file mode 100755 index 0000000..b338842 --- /dev/null +++ b/welcome_demo/flash.sh @@ -0,0 +1,5 @@ +#!/bin/bash +# Written by Carl Vargklint 2026-05-19 +# Install platformio CLI then run the script from this folder. +pio run -t upload + diff --git a/welcome_demo/src/badge_config.h b/welcome_demo/src/badge_config.h new file mode 100644 index 0000000..9a76ae8 --- /dev/null +++ b/welcome_demo/src/badge_config.h @@ -0,0 +1,74 @@ +// ================================================================ +// badge_config.h — Secfest 2026 Badge +// ================================================================ +// Shared badge configuration: EEPROM layout, types, and globals +// accessed by both main.cpp and serial_games.cpp. +// +// EEPROM map (32 bytes): +// Byte 0 : matrix/global brightness (1-8) +// Byte 1 : flashlight brightness (1-8) +// Bytes 2-25 : IR codes for 6 buttons × 4 bytes each +// Layout per button: [protocol][addr_lo][addr_hi][command] +// ================================================================ +#pragma once +#include + +// ── EEPROM ────────────────────────────────────────────────────── +#define EEPROM_CFG_SIZE 32 +#define EEPROM_ADDR_BRIGHT 0 +#define EEPROM_ADDR_FLASH 1 +#define EEPROM_ADDR_IR_BASE 2 // 4 bytes × 6 buttons = 24 bytes + +// ── IR protocol IDs ───────────────────────────────────────────── +#define IR_PROTO_NEC 0 +#define IR_PROTO_SAMSUNG 1 +#define IR_PROTO_SONY 2 +#define IR_PROTO_RC5 3 + +// ── IR code record (4 bytes on EEPROM) ────────────────────────── +struct IrCode { + uint8_t protocol; // IR_PROTO_* + uint8_t addr_lo; // address low byte + uint8_t addr_hi; // address high byte + uint8_t command; // command byte +}; + +static inline uint16_t irCodeAddr(const IrCode& c) { + return (uint16_t)c.addr_lo | ((uint16_t)c.addr_hi << 8); +} + +// ── Button indices (must match BtnIdx in main.cpp) ─────────────── +// BI_A=0, BI_B=1, BI_UP=2, BI_DOWN=3, BI_LEFT=4, BI_RIGHT=5 +#define IR_BTN_COUNT 6 + +// ── Full badge configuration ───────────────────────────────────── +struct BadgeConfig { + uint8_t brightness; // matrix + front LED depth, 1-8 + uint8_t flashBright; // flashlight brightness, 1-8 + IrCode ir[IR_BTN_COUNT];// per-button IR codes +}; + +// Default IR codes — Samsung TV (NEC-compatible) +// Power=0x02, Mute=0x0F, VolumeUp=0x07, VolDown=0x0B, ChUp=0x12, ChDn=0x10 +static const BadgeConfig BADGE_CONFIG_DEFAULT = { + 8, // brightness + 8, // flashBright + { + { IR_PROTO_NEC, 0x07, 0x07, 0x07 }, // A → Volume Up + { IR_PROTO_NEC, 0x07, 0x07, 0x0B }, // B → Volume Down + { IR_PROTO_NEC, 0x07, 0x07, 0x12 }, // Up → Channel Up + { IR_PROTO_NEC, 0x07, 0x07, 0x10 }, // Down → Channel Down + { IR_PROTO_NEC, 0x07, 0x07, 0x0F }, // Left → Mute + { IR_PROTO_NEC, 0x07, 0x07, 0x02 }, // Right → Power + } +}; + +// ── Global config — defined in main.cpp ────────────────────────── +extern BadgeConfig g_cfg; + +// ── Persistence helpers — defined in main.cpp ──────────────────── +void configLoad(); +void configSave(); +void configSaveBrightness(); +void configSaveFlash(); +void configSaveIr(uint8_t btnIdx); diff --git a/welcome_demo/src/main.cpp b/welcome_demo/src/main.cpp index 1ef6f56..68defa4 100644 --- a/welcome_demo/src/main.cpp +++ b/welcome_demo/src/main.cpp @@ -15,27 +15,75 @@ #include #include #include "font4x7.h" +#include "badge_config.h" +#include "serial_games.h" + +static SerialGames serialGames; // ============================================================ pin map ======= #define MATRIX_BRIGHTNESS 20 -// ============================================================ brightness ===== -// Global brightness scale: 1 (dim) … 8 (full). -// Stored in EEPROM byte 0; loaded at boot, saved whenever changed. -#define EEPROM_SIZE 4 -#define EEPROM_ADDR_BRIGHT 0 -static uint8_t g_brightness = 8; // 1..8 +// ============================================================ config / EEPROM = +// g_cfg is the live badge configuration. Load on boot, save whenever changed. +// Helpers declared here, defined below (badge_config.h has extern declarations). +BadgeConfig g_cfg = BADGE_CONFIG_DEFAULT; -static void loadBrightness() { - EEPROM.begin(EEPROM_SIZE); - uint8_t v = EEPROM.read(EEPROM_ADDR_BRIGHT); - g_brightness = (v >= 1 && v <= 8) ? v : 8; +// Convenience shorthand — used throughout the file +#define g_brightness g_cfg.brightness +#define g_flashBright g_cfg.flashBright + +void configLoad() { + EEPROM.begin(EEPROM_CFG_SIZE); + uint8_t bright = EEPROM.read(EEPROM_ADDR_BRIGHT); + g_cfg.brightness = (bright >= 1 && bright <= 8) ? bright : 8; + uint8_t flash = EEPROM.read(EEPROM_ADDR_FLASH); + g_cfg.flashBright = (flash >= 1 && flash <= 8) ? flash : 8; + for (uint8_t i = 0; i < IR_BTN_COUNT; i++) { + uint16_t base = EEPROM_ADDR_IR_BASE + i * 4; + uint8_t proto = EEPROM.read(base); + if (proto > IR_PROTO_RC5) { + // uninitialised — use default + g_cfg.ir[i] = BADGE_CONFIG_DEFAULT.ir[i]; + } else { + g_cfg.ir[i].protocol = proto; + g_cfg.ir[i].addr_lo = EEPROM.read(base + 1); + g_cfg.ir[i].addr_hi = EEPROM.read(base + 2); + g_cfg.ir[i].command = EEPROM.read(base + 3); + } + } } -static void saveBrightness(uint8_t v) { - g_brightness = v; - EEPROM.write(EEPROM_ADDR_BRIGHT, v); +void configSave() { + EEPROM.write(EEPROM_ADDR_BRIGHT, g_cfg.brightness); + EEPROM.write(EEPROM_ADDR_FLASH, g_cfg.flashBright); + for (uint8_t i = 0; i < IR_BTN_COUNT; i++) { + uint16_t base = EEPROM_ADDR_IR_BASE + i * 4; + EEPROM.write(base, g_cfg.ir[i].protocol); + EEPROM.write(base + 1, g_cfg.ir[i].addr_lo); + EEPROM.write(base + 2, g_cfg.ir[i].addr_hi); + EEPROM.write(base + 3, g_cfg.ir[i].command); + } + EEPROM.commit(); +} + +void configSaveBrightness() { + EEPROM.write(EEPROM_ADDR_BRIGHT, g_cfg.brightness); + EEPROM.commit(); +} + +void configSaveFlash() { + EEPROM.write(EEPROM_ADDR_FLASH, g_cfg.flashBright); + EEPROM.commit(); +} + +void configSaveIr(uint8_t idx) { + if (idx >= IR_BTN_COUNT) return; + uint16_t base = EEPROM_ADDR_IR_BASE + idx * 4; + EEPROM.write(base, g_cfg.ir[idx].protocol); + EEPROM.write(base + 1, g_cfg.ir[idx].addr_lo); + EEPROM.write(base + 2, g_cfg.ir[idx].addr_hi); + EEPROM.write(base + 3, g_cfg.ir[idx].command); EEPROM.commit(); } @@ -49,7 +97,7 @@ static void saveBrightness(uint8_t v) { #define SAO_GP1 0 #define SAO_GP2 1 -#define LED_FLASHLIGHT 15 +#define LED_FLASHLIGHT 14 #define LED_FRONT_1 20 #define LED_FRONT_2 21 #define LED_FRONT_3 22 @@ -59,9 +107,9 @@ static void saveBrightness(uint8_t v) { #define LED_MATRIX_SCL 5 #define IS31_ADDR 0x74 -// Front LEDs are active-low (anode to 3V3, cathode to GPIO via series R). -const int FRONT_LED_ON = LOW; -const int FRONT_LED_OFF = HIGH; +// Front LEDs are active-high (anode to GPIO, cathode to GND). +const int FRONT_LED_ON = HIGH; +const int FRONT_LED_OFF = LOW; const int FRONT_LEDS[] = { LED_FRONT_1, LED_FRONT_2, LED_FRONT_3, LED_FRONT_4 }; const int NUM_FRONT_LEDS = 4; @@ -665,7 +713,7 @@ static void settingsStep() { settingsCtx.brightness--; changed = true; } - if (changed) saveBrightness(settingsCtx.brightness); + if (changed) { g_brightness = settingsCtx.brightness; configSaveBrightness(); } // — Draw brightness bar —————————————————————————————— // Rows 3-5: filled bar, 1 column per level (1..8 → cols 0..7). @@ -685,9 +733,174 @@ static void settingsStep() { fbPush(); } +// ============================================================ IR sender ====== +// +// Software IR modulation on LED_FLASHLIGHT (GPIO15 → MOSFET → IR/white LEDs). +// Implements NEC (32-bit) and Samsung (which is NEC-compatible but with a +// repeated address byte). Sony SIRC-12 is also supported. +// +// Blocking during transmission (~67 ms for NEC), but called only on user input. + +#define IR_PIN LED_FLASHLIGHT +#define IR_FREQ_NEC 38000 +#define IR_FREQ_SONY 40000 + +static void irOn(uint16_t us) { + // 33 % duty is standard for IR LEDs — avoids overheating + analogWrite(IR_PIN, 333); + delayMicroseconds(us); +} +static void irOff(uint16_t us) { + analogWrite(IR_PIN, 0); + delayMicroseconds(us); +} + +static void irSendNEC(uint16_t address, uint8_t command, bool samsung = false) { + analogWriteFreq(IR_FREQ_NEC); + analogWriteRange(1000); + // Header: 9 ms burst + 4.5 ms space + irOn(9000); + irOff(samsung ? 4500 : 4500); // Samsung header is identical to NEC here + // 16-bit address (8-bit addr + ~addr for NEC; 8-bit addr repeated for Samsung) + uint8_t a1 = (uint8_t)(address & 0xFF); + uint8_t a2 = samsung ? a1 : (uint8_t)(~a1 & 0xFF); + uint8_t c1 = command; + uint8_t c2 = (uint8_t)(~c1 & 0xFF); + for (int i = 0; i < 8; i++) { irOn(562); irOff((a1 >> i) & 1 ? 1687 : 562); } + for (int i = 0; i < 8; i++) { irOn(562); irOff((a2 >> i) & 1 ? 1687 : 562); } + for (int i = 0; i < 8; i++) { irOn(562); irOff((c1 >> i) & 1 ? 1687 : 562); } + for (int i = 0; i < 8; i++) { irOn(562); irOff((c2 >> i) & 1 ? 1687 : 562); } + irOn(562); + analogWrite(IR_PIN, 0); +} + +static void irSendSony(uint16_t address, uint8_t command) { + analogWriteFreq(IR_FREQ_SONY); + analogWriteRange(1000); + irOn(2400); irOff(600); + for (int i = 6; i >= 0; i--) { irOn((command >> i) & 1 ? 1200 : 600); irOff(600); } + for (int i = 4; i >= 0; i--) { irOn((address >> i) & 1 ? 1200 : 600); irOff(600); } + analogWrite(IR_PIN, 0); +} + +static void irSendCode(const IrCode& c) { + uint16_t addr = irCodeAddr(c); + switch (c.protocol) { + case IR_PROTO_NEC: irSendNEC(addr, c.command, false); break; + case IR_PROTO_SAMSUNG: irSendNEC(addr, c.command, true); break; + case IR_PROTO_SONY: irSendSony(addr, c.command); break; + case IR_PROTO_RC5: irSendNEC(addr, c.command, false); break; // fallback + } +} + +// ============================================================ flashlight ===== +// +// All four front LEDs continue their Knight Rider animation in the background. +// LED_FLASHLIGHT (GPIO15) is PWM'd at variable duty for the flashlight. +// Level 8 → duty 1000 (constant on, maximum output) +// Level 1 → duty 125 (dim — still on, no strobe at minimum) +// Up/Down → adjust brightness level. B → exit to menu. + +struct FlashState { + bool exitRequested; +}; +static FlashState flashCtx; + +static void flashApply() { + int duty = (int)((float)g_flashBright / 8.0f * 1000.0f); + analogWriteFreq(1000); + analogWriteRange(1000); + analogWrite(IR_PIN, duty); +} + +static void flashReset() { + flashCtx.exitRequested = false; + flashApply(); +} + +static void flashStep() { + if (input.pressed[BI_B]) { + flashCtx.exitRequested = true; + analogWrite(IR_PIN, 0); // off when leaving + return; + } + bool changed = false; + if (input.pressed[BI_UP] && g_flashBright < 8) { g_flashBright++; changed = true; } + if (input.pressed[BI_DOWN] && g_flashBright > 1) { g_flashBright--; changed = true; } + if (changed) { configSaveFlash(); flashApply(); } + + // Draw brightness level bar on matrix (rows 3-5, same style as Settings) + fbClear(); + uint8_t bar = 180; + for (int x = 0; x < g_flashBright; x++) { + fbSet(x, 3, bar); + fbSet(x, 4, bar); + fbSet(x, 5, bar); + } + int edge = g_flashBright - 1; + fbSet(edge, 1, 255); + fbSet(edge, 7, 255); + // Torch icon — two pixels above bar + fbSet(3, 0, 200); fbSet(4, 0, 255); fbSet(5, 0, 200); + fbPush(); +} + +// ============================================================ IR remote ====== +// +// Each directional/A/B button sends the configured IR code. +// A+B held simultaneously exits. The matrix shows a remote icon. +// The front LEDs continue Knight Rider in the background. + +static unsigned long irLastSend = 0; +static bool irExitRequested = false; + +static void irRemoteReset() { + irExitRequested = false; + irLastSend = 0; +} + +static void irRemoteDrawIcon() { + fbClear(); + // Stylised remote outline on 9×9 matrix + for (int y = 1; y <= 7; y++) { fbSet(2, y, 80); fbSet(6, y, 80); } + for (int x = 2; x <= 6; x++) { fbSet(x, 1, 80); fbSet(x, 7, 80); } + fbSet(4, 2, 200); // top button + fbSet(3, 4, 120); fbSet(5, 4, 120); // side buttons + fbSet(4, 5, 120); // bottom button + fbPush(); +} + +static void irRemoteStep() { + // Exit on A+B held together + if (input.down[BI_A] && input.down[BI_B]) { + irExitRequested = true; + analogWrite(IR_PIN, 0); + return; + } + + unsigned long now = millis(); + // 200 ms gap between sends to avoid flooding + if (now - irLastSend < 200) { irRemoteDrawIcon(); return; } + + static const int BTN_MAP[IR_BTN_COUNT] = { + BI_A, BI_B, BI_UP, BI_DOWN, BI_LEFT, BI_RIGHT + }; + for (int i = 0; i < IR_BTN_COUNT; i++) { + if (input.pressed[BTN_MAP[i]]) { + // Flash all front LEDs briefly to indicate send + for (int p : FRONT_LEDS) analogWrite(p, 1000); + irSendCode(g_cfg.ir[i]); + for (int p : FRONT_LEDS) analogWrite(p, 0); + irLastSend = now; + break; + } + } + irRemoteDrawIcon(); +} + // ============================================================ menu ========= -const char* MENU_ITEMS[] = { "SNAKE", "SIMON", "WELCOME", "SETTINGS" }; +const char* MENU_ITEMS[] = { "SNAKE", "SIMON", "WELCOME", "SETTINGS", "FLASHLIGHT", "IR REMOTE" }; const int MENU_LEN = sizeof(MENU_ITEMS) / sizeof(MENU_ITEMS[0]); static int menuIdx = 0; @@ -725,6 +938,8 @@ enum AppState { ST_SNAKE, ST_SIMON, ST_SETTINGS, + ST_FLASHLIGHT, + ST_IR_REMOTE, }; static AppState appState = ST_BOOT_SWEEP; @@ -742,6 +957,8 @@ static void enterState(AppState s) { case ST_SNAKE: snakeReset(); break; case ST_SIMON: simonReset(); break; case ST_SETTINGS: settingsReset(); break; + case ST_FLASHLIGHT: flashReset(); break; + case ST_IR_REMOTE: irRemoteReset(); break; default: break; } } @@ -776,29 +993,42 @@ static void saoUpdate() { // Passive background animation: a bright spot sweeps back and forth across // the four front LEDs using hardware PWM. // -// Front LEDs are active-low (anode → 3V3, cathode → GPIO): -// analogWrite duty 0 = pin always LOW = LED fully ON -// analogWrite duty 1000 = pin always HIGH = LED fully OFF +// Front LEDs are active-HIGH (anode → GPIO, cathode → GND via resistor): +// analogWrite duty 0 = pin always LOW = LED fully OFF +// analogWrite duty 1000 = pin always HIGH = LED fully ON +// +// g_brightness controls sweep depth: +// 8 → all LEDs constantly fully on (no animation) +// 1 → full Knight Rider sweep (background goes dark, peak is fully on) +// 2-7 → intermediate — background LEDs stay at a raised floor level // // The sweep is skipped while ST_SNAKE or ST_SIMON own the front LEDs. static void frontKnightRiderUpdate() { - if (appState == ST_SNAKE || appState == ST_SIMON) return; + if (appState == ST_SNAKE || appState == ST_SIMON || appState == ST_IR_REMOTE) return; + + if (g_brightness >= 8) { + // Brightness at maximum → all LEDs constantly on, no animation + for (int i = 0; i < NUM_FRONT_LEDS; i++) analogWrite(FRONT_LEDS[i], 1000); + return; + } // Triangle wave, period 800 ms → position sweeps 0.0 → 3.0 → 0.0 const float period = 800.0f; - float t = fmodf((float)millis(), period) / period; // 0 .. 1 - float tri = (t < 0.5f) ? (t * 2.0f) : (2.0f - t * 2.0f); // 0 .. 1 .. 0 - float pos = tri * 3.0f; // 0.0 .. 3.0 + float t = fmodf((float)millis(), period) / period; + float tri = (t < 0.5f) ? (t * 2.0f) : (2.0f - t * 2.0f); + float pos = tri * 3.0f; + + // animDepth: 1 = full sweep at level 1, 0 = no sweep at level 8 + float animDepth = (float)(8 - g_brightness) / 7.0f; // 1 at level 1, ~0 at level 7 + // floor = minimum duty at the dark end of the sweep + float floor_val = 1.0f - animDepth; for (int i = 0; i < NUM_FRONT_LEDS; i++) { - float dist = fabsf(pos - (float)i); - // Soft glow: full brightness within 0.5 px, fades out to 1.5 px - float brightness = (dist < 1.5f) ? (1.0f - dist / 1.5f) : 0.0f; - // Scale by global brightness setting - brightness *= (float)g_brightness / 8.0f; - // Invert for active-low: duty 0 = fully on, 1000 = fully off - int duty = 1000 - (int)(brightness * 1000.0f); + float dist = fabsf(pos - (float)i); + float peak = (dist < 1.5f) ? (1.0f - dist / 1.5f) : 0.0f; + float bright = floor_val + (1.0f - floor_val) * peak; // never below floor_val + int duty = (int)(bright * 1000.0f); analogWrite(FRONT_LEDS[i], duty); } } @@ -834,8 +1064,11 @@ void setup() { // Seed RNG from a floating ADC pin if available; otherwise use micros(). randomSeed(micros() ^ analogRead(A0)); - // Load persisted brightness from flash-backed EEPROM - loadBrightness(); + // Load persisted config (brightness, flashlight brightness, IR codes) + configLoad(); + + // Serial terminal games (Mastermind, Hangman, Minesweeper) + serialGames.begin(); // SAO GPIO PWM (must come after randomSeed / analogRead so ADC init is done) saoSetup(); @@ -846,6 +1079,7 @@ void setup() { // ============================================================ loop ========= void loop() { + serialGames.update(); // USB-CDC terminal games (non-blocking) saoUpdate(); // SAO GP1 sin-wave PWM, GP2 constant 10 % frontKnightRiderUpdate(); // front LED Knight Rider sweep inputUpdate(); @@ -897,6 +1131,8 @@ void loop() { case 1: enterState(ST_SIMON); break; case 2: enterState(ST_WELCOME_SCROLL); break; case 3: enterState(ST_SETTINGS); break; + case 4: enterState(ST_FLASHLIGHT); break; + case 5: enterState(ST_IR_REMOTE); break; } } break; @@ -919,5 +1155,17 @@ void loop() { if (settingsCtx.exitRequested) enterState(ST_MENU); break; } + + case ST_FLASHLIGHT: { + flashStep(); + if (flashCtx.exitRequested) enterState(ST_MENU); + break; + } + + case ST_IR_REMOTE: { + irRemoteStep(); + if (irExitRequested) enterState(ST_MENU); + break; + } } } diff --git a/welcome_demo/src/serial_games.cpp b/welcome_demo/src/serial_games.cpp new file mode 100644 index 0000000..286d1ee --- /dev/null +++ b/welcome_demo/src/serial_games.cpp @@ -0,0 +1,770 @@ +// ================================================================ +// serial_games.cpp — Secfest 2026 Badge +// ================================================================ +#include "serial_games.h" + +// ── VT100 / ANSI helpers ───────────────────────────────────────── +#define CLS "\033[2J\033[H" // clear screen + home cursor +#define RST "\033[0m" // reset all attributes +#define BLD "\033[1m" // bold +#define DIM "\033[2m" // dim +#define RED "\033[91m" // bright red +#define GRN "\033[92m" // bright green +#define YLW "\033[93m" // bright yellow +#define BLU "\033[94m" // bright blue +#define MAG "\033[95m" // bright magenta +#define CYN "\033[96m" // bright cyan +#define GRY "\033[90m" // dark grey + +// ── Hangman word list (security / hacking themed) ─────────────── +const char* const SerialGames::_hmWords[] = { + "firewall", "exploit", "malware", "phishing", "rootkit", + "payload", "sandbox", "fuzzing", "honeypot", "cipher", + "botnet", "spoofing", "backdoor", "shellcode", "keylogger", + "pivoting", "injection", "sniffing", "ransomware", "escalation", + "obfuscation", "enumeration", "stealthy", "exfiltrate", "wireshark", + "shodan", "zerotrust", "darknet", "privilege", "pentest", +}; +const uint8_t SerialGames::_hmWordCount = + sizeof(SerialGames::_hmWords) / sizeof(SerialGames::_hmWords[0]); + +// Gallows rows [stage 0..6][row 0..6] — stage = number of wrong guesses +static const char* const GALLOWS[7][7] = { + {" +---+", " | |", " |", " |", " |", " |", "========="}, + {" +---+", " | |", " O |", " |", " |", " |", "========="}, + {" +---+", " | |", " O |", " | |", " |", " |", "========="}, + {" +---+", " | |", " O |", " /| |", " |", " |", "========="}, + {" +---+", " | |", " O |", " /|\\ |", " |", " |", "========="}, + {" +---+", " | |", " O |", " /|\\ |", " / |", " |", "========="}, + {" +---+", " | |", " O |", " /|\\ |", " / \\ |", " |", "========="}, +}; + +// ================================================================ +// Public API +// ================================================================ + +void SerialGames::begin() { + _st = St::IDLE; + _prevConn = false; + _clearLine(); +} + +void SerialGames::update() { + bool conn = (bool)Serial; + + // ── detect connect / disconnect ────────────────────────── + if (conn && !_prevConn) { + delay(200); // let the terminal finish its handshake + _drawMenu(); + _st = St::MENU; + _lineMode = false; + } + if (!conn) { + _prevConn = false; + _st = St::IDLE; + return; + } + _prevConn = conn; + if (_st == St::IDLE) return; + + // ── drain available bytes ──────────────────────────────── + while (Serial.available()) { + char c = (char)Serial.read(); + + // Swallow VT100 escape sequences (arrow keys etc.) + if (c == '\033') { + unsigned long t = millis(); + while (Serial.available() && (millis() - t) < 25) Serial.read(); + continue; + } + + if (_lineMode) { + _feedChar(c); + } else { + if (c >= 'A' && c <= 'Z') c += 32; // normalise to lower-case + _charDispatch(c); + } + } +} + +// ================================================================ +// Input helpers +// ================================================================ + +void SerialGames::_clearLine() { + memset(_line, 0, sizeof(_line)); + _lineLen = 0; +} + +// Called for every byte in line-mode. Echoes characters, handles +// backspace, and dispatches to the relevant game on Enter. +void SerialGames::_feedChar(char c) { + if (c == '\r' || c == '\n') { + // Ignore the bare \n of a \r\n pair + if (c == '\n' && _lineLen == 0) return; + + Serial.print("\r\n"); + _line[_lineLen] = '\0'; + + St prevSt = _st; + bool redraw = false; + + if (_st == St::MASTERMIND) redraw = _mmOnLine(); + else if (_st == St::MINESWEEPER) redraw = _msOnLine(); + else if (_st == St::ADVENTURE) { + _adv.feedLine(_line); + if (_adv.quitToMenu) { + _adv.quitToMenu = false; + _st = St::MENU; + _lineMode = false; + _drawMenu(); + } + } + else if (_st == St::CONFIG) { + _cfgOnLine(); + } + + _clearLine(); + + // Only redraw if still in the same state (handlers that exit to menu + // have already redrawn the menu themselves) + if (_st == prevSt && redraw) { + if (_st == St::MASTERMIND) _mmDraw(); + if (_st == St::MINESWEEPER) _msDraw(); + } + + } else if ((c == '\b' || c == 127) && _lineLen > 0) { + _lineLen--; + Serial.print("\b \b"); // erase the echoed character + + } else if (c >= 32 && _lineLen < 31) { + _line[_lineLen++] = c; + Serial.print(c); // local echo + } +} + +// Called for every byte in char-mode (Menu, Hangman). +void SerialGames::_charDispatch(char c) { + switch (_st) { + case St::MENU: + if (c == '1') _mmStart(); + else if (c == '2') _hmStart(); + else if (c == '3') _msStart(); + else if (c == '4') _advStart(); + else if (c == '5') _cfgStart(); + break; + + case St::HANGMAN: + if (c == 'q') { _drawMenu(); _st = St::MENU; } + else if (c >= 'a' && c <= 'z') _hmOnChar(c); + break; + + default: break; + } +} + +// ================================================================ +// Screen helpers +// ================================================================ + +void SerialGames::_cls() { Serial.print(CLS); } + +void SerialGames::_drawMenu() { + _cls(); + Serial.print( + BLD CYN + " ╔══════════════════════════════════════╗\r\n" + " ║ SECFEST 2026 BADGE GAMES ║\r\n" + " ╚══════════════════════════════════════╝\r\n" + RST "\r\n" + " " BLD "[1]" RST " MASTERMIND — Crack the 4-digit code\r\n" + " " BLD "[2]" RST " HANGMAN — Security vocabulary edition\r\n" + " " BLD "[3]" RST " MINESWEEPER — 8 × 8 grid, 10 mines\r\n" + " " BLD "[4]" RST " ZERO DAY — Text adventure\r\n" + " " BLD "[5]" RST " CONFIG — Badge settings & IR codes\r\n" + "\r\n" + GRY " Press 1–5 to start. Q inside any game returns here.\r\n" RST + ); +} + +// ================================================================ +// MASTERMIND +// ================================================================ + +void SerialGames::_mmStart() { + for (uint8_t i = 0; i < 4; i++) _mm.secret[i] = (uint8_t)random(1, 7); + _mm.nGuess = 0; + _mm.won = false; + _mm.over = false; + _st = St::MASTERMIND; + _lineMode = true; + _clearLine(); + _mmDraw(); +} + +void SerialGames::_mmDraw() { + _cls(); + Serial.print( + BLD YLW + " ╔══════════════════════════════════════╗\r\n" + " ║ CRACK THE CODE ║\r\n" + " ║ Guess the 4-digit code (1 – 6) ║\r\n" + " ╚══════════════════════════════════════╝\r\n" + RST "\r\n" + " # GUESS " BLD GRN "●" RST " bulls " BLD CYN "○" RST " cows\r\n" + GRY " ──────────────────────────────────────\r\n" RST + ); + + for (uint8_t i = 0; i < 10; i++) { + if (i < _mm.nGuess) { + Serial.printf(" %2u ", i + 1); + for (uint8_t j = 0; j < 4; j++) Serial.printf("%u ", _mm.guess[i][j]); + Serial.printf(" " BLD GRN "%u" RST " " BLD CYN "%u" RST "\r\n", + _mm.bulls[i], _mm.cows[i]); + } else { + Serial.print(GRY " . _ _ _ _\r\n" RST); + } + } + Serial.print("\r\n"); + + if (_mm.won) { + Serial.printf(BLD GRN " ✓ Cracked in %u guess%s! Well played.\r\n" RST, + _mm.nGuess, _mm.nGuess == 1 ? "" : "es"); + Serial.print(GRY " Type Q + Enter to return to the menu.\r\n" RST); + return; + } + if (_mm.over) { + Serial.printf(BLD RED " ✗ Out of guesses. Code was: %u %u %u %u\r\n" RST, + _mm.secret[0], _mm.secret[1], _mm.secret[2], _mm.secret[3]); + Serial.print(GRY " Type Q + Enter to return to the menu.\r\n" RST); + return; + } + + Serial.printf(" Attempts remaining: " BLD "%u" RST "\r\n\r\n", 10 - _mm.nGuess); + Serial.print(" Enter 4 digits (1-6), e.g. 1234. Q = quit: "); +} + +// Returns true if the screen needs a full redraw. +bool SerialGames::_mmOnLine() { + // Quit + if (_line[0] == 'q' || _line[0] == 'Q') { + _drawMenu(); + _st = St::MENU; + _lineMode = false; + return false; + } + + // Allow new game when already over + if (_mm.won || _mm.over) return false; + + // Collect exactly 4 digits 1-6, ignoring spaces and other noise + uint8_t digits[4], n = 0; + for (uint8_t i = 0; _line[i] && n < 4; i++) { + if (_line[i] >= '1' && _line[i] <= '6') digits[n++] = (uint8_t)(_line[i] - '0'); + } + if (n < 4) { + Serial.print(RED " ✗ Need exactly 4 digits in range 1-6 (e.g. 1234).\r\n" RST); + Serial.print(" Enter 4 digits (1-6), e.g. 1234. Q = quit: "); + return false; // bad input — don't redraw; we already printed a message + } + + uint8_t r = _mm.nGuess; + for (uint8_t i = 0; i < 4; i++) _mm.guess[r][i] = digits[i]; + + // Score: bulls (right digit + right position), cows (right digit, wrong position) + uint8_t bulls = 0, cows = 0; + uint8_t sc[7] = {}, gc[7] = {}; + for (uint8_t i = 0; i < 4; i++) { + if (_mm.secret[i] == digits[i]) { + bulls++; + } else { + sc[_mm.secret[i]]++; + gc[digits[i]]++; + } + } + for (uint8_t d = 1; d <= 6; d++) cows += min(sc[d], gc[d]); + + _mm.bulls[r] = bulls; + _mm.cows[r] = cows; + _mm.nGuess++; + + if (bulls == 4) _mm.won = true; + else if (_mm.nGuess >= 10) _mm.over = true; + + return true; // valid input processed — caller will redraw +} + +// ================================================================ +// HANGMAN +// ================================================================ + +void SerialGames::_hmStart() { + _hm.word = _hmWords[random(_hmWordCount)]; + _hm.nWrong = 0; + _hm.won = false; + _hm.over = false; + memset(_hm.guessed, 0, sizeof(_hm.guessed)); + _st = St::HANGMAN; + _lineMode = false; + _hmDraw(); +} + +void SerialGames::_hmDraw() { + _cls(); + Serial.print( + BLD MAG + " ╔══════════════════════════════════════╗\r\n" + " ║ HANGMAN — Security Edition ║\r\n" + " ╚══════════════════════════════════════╝\r\n" + RST "\r\n" + ); + + // Gallows — figure turns red at maximum wrong guesses + uint8_t stage = (_hm.nWrong > 6) ? 6 : _hm.nWrong; + for (uint8_t row = 0; row < 7; row++) { + bool isBody = (row >= 2 && row <= 5); + const char* col = (isBody && _hm.nWrong >= 6) ? RED : GRY; + Serial.printf(" %s%s" RST "\r\n", col, GALLOWS[stage][row]); + } + Serial.print("\r\n"); + + // Word — revealed letters in green, blanks in white + Serial.print(" "); + uint8_t missing = 0; + for (uint8_t i = 0; _hm.word[i]; i++) { + uint8_t idx = (uint8_t)(_hm.word[i] - 'a'); + if (_hm.guessed[idx]) { + Serial.printf(BLD GRN "%c " RST, _hm.word[i]); + } else { + Serial.print(BLD "_ " RST); + missing++; + } + } + Serial.print("\r\n\r\n"); + + // Wrong-guess list + Serial.print(" Wrong: "); + bool any = false; + for (uint8_t i = 0; i < 26; i++) { + if (!_hm.guessed[i]) continue; + bool inWord = false; + for (uint8_t j = 0; _hm.word[j]; j++) + if (_hm.word[j] == (char)('a' + i)) { inWord = true; break; } + if (!inWord) { Serial.printf(RED "%c " RST, 'a' + i); any = true; } + } + if (!any) Serial.print(GRY "none" RST); + Serial.printf(" " GRY "(%u / 6 wrong)" RST "\r\n\r\n", _hm.nWrong); + + // Win / lose check + if (missing == 0 && !_hm.over) { + _hm.won = true; + _hm.over = true; + } + if (_hm.nWrong >= 6 && !_hm.won) { + _hm.over = true; + } + + if (_hm.won) { + Serial.print(BLD GRN " ✓ You survived! Well played, hacker.\r\n" RST); + Serial.print(GRY " Press any key to return to the menu.\r\n" RST); + return; + } + if (_hm.over) { + Serial.printf(BLD RED " ✗ Caught! The word was: " YLW "%s\r\n" RST, _hm.word); + Serial.print(GRY " Press any key to return to the menu.\r\n" RST); + return; + } + + Serial.print(" Guess a letter (Q = quit): "); +} + +void SerialGames::_hmOnChar(char c) { + // After game over, any key returns to menu + if (_hm.over) { _drawMenu(); _st = St::MENU; return; } + + uint8_t idx = (uint8_t)(c - 'a'); + if (_hm.guessed[idx]) return; // already guessed — ignore silently + _hm.guessed[idx] = true; + + // Count miss + bool hit = false; + for (uint8_t i = 0; _hm.word[i]; i++) + if (_hm.word[i] == c) { hit = true; break; } + if (!hit) _hm.nWrong++; + + _hmDraw(); +} + +// ================================================================ +// MINESWEEPER +// ================================================================ + +void SerialGames::_msStart() { + memset(&_ms, 0, sizeof(_ms)); + _st = St::MINESWEEPER; + _lineMode = true; + _clearLine(); + _msDraw(); +} + +void SerialGames::_msSeed(uint8_t safeR, uint8_t safeC) { + _ms.seeded = true; + uint8_t placed = 0; + while (placed < MSN) { + uint8_t r = (uint8_t)random(MSR); + uint8_t c = (uint8_t)random(MSC); + if (_ms.mine[r][c]) continue; + // Keep a 1-cell safety radius around the first click + if (abs((int)r - safeR) <= 1 && abs((int)c - safeC) <= 1) continue; + _ms.mine[r][c] = true; + placed++; + } + // Pre-compute neighbour mine counts + for (uint8_t r = 0; r < MSR; r++) + for (uint8_t c = 0; c < MSC; c++) { + uint8_t n = 0; + for (int8_t dr = -1; dr <= 1; dr++) + for (int8_t dc = -1; dc <= 1; dc++) { + int nr = r + dr, nc = c + dc; + if (nr >= 0 && nr < MSR && nc >= 0 && nc < MSC && _ms.mine[nr][nc]) n++; + } + _ms.count[r][c] = n; + } +} + +// Recursive flood-fill reveal — safe on an 8×8 grid +void SerialGames::_msReveal(int r, int c) { + if (r < 0 || r >= MSR || c < 0 || c >= MSC) return; + if (_ms.revealed[r][c] || _ms.flagged[r][c]) return; + if (_ms.mine[r][c]) { _ms.over = true; return; } + _ms.revealed[r][c] = true; + _ms.nRevealed++; + if (_ms.count[r][c] == 0) { + for (int8_t dr = -1; dr <= 1; dr++) + for (int8_t dc = -1; dc <= 1; dc++) + if (dr || dc) _msReveal(r + dr, c + dc); + } +} + +void SerialGames::_msDraw() { + _cls(); + + uint8_t flags = 0; + for (uint8_t r = 0; r < MSR; r++) + for (uint8_t c = 0; c < MSC; c++) + if (_ms.flagged[r][c]) flags++; + + Serial.print( + BLD GRN + " ╔══════════════════════════════════════╗\r\n" + " ║ MINESWEEPER — 8×8, 10 mines ║\r\n" + " ╚══════════════════════════════════════╝\r\n" + RST "\r\n" + ); + + // Column header + top border + Serial.print(" 1 2 3 4 5 6 7 8\r\n"); + Serial.print(" +-----------------+\r\n"); + + for (uint8_t r = 0; r < MSR; r++) { + Serial.printf(" %u | ", r + 1); + for (uint8_t c = 0; c < MSC; c++) { + if (_ms.flagged[r][c]) { + Serial.print(YLW "F" RST " "); + } else if (!_ms.revealed[r][c]) { + // On game over, show all mine locations + if (_ms.over && _ms.mine[r][c]) + Serial.print(RED "*" RST " "); + else + Serial.print(GRY "?" RST " "); + } else if (_ms.count[r][c] == 0) { + Serial.print(" "); // clear / empty cell + } else { + // Colour-code by danger: 1-2 cyan, 3-4 yellow, 5+ red + const char* nc = + (_ms.count[r][c] <= 2) ? CYN : + (_ms.count[r][c] <= 4) ? YLW : RED; + Serial.printf("%s%u" RST " ", nc, _ms.count[r][c]); + } + } + Serial.print("|\r\n"); + } + + Serial.print(" +-----------------+\r\n\r\n"); + + Serial.printf(" " BLD "Mines left: %d" RST + GRY " (F=flag ?=hidden blank=safe)" RST "\r\n\r\n", + (int)MSN - (int)flags); + + if (_ms.won) { + Serial.print(BLD GRN " ✓ Cleared! Every mine avoided.\r\n" RST); + Serial.print(GRY " Type Q + Enter to return to the menu.\r\n" RST); + return; + } + if (_ms.over) { + Serial.print(BLD RED " ✗ BOOM! You hit a mine.\r\n" RST); + Serial.print(GRY " Type Q + Enter to return to the menu.\r\n" RST); + return; + } + + Serial.print( + " " GRY "r ROW COL" RST " = reveal " + GRY "f ROW COL" RST " = flag/unflag " + GRY "Q" RST " = quit\r\n" + " > " + ); +} + +// Returns true if the screen needs a full redraw. +bool SerialGames::_msOnLine() { + // Quit (works mid-game and on win/lose screen) + if (_line[0] == 'q' || _line[0] == 'Q') { + _drawMenu(); + _st = St::MENU; + _lineMode = false; + return false; + } + + if (_ms.won || _ms.over) return false; + + char cmd = _line[0]; + if (cmd != 'r' && cmd != 'R' && cmd != 'f' && cmd != 'F') { + Serial.print(RED " ✗ Unknown command. Use: r ROW COL or f ROW COL\r\n" RST " > "); + return false; + } + + // Parse two integers following the command letter + const char* p = _line + 1; + while (*p == ' ') p++; + int row = 0; + while (*p >= '0' && *p <= '9') row = row * 10 + (*p++ - '0'); + while (*p == ' ') p++; + int col = 0; + while (*p >= '0' && *p <= '9') col = col * 10 + (*p++ - '0'); + row--; col--; // convert 1-indexed user input to 0-indexed + + if (row < 0 || row >= MSR || col < 0 || col >= MSC) { + Serial.print(RED " ✗ Row and column must each be 1–8.\r\n" RST " > "); + return false; + } + + if (cmd == 'f' || cmd == 'F') { + if (!_ms.revealed[row][col]) + _ms.flagged[row][col] = !_ms.flagged[row][col]; + } else { + if (!_ms.seeded) _msSeed((uint8_t)row, (uint8_t)col); + _msReveal(row, col); + } + + if (_ms.nRevealed == MSR * MSC - MSN) _ms.won = true; + return true; +} + +// ================================================================ +// TEXT ADVENTURE +// ================================================================ +void SerialGames::_advStart() { + _st = St::ADVENTURE; + _lineMode = true; + _clearLine(); + _adv.begin(); +} + +// ================================================================ +// CONFIG — badge settings over serial CLI +// ================================================================ + +static const char* _protoName(uint8_t p) { + switch (p) { + case IR_PROTO_NEC: return "NEC"; + case IR_PROTO_SAMSUNG: return "SAMSUNG"; + case IR_PROTO_SONY: return "SONY"; + case IR_PROTO_RC5: return "RC5"; + } + return "?"; +} + +static const char* _btnName(uint8_t i) { + switch (i) { + case 0: return "A"; + case 1: return "B"; + case 2: return "UP"; + case 3: return "DOWN"; + case 4: return "LEFT"; + case 5: return "RIGHT"; + } + return "?"; +} + +uint8_t SerialGames::_cfgParseBtn(const char* s) { + if (strcmp(s,"a")==0) return 0; + if (strcmp(s,"b")==0) return 1; + if (strcmp(s,"up")==0) return 2; + if (strcmp(s,"down")==0) return 3; + if (strcmp(s,"left")==0) return 4; + if (strcmp(s,"right")==0) return 5; + return 0xFF; +} + +uint8_t SerialGames::_cfgParseProto(const char* s) { + if (strcmp(s,"nec")==0) return IR_PROTO_NEC; + if (strcmp(s,"samsung")==0) return IR_PROTO_SAMSUNG; + if (strcmp(s,"sony")==0) return IR_PROTO_SONY; + if (strcmp(s,"rc5")==0) return IR_PROTO_RC5; + return 0xFF; +} + +void SerialGames::_cfgStart() { + _st = St::CONFIG; + _lineMode = true; + _clearLine(); + _cfgDraw(); +} + +void SerialGames::_cfgDraw() { + _cls(); + Serial.print( + BLD CYN + " ╔══════════════════════════════════════════════╗\r\n" + " ║ BADGE CONFIG ║\r\n" + " ╚══════════════════════════════════════════════╝\r\n" + RST "\r\n" + GRY + " Commands (case-insensitive):\r\n" + " " RST BLD "show" RST GRY " — print current settings\r\n" + " " RST BLD "bright matrix <1-8>" RST GRY " — set matrix / LED animation depth\r\n" + " " RST BLD "bright flash <1-8>" RST GRY " — set flashlight brightness\r\n" + " " RST BLD "ir " RST GRY "\r\n" + " btn = A B UP DOWN LEFT RIGHT\r\n" + " proto = NEC SAMSUNG SONY RC5\r\n" + " addr = 0x… (16-bit hex)\r\n" + " cmd = 0x… (8-bit hex)\r\n" + " " RST BLD "default" RST GRY " — restore factory defaults\r\n" + " " RST BLD "q / back" RST GRY " — return to main menu\r\n" + RST "\r\n" + " > " + ); +} + +void SerialGames::_cfgShowConfig() { + Serial.print("\r\n"); + Serial.printf(" Matrix brightness : " BLD "%d" RST "/8\r\n", g_cfg.brightness); + Serial.printf(" Flash brightness : " BLD "%d" RST "/8\r\n", g_cfg.flashBright); + Serial.print("\r\n"); + Serial.print(" " BLD "Button Protocol Address Command\r\n" RST); + Serial.print(GRY " ────────────────────────────────────\r\n" RST); + for (uint8_t i = 0; i < IR_BTN_COUNT; i++) { + const IrCode& c = g_cfg.ir[i]; + Serial.printf(" %-6s %-8s 0x%04X 0x%02X\r\n", + _btnName(i), _protoName(c.protocol), + (unsigned)(irCodeAddr(c)), (unsigned)c.command); + } + Serial.print("\r\n > "); +} + +void SerialGames::_cfgOnLine() { + // Lower-case + char buf[64]; + uint8_t len = 0; + while (_line[len] && len < 63) { buf[len] = _line[len]; len++; } + buf[len] = '\0'; + for (uint8_t i = 0; i < len; i++) + if (buf[i] >= 'A' && buf[i] <= 'Z') buf[i] += 32; + + // Tokenise (up to 5 tokens) + char* toks[5] = {nullptr,nullptr,nullptr,nullptr,nullptr}; + uint8_t tc = 0; + char* p = buf; + while (*p && tc < 5) { + while (*p == ' ') p++; + if (!*p) break; + toks[tc++] = p; + while (*p && *p != ' ') p++; + if (*p) { *p = '\0'; p++; } + } + + if (tc == 0) { Serial.print(" > "); return; } + + // q / back + if (strcmp(toks[0],"q")==0 || strcmp(toks[0],"back")==0) { + _st = St::MENU; + _lineMode = false; + _drawMenu(); + return; + } + + // help + if (strcmp(toks[0],"help")==0) { + _cfgDraw(); + return; + } + + // show + if (strcmp(toks[0],"show")==0) { + _cfgShowConfig(); + return; + } + + // default + if (strcmp(toks[0],"default")==0) { + g_cfg = BADGE_CONFIG_DEFAULT; + configSave(); + Serial.print(" " GRN "Factory defaults restored and saved.\r\n" RST "\r\n > "); + return; + } + + // bright matrix|flash <1-8> + if (strcmp(toks[0],"bright")==0 && tc >= 3) { + uint8_t val = (uint8_t)atoi(toks[2]); + if (val < 1 || val > 8) { + Serial.print(" " RED "Value must be 1-8.\r\n" RST " > "); + return; + } + if (strcmp(toks[1],"matrix")==0) { + g_cfg.brightness = val; + configSaveBrightness(); + Serial.printf(" " GRN "Matrix brightness set to %d.\r\n" RST " > ", val); + } else if (strcmp(toks[1],"flash")==0) { + g_cfg.flashBright = val; + configSaveFlash(); + Serial.printf(" " GRN "Flashlight brightness set to %d.\r\n" RST " > ", val); + } else { + Serial.print(" " RED "Unknown target. Use 'matrix' or 'flash'.\r\n" RST " > "); + } + return; + } + + // ir + if (strcmp(toks[0],"ir")==0) { + if (tc < 5) { + Serial.print(" " RED "Usage: ir \r\n" RST " > "); + return; + } + uint8_t btn = _cfgParseBtn(toks[1]); + uint8_t proto = _cfgParseProto(toks[2]); + if (btn == 0xFF) { + Serial.print(" " RED "Unknown button. Use A B UP DOWN LEFT RIGHT.\r\n" RST " > "); + return; + } + if (proto == 0xFF) { + Serial.print(" " RED "Unknown protocol. Use NEC SAMSUNG SONY RC5.\r\n" RST " > "); + return; + } + uint32_t addr = (uint32_t)strtoul(toks[3], nullptr, 16); + uint32_t cmd = (uint32_t)strtoul(toks[4], nullptr, 16); + if (addr > 0xFFFF || cmd > 0xFF) { + Serial.print(" " RED "Address must be ≤ 0xFFFF, command ≤ 0xFF.\r\n" RST " > "); + return; + } + g_cfg.ir[btn].protocol = proto; + g_cfg.ir[btn].addr_lo = (uint8_t)(addr & 0xFF); + g_cfg.ir[btn].addr_hi = (uint8_t)(addr >> 8); + g_cfg.ir[btn].command = (uint8_t)cmd; + configSaveIr(btn); + Serial.printf(" " GRN "%s → %s addr=0x%04lX cmd=0x%02lX — saved.\r\n" RST " > ", + _btnName(btn), _protoName(proto), addr, cmd); + return; + } + + Serial.print(" " DIM "Unrecognised command. Type 'help'.\r\n" RST " > "); +} diff --git a/welcome_demo/src/serial_games.h b/welcome_demo/src/serial_games.h new file mode 100644 index 0000000..2bdf821 --- /dev/null +++ b/welcome_demo/src/serial_games.h @@ -0,0 +1,129 @@ +// ================================================================ +// serial_games.h — Secfest 2026 Badge +// ================================================================ +// Text-based games over USB-CDC serial. +// Connect with PuTTY or Minicom; the terminal must support +// VT100 / ANSI escape codes (colour + clear-screen). +// +// Usage in main.cpp: +// #include "serial_games.h" +// static SerialGames serialGames; +// // in setup(): serialGames.begin(); +// // in loop(): serialGames.update(); +// ================================================================ +#pragma once +#include +#include "badge_config.h" +#include "text_adventure.h" + +class SerialGames { +public: + void begin(); + void update(); // call every loop() iteration — fully non-blocking + +private: + // ── top-level state ───────────────────────────────────── + enum class St : uint8_t { IDLE, MENU, MASTERMIND, HANGMAN, MINESWEEPER, ADVENTURE, CONFIG }; + St _st = St::IDLE; + bool _prevConn = false; + + // ── shared line-input buffer ──────────────────────────── + // lineMode=true → buffer chars until Enter, then dispatch + // lineMode=false → dispatch each printable char immediately + bool _lineMode = false; + char _line[32] = {}; + uint8_t _lineLen = 0; + + void _clearLine(); + void _feedChar(char c); // line-mode byte handler + void _charDispatch(char c); // char-mode byte handler + + // ── screen helpers ────────────────────────────────────── + static void _cls(); + void _drawMenu(); + + // ── MASTERMIND ────────────────────────────────────────── + // Guess a secret 4-digit code (each digit 1-6) in ≤10 tries. + // Feedback: ● (bull) = right digit, right place; + // ○ (cow) = right digit, wrong place. + struct MMState { + uint8_t secret[4]; + uint8_t guess[10][4]; + uint8_t bulls[10]; + uint8_t cows[10]; + uint8_t nGuess; + bool won, over; + } _mm; + + void _mmStart(); + bool _mmOnLine(); // returns true if a full redraw is needed + void _mmDraw(); + + // ── HANGMAN ───────────────────────────────────────────── + // Guess a security-themed word before the figure is complete + // (≤6 wrong guesses). Single-keystroke input — no Enter needed. + struct HMState { + const char* word; + bool guessed[26]; + uint8_t nWrong; + bool won, over; + } _hm; + + static const char* const _hmWords[]; + static const uint8_t _hmWordCount; + + void _hmStart(); + void _hmOnChar(char c); + void _hmDraw(); + + // ── MINESWEEPER ───────────────────────────────────────── + // 8 × 8 grid, 10 mines. First reveal is always safe. + // Commands: r ROW COL (reveal) + // f ROW COL (flag / unflag) + // q (quit to menu) + static constexpr uint8_t MSR = 8; + static constexpr uint8_t MSC = 8; + static constexpr uint8_t MSN = 10; + + struct MSState { + bool mine [MSR][MSC]; + bool revealed[MSR][MSC]; + bool flagged [MSR][MSC]; + uint8_t count [MSR][MSC]; + bool seeded, won, over; + uint8_t nRevealed; + } _ms; + + void _msStart(); + void _msSeed(uint8_t safeR, uint8_t safeC); + void _msReveal(int r, int c); + bool _msOnLine(); // returns true if a full redraw is needed + void _msDraw(); + + // ── TEXT ADVENTURE ────────────────────────────────────── + // ZERO DAY — hacker infiltration story. + // Full line-based input; adventure manages its own prompts. + TextAdventure _adv; + + void _advStart(); + + // ── CONFIG ────────────────────────────────────────────── + // Line-mode CLI for editing badge_config (brightness, IR codes). + // Commands (not case-sensitive): + // show — print current config + // bright matrix <1-8> — set matrix brightness + // bright flash <1-8> — set flashlight brightness + // ir + // btn = a b up down left right + // proto = nec samsung sony rc5 + // addr = 0x… (16-bit hex) + // cmd = 0x… (8-bit hex) + // help — show commands + // q / back — return to main menu + void _cfgStart(); + void _cfgOnLine(); // called from _feedChar on Enter + void _cfgDraw(); + void _cfgShowConfig(); + static uint8_t _cfgParseBtn(const char* s); // BI_* or 0xFF + static uint8_t _cfgParseProto(const char* s); +}; diff --git a/welcome_demo/src/text_adventure.cpp b/welcome_demo/src/text_adventure.cpp new file mode 100644 index 0000000..7254597 --- /dev/null +++ b/welcome_demo/src/text_adventure.cpp @@ -0,0 +1,1181 @@ +// ================================================================ +// text_adventure.cpp — Secfest 2026 Badge +// ================================================================ +// ZERO DAY — A hacker text adventure +// ================================================================ +#include "text_adventure.h" + +// ── VT100 helpers (local copies so this file is self-contained) ── +#define TA_RST "\033[0m" +#define TA_BLD "\033[1m" +#define TA_DIM "\033[2m" +#define TA_RED "\033[91m" +#define TA_GRN "\033[92m" +#define TA_YLW "\033[93m" +#define TA_BLU "\033[94m" +#define TA_MAG "\033[95m" +#define TA_CYN "\033[96m" +#define TA_GRY "\033[90m" +#define TA_CLS "\033[2J\033[H" + +// ================================================================ +// Static print helpers +// ================================================================ +void TextAdventure::_p(const char* s) { Serial.print(s); } +void TextAdventure::_pl(const char* s) { Serial.print(s); Serial.print("\r\n"); } +void TextAdventure::_pr() { Serial.print("\r\n"); } + +// ================================================================ +// Room / item / NPC name tables +// ================================================================ +const char* TextAdventure::_roomName(Room r) { + switch (r) { + case PARKING: return "Underground Parking"; + case LOBBY: return "NovaCorp Lobby"; + case STAIRWELL: return "Emergency Stairwell"; + case BREAKROOM: return "2nd Floor Break Room"; + case OFFICE: return "Open-Plan Office"; + case SERVERCLOSET: return "Server Closet"; + case HALL3: return "3rd Floor Corridor"; + case MEETINGROOM: return "Glass-Walled Meeting Room"; + case MANAGERSOFFICE: return "Director's Office"; + case SECURITYOFFICE: return "Security Control Room"; + case DATACENTER: return "Data Centre — Cold Aisle"; + case ROOF: return "Rooftop Access"; + case BASEMENT: return "Sub-Basement Utility Corridor"; + case POWERROOM: return "Main Power Room"; + case TUNNEL: return "Service Tunnel"; + case STREET: return "Outside — You're free."; + default: return "???"; + } +} + +const char* TextAdventure::_itemName(Item it) { + switch (it) { + case BADGE: return "visitor badge"; + case LOCKPICK: return "lockpick set"; + case MULTITOOL: return "multitool"; + case STICKYNOTE: return "sticky note"; + case USB_DRIVE: return "USB drive"; + case KEYCARD: return "keycard (level 2)"; + case MASTERKEY: return "master keycard"; + case EXTINGUISHER: return "fire extinguisher"; + case THERMOS: return "thermos of coffee"; + case DATA_CHIP: return "data chip"; + case ROPE: return "coil of rope"; + case PHOTO: return "printed photograph"; + default: return "unknown item"; + } +} + +const char* TextAdventure::_itemShort(Item it) { + switch (it) { + case BADGE: return "badge"; + case LOCKPICK: return "lockpick"; + case MULTITOOL: return "multitool"; + case STICKYNOTE: return "note"; + case USB_DRIVE: return "usb"; + case KEYCARD: return "keycard"; + case MASTERKEY: return "masterkey"; + case EXTINGUISHER: return "extinguisher"; + case THERMOS: return "thermos"; + case DATA_CHIP: return "chip"; + case ROPE: return "rope"; + case PHOTO: return "photo"; + default: return "?"; + } +} + +const char* TextAdventure::_npcName(NPC n) { + switch (n) { + case BOB: return "Glenn"; + case JANET: return "Janet"; + case GHOST: return "Ghost"; + default: return "???"; + } +} + +// ================================================================ +// Initialisation +// ================================================================ +void TextAdventure::begin() { + _room = PARKING; + _score = 0; + _ended = false; + quitToMenu = false; + _active = true; + _bobTalks = 0; + _janetTalks = 0; + _ghostTalks = 0; + + memset(_inv, 0, sizeof(_inv)); + memset(_roomItem, 0, sizeof(_roomItem)); + memset(_flags, 0, sizeof(_flags)); + + // ── place starting items ────────────────────────────────── + _roomItem[PARKING][BADGE] = 1; // near the drain pipe + _roomItem[PARKING][LOCKPICK] = 1; // taped under a car + _roomItem[LOBBY][STICKYNOTE] = 1; // on the reception desk + _roomItem[BREAKROOM][THERMOS] = 1; // on the counter + _roomItem[BREAKROOM][KEYCARD] = 1; // on the fridge door (magnet) + _roomItem[OFFICE][USB_DRIVE] = 1; // in a desk drawer + _roomItem[OFFICE][PHOTO] = 1; // pinned to a corkboard + _roomItem[SERVERCLOSET][MULTITOOL] = 1; + _roomItem[SERVERCLOSET][DATA_CHIP] = 1; + _roomItem[MEETINGROOM][ROPE] = 1; // coiled by the window + _roomItem[SECURITYOFFICE][MASTERKEY] = 1; // guard's desk + _roomItem[DATACENTER][EXTINGUISHER] = 1; + + _printBanner(); + _look(); +} + +void TextAdventure::update() { + // Nothing to poll — all logic is driven by feedLine() +} + +// ================================================================ +// Banner +// ================================================================ +void TextAdventure::_printBanner() { + _p(TA_CLS); + _pl(TA_BLD TA_GRN + " ╔══════════════════════════════════════════════╗"); + _pl( + " ║ Z E R O D A Y ║"); + _pl( + " ║ A NovaCorp Infiltration ║"); + _pl( + " ╚══════════════════════════════════════════════╝" TA_RST); + _pr(); + _pl(TA_GRY " You are CIPHER — freelance operative." TA_RST); + _pl(TA_GRY " Mission: extract stolen research data from NovaCorp HQ," TA_RST); + _pl(TA_GRY " and get out before the 02:00 lockdown." TA_RST); + _pl(TA_GRY " Someone inside may need your help too." TA_RST); + _pr(); + _pl(TA_DIM " Type " TA_RST TA_BLD "help" TA_RST TA_DIM " for commands. " TA_RST + TA_BLD "q" TA_RST TA_DIM " or " TA_RST TA_BLD "quit" TA_RST TA_DIM " to return to the badge menu." TA_RST); + _pr(); +} + +// ================================================================ +// Help +// ================================================================ +void TextAdventure::_printHelp() { + _pr(); + _pl(TA_BLD TA_CYN " — COMMANDS ——————————————————————————————————" TA_RST); + _pl(" " TA_BLD "go / move" TA_RST " DIRECTION north south east west up down"); + _pl(" " TA_BLD "look" TA_RST " describe current room"); + _pl(" " TA_BLD "examine" TA_RST " THING look closely at item or feature"); + _pl(" " TA_BLD "take / get" TA_RST " ITEM pick up an item"); + _pl(" " TA_BLD "drop" TA_RST " ITEM leave item in room"); + _pl(" " TA_BLD "use" TA_RST " ITEM use item on its own"); + _pl(" " TA_BLD "use" TA_RST " ITEM on TARGET use item on something"); + _pl(" " TA_BLD "talk" TA_RST " NAME speak to an NPC"); + _pl(" " TA_BLD "inventory / inv" TA_RST " list carried items"); + _pl(" " TA_BLD "score" TA_RST " current score"); + _pl(" " TA_BLD "help" TA_RST " this screen"); + _pl(" " TA_BLD "q / quit" TA_RST " exit to badge menu"); + _pr(); +} + +// ================================================================ +// Score / Inventory +// ================================================================ +void TextAdventure::_printScore() { + _pr(); + Serial.print(" Score: " TA_BLD TA_YLW); + Serial.print(_score); + _pl(" / 100" TA_RST); + _pr(); +} + +void TextAdventure::_printInventory() { + _pr(); + _p(TA_BLD " Inventory: " TA_RST); + bool any = false; + for (uint8_t i = 0; i < ITEM_COUNT; i++) { + if (_inv[i]) { + if (any) _p(", "); + _p(_itemName((Item)i)); + any = true; + } + } + if (!any) _p(TA_DIM "empty" TA_RST); + _pr(); _pr(); +} + +// ================================================================ +// Room descriptions +// ================================================================ +void TextAdventure::_look() { + _describeRoom(); +} + +void TextAdventure::_describeRoom() { + _pr(); + _p(" " TA_BLD TA_CYN); + _p(_roomName(_room)); + _pl(TA_RST); + _pl(TA_DIM " ─────────────────────────────────────" TA_RST); + + switch (_room) { + case PARKING: + _pl(" Concrete pillars cast long shadows under stuttering fluorescent"); + _pl(" tubes. The smell of motor oil and old cigarettes. A BADGE and a"); + _pl(" LOCKPICK SET are visible near the drain pipe and a tire."); + _pl(" Exits: " TA_BLD "north" TA_RST " → lobby."); + break; + case LOBBY: + _pl(" Polished marble floors, a corporate logo gleaming on the wall."); + if (_flag(FL_GUARD_DISTRACT)) { + _pl(" " TA_BLD "Glenn" TA_RST " is hunched over his thermos, back to the monitors."); + _pl(" Exits: " TA_BLD "north" TA_RST " → stairwell, " TA_BLD "south" TA_RST " → parking."); + } else if (_flag(FL_BADGE_SHOWN)) { + _pl(" " TA_BLD "Glenn" TA_RST " gives you a nod. Your badge is on your chest."); + _pl(" Exits: " TA_BLD "north" TA_RST " → stairwell, " TA_BLD "south" TA_RST " → parking."); + } else { + _pl(" " TA_BLD "Glenn" TA_RST ", the security guard, watches you from behind his desk."); + _pl(" He looks bored, but his hand rests near an alarm button."); + _pl(" Exits: " TA_BLD "north" TA_RST " → stairwell (Glenn blocks unescorted access)."); + } + if (_roomHasItem(STICKYNOTE)) + _pl(" A " TA_BLD "STICKY NOTE" TA_RST " is visible on the reception desk."); + break; + case STAIRWELL: + _pl(" Echoing concrete shaft, emergency lighting strips lining the walls."); + _pl(" The stairwell smells of dust and urgency."); + _pl(" Exits: " TA_BLD "south" TA_RST " → lobby, " TA_BLD "up" TA_RST " → 2nd floor, " TA_BLD "down" TA_RST " → basement."); + break; + case BREAKROOM: + _pl(" A kitchenette. Half-empty coffee pot. Motivational poster."); + _pl(" NovaCorp pens litter the table."); + if (_roomHasItem(THERMOS)) _pl(" A " TA_BLD "THERMOS" TA_RST " sits on the counter."); + if (_roomHasItem(KEYCARD)) _pl(" A " TA_BLD "KEYCARD" TA_RST " is stuck to the fridge with a magnet."); + _pl(" Exits: " TA_BLD "east" TA_RST " → office, " TA_BLD "down" TA_RST " → stairwell."); + break; + case OFFICE: + _pl(" Rows of identical workstations. A few screens still glow."); + _pl(" " TA_BLD "Janet" TA_RST ", a tired-looking analyst, types without looking up."); + _pl(" A corkboard holds schedules and a " TA_BLD "PHOTO" TA_RST "."); + if (_roomHasItem(USB_DRIVE)) _pl(" A " TA_BLD "USB DRIVE" TA_RST " peeks from a desk drawer."); + if (_flag(FL_LAPTOP_OPEN)) _pl(" One laptop screen shows an unlocked session."); + _pl(" Exits: " TA_BLD "west" TA_RST " → break room, " TA_BLD "north" TA_RST " → server closet, " TA_BLD "up" TA_RST " → 3rd floor hall."); + break; + case SERVERCLOSET: + _pl(" Racks of blinking hardware, cable spaghetti, the roar of fans."); + _pl(" An access terminal glows green. Someone left a MULTITOOL here,"); + _pl(" and there's a DATA CHIP on a rack shelf."); + if (_roomHasItem(MULTITOOL)) _pl(" The " TA_BLD "MULTITOOL" TA_RST " is hooked on a cable tray."); + if (_roomHasItem(DATA_CHIP)) _pl(" The " TA_BLD "DATA CHIP" TA_RST " sits on a rack shelf."); + _pl(" Exits: " TA_BLD "south" TA_RST " → office."); + break; + case HALL3: + _pl(" A long corridor. Doors line both sides. A security camera"); + _pl(" blinks red at the far end — watching."); + if (_flag(FL_CAMERAS_OFF)) _pl(" The camera's red light is " TA_BLD TA_GRN "dark" TA_RST ". Blind spot."); + _pl(" Exits: " TA_BLD "east" TA_RST " → meeting room, " TA_BLD "west" TA_RST " → director's office, " TA_BLD "down" TA_RST " → office."); + break; + case MEETINGROOM: + _pl(" A glass-walled room visible from the corridor. Eight chairs,"); + _pl(" a whiteboard covered in diagrams you don't understand."); + _pl(" A " TA_BLD "ROPE" TA_RST " coil leans against the exterior window frame."); + if (_roomHasItem(ROPE)) _pl(" The " TA_BLD "ROPE" TA_RST " is coiled near the window."); + _pl(" Exits: " TA_BLD "west" TA_RST " → 3rd floor hall."); + break; + case MANAGERSOFFICE: + if (!_flag(FL_MANAGER_OPEN)) { + _pl(" Heavy oak door. Keycard lock. This is the director's office."); + _pl(" The lock requires a " TA_BLD "master keycard" TA_RST " or some skill with a lockpick."); + _pl(" Exits: " TA_BLD "east" TA_RST " → 3rd floor hall."); + } else { + _pl(" A corner office with a panoramic view. A laptop is open on the"); + _pl(" desk, its screen dark. A safe is ajar behind the bookshelf."); + if (_flag(FL_GHOST_FOUND)) { + _pl(" " TA_BLD TA_MAG "Ghost" TA_RST " — your contact — is here, looking haggard but alive."); + } + _pl(" Exits: " TA_BLD "east" TA_RST " → 3rd floor hall."); + } + break; + case SECURITYOFFICE: + _pl(" Banks of monitors showing camera feeds. A rack of radio equipment."); + if (!_flag(FL_GUARD_AWAKE)) { + _pl(" A guard is slumped over the desk, " TA_BLD "asleep" TA_RST ". Lucky."); + _pl(" A " TA_BLD "MASTER KEYCARD" TA_RST " is visible on the desk beside him."); + } else { + _pl(" The guard is awake and looks at you with narrowed eyes."); + } + _pl(" Exits: " TA_BLD "south" TA_RST " → stairwell, " TA_BLD "east" TA_RST " → data centre."); + break; + case DATACENTER: + _pl(" Sub-zero air, deafening server noise. Blue LED status lights"); + _pl(" pulse like a heartbeat. A workstation is mounted at the end"); + _pl(" of the cold aisle. A " TA_BLD "FIRE EXTINGUISHER" TA_RST " is wall-mounted."); + if (_roomHasItem(EXTINGUISHER)) _pl(" The " TA_BLD "EXTINGUISHER" TA_RST " is mounted on the wall."); + _pl(" Exits: " TA_BLD "west" TA_RST " → security control room, " TA_BLD "north" TA_RST " → roof access."); + break; + case ROOF: + _pl(" Night sky. City lights below. A " TA_BLD "cooling unit" TA_RST " throbs."); + _pl(" There's a fire-escape ladder bolted to the parapet. Looking over"); + _pl(" the edge — the meeting-room windows are three floors down."); + if (_flag(FL_ROPE_USED)) _pl(" Your " TA_BLD "rope" TA_RST " is secured to the parapet railing."); + _pl(" Exits: " TA_BLD "down" TA_RST " → data centre."); + if (_flag(FL_ROPE_USED) && _flag(FL_GHOST_FREED)) + _pl(" You could " TA_BLD "climb down" TA_RST " the rope with Ghost."); + break; + case BASEMENT: + _pl(" Bare concrete, pipes, the hum of machinery. Emergency lighting"); + _pl(" casts everything in sickly orange. Water drips somewhere."); + _pl(" Exits: " TA_BLD "north" TA_RST " → stairwell, " TA_BLD "east" TA_RST " → power room."); + break; + case POWERROOM: + _pl(" Massive transformer units. Warning signs in three languages."); + _pl(" A master breaker panel dominates one wall — cutting it would"); + _pl(" kill cameras, alarms, and door locks. Also lights."); + _pl(" Exits: " TA_BLD "west" TA_RST " → basement, " TA_BLD "south" TA_RST " → service tunnel."); + break; + case TUNNEL: + _pl(" A low concrete tunnel smelling of rain and earth. It runs"); + _pl(" under the street to a maintenance exit on the other side."); + if (_flag(FL_POWER_CUT)) + _pl(" The tunnel door lock is dead — power is cut."); + else + _pl(" The far door is magnetically locked. Needs power cut or keycard."); + _pl(" Exits: " TA_BLD "north" TA_RST " → power room."); + if (_flag(FL_POWER_CUT) || _flag(FL_DATA_COPIED)) + _pl(" " TA_BLD "south" TA_RST " → outside (escape route open)."); + break; + default: + _pl(" Somewhere unfamiliar. Look around."); + break; + } + + // List items on floor (if not already described inline) + // (we only auto-list items not mentioned per-room above) + _pr(); + _p(" " TA_DIM "> " TA_RST); +} + +// ================================================================ +// Direction parsing → destination room +// ================================================================ +TextAdventure::Room TextAdventure::_parseDir(const char* w) const { + // Abbreviations + bool n = (strncmp(w,"north",5)==0 || strcmp(w,"n")==0); + bool s = (strncmp(w,"south",5)==0 || strcmp(w,"s")==0); + bool e = (strncmp(w,"east", 4)==0 || strcmp(w,"e")==0); + bool ww= (strncmp(w,"west", 4)==0 || strcmp(w,"w")==0); + bool u = (strncmp(w,"up", 2)==0); + bool d = (strncmp(w,"down", 4)==0); + bool cl= (strcmp(w,"climb")==0); + + switch (_room) { + case PARKING: if (n) return LOBBY; break; + case LOBBY: + if (n && _flag(FL_BADGE_SHOWN)) return STAIRWELL; + if (s) return PARKING; + break; + case STAIRWELL: + if (s) return LOBBY; + if (u) return BREAKROOM; + if (d) return BASEMENT; + break; + case BREAKROOM: + if (e) return OFFICE; + if (d) return STAIRWELL; + break; + case OFFICE: + if (ww) return BREAKROOM; + if (n) return SERVERCLOSET; + if (u) return HALL3; + break; + case SERVERCLOSET: if (s) return OFFICE; break; + case HALL3: + if (e) return MEETINGROOM; + if (ww && _flag(FL_MANAGER_OPEN)) return MANAGERSOFFICE; + if (d) return OFFICE; + break; + case MEETINGROOM: if (ww) return HALL3; break; + case MANAGERSOFFICE: if (e) return HALL3; break; + case SECURITYOFFICE: + if (s) return STAIRWELL; + if (e) return DATACENTER; + break; + case DATACENTER: + if (ww) return SECURITYOFFICE; + if (n) return ROOF; + break; + case ROOF: + if (d) return DATACENTER; + if ((cl || d || s) && _flag(FL_ROPE_USED) && _flag(FL_GHOST_FREED)) return STREET; + break; + case BASEMENT: + if (n) return STAIRWELL; + if (e) return POWERROOM; + break; + case POWERROOM: + if (ww) return BASEMENT; + if (s) return TUNNEL; + break; + case TUNNEL: + if (n) return POWERROOM; + if (s && (_flag(FL_POWER_CUT) || _hasItem(MASTERKEY))) return STREET; + break; + default: break; + } + return ROOM_COUNT; // invalid +} + +// ================================================================ +// Item / NPC word parsers +// ================================================================ +TextAdventure::Item TextAdventure::_parseItem(const char* w) const { + if (strstr(w,"badge")) return BADGE; + if (strstr(w,"lockpick")) return LOCKPICK; + if (strstr(w,"multi")) return MULTITOOL; + if (strstr(w,"note") || strstr(w,"sticky")) return STICKYNOTE; + if (strstr(w,"usb") || strstr(w,"drive")) return USB_DRIVE; + if (strstr(w,"keycard") || strstr(w,"key card")) return KEYCARD; + if (strstr(w,"master")) return MASTERKEY; + if (strstr(w,"extinguish") || strstr(w,"fire")) return EXTINGUISHER; + if (strstr(w,"thermos") || strstr(w,"coffee")) return THERMOS; + if (strstr(w,"chip") || strstr(w,"data chip")) return DATA_CHIP; + if (strstr(w,"rope")) return ROPE; + if (strstr(w,"photo") || strstr(w,"photograph")) return PHOTO; + return ITEM_NONE; +} + +TextAdventure::NPC TextAdventure::_parseNPC(const char* w) const { + if (strstr(w,"glenn")|| strstr(w,"guard")) return BOB; + if (strstr(w,"janet")|| strstr(w,"analyst"))return JANET; + if (strstr(w,"ghost")|| strstr(w,"marcus")) return GHOST; + return NPC_COUNT; +} + +// ================================================================ +// Command: go +// ================================================================ +void TextAdventure::_cmdGo(const char* dir) { + Room dest = _parseDir(dir); + if (dest == ROOM_COUNT) { + // Special cases + if (_room == LOBBY && (strcmp(dir,"north")==0 || strcmp(dir,"n")==0) + && !_flag(FL_BADGE_SHOWN)) { + _pl(" " TA_RED "Glenn steps in front of you." TA_RST); + _pl(" \"Hold on there. Visitors need to sign in first.\""); + _pl(" You'll need to show him your badge or find another way."); + _pr(); + _p(" " TA_DIM "> " TA_RST); + return; + } + if (_room == HALL3 && (strcmp(dir,"west")==0||strcmp(dir,"w")==0) + && !_flag(FL_MANAGER_OPEN)) { + _pl(" " TA_RED "The door is locked." TA_RST + " The keycard slot blinks red."); + _pl(" You need the master keycard or a lockpick."); + _pr(); + _p(" " TA_DIM "> " TA_RST); + return; + } + if (_room == TUNNEL && (strcmp(dir,"south")==0||strcmp(dir,"s")==0)) { + _pl(" " TA_RED "The tunnel door is magnetically locked." TA_RST); + _pl(" Cut the power, or use the master keycard."); + _pr(); + _p(" " TA_DIM "> " TA_RST); + return; + } + _pl(" " TA_DIM "You can't go that way." TA_RST); + _pr(); + _p(" " TA_DIM "> " TA_RST); + return; + } + + // Stairwell → security office: special — requires level 2 keycard + if (_room == STAIRWELL && dest == SECURITYOFFICE) { + if (!_hasItem(KEYCARD) && !_hasItem(MASTERKEY)) { + _pl(" " TA_RED "A keycard reader bars the security wing." TA_RST + " Level 2 access required."); + _pr(); + _p(" " TA_DIM "> " TA_RST); + return; + } + } + + if (dest == STREET) { + _triggerEnding(); + return; + } + + _room = dest; + _look(); +} + +// ================================================================ +// Command: look +// ================================================================ +void TextAdventure::_cmdLook() { _look(); } + +// ================================================================ +// Command: examine +// ================================================================ +void TextAdventure::_cmdExamine(const char* what) { + // Room features first + if (_room == LOBBY && strstr(what,"desk")) { + _pl(" Neat stacks of visitor passes, a sign-in logbook, and a"); + _pl(" corporate phone. Nothing you need right now."); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + if (_room == SERVERCLOSET && strstr(what,"terminal")) { + if (_flag(FL_CAMERAS_OFF)) { + _pl(" Already done — cameras are disabled."); + } else { + _pl(" The terminal shows a camera management UI. You know this system."); + _pl(" " TA_GRY " use usb on terminal" TA_RST " to deploy a loop script."); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + if (_room == MANAGERSOFFICE && strstr(what,"safe")) { + if (!_flag(FL_MANAGER_OPEN)) { + _pl(" You're not inside yet."); _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + _pl(" The safe is already ajar. Empty — someone got here first."); + _pl(" But there's a handwritten " TA_BLD "note" TA_RST " taped inside:"); + _pl(" " TA_YLW " 'GHOST — datacenter rack B7 — they know. Stay hidden.'" TA_RST); + if (!_flag(FL_GHOST_FOUND)) { + _addScore(5); + _setFlag(FL_GHOST_FOUND); + _pl(" " TA_GRN " (+5) You now know where Ghost is hiding." TA_RST); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + if (_room == ROOF && strstr(what,"parapet")) { + _pl(" A solid concrete railing. Good anchor point."); + _pl(" " TA_GRY " use rope on parapet" TA_RST " to set a rappel line."); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + if (_room == POWERROOM && strstr(what,"breaker")) { + _pl(" A huge panel — " TA_RED "DO NOT TOUCH — AUTHORISED PERSONNEL ONLY" TA_RST "."); + _pl(" Flipping the master breaker would cut all electronic locks."); + _pl(" " TA_GRY " use multitool on breaker" TA_RST " to bypass the safety."); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + if (_room == DATACENTER && strstr(what,"workstation")) { + if (!_flag(FL_DATA_COPIED)) { + _pl(" The workstation is logged in under a service account. You can see"); + _pl(" the NovaCorp research archive mounted as a network share."); + _pl(" " TA_GRY " use usb on workstation" TA_RST " to copy the data."); + } else { + _pl(" Copied. The exfiltrated files are on your USB drive."); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + if (_room == DATACENTER && (strstr(what,"rack")||strstr(what,"b7"))) { + if (_flag(FL_GHOST_FOUND) && !_flag(FL_GHOST_FREED)) { + _pl(" Behind rack B7, wedged between two chassis units, is a person."); + _pl(" " TA_MAG "Ghost" TA_RST " — Marcus Reeve, your contact. He looks dehydrated."); + _pl(" " TA_MAG "\"Cipher…\"" TA_RST " he rasps. " TA_MAG "\"I knew you'd come. Get me out.\"" TA_RST); + _addScore(10); + _setFlag(FL_GHOST_FOUND); + // Move Ghost to manager's office for story continuity: + _pl(" He follows you cautiously out of the rack. You need a way out."); + _setFlag(FL_GHOST_FREED); + _addScore(15); + _pl(" " TA_GRN " (+25) Ghost is free." TA_RST); + } else if (_flag(FL_GHOST_FREED)) { + _pl(" Ghost stands nearby. He gives you a tired nod."); + } else { + _pl(" A dense wall of server racks. Nothing unusual at a glance."); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // Item examination + Item it = _parseItem(what); + if (it != ITEM_NONE && (_hasItem(it) || _roomHasItem(it))) { + switch (it) { + case BADGE: + _pl(" A NovaCorp visitor badge. Name reads \"C. VARGA — IT Contractor\"."); + _pl(" Genuine enough to fool a bored guard."); + break; + case LOCKPICK: + _pl(" A compact set — tension wrench and three picks. You know how to use these."); + _pl(" Works on simple pin-tumbler locks. Not electronic ones."); + break; + case MULTITOOL: + _pl(" Twelve-in-one. Wire stripper, pliers, flathead — the works."); + _pl(" Exactly what you'd need to bypass a breaker safety cover."); + break; + case STICKYNOTE: + _pl(" Scrawled on the back of a visitor pass:"); + _pl(" " TA_YLW " 'wifi: NovaCorp-Guest pw: secfest2026'" TA_RST); + _pl(" Not directly useful, but whoever wrote this deserves a lecture."); + break; + case USB_DRIVE: + _pl(" 16 GB drive, blank label. Preloaded with a camera-loop script"); + _pl(" and a data-exfil tool. Your handler packed well."); + break; + case KEYCARD: + _pl(" Green stripe, level 2 clearance. Access to security wing and"); + _pl(" some server rooms. Not the director's floor."); + break; + case MASTERKEY: + _pl(" Black stripe, no name. Master clearance — opens every door"); + _pl(" in the building and unlocks the tunnel exit."); + _addScore(5); + break; + case EXTINGUISHER: + _pl(" Standard CO₂ unit. Could be used to create a cold-fog distraction,"); + _pl(" or just smash something. But why make noise?"); + break; + case THERMOS: + _pl(" Still warm. Smells like decent coffee. Stamped \"GLENN\" on the side."); + _pl(" Glenn's thermos. He'd probably want it back."); + break; + case DATA_CHIP: + _pl(" A compact flash module. Labelled " TA_RED "\"NOVACORP / PROJEKT LAZARUS\"" TA_RST "."); + _pl(" This is partial data — the full copy needs the workstation upstairs."); + break; + case ROPE: + _pl(" About 20 metres of dynamic rope. Rated to 200 kg. Someone was"); + _pl(" prepared for a window exit. Could anchor to the rooftop parapet."); + break; + case PHOTO: + _pl(" A printed photo of a woman in a data-centre aisle. On the back:"); + _pl(" " TA_YLW " 'Dr. A. Reeve — DO NOT ALLOW ACCESS'" TA_RST "."); + _pl(" Reeve — same surname as your contact Marcus. Interesting."); + if (!_flag(FL_JANET_TALKED)) { + _pl(" " TA_GRY " Maybe Janet knows something about the Reeve family." TA_RST); + } + _addScore(3); + break; + default: + _pl(" Nothing you didn't already know."); + } + _pr(); _p(" " TA_DIM "> " TA_RST); + return; + } + + _pl(" " TA_DIM "You don't see that here." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); +} + +// ================================================================ +// Command: take +// ================================================================ +void TextAdventure::_cmdTake(const char* what) { + Item it = _parseItem(what); + if (it == ITEM_NONE || !_roomHasItem(it)) { + _pl(" " TA_DIM "There's no such item here." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + if (_room == SECURITYOFFICE && it == MASTERKEY && _flag(FL_GUARD_AWAKE)) { + _pl(" " TA_RED "The guard is awake and watching you." TA_RST + " You can't just grab it."); + _pl(" Distract him first."); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + _roomItem[_room][it] = 0; + _inv[it] = 1; + _p(" Taken: "); _pl(_itemName(it)); + + // Score milestones + if (it == BADGE) _addScore(5); + if (it == KEYCARD) _addScore(5); + if (it == MASTERKEY) _addScore(10); + if (it == DATA_CHIP) _addScore(5); + + _pr(); _p(" " TA_DIM "> " TA_RST); +} + +// ================================================================ +// Command: drop +// ================================================================ +void TextAdventure::_cmdDrop(const char* what) { + Item it = _parseItem(what); + if (it == ITEM_NONE || !_hasItem(it)) { + _pl(" " TA_DIM "You're not carrying that." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + _inv[it] = 0; + _roomItem[_room][it] = 1; + _p(" Dropped: "); _pl(_itemName(it)); + _pr(); _p(" " TA_DIM "> " TA_RST); +} + +// ================================================================ +// Command: use ITEM [on TARGET] +// ================================================================ +void TextAdventure::_cmdUse(const char* what, const char* on) { + Item it = _parseItem(what); + + if (it == ITEM_NONE) { + _pl(" " TA_DIM "Use what?" TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + if (!_hasItem(it)) { + _pl(" " TA_DIM "You don't have that." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── BADGE ──────────────────────────────────────────────── + if (it == BADGE) { + if (_room == LOBBY && !_flag(FL_BADGE_SHOWN)) { + _pl(" You clip the badge to your jacket and approach Glenn."); + _pl(" Glenn squints, nods. " TA_GRN "\"All right. Sign in and head on up.\"" TA_RST); + _setFlag(FL_BADGE_SHOWN); + _addScore(10); + _pl(" " TA_GRN " (+10) Glenn lets you through." TA_RST); + } else { + _pl(" Your badge is already recognised here."); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── THERMOS ───────────────────────────────────────────── + if (it == THERMOS) { + if (_room == LOBBY && !_flag(FL_GUARD_DISTRACT)) { + _pl(" \"Hey Glenn — I think this is yours. Found it upstairs.\""); + _pl(" Glenn's face lights up. " TA_GRN "\"Oh brilliant, I've been looking for that!\"" TA_RST); + _pl(" He turns away, prying the lid open. His back is to the monitors."); + _setFlag(FL_GUARD_DISTRACT); + _setFlag(FL_GUARD_AWAKE); // wakes him — but distracted + _addScore(5); + _pl(" " TA_GRN " (+5) Guard is distracted." TA_RST); + _inv[THERMOS] = 0; // handed over + } else { + _pl(" Now's not the moment for coffee diplomacy."); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── LOCKPICK ──────────────────────────────────────────── + if (it == LOCKPICK) { + if (_room == HALL3 && !_flag(FL_MANAGER_OPEN)) { + _pl(" You crouch at the director's door. The lock is a simple pin-"); + _pl(" tumbler behind the card reader. Two minutes of careful work…"); + _pl(" " TA_GRN "Click." TA_RST " The door swings open."); + _setFlag(FL_MANAGER_OPEN); + _addScore(10); + _pl(" " TA_GRN " (+10) Director's office unlocked." TA_RST); + } else if (_room == MANAGERSOFFICE) { + _pl(" The door's already open."); + } else { + _pl(" There's nothing to pick here."); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── MASTERKEY ─────────────────────────────────────────── + if (it == MASTERKEY) { + if (_room == HALL3 && !_flag(FL_MANAGER_OPEN)) { + _pl(" You swipe the master keycard. The lock turns green."); + _pl(" " TA_GRN "Access granted." TA_RST " The director's door swings open."); + _setFlag(FL_MANAGER_OPEN); + _addScore(8); + _pl(" " TA_GRN " (+8) Director's office opened." TA_RST); + } else { + _pl(" You swipe the card. Nothing new happens here."); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── USB_DRIVE ─────────────────────────────────────────── + if (it == USB_DRIVE) { + // use on terminal → disable cameras + if (_room == SERVERCLOSET && (on == nullptr || strstr(on,"terminal"))) { + if (_flag(FL_CAMERAS_OFF)) { + _pl(" The camera loop is already running."); + } else { + _pl(" You slide the USB into the terminal. The camera script uploads"); + _pl(" in seconds — looping the last 10 minutes of footage across all"); + _pl(" channels. The red indicator on the hall camera goes dark."); + _setFlag(FL_CAMERAS_OFF); + _setFlag(FL_TERMINAL_USED); + _addScore(15); + _pl(" " TA_GRN " (+15) Cameras are blind." TA_RST); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + // use on workstation → copy data + if (_room == DATACENTER && (on == nullptr || strstr(on,"workstation"))) { + if (_flag(FL_DATA_COPIED)) { + _pl(" The data is already copied."); + } else { + _pl(" You plug into the workstation. The exfil tool runs silently."); + _pl(" Progress bar… 97%… " TA_GRN "Done." TA_RST " 4.7 GB of Projekt Lazarus."); + _setFlag(FL_DATA_COPIED); + _addScore(20); + _pl(" " TA_GRN " (+20) Data exfiltrated." TA_RST); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + _pl(" " TA_DIM "Use the USB on something specific — terminal, workstation." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── MULTITOOL ─────────────────────────────────────────── + if (it == MULTITOOL) { + if (_room == POWERROOM && (on == nullptr || strstr(on,"breaker"))) { + if (_flag(FL_POWER_CUT)) { + _pl(" Already done. The building runs on emergency lighting only."); + } else { + _pl(" You pry off the safety cover and flip the master breaker."); + _pl(" A deep " TA_RED "THUNK" TA_RST ". The building goes to emergency red lights."); + _pl(" Electronic locks are dead. Cameras are dead. Alarms… dead."); + _setFlag(FL_POWER_CUT); + _addScore(10); + _pl(" " TA_GRN " (+10) Power cut. Everything is open." TA_RST); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + _pl(" " TA_DIM "Use the multitool on what?" TA_RST + " (try: " TA_BLD "use multitool on breaker" TA_RST ")"); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── ROPE ──────────────────────────────────────────────── + if (it == ROPE) { + if (_room == ROOF && (on == nullptr || strstr(on,"parapet"))) { + if (_flag(FL_ROPE_USED)) { + _pl(" The rope is already secured."); + } else { + _pl(" You tie off the rope to the parapet railing with a figure-eight."); + _pl(" It hangs down three floors — window level. Clean exit route."); + _setFlag(FL_ROPE_USED); + _addScore(5); + _pl(" " TA_GRN " (+5) Rappel line set." TA_RST); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + _pl(" " TA_DIM "Anchor the rope somewhere — try: " TA_BLD "use rope on parapet" TA_RST TA_DIM " (on the roof)." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── EXTINGUISHER ──────────────────────────────────────── + if (it == EXTINGUISHER) { + if (_room == SECURITYOFFICE && _flag(FL_GUARD_AWAKE) && !_flag(FL_GUARD_DISTRACT)) { + _pl(" You blast CO₂ at the guard. He stumbles back, blind and coughing."); + _pl(" You have maybe 30 seconds. " TA_YLW "Grab the keycard and move." TA_RST); + _setFlag(FL_GUARD_DISTRACT); + _addScore(3); + _pl(" " TA_GRN " (+3) Guard is temporarily incapacitated." TA_RST); + } else { + _pl(" That would just make a mess — and noise."); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── PHOTO ─────────────────────────────────────────────── + if (it == PHOTO) { + if (_room == OFFICE) { + _cmdTalk("janet"); // show photo → talk event + return; + } + _pl(" " TA_DIM "This isn't the right moment for this." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + _pl(" " TA_DIM "Nothing happens." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); +} + +// ================================================================ +// Command: talk +// ================================================================ +void TextAdventure::_cmdTalk(const char* who) { + NPC n = _parseNPC(who); + if (n == NPC_COUNT) { + _pl(" " TA_DIM "There's nobody here by that name." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── BOB ───────────────────────────────────────────────── + if (n == BOB) { + if (_room != LOBBY) { + _pl(" " TA_DIM "Glenn isn't here." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + _bobTalks++; + if (_bobTalks == 1) { + _pl(" " TA_GRN "Glenn:" TA_RST " \"Evening. You here for the maintenance window?\""); + _pl(" " TA_GRY " He seems tired. Hasn't had his coffee." TA_RST); + } else if (_bobTalks == 2) { + _pl(" " TA_GRN "Glenn:" TA_RST " \"You know, I've been on since noon. Still no sign of"); + _pl(" my thermos. Swear someone nicked it from the break room.\""); + _pl(" " TA_GRY " Interesting. You wonder if the thermos you saw upstairs is his." TA_RST); + } else { + _pl(" " TA_GRN "Glenn:" TA_RST " \"I'm going to need you to sign in or show me something."); + _pl(" Building policy, mate. Sorry.\""); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── JANET ─────────────────────────────────────────────── + if (n == JANET) { + if (_room != OFFICE) { + _pl(" " TA_DIM "Janet isn't here." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + _janetTalks++; + if (_janetTalks == 1) { + _pl(" Janet looks up briefly."); + _pl(" " TA_YLW "Janet:" TA_RST " \"Can I help you? I'm kind of in the middle of something.\""); + _pl(" She glances at the photo on the corkboard nervously."); + } else if (_janetTalks == 2 && _hasItem(PHOTO)) { + _pl(" You show her the photograph of the woman labelled 'DO NOT ALLOW ACCESS'."); + _pl(" Janet's face pales."); + _pl(" " TA_YLW "Janet:" TA_RST " \"Where did you get that? That's Dr. Reeve. She was"); + _pl(" the lead researcher on Lazarus. They said she quit. But Marcus —"); + _pl(" her brother — he didn't believe it. He came looking…\""); + _pl(" She swallows. " TA_YLW "\"The director has him locked somewhere. Be careful.\"" TA_RST); + _setFlag(FL_JANET_TALKED); + _setFlag(FL_GHOST_FOUND); // now player knows Ghost's identity + _addScore(8); + _pl(" " TA_GRN " (+8) Critical intel on Ghost's location and identity." TA_RST); + } else if (_janetTalks >= 3) { + _pl(" " TA_YLW "Janet:" TA_RST " \"Please — just get Marcus out. And burn that data.\""); + _pl(" " TA_GRY " Or copy it first. Same difference, right?" TA_RST); + } else { + _pl(" " TA_YLW "Janet:" TA_RST " \"I already said too much. Just go.\""); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + + // ── GHOST ─────────────────────────────────────────────── + if (n == GHOST) { + if (!_flag(FL_GHOST_FREED)) { + if (_flag(FL_GHOST_FOUND)) { + _pl(" You know Ghost is in the data centre, but haven't reached him yet."); + } else { + _pl(" " TA_DIM "You don't know where Ghost is." TA_RST); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } + _ghostTalks++; + if (_ghostTalks == 1) { + _pl(" " TA_MAG "Ghost:" TA_RST " \"Cipher. God, I thought I was done. They have everything."); + _pl(" Projekt Lazarus is a kill-switch implant. Distributed via firmware"); + _pl(" update. NovaCorp sells it to governments. My sister found out—\""); + _pl(" He stops himself. " TA_MAG "\"We need to get the data out. And we need to leave.\"" TA_RST); + } else if (_ghostTalks == 2) { + _pl(" " TA_MAG "Ghost:" TA_RST " \"The roof — there's a rappel point on the parapet."); + _pl(" I used to do a lot of urban exploration. If you have rope, we can"); + _pl(" drop to the alley and reach the service tunnel from there.\""); + } else { + _pl(" " TA_MAG "Ghost:" TA_RST " \"Stop chatting and get us out of here.\""); + } + _pr(); _p(" " TA_DIM "> " TA_RST); return; + } +} + +// ================================================================ +// Endings +// ================================================================ +void TextAdventure::_triggerEnding() { + _ended = true; + bool hasData = _flag(FL_DATA_COPIED) || _hasItem(DATA_CHIP); + bool savedGhost = _flag(FL_GHOST_FREED); + bool stealthy = !_flag(FL_ALARM) && _flag(FL_CAMERAS_OFF); + + if (savedGhost && hasData && stealthy) { + _addScore(20); + _endingGhostMode(); + } else if (hasData) { + _addScore(5); + _endingOperative(); + } else { + _endingBurned(); + } +} + +void TextAdventure::_endingGhostMode() { + _p(TA_CLS); + _pl(TA_BLD TA_GRN + " ╔══════════════════════════════════════════════╗"); + _pl( + " ║ ENDING: G H O S T M O D E ║"); + _pl( + " ╚══════════════════════════════════════════════╝" TA_RST); + _pr(); + _pl(" You and Ghost drop three floors on the rope, land in the alley"); + _pl(" without a sound. The service tunnel ahead is dark and silent."); + _pl(" Four minutes later you're breathing city air, NovaCorp's towers"); + _pl(" receding behind you."); + _pr(); + _pl(" Ghost uploads a fragment to a journalist's dead-drop before you"); + _pl(" even reach the safe house. The data chip in your pocket holds"); + _pl(" the rest. Projekt Lazarus will never ship."); + _pr(); + _pl(" NovaCorp reviews their camera logs — and finds ten minutes of"); + _pl(" perfect, undisturbed footage. You were never there."); + _pr(); + _pl(TA_BLD TA_GRN " Perfect run. No trace. Mission complete." TA_RST); + _printScore(); + _pl(TA_DIM " Press Enter or type 'q' to return to the badge menu." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); +} + +void TextAdventure::_endingOperative() { + _p(TA_CLS); + _pl(TA_BLD TA_YLW + " ╔══════════════════════════════════════════════╗"); + _pl( + " ║ ENDING: O P E R A T I V E ║"); + _pl( + " ╚══════════════════════════════════════════════╝" TA_RST); + _pr(); + _pl(" You slip through the tunnel exit alone, USB drive warm in your"); + _pl(" pocket. The data is real — Projekt Lazarus, names, contracts,"); + _pl(" everything your handler needs."); + _pr(); + _pl(" Behind you, somewhere on the third floor, Ghost is still waiting."); + _pl(" You made a call. Operatives always make calls."); + _pr(); + _pl(" The story breaks in forty-eight hours. NovaCorp denies everything."); + _pl(" Three executives resign within a week. Your handler says 'well done'."); + _pl(" Ghost is eventually released. He doesn't return your messages."); + _pr(); + _pl(TA_BLD TA_YLW " Data extracted. Objective complete. Some regrets." TA_RST); + _printScore(); + _pl(TA_DIM " Press Enter or type 'q' to return to the badge menu." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); +} + +void TextAdventure::_endingBurned() { + _p(TA_CLS); + _pl(TA_BLD TA_RED + " ╔══════════════════════════════════════════════╗"); + _pl( + " ║ ENDING: B U R N E D ║"); + _pl( + " ╚══════════════════════════════════════════════╝" TA_RST); + _pr(); + _pl(" You stumble out the tunnel exit empty-handed. No data. No Ghost."); + _pl(" Just adrenaline and the growing certainty that the camera footage"); + _pl(" was NOT looped, and someone has your face."); + _pr(); + _pl(" Your handler's line goes to voicemail. The safe-house is dark."); + _pl(" A black SUV idles at the corner of the street."); + _pl(" You walk past it without making eye contact and keep walking."); + _pr(); + _pl(" Projekt Lazarus ships six months later. It becomes a best-seller."); + _pr(); + _pl(TA_BLD TA_RED " Mission failed. You got out, barely. Start over?" TA_RST); + _printScore(); + _pl(TA_DIM " Press Enter or type 'q' to return to the badge menu." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); +} + +// ================================================================ +// Main line dispatcher +// ================================================================ +void TextAdventure::feedLine(const char* raw) { + if (_ended) { + // Any input after ending → quit + quitToMenu = true; + _active = false; + return; + } + + // Lower-case copy + char buf[64]; + uint8_t len = 0; + while (raw[len] && len < 63) { buf[len] = raw[len]; len++; } + buf[len] = '\0'; + for (uint8_t i = 0; i < len; i++) { + if (buf[i] >= 'A' && buf[i] <= 'Z') buf[i] += 32; + } + + // Trim leading spaces + char* line = buf; + while (*line == ' ') line++; + if (*line == '\0') { _p(" " TA_DIM "> " TA_RST); return; } + + // Tokenise verb + rest + char verb[16] = {0}; + char rest[48] = {0}; + uint8_t vi = 0; + uint8_t ri = 0; + bool inVerb = true; + for (uint8_t i = 0; line[i] && i < 63; i++) { + if (inVerb) { + if (line[i] == ' ') { inVerb = false; } + else if (vi < 15) { verb[vi++] = line[i]; } + } else { + if (ri < 47) { rest[ri++] = line[i]; } + } + } + + // Parse "on" separator in rest → item + target + char item_part[32] = {0}; + char on_part[32] = {0}; + const char* onSep = strstr(rest, " on "); + if (onSep) { + uint8_t il = (uint8_t)(onSep - rest); + if (il > 31) il = 31; + strncpy(item_part, rest, il); + strncpy(on_part, onSep + 4, 31); + } else { + strncpy(item_part, rest, 31); + } + + // Dispatch + if (strcmp(verb,"q")==0 || strcmp(verb,"quit")==0) { + _pl(" You melt into the city. Another day, another op."); + quitToMenu = true; + _active = false; + return; + } + if (strcmp(verb,"help")==0 || strcmp(verb,"?")==0) { + _printHelp(); _p(" " TA_DIM "> " TA_RST); return; + } + if (strcmp(verb,"score")==0) { + _printScore(); _p(" " TA_DIM "> " TA_RST); return; + } + if (strcmp(verb,"inventory")==0 || strcmp(verb,"inv")==0 || strcmp(verb,"i")==0) { + _printInventory(); return; + } + if (strcmp(verb,"look")==0 || strcmp(verb,"l")==0) { + _cmdLook(); return; + } + if (strcmp(verb,"go")==0 || strcmp(verb,"move")==0 || strcmp(verb,"walk")==0) { + _cmdGo(rest); return; + } + // bare direction words + if (strcmp(verb,"north")==0||strcmp(verb,"n")==0|| + strcmp(verb,"south")==0||strcmp(verb,"s")==0|| + strcmp(verb,"east")==0 ||strcmp(verb,"e")==0|| + strcmp(verb,"west")==0 ||strcmp(verb,"w")==0|| + strcmp(verb,"up")==0 ||strcmp(verb,"down")==0|| + strcmp(verb,"climb")==0) { + _cmdGo(verb); return; + } + if (strcmp(verb,"examine")==0||strcmp(verb,"x")==0|| + strcmp(verb,"look")==0||strcmp(verb,"inspect")==0|| + strcmp(verb,"read")==0) { + _cmdExamine(rest[0] ? rest : verb); return; + } + if (strcmp(verb,"take")==0||strcmp(verb,"get")==0||strcmp(verb,"pick")==0) { + _cmdTake(rest); return; + } + if (strcmp(verb,"drop")==0||strcmp(verb,"leave")==0||strcmp(verb,"put")==0) { + _cmdDrop(rest); return; + } + if (strcmp(verb,"use")==0||strcmp(verb,"apply")==0||strcmp(verb,"insert")==0) { + _cmdUse(item_part[0] ? item_part : rest, + on_part[0] ? on_part : nullptr); + return; + } + if (strcmp(verb,"talk")==0||strcmp(verb,"speak")==0|| + strcmp(verb,"ask")==0 ||strcmp(verb,"chat")==0) { + _cmdTalk(rest); return; + } + // NPC names as verbs + if (strcmp(verb,"glenn")==0) { _cmdTalk("glenn"); return; } + if (strcmp(verb,"janet")==0) { _cmdTalk("janet"); return; } + if (strcmp(verb,"ghost")==0) { _cmdTalk("ghost"); return; } + + _pl(" " TA_DIM "Unrecognised command. Type " TA_RST TA_BLD "help" TA_RST TA_DIM " for commands." TA_RST); + _pr(); _p(" " TA_DIM "> " TA_RST); +} diff --git a/welcome_demo/src/text_adventure.h b/welcome_demo/src/text_adventure.h new file mode 100644 index 0000000..ac00cef --- /dev/null +++ b/welcome_demo/src/text_adventure.h @@ -0,0 +1,115 @@ +// ================================================================ +// text_adventure.h — Secfest 2026 Badge +// ================================================================ +// ZERO DAY — A hacker text adventure. +// +// You are a security operative sent to extract stolen research data +// from NovaCorp HQ before the building goes into full lockdown. +// Uncover the truth, free a trapped contact, and vanish without +// a trace — or blow your cover trying. +// +// Play over USB-CDC serial (PuTTY / Minicom). +// All interaction is line-based: type a command and press Enter. +// +// Commands: go/move DIRECTION, look, examine ITEM, +// take/get ITEM, drop ITEM, use ITEM, +// use ITEM on TARGET, talk NPC, +// inventory/inv, score, help, quit +// ================================================================ +#pragma once +#include + +class TextAdventure { +public: + void begin(); // reset to start state + void update(); // call from SerialGames::update() — non-blocking + void feedLine(const char* line); // dispatch a completed input line + + bool isActive() const { return _active; } + // Called when 'q'/'quit' should return to the SerialGames menu + // — caller checks _quitToMenu and resets it after reading + bool quitToMenu = false; + +private: + bool _active = false; + + // ── Rooms ──────────────────────────────────────────────────────── + enum Room : uint8_t { + PARKING=0, LOBBY, STAIRWELL, BREAKROOM, OFFICE, + SERVERCLOSET, HALL3, MEETINGROOM, MANAGERSOFFICE, SECURITYOFFICE, + DATACENTER, ROOF, BASEMENT, POWERROOM, TUNNEL, + STREET, // win-condition room — not truly reachable as normal room + ROOM_COUNT + }; + + // ── Items ──────────────────────────────────────────────────────── + enum Item : uint8_t { + BADGE=0, LOCKPICK, MULTITOOL, STICKYNOTE, USB_DRIVE, + KEYCARD, MASTERKEY, EXTINGUISHER, THERMOS, DATA_CHIP, + ROPE, PHOTO, + ITEM_COUNT, + ITEM_NONE = 0xFF + }; + + // ── NPCs ───────────────────────────────────────────────────────── + enum NPC : uint8_t { BOB=0, JANET, GHOST, NPC_COUNT }; + + // ── Flags ──────────────────────────────────────────────────────── + enum Flag : uint8_t { + FL_BADGE_SHOWN=0, FL_GUARD_DISTRACT, FL_CAMERAS_OFF, FL_ALARM, + FL_MANAGER_OPEN, FL_TERMINAL_USED, FL_GUARD_AWAKE, FL_DATA_COPIED, + FL_GHOST_FOUND, FL_GHOST_FREED, FL_ROPE_USED, FL_POWER_CUT, + FL_JANET_TALKED, FL_LAPTOP_OPEN, + FLAG_COUNT + }; + + // ── State ──────────────────────────────────────────────────────── + Room _room = PARKING; + uint8_t _inv[ITEM_COUNT]; // 1 = in inventory + uint8_t _roomItem[ROOM_COUNT][ITEM_COUNT]; // items on floor per room + bool _flags[FLAG_COUNT]; + uint8_t _bobTalks = 0; // how many times player talked to Glenn + uint8_t _janetTalks = 0; + uint8_t _ghostTalks = 0; + int16_t _score = 0; + bool _ended = false; + + // ── Helpers ────────────────────────────────────────────────────── + void _printBanner(); + void _printHelp(); + void _printScore(); + void _printInventory(); + void _look(); + void _describeRoom(); + const char* _roomName(Room r); + const char* _itemName(Item it); + const char* _itemShort(Item it); + const char* _npcName(NPC n); + + bool _hasItem(Item it) const { return _inv[it]; } + bool _roomHasItem(Item it) const { return _roomItem[_room][it]; } + bool _flag(Flag f) const { return _flags[f]; } + void _setFlag(Flag f) { if (!_flags[f]) { _flags[f] = true; } } + void _addScore(int16_t pts) { _score += pts; } + + Item _parseItem(const char* word) const; + NPC _parseNPC(const char* word) const; + Room _parseDir(const char* word) const; // returns ROOM_COUNT on fail + + void _cmdGo(const char* dir); + void _cmdLook(); + void _cmdExamine(const char* what); + void _cmdTake(const char* what); + void _cmdDrop(const char* what); + void _cmdUse(const char* what, const char* on); + void _cmdTalk(const char* who); + + void _triggerEnding(); + void _endingGhostMode(); + void _endingOperative(); + void _endingBurned(); + + static void _p(const char* s); // Serial.print wrapper + static void _pl(const char* s); // print + \r\n + static void _pr(); // print \r\n +};

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⪙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%0AA^6hv6p8nKtT0PhK)kQL%}W)!k_@fvYU1fSq& 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 diff --git a/hardware_test/.pio/build/rp2040_usb/firmware.uf2 b/hardware_test/.pio/build/rp2040_usb/firmware.uf2 deleted file mode 100644 index 098f3038daf9de7af4ffa84d1e2ea5beb7658bdd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 168960 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