diff options
author | jack <[email protected]> | 2024-05-20 17:54:43 -0600 |
---|---|---|
committer | jack <[email protected]> | 2024-05-20 17:54:43 -0600 |
commit | c84e475efd6e4f361f1b06e277d15aeb13824ad8 (patch) | |
tree | cfc890416d5b8e8ee1ead929403c7addb478e662 | |
parent | dc61bac71d98cc5759d8dbf6cbb9dc902f9b1455 (diff) | |
download | qmk_me-c84e475efd6e4f361f1b06e277d15aeb13824ad8.tar.gz qmk_me-c84e475efd6e4f361f1b06e277d15aeb13824ad8.zip |
formatting
-rw-r--r-- | keyboards/bully/keymaps/waffle/keymap.c | 4 | ||||
-rw-r--r-- | keyboards/grumpy/keymaps/waffle/keymap.c | 2 | ||||
-rw-r--r-- | keyboards/locus/keymaps/waffle/keymap.c | 2 | ||||
-rw-r--r-- | keyboards/minidox/keymaps/waffle/keymap.c | 3 | ||||
-rw-r--r-- | keyboards/relic/keymaps/waffle/keymap.c | 3 | ||||
-rw-r--r-- | keyboards/tornish/keymaps/default/keymap.c | 35 | ||||
-rw-r--r-- | keyboards/vault35/keymaps/waffle/keymap.c | 2 | ||||
-rw-r--r-- | keyboards/xyz60/keymaps/waffle/keymap.c | 6 | ||||
-rw-r--r-- | keymaps/crkbd/keymap.c | 64 | ||||
-rw-r--r-- | keymaps/f60/keymap.c | 6 | ||||
-rw-r--r-- | keymaps/ferris/keymap.c | 2 | ||||
-rw-r--r-- | keymaps/kyria/keymap.c | 2 | ||||
-rw-r--r-- | keymaps/microdox/keymap.c | 5 | ||||
-rw-r--r-- | waffle/autocorrect_data.h | 857 | ||||
-rw-r--r-- | waffle/color.c | 2 | ||||
-rw-r--r-- | waffle/combos.h | 3 | ||||
-rw-r--r-- | waffle/dict.h | 401 | ||||
-rw-r--r-- | waffle/oled.c | 94 | ||||
-rw-r--r-- | waffle/oled.h | 1060 | ||||
-rw-r--r-- | waffle/oledfont.h | 121 | ||||
-rw-r--r-- | waffle/tapping.c | 136 | ||||
-rw-r--r-- | waffle/unicode.c | 193 | ||||
-rw-r--r-- | waffle/waffle.c | 55 | ||||
-rw-r--r-- | waffle/waffle.h | 39 |
24 files changed, 2025 insertions, 1072 deletions
diff --git a/keyboards/bully/keymaps/waffle/keymap.c b/keyboards/bully/keymaps/waffle/keymap.c index 8e56174..822b2de 100644 --- a/keyboards/bully/keymaps/waffle/keymap.c +++ b/keyboards/bully/keymaps/waffle/keymap.c @@ -2,12 +2,13 @@ // SPDX-License-Identifier: GPL-3.0-or-later #include "waffle.h" +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT_waffle( REMOVE, ___BASE1___, KC_BSPC, KC_BSPC, NUKE, ___BASE2___, PNP, KC_NO, ___BASE3___, KC_NO, - KC_NO, UPDIR, KC_ESC, LT(_LOWER, KC_SPC), C(S(KC_V)), MO(_RAISE), KC_NO + KC_VOLD, UPDIR, KC_ESC, LT(_LOWER, KC_SPC), RSEPST, KC_NO, KC_VOLU ), [_LOWER] = LAYOUT_waffle( _______, ___LOWER1___, _______, _______, @@ -22,3 +23,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______ ) }; +// clang-format on diff --git a/keyboards/grumpy/keymaps/waffle/keymap.c b/keyboards/grumpy/keymaps/waffle/keymap.c index 56b09da..031d512 100644 --- a/keyboards/grumpy/keymaps/waffle/keymap.c +++ b/keyboards/grumpy/keymaps/waffle/keymap.c @@ -2,6 +2,7 @@ // SPDX-License-Identifier: GPL-3.0-or-later #include "waffle.h" +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT( KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, @@ -9,3 +10,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH ) }; +// clang-format on diff --git a/keyboards/locus/keymaps/waffle/keymap.c b/keyboards/locus/keymaps/waffle/keymap.c index f3084ee..dc50233 100644 --- a/keyboards/locus/keymaps/waffle/keymap.c +++ b/keyboards/locus/keymaps/waffle/keymap.c @@ -2,6 +2,7 @@ // SPDX-License-Identifier: GPL-3.0-or-later #include "waffle.h" +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT_waffle( _______, ___BASE1___, _______, @@ -22,3 +23,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______ ) }; +// clang-format on diff --git a/keyboards/minidox/keymaps/waffle/keymap.c b/keyboards/minidox/keymaps/waffle/keymap.c index acee979..e7875e0 100644 --- a/keyboards/minidox/keymaps/waffle/keymap.c +++ b/keyboards/minidox/keymaps/waffle/keymap.c @@ -1,6 +1,8 @@ // Copyright 2024 jack (@waffle87) // SPDX-License-Identifier: GPL-3.0-or-later #include "waffle.h" + +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT_waffle_3x5( ___BASE1___, @@ -21,3 +23,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ___RAISE4___ ) }; +// clang-format on diff --git a/keyboards/relic/keymaps/waffle/keymap.c b/keyboards/relic/keymaps/waffle/keymap.c index 3e0bba7..141bdce 100644 --- a/keyboards/relic/keymaps/waffle/keymap.c +++ b/keyboards/relic/keymaps/waffle/keymap.c @@ -1,6 +1,8 @@ // Copyright 2024 jack (@waffle87) // SPDX-License-Identifier: GPL-3.0-or-later #include "waffle.h" + +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT_waffle( ___BASE1___, PNP, @@ -21,3 +23,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______ ) }; +// clang-format on diff --git a/keyboards/tornish/keymaps/default/keymap.c b/keyboards/tornish/keymaps/default/keymap.c index c81afbb..87fec9d 100644 --- a/keyboards/tornish/keymaps/default/keymap.c +++ b/keyboards/tornish/keymaps/default/keymap.c @@ -2,11 +2,9 @@ // SPDX-License-Identifier: GPL-2.0-or-later #include QMK_KEYBOARD_H -enum macros { - DAY = SAFE_RANGE, - CLEAR -}; +enum macros { DAY = QK_USER, CLEAR }; +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( DAY, KC_Q, KC_W, KC_E, KC_R, KC_T, @@ -21,23 +19,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_NO, _______, KC_NO, KC_NO ) }; +// clang-format on bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { - case DAY: - if (record->event.pressed) { - tap_code(KC_SLSH); - wait_ms(500); - SEND_STRING("time set day" SS_TAP(X_ENT)); - } - break; - case CLEAR: - if (record->event.pressed) { - tap_code(KC_SLSH); - wait_ms(500); - SEND_STRING("weather clear" SS_TAP(X_ENT)); - } - break; + case DAY: + if (record->event.pressed) { + tap_code(KC_SLSH); + wait_ms(500); + SEND_STRING("time set day" SS_TAP(X_ENT)); + } + break; + case CLEAR: + if (record->event.pressed) { + tap_code(KC_SLSH); + wait_ms(500); + SEND_STRING("weather clear" SS_TAP(X_ENT)); + } + break; } return true; } diff --git a/keyboards/vault35/keymaps/waffle/keymap.c b/keyboards/vault35/keymaps/waffle/keymap.c index eeced32..f192061 100644 --- a/keyboards/vault35/keymaps/waffle/keymap.c +++ b/keyboards/vault35/keymaps/waffle/keymap.c @@ -2,6 +2,7 @@ // SPDX-License-Identifier: GPL-3.0-or-later #include "waffle.h" +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT_waffle( ___BASE1___, KC_NO, @@ -22,3 +23,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ___RAISE4___ ) }; +// clang-format on diff --git a/keyboards/xyz60/keymaps/waffle/keymap.c b/keyboards/xyz60/keymaps/waffle/keymap.c index 26b58d2..1bb64db 100644 --- a/keyboards/xyz60/keymaps/waffle/keymap.c +++ b/keyboards/xyz60/keymaps/waffle/keymap.c @@ -1,8 +1,11 @@ // Copyright 2024 jack (@waffle87) // SPDX-License-Identifier: GPL-3.0-or-later #include "waffle.h" -#define ___NONE___ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +#define ___NONE___ \ + _______, _______, _______, _______, _______, _______, _______, _______, \ + _______, _______, _______, _______, _______ +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT_waffle_60_ts( _______, ___NONE___, @@ -26,3 +29,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______ ) }; +// clang-format on diff --git a/keymaps/crkbd/keymap.c b/keymaps/crkbd/keymap.c index ba964ea..8870511 100644 --- a/keymaps/crkbd/keymap.c +++ b/keymaps/crkbd/keymap.c @@ -2,6 +2,7 @@ // SPDX-License-Identifier: GPL-2.0-or-later #include "waffle.h" +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT_waffle_3x6( KC_NO, ___BASE1___, KC_NO, @@ -22,6 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ___RAISE4___ ) }; +// clang-format on void housekeeping_task_keymap(void) { if (last_input_activity_elapsed() > 15000) { @@ -48,16 +50,17 @@ void housekeeping_task_keymap(void) { } #ifdef AUDIO_ENABLE -void keyboard_pre_init_user(void) { //thank you to @sigprof for this +void keyboard_pre_init_user(void) { // thank you to @sigprof for this palSetLineMode(A5, PAL_MODE_INPUT_ANALOG); palSetLineMode(B1, PAL_MODE_INPUT_ANALOG); } void keyboard_post_init_keymap(void) { // enable OPAMP1 as A5 → B1 follower - OPAMP3->CSR = OPAMP3_CSR_VMSEL_1 | OPAMP3_CSR_VMSEL_0 | OPAMP3_CSR_VPSEL_0 | OPAMP3_CSR_OPAMP3EN; + OPAMP3->CSR = OPAMP3_CSR_VMSEL_1 | OPAMP3_CSR_VMSEL_0 | OPAMP3_CSR_VPSEL_0 | + OPAMP3_CSR_OPAMP3EN; } -#endif //audio +#endif // audio #ifdef OLED_ENABLE oled_rotation_t oled_init_user(oled_rotation_t rotation) { @@ -91,37 +94,32 @@ bool oled_task_keymap(void) { } return false; } -#endif //oled +#endif // oled #ifdef RGB_MATRIX_ENABLE void matrix_init_user(void) { - g_led_config = (led_config_t) { { - { 15, 16, 17, 18, 19, 20 }, - { 14, 13, 12, 11, 10, 9 }, - { 3, 4, 5, 6, 7, 8 }, - { NO_LED, NO_LED, NO_LED, 2, 1, 0 }, - { 47, 46, 45, 44, 43, 42 }, - { 36, 37, 38, 39, 40, 41 }, - { 35, 34, 33, 32, 31, 30 }, - { NO_LED, NO_LED, NO_LED, 27, 28, 29 } - }, { - { 95, 63 }, { 85, 39 }, { 85, 21 }, { 85, 4 }, { 68, 2 }, { 68, 19 }, { 68, 37 }, - { 80, 58 }, { 60, 55 }, { 50, 35 }, { 50, 13 }, { 50, 0 }, { 33, 3 }, { 33, 20 }, - { 33, 37 }, { 16, 42 }, { 16, 24 }, { 16, 7 }, { 0, 7 }, { 0, 24 }, { 0, 41 }, - { 85, 16 }, { 50, 13 }, { 16, 20 }, { 16, 38 }, { 50, 48 }, { 85, 52 }, { 129, 63 }, - { 139, 39 }, { 139, 21 }, { 139, 4 }, { 156, 2 }, { 156, 19 }, { 156, 37 }, { 144, 58 }, - { 164, 55 }, { 174, 35 }, { 174, 13 }, { 174, 0 }, { 191, 3 }, { 191, 20 }, { 191, 37 }, - { 208, 42 }, { 208, 24 }, { 208, 7 }, { 224, 7 }, { 224, 24 }, { 224, 41 }, { 139, 16 }, - { 174, 13 }, { 208, 20 }, { 208, 38 }, { 174, 48 }, { 139, 52 }, - }, { - 1, 1, 1, 1, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, - 1, 1, 4, 4, 4, 4, 4, - 2, 2, 2, 2, 2, 2, 1, - 1, 1, 4, 4, 4, 4, 4, - 1, 1, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 1, 2, - 2, 2, 2, 2, 2 - } }; + g_led_config = (led_config_t){ + {{15, 16, 17, 18, 19, 20}, + {14, 13, 12, 11, 10, 9}, + {3, 4, 5, 6, 7, 8}, + {NO_LED, NO_LED, NO_LED, 2, 1, 0}, + {47, 46, 45, 44, 43, 42}, + {36, 37, 38, 39, 40, 41}, + {35, 34, 33, 32, 31, 30}, + {NO_LED, NO_LED, NO_LED, 27, 28, 29}}, + { + {95, 63}, {85, 39}, {85, 21}, {85, 4}, {68, 2}, {68, 19}, + {68, 37}, {80, 58}, {60, 55}, {50, 35}, {50, 13}, {50, 0}, + {33, 3}, {33, 20}, {33, 37}, {16, 42}, {16, 24}, {16, 7}, + {0, 7}, {0, 24}, {0, 41}, {85, 16}, {50, 13}, {16, 20}, + {16, 38}, {50, 48}, {85, 52}, {129, 63}, {139, 39}, {139, 21}, + {139, 4}, {156, 2}, {156, 19}, {156, 37}, {144, 58}, {164, 55}, + {174, 35}, {174, 13}, {174, 0}, {191, 3}, {191, 20}, {191, 37}, + {208, 42}, {208, 24}, {208, 7}, {224, 7}, {224, 24}, {224, 41}, + {139, 16}, {174, 13}, {208, 20}, {208, 38}, {174, 48}, {139, 52}, + }, + {1, 1, 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 4, 4, + 4, 4, 4, 2, 2, 2, 2, 2, 2, 1, 1, 1, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 2, 2, 2, 2, 2, 2}}; } -#endif //rgb matrix +#endif // rgb matrix diff --git a/keymaps/f60/keymap.c b/keymaps/f60/keymap.c index 082b698..b091a24 100644 --- a/keymaps/f60/keymap.c +++ b/keymaps/f60/keymap.c @@ -1,9 +1,12 @@ // Copyright 2024 jack (@waffle87) // SPDX-License-Identifier: GPL-2.0-or-later #include "waffle.h" -#define ___NONE___ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +#define ___NONE___ \ + _______, _______, _______, _______, _______, _______, _______, _______, \ + _______, _______, _______, _______, _______ #define SPC_OFFSET 20 +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT_waffle_60_ts( _______, ___NONE___, @@ -27,3 +30,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______ ) }; +// clang-format on diff --git a/keymaps/ferris/keymap.c b/keymaps/ferris/keymap.c index 6e02669..891a427 100644 --- a/keymaps/ferris/keymap.c +++ b/keymaps/ferris/keymap.c @@ -3,6 +3,7 @@ #include "waffle.h" #define XX NO_LED +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT_waffle( ___BASE1___, @@ -52,3 +53,4 @@ led_config_t g_led_config = {{ 4,4,4,4,4, 4,4 }}; +// clang-format on diff --git a/keymaps/kyria/keymap.c b/keymaps/kyria/keymap.c index 376b6d3..cd07c79 100644 --- a/keymaps/kyria/keymap.c +++ b/keymaps/kyria/keymap.c @@ -2,6 +2,7 @@ // SPDX-License-Identifier: GPL-2.0-or-later #include "waffle.h" +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT_waffle( KC_NO, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_NO, @@ -24,6 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; +// clang-format on #ifdef OLED_ENABLE bool oled_task_keymap(void) { diff --git a/keymaps/microdox/keymap.c b/keymaps/microdox/keymap.c index f90f226..a9c96e2 100644 --- a/keymaps/microdox/keymap.c +++ b/keymaps/microdox/keymap.c @@ -1,6 +1,8 @@ // Copyright 2024 jack (@waffle87) // SPDX-License-Identifier: GPL-2.0-or-later #include "waffle.h" + +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_BASE] = LAYOUT_waffle_3x5( ___BASE1___, @@ -21,13 +23,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ___RAISE4___ ) }; +// clang-format on #ifdef OLED_ENABLE oled_rotation_t oled_init_user(oled_rotation_t rotation) { if (is_keyboard_master()) return 0; else - return 2; + return 2; return rotation; } diff --git a/waffle/autocorrect_data.h b/waffle/autocorrect_data.h index 40f30f0..c44ea2d 100644 --- a/waffle/autocorrect_data.h +++ b/waffle/autocorrect_data.h @@ -6,371 +6,492 @@ #define DICTIONARY_SIZE 5867 static const uint8_t autocorrect_data[DICTIONARY_SIZE] PROGMEM = { - 0x6C, 0x40, 0x00, 0x04, 0x0A, 0x01, 0x06, 0x22, 0x01, 0x07, 0x7D, 0x01, 0x08, 0x47, 0x03, 0x09, - 0x8E, 0x08, 0x0A, 0xBF, 0x08, 0x0B, 0x43, 0x09, 0x0C, 0xD2, 0x09, 0x0E, 0xDC, 0x09, 0x0F, 0xE8, - 0x09, 0x10, 0x09, 0x0B, 0x11, 0x3B, 0x0B, 0x12, 0x58, 0x0D, 0x13, 0x8C, 0x0D, 0x15, 0xA6, 0x0D, - 0x16, 0x6D, 0x0F, 0x17, 0x21, 0x11, 0x19, 0x59, 0x14, 0x1A, 0x90, 0x14, 0x1C, 0xB6, 0x14, 0x00, - 0x46, 0x5F, 0x00, 0x07, 0x67, 0x00, 0x08, 0x71, 0x00, 0x0A, 0x9C, 0x00, 0x0F, 0xA8, 0x00, 0x11, - 0xB0, 0x00, 0x12, 0xB8, 0x00, 0x16, 0xC2, 0x00, 0x17, 0xCD, 0x00, 0x18, 0x00, 0x01, 0x00, 0x0C, - 0x0B, 0x1A, 0x2C, 0x00, 0x80, 0x68, 0x00, 0x16, 0x08, 0x18, 0x2C, 0x00, 0x83, 0x73, 0x65, 0x64, - 0x00, 0x4B, 0x78, 0x00, 0x17, 0x8D, 0x00, 0x00, 0x17, 0x00, 0x6C, 0x81, 0x00, 0x12, 0x88, 0x00, - 0x00, 0x08, 0x0B, 0x17, 0x2C, 0x00, 0x84, 0x00, 0x2C, 0x00, 0x80, 0x72, 0x00, 0x0C, 0x15, 0x1A, - 0x1C, 0x13, 0x12, 0x06, 0x00, 0x85, 0x72, 0x69, 0x67, 0x68, 0x74, 0x00, 0x11, 0x0C, 0x10, 0x10, - 0x12, 0x06, 0x00, 0x84, 0x69, 0x6E, 0x67, 0x00, 0x18, 0x12, 0x1A, 0x2C, 0x00, 0x80, 0x64, 0x00, - 0x0C, 0x12, 0x0A, 0x2C, 0x00, 0x80, 0x67, 0x00, 0x0F, 0x16, 0x04, 0x2C, 0x00, 0x83, 0x6C, 0x73, - 0x6F, 0x00, 0x08, 0x16, 0x12, 0x12, 0x0F, 0x00, 0x84, 0x73, 0x65, 0x73, 0x00, 0x44, 0xDA, 0x00, - 0x0C, 0xE3, 0x00, 0x12, 0xED, 0x00, 0x18, 0xF7, 0x00, 0x00, 0x15, 0x0A, 0x2C, 0x00, 0x82, 0x65, - 0x61, 0x74, 0x00, 0x15, 0x06, 0x12, 0x13, 0x1C, 0x0B, 0x00, 0x80, 0x65, 0x00, 0x0F, 0x04, 0x2C, - 0x00, 0x83, 0x20, 0x6C, 0x6F, 0x74, 0x00, 0x16, 0x0D, 0x2C, 0x00, 0x83, 0x75, 0x73, 0x74, 0x00, - 0x17, 0x16, 0x0D, 0x2C, 0x00, 0x83, 0x75, 0x73, 0x74, 0x00, 0x57, 0x11, 0x01, 0x1C, 0x1A, 0x01, - 0x00, 0x18, 0x12, 0x05, 0x04, 0x00, 0x80, 0x20, 0x61, 0x00, 0x07, 0x12, 0x17, 0x00, 0x81, 0x61, - 0x79, 0x00, 0x4B, 0x2C, 0x01, 0x0C, 0x35, 0x01, 0x0E, 0x75, 0x01, 0x00, 0x17, 0x0C, 0x1A, 0x16, - 0x00, 0x81, 0x63, 0x68, 0x00, 0x50, 0x42, 0x01, 0x15, 0x4E, 0x01, 0x16, 0x5C, 0x01, 0x17, 0x65, - 0x01, 0x00, 0x11, 0x04, 0x1C, 0x07, 0x00, 0x84, 0x6E, 0x61, 0x6D, 0x69, 0x63, 0x00, 0x17, 0x08, - 0x10, 0x1C, 0x16, 0x00, 0x84, 0x6D, 0x65, 0x74, 0x72, 0x69, 0x63, 0x00, 0x04, 0x0F, 0x06, 0x00, - 0x81, 0x73, 0x69, 0x63, 0x00, 0x08, 0x0B, 0x17, 0x16, 0x04, 0x00, 0x86, 0x65, 0x73, 0x74, 0x68, - 0x65, 0x74, 0x69, 0x63, 0x00, 0x08, 0x0B, 0x06, 0x00, 0x81, 0x63, 0x6B, 0x00, 0x44, 0x93, 0x01, - 0x08, 0x9F, 0x01, 0x0F, 0x7F, 0x02, 0x11, 0xA7, 0x02, 0x12, 0xDF, 0x02, 0x15, 0xFA, 0x02, 0x18, - 0x32, 0x03, 0x00, 0x0C, 0x0F, 0x19, 0x11, 0x0C, 0x00, 0x83, 0x61, 0x6C, 0x69, 0x64, 0x00, 0x46, - 0xC1, 0x01, 0x07, 0xCB, 0x01, 0x08, 0xD5, 0x01, 0x09, 0xE0, 0x01, 0x0A, 0xED, 0x01, 0x0C, 0xF7, - 0x01, 0x13, 0x11, 0x02, 0x15, 0x2E, 0x02, 0x16, 0x51, 0x02, 0x17, 0x5D, 0x02, 0x18, 0x76, 0x02, - 0x00, 0x0C, 0x19, 0x07, 0x04, 0x00, 0x82, 0x73, 0x65, 0x64, 0x00, 0x08, 0x05, 0x10, 0x08, 0x00, - 0x81, 0x64, 0x65, 0x64, 0x00, 0x15, 0x0A, 0x0A, 0x04, 0x00, 0x84, 0x72, 0x65, 0x65, 0x64, 0x00, - 0x0C, 0x16, 0x0C, 0x17, 0x04, 0x16, 0x00, 0x83, 0x66, 0x69, 0x65, 0x64, 0x00, 0x11, 0x0C, 0x16, - 0x00, 0x83, 0x67, 0x6E, 0x65, 0x64, 0x00, 0x55, 0xFE, 0x01, 0x19, 0x07, 0x02, 0x00, 0x15, 0x18, - 0x05, 0x00, 0x83, 0x69, 0x65, 0x64, 0x00, 0x15, 0x08, 0x07, 0x00, 0x83, 0x69, 0x76, 0x65, 0x64, - 0x00, 0x44, 0x18, 0x02, 0x16, 0x24, 0x02, 0x00, 0x0F, 0x16, 0x08, 0x00, 0x85, 0x6C, 0x61, 0x70, - 0x73, 0x65, 0x64, 0x00, 0x04, 0x0F, 0x08, 0x00, 0x83, 0x70, 0x73, 0x65, 0x64, 0x00, 0x48, 0x38, - 0x02, 0x0A, 0x41, 0x02, 0x18, 0x48, 0x02, 0x00, 0x09, 0x08, 0x15, 0x00, 0x81, 0x72, 0x65, 0x64, - 0x00, 0x04, 0x2C, 0x00, 0x80, 0x65, 0x64, 0x00, 0x06, 0x06, 0x12, 0x00, 0x81, 0x72, 0x65, 0x64, - 0x00, 0x04, 0x13, 0x0F, 0x08, 0x00, 0x84, 0x61, 0x70, 0x73, 0x65, 0x64, 0x00, 0x44, 0x64, 0x02, - 0x16, 0x6F, 0x02, 0x00, 0x08, 0x0F, 0x08, 0x15, 0x00, 0x84, 0x61, 0x74, 0x65, 0x64, 0x00, 0x11, - 0x0C, 0x00, 0x80, 0x61, 0x64, 0x00, 0x0F, 0x06, 0x11, 0x0C, 0x00, 0x81, 0x64, 0x65, 0x00, 0x4C, - 0x86, 0x02, 0x12, 0x9B, 0x02, 0x00, 0x08, 0x00, 0x49, 0x8F, 0x02, 0x1C, 0x95, 0x02, 0x00, 0x83, - 0x69, 0x65, 0x6C, 0x64, 0x00, 0x83, 0x69, 0x65, 0x6C, 0x64, 0x00, 0x16, 0x08, 0x15, 0x0B, 0x17, - 0x00, 0x82, 0x68, 0x6F, 0x6C, 0x64, 0x00, 0x48, 0xB1, 0x02, 0x0C, 0xBC, 0x02, 0x18, 0xC6, 0x02, - 0x00, 0x15, 0x0C, 0x09, 0x00, 0x84, 0x72, 0x69, 0x65, 0x6E, 0x64, 0x00, 0x08, 0x15, 0x09, 0x00, - 0x83, 0x69, 0x65, 0x6E, 0x64, 0x00, 0x52, 0xCD, 0x02, 0x15, 0xD7, 0x02, 0x00, 0x04, 0x2C, 0x00, - 0x83, 0x72, 0x6F, 0x75, 0x6E, 0x64, 0x00, 0x04, 0x00, 0x82, 0x6F, 0x75, 0x6E, 0x64, 0x00, 0x4C, - 0xE6, 0x02, 0x15, 0xF1, 0x02, 0x00, 0x08, 0x15, 0x13, 0x00, 0x84, 0x65, 0x72, 0x69, 0x6F, 0x64, - 0x00, 0x06, 0x08, 0x15, 0x00, 0x82, 0x6F, 0x72, 0x64, 0x00, 0x44, 0x04, 0x03, 0x08, 0x0F, 0x03, - 0x18, 0x28, 0x03, 0x00, 0x1A, 0x12, 0x09, 0x00, 0x83, 0x72, 0x77, 0x61, 0x72, 0x64, 0x00, 0x47, - 0x16, 0x03, 0x0C, 0x20, 0x03, 0x00, 0x0C, 0x16, 0x11, 0x12, 0x06, 0x00, 0x80, 0x65, 0x64, 0x00, - 0x1A, 0x00, 0x83, 0x65, 0x69, 0x72, 0x64, 0x00, 0x04, 0x0A, 0x2C, 0x00, 0x83, 0x75, 0x61, 0x72, - 0x64, 0x00, 0x12, 0x00, 0x4B, 0x3B, 0x03, 0x15, 0x41, 0x03, 0x00, 0x16, 0x00, 0x80, 0x6C, 0x64, - 0x00, 0x04, 0x00, 0x80, 0x6E, 0x64, 0x00, 0x44, 0x75, 0x03, 0x05, 0x82, 0x03, 0x06, 0xAD, 0x03, - 0x07, 0x2D, 0x04, 0x08, 0x49, 0x04, 0x0A, 0x9D, 0x04, 0x0B, 0x15, 0x05, 0x0C, 0x66, 0x05, 0x0F, - 0x6F, 0x05, 0x11, 0x31, 0x06, 0x15, 0x3D, 0x06, 0x16, 0xA7, 0x06, 0x17, 0x38, 0x07, 0x18, 0x13, - 0x08, 0x19, 0x4C, 0x08, 0x00, 0x06, 0x13, 0x16, 0x08, 0x10, 0x04, 0x11, 0x00, 0x82, 0x61, 0x63, - 0x65, 0x00, 0x44, 0x89, 0x03, 0x0F, 0x93, 0x03, 0x00, 0x0F, 0x0C, 0x04, 0x19, 0x04, 0x00, 0x80, - 0x6C, 0x65, 0x00, 0x44, 0x9A, 0x03, 0x18, 0xA5, 0x03, 0x00, 0x0F, 0x0C, 0x04, 0x19, 0x04, 0x00, - 0x82, 0x62, 0x6C, 0x65, 0x00, 0x12, 0x07, 0x00, 0x82, 0x62, 0x6C, 0x65, 0x00, 0x48, 0xBA, 0x03, - 0x0C, 0xC5, 0x03, 0x11, 0xCE, 0x03, 0x13, 0x20, 0x04, 0x00, 0x15, 0x08, 0x09, 0x08, 0x15, 0x00, - 0x81, 0x6E, 0x63, 0x65, 0x00, 0x08, 0x13, 0x00, 0x83, 0x69, 0x65, 0x63, 0x65, 0x00, 0x44, 0xD8, - 0x03, 0x08, 0xE5, 0x03, 0x18, 0x16, 0x04, 0x00, 0x17, 0x08, 0x13, 0x10, 0x12, 0x06, 0x00, 0x83, - 0x65, 0x6E, 0x63, 0x65, 0x00, 0x55, 0xEC, 0x03, 0x17, 0x0B, 0x04, 0x00, 0x08, 0x00, 0x49, 0xF5, - 0x03, 0x0F, 0x02, 0x04, 0x00, 0x15, 0x2C, 0x00, 0x86, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6E, 0x63, - 0x65, 0x00, 0x12, 0x17, 0x00, 0x83, 0x61, 0x6E, 0x63, 0x65, 0x00, 0x11, 0x0C, 0x04, 0x10, 0x00, - 0x81, 0x61, 0x6E, 0x63, 0x65, 0x00, 0x14, 0x08, 0x16, 0x00, 0x82, 0x65, 0x6E, 0x63, 0x65, 0x00, - 0x04, 0x16, 0x08, 0x10, 0x04, 0x11, 0x00, 0x83, 0x70, 0x61, 0x63, 0x65, 0x00, 0x0C, 0x15, 0x08, - 0x19, 0x00, 0x52, 0x39, 0x04, 0x19, 0x3F, 0x04, 0x00, 0x82, 0x72, 0x69, 0x64, 0x65, 0x00, 0x12, - 0x00, 0x85, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x00, 0x17, 0x00, 0x44, 0x58, 0x04, 0x0C, 0x63, - 0x04, 0x11, 0x6D, 0x04, 0x17, 0x90, 0x04, 0x00, 0x15, 0x04, 0x18, 0x0A, 0x00, 0x82, 0x6E, 0x74, - 0x65, 0x65, 0x00, 0x10, 0x10, 0x12, 0x06, 0x00, 0x81, 0x74, 0x65, 0x65, 0x00, 0x04, 0x15, 0x00, - 0x44, 0x77, 0x04, 0x18, 0x83, 0x04, 0x00, 0x0A, 0x00, 0x86, 0x75, 0x61, 0x72, 0x61, 0x6E, 0x74, - 0x65, 0x65, 0x00, 0x04, 0x0A, 0x00, 0x87, 0x75, 0x61, 0x72, 0x61, 0x6E, 0x74, 0x65, 0x65, 0x00, - 0x0C, 0x10, 0x12, 0x06, 0x00, 0x84, 0x6D, 0x69, 0x74, 0x74, 0x65, 0x65, 0x00, 0x44, 0xA7, 0x04, - 0x07, 0xEA, 0x04, 0x10, 0x0C, 0x05, 0x00, 0x4A, 0xB4, 0x04, 0x11, 0xBF, 0x04, 0x16, 0xC8, 0x04, - 0x18, 0xD1, 0x04, 0x00, 0x15, 0x12, 0x10, 0x00, 0x83, 0x74, 0x67, 0x61, 0x67, 0x65, 0x00, 0x0B, - 0x06, 0x00, 0x83, 0x61, 0x6E, 0x67, 0x65, 0x00, 0x08, 0x10, 0x00, 0x82, 0x73, 0x61, 0x67, 0x65, - 0x00, 0x0A, 0x00, 0x6C, 0xDA, 0x04, 0x04, 0xE0, 0x04, 0x00, 0x83, 0x61, 0x75, 0x67, 0x65, 0x00, - 0x0F, 0x00, 0x84, 0x6E, 0x67, 0x75, 0x61, 0x67, 0x65, 0x00, 0x08, 0x0F, 0x00, 0x44, 0xF7, 0x04, - 0x0C, 0xFD, 0x04, 0x0F, 0x06, 0x05, 0x00, 0x83, 0x6C, 0x65, 0x67, 0x65, 0x00, 0x19, 0x0C, 0x15, - 0x13, 0x00, 0x82, 0x67, 0x65, 0x00, 0x04, 0x00, 0x82, 0x67, 0x65, 0x00, 0x04, 0x0C, 0x00, 0x83, - 0x6D, 0x61, 0x67, 0x65, 0x00, 0x17, 0x00, 0x47, 0x27, 0x05, 0x10, 0x31, 0x05, 0x12, 0x3B, 0x05, - 0x16, 0x44, 0x05, 0x17, 0x4D, 0x05, 0x00, 0x11, 0x04, 0x2C, 0x00, 0x82, 0x20, 0x74, 0x68, 0x65, - 0x00, 0x12, 0x15, 0x09, 0x00, 0x82, 0x20, 0x74, 0x68, 0x65, 0x00, 0x17, 0x2C, 0x00, 0x82, 0x20, - 0x74, 0x68, 0x65, 0x00, 0x04, 0x2C, 0x00, 0x82, 0x20, 0x74, 0x68, 0x65, 0x00, 0x44, 0x54, 0x05, - 0x18, 0x5C, 0x05, 0x00, 0x2C, 0x00, 0x82, 0x20, 0x74, 0x68, 0x65, 0x00, 0x12, 0x05, 0x04, 0x00, - 0x82, 0x20, 0x74, 0x68, 0x65, 0x00, 0x1D, 0x16, 0x2C, 0x00, 0x82, 0x69, 0x7A, 0x65, 0x00, 0x45, - 0x82, 0x05, 0x0C, 0xF3, 0x05, 0x13, 0xFE, 0x05, 0x16, 0x1A, 0x06, 0x17, 0x22, 0x06, 0x19, 0x2A, - 0x06, 0x00, 0x44, 0x8C, 0x05, 0x0C, 0xDC, 0x05, 0x0F, 0xE8, 0x05, 0x00, 0x4A, 0x96, 0x05, 0x0C, - 0xA0, 0x05, 0x0F, 0xBE, 0x05, 0x00, 0x0C, 0x0F, 0x08, 0x00, 0x83, 0x69, 0x62, 0x6C, 0x65, 0x00, - 0x0F, 0x00, 0x44, 0xA9, 0x05, 0x0C, 0xB4, 0x05, 0x00, 0x19, 0x04, 0x00, 0x85, 0x69, 0x6C, 0x61, - 0x62, 0x6C, 0x65, 0x00, 0x04, 0x19, 0x04, 0x00, 0x84, 0x61, 0x62, 0x6C, 0x65, 0x00, 0x44, 0xC5, - 0x05, 0x0C, 0xD0, 0x05, 0x00, 0x19, 0x04, 0x00, 0x84, 0x69, 0x6C, 0x61, 0x62, 0x6C, 0x65, 0x00, - 0x19, 0x04, 0x00, 0x85, 0x61, 0x69, 0x6C, 0x61, 0x62, 0x6C, 0x65, 0x00, 0x04, 0x0F, 0x0C, 0x04, - 0x19, 0x04, 0x00, 0x83, 0x62, 0x6C, 0x65, 0x00, 0x0C, 0x04, 0x19, 0x04, 0x00, 0x82, 0x61, 0x62, - 0x6C, 0x65, 0x00, 0x1A, 0x0B, 0x2C, 0x00, 0x84, 0x77, 0x68, 0x69, 0x6C, 0x65, 0x00, 0x48, 0x05, - 0x06, 0x12, 0x0F, 0x06, 0x00, 0x12, 0x13, 0x00, 0x84, 0x65, 0x6F, 0x70, 0x6C, 0x65, 0x00, 0x08, - 0x12, 0x13, 0x00, 0x85, 0x65, 0x6F, 0x70, 0x6C, 0x65, 0x00, 0x04, 0x09, 0x00, 0x82, 0x6C, 0x73, - 0x65, 0x00, 0x0C, 0x0F, 0x00, 0x81, 0x74, 0x6C, 0x65, 0x00, 0x08, 0x0F, 0x00, 0x81, 0x65, 0x6C, - 0x00, 0x0C, 0x08, 0x0A, 0x1C, 0x0B, 0x00, 0x83, 0x69, 0x65, 0x6E, 0x65, 0x00, 0x46, 0x4D, 0x06, - 0x0C, 0x57, 0x06, 0x12, 0x63, 0x06, 0x15, 0x8A, 0x06, 0x18, 0x91, 0x06, 0x00, 0x12, 0x16, 0x2C, - 0x00, 0x83, 0x63, 0x6F, 0x72, 0x65, 0x00, 0x18, 0x14, 0x04, 0x00, 0x84, 0x63, 0x71, 0x75, 0x69, - 0x72, 0x65, 0x00, 0x47, 0x6D, 0x06, 0x08, 0x76, 0x06, 0x09, 0x7E, 0x06, 0x00, 0x08, 0x05, 0x00, - 0x83, 0x66, 0x6F, 0x72, 0x65, 0x00, 0x05, 0x00, 0x82, 0x66, 0x6F, 0x72, 0x65, 0x00, 0x15, 0x08, - 0x0B, 0x17, 0x00, 0x83, 0x65, 0x66, 0x6F, 0x72, 0x65, 0x00, 0x08, 0x0B, 0x1A, 0x00, 0x81, 0x65, - 0x00, 0x17, 0x00, 0x6C, 0x9A, 0x06, 0x04, 0x9F, 0x06, 0x00, 0x82, 0x72, 0x75, 0x65, 0x00, 0x10, - 0x04, 0x00, 0x82, 0x65, 0x75, 0x72, 0x00, 0x44, 0xBD, 0x06, 0x08, 0xE1, 0x06, 0x0C, 0xE9, 0x06, - 0x0F, 0xF8, 0x06, 0x11, 0x01, 0x07, 0x12, 0x1F, 0x07, 0x18, 0x2C, 0x07, 0x00, 0x46, 0xC7, 0x06, - 0x08, 0xCF, 0x06, 0x0F, 0xD9, 0x06, 0x00, 0x08, 0x05, 0x00, 0x81, 0x75, 0x73, 0x65, 0x00, 0x05, - 0x2C, 0x00, 0x82, 0x63, 0x61, 0x75, 0x73, 0x65, 0x00, 0x09, 0x00, 0x83, 0x61, 0x6C, 0x73, 0x65, - 0x00, 0x08, 0x0B, 0x17, 0x00, 0x82, 0x73, 0x65, 0x00, 0x06, 0x15, 0x08, 0x06, 0x1B, 0x08, 0x00, - 0x86, 0x65, 0x72, 0x63, 0x69, 0x73, 0x65, 0x00, 0x0C, 0x04, 0x09, 0x00, 0x83, 0x6C, 0x73, 0x65, - 0x00, 0x48, 0x08, 0x07, 0x12, 0x13, 0x07, 0x00, 0x16, 0x0C, 0x0F, 0x00, 0x84, 0x63, 0x65, 0x6E, - 0x73, 0x65, 0x00, 0x13, 0x08, 0x15, 0x00, 0x84, 0x73, 0x70, 0x6F, 0x6E, 0x73, 0x65, 0x00, 0x13, - 0x11, 0x04, 0x15, 0x17, 0x00, 0x83, 0x73, 0x70, 0x6F, 0x73, 0x65, 0x00, 0x06, 0x04, 0x08, 0x05, - 0x00, 0x84, 0x63, 0x61, 0x75, 0x73, 0x65, 0x00, 0x44, 0x45, 0x07, 0x08, 0xF3, 0x07, 0x0F, 0xFE, - 0x07, 0x19, 0x0A, 0x08, 0x00, 0x47, 0x55, 0x07, 0x0A, 0x7A, 0x07, 0x0F, 0x87, 0x07, 0x13, 0xCA, - 0x07, 0x15, 0xD4, 0x07, 0x00, 0x12, 0x10, 0x00, 0x50, 0x5F, 0x07, 0x12, 0x6E, 0x07, 0x00, 0x12, - 0x06, 0x04, 0x00, 0x87, 0x63, 0x6F, 0x6D, 0x6D, 0x6F, 0x64, 0x61, 0x74, 0x65, 0x00, 0x06, 0x06, - 0x04, 0x00, 0x84, 0x6D, 0x6F, 0x64, 0x61, 0x74, 0x65, 0x00, 0x12, 0x13, 0x12, 0x15, 0x13, 0x00, - 0x84, 0x61, 0x67, 0x61, 0x74, 0x65, 0x00, 0x46, 0x91, 0x07, 0x13, 0x9E, 0x07, 0x18, 0xAB, 0x07, - 0x00, 0x18, 0x0F, 0x04, 0x06, 0x00, 0x85, 0x63, 0x75, 0x6C, 0x61, 0x74, 0x65, 0x00, 0x10, 0x04, - 0x08, 0x17, 0x00, 0x86, 0x6D, 0x70, 0x6C, 0x61, 0x74, 0x65, 0x00, 0x46, 0xB2, 0x07, 0x0F, 0xBF, - 0x07, 0x00, 0x18, 0x0F, 0x04, 0x06, 0x00, 0x86, 0x63, 0x75, 0x6C, 0x61, 0x74, 0x65, 0x00, 0x04, - 0x06, 0x00, 0x84, 0x63, 0x75, 0x6C, 0x61, 0x74, 0x65, 0x00, 0x07, 0x18, 0x00, 0x84, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x00, 0x48, 0xDB, 0x07, 0x18, 0xE8, 0x07, 0x00, 0x11, 0x04, 0x0A, 0x00, 0x86, - 0x65, 0x6E, 0x65, 0x72, 0x61, 0x74, 0x65, 0x00, 0x06, 0x04, 0x00, 0x84, 0x63, 0x75, 0x72, 0x61, - 0x74, 0x65, 0x00, 0x0F, 0x0F, 0x04, 0x13, 0x00, 0x83, 0x65, 0x74, 0x74, 0x65, 0x00, 0x04, 0x13, - 0x10, 0x08, 0x17, 0x00, 0x83, 0x6C, 0x61, 0x74, 0x65, 0x00, 0x0C, 0x15, 0x13, 0x00, 0x81, 0x61, - 0x74, 0x65, 0x00, 0x4A, 0x1D, 0x08, 0x0C, 0x29, 0x08, 0x16, 0x33, 0x08, 0x00, 0x08, 0x0F, 0x0F, - 0x12, 0x06, 0x00, 0x82, 0x61, 0x67, 0x75, 0x65, 0x00, 0x14, 0x11, 0x18, 0x00, 0x83, 0x69, 0x71, - 0x75, 0x65, 0x00, 0x44, 0x3A, 0x08, 0x15, 0x42, 0x08, 0x00, 0x06, 0x2C, 0x00, 0x82, 0x75, 0x73, - 0x65, 0x00, 0x08, 0x13, 0x00, 0x84, 0x75, 0x72, 0x73, 0x75, 0x65, 0x00, 0x4C, 0x53, 0x08, 0x12, - 0x78, 0x08, 0x00, 0x48, 0x5D, 0x08, 0x0B, 0x67, 0x08, 0x0F, 0x70, 0x08, 0x00, 0x0F, 0x08, 0x05, - 0x00, 0x83, 0x69, 0x65, 0x76, 0x65, 0x00, 0x06, 0x04, 0x2C, 0x00, 0x81, 0x65, 0x76, 0x65, 0x00, - 0x08, 0x05, 0x00, 0x81, 0x65, 0x76, 0x65, 0x00, 0x52, 0x7F, 0x08, 0x19, 0x86, 0x08, 0x00, 0x15, - 0x13, 0x00, 0x82, 0x76, 0x65, 0x00, 0x05, 0x04, 0x00, 0x83, 0x6F, 0x76, 0x65, 0x00, 0x4C, 0x95, - 0x08, 0x11, 0xB7, 0x08, 0x00, 0x08, 0x00, 0x4B, 0xA1, 0x08, 0x0F, 0xA8, 0x08, 0x15, 0xB0, 0x08, - 0x00, 0x06, 0x00, 0x82, 0x69, 0x65, 0x66, 0x00, 0x08, 0x05, 0x00, 0x82, 0x69, 0x65, 0x66, 0x00, - 0x05, 0x00, 0x82, 0x69, 0x65, 0x66, 0x00, 0x18, 0x12, 0x09, 0x2C, 0x00, 0x80, 0x64, 0x00, 0x4C, - 0xC6, 0x08, 0x11, 0xD0, 0x08, 0x00, 0x11, 0x12, 0x0A, 0x2C, 0x00, 0x82, 0x69, 0x6E, 0x67, 0x00, - 0x48, 0xDA, 0x08, 0x0C, 0xE3, 0x08, 0x15, 0x39, 0x09, 0x00, 0x0C, 0x05, 0x00, 0x83, 0x65, 0x69, - 0x6E, 0x67, 0x00, 0x48, 0xF6, 0x08, 0x0B, 0x00, 0x09, 0x0F, 0x0D, 0x09, 0x15, 0x19, 0x09, 0x17, - 0x24, 0x09, 0x1C, 0x2E, 0x09, 0x00, 0x0B, 0x06, 0x04, 0x06, 0x00, 0x83, 0x69, 0x6E, 0x67, 0x00, - 0x17, 0x06, 0x04, 0x10, 0x00, 0x85, 0x74, 0x63, 0x68, 0x69, 0x6E, 0x67, 0x00, 0x08, 0x0C, 0x06, - 0x00, 0x85, 0x65, 0x69, 0x6C, 0x69, 0x6E, 0x67, 0x00, 0x18, 0x06, 0x08, 0x15, 0x00, 0x82, 0x72, - 0x69, 0x6E, 0x67, 0x00, 0x0B, 0x2C, 0x00, 0x84, 0x74, 0x68, 0x69, 0x6E, 0x67, 0x00, 0x17, 0x1C, - 0x11, 0x04, 0x00, 0x83, 0x68, 0x69, 0x6E, 0x67, 0x00, 0x0C, 0x17, 0x16, 0x00, 0x83, 0x72, 0x69, - 0x6E, 0x67, 0x00, 0x46, 0x53, 0x09, 0x08, 0x73, 0x09, 0x0A, 0x7F, 0x09, 0x16, 0x89, 0x09, 0x17, - 0x9B, 0x09, 0x00, 0x4C, 0x5A, 0x09, 0x15, 0x64, 0x09, 0x00, 0x17, 0x1A, 0x16, 0x00, 0x83, 0x69, - 0x74, 0x63, 0x68, 0x00, 0x04, 0x08, 0x16, 0x04, 0x08, 0x15, 0x00, 0x86, 0x73, 0x65, 0x61, 0x72, - 0x63, 0x68, 0x00, 0x17, 0x07, 0x11, 0x04, 0x2C, 0x00, 0x82, 0x20, 0x74, 0x68, 0x65, 0x00, 0x11, - 0x08, 0x15, 0x17, 0x16, 0x00, 0x80, 0x74, 0x68, 0x00, 0x0C, 0x0F, 0x13, 0x10, 0x12, 0x06, 0x04, - 0x00, 0x86, 0x63, 0x6F, 0x6D, 0x70, 0x6C, 0x69, 0x73, 0x68, 0x00, 0x4A, 0xA5, 0x09, 0x0C, 0xBD, - 0x09, 0x15, 0xC8, 0x09, 0x00, 0x48, 0xAC, 0x09, 0x0C, 0xB6, 0x09, 0x00, 0x15, 0x17, 0x16, 0x00, - 0x82, 0x6E, 0x67, 0x74, 0x68, 0x00, 0x08, 0x0B, 0x00, 0x81, 0x68, 0x74, 0x00, 0x1A, 0x07, 0x11, - 0x04, 0x05, 0x00, 0x81, 0x64, 0x74, 0x68, 0x00, 0x18, 0x17, 0x2C, 0x00, 0x83, 0x72, 0x75, 0x74, - 0x68, 0x00, 0x15, 0x08, 0x0B, 0x17, 0x2C, 0x00, 0x81, 0x69, 0x72, 0x00, 0x11, 0x0C, 0x17, 0x0B, - 0x00, 0x84, 0x74, 0x68, 0x69, 0x6E, 0x6B, 0x00, 0x44, 0xFE, 0x09, 0x07, 0x52, 0x0A, 0x08, 0x76, - 0x0A, 0x09, 0xCB, 0x0A, 0x0F, 0xD4, 0x0A, 0x17, 0xF1, 0x0A, 0x18, 0xFA, 0x0A, 0x00, 0x4C, 0x08, - 0x0A, 0x17, 0x13, 0x0A, 0x18, 0x2C, 0x0A, 0x00, 0x06, 0x13, 0x1C, 0x17, 0x00, 0x83, 0x69, 0x63, - 0x61, 0x6C, 0x00, 0x4C, 0x1A, 0x0A, 0x18, 0x22, 0x0A, 0x00, 0x11, 0x0C, 0x00, 0x81, 0x69, 0x61, - 0x6C, 0x00, 0x15, 0x0C, 0x19, 0x00, 0x83, 0x74, 0x75, 0x61, 0x6C, 0x00, 0x51, 0x36, 0x0A, 0x15, - 0x3F, 0x0A, 0x17, 0x48, 0x0A, 0x00, 0x04, 0x2C, 0x00, 0x82, 0x6E, 0x75, 0x61, 0x6C, 0x00, 0x18, - 0x17, 0x04, 0x11, 0x00, 0x82, 0x61, 0x6C, 0x00, 0x0C, 0x19, 0x00, 0x83, 0x72, 0x74, 0x75, 0x61, - 0x6C, 0x00, 0x48, 0x59, 0x0A, 0x18, 0x60, 0x0A, 0x00, 0x0C, 0x09, 0x00, 0x81, 0x6C, 0x64, 0x00, - 0x52, 0x67, 0x0A, 0x1A, 0x6D, 0x0A, 0x00, 0x06, 0x00, 0x81, 0x6C, 0x64, 0x00, 0x12, 0x00, 0x84, - 0x77, 0x6F, 0x75, 0x6C, 0x64, 0x00, 0x4A, 0x83, 0x0A, 0x0F, 0x8B, 0x0A, 0x17, 0xB9, 0x0A, 0x18, - 0xC1, 0x0A, 0x00, 0x11, 0x0C, 0x16, 0x00, 0x81, 0x6C, 0x65, 0x00, 0x44, 0x92, 0x0A, 0x0F, 0xAC, - 0x0A, 0x00, 0x15, 0x00, 0x44, 0x9B, 0x0A, 0x15, 0xA2, 0x0A, 0x00, 0x13, 0x00, 0x81, 0x6C, 0x65, - 0x6C, 0x00, 0x04, 0x13, 0x00, 0x84, 0x61, 0x6C, 0x6C, 0x65, 0x6C, 0x00, 0x04, 0x15, 0x15, 0x04, - 0x13, 0x00, 0x85, 0x61, 0x6C, 0x6C, 0x65, 0x6C, 0x00, 0x17, 0x0C, 0x0F, 0x00, 0x81, 0x6C, 0x65, - 0x00, 0x07, 0x08, 0x0B, 0x06, 0x16, 0x00, 0x81, 0x6C, 0x65, 0x00, 0x08, 0x16, 0x1C, 0x10, 0x00, - 0x81, 0x6C, 0x66, 0x00, 0x0C, 0x09, 0x00, 0x4F, 0xDE, 0x0A, 0x18, 0xE8, 0x0A, 0x00, 0x0F, 0x18, - 0x09, 0x00, 0x84, 0x66, 0x69, 0x6C, 0x6C, 0x00, 0x09, 0x00, 0x83, 0x6C, 0x66, 0x69, 0x6C, 0x6C, - 0x00, 0x18, 0x16, 0x08, 0x15, 0x00, 0x81, 0x6C, 0x74, 0x00, 0x09, 0x17, 0x04, 0x08, 0x15, 0x0A, - 0x00, 0x85, 0x61, 0x74, 0x65, 0x66, 0x75, 0x6C, 0x00, 0x44, 0x13, 0x0B, 0x0F, 0x24, 0x0B, 0x15, - 0x2F, 0x0B, 0x00, 0x15, 0x0A, 0x12, 0x17, 0x06, 0x08, 0x13, 0x16, 0x00, 0x84, 0x72, 0x6F, 0x67, - 0x72, 0x61, 0x6D, 0x00, 0x08, 0x05, 0x12, 0x15, 0x13, 0x00, 0x82, 0x6C, 0x65, 0x6D, 0x00, 0x12, - 0x09, 0x12, 0x06, 0x00, 0x83, 0x6E, 0x66, 0x6F, 0x72, 0x6D, 0x00, 0x44, 0x5D, 0x0B, 0x07, 0x85, - 0x0B, 0x08, 0x8E, 0x0B, 0x0A, 0x0C, 0x0C, 0x0C, 0x5F, 0x0C, 0x12, 0x79, 0x0C, 0x13, 0x15, 0x0D, - 0x15, 0x21, 0x0D, 0x16, 0x2C, 0x0D, 0x18, 0x36, 0x0D, 0x1A, 0x4D, 0x0D, 0x00, 0x0C, 0x00, 0x4A, - 0x66, 0x0B, 0x17, 0x6E, 0x0B, 0x00, 0x04, 0x2C, 0x00, 0x82, 0x61, 0x69, 0x6E, 0x00, 0x51, 0x75, - 0x0B, 0x15, 0x7D, 0x0B, 0x00, 0x12, 0x06, 0x00, 0x82, 0x61, 0x69, 0x6E, 0x00, 0x08, 0x06, 0x00, - 0x82, 0x61, 0x69, 0x6E, 0x00, 0x18, 0x12, 0x09, 0x2C, 0x00, 0x81, 0x6E, 0x64, 0x00, 0x47, 0xA4, - 0x0B, 0x08, 0xAE, 0x0B, 0x0A, 0xD8, 0x0B, 0x13, 0xE4, 0x0B, 0x15, 0xED, 0x0B, 0x16, 0xFA, 0x0B, - 0x1A, 0x04, 0x0C, 0x00, 0x0F, 0x0C, 0x0B, 0x06, 0x00, 0x81, 0x72, 0x65, 0x6E, 0x00, 0x57, 0xB5, - 0x0B, 0x1A, 0xCE, 0x0B, 0x00, 0x48, 0xBC, 0x0B, 0x1A, 0xC4, 0x0B, 0x00, 0x05, 0x00, 0x82, 0x77, - 0x65, 0x65, 0x6E, 0x00, 0x08, 0x05, 0x00, 0x84, 0x74, 0x77, 0x65, 0x65, 0x6E, 0x00, 0x08, 0x05, - 0x00, 0x83, 0x74, 0x77, 0x65, 0x65, 0x6E, 0x00, 0x12, 0x07, 0x1C, 0x0B, 0x00, 0x83, 0x72, 0x6F, - 0x67, 0x65, 0x6E, 0x00, 0x04, 0x0B, 0x2C, 0x00, 0x81, 0x70, 0x65, 0x6E, 0x00, 0x07, 0x0F, 0x0B, - 0x06, 0x00, 0x84, 0x69, 0x6C, 0x64, 0x72, 0x65, 0x6E, 0x00, 0x12, 0x12, 0x0B, 0x06, 0x00, 0x83, - 0x73, 0x65, 0x6E, 0x00, 0x17, 0x08, 0x05, 0x00, 0x80, 0x65, 0x6E, 0x00, 0x48, 0x13, 0x0C, 0x0C, - 0x1E, 0x0C, 0x00, 0x0C, 0x15, 0x12, 0x09, 0x00, 0x83, 0x65, 0x69, 0x67, 0x6E, 0x00, 0x4B, 0x31, - 0x0C, 0x0F, 0x37, 0x0C, 0x11, 0x3F, 0x0C, 0x12, 0x48, 0x0C, 0x15, 0x4F, 0x0C, 0x16, 0x56, 0x0C, - 0x00, 0x17, 0x00, 0x81, 0x6E, 0x67, 0x00, 0x0F, 0x04, 0x00, 0x83, 0x69, 0x67, 0x6E, 0x00, 0x15, - 0x04, 0x08, 0x0F, 0x00, 0x81, 0x6E, 0x67, 0x00, 0x0A, 0x2C, 0x00, 0x81, 0x6E, 0x67, 0x00, 0x17, - 0x16, 0x00, 0x81, 0x6E, 0x67, 0x00, 0x04, 0x2C, 0x00, 0x82, 0x73, 0x69, 0x67, 0x6E, 0x00, 0x4A, - 0x66, 0x0C, 0x17, 0x6E, 0x0C, 0x00, 0x04, 0x2C, 0x00, 0x81, 0x61, 0x69, 0x6E, 0x00, 0x04, 0x15, - 0x08, 0x06, 0x00, 0x83, 0x74, 0x61, 0x69, 0x6E, 0x00, 0x4C, 0x83, 0x0C, 0x16, 0xFF, 0x0C, 0x17, - 0x09, 0x0D, 0x00, 0x46, 0x8D, 0x0C, 0x16, 0x9A, 0x0C, 0x17, 0xB4, 0x0C, 0x00, 0x0C, 0x16, 0x08, - 0x07, 0x00, 0x85, 0x63, 0x69, 0x73, 0x69, 0x6F, 0x6E, 0x00, 0x44, 0xA1, 0x0C, 0x16, 0xAA, 0x0C, - 0x00, 0x0C, 0x0F, 0x00, 0x83, 0x69, 0x73, 0x6F, 0x6E, 0x00, 0x04, 0x06, 0x06, 0x12, 0x00, 0x83, - 0x69, 0x6F, 0x6E, 0x00, 0x47, 0xC4, 0x0C, 0x0C, 0xCE, 0x0C, 0x0F, 0xDD, 0x0C, 0x11, 0xE9, 0x0C, - 0x16, 0xF5, 0x0C, 0x00, 0x07, 0x04, 0x00, 0x83, 0x69, 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x17, 0x0C, - 0x13, 0x08, 0x15, 0x00, 0x86, 0x65, 0x74, 0x69, 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x04, 0x08, 0x15, - 0x00, 0x85, 0x6C, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x06, 0x18, 0x09, 0x00, 0x85, 0x6E, 0x63, - 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x12, 0x13, 0x00, 0x83, 0x69, 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x0C, - 0x19, 0x0C, 0x07, 0x00, 0x81, 0x69, 0x6F, 0x6E, 0x00, 0x0C, 0x06, 0x04, 0x15, 0x09, 0x00, 0x83, - 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x13, 0x0B, 0x04, 0x00, 0x84, 0x68, 0x61, 0x70, 0x70, 0x65, 0x6E, - 0x00, 0x17, 0x18, 0x08, 0x15, 0x00, 0x83, 0x74, 0x75, 0x72, 0x6E, 0x00, 0x0A, 0x0C, 0x0B, 0x17, - 0x00, 0x82, 0x6E, 0x67, 0x73, 0x00, 0x55, 0x3D, 0x0D, 0x17, 0x46, 0x0D, 0x00, 0x17, 0x08, 0x15, - 0x00, 0x82, 0x75, 0x72, 0x6E, 0x00, 0x08, 0x15, 0x00, 0x80, 0x72, 0x6E, 0x00, 0x12, 0x0E, 0x11, - 0x18, 0x00, 0x82, 0x6E, 0x6F, 0x77, 0x6E, 0x00, 0x47, 0x62, 0x0D, 0x11, 0x6D, 0x0D, 0x1A, 0x76, - 0x0D, 0x00, 0x08, 0x18, 0x16, 0x13, 0x00, 0x83, 0x65, 0x75, 0x64, 0x6F, 0x00, 0x1A, 0x0E, 0x2C, - 0x00, 0x82, 0x6E, 0x6F, 0x77, 0x00, 0x4F, 0x7D, 0x0D, 0x11, 0x85, 0x0D, 0x00, 0x0F, 0x12, 0x09, - 0x00, 0x81, 0x6F, 0x77, 0x00, 0x0E, 0x2C, 0x00, 0x81, 0x6F, 0x77, 0x00, 0x56, 0x93, 0x0D, 0x18, - 0x9D, 0x0D, 0x00, 0x04, 0x0B, 0x15, 0x08, 0x13, 0x00, 0x81, 0x70, 0x73, 0x00, 0x12, 0x12, 0x0F, - 0x00, 0x81, 0x6B, 0x75, 0x70, 0x00, 0x44, 0xC5, 0x0D, 0x08, 0x06, 0x0E, 0x0B, 0x13, 0x0F, 0x0F, - 0x1C, 0x0F, 0x12, 0x2A, 0x0F, 0x13, 0x3B, 0x0F, 0x16, 0x46, 0x0F, 0x17, 0x4F, 0x0F, 0x18, 0x5B, - 0x0F, 0x1C, 0x64, 0x0F, 0x00, 0x4C, 0xCF, 0x0D, 0x0F, 0xD9, 0x0D, 0x18, 0xFB, 0x0D, 0x00, 0x0F, - 0x0C, 0x10, 0x0C, 0x16, 0x00, 0x82, 0x61, 0x72, 0x00, 0x4C, 0xE0, 0x0D, 0x18, 0xEB, 0x0D, 0x00, - 0x10, 0x10, 0x0C, 0x16, 0x00, 0x84, 0x69, 0x6C, 0x61, 0x72, 0x00, 0x06, 0x0C, 0x17, 0x04, 0x13, - 0x00, 0x86, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6C, 0x61, 0x72, 0x00, 0x0F, 0x0A, 0x08, 0x15, 0x00, - 0x83, 0x75, 0x6C, 0x61, 0x72, 0x00, 0x44, 0x25, 0x0E, 0x07, 0x2D, 0x0E, 0x0B, 0x3A, 0x0E, 0x0C, - 0x77, 0x0E, 0x0F, 0x91, 0x0E, 0x10, 0x9B, 0x0E, 0x11, 0xA5, 0x0E, 0x12, 0xD1, 0x0E, 0x17, 0xD9, - 0x0E, 0x19, 0xF8, 0x0E, 0x00, 0x0F, 0x06, 0x00, 0x82, 0x65, 0x61, 0x72, 0x00, 0x11, 0x04, 0x0F, - 0x04, 0x06, 0x00, 0x84, 0x65, 0x6E, 0x64, 0x61, 0x72, 0x00, 0x4A, 0x41, 0x0E, 0x17, 0x4C, 0x0E, - 0x00, 0x0C, 0x08, 0x0B, 0x00, 0x85, 0x69, 0x67, 0x68, 0x65, 0x72, 0x00, 0x48, 0x56, 0x0E, 0x12, - 0x62, 0x0E, 0x18, 0x6E, 0x0E, 0x00, 0x0B, 0x0A, 0x12, 0x17, 0x00, 0x85, 0x65, 0x74, 0x68, 0x65, - 0x72, 0x00, 0x04, 0x11, 0x00, 0x86, 0x61, 0x6E, 0x6F, 0x74, 0x68, 0x65, 0x72, 0x00, 0x09, 0x00, - 0x83, 0x72, 0x74, 0x68, 0x65, 0x72, 0x00, 0x4B, 0x7E, 0x0E, 0x0F, 0x86, 0x0E, 0x00, 0x17, 0x2C, - 0x00, 0x82, 0x65, 0x69, 0x72, 0x00, 0x13, 0x10, 0x12, 0x06, 0x00, 0x83, 0x69, 0x6C, 0x65, 0x72, - 0x00, 0x17, 0x0C, 0x09, 0x00, 0x83, 0x6C, 0x74, 0x65, 0x72, 0x00, 0x10, 0x04, 0x15, 0x0A, 0x2C, - 0x00, 0x81, 0x61, 0x72, 0x00, 0x4C, 0xAC, 0x0E, 0x17, 0xB8, 0x0E, 0x00, 0x0A, 0x0A, 0x08, 0x05, - 0x00, 0x84, 0x69, 0x6E, 0x6E, 0x65, 0x72, 0x00, 0x4C, 0xBF, 0x0E, 0x16, 0xC8, 0x0E, 0x00, 0x12, - 0x13, 0x00, 0x83, 0x6E, 0x74, 0x65, 0x72, 0x00, 0x0C, 0x0F, 0x00, 0x82, 0x65, 0x6E, 0x65, 0x72, - 0x00, 0x09, 0x08, 0x05, 0x00, 0x81, 0x72, 0x65, 0x00, 0x4B, 0xE0, 0x0E, 0x18, 0xEA, 0x0E, 0x00, - 0x12, 0x11, 0x04, 0x00, 0x83, 0x74, 0x68, 0x65, 0x72, 0x00, 0x13, 0x12, 0x10, 0x06, 0x00, 0x86, - 0x6F, 0x6D, 0x70, 0x75, 0x74, 0x65, 0x72, 0x00, 0x48, 0xFF, 0x0E, 0x1A, 0x0A, 0x0F, 0x00, 0x08, - 0x15, 0x08, 0x0B, 0x1A, 0x00, 0x83, 0x76, 0x65, 0x72, 0x00, 0x12, 0x0B, 0x00, 0x82, 0x65, 0x76, - 0x65, 0x72, 0x00, 0x08, 0x17, 0x12, 0x00, 0x82, 0x68, 0x65, 0x72, 0x00, 0x04, 0x18, 0x06, 0x0C, - 0x17, 0x15, 0x04, 0x13, 0x00, 0x82, 0x6C, 0x61, 0x72, 0x00, 0x17, 0x04, 0x15, 0x08, 0x17, 0x11, - 0x0C, 0x00, 0x87, 0x74, 0x65, 0x72, 0x61, 0x74, 0x6F, 0x72, 0x00, 0x17, 0x0F, 0x0F, 0x18, 0x11, - 0x00, 0x82, 0x70, 0x74, 0x72, 0x00, 0x04, 0x08, 0x1C, 0x2C, 0x00, 0x81, 0x72, 0x73, 0x00, 0x12, - 0x04, 0x15, 0x08, 0x13, 0x12, 0x00, 0x82, 0x74, 0x6F, 0x72, 0x00, 0x06, 0x12, 0x2C, 0x00, 0x81, - 0x63, 0x75, 0x72, 0x00, 0x08, 0x19, 0x08, 0x2C, 0x00, 0x81, 0x72, 0x79, 0x00, 0x44, 0x83, 0x0F, - 0x08, 0xB7, 0x0F, 0x0A, 0x47, 0x10, 0x15, 0x52, 0x10, 0x16, 0x5D, 0x10, 0x17, 0xF5, 0x10, 0x18, - 0xFD, 0x10, 0x00, 0x4B, 0x90, 0x0F, 0x13, 0x9B, 0x0F, 0x15, 0xA5, 0x0F, 0x1C, 0xAE, 0x0F, 0x00, - 0x13, 0x15, 0x08, 0x13, 0x00, 0x83, 0x68, 0x61, 0x70, 0x73, 0x00, 0x0B, 0x15, 0x08, 0x13, 0x00, - 0x82, 0x61, 0x70, 0x73, 0x00, 0x08, 0x1C, 0x2C, 0x00, 0x82, 0x61, 0x72, 0x73, 0x00, 0x1A, 0x0F, - 0x04, 0x00, 0x82, 0x61, 0x79, 0x73, 0x00, 0x44, 0xC7, 0x0F, 0x06, 0xDE, 0x0F, 0x0C, 0xE9, 0x0F, - 0x0F, 0x35, 0x10, 0x16, 0x3C, 0x10, 0x00, 0x47, 0xCE, 0x0F, 0x0E, 0xD6, 0x0F, 0x00, 0x0C, 0x2C, - 0x00, 0x82, 0x65, 0x61, 0x73, 0x00, 0x17, 0x00, 0x83, 0x61, 0x6B, 0x65, 0x73, 0x00, 0x08, 0x07, - 0x11, 0x0C, 0x00, 0x83, 0x69, 0x63, 0x65, 0x73, 0x00, 0x46, 0xF3, 0x0F, 0x15, 0x1A, 0x10, 0x17, - 0x29, 0x10, 0x00, 0x48, 0xFA, 0x0F, 0x0C, 0x04, 0x10, 0x00, 0x07, 0x11, 0x0C, 0x00, 0x84, 0x69, - 0x63, 0x65, 0x73, 0x00, 0x47, 0x0B, 0x10, 0x17, 0x12, 0x10, 0x00, 0x11, 0x0C, 0x00, 0x82, 0x65, - 0x73, 0x00, 0x15, 0x08, 0x19, 0x00, 0x82, 0x65, 0x73, 0x00, 0x12, 0x16, 0x08, 0x06, 0x06, 0x04, - 0x00, 0x84, 0x73, 0x6F, 0x72, 0x69, 0x65, 0x73, 0x00, 0x0F, 0x0C, 0x05, 0x04, 0x00, 0x83, 0x69, - 0x74, 0x69, 0x65, 0x73, 0x00, 0x04, 0x09, 0x00, 0x81, 0x73, 0x65, 0x00, 0x12, 0x0B, 0x06, 0x2C, - 0x00, 0x82, 0x6F, 0x73, 0x65, 0x73, 0x00, 0x0C, 0x11, 0x0B, 0x17, 0x00, 0x83, 0x69, 0x6E, 0x67, - 0x73, 0x00, 0x08, 0x04, 0x1C, 0x2C, 0x00, 0x83, 0x65, 0x61, 0x72, 0x73, 0x00, 0x44, 0x67, 0x10, - 0x08, 0x73, 0x10, 0x12, 0xEA, 0x10, 0x00, 0x15, 0x04, 0x05, 0x10, 0x08, 0x00, 0x82, 0x72, 0x61, - 0x73, 0x73, 0x00, 0x46, 0x80, 0x10, 0x11, 0x98, 0x10, 0x15, 0xB5, 0x10, 0x16, 0xD2, 0x10, 0x00, - 0x46, 0x87, 0x10, 0x18, 0x90, 0x10, 0x00, 0x12, 0x15, 0x13, 0x00, 0x83, 0x65, 0x73, 0x73, 0x00, - 0x16, 0x00, 0x82, 0x63, 0x65, 0x73, 0x73, 0x00, 0x4C, 0x9F, 0x10, 0x16, 0xAB, 0x10, 0x00, 0x16, - 0x16, 0x18, 0x05, 0x00, 0x85, 0x69, 0x6E, 0x65, 0x73, 0x73, 0x00, 0x18, 0x05, 0x00, 0x83, 0x69, - 0x6E, 0x65, 0x73, 0x73, 0x00, 0x13, 0x00, 0x55, 0xBE, 0x10, 0x18, 0xC9, 0x10, 0x00, 0x18, 0x16, - 0x00, 0x85, 0x70, 0x70, 0x72, 0x65, 0x73, 0x73, 0x00, 0x16, 0x00, 0x83, 0x70, 0x72, 0x65, 0x73, - 0x73, 0x00, 0x46, 0xD9, 0x10, 0x12, 0xE2, 0x10, 0x00, 0x06, 0x18, 0x16, 0x00, 0x83, 0x65, 0x73, - 0x73, 0x00, 0x13, 0x00, 0x82, 0x73, 0x65, 0x73, 0x73, 0x00, 0x15, 0x06, 0x06, 0x04, 0x00, 0x84, - 0x72, 0x6F, 0x73, 0x73, 0x00, 0x15, 0x0C, 0x09, 0x00, 0x81, 0x73, 0x74, 0x00, 0x52, 0x04, 0x11, - 0x16, 0x12, 0x11, 0x00, 0x0F, 0x12, 0x10, 0x12, 0x11, 0x04, 0x00, 0x84, 0x61, 0x6C, 0x6F, 0x75, - 0x73, 0x00, 0x11, 0x08, 0x06, 0x11, 0x12, 0x06, 0x00, 0x85, 0x73, 0x65, 0x6E, 0x73, 0x75, 0x73, - 0x00, 0x44, 0x46, 0x11, 0x08, 0x64, 0x11, 0x0A, 0x81, 0x11, 0x0B, 0x8B, 0x11, 0x0C, 0xAF, 0x11, - 0x0F, 0xBA, 0x11, 0x10, 0xC5, 0x11, 0x11, 0xD1, 0x11, 0x12, 0x1F, 0x13, 0x13, 0x59, 0x13, 0x16, - 0x75, 0x13, 0x18, 0x15, 0x14, 0x00, 0x55, 0x4D, 0x11, 0x1A, 0x58, 0x11, 0x00, 0x08, 0x13, 0x08, - 0x16, 0x00, 0x83, 0x61, 0x72, 0x61, 0x74, 0x00, 0x0B, 0x08, 0x10, 0x12, 0x16, 0x00, 0x83, 0x77, - 0x68, 0x61, 0x74, 0x00, 0x44, 0x6B, 0x11, 0x11, 0x74, 0x11, 0x00, 0x15, 0x0A, 0x2C, 0x00, 0x82, - 0x65, 0x61, 0x74, 0x00, 0x10, 0x11, 0x15, 0x08, 0x19, 0x12, 0x0A, 0x00, 0x82, 0x65, 0x6E, 0x74, - 0x00, 0x0B, 0x18, 0x04, 0x06, 0x00, 0x82, 0x67, 0x68, 0x74, 0x00, 0x47, 0x95, 0x11, 0x0A, 0x9C, - 0x11, 0x0C, 0xA4, 0x11, 0x00, 0x0C, 0x1A, 0x00, 0x81, 0x74, 0x68, 0x00, 0x11, 0x08, 0x0F, 0x00, - 0x81, 0x74, 0x68, 0x00, 0x0A, 0x11, 0x12, 0x17, 0x00, 0x83, 0x69, 0x67, 0x68, 0x74, 0x00, 0x17, - 0x18, 0x12, 0x05, 0x04, 0x00, 0x81, 0x20, 0x69, 0x74, 0x00, 0x16, 0x18, 0x08, 0x15, 0x00, 0x83, - 0x73, 0x75, 0x6C, 0x74, 0x00, 0x04, 0x17, 0x15, 0x12, 0x13, 0x10, 0x0C, 0x00, 0x81, 0x6E, 0x74, - 0x00, 0x44, 0xDE, 0x11, 0x08, 0x16, 0x12, 0x15, 0x0C, 0x13, 0x16, 0x17, 0x13, 0x00, 0x4C, 0xEB, - 0x11, 0x11, 0xF6, 0x11, 0x15, 0x01, 0x12, 0x17, 0x0B, 0x12, 0x00, 0x13, 0x0C, 0x06, 0x08, 0x15, - 0x00, 0x82, 0x65, 0x6E, 0x74, 0x00, 0x0C, 0x10, 0x12, 0x15, 0x13, 0x00, 0x82, 0x65, 0x6E, 0x74, - 0x00, 0x04, 0x13, 0x13, 0x04, 0x00, 0x82, 0x65, 0x6E, 0x74, 0x00, 0x08, 0x13, 0x10, 0x12, 0x06, - 0x00, 0x82, 0x65, 0x6E, 0x74, 0x00, 0x4C, 0x23, 0x12, 0x10, 0x44, 0x12, 0x15, 0xA8, 0x12, 0x19, - 0x02, 0x13, 0x00, 0x46, 0x2A, 0x12, 0x13, 0x37, 0x12, 0x00, 0x08, 0x09, 0x09, 0x08, 0x00, 0x85, - 0x69, 0x63, 0x69, 0x65, 0x6E, 0x74, 0x00, 0x08, 0x06, 0x08, 0x15, 0x00, 0x85, 0x69, 0x70, 0x69, - 0x65, 0x6E, 0x74, 0x00, 0x48, 0x51, 0x12, 0x11, 0x5D, 0x12, 0x15, 0x7E, 0x12, 0x17, 0x9D, 0x12, - 0x00, 0x19, 0x12, 0x0A, 0x00, 0x83, 0x72, 0x6E, 0x6D, 0x65, 0x6E, 0x74, 0x00, 0x48, 0x64, 0x12, - 0x15, 0x70, 0x12, 0x00, 0x19, 0x12, 0x0A, 0x00, 0x84, 0x72, 0x6E, 0x6D, 0x65, 0x6E, 0x74, 0x00, - 0x12, 0x19, 0x12, 0x0A, 0x00, 0x86, 0x65, 0x72, 0x6E, 0x6D, 0x65, 0x6E, 0x74, 0x00, 0x48, 0x85, - 0x12, 0x12, 0x90, 0x12, 0x00, 0x19, 0x12, 0x0A, 0x00, 0x83, 0x6E, 0x6D, 0x65, 0x6E, 0x74, 0x00, - 0x19, 0x12, 0x0A, 0x00, 0x85, 0x65, 0x72, 0x6E, 0x6D, 0x65, 0x6E, 0x74, 0x00, 0x04, 0x17, 0x16, - 0x00, 0x83, 0x65, 0x6D, 0x65, 0x6E, 0x74, 0x00, 0x44, 0xB5, 0x12, 0x08, 0xC0, 0x12, 0x09, 0xCC, - 0x12, 0x15, 0xD7, 0x12, 0x00, 0x13, 0x04, 0x00, 0x84, 0x70, 0x61, 0x72, 0x65, 0x6E, 0x74, 0x00, - 0x09, 0x0C, 0x07, 0x00, 0x84, 0x66, 0x65, 0x72, 0x65, 0x6E, 0x74, 0x00, 0x09, 0x0C, 0x07, 0x00, - 0x83, 0x65, 0x72, 0x65, 0x6E, 0x74, 0x00, 0x44, 0xDE, 0x12, 0x08, 0xF6, 0x12, 0x00, 0x13, 0x00, - 0x44, 0xE7, 0x12, 0x13, 0xEF, 0x12, 0x00, 0x85, 0x70, 0x61, 0x72, 0x65, 0x6E, 0x74, 0x00, 0x04, - 0x00, 0x83, 0x65, 0x6E, 0x74, 0x00, 0x09, 0x0C, 0x07, 0x00, 0x85, 0x66, 0x65, 0x72, 0x65, 0x6E, - 0x74, 0x00, 0x08, 0x0F, 0x08, 0x15, 0x00, 0x82, 0x61, 0x6E, 0x74, 0x00, 0x08, 0x09, 0x09, 0x0C, - 0x07, 0x00, 0x81, 0x65, 0x6E, 0x74, 0x00, 0x12, 0x06, 0x00, 0x82, 0x6E, 0x73, 0x74, 0x00, 0x45, - 0x2F, 0x13, 0x10, 0x36, 0x13, 0x11, 0x3D, 0x13, 0x15, 0x47, 0x13, 0x16, 0x50, 0x13, 0x00, 0x04, - 0x2C, 0x00, 0x80, 0x75, 0x74, 0x00, 0x0F, 0x04, 0x00, 0x80, 0x73, 0x74, 0x00, 0x07, 0x0C, 0x07, - 0x00, 0x82, 0x20, 0x6E, 0x6F, 0x74, 0x00, 0x13, 0x08, 0x15, 0x00, 0x82, 0x6F, 0x72, 0x74, 0x00, - 0x10, 0x0F, 0x04, 0x00, 0x82, 0x6F, 0x73, 0x74, 0x00, 0x48, 0x60, 0x13, 0x1C, 0x6B, 0x13, 0x00, - 0x0C, 0x06, 0x08, 0x15, 0x00, 0x83, 0x65, 0x69, 0x70, 0x74, 0x00, 0x06, 0x11, 0x08, 0x00, 0x82, - 0x72, 0x79, 0x70, 0x74, 0x00, 0x48, 0x8B, 0x13, 0x0A, 0xB4, 0x13, 0x0C, 0xBD, 0x13, 0x10, 0xDA, - 0x13, 0x11, 0xE4, 0x13, 0x12, 0xFF, 0x13, 0x18, 0x0A, 0x14, 0x00, 0x4A, 0x92, 0x13, 0x15, 0xA9, - 0x13, 0x00, 0x4C, 0x99, 0x13, 0x18, 0xA1, 0x13, 0x00, 0x0B, 0x00, 0x82, 0x68, 0x65, 0x73, 0x74, - 0x00, 0x16, 0x00, 0x82, 0x67, 0x65, 0x73, 0x74, 0x00, 0x17, 0x11, 0x0C, 0x00, 0x83, 0x65, 0x72, - 0x65, 0x73, 0x74, 0x00, 0x15, 0x04, 0x0F, 0x00, 0x81, 0x65, 0x73, 0x74, 0x00, 0x49, 0xC4, 0x13, - 0x11, 0xD0, 0x13, 0x00, 0x08, 0x11, 0x04, 0x10, 0x00, 0x84, 0x69, 0x66, 0x65, 0x73, 0x74, 0x00, - 0x04, 0x0A, 0x04, 0x00, 0x83, 0x69, 0x6E, 0x73, 0x74, 0x00, 0x12, 0x0F, 0x04, 0x00, 0x83, 0x6D, - 0x6F, 0x73, 0x74, 0x00, 0x44, 0xEB, 0x13, 0x11, 0xF6, 0x13, 0x00, 0x0C, 0x0A, 0x04, 0x00, 0x84, - 0x61, 0x69, 0x6E, 0x73, 0x74, 0x00, 0x0C, 0x04, 0x0A, 0x04, 0x00, 0x82, 0x73, 0x74, 0x00, 0x0F, - 0x10, 0x04, 0x00, 0x84, 0x6C, 0x6D, 0x6F, 0x73, 0x74, 0x00, 0x0D, 0x04, 0x2C, 0x00, 0x83, 0x64, - 0x6A, 0x75, 0x73, 0x74, 0x00, 0x46, 0x1F, 0x14, 0x13, 0x38, 0x14, 0x17, 0x4F, 0x14, 0x00, 0x48, - 0x26, 0x14, 0x15, 0x31, 0x14, 0x00, 0x06, 0x1B, 0x08, 0x00, 0x84, 0x65, 0x63, 0x75, 0x74, 0x65, - 0x00, 0x0C, 0x06, 0x00, 0x80, 0x69, 0x74, 0x00, 0x57, 0x3F, 0x14, 0x18, 0x47, 0x14, 0x00, 0x11, - 0x0C, 0x00, 0x83, 0x70, 0x75, 0x74, 0x00, 0x12, 0x00, 0x82, 0x74, 0x70, 0x75, 0x74, 0x00, 0x13, - 0x18, 0x12, 0x00, 0x83, 0x74, 0x70, 0x75, 0x74, 0x00, 0x48, 0x60, 0x14, 0x0C, 0x84, 0x14, 0x00, - 0x44, 0x67, 0x14, 0x0C, 0x6E, 0x14, 0x00, 0x0B, 0x2C, 0x00, 0x81, 0x76, 0x65, 0x00, 0x46, 0x75, - 0x14, 0x08, 0x7D, 0x14, 0x00, 0x08, 0x15, 0x00, 0x82, 0x65, 0x69, 0x76, 0x00, 0x06, 0x08, 0x15, - 0x00, 0x81, 0x76, 0x00, 0x08, 0x0B, 0x06, 0x04, 0x2C, 0x00, 0x82, 0x69, 0x65, 0x76, 0x65, 0x00, - 0x4C, 0x9A, 0x14, 0x11, 0xA4, 0x14, 0x12, 0xAD, 0x14, 0x00, 0x08, 0x19, 0x08, 0x15, 0x00, 0x82, - 0x69, 0x65, 0x77, 0x00, 0x12, 0x0E, 0x2C, 0x00, 0x82, 0x6E, 0x6F, 0x77, 0x00, 0x0F, 0x12, 0x09, - 0x00, 0x81, 0x6C, 0x6F, 0x77, 0x00, 0x44, 0xD2, 0x14, 0x06, 0xDD, 0x14, 0x08, 0x18, 0x15, 0x0B, - 0x22, 0x15, 0x0F, 0x34, 0x15, 0x11, 0xF9, 0x15, 0x15, 0x03, 0x16, 0x16, 0xA8, 0x16, 0x17, 0xC3, - 0x16, 0x00, 0x11, 0x13, 0x10, 0x12, 0x06, 0x00, 0x82, 0x61, 0x6E, 0x79, 0x00, 0x44, 0xEA, 0x14, - 0x08, 0xF6, 0x14, 0x0C, 0x01, 0x15, 0x13, 0x0C, 0x15, 0x00, 0x15, 0x06, 0x12, 0x13, 0x1C, 0x0B, - 0x00, 0x82, 0x69, 0x73, 0x79, 0x00, 0x18, 0x14, 0x08, 0x15, 0x09, 0x00, 0x81, 0x6E, 0x63, 0x79, - 0x00, 0x15, 0x06, 0x12, 0x13, 0x1C, 0x0B, 0x00, 0x81, 0x73, 0x79, 0x00, 0x18, 0x15, 0x0E, 0x11, - 0x04, 0x05, 0x00, 0x81, 0x74, 0x63, 0x79, 0x00, 0x17, 0x09, 0x04, 0x16, 0x00, 0x82, 0x65, 0x74, - 0x79, 0x00, 0x06, 0x15, 0x04, 0x15, 0x0C, 0x08, 0x0B, 0x00, 0x87, 0x69, 0x65, 0x72, 0x61, 0x72, - 0x63, 0x68, 0x79, 0x00, 0x44, 0x47, 0x15, 0x0B, 0x8A, 0x15, 0x0E, 0x94, 0x15, 0x0F, 0x9C, 0x15, - 0x12, 0xE4, 0x15, 0x15, 0xEE, 0x15, 0x00, 0x45, 0x5A, 0x15, 0x08, 0x63, 0x15, 0x0F, 0x69, 0x15, - 0x11, 0x72, 0x15, 0x15, 0x79, 0x15, 0x18, 0x82, 0x15, 0x00, 0x12, 0x15, 0x13, 0x00, 0x81, 0x62, - 0x6C, 0x79, 0x00, 0x15, 0x00, 0x80, 0x6C, 0x79, 0x00, 0x08, 0x15, 0x00, 0x83, 0x61, 0x6C, 0x6C, - 0x79, 0x00, 0x0C, 0x09, 0x00, 0x80, 0x6C, 0x79, 0x00, 0x08, 0x11, 0x08, 0x0A, 0x00, 0x80, 0x6C, - 0x79, 0x00, 0x17, 0x06, 0x04, 0x00, 0x80, 0x6C, 0x79, 0x00, 0x0A, 0x0C, 0x0F, 0x16, 0x00, 0x81, - 0x74, 0x6C, 0x79, 0x00, 0x0C, 0x0F, 0x00, 0x81, 0x65, 0x6C, 0x79, 0x00, 0x44, 0xA6, 0x15, 0x05, - 0xD1, 0x15, 0x08, 0xDA, 0x15, 0x00, 0x56, 0xAD, 0x15, 0x17, 0xC5, 0x15, 0x00, 0x18, 0x00, 0x6C, - 0xB6, 0x15, 0x16, 0xBD, 0x15, 0x00, 0x83, 0x75, 0x61, 0x6C, 0x6C, 0x79, 0x00, 0x18, 0x00, 0x84, - 0x61, 0x6C, 0x6C, 0x79, 0x00, 0x18, 0x06, 0x04, 0x00, 0x85, 0x74, 0x75, 0x61, 0x6C, 0x6C, 0x79, - 0x00, 0x04, 0x05, 0x12, 0x15, 0x13, 0x00, 0x81, 0x79, 0x00, 0x04, 0x15, 0x00, 0x84, 0x65, 0x61, - 0x6C, 0x6C, 0x79, 0x00, 0x10, 0x12, 0x11, 0x04, 0x00, 0x82, 0x61, 0x6C, 0x79, 0x00, 0x04, 0x10, - 0x0C, 0x15, 0x13, 0x00, 0x81, 0x69, 0x6C, 0x79, 0x00, 0x08, 0x12, 0x10, 0x2C, 0x00, 0x82, 0x6E, - 0x65, 0x79, 0x00, 0x44, 0x13, 0x16, 0x08, 0x7B, 0x16, 0x12, 0x84, 0x16, 0x17, 0x91, 0x16, 0x19, - 0xA0, 0x16, 0x00, 0x45, 0x23, 0x16, 0x0C, 0x2C, 0x16, 0x0F, 0x39, 0x16, 0x10, 0x55, 0x16, 0x16, - 0x5E, 0x16, 0x00, 0x0C, 0x0F, 0x00, 0x82, 0x72, 0x61, 0x72, 0x79, 0x00, 0x0F, 0x0F, 0x0C, 0x1B, - 0x18, 0x04, 0x00, 0x84, 0x69, 0x61, 0x72, 0x79, 0x00, 0x4C, 0x40, 0x16, 0x0F, 0x4A, 0x16, 0x00, - 0x1B, 0x18, 0x04, 0x00, 0x82, 0x69, 0x61, 0x72, 0x79, 0x00, 0x0C, 0x1B, 0x18, 0x04, 0x00, 0x83, - 0x69, 0x61, 0x72, 0x79, 0x00, 0x18, 0x16, 0x00, 0x82, 0x6D, 0x61, 0x72, 0x79, 0x00, 0x08, 0x06, - 0x00, 0x46, 0x68, 0x16, 0x08, 0x73, 0x16, 0x00, 0x08, 0x11, 0x00, 0x85, 0x65, 0x73, 0x73, 0x61, - 0x72, 0x79, 0x00, 0x11, 0x00, 0x82, 0x73, 0x61, 0x72, 0x79, 0x00, 0x13, 0x12, 0x15, 0x13, 0x00, - 0x80, 0x74, 0x79, 0x00, 0x0A, 0x04, 0x17, 0x04, 0x06, 0x00, 0x84, 0x65, 0x67, 0x6F, 0x72, 0x79, - 0x00, 0x11, 0x18, 0x06, 0x12, 0x2C, 0x00, 0x86, 0x63, 0x6F, 0x75, 0x6E, 0x74, 0x72, 0x79, 0x00, - 0x08, 0x2C, 0x00, 0x81, 0x65, 0x72, 0x79, 0x00, 0x04, 0x00, 0x55, 0xB1, 0x16, 0x1A, 0xBC, 0x16, - 0x00, 0x06, 0x12, 0x13, 0x1C, 0x0B, 0x00, 0x82, 0x69, 0x73, 0x79, 0x00, 0x0F, 0x04, 0x00, 0x81, - 0x79, 0x73, 0x00, 0x49, 0xCD, 0x16, 0x0F, 0xD5, 0x16, 0x15, 0xDE, 0x16, 0x00, 0x04, 0x16, 0x00, - 0x81, 0x65, 0x74, 0x79, 0x00, 0x0C, 0x05, 0x04, 0x00, 0x81, 0x69, 0x74, 0x79, 0x00, 0x13, 0x08, - 0x12, 0x15, 0x13, 0x00, 0x84, 0x70, 0x65, 0x72, 0x74, 0x79, 0x00 -}; + 0x6C, 0x40, 0x00, 0x04, 0x0A, 0x01, 0x06, 0x22, 0x01, 0x07, 0x7D, 0x01, + 0x08, 0x47, 0x03, 0x09, 0x8E, 0x08, 0x0A, 0xBF, 0x08, 0x0B, 0x43, 0x09, + 0x0C, 0xD2, 0x09, 0x0E, 0xDC, 0x09, 0x0F, 0xE8, 0x09, 0x10, 0x09, 0x0B, + 0x11, 0x3B, 0x0B, 0x12, 0x58, 0x0D, 0x13, 0x8C, 0x0D, 0x15, 0xA6, 0x0D, + 0x16, 0x6D, 0x0F, 0x17, 0x21, 0x11, 0x19, 0x59, 0x14, 0x1A, 0x90, 0x14, + 0x1C, 0xB6, 0x14, 0x00, 0x46, 0x5F, 0x00, 0x07, 0x67, 0x00, 0x08, 0x71, + 0x00, 0x0A, 0x9C, 0x00, 0x0F, 0xA8, 0x00, 0x11, 0xB0, 0x00, 0x12, 0xB8, + 0x00, 0x16, 0xC2, 0x00, 0x17, 0xCD, 0x00, 0x18, 0x00, 0x01, 0x00, 0x0C, + 0x0B, 0x1A, 0x2C, 0x00, 0x80, 0x68, 0x00, 0x16, 0x08, 0x18, 0x2C, 0x00, + 0x83, 0x73, 0x65, 0x64, 0x00, 0x4B, 0x78, 0x00, 0x17, 0x8D, 0x00, 0x00, + 0x17, 0x00, 0x6C, 0x81, 0x00, 0x12, 0x88, 0x00, 0x00, 0x08, 0x0B, 0x17, + 0x2C, 0x00, 0x84, 0x00, 0x2C, 0x00, 0x80, 0x72, 0x00, 0x0C, 0x15, 0x1A, + 0x1C, 0x13, 0x12, 0x06, 0x00, 0x85, 0x72, 0x69, 0x67, 0x68, 0x74, 0x00, + 0x11, 0x0C, 0x10, 0x10, 0x12, 0x06, 0x00, 0x84, 0x69, 0x6E, 0x67, 0x00, + 0x18, 0x12, 0x1A, 0x2C, 0x00, 0x80, 0x64, 0x00, 0x0C, 0x12, 0x0A, 0x2C, + 0x00, 0x80, 0x67, 0x00, 0x0F, 0x16, 0x04, 0x2C, 0x00, 0x83, 0x6C, 0x73, + 0x6F, 0x00, 0x08, 0x16, 0x12, 0x12, 0x0F, 0x00, 0x84, 0x73, 0x65, 0x73, + 0x00, 0x44, 0xDA, 0x00, 0x0C, 0xE3, 0x00, 0x12, 0xED, 0x00, 0x18, 0xF7, + 0x00, 0x00, 0x15, 0x0A, 0x2C, 0x00, 0x82, 0x65, 0x61, 0x74, 0x00, 0x15, + 0x06, 0x12, 0x13, 0x1C, 0x0B, 0x00, 0x80, 0x65, 0x00, 0x0F, 0x04, 0x2C, + 0x00, 0x83, 0x20, 0x6C, 0x6F, 0x74, 0x00, 0x16, 0x0D, 0x2C, 0x00, 0x83, + 0x75, 0x73, 0x74, 0x00, 0x17, 0x16, 0x0D, 0x2C, 0x00, 0x83, 0x75, 0x73, + 0x74, 0x00, 0x57, 0x11, 0x01, 0x1C, 0x1A, 0x01, 0x00, 0x18, 0x12, 0x05, + 0x04, 0x00, 0x80, 0x20, 0x61, 0x00, 0x07, 0x12, 0x17, 0x00, 0x81, 0x61, + 0x79, 0x00, 0x4B, 0x2C, 0x01, 0x0C, 0x35, 0x01, 0x0E, 0x75, 0x01, 0x00, + 0x17, 0x0C, 0x1A, 0x16, 0x00, 0x81, 0x63, 0x68, 0x00, 0x50, 0x42, 0x01, + 0x15, 0x4E, 0x01, 0x16, 0x5C, 0x01, 0x17, 0x65, 0x01, 0x00, 0x11, 0x04, + 0x1C, 0x07, 0x00, 0x84, 0x6E, 0x61, 0x6D, 0x69, 0x63, 0x00, 0x17, 0x08, + 0x10, 0x1C, 0x16, 0x00, 0x84, 0x6D, 0x65, 0x74, 0x72, 0x69, 0x63, 0x00, + 0x04, 0x0F, 0x06, 0x00, 0x81, 0x73, 0x69, 0x63, 0x00, 0x08, 0x0B, 0x17, + 0x16, 0x04, 0x00, 0x86, 0x65, 0x73, 0x74, 0x68, 0x65, 0x74, 0x69, 0x63, + 0x00, 0x08, 0x0B, 0x06, 0x00, 0x81, 0x63, 0x6B, 0x00, 0x44, 0x93, 0x01, + 0x08, 0x9F, 0x01, 0x0F, 0x7F, 0x02, 0x11, 0xA7, 0x02, 0x12, 0xDF, 0x02, + 0x15, 0xFA, 0x02, 0x18, 0x32, 0x03, 0x00, 0x0C, 0x0F, 0x19, 0x11, 0x0C, + 0x00, 0x83, 0x61, 0x6C, 0x69, 0x64, 0x00, 0x46, 0xC1, 0x01, 0x07, 0xCB, + 0x01, 0x08, 0xD5, 0x01, 0x09, 0xE0, 0x01, 0x0A, 0xED, 0x01, 0x0C, 0xF7, + 0x01, 0x13, 0x11, 0x02, 0x15, 0x2E, 0x02, 0x16, 0x51, 0x02, 0x17, 0x5D, + 0x02, 0x18, 0x76, 0x02, 0x00, 0x0C, 0x19, 0x07, 0x04, 0x00, 0x82, 0x73, + 0x65, 0x64, 0x00, 0x08, 0x05, 0x10, 0x08, 0x00, 0x81, 0x64, 0x65, 0x64, + 0x00, 0x15, 0x0A, 0x0A, 0x04, 0x00, 0x84, 0x72, 0x65, 0x65, 0x64, 0x00, + 0x0C, 0x16, 0x0C, 0x17, 0x04, 0x16, 0x00, 0x83, 0x66, 0x69, 0x65, 0x64, + 0x00, 0x11, 0x0C, 0x16, 0x00, 0x83, 0x67, 0x6E, 0x65, 0x64, 0x00, 0x55, + 0xFE, 0x01, 0x19, 0x07, 0x02, 0x00, 0x15, 0x18, 0x05, 0x00, 0x83, 0x69, + 0x65, 0x64, 0x00, 0x15, 0x08, 0x07, 0x00, 0x83, 0x69, 0x76, 0x65, 0x64, + 0x00, 0x44, 0x18, 0x02, 0x16, 0x24, 0x02, 0x00, 0x0F, 0x16, 0x08, 0x00, + 0x85, 0x6C, 0x61, 0x70, 0x73, 0x65, 0x64, 0x00, 0x04, 0x0F, 0x08, 0x00, + 0x83, 0x70, 0x73, 0x65, 0x64, 0x00, 0x48, 0x38, 0x02, 0x0A, 0x41, 0x02, + 0x18, 0x48, 0x02, 0x00, 0x09, 0x08, 0x15, 0x00, 0x81, 0x72, 0x65, 0x64, + 0x00, 0x04, 0x2C, 0x00, 0x80, 0x65, 0x64, 0x00, 0x06, 0x06, 0x12, 0x00, + 0x81, 0x72, 0x65, 0x64, 0x00, 0x04, 0x13, 0x0F, 0x08, 0x00, 0x84, 0x61, + 0x70, 0x73, 0x65, 0x64, 0x00, 0x44, 0x64, 0x02, 0x16, 0x6F, 0x02, 0x00, + 0x08, 0x0F, 0x08, 0x15, 0x00, 0x84, 0x61, 0x74, 0x65, 0x64, 0x00, 0x11, + 0x0C, 0x00, 0x80, 0x61, 0x64, 0x00, 0x0F, 0x06, 0x11, 0x0C, 0x00, 0x81, + 0x64, 0x65, 0x00, 0x4C, 0x86, 0x02, 0x12, 0x9B, 0x02, 0x00, 0x08, 0x00, + 0x49, 0x8F, 0x02, 0x1C, 0x95, 0x02, 0x00, 0x83, 0x69, 0x65, 0x6C, 0x64, + 0x00, 0x83, 0x69, 0x65, 0x6C, 0x64, 0x00, 0x16, 0x08, 0x15, 0x0B, 0x17, + 0x00, 0x82, 0x68, 0x6F, 0x6C, 0x64, 0x00, 0x48, 0xB1, 0x02, 0x0C, 0xBC, + 0x02, 0x18, 0xC6, 0x02, 0x00, 0x15, 0x0C, 0x09, 0x00, 0x84, 0x72, 0x69, + 0x65, 0x6E, 0x64, 0x00, 0x08, 0x15, 0x09, 0x00, 0x83, 0x69, 0x65, 0x6E, + 0x64, 0x00, 0x52, 0xCD, 0x02, 0x15, 0xD7, 0x02, 0x00, 0x04, 0x2C, 0x00, + 0x83, 0x72, 0x6F, 0x75, 0x6E, 0x64, 0x00, 0x04, 0x00, 0x82, 0x6F, 0x75, + 0x6E, 0x64, 0x00, 0x4C, 0xE6, 0x02, 0x15, 0xF1, 0x02, 0x00, 0x08, 0x15, + 0x13, 0x00, 0x84, 0x65, 0x72, 0x69, 0x6F, 0x64, 0x00, 0x06, 0x08, 0x15, + 0x00, 0x82, 0x6F, 0x72, 0x64, 0x00, 0x44, 0x04, 0x03, 0x08, 0x0F, 0x03, + 0x18, 0x28, 0x03, 0x00, 0x1A, 0x12, 0x09, 0x00, 0x83, 0x72, 0x77, 0x61, + 0x72, 0x64, 0x00, 0x47, 0x16, 0x03, 0x0C, 0x20, 0x03, 0x00, 0x0C, 0x16, + 0x11, 0x12, 0x06, 0x00, 0x80, 0x65, 0x64, 0x00, 0x1A, 0x00, 0x83, 0x65, + 0x69, 0x72, 0x64, 0x00, 0x04, 0x0A, 0x2C, 0x00, 0x83, 0x75, 0x61, 0x72, + 0x64, 0x00, 0x12, 0x00, 0x4B, 0x3B, 0x03, 0x15, 0x41, 0x03, 0x00, 0x16, + 0x00, 0x80, 0x6C, 0x64, 0x00, 0x04, 0x00, 0x80, 0x6E, 0x64, 0x00, 0x44, + 0x75, 0x03, 0x05, 0x82, 0x03, 0x06, 0xAD, 0x03, 0x07, 0x2D, 0x04, 0x08, + 0x49, 0x04, 0x0A, 0x9D, 0x04, 0x0B, 0x15, 0x05, 0x0C, 0x66, 0x05, 0x0F, + 0x6F, 0x05, 0x11, 0x31, 0x06, 0x15, 0x3D, 0x06, 0x16, 0xA7, 0x06, 0x17, + 0x38, 0x07, 0x18, 0x13, 0x08, 0x19, 0x4C, 0x08, 0x00, 0x06, 0x13, 0x16, + 0x08, 0x10, 0x04, 0x11, 0x00, 0x82, 0x61, 0x63, 0x65, 0x00, 0x44, 0x89, + 0x03, 0x0F, 0x93, 0x03, 0x00, 0x0F, 0x0C, 0x04, 0x19, 0x04, 0x00, 0x80, + 0x6C, 0x65, 0x00, 0x44, 0x9A, 0x03, 0x18, 0xA5, 0x03, 0x00, 0x0F, 0x0C, + 0x04, 0x19, 0x04, 0x00, 0x82, 0x62, 0x6C, 0x65, 0x00, 0x12, 0x07, 0x00, + 0x82, 0x62, 0x6C, 0x65, 0x00, 0x48, 0xBA, 0x03, 0x0C, 0xC5, 0x03, 0x11, + 0xCE, 0x03, 0x13, 0x20, 0x04, 0x00, 0x15, 0x08, 0x09, 0x08, 0x15, 0x00, + 0x81, 0x6E, 0x63, 0x65, 0x00, 0x08, 0x13, 0x00, 0x83, 0x69, 0x65, 0x63, + 0x65, 0x00, 0x44, 0xD8, 0x03, 0x08, 0xE5, 0x03, 0x18, 0x16, 0x04, 0x00, + 0x17, 0x08, 0x13, 0x10, 0x12, 0x06, 0x00, 0x83, 0x65, 0x6E, 0x63, 0x65, + 0x00, 0x55, 0xEC, 0x03, 0x17, 0x0B, 0x04, 0x00, 0x08, 0x00, 0x49, 0xF5, + 0x03, 0x0F, 0x02, 0x04, 0x00, 0x15, 0x2C, 0x00, 0x86, 0x65, 0x66, 0x65, + 0x72, 0x65, 0x6E, 0x63, 0x65, 0x00, 0x12, 0x17, 0x00, 0x83, 0x61, 0x6E, + 0x63, 0x65, 0x00, 0x11, 0x0C, 0x04, 0x10, 0x00, 0x81, 0x61, 0x6E, 0x63, + 0x65, 0x00, 0x14, 0x08, 0x16, 0x00, 0x82, 0x65, 0x6E, 0x63, 0x65, 0x00, + 0x04, 0x16, 0x08, 0x10, 0x04, 0x11, 0x00, 0x83, 0x70, 0x61, 0x63, 0x65, + 0x00, 0x0C, 0x15, 0x08, 0x19, 0x00, 0x52, 0x39, 0x04, 0x19, 0x3F, 0x04, + 0x00, 0x82, 0x72, 0x69, 0x64, 0x65, 0x00, 0x12, 0x00, 0x85, 0x65, 0x72, + 0x72, 0x69, 0x64, 0x65, 0x00, 0x17, 0x00, 0x44, 0x58, 0x04, 0x0C, 0x63, + 0x04, 0x11, 0x6D, 0x04, 0x17, 0x90, 0x04, 0x00, 0x15, 0x04, 0x18, 0x0A, + 0x00, 0x82, 0x6E, 0x74, 0x65, 0x65, 0x00, 0x10, 0x10, 0x12, 0x06, 0x00, + 0x81, 0x74, 0x65, 0x65, 0x00, 0x04, 0x15, 0x00, 0x44, 0x77, 0x04, 0x18, + 0x83, 0x04, 0x00, 0x0A, 0x00, 0x86, 0x75, 0x61, 0x72, 0x61, 0x6E, 0x74, + 0x65, 0x65, 0x00, 0x04, 0x0A, 0x00, 0x87, 0x75, 0x61, 0x72, 0x61, 0x6E, + 0x74, 0x65, 0x65, 0x00, 0x0C, 0x10, 0x12, 0x06, 0x00, 0x84, 0x6D, 0x69, + 0x74, 0x74, 0x65, 0x65, 0x00, 0x44, 0xA7, 0x04, 0x07, 0xEA, 0x04, 0x10, + 0x0C, 0x05, 0x00, 0x4A, 0xB4, 0x04, 0x11, 0xBF, 0x04, 0x16, 0xC8, 0x04, + 0x18, 0xD1, 0x04, 0x00, 0x15, 0x12, 0x10, 0x00, 0x83, 0x74, 0x67, 0x61, + 0x67, 0x65, 0x00, 0x0B, 0x06, 0x00, 0x83, 0x61, 0x6E, 0x67, 0x65, 0x00, + 0x08, 0x10, 0x00, 0x82, 0x73, 0x61, 0x67, 0x65, 0x00, 0x0A, 0x00, 0x6C, + 0xDA, 0x04, 0x04, 0xE0, 0x04, 0x00, 0x83, 0x61, 0x75, 0x67, 0x65, 0x00, + 0x0F, 0x00, 0x84, 0x6E, 0x67, 0x75, 0x61, 0x67, 0x65, 0x00, 0x08, 0x0F, + 0x00, 0x44, 0xF7, 0x04, 0x0C, 0xFD, 0x04, 0x0F, 0x06, 0x05, 0x00, 0x83, + 0x6C, 0x65, 0x67, 0x65, 0x00, 0x19, 0x0C, 0x15, 0x13, 0x00, 0x82, 0x67, + 0x65, 0x00, 0x04, 0x00, 0x82, 0x67, 0x65, 0x00, 0x04, 0x0C, 0x00, 0x83, + 0x6D, 0x61, 0x67, 0x65, 0x00, 0x17, 0x00, 0x47, 0x27, 0x05, 0x10, 0x31, + 0x05, 0x12, 0x3B, 0x05, 0x16, 0x44, 0x05, 0x17, 0x4D, 0x05, 0x00, 0x11, + 0x04, 0x2C, 0x00, 0x82, 0x20, 0x74, 0x68, 0x65, 0x00, 0x12, 0x15, 0x09, + 0x00, 0x82, 0x20, 0x74, 0x68, 0x65, 0x00, 0x17, 0x2C, 0x00, 0x82, 0x20, + 0x74, 0x68, 0x65, 0x00, 0x04, 0x2C, 0x00, 0x82, 0x20, 0x74, 0x68, 0x65, + 0x00, 0x44, 0x54, 0x05, 0x18, 0x5C, 0x05, 0x00, 0x2C, 0x00, 0x82, 0x20, + 0x74, 0x68, 0x65, 0x00, 0x12, 0x05, 0x04, 0x00, 0x82, 0x20, 0x74, 0x68, + 0x65, 0x00, 0x1D, 0x16, 0x2C, 0x00, 0x82, 0x69, 0x7A, 0x65, 0x00, 0x45, + 0x82, 0x05, 0x0C, 0xF3, 0x05, 0x13, 0xFE, 0x05, 0x16, 0x1A, 0x06, 0x17, + 0x22, 0x06, 0x19, 0x2A, 0x06, 0x00, 0x44, 0x8C, 0x05, 0x0C, 0xDC, 0x05, + 0x0F, 0xE8, 0x05, 0x00, 0x4A, 0x96, 0x05, 0x0C, 0xA0, 0x05, 0x0F, 0xBE, + 0x05, 0x00, 0x0C, 0x0F, 0x08, 0x00, 0x83, 0x69, 0x62, 0x6C, 0x65, 0x00, + 0x0F, 0x00, 0x44, 0xA9, 0x05, 0x0C, 0xB4, 0x05, 0x00, 0x19, 0x04, 0x00, + 0x85, 0x69, 0x6C, 0x61, 0x62, 0x6C, 0x65, 0x00, 0x04, 0x19, 0x04, 0x00, + 0x84, 0x61, 0x62, 0x6C, 0x65, 0x00, 0x44, 0xC5, 0x05, 0x0C, 0xD0, 0x05, + 0x00, 0x19, 0x04, 0x00, 0x84, 0x69, 0x6C, 0x61, 0x62, 0x6C, 0x65, 0x00, + 0x19, 0x04, 0x00, 0x85, 0x61, 0x69, 0x6C, 0x61, 0x62, 0x6C, 0x65, 0x00, + 0x04, 0x0F, 0x0C, 0x04, 0x19, 0x04, 0x00, 0x83, 0x62, 0x6C, 0x65, 0x00, + 0x0C, 0x04, 0x19, 0x04, 0x00, 0x82, 0x61, 0x62, 0x6C, 0x65, 0x00, 0x1A, + 0x0B, 0x2C, 0x00, 0x84, 0x77, 0x68, 0x69, 0x6C, 0x65, 0x00, 0x48, 0x05, + 0x06, 0x12, 0x0F, 0x06, 0x00, 0x12, 0x13, 0x00, 0x84, 0x65, 0x6F, 0x70, + 0x6C, 0x65, 0x00, 0x08, 0x12, 0x13, 0x00, 0x85, 0x65, 0x6F, 0x70, 0x6C, + 0x65, 0x00, 0x04, 0x09, 0x00, 0x82, 0x6C, 0x73, 0x65, 0x00, 0x0C, 0x0F, + 0x00, 0x81, 0x74, 0x6C, 0x65, 0x00, 0x08, 0x0F, 0x00, 0x81, 0x65, 0x6C, + 0x00, 0x0C, 0x08, 0x0A, 0x1C, 0x0B, 0x00, 0x83, 0x69, 0x65, 0x6E, 0x65, + 0x00, 0x46, 0x4D, 0x06, 0x0C, 0x57, 0x06, 0x12, 0x63, 0x06, 0x15, 0x8A, + 0x06, 0x18, 0x91, 0x06, 0x00, 0x12, 0x16, 0x2C, 0x00, 0x83, 0x63, 0x6F, + 0x72, 0x65, 0x00, 0x18, 0x14, 0x04, 0x00, 0x84, 0x63, 0x71, 0x75, 0x69, + 0x72, 0x65, 0x00, 0x47, 0x6D, 0x06, 0x08, 0x76, 0x06, 0x09, 0x7E, 0x06, + 0x00, 0x08, 0x05, 0x00, 0x83, 0x66, 0x6F, 0x72, 0x65, 0x00, 0x05, 0x00, + 0x82, 0x66, 0x6F, 0x72, 0x65, 0x00, 0x15, 0x08, 0x0B, 0x17, 0x00, 0x83, + 0x65, 0x66, 0x6F, 0x72, 0x65, 0x00, 0x08, 0x0B, 0x1A, 0x00, 0x81, 0x65, + 0x00, 0x17, 0x00, 0x6C, 0x9A, 0x06, 0x04, 0x9F, 0x06, 0x00, 0x82, 0x72, + 0x75, 0x65, 0x00, 0x10, 0x04, 0x00, 0x82, 0x65, 0x75, 0x72, 0x00, 0x44, + 0xBD, 0x06, 0x08, 0xE1, 0x06, 0x0C, 0xE9, 0x06, 0x0F, 0xF8, 0x06, 0x11, + 0x01, 0x07, 0x12, 0x1F, 0x07, 0x18, 0x2C, 0x07, 0x00, 0x46, 0xC7, 0x06, + 0x08, 0xCF, 0x06, 0x0F, 0xD9, 0x06, 0x00, 0x08, 0x05, 0x00, 0x81, 0x75, + 0x73, 0x65, 0x00, 0x05, 0x2C, 0x00, 0x82, 0x63, 0x61, 0x75, 0x73, 0x65, + 0x00, 0x09, 0x00, 0x83, 0x61, 0x6C, 0x73, 0x65, 0x00, 0x08, 0x0B, 0x17, + 0x00, 0x82, 0x73, 0x65, 0x00, 0x06, 0x15, 0x08, 0x06, 0x1B, 0x08, 0x00, + 0x86, 0x65, 0x72, 0x63, 0x69, 0x73, 0x65, 0x00, 0x0C, 0x04, 0x09, 0x00, + 0x83, 0x6C, 0x73, 0x65, 0x00, 0x48, 0x08, 0x07, 0x12, 0x13, 0x07, 0x00, + 0x16, 0x0C, 0x0F, 0x00, 0x84, 0x63, 0x65, 0x6E, 0x73, 0x65, 0x00, 0x13, + 0x08, 0x15, 0x00, 0x84, 0x73, 0x70, 0x6F, 0x6E, 0x73, 0x65, 0x00, 0x13, + 0x11, 0x04, 0x15, 0x17, 0x00, 0x83, 0x73, 0x70, 0x6F, 0x73, 0x65, 0x00, + 0x06, 0x04, 0x08, 0x05, 0x00, 0x84, 0x63, 0x61, 0x75, 0x73, 0x65, 0x00, + 0x44, 0x45, 0x07, 0x08, 0xF3, 0x07, 0x0F, 0xFE, 0x07, 0x19, 0x0A, 0x08, + 0x00, 0x47, 0x55, 0x07, 0x0A, 0x7A, 0x07, 0x0F, 0x87, 0x07, 0x13, 0xCA, + 0x07, 0x15, 0xD4, 0x07, 0x00, 0x12, 0x10, 0x00, 0x50, 0x5F, 0x07, 0x12, + 0x6E, 0x07, 0x00, 0x12, 0x06, 0x04, 0x00, 0x87, 0x63, 0x6F, 0x6D, 0x6D, + 0x6F, 0x64, 0x61, 0x74, 0x65, 0x00, 0x06, 0x06, 0x04, 0x00, 0x84, 0x6D, + 0x6F, 0x64, 0x61, 0x74, 0x65, 0x00, 0x12, 0x13, 0x12, 0x15, 0x13, 0x00, + 0x84, 0x61, 0x67, 0x61, 0x74, 0x65, 0x00, 0x46, 0x91, 0x07, 0x13, 0x9E, + 0x07, 0x18, 0xAB, 0x07, 0x00, 0x18, 0x0F, 0x04, 0x06, 0x00, 0x85, 0x63, + 0x75, 0x6C, 0x61, 0x74, 0x65, 0x00, 0x10, 0x04, 0x08, 0x17, 0x00, 0x86, + 0x6D, 0x70, 0x6C, 0x61, 0x74, 0x65, 0x00, 0x46, 0xB2, 0x07, 0x0F, 0xBF, + 0x07, 0x00, 0x18, 0x0F, 0x04, 0x06, 0x00, 0x86, 0x63, 0x75, 0x6C, 0x61, + 0x74, 0x65, 0x00, 0x04, 0x06, 0x00, 0x84, 0x63, 0x75, 0x6C, 0x61, 0x74, + 0x65, 0x00, 0x07, 0x18, 0x00, 0x84, 0x70, 0x64, 0x61, 0x74, 0x65, 0x00, + 0x48, 0xDB, 0x07, 0x18, 0xE8, 0x07, 0x00, 0x11, 0x04, 0x0A, 0x00, 0x86, + 0x65, 0x6E, 0x65, 0x72, 0x61, 0x74, 0x65, 0x00, 0x06, 0x04, 0x00, 0x84, + 0x63, 0x75, 0x72, 0x61, 0x74, 0x65, 0x00, 0x0F, 0x0F, 0x04, 0x13, 0x00, + 0x83, 0x65, 0x74, 0x74, 0x65, 0x00, 0x04, 0x13, 0x10, 0x08, 0x17, 0x00, + 0x83, 0x6C, 0x61, 0x74, 0x65, 0x00, 0x0C, 0x15, 0x13, 0x00, 0x81, 0x61, + 0x74, 0x65, 0x00, 0x4A, 0x1D, 0x08, 0x0C, 0x29, 0x08, 0x16, 0x33, 0x08, + 0x00, 0x08, 0x0F, 0x0F, 0x12, 0x06, 0x00, 0x82, 0x61, 0x67, 0x75, 0x65, + 0x00, 0x14, 0x11, 0x18, 0x00, 0x83, 0x69, 0x71, 0x75, 0x65, 0x00, 0x44, + 0x3A, 0x08, 0x15, 0x42, 0x08, 0x00, 0x06, 0x2C, 0x00, 0x82, 0x75, 0x73, + 0x65, 0x00, 0x08, 0x13, 0x00, 0x84, 0x75, 0x72, 0x73, 0x75, 0x65, 0x00, + 0x4C, 0x53, 0x08, 0x12, 0x78, 0x08, 0x00, 0x48, 0x5D, 0x08, 0x0B, 0x67, + 0x08, 0x0F, 0x70, 0x08, 0x00, 0x0F, 0x08, 0x05, 0x00, 0x83, 0x69, 0x65, + 0x76, 0x65, 0x00, 0x06, 0x04, 0x2C, 0x00, 0x81, 0x65, 0x76, 0x65, 0x00, + 0x08, 0x05, 0x00, 0x81, 0x65, 0x76, 0x65, 0x00, 0x52, 0x7F, 0x08, 0x19, + 0x86, 0x08, 0x00, 0x15, 0x13, 0x00, 0x82, 0x76, 0x65, 0x00, 0x05, 0x04, + 0x00, 0x83, 0x6F, 0x76, 0x65, 0x00, 0x4C, 0x95, 0x08, 0x11, 0xB7, 0x08, + 0x00, 0x08, 0x00, 0x4B, 0xA1, 0x08, 0x0F, 0xA8, 0x08, 0x15, 0xB0, 0x08, + 0x00, 0x06, 0x00, 0x82, 0x69, 0x65, 0x66, 0x00, 0x08, 0x05, 0x00, 0x82, + 0x69, 0x65, 0x66, 0x00, 0x05, 0x00, 0x82, 0x69, 0x65, 0x66, 0x00, 0x18, + 0x12, 0x09, 0x2C, 0x00, 0x80, 0x64, 0x00, 0x4C, 0xC6, 0x08, 0x11, 0xD0, + 0x08, 0x00, 0x11, 0x12, 0x0A, 0x2C, 0x00, 0x82, 0x69, 0x6E, 0x67, 0x00, + 0x48, 0xDA, 0x08, 0x0C, 0xE3, 0x08, 0x15, 0x39, 0x09, 0x00, 0x0C, 0x05, + 0x00, 0x83, 0x65, 0x69, 0x6E, 0x67, 0x00, 0x48, 0xF6, 0x08, 0x0B, 0x00, + 0x09, 0x0F, 0x0D, 0x09, 0x15, 0x19, 0x09, 0x17, 0x24, 0x09, 0x1C, 0x2E, + 0x09, 0x00, 0x0B, 0x06, 0x04, 0x06, 0x00, 0x83, 0x69, 0x6E, 0x67, 0x00, + 0x17, 0x06, 0x04, 0x10, 0x00, 0x85, 0x74, 0x63, 0x68, 0x69, 0x6E, 0x67, + 0x00, 0x08, 0x0C, 0x06, 0x00, 0x85, 0x65, 0x69, 0x6C, 0x69, 0x6E, 0x67, + 0x00, 0x18, 0x06, 0x08, 0x15, 0x00, 0x82, 0x72, 0x69, 0x6E, 0x67, 0x00, + 0x0B, 0x2C, 0x00, 0x84, 0x74, 0x68, 0x69, 0x6E, 0x67, 0x00, 0x17, 0x1C, + 0x11, 0x04, 0x00, 0x83, 0x68, 0x69, 0x6E, 0x67, 0x00, 0x0C, 0x17, 0x16, + 0x00, 0x83, 0x72, 0x69, 0x6E, 0x67, 0x00, 0x46, 0x53, 0x09, 0x08, 0x73, + 0x09, 0x0A, 0x7F, 0x09, 0x16, 0x89, 0x09, 0x17, 0x9B, 0x09, 0x00, 0x4C, + 0x5A, 0x09, 0x15, 0x64, 0x09, 0x00, 0x17, 0x1A, 0x16, 0x00, 0x83, 0x69, + 0x74, 0x63, 0x68, 0x00, 0x04, 0x08, 0x16, 0x04, 0x08, 0x15, 0x00, 0x86, + 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x00, 0x17, 0x07, 0x11, 0x04, 0x2C, + 0x00, 0x82, 0x20, 0x74, 0x68, 0x65, 0x00, 0x11, 0x08, 0x15, 0x17, 0x16, + 0x00, 0x80, 0x74, 0x68, 0x00, 0x0C, 0x0F, 0x13, 0x10, 0x12, 0x06, 0x04, + 0x00, 0x86, 0x63, 0x6F, 0x6D, 0x70, 0x6C, 0x69, 0x73, 0x68, 0x00, 0x4A, + 0xA5, 0x09, 0x0C, 0xBD, 0x09, 0x15, 0xC8, 0x09, 0x00, 0x48, 0xAC, 0x09, + 0x0C, 0xB6, 0x09, 0x00, 0x15, 0x17, 0x16, 0x00, 0x82, 0x6E, 0x67, 0x74, + 0x68, 0x00, 0x08, 0x0B, 0x00, 0x81, 0x68, 0x74, 0x00, 0x1A, 0x07, 0x11, + 0x04, 0x05, 0x00, 0x81, 0x64, 0x74, 0x68, 0x00, 0x18, 0x17, 0x2C, 0x00, + 0x83, 0x72, 0x75, 0x74, 0x68, 0x00, 0x15, 0x08, 0x0B, 0x17, 0x2C, 0x00, + 0x81, 0x69, 0x72, 0x00, 0x11, 0x0C, 0x17, 0x0B, 0x00, 0x84, 0x74, 0x68, + 0x69, 0x6E, 0x6B, 0x00, 0x44, 0xFE, 0x09, 0x07, 0x52, 0x0A, 0x08, 0x76, + 0x0A, 0x09, 0xCB, 0x0A, 0x0F, 0xD4, 0x0A, 0x17, 0xF1, 0x0A, 0x18, 0xFA, + 0x0A, 0x00, 0x4C, 0x08, 0x0A, 0x17, 0x13, 0x0A, 0x18, 0x2C, 0x0A, 0x00, + 0x06, 0x13, 0x1C, 0x17, 0x00, 0x83, 0x69, 0x63, 0x61, 0x6C, 0x00, 0x4C, + 0x1A, 0x0A, 0x18, 0x22, 0x0A, 0x00, 0x11, 0x0C, 0x00, 0x81, 0x69, 0x61, + 0x6C, 0x00, 0x15, 0x0C, 0x19, 0x00, 0x83, 0x74, 0x75, 0x61, 0x6C, 0x00, + 0x51, 0x36, 0x0A, 0x15, 0x3F, 0x0A, 0x17, 0x48, 0x0A, 0x00, 0x04, 0x2C, + 0x00, 0x82, 0x6E, 0x75, 0x61, 0x6C, 0x00, 0x18, 0x17, 0x04, 0x11, 0x00, + 0x82, 0x61, 0x6C, 0x00, 0x0C, 0x19, 0x00, 0x83, 0x72, 0x74, 0x75, 0x61, + 0x6C, 0x00, 0x48, 0x59, 0x0A, 0x18, 0x60, 0x0A, 0x00, 0x0C, 0x09, 0x00, + 0x81, 0x6C, 0x64, 0x00, 0x52, 0x67, 0x0A, 0x1A, 0x6D, 0x0A, 0x00, 0x06, + 0x00, 0x81, 0x6C, 0x64, 0x00, 0x12, 0x00, 0x84, 0x77, 0x6F, 0x75, 0x6C, + 0x64, 0x00, 0x4A, 0x83, 0x0A, 0x0F, 0x8B, 0x0A, 0x17, 0xB9, 0x0A, 0x18, + 0xC1, 0x0A, 0x00, 0x11, 0x0C, 0x16, 0x00, 0x81, 0x6C, 0x65, 0x00, 0x44, + 0x92, 0x0A, 0x0F, 0xAC, 0x0A, 0x00, 0x15, 0x00, 0x44, 0x9B, 0x0A, 0x15, + 0xA2, 0x0A, 0x00, 0x13, 0x00, 0x81, 0x6C, 0x65, 0x6C, 0x00, 0x04, 0x13, + 0x00, 0x84, 0x61, 0x6C, 0x6C, 0x65, 0x6C, 0x00, 0x04, 0x15, 0x15, 0x04, + 0x13, 0x00, 0x85, 0x61, 0x6C, 0x6C, 0x65, 0x6C, 0x00, 0x17, 0x0C, 0x0F, + 0x00, 0x81, 0x6C, 0x65, 0x00, 0x07, 0x08, 0x0B, 0x06, 0x16, 0x00, 0x81, + 0x6C, 0x65, 0x00, 0x08, 0x16, 0x1C, 0x10, 0x00, 0x81, 0x6C, 0x66, 0x00, + 0x0C, 0x09, 0x00, 0x4F, 0xDE, 0x0A, 0x18, 0xE8, 0x0A, 0x00, 0x0F, 0x18, + 0x09, 0x00, 0x84, 0x66, 0x69, 0x6C, 0x6C, 0x00, 0x09, 0x00, 0x83, 0x6C, + 0x66, 0x69, 0x6C, 0x6C, 0x00, 0x18, 0x16, 0x08, 0x15, 0x00, 0x81, 0x6C, + 0x74, 0x00, 0x09, 0x17, 0x04, 0x08, 0x15, 0x0A, 0x00, 0x85, 0x61, 0x74, + 0x65, 0x66, 0x75, 0x6C, 0x00, 0x44, 0x13, 0x0B, 0x0F, 0x24, 0x0B, 0x15, + 0x2F, 0x0B, 0x00, 0x15, 0x0A, 0x12, 0x17, 0x06, 0x08, 0x13, 0x16, 0x00, + 0x84, 0x72, 0x6F, 0x67, 0x72, 0x61, 0x6D, 0x00, 0x08, 0x05, 0x12, 0x15, + 0x13, 0x00, 0x82, 0x6C, 0x65, 0x6D, 0x00, 0x12, 0x09, 0x12, 0x06, 0x00, + 0x83, 0x6E, 0x66, 0x6F, 0x72, 0x6D, 0x00, 0x44, 0x5D, 0x0B, 0x07, 0x85, + 0x0B, 0x08, 0x8E, 0x0B, 0x0A, 0x0C, 0x0C, 0x0C, 0x5F, 0x0C, 0x12, 0x79, + 0x0C, 0x13, 0x15, 0x0D, 0x15, 0x21, 0x0D, 0x16, 0x2C, 0x0D, 0x18, 0x36, + 0x0D, 0x1A, 0x4D, 0x0D, 0x00, 0x0C, 0x00, 0x4A, 0x66, 0x0B, 0x17, 0x6E, + 0x0B, 0x00, 0x04, 0x2C, 0x00, 0x82, 0x61, 0x69, 0x6E, 0x00, 0x51, 0x75, + 0x0B, 0x15, 0x7D, 0x0B, 0x00, 0x12, 0x06, 0x00, 0x82, 0x61, 0x69, 0x6E, + 0x00, 0x08, 0x06, 0x00, 0x82, 0x61, 0x69, 0x6E, 0x00, 0x18, 0x12, 0x09, + 0x2C, 0x00, 0x81, 0x6E, 0x64, 0x00, 0x47, 0xA4, 0x0B, 0x08, 0xAE, 0x0B, + 0x0A, 0xD8, 0x0B, 0x13, 0xE4, 0x0B, 0x15, 0xED, 0x0B, 0x16, 0xFA, 0x0B, + 0x1A, 0x04, 0x0C, 0x00, 0x0F, 0x0C, 0x0B, 0x06, 0x00, 0x81, 0x72, 0x65, + 0x6E, 0x00, 0x57, 0xB5, 0x0B, 0x1A, 0xCE, 0x0B, 0x00, 0x48, 0xBC, 0x0B, + 0x1A, 0xC4, 0x0B, 0x00, 0x05, 0x00, 0x82, 0x77, 0x65, 0x65, 0x6E, 0x00, + 0x08, 0x05, 0x00, 0x84, 0x74, 0x77, 0x65, 0x65, 0x6E, 0x00, 0x08, 0x05, + 0x00, 0x83, 0x74, 0x77, 0x65, 0x65, 0x6E, 0x00, 0x12, 0x07, 0x1C, 0x0B, + 0x00, 0x83, 0x72, 0x6F, 0x67, 0x65, 0x6E, 0x00, 0x04, 0x0B, 0x2C, 0x00, + 0x81, 0x70, 0x65, 0x6E, 0x00, 0x07, 0x0F, 0x0B, 0x06, 0x00, 0x84, 0x69, + 0x6C, 0x64, 0x72, 0x65, 0x6E, 0x00, 0x12, 0x12, 0x0B, 0x06, 0x00, 0x83, + 0x73, 0x65, 0x6E, 0x00, 0x17, 0x08, 0x05, 0x00, 0x80, 0x65, 0x6E, 0x00, + 0x48, 0x13, 0x0C, 0x0C, 0x1E, 0x0C, 0x00, 0x0C, 0x15, 0x12, 0x09, 0x00, + 0x83, 0x65, 0x69, 0x67, 0x6E, 0x00, 0x4B, 0x31, 0x0C, 0x0F, 0x37, 0x0C, + 0x11, 0x3F, 0x0C, 0x12, 0x48, 0x0C, 0x15, 0x4F, 0x0C, 0x16, 0x56, 0x0C, + 0x00, 0x17, 0x00, 0x81, 0x6E, 0x67, 0x00, 0x0F, 0x04, 0x00, 0x83, 0x69, + 0x67, 0x6E, 0x00, 0x15, 0x04, 0x08, 0x0F, 0x00, 0x81, 0x6E, 0x67, 0x00, + 0x0A, 0x2C, 0x00, 0x81, 0x6E, 0x67, 0x00, 0x17, 0x16, 0x00, 0x81, 0x6E, + 0x67, 0x00, 0x04, 0x2C, 0x00, 0x82, 0x73, 0x69, 0x67, 0x6E, 0x00, 0x4A, + 0x66, 0x0C, 0x17, 0x6E, 0x0C, 0x00, 0x04, 0x2C, 0x00, 0x81, 0x61, 0x69, + 0x6E, 0x00, 0x04, 0x15, 0x08, 0x06, 0x00, 0x83, 0x74, 0x61, 0x69, 0x6E, + 0x00, 0x4C, 0x83, 0x0C, 0x16, 0xFF, 0x0C, 0x17, 0x09, 0x0D, 0x00, 0x46, + 0x8D, 0x0C, 0x16, 0x9A, 0x0C, 0x17, 0xB4, 0x0C, 0x00, 0x0C, 0x16, 0x08, + 0x07, 0x00, 0x85, 0x63, 0x69, 0x73, 0x69, 0x6F, 0x6E, 0x00, 0x44, 0xA1, + 0x0C, 0x16, 0xAA, 0x0C, 0x00, 0x0C, 0x0F, 0x00, 0x83, 0x69, 0x73, 0x6F, + 0x6E, 0x00, 0x04, 0x06, 0x06, 0x12, 0x00, 0x83, 0x69, 0x6F, 0x6E, 0x00, + 0x47, 0xC4, 0x0C, 0x0C, 0xCE, 0x0C, 0x0F, 0xDD, 0x0C, 0x11, 0xE9, 0x0C, + 0x16, 0xF5, 0x0C, 0x00, 0x07, 0x04, 0x00, 0x83, 0x69, 0x74, 0x69, 0x6F, + 0x6E, 0x00, 0x17, 0x0C, 0x13, 0x08, 0x15, 0x00, 0x86, 0x65, 0x74, 0x69, + 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x04, 0x08, 0x15, 0x00, 0x85, 0x6C, 0x61, + 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x06, 0x18, 0x09, 0x00, 0x85, 0x6E, 0x63, + 0x74, 0x69, 0x6F, 0x6E, 0x00, 0x12, 0x13, 0x00, 0x83, 0x69, 0x74, 0x69, + 0x6F, 0x6E, 0x00, 0x0C, 0x19, 0x0C, 0x07, 0x00, 0x81, 0x69, 0x6F, 0x6E, + 0x00, 0x0C, 0x06, 0x04, 0x15, 0x09, 0x00, 0x83, 0x74, 0x69, 0x6F, 0x6E, + 0x00, 0x13, 0x0B, 0x04, 0x00, 0x84, 0x68, 0x61, 0x70, 0x70, 0x65, 0x6E, + 0x00, 0x17, 0x18, 0x08, 0x15, 0x00, 0x83, 0x74, 0x75, 0x72, 0x6E, 0x00, + 0x0A, 0x0C, 0x0B, 0x17, 0x00, 0x82, 0x6E, 0x67, 0x73, 0x00, 0x55, 0x3D, + 0x0D, 0x17, 0x46, 0x0D, 0x00, 0x17, 0x08, 0x15, 0x00, 0x82, 0x75, 0x72, + 0x6E, 0x00, 0x08, 0x15, 0x00, 0x80, 0x72, 0x6E, 0x00, 0x12, 0x0E, 0x11, + 0x18, 0x00, 0x82, 0x6E, 0x6F, 0x77, 0x6E, 0x00, 0x47, 0x62, 0x0D, 0x11, + 0x6D, 0x0D, 0x1A, 0x76, 0x0D, 0x00, 0x08, 0x18, 0x16, 0x13, 0x00, 0x83, + 0x65, 0x75, 0x64, 0x6F, 0x00, 0x1A, 0x0E, 0x2C, 0x00, 0x82, 0x6E, 0x6F, + 0x77, 0x00, 0x4F, 0x7D, 0x0D, 0x11, 0x85, 0x0D, 0x00, 0x0F, 0x12, 0x09, + 0x00, 0x81, 0x6F, 0x77, 0x00, 0x0E, 0x2C, 0x00, 0x81, 0x6F, 0x77, 0x00, + 0x56, 0x93, 0x0D, 0x18, 0x9D, 0x0D, 0x00, 0x04, 0x0B, 0x15, 0x08, 0x13, + 0x00, 0x81, 0x70, 0x73, 0x00, 0x12, 0x12, 0x0F, 0x00, 0x81, 0x6B, 0x75, + 0x70, 0x00, 0x44, 0xC5, 0x0D, 0x08, 0x06, 0x0E, 0x0B, 0x13, 0x0F, 0x0F, + 0x1C, 0x0F, 0x12, 0x2A, 0x0F, 0x13, 0x3B, 0x0F, 0x16, 0x46, 0x0F, 0x17, + 0x4F, 0x0F, 0x18, 0x5B, 0x0F, 0x1C, 0x64, 0x0F, 0x00, 0x4C, 0xCF, 0x0D, + 0x0F, 0xD9, 0x0D, 0x18, 0xFB, 0x0D, 0x00, 0x0F, 0x0C, 0x10, 0x0C, 0x16, + 0x00, 0x82, 0x61, 0x72, 0x00, 0x4C, 0xE0, 0x0D, 0x18, 0xEB, 0x0D, 0x00, + 0x10, 0x10, 0x0C, 0x16, 0x00, 0x84, 0x69, 0x6C, 0x61, 0x72, 0x00, 0x06, + 0x0C, 0x17, 0x04, 0x13, 0x00, 0x86, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6C, + 0x61, 0x72, 0x00, 0x0F, 0x0A, 0x08, 0x15, 0x00, 0x83, 0x75, 0x6C, 0x61, + 0x72, 0x00, 0x44, 0x25, 0x0E, 0x07, 0x2D, 0x0E, 0x0B, 0x3A, 0x0E, 0x0C, + 0x77, 0x0E, 0x0F, 0x91, 0x0E, 0x10, 0x9B, 0x0E, 0x11, 0xA5, 0x0E, 0x12, + 0xD1, 0x0E, 0x17, 0xD9, 0x0E, 0x19, 0xF8, 0x0E, 0x00, 0x0F, 0x06, 0x00, + 0x82, 0x65, 0x61, 0x72, 0x00, 0x11, 0x04, 0x0F, 0x04, 0x06, 0x00, 0x84, + 0x65, 0x6E, 0x64, 0x61, 0x72, 0x00, 0x4A, 0x41, 0x0E, 0x17, 0x4C, 0x0E, + 0x00, 0x0C, 0x08, 0x0B, 0x00, 0x85, 0x69, 0x67, 0x68, 0x65, 0x72, 0x00, + 0x48, 0x56, 0x0E, 0x12, 0x62, 0x0E, 0x18, 0x6E, 0x0E, 0x00, 0x0B, 0x0A, + 0x12, 0x17, 0x00, 0x85, 0x65, 0x74, 0x68, 0x65, 0x72, 0x00, 0x04, 0x11, + 0x00, 0x86, 0x61, 0x6E, 0x6F, 0x74, 0x68, 0x65, 0x72, 0x00, 0x09, 0x00, + 0x83, 0x72, 0x74, 0x68, 0x65, 0x72, 0x00, 0x4B, 0x7E, 0x0E, 0x0F, 0x86, + 0x0E, 0x00, 0x17, 0x2C, 0x00, 0x82, 0x65, 0x69, 0x72, 0x00, 0x13, 0x10, + 0x12, 0x06, 0x00, 0x83, 0x69, 0x6C, 0x65, 0x72, 0x00, 0x17, 0x0C, 0x09, + 0x00, 0x83, 0x6C, 0x74, 0x65, 0x72, 0x00, 0x10, 0x04, 0x15, 0x0A, 0x2C, + 0x00, 0x81, 0x61, 0x72, 0x00, 0x4C, 0xAC, 0x0E, 0x17, 0xB8, 0x0E, 0x00, + 0x0A, 0x0A, 0x08, 0x05, 0x00, 0x84, 0x69, 0x6E, 0x6E, 0x65, 0x72, 0x00, + 0x4C, 0xBF, 0x0E, 0x16, 0xC8, 0x0E, 0x00, 0x12, 0x13, 0x00, 0x83, 0x6E, + 0x74, 0x65, 0x72, 0x00, 0x0C, 0x0F, 0x00, 0x82, 0x65, 0x6E, 0x65, 0x72, + 0x00, 0x09, 0x08, 0x05, 0x00, 0x81, 0x72, 0x65, 0x00, 0x4B, 0xE0, 0x0E, + 0x18, 0xEA, 0x0E, 0x00, 0x12, 0x11, 0x04, 0x00, 0x83, 0x74, 0x68, 0x65, + 0x72, 0x00, 0x13, 0x12, 0x10, 0x06, 0x00, 0x86, 0x6F, 0x6D, 0x70, 0x75, + 0x74, 0x65, 0x72, 0x00, 0x48, 0xFF, 0x0E, 0x1A, 0x0A, 0x0F, 0x00, 0x08, + 0x15, 0x08, 0x0B, 0x1A, 0x00, 0x83, 0x76, 0x65, 0x72, 0x00, 0x12, 0x0B, + 0x00, 0x82, 0x65, 0x76, 0x65, 0x72, 0x00, 0x08, 0x17, 0x12, 0x00, 0x82, + 0x68, 0x65, 0x72, 0x00, 0x04, 0x18, 0x06, 0x0C, 0x17, 0x15, 0x04, 0x13, + 0x00, 0x82, 0x6C, 0x61, 0x72, 0x00, 0x17, 0x04, 0x15, 0x08, 0x17, 0x11, + 0x0C, 0x00, 0x87, 0x74, 0x65, 0x72, 0x61, 0x74, 0x6F, 0x72, 0x00, 0x17, + 0x0F, 0x0F, 0x18, 0x11, 0x00, 0x82, 0x70, 0x74, 0x72, 0x00, 0x04, 0x08, + 0x1C, 0x2C, 0x00, 0x81, 0x72, 0x73, 0x00, 0x12, 0x04, 0x15, 0x08, 0x13, + 0x12, 0x00, 0x82, 0x74, 0x6F, 0x72, 0x00, 0x06, 0x12, 0x2C, 0x00, 0x81, + 0x63, 0x75, 0x72, 0x00, 0x08, 0x19, 0x08, 0x2C, 0x00, 0x81, 0x72, 0x79, + 0x00, 0x44, 0x83, 0x0F, 0x08, 0xB7, 0x0F, 0x0A, 0x47, 0x10, 0x15, 0x52, + 0x10, 0x16, 0x5D, 0x10, 0x17, 0xF5, 0x10, 0x18, 0xFD, 0x10, 0x00, 0x4B, + 0x90, 0x0F, 0x13, 0x9B, 0x0F, 0x15, 0xA5, 0x0F, 0x1C, 0xAE, 0x0F, 0x00, + 0x13, 0x15, 0x08, 0x13, 0x00, 0x83, 0x68, 0x61, 0x70, 0x73, 0x00, 0x0B, + 0x15, 0x08, 0x13, 0x00, 0x82, 0x61, 0x70, 0x73, 0x00, 0x08, 0x1C, 0x2C, + 0x00, 0x82, 0x61, 0x72, 0x73, 0x00, 0x1A, 0x0F, 0x04, 0x00, 0x82, 0x61, + 0x79, 0x73, 0x00, 0x44, 0xC7, 0x0F, 0x06, 0xDE, 0x0F, 0x0C, 0xE9, 0x0F, + 0x0F, 0x35, 0x10, 0x16, 0x3C, 0x10, 0x00, 0x47, 0xCE, 0x0F, 0x0E, 0xD6, + 0x0F, 0x00, 0x0C, 0x2C, 0x00, 0x82, 0x65, 0x61, 0x73, 0x00, 0x17, 0x00, + 0x83, 0x61, 0x6B, 0x65, 0x73, 0x00, 0x08, 0x07, 0x11, 0x0C, 0x00, 0x83, + 0x69, 0x63, 0x65, 0x73, 0x00, 0x46, 0xF3, 0x0F, 0x15, 0x1A, 0x10, 0x17, + 0x29, 0x10, 0x00, 0x48, 0xFA, 0x0F, 0x0C, 0x04, 0x10, 0x00, 0x07, 0x11, + 0x0C, 0x00, 0x84, 0x69, 0x63, 0x65, 0x73, 0x00, 0x47, 0x0B, 0x10, 0x17, + 0x12, 0x10, 0x00, 0x11, 0x0C, 0x00, 0x82, 0x65, 0x73, 0x00, 0x15, 0x08, + 0x19, 0x00, 0x82, 0x65, 0x73, 0x00, 0x12, 0x16, 0x08, 0x06, 0x06, 0x04, + 0x00, 0x84, 0x73, 0x6F, 0x72, 0x69, 0x65, 0x73, 0x00, 0x0F, 0x0C, 0x05, + 0x04, 0x00, 0x83, 0x69, 0x74, 0x69, 0x65, 0x73, 0x00, 0x04, 0x09, 0x00, + 0x81, 0x73, 0x65, 0x00, 0x12, 0x0B, 0x06, 0x2C, 0x00, 0x82, 0x6F, 0x73, + 0x65, 0x73, 0x00, 0x0C, 0x11, 0x0B, 0x17, 0x00, 0x83, 0x69, 0x6E, 0x67, + 0x73, 0x00, 0x08, 0x04, 0x1C, 0x2C, 0x00, 0x83, 0x65, 0x61, 0x72, 0x73, + 0x00, 0x44, 0x67, 0x10, 0x08, 0x73, 0x10, 0x12, 0xEA, 0x10, 0x00, 0x15, + 0x04, 0x05, 0x10, 0x08, 0x00, 0x82, 0x72, 0x61, 0x73, 0x73, 0x00, 0x46, + 0x80, 0x10, 0x11, 0x98, 0x10, 0x15, 0xB5, 0x10, 0x16, 0xD2, 0x10, 0x00, + 0x46, 0x87, 0x10, 0x18, 0x90, 0x10, 0x00, 0x12, 0x15, 0x13, 0x00, 0x83, + 0x65, 0x73, 0x73, 0x00, 0x16, 0x00, 0x82, 0x63, 0x65, 0x73, 0x73, 0x00, + 0x4C, 0x9F, 0x10, 0x16, 0xAB, 0x10, 0x00, 0x16, 0x16, 0x18, 0x05, 0x00, + 0x85, 0x69, 0x6E, 0x65, 0x73, 0x73, 0x00, 0x18, 0x05, 0x00, 0x83, 0x69, + 0x6E, 0x65, 0x73, 0x73, 0x00, 0x13, 0x00, 0x55, 0xBE, 0x10, 0x18, 0xC9, + 0x10, 0x00, 0x18, 0x16, 0x00, 0x85, 0x70, 0x70, 0x72, 0x65, 0x73, 0x73, + 0x00, 0x16, 0x00, 0x83, 0x70, 0x72, 0x65, 0x73, 0x73, 0x00, 0x46, 0xD9, + 0x10, 0x12, 0xE2, 0x10, 0x00, 0x06, 0x18, 0x16, 0x00, 0x83, 0x65, 0x73, + 0x73, 0x00, 0x13, 0x00, 0x82, 0x73, 0x65, 0x73, 0x73, 0x00, 0x15, 0x06, + 0x06, 0x04, 0x00, 0x84, 0x72, 0x6F, 0x73, 0x73, 0x00, 0x15, 0x0C, 0x09, + 0x00, 0x81, 0x73, 0x74, 0x00, 0x52, 0x04, 0x11, 0x16, 0x12, 0x11, 0x00, + 0x0F, 0x12, 0x10, 0x12, 0x11, 0x04, 0x00, 0x84, 0x61, 0x6C, 0x6F, 0x75, + 0x73, 0x00, 0x11, 0x08, 0x06, 0x11, 0x12, 0x06, 0x00, 0x85, 0x73, 0x65, + 0x6E, 0x73, 0x75, 0x73, 0x00, 0x44, 0x46, 0x11, 0x08, 0x64, 0x11, 0x0A, + 0x81, 0x11, 0x0B, 0x8B, 0x11, 0x0C, 0xAF, 0x11, 0x0F, 0xBA, 0x11, 0x10, + 0xC5, 0x11, 0x11, 0xD1, 0x11, 0x12, 0x1F, 0x13, 0x13, 0x59, 0x13, 0x16, + 0x75, 0x13, 0x18, 0x15, 0x14, 0x00, 0x55, 0x4D, 0x11, 0x1A, 0x58, 0x11, + 0x00, 0x08, 0x13, 0x08, 0x16, 0x00, 0x83, 0x61, 0x72, 0x61, 0x74, 0x00, + 0x0B, 0x08, 0x10, 0x12, 0x16, 0x00, 0x83, 0x77, 0x68, 0x61, 0x74, 0x00, + 0x44, 0x6B, 0x11, 0x11, 0x74, 0x11, 0x00, 0x15, 0x0A, 0x2C, 0x00, 0x82, + 0x65, 0x61, 0x74, 0x00, 0x10, 0x11, 0x15, 0x08, 0x19, 0x12, 0x0A, 0x00, + 0x82, 0x65, 0x6E, 0x74, 0x00, 0x0B, 0x18, 0x04, 0x06, 0x00, 0x82, 0x67, + 0x68, 0x74, 0x00, 0x47, 0x95, 0x11, 0x0A, 0x9C, 0x11, 0x0C, 0xA4, 0x11, + 0x00, 0x0C, 0x1A, 0x00, 0x81, 0x74, 0x68, 0x00, 0x11, 0x08, 0x0F, 0x00, + 0x81, 0x74, 0x68, 0x00, 0x0A, 0x11, 0x12, 0x17, 0x00, 0x83, 0x69, 0x67, + 0x68, 0x74, 0x00, 0x17, 0x18, 0x12, 0x05, 0x04, 0x00, 0x81, 0x20, 0x69, + 0x74, 0x00, 0x16, 0x18, 0x08, 0x15, 0x00, 0x83, 0x73, 0x75, 0x6C, 0x74, + 0x00, 0x04, 0x17, 0x15, 0x12, 0x13, 0x10, 0x0C, 0x00, 0x81, 0x6E, 0x74, + 0x00, 0x44, 0xDE, 0x11, 0x08, 0x16, 0x12, 0x15, 0x0C, 0x13, 0x16, 0x17, + 0x13, 0x00, 0x4C, 0xEB, 0x11, 0x11, 0xF6, 0x11, 0x15, 0x01, 0x12, 0x17, + 0x0B, 0x12, 0x00, 0x13, 0x0C, 0x06, 0x08, 0x15, 0x00, 0x82, 0x65, 0x6E, + 0x74, 0x00, 0x0C, 0x10, 0x12, 0x15, 0x13, 0x00, 0x82, 0x65, 0x6E, 0x74, + 0x00, 0x04, 0x13, 0x13, 0x04, 0x00, 0x82, 0x65, 0x6E, 0x74, 0x00, 0x08, + 0x13, 0x10, 0x12, 0x06, 0x00, 0x82, 0x65, 0x6E, 0x74, 0x00, 0x4C, 0x23, + 0x12, 0x10, 0x44, 0x12, 0x15, 0xA8, 0x12, 0x19, 0x02, 0x13, 0x00, 0x46, + 0x2A, 0x12, 0x13, 0x37, 0x12, 0x00, 0x08, 0x09, 0x09, 0x08, 0x00, 0x85, + 0x69, 0x63, 0x69, 0x65, 0x6E, 0x74, 0x00, 0x08, 0x06, 0x08, 0x15, 0x00, + 0x85, 0x69, 0x70, 0x69, 0x65, 0x6E, 0x74, 0x00, 0x48, 0x51, 0x12, 0x11, + 0x5D, 0x12, 0x15, 0x7E, 0x12, 0x17, 0x9D, 0x12, 0x00, 0x19, 0x12, 0x0A, + 0x00, 0x83, 0x72, 0x6E, 0x6D, 0x65, 0x6E, 0x74, 0x00, 0x48, 0x64, 0x12, + 0x15, 0x70, 0x12, 0x00, 0x19, 0x12, 0x0A, 0x00, 0x84, 0x72, 0x6E, 0x6D, + 0x65, 0x6E, 0x74, 0x00, 0x12, 0x19, 0x12, 0x0A, 0x00, 0x86, 0x65, 0x72, + 0x6E, 0x6D, 0x65, 0x6E, 0x74, 0x00, 0x48, 0x85, 0x12, 0x12, 0x90, 0x12, + 0x00, 0x19, 0x12, 0x0A, 0x00, 0x83, 0x6E, 0x6D, 0x65, 0x6E, 0x74, 0x00, + 0x19, 0x12, 0x0A, 0x00, 0x85, 0x65, 0x72, 0x6E, 0x6D, 0x65, 0x6E, 0x74, + 0x00, 0x04, 0x17, 0x16, 0x00, 0x83, 0x65, 0x6D, 0x65, 0x6E, 0x74, 0x00, + 0x44, 0xB5, 0x12, 0x08, 0xC0, 0x12, 0x09, 0xCC, 0x12, 0x15, 0xD7, 0x12, + 0x00, 0x13, 0x04, 0x00, 0x84, 0x70, 0x61, 0x72, 0x65, 0x6E, 0x74, 0x00, + 0x09, 0x0C, 0x07, 0x00, 0x84, 0x66, 0x65, 0x72, 0x65, 0x6E, 0x74, 0x00, + 0x09, 0x0C, 0x07, 0x00, 0x83, 0x65, 0x72, 0x65, 0x6E, 0x74, 0x00, 0x44, + 0xDE, 0x12, 0x08, 0xF6, 0x12, 0x00, 0x13, 0x00, 0x44, 0xE7, 0x12, 0x13, + 0xEF, 0x12, 0x00, 0x85, 0x70, 0x61, 0x72, 0x65, 0x6E, 0x74, 0x00, 0x04, + 0x00, 0x83, 0x65, 0x6E, 0x74, 0x00, 0x09, 0x0C, 0x07, 0x00, 0x85, 0x66, + 0x65, 0x72, 0x65, 0x6E, 0x74, 0x00, 0x08, 0x0F, 0x08, 0x15, 0x00, 0x82, + 0x61, 0x6E, 0x74, 0x00, 0x08, 0x09, 0x09, 0x0C, 0x07, 0x00, 0x81, 0x65, + 0x6E, 0x74, 0x00, 0x12, 0x06, 0x00, 0x82, 0x6E, 0x73, 0x74, 0x00, 0x45, + 0x2F, 0x13, 0x10, 0x36, 0x13, 0x11, 0x3D, 0x13, 0x15, 0x47, 0x13, 0x16, + 0x50, 0x13, 0x00, 0x04, 0x2C, 0x00, 0x80, 0x75, 0x74, 0x00, 0x0F, 0x04, + 0x00, 0x80, 0x73, 0x74, 0x00, 0x07, 0x0C, 0x07, 0x00, 0x82, 0x20, 0x6E, + 0x6F, 0x74, 0x00, 0x13, 0x08, 0x15, 0x00, 0x82, 0x6F, 0x72, 0x74, 0x00, + 0x10, 0x0F, 0x04, 0x00, 0x82, 0x6F, 0x73, 0x74, 0x00, 0x48, 0x60, 0x13, + 0x1C, 0x6B, 0x13, 0x00, 0x0C, 0x06, 0x08, 0x15, 0x00, 0x83, 0x65, 0x69, + 0x70, 0x74, 0x00, 0x06, 0x11, 0x08, 0x00, 0x82, 0x72, 0x79, 0x70, 0x74, + 0x00, 0x48, 0x8B, 0x13, 0x0A, 0xB4, 0x13, 0x0C, 0xBD, 0x13, 0x10, 0xDA, + 0x13, 0x11, 0xE4, 0x13, 0x12, 0xFF, 0x13, 0x18, 0x0A, 0x14, 0x00, 0x4A, + 0x92, 0x13, 0x15, 0xA9, 0x13, 0x00, 0x4C, 0x99, 0x13, 0x18, 0xA1, 0x13, + 0x00, 0x0B, 0x00, 0x82, 0x68, 0x65, 0x73, 0x74, 0x00, 0x16, 0x00, 0x82, + 0x67, 0x65, 0x73, 0x74, 0x00, 0x17, 0x11, 0x0C, 0x00, 0x83, 0x65, 0x72, + 0x65, 0x73, 0x74, 0x00, 0x15, 0x04, 0x0F, 0x00, 0x81, 0x65, 0x73, 0x74, + 0x00, 0x49, 0xC4, 0x13, 0x11, 0xD0, 0x13, 0x00, 0x08, 0x11, 0x04, 0x10, + 0x00, 0x84, 0x69, 0x66, 0x65, 0x73, 0x74, 0x00, 0x04, 0x0A, 0x04, 0x00, + 0x83, 0x69, 0x6E, 0x73, 0x74, 0x00, 0x12, 0x0F, 0x04, 0x00, 0x83, 0x6D, + 0x6F, 0x73, 0x74, 0x00, 0x44, 0xEB, 0x13, 0x11, 0xF6, 0x13, 0x00, 0x0C, + 0x0A, 0x04, 0x00, 0x84, 0x61, 0x69, 0x6E, 0x73, 0x74, 0x00, 0x0C, 0x04, + 0x0A, 0x04, 0x00, 0x82, 0x73, 0x74, 0x00, 0x0F, 0x10, 0x04, 0x00, 0x84, + 0x6C, 0x6D, 0x6F, 0x73, 0x74, 0x00, 0x0D, 0x04, 0x2C, 0x00, 0x83, 0x64, + 0x6A, 0x75, 0x73, 0x74, 0x00, 0x46, 0x1F, 0x14, 0x13, 0x38, 0x14, 0x17, + 0x4F, 0x14, 0x00, 0x48, 0x26, 0x14, 0x15, 0x31, 0x14, 0x00, 0x06, 0x1B, + 0x08, 0x00, 0x84, 0x65, 0x63, 0x75, 0x74, 0x65, 0x00, 0x0C, 0x06, 0x00, + 0x80, 0x69, 0x74, 0x00, 0x57, 0x3F, 0x14, 0x18, 0x47, 0x14, 0x00, 0x11, + 0x0C, 0x00, 0x83, 0x70, 0x75, 0x74, 0x00, 0x12, 0x00, 0x82, 0x74, 0x70, + 0x75, 0x74, 0x00, 0x13, 0x18, 0x12, 0x00, 0x83, 0x74, 0x70, 0x75, 0x74, + 0x00, 0x48, 0x60, 0x14, 0x0C, 0x84, 0x14, 0x00, 0x44, 0x67, 0x14, 0x0C, + 0x6E, 0x14, 0x00, 0x0B, 0x2C, 0x00, 0x81, 0x76, 0x65, 0x00, 0x46, 0x75, + 0x14, 0x08, 0x7D, 0x14, 0x00, 0x08, 0x15, 0x00, 0x82, 0x65, 0x69, 0x76, + 0x00, 0x06, 0x08, 0x15, 0x00, 0x81, 0x76, 0x00, 0x08, 0x0B, 0x06, 0x04, + 0x2C, 0x00, 0x82, 0x69, 0x65, 0x76, 0x65, 0x00, 0x4C, 0x9A, 0x14, 0x11, + 0xA4, 0x14, 0x12, 0xAD, 0x14, 0x00, 0x08, 0x19, 0x08, 0x15, 0x00, 0x82, + 0x69, 0x65, 0x77, 0x00, 0x12, 0x0E, 0x2C, 0x00, 0x82, 0x6E, 0x6F, 0x77, + 0x00, 0x0F, 0x12, 0x09, 0x00, 0x81, 0x6C, 0x6F, 0x77, 0x00, 0x44, 0xD2, + 0x14, 0x06, 0xDD, 0x14, 0x08, 0x18, 0x15, 0x0B, 0x22, 0x15, 0x0F, 0x34, + 0x15, 0x11, 0xF9, 0x15, 0x15, 0x03, 0x16, 0x16, 0xA8, 0x16, 0x17, 0xC3, + 0x16, 0x00, 0x11, 0x13, 0x10, 0x12, 0x06, 0x00, 0x82, 0x61, 0x6E, 0x79, + 0x00, 0x44, 0xEA, 0x14, 0x08, 0xF6, 0x14, 0x0C, 0x01, 0x15, 0x13, 0x0C, + 0x15, 0x00, 0x15, 0x06, 0x12, 0x13, 0x1C, 0x0B, 0x00, 0x82, 0x69, 0x73, + 0x79, 0x00, 0x18, 0x14, 0x08, 0x15, 0x09, 0x00, 0x81, 0x6E, 0x63, 0x79, + 0x00, 0x15, 0x06, 0x12, 0x13, 0x1C, 0x0B, 0x00, 0x81, 0x73, 0x79, 0x00, + 0x18, 0x15, 0x0E, 0x11, 0x04, 0x05, 0x00, 0x81, 0x74, 0x63, 0x79, 0x00, + 0x17, 0x09, 0x04, 0x16, 0x00, 0x82, 0x65, 0x74, 0x79, 0x00, 0x06, 0x15, + 0x04, 0x15, 0x0C, 0x08, 0x0B, 0x00, 0x87, 0x69, 0x65, 0x72, 0x61, 0x72, + 0x63, 0x68, 0x79, 0x00, 0x44, 0x47, 0x15, 0x0B, 0x8A, 0x15, 0x0E, 0x94, + 0x15, 0x0F, 0x9C, 0x15, 0x12, 0xE4, 0x15, 0x15, 0xEE, 0x15, 0x00, 0x45, + 0x5A, 0x15, 0x08, 0x63, 0x15, 0x0F, 0x69, 0x15, 0x11, 0x72, 0x15, 0x15, + 0x79, 0x15, 0x18, 0x82, 0x15, 0x00, 0x12, 0x15, 0x13, 0x00, 0x81, 0x62, + 0x6C, 0x79, 0x00, 0x15, 0x00, 0x80, 0x6C, 0x79, 0x00, 0x08, 0x15, 0x00, + 0x83, 0x61, 0x6C, 0x6C, 0x79, 0x00, 0x0C, 0x09, 0x00, 0x80, 0x6C, 0x79, + 0x00, 0x08, 0x11, 0x08, 0x0A, 0x00, 0x80, 0x6C, 0x79, 0x00, 0x17, 0x06, + 0x04, 0x00, 0x80, 0x6C, 0x79, 0x00, 0x0A, 0x0C, 0x0F, 0x16, 0x00, 0x81, + 0x74, 0x6C, 0x79, 0x00, 0x0C, 0x0F, 0x00, 0x81, 0x65, 0x6C, 0x79, 0x00, + 0x44, 0xA6, 0x15, 0x05, 0xD1, 0x15, 0x08, 0xDA, 0x15, 0x00, 0x56, 0xAD, + 0x15, 0x17, 0xC5, 0x15, 0x00, 0x18, 0x00, 0x6C, 0xB6, 0x15, 0x16, 0xBD, + 0x15, 0x00, 0x83, 0x75, 0x61, 0x6C, 0x6C, 0x79, 0x00, 0x18, 0x00, 0x84, + 0x61, 0x6C, 0x6C, 0x79, 0x00, 0x18, 0x06, 0x04, 0x00, 0x85, 0x74, 0x75, + 0x61, 0x6C, 0x6C, 0x79, 0x00, 0x04, 0x05, 0x12, 0x15, 0x13, 0x00, 0x81, + 0x79, 0x00, 0x04, 0x15, 0x00, 0x84, 0x65, 0x61, 0x6C, 0x6C, 0x79, 0x00, + 0x10, 0x12, 0x11, 0x04, 0x00, 0x82, 0x61, 0x6C, 0x79, 0x00, 0x04, 0x10, + 0x0C, 0x15, 0x13, 0x00, 0x81, 0x69, 0x6C, 0x79, 0x00, 0x08, 0x12, 0x10, + 0x2C, 0x00, 0x82, 0x6E, 0x65, 0x79, 0x00, 0x44, 0x13, 0x16, 0x08, 0x7B, + 0x16, 0x12, 0x84, 0x16, 0x17, 0x91, 0x16, 0x19, 0xA0, 0x16, 0x00, 0x45, + 0x23, 0x16, 0x0C, 0x2C, 0x16, 0x0F, 0x39, 0x16, 0x10, 0x55, 0x16, 0x16, + 0x5E, 0x16, 0x00, 0x0C, 0x0F, 0x00, 0x82, 0x72, 0x61, 0x72, 0x79, 0x00, + 0x0F, 0x0F, 0x0C, 0x1B, 0x18, 0x04, 0x00, 0x84, 0x69, 0x61, 0x72, 0x79, + 0x00, 0x4C, 0x40, 0x16, 0x0F, 0x4A, 0x16, 0x00, 0x1B, 0x18, 0x04, 0x00, + 0x82, 0x69, 0x61, 0x72, 0x79, 0x00, 0x0C, 0x1B, 0x18, 0x04, 0x00, 0x83, + 0x69, 0x61, 0x72, 0x79, 0x00, 0x18, 0x16, 0x00, 0x82, 0x6D, 0x61, 0x72, + 0x79, 0x00, 0x08, 0x06, 0x00, 0x46, 0x68, 0x16, 0x08, 0x73, 0x16, 0x00, + 0x08, 0x11, 0x00, 0x85, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0x00, 0x11, + 0x00, 0x82, 0x73, 0x61, 0x72, 0x79, 0x00, 0x13, 0x12, 0x15, 0x13, 0x00, + 0x80, 0x74, 0x79, 0x00, 0x0A, 0x04, 0x17, 0x04, 0x06, 0x00, 0x84, 0x65, + 0x67, 0x6F, 0x72, 0x79, 0x00, 0x11, 0x18, 0x06, 0x12, 0x2C, 0x00, 0x86, + 0x63, 0x6F, 0x75, 0x6E, 0x74, 0x72, 0x79, 0x00, 0x08, 0x2C, 0x00, 0x81, + 0x65, 0x72, 0x79, 0x00, 0x04, 0x00, 0x55, 0xB1, 0x16, 0x1A, 0xBC, 0x16, + 0x00, 0x06, 0x12, 0x13, 0x1C, 0x0B, 0x00, 0x82, 0x69, 0x73, 0x79, 0x00, + 0x0F, 0x04, 0x00, 0x81, 0x79, 0x73, 0x00, 0x49, 0xCD, 0x16, 0x0F, 0xD5, + 0x16, 0x15, 0xDE, 0x16, 0x00, 0x04, 0x16, 0x00, 0x81, 0x65, 0x74, 0x79, + 0x00, 0x0C, 0x05, 0x04, 0x00, 0x81, 0x69, 0x74, 0x79, 0x00, 0x13, 0x08, + 0x12, 0x15, 0x13, 0x00, 0x84, 0x70, 0x65, 0x72, 0x74, 0x79, 0x00}; diff --git a/waffle/color.c b/waffle/color.c index dd8cc9f..9e81df8 100644 --- a/waffle/color.c +++ b/waffle/color.c @@ -48,7 +48,7 @@ RGB rgb_matrix_hsv_to_rgb(const HSV hsv) { uint8_t twothirds = scale8(offset8, ((256 * 2) / 3)); r = 171 - twothirds; g = 170 + third; - b = 0; + b = 0; FORCE_REFERENCE(b); } if (Y2) { diff --git a/waffle/combos.h b/waffle/combos.h index 870e34e..e73758a 100644 --- a/waffle/combos.h +++ b/waffle/combos.h @@ -8,7 +8,8 @@ enum combos { }; #undef CMB -#define CMB(name, action, ...) uint16_t const name##_combo[] PROGMEM = {__VA_ARGS__, COMBO_END}; +#define CMB(name, action, ...) \ + uint16_t const name##_combo[] PROGMEM = {__VA_ARGS__, COMBO_END}; #include "combos.def" #undef CMB diff --git a/waffle/dict.h b/waffle/dict.h index 04af5e1..7141e3e 100644 --- a/waffle/dict.h +++ b/waffle/dict.h @@ -5,204 +5,203 @@ #define NUM_WORDS 1000 const char *dict[NUM_WORDS] = { - "the", "of", "to", "and", "a", - "in", "is", "it", "you", "that", - "he", "was", "for", "on", "are", - "with", "as", "I", "his", "they", - "be", "at", "one", "have", "this", - "from", "or", "had", "by", "not", - "word", "but", "what", "some", "we", - "can", "out", "other", "were", "all", - "there", "when", "up", "use", "your", - "how", "said", "an", "each", "she", - "which", "do", "their", "time", "if", - "will", "way", "about", "many", "then", - "them", "write", "would", "like", "so", - "these", "her", "long", "make", "thing", - "see", "him", "two", "has", "look", - "more", "day", "could", "go", "come", - "did", "number", "sound", "no", "most", - "people", "my", "over", "know", "water", - "than", "call", "first", "who", "may", - "down", "side", "been", "now", "find", - "any", "new", "work", "part", "take", - "get", "place", "made", "live", "where", - "after", "back", "little", "only", "round", - "man", "year", "came", "show", "every", - "good", "me", "give", "our", "under", - "name", "very", "through", "just", "form", - "sentence", "great", "think", "say", "help", - "low", "line", "differ", "turn", "cause", - "much", "mean", "before", "move", "right", - "boy", "old", "too", "same", "tell", - "does", "set", "three", "want", "air", - "well", "also", "play", "small", "end", - "put", "home", "read", "hand", "port", - "large", "spell", "add", "even", "land", - "here", "must", "big", "high", "such", - "follow", "act", "why", "ask", "men", - "change", "went", "light", "kind", "off", - "need", "house", "picture", "try", "us", - "again", "animal", "point", "mother", "world", - "near", "build", "self", "earth", "father", - "head", "stand", "own", "page", "should", - "country", "found", "answer", "school", "grow", - "study", "still", "learn", "plant", "cover", - "food", "sun", "four", "between", "state", - "keep", "eye", "never", "last", "let", - "thought", "city", "tree", "cross", "farm", - "hard", "start", "might", "story", "saw", - "far", "sea", "draw", "left", "late", - "run", "don't", "while", "press", "close", - "night", "real", "life", "few", "north", - "open", "seem", "together", "next", "white", - "children", "begin", "got", "walk", "example", - "ease", "paper", "group", "always", "music", - "those", "both", "mark", "often", "letter", - "until", "mile", "river", "car", "feet", - "care", "second", "book", "carry", "took", - "science", "eat", "room", "friend", "began", - "idea", "fish", "mountain", "stop", "once", - "base", "hear", "horse", "cut", "sure", - "watch", "color", "face", "wood", "main", - "enough", "plain", "girl", "usual", "young", - "ready", "above", "ever", "red", "list", - "though", "feel", "talk", "bird", "soon", - "body", "dog", "family", "direct", "pose", - "leave", "song", "measure", "door", "product", - "black", "short", "numeral", "class", "wind", - "question", "happen", "complete", "ship", "area", - "half", "rock", "order", "fire", "south", - "problem", "piece", "told", "knew", "pass", - "since", "top", "whole", "king", "space", - "heard", "best", "hour", "better", "true", - "during", "hundred", "five", "remember", "step", - "early", "hold", "west", "ground", "interest", - "reach", "fast", "verb", "sing", "listen", - "six", "table", "travel", "less", "morning", - "ten", "simple", "several", "vowel", "toward", - "war", "lay", "against", "pattern", "slow", - "center", "love", "person", "money", "serve", - "appear", "road", "map", "rain", "rule", - "govern", "pull", "cold", "notice", "voice", - "unit", "power", "town", "fine", "certain", - "fly", "fall", "lead", "cry", "dark", - "machine", "note", "wait", "plan", "figure", - "star", "box", "noun", "field", "rest", - "correct", "able", "pound", "done", "beauty", - "drive", "stood", "contain", "front", "teach", - "week", "final", "gave", "green", "oh", - "quick", "develop", "ocean", "warm", "free", - "minute", "strong", "special", "mind", "behind", - "clear", "tail", "produce", "fact", "street", - "inch", "multiply", "nothing", "course", "stay", - "wheel", "full", "force", "blue", "object", - "decide", "surface", "deep", "moon", "island", - "foot", "system", "busy", "test", "record", - "boat", "common", "gold", "possible", "plane", - "stead", "dry", "wonder", "laugh", "thousand", - "ago", "ran", "check", "game", "shape", - "equate", "hot", "miss", "brought", "heat", - "snow", "tire", "bring", "yes", "distant", - "fill", "east", "paint", "language", "among", - "grand", "ball", "yet", "wave", "drop", - "heart", "am", "present", "heavy", "dance", - "engine", "position", "arm", "wide", "sail", - "material", "size", "vary", "settle", "speak", - "weight", "general", "ice", "matter", "circle", - "pair", "include", "divide", "syllable", "felt", - "perhaps", "pick", "sudden", "count", "square", - "reason", "length", "represent", "art", "subject", - "region", "energy", "hunt", "probable", "bed", - "brother", "egg", "ride", "cell", "believe", - "fraction", "forest", "sit", "race", "window", - "store", "summer", "train", "sleep", "prove", - "lone", "leg", "exercise", "wall", "catch", - "mount", "wish", "sky", "board", "joy", - "winter", "sat", "written", "wild", "instrument", - "kept", "glass", "grass", "cow", "job", - "edge", "sign", "visit", "past", "soft", - "fun", "bright", "gas", "weather", "month", - "million", "bear", "finish", "happy", "hope", - "flower", "clothe", "strange", "gone", "jump", - "baby", "eight", "village", "meet", "root", - "buy", "raise", "solve", "metal", "whether", - "push", "seven", "paragraph", "third", "shall", - "held", "hair", "describe", "cook", "floor", - "either", "result", "burn", "hill", "safe", - "cat", "century", "consider", "type", "law", - "bit", "coast", "copy", "phrase", "silent", - "tall", "sand", "soil", "roll", "temperature", - "finger", "industry", "value", "fight", "lie", - "beat", "excite", "natural", "view", "sense", - "ear", "else", "quite", "broke", "case", - "middle", "kill", "son", "lake", "moment", - "scale", "loud", "spring", "observe", "child", - "straight", "consonant", "nation", "dictionary", "milk", - "speed", "method", "organ", "pay", "age", - "section", "dress", "cloud", "surprise", "quiet", - "stone", "tiny", "climb", "cool", "design", - "poor", "lot", "experiment", "bottom", "key", - "iron", "single", "stick", "flat", "twenty", - "skin", "smile", "crease", "hole", "trade", - "melody", "trip", "office", "receive", "row", - "mouth", "exact", "symbol", "die", "least", - "trouble", "shout", "except", "wrote", "seed", - "tone", "join", "suggest", "clean", "break", - "lady", "yard", "rise", "bad", "blow", - "oil", "blood", "touch", "grew", "cent", - "mix", "team", "wire", "cost", "lost", - "brown", "wear", "garden", "equal", "sent", - "choose", "fell", "fit", "flow", "fair", - "bank", "collect", "save", "control", "decimal", - "gentle", "woman", "captain", "practice", "separate", - "difficult", "doctor", "please", "protect", "noon", - "whose", "locate", "ring", "character", "insect", - "caught", "period", "indicate", "radio", "spoke", - "atom", "human", "history", "effect", "electric", - "expect", "crop", "modern", "element", "hit", - "student", "corner", "party", "supply", "bone", - "rail", "imagine", "provide", "agree", "thus", - "capital", "won't", "chair", "danger", "fruit", - "rich", "thick", "soldier", "process", "operate", - "guess", "necessary", "sharp", "wing", "create", - "neighbor", "wash", "bat", "rather", "crowd", - "corn", "compare", "poem", "string", "bell", - "depend", "meat", "rub", "tube", "famous", - "dollar", "stream", "fear", "sight", "thin", - "triangle", "planet", "hurry", "chief", "colony", - "clock", "mine", "tie", "enter", "major", - "fresh", "search", "send", "yellow", "gun", - "allow", "print", "dead", "spot", "desert", - "suit", "current", "lift", "rose", "continue", - "block", "chart", "hat", "sell", "success", - "company", "subtract", "event", "particular", "deal", - "swim", "term", "opposite", "wife", "shoe", - "shoulder", "spread", "arrange", "camp", "invent", - "cotton", "born", "determine", "quart", "nine", - "truck", "noise", "level", "chance", "gather", - "shop", "stretch", "throw", "shine", "property", - "column", "molecule", "select", "wrong", "gray", - "repeat", "require", "broad", "prepare", "salt", - "nose", "plural", "anger", "claim", "continent", - "oxygen", "sugar", "death", "pretty", "skill", - "women", "season", "solution", "magnet", "silver", - "thank", "branch", "match", "suffix", "especially", - "fig", "afraid", "huge", "sister", "steel", - "discuss", "forward", "similar", "guide", "experience", - "score", "apple", "bought", "led", "pitch", - "coat", "mass", "card", "band", "rope", - "slip", "win", "dream", "evening", "condition", - "feed", "tool", "total", "basic", "smell", - "valley", "nor", "double", "seat", "arrive", - "master", "track", "parent", "shore", "division", - "sheet", "substance", "favor", "connect", "post", - "spend", "chord", "fat", "glad", "original", - "share", "station", "dad", "bread", "charge", - "proper", "bar", "offer", "segment", "slave", - "duck", "instant", "market", "degree", "populate", - "chick", "dear", "enemy", "reply", "drink", - "occur", "support", "speech", "nature", "range", - "steam", "motion", "path", "liquid", "log", - "meant", "quotient", "teeth", "shell", "neck" -}; + "the", "of", "to", "and", "a", + "in", "is", "it", "you", "that", + "he", "was", "for", "on", "are", + "with", "as", "I", "his", "they", + "be", "at", "one", "have", "this", + "from", "or", "had", "by", "not", + "word", "but", "what", "some", "we", + "can", "out", "other", "were", "all", + "there", "when", "up", "use", "your", + "how", "said", "an", "each", "she", + "which", "do", "their", "time", "if", + "will", "way", "about", "many", "then", + "them", "write", "would", "like", "so", + "these", "her", "long", "make", "thing", + "see", "him", "two", "has", "look", + "more", "day", "could", "go", "come", + "did", "number", "sound", "no", "most", + "people", "my", "over", "know", "water", + "than", "call", "first", "who", "may", + "down", "side", "been", "now", "find", + "any", "new", "work", "part", "take", + "get", "place", "made", "live", "where", + "after", "back", "little", "only", "round", + "man", "year", "came", "show", "every", + "good", "me", "give", "our", "under", + "name", "very", "through", "just", "form", + "sentence", "great", "think", "say", "help", + "low", "line", "differ", "turn", "cause", + "much", "mean", "before", "move", "right", + "boy", "old", "too", "same", "tell", + "does", "set", "three", "want", "air", + "well", "also", "play", "small", "end", + "put", "home", "read", "hand", "port", + "large", "spell", "add", "even", "land", + "here", "must", "big", "high", "such", + "follow", "act", "why", "ask", "men", + "change", "went", "light", "kind", "off", + "need", "house", "picture", "try", "us", + "again", "animal", "point", "mother", "world", + "near", "build", "self", "earth", "father", + "head", "stand", "own", "page", "should", + "country", "found", "answer", "school", "grow", + "study", "still", "learn", "plant", "cover", + "food", "sun", "four", "between", "state", + "keep", "eye", "never", "last", "let", + "thought", "city", "tree", "cross", "farm", + "hard", "start", "might", "story", "saw", + "far", "sea", "draw", "left", "late", + "run", "don't", "while", "press", "close", + "night", "real", "life", "few", "north", + "open", "seem", "together", "next", "white", + "children", "begin", "got", "walk", "example", + "ease", "paper", "group", "always", "music", + "those", "both", "mark", "often", "letter", + "until", "mile", "river", "car", "feet", + "care", "second", "book", "carry", "took", + "science", "eat", "room", "friend", "began", + "idea", "fish", "mountain", "stop", "once", + "base", "hear", "horse", "cut", "sure", + "watch", "color", "face", "wood", "main", + "enough", "plain", "girl", "usual", "young", + "ready", "above", "ever", "red", "list", + "though", "feel", "talk", "bird", "soon", + "body", "dog", "family", "direct", "pose", + "leave", "song", "measure", "door", "product", + "black", "short", "numeral", "class", "wind", + "question", "happen", "complete", "ship", "area", + "half", "rock", "order", "fire", "south", + "problem", "piece", "told", "knew", "pass", + "since", "top", "whole", "king", "space", + "heard", "best", "hour", "better", "true", + "during", "hundred", "five", "remember", "step", + "early", "hold", "west", "ground", "interest", + "reach", "fast", "verb", "sing", "listen", + "six", "table", "travel", "less", "morning", + "ten", "simple", "several", "vowel", "toward", + "war", "lay", "against", "pattern", "slow", + "center", "love", "person", "money", "serve", + "appear", "road", "map", "rain", "rule", + "govern", "pull", "cold", "notice", "voice", + "unit", "power", "town", "fine", "certain", + "fly", "fall", "lead", "cry", "dark", + "machine", "note", "wait", "plan", "figure", + "star", "box", "noun", "field", "rest", + "correct", "able", "pound", "done", "beauty", + "drive", "stood", "contain", "front", "teach", + "week", "final", "gave", "green", "oh", + "quick", "develop", "ocean", "warm", "free", + "minute", "strong", "special", "mind", "behind", + "clear", "tail", "produce", "fact", "street", + "inch", "multiply", "nothing", "course", "stay", + "wheel", "full", "force", "blue", "object", + "decide", "surface", "deep", "moon", "island", + "foot", "system", "busy", "test", "record", + "boat", "common", "gold", "possible", "plane", + "stead", "dry", "wonder", "laugh", "thousand", + "ago", "ran", "check", "game", "shape", + "equate", "hot", "miss", "brought", "heat", + "snow", "tire", "bring", "yes", "distant", + "fill", "east", "paint", "language", "among", + "grand", "ball", "yet", "wave", "drop", + "heart", "am", "present", "heavy", "dance", + "engine", "position", "arm", "wide", "sail", + "material", "size", "vary", "settle", "speak", + "weight", "general", "ice", "matter", "circle", + "pair", "include", "divide", "syllable", "felt", + "perhaps", "pick", "sudden", "count", "square", + "reason", "length", "represent", "art", "subject", + "region", "energy", "hunt", "probable", "bed", + "brother", "egg", "ride", "cell", "believe", + "fraction", "forest", "sit", "race", "window", + "store", "summer", "train", "sleep", "prove", + "lone", "leg", "exercise", "wall", "catch", + "mount", "wish", "sky", "board", "joy", + "winter", "sat", "written", "wild", "instrument", + "kept", "glass", "grass", "cow", "job", + "edge", "sign", "visit", "past", "soft", + "fun", "bright", "gas", "weather", "month", + "million", "bear", "finish", "happy", "hope", + "flower", "clothe", "strange", "gone", "jump", + "baby", "eight", "village", "meet", "root", + "buy", "raise", "solve", "metal", "whether", + "push", "seven", "paragraph", "third", "shall", + "held", "hair", "describe", "cook", "floor", + "either", "result", "burn", "hill", "safe", + "cat", "century", "consider", "type", "law", + "bit", "coast", "copy", "phrase", "silent", + "tall", "sand", "soil", "roll", "temperature", + "finger", "industry", "value", "fight", "lie", + "beat", "excite", "natural", "view", "sense", + "ear", "else", "quite", "broke", "case", + "middle", "kill", "son", "lake", "moment", + "scale", "loud", "spring", "observe", "child", + "straight", "consonant", "nation", "dictionary", "milk", + "speed", "method", "organ", "pay", "age", + "section", "dress", "cloud", "surprise", "quiet", + "stone", "tiny", "climb", "cool", "design", + "poor", "lot", "experiment", "bottom", "key", + "iron", "single", "stick", "flat", "twenty", + "skin", "smile", "crease", "hole", "trade", + "melody", "trip", "office", "receive", "row", + "mouth", "exact", "symbol", "die", "least", + "trouble", "shout", "except", "wrote", "seed", + "tone", "join", "suggest", "clean", "break", + "lady", "yard", "rise", "bad", "blow", + "oil", "blood", "touch", "grew", "cent", + "mix", "team", "wire", "cost", "lost", + "brown", "wear", "garden", "equal", "sent", + "choose", "fell", "fit", "flow", "fair", + "bank", "collect", "save", "control", "decimal", + "gentle", "woman", "captain", "practice", "separate", + "difficult", "doctor", "please", "protect", "noon", + "whose", "locate", "ring", "character", "insect", + "caught", "period", "indicate", "radio", "spoke", + "atom", "human", "history", "effect", "electric", + "expect", "crop", "modern", "element", "hit", + "student", "corner", "party", "supply", "bone", + "rail", "imagine", "provide", "agree", "thus", + "capital", "won't", "chair", "danger", "fruit", + "rich", "thick", "soldier", "process", "operate", + "guess", "necessary", "sharp", "wing", "create", + "neighbor", "wash", "bat", "rather", "crowd", + "corn", "compare", "poem", "string", "bell", + "depend", "meat", "rub", "tube", "famous", + "dollar", "stream", "fear", "sight", "thin", + "triangle", "planet", "hurry", "chief", "colony", + "clock", "mine", "tie", "enter", "major", + "fresh", "search", "send", "yellow", "gun", + "allow", "print", "dead", "spot", "desert", + "suit", "current", "lift", "rose", "continue", + "block", "chart", "hat", "sell", "success", + "company", "subtract", "event", "particular", "deal", + "swim", "term", "opposite", "wife", "shoe", + "shoulder", "spread", "arrange", "camp", "invent", + "cotton", "born", "determine", "quart", "nine", + "truck", "noise", "level", "chance", "gather", + "shop", "stretch", "throw", "shine", "property", + "column", "molecule", "select", "wrong", "gray", + "repeat", "require", "broad", "prepare", "salt", + "nose", "plural", "anger", "claim", "continent", + "oxygen", "sugar", "death", "pretty", "skill", + "women", "season", "solution", "magnet", "silver", + "thank", "branch", "match", "suffix", "especially", + "fig", "afraid", "huge", "sister", "steel", + "discuss", "forward", "similar", "guide", "experience", + "score", "apple", "bought", "led", "pitch", + "coat", "mass", "card", "band", "rope", + "slip", "win", "dream", "evening", "condition", + "feed", "tool", "total", "basic", "smell", + "valley", "nor", "double", "seat", "arrive", + "master", "track", "parent", "shore", "division", + "sheet", "substance", "favor", "connect", "post", + "spend", "chord", "fat", "glad", "original", + "share", "station", "dad", "bread", "charge", + "proper", "bar", "offer", "segment", "slave", + "duck", "instant", "market", "degree", "populate", + "chick", "dear", "enemy", "reply", "drink", + "occur", "support", "speech", "nature", "range", + "steam", "motion", "path", "liquid", "log", + "meant", "quotient", "teeth", "shell", "neck"}; diff --git a/waffle/oled.c b/waffle/oled.c index c51962f..23d766c 100644 --- a/waffle/oled.c +++ b/waffle/oled.c @@ -18,7 +18,7 @@ void render_scan_rate(void) { #ifdef RAW_ENABLE void host_info(uint8_t data) { char buffer[3]; - oled_write_ln((char*)itoa(data, buffer, 10), false); + oled_write_ln((char *)itoa(data, buffer, 10), false); } void render_time(void) { @@ -33,34 +33,38 @@ void render_time(void) { #endif void qmk_logo(void) { - static const char PROGMEM qmk_logo[16] = {0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0}; + static const char PROGMEM qmk_logo[16] = {0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0xaa, + 0xab, 0xac, 0xad, 0xae, 0xca, 0xcb, + 0xcc, 0xcd, 0xce, 0}; oled_write(qmk_logo, false); }; void render_keyboard(void) { - static const char PROGMEM keyboard[16] = {0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0}; + static const char PROGMEM keyboard[16] = {0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xda, + 0xdb, 0xdc, 0xdd, 0xde, 0}; oled_write(keyboard, false); }; void layer_status(void) { bool blink = (timer_read() % 1000) < 500; switch (get_highest_layer(layer_state)) { - case _RAISE: - oled_write_ln(PSTR("> hi"), false); - break; - case _LOWER: - oled_write_ln(PSTR("> lo"), false); - break; - case _ADJUST: - oled_write_ln(PSTR("> ad"), false); - break; - default: - oled_write_ln(blink ? PSTR("> _") : PSTR("> "), false); + case _RAISE: + oled_write_ln(PSTR("> hi"), false); + break; + case _LOWER: + oled_write_ln(PSTR("> lo"), false); + break; + case _ADJUST: + oled_write_ln(PSTR("> ad"), false); + break; + default: + oled_write_ln(blink ? PSTR("> _") : PSTR("> "), false); } }; void mod_status(uint8_t mods) { - static const char PROGMEM status [4][3] = {{0xd3, 0xd4, 0}, {0x93, 0x94, 0}, {0xb3, 0xb4, 0}, {0x95, 0x96, 0}}; + static const char PROGMEM status[4][3] = { + {0xd3, 0xd4, 0}, {0x93, 0x94, 0}, {0xb3, 0xb4, 0}, {0x95, 0x96, 0}}; bool blink = (timer_read() % 1000) < 500; if (mods & MOD_MASK_CTRL) { oled_set_cursor(2, 11); @@ -85,33 +89,29 @@ void keylock_status(led_t led_usb_state) { else if (led_usb_state.num_lock) oled_write_ln(PSTR("% num"), false); else if (led_usb_state.scroll_lock) - oled_write_ln(PSTR("% scr"), false); + oled_write_ln(PSTR("% scr"), false); else oled_write_ln(blink ? PSTR("% _") : PSTR("% "), false); } -char keylog_str[5] = {}; +char keylog_str[5] = {}; static uint16_t keylog_timer = 0; const char code_to_name[60] = { - ' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f', - 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', - 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', - '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', - 'R', 'E', 'B', 'T', '_', '-', '=', '[', ']', '\\', - '#', ';', '\'', '`', ',', '.', '/', ' ', ' ', ' ' -}; + ' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', + 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', + 'u', 'v', 'w', 'x', 'y', 'z', '1', '2', '3', '4', '5', '6', + '7', '8', '9', '0', 'R', 'E', 'B', 'T', '_', '-', '=', '[', + ']', '\\', '#', ';', '\'', '`', ',', '.', '/', ' ', ' ', ' '}; void add_keylog(uint16_t keycode) { for (uint8_t i = ARRAY_SIZE(keylog_str) - 1; i > 0; i--) keylog_str[i] = keylog_str[i - 1]; if (keycode < ARRAY_SIZE(code_to_name)) keylog_str[0] = code_to_name[keycode & 0xFF]; - keylog_timer = timer_read(); + keylog_timer = timer_read(); } -void render_keylog(void) { - oled_write(keylog_str, false); -} +void render_keylog(void) { oled_write(keylog_str, false); } void render_keylogger(void) { oled_write(keylog_str, false); } @@ -129,7 +129,8 @@ void anim_frame(uint16_t size, char const action[][size]) { #ifdef FELIX_DOG void felix(void) { static uint16_t felix_anim_timer = 0; - bool shifted = get_mods() & MOD_MASK_SHIFT || host_keyboard_led_state().caps_lock || is_caps_word_on(); + bool shifted = get_mods() & MOD_MASK_SHIFT || + host_keyboard_led_state().caps_lock || is_caps_word_on(); void animate(void) { if (shifted) anim_frame(96, felix_bark); @@ -155,9 +156,11 @@ void bongo(void) { void animate(void) { if (get_current_wpm() <= 30) { anim_frame(512, bongo_idle); - } if (get_current_wpm() > 30 && get_current_wpm() <= 40) { + } + if (get_current_wpm() > 30 && get_current_wpm() <= 40) { anim_frame(512, bongo_prep); - } if (get_current_wpm() > 40) { + } + if (get_current_wpm() > 40) { anim_frame(512, bongo_tap); } } @@ -170,7 +173,8 @@ void bongo(void) { #ifdef WPM_GRAPH void wpm_graph(void) { - static uint8_t height = OLED_DISPLAY_HEIGHT - 1, vert_count = 0, max_wpm = 160; + static uint8_t height = OLED_DISPLAY_HEIGHT - 1, vert_count = 0, + max_wpm = 160; static uint16_t graph_timer = 0; if (timer_elapsed(graph_timer) > 100) { height = 63 - ((get_current_wpm() / (float)max_wpm) * 63); @@ -205,17 +209,17 @@ void layer_anim(void) { static uint16_t layer_anim_timer = 0; void animate(void) { switch (get_highest_layer(layer_state)) { - case _RAISE: - anim_frame(650, tap_sym); - break; - case _LOWER: - anim_frame(520, tap_num); - break; - case _ADJUST: - anim_frame(520, tap_sys); - break; - default: - bongo(); + case _RAISE: + anim_frame(650, tap_sym); + break; + case _LOWER: + anim_frame(520, tap_num); + break; + case _ADJUST: + anim_frame(520, tap_sys); + break; + default: + bongo(); } } if (timer_elapsed(layer_anim_timer) > 200) { @@ -237,6 +241,4 @@ bool oled_task_user(void) { return false; } -void oled_timer_reset(void) { - oled_timer = timer_read32(); -} +void oled_timer_reset(void) { oled_timer = timer_read32(); } diff --git a/waffle/oled.h b/waffle/oled.h index c783413..26de479 100644 --- a/waffle/oled.h +++ b/waffle/oled.h @@ -7,221 +7,889 @@ extern uint8_t oled_buffer[OLED_MATRIX_SIZE]; extern OLED_BLOCK_TYPE oled_dirty; void render_wpm(void); void render_scan_rate(void); -void render_time(void); //render time +void render_time(void); // render time void qmk_logo(void); -void render_keyboard(void); //small split keyboard -void layer_status(void); //active layer -void mod_status(uint8_t mods); //active modifier (ctl, shift, alt, gui) -void keylock_status(led_t led_usb_state); //active key lock (caps, num, scroll) +void render_keyboard(void); // small split keyboard +void layer_status(void); // active layer +void mod_status(uint8_t mods); // active modifier (ctl, shift, alt, gui) +void keylock_status(led_t led_usb_state); // active key lock (caps, num, scroll) void add_keylog(uint16_t keycode); -void render_keylogger(void); //keylogger data -void keylogger_status(void); //keylogger prompt -void felix(void); //felix the dog (90 or 270 rotation) -void bongo(void); //solid-filled bongo cat (0 or 180 rotation) -void wpm_graph(void); //wpm graph for 128x64 oled (memory intensive) +void render_keylogger(void); // keylogger data +void keylogger_status(void); // keylogger prompt +void felix(void); // felix the dog (90 or 270 rotation) +void bongo(void); // solid-filled bongo cat (0 or 180 rotation) +void wpm_graph(void); // wpm graph for 128x64 oled (memory intensive) void layer_anim(void); void oled_timer_reset(void); bool oled_task_keymap(void); #ifdef BONGO_CAT -static const char PROGMEM bongo_idle[5][512] = { { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,192,192,224,224,224,224,240,240,240,240,240,248,248,252,252,252,248,240,192,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24,124,254,254,254,254,254,254,255,255,255,255,255,127,127,255,255,255,255,255,255,255,255,255,127,255,207,207,255, 63, 63, 63, 62,252,248,240,224,192,128, 0, 0, 0,128,128,128,128, 64, 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192,248,252,255,255,255,255,255,255,255,255,243,243,243,242,254,255,255,191, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, 15, 15, 31, 31, 31, 31, 31, 31, 15, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128,128,128, 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, 3, 1, 1, 1, 1, 1, 1, 3, 7, 7, 7, 15, 15, 15, 15, 15, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - }, { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,192,192,224,224,224,224,240,240,240,240,240,248,248,252,252,252,248,240,192,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24,124,254,254,254,254,254,254,255,255,255,255,255,127,127,255,255,255,255,255,255,255,255,255,127,255,207,207,255, 63, 63, 63, 62,252,248,240,224,192,128, 0, 0, 0,128,128,128,128, 64, 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,192,248,252,255,255,255,255,255,255,255,255,243,243,243,242,254,255,255,191, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, 15, 15, 31, 31, 31, 31, 31, 31, 15, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128,128,128, 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, 3, 1, 1, 1, 1, 1, 1, 3, 3, 7, 7, 15, 15, 15, 15, 15, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - }, { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,192,192,192,192,224,224,224,224,240,248,252,254,254,252,248,224,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60,254,255,255,254,254,252,252,254,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,159,159,255,127,126,126,124,248,240,224,192,128, 0, 0, 0, 0,128,128,128,128, 64, 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,240,249,255,255,255,255,255,255,255,255,231,231,231,228,252,255,255,191, 61, 59, 27, 29, 29, 29, 12, 15, 15, 15, 15, 6, 6, 14, 14, 31, 31, 31, 31, 31, 31, 15, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128,128,128, 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, 3, 1, 1, 1, 1, 1, 1, 3, 3, 7, 7, 15, 15, 15, 15, 15, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - }, { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128, 0, 0, 0, 0, 0,128,192,192,224,224,224,224,240,240,240,240,248,252,254,255,255,254,252,240,192,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30,255,255,255,255,255,254,254,255,255,255,255,255,127,127,255,255,255,255,255,255,255,255,255,127,255,207,207,255, 63, 63, 63, 62,252,248,240,224,192,128, 0, 0, 0,128,128,128,128, 64, 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,240,252,255,255,255,255,255,255,255,255,243,243,243,242,254,255,255,191, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, 15, 15, 31, 31, 31, 31, 31, 31, 15, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128,128,128, 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, 3, 1, 1, 1, 1, 1, 1, 3, 3, 7, 7, 15, 15, 15, 15, 15, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - }, { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,192,192,224,224,224,224,240,240,240,240,248,248,252,254,254,254,252,248,192,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28,254,255,255,254,254,254,254,255,255,255,255,255,127,127,255,255,255,255,255,255,255,255,255,127,255,207,207,255, 63, 63, 63, 62,252,248,240,224,192,128, 0, 0, 0,128,128,128,128, 64, 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,240,252,255,255,255,255,255,255,255,255,243,243,243,242,254,255,255,191, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, 15, 15, 31, 31, 31, 31, 31, 31, 15, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128,128,128, 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, 3, 1, 1, 1, 1, 1, 1, 3, 3, 7, 7, 15, 15, 15, 15, 15, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - } -}; +static const char PROGMEM bongo_idle[5][512] = { + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 128, 192, 192, 224, 224, 224, 224, 240, 240, 240, 240, 240, + 248, 248, 252, 252, 252, 248, 240, 192, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, + 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 124, 254, 254, 254, + 254, 254, 254, 255, 255, 255, 255, 255, 127, 127, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 127, 255, 207, 207, 255, 63, 63, 63, 62, + 252, 248, 240, 224, 192, 128, 0, 0, 0, 128, 128, 128, 128, 64, + 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, + 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 248, 252, 255, + 255, 255, 255, 255, 255, 255, 255, 243, 243, 243, 242, 254, 255, 255, + 191, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, + 15, 15, 31, 31, 31, 31, 31, 31, 15, 1, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128, + 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, + 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, + 3, 1, 1, 1, 1, 1, 1, 3, 7, 7, 7, 15, 15, 15, + 15, 15, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }, + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 128, 192, 192, 224, 224, 224, 224, 240, 240, 240, 240, 240, + 248, 248, 252, 252, 252, 248, 240, 192, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, + 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 124, 254, 254, 254, + 254, 254, 254, 255, 255, 255, 255, 255, 127, 127, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 127, 255, 207, 207, 255, 63, 63, 63, 62, + 252, 248, 240, 224, 192, 128, 0, 0, 0, 128, 128, 128, 128, 64, + 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, + 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192, 248, 252, 255, + 255, 255, 255, 255, 255, 255, 255, 243, 243, 243, 242, 254, 255, 255, + 191, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, + 15, 15, 31, 31, 31, 31, 31, 31, 15, 1, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128, + 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, + 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, + 3, 1, 1, 1, 1, 1, 1, 3, 3, 7, 7, 15, 15, 15, + 15, 15, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }, + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 128, 128, 192, 192, 192, 192, 224, 224, 224, 224, 240, + 248, 252, 254, 254, 252, 248, 224, 128, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, + 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 254, 255, 255, 254, + 254, 252, 252, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 255, 159, 159, 255, 127, 126, 126, 124, + 248, 240, 224, 192, 128, 0, 0, 0, 0, 128, 128, 128, 128, 64, + 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, + 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 240, 249, 255, + 255, 255, 255, 255, 255, 255, 255, 231, 231, 231, 228, 252, 255, 255, + 191, 61, 59, 27, 29, 29, 29, 12, 15, 15, 15, 15, 6, 6, + 14, 14, 31, 31, 31, 31, 31, 31, 15, 1, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128, + 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, + 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, + 3, 1, 1, 1, 1, 1, 1, 3, 3, 7, 7, 15, 15, 15, + 15, 15, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }, + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 0, 0, 0, + 0, 0, 128, 192, 192, 224, 224, 224, 224, 240, 240, 240, 240, 248, + 252, 254, 255, 255, 254, 252, 240, 192, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, + 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 255, 255, 255, 255, + 255, 254, 254, 255, 255, 255, 255, 255, 127, 127, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 127, 255, 207, 207, 255, 63, 63, 63, 62, + 252, 248, 240, 224, 192, 128, 0, 0, 0, 128, 128, 128, 128, 64, + 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, + 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 240, 252, 255, + 255, 255, 255, 255, 255, 255, 255, 243, 243, 243, 242, 254, 255, 255, + 191, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, + 15, 15, 31, 31, 31, 31, 31, 31, 15, 1, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128, + 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, + 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, + 3, 1, 1, 1, 1, 1, 1, 3, 3, 7, 7, 15, 15, 15, + 15, 15, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }, + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 128, 192, 192, 224, 224, 224, 224, 240, 240, 240, 240, 248, + 248, 252, 254, 254, 254, 252, 248, 192, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, + 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 254, 255, 255, 254, + 254, 254, 254, 255, 255, 255, 255, 255, 127, 127, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 127, 255, 207, 207, 255, 63, 63, 63, 62, + 252, 248, 240, 224, 192, 128, 0, 0, 0, 128, 128, 128, 128, 64, + 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, + 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 240, 252, 255, + 255, 255, 255, 255, 255, 255, 255, 243, 243, 243, 242, 254, 255, 255, + 191, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, + 15, 15, 31, 31, 31, 31, 31, 31, 15, 1, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128, + 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, + 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, + 3, 1, 1, 1, 1, 1, 1, 3, 3, 7, 7, 15, 15, 15, + 15, 15, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }}; -static const char PROGMEM bongo_prep[][512] = { { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128, 0, 0, 0, 0, 0,128,192,192,224,224,224,224,240,240,240,240,248,252,254,255,255,254,252,240,192,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30,255,255,255,255,255,254,254,127,127,127,255,255,127,127,255,255,255,255,255,255,255,255,255,127,255,207,207,255,255,255, 31,230,250,247,207,203,255,246,124, 0, 0,128,128,128,128, 64, 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,240,252,255,255,255,231,249,250,231,230,251,252, 67,126,126,127,127, 63, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, 7, 7, 7, 7, 3, 3, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128,128,128, 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, 3, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - } -}; +static const char PROGMEM bongo_prep[][512] = {{ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 128, 128, 0, 0, 0, 0, 0, 128, 192, + 192, 224, 224, 224, 224, 240, 240, 240, 240, 248, 252, 254, 255, 255, 254, + 252, 240, 192, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 255, 255, + 255, 255, 255, 254, 254, 127, 127, 127, 255, 255, 127, 127, 255, 255, 255, + 255, 255, 255, 255, 255, 255, 127, 255, 207, 207, 255, 255, 255, 31, 230, + 250, 247, 207, 203, 255, 246, 124, 0, 0, 128, 128, 128, 128, 64, 64, + 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, 8, 8, + 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 128, 240, 252, 255, 255, 255, 231, 249, 250, 231, 230, + 251, 252, 67, 126, 126, 127, 127, 63, 62, 61, 29, 30, 30, 30, 14, + 15, 15, 15, 15, 7, 7, 7, 7, 7, 7, 3, 3, 3, 1, 1, + 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, + 128, 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, + 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, 3, + 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, +}}; -static const char PROGMEM bongo_tap[2][512] = { { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128, 0, 0, 0, 0, 0,128,192,192,224,224,224,224,240,240,240,240,248,252,254,255,255,254,252,240,192,128, 0, 0, 0, 0, 0, 0, 0,248,248,248,248, 0, 0, 0, 0, 0,128,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30,255,255,255,255,255,254,254,127,127,127,255,255,127,127,255,255,255,255,255,255,255,255,255,127,255,207,207,255,255,255,255,254,252,248,240,224,195,135, 7, 1, 0,184,188,190,159, 95, 95, 79, 76, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,240,252,255,255,255,231,249,250,231,230,251,124, 67,126,126,127,127, 63, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, 15, 15, 31, 31, 31, 31, 31, 31, 15, 1, 61,124,252,252,252,252,252, 60, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128,128,128, 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, 3, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - }, { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128, 0, 0, 0, 0, 0,128,192,192,224,224,224,224,240,240,240,240,248,252,254,255,255,254,252,240,192,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30,255,255,255,255,255,254,254,255,255,255,255,255,127,127,255,255,255,255,255,255,255,255,255,127,255,207,207,255,255,255, 31,230,250,247,207,203,255,246,124, 0, 0,128,128,128,128, 64, 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, 1, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,240,252,255,255,255,255,255,255,255,255,255,255,255,254,254,255,255,191, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, 7, 7, 7, 7, 3, 3, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,128,128,128, 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3,123,123,121,121,121,121, 57, 49, 3, 3, 7, 7, 15, 15, 15,143,143,135,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - } -}; +static const char PROGMEM bongo_tap[2][512] = { + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 0, 0, 0, + 0, 0, 128, 192, 192, 224, 224, 224, 224, 240, 240, 240, 240, 248, + 252, 254, 255, 255, 254, 252, 240, 192, 128, 0, 0, 0, 0, 0, + 0, 0, 248, 248, 248, 248, 0, 0, 0, 0, 0, 128, 128, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, + 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 255, 255, 255, 255, + 255, 254, 254, 127, 127, 127, 255, 255, 127, 127, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 127, 255, 207, 207, 255, 255, 255, 255, 254, + 252, 248, 240, 224, 195, 135, 7, 1, 0, 184, 188, 190, 159, 95, + 95, 79, 76, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, + 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 240, 252, 255, + 255, 255, 231, 249, 250, 231, 230, 251, 124, 67, 126, 126, 127, 127, + 63, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, + 15, 15, 31, 31, 31, 31, 31, 31, 15, 1, 61, 124, 252, 252, + 252, 252, 252, 60, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128, + 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, + 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 3, + 3, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 1, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }, + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 0, 0, 0, + 0, 0, 128, 192, 192, 224, 224, 224, 224, 240, 240, 240, 240, 248, + 252, 254, 255, 255, 254, 252, 240, 192, 128, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, + 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 255, 255, 255, 255, + 255, 254, 254, 255, 255, 255, 255, 255, 127, 127, 255, 255, 255, 255, + 255, 255, 255, 255, 255, 127, 255, 207, 207, 255, 255, 255, 31, 230, + 250, 247, 207, 203, 255, 246, 124, 0, 0, 128, 128, 128, 128, 64, + 64, 64, 64, 32, 32, 32, 32, 16, 16, 16, 16, 8, 8, 8, + 8, 8, 4, 4, 4, 4, 4, 2, 2, 2, 2, 1, 1, 1, + 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 240, 252, 255, + 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 254, 255, 255, + 191, 62, 61, 29, 30, 30, 30, 14, 15, 15, 15, 15, 7, 7, + 7, 7, 7, 7, 3, 3, 3, 1, 1, 1, 1, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 128, 128, 128, + 64, 64, 64, 64, 64, 32, 32, 32, 32, 32, 16, 16, 16, 16, + 16, 8, 8, 8, 8, 8, 4, 4, 4, 4, 4, 2, 3, 123, + 123, 121, 121, 121, 121, 57, 49, 3, 3, 7, 7, 15, 15, 15, + 143, 143, 135, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }}; #endif #ifdef FELIX_DOG -static const char PROGMEM felix_sit[2][96] = { { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, - 0xfe, 0xfd, 0xfe, 0xdc, 0xfc, 0xfc, 0xfe, 0x5d, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0x1c, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf9, 0xfd, 0x7f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x37, - 0x21, 0x13, 0x3f, 0x3f, 0x3f, 0x0f, 0x11, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - }, { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, - 0xfd, 0xfe, 0xfc, 0xdc, 0xfc, 0xfe, 0xfd, 0x5e, 0xfc, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0xfc, 0x80, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf1, 0xfd, 0x7f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x37, - 0x21, 0x13, 0x3f, 0x3f, 0x3f, 0x0f, 0x11, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - } -}; +static const char PROGMEM felix_sit[2][96] = { + { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xe0, 0xfc, 0xfe, 0xfd, 0xfe, 0xdc, 0xfc, 0xfc, 0xfe, 0x5d, + 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0x1c, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf9, 0xfd, 0x7f, 0x03, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, + 0x07, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x37, 0x21, 0x13, 0x3f, 0x3f, + 0x3f, 0x0f, 0x11, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + }, + { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xe0, 0xfe, 0xfd, 0xfe, 0xfc, 0xdc, 0xfc, 0xfe, 0xfd, 0x5e, + 0xfc, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xe0, 0xf0, 0xf8, 0xfc, 0x80, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf1, 0xfd, 0x7f, 0x03, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, + 0x07, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x37, 0x21, 0x13, 0x3f, 0x3f, + 0x3f, 0x0f, 0x11, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + }}; -static const char PROGMEM felix_walk[2][96] = { { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0x70, 0x30, 0x20, 0x00, 0x80, 0xc0, - 0xc0, 0xf0, 0xf8, 0xf4, 0xf8, 0x70, 0xf0, 0xf0, 0xf8, 0x74, 0xf8, 0x80, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0xff, 0xfd, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xe7, 0xf5, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x3f, 0x3f, 0x3f, 0x0f, 0x11, 0x1f, 0x1f, - 0x03, 0x07, 0x1f, 0x3f, 0x3f, 0x0f, 0x13, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - }, { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, - 0x00, 0xe0, 0xf0, 0xe8, 0xf0, 0xe0, 0xe0, 0xe0, 0xf0, 0xe8, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x3f, 0xfb, 0xfd, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xef, 0xcf, 0xea, 0x3f, 0x1f, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x0f, 0x03, 0x07, 0x0f, 0x1f, 0x03, - 0x1f, 0x1f, 0x17, 0x0f, 0x1f, 0x3f, 0x3f, 0x33, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - } -}; +static const char PROGMEM felix_walk[2][96] = { + { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0x70, 0x30, + 0x20, 0x00, 0x80, 0xc0, 0xc0, 0xf0, 0xf8, 0xf4, 0xf8, 0x70, 0xf0, 0xf0, + 0xf8, 0x74, 0xf8, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x07, 0x0f, 0xff, 0xfd, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xe7, 0xf5, 0x1f, 0x0f, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, + 0x1f, 0x3f, 0x3f, 0x3f, 0x0f, 0x11, 0x1f, 0x1f, 0x03, 0x07, 0x1f, 0x3f, + 0x3f, 0x0f, 0x13, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + }, + { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xc0, + 0x80, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xe8, 0xf0, 0xe0, 0xe0, 0xe0, + 0xf0, 0xe8, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x1f, 0x3f, 0xfb, 0xfd, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xef, 0xcf, 0xea, 0x3f, 0x1f, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, + 0x3f, 0x3f, 0x0f, 0x03, 0x07, 0x0f, 0x1f, 0x03, 0x1f, 0x1f, 0x17, 0x0f, + 0x1f, 0x3f, 0x3f, 0x33, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + }}; -static const char PROGMEM felix_run[2][96] = { { - 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0xf8, 0xf8, 0xb0, 0xa0, 0x80, 0x80, 0x80, 0x80, 0x80, - 0x80, 0xc0, 0xc0, 0xfc, 0xf4, 0xe4, 0xf8, 0x70, 0xf8, 0xe4, 0xf8, 0x70, 0xc0, 0x80, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x01, 0x63, 0xe7, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0x67, 0x37, 0x35, 0x1f, 0x0f, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x01, - 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x3b, 0x33, 0x07, 0x07, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, - }, { - 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf0, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0x80, 0x80, 0xf8, 0xe8, 0xc8, 0xf0, 0xe0, 0xf0, 0xc8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, 0x1f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xef, 0xcf, 0x6f, 0x6a, 0x3f, 0x1f, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x0f, 0x1f, 0x3f, 0x3f, 0x37, - 0x03, 0x1f, 0x3f, 0x3f, 0x1f, 0x0f, 0x1f, 0x3f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - } -}; +static const char PROGMEM felix_run[2][96] = { + { + 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0xf8, 0xf8, 0xb0, 0xa0, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xfc, 0xf4, 0xe4, 0xf8, 0x70, + 0xf8, 0xe4, 0xf8, 0x70, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x63, 0xe7, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0x67, 0x37, 0x35, + 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0f, 0x07, + 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, + 0x1f, 0x3f, 0x3b, 0x33, 0x07, 0x07, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, + }, + { + 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf0, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xf8, 0xe8, 0xc8, 0xf0, 0xe0, 0xf0, + 0xc8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, + 0x07, 0x0f, 0x1f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xef, 0xcf, 0x6f, 0x6a, + 0x3f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x03, 0x0f, 0x1f, 0x3f, 0x3f, 0x37, 0x03, 0x1f, 0x3f, 0x3f, + 0x1f, 0x0f, 0x1f, 0x3f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + }}; -static const char PROGMEM felix_bark[2][96] = { { - 0x00, 0xc0, 0xe0, 0xf0, 0xf0, 0x30, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, - 0xfc, 0xf4, 0xe4, 0xf8, 0x70, 0xf8, 0xe4, 0xf8, 0x70, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x03, 0x07, 0x0f, 0x1f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf7, 0x37, 0x35, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x0f, 0x1f, 0x3f, 0x3f, 0x37, 0x03, 0x03, - 0x07, 0x0f, 0x1f, 0x3f, 0x3b, 0x33, 0x07, 0x07, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - }, { - 0x00, 0xe0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, - 0xc0, 0xec, 0xf4, 0xe4, 0xf8, 0x70, 0xf8, 0xe4, 0xf8, 0x70, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x03, 0x07, 0x0f, 0x1f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x77, 0x37, 0x35, 0x1f, 0x0f, 0x20, 0x4a, 0x09, 0x10, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x0f, 0x1f, 0x3f, 0x3f, 0x37, 0x03, 0x03, - 0x07, 0x0f, 0x1f, 0x3f, 0x3b, 0x33, 0x07, 0x07, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - } -}; +static const char PROGMEM felix_bark[2][96] = { + { + 0x00, 0xc0, 0xe0, 0xf0, 0xf0, 0x30, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x80, 0xc0, 0xfc, 0xf4, 0xe4, 0xf8, 0x70, 0xf8, 0xe4, 0xf8, + 0x70, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, + 0x1f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf7, 0x37, 0x35, 0x1f, 0x0f, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, + 0x03, 0x0f, 0x1f, 0x3f, 0x3f, 0x37, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, + 0x3b, 0x33, 0x07, 0x07, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + }, + { + 0x00, 0xe0, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xec, 0xf4, 0xe4, 0xf8, 0x70, 0xf8, 0xe4, + 0xf8, 0x70, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, + 0x1f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x77, 0x37, 0x35, 0x1f, 0x0f, + 0x20, 0x4a, 0x09, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, + 0x03, 0x0f, 0x1f, 0x3f, 0x3f, 0x37, 0x03, 0x03, 0x07, 0x0f, 0x1f, 0x3f, + 0x3b, 0x33, 0x07, 0x07, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + }}; -static const char PROGMEM felix_sneak[2][96] = { { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xc0, 0x40, 0x40, 0x80, 0x00, 0x80, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x1e, 0x3f, 0xff, 0xfb, 0xfd, 0xfd, 0xfd, 0xfd, 0xfd, 0xfc, 0xfc, 0xfc, - 0xfc, 0xfe, 0xff, 0xff, 0xfe, 0xff, 0xf7, 0xff, 0x7e, 0x7f, 0x57, 0xfc, 0xf8, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x3f, 0x3f, 0x3f, 0x0f, 0x1f, 0x1f, 0x03, 0x07, - 0x1f, 0x3f, 0x3f, 0x3f, 0x0f, 0x1f, 0x1f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, - }, { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xe0, 0xa0, 0x20, 0xc0, 0x80, 0xc0, 0x20, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x3e, 0x7f, 0xf7, 0xfb, 0xfd, 0xfd, 0xfd, 0xfd, 0xfc, 0xfc, 0xfc, 0xfc, - 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xbf, 0xbf, 0xab, 0xfe, 0x7c, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x0f, 0x03, 0x07, 0x0f, 0x1f, 0x1f, 0x07, - 0x1f, 0x1f, 0x0f, 0x1f, 0x3f, 0x3f, 0x37, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, - } -}; +static const char PROGMEM felix_sneak[2][96] = { + { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0x80, 0x00, 0x80, + 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x1e, 0x3f, 0xff, 0xfb, 0xfd, 0xfd, 0xfd, 0xfd, 0xfd, 0xfc, 0xfc, 0xfc, + 0xfc, 0xfe, 0xff, 0xff, 0xfe, 0xff, 0xf7, 0xff, 0x7e, 0x7f, 0x57, 0xfc, + 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, + 0x3f, 0x3f, 0x3f, 0x0f, 0x1f, 0x1f, 0x03, 0x07, 0x1f, 0x3f, 0x3f, 0x3f, + 0x0f, 0x1f, 0x1f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, + }, + { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0x80, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xa0, 0x20, 0xc0, 0x80, 0xc0, + 0x20, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3e, 0x7f, 0xf7, 0xfb, 0xfd, 0xfd, 0xfd, 0xfd, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xbf, 0xbf, 0xab, 0xfe, + 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x3f, + 0x3f, 0x0f, 0x03, 0x07, 0x0f, 0x1f, 0x1f, 0x07, 0x1f, 0x1f, 0x0f, 0x1f, + 0x3f, 0x3f, 0x37, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + }}; #endif #ifdef LAYER_ANIM -static const char PROGMEM tap_num[3][520] = { { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x60, 0x9c, 0x03, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x20, 0x11, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0x0e, 0xf0, 0x20, 0xc0, 0x80, 0, 0, 0x80, 0x80, 0xc0, 0x30, 0x0c, 0x02, 0x11, 0x21, 0x40, 0x80, 0x04, 0x06, 0x09, 0x24, 0x24, 0x18, 0x80, 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0, 0, 0x01, 0x01, 0x01, 0, 0, 0, 0x80, 0x40, 0x20, 0x20, 0x10, 0x10, 0x8f, 0x48, 0xc4, 0x84, 0x88, 0x08, 0x10, 0x20, 0x20, 0x40, 0x80, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0, 0, 0x80, 0x80, 0x40, 0xc0, 0x30, 0x08, 0x44, 0x84, 0x02, 0x02, 0x01, 0x01, 0x78, 0x28, 0x11, 0x21, 0x42, 0x06, 0x05, 0x08, 0x90, 0x60, 0x80, 0, 0, 0, 0x01, 0x02, 0x02, 0x02, 0x01, 0x01, 0, 0, 0x80, 0x40, 0x40, - 0x20, 0x20, 0x1f, 0x92, 0x8c, 0x08, 0x18, 0x14, 0x24, 0x7a, 0x46, 0x81, 0, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x41, 0x44, 0x24, 0x23, 0x10, 0x10, 0x08, 0x88, 0x84, 0x43, 0x5c, 0x20, 0x20, 0x10, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x01, 0, 0x18, 0x27, 0x40, 0x80, - 0, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x08, 0x08, 0x04, 0x04, 0x02, 0xc2, 0x21, 0x11, 0x10, 0x08, 0x0b, 0x05, 0x66, 0x42, 0x82, 0x04, 0x04, 0x08, 0x18, 0x14, 0x2c, 0x43, 0x80, 0x04, 0x08, 0x10, 0x20, 0x41, 0x80, 0x80, 0x8f, 0x44, 0x44, 0x20, 0x20, 0x10, 0x10, 0x09, 0x86, 0xb8, 0x40, 0x40, 0x20, 0x20, 0x40, 0x40, 0x80, 0xe0, 0x18, 0x06, 0x01, 0x08, 0x10, 0x20, 0x40, 0x80, 0, 0, 0, 0x88, 0x80, 0x40, 0x40, 0x20, 0x21, 0x12, 0x0c, 0x70, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x40, 0x20, 0x60, 0x9c, 0x03, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x20, 0x11, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x81, 0x8e, 0x70, 0x40, 0x20, 0x20, 0x10, 0x10, 0x08, 0xc8, 0x24, 0x24, 0x42, 0x82, 0x01, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0, 0, 0x01, - 0x01, 0x01, 0, 0, 0, 0, 0x80, 0x80, 0x40, 0x40, 0x20, 0x27, 0x18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - }, { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0x70, 0x0c, 0x03, 0, 0x04, 0x08, 0x10, 0x20, 0x41, 0x80, 0x80, 0x81, 0x46, 0x40, 0x20, 0x20, 0x10, 0x10, 0x09, 0x86, 0xb8, 0x50, 0x60, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x40, 0xc0, 0x30, 0x08, 0x44, 0x84, 0x02, 0x02, 0x11, 0x19, 0x24, 0x90, 0x91, 0x61, 0x03, 0x04, 0x04, 0x08, 0x90, 0x60, 0x80, 0, 0, 0, 0x01, 0x01, 0x01, 0, 0, 0x80, 0x60, 0x10, 0x88, 0x08, 0x04, 0x04, 0x23, 0x12, 0x71, 0x21, 0x22, 0xc2, 0x04, 0x08, 0x08, 0x10, 0x20, 0xc0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0, 0, 0, 0, 0, 0, 0xc0, 0x30, 0x0c, 0x02, 0x11, 0x21, 0x40, 0x80, 0, 0, 0x1e, 0x0a, 0x04, 0x08, 0x90, 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0x01, 0x02, 0x04, 0x08, 0x08, 0x08, 0x04, 0x04, 0x02, 0xc2, 0x21, 0x11, 0x10, - 0x08, 0x0b, 0x45, 0x26, 0x22, 0xc2, 0x04, 0x04, 0x0c, 0x1e, 0x11, 0x20, 0x40, 0x80, 0x01, 0x02, 0x04, 0x08, 0x10, 0x10, 0x11, 0x09, 0x08, 0x04, 0x04, 0x02, 0x82, 0x81, 0x40, 0x47, 0x38, 0x20, 0x10, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x02, 0x04, 0x04, 0x02, 0x06, 0x09, 0x10, 0x20, - 0x40, 0x80, 0, 0, 0, 0x01, 0x02, 0x02, 0x02, 0x01, 0x01, 0, 0xc0, 0x20, 0x10, 0x10, 0x08, 0x08, 0x07, 0x64, 0x42, 0x82, 0x04, 0x04, 0x08, 0x10, 0x1c, 0x23, 0x40, 0x80, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x23, 0x11, 0x11, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0x0e, 0xf0, 0x20, 0xc0, 0x80, 0x80, 0x40, 0x40, 0xe0, 0x18, 0x06, 0x01, 0x08, 0x10, 0x20, 0x40, 0x80, 0, 0, 0, 0x88, 0x80, 0x40, 0x40, 0x20, 0x21, 0x12, 0x0c, 0x70, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x10, 0x08, 0x68, 0x9c, 0x03, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x20, 0x11, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0x0e, 0xf0, 0x20, 0xc0, 0x80, 0x40, 0x40, 0xa0, 0xa0, 0xd0, 0x90, 0x08, 0x08, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0, 0, 0x01, 0x01, 0x03, 0x04, 0x04, 0x08, 0x90, 0x60, 0x80, 0, 0, 0, 0x01, 0x01, 0x01, 0, 0, 0, 0, 0x80, 0x80, 0x40, 0x40, 0x20, 0x27, 0x18, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - }, { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x60, 0x9c, 0x03, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x20, 0x11, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x81, 0x8e, 0x70, 0x40, 0x20, 0x20, 0x40, 0x40, 0x80, 0, 0xc0, 0x30, 0x0c, 0x02, 0x11, 0x21, 0x40, 0x80, 0x04, 0x06, 0x09, 0x24, 0x24, 0x18, 0x80, 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0x01, 0x02, 0x04, 0x04, 0x04, 0x02, 0x02, 0x81, 0x61, 0x10, 0x88, 0x08, 0x04, 0x05, 0x22, 0x12, 0x71, 0x21, 0x22, 0xc2, 0x04, 0x08, 0x08, 0x10, 0x20, 0xc0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0, 0, 0x80, 0x80, 0xc0, 0x30, 0x0c, 0x02, 0x11, 0x21, 0x40, 0x80, 0, 0, 0x1e, 0x0a, 0x04, 0x08, 0x90, 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0, 0, 0x01, 0x02, 0x02, 0x02, 0x01, 0x01, 0, 0xc0, 0x20, 0x10, 0x10, - 0x08, 0x08, 0x47, 0x24, 0x22, 0xc2, 0x04, 0x04, 0x08, 0x1e, 0x11, 0x20, 0x40, 0x80, 0x01, 0x02, 0x04, 0x08, 0x10, 0x10, 0x11, 0x09, 0x08, 0x04, 0x04, 0x02, 0x02, 0x01, 0, 0x07, 0xf8, 0x80, 0x40, 0x40, 0x80, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x01, 0, 0x06, 0x09, 0x10, 0x20, - 0x40, 0x80, 0, 0, 0, 0x01, 0x02, 0x02, 0x02, 0x01, 0x01, 0, 0, 0x80, 0x40, 0x40, 0x20, 0x20, 0x1f, 0x92, 0x0c, 0x08, 0x10, 0x10, 0x28, 0x68, 0x5c, 0x83, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x20, 0x23, 0x11, 0x11, 0x08, 0x08, 0x04, 0x04, 0x02, 0x81, 0x8e, 0x70, 0x60, 0x20, 0x20, 0x40, 0x40, 0xc0, 0xa0, 0x60, 0x18, 0x04, 0x22, 0x42, 0x81, 0x01, 0, 0, 0, 0, 0x20, 0, 0x01, 0x02, 0x82, 0x84, 0x48, 0x30, 0xc0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x10, 0x08, 0x88, 0x74, 0x0c, 0x03, 0, 0x04, 0x08, 0x10, 0x20, 0x40, 0x81, 0x81, 0x82, 0x44, 0x40, 0x20, 0x20, 0x10, 0x10, 0x09, 0x86, 0xb8, 0x50, 0x60, 0x20, 0x20, 0x10, 0x10, 0x08, 0xc8, 0x24, 0x24, 0x42, 0x82, 0x01, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0x01, 0x02, 0x04, - 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0, 0, 0, 0, 0x81, 0x9e, 0x60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - } -}; +static const char PROGMEM tap_num[3][520] = { + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x60, 0x9c, 0x03, 0, 0, 0x01, 0x02, 0x04, 0x08, + 0x10, 0x20, 0x20, 0x20, 0x11, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, + 0x0e, 0xf0, 0x20, 0xc0, 0x80, 0, 0, 0x80, 0x80, 0xc0, 0x30, 0x0c, + 0x02, 0x11, 0x21, 0x40, 0x80, 0x04, 0x06, 0x09, 0x24, 0x24, 0x18, 0x80, + 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0, 0, 0x01, 0x01, 0x01, + 0, 0, 0, 0x80, 0x40, 0x20, 0x20, 0x10, 0x10, 0x8f, 0x48, 0xc4, + 0x84, 0x88, 0x08, 0x10, 0x20, 0x20, 0x40, 0x80, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0, 0, 0x80, + 0x80, 0x40, 0xc0, 0x30, 0x08, 0x44, 0x84, 0x02, 0x02, 0x01, 0x01, 0x78, + 0x28, 0x11, 0x21, 0x42, 0x06, 0x05, 0x08, 0x90, 0x60, 0x80, 0, 0, + 0, 0x01, 0x02, 0x02, 0x02, 0x01, 0x01, 0, 0, 0x80, 0x40, 0x40, + 0x20, 0x20, 0x1f, 0x92, 0x8c, 0x08, 0x18, 0x14, 0x24, 0x7a, 0x46, 0x81, + 0, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x41, 0x44, 0x24, 0x23, 0x10, + 0x10, 0x08, 0x88, 0x84, 0x43, 0x5c, 0x20, 0x20, 0x10, 0x10, 0x20, 0x20, + 0x40, 0x80, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x01, 0x01, 0, 0x18, 0x27, 0x40, 0x80, + 0, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x08, 0x08, 0x04, 0x04, 0x02, + 0xc2, 0x21, 0x11, 0x10, 0x08, 0x0b, 0x05, 0x66, 0x42, 0x82, 0x04, 0x04, + 0x08, 0x18, 0x14, 0x2c, 0x43, 0x80, 0x04, 0x08, 0x10, 0x20, 0x41, 0x80, + 0x80, 0x8f, 0x44, 0x44, 0x20, 0x20, 0x10, 0x10, 0x09, 0x86, 0xb8, 0x40, + 0x40, 0x20, 0x20, 0x40, 0x40, 0x80, 0xe0, 0x18, 0x06, 0x01, 0x08, 0x10, + 0x20, 0x40, 0x80, 0, 0, 0, 0x88, 0x80, 0x40, 0x40, 0x20, 0x21, + 0x12, 0x0c, 0x70, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x02, 0x04, 0x08, + 0x10, 0x20, 0x40, 0x40, 0x20, 0x60, 0x9c, 0x03, 0, 0, 0x01, 0x02, + 0x04, 0x08, 0x10, 0x20, 0x20, 0x20, 0x11, 0x10, 0x08, 0x08, 0x04, 0x04, + 0x02, 0x81, 0x8e, 0x70, 0x40, 0x20, 0x20, 0x10, 0x10, 0x08, 0xc8, 0x24, + 0x24, 0x42, 0x82, 0x01, 0x01, 0, 0, 0, 0, 0, 0, 0, + 0, 0x80, 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0, 0, 0x01, + 0x01, 0x01, 0, 0, 0, 0, 0x80, 0x80, 0x40, 0x40, 0x20, 0x27, + 0x18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }, + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x80, 0x70, 0x0c, 0x03, 0, 0x04, 0x08, 0x10, 0x20, + 0x41, 0x80, 0x80, 0x81, 0x46, 0x40, 0x20, 0x20, 0x10, 0x10, 0x09, 0x86, + 0xb8, 0x50, 0x60, 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, 0x40, 0xc0, 0x30, + 0x08, 0x44, 0x84, 0x02, 0x02, 0x11, 0x19, 0x24, 0x90, 0x91, 0x61, 0x03, + 0x04, 0x04, 0x08, 0x90, 0x60, 0x80, 0, 0, 0, 0x01, 0x01, 0x01, + 0, 0, 0x80, 0x60, 0x10, 0x88, 0x08, 0x04, 0x04, 0x23, 0x12, 0x71, + 0x21, 0x22, 0xc2, 0x04, 0x08, 0x08, 0x10, 0x20, 0xc0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, + 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0, 0, 0, 0, 0, + 0, 0xc0, 0x30, 0x0c, 0x02, 0x11, 0x21, 0x40, 0x80, 0, 0, 0x1e, + 0x0a, 0x04, 0x08, 0x90, 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0x01, + 0x02, 0x04, 0x08, 0x08, 0x08, 0x04, 0x04, 0x02, 0xc2, 0x21, 0x11, 0x10, + 0x08, 0x0b, 0x45, 0x26, 0x22, 0xc2, 0x04, 0x04, 0x0c, 0x1e, 0x11, 0x20, + 0x40, 0x80, 0x01, 0x02, 0x04, 0x08, 0x10, 0x10, 0x11, 0x09, 0x08, 0x04, + 0x04, 0x02, 0x82, 0x81, 0x40, 0x47, 0x38, 0x20, 0x10, 0x10, 0x20, 0x20, + 0x40, 0x80, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x01, 0x02, 0x04, 0x04, 0x02, 0x06, 0x09, 0x10, 0x20, + 0x40, 0x80, 0, 0, 0, 0x01, 0x02, 0x02, 0x02, 0x01, 0x01, 0, + 0xc0, 0x20, 0x10, 0x10, 0x08, 0x08, 0x07, 0x64, 0x42, 0x82, 0x04, 0x04, + 0x08, 0x10, 0x1c, 0x23, 0x40, 0x80, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, + 0x20, 0x23, 0x11, 0x11, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0x0e, 0xf0, + 0x20, 0xc0, 0x80, 0x80, 0x40, 0x40, 0xe0, 0x18, 0x06, 0x01, 0x08, 0x10, + 0x20, 0x40, 0x80, 0, 0, 0, 0x88, 0x80, 0x40, 0x40, 0x20, 0x21, + 0x12, 0x0c, 0x70, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x02, + 0x04, 0x08, 0x10, 0x10, 0x08, 0x68, 0x9c, 0x03, 0, 0, 0x01, 0x02, + 0x04, 0x08, 0x10, 0x20, 0x20, 0x20, 0x11, 0x10, 0x08, 0x08, 0x04, 0x04, + 0x02, 0x01, 0x0e, 0xf0, 0x20, 0xc0, 0x80, 0x40, 0x40, 0xa0, 0xa0, 0xd0, + 0x90, 0x08, 0x08, 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0, 0, 0x01, + 0x01, 0x03, 0x04, 0x04, 0x08, 0x90, 0x60, 0x80, 0, 0, 0, 0x01, + 0x01, 0x01, 0, 0, 0, 0, 0x80, 0x80, 0x40, 0x40, 0x20, 0x27, + 0x18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }, + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x60, 0x9c, 0x03, 0, 0, 0x01, 0x02, 0x04, 0x08, + 0x10, 0x20, 0x20, 0x20, 0x11, 0x10, 0x08, 0x08, 0x04, 0x04, 0x02, 0x81, + 0x8e, 0x70, 0x40, 0x20, 0x20, 0x40, 0x40, 0x80, 0, 0xc0, 0x30, 0x0c, + 0x02, 0x11, 0x21, 0x40, 0x80, 0x04, 0x06, 0x09, 0x24, 0x24, 0x18, 0x80, + 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0x01, 0x02, 0x04, 0x04, 0x04, + 0x02, 0x02, 0x81, 0x61, 0x10, 0x88, 0x08, 0x04, 0x05, 0x22, 0x12, 0x71, + 0x21, 0x22, 0xc2, 0x04, 0x08, 0x08, 0x10, 0x20, 0xc0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0, 0, 0x80, + 0x80, 0xc0, 0x30, 0x0c, 0x02, 0x11, 0x21, 0x40, 0x80, 0, 0, 0x1e, + 0x0a, 0x04, 0x08, 0x90, 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0, + 0, 0x01, 0x02, 0x02, 0x02, 0x01, 0x01, 0, 0xc0, 0x20, 0x10, 0x10, + 0x08, 0x08, 0x47, 0x24, 0x22, 0xc2, 0x04, 0x04, 0x08, 0x1e, 0x11, 0x20, + 0x40, 0x80, 0x01, 0x02, 0x04, 0x08, 0x10, 0x10, 0x11, 0x09, 0x08, 0x04, + 0x04, 0x02, 0x02, 0x01, 0, 0x07, 0xf8, 0x80, 0x40, 0x40, 0x80, 0x80, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x01, 0x01, 0, 0x06, 0x09, 0x10, 0x20, + 0x40, 0x80, 0, 0, 0, 0x01, 0x02, 0x02, 0x02, 0x01, 0x01, 0, + 0, 0x80, 0x40, 0x40, 0x20, 0x20, 0x1f, 0x92, 0x0c, 0x08, 0x10, 0x10, + 0x28, 0x68, 0x5c, 0x83, 0, 0, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, + 0x20, 0x23, 0x11, 0x11, 0x08, 0x08, 0x04, 0x04, 0x02, 0x81, 0x8e, 0x70, + 0x60, 0x20, 0x20, 0x40, 0x40, 0xc0, 0xa0, 0x60, 0x18, 0x04, 0x22, 0x42, + 0x81, 0x01, 0, 0, 0, 0, 0x20, 0, 0x01, 0x02, 0x82, 0x84, + 0x48, 0x30, 0xc0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x02, + 0x04, 0x08, 0x10, 0x10, 0x08, 0x88, 0x74, 0x0c, 0x03, 0, 0x04, 0x08, + 0x10, 0x20, 0x40, 0x81, 0x81, 0x82, 0x44, 0x40, 0x20, 0x20, 0x10, 0x10, + 0x09, 0x86, 0xb8, 0x50, 0x60, 0x20, 0x20, 0x10, 0x10, 0x08, 0xc8, 0x24, + 0x24, 0x42, 0x82, 0x01, 0x01, 0, 0, 0, 0, 0, 0, 0, + 0, 0x80, 0x81, 0x41, 0x42, 0x24, 0x18, 0xe0, 0, 0x01, 0x02, 0x04, + 0x04, 0x04, 0x02, 0x02, 0x01, 0x01, 0, 0, 0, 0, 0x81, 0x9e, + 0x60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, + }}; -static const char PROGMEM tap_sym[3][650] = { { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x0c, 0x0a, 0x09, 0x09, 0x09, 0x08, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x20, 0x50, 0x40, 0x80, 0, 0, 0, 0, 0x1c, 0x22, 0x21, 0x21, 0x22, 0x2c, 0x30, 0xd0, 0x10, 0x11, 0x21, 0x20, 0x40, 0x80, 0x80, 0, 0, 0, 0, 0, 0x20, 0x20, 0x21, 0x12, 0x1c, 0xf0, 0x10, 0x18, 0x08, 0x08, 0, 0, 0x01, 0x01, 0x02, 0x04, 0x08, 0x30, 0xc0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0xc0, 0xc0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xc0, 0x20, 0x10, 0x08, 0x04, 0x02, 0x81, 0x01, 0, 0, 0x40, 0x80, 0, 0x80, 0, 0, 0, 0, 0x18, 0x24, 0x24, 0x24, 0x18, 0, 0xc0, 0x30, 0x0e, 0x80, 0x40, 0x40, 0x80, 0, 0, 0, 0, 0xc0, 0x20, 0x20, 0x20, 0x40, 0x40, 0x40, 0x20, 0x18, 0, 0, 0, 0x01, 0x82, 0x44, 0x78, 0x40, 0x20, 0x10, 0x10, 0x08, 0x08, 0x08, 0x07, 0x04, 0x04, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0x81, 0x81, 0x82, 0x02, 0x02, 0x02, 0x04, 0x04, 0x08, 0x0b, 0x10, 0x10, 0x20, 0x60, 0x20, 0x30, 0x18, 0x0c, 0x04, 0x03, 0x01, 0, 0xff, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xfe, 0x01, 0, 0, 0, 0x08, 0x88, 0x85, 0x4e, 0x74, 0xe2, 0x21, 0x21, 0x17, 0x18, 0x68, 0xc4, 0, 0, 0, 0, 0, 0, 0x18, 0x07, 0, 0, 0, 0x03, 0x04, 0x04, 0x04, 0x03, 0, 0, 0, 0x01, 0, 0, 0, 0, 0, 0, 0xc0, 0x20, 0x10, 0x0c, 0x02, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xc0, 0x60, 0x30, 0x10, 0x08, 0x08, 0x08, 0x08, 0x08, 0x10, 0x30, 0x40, 0x80, 0, 0x0e, 0x03, 0x01, 0x01, 0, 0xe0, 0x30, 0x19, 0x07, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xc0, 0x3f, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x03, 0x04, 0x08, 0x10, 0x20, 0x20, 0xc0, 0, 0, 0, 0x01, 0x80, 0x40, 0x40, 0x40, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x34, 0xcf, 0, 0, 0, 0, 0, 0x3e, 0x63, 0xc1, 0xc1, 0xbe, 0x80, 0, 0, 0, 0, 0, 0, 0x80, 0, 0, 0x1f, 0x20, 0x40, 0xc0, 0x8e, 0x11, 0x19, 0x0e, 0x03, 0x86, 0x84, 0xc6, 0x63, 0, 0, 0, 0, 0, 0, 0x01, 0x06, 0, 0, 0x20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xc0, 0x20, 0x18, 0x07, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x03, 0, 0x02, 0x02, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0, 0, 0, 0, 0, 0, 0, 0x03, 0, 0, 0, 0x01, 0x03, 0, 0, 0, 0, 0x03, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x01, 0x01, 0x01, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - }, { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0x80, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x10, 0x18, 0x14, 0x14, 0x12, 0x12, 0x11, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x20, 0x20, 0x20, 0x20, 0x20, 0x40, 0x60, 0x80, 0x80, 0x80, 0, 0, 0, 0x1c, 0x22, 0x21, 0x21, 0x22, 0x2c, 0x30, 0x50, 0x90, 0x11, 0x11, 0x20, 0x20, 0x40, 0xc0, 0, 0, 0, 0, 0, 0x10, 0x10, 0x10, 0x09, 0x0e, 0x78, 0x88, 0x04, 0x04, 0x04, 0, 0, 0, 0, 0, 0x01, 0x02, 0x0c, 0xf0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xc0, 0x20, 0x10, 0x08, 0x08, 0x04, 0x82, 0x01, 0x01, 0, 0x40, 0x80, 0, 0x80, 0x80, 0, 0, 0, 0x30, 0x48, 0x48, 0x48, 0x30, 0, 0x80, 0x60, 0x18, 0x04, 0x80, 0x80, 0, 0, 0, 0, 0, 0, 0x80, 0x80, 0x80, 0x80, 0, 0, 0x80, 0xe0, 0x01, 0x01, 0x02, 0x06, 0x08, 0x10, 0xe0, 0x10, 0x20, 0x20, 0x20, 0x20, 0x21, 0x16, 0x18, 0x30, 0x50, 0x08, 0x08, 0x07, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0, 0, 0, 0, 0, 0, 0x80, 0x40, 0x30, 0x0c, 0x02, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0, 0, 0, 0, 0x08, 0x8c, 0xc5, 0x4e, 0x74, 0xe2, 0x21, 0x21, 0x17, 0x18, 0x68, 0x84, 0x04, 0, 0, 0, 0, 0, 0x30, 0x0e, 0x01, 0, 0, 0x07, 0x09, 0x08, 0x09, 0x06, 0, 0, 0, 0x07, 0, 0, 0, 0x01, 0x01, 0x01, 0x01, 0, 0, 0, 0, 0, 0x80, 0x70, 0x0f, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xf8, 0x04, 0x02, 0x02, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x03, 0x04, 0x08, 0x10, 0x20, 0xe0, 0, 0, 0, 0, 0x81, 0xc0, 0x40, 0x40, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x10, 0x10, 0x08, 0x08, 0x04, 0x0a, 0x06, 0x05, 0x04, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x06, 0x18, 0x60, 0x80, 0, 0, 0, 0, 0x80, 0x78, 0x07, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x03, 0, 0x02, 0x02, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x02, 0, 0, 0x03, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - }, { - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0x40, 0x40, 0x20, 0x10, 0x10, 0x08, 0x04, 0, 0x02, 0x01, 0x01, 0x01, 0, 0, 0, 0, 0, 0x80, 0x80, 0xe0, 0x80, 0xe0, 0, 0, 0, 0, 0, 0, 0x3c, 0x22, 0x21, 0x21, 0x23, 0x2c, 0x30, 0x70, 0x51, 0x91, 0x10, 0x10, 0x10, 0x20, 0x60, 0x80, 0, 0, 0, 0, 0x08, 0x08, 0x08, 0x04, 0x07, 0x3c, 0xc4, 0x04, 0x04, 0x02, 0x02, 0, 0, 0, 0, 0, 0x01, 0x07, 0xfc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xf0, 0x0c, 0x03, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x06, 0x18, 0x20, 0xc0, 0, 0, 0, 0x05, 0x06, 0x03, 0x01, 0x07, 0x01, 0x01, 0x01, 0, 0, 0, 0, 0, 0, 0, 0x30, 0x20, 0x20, 0x20, 0x20, 0x21, 0x16, 0x1c, 0x38, 0x68, 0x04, 0x07, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0xc0, 0x20, 0x30, 0x0c, 0x07, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x0f, 0x30, 0x40, 0x40, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0, 0, 0x10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0x80, 0x80, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0x7e, 0x02, 0x01, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x01, 0x02, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, 0x01, 0x01, 0, 0, 0, 0x01, 0x03, 0x04, 0x18, 0x30, 0x40, 0x80, 0, 0, 0, 0xc0, 0x3f, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x03, 0, 0x02, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - } -}; +static const char PROGMEM tap_sym[3][650] = { + {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0x80, 0x40, + 0x40, 0x40, 0x20, 0x20, 0x20, 0x10, 0x10, 0x10, 0x10, 0x08, 0x08, 0x08, + 0x08, 0x0c, 0x0a, 0x09, 0x09, 0x09, 0x08, 0x04, 0x04, 0x04, 0x04, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x10, 0x10, 0x20, 0x20, 0x20, 0x50, 0x40, 0x80, + 0, 0, 0, 0, 0x1c, 0x22, 0x21, 0x21, 0x22, 0x2c, 0x30, 0xd0, + 0x10, 0x11, 0x21, 0x20, 0x40, 0x80, 0x80, 0, 0, 0, 0, 0, + 0x20, 0x20, 0x21, 0x12, 0x1c, 0xf0, 0x10, 0x18, 0x08, 0x08, 0, 0, + 0x01, 0x01, 0x02, 0x04, 0x08, 0x30, 0xc0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0x80, 0xc0, 0xc0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xc0, 0x20, 0x10, + 0x08, 0x04, 0x02, 0x81, 0x01, 0, 0, 0x40, 0x80, 0, 0x80, 0, + 0, 0, 0, 0x18, 0x24, 0x24, 0x24, 0x18, 0, 0xc0, 0x30, 0x0e, + 0x80, 0x40, 0x40, 0x80, 0, 0, 0, 0, 0xc0, 0x20, 0x20, 0x20, + 0x40, 0x40, 0x40, 0x20, 0x18, 0, 0, 0, 0x01, 0x82, 0x44, 0x78, + 0x40, 0x20, 0x10, 0x10, 0x08, 0x08, 0x08, 0x07, 0x04, 0x04, 0x02, 0x02, + 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x81, 0x81, 0x81, 0x82, 0x02, 0x02, 0x02, 0x04, + 0x04, 0x08, 0x0b, 0x10, 0x10, 0x20, 0x60, 0x20, 0x30, 0x18, 0x0c, 0x04, + 0x03, 0x01, 0, 0xff, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0xfe, 0x01, 0, 0, 0, 0x08, 0x88, 0x85, + 0x4e, 0x74, 0xe2, 0x21, 0x21, 0x17, 0x18, 0x68, 0xc4, 0, 0, 0, + 0, 0, 0, 0x18, 0x07, 0, 0, 0, 0x03, 0x04, 0x04, 0x04, + 0x03, 0, 0, 0, 0x01, 0, 0, 0, 0, 0, 0, 0xc0, + 0x20, 0x10, 0x0c, 0x02, 0x01, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0xc0, 0x60, 0x30, 0x10, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x10, 0x30, 0x40, 0x80, 0, 0x0e, 0x03, 0x01, + 0x01, 0, 0xe0, 0x30, 0x19, 0x07, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xc0, 0x3f, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x03, 0x04, 0x08, 0x10, 0x20, 0x20, 0xc0, 0, 0, 0, 0x01, + 0x80, 0x40, 0x40, 0x40, 0x40, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x20, 0x20, 0x10, + 0x10, 0x10, 0x10, 0x08, 0x08, 0x34, 0xcf, 0, 0, 0, 0, 0, + 0x3e, 0x63, 0xc1, 0xc1, 0xbe, 0x80, 0, 0, 0, 0, 0, 0, + 0x80, 0, 0, 0x1f, 0x20, 0x40, 0xc0, 0x8e, 0x11, 0x19, 0x0e, 0x03, + 0x86, 0x84, 0xc6, 0x63, 0, 0, 0, 0, 0, 0, 0x01, 0x06, + 0, 0, 0x20, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0xc0, 0x20, 0x18, 0x07, 0x01, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x03, 0, 0x02, 0x02, 0x01, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x01, 0, 0, 0, 0, 0, 0, 0, 0x03, 0, + 0, 0, 0x01, 0x03, 0, 0, 0, 0, 0x03, 0, 0, 0, + 0, 0, 0, 0, 0x01, 0x01, 0x01, 0x01, 0x01, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x01, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0}, + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0x80, + 0x40, 0x40, 0x40, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x10, 0x18, + 0x14, 0x14, 0x12, 0x12, 0x11, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x40, 0x60, 0x80, 0x80, 0x80, 0, 0, + 0, 0x1c, 0x22, 0x21, 0x21, 0x22, 0x2c, 0x30, 0x50, 0x90, 0x11, 0x11, + 0x20, 0x20, 0x40, 0xc0, 0, 0, 0, 0, 0, 0x10, 0x10, 0x10, + 0x09, 0x0e, 0x78, 0x88, 0x04, 0x04, 0x04, 0, 0, 0, 0, 0, + 0x01, 0x02, 0x0c, 0xf0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xc0, 0x20, 0x10, + 0x08, 0x08, 0x04, 0x82, 0x01, 0x01, 0, 0x40, 0x80, 0, 0x80, 0x80, + 0, 0, 0, 0x30, 0x48, 0x48, 0x48, 0x30, 0, 0x80, 0x60, 0x18, + 0x04, 0x80, 0x80, 0, 0, 0, 0, 0, 0, 0x80, 0x80, 0x80, + 0x80, 0, 0, 0x80, 0xe0, 0x01, 0x01, 0x02, 0x06, 0x08, 0x10, 0xe0, + 0x10, 0x20, 0x20, 0x20, 0x20, 0x21, 0x16, 0x18, 0x30, 0x50, 0x08, 0x08, + 0x07, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, + 0, 0, 0, 0, 0, 0, 0x80, 0x40, 0x30, 0x0c, 0x02, 0x01, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0xff, 0, 0, 0, 0, 0x08, 0x8c, 0xc5, + 0x4e, 0x74, 0xe2, 0x21, 0x21, 0x17, 0x18, 0x68, 0x84, 0x04, 0, 0, + 0, 0, 0, 0x30, 0x0e, 0x01, 0, 0, 0x07, 0x09, 0x08, 0x09, + 0x06, 0, 0, 0, 0x07, 0, 0, 0, 0x01, 0x01, 0x01, 0x01, + 0, 0, 0, 0, 0, 0x80, 0x70, 0x0f, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xf8, 0x04, 0x02, + 0x02, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0x03, 0x04, 0x08, 0x10, 0x20, 0xe0, 0, 0, 0, 0, 0x81, + 0xc0, 0x40, 0x40, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x20, 0x20, 0x20, 0x10, 0x10, 0x08, 0x08, 0x04, 0x0a, 0x06, + 0x05, 0x04, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x02, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x06, 0x18, 0x60, 0x80, 0, 0, + 0, 0, 0x80, 0x78, 0x07, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x03, 0, 0x02, 0x02, 0x01, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x01, 0x02, 0, 0, 0x03, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, + }, + { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x80, 0x40, 0x40, 0x20, 0x10, + 0x10, 0x08, 0x04, 0, 0x02, 0x01, 0x01, 0x01, 0, 0, 0, 0, + 0, 0x80, 0x80, 0xe0, 0x80, 0xe0, 0, 0, 0, 0, 0, 0, + 0x3c, 0x22, 0x21, 0x21, 0x23, 0x2c, 0x30, 0x70, 0x51, 0x91, 0x10, 0x10, + 0x10, 0x20, 0x60, 0x80, 0, 0, 0, 0, 0x08, 0x08, 0x08, 0x04, + 0x07, 0x3c, 0xc4, 0x04, 0x04, 0x02, 0x02, 0, 0, 0, 0, 0, + 0x01, 0x07, 0xfc, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0xf0, 0x0c, 0x03, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x06, 0x18, 0x20, 0xc0, 0, 0, 0, 0x05, 0x06, 0x03, + 0x01, 0x07, 0x01, 0x01, 0x01, 0, 0, 0, 0, 0, 0, 0, + 0x30, 0x20, 0x20, 0x20, 0x20, 0x21, 0x16, 0x1c, 0x38, 0x68, 0x04, 0x07, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0x80, 0xc0, 0x20, 0x30, 0x0c, 0x07, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x0f, 0x30, 0x40, + 0x40, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x01, 0, 0, 0x10, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0x80, 0x80, 0x80, 0x80, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0x80, 0x7e, 0x02, 0x01, + 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x01, + 0x02, 0x02, 0x02, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x04, + 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x02, 0x02, 0x02, 0x02, 0x01, + 0x01, 0x01, 0, 0, 0, 0x01, 0x03, 0x04, 0x18, 0x30, 0x40, 0x80, + 0, 0, 0, 0xc0, 0x3f, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0x01, 0x03, 0, 0x02, 0x01, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, + }}; -static const char PROGMEM tap_sys[3][520] = { { - 0x01, 0x80, 0x60, 0x10, 0x48, 0x08, 0x24, 0x04, 0x14, 0x84, 0x14, 0x04, 0x28, 0x88, 0x10, 0x60, 0x80, 0, 0, 0x04, 0, 0x80, 0x60, 0x10, 0x08, 0x08, 0x04, 0x44, 0x84, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x60, 0x82, 0, 0, 0, 0, 0, 0, 0, 0xfc, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0x41, 0x21, 0x21, 0x21, 0xa1, 0x61, 0x41, 0xc1, 0x41, 0xc1, 0x81, 0x81, 0x81, 0x81, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0x41, 0x21, 0x21, 0x21, 0xa2, 0xfc, 0, 0, 0, 0x10, 0, 0, 0, 0, 0, 0x80, 0x40, 0x20, 0x10, 0x10, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x40, 0x84, 0, 0, 0, 0, 0x04, - 0, 0x1f, 0x60, 0x85, 0x10, 0x40, 0, 0x80, 0x06, 0x07, 0, 0, 0, 0, 0x82, 0x60, 0x1f, 0, 0, 0, 0, 0x1f, 0x60, 0x80, 0x40, 0x20, 0x20, 0x10, 0x93, 0x5c, 0x10, 0x20, 0x20, 0x40, 0x80, 0x60, 0x1f, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xc1, 0x02, 0x0c, 0x70, 0x80, 0, 0, 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0xc0, 0x38, 0x06, 0x01, 0x80, 0x70, 0x0c, 0x02, 0x03, 0x1c, 0xe0, 0x01, 0x06, 0x38, 0xc1, 0x02, 0x0c, 0x70, 0x80, 0, 0, 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0xc0, 0x38, 0x06, 0x01, 0x80, 0xff, 0, 0, 0, 0, 0, 0, 0xf0, 0x0c, 0x03, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xc0, 0x30, 0x0c, 0x03, 0, 0, 0, 0, 0, 0, 0x03, 0x0c, 0xf0, 0x04, 0, - 0x80, 0x80, 0x88, 0x80, 0x81, 0x81, 0x02, 0x02, 0x12, 0x02, 0x82, 0x82, 0x81, 0x81, 0x80, 0x80, 0, 0x08, 0, 0, 0x80, 0x80, 0x90, 0x80, 0x81, 0x81, 0x02, 0x02, 0x02, 0x02, 0x82, 0x82, 0x01, 0x01, 0, 0, 0x80, 0x80, 0, 0x01, 0, 0, 0, 0, 0xff, 0x41, 0x8e, 0xb0, 0xc0, 0x83, 0x9c, 0x60, 0xa0, 0x18, 0x07, 0x80, 0x40, 0x30, 0x0e, 0x01, 0x80, 0x60, 0x1c, 0x03, 0, 0, 0, 0, 0, 0, 0x07, 0x18, 0x20, 0x41, 0x8e, 0xb0, 0xc0, 0x83, 0x9c, 0x60, 0xa0, 0x18, 0x07, 0x80, 0x40, 0x30, 0x0e, 0x01, 0x80, 0x60, 0x1c, 0x03, 0xff, 0, 0, 0, 0, 0, 0, 0x07, 0x18, 0x60, 0x90, 0x08, 0x08, 0x04, 0x64, 0x04, 0x02, 0xf2, 0x52, 0x92, 0x13, 0x12, 0x12, 0xf2, 0x02, 0x04, 0x64, 0x04, 0x08, 0x08, 0x90, 0x70, 0x18, 0x07, 0, 0, - 0x1f, 0x12, 0x99, 0x14, 0x12, 0x1f, 0, 0x04, 0, 0, 0x1f, 0x10, 0x10, 0x10, 0x10, 0x1f, 0, 0, 0x40, 0, 0x1f, 0x10, 0x10, 0x10, 0x10, 0x1f, 0, 0, 0, 0x40, 0x0d, 0x0d, 0, 0x0c, 0x0c, 0, 0x01, 0x01, 0, 0, 0, 0x40, 0, 0, 0x1f, 0x20, 0x40, 0x40, 0x40, 0x40, 0x41, 0x41, 0x41, 0x41, 0x43, 0x42, 0x42, 0x42, 0x42, 0x41, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x41, 0x41, 0x41, 0x41, 0x43, 0x42, 0x42, 0x42, 0x42, 0x41, 0x40, 0x40, 0x40, 0x20, 0x1f, 0, 0, 0x08, 0, 0, 0, 0, 0, 0, 0x40, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x11, 0x12, 0x12, - 0x12, 0x12, 0x12, 0x11, 0x08, 0x08, 0x04, 0x44, 0x02, 0x01, 0, 0, 0, 0, 0x20, 0 - }, { - 0x04, 0x80, 0x60, 0x10, 0x48, 0x08, 0xa4, 0x04, 0x14, 0x04, 0x14, 0x04, 0x28, 0x88, 0x10, 0x60, 0x80, 0, 0x04, 0, 0, 0x80, 0x60, 0x10, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0xc4, 0x04, 0x08, 0x08, 0x10, 0x60, 0x80, 0x02, 0, 0, 0x04, 0, 0, 0, 0xfc, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0x41, 0x21, 0x21, 0x21, 0xa1, 0x61, 0x41, 0xc1, 0x41, 0x41, 0x81, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0x41, 0x21, 0x21, 0x21, 0xa2, 0xfc, 0, 0, 0x40, 0, 0, 0x02, 0, 0, 0, 0x80, 0x40, 0x20, 0x10, 0x10, 0x08, 0x08, 0x04, 0x84, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x42, 0x80, 0, 0, 0x10, 0, 0, 0, 0x1f, 0x60, 0x85, 0x10, 0x40, 0, 0x81, 0x06, 0x06, 0, 0, 0, 0, 0x82, 0x60, - 0x1f, 0, 0, 0, 0, 0x1f, 0x60, 0x80, 0x40, 0x20, 0x20, 0x10, 0x50, 0x9e, 0x11, 0x20, 0x20, 0x40, 0x80, 0x60, 0x1f, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xc0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0xc0, 0x38, 0x06, 0x01, 0, 0, 0, 0, 0x03, 0x1c, 0xe0, 0x01, 0x06, 0x38, 0xc0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0xc0, 0x38, 0x06, 0x01, 0, 0xff, 0, 0, 0, 0, 0, 0, 0xf0, 0x0c, 0x03, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x1e, 0xe0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x03, 0x0c, 0xf0, 0, 0, 0x80, 0x80, 0x90, 0x80, 0x81, 0x81, 0x02, 0x02, 0x02, 0x02, 0x82, 0x82, 0x81, 0x81, 0x80, 0x88, - 0, 0, 0, 0, 0x80, 0x80, 0x80, 0x88, 0x81, 0x81, 0x02, 0x02, 0x02, 0x02, 0x82, 0x82, 0x01, 0x81, 0x80, 0, 0, 0, 0, 0, 0, 0, 0x10, 0, 0xff, 0x41, 0x8e, 0xb0, 0xc0, 0x80, 0x80, 0x40, 0x20, 0x18, 0x07, 0x80, 0x40, 0x30, 0x0e, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x07, 0x18, 0x20, 0x41, 0x8e, 0xb0, 0xc0, 0x80, 0x80, 0x40, 0x20, 0x18, 0x07, 0x80, 0x40, 0x30, 0x0e, 0x01, 0, 0, 0, 0, 0xff, 0, 0x02, 0, 0, 0, 0, 0x07, 0x18, 0x60, 0x90, 0x08, 0x08, 0x04, 0x64, 0x04, 0x02, 0xf2, 0x12, 0x92, 0x53, 0x92, 0x12, 0xf2, 0x02, 0x04, 0x64, 0x04, 0x08, 0x08, 0x90, 0x70, 0x18, 0x07, 0, 0, 0x1f, 0x10, 0x10, 0x10, 0x10, 0x1f, 0, 0x80, 0, 0, 0x1f, 0x10, 0x10, 0x10, 0x10, 0x1f, - 0, 0, 0, 0, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0, 0, 0, 0x40, 0x01, 0x01, 0x80, 0x0d, 0x0d, 0, 0x0c, 0x0c, 0, 0, 0, 0, 0, 0, 0x1f, 0x20, 0x40, 0x40, 0x40, 0x40, 0x41, 0x41, 0x41, 0x41, 0x41, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x41, 0x41, 0x41, 0x41, 0x41, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x20, 0x1f, 0, 0, 0, 0, 0, 0x08, 0, 0, 0, 0, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x11, 0x12, 0x12, 0x12, 0x12, 0x12, 0x11, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0, 0, 0x04, 0, 0, 0, - }, { - 0, 0x80, 0x60, 0x14, 0x48, 0x08, 0x24, 0x04, 0x14, 0x04, 0x14, 0x04, 0x28, 0x88, 0x10, 0x60, 0x80, 0, 0, 0x08, 0, 0x80, 0x60, 0x10, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x88, 0x10, 0x60, 0x80, 0, 0, 0x04, 0, 0, 0, 0, 0xfc, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0x41, 0x21, 0x21, 0x21, 0x21, 0x21, 0x41, 0x81, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0x41, 0x21, 0x21, 0x21, 0x22, 0xfc, 0, 0, 0x10, 0, 0, 0, 0, 0x02, 0, 0x80, 0x40, 0x20, 0x10, 0x10, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, 0x20, 0x40, 0x80, 0, 0x04, 0, 0, 0, 0, 0x1f, 0x60, 0x85, 0x10, 0x44, 0x04, 0x84, 0x06, 0x06, 0, 0, 0, 0, 0x82, 0x60, - 0x1f, 0, 0, 0, 0, 0x1f, 0x60, 0x80, 0x40, 0x20, 0x20, 0x10, 0x10, 0x18, 0x14, 0x22, 0x21, 0x40, 0x80, 0x60, 0x1f, 0, 0, 0, 0, 0, 0, 0, 0xff, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x03, 0x1c, 0xe0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0, 0, 0, 0, 0, 0xff, 0, 0, 0, 0x08, 0, 0, 0xf0, 0x0c, 0x03, 0, 0, 0, 0, 0x01, 0x06, 0x08, 0x30, 0x40, 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x03, 0x0c, 0xf0, 0, 0, 0x80, 0x80, 0x80, 0x90, 0x81, 0x81, 0x02, 0x12, 0x02, 0x02, 0x82, 0x82, 0x81, 0x81, 0x80, 0x80, 0, 0, 0x08, 0, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0a, - 0x01, 0x81, 0x80, 0, 0x80, 0x80, 0x08, 0, 0, 0, 0x01, 0, 0xff, 0x40, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0x20, 0x18, 0x07, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x07, 0x18, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0x20, 0x18, 0x07, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0, 0, 0, 0, 0, 0, 0x07, 0x18, 0x60, 0x90, 0x08, 0x08, 0x04, 0x64, 0x04, 0x02, 0xf2, 0x12, 0x13, 0x12, 0x92, 0x52, 0xf2, 0x02, 0x04, 0x64, 0x04, 0x08, 0x08, 0x90, 0x70, 0x18, 0x07, 0, 0, 0x1f, 0x10, 0x10, 0x10, 0x10, 0x1f, 0, 0, 0x80, 0, 0x1f, 0x10, 0x16, 0x16, 0x10, 0x1f, 0, 0, 0, 0, 0x1f, 0x10, 0x10, 0x10, 0x50, 0x1f, 0, 0, 0, 0, 0x0c, 0x0c, 0, 0x01, 0x01, 0, 0x0d, 0x0d, 0, 0, 0x40, 0, 0, 0, 0x1f, 0x20, 0x40, 0x40, - 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x20, 0x1f, 0, 0x80, 0, 0, 0, 0, 0, 0x08, 0, 0, 0x01, 0x02, 0x04, 0x04, 0x08, 0x08, 0x11, 0x12, 0x12, 0x12, 0x12, 0x12, 0x11, 0x08, 0x08, 0x04, 0x04, 0x02, 0x01, 0x10, 0, 0, 0, 0, 0, - } -}; +static const char PROGMEM tap_sys[3][520] = { + {0x01, 0x80, 0x60, 0x10, 0x48, 0x08, 0x24, 0x04, 0x14, 0x84, 0x14, 0x04, + 0x28, 0x88, 0x10, 0x60, 0x80, 0, 0, 0x04, 0, 0x80, 0x60, 0x10, + 0x08, 0x08, 0x04, 0x44, 0x84, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x60, + 0x82, 0, 0, 0, 0, 0, 0, 0, 0xfc, 0x02, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0x41, + 0x21, 0x21, 0x21, 0xa1, 0x61, 0x41, 0xc1, 0x41, 0xc1, 0x81, 0x81, 0x81, + 0x81, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x81, 0x41, 0x21, 0x21, 0x21, 0xa2, 0xfc, 0, 0, 0, + 0x10, 0, 0, 0, 0, 0, 0x80, 0x40, 0x20, 0x10, 0x10, 0x08, + 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, + 0x20, 0x40, 0x84, 0, 0, 0, 0, 0x04, 0, 0x1f, 0x60, 0x85, + 0x10, 0x40, 0, 0x80, 0x06, 0x07, 0, 0, 0, 0, 0x82, 0x60, + 0x1f, 0, 0, 0, 0, 0x1f, 0x60, 0x80, 0x40, 0x20, 0x20, 0x10, + 0x93, 0x5c, 0x10, 0x20, 0x20, 0x40, 0x80, 0x60, 0x1f, 0, 0, 0, + 0, 0, 0, 0, 0xff, 0xc1, 0x02, 0x0c, 0x70, 0x80, 0, 0, + 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0xc0, 0x38, 0x06, 0x01, 0x80, + 0x70, 0x0c, 0x02, 0x03, 0x1c, 0xe0, 0x01, 0x06, 0x38, 0xc1, 0x02, 0x0c, + 0x70, 0x80, 0, 0, 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0xc0, + 0x38, 0x06, 0x01, 0x80, 0xff, 0, 0, 0, 0, 0, 0, 0xf0, + 0x0c, 0x03, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0xc0, 0x30, 0x0c, 0x03, 0, 0, 0, 0, 0, 0, 0x03, + 0x0c, 0xf0, 0x04, 0, 0x80, 0x80, 0x88, 0x80, 0x81, 0x81, 0x02, 0x02, + 0x12, 0x02, 0x82, 0x82, 0x81, 0x81, 0x80, 0x80, 0, 0x08, 0, 0, + 0x80, 0x80, 0x90, 0x80, 0x81, 0x81, 0x02, 0x02, 0x02, 0x02, 0x82, 0x82, + 0x01, 0x01, 0, 0, 0x80, 0x80, 0, 0x01, 0, 0, 0, 0, + 0xff, 0x41, 0x8e, 0xb0, 0xc0, 0x83, 0x9c, 0x60, 0xa0, 0x18, 0x07, 0x80, + 0x40, 0x30, 0x0e, 0x01, 0x80, 0x60, 0x1c, 0x03, 0, 0, 0, 0, + 0, 0, 0x07, 0x18, 0x20, 0x41, 0x8e, 0xb0, 0xc0, 0x83, 0x9c, 0x60, + 0xa0, 0x18, 0x07, 0x80, 0x40, 0x30, 0x0e, 0x01, 0x80, 0x60, 0x1c, 0x03, + 0xff, 0, 0, 0, 0, 0, 0, 0x07, 0x18, 0x60, 0x90, 0x08, + 0x08, 0x04, 0x64, 0x04, 0x02, 0xf2, 0x52, 0x92, 0x13, 0x12, 0x12, 0xf2, + 0x02, 0x04, 0x64, 0x04, 0x08, 0x08, 0x90, 0x70, 0x18, 0x07, 0, 0, + 0x1f, 0x12, 0x99, 0x14, 0x12, 0x1f, 0, 0x04, 0, 0, 0x1f, 0x10, + 0x10, 0x10, 0x10, 0x1f, 0, 0, 0x40, 0, 0x1f, 0x10, 0x10, 0x10, + 0x10, 0x1f, 0, 0, 0, 0x40, 0x0d, 0x0d, 0, 0x0c, 0x0c, 0, + 0x01, 0x01, 0, 0, 0, 0x40, 0, 0, 0x1f, 0x20, 0x40, 0x40, + 0x40, 0x40, 0x41, 0x41, 0x41, 0x41, 0x43, 0x42, 0x42, 0x42, 0x42, 0x41, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x41, 0x41, 0x41, 0x41, 0x43, 0x42, + 0x42, 0x42, 0x42, 0x41, 0x40, 0x40, 0x40, 0x20, 0x1f, 0, 0, 0x08, + 0, 0, 0, 0, 0, 0, 0x40, 0x01, 0x02, 0x04, 0x04, 0x08, + 0x08, 0x11, 0x12, 0x12, 0x12, 0x12, 0x12, 0x11, 0x08, 0x08, 0x04, 0x44, + 0x02, 0x01, 0, 0, 0, 0, 0x20, 0}, + { + 0x04, 0x80, 0x60, 0x10, 0x48, 0x08, 0xa4, 0x04, 0x14, 0x04, 0x14, 0x04, + 0x28, 0x88, 0x10, 0x60, 0x80, 0, 0x04, 0, 0, 0x80, 0x60, 0x10, + 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0xc4, 0x04, 0x08, 0x08, 0x10, 0x60, + 0x80, 0x02, 0, 0, 0x04, 0, 0, 0, 0xfc, 0x02, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0x41, + 0x21, 0x21, 0x21, 0xa1, 0x61, 0x41, 0xc1, 0x41, 0x41, 0x81, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x81, 0x41, 0x21, 0x21, 0x21, 0xa2, 0xfc, 0, 0, 0x40, + 0, 0, 0x02, 0, 0, 0, 0x80, 0x40, 0x20, 0x10, 0x10, 0x08, + 0x08, 0x04, 0x84, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, + 0x20, 0x42, 0x80, 0, 0, 0x10, 0, 0, 0, 0x1f, 0x60, 0x85, + 0x10, 0x40, 0, 0x81, 0x06, 0x06, 0, 0, 0, 0, 0x82, 0x60, + 0x1f, 0, 0, 0, 0, 0x1f, 0x60, 0x80, 0x40, 0x20, 0x20, 0x10, + 0x50, 0x9e, 0x11, 0x20, 0x20, 0x40, 0x80, 0x60, 0x1f, 0, 0, 0, + 0, 0, 0, 0, 0xff, 0xc0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0xc0, 0x38, 0x06, 0x01, 0, + 0, 0, 0, 0x03, 0x1c, 0xe0, 0x01, 0x06, 0x38, 0xc0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0xc0, + 0x38, 0x06, 0x01, 0, 0xff, 0, 0, 0, 0, 0, 0, 0xf0, + 0x0c, 0x03, 0, 0, 0, 0, 0, 0, 0, 0, 0x01, 0x1e, + 0xe0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x03, + 0x0c, 0xf0, 0, 0, 0x80, 0x80, 0x90, 0x80, 0x81, 0x81, 0x02, 0x02, + 0x02, 0x02, 0x82, 0x82, 0x81, 0x81, 0x80, 0x88, 0, 0, 0, 0, + 0x80, 0x80, 0x80, 0x88, 0x81, 0x81, 0x02, 0x02, 0x02, 0x02, 0x82, 0x82, + 0x01, 0x81, 0x80, 0, 0, 0, 0, 0, 0, 0, 0x10, 0, + 0xff, 0x41, 0x8e, 0xb0, 0xc0, 0x80, 0x80, 0x40, 0x20, 0x18, 0x07, 0x80, + 0x40, 0x30, 0x0e, 0x01, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x07, 0x18, 0x20, 0x41, 0x8e, 0xb0, 0xc0, 0x80, 0x80, 0x40, + 0x20, 0x18, 0x07, 0x80, 0x40, 0x30, 0x0e, 0x01, 0, 0, 0, 0, + 0xff, 0, 0x02, 0, 0, 0, 0, 0x07, 0x18, 0x60, 0x90, 0x08, + 0x08, 0x04, 0x64, 0x04, 0x02, 0xf2, 0x12, 0x92, 0x53, 0x92, 0x12, 0xf2, + 0x02, 0x04, 0x64, 0x04, 0x08, 0x08, 0x90, 0x70, 0x18, 0x07, 0, 0, + 0x1f, 0x10, 0x10, 0x10, 0x10, 0x1f, 0, 0x80, 0, 0, 0x1f, 0x10, + 0x10, 0x10, 0x10, 0x1f, 0, 0, 0, 0, 0x1f, 0x1f, 0x1f, 0x1f, + 0x1f, 0x1f, 0, 0, 0, 0x40, 0x01, 0x01, 0x80, 0x0d, 0x0d, 0, + 0x0c, 0x0c, 0, 0, 0, 0, 0, 0, 0x1f, 0x20, 0x40, 0x40, + 0x40, 0x40, 0x41, 0x41, 0x41, 0x41, 0x41, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x41, 0x41, 0x41, 0x41, 0x41, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x20, 0x1f, 0, 0, 0, + 0, 0, 0x08, 0, 0, 0, 0, 0x01, 0x02, 0x04, 0x04, 0x08, + 0x08, 0x11, 0x12, 0x12, 0x12, 0x12, 0x12, 0x11, 0x08, 0x08, 0x04, 0x04, + 0x02, 0x01, 0, 0, 0x04, 0, 0, 0, + }, + { + 0, 0x80, 0x60, 0x14, 0x48, 0x08, 0x24, 0x04, 0x14, 0x04, 0x14, 0x04, + 0x28, 0x88, 0x10, 0x60, 0x80, 0, 0, 0x08, 0, 0x80, 0x60, 0x10, + 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x88, 0x10, 0x60, + 0x80, 0, 0, 0x04, 0, 0, 0, 0, 0xfc, 0x02, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0x41, + 0x21, 0x21, 0x21, 0x21, 0x21, 0x41, 0x81, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x81, 0x41, 0x21, 0x21, 0x21, 0x22, 0xfc, 0, 0, 0x10, + 0, 0, 0, 0, 0x02, 0, 0x80, 0x40, 0x20, 0x10, 0x10, 0x08, + 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10, + 0x20, 0x40, 0x80, 0, 0x04, 0, 0, 0, 0, 0x1f, 0x60, 0x85, + 0x10, 0x44, 0x04, 0x84, 0x06, 0x06, 0, 0, 0, 0, 0x82, 0x60, + 0x1f, 0, 0, 0, 0, 0x1f, 0x60, 0x80, 0x40, 0x20, 0x20, 0x10, + 0x10, 0x18, 0x14, 0x22, 0x21, 0x40, 0x80, 0x60, 0x1f, 0, 0, 0, + 0, 0, 0, 0, 0xff, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0x03, 0x1c, 0xe0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0xe0, 0x1c, 0x03, 0, 0, + 0, 0, 0, 0, 0xff, 0, 0, 0, 0x08, 0, 0, 0xf0, + 0x0c, 0x03, 0, 0, 0, 0, 0x01, 0x06, 0x08, 0x30, 0x40, 0x80, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x03, + 0x0c, 0xf0, 0, 0, 0x80, 0x80, 0x80, 0x90, 0x81, 0x81, 0x02, 0x12, + 0x02, 0x02, 0x82, 0x82, 0x81, 0x81, 0x80, 0x80, 0, 0, 0x08, 0, + 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x02, 0x02, 0x02, 0x02, 0x02, 0x0a, + 0x01, 0x81, 0x80, 0, 0x80, 0x80, 0x08, 0, 0, 0, 0x01, 0, + 0xff, 0x40, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0x20, 0x18, 0x07, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0x07, 0x18, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, + 0x20, 0x18, 0x07, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0xff, 0, 0, 0, 0, 0, 0, 0x07, 0x18, 0x60, 0x90, 0x08, + 0x08, 0x04, 0x64, 0x04, 0x02, 0xf2, 0x12, 0x13, 0x12, 0x92, 0x52, 0xf2, + 0x02, 0x04, 0x64, 0x04, 0x08, 0x08, 0x90, 0x70, 0x18, 0x07, 0, 0, + 0x1f, 0x10, 0x10, 0x10, 0x10, 0x1f, 0, 0, 0x80, 0, 0x1f, 0x10, + 0x16, 0x16, 0x10, 0x1f, 0, 0, 0, 0, 0x1f, 0x10, 0x10, 0x10, + 0x50, 0x1f, 0, 0, 0, 0, 0x0c, 0x0c, 0, 0x01, 0x01, 0, + 0x0d, 0x0d, 0, 0, 0x40, 0, 0, 0, 0x1f, 0x20, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x20, 0x1f, 0, 0x80, 0, + 0, 0, 0, 0, 0x08, 0, 0, 0x01, 0x02, 0x04, 0x04, 0x08, + 0x08, 0x11, 0x12, 0x12, 0x12, 0x12, 0x12, 0x11, 0x08, 0x08, 0x04, 0x04, + 0x02, 0x01, 0x10, 0, 0, 0, 0, 0, + }}; #endif diff --git a/waffle/oledfont.h b/waffle/oledfont.h index 5636a1f..93c74b2 100644 --- a/waffle/oledfont.h +++ b/waffle/oledfont.h @@ -2,13 +2,116 @@ // SPDX-License-Identifier: GPL-2.0-or-later #include "progmem.h" const unsigned char font[] PROGMEM = { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00, 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00, 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00, 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00, 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00, 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00, 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, 0x00, 0x18, 0x24, 0x18, 0x00, 0x00, 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00, 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00, 0x26, 0x29, 0x79, 0x29, 0x26, 0x00, 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00, 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00, 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00, 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00, 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00, 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00, 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00, 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00, 0x60, 0x60, 0x60, 0x60, 0x60, 0x00, 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00, 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00, - 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00, 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00, 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00, 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00, 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00, 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00, 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x07, 0x00, 0x00, 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00, 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00, 0x23, 0x13, 0x08, 0x64, 0x62, 0x00, 0x36, 0x49, 0x56, 0x20, 0x50, 0x00, 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00, 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, 0x00, 0x80, 0x70, 0x30, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00, - 0x72, 0x49, 0x49, 0x49, 0x46, 0x00, 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00, 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00, 0x27, 0x45, 0x45, 0x45, 0x39, 0x00, 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00, 0x41, 0x21, 0x11, 0x09, 0x07, 0x00, 0x36, 0x49, 0x49, 0x49, 0x36, 0x00, 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x40, 0x34, 0x00, 0x00, 0x00, 0x00, 0x08, 0x14, 0x22, 0x41, 0x00, 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, 0x00, 0x41, 0x22, 0x14, 0x08, 0x00, 0x02, 0x01, 0x59, 0x09, 0x06, 0x00, 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00, 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00, 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00, 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00, 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00, 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00, 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00, 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00, 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00, - 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00, 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00, 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00, 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00, 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00, 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00, 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00, 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00, 0x26, 0x49, 0x49, 0x49, 0x32, 0x00, 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00, 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00, 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00, 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00, 0x63, 0x14, 0x08, 0x14, 0x63, 0x00, 0x03, 0x04, 0x78, 0x04, 0x03, 0x00, 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00, 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00, 0x04, 0x02, 0x01, 0x02, 0x04, 0x00, 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, 0x03, 0x07, 0x08, 0x00, 0x00, 0x20, 0x54, 0x54, 0x78, 0x40, 0x00, 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00, 0x38, 0x44, 0x44, 0x44, 0x28, 0x00, - 0x38, 0x44, 0x44, 0x28, 0x7F, 0x00, 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00, 0x18, 0x24, 0x24, 0x1C, 0x78, 0x00, 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00, 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00, 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00, 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00, 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00, 0x38, 0x44, 0x44, 0x44, 0x38, 0x00, 0x7C, 0x18, 0x24, 0x24, 0x18, 0x00, 0x18, 0x24, 0x24, 0x18, 0x7C, 0x00, 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00, 0x48, 0x54, 0x54, 0x54, 0x24, 0x00, 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00, 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00, 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00, 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00, 0x44, 0x28, 0x10, 0x28, 0x44, 0x00, 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00, 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, - 0x00, 0x41, 0x36, 0x08, 0x00, 0x00, 0x02, 0x01, 0x02, 0x04, 0x02, 0x00, 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x60, 0x30, 0x18, 0xF8, 0x18, 0x00, 0xC0, 0x70, 0x1C, 0x06, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0xC3, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x00, 0x00, 0x08, 0x08, 0x08, 0x00, 0x1C, 0x22, 0x41, 0x41, 0x41, 0x22, 0x1C, 0x00, 0x08, 0x08, 0x08, 0x00, 0x00, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xF8, 0x0C, 0x04, 0xE7, 0xE4, 0xE4, 0x07, 0x04, 0xE4, 0xE7, 0xE4, 0x04, 0x07, 0xE4, 0xE4, 0xE7, 0x04, 0x0C, 0xF8, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x1C, 0x3E, 0x7F, 0x7F, 0x00, 0x14, 0x08, 0x14, 0x00, 0x00, 0x00, 0x1C, 0x1C, 0x3E, 0x7F, 0x7F, 0x00, 0x22, 0x1C, 0x41, 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x18, 0x0C, 0x06, 0x0C, 0x18, 0x30, 0x77, 0x77, 0x77, 0x00, 0x77, 0x77, - 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x4A, 0x4F, 0x4A, 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x60, 0x70, 0x3E, 0x1F, 0x19, 0x18, 0x0C, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x0C, 0x06, 0x07, 0xFC, 0x00, 0xFF, 0x01, 0x00, 0x00, 0x00, 0xFF, 0x80, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1C, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, 0x1C, 0x22, 0x00, 0x00, 0x1C, 0x3E, 0x7F, 0x63, 0x41, 0x22, 0x1C, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x49, 0xFF, 0x00, 0x00, 0x0F, 0x1F, 0x3F, 0x38, 0x30, 0xFF, 0xFF, 0xFF, 0x30, 0x38, 0x3F, 0x1F, 0x0F, 0x00, 0x00, 0xFF, 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x40, 0x60, 0x6A, 0x64, 0x6A, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x04, 0x42, 0x69, 0x65, 0x65, 0x65, 0x69, 0x42, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x06, 0x0C, 0x18, 0x30, 0x66, 0x66, 0x66, 0x00, 0x00, 0xFC, 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, 0x00, 0x00, 0x00, 0xF0, 0x90, 0x90, 0xF0, 0x90, 0x90, 0xF0, 0x98, 0x9C, 0xF2, 0x22, 0x21, 0xE1, 0x01, 0x01, 0x01, 0xF1, 0x91, 0x91, 0xFA, 0x4C, 0x4C, 0xF8, 0x48, 0x48, 0xF8, 0x48, 0x48, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0E, 0x18, 0x30, 0x21, 0x21, 0x31, 0x18, 0x10, 0x30, 0x20, 0x60, 0x41, 0x60, 0x20, 0x30, 0x18, 0x30, 0x60, 0x40, 0x40, 0x47, 0x4C, 0x48, 0x68, 0x38, 0x1C, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x1C, 0x22, 0x41, 0x63, 0x7F, 0x3E, 0x1C, - 0x00, 0x00, 0x22, 0x1C, 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x0F, 0x18, 0x10, 0x70, 0x10, 0x10, 0x70, 0x10, 0x13, 0x73, 0x13, 0x10, 0x70, 0x10, 0x10, 0x70, 0x10, 0x18, 0x0F, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x22, 0xC9, 0xD1, 0xC9, 0x22, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x38, 0xFC, 0xED, 0xFC, 0x38, 0x02, 0x10, 0x00, 0x00, 0x08, 0x0C, 0x7E, 0x7F, 0x7E, 0x0C, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x09, 0x09, 0x09, 0x0F, 0x09, 0x09, 0x0F, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x0F, 0x09, 0x09, 0x0F, 0x09, 0x09, 0x09, 0x0F, 0x00, 0x00, 0x00, 0x07, 0x04, 0x04, 0x07, 0x04, 0x04, 0x07, 0x04, 0x04, 0x0F, 0x09, 0x09, 0x0F, 0x00, 0x00, 0x00, 0x07, 0x04, 0x04, 0x07, 0x02, 0x02, 0x03, 0x02, 0x02, 0x03, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00, + 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00, 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00, + 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00, 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00, + 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00, + 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, 0x00, 0x18, 0x24, 0x18, 0x00, 0x00, + 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00, 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00, + 0x26, 0x29, 0x79, 0x29, 0x26, 0x00, 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00, + 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00, 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00, + 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00, 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00, + 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00, 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00, + 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x00, 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00, + 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00, 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00, + 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00, 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00, + 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00, 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00, + 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00, 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, + 0x00, 0x07, 0x00, 0x07, 0x00, 0x00, 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00, + 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00, 0x23, 0x13, 0x08, 0x64, 0x62, 0x00, + 0x36, 0x49, 0x56, 0x20, 0x50, 0x00, 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, + 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, + 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00, 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, + 0x00, 0x80, 0x70, 0x30, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, + 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, + 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00, + 0x72, 0x49, 0x49, 0x49, 0x46, 0x00, 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00, + 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00, 0x27, 0x45, 0x45, 0x45, 0x39, 0x00, + 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00, 0x41, 0x21, 0x11, 0x09, 0x07, 0x00, + 0x36, 0x49, 0x49, 0x49, 0x36, 0x00, 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00, + 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x40, 0x34, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x14, 0x22, 0x41, 0x00, 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, + 0x00, 0x41, 0x22, 0x14, 0x08, 0x00, 0x02, 0x01, 0x59, 0x09, 0x06, 0x00, + 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00, 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00, + 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00, 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00, + 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00, 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00, + 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00, 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00, + 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00, + 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00, 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00, + 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00, 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00, + 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00, 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00, + 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00, 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00, + 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00, 0x26, 0x49, 0x49, 0x49, 0x32, 0x00, + 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00, 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00, + 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00, 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00, + 0x63, 0x14, 0x08, 0x14, 0x63, 0x00, 0x03, 0x04, 0x78, 0x04, 0x03, 0x00, + 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00, + 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00, + 0x04, 0x02, 0x01, 0x02, 0x04, 0x00, 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, + 0x00, 0x03, 0x07, 0x08, 0x00, 0x00, 0x20, 0x54, 0x54, 0x78, 0x40, 0x00, + 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00, 0x38, 0x44, 0x44, 0x44, 0x28, 0x00, + 0x38, 0x44, 0x44, 0x28, 0x7F, 0x00, 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, + 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00, 0x18, 0x24, 0x24, 0x1C, 0x78, 0x00, + 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00, + 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00, + 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00, 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00, + 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00, 0x38, 0x44, 0x44, 0x44, 0x38, 0x00, + 0x7C, 0x18, 0x24, 0x24, 0x18, 0x00, 0x18, 0x24, 0x24, 0x18, 0x7C, 0x00, + 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00, 0x48, 0x54, 0x54, 0x54, 0x24, 0x00, + 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00, 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00, + 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00, 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00, + 0x44, 0x28, 0x10, 0x28, 0x44, 0x00, 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00, + 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, + 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x00, 0x41, 0x36, 0x08, 0x00, 0x00, + 0x02, 0x01, 0x02, 0x04, 0x02, 0x00, 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x60, 0x30, 0x18, + 0xF8, 0x18, 0x00, 0xC0, 0x70, 0x1C, 0x06, 0x03, 0x01, 0x01, 0x01, 0x01, + 0x01, 0xC3, 0x7E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x00, + 0x00, 0x08, 0x08, 0x08, 0x00, 0x1C, 0x22, 0x41, 0x41, 0x41, 0x22, 0x1C, + 0x00, 0x08, 0x08, 0x08, 0x00, 0x00, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x20, 0x20, 0xF8, 0x0C, 0x04, 0xE7, 0xE4, 0xE4, 0x07, + 0x04, 0xE4, 0xE7, 0xE4, 0x04, 0x07, 0xE4, 0xE4, 0xE7, 0x04, 0x0C, 0xF8, + 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x1C, 0x3E, 0x7F, 0x7F, + 0x00, 0x14, 0x08, 0x14, 0x00, 0x00, 0x00, 0x1C, 0x1C, 0x3E, 0x7F, 0x7F, + 0x00, 0x22, 0x1C, 0x41, 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, + 0x18, 0x0C, 0x06, 0x0C, 0x18, 0x30, 0x77, 0x77, 0x77, 0x00, 0x77, 0x77, + 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x4A, 0x4F, + 0x4A, 0x3E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x60, + 0x70, 0x3E, 0x1F, 0x19, 0x18, 0x0C, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xF8, 0x0C, 0x06, 0x07, 0xFC, 0x00, 0xFF, 0x01, 0x00, 0x00, 0x00, + 0xFF, 0x80, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x1C, + 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x22, 0x41, 0x00, + 0x00, 0x1C, 0x22, 0x00, 0x00, 0x1C, 0x3E, 0x7F, 0x63, 0x41, 0x22, 0x1C, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x49, 0x49, 0xFF, 0x00, 0x00, 0x0F, 0x1F, 0x3F, 0x38, + 0x30, 0xFF, 0xFF, 0xFF, 0x30, 0x38, 0x3F, 0x1F, 0x0F, 0x00, 0x00, 0xFF, + 0x49, 0x49, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x60, 0x6A, 0x64, + 0x6A, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x04, 0x42, 0x69, 0x65, 0x65, + 0x65, 0x69, 0x42, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x06, + 0x0C, 0x18, 0x30, 0x66, 0x66, 0x66, 0x00, 0x00, 0xFC, 0x24, 0x24, 0xFC, + 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, + 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, 0x24, 0x24, 0xFC, 0x00, 0x00, 0x00, + 0xF0, 0x90, 0x90, 0xF0, 0x90, 0x90, 0xF0, 0x98, 0x9C, 0xF2, 0x22, 0x21, + 0xE1, 0x01, 0x01, 0x01, 0xF1, 0x91, 0x91, 0xFA, 0x4C, 0x4C, 0xF8, 0x48, + 0x48, 0xF8, 0x48, 0x48, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x03, 0x0E, 0x18, 0x30, 0x21, 0x21, 0x31, 0x18, 0x10, 0x30, 0x20, + 0x60, 0x41, 0x60, 0x20, 0x30, 0x18, 0x30, 0x60, 0x40, 0x40, 0x47, 0x4C, + 0x48, 0x68, 0x38, 0x1C, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x1C, 0x22, 0x41, 0x63, 0x7F, 0x3E, 0x1C, + 0x00, 0x00, 0x22, 0x1C, 0x00, 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x02, 0x02, 0x0F, 0x18, 0x10, 0x70, 0x10, 0x10, 0x70, + 0x10, 0x13, 0x73, 0x13, 0x10, 0x70, 0x10, 0x10, 0x70, 0x10, 0x18, 0x0F, + 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x22, 0xC9, 0xD1, + 0xC9, 0x22, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x38, 0xFC, 0xED, + 0xFC, 0x38, 0x02, 0x10, 0x00, 0x00, 0x08, 0x0C, 0x7E, 0x7F, 0x7E, 0x0C, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x09, 0x09, 0x09, + 0x0F, 0x09, 0x09, 0x0F, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, 0x09, + 0x09, 0x0F, 0x09, 0x09, 0x0F, 0x09, 0x09, 0x09, 0x0F, 0x00, 0x00, 0x00, + 0x07, 0x04, 0x04, 0x07, 0x04, 0x04, 0x07, 0x04, 0x04, 0x0F, 0x09, 0x09, + 0x0F, 0x00, 0x00, 0x00, 0x07, 0x04, 0x04, 0x07, 0x02, 0x02, 0x03, 0x02, + 0x02, 0x03, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; diff --git a/waffle/tapping.c b/waffle/tapping.c index 34817c3..d6a164b 100644 --- a/waffle/tapping.c +++ b/waffle/tapping.c @@ -1,36 +1,36 @@ // Copyright 2024 jack (@waffle87) // SPDX-License-Identifier: GPL-2.0-or-later -#include "waffle.h" #include "secrets.h" +#include "waffle.h" #ifdef RANDWORD #include "dict.h" uint16_t word = 0; #endif -#define INTERCEPT_MOD_TAP(mod, keycode) \ -case mod(keycode): \ - if (record->tap.count && record->event.pressed) { \ - tap_code16(keycode); \ - return false; \ - } \ - break; \ +#define INTERCEPT_MOD_TAP(mod, keycode) \ + case mod(keycode): \ + if (record->tap.count && record->event.pressed) { \ + tap_code16(keycode); \ + return false; \ + } \ + break; uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { switch (keycode) { - case LWRSPC: - case ESCLWR: - case RSEBSP: - return TAPPING_TERM - SPC_OFFSET; - case TD(QMK_LINKS): - case TD(EM_DASH_MINS): - case TD(PLY_NXT_PRV): - case TD(CURLY_BRACKET): - case TD(SQR_BRACKET): - case TD(BSLS_PIPE): - case TD(QUOT_DQUO): - return TAPPING_TERM + 60; - default: - return TAPPING_TERM; + case LWRSPC: + case ESCLWR: + case RSEBSP: + return TAPPING_TERM - SPC_OFFSET; + case TD(QMK_LINKS): + case TD(EM_DASH_MINS): + case TD(PLY_NXT_PRV): + case TD(CURLY_BRACKET): + case TD(SQR_BRACKET): + case TD(BSLS_PIPE): + case TD(QUOT_DQUO): + return TAPPING_TERM + 60; + default: + return TAPPING_TERM; } } @@ -53,30 +53,30 @@ void qmk_links(tap_dance_state_t *state, void *user_data) { void em_dash_mins(tap_dance_state_t *state, void *user_data) { switch (state->count) { - case 3: + case 3: #ifdef UNICODE_COMMON_ENABLE - register_unicode(0x2014); // — + register_unicode(0x2014); // — #endif - break; - case 2: - tap_code(KC_MINS), tap_code(KC_MINS); - break; - default: - tap_code(KC_MINS); + break; + case 2: + tap_code(KC_MINS), tap_code(KC_MINS); + break; + default: + tap_code(KC_MINS); } } void ply_nxt_prv(tap_dance_state_t *state, void *user_data) { switch (state->count) { - case 1: - tap_code(KC_MPLY); - break; - case 2: - tap_code(KC_MNXT); - break; - case 3: - tap_code(KC_MPRV); - break; + case 1: + tap_code(KC_MPLY); + break; + case 2: + tap_code(KC_MNXT); + break; + case 3: + tap_code(KC_MPRV); + break; } } @@ -88,14 +88,14 @@ void raise_paste(tap_dance_state_t *state, void *user_data) { } tap_dance_action_t tap_dance_actions[] = { - [QMK_LINKS] = ACTION_TAP_DANCE_FN(qmk_links), - [EM_DASH_MINS] = ACTION_TAP_DANCE_FN(em_dash_mins), - [PLY_NXT_PRV] = ACTION_TAP_DANCE_FN(ply_nxt_prv), - [RAISE_PASTE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, raise_paste, td_reset), - [CURLY_BRACKET] = ACTION_TAP_DANCE_DOUBLE(KC_LCBR, KC_RCBR), - [SQR_BRACKET] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_RBRC), - [BSLS_PIPE] = ACTION_TAP_DANCE_DOUBLE(KC_BSLS, KC_PIPE), - [QUOT_DQUO] = ACTION_TAP_DANCE_DOUBLE(KC_QUOT, KC_DQUO), + [QMK_LINKS] = ACTION_TAP_DANCE_FN(qmk_links), + [EM_DASH_MINS] = ACTION_TAP_DANCE_FN(em_dash_mins), + [PLY_NXT_PRV] = ACTION_TAP_DANCE_FN(ply_nxt_prv), + [RAISE_PASTE] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, raise_paste, td_reset), + [CURLY_BRACKET] = ACTION_TAP_DANCE_DOUBLE(KC_LCBR, KC_RCBR), + [SQR_BRACKET] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_RBRC), + [BSLS_PIPE] = ACTION_TAP_DANCE_DOUBLE(KC_BSLS, KC_PIPE), + [QUOT_DQUO] = ACTION_TAP_DANCE_DOUBLE(KC_QUOT, KC_DQUO), }; bool process_record_user(uint16_t keycode, keyrecord_t *record) { @@ -110,20 +110,20 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } #endif switch (keycode) { - case UPDIR: - if (record->event.pressed) - SEND_STRING("../"); - break; - case NUKE: - if (record->event.pressed) { - tap_code16(C(KC_A)); - SEND_STRING("\b```suggestion\n```"); - } - break; - case REMOVE: - if (record->event.pressed) - SEND_STRING("This file should be removed."); - break; + case UPDIR: + if (record->event.pressed) + SEND_STRING("../"); + break; + case NUKE: + if (record->event.pressed) { + tap_code16(C(KC_A)); + SEND_STRING("\b```suggestion\n```"); + } + break; + case REMOVE: + if (record->event.pressed) + SEND_STRING("This file should be removed."); + break; INTERCEPT_MOD_TAP(LALT_T, KC_EXLM) INTERCEPT_MOD_TAP(LGUI_T, KC_AT) INTERCEPT_MOD_TAP(LCTL_T, KC_HASH) @@ -132,15 +132,15 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { INTERCEPT_MOD_TAP(RCTL_T, KC_ASTR) INTERCEPT_MOD_TAP(RGUI_T, KC_LPRN) INTERCEPT_MOD_TAP(RALT_T, KC_RPRN) - case RWORD: + case RWORD: #ifdef RANDWORD - word = rand() % NUM_WORDS; - if (record->event.pressed) { - send_string(dict[word]); - tap_code(KC_SPC); - } + word = rand() % NUM_WORDS; + if (record->event.pressed) { + send_string(dict[word]); + tap_code(KC_SPC); + } #endif - break; + break; } return true; } diff --git a/waffle/unicode.c b/waffle/unicode.c index 2951616..c0a0bd5 100644 --- a/waffle/unicode.c +++ b/waffle/unicode.c @@ -45,9 +45,10 @@ void tap_code16_nomods(uint16_t kc) { return ret; \ } -bool process_record_glyph_replacement(uint16_t keycode, keyrecord_t *record, translator_function_t translator) { +bool process_record_glyph_replacement(uint16_t keycode, keyrecord_t *record, + translator_function_t translator) { uint8_t temp_mod = get_mods(); - bool is_shifted = (temp_mod) & MOD_MASK_SHIFT; + bool is_shifted = (temp_mod)&MOD_MASK_SHIFT; if (((temp_mod) & (MOD_MASK_CTRL | MOD_MASK_ALT | MOD_MASK_GUI)) == 0) { if (KC_A <= keycode && keycode <= KC_Z) { if (record->event.pressed) @@ -68,94 +69,99 @@ bool process_record_glyph_replacement(uint16_t keycode, keyrecord_t *record, tra return true; } -DEFINE_UNICODE_RANGE_TRANSLATOR(unicode_range_translator_wide, 0xFF41, 0xFF21, 0xFF10, 0xFF11, 0x2003); -DEFINE_UNICODE_RANGE_TRANSLATOR(unicode_range_translator_script, 0x1D4EA, 0x1D4D0, 0x1D7CE, 0x1D7C1, 0x2002); -DEFINE_UNICODE_RANGE_TRANSLATOR(unicode_range_translator_boxes, 0x1F170, 0x1F170, '0', '1', 0x2002); -DEFINE_UNICODE_RANGE_TRANSLATOR(unicode_range_translator_regional, 0x1F1E6, 0x1F1E6, '0', '1', 0x2003); +DEFINE_UNICODE_RANGE_TRANSLATOR(unicode_range_translator_wide, 0xFF41, 0xFF21, + 0xFF10, 0xFF11, 0x2003); +DEFINE_UNICODE_RANGE_TRANSLATOR(unicode_range_translator_script, 0x1D4EA, + 0x1D4D0, 0x1D7CE, 0x1D7C1, 0x2002); +DEFINE_UNICODE_RANGE_TRANSLATOR(unicode_range_translator_boxes, 0x1F170, + 0x1F170, '0', '1', 0x2002); +DEFINE_UNICODE_RANGE_TRANSLATOR(unicode_range_translator_regional, 0x1F1E6, + 0x1F1E6, '0', '1', 0x2003); DEFINE_UNICODE_LUT_TRANSLATOR(unicode_lut_translator_aussie, - 0x0250, // a - 'q', // b - 0x0254, // c - 'p', // d - 0x01DD, // e - 0x025F, // f - 0x0183, // g - 0x0265, // h - 0x1D09, // i - 0x027E, // j - 0x029E, // k - 'l', // l - 0x026F, // m - 'u', // n - 'o', // o - 'd', // p - 'b', // q - 0x0279, // r - 's', // s - 0x0287, // t - 'n', // u - 0x028C, // v - 0x028D, // w - 0x2717, // x - 0x028E, // y - 'z', // z - 0x0269, // 1 - 0x3139, // 2 - 0x0190, // 3 - 0x3123, // 4 - 0x03DB, // 5 - '9', // 6 - 0x3125, // 7 - '8', // 8 - '6', // 9 - '0' // 0 + 0x0250, // a + 'q', // b + 0x0254, // c + 'p', // d + 0x01DD, // e + 0x025F, // f + 0x0183, // g + 0x0265, // h + 0x1D09, // i + 0x027E, // j + 0x029E, // k + 'l', // l + 0x026F, // m + 'u', // n + 'o', // o + 'd', // p + 'b', // q + 0x0279, // r + 's', // s + 0x0287, // t + 'n', // u + 0x028C, // v + 0x028D, // w + 0x2717, // x + 0x028E, // y + 'z', // z + 0x0269, // 1 + 0x3139, // 2 + 0x0190, // 3 + 0x3123, // 4 + 0x03DB, // 5 + '9', // 6 + 0x3125, // 7 + '8', // 8 + '6', // 9 + '0' // 0 ); DEFINE_UNICODE_LUT_TRANSLATOR(unicode_lut_translator_super, - 0x1D43, // a - 0x1D47, // b - 0x1D9C, // c - 0x1D48, // d - 0x1D49, // e - 0x1DA0, // f - 0x1D4D, // g - 0x02B0, // h - 0x2071, // i - 0x02B2, // j - 0x1D4F, // k - 0x02E1, // l - 0x1D50, // m - 0x207F, // n - 0x1D52, // o - 0x1D56, // p - 0x06F9, // q - 0x02B3, // r - 0x02E2, // s - 0x1D57, // t - 0x1D58, // u - 0x1D5B, // v - 0x02B7, // w - 0x02E3, // x - 0x02B8, // y - 0x1DBB, // z - 0x00B9, // 1 - 0x00B2, // 2 - 0x00B3, // 3 - 0x2074, // 4 - 0x2075, // 5 - 0x2076, // 6 - 0x2077, // 7 - 0x2078, // 8 - 0x2079, // 9 - 0x2070 // 0 + 0x1D43, // a + 0x1D47, // b + 0x1D9C, // c + 0x1D48, // d + 0x1D49, // e + 0x1DA0, // f + 0x1D4D, // g + 0x02B0, // h + 0x2071, // i + 0x02B2, // j + 0x1D4F, // k + 0x02E1, // l + 0x1D50, // m + 0x207F, // n + 0x1D52, // o + 0x1D56, // p + 0x06F9, // q + 0x02B3, // r + 0x02E2, // s + 0x1D57, // t + 0x1D58, // u + 0x1D5B, // v + 0x02B7, // w + 0x02E3, // x + 0x02B8, // y + 0x1DBB, // z + 0x00B9, // 1 + 0x00B2, // 2 + 0x00B3, // 3 + 0x2074, // 4 + 0x2075, // 5 + 0x2076, // 6 + 0x2077, // 7 + 0x2078, // 8 + 0x2079, // 9 + 0x2070 // 0 ); bool process_record_aussie(uint16_t keycode, keyrecord_t *record) { bool is_shifted = (get_mods()) & MOD_MASK_SHIFT; if ((KC_A <= keycode) && (keycode <= KC_0)) { if (record->event.pressed) - if (!process_record_glyph_replacement(keycode, record, unicode_lut_translator_aussie)) { + if (!process_record_glyph_replacement(keycode, record, + unicode_lut_translator_aussie)) { tap_code16_nomods(KC_LEFT); return false; } @@ -217,9 +223,15 @@ bool process_record_zalgo(uint16_t keycode, keyrecord_t *record) { bool process_record_unicode(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case TABLE1: - if (record->event.pressed) { send_unicode_string("┬──┬ ノ( ゜-゜ノ)"); } break; + if (record->event.pressed) { + send_unicode_string("┬──┬ ノ( ゜-゜ノ)"); + } + break; case TABLE2: - if (record->event.pressed) { send_unicode_string("(╯°□°)╯︵┻━┻"); } break; + if (record->event.pressed) { + send_unicode_string("(╯°□°)╯︵┻━┻"); + } + break; case KC_NOMODE ... KC_SUPER: if (record->event.pressed) { if (typing_mode != keycode - KC_NOMODE) @@ -231,20 +243,26 @@ bool process_record_unicode(uint16_t keycode, keyrecord_t *record) { } if (((get_mods()) & ~MOD_MASK_SHIFT) != 0) return true; - if (((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) && record->tap.count) + if (((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || + (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) && + record->tap.count) keycode &= 0xFF; if (typing_mode == WIDE) { if (((KC_A <= keycode) && (keycode <= KC_0)) || keycode == KC_SPACE) - return process_record_glyph_replacement(keycode, record, unicode_range_translator_wide); + return process_record_glyph_replacement(keycode, record, + unicode_range_translator_wide); } else if (typing_mode == SCRIPT) { if (((KC_A <= keycode) && (keycode <= KC_0)) || keycode == KC_SPACE) - return process_record_glyph_replacement(keycode, record, unicode_range_translator_script); + return process_record_glyph_replacement(keycode, record, + unicode_range_translator_script); } else if (typing_mode == BLOCKS) { if (((KC_A <= keycode) && (keycode <= KC_0)) || keycode == KC_SPACE) - return process_record_glyph_replacement(keycode, record, unicode_range_translator_boxes); + return process_record_glyph_replacement(keycode, record, + unicode_range_translator_boxes); } else if (typing_mode == REGIONAL) { if (((KC_A <= keycode) && (keycode <= KC_0)) || keycode == KC_SPACE) { - if (!process_record_glyph_replacement(keycode, record, unicode_range_translator_regional)) { + if (!process_record_glyph_replacement( + keycode, record, unicode_range_translator_regional)) { wait_us(500); tap_unicode_glyph_nomods(0x200C); return false; @@ -252,7 +270,8 @@ bool process_record_unicode(uint16_t keycode, keyrecord_t *record) { } } else if (typing_mode == SUPER) { if (((KC_A <= keycode) && (keycode <= KC_0))) - return process_record_glyph_replacement(keycode, record, unicode_lut_translator_super); + return process_record_glyph_replacement(keycode, record, + unicode_lut_translator_super); } else if (typing_mode == AUSSIE) return process_record_aussie(keycode, record); else if (typing_mode == ZALGO) diff --git a/waffle/waffle.c b/waffle/waffle.c index 3cbf001..e788de7 100644 --- a/waffle/waffle.c +++ b/waffle/waffle.c @@ -14,7 +14,10 @@ void raw_hid_receive(uint8_t *data, uint8_t length) { #if defined(SPLIT_KEYBOARD) && defined(OLED_ENABLE) #include "transactions.h" extern char keylog_str[5]; -void keylogger_sync(uint8_t initiator2target_buffer_size, const void *initiator2target_buffer, uint8_t target2initiator_buffer_size, void *target2initiator_buffer) { +void keylogger_sync(uint8_t initiator2target_buffer_size, + const void *initiator2target_buffer, + uint8_t target2initiator_buffer_size, + void *target2initiator_buffer) { if (initiator2target_buffer_size == 5) memcpy(&keylog_str, initiator2target_buffer, initiator2target_buffer_size); } @@ -66,23 +69,29 @@ void keyboard_post_init_user(void) { #ifdef ENCODER_MAP_ENABLE const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { - [_BASE] = {{ KC_VOLU, KC_VOLD }, { KC_MNXT, KC_MPRV }}, - [_LOWER] = {{ RGB_SAI, RGB_SAD }, { RGB_HUI, RGB_HUD }}, - [_RAISE] = {{ C(KC_LEFT), C(KC_RGHT) }, { C(S(KC_TAB)), C(KC_TAB) }} -}; + [_BASE] = {{KC_VOLU, KC_VOLD}, {KC_MNXT, KC_MPRV}}, + [_LOWER] = {{RGB_SAI, RGB_SAD}, {RGB_HUI, RGB_HUD}}, + [_RAISE] = {{C(KC_LEFT), C(KC_RGHT)}, {C(S(KC_TAB)), C(KC_TAB)}}}; #endif #ifdef POINTING_DEVICE_DRIVER_pimoroni_trackball uint8_t red = 255, green = 0, blue = 0; void trackball_hue(void) { - if (red != 255 && green != 255 && blue != 255) red = 255; - if (red == 255 && green < 255 && !blue) green += 15; - else if (green == 255 && !blue && red) red -= 15; - else if (!red && blue < 255 && green == 255) blue += 15; - else if (blue == 255 && green && !red) green -= 15; - else if (!green && blue == 255 && red < 255) red += 15; - else if (!green && blue && red == 255) blue -= 15; + if (red != 255 && green != 255 && blue != 255) + red = 255; + if (red == 255 && green < 255 && !blue) + green += 15; + else if (green == 255 && !blue && red) + red -= 15; + else if (!red && blue < 255 && green == 255) + blue += 15; + else if (blue == 255 && green && !red) + green -= 15; + else if (!green && blue == 255 && red < 255) + red += 15; + else if (!green && blue && red == 255) + blue -= 15; pimoroni_trackball_set_rgbw(red, green, blue, 0); } #endif @@ -91,23 +100,23 @@ void trackball_hue(void) { static bool scrolling = false; layer_state_t layer_state_set_user(layer_state_t state) { switch (get_highest_layer(state)) { - case _LOWER: - scrolling = true; + case _LOWER: + scrolling = true; #ifdef POINTING_DEVICE_DRIVER_pimoroni_trackball - pimoroni_trackball_set_cpi(0.1); + pimoroni_trackball_set_cpi(0.1); #else - pointing_device_set_cpi(64); + pointing_device_set_cpi(64); #endif - break; - default: - if (scrolling) { - scrolling = false; + break; + default: + if (scrolling) { + scrolling = false; #ifdef POINTING_DEVICE_DRIVER_pimoroni_trackball - pimoroni_trackball_set_cpi(1); + pimoroni_trackball_set_cpi(1); #else - pointing_device_set_cpi(1024); + pointing_device_set_cpi(1024); #endif - } + } } return state; } diff --git a/waffle/waffle.h b/waffle/waffle.h index a9eb637..0f763a3 100644 --- a/waffle/waffle.h +++ b/waffle/waffle.h @@ -15,12 +15,7 @@ typedef struct user_config { } user_state; #endif -enum layers { - _BASE, - _LOWER, - _RAISE, - _ADJUST -}; +enum layers { _BASE, _LOWER, _RAISE, _ADJUST }; enum tapdances { QMK_LINKS, @@ -33,7 +28,6 @@ enum tapdances { QUOT_DQUO }; - enum custom_keycodes { UPDIR = QK_USER, NUKE, @@ -72,26 +66,37 @@ enum unicode_mode { #define ESCLWR LT(_LOWER, KC_ESC) #define LWRSPC LT(_LOWER, KC_SPC) #define RSEBSP LT(_RAISE, KC_BSPC) -#define HRML(k1,k2,k3,k4) LALT_T(k1),LGUI_T(k2),LCTL_T(k3),LSFT_T(k4) -#define HRMR(k1,k2,k3,k4) RSFT_T(k1),RCTL_T(k2),RGUI_T(k3),RALT_T(k4) +#define HRML(k1, k2, k3, k4) LALT_T(k1), LGUI_T(k2), LCTL_T(k3), LSFT_T(k4) +#define HRMR(k1, k2, k3, k4) RSFT_T(k1), RCTL_T(k2), RGUI_T(k3), RALT_T(k4) #define ___BASE1___ KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P -#define ___BASE2___ HRML(KC_A, KC_S, KC_D, KC_F), KC_G, KC_H, HRMR(KC_J, KC_K, KC_L, KC_SCLN) -#define ___BASE3___ KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH +#define ___BASE2___ \ + HRML(KC_A, KC_S, KC_D, KC_F), KC_G, KC_H, HRMR(KC_J, KC_K, KC_L, KC_SCLN) +#define ___BASE3___ \ + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH #define ___BASE4___ UPDIR, ESCLWR, KC_SPC, KC_BSPC, RSEPST, PNP #define ___LOWER1___ KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0 -#define ___LOWER2___ HRML(KC_EXLM, KC_AT, KC_HASH, KC_DLR), KC_PERC, KC_CIRC, HRMR(KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN) -#define ___LOWER3___ KC_VOLD, KC_TAB, KC_CAPS, KC_TILD, KC_GRV, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_VOLU +#define ___LOWER2___ \ + HRML(KC_EXLM, KC_AT, KC_HASH, KC_DLR), KC_PERC, KC_CIRC, \ + HRMR(KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN) +#define ___LOWER3___ \ + KC_VOLD, KC_TAB, KC_CAPS, KC_TILD, KC_GRV, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, \ + KC_VOLU #define ___LOWER4___ _______, _______, _______, _______, _______, _______ -#define ___RAISE1___ RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NOMODE, KC_SCRIPT, KC_BLOCKS, KC_REGIONAL, QK_MAKE -#define ___RAISE2___ CK_TOGG, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_WIDE, KC_AUSSIE, KC_ZALGO, KC_SUPER, QK_BOOT -#define ___RAISE3___ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 +#define ___RAISE1___ \ + RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NOMODE, KC_SCRIPT, \ + KC_BLOCKS, KC_REGIONAL, QK_MAKE +#define ___RAISE2___ \ + CK_TOGG, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_WIDE, KC_AUSSIE, KC_ZALGO, \ + KC_SUPER, QK_BOOT +#define ___RAISE3___ \ + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 #define ___RAISE4___ _______, _______, _______, _______, _______, _______ #define LAYOUT_waffle_60_ts(...) LAYOUT_60_ansi_tsangan(__VA_ARGS__) #define LAYOUT_stack_of_waffles(...) LAYOUT_stack(__VA_ARGS__) #define LAYOUT_waffle_3x6(...) LAYOUT_split_3x6_3(__VA_ARGS__) #define LAYOUT_waffle_3x5(...) LAYOUT_split_3x5_3(__VA_ARGS__) -#define LAYOUT_waffle(...) LAYOUT(__VA_ARGS__) +#define LAYOUT_waffle(...) LAYOUT(__VA_ARGS__) |