summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--keyboard/ergodox_ez/keymaps/townk_osx/keymap.c128
-rw-r--r--keyboard/ergodox_ez/keymaps/townk_osx/townk_osx.hex2343
2 files changed, 1229 insertions, 1242 deletions
diff --git a/keyboard/ergodox_ez/keymaps/townk_osx/keymap.c b/keyboard/ergodox_ez/keymaps/townk_osx/keymap.c
index 9f16bc8636..eb7700b7ff 100644
--- a/keyboard/ergodox_ez/keymaps/townk_osx/keymap.c
+++ b/keyboard/ergodox_ez/keymaps/townk_osx/keymap.c
@@ -55,16 +55,22 @@ This is used to make the keyboard behave mostly like a **num pad keyboard**.
#define FN 2
#define MACRO_TMUX_ESC 10
-#define MACRO_SHIFT_OR_LPAREN 11
-#define MACRO_SHIFT_OR_RPAREN 12
+#define MACRO_TMUX_PASTE 11
+#define MACRO_OSX_COPY 12
+#define MACRO_OSX_PASTE 13
+
+#define M_TESC M(MACRO_TMUX_ESC)
+#define M_TPASTE M(MACRO_TMUX_PASTE)
+#define M_OSXCPY M(MACRO_OSX_COPY)
+#define M_OSXPST M(MACRO_OSX_PASTE)
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap 0: Base Layer
*
* ,-----------------------------------------------------. ,-----------------------------------------------------.
- * | `~ | 1 | 2 | 3 | 4 | 5 | ESC | | Macro| 6 | 7 | 8 | 9 | 0 | + = |
+ * | `~ | 1 | 2 | 3 | 4 | 5 | ESC | | Pwr | 6 | 7 | 8 | 9 | 0 | - _ |
* |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
- * | Tab | Q | W | E | R | T | F16 | | F17 | Y | U | I | O | P | - _ |
+ * | Tab | Q | W | E | R | T | F16 | | F17 | Y | U | I | O | P | = + |
* |-----------+------+------+------+------+------| Meh | | Meh |------+------+------+------+------+-----------|
* | \ (Ctrl) | A | S | D | F | G |------| |------| H | J | K | L | ; | ' " (Ctrl)|
* |-----------+------+------+------+------+------| F18 | | F19 |------+------+------+------+------+-----------|
@@ -73,74 +79,78 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* | FN | KPAD |LCtrl | LAlt | LGui | | RGui | RAlt | RCtrl| KPAD | FN |
* `-----------------------------------' `-----------------------------------'
* ,-------------. ,-------------.
- * | Left | Right| | Down | Up |
+ * | M(0) | M(1) | | M(2) | M(3) |
* ,------|------|------| |------+------+------.
* | | | Home | | PgUp | | |
* |Backsp| Del |------| |------| Enter| Space|
* | | | End | | PgDn | | |
* `--------------------' `--------------------'
*
- * Macro = Ctrk+A Esc
- * (this is used to issue the Esc key to the Tmux application)
+ * M(0) = Ctrk+A Esc
+ * (this is used to issue the Esc key to the Tmux application)
+ * M(1) = Ctrk+A P
+ * (this is used to issue the Paste key to the Tmux application)
+ * M(2) = Cmd+C
+ * M(3) = Cmd+V
*/
[BASE]=KEYMAP(//left half
- KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC,
- KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, MEH_T(KC_F16),
- CTL_T(KC_BSLS), KC_A, KC_S, KC_D, KC_F, KC_G,
- KC_FN2, KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_F18),
- KC_FN1, TG(KEYPAD), KC_LCTRL, KC_LALT, KC_LGUI,
- KC_LEFT, KC_RIGHT,
- KC_HOME,
- KC_BSPC, KC_DELT, KC_END,
- //right half
- M(MACRO_TMUX_ESC), KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL,
- MEH_T(KC_F17), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS,
- KC_H, KC_J, KC_K, KC_L, KC_SCLN, CTL_T(KC_QUOT),
- ALL_T(KC_F19), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_FN2,
- KC_RGUI, ALT_T(KC_LBRC), CTL_T(KC_RBRC), TG(KEYPAD), KC_FN1,
- KC_DOWN, KC_UP,
- KC_PGUP,
- KC_PGDN, KC_ENT, KC_SPC),
+ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_ESC,
+ KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, MEH_T(KC_F16),
+ CTL_T(KC_BSLS), KC_A, KC_S, KC_D, KC_F, KC_G,
+ KC_FN2, KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_F18),
+ KC_FN1, TG(KEYPAD), KC_LCTRL, KC_LALT, KC_LGUI,
+ M_TESC, M_TPASTE,
+ KC_HOME,
+ KC_BSPC, KC_DELT, KC_END,
+ //right half
+ KC_POWER, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS,
+ MEH_T(KC_F17), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_EQL,
+ KC_H, KC_J, KC_K, KC_L, KC_SCLN, CTL_T(KC_QUOT),
+ ALL_T(KC_F19), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_FN2,
+ KC_RGUI, KC_RALT, CTL_T(KC_LBRC), KC_FN3, KC_FN1,
+ M_OSXCPY, M_OSXPST,
+ KC_PGUP,
+ KC_PGDN, KC_ENT, KC_SPC),
/* Keymap 1: KeyPad Layer
*
* ,-----------------------------------------------------. ,-----------------------------------------------------.
- * | | | | | | | | | BTab | Clear| / | * | ^ | ( | LeftClick |
+ * | | | LClk | RClk | MClk | | | | BTab | Clear| / | * | ^ | ( | |
* |-----------+------+------+------+------+-------------| |------+------+------+------+------+------+-----------|
- * | M.Accel 2 | |ScrlUp| U |ScrlDn| | | | Tab | 7 | 8 | 9 | + | ) | RightClick|
+ * | M.Accel 2 | |ScrlUp| U |ScrlDn| | | | Tab | 7 | 8 | 9 | + | ) | |
* |-----------+------+------+------+------+------| | | |------+------+------+------+------+-----------|
- * | M.Accel 1 | | L | D | R | |------| |------| 4 | 5 | 6 | - | | MidClick |
+ * | M.Accel 1 | | L | D | R | |------| |------| 4 | 5 | 6 | - | | |
* |-----------+------+------+------+------+------| | |Return|------+------+------+------+------+-----------|
* | M.Accel 0 | |ScrlL | |ScrlR | | | | | 1 | 2 | 3 | = | | |
* `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
- * | | | | | | | 0 | . | , | | KPAD |
+ * | | XXXX | | | | | 0 | . | , | XXXX | |
* `-----------------------------------' `-----------------------------------'
* ,-------------. ,-------------.
* | | | | | |
* ,------|------|------| |------+------+------.
- * | | | | | | | |
- * | | |------| |------| | |
- * | | | | | | | |
+ * | | | | | | XXXX | |
+ * | | |------| |------| XXXX | |
+ * | | | | | | XXXX | |
* `--------------------' `--------------------'
*/
[KEYPAD]=KEYMAP(//left half
- KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_MS_WH_UP, KC_MS_U, KC_MS_WH_DOWN, KC_NO, KC_NO,
- KC_NO, KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO,
- KC_NO, KC_NO, KC_MS_WH_LEFT, KC_NO, KC_MS_WH_RIGHT, KC_NO, KC_NO,
- KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO,
+ KC_NO, KC_NO, KC_MS_BTN1, KC_MS_BTN2, KC_MS_BTN3, KC_NO, KC_NO,
+ KC_MS_ACCEL2, KC_NO, KC_MS_WH_UP, KC_MS_U, KC_MS_WH_DOWN, KC_NO, KC_NO,
+ KC_MS_ACCEL1, KC_NO, KC_MS_L, KC_MS_D, KC_MS_R, KC_NO,
+ KC_MS_ACCEL0, KC_NO, KC_MS_WH_LEFT, KC_NO, KC_MS_WH_RIGHT, KC_NO, KC_NO,
+ KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO,
KC_NO, KC_NO,
KC_NO,
KC_NO, KC_NO, KC_NO,
//right half
- LSFT(KC_TAB), KC_CLEAR, KC_KP_SLASH, KC_KP_ASTERISK, KC_CIRCUMFLEX, KC_LPRN, KC_MS_BTN1,
- KC_TAB, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_PLUS, KC_RPRN, KC_MS_BTN2,
- KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_MINUS, KC_NO, KC_MS_BTN3,
+ LSFT(KC_TAB), KC_CLEAR, KC_KP_SLASH, KC_KP_ASTERISK, KC_CIRCUMFLEX, KC_LPRN, KC_NO,
+ KC_TAB, KC_KP_7, KC_KP_8, KC_KP_9, KC_KP_PLUS, KC_RPRN, KC_NO,
+ KC_KP_4, KC_KP_5, KC_KP_6, KC_KP_MINUS, KC_NO, KC_NO,
KC_KP_ENTER, KC_KP_1, KC_KP_2, KC_KP_3, KC_KP_EQUAL, KC_NO, KC_NO,
- KC_KP_0, KC_KP_DOT, KC_KP_COMMA, KC_TRNS, KC_TRNS,
+ KC_KP_0, KC_KP_DOT, KC_KP_COMMA, KC_TRNS, KC_NO,
KC_NO, KC_NO,
KC_NO,
- KC_NO, KC_NO, KC_NO),
+ KC_NO, KC_TRNS, KC_NO),
/* Keymap 2: Functions Layer
*
@@ -153,7 +163,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
* |-----------+------+------+------+------+------| XXXX | | XXXX |------+------+------+------+------+-----------|
* | L Shift | | | | | | XXXX | | XXXX | | | | | | R Shift |
* `-----------+------+------+------+------+-------------' `-------------+------+------+------+------+-----------'
- * | XXXXX | | XXXX | XXXX | XXXX | | XXXX | XXXX | XXXX | | |
+ * | XXXXX | | XXXX | XXXX | XXXX | | XXXX | XXXX | XXXX | | XXXXX |
* `-----------------------------------' `-----------------------------------'
* ,-------------. ,-------------.
* | | | | | |
@@ -187,6 +197,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
const uint16_t PROGMEM fn_actions[] = {
[1] = ACTION_LAYER_ONESHOT(FN),
[2] = ACTION_MODS_ONESHOT(MOD_LSFT), // Sticky shift light. Tap for the next keypress to be shifted. Hold for regular shift.
+ [3] = ACTION_LAYER_TAP_KEY(KEYPAD, KC_RBRC),
};
static uint16_t key_timer;
@@ -199,32 +210,21 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {
return MACRO(D(LCTRL), T(A), U(LCTRL), D(ESC), END);
}
return MACRO(U(ESC), END);
- case MACRO_SHIFT_OR_LPAREN: {
+ case MACRO_TMUX_PASTE:
+ if (record->event.pressed) {
+ return MACRO(D(LCTRL), T(A), U(LCTRL), D(P), END);
+ }
+ return MACRO(U(P), END);
+ case MACRO_OSX_COPY:
if (record->event.pressed) {
- key_timer = timer_read(); // if the key is being pressed, we start the timer.
- register_code(KC_LSFT); // we're now holding down Shift.
- } else { // this means the key was just released, so we can figure out how long it was pressed for (tap or "held down").
- if (timer_elapsed(key_timer) < TAPPING_TERM) { // the threshhold we pick for counting something as a tap.
- register_code(KC_9); // sending 9 while Shift is held down gives us an opening paren
- unregister_code(KC_9); // now let's let go of that key
- }
- unregister_code(KC_LSFT); // let's release the Shift key now.
+ return MACRO(D(LGUI), D(C), END);
}
- break;
- }
- case MACRO_SHIFT_OR_RPAREN: {
+ return MACRO(U(C), U(LGUI), END);
+ case MACRO_OSX_PASTE:
if (record->event.pressed) {
- key_timer = timer_read(); // Now we're doing the same thing, only for the right shift/close paren key
- register_code(KC_RSFT);
- } else {
- if (timer_elapsed(key_timer) < TAPPING_TERM) {
- register_code(KC_0);
- unregister_code(KC_0);
- }
- unregister_code(KC_RSFT);
+ return MACRO(D(LGUI), D(V), END);
}
- break;
- }
+ return MACRO(U(V), U(LGUI), END);
}
return MACRO_NONE;
};
diff --git a/keyboard/ergodox_ez/keymaps/townk_osx/townk_osx.hex b/keyboard/ergodox_ez/keymaps/townk_osx/townk_osx.hex
index f0f2c5c79b..868d86e82d 100644
--- a/keyboard/ergodox_ez/keymaps/townk_osx/townk_osx.hex
+++ b/keyboard/ergodox_ez/keymaps/townk_osx/townk_osx.hex
@@ -1,1179 +1,1166 @@
-:100000000C9482020C94C6020C94C6020C94C60294
-:100010000C94C6020C94C6020C94C6020C94C60240
-:100020000C94C6020C94C6020C940F0D0C94E10DB6
-:100030000C94C6020C94C6020C94C6020C94C60220
-:100040000C94C6020C94E6220C94C6020C94C602D0
-:100050000C94C6020C94751C0C94C6020C94C60237
-:100060000C94C6020C94C6020C94C6020C94C602F0
-:100070000C94C6020C94C6020C94C6020C94C602E0
-:100080000C94C6020C94C6020C94C6020C94C602D0
-:100090000C94C6020C94C6020C94C6020C94C602C0
-:1000A0000C94C6020C94C6020C94C6024E0E700E3E
-:1000B0005E0F700E5E0FB50ED80E5E0F2D0F400F47
-:1000C0004B124B1277127712BF12DD1259145914CA
-:1000D000E81259149D139D134A14591459145314BA
-:1000E000AA13AA13AA13AA13AA13AA13AA13AA1328
-:1000F000AA13AA13AA13AA13AA13AA13AA13AA1318
-:10010000BB13C913D013D713E11302290001E00177
-:1001100004020402E00129000000F4A200223500DC
-:100120002B003171C200C10000001E001400040049
-:100130001D0001544D001F001A0016001B00E000B6
-:100140004C002000080007000600E2002A00210001
-:10015000150009001900E3004A00220017000A00F8
-:1001600005000000500029006B7700006D7F000043
-:100170004F000A306C7700006E7F000051002300B2
-:100180001C000B00110000005200240018000D009C
-:100190001000E7004B0025000C000E0036002F7405
-:1001A0002C00260012000F003700307128002700B5
-:1001B00013003300380001544E002E002D0034711E
-:1001C000C200C100000000000000000000000100AB
-:1001D000000000000000000000000100000000001E
-:1001E000F900F200FB00000000000000F000F10048
-:1001F0000000000000000000FA00F300FC00000016
-:1002000000000000000000000000000000000000EE
-:10021000000000000000000000002B022B00000086
-:100220005800000000009C005F005C0059000000C6
-:100230000000540060005D005A006200000055009C
-:1002400061005E005B00630000002302570056005F
-:100250006700850000002602270200000000010060
-:100260000000F400F500F6000000010000000000AE
-:1002700000003900E100010000003A00AD00B000CC
-:100280000000000000003B00BC00AC0000000100CA
-:1002900000003C00AF00AE000000010000003D0087
-:1002A000BB00AB000000010000003E0000000000A9
-:1002B0000000000000003F000100000001000000FD
-:1002C00000004000010000000100000000004100AB
-:1002D000000050000000000000004200000051003B
-:1002E0000000010000004300000052000000010077
-:1002F0000000440000004F00000001000000450025
-:1003000000000000000000000000A900AA00A800F2
-:10031000E5000100000016034500720067006F0051
-:1003200044006F007800200045005A0000001603CA
-:100330004500720067006F0044006F0078002000E5
-:1003400045005A0000000403090409026D0004017D
-:1003500000A0FA09040000010301010009211101B4
-:100360000001223F000705810308000A090401007B
-:100370000103010200092111010001224D000705BE
-:10038000820308000A090402000103000000092199
-:10039000110100012236000705830308000A090441
-:1003A00003000103000000092111010001223900AE
-:1003B000070584031000011201100100000008ED80
-:1003C000FE071301000102000105010906A1010554
-:1003D0000719E029E7150025019508750181020537
-:1003E000081901290595057501910295017503917B
-:1003F00001050719002977150025019578750181F8
-:1004000002C005010980A101850216010026B7007E
-:100410001A01002AB700751095018100C0050C096A
-:1004200001A1018503160100269C021A01002A9CE5
-:1004300002751095018100C005010902A1010901A1
-:10044000A10005091901290515002501950575016A
-:10045000810295017503810105010930093115817A
-:10046000257F95027508810609381581257F95013C
-:1004700075088106050C0A38021581257F950175DE
-:10048000088106C0C005010906A101050719E02978
-:10049000E715002501950875018102950175088110
-:1004A0000105081901290595057501910295017548
-:1004B0000391010507190029FF150025FF95067511
-:1004C000088100C0000000000000000000000001E2
-:1004D0000204060A0F17202C3A4A5D71879DB3C7A4
-:1004E000DAE9F5FCFFFCF5E9DAC7B39D87715D4AEF
-:1004F0003A2C20170F0A0604020100000000000039
-:100500000000000011241FBECFEFDAE0DEBFCDBF38
-:1005100004B603FE24C08091F7019091F801A091E8
-:10052000F901B091FA018730904BA740B04BB9F474
-:100530001092F7011092F8011092F9011092FA014D
-:1005400014BE84B7877F84BF88E10FB6F894809388
-:100550006000109260000FBEE0E0FFE3099511E03B
-:10056000A0E0B1E0EAE5F9E402C005900D92A43301
-:10057000B107D9F711E0A4E3B1E001C01D92A73F94
-:10058000B107E1F70E94530A0C94AB240C940000CD
-:10059000FC016B3059F06C3029F16A3009F041C030
-:1005A0008281811141C08AE091E00895828188238F
-:1005B00041F00E943F1C909336018093350181EEFB
-:1005C0001BC080913501909136010E944B1C883CE4
-:1005D000910530F486E20E94C01086E20E948811E4
-:1005E00081EE1DC08281882351F00E943F1C9093B0
-:1005F00036018093350185EE0E94C01012C08091B3
-:100600003501909136010E944B1C883C910530F4D5
-:1006100087E20E94C01087E20E94881185EE0E9446
-:10062000881180E090E008958DE091E008950895AC
-:10063000CF936091B4017091B5018091B601909112
-:10064000B7010E94A11BC82F56985E9825982D9837
-:1006500026982E9827982F988FE090E09093890005
-:100660008093880090938B0080938A0090938D00F4
-:1006700080938C00CC2329F0C13029F4C09334013D
-:1006800002C01092340180913401813011F4279A14
-:100690002F9A0E94970F867011F0259A2D9AC230DA
-:1006A00041F40E942A1A811104C027982F98269A93
-:1006B0002E9AE0910E01F0910F018081982F927295
-:1006C00059F08D7D49F48FEF90E0909389008093ED
-:1006D0008800259A2D9A08C00E94571B827221F02B
-:1006E0000E94FD19882379F3CF9108950C94180383
-:1006F00056985E9825982D9826982E9827982F988A
-:100700008FEF90E0909389008093880090938B0006
-:1007100080938A0090938D0080938C00259A2D9A67
-:100720002FEF80E792E0215080409040E1F700C039
-:100730000000269A2E9A2FEF80E792E02150804009
-:100740009040E1F700C00000279A2F9A2FEF80E732
-:1007500092E0215080409040E1F700C000002598D1
-:100760002D982FEF80E792E0215080409040E1F7F4
-:1007700000C0000026982E982FEF80E792E02150CD
-:1007800080409040E1F700C0000027982F985698CD
-:100790005E9825982D9826982E9827982F9808953A
-:1007A00089EA8093800089E08093810024982C98C6
-:1007B0003F988AB18F748AB96E98479A8BB1806BD3
-:1007C0008BB9769A0E9478030C94170380E2809389
-:1007D00000018091370181110EC00E94350481E033
-:1007E000809337012FEF83ED90E3215080409040BC
-:1007F000E1F700C0000080E40E943B048093000108
-:1008000081112EC00E94650480930001811128C0CF
-:100810000E94650480930001811122C08FE30E9431
-:1008200065048093000181111BC00E945D0480E477
-:100830000E943B0480930001811112C08CE00E9451
-:1008400065048093000181110BC00E9465048093B0
-:100850000001811105C08FE30E94650480930001AF
-:100860000E945D048091000108951092B9008AE011
-:100870008093B800089594EA9093BC009091BC00D6
-:1008800097FFFCCF9091B900987F983021F090317C
-:1008900011F081E008958093BB0084E88093BC0050
-:1008A0008091BC0087FFFCCF8091B900887F8831A0
-:1008B00011F0803471F780E0089584E98093BC00E2
-:1008C0008091BC0084FDFCCF08958093BB0084E838
-:1008D0008093BC008091BC0087FFFCCF9091B90051
-:1008E000987F81E0983209F480E0089584E880934D
-:1008F000BC008091BC0087FFFCCF8091BB000895B5
-:1009000080910001811115C080E40E943B04809316
-:10091000000181110CC082E10E94650480930001F6
-:10092000811105C08FEF0E946504809300010E9431
-:100930005D0484B1807F84B985B1807F85B98AB137
-:10094000837F8AB98BB1837F8BB93E98469808958F
-:100950000E94E603809300010E94800480B38C70A3
-:1009600080BB81B3836F81BBA9E3B1E0E7E4F1E031
-:100970008EE08E0F11921D928E13FCCF0C94D0033B
-:10098000BF92CF92DF92EF92FF920F931F93CF937C
-:10099000DF9380910001882379F0809138018F5F87
-:1009A00080933801811108C00E94E6038093000102
-:1009B000811102C00E94780309E311E0C0E0D0E099
-:1009C000DD24D39482E0C82EEE24E394F12CC730CA
-:1009D000D10500F580910001811164C080E40E947E
-:1009E0003B0480930001811112C082E10E946504E2
-:1009F0008093000181110BC0C7010C2E01C0880F2C
-:100A00000A94EAF780950E946504809300010E9491
-:100A10005D0448C0CA30A1F028F4C83059F0C9308C
-:100A200061F005C0CC3089F070F0CD3089F0209AAB
-:100A3000289810C0219A29980DC0229A2A980AC095
-:100A4000239A2B9807C0529A01C0539A5B9802C010
-:100A50003E9A469890EA9A95F1F79FB1799902C02B
-:100A600082E001C080E091709D25982B7C9902C0A6
-:100A700084E001C080E0892B7D9902C038E001C08C
-:100A800030E0832B7E9902C020E101C020E0822B60
-:100A90009FB19095991F9927991F9295990F907ED4
-:100AA000892B0FC080910001811149C080E40E9410
-:100AB0003B0480930001882379F1B12C0E945D04EE
-:100AC0008B2DF8019081981719F08083C092010155
-:100AD0000E94800421960F5F1F4FCE30D10509F090
-:100AE00076CF80910101882361F1815080930101CB
-:100AF000882339F08FE99FE00197F1F700C00000EB
-:100B000020C0A7E4B1E0E9E3F1E0CF01825F919179
-:100B10009D938E13FCCF15C083E10E9465048093E2
-:100B200000018111CACF81E40E943B04809300013F
-:100B30008111C3CF0E947604B82EB094BFCF80E05D
-:100B4000C0CF0E94760381E0DF91CF911F910F917A
-:100B5000FF90EF90DF90CF90BF900895E82FF0E0E6
-:100B6000E95BFE4F808108950895089596E0799F8E
-:100B7000F001112494E5899FE00DF11D1124E60F89
-:100B8000F11DEE0FFF1FE25EFE4F859194910895D7
-:100B9000880F991FFC01E856F040859194910895C3
-:100BA000880F991FFC01E85EFE4F8591949108958E
-:100BB0000F931F93CF93DF93EC018115904350F572
-:100BC000C11580E2D80708F0B3C0CB3BD10590F443
-:100BD000C83AD10508F05AC0C53AD10508F04BC053
-:100BE000C430D10508F0BBC1219709F0B5C101E0BF
-:100BF00010E0F5C1CF3FD10511F008F0B0C1C03F02
-:100C0000D10508F092C0CE01805E9109089708F4E2
-:100C1000A6C1A2C1C11591E5D907A8F4C23020E54B
-:100C2000D20708F09EC0C11580E5D80709F485C039
-:100C300008F091C0C11520E4D20708F08DC1DD276E
-:100C40008E01106CCCC1C11580E8D80758F4C115CD
-:100C500090E7D90708F07CC1C11520E6D20708F457
-:100C600022C17AC1C11580E9D80708F075C1DF70CB
-:100C70008E01106AB4C1C53AD10509F472C1C63AF1
-:100C8000D10509F071C102E810E4A9C1C83AD10543
-:100C900009F46DC1C93AD10509F46CC1CA3AD1054C
-:100CA00009F46BC1CB3AD10509F46AC1CC3AD1053C
-:100CB00009F469C1CD3AD10509F468C1C03BD10539
-:100CC00009F467C1CE3AD10509F466C1CF3AD1051E
-:100CD00009F465C1C13BD10509F464C1C23BD1052A
-:100CE00009F463C1C33BD10509F462C1C43BD1051A
-:100CF00009F461C1C53BD10509F460C1C63BD1050A
-:100D000009F45FC1C73BD10509F45EC1C83BD105F9
-:100D100009F45DC1C93BD10509F45CC1CA3BD105E9
-:100D200009F45BC100E014E45AC18E01106557C19B
-:100D3000CE019F700E94D00553C10E94AD149FEF59
-:100D400024E38CE0915020408040E1F700C0000097
-:100D50000E949A1C44C18091D60181608093D60183
-:100D60003EC10E94431E811102C00E94291E0E94A2
-:100D7000601E90E09093F7018093F601C23090E5F9
-:100D8000D90721F48091F601816086C0C43020E546
-:100D9000D20721F48091F60182607EC0C63080E5E2
-:100DA000D80721F48091F601846076C0C83090E5C0
-:100DB000D90719F48091F60127C0CA3020E5D2077F
-:100DC00021F48091F601806167C0CC3080E5D807BE
-:100DD00021F48091F60180625FC0CE3090E5D907A2
-:100DE00021F48091F601806457C0C03120E5D2071C
-:100DF00021F48091F60180684FC0C23180E5D807A8
-:100E000029F48091F6018460886046C0C33090E583
-:100E1000D90721F48091F6018E7F3EC0C53020E5D0
-:100E2000D20721F48091F6018D7F36C0C73080E56E
-:100E3000D80721F48091F6018B7F2EC0C93090E550
-:100E4000D90719F48091F60126C0CB3020E5D207EE
-:100E500021F48091F6018F7E1FC0CD3080E5D80748
-:100E600021F48091F6018F7D17C0CF3090E5D9072E
-:100E700021F48091F6018F7B0FC0C13120E5D207AC
-:100E800021F48091F6018F7707C0C331D04531F44A
-:100E90008091F6018B7F877F8093F6018091F60128
-:100EA0000E94641E9CC08D2F99278F7099278130D6
-:100EB0009105D9F49E012370332702C0880F991F32
-:100EC0002A95E2F79C688E0144E0000F111F4A95B5
-:100ED000E1F700271370802B912B53E0CC0FDD1F1F
-:100EE0005A95E1F7C076DD272FC08230910531F4A5
-:100EF000DC2FCC278E01016F106A71C08330910501
-:100F000069F4CE018370992701E010E002C0000F60
-:100F1000111F8A95E2F7C8019C680FC0049709F079
-:100F20005EC0CE018370992701E010E002C0000F7F
-:100F3000111F8A95E2F7C8019A6823E0CC0FDD1FE4
-:100F40002A95E1F7C07ED7708C010C2B1D2B47C072
-:100F5000DF708E01106243C000E010E040C08E01DF
-:100F60003EC001E810E43BC003E810E438C002EEE4
-:100F700014E435C009EE14E432C00AEE14E42FC0C4
-:100F800005EB14E42CC006EB14E429C007EB14E4D1
-:100F900026C00CEC14E423C00DEC14E420C003E8DC
-:100FA00015E41DC00AE815E41AC002E915E417C0EB
-:100FB00004E915E414C001E216E411C003E216E4EA
-:100FC0000EC004E216E40BC005E216E408C006E217
-:100FD00016E405C007E216E402C00AE216E4C801FE
-:100FE000DF91CF911F910F91089596E0799FF001C5
-:100FF000112494E5899FE00DF11D1124E60FF11DE8
-:10100000EE0FFF1FE25EFE4F85919491803E9105A9
-:10101000E0F4803C910558F58133910509F46FC0E7
-:1010200048F48932910509F463C08A32910509F4C4
-:101030006DC072C089339105E9F082389105D1F015
-:101040008533910509F44DC067C0833E910581F158
-:1010500038F4803E9105B9F0823E9105D9F05CC02C
-:10106000863E910561F1873E9105A1F155C00E9430
-:10107000C80508952091F60120FD02C021FF4CC053
-:1010800080EE90E049C08091F60180FFF9CF89E3BE
-:1010900090E042C08091F60182FF0EC08091F6017F
-:1010A00084FF03C080E090E037C083EE90E034C05E
-:1010B0008091F60182FFF2CF82EE90E02DC0809108
-:1010C000F60183FF0BC08091F60184FDEBCF87EE24
-:1010D00090E022C08091F60183FFF5CF86EE90E08C
-:1010E0001BC08091F60185FF07C089E290E014C023
-:1010F0008091F60185FFF9CF85E390E00DC08091E6
-:10110000F60186FF07C08AE290E006C08091F601F2
-:1011100086FFF9CF81E390E00E94D80508950895F5
-:101120000C948F08809165010895CF93DF9300D0D0
-:101130001F92CDB7DEB79C018091ED01843019F587
-:1011400093E099833B832A839093E9008FEF9091FA
-:10115000E800815095FD06C095ED9A95F1F70000E5
-:101160008111F5CF8091E80085FF0DC040E050E08F
-:1011700063E070E0CE0101960E94FF0A8091E800D2
-:101180008E778093E8000F900F900F90DF91CF91B2
-:101190000895CF93DF9300D01F92CDB7DEB7209193
-:1011A000ED01243021F522E029839B838A8383E0AB
-:1011B0008093E9008FEF9091E800815095FD06C083
-:1011C00095ED9A95F1F700008111F5CF8091E80037
-:1011D00085FF0DC040E050E063E070E0CE01019675
-:1011E0000E94FF0A8091E8008E778093E8000F90BC
-:1011F0000F900F90DF91CF9108952091ED01243051
-:10120000F1F422E02093E9002FEF3091E800215023
-:1012100035FD06C035ED3A95F1F700002111F5CF07
-:101220002091E80025FF0BC040E050E065E070E051
-:101230000E94FF0A8091E8008E778093E80008956D
-:10124000CF93DF93EC019091ED01943009F046C00B
-:1012500080910C018823D9F080910D018823B9F089
-:101260009093E9008FEF9091E800815095FD06C0C2
-:1012700095E19A95F1F700008111F5CF8091E80092
-:1012800085FF2CC040E050E060E170E017C081E0D5
-:101290008093E9008FEF9091E800815095FD06C0A2
-:1012A00095ED9A95F1F700008111F5CF8091E80056
-:1012B00085FF14C040E050E068E070E0CE010E947D
-:1012C000FF0A8091E8008E778093E80080E1FE01BC
-:1012D000A5E5B1E001900D928A95E1F7DF91CF91FC
-:1012E00008958091EC01811109C00E94940C0E9424
-:1012F000F10C8091E20084608093E20008951092E6
-:10130000EC01089508950C94D3220E94301C0E9491
-:10131000D9220E94970F0C94900842E061EC81E082
-:101320000E940E0C42E061EC82E00E940E0C42E052
-:1013300061EC83E00E940E0C42E161EC84E00C94CD
-:101340000E0C8091EF01833009F455C030F48130E8
-:1013500071F0823009F48EC008958A3009F47AC0A1
-:101360008B3009F460C0893009F09CC020C08091A6
-:10137000EE01813A09F096C08091E800877F809362
-:10138000E8008091F2019091F301892B21F460E152
-:1013900085E591E003C060E080E090E070E00E94AD
-:1013A0004A0B8091E8008B778093E8000895809144
-:1013B000EE01813209F076C08091F2019091F30143
-:1013C000009719F0039709F06DC08091E800877FBE
-:1013D0008093E8008091E80082FD05C08091ED01D6
-:1013E0008111F8CF5FC08091F100809365018091F9
-:1013F000E8008B7753C08091EE01813A09F052C02A
-:101400008091F2019091F301892B09F04BC08091FA
-:10141000E800877F8093E8008091E80080FFFCCFA0
-:1014200080910C0136C08091EE018132D9F5809116
-:10143000F2019091F301892BA9F58091E800877F53
-:101440008093E8000E94430C8091F00180930C018E
-:101450000C94AD148091EE01813221F58091E80069
-:10146000877F8093E8000E94430C8091F101809374
-:10147000660108958091EE01813AA1F48091E8001F
-:10148000877F8093E8008091E80080FFFCCF809107
-:1014900066018093F1008091E8008E778093E800E8
-:1014A0000C94430C089584B7877F84BF88E10FB6FE
-:1014B000F89480936000109260000FBE90E080E886
-:1014C0000FB6F89480936100909361000FBE0E9464
-:1014D000E60F0E94940C0E94F10C8091E20084605F
-:1014E0008093E20078940E94770F0E94E80F82E0D8
-:1014F00091E00E94920F0E94C1228091ED018530FF
-:1015000069F40E94F11B8091EB018823B1F30E94E2
-:101510001C1C882391F30E94E90AEFCF0E94EE0F72
-:10152000ECCF292F332723303105C9F064F4213063
-:10153000310581F02230310509F043C08DE690E09D
-:101540002AE433E042C021323105F1F02232310584
-:1015500041F137C082E190E027EB33E036C09927B4
-:101560008130910541F08230910541F0892B49F598
-:10157000E6E4F3E005C0EEE2F3E002C0E6E1F3E00A
-:10158000849190E09F0121C06430D8F4E62FF0E010
-:10159000EE0FFF1FEE5DFE4F2081318189E090E06C
-:1015A00014C0643070F470E0FB01EE0FFF1FE65EC4
-:1015B000FE4F20813181FB01EA5EFE4F808190E089
-:1015C00004C080E090E020E030E0FA013183208325
-:1015D000089580E189BD82E189BD09B400FEFDCF97
-:1015E0008091D8008F7D8093D8008091E000826048
-:1015F0008093E0008091E00081FDFCCF0895CF92C0
-:10160000DF92EF92FF920F931F93CF93DF93EC0142
-:101610008B016A010E94620C811133C0C114D10494
-:1016200039F0F60180819181081B190BC80FD91F71
-:10163000E12CF12C0115110519F18091E80085FDCF
-:1016400016C08091E8008E778093E800C114D10421
-:1016500049F0F60180819181E80EF91EF182E08265
-:1016600085E00FC00E94620C882321F30AC0899193
-:101670008093F10001501109FFEFEF1AFF0ADACF52
-:1016800080E0DF91CF911F910F91FF90EF90DF905D
-:10169000CF9008952091F4013091F5012617370776
-:1016A00048F06115710539F42091E8002E772093F8
-:1016B000E80001C0B90140E061157105A9F1209170
-:1016C000ED01222309F443C0253009F442C02091E2
-:1016D000E80023FD40C02091E80022FD32C02091A7
-:1016E000E80020FFE9CF4091F3002091F20030E0C4
-:1016F000342BFC01CF016115710559F028303105FB
-:1017000040F481918093F100615071092F5F3F4F48
-:10171000F1CF41E02830310509F040E02091E800A8
-:101720002E772093E800C8CF4111C9CF0AC080911D
-:10173000ED01882361F0853061F08091E80083FD40
-:101740000AC08091E80082FFF2CF80E0089582E035
-:10175000089583E0089581E008952091F401309187
-:10176000F5012617370748F06115710539F4209106
-:10177000E8002E772093E80001C0B901FC0120E0C9
-:101780006115710591F18091ED01882309F440C044
-:10179000853009F43FC08091E80083FD3DC0809111
-:1017A000E80082FD2FC08091E80080FFE9CF209102
-:1017B000F3008091F20090E0922B6115710559F0D1
-:1017C0008830910540F424912093F10031966150C6
-:1017D00071090196F2CF21E0089709F020E080918D
-:1017E000E8008E778093E800CBCF2111CCCF0AC0E0
-:1017F0008091ED01882361F0853061F08091E800EF
-:1018000083FD0AC08091E80082FFF2CF80E0089556
-:1018100082E0089583E0089581E00895982F97303D
-:1018200058F59093E900981739F07091EC002091E9
-:10183000ED005091F00003C0242F762F50E021FFDF
-:1018400019C03091EB003E7F3093EB003091ED00FA
-:101850003D7F3093ED003091EB0031603093EB0031
-:101860007093EC002093ED005093F0002091EE0077
-:1018700027FF07C09F5FD3CF8F708093E90081E07F
-:10188000089580E008958091EE0187FF11C0809156
-:10189000E80082FD05C08091ED018111F8CF11C0F3
-:1018A0008091E8008B770BC08091ED01882349F08F
-:1018B0008091E80080FFF8CF8091E8008E778093D8
-:1018C000E80008952091E4003091E50095E640910C
-:1018D000EC00842F817040FF22C08091E80080FDE1
-:1018E0001CC08091ED01882391F0853091F08091AA
-:1018F000EB0085FD10C04091E4005091E5004217D7
-:10190000530729F39A01915011F784E0089582E07A
-:10191000089583E0089581E0089580E0089540915E
-:10192000E80042FFDECF08950E94020D0E940A0DDA
-:10193000E0EEF0E0808181608083E8EDF0E080817E
-:101940008F77808319BCA7EDB0E08C918E7F8C934C
-:1019500080818F7E80831092EC0108950F931F93F6
-:10196000CF93DF930E94020D0E940A0DC8EDD0E0D4
-:1019700088818F77888388818068888388818F7D3C
-:10198000888319BC1092ED011092E9011092EB01CD
-:101990001092EA0100EE10E0F80180818B7F8083D5
-:1019A00088818160888342E060E080E00E940E0CC4
-:1019B000E1EEF0E080818E7F8083E2EEF0E08081D6
-:1019C00081608083808188608083F80180818E7F40
-:1019D0008083888180618883DF91CF911F910F91EF
-:1019E0000895E8EDF0E080818F7E8083E7EDF0E000
-:1019F00080818160808384E082BF81E08093EC01FC
-:101A00000C94AE0CE8EDF0E080818E7F8083109224
-:101A1000E20008951092DA001092E10008951F92FA
-:101A20000F920FB60F9211242F933F934F935F9312
-:101A30006F937F938F939F93AF93BF93EF93FF9396
-:101A40008091E10082FF0BC08091E20082FF07C01D
-:101A50008091E1008B7F8093E1000E94760F80915E
-:101A6000DA0080FF1FC08091D80080FF1BC08091EA
-:101A7000DA008E7F8093DA008091D90080FF0DC05C
-:101A800080E189BD82E189BD09B400FEFDCF81E01E
-:101A90008093ED010E94710905C019BC1092ED01FF
-:101AA0000E947F098091E10080FF19C08091E200CF
-:101AB00080FF15C08091E2008E7F8093E2008091CC
-:101AC000E20080618093E2008091D8008062809380
-:101AD000D80019BC85E08093ED010E9483098091B4
-:101AE000E10084FF30C08091E20084FF2CC080E1DF
-:101AF00089BD82E189BD09B400FEFDCF8091D80087
-:101B00008F7D8093D8008091E1008F7E8093E100EB
-:101B10008091E2008F7E8093E2008091E2008160FC
-:101B20008093E2008091E901882311F084E007C0EE
-:101B30008091E30087FD02C081E001C083E08093D3
-:101B4000ED010E9485098091E10083FF29C0809109
-:101B5000E20083FF25C08091E100877F8093E10050
-:101B600082E08093ED011092E9018091E1008E7F87
-:101B70008093E1008091E2008E7F8093E20080916B
-:101B8000E20080618093E20042E060E080E00E9439
-:101B90000E0C8091F00088608093F0000E94820912
-:101BA000FF91EF91BF91AF919F918F917F916F9135
-:101BB0005F914F913F912F910F900FBE0F901F900B
-:101BC00018951F920F920FB60F9211242F933F93E7
-:101BD0004F935F936F937F938F939F93AF93BF9335
-:101BE000CF93DF93EF93FF93C091E900CF70809183
-:101BF000EC00D82FD17080FDD0E81092E9008091E0
-:101C0000F000877F8093F00078940E94250E109258
-:101C1000E9008091F00088608093F000CD2BCF70B8
-:101C2000C093E900FF91EF91DF91CF91BF91AF9108
-:101C30009F918F917F916F915F914F913F912F91E4
-:101C40000F900FBE0F901F9018951F93CF93DF93A7
-:101C5000CDB7DEB7AA970FB6F894DEBF0FBECDBFE3
-:101C6000EEEEF1E088E08E0F9091F10091938E13EB
-:101C7000FBCF0E94A1098091E80083FF1FC18091E2
-:101C8000EE019091EF01492F50E04A30510508F0E4
-:101C900015C1FA01EA5AFF4F0C945B24803881F099
-:101CA000823809F00BC18091F2018F708093E900B6
-:101CB0008091EB0085FB882780F91092E90006C02F
-:101CC0008091EA019091EB01911182609091E8007E
-:101CD000977F9093E8008093F1001092F100C8C0C4
-:101CE000282F2D7F09F0EAC0882319F0823061F097
-:101CF000E5C08091F001813009F0E0C0933009F037
-:101D000080E08093EB012BC08091F001811127C00E
-:101D10008091F2018F7009F4D1C08093E900209185
-:101D2000EB0020FF1CC0933021F48091EB00806217
-:101D300014C09091EB0090619093EB0021E030E0B3
-:101D4000A90102C0440F551F8A95E2F74093EA00AB
-:101D50001092EA008091EB0088608093EB00109273
-:101D6000E9008091E800877F86C08111A7C01091AB
-:101D7000F0011F778091E3008078812B8093E3004E
-:101D80008091E800877F8093E8000E94430C809157
-:101D9000E80080FFFCCF8091E30080688093E3003F
-:101DA000111102C082E001C083E08093ED0186C082
-:101DB0008058823008F082C08091F0019091F1014A
-:101DC0008C3D53E0950779F583E08A838AE2898325
-:101DD0004FB7F894DE01139620E03EE051E2E32F86
-:101DE000F0E050935700E49120FF03C0E295EF70BC
-:101DF0003F5FEF708E2F90E0EA3010F0C79601C081
-:101E0000C0968D939D932F5F243149F74FBF8091EA
-:101E1000E800877F8093E8006AE270E0CE010196D7
-:101E20000E944A0B14C0AE014F5F5F4F6091F201F8
-:101E30000E94910ABC01892B09F440C09091E800EE
-:101E4000977F9093E80089819A810E94AD0B8091E1
-:101E5000E8008B778093E80031C0803879F5809175
-:101E6000E800877F8093E8008091E9018093F1008A
-:101E70008091E8008E778093E8000E94430C1EC09A
-:101E800081111CC09091F0019230C0F48091E80063
-:101E9000877F8093E8009093E9010E94430C809132
-:101EA000E901811106C08091E30087FD02C081E055
-:101EB00001C084E08093ED010E948D098091E800CB
-:101EC00083FF0AC08091E800877F8093E8008091BB
-:101ED000EB0080628093EB00AA960FB6F894DEBF09
-:101EE0000FBECDBFDF91CF911F9108950895CF937D
-:101EF0008091ED018823A1F0C091E900CF7090910D
-:101F0000EC00892F817090FD80E8C82B1092E900C9
-:101F10008091E80083FD0E94250ECF70C093E900F8
-:101F2000CF91089590936C0180936B010895E09197
-:101F30006B01F0916C01309721F00190F081E02D60
-:101F4000099480E00895E0916B01F0916C01309765
-:101F500021F00280F381E02D09940895E0916B0156
-:101F6000F0916C01309721F00480F581E02D099407
-:101F700008952091690130916A018217930771F0E9
-:101F800090936A0180936901E0916B01F0916C017B
-:101F9000309721F00680F781E02D09940895209173
-:101FA0006701309168018217930771F0909368017F
-:101FB00080936701E0916B01F0916C01309721F003
-:101FC0000084F185E02D0994089508950C94E50F9F
-:101FD0000E94361C0E94A8040C94FC1CCF92DF9235
-:101FE000EF92FF920F931F93CF93DF93CDB7DEB79E
-:101FF0002B970FB6F894DEBF0FBECDBF0E94C00472
-:102000008EE6C82E81E0D82E00E010E0E02E802F72
-:102010000E94AE05F60141916F01F42EF826B1F44D
-:102020000F5F1F4F0E30110589F78FEF89838A8369
-:102030001B820E943F1C8160782F9D838C83498185
-:102040005A816B818D810E94911040C09091D60180
-:1020500091FF04C08B870E94B4058B8520E030E09F
-:102060004F2D50E0922FBA01022E02C07595679550
-:102070000A94E2F760FF24C02E83EF8221E030E073
-:10208000690102C0CC0CDD1C9A95E2F790E08C212E
-:102090009D21892B09F420E028870E943F1C816044
-:1020A000782F9A8789874E815F8168858A850E940B
-:1020B0009110F801E259FE4F8081C826C08206C007
-:1020C0002F5F3F4F2630310569F6AACF0E94E31FEC
-:1020D00010916D010E94970F1817A1F00E94970FA1
-:1020E00080936D012B960FB6F894DEBF0FBECDBF67
-:1020F000DF91CF911F910F91FF90EF90DF90CF90E4
-:102100000C9490082B960FB6F894DEBF0FBECDBF8F
-:10211000DF91CF911F910F91FF90EF90DF90CF90C3
-:102120000895CF93DF93CDB7DEB72B970FB6F89412
-:10213000DEBF0FBECDBF4F83588769877A878B87F5
-:10214000DE01119686E0FD0111928A95E9F785E09E
-:10215000FE01379601900D928A95E1F749815A81E7
-:102160006B817C818D819E810E944B172B960FB6CF
-:10217000F894DEBF0FBECDBFDF91CF9108950895D3
-:10218000CF93882309F4C2C0C82F823859F40E9423
-:10219000970F81FDBBC089E30E948E1A0E946B1BC2
-:1021A00089E30CC0833879F40E94970F80FDAEC09C
-:1021B00083E50E948E1A0E946B1B83E50E94D01A51
-:1021C000CF910C946B1B843859F40E94970F82FDB9
-:1021D0009DC087E40E948E1A0E946B1B87E4EECF9D
-:1021E0008CEF8C0F813A48F48C2F0E9426228111AB
-:1021F0008DC08C2F0E948E1AE3CF80E28C0F883026
-:1022000048F4C77081E001C0880FCA95EAF70E94C0
-:10221000171BD6CF8BE58C0F833078F4C53A29F0A5
-:10222000C63A31F083E890E005C081E890E002C052
-:1022300082E890E0CF910C94B90F88E58C0F833140
-:1022400008F064C0C83A39F1C93A41F1CA3A49F1D3
-:10225000CB3A51F1CC3A59F1CD3A61F1C03B69F139
-:10226000CE3A71F1CF3A79F1C13B81F1C23B89F1AC
-:10227000C33B91F1C43B99F1C53BA1F1C63BA9F128
-:10228000C73BB1F1C83BB9F1C93BC1F1CA3BC9F188
-:1022900080E090E038C082EE90E035C089EE90E0BA
-:1022A00032C08AEE90E02FC085EB90E02CC086EB28
-:1022B00090E029C087EB90E026C08CEC90E023C032
-:1022C0008DEC90E020C083E891E01DC08AE891E0A9
-:1022D0001AC082E991E017C084E991E014C081E25C
-:1022E00092E011C083E292E00EC084E292E00BC063
-:1022F00085E292E008C086E292E005C087E292E0C3
-:1023000002C08AE292E0CF910C94CF0FCF91089552
-:10231000882309F44BC0823859F40E94970F81FF3B
-:1023200045C089E30E948E1A0E946B1B89E30CC092
-:10233000833871F40E94970F80FF38C083E50E94B4
-:102340008E1A0E946B1B83E50E94D01A0C946B1BA3
-:10235000843859F40E94970F82FF28C087E40E94B6
-:102360008E1A0E946B1B87E4EFCF9CEF980F913A77
-:1023700058F390E2980F983050F4877091E001C0C4
-:10238000990F8A95EAF7892F0E941D1BDFCF9BE5E5
-:10239000980F933020F480E090E00C94B90F885AA5
-:1023A000833120F480E090E00C94CF0F08958823CF
-:1023B00021F00E94171B0C946B1B0895882321F0B9
-:1023C0000E941D1B0C946B1B08952F923F924F92FD
-:1023D0005F927F928F929F92AF92BF92CF92DF9245
-:1023E000EF92FF920F931F93CF93DF9300D000D013
-:1023F0001F92CDB7DEB725E0FC01DE0111960190FA
-:102400000D922A95E1F7FC0100811181F280E580AF
-:10241000E2943FE0E32223813481232B09F472C24A
-:102420001F3F19F40F3F09F46DC26C010E942A1A74
-:10243000882319F082E00E946C1AC6010E94BF1026
-:1024400009831A8369817A818F2D0E94F0198C018A
-:102450000E94A5190E946C18F1100E94341B0E9462
-:10246000871A882379F0FF2069F080E2800F883096
-:1024700048F082E00E946C1A0E94871A91E0782E40
-:10248000792601C0712CE12FE295EF70F0E0E05A5F
-:10249000FF4F0C945B24812F807F1F70882311F0E5
-:1024A0001295107FFF2089F0112309F4E8C180E222