summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bösebeck <sb@caluga.de>2016-04-12 15:39:18 +0200
committerStephan Bösebeck <sb@caluga.de>2016-04-12 15:39:18 +0200
commita71ab3ebb6ef3390a9eb20ba7d0a8a3c7ab6a18f (patch)
tree36bddb5a7b3da313df5386d5bd1b8916b058f77a
parentc2e1d69f27763de82c959035b92787c5a88a5da1 (diff)
parenta0194d7e5ff2f3d242a5c6508abf81b4ddf67a3e (diff)
Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware
-rw-r--r--keyboard/ergodox_ez/keymaps/j3rn/keymap.c31
-rw-r--r--keyboard/ergodox_ez/keymaps/j3rn/readme.md7
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/keymap.c540
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.pngbin94771 -> 99031 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.txt14
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.pngbin108774 -> 119139 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.txt44
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.pngbin93001 -> 98257 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt40
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary.hex2306
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/readme.md66
-rw-r--r--keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/keymap.c134
-rw-r--r--keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/readme.md50
-rw-r--r--keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.hex1139
-rw-r--r--keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.pngbin0 -> 130692 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/readme.md13
16 files changed, 3036 insertions, 1348 deletions
diff --git a/keyboard/ergodox_ez/keymaps/j3rn/keymap.c b/keyboard/ergodox_ez/keymaps/j3rn/keymap.c
index b5463cb72d..6e271321d5 100644
--- a/keyboard/ergodox_ez/keymaps/j3rn/keymap.c
+++ b/keyboard/ergodox_ez/keymaps/j3rn/keymap.c
@@ -14,11 +14,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
* | Tab | Q | W | E | R | T | - | | = | Y | U | I | O | P | \ |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * |Ctrl/Esc| A | S | D | F | G |------| |------| H | J | K | L |; / L2| ' |
+ * |Ctrl/Esc|A / L2| S | D | F | G |------| |------| H | J | K | L | ; | ' |
* |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------|
* | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | ~L1 | '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 |
+ * | ~L1 | ~L2 |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 |
* `----------------------------------' `----------------------------------'
* ,-------------. ,-------------.
* | App | Home | | PgUp |Ctrl/Esc|
@@ -34,9 +34,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// left hand
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LBRC,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_MINS,
- CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G,
+ CTL_T(KC_ESC), LT(MDIA, KC_A),KC_S, KC_D, KC_F, KC_G,
KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO),
- KC_FN1, KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT,
+ KC_FN1, KC_FN2, LALT(KC_LSFT), KC_LEFT,KC_RGHT,
ALT_T(KC_APP), KC_HOME,
KC_END,
@@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
// right hand
KC_RBRC, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
KC_EQL, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS,
- KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),KC_QUOT,
+ KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT,
KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1,
@@ -99,13 +99,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* ,--------------------------------------------------. ,--------------------------------------------------.
* | | | | | | | | | | | | | | | |
* |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | MsUp | | | | | | | | | | | |
+ * | | | | | | | | | | | | Lclk | Rclk | | |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play |
+ * | | | | | | |------| |------|MsLeft|MsDown| MsUp |MsRght| | Play |
* |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
* | | | | | | | | | | | | Prev | Next | | |
* `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | |
+ * | | | | | | |VolUp |VolDn | Mute | | |
* `----------------------------------' `----------------------------------'
* ,-------------. ,-------------.
* | | | | | |
@@ -116,19 +116,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* `--------------------' `--------------------'
*/
// MEDIA AND MOUSE
-KEYMAP(
+[MDIA] = KEYMAP(
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS,
KC_TRNS,
KC_TRNS, KC_TRNS, KC_TRNS,
// right hand
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS,
+ KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_TRNS, KC_MPLY,
KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS,
KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS,
KC_TRNS, KC_TRNS,
@@ -138,7 +138,8 @@ KEYMAP(
};
const uint16_t PROGMEM fn_actions[] = {
- [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols)
+ [1] = ACTION_LAYER_TAP_TOGGLE(SYMB), // FN1 - Momentary Layer 1 (Symbols)
+ [2] = ACTION_LAYER_TAP_TOGGLE(MDIA) // FN2 - Momentary Layer 2 (Media)
};
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
diff --git a/keyboard/ergodox_ez/keymaps/j3rn/readme.md b/keyboard/ergodox_ez/keymaps/j3rn/readme.md
index b0c4d267bd..fc4b640426 100644
--- a/keyboard/ergodox_ez/keymaps/j3rn/readme.md
+++ b/keyboard/ergodox_ez/keymaps/j3rn/readme.md
@@ -1,10 +1,10 @@
-# J3RN's Mac-centric Ergodox EZ keymap
+# J3RN's Mac-centric ErgoDox EZ keymap
## Motivation
-Essentially, I wanted to switch to a layout that was less jarring than the default Ergodox EZ layout, and did not require finger gymnastics to perform common OS X shortcuts (most of which involve the CMD (LGui) key).
+Essentially, I wanted to switch to a layout that was less jarring than the default ErgoDox EZ layout, and did not require finger gymnastics to perform common OS X shortcuts (most of which involve the CMD (LGui) key).
-## How is it different from the default Ergodox EZ layout?
+## How is it different from the default ErgoDox EZ layout?
This layout more closely resembles that of the Mac keyboard, and has some other goodness baked in. Here is a rundown of what that means:
@@ -18,6 +18,7 @@ This layout more closely resembles that of the Mac keyboard, and has some other
### Other changes
- **The button to the left of "A" is Ctrl/Esc instead of Backspace.** This is actually how I have the keyboard on my Macbook set up to be, since it's loads more convenient than a CAPS LOCK key. This is the Ctrl key I find myself using most.
+- **Mouse uses Vim-style navigation**. To activate "Media mode," hold the 'a' key. This allows you to move the mouse around with hjkl just like in Vim. Additionally, right and left click are the conveniently placed 'i' and 'o' keys.
- **The key to the right of "5" and the key to left of "6" are "[" and "]", respectively, instead of Left and Right.** There is a more convenient set of Left and Right already present. Truth be told, I don't really use these keys, as they are a stretch to reach.
- **The Toggle L1 keys have been replaced by the otherwise displaced "-" and "=".** They are laid out, left-to-right, in the same order as on the Mac keyboard. Honestly, they are not terribly conveniently placed, and their placement might change in a later version. I found that I did not toggle L1 frequently at all, and found using the momentary keys to access L1 to fit my workflow better.
- **The "~"/L1 key in the bottom-left is now just momentary L1.** The "~" key was moved to the top-left as mentioned before, and I like to keep my multi-use keys to a minimum due to the latency for them to switch from "press" to "hold."
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/keymap.c b/keyboard/ergodox_ez/keymaps/ordinary/keymap.c
index 4dd6d883ca..3a999f2665 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/keymap.c
+++ b/keyboard/ergodox_ez/keymaps/ordinary/keymap.c
@@ -1,149 +1,421 @@
#include "ergodox_ez.h"
+#include "led.h"
#include "debug.h"
#include "action_layer.h"
-#define BASE 0 // default layer
-#define SYMB 1 // symbols
-#define MDIA 2 // media keys
+#define BASE 0 // default layer
+#define LOCK 1 // layer lock keys
+#define SYMB_MO 2 // symbols momentary layer
+#define SYMB_TG 3 // symbols lock layer
+#define SYMB_XX 4 // symbols exit layer
+#define MDIA_MO 5 // media momentary layer
+#define MDIA_TG 6 // media lock layer
+#define MDIA_XX 7 // media exit layer
+#define UNLOCK 8 // clear to base layer
/*
- * Ordinary Ergodox EZ keyboard layout, v2
+ * Ordinary Ergodox EZ keyboard layout, v3
* modifications from default by Nicholas Keene ergodoxez@nicholaskeene.com
* Details: http://nicholas.rinard.us/2016/03/ergodox-ez-layout.html
*/
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+
/* Keymap 0: Basic layer
*
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | Grv | 1 | 2 | 3 | 4 | 5 | ESC | | - | 6 | 7 | 8 | 9 | 0 | = |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | MDIA \ |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | SYMB | A | S | D | F | G |------| |------| H | J | K | L | ; | SYMB ' |
- * |--------+------+------+------+------+------|Shift | | Tab |------+------+------+------+------+--------|
- * | LShift | Z | X | C | V | B | -Tab | | | N | M | , | . | / | RShift |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * |LCtrl | Meh |Hyper | LAlt | LGui | | RGui | RAlt | Hyper| Meh |RCtrl |
- * `----------------------------------' `----------------------------------'
- * ,---------------. ,---------------.
- * | Home | End | | Left | Right |
- * ,------|--------|------| |------+--------+------.
- * | | | PgUp | | Up | | |
- * |Backsp| Del |------| |------| Enter | Space|
- * | | | PgDn | | Down | | |;
- * `----------------------' `----------------------'
+ * ,-----------------------------------------------------. ,-----------------------------------------------------.
+ * | LOCK Grv | 1 | 2 | 3 | 4 | 5 | ESC | | - | 6 | 7 | 8 | 9 | 0 | = LOCK |
+ * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
+ * | Media Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \ Media |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | Symbol | A | S | D | F | G |------| |------| H | J | K | L | ; | ' Symbol |
+ * |-----------+------+------+------+------+------|Shift | | Tab |------+------+------+------+------+-----------|
+ * | LShift | Z | X | C | V | B | -Tab | | | N | M | , | . | / | RShift |
+ * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
+ * |LCtrl | Meh |Hyper | LAlt | LGui | | RGui | RAlt | Hyper| Meh |RCtrl |
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * | Home | End | | Left | Right|
+ * ,------|------|------| |------+------+------.
+ * | | | PgUp | | Up | | |
+ * |Backsp| Del |------| |------| Enter| Space|
+ * | | | PgDn | | Down | | |
+ * `--------------------' `--------------------'
*/
-// If it accepts an argument (i.e, is a function), it doesn't need KC_.
-// Otherwise, it needs KC_*
-[BASE] = KEYMAP( // layer 0 : default
- // left hand
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC,
- MO(SYMB), KC_A, KC_S, KC_D, KC_F, KC_G,
- KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, LSFT(KC_TAB),
- KC_LCTL, MEH_T(KC_NO),ALL_T(KC_NO),KC_LALT,KC_LGUI,
- KC_HOME, KC_END,
- KC_PGUP,
- KC_BSPC, KC_DEL, KC_PGDN,
+[BASE] = KEYMAP(
+// left hand
+ LT(LOCK, KC_GRV),KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_ESC
+,LT(MDIA_MO, KC_TAB),KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_LBRC
+,MO(SYMB_MO) ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G
+,KC_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,LSFT(KC_TAB)
+,KC_LCTL ,MEH_T(KC_NO),ALL_T(KC_NO),KC_LALT,KC_LGUI
+
+ ,KC_HOME,KC_END
+ ,KC_PGUP
+ ,KC_BSPC,KC_DEL ,KC_PGDN
// right hand
- KC_MINS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL,
- KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, LT(MDIA, KC_BSLS),
- KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(SYMB, KC_QUOT),
- KC_TAB, KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH),KC_RSFT,
- KC_RGUI, KC_RALT, ALL_T(KC_NO),MEH_T(KC_NO), KC_RCTL,
- KC_LEFT, KC_RGHT,
- KC_UP,
- KC_DOWN, KC_ENT, KC_SPC
+ ,KC_MINS ,KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,LT(LOCK, KC_EQL)
+ ,KC_RBRC ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,LT(MDIA_MO, KC_BSLS)
+ ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,LT(SYMB_MO, KC_QUOT)
+ ,KC_TAB ,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH ,KC_RSFT
+ ,KC_RGUI,KC_RALT,ALL_T(KC_NO),MEH_T(KC_NO),KC_RCTL
+
+ ,KC_LEFT ,KC_RGHT
+ ,KC_UP
+ ,KC_DOWN ,KC_ENT ,KC_SPC
),
-/* Keymap 1: Symbol Layer
+
+/* Keymap 1: Layer Lock Keys
*
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | Esc | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | MDIA | ! | @ | { | } | & | < | | > | | | 7 | 8 | 9 | / | F12 |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | # | $ | ( | ) | ` |------| |------| / | 4 | 5 | 6 | * | |
- * |--------+------+------+------+------+------| Tab | | Shift|------+------+------+------+------+--------|
- * | | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | CAPS |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | | | | 0 | . | = | + | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Left | Right| | Home | End |
- * ,------|------|------| |------+------+------.
- * | | | Up | | PgUp | | |
- * |Space |Enter |------| |------|BackSp| Del |
- * | | | Down | | PgDn | | |
- * `--------------------' `--------------------'
+ * ,-----------------------------------------------------. ,-----------------------------------------------------.
+ * | | Esc | | | | | | | | | | | | | |
+ * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
+ * | Media LOCK| | | | | | | | | | | | | | Media LOCK|
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * |Symbol LOCK| | | | | |------| |------| | | | | |Symbol LOCK|
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | Caps LOCK| | | | | | | | | | | | | | Caps LOCK|
+ * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
+ * | | | | | | | | | | | |
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * | | | | | |
+ * ,------|------|------| |------+------+------.
+ * | | | | | | | |
+ * | | |------| |------| | |
+ * | | | | | | | |
+ * `--------------------' `--------------------'
*/
-// SYMBOLS
-[SYMB] = KEYMAP(
- // left hand
- KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS,
- MO(MDIA), KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_AMPR,LSFT(KC_COMM),
- KC_TRNS, KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV,
- KC_TRNS, KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TAB,
- KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,
- KC_LEFT,KC_RGHT,
- KC_UP,
- KC_SPC,KC_ENT,KC_DOWN,
- // right hand
- KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
- LSFT(KC_DOT), KC_PIPE, KC_P7, KC_P8, KC_P9, KC_PSLS, KC_F12,
- KC_SLSH, KC_P4, KC_P5, KC_P6, KC_PAST, KC_TRNS,
- LSFT(KC_TAB), KC_BSLS, KC_P1, KC_P2, KC_P3, KC_PMNS, KC_CAPS,
- KC_P0, KC_DOT, KC_PEQL, KC_PPLS, KC_PENT,
- KC_HOME, KC_END,
- KC_PGUP,
- KC_PGDN, KC_BSPC, KC_DEL
+[LOCK] = KEYMAP(
+// left hand
+ KC_TRNS ,KC_ESC ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_FN3 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_FN2 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_CAPS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+
+ ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS
+ ,KC_TRNS,KC_TRNS ,KC_TRNS
+
+ // right hand
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_FN3
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_FN2
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_CAPS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+
+ ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ),
+
+/* Keymap 2: Symbol Momentary Layer
+ *
+ * ,-----------------------------------------------------. ,-----------------------------------------------------.
+ * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | |
+ * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
+ * | Media | ! | @ | { | } | & | < | | > | | | 7 | 8 | 9 | / | Media |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | Symbol | # | $ | ( | ) | ` |------| |------| / | 4 | 5 | 6 | * | Symbol |
+ * |-----------+------+------+------+------+------| Tab | | Shift|------+------+------+------+------+-----------|
+ * | Shift | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | Shift |
+ * `-----------+------+------+------+------+-------------' `------------+------+------+------+------+------------'
+ * | | | | | | | 0 | . | = | + | Entr |
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * | Left | Right| | Home | End |
+ * ,------|------|------| |------+------+------.
+ * | | | Up | | PgUp | | |
+ * |Space |Enter |------| |------|BackSp| Del |
+ * | | | Down | | PgDn | | |
+ * `--------------------' `--------------------'
+ */
+[SYMB_MO] = KEYMAP(
+// left hand
+ KC_FN2 ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_TRNS
+,MO(MDIA_MO) ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM)
+,MO(SYMB_MO) ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_GRV
+,KC_LSFT ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TAB
+,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_LEFT ,KC_RGHT
+ ,KC_UP
+ ,KC_SPC ,KC_ENT ,KC_DOWN
+ // right hand
+ ,KC_TRNS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_FN2
+ ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,MO(MDIA_MO)
+ ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,MO(SYMB_MO)
+ ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_RSFT
+ ,KC_0 ,KC_DOT ,KC_EQL,KC_PLUS ,KC_ENT
+ ,KC_HOME ,KC_END
+ ,KC_PGUP
+ ,KC_PGDN ,KC_BSPC ,KC_DEL
),
-/* Keymap 2: Media and mouse keys
+
+/* Keymap 3: Symbol Lock Layer
+ *
+ * ,-----------------------------------------------------. ,-----------------------------------------------------.
+ * | Lock | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | Lock |
+ * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
+ * | Media | ! | @ | { | } | & | < | | > | | | 7 | 8 | 9 | / | Media |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | | # | $ | ( | ) | ` |------| |------| / | 4 | 5 | 6 | * | |
+ * |-----------+------+------+------+------+------| Tab | | Shift|------+------+------+------+------+-----------|
+ * | Shift | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | Shift |
+ * `-----------+------+------+------+------+-------------' `------------+------+------+------+------+------------'
+ * | | | | | | | 0 | . | = | + | Entr |
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * | Left | Right| | Home | End |
+ * ,------|------|------| |------+------+------.
+ * | | | Up | | PgUp | | |
+ * |Space |Enter |------| |------|BackSp| Del |
+ * | | | Down | | PgDn | | |
+ * `--------------------' `--------------------'
+ */
+[SYMB_TG] = KEYMAP( // layer 3 : return key for symbol lock layer
+// left hand
+ MO(SYMB_XX) ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_TRNS
+,MO(MDIA_MO) ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM)
+,MO(UNLOCK) ,KC_HASH ,KC_DLR ,KC_LPRN ,KC_RPRN ,KC_GRV
+,KC_LSFT ,KC_PERC ,KC_CIRC ,KC_LBRC ,KC_RBRC ,KC_TILD ,KC_TAB
+,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_LEFT ,KC_RGHT
+ ,KC_UP
+ ,KC_SPC ,KC_ENT ,KC_DOWN
+ // right hand
+ ,KC_TRNS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,MO(SYMB_XX)
+ ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,MO(MDIA_MO)
+ ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,MO(UNLOCK)
+ ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_RSFT
+ ,KC_0 ,KC_DOT ,KC_EQL,KC_PLUS ,KC_ENT
+ ,KC_HOME ,KC_END
+ ,KC_PGUP
+ ,KC_PGDN ,KC_BSPC ,KC_DEL
+ ),
+
+/* Keymap 4: Symbol Unlock Layer
*
- * ,--------------------------------------------------. ,--------------------------------------------------.
- * | Esc |ShutDn| Sleep| Mute |Vol Dn|Vol Up| | | | |PrtSc | PgUp |MyComp| Mail | |
- * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------|
- * | | | | MsUp |ScrlUp| |ScrlUp| |ScrlUp| |ScrlUp| Up | | | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | |MsLeft|MsDown|MsRght| |------| |------| Home | Left | Down | Right| End | |
- * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------|
- * | | | |MsDown|ScrlDn| |ScrlDn| |ScrlDn| |ScrlDn| Down | | | |
- * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------'
- * | | | | Lclk | Rclk | | | PgDn | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Stop |Refrsh| | Prev | Next |
- * ,------|------|------| |------+------+------.
- * |Brwser|Brwser|Search| |VolUp | | |
- * |Back | Fwd |------| |------| Stop | Play-|
- * | | | Home | |VolDn | | Pause|
- * `--------------------' `--------------------'
+ * ,-----------------------------------------------------. ,-----------------------------------------------------.
+ * | | Esc | | | | | | | | | | | | | |
+ * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
+ * | Unlock | | | | | | | | | | | | | | Unlock |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | | | | | | |------| |------| | | | | | |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | Caps LOCK | | | | | | | | | | | | | | Caps LOCK |
+ * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
+ * | | | | | | | | | | | |
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * | | | | | |
+ * ,------|------|------| |------+------+------.
+ * | | | | | | | |
+ * | | |------| |------| | |
+ * | | | | | | | |
+ * `--------------------' `--------------------'
*/
-// MEDIA AND MOUSE
-[MDIA] = KEYMAP(
- KC_ESC, KC_PWR, KC_SLEP, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS,
- MO(MDIA), KC_TRNS, KC_TRNS, KC_MS_U, KC_WH_U, KC_TRNS, KC_WH_U,
- KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_D, KC_TRNS, KC_TRNS, KC_WH_D,
- KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_WH_D,
- KC_WSTP, KC_WREF,
- KC_WSCH,
- KC_WBAK, KC_TRNS, KC_WHOM,
+[SYMB_XX] = KEYMAP(
+// left hand
+ KC_TRNS ,KC_ESC ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,TG(MDIA_TG) ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_FN1 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_CAPS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS
+ ,KC_TRNS,KC_TRNS ,KC_TRNS
+ // right hand
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,TG(MDIA_TG)
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_FN1
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_CAPS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ),
+
+/* Keymap 5: Media Momentary Layer
+ *
+ * ,-----------------------------------------------------. ,-----------------------------------------------------.
+ * | | F11 | F12 | F13 | F14 | F15 | | | | F16 | F17 | F18 | F19 | F20 | |
+ * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
+ * | |ShutDn| | MsUp | | |ScrlUp| |ScrlUp|PrtScr| Home | Up | PgUp | Mail | |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | | Sleep|MsLeft|MsDown|MsRght| |------| |------|NumLok| Left | Down | Right|MyComp| |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | | | |MsDown| | |ScrlDn| |ScrlDn| | End | Down | PgDn | | |
+ * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
+ * | Mute |Vol Dn|Vol Up| Lclk | Rclk | |Insert|Delete| | | |
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * | Stop |Refrsh| | Prev | Next |
+ * ,------|------|------| |------+------+------.
+ * |Brwser|Brwser|Search| |VolUp | | |
+ * |Back | Fwd |------| |------| Stop | Play-|
+ * | | | Home | |VolDn | | Pause|
+ * `--------------------' `--------------------'
+ */
+[MDIA_MO] = KEYMAP(
+// left hand
+ KC_FN3 ,KC_F11 ,KC_F12 ,KC_F13 ,KC_F14 ,KC_F15 ,KC_TRNS
+,MO(MDIA_MO) ,KC_POWER,KC_TRNS ,KC_MS_U ,KC_TRNS ,KC_TRNS ,KC_WH_U
+,MO(SYMB_MO) ,KC_SLEP ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_TRNS
+,KC_LSFT ,KC_TRNS ,KC_TRNS ,KC_MS_D ,KC_TRNS ,KC_TRNS ,KC_WH_D
+,KC_MUTE ,KC_VOLD ,KC_VOLU ,KC_BTN1 ,KC_BTN2
+ ,KC_WSTP ,KC_WREF
+ ,KC_WSCH
+ ,KC_WBAK ,KC_TRNS ,KC_WHOM
// right hand
- KC_TRNS, KC_TRNS, KC_PSCR, KC_PGUP, KC_MYCM, KC_MAIL, KC_TRNS,
- KC_WH_U, KC_TRNS, KC_WH_U, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT,KC_END, KC_TRNS,
- KC_WH_D, KC_TRNS, KC_WH_D, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS,
- KC_TRNS, KC_PGDN, KC_TRNS,KC_TRNS, KC_TRNS,
- KC_MPRV, KC_MNXT,
- KC_VOLU,
- KC_VOLD, KC_MSTP, KC_MPLY
+ ,KC_TRNS ,KC_F16 ,KC_F17 ,KC_F18 ,KC_F19 ,KC_F20 ,KC_FN3
+ ,KC_WH_U ,KC_PSCR ,KC_HOME,KC_UP ,KC_PGUP ,KC_MAIL ,MO(MDIA_MO)
+ ,KC_NLCK ,KC_LEFT,KC_DOWN ,KC_RIGHT,KC_MYCM ,MO(SYMB_MO)
+ ,KC_WH_D ,KC_TRNS ,KC_END ,KC_DOWN ,KC_PGDN ,KC_TRNS ,KC_RSFT
+ ,KC_INS ,KC_DEL ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_MPRV ,KC_MNXT
+ ,KC_VOLU
+ ,KC_VOLD ,KC_MSTP ,KC_MPLY
),
+
+/* Keymap 6: Media Lock Layer
+ *
+ * ,-----------------------------------------------------. ,-----------------------------------------------------.
+ * | | F11 | F12 | F13 | F14 | F15 | | | | F16 | F17 | F18 | F19 | F20 | |
+ * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
+ * | |ShutDn| | MsUp | | |ScrlUp| |ScrlUp|PrtScr| Home | Up | PgUp | Mail | |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | | Sleep|MsLeft|MsDown|MsRght| |------| |------|NumLok| Left | Down | Right|MyComp| |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | | | |MsDown| | |ScrlDn| |ScrlDn| | End | Down | PgDn | | |
+ * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
+ * | Mute |Vol Dn|Vol Up| Lclk | Rclk | |Insert|Delete| | | |
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * | Stop |Refrsh| | Prev | Next |
+ * ,------|------|------| |------+------+------.
+ * |Brwser|Brwser|Search| |VolUp | | |
+ * |Back | Fwd |------| |------| Stop | Play-|
+ * | | | Home | |VolDn | | Pause|
+ * `--------------------' `--------------------'
+ */
+[MDIA_TG] = KEYMAP(
+// left hand
+ MO(MDIA_XX) ,KC_F11 ,KC_F12 ,KC_F13 ,KC_F14 ,KC_F15 ,KC_TRNS
+,MO(UNLOCK) ,KC_POWER,KC_TRNS ,KC_MS_U ,KC_TRNS ,KC_TRNS ,KC_WH_U
+,KC_NO ,KC_SLEP ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_TRNS
+,KC_LSFT ,KC_TRNS ,KC_TRNS ,KC_MS_D ,KC_TRNS ,KC_TRNS ,KC_WH_D
+,KC_MUTE ,KC_VOLD ,KC_VOLU ,KC_BTN1 ,KC_BTN2
+ ,KC_WSTP ,KC_WREF
+ ,KC_WSCH
+ ,KC_WBAK ,KC_TRNS ,KC_WHOM
+ // right hand
+ ,KC_TRNS ,KC_F16 ,KC_F17 ,KC_F18 ,KC_F19 ,KC_F20 ,MO(MDIA_XX)
+ ,KC_WH_U ,KC_PSCR ,KC_HOME,KC_UP ,KC_PGUP ,KC_MAIL ,MO(UNLOCK)
+ ,KC_NLCK ,KC_LEFT,KC_DOWN ,KC_RIGHT,KC_MYCM ,KC_NO
+ ,KC_WH_D ,KC_TRNS ,KC_END ,KC_DOWN ,KC_PGDN ,KC_TRNS ,KC_RSFT
+ ,KC_INS ,KC_DEL ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_MPRV ,KC_MNXT
+ ,KC_VOLU
+ ,KC_VOLD ,KC_MSTP ,KC_MPLY
+ ),
+
+/* Keymap 7: Media Unlock Layer
+ *
+ * ,-----------------------------------------------------. ,-----------------------------------------------------.
+ * | | Esc | | | | | | | | | | | | | |
+ * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
+ * | Unlock | | | | | | | | | | | | | | Unlock |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | | | | | | |------| |------| | | | | | |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | Caps LOCK | | | | | | | | | | | | | | Caps LOCK |
+ * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
+ * | | | | | | | | | | | |
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * | | | | | |
+ * ,------|------|------| |------+------+------.
+ * | | | | | | | |
+ * | | |------| |------| | |
+ * | | | | | | | |
+ * `--------------------' `--------------------'
+ */
+[MDIA_XX] = KEYMAP(
+// left hand
+ KC_TRNS ,KC_ESC ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_FN1 ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_CAPS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+
+ ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS
+ ,KC_TRNS,KC_TRNS ,KC_TRNS
+
+ // right hand
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_FN1
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_CAPS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+
+ ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ),
+
+/* Keymap 8: Unlock Layer
+ *
+ * ,-----------------------------------------------------. ,-----------------------------------------------------.
+ * | Unlock | | | | | | | | | | | | | | Unlock |
+ * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
+ * | | | | | | | | | | | | | | | |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | | | | | | |------| |------| | | | | | |
+ * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
+ * | | | | | | | | | | | | | | | |
+ * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
+ * | | | | | | | | | | | |
+ * `----------------------------------' `----------------------------------'
+ * ,-------------. ,-------------.
+ * | | | | | |
+ * ,------|------|------| |------+------+------.
+ * | | | | | | | |
+ * | | |------| |------| | |
+ * | | | | | | | |
+ * `--------------------' `--------------------'
+ */
+[UNLOCK] = KEYMAP(
+// left hand
+ KC_FN1 ,KC_ESC ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+
+ ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS
+ ,KC_TRNS,KC_TRNS ,KC_TRNS
+
+ // right hand
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_FN1
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
+
+ ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS
+ )
};
const uint16_t PROGMEM fn_actions[] = {
- [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols)
+ [1] = ACTION_LAYER_CLEAR(ON_PRESS) // FN1 - clear to base layer
+ ,[2] = ACTION_LAYER_INVERT(SYMB_TG, ON_PRESS) // FN2 - toggle to Symbols on press
+ ,[3] = ACTION_LAYER_INVERT(MDIA_TG, ON_PRESS) // FN3 - toggle to Media on press
};
const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
@@ -168,25 +440,31 @@ void matrix_init_user(void) {
// Runs constantly in the background, in a loop.
void matrix_scan_user(void) {
+ uint8_t layer = biton32(layer_state);
- uint8_t layer = biton32(layer_state);
+ // do not change lights for locking and unlocking
+ if(layer == UNLOCK || layer == LOCK || layer == SYMB_XX || layer == MDIA_XX) {
+ return;
+ }
ergodox_board_led_off();
ergodox_right_led_1_off();
ergodox_right_led_2_off();
ergodox_right_led_3_off();
- switch (layer) {
- // TODO: Make this relevant to the ErgoDox EZ.
- case 1:
- ergodox_right_led_1_on();
- break;
- case 2:
- ergodox_right_led_2_on();
- break;
- default:
- // none
- break;
+
+ // caps lock turns on red light
+ if(host_keyboard_leds() & (1<<USB_LED_CAPS_LOCK)) {
+ ergodox_right_led_1_on();
}
+ // symbol lock turns on green light
+ if(layer == SYMB_MO || layer == SYMB_TG) {
+ ergodox_right_led_2_on();
+ }
+
+ // media lock turns on blue light
+ if(layer == MDIA_MO || layer == MDIA_TG) {
+ ergodox_right_led_3_on();
+ }
};
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.png b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.png
index d5d00f2403..69af8df4e1 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.png
+++ b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.png
Binary files differ
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.txt b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.txt
index 046b75786a..04792f2dfc 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.txt
+++ b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.txt
@@ -1,24 +1,24 @@
[{x:3.5},"#\n3",{x:10.5},"*\n8"],
[{y:-0.875,x:2.5},"@\n2",{x:1},"$\n4",{x:8.5},"&\n7",{x:1},"(\n9"],
[{y:-0.875,x:5.5},"%\n5",{c:"#ff4444"},"Esc",{x:4.5,c:"#cccccc"},"_\n\n\n\n\n\n-","^\n6"],
-[{y:-0.875,c:"#73ab6a",w:1.5},"~\n\n\n\n\n\n`",{c:"#cccccc"},"!\n1",{x:14.5},")\n0",{w:1.5},"+\n\n\n\n\n\n="],
-[{y:-0.375,x:3.5},"E",{x:10.5},"I"],
+[{y:-0.875,c:"#2277ff",w:1.5},"Shift\n\n~\n\n\n\nLock\n`",{c:"#cccccc"},"!\n1",{x:14.5},")\n0",{c:"#2277ff",w:1.5},"+\n\nShift\n\n\n\n=\nLock"],
+[{y:-0.375,x:3.5,c:"#cccccc"},"E",{x:10.5},"I"],
[{y:-0.875,x:2.5},"W",{x:1},"R",{x:8.5},"U",{x:1},"O"],
[{y:-0.875,x:5.5},"T",{h:1.5},"{\n\n\n\n\n\n[",{x:4.5,h:1.5},"}\n\n\n\n\n\n]","Y"],
-[{y:-0.875,c:"#73ab6a",w:1.5},"Tab",{c:"#cccccc"},"Q",{x:14.5},"P",{c:"#2277ff",fa:[0,0,0,1],w:1.5},"|\n\\\nMedia\nL2"],
+[{y:-0.875,c:"#2277ff",w:1.5},"Media\n\nTab\n\n\n\nShift",{c:"#cccccc"},"Q",{x:14.5},"P",{c:"#2277ff",w:1.5},"|\n\\\nMedia\n\n\n\n\nShift"],
[{y:-0.375,x:3.5,c:"#cccccc"},"D",{x:10.5},"K"],
[{y:-0.875,x:2.5},"S",{x:1},"F",{x:8.5},"J",{x:1},"L"],
[{y:-0.875,x:5.5},"G",{x:6.5},"H"],
-[{y:-0.875,c:"#2277ff",w:1.5},"Symbols\n\n\nL1",{c:"#cccccc"},"A",{x:14.5},":\n;",{c:"#2277ff",w:1.5},"\"\n'\nSymbols\nL1"],
-[{y:-0.625,x:6.5,c:"#bfbf67",h:1.5},"< Tab\n\n\nShift Tab",{x:4.5,h:1.5},"Tab >\n\n\nTab"],
+[{y:-0.875,c:"#2277ff",w:1.5},"Symbols\n\n\n\n\n\nShift",{c:"#cccccc"},"A",{x:14.5},":\n;",{c:"#2277ff",w:1.5},"\"\n'\nSymbols\n\n\n\n\nShift"],
+[{y:-0.625,x:6.5,c:"#54d6de",fa:[0,0,0,1],h:1.5},"< Tab\n\n\nShift Tab",{x:4.5,h:1.5},"Tab >\n\n\nTab"],
[{y:-0.75,x:3.5,c:"#cccccc"},"C",{x:10.5},"<\n,"],
[{y:-0.875,x:2.5},"X",{x:1},"V",{x:8.5},"M",{x:1},">\n."],
[{y:-0.875,x:5.5},"B",{x:6.5},"N"],
-[{y:-0.875,c:"#2277ff",w:1.5},"Capitals\n\n\nShift",{c:"#cccccc"},"Z",{x:14.5},"?\n/",{c:"#2277ff",w:1.5},"\n\nCapitals\nShift"],
+[{y:-0.875,c:"#2277ff",fa:[0,1,0,1,0,0,0],w:1.5},"Capitals\nShift\n\n\n\n\nShift",{c:"#cccccc"},"Z",{x:14.5,f:3},"?\n/",{c:"#2277ff",w:1.5},"\n\nCapitals\nShift\n\n\n\nShift"],
[{y:-0.375,x:3.5,c:"#77aaff"},"Option\n\n\nLAlt",{x:10.5},"Option\n\n\nRAlt"],
[{y:-0.875,x:2.5},"Hyper",{x:1},"Cmd\n\n\nSuper",{x:8.5},"Cmd\n\n\nSuper",{x:1},"Hyper"],
[{y:-0.75,x:0.5},"Ctrl\n\n\nLCtrl","Meh",{x:14.5},"Meh","Ctrl\n\n\nRCtrl"],
-[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#bfbf67"},"Home","End"],
+[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#54d6de"},"Home","End"],
[{h:2},"< Del\n\n\nBackspace",{h:2},"Del >\n\n\nDelete","Page\n\n\n\n\n\nUp"],
[{x:2},"Page\n\n\n\n\n\nDown"],
[{r:-30,rx:13,y:-1,x:-3},"Left","Right"],
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.png b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.png
index 89d15e4506..9c0e8bba39 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.png
+++ b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.png
Binary files differ
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.txt b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.txt
index 4237f08201..c7bd272eca 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.txt
+++ b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.txt
@@ -1,27 +1,27 @@
-[{x:3.5,c:"#9988bb"},"Vol\n\n\n\n\n\nMute",{x:10.5,c:"#ccffff"},"Page\n\n\n\n\n\nUp"],
-[{y:-0.875,x:2.5,c:"#9988bb"},"Sleep",{x:1},"Vol\n\n\n\n\n\nDown",{x:8.5},"Print\n\n\n\n\n\nScreen",{x:1},"Home\n\n\n\n\n\nDir"],
-[{y:-0.875,x:5.5},"Vol\n\n\n\n\n\nUp",{c:"#ff4444"},"Esc",{x:4.5,c:"#cccccc",a:7},"",""],
-[{y:-0.875,c:"#ff4444",a:4,w:1.5},"Esc",{c:"#9988bb"},"Shut\n\n\n\n\n\nDown",{x:14.5},"Email",{c:"#cccccc",a:7,w:1.5},""],
-[{y:-0.375,x:3.5,c:"#ccffff",a:4},"Mouse\n\n\n\n\n\nUp",{x:10.5},"Cursor\n\n\n\n\n\nUp"],
-[{y:-0.875,x:2.5,c:"#cccccc",a:7},"",{x:1,c:"#99ffff",a:4},"Scroll\n\n\n\n\n\nUp",{x:8.5},"Scroll\n\n\n\n\n\nUp",{x:1,c:"#cccccc",a:7},""],
-[{y:-0.875,x:5.5},"",{c:"#99ffff",a:4,h:1.5},"Scroll\n\n\n\n\n\nUp",{x:4.5,h:1.5},"Scroll\n\n\n\n\n\nUp",{c:"#cccccc",a:7},""],
-[{y:-0.875,c:"#000000",t:"#ff0000",a:4,fa:[0,0,0,1],w:1.5},"Media\n\n\nL2",{c:"#cccccc",t:"#000000",a:7},"",{x:14.5},"",{c:"#000000",t:"#ff0000",a:4,w:1.5},"\n\nMedia\nL2"],
-[{y:-0.375,x:3.5,c:"#ccffff",t:"#000000"},"Mouse\n\n\n\n\n\nDown",{x:10.5},"Cursor\n\n\n\n\n\nDown"],
+[{x:3.5,c:"#99de2a"},"F13",{x:10.5},"F18"],
+[{y:-0.875,x:2.5},"F12",{x:1},"F14",{x:8.5},"F17",{x:1},"F19"],
+[{y:-0.875,x:5.5},"F15",{c:"#ff4444"},"Esc",{x:4.5,c:"#cccccc",a:7},"",{c:"#99de2a",a:4},"F16"],
+[{y:-0.875,c:"#2277ff",w:1.5},"Shift\n\n\n\n\n\nLock",{c:"#99de2a"},"F11",{x:14.5},"F20",{c:"#2277ff",w:1.5},"\n\nShift\n\n\n\n\nLock"],
+[{y:-0.375,x:3.5,c:"#ff8500"},"Mouse\n\n\n\n\n\nUp",{x:10.5},"Cursor\n\n\n\n\n\nUp"],
+[{y:-0.875,x:2.5,c:"#cccccc",a:7},"",{x:1,c:"#ffb063",a:4},"Scroll\n\n\n\n\n\nUp",{x:8.5},"Home",{x:1},"Page\n\n\n\n\n\nUp"],
+[{y:-0.875,x:5.5,c:"#cccccc",a:7},"",{c:"#ffb063",a:4,h:1.5},"Scroll\n\n\n\n\n\nUp",{x:4.5,h:1.5},"Scroll\n\n\n\n\n\nUp",{c:"#e6e067"},"Print\n\n\n\n\n\nScreen"],
+[{y:-0.875,c:"#000000",t:"#ff0000",w:1.5},"Media\n\n\n\n\n\nShift",{c:"#e6e067",t:"#000000"},"Shut\n\n\n\n\n\nDown",{x:14.5},"Mail",{c:"#000000",t:"#ff0000",w:1.5},"\n\nMedia\n\n\n\n\nShift"],
+[{y:-0.375,x:3.5,c:"#ff8500",t:"#000000"},"Mouse\n\n\n\n\n\nDown",{x:10.5},"Cursor\n\n\n\n\n\nDown"],
[{y:-0.875,x:2.5},"Mouse\n\n\n\n\n\nLeft",{x:1},"Mouse\n\n\n\n\n\nRight",{x:8.5},"Cursor\n\n\n\n\n\nLeft",{x:1},"Cursor\n\n\n\n\n\nRight"],
-[{y:-0.875,x:5.5,c:"#cccccc",a:7},"",{x:6.5,c:"#ccffff",a:4},"Home"],
-[{y:-0.875,c:"#000000",t:"#ff0000",w:1.5},"Symbols\n\n\nL1",{c:"#cccccc",t:"#000000",a:7},"",{x:14.5,c:"#ccffff",a:4},"End",{c:"#cccccc",a:7,w:1.5},""],
-[{y:-0.625,x:6.5,c:"#99ffff",a:4,h:1.5},"Scroll\n\n\n\n\n\nDown",{x:4.5,h:1.5},"Scroll\n\n\n\n\n\nDown"],
-[{y:-0.75,x:3.5,c:"#ccffff"},"Mouse\n\n\n\n\n\nDown",{x:10.5},"Cursor\n\n\n\n\n\nDown"],
-[{y:-0.875,x:2.5,c:"#cccccc",a:7},"",{x:1,c:"#99ffff",a:4},"Scroll\n\n\n\n\n\nDown",{x:8.5},"Scroll\n\n\n\n\n\nDown",{x:1,c:"#cccccc",a:7},""],
-[{y:-0.875,x:5.5},"",{x:6.5},""],
-[{y:-0.875,w:1.5},"","",{x:14.5},"",{w:1.5},""],
-[{y:-0.375,x:3.5,c:"#ccffff",a:4},"Left\n\n\n\n\n\nClick",{x:10.5},"Page\n\n\n\n\n\nDown"],
-[{y:-0.875,x:2.5,c:"#cccccc",a:7},"",{x:1,c:"#ccffff",a:4},"Right\n\n\n\n\n\nClick",{x:8.5,c:"#cccccc",a:7},"",{x:1},""],
-[{y:-0.75,x:0.5},"","",{x:14.5},"",""],
-[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#bbaacc",a:4},"Stop\n\n\nBrowser","Reload\n\n\nBrowser"],
+[{y:-0.875,x:5.5,c:"#cccccc",a:7},"",{x:6.5,c:"#e6e067",a:4},"Num\n\n\n\n\n\nLock"],
+[{y:-0.875,c:"#cccccc",a:7,w:1.5},"",{c:"#e6e067",a:4},"Sleep",{x:14.5},"My\n\n\n\n\n\nComp",{c:"#cccccc",a:7,w:1.5},""],
+[{y:-0.625,x:6.5,c:"#ffb063",a:4,h:1.5},"Scroll\n\n\n\n\n\nDown",{x:4.5,h:1.5},"Scroll\n\n\n\n\n\nDown"],
+[{y:-0.75,x:3.5,c:"#ff8500"},"Mouse\n\n\n\n\n\nDown",{x:10.5},"Cursor\n\n\n\n\n\nDown"],
+[{y:-0.875,x:2.5,c:"#cccccc",a:7},"",{x:1,c:"#ffb063",a:4},"Scroll\n\n\n\n\n\nDown",{x:8.5},"End",{x:1},"Page\n\n\n\n\n\nDown"],
+[{y:-0.875,x:5.5,c:"#cccccc",a:7},"",{x:6.5},""],
+[{y:-0.875,c:"#2277ff",a:4,fa:[0,1,0,0,0,0,0],w:1.5},"Capitals\nShift\n\n\n\n\nShift",{c:"#cccccc",a:7},"",{x:14.5},"",{c:"#2277ff",a:4,fa:[0,1,0,1],w:1.5},"\n\nCapitals\nShift\n\n\n\nShift"],
+[{y:-0.375,x:3.5,c:"#ff8500"},"Left\n\n\n\n\n\nClick",{x:10.5,c:"#ffb063"},"Delete"],
+[{y:-0.875,x:2.5,c:"#e6e067"},"Vol\n\n\n\n\n\nUp",{x:1,c:"#ff8500"},"Right\n\n\n\n\n\nClick",{x:8.5,c:"#ffb063"},"Insert",{x:1,c:"#cccccc",a:7},""],
+[{y:-0.75,x:0.5,c:"#e6e067",a:4},"Mute","Vol\n\n\n\n\n\nDown",{x:14.5,c:"#cccccc",a:7},"",""],
+[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#cfc82b",a:4},"Stop\n\n\nBrowser","Reload\n\n\nBrowser"],
[{h:2},"< Web\n\n\nBrowser",{h:2},"Web >\n\n\nBrowser","Search\n\n\nBrowser"],
[{x:2},"Home\n\n\nBrowser"],
[{r:-30,rx:13,y:-1,x:-3},"Prev\n\n\nAudio\n\n\nTrack","Next\n\n\nAudio\n\n\nTrack"],
-[{x:-3,c:"#9988bb"},"Vol\n\n\n\n\n\nUp",{c:"#bbaacc",h:2},"Stop\n\n\nAudio",{h:2},"Play\n\n\nAudio\n\n\nPause"],
-[{x:-3,c:"#9988bb"},"Vol\n\n\n\n\n\nDown"]
+[{x:-3,c:"#e6e067"},"Vol\n\n\n\n\n\nUp",{c:"#cfc82b",h:2},"Stop\n\n\nAudio",{h:2},"Play\n\n\nAudio\n\n\nPause"],
+[{x:-3,c:"#e6e067"},"Vol\n\n\n\n\n\nDown"]
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.png b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.png
index 7522af3330..2538fbeb30 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.png
+++ b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.png
Binary files differ
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt
index dda15f71be..098a08d2f1 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt
+++ b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt
@@ -1,24 +1,24 @@
-[{x:3.5,c:"#a3a3a3"},"F3",{x:10.5},"F8"],
+[{x:3.5,c:"#99de2a"},"F3",{x:10.5},"F8"],
[{y:-0.875,x:2.5},"F2",{x:1},"F4",{x:8.5},"F7",{x:1},"F9"],
-[{y:-0.875,x:5.5},"F5",{c:"#ff4444"},"Esc",{x:4.5,c:"#cccccc",a:7},"",{c:"#a3a3a3",a:4},"F6"],
-[{y:-0.875,c:"#ff4444",w:1.5},"Esc",{c:"#a3a3a3"},"F1",{x:14.5},"F10",{w:1.5},"F11"],
-[{y:-0.375,x:3.5,c:"#bbc6ed"},"{",{x:10.5,c:"#bed4ba"},"8"],
-[{y:-0.875,x:2.5,c:"#bbc6ed"},"@",{x:1},"}",{x:8.5,c:"#bed4ba"},"7",{x:1},"9"],
-[{y:-0.875,x:5.5,c:"#bbc6ed"},"&",{h:1.5},"<",{x:4.5,h:1.5},">","|"],
-[{y:-0.875,c:"#2277ff",fa:[0,0,0,1],w:1.5},"Media\n\n\nL2",{c:"#bbc6ed"},"!",{x:14.5,c:"#bed4ba"},"/",{c:"#a3a3a3",w:1.5},"F12"],
-[{y:-0.375,x:3.5,c:"#bbc6ed"},"(",{x:10.5,c:"#bed4ba"},"5"],
-[{y:-0.875,x:2.5,c:"#bbc6ed"},"$",{x:1},")",{x:8.5,c:"#bed4ba"},"4",{x:1},"6"],
-[{y:-0.875,x:5.5,c:"#bbc6ed"},"`",{x:6.5},"/"],
-[{y:-0.875,c:"#000000",t:"#ff0000",w:1.5},"Symbols\n\n\nL1",{c:"#bbc6ed",t:"#000000"},"#",{x:14.5,c:"#bed4ba"},"*",{c:"#000000",t:"#ff0000",w:1.5},"\n\nSymbols\nL1"],
-[{y:-0.625,x:6.5,c:"#bfbf67",t:"#000000",h:1.5},"Tab >\n\n\nTab",{x:4.5,h:1.5},"< Tab\n\n\nShift Tab"],
-[{y:-0.75,x:3.5,c:"#bbc6ed"},"[",{x:10.5,c:"#bed4ba"},"2"],
-[{y:-0.875,x:2.5,c:"#bbc6ed"},"^",{x:1},"]",{x:8.5,c:"#bed4ba"},"1",{x:1},"3"],
-[{y:-0.875,x:5.5,c:"#bbc6ed"},"~",{x:6.5},"\\"],
-[{y:-0.875,c:"#cccccc",a:7,w:1.5},"",{c:"#bbc6ed",a:4},"%",{x:14.5,c:"#bed4ba"},"-",{c:"#2277ff",w:1.5},"\n\nCaps Lock"],
-[{y:-0.375,x:3.5,c:"#cccccc",a:7},"",{x:10.5,c:"#bed4ba",a:4},"."],
-[{y:-0.875,x:2.5,c:"#cccccc",a:7},"",{x:1},"",{x:8.5,c:"#bed4ba",a:4},"0",{x:1},"="],
-[{y:-0.75,x:0.5,c:"#cccccc",a:7},"","",{x:14.5,c:"#bed4ba",a:4},"+","Enter"],
-[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#bfbf67"},"Left","Right"],
+[{y:-0.875,x:5.5},"F5",{c:"#ff4444"},"Esc",{x:4.5,c:"#cccccc",a:7},"",{c:"#99de2a",a:4},"F6"],
+[{y:-0.875,c:"#2277ff",w:1.5},"Shift\n\n\n\n\n\nLock",{c:"#99de2a"},"F1",{x:14.5},"F10",{c:"#2277ff",w:1.5},"\n\nShift\n\n\n\n\nLock"],
+[{y:-0.375,x:3.5,c:"#c4e0bf"},"{",{x:10.5,c:"#89b087"},"8"],
+[{y:-0.875,x:2.5,c:"#c4e0bf"},"@",{x:1},"}",{x:8.5,c:"#89b087"},"7",{x:1},"9"],
+[{y:-0.875,x:5.5,c:"#c4e0bf"},"&",{h:1.5},"<",{x:4.5,h:1.5},">","|"],
+[{y:-0.875,c:"#2277ff",w:1.5},"Media\n\n\n\n\n\nShift",{c:"#c4e0bf"},"!",{x:14.5,c:"#89b087"},"/",{c:"#2277ff",w:1.5},"\n\nMedia\n\n\n\n\nShift"],
+[{y:-0.375,x:3.5,c:"#c4e0bf"},"(",{x:10.5,c:"#89b087"},"5"],
+[{y:-0.875,x:2.5,c:"#c4e0bf"},"$",{x:1},")",{x:8.5,c:"#89b087"},"4",{x:1},"6"],
+[{y:-0.875,x:5.5,c:"#c4e0bf"},"`",{x:6.5},"/"],
+[{y:-0.875,c:"#000000",t:"#ff0000",w:1.5},"Symbols\n\n\n\n\n\nShift",{c:"#c4e0bf",t:"#000000"},"#",{x:14.5,c:"#89b087"},"*",{c:"#000000",t:"#ff0000",w:1.5},"\n\nSymbols\n\n\n\n\nShift"],
+[{y:-0.625,x:6.5,c:"#54d6de",t:"#000000",fa:[0,0,0,1],h:1.5},"Tab >\n\n\nTab",{x:4.5,h:1.5},"< Tab\n\n\nShift Tab"],
+[{y:-0.75,x:3.5,c:"#c4e0bf"},"[",{x:10.5,c:"#89b087"},"2"],
+[{y:-0.875,x:2.5,c:"#c4e0bf"},"^",{x:1},"]",{x:8.5,c:"#89b087"},"1",{x:1},"3"],
+[{y:-0.875,x:5.5,c:"#c4e0bf"},"~",{x:6.5},"\\"],
+[{y:-0.875,c:"#2277ff",f2:1,w:1.5},"Capitals\nShift\n\n\n\n\nShift",{c:"#c4e0bf"},"%",{x:14.5,c:"#89b087"},"-",{c:"#2277ff",fa:[0,1,0,1],w:1.5},"\n\nCapitals\nShift\n\n\n\nShift"],
+[{y:-0.375,x:3.5,c:"#cccccc",a:7},"",{x:10.5,c:"#89b087",a:4},"."],
+[{y:-0.875,x:2.5,c:"#cccccc",a:7},"",{x:1},"",{x:8.5,c:"#89b087",a:4},"0",{x:1},"="],
+[{y:-0.75,x:0.5,c:"#cccccc",a:7},"","",{x:14.5,c:"#89b087",a:4},"+","Enter"],
+[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#54d6de"},"Left","Right"],
[{h:2},"Space",{h:2},"Enter","Up"],
[{x:2},"Down"],
[{r:-30,rx:13,y:-1,x:-3},"Home","End"],
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/ordinary.hex b/keyboard/ergodox_ez/keymaps/ordinary/ordinary.hex
index 1a08598465..b726e5e92a 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/ordinary.hex
+++ b/keyboard/ergodox_ez/keymaps/ordinary/ordinary.hex
@@ -1,1119 +1,1189 @@
-:100000000C9465020C94A9020C94A9020C94A90208
-:100010000C94A9020C94A9020C94A9020C94A902B4
-:100020000C94A9020C94A9020C94B00B0C94820CB1
-:100030000C94A9020C94A9020C94A9020C94A90294
-:100040000C94A9020C940B210C94A9020C94A90203
-:100050000C94A9020C94AD1A0C94A9020C94A90258
-:100060000C94A9020C94A9020C94A9020C94A90264
-:100070000C94A9020C94A9020C94A9020C94A90254
-:100080000C94A9020C94A9020C94A9020C94A90244
-:100090000C94A9020C94A9020C94A9020C94A90234
-:1000A0000C94A9020C94A9020C94A902E70C090D66
-:1000B000F40D090DF40D4B0D6E0DF40DC30DD60DA1
-:1000C000C310C310F110F11033116F116F136F13C0
-:1000D00087116F137E127E1249136F136F135D1316
-:1000E0000000F0A135002B000152E100E00000000B
-:1000F0001E00140004001D7100774E001F001A003E
-:1001000016001B00007F4C002000080007000600BE
-:10011000E2002A002100150009001900E3004B004D
-:10012000220017000A00050000004A0029002F00E5
-:1001300000002B0200004D002D00300000002B00BD
-:100140000000500023001C000B00110000004F00B5
-:10015000240018000D001000E700520025000C00DC
-:100160000E003600E6002C00260012000F003700BB
-:10017000007F2800270013003300387100775100FA
-:100180002E0031823481E500E40000002900025293
-:1001900001000100010000003A001E0220022202BC
-:1001A000010051003B001F02210223020100280030
-:1001B0003C002F0226022F0001002C003D003002DF
-:1001C00027023000010052003E00240235003502B3
-:1001D000000050000100360200002B0000004F001C
-:1001E0000100370200002B0200004A003F003102EC
-:1001F0003800310000004D0040005F005C005900F5
-:1002000062004B00410060005D005A0037004C0066
-:10021000420061005E005B0067002A00430054005A
-:100220005500560057004E004400450001003900BB
-:1002300058000000290002520100010001000000E6
-:10024000A5000100010001000100B500A6000100A9
-:10025000F200010001000100A800F000F100F1002F
-:10026000F400B600AA00F900F3000100FA00B4009F
-:10027000A9000100010001000000B8000100F90020
-:100280000000FA000000B9000100F9000000FA00C7
-:100290000000AC00010001004A0001000000AB00BA
-:1002A0004600F9005000FA000100A9004B0052007E
-:1002B000510051004E00AE00B30001004F0001009C
-:1002C0000100AD00B10001004D0001000100AA00D5
-:1002D00001000100010001000100000016034500BB
-:1002E000720067006F0044006F0078002000450036
-:1002F0005A00000016034500720067006F004400BA
-:100300006F007800200045005A0000000403090433
-:1003100009026D00040100A0FA09040000010301B4
-:100320000100092111010001223F00070581030896
-:10033000000A090401000103010200092111010062
-:1003400001224D000705820308000A09040200018A
-:100350000300000009211101000122360007058376
-:100360000308000A09040300010300000009211129
-:100370000100012239000705840310000112011059
-:100380000100000008EDFE07130100010200010555
-:10039000010906A101050719E029E71500250195C6
-:1003A0000875018102050819012905950575019156
-:1003B000029501750391010507190029771500259C
-:1003C00001957875018102C005010980A1018502AE
-:1003D00016010026B7001A01002AB7007510950112
-:1003E0008100C0050C0901A1018503160100269CAE
-:1003F000021A01002A9C02751095018100C00501B6
-:100400000902A1010901A100050919012905150029
-:10041000250195057501810295017503810105018D
-:10042000093009311581257F950275088106093843
-:100430001581257F950175088106050C0A3802157E
-:1004400081257F950175088106C0C005010906A1B7
-:1004500001050719E029E7150025019508750181B7
-:100460000295017508810105081901290595057591
-:100470000191029501750391010507190029FF15E6
-:100480000025FF950675088100C0000000000000EF
-:100490000000000000010204060A0F17202C3A4A4F
-:1004A0005D71879DB3C7DAE9F5FCFFFCF5E9DAC7B2
-:1004B000B39D87715D4A3A2C20170F0A060402018A
-:1004C0000000000000000000000011241FBECFEF5C
-:1004D000DAE0DEBFCDBF04B603FE24C08091EE019A
-:1004E0009091EF01A091F001B091F1018730904B14
-:1004F000A740B04BB9F41092EE011092EF011092A8
-:10050000F0011092F10114BE84B7877F84BF88E1A7
-:100510000FB6F89480936000109260000FBEE0E088
-:10052000FFE3099511E0A0E0B1E0EAE9F5E402C0DB
-:1005300005900D92A433B107D9F721E0A4E3B1E00F
-:1005400001C01D92AE3EB207E1F70E94F6080C947E
-:10055000CB220C94000061110BC0FC018281882326
-:1005600021F085EE0E94570F03C085EE0E941F10F8
-:1005700080E090E0089508956091B1017091B2011A
-:100580008091B3019091B4010E94D91956985E9858
-:1005900025982D9826982E9827982F98813019F015
-:1005A000823021F00895259A2D9A0895269A2E9A40
-:1005B00008950C94BC0256985E9825982D9826981C
-:1005C0002E9827982F988FEF90E090938900809332
-:1005D000880090938B0080938A0090938D00809385
-:1005E0008C00259A2D9A2FEF80E792E021508040D1
-:1005F0009040E1F700C00000269A2E9A2FEF80E786
-:1006000092E0215080409040E1F700C00000279A1E
-:100610002F9A2FEF80E792E0215080409040E1F741
-:1006200000C0000025982D982FEF80E792E0215020
-:1006300080409040E1F700C0000026982E982FEFF0
-:1006400080E792E0215080409040E1F700C0000038
-:1006500027982F9856985E9825982D9826982E982A
-:1006600027982F98089589EA8093800089E08093E5
-:10067000810024982C983F988AB18F748AB96E981B
-:10068000479A8BB1806B8BB9769A0E94DB020C94EF
-:10069000BB0280E2809300018091340181110EC081
-:1006A0000E94980381E0809334012FEF83ED90E363
-:1006B000215080409040E1F700C0000080E40E949B
-:1006C0009E038093000181112EC00E94C803809375
-:1006D0000001811128C00E94C8038093000181118C
-:1006E00022C08FE30E94C8038093000181111BC0C8
-:1006F0000E94C00380E40E949E0380930001811148
-:1007000012C08CE00E94C8038093000181110BC0CD
-:100710000E94C80380930001811105C08FE30E94ED
-:10072000C803809300010E94C003809100010895D6
-:100730001092B9008AE08093B800089594EA9093EB
-:10074000BC009091BC0097FFFCCF9091B900987FBE
-:10075000983021F0903111F081E008958093BB0032
-:1007600084E88093BC008091BC0087FFFCCF80911F
-:10077000B900887F883111F0803471F780E00895E6
-:1007800084E98093BC008091BC0084FDFCCF089577
-:100790008093BB0084E88093BC008091BC0087FFFD
-:1007A000FCCF9091B900987F81E0983209F480E005
-:1007B000089584E88093BC008091BC0087FFFCCF43
-:1007C0008091BB00089580910001811115C080E4E3
-:1007D0000E949E038093000181110CC082E10E945F
-:1007E000C80380930001811105C08FEF0E94C803E8
-:1007F000809300010E94C00384B1807F84B985B1D9
-:10080000807F85B98AB1837F8AB98BB1837F8BB9A9
-:100810003E98469808950E944903809300010E94E3
-:10082000E30380B38C7080BB81B3836F81BBE4E44E
-:10083000F1E0A6E3B1E011921D9281E0E235F80704
-:10084000D1F70C943303BF92CF92DF92EF92FF92D5
-:100850000F931F93CF93DF9380910001882379F04A
-:10086000809135018F5F80933501811108C00E940E
-:10087000490380930001811102C00E94DB0206E35C
-:1008800011E0C0E0D0E0DD24D39482E0C82EEE2455
-:10089000E394F12CC73000F580910001811162C012
-:1008A00080E40E949E0380930001811112C082E1C6
-:1008B0000E94C8038093000181110BC0C7010C2E58
-:1008C00001C0880F0A94EAF780950E94C8038093BC
-:1008D00000010E94C00346C0CA30A1F028F4C8300D
-:1008E00059F0C93061F005C0CC3089F070F0CD30DE
-:1008F00089F0209A289810C0219A29980DC0229A30
-:100900002A980AC0239A2B9807C0529A01C0539A7A
-:100910005B9802C03E9A4698E0EAEA95F1F78FB1FB
-:1009200079995AC092E081708D25892B7C9B02C0F9
-:1009300090E001C094E0892B7D9B02C090E001C053
-:1009400098E0892B7E9B02C090E001C090E1892B4A
-:100950009FB19095991F9927991F9295990F907E15
-:10096000892B0FC08091000181114BC080E40E944F
-:100970009E0380930001882389F1B12C0E94C0035B
-:100980008B2DF8019081981719F08083C092010196
-:100990000E94E30321960F5F1F4FCE30D10509F06F
-:1009A00079CF80910101882371F1815080930101F9
-:1009B000882339F08FE99FE00197F1F700C000002C
-:1009C00022C0A4E4B1E0E6E3F1E081918D9391E0EF
-:1009D000E434F907D1F717C090E0A5CF83E10E9476
-:1009E000C803809300018111C8CF81E40E949E0357
-:1009F000809300018111C1CF0E94D903B82EB09419
-:100A0000BDCF80E0BECF0E94D90281E0DF91CF91BF
-:100A10001F910F91FF90EF90DF90CF90BF900895BE
-:100A2000E82FF0E0EC5BFE4F8081089508958B3B4A
-:100A3000910578F4883A910540F5853A9105D0F40E
-:100A40008430910508F0B1C08130910509F4ADC042
-:100A50006BC0803E910508F467C0883E910508F49C
-:100A6000A4C09C01205F31092031310508F05CC031
-:100A700090650895853A910509F459C0863A910523
-:100A800009F458C083E890E40895883A910509F480
-:100A900054C0893A910509F453C08A3A910509F482
-:100AA00052C08B3A910509F451C08C3A910509F472
-:100AB00050C08D3A910509F44FC0803B910509F46F
-:100AC0004EC08E3A910509F44DC08F3A910509F454
-:100AD0004CC0813B910509F44BC0823B910509F460
-:100AE0004AC0833B910509F449C0843B910509F450
-:100AF00048C0853B910509F447C0863B910509F440
-:100B000046C0873B910509F445C0883B910509F42F
-:100B100044C0893B910509F443C08A3B910509F023
-:100B200042C08AE296E4089580E090E0089581E86A
-:100B300090E4089582E890E4089582EE94E40895A4
-:100B400089EE94E408958AEE94E4089585EB94E4A4
-:100B5000089586EB94E4089587EB94E408958CEC73
-:100B600094E408958DEC94E4089583E895E4089561
-:100B70008AE895E4089582E995E4089584E995E486
-:100B8000089581E296E4089583E296E4089584E26C
-:100B900096E4089585E296E4089586E296E4089541
-:100BA00087E296E4089580E094E40895089596E03D
-:100BB000799FF001112494E5899FE00DF11D112426
-:100BC000E60FF11DEE0FFF1FEC51FF4F8591949141
-:100BD0000895880F991F805A9040FC018591949147
-:100BE0000895880F991F80529F4FFC018591949121
-:100BF000089526E0729FF001112444E5849FE00DE2
-:100C0000F11D1124E60FF11DEE0FFF1FEC51FF4FF8
-:100C100025913491C9019A9581159F4110F4C9011C
-:100C20000895C90190528115904128F4C9019F701F
-:100C30000E94F1050895C90190538115904120F457
-:100C4000C9019927906C0895211580E5380769F44A
-:100C50000E9490139FEF24E34CE0915020404040CD
-:100C6000E1F700C000000C94D21A213080E538076B
-:100C700031F48091CC0181608093CC010895C90149
-:100C800090558115904108F050C0832F99278F709F
-:100C9000992781309105D9F4A9014370552702C0E5
-:100CA000880F991F4A95E2F79C68A90164E0440FF8
-:100CB000551F6A95E1F744275370842B952B73E0F9
-:100CC000220F331F7A95E1F7207633271DC082303B
-:100CD000910529F4922F8827816F906A08958330B7
-:100CE0009105A9F4A9014370552781E090E002C065
-:100CF000880F991F4A95E2F79C6843E0220F331F43
-:100D00004A95E1F7207E3770822B932B0895049744
-:100D1000F1F4A9014370552781E090E002C0880FEB
-:100D2000991F4A95E2F79A68E8CFC9019057811553
-:100D3000904120F4C9019F7090620895C9019058B4
-:100D40008115904120F4C9019F70906A0895203E5A
-:100D50003105E0F4203C310558F52133310509F423
-:100D600070C048F42932310509F464C02A323105D3
-:100D700009F46EC074C029333105F1F02238310511
-:100D8000D9F02533310509F44EC069C0233E310541
-:100D900089F138F4203E3105C1F0223E3105E1F001
-:100DA0005EC0263E310569F1273E3105A9F157C0E5
-:100DB000C9010E94E90508958091DF0180FD02C00C
-:100DC00081FF4DC080EE90E04BC08091DF0180FF3D
-:100DD000F9CF89E390E044C08091DF0182FF0EC02B
-:100DE0008091DF0184FF03C080E090E039C083EE92
-:100DF00090E036C08091DF0182FFF2CF82EE90E07A
-:100E00002FC08091DF0183FF0BC08091DF0184FD43
-:100E1000EBCF87EE90E024C08091DF0183FFF5CF18
-:100E200086EE90E01DC08091DF0185FF07C089E25A
-:100E300090E016C08091DF0185FFF9CF85E390E057
-:100E40000FC08091DF0186FF07C08AE290E008C0F2
-:100E50008091DF0186FFF9CF81E390E001C0C901F5
-:100E60000E941705089508950C943307809162013C
-:100E70000895CF93DF9300D01F92CDB7DEB72091B6
-:100E8000E501243019F523E029839B838A8320938D
-:100E9000E9008FEF9091E800815095FD06C095ED37
-:100EA0009A95F1F700008111F5CF8091E80085FF58
-:100EB0000DC040E050E063E070E0CE0101960E947A
-:100EC000A3098091E8008E778093E8000F900F903F
-:100ED0000F90DF91CF910895CF93DF9300D01F92B1
-:100EE000CDB7DEB72091E501243021F522E029833A
-:100EF0009B838A8383E08093E9008FEF9091E800E1
-:100F0000815095FD06C095ED9A95F1F7000081118D
-:100F1000F5CF8091E80085FF0DC040E050E063E030
-:100F200070E0CE0101960E94A3098091E8008E77BF
-:100F30008093E8000F900F900F90DF91CF9108956C
-:100F40002091E5012430F1F422E02093E9002FEF15
-:100F50003091E800215035FD06C035ED3A95F1F7A6
-:100F600000002111F5CF2091E80025FF0BC040E0E3
-:100F700050E065E070E00E94A3098091E8008E7760
-:100F80008093E8000895CF93DF93EC018091E50111
-:100F9000843009F046C090910C019923D9F09091CA
-:100FA0000D019923B9F08093E9008FEF9091E8004B
-:100FB000815095FD06C095E19A95F1F700008111E9
-:100FC000F5CF8091E80085FF2CC040E050E060E163
-:100FD00070E017C081E08093E9008FEF9091E80006
-:100FE000815095FD06C095ED9A95F1F700008111AD
-:100FF000F5CF8091E80085FF14C040E050E068E044
-:1010000070E0CE010E94A3098091E8008E77809362
-:10101000E80080E1FE01A2E5B1E001900D928A9521
-:10102000E1F7DF91CF9108958091E401811109C02A
-:101030000E94350B0E94920B8091E20084608093A5
-:10104000E20008951092E401089508950C94F820A8
-:101050000E94691A0E94FE200E942F0E0C943407F1
-:1010600042E061EC81E00E94AF0A42E061EC82E084
-:101070000E94AF0A42E061EC83E00E94AF0A42E1C5
-:1010800061EC84E00C94AF0A8091E701833009F4AD
-:1010900055C030F4813071F0823009F48EC008956B
-:1010A0008A3009F47AC08B3009F460C0893009F0C5
-:1010B0009CC020C08091E601813A09F096C08091E1
-:1010C000E800877F8093E8008091EA019091EB012E
-:1010D000892B21F060E080E090E003C060E182E5D0
-:1010E00091E070E00E94EC098091E8008B7780939A
-:1010F000E80008958091E601813209F076C0809180
-:10110000EA019091EB01009719F0039709F06DC087
-:101110008091E800877F8093E8008091E80082FD5D
-:1011200005C08091E5018111F8CF5FC08091F10089
-:10113000809362018091E8008B7753C08091E60133
-:10114000813A09F052C08091EA019091EB01892B1C
-:1011500009F04BC08091E800877F8093E800809180
-:10116000E80080FFFCCF80910C0136C08091E60141
-:101170008132D9F58091EA019091EB01892BA9F593
-:101180008091E800877F8093E8000E94E40A8091C4
-:10119000E80180930C010C9490138091E601813258
-:1011A00021F58091E800877F8093E8000E94E40A9F
-:1011B0008091E9018093630108958091E601813A6D
-:1011C000A1F48091E800877F8093E8008091E80097
-:1011D00080FFFCCF809163018093F1008091E80053
-:1011E0008E778093E8000C94E40A089584B7877F93
-:1011F00084BF88E10FB6F89480936000109260007D
-:101200000FBE90E080E80FB6F89480936100909351
-:1012100061000FBE0E947E0E0E94350B0E94920B51
-:101220008091E20084608093E20078940E940D0E29
-:101230000E94800E82E091E00E942A0E0E94E62029
-:101240008091E501853069F40E942C1A8091E301B8
-:101250008823B1F30E94541A882391F30E948D09C8
-:10126000EFCF0E94860EECCF292F33272330310594
-:10127000A9F06CF42130310509F442C02230310567
-:1012800009F043C08DE690E020E133E042C0213216
-:101290003105C9F02232310519F137C09927813063
-:1012A000910541F08230910541F0892B71F5ECE018
-:1012B000F3E005C0E4EFF2E002C0ECEDF2E084916F
-:1012C00090E09F0126C0643000F5E62FF0E0EE0FBD
-:1012D000FF1FEE5DFE4F2081318189E090E019C053
-:1012E000643098F4E62FF0E0DF01AA0FBB1FA65E82
-:1012F000BE4F2D913C91EA5EFE4F808190E009C087
-:1013000082E190E02DE733E004C080E090E020E04F
-:1013100030E0FA0131832083089580E189BD82E1C4
-:1013200089BD09B400FEFDCF8091D8008F7D8093E8
-:10133000D8008091E00082608093E0008091E0001E
-:1013400081FDFCCF0895CF92DF92EF92FF920F9331
-:101350001F93CF93DF937C018B01EA010E94050B61
-:10136000811131C0209731F088819981081B190BB8
-:10137000E80EF91EC12CD12C0115110519F180912F
-:10138000E80085FD14C08091E8008E778093E80026
-:10139000209741F0888199818C0D9D1D99838883C8
-:1013A00085E011C00E94050B882331F30CC0F701C2
-:1013B00081917F018093F10001501109FFEFCF1A55
-:1013C000DF0ADACF80E0DF91CF911F910F91FF907C
-:1013D000EF90DF90CF9008952091EC013091ED01D6
-:1013E0002617370748F06115710539F42091E80098
-:1013F0002E772093E80001C0B901FC0120E06115BF
-:101400007105B9F18091E501882309F440C0853068
-:1014100009F43FC08091E80083FD3DC08091E80061
-:1014200082FF06C08091E80082FF26C080E0089518
-:101430008091E80080FFE3CF2091F3008091F200DB
-:1014400090E0922B6115710551F08830910538F4C8
-:1014500021912093F100615071090196F3CF21E0B1
-:10146000089709F020E08091E8008E778093E800EB
-:10147000C6CF2111C7CFD6CF8091E501882339F09F
-:10148000853039F08091E80083FFCCCF04C082E042
-:10149000089583E0089581E008952091EC01309152
-:1014A000ED012617370748F06115710539F42091D1
-:1014B000E8002E772093E80001C0B901FC0120E08C
-:1014C00061157105C1F18091E501882309F441C0DE
-:1014D000853009F440C08091E80083FD3EC08091D2
-:1014E000E80082FF06C08091E80082FF27C080E00C
-:1014F00008958091E80080FFE3CF2091F300809170
-:10150000F20090E0922B6115710559F08830910539
-:1015100040F424912093F1003196615071090196B5
-:10152000F2CF21E0089709F020E08091E8008E7763
-:101530008093E800C5CF2111C6CFD5CF8091E501BA
-:10154000882339F0853039F08091E80083FFCBCFD4
-:1015500004C082E0089583E0089581E00895982F03
-:10156000973058F59093E900981739F07091EC0096
-:101570002091ED005091F00003C0242F762F50E011
-:1015800021FF19C03091EB003E7F3093EB0030918A
-:10159000ED003D7F3093ED003091EB0031603093F2
-:1015A000EB007093EC002093ED005093F00020913D
-:1015B000EE0027FF07C09F5FD3CF8F708093E900B5
-:1015C00081E0089580E008958091E60187FD05C0DF
-:1015D0008091E80080FF0EC012C08091E80082FD7B
-:1015E00005C08091E5018111F8CF08958091E80050
-:1015F0008B7708C08091E5018111EACF0895809131
-:10160000E8008E778093E80008958091E40090913F
-:10161000E50045E62091EC0020FF21C02091E80084
-:1016200020FD21C02091E501222389F0253089F099
-:101630002091EB0025FD0FC02091E4003091E500E2
-:101640002817390739F3415041F0C901E3CF82E04F
-:10165000089583E0089581E0089584E0089520913D
-:10166000E80022FFDFCF80E008950E94A30B0E94D4
-:10167000AB0BE0EEF0E0808181608083E8EDF0E08C
-:1016800080818F77808319BCA7EDB0E08C918E7F2D
-:101690008C9380818F7E80831092E40108950F9354
-:1016A0001F93CF93DF930E94A30B0E94AB0BC8ED57
-:1016B000D0E088818F77888388818068888388815B
-:1016C0008F7D888319BC1092E5011092E101109280
-:1016D000E3011092E20100EE10E0F80180818B7FBF
-:1016E000808388818160888342E060E080E00E949E
-:1016F000AF0AE1EEF0E080818E7F8083E2EEF0E0E1
-:10170000808181608083808188608083F80180810E
-:101710008E7F8083888180618883DF91CF911F9144
-:101720000F910895E8EDF0E080818F7E8083E7EDF2
-:10173000F0E080818160808384E082BF81E08093DB
-:10174000E4010C944F0BE8EDF0E080818E7F808304
-:101750001092E20008951092DA001092E1000895CC
-:101760001F920F920FB60F9211242F933F934F9316
-:101770005F936F937F938F939F93AF93BF93EF93F9
-:10178000FF938091E10082FF0BC08091E20082FF15
-:1017900007C08091E1008B7F8093E1000E940C0ED6
-:1017A0008091DA0080FF1FC08091D80080FF1BC0AD
-:1017B0008091DA008E7F8093DA008091D90080FFDB
-:1017C0000DC080E189BD82E189BD09B400FEFDCF75
-:1017D00081E08093E5010E94140805C019BC1092B5
-:1017E000E5010E9422088091E10080FF19C08091EC
-:1017F000E20080FF15C08091E2008E7F8093E200BE
-:101800008091E20080618093E2008091D800806244
-:101810008093D80019BC85E08093E5010E942608DA
-:101820008091E10084FF30C08091E20084FF2CC0F1
-:1018300080E189BD82E189BD09B400FEFDCF8091C0
-:10184000D8008F7D8093D8008091E1008F7E8093B7
-:10185000E1008091E2008F7E8093E2008091E200BF
-:1018600081608093E2008091E101882311F084E09F
-:1018700007C08091E30087FF02C083E001C081E0E0
-:101880008093E5010E9428088091E10083FF29C030
-:101890008091E20083FF25C08091E100877F8093E3
-:1018A000E10082E08093E5011092E1018091E10086
-:1018B0008E7F8093E1008091E2008E7F8093E20032
-:1018C0008091E20080618093E20042E060E080E08D
-:1018D0000E94AF0A8091F00088608093F0000E941F
-:1018E0002508FF91EF91BF91AF919F918F917F91CB
-:1018F0006F915F914F913F912F910F900FBE0F907D
-:101900001F9018951F920F920FB60F9211242F93CC
-:101910003F934F935F936F937F938F939F93AF9377
-:10192000BF93CF93EF93FF93C091E900CF70809165
-:10193000EC001092E9008091F000877F8093F00026
-:1019400078940E94BE0C1092E9008091F0008860AB
-:101950008093F000C093E900FF91EF91CF91BF9188
-:10196000AF919F918F917F916F915F914F913F9137
-:101970002F910F900FBE0F901F9018951F93CF932C
-:10198000DF93CDB7DEB7AA970FB6F894DEBF0FBED0
-:10199000CDBFE6EEF1E08091F100819321E0EE3ED3
-:1019A000F207C9F70E9444088091E80083FF1CC138
-:1019B0002091E6013091E701832F90E08A30910574
-:1019C00008F012C1FC01EA5AFF4F0C948022203823
-:1019D00081F0223809F008C18091EA018F7080936C
-:1019E000E9008091EB0085FB882780F91092E900DF
-:1019F00006C08091E2019091E30191118260909183
-:101A0000E800977F9093E8008093F1001092F10036
-:101A1000C5C0822F8D7F09F0E7C0222319F0223044
-:101A200061F0E2C08091E801813009F0DDC033301F
-:101A300009F080E08093E30128C08091E8018111E2
-:101A400024C02091EA012F7009F4CEC02093E90050
-:101A50008091EB0080FF19C08091EB00333011F4CE
-:101A6000806211C080618093EB0081E090E0022EE3
-:101A700001C0880F0A94EAF78093EA001092EA0006
-:101A80008091EB0088608093EB001092E9008091D8
-:101A9000E800877F86C02111A7C01091E8011F7759
-:101AA0008091E3008078812B8093E3008091E800AF
-:101AB000877F8093E8000E94E40A8091E80080FF1D
-:101AC000FCCF8091E30080688093E300112311F044
-:101AD00083E001C082E08093E50186C02058223077
-:101AE00008F082C08091E8019091E9018C3D23E0EB
-:101AF000920779F583E08A838AE289834FB7F89465
-:101B0000DE01139620E03EE051E2E32FF0E0509337
-:101B10005700E49120FF03C0E295EF703F5FEF7044
-:101B20008E2F90E0EA3010F0C79601C0C0968D93DA
-:101B30009D932F5F243149F74FBF8091E800877F45
-:101B40008093E8006AE270E0CE0101960E94EC0901
-:101B500014C0AE014F5F5F4F6091EA010E943409EB
-:101B6000009709F441C02091E800277F2093E80006
-:101B7000BC0189819A810E944D0A8091E8008B778F
-:101B80008093E80031C0203879F58091E800877FA4
-:101B90008093E8008091E1018093F1008091E8005A
-:101BA0008E778093E8000E94E40A1EC021111CC0B9
-:101BB0009091E8019230C0F48091E800877F809393
-:101BC000E8009093E1010E94E40A8091E101811113
-:101BD00004C08091E30087FF02C084E001C081E07F
-:101BE0008093E5010E9430088091E80083FF0AC0DD
-:101BF0008091E800877F8093E8008091EB0080620D
-:101C00008093EB00AA960FB6F894DEBF0FBECDBF4F
-:101C1000DF91CF911F9108950895CF938091E501B1
-:101C20008823B1F08091E9008F709091EC0090FFD3
-:101C300002C090E801C090E0C92FC82B1092E900C3
-:101C40008091E80083FD0E94BE0CCF70C093E90034
-:101C5000CF91089590936901809368010895E09170
-:101C60006801F0916901309721F00190F081E02D39
-:101C7000099480E00895E0916801F091690130973E
-:101C800021F00280F381E02D09940895E09168012C
-:101C9000F0916901309721F00480F581E02D0994DD
-:101CA000089520916601309167018217930771F0C2
-:101CB0009093670180936601E0916801F09169015A
-:101CC000309721F00680F781E02D09940895209146
-:101CD0006401309165018217930771F0909365015B
-:101CE00080936401E0916801F0916901309721F0DF
-:101CF0000084F185E02D0994089508950C947D0EDB
-:101D00000E946F1A0E940B040C94351BCF92DF9235
-:101D1000EF92FF920F931F93CF93DF93CDB7DEB770
-:101D20002B970FB6F894DEBF0FBECDBF0E942304E1
-:101D30003BE6E32E31E0F32E00E010E0C02E802FD2
-:101D40000E941005F701D1907F01D826B1F40F5FF2
-:101D50001F4F0E30110591F78FEF89838A831B8205
-:101D60000E94781A8160782F9D838C8349815A81E3
-:101D70006B818D810E94290F41C09091CC0191FF10
-:101D800004C08B870E9416058B8520E030E04D2D26
-:101D900050E0922FBA01022E02C0759567950A9401
-:101DA000E2F760FF25C02E83CF82EE24E394F12C6E
-:101DB00002C0EE0CFF1C9A95E2F790E08E219F2165
-:101DC00021E0892B09F420E028870E94781A81609D
-:101DD000782F9A8789874E815F8168858A850E94DE
-:101DE000290FF801E559FE4F80818E25808306C0BA
-:101DF0002F5F3F4F2630310561F6A9CF0E94191E93
-:101E000010916A010E942F0E1817A1F00E942F0E48
-:101E100080936A012B960FB6F894DEBF0FBECDBF3C
-:101E2000DF91CF911F910F91FF90EF90DF90CF90B6
-:101E30000C9434072B960FB6F894DEBF0FBECDBFBF
-:101E4000DF91CF911F910F91FF90EF90DF90CF9096
-:101E50000895CF93DF93CDB7DEB72B970FB6F894E5
-:101E6000DEBF0FBECDBF4F83588769877A878B87C8
-:101E7000DE01119686E0FD0111928A95E9F785E071
-:101E8000FE01379601900D928A95E1F749815A81BA
-:101E90006B817C818D819E810E945C162B960FB692
-:101EA000F894DEBF0FBECDBFDF91CF910895CF93E1
-:101EB000C82F882309F4C1C0823859F40E942F0E1C
-:101EC00081FDBBC089E30E94F9180E94B31989E320
-:101ED0000CC0833879F40E942F0E80FDAEC083E5DC
-:101EE0000E94F9180E94B31983E50E943919CF9115
-:101EF0000C94B319843859F40E942F0E82FD9DC0B2
-:101F000087E40E94F9180E94B31987E4EECF8CEFA2
-:101F10008C0F813A48F48C2F0E944E2081118DC085
-:101F20008C2F0E94F918E3CF80E28C0F883048F4A0
-:101F3000C77081E001C0880FCA95EAF70E947A193C
-:101F4000D6CF8BE58C0F833078F4C53A29F0C63AAA
-:101F500031F482E890E005C081E890E002C083E8B7
-:101F600090E0CF910C94510E88E58C0F833108F0EE
-:101F700064C0C83A39F1C93A41F1CA3A49F1CB3A99
-:101F800051F1CC3A59F1CD3A61F1C03B69F1CE3A09
-:101F900071F1CF3A79F1C13B81F1C23B89F1C33B89
-:101FA00091F1C43B99F1C53BA1F1C63BA9F1C73BF7
-:101FB000B1F1C83BB9F1C93BC1F1CA3BC9F58AE2ED
-:101FC00092E038C082EE90E035C089EE90E032C0F9
-:101FD0008AEE90E02FC085EB90E02CC086EB90E07D
-:101FE00029C087EB90E026C08CEC90E023C08DECFC
-:101FF00090E020C083E891E01DC08AE891E01AC01B
-:1020000082E991E017C084E991E014C081E292E096
-:1020100011C083E292E00EC084E292E00BC085E240
-:1020200092E008C086E292E005C087E292E002C03A
-:1020300080E090E0CF910C94670ECF9108958823B3
-:1020400009F44BC0823859F40E942F0E81FF45C01D
-:1020500089E30E94F9180E94B31989E30CC0833800
-:1020600071F40E942F0E80FF38C083E50E94F9189A
-:102070000E94B31983E50E9439190C94B31984386E
-:1020800059F40E942F0E82FF28C087E40E94F9189D
-:102090000E94B31987E4EFCF9CEF980F913A58F361
-:1020A00090E2980F983050F4877091E001C0990F3A
-:1020B0008A95EAF7892F0E948019DFCF9BE5980F58
-:1020C000933020F480E090E00C94510E885A8331D4
-:1020D00020F480E090E00C94670E0895882321F0AE
-:1020E0000E947A190C94B3190895882321F00E9454
-:1020F00080190C94B3190895CF92DF92EF92FF925A
-:102100000F931F93CF93DF93CDB7DEB728970FB60A
-:10211000F894DEBF0FBECDBF8C0185E0F801DE0173
-:10212000119601900D928A95E1F7F8014081318175
-:10213000F280258122952F7083819481892B31F043
-:102140003F3F31F481E04F3F19F403C081E001C00B
-:1021500080E080FDC4C249833A8389819A812F83BC
-:102160000E94B7189E8388870E94B6180E9489171C
-:102170004E81E42FE295EF70F0E0E05AFF4F2F819F
-:1021800068850C948022842F807F142F1F708823F1
-:1021900011F01295107FFF2059F0112309F454C259
-:1021A000812F68870E948A190E94B31968854CC2E2
-:1021B000862F0E941F10112309F491C2812F0E94C3
-:1021C000901928960FB6F894DEBF0FBECDBFDF91F1
-:1021D000CF911F910F91FF90EF90DF90CF900C94D3
-:1021E000B319342F307F842F8F70303211F08295E5
-:1021F000807F662319F0613019F12BC0FF20B1F008
-:10220000222309F493C1213009F090C128960FB61A
-:10221000F894DEBF0FBECDBFDF91CF911F910F911C
-:10222000FF90EF90DF90CF900C949A19222319F031
-:10223000213009F454C28E830E949D198E8189C178
-:10224000FF2021F0223008F04AC270C1211147C29C
-:1022500080C1FF2021F0222309F468C1F5C12223A7
-:1022600009F477C105C2242F26952695237030E006
-:102270002115310521F021303105C9F030C2FF2090
-:1022800021F0862F942F937002C080E090E0289672
-:102290000FB6F894DEBF0FBECDBFDF91CF911F9177
-:1022A0000F91FF90EF90DF90CF900C94510EFF2094
-:1022B00021F0862F942F937002C080E090E0289642
-:1022C0000FB6F894DEBF0FBECDBFDF91CF911F9147
-:1022D0000F91FF90EF90DF90CF900C94670E862FB8
-:1022E000FF2019F00E94211D02C00E94891D28961E
-:1022F0000FB6F894DEBF0FBECDBFDF91CF911F9117
-:102300000F91FF90EF90DF90CF900C940E1E842FD2
-:10231000837009F076C0F110E2C1262F2295269530
-:102320002770220F220F862F8F70C82ED12CE12C00
-:10233000F12C022E04C0CC0CDD1CEE1CFF1C0A94F8
-:10234000D2F764FF10C06FE070E080E090E004C05E
-:10235000660F771F881F991F2A95D2F76095709591
-:102360008095909503C060E070E0CB01242F269506
-:1023700026952370422F50E042305105D1F0433072
-:10238000510559F16C297D298E299F29413051052C
-:1023900041F128960FB6F894DEBF0FBECDBFDF9196
-:1023A000CF911F910F91FF90EF90DF90CF900C9401
-:1023B000AE176C297D298E299F2928960FB6F8948F
-:1023C000DEBF0FBECDBFDF91CF911F910F91FF9068
-:1023D000EF90DF90CF900C94C8170E94AE17C70102
-:1023E000B60128960FB6F894DEBF0FBECDBFDF91C1
-:1023F000CF911F910F91FF90EF90DF90CF900C94B1
-:102400009417FF2019F0842F817001C086958823CE
-:1024100009F465C1262F229526952770220F220FD9
-:10242000862F8F70C82ED12CE12CF12C022E04C0E7
-:10243000CC0CDD1CEE1CFF1C0A94D2F764FF10C00C
-:102440006FE070E080E090E004C0660F771F881FA7
-:10245000991F2A95D2F7609570958095909503C045
-:1024600060E070E0CB01242F269526952370422F43
-:1024700050E042305105D1F04330510559F16C29FB
-:102480007D298E299F294130510541F128960FB6AB
-:10249000F894DEBF0FBECDBFDF91CF911F910F919A
-:1024A000FF90EF90DF90CF900C9482186C297D29DB
-:1024B0008E299F2928960FB6F894DEBF0FBECDBF98
-:1024C000DF91CF911F910F91FF90EF90DF90CF9010
-:1024D0000C949C180E948218C701B60128960FB66A
-:1024E000F894DEBF0FBECDBFDF91CF911F910F914A
-:1024F000FF90EF90DF90CF900C946818603FC9F187
-:1025000018F4603E50F49BC0623F09F460C008F4C8
-:102510004AC0633F09F46FC092C0162F1F70842F0A
-:102520008F71FF2099F00E940118812F28960FB615
-:10253000F894DEBF0FBECDBFDF91CF911F910F91F9
-:10254000FF90EF90DF90CF900C946E100E942218B5
-:10255000812F28960FB6F894DEBF0FBECDBFDF9156
-:10256000CF911F910F91FF90EF90DF90CF900C943F
-:102570007510FF20A1F02111B2C0842F8F71289611
-:102580000FB6F894DEBF0FBECDBFDF91CF911F9184
-:102590000F91FF90EF90DF90CF900C94471822306E
-:1025A00008F09DC0EACFFF20A1F0842F8F712896FC
-:1025B0000FB6F894DEBF0FBECDBFDF91CF911F9154
-:1025C0000F91FF90EF90DF90CF900C940118FF20B7
-:1025D00061F3842F8F7128960FB6F894DEBF0FBE7B
-:1025E000CDBFDF91CF911F910F91FF90EF90DF90C2
-:1025F000CF900C942218FF2091F0842F8F71289691
-:102600000FB6F894DEBF0FBECDBFDF91CF911F9103
-:102610000F91FF90EF90DF90CF900C94EC172896DD
-:102620000FB6F894DEBF0FBECDBFDF91CF911F91E3
-:102630000F91FF90EF90DF90CF900C94E217FF2066
-:10264000A1F0222309F4B1CF862F28960FB6F89473
-:10265000DEBF0FBECDBFDF91CF911F910F91FF90D5
-:10266000EF90DF90CF900C94570F222309F4B1CF55
-:10267000862F28960FB6F894DEBF0FBECDBFDF9130
-:10268000CF911F910F91FF90EF90DF90CF900C941E
-:102690001F104F70C8010E94AB0228960FB6F89425
-:1026A000DEBF0FBECDBFDF91CF911F910F91FF9085
-:1026B000EF90DF90CF900C9409174F70C8012896C7
-:1026C0000FB6F894DEBF0FBECDBFDF91CF911F9143
-:1026D0000F91FF90EF90DF90CF900C94D605289645
-:1026E0000FB6F894DEBF0FBECDBFDF91CF911F9123
-:1026F0000F91FF90EF90DF90CF9008950E9497196F
-:102700000E946C190E94B3190E94BA1E0E940E1EEC
-:1027100080E090E00E94510E80E090E00C94670E03
-:102720000E9487190C947E130E94B718292F2295B6
-:102730002F7030E02C3031054CF42A3031056CF428
-:10274000225031092230310590F407C02C30310578
-:1027500051F02F30310539F00AC0803E10F0803F33
-:1027600031F481E0089593FB882780F9089580E093
-:102770000895CF93DF9300D000D01F92CDB7DEB77E
-:102780000F900F900F900F900F90DF91CF910895C1
-:10279000CF93DF9300D000D000D0CDB7DEB7269620
-:1027A0000FB6F894DEBF0FBECDBFDF91CF91089575
-:1027B0001F93CF93DF93C091790116E080917A0146
-:1027C000C81799F0D0E01C9FF0011D9FF00D112457
-:1027D000E558FE4F408151816281738184819581EA
-:1027E0000E94C8132196C770E9CFDF91CF911F9146
-:1027F00008954091AB015091AC016091AD01709191
-:10280000AE018091AF019091B0010C94C813CF93A9
-:102810008091B00182958F7009F05FC08091AD0109
-:10282000882309F45AC020917901A0917A0160911E
-:10283000AB017091AC018091AE019091AF0131E09C
-:102840006F3F09F030E0B32FC6E02A1709F445C006
-:10285000009721F07F3F21F44B2F03C041E001C0DE
-:1028600040E030E040FD35C0C29FF001C39FF00D55
-:102870001124E558FE4F418174132BC0408164132D
-:1028800028C04281411125C043815481481759070E
-:1028900010F441505109481B590B483C5105C8F4EC
-:1028A0008091B0018F7080618093B00186E0829F3B
-:1028B000F001839FF00D1124E058FE4F80818F704E
-:1028C000806180838BEA91E00E947C10CF910C9410
-:1028D000D8132F5F3F4F2770B8CFCF910895CF9275
-:1028E000DF92EF92FF920F931F93CF93DF93CDB7B9
-:1028F000DEB762970FB6F894DEBF0FBECDBF8C0176
-:1029000085E0F801DE011D9601900D928A95E1F7B0
-:10291000D8014C9111965C91119712966C91129777
-:102920001396ED90FC9014977091AB01E091AC017F
-:102930002091AE013091AF012115310531F0EF3F0B
-:1029400031F481E07F3F19F403C081E001C080E0F1
-:10295000B82FB170CB2E80FD6CC1D090AD01DD20C1
-:1029600009F4F5C0F091B001E216F30638F0C701A2
-:10297000821B930B883C910548F09BC020953095B5
-:102980002E0D3F1D283C310508F093C08F2F807F0E
-:1029900009F052C0E51314C0741312C0D62E611191
-:1029A0000FC0FF70F061F093B0010E94F9138BEA41
-:1029B00091E00E947C108091B001F80185836CC188
-:1029C000EF2831F05F3F31F481E04F3F19F403C04D
-:1029D00081E001C080E080FD03C081E0862701C066
-:1029E00080E0F82FF170FF2E80FF1CC080917901EC
-:1029F00020917A0136E0821709F428C190E0389FCF
-:102A0000F001399FF00D1124E558FE4F71815713E5
-:102A100006C07081471303C07281671303C001961B
-:102A20008770E9CFD62E662309F436C18091B001B4
-:102A300081608093B00153C0E51308C0741306C0D1
-:102A4000611104C0D8011596FC93AEC04D875E8716
-:102A50008D859E856A8B0E9494136A89882329F14B
-:102A6000D62E662311F12091B001822F82958F70AE
-:102A700090E002970CF460C08091AB019091AC01A2
-:102A800098878F831986FB86EA862C87CE01079666
-:102A900051C0E51731F14D875E878D859E856A8B24
-:102AA0000E9494136A8981112EC0C8010E947C1073
-:102AB000A4C08F2F807F69F77E2DF98AE88A8989E3
-:102AC0000E94B9138BEA91E00E947C10EBEAF1E0DE
-:102AD00086E0DF011D928A95E9F70E94F913D12C57
-:102AE000DBC07413D8CF6111D6CFD8011596FC93F3
-:102AF000C8010E947C10EBEAF1E086E0DF011D9244
-:102B00008A95E9F7C9C0D62E662379F22091B001E3
-:102B1000822F82958F7090E0029774F08091AB01C4
-:102B20009091AC019A8389831B82FD82EC822E8373
-:102B3000CE0101960E947C1086E0F801ABEAB1E07C
-:102B400001900D928A95E1F70E9407146FC0E2167A
-:102B5000F30628F0C701821B930B9C0104C020954B
-:102B600030952E0D3F1D283C310508F052C0D62E61
-:102B7000662309F49ACFE5132CC074132AC0809100
-:102B8000B00180FD1DC0982F92959F70C9F0D801AB
-:102B900015968C9315979F3039F09F5F9295907F93
-:102BA0008F70892B15968C93C8010E947C1086E04B
-:102BB000F801ABEAB1E001900D928A95E1F736C0D9
-:102BC00086E0F801ABEAB1E001900D928A95E1F759
-:102BD00063C04D875E878D859E850E9494138823F0
-:102BE00079F086E0F801ABEAB1E001900D928A95A8
-:102BF000E1F70E9407140E94F913DD24D3944CC01E
-:102C00008091B00181608093B001C8010E947C1066
-:102C100043C07E2DF98AE88A89890E94B913EBEABC
-:102C2000F1E086E0DF011D928A95E9F70E94F91331
-:102C300033C0662309F439CF4D875E878D859E8525
-:102C40000E949413882309F430CFCBCF4D875E8741
-:102C50008D859E850E94B718292F22952F7030E010
-:102C6000223031052CF49F7041F0811106C00CC058
-:102C7000243031052CF49F7049F4805E883020F0B8
-:102C8000C8010E947C10CF2CDC2C06C0D801159600
-:102C90009C91907F91F7F8CF8D2D62960FB6F894A6
-:102CA000DEBF0FBECDBFDF91CF911F910F91FF907F
-:102CB000EF90DF90CF9008951F93CF93DF93CDB720
-:102CC000DEB72C970FB6F894DEBF0FBECDBF4F8393
-:102CD000588769877A878B879C87CE0107960E94E1
-:102CE0006F148823C1F02F8138858A859B85892BB5
-:102CF00031F03F3F11F080E003C02F3FE1F781E06A
-:102D0000811147C04F81588569857A858B859C855F
-:102D10000E94C8133EC086E0FE013796DE01119680
-:102D200001900D928A95E1F7FF81E8854A855B85E0
-:102D30004115510531F0EF3F31F481E0FF3F19F4C7
-:102D400003C081E001C080E080FD23C020917A01B2
-:102D500030E0C9010196877099276091790170E090
-:102D600086179707F1F1F983EA835D834C8396E038
-:102D7000929FD001939FB00D1124A558BE4FFE0124
-:102D8000319601900D929A95E1F780937A010E9415
-:102D9000D81316E08091790190917A01891779F121
-:102DA000189FC001112485589E4F0E946F148823DC
-:102DB00031F1E09179011E9FF0011124E558FE4F99
-:102DC0004081518162817381848195810E94C81301
-:102DD0008091790190E0019687709927809379011D
-:102DE000D9CF0E94901310927A0110927901EBEAE8
-:102DF000F1E086E0DF011D928A95E9F7CACF2C96B3
-:102E00000FB6F894DEBF0FBECDBFDF91CF911F91FB
-:102E10000895EF92FF920F931F93CF93DF93FC01DE
-:102E2000009709F46FC0F12CEE24E394EF01219692
-:102E30008491843740F4843008F055C0813081F0AB
-:102E4000823021F15FC0853709F447C0C0F19CE7AB
-:102E5000980F903708F056C08F770E941F1045C01A
-:102E60008F010E5F1F4FFE01849190E2980F983002
-:102E700050F48770FE2D01C0FF0F8A95EAF78F2F5F
-:102E80000E948A1915C00E94570F14C08F010E5F4F
-:102E90001F4FFE01849190E2980F983068F487707C
-:102EA000FE2D01C0FF0F8A95EAF78F2F0E9490191F
-:102EB0000E94B319E80119C00E941F10FBCFCF0177
-:102EC0000296FE01C491CC2361F0EFE9FFE0319757
-:102ED000F1F700C00000C150F6CFCF010296FE010D
-:102EE000F490EC0102C00E94570F8F2D882341F00F
-:102EF000EFE9FFE03197F1F700C000008150F6CF15
-:102F0000FE0194CFDF91CF911F910F91FF90EF9031
-:102F1000089508956093B5017093B6018093B70149
-:102F20009093B8010C947E130F931F930091B501F9
-:102F30001091B6012091B7013091B801062B172BE3
-:102F4000282B392B0093B5011093B6012093B701BC
-:102F50003093B8011F910F910C947E130F931F9320
-:102F60000091B5011091B6012091B7013091B801DF
-:102F700006231723282339230093B5011093B601A4
-:102F80002093B7013093B8011F910F910C947E13D9
-:102F90000F931F930091B5011091B6012091B701D5
-:102FA0003091B80106271727282739270093B50144
-:102FB0001093B6012093B7013093B8011F910F9180
-:102FC0000C947E131092B1011092B2011092B301D1
-:102FD0001092B4010C947E1341E050E060E070E088
-:102FE00004C0440F551F661F771F8A95D2F7409380
-:102FF000B1015093B2016093B3017093B4010C948A
-:103000007E1341E050E060E070E004C0440F551FC3
-:10301000661F771F8A95D2F78091B1019091B20116
-:10302000A091B301B091B401842B952BA62BB72BA3
-:103030008093B1019093B201A093B301B093B40116
-:103040000C947E1341E050E060E070E004C0440F57
-:10305000551F661F771F8A95D2F74095509560954A
-:1030600070958091B1019091B201A091B301B0919E
-:10307000B40184239523A623B7238093B1019093B1
-:10308000B201A093B301B093B4010C947E1341E05C
-:1030900050E060E070E004C0440F551F661F771FCA
-:1030A0008A95D2F78091B1019091B201A091B301BC
-:1030B000B091B40184279527A627B7278093B10143
-:1030C0009093B201A093B301B093B4010C947E131A
-:1030D0000F931F930091B1011091B2012091B301A0
-:1030E0003091B401062B172B282B392B0093B101FB
-:1030F0001093B2012093B3013093B4011F910F914B
-:103100000C947E130F931F930091B1011091B201A3
-:103110002091B3013091B4010623172328233923CA
-:103120000093B1011093B2012093B3013093B40125
-:103130001F910F910C947E130F931F930091B10177
-:103140001091B2012091B3013091B40106271727E5
-:10315000282739270093B1011093B2012093B301BE
-:103160003093B4011F910F910C947E130895CF9268
-:10317000DF92EF92FF920F931F93CF93DF93EC01B7
-:10318000C090B501D090B601E090B701F090B801C1
-:103190008091B1019091B201A091B301B091B401BD
-:1031A000C82AD92AEA2AFB2A0FE110E0B701A601B2
-:1031B000002E04C076956795579547950A94D2F7E7
-:1031C00040FF07C0BE01802F0E94F90581309105A4
-:1031D00039F40150110950F7BE0180E00E94F90551
-:1031E000DF91CF911F910F91FF90EF90DF90CF90E3
-:1031F000089590910C019923D9F090910D01992394
-:10320000B9F0982F9695969596959F3088F5E09110
-:103210000E01F0910F01E90FF11D877021E030E000
-:1032200001C0220F8A95EAF78181822B818308955C
-:1032300040910E0150910F0120E030E09FEFFA0124
-:10324000E20FF31F6281681799F09F3F19F4611133
-:1032500001C0922F2F5F3F4F2E30310581F79F3FE6
-:1032600039F0FA01E90FF11D97FDFA95828308956F
-:10327000089590910C019923E1F090910D0199230B
-:10328000C1F0982F9695969596959F3020F5E091F0
-:103290000E01F0910F01E90FF11D877021E030E080
-:1032A00001C0220F8A95EAF7209581812823218386
-:1032B000089540910E0150910F0120E030E0FA0195
-:1032C000E20FF31F9281981301C012822F5F3F4FCC
-:1032D0002E303105A1F7089581E090E0E0910E01D4
-:1032E000F0910F01E80FF91F1082019680319105CE
-:1032F000A9F708959091CB01982B9093CB01089555
-:1033000080959091CB0198239093CB0108951092D2
-:10331000CB0108959091CA01982B9093CA0108950A
-:1033200080959091CA0198239093CA0108951092B4
-:10333000CA0108958093B90108951092B9010895C2
-:1033400040910E0150910F0120E030E080E0FA0141
-:10335000E20FF31F918191118F5F2F5F3F4F2F304D
-:103360003105A9F70895E0910E01F0910F018091C8
-:10337000CB018083E0910E01F0910F01808190914B
-:10338000CA01892B80839091B901992361F0E09162
-:103390000E01F0910F018081892B80830E94A0197A
-:1033A00081111092B90180910E0190910F010C943E
-:1033B0003B0ECF92DF92EF92FF920F931F936C011F
-:1033C000EE24FF24C114D104E104F10421F46B01C3
-:1033D0007C0180E001C080E133272F2D1E2D0D2DB3
-:1033E000011511052105310519F0885F6801790182
-:1033F00097018601A4E03695279517950795AA951C
-:10340000D1F7011511052105310519F08C5F68010F
-:10341000790197018601F2E0369527951795079572
-:10342000FA95D1F7011511052105310519F08E5FC7
-:1034300068017901B701A60176956795579547957B
-:10344000452B462B472B09F08F5F1F910F91FF9063
-:10345000EF90DF90CF9008958091E501843009F1DD
-:103460001092CD0120E488E190E00FB6F894A89581
-:10347000809360000FBE2093600083B7817F8460DB
-:1034800083BF83B7816083BF7894889583B78E7F2D
-:1034900083BF88E10FB6F8948093600010926000BB
-:1034A0000FBE089508950895CF930E94521A0E9466
-:1034B00023040E94531AC0E08C2F0E941005811132
-:1034C00005C0CF5FCE30C1F780E001C081E0CF9171
-:1034D00008950E9490130E942F0E0C94340782E0EE
-:1034E00084BD93E095BD9AEF97BD80936E000895DB
-:1034F0002FB7F8948091CE019091CF01A091D00187
-:10350000B091D1012FBF0895CF92DF92EF92FF9239
-:103510000F931F932FB7F8944091CE015091CF0194
-:103520006091D0017091D1012FBF6A017B01EE241F
-:10353000FF248C0120E030E0C016D106E206F3063D
-:1035400010F441505109481B590BCA011F910F91AA
-:10355000FF90EF90DF90CF9008951F920F920FB6DB
-:103560000F9211248F939F93AF93BF938091CE01BD
-:103570009091CF01A091D001B091D1010196A11DF0
-:10358000B11D8093CE019093CF01A093D001B09351
-:10359000D101BF91AF919F918F910F900FBE0F906E
-:1035A0001F9018950E94350BF8942FEF87EA91E64B
-:1035B000215080409040E1F700C0000087E090EB90
-:1035C000DC018093EE019093EF01A093F001B093A2
-:1035D000F1012CE088E190E00FB6F894A895809373
-:1035E00060000FBE20936000FFCFEF92FF920F9319
-:1035F0001F93CF93DF93E82EF12C8F2D0E9410059F
-:10360000C0E0D0E0082F10E098010C2E02C03595E4
-:1036100027950A94E2F720FD05C02196C630D10512
-:1036200099F709C06C2F7F2D80E00E94D705E81222
-:10363000F4CF81E005C0F3948EE0F812DECF80E095
-:10364000DF91CF911F910F91FF90EF900895CF934D
-:10365000C82F8CE20E94F51A882321F08C2FCF917D
-:103660000C94F51A80E0CF910895CF930E947A1CB4
-:10367000811102C00E94601CC5E6C15049F00E9441
-:1036800023048FE39CE90197F1F700C00000F5CF18
-:1036900089E20E94271B811111C18AE20E94271B27
-:1036A00081110E94601C85E00E94271B81110E94ED
-:1036B000D21A0E94851C8093CC0187E00E94271BB0
-:1036C000882399F18BE10E94271B882351F0909168
-:1036D000CC0191FB882780F921E0822780FB91F9BA
-:1036E00022C08EE00E94271B882351F09091CC01CC
-:1036F00092FB882780F921E0822780FB92F913C092
-:1037000080E10E94271B9091CC01882341F093FB1C
-:10371000882780F921E0822780FB93F904C0892F54
-:10372000809580FB90F99093CC018091CC010E9410
-:10373000891C0E94971C8093DF0180EE0E94271B4A
-:10374000882341F08091DF01982F909590FB80F9BC
-:103750008093DF0189E30E94271B882359F0909111
-:10376000DF0191FB882780F921E0822780FB91F916
-:103770009093DF0182EE0E94271B882359F09091DD
-:10378000DF0192FB882780F921E0822780FB92F9F4
-:103790009093DF0186EE0E94271B882359F09091B9
-:1037A000DF0193FB882780F921E0822780FB93F9D2
-:1037B0009093DF0183EE0E94271B882359F090919C
-:1037C000DF0194FB882780F921E0822780FB94F9B0
-:1037D0009093DF0185E30E94271B882359F0909185
-:1037E000DF0195FB882780F921E0822780FB95F98E
-:1037F0009093DF0181E30E94271B882359F0909169
-:10380000DF0196FB882780F921E0822780FB96F96B
-:103810009093DF0181E10E94271B882359F090914A
-:10382000DF0197FB882780F921E0822780FB97F949
-:103830009093DF018091DF010E949B1C8091DF014A
-:1038400087FB882780F980930D0187E20E94271B60
-:10385000C82F8EE10E94271B8111C2608FE10E9458
-:10386000271B8111C46080E20E94271B8111C86060
-:1038700081E20E94271B8111C06182E20E94271B06
-:103880008111C06283E20E94271B8111C06484E21F
-:103890000E94271B882311F0C06802C0CC2329F0A6
-:1038A0008C2F0E94921C6C2F03C00E948E1C682FCC
-:1038B00070E080E090E0CF910C948A17CF9108954A
-:1038C0006DEE7EEF80E090E00E94B62260E082E044
-:1038D00090E00E94A82260E083E090E00E94A8228D
-:1038E00060E084E090E00E94A82260E085E090E043
-:1038F0000C94A82280E090E00E94A22221E08D3E5C
-:103900009E4F09F020E0822F089582E090E00C9411
-:103910009A22682F82E090E00C94A82283E090E045
-:103920000C949A22682F83E090E00C94A82284E003
-:1039300090E00C949A22682F84E090E00C94A822E6
-:103940008091D40180FF0BC06091130185E0689FD6
-:10395000B001112475956795759567952AC081FF0B
-:1039600009C06091130185E0689FB001112475952D
-:1039700067951FC082FF07C06091130185E0689FB3
-:10398000B001112416C04091D5014423C9F06091C3
-:103990001201461788F72091130185E0289F9001B6
-:1039A0001124429FC001439F900D112470E00E949A
-:1039B0006C226038710540F46115710539F002C060
-:1039C00065E070E0862F08958FE7089581E00895FF
-:1039D0008091D40180FF08C06091110170E075955D
-:1039E00067957595679521C081FF06C060911101AB
-:1039F00070E07595679519C082FF04C06091110150
-:103A000070E010C08091D5018823C1F06091100151
-:103A10008617A0F790911101989FC001112470E0C2
-:103A20000E946C226038710528F46115710521F03F
-:103A3000862F08958FE7089581E0089561E070E092
-:103A4000F4CF803F21F40E94A01C819504C0813FE7
-:103A500029F40E94A01C8093D8010895823F21F48C
-:103A60000E94A01C819504C0833F29F40E94A01CE1
-:103A70008093D7010895893F19F40E94E81C05C07E
-:103A80008A3F31F40E94E81C81958093D901089502
-:103A90008B3F21F40E94E81C819504C08C3F29F4DF
-:103AA0000E94E81C8093DA010895843F21F48091FC
-:103AB000D601816017C0853F21F48091D6018260D4
-:103AC00011C0863F21F48091D60184600BC0873FEE
-:103AD00021F48091D601886005C0883F31F480913F
-:103AE000D60180618093D60108958D3F21F48091A5
-:103AF000D40181600BC08E3F21F48091D40182609B
-:103B000005C08F3F29F48091D40184608093D40153
-:103B10000895803F39F48091D80187FF6CC01092DE
-:103B2000D80169C0813F29F48091D8011816BCF3EF
-:103B300062C09091D701823F29F497FF5CC0109238
-:103B4000D70159C0833F19F41916CCF354C0893FEB
-:103B500041F48091D90118160CF04DC01092D90192
-:103B60004AC08A3F29F48091D90187FF44C0F6CF2B
-:103B70008B3F39F48091DA0187FF3DC01092DA0162
-:103B80003AC08C3F29F48091DA011816BCF333C097
-:103B9000843F21F48091D6018E7F17C0853F21F4A8
-:103BA0008091D6018D7F11C0863F21F48091D6018E
-:103BB0008B7F0BC0873F21F48091D601877F05C0A2
-:103BC000883F31F48091D6018F7E8093D60113C057
-:103BD0008D3F21F48091D4018E7F0BC08E3F21F464
-:103BE0008091D4018D7F05C08F3F29F48091D4014D
-:103BF0008B7F8093D4018091D70181110EC0809179
-:103C0000D80181110AC08091D901811106C080912B
-:103C1000DA01811102C01092D501089586ED91E07C
-:103C20000E94460E0E94781A9093D3018093D2018D
-:103C300008951F93CF93DF938091D2019091D30188
-:103C40000E94841A4091D501442321F0209114014F
-:103C500030E006C0209115015AE0259F9001112403
-:103C60008217930708F482C08091D7011091D80180
-:103C7000D091D901C091DA01811107C0111105C09D
-:103C8000D11103C0CC2309F471C04F3F19F04F5F2D
-:103C90004093D501181624F40E94A01C8093D701EC
-:103CA0008091D70187FF05C00E94A01C8195809359
-:103CB000D701111624F40E94A01C8093D801809192
-:103CC000D80187FF05C00E94A01C81958093D80170
-:103CD0006091D701662339F11091D801112319F1B0
-:103CE000772767FD7095872F972F0E947D2123E30B
-:103CF00033E343E35FE30E94E1210E944A216093A2
-:103D0000D701612F772767FD7095872F972F0E9426
-:103D10007D2123E333E343E35FE30E94E1210E943B
-:103D20004A216093D8011D1624F40E94E81C809358
-:103D3000D9018091D90187FF05C00E94E81C8195B7
-:103D40008093D9011C1624F40E94E81C8093DA01A8
-:103D50008091DA0187FF05C00E94E81C819580935D
-:103D6000DA01DF91CF911F910C940E1EDF91CF915C
-:103D70001F910895E6EDF1E085E0DF011D928A953F
-:103D8000E9F71092D5011092D4010895833081F1A2
-:103D900028F4813059F08230D1F00895853009F44B
-:103DA00049C0B8F1863009F456C008952091150134
-:103DB000862F90E0820F911D8F3F910520F4620FB6
-:103DC0006093150108958FEF809315010895209158
-:103DD0001401862F90E0820F911D8F3F910520F4F2
-:103DE000620F6093140108958FEF8093140108957A
-:103DF00020911301862F90E0820F911D8F3F910536
-:103E000020F4620F6093130108958FEF80931301E4
-:103E1000089520911201862F90E0820F911D8F3F0F
-:103E2000910520F4620F6093120108958FEF809343
-:103E30001201089520911101862F90E0820F911DAB
-:103E40008F3F910520F4620F6093110108958FEF69
-:103E500080931101089520911001862F90E0820F28
-:103E6000911D8F3F910520F4620F6093100108951A
-:103E70008FEF809310010895833011F128F4813081
-:103E800049F0823091F00895853081F120F186303B
-:103E9000C1F1089580911501681720F4861B809365
-:103EA0001501089510921501089580911401681765
-:103EB00020F4861B80931401089510921401089534
-:103EC00080911301681720F4861B809313010895D5
-:103ED00010921301089580911201681720F4861B37
-:103EE000809312010895109212010895809111019A
-:103EF000681720F4861B8093110108951092110118
-:103F0000089580911001681720F4861B809310019A
-:103F100008951092100108958D3109F442C020F5E2
-:103F20008E3009F479C070F4873009F45EC020F453
-:103F3000863009F442C033C08830D1F18B3009F4A7
-:103F4000A7C02DC0863109F4A3C038F4803109F42C
-:103F50006DC0813109F47BC022C0893109F498C059
-:103F60008B3109F44FC01BC0853309F479C048F484
-:103F7000873209F475C008F478C0893209F470C03A
-:103F80000EC0833438F48A3308F071C0883309F4E2
-:103F90007FC005C0833409F463C08834C1F080E079
-:103FA00008950E9404210E942F0E0E94340770C0C1
-:103FB0000E94851C0E94971C6BC08091CC01817F60
-:103FC0008E7F8093CC0181E08093DC0108950E9474
-:103FD00090132FEF83ED90E3215080409040E1F764
-:103FE00000C000000E94D21A53C09091CC01892FCA
-:103FF000817090FF03C0917F9E7F26C09160909357
-:10400000CC0146C09091CC0191FB882780F921E03A
-:10401000822780FB91F913C09091CC0192FB8827F5
-:1040200080F921E0822780FB92F909C09091CC01B0
-:1040300093FB882780F921E0822780FB93F99093F6
-:10404000CC01882329F191609093CC0108950E94BE
-:10405000901380910D0191E0892780930D0118C084
-:1040600061E070E080E090E00FC023EE01C027EC3B
-:10407000280F61E070E080E090E004C0660F771FD9
-:10408000881F991F2A95D2F70E948A170E949013C1
-:1040900081E0089580E0089580E00895CF93C82FCF
-:1040A0008091DC01813079F018F08230D1F184C048
-:1040B000A0910E01B0910F018C91813169F0823293
-:1040C00009F07CC009C0A0910E01B0910F018C9144
-:1040D000813111F0823249F48C2F0E944A208111E3
-:1040E0001DC08C2F0E948C1F1AC08C2F0E944C2048
-:1040F000811114C0C43179F048F4CB3079F0C0316B
-:1041000009F060C082E08093DC0108C0C93219F078
-:10411000C83321F057C01092DC0154C081E0817097
-:1041200053C0C93289F118F5C43171F1A8F4C73010
-:1041300009F046C08AE08093150194E19093140140
-:1041400093E0909313018093120188E08093110112
-:1041500088E28093100134C0CE51C63088F5EC2F30
-:10416000F0E0E65DFE4F80818093DB0129C0CE3414
-:10417000E9F020F4CB3421F56AE013C0C13579F0C1
-:10418000C235F1F461E00DC08091DB01882319F0A4
-:104190001092DB0115C081E08093DC0115C061E065
-:1041A00006C08091DB010E94C61E0AC06AE08091B1
-:1041B000DB010E943C1F04C01092DC0180E004C0BF
-:1041C00081E002C080E0ABCFCF910895E1E8F0E05C
-:1041D0008081886080838081816080838FB7F8943C
-:1041E00093E09093890090ED909388008FBF08959D
-:1041F000EFE6F0E08081826080830895EFE6F0E0F2
-:1042000080818D7F80830895EFE6F0E0808192E0E9
-:104210008927808308951F920F920FB60F92112461
-:104220002F933F934F935F936F937F938F939F93BE
-:10423000AF93BF93EF93FF938091DD019091DE01E7
-:1042400001969093DE018093DD01811103C082E02D
-:104250000E943407E091DE01E695E695F0E0E6572E
-:10426000FB4FE4918091DD018E1303C080E00E943A
-:104270003407FF91EF91BF91AF919F918F917F9103
-:104280006F915F914F913F912F910F900FBE0F90C3
-:104290001F90189504D06894B1118DC0089570D006
-:1042A00088F09F5790F0B92F9927B751A0F0D1F01F
-:1042B000660F771F881F991F1AF0BA95C9F712C0A9
-:1042C000B13081F077D0B1E0089574C0672F782FB6
-:1042D0008827B85F39F0B93FCCF386957795679515
-:1042E000B395D9F73EF490958095709561957F4F81
-:1042F0008F4F9F4F0895E89409C097FB3EF4909527
-:104300008095709561957F4F8F4F9F4F9923A9F0AE
-:10431000F92F96E9BB279395F6958795779567953D
-:10432000B795F111F8CFFAF4BB0F11F460FF1BC081
-:104330006F5F7F4F8F4F9F4F16C0882311F096E914
-:1043400011C0772321F09EE8872F762F05C06623C2
-:1043500071F096E8862F70E060E02AF09A95660F7B
-:10436000771F881FDAF7880F9695879597F9089534
-:1043700057FD9058440F551F59F05F3F71F0479516
-:10438000880F97FB991F61F09F3F79F087950895FB
-:10439000121613061406551FF2CF4695F1DF08C01A
-:1043A000161617061806991FF1CF86957105610537
-:1043B00008940895E894BB2766277727CB0197F9DF
-:1043C00008950BD078C069D028F06ED018F09523EE
-:1043D00009F05AC05FC01124EECFCADFA0F3959F49
-:1043E000D1F3950F50E0551F629FF001729FBB27DC
-:1043F000F00DB11D639FAA27F00DB11DAA1F649F88
-:104400006627B00DA11D661F829F2227B00DA11D3A
-:10441000621F739FB00DA11D621F839FA00D611DC0
-:10442000221F749F3327A00D611D231F849F600DE1
-:10443000211D822F762F6A2F11249F5750408AF01A
-:10444000E1F088234AF0EE0FFF1FBB1F661F771FA6
-:10445000881F91505040A9F79E3F510570F014C03D
-:10446000AACF5F3FECF3983EDCF38695779567958E
-:10447000B795F795E7959F5FC1F7FE2B880F911DC4
-:104480009695879597F9089597F99F6780E870E06A
-:1044900060E008959FEF80EC089500240A941616BA
-:1044A000170618060906089500240A941216130622
-:1044B000140605060895092E0394000C11F48823B0
-:1044C00052F0BB0F40F4BF2B11F460FF04C06F5FCC
-:1044D0007F4F8F4F9F4F089597FB072E16F4009440
-:1044E00007D077FD09D00E94862207FC05D03EF454
-:1044F000909581959F4F0895709561957F4F089590
-:10450000EE0FFF1F0590F491E02D0994AA1BBB1B31
-:1045100051E107C0AA1FBB1FA617B70710F0A61BC3
-:10452000B70B881F991F5A95A9F780959095BC01E4
-:10453000CD010895F999FECF92BD81BDF89A9927D2
-:1045400080B50895A8E1B0E042E050E00C94BD22AF
-:10455000262FF999FECF1FBA92BD81BD20BD0FB69F
-:10456000F894FA9AF99A0FBE019608950E94A8222B
-:10457000272F0C94A922DC01CB01FC01F999FECF75
-:1045800006C0F2BDE1BDF89A319600B40D924150DB
-:0A4590005040B8F70895F894FFCFEB
-:10459A0020023607C307A0076C0739070101BA01D1
-:1045AA0028080A03140A3F4D36394B04FE03C80390
-:1045BA008F0322033B0354036D0301020304050620
-:0445CA0007080900D5
+:100000000C945F040C94A3040C94A3040C94A30418
+:100010000C94A3040C94A3040C94A3040C94A304C4
+:100020000C94A3040C94A3040C94BC0D0C948E0E9D
+:100030000C94A3040C94A3040C94A3040C94A304A4
+:100040000C94A3040C9439230C94A3040C94A304DF
+:100050000C94A3040C94DB1C0C94A3040C94A30434
+:100060000C94A3040C94A3040C94A3040C94A30474
+:100070000C94A3040C94A3040C94A3040C94A30464
+:100080000C94A3040C94A3040C94A3040C94A30454
+:100090000C94A3040C94A3040C94A3040C94A30444
+:1000A0000C94A3040C94A3040C94A304F30E150F56
+:1000B0000010150F0010570F7A0F0010CF0FE20F2E
+:1000C000D612D61204130413461382138215821516
+:1000D0009A138215911491145C158215821570156E
+:1000E000000000810889248935812B850252E100B6
+:1000F000E00000001E00140004001D0000774E0008
+:100100001F001A0016001B00007F4C002000080092
+:1001100007000600E2002A0021001500090019006E
+:10012000E3004B00220017000A00050000004A000F
+:1001300029002F0000002B0200004D002D00300090
+:1001400000002B000000500023001C000B001100D9
+:1001500000004F00240018000D001000E7005200BE
+:1001600025000C000E003600E6002C0026001200D0
+:100170000F003700007F28002700130033003800ED
+:10018000007751002E8131853482E500E4000000C3
+:100190000100C300C2003900010000002900010075
+:1001A0000100010001000100010001000100010047
+:1001B0000100010001000100010001000100010037
+:1001C0000100010001000100010001000100010027
+:1001D0000100010000000100010001000000010019
+:1001E000000001000100010000000100000001000A
+:1001F00001000100010001000000010001000100F8
+:1002000001000100010001000100010001000100E6
+:1002100001000100010001000100010001000100D6
+:100220000100010001000100010001000100C30004
+:10023000C200390001000000C20005520252E10074
+:10024000010000003A001E022002220201005100BB
+:100250003B001F0221022302010028003C002F0264
+:1002600026022F0001002C003D0030022702300042
+:10027000010052003E00240235003502000050000B
+:100280000100360200002B0000004F000100370281
+:1002900000002B0200004A003F003102380031000C
+:1002A00000004D004000240021001E0027004B00EC
+:1002B0004100250022001F0037004C0042002600AC
+:1002C000230020002E002A004300380025022D00C4
+:1002D0002E024E00C20005520252E5002800000026
+:1002E000045205520852E100010000003A001E02CB
+:1002F00020022202010051003B001F0221022302C2
+:10030000010028003C002F0226022F0001002C00D3
+:100310003D00300227023000010052003E0024025E
+:1003200035003502000050000100360200002B00AD
+:1003300000004F000100370200002B0200004A00BD
+:100340003F0031023800310000004D004000240021
+:1003500021001E0027004B004100250022001F0045
+:1003600037004C0042002600230020002E002A0007
+:100370004300380025022D002E024E000452055283
+:100380000852E5002800000001000654C1003900B1
+:10039000010000002900010001000100010001002E
+:1003A0000100010001000100010001000100010045
+:1003B0000100010001000100010001000100010035
+:1003C0000100010001000100010001000000010026
+:1003D0000100010000000100000001000100010017
+:1003E0000000010000000100010001000100010007
+:1003F00000000100010001000100010001000100F6
+:1004000001000100010001000100010001000100E4
+:1004100001000100010001000100010001000100D4
+:100420000100010001000654C10039000100000074
+:10043000C30005520252E100A8000000440066001B
+:10044000A6000100AA00B50045000100F20001006D
+:10045000A90001006800F000F100F100F400B6000E
+:1004600069000100F3000100F500B4006A0001001A
+:10047000010001000000B8000100F9000000FA00CE
+:100480000000B9000100F9000000FA000000AC0013
+:100490006B004600530001000000AB006C004A00F6
+:1004A00050004D004900A9006D005200510051005C
+:1004B0004C00AE006E004B004F004E000100AD003E
+:1004C0006F00B100B30001000100AA00C300055293
+:1004D0000252E50001000000075208520000E1004E
+:1004E000A800000044006600A6000100AA00B500B4
+:1004F00045000100F2000100A90001006800F000C1
+:10050000F100F100F400B60069000100F300010001
+:10051000F500B4006A000100010001000000B8000D
+:100520000100F9000000FA000000B9000100F90024
+:100530000000FA000000AC006B0046005300010010
+:100540000000AB006C004A0050004D004900A900BB
+:100550006D005200510051004C00AE006E004B0087
+:100560004F004E000100AD006F00B100B30001006C
+:100570000100AA00075208520000E5000100000037
+:100580000100C10001003900010000002900010044
+:100590000100010001000100010001000100010053
+:1005A0000100010001000100010001000100010043
+:1005B0000100010001000100010001000100010033
+:1005C0000100010000000100010001000000010025
+:1005D0000000010001000100000001000000010016
+:1005E0000100010001000100000001000100010004
+:1005F00001000100010001000100010001000100F3
+:1006000001000100010001000100010001000100E2
+:100610000100010001000100010001000100C10012
+:100620000100390001000000C100010001000100CB
+:10063000010000002900010001000100010001008B
+:1006400001000100010001000100010001000100A2
+:100650000100010001000100010001000100010092
+:100660000100010001000100010001000000010083
+:100670000100010000000100000001000100010074
+:100680000000010000000100010001000100010064
+:100690000000010001000100010001000100010053
+:1006A0000100010001000100010001000100010042
+:1006B0000100010001000100010001000100010032
+:1006C00001000100C1000100010001000100000063
+:1006D00016034500720067006F0044006F00780049
+:1006E000200045005A000000160345007200670014
+:1006F0006F0044006F007800200045005A000000A1
+:100700000403090409026D00040100A0FA090400B1
+:10071000000103010100092111010001223F00072E
+:1007200005810308000A0904010001030102000910
+:100730002111010001224D000705820308000A096A
+:10074000040200010300000009211101000122360A
+:10075000000705830308000A0904030001030000E1
+:10076000000921110100012239000705840310004E
+:10077000011201100100000008EDFE071301000145
+:1007800002000105010906A101050719E029E71585
+:1007900000250195087501810205081901290595B3
+:1007A000057501910295017503910105071900294D
+:1007B0007715002501957875018102C00501098032
+:1007C000A101850216010026B7001A01002AB70010
+:1007D000751095018100C0050C0901A10185031662
+:1007E0000100269C021A01002A9C027510950181C5
+:1007F00000C005010902A1010901A10005091901B3
+:1008000029051500250195057501810295017503DE
+:1008100081010501093009311581257F950275088F
+:10082000810609381581257F950175088106050C1B
+:100830000A38021581257F950175088106C0C0051B
+:10084000010906A101050719E029E7150025019511
+:1008500008750181029501750881010508190129B2
+:10086000059505750191029501750391010507191B
+:100870000029FF150025FF950675088100C00000BE
+:10088000000000000000000000010204060A0F172B
+:10089000202C3A4A5D71879DB3C7DAE9F5FCFFFC6D
+:1008A000F5E9DAC7B39D87715D4A3A2C20170F0A24
+:1008B00006040201000000000000000000001124F6
+:1008C0001FBECFEFDAE0DEBFCDBF04B603FE24C00B
+:1008D0008091EF019091F001A091F101B091F201AE
+:1008E0008730904BA740B04BB9F41092EF011092B3
+:1008F000F0011092F1011092F20114BE84B7877FCB
+:1009000084BF88E10FB6F894809360001092600075
+:100910000FBEE0E0FFE3099511E0A0E0B1E0E6EFF3
+:10092000F9E402C005900D92A433B107D9F721E094
+:10093000A4E3B1E001C01D92AF3EB207E1F70E940F
+:10094000020B0C94F9240C94000061110BC0FC0103
+:100950008281882321F085EE0E94631103C085EE19
+:100960000E942B1280E090E008950895CF9360914B
+:10097000B1017091B2018091B3019091B4010E94D4
+:10098000071CC82F8130F9F08430E9F089EF8C0F13
+:100990008230C8F056985E9825982D9826982E9803
+:1009A00027982F980E943B1081FF02C0259A2D9A0C
+:1009B0008EEF8C0F823010F4269A2E9AC550C230DA
+:1009C00010F4279A2F9ACF9108950C94B604569854
+:1009D0005E9825982D9826982E9827982F988FEF17
+:1009E00090E0909389008093880090938B0080938F
+:1009F0008A0090938D0080938C00259A2D9A2FEF7A
+:100A000080E792E0215080409040E1F700C0000074
+:100A1000269A2E9A2FEF80E792E021508040904056
+:100A2000E1F700C00000279A2F9A2FEF80E792E0AD
+:100A3000215080409040E1F700C0000025982D989B
+:100A40002FEF80E792E0215080409040E1F700C016
+:100A5000000026982E982FEF80E792E021508040EA
+:100A60009040E1F700C0000027982F9856985E98B4
+:100A700025982D9826982E9827982F98089589EADA
+:100A80008093800089E08093810024982C983F987F
+:100A90008AB18F748AB96E98479A8BB1806B8BB983
+:100AA000769A0E94E7040C94B50480E280930001DA
+:100AB0008091340181110EC00E94A40581E08093D1
+:100AC00034012FEF83ED90E3215080409040E1F717
+:100AD00000C0000080E40E94AA05809300018111FB
+:100AE0002EC00E94D40580930001811128C00E946D
+:100AF000D40580930001811122C08FE30E94D405A8
+:100B00008093000181111BC00E94CC0580E40E94EB
+:100B1000AA0580930001811112C08CE00E94D405C7
+:100B20008093000181110BC00E94D40580930001C5
+:100B3000811105C08FE30E94D405809300010E94BB
+:100B4000CC058091000108951092B9008AE080934D
+:100B5000B800089594EA9093BC009091BC0097FF70
+:100B6000FCCF9091B900987F983021F0903111F02E
+:100B700081E008958093BB0084E88093BC0080915D
+:100B8000BC0087FFFCCF8091B900887F883111F0CD
+:100B9000803471F780E0089584E98093BC008091EF
+:100BA000BC0084FDFCCF08958093BB0084E8809353
+:100BB000BC008091BC0087FFFCCF9091B900987F6A
+:100BC00081E0983209F480E0089584E88093BC00C5
+:100BD0008091BC0087FFFCCF8091BB00089580917D
+:100BE0000001811115C080E40E94AA0580930001D4
+:100BF00081110CC082E10E94D40580930001811113
+:100C000005C08FEF0E94D405809300010E94CC059F
+:100C100084B1807F84B985B1807F85B98AB1837FB3
+:100C20008AB98BB1837F8BB93E98469808950E940C
+:100C30005505809300010E94EF0580B38C7080BB46
+:100C400081B3836F81BBE4E4F1E0A6E3B1E01192EC
+:100C50001D9281E0E235F807D1F70C943F05BF9271
+:100C6000CF92DF92EF92FF920F931F93CF93DF9378
+:100C700080910001882379F0809135018F5F809306
+:100C80003501811108C00E94550580930001811132
+:100C900002C00E94E70406E311E0C0E0D0E0DD24DA
+:100CA000D39482E0C82EEE24E394F12CC73000F5F3
+:100CB00080910001811162C080E40E94AA058093A6
+:100CC0000001811112C082E10E94D40580930001CD
+:100CD00081110BC0C7010C2E01C0880F0A94EAF7DE
+:100CE00080950E94D405809300010E94CC0546C0E7
+:100CF000CA30A1F028F4C83059F0C93061F005C0FD
+:100D0000CC3089F070F0CD3089F0209A289810C04E
+:100D1000219A29980DC0229A2A980AC0239A2B98C2
+:100D200007C0529A01C0539A5B9802C03E9A4698F7
+:100D3000E0EAEA95F1F78FB179995AC092E08170B3
+:100D40008D25892B7C9B02C090E001C094E0892B0B
+:100D50007D9B02C090E001C098E0892B7E9B02C081
+:100D600090E001C090E1892B9FB19095991F992740
+:100D7000991F9295990F907E892B0FC08091000149
+:100D800081114BC080E40E94AA0580930001882352
+:100D900089F1B12C0E94CC058B2DF8019081981718
+:100DA00019F08083C09201010E94EF0521960F5F28
+:100DB0001F4FCE30D10509F079CF809101018823F2
+:100DC00071F1815080930101882339F08FE99FE010
+:100DD0000197F1F700C0000022C0A4E4B1E0E6E30F
+:100DE000F1E081918D9391E0E434F907D1F717C0D8
+:100DF00090E0A5CF83E10E94D4058093000181118A
+:100E0000C8CF81E40E94AA05809300018111C1CF5F
+:100E10000E94E505B82EB094BDCF80E0BECF0E9401
+:100E2000E50481E0DF91CF911F910F91FF90EF904A
+:100E3000DF90CF90BF900895E82FF0E0EC5BFE4F7D
+:100E40008081089508958B3B910578F4883A910547
+:100E500040F5853A9105D0F48430910508F0B1C091
+:100E60008130910509F4ADC06BC0803E910508F456
+:100E700067C0883E910508F4A4C09C01205F310939
+:100E80002031310508F05CC090650895853A9105E0
+:100E900009F459C0863A910509F458C083E890E4F2
+:100EA0000895883A910509F454C0893A910509F4E6
+:100EB00053C08A3A910509F452C08B3A910509F45E
+:100EC00051C08C3A910509F450C08D3A910509F44E
+:100ED0004FC0803B910509F44EC08E3A910509F44C
+:100EE0004DC08F3A910509F44CC0813B910509F43E
+:100EF0004BC0823B910509F44AC0833B910509F43C
+:100F000049C0843B910509F448C0853B910509F42B
+:100F100047C0863B910509F446C0873B910509F41B
+:100F200045C0883B910509F444C0893B910509F40B
+:100F300043C08A3B910509F042C08AE296E40895D5
+:100F400080E090E0089581E890E4089582E890E4DC
+:100F5000089582EE94E4089589EE94E408958AEE6B
+:100F600094E4089585EB94E4089586EB94E4089561
+:100F700087EB94E408958CEC94E408958DEC94E46C
+:100F8000089583E895E408958AE895E4089582E950
+:100F900095E4089584E995E4089581E296E408953E
+:100FA00083E296E4089584E296E4089585E296E467
+:100FB000089586E296E4089587E296E4089580E035
+:100FC00094E40895089596E0799FF001112494E542
+:100FD000899FE00DF11D1124E60FF11DEE0FFF1F9B
+:100FE000E851FF4F859194910895880F991F805A79
+:100FF0009040FC01859194910895880F991F80522B
+:101000009F4FFC0185919491089526E0729FF00115
+:10101000112444E5849FE00DF11D1124E60FF11D1C
+:10102000EE0FFF1FE851FF4F25913491C9019A95AA
+:1010300081159F4110F4C9010895C901905281158D
+:10104000904128F4C9019F700E94FD070895C901CD
+:1010500090538115904120F4C9019927906C08950F
+:10106000211580E5380769F40E94A5159FEF24E358
+:101070004CE0915020404040E1F700C000000C944B
+:10108000001D213080E5380731F48091CD01816069
+:101090008093CD010895C90190558115904108F0C4
+:1010A00050C0832F99278F70992781309105D9F4EB
+:1010B000A9014370552702C0880F991F4A95E2F78E
+:1010C0009C68A90164E0440F551F6A95E1F7442725
+:1010D0005370842B952B73E0220F331F7A95E1F721
+:1010E000207633271DC08230910529F4922F88275E
+:1010F000816F906A089583309105A9F4A901437026
+:10110000552781E090E002C0880F991F4A95E2F7C9
+:101110009C6843E0220F331F4A95E1F7207E377029
+:10112000822B932B08950497F1F4A901437055275E
+:1011300081E090E002C0880F991F4A95E2F79A6813
+:10114000E8CFC90190578115904120F4C9019F70E3
+:1011500090620895C90190588115904120F4C90109
+:101160009F70906A0895203E3105E0F4203C3105DF
+:1011700058F52133310509F470C048F4293231059E
+:1011800009F464C02A32310509F46EC074C02933F1
+:101190003105F1F022383105D9F02533310509F454
+:1011A0004EC069C0233E310589F138F4203E310537
+:1011B000C1F0223E3105E1F05EC0263E310569F105
+:1011C000273E3105A9F157C0C9010E94F5070895CE
+:1011D0008091E00180FD02C081FF4DC080EE90E073
+:1011E0004BC08091E00180FFF9CF89E390E044C0DB
+:1011F0008091E00182FF0EC08091E00184FF03C076
+:1012000080E090E039C083EE90E036C08091E0014C
+:1012100082FFF2CF82EE90E02FC08091E00183FF49
+:101220000BC08091E00184FDEBCF87EE90E024C0FD
+:101230008091E00183FFF5CF86EE90E01DC08091A4
+:10124000E00185FF07C089E290E016C08091E001CF
+:1012500085FFF9CF85E390E00FC08091E00186FF24
+:1012600007C08AE290E008C08091E00186FFF9CFD4
+:1012700081E390E001C0C9010E9423070895089509
+:101280000C943F09809162010895CF93DF9300D0C1
+:101290001F92CDB7DEB72091E601243019F523E087
+:1012A00029839B838A832093E9008FEF9091E80044
+:1012B000815095FD06C095ED9A95F1F700008111DA
+:1012C000F5CF8091E80085FF0DC040E050E063E07D
+:1012D00070E0CE0101960E94AF0B8091E8008E77FE
+:1012E0008093E8000F900F900F90DF91CF910895B9
+:1012F000CF93DF9300D01F92CDB7DEB72091E601E8
+:10130000243021F522E029839B838A8383E0809324
+:10131000E9008FEF9091E800815095FD06C095EDB2
+:101320009A95F1F700008111F5CF8091E80085FFD3
+:101330000DC040E050E063E070E0CE0101960E94F5
+:10134000AF0B8091E8008E778093E8000F900F90AC
+:101350000F90DF91CF9108952091E6012430F1F4B0
+:1013600022E02093E9002FEF3091E800215035FD75
+:1013700006C035ED3A95F1F700002111F5CF209127
+:10138000E80025FF0BC040E050E065E070E00E94FF
+:10139000AF0B8091E8008E778093E8000895CF939B
+:1013A000DF93EC018091E601843009F046C0909112
+:1013B0000C019923D9F090910D019923B9F08093F4
+:1013C000E9008FEF9091E800815095FD06C095E10E
+:1013D0009A95F1F700008111F5CF8091E80085FF23
+:1013E0002CC040E050E060E170E017C081E08093E5
+:1013F000E9008FEF9091E800815095FD06C095EDD2
+:101400009A95F1F700008111F5CF8091E80085FFF2
+:1014100014C040E050E068E070E0CE010E94AF0BE5
+:101420008091E8008E778093E80080E1FE01A2E5DC
+:10143000B1E001900D928A95E1F7DF91CF91089587
+:101440008091E501811109C00E94410D0E949E0D0D
+:101450008091E20084608093E20008951092E5019B
+:10146000089508950C9426230E94971C0E942C2313
+:101470000E943B100C94400942E061EC81E00E9424
+:10148000BB0C42E061EC82E00E94BB0C42E061ECEC
+:1014900083E00E94BB0C42E161EC84E00C94BB0C45
+:1014A0008091E801833009F455C030F4813071F047
+:1014B000823009F48EC008958A3009F47AC08B30E6
+:1014C00009F460C0893009F09CC020C08091E70118
+:1014D000813A09F096C08091E800877F8093E80008
+:1014E0008091EB019091EC01892B21F060E080E08C
+:1014F00090E003C060E182E591E070E00E94F80BAB
+:101500008091E8008B778093E80008958091E7014F
+:10151000813209F076C08091EB019091EC01009747
+:1015200019F0039709F06DC08091E800877F8093E0
+:10153000E8008091E80082FD05C08091E6018111FC
+:10154000F8CF5FC08091F100809362018091E80044
+:101550008B7753C08091E701813A09F052C08091A6
+:10156000EB019091EC01892B09F04BC08091E800D0
+:10157000877F8093E8008091E80080FFFCCF809116
+:101580000C0136C08091E7018132D9F58091EB01E1
+:101590009091EC01892BA9F58091E800877F8093D9
+:1015A000E8000E94F00C8091E90180930C010C94FA
+:1015B000A5158091E701813221F58091E800877FB0
+:1015C0008093E8000E94F00C8091EA01809363010F
+:1015D00008958091E701813AA1F48091E800877F26
+:1015E0008093E8008091E80080FFFCCF8091630148
+:1015F0008093F1008091E8008E778093E8000C944E
+:10160000F00C089584B7877F84BF88E10FB6F89403
+:1016100080936000109260000FBE90E080E80FB6EB
+:10162000F89480936100909361000FBE0E948A102D
+:101630000E94410D0E949E0D8091E2008460809383
+:10164000E20078940E9419100E948C1082E091E0D0
+:101650000E9436100E9414238091E601853069F4BF
+:101660000E945A1C8091E4018823B1F30E94821CDD
+:10167000882391F30E94990BEFCF0E949210ECCF38
+:10168000292F332723303105A9F06CF4213031059F
+:1016900009F442C02230310509F043C08DE690E0E4
+:1016A00024E037E042C021323105C9F02232310551
+:1016B00019F137C099278130910541F082309105A9
+:1016C00041F0892B71F5E0E0F7E005C0E8EEF6E0C7
+:1016D00002C0E0EDF6E0849190E09F0126C0643006
+:1016E00000F5E62FF0E0EE0FFF1FEE5DFE4F2081CC
+:1016F000318189E090E019C0643098F4E62FF0E081
+:10170000DF01AA0FBB1FA65EBE4F2D913C91EA5E82
+:10171000FE4F808190E009C082E190E021E737E050
+:1017200004C080E090E020E030E0FA0131832083C3
+:10173000089580E189BD82E189BD09B400FEFDCF35
+:101740008091D8008F7D8093D8008091E0008260E6
+:101750008093E0008091E00081FDFCCF0895CF925E
+:10176000DF92EF92FF920F931F93CF93DF937C0151
+:101770008B01EA010E94110D811131C0209731F0D7
+:1017800088819981081B190BE80EF91EC12CD12CF8
+:101790000115110519F18091E80085FD14C08091B3
+:1017A000E8008E778093E800209741F08881998146
+:1017B0008C0D9D1D9983888385E011C00E94110DB9
+:1017C000882331F30CC0F70181917F018093F100F0
+:1017D00001501109FFEFCF1ADF0ADACF80E0DF9165
+:1017E000CF911F910F91FF90EF90DF90CF900895D0
+:1017F0002091ED013091EE012617370748F0611571
+:10180000710539F42091E8002E772093E80001C09B
+:10181000B901FC0120E061157105B9F18091E60183
+:10182000882309F440C0853009F43FC08091E80066
+:1018300083FD3DC08091E80082FF06C08091E800F2
+:1018400082FF26C080E008958091E80080FFE3CF0A
+:101850002091F3008091F20090E0922B61157105C8
+:1018600051F08830910538F421912093F1006150B6
+:1018700071090196F3CF21E0089709F020E08091EB
+:10188000E8008E778093E800C6CF2111C7CFD6CF6E
+:101890008091E601882339F0853039F08091E800A5
+:1018A00083FFCCCF04C082E0089583E0089581E0F7
+:1018B00008952091ED013091EE012617370748F089
+:1018C0006115710539F42091E8002E772093E80026
+:1018D00001C0B901FC0120E061157105C1F18091E1
+:1018E000E601882309F441C0853009F440C08091A5
+:1018F000E80083FD3EC08091E80082FF06C0809131
+:10190000E80082FF27C080E008958091E80080FF12
+:10191000E3CF2091F3008091F20090E0922B6115CB
+:10192000710559F08830910540F424912093F1001D
+:101930003196615071090196F2CF21E0089709F0C4
+:1019400020E08091E8008E778093E800C5CF2111D8
+:10195000C6CFD5CF8091E601882339F0853039F0A4
+:101960008091E80083FFCBCF04C082E0089583E03C
+:10197000089581E00895982F973058F59093E900E5
+:10198000981739F07091EC002091ED005091F00023
+:1019900003C0242F762F50E021FF19C03091EB00B7
+:1019A0003E7F3093EB003091ED003D7F3093ED00B2
+:1019B0003091EB0031603093EB007093EC0020939A
+:1019C000ED005093F0002091EE0027FF07C09F5FCD
+:1019D000D3CF8F708093E90081E0089580E008956F
+:1019E0008091E70187FD05C08091E80080FF0EC06F
+:1019F00012C08091E80082FD05C08091E60181114E
+:101A0000F8CF08958091E8008B7708C08091E601B7
+:101A10008111EACF08958091E8008E778093E800E5
+:101A200008958091E4009091E50045E62091EC0056
+:101A300020FF21C02091E80020FD21C02091E60177
+:101A4000222389F0253089F02091EB0025FD0FC07D
+:101A50002091E4003091E5002817390739F341500F
+:101A600041F0C901E3CF82E0089583E0089581E069
+:101A7000089584E008952091E80022FFDFCF80E000
+:101A800008950E94AF0D0E94B70DE0EEF0E0808156
+:101A900081608083E8EDF0E080818F77808319BCDE
+:101AA000A7EDB0E08C918E7F8C9380818F7E8083B8
+:101AB0001092E50108950F931F93CF93DF930E9437
+:101AC000AF0D0E94B70DC8EDD0E088818F77888375
+:101AD00088818068888388818F7D888319BC109273
+:101AE000E6011092E2011092E4011092E30100EE8F
+:101AF00010E0F80180818B7F8083888181608883FA
+:101B000042E060E080E00E94BB0CE1EEF0E080810A
+:101B10008E7F8083E2EEF0E080818160808380812F
+:101B200088608083F80180818E7F808388818061D6
+:101B30008883DF91CF911F910F910895E8EDF0E038
+:101B400080818F7E8083E7EDF0E0808181608083FB
+:101B500084E082BF81E08093E5010C945B0DE8EDA9
+:101B6000F0E080818E7F80831092E20008951092D1
+:101B7000DA001092E10008951F920F920FB60F92B3
+:101B800011242F933F934F935F936F937F938F9382
+:101B90009F93AF93BF93EF93FF938091E10082FFF8
+:101BA0000BC08091E20082FF07C08091E1008B7F33
+:101BB0008093E1000E9418108091DA0080FF1FC01E
+:101BC0008091D80080FF1BC08091DA008E7F8093C7
+:101BD000DA008091D90080FF0DC080E189BD82E1EB
+:101BE00089BD09B400FEFDCF81E08093E6010E942B
+:101BF000200A05C019BC1092E6010E942E0A8091AD
+:101C0000E10080FF19C08091E20080FF15C0809143
+:101C1000E2008E7F8093E2008091E20080618093F9
+:101C2000E2008091D80080628093D80019BC85E0E2
+:101C30008093E6010E94320A8091E10084FF30C067
+:101C40008091E20084FF2CC080E189BD82E189BDE2
+:101C500009B400FEFDCF8091D8008F7D8093D8001D
+:101C60008091E1008F7E8093E1008091E2008F7E81
+:101C70008093E2008091E20081608093E200809195
+:101C8000E201882311F084E007C08091E30087FF20
+:101C900002C083E001C081E08093E6010E94340A23
+:101CA0008091E10083FF29C08091E20083FF25C07D
+:101CB0008091E100877F8093E10082E08093E601DC
+:101CC0001092E2018091E1008E7F8093E10080918B
+:101CD000E2008E7F8093E2008091E2008061809339
+:101CE000E20042E060E080E00E94BB0C8091F000E6
+:101CF00088608093F0000E94310AFF91EF91BF91BC
+:101D0000AF919F918F917F916F915F914F913F9193
+:101D10002F910F900FBE0F901F9018951F920F924A
+:101D20000FB60F9211242F933F934F935F936F93AE
+:101D30007F938F939F93AF93BF93CF93EF93FF9333
+:101D4000C091E900CF708091EC001092E900809181
+:101D5000F000877F8093F00078940E94CA0E109262
+:101D6000E9008091F00088608093F000C093E90062
+:101D7000FF91EF91CF91BF91AF919F918F917F9103
+:101D80006F915F914F913F912F910F900FBE0F90E8
+:101D90001F9018951F93CF93DF93CDB7DEB7AA9707
+:101DA0000FB6F894DEBF0FBECDBFE7EEF1E0809135
+:101DB000F100819321E0EF3EF207C9F70E94500A3B
+:101DC0008091E80083FF1CC12091E7013091E80178
+:101DD000832F90E08A30910508F012C1FC01EA5A85
+:101DE000FF4F0C94AE24203881F0223809F008C14E
+:101DF0008091EB018F708093E9008091EB0085FB6F
+:101E0000882780F91092E90006C08091E301909143
+:101E1000E401911182609091E800977F9093E8002F
+:101E20008093F1001092F100C5C0822F8D7F09F0E0
+:101E3000E7C0222319F0223061F0E2C08091E9016D
+:101E4000813009F0DDC0333009F080E08093E40197
+:101E500028C08091E901811124C02091EB012F70ED
+:101E600009F4CEC02093E9008091EB0080FF19C0F7
+:101E70008091EB00333011F4806211C08061809357
+:101E8000EB0081E090E0022E01C0880F0A94EAF78F
+:101E90008093EA001092EA008091EB0088608093C2
+:101EA000EB001092E9008091E800877F86C0211145
+:101EB000A7C01091E9011F778091E3008078812B02
+:101EC0008093E3008091E800877F8093E8000E9480
+:101ED000F00C8091E80080FFFCCF8091E3008068E7
+:101EE0008093E300112311F083E001C082E080932E
+:101EF000E60186C02058223008F082C08091E901B6
+:101F00009091EA018C3D23E0920779F583E08A8382
+:101F10008AE289834FB7F894DE01139620E03EE011
+:101F200051E2E32FF0E050935700E49120FF03C00B
+:101F3000E295EF703F5FEF708E2F90E0EA3010F087
+:101F4000C79601C0C0968D939D932F5F243149F7AA
+:101F50004FBF8091E800877F8093E8006AE270E0DD
+:101F6000CE0101960E94F80B14C0AE014F5F5F4F87
+:101F70006091EB010E94400B009709F441C0209151
+:101F8000E800277F2093E800BC0189819A810E94A4
+:101F9000590C8091E8008B778093E80031C020389D
+:101FA00079F58091E800877F8093E8008091E201D5
+:101FB0008093F1008091E8008E778093E8000E9482
+:101FC000F00C1EC021111CC09091E9019230C0F4A8
+:101FD0008091E800877F8093E8009093E2010E945F
+:101FE000F00C8091E201811104C08091E30087FF31
+:101FF00002C084E001C081E08093E6010E943C0AB7
+:102000008091E80083FF0AC08091E800877F809379
+:10201000E8008091EB0080628093EB00AA960FB6F7
+:10202000F894DEBF0FBECDBFDF91CF911F91089511
+:102030000895CF938091E6018823B1F08091E90063
+:102040008F709091EC0090FF02C090E801C090E08A
+:10205000C92FC82B1092E9008091E80083FD0E94EF
+:10206000CA0ECF70C093E900CF9108959093690193
+:10207000809368010895E0916801F09169013097BB
+:1020800021F00190F081E02D099480E00895E09125
+:102090006801F0916901309721F00280F381E02D11
+:1020A00009940895E0916801F0916901309721F059
+:1020B0000480F581E02D0994089520916601309106
+:1020C00067018217930771F090936701809366010F
+:1020D000E0916801F0916901309721F00680F78165
+:1020E000E02D0994089520916401309165018217D3
+:1020F000930771F09093650180936401E09168010A
+:10210000F0916901309721F00084F185E02D099468
+:10211000089508950C9489100E949D1C0E94170632
+:102120000C94631DCF92DF92EF92FF920F931F9357
+:10213000CF93DF93CDB7DEB72B970FB6F894DEBF02
+:102140000FBECDBF0E942F063BE6E32E31E0F32EFB
+:1021500000E010E0C02E802F0E941C07F701D190F4
+:102160007F01D826B1F40F5F1F4F0E30110591F794
+:102170008FEF89838A831B820E94A61C8160782F3F
+:102180009D838C8349815A816B818D810E94351199
+:1021900041C09091CD0191FF04C08B870E9422071E
+:1021A0008B8520E030E04D2D50E0922FBA01022EB9
+:1021B00002C0759567950A94E2F760FF25C02E83EB
+:1021C000CF82EE24E394F12C02C0EE0CFF1C9A9512
+:1021D000E2F790E08E219F2121E0892B09F420E095
+:1021E00028870E94A61C8160782F9A8789874E8154
+:1021F0005F8168858A850E943511F801E559FE4F97
+:1022000080818E25808306C02F5F3F4F26303105A9
+:1022100061F6A9CF0E94472010916A010E943B10ED
+:102220001817A1F00E943B1080936A012B960FB6FD
+:10223000F894DEBF0FBECDBFDF91CF911F910F91FC
+:10224000FF90EF90DF90CF900C9440092B960FB643
+:10225000F894DEBF0FBECDBFDF91CF911F910F91DC
+:10226000FF90EF90DF90CF900895CF93DF93CDB79D
+:10227000DEB72B970FB6F894DEBF0FBECDBF4F83EE
+:10228000588769877A878B87DE01119686E0FD0182
+:1022900011928A95E9F785E0FE01379601900D923B
+:1022A0008A95E1F749815A816B817C818D819E817C
+:1022B0000E9471182B960FB6F894DEBF0FBECDBFEB
+:1022C000DF91CF910895CF93C82F882309F4C1C01F
+:1022D000823859F40E943B1081FDBBC089E30E9403
+:1022E0000E1B0E94D81B89E30CC0833879F40E942E
+:1022F0003B1080FDAEC083E50E940E1B0E94D81BE0
+:1023000083E50E944E1BCF910C94D81B843859F45E
+:102310000E943B1082FD9DC087E40E940E1B0E941C
+:10232000D81B87E4EECF8CEF8C0F813A48F48C2FCA
+:102330000E947C2281118DC08C2F0E940E1BE3CF46
+:1023400080E28C0F883048F4C77081E001C0880FAC
+:10235000CA95EAF70E948F1BD6CF8BE58C0F83308E
+:1023600078F4C53A29F0C63A31F482E890E005C025
+:1023700081E890E002C083E890E0CF910C945D107A
+:1023800088E58C0F833108F064C0C83A39F1C93A46
+:1023900041F1CA3A49F1CB3A51F1CC3A59F1CD3A2F
+:1023A00061F1C03B69F1CE3A71F1CF3A79F1C13BAD
+:1023B00081F1C23B89F1C33B91F1C43B99F1C53B2B
+:1023C000A1F1C63BA9F1C73BB1F1C83BB9F1C93B8B
+:1023D000C1F1CA3BC9F58AE292E038C082EE90E0D2
+:1023E00035C089EE90E032C08AEE90E02FC085EBD8
+:1023F00090E02CC086EB90E029C087EB90E026C0EF
+:102400008CEC90E023C08DEC90E020C083E891E05C
+:102410001DC08AE891E01AC082E991E017C084E902
+:1024200091E014C081E292E011C083E292E00EC01C
+:1024300084E292E00BC085E292E008C086E292E07E
+:1024400005C087E292E002C080E090E0CF910C945A
+:102450007310CF910895882309F44BC0823859F442
+:102460000E943B1081FF45C089E30E940E1B0E9421
+:10247000D81B89E30CC0833871F40E943B1080FFA5
+:1024800038C083E50E940E1B0E94D81B83E50E9482
+:102490004E1B0C94D81B843859F40E943B1082FFC9
+:1024A00028C087E40E940E1B0E94D81B87E4EFCF50
+:1024B0009CEF980F913A58F390E2980F983050F4AF
+:1024C000877091E001C0990F8A95EAF7892F0E94E1
+:1024D000951BDFCF9BE5980F933020F480E090E0D0
+:1024E0000C945D10885A833120F480E090E00C94C5
+:1024F00073100895882321F00E948F1B0C94D81B21
+:102500000895882321F00E94951B0C94D81B0895F0
+:10251000CF92DF92EF92FF920F931F93CF93DF93AF
+:10252000CDB7DEB728970FB6F894DEBF0FBECDBF8C
+:102530008C0185E0F801DE01119601900D928A95DB
+:10254000E1F7F80140813181F280258122952F70D9
+:1025500083819481892B31F03F3F31F481E04F3FFB
+:1025600019F403C081E001C080E080FDCBC2498343
+:102570003A8389819A812F830E94CC1A9E8388870F
+:102580000E94CB1A0E949E192F814E816885FF20E0
+:1025900029F00E94AC1B68854E812F81E42FE295C3
+:1025A000EF70F0E0E05AFF4F0C94AE24842F807F50
+:1025B000142F1F70882311F01295107FFF2059F0FF
+:1025C000112309F454C2812F68870E949F1B0E9427
+:1025D000D81B68854CC2862F0E942B12112309F448
+:1025E00091C2812F0E94A51B28960FB6F894DEBFDA
+:1025F0000FBECDBFDF91CF911F910F91FF90EF9054
+:10260000DF90CF900C94D81B342F307F842F8F70A5
+:10261000303211F08295807F662319F0613019F114
+:102620002BC0FF20B1F0222309F493C1213009F01F
+:1026300090C128960FB6F894DEBF0FBECDBFDF91D4
+:10264000CF911F910F91FF90EF90DF90CF900C945E
+:10265000BF1B222319F0213009F454C28E830E943B
+:10266000C21B8E8189C1FF2021F0223008F04AC2AE
+:1026700070C1211147C280C1FF2021F0222309F43B
+:1026800068C1F5C1222309F477C105C2242F26951C
+:102690002695237030E02115310521F021303105D8
+:1026A000C9F030C2FF2021F0862F942F937002C012
+:1026B00080E090E028960FB6F894DEBF0FBECDBF45
+:1026C000DF91CF911F910F91FF90EF90DF90CF900E
+:1026D0000C945D10FF2021F0862F942F937002C080
+:1026E00080E090E028960FB6F894DEBF0FBECDBF15
+:1026F000DF91CF911F910F91FF90EF90DF90CF90DE
+:102700000C947310862FFF2019F00E944F1F02C0F7
+:102710000E94B71F28960FB6F894DEBF0FBECDBF3C
+:10272000DF91CF911F910F91FF90EF90DF90CF90AD
+:102730000C943C20842F837009F076C0F110E2C124
+:10274000262F229526952770220F220F862F8F7015
+:10275000C82ED12CE12CF12C022E04C0CC0CDD1C97
+:10276000EE1CFF1C0A94D2F764FF10C06FE070E00B
+:1027700080E090E004C0660F771F881F991F2A959C
+:10278000D2F7609570958095909503C060E070E0F9
+:10279000CB01242F269526952370422F50E04230FE
+:1027A0005105D1F04330510559F16C297D298E290D
+:1027B0009F294130510541F128960FB6F894DEBFAC
+:1027C0000FBECDBFDF91CF911F910F91FF90EF9082
+:1027D000DF90CF900C94C3196C297D298E299F29F5
+:1027E00028960FB6F894DEBF0FBECDBFDF91CF9114
+:1027F0001F910F91FF90EF90DF90CF900C94DD1917
+:102800000E94C319C701B60128960FB6F894DEBF1F
+:102810000FBECDBFDF91CF911F910F91FF90EF9031
+:10282000DF90CF900C94A919FF2019F0842F8170AC
+:1028300001C08695882309F465C1262F2295269527
+:102840002770220F220F862F8F70C82ED12CE12CDB
+:10285000F12C022E04C0CC0CDD1CEE1CFF1C0A94D3
+:10286000D2F764FF10C06FE070E080E090E004C039
+:10287000660F771F881F991F2A95D2F7609570956C
+:102880008095909503C060E070E0CB01242F2695E1
+:1028900026952370422F50E042305105D1F043304D
+:1028A000510559F16C297D298E299F294130510507
+:1028B00041F128960FB6F894DEBF0FBECDBFDF9171
+:1028C000CF911F910F91FF90EF90DF90CF900C94DC
+:1028D000971A6C297D298E299F2928960FB6F8947E
+:1028E000DEBF0FBECDBFDF91CF911F910F91FF9043
+:1028F000EF90DF90CF900C94B11A0E94971AC70105
+:10290000B60128960FB6F894DEBF0FBECDBFDF919B
+:10291000CF911F910F91FF90EF90DF90CF900C948B
+:102920007D1A603FC9F118F4603E50F49BC0623FCD
+:1029300009F460C008F44AC0633F09F46FC092C054
+:10294000162F1F70842F8F71FF2099F00E94161A86
+:10295000812F28960FB6F894DEBF0FBECDBFDF9152
+:10296000CF911F910F91FF90EF90DF90CF900C943B
+:102970007A120E94371A812F28960FB6F894DEBF7C
+:102980000FBECDBFDF91CF911F910F91FF90EF90C0
+:10299000DF90CF900C948112FF20A1F02111B2C0E2
+:1029A000842F8F7128960FB6F894DEBF0FBECDBF6F
+:1029B000DF91CF911F910F91FF90EF90DF90CF901B
+:1029C0000C945C1A223008F09DC0EACFFF20A1F0E1
+:1029D000842F8F7128960FB6F894DEBF0FBECDBF3F
+:1029E000DF91CF911F910F91FF90EF90DF90CF90EB
+:1029F0000C94161AFF2061F3842F8F7128960FB65E
+:102A0000F894DEBF0FBECDBFDF91CF911F910F9124
+:102A1000FF90EF90DF90CF900C94371AFF2091F049
+:102A2000842F8F7128960FB6F894DEBF0FBECDBFEE
+:102A3000DF91CF911F910F91FF90EF90DF90CF909A
+:102A40000C94011A28960FB6F894DEBF0FBECDBFC6
+:102A5000DF91CF911F910F91FF90EF90DF90CF907A
+:102A60000C94F719FF20A1F0222309F4B1CF862F8F
+:102A700028960FB6F894DEBF0FBECDBFDF91CF9181
+:102A80001F910F91FF90EF90DF90CF900C94631106
+:102A9000222309F4B1CF862F28960FB6F894DEBF13
+:102AA0000FBECDBFDF91CF911F910F91FF90EF909F
+:102AB000DF90CF900C942B124F70C8010E94A50498
+:102AC00028960FB6F894DEBF0FBECDBFDF91CF9131
+:102AD0001F910F91FF90EF90DF90CF900C941E19F3
+:102AE0004F70C80128960FB6F894DEBF0FBECDBF59
+:102AF000DF91CF911F910F91FF90EF90DF90CF90DA
+:102B00000C94E20728960FB6F894DEBF0FBECDBF37
+:102B1000DF91CF911F910F91FF90EF90DF90CF90B9
+:102B200008950E94AC1B0E94BC1B0E94811B0E9446
+:102B3000D81B0E94E8200E943C2080E090E00E9488
+:102B40005D1080E090E00C9473100E949C1B0C942C
+:102B500091150E94CC1A292F22952F7030E02C302D
+:102B600031054CF42A3031056CF422503109223001
+:102B7000310590F407C02C30310551F02F3031056C
+:102B800039F00AC0803E10F0803F31F481E00895B2
+:102B900093FB882780F9089580E00895CF93DF9311
+:102BA00000D000D01F92CDB7DEB70F900F900F90DE
+:102BB0000F900F90DF91CF910895CF93DF9300D0C6
+:102BC00000D000D0CDB7DEB726960FB6F894DEBFA2
+:102BD0000FBECDBFDF91CF9108951F93CF93DF93A9
+:102BE000C091790116E080917A01C81799F0D0E080
+:102BF0001C9FF0011D9FF00D1124E558FE4F4081F0
+:102C0000518162817381848195810E94DD152196B5
+:102C1000C770E9CFDF91CF911F9108954091AB012B
+:102C20005091AC016091AD017091AE018091AF0106
+:102C30009091B0010C94DD15CF938091B0018295F5
+:102C40008F7009F05FC08091AD01882309F45AC0EC
+:102C500020917901A0917A016091AB017091AC0152
+:102C60008091AE019091AF0131E06F3F09F030E00B
+:102C7000B32FC6E02A1709F445C0009721F07F3F23
+:102C800021F44B2F03C041E001C040E030E040FDA3
+:102C900035C0C29FF001C39FF00D1124E558FE4FCF
+:102CA000418174132BC04081641328C042814111BB
+:102CB00025C0438154814817590710F441505109E8
+:102CC000481B590B483C5105C8F48091B0018F70E6
+:102CD00080618093B00186E0829FF001839FF00DB8
+:102CE0001124E058FE4F80818F70806180838BEAD1
+:102CF00091E00E948812CF910C94ED152F5F3F4F09
+:102D00002770B8CFCF910895CF92DF92EF92FF92C4
+:102D10000F931F93CF93DF93CDB7DEB762970FB6B4
+:102D2000F894DEBF0FBECDBF8C0185E0F801DE0157
+:102D30001D9601900D928A95E1F7D8014C9111965C
+:102D40005C91119712966C9112971396ED90FC90EE
+:102D500014977091AB01E091AC012091AE013091DC
+:102D6000AF012115310531F0EF3F31F481E07F3FB4
+:102D700019F403C081E001C080E0B82FB170CB2E00
+:102D800080FD6CC1D090AD01DD2009F4F5C0F0915B
+:102D9000B001E216F30638F0C701821B930B883CA2
+:102DA000910548F09BC0209530952E0D3F1D283C85
+:102DB000310508F093C08F2F807F09F052C0E513D2
+:102DC00014C0741312C0D62E61110FC0FF70F061D1
+:102DD000F093B0010E940E168BEA91E00E948812D7
+:102DE0008091B001F80185836CC1EF2831F05F3F1D
+:102DF00031F481E04F3F19F403C081E001C080E06D
+:102E000080FD03C081E0862701C080E0F82FF170CB
+:102E1000FF2E80FF1CC08091790120917A0136E05D
+:102E2000821709F428C190E0389FF001399FF00D16
+:102E30001124E558FE4F7181571306C07081471366
+:102E400003C07281671303C001968770E9CFD62E45
+:102E5000662309F436C18091B00181608093B0018E
+:102E600053C0E51308C0741306C0611104C0D80133
+:102E70001596FC93AEC04D875E878D859E856A8BC7
+:102E80000E94A9156A89882329F1D62E662311F19B
+:102E90002091B001822F82958F7090E002970CF400
+:102EA00060C08091AB019091AC0198878F831986A7
+:102EB000FB86EA862C87CE01079651C0E51731F1D3
+:102EC0004D875E878D859E856A8B0E94A9156A89CC
+:102ED00081112EC0C8010E948812A4C08F2F807F4C
+:102EE00069F77E2DF98AE88A89890E94CE158BEAD6
+:102EF00091E00E948812EBEAF1E086E0DF011D928A
+:102F00008A95E9F70E940E16D12CDBC07413D8CF36
+:102F10006111D6CFD8011596FC93C8010E94881282
+:102F2000EBEAF1E086E0DF011D928A95E9F7C9C07E
+:102F3000D62E662379F22091B001822F82958F7070
+:102F400090E0029774F08091AB019091AC019A836C
+:102F500089831B82FD82EC822E83CE0101960E9422
+:102F6000881286E0F801ABEAB1E001900D928A95F3
+:102F7000E1F70E941C166FC0E216F30628F0C701A5
+:102F8000821B930B9C0104C0209530952E0D3F1D94
+:102F9000283C310508F052C0D62E662309F49ACF9A
+:102FA000E5132CC074132AC08091B00180FD1DC0B0
+:102FB000982F92959F70C9F0D80115968C9315970C
+:102FC0009F3039F09F5F9295907F8F70892B159677
+:102FD0008C93C8010E94881286E0F801ABEAB1E048
+:102FE00001900D928A95E1F736C086E0F801ABEAD0
+:102FF000B1E001900D928A95E1F763C04D875E873D
+:103000008D859E850E94A915882379F086E0F801B8
+:10301000ABEAB1E001900D928A95E1F70E941C168F
+:103020000E940E16DD24D3944CC08091B0018160C3
+:103030008093B001C8010E94881243C07E2DF98A96
+:10304000E88A89890E94CE15EBEAF1E086E0DF018B
+:103050001D928A95E9F70E940E1633C0662309F483
+:1030600039CF4D875E878D859E850E94A91588235F
+:1030700009F430CFCBCF4D875E878D859E850E942A
+:10308000CC1A292F22952F7030E0223031052CF4F4
+:103090009F7041F0811106C00CC0243031052CF422
+:1030A0009F7049F4805E883020F0C8010E94881229
+:1030B000CF2CDC2C06C0D80115969C91907F91F7FF
+:1030C000F8CF8D2D62960FB6F894DEBF0FBECDBF40
+:1030D000DF91CF911F910F91FF90EF90DF90CF90F4
+:1030E00008951F93CF93DF93CDB7DEB72C970FB61C
+:1030F000F894DEBF0FBECDBF4F83588769877A87AC
+:103100008B879C87CE0107960E9484168823C1F086
+:103110002F8138858A859B85892B31F03F3F11F0BF
+:1031200080E003C02F3FE1F781E0811147C04F816C
+:10313000588569857A858B859C850E94DD153EC002
+:1031400086E0FE013796DE01119601900D928A9578
+:10315000E1F7FF81E8854A855B854115510531F02E
+:10316000EF3F31F481E0FF3F19F403C081E001C07B
+:1031700080E080FD23C020917A0130E0C9010196F2
+:10318000877099276091790170E086179707F1F1B0
+:10319000F983EA835D834C8396E0929FD001939FED
+:1031A000B00D1124A558BE4FFE01319601900D922D
+:1031B0009A95E1F780937A010E94ED1516E08091CF
+:1031C000790190917A01891779F1189FC001112432
+:1031D00085589E4F0E948416882331F1E091790131
+:1031E0001E9FF0011124E558FE4F408151816281FC
+:1031F0007381848195810E94DD158091790190E031
+:1032000001968770992780937901D9CF0E94A515DF
+:1032100010927A0110927901EBEAF1E086E0DF0189
+:103220001D928A95E9F7CACF2C960FB6F894DEBFA7
+:103230000FBECDBFDF91CF911F910895EF92FF9206
+:103240000F931F93CF93DF93FC01009709F46FC096
+:10325000F12CEE24E394EF0121968491843740F41D
+:10326000843008F055C0813081F0823021F15FC098
+:10327000853709F447C0C0F19CE7980F903708F0F4
+:1032800056C08F770E942B1245C08F010E5F1F4FD3
+:10329000FE01849190E2980F983050F48770FE2DD3
+:1032A00001C0FF0F8A95EAF78F2F0E94AF1B15C050
+:1032B0000E94631114C08F010E5F1F4FFE018491A5
+:1032C00090E2980F983068F48770FE2D01C0FF0FD0
+:1032D0008A95EAF78F2F0E94B51B0E94D81BE80140
+:1032E00019C00E942B12FBCFCF010296FE01C491A0
+:1032F000CC2361F0EFE9FFE03197F1F700C0000067
+:10330000C150F6CFCF010296FE01F490EC0102C04D
+:103310000E9463118F2D882341F0EFE9FFE0319780
+:10332000F1F700C000008150F6CFFE0194CFDF918D
+:10333000CF911F910F91FF90EF90089508956093A2
+:10334000B5017093B6018093B7019093B8010C94C6
+:1033500091150F931F930091B5011091B601209123
+:10336000B7013091B801062B172B282B392B00936E
+:10337000B5011093B6012093B7013093B8011F91A6
+:103380000F910C9491150F931F930091B50110911B
+:10339000B6012091B7013091B801062317232823E5
+:1033A00039230093B5011093B6012093B7013093F0
+:1033B000B8011F910F910C9491150F931F930091D9
+:1033C000B5011091B6012091B7013091B8010627DF
+:1033D0001727282739270093B5011093B6012093AA
+:1033E000B7013093B8011F910F910C949115109271
+:1033F000B1011092B2011092B3011092B4010C9479
+:10340000911541E050E060E070E004C0440F551FAA
+:10341000661F771F8A95D2F74093B1015093B2018E
+:103420006093B3017093B4010C94911541E050E0A6
+:1034300060E070E004C0440F551F661F771F8A9537
+:10344000D2F78091B1019091B201A091B301B091F6
+:10345000B401842B952BA62BB72B8093B1019093AD
+:10346000B201A093B301B093B4010C94911541E063
+:1034700050E060E070E004C0440F551F661F771FE6
+:103480008A95D2F740955095609570958091B101DD
+:103490009091B201A091B301B091B401842395231E
+:1034A000A623B7238093B1019093B201A093B301F7
+:1034B000B093B4010C94911541E050E060E070E0ED
+:1034C00004C0440F551F661F771F8A95D2F780915D
+:1034D000B1019091B201A091B301B091B4018427E0
+:1034E0009527A627B7278093B1019093B201A093A7
+:1034F000B301B093B4010C9491150F931F930091F5
+:10350000B1011091B2012091B3013091B401062BA9
+:10351000172B282B392B0093B1011093B201209364
+:10352000B3013093B4011F910F910C9491150F9337
+:103530001F930091B1011091B2012091B30130911C
+:10354000B40106231723282339230093B1011093D4
+:10355000B2012093B3013093B4011F910F910C94E9
+:1035600091150F931F930091B1011091B201209119
+:10357000B3013091B4010627172728273927009374
+:10358000B1011093B2012093B3013093B4011F91A4
+:103590000F910C9491150895CF92DF92EF92FF92C4
+:1035A0000F931F93CF93DF93EC01C090B501D090A0
+:1035B000B601E090B701F090B8018091B10190910F
+:1035C000B201A091B301B091B401C82AD92AEA2A64
+:1035D000FB2A0FE110E0B701A601002E04C076958A
+:1035E0006795579547950A94D2F740FF07C0BE01EB
+:1035F000802F0E9405088130910539F4015011098E
+:1036000050F7BE0180E00E940508DF91CF911F9125
+:103610000F91FF90EF90DF90CF90089590910C0163
+:103620009923D9F090910D019923B9F0982F96958F
+:10363000969596959F3088F5E0910E01F0910F01D7
+:10364000E90FF11D877021E030E001C0220F8A955B
+:10365000EAF78181822B8183089540910E01509178
+:103660000F0120E030E09FEFFA01E20FF31F6281CB
+:10367000681799F09F3F19F4611101C0922F2F5FD5
+:103680003F4F2E30310581F79F3F39F0FA01E90FA6
+:10369000F11D97FDFA9582830895089590910C018C
+:1036A0009923E1F090910D019923C1F0982F9695FF
+:1036B000969596959F3020F5E0910E01F0910F01BF
+:1036C000E90FF11D877021E030E001C0220F8A95DB
+:1036D000EAF72095818128232183089540910E01E6
+:1036E00050910F0120E030E0FA01E20FF31F9281C8
+:1036F000981301C012822F5F3F4F2E303105A1F782
+:10370000089581E090E0E0910E01F0910F01E80F43
+:10371000F91F1082019680319105A9F708959091C3
+:10372000CC01982B9093CC01089580959091CC0179
+:1037300098239093CC0108951092CC010895909114
+:10374000CB01982B9093CB01089580959091CB015C
+:1037500098239093CB0108951092CB0108959091F6
+:10376000CA01982B9093CA01089580959091CA013F
+:1037700098239093CA0108951092CA0108958093E6
+:10378000B90108951092B901089540910E01509128
+:103790000F0120E030E080E0FA01E20FF31F918199
+:1037A00091118F5F2F5F3F4F2F303105A9F708959B
+:1037B000E0910E01F0910F018091CC018083E091A6
+:1037C0000E01F0910F0180819091CB01892B8083B4
+:1037D000E0910E01F0910F0180819091CA01892B37
+:1037E00080839091B901992361F0E0910E01F091ED
+:1037F0000F018081892B80830E94C51B811110924B
+:10380000B90180910E0190910F010C944710CF9255
+:10381000DF92EF92FF920F931F936C01EE24FF242F
+:10382000C114D104E104F10421F46B017C0180E0B6
+:1038300001C080E133272F2D1E2D0D2D01151105FF
+:103840002105310519F0885F68017901970186012A
+:10385000A4E03695279517950795AA95D1F70115F8
+:1038600011052105310519F08C5F68017901970177
+:103870008601F2E03695279517950795FA95D1F7C9
+:10388000011511052105310519F08E5F68017901D7
+:10389000B701A6017695679557954795452B462B19
+:1038A000472B09F08F5F1F910F91FF90EF90DF90F2
+:1038B000CF9008958091E601843009F11092CE01F5
+:1038C00020E488E190E00FB6F894A895809360001A
+:1038D0000FBE2093600083B7817F846083BF83B76E
+:1038E000816083BF7894889583B78E7F83BF88E19A
+:1038F0000FB6F89480936000109260000FBE089598
+:1039000008950895CF930E94801C0E942F060E9464
+:10391000811CC0E08C2F0E941C07811105C0CF5F65
+:10392000CE30C1F780E001C081E0CF9108950E94C0
+:10393000A5150E943B100C94400982E084BD93E0E1
+:1039400095BD9AEF97BD80936E0008952FB7F894B8
+:103950008091CF019091D001A091D101B091D2017D
+:103960002FBF0895CF92DF92EF92FF920F931F9394
+:103970002FB7F8944091CF015091D0016091D101BF
+:103980007091D2012FBF6A017B01EE24FF248C01CC
+:1039900020E030E0C016D106E206F30610F44150F4
+:1039A0005109481B590BCA011F910F91FF90EF90CD
+:1039B000DF90CF9008951F920F920FB60F921124AF
+:1039C0008F939F93AF93BF938091CF019091D0013C
+:1039D000A091D101B091D2010196A11DB11D80939A
+:1039E000CF019093D001A093D101B093D201BF91A8
+:1039F000AF919F918F910F900FBE0F901F901895D0
+:103A00000E94410DF8942FEF87EA91E62150804003
+:103A10009040E1F700C0000087E090EBDC0180936C
+:103A2000EF019093F001A093F101B093F2012CE02B
+:103A300088E190E00FB6F894A895809360000FBEDF
+:103A400020936000FFCFEF92FF920F931F93CF93CD
+:103A5000DF93E82EF12C8F2D0E941C07C0E0D0E0F0
+:103A6000082F10E098010C2E02C0359527950A9476
+:103A7000E2F720FD05C02196C630D10599F709C0AF
+:103A80006C2F7F2D80E00E94E307E812F4CF81E0E5
+:103A900005C0F3948EE0F812DECF80E0DF91CF9185
+:103AA0001F910F91FF90EF900895CF93C82F8CE254
+:103AB0000E94231D882321F08C2FCF910C94231D6D
+:103AC00080E0CF910895CF930E94A81E811102C07B
+:103AD0000E948E1EC5E6C15049F00E942F068FE35A
+:103AE0009CE90197F1F700C00000F5CF89E20E9440
+:103AF000551D811111C18AE20E94551D81110E943C
+:103B00008E1E85E00E94551D81110E94001D0E949D
+:103B1000B31E8093CD0187E00E94551D882399F143
+:103B20008BE10E94551D882351F09091CD0191FBAE
+:103B3000882780F921E0822780FB91F922C08EE05E
+:103B40000E94551D882351F09091CD0192FB88274A
+:103B500080F921E0822780FB92F913C080E10E9466
+:103B6000551D9091CD01882341F093FB882780F962
+:103B700021E0822780FB93F904C0892F809580FB88
+:103B800090F99093CD018091CD010E94B71E0E94C3
+:103B9000C51E8093E00180EE0E94551D882341F0F0
+:103BA0008091E001982F909590FB80F98093E0013F
+:103BB00089E30E94551D882359F09091E00191FB03
+:103BC000882780F921E0822780FB91F99093E0011A
+:103BD00082EE0E94551D882359F09091E00192FBDE
+:103BE000882780F921E0822780FB92F99093E001F9
+:103BF00086EE0E94551D882359F09091E00193FBB9
+:103C0000882780F921E0822780FB93F99093E001D7
+:103C100083EE0E94551D882359F09091E00194FB9A
+:103C2000882780F921E0822780FB94F99093E001B6
+:103C300085E30E94551D882359F09091E00195FB82
+:103C4000882780F921E0822780FB95F99093E00195
+:103C500081E30E94551D882359F09091E00196FB65
+:103C6000882780F921E0822780FB96F99093E00174
+:103C700081E10E94551D882359F09091E00197FB46
+:103C8000882780F921E0822780FB97F99093E00153
+:103C90008091E0010E94C91E8091E00187FB882786
+:103CA00080F980930D0187E20E94551DC82F8EE197
+:103CB0000E94551D8111C2608FE10E94551D811126
+:103CC000C46080E20E94551D8111C86081E20E949B
+:103CD000551D8111C06182E20E94551D8111C06293
+:103CE00083E20E94551D8111C06484E20E94551D2B
+:103CF000882311F0C06802C0CC2329F08C2F0E94C9
+:103D0000C01E6C2F03C00E94BC1E682F70E080E0B4
+:103D100090E0CF910C949F19CF9108956DEE7EEFB6
+:103D200080E090E00E94E42460E082E090E00E9465
+:103D3000D62460E083E090E00E94D62460E084E036
+:103D400090E00E94D62460E085E090E00C94D624B8
+:103D500080E090E00E94D02421E08D3E9E4F09F04B
+:103D600020E0822F089582E090E00C94C824682F10
+:103D700082E090E00C94D62483E090E00C94C82478
+:103D8000682F83E090E00C94D62484E090E00C94BB
+:103D9000C824682F84E090E00C94D6248091D5014B
+:103DA00080FF0BC06091130185E0689FB001112472
+:103DB00075956795759567952AC081FF09C06091D3
+:103DC000130185E0689FB0011124759567951FC0A8
+:103DD00082FF07C06091130185E0689FB001112444
+:103DE00016C04091D6014423C9F0609112014617D4
+:103DF00088F72091130185E0289F90011124429FAC
+:103E0000C001439F900D112470E00E949A246038F5
+:103E1000710540F46115710539F002C065E070E08C
+:103E2000862F08958FE7089581E008958091D50148
+:103E300080FF08C06091110170E0759567957595D8
+:103E4000679521C081FF06C06091110170E07595F2
+:103E5000679519C082FF04C06091110170E010C025
+:103E60008091D6018823C1F0609110018617A0F7D8
+:103E700090911101989FC001112470E00E949A2432
+:103E80006038710528F46115710521F0862F0895B9
+:103E90008FE7089581E0089561E070E0F4CF803FFE
+:103EA00021F40E94CE1E819504C0813F29F40E9416
+:103EB000CE1E8093D9010895823F21F40E94CE1E28
+:103EC000819504C0833F29F40E94CE1E8093D801BF
+:103ED0000895893F19F40E94161F05C08A3F31F4E6
+:103EE0000E94161F81958093DA0108958B3F21F47B
+:103EF0000E94161F819504C08C3F29F40E94161F52
+:103F00008093DB010895843F21F48091D701816083
+:103F100017C0853F21F48091D701826011C0863F90
+:103F200021F48091D70184600BC0873F21F48091F8
+:103F3000D701886005C0883F31F48091D701806146
+:103F40008093D70108958D3F21F48091D501816040
+:103F50000BC08E3F21F48091D501826005C08F3F58
+:103F600029F48091D50184608093D5010895803F24
+:103F700039F48091D90187FF6CC01092D90169C0D2
+:103F8000813F29F48091D9011816BCF362C0909149
+:103F9000D801823F29F497FF5CC01092D80159C024
+:103FA000833F19F41916CCF354C0893F41F4809132
+:103FB000DA0118160CF04DC01092DA014AC08A3F9F
+:103FC00029F48091DA0187FF44C0F6CF8B3F39F4A2
+:103FD0008091DB0187FF3DC01092DB013AC08C3F2E
+:103FE00029F48091DB011816BCF333C0843F21F41F
+:103FF0008091D7018E7F17C0853F21F48091D70132
+:104000008D7F11C0863F21F48091D7018B7F0BC03B
+:10401000873F21F48091D701877F05C0883F31F425
+:104020008091D7018F7E8093D70113C08D3F21F4FB
+:104030008091D5018E7F0BC08E3F21F48091D501F8
+:104040008D7F05C08F3F29F48091D5018B7F8093B0
+:10405000D5018091D80181110EC08091D9018111C3
+:104060000AC08091DA01811106C08091DB018111C3
+:1040700002C01092D601089587ED91E00E9452107F
+:104080000E94A61C9093D4018093D30108951F939E
+:10409000CF93DF938091D3019091D4010E94B21C01
+:1040A0004091D601442321F02091140130E006C054
+:1040B000209115015AE0259F900111248217930742
+:1040C00008F482C08091D8011091D901D091DA0111
+:1040D000C091DB01811107C0111105C0D11103C0CE
+:1040E000CC2309F471C04F3F19F04F5F4093D601C4
+:1040F000181624F40E94CE1E8093D8018091D80116
+:1041000087FF05C00E94CE1E81958093D8011116AD
+:1041100024F40E94CE1E8093D9018091D90187FF9B
+:1041200005C00E94CE1E81958093D9016091D8016F
+:10413000662339F11091D901112319F1772767FD11
+:104140007095872F972F0E94AB2323E333E343E33C
+:104150005FE30E940F240E9478236093D801612FAF
+:10416000772767FD7095872F972F0E94AB2323E356
+:1041700033E343E35FE30E940F240E9478236093BC
+:10418000D9011D1624F40E94161F8093DA01809134
+:10419000DA0187FF05C00E94161F81958093DA011E
+:1041A0001C1624F40E94161F8093DB018091DB0112
+:1041B00087FF05C00E94161F81958093DB01DF9168
+:1041C000CF911F910C943C20DF91CF911F910895C6
+:1041D000E7EDF1E085E0DF011D928A95E9F71092A5
+:1041E000D6011092D5010895833081F128F48130F1
+:1041F00059F08230D1F00895853009F449C0B8F102
+:10420000863009F456C0089520911501862F90E05C
+:10421000820F911D8F3F910520F4620F609315016D
+:1042200008958FEF80931501089520911401862F32
+:1042300090E0820F911D8F3F910520F4620F6093F3
+:10424000140108958FEF80931401089520911301B4
+:10425000862F90E0820F911D8F3F910520F4620F11
+:104260006093130108958FEF8093130108952091B7
+:104270001201862F90E0820F911D8F3F910520F44F
+:10428000620F6093120108958FEF809312010895D9
+:1042900020911101862F90E0820F911D8F3F910593
+:1042A00020F4620F6093110108958FEF8093110144
+:1042B000089520911001862F90E0820F911D8F3F6D
+:1042C000910520F4620F6093100108958FEF8093A1
+:1042D00010010895833011F128F4813049F08230C3
+:1042E00091F00895853081F120F18630C1F1089573
+:1042F00080911501681720F4861B8093150108959D
+:1043000010921501089580911401681720F4861BFE
+:10431000809314010895109214010895809113015F
+:10432000681720F4861B80931301089510921301DF
+:10433000089580911201681720F4861B8093120162
+:10434000089510921201089580911101681720F4C8
+:10435000861B809311010895109211010895809198
+:104360001001681720F4861B8093100108951092A5
+:10437000100108958D3109F442C020F58E3009F402
+:1043800079C070F4873009F45EC020F4863009F4F7
+:1043900042C033C08830D1F18B3009F4A7C02DC0A2
+:1043A000863109F4A3C038F4803109F46DC081313D
+:1043B00009F47BC022C0893109F498C08B3109F41B
+:1043C0004FC01BC0853309F479C048F4873209F423
+:1043D00075C008F478C0893209F470C00EC0833407
+:1043E00038F48A3308F071C0883309F47FC005C0FF
+:1043F000833409F463C08834C1F080E008950E94DA
+:1044000032230E943B100E94400970C00E94B31EDC
+:104410000E94C51E6BC08091CD01817F8E7F8093ED
+:10442000CD0181E08093DD0108950E94A5152FEF55
+:1044300083ED90E3215080409040E1F700C0000000
+:104440000E94001D53C09091CD01892F817090FF73
+:1044500003C0917F9E7F26C091609093CD0146C09E
+:104460009091CD0191FB882780F921E0822780FB84
+:1044700091F913C09091CD0192FB882780F921E03A
+:10448000822780FB92F909C09091CD0193FB882788
+:1044900080F921E0822780FB93F99093CD01882356
+:1044A00029F191609093CD0108950E94A515809106
+:1044B0000D0191E0892780930D0118C061E070E043
+:1044C00080E090E00FC023EE01C027EC280F61E0F0
+:1044D00070E080E090E004C0660F771F881F991F8E
+:1044E0002A95D2F70E949F190E94A51581E0089590
+:1044F00080E0089580E00895CF93C82F8091DD017A
+:10450000813079F018F08230D1F184C0A0910E0191
+:10451000B0910F018C91813169F0823209F07CC039
+:1045200009C0A0910E01B0910F018C91813111F061
+:10453000823249F48C2F0E94782281111DC08C2F69
+:104540000E94BA211AC08C2F0E947A22811114C0B5
+:10455000C43179F048F4CB3079F0C03109F060C053
+:1045600082E08093DD0108C0C93219F0C83321F020
+:1045700057C01092DD0154C081E0817053C0C93230
+:1045800089F118F5C43171F1A8F4C73009F046C0BB
+:104590008AE08093150194E19093140193E0909345
+:1045A00013018093120188E08093110188E28093C7
+:1045B000100134C0CE51C63088F5EC2FF0E0E65D36
+:1045C000FE4F80818093DC0129C0CE34E9F020F4D5
+:1045D000CB3421F56AE013C0C13579F0C235F1F46E
+:1045E00061E00DC08091DC01882319F01092DC019C
+:1045F00015C081E08093DD0115C061E006C08091A7
+:10460000DC010E94F4200AC06AE08091DC010E9473
+:104610006A2104C01092DD0180E004C081E002C084
+:1046200080E0ABCFCF910895E1E8F0E08081886031
+:1046300080838081816080838FB7F89493E090932A
+:10464000890090ED909388008FBF0895EFE6F0E029
+:104650008081826080830895EFE6F0E080818D7F25
+:1046600080830895EFE6F0E0808192E089278083DF
+:1046700008951F920F920FB60F9211242F933F931C
+:104680004F935F936F937F938F939F93AF93BF935A
+:10469000EF93FF938091DE019091DF01019690935B
+:1046A000DF018093DE01811103C082E00E94400996
+:1046B000E091DF01E695E695F0E0E258F74FE491EE
+:1046C0008091DE018E1303C080E00E944009FF91BB
+:1046D000EF91BF91AF919F918F917F916F915F917A
+:1046E0004F913F912F910F900FBE0F901F901895F3
+:1046F00004D06894B1118DC0089570D088F09F5790
+:1047000090F0B92F9927B751A0F0D1F0660F771F1D
+:10471000881F991F1AF0BA95C9F712C0B13081F0FD
+:1047200077D0B1E0089574C0672F782F8827B85FDD
+:1047300039F0B93FCCF3869577956795B395D9F75E
+:104740003EF490958095709561957F4F8F4F9F4F68
+:104750000895E89409C097FB3EF490958095709574
+:1047600061957F4F8F4F9F4F9923A9F0F92F96E9BD
+:10477000BB279395F695879577956795B795F11132
+:10478000F8CFFAF4BB0F11F460FF1BC06F5F7F4FCF
+:104790008F4F9F4F16C0882311F096E911C07723E1
+:1047A00021F09EE8872F762F05C0662371F096E8EA
+:1047B000862F70E060E02AF09A95660F771F881FB9
+:1047C000DAF7880F9695879597F9089557FD9058D1
+:1047D000440F551F59F05F3F71F04795880F97FBC5
+:1047E000991F61F09F3F79F087950895121613067F
+:1047F0001406551FF2CF4695F1DF08C016161706AE
+:104800001806991FF1CF86957105610508940895E2
+:10481000E894BB2766277727CB0197F908950BD03B
+:1048200078C069D028F06ED018F0952309F05AC0EE
+:104830005FC01124EECFCADFA0F3959FD1F3950F8F
+:1048400050E0551F629FF001729FBB27F00DB11D14
+:10485000639FAA27F00DB11DAA1F649F6627B00DA4
+:10486000A11D661F829F2227B00DA11D621F739F8D
+:10487000B00DA11D621F839FA00D611D221F749F9B
+:104880003327A00D611D231F849F600D211D822FE2
+:10489000762F6A2F11249F5750408AF0E1F0882329
+:1048A0004AF0EE0FFF1FBB1F661F771F881F915036
+:1048B0005040A9F79E3F510570F014C0AACF5F3F4A
+:1048C000ECF3983EDCF3869577956795B795F79569
+:1048D000E7959F5FC1F7FE2B880F911D96958795F1
+:1048E00097F9089597F99F6780E870E060E0089570
+:1048F0009FEF80EC089500240A94161617061806F8
+:104900000906089500240A941216130614060506D3
+:104910000895092E0394000C11F4882352F0BB0F64
+:1049200040F4BF2B11F460FF04C06F5F7F4F8F4FC7
+:104930009F4F089597FB072E16F4009407D077FD3C
+:1049400009D00E94B42407FC05D03EF490958195CF
+:104950009F4F0895709561957F4F0895EE0FFF1F4B
+:104960000590F491E02D0994AA1BBB1B51E107C0EF
+:10497000AA1FBB1FA617B70710F0A61BB70B881FEF
+:10498000991F5A95A9F780959095BC01CD0108957E
+:10499000F999FECF92BD81BDF89A992780B5089507
+:1049A000A8E1B0E042E050E00C94EB24262FF99906
+:1049B000FECF1FBA92BD81BD20BD0FB6F894FA9A02
+:1049C000F99A0FBE019608950E94D624272F0C94C1
+:1049D000D724DC01CB01FC01F999FECF06C0F2BD62
+:1049E000E1BDF89A319600B40D9241505040B8F7AD
+:0649F0000895F894FFCFCA
+:1049F60020024209CF09AC09780945090101BA012B
+:104A060028080A03140A3F4D36393F08F207BC0747
+:104A1600830716072F0748076107010203040506E7
+:044A26000708090074
:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/readme.md b/keyboard/ergodox_ez/keymaps/ordinary/readme.md
index 6534f481a1..f100dd1c5c 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/readme.md
+++ b/keyboard/ergodox_ez/keymaps/ordinary/readme.md
@@ -10,54 +10,66 @@ no rights reserved, use for any purposes, credit me if you are a nice person
## The Base Layout ##
-* The yellow keys are text navigation and manipulation
-* The dark blue keys are shift keys: case shift (traditional shift), symbol shift, and media shift
-* The light blue keys are modifiers: traditional Control, Option, and C ommand keys, plus Hyper and Meh
-* The two green keys, tab and tilde, are in the typical places to ease use of the Application Switcher
-* The red keys is Escape, one of the few buttons which is in an atypical position
+* The light blue keys are modifiers: traditional Control, Option, and Command keys, plus Hyper and Meh
+* The dark blue keys are Shift keys: Capitals Shift (traditional shift), Symbol Shift, and Media Shift; plus a Shift Lock key
+* Several dark blue keys double for entry of characters which would typically be in those locations
+* The turquoise keys are text navigation and manipulation
+* The red keys is Escape and it is always found in that location no matter what
![Ordinary base layout](ordinary-base.png)
-This layout puts the modifier keys along the bottom of the keyboard where they are on most layouts. They are in the regular order, with the addition of Hyper and Meh keys. The shift key (case shift) is in the prevalent location. The primo slots usually wasted on Caps Lock and Enter are instead used for the Symbol Shift key which promotes use of the Symbols layer. On the right side of the layout, the Symbol and Media shift keys also double as character keys -- quote and backslash, respectively -- so that touch typists can continue to find those punctuation marks in the right place.
+This layout puts the modifier keys along the bottom of the keyboard where they are on most keyboards. They are in the regular order, with the addition of Hyper and Meh keys. On the outside edges are the Shift keys. The traditional shift key is called Capitals Shift and it is in the normal location. Above that are Symbols Shift and Media Shift. Each Shift key momentarily switches the layout to that layer, and if you use the Shift Lock button you can lock the layout to that layer.
-Other than the yellow keys, the only buttons which move to new locations are the Brackets and Dash and Escape. Most touch typists dont touch-type brackets or dash anyway, so only Escape really requires retraining of muscle memory.
+Touch typists will also find tilde, tab, equals/plus, slash/pipe, and quote/double-quote sharing space on those Shift keys where they would probably be on a common keyboard. Other than the turquoise keys the only buttons which move to new locations are the Brackets and Dash and Escape. Most touch typists dont touch-type brackets or dash anyway so only Escape really requires retraining of muscle memory, and see below for the Special Escape Sequence.
-The four big yellow keys are arranged differently than in the default Ergodox EZ layout. The Ordinary Layout here copies the design of the old Fingerworks TouchStream keyboard, but also reflects the natural presumptions of the author -- me!; I type the space character with my right hand, and to me it makes sense for the two delete keys to be next to one another.
+The four big turquoise keys are arranged differently than in the default Ergodox EZ layout. The Ordinary Layout here copies the design of the old Fingerworks TouchStream keyboard, but also reflects the natural presumptions of the author -- me! I type the space character with my right hand, and to me it makes sense for the two delete keys to be next to one another.
-The Forward Tab and Backward Tab keys are there mostly because I ended up with two extra buttons and needed something to do with them. My muscle memory from using the Truly Ergonomic Keyboard makes me look for the Tab key with my right index finger, so it is handy to have this redundant Tab, and the idea with the Backward Tab key is that it becomes easy to navigate text fields in forms, or to indent/unindent code.
+The Forward Tab and Backward Tab keys are in their locations mostly because I ended up with two extra buttons and needed something to do with them. My muscle memory from using the Truly Ergonomic Keyboard makes me look for the Tab key with my right index finger, so it is handy to have this redundant Tab, and the idea with the Backward Tab key is that it becomes easy to navigate text fields in forms, or to indent/unindent code.
-## The Symbols Layout ##
+## The Symbols Layer ##
-* The periwinkle keys are the eponymous symbols
-* The gray keys are F-Keys
-* The green keys are a proper number pad
-* The red Escape key is found in the "right" location on this layer
-* The yellow keys are the *reverse* of the yellow keys on the base layer
-* The dark blue Media key means that the Media layer is accessible with the left hand
+* The light green keys are the eponymous symbols
+* The bright green keys are F-Keys
+* The dark green keys constitute a number pad
+* The turquoise keys are the *reverse* of the turquoise keys on the base layer
![Ordinary symbol layout](ordinary-symbol.png)
The Ergodox EZ ships with the "Coder Layer" which I like to call the Symbols layer. There are some significant improvements in The Ordinary Layout over the default layout.
The symbol keys are mostly the same as on the default layout, which did a good job in this regard, but with a few enhancements:
+
* Angle brackets on this layer mean that curly, square, and angle brackets are all available on different layers of the same two buttons. Also, they mean that all kinds of brackets, including parentheses, are available on both the Base and Symbols layers.
* The slash, backslash, and pipe characters are grouped together as a memory aid.
* The & and | symbols are juxtaposed as a memory aid
-The number pad area here, in green, includes all four arithmetic operations in the same order found on most number pads. This layout also has an Enter key, and importantly the key codes emitted by this number pad are *number pad specific key codes*, not regular keyboard key codes. Some software distinguishes keypad codes so users now have access to a fully realized number pad when using The Ordinary Layout.
-
-The Escape key's true home is in the top left corner of the keyboard, so on this layer it can be found there. And on the Symbols layer, the Tab key switches to become a Media key, so press Symbols then Media to access the Media layer using the left hand.
+The number pad area here, in green, includes all four arithmetic operations in the same order found on most number pads and features an Enter key. The keycodes emitted here are normal numeric keycodes, not the number-pad specific keycodes emitted by most number pads, because this layout does not use a Num Lock key to switch the buttons between numeric keycodes and navigational keycodes. See the explanation in The Media Layout section about navigation using these same buttons.
-Finally, consider the yellow text-nav keys. In the Symbols layer, these are *reversed* from the base layer, with most keys mirrored, but the Delete keys shifted to maintain the directional significance of their arrangement. This is powerful! Often I find myself using the mouse with my right hand, and the left hand needs to press Enter. Instead of reaching the left hand over to the right side of the keyboard, now I simply tap Symbols to reverse the yellow keys, and Enter is right where it should be.
+Finally, consider the turquoise text-nav keys. Here in the Symbols layer, these are *reversed* from the base layer, with most keys mirrored, but the Delete keys shifted to maintain the directional significance of their arrangement. This is powerful! Often I find myself using the mouse with my right hand, and the left hand needs to press Enter. Instead of reaching the left hand over to the right side of the keyboard, now I simply tap Symbols to reverse the yellow keys, and Enter is right where it should be.
-## The Media Layout ##
+## The Media Layer ##
-* The light turquoise keys move the mouse or the text cursor
-* The dark turquoise keys scroll
-* The light purple keys signal Web and Audio applications
-* The dark purple keys signal the operating system
-* The red Escape key is, again, found in the "right" location
+* The dark orange keys on the left move the mouse cursor
+* The dark orange keys on the right move the text cursor
+* The light orange keys are for scrolling and paging
+* The bright green keys are more F-keys
+* The dark yellow keys signal Web and Audio applications
+* The light yellow keys signal the operating system
![Ordinary media layout](ordinary-media.png)
-This layer was inspired by the Media layer on the Ergodox EZ but takes it farther. The Fingerworks TouchStream had a very useful feature for controlling the text cursor easily and this layer does something similar. The left hand can move the mouse, the right hand moves the text cursor, in all four directions, in small or large increments. This greatly enhances navigation in text documents.
+This layer was inspired by the Media layer on the Ergodox EZ but takes it farther. The Fingerworks TouchStream keyboard had a very useful feature for controlling the text cursor easily and this layer does something similar. The left hand can move the mouse, the right hand moves the text cursor, in all four directions, in small or large increments. This greatly enhances navigation in text documents.
+
+Moreover, the orange keys on the right overlay the numberpad from the Symbols Layer, such that in the Media Layer the same keys can be used as if they were a number pad in navigational mode (Num Lock off). For instance, in traditional number pads the '3' key became 'Page Down', and so it is here. This means a user can do text navigation without moving either hand.
+
+## Switching Between Layers ##
+
+The three Shift keys correspond to three logical layers on top of the ever-present base layer, and are represented in the three LEDs on the keyboard: Capitals (red), Symbols (green), Media (blue). The color of a layer illuminates when the layer is active. Shift keys work in the expected way: press them and the keys shift to that layer; release them and the keys shift back to the base layer. The Ordinary Layout also features a Shift Lock key to keep a layer active indefinitely. Hold down the Shift Lock key then press any Shift key to lock to that layer. Or, hold down the Shift key and press the Shift Lock key; either way works. To revert to the base layer, use the Shift Lock key again in combination with the Shift key.
+
+This layout attempts to treat the Capitals Shift layer the same as the other two Shift layers, but internally they are different which causes some inconsistencies. For instance, it is possible to switch from any layer to any other layer, and to lock to any layer, *except* it is not possible to go from Media to Symbols. You must exit the Media layer before engaging the Symbols layer. Also, the Caps Lock feature must be triggered by first pressing the Shift Lock key then a Capitals Shift key; it doesn't work if you press the Shift key first (instead you get the secondary symbol associated with the Shift Lock button).
+
+## Special Escape Sequence ##
+
+In the Ordinary Layout, the most unsatisfying key location is the Escape key which rightly belongs segregated on its own way up on the top left of the keyboard. The Ergodox does not have a physical button in such a location and the nearest one, in the top left corner, was assigned to the tilde button which is traditionally found in that location. The Escape key is important so it features prominently on the other top corner on the left side of the keyboard, and is always there in all layers. Nevertheless, alas, it isn't Ordinary to put the escape in that different corner!
+
+That tilde key has a second function as the Shift Lock key and that makes possible a special feature. To make this layout as Ordinary as possible, the Escape key can *also* be accessed by pressing Shift Lock then the 1 button right next to it. This easy gesture is a way to partially maintain the ease of flicking your wrist to the left and tapping Escape. This gesture works in all layers.
diff --git a/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/keymap.c b/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/keymap.c
new file mode 100644
index 0000000000..7c9f673816
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/keymap.c
@@ -0,0 +1,134 @@
+#include "ergodox_ez.h"
+#include "debug.h"
+#include "action_layer.h"
+
+#define BASE 0
+#define SYMB 1
+#define PLVR 2
+#define ARRW 3
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [BASE] = KEYMAP(
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_F14,
+ KC_TAB, KC_Q, KC_W, KC_D, KC_F, KC_K, TG(PLVR),
+ CTL_T(KC_ESC), KC_A, KC_S, KC_E, KC_T, KC_G,
+ KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC,
+ KC_F1, KC_F2, KC_F3, KC_LALT, KC_LGUI,
+ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_VOLD, KC_MUTE,
+ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_VOLU,
+ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_BSPC, CTL_T(KC_ESC), KC_FN1,
+ //
+ /*-*/ KC_F15, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL,
+ /*-*/ KC_BSLS, KC_J, KC_U, KC_R, KC_L, KC_SCLN, KC_MINS,
+ /*-*/ /*-*/ KC_Y, KC_N, KC_I, KC_O, KC_H, KC_ENT,
+ /*-*/ KC_RBRC, KC_P, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT,
+ /*-*/ /*-*/ /*-*/ KC_RGUI, KC_RALT, KC_F4, KC_F5, KC_F6,
+ KC_MPLY, KC_MNXT,
+ KC_MPRV,
+ KC_FN3, KC_QUOT, KC_SPC
+ ),
+ [SYMB] = KEYMAP(
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS,
+ KC_TRNS, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS,
+ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS,
+ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS,
+ //
+ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ /*-*/ KC_TRNS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS,
+ /*-*/ /*-*/ KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_TRNS,
+ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS,
+ KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+ [PLVR] = KEYMAP(
+ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS,
+ KC_NO, KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS,
+ KC_NO, KC_Q, KC_W, KC_E, KC_R, KC_T,
+ KC_NO, KC_A, KC_S, KC_D, KC_F, KC_G, KC_NO,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO,
+ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS,
+ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS,
+ /*-*/ /*-*/ /*-*/ /*-*/ KC_C, KC_V, KC_NO,
+ //
+ /*-*/ KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ /*-*/ KC_NO, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO,
+ /*-*/ /*-*/ KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC,
+ /*-*/ KC_NO, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
+ /*-*/ /*-*/ /*-*/ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
+ KC_TRNS, KC_TRNS,
+ KC_TRNS,
+ KC_NO, KC_N, KC_M
+ ),
+ [ARRW] = KEYMAP(
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_U, KC_MS_D, KC_MS_R,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS,
+ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS,
+ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS,
+ //
+ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ /*-*/ /*-*/ KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS, KC_TRNS,
+ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
+ KC_TRNS, KC_TRNS,
+ KC_TRNS,
+ KC_TRNS, KC_TRNS, KC_TRNS
+ ),
+};
+
+const uint16_t PROGMEM fn_actions[] = {
+ [SYMB] = ACTION_LAYER_TAP_TOGGLE(SYMB), // FN1 - Momentary Symbols Layer
+ [PLVR] = ACTION_LAYER_TAP_TOGGLE(PLVR), // FN2 - Momentary Plover Layer
+ [ARRW] = ACTION_LAYER_TAP_TOGGLE(ARRW), // FN3 - Momentary Arrows Layer
+};
+
+const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
+{
+ // MACRODOWN only works in this function
+ switch(id) {
+ case 0:
+ if (record->event.pressed) {
+ register_code(KC_RSFT);
+ } else {
+ unregister_code(KC_RSFT);
+ }
+ break;
+ }
+ return MACRO_NONE;
+};
+
+// Runs just one time when the keyboard initializes.
+void matrix_init_user(void) {
+};
+
+// Runs constantly in the background, in a loop.
+void matrix_scan_user(void) {
+ uint8_t layer = biton32(layer_state);
+ ergodox_board_led_off();
+ ergodox_right_led_1_off();
+ ergodox_right_led_2_off();
+ ergodox_right_led_3_off();
+ switch (layer) {
+ case SYMB:
+ ergodox_right_led_1_on();
+ break;
+ case PLVR:
+ ergodox_right_led_2_on();
+ break;
+ case ARRW:
+ ergodox_right_led_3_on();
+ break;
+ default:
+ break;
+ }
+};
diff --git a/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/readme.md b/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/readme.md
new file mode 100644
index 0000000000..4188d2b50c
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/readme.md
@@ -0,0 +1,50 @@
+# Roman's Layout
+
+There are four layers:
+
+- **BASE** is [Norman layout](https://normanlayout.info/).
+- **SYMB** for numbers and symbols.
+- **PLVR** is optimized for [Plover](http://www.openstenoproject.org).
+- **ARRW** for navigation (same fingers for arrows as HJKL on QWERTY).
+
+Looking for IJKL arrows? [Here we
+go](../romanzolotarev-norman-plover-osx/).
+
+[![keyboard-layout](romanzolotarev-norman-plover-osx-hjkl.png)](rttp://www.keyboard-layout-editor.com/#/gists/56ffedceb0668dda47c993e7271563e0)
+
+## Switching
+
+- Tap `SYMB` to toggle **SYMB**.
+- Tap `ARRW` to toggle **ARRW**.
+- Hold `SYMB` (or `ARRW`) to activate **SYMB** (or **ARRW**) while holding.
+- Tap `PLVR` to toggle **PLVR**.
+
+## LEDs
+
+- Red: SYMB is on.
+- Green: PLVR is on.
+- Blue: ARRW is on.
+
+## Functional Keys
+
+- Tap `F1` to mute microphone via [Shush](http://mizage.com/shush/).
+- Tap `F2` to copy screenshot to the clipboard.
+- Hold `SHIFT` and tap `F2` to save screenshot as a file.
+- Tap `F3`, `F4`, `F5`, `F6` to resize a window via [Divvy](http://mizage.com/divvy/).
+- Tap `F14`, `F15` to adjust display brightness.
+
+**IMPORTANT**: If you have another keyboard connected via Bluetooth, then
+`F14` and `F15` will not work. Turn off that Bluetooth keyboard. Re-plug
+you ErgoDox. Enjoy!
+
+## CTRL/ESC
+
+Both of those keys are frequently used in Vim.
+
+- Tap `CTRL/ESC` to send `ESC`.
+- Hold `CTRL/ESC` to use as `CTRL`.
+
+## Activate N-rollover
+
+- While in **BASE** hold left `SHIFT` and right `SHIRT` and then tap `N`.
+- Then you can activate **PLVR** and use ErgoDox EZ for steno.
diff --git a/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.hex b/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.hex
new file mode 100644
index 0000000000..c341ba2b2b
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.hex
@@ -0,0 +1,1139 @@
+:100000000C94BB020C94FF020C94FF020C94FF02B0
+:100010000C94FF020C94FF020C94FF020C94FF025C
+:100020000C94FF020C94FF020C94090C0C94DB0C52
+:100030000C94FF020C94FF020C94FF020C94FF023C
+:100040000C94FF020C94A9210C94FF020C94FF0263
+:100050000C94FF020C94341B0C94FF020C94FF02CE
+:100060000C94FF020C94FF020C94FF020C94FF020C
+:100070000C94FF020C94FF020C94FF020C94FF02FC
+:100080000C94FF020C94FF020C94FF020C94FF02EC
+:100090000C94FF020C94FF020C94FF020C94FF02DC
+:1000A0000C94FF020C94FF020C94FF02480D6A0DA1
+:1000B000580E6A0D580EAF0DD20D580E270E3A0E7F
+:1000C0002611261163116311A611E411FD13FD130E
+:1000D000FD11FD13FE12FE12D113FD13FD13E813E3
+:1000E0000000F0A1F0A2F0A335002B002971E1007F
+:1000F0003A0000001E00140004001D003B00C10077
+:100100001F001A0016001B003C0029712000070088
+:1001100008000600E2002A0021000900170019006B
+:10012000E300A90022000E000A0005000000AA005A
+:100130006900025400002F000000A8006A0031008E
+:10014000000030000000AE0023000D001C00130072
+:100150000000AB002400180011001000E700AC0004
+:10016000250015000C003600E6002C0026000F00CC
+:10017000120037003D003400270033000B00380028
+:100180003E00C3002E002D002800E5003F000000C7
+:1001900001000100010001000100000001001E003B
+:1001A0001E0201000100010001001F001F020100EA
+:1001B00001000100010020002002010001000100F7
+:1001C00001002100210201000100010001002200C4
+:1001D00022020100000001000100010000000100F6
+:1001E000000001000100010000000100000001000A
+:1001F000010023002302010000000100010024008F
+:100200002402010001000100010025002502010077
+:10021000010001000100260026020100010001008A
+:100220000100270027020100010001000100010078
+:1002300001000100010000000000000000000000BB
+:100240000100000000001E00140004000100000076
+:1002500000001F001A001600010019000000200015
+:10026000080007000000060000002100150009003A
+:10027000000001000000220017000A000000010039
+:10028000010001000000000000000100010000006A
+:100290000000000000000100000023001C000B0013
+:1002A000000001000000240018000D000000010003
+:1002B000000025000C000E000000100000002600C9
+:1002C00012000F000000110000002700130033008F
+:1002D00000000000000000002F00340000000000BB
+:1002E0000100010001000100010000000100010007
+:1002F000010001000100010001000100F200010005
+:100300000100010001000100F000010001000100F6
+:1003100001000100F100F4000100010001000100F2
+:10032000F300F500000001000100010000000100E1
+:1003300000000100010001000000010000000100B8
+:100340000100010050000100000001000100010057
+:1003500051000100010001000100010052000100F4
+:1003600001000100010001004F0001000100010037
+:100370000100010001000100010001000100010075
+:100380000100010001000000160345007200670033
+:100390006F0044006F007800200045005A00000004
+:1003A00016034500720067006F0044006F0078007C
+:1003B000200045005A0000000403090409026D00F2
+:1003C000040100A0FA090400000103010100092151
+:1003D00011010001223F000705810308000A0904FA
+:1003E00001000103010200092111010001224D0059
+:1003F0000705820308000A09040200010300000047
+:100400000921110100012236000705830308000AB3
+:100410000904030001030000000921110100012269
+:1004200039000705840310000112011001000000CB
+:1004300008EDFE071301000102000105010906A1F4
+:1004400001050719E029E7150025019508750181C7
+:100450000205081901290595057501910295017597
+:100460000391010507190029771500250195787575
+:10047000018102C005010980A10185021601002643
+:10048000B7001A01002AB700751095018100C00558
+:100490000C0901A1018503160100269C021A010026
+:1004A0002A9C02751095018100C005010902A10175
+:1004B0000901A10005091901290515002501950566
+:1004C000750181029501750381010501093009312A
+:1004D0001581257F95027508810609381581257FCC
+:1004E000950175088106050C0A38021581257F954E
+:1004F0000175088106C0C005010906A1010507199B
+:10050000E029E7150025019508750181029501751F
+:1005100008810105081901290595057501910295C4
+:1005200001750391010507190029FF150025FF95A5
+:100530000675088100C000000000000000000000F7
+:1005400000010204060A0F17202C3A4A5D71879DAC
+:10055000B3C7DAE9F5FCFFFCF5E9DAC7B39D8771AB
+:100560005D4A3A2C20170F0A060402010000000021
+:1005700000000000000011241FBECFEFDAE0DEBF54
+:10058000CDBF04B603FE24C08091EF019091F0012D
+:10059000A091F101B091F2018730904BA740B04B90
+:1005A000B9F41092EF011092F0011092F101109243
+:1005B000F20114BE84B7877F84BF88E10FB6F89438
+:1005C00080936000109260000FBEE0E0FFE30995A9
+:1005D00011E0A0E0B1E0E6EDF6E402C005900D9276
+:1005E000A433B107D9F711E0A4E3B1E001C01D9233
+:1005F000AF3EB107E1F70E944D090C9469230C94BA
+:10060000000061110BC0FC018281882321F085EE7E
+:100610000E94BA0F03C085EE0E94821080E090E035
+:10062000089508956091B1017091B2018091B30174
+:100630009091B4010E94601A56985E9825982D9862
+:1006400026982E9827982F98823039F0833041F0E1
+:10065000813041F4259A2D9A0895269A2E9A08956C
+:10066000279A2F9A08950C94120356985E9825980D
+:100670002D9826982E9827982F988FEF90E090939A
+:1006800089008093880090938B0080938A009093D8
+:100690008D0080938C00259A2D9A2FEF80E792E0B1
+:1006A000215080409040E1F700C00000269A2E9A29
+:1006B0002FEF80E792E0215080409040E1F700C0AA
+:1006C0000000279A2F9A2FEF80E792E02150804078
+:1006D0009040E1F700C0000025982D982FEF80E7AB
+:1006E00092E0215080409040E1F700C00000269841
+:1006F0002E982FEF80E792E0215080409040E1F764
+:1007000000C0000027982F9856985E9825982D983D
+:1007100026982E9827982F98089589EA809380002C
+:1007200089E08093810024982C983F988AB18F7437
+:100730008AB96E98479A8BB1806B8BB9769A0E9472
+:1007400035030C94110380E2809300018091340101
+:1007500081110EC00E94F20381E0809334012FEFDB
+:1007600083ED90E3215080409040E1F700C000000D
+:1007700080E40E94F8038093000181112EC00E9442
+:10078000220480930001811128C00E9422048093DA
+:100790000001811122C08FE30E9422048093000196
+:1007A00081111BC00E941A0480E40E94F803809308
+:1007B0000001811112C08CE00E942204809300018C
+:1007C00081110BC00E94220480930001811105C099
+:1007D0008FE30E942204809300010E941A048091FA
+:1007E000000108951092B9008AE08093B80008953E
+:1007F00094EA9093BC009091BC0097FFFCCF90913D
+:10080000B900987F983021F0903111F081E008957F
+:100810008093BB0084E88093BC008091BC0087FF7C
+:10082000FCCF8091B900887F883111F0803471F756
+:1008300080E0089584E98093BC008091BC0084FD31
+:10084000FCCF08958093BB0084E88093BC00809126
+:10085000BC0087FFFCCF9091B900987F81E098326F
+:1008600009F480E0089584E88093BC008091BC0086
+:1008700087FFFCCF8091BB0008958091000181111A
+:1008800015C080E40E94F8038093000181110CC020
+:1008900082E10E94220480930001811105C08FEF44
+:1008A0000E942204809300010E941A0484B1807F78
+:1008B00084B985B1807F85B98AB1837F8AB98BB1CC
+:1008C000837F8BB93E98469808950E94A303809336
+:1008D00000010E943D0480B38C7080BB81B3836FA4
+:1008E00081BBA6E3B1E0E4E4F1E08EE08E0F11926B
+:1008F0001D928E13FCCF0C948D03BF92CF92DF928A
+:10090000EF92FF920F931F93CF93DF93809100019B
+:10091000882379F0809135018F5F809335018111B3
+:1009200008C00E94A30380930001811102C00E94AD
+:10093000350306E311E0C0E0D0E0DD24D39482E08B
+:10094000C82EEE24E394F12CC730D10500F5809138
+:100950000001811164C080E40E94F80380930001CB
+:10096000811112C082E10E94220480930001811152
+:100970000BC0C7010C2E01C0880F0A94EAF78095BE
+:100980000E942204809300010E941A0448C0CA30C9
+:10099000A1F028F4C83059F0C93061F005C0CC305E
+:1009A00089F070F0CD3089F0209A289810C0219AF3
+:1009B00029980DC0229A2A980AC0239A2B9807C01A
+:1009C000529A01C0539A5B9802C03E9A469890EAA8
+:1009D0009A95F1F79FB1799902C082E001C080E059
+:1009E00091709D25982B7C9902C084E001C080E025
+:1009F000892B7D9902C038E001C030E0832B7E99BD
+:100A000002C020E101C020E0822B9FB19095991F88
+:100A10009927991F9295990F907E892B0FC08091ED
+:100A20000001811149C080E40E94F8038093000115
+:100A3000882379F1B12C0E941A048B2DF801908142
+:100A4000981719F08083C09201010E943D042196FD
+:100A50000F5F1F4FCE30D10509F076CF8091010195
+:100A6000882361F1815080930101882339F08FE957
+:100A70009FE00197F1F700C0000020C0A4E4B1E0BE
+:100A8000E6E3F1E0CF01825F91919D938E13FCCF5D
+:100A900015C083E10E942204809300018111CACF16
+:100AA00081E40E94F803809300018111C3CF0E946A
+:100AB0003304B82EB094BFCF80E0C0CF0E94330380
+:100AC00081E0DF91CF911F910F91FF90EF90DF9028
+:100AD000CF90BF900895E82FF0E0EC5BFE4F80814F
+:100AE000089508958B3B910578F4883A910540F577
+:100AF000853A9105D0F48430910508F0B1C0813079
+:100B0000910509F4ADC06BC0803E910508F467C043
+:100B1000883E910508F4A4C09C01205F3109203172
+:100B2000310508F05CC090650895853A910509F497
+:100B300059C0863A910509F058C082E890E40895BA
+:100B4000883A910509F454C0893A910509F453C0D3
+:100B50008A3A910509F452C08B3A910509F451C0C3
+:100B60008C3A910509F450C08D3A910509F44FC0B3
+:100B7000803B910509F44EC08E3A910509F44DC0B1
+:100B80008F3A910509F44CC0813B910509F44BC0A3
+:100B9000823B910509F44AC0833B910509F449C0A1
+:100BA000843B910509F448C0853B910509F447C091
+:100BB000863B910509F446C0873B910509F445C081
+:100BC000883B910509F444C0893B910509F443C071
+:100BD0008A3B910509F442C080E094E4089580E0E6
+:100BE00090E0089581E890E4089583E890E4089502
+:100BF00082EE94E4089589EE94E408958AEE94E4F4
+:100C0000089585EB94E4089586EB94E4089587EBCA
+:100C100094E408958CEC94E408958DEC94E40895A4
+:100C200083E895E408958AE895E4089582E995E4D7
+:100C3000089584E995E4089581E296E4089583E2B5
+:100C400096E4089584E296E4089585E296E4089592
+:100C500086E296E4089587E296E408958AE296E4AF
+:100C60000895089596E0799FF001112494E5899FF5
+:100C7000E00DF11D1124E60FF11DEE0FFF1FE851ED
+:100C8000FF4F859194910895880F991FFC01E05AB8
+:100C9000F040859194910895880F991FFC01E052CE
+:100CA000FF4F85919491089526E0729FF0011124E1
+:100CB00044E5849FE00DF11D1124E60FF11DEE0FB8
+:100CC000FF1FE851FF4F859194919C013A952115A2
+:100CD0004FE1340708F41CC13F512115304120F485
+:100CE0009F700E944C0608959C013053211530419D
+:100CF00018F49927906C0895811520E5920771F4F6
+:100D00000E9421144FEF84E39CE0415080409040CA
+:100D1000E1F700C000000E94591BFAC0813020E5B5
+:100D2000920731F48091CD0181608093CD01F0C0B4
+:100D30009C0130552115304108F051C0292F33272F
+:100D40002F70332721303105D9F4AC01437055277A
+:100D500002C0220F331F4A95E2F73C68AC0164E001
+:100D6000440F551F6A95E1F744275370242B352B08
+:100D700073E0880F991F7A95E1F7807699271DC057
+:100D80002230310529F4982F8827816F906A0895C1
+:100D900023303105A9F4AC014370552721E030E040
+:100DA00002C0220F331F4A95E2F73C6843E0880FE8
+:100DB000991F4A95E1F7807E9770822B932B0895B7
+:100DC00024303105E1F4AC014370552721E030E0D7
+:100DD00002C0220F331F4A95E2F73A68E7CF9C0121
+:100DE00030572115304118F49F70906208959C018E
+:100DF00030582115304118F49F70906A0895803E54
+:100E00009105E0F4803C910558F58133910509F492
+:100E10006FC048F48932910509F463C08A329105A4
+:100E200009F46DC072C089339105E9F082389105EB
+:100E3000D1F08533910509F44DC067C0833E91051B
+:100E400081F138F4803E9105B9F0823E9105D9F0E8
+:100E50005CC0863E910561F1873E9105A1F155C0C8
+:100E60000E94440608952091E00120FD02C021FF68
+:100E70004CC080EE90E049C08091E00180FFF9CF46
+:100E800089E390E042C08091E00182FF0EC0809132
+:100E9000E00184FF03C080E090E037C083EE90E083
+:100EA00034C08091E00182FFF2CF82EE90E02DC04D
+:100EB0008091E00183FF0BC08091E00184FDEBCFC6
+:100EC00087EE90E022C08091E00183FFF5CF86EEAF
+:100ED00090E01BC08091E00185FF07C089E290E0AF
+:100EE00014C08091E00185FFF9CF85E390E00DC04B
+:100EF0008091E00186FF07C08AE290E006C0809101
+:100F0000E00186FFF9CF81E390E00E947205089529
+:100F1000089508950C948907809162010895CF93F4
+:100F2000DF9300D01F92CDB7DEB79C018091E60120
+:100F3000843019F593E099833B832A839093E900E9
+:100F40008FEF9091E800815095FD06C095ED9A9540
+:100F5000F1F700008111F5CF8091E80085FF0DC009
+:100F600040E050E063E070E0CE0101960E94F90994
+:100F70008091E8008E778093E8000F900F900F909B
+:100F8000DF91CF910895CF93DF9300D01F92CDB71B
+:100F9000DEB72091E601243021F522E029839B83EE
+:100FA0008A8383E08093E9008FEF9091E80081507D
+:100FB00095FD06C095ED9A95F1F700008111F5CFEA
+:100FC0008091E80085FF0DC040E050E063E070E0F4
+:100FD000CE0101960E94F9098091E8008E778093F6
+:100FE000E8000F900F900F90DF91CF91089520911E
+:100FF000E6012430F1F422E02093E9002FEF309154
+:10100000E800215035FD06C035ED3A95F1F70000B6
+:101010002111F5CF2091E80025FF0BC040E050E002
+:1010200065E070E00E94F9098091E8008E77809376
+:10103000E8000895CF93DF93EC019091E60194309E
+:1010400009F046C080910C018823D9F080910D01F0
+:101050008823B9F09093E9008FEF9091E8008150D8
+:1010600095FD06C095E19A95F1F700008111F5CF45
+:101070008091E80085FF2CC040E050E060E170E026
+:1010800017C081E08093E9008FEF9091E8008150D4
+:1010900095FD06C095ED9A95F1F700008111F5CF09
+:1010A0008091E80085FF14C040E050E068E070E007
+:1010B000CE010E94F9098091E8008E778093E800C4
+:1010C00080E1FE01A2E5B1E001900D928A95E1F781
+:1010D000DF91CF9108958091E501811109C00E94AF
+:1010E0008E0B0E94EB0B8091E20084608093E20003
+:1010F00008951092E501089508950C9496210E9498
+:10110000EF1A0E949C210E94910E0C948A0742E0E3
+:1011100061EC81E00E94080B42E061EC82E00E94F9
+:10112000080B42E061EC83E00E94080B42E161ECB5
+:1011300084E00C94080B8091E801833009F455C0D9
+:1011400030F4813071F0823009F48EC008958A3015
+:1011500009F47AC08B3009F460C0893009F09CC072
+:1011600020C08091E701813A09F096C08091E800A3
+:10117000877F8093E8008091EB019091EC01892BAF
+:1011800021F460E182E591E003C060E080E090E05E
+:1011900070E00E94440A8091E8008B778093E80019
+:1011A00008958091E701813209F076C08091EB01CA
+:1011B0009091EC01009719F0039709F06DC08091B0
+:1011C000E800877F8093E8008091E80082FD05C0F9
+:1011D0008091E6018111F8CF5FC08091F10080938A
+:1011E00062018091E8008B7753C08091E701813ADA
+:1011F00009F052C08091EB019091EC01892B09F02C
+:101200004BC08091E800877F8093E8008091E800E0
+:1012100080FFFCCF80910C0136C08091E7018132C4
+:10122000D9F58091EB019091EC01892BA9F5809182
+:10123000E800877F8093E8000E943D0B8091E901E0
+:1012400080930C010C9421148091E701813221F5E7
+:101250008091E800877F8093E8000E943D0B809199
+:10126000EA018093630108958091E701813AA1F436
+:101270008091E800877F8093E8008091E80080FFFC
+:10128000FCCF809163018093F1008091E8008E771C
+:101290008093E8000C943D0B089584B7877F84BF4A
+:1012A00088E10FB6F89480936000109260000FBE42
+:1012B00090E080E80FB6F89480936100909361000D
+:1012C0000FBE0E94E00E0E948E0B0E94EB0B8091DD
+:1012D000E20084608093E20078940E94710E0E9484
+:1012E000E20E82E091E00E948C0E0E9484218091A7
+:1012F000E601853069F40E94B01A8091E4018823E8
+:10130000B1F30E94DB1A882391F30E94E309EFCF27
+:101310000E94E80EECCF292F332723303105C9F086
+:1013200064F42130310581F02230310509F043C0E9
+:101330008DE690E02CEB33E042C021323105F1F034
+:101340002232310541F137C082E190E029E234E0F8
+:1013500036C099278130910541F08230910541F0E6
+:10136000892B49F5E8EBF3E005C0E0EAF3E002C0C1
+:10137000E8E8F3E0849190E09F0121C06430D8F464
+:10138000E62FF0E0EE0FFF1FEE5DFE4F2081318172
+:1013900089E090E014C0643070F470E0FB01EE0F5F
+:1013A000FF1FE65EFE4F20813181FB01EA5EFE4FAA
+:1013B000808190E004C080E090E020E030E0FA011D
+:1013C00031832083089580E189BD82E189BD09B41C
+:1013D00000FEFDCF8091D8008F7D8093D800809152
+:1013E000E00082608093E0008091E00081FDFCCF0E
+:1013F0000895CF92DF92EF92FF920F931F93CF93B6
+:10140000DF93EC018B016A010E945C0B811133C0F8
+:10141000C114D10439F0F60180819181081B190BA8
+:10142000C80FD91FE12CF12C0115110519F180917C
+:10143000E80085FD16C08091E8008E778093E80073
+:10144000C114D10449F0F60180819181E80EF91EA2
+:10145000F182E08285E00FC00E945C0B882321F3BB
+:101460000AC089918093F10001501109FFEFEF1A32
+:10147000FF0ADACF80E0DF91CF911F910F91FF90AB
+:10148000EF90DF90CF9008952091ED013091EE0123
+:101490002617370748F06115710539F42091E800E7
+:1014A0002E772093E80001C0B90140E06115710575
+:1014B000A9F12091E601222309F443C0253009F463
+:1014C00042C02091E80023FD40C02091E80022FDA9
+:1014D00032C02091E80020FFE9CF4091F300209135
+:1014E000F20030E0342BFC01CF016115710559F099
+:1014F0002830310540F481918093F10061507109E9
+:101500002F5F3F4FF1CF41E02830310509F040E037
+:101510002091E8002E772093E800C8CF4111C9CF71
+:101520000AC08091E601882361F0853061F08091E6
+:10153000E80083FD0AC08091E80082FFF2CF80E0DE
+:10154000089582E0089583E0089581E00895209150
+:10155000ED013091EE012617370748F0611571054E
+:1015600039F42091E8002E772093E80001C0B901FA
+:10157000FC0120E06115710591F18091E60188235D
+:1015800009F440C0853009F43FC08091E80083FD34
+:101590003DC08091E80082FD2FC08091E80080FF6F
+:1015A000E9CF2091F3008091F20090E0922B611539
+:1015B000710559F08830910540F424912093F10091
+:1015C0003196615071090196F2CF21E0089709F038
+:1015D00020E08091E8008E778093E800CBCF211146
+:1015E000CCCF0AC08091E601882361F0853061F09C
+:1015F0008091E80083FD0AC08091E80082FFF2CF6D
+:1016000080E0089582E0089583E0089581E00895E0
+:10161000982F973058F59093E900981739F070910A
+:10162000EC002091ED005091F00003C0242F762FA4
+:1016300050E021FF19C03091EB003E7F3093EB006A
+:101640003091ED003D7F3093ED003091EB00316043
+:101650003093EB007093EC002093ED005093F0007A
+:101660002091EE0027FF07C09F5FD3CF8F7080933C
+:10167000E90081E0089580E008958091E70187FF07
+:1016800011C08091E80082FD05C08091E6018111C2
+:10169000F8CF11C08091E8008B770BC08091E601F4
+:1016A000882349F08091E80080FFF8CF8091E8001E
+:1016B0008E778093E80008952091E4003091E50052
+:1016C00095E64091EC00842F817040FF22C080910C
+:1016D000E80080FD1CC08091E601882391F08530F0
+:1016E00091F08091EB0085FD10C04091E400509195
+:1016F000E5004217530729F39A01915011F784E04E
+:10170000089582E0089583E0089581E0089580E0DF
+:1017100008954091E80042FFDECF08950E94FC0B3F
+:101720000E94040CE0EEF0E0808181608083E8EDAF
+:10173000F0E080818F77808319BCA7EDB0E08C91B9
+:101740008E7F8C9380818F7E80831092E501089537
+:101750000F931F93CF93DF930E94FC0B0E94040C06
+:10176000C8EDD0E088818F778883888180688883FE
+:1017700088818F7D888319BC1092E6011092E20166
+:101780001092E4011092E30100EE10E0F801808174
+:101790008B7F808388818160888342E060E080E085
+:1017A0000E94080BE1EEF0E080818E7F8083E2EE04
+:1017B000F0E0808181608083808188608083F8018F
+:1017C00080818E7F8083888180618883DF91CF9143
+:1017D0001F910F910895E8EDF0E080818F7E808366
+:1017E000E7EDF0E080818160808384E082BF81E06A
+:1017F0008093E5010C94A80BE8EDF0E080818E7FEA
+:1018000080831092E20008951092DA001092E100B5
+:1018100008951F920F920FB60F9211242F933F93AA
+:101820004F935F936F937F938F939F93AF93BF93E8
+:10183000EF93FF938091E10082FF0BC08091E20063
+:1018400082FF07C08091E1008B7F8093E1000E94BE
+:10185000700E8091DA0080FF1FC08091D80080FF59
+:101860001BC08091DA008E7F8093DA008091D900CE
+:1018700080FF0DC080E189BD82E189BD09B400FE11
+:10188000FDCF81E08093E6010E946B0805C019BC82
+:101890001092E6010E9479088091E10080FF19C052
+:1018A0008091E20080FF15C08091E2008E7F8093DE
+:1018B000E2008091E20080618093E2008091D80094
+:1018C00080628093D80019BC85E08093E6010E9475
+:1018D0007D088091E10084FF30C08091E20084FFA8
+:1018E0002CC080E189BD82E189BD09B400FEFDCF35
+:1018F0008091D8008F7D8093D8008091E1008F7E09
+:101900008093E1008091E2008F7E8093E2008091DD
+:10191000E20081608093E2008091E201882311F06F
+:1019200084E007C08091E30087FD02C081E001C030
+:1019300083E08093E6010E947F088091E10083FFAD
+:1019400029C08091E20083FF25C08091E100877F5C
+:101950008093E10082E08093E6011092E2018091A1
+:10196000E1008E7F8093E1008091E2008E7F809382
+:10197000E2008091E20080618093E20042E060E05A
+:1019800080E00E94080B8091F00088608093F00056
+:101990000E947C08FF91EF91BF91AF919F918F9131
+:1019A0007F916F915F914F913F912F910F900FBE5B
+:1019B0000F901F9018951F920F920FB60F9211243F
+:1019C0002F933F934F935F936F937F938F939F9347
+:1019D000AF93BF93CF93DF93EF93FF93C091E90051
+:1019E000CF708091EC00D82FD17080FDD0E810929C
+:1019F000E9008091F000877F8093F00078940E9446
+:101A00001F0D1092E9008091F00088608093F00033
+:101A1000CD2BCF70C093E900FF91EF91DF91CF9173
+:101A2000BF91AF919F918F917F916F915F914F91F6
+:101A30003F912F910F900FBE0F901F9018951F93FD
+:101A4000CF93DF93CDB7DEB7AA970FB6F894DEBF7A
+:101A50000FBECDBFE7EEF1E088E08E0F9091F10070
+:101A600091938E13FBCF0E949B088091E80083FF27
+:101A70001FC18091E7019091E801492F50E04A3061
+:101A8000510508F015C1FA01EA5AFF4F0C941E23C4
+:101A9000803881F0823809F00BC18091EB018F70A2
+:101AA0008093E9008091EB0085FB882780F91092F4
+:101AB000E90006C08091E3019091E40191118260F8
+:101AC0009091E800977F9093E8008093F100109246
+:101AD000F100C8C0282F2D7F09F0EAC0882319F033
+:101AE000823061F0E5C08091E901813009F0E0C009
+:101AF000933009F080E08093E4012BC08091E901EC
+:101B0000811127C08091EB018F7009F4D1C08093BF
+:101B1000E9002091EB0020FF1CC0933021F480915C
+:101B2000EB00806214C09091EB0090619093EB0009
+:101B300021E030E0A90102C0440F551F8A95E2F769
+:101B40004093EA001092EA008091EB008860809355
+:101B5000EB001092E9008091E800877F86C0811138
+:101B6000A7C01091E9011F778091E3008078812B55
+:101B70008093E3008091E800877F8093E8000E94D3
+:101B80003D0B8091E80080FFFCCF8091E3008068EE
+:101B90008093E300111102C082E001C083E08093D2
+:101BA000E60186C08058823008F082C08091E90149
+:101BB0009091EA018C3D53E0950779F583E08A83A3
+:101BC0008AE289834FB7F894DE01139620E03EE065
+:101BD00051E2E32FF0E050935700E49120FF03C05F
+:101BE000E295EF703F5FEF708E2F90E0EA3010F0DB
+:101BF000C79601C0C0968D939D932F5F243149F7FE
+:101C00004FBF8091E800877F8093E8006AE270E030
+:101C1000CE0101960E94440A14C0AE014F5F5F4F8F
+:101C20006091EB010E948B09BC01892B09F440C033
+:101C30009091E800977F9093E80089819A810E94B3
+:101C4000A70A8091E8008B778093E80031C0803844
+:101C500079F58091E800877F8093E8008091E20128
+:101C60008093F1008091E8008E778093E8000E94D5
+:101C70003D0B1EC081111CC09091E9019230C0F44F
+:101C80008091E800877F8093E8009093E2010E94B2
+:101C90003D0B8091E201811106C08091E30087FD38
+:101CA00002C081E001C084E08093E6010E948708C1
+:101CB0008091E80083FF0AC08091E800877F8093CD
+:101CC000E8008091EB0080628093EB00AA960FB64B
+:101CD000F894DEBF0FBECDBFDF91CF911F91089565
+:101CE0000895CF938091E6018823A1F0C091E90087
+:101CF000CF709091EC00892F817090FD80E8C82B07
+:101D00001092E9008091E80083FD0E941F0DCF70C2
+:101D1000C093E900CF910895909369018093680181
+:101D20000895E0916801F0916901309721F00190E8
+:101D3000F081E02D099480E00895E0916801F09130
+:101D40006901309721F00280F381E02D0994089514
+:101D5000E0916801F0916901309721F00480F581EC
+:101D6000E02D099408952091660130916701821752
+:101D7000930771F09093670180936601E091680189
+:101D8000F0916901309721F00680F781E02D0994E8
+:101D9000089520916401309165018217930771F0D5
+:101DA0009093650180936401E0916801F09169016D
+:101DB000309721F00084F185E02D0994089508956D
+:101DC0000C94DF0E0E94F51A0E9465040C94BB1B54
+:101DD000CF92DF92EF92FF920F931F93CF93DF93F7
+:101DE000CDB7DEB72B970FB6F894DEBF0FBECDBFD1
+:101DF0000E947D048BE6C82E81E0D82E00E010E022
+:101E0000E02E802F0E946B05F60141916F01F42EA8
+:101E1000F826B1F40F5F1F4F0E30110589F78FEFD1
+:101E200089838A831B820E94FE1A8160782F9D839A
+:101E30008C8349815A816B818D810E948B0F40C0B8
+:101E40009091CD0191FF04C08B870E9471058B8515
+:101E500020E030E04F2D50E0922FBA01022E02C058
+:101E6000759567950A94E2F760FF24C02E83EF8290
+:101E700021E030E0690102C0CC0CDD1C9A95E2F74C
+:101E800090E08C219D21892B09F420E028870E9475
+:101E9000FE1A8160782F9A8789874E815F816885D5
+:101EA0008A850E948B0FF801E559FE4F8081C82674
+:101EB000C08206C02F5F3F4F2630310569F6AACF9A
+:101EC0000E94A21E10916A010E94910E1817A1F0A3
+:101ED0000E94910E80936A012B960FB6F894DEBF94
+:101EE0000FBECDBFDF91CF911F910F91FF90EF906B
+:101EF000DF90CF900C948A072B960FB6F894DEBF34
+:101F00000FBECDBFDF91CF911F910F91FF90EF904A
+:101F1000DF90CF900895CF93DF93CDB7DEB72B97A7
+:101F20000FB6F894DEBF0FBECDBF4F8358876987C9
+:101F30007A878B87DE01119686E0FD0111928A95E2
+:101F4000E9F785E0FE01379601900D928A95E1F759
+:101F500049815A816B817C818D819E810E94BB1653
+:101F60002B960FB6F894DEBF0FBECDBFDF91CF9199
+:101F700008950895CF93882309F4C2C0C82F8238EA
+:101F800059F40E94910E81FDBBC089E30E9464193F
+:101F90000E94311A89E30CC0833879F40E94910EB3
+:101FA00080FDAEC083E50E9464190E94311A83E56A
+:101FB0000E94A619CF910C94311A843859F40E94CA
+:101FC000910E82FD9DC087E40E9464190E94311A1F
+:101FD00087E4EECF8CEF8C0F813A48F48C2F0E946F
+:101FE000E92081118DC08C2F0E946419E3CF80E21B
+:101FF0008C0F883048F4C77081E001C0880FCA9503
+:10200000EAF70E94EA19D6CF8BE58C0F833078F47B
+:10201000C53A29F0C63A31F083E890E005C081E87E
+:1020200090E002C082E890E0CF910C94B30E88E576
+:102030008C0F833108F064C0C83A39F1C93A41F1D4
+:10204000CA3A49F1CB3A51F1CC3A59F1CD3A61F162
+:10205000C03B69F1CE3A71F1CF3A79F1C13B81F1E0
+:10206000C23B89F1C33B91F1C43B99F1C53BA1F15E
+:10207000C63BA9F1C73BB1F1C83BB9F1C93BC1F1BE
+:10208000CA3BC9F180E090E038C082EE90E035C0F4
+:1020900089EE90E032C08AEE90E02FC085EB90E0B0
+:1020A0002CC086EB90E029C087EB90E026C08CEC3A
+:1020B00090E023C08DEC90E020C083E891E01DC04B
+:1020C0008AE891E01AC082E991E017C084E991E0C2
+:1020D00014C081E292E011C083E292E00EC084E27B
+:1020E00092E00BC085E292E008C086E292E005C073
+:1020F00087E292E002C08AE292E0CF910C94C90E8E
+:10210000CF910895882309F44BC0823859F40E9476
+:10211000910E81FF45C089E30E9464190E94311A23
+:1021200089E30CC0833871F40E94910E80FF38C09F
+:1021300083E50E9464190E94311A83E50E94A61962
+:102140000C94311A843859F40E94910E82FF28C0F1
+:1021500087E40E9464190E94311A87E4EFCF9CEF54
+:10216000980F913A58F390E2980F983050F4877096
+:1021700091E001C0990F8A95EAF7892F0E94F01922
+:10218000DFCF9BE5980F933020F480E090E00C9433
+:10219000B30E885A833120F480E090E00C94C90E8D
+:1021A0000895882321F00E94EA190C94311A0895A9
+:1021B000882321F00E94F0190C94311A0895BF92DF
+:1021C000CF92DF92EF92FF920F931F93CF93DF9303
+:1021D00000D000D000D0CDB7DEB725E0FC01DE0195
+:1021E000119601900D922A95E1F7FC01D0801181A2
+:1021F0000281258122952F7043815481452B09F45A
+:10220000FCC21F3F21F4FFEFDF1609F4F6C27C0188
+:102210002E830E94B90FD9821A8369817A81802F17
+:102220000E946019182FB92E0E9415190E94DC1700
+:102230002E81002319F00E94071A2E81EB2DE295C2
+:10224000EF70F0E0E05AFF4F0C941E238B2D807F3F
+:102250009B2D9F70F92E882319F0F29480EFF822BD
+:10226000002389F0FF2009F475C280E2810F8830D5
+:1022700020F48F2D0E94EA1903C08F2D0E94FA19B5
+:102280000E94311A67C2812F0E948210FF2009F438
+:10229000B4C2105E8F2D183018F40E94F01902C0DD
+:1022A0000E94001A26960FB6F894DEBF0FBECDBF6F
+:1022B000DF91CF911F910F91FF90EF90DF90CF9022
+:1022C000BF900C94311A3B2D307F8B2D8F703032A4
+:1022D00011F08295807F112319F0113021F12CC06B
+:1022E0000023B9F0222309F4A0C1213009F09DC1D7
+:1022F00026960FB6F894DEBF0FBECDBFDF91CF910B
+:102300001F910F91FF90EF90DF90CF90BF900C94B2
+:102310001A1A222319F0213009F46FC28E830E9409
+:102320001D1A8E8196C1002321F0223008F065C26B
+:102330007CC1211162C28DC1002321F0222309F446
+:1023400074C108C2222309F484C119C22B2D269519
+:102350002695237030E02115310521F0213031051B
+:10236000D1F04BC2002321F0812F9B2D937002C02E
+:1023700080E090E026960FB6F894DEBF0FBECDBF8A
+:10238000DF91CF911F910F91FF90EF90DF90CF9051
+:10239000BF900C94B30E002321F0812F9B2D9370DE
+:1023A00002C080E090E026960FB6F894DEBF0FBE24
+:1023B000CDBFDF91CF911F910F91FF90EF90DF90F4
+:1023C000CF90BF900C94C90E812F002319F00E946A
+:1023D000AA1D02C00E94121E26960FB6F894DEBFF8
+:1023E0000FBECDBFDF91CF911F910F91FF90EF9066
+:1023F000DF90CF90BF900C94971E8B2D837009F0C7
+:102400007BC00111FAC1812F829586958770880F54
+:10241000880F912F9F70C92ED12CE12CF12C082E02
+:1024200004C0CC0CDD1CEE1CFF1C0A94D2F714FF78
+:1024300012C04FE050E060E070E004C0440F551F50
+:10244000661F771F8A95D2F7CB01BA016095709508
+:102450008095909503C060E070E0CB012B2D269510
+:1024600026952370422F50E042305105D9F0433079
+:10247000510569F16C297D298E299F29413051052B
+:1024800051F126960FB6F894DEBF0FBECDBFDF9197
+:10249000CF911F910F91FF90EF90DF90CF90BF9061
+:1024A0000C9403186C297D298E299F2926960FB636
+:1024B000F894DEBF0FBECDBFDF91CF911F910F917A
+:1024C000FF90EF90DF90CF90BF900C941F180E9468
+:1024D0000318C701B60126960FB6F894DEBF0FBEEB
+:1024E000CDBFDF91CF911F910F91FF90EF90DF90C3
+:1024F000CF90BF900C94E717002319F08B2D8170BB
+:1025000001C08695882309F478C1812F829586952C
+:102510008770880F880F912F9F70C92ED12CE12CC6
+:10252000F12C082E04C0CC0CDD1CEE1CFF1C0A9400
+:10253000D2F714FF12C04FE050E060E070E004C03A
+:10254000440F551F661F771F8A95D2F7CB01BA013A
+:10255000609570958095909503C060E070E0CB0128
+:102560002B2D269526952370422F50E042305105A1
+:10257000D9F04330510569F16C297D298E299F29B5
+:102580004130510551F126960FB6F894DEBF0FBECB
+:10259000CDBFDF91CF911F910F91FF90EF90DF9012
+:1025A000CF90BF900C94DD186C297D298E299F292E
+:1025B00026960FB6F894DEBF0FBECDBFDF91CF9148
+:1025C0001F910F91FF90EF90DF90CF90BF900C94F0
+:1025D000F9180E94DD18C701B60126960FB6F894C7
+:1025E000DEBF0FBECDBFDF91CF911F910F91FF9046
+:1025F000EF90DF90CF90BF900C94C118103FD1F1B5
+:1026000018F4103E50F4A1C0123F09F463C008F45E
+:102610004CC0133F09F473C098C01F708B2D8F718D
+:102620000023A1F00E945A18812F26960FB6F89425
+:10263000DEBF0FBECDBFDF91CF911F910F91FF90F5
+:10264000EF90DF90CF90BF900C94D1100E947B1838
+:10265000812F26960FB6F894DEBF0FBECDBFDF9157
+:10266000CF911F910F91FF90EF90DF90CF90BF908F
+:102670000C94D8100023A9F02111BFC08B2D8F71AD
+:1026800026960FB6F894DEBF0FBECDBFDF91CF9177
+:102690001F910F91FF90EF90DF90CF90BF900C941F
+:1026A000A018223008F0A9C0E9CF0023A9F08B2D93
+:1026B0008F7126960FB6F894DEBF0FBECDBFDF91A7
+:1026C000CF911F910F91FF90EF90DF90CF90BF902F
+:1026D0000C945A18002359F38B2D8F7126960FB640
+:1026E000F894DEBF0FBECDBFDF91CF911F910F9148
+:1026F000FF90EF90DF90CF90BF900C947B18002359
+:1027000099F08B2D8F7126960FB6F894DEBF0FBE11
+:10271000CDBFDF91CF911F910F91FF90EF90DF9090
+:10272000CF90BF900C94451826960FB6F894DEBF54
+:102730000FBECDBFDF91CF911F910F91FF90EF9012
+:10274000DF90CF90BF900C943B180023A9F0222378
+:1027500009F4ADCF812F26960FB6F894DEBF0FBED9
+:10276000CDBFDF91CF911F910F91FF90EF90DF9040
+:10277000CF90BF900C94BA0F222309F4ADCF812FD4
+:1027800026960FB6F894DEBF0FBECDBFDF91CF9176
+:102790001F910F91FF90EF90DF90CF90BF900C941E
+:1027A00082104B2D4F70612FC7010E9401032696A6
+:1027B0000FB6F894DEBF0FBECDBFDF91CF911F9152
+:1027C0000F91FF90EF90DF90CF90BF900C945F1728
+:1027D0004B2D4F70612FC70126960FB6F894DEBFC0
+:1027E0000FBECDBFDF91CF911F910F91FF90EF9062
+:1027F000DF90CF90BF900C94310626960FB6F894D8
+:10280000DEBF0FBECDBFDF91CF911F910F91FF9023
+:10281000EF90DF90CF90BF9008950E94071A0E941A
+:10282000171A0E94DC190E94311A0E94481F0E9448
+:10283000971E80E090E00E94B30E80E090E00C9440
+:10284000C90E0E94F7190C940D140E945519292FD6
+:1028500022952F7030E02C3031054CF42A303105B0
+:102860006CF4225031092230310588F407C02C3035
+:10287000310549F02F30310531F009C0803E48F074
+:10288000803F29F406C093FB882780F9089580E0F3
+:10289000089581E00895CF93DF9300D000D01F9278
+:1028A000CDB7DEB70F900F900F900F900F90DF9184
+:1028B000CF910895CF93DF9300D000D000D0CDB753
+:1028C000DEB726960FB6F894DEBF0FBECDBFDF9100
+:1028D000CF9108951F93CF93DF93C091790116E0B4
+:1028E00080917A01C81799F0D0E01C9FF0011D9FDC
+:1028F000F00D1124E558FE4F4081518162817381B2
+:10290000848195810E945A142196C770E9CFDF9186
+:10291000CF911F9108954091AB015091AC0160910E
+:10292000AD017091AE018091AF019091B0010C9416
+:102930005A148091B00182958F7009F054C0809133
+:10294000AD01882309F44FC080917901A0917A01EB
+:102950006091AB017091AC014091AE015091AF011B
+:10296000B6E08A1709F43FC090E041155105C1F166
+:102970007F3F11F46F3FA1F1B89FF001B99FF00DB7
+:102980001124E558FE4F218172132AC02081621361
+:1029900027C02281211124C02381348124173507C7
+:1029A00010F421503109241B350B283C3105C0F4AB
+:1029B0002091B0012F7020612093B00126E0289F64
+:1029C000F001299FF00D1124E058FE4F80818F7097
+:1029D000806180838BEA91E00E94DF100C946A147E
+:1029E00001968770BECF0895CF92DF92EF92FF924B
+:1029F0000F931F93CF93DF93CDB7DEB762970FB6D8
+:102A0000F894DEBF0FBECDBF8C0185E0F801DE017A
+:102A10001D9601900D928A95E1F7D8014C9111967F
+:102A20005C91119712966C9112971396CD90DC9051
+:102A300014973091AB017091AC018091AE019091EF
+:102A4000AF01009709F46BC17F3F19F43F3F09F4D0
+:102A500066C1E090AD01EE2009F4C0C02091B00144
+:102A6000C816D90628F0F601E81BF90BCF0104C0FF
+:102A7000809590958C0D9D1DFF24F394883C9105C5
+:102A800078F0F12C207F09F0C6C07C2DD98AC88A45
+:102A900089890E944B148BEA91E00E94DF10B1C03B
+:102AA000822F807F09F046C0751314C0341312C002
+:102AB000611110C02F7020612093B0010E948B140F
+:102AC0008BEA91E00E94DF108091B001D801159649
+:102AD0008C932EC0CD2819F15F3F11F44F3FF9F0D0
+:102AE000F62E61111CC08091790120917A0136E0A7
+:102AF000821709F45AC090E0389FF001399FF00D19
+:102B00001124E558FE4F7181571306C07081471399
+:102B100003C07281711103C001968770E9CFF62E50
+:102B2000662309F418C18091B00181608093B001DF
+:102B3000F12C11C1751308C0341306C0611104C013
+:102B40008091B001D801C3C04D875E878D859E8579
+:102B50006A8B0E9425146A898823E1F16623D1F1EA
+:102B60002091B001822F82958F7090E0029774F0CF
+:102B70008091AB019091AC0198878F831986DB8699
+:102B8000CA862C87CE0107960E94DF1086E0F801E6
+:102B9000ABEAB1E001900D928A95E1F70E94991499
+:102BA0000E948B14FF24F394D6C04D875E878D85D9
+:102BB0009E850E945519292F22952F7030E02230D2
+:102BC00031050CF0BCC09F7009F0B6C0805E883043
+:102BD00008F4C1C0C8010E94DF10E4CFC816D906AE
+:102BE00008F453C0F601E81BF90BCF01883C9105AE
+:102BF00008F450C0F12C7C2DD98AC88A89890E949A
+:102C00004B14EBEAF1E086E0DF011D928A95E9F7CB
+:102C10000E948B14A0C0751314C0341312C061112C
+:102C200010C08091B001F8018583C8010E94DF10B7
+:102C300086E0EBEAF1E0DF011D928A95E9F7FE2CD0
+:102C40008AC04D875E878D859E856A8B0E9425147C
+:102C50006A89882309F4BECF662309F4BBCF20918B
+:102C6000B001822F82958F7090E002970CF48ECF86
+:102C70008091AB019091AC019A8389831B82DD82A4
+:102C8000CC822E83CE0101967FCF809590958C0DBE
+:102C90009D1DACCFF62E662309F49CCF75132EC074
+:102CA00034132CC02091B00120FD1FC0822F8295CB
+:102CB0008F70D9F0D80115962C9315978F3049F065
+:102CC0008F5F982F9295907F822F8F70892B15960A
+:102CD0008C93C8010E94DF1086E0F801ABEAB1E0F6
+:102CE00001900D928A95E1F793CF86E0F801ABEA67
+:102CF000B1E001900D928A95E1F72DC04D875E8776
+:102D00008D859E850E942514811140CF8091B00150
+:102D100081608093B001C8010E94DF101CC066234F
+:102D200009F458CF4D875E878D859E850E942514B6
+:102D3000882309F44FCF2ACF811148CF0CC024300B
+:102D400031050CF047CF9F7009F440CFF801958111
+:102D5000907F09F03BCF8F2D62960FB6F894DEBFBF
+:102D60000FBECDBFDF91CF911F910F91FF90EF90DC
+:102D7000DF90CF9008951F93CF93DF93CDB7DEB749
+:102D80002C970FB6F894DEBF0FBECDBF4F83588788
+:102D900069877A878B879C87CE0107960E94F414F7
+:102DA000882369F08F8198852A853B85232BF1F153
+:102DB0009F3F09F063C08F3F09F060C037C086E0D5
+:102DC000FE013796DE01119601900D928A95E1F78A
+:102DD0006F817885EA85FB85309741F17F3F11F45B
+:102DE0006F3F21F120917A0130E0C901019687708F
+:102DF00099274091790150E08417950709F447C05D
+:102E000069837A83FD83EC8396E0929FD001939F40
+:102E1000B00D1124A558BE4FFE01319601900D92C0
+:102E20009A95E1F780937A010E946A1416E08091E6
+:102E3000790190917A018917C1F1189FC00111247D
+:102E400085589E4F0E94F414882379F1E09179010E
+:102E50001E9FF0011124E558FE4F4081518162818F
+:102E60007381848195810E945A148091790190E048
+:102E700001968770992780937901D9CF4F81588522
+:102E800069857A858B859C850E945A14CFCF0E94D4
+:102E9000211410927A0110927901EBEAF1E086E0B8
+:102EA000DF011D928A95E9F7C1CF2C960FB6F894F1
+:102EB000DEBF0FBECDBFDF91CF911F910895EF927E
+:102EC000FF920F931F93CF93DF938C01892B09F40B
+:102ED0006CC0F12CEE24E394E8012196F801849172
+:102EE000843740F4843008F051C0813081F0823062
+:102EF00019F15BC0853709F444C0A8F19CE7980F2D
+:102F0000903708F052C08F770E94821041C00E5F48
+:102F10001F4FFE01C49180E28C0F883048F4C770C7
+:102F20008E2D01C0880FCA95EAF70E940A1A14C0B4
+:102F30008C2F0E94BA0F2DC00E5F1F4FFE01C4914F
+:102F400080E28C0F883058F4C7708E2D01C0880F36
+:102F5000CA95EAF70E94101A0E94311A1AC08C2FE3
+:102F60000E94821016C00E5F1F4FFE01C491CC2339
+:102F700081F08FE99FE00197F1F700C00000C15098
+:102F8000F6CF0E5F1F4FFE01F49003C00E94BA0FF0
+:102F90008E018F2D882309F49FCFEFE9FFE0319751
+:102FA000F1F700C000008150F5CFDF91CF911F9164
+:102FB0000F91FF90EF90089508956093B50170937D
+:102FC000B6018093B7019093B8010C940D140F9340
+:102FD0001F930091B5011091B6012091B701309176
+:102FE000B801DC01CB01802B912BA22BB32B80935A
+:102FF000B5019093B601A093B701B093B8011F91AA
+:103000000F910C940D140F931F930091B501109123
+:10301000B6012091B7013091B801DC01CB018023CA
+:103020009123A223B3238093B5019093B601A0937B
+:10303000B701B093B8011F910F910C940D140F9329
+:103040001F930091B5011091B6012091B701309105
+:10305000B801DC01CB0180279127A227B3278093F9
+:10306000B5019093B601A093B701B093B8011F9139
+:103070000F910C940D141092B1011092B2011092A4
+:10308000B3011092B4010C940D1441E050E060E0E3
+:1030900070E004C0440F551F661F771F8A95D2F752
+:1030A0004093B1015093B2016093B3017093B401A6
+:1030B0000C940D1441E050E060E070E004C0440F57
+:1030C000551F661F771F8A95D2F78091B1019091A5
+:1030D000B201A091B301B091B401482B592B6A2BD6
+:1030E0007B2B4093B1015093B2016093B301709375
+:1030F000B4010C940D1441E050E060E070E004C0B5
+:10310000440F551F661F771F8A95D2F7409550953B
+:10311000609570958091B1019091B201A091B30139
+:10312000B091B401482359236A237B234093B10112
+:103130005093B2016093B3017093B4010C940D14D9
+:1031400041E050E060E070E004C0440F551F661F8E
+:10315000771F8A95D2F78091B1019091B201A09129
+:10316000B301B091B401482759276A277B274093C0
+:10317000B1015093B2016093B3017093B4010C9408
+:103180000D140F931F930091B1011091B201209182
+:10319000B3013091B401DC01CB01802B912BA22B28
+:1031A000B32B8093B1019093B201A093B301B0937C
+:1031B000B4011F910F910C940D140F931F93009164
+:1031C000B1011091B2012091B3013091B401DC0141
+:1031D000CB0180239123A223B3238093B101909349
+:1031E000B201A093B301B093B4011F910F910C945D
+:1031F0000D140F931F930091B1011091B201209112
+:10320000B3013091B401DC01CB0180279127A227C3
+:10321000B3278093B1019093B201A093B301B0930F
+:10322000B4011F910F910C940D140895CF92DF9269
+:10323000EF92FF920F931F93CF93DF938C01C09077
+:10324000B501D090B601E090B701F090B80180913F
+:10325000B1019091B201A091B301B091B401C82A1B
+:10326000D92AEA2AFB2ACFE1D0E0D701C6010C2EE9
+:1032700004C0B695A795979587950A94D2F780FFD5
+:1032800006C0B8018C2F0E945406019721F42197A3
+:1032900060F780E001C08C2FDF91CF911F910F91DB
+:1032A000FF90EF90DF90CF900895CF93DF93EC01E4
+:1032B0000E941619BE010E945406DF91CF91089515
+:1032C000CB010E945519089590910C01992321F08A
+:1032D00090910D01911109C020910E0130910F01C3
+:1032E000F90132969FEF40E01FC0982F9695969572
+:1032F00096959F3050F5E0910E01F0910F01E90F86
+:10330000F11D877021E030E0A90102C0440F551F74
+:103310008A95E2F7CA019181892B818308959F3FA5
+:1033200039F04F5F4E3041F051915813F8CF0DC036
+:103330005111F7CF942FF5CF9F3F39F0F901E90FE5
+:10334000F11D97FDFA9582830895089590910C01DF
+:10335000992321F090910D01911109C020910E0146
+:1033600030910F01F9013296205F3F4F1FC0982F17
+:103370009695969596959F30F0F4E0910E01F09118
+:103380000F01E90FF11D877021E030E0A90102C0B3
+:10339000440F551F8A95E2F7CA01809591818923D0
+:1033A000818308953196E217F30729F090819813ED
+:1033B000F9CF1082F7CF089581E090E0E0910E01FF
+:1033C000F0910F01E80FF91F1082019680319105ED
+:1033D000A9F708959091CC01892B8093CC01089591
+:1033E00080959091CC0189238093CC01089510920F
+:1033F000CC0108959091CB01892B8093CB01089546
+:1034000080959091CB0189238093CB0108951092F0
+:10341000CB0108959091CA01892B8093CA01089528
+:1034200080959091CA0189238093CA0108951092D2
+:10343000CA0108958093B90108951092B9010895C1
+:1034400080910E0190910F01FC0131969C01205F4B
+:103450003F4F80E0919191118F5FE217F307D1F711
+:103460000895E0910E01F0910F018091CC018083CD
+:10347000E0910E01F0910F0190818091CB01892B99
+:103480008083E0910E01F0910F0190818091CA013B
+:10349000892B80838091B901882361F0E0910E012E
+:1034A000F0910F019081892B80830E94201A811155
+:1034B0001092B90180910E0190910F010C949D0E14
+:1034C000CF92DF92EF92FF926C01EE24FF24C114A1
+:1034D000D104E104F10421F0C701B60120E101C0EB
+:1034E00020E0C72ED82EE92EFF24C114D104E10418
+:1034F000F10419F0285FC701B6016B017C0154E0AB
+:10350000F694E794D794C7945A95D1F7C114D1048F
+:10351000E104F10419F02C5FC701B6016B017C01D5
+:1035200042E0F694E794D794C7944A95D1F7C11432
+:10353000D104E104F10419F02E5FC701B601DC01EA
+:10354000CB01B695A79597958795892B8A2B8B2BC1
+:1035500009F02F5F822FFF90EF90DF90CF900895BA
+:103560008091E601843021F11092CE0120E488E1BF
+:1035700090E00FB6F894A895809360000FBE20935A
+:10358000600080E00E948A0783B7817F846083BFE8
+:1035900083B7816083BF7894889583B78E7F83BF1C
+:1035A00088E10FB6F89480936000109260000FBE1F
+:1035B000089508950895CF930E94D91A0E947D041A
+:1035C0000E94DA1AC0E08C2F0E946B05811104C0A2
+:1035D000CF5FCE30C1F701C081E0CF9108950E9446
+:1035E00021140E94910E0C948A0782E084BD93E01E
+:1035F00095BD9AEF97BD80936E0008952FB7F8940C
+:103600008091CF019091D001A091D101B091D201D0
+:103610002FBF0895CF92DF92EF92FF920F931F93E7
+:103620002FB7F8944091CF015091D0016091D10112
+:103630007091D2012FBF6A017B01EE24FF248C011F
+:1036400020E030E0C016D106E206F30610F4415047
+:1036500051099A01281B390BC9011F910F91FF9045
+:10366000EF90DF90CF9008951F920F920FB60F92B8
+:1036700011248F939F93AF93BF938091CF0190912B
+:10368000D001A091D101B091D2010196A11DB11D2F
+:103690008093CF019093D001A093D101B093D20138
+:1036A000BF91AF919F918F910F900FBE0F901F9080
+:1036B00018950E948E0BF8942FEF87EA91E621501F
+:1036C00080409040E1F700C0000087E090EBDC0113
+:1036D0008093EF019093F001A093F101B093F20178
+:1036E0009CE088E10FB6F894A895809360000FBE27
+:1036F00090936000FFCFEF92FF920F931F93CF93B1
+:10370000DF93D82FC0E08C2F0E946B0500E010E003
+:10371000E82EF12CC701002E02C0959587950A94DA
+:10372000E2F780FD06C00F5F1F4F0630110591F7CD
+:1037300009C0602F7C2F80E00E943206D813F3CF9F
+:1037400081E004C0CF5FCE30F1F680E0DF91CF9111
+:103750001F910F91FF90EF900895CF93C82F8CE2A7
+:103760000E947B1B882321F08C2FCF910C947B1B14
+:1037700080E0CF910895CF930E94021D811102C075
+:103780000E94E81CC5E6C15049F00E947D048FE309
+:103790009CE90197F1F700C00000F5CF89E20E9493
+:1037A000AD1B811113C18AE20E94AD1B81110E94E1
+:1037B000E81C85E00E94AD1B81110E94591B0E94EC
+:1037C0000D1D8093CD0187E00E94AD1B8823A9F1D8
+:1037D0008BE10E94AD1B882351F08091CD0181FBCC
+:1037E000222720F991E0922790FB81F90EC08EE00C
+:1037F0000E94AD1B882361F08091CD0182FB2227BE
+:1038000020F991E0922790FB82F98093CD0115C0B9
+:1038100080E10E94AD1B9091CD01882341F093FB84
+:10382000222720F981E0822780FB93F904C0892FA9
+:10383000809580FB90F99093CD018091CD010E94FD
+:10384000111D0E941F1D8093E00180EE0E94AD1BA0
+:10385000882341F08091E001982F909590FB80F9AA
+:103860008093E00189E30E94AD1B882359F0809189
+:10387000E00181FB222720F991E0922790FB81F95A
+:103880008093E00182EE0E94AD1B882359F0809165
+:10389000E00182FB222720F991E0922790FB82F938
+:1038A0008093E00186EE0E94AD1B882359F0809141
+:1038B000E00183FB222720F991E0922790FB83F916
+:1038C0008093E00183EE0E94AD1B882359F0809124
+:1038D000E00184FB222720F991E0922790FB84F9F4
+:1038E0008093E00185E30E94AD1B882359F080910D
+:1038F000E00185FB222720F991E0922790FB85F9D2
+:103900008093E00181E30E94AD1B882359F08091F0
+:10391000E00186FB222720F991E0922790FB86F9AF
+:103920008093E00181E10E94AD1B882359F08091D2
+:10393000E00187FB222720F991E0922790FB87F98D
+:103940008093E0018091E0010E94231D8091E001BD
+:1039500087FB882780F980930D0187E20E94AD1BC9
+:10396000C82F8EE10E94AD1B8111C2608FE10E94C1
+:10397000AD1B8111C46080E20E94AD1B8111C86043
+:1039800081E20E94AD1B8111C06182E20E94AD1BE9
+:103990008111C06283E20E94AD1B8111C06484E288
+:1039A0000E94AD1B882311F0C06802C0CC2329F00F
+:1039B0008C2F0E941A1D6C2F03C00E94161D682FA9
+:1039C00070E080E090E0CF910C94DD17CF910895E6
+:1039D0006DEE7EEF80E090E00E94542360E082E094
+:1039E00090E00E94462360E083E090E00E9446233E
+:1039F00060E084E090E00E94462360E085E090E093
+:103A00000C94462380E090E00E94402321E08D3E0C
+:103A10009E4F09F020E0822F089582E090E00C9400
+:103A20003823682F82E090E00C94462383E090E0F6
+:103A30000C943823682F83E090E00C94462384E0B4
+:103A400090E00C943823682F84E090E00C94462397
+:103A50008091D50180FF0BC06091130185E0689FC4
+:103A6000B001112475956795759567952BC081FFF9
+:103A700009C06091130185E0689FB001112475951C
+:103A8000679520C082FF07C06091130185E0689FA1
+:103A9000B001112417C09091D6019923D1F0609103
+:103AA0001201961788F72091130185E0289F900155
+:103AB0001124929FA001939F500D112470E0CA0120
+:103AC0000E940A236038710540F46115710539F0D0
+:103AD00002C065E070E0862F08958FE7089581E0C9
+:103AE00008958091D50180FF08C06091110170E0B8
+:103AF000759567957595679521C081FF06C06091A2
+:103B0000110170E07595679519C082FF04C060913E
+:103B1000110170E010C09091D6019923C1F060911D
+:103B200010019617A0F780911101899FC0011124FF
+:103B300070E00E940A236038710528F46115710550
+:103B400021F0862F08958FE7089581E0089561E0C0
+:103B500070E0F4CF803F21F40E94281D819504C0BD
+:103B6000813F29F40E94281D8093D9010895823F46
+:103B700021F40E94281D819504C0833F29F40E94EE
+:103B8000281D8093D8010895893F19F40E94711D62
+:103B900005C08A3F31F40E94711D81958093DA013E
+:103BA00008958B3F21F40E94711D819504C08C3FC4
+:103BB00029F40E94711D8093DB010895843F21F454
+:103BC0008091D701816017C0853F21F48091D70192
+:103BD000826011C0863F21F48091D70184600BC0C0
+:103BE000873F21F48091D701886005C0883F31F478
+:103BF0008091D70180618093D70108958D3F21F492
+:103C00008091D50181600BC08E3F21F48091D50158
+:103C1000826005C08F3F29F48091D5018460809334
+:103C2000D5010895803F39F48091D90187FF6CC098
+:103C30001092D90169C0813F29F48091D9011816E9
+:103C4000BCF362C09091D801823F29F497FF5CC019
+:103C50001092D80159C0833F19F41916CCF354C0FF
+:103C6000893F41F48091DA0118160CF04DC0109292
+:103C7000DA014AC08A3F29F48091DA0187FF44C003
+:103C8000F6CF8B3F39F48091DB0187FF3DC0109266
+:103C9000DB013AC08C3F29F48091DB011816BCF39C
+:103CA00033C0843F21F48091D7018E7F17C0853FB8
+:103CB00021F48091D7018D7F11C0863F21F480913E
+:103CC000D7018B7F0BC0873F21F48091D701877F7D
+:103CD00005C0883F31F48091D7018F7E8093D70152
+:103CE00013C08D3F21F48091D5018E7F0BC08E3F94
+:103CF00021F48091D5018D7F05C08F3F29F48091FB
+:103D0000D5018B7F8093D5018091D80181110EC0A0
+:103D10008091D90181110AC08091DA01811106C018
+:103D20008091DB01811102C01092D601089587EDC8
+:103D300091E00E94A80E0E94FE1A9093D4018093F5
+:103D4000D30108951F93CF93DF938091D301909176
+:103D5000D4010E940A1BAC019091D601992321F055
+:103D60002091140130E006C0209115018AE0289FBF
+:103D7000900111244217530708F486C08091D8019E
+:103D8000C091D901D091DA011091DB01811107C0F6
+:103D9000C11176C0D11174C0111172C075C09F3F9E
+:103DA00019F09F5F9093D601181624F40E94281DE5
+:103DB0008093D8018091D80187FF05C00E94281DFB
+:103DC00081958093D8011C1624F40E94281D8093AD
+:103DD000D9018091D90187FF05C00E94281D8195D6
+:103DE0008093D9016091D801662339F1C091D9013E
+:103DF000CC2319F1772767FD7095872F972F0E94A5
+:103E00001B2223E333E343E35FE30E947F220E940C
+:103E1000E8216093D8016C2F772767FD7095872F75
+:103E2000972F0E941B2223E333E343E35FE30E94C7
+:103E30007F220E94E8216093D9011D1624F40E947C
+:103E4000711D8093DA018091DA0187FF05C00E941D
+:103E5000711D81958093DA01111624F40E94711D61
+:103E60008093DB018091DB0187FF05C00E94711DFB
+:103E700081958093DB01DF91CF911F910C94971E68
+:103E80009F3F09F08ECF96CFDF91CF911F9108957C
+:103E9000E7EDF1E085E0DF011D928A95E9F71092E8
+:103EA000D6011092D5010895833081F128F4813034
+:103EB00059F08230D1F00895853009F449C0B8F145
+:103EC000863009F456C0089580911501262F30E000
+:103ED000280F311D2F3F310524F4680F6093150121
+:103EE00008958FEF80931501089580911401262F76
+:103EF00030E0280F311D2F3F310524F4680F609307
+:103F0000140108958FEF8093140108958091130197
+:103F1000262F30E0280F311D2F3F310524F4680F84
+:103F20006093130108958FEF80931301089580919A
+:103F30001201262F30E0280F311D2F3F310524F4C8
+:103F4000680F6093120108958FEF80931201089516
+:103F500080911101262F30E0280F311D2F3F3105B0
+:103F600024F4680F6093110108958FEF809311017D
+:103F7000089580911001262F30E0280F311D2F3F2A
+:103F8000310524F4680F6093100108958FEF80933A
+:103F900010010895833011F128F4813049F0823006
+:103FA00091F00895853081F120F18630C1F10895B6
+:103FB00080911501681720F4861B809315010895E0
+:103FC00010921501089580911401681720F4861B42
+:103FD00080931401089510921401089580911301A3
+:103FE000681720F4861B8093130108951092130123
+:103FF000089580911201681720F4861B80931201A6
+:10400000089510921201089580911101681720F40B
+:10401000861B8093110108951092110108958091DB
+:104020001001681720F4861B8093100108951092E8
+:10403000100108950F931F938D3109F46AC008F0A1
+:104040003FC08E3009F484C0C0F4873009F46DC0DD
+:1040500068F4863009F0B5C08091CD01817F8E7FF4
+:104060008093CD0181E08093DD01ACC0883009F4FC
+:1040700057C08B3009F46AC0A4C0863109F466C009
+:1040800078F4803109F477C0813109F09AC00E9438
+:10409000211490910D0181E0892780930D0156C074
+:1040A000893109F453C08B3109F08BC08091CD0167
+:1040B00081FB222720F991E0922790FB81F951C0E2
+:1040C000853309F475C048F4873209F471C008F4E7
+:1040D0005EC0893209F46CC074C0833430F48A3312
+:1040E00008F053C0883391F16CC0833409F460C088
+:1040F000883409F066C00E9421140FEF13ED20E30D
+:10410000015010402040E1F700C000000E94591B00
+:104110001DC00E94A2210E94910E0E948A0716C013
+:104120000E940D1D0E941F1D11C09091CD01892F6D
+:104130008095817080FB90F929F09660986090934B
+:10414000CD0140C0997F977F9093CD0181E03AC027
+:104150008091CD0182FB222720F991E0922790FBEC
+:1041600082F98093CD01992389F38091CD018160FB
+:104170008093CD01EBCF8091CD0183FB222720F9E5
+:1041800091E0922790FB83F9ECCF895301C08D51C8
+:1041900041E050E060E070E08A019B0104C0000F44
+:1041A000111F221F331F8A95D2F7C901B80104C01D
+:1041B00061E070E080E090E00E94DD170E94211431
+:1041C000C5CF80E01F910F91089580E0089580E0B1
+:1041D0000895CF93C82F8091DD01813079F018F0D8
+:1041E0008230E9F187C0E0910E01F0910F018081EA
+:1041F000813169F0823209F07FC009C0E0910E017F
+:10420000F0910F018081813111F0823261F48C2FA5
+:104210000E94E520811104C08C2F0E941A201DC02D
+:1042200081E090E01AC08C2F0E94E720811114C019
+:10423000C43179F048F4CB3079F0C03109F060C076
+:1042400082E08093DD0108C0C93219F0C83321F043
+:1042500057C01092DD0154C081E0817053C0C93253
+:1042600089F118F5C43171F1A8F4C73009F046C0DE
+:104270008AE08093150194E19093140193E0909368
+:1042800013018093120188E08093110188E28093EA
+:10429000100134C0CE51C63088F5EC2FF0E0E65D59
+:1042A000FE4F80818093DC0129C0CE34E9F020F4F8
+:1042B000CB3421F56AE013C0C13579F0C235F1F491
+:1042C00061E00DC08091DC01882319F01092DC01BF
+:1042D00015C081E08093DD0115C061E006C08091CA
+:1042E000DC010E94541F0AC06AE08091DC010E9438
+:1042F000CA1F04C01092DD0180E004C081E002C04A
+:1043000080E0ABCFCF910895E1E8F0E08081886054
+:1043100080838081816080838FB7F89493E090934D
+:10432000890090ED909388008FBF0895EFE6F0E04C
+:104330008081826080830895EFE6F0E080818D7F48
+:1043400080830895EFE6F0E0908182E08927808302
+:1043500008951F920F920FB60F9211242F933F933F
+:104360004F935F936F937F938F939F93AF93BF937D
+:10437000EF93FF938091DE019091DF01019690937E
+:10438000DF018093DE01811103C082E00E948A0771
+:10439000E091DF01E695E695F0E0EA5CFA4FE49102
+:1043A0008091DE018E1303C080E00E948A07FF9196
+:1043B000EF91BF91AF919F918F917F916F915F919D
+:1043C0004F913F912F910F900FBE0F901F90189516
+:1043D00004D06894B1118DC0089570D088F09F57B3
+:1043E00090F0B92F9927B751A0F0D1F0660F771F41
+:1043F000881F991F1AF0BA95C9F712C0B13081F021
+:1044000077D0B1E0089574C0672F782F8827B85F00
+:1044100039F0B93FCCF3869577956795B395D9F781
+:104420003EF490958095709561957F4F8F4F9F4F8B
+:104430000895E89409C097FB3EF490958095709597
+:1044400061957F4F8F4F9F4F9923A9F0F92F96E9E0
+:10445000BB279395F695879577956795B795F11155
+:10446000F8CFFAF4BB0F11F460FF1BC06F5F7F4FF2
+:104470008F4F9F4F16C0882311F096E911C0772304
+:1044800021F09EE8872F762F05C0662371F096E80D
+:10449000862F70E060E02AF09A95660F771F881FDC
+:1044A000DAF7880F9695879597F9089557FD9058F4
+:1044B000440F551F59F05F3F71F04795880F97FBE8
+:1044C000991F61F09F3F79F08795089512161306A2
+:1044D0001406551FF2CF4695F1DF08C016161706D1
+:1044E0001806991FF1CF8695710561050894089506
+:1044F000E894BB2766277727CB0197F908950BD05F
+:1045000078C069D028F06ED018F0952309F05AC011
+:104510005FC01124EECFCADFA0F3959FD1F3950FB2
+:1045200050E0551F629FF001729FBB27F00DB11D37
+:10453000639FAA27F00DB11DAA1F649F6627B00DC7
+:10454000A11D661F829F2227B00DA11D621F739FB0
+:10455000B00DA11D621F839FA00D611D221F749FBE
+:104560003327A00D611D231F849F600D211D822F05
+:10457000762F6A2F11249F5750408AF0E1F088234C
+:104580004AF0EE0FFF1FBB1F661F771F881F915059
+:104590005040A9F79E3F510570F014C0AACF5F3F6D
+:1045A000ECF3983EDCF3869577956795B795F7958C
+:1045B000E7959F5FC1F7FE2B880F911D9695879514
+:1045C00097F9089597F99F6780E870E060E0089593
+:1045D0009FEF80EC089500240A941616170618061B
+:1045E0000906089500240A941216130614060506F7
+:1045F0000895092E0394000C11F4882352F0BB0F88
+:1046000040F4BF2B11F460FF04C06F5F7F4F8F4FEA
+:104610009F4F089597FB072E16F4009407D077FD5F
+:1046200009D00E94242307FC05D03EF49095819583
+:104630009F4F0895709561957F4F0895EE0FFF1F6E
+:104640000590F491E02D0994AA1BBB1B51E107C012
+:10465000AA1FBB1FA617B70710F0A61BB70B881F12
+:10466000991F5A95A9F780959095BC01CD010895A1
+:10467000F999FECF92BD81BDF89A992780B508952A
+:10468000A8E1B0E042E050E00C945B23262FF999BA
+:10469000FECF1FBA92BD81BD20BD0FB6F894FA9A25
+:1046A000F99A0FBE019608950E944623272F0C9475
+:1046B0004723DC01CB01FC01F999FECF06C0F2BD16
+:1046C000E1BDF89A319600B40D9241505040B8F7D0
+:0646D0000895F894FFCFED
+:1046D60020028C071A08F707C3078F070101BA01E2
+:1046E60028080A03140A3F4D3639F704AA0474044D
+:1046F6003B04CE03E7030004190401020304050684
+:044706000708090097
+:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.png b/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.png
new file mode 100644
index 0000000000..cdc535f79e
--- /dev/null
+++ b/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx-hjkl/romanzolotarev-norman-plover-osx-hjkl.png
Binary files differ
diff --git a/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/readme.md b/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/readme.md
index 9eb4c24db3..804c52a767 100644
--- a/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/readme.md
+++ b/keyboard/ergodox_ez/keymaps/romanzolotarev-norman-plover-osx/readme.md
@@ -5,7 +5,10 @@ There are four layers:
- **BASE** is [Norman layout](https://normanlayout.info/).
- **SYMB** for numbers and symbols.
- **PLVR** is optimized for [Plover](http://www.openstenoproject.org).
-- **ARRW** for navigation.
+- **ARRW** for navigation (same fingers for arrows as IJKL on QWERTY).
+
+Looking for HJKL arrows? [Here we
+go](../romanzolotarev-norman-plover-osx-hjkl/).
[![keyboard-layout](romanzolotarev-norman-plover-osx.png)](http://www.keyboard-layout-editor.com/#/gists/8ebcb701ecb763944417)
@@ -28,11 +31,11 @@ There are four layers:
- Tap `F2` to copy screenshot to the clipboard.
- Hold `SHIFT` and tap `F2` to save screenshot as a file.
- Tap `F3`, `F4`, `F5`, `F6` to resize a window via [Divvy](http://mizage.com/divvy/).
-- Tap `F14`, `F15` to adjust display brightness.
-
-**IMPORTANT**: If you have another keyboard connected via Bluetooth, then `F14` and `F15` will not work.
-Turn off that Bluetooth keyboard. Re-plug you ErgoDox. Enjoy!
+- Tap `F14`, `F15` to adjust display brightness.
+**IMPORTANT**: If you have another keyboard connected via Bluetooth, then
+`F14` and `F15` will not work. Turn off that Bluetooth keyboard. Re-plug
+you ErgoDox. Enjoy!
## CTRL/ESC