From 57789c64bd97e99afb470f04ff096c920e66bccd Mon Sep 17 00:00:00 2001 From: Bubblepoint Date: Tue, 26 Apr 2016 05:39:33 +0200 Subject: basic layout --- keyboard/ergodox_ez/keymaps/adnw_k_o_y/keymap.c | 185 ++++++++++++++++++++++++ 1 file changed, 185 insertions(+) create mode 100644 keyboard/ergodox_ez/keymaps/adnw_k_o_y/keymap.c (limited to 'keyboard/ergodox_ez/keymaps') diff --git a/keyboard/ergodox_ez/keymaps/adnw_k_o_y/keymap.c b/keyboard/ergodox_ez/keymaps/adnw_k_o_y/keymap.c new file mode 100644 index 0000000000..a836dbc85b --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/adnw_k_o_y/keymap.c @@ -0,0 +1,185 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_extras/keymap_german.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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | K | . | O | , | Y | L1 | | L1 | V | G | C | L | ß | Z | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | H | A | E | I | U |------| |------| D | T | R | N | S | F | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |X/Ctrl| Q | Ä | Ü | Ö | | | | B | P | W | M | J | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// 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_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, DE_K, DE_DOT, DE_O, DE_COMM,DE_Y, TG(SYMB), + KC_BSPC, DE_H, DE_A, DE_E, DE_I, DE_U, + KC_LSFT, CTL_T(DE_X), DE_Q, DE_AE, DE_UE, DE_OE, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), DE_V, DE_G, DE_C, DE_L, DE_SS, DE_Z, + DE_D, DE_T, DE_R, DE_N, LT(MDIA, DE_S), GUI_T(KC_F), + MEH_T(KC_NO),KC_B, KC_P, KC_W, KC_M, CTL_T(KC_J), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + 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,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + 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, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // 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) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // 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; + } + +}; -- cgit v1.2.3 From 0181663771a459252f75b1e78a602c4e5c35dc72 Mon Sep 17 00:00:00 2001 From: Tobias Matt Date: Tue, 26 Apr 2016 08:41:17 +0200 Subject: organize in subfolder --- keyboard/ergodox_ez/keymaps/adnw/k_o_y/keymap.c | 185 ++++++++++++++++++++++++ keyboard/ergodox_ez/keymaps/adnw_k_o_y/keymap.c | 185 ------------------------ 2 files changed, 185 insertions(+), 185 deletions(-) create mode 100644 keyboard/ergodox_ez/keymaps/adnw/k_o_y/keymap.c delete mode 100644 keyboard/ergodox_ez/keymaps/adnw_k_o_y/keymap.c (limited to 'keyboard/ergodox_ez/keymaps') diff --git a/keyboard/ergodox_ez/keymaps/adnw/k_o_y/keymap.c b/keyboard/ergodox_ez/keymaps/adnw/k_o_y/keymap.c new file mode 100644 index 0000000000..a836dbc85b --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/adnw/k_o_y/keymap.c @@ -0,0 +1,185 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_extras/keymap_german.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 + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | K | . | O | , | Y | L1 | | L1 | V | G | C | L | ß | Z | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | H | A | E | I | U |------| |------| D | T | R | N | S | F | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |X/Ctrl| Q | Ä | Ü | Ö | | | | B | P | W | M | J | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | App | LGui | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| Tab |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// 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_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, DE_K, DE_DOT, DE_O, DE_COMM,DE_Y, TG(SYMB), + KC_BSPC, DE_H, DE_A, DE_E, DE_I, DE_U, + KC_LSFT, CTL_T(DE_X), DE_Q, DE_AE, DE_UE, DE_OE, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, + ALT_T(KC_APP), KC_LGUI, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), DE_V, DE_G, DE_C, DE_L, DE_SS, DE_Z, + DE_D, DE_T, DE_R, DE_N, LT(MDIA, DE_S), GUI_T(KC_F), + MEH_T(KC_NO),KC_B, KC_P, KC_W, KC_M, CTL_T(KC_J), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN,KC_TAB, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + 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,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + 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, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // 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) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // 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/adnw_k_o_y/keymap.c b/keyboard/ergodox_ez/keymaps/adnw_k_o_y/keymap.c deleted file mode 100644 index a836dbc85b..0000000000 --- a/keyboard/ergodox_ez/keymaps/adnw_k_o_y/keymap.c +++ /dev/null @@ -1,185 +0,0 @@ -#include "ergodox_ez.h" -#include "debug.h" -#include "action_layer.h" -#include "keymap_extras/keymap_german.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 - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | Del | K | . | O | , | Y | L1 | | L1 | V | G | C | L | ß | Z | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | BkSp | H | A | E | I | U |------| |------| D | T | R | N | S | F | - * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| - * | LShift |X/Ctrl| Q | Ä | Ü | Ö | | | | B | P | W | M | J | RShift | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | App | LGui | | Alt |Ctrl/Esc| - * ,------|------|------| |------+--------+------. - * | | | Home | | PgUp | | | - * | Space|Backsp|------| |------| Tab |Enter | - * | |ace | End | | PgDn | | | - * `--------------------' `----------------------' - */ -// 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_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, - KC_DELT, DE_K, DE_DOT, DE_O, DE_COMM,DE_Y, TG(SYMB), - KC_BSPC, DE_H, DE_A, DE_E, DE_I, DE_U, - KC_LSFT, CTL_T(DE_X), DE_Q, DE_AE, DE_UE, DE_OE, ALL_T(KC_NO), - LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT,KC_RGHT, - ALT_T(KC_APP), KC_LGUI, - KC_HOME, - KC_SPC,KC_BSPC,KC_END, - // right hand - KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, - TG(SYMB), DE_V, DE_G, DE_C, DE_L, DE_SS, DE_Z, - DE_D, DE_T, DE_R, DE_N, LT(MDIA, DE_S), GUI_T(KC_F), - MEH_T(KC_NO),KC_B, KC_P, KC_W, KC_M, CTL_T(KC_J), KC_RSFT, - KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, - KC_LALT, CTL_T(KC_ESC), - KC_PGUP, - KC_PGDN,KC_TAB, KC_ENT - ), -/* Keymap 1: Symbol Layer - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | . | 0 | = | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | | | - * | | |------| |------| | | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// SYMBOLS -[SYMB] = KEYMAP( - // left hand - KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - 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,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, - KC_TRNS,KC_TRNS, - KC_TRNS, - KC_TRNS,KC_TRNS,KC_TRNS, - // right hand - KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, - 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, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS -), -/* Keymap 2: Media and mouse keys - * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | | | | | | | | | | | | | | | | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | | | MsUp | | | | | | | | | | | | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | | | | | | | | | | Prev | Next | | | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | - * `----------------------------------' `----------------------------------' - * ,-------------. ,-------------. - * | | | | | | - * ,------|------|------| |------+------+------. - * | | | | | | |Brwser| - * | | |------| |------| |Back | - * | | | | | | | | - * `--------------------' `--------------------' - */ -// MEDIA AND MOUSE -[MDIA] = KEYMAP( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, - // 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) -}; - -const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) -{ - // MACRODOWN only works in this function - switch(id) { - case 0: - if (record->event.pressed) { - register_code(KC_RSFT); - } else { - unregister_code(KC_RSFT); - } - break; - } - return MACRO_NONE; -}; - -// Runs just one time when the keyboard initializes. -void matrix_init_user(void) { - -}; - -// Runs constantly in the background, in a loop. -void matrix_scan_user(void) { - - uint8_t layer = biton32(layer_state); - - ergodox_board_led_off(); - ergodox_right_led_1_off(); - ergodox_right_led_2_off(); - ergodox_right_led_3_off(); - switch (layer) { - // 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; - } - -}; -- cgit v1.2.3 From d280a59c8224ebc78a712d43278e3b937243c6a8 Mon Sep 17 00:00:00 2001 From: Tobias Matt Date: Tue, 26 Apr 2016 08:43:56 +0200 Subject: add hex file --- keyboard/ergodox_ez/keymaps/adnw/k_o_y/k_o_y.hex | 1152 ++++++++++++++++++++++ 1 file changed, 1152 insertions(+) create mode 100644 keyboard/ergodox_ez/keymaps/adnw/k_o_y/k_o_y.hex (limited to 'keyboard/ergodox_ez/keymaps') diff --git a/keyboard/ergodox_ez/keymaps/adnw/k_o_y/k_o_y.hex b/keyboard/ergodox_ez/keymaps/adnw/k_o_y/k_o_y.hex new file mode 100644 index 0000000000..1e07f234c8 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/adnw/k_o_y/k_o_y.hex @@ -0,0 +1,1152 @@ +:100000000C9465020C94A9020C94A9020C94A90208 +:100010000C94A9020C94A9020C94A9020C94A902B4 +:100020000C94A9020C94A9020C946B0C0C943D0D39 +:100030000C94A9020C94A9020C94A9020C94A90294 +:100040000C94A9020C940F220C94A9020C94A902FE +:100050000C94A9020C94B31B0C94A9020C94A90251 +:100060000C94A9020C94A9020C94A9020C94A90264 +:100070000C94A9020C94A9020C94A9020C94A90254 +:100080000C94A9020C94A9020C94A9020C94A90244 +:100090000C94A9020C94A9020C94A9020C94A90234 +:1000A0000C94A9020C94A9020C94A902A20DC40DEF +:1000B000AF0EC40DAF0E060E290EAF0E7E0E910EC2 +:1000C0008B118B11CC11CC110E124A124A144A1406 +:1000D00062124A145913591324144A144A14381436 +:1000E0000000F0A12E004C002A00E1003581000044 +:1000F0001E000E000B001B7134004D001F00370066 +:1001000004001400E1042A0020001200080034005A +:1001100050002C00210036000C002F004F004A0038 +:1001200022001D00180033000000657450000154C7 +:100130000000007F0000E3004F0001540000007742 +:100140000000E200230019000700050000002971EB +:1001500024000A001700130052004B00250006007F +:1001600015001A005100280026000F001100100091 +:100170002F002B0027002D0016820D7130004E003D +:100180002D001C000978E500C100000001000100FD +:1001900001000100010000003A001E0220022202BC +:1001A000010001003B001F022102230201000100A7 +:1001B0003C002F0226022F00010001003D0030020A +:1001C00027023000010001003E00310235003502F7 +:1001D000000001000100010000000100000001001A +:1001E0000100010000000100000001003F0052007A +:1001F00051002402000001004000240021001E00E4 +:10020000010001004100250022001F00370001000D +:1002100042002600230020002700010043002502A1 +:100220002E0231002E0001004400450001000100B3 +:1002300001000000010001000100010001000000B8 +:1002400001000100010001000100010001000100A6 +:10025000F2000100010001000100F000F1000100C6 +:10026000F400010001000100F3000100F5000100AD +:100270000100010001000100000001000100010077 +:100280000000010000000100010001000000010069 +:100290000000010001000100010001000000010058 +:1002A0000100010001000100A9000100010001009E +:1002B0000100AC00AA00B600010001000100AB0083 +:1002C000A80001000100010001000100010001007F +:1002D00001000100AE00010001000000160345000E +:1002E000720067006F0044006F0078002000450036 +:1002F0005A00000016034500720067006F004400BA +:100300006F007800200045005A0000000403090433 +:1003100009026D00040100A0FA09040000010301B4 +:100320000100092111010001223F00070581030896 +:10033000000A090401000103010200092111010062 +:1003400001224D000705820308000A09040200018A +:100350000300000009211101000122360007058376 +:100360000308000A09040300010300000009211129 +:100370000100012239000705840310000112011059 +:100380000100000008EDFE07130100010200010555 +:10039000010906A101050719E029E71500250195C6 +:1003A0000875018102050819012905950575019156 +:1003B000029501750391010507190029771500259C +:1003C00001957875018102C005010980A1018502AE +:1003D00016010026B7001A01002AB7007510950112 +:1003E0008100C0050C0901A1018503160100269CAE +:1003F000021A01002A9C02751095018100C00501B6 +:100400000902A1010901A100050919012905150029 +:10041000250195057501810295017503810105018D +:10042000093009311581257F950275088106093843 +:100430001581257F950175088106050C0A3802157E +:1004400081257F950175088106C0C005010906A1B7 +:1004500001050719E029E7150025019508750181B7 +:100460000295017508810105081901290595057591 +:100470000191029501750391010507190029FF15E6 +:100480000025FF950675088100C0000000000000EF +:100490000000000000010204060A0F17202C3A4A4F +:1004A0005D71879DB3C7DAE9F5FCFFFCF5E9DAC7B2 +:1004B000B39D87715D4A3A2C20170F0A060402018A +:1004C0000000000000000000000011241FBECFEF5C +:1004D000DAE0DEBFCDBF04B603FE24C08091EE019A +:1004E0009091EF01A091F001B091F1018730904B14 +:1004F000A740B04BB9F41092EE011092EF011092A8 +:10050000F0011092F10114BE84B7877F84BF88E1A7 +:100510000FB6F89480936000109260000FBEE0E088 +:10052000FFE3099511E0A0E0B1E0ECEAF7E402C0D6 +:1005300005900D92A433B107D9F721E0A4E3B1E00F +:1005400001C01D92AE3EB207E1F70E94B1090C94C2 +:10055000D4230C94000061110BC0FC01828188231C +:1005600021F085EE0E94131003C085EE0E94DB107F +:1005700080E090E0089508956091B1017091B2011A +:100580008091B3019091B4010E94DC1A56985E9854 +:1005900025982D9826982E9827982F98813019F015 +:1005A000823021F00895259A2D9A0895269A2E9A40 +:1005B00008950C94BC0256985E9825982D9826981C +:1005C0002E9827982F988FEF90E090938900809332 +:1005D000880090938B0080938A0090938D00809385 +:1005E0008C00259A2D9A2FEF80E792E021508040D1 +:1005F0009040E1F700C00000269A2E9A2FEF80E786 +:1006000092E0215080409040E1F700C00000279A1E +:100610002F9A2FEF80E792E0215080409040E1F741 +:1006200000C0000025982D982FEF80E792E0215020 +:1006300080409040E1F700C0000026982E982FEFF0 +:1006400080E792E0215080409040E1F700C0000038 +:1006500027982F9856985E9825982D9826982E982A +:1006600027982F98089589EA8093800089E08093E5 +:10067000810024982C983F988AB18F748AB96E981B +:10068000479A8BB1806B8BB9769A0E94DB020C94EF +:10069000BB0280E2809300018091340181110EC081 +:1006A0000E94980381E0809334012FEF83ED90E363 +:1006B000215080409040E1F700C0000080E40E949B +:1006C0009E038093000181112EC00E94C803809375 +:1006D0000001811128C00E94C8038093000181118C +:1006E00022C08FE30E94C8038093000181111BC0C8 +:1006F0000E94C00380E40E949E0380930001811148 +:1007000012C08CE00E94C8038093000181110BC0CD +:100710000E94C80380930001811105C08FE30E94ED +:10072000C803809300010E94C003809100010895D6 +:100730001092B9008AE08093B800089594EA9093EB +:10074000BC009091BC0097FFFCCF9091B900987FBE +:10075000983021F0903111F081E008958093BB0032 +:1007600084E88093BC008091BC0087FFFCCF80911F +:10077000B900887F883111F0803471F780E00895E6 +:1007800084E98093BC008091BC0084FDFCCF089577 +:100790008093BB0084E88093BC008091BC0087FFFD +:1007A000FCCF9091B900987F81E0983209F480E005 +:1007B000089584E88093BC008091BC0087FFFCCF43 +:1007C0008091BB00089580910001811115C080E4E3 +:1007D0000E949E038093000181110CC082E10E945F +:1007E000C80380930001811105C08FEF0E94C803E8 +:1007F000809300010E94C00384B1807F84B985B1D9 +:10080000807F85B98AB1837F8AB98BB1837F8BB9A9 +:100810003E98469808950E944903809300010E94E3 +:10082000E30380B38C7080BB81B3836F81BBE4E44E +:10083000F1E0A6E3B1E011921D9281E0E235F80704 +:10084000D1F70C943303BF92CF92DF92EF92FF92D5 +:100850000F931F93CF93DF9380910001882379F04A +:10086000809135018F5F80933501811108C00E940E +:10087000490380930001811102C00E94DB0206E35C +:1008800011E0C0E0D0E0DD24D39482E0C82EEE2455 +:10089000E394F12CC73000F580910001811162C012 +:1008A00080E40E949E0380930001811112C082E1C6 +:1008B0000E94C8038093000181110BC0C7010C2E58 +:1008C00001C0880F0A94EAF780950E94C8038093BC +:1008D00000010E94C00346C0CA30A1F028F4C8300D +:1008E00059F0C93061F005C0CC3089F070F0CD30DE +:1008F00089F0209A289810C0219A29980DC0229A30 +:100900002A980AC0239A2B9807C0529A01C0539A7A +:100910005B9802C03E9A4698E0EAEA95F1F78FB1FB +:1009200079995AC092E081708D25892B7C9B02C0F9 +:1009300090E001C094E0892B7D9B02C090E001C053 +:1009400098E0892B7E9B02C090E001C090E1892B4A +:100950009FB19095991F9927991F9295990F907E15 +:10096000892B0FC08091000181114BC080E40E944F +:100970009E0380930001882389F1B12C0E94C0035B +:100980008B2DF8019081981719F08083C092010196 +:100990000E94E30321960F5F1F4FCE30D10509F06F +:1009A00079CF80910101882371F1815080930101F9 +:1009B000882339F08FE99FE00197F1F700C000002C +:1009C00022C0A4E4B1E0E6E3F1E081918D9391E0EF +:1009D000E434F907D1F717C090E0A5CF83E10E9476 +:1009E000C803809300018111C8CF81E40E949E0357 +:1009F000809300018111C1CF0E94D903B82EB09419 +:100A0000BDCF80E0BECF0E94D90281E0DF91CF91BF +:100A10001F910F91FF90EF90DF90CF90BF900895BE +:100A2000E82FF0E0EC5BFE4F808108950895089573 +:100A300096E0799FF001112494E5899FE00DF11D66 +:100A40001124E60FF11DEE0FFF1FEC51FF4F8591B2 +:100A500094910895880F991F805A9040FC018591C8 +:100A600094910895880F991F80529F4FFC018591A2 +:100A7000949108950F931F93CF93DF93EC01811509 +:100A800020E3920730F5811530E2930708F0B1C0FA +:100A90008B3B910588F4883A910508F058C0853A57 +:100AA000910508F049C08430910508F043C08130B9 +:100AB000910509F4B2C1AEC18F3F910509F0D0F59F +:100AC000803F910508F092C0805E9109089790F1EF +:100AD000A1C1C11581E5D807A8F4C23090E5D907B6 +:100AE00008F09FC0C11520E5D20709F486C008F0C0 +:100AF00092C0C11580E4D80708F08CC18E0111277F +:100B0000106CCCC1C11590E8D90758F4C11520E785 +:100B1000D20708F07BC1C11530E6D30708F423C122 +:100B200079C1C11580E9D80708F074C18E011F7022 +:100B3000106AB4C18E01B2C1853A910509F470C141 +:100B4000863A910509F46FC103E810E4A7C1883A19 +:100B5000910509F46BC1893A910509F46AC18A3A91 +:100B6000910509F469C18B3A910509F468C18C3A81 +:100B7000910509F467C18D3A910509F466C1803B7E +:100B8000910509F465C18E3A910509F464C18F3A63 +:100B9000910509F463C1813B910509F462C1823B6F +:100BA000910509F461C1833B910509F460C1843B5F +:100BB000910509F45FC1853B910509F45EC1863B4F +:100BC000910509F45DC1873B910509F45CC1883B3F +:100BD000910509F45BC1893B910509F45AC18A3B2F +:100BE000910509F059C10AE216E458C18C0110655B +:100BF00055C19F700E94320552C10E946D149FEF33 +:100C000024E33CE0915020403040E1F700C0000078 +:100C10000E94D81B43C18091CD0181608093CD019A +:100C20003DC10E94801D811102C00E94661D0E946C +:100C30009D1D90E09093EE018093ED01C23080E520 +:100C4000D80721F48091ED01816086C0C43090E521 +:100C5000D90721F48091ED0182607EC0C63020E585 +:100C6000D20721F48091ED01846076C0C83030E570 +:100C7000D30719F48091ED0127C0CA3080E5D80769 +:100C800021F48091ED01806167C0CC3090E5D907F7 +:100C900021F48091ED0180625FC0CE3020E5D20763 +:100CA00021F48091ED01806457C0C03130E5D30755 +:100CB00021F48091ED0180684FC0C23180E5D807F2 +:100CC00029F48091ED018460886046C0C33090E5CE +:100CD000D90721F48091ED018E7F3EC0C53020E51B +:100CE000D20721F48091ED018D7F36C0C73030E509 +:100CF000D30721F48091ED018B7F2EC0C93080E5B0 +:100D0000D80719F48091ED0126C0CB3090E5D907C2 +:100D100021F48091ED018F7E1FC0CD3020E5D207F8 +:100D200021F48091ED018F7D17C0CF3030E5D307DE +:100D300021F48091ED018F7B0FC0C13180E5D80790 +:100D400021F48091ED018F7707C0C331D04531F494 +:100D50008091ED018B7F877F8093ED018091ED0184 +:100D60000E94A11D9BC08D2F99278F7099278130DC +:100D70009105E9F48E01037011279C0102C0220F36 +:100D8000331F0A95E2F789011C68CE0164E0880FE1 +:100D9000991F6A95E1F788279370082B192B73E048 +:100DA000CC0FDD1F7A95E1F7C076DD272CC08230AD +:100DB000910529F41C2F0027016F106A6FC0833042 +:100DC000910561F4CE018370992701E010E002C023 +:100DD000000F111F8A95E2F71C680EC0049709F0F6 +:100DE0005DC0CE018370992701E010E002C0000FC2 +:100DF000111F8A95E2F71A6843E0CC0FDD1F4A9570 +:100E0000E1F7C07ED7700C2B1D2B48C08E011F70E0 +:100E1000106244C000E010E041C001E010E03EC0BC +:100E200001E810E43BC002E810E438C002EE14E42C +:100E300035C009EE14E432C00AEE14E42FC005EB0D +:100E400014E42CC006EB14E429C007EB14E426C01C +:100E50000CEC14E423C00DEC14E420C003E815E40A +:100E60001DC00AE815E41AC002E915E417C004E938 +:100E700015E414C001E216E411C003E216E40EC04A +:100E800004E216E40BC005E216E408C006E216E42C +:100E900005C007E216E402C000E014E4C801DF91D7 +:100EA000CF911F910F91089596E0799FF001112441 +:100EB00094E5899FE00DF11D1124E60FF11DEE0F61 +:100EC000FF1FEC51FF4F85919491803E9105E0F416 +:100ED000803C910558F58133910509F46FC048F4C1 +:100EE0008932910509F463C08A32910509F46DC015 +:100EF00072C089339105E9F082389105D1F08533CC +:100F0000910509F44DC067C0833E910581F138F425 +:100F1000803E9105B9F0823E9105D9F05CC0863ED5 +:100F2000910561F1873E9105A1F155C00E942A0506 +:100F300008952091ED0120FD02C021FF4CC080EEFC +:100F400090E049C08091ED0180FFF9CF89E390E006 +:100F500042C08091ED0182FF0EC08091ED0184FFBF +:100F600003C080E090E037C083EE90E034C0809111 +:100F7000ED0182FFF2CF82EE90E02DC08091ED0175 +:100F800083FF0BC08091ED0184FDEBCF87EE90E0F5 +:100F900022C08091ED0183FFF5CF86EE90E01BC06B +:100FA0008091ED0185FF07C089E290E014C0809137 +:100FB000ED0185FFF9CF85E390E00DC08091ED0153 +:100FC00086FF07C08AE290E006C08091ED0186FFAF +:100FD000F9CF81E390E00E943A05089508950C94BA +:100FE000EE07809162010895CF93DF9300D01F92A6 +:100FF000CDB7DEB72091E401243019F523E0298331 +:101000009B838A832093E9008FEF9091E8008150C1 +:1010100095FD06C095ED9A95F1F700008111F5CF89 +:101020008091E80085FF0DC040E050E063E070E093 +:10103000CE0101960E945E0A8091E8008E7780932F +:10104000E8000F900F900F90DF91CF910895CF930C +:10105000DF9300D01F92CDB7DEB72091E40124309A +:1010600021F522E029839B838A8383E08093E90032 +:101070008FEF9091E800815095FD06C095ED9A950F +:10108000F1F700008111F5CF8091E80085FF0DC0D8 +:1010900040E050E063E070E0CE0101960E945E0AFD +:1010A0008091E8008E778093E8000F900F900F906A +:1010B000DF91CF9108952091E4012430F1F422E0F2 +:1010C0002093E9002FEF3091E800215035FD06C054 +:1010D00035ED3A95F1F700002111F5CF2091E800A8 +:1010E00025FF0BC040E050E065E070E00E945E0A22 +:1010F0008091E8008E778093E8000895CF93DF9386 +:10110000EC018091E401843009F046C090910C011B +:101110009923D9F090910D019923B9F08093E900BA +:101120008FEF9091E800815095FD06C095E19A956A +:10113000F1F700008111F5CF8091E80085FF2CC008 +:1011400040E050E060E170E017C081E08093E9008A +:101150008FEF9091E800815095FD06C095ED9A952E +:10116000F1F700008111F5CF8091E80085FF14C0F0 +:1011700040E050E068E070E0CE010E945E0A80919D +:10118000E8008E778093E80080E1FE01A2E5B1E0FF +:1011900001900D928A95E1F7DF91CF9108958091AA +:1011A000E301811109C00E94F00B0E944D0C809157 +:1011B000E20084608093E20008951092E3010895B4 +:1011C00008950C94FC210E946F1B0E9402220E9431 +:1011D000EA0E0C94EF0742E061EC81E00E946A0B9A +:1011E00042E061EC82E00E946A0B42E061EC83E045 +:1011F0000E946A0B42E161EC84E00C946A0B8091DE +:10120000E601833009F455C030F4813071F082304A +:1012100009F48EC008958A3009F47AC08B3009F43D +:1012200060C0893009F09CC020C08091E501813AFE +:1012300009F096C08091E800877F8093E800809154 +:10124000E9019091EA01892B21F060E080E090E0D3 +:1012500003C060E182E591E070E00E94A70A8091FE +:10126000E8008B778093E80008958091E501813252 +:1012700009F076C08091E9019091EA01009719F098 +:10128000039709F06DC08091E800877F8093E800A4 +:101290008091E80082FD05C08091E4018111F8CFC2 +:1012A0005FC08091F100809362018091E8008B77AC +:1012B00053C08091E501813A09F052C08091E90163 +:1012C0009091EA01892B09F04BC08091E800877F5B +:1012D0008093E8008091E80080FFFCCF80910C01B2 +:1012E00036C08091E5018132D9F58091E901909174 +:1012F000EA01892BA9F58091E800877F8093E800B7 +:101300000E949F0B8091E70180930C010C946D1457 +:101310008091E501813221F58091E800877F8093FB +:10132000E8000E949F0B8091E8018093630108957B +:101330008091E501813AA1F48091E800877F809354 +:10134000E8008091E80080FFFCCF809163018093EA +:10135000F1008091E8008E778093E8000C949F0B59 +:10136000089584B7877F84BF88E10FB6F89480938F +:101370006000109260000FBE90E080E80FB6F89415 +:1013800080936100909361000FBE0E94390F0E940C +:10139000F00B0E944D0C8091E20084608093E2008B +:1013A00078940E94C80E0E943B0F82E091E00E9458 +:1013B000E50E0E94EA218091E401853069F40E94E3 +:1013C0002F1B8091E2018823B1F30E945A1B8823CE +:1013D00091F30E94480AEFCF0E94410FECCF292FD2 +:1013E000332723303105A9F06CF42130310509F49D +:1013F00042C02230310509F043C08DE690E020E183 +:1014000033E042C021323105C9F02232310519F1F1 +:1014100037C099278130910541F08230910541F024 +:10142000892B71F5ECE0F3E005C0E4EFF2E002C0D7 +:10143000ECEDF2E0849190E09F0126C0643000F56D +:10144000E62FF0E0EE0FFF1FEE5DFE4F20813181B1 +:1014500089E090E019C0643098F4E62FF0E0DF01F5 +:10146000AA0FBB1FA65EBE4F2D913C91EA5EFE4FB8 +:10147000808190E009C082E190E02DE733E004C074 +:1014800080E090E020E030E0FA013183208308958D +:1014900080E189BD82E189BD09B400FEFDCF809164 +:1014A000D8008F7D8093D8008091E0008260809387 +:1014B000E0008091E00081FDFCCF0895CF92DF92A3 +:1014C000EF92FF920F931F93CF93DF937C018B01D9 +:1014D000EA010E94C00B811131C0209731F0888150 +:1014E0009981081B190BE80EF91EC12CD12C01158E +:1014F000110519F18091E80085FD14C08091E80084 +:101500008E778093E800209741F0888199818C0D37 +:101510009D1D9983888385E011C00E94C00B88239C +:1015200031F30CC0F70181917F018093F1000150EC +:101530001109FFEFCF1ADF0ADACF80E0DF91CF91F8 +:101540001F910F91FF90EF90DF90CF900895209121 +:10155000EB013091EC012617370748F06115710552 +:1015600039F42091E8002E772093E80001C0B901FA +:10157000FC0120E061157105B9F18091E401882337 +:1015800009F440C0853009F43FC08091E80083FD34 +:101590003DC08091E80082FF06C08091E80082FF94 +:1015A00026C080E008958091E80080FFE3CF20917D +:1015B000F3008091F20090E0922B6115710551F0DB +:1015C0008830910538F421912093F1006150710920 +:1015D0000196F3CF21E0089709F020E08091E80020 +:1015E0008E778093E800C6CF2111C7CFD6CF8091E8 +:1015F000E401882339F0853039F08091E80083FFD9 +:10160000CCCF04C082E0089583E0089581E008957E +:101610002091EB013091EC012617370748F0611556 +:10162000710539F42091E8002E772093E80001C07D +:10163000B901FC0120E061157105C1F18091E4015F +:10164000882309F441C0853009F440C08091E80046 +:1016500083FD3EC08091E80082FF06C08091E800D3 +:1016600082FF27C080E008958091E80080FFE3CFEB +:101670002091F3008091F20090E0922B61157105AA +:1016800059F08830910540F424912093F10031966F +:10169000615071090196F2CF21E0089709F020E02E +:1016A0008091E8008E778093E800C5CF2111C6CFE6 +:1016B000D5CF8091E401882339F0853039F08091CD +:1016C000E80083FFCBCF04C082E0089583E0089553 +:1016D00081E00895982F973058F59093E900981776 +:1016E00039F07091EC002091ED005091F00003C0B2 +:1016F000242F762F50E021FF19C03091EB003E7F60 +:101700003093EB003091ED003D7F3093ED00309150 +:10171000EB0031603093EB007093EC002093ED0010 +:101720005093F0002091EE0027FF07C09F5FD3CFBA +:101730008F708093E90081E0089580E008958091A2 +:10174000E50187FD05C08091E80080FF0EC012C052 +:101750008091E80082FD05C08091E4018111F8CFFD +:1017600008958091E8008B7708C08091E401811191 +:10177000EACF08958091E8008E778093E80008957D +:101780008091E4009091E50045E62091EC0020FF77 +:1017900021C02091E80020FD21C02091E4012223F6 +:1017A00089F0253089F02091EB0025FD0FC02091B4 +:1017B000E4003091E5002817390739F3415041F032 +:1017C000C901E3CF82E0089583E0089581E00895A0 +:1017D00084E008952091E80022FFDFCF80E00895A3 +:1017E0000E945E0C0E94660CE0EEF0E08081816059 +:1017F0008083E8EDF0E080818F77808319BCA7EDCE +:10180000B0E08C918E7F8C9380818F7E808310924C +:10181000E30108950F931F93CF93DF930E945E0C13 +:101820000E94660CC8EDD0E088818F77888388811C +:101830008068888388818F7D888319BC1092E40139 +:101840001092E0011092E2011092E10100EE10E02E +:10185000F80180818B7F808388818160888342E06A +:1018600060E080E00E946A0BE1EEF0E080818E7F14 +:101870008083E2EEF0E080818160808380818860F7 +:101880008083F80180818E7F808388818061888356 +:10189000DF91CF911F910F910895E8EDF0E08081E5 +:1018A0008F7E8083E7EDF0E080818160808384E03B +:1018B00082BF81E08093E3010C940A0CE8EDF0E034 +:1018C00080818E7F80831092E20008951092DA006A +:1018D0001092E10008951F920F920FB60F921124FB +:1018E0002F933F934F935F936F937F938F939F9328 +:1018F000AF93BF93EF93FF938091E10082FF0BC002 +:101900008091E20082FF07C08091E1008B7F80938D +:10191000E1000E94C70E8091DA0080FF1FC0809115 +:10192000D80080FF1BC08091DA008E7F8093DA00A0 +:101930008091D90080FF0DC080E189BD82E189BD21 +:1019400009B400FEFDCF81E08093E4010E94CF083E +:1019500005C019BC1092E4010E94DD088091E100ED +:1019600080FF19C08091E20080FF15C08091E200E5 +:101970008E7F8093E2008091E20080618093E2009C +:101980008091D80080628093D80019BC85E0809354 +:10199000E4010E94E1088091E10084FF30C0809161 +:1019A000E20084FF2CC080E189BD82E189BD09B4D9 +:1019B00000FEFDCF8091D8008F7D8093D80080916C +:1019C000E1008F7E8093E1008091E2008F7E809322 +:1019D000E2008091E20081608093E2008091E0016A +:1019E000882311F084E007C08091E30087FF02C0E4 +:1019F00083E001C081E08093E4010E94E3088091CC +:101A0000E10083FF29C08091E20083FF25C080911F +:101A1000E100877F8093E10082E08093E4011092EF +:101A2000E0018091E1008E7F8093E1008091E200EF +:101A30008E7F8093E2008091E20080618093E200DB +:101A400042E060E080E00E946A0B8091F0008860D4 +:101A50008093F0000E94E008FF91EF91BF91AF9159 +:101A60009F918F917F916F915F914F913F912F91B6 +:101A70000F900FBE0F901F9018951F920F920FB6E8 +:101A80000F9211242F933F934F935F936F937F9304 +:101A90008F939F93AF93BF93CF93EF93FF93C09197 +:101AA000E900CF708091EC001092E9008091F00085 +:101AB000877F8093F00078940E94790D1092E9005E +:101AC0008091F00088608093F000C093E900FF915E +:101AD000EF91CF91BF91AF919F918F917F916F9136 +:101AE0005F914F913F912F910F900FBE0F901F90DC +:101AF00018951F93CF93DF93CDB7DEB7AA970FB694 +:101B0000F894DEBF0FBECDBFE5EEF1E08091F100AD +:101B1000819321E0ED3EF207C9F70E94FF08809112 +:101B2000E80083FF1CC12091E5013091E601832F7D +:101B300090E08A30910508F012C1FC01EA5AFF4F8B +:101B40000C948423203881F0223809F008C1809158 +:101B5000E9018F708093E9008091EB0085FB882775 +:101B600080F91092E90006C08091E1019091E201B4 +:101B7000911182609091E800977F9093E8008093A4 +:101B8000F1001092F100C5C0822F8D7F09F0E7C0EF +:101B9000222319F0223061F0E2C08091E701813008 +:101BA00009F0DDC0333009F080E08093E20128C005 +:101BB0008091E701811124C02091E9012F7009F47F +:101BC000CEC02093E9008091EB0080FF19C0809186 +:101BD000EB00333011F4806211C080618093EB0020 +:101BE00081E090E0022E01C0880F0A94EAF780930A +:101BF000EA001092EA008091EB0088608093EB008D +:101C00001092E9008091E800877F86C02111A7C06B +:101C10001091E7011F778091E3008078812B8093FA +:101C2000E3008091E800877F8093E8000E949F0B8B +:101C30008091E80080FFFCCF8091E3008068809372 +:101C4000E300112311F083E001C082E08093E401FE +:101C500086C02058223008F082C08091E701909120 +:101C6000E8018C3D23E0920779F583E08A838AE2DC +:101C700089834FB7F894DE01139620E03EE051E2ED +:101C8000E32FF0E050935700E49120FF03C0E2956A +:101C9000EF703F5FEF708E2F90E0EA3010F0C79644 +:101CA00001C0C0968D939D932F5F243149F74FBF9C +:101CB0008091E800877F8093E8006AE270E0CE01BF +:101CC00001960E94A70A14C0AE014F5F5F4F60915A +:101CD000E9010E94EF09009709F441C02091E80052 +:101CE000277F2093E800BC0189819A810E94080B1C +:101CF0008091E8008B778093E80031C0203879F537 +:101D00008091E800877F8093E8008091E0018093D4 +:101D1000F1008091E8008E778093E8000E949F0B8D +:101D20001EC021111CC09091E7019230C0F4809137 +:101D3000E800877F8093E8009093E0010E949F0B6A +:101D40008091E001811104C08091E30087FF02C00F +:101D500084E001C081E08093E4010E94EB0880915F +:101D6000E80083FF0AC08091E800877F8093E80045 +:101D70008091EB0080628093EB00AA960FB6F894F6 +:101D8000DEBF0FBECDBFDF91CF911F9108950895A3 +:101D9000CF938091E4018823B1F08091E9008F70A6 +:101DA0009091EC0090FF02C090E801C090E0C92F34 +:101DB000C82B1092E9008091E80083FD0E94790D04 +:101DC000CF70C093E900CF910895909369018093FB +:101DD00068010895E0916801F0916901309721F060 +:101DE0000190F081E02D099480E00895E091680170 +:101DF000F0916901309721F00280F381E02D099480 +:101E00000895E0916801F0916901309721F0048014 +:101E1000F581E02D099408952091660130916701C4 +:101E20008217930771F09093670180936601E091A8 +:101E30006801F0916901309721F00680F781E02D6B +:101E400009940895209164013091650182179307E8 +:101E500071F09093650180936401E0916801F091C5 +:101E60006901309721F00084F185E02D09940895EF +:101E700008950C94380F0E94751B0E940B040C945B +:101E80003B1CCF92DF92EF92FF920F931F93CF9361 +:101E9000DF93CDB7DEB72B970FB6F894DEBF0FBE3A +:101EA000CDBF0E9423043BE6E32E31E0F32E00E099 +:101EB00010E0C02E802F0E941005F701D1907F0105 +:101EC000D826B1F40F5F1F4F0E30110591F78FEF39 +:101ED00089838A831B820E947E1B8160782F9D8369 +:101EE0008C8349815A816B818D810E94E40F41C0AE +:101EF0009091CD0191FF04C08B870E9416058B85C0 +:101F000020E030E04D2D50E0922FBA01022E02C0A9 +:101F1000759567950A94E2F760FF25C02E83CF82FE +:101F2000EE24E394F12C02C0EE0CFF1C9A95E2F72C +:101F300090E08E219F2121E0892B09F420E0288761 +:101F40000E947E1B8160782F9A8789874E815F81EE +:101F500068858A850E94E40FF801E559FE4F80816B +:101F60008E25808306C02F5F3F4F2630310561F6F6 +:101F7000A9CF0E941F1F10916A010E94EA0E181734 +:101F8000A1F00E94EA0E80936A012B960FB6F89496 +:101F9000DEBF0FBECDBFDF91CF911F910F91FF909C +:101FA000EF90DF90CF900C94EF072B960FB6F8943C +:101FB000DEBF0FBECDBFDF91CF911F910F91FF907C +:101FC000EF90DF90CF900895CF93DF93CDB7DEB73A +:101FD0002B970FB6F894DEBF0FBECDBF4F83588747 +:101FE00069877A878B87DE01119686E0FD01119261 +:101FF0008A95E9F785E0FE01379601900D928A9562 +:10200000E1F749815A816B817C818D819E810E949B +:1020100039172B960FB6F894DEBF0FBECDBFDF91F8 +:10202000CF9108950895CF93C82F882309F4C1C094 +:10203000823859F40E94EA0E81FDBBC089E30E94F8 +:10204000E3190E94AD1A89E30CC0833879F40E9429 +:10205000EA0E80FDAEC083E50E94E3190E94AD1A2E +:1020600083E50E94231ACF910C94AD1A843859F459 +:102070000E94EA0E82FD9DC087E40E94E3190E943F +:10208000AD1A87E4EECF8CEF8C0F813A48F48C2F99 +:102090000E94522181118DC08C2F0E94E319E3CF41 +:1020A00080E28C0F883048F4C77081E001C0880F4F +:1020B000CA95EAF70E94641AD6CF8BE58C0F83305D +:1020C00078F4C53A29F0C63A31F482E890E005C0C8 +:1020D00081E890E002C083E890E0CF910C940C0F6F +:1020E00088E58C0F833108F064C0C83A39F1C93AE9 +:1020F00041F1CA3A49F1CB3A51F1CC3A59F1CD3AD2 +:1021000061F1C03B69F1CE3A71F1CF3A79F1C13B4F +:1021100081F1C23B89F1C33B91F1C43B99F1C53BCD +:10212000A1F1C63BA9F1C73BB1F1C83BB9F1C93B2D +:10213000C1F1CA3BC9F58AE292E038C082EE90E074 +:1021400035C089EE90E032C08AEE90E02FC085EB7A +:1021500090E02CC086EB90E029C087EB90E026C091 +:102160008CEC90E023C08DEC90E020C083E891E0FF +:102170001DC08AE891E01AC082E991E017C084E9A5 +:1021800091E014C081E292E011C083E292E00EC0BF +:1021900084E292E00BC085E292E008C086E292E021 +:1021A00005C087E292E002C080E090E0CF910C94FD +:1021B000220FCF910895882309F44BC0823859F437 +:1021C0000E94EA0E81FF45C089E30E94E3190E9444 +:1021D000AD1A89E30CC0833871F40E94EA0E80FFC7 +:1021E00038C083E50E94E3190E94AD1A83E50E947E +:1021F000231A0C94AD1A843859F40E94EA0E82FF17 +:1022000028C087E40E94E3190E94AD1A87E4EFCF4B +:102210009CEF980F913A58F390E2980F983050F451 +:10222000877091E001C0990F8A95EAF7892F0E9483 +:102230006A1ADFCF9BE5980F933020F480E090E09E +:102240000C940C0F885A833120F480E090E00C94B9 +:10225000220F0895882321F00E94641A0C94AD1A6D +:102260000895882321F00E946A1A0C94AD1A0895EB +:10227000CF92DF92EF92FF920F931F93CF93DF9352 +:10228000CDB7DEB728970FB6F894DEBF0FBECDBF2F +:102290008C0185E0F801DE01119601900D928A957E +:1022A000E1F7F801D080E180F280558152955F70AE +:1022B00023813481232B39F0FFEFEF1206C081E038 +:1022C000DF1203C003C081E001C080E080FDE2C2F4 +:1022D000C8015F830E941210D982EA8269817A81E3 +:1022E0008F2D0E94DF199E8388870E9493190E9478 +:1022F00066184E815F816885FF2029F00E94811A4F +:1023000068855F814E81E42FE295EF70F0E0E05A3E +:10231000FF4F0C948423842F807F142F1F708823F9 +:1023200011F01295107FFF20B1F0112309F467C25C +:1023300080E2860F883028F4812F68870E94641A13 +:1023400004C0812F68870E94741A688568870E947C +:10235000AD1A688554C2862F68870E94DB10688595 +:10236000112309F497C2605E812F683018F40E942F +:102370006A1A02C00E947A1A28960FB6F894DEBF35 +:102380000FBECDBFDF91CF911F910F91FF90EF90C6 +:10239000DF90CF900C94AD1A242F207F842F8F7064 +:1023A000203211F08295807F662319F0613019F197 +:1023B0002BC0FF20B1F0552309F493C1513009F02F +:1023C00090C128960FB6F894DEBF0FBECDBFDF9147 +:1023D000CF911F910F91FF90EF90DF90CF900C94D1 +:1023E000941A552319F0513009F454C28E830E9477 +:1023F000971A8E8189C1FF2021F0523008F04AC21D +:1024000070C1511147C280C1FF2021F0552309F44A +:1024100068C1F5C1552309F477C105C2242F26955B +:102420002695237030E02115310521F0213031054A +:10243000C9F030C2FF2021F0862F942F937002C084 +:1024400080E090E028960FB6F894DEBF0FBECDBFB7 +:10245000DF91CF911F910F91FF90EF90DF90CF9080 +:102460000C940C0FFF2021F0862F942F937002C044 +:1024700080E090E028960FB6F894DEBF0FBECDBF87 +:10248000DF91CF911F910F91FF90EF90DF90CF9050 +:102490000C94220F862FFF2019F00E94271E02C0E5 +:1024A0000E948F1E28960FB6F894DEBF0FBECDBFD8 +:1024B000DF91CF911F910F91FF90EF90DF90CF9020 +:1024C0000C94141F842F837009F076C0F110E2C1C0 +:1024D000262F229526952770220F220F862F8F7088 +:1024E000C82ED12CE12CF12C022E04C0CC0CDD1C0A +:1024F000EE1CFF1C0A94D2F764FF10C06FE070E07E +:1025000080E090E004C0660F771F881F991F2A950E +:10251000D2F7609570958095909503C060E070E06B +:10252000CB01242F269526952370422F50E0423070 +:102530005105D1F04330510559F16C297D298E297F +:102540009F294130510541F128960FB6F894DEBF1E +:102550000FBECDBFDF91CF911F910F91FF90EF90F4 +:10256000DF90CF900C948B186C297D298E299F29A0 +:1025700028960FB6F894DEBF0FBECDBFDF91CF9186 +:102580001F910F91FF90EF90DF90CF900C94A518C2 +:102590000E948B18C701B60128960FB6F894DEBFCB +:1025A0000FBECDBFDF91CF911F910F91FF90EF90A4 +:1025B000DF90CF900C947118FF2019F0842F817058 +:1025C00001C08695882309F465C1262F229526959A +:1025D0002770220F220F862F8F70C82ED12CE12C4E +:1025E000F12C022E04C0CC0CDD1CEE1CFF1C0A9446 +:1025F000D2F764FF10C06FE070E080E090E004C0AC +:10260000660F771F881F991F2A95D2F760957095DE +:102610008095909503C060E070E0CB01242F269553 +:1026200026952370422F50E042305105D1F04330BF +:10263000510559F16C297D298E299F294130510579 +:1026400041F128960FB6F894DEBF0FBECDBFDF91E3 +:10265000CF911F910F91FF90EF90DF90CF900C944E +:102660005F196C297D298E299F2928960FB6F89429 +:10267000DEBF0FBECDBFDF91CF911F910F91FF90B5 +:10268000EF90DF90CF900C9479190E945F19C701E9 +:10269000B60128960FB6F894DEBF0FBECDBFDF910E +:1026A000CF911F910F91FF90EF90DF90CF900C94FE +:1026B0004519603FC9F118F4603E50F49BC0623F79 +:1026C00009F460C008F44AC0633F09F46FC092C0C7 +:1026D000162F1F70842F8F71FF2099F00E94DE1833 +:1026E000812F28960FB6F894DEBF0FBECDBFDF91C5 +:1026F000CF911F910F91FF90EF90DF90CF900C94AE +:102700002A110E94FF18812F28960FB6F894DEBF79 +:102710000FBECDBFDF91CF911F910F91FF90EF9032 +:10272000DF90CF900C943111FF20A1F05111B2C075 +:10273000842F8F7128960FB6F894DEBF0FBECDBFE1 +:10274000DF91CF911F910F91FF90EF90DF90CF908D +:102750000C942419523008F09DC0EACFFF20A1F05C +:10276000842F8F7128960FB6F894DEBF0FBECDBFB1 +:10277000DF91CF911F910F91FF90EF90DF90CF905D +:102780000C94DE18FF2061F3842F8F7128960FB60A +:10279000F894DEBF0FBECDBFDF91CF911F910F9197 +:1027A000FF90EF90DF90CF900C94FF18FF2091F0F6 +:1027B000842F8F7128960FB6F894DEBF0FBECDBF61 +:1027C000DF91CF911F910F91FF90EF90DF90CF900D +:1027D0000C94C91828960FB6F894DEBF0FBECDBF73 +:1027E000DF91CF911F910F91FF90EF90DF90CF90ED +:1027F0000C94BF18FF20A1F0552309F4B1CF862F08 +:1028000028960FB6F894DEBF0FBECDBFDF91CF91F3 +:102810001F910F91FF90EF90DF90CF900C941310C9 +:10282000552309F4B1CF862F28960FB6F894DEBF52 +:102830000FBECDBFDF91CF911F910F91FF90EF9011 +:10284000DF90CF900C94DB104F70C8010E94AB0258 +:1028500028960FB6F894DEBF0FBECDBFDF91CF91A3 +:102860001F910F91FF90EF90DF90CF900C94E6179F +:102870004F70C80128960FB6F894DEBF0FBECDBFCB +:10288000DF91CF911F910F91FF90EF90DF90CF904C +:102890000C94170528960FB6F894DEBF0FBECDBF77 +:1028A000DF91CF911F910F91FF90EF90DF90CF902C +:1028B00008950E94811A0E94911A0E94561A0E943D +:1028C000AD1A0E94C01F0E94141F80E090E00E9479 +:1028D0000C0F80E090E00C94220F0E94711A0C946F +:1028E00059140E94D419292F22952F7030E02C30D2 +:1028F00031054CF42A3031056CF422503109223074 +:10290000310590F407C02C30310551F02F303105DE +:1029100039F00AC0803E10F0803F31F481E0089524 +:1029200093FB882780F9089580E00895CF93DF9383 +:1029300000D000D01F92CDB7DEB70F900F900F9050 +:102940000F900F90DF91CF910895CF93DF9300D038 +:1029500000D000D0CDB7DEB726960FB6F894DEBF14 +:102960000FBECDBFDF91CF9108951F93CF93DF931B +:10297000C091790116E080917A01C81799F0D0E0F2 +:102980001C9FF0011D9FF00D1124E558FE4F408162 +:10299000518162817381848195810E94A514219661 +:1029A000C770E9CFDF91CF911F9108954091AB019E +:1029B0005091AC016091AD017091AE018091AF0179 +:1029C0009091B0010C94A514CF938091B0018295A1 +:1029D0008F7009F05FC08091AD01882309F45AC05F +:1029E00020917901A0917A016091AB017091AC01C5 +:1029F0008091AE019091AF0131E06F3F09F030E07E +:102A0000B32FC6E02A1709F445C0009721F07F3F95 +:102A100021F44B2F03C041E001C040E030E040FD15 +:10