diff options
Diffstat (limited to 'keyboard')
-rw-r--r-- | keyboard/ergodox_ez/keymaps/alexjj/keymap.c | 189 | ||||
-rw-r--r-- | keyboard/ergodox_ez/keymaps/alexjj/keymap.hex | 1127 | ||||
-rw-r--r-- | keyboard/ergodox_ez/keymaps/alexjj/readme.md | 136 | ||||
-rw-r--r-- | keyboard/ergodox_ez/keymaps/alexjj/rl-layout.jpg | bin | 0 -> 833107 bytes |
4 files changed, 1452 insertions, 0 deletions
diff --git a/keyboard/ergodox_ez/keymaps/alexjj/keymap.c b/keyboard/ergodox_ez/keymaps/alexjj/keymap.c new file mode 100644 index 0000000000..b649e6951e --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/alexjj/keymap.c @@ -0,0 +1,189 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ESC | 1! | 2@ | 3# | 4$ | 5% | 6^ | | 7& | 8* | 9( | 0) | -_ | += | BkSp | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | { | | } | Y | U | I | O | P | |\ | + * |--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------| + * | Win | A | S | D | F | G |------| |------| H | J | K | L | :; | '" | + * |--------+------+------+------+------+------| Home | | End |------+------+------+------+------+--------| + * | LShift |Z/Alt | X | C | V | B | | | | N | M | , | . |//Alt| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |LCtrl | `~ | Hyper| Left | Right| | Down | Up | COPY | PASTE| RCtrl | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * Hyper = Ctrl+Super+Alt+Shift | Alt | F5 | | F2 | ~L2 | + * ,------|------|------| |------+------+------. + * | | | PgUp | | Ins | | | + * | Space| BkSp |------| |------| ~L1 |Enter | + * | | | PgDn | | Del | | | + * `--------------------' `--------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, + KC_LGUI, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, ALT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_HOME, + KC_LCTRL, KC_GRV, ALL_T(KC_NO), KC_LEFT,KC_RGHT, + KC_LALT, KC_F5, + KC_PGUP, + KC_SPC,KC_BSPC,KC_PGDN, + // right hand + KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, + KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, + KC_END, KC_N, KC_M, KC_COMM,KC_DOT, ALT_T(KC_SLSH), KC_RSFT, + KC_DOWN,KC_UP, LCTL(KC_C),LCTL(KC_V), KC_RCTRL, + KC_F2, KC_FN2, + KC_INS, + KC_DELT,KC_FN1, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 |PrintScr| + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | £ | | | | | | . | 0 | = |Alt+F4| + * `----------------------------------' `----------------------------------' + * ↑ ,-------------. ,-------------. + * THERE! | | | | | | + * ,------|------|------| |------+------+------. + * CAD = Ctrl + Alt + Delete | | | | | | | | + * | | |------| |------| | | + * | | | | | CAD | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + 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_TRNS, + KC_TRNS,M(3),KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_TRNS, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, LALT(KC_F4), + KC_TRNS, KC_TRNS, + KC_TRNS, + LCTL(LALT(KC_DEL)), KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | TEENSY | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB), // FN1 - Momentary Layer 1 (Symbols) + [2] = ACTION_LAYER_TAP_TOGGLE(MDIA) // FN2 - Momentary Layer 2 (Media) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + case 3: // this would trigger when you hit a key mapped as M(3) + if (record->event.pressed) { + return MACRO( I(255), D(LALT), T(PPLS), T(P0), T(P0), T(A), T(P3), T(P0), U(LALT), END ); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void * matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void * matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboard/ergodox_ez/keymaps/alexjj/keymap.hex b/keyboard/ergodox_ez/keymaps/alexjj/keymap.hex new file mode 100644 index 0000000000..9dc1ac412b --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/alexjj/keymap.hex @@ -0,0 +1,1127 @@ +:100000000C9476020C94BD020C94BD020C94BD02BB
+:100010000C94BD020C94BD020C94BD020C94BD0264
+:100020000C94BD020C94BD020C94F80B0C94CA0CF9
+:100030000C94BD020C94BD020C94BD020C94BD0244
+:100040000C94BD020C943E210C94BD020C94BD0294
+:100050000C94BD020C94D01A0C94BD020C94BD02F9
+:100060000C94BD020C94BD020C94BD020C94BD0214
+:100070000C94BD020C94BD020C94BD020C94BD0204
+:100080000C94BD020C94BD020C94BD020C94BD02F4
+:100090000C94BD020C94BD020C94BD020C94BD02E4
+:1000A0000C94BD020C94BD020C94BD02370D590D89
+:1000B0004C0E590D4C0E9E0DC10D4C0E160E290EF8
+:1000C00013111311421142118511BF11CC13CC131E
+:1000D000D811CC13CD12CD12A013CC13CC13B7135F
+:1000E00075FF01E20157025701620262016202627A
+:1000F00001040204015B025B0162026202E2000091
+:1001000000F0A1F0A229002B00E300E100E00000D4
+:10011000001E00140004001D7435004E001F001A5C
+:100120000016001B00007F2A0020000800070006C0
+:100130000050002C0021001500090019004F004B51
+:1001400000220017000A0005000000E20023002F33
+:100150000000004A0000003E002400300000004D76
+:100160000000003B0025001C000B0011000000C235
+:1001700000260018000D0010005100490027000C57
+:10018000000E003600520028002D0012000F00372C
+:10019000000601C1002E0013003300387419014C11
+:1001A000002A0031003400E500E4000000010001F5
+:1001B0000001000100010000003A001E022002229E
+:1001C00002033001003B001F022102230201000153
+:1001D000003C002F0226022F00010001003D0030EC
+:1001E0000227023000010001003E003102350035D7
+:1001F00002000001003F00010000000100000001BA
+:100200000040000100000001000000010041005218
+:100210000051002402000001004200240021001EC1
+:1002200000010001004300250022001F00370001EB
+:10023000004400260023002000270001004500257F
+:10024000022E0231002E004C054600010001000183
+:10025000003D040000005001000100010001000009
+:100260000001000100010001000100010001000186
+:1002700000F2000100010001000100F000F10001A6
+:1002800000F400010001000100F3000100F500018D
+:100290000001000100010001000000010001000157
+:1002A0000000000100000001000100010000000149
+:1002B0000000000100010001000100010000000138
+:1002C000000100010001000100A90001000100017E
+:1002D000000100AC00AA00B600010001000100AB63
+:1002E00000A800010001000100010001000100015F
+:1002F0000001000100AE00010001000000160345EE
+:1003000000720067006F0044006F00780020004515
+:10031000005A00000016034500720067006F004499
+:10032000006F007800200045005A00000004030917
+:100330000409026D00040100A0FA09040000010391
+:10034000010100092111010001223F00070581037D
+:1003500008000A090401000103010200092111013A
+:100360000001224D000705820308000A090402006B
+:1003700001030000000921110100012236000705D8
+:10038000830308000A090403000103000000092197
+:100390001101000122390007058403100001120138
+:1003A000100100000008EDFE07130100010200012A
+:1003B00005010906A101050719E029E71500250136
+:1003C0009508750181020508190129059505750132
+:1003D0009102950175039101050719002977150010
+:1003E0002501957875018102C005010980A101856B
+:1003F0000216010026B7001A01002AB700751095F1
+:10040000018100C0050C0901A10185031601002628
+:100410009C021A01002A9C02751095018100C005FA
+:10042000010902A1010901A1000509190129051508
+:10043000002501950575018102950175038101056E
+:1004400001093009311581257F950275088106095A
+:10045000381581257F950175088106050C0A38023B
+:100460001581257F950175088106C0C00501090623
+:10047000A101050719E029E7150025019508750177
+:100480008102950175088101050819012905950565
+:10049000750191029501750391010507190029FF66
+:1004A000150025FF950675088100C00000000000BA
+:1004B000000000000000010204060A0F17202C3A79
+:1004C0004A5D71879DB3C7DAE9F5FCFFFCF5E9DA0F
+:1004D000C7B39D87715D4A3A2C20170F0A060402A4
+:1004E00001000000000000000000000011241FBEF9
+:1004F000CFEFDAE0DEBFCDBF04B603FE27C08091A8
+:10050000ED019091EE01A091EF01B091F0018730E3
+:10051000904BA740B04BD1F41092ED011092EE0138
+:100520001092EF011092F00114BE84B7877F84BF50
+:100530000FB6F894A8958091600088618093600060
+:10054000109260000FBEE0E0FFE3099511E0A0E02B
+:10055000B1E0EEE1F6E402C005900D92A433B107DC
+:10056000D9F721E0A4E3B1E001C01D92AD3EB2078E
+:10057000E1F70E943F090C940D230C940000CF93E7
+:10058000DF93EC01662319F0633059F00DC08A81C6
+:10059000882321F085EE0E94AD0F03C085EE0E94F6
+:1005A00075108A81811103C080E090E002C080EE66
+:1005B00090E0DF91CF91089508956091B10170911D
+:1005C000B2018091B3019091B4010E94FD19569837
+:1005D0005E9825982D9826982E9827982F988130E8
+:1005E00019F0823021F00895259A2D9A0895269ABF
+:1005F0002E9A08958DED92E0892B11F00E94DD0274
+:1006000080E090E0089556985E9825982D98269859
+:100610002E9827982F988FEF90E0909389008093E1
+:10062000880090938B0080938A0090938D00809334
+:100630008C00259A2D9A2FEF80E792E02150804080
+:100640009040E1F700C00000269A2E9A2FEF80E735
+:1006500092E0215080409040E1F700C00000279ACE
+:100660002F9A2FEF80E792E0215080409040E1F7F1
+:1006700000C0000025982D982FEF80E792E02150D0
+:1006800080409040E1F700C0000026982E982FEFA0
+:1006900080E792E0215080409040E1F700C00000E8
+:1006A00027982F9856985E9825982D9826982E98DA
+:1006B00027982F98089589EA8093800089E0809395
+:1006C000810024982C983F988AB18F748AB96E98CB
+:1006D000479A8BB1806B8BB9769A0E9403038CED9D
+:1006E00092E0892B11F00E94DC0280E090E00895F6
+:1006F00080E2809300018091340181110EC00E943C
+:10070000C70381E0809334012FEF83ED90E3215004
+:1007100080409040E1F700C0000080E40E94CD03DB
+:100720008093000181112EC00E94F7038093000185
+:10073000811128C00E94F70380930001811122C01B
+:100740008FE30E94F7038093000181111BC00E9478
+:10075000EF0380E40E94CD0380930001811112C059
+:100760008CE00E94F7038093000181110BC00E946E
+:10077000F70380930001811105C08FE30E94F70306
+:10078000809300010E94EF03809100010895109270
+:10079000B9008AE08093B800089594EA9093BC0071
+:1007A0009091BC0097FFFCCF9091B900987F983052
+:1007B00021F0903111F081E008958093BB0084E82E
+:1007C0008093BC008091BC0087FFFCCF8091B90072
+:1007D000887F883111F0803471F780E0089584E9D2
+:1007E0008093BC008091BC0084FDFCCF0895809371
+:1007F000BB0084E88093BC008091BC0087FFFCCFE5
+:100800009091B900987F81E0983209F480E00895D2
+:1008100084E88093BC008091BC0087FFFCCF80916E
+:10082000BB00089580910001811115C080E40E94F1
+:10083000CD038093000181110CC082E10E94F70377
+:1008400080930001811105C08FEF0E94F703809310
+:1008500000010E94EF0384B1807F84B985B1807F5D
+:1008600085B98AB1837F8AB98BB1837F8BB93E9872
+:10087000469808950E947803809300010E94120414
+:1008800080B38C7080BB81B3836F81BBE4E4F1E003
+:10089000A6E3B1E011921D9281E0E235F807D1F7AD
+:1008A0008BE593E0892B11F00C945B0308959F92E4
+:1008B000AF92BF92CF92DF92EF92FF920F931F936E
+:1008C000CF93DF9380910001882379F080913501E7
+:1008D0008F5F80933501811108C00E947803809357
+:1008E0000001811102C00E94030386E3E82E81E02B
+:1008F000F82E8701C0E0D0E0BB24B39492E0A92E8B
+:10090000CC24C394D12CC730D10500F580910001CF
+:10091000811164C080E40E94CD03809300018111A5
+:1009200012C082E10E94F7038093000181110BC085
+:10093000C6010C2E01C0880F0A94EAF780950E9428
+:10094000F703809300010E94EF0348C0CA30A1F072
+:1009500028F4C83059F0C93061F005C0CC3089F0B6
+:1009600070F0CD3089F0209A289810C0219A2998EB
+:100970000DC0229A2A980AC0239A2B9807C0529A2F
+:1009800001C0539A5B9802C03E9A4698E0EAEA9505
+:10099000F1F78FB181708B25799902C032E001C0E7
+:1009A00030E0832B7C9902C034E001C030E0832B1F
+:1009B0007D9902C028E001C020E0822B7E9902C010
+:1009C00090E101C090E0892B9FB19095991F9927E4
+:1009D000991F9295990F907E892B0FC080910001ED
+:1009E000811150C080E40E94CD03809300018823D0
+:1009F000B1F1912C0E94EF03892DD8019C91981799
+:100A000019F08C93A09201010E94120421960F5FAD
+:100A10001F4FCE30D10509F076CF80910101882398
+:100A2000B9F0815080930101882339F0EFE9FFE0AC
+:100A30003197F1F700C000000BC0E4E4F1E0D7010A
+:100A40008D917D018193B4E4EB16B1E0FB06B9F71B
+:100A50008AEF92E0892BC1F00E94FA0215C083E16F
+:100A60000E94F703809300018111C3CF81E40E94AB
+:100A7000CD03809300018111BCCF0E940804982E01
+:100A80009094B8CF80E0B9CF81E0DF91CF911F91F2
+:100A90000F91FF90EF90DF90CF90BF90AF909F901D
+:100AA0000895E82FF0E0EC5BFE4F808108950895F3
+:100AB0008B3B910580F4883A910548F5853A91057C
+:100AC000D8F48430910508F0B2C0019709F06EC0E7
+:100AD00081E090E00895803E910508F467C0883E6B
+:100AE000910508F4A4C09C01205F31092031310533
+:100AF00008F05CC090650895853A910509F459C0E5
+:100B0000863A910509F058C082E890E40895883A41
+:100B1000910509F454C0893A910509F453C08A3A01
+:100B2000910509F452C08B3A910509F451C08C3AF1
+:100B3000910509F450C08D3A910509F44FC0803BEE
+:100B4000910509F44EC08E3A910509F44DC08F3AD3
+:100B5000910509F44CC0813B910509F44BC0823BDF
+:100B6000910509F44AC0833B910509F449C0843BCF
+:100B7000910509F448C0853B910509F447C0863BBF
+:100B8000910509F446C0873B910509F445C0883BAF
+:100B9000910509F444C0893B910509F443C08A3B9F
+:100BA000910509F442C080E094E4089580E090E06B
+:100BB000089581E890E4089583E890E4089582EE32
+:100BC00094E4089589EE94E408958AEE94E40895F7
+:100BD00085EB94E4089586EB94E4089587EB94E420
+:100BE00008958CEC94E408958DEC94E4089583E8E2
+:100BF00095E408958AE895E4089582E995E40895D6
+:100C000084E995E4089581E296E4089583E296E408
+:100C1000089584E296E4089585E296E4089586E2D4
+:100C200096E4089587E296E408958AE296E40895AA
+:100C3000089524E5829FC0011124FC0126E0729FE3
+:100C4000E00DF11D1124E60FF11DEE0FFF1FEB5F0C
+:100C5000FE4F859194910895880F991FFC01E158EA
+:100C6000F040859194910895880F991FFC01E150FF
+:100C7000FF4F85919491089524E5829FC00111242E
+:100C8000FC0146E0749FE00DF11D1124E60FF11DFB
+:100C9000EE0FFF1FEB5FFE4F859194919C013A95FB
+:100CA00021154FE1340708F425C13F51211530418A
+:100CB00020F49F700E94340608959C013053211542
+:100CC000304118F49927906C0895811520E592071A
+:100CD00069F40E94EE134FEF84E39CE041508040A2
+:100CE0009040E1F700C000000C94F51A813020E537
+:100CF000920731F48091CC0181608093CC010895FA
+:100D00009C0130552115304108F05CC0292F332754
+:100D10002F70332721303105E9F4AC0164E0440F32
+:100D2000551F6A95E1F744275370BC01637077271C
+:100D300002C0220F331F6A95E2F73C68242B352B43
+:100D400073E0880F991F7A95E1F780769927822BB7
+:100D5000932B08952230310529F4982F8827816F2D
+:100D6000906A089523303105A1F4AC0133E0440FBB
+:100D7000551F3A95E1F7407E57708370992721E01F
+:100D800030E002C0220F331F8A95E2F7C9019C6848
+:100D900016C02430310531F5AC0123E0440F551F56
+:100DA0002A95E1F7407E57708370992721E030E063
+:100DB00002C0220F331F8A95E2F7C9019A68842B7B
+:100DC000952B08959C0130572115304118F49F70E0
+:100DD000906208959C0130582115304118F49F709D
+:100DE000906A0895803E9105E0F4803C910558F5A5
+:100DF0008133910509F46FC048F48932910509F4F3
+:100E000063C08A32910509F46DC072C089339105BF
+:100E1000E9F082389105D1F08533910509F44DC090
+:100E200067C0833E910581F138F4803E9105B9F0A9
+:100E3000823E9105D9F05CC0863E910561F1873E06
+:100E40009105A1F155C00E942C0608952091DE0164
+:100E500020FD02C021FF4CC080EE90E049C080918F
+:100E6000DE0180FFF9CF89E390E042C08091DE018E
+:100E700082FF0EC08091DE0184FF03C080E090E01D
+:100E800037C083EE90E034C08091DE0182FFF2CF64
+:100E900082EE90E02DC08091DE0183FF0BC0809137
+:100EA000DE0184FDEBCF87EE90E022C08091DE0171
+:100EB00083FFF5CF86EE90E01BC08091DE0185FFB9
+:100EC00007C089E290E014C08091DE0185FFF9CF70
+:100ED00085E390E00DC08091DE0186FF07C08AE2C5
+:100EE00090E006C08091DE0186FFF9CF81E390E0BB
+:100EF0000E94580508950895809162010895CF9346
+:100F0000DF9300D01F92CDB7DEB79C018091E40142
+:100F1000843019F593E099833B832A839093E90009
+:100F20008FEF9091E800815095FD06C095ED9A9560
+:100F3000F1F700008111F5CF8091E80085FF0DC029
+:100F400040E050E063E070E0CE0101960E94EC09C1
+:100F50008091E8008E778093E8000F900F900F90BB
+:100F6000DF91CF910895CF93DF9300D01F92CDB73B
+:100F7000DEB72091E401243021F522E029839B8310
+:100F80008A8383E08093E9008FEF9091E80081509D
+:100F900095FD06C095ED9A95F1F700008111F5CF0A
+:100FA0008091E80085FF0DC040E050E063E070E014
+:100FB000CE0101960E94EC098091E8008E77809323
+:100FC000E8000F900F900F90DF91CF9108959C0152
+:100FD0008091E4018430F9F482E08093E9009FEF8E
+:100FE0008091E800915085FD06C085ED8A95F1F766
+:100FF00000009111F5CF8091E80085FF0CC040E022
+:1010000050E065E070E0C9010E94EC098091E800C1
+:101010008E778093E8000895CF93DF93EC01809161
+:10102000E401843009F046C090910C019923D9F075
+:1010300090910D019923B9F08093E9008FEF909181
+:10104000E800815095FD06C095E19A95F1F7000002
+:101050008111F5CF8091E80085FF2CC040E050E081
+:1010600060E170E017C081E08093E9008FEF90911C
+:10107000E800815095FD06C095ED9A95F1F70000C6
+:101080008111F5CF8091E80085FF14C040E050E069
+:1010900068E070E0CE010E94EC098091E8008E7754
+:1010A0008093E80080E1FE01A2E5B1E001900D929D
+:1010B0008A95E1F7DF91CF9108958091E301811145
+:1010C00009C00E947D0B0E94DA0B8091E2008460CF
+:1010D0008093E20008951092E301089508950C941E
+:1010E0002B210E948B1A0E9431210E94850E0C94A4
+:1010F0007B0742E061EC81E00E94F60A42E061EC8D
+:1011000082E00E94F60A42E061EC83E00E94F60A67
+:1011100042E161EC84E00C94F60A8091E6018330B0
+:1011200009F455C030F4813071F0823009F48EC07A
+:1011300008958A3009F47AC08B3009F460C0893090
+:1011400009F09CC020C08091E501813A09F096C069
+:101150008091E800877F8093E8008091E901909179
+:10116000EA01892B21F460E182E591E003C060E0AF
+:1011700080E090E070E00E94370A8091E8008B7771
+:101180008093E80008958091E501813209F076C0EE
+:101190008091E9019091EA01009719F0039709F015
+:1011A0006DC08091E800877F8093E8008091E8001F
+:1011B00082FD05C08091E4018111F8CF5FC080916C
+:1011C000F100809362018091E8008B7753C0809199
+:1011D000E501813A09F052C08091E9019091EA015C
+:1011E000892B09F04BC08091E800877F8093E8004D
+:1011F0008091E80080FFFCCF80910C0136C0809187
+:10120000E5018132D9F58091E9019091EA01892BBC
+:10121000A9F58091E800877F8093E8000E942B0B5E
+:101220008091E70180930C010C94EE138091E5010D
+:10123000813221F58091E800877F8093E8000E9449
+:101240002B0B8091E8018093630108958091E50163
+:10125000813AA1F48091E800877F8093E800809133
+:10126000E80080FFFCCF809163018093F1008091C2
+:10127000E8008E778093E8000C942B0B089584B7D8
+:10128000877F84BF0FB6F894A8958091600088612D
+:1012900080936000109260000FBE90E080E80FB66F
+:1012A000F89480936100909361000FBE0E94D40E69
+:1012B0000E947D0B0E94DA0B8091E2008460809393
+:1012C000E20078940E94650E0E94D60E82E091E0C2
+:1012D0000E94800E0E9419218091E401853069F4FA
+:1012E0000E944D1A8091E2018823B1F30E94771A7F
+:1012F000882391F30E94D609EFCF0E94DC0EECCF39
+:10130000292F332723303105C9F060F4213031050E
+:1013100081F02230310509F041C08DE690E021E3F3
+:1013200033E040C021323105E1F02232310531F1A4
+:1013300035C082E190E02EE933E034C09927813056
+:10134000910549F028F0029749F5EDEFF2E005C06C
+:10135000EDE2F3E002C0E5E1F3E0849190E09F016B
+:1013600021C06430D8F4E62FF0E0EE0FFF1FEE5DF1
+:10137000FE4F2081318189E090E014C0643070F428
+:1013800070E0FB01EE0FFF1FE65EFE4F2081318112
+:10139000FB01EA5EFE4F808190E004C080E090E0B7
+:1013A00020E030E0FA0131832083089580E189BD97
+:1013B00082E189BD09B400FEFDCF8091D8008F7D08
+:1013C0008093D8008091E00082608093E00080915B
+:1013D000E00081FDFCCF0895CF92DF92EF92FF9263
+:1013E0000F931F93CF93DF93EC018B016A010E944F
+:1013F0004A0B811133C0C114D10439F0F601808148
+:101400009181081B190BC80FD91FE12CF12C011574
+:10141000110519F18091E80085FD16C08091E80062
+:101420008E778093E800C114D10449F0F6018081E1
+:101430009181E80EF91EF182E08285E00FC00E94E2
+:101440004A0B882321F30AC089918093F10001504F
+:101450001109FFEFEF1AFF0ADACF80E0DF91CF9199
+:101460001F910F91FF90EF90DF90CF900895209102
+:10147000EB013091EC012617370748F06115710533
+:1014800039F42091E8002E772093E80001C0B901DB
+:10149000FC0120E06115710579F18091E401882358
+:1014A000F1F18530F1F18091E80083FD3CC080913D
+:1014B000E80082FD2EC08091E80080FFEBCF2091F4
+:1014C000F3008091F20090E0922B6115710551F0CC
+:1014D0008830910538F421912093F1006150710911
+:1014E0000196F3CF21E0089709F020E08091E80011
+:1014F0008E778093E800CECF2111CFCF0AC08091A4
+:10150000E401882361F0853061F08091E80083FD7B
+:101510000AC08091E80082FFF2CF80E0089582E067
+:10152000089583E0089581E008952091EB013091C2
+:10153000EC012617370748F06115710539F4209141
+:10154000E8002E772093E80001C0B901FC0120E0FB
+:101550006115710591F18091E401882309F440C07F
+:10156000853009F43FC08091E80083FD3DC0809143
+:10157000E80082FD2FC08091E80080FFE9CF209134
+:10158000F3008091F20090E0922B6115710559F003
+:101590008830910540F424912093F10031966150F8
+:1015A00071090196F2CF21E0089709F020E08091BF
+:1015B000E8008E778093E800CBCF2111CCCF0AC012
+:1015C0008091E401882361F0853061F08091E8002A
+:1015D00083FD0AC08091E80082FFF2CF80E0089589
+:1015E00082E0089583E0089581E00895982F973070
+:1015F00068F59093E900981739F07091EC0020910C
+:10160000ED005091F00003C0242F762F50E021FD13
+:1016100002C09F5FECCF3091EB003E7F3093EB0038
+:101620003091ED003D7F3093ED003091EB00316063
+:101630003093EB007093EC002093ED005093F0009A
+:101640002091EE0027FDE5CF80E008958F70809314
+:10165000E90081E008958091E50187FF11C0809144
+:10166000E80082FD05C08091E4018111F8CF11C02E
+:101670008091E8008B770BC08091E401882349F0CA
+:101680008091E80080FFF8CF8091E8008E7780930A
+:10169000E80008952091E4003091E50095E640913E
+:1016A000EC00842F817040FF23C08091E80080FD12
+:1016B0001DC08091E401882399F0853099F08091D4
+:1016C000EB0085FD11C04091E4005091E500241726
+:1016D000350729F3915011F09A01E1CF84E0089584
+:1016E00082E0089583E0089581E0089580E0089500
+:1016F0004091E80042FFDDCF08950E94EB0B0E946D
+:10170000F30BE0EEF0E0808181608083E8EDF0E0B3
+:1017100080818F77808319BCA7EDB0E08C918E7F9C
+:101720008C9380818F7E80831092E30108950F93C4
+:101730001F93CF93DF930E94EB0B0E94F30BC8ED36
+:10174000D0E088818F7788838881806888838881CA
+:101750008F7D888319BC1092E4011092E0011092F1
+:10176000E2011092E10100EE10E0F80180818B7F30
+:10177000808388818160888342E060E080E00E940D
+:10178000F60AE1EEF0E080818E7F8083E2EEF0E009
+:10179000808181608083808188608083F80180817E
+:1017A0008E7F8083888180618883DF91CF911F91B4
+:1017B0000F910895E8EDF0E080818F7E8083E7ED62
+:1017C000F0E080818160808384E082BF81E080934B
+:1017D000E3010C94970BE8EDF0E080818E7F80832D
+:1017E0001092E20008951092DA001092E10008953C
+:1017F0001F920F920FB60F9211242F933F934F9386
+:101800005F936F937F938F939F93AF93BF93EF9368
+:10181000FF938091E10082FF0BC08091E20082FF84
+:1018200007C08091E1008B7F8093E1000E94640EED
+:101830008091DA0080FF1FC08091D80080FF1BC01C
+:101840008091DA008E7F8093DA008091D90080FF4A
+:101850000DC080E189BD82E189BD09B400FEFDCFE4
+:1018600081E08093E4010E945D0805C019BC1092DC
+:10187000E4010E946B088091E10080FF19C0809113
+:10188000E20080FF15C08091E2008E7F8093E2002D
+:101890008091E20080618093E2008091D8008062B4
+:1018A0008093D80019BC85E08093E4010E946F0802
+:1018B0008091E10084FF30C08091E20084FF2CC061
+:1018C00080E189BD82E189BD09B400FEFDCF809130
+:1018D000D8008F7D8093D8008091E1008F7E809327
+:1018E000E1008091E2008F7E8093E2008091E2002F
+:1018F00081608093E2008091E001882311F084E010
+:1019000007C08091E30087FD02C081E001C083E051
+:101910008093E4010E9471088091E10083FF29C057
+:101920008091E20083FF25C08091E100877F809352
+:10193000E10082E08093E4011092E0018091E100F7
+:101940008E7F8093E1008091E2008E7F8093E200A1
+:101950008091E20080618093E20042E060E080E0FC
+:101960000E94F60A8091F00088608093F0000E9447
+:101970006E08FF91EF91BF91AF919F918F917F91F1
+:101980006F915F914F913F912F910F900FBE0F90EC
+:101990001F9018951F920F920FB60F9211242F933C
+:1019A0003F934F935F936F937F938F939F93AF93E7
+:1019B000BF93CF93DF93EF93FF93C091E900CF7074
+:1019C0008091EC00D82FD17080FDD0E81092E90012
+:1019D0008091F000877F8093F00078940E940E0D34
+:1019E0001092E9008091F00088608093F000CD2B88
+:1019F000CF70C093E900FF91EF91DF91CF91BF913C
+:101A0000AF919F918F917F916F915F914F913F9196
+:101A10002F910F900FBE0F901F9018951F93CF938B
+:101A2000DF93CDB7DEB7AA970FB6F894DEBF0FBE2F
+:101A3000CDBFE5EEF1E08091F100819321E0ED3E34
+:101A4000F207C9F70E948D088091E80083FF24C146
+:101A50008091E5019091E601492F50E04A3051050F
+:101A600008F01AC1FA01EA5AFF4F0C94C2228038DA
+:101A700081F0823809F010C18091E9018F70809364
+:101A8000E9008091EB0085FB882780F91092E9003E
+:101A900006C08091E1019091E201911182609091E4
+:101AA000E800977F9093E8008093F1001092F10096
+:101AB000C8C0282F2D7F09F0EFC0882319F082308D
+:101AC00061F0EAC08091E701813009F0E5C0933010
+:101AD00009F080E08093E2012BC08091E701811141
+:101AE00027C08091E9018F7009F4D6C08093E90086
+:101AF0002091EB0020FF1CC0933021F48091EB007B
+:101B0000806214C09091EB0090619093EB0021E013
+:101B100030E0A90102C0440F551F8A95E2F74093B7
+:101B2000EA001092EA008091EB0088608093EB005D
+:101B30001092E9008091E800877F86C08111ACC0D7
+:101B40001091E7011F778091E3008078812B8093CB
+:101B5000E3008091E800877F8093E8000E942B0BD0
+:101B60008091E80080FFFCCF8091E3008068809343
+:101B7000E300111102C082E001C083E08093E40120
+:101B80008BC08058823008F087C08091E701909127
+:101B9000E8018C3D53E0950779F583E08A838AE27A
+:101BA00089834FB7F894DE01139620E03EE051E2BE
+:101BB000E32FF0E050935700E49120FF03C0E2953B
+:101BC000EF703F5FEF708E2F90E0EA3010F0C79615
+:101BD00001C0C0968D939D932F5F243149F74FBF6D
+:101BE0008091E800877F8093E8006AE270E0CE0190
+:101BF00001960E94370A14C0AE014F5F5F4F60919B
+:101C0000E9010E948009BC01892B09F445C090912B
+:101C1000E800977F9093E80089819A810E94950A55
+:101C20008091E8008B778093E80036C08038A1F57A
+:101C30008091E800877F8093E8008091E0018093A5
+:101C4000F1008091E8008E778093E8000E942B0BD2
+:101C500023C0811121C08091E7019091E80199276B
+:101C60000297D4F48091E800877F8093E800809108
+:101C7000E7018093E0010E942B0B8091E00181112C
+:101C800006C08091E30087FD02C081E001C084E0CE
+:101C90008093E4010E9479088091E80083FF0AC0E4
+:101CA0008091E800877F8093E8008091EB0080625C
+:101CB0008093EB00AA960FB6F894DEBF0FBECDBF9F
+:101CC000DF91CF911F9108950895CF938091E40102
+:101CD0008823A1F0C091E900CF709091EC00892F8A
+:101CE000817090FD80E8C82B1092E9008091E80097
+:101CF00083FD0E940E0DCF70C093E900CF9108952F
+:101D000090936901809368010895E0916801F091D2
+:101D10006901309721F00190F081E02D099480E075
+:101D20000895E0916801F0916901309721F00280F7
+:101D3000F381E02D09940895E0916801F091690123
+:101D4000309721F00480F581E02D099408952091C9
+:101D50006601309167012817390771F09093670188
+:101D600080936601E0916801F0916901309721F05C
+:101D70000680F781E02D0994089520916401309147
+:101D800065012817390771F090936501809364010C
+:101D9000E0916801F0916901309721F00084F185AC
+:101DA000E02D0994089508950C94D30E0E94911A81
+:101DB0000E943A040C94571BCF92DF92EF92FF924D
+:101DC0000F931F93CF93DF93CDB7DEB72B970FB64B
+:101DD000F894DEBF0FBECDBF0E9457048BE6C82E1D
+:101DE00081E0D82E00E010E0E02E802F0E94510507
+:101DF000F60141916F01F82EF426B1F40F5F1F4FE9
+:101E00000E30110589F78FEF89838A831B820E9428
+:101E10009A1A8160782F9D838C8349815A816B81C6
+:101E20008D810E947F0F40C09091CC0191FF04C032
+:101E30008B870E9457058B8520E030E04F2D50E0C6
+:101E4000922FBA01022E02C0759567950A94E2F7A7
+:101E500060FF24C02E83EF8221E030E0690102C0E0
+:101E6000CC0CDD1C9A95E2F790E08C219D21892B0A
+:101E700009F420E028870E949A1A8160782F9A87B7
+:101E800089874E815F8168858A850E947F0FF8016E
+:101E9000E559FE4F8081C826C08206C02F5F3F4FA4
+:101EA0002630310569F6AACF0E943E1E0E94850E9B
+:101EB00090916A018917A1F00E94850E80936A01B2
+:101EC0002B960FB6F894DEBF0FBECDBFDF91CF913A
+:101ED0001F910F91FF90EF90DF90CF900C947B07B4
+:101EE0002B960FB6F894DEBF0FBECDBFDF91CF911A
+:101EF0001F910F91FF90EF90DF90CF900895CF93B7
+:101F0000DF93CDB7DEB72B970FB6F894DEBF0FBEC9
+:101F1000CDBF4F83588769877A878B87DE011196FB
+:101F200086E0FD0111928A95E9F785E0FE0137967A
+:101F300001900D928A95E1F749815A816B817C81EC
+:101F40008D819E810E9482162B960FB6F894DEBF7B
+:101F50000FBECDBFDF91CF910895CF93C82F8823B7
+:101F600009F4C1C0823859F40E94850E81FDBBC0BE
+:101F700089E30E941F190E94D71989E30CC0833896
+:101F800079F40E94850E80FDAEC083E50E941F1982
+:101F90000E94D71983E50E945E19CF910C94D7193E
+:101FA000843859F40E94850E82FD9DC087E40E940A
+:101FB0001F190E94D71987E4EECF8CEF8C0F813A5E
+:101FC00048F48C2F0E947E2081118DC08C2F0E949E
+:101FD0001F19E3CF80E28C0F883048F4C77081E08E
+:101FE00001C0880FCA95EAF70E94A019D6CF8BE5E9
+:101FF0008C0F833078F4C53A29F0C63A31F083E883
+:1020000090E005C081E890E002C082E890E0CF91C6
+:102010000C94A70E88E58C0F833108F064C0C83A91
+:1020200039F1C93A41F1CA3A49F1CB3A51F1CC3AC6
+:1020300059F1CD3A61F1C03B69F1CE3A71F1CF3A35
+:1020400079F1C13B81F1C23B89F1C33B91F1C43BC2
+:1020500099F1C53BA1F1C63BA9F1C73BB1F1C83B22
+:10206000B9F1C93BC1F1CA3BC9F180E090E038C089
+:1020700082EE90E035C089EE90E032C08AEE90E0CA
+:102080002FC085EB90E02CC086EB90E029C087EB59
+:1020900090E026C08CEC90E023C08DEC90E020C056
+:1020A00083E891E01DC08AE891E01AC082E991E0DE
+:1020B00017C084E991E014C081E292E011C083E28C
+:1020C00092E00EC084E292E00BC085E292E008C08C
+:1020D00086E292E005C087E292E002C08AE292E0E6
+:1020E000CF910C94BD0ECF910895882309F44BC075
+:1020F000823859F40E94850E81FF45C089E30E9411
+:102100001F190E94D71989E30CC0833871F40E940B
+:10211000850E80FF38C083E50E941F190E94D719E1
+:1021200083E50E945E190C94D719843859F40E94F3
+:10213000850E82FF28C087E40E941F190E94D719CC
+:1021400087E4EFCF9CEF980F913A58F390E2980F05
+:10215000983050F4877091E001C0990F8A95EAF7A2
+:10216000892F0E94A619DFCF9BE5980F933020F4AA
+:1021700080E090E00C94A70E885A833120F480E030
+:1021800090E00C94BD0E0895882321F00E94A019C0
+:102190000C94D7190895882321F00E94A6190C9455
+:1021A000D7190895BF92CF92DF92EF92FF920F93CB
+:1021B0001F93CF93DF9300D000D000D0CDB7DEB710
+:1021C0007C0185E0F701DE01119601900D928A9560
+:1021D000E1F7F70183819481892B09F4DDC29081B5
+:1021E00081818F3F19F49F3F09F4D6C2F701028124
+:1021F000258122952F7099838A8389819A812E83E4
+:102200000E94DE18182FB92E0E94DD180E94A41714
+:10221000EB2DE295EF704E2F50E0FA01E05AFF4FA0
+:102220002E810C94C2228B2D807F9B2D9F70F92EC6
+:10223000882319F0F29480EFF822002349F0FF2060
+:1022400009F457C28F2D0E94B0190E94D71951C2AC
+:10225000812F0E947510FF2009F49EC28F2D0E94CD
+:10226000B61926960FB6F894DEBF0FBECDBFDF912C
+:10227000CF911F910F91FF90EF90DF90CF90BF9083
+:102280000C94D7193B2D307F8B2D8F70303211F08D
+:102290008295807F112319F0113021F12CC0002389
+:1022A000B9F0222309F490C1213009F08DC126969E
+:1022B0000FB6F894DEBF0FBECDBFDF91CF911F9157
+:1022C0000F91FF90EF90DF90CF90BF900C94C019CA
+:1022D000222319F0213009F45FC28E830E94C319B2
+:1022E0008E8186C1002321F0223008F055C26CC1D6
+:1022F000211152C27DC1002321F0222309F464C1BF
+:10230000F8C1222309F474C109C28B2D86958695E4
+:10231000837019F08130D1F03FC2002321F0812F6A
+:102320009B2D937002C080E090E026960FB6F89443
+:10233000DEBF0FBECDBFDF91CF911F910F91FF90F8
+:10234000EF90DF90CF90BF900C94A70E002321F068
+:10235000812F9B2D937002C080E090E026960FB6EF
+:10236000F894DEBF0FBECDBFDF91CF911F910F91CB
+:10237000FF90EF90DF90CF90BF900C94BD0E812F17
+:10238000002319F00E94461D02C00E94AE1D269631
+:102390000FB6F894DEBF0FBECDBFDF91CF911F9176
+:1023A0000F91FF90EF90DF90CF90BF900C94331E71
+:1023B0008B2D837009F075C00111EEC1812F8295BC
+:1023C00086958770880F880F912F9F70C92ED12C0A
+:1023D000E12CF12C082E04C0CC0CDD1CEE1CFF1CE3
+:1023E0000A94D2F714FF12C00FE010E020E030E0B2
+:1023F00004C0000F111F221F331F8A95D2F7C90195
+:10240000B801609570958095909503C060E070E08C
+:10241000CB014B2D4695469543704230C1F060F597
+:102420006C297D298E299F29413051F126960FB6BE
+:10243000F894DEBF0FBECDBFDF91CF911F910F91FA
+:10244000FF90EF90DF90CF90BF900C94CB176C294A
+:102450007D298E299F2926960FB6F894DEBF0FBEE0
+:10246000CDBFDF91CF911F910F91FF90EF90DF9043
+:10247000CF90BF900C94E7170E94CB17C701B6010D
+:1024800026960FB6F894DEBF0FBECDBFDF91CF9179
+:102490001F910F91FF90EF90DF90CF90BF900C9421
+:1024A000AF17002319F08B2D817001C0869588230A
+:1024B00009F472C1812F829586958770880F880FE5
+:1024C000912F9F70C92ED12CE12CF12C082E04C025
+:1024D000CC0CDD1CEE1CFF1C0A94D2F714FF12C0BA
+:1024E0000FE010E020E030E004C0000F111F221FB9
+:1024F000331F8A95D2F7C901B80160957095809510
+:10250000909503C060E070E0CB014B2D4695469559
+:1025100043704230C1F060F56C297D298E299F29D6
+:10252000413051F126960FB6F894DEBF0FBECDBFF5
+:10253000DF91CF911F910F91FF90EF90DF90CF909F
+:10254000BF900C94A5186C297D298E299F29269669
+:102550000FB6F894DEBF0FBECDBFDF91CF911F91B4
+:102560000F91FF90EF90DF90CF90BF900C94C11827
+:102570000E94A518C701B60126960FB6F894DEBFD3
+:102580000FBECDBFDF91CF911F910F91FF90EF90C4
+:10259000DF90CF90BF900C948918103FD1F118F4C0
+:1025A000103E50F4A1C0123F09F463C008F44CC0BF
+:1025B000133F09F473C098C01F708B2D8F710023D7
+:1025C000A1F00E942218812F26960FB6F894DEBF44
+:1025D0000FBECDBFDF91CF911F910F91FF90EF9074
+:1025E000DF90CF90BF900C94C4100E944318812FAD
+:1025F00026960FB6F894DEBF0FBECDBFDF91CF9108
+:102600001F910F91FF90EF90DF90CF90BF900C94AF
+:10261000CB100023A9F02111BFC08B2D8F712696FE
+:102620000FB6F894DEBF0FBECDBFDF91CF911F91E3
+:102630000F91FF90EF90DF90CF90BF900C946818AF
+:10264000223008F0A9C0E9CF0023A9F08B2D8F71AB
+:1026500026960FB6F894DEBF0FBECDBFDF91CF91A7
+:102660001F910F91FF90EF90DF90CF90BF900C944F
+:102670002218002359F38B2D8F7126960FB6F894EC
+:10268000DEBF0FBECDBFDF91CF911F910F91FF90A5
+:10269000EF90DF90CF90BF900C944318002399F0F7
+:1026A0008B2D8F7126960FB6F894DEBF0FBECDBF6F
+:1026B000DF91CF911F910F91FF90EF90DF90CF901E
+:1026C000BF900C940D1826960FB6F894DEBF0FBE7F
+:1026D000CDBFDF91CF911F910F91FF90EF90DF90D1
+:1026E000CF90BF900C9403180023A9F0222309F483
+:1026F000ADCF812F26960FB6F894DEBF0FBECDBFAB
+:10270000DF91CF911F910F91FF90EF90DF90CF90CD
+:10271000BF900C94AD0F222309F4ADCF812F2696E4
+:102720000FB6F894DEBF0FBECDBFDF91CF911F91E2
+:102730000F91FF90EF90DF90CF90BF900C947510A9
+:102740004B2D4F70612FC7010E94BF0226960FB616
+:10275000F894DEBF0FBECDBFDF91CF911F910F91D7
+:10276000FF90EF90DF90CF90BF900C9427174B2DE8
+:102770004F70612FC70126960FB6F894DEBF0FBECB
+:10278000CDBFDF91CF911F910F91FF90EF90DF9020
+:10279000CF90BF900C94180626960FB6F894DEBF23
+:1027A0000FBECDBFDF91CF911F910F91FF90EF90A2
+:1027B000DF90CF90BF9008950E94BD190E9492199A
+:1027C0000E94D7190E94E31E0E94331E80E090E011
+:1027D0000E94A70E80E090E00C94BD0E0E94AD19FF
+:1027E0000C94DC130E94DE18292F22952F702C30B8
+:1027F00030F42A3048F42250223078F405C02C30CE
+:1028000041F02F3031F009C0803E48F0803F29F47C
+:1028100006C093FB882780F9089580E0089581E041
+:102820000895CF93DF9300D000D01F92CDB7DEB7CD
+:102830000F900F900F900F900F90DF91CF91089510
+:10284000CF93DF9300D000D000D0CDB7DEB726966F
+:102850000FB6F894DEBF0FBECDBFDF91CF910895C4
+:102860001F93CF93DF93C091790116E080917A0195
+:10287000C81799F0D0E01C9FF0011D9FF00D1124A6
+:10288000E558FE4F40815181628173818481958139
+:102890000E9420142196C770E9CFDF91CF911F913C
+:1028A00008954091AB015091AC016091AD017091E0
+:1028B000AE018091AF019091B0010C9420148091F1
+:1028C000B00182958F7009F054C08091AD018823CA
+:1028D00009F44FC080917901A0917A014091AE0135
+:1028E0005091AF016091AB017091AC01B6E08A17D5
+:1028F00009F43FC090E041155105C1F17F3F11F44B
+:102900006F3FA1F1B89FF001B99FF00D1124E55878
+:10291000FE4F218127132AC02081261327C0228140
+:10292000211124C0238134812417350710F421504C
+:102930003109241B350B283C3105C0F42091B0012E
+:102940002F7020612093B00126E0289FF001299F7D
+:10295000F00D1124E058FE4F80818F7080618083DC
+:102960008BEA91E00E94D2100C943014019687708B
+:10297000BECF0895CF92DF92EF92FF920F931F93F5
+:10298000CF93DF93CDB7DEB762970FB6F894DEBF73
+:102990000FBECDBF8C0185E0F801DE011D960190D0
+:1029A0000D928A95E1F7D8014C9111965C9111979F
+:1029B00012966C918091AE019091AF01009709F44D
+:1029C00075C13091AB017091AC017F3F19F43F3F6D
+:1029D00009F46CC1F801C380D480E090AD01EE2011
+:1029E00009F4BEC02091B001C816D90628F0D6015E
+:1029F000A81BB90BCD0104C0809590958C0D9D1D31
+:102A0000FF24F394883C910578F0F12C207F09F0A5
+:102A1000C4C07C2DD98AC88A89890E9411148BEA86
+:102A200091E00E94D210AFC0822F807F09F045C094
+:102A3000571313C0431311C061110FC02F702061D1
+:102A40002093B0010E9451148BEA91E00E94D210B1
+:102A50008091B001F80185832EC0CD2819F15F3F28
+:102A600011F44F3FF9F0F62E61111CC080917901ED
+:102A700020917A0136E0821709F45BC090E0389F1C
+:102A8000F001399FF00D1124E558FE4F7181571365
+:102A900006C07081471303C07281711103C0019693
+:102AA0008770E9CFF62E662309F41CC18091B0012E
+:102AB00081608093B001F12C15C1571309C04313F5
+:102AC00007C0611105C08091B001F8018583C8C0BD
+:102AD0004D875E878D859E856A8B0E94F2136A8979
+:102AE0008823D1F16623C1F12091B001822F829514
+:102AF0008F7090E0029774F08091AB019091AC01DF
+:102B000098878F831986DB86CA862C87CE01079625
+:102B10000E94D21086E0F801ABEAB1E001900D927C
+:102B20008A95E1F70E945F140E945114FF24F394E8
+:102B3000D9C04D875E878D859E850E94DE18292F1E
+:102B400022952F70223008F0C1C09F7009F0BBC0E1
+:102B5000805E883008F4C6C0C8010E94D210E6CF5B
+:102B6000C816D90608F453C0F601E81BF90BCF01CB
+:102B7000883C910508F450C0F12C7C2DD98AC88A74
+:102B800089890E941114EBEAF1E086E0DF011D92D1
+:102B90008A95E9F70E945114A5C0571314C0431336
+:102BA00012C0611110C08091B001F8018583C80185
+:102BB0000E94D21086E0EBEAF1E0DF011D928A95D7
+:102BC000E9F7FE2C8FC04D875E878D859E856A8BC9
+:102BD0000E94F2136A89882309F4BECF662309F4A0
+:102BE000BBCF2091B001822F82958F7090E0029729
+:102BF0000CF490CF8091AB019091AC019A838983C2
+:102C00001B82DD82CC822E83CE01019681CF8095FE
+:102C100090958C0D9D1DACCFF62E662309F49CCFAC
+:102C2000571333C0431331C02091B00120FD24C09D
+:102C3000822F82958F70482F50E041155105E1F0A9
+:102C4000D80115962C9315974F30510549F08F5F99
+:102C5000982F9295907F822F8F70892B15968C9349
+:102C6000C8010E94D21086E0F801ABEAB1E0019001
+:102C70000D928A95E1F78ECF86E0F801ABEAB1E0DC
+:102C800001900D928A95E1F72DC04D875E878D8565
+:102C90009E850E94F21381113DCF8091B001816029
+:102CA0008093B001C8010E94D2101CC0662309F4B1
+:102CB00053CF4D875E878D859E850E94F2138823B2
+:102CC00009F44ACF27CF811143CF0CC0243008F03C
+:102CD00043CF9F7009F43CCFD80115969C91907F0B
+:102CE00009F036CF8F2D62960FB6F894DEBF0FBE77
+:102CF000CDBFDF91CF911F910F91FF90EF90DF90AB
+:102D0000CF9008951F93CF93DF93CDB7DEB72C9765
+:102D10000FB6F894DEBF0FBECDBF4F8358876987CB
+:102D20007A878B879C87CE0107960E94BA148823E6
+:102D300071F08A859B85892B09F441C088858F3F76
+:102D400009F065C08F818F3F09F061C038C086E00F
+:102D5000FE013796DE01119601900D928A95E1F7FA
+:102D60006A857B856115710551F1FF81E885EF3F2B
+:102D700011F4FF3F21F120917A0130E0C901019661
+:102D8000877099274091790150E08417950709F4DD
+:102D900047C0F983EA837D836C8396E0929FD001DC
+:102DA000939FB00D1124A558BE4FFE01319601909E
+:102DB0000D929A95E1F780937A010E94301416E003
+:102DC0008091790190917A018917B9F1189FC0011A
+:102DD000112485589E4F0E94BA14882371F1E09106
+:102DE00079011E9FF0011124E558FE4F4081518169
+:102DF00062817381848195810E9420148091790180
+:102E000090E001968770992780937901D9CF4F81FF
+:102E1000588569857A858B859C850E942014CFCF43
+:102E20000E94EE1310927A0110927901EBEAF1E020
+:102E300086E0DF011D928A95E9F72C960FB6F8948B
+:102E4000DEBF0FBECDBFDF91CF911F910895EF92EE
+:102E5000FF920F931F93CF93DF938C01892B09F47B
+:102E60006CC0F12CEE24E394E8012196F8018491E2
+:102E7000843740F4843008F051C0813081F08230D2
+:102E800019F15BC0853709F444C0A8F19CE7980F9D
+:102E9000903708F052C08F770E94751041C00E5FC6
+:102EA0001F4FFE01849190E2980F983050F4877084
+:102EB000FE2D01C0FF0F8A95EAF78F2F0E94B019EF
+:102EC00014C00E94AD0F2DC00E5F1F4FFE018491F4
+:102ED00090E2980F983060F48770FE2D01C0FF0FCC
+:102EE0008A95EAF78F2F0E94B6190E94D71919C048
+:102EF0000E94751016C00E5F1F4FFE01C491CC23B7
+:102F000081F08FE99FE00197F1F700C00000C15008
+:102F1000F6CF0E5F1F4FFE01F49003C00E94AD0F6D
+:102F20008E018F2D882309F49FCFEFE9FFE03197C1
+:102F3000F1F700C000008150F5CFDF91CF911F91D4
+:102F40000F91FF90EF90089508956093B5017093ED
+:102F5000B6018093B7019093B8010C94DC130F93E2
+:102F60001F930091B5011091B6012091B7013091E6
+:102F7000B801DC01CB01802B912BA22BB32B8093CA
+:102F8000B5019093B601A093B701B093B8011F911A
+:102F90000F910C94DC130F931F930091B5011091C6
+:102FA000B6012091B7013091B801DC01CB0180233B
+:102FB0009123A223B3238093B5019093B601A093EC
+:102FC000B701B093B8011F910F910C94DC130F93CC
+:102FD0001F930091B5011091B6012091B701309176
+:102FE000B801DC01CB0180279127A227B32780936A
+:102FF000B5019093B601A093B701B093B8011F91AA
+:103000000F910C94DC131092B1011092B201109246
+:10301000B3011092B4010C94DC1341E050E060E085
+:1030200070E004C0440F551F661F771F8A95D2F7C2
+:103030004093B1015093B2016093B3017093B40116
+:103040000C94DC1341E050E060E070E004C0440FF9
+:10305000551F661F771F8A95D2F78091B101909115
+:10306000B201A091B301B091B401482B592B6A2B46
+:103070007B2B4093B1015093B2016093B3017093E5
+:10308000B4010C94DC1341E050E060E070E004C057
+:10309000440F551F661F771F8A95D2F740955095AC
+:1030A000609570958091B1019091B201A091B301AA
+:1030B000B091B401482359236A237B234093B10183
+:1030C0005093B2016093B3017093B4010C94DC137C
+:1030D00041E050E060E070E004C0440F551F661FFF
+:1030E000771F8A95D2F78091B1019091B201A0919A
+:1030F000B301B091B401482759276A277B27409331
+:10310000B1015093B2016093B3017093B4010C9478
+:10311000DC130F931F930091B1011091B201209124
+:10312000B3013091B401DC01CB01802B912BA22B98
+:10313000B32B8093B1019093B201A093B301B093EC
+:10314000B4011F910F910C94DC130F931F93009106
+:10315000B1011091B2012091B3013091B401DC01B1
+:10316000CB0180239123A223B3238093B1019093B9
+:10317000B201A093B301B093B4011F910F910C94CD
+:10318000DC130F931F930091B1011091B2012091B4
+:10319000B3013091B401DC01CB0180279127A22734
+:1031A000B3278093B1019093B201A093B301B09380
+:1031B000B4011F910F910C94DC130895CF92DF920C
+:1031C000EF92FF920F931F93CF93DF938C01C090E8
+:1031D000B101D090B201E090B301F090B4018091C0
+:1031E000B5019091B601A091B701B091B801C82A7C
+:1031F000D92AEA2AFB2ACFE1D0E0D701C6010C2E5A
+:1032000004C0B695A795979587950A94D2F780FF45
+:1032100007C0B8018C2F0E943C068130910531F423
+:10322000219758F7B80180E00E943C06DF91CF91CA
+:103230001F910F91FF90EF90DF90CF9008959091A4
+:103240000C019923F1F090910D019923D1F0982F61
+:103250009695969596959F3080F5E0910E01F091A8
+:103260000F01E90FF11D877021E030E0A90102C0D4
+:10327000440F551F8A95E2F7CA019181892B8183FA
+:10328000089520910E0130910F01F90132969FEFC0
+:1032900040E05191851789F09F3F19F4511101C009
+:1032A000942F4F5F4E30A9F79F3F39F0F901E90F96
+:1032B000F11D97FDFA9582830895089590910C0170
+:1032C0009923F9F090910D019923D9F0982F9695B3
+:1032D000969596959F3028F5E0910E01F0910F019B
+:1032E000E90FF11D877021E030E0A90102C0440F11
+:1032F000551F8A95E2F7CA018095918189238183C0
+:10330000089520910E0130910F01F9013296205F4E
+:103310003F4F9081891301C010823196E217F30765
+:10332000C1F7089581E090E0E0910E01F0910F0166
+:10333000E80FF91F1082019680319105A9F70895D1
+:103340009091CB01892B8093CB010895809590912A
+:10335000CB0189238093CB0108951092CB0108956E
+:103360009091CA01892B8093CA010895809590910C
+:10337000CA0189238093CA0108951092CA01089551
+:103380008093B90108951092B901089580910E01BA
+:1033900090910F01FC0131969C01205F3F4F80E02E
+:1033A000919191118F5FE217F307D1F70895E091A2
+:1033B0000E01F0910F018091CB018083E0910E010D
+:1033C000F0910F0190818091CA01892B80838091B7
+:1033D000B901882361F0E0910E01F0910F01908115
+:1033E000892B80830E94C61981111092B9018091A6
+:1033F0000E0190910F010C94910ECF92DF92EF92FB
+:10340000FF926C01EE24FF24C114D104E104F10405
+:1034100021F0C701B60120E101C020E0C72ED82E5F
+:10342000E92EFF24C114D104E104F10419F0285F4E
+:10343000C701B6016B017C0154E0F694E794D79480
+:10344000C7945A95D1F7C114D104E104F10419F0DD
+:103450002C5FC701B6016B017C0142E0F694E79452
+:10346000D794C7944A95D1F7C114D104E104F1046B
+:1034700019F02E5FC701B601DC01CB01B695A79507
+:1034800097958795892B8A2B8B2B09F02F5F822F9D
+:10349000FF90EF90DF90CF9008958091E401843009
+:1034A00011F120E488E190E00FB6F894A89580939C
+:1034B00060000FBE2093600083B7817F846083BF6C
+:1034C00083B7816083BF7894889583B78E7F83BFED
+:1034D0000FB6F894A8958091600088618093600091
+:1034E000109260000FBE089508950C94741ACF9343
+:1034F0000E94751A0E9457040E94741AC0E08C2F13
+:103500000E945105811104C0CF5FCE30C1F701C0C8
+:1035100081E0CF9108950E94EE130E94850E0C94D5
+:103520007B0782E084BD93E095BD9AEF97BD8093C1
+:103530006E0008952FB7F8948091CD019091CE013F
+:10354000A091CF01B091D0012FBF0895CF92DF920B
+:10355000EF92FF920F931F932FB7F8944091CD01F4
+:103560005091CE016091CF017091D0012FBF6A01BF
+:103570007B01EE24FF248C0120E030E0C016D10650
+:10358000E206F30610F4415051099A01281B390B49
+:10359000C9011F910F91FF90EF90DF90CF90089598
+:1035A0001F920F920FB60F9211248F939F93AF9398
+:1035B000BF938091CD019091CE01A091CF01B091A8
+:1035C000D0010196A11DB11D8093CD019093CE0134
+:1035D000A093CF01B093D001BF91AF919F918F91F4
+:1035E0000F900FBE0F901F9018950E947D0BF894BE
+:1035F0002FEF87EA91E6215080409040E1F700C02C
+:10360000000087E090EBDC018093ED019093EE01E8
+:10361000A093EF01B093F0019CE088E10FB6F8941D
+:10362000A895809360000FBE90936000FFCFEF924B
+:10363000FF920F931F93CF93DF93D82FC0E08C2F6F
+:103640000E94510500E010E0E82EF12CC701002E89
+:1036500002C0959587950A94E2F780FD06C00F5F3A
+:103660001F4F0630110591F709C0602F7C2F80E0B5
+:103670000E9419068D13F3CF81E004C0CF5FCE30D6
+:10368000F1F680E0DF91CF911F910F91FF90EF90C5
+:103690000895CF93C82F8CE20E94171B882321F036
+:1036A0008C2FCF910C94171B80E0CF910895CF936E
+:1036B0000E949E1C811102C00E94841CC5E6C1505C
+:1036C00049F00E9457048FE39CE90197F1F700C08D
+:1036D0000000F5CF89E20E94491B811113C18AE2E3
+:1036E0000E94491B81110E94841C85E00E94491B95
+:1036F00081110E94F51A0E94A91C8093CC0187E0D9
+:103700000E94491B8823A9F18BE10E94491B882351
+:1037100051F08091CC0181FB222720F991E0922782
+:1037200090FB81F90EC08EE00E94491B882361F056
+:103730008091CC0182FB222720F991E0922790FB17
+:1037400082F98093CC0115C080E10E94491B9091C1
+:10375000CC01882341F093FB222720F981E08227C6
+:1037600080FB93F904C0892F809580FB90F990939A
+:10377000CC018091CC010E94AD1C0E94BB1C8093A7
+:10378000DE0180EE0E94491B882341F08091DE011A
+:10379000982F909590FB80F98093DE0189E30E9439
+:1037A000491B882359F08091DE0181FB222720F9F3
+:1037B00091E0922790FB81F98093DE0182EE0E94D6
+:1037C000491B882359F08091DE0182FB222720F9D2
+:1037D00091E0922790FB82F98093DE0186EE0E94B1
+:1037E000491B882359F08091DE0183FB222720F9B1
+:1037F00091E0922790FB83F98093DE0183EE0E9493
+:10380000491B882359F08091DE0184FB222720F98F
+:1038100091E0922790FB84F98093DE0185E30E947A
+:10382000491B882359F08091DE0185FB222720F96E
+:1038300091E0922790FB85F98093DE0181E30E945D
+:10384000491B882359F08091DE0186FB222720F94D
+:1038500091E0922790FB86F98093DE0181E10E943E
+:10386000491B882359F08091DE0187FB222720F92C
+:1038700091E0922790FB87F98093DE018091DE0131
+:103880000E94BF1C8091DE0187FB882780F980930E
+:103890000D0187E20E94491BC82F8EE10E94491B3F
+:1038A0008111C2608FE10E94491B8111C46080E2D6
+:1038B0000E94491B8111C86081E20E94491B81114D
+:1038C000C06182E20E94491B8111C06283E20E94B2
+:1038D000491B8111C06484E20E94491B882311F0B6
+:1038E000C06802C0CC2329F08C2F0E94B61C6C2F1C
+:1038F00003C00E94B21C682F70E080E090E0CF917E
+:103900000C94A517CF9108956DEE7EEF80E090E0C6
+:103910000E94F82260E082E090E00E94EA2260E0EB
+:1039200083E090E00E94EA2260E084E090E00E9460
+:10393000EA2260E085E090E00C94EA2280E090E0EA
+:103940000E94E42221E08D3E9E4F09F020E0822F6C
+:10395000089582E090E00C94DC22682F82E090E0F1
+:103960000C94EA2283E090E00C94DC22682F83E040
+:1039700090E00C94EA2284E090E00C94DC22682F22
+:1039800084E090E00C94EA228091D30180FF0BC088
+:103990006091130185E0689FB001112475956795CA
+:1039A000759567952BC081FF09C06091130185E073
+:1039B000689FB00111247595679520C082FF07C0EC
+:1039C0006091130185E0689FB001112417C09091A8
+:1039D000D4019923D1F060911201961788F72091B4
+:1039E000130185E0289F90011124929FA001939FCD
+:1039F000500D112470E0CA010E94AE22603871059A
+:103A000040F46115710519F406C065E070E0862F79
+:103A100008958FE7089581E008958091D30180FF94
+:103A200008C06091110170E075956795759567956F
+:103A300021C081FF06C06091110170E07595679506
+:103A400019C082FF04C06091110170E010C0909114
+:103A5000D401992399F0609110019617A0F78091F5
+:103A60001101899FC001112470E00E94AE226038CC
+:103A7000710540F46115710519F406C061E070E04C
+:103A8000862F08958FE7089581E00895803F21F4FF
+:103A90000E94C41C819504C0813F29F40E94C41C6B
+:103AA0008093D7010895823F21F40E94C41C819520
+:103AB00004C0833F29F40E94C41C8093D60108955A
+:103AC000893F19F40E940D1D05C08A3F31F40E9400
+:103AD0000D1D81958093D80108958B3F21F40E949C
+:103AE0000D1D819504C08C3F29F40E940D1D80930B
+:103AF000D9010895843F21F48091D501816017C0D8
+:103B0000853F21F48091D501826011C0863F21F468
+:103B10008091D50184600BC0873F21F48091D5014D
+:103B2000886005C0883F31F48091D5018061809321
+:103B3000D50108958D3F21F48091D30181600BC0A0
+:103B40008E3F21F48091D301826005C08F3F29F41C
+:103B50008091D30184608093D3010895803F39F42C
+:103B60008091D70187FF6CC01092D70169C0813F57
+:103B700029F48091D7011816BCF362C09091D60148
+:103B8000823F29F497FF5CC01092D60159C0833F51
+:103B900019F41916CCF354C0893F41F48091D8012F
+:103BA00018160CF04DC01092D8014AC08A3F29F473
+:103BB0008091D80187FF44C0F6CF8B3F39F48091C4
+:103BC000D90187FF3DC01092D9013AC08C3F29F43A
+:103BD0008091D9011816BCF333C0843F21F4809141
+:103BE000D5018E7F17C0853F21F48091D5018D7F4F
+:103BF00011C0863F21F48091D5018B7F0BC0873F98
+:103C000021F48091D501877F05C0883F31F48091F0
+:103C1000D5018F7E8093D50113C08D3F21F4809113
+:103C2000D3018E7F0BC08E3F21F48091D3018D7F15
+:103C300005C08F3F29F48091D3018B7F8093D301FE
+:103C40008091D60181110EC08091D70181110AC0E7
+:103C50008091D801811106C08091D901811102C0E3
+:103C60001092D401089585ED91E00E949C0E0E946F
+:103C70009A1A9093D2018093D10108951F93CF9304
+:103C8000DF938091D1019091D2010E94A61AAC01DC
+:103C90009091D401992321F02091140130E006C0C5
+:103CA000209115018AE0289F9001112442175307A3
+:103CB00008F485C08091D601C091D701D091D80178
+:103CC0001091D901811107C0C11175C0D11173C004
+:103CD000111171C074C09F3F19F09F5F9093D40180
+:103CE000181624F40E94C41C8093D6018091D6013A
+:103CF00087FF05C00E94C41C81958093D6011C16C5
+:103D000024F40E94C41C8093D7018091D70187FFBF
+:103D100005C00E94C41C81958093D7016091D60193
+:103D2000662331F1C091D701CC2311F1062E000C8E
+:103D3000770B880B990B0E94B52123E333E343E310
+:103D40005FE30E9419220E947D216093D6016C2FAF
+:103D5000CC0F770B880B990B0E94B52123E333E33B
+:103D600043E35FE30E9419220E947D216093D70103
+:103D70001D1624F40E940D1D8093D8018091D80156
+:103D800087FF05C00E940D1D81958093D8011116F3
+:103D900024F40E940D1D8093D9018091D90187FFE1
+:103DA00005C00E940D1D81958093D901DF91CF91AF
+:103DB0001F910C94331E9F3F09F08FCFA0CFDF914E
+:103DC000CF911F910895E5EDF1E085E0DF011D92AF
+:103DD0008A95E9F71092D4011092D30108958330A7
+:103DE00081F128F4813059F08230D1F00895853086
+:103DF00009F449C0B8F1863009F456C0089580919D
+:103E00001501262F30E0280F311D2F3F310524F4F6
+:103E1000680F6093150108958FEF80931501089541
+:103E200080911401262F30E0280F311D2F3F3105DE
+:103E300024F4680F6093140108958FEF80931401A8
+:103E4000089580911301262F30E0280F311D2F3F58
+:103E5000310524F4680F6093130108958FEF809368
+:103E60001301089580911201262F30E0280F311D93
+:103E70002F3F310524F4680F6093120108958FEFEE
+:103E800080931201089580911101262F30E0280FB0
+:103E9000311D2F3F310524F4680F609311010895FF
+:103EA0008FEF80931101089580911001262F30E04B
+:103EB000280F311D2F3F310524F4680F6093100146
+:103EC00008958FEF809310010895833011F128F445
+:103ED000813049F0823091F00895853081F120F1F0
+:103EE0008630C1F1089580911501681720F4861B72
+:103EF0008093150108951092150108958091140181
+:103F0000681720F4861B8093140108951092140101
+:103F1000089580911301681720F4861B8093130184
+:103F2000089510921301089580911201681720F4EA
+:103F3000861B8093120108951092120108958091BA
+:103F40001101681720F4861B8093110108951092C7
+:103F50001101089580911001681720F4861B809349
+:103F6000100108951092100108950F931F938D3141
+:103F700009F46BC008F03FC08E3009F47DC0C0F476
+:103F8000873009F46EC068F4863009F0AFC08091C4
+:103F9000CC01817F8E7F8093CC0181E08093DB0117
+:103FA000A6C0883009F458C08B3009F49BC09EC06D
+:103FB000863109F497C078F4803109F470C08131FA
+:103FC00009F094C00E94EE1390910D0181E08927C1
+:103FD00080930D0187C0893109F484C08B3109F0C9
+:103FE00085C08091CC0181FB222720F991E09227A6
+:103FF00090FB81F94AC0853309F45BC048F48732ED
+:1040000009F457C008F45AC0893209F452C06EC08E
+:10401000833438F48A3308F067C0883309F462C007
+:1040200065C0833409F445C0883409F05FC00E943C
+:10403000EE130FEF13ED20E3015010402040E1F7A5
+:1040400000C000000E94F51A4DC00E9437210E9456
+:10405000850E0E947B0746C00E94A91C0E94BB1CC3
+:1040600041C09091CC01892F817090FF12C0917F47
+:104070009E7F9093CC013BC08091CC0182FB222794
+:1040800020F991E0922790FB82F98093CC0199234B
+:1040900049F18091CC0181608093CC0123C0809153
+:1040A000CC0183FB222720F991E0922790FB83F932
+:1040B000ECCF61E070E080E090E010C08D5141E015
+:1040C00050E060E070E08A019B0104C0000F111F06
+:1040D000221F331F8A95D2F7C901B8010E94A51784
+:1040E0000E94EE1381E003C08953E9CF80E01F9165
+:1040F0000F91089580E008950C947A20CF93C82FF3
+:104100008091DB01813079F018F08230E9F187C0CD
+:10411000E0910E01F0910F018081813169F08232CE
+:1041200009F07FC009C0E0910E01F0910F0180817C
+:10413000813111F0823261F48C2F0E947C20811138
+:1041400004C08C2F0E94B51F1DC081E090E01AC0F2
+:104150008C2F0E947A20811114C0C43179F048F468
+:10416000CB3079F0C03109F060C082E08093DB0190
+:1041700008C0C93219F0C83321F057C01092DB01D2
+:1041800054C081E0817053C0C93289F118F5C4313F
+:1041900071F1A8F4C73009F046C08AE08093150198
+:1041A00094E19093140193E0909313018093120192
+:1041B00088E08093110188E28093100134C0CE51D1
+:1041C000C63088F5EC2FF0E0E65DFE4F80818093ED
+:1041D000DA0129C0CE34E9F020F4CB3421F56AE0CD
+:1041E00013C0C13579F0C235F1F461E00DC08091A2
+:1041F000DA01882319F01092DA0115C081E080936A
+:10420000DB0115C061E006C08091DA010E94EF1E5B
+:104210000AC06AE08091DA010E94651F04C0109212
+:10422000DB0180E004C081E002C080E0ABCFCF9131
+:104230000895E1E8F0E0808188608083808181607A
+:1042400080838FB7F89493E09093890090ED9093DA
+:1042500088008FBF0895EFE6F0E080818260808360
+:104260000895EFE6F0E080818D7F80830895EFE68A
+:10427000F0E0908182E08927808308951F920F9259
+:104280000FB60F9211242F933F934F935F936F9329
+:104290007F938F939F93AF93BF93EF93FF938091FF
+:1042A000DC019091DD0101969093DD018093DC01AA
+:1042B000811103C082E00E947B07E091DD01E69559
+:1042C000E695F0E0E555FB4FE4918091DC018E131B
+:1042D00003C080E00E947B07FF91EF91BF91AF91F7
+:1042E0009F918F917F916F915F914F913F912F910E
+:1042F0000F900FBE0F901F9018950E948421689414
+:10430000B1110C94132208950E94F82188F09F5750
+:1043100098F0B92F9927B751B0F0E1F0660F771FE9
+:10432000881F991F1AF0BA95C9F714C0B13091F0DF
+:104330000E941222B1E008950C941222672F782F68
+:104340008827B85F39F0B93FCCF3869577956795A4
+:10435000B395D9F73EF490958095709561957F4F10
+:104360008F4F9F4F0895E89409C097FB3EF49095B6
+:104370008095709561957F4F8F4F9F4F9923A9F03E
+:10438000F92F96E9BB279395F695879577956795CD
+:10439000B795F111F8CFFAF4BB0F11F460FF1BC011
+:1043A0006F5F7F4F8F4F9F4F16C0882311F096E9A4
+:1043B00011C0772321F09EE8872F762F05C0662352
+:1043C00071F096E8862F70E060E02AF09A95660F0B
+:1043D000771F881FDAF7880F9695879597F90895C4
+:1043E00057FD9058440F551F59F05F3F71F04795A6
+:1043F000880F97FB991F61F09F3F79F0879508958B
+:10440000121613061406551FF2CF4695F1DF08C0A9
+:10441000161617061806991FF1CF869571056105C6
+:1044200008940895E894BB2766277727CB0197F96E
+:1044300008950E942C220C949D220E948F2238F015
+:104440000E94962220F0952311F00C9486220C9461
+:104450008C2211240C9413220E94F02170F3959F5A
+:10446000C1F3950F50E0551F629FF001729FBB276B
+:10447000F00DB11D639FAA27F00DB11DAA1F649F07
+:104480006627B00DA11D661F829F2227B00DA11DBA
+:10449000621F739FB00DA11D621F839FA00D611D40
+:1044A000221F749F3327A00D611D231F849F600D61
+:1044B000211D822F762F6A2F11249F5750409AF08A
+:1044C000F1F088234AF0EE0FFF1FBB1F661F771F16
+:1044D000881F91505040A9F79E3F510580F00C94E1
+:1044E00086220C9413225F3FE4F3983ED4F3869522
+:1044F00077956795B795F795E7959F5FC1F7FE2B81
+:10450000880F911D9695879597F9089597F99F675C
+:1045100080E870E060E008959FEF80EC089500244B
+:104520000A941616170618060906089500240A9418
+:1045300012161306140605060895092E0394000C9E
+:1045400011F4882352F0BB0F40F4BF2B11F460FF2D
+:1045500004C06F5F7F4F8F4F9F4F089597FB072ECB
+:1045600016F4009407D077FD09D00E94C82207FCFA
+:1045700005D03EF4909581959F4F08957095619573
+:104580007F4F0895EE0FFF1F0590F491E02D0994E1
+:10459000AA1BBB1B51E107C0AA1FBB1FA617B70769
+:1045A00010F0A61BB70B881F991F5A95A9F7809585
+:1045B0009095BC01CD010895F999FECF92BD81BDC2
+:1045C000F89A992780B50895A8E1B0E042E050E05C
+:1045D0000C94FF22262FF999FECF1FBA92BD81BD00
+:1045E00020BD0FB6F894FA9AF99A0FBE0196089575
+:1045F0000E94EA22272F0C94EB22DC01CB01FC0164
+:10460000F999FECF06C0F2BDE1BDF89A319600B42B
+:0E4610000D9241505040B8F70895F894FFCF36
+:10461E0020027C070C08E707B3077F070101BA01E8
+:10462E0028080A03140A3F4D36396C041F04E903A7
+:10463E00B00343035C0375038E03010203040506F6
+:04464E000708090050
+:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/alexjj/readme.md b/keyboard/ergodox_ez/keymaps/alexjj/readme.md new file mode 100644 index 0000000000..e3a06fe328 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/alexjj/readme.md @@ -0,0 +1,136 @@ +Englishman in New York +=========================== + +:microphone: :tea: + +About +------ + +After using the massdrop configurator to get the basics, I wanted to add a +little extra to my ergodox. Notably the Hyper hotkey, the press and hold, +and a way to have my beloved £ :pound: symbol available<sup>[1](#unicode)</sup>. Why not switch to a GB +layout? Well the computers I use are US keymap'd and I can't always change +that. Plus I've got used to 2/@ and 3/# and moving to the ergodox was hard +enough. :sweat_smile: + +I started from the default and edited from there as I needed. It's somewhat +similar to a regular layout, particularly R1 and shift/controls. I ended up +with a few keys that were blank, so I'm testing out some shortcuts. Alt+F4 for +quitting things in Windows, is one example, but I felt it was better placed on +the 1st layer - in case of fat fingers. + +Layout +------- + +![Layout](rl-layout.jpg "Isn't it lovely") + +### Base Layer + +``` +,--------------------------------------------------. ,--------------------------------------------------. +| ESC | 1! | 2@ | 3# | 4$ | 5% | 6^ | | 7& | 8* | 9( | 0) | -_ | += | BkSp | +|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| +| Tab | Q | W | E | R | T | { | | } | Y | U | I | O | P | |\ | +|--------+------+------+------+------+------| [ | | ] |------+------+------+------+------+--------| +| Win | A | S | D | F | G |------| |------| H | J | K | L | :; | '" | +|--------+------+------+------+------+------| Home | | End |------+------+------+------+------+--------| +| LShift |Z/Alt | X | C | V | B | | | | N | M | , | . |//Alt| RShift | +`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + |LCtrl | `~ | Hyper| Left | Right| | Down | Up | COPY | PASTE| RCtrl | + `----------------------------------' `----------------------------------' + ,-------------. ,-------------. + Hyper = Ctrl+Super+Alt+Shift | Alt | F5 | | F2 | ~L2 | + ,------|------|------| |------+------+------. + | | | PgUp | | Ins | | | + | Space| BkSp |------| |------| ~L1 |Enter | + | | | PgDn | | Del | | | + `--------------------' `--------------------' +``` + +### Symbol Layer + +``` +,--------------------------------------------------. ,--------------------------------------------------. +| | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 |PrintScr| +|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| +| | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | | +|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| +| | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | +|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| +| | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | +`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + | | £ | | | | | | . | 0 | = |Alt+F4| + `----------------------------------' `----------------------------------' + ↑ ,-------------. ,-------------. + THERE! | | | | | | + ,------|------|------| |------+------+------. + CAD = Ctrl + Alt + Delete | | | | | | | | + | | |------| |------| | | + | | | | | CAD | | | + `--------------------' `--------------------' +``` +### Media Layer + +Not touched this, not used either. + +``` +,--------------------------------------------------. ,--------------------------------------------------. +| TEENSY | | | | | | | | | | | | | | | +|--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| +| | | | MsUp | | | | | | | | | | | | +|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| +| | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | +|--------+------+------+------+------+------| | | |------+------+------+------+------+--------| +| | | | | | | | | | | | Prev | Next | | | +`--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + `----------------------------------' `----------------------------------' + ,-------------. ,-------------. + | | | | | | + ,------|------|------| |------+------+------. + | | | | | | |Brwser| + | | |------| |------| |Back | + | | | | | | | | + `--------------------' `--------------------' +``` + +Usage +------ + +~L1 / L2 will momentarily switch to a layer if held and another key is pressed. +If pressed and released will remain on layer until pressed again. + + +Changelog +----------- + +### [0.1.1] - 2016-03-23 + +* Changed £ input to a macro + + +### [0.1.0] - 2016-03-22 + +After actually using the keyboard, I've made some changes: + +* Swapped Enter and Space +* Moved backspace to thumb keys (top right still remains) +* Added Ctrl+Alt+Delete +* Added Teensy Reset on 2nd layer +* Switched Up and Down +* Changed copy/paste to be Ctrl+c and Ctrl+v as KC_COPY/PASTE didn't work (in Windows) +* Moved ~L2 to replace +L1 after learning how the function works (notes above) +* Hopefully fixed GBP symbol (unicode enabled in MakeFile) + +### [0.0.1] - 2016-03-21 + +First version + + +Issues +------- + +Space for feedback and notes for future improvements + +---- +<sup><a name="unicode">1</a></sup>: For Windows only, and you have to edit the [registry](https://en.wikipedia.org/wiki/Unicode_input#Hexadecimal_code_input). diff --git a/keyboard/ergodox_ez/keymaps/alexjj/rl-layout.jpg b/keyboard/ergodox_ez/keymaps/alexjj/rl-layout.jpg Binary files differnew file mode 100644 index 0000000000..e4e92bf464 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/alexjj/rl-layout.jpg |