summaryrefslogtreecommitdiff
path: root/keyboard
diff options
context:
space:
mode:
authorErez Zukerman <bulk@ezuk.org>2016-05-04 22:31:00 -0400
committerErez Zukerman <bulk@ezuk.org>2016-05-04 22:31:00 -0400
commitdbb1c2f28142a7cd557945cb6bc3cf872f8b137d (patch)
treecf7c1de746261dc95e4bd7a988d9698acfac0d9e /keyboard
parent31a697bc054c97c5ef168c5fd4633bb247cc5d7b (diff)
parent4b74eca2a5cee027965745ccf5f18c2b9f18115b (diff)
Merge pull request #305 from nrrkeene/master
Custom handling for shift keys, improved media layer
Diffstat (limited to 'keyboard')
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/keymap.c641
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.pngbin121014 -> 123651 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.txt14
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.pngbin103401 -> 103944 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt6
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary.hex2386
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/readme.md6
7 files changed, 1505 insertions, 1548 deletions
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/keymap.c b/keyboard/ergodox_ez/keymaps/ordinary/keymap.c
index efd67addd5..871bda672c 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/keymap.c
+++ b/keyboard/ergodox_ez/keymaps/ordinary/keymap.c
@@ -4,33 +4,42 @@
#include "action_layer.h"
#include "action_util.h"
-#define BASE 0 // default layer
-#define LOCK 1 // shift-lock layer
-#define SYMB_SH 2 // symbols shift layer
-#define SYMB_LK 3 // symbols lock layer
-#define SYMB_UN 4 // symbols unlock layer
-#define MDIA_SH 5 // media shift layer
-#define MDIA_LK 6 // media lock layer
-#define MDIA_UN 7 // media unlock layer
-#define UNLOCK 8 // clear to base layer
+#define BASE 0 // default layer
+#define SYMB 1 // symbols layer
+#define MDIA 2 // media layer
+#define LOCK 3 // shift-lock layer
+
+#define LSymb 0 // left symbol-shift key
+#define LMdia 1 // left media-shift key
+#define LLock 2 // left shift-lock key
+#define RSymb 3 // right symbol-shift key
+#define RMdia 4 // right media-shift key
+#define RLock 5 // right shift-lock key
+
+#define MUL 6 // mouse up left
+#define MUR 7 // mouse up right
+#define MDL 8 // mouse down left
+#define MDR 9 // mouse down right
/*
- * The Ordinary Layout for the Ergodox EZ keyboard, v3.1
- * modifications from default by Nicholas Keene ergodoxez@nicholaskeene.com
+ * The Ordinary Layout for the Ergodox EZ keyboard, v3.14
+ *
+ * Modifications from default by Nicholas Keene ergodoxez@nicholaskeene.com
+ *
* Details: readme.md
* https://github.com/nrrkeene/qmk_firmware/tree/master/keyboard/ergodox_ez/keymaps/ordinary
*/
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
-/* Keymap 0: Base Layer
+/******* Base Layer ********************************************************************************************************
*
* ,-----------------------------------------------------. ,-----------------------------------------------------.
- * | LOCK `~ | 1 | 2 | 3 | 4 | 5 | ESC | | - | 6 | 7 | 8 | 9 | 0 | = LOCK |
+ * | Lock `~ | 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 |
+ * | Media Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \| Media |
* |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
- * | Symbol | A | S | D | F | G |------| |------| H | J | K | L | ; | ' Symbol |
+ * | Symbol | A | S | D | F | G |------| |------| H | J | K | L | ; | '" Symbol |
* |-----------+------+------+------+------+------|Shift | | Tab |------+------+------+------+------+-----------|
* | LShift | Z | X | C | V | B | -Tab | | | N | M | , | . | / | RShift |
* `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
@@ -46,128 +55,38 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
*/
[BASE] = KEYMAP(
// left hand
- LT(LOCK, KC_GRV) ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_ESC
-,LT(MDIA_SH, KC_TAB),KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_LBRC
-,MO(SYMB_SH) ,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 ,LT(LOCK, KC_EQL)
- ,KC_RBRC ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,LT(MDIA_SH, KC_BSLS)
- ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,LT(SYMB_SH, 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
+ F(LLock) ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 ,KC_ESC
+,F(LMdia) ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_LBRC
+,M(LSymb) ,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 ,KC_MEH ,KC_HYPR,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 ,F(RLock)
+ ,KC_RBRC ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,F(RMdia)
+ ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,F(RSymb)
+ ,KC_TAB ,KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH ,KC_RSFT
+ ,KC_RGUI,KC_RALT,KC_HYPR ,KC_MEH ,KC_RCTL
+ ,KC_LEFT ,KC_RGHT
+ ,KC_UP
+ ,KC_DOWN ,KC_ENT ,KC_SPC
),
-/* Keymap 1: Layer Lock Keys
- *
- * ,-------------------------------------------------------. ,-------------------------------------------------------.
- * | | Esc | | | | | | | | | | | | Bspc | |
- * |-------------+------+------+------+------+-------------| |------+------+------+------+------+------+-------------|
- * | Media LOCK | | | | | | | | | | | | | | Media LOCK |
- * |-------------+------+------+------+------+------| | | |------+------+------+------+------+-------------|
- * | Symbol LOCK | | | | | |------| |------| | | | | | Symbol LOCK |
- * |-------------+------+------+------+------+------| | | |------+------+------+------+------+-------------|
- * | Caps LOCK | | | | | | | | | | | | | | Caps LOCK |
- * `-------------+------+------+------+------+-------------' `-------------+------+------+------+------+-------------'
- * | | | | | | | | | | | |
- * `------------------------------------' `------------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[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_BSPC ,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 Shift Layer
+/******* Symbols Layer *****************************************************************************************************
*
* ,-----------------------------------------------------. ,-----------------------------------------------------.
- * | LOCK | F1 | F2 | F3 | F4 | F5 | | | - | F6 | F7 | F8 | F9 | F10 | LOCK |
+ * | | F1 | F2 | F3 | F4 | F5 | Esc | | - | F6 | F7 | F8 | F9 | F10 | |
* |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
- * | Media | ! | @ | { | } | & | < | | > | | | 7 | 8 | 9 | / | Media |
+ * | | ! | @ | { | } | & | < | | > | | | 7 | 8 | 9 | / | |
* |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
- * | Symbol | # | $ | ( | ) | ` |------| |------| / | 4 | 5 | 6 | * | Symbol |
+ * | | # | $ | ( | ) | ` |------| |------| / | 4 | 5 | 6 | * | |
* |-----------+------+------+------+------+------| Tab | | Shift|------+------+------+------+------+-----------|
- * | LShift | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | RShift |
- * `-----------+------+------+------+------+-------------' `------------+------+------+------+------+------------'
- * | | | | | | | 0 | . | = | + | Entr |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Left | Right| | Home | End |
- * ,------|------|------| |------+------+------.
- * | | | Up | | PgUp | | |
- * |Space |Enter |------| |------|BackSp| Del |
- * | | | Down | | PgDn | | |
- * `--------------------' `--------------------'
- */
-[SYMB_SH] = KEYMAP(
-// left hand
- KC_FN2 ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_TRNS
-,MO(MDIA_SH) ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_AMPR ,LSFT(KC_COMM)
-,MO(SYMB_SH) ,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_MINS ,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_SH)
- ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,MO(SYMB_SH)
- ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_RSFT
- ,GUI_T(KC_0),ALT_T(KC_DOT),ALL_T(KC_EQL),MEH_T(KC_PLUS),CTL_T(KC_ENT)
- ,KC_HOME ,KC_END
- ,KC_PGUP
- ,KC_PGDN ,KC_BSPC ,KC_DEL
-),
-
-/* Keymap 3: Symbol Lock Layer
- *
- * ,-----------------------------------------------------. ,-----------------------------------------------------.
- * | LOCK | F1 | F2 | F3 | F4 | F5 | | | - | F6 | F7 | F8 | F9 | F10 | LOCK |
- * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
- * | Media | ! | @ | { | } | & | < | | > | | | 7 | 8 | 9 | / | Media |
- * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
- * | Symbol | # | $ | ( | ) | ` |------| |------| / | 4 | 5 | 6 | * | Symbol |
- * |-----------+------+------+------+------+------| Tab | | Shift|------+------+------+------+------+-----------|
- * | LShift | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | RShift |
- * `-----------+------+------+------+------+-------------' `------------+------+------+------+------+------------'
- * | | | | | | | 0 | . | = | + | Entr |
- * `----------------------------------' `----------------------------------'
+ * | | % | ^ | [ | ] | ~ | | | -Tab| \ | 1 | 2 | 3 | - | |
+ * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
+ * | LCtrl | Meh |Hyper | LAlt | LGui | |RGui/0|RAlt/.|Hypr/=|Meh/+ |RCtrl/Ent|
+ * `-----------------------------------' `-------------------------------------'
* ,-------------. ,-------------.
* | Left | Right| | Home | End |
* ,------|------|------| |------+------+------.
@@ -176,159 +95,75 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | | Down | | PgDn | | |
* `--------------------' `--------------------'
*/
-[SYMB_LK] = KEYMAP(
-// left hand
- MO(SYMB_UN) ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_TRNS
-,MO(MDIA_SH) ,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_MINS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,MO(SYMB_UN)
- ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,MO(MDIA_SH)
- ,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
- ,GUI_T(KC_0),ALT_T(KC_DOT),ALL_T(KC_EQL),MEH_T(KC_PLUS),CTL_T(KC_ENT)
- ,KC_HOME ,KC_END
- ,KC_PGUP
- ,KC_PGDN ,KC_BSPC ,KC_DEL
- ),
-
-/* Keymap 4: Symbol Unlock Layer
- *
- * ,------------------------------------------------------. ,------------------------------------------------------.
- * | | Esc | | | | | | | | | | | | Bspc | |
- * |------------+------+------+------+------+-------------| |------+------+------+------+------+------+------------|
- * | Media LOCK | | | | | | | | | | | | | | Media LOCK |
- * |------------+------+------+------+------+------| | | |------+------+------+------+------+------------|
- * | UNLOCK | | | | | |------| |------| | | | | | UNLOCK |
- * |------------+------+------+------+------+------| | | |------+------+------+------+------+------------|
- * | Caps LOCK | | | | | | | | | | | | | | Caps LOCK |
- * `------------+------+------+------+------+-------------' `-------------+------+------+------+------+------------'
- * | | | | | | | | | | | |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | | | | | |
- * ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
- * `--------------------' `--------------------'
- */
-[SYMB_UN] = KEYMAP(
+[SYMB] = KEYMAP(
// left hand
- KC_TRNS ,KC_ESC ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS
-,TG(MDIA_LK) ,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
+ KC_TRNS ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_ESC
+,KC_TRNS ,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_LCTL ,KC_MEH ,KC_HYPR,KC_LALT ,KC_LGUI
+ ,KC_LEFT ,KC_RGHT
+ ,KC_UP
+ ,KC_SPC ,KC_ENT ,KC_DOWN
// right hand
- ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_BSPC ,KC_TRNS
- ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,TG(MDIA_LK)
- ,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
+ ,KC_MINS ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_TRNS
+ ,LSFT(KC_DOT),KC_PIPE ,KC_7 ,KC_8 ,KC_9 ,KC_SLSH ,KC_TRNS
+ ,KC_SLSH ,KC_4 ,KC_5 ,KC_6 ,KC_ASTR ,KC_TRNS
+ ,LSFT(KC_TAB),KC_BSLS ,KC_1 ,KC_2 ,KC_3 ,KC_MINS ,KC_TRNS
+ ,GUI_T(KC_0),ALT_T(KC_DOT),ALL_T(KC_EQL),MEH_T(KC_PLUS),CTL_T(KC_ENT)
+ ,KC_HOME ,KC_END
+ ,KC_PGUP
+ ,KC_PGDN ,KC_BSPC ,KC_DEL
),
-/* Keymap 5: Media Shift Layer
+/******* Media Layer *******************************************************************************************************
*
- * ,-----------------------------------------------------. ,-----------------------------------------------------.
- * | LOCK | F11 | F12 | F13 | F14 | F15 | | | | F16 | F17 | F18 | F19 | F20 | LOCK |
- * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
- * | Media |ShutDn|LClick| MsUp |RClick|Vol Up|ScrlUp| |ScrlUp|PrtScr| Home | Up | PgUp | Mail | Media |
- * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
- * | Symbol | Sleep|MsLeft|MsDown|MsRght|Vol Dn|------| |------|NumLok| Left | Down | Right|MyComp| Symbol |
- * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
- * | LShift | | |MsDown| | Mute |ScrlDn| |ScrlDn| | End | Down | PgDn | | RShift |
- * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
- * | LCtrl| Meh |Hyper | LAlt | LGui | |Insert|Delete| Hyper| LAlt | LGui |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Stop |Refrsh| | Prev | Next |
- * ,------|------|------| |------+------+------.
- * |Brwser|Brwser|Search| |VolUp | | |
- * |Back | Fwd |------| |------| Stop | Play-|
- * | | | Home | |VolDn | | Pause|
- * `--------------------' `--------------------'
+ * ,---------------------------------------------------------------. ,---------------------------------------------------------------.
+ * | | F11 | F12 | F13 | F14 | F15 | Esc | | | F16 | F17 | F18 | F19 | F20 | |
+ * |------+---------+---------+---------+---------+----------------| |------+---------+---------+---------+---------+---------+------|
+ * | |Shut Down|MouseUpLf|Mouse Up |MouseUpRg|Volume Up|Scroll| |Scroll|PrintScrn| Home | Up | PgUp | Mail | |
+ * |------+---------+---------+---------+---------+---------| Up | | Up |---------+---------+---------+---------+---------+------|
+ * | | Sleep |MouseLeft|MouseDown|MouseRght|Volume Dn|------| |------| Num Lock| Left | Down | Right | MyComp | |
+ * |------+---------+---------+---------+---------+---------|Scroll| |Scroll|---------+---------+---------+---------+---------+------|
+ * | | |MouseDnLf|MouseDown|MouseDnRg| Mute | Down | | Down | | End | Down | PgDn | | |
+ * `------+---------+---------+---------+---------+----------------' `----------------+---------+---------+---------+---------+------'
+ * |LCtrl| Meh | MClick | LClick | R Click| |Cmd/Insrt|Optn/Del | Hyper | Meh |RCtrl|
+ * `---------------------------------------------' `---------------------------------------------'
+ * ,-------------. ,-------------.
+ * | Stop |Refrsh| | Prev | Next |
+ * ,------|------|------| |------+------+------.
+ * |Brwser|Brwser|Search| |VolUp | | |
+ * |Back | Fwd |------| |------| Stop | Play-|
+ * | | | Home | |VolDn | | Pause|
+ * `--------------------' `--------------------'
*/
-[MDIA_SH] = KEYMAP(
+[MDIA] = KEYMAP(
// left hand
- KC_FN3 ,KC_F11 ,KC_F12 ,KC_F13 ,KC_F14 ,KC_F15 ,KC_NO
-,MO(MDIA_SH) ,KC_POWER ,KC_BTN1 ,KC_MS_U ,KC_BTN2 ,KC_VOLU ,KC_WH_U
-,MO(SYMB_SH) ,KC_SLEP ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_VOLD
-,KC_LSFT ,KC_NO ,KC_NO ,KC_MS_D ,KC_NO ,KC_MUTE ,KC_WH_D
-,KC_LCTL ,MEH_T(KC_NO),ALL_T(KC_NO),KC_LALT,KC_LGUI
- ,KC_WSTP ,KC_WREF
- ,KC_WSCH
- ,KC_WBAK ,KC_NO ,KC_WHOM
+ KC_TRNS ,KC_F11 ,KC_F12 ,KC_F13 ,KC_F14 ,KC_F15 ,KC_ESC
+,KC_TRNS ,KC_POWER ,M(MUL) ,KC_MS_U ,M(MUR) ,KC_VOLU ,KC_WH_U
+,KC_TRNS ,KC_SLEP ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_VOLD
+,KC_TRNS ,KC_NO ,M(MDL) ,KC_MS_D ,M(MDR) ,KC_MUTE ,KC_WH_D
+,KC_LCTL ,KC_MEH ,KC_BTN3 ,KC_BTN1 ,KC_BTN2
+ ,KC_WSTP ,KC_WREF
+ ,KC_WSCH
+ ,KC_WBAK ,KC_NO ,KC_WHOM
// right hand
- ,KC_NO ,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_SH)
- ,KC_NLCK ,KC_LEFT,KC_DOWN ,KC_RIGHT,KC_MYCM ,MO(SYMB_SH)
- ,KC_WH_D ,KC_NO ,KC_END ,KC_DOWN ,KC_PGDN ,KC_NO ,KC_RSFT
- ,GUI_T(KC_INS),ALT_T(KC_DEL),ALL_T(KC_NO),MEH_T(KC_NO),KC_RCTL
+ ,KC_NO ,KC_F16 ,KC_F17 ,KC_F18 ,KC_F19 ,KC_F20 ,KC_TRNS
+ ,KC_WH_U ,KC_PSCR ,KC_HOME ,KC_UP ,KC_PGUP ,KC_MAIL ,KC_TRNS
+ ,KC_NLCK ,KC_LEFT ,KC_DOWN ,KC_RIGHT,KC_MYCM ,KC_TRNS
+ ,KC_WH_D ,KC_NO ,KC_END ,KC_DOWN ,KC_PGDN ,KC_NO ,KC_TRNS
+ ,GUI_T(KC_INS),ALT_T(KC_DEL),KC_HYPR ,KC_MEH ,KC_RCTL
,KC_MPRV ,KC_MNXT
,KC_VOLU
,KC_VOLD ,KC_MSTP ,KC_MPLY
),
-/* Keymap 6: Media Lock Layer
+/******* Lock Layer ********************************************************************************************************
*
* ,-----------------------------------------------------. ,-----------------------------------------------------.
- * | LOCK | F11 | F12 | F13 | F14 | F15 | | | | F16 | F17 | F18 | F19 | F20 | LOCK |
+ * | | Esc | | | | | | | | | | | | Bspc | |
* |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
- * | Media |ShutDn|LClick| MsUp |RClick|Vol Up|ScrlUp| |ScrlUp|PrtScr| Home | Up | PgUp | Mail | Media |
- * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
- * | | Sleep|MsLeft|MsDown|MsRght|Vol Dn|------| |------|NumLok| Left | Down | Right|MyComp| |
- * |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
- * | LShift | | |MsDown| | Mute |ScrlDn| |ScrlDn| | End | Down | PgDn | | RShift |
- * `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
- * | LCtrl| Meh |Hyper | LAlt | LGui | |Insert|Delete| Hyper| LAlt | LGui |
- * `----------------------------------' `----------------------------------'
- * ,-------------. ,-------------.
- * | Stop |Refrsh| | Prev | Next |
- * ,------|------|------| |------+------+------.
- * |Brwser|Brwser|Search| |VolUp | | |
- * |Back | Fwd |------| |------| Stop | Play-|
- * | | | Home | |VolDn | | Pause|
- * `--------------------' `--------------------'
- */
-[MDIA_LK] = KEYMAP(
-// left hand
- MO(MDIA_UN),KC_F11 ,KC_F12 ,KC_F13 ,KC_F14 ,KC_F15 ,KC_NO
-,MO(UNLOCK) ,KC_POWER ,KC_BTN1 ,KC_MS_U ,KC_BTN2 ,KC_VOLU ,KC_WH_U
-,KC_NO ,KC_SLEP ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_VOLD
-,KC_LSFT ,KC_NO ,KC_NO ,KC_MS_D ,KC_NO ,KC_MUTE ,KC_WH_D
-,KC_LCTL ,MEH_T(KC_NO),ALL_T(KC_NO),KC_LALT,KC_LGUI
- ,KC_WSTP ,KC_WREF
- ,KC_WSCH
- ,KC_WBAK ,KC_NO ,KC_WHOM
- // right hand
- ,KC_NO ,KC_F16 ,KC_F17 ,KC_F18 ,KC_F19 ,KC_F20 ,MO(MDIA_UN)
- ,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_NO ,KC_END ,KC_DOWN ,KC_PGDN ,KC_NO ,KC_RSFT
- ,GUI_T(KC_INS),ALT_T(KC_DEL),ALL_T(KC_NO),MEH_T(KC_NO),KC_RCTL
- ,KC_MPRV ,KC_MNXT
- ,KC_VOLU
- ,KC_VOLD ,KC_MSTP ,KC_MPLY
- ),
-
-/* Keymap 7: Media Unlock Layer
- *
- * ,-----------------------------------------------------. ,-----------------------------------------------------.
- * | | Esc | | | | | | | | | | | | Bspc | |
- * |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
- * | UNLOCK | | | | | | | | | | | | | | UNLOCK |
+ * | | | | | | | | | | | | | | | |
* |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
* | | | | | | |------| |------| | | | | | |
* |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
@@ -344,94 +179,215 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | | | | | | | |
* `--------------------' `--------------------'
*/
-[MDIA_UN] = KEYMAP(
+[LOCK] = 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_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_BSPC ,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
+ // right hand
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_BSPC ,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_CAPS
+ ,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
+ ,KC_TRNS ,KC_TRNS
+ ,KC_TRNS
+ ,KC_TRNS ,KC_TRNS ,KC_TRNS
)
};
const uint16_t PROGMEM fn_actions[] = {
- [1] = ACTION_LAYER_CLEAR(ON_PRESS) // FN1 - clear to base layer
- ,[2] = ACTION_LAYER_INVERT(SYMB_LK, ON_PRESS) // FN2 - toggle to Symbols on press
- ,[3] = ACTION_LAYER_INVERT(MDIA_LK, ON_PRESS) // FN3 - toggle to Media on press
+ // the six faux shift keys are implemented as macro taps
+ [LSymb] = ACTION_MACRO_TAP(LSymb)
+ ,[LMdia] = ACTION_MACRO_TAP(LMdia)
+ ,[LLock] = ACTION_MACRO_TAP(LLock)
+ ,[RSymb] = ACTION_MACRO_TAP(RSymb)
+ ,[RMdia] = ACTION_MACRO_TAP(RMdia)
+ ,[RLock] = ACTION_MACRO_TAP(RLock)
};
+uint16_t symb_shift = 0; // there are two shift keys for each layer, and two lock
+uint16_t mdia_shift = 0; // keys; we increment a counter for each key pressed and
+uint16_t shift_lock = 0; // decrement when released.
+
+bool symb_lock = false; // when shift-lock is used in conjunction with a shift
+bool mdia_lock = false; // key the lock flag is toggled
+
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:
+ switch(id) {
+ // shift and lock between layers
+
+ case LSymb:
+ if (record->event.pressed) {
+ symb_shift++;
+ if(shift_lock) symb_lock = !symb_lock;
+ layer_on(SYMB);
+ } else {
+ symb_shift--;
+ if((!symb_shift) && (!symb_lock)) layer_off(SYMB);
+ }
+ break;
+
+ case LMdia:
if (record->event.pressed) {
- register_code(KC_RSFT);
+ if (record->tap.count && !shift_lock) {
+ register_code(KC_TAB);
+ } else {
+ mdia_shift++;
+ if(shift_lock) mdia_lock = !mdia_lock;
+ layer_on(MDIA);
+ }
} else {
- unregister_code(KC_RSFT);
+ if(record->tap.count && !shift_lock) {
+ unregister_code(KC_TAB);
+ } else {
+ mdia_shift--;
+ if((!mdia_shift) && (!mdia_lock)) layer_off(MDIA);
+ }
+ }
+ break;
+
+ case LLock:
+ if (record->event.pressed) {
+ shift_lock++;
+ if(symb_shift) symb_lock = !symb_lock;
+ if(mdia_shift) mdia_lock = !mdia_lock;
+ if(!record->tap.count && (keyboard_report->mods & (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)))) {
+ register_code(KC_CAPS);
+ unregister_code(KC_CAPS);
+ }
+ layer_on(LOCK);
+ } else {
+ if(record->tap.count && !record->tap.interrupted && !symb_shift && !mdia_shift) {
+ register_code(KC_GRV);
+ unregister_code(KC_GRV);
+ }
+ shift_lock--;
+ if(!shift_lock) layer_off(LOCK);
}
break;
- }
+
+ case RSymb:
+ if (record->event.pressed) {
+ if (record->tap.count && !shift_lock) {
+ register_code(KC_QUOT);
+ } else {
+ symb_shift++;
+ if(shift_lock) symb_lock = !symb_lock;
+ layer_on(SYMB);
+ }
+ } else {
+ if(record->tap.count && !shift_lock) {
+ unregister_code(KC_QUOT);
+ } else {
+ symb_shift--;
+ if((!symb_shift) && (!symb_lock)) layer_off(SYMB);
+ }
+ }
+ break;
+
+ case RMdia:
+ if (record->event.pressed) {
+ if (record->tap.count && !shift_lock) {
+ register_code(KC_BSLS);
+ } else {
+ mdia_shift++;
+ if(shift_lock) mdia_lock = !mdia_lock;
+ layer_on(MDIA);
+ }
+ } else {
+ if(record->tap.count && !shift_lock) {
+ unregister_code(KC_BSLS);
+ } else {
+ mdia_shift--;
+ if((!mdia_shift) && (!mdia_lock)) layer_off(MDIA);
+ }
+ }
+ break;
+
+ case RLock:
+ if (record->event.pressed) {
+ shift_lock++;
+ if(symb_shift) symb_lock = !symb_lock;
+ if(mdia_shift) mdia_lock = !mdia_lock;
+ if(!record->tap.count && (keyboard_report->mods & (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)))) {
+ register_code(KC_CAPS);
+ unregister_code(KC_CAPS);
+ }
+ layer_on(LOCK);
+ } else {
+ if (record->tap.count && !record->tap.interrupted && !symb_shift && !mdia_shift) {
+ register_code(KC_EQL);
+ unregister_code(KC_EQL);
+ }
+ shift_lock--;
+ if(!shift_lock) layer_off(LOCK);
+ }
+ break;
+
+ // mouse diagonals
+
+ case MUL: // mouse up left
+ if (record->event.pressed) {
+ mousekey_on(KC_MS_UP);
+ mousekey_on(KC_MS_LEFT);
+ mousekey_send();
+ } else {
+ mousekey_off(KC_MS_UP);
+ mousekey_off(KC_MS_LEFT);
+ mousekey_send();
+ }
+ break;
+
+ case MUR: // mouse up right
+ if (record->event.pressed) {
+ mousekey_on(KC_MS_UP);
+ mousekey_on(KC_MS_RIGHT);
+ mousekey_send();
+ } else {
+ mousekey_off(KC_MS_UP);
+ mousekey_off(KC_MS_RIGHT);
+ mousekey_send();
+ }
+ break;
+
+ case MDL: // mouse down left
+ if (record->event.pressed) {
+ mousekey_on(KC_MS_DOWN);
+ mousekey_on(KC_MS_LEFT);
+ mousekey_send();
+ } else {
+ mousekey_off(KC_MS_DOWN);
+ mousekey_off(KC_MS_LEFT);
+ mousekey_send();
+ }
+ break;
+
+ case MDR: // mouse down right
+ if (record->event.pressed) {
+ mousekey_on(KC_MS_DOWN);
+ mousekey_on(KC_MS_RIGHT);
+ mousekey_send();
+ } else {
+ mousekey_off(KC_MS_DOWN);
+ mousekey_off(KC_MS_RIGHT);
+ mousekey_send();
+ }
+ break;
+
+ default:
+ // none
+ break;
+ }
+
return MACRO_NONE;
};
@@ -442,8 +398,6 @@ void matrix_init_user(void) {
// Runs constantly in the background, in a loop.
void matrix_scan_user(void) {
- uint8_t layer = biton32(layer_state);
-
// shift or caps lock turns on red light
if((keyboard_report->mods & (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT))) || (host_keyboard_leds() & (1<<USB_LED_CAPS_LOCK))) {
ergodox_right_led_1_on();
@@ -451,22 +405,15 @@ void matrix_scan_user(void) {
ergodox_right_led_1_off();
}
- // do not change lights while locking and unlocking
- if(layer == LOCK || layer == SYMB_UN || layer == MDIA_UN || layer == UNLOCK) {
- return;
- }
-
- //ergodox_board_led_off();
-
- // symbol turns on green light
- if(layer == SYMB_SH || layer == SYMB_LK) {
+ // Symbol layer turns on green light
+ if(layer_state & (1UL<<SYMB)) {
ergodox_right_led_2_on();
} else {
ergodox_right_led_2_off();
}
- // media turns on blue light
- if(layer == MDIA_SH || layer == MDIA_LK) {
+ // Media layer turns on blue light
+ if(layer_state & (1UL<<MDIA)) {
ergodox_right_led_3_on();
} else {
ergodox_right_led_3_off();
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.png b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.png
index 0ae162431d..f3fed3cdbe 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 cc4c877ebd..f1ecd5fdce 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.txt
+++ b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.txt
@@ -3,20 +3,20 @@
[{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},"Left\n\n\n\n\n\nClick",{x:1},"Right\n\n\n\n\n\nClick",{x:8.5,c:"#ffb063"},"Home",{x:1},"Page\n\n\n\n\n\nUp"],
+[{y:-0.875,x:2.5},"Mouse\n\n\n\n\n\nUpLeft",{x:1},"Mouse\n\n\n\n\n\nUpRgt",{x:8.5,c:"#ffb063"},"Home",{x:1},"Page\n\n\n\n\n\nUp"],
[{y:-0.875,x:5.5,c:"#e6e067"},"Vol\n\n\n\n\n\nUp",{c:"#ffb063",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:"#e6e067"},"Vol\n\n\n\n\n\nDown",{x:6.5},"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.875,c:"#2277ff",w:1.5},"Symbols\n\n\n\n\n\nShift",{c:"#e6e067"},"Sleep",{x:14.5},"My\n\n\n\n\n\nComp",{c:"#2277ff",w:1.5},"\n\nSymbols\n\n\n\n\nShift"],
+[{y:-0.625,x:6.5,c:"#ffb063",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},"",{x:8.5,c:"#ffb063",a:4},"End",{x:1},"Page\n\n\n\n\n\nDown"],
+[{y:-0.875,x:2.5},"Mouse\n\n\n\n\n\nDnLeft",{x:1},"Mouse\n\n\n\n\n\nDnRgt",{x:8.5,c:"#ffb063"},"End",{x:1},"Page\n\n\n\n\n\nDown"],
[{y:-0.875,x:5.5,c:"#e6e067"},"Mute",{x:6.5,c:"#cccccc",a:7},""],
-[{y:-0.875,c:"#2277ff",a:4,f2:1,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:"#77aaff"},"Option\n\n\nLAlt",{x:10.5,c:"#ffb063"},"Delete\n\n\nOption"],
-[{y:-0.875,x:2.5,c:"#77aaff"},"Hyper",{x:1},"Cmd\n\n\nSuper",{x:8.5,c:"#ffb063"},"Insert\n\n\nCmd",{x:1,c:"#77aaff"},"Hyper"],
+[{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"},"Middle\n\n\n\n\n\nClick",{x:10.5,c:"#ffb063"},"Delete\n\n\nOption"],
+[{y:-0.875,x:2.5,c:"#ff8500"},"Left\n\n\n\n\n\nClick",{x:1},"Right\n\n\n\n\n\nClick",{x:8.5,c:"#ffb063"},"Insert\n\n\nCmd",{x:1,c:"#77aaff"},"Hyper"],
[{y:-0.75,x:0.5},"Ctrl\n\n\nLCtrl","Meh",{x:14.5},"Meh","Crtl\n\n\nRCtrl"],
[{r:30,rx:6.5,ry:4.25,y:-1,x:1,c:"#ccbb00"},"Stop\n\n\nBrowser","Reload\n\n\nBrowser"],
[{h:2},"< Web\n\n\nBrowser",{h:2},"Web >\n\n\nBrowser","Search\n\n\nBrowser"],
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.png b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.png
index b3101e5c04..8a0cfd63f8 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 35efdba7d6..93f632e955 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt
+++ b/keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt
@@ -14,7 +14,7 @@
[{y:-0.75,x:3.5,c:"#bbddbb"},"[",{x:10.5,c:"#89b087"},"2"],
[{y:-0.875,x:2.5,c:"#bbddbb"},"^",{x:1},"]",{x:8.5,c:"#89b087"},"1",{x:1},"3"],
[{y:-0.875,x:5.5,c:"#bbddbb"},"~",{x:6.5},"\\"],
-[{y:-0.875,c:"#2277ff",fa:[0,1,0,1,0,0,1],w:1.5},"Capitals\nShift\n\n\n\n\nShift",{c:"#bbddbb"},"%",{x:14.5,c:"#89b087"},"-",{c:"#2277ff",w:1.5},"\n\nCapitals\nShift\n\n\n\nShift"],
+[{y:-0.875,c:"#2277ff",f2:1,w:1.5},"Capitals\nShift\n\n\n\n\nShift",{c:"#bbddbb"},"%",{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:"#77aaff"},"Option\n\n\nLAlt",{x:10.5,c:"#89b087"},".\n\n\nOption"],
[{y:-0.875,x:2.5,c:"#77aaff"},"Hyper",{x:1},"Cmd\n\n\nSuper",{x:8.5,c:"#89b087"},"0\n\n\nCmd",{x:1},"=\n\n\nHyper"],
[{y:-0.75,x:0.5,c:"#77aaff"},"Ctrl\n\n\nLCtrl","Meh",{x:14.5,c:"#89b087"},"+\n\n\nMeh","Enter\n\n\nCtrl"],
@@ -22,6 +22,6 @@
[{h:2},"Space",{h:2},"Enter","Up"],
[{x:2},"Down"],
[{r:-30,rx:13,y:-1,x:-3},"Home","End"],
-[{x:-3,f:3},"Page\n\n\n\n\n\nUp",{h:2},"< Del\n\n\nBackspace",{h:2},"Del >\n\n\nDelete"],
-[{x:-3,f:3},"Page\n\n\n\n\n\nDown"]
+[{x:-3},"Page\n\n\n\n\n\nUp",{f:3,h:2},"< Del\n\n\nBackspace",{f:3,h:2},"Del >\n\n\nDelete"],
+[{x:-3},"Page\n\n\n\n\n\nDown"]
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/ordinary.hex b/keyboard/ergodox_ez/keymaps/ordinary/ordinary.hex
index 8e2d5ce26d..6a42b7098a 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/ordinary.hex
+++ b/keyboard/ergodox_ez/keymaps/ordinary/ordinary.hex
@@ -1,1190 +1,1198 @@
-:100000000C945F040C94A3040C94A3040C94A30418
-:100010000C94A3040C94A3040C94A3040C94A304C4
-:100020000C94A3040C94A3040C94C40D0C94960E8D
-:100030000C94A3040C94A3040C94A3040C94A304A4
-:100040000C94A3040C9441230C94A3040C94A304D7
-:100050000C94A3040C94E31C0C94A3040C94A3042C
-:100060000C94A3040C94A3040C94A3040C94A30474
-:100070000C94A3040C94A3040C94A3040C94A30464
-:100080000C94A3040C94A3040C94A3040C94A30454
-:100090000C94A3040C94A3040C94A3040C94A30444
-:1000A0000C94A3040C94A3040C94A304FB0E1D0F46
-:1000B00008101D0F08105F0F820F0810D70FEA0FEE
-:1000C000DE12DE120C130C134E138A138A158A15D6
-:1000D000A2138A159914991464158A158A1578152E
-:1000E000000000810889248935812B850252E100B6
-:1000F000E00000001E00140004001D0000774E0008
-:100100001F001A0016001B00007F4C002000080092
-:1001100007000600E2002A0021001500090019006E
-:10012000E3004B00220017000A00050000004A000F
-:1001300029002F0000002B0200004D002D00300090
-:1001400000002B000000500023001C000B001100D9
-:1001500000004F00240018000D001000E7005200BE
-:1001600025000C000E003600E6002C0026001200D0
-:100170000F003700007F28002700130033003800ED
-:10018000007751002E8131853482E500E4000000C3
-:100190000100C300C2003900010000002900010075
-:1001A0000100010001000100010001000100010047
-:1001B0000100010001000100010001000100010037
-:1001C0000100010001000100010001000100010027
-:1001D0000100010000000100010001000000010019
-:1001E000000001000100010000000100000001000A
-:1001F00001000100010001000000010001000100F8
-:1002000001000100010001000100010001000100E6
-:1002100001000100010001000100010001000100D6
-:100220002A00010001000100010001000100C300DB
-:10023000C200390001000000C20005520252E10074
-:10024000010000003A001E022002220201005100BB
-:100250003B001F0221022302010028003C002F0264
-:1002600026022F0001002C003D0030022702300042
-:10027000010052003E00240235003502000050000B
-:100280000100360200002B0000004F002D00370255
-:1002900000002B0200004A003F003102380031000C
-:1002A00000004D004000240021001E0027784B0074
-:1002B0004100250022001F0037744C004200260038
-:1002C000230020002E7F2A004300380025022D0045
-:1002D0002E774E00C20005520252E5002871000040
-:1002E000045205520852E100010000003A001E02CB
-:1002F00020022202010051003B001F0221022302C2
-:10030000010028003C002F0226022F0001002C00D3
-:100310003D00300227023000010052003E0024025E
-:1003200035003502000050000100360200002B00AD
-:1003300000004F002D00370200002B0200004A0091
-:100340003F0031023800310000004D004000240021
-:1003500021001E0027784B004100250022001F00CD
-:1003600037744C0042002600230020002E7F2A0014
-:100370004300380025022D002E774E00045205520E
-:100380000852E5002871000001000654C100390040
-:10039000010000002900010001000100010001002E
-:1003A0000100010001000100010001000100010045
-:1003B0000100010001000100010001000100010035
-:1003C0000100010001000100010001000000010026
-:1003D0000100010000000100000001000100010017
-:1003E0000000010000000100010001000100010007
-:1003F00000000100010001000100010001000100F6
-:1004000001000100010001000100010001000100E4
-:1004100001000100010001002A00010001000100AB
-:100420000100010001000654C10039000100000074
-:10043000C30005520252E100E000000044006600E3
-:10044000A60000000077B5004500F400F2000000AF
-:10045000007F00006800F000F100F100E200B6004B
-:100460006900F500F3000000E300B4006A00A90091
-:10047000AA00A8000000B8000000F9000000FA007F
-:100480000000B9000000F9000000FA000000AC0014
-:100490006B004600530000000000AB006C004A00F7
-:1004A00050004D004978A9006D00520051005100E4
-:1004B0004C74AE006E004B004F004E00007FAD004C
-:1004C0006F00B100B30000000077AA00C30005521E
-:1004D0000252E500E4000000075208520000E1006B
-:1004E000E000000044006600A60000000077B500B0
-:1004F0004500F400F2000000007F00006800F000FA
-:10050000F100F100E200B6006900F500F300000020
-:10051000E300B4006A00A900AA00A8000000B80027
-:100520000000F9000000FA000000B9000000F90026
-:100530000000FA000000AC006B0046005300000011
-:100540000000AB006C004A0050004D004978A90043
-:100550006D005200510051004C74AE006E004B0013
-:100560004F004E00007FAD006F00B100B3000000EF
-:100570000077AA00075208520000E500E4000000DE
-:100580000100C10001003900010000002900010044
-:100590000100010001000100010001000100010053
-:1005A0000100010001000100010001000100010043
-:1005B0000100010001000100010001000100010033
-:1005C0000100010000000100010001000000010025
-:1005D0000000010001000100000001000000010016
-:1005E0000100010001000100000001000100010004
-:1005F00001000100010001000100010001000100F3
-:1006000001000100010001000100010001000100E2
-:100610002A00010001000100010001000100C100E9
-: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
-:100910000FBEE0E0FFE3099511E0A0E0B1E0E6E002
-:10092000FAE402C005900D92A433B107D9F721E093
-:10093000A4E3B1E001C01D92AF3EB207E1F70E940F
-:100940000A0B0C9401250C94000061110BC0FC01F2
-:100950008281882321F085EE0E946B1103C085EE11
-:100960000E94331280E090E008950895CF93609143
-:10097000B1017091B2018091B3019091B4010E94D4
-:100980000F1CC82FE0910E01F0910F01808182723F
-:1009900019F0259A2D9A06C00E94431081FDF9CFC7
-:1009A00025982D98C130B9F0C430A9F089EF8C0F8B
-:1009B000823088F08EEF8C0F823018F4269A2E9AAF
-:1009C00002C026982E98C550C23018F4279A2F9A44
-:1009D00002C027982F98CF9108950C94B60456988A
-:1009E0005E9825982D9826982E9827982F988FEF07
-:1009F00090E0909389008093880090938B0080937F
-:100A00008A0090938D0080938C00259A2D9A2FEF69
-:100A100080E792E0215080409040E1F700C0000064
-:100A2000269A2E9A2FEF80E792E021508040904046
-:100A3000E1F700C00000279A2F9A2FEF80E792E09D
-:100A4000215080409040E1F700C0000025982D988B
-:100A50002FEF80E792E0215080409040E1F700C006
-:100A6000000026982E982FEF80E792E021508040DA
-:100A70009040E1F700C0000027982F9856985E98A4
-:100A800025982D9826982E9827982F98089589EACA
-:100A90008093800089E08093810024982C983F986F
-:100AA0008AB18F748AB96E98479A8BB1806B8BB973
-:100AB000769A0E94EF040C94B50480E280930001C2
-:100AC0008091340181110EC00E94AC0581E08093B9
-:100AD00034012FEF83ED90E3215080409040E1F707
-:100AE00000C0000080E40E94B205809300018111E3
-:100AF0002EC00E94DC0580930001811128C00E9455
-:100B0000DC0580930001811122C08FE30E94DC0587
-:100B10008093000181111BC00E94D40580E40E94D3
-:100B2000B20580930001811112C08CE00E94DC05A7
-:100B30008093000181110BC00E94DC0580930001AD
-:100B4000811105C08FE30E94DC05809300010E94A3
-:100B5000D4058091000108951092B9008AE0809335
-:100B6000B800089594EA9093BC009091BC0097FF60
-:100B7000FCCF9091B900987F983021F0903111F01E
-:100B800081E008958093BB0084E88093BC0080914D
-:100B9000BC0087FFFCCF8091B900887F883111F0BD
-:100BA000803471F780E0089584E98093BC008091DF
-:100BB000BC0084FDFCCF08958093BB0084E8809343
-:100BC000BC008091BC0087FFFCCF9091B900987F5A
-:100BD00081E0983209F480E0089584E88093BC00B5
-:100BE0008091BC0087FFFCCF8091BB00089580916D
-:100BF0000001811115C080E40E94B20580930001BC
-:100C000081110CC082E10E94DC05809300018111FA
-:100C100005C08FEF0E94DC05809300010E94D4057F
-:100C200084B1807F84B985B1807F85B98AB1837FA3
-:100C30008AB98BB1837F8BB93E98469808950E94FC
-:100C40005D05809300010E94F70580B38C7080BB26
-:100C500081B3836F81BBE4E4F1E0A6E3B1E01192DC
-:100C60001D9281E0E235F807D1F70C944705BF9259
-:100C7000CF92DF92EF92FF920F931F93CF93DF9368
-:100C800080910001882379F0809135018F5F8093F6
-:100C90003501811108C00E945D058093000181111A
-:100CA00002C00E94EF0406E311E0C0E0D0E0DD24C2
-:100CB000D39482E0C82EEE24E394F12CC73000F5E3
-:100CC00080910001811162C080E40E94B20580938E
-:100CD0000001811112C082E10E94DC0580930001B5
-:100CE00081110BC0C7010C2E01C0880F0A94EAF7CE
-:100CF00080950E94DC05809300010E94D40546C0C7
-:100D0000CA30A1F028F4C83059F0C93061F005C0EC
-:100D1000CC3089F070F0CD3089F0209A289810C03E
-:100D2000219A29980DC0229A2A980AC0239A2B98B2
-:100D300007C0529A01C0539A5B9802C03E9A4698E7
-:100D4000E0EAEA95F1F78FB179995AC092E08170A3
-:100D50008D25892B7C9B02C090E001C094E0892BFB
-:100D60007D9B02C090E001C098E0892B7E9B02C071
-:100D700090E001C090E1892B9FB19095991F992730
-:100D8000991F9295990F907E892B0FC08091000139
-:100D900081114BC080E40E94B2058093000188233A
-:100DA00089F1B12C0E94D4058B2DF8019081981700
-:100DB00019F08083C09201010E94F70521960F5F10
-:100DC0001F4FCE30D10509F079CF809101018823E2
-:100DD00071F1815080930101882339F08FE99FE000
-:100DE0000197F1F700C0000022C0A4E4B1E0E6E3FF
-:100DF000F1E081918D9391E0E434F907D1F717C0C8
-:100E000090E0A5CF83E10E94DC0580930001811171
-:100E1000C8CF81E40E94B205809300018111C1CF47
-:100E20000E94ED05B82EB094BDCF80E0BECF0E94E9
-:100E3000ED0481E0DF91CF911F910F91FF90EF9032
-:100E4000DF90CF90BF900895E82FF0E0EC5BFE4F6D
-:100E50008081089508958B3B910578F4883A910537
-:100E600040F5853A9105D0F48430910508F0B1C081
-:100E70008130910509F4ADC06BC0803E910508F446
-:100E800067C0883E910508F4A4C09C01205F310929
-:100E90002031310508F05CC090650895853A9105D0
-:100EA00009F459C0863A910509F458C083E890E4E2
-:100EB0000895883A910509F454C0893A910509F4D6
-:100EC00053C08A3A910509F452C08B3A910509F44E
-:100ED00051C08C3A910509F450C08D3A910509F43E
-:100EE0004FC0803B910509F44EC08E3A910509F43C
-:100EF0004DC08F3A910509F44CC0813B910509F42E
-:100F00004BC0823B910509F44AC0833B910509F42B
-:100F100049C0843B910509F448C0853B910509F41B
-:100F200047C0863B910509F446C0873B910509F40B
-:100F300045C0883B910509F444C0893B910509F4FB
-:100F400043C08A3B910509F042C08AE296E40895C5
-:100F500080E090E0089581E890E4089582E890E4CC
-:100F6000089582EE94E4089589EE94E408958AEE5B
-:100F700094E4089585EB94E4089586EB94E4089551
-:100F800087EB94E408958CEC94E408958DEC94E45C
-:100F9000089583E895E408958AE895E4089582E940
-:100FA00095E4089584E995E4089581E296E408952E
-:100FB00083E296E4089584E296E4089585E296E457
-:100FC000089586E296E4089587E296E4089580E025
-:100FD00094E40895089596E0799FF001112494E532
-:100FE000899FE00DF11D1124E60FF11DEE0FFF1F8B
-:100FF000E851FF4F859194910895880F991F805A69
-:101000009040FC01859194910895880F991F80521A
-:101010009F4FFC0185919491089526E0729FF00105
-:10102000112444E5849FE00DF11D1124E60FF11D0C
-:10103000EE0FFF1FE851FF4F25913491C9019A959A
-:1010400081159F4110F4C9010895C901905281157D
-:10105000904128F4C9019F700E9405080895C901B4
-:1010600090538115904120F4C9019927906C0895FF
-:10107000211580E5380769F40E94AD159FEF24E340
-:101080004CE0915020404040E1F700C000000C943B
-:10109000081D213080E5380731F48091CD01816051
-:1010A0008093CD010895C90190558115904108F0B4
-:1010B00050C0832F99278F70992781309105D9F4DB
-:1010C000A9014370552702C0880F991F4A95E2F77E
-:1010D0009C68A90164E0440F551F6A95E1F7442715
-:1010E0005370842B952B73E0220F331F7A95E1F711
-:1010F000207633271DC08230910529F4922F88274E
-:10110000816F906A089583309105A9F4A901437015
-:10111000552781E090E002C0880F991F4A95E2F7B9
-:101120009C6843E0220F331F4A95E1F7207E377019
-:10113000822B932B08950497F1F4A901437055274E
-:1011400081E090E002C0880F991F4A95E2F79A6803
-:10115000E8CFC90190578115904120F4C9019F70D3
-:1011600090620895C90190588115904120F4C901F9
-:101170009F70906A0895203E3105E0F4203C3105CF
-:1011800058F52133310509F470C048F4293231058E
-:1011900009F464C02A32310509F46EC074C02933E1
-:1011A0003105F1F022383105D9F02533310509F444
-:1011B0004EC069C0233E310589F138F4203E310527
-:1011C000C1F0223E3105E1F05EC0263E310569F1F5
-:1011D000273E3105A9F157C0C9010E94FD070895B6
-:1011E0008091E00180FD02C081FF4DC080EE90E063
-:1011F0004BC08091E00180FFF9CF89E390E044C0CB
-:101200008091E00182FF0EC08091E00184FF03C065
-:1012100080E090E039C083EE90E036C08091E0013C
-:1012200082FFF2CF82EE90E02FC08091E00183FF39
-:101230000BC08091E00184FDEBCF87EE90E024C0ED
-:101240008091E00183FFF5CF86EE90E01DC0809194
-:10125000E00185FF07C089E290E016C08091E001BF
-:1012600085FFF9CF85E390E00FC08091E00186FF14
-:1012700007C08AE290E008C08091E00186FFF9CFC4
-:1012800081E390E001C0C9010E942B0708950895F1
-:101290000C944709809162010895CF93DF9300D0A9
-:1012A0001F92CDB7DEB72091E601243019F523E077
-:1012B00029839B838A832093E9008FEF9091E80034
-:1012C000815095FD06C095ED9A95F1F700008111CA
-:1012D000F5CF8091E80085FF0DC040E050E063E06D
-:1012E00070E0CE0101960E94B70B8091E8008E77E6
-:1012F0008093E8000F900F900F90DF91CF910895A9
-:10130000CF93DF9300D01F92CDB7DEB72091E601D7
-:10131000243021F522E029839B838A8383E0809314
-:10132000E9008FEF9091E800815095FD06C095EDA2
-:101330009A95F1F700008111F5CF8091E80085FFC3
-:101340000DC040E050E063E070E0CE0101960E94E5
-:10135000B70B8091E8008E778093E8000F900F9094
-:101360000F90DF91CF9108952091E6012430F1F4A0
-:1013700022E02093E9002FEF3091E800215035FD65
-:1013800006C035ED3A95F1F700002111F5CF209117
-:10139000E80025FF0BC040E050E065E070E00E94EF
-:1013A000B70B8091E8008E778093E8000895CF9383
-:1013B000DF93EC018091E601843009F046C0909102
-:1013C0000C019923D9F090910D019923B9F08093E4
-:1013D000E9008FEF9091E800815095FD06C095E1FE
-:1013E0009A95F1F700008111F5CF8091E80085FF13
-:1013F0002CC040E050E060E170E017C081E08093D5
-:10140000E9008FEF9091E800815095FD06C095EDC1
-:101410009A95F1F700008111F5CF8091E80085FFE2
-:1014200014C040E050E068E070E0CE010E94B70BCD
-:101430008091E8008E778093E80080E1FE01A2E5CC
-:10144000B1E001900D928A95E1F7DF91CF91089577
-:101450008091E501811109C00E94490D0E94A60DED
-:101460008091E20084608093E20008951092E5018B
-:10147000089508950C942E230E949F1C0E943423EB
-:101480000E9443100C94480942E061EC81E00E9404
-:10149000C30C42E061EC82E00E94C30C42E061ECCC
-:1014A00083E00E94C30C42E161EC84E00C94C30C25
-:1014B0008091E801833009F455C030F4813071F037
-:1014C000823009F48EC008958A3009F47AC08B30D6
-:1014D00009F460C0893009F09CC020C08091E70108
-:1014E000813A09F096C08091E800877F8093E800F8
-:1014F0008091EB019091EC01892B21F060E080E07C
-:1015000090E003C060E182E591E070E00E94000C91
-:101510008091E8008B778093E80008958091E7013F
-:10152000813209F076C08091EB019091EC01009737
-:1015300019F0039709F06DC08091E800877F8093D0
-:10154000E8008091E80082FD05C08091E6018111EC
-:10155000F8CF5FC08091F100809362018091E80034
-:101560008B7753C08091E701813A09F052C0809196
-:10157000EB019091EC01892B09F04BC08091E800C0
-:10158000877F8093E8008091E80080FFFCCF809106
-:101590000C0136C08091E7018132D9F58091EB01D1
-:1015A0009091EC01892BA9F58091E800877F8093C9
-:1015B000E8000E94F80C8091E90180930C010C94E2
-:1015C000AD158091E701813221F58091E800877F98
-:1015D0008093E8000E94F80C8091EA0180936301F7
-:1015E00008958091E701813AA1F48091E800877F16
-:1015F0008093E8008091E80080FFFCCF8091630138
-:101600008093F1008091E8008E778093E8000C943D
-:10161000F80C089584B7877F84BF88E10FB6F894EB
-:1016200080936000109260000FBE90E080E80FB6DB
-:10163000F89480936100909361000FBE0E94921015
-:101640000E94490D0E94A60D8091E2008460809363
-:10165000E20078940E9421100E94941082E091E0B0
-:101660000E943E100E941C238091E601853069F49F
-:101670000E94621C8091E4018823B1F30E948A1CBD
-:10168000882391F30E94A10BEFCF0E949A10ECCF18
-:10169000292F332723303105A9F06CF4213031058F
-:1016A00009F442C02230310509F043C08DE690E0D4
-:1016B00024E037E042C021323105C9F02232310541
-:1016C00019F137C099278130910541F08230910599
-:1016D00041F0892B71F5E0E0F7E005C0E8EEF6E0B7
-:1016E00002C0E0EDF6E0849190E09F0126C06430F6
-:1016F00000F5E62FF0E0EE0FFF1FEE5DFE4F2081BC
-:10170000318189E090E019C0643098F4E62FF0E070
-:10171000DF01AA0FBB1FA65EBE4F2D913C91EA5E72
-:10172000FE4F808190E009C082E190E021E737E040
-:1017300004C080E090E020E030E0FA0131832083B3
-:10174000089580E189BD82E189BD09B400FEFDCF25
-:101750008091D8008F7D8093D8008091E0008260D6
-:101760008093E0008091E00081FDFCCF0895CF924E
-:10177000DF92EF92FF920F931F93CF93DF937C0141
-:101780008B01EA010E94190D811131C0209731F0BF
-:1017900088819981081B190BE80EF91EC12CD12CE8
-:1017A0000115110519F18091E80085FD14C08091A3
-:1017B000E8008E778093E800209741F08881998136
-:1017C0008C0D9D1D9983888385E011C00E94190DA1
-:1017D000882331F30CC0F70181917F018093F100E0
-:1017E00001501109FFEFCF1ADF0ADACF80E0DF9155
-:1017F000CF911F910F91FF90EF90DF90CF900895C0
-:101800002091ED013091EE012617370748F0611560
-:10181000710539F42091E8002E772093E80001C08B
-:10182000B901FC0120E061157105B9F18091E60173
-:10183000882309F440C0853009F43FC08091E80056
-:1018400083FD3DC08091E80082FF06C08091E800E2
-:1018500082FF26C080E008958091E80080FFE3CFFA
-:101860002091F3008091F20090E0922B61157105B8
-:1018700051F08830910538F421912093F1006150A6
-:1018800071090196F3CF21E0089709F020E08091DB
-:10189000E8008E778093E800C6CF2111C7CFD6CF5E
-:1018A0008091E601882339F0853039F08091E80095
-:1018B00083FFCCCF04C082E0089583E0089581E0E7
-:1018C00008952091ED013091EE012617370748F079
-:1018D0006115710539F42091E8002E772093E80016
-:1018E00001C0B901FC0120E061157105C1F18091D1
-:1018F000E601882309F441C0853009F440C0809195
-:10190000E80083FD3EC08091E80082FF06C0809120
-:10191000E80082FF27C080E008958091E80080FF02
-:10192000E3CF2091F3008091F20090E0922B6115BB
-:10193000710559F08830910540F424912093F1000D
-:101940003196615071090196F2CF21E0089709F0B4
-:1019500020E08091E8008E778093E800C5CF2111C8
-:10196000C6CFD5CF8091E601882339F0853039F094
-:101970008091E80083FFCBCF04C082E0089583E02C
-:10198000089581E00895982F973058F59093E900D5
-:10199000981739F07091EC002091ED005091F00013
-:1019A00003C0242F762F50E021FF19C03091EB00A7
-:1019B0003E7F3093EB003091ED003D7F3093ED00A2
-:1019C0003091EB0031603093EB007093EC0020938A
-:1019D000ED005093F0002091EE0027FF07C09F5FBD
-:1019E000D3CF8F708093E90081E0089580E008955F
-:1019F0008091E70187FD05C08091E80080FF0EC05F
-:101A000012C08091E80082FD05C08091E60181113D
-:101A1000F8CF08958091E8008B7708C08091E601A7
-:101A20008111EACF08958091E8008E778093E800D5
-:101A300008958091E4009091E50045E62091EC0046
-:101A400020FF21C02091E80020FD21C02091E60167
-:101A5000222389F0253089F02091EB0025FD0FC06D
-:101A60002091E4003091E5002817390739F34150FF
-:101A700041F0C901E3CF82E0089583E0089581E059
-:101A8000089584E008952091E80022FFDFCF80E0F0
-:101A900008950E94B70D0E94BF0DE0EEF0E0808136
-:101AA00081608083E8EDF0E080818F77808319BCCE
-:101AB000A7EDB0E08C918E7F8C9380818F7E8083A8
-:101AC0001092E50108950F931F93CF93DF930E9427
-:101AD000B70D0E94BF0DC8EDD0E088818F77888355
-:101AE00088818068888388818F7D888319BC109263
-:101AF000E6011092E2011092E4011092E30100EE7F
-:101B000010E0F80180818B7F8083888181608883E9
-:101B100042E060E080E00E94C30CE1EEF0E08081F2
-:101B20008E7F8083E2EEF0E080818160808380811F
-:101B300088608083F80180818E7F808388818061C6
-:101B40008883DF91CF911F910F910895E8EDF0E028
-:101B500080818F7E8083E7EDF0E0808181608083EB
-:101B600084E082BF81E08093E5010C94630DE8ED91
-:101B7000F0E080818E7F80831092E20008951092C1
-:101B8000DA001092E10008951F920F920FB60F92A3
-:101B900011242F933F934F935F936F937F938F9372
-:101BA0009F93AF93BF93EF93FF938091E10082FFE8
-:101BB0000BC08091E20082FF07C08091E1008B7F23
-:101BC0008093E1000E9420108091DA0080FF1FC006
-:101BD0008091D80080FF1BC08091DA008E7F8093B7
-:101BE000DA008091D90080FF0DC080E189BD82E1DB
-:101BF00089BD09B400FEFDCF81E08093E6010E941B
-:101C0000280A05C019BC1092E6010E94360A80918C
-:101C1000E10080FF19C08091E20080FF15C0809133
-:101C2000E2008E7F8093E2008091E20080618093E9
-:101C3000E2008091D80080628093D80019BC85E0D2
-:101C40008093E6010E943A0A8091E10084FF30C04F
-:101C50008091E20084FF2CC080E189BD82E189BDD2
-:101C600009B400FEFDCF8091D8008F7D8093D8000D
-:101C70008091E1008F7E8093E1008091E2008F7E71
-:101C80008093E2008091E20081608093E200809185
-:101C9000E201882311F084E007C08091E30087FF10
-:101CA00002C083E001C081E08093E6010E943C0A0B
-:101CB0008091E10083FF29C08091E20083FF25C06D
-:101CC0008091E100877F8093E10082E08093E601CC
-:101CD0001092E2018091E1008E7F8093E10080917B
-:101CE000E2008E7F8093E2008091E2008061809329
-:101CF000E20042E060E080E00E94C30C8091F000CE
-:101D000088608093F0000E94390AFF91EF91BF91A3
-:101D1000AF919F918F917F916F915F914F913F9183
-:101D20002F910F900FBE0F901F9018951F920F923A
-:101D30000FB60F9211242F933F934F935F936F939E
-:101D40007F938F939F93AF93BF93CF93EF93FF9323
-:101D5000C091E900CF708091EC001092E900809171
-:101D6000F000877F8093F00078940E94D20E10924A
-:101D7000E9008091F00088608093F000C093E90052
-:101D8000FF91EF91CF91BF91AF919F918F917F91F3
-:101D90006F915F914F913F912F910F900FBE0F90D8
-:101DA0001F9018951F93CF93DF93CDB7DEB7AA97F7
-:101DB0000FB6F894DEBF0FBECDBFE7EEF1E0809125
-:101DC000F100819321E0EF3EF207C9F70E94580A23
-:101DD0008091E80083FF1CC12091E7013091E80168
-:101DE000832F90E08A30910508F012C1FC01EA5A75
-:101DF000FF4F0C94B624203881F0223809F008C136
-:101E00008091EB018F708093E9008091EB0085FB5E
-:101E1000882780F91092E90006C08091E301909133
-:101E2000E401911182609091E800977F9093E8001F
-:101E30008093F1001092F100C5C0822F8D7F09F0D0
-:101E4000E7C0222319F0223061F0E2C08091E9015D
-:101E5000813009F0DDC0333009F080E08093E40187
-:101E600028C08091E901811124C02091EB012F70DD
-:101E700009F4CEC02093E9008091EB0080FF19C0E7
-:101E80008091EB00333011F4806211C08061809347
-:101E9000EB0081E090E0022E01C0880F0A94EAF77F
-:101EA0008093EA001092EA008091EB0088608093B2
-:101EB000EB001092E9008091E800877F86C0211135
-:101EC000A7C01091E9011F778091E3008078812BF2
-:101ED0008093E3008091E800877F8093E8000E9470
-:101EE000F80C8091E80080FFFCCF8091E3008068CF
-:101EF0008093E300112311F083E001C082E080931E
-:101F0000E60186C02058223008F082C08091E901A5
-:101F10009091EA018C3D23E0920779F583E08A8372
-:101F20008AE289834FB7F894DE01139620E03EE001
-:101F300051E2E32FF0E050935700E49120FF03C0FB
-:101F4000E295EF703F5FEF708E2F90E0EA3010F077
-:101F5000C79601C0C0968D939D932F5F243149F79A
-:101F60004FBF8091E800877F8093E8006AE270E0CD
-:101F7000CE0101960E94000C14C0AE014F5F5F4F6E
-:101F80006091EB010E94480B009709F441C0209139
-:101F9000E800277F2093E800BC0189819A810E9494
-:101FA000610C8091E8008B778093E80031C0203885
-:101FB00079F58091E800877F8093E8008091E201C5
-:101FC0008093F1008091E8008E778093E8000E9472
-:101FD000F80C1EC021111CC09091E9019230C0F490
-:101FE0008091E800877F8093E8009093E2010E944F
-:101FF000F80C8091E201811104C08091E30087FF19
-:1020000002C084E001C081E08093E6010E94440A9E
-:102010008091E80083FF0AC08091E800877F809369
-:10202000E8008091EB0080628093EB00AA960FB6E7
-:10203000F894DEBF0FBECDBFDF91CF911F91089501
-:102040000895CF938091E6018823B1F08091E90053
-:102050008F709091EC0090FF02C090E801C090E07A
-:10206000C92FC82B1092E9008091E80083FD0E94DF
-:10207000D20ECF70C093E900CF910895909369017B
-:10208000809368010895E0916801F09169013097AB
-:1020900021F00190F081E02D099480E00895E09115
-:1020A0006801F0916901309721F00280F381E02D01
-:1020B00009940895E0916801F0916901309721F049
-:1020C0000480F581E02D09940895209166013091F6
-:1020D00067018217930771F09093670180936601FF
-:1020E000E0916801F0916901309721F00680F78155
-:1020F000E02D0994089520916401309165018217C3
-:10210000930771F09093650180936401E0916801F9
-:10211000F0916901309721F00084F185E02D099458
-:10212000089508950C9491100E94A51C0E941F060A
-:102130000C946B1DCF92DF92EF92FF920F931F933F
-:10214000CF93DF93CDB7DEB72B970FB6F894DEBFF2
-:102150000FBECDBF0E9437063BE6E32E31E0F32EE3
-:1021600000E010E0C02E802F0E942407F701D190DC
-:102170007F01D826B1F40F5F1F4F0E30110591F784
-:102180008FEF89838A831B820E94AE1C8160782F27
-:102190009D838C8349815A816B818D810E943D1181
-:1021A00041C09091CD0191FF04C08B870E942A0706
-:1021B0008B8520E030E04D2D50E0922FBA01022EA9
-:1021C00002C0759567950A94E2F760FF25C02E83DB
-:1021D000CF82EE24E394F12C02C0EE0CFF1C9A9502
-:1021E000E2F790E08E219F2121E0892B09F420E085
-:1021F00028870E94AE1C8160782F9A8789874E813C
-:102200005F8168858A850E943D11F801E559FE4F7E
-:1022100080818E25808306C02F5F3F4F2630310599
-:1022200061F6A9CF0E944F2010916A010E944310CD
-:102230001817A1F00E94431080936A012B960FB6E5
-:10224000F894DEBF0FBECDBFDF91CF911F910F91EC
-:10225000FF90EF90DF90CF900C9448092B960FB62B
-:10226000F894DEBF0FBECDBFDF91CF911F910F91CC
-:10227000FF90EF90DF90CF900895CF93DF93CDB78D
-:10228000DEB72B970FB6F894DEBF0FBECDBF4F83DE
-:10229000588769877A878B87DE01119686E0FD0172
-:1022A00011928A95E9F785E0FE01379601900D922B
-:1022B0008A95E1F749815A816B817C818D819E816C
-:1022C0000E9479182B960FB6F894DEBF0FBECDBFD3
-:1022D000DF91CF910895CF93C82F882309F4C1C00F
-:1022E000823859F40E94431081FDBBC089E30E94EB
-:1022F000161B0E94E01B89E30CC0833879F40E940E
-:10230000431080FDAEC083E50E94161B0E94E01BB7
-:1023100083E50E94561BCF910C94E01B843859F43E
-:102320000E94431082FD9DC087E40E94161B0E94FC
-:10233000E01B87E4EECF8CEF8C0F813A48F48C2FB2
-:102340000E94842281118DC08C2F0E94161BE3CF26
-:1023500080E28C0F883048F4C77081E001C0880F9C
-:10236000CA95EAF70E94971BD6CF8BE58C0F833076
-:1023700078F4C53A29F0C63A31F482E890E005C015
-:1023800081E890E002C083E890E0CF910C94651062
-:1023900088E58C0F833108F064C0C83A39F1C93A36
-:1023A00041F1CA3A49F1CB3A51F1CC3A59F1CD3A1F
-:1023B00061F1C03B69F1CE3A71F1CF3A79F1C13B9D
-:1023C00081F1C23B89F1C33B91F1C43B99F1C53B1B
-:1023D000A1F1C63BA9F1C73BB1F1C83BB9F1C93B7B
-:1023E000C1F1CA3BC9F58AE292E038C082EE90E0C2
-:1023F00035C089EE90E032C08AEE90E02FC085EBC8
-:1024000090E02CC086EB90E029C087EB90E026C0DE
-:102410008CEC90E023C08DEC90E020C083E891E04C
-:102420001DC08AE891E01AC082E991E017C084E9F2
-:1024300091E014C081E292E011C083E292E00EC00C
-:1024400084E292E00BC085E292E008C086E292E06E
-:1024500005C087E292E002C080E090E0CF910C944A
-:102460007B10CF910895882309F44BC0823859F42A
-:102470000E94431081FF45C089E30E94161B0E9401
-:10248000E01B89E30CC0833871F40E94431080FF85
-:1024900038C083E50E94161B0E94E01B83E50E9462
-:1024A000561B0C94E01B843859F40E94431082FFA1
-:1024B00028C087E40E94161B0E94E01B87E4EFCF30
-:1024C0009CEF980F913A58F390E2980F983050F49F
-:1024D000877091E001C0990F8A95EAF7892F0E94D1
-:1024E0009D1BDFCF9BE5980F933020F480E090E0B8
-:1024F0000C946510885A833120F480E090E00C94AD
-:102500007B100895882321F00E94971B0C94E01BF8
-:102510000895882321F00E949D1B0C94E01B0895D0
-:10252000CF92DF92EF92FF920F931F93CF93DF939F
-:10253000CDB7DEB728970FB6F894DEBF0FBECDBF7C
-:102540008C0185E0F801DE01119601900D928A95CB
-:10255000E1F7F80140813181F280258122952F70C9
-:1025600083819481892B31F03F3F31F481E04F3FEB
-:1025700019F403C081E001C080E080FDCBC2498333
-:102580003A8389819A812F830E94D41A9E838887F7
-:102590000E94D31A0E94A6192F814E816885FF20C0
-:1025A00029F00E94B41B68854E812F81E42FE295AB
-:1025B000EF70F0E0E05AFF4F0C94B624842F807F38
-:1025C000142F1F70882311F01295107FFF2059F0EF
-:1025D000112309F454C2812F68870E94A71B0E940F
-:1025E000E01B68854CC2862F0E943312112309F428
-:1025F00091C2812F0E94AD1B28960FB6F894DEBFC2
-:102600000FBECDBFDF91CF911F910F91FF90EF9043
-:10261000DF90CF900C94E01B342F307F842F8F708D
-:10262000303211F08295807F662319F0613019F104
-:102630002BC0FF20B1F0222309F493C1213009F00F
-:1026400090C128960FB6F894DEBF0FBECDBFDF91C4
-:10265000CF911F910F91FF90EF90DF90CF900C944E
-:10266000C71B222319F0213009F454C28E830E9423
-:10267000CA1B8E8189C1FF2021F0223008F04AC296
-:1026800070C1211147C280C1FF2021F0222309F42B
-:1026900068C1F5C1222309F477C105C2242F26950C
-:1026A0002695237030E02115310521F021303105C8
-:1026B000C9F030C2FF2021F0862F942F937002C002
-:1026C00080E090E028960FB6F894DEBF0FBECDBF35
-:1026D000DF91CF911F910F91FF90EF90DF90CF90FE
-:1026E0000C946510FF2021F0862F942F937002C068
-:1026F00080E090E028960FB6F894DEBF0FBECDBF05
-:10270000DF91CF911F910F91FF90EF90DF90CF90CD
-:102710000C947B10862FFF2019F00E94571F02C0D7
-:102720000E94BF1F28960FB6F894DEBF0FBECDBF24
-:10273000DF91CF911F910F91FF90EF90DF90CF909D
-:102740000C944420842F837009F076C0F110E2C10C
-:10275000262F229526952770220F220F862F8F7005
-:10276000C82ED12CE12CF12C022E04C0CC0CDD1C87
-:10277000EE1CFF1C0A94D2F764FF10C06FE070E0FB
-:1027800080E090E004C0660F771F881F991F2A958C
-:10279000D2F7609570958095909503C060E070E0E9
-:1027A000CB01242F269526952370422F50E04230EE
-:1027B0005105D1F04330510559F16C297D298E29FD
-:1027C0009F294130510541F128960FB6F894DEBF9C
-:1027D0000FBECDBFDF91CF911F910F91FF90EF9072
-:1027E000DF90CF900C94CB196C297D298E299F29DD
-:1027F00028960FB6F894DEBF0FBECDBFDF91CF9104
-:102800001F910F91FF90EF90DF90CF900C94E519FE
-:102810000E94CB19C701B60128960FB6F894DEBF07
-:102820000FBECDBFDF91CF911F910F91FF90EF9021
-:10283000DF90CF900C94B119FF2019F0842F817094
-:1028400001C08695882309F465C1262F2295269517
-:102850002770220F220F862F8F70C82ED12CE12CCB
-:10286000F12C022E04C0CC0CDD1CEE1CFF1C0A94C3
-:10287000D2F764FF10C06FE070E080E090E004C029
-:10288000660F771F881F991F2A95D2F7609570955C
-:102890008095909503C060E070E0CB01242F2695D1
-:1028A00026952370422F50E042305105D1F043303D
-:1028B000510559F16C297D298E299F2941305105F7
-:1028C00041F128960FB6F894DEBF0FBECDBFDF9161
-:1028D000CF911F910F91FF90EF90DF90CF900C94CC
-:1028E0009F1A6C297D298E299F2928960FB6F89466
-:1028F000DEBF0FBECDBFDF91CF911F910F91FF9033
-:10290000EF90DF90CF900C94B91A0E949F1AC701E4
-:10291000B60128960FB6F894DEBF0FBECDBFDF918B
-:10292000CF911F910F91FF90EF90DF90CF900C947B
-:10293000851A603FC9F118F4603E50F49BC0623FB5
-:1029400009F460C008F44AC0633F09F46FC092C044
-:10295000162F1F70842F8F71FF2099F00E941E1A6E
-:10296000812F28960FB6F894DEBF0FBECDBFDF9142
-:10297000CF911F910F91FF90EF90DF90CF900C942B
-:1029800082120E943F1A812F28960FB6F894DEBF5C
-:102990000FBECDBFDF91CF911F910F91FF90EF90B0
-:1029A000DF90CF900C948912FF20A1F02111B2C0CA
-:1029B000842F8F7128960FB6F894DEBF0FBECDBF5F
-:1029C000DF91CF911F910F91FF90EF90DF90CF900B
-:1029D0000C94641A223008F09DC0EACFFF20A1F0C9
-:1029E000842F8F7128960FB6F894DEBF0FBECDBF2F
-:1029F000DF91CF911F910F91FF90EF90DF90CF90DB
-:102A00000C941E1AFF2061F3842F8F7128960FB645
-:102A1000F894DEBF0FBECDBFDF91CF911F910F9114
-:102A2000FF90EF90DF90CF900C943F1AFF2091F031
-:102A3000842F8F7128960FB6F894DEBF0FBECDBFDE
-:102A4000DF91CF911F910F91FF90EF90DF90CF908A
-:102A50000C94091A28960FB6F894DEBF0FBECDBFAE
-:102A6000DF91CF911F910F91FF90EF90DF90CF906A
-:102A70000C94FF19FF20A1F0222309F4B1CF862F77
-:102A800028960FB6F894DEBF0FBECDBFDF91CF9171
-:102A90001F910F91FF90EF90DF90CF900C946B11EE
-:102AA000222309F4B1CF862F28960FB6F894DEBF03
-:102AB0000FBECDBFDF91CF911F910F91FF90EF908F
-:102AC000DF90CF900C9433124F70C8010E94A50480
-:102AD00028960FB6F894DEBF0FBECDBFDF91CF9121
-:102AE0001F910F91FF90EF90DF90CF900C942619DB
-:102AF0004F70C80128960FB6F894DEBF0FBECDBF49
-:102B0000DF91CF911F910F91FF90EF90DF90CF90C9
-:102B10000C94EA0728960FB6F894DEBF0FBECDBF1F
-:102B2000DF91CF911F910F91FF90EF90DF90CF90A9
-:102B300008950E94B41B0E94C41B0E94891B0E941E
-:102B4000E01B0E94F0200E94442080E090E00E9460
-:102B5000651080E090E00C947B100E94A41B0C9404
-:102B600099150E94D41A292F22952F7030E02C300D
-:102B700031054CF42A3031056CF4225031092230F1
-:102B8000310590F407C02C30310551F02F3031055C
-:102B900039F00AC0803E10F0803F31F481E00895A2
-:102BA00093FB882780F9089580E00895CF93DF9301
-:102BB00000D000D01F92CDB7DEB70F900F900F90CE
-:102BC0000F900F90DF91CF910895CF93DF9300D0B6
-:102BD00000D000D0CDB7DEB726960FB6F894DEBF92
-:102BE0000FBECDBFDF91CF9108951F93CF93DF9399
-:102BF000C091790116E080917A01C81799F0D0E070
-:102C00001C9FF0011D9FF00D1124E558FE4F4081DF
-:102C1000518162817381848195810E94E51521969D
-:102C2000C770E9CFDF91CF911F9108954091AB011B
-:102C30005091AC016091AD017091AE018091AF01F6
-:102C40009091B0010C94E515CF938091B0018295DD
-:102C50008F7009F05FC08091AD01882309F45AC0DC
-:102C600020917901A0917A016091AB017091AC0142
-:102C70008091AE019091AF0131E06F3F09F030E0FB
-:102C8000B32FC6E02A1709F445C0009721F07F3F13
-:102C900021F44B2F03C041E001C040E030E040FD93
-:102CA00035C0C29FF001C39FF00D1124E558FE4FBF
-:102CB000418174132BC04081641328C042814111AB
-:102CC00025C0438154814817590710F441505109D8
-:102CD000481B590B483C5105C8F48091B0018F70D6
-:102CE00080618093B00186E0829FF001839FF00DA8
-:102CF0001124E058FE4F80818F70806180838BEAC1
-:102D000091E00E949012CF910C94F5152F5F3F4FE8
-:102D10002770B8CFCF910895CF92DF92EF92FF92B4
-:102D20000F931F93CF93DF93CDB7DEB762970FB6A4
-:102D3000F894DEBF0FBECDBF8C0185E0F801DE0147
-:102D40001D9601900D928A95E1F7D8014C9111964C
-:102D50005C91119712966C9112971396ED90FC90DE
-:102D600014977091AB01E091AC012091AE013091CC
-:102D7000AF012115310531F0EF3F31F481E07F3FA4
-:102D800019F403C081E001C080E0B82FB170CB2EF0
-:102D900080FD6CC1D090AD01DD2009F4F5C0F0914B
-:102DA000B001E216F30638F0C701821B930B883C92
-:102DB000910548F09BC0209530952E0D3F1D283C75
-:102DC000310508F093C08F2F807F09F052C0E513C2
-:102DD00014C0741312C0D62E61110FC0FF70F061C1
-:102DE000F093B0010E9416168BEA91E00E949012B7
-:102DF0008091B001F80185836CC1EF2831F05F3F0D
-:102E000031F481E04F3F19F403C081E001C080E05C
-:102E100080FD03C081E0862701C080E0F82FF170BB
-:102E2000FF2E80FF1CC08091790120917A0136E04D
-:102E3000821709F428C190E0389FF001399FF00D06
-:102E40001124E558FE4F7181571306C07081471356
-:102E500003C07281671303C001968770E9CFD62E35
-:102E6000662309F436C18091B00181608093B0017E
-:102E700053C0E51308C0741306C0611104C0D80123
-:102E80001596FC93AEC04D875E878D859E856A8BB7
-:102E90000E94B1156A89882329F1D62E662311F183
-:102EA0002091B001822F82958F7090E002970CF4F0
-:102EB00060C08091AB019091AC0198878F83198697
-:102EC000FB86EA862C87CE01079651C0E51731F1C3
-:102ED0004D875E878D859E856A8B0E94B1156A89B4
-:102EE00081112EC0C8010E949012A4C08F2F807F34
-:102EF00069F77E2DF98AE88A89890E94D6158BEABE
-:102F000091E00E949012EBEAF1E086E0DF011D9271
-:102F10008A95E9F70E941616D12CDBC07413D8CF1E
-:102F20006111D6CFD8011596FC93C8010E9490126A
-:102F3000EBEAF1E086E0DF011D928A95E9F7C9C06E
-:102F4000D62E662379F22091B001822F82958F7060
-:102F500090E0029774F08091AB019091AC019A835C
-:102F600089831B82FD82EC822E83CE0101960E9412
-:102F7000901286E0F801ABEAB1E001900D928A95DB
-:102F8000E1F70E9424166FC0E216F30628F0C7018D
-:102F9000821B930B9C0104C0209530952E0D3F1D84
-:102FA000283C310508F052C0D62E662309F49ACF8A
-:102FB000E5132CC074132AC08091B00180FD1DC0A0
-:102FC000982F92959F70C9F0D80115968C931597FC
-:102FD0009F3039F09F5F9295907F8F70892B159667
-:102FE0008C93C8010E94901286E0F801ABEAB1E030
-:102FF00001900D928A95E1F736C086E0F801ABEAC0
-:10300000B1E001900D928A95E1F763C04D875E872C
-:103010008D859E850E94B115882379F086E0F801A0
-:10302000ABEAB1E001900D928A95E1F70E94241677
-:103030000E941616DD24D3944CC08091B0018160AB
-:103040008093B001C8010E94901243C07E2DF98A7E
-:10305000E88A89890E94D615EBEAF1E086E0DF0173
-:103060001D928A95E9F70E94161633C0662309F46B
-:1030700039CF4D875E878D859E850E94B115882347
-:1030800009F430CFCBCF4D875E878D859E850E941A
-:10309000D41A292F22952F7030E0223031052CF4DC
-:1030A0009F7041F0811106C00CC0243031052CF412
-:1030B0009F7049F4805E883020F0C8010E94901211
-:1030C000CF2CDC2C06C0D80115969C91907F91F7EF
-:1030D000F8CF8D2D62960FB6F894DEBF0FBECDBF30
-:1030E000DF91CF911F910F91FF90EF90DF90CF90E4
-:1030F00008951F93CF93DF93CDB7DEB72C970FB60C
-:10310000F894DEBF0FBECDBF4F83588769877A879B
-:103110008B879C87CE0107960E948C168823C1F06E
-:103120002F8138858A859B85892B31F03F3F11F0AF
-:1031300080E003C02F3FE1F781E0811147C04F815C
-:10314000588569857A858B859C850E94E5153EC0EA
-:1031500086E0FE013796DE01119601900D928A9568
-:10316000E1F7FF81E8854A855B854115510531F01E
-:10317000EF3F31F481E0FF3F19F403C081E001C06B
-:1031800080E080FD23C020917A0130E0C9010196E2
-:10319000877099276091790170E086179707F1F1A0
-:1031A000F983EA835D834C8396E0929FD001939FDD
-:1031B000B00D1124A558BE4FFE01319601900D921D
-:1031C0009A95E1F780937A010E94F51516E08091B7
-:1031D000790190917A01891779F1189FC001112422
-:1031E00085589E4F0E948C16882331F1E091790119
-:1031F0001E9FF0011124E558FE4F408151816281EC
-:103200007381848195810E94E5158091790190E018
-:1032100001968770992780937901D9CF0E94AD15C7
-:1032200010927A0110927901EBEAF1E086E0DF0179
-:103230001D928A95E9F7CACF2C960FB6F894DEBF97
-:103240000FBECDBFDF91CF911F910895EF92FF92F6
-:103250000F931F93CF93DF93FC01009709F46FC086
-:10326000F12CEE24E394EF0121968491843740F40D
-:10327000843008F055C0813081F0823021F15FC088
-:10328000853709F447C0C0F19CE7980F903708F0E4
-:1032900056C08F770E94331245C08F010E5F1F4FBB
-:1032A000FE01849190E2980F983050F48770FE2DC3
-:1032B00001C0FF0F8A95EAF78F2F0E94B71B15C038
-:1032C0000E946B1114C08F010E5F1F4FFE0184918D
-:1032D00090E2980F983068F48770FE2D01C0FF0FC0
-:1032E0008A95EAF78F2F0E94BD1B0E94E01BE80120
-:1032F00019C00E943312FBCFCF010296FE01C49188
-:10330000CC2361F0EFE9FFE03197F1F700C0000056
-:10331000C150F6CFCF010296FE01F490EC0102C03D
-:103320000E946B118F2D882341F0EFE9FFE0319768
-:10333000F1F700C000008150F6CFFE0194CFDF917D
-:10334000CF911F910F91FF90EF9008950895609392
-:10335000B5017093B6018093B7019093B8010C94B6
-:1033600099150F931F930091B5011091B60120910B
-:10337000B7013091B801062B172B282B392B00935E
-:10338000B5011093B6012093B7013093B8011F9196
-:103390000F910C9499150F931F930091B501109103
-:1033A000B6012091B7013091B801062317232823D5
-:1033B00039230093B5011093B6012093B7013093E0
-:1033C000B8011F910F910C9499150F931F930091C1
-:1033D000B5011091B6012091B7013091B8010627CF
-:1033E0001727282739270093B5011093B60120939A
-:1033F000B7013093B8011F910F910C949915109259
-:10340000B1011092B2011092B3011092B4010C9468
-:10341000991541E050E060E070E004C0440F551F92
-:10342000661F771F8A95D2F74093B1015093B2017E
-:103430006093B3017093B4010C94991541E050E08E
-:1034400060E070E004C0440F551F661F771F8A9527
-:10345000D2F78091B1019091B201A091B301B091E6
-:10346000B401842B952BA62BB72B8093B10190939D
-:10347000B201A093B301B093B4010C94991541E04B
-:1034800050E060E070E004C0440F551F661F771FD6
-:103490008A95D2F740955095609570958091B101CD
-:1034A0009091B201A091B301B091B401842395230E
-:1034B000A623B7238093B1019093B201A093B301E7
-:1034C000B093B4010C94991541E050E060E070E0D5
-:1034D00004C0440F551F661F771F8A95D2F780914D
-:1034E000B1019091B201A091B301B091B4018427D0
-:1034F0009527A627B7278093B1019093B201A09397
-:10350000B301B093B4010C9499150F931F930091DC
-:10351000B1011091B2012091B3013091B401062B99
-:10352000172B282B392B0093B1011093B201209354
-:10353000B3013093B4011F910F910C9499150F931F
-:103540001F930091B1011091B2012091B30130910C
-:10355000B40106231723282339230093B1011093C4
-:10356000B2012093B3013093B4011F910F910C94D9
-:1035700099150F931F930091B1011091B201209101
-:10358000B3013091B4010627172728273927009364
-:10359000B1011093B2012093B3013093B4011F9194
-:1035A0000F910C9499150895CF92DF92EF92FF92AC
-:1035B0000F931F93CF93DF93EC01C090B501D09090
-:1035C000B601E090B701F090B8018091B1019091FF
-:1035D000B201A091B301B091B401C82AD92AEA2A54
-:1035E000FB2A0FE110E0B701A601002E04C076957A
-:1035F0006795579547950A94D2F740FF07C0BE01DB
-:10360000802F0E940D088130910539F40150110975
-:1036100050F7BE0180E00E940D08DF91CF911F910D
-:103620000F91FF90EF90DF90CF90089590910C0153
-:103630009923D9F090910D019923B9F0982F96957F
-:10364000969596959F3088F5E0910E01F0910F01C7
-:10365000E90FF11D877021E030E001C0220F8A954B
-:10366000EAF78181822B8183089540910E01509168
-:103670000F0120E030E09FEFFA01E20FF31F6281BB
-:10368000681799F09F3F19F4611101C0922F2F5FC5
-:103690003F4F2E30310581F79F3F39F0FA01E90F96
-:1036A000F11D97FDFA9582830895089590910C017C
-:1036B0009923E1F090910D019923C1F0982F9695EF
-:1036C000969596959F3020F5E0910E01F0910F01AF
-:1036D000E90FF11D877021E030E001C0220F8A95CB
-:1036E000EAF72095818128232183089540910E01D6
-:1036F00050910F0120E030E0FA01E20FF31F9281B8
-:10370000981301C012822F5F3F4F2E303105A1F771
-:10371000089581E090E0E0910E01F0910F01E80F33
-:10372000F91F1082019680319105A9F708959091B3
-:10373000CC01982B9093CC01089580959091CC0169
-:1037400098239093CC0108951092CC010895909104
-:10375000CB01982B9093CB01089580959091CB014C
-:1037600098239093CB0108951092CB0108959091E6
-:10377000CA01982B9093CA01089580959091CA012F
-:1037800098239093CA0108951092CA0108958093D6
-:10379000B90108951092B901089540910E01509118
-:1037A0000F0120E030E080E0FA01E20FF31F918189
-:1037B00091118F5F2F5F3F4F2F303105A9F708958B
-:1037C000E0910E01F0910F018091CC018083E09196
-:1037D0000E01F0910F0180819091CB01892B8083A4
-:1037E000E0910E01F0910F0180819091CA01892B27
-:1037F00080839091B901992361F0E0910E01F091DD
-:103800000F018081892B80830E94CD1B8111109232
-:10381000B90180910E0190910F010C944F10CF923D
-:10382000DF92EF92FF920F931F936C01EE24FF241F
-:10383000C114D104E104F10421F46B017C0180E0A6
-:1038400001C080E133272F2D1E2D0D2D01151105EF
-:103850002105310519F0885F68017901970186011A
-:10386000A4E03695279517950795AA95D1F70115E8
-:1038700011052105310519F08C5F68017901970167
-:103880008601F2E03695279517950795FA95D1F7B9
-:10389000011511052105310519F08E5F68017901C7
-:1038A000B701A6017695679557954795452B462B09
-:1038B000472B09F08F5F1F910F91FF90EF90DF90E2
-:1038C000CF9008958091E601843009F11092CE01E5
-:1038D00020E488E190E00FB6F894A895809360000A
-:1038E0000FBE2093600083B7817F846083BF83B75E
-:1038F000816083BF7894889583B78E7F83BF88E18A
-:103900000FB6F89480936000109260000FBE089587
-:1039100008950895CF930E94881C0E9437060E9444
-:10392000891CC0E08C2F0E942407811105C0CF5F45
-:10393000CE30C1F780E001C081E0CF9108950E94B0
-:10394000AD150E9443100C94480982E084BD93E0B9
-:1039500095BD9AEF97BD80936E0008952FB7F894A8
-:103960008091CF019091D001A091D101B091D2016D
-:103970002FBF0895CF92DF92EF92FF920F931F9384
-:103980002FB7F8944091CF015091D0016091D101AF
-:103990007091D2012FBF6A017B01EE24FF248C01BC
-:1039A00020E030E0C016D106E206F30610F44150E4
-:1039B0005109481B590BCA011F910F91FF90EF90BD
-:1039C000DF90CF9008951F920F920FB60F9211249F
-:1039D0008F939F93AF93BF938091CF019091D0012C
-:1039E000A091D101B091D2010196A11DB11D80938A
-:1039F000CF019093D001A093D101B093D201BF9198
-:103A0000AF919F918F910F900FBE0F901F901895BF
-:103A10000E94490DF8942FEF87EA91E621508040EB
-:103A20009040E1F700C0000087E090EBDC0180935C
-:103A3000EF019093F001A093F101B093F2012CE01B
-:103A400088E190E00FB6F894A895809360000FBECF
-:103A500020936000FFCFEF92FF920F931F93CF93BD
-:103A6000DF93E82EF12C8F2D0E942407C0E0D0E0D8
-:103A7000082F10E098010C2E02C0359527950A9466
-:103A8000E2F720FD05C02196C630D10599F709C09F
-:103A90006C2F7F2D80E00E94EB07E812F4CF81E0CD
-:103AA00005C0F3948EE0F812DECF80E0DF91CF9175
-:103AB0001F910F91FF90EF900895CF93C82F8CE244
-:103AC0000E942B1D882321F08C2FCF910C942B1D4D
-:103AD00080E0CF910895CF930E94B01E811102C063
-:103AE0000E94961EC5E6C15049F00E9437068FE33A
-:103AF0009CE90197F1F700C00000F5CF89E20E9430
-:103B00005D1D811111C18AE20E945D1D81110E941B
-:103B1000961E85E00E945D1D81110E94081D0E9475
-:103B2000BB1E8093CD0187E00E945D1D882399F123
-:103B30008BE10E945D1D882351F09091CD0191FB96
-:103B4000882780F921E0822780FB91F922C08EE04E
-:103B50000E945D1D882351F09091CD0192FB882732
-:103B600080F921E0822780FB92F913C080E10E9456
-:103B70005D1D9091CD01882341F093FB882780F94A
-:103B800021E0822780FB93F904C0892F809580FB78
-:103B900090F99093CD018091CD010E94BF1E0E94AB
-:103BA000CD1E8093E00180EE0E945D1D882341F0D0
-:103BB0008091E001982F909590FB80F98093E0012F
-:103BC00089E30E945D1D882359F09091E00191FBEB
-:103BD000882780F921E0822780FB91F99093E0010A
-:103BE00082EE0E945D1D882359F09091E00192FBC6
-:103BF000882780F921E0822780FB92F99093E001E9
-:103C000086EE0E945D1D882359F09091E00193FBA0
-:103C1000882780F921E0822780FB93F99093E001C7
-:103C200083EE0E945D1D882359F09091E00194FB82
-:103C3000882780F921E0822780FB94F99093E001A6
-:103C400085E30E945D1D882359F09091E00195FB6A
-:103C5000882780F921E0822780FB95F99093E00185
-:103C600081E30E945D1D882359F09091E00196FB4D
-:103C7000882780F921E0822780FB96F99093E00164
-:103C800081E10E945D1D882359F09091E00197FB2E
-:103C9000882780F921E0822780FB97F99093E00143
-:103CA0008091E0010E94D11E8091E00187FB88276E
-:103CB00080F980930D0187E20E945D1DC82F8EE17F
-:103CC0000E945D1D8111C2608FE10E945D1D811106
-:103CD000C46080E20E945D1D8111C86081E20E9483
-:103CE0005D1D8111C06182E20E945D1D8111C06273
-:103CF00083E20E945D1D8111C06484E20E945D1D0B
-:103D0000882311F0C06802C0CC2329F08C2F0E94B8
-:103D1000C81E6C2F03C00E94C41E682F70E080E094
-:103D200090E0CF910C94A719CF9108956DEE7EEF9E
-:103D300080E090E00E94EC2460E082E090E00E944D
-:103D4000DE2460E083E090E00E94DE2460E084E016
-:103D500090E00E94DE2460E085E090E00C94DE2498
-:103D600080E090E00E94D82421E08D3E9E4F09F033
-:103D700020E0822F089582E090E00C94D024682FF8
-:103D800082E090E00C94DE2483E090E00C94D02458
-:103D9000682F83E090E00C94DE2484E090E00C94A3
-:103DA000D024682F84E090E00C94DE248091D5012B
-:103DB00080FF0BC06091130185E0689FB001112462
-:103DC00075956795759567952AC081FF09C06091C3
-:103DD000130185E0689FB0011124759567951FC098
-:103DE00082FF07C06091130185E0689FB001112434
-:103DF00016C04091D6014423C9F0609112014617C4
-:103E000088F72091130185E0289F90011124429F9B
-:103E1000C001439F900D112470E00E94A2246038DD
-:103E2000710540F46115710539F002C065E070E07C
-:103E3000862F08958FE7089581E008958091D50138
-:103E400080FF08C06091110170E0759567957595C8
-:103E5000679521C081FF06C06091110170E07595E2
-:103E6000679519C082FF04C06091110170E010C015
-:103E70008091D6018823C1F0609110018617A0F7C8
-:103E800090911101989FC001112470E00E94A2241A
-:103E90006038710528F46115710521F0862F0895A9
-:103EA0008FE7089581E0089561E070E0F4CF803FEE
-:103EB00021F40E94D61E819504C0813F29F40E94FE
-:103EC000D61E8093D9010895823F21F40E94D61E08
-:103ED000819504C0833F29F40E94D61E8093D801A7
-:103EE0000895893F19F40E941E1F05C08A3F31F4CE
-:103EF0000E941E1F81958093DA0108958B3F21F463
-:103F00000E941E1F819504C08C3F29F40E941E1F31
-:103F10008093DB010895843F21F48091D701816073
-:103F200017C0853F21F48091D701826011C0863F80
-:103F300021F48091D70184600BC0873F21F48091E8
-:103F4000D701886005C0883F31F48091D701806136
-:103F50008093D70108958D3F21F48091D501816030
-:103F60000BC08E3F21F48091D501826005C08F3F48
-:103F700029F48091D50184608093D5010895803F14
-:103F800039F48091D90187FF6CC01092D90169C0C2
-:103F9000813F29F48091D9011816BCF362C0909139
-:103FA000D801823F29F497FF5CC01092D80159C014
-:103FB000833F19F41916CCF354C0893F41F4809122
-:103FC000DA0118160CF04DC01092DA014AC08A3F8F
-:103FD00029F48091DA0187FF44C0F6CF8B3F39F492
-:103FE0008091DB0187FF3DC01092DB013AC08C3F1E
-:103FF00029F48091DB011816BCF333C0843F21F40F
-:104000008091D7018E7F17C0853F21F48091D70121
-:104010008D7F11C0863F21F48091D7018B7F0BC02B
-:10402000873F21F48091D701877F05C0883F31F415
-:104030008091D7018F7E8093D70113C08D3F21F4EB
-:104040008091D5018E7F0BC08E3F21F48091D501E8
-:104050008D7F05C08F3F29F48091D5018B7F8093A0
-:10406000D5018091D80181110EC08091D9018111B3
-:104070000AC08091DA01811106C08091DB018111B3
-:1040800002C01092D601089587ED91E00E945A1067
-:104090000E94AE1C9093D4018093D30108951F9386
-:1040A000CF93DF938091D3019091D4010E94BA1CE9
-:1040B0004091D601442321F02091140130E006C044
-:1040C000209115015AE0259F900111248217930732
-:1040D00008F482C08091D8011091D901D091DA0101
-:1040E000C091DB01811107C0111105C0D11103C0BE
-:1040F000CC2309F471C04F3F19F04F5F4093D601B4
-:10410000181624F40E94D61E8093D8018091D801FD
-:1041100087FF05C00E94D61E81958093D801111695
-:1041200024F40E94D61E8093D9018091D90187FF83
-:1041300005C00E94D61E81958093D9016091D80157
-:10414000662339F11091D901112319F1772767FD01
-:104150007095872F972F0E94B32323E333E343E324
-:104160005FE30E9417240E9480236093D801612F8F
-:10417000772767FD7095872F972F0E94B32323E33E
-:1041800033E343E35FE30E9417240E94802360939C
-:10419000D9011D1624F40E941E1F8093DA0180911C
-:1041A000DA0187FF05C00E941E1F81958093DA0106
-:1041B0001C1624F40E941E1F8093DB018091DB01FA
-:1041C00087FF05C00E941E1F81958093DB01DF9150
-:1041D000CF911F910C944420DF91CF911F910895AE
-:1041E000E7EDF1E085E0DF011D928A95E9F7109295
-:1041F000D6011092D5010895833081F128F48130E1
-:1042000059F08230D1F00895853009F449C0B8F1F1
-:10421000863009F456C0089520911501862F90E04C
-:10422000820F911D8F3F910520F4620F609315015D
-:1042300008958FEF80931501089520911401862F22
-:1042400090E0820F911D8F3F910520F4620F6093E3
-:10425000140108958FEF80931401089520911301A4
-:10426000862F90E0820F911D8F3F910520F4620F01
-:104270006093130108958FEF8093130108952091A7
-:104280001201862F90E0820F911D8F3F910520F43F
-:10429000620F6093120108958FEF809312010895C9
-:1042A00020911101862F90E0820F911D8F3F910583
-:1042B00020F4620F6093110108958FEF8093110134
-:1042C000089520911001862F90E0820F911D8F3F5D
-:1042D000910520F4620F6093100108958FEF809391
-:1042E00010010895833011F128F4813049F08230B3
-:1042F00091F00895853081F120F18630C1F1089563
-:1043000080911501681720F4861B8093150108958C
-:1043100010921501089580911401681720F4861BEE
-:10432000809314010895109214010895809113014F
-:10433000681720F4861B80931301089510921301CF
-:10434000089580911201681720F4861B8093120152
-:10435000089510921201089580911101681720F4B8
-:10436000861B809311010895109211010895809188
-:104370001001681720F4861B809310010895109295
-:10438000100108958D3109F442C020F58E3009F4F2
-:1043900079C070F4873009F45EC020F4863009F4E7
-:1043A00042C033C08830D1F18B3009F4A7C02DC092
-:1043B000863109F4A3C038F4803109F46DC081312D
-:1043C00009F47BC022C0893109F498C08B3109F40B
-:1043D0004FC01BC0853309F479C048F4873209F413
-:1043E00075C008F478C0893209F470C00EC08334F7
-:1043F00038F48A3308F071C0883309F47FC005C0EF
-:10440000833409F463C08834C1F080E008950E94C9
-:104410003A230E9443100E94480970C00E94BB1EAC
-:104420000E94CD1E6BC08091CD01817F8E7F8093D5
-:10443000CD0181E08093DD0108950E94AD152FEF3D
-:1044400083ED90E3215080409040E1F700C00000F0
-:104450000E94081D53C09091CD01892F817090FF5B
-:1044600003C0917F9E7F26C091609093CD0146C08E
-:104470009091CD0191FB882780F921E0822780FB74
-:1044800091F913C09091CD0192FB882780F921E02A
-:10449000822780FB92F909C09091CD0193FB882778
-:1044A00080F921E0822780FB93F99093CD01882346
-:1044B00029F191609093CD0108950E94AD158091EE
-:1044C0000D0191E0892780930D0118C061E070E033
-:1044D00080E090E00FC023EE01C027EC280F61E0E0
-:1044E00070E080E090E004C0660F771F881F991F7E
-:1044F0002A95D2F70E94A7190E94AD1581E0089570
-:1045000080E0089580E00895CF93C82F8091DD0169
-:10451000813079F018F08230D1F184C0A0910E0181
-:10452000B0910F018C91813169F0823209F07CC029
-:1045300009C0A0910E01B0910F018C91813111F051
-:10454000823249F48C2F0E94802281111DC08C2F51
-:104550000E94C2211AC08C2F0E948222811114C095
-:10456000C43179F048F4CB3079F0C03109F060C043
-:1045700082E08093DD0108C0C93219F0C83321F010
-:1045800057C01092DD0154C081E0817053C0C93220
-:1045900089F118F5C43171F1A8F4C73009F046C0AB
-:1045A0008AE08093150194E19093140193E0909335
-:1045B00013018093120188E08093110188E28093B7
-:1045C000100134C0CE51C63088F5EC2FF0E0E65D26
-:1045D000FE4F80818093DC0129C0CE34E9F020F4C5
-:1045E000CB3421F56AE013C0C13579F0C235F1F45E
-:1045F00061E00DC08091DC01882319F01092DC018C
-:1046000015C081E08093DD0115C061E006C0809196
-:10461000DC010E94FC200AC06AE08091DC010E945B
-:10462000722104C01092DD0180E004C081E002C06C
-:1046300080E0ABCFCF910895E1E8F0E08081886021
-:1046400080838081816080838FB7F89493E090931A
-:10465000890090ED909388008FBF0895EFE6F0E019
-:104660008081826080830895EFE6F0E080818D7F15
-:1046700080830895EFE6F0E0808192E089278083CF
-:1046800008951F920F920FB60F9211242F933F930C
-:104690004F935F936F937F938F939F93AF93BF934A
-:1046A000EF93FF938091DE019091DF01019690934B
-:1046B000DF018093DE01811103C082E00E9448097E
-:1046C000E091DF01E695E695F0E0E258F74FE491DE
-:1046D0008091DE018E1303C080E00E944809FF91A3
-:1046E000EF91BF91AF919F918F917F916F915F916A
-:1046F0004F913F912F910F900FBE0F901F901895E3
-:1047000004D06894B1118DC0089570D088F09F577F
-:1047100090F0B92F9927B751A0F0D1F0660F771F0D
-:10472000881F991F1AF0BA95C9F712C0B13081F0ED
-:1047300077D0B1E0089574C0672F782F8827B85FCD
-:1047400039F0B93FCCF3869577956795B395D9F74E
-:104750003EF490958095709561957F4F8F4F9F4F58
-:104760000895E89409C097FB3EF490958095709564
-:1047700061957F4F8F4F9F4F9923A9F0F92F96E9AD
-:10478000BB279395F695879577956795B795F11122
-:10479000F8CFFAF4BB0F11F460FF1BC06F5F7F4FBF
-:1047A0008F4F9F4F16C0882311F096E911C07723D1
-:1047B00021F09EE8872F762F05C0662371F096E8DA
-:1047C000862F70E060E02AF09A95660F771F881FA9
-:1047D000DAF7880F9695879597F9089557FD9058C1
-:1047E000440F551F59F05F3F71F04795880F97FBB5
-:1047F000991F61F09F3F79F087950895121613066F
-:104800001406551FF2CF4695F1DF08C0161617069D
-:104810001806991FF1CF86957105610508940895D2
-:10482000E894BB2766277727CB0197F908950BD02B
-:1048300078C069D028F06ED018F0952309F05AC0DE
-:104840005FC01124EECFCADFA0F3959FD1F3950F7F
-:1048500050E0551F629FF001729FBB27F00DB11D04
-:10486000639FAA27F00DB11DAA1F649F6627B00D94
-:10487000A11D661F829F2227B00DA11D621F739F7D
-:10488000B00DA11D621F839FA00D611D221F749F8B
-:104890003327A00D611D231F849F600D211D822FD2
-:1048A000762F6A2F11249F5750408AF0E1F0882319
-:1048B0004AF0EE0FFF1FBB1F661F771F881F915026
-:1048C0005040A9F79E3F510570F014C0AACF5F3F3A
-:1048D000ECF3983EDCF3869577956795B795F79559
-:1048E000E7959F5FC1F7FE2B880F911D96958795E1
-:1048F00097F9089597F99F6780E870E060E0089560
-:104900009FEF80EC089500240A94161617061806E7
-:104910000906089500240A941216130614060506C3
-:104920000895092E0394000C11F4882352F0BB0F54
-:1049300040F4BF2B11F460FF04C06F5F7F4F8F4FB7
-:104940009F4F089597FB072E16F4009407D077FD2C
-:1049500009D00E94BC2407FC05D03EF490958195B7
-:104960009F4F0895709561957F4F0895EE0FFF1F3B
-:104970000590F491E02D0994AA1BBB1B51E107C0DF
-:10498000AA1FBB1FA617B70710F0A61BB70B881FDF
-:10499000991F5A95A9F780959095BC01CD0108956E
-:1049A000F999FECF92BD81BDF89A992780B50895F7
-:1049B000A8E1B0E042E050E00C94F324262FF999EE
-:1049C000FECF1FBA92BD81BD20BD0FB6F894FA9AF2
-:1049D000F99A0FBE019608950E94DE24272F0C94A9
-:1049E000DF24DC01CB01FC01F999FECF06C0F2BD4A
-:1049F000E1BDF89A319600B40D9241505040B8F79D
-:064A00000895F894FFCFB9
-:104A060020024A09D709B40980094D090101BA01F2
-:104A160028080A03140A3F4D36393F08F207BC0737
-:104A2600830716072F0748076107010203040506D7
-:044A36000708090064
+:100000000C94C7020C940B030C940B030C940B037D
+:100010000C940B030C940B030C940B030C940B0328
+:100020000C940B030C940B030C942A0E0C94FC0EF2
+:100030000C940B030C940B030C940B030C940B0308
+:100040000C940B030C947B230C940B030C940B0368
+:100050000C940B030C941F1D0C940B030C940B03BA
+:100060000C940B030C940B030C940B030C940B03D8
+:100070000C940B030C940B030C940B030C940B03C8
+:100080000C940B030C940B030C940B030C940B03B8
+:100090000C940B030C940B030C940B030C940B03A8
+:1000A0000C940B030C940B030C940B031C034E03D6
+:1000B0009A0335035E032D044A044D0450045E0484
+:1000C000610F830F6E10830F6E10C50FE80F6E1057
+:1000D0003D1050104A134A138B138B13CD13091480
+:1000E000091609162114091618151815E31509160D
+:1000F0000916F71500C801C802C803C804C805C816
+:10010000022001200030E100E00000001E00140089
+:1001100004001D0000074E001F001A0016001B00FF
+:10012000000F4C002000080007000600E2002A0033
+:100130002100150009001900E3004B002200170000
+:100140000A00050000004A0029002F0000002B02D1
+:1001500000004D002D00300000002B00000050007A
+:1001600023001C000B00110000004F0024001800A9
+:100170000D001000E700520025000C000E003600B4
+:10018000E6002C00260012000F003700000F2800A8
+:100190002700130033003800000751000520042019
+:1001A0000320E500E400000001000100010001005F
+:1001B000E00000003A001E02200222020007510067
+:1001C0003B001F0221022302000F28003C002F02E7
+:1001D00026022F00E2002C003D00300227023000F2
+:1001E000E30052003E0024023500350200005000BA
+:1001F0002900360200002B0000004F002D003702BE
+:1002000000002B0200004A003F003102380031009C
+:1002100000004D004000240021001E0027784B0004
+:100220004100250022001F0037744C0042002600C8
+:10023000230020002E7F2A004300380025022D00D5
+:100240002E774E000100010001000100287100001E
+:100250000100010001000100E00000004400660010
+:10026000A60000000007B50045000630F200083087
+:10027000F60000006800F000F100F100F400B600A4
+:1002800069000730F3000930F500B4006A00A900E6
+:10029000AA00A8000000B8002900F9000000FA0038
+:1002A0000000B9000000F9000000FA000000AC00F6
+:1002B0006B004600530000000000AB006C004A00D9
+:1002C00050004D004978A9006D00520051005100C6
+:1002D0004C74AE006E004B004F004E00000FAD009E
+:1002E0006F00B100B30000000007AA000100010088
+:1002F00001000100E40000000100010001003900DC
+:1003000001000000290001000100010001000100BE
+:1003100001000100010001000100010001000100D5
+:1003200001000100010001000100010001000100C5
+:1003300001000100010001000100010000000100B6
+:1003400001000100000001000000010001000100A7
+:100350000000010000000100010001000100010097
+:100360000000010001000100010001000100010086
+:100370000100010001000100010001000100010075
+:1003800001000100010001002A000100010001003C
+:10039000010001000100010001003900010000001E
+:1003A00016034500720067006F0044006F0078007C
+:1003B000200045005A000000160345007200670047
+:1003C0006F0044006F007800200045005A000000D4
+:1003D0000403090409026D00040100A0FA090400E5
+:1003E000000103010100092111010001223F000762
+:1003F00005810308000A0904010001030102000944
+:100400002111010001224D000705820308000A099D
+:10041000040200010300000009211101000122363D
+:10042000000705830308000A090403000103000014
+:100430000009211101000122390007058403100081
+:10044000011201100100000008EDFE071301000178
+:1004500002000105010906A101050719E029E715B8
+:1004600000250195087501810205081901290595E6
+:100470000575019102950175039101050719002980
+:100480007715002501957875018102C00501098065
+:10049000A101850216010026B7001A01002AB70043
+:1004A000751095018100C0050C0901A10185031695
+:1004B0000100269C021A01002A9C027510950181F8
+:1004C00000C005010902A1010901A10005091901E6
+:1004D0002905150025019505750181029501750312
+:1004E00081010501093009311581257F95027508C3
+:1004F000810609381581257F950175088106050C4F
+:100500000A38021581257F950175088106C0C0054E
+:10051000010906A101050719E029E7150025019544
+:1005200008750181029501750881010508190129E5
+:10053000059505750191029501750391010507194E
+:100540000029FF150025FF950675088100C00000F1
+:10055000000000000000000000010204060A0F175E
+:10056000202C3A4A5D71879DB3C7DAE9F5FCFFFCA0
+:10057000F5E9DAC7B39D87715D4A3A2C20170F0A57
+:100580000604020100000000000000000000112429
+:100590001FBECFEFDAE0DEBFCDBF04B603FE24C03E
+:1005A0008091F6019091F701A091F801B091F901C5
+:1005B0008730904BA740B04BB9F41092F6011092DF
+:1005C000F7011092F8011092F90114BE84B7877FE9
+:1005D00084BF88E10FB6F8948093600010926000A9
+:1005E0000FBEE0E0FFE3099511E0A0E0B1E0E4E830
+:1005F000FAE402C005900D92A433B107D9F721E0C7
+:10060000A4E3B1E001C01D92A63FB207E1F70E944A
+:10061000700B0C9440250C940000DC01462F50E038
+:100620004A30510508F05DC14A5A5F4F12962C912D
+:100630001297FA010C94F02480913A0190913B01B9
+:100640002223F1F0019690933B0180933A0180912F
+:10065000360190913701892B31F08091350191E07D
+:1006600089278093350181E09AC015968C91807F0F
+:100670002111BFC009F0D5C080913A0190913B0192
+:10068000019790933B0180933A01892B09F029C18E
+:1006900080913501811125C181E0A8C015968C910A
+:1006A000807F222349F12091360130913701882340
+:1006B00081F02115310569F48BE2C1C015968C914A
+:1006C000807F222319F12091360130913701811169
+:1006D000B1C0809138019091390101969093390110
+:1006E00080933801232B31F08091340191E08927E8
+:1006F0008093340182E053C0882351F08091360109
+:1007000090913701892B21F48BE2A4C081119AC00A
+:10071000809138019091390101979093390180932C
+:100720003801892B09F0DDC0809134018111D9C0D5
+:1007300082E05CC015963C912223A1F180913601A4
+:100740009091370101969093370180933601809103
+:100750003A0190913B01892B31F08091350191E074
+:100760008927809335018091380190913901892B37
+:1007700031F08091340191E0892780933401307FFA
+:1007800069F4E0910E01F0910F018081827231F0E5
+:1007900089E30E94D21189E30E949A1283E00E94A9
+:1007A0009D1A9FC0832F807FA1F030FD12C08091E1
+:1007B0003A0190913B01892B61F48091380190912D
+:1007C0003901892B31F485E30E94D21185E30E941F
+:1007D0009A128091360190913701019790933701D9
+:1007E00080933601892B09F07CC083E00E94BE1AF9
+:1007F00078C02091360130913701882329F02115E6
+:10080000310511F484E31BC080913A0190913B01C2
+:10081000019690933B0180933A01232B09F01DCF61
+:1008200022CF8091360190913701892B09F024CF96
+:1008300084E310C02115310509F04BCF81E30E94FC
+:10084000D2114FC08091360190913701892B09F068
+:100850005FCF81E30E949A1244C015963C9121110A
+:100860006DCF832F807F09F4B4CF30FDB2CF80915C
+:100870003A0190913B01892B09F0ABCF809138016F
+:1008800090913901892B09F0A4CF8EE20E94D211F8
+:100890008EE29DCF80EF90E005C080EF90E010C029
+:1008A00081EF90E0222329F00E94931F82EF90E0D5
+:1008B0000DC00E94FB1F82EF90E00FC081EF90E01F
+:1008C000222339F00E94931F83EF90E00E94931F30
+:1008D00006C00E94FB1F83EF90E00E94FB1F0E9456
+:1008E000802080E090E008950895E0910E01F0915D
+:1008F0000F018081827219F0259A2D9A06C00E94FC
+:10090000A91081FDF9CF25982D988091B90181FF1B
+:1009100003C0269A2E9A02C026982E988091B9017B
+:1009200082FF03C0279A2F9A089527982F98089539
+:100930000C94750456985E9825982D9826982E98B4
+:1009400027982F988FEF90E09093890080938800EC
+:1009500090938B0080938A0090938D0080938C00FD
+:10096000259A2D9A2FEF80E792E021508040904009
+:10097000E1F700C00000269A2E9A2FEF80E792E060
+:10098000215080409040E1F700C00000279A2F9A44
+:100990002FEF80E792E0215080409040E1F700C0C7
+:1009A000000025982D982FEF80E792E0215080409D
+:1009B0009040E1F700C0000026982E982FEF80E7C6
+:1009C00092E0215080409040E1F700C0000027985D
+:1009D0002F9856985E9825982D9826982E982798A7
+:1009E0002F98089589EA8093800089E080938100A0
+:1009F00024982C983F988AB18F748AB96E98479A38
+:100A00008BB1806B8BB9769A0E949A040C94740413
+:100A100080E28093000180913C0181110EC00E9410
+:100A2000570581E080933C012FEF83ED90E3215047
+:100A300080409040E1F700C0000080E40E945D0526
+:100A40008093000181112EC00E94870580930001D0
+:100A5000811128C00E94870580930001811122C066
+:100A60008FE30E9487058093000181111BC00E94C3
+:100A70007F0580E40E945D0580930001811112C012
+:100A80008CE00E9487058093000181110BC00E94B9
+:100A9000870580930001811105C08FE30E948705BF
+:100AA000809300010E947F058091000108951092BB
+:100AB000B9008AE08093B800089594EA9093BC004E
+:100AC0009091BC0097FFFCCF9091B900987F98302F
+:100AD00021F0903111F081E008958093BB0084E80B
+:100AE0008093BC008091BC0087FFFCCF8091B9004F
+:100AF000887F883111F0803471F780E0089584E9AF
+:100B00008093BC008091BC0084FDFCCF089580934D
+:100B1000BB0084E88093BC008091BC0087FFFCCFC1
+:100B20009091B900987F81E0983209F480E00895AF
+:100B300084E88093BC008091BC0087FFFCCF80914B
+:100B4000BB00089580910001811115C080E40E94CE
+:100B50005D058093000181110CC082E10E94870530
+:100B600080930001811105C08FEF0E94870580935B
+:100B700000010E947F0584B1807F84B985B1807FA8
+:100B800085B98AB1837F8AB98BB1837F8BB93E984F
+:100B9000469808950E940805809300010E94A205CE
+:100BA00080B38C7080BB81B3836F81BBECE4F1E0D8
+:100BB000AEE3B1E011921D9281E0EA35F807D1F77A
+:100BC0000C94F204BF92CF92DF92EF92FF920F93B8
+:100BD0001F93CF93DF9380910001882379F0809158
+:100BE0003D018F5F80933D01811108C00E9408057F
+:100BF00080930001811102C00E949A040EE311E06B
+:100C0000C0E0D0E0DD24D39482E0C82EEE24E3944B
+:100C1000F12CC73000F580910001811162C080E4A1
+:100C20000E945D0580930001811112C082E10E9443
+:100C300087058093000181110BC0C7010C2E01C0F4
+:100C4000880F0A94EAF780950E9487058093000137
+:100C50000E947F0546C0CA30A1F028F4C83059F080
+:100C6000C93061F005C0CC3089F070F0CD3089F02A
+:100C7000209A289810C0219A29980DC0229A2A9863
+:100C80000AC0239A2B9807C0529A01C0539A5B98C6
+:100C900002C03E9A4698E0EAEA95F1F78FB1799959
+:100CA0005AC092E081708D25892B7C9B02C090E018
+:100CB00001C094E0892B7D9B02C090E001C098E0C8
+:100CC000892B7E9B02C090E001C090E1892B9FB1EF
+:100CD0009095991F9927991F9295990F907E892B2E
+:100CE0000FC08091000181114BC080E40E945D051E
+:100CF00080930001882389F1B12C0E947F058B2D00
+:100D0000F8019081981719F08083C09201010E9428
+:100D1000A20521960F5F1F4FCE30D10509F079CF84
+:100D200080910101882371F1815080930101882312
+:100D300039F08FE99FE00197F1F700C0000022C071
+:100D4000ACE4B1E0EEE3F1E081918D9391E0EC341D
+:100D5000F907D1F717C090E0A5CF83E10E9487057E
+:100D6000809300018111C8CF81E40E945D058093CA
+:100D700000018111C1CF0E949805B82EB094BDCF5B
+:100D800080E0BECF0E94980481E0DF91CF911F9157
+:100D90000F91FF90EF90DF90CF90BF900895E82FD4
+:100DA000F0E0E45BFE4F808108950895089596E099
+:100DB000799FF001112494E5899FE00DF11D112424
+:100DC000E60FF11DEE0FFF1FE050FF4F859194914C
+:100DD0000895880F991F8C589040FC01859194913B
+:100DE0000895880F991F8C509F4FFC018591949115
+:100DF00008950F931F93CF93DF93EC01811520E3A8
+:100E0000920730F5811530E2930708F0B1C08B3BB3
+:100E1000910588F4883A910508F058C0853A910503
+:100E200008F049C08430910508F043C08130910535
+:100E300009F4B2C1AEC18F3F910509F0D0F5803FF2
+:100E4000910508F092C0805E9109089790F1A1C1C8
+:100E5000C11581E5D807A8F4C23090E5D90708F09C
+:100E60009FC0C11520E5D20709F486C008F092C0E2
+:100E7000C11580E4D80708F08CC18E011127106CD1
+:100E8000CCC1C11590E8D90758F4C11520E7D207A5
+:100E900008F07BC1C11530E6D30708F423C179C13E
+:100EA000C11580E9D80708F074C18E011F70106A5F
+:100EB000B4C18E01B2C1853A910509F470C1863A78
+:100EC000910509F46FC103E810E4A7C1883A9105C0
+:100ED00009F46BC1893A910509F46AC18A3A91050E
+:100EE00009F469C18B3A910509F468C18C3A9105FE
+:100EF00009F467C18D3A910509F466C1803B9105FB
+:100F000009F465C18E3A910509F464C18F3A9105DF
+:100F100009F463C1813B910509F462C1823B9105EB
+:100F200009F461C1833B910509F460C1843B9105DB
+:100F300009F45FC1853B910509F45EC1863B9105CB
+:100F400009F45DC1873B910509F45CC1883B9105BB
+:100F500009F45BC1893B910509F45AC18A3B9105AB
+:100F600009F059C10AE216E458C18C01106555C157
+:100F70009F700E94F10652C10E942C169FEF24E33D
+:100F80003CE0915020403040E1F700C000000E945A
+:100F9000441D43C18091D50181608093D5013DC13D
+:100FA0000E94EC1E811102C00E94D21E0E94091FE5
+:100FB00090E09093F6018093F501C23080E5D80768
+:100FC00021F48091F501816086C0C43090E5D90795
+:100FD00021F48091F50182607EC0C63020E5D20701
+:100FE00021F48091F501846076C0C83030E5D307E4
+:100FF00019F48091F50127C0CA3080E5D80721F4A3
+:101000008091F501806167C0CC3090E5D90721F46B
+:101010008091F50180625FC0CE3020E5D20721F4D7
+:101020008091F501806457C0C03130E5D30721F4C9
+:101030008091F50180684FC0C23180E5D80729F45E
+:101040008091F5018460886046C0C33090E5D9077F
+:1010500021F48091F5018E7F3EC0C53020E5D20796
+:1010600021F48091F5018D7F36C0C73030E5D3077C
+:1010700021F48091F5018B7F2EC0C93080E5D8071F
+:1010800019F48091F50126C0CB3090E5D90721F401
+:101090008091F5018F7E1FC0CD3020E5D20721F46D
+:1010A0008091F5018F7D17C0CF3030E5D30721F453
+:1010B0008091F5018F7B0FC0C13180E5D80721F405
+:1010C0008091F5018F7707C0C331D04531F480910D
+:1010D000F5018B7F877F8093F5018091F5010E9458
+:1010E0000D1F9BC08D2F99278F70992781309105F7
+:1010F000E9F48E01037011279C0102C0220F331FF7
+:101100000A95E2F789011C68CE0164E0880F991FF7
+:101110006A95E1F788279370082B192B73E0CC0FA1
+:10112000DD1F7A95E1F7C076DD272CC0823091056E
+:1011300029F41C2F0027016F106A6FC083309105BE
+:1011400061F4CE018370992701E010E002C0000F26
+:10115000111F8A95E2F71C680EC0049709F05DC064
+:10116000CE018370992701E010E002C0000F111F2B
+:101170008A95E2F71A6843E0CC0FDD1F4A95E1F744
+:10118000C07ED7700C2B1D2B48C08E011F701062C3
+:1011900044C000E010E041C001E010E03EC001E8C2
+:1011A00010E43BC002E810E438C002EE14E435C09D
+:1011B00009EE14E432C00AEE14E42FC005EB14E487
+:1011C0002CC006EB14E429C007EB14E426C00CEC99
+:1011D00014E423C00DEC14E420C003E815E41DC0A2
+:1011E0000AE815E41AC002E915E417C004E915E499
+:1011F00014C001E216E411C003E216E40EC004E2DA
+:1012000016E40BC005E216E408C006E216E405C0C9
+:1012100007E216E402C000E014E4C801DF91CF91B8
+:101220001F910F91089596E0799FF001112494E5A4
+:10123000899FE00DF11D1124E60FF11DEE0FFF1F38
+:10124000E050FF4F85919491803E9105E0F4803C01
+:10125000910558F58133910509F46FC048F489323E
+:10126000910509F463C08A32910509F46DC072C01A
+:1012700089339105E9F082389105D1F085339105E4
+:1012800009F44DC067C0833E910581F138F4803E7A
+:101290009105B9F0823E9105D9F05CC0863E91057A
+:1012A00061F1873E9105A1F155C00E94E9060895BC
+:1012B0002091F50120FD02C021FF4CC080EE90E09E
+:1012C00049C08091F50180FFF9CF89E390E042C0E9
+:1012D0008091F50182FF0EC08091F50184FF03C06B
+:1012E00080E090E037C083EE90E034C08091F5015B
+:1012F00082FFF2CF82EE90E02DC08091F50183FF56
+:101300000BC08091F50184FDEBCF87EE90E022C009
+:101310008091F50183FFF5CF86EE90E01BC08091B0
+:10132000F50185FF07C089E290E014C08091F501C6
+:1013300085FFF9CF85E390E00DC08091F50186FF30
+:1013400007C08AE290E006C08091F50186FFF9CFE0
+:1013500081E390E00E94F906089508950C94AD0988
+:1013600080916A010895CF93DF9300D01F92CDB78B
+:10137000DEB72091EC01243019F523E029839B830B
+:101380008A832093E9008FEF9091E800815095FDCA
+:1013900006C095ED9A95F1F700008111F5CF809187
+:1013A000E80085FF0DC040E050E063E070E0CE0152
+:1013B00001960E941D0C8091E8008E778093E800D2
+:1013C0000F900F900F90DF91CF910895CF93DF93FF
+:1013D00000D01F92CDB7DEB72091EC01243021F56B
+:1013E00022E029839B838A8383E08093E9008FEF47
+:1013F0009091E800815095FD06C095ED9A95F1F722
+:1014000000008111F5CF8091E80085FF0DC040E01C
+:1014100050E063E070E0CE0101960E941D0C8091C7
+:10142000E8008E778093E8000F900F900F90DF9187
+:10143000CF9108952091EC012430F1F422E0209323
+:10144000E9002FEF3091E800215035FD06C035ED61
+:101450003A95F1F700002111F5CF2091E80025FF22
+:101460000BC040E050E065E070E00E941D0C8091F0
+:10147000E8008E778093E8000895CF93DF93EC0126
+:101480008091EC01843009F046C090910C019923C1
+:10149000D9F090910D019923B9F08093E9008FEF75
+:1014A0009091E800815095FD06C095E19A95F1F77D
+:1014B00000008111F5CF8091E80085FF2CC040E04D
+:1014C00050E060E170E017C081E08093E9008FEFA9
+:1014D0009091E800815095FD06C095ED9A95F1F741
+:1014E00000008111F5CF8091E80085FF14C040E035
+:1014F00050E068E070E0CE010E941D0C8091E80091
+:101500008E778093E80080E1FE01AAE5B1E00190CA
+:101510000D928A95E1F7DF91CF9108958091EB01CB
+:10152000811109C00E94AF0D0E940C0E8091E20053
+:1015300084608093E20008951092EB01089508956D
+:101540000C9468230E94DB1C0E946E230E94A91049
+:101550000C94AE0942E061EC81E00E94290D42E06A
+:1015600061EC82E00E94290D42E061EC83E00E9480
+:10157000290D42E161EC84E00C94290D8091EE018B
+:10158000833009F455C030F4813071F0823009F4B1
+:101590008EC008958A3009F47AC08B3009F460C097
+:1015A000893009F09CC020C08091ED01813A09F09A
+:1015B00096C08091E800877F8093E8008091F101D8
+:1015C0009091F201892B21F060E080E090E003C06F
+:1015D00060E18AE591E070E00E94660C8091E8008D
+:1015E0008B778093E80008958091ED01813209F0B6
+:1015F00076C08091F1019091F201009719F0039764
+:1016000009F06DC08091E800877F8093E8008091A9
+:10161000E80082FD05C08091EC018111F8CF5FC028
+:101620008091F10080936A018091E8008B7753C02C
+:101630008091ED01813A09F052C08091F1019091C1
+:10164000F201892B09F04BC08091E800877F8093DD
+:10165000E8008091E80080FFFCCF80910C0136C04B
+:101660008091ED018132D9F58091F1019091F201E3
+:10167000892BA9F58091E800877F8093E8000E947C
+:101680005E0D8091EF0180930C010C942C168091DB
+:10169000ED01813221F58091E800877F8093E80099
+:1016A0000E945E0D8091F00180936B0108958091FE
+:1016B000ED01813AA1F48091E800877F8093E800F2
+:1016C0008091E80080FFFCCF80916B018093F10056
+:1016D0008091E8008E778093E8000C945E0D089569
+:1016E00084B7877F84BF88E10FB6F8948093600049
+:1016F000109260000FBE90E080E80FB6F8948093DF
+:101700006100909361000FBE0E94F8100E94AF0D1F
+:101710000E940C0E8091E20084608093E200789435
+:101720000E9487100E94FA1082E091E00E94A410AB
+:101730000E9456238091EC01853069F40E949B1C25
+:101740008091EA018823B1F30E94C61C882391F39B
+:101750000E94070CEFCF0E940011ECCF292F3327F6
+:1017600023303105A9F06CF42130310509F442C071
+:101770002230310509F043C08DE690E024ED33E0DE
+:1017800042C021323105C9F02232310519F137C08A
+:1017900099278130910541F08230910541F0892BE4
+:1017A00071F5E0EDF3E005C0E8EBF3E002C0E0EA3C
+:1017B000F3E0849190E09F0126C0643000F5E62FAD
+:1017C000F0E0EE0FFF1FEE5DFE4F2081318189E0DA
+:1017D00090E019C0643098F4E62FF0E0DF01AA0F22
+:1017E000BB1FA65EBE4F2D913C91EA5EFE4F8081ED
+:1017F00090E009C082E190E021E434E004C080E0A0
+:1018000090E020E030E0FA0131832083089580E108
+:1018100089BD82E189BD09B400FEFDCF8091D80069
+:101820008F7D8093D8008091E00082608093E000FB
+:101830008091E00081FDFCCF0895CF92DF92EF927E
+:10184000FF920F931F93CF93DF937C018B01EA01EB
+:101850000E947F0D811131C0209731F088819981DC
+:10186000081B190BE80EF91EC12CD12C011511050E
+:1018700019F18091E80085FD14C08091E8008E7711
+:101880008093E800209741F0888199818C0D9D1DFF
+:101890009983888385E011C00E947F0D882331F3EE
+:1018A0000CC0F70181917F018093F1000150110973
+:1018B000FFEFCF1ADF0ADACF80E0DF91CF911F91DF
+:1018C0000F91FF90EF90DF90CF9008952091F3015A
+:1018D0003091F4012617370748F06115710539F486
+:1018E0002091E8002E772093E80001C0B901FC01A7
+:1018F00020E061157105B9F18091EC01882309F4AC
+:1019000040C0853009F43FC08091E80083FD3DC0B0
+:101910008091E80082FF06C08091E80082FF26C027
+:1019200080E008958091E80080FFE3CF2091F300EC
+:101930008091F20090E0922B6115710551F0883092
+:10194000910538F421912093F100615071090196BD
+:10195000F3CF21E0089709F020E08091E8008E772E
+:101960008093E800C6CF2111C7CFD6CF8091EC017C
+:10197000882339F0853039F08091E80083FFCCCF9F
+:1019800004C082E0089583E0089581E008952091E5
+:10199000F3013091F4012617370748F061157105FE
+:1019A00039F42091E8002E772093E80001C0B901B6
+:1019B000FC0120E061157105C1F18091EC018823E3
+:1019C00009F441C0853009F440C08091E80083FDEE
+:1019D0003EC08091E80082FF06C08091E80082FF4F
+:1019E00027C080E008958091E80080FFE3CF209138
+:1019F000F3008091F20090E0922B6115710559F08F
+:101A00008830910540F424912093F1003196615083
+:101A100071090196F2CF21E0089709F020E080914A
+:101A2000E8008E778093E800C5CF2111C6CFD5CFCF
+:101A30008091EC01882339F0853039F08091E800FD
+:101A400083FFCBCF04C082E0089583E0089581E056
+:101A50000895982F973058F59093E900981739F02A
+:101A60007091EC002091ED005091F00003C0242F04
+:101A7000762F50E021FF19C03091EB003E7F30936C
+:101A8000EB003091ED003D7F3093ED003091EB00A5
+:101A900031603093EB007093EC002093ED00509395
+:101AA000F0002091EE0027FF07C09F5FD3CF8F701B
+:101AB0008093E90081E0089580E008958091ED0130
+:101AC00087FD05C08091E80080FF0EC012C08091A4
+:101AD000E80082FD05C08091EC018111F8CF0895E6
+:101AE0008091E8008B7708C08091EC018111EACFEA
+:101AF00008958091E8008E778093E80008958091A2
+:101B0000E4009091E50045E62091EC0020FF21C023
+:101B10002091E80020FD21C02091EC01222389F0D2
+:101B2000253089F02091EB0025FD0FC02091E400C5
+:101B30003091E5002817390739F3415041F0C901C8
+:101B4000E3CF82E0089583E0089581E0089584E082
+:101B500008952091E80022FFDFCF80E008950E94E1
+:101B60001D0E0E94250EE0EEF0E0808181608083F2
+:101B7000E8EDF0E080818F77808319BCA7EDB0E0BD
+:101B80008C918E7F8C9380818F7E80831092EB016D
+:101B900008950F931F93CF93DF930E941D0E0E9411
+:101BA000250EC8EDD0E088818F7788838881806892
+:101BB000888388818F7D888319BC1092EC011092F4
+:101BC000E8011092EA011092E90100EE10E0F8013C
+:101BD00080818B7F808388818160888342E060E0A0
+:101BE00080E00E94290DE1EEF0E080818E7F80830D
+:101BF000E2EEF0E080818160808380818860808374
+:101C0000F80180818E7F8083888180618883DF9165
+:101C1000CF911F910F910895E8EDF0E080818F7EC4
+:101C20008083E7EDF0E080818160808384E082BF83
+:101C300081E08093EB010C94C90DE8EDF0E0808128
+:101C40008E7F80831092E20008951092DA00109245
+:101C5000E10008951F920F920FB60F9211242F9357
+:101C60003F934F935F936F937F938F939F93AF9324
+:101C7000BF93EF93FF938091E10082FF0BC08091AF
+:101C8000E20082FF07C08091E1008B7F8093E1003A
+:101C90000E9486108091DA0080FF1FC08091D800DA
+:101CA00080FF1BC08091DA008E7F8093DA008091E4
+:101CB000D90080FF0DC080E189BD82E189BD09B4F2
+:101CC00000FEFDCF81E08093EC010E948E0A05C0EA
+:101CD00019BC1092EC010E949C0A8091E10080FFE7
+:101CE00019C08091E20080FF15C08091E2008E7FD4
+:101CF0008093E2008091E20080618093E200809115
+:101D0000D80080628093D80019BC85E08093EC01F4
+:101D10000E94A00A8091E10084FF30C08091E2001F
+:101D200084FF2CC080E189BD82E189BD09B400FE39
+:101D3000FDCF8091D8008F7D8093D8008091E10005
+:101D40008F7E8093E1008091E2008F7E8093E2009D
+:101D50008091E20081608093E2008091E801882315
+:101D600011F084E007C08091E30087FF02C083E0A8
+:101D700001C081E08093EC010E94A20A8091E10001
+:101D800083FF29C08091E20083FF25C08091E1009C
+:101D9000877F8093E10082E08093EC011092E8015C
+:101DA0008091E1008E7F8093E1008091E2008E7F40
+:101DB0008093E2008091E20080618093E20042E043
+:101DC00060E080E00E94290D8091F000886080939F
+:101DD000F0000E949F0AFF91EF91BF91AF919F91F8
+:101DE0008F917F916F915F914F913F912F910F90C4
+:101DF0000FBE0F901F9018951F920F920FB60F9263
+:101E000011242F933F934F935F936F937F938F93FF
+:101E10009F93AF93BF93CF93EF93FF93C091E9004C
+:101E2000CF708091EC001092E9008091F000877FE4
+:101E30008093F00078940E94380F1092E90080910E
+:101E4000F00088608093F000C093E900FF91EF916B
+:101E5000CF91BF91AF919F918F917F916F915F9142
+:101E60004F913F912F910F900FBE0F901F9018959B
+:101E70001F93CF93DF93CDB7DEB7AA970FB6F89431
+:101E8000DEBF0FBECDBFEDEEF1E08091F10081939A
+:101E900021E0E53FF207C9F70E94BE0A8091E80001
+:101EA00083FF1CC12091ED013091EE01832F90E062
+:101EB0008A30910508F012C1FC01E05AFF4F0C94E2
+:101EC000F024203881F0223809F008C18091F10116
+:101ED0008F708093E9008091EB0085FB882780F963
+:101EE0001092E90006C08091E9019091EA019111F8
+:101EF00082609091E800977F9093E8008093F100D2
+:101F00001092F100C5C0822F8D7F09F0E7C0222317
+:101F100019F0223061F0E2C08091EF01813009F0C8
+:101F2000DDC0333009F080E08093EA0128C0809161
+:101F3000EF01811124C02091F1012F7009F4CEC06E
+:101F40002093E9008091EB0080FF19C08091EB00A5
+:101F5000333011F4806211C080618093EB0081E026
+:101F600090E0022E01C0880F0A94EAF78093EA00FD
+:101F70001092EA008091EB0088608093EB00109251
+:101F8000E9008091E800877F86C02111A7C01091E9
+:101F9000EF011F778091E3008078812B8093E3002D
+:101FA0008091E800877F8093E8000E945E0D809119
+:101FB000E80080FFFCCF8091E30080688093E3001D
+:101FC000112311F083E001C082E08093EC0186C010
+:101FD0002058223008F082C08091EF019091F001EA
+:101FE0008C3D23E0920779F583E08A838AE2898336
+:101FF0004FB7F894DE01139620E03EE051E2E32F64
+:10200000F0E050935700E49120FF03C0E295EF7099
+:102010003F5FEF708E2F90E0EA3010F0C79601C05E
+:10202000C0968D939D932F5F243149F74FBF8091C8
+:10203000E800877F8093E8006AE270E0CE010196B5
+:102040000E94660C14C0AE014F5F5F4F6091F101BA
+:102050000E94AE0B009709F441C02091E800277F51
+:102060002093E800BC0189819A810E94C70C80916D
+:10207000E8008B778093E80031C0203879F58091B3
+:10208000E800877F8093E8008091E8018093F10069
+:102090008091E8008E778093E8000E945E0D1EC05C
+:1020A00021111CC09091EF019230C0F48091E800A2
+:1020B000877F8093E8009093E8010E945E0D8091F5
+:1020C000E801811104C08091E30087FF02C084E031
+:1020D00001C081E08093EC010E94AA0A8091E8008F
+:1020E00083FF0AC08091E800877F8093E800809199
+:1020F000EB0080628093EB00AA960FB6F894DEBFE7
+:102100000FBECDBFDF91CF911F9108950895CF935A
+:102110008091EC018823B1F08091E9008F7090915B
+:10212000EC0090FF02C090E801C090E0C92FC82BDE
+:102130001092E9008091E80083FD0E94380FCF7073
+:10214000C093E900CF91089590937101809370013D
+:102150000895E0917001F0917101309721F00190A4
+:10216000F081E02D099480E00895E0917001F091F4
+:102170007101309721F00280F381E02D09940895D8
+:10218000E0917001F0917101309721F00480F581A8
+:10219000E02D0994089520916E0130916F0182170E
+:1021A000930771F090936F0180936E01E09170013D
+:1021B000F0917101309721F00680F781E02D0994AC
+:1021C000089520916C0130916D018217930771F091
+:1021D00090936D0180936C01E0917001F091710119
+:1021E000309721F00084F185E02D09940895089539
+:1021F0000C94F7100E94E11C0E94CA050C94A71DC4
+:10220000CF92DF92EF92FF920F931F93CF93DF93C2
+:10221000CDB7DEB72B970FB6F894DEBF0FBECDBF9C
+:102220000E94E20533E7E32E31E0F32E00E010E0F8
+:10223000C02E802F0E94CF06F701D1907F01D826B3
+:10224000B1F40F5F1F4F0E30110591F78FEF8983A7
+:102250008A831B820E94EA1C8160782F9D838C8375
+:1022600049815A816B818D810E94A31141C0909157
+:10227000D50191FF04C08B870E94D5068B8520E095
+:1022800030E04D2D50E0922FBA01022E02C075951C
+:1022900067950A94E2F760FF25C02E83CF82EE2473
+:1022A000E394F12C02C0EE0CFF1C9A95E2F790E04B
+:1022B0008E219F2121E0892B09F420E028870E94AC
+:1022C000EA1C8160782F9A8789874E815F816885B3
+:1022D0008A850E94A311F801ED58FE4F80818E255A
+:1022E000808306C02F5F3F4F2630310561F6A9CFAE
+:1022F0000E948B20109172010E94A9101817A1F062
+:102300000E94A910809372012B960FB6F894DEBF3D
+:102310000FBECDBFDF91CF911F910F91FF90EF9036
+:10232000DF90CF900C94AE092B960FB6F894DEBFD9
+:102330000FBECDBFDF91CF911F910F91FF90EF9016
+:10234000DF90CF900895CF93DF93CDB7DEB72B9773
+:102350000FB6F894DEBF0FBECDBF4F835887698795
+:102360007A878B87DE01119686E0FD0111928A95AE
+:10237000E9F785E0FE01379601900D928A95E1F725
+:1023800049815A816B817C818D819E810E94F818E0
+:102390002B960FB6F894DEBF0FBECDBFDF91CF9165
+:1023A00008950895CF93C82F882309F4C1C08238B7
+:1023B00059F40E94A91081FDBBC089E30E94A21BB1
+:1023C0000E946C1C89E30CC0833879F40E94A91028
+:1023D00080FDAEC083E50E94A21B0E946C1C83E5B9
+:1023E0000E94E21BCF910C946C1C843859F40E941B
+:1023F000A91082FD9DC087E40E94A21B0E946C1C54
+:1024000087E4EECF8CEF8C0F813A48F48C2F0E943A
+:10241000BE2281118DC08C2F0E94A21BE3CF80E2CF
+:102420008C0F883048F4C77081E001C0880FCA95CE
+:10243000EAF70E94231CD6CF8BE58C0F833078F40B
+:10244000C53A29F0C63A31F482E890E005C081E847
+:1024500090E002C083E890E0CF910C94CB1088E527
+:102460008C0F833108F064C0C83A39F1C93A41F1A0
+:10247000CA3A49F1CB3A51F1CC3A59F1CD3A61F12E
+:10248000C03B69F1CE3A71F1CF3A79F1C13B81F1AC
+:10249000C23B89F1C33B91F1C43B99F1C53BA1F12A
+:1024A000C63BA9F1C73BB1F1C83BB9F1C93BC1F18A
+:1024B000CA3BC9F58AE292E038C082EE90E035C0AE
+:1024C00089EE90E032C08AEE90E02FC085EB90E07C
+:1024D0002CC086EB90E029C087EB90E026C08CEC06
+:1024E00090E023C08DEC90E020C083E891E01DC017
+:1024F0008AE891E01AC082E991E017C084E991E08E
+:1025000014C081E292E011C083E292E00EC084E246
+:1025100092E00BC085E292E008C086E292E005C03E
+:1025200087E292E002C080E090E0CF910C94E1104D
+:10253000CF910895882309F44BC0823859F40E9442
+:10254000A91081FF45C089E30E94A21B0E946C1C58
+:1025500089E30CC0833871F40E94A91080FF38C051
+:1025600083E50E94A21B0E946C1C83E50E94E21B73
+:102570000C946C1C843859F40E94A91082FF28C066
+:1025800087E40E94A21B0E946C1C87E4EFCF9CEFA3
+:10259000980F913A58F390E2980F983050F4877062
+:1025A00091E001C0990F8A95EAF7892F0E94291CB2
+:1025B000DFCF9BE5980F933020F480E090E00C94FF
+:1025C000CB10885A833120F480E090E00C94E11025
+:1025D0000895882321F00E94231C0C946C1C0895FC
+:1025E000882321F00E94291C0C946C1C0895CF9222
+:1025F000DF92EF92FF920F931F93CF93DF93CDB7AC
+:10260000DEB728970FB6F894DEBF0FBECDBF8C01A2
+:1026100085E0F801DE01119601900D928A95E1F7AF
+:10262000F801D080E180F280558152955F7023815E
+:102630003481232B39F0FFEFEF1206C081E0DF1267
+:1026400003C003C081E001C080E080FDE2C2C80198
+:102650005F830E94D111D982EA8269817A818F2DAC
+:102660000E949E1B9E8388870E94521B0E94251AEF
+:102670004E815F816885FF2029F00E94401C68859B
+:102680005F814E81E42FE295EF70F0E0E659FF4F55
+:102690000C94F024842F807F142F1F70882311F056
+:1026A0001295107FFF20B1F0112309F467C280E278
+:1026B000860F883028F4812F68870E94231C04C06D
+:1026C000812F68870E94331C688568870E946C1C74
+:1026D000688554C2862F68870E949A1268851123E4
+:1026E00009F497C2605E812F683018F40E94291C9B
+:1026F00002C00E94391C28960FB6F894DEBF0FBEA8
+:10270000CDBFDF91CF911F910F91FF90EF90DF90A0
+:10271000CF900C946C1C242F207F842F8F7020323C
+:1027200011F08295807F662319F0613019F12BC07A
+:10273000FF20B1F0552309F493C1513009F090C145
+:1027400028960FB6F894DEBF0FBECDBFDF91CF91B4
+:102750001F910F91FF90EF90DF90CF900C94531C3E
+:10276000552319F0513009F454C28E830E94561C2F
+:102770008E8189C1FF2021F0523008F04AC270C119
+:10278000511147C280C1FF2021F0552309F468C1CF
+:10279000F5C1552309F477C105C2242F2695269546
+:1027A000237030E02115310521F021303105C9F0C9
+:1027B00030C2FF2021F0862F942F937002C080E05A
+:1027C00090E028960FB6F894DEBF0FBECDBFDF9124
+:1027D000CF911F910F91FF90EF90DF90CF900C94CD
+:1027E000CB10FF2021F0862F942F937002C080E041
+:1027F00090E028960FB6F894DEBF0FBECDBFDF91F4
+:10280000CF911F910F91FF90EF90DF90CF900C949C
+:10281000E110862FFF2019F00E94931F02C00E9432
+:10282000FB1F28960FB6F894DEBF0FBECDBFDF9119
+:10283000CF911F910F91FF90EF90DF90CF900C946C
+:102840008020842F837009F076C0F110E2C1262F1A
+:10285000229526952770220F220F862F8F70C82E63
+:10286000D12CE12CF12C022E04C0CC0CDD1CEE1C72
+:10287000FF1C0A94D2F764FF10C06FE070E080E0A4
+:1028800090E004C0660F771F881F991F2A95D2F722
+:10289000609570958095909503C060E070E0CB01E5
+:1028A000242F269526952370422F50E04230510563
+:1028B000D1F04330510559F16C297D298E299F298A
+:1028C0004130510541F128960FB6F894DEBF0FBE96
+:1028D000CDBFDF91CF911F910F91FF90EF90DF90CF
+:1028E000CF900C944A1A6C297D298E299F2928960D
+:1028F0000FB6F894DEBF0FBECDBFDF91CF911F9111
+:102900000F91FF90EF90DF90CF900C94641A0E948B
+:102910004A1AC701B60128960FB6F894DEBF0FBE5B
+:10292000CDBFDF91CF911F910F91FF90EF90DF907E
+:10293000CF900C94301AFF2019F0842F817001C0C1
+:102940008695882309F465C1262F22952695277040
+:10295000220F220F862F8F70C82ED12CE12CF12C44
+:10296000022E04C0CC0CDD1CEE1CFF1C0A94D2F716
+:1029700064FF10C06FE070E080E090E004C0660F7C
+:10298000771F881F991F2A95D2F7609570958095BB
+:10299000909503C060E070E0CB01242F269526952A
+:1029A0002370422F50E042305105D1F043305105A1
+:1029B00059F16C297D298E299F294130510541F11A
+:1029C00028960FB6F894DEBF0FBECDBFDF91CF9132
+:1029D0001F910F91FF90EF90DF90CF900C941E1BF2
+:1029E0006C297D298E299F2928960FB6F894DEBF81
+:1029F0000FBECDBFDF91CF911F910F91FF90EF9050
+:102A0000DF90CF900C94381B0E941E1BC701B601AB
+:102A100028960FB6F894DEBF0FBECDBFDF91CF91E1
+:102A20001F910F91FF90EF90DF90CF900C94041BBB
+:102A3000603FC9F118F4603E50F49BC0623F09F456
+:102A400060C008F44AC0633F09F46FC092C0162FFB
+:102A50001F70842F8F71FF2099F00E949D1A812F83
+:102A600028960FB6F894DEBF0FBECDBFDF91CF9191
+:102A70001F910F91FF90EF90DF90CF900C94E9128F
+:102A80000E94BE1A812F28960FB6F894DEBF0FBEA3
+:102A9000CDBFDF91CF911F910F91FF90EF90DF900D
+:102AA000CF900C94F012FF20A1F05111B2C0842FEE
+:102AB0008F7128960FB6F894DEBF0FBECDBFDF91A1
+:102AC000CF911F910F91FF90EF90DF90CF900C94DA
+:102AD000E31A523008F09DC0EACFFF20A1F0842F06
+:102AE0008F7128960FB6F894DEBF0FBECDBFDF9171
+:102AF000CF911F910F91FF90EF90DF90CF900C94AA
+:102B00009D1AFF2061F3842F8F7128960FB6F894D9
+:102B1000DEBF0FBECDBFDF91CF911F910F91FF9010
+:102B2000EF90DF90CF900C94BE1AFF2091F0842F8D
+:102B30008F7128960FB6F894DEBF0FBECDBFDF9120
+:102B4000CF911F910F91FF90EF90DF90CF900C9459
+:102B5000881A28960FB6F894DEBF0FBECDBFDF915E
+:102B6000CF911F910F91FF90EF90DF90CF900C9439
+:102B70007E1AFF20A1F0552309F4B1CF862F2896A5
+:102B80000FB6F894DEBF0FBECDBFDF91CF911F917E
+:102B90000F91FF90EF90DF90CF900C94D2115523BE
+:102BA00009F4B1CF862F28960FB6F894DEBF0FBE7A
+:102BB000CDBFDF91CF911F910F91FF90EF90DF90EC
+:102BC000CF900C949A124F70C8010E940D03289662
+:102BD0000FB6F894DEBF0FBECDBFDF91CF911F912E
+:102BE0000F91FF90EF90DF90CF900C94A5194F704C
+:102BF000C80128960FB6F894DEBF0FBECDBFDF9197
+:102C0000CF911F910F91FF90EF90DF90CF900C9498
+:102C1000D60628960FB6F894DEBF0FBECDBFDF9163
+:102C2000CF911F910F91FF90EF90DF90CF9008957B
+:102C30000E94401C0E94501C0E94151C0E946C1C8B
+:102C40000E942C210E94802080E090E00E94CB1006
+:102C500080E090E00C94E1100E94301C0C94181657
+:102C60000E94931B292F22952F7030E02C303105C4
+:102C70004CF42A3031056CF42250310922303105F0
+:102C800090F407C02C30310551F02F30310539F068
+:102C90000AC0803E10F0803F31F481E0089593FB3C
+:102CA000882780F9089580E00895CF93DF9300D0BE
+:102CB00000D01F92CDB7DEB70F900F900F900F90FE
+:102CC0000F90DF91CF910895CF93DF9300D000D084
+:102CD00000D0CDB7DEB726960FB6F894DEBF0FBE94
+:102CE000CDBFDF91CF9108951F93CF93DF93C09114
+:102CF000810116E080918201C81799F0D0E01C9FF5
+:102D0000F0011D9FF00D1124ED57FE4F40815181C0
+:102D100062817381848195810E9464162196C770B7
+:102D2000E9CFDF91CF911F9108954091B301509168
+:102D3000B4016091B5017091B6018091B701909195
+:102D4000B8010C946416CF938091B80182958F706E
+:102D500009F05FC08091B501882309F45AC0209121
+:102D60008101A09182016091B3017091B4018091C1
+:102D7000B6019091B70131E06F3F09F030E0B32F19
+:102D8000C6E02A1709F445C0009721F07F3F21F4DF
+:102D90004B2F03C041E001C040E030E040FD35C0B2
+:102DA000C29FF001C39FF00D1124ED57FE4F4181EA
+:102DB00074132BC04081641328C04281411125C087
+:102DC000438154814817590710F441505109481B59
+:102DD000590B483C5105C8F48091B8018F7080614F
+:102DE0008093B80186E0829FF001839FF00D11244B
+:102DF000E857FE4F80818F708061808383EB91E084
+:102E00000E94F712CF910C9474162F5F3F4F2770DA
+:102E1000B8CFCF910895CF92DF92EF92FF920F93A8
+:102E20001F93CF93DF93CDB7DEB762970FB6F894B9
+:102E3000DEBF0FBECDBF8C0185E0F801DE011D961F
+:102E400001900D928A95E1F7D8014C9111965C9111
+:102E5000119712966C9112971396ED90FC9014971F
+:102E60007091B301E091B4012091B6013091B701A6
+:102E70002115310531F0EF3F31F481E07F3F19F446
+:102E800003C081E001C080E0B82FB170CB2E80FD7F
+:102E90006CC1D090B501DD2009F4F5C0F091B80106
+:102EA000E216F30638F0C701821B930B883C9105AC
+:102EB00048F09BC0209530952E0D3F1D283C3105D4
+:102EC00008F093C08F2F807F09F052C0E51314C023
+:102ED000741312C0D62E61110FC0FF70F061F09311
+:102EE000B8010E94951683EB91E00E94F712809141
+:102EF000B801F80185836CC1EF2831F05F3F31F4F0
+:102F000081E04F3F19F403C081E001C080E080FD03
+:102F100003C081E0862701C080E0F82FF170FF2E0A
+:102F200080FF1CC0809181012091820136E08217D0
+:102F300009F428C190E0389FF001399FF00D112469
+:102F4000ED57FE4F7181571306C07081471303C0C0
+:102F50007281671303C001968770E9CFD62E66236E
+:102F600009F436C18091B80181608093B80153C0E3
+:102F7000E51308C0741306C0611104C0D80115968A
+:102F8000FC93AEC04D875E878D859E856A8B0E94BF
+:102F900030166A89882329F1D62E662311F12091F3
+:102FA000B801822F82958F7090E002970CF460C078
+:102FB0008091B3019091B40198878F831986FB8625
+:102FC000EA862C87CE01079651C0E51731F14D876F
+:102FD0005E878D859E856A8B0E9430166A89811175
+:102FE0002EC0C8010E94F712A4C08F2F807F69F7FE
+:102FF0007E2DF98AE88A89890E94551683EB91E033
+:103000000E94F712E3EBF1E086E0DF011D928A9562
+:10301000E9F70E949516D12CDBC07413D8CF61114B
+:10302000D6CFD8011596FC93C8010E94F712E3EBA6
+:10303000F1E086E0DF011D928A95E9F7C9C0D62E3E
+:10304000662379F22091B801822F82958F7090E0EB
+:10305000029774F08091B3019091B4019A838983AF
+:103060001B82FD82EC822E83CE0101960E94F71214
+:1030700086E0F801A3EBB1E001900D928A95E1F7AB
+:103080000E94A3166FC0E216F30628F0C701821B48
+:10309000930B9C0104C0209530952E0D3F1D283CBC
+:1030A000310508F052C0D62E662309F49ACFE513F5
+:1030B0002CC074132AC08091B80180FD1DC0982FC8
+:1030C00092959F70C9F0D80115968C9315979F30F3
+:1030D00039F09F5F9295907F8F70892B15968C9316
+:1030E000C8010E94F71286E0F801A3EBB1E001905D
+:1030F0000D928A95E1F736C086E0F801A3EBB1E0C6
+:1031000001900D928A95E1F763C04D875E878D85AA
+:103110009E850E943016882379F086E0F801A3EBA3
+:10312000B1E001900D928A95E1F70E94A3160E94EA
+:103130009516DD24D3944CC08091B80181608093B2
+:10314000B801C8010E94F71243C07E2DF98AE88AAF
+:1031500089890E945516E3EBF1E086E0DF011D92BC
+:103160008A95E9F70E94951633C0662309F439CF92
+:103170004D875E878D859E850E943016882309F4D1
+:1031800030CFCBCF4D875E878D859E850E94931B68
+:10319000292F22952F7030E0223031052CF49F70BA
+:1031A00041F0811106C00CC0243031052CF49F7011
+:1031B00049F4805E883020F0C8010E94F712CF2CBD
+:1031C000DC2C06C0D80115969C91907F91F7F8CF22
+:1031D0008D2D62960FB6F894DEBF0FBECDBFDF9186
+:1031E000CF911F910F91FF90EF90DF90CF900895B6
+:1031F0001F93CF93DF93CDB7DEB72C970FB6F8941C
+:10320000DEBF0FBECDBF4F83588769877A878B8714
+:103210009C87CE0107960E940B178823C1F02F814F
+:1032200038858A859B85892B31F03F3F11F080E0FE
+:1032300003C02F3FE1F781E0811147C04F815885DE
+:1032400069857A858B859C850E9464163EC086E0E0
+:10325000FE013796DE01119601900D928A95E1F7F5
+:10326000FF81E8854A855B854115510531F0EF3FC7
+:1032700031F481E0FF3F19F403C081E001C080E038
+:1032800080FD23C02091820130E0C9010196877042
+:1032900099276091810170E086179707F1F1F98312
+:1032A000EA835D834C8396E0929FD001939FB00D9B
+:1032B0001124AD57BE4FFE01319601900D929A95A3
+:1032C000E1F7809382010E94741616E080918101DB
+:1032D00090918201891779F1189FC00111248D57AF
+:1032E0009E4F0E940B17882331F1E09181011E9FB0
+:1032F000F0011124ED57FE4F4081518162817381AD
+:10330000848195810E9464168091810190E00196EC
+:103310008770992780938101D9CF0E942C16109233
+:10332000820110928101E3EBF1E086E0DF011D9262
+:103330008A95E9F7CACF2C960FB6F894DEBF0FBE78
+:10334000CDBFDF91CF911F910895EF92FF920F9320
+:103350001F93CF93DF93FC01009709F46FC0F12C0A
+:10336000EE24E394EF0121968491843740F4843075
+:1033700008F055C0813081F0823021F15FC085377F
+:1033800009F447C0C0F19CE7980F903708F056C089
+:103390008F770E949A1245C08F010E5F1F4FFE016A
+:1033A000849190E2980F983050F48770FE2D01C000
+:1033B000FF0F8A95EAF78F2F0E94431C15C00E94C9
+:1033C000D21114C08F010E5F1F4FFE01849190E255
+:1033D000980F983068F48770FE2D01C0FF0F8A9512
+:1033E000EAF78F2F0E94491C0E946C1CE80119C04B
+:1033F0000E949A12FBCFCF010296FE01C491CC230A
+:1034000061F0EFE9FFE03197F1F700C00000C15033
+:10341000F6CFCF010296FE01F490EC0102C00E94AB
+:10342000D2118F2D882341F0EFE9FFE03197F1F7BA
+:1034300000C000008150F6CFFE0194CFDF91CF9104
+:103440001F910F91FF90EF90089508956093BD0133
+:103450007093BE018093BF019093C0010C94181625
+:103460000F931F930091BD011091BE012091BF01E8
+:103470003091C001062B172B282B392B0093BD014F
+:103480001093BE012093BF013093C0011F910F9193
+:103490000C9418160F931F930091BD011091BE015B
+:1034A0002091BF013091C00106231723282339231F
+:1034B0000093BD011093BE012093BF013093C00162
+:1034C0001F910F910C9418160F931F930091BD013B
+:1034D0001091BE012091BF013091C001062717272E
+:1034E000282739270093BD011093BE012093BF0107
+:1034F0003093C0011F910F910C9418161092B901CE
+:103500001092BA011092BB011092BC010C941816D3
+:1035100041E050E060E070E004C0440F551F661FBA
+:10352000771F8A95D2F74093B9015093BA016093FF
+:10353000BB017093BC010C94181641E050E060E0B0
+:1035400070E004C0440F551F661F771F8A95D2F79D
+:103550008091B9019091BA01A091BB01B091BC01D9
+:10356000842B952BA62BB72B8093B9019093BA018E
+:10357000A093BB01B093BC010C94181641E050E03D
+:1035800060E070E004C0440F551F661F771F8A95E6
+:10359000D2F740955095609570958091B9019091C2
+:1035A000BA01A091BB01B091BC0184239523A6234D
+:1035B000B7238093B9019093BA01A093BB01B09354
+:1035C000BC010C94181641E050E060E070E004C0CB
+:1035D000440F551F661F771F8A95D2F78091B90156
+:1035E0009091BA01A091BB01B091BC0184279527AD
+:1035F000A627B7278093B9019093BA01A093BB0186
+:10360000B093BC010C9418160F931F930091B9014D
+:103610001091BA012091BB013091BC01062B172BF0
+:10362000282B392B0093B9011093BA012093BB01C9
+:103630003093BC011F910F910C9418160F931F9398
+:103640000091B9011091BA012091BB013091BC01E8
+:1036500006231723282339230093B9011093BA01B5
+:103660002093BB013093BC011F910F910C9418164D
+:103670000F931F930091B9011091BA012091BB01E2
+:103680003091BC0106271727282739270093B90155
+:103690001093BA012093BB013093BC011F910F918D
+:1036A0000C9418160895CF92DF92EF92FF920F9329
+:1036B0001F93CF93DF93EC01C090BD01D090BE016A
+:1036C000E090BF01F090C0018091B9019091BA01E2
+:1036D000A091BB01B091BC01C82AD92AEA2AFB2AD1
+:1036E0000FE110E0B701A601002E04C076956795A2
+:1036F000579547950A94D2F740FD05C0015011092E
+:1037000088F780E007C0BE01802F0E94130901974F
+:10371000A9F3802FDF91CF911F910F91FF90EF9030
+:10372000DF90CF900895CF93DF93EC010E94531B5D
+:10373000BE010E941309DF91CF910895CB010E9431
+:10374000931B089590910C019923D9F090910D014C
+:103750009923B9F0982F9695969596959F3088F570
+:10376000E0910E01F0910F01E90FF11D877021E04A
+:1037700030E001C0220F8A95EAF78181822B818394
+:10378000089540910E0150910F0120E030E09FEF2D
+:10379000FA01E20FF31F6281681799F09F3F19F455
+:1037A000611101C0922F2F5F3F4F2E30310581F7FD
+:1037B0009F3F39F0FA01E90FF11D97FDFA958283D9
+:1037C0000895089590910C019923E1F090910D01D5
+:1037D0009923C1F0982F9695969596959F3020F550
+:1037E000E0910E01F0910F01E90FF11D877021E0CA
+:1037F00030E001C0220F8A95EAF7209581812823C5
+:103800002183089540910E0150910F0120E030E096
+:10381000FA01E20FF31F9281981301C012822F5F09
+:103820003F4F2E303105A1F7089581E090E0E091FF
+:103830000E01F0910F01E80FF91F108201968031FF
+:103840009105A9F708959091D401982B9093D401F4
+:10385000089580959091D40198239093D401089570
+:103860001092D40108959091D301982B9093D30195
+:10387000089580959091D30198239093D301089552
+:103880001092D30108959091D201982B9093D20178
+:10389000089580959091D20198239093D201089534
+:1038A0001092D20108958093C10108951092C10130
+:1038B000089540910E0150910F0120E030E080E02A
+:1038C000FA01E20FF31F918191118F5F2F5F3F4F3C
+:1038D0002F303105A9F70895E0910E01F0910F0105
+:1038E0008091D4018083E0910E01F0910F018081DD
+:1038F0009091D301892B8083E0910E01F0910F010B
+:1039000080819091D201892B80839091C10199236C
+:1039100061F0E0910E01F0910F018081892B80838D
+:103920000E94591C81111092C10180910E01909149
+:103930000F010C94B5108091EC01843021F11092AC
+:10394000D60120E488E190E00FB6F894A895809322
+:1039500060000FBE2093600080E00E94AE0983B734
+:10396000817F846083BF83B7816083BF78948895AB
+:1039700083B78E7F83BF88E10FB6F8948093600091
+:10398000109260000FBE089508950895CF930E948D
+:10399000C41C0E94E2050E94C51CC0E08C2F0E943E
+:1039A000CF06811105C0CF5FCE30C1F780E001C0E6
+:1039B00081E0CF9108950E942C160E94A9100C94CA
+:1039C000AE0982E084BD93E095BD9AEF97BD8093E8
+:1039D0006E0008952FB7F8948091D7019091D80187
+:1039E000A091D901B091DA012FBF0895CF92DF9253
+:1039F000EF92FF920F931F932FB7F8944091D70146
+:103A00005091D8016091D9017091DA012FBF6A01FC
+:103A10007B01EE24FF248C0120E030E0C016D106AB
+:103A2000E206F30610F441505109481B590BCA0134
+:103A30001F910F91FF90EF90DF90CF9008951F920C
+:103A40000F920FB60F9211248F939F93AF93BF9352
+:103A50008091D7019091D801A091D901B091DA015C
+:103A60000196A11DB11D8093D7019093D801A09319
+:103A7000D901B093DA01BF91AF919F918F910F90CF
+:103A80000FBE0F901F9018950E94AF0DF8942FEF66
+:103A900087EA91E6215080409040E1F700C00000A5
+:103AA00087E090EBDC018093F6019093F701A093FF
+:103AB000F801B093F9012CE088E190E00FB6F8949A
+:103AC000A895809360000FBE20936000FFCFEF9217
+:103AD000FF920F931F93CF93DF93E82EF12C8F2D3E
+:103AE0000E94CF06C0E0D0E0082F10E098010C2E15
+:103AF00002C0359527950A94E2F720FD05C021966E
+:103B0000C630D10599F709C06C2F7F2D80E00E9447
+:103B1000D706E812F4CF81E005C0F3948EE0F812E6
+:103B2000DECF80E0DF91CF911F910F91FF90EF905A
+:103B30000895CF93C82F8CE20E94671D882321F03F
+:103B40008C2FCF910C94671D80E0CF910895CF9377
+:103B50000E94EC1E811102C00E94D21EC5E6C15017
+:103B600049F00E94E2058FE39CE90197F1F700C05C
+:103B70000000F5CF89E20E94991D811111C18AE2EE
+:103B80000E94991D81110E94D21E85E00E94991DFC
+:103B900081110E94441D0E94F71E8093D50187E089
+:103BA0000E94991D882399F18BE10E94991D882319
+:103BB00051F09091D50191FB882780F921E082276F
+:103BC00080FB91F922C08EE00E94991D882351F05C
+:103BD0009091D50192FB882780F921E0822780FB14
+:103BE00092F913C080E10E94991D9091D50188231C
+:103BF00041F093FB882780F921E0822780FB93F92D
+:103C000004C0892F809580FB90F99093D501809115
+:103C1000D5010E94FB1E0E94091F8093F50180EED2
+:103C20000E94991D882341F08091F501982F90956D
+:103C300090FB80F98093F50189E30E94991D882308
+:103C400059F09091F50191FB882780F921E08227B6
+:103C500080FB91F99093F50182EE0E94991D8823D3
+:103C600059F09091F50192FB882780F921E0822795
+:103C700080FB92F99093F50186EE0E94991D8823AE
+:103C800059F09091F50193FB882780F921E0822774
+:103C900080FB93F99093F50183EE0E94991D882390
+:103CA00059F09091F50194FB882780F921E0822753
+:103CB00080FB94F99093F50185E30E94991D882378
+:103CC00059F09091F50195FB882780F921E0822732
+:103CD00080FB95F99093F50181E30E94991D88235B
+:103CE00059F09091F50196FB882780F921E0822711
+:103CF00080FB96F99093F50181E10E94991D88233C
+:103D000059F09091F50197FB882780F921E08227EF
+:103D100080FB97F99093F5018091F5010E940D1FAA
+:103D20008091F50187FB882780F980930D0187E258
+:103D30000E94991DC82F8EE10E94991D8111C260B9
+:103D40008FE10E94991D8111C46080E20E94991D3B
+:103D50008111C86081E20E94991D8111C06182E2D7
+:103D60000E94991D8111C06283E20E94991D8111F8
+:103D7000C06484E20E94991D882311F0C06802C0CB
+:103D8000CC2329F08C2F0E94041F6C2F03C00E94AB
+:103D9000001F682F70E080E090E0CF910C94261A0D
+:103DA000CF9108956DEE7EEF80E090E00E942A258D
+:103DB00060E082E090E00E94182560E083E090E0FF
+:103DC0000E94182560E084E090E00E94182560E0E1
+:103DD00085E090E00C94182580E090E00E94122588
+:103DE00021E08D3E9E4F09F020E0822F089582E071
+:103DF00090E00C940A25682F82E090E00C9418253E
+:103E000083E090E00C940A25682F83E090E00C9406
+:103E1000182584E090E00C940A25682F84E090E057
+:103E20000C9418258091DD0180FF0BC06091130177
+:103E300085E0689FB0011124759567957595679524
+:103E40002AC081FF09C06091130185E0689FB0011D
+:103E50001124759567951FC082FF07C060911301FB
+:103E600085E0689FB001112416C04091DE01442313
+:103E7000C9F060911201461788F72091130185E07F
+:103E8000289F90011124429FC001439F900D11244F
+:103E900070E00E94DC246038710540F46115710502
+:103EA00039F002C065E070E0862F08958FE708952D
+:103EB00081E008958091DD0180FF08C060911101CB
+:103EC00070E0759567957595679521C081FF06C06F
+:103ED0006091110170E07595679519C082FF04C06B
+:103EE0006091110170E010C08091DE018823C1F063
+:103EF000609110018617A0F790911101989FC00161
+:103F0000112470E00E94DC246038710528F46115EA
+:103F1000710521F0862F08958FE7089581E00895B7
+:103F200061E070E0F4CF803F21F40E94121F819580
+:103F300004C0813F29F40E94121F8093E10108957B
+:103F4000823F21F40E94121F819504C0833F29F40F
+:103F50000E94121F8093E0010895893F19F40E9486
+:103F60005A1F05C08A3F31F40E945A1F81958093E1
+:103F7000E20108958B3F21F40E945A1F819504C0ED
+:103F80008C3F29F40E945A1F8093E3010895843FD7
+:103F900021F48091DF01816017C0853F21F4809179
+:103FA000DF01826011C0863F21F48091DF018460CF
+:103FB0000BC0873F21F48091DF01886005C0883FF6
+:103FC00031F48091DF0180618093DF0108958D3F9E
+:103FD00021F48091DD0181600BC08E3F21F480913E
+:103FE000DD01826005C08F3F29F48091DD0184608E
+:103FF0008093DD010895803F39F48091E10187FFCE
+:104000006CC01092E10169C0813F29F48091E10107
+:104010001816BCF362C09091E001823F29F497FF2B
+:104020005CC01092E00159C0833F19F41916CCF31B
+:1040300054C0893F41F48091E20118160CF04DC044
+:104040001092E2014AC08A3F29F48091E20187FF81
+:1040500044C0F6CF8B3F39F48091E30187FF3DC028
+:104060001092E3013AC08C3F29F48091E3011816C5
+:10407000BCF333C0843F21F48091DF018E7F17C0F1
+:10408000853F21F48091DF018D7F11C0863F21F4AF
+:104090008091DF018B7F0BC0873F21F48091DF018E
+:1040A000877F05C0883F31F48091DF018F7E809348
+:1040B000DF0113C08D3F21F48091DD018E7F0BC0A5
+:1040C0008E3F21F48091DD018D7F05C08F3F29F463
+:1040D0008091DD018B7F8093DD018091E001811172
+:1040E0000EC08091E10181110AC08091E20181112D
+:1040F00006C08091E301811102C01092DE01089593
+:104100008FED91E00E94C0100E94EA1C9093DC01A8
+:104110008093DB0108951F93CF93DF938091DB01A0
+:104120009091DC010E94F61C4091DE01442321F0B5
+:104130002091140130E006C0209115015AE0259F1E
+:10414000900111248217930708F482C08091E00146
+:104150001091E101D091E201C091E301811107C00A
+:10416000111105C0D11103C0CC2309F471C04F3F18
+:1041700019F04F5F4093DE01181624F40E94121FBD
+:104180008093E0018091E00187FF05C00E94121F2B
+:1041900081958093E001111624F40E94121F8093F0
+:1041A000E1018091E10187FF05C00E94121F819506
+:1041B0008093E1016091E001662339F11091E10102
+:1041C000112319F1772767FD7095872F972F0E948C
+:1041D000ED2323E333E343E35FE30E9451240E9492
+:1041E000BA236093E001612F772767FD7095872FD1
+:1041F000972F0E94ED2323E333E343E35FE30E9421
+:1042000051240E94BA236093E1011D1624F40E94F8
+:104210005A1F8093E2018091E20187FF05C00E944E
+:104220005A1F81958093E2011C1624F40E945A1FA4
+:104230008093E3018091E30187FF05C00E945A1F2C
+:1042400081958093E301DF91CF911F910C948020A1
+:10425000DF91CF911F910895EFEDF1E085E0DF014F
+:104260001D928A95E9F71092DE011092DD01089502
+:10427000833081F128F4813059F08230D1F00895F3
+:10428000853009F449C0B8F1863009F456C0089564
+:1042900020911501862F90E0820F911D8F3F91058F
+:1042A00020F4620F6093150108958FEF809315013C
+:1042B000089520911401862F90E0820F911D8F3F69
+:1042C000910520F4620F6093140108958FEF80939D
+:1042D0001401089520911301862F90E0820F911D03
+:1042E0008F3F910520F4620F6093130108958FEFC3
+:1042F00080931301089520911201862F90E0820F80
+:10430000911D8F3F910520F4620F60931201089573
+:104310008FEF80931201089520911101862F90E074
+:10432000820F911D8F3F910520F4620F6093110160
+:1043300008958FEF80931101089520911001862F29
+:1043400090E0820F911D8F3F910520F4620F6093E2
+:10435000100108958FEF809310010895833011F1BB
+:1043600028F4813049F0823091F00895853081F150
+:1043700020F18630C1F1089580911501681720F46D
+:10438000861B809315010895109215010895809160
+:104390001401681720F4861B80931401089510926D
+:1043A0001401089580911301681720F4861B8093EF
+:1043B0001301089510921301089580911201681756
+:1043C00020F4861B80931201089510921201089523
+:1043D00080911101681720F4861B809311010895C4
+:1043E00010921101089580911001681720F4861B26
+:1043F0008093100108951092100108958D3109F4F1
+:1044000042C020F58E3009F477C070F4873009F48B
+:1044100059C018F48630F1F134C0883009F4A8C0CE
+:104420008B3009F4A5C02DC0863109F4A1C038F441
+:10443000803109F472C0813109F479C022C0893118
+:1044400009F496C08B3109F44DC01BC0853309F4C3
+:1044500087C048F4873209F483C008F473C08932F6
+:1044600009F47EC00EC0833438F48A3308F068C083
+:10447000883309F47DC005C0833409F471C08834E1
+:1044800099F080E008950E9474230E94A9100E9470
+:10449000AE096EC08091D501817F8E7F8093D5015A
+:1044A00081E08093E50108950E942C162FEF83EDA3
+:1044B00090E3215080409040E1F700C000000E944E
+:1044C000441D56C09091D501892F8095817080FB45
+:1044D00090F919F0966098601DC0997F977F90932E
+:1044E000D50146C09091D50191FB882780F921E044
+:1044F000822780FB91F909C09091D50192FB882712
+:1045000080F921E0822780FB92F99093D5018823DE
+:1045100079F191609093D50108959091D50193FB25
+:10452000882780F921E0822780FB93F9EECF0E9453
+:104530002C1680910D0191E0892780930D0118C000
+:1045400027EC01C023EE280F61E070E080E090E0EE
+:1045500004C0660F771F881F991F2A95D2F704C0E1
+:1045600061E070E080E090E00E94261A0E942C1624
+:1045700081E0089580E0089580E00895CF93C82FEA
+:104580008091E501813079F018F08230D1F184C05A
+:10459000A0910E01B0910F018C91813169F08232AE
+:1045A00009F07CC009C0A0910E01B0910F018C915F
+:1045B000813111F0823249F48C2F0E94BA2281118C
+:1045C0001DC08C2F0E94FE211AC08C2F0E94BC227D
+:1045D000811114C0C43179F048F4CB3079F0C03186
+:1045E00009F060C082E08093E50108C0C93219F08B
+:1045F000C83321F057C01092E50154C081E08170AA
+:1046000053C0C93289F118F5C43171F1A8F4C7302B
+:1046100009F046C08AE08093150194E1909314015B
+:1046200093E0909313018093120188E0809311012D
+:1046300088E28093100134C0CE51C63088F5EC2F4B
+:10464000F0E0E65DFE4F80818093E40129C0CE3426
+:10465000E9F020F4CB3421F56AE013C0C13579F0DC
+:10466000C235F1F461E00DC08091E401882319F0B6
+:104670001092E40115C081E08093E50115C061E06E
+:1046800006C08091E4010E9438210AC06AE080914E
+:10469000E4010E94AE2104C01092E50180E004C054
+:1046A00081E002C080E0ABCFCF910895E1E8F0E077
+:1046B0008081886080838081816080838FB7F89457
+:1046C00093E09093890090ED909388008FBF0895B8
+:1046D000EFE6F0E08081826080830895EFE6F0E00D
+:1046E00080818D7F80830895EFE6F0E0808192E005
+:1046F0008927808308951F920F920FB60F9211247D
+:104700002F933F934F935F936F937F938F939F93D9
+:10471000AF93BF93EF93FF938091E6019091E701F0
+:1047200001969093E7018093E601811103C082E036
+:104730000E94AE09E091E701E695E695F0E0E25BC4
+:10474000FA4FE4918091E6018E1303C080E00E944D
+:10475000AE09FF91EF91BF91AF919F918F917F91A2
+:104760006F915F914F913F912F910F900FBE0F90DE
+:104770001F90189504D06894B1118DC0089570D021
+:1047800088F09F5790F0B92F9927B751A0F0D1F03A
+:10479000660F771F881F991F1AF0BA95C9F712C0C4
+:1047A000B13081F077D0B1E0089574C0672F782FD1
+:1047B0008827B85F39F0B93FCCF386957795679530
+:1047C000B395D9F73EF490958095709561957F4F9C
+:1047D0008F4F9F4F0895E89409C097FB3EF4909542
+:1047E0008095709561957F4F8F4F9F4F9923A9F0CA
+:1047F000F92F96E9BB279395F69587957795679559
+:10480000B795F111F8CFFAF4BB0F11F460FF1BC09C
+:104810006F5F7F4F8F4F9F4F16C0882311F096E92F
+:1048200011C0772321F09EE8872F762F05C06623DD
+:1048300071F096E8862F70E060E02AF09A95660F96
+:10484000771F881FDAF7880F9695879597F908954F
+:1048500057FD9058440F551F59F05F3F71F0479531
+:10486000880F97FB991F61F09F3F79F08795089516
+:10487000121613061406551FF2CF4695F1DF08C035
+:10488000161617061806991FF1CF86957105610552
+:1048900008940895E894BB2766277727CB0197F9FA
+:1048A00008950BD078C069D028F06ED018F0952309
+:1048B00009F05AC05FC01124EECFCADFA0F3959F64
+:1048C000D1F3950F50E0551F629FF001729FBB27F7
+:1048D000F00DB11D639FAA27F00DB11DAA1F649FA3
+:1048E0006627B00DA11D661F829F2227B00DA11D56
+:1048F000621F739FB00DA11D621F839FA00D611DDC
+:10490000221F749F3327A00D611D231F849F600DFC
+:10491000211D822F762F6A2F11249F5750408AF035
+:10492000E1F088234AF0EE0FFF1FBB1F661F771FC1
+:10493000881F91505040A9F79E3F510570F014C058
+:10494000AACF5F3FECF3983EDCF3869577956795A9
+:10495000B795F795E7959F5FC1F7FE2B880F911DDF
+:104960009695879597F9089597F99F6780E870E085
+:1049700060E008959FEF80EC089500240A941616D5
+:10498000170618060906089500240A94121613063D
+:10499000140605060895092E0394000C11F48823CB
+:1049A00052F0BB0F40F4BF2B11F460FF04C06F5FE7
+:1049B0007F4F8F4F9F4F089597FB072E16F400945B
+:1049C00007D077FD09D00E94F62407FC05D03EF4FD
+:1049D000909581959F4F0895709561957F4F0895AB
+:1049E000EE0FFF1F0590F491E02D0994AA1BBB1B4D
+:1049F00051E107C0AA1FBB1FA617B70710F0A61BDF
+:104A0000B70B881F991F5A95A9F780959095BC01FF
+:104A1000CD010895F999FECF92BD81BDF89A9927ED
+:104A200080B50895A8E1B0E042E050E00C94322552
+:104A3000262FF999FECF92BD81BDF89A019700B457
+:104A4000021639F01FBA20BD0FB6F894FA9AF99AF7
+:104A50000FBE08950196272F0E9419250C94182542
+:104A6000DC01CB01FC01F999FECF06C0F2BDE1BD2E
+:104A7000F89A319600B40D9241505040B8F708951D
+:044A8000F894FFCFD8
+:104A84002002B0093D0A1A0AE609B3090101C2016C
+:104A940028080A03140A3F4D36390F05C2048C0452
+:104AA4005304E603FF03180431040102030405065A
+:044AB40007080900E6
:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/ordinary/readme.md b/keyboard/ergodox_ez/keymaps/ordinary/readme.md
index 842dc7ee19..f264dd48fb 100644
--- a/keyboard/ergodox_ez/keymaps/ordinary/readme.md
+++ b/keyboard/ergodox_ez/keymaps/ordinary/readme.md
@@ -67,9 +67,11 @@ Alas, the yellow keys have at best spotty success with common software. Good luc
## 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; it works either way. To revert to the base layer, use the Shift Lock key again in combination with the Shift key.
+In addition to Symbols and Media the Ordinary Layout treats the Capitals as a logical layer. Each layer is accessed by a shift key on each edge of the keyboard and corresponds to one of the three LEDs on the keyboard: Capitals (red), Symbols (green), Media (blue). The color of a layer illuminates when the layer is active.
-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 character associated with the Shift Lock button).
+Shift buttons work in the expected way: press them and all of the keys switch to that layer; release them and the keys switch back to the base layer. Lock layers using the Shift key in conjunction with the Shift Lock key. For instance, the widely and rightly loathed Caps Lock is engaged by pressing the Shift Lock button then Capitals Shift. Or, hold down the Shift key and press the Shift Lock key; it works either way. All the Shift keys work this way.
+
+Multiple layers can be turned on at once but only one controls the keyboard. The order of the LEDs indicates the priority order: Media, Symbols, Capitals.
## Special Escape & Backspace Sequences ##