aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.clang-format3
-rw-r--r--jack/autocorrect_data.h860
-rw-r--r--jack/autocorrect_dict.txt12
-rw-r--r--jack/color.c132
-rw-r--r--jack/combos.def2
-rw-r--r--jack/combos.h20
-rw-r--r--jack/config.h6
-rw-r--r--jack/dict.h207
-rw-r--r--jack/jack.c75
-rw-r--r--jack/jack.h74
-rw-r--r--jack/oled.c21
-rw-r--r--jack/oled.h829
-rw-r--r--jack/oledfont.h2
-rw-r--r--jack/rules.mk21
-rw-r--r--jack/tap_code.c159
-rw-r--r--jack/tapping.c90
-rw-r--r--jack/unicode.c31
-rw-r--r--keyboards/grumpy/keyboard.json51
-rw-r--r--keyboards/grumpy/keymaps/jack/keymap.c13
-rw-r--r--keyboards/grumpy/readme.md3
-rw-r--r--keyboards/leftover30/chconf.h2
-rw-r--r--keyboards/leftover30/config.h2
-rw-r--r--keyboards/leftover30/halconf.h2
-rw-r--r--keyboards/leftover30/keymaps/jack/keymap.c4
-rw-r--r--keyboards/leftover30/mcuconf.h2
-rw-r--r--keyboards/leftover30/readme.md6
-rw-r--r--keyboards/locus/keymaps/jack/keymap.c2
-rw-r--r--keyboards/sweep/config.h2
-rw-r--r--keyboards/sweep/halconf.h2
-rw-r--r--keyboards/sweep/keymaps/jack/keymap.c6
-rw-r--r--keyboards/sweep/lib/jetbrainsmono11.qff.c104
-rw-r--r--keyboards/sweep/lib/jetbrainsmono11.qff.h8
-rw-r--r--keyboards/sweep/mcuconf.h2
-rw-r--r--keyboards/sweep/rules.mk4
-rw-r--r--keyboards/sweep/sweep.c17
-rw-r--r--keyboards/tornish/keymaps/default/keymap.c2
-rw-r--r--keyboards/tornish/readme.md8
-rw-r--r--keyboards/xyz60/keymaps/jack/keymap.c8
-rw-r--r--keymaps/bully/keymap.c4
-rw-r--r--keymaps/crkbd/config.h8
-rw-r--r--keymaps/crkbd/halconf.h2
-rw-r--r--keymaps/crkbd/keymap.c46
-rw-r--r--keymaps/crkbd/mcuconf.h2
-rw-r--r--keymaps/crkbd/rules.mk2
-rw-r--r--keymaps/f60/keymap.c8
-rw-r--r--keymaps/f60/readme.md6
-rw-r--r--keymaps/ferris/config.h2
-rw-r--r--keymaps/ferris/keymap.c6
-rw-r--r--keymaps/kyria/config.h2
-rw-r--r--keymaps/kyria/keymap.c46
-rw-r--r--keymaps/kyria/readme.md2
-rw-r--r--keymaps/onekey/rp2040/chconf.h2
-rw-r--r--keymaps/onekey/rp2040/keymap.c2
-rw-r--r--keymaps/onekey/rp2040/mcuconf.h2
-rw-r--r--keymaps/onekey/stm32f411/config.h2
-rw-r--r--keymaps/onekey/stm32f411/keymap.c2
-rw-r--r--keymaps/relic/keymap.c4
-rw-r--r--keymaps/relic/readme.md4
-rw-r--r--keymaps/vault35/config.h2
-rw-r--r--keymaps/vault35/keymap.c6
-rw-r--r--keymaps/vault35/readme.md4
-rw-r--r--util/raw.py (renamed from jack/raw.py)2
62 files changed, 1241 insertions, 1721 deletions
diff --git a/.clang-format b/.clang-format
new file mode 100644
index 0000000..69645a1
--- /dev/null
+++ b/.clang-format
@@ -0,0 +1,3 @@
+---
+SortIncludes: 'false'
+...
diff --git a/jack/autocorrect_data.h b/jack/autocorrect_data.h
index f9d6352..e83dcf9 100644
--- a/jack/autocorrect_data.h
+++ b/jack/autocorrect_data.h
@@ -1,17 +1,17 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#define AUTOCORRECT_MIN_LENGTH 5
-#define AUTOCORRECT_MAX_LENGTH 10
-#define DICTIONARY_SIZE 5867
+#define AUTOCORRECT_MIN_LENGTH 5 // ":abot"
+#define AUTOCORRECT_MAX_LENGTH 10 // "competance"
+#define DICTIONARY_SIZE 5705
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,
+ 0x08, 0x3A, 0x03, 0x09, 0x71, 0x08, 0x0A, 0xA2, 0x08, 0x0B, 0x26, 0x09,
+ 0x0C, 0xB5, 0x09, 0x0E, 0xBF, 0x09, 0x0F, 0xCB, 0x09, 0x10, 0xEC, 0x0A,
+ 0x11, 0x0A, 0x0B, 0x12, 0x18, 0x0D, 0x13, 0x4C, 0x0D, 0x15, 0x66, 0x0D,
+ 0x16, 0x0B, 0x0F, 0x17, 0xBF, 0x10, 0x19, 0xE6, 0x13, 0x1A, 0x1D, 0x14,
+ 0x1C, 0x43, 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,
@@ -39,7 +39,7 @@ static const uint8_t autocorrect_data[DICTIONARY_SIZE] PROGMEM = {
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,
+ 0x15, 0xFA, 0x02, 0x18, 0x25, 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,
@@ -69,429 +69,417 @@ static const uint8_t autocorrect_data[DICTIONARY_SIZE] PROGMEM = {
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};
+ 0x00, 0x82, 0x6F, 0x72, 0x64, 0x00, 0x44, 0x01, 0x03, 0x08, 0x0C, 0x03,
+ 0x00, 0x1A, 0x12, 0x09, 0x00, 0x83, 0x72, 0x77, 0x61, 0x72, 0x64, 0x00,
+ 0x47, 0x13, 0x03, 0x0C, 0x1D, 0x03, 0x00, 0x0C, 0x16, 0x11, 0x12, 0x06,
+ 0x00, 0x80, 0x65, 0x64, 0x00, 0x1A, 0x00, 0x83, 0x65, 0x69, 0x72, 0x64,
+ 0x00, 0x12, 0x00, 0x4B, 0x2E, 0x03, 0x15, 0x34, 0x03, 0x00, 0x16, 0x00,
+ 0x80, 0x6C, 0x64, 0x00, 0x04, 0x00, 0x80, 0x6E, 0x64, 0x00, 0x44, 0x68,
+ 0x03, 0x05, 0x75, 0x03, 0x06, 0xA0, 0x03, 0x07, 0x20, 0x04, 0x08, 0x3C,
+ 0x04, 0x0A, 0x90, 0x04, 0x0B, 0x08, 0x05, 0x0C, 0x59, 0x05, 0x0F, 0x62,
+ 0x05, 0x11, 0x24, 0x06, 0x15, 0x30, 0x06, 0x16, 0x9A, 0x06, 0x17, 0x1B,
+ 0x07, 0x18, 0xF6, 0x07, 0x19, 0x2F, 0x08, 0x00, 0x06, 0x13, 0x16, 0x08,
+ 0x10, 0x04, 0x11, 0x00, 0x82, 0x61, 0x63, 0x65, 0x00, 0x44, 0x7C, 0x03,
+ 0x0F, 0x86, 0x03, 0x00, 0x0F, 0x0C, 0x04, 0x19, 0x04, 0x00, 0x80, 0x6C,
+ 0x65, 0x00, 0x44, 0x8D, 0x03, 0x18, 0x98, 0x03, 0x00, 0x0F, 0x0C, 0x04,
+ 0x19, 0x04, 0x00, 0x82, 0x62, 0x6C, 0x65, 0x00, 0x12, 0x07, 0x00, 0x82,
+ 0x62, 0x6C, 0x65, 0x00, 0x48, 0xAD, 0x03, 0x0C, 0xB8, 0x03, 0x11, 0xC1,
+ 0x03, 0x13, 0x13, 0x04, 0x00, 0x15, 0x08, 0x09, 0x08, 0x15, 0x00, 0x81,
+ 0x6E, 0x63, 0x65, 0x00, 0x08, 0x13, 0x00, 0x83, 0x69, 0x65, 0x63, 0x65,
+ 0x00, 0x44, 0xCB, 0x03, 0x08, 0xD8, 0x03, 0x18, 0x09, 0x04, 0x00, 0x17,
+ 0x08, 0x13, 0x10, 0x12, 0x06, 0x00, 0x83, 0x65, 0x6E, 0x63, 0x65, 0x00,
+ 0x55, 0xDF, 0x03, 0x17, 0xFE, 0x03, 0x00, 0x08, 0x00, 0x49, 0xE8, 0x03,
+ 0x0F, 0xF5, 0x03, 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, 0x2C, 0x04, 0x19, 0x32, 0x04, 0x00,
+ 0x82, 0x72, 0x69, 0x64, 0x65, 0x00, 0x12, 0x00, 0x85, 0x65, 0x72, 0x72,
+ 0x69, 0x64, 0x65, 0x00, 0x17, 0x00, 0x44, 0x4B, 0x04, 0x0C, 0x56, 0x04,
+ 0x11, 0x60, 0x04, 0x17, 0x83, 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, 0x6A, 0x04, 0x18, 0x76,
+ 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, 0x9A, 0x04, 0x07, 0xDD, 0x04, 0x10, 0xFF,
+ 0x04, 0x00, 0x4A, 0xA7, 0x04, 0x11, 0xB2, 0x04, 0x16, 0xBB, 0x04, 0x18,
+ 0xC4, 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, 0xCD,
+ 0x04, 0x04, 0xD3, 0x04, 0x00, 0x83, 0x61, 0x75, 0x67, 0x65, 0x00, 0x0F,
+ 0x00, 0x84, 0x6E, 0x67, 0x75, 0x61, 0x67, 0x65, 0x00, 0x08, 0x0F, 0x00,
+ 0x44, 0xEA, 0x04, 0x0C, 0xF0, 0x04, 0x0F, 0xF9, 0x04, 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, 0x1A, 0x05, 0x10, 0x24, 0x05,
+ 0x12, 0x2E, 0x05, 0x16, 0x37, 0x05, 0x17, 0x40, 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, 0x47, 0x05, 0x18, 0x4F, 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, 0x75,
+ 0x05, 0x0C, 0xE6, 0x05, 0x13, 0xF1, 0x05, 0x16, 0x0D, 0x06, 0x17, 0x15,
+ 0x06, 0x19, 0x1D, 0x06, 0x00, 0x44, 0x7F, 0x05, 0x0C, 0xCF, 0x05, 0x0F,
+ 0xDB, 0x05, 0x00, 0x4A, 0x89, 0x05, 0x0C, 0x93, 0x05, 0x0F, 0xB1, 0x05,
+ 0x00, 0x0C, 0x0F, 0x08, 0x00, 0x83, 0x69, 0x62, 0x6C, 0x65, 0x00, 0x0F,
+ 0x00, 0x44, 0x9C, 0x05, 0x0C, 0xA7, 0x05, 0x00, 0x19, 0x04, 0x00, 0x85,
+ 0x69, 0x6C, 0x61, 0x62, 0x6C, 0x65, 0x00, 0x04, 0x19, 0x04, 0x00, 0x84,
+ 0x61, 0x62, 0x6C, 0x65, 0x00, 0x44, 0xB8, 0x05, 0x0C, 0xC3, 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, 0xF8, 0x05,
+ 0x12, 0x02, 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, 0x40, 0x06, 0x0C, 0x4A, 0x06, 0x12, 0x56, 0x06, 0x15, 0x7D, 0x06,
+ 0x18, 0x84, 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, 0x60, 0x06, 0x08, 0x69, 0x06, 0x09, 0x71, 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, 0x8D, 0x06, 0x04, 0x92, 0x06, 0x00, 0x82, 0x72, 0x75,
+ 0x65, 0x00, 0x10, 0x04, 0x00, 0x82, 0x65, 0x75, 0x72, 0x00, 0x44, 0xAD,
+ 0x06, 0x08, 0xD1, 0x06, 0x0C, 0xD9, 0x06, 0x0F, 0xE8, 0x06, 0x11, 0xF1,
+ 0x06, 0x18, 0x0F, 0x07, 0x00, 0x46, 0xB7, 0x06, 0x08, 0xBF, 0x06, 0x0F,
+ 0xC9, 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, 0xF8, 0x06, 0x12, 0x03, 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, 0x06, 0x04, 0x08, 0x05, 0x00,
+ 0x84, 0x63, 0x61, 0x75, 0x73, 0x65, 0x00, 0x44, 0x28, 0x07, 0x08, 0xD6,
+ 0x07, 0x0F, 0xE1, 0x07, 0x19, 0xED, 0x07, 0x00, 0x47, 0x38, 0x07, 0x0A,
+ 0x5D, 0x07, 0x0F, 0x6A, 0x07, 0x13, 0xAD, 0x07, 0x15, 0xB7, 0x07, 0x00,
+ 0x12, 0x10, 0x00, 0x50, 0x42, 0x07, 0x12, 0x51, 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, 0x74, 0x07, 0x13, 0x81, 0x07, 0x18, 0x8E, 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, 0x95, 0x07, 0x0F, 0xA2, 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, 0xBE, 0x07, 0x18, 0xCB,
+ 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, 0x00,
+ 0x08, 0x0C, 0x0C, 0x08, 0x16, 0x16, 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, 0x1D, 0x08, 0x15, 0x25, 0x08,
+ 0x00, 0x06, 0x2C, 0x00, 0x82, 0x75, 0x73, 0x65, 0x00, 0x08, 0x13, 0x00,
+ 0x84, 0x75, 0x72, 0x73, 0x75, 0x65, 0x00, 0x4C, 0x36, 0x08, 0x12, 0x5B,
+ 0x08, 0x00, 0x48, 0x40, 0x08, 0x0B, 0x4A, 0x08, 0x0F, 0x53, 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, 0x62, 0x08, 0x19, 0x69, 0x08, 0x00, 0x15, 0x13,
+ 0x00, 0x82, 0x76, 0x65, 0x00, 0x05, 0x04, 0x00, 0x83, 0x6F, 0x76, 0x65,
+ 0x00, 0x4C, 0x78, 0x08, 0x11, 0x9A, 0x08, 0x00, 0x08, 0x00, 0x4B, 0x84,
+ 0x08, 0x0F, 0x8B, 0x08, 0x15, 0x93, 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, 0xA9, 0x08, 0x11, 0xB3, 0x08, 0x00, 0x11, 0x12, 0x0A,
+ 0x2C, 0x00, 0x82, 0x69, 0x6E, 0x67, 0x00, 0x48, 0xBD, 0x08, 0x0C, 0xC6,
+ 0x08, 0x15, 0x1C, 0x09, 0x00, 0x0C, 0x05, 0x00, 0x83, 0x65, 0x69, 0x6E,
+ 0x67, 0x00, 0x48, 0xD9, 0x08, 0x0B, 0xE3, 0x08, 0x0F, 0xF0, 0x08, 0x15,
+ 0xFC, 0x08, 0x17, 0x07, 0x09, 0x1C, 0x11, 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, 0x36, 0x09, 0x08, 0x56, 0x09, 0x0A, 0x62, 0x09, 0x16,
+ 0x6C, 0x09, 0x17, 0x7E, 0x09, 0x00, 0x4C, 0x3D, 0x09, 0x15, 0x47, 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, 0x88, 0x09, 0x0C, 0xA0, 0x09,
+ 0x15, 0xAB, 0x09, 0x00, 0x48, 0x8F, 0x09, 0x0C, 0x99, 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,
+ 0xE1, 0x09, 0x07, 0x35, 0x0A, 0x08, 0x59, 0x0A, 0x09, 0xAE, 0x0A, 0x0F,
+ 0xB7, 0x0A, 0x17, 0xD4, 0x0A, 0x18, 0xDD, 0x0A, 0x00, 0x4C, 0xEB, 0x09,
+ 0x17, 0xF6, 0x09, 0x18, 0x0F, 0x0A, 0x00, 0x06, 0x13, 0x1C, 0x17, 0x00,
+ 0x83, 0x69, 0x63, 0x61, 0x6C, 0x00, 0x4C, 0xFD, 0x09, 0x18, 0x05, 0x0A,
+ 0x00, 0x11, 0x0C, 0x00, 0x81, 0x69, 0x61, 0x6C, 0x00, 0x15, 0x0C, 0x19,
+ 0x00, 0x83, 0x74, 0x75, 0x61, 0x6C, 0x00, 0x51, 0x19, 0x0A, 0x15, 0x22,
+ 0x0A, 0x17, 0x2B, 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, 0x3C, 0x0A,
+ 0x18, 0x43, 0x0A, 0x00, 0x0C, 0x09, 0x00, 0x81, 0x6C, 0x64, 0x00, 0x52,
+ 0x4A, 0x0A, 0x1A, 0x50, 0x0A, 0x00, 0x06, 0x00, 0x81, 0x6C, 0x64, 0x00,
+ 0x12, 0x00, 0x84, 0x77, 0x6F, 0x75, 0x6C, 0x64, 0x00, 0x4A, 0x66, 0x0A,
+ 0x0F, 0x6E, 0x0A, 0x17, 0x9C, 0x0A, 0x18, 0xA4, 0x0A, 0x00, 0x11, 0x0C,
+ 0x16, 0x00, 0x81, 0x6C, 0x65, 0x00, 0x44, 0x75, 0x0A, 0x0F, 0x8F, 0x0A,
+ 0x00, 0x15, 0x00, 0x44, 0x7E, 0x0A, 0x15, 0x85, 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, 0xC1,
+ 0x0A, 0x18, 0xCB, 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,
+ 0x4F, 0xF3, 0x0A, 0x15, 0xFE, 0x0A, 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, 0x2C, 0x0B, 0x07, 0x54, 0x0B,
+ 0x08, 0x5D, 0x0B, 0x0A, 0xCC, 0x0B, 0x0C, 0x1F, 0x0C, 0x12, 0x39, 0x0C,
+ 0x13, 0xD5, 0x0C, 0x15, 0xE1, 0x0C, 0x16, 0xEC, 0x0C, 0x18, 0xF6, 0x0C,
+ 0x1A, 0x0D, 0x0D, 0x00, 0x0C, 0x00, 0x4A, 0x35, 0x0B, 0x17, 0x3D, 0x0B,
+ 0x00, 0x04, 0x2C, 0x00, 0x82, 0x61, 0x69, 0x6E, 0x00, 0x51, 0x44, 0x0B,
+ 0x15, 0x4C, 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, 0x70, 0x0B, 0x08, 0x7A, 0x0B, 0x13,
+ 0xA4, 0x0B, 0x15, 0xAD, 0x0B, 0x16, 0xBA, 0x0B, 0x1A, 0xC4, 0x0B, 0x00,
+ 0x0F, 0x0C, 0x0B, 0x06, 0x00, 0x81, 0x72, 0x65, 0x6E, 0x00, 0x57, 0x81,
+ 0x0B, 0x1A, 0x9A, 0x0B, 0x00, 0x48, 0x88, 0x0B, 0x1A, 0x90, 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, 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, 0xD3, 0x0B, 0x0C,
+ 0xDE, 0x0B, 0x00, 0x0C, 0x15, 0x12, 0x09, 0x00, 0x83, 0x65, 0x69, 0x67,
+ 0x6E, 0x00, 0x4B, 0xF1, 0x0B, 0x0F, 0xF7, 0x0B, 0x11, 0xFF, 0x0B, 0x12,
+ 0x08, 0x0C, 0x15, 0x0F, 0x0C, 0x16, 0x16, 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, 0x26, 0x0C, 0x17, 0x2E,
+ 0x0C, 0x00, 0x04, 0x2C, 0x00, 0x81, 0x61, 0x69, 0x6E, 0x00, 0x04, 0x15,
+ 0x08, 0x06, 0x00, 0x83, 0x74, 0x61, 0x69, 0x6E, 0x00, 0x4C, 0x43, 0x0C,
+ 0x16, 0xBF, 0x0C, 0x17, 0xC9, 0x0C, 0x00, 0x46, 0x4D, 0x0C, 0x16, 0x5A,
+ 0x0C, 0x17, 0x74, 0x0C, 0x00, 0x0C, 0x16, 0x08, 0x07, 0x00, 0x85, 0x63,
+ 0x69, 0x73, 0x69, 0x6F, 0x6E, 0x00, 0x44, 0x61, 0x0C, 0x16, 0x6A, 0x0C,
+ 0x00, 0x0C, 0x0F, 0x00, 0x83, 0x69, 0x73, 0x6F, 0x6E, 0x00, 0x04, 0x06,
+ 0x06, 0x12, 0x00, 0x83, 0x69, 0x6F, 0x6E, 0x00, 0x47, 0x84, 0x0C, 0x0C,
+ 0x8E, 0x0C, 0x0F, 0x9D, 0x0C, 0x11, 0xA9, 0x0C, 0x16, 0xB5, 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, 0xFD, 0x0C, 0x17, 0x06, 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, 0x22, 0x0D, 0x11, 0x2D, 0x0D, 0x1A, 0x36,
+ 0x0D, 0x00, 0x08, 0x18, 0x16, 0x13, 0x00, 0x83, 0x65, 0x75, 0x64, 0x6F,
+ 0x00, 0x1A, 0x0E, 0x2C, 0x00, 0x82, 0x6E, 0x6F, 0x77, 0x00, 0x4F, 0x3D,
+ 0x0D, 0x11, 0x45, 0x0D, 0x00, 0x0F, 0x12, 0x09, 0x00, 0x81, 0x6F, 0x77,
+ 0x00, 0x0E, 0x2C, 0x00, 0x81, 0x6F, 0x77, 0x00, 0x56, 0x53, 0x0D, 0x18,
+ 0x5D, 0x0D, 0x00, 0x04, 0x0B, 0x15, 0x08, 0x13, 0x00, 0x81, 0x70, 0x73,
+ 0x00, 0x12, 0x12, 0x0F, 0x00, 0x81, 0x6B, 0x75, 0x70, 0x00, 0x44, 0x82,
+ 0x0D, 0x08, 0xC3, 0x0D, 0x0B, 0xBC, 0x0E, 0x0F, 0xC5, 0x0E, 0x12, 0xD3,
+ 0x0E, 0x16, 0xE4, 0x0E, 0x17, 0xED, 0x0E, 0x18, 0xF9, 0x0E, 0x1C, 0x02,
+ 0x0F, 0x00, 0x4C, 0x8C, 0x0D, 0x0F, 0x96, 0x0D, 0x18, 0xB8, 0x0D, 0x00,
+ 0x0F, 0x0C, 0x10, 0x0C, 0x16, 0x00, 0x82, 0x61, 0x72, 0x00, 0x4C, 0x9D,
+ 0x0D, 0x18, 0xA8, 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, 0xE2, 0x0D, 0x07, 0xEA,
+ 0x0D, 0x0B, 0xF7, 0x0D, 0x0C, 0x34, 0x0E, 0x0F, 0x4E, 0x0E, 0x10, 0x58,
+ 0x0E, 0x11, 0x62, 0x0E, 0x12, 0x8E, 0x0E, 0x17, 0x96, 0x0E, 0x19, 0xA1,
+ 0x0E, 0x00, 0x0F, 0x06, 0x00, 0x82, 0x65, 0x61, 0x72, 0x00, 0x11, 0x04,
+ 0x0F, 0x04, 0x06, 0x00, 0x84, 0x65, 0x6E, 0x64, 0x61, 0x72, 0x00, 0x4A,
+ 0xFE, 0x0D, 0x17, 0x09, 0x0E, 0x00, 0x0C, 0x08, 0x0B, 0x00, 0x85, 0x69,
+ 0x67, 0x68, 0x65, 0x72, 0x00, 0x48, 0x13, 0x0E, 0x12, 0x1F, 0x0E, 0x18,
+ 0x2B, 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, 0x3B, 0x0E, 0x0F, 0x43, 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, 0x69,
+ 0x0E, 0x17, 0x75, 0x0E, 0x00, 0x0A, 0x0A, 0x08, 0x05, 0x00, 0x84, 0x69,
+ 0x6E, 0x6E, 0x65, 0x72, 0x00, 0x4C, 0x7C, 0x0E, 0x16, 0x85, 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, 0x0B, 0x12, 0x11, 0x04, 0x00, 0x83, 0x74, 0x68, 0x65, 0x72,
+ 0x00, 0x48, 0xA8, 0x0E, 0x1A, 0xB3, 0x0E, 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, 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,
+ 0x21, 0x0F, 0x08, 0x55, 0x0F, 0x0A, 0xE5, 0x0F, 0x15, 0xF0, 0x0F, 0x16,
+ 0xFB, 0x0F, 0x17, 0x93, 0x10, 0x18, 0x9B, 0x10, 0x00, 0x4B, 0x2E, 0x0F,
+ 0x13, 0x39, 0x0F, 0x15, 0x43, 0x0F, 0x1C, 0x4C, 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, 0x65, 0x0F, 0x06, 0x7C, 0x0F, 0x0C, 0x87, 0x0F, 0x0F, 0xD3,
+ 0x0F, 0x16, 0xDA, 0x0F, 0x00, 0x47, 0x6C, 0x0F, 0x0E, 0x74, 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, 0x91, 0x0F, 0x15, 0xB8, 0x0F, 0x17, 0xC7, 0x0F,
+ 0x00, 0x48, 0x98, 0x0F, 0x0C, 0xA2, 0x0F, 0x00, 0x07, 0x11, 0x0C, 0x00,
+ 0x84, 0x69, 0x63, 0x65, 0x73, 0x00, 0x47, 0xA9, 0x0F, 0x17, 0xB0, 0x0F,
+ 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,
+ 0x05, 0x10, 0x08, 0x11, 0x10, 0x12, 0x88, 0x10, 0x00, 0x15, 0x04, 0x05,
+ 0x10, 0x08, 0x00, 0x82, 0x72, 0x61, 0x73, 0x73, 0x00, 0x46, 0x1E, 0x10,
+ 0x11, 0x36, 0x10, 0x15, 0x53, 0x10, 0x16, 0x70, 0x10, 0x00, 0x46, 0x25,
+ 0x10, 0x18, 0x2E, 0x10, 0x00, 0x12, 0x15, 0x13, 0x00, 0x83, 0x65, 0x73,
+ 0x73, 0x00, 0x16, 0x00, 0x82, 0x63, 0x65, 0x73, 0x73, 0x00, 0x4C, 0x3D,
+ 0x10, 0x16, 0x49, 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, 0x5C, 0x10, 0x18, 0x67, 0x10, 0x00,
+ 0x18, 0x16, 0x00, 0x85, 0x70, 0x70, 0x72, 0x65, 0x73, 0x73, 0x00, 0x16,
+ 0x00, 0x83, 0x70, 0x72, 0x65, 0x73, 0x73, 0x00, 0x46, 0x77, 0x10, 0x12,
+ 0x80, 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, 0xA2, 0x10, 0x16, 0xB0, 0x10, 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, 0xE4, 0x10, 0x08, 0xF1, 0x10, 0x0A, 0x0E, 0x11,
+ 0x0B, 0x18, 0x11, 0x0C, 0x3C, 0x11, 0x0F, 0x47, 0x11, 0x10, 0x52, 0x11,
+ 0x11, 0x5E, 0x11, 0x12, 0xAC, 0x12, 0x13, 0xE6, 0x12, 0x16, 0x02, 0x13,
+ 0x18, 0xA2, 0x13, 0x00, 0x1A, 0x0B, 0x08, 0x10, 0x12, 0x16, 0x00, 0x83,
+ 0x77, 0x68, 0x61, 0x74, 0x00, 0x44, 0xF8, 0x10, 0x11, 0x01, 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, 0x22, 0x11, 0x0A,
+ 0x29, 0x11, 0x0C, 0x31, 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, 0x6B, 0x11, 0x08, 0xA3, 0x11,
+ 0x15, 0x99, 0x12, 0x16, 0xA4, 0x12, 0x00, 0x4C, 0x78, 0x11, 0x11, 0x83,
+ 0x11, 0x15, 0x8E, 0x11, 0x17, 0x98, 0x11, 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, 0xB0, 0x11, 0x10, 0xD1, 0x11, 0x15, 0x35, 0x12,
+ 0x19, 0x8F, 0x12, 0x00, 0x46, 0xB7, 0x11, 0x13, 0xC4, 0x11, 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, 0xDE, 0x11, 0x11, 0xEA, 0x11, 0x15, 0x0B, 0x12, 0x17, 0x2A,
+ 0x12, 0x00, 0x19, 0x12, 0x0A, 0x00, 0x83, 0x72, 0x6E, 0x6D, 0x65, 0x6E,
+ 0x74, 0x00, 0x48, 0xF1, 0x11, 0x15, 0xFD, 0x11, 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,
+ 0x12, 0x12, 0x12, 0x1D, 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, 0x42, 0x12, 0x08, 0x4D, 0x12, 0x09,
+ 0x59, 0x12, 0x15, 0x64, 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, 0x6B, 0x12, 0x08, 0x83, 0x12, 0x00, 0x13,
+ 0x00, 0x44, 0x74, 0x12, 0x13, 0x7C, 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, 0xBC, 0x12, 0x10, 0xC3, 0x12, 0x11, 0xCA,
+ 0x12, 0x15, 0xD4, 0x12, 0x16, 0xDD, 0x12, 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, 0xED, 0x12, 0x1C, 0xF8, 0x12, 0x00, 0x0C, 0x06, 0x08,
+ 0x15, 0x00, 0x83, 0x65, 0x69, 0x70, 0x74, 0x00, 0x06, 0x11, 0x08, 0x00,
+ 0x82, 0x72, 0x79, 0x70, 0x74, 0x00, 0x48, 0x18, 0x13, 0x0A, 0x41, 0x13,
+ 0x0C, 0x4A, 0x13, 0x10, 0x67, 0x13, 0x11, 0x71, 0x13, 0x12, 0x8C, 0x13,
+ 0x18, 0x97, 0x13, 0x00, 0x4A, 0x1F, 0x13, 0x15, 0x36, 0x13, 0x00, 0x4C,
+ 0x26, 0x13, 0x18, 0x2E, 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, 0x51, 0x13, 0x11, 0x5D, 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, 0x78, 0x13,
+ 0x11, 0x83, 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, 0xAC,
+ 0x13, 0x13, 0xC5, 0x13, 0x17, 0xDC, 0x13, 0x00, 0x48, 0xB3, 0x13, 0x15,
+ 0xBE, 0x13, 0x00, 0x06, 0x1B, 0x08, 0x00, 0x84, 0x65, 0x63, 0x75, 0x74,
+ 0x65, 0x00, 0x0C, 0x06, 0x00, 0x80, 0x69, 0x74, 0x00, 0x57, 0xCC, 0x13,
+ 0x18, 0xD4, 0x13, 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, 0xED, 0x13, 0x0C, 0x11, 0x14,
+ 0x00, 0x44, 0xF4, 0x13, 0x0C, 0xFB, 0x13, 0x00, 0x0B, 0x2C, 0x00, 0x81,
+ 0x76, 0x65, 0x00, 0x46, 0x02, 0x14, 0x08, 0x0A, 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, 0x27, 0x14, 0x11, 0x31, 0x14, 0x12, 0x3A, 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, 0x5F, 0x14, 0x06, 0x6A, 0x14, 0x08, 0xA5, 0x14,
+ 0x0B, 0xAF, 0x14, 0x0F, 0xC1, 0x14, 0x11, 0x86, 0x15, 0x15, 0x90, 0x15,
+ 0x16, 0x06, 0x16, 0x17, 0x21, 0x16, 0x00, 0x11, 0x13, 0x10, 0x12, 0x06,
+ 0x00, 0x82, 0x61, 0x6E, 0x79, 0x00, 0x44, 0x77, 0x14, 0x08, 0x83, 0x14,
+ 0x0C, 0x8E, 0x14, 0x13, 0x99, 0x14, 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, 0xD4, 0x14,
+ 0x0B, 0x17, 0x15, 0x0E, 0x21, 0x15, 0x0F, 0x29, 0x15, 0x12, 0x71, 0x15,
+ 0x15, 0x7B, 0x15, 0x00, 0x45, 0xE7, 0x14, 0x08, 0xF0, 0x14, 0x0F, 0xF6,
+ 0x14, 0x11, 0xFF, 0x14, 0x15, 0x06, 0x15, 0x18, 0x0F, 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, 0x33, 0x15, 0x05, 0x5E, 0x15, 0x08,
+ 0x67, 0x15, 0x00, 0x56, 0x3A, 0x15, 0x17, 0x52, 0x15, 0x00, 0x18, 0x00,
+ 0x6C, 0x43, 0x15, 0x16, 0x4A, 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, 0xA0, 0x15, 0x08, 0xD9, 0x15, 0x12, 0xE2, 0x15, 0x17, 0xEF, 0x15,
+ 0x19, 0xFE, 0x15, 0x00, 0x45, 0xAA, 0x15, 0x10, 0xB3, 0x15, 0x16, 0xBC,
+ 0x15, 0x00, 0x0C, 0x0F, 0x00, 0x82, 0x72, 0x61, 0x72, 0x79, 0x00, 0x18,
+ 0x16, 0x00, 0x82, 0x6D, 0x61, 0x72, 0x79, 0x00, 0x08, 0x06, 0x00, 0x46,
+ 0xC6, 0x15, 0x08, 0xD1, 0x15, 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, 0x0F, 0x16, 0x1A, 0x1A, 0x16, 0x00, 0x06, 0x12, 0x13, 0x1C, 0x0B,
+ 0x00, 0x82, 0x69, 0x73, 0x79, 0x00, 0x0F, 0x04, 0x00, 0x81, 0x79, 0x73,
+ 0x00, 0x49, 0x2B, 0x16, 0x0F, 0x33, 0x16, 0x15, 0x3C, 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/jack/autocorrect_dict.txt b/jack/autocorrect_dict.txt
index 135bb64..547ad56 100644
--- a/jack/autocorrect_dict.txt
+++ b/jack/autocorrect_dict.txt
@@ -1,4 +1,4 @@
-# Copyright 2024 [email protected]
+# Copyright 2025 [email protected]
# SPDX-License-Identifier: GPL-2.0-or-later
:theri -> their
@@ -120,9 +120,6 @@ aparrent -> apparent
apparant -> apparent
apparrent -> apparent
asthetic -> aesthetic
-auxilary -> auxiliary
-auxillary -> auxiliary
-auxilliary -> auxiliary
bankrupcy -> bankruptcy
busness -> business
bussiness -> business
@@ -177,8 +174,6 @@ relevent -> relevant
repitition -> repetition
safty -> safety
saftey -> safety
-seperat -> separat
-spectogram -> spectrogram
symetric -> symmetric
tolerence -> tolerance
cacheing -> caching
@@ -197,7 +192,6 @@ interator -> iterator
looup -> lookup
namesapce -> namespace
namespcae -> namespace
-nulltpr -> nullptr
operaotr -> operator
overide -> override
ovveride -> override
@@ -237,7 +231,6 @@ fromthe -> from the
:aslo: -> also
:casue -> cause
:choses -> chooses
-:gaurd -> guard
:haev -> have
:hapen -> happen
:idaes -> ideas
@@ -299,7 +292,6 @@ cheif -> chief
cieling -> ceiling
circut -> circuit
clasic -> classic
-cmoputer -> computer
coform -> conform
comming: -> coming
considerd -> considered
@@ -330,7 +322,6 @@ greatful -> grateful
heigher -> higher
higest -> highest
howver -> however
-hydogen -> hydrogen
importamt -> important
inclued -> include
insted -> instead
@@ -388,7 +379,6 @@ supress -> suppress
surpress -> suppress
thresold -> threshold
tongiht -> tonight
-tranpose -> transpose
typcial -> typical
udpate -> update
ususally -> usually
diff --git a/jack/color.c b/jack/color.c
deleted file mode 100644
index 4d833f3..0000000
--- a/jack/color.c
+++ /dev/null
@@ -1,132 +0,0 @@
-// Copyright 2024 [email protected]
-// SPDX-License-Identifier: GPL-2.0-or-later
-#include "color.h"
-#include <lib/lib8tion/lib8tion.h>
-#define FORCE_REFERENCE(var) __asm__ volatile("" : : "r"(var))
-#define FASTLED_SCALE8_FIXED 1
-
-RGB rgb_matrix_hsv_to_rgb(const HSV hsv) {
- const uint8_t Y1 = 1, Y2 = 0, G_2 = 1, Gscale = 0, hue = hsv.h, sat = hsv.s;
- uint8_t val = hsv.v, offset = hue & 0x1F, offset8 = offset;
- {
-#ifdef __AVR__
- offset8 <<= 1;
- __asm__ volatile("");
- offset8 <<= 1;
- __asm__ volatile("");
- offset8 <<= 1;
-#else
- offset8 <<= 3;
-#endif
- }
- uint8_t third = scale8(offset8, (256 / 3)), r, g, b;
- if (!(hue & 0x80)) {
- if (!(hue & 0x40)) {
- if (!(hue & 0x20)) {
- r = 255 - third;
- g = third;
- b = 0;
- FORCE_REFERENCE(b);
- } else {
- if (Y1) {
- r = 171;
- g = 85 + third;
- b = 0;
- FORCE_REFERENCE(b);
- }
- if (Y2) {
- r = 170 + third;
- uint8_t twothirds = scale8(offset8, ((256 * 2) / 3));
- g = 85 + twothirds;
- b = 0;
- FORCE_REFERENCE(b);
- }
- }
- } else {
- if (!(hue & 0x20)) {
- if (Y1) {
- uint8_t twothirds = scale8(offset8, ((256 * 2) / 3));
- r = 171 - twothirds;
- g = 170 + third;
- b = 0;
- FORCE_REFERENCE(b);
- }
- if (Y2) {
- r = 255 - offset8;
- g = 255;
- b = 0;
- FORCE_REFERENCE(b);
- }
- } else {
- r = 0;
- FORCE_REFERENCE(r);
- g = 255 - third;
- b = third;
- }
- }
- } else {
- if (!(hue & 0x40)) {
- if (!(hue & 0x20)) {
- r = 0;
- FORCE_REFERENCE(r);
- uint8_t twothirds = scale8(offset8, ((256 * 2) / 3));
- g = 171 - twothirds;
- b = 85 + twothirds;
- } else {
- r = third;
- g = 0;
- FORCE_REFERENCE(g);
- b = 255 - third;
- }
- } else {
- if (!(hue & 0x20)) {
- r = 85 + third;
- g = 0;
- FORCE_REFERENCE(g);
- b = 171 - third;
- } else {
- r = 170 + third;
- g = 0;
- FORCE_REFERENCE(g);
- b = 85 - third;
- }
- }
- }
- if (G_2)
- g = g >> 1;
- if (Gscale)
- g = scale8_video_LEAVING_R1_DIRTY(g, Gscale);
- if (sat != 255) {
- if (sat == 0) {
- r = 255;
- b = 255;
- g = 255;
- } else {
- uint8_t desat = 255 - sat;
- desat = scale8_video(desat, desat);
- uint8_t satscale = 255 - desat;
- r = scale8_LEAVING_R1_DIRTY(r, satscale);
- g = scale8_LEAVING_R1_DIRTY(g, satscale);
- b = scale8_LEAVING_R1_DIRTY(b, satscale);
- cleanup_R1();
- uint8_t brightness_floor = desat;
- r += brightness_floor;
- g += brightness_floor;
- b += brightness_floor;
- }
- }
- if (val != 255) {
- val = scale8_video_LEAVING_R1_DIRTY(val, val);
- if (val == 0) {
- r = 0;
- g = 0;
- b = 0;
- } else {
- r = scale8_LEAVING_R1_DIRTY(r, val);
- g = scale8_LEAVING_R1_DIRTY(g, val);
- b = scale8_LEAVING_R1_DIRTY(b, val);
- cleanup_R1();
- }
- }
- return (RGB){.r = r, .g = g, .b = b};
-}
diff --git a/jack/combos.def b/jack/combos.def
index 53934f1..e3a44f4 100644
--- a/jack/combos.def
+++ b/jack/combos.def
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
// name output keys
diff --git a/jack/combos.h b/jack/combos.h
deleted file mode 100644
index 27e7a7c..0000000
--- a/jack/combos.h
+++ /dev/null
@@ -1,20 +0,0 @@
-// Copyright 2024 [email protected]
-// SPDX-License-Identifier: GPL-2.0-or-later
-#pragma once
-
-#define CMB(name, action, ...) name,
-enum combos {
-#include "combos.def"
-};
-#undef CMB
-
-#define CMB(name, action, ...) \
- uint16_t const name##_combo[] PROGMEM = {__VA_ARGS__, COMBO_END};
-#include "combos.def"
-#undef CMB
-
-#define CMB(name, action, ...) [name] = COMBO(name##_combo, action),
-combo_t key_combos[] = {
-#include "combos.def"
-};
-#undef CMB
diff --git a/jack/config.h b/jack/config.h
index 2b47028..0c34ee0 100644
--- a/jack/config.h
+++ b/jack/config.h
@@ -1,15 +1,17 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#define TAPPING_TERM_PER_KEY
#define TAPPING_TERM 140
-#define FORCE_NKRO
#define BOTH_SHIFTS_TURNS_ON_CAPS_WORD
#define COMBO_TERM 40
#define NO_ACTION_ONESHOT
#define UNICODE_SELECTED_MODES UNICODE_MODE_LINUX
#define ENABLE_COMPILE_KEYCODE
+#define LAYER_STATE_8BIT
+#undef LOCKING_SUPPORT_ENABLE
+#undef LOCKING_RESYNC_ENABLE
#undef MANUFACTURER
#define MANUFACTURER "jacks"
diff --git a/jack/dict.h b/jack/dict.h
deleted file mode 100644
index c7a27f4..0000000
--- a/jack/dict.h
+++ /dev/null
@@ -1,207 +0,0 @@
-// Copyright 2024 [email protected]
-// SPDX-License-Identifier: GPL-2.0-or-later
-#pragma once
-
-#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"};
diff --git a/jack/jack.c b/jack/jack.c
index b876fb1..f41f50a 100644
--- a/jack/jack.c
+++ b/jack/jack.c
@@ -1,7 +1,6 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include "jack.h"
-#include "combos.h"
tap_dance_action_t tap_dance_actions[] = {
[EM_DASH_MINS] = ACTION_TAP_DANCE_FN(em_dash_mins),
@@ -11,6 +10,23 @@ tap_dance_action_t tap_dance_actions[] = {
[SBRACKET] = ACTION_TAP_DANCE_DOUBLE(KC_LBRC, KC_RBRC),
};
+#define CMB(name, action, ...) name,
+enum combos {
+#include "combos.def"
+};
+#undef CMB
+
+#define CMB(name, action, ...) \
+ uint16_t const name##_combo[] PROGMEM = {__VA_ARGS__, COMBO_END};
+#include "combos.def"
+#undef CMB
+
+#define CMB(name, action, ...) [name] = COMBO(name##_combo, action),
+combo_t key_combos[] = {
+#include "combos.def"
+};
+#undef CMB
+
#if defined(SPLIT_KEYBOARD) && defined(OLED_ENABLE)
#include "transactions.h"
extern char keylog_str[KEYLOG_LEN + 1];
@@ -33,10 +49,9 @@ void housekeeping_task_user(void) {
}
if (timer_elapsed32(last_sync) > 250)
needs_sync = true;
- if (needs_sync) {
+ if (needs_sync)
if (transaction_rpc_send(RPC_ID_USER_KEYLOG_STR, 5, &keylog_str))
last_sync = timer_read32();
- }
}
}
#endif
@@ -45,6 +60,9 @@ void keyboard_post_init_user(void) {
#if defined(SPLIT_KEYBOARD) && defined(OLED_ENABLE)
transaction_register_rpc(RPC_ID_USER_KEYLOG_STR, keylogger_sync);
#endif
+#ifdef CUSTOM_TAP_CODE_ENABLE
+ tap_code_buffer_init();
+#endif
#ifdef RGBLIGHT_ENABLE
rgblight_enable_noeeprom();
rgblight_sethsv_noeeprom(HSV_CYAN);
@@ -54,23 +72,16 @@ void keyboard_post_init_user(void) {
rgb_matrix_sethsv_noeeprom(HSV_CYAN);
rgb_matrix_mode_noeeprom(RGB_MATRIX_SOLID_COLOR);
#endif
-#ifdef CONSOLE_ENABLE
- debug_keyboard = true;
- debug_enable = true;
- debug_matrix = true;
- debug_mouse = true;
-#endif
#ifdef AUTOCORRECT_ENABLE
if (!autocorrect_is_enabled())
autocorrect_enable();
#endif
}
-bool shutdown_user(bool jump_to_bootloader) {
-#ifdef OLED_ENABLE
- oled_render_boot(jump_to_bootloader);
+void matrix_scan_user(void) {
+#ifdef CUSTOM_TAP_CODE_ENABLE
+ process_tap_code_buffer();
#endif
- return true;
}
#ifdef ENCODER_MAP_ENABLE
@@ -80,38 +91,10 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
[_RAISE] = {{C(KC_LEFT), C(KC_RGHT)}, {C(S(KC_TAB)), C(KC_TAB)}}};
#endif
-#ifdef POINTING_DEVICE_ENABLE
-static bool scrolling = false;
-layer_state_t layer_state_set_user(layer_state_t state) {
- switch (get_highest_layer(state)) {
- case _LOWER:
- scrolling = true;
-#ifdef POINTING_DEVICE_DRIVER_pimoroni_trackball
- pimoroni_trackball_set_cpi(0.1);
-#else
- pointing_device_set_cpi(64);
-#endif
- break;
- default:
- if (scrolling) {
- scrolling = false;
-#ifdef POINTING_DEVICE_DRIVER_pimoroni_trackball
- pimoroni_trackball_set_cpi(1);
-#else
- pointing_device_set_cpi(1024);
+#ifndef MAGIC_ENABLE
+uint16_t keycode_config(uint16_t keycode) { return keycode; }
#endif
- }
- }
- return state;
-}
-report_mouse_t pointing_device_task_user(report_mouse_t mouse_report) {
- if (scrolling) {
- mouse_report.h = mouse_report.x;
- mouse_report.v = -mouse_report.y;
- mouse_report.x = 0;
- mouse_report.y = 0;
- }
- return mouse_report;
-}
+#ifndef MAGIC_ENABLE
+uint8_t mod_config(uint8_t mod) { return mod; }
#endif
diff --git a/jack/jack.h b/jack/jack.h
index 742b6d1..6e32849 100644
--- a/jack/jack.h
+++ b/jack/jack.h
@@ -1,54 +1,50 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include QMK_KEYBOARD_H
-#ifdef OLED_ENABLE
-#include "oled.h"
-#endif
enum layers { _BASE, _LOWER, _RAISE };
enum tapdances { EM_DASH_MINS, PLY_NXT_PRV, PASTE_RAISE, CBRACKET, SBRACKET };
-enum sw_state { NONE, SELECTED, WORD, FIRST_LINE, LINE };
-
enum custom_keycodes {
UPDIR = QK_USER,
- NUKE,
- SELWORD,
+ REMOVE,
M_JIGGLE,
- TABLE1,
- TABLE2,
- KC_NOMODE,
- KC_WIDE,
- KC_SCRIPT,
- KC_BLOCKS,
- KC_REGIONAL,
- KC_AUSSIE,
- KC_ZALGO,
- KC_SUPER,
- RWORD
+ UC_NOMODE,
+ UC_WIDE,
+ UC_SCRIPT,
+ UC_BLOCKS,
+ UC_REGIONAL,
+ UC_AUSSIE,
+ UC_ZALGO,
+ UC_SUPER
};
-#ifdef UNICODE_COMMON_ENABLE
bool process_record_unicode(uint16_t keycode, keyrecord_t *record);
-
-enum unicode_mode {
- NOMODE,
- WIDE,
- SCRIPT,
- BLOCKS,
- REGIONAL,
- AUSSIE,
- ZALGO,
- SUPER
-};
-#endif
-
+bool process_record_taps(uint16_t keycode, keyrecord_t *record);
+extern uint8_t extract_mod_bits(uint16_t code);
+void tap_code_buffer_init(void);
+void tap_code_register(uint8_t code, uint8_t mods, uint16_t delay,
+ bool register_tap);
+void process_tap_code_buffer(void);
+void tap_string(const char *str);
void td_reset(tap_dance_state_t *state, void *user_data);
void em_dash_mins(tap_dance_state_t *state, void *user_data);
void ply_nxt_prv(tap_dance_state_t *state, void *user_data);
void raise_paste(tap_dance_state_t *state, void *user_data);
+void oled_timer_reset(void);
+bool oled_task_keymap(void);
+void anim_frame(uint16_t size, char const action[][size]);
+void wpm_graph(void);
+void felix_dog(void);
+void layer_anim(void);
+void layer_status(void);
+void render_mod_status(void);
+void add_keylog(uint16_t keycode, keyrecord_t *record);
+void render_keylog(void);
+void render_wpm(void);
+void render_scan_rate(void);
#define PNP TD(PLY_NXT_PRV)
#define PSTRSE TD(PASTE_RAISE)
@@ -98,13 +94,13 @@ void raise_paste(tap_dance_state_t *state, void *user_data);
#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, SELWORD, KC_GRV, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_VOLU
-#define ___LOWER4___ _______, _______, _______, _______, NUKE, _______
+#define ___LOWER3___ KC_VOLD, KC_TAB, KC_CAPS, REMOVE, KC_GRV, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_VOLU
+#define ___LOWER4___ _______, _______, _______, _______, _______, _______
-#define ___RAISE1___ XRGB_TOG, XRGB_NXT, XRGB_HUI, XRGB_SAI, XRGB_VAI, KC_NOMODE, KC_SCRIPT, KC_BLOCKS, KC_REGIONAL, QK_MAKE
-#define ___RAISE2___ M_JIGGLE, XRGB_PRV, XRGB_HUD, XRGB_SAD, XRGB_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___ _______, RWORD, _______, _______, _______, _______
+#define ___RAISE1___ XRGB_TOG, XRGB_NXT, XRGB_HUI, XRGB_SAI, XRGB_VAI, UC_NOMODE, UC_SCRIPT, UC_BLOCKS, UC_REGIONAL, QK_MAKE
+#define ___RAISE2___ M_JIGGLE, XRGB_PRV, XRGB_HUD, XRGB_SAD, XRGB_VAD, UC_WIDE, UC_AUSSIE, UC_ZALGO, UC_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___ _______, _______, _______, _______, _______, _______
// clang-format on
#define LAYOUT_jack_60_ts(...) LAYOUT_60_ansi_tsangan(__VA_ARGS__)
diff --git a/jack/oled.c b/jack/oled.c
index 7b975e0..adaad3d 100644
--- a/jack/oled.c
+++ b/jack/oled.c
@@ -1,10 +1,12 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
-#include "oled.h"
#include "jack.h"
+#include "oled.h"
uint32_t oled_timer = 0;
char keylog_str[KEYLOG_LEN + 1] = {0};
+extern uint8_t oled_buffer[OLED_MATRIX_SIZE];
+extern OLED_BLOCK_TYPE oled_dirty;
void oled_timer_reset(void) { oled_timer = timer_read32(); }
@@ -220,18 +222,3 @@ void render_scan_rate(void) {
oled_write_ln(get_u16_str(get_matrix_scan_rate(), ' '), false);
}
#endif
-
-void oled_render_boot(bool jump_to_bootloader) {
- oled_clear();
- static const char PROGMEM qmk_logo[16] = {0x80, 0x81, 0x82, 0x83, 0x84,
- 0xA0, 0xA1, 0xA2, 0xA3, 0xA4,
- 0xC0, 0xC1, 0xC2, 0xC3, 0xC4};
- oled_write(qmk_logo, false);
- oled_set_cursor(0, 4);
- oled_write(qmk_logo, false);
- oled_set_cursor(0, 8);
- oled_write(qmk_logo, false);
- oled_set_cursor(0, 12);
- oled_write(qmk_logo, false);
- oled_render_dirty(true);
-}
diff --git a/jack/oled.h b/jack/oled.h
index 6e33143..05a062f 100644
--- a/jack/oled.h
+++ b/jack/oled.h
@@ -1,25 +1,8 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
-#include "quantum.h"
#define KEYLOG_LEN 5
-extern uint8_t oled_buffer[OLED_MATRIX_SIZE];
-extern OLED_BLOCK_TYPE oled_dirty;
-
-void oled_timer_reset(void);
-bool oled_task_keymap(void);
-void anim_frame(uint16_t size, char const action[][size]);
-void wpm_graph(void);
-void felix_dog(void);
-void layer_anim(void);
-void layer_status(void);
-void render_mod_status(void);
-void add_keylog(uint16_t keycode, keyrecord_t *record);
-void render_keylog(void);
-void render_wpm(void);
-void render_scan_rate(void);
-void oled_render_boot(bool jump_to_bootloader);
static const char PROGMEM code_to_name[256] = {
' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h',
@@ -43,7 +26,8 @@ static const char PROGMEM code_to_name[256] = {
0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 'C', 'S', 'A', 'G',
'C', 'S', 'A', 'G', ' ', ' ', ' ', ' ', ' ', 24, 26, 24,
25, ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', 24, 25, 27,
- 26, ' ', ' ', ' '};
+ 26, ' ', ' ', ' ',
+};
static const char PROGMEM felix_sit[][96] = {
{
@@ -155,442 +139,479 @@ static const char PROGMEM felix_sneak[][96] = {
0x3f, 0x3f, 0x37, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
}};
-static const char PROGMEM tap_num[][520] = {
+static const char PROGMEM tap_sym[][650] = {
{
- 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,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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,
+ 0x00, 0x00, 0x00, 0x00, 0x1c, 0x22, 0x21, 0x21, 0x22, 0x2c, 0x30, 0xd0,
+ 0x10, 0x11, 0x21, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x20, 0x20, 0x21, 0x12, 0x1c, 0xf0, 0x10, 0x18, 0x08, 0x08, 0x00, 0x00,
+ 0x01, 0x01, 0x02, 0x04, 0x08, 0x30, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x10,
+ 0x08, 0x04, 0x02, 0x81, 0x01, 0x00, 0x00, 0x40, 0x80, 0x00, 0x80, 0x00,
+ 0x00, 0x00, 0x00, 0x18, 0x24, 0x24, 0x24, 0x18, 0x00, 0xc0, 0x30, 0x0e,
+ 0x80, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x20, 0x20,
+ 0x40, 0x40, 0x40, 0x20, 0x18, 0x00, 0x00, 0x00, 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, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xfe, 0x01, 0x00, 0x00, 0x00, 0x08, 0x88, 0x85,
+ 0x4e, 0x74, 0xe2, 0x21, 0x21, 0x17, 0x18, 0x68, 0xc4, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x18, 0x07, 0x00, 0x00, 0x00, 0x03, 0x04, 0x04, 0x04,
+ 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0,
+ 0x20, 0x10, 0x0c, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x60, 0x30, 0x10, 0x08,
+ 0x08, 0x08, 0x08, 0x08, 0x10, 0x30, 0x40, 0x80, 0x00, 0x0e, 0x03, 0x01,
+ 0x01, 0x00, 0xe0, 0x30, 0x19, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x3f,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x03, 0x04, 0x08, 0x10, 0x20, 0x20, 0xc0, 0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x3e, 0x63, 0xc1, 0xc1, 0xbe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x80, 0x00, 0x00, 0x1f, 0x20, 0x40, 0xc0, 0x8e, 0x11, 0x19, 0x0e, 0x03,
+ 0x86, 0x84, 0xc6, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06,
+ 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xc0, 0x20, 0x18, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x03, 0x00, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
+ 0x00, 0x00, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00,
},
{
- 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,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00,
+ 0x00, 0x1c, 0x22, 0x21, 0x21, 0x22, 0x2c, 0x30, 0x50, 0x90, 0x11, 0x11,
+ 0x20, 0x20, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10,
+ 0x09, 0x0e, 0x78, 0x88, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x02, 0x0c, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x10,
+ 0x08, 0x08, 0x04, 0x82, 0x01, 0x01, 0x00, 0x40, 0x80, 0x00, 0x80, 0x80,
+ 0x00, 0x00, 0x00, 0x30, 0x48, 0x48, 0x48, 0x30, 0x00, 0x80, 0x60, 0x18,
+ 0x04, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80,
+ 0x80, 0x00, 0x00, 0x80, 0xe0, 0x01, 0x01, 0x02, 0x06, 0x08, 0x10, 0xe0,
+ 0x10, 0x20, 0x20, 0x20, 0x20, 0x21, 0x16, 0x18, 0x30, 0x50, 0x08, 0x08,
+ 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x30, 0x0c, 0x02, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x08, 0x8c, 0xc5,
+ 0x4e, 0x74, 0xe2, 0x21, 0x21, 0x17, 0x18, 0x68, 0x84, 0x04, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x30, 0x0e, 0x01, 0x00, 0x00, 0x07, 0x09, 0x08, 0x09,
+ 0x06, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x70, 0x0f, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x04, 0x02,
+ 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x03, 0x04, 0x08, 0x10, 0x20, 0xe0, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00,
+ 0x00, 0x00, 0x80, 0x78, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x03, 0x00, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x03, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00,
},
{
- 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,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x20, 0x10,
+ 0x10, 0x08, 0x04, 0x00, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x80, 0x80, 0xe0, 0x80, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x3c, 0x22, 0x21, 0x21, 0x23, 0x2c, 0x30, 0x70, 0x51, 0x91, 0x10, 0x10,
+ 0x10, 0x20, 0x60, 0x80, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x04,
+ 0x07, 0x3c, 0xc4, 0x04, 0x04, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x07, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0xf0, 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x06, 0x18, 0x20, 0xc0, 0x00, 0x00, 0x00, 0x05, 0x06, 0x03,
+ 0x01, 0x07, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x30, 0x20, 0x20, 0x20, 0x20, 0x21, 0x16, 0x1c, 0x38, 0x68, 0x04, 0x07,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x20, 0x30, 0x0c, 0x07, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x30, 0x40,
+ 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x7e, 0x02, 0x01,
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 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, 0x00, 0x00, 0x00, 0x01, 0x03, 0x04, 0x18, 0x30, 0x40, 0x80,
+ 0x00, 0x00, 0x00, 0xc0, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x00, 0x02, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00,
}};
static const char PROGMEM tap_sym[][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,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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,
+ 0x00, 0x00, 0x00, 0x00, 0x1c, 0x22, 0x21, 0x21, 0x22, 0x2c, 0x30, 0xd0,
+ 0x10, 0x11, 0x21, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x20, 0x20, 0x21, 0x12, 0x1c, 0xf0, 0x10, 0x18, 0x08, 0x08, 0x00, 0x00,
+ 0x01, 0x01, 0x02, 0x04, 0x08, 0x30, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x10,
+ 0x08, 0x04, 0x02, 0x81, 0x01, 0x00, 0x00, 0x40, 0x80, 0x00, 0x80, 0x00,
+ 0x00, 0x00, 0x00, 0x18, 0x24, 0x24, 0x24, 0x18, 0x00, 0xc0, 0x30, 0x0e,
+ 0x80, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x20, 0x20,
+ 0x40, 0x40, 0x40, 0x20, 0x18, 0x00, 0x00, 0x00, 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, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xfe, 0x01, 0x00, 0x00, 0x00, 0x08, 0x88, 0x85,
+ 0x4e, 0x74, 0xe2, 0x21, 0x21, 0x17, 0x18, 0x68, 0xc4, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x18, 0x07, 0x00, 0x00, 0x00, 0x03, 0x04, 0x04, 0x04,
+ 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0,
+ 0x20, 0x10, 0x0c, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x60, 0x30, 0x10, 0x08,
+ 0x08, 0x08, 0x08, 0x08, 0x10, 0x30, 0x40, 0x80, 0x00, 0x0e, 0x03, 0x01,
+ 0x01, 0x00, 0xe0, 0x30, 0x19, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x3f,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x03, 0x04, 0x08, 0x10, 0x20, 0x20, 0xc0, 0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x3e, 0x63, 0xc1, 0xc1, 0xbe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x80, 0x00, 0x00, 0x1f, 0x20, 0x40, 0xc0, 0x8e, 0x11, 0x19, 0x0e, 0x03,
+ 0x86, 0x84, 0xc6, 0x63, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06,
+ 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0xc0, 0x20, 0x18, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x03, 0x00, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
+ 0x00, 0x00, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00,
+ },
+ {
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x40, 0x60, 0x80, 0x80, 0x80, 0x00, 0x00,
+ 0x00, 0x1c, 0x22, 0x21, 0x21, 0x22, 0x2c, 0x30, 0x50, 0x90, 0x11, 0x11,
+ 0x20, 0x20, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10,
+ 0x09, 0x0e, 0x78, 0x88, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x02, 0x0c, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x10,
+ 0x08, 0x08, 0x04, 0x82, 0x01, 0x01, 0x00, 0x40, 0x80, 0x00, 0x80, 0x80,
+ 0x00, 0x00, 0x00, 0x30, 0x48, 0x48, 0x48, 0x30, 0x00, 0x80, 0x60, 0x18,
+ 0x04, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80,
+ 0x80, 0x00, 0x00, 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,
+ 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x30, 0x0c, 0x02, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x08, 0x8c, 0xc5,
+ 0x4e, 0x74, 0xe2, 0x21, 0x21, 0x17, 0x18, 0x68, 0x84, 0x04, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x30, 0x0e, 0x01, 0x00, 0x00, 0x07, 0x09, 0x08, 0x09,
+ 0x06, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x70, 0x0f, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x04, 0x02,
+ 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x03, 0x04, 0x08, 0x10, 0x20, 0xe0, 0x00, 0x00, 0x00, 0x00, 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,
+ 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x06, 0x18, 0x60, 0x80, 0x00, 0x00,
+ 0x00, 0x00, 0x80, 0x78, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x03, 0x00, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x03, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00,
},
{
- 0, 0, 0, 0, 0, 0, 0, 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,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x20, 0x10,
+ 0x10, 0x08, 0x04, 0x00, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x80, 0x80, 0xe0, 0x80, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
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,
+ 0x10, 0x20, 0x60, 0x80, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x04,
+ 0x07, 0x3c, 0xc4, 0x04, 0x04, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x01, 0x07, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0xf0, 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x06, 0x18, 0x20, 0xc0, 0x00, 0x00, 0x00, 0x05, 0x06, 0x03,
+ 0x01, 0x07, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
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,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x20, 0x30, 0x0c, 0x07, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x30, 0x40,
+ 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x01, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x7e, 0x02, 0x01,
+ 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 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,
+ 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x03, 0x04, 0x18, 0x30, 0x40, 0x80,
+ 0x00, 0x00, 0x00, 0xc0, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x00, 0x02, 0x01,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00,
}};
static const char PROGMEM tap_sys[][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},
+ {
+ 0x01, 0x80, 0x60, 0x10, 0x48, 0x08, 0x24, 0x04, 0x14, 0x84, 0x14, 0x04,
+ 0x28, 0x88, 0x10, 0x60, 0x80, 0x00, 0x00, 0x04, 0x00, 0x80, 0x60, 0x10,
+ 0x08, 0x08, 0x04, 0x44, 0x84, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x60,
+ 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00, 0x00,
+ 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x10, 0x10, 0x08,
+ 0x08, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x10, 0x10,
+ 0x20, 0x40, 0x84, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x1f, 0x60, 0x85,
+ 0x10, 0x40, 0x00, 0x80, 0x06, 0x07, 0x00, 0x00, 0x00, 0x00, 0x82, 0x60,
+ 0x1f, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x60, 0x80, 0x40, 0x20, 0x20, 0x10,
+ 0x93, 0x5c, 0x10, 0x20, 0x20, 0x40, 0x80, 0x60, 0x1f, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0xc1, 0x02, 0x0c, 0x70, 0x80, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xe0, 0x1c, 0x03, 0x00, 0xc0, 0x38, 0x06, 0x01, 0x80,
+ 0x70, 0x0c, 0x02, 0x03, 0x1c, 0xe0, 0x01, 0x06, 0x38, 0xc1, 0x02, 0x0c,
+ 0x70, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x1c, 0x03, 0x00, 0xc0,
+ 0x38, 0x06, 0x01, 0x80, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0,
+ 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0xc0, 0x30, 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
+ 0x0c, 0xf0, 0x04, 0x00, 0x80, 0x80, 0x88, 0x80, 0x81, 0x81, 0x02, 0x02,
+ 0x12, 0x02, 0x82, 0x82, 0x81, 0x81, 0x80, 0x80, 0x00, 0x08, 0x00, 0x00,
+ 0x80, 0x80, 0x90, 0x80, 0x81, 0x81, 0x02, 0x02, 0x02, 0x02, 0x82, 0x82,
+ 0x01, 0x01, 0x00, 0x00, 0x80, 0x80, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0xff, 0x41, 0x8e, 0xb0, 0xc0, 0x83, 0x9c, 0x60, 0xa0, 0x18, 0x07, 0x80,
+ 0x40, 0x30, 0x0e, 0x01, 0x80, 0x60, 0x1c, 0x03, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x07, 0x18, 0x20, 0x41, 0x8e, 0xb0, 0xc0, 0x83, 0x9c, 0x60,
+ 0xa0, 0x18, 0x07, 0x80, 0x40, 0x30, 0x0e, 0x01, 0x80, 0x60, 0x1c, 0x03,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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, 0x00, 0x00,
+ 0x1f, 0x12, 0x99, 0x14, 0x12, 0x1f, 0x00, 0x04, 0x00, 0x00, 0x1f, 0x10,
+ 0x10, 0x10, 0x10, 0x1f, 0x00, 0x00, 0x40, 0x00, 0x1f, 0x10, 0x10, 0x10,
+ 0x10, 0x1f, 0x00, 0x00, 0x00, 0x40, 0x0d, 0x0d, 0x00, 0x0c, 0x0c, 0x00,
+ 0x01, 0x01, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 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, 0x00, 0x00, 0x08,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x01, 0x02, 0x04, 0x04, 0x08,
+ 0x08, 0x11, 0x12, 0x12, 0x12, 0x12, 0x12, 0x11, 0x08, 0x08, 0x04, 0x44,
+ 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00,
+ },
{
0x04, 0x80, 0x60, 0x10, 0x48, 0x08, 0xa4, 0x04, 0x14, 0x04, 0x14, 0x04,
- 0x28, 0x88, 0x10, 0x60, 0x80, 0, 0x04, 0, 0, 0x80, 0x60, 0x10,
+ 0x28, 0x88, 0x10, 0x60, 0x80, 0x00, 0x04, 0x00, 0x00, 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,
+ 0x80, 0x02, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 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,
+ 0x01, 0x01, 0x81, 0x41, 0x21, 0x21, 0x21, 0xa2, 0xfc, 0x00, 0x00, 0x40,
+ 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 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,
+ 0x20, 0x42, 0x80, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x1f, 0x60, 0x85,
+ 0x10, 0x40, 0x00, 0x81, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x82, 0x60,
+ 0x1f, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x60, 0x80, 0x40, 0x20, 0x20, 0x10,
+ 0x50, 0x9e, 0x11, 0x20, 0x20, 0x40, 0x80, 0x60, 0x1f, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xe0, 0x1c, 0x03, 0x00, 0xc0, 0x38, 0x06, 0x01, 0x00,
+ 0x00, 0x00, 0x00, 0x03, 0x1c, 0xe0, 0x01, 0x06, 0x38, 0xc0, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x1c, 0x03, 0x00, 0xc0,
+ 0x38, 0x06, 0x01, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0,
+ 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1e,
+ 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
+ 0x0c, 0xf0, 0x00, 0x00, 0x80, 0x80, 0x90, 0x80, 0x81, 0x81, 0x02, 0x02,
+ 0x02, 0x02, 0x82, 0x82, 0x81, 0x81, 0x80, 0x88, 0x00, 0x00, 0x00, 0x00,
0x80, 0x80, 0x80, 0x88, 0x81, 0x81, 0x02, 0x02, 0x02, 0x02, 0x82, 0x82,
- 0x01, 0x81, 0x80, 0, 0, 0, 0, 0, 0, 0, 0x10, 0,
+ 0x01, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00,
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,
+ 0x40, 0x30, 0x0e, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x07, 0x18, 0x20, 0x41, 0x8e, 0xb0, 0xc0, 0x80, 0x80, 0x40,
+ 0x20, 0x18, 0x07, 0x80, 0x40, 0x30, 0x0e, 0x01, 0x00, 0x00, 0x00, 0x00,
+ 0xff, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 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,
+ 0x02, 0x04, 0x64, 0x04, 0x08, 0x08, 0x90, 0x70, 0x18, 0x07, 0x00, 0x00,
+ 0x1f, 0x10, 0x10, 0x10, 0x10, 0x1f, 0x00, 0x80, 0x00, 0x00, 0x1f, 0x10,
+ 0x10, 0x10, 0x10, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x1f,
+ 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x40, 0x01, 0x01, 0x80, 0x0d, 0x0d, 0x00,
+ 0x0c, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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,
+ 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x20, 0x1f, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 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,
+ 0x02, 0x01, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
},
{
- 0, 0x80, 0x60, 0x14, 0x48, 0x08, 0x24, 0x04, 0x14, 0x04, 0x14, 0x04,
- 0x28, 0x88, 0x10, 0x60, 0x80, 0, 0, 0x08, 0, 0x80, 0x60, 0x10,
+ 0x00, 0x80, 0x60, 0x14, 0x48, 0x08, 0x24, 0x04, 0x14, 0x04, 0x14, 0x04,
+ 0x28, 0x88, 0x10, 0x60, 0x80, 0x00, 0x00, 0x08, 0x00, 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,
+ 0x80, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 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,
+ 0x01, 0x01, 0x81, 0x41, 0x21, 0x21, 0x21, 0x22, 0xfc, 0x00, 0x00, 0x10,
+ 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 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,
+ 0x20, 0x40, 0x80, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x60, 0x85,
+ 0x10, 0x44, 0x04, 0x84, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x82, 0x60,
+ 0x1f, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x60, 0x80, 0x40, 0x20, 0x20, 0x10,
+ 0x10, 0x18, 0x14, 0x22, 0x21, 0x40, 0x80, 0x60, 0x1f, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0xe0, 0x1c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x03, 0x1c, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x1c, 0x03, 0x00, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0xf0,
+ 0x0c, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x08, 0x30, 0x40, 0x80,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03,
+ 0x0c, 0xf0, 0x00, 0x00, 0x80, 0x80, 0x80, 0x90, 0x81, 0x81, 0x02, 0x12,
+ 0x02, 0x02, 0x82, 0x82, 0x81, 0x81, 0x80, 0x80, 0x00, 0x00, 0x08, 0x00,
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,
+ 0x01, 0x81, 0x80, 0x00, 0x80, 0x80, 0x08, 0x00, 0x00, 0x00, 0x01, 0x00,
+ 0xff, 0x40, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0x20, 0x18, 0x07, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0x00, 0x00, 0x07, 0x18, 0x20, 0x40, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40,
+ 0x20, 0x18, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+ 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 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,
+ 0x02, 0x04, 0x64, 0x04, 0x08, 0x08, 0x90, 0x70, 0x18, 0x07, 0x00, 0x00,
+ 0x1f, 0x10, 0x10, 0x10, 0x10, 0x1f, 0x00, 0x00, 0x80, 0x00, 0x1f, 0x10,
+ 0x16, 0x16, 0x10, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x10, 0x10, 0x10,
+ 0x50, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x0c, 0x00, 0x01, 0x01, 0x00,
+ 0x0d, 0x0d, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 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,
+ 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x20, 0x1f, 0x00, 0x80, 0x00,
+ 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 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,
+ 0x02, 0x01, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
}};
diff --git a/jack/oledfont.h b/jack/oledfont.h
index 209f143..575829b 100644
--- a/jack/oledfont.h
+++ b/jack/oledfont.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include "progmem.h"
diff --git a/jack/rules.mk b/jack/rules.mk
index f75ba4d..0a15508 100644
--- a/jack/rules.mk
+++ b/jack/rules.mk
@@ -1,15 +1,18 @@
LTO_ENABLE = yes
TOP_SYMBOLS = yes
-NRKO_ENABLE = yes
-COMBO_ENABLE = yes
MAGIC_ENABLE = no
+COMBO_ENABLE = yes
+COMMAND_ENABLE = no
UNICODE_COMMON = yes
+GRAVE_ESC_ENABLE = no
EXTRAKEY_ENABLE = yes
BOOTMAGIC_ENABLE = yes
CAPS_WORD_ENABLE = yes
TAP_DANCE_ENABLE = yes
+SPACE_CADET_ENABLE = no
AUTOCORRECT_ENABLE = yes
MOUSE_JIGGLE_ENABLE = yes
+CUSTOM_TAP_CODE_ENABLE = no
DEBOUNCE_TYPE = asym_eager_defer_pk
AVR_CFLAGS += -mrelax
INTROSPECTION_KEYMAP_C = jack.c
@@ -21,17 +24,17 @@ ifeq ($(strip $(OLED_ENABLE)), yes)
WPM_ENABLE = yes
endif
-ifeq ($(strip $(RGB_MATRIX_ENABLE)), yes)
- SRC += color.c
-endif
-
ifeq ($(strip $(UNICODE_COMMON)), yes)
UNICODE_ENABLE = no
SRC += unicode.c
endif
+ifeq ($(strip $(CUSTOM_TAP_CODE_ENABLE)), yes)
+ OPT_DEFS += -DCUSTOM_TAP_CODE_ENABLE
+ SRC += tap_code.c
+endif
+
ifeq ($(PLATFORM), CHIBIOS)
- RANDWORD = yes
EXTRAFLAGS += -Os
endif
@@ -39,10 +42,6 @@ ifneq ($(findstring Gentoo, $(shell arm-none-eabi-gcc --version)),)
EXTRAFLAGS += -U_FORTIFY_SOURCE
endif
-ifeq ($(strip $(RANDWORD)), yes)
- OPT_DEFS += -DRANDWORD
-endif
-
ifeq ($(strip $(MOUSE_JIGGLE_ENABLE)), yes)
OPT_DEFS += -DMOUSE_JIGGLE_ENABLE
MOUSEKEY_ENABLE = yes
diff --git a/jack/tap_code.c b/jack/tap_code.c
new file mode 100644
index 0000000..a430200
--- /dev/null
+++ b/jack/tap_code.c
@@ -0,0 +1,159 @@
+// Copyright 2025 [email protected]
+// SPDX-License-Identifier: GPL-2.0-or-later
+#include "jack.h"
+
+#define TAP_CODE_BUFFER_SIZE 32
+#define NEXT_TAP_CODE_POS(p) p = ((p + 1) & (TAP_CODE_BUFFER_SIZE - 1))
+
+#define CHECK_REGISTERED_MT(keycode) \
+ (keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX && \
+ (get_mods() & ((keycode & 0x0F00) >> 8)))
+
+#define PGM_LOADBIT(mem, pos) \
+ ((pgm_read_byte(&((mem)[(pos) / 8])) >> ((pos) % 8)) & 1)
+
+typedef struct {
+ uint8_t code;
+ uint8_t mods;
+ uint16_t delay;
+ bool register_tap;
+} tap_code_buffer;
+
+tap_code_buffer tap_codes[TAP_CODE_BUFFER_SIZE] = {0};
+static uint16_t process_pos = 0, queue_pos = 0;
+static fast_timer_t process_timer = 0;
+
+void tap_code_buffer_init(void) { memset(&tap_codes, 0, sizeof(tap_codes)); }
+
+void tap_code_register(uint8_t code, uint8_t mods, uint16_t delay,
+ bool register_tap) {
+ if (code && !delay) {
+ if (mods)
+ register_mods(mods);
+ register_code(code);
+ unregister_code(code);
+ if (mods)
+ unregister_mods(mods);
+ return;
+ }
+ if (tap_codes[queue_pos].code) {
+ if (!process_timer)
+ process_tap_code_buffer();
+ while (timer_elapsed_fast(process_timer) < tap_codes[process_pos].delay)
+ wait_ms(1);
+ process_tap_code_buffer();
+ }
+ tap_codes[queue_pos].code = code;
+ tap_codes[queue_pos].mods = mods;
+ tap_codes[queue_pos].delay = delay;
+ tap_codes[queue_pos].register_tap = register_tap;
+ NEXT_TAP_CODE_POS(queue_pos);
+}
+
+void process_tap_code_buffer(void) {
+ if (tap_codes[process_pos].code) {
+ if (!process_timer) {
+ if (tap_codes[process_pos].register_tap) {
+ if (tap_codes[process_pos].mods) {
+ add_weak_mods(tap_codes[process_pos].mods);
+ }
+ register_code(tap_codes[process_pos].code);
+ }
+ process_timer = timer_read_fast();
+ } else if (timer_elapsed_fast(process_timer) >=
+ tap_codes[process_pos].delay) {
+ del_weak_mods(tap_codes[process_pos].mods);
+ unregister_code(tap_codes[process_pos].code);
+ tap_codes[process_pos].code = 0;
+ tap_codes[process_pos].mods = 0;
+ tap_codes[process_pos].delay = 0;
+ tap_codes[process_pos].register_tap = false;
+ process_timer = 0;
+ NEXT_TAP_CODE_POS(process_pos);
+ }
+ }
+}
+
+void tap_code(uint8_t code) {
+ tap_code_register(code, 0, TAP_CODE_DELAY, true);
+}
+
+void tap_code_chord(uint8_t code) {
+ register_code(code);
+ tap_code_register(code, 0, TAP_CODE_DELAY, false);
+}
+
+void tap_code_delay(uint8_t code, uint16_t delay) {
+ tap_code_register(code, 0, delay, true);
+}
+
+void tap_code16(uint16_t code) {
+ tap_code_register((uint8_t)code, extract_mod_bits(code), TAP_CODE_DELAY,
+ true);
+}
+
+bool process_record_taps(uint16_t keycode, keyrecord_t *record) {
+ static fast_timer_t prev_interrupt = 0, prev_key_down = 0;
+ switch (keycode) {
+ case QK_LAYER_TAP ... QK_LAYER_TAP_MAX:
+ case QK_MOD_TAP ... QK_MOD_TAP_MAX:
+ if (record->event.pressed &&
+ ((timer_elapsed_fast(prev_interrupt) < TAPPING_TERM) ||
+ (timer_elapsed_fast(prev_key_down) < 200) ||
+ CHECK_REGISTERED_MT(keycode))) {
+ tap_code_chord(keycode & 0xFF);
+ record->tap.count = 0xF;
+ prev_interrupt = timer_read_fast();
+ return false;
+ }
+ if (record->tap.count == 0xF)
+ return false;
+ if (record->tap.count > 1 && (keycode == ESCLWR || keycode == RSEBSP)) {
+ if (record->event.pressed) {
+ register_code(keycode & 0xFF);
+ return false;
+ } else {
+ unregister_code(keycode & 0xFF);
+ return false;
+ }
+ }
+ if (record->tap.count && record->event.pressed) {
+ if (keycode >= QK_MOD_TAP || keycode == ESCLWR || keycode == RSEBSP)
+ tap_code_chord(keycode & 0xFF);
+ else
+ tap_code(keycode & 0xFF);
+ return false;
+ } else if (record->tap.interrupted &&
+ (keycode >= QK_MOD_TAP || keycode == ESCLWR ||
+ keycode == RSEBSP)) {
+ tap_code_chord(keycode & 0xFF);
+ prev_interrupt = timer_read_fast();
+ return false;
+ }
+ default:
+ if (record->event.pressed)
+ prev_key_down = timer_read_fast();
+ break;
+ }
+ return true;
+}
+
+extern const uint8_t ascii_to_shift_lut[16];
+extern const uint8_t ascii_to_keycode_lut[128];
+
+void tap_char(char ascii_code) {
+ uint8_t keycode = pgm_read_byte(&ascii_to_keycode_lut[(uint8_t)ascii_code]);
+ bool shifted = PGM_LOADBIT(ascii_to_shift_lut, (uint8_t)ascii_code);
+ tap_code_register(keycode, shifted ? MOD_BIT(KC_LSFT) : 0, TAP_CODE_DELAY,
+ true);
+}
+
+void tap_string(const char *str) {
+ while (1) {
+ char ascii_code = pgm_read_byte(str);
+ if (!ascii_code)
+ break;
+ tap_char(ascii_code);
+ ++str;
+ }
+}
diff --git a/jack/tapping.c b/jack/tapping.c
index 91690d5..800d67d 100644
--- a/jack/tapping.c
+++ b/jack/tapping.c
@@ -1,9 +1,9 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include "jack.h"
-#ifdef RANDWORD
-#include "dict.h"
-uint16_t word = 0;
+
+#ifndef CUSTOM_TAP_CODE_ENABLE
+#define tap_string send_string_P
#endif
#define INTERCEPT_MOD_TAP(mod, keycode) \
@@ -14,64 +14,6 @@ uint16_t word = 0;
} \
break;
-static uint8_t select_word_state = NONE;
-
-bool process_select_word(uint16_t keycode, keyrecord_t *record) {
- if (keycode == KC_LSFT || keycode == KC_RSFT)
- return true;
- if (keycode == SELWORD && record->event.pressed) {
- const bool shifted = get_mods() & MOD_MASK_SHIFT;
- if (!shifted) {
- set_mods(MOD_BIT(KC_LCTL));
- if (select_word_state == NONE) {
- send_keyboard_report();
- tap_code(KC_RGHT);
- tap_code(KC_LEFT);
- }
- register_mods(MOD_BIT(KC_LSFT));
- register_code(KC_RGHT);
- select_word_state = WORD;
- } else {
- if (select_word_state == NONE) {
- clear_mods();
- send_keyboard_report();
- tap_code(KC_HOME);
- register_mods(MOD_BIT(KC_LSFT));
- tap_code(KC_END);
- set_mods(get_mods());
- select_word_state = FIRST_LINE;
- } else {
- register_code(KC_DOWN);
- select_word_state = LINE;
- }
- }
- return false;
- }
- switch (select_word_state) {
- case WORD:
- unregister_code(KC_RGHT);
- unregister_mods(MOD_BIT(KC_LSFT) | MOD_BIT(KC_LCTL));
- select_word_state = SELECTED;
- break;
- case FIRST_LINE:
- select_word_state = SELECTED;
- break;
- case LINE:
- unregister_code(KC_DOWN);
- select_word_state = SELECTED;
- break;
- case SELECTED:
- if (keycode == KC_ESC) {
- tap_code(KC_RGHT);
- select_word_state = NONE;
- return false;
- }
- default:
- select_word_state = NONE;
- }
- return true;
-}
-
uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case LWRSPC:
@@ -134,8 +76,10 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
if (!process_record_unicode(keycode, record))
return false;
#endif
- if (!process_select_word(keycode, record))
+#ifdef CUSTOM_TAP_CODE_ENABLE
+ if (!process_record_taps(keycode, record))
return false;
+#endif
#ifdef OLED_ENABLE
if (record->event.pressed) {
oled_timer_reset();
@@ -170,12 +114,15 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case UPDIR:
if (record->event.pressed)
- SEND_STRING("../");
+ tap_string(PSTR("../"));
break;
- case NUKE:
+ case REMOVE:
if (record->event.pressed) {
- tap_code16(C(KC_A));
- SEND_STRING("\b```suggestion\n```");
+ tap_string(PSTR("```suggestion\n```"));
+ tap_code(KC_UP);
+ tap_code(KC_UP);
+ tap_code(KC_ENT);
+ tap_code(KC_UP);
}
break;
INTERCEPT_MOD_TAP(LALT_T, KC_EXLM)
@@ -186,15 +133,6 @@ 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:
-#ifdef RANDWORD
- word = rand() % NUM_WORDS;
- if (record->event.pressed) {
- send_string(dict[word]);
- tap_code(KC_SPC);
- }
-#endif
- break;
}
return true;
}
diff --git a/jack/unicode.c b/jack/unicode.c
index 74c0ccc..a07a862 100644
--- a/jack/unicode.c
+++ b/jack/unicode.c
@@ -1,7 +1,18 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include "jack.h"
+enum unicode_mode {
+ NOMODE,
+ WIDE,
+ SCRIPT,
+ BLOCKS,
+ REGIONAL,
+ AUSSIE,
+ ZALGO,
+ SUPER
+};
+
uint8_t typing_mode = NOMODE;
typedef uint32_t (*translator_function_t)(bool is_shifted, uint32_t keycode);
@@ -157,7 +168,7 @@ DEFINE_UNICODE_LUT_TRANSLATOR(unicode_lut_translator_super,
);
bool process_record_aussie(uint16_t keycode, keyrecord_t *record) {
- bool is_shifted = (get_mods()) & MOD_MASK_SHIFT;
+ 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,
@@ -222,20 +233,10 @@ 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;
- case TABLE2:
- if (record->event.pressed) {
- send_unicode_string("(╯°□°)╯︵┻━┻");
- }
- break;
- case KC_NOMODE ... KC_SUPER:
+ case UC_NOMODE ... UC_SUPER:
if (record->event.pressed) {
- if (typing_mode != keycode - KC_NOMODE)
- typing_mode = keycode - KC_NOMODE;
+ if (typing_mode != keycode - UC_NOMODE)
+ typing_mode = keycode - UC_NOMODE;
else
typing_mode = NOMODE;
}
diff --git a/keyboards/grumpy/keyboard.json b/keyboards/grumpy/keyboard.json
deleted file mode 100644
index 2ad7bf2..0000000
--- a/keyboards/grumpy/keyboard.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "keyboard_name": "grumpy",
- "manufacturer": "jacks",
- "maintainer": "pngu.org",
- "processor": "RP2040",
- "bootloader": "rp2040",
- "diode_direction": "COL2ROW",
- "matrix_pins" : {
- "cols": ["GP26", "GP27", "GP28", "GP29", "GP6"],
- "rows": ["GP7", "GP0", "GP1", "GP2", "GP4", "GP3"]
- },
- "usb": {
- "vid": "0x6A73",
- "pid": "0x6279",
- "device_version": "1.0.0"
- },
- "layouts": {
- "LAYOUT": {
- "layout": [
- { "label": "w", "matrix": [0, 1], "x": 1, "y": 0 },
- { "label": "e", "matrix": [0, 2], "x": 2, "y": 0 },
- { "label": "r", "matrix": [0, 3], "x": 3, "y": 0 },
- { "label": "t", "matrix": [0, 4], "x": 4, "y": 0 },
- { "label": "y", "matrix": [3, 4], "x": 5, "y": 0 },
- { "label": "u", "matrix": [3, 3], "x": 6, "y": 0 },
- { "label": "i", "matrix": [3, 2], "x": 7, "y": 0 },
- { "label": "o", "matrix": [3, 1], "x": 8, "y": 0 },
- { "label": "a", "matrix": [1, 0], "x": 0, "y": 1 },
- { "label": "s", "matrix": [1, 1], "x": 1, "y": 1 },
- { "label": "d", "matrix": [1, 2], "x": 2, "y": 1 },
- { "label": "f", "matrix": [1, 3], "x": 3, "y": 1 },
- { "label": "g", "matrix": [1, 4], "x": 4, "y": 1 },
- { "label": "h", "matrix": [4, 4], "x": 5, "y": 1 },
- { "label": "j", "matrix": [4, 3], "x": 6, "y": 1 },
- { "label": "k", "matrix": [4, 2], "x": 7, "y": 1 },
- { "label": "l", "matrix": [4, 1], "x": 8, "y": 1 },
- { "label": ";", "matrix": [4, 0], "x": 9, "y": 1 },
- { "label": "z", "matrix": [2, 0], "x": 0, "y": 2 },
- { "label": "x", "matrix": [2, 1], "x": 1, "y": 2 },
- { "label": "c", "matrix": [2, 2], "x": 2, "y": 2 },
- { "label": "v", "matrix": [2, 3], "x": 3, "y": 2 },
- { "label": "b", "matrix": [2, 4], "x": 4, "y": 2 },
- { "label": "n", "matrix": [5, 4], "x": 5, "y": 2 },
- { "label": "m", "matrix": [5, 3], "x": 6, "y": 2 },
- { "label": ",", "matrix": [5, 2], "x": 7, "y": 2 },
- { "label": ".", "matrix": [5, 1], "x": 8, "y": 2 },
- { "label": "/", "matrix": [5, 0], "x": 9, "y": 2 }
- ]
- }
- }
-}
diff --git a/keyboards/grumpy/keymaps/jack/keymap.c b/keyboards/grumpy/keymaps/jack/keymap.c
deleted file mode 100644
index 1f6d0ad..0000000
--- a/keyboards/grumpy/keymaps/jack/keymap.c
+++ /dev/null
@@ -1,13 +0,0 @@
-// Copyright 2024 [email protected]
-// SPDX-License-Identifier: GPL-3.0-or-later
-#include "jack.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,
- KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,
- 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/grumpy/readme.md b/keyboards/grumpy/readme.md
deleted file mode 100644
index 08c8bb2..0000000
--- a/keyboards/grumpy/readme.md
+++ /dev/null
@@ -1,3 +0,0 @@
-### [grumpy](https://github.com/weteor/Grumpy)
-![image1](https://i.imgur.com/VFSn7cnh.jpeg)
-![image2](https://i.imgur.com/xUMFHg4h.jpeg)
diff --git a/keyboards/leftover30/chconf.h b/keyboards/leftover30/chconf.h
index 2add76c..3889564 100644
--- a/keyboards/leftover30/chconf.h
+++ b/keyboards/leftover30/chconf.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-3.0-or-later
#pragma once
diff --git a/keyboards/leftover30/config.h b/keyboards/leftover30/config.h
index d9c5627..c453ecd 100644
--- a/keyboards/leftover30/config.h
+++ b/keyboards/leftover30/config.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-3.0-or-later
#pragma once
diff --git a/keyboards/leftover30/halconf.h b/keyboards/leftover30/halconf.h
index 4ffc260..bfed83f 100644
--- a/keyboards/leftover30/halconf.h
+++ b/keyboards/leftover30/halconf.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-3.0-or-later
#pragma once
diff --git a/keyboards/leftover30/keymaps/jack/keymap.c b/keyboards/leftover30/keymaps/jack/keymap.c
index 066d6d3..8b62b21 100644
--- a/keyboards/leftover30/keymaps/jack/keymap.c
+++ b/keyboards/leftover30/keymaps/jack/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-3.0-or-later
#include "jack.h"
@@ -8,7 +8,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
___BASE1___, KC_BSPC,
___BASE2___,
___BASE3___,
- KC_MPLY, XXXXXXX, LWRSPC, C(S(KC_V)), RWORD
+ KC_MPLY, XXXXXXX, LWRSPC, C(S(KC_V)), XXXXXXX
),
[_LOWER] = LAYOUT_jack(
___LOWER1___, KC_DEL,
diff --git a/keyboards/leftover30/mcuconf.h b/keyboards/leftover30/mcuconf.h
index 10914c8..ec84251 100644
--- a/keyboards/leftover30/mcuconf.h
+++ b/keyboards/leftover30/mcuconf.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-3.0-or-later
#pragma once
diff --git a/keyboards/leftover30/readme.md b/keyboards/leftover30/readme.md
index 7eb9850..d6ce8e1 100644
--- a/keyboards/leftover30/readme.md
+++ b/keyboards/leftover30/readme.md
@@ -1,5 +1,5 @@
### leftover30
originally designed by [marksard](https://github.com/marksard/Keyboards/tree/master/leftover30), but the pcb seems to be mia...\
-(arm) pcb redesigned by [tominabox1](https://github.com/tominabox1/) with a somewhat jank case from p3d.
-![front](https://i.imgur.com/O6vY5omh.jpeg)
-![back](https://i.imgur.com/on9pBoAh.jpeg)
+(arm) pcb redesigned by [tominabox1](https://github.com/tominabox1) with a somewhat jank case from p3d.
+![front](https://i.imgur.com/O6vY5om.jpeg)
+![back](https://i.imgur.com/on9pBoA.jpeg)
diff --git a/keyboards/locus/keymaps/jack/keymap.c b/keyboards/locus/keymaps/jack/keymap.c
index 0779bc5..7c2915b 100644
--- a/keyboards/locus/keymaps/jack/keymap.c
+++ b/keyboards/locus/keymaps/jack/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-3.0-or-later
#include "jack.h"
diff --git a/keyboards/sweep/config.h b/keyboards/sweep/config.h
index e6ef7f3..51edc09 100644
--- a/keyboards/sweep/config.h
+++ b/keyboards/sweep/config.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keyboards/sweep/halconf.h b/keyboards/sweep/halconf.h
index 63f81cd..a6c11ab 100644
--- a/keyboards/sweep/halconf.h
+++ b/keyboards/sweep/halconf.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keyboards/sweep/keymaps/jack/keymap.c b/keyboards/sweep/keymaps/jack/keymap.c
index d505967..dc9a11b 100644
--- a/keyboards/sweep/keymaps/jack/keymap.c
+++ b/keyboards/sweep/keymaps/jack/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include "jack.h"
@@ -14,13 +14,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
___LOWER1___,
___LOWER2___,
___LOWER3___,
- KC_TRNS, KC_TRNS, KC_TRNS, PNP
+ _______, _______, _______, PNP
),
[_RAISE] = LAYOUT_jack(
___RAISE1___,
___RAISE2___,
___RAISE3___,
- NUKE, KC_TRNS, KC_TRNS, KC_TRNS
+ REMOVE, _______, _______, _______
)
};
// clang-format on
diff --git a/keyboards/sweep/lib/jetbrainsmono11.qff.c b/keyboards/sweep/lib/jetbrainsmono11.qff.c
deleted file mode 100644
index 9a60c9f..0000000
--- a/keyboards/sweep/lib/jetbrainsmono11.qff.c
+++ /dev/null
@@ -1,104 +0,0 @@
-// Copyright 2024 QMK
-// copyright SPDX-License-Identifier: GPL-2.0-or-later
-
-// Font's metadata
-// ---------------
-// Glyphs: , !, ", #, $, %, &, ', (, ), *, +, ,, -, ., /, 0, 1, 2, 3, 4, 5, 6,
-// 7, 8, 9, :, ;, <, =, >, ?, @, 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, [, \, ], ^, _, `, 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, {, |, }, ~
-
-#include <qp.h>
-
-const uint32_t font_jetbrainsmono11_length = 1365;
-
-// clang-format off
-const uint8_t font_jetbrainsmono11[1365] = {
- 0x00, 0xFF, 0x14, 0x00, 0x00, 0x51, 0x46, 0x46, 0x01, 0x55, 0x05, 0x00, 0x00, 0xAA, 0xFA, 0xFF,
- 0xFF, 0x0C, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x01, 0xFE, 0x1D, 0x01, 0x00, 0x07, 0x00,
- 0x00, 0xC7, 0x02, 0x00, 0x87, 0x05, 0x00, 0x47, 0x08, 0x00, 0x07, 0x0B, 0x00, 0xC7, 0x0D, 0x00,
- 0x87, 0x10, 0x00, 0x47, 0x13, 0x00, 0x07, 0x16, 0x00, 0xC7, 0x18, 0x00, 0x87, 0x1B, 0x00, 0x47,
- 0x1E, 0x00, 0x07, 0x21, 0x00, 0xC7, 0x23, 0x00, 0x87, 0x26, 0x00, 0x47, 0x29, 0x00, 0x07, 0x2C,
- 0x00, 0xC7, 0x2E, 0x00, 0x87, 0x31, 0x00, 0x47, 0x34, 0x00, 0x07, 0x37, 0x00, 0xC7, 0x39, 0x00,
- 0x87, 0x3C, 0x00, 0x47, 0x3F, 0x00, 0x07, 0x42, 0x00, 0xC7, 0x44, 0x00, 0x87, 0x47, 0x00, 0x47,
- 0x4A, 0x00, 0x07, 0x4D, 0x00, 0xC7, 0x4F, 0x00, 0x87, 0x52, 0x00, 0x47, 0x55, 0x00, 0x07, 0x58,
- 0x00, 0xC7, 0x5A, 0x00, 0x87, 0x5D, 0x00, 0x47, 0x60, 0x00, 0x07, 0x63, 0x00, 0xC7, 0x65, 0x00,
- 0x87, 0x68, 0x00, 0x47, 0x6B, 0x00, 0x07, 0x6E, 0x00, 0xC7, 0x70, 0x00, 0x87, 0x73, 0x00, 0x47,
- 0x76, 0x00, 0x07, 0x79, 0x00, 0xC7, 0x7B, 0x00, 0x87, 0x7E, 0x00, 0x47, 0x81, 0x00, 0x07, 0x84,
- 0x00, 0xC7, 0x86, 0x00, 0x87, 0x89, 0x00, 0x47, 0x8C, 0x00, 0x07, 0x8F, 0x00, 0xC7, 0x91, 0x00,
- 0x87, 0x94, 0x00, 0x47, 0x97, 0x00, 0x07, 0x9A, 0x00, 0xC7, 0x9C, 0x00, 0x87, 0x9F, 0x00, 0x47,
- 0xA2, 0x00, 0x07, 0xA5, 0x00, 0xC7, 0xA7, 0x00, 0x87, 0xAA, 0x00, 0x47, 0xAD, 0x00, 0x07, 0xB0,
- 0x00, 0xC7, 0xB2, 0x00, 0x87, 0xB5, 0x00, 0x47, 0xB8, 0x00, 0x07, 0xBB, 0x00, 0xC7, 0xBD, 0x00,
- 0x87, 0xC0, 0x00, 0x47, 0xC3, 0x00, 0x07, 0xC6, 0x00, 0xC7, 0xC8, 0x00, 0x87, 0xCB, 0x00, 0x47,
- 0xCE, 0x00, 0x07, 0xD1, 0x00, 0xC7, 0xD3, 0x00, 0x87, 0xD6, 0x00, 0x47, 0xD9, 0x00, 0x07, 0xDC,
- 0x00, 0xC7, 0xDE, 0x00, 0x87, 0xE1, 0x00, 0x47, 0xE4, 0x00, 0x07, 0xE7, 0x00, 0xC7, 0xE9, 0x00,
- 0x87, 0xEC, 0x00, 0x47, 0xEF, 0x00, 0x07, 0xF2, 0x00, 0xC7, 0xF4, 0x00, 0x87, 0xF7, 0x00, 0x47,
- 0xFA, 0x00, 0x07, 0xFD, 0x00, 0xC7, 0xFF, 0x00, 0x87, 0x02, 0x01, 0x04, 0xFB, 0x15, 0x04, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x81, 0x40,
- 0x20, 0x10, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x85, 0x42, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x89, 0xE0, 0xA3, 0x40, 0x7E, 0x12, 0x01, 0x00, 0x00, 0x08, 0x84, 0x47, 0xE1,
- 0xE0, 0xE0, 0x50, 0x1A, 0x04, 0x02, 0x00, 0x00, 0x80, 0xA9, 0x50, 0x71, 0xE0, 0x18, 0x8A, 0x18,
- 0x00, 0x00, 0x00, 0x00, 0x43, 0x42, 0x30, 0xA4, 0x22, 0x31, 0x17, 0x00, 0x00, 0x00, 0x00, 0x02,
- 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x82, 0x40, 0x20, 0x10, 0x08, 0x04,
- 0x04, 0x04, 0x00, 0x00, 0x03, 0x02, 0x01, 0x80, 0x40, 0x00, 0x08, 0x84, 0x01, 0x00, 0x00, 0x00,
- 0x00, 0x81, 0xF0, 0x31, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0xF8, 0x10,
- 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x82, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x10, 0x04, 0x82, 0x40, 0x20, 0x08, 0x04, 0x81, 0x00, 0x00,
- 0x00, 0x00, 0x47, 0x26, 0x52, 0x89, 0x44, 0x32, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x43, 0x81, 0x40,
- 0x20, 0x10, 0x08, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x47, 0x06, 0x82, 0x60, 0x18, 0x04, 0x1F, 0x00,
- 0x00, 0x00, 0x80, 0x07, 0x82, 0xE0, 0x40, 0x40, 0x12, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x02, 0x41,
- 0x90, 0x48, 0x3C, 0x10, 0x08, 0x00, 0x00, 0x00, 0x80, 0x47, 0x20, 0xF0, 0xC0, 0x40, 0x32, 0x0E,
- 0x00, 0x00, 0x00, 0x00, 0x82, 0x41, 0xF0, 0x88, 0x44, 0x22, 0x0E, 0x00, 0x00, 0x00, 0x80, 0x4F,
- 0x04, 0x81, 0x60, 0x10, 0x08, 0x02, 0x00, 0x00, 0x00, 0x00, 0x47, 0x26, 0xE1, 0xC8, 0x44, 0x22,
- 0x0E, 0x00, 0x00, 0x00, 0x00, 0x47, 0x24, 0x92, 0x71, 0x20, 0x08, 0x06, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x80, 0x40, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00,
- 0x00, 0x04, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x08, 0x18, 0x30, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0xE0, 0x03, 0x00, 0x7C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xC0, 0xC0,
- 0x30, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x02, 0x81, 0x30, 0x08, 0x00, 0x02, 0x00, 0x00,
- 0x00, 0x00, 0x47, 0x04, 0xC2, 0xA5, 0x52, 0x28, 0x8C, 0x80, 0x03, 0x00, 0x00, 0x82, 0x41, 0xA1,
- 0x48, 0x3C, 0x22, 0x11, 0x00, 0x00, 0x00, 0x80, 0x47, 0x26, 0xF1, 0xC8, 0x44, 0x22, 0x0F, 0x00,
- 0x00, 0x00, 0x00, 0x47, 0x24, 0x10, 0x08, 0x04, 0x22, 0x0E, 0x00, 0x00, 0x00, 0x80, 0x47, 0x22,
- 0x12, 0x89, 0x44, 0x12, 0x0F, 0x00, 0x00, 0x00, 0x80, 0x4F, 0x20, 0xF0, 0x08, 0x04, 0x02, 0x1F,
- 0x00, 0x00, 0x00, 0x80, 0x4F, 0x20, 0x10, 0x78, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x47,
- 0x26, 0x10, 0xE8, 0x44, 0x32, 0x0E, 0x00, 0x00, 0x00, 0x80, 0x48, 0x24, 0xF2, 0x89, 0x44, 0x22,
- 0x11, 0x00, 0x00, 0x00, 0x80, 0x07, 0x81, 0x40, 0x20, 0x10, 0x08, 0x0F, 0x00, 0x00, 0x00, 0x00,
- 0x04, 0x02, 0x81, 0x40, 0x20, 0x12, 0x0F, 0x00, 0x00, 0x00, 0x80, 0x48, 0x22, 0x71, 0x68, 0x24,
- 0x12, 0x11, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x1F, 0x00, 0x00, 0x00,
- 0x80, 0xCC, 0x66, 0x52, 0x89, 0x44, 0x22, 0x11, 0x00, 0x00, 0x00, 0x80, 0xC8, 0x64, 0x52, 0xA9,
- 0x74, 0x32, 0x19, 0x00, 0x00, 0x00, 0x00, 0x47, 0x22, 0x12, 0x89, 0x44, 0x12, 0x0E, 0x00, 0x00,
- 0x00, 0x80, 0x47, 0x24, 0x12, 0x79, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x47, 0x26, 0x12,
- 0x89, 0x44, 0x32, 0x0E, 0x04, 0x02, 0x00, 0x80, 0x47, 0x24, 0x92, 0x79, 0x24, 0x12, 0x11, 0x00,
- 0x00, 0x00, 0x00, 0x47, 0x22, 0x60, 0x40, 0x40, 0x22, 0x0E, 0x00, 0x00, 0x00, 0x80, 0x0F, 0x81,
- 0x40, 0x20, 0x10, 0x08, 0x04, 0x00, 0x00, 0x00, 0x80, 0x48, 0x24, 0x12, 0x89, 0x44, 0x12, 0x0E,
- 0x00, 0x00, 0x00, 0x80, 0x48, 0x24, 0x91, 0x50, 0x28, 0x0C, 0x06, 0x00, 0x00, 0x00, 0x40, 0x2A,
- 0xC5, 0x32, 0x99, 0x6C, 0x36, 0x09, 0x00, 0x00, 0x00, 0x80, 0x48, 0x42, 0x61, 0x30, 0x28, 0x12,
- 0x11, 0x00, 0x00, 0x00, 0x80, 0x48, 0x42, 0xE1, 0x20, 0x10, 0x08, 0x04, 0x00, 0x00, 0x00, 0x80,
- 0x0F, 0x02, 0x41, 0x10, 0x08, 0x02, 0x1F, 0x00, 0x00, 0x00, 0x0E, 0x81, 0x40, 0x20, 0x10, 0x08,
- 0x04, 0x02, 0x07, 0x00, 0x00, 0x81, 0x80, 0x40, 0x40, 0x20, 0x10, 0x10, 0x08, 0x08, 0x00, 0x00,
- 0x06, 0x02, 0x81, 0x40, 0x20, 0x10, 0x08, 0x04, 0x03, 0x00, 0x00, 0x00, 0x82, 0x00, 0x11, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x0F, 0x00,
- 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x81,
- 0xF1, 0x44, 0x32, 0x1F, 0x00, 0x00, 0x00, 0x80, 0x40, 0xE0, 0x91, 0x89, 0x44, 0x32, 0x0F, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0xC0, 0x11, 0x09, 0x04, 0x22, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x08, 0xC4,
- 0x93, 0x89, 0x44, 0x32, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x11, 0xF9, 0x04, 0x02, 0x0E,
- 0x00, 0x00, 0x00, 0x00, 0x8E, 0x40, 0xF0, 0x11, 0x08, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0xC0, 0x93, 0x89, 0x44, 0x32, 0x1E, 0x84, 0x03, 0x00, 0x80, 0x40, 0xE0, 0x91, 0x89, 0x44, 0x22,
- 0x11, 0x00, 0x00, 0x00, 0x00, 0x02, 0xE0, 0x40, 0x20, 0x10, 0x08, 0x1F, 0x00, 0x00, 0x00, 0x00,
- 0x04, 0xE0, 0x81, 0x40, 0x20, 0x10, 0x08, 0xC4, 0x01, 0x00, 0x80, 0x40, 0x20, 0x93, 0x38, 0x24,
- 0x12, 0x11, 0x00, 0x00, 0x00, 0xC0, 0x81, 0x40, 0x20, 0x10, 0x08, 0x04, 0x1C, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x60, 0x53, 0xA9, 0x54, 0x2A, 0x15, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0x91, 0x89,
- 0x44, 0x22, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x91, 0x89, 0x44, 0x32, 0x0E, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0xE0, 0x91, 0x89, 0x44, 0x32, 0x8F, 0x40, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x93,
- 0x89, 0x44, 0x32, 0x1E, 0x08, 0x04, 0x00, 0x00, 0x00, 0xE0, 0x11, 0x89, 0x04, 0x02, 0x01, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0xC0, 0x11, 0x38, 0x20, 0x22, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x80, 0xE0,
- 0x23, 0x10, 0x08, 0x04, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x12, 0x89, 0x44, 0x12, 0x0E,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x92, 0x48, 0x28, 0x0C, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x90, 0x42, 0x99, 0x4C, 0x16, 0x0B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xA3, 0x30, 0x18, 0x14,
- 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x92, 0x50, 0x28, 0x0C, 0x04, 0x82, 0x00, 0x00, 0x00,
- 0x00, 0xE0, 0x81, 0x20, 0x08, 0x06, 0x1F, 0x00, 0x00, 0x00, 0x08, 0x02, 0x81, 0x30, 0x20, 0x10,
- 0x08, 0x04, 0x04, 0x00, 0x00, 0x04, 0x02, 0x81, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, 0x00,
- 0x03, 0x83, 0x40, 0xC0, 0x11, 0x08, 0x0C, 0x86, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x69,
- 0x00, 0x00, 0x00, 0x00, 0x00,
-};
-// clang-format on
diff --git a/keyboards/sweep/lib/jetbrainsmono11.qff.h b/keyboards/sweep/lib/jetbrainsmono11.qff.h
deleted file mode 100644
index de556e3..0000000
--- a/keyboards/sweep/lib/jetbrainsmono11.qff.h
+++ /dev/null
@@ -1,8 +0,0 @@
-// Copyright 2024 QMK
-// SPDX-License-Identifier: GPL-2.0-or-later
-#pragma once
-
-#include <qp.h>
-
-extern const uint32_t font_jetbrainsmono11_length;
-extern const uint8_t font_jetbrainsmono11[1365];
diff --git a/keyboards/sweep/mcuconf.h b/keyboards/sweep/mcuconf.h
index be63774..182be78 100644
--- a/keyboards/sweep/mcuconf.h
+++ b/keyboards/sweep/mcuconf.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keyboards/sweep/rules.mk b/keyboards/sweep/rules.mk
index 172fd27..3bac055 100644
--- a/keyboards/sweep/rules.mk
+++ b/keyboards/sweep/rules.mk
@@ -2,7 +2,3 @@ POINTING_DEVICE_DRIVER = cirque_pinnacle_spi
# depends on 21844
QUANTUM_PAINTER_DRIVERS += ls0xx_spi
-
-ifeq ($(strip $(QUANTUM_PAINTER_ENABLE)), yes)
- SRC += lib/jetbrainsmono11.qff.c
-endif
diff --git a/keyboards/sweep/sweep.c b/keyboards/sweep/sweep.c
index f14a591..bd73d8a 100644
--- a/keyboards/sweep/sweep.c
+++ b/keyboards/sweep/sweep.c
@@ -1,13 +1,11 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
-#include <quantum.h>
+#include "quantum.h"
#ifdef QUANTUM_PAINTER_ENABLE
-#include "lib/jetbrainsmono11.qff.h"
-#include <qp.h>
-#include <qp_surface.h>
+#include "qp.h"
+#include "qp_surface.h"
static painter_device_t display;
-static painter_font_handle_t font;
static uint8_t framebuffer[SURFACE_REQUIRED_BUFFER_BYTE_SIZE(
LS0XX_DISPLAY_WIDTH, LS0XX_DISPLAY_HEIGHT, 1)] = {0};
@@ -16,13 +14,6 @@ void keyboard_post_init_kb(void) {
LS0XX_DISPLAY_WIDTH, LS0XX_DISPLAY_HEIGHT, LS0XX_CS_PIN, LCD_SPI_DIVISOR,
0, framebuffer);
qp_init(display, QP_ROTATION_0);
- font = qp_load_font_mem(font);
- if (font) {
- static const char *data = "foo bar baz";
- int16_t width = qp_textwidth(font, data);
- qp_drawtext(display, LS0XX_DISPLAY_WIDTH - width - 1,
- LS0XX_DISPLAY_HEIGHT - font->line_height - 1, font, data);
- }
keyboard_post_init_user();
}
diff --git a/keyboards/tornish/keymaps/default/keymap.c b/keyboards/tornish/keymaps/default/keymap.c
index aeb2df2..acd59b8 100644
--- a/keyboards/tornish/keymaps/default/keymap.c
+++ b/keyboards/tornish/keymaps/default/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
diff --git a/keyboards/tornish/readme.md b/keyboards/tornish/readme.md
index 3224611..57b3d5a 100644
--- a/keyboards/tornish/readme.md
+++ b/keyboards/tornish/readme.md
@@ -1,10 +1,10 @@
-### half a [torn](https://github.com/rtitmuss/torn) keyboard used solely for minecraft :)
-![img](https://i.imgur.com/e7zKTK7h.jpeg)
+### half a [torn](https://github.com/rtitmuss/torn) keyboard used for minecraft :)
+![img](https://i.imgur.com/e7zKTK7.jpeg)
for whatever reason, this board does not like to flash over usb.
-so [flash.sh](flash.sh) does the work for us:
-qmk compile -kb tornish -km default > /dev/null
+so [flash.sh](flash.sh) does the work instead:
```shell
+qmk compile -kb tornish -km default > /dev/null
sed -i '$ d' $FIRMWARE #remove last line from firmware hex file (eof indicator)
cat $BOOTLOADER >> $FIRMWARE #append bootloader hex file to firmware
avrdude -c usbtiny -p atmega328p -U flash:w:$FIRMWARE:i #flash firmware + bootloader over serial
diff --git a/keyboards/xyz60/keymaps/jack/keymap.c b/keyboards/xyz60/keymaps/jack/keymap.c
index 024d732..81941ed 100644
--- a/keyboards/xyz60/keymaps/jack/keymap.c
+++ b/keyboards/xyz60/keymaps/jack/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-3.0-or-later
#include "jack.h"
#define ___NONE___ \
@@ -12,21 +12,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, ___BASE1___, KC_BSPC, _______, PNP,
_______, ___BASE2___, _______, _______,
_______, ___BASE3___, _______,
- _______, _______, KC_ESC, LWRSPC, PSTRSE, _______, _______
+ _______, _______, KC_ESC, LWRSPC, PSTRSE, _______, _______
),
[_LOWER] = LAYOUT_jack_60_ts(
_______, ___NONE___,
_______, ___LOWER1___, _______, _______, _______,
_______, ___LOWER2___, _______, _______,
_______, ___LOWER3___, _______,
- _______, _______, _______, _______, _______, _______, _______
+ _______, _______, _______, _______, _______, _______, _______
),
[_RAISE] = LAYOUT_jack_60_ts(
_______, ___NONE___,
_______, ___RAISE1___, _______, _______, _______,
_______, ___RAISE2___, _______, _______,
_______, ___RAISE3___, _______,
- _______, _______, _______, _______, _______, _______, _______
+ _______, _______, _______, _______, _______, _______, _______
)
};
// clang-format on
diff --git a/keymaps/bully/keymap.c b/keymaps/bully/keymap.c
index 927d588..bd9ef4d 100644
--- a/keymaps/bully/keymap.c
+++ b/keymaps/bully/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-3.0-or-later
#include "jack.h"
@@ -6,7 +6,7 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_jack(
XXXXXXX, ___BASE1___, KC_BSPC, KC_BSPC,
- NUKE, ___BASE2___, PNP,
+ REMOVE, ___BASE2___, PNP,
XXXXXXX, ___BASE3___, XXXXXXX,
KC_VOLD, UPDIR, KC_ESC, _______, LT(_LOWER, KC_SPC), _______, PSTRSE, XXXXXXX, KC_VOLU
),
diff --git a/keymaps/crkbd/config.h b/keymaps/crkbd/config.h
index 1516e0b..f93a586 100644
--- a/keymaps/crkbd/config.h
+++ b/keymaps/crkbd/config.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
@@ -13,9 +13,9 @@
#define WS2812_DI_PIN B5
#define WS2812_PWM_DRIVER PWMD3
#define WS2812_PWM_CHANNEL 3
-#define WS2812_DMA_STREAM STM32_DMA1_STREAM3
-#define WS2812_DMA_CHANNEL 3
-#define WS2812_DMAMUX_ID STM32_DMAMUX1_TIM3_UP
+#define WS2812_PWM_DMA_STREAM STM32_DMA1_STREAM3
+#define WS2812_PWM_DMA_CHANNEL 3
+#define WS2812_PWM_DMAMUX_ID STM32_DMAMUX1_TIM3_UP
#endif
#ifdef ENCODER_ENABLE
diff --git a/keymaps/crkbd/halconf.h b/keymaps/crkbd/halconf.h
index 547b9db..81505ac 100644
--- a/keymaps/crkbd/halconf.h
+++ b/keymaps/crkbd/halconf.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keymaps/crkbd/keymap.c b/keymaps/crkbd/keymap.c
index 54fd197..eca3a2a 100644
--- a/keymaps/crkbd/keymap.c
+++ b/keymaps/crkbd/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include "jack.h"
@@ -6,21 +6,21 @@
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_jack_3x6(
XXXXXXX, ___BASE1___, XXXXXXX,
- XXXXXXX, ___BASE2___, RWORD,
+ XXXXXXX, ___BASE2___, XXXXXXX,
XXXXXXX, ___BASE3___, XXXXXXX,
- ___BASE4___
+ ___BASE4___
),
[_LOWER] = LAYOUT_jack_3x6(
- XXXXXXX, ___LOWER1___, XXXXXXX,
- XXXXXXX, ___LOWER2___, XXXXXXX,
- XXXXXXX, ___LOWER3___, XXXXXXX,
- ___LOWER4___
+ _______, ___LOWER1___, _______,
+ _______, ___LOWER2___, _______,
+ _______, ___LOWER3___, _______,
+ ___LOWER4___
),
[_RAISE] = LAYOUT_jack_3x6(
- XXXXXXX, ___RAISE1___, XXXXXXX,
- XXXXXXX, ___RAISE2___, XXXXXXX,
- XXXXXXX, ___RAISE3___, XXXXXXX,
- ___RAISE4___
+ _______, ___RAISE1___, _______,
+ _______, ___RAISE2___, _______,
+ _______, ___RAISE3___, _______,
+ ___RAISE4___
)
};
// clang-format on
@@ -62,31 +62,9 @@ void keyboard_post_init_keymap(void) {
}
#endif // audio
-#ifdef POINTING_DEVICE_ENABLE
-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;
- pimoroni_trackball_set_rgbw(red, green, blue, 0);
-}
-#endif // pointing device
-
#ifdef OLED_ENABLE
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
- return is_keyboard_master() ? 2 : 3;
+ return is_keyboard_master() ? OLED_ROTATION_180 : OLED_ROTATION_270;
}
bool oled_task_keymap(void) {
diff --git a/keymaps/crkbd/mcuconf.h b/keymaps/crkbd/mcuconf.h
index 871c3e7..db028e0 100644
--- a/keymaps/crkbd/mcuconf.h
+++ b/keymaps/crkbd/mcuconf.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keymaps/crkbd/rules.mk b/keymaps/crkbd/rules.mk
index b1fff61..a0d37aa 100644
--- a/keymaps/crkbd/rules.mk
+++ b/keymaps/crkbd/rules.mk
@@ -4,8 +4,6 @@ WS2812_DRIVER = pwm
OLED_ENABLE = yes
AUDIO_ENABLE = no
AUDIO_DRIVER = dac_basic
-RGBLIGHT_ENABLE = no
-RGB_MATRIX_ENABLE = yes
ENCODER_ENABLE = yes
ENCODER_MAP_ENABLE = yes
POINTING_DEVICE_ENABLE = no
diff --git a/keymaps/f60/keymap.c b/keymaps/f60/keymap.c
index c730bd5..5f14df5 100644
--- a/keymaps/f60/keymap.c
+++ b/keymaps/f60/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include "jack.h"
#define ___NONE___ \
@@ -12,21 +12,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, ___BASE1___, KC_BSPC, _______, PNP,
_______, ___BASE2___, _______, _______,
_______, ___BASE3___, _______,
- _______, _______, KC_ESC, LWRSPC, PSTRSE, _______, _______
+ _______, _______, KC_ESC, LWRSPC, PSTRSE, _______, _______
),
[_LOWER] = LAYOUT_jack_60_ts(
_______, ___NONE___,
_______, ___LOWER1___, _______, _______, _______,
_______, ___LOWER2___, _______, _______,
_______, ___LOWER3___, _______,
- _______, _______, _______, _______, _______, _______, _______
+ _______, _______, _______, _______, _______, _______, _______
),
[_RAISE] = LAYOUT_jack_60_ts(
_______, ___NONE___,
_______, ___RAISE1___, _______, _______, _______,
_______, ___RAISE2___, _______, _______,
_______, ___RAISE3___, _______,
- _______, _______, _______, _______, _______, _______, _______
+ _______, _______, _______, _______, _______, _______, _______
)
};
// clang-format on
diff --git a/keymaps/f60/readme.md b/keymaps/f60/readme.md
index 8244d1b..81b06f6 100644
--- a/keymaps/f60/readme.md
+++ b/keymaps/f60/readme.md
@@ -1,4 +1,4 @@
### trio60
-![front](https://i.imgur.com/MsKEbeBh.jpeg)
-![back](https://i.imgur.com/1D9xUYTh.jpeg)
-![rear](https://i.imgur.com/x6MBDMdh.jpeg)
+![front](https://i.imgur.com/MsKEbeB.jpeg)
+![back](https://i.imgur.com/1D9xUYT.jpeg)
+![rear](https://i.imgur.com/x6MBDMd.jpeg)
diff --git a/keymaps/ferris/config.h b/keymaps/ferris/config.h
index 1f624e5..d56921a 100644
--- a/keymaps/ferris/config.h
+++ b/keymaps/ferris/config.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keymaps/ferris/keymap.c b/keymaps/ferris/keymap.c
index 71f2e14..e3e6b36 100644
--- a/keymaps/ferris/keymap.c
+++ b/keymaps/ferris/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include "jack.h"
#define XX NO_LED
@@ -15,13 +15,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
___LOWER1___,
___LOWER2___,
___LOWER3___,
- XXXXXXX, XXXXXXX, XXXXXXX, PNP
+ _______, _______, _______, PNP
),
[_RAISE] = LAYOUT_jack(
___RAISE1___,
___RAISE2___,
___RAISE3___,
- UPDIR, XXXXXXX, XXXXXXX, XXXXXXX
+ UPDIR, _______, _______, _______
)
};
diff --git a/keymaps/kyria/config.h b/keymaps/kyria/config.h
index 25e13a2..3898f61 100644
--- a/keymaps/kyria/config.h
+++ b/keymaps/kyria/config.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keymaps/kyria/keymap.c b/keymaps/kyria/keymap.c
index 99b9da3..3612228 100644
--- a/keymaps/kyria/keymap.c
+++ b/keymaps/kyria/keymap.c
@@ -1,28 +1,28 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include "jack.h"
// clang-format off
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_BASE] = LAYOUT_jack(
- XXXXXXX, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, XXXXXXX,
- XXXXXXX, HRML(KC_A, KC_S, KC_D, KC_F), KC_G, KC_H, HRMR(KC_J, KC_K, KC_L, KC_SCLN), XXXXXXX,
- XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, RWORD, XXXXXXX, XXXXXXX, NUKE, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, XXXXXXX,
+ XXXXXXX, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, XXXXXXX,
+ XXXXXXX, HRML(KC_A, KC_S, KC_D, KC_F), KC_G, KC_H, HRMR(KC_J, KC_K, KC_L, KC_SCLN), XXXXXXX,
+ XXXXXXX, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_SPC, XXXXXXX, XXXXXXX, KC_BSPC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, XXXXXXX,
XXXXXXX, UPDIR, ESCLWR, KC_SPC, XXXXXXX, XXXXXXX, KC_BSPC, PSTRSE, PNP, XXXXXXX
),
[_LOWER] = LAYOUT_jack(
_______, KC_1, KC_2 , KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______,
_______, HRML(KC_EXLM, KC_AT, KC_HASH, KC_DLR), KC_PERC, KC_CIRC, HRMR(KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN), _______,
- _______, KC_VOLD, KC_TAB, KC_CAPS, KC_TILD, KC_GRV, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_VOLU, _______,
+ _______, KC_VOLD, KC_TAB, KC_CAPS, REMOVE, KC_GRV, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_VOLU, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
[_RAISE] = LAYOUT_jack(
- _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXXMODE, KC_SCRIPT, KC_BLOCKS, KC_REGIONAL, QK_MAKE, _______,
- _______, _______, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_WIDE, KC_AUSSIE, KC_ZALGO, KC_SUPER, QK_BOOT, _______,
- _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
- _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+ _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, UC_NOMODE, UC_SCRIPT, UC_BLOCKS, UC_REGIONAL, QK_MAKE, _______,
+ _______, M_JIGGLE, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_WIDE, KC_AUSSIE, KC_ZALGO, KC_SUPER, QK_BOOT, _______,
+ _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
};
// clang-format on
@@ -36,3 +36,31 @@ bool oled_task_keymap(void) {
return false;
}
#endif
+
+#ifdef POINTING_DEVICE_ENABLE
+static bool scrolling = false;
+layer_state_t layer_state_set_user(layer_state_t state) {
+ switch (get_highest_layer(state)) {
+ case _LOWER:
+ scrolling = true;
+ pointing_device_set_cpi(64);
+ break;
+ default:
+ if (scrolling) {
+ scrolling = false;
+ pointing_device_set_cpi(1024);
+ }
+ }
+ return state;
+}
+
+report_mouse_t pointing_device_task_user(report_mouse_t mouse_report) {
+ if (scrolling) {
+ mouse_report.h = mouse_report.x;
+ mouse_report.v = -mouse_report.y;
+ mouse_report.x = 0;
+ mouse_report.y = 0;
+ }
+ return mouse_report;
+}
+#endif
diff --git a/keymaps/kyria/readme.md b/keymaps/kyria/readme.md
index 517429a..06b8f31 100644
--- a/keymaps/kyria/readme.md
+++ b/keymaps/kyria/readme.md
@@ -1,5 +1,5 @@
### rp2040 kyria rev2
-![photo](https://i.imgur.com/P0urp7nh.jpeg)
+![photo](https://i.imgur.com/P0urp7n.jpeg)
#### parts & notes
* microcontrollers: [boardsource blok](https://boardsource.xyz/store/628b95b494dfa308a6581622)
diff --git a/keymaps/onekey/rp2040/chconf.h b/keymaps/onekey/rp2040/chconf.h
index 5b38d53..8937db2 100644
--- a/keymaps/onekey/rp2040/chconf.h
+++ b/keymaps/onekey/rp2040/chconf.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keymaps/onekey/rp2040/keymap.c b/keymaps/onekey/rp2040/keymap.c
index 07fb9fa..20372fd 100644
--- a/keymaps/onekey/rp2040/keymap.c
+++ b/keymaps/onekey/rp2040/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
diff --git a/keymaps/onekey/rp2040/mcuconf.h b/keymaps/onekey/rp2040/mcuconf.h
index abc250c..c35ba16 100644
--- a/keymaps/onekey/rp2040/mcuconf.h
+++ b/keymaps/onekey/rp2040/mcuconf.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
#include_next <mcuconf.h>
diff --git a/keymaps/onekey/stm32f411/config.h b/keymaps/onekey/stm32f411/config.h
index 1b03659..668ebfb 100644
--- a/keymaps/onekey/stm32f411/config.h
+++ b/keymaps/onekey/stm32f411/config.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#pragma once
diff --git a/keymaps/onekey/stm32f411/keymap.c b/keymaps/onekey/stm32f411/keymap.c
index 34b5279..36202c2 100644
--- a/keymaps/onekey/stm32f411/keymap.c
+++ b/keymaps/onekey/stm32f411/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-2.0-or-later
#include QMK_KEYBOARD_H
diff --git a/keymaps/relic/keymap.c b/keymaps/relic/keymap.c
index 7f22e6f..88decb2 100644
--- a/keymaps/relic/keymap.c
+++ b/keymaps/relic/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-3.0-or-later
#include "jack.h"
@@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
___LOWER1___, _______,
___LOWER2___,
___LOWER3___,
- _______, TABLE1, _______, _______, _______, _______, _______, TABLE2, _______
+ _______, _______, _______, _______, _______, _______, _______, _______, _______
),
[_RAISE] = LAYOUT_jack_all(
___RAISE1___, _______,
diff --git a/keymaps/relic/readme.md b/keymaps/relic/readme.md
index a8e6d47..efab677 100644
--- a/keymaps/relic/readme.md
+++ b/keymaps/relic/readme.md
@@ -1,3 +1,3 @@
### relic
-![front](https://i.imgur.com/FMkKVs0h.jpeg)
-![back](https://i.imgur.com/s1HrBumh.jpeg)
+![front](https://i.imgur.com/FMkKVs0.jpeg)
+![back](https://i.imgur.com/s1HrBum.jpeg)
diff --git a/keymaps/vault35/config.h b/keymaps/vault35/config.h
index 392a9d4..7fefbd9 100644
--- a/keymaps/vault35/config.h
+++ b/keymaps/vault35/config.h
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-3.0-or-later
#pragma once
diff --git a/keymaps/vault35/keymap.c b/keymaps/vault35/keymap.c
index e78c59d..92d9b83 100644
--- a/keymaps/vault35/keymap.c
+++ b/keymaps/vault35/keymap.c
@@ -1,4 +1,4 @@
-// Copyright 2024 [email protected]
+// Copyright 2025 [email protected]
// SPDX-License-Identifier: GPL-3.0-or-later
#include "jack.h"
@@ -11,13 +11,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
UPDIR, KC_ESC, LWRSPC, _______, RSEBSP, C(S(KC_V)), PNP
),
[_LOWER] = LAYOUT_jack_all(
- ___LOWER1___, XXXXXXX,
+ ___LOWER1___, _______,
___LOWER2___,
___LOWER3___,
_______, _______, _______, _______, _______, _______, _______
),
[_RAISE] = LAYOUT_jack_all(
- ___RAISE1___, XXXXXXX,
+ ___RAISE1___, _______,
___RAISE2___,
___RAISE3___,
_______, _______, _______, _______, _______, _______, _______
diff --git a/keymaps/vault35/readme.md b/keymaps/vault35/readme.md
index 15d1db4..876e6fa 100644
--- a/keymaps/vault35/readme.md
+++ b/keymaps/vault35/readme.md
@@ -1,3 +1,3 @@
### vault35
-![w/o keycaps](https://i.imgur.com/AHwhQdDh.jpeg)
-![w/ keycaps](https://i.imgur.com/lXP50ITh.jpeg)
+![w/o keycaps](https://i.imgur.com/AHwhQdD.jpeg)
+![w/ keycaps](https://i.imgur.com/lXP50IT.jpeg)
diff --git a/jack/raw.py b/util/raw.py
index 994a92c..fe63d49 100644
--- a/jack/raw.py
+++ b/util/raw.py
@@ -1,4 +1,4 @@
-# Copyright 2024 [email protected]
+# Copyright 2025 [email protected]
# SPDX-License-Identifier: GPL-2.0-or-later
import hid
import sys