diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py b/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py new file mode 100644 index 000000000..7076a6ecb --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/compile_keymap.py @@ -0,0 +1,710 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +"""Compiler for keymap.c files + +This scrip will generate a keymap.c file from a simple +markdown file with a specific layout. + +Usage: + python compile_keymap.py INPUT_PATH [OUTPUT_PATH] +""" +from __future__ import division +from __future__ import print_function +from __future__ import absolute_import +from __future__ import unicode_literals + +import os +import io +import re +import sys +import json +import unicodedata +import collections +import itertools as it + +PY2 = sys.version_info.major == 2 + +if PY2: + chr = unichr + + +KEYBOARD_LAYOUTS = { + # These map positions in the parsed layout to + # positions in the KEYMAP MATRIX + 'ergodox_ez': [ + [ 0, 1, 2, 3, 4, 5, 6], [38, 39, 40, 41, 42, 43, 44], + [ 7, 8, 9, 10, 11, 12, 13], [45, 46, 47, 48, 49, 50, 51], + [14, 15, 16, 17, 18, 19 ], [ 52, 53, 54, 55, 56, 57], + [20, 21, 22, 23, 24, 25, 26], [58, 59, 60, 61, 62, 63, 64], + [27, 28, 29, 30, 31 ], [ 65, 66, 67, 68, 69], + [ 32, 33], [70, 71 ], + [ 34], [72 ], + [ 35, 36, 37], [73, 74, 75 ], + ] +} + +ROW_INDENTS = { + 'ergodox_ez': [0, 0, 0, 0, 0, 1, 0, 0, 0, 2, 5, 0, 6, 0, 4, 0] +} + +BLANK_LAYOUTS = [ +# Compact Layout +""" +.------------------------------------.------------------------------------. +| | | | | | | | | | | | | | | +!-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! +| | | | | | | | | | | | | | | +!-----+----+----+----x----x----! ! !----x----x----+----+----+-----! +| | | | | | |-----!-----! | | | | | | +!-----+----+----+----x----x----! ! !----x----x----+----+----+-----! +| | | | | | | | | | | | | | | +'-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' +""", + +# Wide Layout +""" +.---------------------------------------------. .---------------------------------------------. +| | | | | | | | ! | | | | | | | +!-------+-----+-----+-----+-----+-------------! !-------+-----+-----+-----+-----+-----+-------! +| | | | | | | | ! | | | | | | | +!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! +| | | | | | |-------! !-------! | | | | | | +!-------+-----+-----+-----x-----x-----! ! ! !-----x-----x-----+-----+-----+-------! +| | | | | | | | ! | | | | | | | +'-------+-----+-----+-----+-----+-------------' '-------------+-----+-----+-----+-----+-------' + | | | | | | ! | | | | | + '------------------------------' '------------------------------' + .---------------. .---------------. + | | | ! | | + .-------+-------+-------! !-------+-------+-------. + ! ! | | ! | ! ! + ! ! !-------! !-------! ! ! + | | | | ! | | | + '-----------------------' '-----------------------' +""", +] + + +DEFAULT_CONFIG = { + "keymaps_includes": [ + "keymap_common.h", + ], + 'filler': "-+.'!:x", + 'separator': "|", + 'default_key_prefix': ["KC_"], +} + + +SECTIONS = [ + 'layout_config', + 'layers', +] + + +# Markdown Parsing + +ONELINE_COMMENT_RE = re.compile(r""" + ^ # comment must be at the start of the line + \s* # arbitrary whitespace + // # start of the comment + (.*) # the comment + $ # until the end of line +""", re.MULTILINE | re.VERBOSE +) + +INLINE_COMMENT_RE = re.compile(r""" + ([\,\"\[\]\{\}\d]) # anythig that might end a expression + \s+ # comment must be preceded by whitespace + // # start of the comment + \s # and succeded by whitespace + (?:[^\"\]\}\{\[]*) # the comment (except things which might be json) + $ # until the end of line +""", re.MULTILINE | re.VERBOSE) + +TRAILING_COMMA_RE = re.compile(r""" + , # the comma + (?:\s*) # arbitrary whitespace + $ # only works if the trailing comma is followed by newline + (\s*) # arbitrary whitespace + ([\]\}]) # end of an array or object +""", re.MULTILINE | re.VERBOSE) + + +def loads(raw_data): + if isinstance(raw_data, bytes): + raw_data = raw_data.decode('utf-8') + + raw_data = ONELINE_COMMENT_RE.sub(r"", raw_data) + raw_data = INLINE_COMMENT_RE.sub(r"\1", raw_data) + raw_data = TRAILING_COMMA_RE.sub(r"\1\2", raw_data) + return json.loads(raw_data) + + +def parse_config(path): + def reset_section(): + section.update({ + 'name': section.get('name', ""), + 'sub_name': "", + 'start_line': -1, + 'end_line': -1, + 'code_lines': [], + }) + + def start_section(line_index, line): + end_section() + if line.startswith("# "): + name = line[2:] + elif line.startswith("## "): + name = line[3:] + else: + name = "" + + name = name.strip().replace(" ", "_").lower() + if name in SECTIONS: + section['name'] = name + else: + section['sub_name'] = name + section['start_line'] = line_index + + def end_section(): + if section['start_line'] >= 0: + if section['name'] == 'layout_config': + config.update(loads("\n".join( + section['code_lines'] + ))) + elif section['sub_name'].startswith('layer'): + layer_name = section['sub_name'] + config['layer_lines'][layer_name] = section['code_lines'] + + reset_section() + + def amend_section(line_index, line): + section['end_line'] = line_index + section['code_lines'].append(line) + + config = DEFAULT_CONFIG.copy() + config.update({ + 'layer_lines': collections.OrderedDict(), + 'macro_ids': {'UM'}, + 'unicode_macros': {}, + }) + + section = {} + reset_section() + + with io.open(path, encoding="utf-8") as fh: + for i, line in enumerate(fh): + if line.startswith("#"): + start_section(i, line) + elif line.startswith(" "): + amend_section(i, line[4:]) + else: + # TODO: maybe parse description + pass + + end_section() + assert 'layout' in config + return config + +# header file parsing + +IF0_RE = re.compile(r""" + ^ + #if 0 + $.*? + #endif +""", re.MULTILINE | re.DOTALL | re.VERBOSE) + + +COMMENT_RE = re.compile(r""" + /\* + .*? + \*/" +""", re.MULTILINE | re.DOTALL | re.VERBOSE) + + +def read_header_file(path): + with io.open(path, encoding="utf-8") as fh: + data = fh.read() + data, _ = COMMENT_RE.subn("", data) + data, _ = IF0_RE.subn("", data) + return data + + +def regex_partial(re_str_fmt, flags): + def partial(*args, **kwargs): + re_str = re_str_fmt.format(*args, **kwargs) + return re.compile(re_str, flags) + return partial + + +KEYDEF_REP = regex_partial(r""" + #define + \s + ( + (?:{}) # the prefixes + (?:\w+) # the key name + ) # capture group end +""", re.MULTILINE | re.DOTALL | re.VERBOSE) + + +ENUM_RE = re.compile(r""" + ( + enum + \s\w+\s + \{ + .*? # the enum content + \} + ; + ) # capture group end +""", re.MULTILINE | re.DOTALL | re.VERBOSE) + + +ENUM_KEY_REP = regex_partial(r""" + ( + {} # the prefixes + \w+ # the key name + ) # capture group end +""", re.MULTILINE | re.DOTALL | re.VERBOSE) + + +def parse_keydefs(config, data): + prefix_options = "|".join(config['key_prefixes']) + keydef_re = KEYDEF_REP(prefix_options) + enum_key_re = ENUM_KEY_REP(prefix_options) + for match in keydef_re.finditer(data): + yield match.groups()[0] + + for enum_match in ENUM_RE.finditer(data): + enum = enum_match.groups()[0] + for key_match in enum_key_re.finditer(enum): + yield key_match.groups()[0] + + +def parse_valid_keys(config, out_path): + basepath = os.path.abspath(os.path.join(os.path.dirname(out_path))) + dirpaths = [] + subpaths = [] + while len(subpaths) < 6: + path = os.path.join(basepath, *subpaths) + dirpaths.append(path) + dirpaths.append(os.path.join(path, "tmk_core", "common")) + dirpaths.append(os.path.join(path, "quantum")) + subpaths.append('..') + + includes = set(config['keymaps_includes']) + includes.add("keycode.h") + + valid_keycodes = set() + for dirpath, include in it.product(dirpaths, includes): + include_path = os.path.join(dirpath, include) + if os.path.exists(include_path): + header_data = read_header_file(include_path) + valid_keycodes.update( + parse_keydefs(config, header_data) + ) + return valid_keycodes + + +# Keymap Parsing + +def iter_raw_codes(layer_lines, filler, separator): + filler_re = re.compile("[" + filler + " ]") + for line in layer_lines: + line, _ = filler_re.subn("", line.strip()) + if not line: + continue + codes = line.split(separator) + for code in codes[1:-1]: + yield code + + +def iter_indexed_codes(raw_codes, key_indexes): + key_rows = {} + key_indexes_flat = [] + + for row_index, key_indexes in enumerate(key_indexes): + for key_index in key_indexes: + key_rows[key_index] = row_index + key_indexes_flat.extend(key_indexes) + assert len(raw_codes) == len(key_indexes_flat) + for raw_code, key_index in zip(raw_codes, key_indexes_flat): + # we keep track of the row mostly for layout purposes + yield raw_code, key_index, key_rows[key_index] + + +LAYER_CHANGE_RE = re.compile(r""" + (DF|TG|MO)\(\d+\) +""", re.VERBOSE) + + +MACRO_RE = re.compile(r""" + M\(\w+\) +""", re.VERBOSE) + + +UNICODE_RE = re.compile(r""" + U[0-9A-F]{4} +""", re.VERBOSE) + + +NON_CODE = re.compile(r""" + ^[^A-Z0-9_]$ +""", re.VERBOSE) + + +def parse_uni_code(raw_code): + macro_id = "UC_" + ( + unicodedata.name(raw_code) + .replace(" ", "_") + .replace("-", "_") + ) + code = "M({})".format(macro_id) + uc_hex = "{:04X}".format(ord(raw_code)) + return code, macro_id, uc_hex + + +def parse_key_code(raw_code, key_prefixes, valid_keycodes): + if raw_code in valid_keycodes: + return raw_code + + for prefix in key_prefixes: + code = prefix + raw_code + if code in valid_keycodes: + return code + + +def parse_code(raw_code, key_prefixes, valid_keycodes): + if not raw_code: + return 'KC_TRNS', None, None + + if LAYER_CHANGE_RE.match(raw_code): + return raw_code, None, None + + if MACRO_RE.match(raw_code): + macro_id = raw_code[2:-1] + return raw_code, macro_id, None + + if UNICODE_RE.match(raw_code): + hex_code = raw_code[1:] + return parse_uni_code(chr(int(hex_code, 16))) + + if NON_CODE.match(raw_code): + return parse_uni_code(raw_code) + + code = parse_key_code(raw_code, key_prefixes, valid_keycodes) + return code, None, None + + +def parse_keymap(config, key_indexes, layer_lines, valid_keycodes): + keymap = {} + raw_codes = list(iter_raw_codes( + layer_lines, config['filler'], config['separator'] + )) + indexed_codes = iter_indexed_codes(raw_codes, key_indexes) + key_prefixes = config['key_prefixes'] + for raw_code, key_index, row_index in indexed_codes: + code, macro_id, uc_hex = parse_code( + raw_code, key_prefixes, valid_keycodes + ) + # TODO: line numbers for invalid codes + err_msg = "Could not parse key '{}' on row {}".format( + raw_code, row_index + ) + assert code is not None, err_msg + # print(repr(raw_code), repr(code), macro_id, uc_hex) + if macro_id: + config['macro_ids'].add(macro_id) + if uc_hex: + config['unicode_macros'][macro_id] = uc_hex + keymap[key_index] = (code, row_index) + return keymap + + +def parse_keymaps(config, valid_keycodes): + keymaps = collections.OrderedDict() + key_indexes = config.get( + 'key_indexes', KEYBOARD_LAYOUTS[config['layout']] + ) + # TODO: maybe validate key_indexes + + for layer_name, layer_lines, in config['layer_lines'].items(): + keymaps[layer_name] = parse_keymap( + config, key_indexes, layer_lines, valid_keycodes + ) + return keymaps + +# keymap.c output + +USERCODE = """ +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case L1: + ergodox_right_led_1_on(); + break; + case L2: + ergodox_right_led_2_on(); + break; + case L3: + ergodox_right_led_3_on(); + break; + case L4: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + break; + case L5: + ergodox_right_led_1_on(); + ergodox_right_led_3_on(); + break; + // case L6: + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + // case L7: + // ergodox_right_led_1_on(); + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + default: + ergodox_board_led_off(); + break; + } +}; +""" + +MACROCODE = """ +#define UC_MODE_WIN 0 +#define UC_MODE_LINUX 1 +#define UC_MODE_OSX 2 + +// TODO: allow default mode to be configured +static uint16_t unicode_mode = UC_MODE_WIN; + +uint16_t hextokeycode(uint8_t hex) {{ + if (hex == 0x0) {{ + return KC_P0; + }} + if (hex < 0xA) {{ + return KC_P1 + (hex - 0x1); + }} + return KC_A + (hex - 0xA); +}} + +void unicode_action_function(uint16_t hi, uint16_t lo) {{ + switch (unicode_mode) {{ + case UC_MODE_WIN: + register_code(KC_LALT); + + register_code(KC_PPLS); + unregister_code(KC_PPLS); + + register_code(hextokeycode((hi & 0xF0) >> 4)); + unregister_code(hextokeycode((hi & 0xF0) >> 4)); + register_code(hextokeycode((hi & 0x0F))); + unregister_code(hextokeycode((hi & 0x0F))); + register_code(hextokeycode((lo & 0xF0) >> 4)); + unregister_code(hextokeycode((lo & 0xF0) >> 4)); + register_code(hextokeycode((lo & 0x0F))); + unregister_code(hextokeycode((lo & 0x0F))); + + unregister_code(KC_LALT); + break; + case UC_MODE_LINUX: + register_code(KC_LCTL); + register_code(KC_LSFT); + + register_code(KC_U); + unregister_code(KC_U); + + register_code(hextokeycode((hi & 0xF0) >> 4)); + unregister_code(hextokeycode((hi & 0xF0) >> 4)); + register_code(hextokeycode((hi & 0x0F))); + unregister_code(hextokeycode((hi & 0x0F))); + register_code(hextokeycode((lo & 0xF0) >> 4)); + unregister_code(hextokeycode((lo & 0xF0) >> 4)); + register_code(hextokeycode((lo & 0x0F))); + unregister_code(hextokeycode((lo & 0x0F))); + + unregister_code(KC_LCTL); + unregister_code(KC_LSFT); + break; + case UC_MODE_OSX: + break; + }} +}} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) {{ + if (!record->event.pressed) {{ + return MACRO_NONE; + }} + // MACRODOWN only works in this function + switch(id) {{ + case UM: + unicode_mode = (unicode_mode + 1) % 2; + break; +{macro_cases} +{unicode_macro_cases} + default: + break; + }} + return MACRO_NONE; +}}; +""" + + +UNICODE_MACRO_TEMPLATE = """ +case {macro_id}: + unicode_action_function(0x{hi:02x}, 0x{lo:02x}); + break; +""".strip() + + +def unicode_macro_cases(config): + for macro_id, uc_hex in config['unicode_macros'].items(): + hi = int(uc_hex, 16) >> 8 + lo = int(uc_hex, 16) & 0xFF + unimacro_keys = ", ".join( + "T({})".format( + "KP_" + digit if digit.isdigit() else digit + ) for digit in uc_hex + ) + yield UNICODE_MACRO_TEMPLATE.format( + macro_id=macro_id, hi=hi, lo=lo + ) + + +def iter_keymap_lines(keymap, row_indents=None): + col_widths = {} + col = 0 + # first pass, figure out the column widths + prev_row_index = None + for code, row_index in keymap.values(): + if row_index != prev_row_index: + col = 0 + if row_indents: + col = row_indents[row_index] + col_widths[col] = max(len(code), col_widths.get(col, 0)) + prev_row_index = row_index + col += 1 + + # second pass, yield the cell values + col = 0 + prev_row_index = None + for key_index in sorted(keymap): + code, row_index = keymap[key_index] + if row_index != prev_row_index: + col = 0 + yield "\n" + if row_indents: + for indent_col in range(row_indents[row_index]): + pad = " " * (col_widths[indent_col] - 4) + yield (" /*-*/" + pad) + col = row_indents[row_index] + else: + yield pad + yield " {}".format(code) + if key_index < len(keymap) - 1: + yield "," + # This will be yielded on the next iteration when + # we know that we're not at the end of a line. + pad = " " * (col_widths[col] - len(code)) + prev_row_index = row_index + col += 1 + + +def iter_keymap_parts(config, keymaps): + # includes + for include_path in config['keymaps_includes']: + yield '#include "{}"\n'.format(include_path) + + yield "\n" + + # definitions + for i, macro_id in enumerate(sorted(config['macro_ids'])): + yield "#define {} {}\n".format(macro_id, i) + + yield "\n" + + for i, layer_name in enumerate(config['layer_lines']): + yield '#define L{0:<3} {0:<5} // {1}\n'.format(i, layer_name) + + yield "\n" + + # keymaps + yield "const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n" + + for i, layer_name in enumerate(config['layer_lines']): + # comment + layer_lines = config['layer_lines'][layer_name] + prefixed_lines = " * " + " * ".join(layer_lines) + yield "/*\n{} */\n".format(prefixed_lines) + + # keymap codes + keymap = keymaps[layer_name] + row_indents = ROW_INDENTS.get(config['layout']) + keymap_lines = "".join(iter_keymap_lines(keymap, row_indents)) + yield "[L{0}] = KEYMAP({1}\n),\n".format(i, keymap_lines) + + yield "};\n\n" + + # no idea what this is for + yield "const uint16_t PROGMEM fn_actions[] = {};\n" + + # macros + yield MACROCODE.format( + macro_cases="", + unicode_macro_cases="\n".join(unicode_macro_cases(config)), + ) + + # TODO: dynamically create blinking lights + yield USERCODE + + +def main(argv=sys.argv[1:]): + if not argv or '-h' in argv or '--help' in argv: + print(__doc__) + return 0 + + in_path = os.path.abspath(argv[0]) + if not os.path.exists(in_path): + print("No such file '{}'".format(in_path)) + return 1 + + if len(argv) > 1: + out_path = os.path.abspath(argv[1]) + else: + dirname = os.path.dirname(in_path) + out_path = os.path.join(dirname, "keymap.c") + + config = parse_config(in_path) + valid_keys = parse_valid_keys(config, out_path) + keymaps = parse_keymaps(config, valid_keys) + + with io.open(out_path, mode="w", encoding="utf-8") as fh: + for part in iter_keymap_parts(config, keymaps): + fh.write(part) + + +if __name__ == '__main__': + sys.exit(main()) diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/german-manuneo.hex b/keyboard/ergodox_ez/keymaps/german-manuneo/german-manuneo.hex new file mode 100644 index 000000000..ee1d30967 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/german-manuneo.hex @@ -0,0 +1,1240 @@ +:100000000C9412040C9456040C9456040C9456044C +:100010000C9456040C9456040C9456040C945604F8 +:100020000C9456040C9456040C944F0F0C9421100D +:100030000C9456040C9456040C9456040C945604D8 +:100040000C9456040C94D6240C9456040C94560428 +:100050000C9456040C94751E0C9456040C9456047F +:100060000C9456040C9456040C9456040C945604A8 +:100070000C9456040C9456040C9456040C94560498 +:100080000C9456040C9456040C9456040C94560488 +:100090000C9456040C9456040C9456040C94560478 +:1000A0000C9456040C9456040C945604A305700545 +:1000B0005B05B505DC050F06F105F7050C063A06EC +:1000C0002F06FA0532064605EB0523062C066D05BC +:1000D0006405B205A905910567052605BE05140648 +:1000E0001D0629069705C705A60540051A06E5055C +:1000F00088059D0594057C0520068B053105E805DE +:100100008205C1052005AC055E054C057605730525 +:10011000CA059A05060637058505AF052305B80506 +:1001200003060906D3055505EE0543056A054F0587 +:10013000C405F40535062905A005BB05FD05CD055B +:1001400052052606E2053D058E055805D9056105CF +:1001500000063A05D005DF052C0549053F061706C0 +:1001600079053405D6057F0514058610A81093116E +:10017000A8109311EA100D119311621175116E14EC +:100180006E149C149C14DE141A151A171A173215C3 +:100190001A1729162916F4161A171A1708170552CE +:1001A000045201520352010000001E001B001800FF +:1001B0002F00010029001F0013000C003300E30092 +:1001C000E1002000090004003400E2002A002100C0 +:1001D0001A0008000600E000650022000A00120074 +:1001E0001900000049002E004A0000004D000000E8 +:1001F00002542E02025400002B0000005E30230047 +:100200000B001600050000004C0024000D0011003A +:100210001000E4004B0025000E0015003600E6003B +:100220002C0026000F001700370050002800270080 +:1002300014000700520051004E0035001C002D0034 +:100240001D004F000000010001000100010001003D +:1002500000001E02300238020100010001001F02EE +:10026000641438003000010001002002240223023F +:1002700027020100010001002414251401000100DF +:1002800001000100271426140100000001000100F4 +:100290000100000001000000010001000100000059 +:1002A0000100000001000100310021022D140000B6 +:1002B000010001006400250222020100010001008A +:1002C0006402260236020100010001000100301420 +:1002D00037023830010035021F023102553002303A +:1002E0000100010001002D0201003D30000001006D +:1002F000010001000100010000003A0001000100BE +:100300000100010001003B000100010001000100AB +:1003100001003C00010001000100010001003D005E +:10032000010001000100010001003E000100010088 +:100330000100000001004400010000000100000075 +:1003400001004500010000005300000001003F00D3 +:100350000100010001000000010040005F005C009E +:10036000590062000100410060005D005A008500F4 +:100370000100420061005E005B0063000100430079 +:100380005500560057005800010067005400560001 +:1003900057005800000001000100010001000100A9 +:1003A00000004D30393001005B3001000100513058 +:1003B00058303C303B300100010050300130141403 +:1003C0005D30010001004A30593008145C300100F2 +:1003D0000100493057300430003000000100053082 +:1003E0000100000001000000010001000100000008 +:1003F0000100000001004F305A3037301E0200006B +:1004000001004E3001004B30010001000100483076 +:10041000563054305330010001004C30010003309D +:100420003A300100010052300100010001000100DA +:1004300001000100010001000100010000000100B5 +:100440000100010001000100000042302030343082 +:1004500001000100010046302E302630333001000B +:10046000010045302D301E300100010001004030F8 +:100470002B3022300100010001003F3025302C30AC +:100480000100000001000100010000000100000067 +:1004900001000100010000000100000001004430E3 +:1004A000233031301F3000000100433035302A3016 +:1004B0002930010001003E302730303001000100BA +:1004C0000100413028303230010001000100473086 +:1004D000010021300100010001000100363024300C +:1004E0002F300100000001000100010001000100A7 +:1004F0000000010008301B30010001000100010074 +:1005000015300D301A3001000100010014300630A2 +:10051000010001000100010012300A300100010059 +:10052000010001000C301330010000000100010047 +:1005300001000000010000000100010001000000B6 +:1005400001000000010001000B30183007300000EE +:10055000010001001C3011301030010001000100C9 +:100560000E30173001000100010001000F3019307A +:10057000010001000100010001000930010001003B +:10058000010001001D3001001630010000000100D3 +:100590000100010001000100000001000100010054 +:1005A0000100010001000100010001000100010043 +:1005B0000100010001000100010001000100010033 +:1005C0000100010001000100010001000100010023 +:1005D0000100000001000100010000000100000016 +:1005E0000100010001000000010000000100010005 +:1005F00001000100010000000100010001000100F4 +:1006000001000100010001000100010001000100E2 +:1006100001000100010001000100010001000100D2 +:1006200001000100010001000100010001000100C2 +:1006300001000100000016034500720067006F0012 +:1006400044006F007800200045005A0000001603A7 +:100650004500720067006F0044006F0078002000C2 +:1006600045005A0000000403090409026D0004015A +:1006700000A0FA0904000001030101000921110191 +:100680000001223F000705810308000A0904010058 +:100690000103010200092111010001224D0007059B +:1006A000820308000A090402000103000000092176 +:1006B000110100012236000705830308000A09041E +:1006C000030001030000000921110100012239008B +:1006D000070584031000011201100100000008ED5D +:1006E000FE071301000102000105010906A1010531 +:1006F0000719E029E7150025019508750181020514 +:100700000819012905950575019102950175039157 +:1007100001050719002977150025019578750181D4 +:1007200002C005010980A101850216010026B7005B +:100730001A01002AB700751095018100C0050C0947 +:1007400001A1018503160100269C021A01002A9CC2 +:1007500002751095018100C005010902A10109017E +:10076000A100050919012905150025019505750147 +:100770008102950175038101050109300931158157 +:10078000257F95027508810609381581257F950119 +:1007900075088106050C0A38021581257F950175BB +:1007A000088106C0C005010906A101050719E02955 +:1007B000E7150025019508750181029501750881ED +:1007C0000105081901290595057501910295017525 +:1007D0000391010507190029FF150025FF950675EE +:1007E000088100C0000000000000000000000001BF +:1007F0000204060A0F17202C3A4A5D71879DB3C781 +:10080000DAE9F5FCFFFCF5E9DAC7B39D87715D4ACB +:100810003A2C20170F0A0604020100000000000015 +:100820000000000011241FBECFEFDAE0DEBFCDBF15 +:1008300004B603FE24C08091F1019091F201A091D1 +:10084000F301B091F4018730904BA740B04BB9F45D +:100850001092F1011092F2011092F3011092F40142 +:1008600014BE84B7877F84BF88E10FB6F894809365 +:100870006000109260000FBEE0E0FFE3099511E018 +:10088000A0E0B1E0E0E3FDE402C005900D92A433E6 +:10089000B107D9F711E0A4E3B1E001C01D92A13F77 +:1008A000B107E1F70E94950C0C9496260C94000079 +:1008B000282F882341F090E02A3018F4885A9F4F5F +:1008C00008950697089582E690E008950F931F9388 +:1008D000CF93DF938C01EB0180913401909135012E +:1008E000009709F448C0019709F089C080EE0E9482 +:1008F000F71281EE0E94F71288E10E94F71288E158 +:100900000E94BF13C801807F992724E096958795A0 +:100910002A95E1F70E945804182F0E94F712812FA0 +:100920000E94BF13802F8F700E945804182F0E94BE +:10093000F712812F0E94BF13CE01807F992734E0E8 +:10094000969587953A95E1F70E945804D82F0E9412 +:10095000F7128D2F0E94BF138C2F8F700E945804A6 +:10096000C82F0E94F7128C2F0E94BF1380EE0E94A6 +:10097000BF1381EE3EC082EE0E94F71287E50E940F +:10098000F71287E50E94BF13C801807F992744E0D2 +:10099000969587954A95E1F70E945804182F0E9472 +:1009A000F712812F0E94BF13802F8F700E9458046E +:1009B000182F0E94F712812F0E94BF13CE01807F53 +:1009C000992754E0969587955A95E1F70E94580427 +:1009D000D82F0E94F7128D2F0E94BF138C2F8F707B +:1009E0000E945804C82F0E94F7128C2F0E94BF1338 +:1009F00082EEDF91CF911F910F910C94BF13DF9185 +:100A0000CF911F910F910895FC018281882309F4F1 +:100A10003CC1862F90E08F35910508F036C1FC016E +:100A2000EA5AFF4F0C944B26809134019091350186 +:100A3000019681709927909335018093340125C1E7 +:100A40006FEB70E019C160E970E008C061EA70E026 +:100A500013C163E870E00BC16BE570E081E290E0E8 +:100A600012C16BEB70E008C163E570E0F7CF6EEB8D +:100A700070E002C164E070E0D4C069EB70E001C1D5 +:100A800062EB70E0F9C065E870E0F1C069E970E020 +:100A9000F3C065E570E0E2CF68EC70E0EDC069E8B6 +:100AA00070E0E5C064E770E0E2C062E970E0D6CFD4 +:100AB00066E770E0DCC063E970E0D0CF60EC70E026 +:100AC000DBC062EB70E0DDC069EA70E0D5C068EAC7 +:100AD00070E0D2C064E870E0CAC06DE970E0CCC0DC +:100AE00067EF70E0CEC063EC70E0C6C061EC70E010 +:100AF000C3C069E570E0B2CF63EB70E0BDC064E5F0 +:100B000070E0ACCF6DEB70E0B7C066EB70E0B4C0E6 +:100B100065EB70E0B1C06AEB70E0AEC067E770E013 +:100B2000A6C060EA70E0A8C062EC70E0A5C06EE903 +:100B300070E0A2C068EB70E09FC067EB70E09CC003 +:100B400062E870E094C063E470E06BC061EB70E059 +:100B500093C066EA70E090C066EC70E08DC06EE114 +:100B600070E05FC06FE970E087C068E070E059C076 +:100B700067ED70E086C060E870E079C063EA70E01D +:100B80007BC069EC70E078C061E870E070C066E935 +:100B900070E072C064EC70E06FC065E770E067C041 +:100BA00063E070E03EC061EB70E06BC06EEB70E044 +:100BB00068C063EB70E065C065E070E032C061E979 +:100BC00070E04CCF69E770E052C064EB70E054C055 +:100BD0006CEB70E051C06AE970E04EC068E870E00C +:100BE00046C061E970E048C067E870E040C062E973 +:100BF00070E042C067E970E03FC068E770E037C06E +:100C000060E770E034C069E070E00BC065EC70E054 +:100C100033C060E670E005C067EA70E02DC060E0B8 +:100C200070E082E290E02FC064EA70E025C06CEBD7 +:100C300070E027C067EC70E01FC068E970E01CC07E +:100C400069EB70E019C06BE970E016C06FE770E007 +:100C50000EC065EA70E010C06CE970E00DC065E997 +:100C600070E00AC063E970E007C066E870E080E207 +:100C700090E009C064E970E083E090E004C06DEBAF +:100C800070E080E090E00E94660480E090E00895CB +:100C900008956091B3017091B4018091B501909174 +:100CA000B6010E94A11D56985E9825982D98269809 +:100CB0002E9827982F988330A9F028F4813051F08E +:100CC000823069F012C0843041F0853071F4259A89 +:100CD0002D9A08C0259A2D9A0895259A2D9A269A1C +:100CE0002E9A0895279A2F9A089556985E980895F7 +:100CF0000C94490656985E9825982D9826982E981B +:100D000027982F988FEF90E0909389008093880028 +:100D100090938B0080938A0090938D0080938C0039 +:100D2000259A2D9A2FEF80E792E021508040904045 +:100D3000E1F700C00000269A2E9A2FEF80E792E09C +:100D4000215080409040E1F700C00000279A2F9A80 +:100D50002FEF80E792E0215080409040E1F700C003 +:100D6000000025982D982FEF80E792E021508040D9 +:100D70009040E1F700C0000026982E982FEF80E702 +:100D800092E0215080409040E1F700C00000279899 +:100D90002F9856985E9825982D9826982E982798E3 +:100DA0002F98089589EA8093800089E080938100DC +:100DB00024982C983F988AB18F748AB96E98479A74 +:100DC0008BB1806B8BB9769A0E947A060C94480698 +:100DD00080E2809300018091360181110EC00E9453 +:100DE000370781E0809336012FEF83ED90E32150A8 +:100DF00080409040E1F700C0000080E40E943D0781 +:100E00008093000181112EC00E946707809300012A +:100E1000811128C00E94670780930001811122C0C0 +:100E20008FE30E9467078093000181111BC00E941D +:100E30005F0780E40E943D0780930001811112C08A +:100E40008CE00E9467078093000181110BC00E9413 +:100E5000670780930001811105C08FE30E94670737 +:100E6000809300010E945F07809100010895109215 +:100E7000B9008AE08093B800089594EA9093BC008A +:100E80009091BC0097FFFCCF9091B900987F98306B +:100E900021F0903111F081E008958093BB0084E847 +:100EA0008093BC008091BC0087FFFCCF8091B9008B +:100EB000887F883111F0803471F780E0089584E9EB +:100EC0008093BC008091BC0084FDFCCF089580938A +:100ED000BB0084E88093BC008091BC0087FFFCCFFE +:100EE0009091B900987F81E0983209F480E00895EC +:100EF00084E88093BC008091BC0087FFFCCF809188 +:100F0000BB00089580910001811115C080E40E940A +:100F10003D078093000181110CC082E10E946707A8 +:100F200080930001811105C08FEF0E9467078093B5 +:100F300000010E945F0784B1807F84B985B1807F02 +:100F400085B98AB1837F8AB98BB1837F8BB93E988B +:100F5000469808950E94E806809300010E94820747 +:100F600080B38C7080BB81B3836F81BBE6E4F1E01A +:100F7000A8E3B1E011921D9281E0E435F807D1F7C2 +:100F80000C94D206BF92CF92DF92EF92FF920F9312 +:100F90001F93CF93DF9380910001882379F0809194 +:100FA00037018F5F80933701811108C00E94E806E6 +:100FB00080930001811102C00E947A0608E311E0CB +:100FC000C0E0D0E0DD24D39482E0C82EEE24E39488 +:100FD000F12CC73000F580910001811162C080E4DE +:100FE0000E943D0780930001811112C082E10E949E +:100FF00067078093000181110BC0C7010C2E01C04F +:10100000880F0A94EAF780950E9467078093000191 +:101010000E945F0746C0CA30A1F028F4C83059F0DA +:10102000C93061F005C0CC3089F070F0CD3089F066 +:10103000209A289810C0219A29980DC0229A2A989F +:101040000AC0239A2B9807C0529A01C0539A5B9802 +:1010500002C03E9A4698E0EAEA95F1F78FB1799995 +:101060005AC092E081708D25892B7C9B02C090E054 +:1010700001C094E0892B7D9B02C090E001C098E004 +:10108000892B7E9B02C090E001C090E1892B9FB12B +:101090009095991F9927991F9295990F907E892B6A +:1010A0000FC08091000181114BC080E40E943D0778 +:1010B00080930001882389F1B12C0E945F078B2D5A +:1010C000F8019081981719F08083C09201010E9465 +:1010D000820721960F5F1F4FCE30D10509F079CFDF +:1010E00080910101882371F181508093010188234F +:1010F00039F08FE99FE00197F1F700C0000022C0AE +:10110000A6E4B1E0E8E3F1E081918D9391E0E6346B +:10111000F907D1F717C090E0A5CF83E10E946707D8 +:10112000809300018111C8CF81E40E943D07809324 +:1011300000018111C1CF0E947807B82EB094BDCFB5 +:1011400080E0BECF0E94780681E0DF91CF911F91B1 +:101150000F91FF90EF90DF90CF90BF900895E82F10 +:10116000F0E0EA5BFE4F8081089508958B3B910586 +:1011700078F4883A910540F5853A9105D0F48430A9 +:10118000910508F0B1C08130910509F4ADC06BC084 +:10119000803E910508F467C0883E910508F4A4C01C +:1011A0009C01205F31092031310508F05CC0906559 +:1011B0000895853A910509F459C0863A910509F4D4 +:1011C00058C083E890E40895883A910509F454C022 +:1011D000893A910509F453C08A3A910509F452C03D +:1011E0008B3A910509F451C08C3A910509F450C02D +:1011F0008D3A910509F44FC0803B910509F44EC02A +:101200008E3A910509F44DC08F3A910509F44CC00E +:10121000813B910509F44BC0823B910509F44AC01A +:10122000833B910509F449C0843B910509F448C00A +:10123000853B910509F447C0863B910509F446C0FA +:10124000873B910509F445C0883B910509F444C0EA +:10125000893B910509F443C08A3B910509F042C0DE +:101260008AE296E4089580E090E0089581E890E4B1 +:10127000089582E890E4089582EE94E4089589EE5A +:1012800094E408958AEE94E4089585EB94E4089537 +:1012900086EB94E4089587EB94E408958CEC94E451 +:1012A00008958DEC94E4089583E895E408958AE820 +:1012B00095E4089582E995E4089584E995E4089514 +:1012C00081E296E4089583E296E4089584E296E448 +:1012D000089585E296E4089586E296E4089587E20B +:1012E00096E4089580E094E40895089596E0799F47 +:1012F000F001112494E5899FE00DF11D1124E60F02 +:10130000F11DEE0FFF1FE256FE4F85919491089557 +:10131000880F991F825E9F4FFC01859194910895DB +:10132000880F991F82569E4FFC01859194910895D4 +:1013300026E0729FF001112444E5849FE00DF11D29 +:101340001124E60FF11DEE0FFF1FE256FE4F25910F +:101350003491C9019A9581159F4110F4C9010895EE +:10136000C90190528115904128F4C9019F700E94D3 +:1013700090090895C90190538115904120F4C90145 +:101380009927906C0895211580E5380769F40E942B +:101390003D179FEF24E34CE0915020404040E1F79F +:1013A00000C000000C949A1E213080E5380731F40B +:1013B0008091CF0181608093CF010895C90190553C +:1013C0008115904108F050C0832F99278F7099277D +:1013D00081309105D9F4A9014370552702C0880FC7 +:1013E000991F4A95E2F79C68A90164E0440F551FD4 +:1013F0006A95E1F744275370842B952B73E0220FF5 +:10140000331F7A95E1F7207633271DC0823091058E +:1014100029F4922F8827816F906A0895833091056F +:10142000A9F4A9014370552781E090E002C0880F1C +:10143000991F4A95E2F79C6843E0220F331F4A95B3 +:10144000E1F7207E3770822B932B08950497F1F4F7 +:10145000A9014370552781E090E002C0880F991FD1 +:101460004A95E2F79A68E8CFC901905781159041F3 +:1014700020F4C9019F7090620895C90190588115A8 +:10148000904120F4C9019F70906A0895203E310573 +:10149000E0F4203C310558F52133310509F470C0E2 +:1014A00048F42932310509F464C02A32310509F4BF +:1014B0006EC074C029333105F1F022383105D9F0FE +:1014C0002533310509F44EC069C0233E310589F149 +:1014D00038F4203E3105C1F0223E3105E1F05EC016 +:1014E000263E310569F1273E3105A9F157C0C901F2 +:1014F0000E94880908958091E20180FD02C081FF69 +:101500004DC080EE90E04BC08091E20180FFF9CFAA +:1015100089E390E044C08091E20182FF0EC0809197 +:10152000E20184FF03C080E090E039C083EE90E0E8 +:1015300036C08091E20182FFF2CF82EE90E02FC0B0 +:101540008091E20183FF0BC08091E20184FDEBCF2B +:1015500087EE90E024C08091E20183FFF5CF86EE14 +:1015600090E01DC08091E20185FF07C089E290E014 +:1015700016C08091E20185FFF9CF85E390E00FC0AE +:101580008091E20186FF07C08AE290E008C0809166 +:10159000E20186FFF9CF81E390E001C0C9010E941A +:1015A000B608089508950C94D20A809164010895B4 +:1015B000CF93DF9300D01F92CDB7DEB72091E80123 +:1015C000243019F523E029839B838A832093E90043 +:1015D0008FEF9091E800815095FD06C095ED9A95AA +:1015E000F1F700008111F5CF8091E80085FF0DC073 +:1015F00040E050E063E070E0CE0101960E94420DB1 +:101600008091E8008E778093E8000F900F900F9004 +:10161000DF91CF910895CF93DF9300D01F92CDB784 +:10162000DEB72091E801243021F522E029839B8355 +:101630008A8383E08093E9008FEF9091E8008150E6 +:1016400095FD06C095ED9A95F1F700008111F5CF53 +:101650008091E80085FF0DC040E050E063E070E05D +:10166000CE0101960E94420D8091E8008E77809312 +:10167000E8000F900F900F90DF91CF910895209187 +:10168000E8012430F1F422E02093E9002FEF3091BB +:10169000E800215035FD06C035ED3A95F1F7000020 +:1016A0002111F5CF2091E80025FF0BC040E050E06C +:1016B00065E070E00E94420D8091E8008E77809393 +:1016C000E8000895CF93DF93EC018091E801843026 +:1016D00009F046C090910C019923D9F090910D0129 +:1016E0009923B9F08093E9008FEF9091E800815041 +:1016F00095FD06C095E19A95F1F700008111F5CFAF +:101700008091E80085FF2CC040E050E060E170E08F +:1017100017C081E08093E9008FEF9091E80081503D +:1017200095FD06C095ED9A95F1F700008111F5CF72 +:101730008091E80085FF14C040E050E068E070E070 +:10174000CE010E94420D8091E8008E778093E800E0 +:1017500080E1FE01A4E5B1E001900D928A95E1F7E8 +:10176000DF91CF9108958091E701811109C00E9416 +:10177000D40E0E94310F8091E20084608093E200D9 +:1017800008951092E701089508950C94C3240E94CF +:10179000311E0E94C9240E94CE110C94D30A42E04B +:1017A00061EC81E00E944E0E42E061EC82E00E941A +:1017B0004E0E42E061EC83E00E944E0E42E161EC8D +:1017C00084E00C944E0E8091EA01833009F455C0F8 +:1017D00030F4813071F0823009F48EC008958A307F +:1017E00009F47AC08B3009F460C0893009F09CC0DC +:1017F00020C08091E901813A09F096C08091E8000B +:10180000877F8093E8008091ED019091EE01892B14 +:1018100021F060E080E090E003C060E184E591E0C9 +:1018200070E00E948B0D8091E8008B778093E80038 +:1018300008958091E901813209F076C08091ED012F +:101840009091EE01009719F0039709F06DC0809117 +:10185000E800877F8093E8008091E80082FD05C062 +:101860008091E8018111F8CF5FC08091F1008093F1 +:1018700064018091E8008B7753C08091E901813A3F +:1018800009F052C08091ED019091EE01892B09F091 +:101890004BC08091E800877F8093E8008091E8004A +:1018A00080FFFCCF80910C0136C08091E90181322C +:1018B000D9F58091ED019091EE01892BA9F58091E8 +:1018C000E800877F8093E8000E94830E8091EB01FF +:1018D00080930C010C943D178091E901813221F530 +:1018E0008091E800877F8093E8000E94830E8091BA +:1018F000EC018093650108958091E901813AA1F49A +:101900008091E800877F8093E8008091E80080FF65 +:10191000FCCF809165018093F1008091E8008E7783 +:101920008093E8000C94830E089584B7877F84BF6A +:1019300088E10FB6F89480936000109260000FBEAB +:1019400090E080E80FB6F894809361009093610076 +:101950000FBE0E941D120E94D40E0E94310F809172 +:10196000E20084608093E20078940E94AC110E94AF +:101970001F1282E091E00E94C9110E94B12480915F +:10198000E801853069F40E94F41D8091E601882306 +:10199000B1F30E941C1E882391F30E942C0DEFCFFF +:1019A0000E942512ECCF292F332723303105A9F0CF +:1019B0006CF42130310509F442C02230310509F0C0 +:1019C00043C08DE690E02AE636E042C02132310580 +:1019D000C9F02232310519F137C0992781309105BC +:1019E00041F08230910541F0892B71F5E6E6F6E091 +:1019F00005C0EEE4F6E002C0E6E3F6E0849190E094 +:101A00009F0126C0643000F5E62FF0E0EE0FFF1FC7 +:101A1000EE5DFE4F2081318189E090E019C0643095 +:101A200098F4E62FF0E0DF01AA0FBB1FA65EBE4FC1 +:101A30002D913C91EA5EFE4F808190E009C082E1E9 +:101A400090E027ED36E004C080E090E020E030E058 +:101A5000FA0131832083089580E189BD82E189BD47 +:101A600009B400FEFDCF8091D8008F7D8093D8000F +:101A70008091E00082608093E0008091E00081FD31 +:101A8000FCCF0895CF92DF92EF92FF920F931F93B6 +:101A9000CF93DF937C018B01EA010E94A40E811198 +:101AA00031C0209731F088819981081B190BE80E0D +:101AB000F91EC12CD12C0115110519F18091E800F6 +:101AC00085FD14C08091E8008E778093E800209710 +:101AD00041F0888199818C0D9D1D9983888385E0D3 +:101AE00011C00E94A40E882331F30CC0F70181912C +:101AF0007F018093F10001501109FFEFCF1ADF0A37 +:101B0000DACF80E0DF91CF911F910F91FF90EF909E +:101B1000DF90CF9008952091EF013091F0012617CA +:101B2000370748F06115710539F42091E8002E77E8 +:101B30002093E80001C0B901FC0120E061157105A6 +:101B4000B9F18091E801882309F440C0853009F497 +:101B50003FC08091E80083FD3DC08091E80082FF96 +:101B600006C08091E80082FF26C080E00895809141 +:101B7000E80080FFE3CF2091F3008091F20090E035 +:101B8000922B6115710551F08830910538F421913F +:101B90002093F100615071090196F3CF21E008977D +:101BA00009F020E08091E8008E778093E800C6CFAE +:101BB0002111C7CFD6CF8091E801882339F0853035 +:101BC00039F08091E80083FFCCCF04C082E0089513 +:101BD00083E0089581E008952091EF013091F001B4 +:101BE0002617370748F06115710539F42091E80090 +:101BF0002E772093E80001C0B901FC0120E06115B7 +:101C00007105C1F18091E801882309F441C0853054 +:101C100009F440C08091E80083FD3EC08091E80057 +:101C200082FF06C08091E80082FF27C080E008950F +:101C30008091E80080FFE3CF2091F3008091F200D3 +:101C400090E0922B6115710559F08830910540F4B0 +:101C500024912093F1003196615071090196F2CFE1 +:101C600021E0089709F020E08091E8008E778093CA +:101C7000E800C5CF2111C6CFD5CF8091E8018823D8 +:101C800039F0853039F08091E80083FFCBCF04C074 +:101C900082E0089583E0089581E00895982F9730B9 +:101CA00058F59093E900981739F07091EC00209165 +:101CB000ED005091F00003C0242F762F50E021FF5B +:101CC00019C03091EB003E7F3093EB003091ED0076 +:101CD0003D7F3093ED003091EB0031603093EB00AD +:101CE0007093EC002093ED005093F0002091EE00F3 +:101CF00027FF07C09F5FD3CF8F708093E90081E0FB +:101D0000089580E008958091E90187FD05C08091E4 +:101D1000E80080FF0EC012C08091E80082FD05C07F +:101D20008091E8018111F8CF08958091E8008B77C8 +:101D300008C08091E8018111EACF08958091E80000 +:101D40008E778093E80008958091E4009091E500FB +:101D500045E62091EC0020FF21C02091E80020FD05 +:101D600021C02091E801222389F0253089F02091BB +:101D7000EB0025FD0FC02091E4003091E50028170D +:101D8000390739F3415041F0C901E3CF82E00895AA +:101D900083E0089581E0089584E008952091E800AB +:101DA00022FFDFCF80E008950E94420F0E944A0F79 +:101DB000E0EEF0E0808181608083E8EDF0E08081FA +:101DC0008F77808319BCA7EDB0E08C918E7F8C93C8 +:101DD00080818F7E80831092E70108950F931F9377 +:101DE000CF93DF930E94420F0E944A0FC8EDD0E0CC +:101DF00088818F77888388818068888388818F7DB8 +:101E0000888319BC1092E8011092E4011092E60157 +:101E10001092E50100EE10E0F80180818B7F808355 +:101E200088818160888342E060E080E00E944E0EFD +:101E3000E1EEF0E080818E7F8083E2EEF0E0808151 +:101E400081608083808188608083F80180818E7FBB +:101E50008083888180618883DF91CF911F910F916A +:101E60000895E8EDF0E080818F7E8083E7EDF0E07B +:101E700080818160808384E082BF81E08093E7017C +:101E80000C94EE0EE8EDF0E080818E7F808310925E +:101E9000E20008951092DA001092E10008951F9276 +:101EA0000F920FB60F9211242F933F934F935F938E +:101EB0006F937F938F939F93AF93BF93EF93FF9312 +:101EC0008091E10082FF0BC08091E20082FF07C099 +:101ED0008091E1008B7F8093E1000E94AB118091A3 +:101EE000DA0080FF1FC08091D80080FF1BC0809166 +:101EF000DA008E7F8093DA008091D90080FF0DC0D8 +:101F000080E189BD82E189BD09B400FEFDCF81E099 +:101F10008093E8010E94B30B05C019BC1092E80140 +:101F20000E94C10B8091E10080FF19C08091E20006 +:101F300080FF15C08091E2008E7F8093E200809147 +:101F4000E20080618093E2008091D80080628093FB +:101F5000D80019BC85E08093E8010E94C50B8091F0 +:101F6000E10084FF30C08091E20084FF2CC080E15A +:101F700089BD82E189BD09B400FEFDCF8091D80002 +:101F80008F7D8093D8008091E1008F7E8093E10067 +:101F90008091E2008F7E8093E2008091E200816078 +:101FA0008093E2008091E401882311F084E007C06F +:101FB0008091E30087FF02C083E001C081E080934D +:101FC000E8010E94C70B8091E10083FF29C0809146 +:101FD000E20083FF25C08091E100877F8093E100CC +:101FE00082E08093E8011092E4018091E1008E7F0D +:101FF0008093E1008091E2008E7F8093E2008091E7 +:10200000E20080618093E20042E060E080E00E94B4 +:102010004E0E8091F00088608093F0000E94C40B07 +:10202000FF91EF91BF91AF919F918F917F916F91B0 +:102030005F914F913F912F910F900FBE0F901F9086 +:1020400018951F920F920FB60F9211242F933F9362 +:102050004F935F936F937F938F939F93AF93BF93B0 +:10206000CF93EF93FF93C091E900CF708091EC0084 +:102070001092E9008091F000877F8093F0007894BF +:102080000E945D101092E9008091F00088608093BA +:10209000F000C093E900FF91EF91CF91BF91AF9114 +:1020A0009F918F917F916F915F914F913F912F9170 +:1020B0000F900FBE0F901F9018951F93CF93DF9333 +:1020C000CDB7DEB7AA970FB6F894DEBF0FBECDBF6F +:1020D000E9EEF1E08091F100819321E0E13FF20728 +:1020E000C9F70E94E30B8091E80083FF1CC1209197 +:1020F000E9013091EA01832F90E08A30910508F0E0 +:1021000012C1FC01EB54FF4F0C944B26203881F098 +:10211000223809F008C18091ED018F708093E900A9 +:102120008091EB0085FB882780F91092E90006C0BA +:102130008091E5019091E601911182609091E80013 +:10214000977F9093E8008093F1001092F100C5C052 +:10215000822F8D7F09F0E7C0222319F0223061F031 +:10216000E2C08091EB01813009F0DDC0333009F02D +:1021700080E08093E60128C08091EB01811124C0AA +:102180002091ED012F7009F4CEC02093E9008091D9 +:10219000EB0080FF19C08091EB00333011F48062B6 +:1021A00011C080618093EB0081E090E0022E01C0BD +:1021B000880F0A94EAF78093EA001092EA0080916F +:1021C000EB0088608093EB001092E9008091E800BA +:1021D000877F86C02111A7C01091EB011F778091E6 +:1021E000E3008078812B8093E3008091E800877F73 +:1021F0008093E8000E94830E8091E80080FFFCCF6E +:102200008091E30080688093E300112311F083E064 +:1022100001C082E08093E80186C02058223008F097 +:1022200082C08091EB019091EC018C3D23E09207FC +:1022300079F583E08A838AE289834FB7F894DE01D7 +:10224000139620E03EE051E2E32FF0E05093570078 +:10225000E49120FF03C0E295EF703F5FEF708E2F97 +:1022600090E0EA3010F0C79601C0C0968D939D9320 +:102270002F5F243149F74FBF8091E800877F80931B +:10228000E8006AE270E0CE0101960E948B0D14C056 +:10229000AE014F5F5F4F6091ED010E94D30C00973C +:1022A00009F441C02091E800277F2093E800BC0199 +:1022B00089819A810E94EC0D8091E8008B77809350 +:1022C000E80031C0203879F58091E800877F80935D +:1022D000E8008091E4018093F1008091E8008E771E +:1022E0008093E8000E94830E1EC021111CC09091B3 +:1022F000EB019230C0F48091E800877F8093E80082 +:102300009093E4010E94830E8091E401811104C046 +:102310008091E30087FF02C084E001C081E08093E8 +:10232000E8010E94CF0B8091E80083FF0AC08091F2 +:10233000E800877F8093E8008091EB0080628093C3 +:10234000EB00AA960FB6F894DEBF0FBECDBFDF91AB +:10235000CF911F9108950895CF938091E80188232C +:10236000B1F08091E9008F709091EC0090FF02C075 +:1023700090E801C090E0C92FC82B1092E90080912D +:10238000E80083FD0E945D10CF70C093E900CF91FB +:10239000089590936B0180936A010895E0916A011A +:1023A000F0916B01309721F00190F081E02D0994BC +:1023B00080E00895E0916A01F0916B01309721F07F +:1023C0000280F381E02D09940895E0916A01F09173 +:1023D0006B01309721F00480F581E02D0994089578 +:1023E00020916801309169018217930771F09093F1 +:1023F000690180936801E0916A01F0916B01309767 +:1024000021F00680F781E02D09940895209166015E +:10241000309167018217930771F090936701809361 +:102420006601E0916A01F0916B01309721F0008420 +:10243000F185E02D0994089508950C941C120E94D2 +:10244000371E0E94AA070C94FD1ECF92DF92EF92D6 +:10245000FF920F931F93CF93DF93CDB7DEB72B97E8 +:102460000FB6F894DEBF0FBECDBF0E94C2073DE697 +:10247000E32E31E0F32E00E010E0C02E802F0E940A +:10248000AF08F701D1907F01D826B1F40F5F1F4F3D +:102490000E30110591F78FEF89838A831B820E948A +:1024A000401E8160782F9D838C8349815A816B8186 +:1024B0008D810E94C81241C09091CF0191FF04C04C +:1024C0008B870E94B5088B8520E030E04D2D50E0D1 +:1024D000922FBA01022E02C0759567950A94E2F711 +:1024E00060FF25C02E83CF82EE24E394F12C02C03E +:1024F000EE0CFF1C9A95E2F790E08E219F2121E0DF +:10250000892B09F420E028870E94401E8160782FE3 +:102510009A8789874E815F8168858A850E94C81263 +:10252000F801E359FE4F80818E25808306C02F5F1E +:102530003F4F2630310561F6A9CF0E94E12110916D +:102540006C010E94CE111817A1F00E94CE11809349 +:102550006C012B960FB6F894DEBF0FBECDBFDF9196 +:10256000CF911F910F91FF90EF90DF90CF900C943F +:10257000D30A2B960FB6F894DEBF0FBECDBFDF9106 +:10258000CF911F910F91FF90EF90DF90CF90089522 +:10259000CF93DF93CDB7DEB72B970FB6F894DEBF9E +:1025A0000FBECDBF4F83588769877A878B87DE013F +:1025B000119686E0FD0111928A95E9F785E0FE010A +:1025C000379601900D928A95E1F749815A816B8186 +:1025D0007C818D819E810E94091A2B960FB6F894FA +:1025E000DEBF0FBECDBFDF91CF9108950895CF9389 +:1025F000C82F882309F4C1C0823859F40E94CE1133 +:1026000081FDBBC089E30E94A81C0E94721D89E362 +:102610000CC0833879F40E94CE1180FDAEC083E5F2 +:102620000E94A81C0E94721D83E50E94E81CCF91A5 +:102630000C94721D843859F40E94CE1182FD9DC005 +:1026400087E40E94A81C0E94721D87E4EECF8CEFE5 +:102650008C0F813A48F48C2F0E94192481118DC06F +:102660008C2F0E94A81CE3CF80E28C0F883048F4A6 +:10267000C77081E001C0880FCA95EAF70E94291D42 +:10268000D6CF8BE58C0F833078F4C53A29F0C63A63 +:1026900031F482E890E005C081E890E002C083E870 +:1026A00090E0CF910C94F01188E58C0F833108F005 +:1026B00064C0C83A39F1C93A41F1CA3A49F1CB3A52 +:1026C00051F1CC3A59F1CD3A61F1C03B69F1CE3AC2 +:1026D00071F1CF3A79F1C13B81F1C23B89F1C33B42 +:1026E00091F1C43B99F1C53BA1F1C63BA9F1C73BB0 +:1026F000B1F1C83BB9F1C93BC1F1CA3BC9F58AE2A6 +:1027000092E038C082EE90E035C089EE90E032C0B1 +:102710008AEE90E02FC085EB90E02CC086EB90E035 +:1027200029C087EB90E026C08CEC90E023C08DECB4 +:1027300090E020C083E891E01DC08AE891E01AC0D3 +:1027400082E991E017C084E991E014C081E292E04F +:1027500011C083E292E00EC084E292E00BC085E2F9 +:1027600092E008C086E292E005C087E292E002C0F3 +:1027700080E090E0CF910C940612CF9108958823C9 +:1027800009F44BC0823859F40E94CE1181FF45C034 +:1027900089E30E94A81C0E94721D89E30CC0833843 +:1027A00071F40E94CE1180FF38C083E50E94A81CFE +:1027B0000E94721D83E50E94E81C0C94721D8438EF +:1027C00059F40E94CE1182FF28C087E40E94A81C01 +:1027D0000E94721D87E4EFCF9CEF980F913A58F357 +:1027E00090E2980F983050F4877091E001C0990FF3 +:1027F0008A95EAF7892F0E942F1DDFCF9BE5980F5E +:10280000933020F480E090E00C94F011885A8331EA +:1028100020F480E090E00C9406120895882321F0C3 +:102820000E94291D0C94721D0895882321F00E9496 +:102830002F1D0C94721D0895CF92DF92EF92FF929C +:102840000F931F93CF93DF93CDB7DEB728970FB6C3 +:10285000F894DEBF0FBECDBF8C0185E0F801DE012C +:10286000119601900D928A95E1F7F801D080E180F0 +:10287000F280258122952F7083819481892B39F0F4 +:10288000FFEFEF1206C081E0DF1203C003C081E05A +:1028900001C080E080FDCEC2C8012F830E94F612E5 +:1028A000D982EA8289819A810E94661C9E838887E8 +:1028B0000E94651C0E94381B2F814E816885FF2075 +:1028C00029F00E94461D68854E812F81E42FE295F4 +:1028D000EF70F0E0E154FF4F0C944B26842F807F83 +:1028E000142F1F70882311F01295107FFF2059F0CC +:1028F000112309F454C2812F68870E94391D0E9458 +:10290000721D68854CC2862F0E94BF13112309F4E3 +:1029100091C2812F0E943F1D28960FB6F894DEBF0A +:102920000FBECDBFDF91CF911F910F91FF90EF9020 +:10293000DF90CF900C94721D342F307F842F8F70D6 +:10294000303211F08295807F662319F0613019F1E1 +:102950002BC0FF20B1F0222309F493C1213009F0EC +:1029600090C128960FB6F894DEBF0FBECDBFDF91A1 +:10297000CF911F910F91FF90EF90DF90CF900C942B +:10298000591D222319F0213009F454C28E830E946C +:102990005C1D8E8189C1FF2021F0223008F04AC2DF +:1029A00070C1211147C280C1FF2021F0222309F408 +:1029B00068C1F5C1222309F477C105C2242F2695E9 +:1029C0002695237030E02115310521F021303105A5 +:1029D000C9F030C2FF2021F0862F942F937002C0DF +:1029E00080E090E028960FB6F894DEBF0FBECDBF12 +:1029F000DF91CF911F910F91FF90EF90DF90CF90DB +:102A00000C94F011FF2021F0862F942F937002C0B8 +:102A100080E090E028960FB6F894DEBF0FBECDBFE1 +:102A2000DF91CF911F910F91FF90EF90DF90CF90AA +:102A30000C940612862FFF2019F00E94E92002C094 +:102A40000E94512128960FB6F894DEBF0FBECDBF6D +:102A5000DF91CF911F910F91FF90EF90DF90CF907A +:102A60000C94D621842F837009F076C0F110E2C156 +:102A7000262F229526952770220F220F862F8F70E2 +:102A8000C82ED12CE12CF12C022E04C0CC0CDD1C64 +:102A9000EE1CFF1C0A94D2F764FF10C06FE070E0D8 +:102AA00080E090E004C0660F771F881F991F2A9569 +:102AB000D2F7609570958095909503C060E070E0C6 +:102AC000CB01242F269526952370422F50E04230CB +:102AD0005105D1F04330510559F16C297D298E29DA +:102AE0009F294130510541F128960FB6F894DEBF79 +:102AF0000FBECDBFDF91CF911F910F91FF90EF904F +:102B0000DF90CF900C945D1B6C297D298E299F2925 +:102B100028960FB6F894DEBF0FBECDBFDF91CF91E0 +:102B20001F910F91FF90EF90DF90CF900C94771B47 +:102B30000E945D1BC701B60128960FB6F894DEBF50 +:102B40000FBECDBFDF91CF911F910F91FF90EF90FE +:102B5000DF90CF900C94431BFF2019F0842F8170DD +:102B600001C08695882309F465C1262F22952695F4 +:102B70002770220F220F862F8F70C82ED12CE12CA8 +:102B8000F12C022E04C0CC0CDD1CEE1CFF1C0A94A0 +:102B9000D2F764FF10C06FE070E080E090E004C006 +:102BA000660F771F881F991F2A95D2F76095709539 +:102BB0008095909503C060E070E0CB01242F2695AE +:102BC00026952370422F50E042305105D1F043301A +:102BD000510559F16C297D298E299F2941305105D4 +:102BE00041F128960FB6F894DEBF0FBECDBFDF913E +:102BF000CF911F910F91FF90EF90DF90CF900C94A9 +:102C0000311C6C297D298E299F2928960FB6F894AE +:102C1000DEBF0FBECDBFDF91CF911F910F91FF900F +:102C2000EF90DF90CF900C944B1C0E94311CC70199 +:102C3000B60128960FB6F894DEBF0FBECDBFDF9168 +:102C4000CF911F910F91FF90EF90DF90CF900C9458 +:102C5000171C603FC9F118F4603E50F49BC0623FFE +:102C600009F460C008F44AC0633F09F46FC092C021 +:102C7000162F1F70842F8F71FF2099F00E94B01BB8 +:102C8000812F28960FB6F894DEBF0FBECDBFDF911F +:102C9000CF911F910F91FF90EF90DF90CF900C9408 +:102CA0000E140E94D11B812F28960FB6F894DEBF18 +:102CB0000FBECDBFDF91CF911F910F91FF90EF908D +:102CC000DF90CF900C941514FF20A1F02111B2C019 +:102CD000842F8F7128960FB6F894DEBF0FBECDBF3C +:102CE000DF91CF911F910F91FF90EF90DF90CF90E8 +:102CF0000C94F61B223008F09DC0EACFFF20A1F013 +:102D0000842F8F7128960FB6F894DEBF0FBECDBF0B +:102D1000DF91CF911F910F91FF90EF90DF90CF90B7 +:102D20000C94B01BFF2061F3842F8F7128960FB68F +:102D3000F894DEBF0FBECDBFDF91CF911F910F91F1 +:102D4000FF90EF90DF90CF900C94D11BFF2091F07B +:102D5000842F8F7128960FB6F894DEBF0FBECDBFBB +:102D6000DF91CF911F910F91FF90EF90DF90CF9067 +:102D70000C949B1B28960FB6F894DEBF0FBECDBFF8 +:102D8000DF91CF911F910F91FF90EF90DF90CF9047 +:102D90000C94911BFF20A1F0222309F4B1CF862FC0 +:102DA00028960FB6F894DEBF0FBECDBFDF91CF914E +:102DB0001F910F91FF90EF90DF90CF900C94F7123E +:102DC000222309F4B1CF862F28960FB6F894DEBFE0 +:102DD0000FBECDBFDF91CF911F910F91FF90EF906C +:102DE000DF90CF900C94BF134F70C8010E94040570 +:102DF00028960FB6F894DEBF0FBECDBFDF91CF91FE +:102E00001F910F91FF90EF90DF90CF900C94B61A26 +:102E10004F70C80128960FB6F894DEBF0FBECDBF25 +:102E2000DF91CF911F910F91FF90EF90DF90CF90A6 +:102E30000C94750928960FB6F894DEBF0FBECDBF6F +:102E4000DF91CF911F910F91FF90EF90DF90CF9086 +:102E500008950E94461D0E94561D0E941B1D0E943F +:102E6000721D0E9482220E94D62180E090E00E9482 +:102E7000F01180E090E00C9406120E94361D0C9434 +:102E800029170E94661C292F22952F7030E02C30C4 +:102E900031054CF42A3031056CF4225031092230CE +:102EA000310590F407C02C30310551F02F30310539 +:102EB00039F00AC0803E10F0803F31F481E008957F +:102EC00093FB882780F9089580E00895CF93DF93DE +:102ED00000D000D01F92CDB7DEB70F900F900F90AB +:102EE0000F900F90DF91CF910895CF93DF9300D093 +:102EF00000D000D0CDB7DEB726960FB6F894DEBF6F +:102F00000FBECDBFDF91CF9108951F93CF93DF9375 +:102F1000C0917B0116E080917C01C81799F0D0E048 +:102F20001C9FF0011D9FF00D1124E358FE4F4081BE +:102F3000518162817381848195810E9475172196E8 +:102F4000C770E9CFDF91CF911F9108954091AD01F6 +:102F50005091AE016091AF017091B0018091B101CB +:102F60009091B2010C947517CF938091B201829524 +:102F70008F7009F05FC08091AF01882309F45AC0B7 +:102F800020917B01A0917C016091AD017091AE0117 +:102F90008091B0019091B10131E06F3F09F030E0D4 +:102FA000B32FC6E02A1709F445C0009721F07F3FF0 +:102FB00021F44B2F03C041E001C040E030E040FD70 +:102FC00035C0C29FF001C39FF00D1124E358FE4F9E +:102FD000418174132BC04081641328C04281411188 +:102FE00025C0438154814817590710F441505109B5 +:102FF000481B590B483C5105C8F48091B2018F70B1 +:1030000080618093B20186E0829FF001839FF00D82 +:103010001124EE57FE4F80818F70806180838DEA8E +:1030200091E00E941C14CF910C9485172F5F3F4FA5 +:103030002770B8CFCF910895CF92DF92EF92FF9291 +:103040000F931F93CF93DF93CDB7DEB762970FB681 +:10305000F894DEBF0FBECDBF8C0185E0F801DE0124 +:103060001D9601900D928A95E1F7D8014C91119629 +:103070005C91119712966C9112971396ED90FC90BB +:1030800014977091AD01E091AE012091B0013091A3 +:10309000B1012115310531F0EF3F31F481E07F3F7F +:1030A00019F403C081E001C080E0B82FB170CB2ECD +:1030B00080FD6CC1D090AF01DD2009F4F5C0F09126 +:1030C000B201E216F30638F0C701821B930B883C6D +:1030D000910548F09BC0209530952E0D3F1D283C52 +:1030E000310508F093C08F2F807F09F052C0E5139F +:1030F00014C0741312C0D62E61110FC0FF70F0619E +:10310000F093B2010E94A6178DEA91E00E941C1470 +:103110008091B201F80185836CC1EF2831F05F3FE7 +:1031200031F481E04F3F19F403C081E001C080E039 +:1031300080FD03C081E0862701C080E0F82FF17098 +:10314000FF2E80FF1CC080917B0120917C0136E026 +:10315000821709F428C190E0389FF001399FF00DE3 +:103160001124E358FE4F7181571306C07081471335 +:1031700003C07281671303C001968770E9CFD62E12 +:10318000662309F436C18091B20181608093B20157 +:1031900053C0E51308C0741306C0611104C0D80100 +:1031A0001596FC93AEC04D875E878D859E856A8B94 +:1031B0000E9441176A89882329F1D62E662311F1CE +:1031C0002091B201822F82958F7090E002970CF4CB +:1031D00060C08091AD019091AE0198878F83198670 +:1031E000FB86EA862C87CE01079651C0E51731F1A0 +:1031F0004D875E878D859E856A8B0E9441176A89FF +:1032000081112EC0C8010E941C14A4C08F2F807F82 +:1032100069F77E2DF98AE88A89890E9466178DEA06 +:1032200091E00E941C14EDEAF1E086E0DF011D92BE +:103230008A95E9F70E94A617D12CDBC07413D8CF6A +:103240006111D6CFD8011596FC93C8010E941C14B9 +:10325000EDEAF1E086E0DF011D928A95E9F7C9C049 +:10326000D62E662379F22091B201822F82958F703B +:1032700090E0029774F08091AD019091AE019A8335 +:1032800089831B82FD82EC822E83CE0101960E94EF +:103290001C1486E0F801ADEAB1E001900D928A9528 +:1032A000E1F70E94B4176FC0E216F30628F0C701D9 +:1032B000821B930B9C0104C0209530952E0D3F1D61 +:1032C000283C310508F052C0D62E662309F49ACF67 +:1032D000E5132CC074132AC08091B20180FD1DC07B +:1032E000982F92959F70C9F0D80115968C931597D9 +:1032F0009F3039F09F5F9295907F8F70892B159644 +:103300008C93C8010E941C1486E0F801ADEAB1E07C +:1033100001900D928A95E1F736C086E0F801ADEA9A +:10332000B1E001900D928A95E1F763C04D875E8709 +:103330008D859E850E944117882379F086E0F801EB +:10334000ADEAB1E001900D928A95E1F70E94B417C1 +:103350000E94A617DD24D3944CC08091B2018160F5 +:103360008093B201C8010E941C1443C07E2DF98ACB +:10337000E88A89890E946617EDEAF1E086E0DF01BC +:103380001D928A95E9F70E94A61733C0662309F4B7 +:1033900039CF4D875E878D859E850E944117882392 +:1033A00009F430CFCBCF4D875E878D859E850E94F7 +:1033B000661C292F22952F7030E0223031052CF425 +:1033C0009F7041F0811106C00CC0243031052CF4EF +:1033D0009F7049F4805E883020F0C8010E941C1460 +:1033E000CF2CDC2C06C0D80115969C91907F91F7CC +:1033F000F8CF8D2D62960FB6F894DEBF0FBECDBF0D +:10340000DF91CF911F910F91FF90EF90DF90CF90C0 +:1034100008951F93CF93DF93CDB7DEB72C970FB6E8 +:10342000F894DEBF0FBECDBF4F83588769877A8778 +:103430008B879C87CE0107960E941C188823C1F0B9 +:103440002F8138858A859B85892B31F03F3F11F08C +:1034500080E003C02F3FE1F781E0811147C04F8139 +:10346000588569857A858B859C850E9475173EC035 +:1034700086E0FE013796DE01119601900D928A9545 +:10348000E1F7FF81E8854A855B854115510531F0FB +:10349000EF3F31F481E0FF3F19F403C081E001C048 +:1034A00080E080FD23C020917C0130E0C9010196BD +:1034B0008770992760917B0170E086179707F1F17B +:1034C000F983EA835D834C8396E0929FD001939FBA +:1034D000B00D1124A358BE4FFE01319601900D92FC +:1034E0009A95E1F780937C010E94851716E0809100 +:1034F0007B0190917C01891779F1189FC0011124FB +:1035000083589E4F0E941C18882331F1E0917B0163 +:103510001E9FF0011124E358FE4F408151816281CA +:103520007381848195810E94751780917B0190E061 +:1035300001968770992780937B01D9CF0E943D1710 +:1035400010927C0110927B01EDEAF1E086E0DF0150 +:103550001D928A95E9F7CACF2C960FB6F894DEBF74 +:103560000FBECDBFDF91CF911F910895EF92FF92D3 +:103570000F931F93CF93DF939C01009709F471C0C1 +:10358000F12CEE24E394E9012196F901849184372A +:1035900040F4843008F056C0813081F0823021F14F +:1035A00060C0853709F449C0C0F19CE7980F903797 +:1035B00008F057C08F770E94BF1346C089010E5F85 +:1035C0001F4FFE01849190E2980F983050F487705D +:1035D000FE2D01C0FF0F8A95EAF78F2F0E94491D2B +:1035E00015C00E94F71214C089010E5F1F4FFE0123 +:1035F000849190E2980F983068F48770FE2D01C096 +:10360000FF0F8A95EAF78F2F0E944F1D0E94721DAF +:10361000E8011AC00E94BF13FBCF2E5F3F4FFE018F +:10362000C491CC2341F08FE99FE00197F1F700C0EE +:103630000000C150F6CFE90107C0FE01F490E90196 +:10364000229602C00E94F7128F2D882341F0EFE9E5 +:10365000FFE03197F1F700C000008150F6CF9E01E6 +:1036600092CFDF91CF911F910F91FF90EF9008952E +:1036700008956093B7017093B8018093B901909356 +:10368000BA010C9429170F931F930091B701109161 +:10369000B8012091B9013091BA01062B172B282BC4 +:1036A000392B0093B7011093B8012093B9013093DF +:1036B000BA011F910F910C9429170F931F9300913A +:1036C000B7011091B8012091B9013091BA010623D8 +:1036D0001723282339230093B7011093B8012093AF +:1036E000B9013093BA011F910F910C9429170F93D0 +:1036F0001F930091B7011091B8012091B901309149 +:10370000BA0106271727282739270093B7011093F6 +:10371000B8012093B9013093BA011F910F910C9415 +:1037200029171092B3011092B4011092B5011092B2 +:10373000B6010C94291741E050E060E070E004C04D +:10374000440F551F661F771F8A95D2F74093B30128 +:103750005093B4016093B5017093B6010C9429178E +:1037600041E050E060E070E004C0440F551F661F68 +:10377000771F8A95D2F78091B3019091B401A091FF +:10378000B501B091B601842B952BA62BB72B809356 +:10379000B3019093B401A093B501B093B6010C941A +:1037A000291741E050E060E070E004C0440F551F6D +:1037B000661F771F8A95D2F7409550956095709552 +:1037C0008091B3019091B401A091B501B091B6017F +:1037D00084239523A623B7238093B3019093B40148 +:1037E000A093B501B093B6010C94291741E050E0C5 +:1037F00060E070E004C0440F551F661F771F8A9574 +:10380000D2F78091B3019091B401A091B501B0912C +:10381000B60184279527A627B7278093B3019093F5 +:10382000B401A093B501B093B6010C9429170F937E +:103830001F930091B3011091B4012091B501309113 +:10384000B601062B172B282B392B0093B3011093AD +:10385000B4012093B5013093B6011F910F910C94E0 +:1038600029170F931F930091B3011091B401209178 +:10387000B5013091B601062317232823392300937D +:10388000B3011093B4012093B5013093B6011F9199 +:103890000F910C9429170F931F930091B30110916E +:1038A000B4012091B5013091B601062717272827CA +:1038B00039270093B3011093B4012093B5013093DD +:1038C000B6011F910F910C9429170895CF92DF92A2 +:1038D000EF92FF920F931F93CF93DF93EC01C09071 +:1038E000B701D090B801E090B901F090BA01809191 +:1038F000B3019091B401A091B501B091B601C82A6D +:10390000D92AEA2AFB2A0FE110E0B701A601002E0E +:1039100004C076956795579547950A94D2F740FF6E +:1039200007C0BE01802F0E9498098130910539F4AB +:103930000150110950F7BE0180E00E949809DF9103 +:10394000CF911F910F91FF90EF90DF90CF9008954E +:1039500090910C019923D9F090910D019923B9F020 +:10396000982F9695969596959F3088F5E0910E0143 +:10397000F0910F01E90FF11D877021E030E001C0E7 +:10398000220F8A95EAF78181822B818308954091E5 +:103990000E0150910F0120E030E09FEFFA01E20F9D +:1039A000F31F6281681799F09F3F19F4611101C0FC +:1039B000922F2F5F3F4F2E30310581F79F3F39F017 +:1039C000FA01E90FF11D97FDFA9582830895089594 +:1039D00090910C019923E1F090910D019923C1F090 +:1039E000982F9695969596959F3020F5E0910E012B +:1039F000F0910F01E90FF11D877021E030E001C067 +:103A0000220F8A95EAF72095818128232183089542 +:103A100040910E0150910F0120E030E0FA01E20FD9 +:103A2000F31F9281981301C012822F5F3F4F2E30F7 +:103A30003105A1F7089581E090E0E0910E01F09149 +:103A40000F01E80FF91F1082019680319105A9F747 +:103A500008959091CE01982B9093CE010895809572 +:103A60009091CE0198239093CE0108951092CE01AB +:103A700008959091CD01982B9093CD010895809554 +:103A80009091CD0198239093CD0108951092CD018E +:103A900008959091CC01982B9093CC010895809536 +:103AA0009091CC0198239093CC0108951092CC0171 +:103AB00008958093BB0108951092BB010895409131 +:103AC0000E0150910F0120E030E080E0FA01E20F9A +:103AD000F31F918191118F5F2F5F3F4F2F30310581 +:103AE000A9F70895E0910E01F0910F018091CE01A8 +:103AF0008083E0910E01F0910F0180819091CD01C2 +:103B0000892B8083E0910E01F0910F0180819091CB +:103B1000CC01892B80839091BB01992361F0E091C6 +:103B20000E01F0910F018081892B80830E945F1D1F +:103B300081111092BB0180910E0190910F010C94A4 +:103B4000DA11CF92DF92EF92FF920F931F936C01E5 +:103B5000EE24FF24C114D104E104F10421F46B012B +:103B60007C0180E001C080E133272F2D1E2D0D2D1B +:103B7000011511052105310519F0885F68017901EA +:103B800097018601A4E03695279517950795AA9584 +:103B9000D1F7011511052105310519F08C5F680178 +:103BA000790197018601F2E03695279517950795DB +:103BB000FA95D1F7011511052105310519F08E5F30 +:103BC00068017901B701A6017695679557954795E4 +:103BD000452B462B472B09F08F5F1F910F91FF90CC +:103BE000EF90DF90CF9008958091E801843009F143 +:103BF0001092D00120E488E190E00FB6F894A895E7 +:103C0000809360000FBE2093600083B7817F846043 +:103C100083BF83B7816083BF7894889583B78E7F95 +:103C200083BF88E10FB6F894809360001092600023 +:103C30000FBE089508950895CF930E941A1E0E9402 +:103C4000C2070E941B1EC0E08C2F0E94AF0881118A +:103C500005C0CF5FCE30C1F780E001C081E0CF91D9 +:103C600008950E943D170E94CE110C94D30A82E061 +:103C700084BD93E095BD9AEF97BD80936E00089543 +:103C80002FB7F8948091D1019091D201A091D301E6 +:103C9000B091D4012FBF0895CF92DF92EF92FF929F +:103CA0000F931F932FB7F8944091D1015091D201F7 +:103CB0006091D3017091D4012FBF6A017B01EE2482 +:103CC000FF248C0120E030E0C016D106E206F306A6 +:103CD00010F441505109481B590BCA011F910F9113 +:103CE000FF90EF90DF90CF9008951F920F920FB644 +:103CF0000F9211248F939F93AF93BF938091D10123 +:103D00009091D201A091D301B091D4010196A11D4F +:103D1000B11D8093D1019093D201A093D301B093B0 +:103D2000D401BF91AF919F918F910F900FBE0F90D3 +:103D30001F9018950E94D40EF8942FEF87EA91E611 +:103D4000215080409040E1F700C0000087E090EBF8 +:103D5000DC018093F1019093F201A093F301B09301 +:103D6000F4012CE088E190E00FB6F894A8958093D8 +:103D700060000FBE20936000FFCFEF92FF920F9381 +:103D80001F93CF93DF93E82EF12C8F2D0E94AF0865 +:103D9000C0E0D0E0082F10E098010C2E02C035954D +:103DA00027950A94E2F720FD05C02196C630D1057B +:103DB00099F709C06C2F7F2D80E00E947609E812E8 +:103DC000F4CF81E005C0F3948EE0F812DECF80E0FE +:103DD000DF91CF911F910F91FF90EF900895CF93B6 +:103DE000C82F8CE20E94BD1E882321F08C2FCF911A +:103DF0000C94BD1E80E0CF910895CF930E94422085 +:103E0000811102C00E942820C5E6C15049F00E94DD +:103E1000C2078FE39CE90197F1F700C00000F5CFDE +:103E200089E20E94EF1E811111C18AE20E94EF1EF9 +:103E300081110E94282085E00E94EF1E81110E94BE +:103E40009A1E0E944D208093CF0187E00E94EF1EB2 +:103E5000882399F18BE10E94EF1E882351F0909105 +:103E6000CF0191FB882780F921E0822780FB91F91F +:103E700022C08EE00E94EF1E882351F09091CF0166 +:103E800092FB882780F921E0822780FB92F913C0FA +:103E900080E10E94EF1E9091CF01882341F093FBB7 +:103EA000882780F921E0822780FB93F904C0892FBD +:103EB000809580FB90F99093CF018091CF010E9473 +:103EC00051200E945F208093E20180EE0E94EF1E4D +:103ED000882341F08091E201982F909590FB80F922 +:103EE0008093E20189E30E94EF1E882359F09091AC +:103EF000E20191FB882780F921E0822780FB91F97C +:103F00009093E20182EE0E94EF1E882359F0909177 +:103F1000E20192FB882780F921E0822780FB92F959 +:103F20009093E20186EE0E94EF1E882359F0909153 +:103F3000E20193FB882780F921E0822780FB93F937 +:103F40009093E20183EE0E94EF1E882359F0909136 +:103F5000E20194FB882780F921E0822780FB94F915 +:103F60009093E20185E30E94EF1E882359F090911F +:103F7000E20195FB882780F921E0822780FB95F9F3 +:103F80009093E20181E30E94EF1E882359F0909103 +:103F9000E20196FB882780F921E0822780FB96F9D1 +:103FA0009093E20181E10E94EF1E882359F09091E5 +:103FB000E20197FB882780F921E0822780FB97F9AF +:103FC0009093E2018091E2010E9463208091E201DE +:103FD00087FB882780F980930D0187E20E94EF1EFE +:103FE000C82F8EE10E94EF1E8111C2608FE10E94F6 +:103FF000EF1E8111C46080E20E94EF1E8111C86033 +:1040000081E20E94EF1E8111C06182E20E94EF1ED8 +:104010008111C06283E20E94EF1E8111C06484E2BC +:104020000E94EF1E882311F0C06802C0CC2329F043 +:104030008C2F0E945A206C2F03C00E945620682F9C +:1040400070E080E090E0CF910C94391BCF910895FF +:104050006DEE7EEF80E090E00E94812660E082E0DD +:1040600090E00E94732660E083E090E00E94732657 +:1040700060E084E090E00E94732660E085E090E0DC +:104080000C94732680E090E00E946D2621E08D3E26 +:104090009E4F09F020E0822F089582E090E00C947A +:1040A0006526682F82E090E00C94732683E090E010 +:1040B0000C946526682F83E090E00C94732684E0CE +:1040C00090E00C946526682F84E090E00C947326B1 +:1040D0008091D70180FF0BC06091130185E0689F3C +:1040E000B001112475956795759567952AC081FF74 +:1040F00009C06091130185E0689FB0011124759596 +:1041000067951FC082FF07C06091130185E0689F1B +:10411000B001112416C04091D8014423C9F0609128 +:104120001201461788F72091130185E0289F90011E +:104130001124429FC001439F900D112470E00E9402 +:1041400037266038710540F46115710539F002C0F9 +:1041500065E070E0862F08958FE7089581E0089567 +:104160008091D70180FF08C06091110170E07595C2 +:1041700067957595679521C081FF06C06091110113 +:1041800070E07595679519C082FF04C060911101B8 +:1041900070E010C08091D8018823C1F060911001B7 +:1041A0008617A0F790911101989FC001112470E02B +:1041B0000E9437266038710528F46115710521F0D9 +:1041C000862F08958FE7089581E0089561E070E0FB +:1041D000F4CF803F21F40E946820819504C0813F84 +:1041E00029F40E9468208093DB010895823F21F426 +:1041F0000E946820819504C0833F29F40E946820B2 +:104200008093DA010895893F19F40E94B02005C017 +:104210008A3F31F40E94B02081958093DC0108959B +:104220008B3F21F40E94B020819504C08C3F29F47B +:104230000E94B0208093DD010895843F21F4809195 +:10424000D901816017C0853F21F48091D901826036 +:1042500011C0863F21F48091D90184600BC0873F53 +:1042600021F48091D901886005C0883F31F48091A4 +:10427000D90180618093D90108958D3F21F4809107 +:10428000D70181600BC08E3F21F48091D7018260FD +:1042900005C08F3F29F48091D70184608093D701B6 +:1042A0000895803F39F48091DB0187FF6CC0109244 +:1042B000DB0169C0813F29F48091DB011816BCF352 +:1042C00062C09091DA01823F29F497FF5CC010929E +:1042D000DA0159C0833F19F41916CCF354C0893F51 +:1042E00041F48091DC0118160CF04DC01092DC01F5 +:1042F0004AC08A3F29F48091DC0187FF44C0F6CF91 +:104300008B3F39F48091DD0187FF3DC01092DD01C4 +:104310003AC08C3F29F48091DD011816BCF333C0FC +:10432000843F21F48091D9018E7F17C0853F21F40D +:104330008091D9018D7F11C0863F21F48091D901F0 +:104340008B7F0BC0873F21F48091D901877F05C007 +:10435000883F31F48091D9018F7E8093D90113C0B9 +:104360008D3F21F48091D7018E7F0BC08E3F21F4C9 +:104370008091D7018D7F05C08F3F29F48091D701AF +:104380008B7F8093D7018091DA0181110EC08091DB +:10439000DB0181110AC08091DC01811106C080918E +:1043A000DD01811102C01092D801089589ED91E0DC +:1043B0000E94E5110E94401E9093D6018093D50182 +:1043C00008951F93CF93DF938091D5019091D601EB +:1043D0000E944C1E4091D801442321F020911401E9 +:1043E00030E006C0209115015AE0259F900111246C +:1043F0008217930708F482C08091DA011091DB01E3 +:10440000D091DC01C091DD01811107C0111105C0FF +:10441000D11103C0CC2309F471C04F3F19F04F5F95 +:104420004093D801181624F40E9468208093DA0182 +:104430008091DA0187FF05C00E94682081958093F2 +:10444000DA01111624F40E9468208093DB01809128 +:10445000DB0187FF05C00E94682081958093DB0106 +:104460006091DA01662339F11091DB01112319F112 +:10447000772767FD7095872F972F0E94482523E3A4 +:1044800033E343E35FE30E94AC250E94152560936C +:10449000DA01612F772767FD7095872F972F0E948C +:1044A000482523E333E343E35FE30E94AC250E9406 +:1044B00015256093DB011D1624F40E94B020809323 +:1044C000DC018091DC0187FF05C00E94B02081954E +:1044D0008093DC011C1624F40E94B0208093DD013F +:1044E0008091DD0187FF05C00E94B02081958093F7 +:1044F000DD01DF91CF911F910C94D621DF91CF91F7 +:104500001F910895E9EDF1E085E0DF011D928A95A4 +:10451000E9F71092D8011092D7010895833081F104 +:1045200028F4813059F08230D1F00895853009F4B3 +:1045300049C0B8F1863009F456C00895209115019C +:10454000862F90E0820F911D8F3F910520F4620F1E +:104550006093150108958FEF8093150108952091C0 +:104560001401862F90E0820F911D8F3F910520F45A +:10457000620F6093140108958FEF809314010895E2 +:1045800020911301862F90E0820F911D8F3F91059E +:1045900020F4620F6093130108958FEF809313014D +:1045A000089520911201862F90E0820F911D8F3F78 +:1045B000910520F4620F6093120108958FEF8093AC +:1045C0001201089520911101862F90E0820F911D14 +:1045D0008F3F910520F4620F6093110108958FEFD2 +:1045E00080931101089520911001862F90E0820F91 +:1045F000911D8F3F910520F4620F60931001089583 +:104600008FEF809310010895833011F128F48130E9 +:1046100049F0823091F00895853081F120F18630A3 +:10462000C1F1089580911501681720F4861B8093CD +:1046300015010895109215010895809114016817CD +:1046400020F4861B8093140108951092140108959C +:1046500080911301681720F4861B8093130108953D +:1046600010921301089580911201681720F4861B9F +:104670008093120108951092120108958091110102 +:10468000681720F4861B8093110108951092110180 +:10469000089580911001681720F4861B8093100103 +:1046A00008951092100108958D3109F442C020F54B +:1046B0008E3009F47CC070F4873009F45EC020F4B9 +:1046C000863009F442C033C08830D1F18B3009F410 +:1046D000AAC02DC0863109F4A6C038F4803109F48F +:1046E00070C0813109F47EC022C0893109F49BC0B9 +:1046F0008B3109F452C01BC0853309F48CC048F4D7 +:10470000873209F488C008F478C0893209F483C07C +:104710000EC0833438F48A3308F06DC0883309F44E +:1047200082C005C0833409F476C08834C1F080E0CB +:1047300008950E94CF240E94CE110E94D30A73C014 +:104740000E944D200E945F206EC08091CF01817F2A +:104750008E7F8093CF0181E08093DF0108950E94D6 +:104760003D172FEF83ED90E3215080409040E1F71B +:1047700000C000000E949A1E56C09091CF01892F60 +:104780008095817080FB90F919F09660986027C041 +:10479000997F977F9093CF0146C09091CF0191FB75 +:1047A000882780F921E0822780FB91F913C090913E +:1047B000CF0192FB882780F921E0822780FB92F9C4 +:1047C00009C09091CF0193FB882780F921E08227CF +:1047D00080FB93F99093CF01882329F19160909306 +:1047E000CF0108950E943D1780910D0191E0892726 +:1047F00080930D0118C027EC01C023EE280F61E063 +:1048000070E080E090E004C0660F771F881F991F5A +:104810002A95D2F704C061E070E080E090E00E9449 +:10482000391B0E943D1781E0089580E0089580E0E3 +:104830000895CF93C82F8091DF01813079F018F06F +:104840008230D1F184C0A0910E01B0910F018C9102 +:10485000813169F0823209F07CC009C0A0910E015B +:10486000B0910F018C91813111F0823249F48C2F7B +:104870000E94152481111DC08C2F0E9454231AC040 +:104880008C2F0E941724811114C0C43179F048F490 +:10489000CB3079F0C03109F060C082E08093DF0155 +:1048A00008C0C93219F0C83321F057C01092DF0197 +:1048B00054C081E0817053C0C93289F118F5C43108 +:1048C00071F1A8F4C73009F046C08AE08093150161 +:1048D00094E19093140193E090931301809312015B +:1048E00088E08093110188E28093100134C0CE519A +:1048F000C63088F5EC2FF0E0E65DFE4F80818093B6 +:10490000DE0129C0CE34E9F020F4CB3421F56AE091 +:1049100013C0C13579F0C235F1F461E00DC080916A +:10492000DE01882319F01092DE0115C081E080932A +:10493000DF0115C061E006C08091DE010E948E2279 +:104940000AC06AE08091DE010E94042304C0109234 +:10495000DF0180E004C081E002C080E0ABCFCF91F6 +:104960000895E1E8F0E08081886080838081816043 +:1049700080838FB7F89493E09093890090ED9093A3 +:1049800088008FBF0895EFE6F0E080818260808329 +:104990000895EFE6F0E080818D7F80830895EFE653 +:1049A000F0E0808192E08927808308951F920F9222 +:1049B0000FB60F9211242F933F934F935F936F93F2 +:1049C0007F938F939F93AF93BF93EF93FF938091C8 +:1049D000E0019091E10101969093E1018093E00163 +:1049E000811103C082E00E94D30AE091E101E695C3 +:1049F000E695F0E0EC51F84FE4918091E0018E13E0 +:104A000003C080E00E94D30AFF91EF91BF91AF9164 +:104A10009F918F917F916F915F914F913F912F91D6 +:104A20000F900FBE0F901F90189504D06894B1118D +:104A30008DC0089570D088F09F5790F0B92F9927B6 +:104A4000B751A0F0D1F0660F771F881F991F1AF099 +:104A5000BA95C9F712C0B13081F077D0B1E00895AE +:104A600074C0672F782F8827B85F39F0B93FCCF32F +:104A7000869577956795B395D9F73EF4909580958F +:104A8000709561957F4F8F4F9F4F0895E89409C0AF +:104A900097FB3EF490958095709561957F4F8F4F71 +:104AA0009F4F9923A9F0F92F96E9BB279395F69587 +:104AB000879577956795B795F111F8CFFAF4BB0F05 +:104AC00011F460FF1BC06F5F7F4F8F4F9F4F16C069 +:104AD000882311F096E911C0772321F09EE8872FF3 +:104AE000762F05C0662371F096E8862F70E060E0AF +:104AF0002AF09A95660F771F881FDAF7880F969528 +:104B0000879597F9089557FD9058440F551F59F010 +:104B10005F3F71F04795880F97FB991F61F09F3FAA +:104B200079F087950895121613061406551FF2CFD3 +:104B30004695F1DF08C0161617061806991FF1CF23 +:104B400086957105610508940895E894BB2766274A +:104B50007727CB0197F908950BD078C069D028F05A +:104B60006ED018F0952309F05AC05FC01124EECF23 +:104B7000CADFA0F3959FD1F3950F50E0551F629FB8 +:104B8000F001729FBB27F00DB11D639FAA27F00DA6 +:104B9000B11DAA1F649F6627B00DA11D661F829FCD +:104BA0002227B00DA11D621F739FB00DA11D621FB2 +:104BB000839FA00D611D221F749F3327A00D611DCF +:104BC000231F849F600D211D822F762F6A2F1124B1 +:104BD0009F5750408AF0E1F088234AF0EE0FFF1F04 +:104BE000BB1F661F771F881F91505040A9F79E3F3B +:104BF000510570F014C0AACF5F3FECF3983EDCF390 +:104C0000869577956795B795F795E7959F5FC1F777 +:104C1000FE2B880F911D9695879597F9089597F922 +:104C20009F6780E870E060E008959FEF80EC089552 +:104C300000240A941616170618060906089500247B +:104C40000A9412161306140605060895092E0394F5 +:104C5000000C11F4882352F0BB0F40F4BF2B11F469 +:104C600060FF04C06F5F7F4F8F4F9F4F089597FB8A +:104C7000072E16F4009407D077FD09D00E94512624 +:104C800007FC05D03EF4909581959F4F089570954F +:104C900061957F4F0895EE0FFF1F0590F491E02D71 +:104CA0000994AA1BBB1B51E107C0AA1FBB1FA61773 +:104CB000B70710F0A61BB70B881F991F5A95A9F7C5 +:104CC00080959095BC01CD010895F999FECF92BDD4 +:104CD00081BDF89A992780B50895A8E1B0E042E037 +:104CE00050E00C948826262FF999FECF1FBA92BD6A +:104CF00081BD20BD0FB6F894FA9AF99A0FBE0196BD +:104D000008950E947326272F0C947426DC01CB0192 +:104D1000FC01F999FECF06C0F2BDE1BDF89A3196CB +:104D200000B40D9241505040B8F70895F894FFCF69 +:104D30002002D50A620B3F0B0B0BD80A0101BC0104 +:104D400028080A03140A3F4D3639A50758072207D9 +:104D5000E9067C069506AE06C706010203040506B1 +:044D60000708090037 +:00000001FF diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.c b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.c new file mode 100644 index 000000000..d8911af41 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.c @@ -0,0 +1,783 @@ +#include "ergodox_ez.h" +#include "action_layer.h" +#include "keymap_common.h" +#include "keymap_extras/keymap_german.h" + +#define UC_ASYMPTOTICALLY_EQUAL_TO 0 +#define UC_DIVISION_SIGN 1 +#define UC_DOWNWARDS_ARROW 2 +#define UC_ELEMENT_OF 3 +#define UC_EMPTY_SET 4 +#define UC_FOR_ALL 5 +#define UC_GREEK_CAPITAL_LETTER_ALPHA 6 +#define UC_GREEK_CAPITAL_LETTER_BETA 7 +#define UC_GREEK_CAPITAL_LETTER_CHI 8 +#define UC_GREEK_CAPITAL_LETTER_DELTA 9 +#define UC_GREEK_CAPITAL_LETTER_EPSILON 10 +#define UC_GREEK_CAPITAL_LETTER_ETA 11 +#define UC_GREEK_CAPITAL_LETTER_GAMMA 12 +#define UC_GREEK_CAPITAL_LETTER_IOTA 13 +#define UC_GREEK_CAPITAL_LETTER_KAPPA 14 +#define UC_GREEK_CAPITAL_LETTER_LAMDA 15 +#define UC_GREEK_CAPITAL_LETTER_MU 16 +#define UC_GREEK_CAPITAL_LETTER_NU 17 +#define UC_GREEK_CAPITAL_LETTER_OMEGA 18 +#define UC_GREEK_CAPITAL_LETTER_OMICRON 19 +#define UC_GREEK_CAPITAL_LETTER_PHI 20 +#define UC_GREEK_CAPITAL_LETTER_PI 21 +#define UC_GREEK_CAPITAL_LETTER_PSI 22 +#define UC_GREEK_CAPITAL_LETTER_RHO 23 +#define UC_GREEK_CAPITAL_LETTER_SIGMA 24 +#define UC_GREEK_CAPITAL_LETTER_TAU 25 +#define UC_GREEK_CAPITAL_LETTER_THETA 26 +#define UC_GREEK_CAPITAL_LETTER_UPSILON 27 +#define UC_GREEK_CAPITAL_LETTER_XI 28 +#define UC_GREEK_CAPITAL_LETTER_ZETA 29 +#define UC_GREEK_SMALL_LETTER_ALPHA 30 +#define UC_GREEK_SMALL_LETTER_BETA 31 +#define UC_GREEK_SMALL_LETTER_CHI 32 +#define UC_GREEK_SMALL_LETTER_DELTA 33 +#define UC_GREEK_SMALL_LETTER_EPSILON 34 +#define UC_GREEK_SMALL_LETTER_ETA 35 +#define UC_GREEK_SMALL_LETTER_FINAL_SIGMA 36 +#define UC_GREEK_SMALL_LETTER_GAMMA 37 +#define UC_GREEK_SMALL_LETTER_IOTA 38 +#define UC_GREEK_SMALL_LETTER_KAPPA 39 +#define UC_GREEK_SMALL_LETTER_LAMDA 40 +#define UC_GREEK_SMALL_LETTER_MU 41 +#define UC_GREEK_SMALL_LETTER_NU 42 +#define UC_GREEK_SMALL_LETTER_OMEGA 43 +#define UC_GREEK_SMALL_LETTER_OMICRON 44 +#define UC_GREEK_SMALL_LETTER_PHI 45 +#define UC_GREEK_SMALL_LETTER_PI 46 +#define UC_GREEK_SMALL_LETTER_PSI 47 +#define UC_GREEK_SMALL_LETTER_RHO 48 +#define UC_GREEK_SMALL_LETTER_SIGMA 49 +#define UC_GREEK_SMALL_LETTER_TAU 50 +#define UC_GREEK_SMALL_LETTER_THETA 51 +#define UC_GREEK_SMALL_LETTER_UPSILON 52 +#define UC_GREEK_SMALL_LETTER_XI 53 +#define UC_GREEK_SMALL_LETTER_ZETA 54 +#define UC_INFINITY 55 +#define UC_LEFTWARDS_ARROW 56 +#define UC_MULTIPLICATION_SIGN 57 +#define UC_NOT_AN_ELEMENT_OF 58 +#define UC_NOT_EQUAL_TO 59 +#define UC_PLUS_MINUS_SIGN 60 +#define UC_RIGHTWARDS_ARROW 61 +#define UC_SUBSCRIPT_EIGHT 62 +#define UC_SUBSCRIPT_FIVE 63 +#define UC_SUBSCRIPT_FOUR 64 +#define UC_SUBSCRIPT_NINE 65 +#define UC_SUBSCRIPT_ONE 66 +#define UC_SUBSCRIPT_SEVEN 67 +#define UC_SUBSCRIPT_SIX 68 +#define UC_SUBSCRIPT_THREE 69 +#define UC_SUBSCRIPT_TWO 70 +#define UC_SUBSCRIPT_ZERO 71 +#define UC_SUPERSCRIPT_EIGHT 72 +#define UC_SUPERSCRIPT_FIVE 73 +#define UC_SUPERSCRIPT_FOUR 74 +#define UC_SUPERSCRIPT_LATIN_SMALL_LETTER_N 75 +#define UC_SUPERSCRIPT_NINE 76 +#define UC_SUPERSCRIPT_ONE 77 +#define UC_SUPERSCRIPT_SEVEN 78 +#define UC_SUPERSCRIPT_SIX 79 +#define UC_SUPERSCRIPT_THREE 80 +#define UC_SUPERSCRIPT_TWO 81 +#define UC_SUPERSCRIPT_ZERO 82 +#define UC_THERE_DOES_NOT_EXIST 83 +#define UC_THERE_EXISTS 84 +#define UC_UPWARDS_ARROW 85 +#define UC_VULGAR_FRACTION_ONE_EIGHTH 86 +#define UC_VULGAR_FRACTION_ONE_FIFTH 87 +#define UC_VULGAR_FRACTION_ONE_HALF 88 +#define UC_VULGAR_FRACTION_ONE_QUARTER 89 +#define UC_VULGAR_FRACTION_ONE_SIXTH 90 +#define UC_VULGAR_FRACTION_ONE_THIRD 91 +#define UC_VULGAR_FRACTION_THREE_QUARTERS 92 +#define UC_VULGAR_FRACTION_TWO_THIRDS 93 +#define UM 94 + +#define L0 0 // layer_0 +#define L1 1 // layer_1 +#define L2 2 // layer_2 +#define L3 3 // layer_3 +#define L4 4 // layer_4 +#define L5 5 // layer_5 +#define L6 6 // layer_6 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* + * .------------------------------------.------------------------------------. + * |MO(5)| 1 | 2 | 3 | 4 | 5 |ACUT | GRV | 6 | 7 | 8 | 9 | 0 |CIRC | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * |MO(4)| X | P | F | W | G |HOME |TG(2)| H | J | K | L | Q | Z | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * |MO(1)| U | I | A | E | O |-----!-----! S | N | R | T | D | SS | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * |MO(3)| UE | OE | AE | C | V |END | TAB | B | M |COMM| DOT| UP | Y | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | |LGUI|LALT|LCTL| !RCTL|RALT|LEFT|DOWN|RGHT| + * '------------------------' '------------------------' + * .-----------. .-----------. + * |INS |TG(2)| !M(UM)|DELT | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | APP | ! PGUP| ! ! + * ! ! !-----! !-----! ! ! + * |BSPC |LSFT | ESC | ! PGDN|ENTER|SPACE| + * '-----------------' '-----------------' + */ +[L0] = KEYMAP( + MO(5), DE_1, DE_2, DE_3, DE_4, DE_5, DE_ACUT, + MO(4), DE_X, DE_P, DE_F, DE_W, DE_G, KC_HOME, + MO(1), DE_U, DE_I, DE_A, DE_E, DE_O, + MO(3), DE_UE, DE_OE, DE_AE, DE_C, DE_V, KC_END, + KC_TRNS, KC_TRNS, KC_LGUI, KC_LALT, KC_LCTL, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_INS, TG(2), + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_APP, + /*-*/ /*-*/ /*-*/ /*-*/ KC_BSPC, KC_LSFT, KC_ESC, + DE_GRV, DE_6, DE_7, DE_8, DE_9, DE_0, DE_CIRC, + TG(2), DE_H, DE_J, DE_K, DE_L, DE_Q, DE_Z, + /*-*/ DE_S, DE_N, DE_R, DE_T, DE_D, DE_SS, + KC_TAB, DE_B, DE_M, DE_COMM, DE_DOT, KC_UP, DE_Y, + /*-*/ /*-*/ KC_RCTL, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT, + M(UM), KC_DELT, + KC_PGUP, + KC_PGDN, KC_ENTER, KC_SPACE +), +/* + * .------------------------------------.------------------------------------. + * | |EXLM|DQOT|PARA| | | | | | | | |RING| | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | |ASTR|PIPE|SLSH|LCBR|RCBR| | |HASH|LESS|MORE| |DQOT| | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | |UNDS|MINS|AMPR|LBRC|RBRC|-----!-----!DLR |LPRN|RPRN|TILD|QUOT| QST | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | |PLUS|EQL | | | | |BSLS|PERC|SCLN|COLN| ↑ | | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | ← | ↓ | → | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L1] = KEYMAP( + KC_TRNS, DE_EXLM, DE_DQOT, DE_PARA, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, DE_ASTR, DE_PIPE, DE_SLSH, DE_LCBR, DE_RCBR, KC_TRNS, + KC_TRNS, DE_UNDS, DE_MINS, DE_AMPR, DE_LBRC, DE_RBRC, + KC_TRNS, KC_TRNS, DE_PLUS, DE_EQL, 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, DE_RING, KC_TRNS, + KC_TRNS, DE_HASH, DE_LESS, DE_MORE, KC_TRNS, DE_DQOT, KC_TRNS, + /*-*/ DE_DLR, DE_LPRN, DE_RPRN, DE_TILD, DE_QUOT, DE_QST, + KC_TRNS, DE_BSLS, DE_PERC, DE_SCLN, DE_COLN, M(UC_UPWARDS_ARROW), KC_TRNS, + /*-*/ /*-*/ KC_TRNS, KC_TRNS, M(UC_LEFTWARDS_ARROW), M(UC_DOWNWARDS_ARROW), M(UC_RIGHTWARDS_ARROW), + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | F11 | F12 | F6 | F7 | F8 | F9 |F10 |PEQL | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | | | | | | | | | P7 | P8 | P9 |PAST|PSLS | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | |-----!-----! | P4 | P5 | P6 |PMNS|PMNS | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | | | NLCK| | P1 | P2 | P3 |PPLS|PPLS | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! P0 |PCMM|PDOT|PENT|PENT| + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L2] = KEYMAP( + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PEQL, + KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PAST, KC_PSLS, + /*-*/ KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_PMNS, + KC_NLCK, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_PPLS, + /*-*/ /*-*/ KC_P0, KC_PCMM, KC_PDOT, KC_PENT, KC_PENT, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * | | ¹ | ² | ³ | ⁴ | ⁵ | ∀ | | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | × | ½ | ÷ | ¼ | ⅕ | | | ⅙ | | ⅛ | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | ± | AT |EURO| ∅ |-----!-----! ∞ | ⁿ | ∃ | ∈ | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | ⅓ | ≠ | ⅔ | ¾ | ≃ | | |EXLM| | ∄ | ∉ | | | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L3] = KEYMAP( + KC_TRNS, M(UC_SUPERSCRIPT_ONE), M(UC_SUPERSCRIPT_TWO), M(UC_SUPERSCRIPT_THREE), M(UC_SUPERSCRIPT_FOUR), M(UC_SUPERSCRIPT_FIVE), M(UC_FOR_ALL), + KC_TRNS, M(UC_MULTIPLICATION_SIGN), M(UC_VULGAR_FRACTION_ONE_HALF), M(UC_DIVISION_SIGN), M(UC_VULGAR_FRACTION_ONE_QUARTER), M(UC_VULGAR_FRACTION_ONE_FIFTH), KC_TRNS, + KC_TRNS, KC_TRNS, M(UC_PLUS_MINUS_SIGN), DE_AT, DE_EURO, M(UC_EMPTY_SET), + KC_TRNS, M(UC_VULGAR_FRACTION_ONE_THIRD), M(UC_NOT_EQUAL_TO), M(UC_VULGAR_FRACTION_TWO_THIRDS), M(UC_VULGAR_FRACTION_THREE_QUARTERS), M(UC_ASYMPTOTICALLY_EQUAL_TO), 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, M(UC_SUPERSCRIPT_SIX), M(UC_SUPERSCRIPT_SEVEN), M(UC_SUPERSCRIPT_EIGHT), M(UC_SUPERSCRIPT_NINE), M(UC_SUPERSCRIPT_ZERO), KC_TRNS, + KC_TRNS, M(UC_VULGAR_FRACTION_ONE_SIXTH), KC_TRNS, M(UC_VULGAR_FRACTION_ONE_EIGHTH), KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ M(UC_INFINITY), M(UC_SUPERSCRIPT_LATIN_SMALL_LETTER_N), M(UC_THERE_EXISTS), M(UC_ELEMENT_OF), KC_TRNS, KC_TRNS, + KC_TRNS, DE_EXLM, KC_TRNS, M(UC_THERE_DOES_NOT_EXIST), M(UC_NOT_AN_ELEMENT_OF), 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 +), +/* + * .------------------------------------.------------------------------------. + * | | ₁ | ₂ | ₃ | ₄ | ₅ | | | ₆ | ₇ | ₈ | ₉ | ₀ | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | χ | π | φ | ω | γ | | | η | ξ | κ | λ | | ζ | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | υ | ι | α | ε | ο |-----!-----! σ | ν | ρ | τ | δ | ς | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | θ | | | | | | β | μ | | | | ψ | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L4] = KEYMAP( + KC_TRNS, M(UC_SUBSCRIPT_ONE), M(UC_SUBSCRIPT_TWO), M(UC_SUBSCRIPT_THREE), M(UC_SUBSCRIPT_FOUR), M(UC_SUBSCRIPT_FIVE), KC_TRNS, + KC_TRNS, M(UC_GREEK_SMALL_LETTER_CHI), M(UC_GREEK_SMALL_LETTER_PI), M(UC_GREEK_SMALL_LETTER_PHI), M(UC_GREEK_SMALL_LETTER_OMEGA), M(UC_GREEK_SMALL_LETTER_GAMMA), KC_TRNS, + KC_TRNS, M(UC_GREEK_SMALL_LETTER_UPSILON), M(UC_GREEK_SMALL_LETTER_IOTA), M(UC_GREEK_SMALL_LETTER_ALPHA), M(UC_GREEK_SMALL_LETTER_EPSILON), M(UC_GREEK_SMALL_LETTER_OMICRON), + KC_TRNS, KC_TRNS, M(UC_GREEK_SMALL_LETTER_THETA), 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, M(UC_SUBSCRIPT_SIX), M(UC_SUBSCRIPT_SEVEN), M(UC_SUBSCRIPT_EIGHT), M(UC_SUBSCRIPT_NINE), M(UC_SUBSCRIPT_ZERO), KC_TRNS, + KC_TRNS, M(UC_GREEK_SMALL_LETTER_ETA), M(UC_GREEK_SMALL_LETTER_XI), M(UC_GREEK_SMALL_LETTER_KAPPA), M(UC_GREEK_SMALL_LETTER_LAMDA), KC_TRNS, M(UC_GREEK_SMALL_LETTER_ZETA), + /*-*/ M(UC_GREEK_SMALL_LETTER_SIGMA), M(UC_GREEK_SMALL_LETTER_NU), M(UC_GREEK_SMALL_LETTER_RHO), M(UC_GREEK_SMALL_LETTER_TAU), M(UC_GREEK_SMALL_LETTER_DELTA), M(UC_GREEK_SMALL_LETTER_FINAL_SIGMA), + KC_TRNS, M(UC_GREEK_SMALL_LETTER_BETA), M(UC_GREEK_SMALL_LETTER_MU), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_GREEK_SMALL_LETTER_PSI), + /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * | | | | | | | | | | | | | | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | Χ | Π | Φ | Ω | Γ | | | Η | Ξ | Κ | Λ | | Ζ | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | Υ | Ι | Α | Ε | Ο |-----!-----! Σ | Ν | Ρ | Τ | Δ | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | Θ | | | | | | Β | Μ | | | | Ψ | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L5] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_CHI), M(UC_GREEK_CAPITAL_LETTER_PI), M(UC_GREEK_CAPITAL_LETTER_PHI), M(UC_GREEK_CAPITAL_LETTER_OMEGA), M(UC_GREEK_CAPITAL_LETTER_GAMMA), KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_UPSILON), M(UC_GREEK_CAPITAL_LETTER_IOTA), M(UC_GREEK_CAPITAL_LETTER_ALPHA), M(UC_GREEK_CAPITAL_LETTER_EPSILON), M(UC_GREEK_CAPITAL_LETTER_OMICRON), + KC_TRNS, KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_THETA), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_ETA), M(UC_GREEK_CAPITAL_LETTER_XI), M(UC_GREEK_CAPITAL_LETTER_KAPPA), M(UC_GREEK_CAPITAL_LETTER_LAMDA), KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_ZETA), + /*-*/ M(UC_GREEK_CAPITAL_LETTER_SIGMA), M(UC_GREEK_CAPITAL_LETTER_NU), M(UC_GREEK_CAPITAL_LETTER_RHO), M(UC_GREEK_CAPITAL_LETTER_TAU), M(UC_GREEK_CAPITAL_LETTER_DELTA), KC_TRNS, + KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_BETA), M(UC_GREEK_CAPITAL_LETTER_MU), KC_TRNS, KC_TRNS, KC_TRNS, M(UC_GREEK_CAPITAL_LETTER_PSI), + /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* + * .------------------------------------.------------------------------------. + * | | | | | | | | | | | | | | | + * !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + * | | | | | | | | | | | | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | |-----!-----! | | | | | | + * !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + * | | | | | | | | | | | | | | | + * '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + * | | | | | | ! | | | | | + * '------------------------' '------------------------' + * .-----------. .-----------. + * | | | ! | | + * .-----+-----+-----! !-----+-----+-----. + * ! ! | | ! | ! ! + * ! ! !-----! !-----! ! ! + * | | | | ! | | | + * '-----------------' '-----------------' + */ +[L6] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, + /*-*/ /*-*/ /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + /*-*/ /*-*/ KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +}; + +const uint16_t PROGMEM fn_actions[] = {}; + +#define UC_MODE_WIN 0 +#define UC_MODE_LINUX 1 +#define UC_MODE_OSX 2 + +// TODO: allow default mode to be configured +static uint16_t unicode_mode = UC_MODE_WIN; + +uint16_t hextokeycode(uint8_t hex) { + if (hex == 0x0) { + return KC_P0; + } + if (hex < 0xA) { + return KC_P1 + (hex - 0x1); + } + return KC_A + (hex - 0xA); +} + +void unicode_action_function(uint16_t hi, uint16_t lo) { + switch (unicode_mode) { + case UC_MODE_WIN: + register_code(KC_LALT); + + register_code(KC_PPLS); + unregister_code(KC_PPLS); + + register_code(hextokeycode((hi & 0xF0) >> 4)); + unregister_code(hextokeycode((hi & 0xF0) >> 4)); + register_code(hextokeycode((hi & 0x0F))); + unregister_code(hextokeycode((hi & 0x0F))); + register_code(hextokeycode((lo & 0xF0) >> 4)); + unregister_code(hextokeycode((lo & 0xF0) >> 4)); + register_code(hextokeycode((lo & 0x0F))); + unregister_code(hextokeycode((lo & 0x0F))); + + unregister_code(KC_LALT); + break; + case UC_MODE_LINUX: + register_code(KC_LCTL); + register_code(KC_LSFT); + + register_code(KC_U); + unregister_code(KC_U); + + register_code(hextokeycode((hi & 0xF0) >> 4)); + unregister_code(hextokeycode((hi & 0xF0) >> 4)); + register_code(hextokeycode((hi & 0x0F))); + unregister_code(hextokeycode((hi & 0x0F))); + register_code(hextokeycode((lo & 0xF0) >> 4)); + unregister_code(hextokeycode((lo & 0xF0) >> 4)); + register_code(hextokeycode((lo & 0x0F))); + unregister_code(hextokeycode((lo & 0x0F))); + + unregister_code(KC_LCTL); + unregister_code(KC_LSFT); + break; + case UC_MODE_OSX: + break; + } +} + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { + if (!record->event.pressed) { + return MACRO_NONE; + } + // MACRODOWN only works in this function + switch(id) { + case UM: + unicode_mode = (unicode_mode + 1) % 2; + break; + +case UC_GREEK_SMALL_LETTER_OMICRON: + unicode_action_function(0x03, 0xbf); + break; +case UC_LEFTWARDS_ARROW: + unicode_action_function(0x21, 0x90); + break; +case UC_GREEK_CAPITAL_LETTER_RHO: + unicode_action_function(0x03, 0xa1); + break; +case UC_SUBSCRIPT_THREE: + unicode_action_function(0x20, 0x83); + break; +case UC_VULGAR_FRACTION_ONE_EIGHTH: + unicode_action_function(0x21, 0x5b); + break; +case UC_GREEK_SMALL_LETTER_LAMDA: + unicode_action_function(0x03, 0xbb); + break; +case UC_VULGAR_FRACTION_ONE_THIRD: + unicode_action_function(0x21, 0x53); + break; +case UC_GREEK_SMALL_LETTER_XI: + unicode_action_function(0x03, 0xbe); + break; +case UC_THERE_DOES_NOT_EXIST: + unicode_action_function(0x22, 0x04); + break; +case UC_SUPERSCRIPT_ONE: + unicode_action_function(0x00, 0xb9); + break; +case UC_GREEK_SMALL_LETTER_BETA: + unicode_action_function(0x03, 0xb2); + break; +case UC_SUBSCRIPT_FIVE: + unicode_action_function(0x20, 0x85); + break; +case UC_GREEK_CAPITAL_LETTER_IOTA: + unicode_action_function(0x03, 0x99); + break; +case UC_VULGAR_FRACTION_ONE_FIFTH: + unicode_action_function(0x21, 0x55); + break; +case UC_GREEK_SMALL_LETTER_PSI: + unicode_action_function(0x03, 0xc8); + break; +case UC_SUBSCRIPT_NINE: + unicode_action_function(0x20, 0x89); + break; +case UC_SUPERSCRIPT_FOUR: + unicode_action_function(0x20, 0x74); + break; +case UC_RIGHTWARDS_ARROW: + unicode_action_function(0x21, 0x92); + break; +case UC_SUPERSCRIPT_SIX: + unicode_action_function(0x20, 0x76); + break; +case UC_DOWNWARDS_ARROW: + unicode_action_function(0x21, 0x93); + break; +case UC_GREEK_SMALL_LETTER_PI: + unicode_action_function(0x03, 0xc0); + break; +case UC_SUPERSCRIPT_TWO: + unicode_action_function(0x00, 0xb2); + break; +case UC_GREEK_CAPITAL_LETTER_OMEGA: + unicode_action_function(0x03, 0xa9); + break; +case UC_GREEK_CAPITAL_LETTER_PSI: + unicode_action_function(0x03, 0xa8); + break; +case UC_SUBSCRIPT_FOUR: + unicode_action_function(0x20, 0x84); + break; +case UC_GREEK_CAPITAL_LETTER_NU: + unicode_action_function(0x03, 0x9d); + break; +case UC_DIVISION_SIGN: + unicode_action_function(0x00, 0xf7); + break; +case UC_GREEK_SMALL_LETTER_SIGMA: + unicode_action_function(0x03, 0xc3); + break; +case UC_GREEK_SMALL_LETTER_RHO: + unicode_action_function(0x03, 0xc1); + break; +case UC_VULGAR_FRACTION_ONE_SIXTH: + unicode_action_function(0x21, 0x59); + break; +case UC_GREEK_SMALL_LETTER_GAMMA: + unicode_action_function(0x03, 0xb3); + break; +case UC_VULGAR_FRACTION_TWO_THIRDS: + unicode_action_function(0x21, 0x54); + break; +case UC_GREEK_SMALL_LETTER_NU: + unicode_action_function(0x03, 0xbd); + break; +case UC_GREEK_SMALL_LETTER_ZETA: + unicode_action_function(0x03, 0xb6); + break; +case UC_GREEK_SMALL_LETTER_EPSILON: + unicode_action_function(0x03, 0xb5); + break; +case UC_GREEK_SMALL_LETTER_KAPPA: + unicode_action_function(0x03, 0xba); + break; +case UC_SUPERSCRIPT_SEVEN: + unicode_action_function(0x20, 0x77); + break; +case UC_GREEK_CAPITAL_LETTER_PI: + unicode_action_function(0x03, 0xa0); + break; +case UC_GREEK_SMALL_LETTER_FINAL_SIGMA: + unicode_action_function(0x03, 0xc2); + break; +case UC_GREEK_CAPITAL_LETTER_XI: + unicode_action_function(0x03, 0x9e); + break; +case UC_GREEK_SMALL_LETTER_THETA: + unicode_action_function(0x03, 0xb8); + break; +case UC_GREEK_SMALL_LETTER_ETA: + unicode_action_function(0x03, 0xb7); + break; +case UC_SUBSCRIPT_TWO: + unicode_action_function(0x20, 0x82); + break; +case UC_ASYMPTOTICALLY_EQUAL_TO: + unicode_action_function(0x22, 0x43); + break; +case UC_GREEK_SMALL_LETTER_ALPHA: + unicode_action_function(0x03, 0xb1); + break; +case UC_GREEK_CAPITAL_LETTER_PHI: + unicode_action_function(0x03, 0xa6); + break; +case UC_GREEK_SMALL_LETTER_PHI: + unicode_action_function(0x03, 0xc6); + break; +case UC_INFINITY: + unicode_action_function(0x22, 0x1e); + break; +case UC_GREEK_CAPITAL_LETTER_OMICRON: + unicode_action_function(0x03, 0x9f); + break; +case UC_ELEMENT_OF: + unicode_action_function(0x22, 0x08); + break; +case UC_MULTIPLICATION_SIGN: + unicode_action_function(0x00, 0xd7); + break; +case UC_SUBSCRIPT_ZERO: + unicode_action_function(0x20, 0x80); + break; +case UC_GREEK_CAPITAL_LETTER_SIGMA: + unicode_action_function(0x03, 0xa3); + break; +case UC_GREEK_SMALL_LETTER_OMEGA: + unicode_action_function(0x03, 0xc9); + break; +case UC_SUBSCRIPT_ONE: + unicode_action_function(0x20, 0x81); + break; +case UC_GREEK_CAPITAL_LETTER_ZETA: + unicode_action_function(0x03, 0x96); + break; +case UC_GREEK_SMALL_LETTER_TAU: + unicode_action_function(0x03, 0xc4); + break; +case UC_SUPERSCRIPT_FIVE: + unicode_action_function(0x20, 0x75); + break; +case UC_THERE_EXISTS: + unicode_action_function(0x22, 0x03); + break; +case UC_PLUS_MINUS_SIGN: + unicode_action_function(0x00, 0xb1); + break; +case UC_VULGAR_FRACTION_THREE_QUARTERS: + unicode_action_function(0x00, 0xbe); + break; +case UC_SUPERSCRIPT_THREE: + unicode_action_function(0x00, 0xb3); + break; +case UC_EMPTY_SET: + unicode_action_function(0x22, 0x05); + break; +case UC_UPWARDS_ARROW: + unicode_action_function(0x21, 0x91); + break; +case UC_SUPERSCRIPT_NINE: + unicode_action_function(0x20, 0x79); + break; +case UC_GREEK_SMALL_LETTER_DELTA: + unicode_action_function(0x03, 0xb4); + break; +case UC_GREEK_SMALL_LETTER_MU: + unicode_action_function(0x03, 0xbc); + break; +case UC_GREEK_CAPITAL_LETTER_KAPPA: + unicode_action_function(0x03, 0x9a); + break; +case UC_SUBSCRIPT_EIGHT: + unicode_action_function(0x20, 0x88); + break; +case UC_GREEK_CAPITAL_LETTER_ALPHA: + unicode_action_function(0x03, 0x91); + break; +case UC_SUBSCRIPT_SEVEN: + unicode_action_function(0x20, 0x87); + break; +case UC_GREEK_CAPITAL_LETTER_BETA: + unicode_action_function(0x03, 0x92); + break; +case UC_GREEK_CAPITAL_LETTER_ETA: + unicode_action_function(0x03, 0x97); + break; +case UC_SUPERSCRIPT_EIGHT: + unicode_action_function(0x20, 0x78); + break; +case UC_SUPERSCRIPT_ZERO: + unicode_action_function(0x20, 0x70); + break; +case UC_NOT_AN_ELEMENT_OF: + unicode_action_function(0x22, 0x09); + break; +case UC_GREEK_SMALL_LETTER_UPSILON: + unicode_action_function(0x03, 0xc5); + break; +case UC_NOT_EQUAL_TO: + unicode_action_function(0x22, 0x60); + break; +case UC_GREEK_CAPITAL_LETTER_CHI: + unicode_action_function(0x03, 0xa7); + break; +case UC_FOR_ALL: + unicode_action_function(0x22, 0x00); + break; +case UC_GREEK_CAPITAL_LETTER_TAU: + unicode_action_function(0x03, 0xa4); + break; +case UC_VULGAR_FRACTION_ONE_QUARTER: + unicode_action_function(0x00, 0xbc); + break; +case UC_GREEK_SMALL_LETTER_CHI: + unicode_action_function(0x03, 0xc7); + break; +case UC_GREEK_CAPITAL_LETTER_THETA: + unicode_action_function(0x03, 0x98); + break; +case UC_GREEK_SMALL_LETTER_IOTA: + unicode_action_function(0x03, 0xb9); + break; +case UC_GREEK_CAPITAL_LETTER_LAMDA: + unicode_action_function(0x03, 0x9b); + break; +case UC_SUPERSCRIPT_LATIN_SMALL_LETTER_N: + unicode_action_function(0x20, 0x7f); + break; +case UC_GREEK_CAPITAL_LETTER_UPSILON: + unicode_action_function(0x03, 0xa5); + break; +case UC_GREEK_CAPITAL_LETTER_MU: + unicode_action_function(0x03, 0x9c); + break; +case UC_GREEK_CAPITAL_LETTER_EPSILON: + unicode_action_function(0x03, 0x95); + break; +case UC_GREEK_CAPITAL_LETTER_GAMMA: + unicode_action_function(0x03, 0x93); + break; +case UC_SUBSCRIPT_SIX: + unicode_action_function(0x20, 0x86); + break; +case UC_GREEK_CAPITAL_LETTER_DELTA: + unicode_action_function(0x03, 0x94); + break; +case UC_VULGAR_FRACTION_ONE_HALF: + unicode_action_function(0x00, 0xbd); + break; + default: + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + case L1: + ergodox_right_led_1_on(); + break; + case L2: + ergodox_right_led_2_on(); + break; + case L3: + ergodox_right_led_3_on(); + break; + case L4: + ergodox_right_led_1_on(); + ergodox_right_led_2_on(); + break; + case L5: + ergodox_right_led_1_on(); + ergodox_right_led_3_on(); + break; + // case L6: + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + // case L7: + // ergodox_right_led_1_on(); + // ergodox_right_led_2_on(); + // ergodox_right_led_3_on(); + // break; + default: + ergodox_board_led_off(); + break; + } +}; diff --git a/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.md b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.md new file mode 100644 index 000000000..2c9e0a837 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/german-manuneo/keymap.md @@ -0,0 +1,188 @@ +# ManuNeo Ergodox Keyboard Layout + +Compile this file to a `keymap.c` file using `compile_keymap.py` + + python compile_keymap.py keymaps/german-manuneo/keymap.md + +Tested with python 2.7 and python 3.4 + + +# Layout Config + + { + "layout": "ergodox_ez", + "keymaps_includes": [ + "ergodox_ez.h", + "action_layer.h", + "keymap_common.h", + "keymap_extras/keymap_german.h", + ], + "key_prefixes": ["DE_", "KC_"], + "macros": { + // TODO: implement macros + // "MUC": "", + }, + // TODO: implement default unicode mode + } + + +# Layers + + +## Layer 0 + + .------------------------------------.------------------------------------. + |MO(5)| 1 | 2 | 3 | 4 | 5 |ACUT | GRV | 6 | 7 | 8 | 9 | 0 |CIRC | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + |MO(4)| X | P | F | W | G |HOME |TG(2)| H | J | K | L | Q | Z | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |MO(1)| U | I | A | E | O |-----!-----! S | N | R | T | D | SS | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + |MO(3)| UE | OE | AE | C | V |END | TAB | B | M |COMM| DOT| UP | Y | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | |LGUI|LALT|LCTL| !RCTL|RALT|LEFT|DOWN|RGHT| + '------------------------' '------------------------' + .-----------. .-----------. + |INS |TG(2)| !M(UM)|DELT | + .-----+-----+-----! !-----+-----+-----. + ! ! | APP | ! PGUP| ! ! + ! ! !-----! !-----! ! ! + |BSPC |LSFT | ESC | ! PGDN|ENTER|SPACE| + '-----------------' '-----------------' + + +## Layer 1 + + .------------------------------------.------------------------------------. + | |EXLM|DQOT|PARA| | | | | | | | |RING| | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | |ASTR|PIPE|SLSH|LCBR|RCBR| | |HASH|LESS|MORE| |DQOT| | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | |UNDS|MINS|AMPR|LBRC|RBRC|-----!-----!DLR |LPRN|RPRN|TILD|QUOT| QST | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | |PLUS|EQL | | | | |BSLS|PERC|SCLN|COLN| ↑ | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | ← | ↓ | → | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + + +## Layer 2 + + .------------------------------------.------------------------------------. + | | F1 | F2 | F3 | F4 | F5 | F11 | F12 | F6 | F7 | F8 | F9 |F10 |PEQL | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | | | | | | | | | P7 | P8 | P9 |PAST|PSLS | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | |-----!-----! | P4 | P5 | P6 |PMNS|PMNS | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | | | NLCK| | P1 | P2 | P3 |PPLS|PPLS | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! P0 |PCMM|PDOT|PENT|PENT| + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + + + +## Layer 3 + +http://symbolcodes.tlt.psu.edu/bylanguage/mathchart.html + + .------------------------------------.------------------------------------. + | | ¹ | ² | ³ | ⁴ | ⁵ | ∀ | | ⁶ | ⁷ | ⁸ | ⁹ | ⁰ | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | × | ½ | ÷ | ¼ | ⅕ | | | ⅙ | | ⅛ | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | ± | AT |EURO| ∅ |-----!-----! ∞ | ⁿ | ∃ | ∈ | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | ⅓ | ≠ | ⅔ | ¾ | ≃ | | |EXLM| | ∄ | ∉ | | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + + +## Layer 4 + + + .------------------------------------.------------------------------------. + | | ₁ | ₂ | ₃ | ₄ | ₅ | | | ₆ | ₇ | ₈ | ₉ | ₀ | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | χ | π | φ | ω | γ | | | η | ξ | κ | λ | | ζ | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | υ | ι | α | ε | ο |-----!-----! σ | ν | ρ | τ | δ | ς | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | θ | | | | | | β | μ | | | | ψ | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + + +## Layer 5 + + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | Χ | Π | Φ | Ω | Γ | | | Η | Ξ | Κ | Λ | | Ζ | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | Υ | Ι | Α | Ε | Ο |-----!-----! Σ | Ν | Ρ | Τ | Δ | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | Θ | | | | | | Β | Μ | | | | Ψ | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + + +## Layer 6 + + .------------------------------------.------------------------------------. + | | | | | | | | | | | | | | | + !-----+----+----+----+----+----------!-----+----+----+----+----+----+-----! + | | | | | | | | | | | | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | |-----!-----! | | | | | | + !-----+----+----+----x----x----! ! !----x----x----+----+----+-----! + | | | | | | | | | | | | | | | + '-----+----+----+----+----+----------'----------+----+----+----+----+-----' + | | | | | | ! | | | | | + '------------------------' '------------------------' + .-----------. .-----------. + | | | ! | | + .-----+-----+-----! !-----+-----+-----. + ! ! | | ! | ! ! + ! ! !-----! !-----! ! ! + | | | | ! | | | + '-----------------' '-----------------' + diff --git a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c index b31d0edcd..dffcb21da 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/keymap.c +++ b/keyboard/ergodox_ez/keymaps/osx_de/keymap.c @@ -13,9 +13,11 @@ #define M_CTRL_CMDV 1 #define M_CTRL_CMDC 2 #define M_MEH_SH_ACUT 3 -#define M_DE_PLUS_CTRLALT 12 -#define M_DE_CIRC_CTRLCMD 13 +#define M_DE_OSX_PLUS_CTRLALT 12 +#define M_DE_OSX_CIRC_CTRLCMD 13 #define M_TOGGLE_5 14 +#define M_CTL_SFT_HASH 15 +#define M_LGUI_SHFT 16 #define SM_SMILE 4 #define SM_SMIRK 5 @@ -30,19 +32,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * - * ,--------------------------------------------------. ,--------------------------------------------------. - * | ESC | 1 | 2 | 3 | 4 | 5 |CMD-V | |CMD-C | 6 | 7 | 8 | 9 | 0 | ß | - * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | TAB | Q | W | E | R | T | CMD | | CMD | Z | U | I | O | P | ü | - * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | LALT | A | S | D | F | G |------| |------| H | J | K | L | ö | ä/RALT| - * |--------+------+------+------+------+------| LALT | | RALT |------+------+------+------+------+--------| - * | LShift |Y/Ctrl| X | C | V | B | | | | N | M | , | . |-/Ctrl| RShift | - * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | ! | ? | | | | | \ | [ | ] | | | # | F12 | + * | | < | > | ! | ? | | | | | \ | [ | ] | < | > | ! | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | # | $ | \ | / | . |------| |------| / | ( | ) | { | } | | + * | | # | $ | \ | / | . |------| |------| / | ( | ) | { | } | # | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | | ^ | % | | | ~ | | | | & | < | > | " | ' | ? | + * | | | ^ | % | | | ~ | | | | | | ~ | ^ | UP | | $ | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' - * | | | | | | | | | . | ! | | + * | | | | | | | ' | LEFT| DOWN | RIGHT | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. - * | | | | | | + * | | | | F13 | F12 | * ,------|------|------| |------+------+------. - * | | | | | | | | + * | | | | | F14 | | | * | | |------| |------| | | - * | | | | | | | | + * | | | | | F15 | | | * `--------------------' `--------------------' */ // SYMBOLS [SYMB] = KEYMAP( // left hand KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, - KC_TRNS,DE_LESS,DE_MORE,DE_EXLM,DE_QST, KC_TRNS,KC_TRNS, - KC_TRNS,DE_HASH,DE_DLR, DE_BSLS,DE_SLSH,KC_DOT, - KC_TRNS,KC_TRNS,DE_LESS,DE_PERC,DE_PIPE,DE_TILD,KC_TRNS, + KC_TRNS,DE_OSX_LESS,DE_OSX_MORE,DE_OSX_EXLM,DE_OSX_QST, KC_TRNS,KC_TRNS, + KC_TRNS,DE_OSX_HASH,DE_OSX_DLR, DE_OSX_BSLS,DE_OSX_SLSH,KC_DOT, + KC_TRNS,KC_TRNS,DE_OSX_LESS,DE_OSX_PERC,DE_OSX_PIPE,DE_OSX_TILD,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_DEL,KC_TRNS, // right hand - M(M_TOGGLE_5), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), LALT(KC_7), DE_HASH, KC_F12, - DE_SLSH, DE_LPRN, DE_RPRN, LALT(KC_8), LALT(KC_9), KC_TRNS, - KC_TRNS, DE_AMPR, KC_GRV, LSFT(KC_GRV), DE_DQOT, DE_QUOT, DE_QST, - KC_TRNS,KC_DOT, KC_EXLM, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, - KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS + M(M_TOGGLE_5), KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, LALT(LSFT(KC_7)), LALT(KC_5), LALT(KC_6), DE_OSX_LESS, DE_OSX_MORE, DE_OSX_EXLM, + DE_OSX_SLSH, DE_OSX_LPRN, DE_OSX_RPRN, LALT(KC_8), LALT(KC_9), DE_OSX_HASH, + KC_TRNS, DE_OSX_PIPE, DE_OSX_TILD, DE_OSX_CIRC, KC_UP, DE_OSX_MINS, LSFT(KC_4), + DE_OSX_QUOT, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, + KC_F13, KC_F12, + KC_F14, + KC_F15, KC_TRNS, KC_TRNS ), /* Keymap 2: Media and mouse keys * @@ -135,7 +137,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `--------------------' `--------------------' */ // MEDIA AND MOUSE -KEYMAP( +[MDIA] = KEYMAP( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, @@ -177,7 +179,7 @@ KEYMAP( * | | | | | | | | * `--------------------' `----------------------' */ -KEYMAP( +[SMLY] = KEYMAP( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -197,7 +199,7 @@ KEYMAP( KC_TRNS, KC_TRNS, KC_TRNS ), //number pad -KEYMAP( +[NUMB] = KEYMAP( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, @@ -209,9 +211,9 @@ KEYMAP( // 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, LSFT(KC_RBRC), KC_F12, - KC_DOWN, KC_4, KC_5, KC_6, KC_RBRC, DE_MINS, + KC_DOWN, KC_4, KC_5, KC_6, KC_RBRC, DE_OSX_MINS, KC_TRNS, LSFT(KC_6), KC_1, KC_2, KC_3, LSFT(KC_7), KC_TRNS, - KC_0,KC_DOT, KC_0, DE_EQL, KC_TRNS, + KC_0,KC_DOT, KC_COMM, DE_OSX_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS @@ -238,7 +240,7 @@ KEYMAP( * | | | F4 | | | | | * `--------------------' `----------------------' */ -KEYMAP( +[EGOS] = KEYMAP( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -308,11 +310,30 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) if (timer_elapsed(start) > 150){ return MACRO(U(LCTRL),U(LSFT),U(LALT),END); } else { - return MACRO(U(LCTRL),U(LALT),T(EQL),U(LSFT),END); //cannot use DE_ACUT here, as macro needs KC_ prefix + return MACRO(U(LCTRL),U(LALT),T(EQL),U(LSFT),END); //cannot use DE_OSX_ACUT here, as macro needs KC_ prefix } } break; - case M_DE_CIRC_CTRLCMD: + case M_LGUI_SHFT: + if (record->event.pressed){ + return MACRO(D(LGUI),D(LSFT),END); + }else{ + return MACRO(U(LGUI),U(LSFT),END); + } + break; + case M_CTL_SFT_HASH: + if (record->event.pressed) { + start=timer_read(); + return MACRO(D(LCTRL),D(LSFT),END); + } else { + if (timer_elapsed(start) > 150){ + return MACRO(U(LCTRL),U(LSFT),END); + } else { + return MACRO(U(LCTRL),U(LSFT),T(BSLS),END); + } + } + break; + case M_DE_OSX_CIRC_CTRLCMD: if (record->event.pressed) { start = timer_read(); return MACRO(D(LCTRL),D(LGUI),END); @@ -324,7 +345,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) } } break; - case M_DE_PLUS_CTRLALT: + case M_DE_OSX_PLUS_CTRLALT: if (record->event.pressed) { start = timer_read(); return MACRO(D(LCTRL),D(LALT),END); diff --git a/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex b/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex index fde7201c1..c7cb8d863 100644 --- a/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex +++ b/keyboard/ergodox_ez/keymaps/osx_de/osx_de.hex @@ -1,1199 +1,1197 @@ -:100000000C94F0030C9437040C9437040C943704CC -:100010000C9437040C9437040C9437040C94370474 -:100020000C9437040C9437040C94370E0C94090F7D -:100030000C9437040C9437040C9437040C94370454 -:100040000C9437040C947D230C9437040C943704DF -:100050000C9437040C940F1D0C9437040C94370443 -:100060000C9437040C9437040C9437040C94370424 -:100070000C9437040C9437040C9437040C94370414 -:100080000C9437040C9437040C9437040C94370404 -:100090000C9437040C9437040C9437040C943704F4 -:1000A0000C9437040C9437040C943704470451041F -:1000B00069048104C904CF04F004D504EB04E1040D -:1000C000E604DB04B1049904F504760F980F8B1055 -:1000D000980F8B10DD0F00108B1055106810521305 -:1000E000521381138113C413FE130B160B1617142E -:1000F0000B160C150C15DF150B160B16F61501E17A -:100100000137023702E10138023801E201250225F8 -:1001100002E20001E10137023702E1013802380151 -:10012000E10130023002E10001E10137023702E172 -:100130000138023801E10107020702E1000135023E -:1001400035012002200001E10137023702E10138C8 -:10015000023801E10125022502E10001E101360238 -:100160003602E10138023801E10125022502E100F1 -:1001700001E10136023602E10138023801E10126CF -:10018000022602E10001E10137023702E1013802F3 -:100190003801E10126022602E10002E002E201301C -:1001A00002300002E002E20001E001E20002E002AF -:1001B000E3016402640002E002E30001E001E30005 -:1001C00002E002E2012E022E02E10002E002E10260 -:1001D000E20001E001E101E20002E001E3010602C8 -:1001E0000602E30002E00001E00002E001E3011981 -:1001F000021902E30002E00001E0000000F0A1F0BB -:10020000A329002B00E200E100358100001E00144C -:100210000004001D710D304D831F001A0016001BD5 -:10022000000C304C002000080007000600E1042A02 -:10023000002100150009001900E1084A00220017FA -:10024000000A000500000003300130E3000000E276 -:1002500000000002540230E7000000E60000000445 -:100260005423001C000B00110000002E7F240018F6 -:10027000000D00100050004B0025000C000E003651 -:100280000052002C00260012000F003700510028F9 -:100290000027001300330038714F004E002D002F4F -:1002A000003474E50031810000010001000100010B -:1002B00000010000003A003500310001000100019A -:1002C000003B0035022102350001004C003C001EBD -:1002D0000224062202010001003D002D0224022416 -:1002E00004010001003E000100370011040000017C -:1002F000000100010000000100000001000E3001BB -:100300000000000100000001003F00240624022339 -:100310000200000100400022042502350001000116 -:100320000041002304260235023700010042002468 -:100330000425041F021E020100430031002604317F -:1003400002010001004400450001002D02010000EF -:100350000001000100010001000100000001000196 -:100360000001000100010001000100F400F200FBA7 -:1003700000010001000100F000F100FA000100019D -:10038000000100F500F300FC00010001000100F98C -:1003900000FA00F600000001000100010000000169 -:1003A0000000000100A800010000000100000001A1 -:1003B0000001000100A900AA0000000100010001E5 -:1003C000000100010001000100010001000100AC7A -:1003D000000100B600010001000100AB0050000167 -:1003E00000010001000100520051000100AE0001B7 -:1003F00000010001004F00000001000100010001A8 -:1004000000010000000100010001000100010001E5 -:1004100000010001000100010001000100010001D4 -:1004200000010001000100010001000100010001C4 -:1004300000010001000100010001000100000001B5 -:100440000001000100000001000000010004300173 -:1004500000000001000000010005300630093001F5 -:1004600000000001000A300B3008300100010001DB -:10047000000100073001000100010001000100013E -:100480000001000100010001000100010001000164 -:100490000001000100010001000100010001000055 -:1004A0000001000100010001000100000001000145 -:1004B00000010001000100010001000100500001E5 -:1004C0000001000100010052005100010001000183 -:1004D00000010001004F00010001000100010001C6 -:1004E0000001000100000001000100010000000106 -:1004F00000000001000100010000000100000001F7 -:10050000003F00520051002302000001004000247F -:100510000021001E00270001004100250022001FCD -:1005200000370001004200260023002000270001C0 -:10053000004300300230002402270201004400453D -:1005400000380001000100000001000100E100018D -:1005500000E0000000010001000100010001003D79 -:100560000001000100010001000100E000010001A4 -:10057000000100010001002C000100010001000148 -:100580000001003C00010001000100010000003AF0 -:1005900000010001000000010000003B000E3001DE -:1005A0000000000100000001000100010001000145 -:1005B0000000000100010001000100010001000134 -:1005C0000001000100010001000100010001000123 -:1005D0000001000100010001000100010001000113 -:1005E0000001000100010001000100010001000004 -:1005F0000016034500720067006F0044006F00782A -:1006000000200045005A00000016034500720067F4 -:10061000006F0044006F007800200045005A000081 -:10062000000403090409026D00040100A0FA090492 -:1006300000000103010100092111010001223F0016 -:100640000705810308000A090401000103010200F3 -:10065000092111010001224D000705820308000A4B -:100660000904020001030000000921110100012218 -:1006700036000705830308000A090403000103008C -:10068000000009211101000122390007058403102F -:1006900000011201100100000008EDFE0713010027 -:1006A0000102000105010906A101050719E029E77A -:1006B0001500250195087501810205081901290514 -:1006C00095057501910295017503910105071900C2 -:1006D000297715002501957875018102C00501096A -:1006E00080A101850216010026B7001A01002AB771 -:1006F00000751095018100C0050C0901A101850359 -:10070000160100269C021A01002A9C027510950110 -:100710008100C005010902A1010901A10005091913 -:1007200001290515002501950575018102950175C1 -:100730000381010501093009311581257F95027575 -:1007400008810609381581257F9501750881060500 -:100750000C0A38021581257F950175088106C0C0F5 -:1007600005010906A101050719E029E71500250182 -:100770009508750181029501750881010508190127 -:1007800029059505750191029501750391010507EC -:10079000190029FF150025FF950675088100C00086 -:1007A00000000000000000000000010204060A0F23 -:1007B00017202C3A4A5D71879DB3C7DAE9F5FCFF33 -:1007C000FCF5E9DAC7B39D87715D4A3A2C20170F13 -:1007D0000A06040201000000000000000000000002 -:1007E00011241FBECFEFDAE0DEBFCDBF04B603FE9B -:1007F00027C08091EF019091F001A091F101B0919B -:10080000F2018730904BA740B04BD1F41092EF012A -:100810001092F0011092F1011092F20114BE84B70F -:10082000877F84BF0FB6F894A89580916000886197 -:1008300080936000109260000FBEE0E0FFE3099536 -:1008400011E0A0E0B1E0ECE9FAE402C005900D92FD -:10085000A433B107D9F721E0A4E3B1E001C01D92B0 -:10086000AF3EB207E1F70E947E0B0C944C250C942E -:100870000000462F50E04F30510508F0DEC0FA016D -:10088000EA5AFF4FDC0112968C910C9401258823C3 -:1008900021F085EE0E94EC11D0C085EE0E94B412CA -:1008A000CCC0882349F00E94D91C909335018093D5 -:1008B000340188EF91E008958091340190913501E1 -:1008C0000E94E51C873991050CF0A8C08AEE91E0E2 -:1008D0000895882349F00E94D91C90933501809394 -:1008E000340187EE91E008958091340190913501B3 -:1008F0000E94E51C873991050CF093C089ED91E0C9 -:100900000895882349F00E94D91C90933501809363 -:10091000340182ED91E00895809134019091350188 -:100920000E94E51C873991050CF07EC080EC91E0B7 -:100930000895882349F00E94D91C90933501809333 -:1009400034018BEB91E00895809134019091350151 -:100950000E94E51C873991050CF069C08DEA91E091 -:100960000895882349F00E94D91C90933501809303 -:10097000340188EA91E00895809134019091350125 -:100980000E94E51C873991050CF054C08AE991E07A -:100990000895882309F451C085E891E008958823DB -:1009A00009F44BC080E791E00895882309F445C01D -:1009B0008BE591E00895882309F43FC086E491E037 -:1009C00008958823D1F18DE391E008958823A9F15A -:1009D00088E291E00895882381F183E191E0089510 -:1009E000882359F18EEF90E00895882331F18091AA -:1009F000B3019091B401A091B501B091B60120E28C -:100A0000822780729927AA27BB278093B3019093EE -:100A1000B401A093B501B093B6010FC085EF91E08A -:100A2000089584EE91E008958BEC91E0089586EBB3 -:100A300091E0089583EA91E0089580E090E00895C0 -:100A400008956091B3017091B4018091B5019091C6 -:100A5000B6010E943C1C56985E9825982D982698C1 -:100A60002E9827982F988330C1F028F4813041F0D8 -:100A7000823049F00895843049F0853051F008956E -:100A8000259A2D9A0895269A2E9A0895259A2D9A98 -:100A900004C0259A2D9A269A2E9A279A2F9A08955D -:100AA0000C94210556985E9825982D9826982E9896 -:100AB00027982F988FEF90E090938900809388007B -:100AC00090938B0080938A0090938D0080938C008C -:100AD000259A2D9A2FEF80E792E021508040904098 -:100AE000E1F700C00000269A2E9A2FEF80E792E0EF -:100AF000215080409040E1F700C00000279A2F9AD3 -:100B00002FEF80E792E0215080409040E1F700C055 -:100B1000000025982D982FEF80E792E0215080402B -:100B20009040E1F700C0000026982E982FEF80E754 -:100B300092E0215080409040E1F700C000002798EB -:100B40002F9856985E9825982D9826982E98279835 -:100B50002F98089589EA8093800089E0809381002E -:100B600024982C983F988AB18F748AB96E98479AC6 -:100B70008BB1806B8BB9769A0E9452050C9420053C -:100B800080E2809300018091360181110EC00E94A5 -:100B90000F0681E0809336012FEF83ED90E3215023 -:100BA00080409040E1F700C0000080E40E941506FC -:100BB0008093000181112EC00E943F0680930001A6 -:100BC000811128C00E943F0680930001811122C03C -:100BD0008FE30E943F068093000181111BC00E9499 -:100BE000370680E40E94150680930001811112C02F -:100BF0008CE00E943F068093000181110BC00E948F -:100C00003F0680930001811105C08FE30E943F06DB -:100C1000809300010E943706809100010895109290 -:100C2000B9008AE08093B800089594EA9093BC00DC -:100C30009091BC0097FFFCCF9091B900987F9830BD -:100C400021F0903111F081E008958093BB0084E899 -:100C50008093BC008091BC0087FFFCCF8091B900DD -:100C6000887F883111F0803471F780E0089584E93D -:100C70008093BC008091BC0084FDFCCF08958093DC -:100C8000BB0084E88093BC008091BC0087FFFCCF50 -:100C90009091B900987F81E0983209F480E008953E -:100CA00084E88093BC008091BC0087FFFCCF8091DA -:100CB000BB00089580910001811115C080E40E945D -:100CC00015068093000181110CC082E10E943F064D -:100CD00080930001811105C08FEF0E943F06809331 -:100CE00000010E94370684B1807F84B985B1807F7E -:100CF00085B98AB1837F8AB98BB1837F8BB93E98DE -:100D0000469808950E94C005809300010E945A06EB -:100D100080B38C7080BB81B3836F81BBE6E4F1E06C -:100D2000A8E3B1E011921D9281E0E435F807D1F714 -:100D30000C94AA059F92AF92BF92CF92DF92EF924E -:100D4000FF920F931F93CF93DF938091000188232D -:100D500079F0809137018F5F80933701811108C04E -:100D60000E94C00580930001811102C00E945205BB -:100D700088E3E82E81E0F82E8701C0E0D0E0BB24B4 -:100D8000B39492E0A92ECC24C394D12CC730D105C2 -:100D900000F580910001811164C080E40E94150675 -:100DA00080930001811112C082E10E943F0680936E -:100DB000000181110BC0C6010C2E01C0880F0A94DE -:100DC000EAF780950E943F06809300010E94370653 -:100DD00048C0CA30A1F028F4C83059F0C93061F0D9 -:100DE00005C0CC3089F070F0CD3089F0209A289879 -:100DF00010C0219A29980DC0229A2A980AC0239AD5 -:100E00002B9807C0529A01C0539A5B9802C03E9A31 -:100E10004698E0EAEA95F1F78FB181708B257999D0 -:100E200002C032E001C030E0832B7C9902C034E084 -:100E300001C030E0832B7D9902C028E001C020E092 -:100E4000822B7E9902C090E101C090E0892B9FB176 -:100E50009095991F9927991F9295990F907E892BAC -:100E60000FC08091000181114AC080E40E941506E4 -:100E700080930001882381F1912C0E943706892DEF -:100E8000D8019C91981719F08C93A09201010E94AF -:100E90005A0621960F5F1F4FCE30D10509F076CF4D -:100EA00080910101882369F1815080930101882399 -:100EB00039F0EFE9FFE03197F1F700C0000021C001 -:100EC000E6E4F1E0D7018D917D018193B6E4EB1664 -:100ED000B1E0FB06B9F715C083E10E943F0680939D -:100EE00000018111C9CF81E40E94150680930001A1 -:100EF0008111C2CF0E945006982E9094BECF80E000 -:100F0000BFCF0E94500581E0DF91CF911F910F91DB -:100F1000FF90EF90DF90CF90BF90AF909F9008959B -:100F2000E82FF0E0EA5BFE4F8081089508958B3B47 -:100F3000910580F4883A910548F5853A9105D8F4F1 -:100F40008430910508F0B2C0019709F06EC081E0CD -:100F500090E00895803E910508F467C0883E9105B1 -:100F600008F4A4C09C01205F31092031310508F04C -:100F70005CC090650895853A910509F459C0863A98 -:100F8000910509F058C082E890E40895883A9105E7 -:100F900009F454C0893A910509F453C08A3A91057D -:100FA00009F452C08B3A910509F451C08C3A91056D -:100FB00009F450C08D3A910509F44FC0803B91056A -:100FC00009F44EC08E3A910509F44DC08F3A91054F -:100FD00009F44CC0813B910509F44BC0823B91055B -:100FE00009F44AC0833B910509F449C0843B91054B -:100FF00009F448C0853B910509F447C0863B91053B -:1010000009F446C0873B910509F445C0883B91052A -:1010100009F444C0893B910509F443C08A3B91051A -:1010200009F442C080E094E4089580E090E00895DF -:1010300081E890E4089583E890E4089582EE94E4D2 -:10104000089589EE94E408958AEE94E4089585EB7A -:1010500094E4089586EB94E4089587EB94E408956E -:101060008CEC94E408958DEC94E4089583E895E481 -:1010700008958AE895E4089582E995E4089584E95D -:1010800095E4089581E296E4089583E296E4089554 -:1010900084E296E4089585E296E4089586E296E473 -:1010A000089587E296E408958AE296E40895089503 -:1010B00024E5829FC0011124FC0126E0729FE00D0F -:1010C000F11D1124E60FF11DEE0FFF1FEF5FFD4F25 -:1010D000859194910895880F991FFC01E558FF4F61 -:1010E000859194910895880F991FFC01E550FE4F5A -:1010F00085919491089524E5829FC0011124FC01FB -:1011000046E0749FE00DF11D1124E60FF11DEE0F76 -:10111000FF1FEF5FFD4F859194919C013A9521153A -:101120004FE1340708F425C13F512115304120F427 -:101130009F700E94730808959C013053211530411F -:1011400018F49927906C0895811520E5920769F4A9 -:101150000E942D164FEF84E39CE041508040904068 -:10116000E1F700C000000C94341D813020E59207A7 -:1011700031F48091CE0181608093CE0108959C016D -:1011800030552115304108F05CC0292F33272F70CE -:10119000332721303105E9F4AC0164E0440F551FD9 -:1011A0006A95E1F744275370BC016370772702C04A -:1011B000220F331F6A95E2F73C68242B352B73E02E -:1011C000880F991F7A95E1F780769927822B932BC8 -:1011D00008952230310529F4982F8827816F906A6D -:1011E000089523303105A1F4AC0133E0440F551FBD -:1011F0003A95E1F7407E57708370992721E030E0FF -:1012000002C0220F331F8A95E2F7C9019C6816C0FD -:101210002430310531F5AC0123E0440F551F2A95E8 -:10122000E1F7407E57708370992721E030E002C0DB -:10123000220F331F8A95E2F7C9019A68842B952BF8 -:1012400008959C0130572115304118F49F70906229 -:1012500008959C0130582115304118F49F70906A10 -:101260000895803E9105E0F4803C910558F5813366 -:10127000910509F46FC048F48932910509F463C0FF -:101280008A32910509F46DC072C089339105E9F085 -:1012900082389105D1F08533910509F44DC067C0BE -:1012A000833E910581F138F4803E9105B9F0823E8C -:1012B0009105D9F05CC0863E910561F1873E9105AC -:1012C000A1F155C00E946B0808952091E00120FD16 -:1012D00002C021FF4CC080EE90E049C08091E00147 -:1012E00080FFF9CF89E390E042C08091E00182FF66 -:1012F0000EC08091E00184FF03C080E090E037C021 -:1013000083EE90E034C08091E00182FFF2CF82EE64 -:1013100090E02DC08091E00183FF0BC08091E0013F -:1013200084FDEBCF87EE90E022C08091E00183FF47 -:10133000F5CF86EE90E01BC08091E00185FF07C0ED -:1013400089E290E014C08091E00185FFF9CF85E348 -:1013500090E00DC08091E00186FF07C08AE290E036 -:1013600006C08091E00186FFF9CF81E390E00E9402 -:10137000970708950895809164010895CF93DF93AE -:1013800000D01F92CDB7DEB79C018091E60184307A -:1013900019F593E099833B832A839093E9008FEFBB -:1013A0009091E800815095FD06C095ED9A95F1F772 -:1013B00000008111F5CF8091E80085FF0DC040E06D -:1013C00050E063E070E0CE0101960E942B0C80910A -:1013D000E8008E778093E8000F900F900F90DF91D8 -:1013E000CF910895CF93DF9300D01F92CDB7DEB792 -:1013F0002091E601243021F522E029839B838A8312 -:1014000083E08093E9008FEF9091E800815095FD93 -:1014100006C095ED9A95F1F700008111F5CF809106 -:10142000E80085FF0DC040E050E063E070E0CE01D1 -:1014300001960E942B0C8091E8008E778093E80043 -:101440000F900F900F90DF91CF9108959C018091A4 -:10145000E6018430F9F482E08093E9009FEF809107 -:10146000E800915085FD06C085ED8A95F1F70000F2 -:101470009111F5CF8091E80085FF0CC040E050E06D -:1014800065E070E0C9010E942B0C8091E8008E7726 -:101490008093E8000895CF93DF93EC018091E601FB -:1014A000843009F046C090910C019923D9F09091B5 -:1014B0000D019923B9F08093E9008FEF9091E80036 -:1014C000815095FD06C095E19A95F1F700008111D4 -:1014D000F5CF8091E80085FF2CC040E050E060E14E -:1014E00070E017C081E08093E9008FEF9091E800F1 -:1014F000815095FD06C095ED9A95F1F70000811198 -:10150000F5CF8091E80085FF14C040E050E068E02E -:1015100070E0CE010E942B0C8091E8008E778093C2 -:10152000E80080E1FE01A4E5B1E001900D928A950A -:10153000E1F7DF91CF9108958091E501811109C014 -:101540000E94BC0D0E94190E8091E200846080937D -:10155000E20008951092E501089508950C946A231D -:101560000E94CA1C0E9470230E94C4100C94BA09E5 -:1015700042E061EC81E00E94350D42E061EC82E0E6 -:101580000E94350D42E061EC83E00E94350D42E19E -:1015900061EC84E00C94350D8091E801833009F40E -:1015A00055C030F4813071F0823009F48EC0089556 -:1015B0008A3009F47AC08B3009F460C0893009F0B0 -:1015C0009CC020C08091E701813A09F096C08091CB -:1015D000E800877F8093E8008091EB019091EC0117 -:1015E000892B21F460E184E591E003C060E080E0B4 -:1015F00090E070E00E94760C8091E8008B778093F9 -:10160000E80008958091E701813209F076C0809169 -:10161000EB019091EC01009719F0039709F06DC070 -:101620008091E800877F8093E8008091E80082FD48 -:1016300005C08091E6018111F8CF5FC08091F10073 -:10164000809364018091E8008B7753C08091E7011B -:10165000813A09F052C08091EB019091EC01892B05 -:1016600009F04BC08091E800877F8093E80080916B -:10167000E80080FFFCCF80910C0136C08091E7012B -:101680008132D9F58091EB019091EC01892BA9F57C -:101690008091E800877F8093E8000E946A0D809126 -:1016A000E90180930C010C942D168091E7018132A1 -:1016B00021F58091E800877F8093E8000E946A0D01 -:1016C0008091EA018093650108958091E701813A54 -:1016D000A1F48091E800877F8093E8008091E80082 -:1016E00080FFFCCF809165018093F1008091E8003C -:1016F0008E778093E8000C946A0D089584B7877FF5 -:1017000084BF0FB6F894A89580916000886180939B -:101710006000109260000FBE90E080E80FB6F89471 -:1017200080936100909361000FBE0E9413110E948C -:10173000BC0D0E94190E8091E20084608093E2004B -:1017400078940E94A4100E94151182E091E00E94FA -:10175000BF100E9458238091E601853069F40E94F1 -:101760008C1C8091E4018823B1F30E94B61C88236D -:1017700091F30E94150CEFCF0E941B11ECCF292F83 -:10178000332723303105C9F060F42130310581F071 -:101790002230310509F041C08DE690E025E236E0C7 -:1017A00040C021323105E1F02232310531F135C03E -:1017B00082E190E022E936E034C09927813091053A -:1017C00049F028F0029749F5E1EFF5E005C0E1E2C4 -:1017D000F6E002C0E9E0F6E0849190E09F0121C0CC -:1017E0006430D8F4E62FF0E0EE0FFF1FEE5DFE4F01 -:1017F0002081318189E090E014C0643070F470E0A1 -:10180000FB01EE0FFF1FE65EFE4F20813181FB01E1 -:10181000EA5EFE4F808190E004C080E090E020E02E -:1018200030E0FA0131832083089580E189BD82E1AF -:1018300089BD09B400FEFDCF8091D8008F7D8093D3 -:10184000D8008091E00082608093E0008091E00009 -:1018500081FDFCCF0895CF92DF92EF92FF920F931C -:101860001F93CF93DF93EC018B016A010E94890DD6 -:10187000811133C0C114D10439F0F6018081918106 -:10188000081B190BC80FD91FE12CF12C01151105EC -:1018900019F18091E80085FD16C08091E8008E77EF -:1018A0008093E800C114D10449F0F6018081918150 -:1018B000E80EF91EF182E08285E00FC00E94890DDA -:1018C000882321F30AC089918093F1000150110906 -:1018D000FFEFEF1AFF0ADACF80E0DF91CF911F917F -:1018E0000F91FF90EF90DF90CF9008952091ED0140 -:1018F0003091EE012617370748F06115710539F46C -:101900002091E8002E772093E80001C0B901FC0186 -:1019100020E06115710579F18091E6018823F1F1EC -:101920008530F1F18091E80083FD3CC08091E800B2 -:1019300082FD2EC08091E80080FFEBCF2091F30064 -:101940008091F20090E0922B6115710551F0883082 -:10195000910538F421912093F100615071090196AD -:10196000F3CF21E0089709F020E08091E8008E771E -:101970008093E800CECF2111CFCF0AC08091E6013D -:10198000882361F0853061F08091E80083FD0AC012 -:101990008091E80082FFF2CF80E0089582E0089510 -:1019A00083E0089581E008952091ED013091EE01EA -:1019B0002617370748F06115710539F42091E800C2 -:1019C0002E772093E80001C0B901FC0120E06115E9 -:1019D000710591F18091E601882309F440C08530BA -:1019E00009F43FC08091E80083FD3DC08091E8008C -:1019F00082FD2FC08091E80080FFE9CF2091F300A5 -:101A00008091F20090E0922B6115710559F08830B9 -:101A1000910540F424912093F100319661507109B1 -:101A20000196F2CF21E0089709F020E08091E800CC -:101A30008E778093E800CBCF2111CCCF0AC0809164 -:101A4000E601882361F0853061F08091E80083FD34 -:101A50000AC08091E80082FFF2CF80E0089582E022 -:101A6000089583E0089581E00895982F973068F5F0 -:101A70009093E900981739F07091EC002091ED00F7 -:101A80005091F00003C0242F762F50E021FD02C0BA -:101A90009F5FECCF3091EB003E7F3093EB003091B5 -:101AA000ED003D7F3093ED003091EB0031603093DD -:101AB000EB007093EC002093ED005093F000209128 -:101AC000EE0027FDE5CF80E008958F708093E90058 -:101AD00081E008958091E70187FF11C08091E800BF -:101AE00082FD05C08091E6018111F8CF11C080917F -:101AF000E8008B770BC08091E601882349F0809144 -:101B0000E80080FFF8CF8091E8008E778093E800AE -:101B100008952091E4003091E50095E64091EC00B5 -:101B2000842F817040FF23C08091E80080FD1DC09C -:101B30008091E601882399F0853099F08091EB003F -:101B400085FD11C04091E4005091E5002417350750 -:101B500029F3915011F09A01E1CF84E0089582E0D9 -:101B6000089583E0089581E0089580E0089540910C -:101B7000E80042FFDDCF08950E942A0E0E94320E37 -:101B8000E0EEF0E0808181608083E8EDF0E080812C -:101B90008F77808319BCA7EDB0E08C918E7F8C93FA -:101BA00080818F7E80831092E50108950F931F93AB -:101BB000CF93DF930E942A0E0E94320EC8EDD0E030 -:101BC00088818F77888388818068888388818F7DEA -:101BD000888319BC1092E6011092E2011092E40190 -:101BE0001092E30100EE10E0F80180818B7F80838A -:101BF00088818160888342E060E080E00E94350D4A -:101C0000E1EEF0E080818E7F8083E2EEF0E0808183 -:101C100081608083808188608083F80180818E7FED -:101C20008083888180618883DF91CF911F910F919C -:101C30000895E8EDF0E080818F7E8083E7EDF0E0AD -:101C400080818160808384E082BF81E08093E501B0 -:101C50000C94D60DE8EDF0E080818E7F80831092A9 -:101C6000E20008951092DA001092E10008951F92A8 -:101C70000F920FB60F9211242F933F934F935F93C0 -:101C80006F937F938F939F93AF93BF93EF93FF9344 -:101C90008091E10082FF0BC08091E20082FF07C0CB -:101CA0008091E1008B7F8093E1000E94A3108091DE -:101CB000DA0080FF1FC08091D80080FF1BC0809198 -:101CC000DA008E7F8093DA008091D90080FF0DC00A -:101CD00080E189BD82E189BD09B400FEFDCF81E0CC -:101CE0008093E6010E949C0A05C019BC1092E6018F -:101CF0000E94AA0A8091E10080FF19C08091E20051 -:101D000080FF15C08091E2008E7F8093E200809179 -:101D1000E20080618093E2008091D800806280932D -:101D2000D80019BC85E08093E6010E94AE0A80913C -:101D3000E10084FF30C08091E20084FF2CC080E18C -:101D400089BD82E189BD09B400FEFDCF8091D80034 -:101D50008F7D8093D8008091E1008F7E8093E10099 -:101D60008091E2008F7E8093E2008091E2008160AA -:101D70008093E2008091E201882311F084E007C0A3 -:101D80008091E30087FD02C081E001C083E0809381 -:101D9000E6010E94B00A8091E10083FF29C0809192 -:101DA000E20083FF25C08091E100877F8093E100FE -:101DB00082E08093E6011092E2018091E1008E7F43 -:101DC0008093E1008091E2008E7F8093E200809119 -:101DD000E20080618093E20042E060E080E00E94E7 -:101DE000350D8091F00088608093F0000E94AD0A6C -:101DF000FF91EF91BF91AF919F918F917F916F91E3 -:101E00005F914F913F912F910F900FBE0F901F90B8 -:101E100018951F920F920FB60F9211242F933F9394 -:101E20004F935F936F937F938F939F93AF93BF93E2 -:101E3000CF93DF93EF93FF93C091E900CF70809130 -:101E4000EC00D82FD17080FDD0E81092E90080918D -:101E5000F000877F8093F00078940E944D0F1092DD -:101E6000E9008091F00088608093F000CD2BCF7066 -:101E7000C093E900FF91EF91DF91CF91BF91AF91B6 -:101E80009F918F917F916F915F914F913F912F9192 -:101E90000F900FBE0F901F9018951F93CF93DF9355 -:101EA000CDB7DEB7AA970FB6F894DEBF0FBECDBF91 -:101EB000E7EEF1E08091F100819321E0EF3EF2073F -:101EC000C9F70E94CC0A8091E80083FF24C1809169 -:101ED000E7019091E801492F50E04A30510508F0A0 -:101EE0001AC1FA01EB59FF4F0C940125803881F09B -:101EF000823809F010C18091EB018F708093E90066 -:101F00008091EB0085FB882780F91092E90006C0DC -:101F10008091E3019091E401911182609091E80039 -:101F2000977F9093E8008093F1001092F100C8C071 -:101F3000282F2D7F09F0EFC0882319F0823061F03F -:101F4000EAC08091E901813009F0E5C0933009F0E1 -:101F500080E08093E4012BC08091E901811127C0CA -:101F60008091EB018F7009F4D6C08093E900209135 -:101F7000EB0020FF1CC0933021F48091EB008062C5 -:101F800014C09091EB0090619093EB0021E030E061 -:101F9000A90102C0440F551F8A95E2F74093EA0059 -:101FA0001092EA008091EB0088608093EB00109221 -:101FB000E9008091E800877F86C08111ACC0109154 -:101FC000E9011F778091E3008078812B8093E30003 -:101FD0008091E800877F8093E8000E946A0D8091DD -:101FE000E80080FFFCCF8091E30080688093E300ED -:101FF000111102C082E001C083E08093E6018BC032 -:102000008058823008F087C08091E9019091EA0100 -:102010008C3D53E0950779F583E08A838AE28983D2 -:102020004FB7F894DE01139620E03EE051E2E32F33 -:10203000F0E050935700E49120FF03C0E295EF7069 -:102040003F5FEF708E2F90E0EA3010F0C79601C02E -:10205000C0968D939D932F5F243149F74FBF809198 -:10206000E800877F8093E8006AE270E0CE01019685 -:102070000E94760C14C0AE014F5F5F4F6091EB0180 -:102080000E94BF0BBC01892B09F445C09091E80068 -:10209000977F9093E80089819A810E94D40C809167 -:1020A000E8008B778093E80036C08038A1F58091F6 -:1020B000E800877F8093E8008091E2018093F1003F -:1020C0008091E8008E778093E8000E946A0D23C01B -:1020D000811121C08091E9019091EA01992702972D -:1020E000D4F48091E800877F8093E8008091E90133 -:1020F0008093E2010E946A0D8091E201811106C085 -:102100008091E30087FD02C081E001C084E08093FC -:10211000E6010E94B80A8091E80083FF0AC080911E -:10212000E800877F8093E8008091EB0080628093D5 -:10213000EB00AA960FB6F894DEBF0FBECDBFDF91BD -:10214000CF911F9108950895CF938091E601882340 -:10215000A1F0C091E900CF709091EC00892F8170BF -:1021600090FD80E8C82B1092E9008091E80083FD83 -:102170000E944D0FCF70C093E900CF9108959093C6 -:102180006B0180936A010895E0916A01F0916B01FF -:10219000309721F00190F081E02D099480E00895BE -:1021A000E0916A01F0916B01309721F00280F38198 -:1021B000E02D09940895E0916A01F0916B01309748 -:1021C00021F00480F581E02D0994089520916801A3 -:1021D000309169012817390771F090936901809354 -:1021E0006801E0916A01F0916B01309721F006805F -:1021F000F781E02D099408952091660130916701DF -:102200002817390771F09093670180936601E09178 -:102210006A01F0916B01309721F00084F185E02D87 -:102220000994089508950C9412110E94D01C0E94E4 -:1022300082060C94961DCF92DF92EF92FF920F933D -:102240001F93CF93DF93CDB7DEB72B970FB6F894DC -:10225000DEBF0FBECDBF0E949A068DE6C82E81E07C -:10226000D82E00E010E0E02E802F0E949007F601AB -:1022700041916F01F82EF426B1F40F5F1F4F0E301D -:10228000110589F78FEF89838A831B820E94D91CED -:102290008160782F9D838C8349815A816B818D81E8 -:1022A0000E94BE1140C09091CE0191FF04C08B8767 -:1022B0000E9496078B8520E030E04F2D50E0922F52 -:1022C000BA01022E02C0759567950A94E2F760FF85 -:1022D00024C02E83EF8221E030E0690102C0CC0CE3 -:1022E000DD1C9A95E2F790E08C219D21892B09F461 -:1022F00020E028870E94D91C8160782F9A878987DF -:102300004E815F8168858A850E94BE11F801E3597C -:10231000FE4F8081C826C08206C02F5F3F4F263007 -:10232000310569F6AACF0E947D200E94C4109091C9 -:102330006C018917A1F00E94C41080936C012B9648 -:102340000FB6F894DEBF0FBECDBFDF91CF911F91C6 -:102350000F91FF90EF90DF90CF900C94BA092B96DD -:102360000FB6F894DEBF0FBECDBFDF91CF911F91A6 -:102370000F91FF90EF90DF90CF900895CF93DF9370 -:10238000CDB7DEB72B970FB6F894DEBF0FBECDBF2B -:102390004F83588769877A878B87DE01119686E09D -:1023A000FD0111928A95E9F785E0FE0137960190CB -:1023B0000D928A95E1F749815A816B817C818D81EB -:1023C0009E810E94C1182B960FB6F894DEBF0FBEF7 -:1023D000CDBFDF91CF910895CF93C82F882309F403 -:1023E000C1C0823859F40E94C41081FDBBC089E38A -:1023F0000E945E1B0E94161C89E30CC0833879F48E -:102400000E94C41080FDAEC083E50E945E1B0E9446 -:10241000161C83E50E949D1BCF910C94161C8438DA -:1024200059F40E94C41082FD9DC087E40E945E1B87 -:102430000E94161C87E4EECF8CEF8C0F813A48F493 -:102440008C2F0E94BD2281118DC08C2F0E945E1B9B -:10245000E3CF80E28C0F883048F4C77081E001C080 -:10246000880FCA95EAF70E94DF1BD6CF8BE58C0F49 -:10247000833078F4C53A29F0C63A31F083E890E029 -:1024800005C081E890E002C082E890E0CF910C9412 -:10249000E61088E58C0F833108F064C0C83A39F142 -:1024A000C93A41F1CA3A49F1CB3A51F1CC3A59F122 -:1024B000CD3A61F1C03B69F1CE3A71F1CF3A79F191 -:1024C000C13B81F1C23B89F1C33B91F1C43B99F11E -:1024D000C53BA1F1C63BA9F1C73BB1F1C83BB9F17E -:1024E000C93BC1F1CA3BC9F180E090E038C082EE3F -:1024F00090E035C089EE90E032C08AEE90E02FC0C7 -:1025000085EB90E02CC086EB90E029C087EB90E053 -:1025100026C08CEC90E023C08DEC90E020C083E8D6 -:1025200091E01DC08AE891E01AC082E991E017C0ED -:1025300084E991E014C081E292E011C083E292E06C -:102540000EC084E292E00BC085E292E008C086E211 -:1025500092E005C087E292E002C08AE292E0CF9169 -:102560000C94FC10CF910895882309F44BC0823855 -:1025700059F40E94C41081FF45C089E30E945E1B8C -:102580000E94161C89E30CC0833871F40E94C410A9 -:1025900080FF38C083E50E945E1B0E94161C83E505 -:1025A0000E949D1B0C94161C843859F40E94C41080 -:1025B00082FF28C087E40E945E1B0E94161C87E4ED -:1025C000EFCF9CEF980F913A58F390E2980F983024 -:1025D00050F4877091E001C0990F8A95EAF7892F2E -:1025E0000E94E51BDFCF9BE5980F933020F480E03D -:1025F00090E00C94E610885A833120F480E090E05B -:102600000C94FC100895882321F00E94DF1B0C9489 -:10261000161C0895882321F00E94E51B0C94161CBB -:102620000895BF92CF92DF92EF92FF920F931F9384 -:10263000CF93DF9300D000D000D0CDB7DEB77C01C0 -:1026400085E0F701DE01119601900D928A95E1F780 -:10265000F70183819481892B09F4DDC29081818106 -:102660008F3F19F49F3F09F4D6C2F70102812581FB -:1026700022952F7099838A8389819A812E830E9463 -:102680001D1B182FB92E0E941C1B0E94E319EB2D55 -:10269000E295EF704E2F50E0FA01E159FF4F2E8185 -:1026A0000C9401258B2D807F9B2D9F70F92E882304 -:1026B00019F0F29480EFF822002349F0FF2009F48A -:1026C00057C28F2D0E94EF1B0E94161C51C2812FF2 -:1026D0000E94B412FF2009F49EC28F2D0E94F51BA8 -:1026E00026960FB6F894DEBF0FBECDBFDF91CF9117 -:1026F0001F910F91FF90EF90DF90CF90BF900C94BF -:10270000161C3B2D307F8B2D8F70303211F082954F -:10271000807F112319F0113021F12CC00023B9F072 -:10272000222309F490C1213009F08DC126960FB6FD -:10273000F894DEBF0FBECDBFDF91CF911F910F91F7 -:10274000FF90EF90DF90CF90BF900C94FF1B22235F -:1027500019F0213009F45FC28E830E94021C8E8121 -:1027600086C1002321F0223008F055C26CC121112E -:1027700052C27DC1002321F0222309F464C1F8C1B3 -:10278000222309F474C109C28B2D86958695837026 -:1027900019F08130D1F03FC2002321F0812F9B2D11 -:1027A000937002C080E090E026960FB6F894DEBFEA -:1027B0000FBECDBFDF91CF911F910F91FF90EF9092 -:1027C000DF90CF90BF900C94E610002321F0812F72 -:1027D0009B2D937002C080E090E026960FB6F8948F -:1027E000DEBF0FBECDBFDF91CF911F910F91FF9044 -:1027F000EF90DF90CF90BF900C94FC10812F0023BE -:1028000019F00E94851F02C00E94ED1F26960FB688 -:10281000F894DEBF0FBECDBFDF91CF911F910F9116 -:10282000FF90EF90DF90CF90BF900C9472208B2D93 -:10283000837009F075C00111EEC1812F82958695D4 -:102840008770880F880F912F9F70C92ED12CE12C93 -:10285000F12C082E04C0CC0CDD1CEE1CFF1C0A94CD -:10286000D2F714FF12C00FE010E020E030E004C007 -:10287000000F111F221F331F8A95D2F7C901B8011B -:10288000609570958095909503C060E070E0CB01F5 -:102890004B2D4695469543704230C1F060F56C294A -:1028A0007D298E299F29413051F126960FB6F89443 -:1028B000DEBF0FBECDBFDF91CF911F910F91FF9073 -:1028C000EF90DF90CF90BF900C940A1A6C297D296D -:1028D0008E299F2926960FB6F894DEBF0FBECDBF76 -:1028E000DF91CF911F910F91FF90EF90DF90CF90EC -:1028F000BF900C94261A0E940A1AC701B6012696A8 -:102900000FB6F894DEBF0FBECDBFDF91CF911F9100 -:102910000F91FF90EF90DF90CF90BF900C94EE1945 -:10292000002319F08B2D817001C08695882309F44E -:1029300072C1812F829586958770880F880F912F9D -:102940009F70C92ED12CE12CF12C082E04C0CC0C88 -:10295000DD1CEE1CFF1C0A94D2F714FF12C00FE01E -:1029600010E020E030E004C0000F111F221F331FD1 -:102970008A95D2F7C901B8016095709580959095B8 -:1029800003C060E070E0CB014B2D46954695437047 -:102990004230C1F060F56C297D298E299F29413094 -:1029A00051F126960FB6F894DEBF0FBECDBFDF9172 -:1029B000CF911F910F91FF90EF90DF90CF90BF903C -:1029C0000C94E41A6C297D298E299F2926960FB62E -:1029D000F894DEBF0FBECDBFDF91CF911F910F9155 -:1029E000FF90EF90DF90CF90BF900C94001B0E945F -:1029F000E41AC701B60126960FB6F894DEBF0FBEE3 -:102A0000CDBFDF91CF911F910F91FF90EF90DF909D -:102A1000CF90BF900C94C81A103FD1F118F4103E1B -:102A200050F4A1C0123F09F463C008F44CC0133F36 -:102A300009F473C098C01F708B2D8F710023A1F013 -:102A40000E94611A812F26960FB6F894DEBF0FBE42 -:102A5000CDBFDF91CF911F910F91FF90EF90DF904D -:102A6000CF90BF900C9403130E94821A812F269658 -:102A70000FB6F894DEBF0FBECDBFDF91CF911F918F -:102A80000F91FF90EF90DF90CF90BF900C940A13BE -:102A90000023A9F02111BFC08B2D8F7126960FB690 -:102AA000F894DEBF0FBECDBFDF91CF911F910F9184 -:102AB000FF90EF90DF90CF90BF900C94A71A223038 -:102AC00008F0A9C0E9CF0023A9F08B2D8F712696BD -:102AD0000FB6F894DEBF0FBECDBFDF91CF911F912F -:102AE0000F91FF90EF90DF90CF90BF900C94611A00 -:102AF000002359F38B2D8F7126960FB6F894DEBF05 -:102B00000FBECDBFDF91CF911F910F91FF90EF903E -:102B1000DF90CF90BF900C94821A002399F08B2DF8 -:102B20008F7126960FB6F894DEBF0FBECDBFDF9132 -:102B3000CF911F910F91FF90EF90DF90CF90BF90BA -:102B40000C944C1A26960FB6F894DEBF0FBECDBF7C -:102B5000DF91CF911F910F91FF90EF90DF90CF9079 -:102B6000BF900C94421A0023A9F0222309F4ADCFA0 -:102B7000812F26960FB6F894DEBF0FBECDBFDF9132 -:102B8000CF911F910F91FF90EF90DF90CF90BF906A -:102B90000C94EC11222309F4ADCF812F26960FB6A9 -:102BA000F894DEBF0FBECDBFDF91CF911F910F9183 -:102BB000FF90EF90DF90CF90BF900C94B4124B2D0C -:102BC0004F70612FC7010E94390426960FB6F89402 -:102BD000DEBF0FBECDBFDF91CF911F910F91FF9050 -:102BE000EF90DF90CF90BF900C9466194B2D4F70F3 -:102BF000612FC70126960FB6F894DEBF0FBECDBF7A -:102C0000DF91CF911F910F91FF90EF90DF90CF90C8 -:102C1000BF900C94570826960FB6F894DEBF0FBEEF -:102C2000CDBFDF91CF911F910F91FF90EF90DF907B -:102C3000CF90BF9008950E94FC1B0E94D11B0E9460 -:102C4000161C0E9422210E94722080E090E00E94C7 -:102C5000E61080E090E00C94FC100E94EC1B0C94B9 -:102C60001B160E941D1B292F22952F702C3030F42B -:102C70002A3048F42250223078F405C02C3041F03C -:102C80002F3031F009C0803E48F0803F29F406C063 -:102C900093FB882780F9089580E0089581E00895E6 -:102CA000CF93DF9300D000D01F92CDB7DEB70F9047 -:102CB0000F900F900F900F90DF91CF910895CF93C9 -:102CC000DF9300D000D000D0CDB7DEB726960FB688 -:102CD000F894DEBF0FBECDBFDF91CF9108951F9353 -:102CE000CF93DF93C0917B0116E080917C01C817E0 -:102CF00099F0D0E01C9FF0011D9FF00D1124E358C6 -:102D0000FE4F4081518162817381848195810E944F -:102D10005F162196C770E9CFDF91CF911F9108957B -:102D20004091AD015091AE016091AF017091B00141 -:102D30008091B1019091B2010C945F168091B20123 -:102D400082958F7009F054C08091AF01882309F4F7 -:102D50004FC080917B01A0917C014091B0015091C6 -:102D6000B1016091AD017091AE01B6E08A1709F42E -:102D70003FC090E041155105C1F17F3F11F46F3F15 -:102D8000A1F1B89FF001B99FF00D1124E358FE4F57 -:102D9000218127132AC02081261327C022812111D7 -:102DA00024C0238134812417350710F421503109C0 -:102DB000241B350B283C3105C0F42091B2012F7043 -:102DC00020612093B20126E0289FF001299FF00D99 -:102DD0001124EE57FE4F80818F70806180838DEAD1 -:102DE00091E00E9411130C946F1601968770BECF6C -:102DF0000895CF92DF92EF92FF920F931F93CF939C -:102E0000DF93CDB7DEB762970FB6F894DEBF0FBE83 -:102E1000CDBF8C0185E0F801DE011D9601900D9279 -:102E20008A95E1F7D8014C9111965C911197129611 -:102E30006C918091B0019091B101009709F475C136 -:102E40003091AD017091AE017F3F19F43F3F09F41D -:102E50006CC1F801C380D480E090AF01EE2009F48A -:102E6000BEC02091B201C816D90628F0D601A81B11 -:102E7000B90BCD0104C0809590958C0D9D1DFF244C -:102E8000F394883C910578F0F12C207F09F0C4C0C0 -:102E90007C2DD98AC88A89890E9450168DEA91E0D2 -:102EA0000E941113AFC0822F807F09F045C05713D5 -:102EB00013C0431311C061110FC02F702061209304 -:102EC000B2010E9490168DEA91E00E941113809148 -:102ED000B201F80185832EC0CD2819F15F3F11F4AE -:102EE0004F3FF9F0F62E61111CC080917B012091BB -:102EF0007C0136E0821709F45BC090E0389FF00156 -:102F0000399FF00D1124E358FE4F7181571306C00D -:102F10007081471303C07281711103C001968770DD -:102F2000E9CFF62E662309F41CC18091B2018160BD -:102F30008093B201F12C15C1571309C0431307C088 -:102F4000611105C08091B201F8018583C8C04D8729 -:102F50005E878D859E856A8B0E9431166A898823DB -:102F6000D1F16623C1F12091B201822F82958F7039 -:102F700090E0029774F08091AD019091AE01988736 -:102F80008F831986DB86CA862C87CE0107960E941E -:102F9000111386E0F801ADEAB1E001900D928A9537 -:102FA000E1F70E949E160E949016FF24F394D9C068 -:102FB0004D875E878D859E850E941D1B292F22953A -:102FC0002F70223008F0C1C09F7009F0BBC0805E36 -:102FD000883008F4C6C0C8010E941113E6CFC81695 -:102FE000D90608F453C0F601E81BF90BCF01883C61 -:102FF000910508F450C0F12C7C2DD98AC88A8989A2 -:103000000E945016EDEAF1E086E0DF011D928A95FC -:10301000E9F70E949016A5C0571314C0431312C0BD -:10302000611110C08091B201F8018583C8010E942E -:10303000111386E0EDEAF1E0DF011D928A95E9F7D0 -:10304000FE2C8FC04D875E878D859E856A8B0E9482 -:1030500031166A89882309F4BECF662309F4BBCFF1 -:103060002091B201822F82958F7090E002970CF42C -:1030700090CF8091AD019091AE019A8389831B829C -:10308000DD82CC822E83CE01019681CF80959095F2 -:103090008C0D9D1DACCFF62E662309F49CCF5713E3 -:1030A00033C0431331C02091B20120FD24C0822FD0 -:1030B00082958F70482F50E041155105E1F0D801FD -:1030C00015962C9315974F30510549F08F5F982F27 -:1030D0009295907F822F8F70892B15968C93C801C3 -:1030E0000E94111386E0F801ADEAB1E001900D9263 -:1030F0008A95E1F78ECF86E0F801ADEAB1E0019064 -:103100000D928A95E1F72DC04D875E878D859E854E -:103110000E94311681113DCF8091B2018160809370 -:10312000B201C8010E9411131CC0662309F453CFD9 -:103130004D875E878D859E850E943116882309F410 -:103140004ACF27CF811143CF0CC0243008F043CFA2 -:103150009F7009F43CCFD80115969C91907F09F09F -:1031600036CF8F2D62960FB6F894DEBF0FBECDBF5F -:10317000DF91CF911F910F91FF90EF90DF90CF9053 -:1031800008951F93CF93DF93CDB7DEB72C970FB67B -:10319000F894DEBF0FBECDBF4F83588769877A870B -:1031A0008B879C87CE0107960E94F916882371F0C1 -:1031B0008A859B85892B09F441C088858F3F09F05A -:1031C00065C08F818F3F09F061C038C086E0FE0185 -:1031D0003796DE01119601900D928A95E1F76A8586 -:1031E0007B856115710551F1FF81E885EF3F11F491 -:1031F000FF3F21F120917C0130E0C90101968770E9 -:10320000992740917B0150E08417950709F447C046 -:10321000F983EA837D836C8396E0929FD001939F2C -:10322000B00D1124A358BE4FFE01319601900D92AE -:103230009A95E1F780937C010E946F1616E08091C9 -:103240007B0190917C018917B9F1189FC00111246D -:1032500083589E4F0E94F916882371F1E0917B01FB -:103260001E9FF0011124E358FE4F4081518162817D -:103270007381848195810E945F1680917B0190E02B -:1032800001968770992780937B01D9CF4F8158850C -:1032900069857A858B859C850E945F16CFCF0E94B9 -:1032A0002D1610927C0110927B01EDEAF1E086E090 -:1032B000DF011D928A95E9F72C960FB6F894DEBFD0 -:1032C0000FBECDBFDF91CF911F910895EF92FF9276 -:1032D0000F931F93CF93DF938C01892B09F46CC05C -:1032E000F12CEE24E394E8012196F80184918437CF -:1032F00040F4843008F051C0813081F0823019F1FF -:103300005BC0853709F444C0A8F19CE7980F90375B -:1033100008F052C08F770E94B41241C00E5F1F4F59 -:10332000FE01849190E2980F983050F48770FE2D42 -:1033300001C0FF0F8A95EAF78F2F0E94EF1B14C080 -:103340000E94EC112DC00E5F1F4FFE01849190E290 -:10335000980F983060F48770FE2D01C0FF0F8A959A -:10336000EAF78F2F0E94F51B0E94161C19C00E94BD -:10337000B41216C00E5F1F4FFE01C491CC2381F022 -:103380008FE99FE00197F1F700C00000C150F6CF30 -:103390000E5F1F4FFE01F49003C00E94EC118E01DE -:1033A0008F2D882309F49FCFEFE9FFE03197F1F7E4 -:1033B00000C000008150F5CFDF91CF911F910F9198 -:1033C000FF90EF90089508956093B7017093B8014E -:1033D0008093B9019093BA010C941B160F931F931D -:1033E0000091B7011091B8012091B9013091BA0153 -:1033F000DC01CB01802B912BA22BB32B8093B70147 -:103400009093B801A093B901B093BA011F910F91A5 -:103410000C941B160F931F930091B7011091B801E4 -:103420002091B9013091BA01DC01CB0180239123B5 -:10343000A223B3238093B7019093B801A093B9015D -:10344000B093BA011F910F910C941B160F931F9309 -:103450000091B7011091B8012091B9013091BA01E2 -:10346000DC01CB0180279127A227B3278093B701E6 -:103470009093B801A093B901B093BA011F910F9135 -:103480000C941B161092B3011092B4011092B50166 -:103490001092B6010C941B1641E050E060E070E021 -:1034A00004C0440F551F661F771F8A95D2F74093BB -:1034B000B3015093B4016093B5017093B6010C94BD -:1034C0001B1641E050E060E070E004C0440F551F5F -:1034D000661F771F8A95D2F78091B3019091B4014E -:1034E000A091B501B091B601482B592B6A2B7B2BCB -:1034F0004093B3015093B4016093B5017093B6014A -:103500000C941B1641E050E060E070E004C0440FF2 -:10351000551F661F771F8A95D2F740955095609585 -:1035200070958091B3019091B401A091B501B091D3 -:10353000B601482359236A237B234093B301509358 -:10354000B4016093B5017093B6010C941B1641E071 -:1035500050E060E070E004C0440F551F661F771F05 -:103560008A95D2F78091B3019091B401A091B501F1 -:10357000B091B601482759276A277B274093B301AA -:103580005093B4016093B5017093B6010C941B166F -:103590000F931F930091B3011091B4012091B501D5 -:1035A0003091B601DC01CB01802B912BA22BB32BE8 -:1035B0008093B3019093B401A093B501B093B60189 -:1035C0001F910F910C941B160F931F930091B30141 -:1035D0001091B4012091B5013091B601DC01CB010D -:1035E00080239123A223B3238093B3019093B4014A -:1035F000A093B501B093B6011F910F910C941B16C7 -:103600000F931F930091B3011091B4012091B50164 -:103610003091B601DC01CB0180279127A227B32787 -:103620008093B3019093B401A093B501B093B60118 -:103630001F910F910C941B160895CF92DF92EF9279 -:10364000FF920F931F93CF93DF938C01C090B30130 -:10365000D090B401E090B501F090B6018091B7012F -:103660009091B801A091B901B091BA01C82AD92AA4 -:10367000EA2AFB2ACFE1D0E0D701C6010C2E04C014 -:10368000B695A795979587950A94D2F780FF07C0BE -:10369000B8018C2F0E947B088130910531F421976D -:1036A00058F7B80180E00E947B08DF91CF911F910D -:1036B0000F91FF90EF90DF90CF90089590910C01C3 -:1036C0009923F1F090910D019923D1F0982F9695BF -:1036D000969596959F3080F5E0910E01F0910F013F -:1036E000E90FF11D877021E030E0A90102C0440F0D -:1036F000551F8A95E2F7CA019181892B818308952C -:1037000020910E0130910F01F90132969FEF40E0B8 -:103710005191851789F09F3F19F4511101C0942FE1 -:103720004F5F4E30A9F79F3F39F0F901E90FF11DC6 -:1037300097FDFA9582830895089590910C0199233D -:10374000F9F090910D019923D9F0982F96959695BF -:1037500096959F3028F5E0910E01F0910F01E90F49 -:10376000F11D877021E030E0A90102C0440F551F10 -:103770008A95E2F7CA018095918189238183089512 -:1037800020910E0130910F01F9013296205F3F4FD9 -:103790009081891301C010823196E217F307C1F7B7 -:1037A000089581E090E0E0910E01F0910F01E80FA3 -:1037B000F91F1082019680319105A9F70895909123 -:1037C000CD01892B8093CD01089580959091CD01F5 -:1037D00089238093CD0108951092CD010895909191 -:1037E000CC01892B8093CC01089580959091CC01D8 -:1037F00089238093CC0108951092CC010895809381 -:10380000BB0108951092BB01089580910E01909123 -:103810000F01FC0131969C01205F3F4F80E09191A8 -:1038200091118F5FE217F307D1F70895E0910E0130 -:10383000F0910F018091CD018083E0910E01F09114 -:103840000F0190818091CC01892B80838091BB01F5 -:10385000882361F0E0910E01F0910F019081892B96 -:1038600080830E94051C81111092BB0180910E0182 -:1038700090910F010C94D010CF92DF92EF92FF92B3 -:103880006C01EE24FF24C114D104E104F10421F001 -:10389000C701B60120E101C020E0C72ED82EE92ED5 -:1038A000FF24C114D104E104F10419F0285FC70119 -:1038B000B6016B017C0154E0F694E794D794C79469 -:1038C0005A95D1F7C114D104E104F10419F02C5F29 -:1038D000C701B6016B017C0142E0F694E794D794EE -:1038E000C7944A95D1F7C114D104E104F10419F049 -:1038F0002E5FC701B601DC01CB01B695A795979560 -:103900008795892B8A2B8B2B09F02F5F822FFF90B5 -:10391000EF90DF90CF9008958091E601843011F10F -:1039200020E488E190E00FB6F894A89580936000B9 -:103930000FBE2093600083B7817F846083BF83B70D -:10394000816083BF7894889583B78E7F83BF0FB6DD -:10395000F894A8958091600088618093600010922F -:1039600060000FBE089508950C94B31CCF930E947D -:10397000B41C0E949A060E94B31CC0E08C2F0E94C7 -:103980009007811104C0CF5FCE30C1F701C081E044 -:10399000CF9108950E942D160E94C4100C94BA096C -:1039A00082E084BD93E095BD9AEF97BD80936E0051 -:1039B00008952FB7F8948091CF019091D001A091F4 -:1039C000D101B091D2012FBF0895CF92DF92EF9233 -:1039D000FF920F931F932FB7F8944091CF0150910E -:1039E000D0016091D1017091D2012FBF6A017B019A -:1039F000EE24FF248C0120E030E0C016D106E20660 -:103A0000F30610F4415051099A01281B390BC901E2 -:103A10001F910F91FF90EF90DF90CF9008951F922C -:103A20000F920FB60F9211248F939F93AF93BF9372 -:103A30008091CF019091D001A091D101B091D2019C -:103A40000196A11DB11D8093CF019093D001A09349 -:103A5000D101B093D201BF91AF919F918F910F90FF -:103A60000FBE0F901F9018950E94BC0DF8942FEF79 -:103A700087EA91E6215080409040E1F700C00000C5 -:103A800087E090EBDC018093EF019093F001A0932D -:103A9000F101B093F2019CE088E10FB6F894A8958B -:103AA000809360000FBE90936000FFCFEF92FF9273 -:103AB0000F931F93CF93DF93D82FC0E08C2F0E94DA -:103AC000900700E010E0E82EF12CC701002E02C0A4 -:103AD000959587950A94E2F780FD06C00F5F1F4F0A -:103AE0000630110591F709C0602F7C2F80E00E94FD -:103AF00058088D13F3CF81E004C0CF5FCE30F1F6CC -:103B000080E0DF91CF911F910F91FF90EF9008958A -:103B1000CF93C82F8CE20E94561D882321F08C2F52 -:103B2000CF910C94561D80E0CF910895CF930E94C1 -:103B3000DD1E811102C00E94C31EC5E6C15049F0BE -:103B40000E949A068FE39CE90197F1F700C00000FC -:103B5000F5CF89E20E94881D811113C18AE20E947B -:103B6000881D81110E94C31E85E00E94881D81115D -:103B70000E94341D0E94E81E8093CE0187E00E94BF -:103B8000881D8823A9F18BE10E94881D882351F0AC -:103B90008091CE0181FB222720F991E0922790FBB2 -:103BA00081F90EC08EE00E94881D882361F080910B -:103BB000CE0182FB222720F991E0922790FB82F927 -:103BC0008093CE0115C080E10E94881D9091CE01A6 -:103BD000882341F093FB222720F981E0822780FB94 -:103BE00093F904C0892F809580FB90F99093CE01C2 -:103BF0008091CE010E94EC1E0E94FA1E8093E0018B -:103C000080EE0E94881D882341F08091E001982F6A -:103C1000909590FB80F98093E00189E30E94881DD4 -:103C2000882359F08091E00181FB222720F991E05F -:103C3000922790FB81F98093E00182EE0E94881D1B -:103C4000882359F08091E00182FB222720F991E03E -:103C5000922790FB82F98093E00186EE0E94881DF6 -:103C6000882359F08091E00183FB222720F991E01D -:103C7000922790FB83F98093E00183EE0E94881DD8 -:103C8000882359F08091E00184FB222720F991E0FC -:103C9000922790FB84F98093E00185E30E94881DC0 -:103CA000882359F08091E00185FB222720F991E0DB -:103CB000922790FB85F98093E00181E30E94881DA3 -:103CC000882359F08091E00186FB222720F991E0BA -:103CD000922790FB86F98093E00181E10E94881D84 -:103CE000882359F08091E00187FB222720F991E099 -:103CF000922790FB87F98093E0018091E0010E9478 -:103D0000FE1E8091E00187FB882780F980930D01DA -:103D100087E20E94881DC82F8EE10E94881D8111B4 -:103D2000C2608FE10E94881D8111C46080E20E9400 -:103D3000881D8111C86081E20E94881D8111C061C7 -:103D400082E20E94881D8111C06283E20E94881D68 -:103D50008111C06484E20E94881D882311F0C0682C -:103D600002C0CC2329F08C2F0E94F51E6C2F03C0BB -:103D70000E94F11E682F70E080E090E0CF910C94DB -:103D8000E419CF9108956DEE7EEF80E090E00E94FF -:103D9000372560E082E090E00E94292560E083E022 -:103DA00090E00E94292560E084E090E00E942925AF -:103DB00060E085E090E00C94292580E090E00E948E -:103DC000232521E08D3E9E4F09F020E0822F0895AB -:103DD00082E090E00C941B25682F82E090E00C9428 -:103DE000292583E090E00C941B25682F83E090E068 -:103DF0000C94292584E090E00C941B25682F84E026 -:103E000090E00C9429258091D50180FF0BC0609132 -:103E1000130185E0689FB00111247595679575952C -:103E200067952BC081FF09C06091130185E0689FF1 -:103E3000B00111247595679520C082FF07C060917D -:103E4000130185E0689FB001112417C09091D6013D -:103E50009923D1F060911201961788F720911301F0 -:103E600085E0289F90011124929FA001939F500DFF -:103E7000112470E0CA010E94ED246038710540F4FD -:103E80006115710519F406C065E070E0862F08958C -:103E90008FE7089581E008958091D50180FF08C0E3 -:103EA0006091110170E0759567957595679521C0D2 -:103EB00081FF06C06091110170E07595679519C08A -:103EC00082FF04C06091110170E010C09091D60192 -:103ED000992399F0609110019617A0F78091110134 -:103EE000899FC001112470E00E94ED2460387105A3 -:103EF00040F46115710519F406C061E070E0862F89 -:103F000008958FE7089581E00895803F21F40E948D -:103F1000031F819504C0813F29F40E94031F8093F1 -:103F2000D9010895823F21F40E94031F819504C0A6 -:103F3000833F29F40E94031F8093D8010895893F8D -:103F400019F40E944C1F05C08A3F31F40E944C1F97 -:103F500081958093DA0108958B3F21F40E944C1FD4 -:103F6000819504C08C3F29F40E944C1F8093DB0193 -:103F70000895843F21F48091D701816017C0853F67 -:103F800021F48091D701826011C0863F21F4809195 -:103F9000D70184600BC0873F21F48091D7018860EE -:103FA00005C0883F31F48091D70180618093D701AB -:103FB00008958D3F21F48091D50181600BC08E3F23 -:103FC00021F48091D501826005C08F3F29F4809152 -:103FD000D50184608093D5010895803F39F48091A4 -:103FE000D90187FF6CC01092D90169C0813F29F4C3 -:103FF0008091D9011816BCF362C09091D801823F1C -:1040000029F497FF5CC01092D80159C0833F19F47E -:104010001916CCF354C0893F41F48091DA01181687 -:104020000CF04DC01092DA014AC08A3F29F4809109 -:10403000DA0187FF44C0F6CF8B3F39F48091DB0172 -:1040400087FF3DC01092DB013AC08C3F29F480917C -:10405000DB011816BCF333C0843F21F48091D701F3 -:104060008E7F17C0853F21F48091D7018D7F11C0CD -:10407000863F21F48091D7018B7F0BC0873F21F4CD -:104080008091D701877F05C0883F31F48091D701A7 -:104090008F7E8093D70113C08D3F21F48091D5018D -:1040A0008E7F0BC08E3F21F48091D5018D7F05C09E -:1040B0008F3F29F48091D5018B7F8093D50180912A -:1040C000D80181110EC08091D90181110AC080915F -:1040D000DA01811106C08091DB01811102C01092CA -:1040E000D601089587ED91E00E94DB100E94D91C53 -:1040F0009093D4018093D30108951F93CF93DF93BE -:104100008091D3019091D4010E94E51CAC01909163 -:10411000D601992321F02091140130E006C02091AE -:1041200015018AE0289F900111244217530708F4D3 -:1041300085C08091D801C091D901D091DA01109148 -:10414000DB01811107C0C11175C0D11173C01111FC -:1041500071C074C09F3F19F09F5F9093D6011816ED -:1041600024F40E94031F8093D8018091D80187FF17 -:1041700005C00E94031F81958093D8011C1624F46A -:104180000E94031F8093D9018091D90187FF05C048 -:104190000E94031F81958093D9016091D801662305 -:1041A00031F1C091D901CC2311F1062E000C770B0F -:1041B000880B990B0E94F42323E333E343E35FE38B -:1041C0000E9458240E94BC236093D8016C2FCC0F0E -:1041D000770B880B990B0E94F42323E333E343E32B -:1041E0005FE30E9458240E94BC236093D9011D16EE -:1041F00024F40E944C1F8093DA018091DA0187FF3A -:1042000005C00E944C1F81958093DA01111624F499 -:104210000E944C1F8093DB018091DB0187FF05C06A -:104220000E944C1F81958093DB01DF91CF911F91FC -:104230000C9472209F3F09F08FCFA0CFDF91CF91D8 -:104240001F910895E7EDF1E085E0DF011D928A9569 -:10425000E9F71092D6011092D5010895833081F1CB -:1042600028F4813059F08230D1F00895853009F476 -:1042700049C0B8F1863009F456C0089580911501FF -:10428000262F30E0280F311D2F3F310524F4680F11 -:104290006093150108958FEF809315010895809123 -:1042A0001401262F30E0280F311D2F3F310524F453 -:1042B000680F6093140108958FEF8093140108959F -:1042C00080911301262F30E0280F311D2F3F31053B -:1042D00024F4680F6093130108958FEF8093130106 -:1042E000089580911201262F30E0280F311D2F3FB5 -:1042F000310524F4680F6093120108958FEF8093C5 -:104300001201089580911101262F30E0280F311DF0 -:104310002F3F310524F4680F6093110108958FEF4A -:1043200080931101089580911001262F30E0280F0D -:10433000311D2F3F310524F4680F6093100108955B -:104340008FEF809310010895833011F128F48130AC -:1043500049F0823091F00895853081F120F1863066 -:10436000C1F1089580911501681720F4861B809390 -:104370001501089510921501089580911401681790 -:1043800020F4861B8093140108951092140108955F -:1043900080911301681720F4861B80931301089500 -:1043A00010921301089580911201681720F4861B62 -:1043B00080931201089510921201089580911101C5 -:1043C000681720F4861B8093110108951092110143 -:1043D000089580911001681720F4861B80931001C6 -:1043E00008951092100108950F931F938D3109F4D1 -:1043F0006BC008F03FC08E3009F47DC0C0F4873038 -:1044000009F46EC068F4863009F0AFC08091CE0127 -:10441000817F8E7F8093CE0181E08093DD01A6C0F5 -:10442000883009F458C08B3009F49BC09EC0863197 -:1044300009F497C078F4803109F470C0813109F033 -:1044400094C00E942D1690910D0181E089278093E0 -:104450000D0187C0893109F484C08B3109F085C012 -:104460008091CE0181FB222720F991E0922790FBD9 -:1044700081F94AC0853309F45BC048F4873209F4F6 -:1044800057C008F45AC0893209F452C06EC0833450 -:1044900038F48A3308F067C0883309F462C065C015 -:1044A000833409F445C0883409F05FC00E942D169A -:1044B0000FEF13ED20E3015010402040E1F700C062 -:1044C00000000E94341D4DC00E9476230E94C4103B -:1044D0000E94BA0946C00E94E81E0E94FA1E41C00E -:1044E0009091CE01892F817090FF12C0917F9E7FA5 -:1044F0009093CE013BC08091CE0182FB222720F910 -:1045000091E0922790FB82F98093CE01992349F1A3 -:104510008091CE0181608093CE0123C08091CE0135 -:1045200083FB222720F991E0922790FB83F9ECCFBF -:1045300061E070E080E090E010C08D5141E050E01B -:1045400060E070E08A019B0104C0000F111F221F70 -:10455000331F8A95D2F7C901B8010E94E4190E945D -:104560002D1681E003C08953E9CF80E01F910F91A0 -:10457000089580E008950C94B922CF93C82F8091BC -:10458000DD01813079F018F08230E9F187C0E091E7 -:104590000E01F0910F018081813169F0823209F0C2 -:1045A0007FC009C0E0910E01F0910F01808181313F -:1045B00011F0823261F48C2F0E94BB22811104C061 -:1045C0008C2F0E94F4211DC081E090E01AC08C2F36 -:1045D0000E94B922811114C0C43179F048F4CB3063 -:1045E00079F0C03109F060C082E08093DD0108C03D -:1045F000C93219F0C83321F057C01092DD0154C000 -:1046000081E0817053C0C93289F118F5C43171F16C -:10461000A8F4C73009F046C08AE08093150194E100 -:104620009093140193E0909313018093120188E01A -:104630008093110188E28093100134C0CE51C630BE -:1046400088F5EC2FF0E0E65DFE4F80818093DC0181 -:1046500029C0CE34E9F020F4CB3421F56AE013C050 -:10466000C13579F0C235F1F461E00DC08091DC0113 -:10467000882319F01092DC0115C081E08093DD01E0 -:1046800015C061E006C08091DC010E942E210AC0A5 -:104690006AE08091DC010E94A42104C01092DD0137 -:1046A00080E004C081E002C080E0ABCFCF910895EC -:1046B000E1E8F0E080818860808380818160808390 -:1046C0008FB7F89493E09093890090ED90938800D1 -:1046D0008FBF0895EFE6F0E08081826080830895C7 -:1046E000EFE6F0E080818D7F80830895EFE6F0E0D3 -:1046F000908182E08927808308951F920F920FB6E0 -:104700000F9211242F933F934F935F936F937F9357 -:104710008F939F93AF93BF93EF93FF938091DE01AD -:104720009091DF0101969093DF018093DE0181116A -:1047300003C082E00E94BA09E091DF01E695E695A8 -:10474000F0E0E156F84FE4918091DE018E1303C052 -:1047500080E00E94BA09FF91EF91BF91AF919F91C4 -:104760008F917F916F915F914F913F912F910F901A -:104770000FBE0F901F9018950E94C3236894B1112B -:104780000C94522408950E94372488F09F5798F083 -:10479000B92F9927B751B0F0E1F0660F771F881F46 -:1047A000991F1AF0BA95C9F714C0B13091F00E9460 -:1047B0005124B1E008950C945124672F782F882755 -:1047C000B85F39F0B93FCCF3869577956795B39587 -:1047D000D9F73EF490958095709561957F4F8F4FF6 -:1047E0009F4F0895E89409C097FB3EF490958095FB -:1047F000709561957F4F8F4F9F4F9923A9F0F92FA7 -:1048000096E9BB279395F695879577956795B79524 -:10481000F111F8CFFAF4BB0F11F460FF1BC06F5F0A -:104820007F4F8F4F9F4F16C0882311F096E911C01C -:10483000772321F09EE8872F762F05C0662371F03D -:1048400096E8862F70E060E02AF09A95660F771F51 -:10485000881FDAF7880F9695879597F9089557FD81 -:104860009058440F551F59F05F3F71F04795880FDE -:1048700097FB991F61F09F3F79F087950895121675 -:1048800013061406551FF2CF4695F1DF08C0161621 -:1048900017061806991FF1CF8695710561050894D2 -:1048A0000895E894BB2766277727CB0197F90895E9 -:1048B0000E946B240C94DC240E94CE2438F00E94C9 -:1048C000D52420F0952311F00C94C5240C94CB240E -:1048D00011240C9452240E942F2470F3959FC1F34D -:1048E000950F50E0551F629FF001729FBB27F00D9E -:1048F000B11D639FAA27F00DB11DAA1F649F6627F3 -:10490000B00DA11D661F829F2227B00DA11D621F41 -:10491000739FB00DA11D621F839FA00D611D221FFB -:10492000749F3327A00D611D231F849F600D211DDF -:10493000822F762F6A2F11249F5750409AF0F1F062 -:1049400088234AF0EE0FFF1FBB1F661F771F881FCB -:1049500091505040A9F79E3F510580F00C94C5241A -:104960000C9452245F3FE4F3983ED4F386957795F8 -:104970006795B795F795E7959F5FC1F7FE2B880F71 -:10498000911D9695879597F9089597F99F6780E807 -:1049900070E060E008959FEF80EC089500240A9491 -:1049A0001616170618060906089500240A9412160A -:1049B0001306140605060895092E0394000C11F43D -:1049C000882352F0BB0F40F4BF2B11F460FF04C0EA -:1049D0006F5F7F4F8F4F9F4F089597FB072E16F401 -:1049E000009407D077FD09D00E94072507FC05D069 -:1049F0003EF4909581959F4F0895709561957F4FF6 -:104A00000895EE0FFF1F0590F491E02D0994AA1B65 -:104A1000BB1B51E107C0AA1FBB1FA617B70710F0A9 -:104A2000A61BB70B881F991F5A95A9F780959095DB -:104A3000BC01CD010895F999FECF92BD81BDF89AD0 -:104A4000992780B50895A8E1B0E042E050E00C94C9 -:104A50003E25262FF999FECF1FBA92BD81BD20BDFC -:104A60000FB6F894FA9AF99A0FBE019608950E942B -:104A70002925272F0C942A25DC01CB01FC01F9996B -:104A8000FECF06C0F2BDE1BDF89A319600B40D929A -:0C4A900041505040B8F70895F894FFCF53 -:104A9C002002BB094B0A260AF209BE090101BC011E -:104AAC0028080A03140A3F4D363960071307DD0640 -:104ABC00A4063706500669068206010203040506A1 -:044ACC0007080900CE -:00000001FF +:100000000C94F0030C9434040C9434040C943404D5 +:100010000C9434040C9434040C9434040C94340480 +:100020000C9434040C9434040C94210E0C94F30EB0 +:100030000C9434040C9434040C9434040C94340460 +:100040000C9434040C9478230C9434040C943404ED +:100050000C9434040C94091D0C9434040C94340452 +:100060000C9434040C9434040C9434040C94340430 +:100070000C9434040C9434040C9434040C94340420 +:100080000C9434040C9434040C9434040C94340410 +:100090000C9434040C9434040C9434040C94340400 +:1000A0000C9434040C9434040C94340444044E042E +:1000B00066047E04C604CC04ED04D204E804DE0425 +:1000C000E304D804AE049604F204600F820F7010AB +:1000D000820F7010C70FEA0F70103F1052103413C8 +:1000E000341363136313A613E413FD15FD15FD13F9 +:1000F000FD15FE14FE14D115FD15FD15E81501E1E1 +:100100000137023702E10138023801E201250225F8 +:1001100002E20001E10137023702E1013802380151 +:10012000E10130023002E10001E10137023702E172 +:100130000138023801E10107020702E1000135023E +:1001400035012002200001E10137023702E10138C8 +:10015000023801E10125022502E10001E101360238 +:100160003602E10138023801E10125022502E100F1 +:1001700001E10136023602E10138023801E10126CF +:10018000022602E10001E10137023702E1013802F3 +:100190003801E10126022602E10002E002E201301C +:1001A00002300002E002E20001E001E20002E002AF +:1001B000E3016402640002E002E30001E001E30005 +:1001C00002E002E2012E022E02E10002E002E10260 +:1001D000E20001E001E101E20002E001E3010602C8 +:1001E0000602E30002E00001E00002E001E3011981 +:1001F000021902E30002E00001E0000000F0A1F0BB +:10020000A329002B00E200E100358100001E00144C +:100210000004001D710D304D831F001A0016001BD5 +:10022000000C304C00200008000700060052002A95 +:1002300000210015000900190051004A0022001792 +:10024000000A00050000000330E101E3000000E2C5 +:1002500000000002543100E7000000E60000000446 +:100260005423001C000B00110000002E7F240018F6 +:10027000000D00100050004B0025000C000E003651 +:10028000004F002C00260012000F003700E1082864 +:10029000002700130033003871E1044E002D002FB9 +:1002A000003474E50030810000010001000100010C +:1002B00000010000003A003500310001000100019A +:1002C000003B0035022102350001004C003C001EBD +:1002D0000224062202010001003D002D0224022416 +:1002E00004010001003E000100370011040000017C +:1002F000000100010000000100000001000E3001BB +:100300000000000100000068003F002406240224D1 +:100310000400004500400022042502110431026956 +:100320000041002304260264005000010042003511 +:100330000025045200510001004300350226043814 +:10034000004F006A0044001E02310021020100003B +:100350000001000100010001000100000001000196 +:100360000001000100010001000100F400F200FBA7 +:1003700000010001000100F000F100FA000100019D +:10038000000100F500F300FC00010001000100F98C +:1003900000FA00F600000001000100010000000169 +:1003A0000000000100A800010000000100000001A1 +:1003B0000001000100A900AA0000000100010001E5 +:1003C000000100010001000100010001000100AC7A +:1003D000000100B600010001000100AB0050000167 +:1003E00000010001000100520051000100AE0001B7 +:1003F00000010001004F00000001000100010001A8 +:1004000000010000000100010001000100010001E5 +:1004100000010001000100010001000100010001D4 +:1004200000010001000100010001000100010001C4 +:1004300000010001000100010001000100000001B5 +:100440000001000100000001000000010004300173 +:1004500000000001000000010005300630093001F5 +:1004600000000001000A300B3008300100010001DB +:10047000000100073001000100010001000100013E +:100480000001000100010001000100010001000164 +:100490000001000100010001000100010001000055 +:1004A0000001000100010001000100000001000145 +:1004B00000010001000100010001000100500001E5 +:1004C0000001000100010052005100010001000183 +:1004D00000010001004F00010001000100010001C6 +:1004E0000001000100000001000100010000000106 +:1004F00000000001000100010000000100000001F7 +:10050000003F00520051002302000001004000247F +:100510000021001E00270001004100250022001FCD +:1005200000370001004200260023002000360001B1 +:10053000004300300230002402270201004400453D +:1005400000380001000100000001000100E100018D +:1005500000E0000000010001000100010001003D79 +:100560000001000100010001000100E000010001A4 +:10057000000100010001002C000100010001000148 +:100580000001003C00010001000100010000003AF0 +:1005900000010001000000010000003B000E3001DE +:1005A0000000000100000001000100010001000145 +:1005B0000000000100010001000100010001000134 +:1005C0000001000100010001000100010001000123 +:1005D0000001000100010001000100010001000113 +:1005E0000001000100010001000100010001000004 +:1005F0000016034500720067006F0044006F00782A +:1006000000200045005A00000016034500720067F4 +:10061000006F0044006F007800200045005A000081 +:10062000000403090409026D00040100A0FA090492 +:1006300000000103010100092111010001223F0016 +:100640000705810308000A090401000103010200F3 +:10065000092111010001224D000705820308000A4B +:100660000904020001030000000921110100012218 +:1006700036000705830308000A090403000103008C +:10068000000009211101000122390007058403102F +:1006900000011201100100000008EDFE0713010027 +:1006A0000102000105010906A101050719E029E77A +:1006B0001500250195087501810205081901290514 +:1006C00095057501910295017503910105071900C2 +:1006D000297715002501957875018102C00501096A +:1006E00080A101850216010026B7001A01002AB771 +:1006F00000751095018100C0050C0901A101850359 +:10070000160100269C021A01002A9C027510950110 +:100710008100C005010902A1010901A10005091913 +:1007200001290515002501950575018102950175C1 +:100730000381010501093009311581257F95027575 +:1007400008810609381581257F9501750881060500 +:100750000C0A38021581257F950175088106C0C0F5 +:1007600005010906A101050719E029E71500250182 +:100770009508750181029501750881010508190127 +:1007800029059505750191029501750391010507EC +:10079000190029FF150025FF950675088100C00086 +:1007A00000000000000000000000010204060A0F23 +:1007B00017202C3A4A5D71879DB3C7DAE9F5FCFF33 +:1007C000FCF5E9DAC7B39D87715D4A3A2C20170F13 +:1007D0000A06040201000000000000000000000002 +:1007E00011241FBECFEFDAE0DEBFCDBF04B603FE9B +:1007F00024C08091F0019091F101A091F201B0919B +:10080000F3018730904BA740B04BB9F41092F00140 +:100810001092F1011092F2011092F30114BE84B70C +:10082000877F84BF88E10FB6F894809360001092B0 +:1008300060000FBEE0E0FFE3099511E0A0E0B1E049 +:10084000E4E7FAE402C005900D92A433B107D9F7AA +:1008500011E0A4E3B1E001C01D92A03FB107E1F7B0 +:100860000E94650B0C9438250C940000462F50E034 +:100870004F30510508F0DEC0DC01FA01EA5AFF4FA3 +:1008800012968C910C94ED24882321F085EE0E9421 +:10089000D111D0C085EE0E949912CCC0882349F0B6 +:1008A0000E94D31C909335018093340188EF91E02E +:1008B000089580913401909135010E94DF1C8739A1 +:1008C00091050CF0A8C08AEE91E00895882349F0C4 +:1008D0000E94D31C909335018093340187EE91E000 +:1008E000089580913401909135010E94DF1C873971 +:1008F00091050CF093C089ED91E00895882349F0AB +:100900000E94D31C909335018093340182ED91E0D5 +:10091000089580913401909135010E94DF1C873940 +:1009200091050CF07EC080EC91E00895882349F099 +:100930000E94D31C90933501809334018BEB91E09E +:10094000089580913401909135010E94DF1C873910 +:1009500091050CF069C08DEA91E00895882349F073 +:100960000E94D31C909335018093340188EA91E072 +:10097000089580913401909135010E94DF1C8739E0 +:1009800091050CF054C08AE991E00895882309F498 +:1009900051C085E891E00895882309F44BC080E7B1 +:1009A00091E00895882309F445C08BE591E008950E +:1009B000882309F43FC086E491E008958823D1F1AB +:1009C0008DE391E008958823A9F188E291E00895EC +:1009D000882381F183E191E00895882359F18EEF16 +:1009E00090E00895882331F18091B3019091B40192 +:1009F000A091B501B091B60120E2822780729927BB +:100A0000AA27BB278093B3019093B401A093B501AB +:100A1000B093B6010FC085EF91E0089584EE91E0A8 +:100A200008958BEC91E0089586EB91E0089583EAB8 +:100A300091E0089580E090E0089508956091B301F9 +:100A40007091B4018091B5019091B6010E94381C5B +:100A500056985E9825982D9826982E9827982F9826 +:100A60008330C1F028F4813041F0823049F008959C +:100A7000843049F0853051F00895259A2D9A0895D3 +:100A8000269A2E9A0895259A2D9A04C0259A2D9A71 +:100A9000269A2E9A279A2F9A08950C941E055698F6 +:100AA0005E9825982D9826982E9827982F988FEF46 +:100AB00090E0909389008093880090938B008093BE +:100AC0008A0090938D0080938C00259A2D9A2FEFA9 +:100AD00080E792E0215080409040E1F700C00000A4 +:100AE000269A2E9A2FEF80E792E021508040904086 +:100AF000E1F700C00000279A2F9A2FEF80E792E0DD +:100B0000215080409040E1F700C0000025982D98CA +:100B10002FEF80E792E0215080409040E1F700C045 +:100B2000000026982E982FEF80E792E02150804019 +:100B30009040E1F700C0000027982F9856985E98E3 +:100B400025982D9826982E9827982F98089589EA09 +:100B50008093800089E08093810024982C983F98AE +:100B60008AB18F748AB96E98479A8BB1806B8BB9B2 +:100B7000769A0E944F050C941D0580E28093000137 +:100B80008091360181110EC00E940C0681E0809395 +:100B900036012FEF83ED90E3215080409040E1F744 +:100BA00000C0000080E40E941206809300018111C1 +:100BB0002EC00E943C0680930001811128C00E9433 +:100BC0003C0680930001811122C08FE30E943C0605 +:100BD0008093000181111BC00E94340680E40E94B2 +:100BE000120680930001811112C08CE00E943C0625 +:100BF0008093000181110BC00E943C06809300018C +:100C0000811105C08FE30E943C06809300010E9481 +:100C100034068091000108951092B9008AE0809313 +:100C2000B800089594EA9093BC009091BC0097FF9F +:100C3000FCCF9091B900987F983021F0903111F05D +:100C400081E008958093BB0084E88093BC0080918C +:100C5000BC0087FFFCCF8091B900887F883111F0FC +:100C6000803471F780E0089584E98093BC0080911E +:100C7000BC0084FDFCCF08958093BB0084E8809382 +:100C8000BC008091BC0087FFFCCF9091B900987F99 +:100C900081E0983209F480E0089584E88093BC00F4 +:100CA0008091BC0087FFFCCF8091BB0008958091AC +:100CB0000001811115C080E40E941206809300019A +:100CC00081110CC082E10E943C06809300018111D9 +:100CD00005C08FEF0E943C06809300010E943406FD +:100CE00084B1807F84B985B1807F85B98AB1837FE3 +:100CF0008AB98BB1837F8BB93E98469808950E943C +:100D0000BD05809300010E94570680B38C7080BBA4 +:100D100081B3836F81BBA8E3B1E0E6E4F1E08EE04C +:100D20008E0F11921D928E13FCCF0C94A705BF92CB +:100D3000CF92DF92EF92FF920F931F93CF93DF93A7 +:100D400080910001882379F0809137018F5F809333 +:100D50003701811108C00E94BD05809300018111F7 +:100D600002C00E944F0508E311E0C0E0D0E0DD249E +:100D7000D39482E0C82EEE24E394F12CC730D10541 +:100D800000F580910001811164C080E40E94120688 +:100D900080930001811112C082E10E943C06809381 +:100DA000000181110BC0C7010C2E01C0880F0A94ED +:100DB000EAF780950E943C06809300010E94340669 +:100DC00048C0CA30A1F028F4C83059F0C93061F0E9 +:100DD00005C0CC3089F070F0CD3089F0209A289889 +:100DE00010C0219A29980DC0229A2A980AC0239AE5 +:100DF0002B9807C0529A01C0539A5B9802C03E9A42 +:100E0000469890EA9A95F1F79FB1799902C082E0ED +:100E100001C080E091709D25982B7C9902C084E0F0 +:100E200001C080E0892B7D9902C038E001C030E02C +:100E3000832B7E9902C020E101C020E0822B9FB16C +:100E40009095991F9927991F9295990F907E892BBC +:100E50000FC080910001811149C080E40E941206F8 +:100E600080930001882379F1B12C0E9434068B2DE8 +:100E7000F8019081981719F08083C09201010E94B7 +:100E8000570621960F5F1F4FCE30D10509F076CF60 +:100E900080910101882361F18150809301018823B1 +:100EA00039F08FE99FE00197F1F700C0000020C002 +:100EB000A6E4B1E0E8E3F1E0CF01825F91919D9378 +:100EC0008E13FCCF15C083E10E943C068093000185 +:100ED0008111CACF81E40E94120680930001811122 +:100EE000C3CF0E944D06B82EB094BFCF80E0C0CFD4 +:100EF0000E944D0581E0DF91CF911F910F91FF90EE +:100F0000EF90DF90CF90BF900895E82FF0E0EA5B7C +:100F1000FE4F8081089508958B3B910578F4883ABF +:100F2000910540F5853A9105D0F48430910508F09B +:100F3000B1C08130910509F4ADC06BC0803E910510 +:100F400008F467C0883E910508F4A4C09C01205FA6 +:100F500031092031310508F05CC090650895853A6B +:100F6000910509F459C0863A910509F058C082E804 +:100F700090E40895883A910509F454C0893A91059E +:100F800009F453C08A3A910509F452C08B3A91058D +:100F900009F451C08C3A910509F450C08D3A91057D +:100FA00009F44FC0803B910509F44EC08E3A91057B +:100FB00009F44DC08F3A910509F44CC0813B91056D +:100FC00009F44BC0823B910509F44AC0833B91056B +:100FD00009F449C0843B910509F448C0853B91055B +:100FE00009F447C0863B910509F446C0873B91054B +:100FF00009F445C0883B910509F444C0893B91053B +:1010000009F443C08A3B910509F442C080E094E4AE +:10101000089580E090E0089581E890E4089583E8E1 +:1010200090E4089582EE94E4089589EE94E408959E +:101030008AEE94E4089585EB94E4089586EB94E4B5 +:10104000089587EB94E408958CEC94E408958DEC76 +:1010500094E4089583E895E408958AE895E4089572 +:1010600082E995E4089584E995E4089581E296E49F +:10107000089583E296E4089584E296E4089585E273 +:1010800096E4089586E296E4089587E296E408954A +:101090008AE296E40895089596E0799FF00111247C +:1010A00094E5899FE00DF11D1124E60FF11DEE0F6F +:1010B000FF1FEF5FFD4F859194910895880F991F51 +:1010C000FC01E558FF4F859194910895880F991F71 +:1010D000FC01E550FE4F85919491089526E0729FA2 +:1010E000F001112444E5849FE00DF11D1124E60F69 +:1010F000F11DEE0FFF1FEF5FFD4F859194919C0155 +:101100003A9521154FE1340708F41AC13F512115D2 +:10111000304120F49F700E94660808959C0130536E +:101120002115304118F49927906C0895811520E518 +:10113000920769F40E941F164FEF84E39CE0415030 +:1011400080409040E1F700C000000C942E1D8130DB +:1011500020E5920731F48091CE0181608093CE0129 +:1011600008959C0130552115304108F051C0292FB8 +:1011700033272F70332721303105D9F4AC01437068 +:10118000552702C0220F331F4A95E2F73C68AC0195 +:1011900064E0440F551F6A95E1F744275370242BF0 +:1011A000352B73E0880F991F7A95E1F780769927A0 +:1011B0001DC02230310529F4982F8827816F906A4D +:1011C000089523303105A9F4AC014370552721E07F +:1011D00030E002C0220F331F4A95E2F73C6843E03B +:1011E000880F991F4A95E1F7807E9770822B932B89 +:1011F000089524303105E1F4AC014370552721E016 +:1012000030E002C0220F331F4A95E2F73A68E7CF79 +:101210009C0130572115304118F49F709062089559 +:101220009C0130582115304118F49F70906A089540 +:10123000803E9105E0F4803C910558F5813391059D +:1012400009F46FC048F48932910509F463C08A3209 +:10125000910509F46DC072C089339105E9F08238B7 +:101260009105D1F08533910509F44DC067C0833EE7 +:10127000910581F138F4803E9105B9F0823E9105E7 +:10128000D9F05CC0863E910561F1873E9105A1F1E0 +:1012900055C00E945E0808952091E10120FD02C022 +:1012A00021FF4CC080EE90E049C08091E10180FFB9 +:1012B000F9CF89E390E042C08091E10182FF0EC046 +:1012C0008091E10184FF03C080E090E037C083EEAD +:1012D00090E034C08091E10182FFF2CF82EE90E095 +:1012E0002DC08091E10183FF0BC08091E10184FD5D +:1012F000EBCF87EE90E022C08091E10183FFF5CF34 +:1013000086EE90E01BC08091E10185FF07C089E275 +:1013100090E014C08091E10185FFF9CF85E390E072 +:101320000DC08091E10186FF07C08AE290E006C00F +:101330008091E10186FFF9CF81E390E00E948C0764 +:10134000089508950C94A109809164010895CF93A4 +:10135000DF9300D01F92CDB7DEB79C018091E701EB +:10136000843019F593E099833B832A839093E900B5 +:101370008FEF9091E800815095FD06C095ED9A950C +:10138000F1F700008111F5CF8091E80085FF0DC0D5 +:1013900040E050E063E070E0CE0101960E94110C45 +:1013A0008091E8008E778093E8000F900F900F9067 +:1013B000DF91CF910895CF93DF9300D01F92CDB7E7 +:1013C000DEB72091E701243021F522E029839B83B9 +:1013D0008A8383E08093E9008FEF9091E800815049 +:1013E00095FD06C095ED9A95F1F700008111F5CFB6 +:1013F0008091E80085FF0DC040E050E063E070E0C0 +:10140000CE0101960E94110C8091E8008E778093A6 +:10141000E8000F900F900F90DF91CF9108952091E9 +:10142000E7012430F1F422E02093E9002FEF30911E +:10143000E800215035FD06C035ED3A95F1F7000082 +:101440002111F5CF2091E80025FF0BC040E050E0CE +:1014500065E070E00E94110C8091E8008E77809327 +:10146000E8000895CF93DF93EC019091E701943069 +:1014700009F046C080910C018823D9F080910D01BC +:101480008823B9F09093E9008FEF9091E8008150A4 +:1014900095FD06C095E19A95F1F700008111F5CF11 +:1014A0008091E80085FF2CC040E050E060E170E0F2 +:1014B00017C081E08093E9008FEF9091E8008150A0 +:1014C00095FD06C095ED9A95F1F700008111F5CFD5 +:1014D0008091E80085FF14C040E050E068E070E0D3 +:1014E000CE010E94110C8091E8008E778093E80075 +:1014F00080E1FE01A4E5B1E001900D928A95E1F74B +:10150000DF91CF9108958091E601811109C00E9479 +:10151000A60D0E94030E8091E20084608093E20099 +:1015200008951092E601089508950C9465230E9491 +:10153000C41C0E946B230E94A9100C94A20942E0D3 +:1015400061EC81E00E94200D42E061EC82E00E94AB +:10155000200D42E061EC83E00E94200D42E161EC4D +:1015600084E00C94200D8091E901833009F455C08A +:1015700030F4813071F0823009F48EC008958A30E1 +:1015800009F47AC08B3009F460C0893009F09CC03E +:1015900020C08091E801813A09F096C08091E8006E +:1015A000877F8093E8008091EC019091ED01892B79 +:1015B00021F460E184E591E003C060E080E090E028 +:1015C00070E00E945C0C8091E8008B778093E800CB +:1015D00008958091E801813209F076C08091EC0194 +:1015E0009091ED01009719F0039709F06DC080917B +:1015F000E800877F8093E8008091E80082FD05C0C5 +:101600008091E7018111F8CF5FC08091F100809354 +:1016100064018091E8008B7753C08091E801813AA2 +:1016200009F052C08091EC019091ED01892B09F0F5 +:101630004BC08091E800877F8093E8008091E800AC +:1016400080FFFCCF80910C0136C08091E80181328F +:10165000D9F58091EC019091ED01892BA9F580914C +:10166000E800877F8093E8000E94550D8091EA0191 +:1016700080930C010C941F168091E801813221F5B2 +:101680008091E800877F8093E8000E94550D80914B +:10169000EB018093650108958091E801813AA1F4FE +:1016A0008091E800877F8093E8008091E80080FFC8 +:1016B000FCCF809165018093F1008091E8008E77E6 +:1016C0008093E8000C94550D089584B7877F84BFFC +:1016D00088E10FB6F89480936000109260000FBE0E +:1016E00090E080E80FB6F8948093610090936100D9 +:1016F0000FBE0E94F8100E94A60D0E94030E80915A +:10170000E20084608093E20078940E9489100E9435 +:10171000FA1082E091E00E94A4100E94532380916D +:10172000E701853069F40E94881C8091E5018823D7 +:10173000B1F30E94B01C882391F30E94FB0BEFCF02 +:101740000E940011ECCF292F332723303105C9F037 +:1017500064F42130310581F02230310509F043C0B5 +:101760008DE690E025E236E042C021323105F1F00D +:101770002232310541F137C082E190E022E936E0C2 +:1017800036C099278130910541F08230910541F0B2 +:10179000892B49F5E1E2F6E005C0E9E0F6E002C098 +:1017A000E1EFF5E0849190E09F0121C06430D8F42E +:1017B000E62FF0E0EE0FFF1FEE5DFE4F208131813E +:1017C00089E090E014C0643070F470E0FB01EE0F2B +:1017D000FF1FE65EFE4F20813181FB01EA5EFE4F76 +:1017E000808190E004C080E090E020E030E0FA01E9 +:1017F00031832083089580E189BD82E189BD09B4E8 +:1018000000FEFDCF8091D8008F7D8093D80080911D +:10181000E00082608093E0008091E00081FDFCCFD9 +:101820000895CF92DF92EF92FF920F931F93CF9381 +:10183000DF93EC018B016A010E94740D811133C0AA +:10184000C114D10439F0F60180819181081B190B74 +:10185000C80FD91FE12CF12C0115110519F1809148 +:10186000E80085FD16C08091E8008E778093E8003F +:10187000C114D10449F0F60180819181E80EF91E6E +:10188000F182E08285E00FC00E94740D882321F36D +:101890000AC089918093F10001501109FFEFEF1AFE +:1018A000FF0ADACF80E0DF91CF911F910F91FF9077 +:1018B000EF90DF90CF9008952091EE013091EF01ED +:1018C0002617370748F06115710539F42091E800B3 +:1018D0002E772093E80001C0B90140E06115710541 +:1018E000A9F12091E701222309F443C0253009F42E +:1018F00042C02091E80023FD40C02091E80022FD75 +:1019000032C02091E80020FFE9CF4091F300209100 +:10191000F20030E0342BFC01CF016115710559F064 +:101920002830310540F481918093F10061507109B4 +:101930002F5F3F4FF1CF41E02830310509F040E003 +:101940002091E8002E772093E800C8CF4111C9CF3D +:101950000AC08091E701882361F0853061F08091B1 +:10196000E80083FD0AC08091E80082FFF2CF80E0AA +:10197000089582E0089583E0089581E0089520911C +:10198000EE013091EF012617370748F06115710518 +:1019900039F42091E8002E772093E80001C0B901C6 +:1019A000FC0120E06115710591F18091E701882328 +:1019B00009F440C0853009F43FC08091E80083FD00 +:1019C0003DC08091E80082FD2FC08091E80080FF3B +:1019D000E9CF2091F3008091F20090E0922B611505 +:1019E000710559F08830910540F424912093F1005D +:1019F0003196615071090196F2CF21E0089709F004 +:101A000020E08091E8008E778093E800CBCF211111 +:101A1000CCCF0AC08091E701882361F0853061F066 +:101A20008091E80083FD0AC08091E80082FFF2CF38 +:101A300080E0089582E0089583E0089581E00895AC +:101A4000982F973058F59093E900981739F07091D6 +:101A5000EC002091ED005091F00003C0242F762F70 +:101A600050E021FF19C03091EB003E7F3093EB0036 +:101A70003091ED003D7F3093ED003091EB0031600F +:101A80003093EB007093EC002093ED005093F00046 +:101A90002091EE0027FF07C09F5FD3CF8F70809308 +:101AA000E90081E0089580E008958091E80187FFD2 +:101AB00011C08091E80082FD05C08091E70181118D +:101AC000F8CF11C08091E8008B770BC08091E701BF +:101AD000882349F08091E80080FFF8CF8091E800EA +:101AE0008E778093E80008952091E4003091E5001E +:101AF00095E64091EC00842F817040FF22C08091D8 +:101B0000E80080FD1CC08091E701882391F08530BA +:101B100091F08091EB0085FD10C04091E400509160 +:101B2000E5004217530729F39A01915011F784E019 +:101B3000089582E0089583E0089581E0089580E0AB +:101B400008954091E80042FFDECF08950E94140EF0 +:101B50000E941C0EE0EEF0E0808181608083E8ED61 +:101B6000F0E080818F77808319BCA7EDB0E08C9185 +:101B70008E7F8C9380818F7E80831092E601089502 +:101B80000F931F93CF93DF930E94140E0E941C0E9D +:101B9000C8EDD0E088818F778883888180688883CA +:101BA00088818F7D888319BC1092E7011092E30130 +:101BB0001092E5011092E40100EE10E0F80180813E +:101BC0008B7F808388818160888342E060E080E051 +:101BD0000E94200DE1EEF0E080818E7F8083E2EEB6 +:101BE000F0E0808181608083808188608083F8015B +:101BF00080818E7F8083888180618883DF91CF910F +:101C00001F910F910895E8EDF0E080818F7E808331 +:101C1000E7EDF0E080818160808384E082BF81E035 +:101C20008093E6010C94C00DE8EDF0E080818E7F9A +:101C300080831092E20008951092DA001092E10081 +:101C400008951F920F920FB60F9211242F933F9376 +:101C50004F935F936F937F938F939F93AF93BF93B4 +:101C6000EF93FF938091E10082FF0BC08091E2002F +:101C700082FF07C08091E1008B7F8093E1000E948A +:101C800088108091DA0080FF1FC08091D80080FF0B +:101C90001BC08091DA008E7F8093DA008091D9009A +:101CA00080FF0DC080E189BD82E189BD09B400FEDD +:101CB000FDCF81E08093E7010E94830A05C019BC33 +:101CC0001092E7010E94910A8091E10080FF19C003 +:101CD0008091E20080FF15C08091E2008E7F8093AA +:101CE000E2008091E20080618093E2008091D80060 +:101CF00080628093D80019BC85E08093E7010E9440 +:101D0000950A8091E10084FF30C08091E20084FF59 +:101D10002CC080E189BD82E189BD09B400FEFDCF00 +:101D20008091D8008F7D8093D8008091E1008F7ED4 +:101D30008093E1008091E2008F7E8093E2008091A9 +:101D4000E20081608093E2008091E301882311F03A +:101D500084E007C08091E30087FD02C081E001C0FC +:101D600083E08093E7010E94970A8091E10083FF5E +:101D700029C08091E20083FF25C08091E100877F28 +:101D80008093E10082E08093E7011092E30180916B +:101D9000E1008E7F8093E1008091E2008E7F80934E +:101DA000E2008091E20080618093E20042E060E026 +:101DB00080E00E94200D8091F00088608093F00008 +:101DC0000E94940AFF91EF91BF91AF919F918F91E3 +:101DD0007F916F915F914F913F912F910F900FBE27 +:101DE0000F901F9018951F920F920FB60F9211240B +:101DF0002F933F934F935F936F937F938F939F9313 +:101E0000AF93BF93CF93DF93EF93FF93C091E9001C +:101E1000CF708091EC00D82FD17080FDD0E8109267 +:101E2000E9008091F000877F8093F00078940E9411 +:101E3000370F1092E9008091F00088608093F000E5 +:101E4000CD2BCF70C093E900FF91EF91DF91CF913F +:101E5000BF91AF919F918F917F916F915F914F91C2 +:101E60003F912F910F900FBE0F901F9018951F93C9 +:101E7000CF93DF93CDB7DEB7AA970FB6F894DEBF46 +:101E80000FBECDBFE8EEF1E088E08E0F9091F1003B +:101E900091938E13FBCF0E94B30A8091E80083FFD9 +:101EA0001FC18091E8019091E901492F50E04A302B +:101EB000510508F015C1FA01EB59FF4F0C94ED24C0 +:101EC000803881F0823809F00BC18091EC018F706D +:101ED0008093E9008091EB0085FB882780F91092C0 +:101EE000E90006C08091E4019091E50191118260C2 +:101EF0009091E800977F9093E8008093F100109212 +:101F0000F100C8C0282F2D7F09F0EAC0882319F0FE +:101F1000823061F0E5C08091EA01813009F0E0C0D3 +:101F2000933009F080E08093E5012BC08091EA01B5 +:101F3000811127C08091EC018F7009F4D1C080938A +:101F4000E9002091EB0020FF1CC0933021F4809128 +:101F5000EB00806214C09091EB0090619093EB00D5 +:101F600021E030E0A90102C0440F551F8A95E2F735 +:101F70004093EA001092EA008091EB008860809321 +:101F8000EB001092E9008091E800877F86C0811104 +:101F9000A7C01091EA011F778091E3008078812B20 +:101FA0008093E3008091E800877F8093E8000E949F +:101FB000550D8091E80080FFFCCF8091E3008068A0 +:101FC0008093E300111102C082E001C083E080939E +:101FD000E70186C08058823008F082C08091EA0113 +:101FE0009091EB018C3D53E0950779F583E08A836E +:101FF0008AE289834FB7F894DE01139620E03EE031 +:1020000051E2E32FF0E050935700E49120FF03C02A +:10201000E295EF703F5FEF708E2F90E0EA3010F0A6 +:10202000C79601C0C0968D939D932F5F243149F7C9 +:102030004FBF8091E800877F8093E8006AE270E0FC +:10204000CE0101960E945C0C14C0AE014F5F5F4F41 +:102050006091EC010E94A30BBC01892B09F440C0E4 +:102060009091E800977F9093E80089819A810E947F +:10207000BF0C8091E8008B778093E80031C08038F6 +:1020800079F58091E800877F8093E8008091E301F3 +:102090008093F1008091E8008E778093E8000E94A1 +:1020A000550D1EC081111CC09091EA019230C0F400 +:1020B0008091E800877F8093E8009093E3010E947D +:1020C000550D8091E301811106C08091E30087FDE9 +:1020D00002C081E001C084E08093E7010E949F0A72 +:1020E0008091E80083FF0AC08091E800877F809399 +:1020F000E8008091EB0080628093EB00AA960FB617 +:10210000F894DEBF0FBECDBFDF91CF911F91089530 +:102110000895CF938091E7018823A1F0C091E90051 +:10212000CF709091EC00892F817090FD80E8C82BD2 +:102130001092E9008091E80083FD0E94370FCF7074 +:10214000C093E900CF91089590936B0180936A0149 +:102150000895E0916A01F0916B01309721F00190B0 +:10216000F081E02D099480E00895E0916A01F091FA +:102170006B01309721F00280F381E02D09940895DE +:10218000E0916A01F0916B01309721F00480F581B4 +:10219000E02D09940895209168013091690182171A +:1021A000930771F09093690180936801E0916A014F +:1021B000F0916B01309721F00680F781E02D0994B2 +:1021C000089520916601309167018217930771F09D +:1021D0009093670180936601E0916A01F0916B0131 +:1021E000309721F00084F185E02D09940895089539 +:1021F0000C94F7100E94CA1C0E947F060C94901D3C +:10220000CF92DF92EF92FF920F931F93CF93DF93C2 +:10221000CDB7DEB72B970FB6F894DEBF0FBECDBF9C +:102220000E9497068DE6C82E81E0D82E00E010E0CF +:10223000E02E802F0E948507F60141916F01F42E58 +:10224000F826B1F40F5F1F4F0E30110589F78FEF9D +:1022500089838A831B820E94D31C8160782F9D838F +:102260008C8349815A816B818D810E94A31140C06A +:102270009091CE0191FF04C08B870E948B078B85C4 +:1022800020E030E04F2D50E0922FBA01022E02C024 +:10229000759567950A94E2F760FF24C02E83EF825C +:1022A00021E030E0690102C0CC0CDD1C9A95E2F718 +:1022B00090E08C219D21892B09F420E028870E9441 +:1022C000D31C8160782F9A8789874E815F816885CA +:1022D0008A850E94A311F801E359FE4F8081C82628 +:1022E000C08206C02F5F3F4F2630310569F6AACF66 +:1022F0000E94772010916C010E94A9101817A1F07C +:102300000E94A91080936C012B960FB6F894DEBF43 +:102310000FBECDBFDF91CF911F910F91FF90EF9036 +:10232000DF90CF900C94A2092B960FB6F894DEBFE5 +:102330000FBECDBFDF91CF911F910F91FF90EF9016 +:10234000DF90CF900895CF93DF93CDB7DEB72B9773 +:102350000FB6F894DEBF0FBECDBF4F835887698795 +:102360007A878B87DE01119686E0FD0111928A95AE +:10237000E9F785E0FE01379601900D928A95E1F725 +:1023800049815A816B817C818D819E810E94B9181F +:102390002B960FB6F894DEBF0FBECDBFDF91CF9165 +:1023A0000895CF93882309F4C2C0C82F823859F406 +:1023B0000E94A91081FDBBC089E30E94551B0E94A9 +:1023C000121C89E30CC0833879F40E94A91080FDA7 +:1023D000AEC083E50E94551B0E94121C83E50E943B +:1023E000971BCF910C94121C843859F40E94A910A9 +:1023F00082FD9DC087E40E94551B0E94121C87E449 +:10240000EECF8CEF8C0F813A48F48C2F0E94B822CB +:1024100081118DC08C2F0E94551BE3CF80E28C0F61 +:10242000883048F4C77081E001C0880FCA95EAF788 +:102430000E94DB1BD6CF8BE58C0F833078F4C53A36 +:1024400029F0C63A31F083E890E005C081E890E0D9 +:1024500002C082E890E0CF910C94CB1088E58C0FFD +:10246000833108F064C0C83A39F1C93A41F1CA3A37 +:1024700049F1CB3A51F1CC3A59F1CD3A61F1C03B37 +:1024800069F1CE3A71F1CF3A79F1C13B81F1C23BAA +:1024900089F1C33B91F1C43B99F1C53BA1F1C63B26 +:1024A000A9F1C73BB1F1C83BB9F1C93BC1F1CA3B86 +:1024B000C9F180E090E038C082EE90E035C089EE4E +:1024C00090E032C08AEE90E02FC085EB90E02CC007 +:1024D00086EB90E029C087EB90E026C08CEC90E082 +:1024E00023C08DEC90E020C083E891E01DC08AE815 +:1024F00091E01AC082E991E017C084E991E014C02C +:1025000081E292E011C083E292E00EC084E292E0A8 +:102510000BC085E292E008C086E292E005C087E247 +:1025200092E002C08AE292E0CF910C94E110CF9148 +:102530000895882309F44BC0823859F40E94A910E9 +:1025400081FF45C089E30E94551B0E94121C89E34C +:102550000CC0833871F40E94A91080FF38C083E555 +:102560000E94551B0E94121C83E50E94971B0C942D +:10257000121C843859F40E94A91082FF28C087E4F5 +:102580000E94551B0E94121C87E4EFCF9CEF980F0E +:10259000913A58F390E2980F983050F4877091E098 +:1025A00001C0990F8A95EAF7892F0E94E11BDFCFBE +:1025B0009BE5980F933020F480E090E00C94CB10D2 +:1025C000885A833120F480E090E00C94E110089563 +:1025D000882321F00E94DB1B0C94121C0895882391 +:1025E00021F00E94E11B0C94121C0895BF92CF921F +:1025F000DF92EF92FF920F931F93CF93DF9300D060 +:1026000000D000D0CDB7DEB725E0FC01DE01119689 +:1026100001900D922A95E1F7FC0140813181028100 +:10262000258122952F7063817481672B09F4E5C29F +:102630003F3F19F44F3F09F4E0C27C0149833A83DC +:1026400089819A812E830E94141B182FB92E0E9413 +:10265000131B0E94DA19EB2DE295EF70F0E0E159BF +:10266000FF4F2E810C94ED248B2D807F9B2D9F702E +:10267000F92E882319F0F29480EFF822002349F014 +:10268000FF2009F467C28F2D0E94EB1B0E94121CD1 +:1026900061C2812F0E949912FF2009F4AEC28F2DD2 +:1026A0000E94F11B26960FB6F894DEBF0FBECDBF79 +:1026B000DF91CF911F910F91FF90EF90DF90CF901E +:1026C000BF900C94121C3B2D307F8B2D8F703032BD +:1026D00011F08295807F112319F0113021F12CC067 +:1026E0000023B9F0222309F4A0C1213009F09DC1D3 +:1026F00026960FB6F894DEBF0FBECDBFDF91CF9107 +:102700001F910F91FF90EF90DF90CF90BF900C94AE +:10271000FB1B222319F0213009F46FC28E830E9423 +:10272000FE1B8E8196C1002321F0223008F065C285 +:102730007CC1211162C28DC1002321F0222309F442 +:1027400074C108C2222309F484C119C22B2D269515 +:102750002695237030E02115310521F02130310517 +:10276000D1F04BC2002321F0812F9B2D937002C02A +:1027700080E090E026960FB6F894DEBF0FBECDBF86 +:10278000DF91CF911F910F91FF90EF90DF90CF904D +:10279000BF900C94CB10002321F0812F9B2D9370C0 +:1027A00002C080E090E026960FB6F894DEBF0FBE20 +:1027B000CDBFDF91CF911F910F91FF90EF90DF90F0 +:1027C000CF90BF900C94E110812F002319F00E944C +:1027D0007F1F02C00E94E71F26960FB6F894DEBF47 +:1027E0000FBECDBFDF91CF911F910F91FF90EF9062 +:1027F000DF90CF90BF900C946C208B2D837009F0EC +:102800007BC00111FAC1812F829586958770880F50 +:10281000880F912F9F70C92ED12CE12CF12C082EFE +:1028200004C0CC0CDD1CEE1CFF1C0A94D2F714FF74 +:1028300012C04FE050E060E070E004C0440F551F4C +:10284000661F771F8A95D2F7CB01BA016095709504 +:102850008095909503C060E070E0CB012B2D26950C +:1028600026952370422F50E042305105D9F0433075 +:10287000510569F16C297D298E299F294130510527 +:1028800051F126960FB6F894DEBF0FBECDBFDF9193 +:10289000CF911F910F91FF90EF90DF90CF90BF905D +:1028A0000C94011A6C297D298E299F2926960FB632 +:1028B000F894DEBF0FBECDBFDF91CF911F910F9176 +:1028C000FF90EF90DF90CF90BF900C941D1A0E9464 +:1028D000011AC701B60126960FB6F894DEBF0FBEE7 +:1028E000CDBFDF91CF911F910F91FF90EF90DF90BF +:1028F000CF90BF900C94E519002319F08B2D8170B7 +:1029000001C08695882309F478C1812F8295869528 +:102910008770880F880F912F9F70C92ED12CE12CC2 +:10292000F12C082E04C0CC0CDD1CEE1CFF1C0A94FC +:10293000D2F714FF12C04FE050E060E070E004C036 +:10294000440F551F661F771F8A95D2F7CB01BA0136 +:10295000609570958095909503C060E070E0CB0124 +:102960002B2D269526952370422F50E0423051059D +:10297000D9F04330510569F16C297D298E299F29B1 +:102980004130510551F126960FB6F894DEBF0FBEC7 +:10299000CDBFDF91CF911F910F91FF90EF90DF900E +:1029A000CF90BF900C94DB1A6C297D298E299F292A +:1029B00026960FB6F894DEBF0FBECDBFDF91CF9144 +:1029C0001F910F91FF90EF90DF90CF90BF900C94EC +:1029D000F71A0E94DB1AC701B60126960FB6F894C3 +:1029E000DEBF0FBECDBFDF91CF911F910F91FF9042 +:1029F000EF90DF90CF90BF900C94BF1A103FD1F1B1 +:102A000018F4103E50F4A1C0123F09F463C008F45A +:102A10004CC0133F09F473C098C01F708B2D8F7189 +:102A20000023A1F00E94581A812F26960FB6F89421 +:102A3000DEBF0FBECDBFDF91CF911F910F91FF90F1 +:102A4000EF90DF90CF90BF900C94E8120E94791A1B +:102A5000812F26960FB6F894DEBF0FBECDBFDF9153 +:102A6000CF911F910F91FF90EF90DF90CF90BF908B +:102A70000C94EF120023A9F02111BFC08B2D8F7190 +:102A800026960FB6F894DEBF0FBECDBFDF91CF9173 +:102A90001F910F91FF90EF90DF90CF90BF900C941B +:102AA0009E1A223008F0A9C0E9CF0023A9F08B2D8F +:102AB0008F7126960FB6F894DEBF0FBECDBFDF91A3 +:102AC000CF911F910F91FF90EF90DF90CF90BF902B +:102AD0000C94581A002359F38B2D8F7126960FB63C +:102AE000F894DEBF0FBECDBFDF91CF911F910F9144 +:102AF000FF90EF90DF90CF90BF900C94791A002355 +:102B000099F08B2D8F7126960FB6F894DEBF0FBE0D +:102B1000CDBFDF91CF911F910F91FF90EF90DF908C +:102B2000CF90BF900C94431A26960FB6F894DEBF50 +:102B30000FBECDBFDF91CF911F910F91FF90EF900E +:102B4000DF90CF90BF900C94391A0023A9F0222374 +:102B500009F4ADCF812F26960FB6F894DEBF0FBED5 +:102B6000CDBFDF91CF911F910F91FF90EF90DF903C +:102B7000CF90BF900C94D111222309F4ADCF812FB7 +:102B800026960FB6F894DEBF0FBECDBFDF91CF9172 +:102B90001F910F91FF90EF90DF90CF90BF900C941A +:102BA00099124B2D4F70612FC7010E943604269653 +:102BB0000FB6F894DEBF0FBECDBFDF91CF911F914E +:102BC0000F91FF90EF90DF90CF90BF900C945D1924 +:102BD0004B2D4F70612FC70126960FB6F894DEBFBC +:102BE0000FBECDBFDF91CF911F910F91FF90EF905E +:102BF000DF90CF90BF900C944B0826960FB6F894B8 +:102C0000DEBF0FBECDBFDF91CF911F910F91FF901F +:102C1000EF90DF90CF90BF9008950E94F81B0E9424 +:102C2000CD1B0E94121C0E941D210E946C2080E07E +:102C300090E00E94CB1080E090E00C94E1100E94A4 +:102C4000E81B0C940D160E94141B292F22952F703F +:102C500030E02C3031054CF42A3031056CF4225030 +:102C600031092230310588F407C02C30310549F094 +:102C70002F30310531F009C0803E48F0803F29F403 +:102C800006C093FB882780F9089580E0089581E0CD +:102C90000895CF93DF9300D000D01F92CDB7DEB759 +:102CA0000F900F900F900F900F90DF91CF9108959C +:102CB000CF93DF9300D000D000D0CDB7DEB72696FB +:102CC0000FB6F894DEBF0FBECDBFDF91CF91089550 +:102CD0001F93CF93DF93C0917B0116E080917C011D +:102CE000C81799F0D0E01C9FF0011D9FF00D112432 +:102CF000E358FE4F408151816281738184819581C7 +:102D00000E9458162196C770E9CFDF91CF911F918D +:102D100008954091AD015091AE016091AF01709165 +:102D2000B0018091B1019091B2010C94581680913C +:102D3000B20182958F7009F054C08091AF01882351 +:102D400009F44FC080917B01A0917C016091AD019D +:102D50007091AE014091B0015091B101B6E08A1777 +:102D600009F43FC090E041155105C1F17F3F11F4D6 +:102D70006F3FA1F1B89FF001B99FF00D1124E35806 +:102D8000FE4F218172132AC02081621327C0228145 +:102D9000211124C0238134812417350710F42150D8 +:102DA0003109241B350B283C3105C0F42091B201B8 +:102DB0002F7020612093B20126E0289FF001299F07 +:102DC000F00D1124EE57FE4F80818F70806180835B +:102DD0008DEA91E00E94F6120C94681601968770B5 +:102DE000BECF0895CF92DF92EF92FF920F931F9381 +:102DF000CF93DF93CDB7DEB762970FB6F894DEBFFF +:102E00000FBECDBF8C0185E0F801DE011D9601905B +:102E10000D928A95E1F7D8014C9111965C9111972A +:102E200012966C9112971396CD90DC901497309176 +:102E3000AD017091AE018091B0019091B101009708 +:102E400009F46BC17F3F19F43F3F09F466C1E0907C +:102E5000AF01EE2009F4C0C02091B201C816D90616 +:102E600028F0F601E81BF90BCF0104C0809590957E +:102E70008C0D9D1DFF24F394883C910578F0F12C76 +:102E8000207F09F0C6C07C2DD98AC88A89890E9412 +:102E900049168DEA91E00E94F612B1C0822F807F20 +:102EA00009F046C0751314C0341312C0611110C06C +:102EB0002F7020612093B2010E9489168DEA91E063 +:102EC0000E94F6128091B201D80115968C932EC003 +:102ED000CD2819F15F3F11F44F3FF9F0F62E611143 +:102EE0001CC080917B0120917C0136E0821709F49F +:102EF0005AC090E0389FF001399FF00D1124E3583B +:102F0000FE4F7181571306C07081471303C0728151 +:102F1000711103C001968770E9CFF62E662309F47C +:102F200018C18091B20181608093B201F12C11C16E +:102F3000751308C0341306C0611104C08091B2013A +:102F4000D801C3C04D875E878D859E856A8B0E94A0 +:102F500023166A898823E1F16623D1F12091B20119 +:102F6000822F82958F7090E0029774F08091AD016E +:102F70009091AE0198878F831986DB86CA862C874D +:102F8000CE0107960E94F61286E0F801ADEAB1E0A4 +:102F900001900D928A95E1F70E9497160E9489167A +:102FA000FF24F394D6C04D875E878D859E850E9451 +:102FB000141B292F22952F7030E0223031050CF0A0 +:102FC000BCC09F7009F0B6C0805E883008F4C1C0F4 +:102FD000C8010E94F612E4CFC816D90608F453C0FF +:102FE000F601E81BF90BCF01883C910508F450C0AD +:102FF000F12C7C2DD98AC88A89890E944916EDEA6C +:10300000F1E086E0DF011D928A95E9F70E948916BA +:10301000A0C0751314C0341312C0611110C0809188 +:10302000B201F8018583C8010E94F61286E0EDEA3C +:10303000F1E0DF011D928A95E9F7FE2C8AC04D87E9 +:103040005E878D859E856A8B0E9423166A898823F8 +:1030500009F4BECF662309F4BBCF2091B201822FC1 +:1030600082958F7090E002970CF48ECF8091AD0125 +:103070009091AE019A8389831B82DD82CC822E835C +:10308000CE0101967FCF809590958C0D9D1DACCF84 +:10309000F62E662309F49CCF75132EC034132CC072 +:1030A0002091B20120FD1FC0822F82958F70D9F030 +:1030B000D80115962C9315978F3049F08F5F982F74 +:1030C0009295907F822F8F70892B15968C93C801D3 +:1030D0000E94F61286E0F801ADEAB1E001900D928F +:1030E0008A95E1F793CF86E0F801ADEAB1E001906F +:1030F0000D928A95E1F72DC04D875E878D859E855F +:103100000E942316811140CF8091B201816080938B +:10311000B201C8010E94F6121CC0662309F458CF00 +:103120004D875E878D859E850E942316882309F42E +:103130004FCF2ACF811148CF0CC0243031050CF07D +:1031400047CF9F7009F440CFF8019581907F09F037 +:103150003BCF8F2D62960FB6F894DEBF0FBECDBF6A +:10316000DF91CF911F910F91FF90EF90DF90CF9063 +:1031700008951F93CF93DF93CDB7DEB72C970FB68B +:10318000F894DEBF0FBECDBF4F83588769877A871B +:103190008B879C87CE0107960E94F216882369F0E0 +:1031A0008F8198852A853B85232BF1F19F3F09F07C +:1031B00063C08F3F09F060C037C086E0FE013796DC +:1031C000DE01119601900D928A95E1F76F81788565 +:1031D000EA85FB85309741F17F3F11F46F3F21F184 +:1031E00020917C0130E0C9010196877099274091B8 +:1031F0007B0150E08417950709F447C069837A83FF +:10320000FD83EC8396E0929FD001939FB00D112433 +:10321000A358BE4FFE01319601900D929A95E1F7A9 +:1032200080937C010E94681616E080917B0190914A +:103230007C018917C1F1189FC001112483589E4F4A +:103240000E94F216882379F1E0917B011E9FF00124 +:103250001124E358FE4F4081518162817381848142 +:1032600095810E94581680917B0190E001968770AD +:10327000992780937B01D9CF4F81588569857A85BD +:103280008B859C850E945816CFCF0E941F161092E6 +:103290007C0110927B01EDEAF1E086E0DF011D92F6 +:1032A0008A95E9F7C1CF2C960FB6F894DEBF0FBE12 +:1032B000CDBFDF91CF911F910895EF92FF920F93B1 +:1032C0001F93CF93DF938C01892B09F46CC0F12CF1 +:1032D000EE24E394E8012196F8018491843740F4C8 +:1032E000843008F051C0813081F0823019F15BC028 +:1032F000853709F444C0A8F19CE7980F903708F08F +:1033000052C08F770E94991241C00E5F1F4FFE017D +:10331000C49180E28C0F883048F4C7708E2D01C0B4 +:10332000880FCA95EAF70E94EB1B14C08C2F0E94ED +:10333000D1112DC00E5F1F4FFE01C49180E28C0F92 +:10334000883058F4C7708E2D01C0880FCA95EAF7EF +:103350000E94F11B0E94121C1AC08C2F0E9499120D +:1033600016C00E5F1F4FFE01C491CC2381F08FE980 +:103370009FE00197F1F700C00000C150F6CF0E5F4B +:103380001F4FFE01F49003C00E94D1118E018F2DBA +:10339000882309F49FCFEFE9FFE03197F1F700C0F0 +:1033A00000008150F5CFDF91CF911F910F91FF90D9 +:1033B000EF90089508956093B7017093B8018093DA +:1033C000B9019093BA010C940D160F931F930091BD +:1033D000B7011091B8012091B9013091BA01DC0117 +:1033E000CB01802B912BA22BB32B8093B701909311 +:1033F000B801A093B901B093BA011F910F910C9439 +:103400000D160F931F930091B7011091B8012091F1 +:10341000B9013091BA01DC01CB0180239123A223B1 +:10342000B3238093B7019093B801A093B901B093EF +:10343000BA011F910F910C940D160F931F930091D9 +:10344000B7011091B8012091B9013091BA01DC01A6 +:10345000CB0180279127A227B3278093B7019093B0 +:10346000B801A093B901B093BA011F910F910C94C8 +:103470000D161092B3011092B4011092B501109282 +:10348000B6010C940D1641E050E060E070E004C01D +:10349000440F551F661F771F8A95D2F74093B301DB +:1034A0005093B4016093B5017093B6010C940D165E +:1034B00041E050E060E070E004C0440F551F661F1B +:1034C000771F8A95D2F78091B3019091B401A091B2 +:1034D000B501B091B601482B592B6A2B7B2B409339 +:1034E000B3015093B4016093B5017093B6010C948D +:1034F0000D1641E050E060E070E004C0440F551F3D +:10350000661F771F8A95D2F7409550956095709504 +:103510008091B3019091B401A091B501B091B60131 +:10352000482359236A237B234093B3015093B4016A +:103530006093B5017093B6010C940D1641E050E014 +:1035400060E070E004C0440F551F661F771F8A9526 +:10355000D2F78091B3019091B401A091B501B091DF +:10356000B601482759276A277B274093B301509318 +:10357000B4016093B5017093B6010C940D160F93CE +:103580001F930091B3011091B4012091B5013091C6 +:10359000B601DC01CB01802B912BA22BB32B8093A6 +:1035A000B3019093B401A093B501B093B6011F91FC +:1035B0000F910C940D160F931F930091B30110916E +:1035C000B4012091B5013091B601DC01CB0180231B +:1035D0009123A223B3238093B3019093B401A093CA +:1035E000B501B093B6011F910F910C940D160F9376 +:1035F0001F930091B3011091B4012091B501309156 +:10360000B601DC01CB0180279127A227B327809345 +:10361000B3019093B401A093B501B093B6011F918B +:103620000F910C940D160895CF92DF92EF92FF92B6 +:103630000F931F93CF93DF938C01C090B701D0906D +:10364000B801E090B901F090BA014091B3015091F6 +:10365000B4016091B5017091B601C42AD52AE62A59 +:10366000F72ACFE1D0E0D701C6010C2E04C0B695F1 +:10367000A795979587950A94D2F780FF07C0B80160 +:103680008C2F0E946E088130910531F4219758F7F4 +:10369000B80180E00E946E08DF91CF911F910F91D9 +:1036A000FF90EF90DF90CF90089590910C019923B7 +:1036B00021F090910D01911109C020910E013091DE +:1036C0000F01F90132969FEF40E01FC0982F9695A9 +:1036D000969596959F3050F5E0910E01F0910F016F +:1036E000E90FF11D877021E030E0A90102C0440F0D +:1036F000551F8A95E2F7CA019181892B818308952C +:103700009F3F39F04F5F4E3041F051915813F8CF41 +:103710000DC05111F7CF942FF5CF9F3F39F0F9012C +:10372000E90FF11D97FDFA95828308950895909110 +:103730000C01992321F090910D01911109C0209164 +:103740000E0130910F01F9013296205F3F4F1FC0EB +:10375000982F9695969596959F30F0F4E0910E01EE +:10376000F0910F01E90FF11D877021E030E0A90110 +:1037700002C0440F551F8A95E2F7CA0180959181D6 +:103780008923818308953196E217F30729F0908108 +:103790009813F9CF1082F7CF089581E090E0E0917F +:1037A0000E01F0910F01E80FF91F10820196803190 +:1037B0009105A9F708959091CD01892B8093CD01B2 +:1037C000089580959091CD0189238093CD0108952E +:1037D0001092CD0108959091CC01892B8093CC015A +:1037E000089580959091CC0189238093CC01089510 +:1037F0001092CC0108958093BB0108951092BB01F3 +:10380000089580910E0190910F01FC0131969C0169 +:10381000205F3F4F80E0919191118F5FE217F30796 +:10382000D1F70895E0910E01F0910F018091CD0143 +:103830008083E0910E01F0910F0190818091CC0185 +:10384000892B80838091BB01882361F0E0910E0178 +:10385000F0910F019081892B80830E94011C8111BE +:103860001092BB0180910E0190910F010C94B51044 +:10387000CF92DF92EF92FF926C01EE24FF24C114ED +:10388000D104E104F10421F0C701B60120E101C037 +:1038900020E0C72ED82EE92EFF24C114D104E10464 +:1038A000F10419F0285FC701B6016B017C0154E0F7 +:1038B000F694E794D794C7945A95D1F7C114D104DC +:1038C000E104F10419F02C5FC701B6016B017C0122 +:1038D00042E0F694E794D794C7944A95D1F7C1147F +:1038E000D104E104F10419F02E5FC701B601DC0137 +:1038F000CB01B695A79597958795892B8A2B8B2B0E +:1039000009F02F5F822FFF90EF90DF90CF90089506 +:103910008091E701843009F11092CF0120E488E121 +:1039200090E00FB6F894A895809360000FBE2093A6 +:10393000600083B7817F846083BF83B7816083BF6A +:103940007894889583B78E7F83BF88E10FB6F8940B +:1039500080936000109260000FBE0895089508954E +:10396000CF930E94AE1C0E9497060E94AF1CC0E03D +:103970008C2F0E948507811104C0CF5FCE30C1F724 +:1039800001C081E0CF9108950E941F160E94A910E6 +:103990000C94A20982E084BD93E095BD9AEF97BD97 +:1039A00080936E0008952FB7F8948091D001909184 +:1039B000D101A091D201B091D3012FBF0895CF9230 +:1039C000DF92EF92FF920F931F932FB7F8944091DD +:1039D000D0015091D1016091D2017091D3012FBFDC +:1039E0006A017B01EE24FF248C0120E030E0C01648 +:1039F000D106E206F30610F4415051099A01281B42 +:103A0000390BC9011F910F91FF90EF90DF90CF907C +:103A100008951F920F920FB60F9211248F939F93C8 +:103A2000AF93BF938091D0019091D101A091D20129 +:103A3000B091D3010196A11DB11D8093D001909347 +:103A4000D101A093D201B093D301BF91AF919F91C7 +:103A50008F910F900FBE0F901F9018950E94A60D8A +:103A6000F8942FEF87EA91E6215080409040E1F7EB +:103A700000C0000087E090EBDC018093F0019093A0 +:103A8000F101A093F201B093F3019CE088E10FB63D +:103A9000F894A895809360000FBE90936000FFCFCC +:103AA000EF92FF920F931F93CF93DF93D82FC0E035 +:103AB0008C2F0E94850700E010E0E82EF12CC70152 +:103AC000002E02C0959587950A94E2F780FD06C006 +:103AD0000F5F1F4F0630110591F709C0602F7C2F33 +:103AE00080E00E944C08D813F3CF81E004C0CF5F80 +:103AF000CE30F1F680E0DF91CF911F910F91FF90D2 +:103B0000EF900895CF93C82F8CE20E94501D882318 +:103B100021F08C2FCF910C94501D80E0CF9108950F +:103B2000CF930E94D71E811102C00E94BD1EC5E620 +:103B3000C15049F00E9497068FE39CE90197F1F785 +:103B400000C00000F5CF89E20E94821D811113C1DF +:103B50008AE20E94821D81110E94BD1E85E00E94A2 +:103B6000821D81110E942E1D0E94E21E8093CE01B3 +:103B700087E00E94821D8823A9F18BE10E94821DAB +:103B8000882351F08091CE0181FB222720F991E01A +:103B9000922790FB81F90EC08EE00E94821D88233F +:103BA00061F08091CE0182FB222720F991E09227DB +:103BB00090FB82F98093CE0115C080E10E94821DA6 +:103BC0009091CE01882341F093FB222720F981E0D8 +:103BD000822780FB93F904C0892F809580FB90F9A0 +:103BE0009093CE018091CE010E94E61E0E94F41EA9 +:103BF0008093E10180EE0E94821D882341F0809134 +:103C0000E101982F909590FB80F98093E10189E381 +:103C10000E94821D882359F08091E10181FB2227B7 +:103C200020F991E0922790FB81F98093E10182EEE7 +:103C30000E94821D882359F08091E10182FB222796 +:103C400020F991E0922790FB82F98093E10186EEC2 +:103C50000E94821D882359F08091E10183FB222775 +:103C600020F991E0922790FB83F98093E10183EEA4 +:103C70000E94821D882359F08091E10184FB222754 +:103C800020F991E0922790FB84F98093E10185E38C +:103C90000E94821D882359F08091E10185FB222733 +:103CA00020F991E0922790FB85F98093E10181E36F +:103CB0000E94821D882359F08091E10186FB222712 +:103CC00020F991E0922790FB86F98093E10181E150 +:103CD0000E94821D882359F08091E10187FB2227F1 +:103CE00020F991E0922790FB87F98093E101809180 +:103CF000E1010E94F81E8091E10187FB882780F98D +:103D000080930D0187E20E94821DC82F8EE10E94E0 +:103D1000821D8111C2608FE10E94821D8111C460E9 +:103D200080E20E94821D8111C86081E20E94821D92 +:103D30008111C06182E20E94821D8111C06283E212 +:103D40000E94821D8111C06484E20E94821D88232A +:103D500011F0C06802C0CC2329F08C2F0E94EF1E06 +:103D60006C2F03C00E94EB1E682F70E080E090E093 +:103D7000CF910C94DB19CF9108956DEE7EEF80E02A +:103D800090E00E94232560E082E090E00E941525EB +:103D900060E083E090E00E94152560E084E090E020 +:103DA0000E94152560E085E090E00C94152580E0E8 +:103DB00090E00E940F2521E08D3E9E4F09F020E00B +:103DC000822F089582E090E00C940725682F82E00E +:103DD00090E00C94152583E090E00C940725682F63 +:103DE00083E090E00C94152584E090E00C94072586 +:103DF000682F84E090E00C9415258091D60180FF17 +:103E00000BC06091130185E0689FB0011124759586 +:103E10006795759567952BC081FF09C06091130167 +:103E200085E0689FB00111247595679520C082FFD9 +:103E300007C06091130185E0689FB001112417C08D +:103E40009091D7019923D1F060911201961788F7CC +:103E50002091130185E0289F90011124929FA001D9 +:103E6000939F500D112470E0CA010E94D92460383C +:103E7000710540F46115710539F002C065E070E02C +:103E8000862F08958FE7089581E008958091D601E7 +:103E900080FF08C06091110170E075956795759578 +:103EA000679521C081FF06C06091110170E0759592 +:103EB000679519C082FF04C06091110170E010C0C5 +:103EC0009091D7019923C1F0609110019617A0F746 +:103ED00080911101899FC001112470E00E94D924B2 +:103EE0006038710528F46115710521F0862F089559 +:103EF0008FE7089581E0089561E070E0F4CF803F9E +:103F000021F40E94FD1E819504C0813F29F40E9486 +:103F1000FD1E8093DA010895823F21F40E94FD1E68 +:103F2000819504C0833F29F40E94FD1E8093D9012E +:103F30000895893F19F40E94461F05C08A3F31F455 +:103F40000E94461F81958093DB0108958B3F21F4E9 +:103F50000E94461F819504C08C3F29F40E94461F91 +:103F60008093DC010895843F21F48091D801816021 +:103F700017C0853F21F48091D801826011C0863F2F +:103F800021F48091D80184600BC0873F21F4809197 +:103F9000D801886005C0883F31F48091D8018061E4 +:103FA0008093D80108958D3F21F48091D6018160DE +:103FB0000BC08E3F21F48091D601826005C08F3FF7 +:103FC00029F48091D60184608093D6010895803FC2 +:103FD00039F48091DA0187FF6CC01092DA0169C070 +:103FE000813F29F48091DA011816BCF362C09091E8 +:103FF000D901823F29F497FF5CC01092D90159C0C2 +:10400000833F19F41916CCF354C0893F41F48091D1 +:10401000DB0118160CF04DC01092DB014AC08A3F3C +:1040200029F48091DB0187FF44C0F6CF8B3F39F440 +:104030008091DC0187FF3DC01092DC013AC08C3FCB +:1040400029F48091DC011816BCF333C0843F21F4BD +:104050008091D8018E7F17C0853F21F48091D801CF +:104060008D7F11C0863F21F48091D8018B7F0BC0DA +:10407000873F21F48091D801877F05C0883F31F4C4 +:104080008091D8018F7E8093D80113C08D3F21F499 +:104090008091D6018E7F0BC08E3F21F48091D60196 +:1040A0008D7F05C08F3F29F48091D6018B7F80934F +:1040B000D6018091D90181110EC08091DA01811160 +:1040C0000AC08091DB01811106C08091DC01811161 +:1040D00002C01092D701089588ED91E00E94C010AF +:1040E0000E94D31C9093D5018093D40108951F930F +:1040F000CF93DF938091D4019091D5010E94DF1C72 +:10410000AC019091D701992321F02091140130E066 +:1041100006C0209115018AE0289F900111244217C2 +:10412000530708F486C08091D901C091DA01D0917B +:10413000DB011091DC01811107C0C11176C0D111E2 +:1041400074C0111172C075C09F3F19F09F5F9093AA +:10415000D701181624F40E94FD1E8093D901809186 +:10416000D90187FF05C00E94FD1E81958093D9016A +:104170001C1624F40E94FD1E8093DA018091DA015E +:1041800087FF05C00E94FD1E81958093DA01609132 +:10419000D901662339F1C091DA01CC2319F17727CF +:1041A00067FD7095872F972F0E94EA2323E333E35F +:1041B00043E35FE30E944E240E94B7236093D9013A +:1041C0006C2F772767FD7095872F972F0E94EA2322 +:1041D00023E333E343E35FE30E944E240E94B723CB +:1041E0006093DA011D1624F40E94461F8093DB01C0 +:1041F0008091DB0187FF05C00E94461F8195809357 +:10420000DB01111624F40E94461F8093DC0180918B +:10421000DC0187FF05C00E94461F81958093DC0169 +:10422000DF91CF911F910C946C209F3F09F08ECFAE +:1042300096CFDF91CF911F910895E8EDF1E085E0F1 +:10424000DF011D928A95E9F71092D7011092D601ED +:104250000895833081F128F4813059F08230D1F013 +:104260000895853009F449C0B8F1863009F456C084 +:10427000089580911501262F30E0280F311D2F3F22 +:10428000310524F4680F6093150108958FEF809332 +:104290001501089580911401262F30E0280F311D5B +:1042A0002F3F310524F4680F6093140108958FEFB8 +:1042B00080931401089580911301262F30E0280F78 +:1042C000311D2F3F310524F4680F609313010895C9 +:1042D0008FEF80931301089580911201262F30E013 +:1042E000280F311D2F3F310524F4680F6093120110 +:1042F00008958FEF80931201089580911101262F68 +:1043000030E0280F311D2F3F310524F4680F6093F2 +:10431000110108958FEF809311010895809110018C +:10432000262F30E0280F311D2F3F310524F4680F70 +:104330006093100108958FEF8093100108958330EA +:1043400011F128F4813049F0823091F008958530E0 +:1043500081F120F18630C1F108958091150168172F +:1043600020F4861B8093150108951092150108957D +:1043700080911401681720F4861B8093140108951E +:1043800010921401089580911301681720F4861B80 +:1043900080931301089510921301089580911201E2 +:1043A000681720F4861B8093120108951092120161 +:1043B000089580911101681720F4861B80931101E4 +:1043C000089510921101089580911001681720F44A +:1043D000861B8093100108951092100108950F9389 +:1043E0001F938D3109F46BC008F03FC08E3009F483 +:1043F0007DC0C0F4873009F46EC068F4863009F0DF +:10440000AFC08091CE01817F8E7F8093CE0181E00D +:104410008093DE01A6C0883009F458C08B3009F4BF +:104420009BC09EC0863109F497C078F4803109F4AE +:1044300070C0813109F094C00E941F1690910D0147 +:1044400081E0892780930D0187C0893109F484C0F8 +:104450008B3109F085C08091CE0181FB222720F9A4 +:1044600091E0922790FB81F94AC0853309F45BC043 +:1044700048F4873209F457C008F45AC0893209F465 +:1044800052C06EC0833438F48A3308F067C0883372 +:1044900009F462C065C0833409F445C0883409F06A +:1044A0005FC00E941F160FEF13ED20E30150104074 +:1044B0002040E1F700C000000E942E1D4DC00E9468 +:1044C00071230E94A9100E94A20946C00E94E21E08 +:1044D0000E94F41E41C09091CE01892F817090FFFF +:1044E00012C0917F9E7F9093CE013BC08091CE0100 +:1044F00082FB222720F991E0922790FB82F980939A +:10450000CE01992349F18091CE0181608093CE0143 +:1045100023C08091CE0183FB222720F991E09227CE +:1045200090FB83F9ECCF61E070E080E090E010C098 +:104530008D5141E050E060E070E08A019B0104C0D1 +:10454000000F111F221F331F8A95D2F7C901B8012E +:104550000E94DB190E941F1681E003C08953E9CF36 +:1045600080E01F910F91089580E0089580E0089504 +:10457000CF93C82F8091DE01813079F018F082301E +:10458000E9F187C0E0910E01F0910F018081813146 +:1045900069F0823209F07FC009C0E0910E01F0910C +:1045A0000F018081813111F0823261F48C2F0E94E1 +:1045B000B422811104C08C2F0E94EF211DC081E024 +:1045C00090E01AC08C2F0E94B622811114C0C43111 +:1045D00079F048F4CB3079F0C03109F060C082E066 +:1045E0008093DE0108C0C93219F0C83321F057C0EA +:1045F0001092DE0154C081E0817053C0C93289F14C +:1046000018F5C43171F1A8F4C73009F046C08AE04A +:104610008093150194E19093140193E0909313011A +:104620008093120188E08093110188E28093100149 +:1046300034C0CE51C63088F5EC2FF0E0E65DFE4F79 +:1046400080818093DD0129C0CE34E9F020F4CB34A1 +:1046500021F56AE013C0C13579F0C235F1F461E0AB +:104660000DC08091DD01882319F01092DD0115C085 +:1046700081E08093DE0115C061E006C08091DD011C +:104680000E9429210AC06AE08091DD010E949F21D9 +:1046900004C01092DE0180E004C081E002C080E02E +:1046A000ABCFCF910895E1E8F0E08081886080830E +:1046B0008081816080838FB7F89493E09093890024 +:1046C00090ED909388008FBF0895EFE6F0E0808131 +:1046D000826080830895EFE6F0E080818D7F8083A3 +:1046E0000895EFE6F0E0908182E0892780830895C5 +:1046F0001F920F920FB60F9211242F933F934F9357 +:104700005F936F937F938F939F93AF93BF93EF9339 +:10471000FF938091DF019091E00101969093E00179 +:104720008093DF01811103C082E00E94A209E09121 +:10473000E001E695E695F0E0E156F84FE4918091CE +:10474000DF018E1303C080E00E94A209FF91EF9168 +:10475000BF91AF919F918F917F916F915F914F9199 +:104760003F912F910F900FBE0F901F90189504D07E +:104770006894B1118DC0089570D088F09F5790F063 +:10478000B92F9927B751A0F0D1F0660F771F881F76 +:10479000991F1AF0BA95C9F712C0B13081F077D0DD +:1047A000B1E0089574C0672F782F8827B85F39F07B +:1047B000B93FCCF3869577956795B395D9F73EF4D5 +:1047C00090958095709561957F4F8F4F9F4F08957D +:1047D000E89409C097FB3EF490958095709561959B +:1047E0007F4F8F4F9F4F9923A9F0F92F96E9BB2751 +:1047F0009395F695879577956795B795F111F8CFCD +:10480000FAF4BB0F11F460FF1BC06F5F7F4F8F4F37 +:104810009F4F16C0882311F096E911C0772321F02D +:104820009EE8872F762F05C0662371F096E8862FC5 +:1048300070E060E02AF09A95660F771F881FDAF71C +:10484000880F9695879597F9089557FD9058440FCE +:10485000551F59F05F3F71F04795880F97FB991FDF +:1048600061F09F3F79F0879508951216130614069C +:10487000551FF2CF4695F1DF08C016161706180629 +:10488000991FF1CF86957105610508940895E89404 +:10489000BB2766277727CB0197F908950BD078C0FF +:1048A00069D028F06ED018F0952309F05AC05FC087 +:1048B0001124EECFCADFA0F3959FD1F3950F50E0FE +:1048C000551F629FF001729FBB27F00DB11D639FC2 +:1048D000AA27F00DB11DAA1F649F6627B00DA11D68 +:1048E000661F829F2227B00DA11D621F739FB00D0E +:1048F000A11D621F839FA00D611D221F749F33277E +:10490000A00D611D231F849F600D211D822F762F16 +:104910006A2F11249F5750408AF0E1F088234AF013 +:10492000EE0FFF1FBB1F661F771F881F915050405F +:10493000A9F79E3F510570F014C0AACF5F3FECF37A +:10494000983EDCF3869577956795B795F795E7954B +:104950009F5FC1F7FE2B880F911D9695879597F95C +:10496000089597F99F6780E870E060E008959FEFF1 +:1049700080EC089500240A941616170618060906F6 +:10498000089500240A9412161306140605060895C5 +:10499000092E0394000C11F4882352F0BB0F40F44D +:1049A000BF2B11F460FF04C06F5F7F4F8F4F9F4F8D +:1049B000089597FB072E16F4009407D077FD09D0D1 +:1049C0000E94F32407FC05D03EF4909581959F4FFB +:1049D0000895709561957F4F0895EE0FFF1F059024 +:1049E000F491E02D0994AA1BBB1B51E107C0AA1F3B +:1049F000BB1FA617B70710F0A61BB70B881F991F80 +:104A00005A95A9F780959095BC01CD010895F99923 +:104A1000FECF92BD81BDF89A992780B50895A8E18F +:104A2000B0E042E050E00C942A25262FF999FECF01 +:104A30001FBA92BD81BD20BD0FB6F894FA9AF99ABB +:104A40000FBE019608950E941525272F0C94162558 +:104A5000DC01CB01FC01F999FECF06C0F2BDE1BD3E +:104A6000F89A319600B40D9241505040B8F708952D +:044A7000F894FFCFE8 +:104A74002002A409320A0F0ADB09A7090101BC01BB +:104A840028080A03140A3F4D363960071307DD0668 +:104A9400A4063706500669068206010203040506C9 +:044AA40007080900F6 +:00000001FF diff --git a/keyboard/ergodox_ez/keymaps/osx_de/osx_de_highres.png b/keyboard/ergodox_ez/keymaps/osx_de/osx_de_highres.png index 1d5226974..8e709ee26 100644 Binary files a/keyboard/ergodox_ez/keymaps/osx_de/osx_de_highres.png and b/keyboard/ergodox_ez/keymaps/osx_de/osx_de_highres.png differ diff --git a/keyboard/planck/keymaps/tak3over.c b/keyboard/planck/keymaps/tak3over.c new file mode 100644 index 000000000..c49af7d0e --- /dev/null +++ b/keyboard/planck/keymaps/tak3over.c @@ -0,0 +1,136 @@ +// This is the canonical layout file for the Quantum project. If you want to add another keyboard, +// this is the style you want to emulate. +// +// Custom style by tak3over. Dropped the dvorak layer as it was not being used by me. Shifted over +// keys to make room for a second function key on the left side. Now has a keypad and most all +// standard keyboard keys. Including Delete. See TK layer. + +#include "planck.h" +#ifdef BACKLIGHT_ENABLE + #include "backlight.h" +#endif + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. +#define _QW 0 +#define _CM 1 +#define _TK 2 +#define _LW 3 +#define _RS 4 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | GUI | TK |Raise | Space |Lower | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_QW] = { + {KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, + {KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT}, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, + {KC_LCTL, KC_LALT, KC_LGUI, MO(_TK), MO(_LW), KC_SPC, KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, + +/* Colemak + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | R | S | T | D | H | N | E | I | O | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | GUI | TK |Raise | Space |Lower | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_CM] = { + {KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC}, + {KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT}, + {KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT }, + {KC_LCTL, KC_LALT, KC_LGUI, MO(_TK), MO(_LW), KC_SPC, KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, + +/* TenKey, Arrow, and Function key Layer + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | Left | Up | Down | Right| Del | * | 4 | 5 | 6 | + | / | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Home | PGUP | PGDN | End | Ins | . | 1 | 2 | 3 | - |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | GUI | TK |Raise | Space |Lower | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_TK] = { + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, + {KC_ESC, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT, KC_DEL, KC_ASTR, KC_4, KC_5, KC_6, KC_PLUS, KC_SLSH}, + {KC_LSFT, KC_HOME, KC_PGUP, KC_PGDN, KC_END, KC_INS, KC_DOT, KC_1, KC_2, KC_3, KC_MINS, KC_ENT }, + {KC_LCTL, KC_LALT, KC_LGUI, MO(_TK), MO(_LW), KC_SPC, KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| F7 | F8 | F9 | F10 | F11 | F12 |Qwerty|Colemk|Brite | Reset|Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | GUI | TK |Raise | Space |Lower | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_RS] = { + {KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC}, + {KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS}, + {KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, DF(_QW), DF(_CM), M(0), RESET, KC_TRNS}, + {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} +}, + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| F7 | F8 | F9 | F10 | F11 | F12 |Qwerty|Colemk|Brite | Reset|Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | GUI | TK |Raise | Space |Lower | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_LW] = { + {KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC}, + {KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE}, + {KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, DF(_QW), DF(_CM), M(0), RESET, KC_TRNS}, + {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY} +} +}; + +const uint16_t PROGMEM fn_actions[] = { + +}; + +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); + #ifdef BACKLIGHT_ENABLE + backlight_step(); + #endif + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; diff --git a/keyboard/preonic/Makefile b/keyboard/preonic/Makefile index 89c48e50a..664aff732 100644 --- a/keyboard/preonic/Makefile +++ b/keyboard/preonic/Makefile @@ -139,8 +139,8 @@ COMMAND_ENABLE = yes # Commands for debug and configuration # SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend # NKRO_ENABLE = yes # USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality -# MIDI_ENABLE = YES # MIDI controls -# AUDIO_ENABLE = YES # Audio output on port C6 +MIDI_ENABLE = YES # MIDI controls +AUDIO_ENABLE = YES # Audio output on port C6 # UNICODE_ENABLE = YES # Unicode # BLUETOOTH_ENABLE = yes # Enable Bluetooth with the Adafruit EZ-Key HID # RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight. Do not enable this with MIDI at the same time. diff --git a/keyboard/preonic/keymaps/default/keymap.c b/keyboard/preonic/keymaps/default/keymap.c index 392197f1d..5099b6581 100644 --- a/keyboard/preonic/keymaps/default/keymap.c +++ b/keyboard/preonic/keymaps/default/keymap.c @@ -88,7 +88,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) return MACRO_NONE; }; -void * matrix_init_user(void) { +void matrix_init_user(void) { #ifdef AUDIO_ENABLE init_notes(); play_notes(&start_up, 9, false); diff --git a/keyboard/preonic/keymaps/lock/keymap.c b/keyboard/preonic/keymaps/lock/keymap.c index e253f2581..cfb7f0803 100644 --- a/keyboard/preonic/keymaps/lock/keymap.c +++ b/keyboard/preonic/keymaps/lock/keymap.c @@ -99,7 +99,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) return MACRO_NONE; }; -void * matrix_init_user(void) { +void matrix_init_user(void) { init_notes(); play_notes(&start_up, 9, false); } diff --git a/keyboard/preonic/preonic.c b/keyboard/preonic/preonic.c index a678f7b09..e9ececb6d 100644 --- a/keyboard/preonic/preonic.c +++ b/keyboard/preonic/preonic.c @@ -1,16 +1,16 @@ #include "preonic.h" __attribute__ ((weak)) -void * matrix_init_user(void) { +void matrix_init_user(void) { }; __attribute__ ((weak)) -void * matrix_scan_user(void) { +void matrix_scan_user(void) { }; -void * matrix_init_kb(void) { +void matrix_init_kb(void) { #ifdef BACKLIGHT_ENABLE backlight_init_ports(); #endif @@ -24,13 +24,9 @@ void * matrix_init_kb(void) { DDRE |= (1<<6); PORTE |= (1<<6); - if (matrix_init_user) { - (*matrix_init_user)(); - } + matrix_init_user(); }; -void * matrix_scan_kb(void) { - if (matrix_scan_user) { - (*matrix_scan_user)(); - } +void matrix_scan_kb(void) { + matrix_scan_user(); }; diff --git a/keyboard/preonic/preonic.h b/keyboard/preonic/preonic.h index 42d212329..6cfe14726 100644 --- a/keyboard/preonic/preonic.h +++ b/keyboard/preonic/preonic.h @@ -44,7 +44,7 @@ { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b } \ } -void * matrix_init_user(void); -void * matrix_scan_user(void); +void matrix_init_user(void); +void matrix_scan_user(void); #endif diff --git a/keyboard/preonic/preonic_music.hex b/keyboard/preonic/preonic_music.hex new file mode 100644 index 000000000..603693bff --- /dev/null +++ b/keyboard/preonic/preonic_music.hex @@ -0,0 +1,1713 @@ +:100000000C9410030C9454030C9454030C94540358 +:100010000C9454030C9454030C9454030C94540304 +:100020000C9454030C9454030C9410170C94E21782 +:100030000C94BD290C9454030C9454030C94540355 +:100040000C9454030C9454030C9454030C945403D4 +:100050000C9454030C942A2A0C9454030C945403C7 +:100060000C9454030C9454030C9454030C945403B4 +:100070000C9454030C9454030C9454030C945403A4 +:100080000C94440E0C9454030C9454030C94540399 +:100090000C9454030C9454030C9454030C94540384 +:1000A0000C9454030C9454030C9454030763423689 +:1000B000B79BD8A71A39685618AEBAAB558C1D3CF9 +:1000C000B7CC5763BD6DEDFD753EF6177231BF00BD +:1000D0000000803F08000000BE922449123EABAAF7 +:1000E000AA2ABECDCCCC4C3E00000080BEABAAAA52 +:1000F000AA3E00000000BF000000803F000000009A +:1001000000084178D3BB4387D1133D190E3CC3BDD2 +:100110004282AD2B3E68EC8276BED98FE1A93E4C7F +:1001200080EFFFBE01C4FF7F3F00000000003500EC +:100130001E001F00200021002200230024002500B3 +:10014000260027002A002B0014001A0008001500C2 +:1001500017001C0018000C00120013002A002900D0 +:1001600004001600070009000A000B000D000E0035 +:100170000F0033003400E1001D001B0006001900D1 +:10018000050011001000360037003800280000304C +:10019000E000E200E30003522C002C000452500067 +:1001A000510052004F0035001E001F0020002100AA +:1001B0002200230024002500260027002A002B000F +:1001C00014001A00090013000A000D000F001800A7 +:1001D0001C0033002A002900040015001600170037 +:1001E00007000B00110008000C0012003400E100B1 +:1001F0001D001B000600190005000E00100036004F +:100200003700380028000030E000E200E30003522D +:100210002C002C0004525000510052004F003500B9 +:100220001E001F00200021002200230024002500C2 +:10023000260027002A002B00340036003700130068 +:100240001C0009000A00060015000F002A00290002 +:1002500004001200080018000C0007000B00170033 +:10026000110016003800E100330014000D000E00EC +:100270001B00050010001A0019001D0028000030A6 +:10028000E000E200E30003522C002C000452500076 +:10029000510052004F0035001E001F0020002100B9 +:1002A0002200230024002500260027002A00350212 +:1002B0001E021F0220022102220223022402250222 +:1002C000260227022A0001003A003B003C003D00C4 +:1002D0003E003F002D022E022F02300231020100AB +:1002E00040004100420043004400450000530153D8 +:1002F0000253005001000100010001000100010053 +:10030000010001000100AB00AA00A900AE00350009 +:100310001E001F00200021002200230024002500D1 +:10032000260027002A0035001E001F0020002100A3 +:100330002200230024002500260027002A000100B7 +:100340003A003B003C003D003E003F002D002E00E7 +:100350002F00300031000100400041004200430006 +:1003600044004500005301530253005001000100B6 +:100370000100010001000100010001000100AB00CB +:10038000AA00A900AE00006000600060006000608C +:10039000006000600060006000600060006000605D +:1003A000006000600060006000600060006000604D +:1003B000006000600060006000600060006000603D +:1003C000006000600060006000600060006000602D +:1003D000006000600060006000600060006000601D +:1003E00000600060006000300100010001000100B9 +:1003F00001000100010000600060006000602A034D +:1004000054006800650020005000720065006F0015 +:100410006E006900630020004B00650079006200F7 +:100420006F0061007200640000002C034F00720036 +:10043000740068006F006C0069006E006500610068 +:10044000720020004B006500790062006F006100BF +:100450007200640073000000040309040902D00064 +:10046000060100A0FA0904000001030101000921AE +:1004700011010001223F000705810308000A090459 +:1004800001000103010200092111010001224D00B8 +:100490000705820308000A090402000103000000A6 +:1004A0000921110100012236000705830308000A13 +:1004B00009040300020300000009211101000122C8 +:1004C0002000070584032000010705040320000124 +:1004D00009040400000101000009240100010900D1 +:1004E00001050904050002010300000724010001C1 +:1004F0004100062402010100062402020200092430 +:1005000003010301020100092403020401010100A7 +:100510000905060240000500000525010101090545 +:1005200085024000050000052501010312011001AC +:1005300000000008EDFE61600100010200010631CB +:10054000FF0974A1010975150025FF952075088123 +:10055000020976150025FF952075089102C0050156 +:100560000980A101850216010026B7001A01002AA0 +:10057000B700751095018100C0050C0901A1018526 +:1005800003160100269C021A01002A9C0275109590 +:10059000018100C005010902A1010901A1000509AD +:1005A000190129051500250195057501810295019F +:1005B000750381010501093009311581257F9502F7 +:1005C0007508810609381581257F95017508810612 +:1005D000050C0A38021581257F950175088106C032 +:1005E000C005010906A101050719E029E715002545 +:1005F00001950875018102950175088101050819A9 +:100600000129059505750191029501750391010573 +:1006100007190029FF150025FF950675088100C000 +:1006200011241FBECFEFDAE0DEBFCDBF04B603FE5C +:1006300024C08091050490910604A0910704B09114 +:1006400008048730904BA740B04BB9F410920504D2 +:1006500010920604109207041092080414BE84B786 +:10066000877F84BF88E10FB6F89480936000109272 +:1006700060000FBEE0E0F8E3099512E0A0E0B1E011 +:10068000E6ECF9E602C005900D92A832B107D9F761 +:1006900014E0A8E2B2E001C01D92A530B107E1F775 +:1006A0000E94C8130C94E1340C94000061111DC029 +:1006B000FC018281882351F085EE0E94901E0E94E9 +:1006C000BC3080E290E0A0E0B0E007C085EE0E9480 +:1006D000581F81E090E0A0E0B0E08093E1029093A9 +:1006E000E202A093E302B093E40280E090E0089578 +:1006F0000E94370E40E050E069E070E080E091E059 +:100700000C94880F08950E948B036E9A769A0C942D +:1007100078030C948203279A2F988FEF9FEF909382 +:100720008700809386008AE08093800089E180932F +:1007300081000C94653081110BC080918000877F0F +:100740008093800010928D0010928C002F98089555 +:100750002F98833041F480918000886080938000DE +:100760008FEF9FEF12C0909180009860909380006F +:1007700023E030E0281B3109220F331F8FEF9FEF5A +:1007800002C0969587952A95E2F790938D00809305 +:100790008C0008958B3B910568F4883A910530F5FB +:1007A000853A9105C0F48430910598F4019709F0D9 +:1007B0006FC071C0803E910508F46AC0883E910503 +:1007C00040F09C01205F31092031310508F060C004 +:1007D0005CC09C01A1C0853A910509F45FC0863ACE +:1007E000910509F45EC023E830E496C0883A91058B +:1007F00009F45AC0893A910509F459C08A3A910519 +:1008000009F458C08B3A910509F457C08C3A910508 +:1008100009F456C08D3A910509F455C0803B910505 +:1008200009F454C08E3A910509F453C08F3A9105EA +:1008300009F452C0813B910509F451C0823B9105F6 +:1008400009F450C0833B910509F44FC0843B9105E6 +:1008500009F44EC0853B910509F44DC0863B9105D6 +:1008600009F44CC0873B910509F44BC0883B9105C6 +:1008700009F44AC0893B910509F449C08A3B9105B6 +:1008800009F048C02AE236E447C09C01306544C004 +:1008900020E030E041C021E030E03EC021E830E41B +:1008A0003BC022E830E438C022EE34E435C029EE03 +:1008B00034E432C02AEE34E42FC025EB34E42CC0FB +:1008C00026EB34E429C027EB34E426C02CEC34E4D6 +:1008D00023C02DEC34E420C023E835E41DC02AE811 +:1008E00035E41AC022E935E417C024E935E414C020 +:1008F00021E236E411C023E236E40EC024E236E4FD +:100900000BC025E236E408C026E236E405C027E243 +:1009100036E402C020E034E4C90108959CE0799FE8 +:10092000F00111249CE3899FE00DF11D1124E60FD5 +:10093000F11DEE0FFF1FE25DFE4F25913491C901BD +:100940000895880F991F82559040FC01259134919C +:10095000C9010895880F991F825D9E4FFC01259162 +:100960003491C90108950E948E049C019A958115C5 +:100970009F4110F4C9010895C90190528115904119 +:1009800028F4C9019F700E94AA040895C9019053D8 +:100990008115904120F4C9019927906C0895C901EF +:1009A0009054409728F4C9018F709927946D089549 +:1009B000203180E4380719F480E091ED0895213169 +:1009C00090E4390719F480E090ED0895223140E475 +:1009D000340719F480E092ED0895233180E438075C +:1009E00019F480E093ED0895211590E53907A1F4FD +:1009F0000E948B2340E065E088E491E00E94880F2C +:100A00002FEF44E38CE0215040408040E1F700C0EC +:100A100000000E944F2A1EC1213090E5390731F4B1 +:100A20008091F10281608093F10214C1C901905557 +:100A30008115904108F062C0432F55274F7055270C +:100A400041305105F9F4C90174E0880F991F7A9576 +:100A5000E1F788279370B901E3E0660F771FEA9505 +:100A6000E1F760767727862B972B9C6823703327D6 +:100A700002C0440F551F2A95E2F74F715527842B6A +:100A8000952B08954230510529F4922F8827816FC4 +:100A9000906A089543305105B9F4C90153E0880FB5 +:100AA000991F5A95E1F7807E97702370332741E0B4 +:100AB00050E002C0440F551F2A95E2F74F715527A9 +:100AC000842B952B9C6808954430510589F5C90104 +:100AD00043E0880F991F4A95E1F7807E9770237055 +:100AE000332741E050E002C0440F551F2A95E2F73A +:100AF0004F715527842B952B9A680895C9019056FC +:100B00008115904118F4C901906F0895C90190575B +:100B10008115904120F4C9019F7090620895C90128 +:100B200090588115904120F4C9019F70906A0895F2 +:100B3000203E3105E0F4203C310568F521333105D4 +:100B400009F475C048F42932310509F46BC02A3222 +:100B5000310509F07BC075C02933310501F1223818 +:100B60003105E9F02533310509F070C051C0233E4D +:100B70003105B1F140F4203E3105D1F0223E31057E +:100B800009F064C01CC0263E310579F1273E3105CD +:100B900009F05CC038C0C9010E94A1040895809189 +:100BA000020380FD02C081FF51C080EE90E04FC083 +:100BB0008091020380FFF9CF89E390E048C08091E3 +:100BC000020382FF0AC08091020384FF03C080E019 +:100BD00090E03DC083EE90E03AC082EE90E037C0F6 +:100BE0008091020382FFEFCFF8CF8091020383FF51 +:100BF00007C08091020384FDEACF87EE90E027C012 +:100C000086EE90E024C08091020383FFF2CFF8CFFC +:100C10008091020385FF03C089E290E018C085E35C +:100C200090E015C08091020385FDF9CFF5CF80914A +:100C3000020386FF03C08AE290E009C081E390E0EE +:100C400006C08091020386FDF9CFF5CFC9010E944D +:100C5000CA030895089508950C942B065F926F922D +:100C60007F928F929F92AF92BF92CF92DF92EF923C +:100C7000FF920F931F93CF93DF93CDB7DEB72A97E1 +:100C80000FB6F894DEBF0FBECDBF9E012F5F3F4F62 +:100C90004E018BE0880E911C60E070E000E010E0F7 +:100CA000E12CF12CC12CD12CA12CB12C8AE0782E76 +:100CB000622E532E41E050E0E3E9F1E0A62DB52D80 +:100CC000872D01900D928A95E1F7F901819191911B +:100CD0009F01FC01E07FFF27E032F10559F48F709E +:100CE0009927FA0102C0EE0FFF1F8A95E2F7AE2A9C +:100CF000BF2A37C0E033F10559F48F709927FA0104 +:100D000002C0EE0FFF1F8A95E2F7CE2ADF2A29C024 +:100D1000E034F10559F48F709927FA0102C0EE0F03 +:100D2000FF1F8A95E2F7EE2AFF2A1BC0E035F10586 +:100D300059F48F709927FA0102C0EE0FFF1F8A95B0 +:100D4000E2F70E2B1F2B0DC0E036F10551F48F702A +:100D50009927FA0102C0EE0FFF1F8A95E2F76E2B6A +:100D60007F2B2815390509F0A7CF94B18A2D8095DE +:100D7000892384B985B18A2985B997B18C2D80954D +:100D8000892387B988B18C2988B99AB18E2D80952D +:100D900089238AB98BB18E298BB99DB1802F80951B +:100DA00089238DB98EB1802B8EB990B3862F809513 +:100DB000892380BB81B3862B81BB2A960FB6F8941A +:100DC000DEBF0FBECDBFDF91CF911F910F91FF907E +:100DD000EF90DF90CF90BF90AF909F908F907F90DB +:100DE0006F905F9008955F926F927F928F929F9223 +:100DF000AF92BF92CF92DF92EF92FF920F931F9329 +:100E0000CF93DF93CDB7DEB768970FB6F894DEBF08 +:100E10000FBECDBF85B7806885BF85B7806885BFA9 +:100E20000E942E069E012F5F3F4F4E0189E1880EE2 +:100E3000911C60E070E000E010E0E12CF12CC12C8E +:100E4000D12CA12CB12C98E1792E622E532E41E0A9 +:100E500050E0EDE9F1E0A62DB52D872D01900D9222 +:100E60008A95E1F7F901819191919F01FC01E07F61 +:100E7000FF27E032F10559F48F709927FA0102C07B +:100E8000EE0FFF1F8A95E2F7AE2ABF2A37C0E03384 +:100E9000F10559F48F709927FA0102C0EE0FFF1F78 +:100EA0008A95E2F7CE2ADF2A29C0E034F10559F409 +:100EB0008F709927FA0102C0EE0FFF1F8A95E2F7A3 +:100EC000EE2AFF2A1BC0E035F10559F48F709927EF +:100ED000FA0102C0EE0FFF1F8A95E2F70E2B1F2BBF +:100EE0000DC0E036F10551F48F709927FA0102C068 +:100EF000EE0FFF1F8A95E2F76E2B7F2B2815390521 +:100F000009F0A7CF94B18A2D8095892384B985B142 +:100F10008A2985B997B18C2D8095892387B988B1A5 +:100F20008C2988B99AB18E2D809589238AB98BB185 +:100F30008E298BB99DB1802F809589238DB98EB173 +:100F4000802B8EB990B3862F8095892380BB81B387 +:100F5000862B81BB10922902109228021092330234 +:100F60001092320210922B0210922A021092350235 +:100F70001092340210922D0210922C02109237021D +:100F80001092360210922F0210922E021092390205 +:100F900010923802109231021092300210923B02ED +:100FA00010923A0268960FB6F894DEBF0FBECDBF1E +:100FB000DF91CF911F910F91FF90EF90DF90CF9035 +:100FC000BF90AF909F908F907F906F905F900C94A8 +:100FD00083035F926F927F928F929F92AF92BF92A4 +:100FE000CF92DF92EF92FF920F931F93CF93DF93F5 +:100FF000CDB7DEB7A2970FB6F894DEBF0FBECDBF58 +:101000007E0149E1E40EF11C22E3C22E22E0D22E41 +:101010005E0153E2A50EB11C3AE0532E470101E0F8 +:1010200010E048E1642E55E0752EE3E9F1E0D401CB +:10103000852D01900D928A95E1F7F70181919191AB +:101040007F019C01207F33272032310589F424B1B0 +:101050008F709927A80102C0440F551F8A95E2F7A7 +:10106000CA01242B24B995B18095892385B94FC035 +:101070002033310589F427B18F709927F80102C018 +:10108000EE0FFF1F8A95E2F7CF012E2B27B998B1FB +:101090008095892388B93BC02034310589F42AB171 +:1010A0008F709927A80102C0440F551F8A95E2F757 +:1010B000CA01242B2AB99BB1809589238BB927C0FB +:1010C0002035310589F42DB18F709927F80102C0C0 +:1010D000EE0FFF1F8A95E2F7CF012E2B2DB99EB19F +:1010E000809589238EB913C02036310581F420B351 +:1010F0008F709927A80102C0440F551F8A95E2F707 +:10110000CA01242B20BB91B38095892381BB50EA6F +:101110005A95F1F7BE016F5F7F4F80E090E020E0CD +:1011200030E0EDE9F1E0DE011196462D01900D92DF +:101130004A95E1F7FB0141915191BF01FA01E07F2E +:10114000FF27E032F10511F4E3B113C0E033F105FC +:1011500011F4E6B10EC0E034F10511F4E9B109C0B3 +:10116000E035F10511F4ECB104C0E036F105B9F455 +:10117000EFB1F0E04F70552702C0F595E7954A951D +:10118000E2F7E0FD08C0A801022E02C0440F551F7F +:101190000A94E2F702C040E050E0842B952B2F5FC9 +:1011A0003F4F2C30310509F0BCCFF6012081318151 +:1011B0002817390721F091838083709270010E9473 +:1011C0002E06F2E0CF0ED11CEA14FB0409F02DCF5D +:1011D000809170018823A1F1815080937001882350 +:1011E00039F08FE99FE00197F1F700C0000028C0B7 +:1011F00080913202909133029093290280932802C9 +:10120000809134029091350290932B0280932A02B0 +:10121000809136029091370290932D0280932C0298 +:10122000809138029091390290932F0280932E0280 +:1012300080913A0290913B02909331028093300268 +:101240000E94890381E0A2960FB6F894DEBF0FBE1C +:10125000CDBFDF91CF911F910F91FF90EF90DF9065 +:10126000CF90BF90AF909F908F907F906F905F9046 +:101270000895E82FF0E0EE0FFF1FE85DFD4F80813D +:10128000918108950895CF92DF92EF92FF920F938C +:101290001F93CF93DF93CDB7DEB7CC5BD2400FB6B1 +:1012A000F894DEBF0FBECDBF8C01862F642F88233C +:1012B00079F0F80192812FE7482F992329F084E0F3 +:1012C00093E00E94EC1904C084E093E00E94FC19B2 +:1012D000F80180818B3091F59181943009F0A8C29A +:1012E0009281809173019923B1F08F5F8093730194 +:1012F00096E4E5EBF1E0DE01A958BD4F01900D92B7 +:101300009A95E1F7E0917101F0917201EE0FFF1FE4 +:1013100027E732E036C096E4E5EBF1E0DE01AF5CB2 +:10132000BD4F01900D929A95E1F7E0917101F09116 +:101330007201EE0FFF1F21E332E093C08A3009F003 +:10134000CBC0F8019181943009F072C292818091F2 +:101350007301992309F473C081508093730196E45B +:10136000E5EBF1E0DE01A551BE4F01900D929A959B +:10137000E1F7E0917101F0917201EE0FFF1F2BEE8A +:1013800031E02C0F3D1FE20FF31F60817181680F68 +:10139000711D882777FD8095982F0E94003220E0EC +:1013A00030E040E451E40E94653120E030E040E864 +:1013B00050E40E94FD309B01AC0160E070E080E0F1 +:1013C00090E40E94173321E230ED42E053E40E94A2 +:1013D000B4324CE050E00E94E30F20E04BE760E0C5 +:1013E00084E093E00E94DC1920E04BE761E084E0B8 +:1013F00093E00E94DC1920E04BE762E084E093E098 +:101400000E94DC1920E04BE763E084E093E00E9457 +:10141000DC1920E04BE764E084E093E0C454DD4F46 +:101420000FB6F894DEBF0FBECDBFDF91CF911F91F5 +:101430000F91FF90EF90DF90CF900C94DC1996E421 +:10144000E5EBF1E0DE01AB55BE4F01900D929A95B0 +:10145000E1F7E0917101F0917201EE0FFF1F25EAB3 +:1014600031E02C0F3D1FE20FF31F60817181680F87 +:10147000711D882777FD8095982F0E94003220E00B +:1014800030E040E451E40E94653120E030E040E883 +:1014900050E40E94FD309B01AC0160E070E080E010 +:1014A00090E40E94173321E230ED42E053E40E94C1 +:1014B000B4320E94130DC454DD4F0FB6F894DEBF52 +:1014C0000FBECDBFDF91CF911F910F91FF90EF9095 +:1014D000DF90CF900C94E60C893009F0D3C0F8016E +:1014E0009181943009F0A4C19281992309F4A0C19B +:1014F0008091710190917201019690937201809395 +:10150000710120E04BE760E084E093E00E94DC1989 +:1015100020E04BE761E084E093E00E94DC1920E0EA +:101520004BE762E084E093E00E94DC1920E04BE7A7 +:1015300063E084E093E00E94DC1920E04BE764E084 +:1015400084E093E00E94DC190E94E60C00E010E0C9 +:10155000E6E4FE2E80917301E5EBF1E0DE01A15A95 +:10156000BE4F9F2D01900D929A95E1F7E091710188 +:10157000F0917201E00FF11FEE0FFF1F2FE531E038 +:101580002C0F3D1FE20FF31F60817181680F711DE9 +:10159000882777FD8095982F0E94003220E030E068 +:1015A00040E451E40E94653120E030E040E850E43E +:1015B0000E94FD309B01AC0160E070E080E090E4AF +:1015C0000E94173321E230ED42E053E40E94B4322E +:1015D0004CE050E00E94E30F3FEF87EE93E0315084 +:1015E00080409040E1F700C0000080917301E5EB7E +:1015F000F1E0DE01A75EBE4F9F2D01900D929A95FE +:10160000E1F7E0917101F0917201E00FF11FEE0F2F +:10161000FF1F29E131E02C0F3D1FE20FF31F608116 +:101620007181680F711D882777FD8095982F0E9422 +:10163000003220E030E040E451E40E94653120E0D7 +:1016400030E040E850E40E94FD309B01AC0160E0D6 +:1016500070E080E090E40E94173321E230ED42E038 +:1016600053E40E94B4320E94130D8FEF9CE7019760 +:10167000F1F700C000000F5F1F4F0830110509F09F +:1016800069CF94C1883009F0D3C0F80191819430BA +:1016900009F0CEC09281992309F4CAC080917101EA +:1016A000909172010197909372018093710120E0F3 +:1016B0004BE760E084E093E00E94DC1920E04BE718 +:1016C00061E084E093E00E94DC1920E04BE762E0F7 +:1016D00084E093E00E94DC1920E04BE763E084E0C3 +:1016E00093E00E94DC1920E04BE764E084E093E0A3 +:1016F0000E94DC190E94E60C00E010E056E4F52E92 +:1017000080917301E5EBF1E0DE01AD52BF4F9F2DFB +:1017100001900D929A95E1F7E0917101F0917201BB +:10172000E00FF11FEE0FFF1F23ED30E02C0F3D1FE8 +:10173000E20FF31F60817181680F711D882777FDAB +:101740008095982F0E94003220E030E040E451E480 +:101750000E94653120E030E040E850E40E94FD3016 +:101760009B01AC0160E070E080E090E40E941733E0 +:1017700021E230ED42E053E40E94B4324CE050E00C +:101780000E94E30F3FEF87EE93E03150804090409E +:10179000E1F700C0000080917301E5EBF1E0DE01AC +:1017A000A357BF4F9F2D01900D929A95E1F7E091BD +:1017B0007101F0917201E00FF11FEE0FFF1F2DE894 +:1017C00030E02C0F3D1FE20FF31F60817181680F25 +:1017D000711D882777FD8095982F0E94003220E0A8 +:1017E00030E040E451E40E94653120E030E040E820 +:1017F00050E40E94FD309B01AC0160E070E080E0AD +:1018000090E40E94173321E230ED42E053E40E945D +:10181000B4320E94130D8FEF9CE70197F1F700C0DF +:1018200000000F5F1F4F0830110509F069CFBEC0DF +:10183000F801228190917301222309F45DC026E40E +:10184000E5EBF1E0DE01A95BBF4F01900D922A9517 +:10185000E1F7E0917101F0917201E80FF11DEE0FD7 +:10186000FF1F27E430E02C0F3D1FE20FF31F6081C4 +:101870007181690F711D882777FD8095982F0E94CF +:10188000003220E030E040E451E40E9465316B0119 +:101890007C01F801818165E070E0681B710988278F +:1018A00077FD8095982F0E9400329B01AC01C70103 +:1018B000B6010E94FD309B01AC0160E070E080E069 +:1018C00090E40E94173321E230ED42E053E40E949D +:1018D000B4324FE050E0C454DD4F0FB6F894DEBF91 +:1018E0000FBECDBFDF91CF911F910F91FF90EF9071 +:1018F000DF90CF900C94E30F26E4E5EBF1E0DE01FE +:10190000119601900D922A95E1F7E0917101F09105 +:101910007201E80FF11DEE0FFF1F21E030E02C0FE8 +:101920003D1FE20FF31F60817181690F711D8827D0 +:1019300077FD8095982F0E94003220E030E040E44F +:1019400051E40E9465316B017C01F801818165E001 +:1019500070E0681B7109882777FD8095982F0E9499 +:1019600000329B01AC01C701B6010E94FD309B0112 +:10197000AC0160E070E080E090E40E94173321E267 +:1019800030ED42E053E40E94B432C454DD4F0FB650 +:10199000F894DEBF0FBECDBFDF91CF911F910F91A5 +:1019A000FF90EF90DF90CF900C94130DC454DD4F57 +:1019B0000FB6F894DEBF0FBECDBFDF91CF911F9160 +:1019C0000F91FF90EF90DF90CF90089510928702D3 +:1019D00010928602809171008D7F809371008091BA +:1019E00090008F77809390001092480210924702E7 +:1019F0001092800210928102109282021092830251 +:101A000010927F0210927E02EEE5F2E0AEE4B2E0C8 +:101A100011921192119211921D921D9282E0EE3755 +:101A2000F807B1F708956F927F928F929F92AF92CD +:101A3000BF92CF92DF92EF92FF920F931F93CF93BB +:101A4000DF936B017C010EE712E04CE5A42E42E02F +:101A5000B42EC7E0D0E0A7019601F80192918291DF +:101A6000729162918F010E946131882349F0219720 +:101A7000F2E0AF1AB108CF3F8FEFD80761F734C05B +:101A8000F8011082118212821382F50111821082F4 +:101A9000FE01EE0FFF1FEE0FFF1FE25AFD4FDE01AA +:101AA000AA0FBB1FA25BBD4FCE011AC00196448195 +:101AB0005581668177814083518362837383148269 +:101AC00015821682178212962D913C9113971196CA +:101AD0003C932E9313961C921E9212973496129654 +:101AE0008730910519F7C3CF8091860290918702C4 +:101AF000019797FD05C0909387028093860204C0EA +:101B00001092870210928602E0918602F09187027D +:101B10003097C9F4809171008D7F8093710080911E +:101B200090008F7780939000109280021092810233 +:101B3000109282021092830210927F0210927E0213 +:101B40001092470285C03197DF01AA0FBB1FAA0F71 +:101B5000BB1FA25ABD4FCD90DD90ED90FC90EE0FD3 +:101B6000FF1FE25BFD4FC081D181609080027090C9 +:101B700081028090820290908302A7019601662DD7 +:101B8000772D882D992D0E94613187FF25C0262D44 +:101B9000372D482D592DC701B6010E94FC3020E099 +:101BA00030E04AEF54E40E9465315B018C012A2D3C +:101BB0003B2D402F512F662D772D882D992D0E947A +:101BC000FD303B014C01A7019601772D992D0E9414 +:101BD0006131181664F72EC0A7019601662D772D86 +:101BE000882D992D0E94B032181634F5A701960160 +:101BF000662D772D882D992D0E94FC3020E030E055 +:101C00004AEF54E40E9465315B018C012A2D3B2D83 +:101C1000402F512F662D772D882D992D0E94FC3055 +:101C20003B014C01A7019601772D992D0E94B032FE +:101C300087FFECCF10924D02C0928002D0928102B9 +:101C4000E0928202F0928302D0937F02C0937E02E0 +:101C5000DF91CF911F910F91FF90EF90DF90CF9088 +:101C6000BF90AF909F908F907F906F9008953E9A15 +:101C7000E1E7F0E080818D7F808382E080939000B7 +:101C80008AE18093910008951F920F920FB60F92F0 +:101C90001124CF92DF92EF92FF922F933F934F93B5 +:101CA0005F936F937F938F939F93AF93BF93CF93E4 +:101CB000DF93EF93FF9380914702882309F479C063 +:101CC00020E030E0A9016091800270918102809152 +:101CD0008202909183020E94B03218160CF069C003 +:101CE00020E030E040E251E46091490270914A0204 +:101CF00080914B0290914C020E94B0321816BCF4B5 +:101D00008091840290918502019660918602709183 +:101D100087020E949C3490938502809384021092E3 +:101D2000490210924A0210924B0210924C02C0914A +:101D30008402D0918502CC0FDD1FCC0FDD1FC25A6B +:101D4000DD4F288139814A815B8160E074E284E75C +:101D50009BE40E9465310E94CD317093970060939F +:101D60009600288139814A815B8160E074E284E7D2 +:101D70009BE40E9465310E94CD3175956795709303 +:101D800099006093980020E030E040E85FE36091C4 +:101D9000490270914A0280914B0290914C020E943C +:101DA000FD306093490270934A0280934B029093F6 +:101DB0004C0280914802882309F493C0C0904302EA +:101DC000D0904402E0904502F090460220E030E0DE +:101DD000A901C701B6010E94B0321816F4F4A70198 +:101DE000960160E074E284E79BE40E9465310E9402 +:101DF000CD317093970060939600A701960160E043 +:101E000074E284E79BE40E9465310E94CD317595B0 +:101E10006795709399006093980060913D0270916E +:101E20003E026F5F7F4F70933E0260933D0280E001 +:101E300090E00E94FE3120913F023091400240919B +:101E40004102509142020E94B03287FD4AC0809107 +:101E50003C028F5F80933C029091F1038917A0F0C0 +:101E60008091F603882319F010923C020DC08091F6 +:101E700071008D7F80937100809190008F778093A7 +:101E80009000109248022DC0E091F203F091F3030C +:101E900080913C0298E0899FE00DF11D1124808122 +:101EA0009181A281B3818093430290934402A093D5 +:101EB0004502B093460220E030E040E85EE36481F2 +:101EC0007581868197810E94B43260933F0270933E +:101ED0004002809341029093420210923E0210927F +:101EE0003D02FF91EF91DF91CF91BF91AF919F9113 +:101EF0008F917F916F915F914F913F912F91FF90C3 +:101F0000EF90DF90CF900F900FBE0F901F9018951D +:101F10000F931F93CF93DF9300D0CDB7DEB78C0123 +:101F200080914702882331F04A8369830E94E60C3E +:101F300069814A8181E0809348021093F303009302 +:101F4000F2036093F1034093F6031092490210925A +:101F50004A0210924B0210924C0210923C02F8017D +:101F600040815181628173814093430250934402C6 +:101F7000609345027093460220E030E040E85EE363 +:101F800064817581868197810E94B43260933F029B +:101F900070934002809341029093420210923E025D +:101FA00010923D0280917100826080937100809157 +:101FB00090008068809390000F900F90DF91CF91F8 +:101FC0001F910F9108956F927F928F929F92AF927F +:101FD000BF92CF92DF92EF92FF920F931F93CF9316 +:101FE000DF936B017C01EA018091480281110E941C +:101FF000E60C81E08093470220E030E0A901C701B0 +:10200000B6010E94B03218160CF09AC0609080029F +:1020100070908102809082029090830220E030E0F4 +:10202000A901662D772D882D992D0E94613181118E +:1020300028C0C0928002D0928102E0928202F09287 +:102040008302D0937F02C0937E028091860290919A +:102050008702FC01EE0FFF1FEE0FFF1FE25AFD4F3C +:10206000C082D182E282F382FC01EE0FFF1FE25BAD +:10207000FD4FD183C083019690938702809386029F +:102080005FC0A7019601662D772D882D992D0E949E +:10209000613187FF25C0262D372D482D592DC701C9 +:1020A000B6010E94FC3020E030E04AEF54E40E9488 +:1020B00065315B018C012A2D3B2D402F512F662D60 +:1020C000772D882D992D0E94FD303B014C01A701F1 +:1020D0009601772D992D0E946131181664F7A9CFCA +:1020E000A7019601662D772D882D992D0E94B0327B +:1020F00018160CF09ECFA7019601662D772D882D1E +:10210000992D0E94FC3020E030E04AEF54E40E9418 +:1021100065315B018C012A2D3B2D402F512F662DFF +:10212000772D882D992D0E94FC303B014C01A70191 +:102130009601772D992D0E94B03287FFECCF79CF91 +:10214000809171008260809371008091900080681E +:1021500080939000DF91CF911F910F91FF90EF90AE +:10216000DF90CF90BF90AF909F908F907F906F90B7 +:102170000895809191020895CF93DF9300D01F922C +:10218000CDB7DEB72091FB03243021F523E029836E +:102190009B838A832093E9008FEF06C095ED9A9583 +:1021A000F1F70000882329F09091E800815095FF15 +:1021B000F5CF8091E80085FF0DC040E050E063E07E +:1021C00070E0CE0101960E94A6148091E8008E77FF +:1021D0008093E8000F900F900F90DF91CF910895BA +:1021E000CF93DF9300D01F92CDB7DEB72091FB03D2 +:1021F000243029F522E029839B838A8383E080931E +:10220000E9008FEF06C095ED9A95F1F7000088235D +:1022100029F09091E800815095FFF5CF8091E8007A +:1022200085FF0DC040E050E063E070E0CE01019614 +:102230000E94A6148091E8008E778093E8000F90AA +:102240000F900F90DF91CF9108952091FB032430E0 +:10225000F9F422E02093E9002FEF06C035ED3A951E +:10226000F1F70000222329F03091E800215035FFDA +:10227000F5CF2091E80025FF0BC040E050E065E07D +:1022800070E00E94A6148091E8008E778093E800A9 +:102290000895CF93DF93EC018091FB03843041F5E7 +:1022A00081E08093E9008FEF06C095ED9A95F1F7F4 +:1022B0000000882329F09091E800815095FFF5CF28 +:1022C0008091E80085FF14C040E050E068E070E0D5 +:1022D000CE010E94A6148091E8008E778093E800DA +:1022E00088E0FE01A9E8B2E001900D928A95E1F73D +:1022F000DF91CF910895BF92CF92DF92EF92FF923C +:102300000F931F93CF93DF937C01B62EE90100E07A +:1023100010E0C42ED12C0BC04991202F2B0D2F770C +:102320004F776FE0C7010E94DC190F5F1F4F0C153C +:102330001D0594F3DF91CF911F910F91FF90EF90C6 +:10234000DF90CF90BF90089570E06F5F7F4F6F7008 +:1023500077270C94DC190F931F93CF93C42F63300E +:10236000710509F04AC0842F807F803849F1803997 +:1023700009F043C0622F6F7770E080E090E00E9428 +:10238000003220E030E040E451E40E9465319B01DE +:10239000AC0160E070E080E090E40E9417330F77BA +:1023A00010E023E0159507952A95E1F72DEC3CEC1C +:1023B00042E053E40E94B432A8010E94E30F1DC022 +:1023C000622F6F7770E080E090E00E94003220E0A2 +:1023D00030E040E451E40E9465319B01AC0160E0D3 +:1023E00070E080E090E40E9417332DEC3CEC42E07A +:1023F00053E40E94B4320E94130DCC3F29F4CF91D4 +:102400001F910F910C94E60CCF911F910F9108959D +:102410000F931F93CF93DF93CDB7DEB727970FB6F8 +:10242000F894DEBF0FBECDBF8C0114C08A810E941C +:10243000B6199A819D839B819E839C819F83811184 +:102440001EC089818430B1F08730A1F08630A1F0C0 +:102450008530A1F0BE016F5F7F4F84E791E00E945D +:10246000231D8111E3CF84E791E00E94141D0E9497 +:102470008F190DC083E003C082E001C081E0AE018E +:102480004B5F5F4F682FC8010E94491AE3CF279620 +:102490000FB6F894DEBF0FBECDBFDF91CF911F9175 +:1024A0000F910895EF92FF920F93CF93DF9300D097 +:1024B00000D000D0CDB7DEB77B014A832B830C83DD +:1024C000842F2E834D830E94B6192E814D81811158 +:1024D0001BC082E0E816F10479F083E0E816F1040D +:1024E00021F0EA94EF2821F50BC0073F11F487E0B3 +:1024F00001C084E089830BC0273FD9F786E0FACF7B +:10250000473FB9F785E0F6CF42954F704983BE014A +:102510006F5F7F4F84E791E00E94D91C84E791E0D0 +:102520000E94F71C84E791E00E94141D0E948F19FD +:1025300026960FB6F894DEBF0FBECDBFDF91CF91C8 +:102540000F91FF90EF9008958091FA03811109C0D7 +:102550000E9495160E94F2168091E200846080939A +:10256000E20008951092FA030895089508950C94D6 +:10257000B229809192028F5F8093920262E30E945F +:102580007C34911135C0109292028091930288237D +:1025900079F18091FB03843049F58091E9008F70D7 +:1025A0009091EC0090FF02C090E801C090E0982B61 +:1025B00084E08093E9008091EB0080FF14C080915B +:1025C000EE0087FD03C00FC01092F1008091E8007B +:1025D00085FDFACF8091E80080FF05C08091E8007A +:1025E0008E778093E8009F709093E9001092930299 +:1025F000089542E061EC81E00E940B1642E061EC3C +:1026000082E00E940B1642E061EC83E00E940B1610 +:1026100042E261EC84E00E940B1642E361E885E04F +:102620000E940B1642E360E886E00C940B16809142 +:10263000FD03833009F454C030F4813071F08230EE +:1026400009F0A5C08CC08A3009F479C08B3009F438 +:102650005FC0893009F09BC020C08091FC03813AA3 +:1026600009F095C08091E800877F8093E800809111 +:10267000000490910104892B21F060E080E090E05B +:1026800003C068E089E892E070E00E944415809100 +:10269000E8008B778093E80008958091FC038132F5 +:1026A00009F075C08091000490910104892B09F014 +:1026B0006EC08091E800877F8093E80005C080911C +:1026C000FB03882309F463C08091E80082FFF7CF01 +:1026D0008091F100809391028091E8008B7753C044 +:1026E0008091FC03813A09F052C0809100049091DE +:1026F0000104892B09F04BC08091E800877F80930B +:10270000E8008091E80080FFFCCF80918A0136C00C +:102710008091FC038132D9F58091000490910104ED +:10272000892BA9F58091E800877F8093E8000E94BB +:1027300042168091FE0380938A010C948B23809132 +:10274000FC03813221F58091E800877F8093E800C7 +:102750000E9442168091FF03809388020895809121 +:10276000FC03813AA1F48091E800877F8093E80020 +:102770008091E80080FFFCCF809188028093F10077 +:102780008091E8008E778093E8000C9442160895BB +:1027900084E093E00E94181A62E572E184E093E01D +:1027A0000E946E1A68E072E184E093E00E94721A5F +:1027B00084B7877F84BF88E10FB6F8948093600068 +:1027C000109260000FBE90E080E80FB6F8948093FE +:1027D0006100909361000FBE0E949C1D0E9495169F +:1027E0000E94F2168091E20084608093E200789467 +:1027F0006BEA71E184E093E00E94141A64EA71E1EB +:1028000084E093E00E940C1A6BE771E184E093E0AE +:102810000E94101A0E94370E0E948F190E949E1D5E +:1028200080E891E00E94481D0BC00E946C298091B5 +:10283000F903882329F00E949A2981110E9490149B +:102840008091FB03853089F384E093E00E94211C92 +:102850000E94A81DF5CF292F332723303105B1F071 +:102860004CF42130310509F44DC02230310509F016 +:102870004EC007C02132310541F12232310591F1BC +:1028800046C0E0EDF0E08CE594E045C0992781304A +:10289000910569F08230910589F0892B09F037C0E4 +:1028A000E8E5F4E0E491F0E088E594E034C0EAE2A1 +:1028B000F4E0E491F0E08AE294E02DC0EEEFF3E082 +:1028C000E491F0E08EEF93E026C0643000F5E62F4F +:1028D000F0E0EE0FFF1FE550FE4F80819181E9E0AF +:1028E000F0E019C0643098F4E62FF0E0DF01AA0FA1 +:1028F000BB1FAD5FBD4F8D919C91E55FFD4FE081AA +:10290000F0E009C0E2E1F0E08CE295E004C0E0E034 +:10291000F0E080E090E0DA018D939C93CF01089580 +:1029200080E189BD82E189BD09B400FEFDCF8091BF +:10293000D8008F7D8093D8008091E00082608093E2 +:10294000E0008091E00081FDFCCF0895BF92CF921E +:10295000DF92EF92FF920F931F93CF93DF937C014F +:102960008B01EA010E946316B82E811133C02097B3 +:1029700031F028813981021B130BE20EF31EC12CAA +:10298000D12C23C08091E80085FD15C08091E8001E +:102990008E778093E800209749F0888199818C0D8B +:1029A0009D1D9983888325E0B22E14C00E94631672 +:1029B000882359F00EC0F70181917F018093F100C7 +:1029C00001501109FFEFCF1ADF0A01151105D1F6E9 +:1029D00001C0B82E8B2DDF91CF911F910F91FF90E9 +:1029E000EF90DF90CF90BF900895BF92CF92DF928B +:1029F000EF92FF920F931F93CF93DF937C018B0194 +:102A0000EA010E946316B82E811133C0209731F07D +:102A100028813981021B130BE20EF31EC12CD12C2D +:102A200023C08091E80085FD15C08091E8008B7778 +:102A30008093E800209749F0888199818C0D9D1D35 +:102A40009983888345E0B42E14C00E9463168823BE +:102A500059F00EC08091F100F70181937F01015080 +:102A60001109FFEFCF1ADF0A01151105D1F601C0D8 +:102A7000B82E8B2DDF91CF911F910F91FF90EF908A +:102A8000DF90CF90BF9008954091020450910304CD +:102A90004617570748F06115710539F44091E80071 +:102AA0004E774093E80001C0BA01FC0140E033C01A +:102AB0008091FB03882309F444C0853009F443C0A6 +:102AC0008091E80083FD41C08091E80082FD33C021 +:102AD0008091E80080FF1FC09091F3008091F20088 +:102AE000392F20E0A901482BCA0106C0419140932B +:102AF000F1006150710901966115710519F0883076 +:102B00009105A0F341E0089709F040E08091E800CA +:102B10008E778093E8006115710551F64111C8CF99 +:102B20000AC08091FB03882361F0853061F08091B9 +:102B3000E80083FD0AC08091E80082FFF2CF80E0C8 +:102B4000089582E0089583E0089581E0089540911A +:102B50000204509103044617570748F061157105A8 +:102B600039F44091E8004E774093E80001C0BA0183 +:102B7000FC0140E034C08091FB03882309F445C088 +:102B8000853009F444C08091E80083FD42C0809103 +:102B9000E80082FD34C08091E80080FF20C0909161 +:102BA000F3008091F200392F20E0A901482BCA01DF +:102BB00007C044914093F10031966150710901962C +:102BC0006115710519F08830910598F341E0089777 +:102BD00009F040E08091E8008E778093E80061156D +:102BE000710549F64111C7CF0AC08091FB038823C4 +:102BF00061F0853061F08091E80083FD0AC080912A +:102C0000E80082FFF2CF80E0089582E0089583E03B +:102C1000089581E00895982F2CC09093E9009817AB +:102C200039F07091EC002091ED005091F00003C05C +:102C3000242F762F50E021FD02C09F5F1AC03091F3 +:102C4000EB003E7F3093EB003091ED003D7F309301 +:102C5000ED003091EB0031603093EB007093EC00AD +:102C60002093ED005093F0002091EE0027FDE5CF7A +:102C700007C0973090F28F708093E90081E008954B +:102C800080E008958091FC0387FD05C08091E800F5 +:102C900080FF0EC012C08091E80082FD05C08091C7 +:102CA000FB038111F8CF08958091E8008B7708C06D +:102CB0008091FB038111EACF08958091E8008E771F +:102CC0008093E80008958091E4009091E50045E646 +:102CD0002091EC0020FD1FC023C02091FB03222384 +:102CE00091F0253091F02091EB0025FD10C020914E +:102CF000E4003091E5002817390751F34150C9012C +:102D000039F784E0089582E0089583E0089581E032 +:102D1000089580E008952091E80020FFDECFF9CFEC +:102D20002091E80022FFD9CFF4CF0E9403170E9420 +:102D30000B17E0EEF0E0808181608083E8EDF0E049 +:102D400080818F77808319BCA7EDB0E08C918E7F56 +:102D50008C9380818F7E80831092FA0308950F9365 +:102D60001F93CF93DF930E9403170E940B17C8EDA8 +:102D7000D0E088818F778883888180688883888184 +:102D80008F7D888319BC1092FB031092F703109279 +:102D9000F9031092F80300EE10E0F80180818B7FB8 +:102DA000808388818160888342E060E080E00E94C7 +:102DB0000B16E1EEF0E080818E7F8083E2EEF0E0A2 +:102DC000808181608083808188608083F801808138 +:102DD0008E7F8083888180618883DF91CF911F916E +:102DE0000F910895E8EDF0E080818F7E8083E7ED1C +:102DF000F0E080818160808384E082BF81E0809305 +:102E0000FA030C94AF16E8EDF0E080818E7F8083AA +:102E10001092E20008951092DA001092E1000895F5 +:102E20001F920F920FB60F9211242F933F934F933F +:102E30005F936F937F938F939F93AF93BF93EF9322 +:102E4000FF938091E10082FF0BC08091E20082FF3E +:102E500007C08091E1008B7F8093E1000E94B9124E +:102E60008091DA0080FF1FC08091D80080FF1BC0D6 +:102E70008091DA008E7F8093DA008091D90080FF04 +:102E80000DC080E189BD82E189BD09B400FEFDCF9E +:102E900081E08093FB030E94A41205C019BC10922C +:102EA000FB030E94B2128091E10080FF19C0809163 +:102EB000E20080FF15C08091E2008E7F8093E200E7 +:102EC0008091E20080618093E2008091D80080626E +:102ED0008093D80019BC85E08093FB030E94B61252 +:102EE0008091E10084FF30C08091E20084FF2CC01B +:102EF00080E189BD82E189BD09B400FEFDCF8091EA +:102F0000D8008F7D8093D8008091E1008F7E8093E0 +:102F1000E1008091E2008F7E8093E2008091E200E8 +:102F200081608093E2008091F703882311F084E0B0 +:102F300007C08091E30087FF02C083E001C081E009 +:102F40008093FB030E94B7128091E10083FF29C0A8 +:102F50008091E20083FF25C08091E100877F80930C +:102F6000E10082E08093FB031092F7038091E1007F +:102F70008E7F8093E1008091E2008E7F8093E2005B +:102F80008091E20080618093E20042E060E080E0B6 +:102F90000E940B168091F00088608093F0000E94E0 +:102FA000B512FF91EF91BF91AF919F918F917F915A +:102FB0006F915F914F913F912F910F900FBE0F90A6 +:102FC0001F9018951F920F920FB60F9211242F93F6 +:102FD0003F934F935F936F937F938F939F93AF93A1 +:102FE000BF93CF93EF93FF938091E9008F709091FF +:102FF000EC0090FF02C090E801C090E0C92FC82B00 +:103000001092E9008091F000877F8093F00078941F +:103010000E9426181092E9008091F0008860809349 +:10302000F000CF70C093E900FF91EF91CF91BF9175 +:10303000AF919F918F917F916F915F914F913F9150 +:103040002F910F900FBE0F901F9018951F93CF9345 +:10305000DF93CDB7DEB7AC970FB6F894DEBF0FBEE7 +:10306000CDBFECEFF3E08091F100819324E0E430F8 +:10307000F207C9F70E9417138091E80083FF37C158 +:103080008091FC039091FD03953009F488C038F4D9 +:103090009130B1F170F0933009F029C131C098300E +:1030A00009F4F8C0993009F404C1963009F01FC141 +:1030B0009DC0803821F0823809F019C108C0809184 +:1030C000F8039091F903992389F082600FC08091F1 +:1030D0000004909101048F7099278093E9008091FA +:1030E000EB0085FB882780F91092E9009091E800B9 +:1030F000977F9093E8008093F1001092F100D5C083 +:10310000882319F0823009F0F2C08F7121F08230EB +:1031100009F0EDC00BC08091FE03813009F0E7C0DB +:10312000933009F080E08093F9032FC08091FE0373 +:1031300081112BC080910004909101048F70992718 +:10314000009709F4D4C08093E9002091EB0020FFA0 +:103150001CC02091FD03233021F48091EB0080629C +:1031600012C09091EB0090619093EB0021E030E071 +:1031700001C0220F8A95EAF72093EA001092EA0034 +:103180008091EB0088608093EB001092E9008091C1 +:10319000E800877F8093E8000E944216A8C0811152 +:1031A000A6C08091FE039091FF038F779927182F77 +:1031B0009091E3009078982B9093E3008091E80041 +:1031C000877F8093E8000E9442168091E80080FF8C +:1031D000FCCF8091E30080688093E300112311F01D +:1031E00083E001C082E08093FB0381C0805882307D +:1031F00008F07DC08091FE039091FF038C3D23E099 +:10320000920779F583E08A838AE289834FB7F8943D +:10321000DE01139620E03EE051E2E32FF0E0509310 +:103220005700E49120FF03C0E295EF703F5FEF701D +:103230008E2F90E0EA3010F0C79601C0C0968D93B3 +:103240009D932F5F243149F74FBF8091E800877F1E +:103250008093E8006AE270E0CE0101960E94441576 +:1032600013C0AE01455D5F4F609100040E942B14B6 +:103270000097E9F12091E800277F2093E800BC0146 +:103280008BA59CA50E94A7158091E8008B77809361 +:10329000E8002DC0803859F58091E800877F809341 +:1032A000E8008091F7038093F1008091E8008E7729 +:1032B00071CF81111CC09091FE039230C0F48091B7 +:1032C000E800877F8093E8009093F7030E944216FE +:1032D0008091F703811104C08091E30087FF02C051 +:1032E00084E001C081E08093FB030E94F912809189 +:1032F000E80083FF0AC08091E800877F8093E800A0 +:103300008091EB0080628093EB00AC960FB6F8944E +:10331000DEBF0FBECDBFDF91CF911F910895CF9338 +:103320008091FB038823B1F08091E9008F70909128 +:10333000EC0090FF02C090E801C090E0C92FC82BBC +:103340001092E9008091E80083FD0E942618CF705A +:10335000C093E900CF910895881F8827881F08959A +:1033600091E0883F08F490E0892F0895982F907F8E +:10337000903B99F038F4903981F0903A71F09038A0 +:10338000C9F40BC0903DA1F018F4903C99F410C022 +:10339000903E19F0903F71F402C083E00895E82F49 +:1033A000E15FEF3038F4F0E0E15FFD4F8081089598 +:1033B00082E0089580E008950F932F774F776F7024 +:1033C000606BDC01ED91FC91022F242F462F63E00E +:1033D00070E009950F9108950F932F774F776F70D5 +:1033E0006069DC01ED91FC91022F242F462F63E0F0 +:1033F00070E009950F9108950F932F774F776F70B5 +:103400006068DC01ED91FC91022F242F462F63E0D0 +:1034100070E009950F910895FC017383628308950C +:10342000FC01738F628F0895FC01758F648F08957E +:10343000CF93DF93EC011DA21FA21EA2BC01685D09 +:103440007F4F40EC88519F4F0E94551C1B821A826F +:103450001D821C821F821E82198618861B861A8670 +:103460001D861C861F861E86198A188A1B8A1A8A40 +:103470001D8A1C8A1F8A1E8A198E188E1B8E1A8E10 +:103480001D8E1C8E1F8E1E8E19A218A2DF91CF9149 +:103490000895CF92DF92FF920F931F93CF93DF9304 +:1034A0001F92CDB7DEB7F62E6A018C0108511F4F6F +:1034B00008C0F60161916F01C80149830E945C1C3C +:1034C00049818C2D841B8F15A0F30F90DF91CF9134 +:1034D0001F910F91FF90DF90CF900895FC017183B1 +:1034E00060830895FC0171A360A30895AF92BF9219 +:1034F000CF92DF92EF92FF920F931F93CF93DF93C0 +:1035000000D01F92CDB7DEB77C016B01142FB22E15 +:10351000A02EDC0195968C9195978430F1F45A9603 +:10352000ED91FC915B97309709F4D8C0CB010197DE +:1035300063E070E00E948834DB01AA0FBB1FA60F76 +:10354000B71F49832A830B834C2D4A1B9E012F5F93 +:103550003F4FBD01C7010995B1C06230710509F443 +:1035600053C06330710529F06130710509F09CC0CA +:1035700083C0842F807F803A01F130F48038B9F025 +:10358000803909F0ABC00DC0803EE9F0803F09F101 +:10359000803B09F0A3C0D7011296ED91FC911397DF +:1035A00023C0D7011496ED91FC9115971DC0D7014A +:1035B0001696ED91FC91179717C0D7011896ED91CB +:1035C000FC91199711C0D7011A96ED91FC911B97A8 +:1035D0000BC0423F09F082C0D7011C96ED91FC91CF +:1035E0001D97309731F47AC0309709F477C0123FB5 +:1035F00021F42A2D4B2D62EF04C0612F6F702A2D0C +:103600004B2DC70109955AC0842F807F803D59F00A +:10361000803F79F0803C09F061C0D7011E96ED91A2 +:10362000FC911F9719C0D7015096ED91FC915197CD +:1036300013C0433F31F4D7015296ED91FC9153975B +:1036400008C0413F09F04AC0D7015496ED91FC9162 +:103650005597309741F442C0309709F43FC0133F6B +:1036600011F0113F19F44B2D612F03C0612F6F70C2 +:103670004B2DC701099522C0842F0E94B0198823C1 +:1036800031F0D7015696ED91FC91579707C0163F40 +:1036900029F5D7015896ED91FC9159973097F1F0A3 +:1036A000612FC70109950AC064307105A8F416C0DE +:1036B0000A2D2B2D412FB601C7010995D7015E9622 +:1036C000ED91FC915F97309789F00A2D2B2D412FBA +:1036D000B601C70109950AC0C12CD12CD7015C964F +:1036E000ED91FC915D97309719F7E8CF0F900F900F +:1036F0000F90DF91CF911F910F91FF90EF90DF908E +:10370000CF90BF90AF900895EF92FF920F931F93C9 +:10371000CF93DF93EC01162F862F0E94B0198823D8 +:1037200069F0FDA081E08DA300E020E0412F61E081 +:1037300070E0CE010E94761AFDA27CC0812F0E940B +:10374000AC194DA1882309F440C0443029F01AA3D4 +:1037500021E030E03FA32EA3812F0E94B6198130D3 +:1037600031F070F0823051F0833059F507C08DA3ED +:1037700000E020E0412F61E070E01EC08DA35AC040 +:10378000103F19F0173FE9F404C084E08DA31AA399 +:103790003FC02EA13FA1C90163E070E00E948834C0 +:1037A0008C0F9D1FFC0112A3B9016F5F7F4F7FA398 +:1037B0006EA30CA12BA14AA1CE010E94761A1DA2D4 +:1037C00039C01DA21FA21EA235C0442399F12EA10B +:1037D0003FA1C90163E070E00E9488347C01FE01D2 +:1037E000E80FF91F12A3B9016F5F7F4F7FA36EA38C +:1037F0008130910591F082E0E816F104D9F40CA132 +:103800002BA14AA1CE010E94761A8DA1843091F09D +:1038100081E090E09FA38EA30DC0423059F400E0F8 +:103820002BA14AA1CE010E94761A8DA1843011F0FD +:10383000FFA2EEA2DF91CF911F910F91FF90EF9029 +:103840000895CF92DF92EF92FF920F931F93CF9341 +:10385000DF93EC01E8A1F9A1309709F009958E01F9 +:1038600008511F4FC8010E948E1CE12CF12CC82E5C +:10387000D12C0FC060E0C8010E94A21C682FCE01AD +:103880000E94841B61E0C8010E94B31C8FEFE81AFC +:10389000F80AEC14FD0470F3DF91CF911F910F91A2 +:1038A000FF90EF90DF90CF900895FC0142837483E6 +:1038B00063831182108208950F931F93CF93DF9338 +:1038C000EC01062F0E94D41C182F298130E0C90179 +:1038D00001966A8170E00E949C34488150E0841710 +:1038E000950729F4812F0E94D71C80E012C0EB813C +:1038F000FC81E20FF31F00832981822F90E0019663 +:103900006A8170E00E949C348983812F0E94D71CB9 +:1039100081E0DF91CF911F910F910895CF93DF93B5 +:10392000EC010E94D41C29819881291710F0C22F24 +:1039300002C0CA81C20FC91B0E94D71C8C2FDF9105 +:10394000CF910895FC012081862F90E0820F911D78 +:10395000628170E00E949C340380F481E02DE80FC6 +:10396000F91F808108950F931F93CF93DF931F92C8 +:10397000CDB7DEB78C0169830E94D41C482FF801B3 +:1039800080816981262F30E0280F311D6281C901B5 +:1039900070E00E949C348083842F0F90DF91CF9140 +:1039A0001F910F910C94D71C8FB7F89408958FBF77 +:1039B0000895FC01CB012091FB032430B1F4218157 +:1039C0002F702093E90040E050E064E070E00E9436 +:1039D000A61481110BC09091E80095FD07C090914D +:1039E000E8009E779093E800089582E00895209182 +:1039F000FB032430A9F4FC0181818F708093E900DE +:103A00003091F3002091F200932F80E0822B892BDC +:103A100049F08091E8008E778093E8000C9463165B +:103A200082E0089580E008952091FB03243051F452 +:103A3000FC0121812F702093E9002091E80020FDF6 +:103A40000C94F71C0895FC01CB012091FB0324305A +:103A500011F080E0089526812F702093E9002091D5 +:103A6000E80022FFF6CF2091E80025FFF2CF40E0EA +:103A700050E064E070E00E94F5148091E80085FD5C +:103A800005C08091E8008B778093E80081E008957D +:103A900090939502809394020895E0919402F0919E +:103AA0009502309721F00190F081E02D099480E09B +:103AB0000895E0919402F0919502309721F00280F0 +:103AC000F381E02D09940895E0919402F09195021C +:103AD000309721F00480F581E02D0994089520911C +:103AE0009602309197028217930771F09093970294 +:103AF00080939602E0919402F0919502309721F024 +:103B00000680F781E02D0994089520919802309164 +:103B100099028217930771F090939902809398020B +:103B2000E0919402F0919502309721F00084F185A4 +:103B3000E02D0994089508950C949B1D0E94E62998 +:103B40000E94F3060E94BA2A0C9465300C942C064D +:103B50005F926F927F928F929F92AF92BF92CF921D +:103B6000DF92EF92FF920F931F93CF93DF93CDB726 +:103B7000DEB72A970FB6F894DEBF0FBECDBF0E9406 +:103B8000E9079AE9C92E92E0D92E00E010E0AA24B4 +:103B9000A394B12C502E802F0E9439093C01F601CC +:103BA000E190F1906F01E826F926E114F10431F477 +:103BB0000F5F1F4F0530110569F73AC08091F10280 +:103BC00081FD0E94420920E030E04501022E02C042 +:103BD000880C991C0A94E2F7C4018E219F21892B3D +:103BE00009F12E835F826820792081E0672809F43B +:103BF00080E088870E94EF298160782F9A878987E3 +:103C00004E815F8168858A850E94611EF801EE0FF2 +:103C1000FF1FE656FD4F808191818825992591836C +:103C2000808316C02F5F3F4F2C30310571F6C0CF17 +:103C30008FEF89838A831B820E94EF298160782F0E +:103C40009D838C8349815A816B818D810E94611E85 +:103C50000E94A72D1091A4020E944D1D1817D9F0A3 +:103C60000E944D1D8093A4022A960FB6F894DEBFE1 +:103C70000FBECDBFDF91CF911F910F91FF90EF90BD +:103C8000DF90CF90BF90AF909F908F907F906F907C +:103C90005F900C94A61D2A960FB6F894DEBF0FBE57 +:103CA000CDBFDF91CF911F910F91FF90EF90DF90EB +:103CB000CF90BF90AF909F908F907F906F905F90CC +:103CC0000895CF93DF93CDB7DEB72B970FB6F89457 +:103CD000DEBF0FBECDBF4F83588769877A878B873A +:103CE000DE01119686E0FD0111928A95E9F785E0E3 +:103CF000FE01379601900D928A95E1F749815A812C +:103D00006B817C818D819E810E944A262B960FB605 +:103D1000F894DEBF0FBECDBFDF91CF910895089517 +:103D2000CF93C82F882309F4C1C0823859F40E9468 +:103D30004D1D81FDBBC089E30E94B1280E943D2931 +:103D400089E30CC0833879F40E944D1D80FDAEC01C +:103D500083E50E94B1280E943D2983E50E94D32873 +:103D6000CF910C943D29843859F40E944D1D82FD59 +:103D70009DC087E40E94B1280E943D2987E4EECFD0 +:103D80008450813A48F48C2F0E94C72F81118EC035 +:103D90008C2F0E94B128E4CF8C2F805E883050F4A5 +:103DA000C77081E090E001C0880FCA95EAF70E94D1 +:103DB000F428D6CF8C2F855A833078F4C53A29F071 +:103DC000C63A31F482E890E005C081E890E002C094 +:103DD00083E890E0CF910C946F1D8C2F885A83312B +:103DE00008F064C0C83A39F1C93A41F1CA3A49F118 +:103DF000CB3A51F1CC3A59F1CD3A61F1C03B69F17E +:103E0000CE3A71F1CF3A79F1C13B81F1C23B89F1F0 +:103E1000C33B91F1C43B99F1C53BA1F1C63BA9F16C +:103E2000C73BB1F1C83BB9F1C93BC1F1CA3BC9F5C8 +:103E30008AE292E038C082EE90E035C089EE90E0F0 +:103E400032C08AEE90E02FC085EB90E02CC086EB6C +:103E500090E029C087EB90E026C08CEC90E023C076 +:103E60008DEC90E020C083E891E01DC08AE891E0ED +:103E70001AC082E991E017C084E991E014C081E2A0 +:103E800092E011C083E292E00EC084E292E00BC0A7 +:103E900085E292E008C086E292E005C087E292E007 +:103EA00002C080E090E0CF910C94851DCF910895E1 +:103EB000882309F44DC0823859F40E944D1D81FFBA +:103EC00047C089E30E94B1280E943D2989E30CC0C4 +:103ED000833871F40E944D1D80FF3AC083E50E9433 +:103EE000B1280E943D2983E50E94D3280C943D29E6 +:103EF000843859F40E944D1D82FF2AC087E40E9435 +:103F0000B1280E943D2987E4EFCF982F9450913A31 +:103F100008F4EACF982F905E983058F4282F277035 +:103F200081E090E001C0880F2A95EAF70E94FA2804 +:103F3000DDCF982F955A933020F480E090E00C94D8 +:103F40006F1D885A833120F480E090E00C94851D29 +:103F50000895882321F00E94F4280C943D290895A7 +:103F6000882321F00E94FA280C943D290895BF92DD +:103F7000CF92DF92EF92FF920F931F93CF93DF9335 +:103F8000CDB7DEB727970FB6F894DEBF0FBECDBF13 +:103F90008C0185E0F801DE01119601900D928A9561 +:103FA000E1F7F801D080E180F280558152955F7091 +:103FB00083819481892B41F0FFEFEF1208C081E0EB +:103FC00090E0DF1631F003C081E090E002C080E0B5 +:103FD00090E080FD7CC3C8015E830E948F1ED98261 +:103FE000EA8289819A810E946E28B92E8F830E946D +:103FF0006D280E9495275E816F81FF2021F00E942D +:1040000011296F815E812B2D22952F7030E0253094 +:10401000310509F4E6C06CF4243031050CF0A2C07F +:104020004B2D407F8B2D8F70223031050CF045C019 +:1040300017C02C3031054CF42A3031050CF0E7C1A3 +:104040002830310509F043C3E5C02D30310509F4AE +:10405000BAC20CF4A2C22F30310509F038C323C311 +:10406000182F411101C002C01295107FFF2059F096 +:10407000112309F46BC2812F6F830E9404290E94CF +:104080003D296F8163C2862F0E94581F112309F4B6 +:104090001EC3812F0E940A2927960FB6F894DEBF0F +:1040A0000FBECDBFDF91CF911F910F91FF90EF9089 +:1040B000DF90CF90BF900C943D29403211F0829553 +:1040C000807F662319F0613071F523C0FF20B1F0C5 +:1040D000511101C032C0513081F527960FB6F894C6 +:1040E000DEBF0FBECDBFDF91CF911F910F91FF902B +:1040F000EF90DF90CF90BF900C942429511101C014 +:1041000003C0513009F4E3C28E830E9427298E81B7 +:104110009AC1FF2021F0563008F0D9C20EC05530A8 +:1041200008F0D5C290C1FF20C9F0552331F0F80145 +:10413000958190FF0BC29F70958327960FB6F894D8 +:10414000DEBF0FBECDBFDF91CF911F910F91FF90CA +:10415000EF90DF90CF90BF900C94A91F552309F4E6 +:1041600072C109C22B2D26952695237030E02115AA +:10417000310529F02130310509F0A9C219C0FF200D +:1041800021F0862F9B2D937002C080E090E027964F +:104190000FB6F894DEBF0FBECDBFDF91CF911F9158 +:1041A0000F91FF90EF90DF90CF90BF900C946F1D18 +:1041B000FF2021F0862F9B2D937002C080E090E0BD +:1041C00027960FB6F894DEBF0FBECDBFDF91CF911B +:1041D0001F910F91FF90EF90DF90CF90BF900C94C4 +:1041E000851D862FFF2019F00E94AD2C02C00E9471 +:1041F000152D27960FB6F894DEBF0FBECDBFDF9109 +:10420000CF911F910F91FF90EF90DF90CF90BF90D3 +:104210000C949C2D8B2D837009F079C0F11057C23E +:10422000262F229526952770220F220F862F8F701A +:10423000C82ED12CE12CF12C022E04C0CC0CDD1C9C +:10424000EE1CFF1C0A94D2F764FF10C06FE070E010 +:1042500080E090E004C0660F771F881F991F2A95A1 +:10426000D2F7609570958095909503C060E070E0FE +:10427000CB012B2D269526952370422F50E04230FE +:104280005105D9F04330510569F16C297D298E29FA +:104290009F294130510551F127960FB6F894DEBFA2 +:1042A0000FBECDBFDF91CF911F910F91FF90EF9087 +:1042B000DF90CF90BF900C94AA276C297D298E297E +:1042C0009F2927960FB6F894DEBF0FBECDBFDF91B2 +:1042D000CF911F910F91FF90EF90DF90CF90BF9003 +:1042E0000C94BC270E94AA27C701B60127960FB6D7 +:1042F000F894DEBF0FBECDBFDF91CF911F910F911C +:10430000FF90EF90DF90CF90BF900C949827FF2004 +:1043100019F08B2D817001C08695882309F4D7C1CF +:10432000262F229526952770220F220F862F8F7019 +:10433000C82ED12CE12CF12C022E04C0CC0CDD1C9B +:10434000EE1CFF1C0A94D2F764FF10C06FE070E00F +:1043500080E090E004C0660F771F881F991F2A95A0 +:10436000D2F7609570958095909503C060E070E0FD +:10437000CB012B2D269526952370422F50E04230FD +:104380005105D9F04330510569F16C297D298E29F9 +:104390009F294130510551F127960FB6F894DEBFA1 +:1043A0000FBECDBFDF91CF911F910F91FF90EF9086 +:1043B000DF90CF90BF900C9449286C297D298E29DD +:1043C0009F2927960FB6F894DEBF0FBECDBFDF91B1 +:1043D000CF911F910F91FF90EF90DF90CF90BF9002 +:1043E0000C945B280E944928C701B60127960FB696 +:1043F000F894DEBF0FBECDBFDF91CF911F910F911B +:10440000FF90EF90DF90CF90BF900C943728603FE3 +:1044100059F120F4603E08F494C008C0623F09F4EA +:1044200067C0F0F1633F09F08CC065C0162F1F70A4 +:104430008B2D8F71FF2021F00E94E227812F7DCEEE +:104440000E94FD27812F27960FB6F894DEBF0FBE7E +:10445000CDBFDF91CF911F910F91FF90EF90DF9033 +:10446000CF90BF900C94B01FFF20B1F0553008F0F2 +:104470002EC18B2D8F7127960FB6F894DEBF0FBE1D +:10448000CDBFDF91CF911F910F91FF90EF90DF9003 +:10449000CF90BF900C941C28563008F018C1E9CF7B +:1044A000FF2099F08B2D8F7127960FB6F894DEBF01 +:1044B0000FBECDBFDF91CF911F910F91FF90EF9075 +:1044C000DF90CF90BF900C94E2278B2D8F712796B1 +:1044D0000FB6F894DEBF0FBECDBFDF91CF911F9115 +:1044E0000F91FF90EF90DF90CF90BF900C94FD273D +:1044F000F110EBCFD7CFFF2099F08B2D8F7127963E +:104500000FB6F894DEBF0FBECDBFDF91CF911F91E4 +:104510000F91FF90EF90DF90CF90BF900C94D32736 +:1045200027960FB6F894DEBF0FBECDBFDF91CF91B7 +:104530001F910F91FF90EF90DF90CF90BF900C9460 +:10454000CE27FF20A9F0552309F4ACCF862F27965C +:104550000FB6F894DEBF0FBECDBFDF91CF911F9194 +:104560000F91FF90EF90DF90CF90BF900C94901E32 +:10457000552309F4AACF862F27960FB6F894DEBFED +:104580000FBECDBFDF91CF911F910F91FF90EF90A4 +:10459000DF90CF90BF900C94581F4B2D4F70C801E7 +:1045A0000E94560327960FB6F894DEBF0FBECDBF0C +:1045B000DF91CF911F910F91FF90EF90DF90CF90FF +:1045C000BF900C940027F11082C09B2D9F70492F43 +:1045D00050E04230510599F144F44115510569F01C +:1045E0004130510509F073C019C043305105C1F184 +:1045F0004430510509F06BC044C027960FB6F894BB +:10460000DEBF0FBECDBFDF91CF911F910F91FF9005 +:10461000EF90DF90CF90BF900C94763027960FB636 +:10462000F894DEBF0FBECDBFDF91CF911F910F91E8 +:10463000FF90EF90DF90CF90BF900C948D30279635 +:104640000FB6F894DEBF0FBECDBFDF91CF911F91A3 +:104650000F91FF90EF90DF90CF90BF900C94A93016 +:1046600027960FB6F894DEBF0FBECDBFDF91CF9176 +:104670001F910F91FF90EF90DF90CF90BF900C941F +:10468000BC30862F27960FB6F894DEBF0FBECDBF85 +:10469000DF91CF911F910F91FF90EF90DF90CF901E +:1046A000BF900C94E0304B2D4F70C80127960FB689 +:1046B000F894DEBF0FBECDBFDF91CF911F910F9158 +:1046C000FF90EF90DF90CF90BF900C944309279616 +:1046D0000FB6F894DEBF0FBECDBFDF91CF911F9113 +:1046E0000F91FF90EF90DF90CF90BF9008950E94C0 +:1046F00011290E9421290E94E6280E943D290E943A +:10470000482E0E949C2D80E090E00E946F1D80E06A +:1047100090E00C94851D0E9401290C9477230E943F +:104720006E28292F22952F7030E02C3031054CF463 +:104730002A3031056CF4225031092230310590F4D1 +:1047400007C02C30310551F02F30310559F406C027 +:10475000803E10F0803F31F481E0089593FB88277C +:1047600080F9089580E00895CF93DF9300D000D0C2 +:104770001F92CDB7DEB70F900F900F900F900F9054 +:10478000DF91CF910895CF93DF9300D000D000D078 +:10479000CDB7DEB726960FB6F894DEBF0FBECDBFFD +:1047A000DF91CF9108951F93CF93DF93C091DB02E8 +:1047B00016E012C0D0E01C9FF0011D9FF00D1124E7 +:1047C000E555FD4F408151816281738184819581DE +:1047D0000E94C3232196C7708091DC02C813EACFE0 +:1047E000DF91CF911F9108954091A5025091A602AB +:1047F0006091A7027091A8028091A9029091AA02EB +:104800000C94C3230F931F93CF93DF938091AA023D +:1048100082958F7009F069C08091A702882309F4FE +:1048200064C0A091DB02D091DC02B091A502C091DE +:10483000A6028091A8029091A90221E030E0BF3F3A +:1048400011F020E030E0122FBC016095709506E079 +:104850004AC0009721F0CF3F29F4212F05C021E065 +:1048600030E002C020E030E020FD3BC04A2F50E0A5 +:10487000049FF001059FF00D1124E555FD4F2181A6 +:10488000C2132FC02081B2132CC02281211129C054 +:10489000238134812817390718F0281B390B02C0EF +:1048A000260F371F283C3105E0F48091AA028F7053 +:1048B00080618093AA0286E0849FF001859FF00DBD +:1048C0001124E055FD4F80818F708061808385EADF +:1048D00092E00E94B71FDF91CF911F910F910C942E +:1048E000D323AF5FA770AD13B4CFDF91CF911F91EA +:1048F0000F910895EF92FF920F931F93CF93DF9341 +:10490000CDB7DEB762970FB6F894DEBF0FBECDBF4E +:104910008C0185E0F801DE011D9601900D928A95CB +:10492000E1F7D8014C9111965C91119712966C9118 +:1049300012971396ED90FC9014977091A502E09158 +:10494000A6028091A8029091A902009739F0EF3F4A +:1049500041F421E030E07F3F31F003C021E030E05E +:1049600002C020E030E020FD5CC12091A70222239C +:1049700009F4F1C0E816F90628F09701281B390B55 +:10498000C90104C0809590958E0D9F1D883C9105AE +:1049900008F098C08091AA02982F907F09F064C017 +:1049A000E51314C0741312C0611110C08F708061C0 +:1049B0008093AA020E94F42385EA92E00E94B71F26 +:1049C0008091AA02D80115968C9343C1EF2839F043 +:1049D0005F3F41F481E090E04F3F31F003C081E060 +:1049E00090E002C080E090E080FD03C081E0862777 +:1049F00002C080E090E080FF2EC08091DB02209119 +:104A0000DC0236E013C090E0389FF001399FF00DD2 +:104A10001124E555FD4F7181571306C0708147136E +:104A200003C07281671317C0019687708213EBCFA2 +:104A300012C19F7059F0882309F40BC107C09F7001 +:104A400029F0F8019581907F09F403C1805E8830D8 +:104A500008F4FFC0D2C0662309F4FBC08091AA020B +:104A600081608093AA02F5C0E51308C0741306C0E4 +:104A7000611104C0D80115968C939DC04D875E8747 +:104A80008D859E856A8B0E948F236A89882309F40D +:104A9000B4C0662309F4B1C02091AA02822F829586 +:104AA0008F7090E002970CF4C6C08091A50290919F +:104AB000A60298878F831986FB86EA862C87CE010B +:104AC000079646C08091AA02982F907F59F47E2DB8 +:104AD000F98AE88A89890E94B42385EA92E00E94D3 +:104AE000B71F95C0E51311C074130FC061110DC03D +:104AF000F8018583C8010E94B71FE5EAF2E086E06D +:104B0000DF011D928A95E9F7A2C04D875E878D85EA +:104B10009E856A8B0E948F236A89882309F46DC061 +:104B2000662309F46AC02091AA02822F82958F70B1 +:104B300090E002970CF47FC08091A5029091A602AC +:104B40009A8389831B82FD82EC822E83CE0101969B +:104B50000E94B71F70C0E816F90628F09701281BBD +:104B6000390BC90104C0809590958E0D9F1D883C1E +:104B7000910508F046C0662309F43FC0E51330C034 +:104B800074132EC02091AA0220FD21C0322F32952D +:104B90003F70832F90E00097D1F0D80115962C93A9 +:104BA00015970F9741F0832F8F5F8295807F2F702D +:104BB000282B15962C93C8010E94B71F86E0F80198 +:104BC000A5EAB2E001900D928A95E1F73EC086E039 +:104BD000F801A5EAB2E001900D928A95E1F737C09D +:104BE0004D875E878D859E850E948F23811123C00E +:104BF0008091AA0281608093AA02C8010E94B71F17 +:104C000026C07E2DF98AE88A89890E94B423E5EAC4 +:104C1000F2E086E0DF011D928A95E9F70E94F42315 +:104C200018C0662351F34D875E878D859E850E944F +:104C30008F23882311F386E0F801A5EAB2E0019002 +:104C40000D928A95E1F70E9402240E94F42381E0EC +:104C500014C080E012C04D875E878D859E850E94BE +:104C60006E28292F22952F7030E0223031050CF468 +:104C7000E0CE243031050CF6E2CE62960FB6F89401 +:104C8000DEBF0FBECDBFDF91CF911F910F91FF907F +:104C9000EF9008951F93CF93DF93CDB7DEB72C9796 +:104CA0000FB6F894DEBF0FBECDBF4F83588769871C +:104CB0007A878B879C87CE0107960E947A24882367 +:104CC000D9F02F8138858A859B85892B39F03F3F24 +:104CD00019F080E090E004C02F3FD9F781E090E028 +:104CE000892B09F06DC04F81588569857A858B8540 +:104CF0009C850E94C32364C086E0FE013796DE01D6 +:104D0000119601900D928A95E1F7FF81E8854A8519 +:104D10005B854115510539F0EF3F41F481E090E0AA +:104D2000FF3F31F003C081E090E002C080E090E0FE +:104D300080FD46C02091DC0230E0C90101968770F9 +:104D400099276091DB0270E08617970709F440C04D +:104D5000F983EA835D834C8396E0929FD001939F11 +:104D6000B00D1124A555BD4FFE01319601900D9255 +:104D70009A95E1F78093DC020E94D32321C0189F0B +:104D8000C001112485559D4F0E947A24882371F11A +:104D9000E091DB021E9FF0011124E555FD4F40819B +:104DA000518162817381848195810E94C3238091A6 +:104DB000DB0290E00196877099278093DB0201C0A7 +:104DC00016E08091DB029091DC028913D8CF0EC0EF +:104DD0000E948B231092DC021092DB02E5EAF2E0E3 +:104DE00086E0DF011D928A95E9F7EACF2C960FB68F +:104DF000F894DEBF0FBECDBFDF91CF911F91089514 +:104E0000DF92EF92FF920F931F93CF93DF93EC010A +:104E1000009709F46EC0D12CEE24E394F12C8E019E +:104E20000F5F1F4FFE018491843748F4843008F0EF +:104E30004CC0813071F0823009F05BC01EC08537F4 +:104E400009F43FC080F1982F9458903708F051C072 +:104E50003FC02296F8018491982F905E983050F4CC +:104E60008770FE2D01C0FF0F8A95EAF78F2F0E94F1 +:104E7000142913C00E94901E2FC02296F80184911D +:104E8000982F905E983060F48770FE2D01C0FF0F60 +:104E90008A95EAF78F2F0E941A290E943D291CC08B +:104EA0000E94581F19C02296F801049107C08FE98B +:104EB0009FE00197F1F700C0000001500111F7CF0A +:104EC0000BC02296F801D49007C00E94901E03C028 +:104ED0008F770E94581FE8018D2D07C08150EFE9A0 +:104EE000FFE03197F1F700C00000882309F497CF65 +:104EF000F5CFDF91CF911F910F91FF90EF90DF9051 +:104F000008956093E1027093E2028093E30290932C +:104F1000E4020C9477236093DD027093DE028093A9 +:104F2000DF029093E0020C94772308950C9481277C +:104F30000F931F930091E1021091E2022091E3028E +:104F40003091E402602B712B822B932B1F910F91D8 +:104F50000C9481270F931F930091E1021091E202BC +:104F60002091E3023091E402602371238223932392 +:104F70001F910F910C9481270F931F930091E102D1 +:104F80001091E2022091E3023091E4026027712740 +:104F9000822793271F910F910C94812760E070E086 +:104FA000CB010C948B2741E050E060E070E004C03E +:104FB000440F551F661F771F8A95D2F7CB01BA01A0 +:104FC0000C948B2741E050E060E070E004C0440F97 +:104FD000551F661F771F8A95D2F78091DD02909149 +:104FE000DE02A091DF02B091E002482B592B6A2B20 +:104FF0007B2BCB01BA010C948B2741E050E060E0A1 +:1050000070E004C0440F551F661F771F8A95D2F7C2 +:1050100040955095609570958091DD029091DE02EB +:10502000A091DF02B091E002482359236A237B2339 +:10503000CB01BA010C948B2741E050E060E070E0B6 +:1050400004C0440F551F661F771F8A95D2F78091C1 +:10505000DD029091DE02A091DF02B091E0024827CC +:1050600059276A277B27CB01BA010C948B270F9312 +:105070001F930091DD021091DE022091DF0230913A +:10508000E002602B712B822B932B1F910F910C94BC +:105090008B270F931F930091DD021091DE02209168 +:1050A000DF023091E00260237123822393231F915A +:1050B0000F910C948B270F931F930091DD02109199 +:1050C000DE022091DF023091E00260277127822703 +:1050D00093271F910F910C948B270895CF92DF9205 +:1050E000EF92FF920F931F93CF93DF93EC01C09049 +:1050F000E102D090E202E090E302F090E4028091BD +:10510000DD029091DE02A091DF02B091E002C82A98 +:10511000D92AEA2AFB2A0FE110E0B701A601002EE6 +:1051200004C076956795579547950A94D2F740FF46 +:1051300008C0BE01802F0E94B3048130910509F0A0 +:1051400007C00150110948F7BE0180E00E94B30476 +:10515000DF91CF911F910F91FF90EF90DF90CF9053 +:10516000089540918B0150918C0120E030E09FEF39 +:10517000FA01E20FF31F62816817A1F09F3F19F453 +:10518000611101C0922F2F5F3F4F2630310581F70B +:1051900007C0FA01E90FF11D97FDFA958283089582 +:1051A0009F3FB9F7089540918B0150918C0120E009 +:1051B00030E0FA01E20FF31F9281981301C01282CE +:1051C0002F5F3F4F26303105A1F7089581E090E031 +:1051D000E0918B01F0918C01E80FF91F108201968C +:1051E00088309105A9F708959091E502982B909346 +:1051F000E502089580959091E50298239093E50249 +:1052000008951092E50208959091E602982B9093EC +:10521000E602089580959091E60298239093E60225 +:1052200008951092E60208959091E702982B9093CA +:10523000E702089580959091E70298239093E70202 +:1052400008951092E70208958093E802089510925D +:10525000E802089540918B0150918C0120E030E0EC +:1052600080E0FA01E20FF31F918191118F5F2F5FB0 +:105270003F4F27303105A9F70895E0918B01F09158 +:105280008C018091E5028083E0918B01F0918C018B +:1052900080819091E602892B8083E0918B01F091CF +:1052A0008C0180819091E702892B80839091E802A4 +:1052B000992361F0E0918B01F0918C018081892B21 +:1052C00080830E942A2981110E94272980918B01C5 +:1052D00090918C010C94591D8091FB03843039F11D +:1052E0001092F20220E488E190E00FB6F894A895BD +:1052F000809360000FBE2093600080E00E949B03BB +:1053000080E00E942C0683B7817F846083BF83B7CF +:10531000816083BF7894889583B78E7F83BF88E14F +:105320000FB6F89480936000109260000FBE08954D +:1053300008950895CF9380E00E949B030E949829CE +:105340000E94E9070E949929C0E08C2F0E94390928 +:10535000892B29F4CF5FC530C1F780E001C081E01F +:10536000CF9108950E948B2380E00E949B030E94AE +:1053700065300E944D1D0C942C061F920F920FB6A3 +:105380000F9211248F939F93AF93BF938091F2025A +:10539000811113C08091F3029091F402A091F50263 +:1053A000B091F6024196A11DB11D8093F302909336 +:1053B000F402A093F502B093F602BF91AF919F91D2 +:1053C0008F910F900FBE0F901F90189582E084BDB3 +:1053D00093E095BD9AEF97BD80936E0008958FB7C7 +:1053E000F8944091F3025091F4026091F5027091AB +:1053F000F6028FBFCA010895CF92DF92EF92FF921B +:105400000F931F932FB7F8944091F3025091F40239 +:105410006091F5027091F6022FBF6A017B01EE24C4 +:10542000FF248C0120E030E0C016D106E206F3062E +:1054300020F09A01281B390B05C09C01209530955E +:10544000240F351FC9011F910F91FF90EF90DF903E +:10545000CF9008951F920F920FB60F9211248F9341 +:105460009F93AF93BF938091F3029091F402A09128 +:10547000F502B091F6020196A11DB11D8093F302D1 +:105480009093F402A093F502B093F602BF91AF910E +:105490009F918F910F900FBE0F901F9018950E94B3 +:1054A0009516F8942FEF87EA91E6215080409040BE +:1054B000E1F700C0000087E090EBDC018093050479 +:1054C00090930604A0930704B09308042CE088E1AD +:1054D00090E00FB6F894A895809360000FBE2093DB +:1054E0006000FFCFCF92DF92EF92FF920F931F9356 +:1054F000CF93DF93C82ED12C01E010E08D2D0E94B8 +:1055000039097C01C0E0D0E098010C2E02C0220FC6 +:10551000331F0A94E2F72E213F21232B29F42196F1 +:10552000CC30D10589F708C06C2F7D2D80E00E941A +:105530008E04C812F4CF06C0D39485E0D812DECF13 +:1055400080E001C081E0DF91CF911F910F91FF902A +:10555000EF90DF90CF900895CF93C82F8CE20E94F8 +:10556000722A882321F08C2FCF910C94722A80E02C +:10557000CF910895CF930E94FD2B811102C00E940C +:10558000DE2BC5E608C00E94E9078FE39CE901977E +:10559000F1F700C00000C150B1F789E20E94AC2AC7 +:1055A00081110AC18AE20E94AC2A81110E94DE2B7D +:1055B00085E00E94AC2A81110E944F2A0E94082C8B +:1055C0008093F10287E00E94AC2A882399F18BE155 +:1055D0000E94AC2A882351F09091F10291FB882718 +:1055E00080F921E0822780FB91F922C08EE00E94A1 +:1055F000AC2A882351F09091F10292FB882780F920 +:1056000021E0822780FB92F913C080E10E94AC2A3E +:105610009091F102882341F093FB882780F921E0E3 +:10562000822780FB93F904C0892F809580FB90F935 +:105630009093F1028091F1020E940C2C0E941A2C8E +:105640008093020380EE0E94AC2A882341F080916F +:105650000203982F909590FB80F98093020389E3D1 +:105660000E94AC2A882359F09091020391FB88276D +:1056700080F921E0822780FB91F99093020382EE6A +:105680000E94AC2A882359F09091020392FB88274C +:1056900080F921E0822780FB92F99093020386EE45 +:1056A0000E94AC2A882359F09091020393FB88272B +:1056B00080F921E0822780FB93F99093020383EE27 +:1056C0000E94AC2A882359F09091020394FB88270A +:1056D00080F921E0822780FB94F99093020385E30F +:1056E0000E94AC2A882359F09091020395FB8827E9 +:1056F00080F921E0822780FB95F99093020381E3F2 +:105700000E94AC2A882359F09091020396FB8827C7 +:1057100080F921E0822780FB96F99093020381E1D2 +:105720000E94AC2A882359F09091020397FB8827A6 +:1057300080F921E0822780FB97F990930203809102 +:1057400002030E941E2C87E20E94AC2AC82F8EE121 +:105750000E94AC2A8111C2608FE10E94AC2A8111A3 +:10576000C46080E20E94AC2A8111C86081E20E947C +:10577000AC2A8111C06182E20E94AC2A8111C06210 +:1057800083E20E94AC2A8111C06484E20E94AC2AA8 +:10579000882311F0C06802C0CC2329F08C2F0E940E +:1057A000152C6C2F03C00E94112C682F70E080E034 +:1057B00090E0CF910C949627CF9108956DEE7EEFF7 +:1057C00080E090E00E94CC3460E082E090E00E94B3 +:1057D000BE3460E083E090E00E94BE3460E084E08C +:1057E00090E00E94BE3460E085E090E00E94BE340C +:1057F00060E086E090E00C94BE3480E090E00E948F +:10580000B83421E08D3E9E4F09F020E0822F0895AC +:1058100082E090E00C94B034682F82E090E00C9429 +:10582000BE3483E090E00C94B034682F83E090E0C5 +:105830000C94BE3484E090E00C94B034682F84E083 +:1058400090E00C94BE3486E090E00C94B034682F65 +:1058500086E090E00C94BE348091FF0280FF0BC084 +:105860006091900185E0689FB0011124759567955E +:10587000759567952AC081FF09C06091900185E008 +:10588000689FB0011124759567951FC082FF07C0FE +:105890006091900185E0689FB001112416C040918D +:1058A000F9024423C9F060918F01461788F72091CF +:1058B000900185E0289F90011124429FC001439FE1 +:1058C000900D112470E00E949C346038710540F402 +:1058D0006115710539F002C065E070E0862F08950A +:1058E0008FE7089581E008958091FF0280FF08C04E +:1058F00060918E0170E0759567957595679521C0EB +:1059000081FF06C060918E0170E07595679519C0A2 +:1059100082FF04C060918E0170E010C08091F90296 +:105920008823C1F060918D018617A0F790918E01B8 +:10593000989FC001112470E00E949C34603871056A +:1059400028F46115710521F0862F08958FE70895D9 +:1059500081E0089561E070E0F4CF803F21F40E947F +:105960002C2C819504C0813F29F40E942C2C80931B +:10597000FC020895823F21F40E942C2C819504C0E2 +:10598000833F29F40E942C2C8093FB020895893FC9 +:1059900019F40E94742C05C08A3F31F40E94742CC3 +:1059A00081958093FD0208958B3F21F40E94742C11 +:1059B000819504C08C3F29F40E94742C8093FE02D0 +:1059C0000895843F21F48091FA02816017C0853FD9 +:1059D00021F48091FA02826011C0863F21F4809107 +:1059E000FA0284600BC0873F21F48091FA0288603C +:1059F00005C0883F31F48091FA0280618093FA02F9 +:105A000008958D3F21F48091FF0281600BC08E3F8D +:105A100021F48091FF02826005C08F3F29F48091BC +:105A2000FF0284608093FF020895803F29F48091F3 +:105A3000FC0287FF6EC007C0813F41F48091FC02E9 +:105A400018160CF066C01092FC0263C09091FB0225 +:105A5000823F19F497FF5DC005C0833F31F41916EA +:105A60000CF057C01092FB0254C0893F31F4809172 +:105A7000FD0218160CF04DC006C08A3F39F4809123 +:105A8000FD0287FF46C01092FD0243C08B3F29F400 +:105A90008091FE0287FF3DC006C08C3F39F48091A3 +:105AA000FE021816B4F51092FE0233C0843F21F4B2 +:105AB0008091FA028E7F05C0853F31F48091FA0211 +:105AC0008D7F8093FA0225C0863F21F48091FA02EF +:105AD0008B7FF7CF873F21F48091FA02877FF1CF48 +:105AE000883F21F48091FA028F7EEBCF8D3F21F425 +:105AF0008091FF028E7F0BC08E3F21F48091FF02C8 +:105B00008D7F05C08F3F29F48091FF028B7F8093AA +:105B1000FF028091FB0281110EC08091FC02811175 +:105B20000AC08091FD02811106C08091FE028111A0 +:105B300002C01092F90208958AEF92E00E94641D5B +:105B40000E94EF299093F8028093F7020895CF9373 +:105B50008091F7029091F8020E94FC294091F9028D +:105B6000442321F02091910130E006C02091920160 +:105B70005AE0259F900111248217930708F486C0EC +:105B80008091FB0281110DC09091FC02911109C01E +:105B90009091FD02911105C09091FE02992309F4A4 +:105BA00075C04F3F19F04F5F4093F902181624F467 +:105BB0000E942C2C8093FB028091FB0287FF05C082 +:105BC0000E942C2C81958093FB028091FC02181678 +:105BD00024F40E942C2C8093FC028091FC0287FF0D +:105BE00005C00E942C2C81958093FC026091FB02E1 +:105BF000662339F1C091FC02CC2319F1772767FDA8 +:105C00007095872F972F0E94003223E333E343E3FD +:105C10005FE30E94B4320E94CD316093FB026C2F8F +:105C2000772767FD7095872F972F0E94003223E317 +:105C300033E343E35FE30E94B4320E94CD316093CB +:105C4000FC028091FD02181624F40E94742C8093AB +:105C5000FD028091FD0287FF05C00E94742C819592 +:105C60008093FD028091FE02181624F40E94742C89 +:105C70008093FE028091FE0287FF05C00E94742C73 +:105C800081958093FE02CF910C949C2DCF91089525 +:105C9000EAEFF2E085E0DF011D928A95E9F71092C4 +:105CA000F9021092FF020895833089F130F48130B7 +:105CB00061F0823009F06EC019C0853009F449C026 +:105CC000B8F1863009F066C055C020919201862F48 +:105CD00090E0820F911D8F3F910520F4620F609339 +:105CE000920108958FEF8093920108952091910180 +:105CF000862F90E0820F911D8F3F910520F4620F57 +:105D00006093910108958FEF809391010895209100 +:105D10009001862F90E0820F911D8F3F910520F416 +:105D2000620F6093900108958FEF80939001089522 +:105D300020918F01862F90E0820F911D8F3F91055A +:105D400020F4620F60938F0108958FEF80938F018D +:105D5000089520918E01862F90E0820F911D8F3F34 +:105D6000910520F4620F60938E0108958FEF809368 +:105D70008E01089520918D01862F90E0820F911D54 +:105D80008F3F910520F4620F60938D0108958FEF8E +:105D900080938D010895833021F130F4813059F0E2 +:105DA000823009F049C012C0853089F128F186306F +:105DB00009F042C037C080919201681720F4861B19 +:105DC000809392010895109292010895809191011B +:105DD000681720F4861B8093910108951092910119 +:105DE000089580919001681720F4861B809390019C +:105DF000089510929001089580918F01681720F402 +:105E0000861B80938F01089510928F0108958091D1 +:105E10008E01681720F4861B80938E0108951092DE +:105E20008E01089580918D01681720F4861B809360 +:105E30008D01089510928D01089541E050E060E0D9 +:105E400070E004C0440F551F661F771F8A95D2F774 +:105E5000CB01BA010E9496270C948B23873200F560 +:105E60008E3108F089C08E3009F469C060F4873043 +:105E700009F44DC018F4863049F531C0883041F13D +:105E80008B3021F57EC0863109F47BC018F4803157 +:105E9000E9F45FC0893109F474C08B31B9F445C0AD +:105EA000883309F46EC048F4893209F467C0853339 +:105EB00009F464C0873251F461C0833409F45EC0D0 +:105EC00018F48A3318F056C0883499F080E00895A9 +:105ED0000E94082C0E941A2C0E94232C52C08091F0 +:105EE000F102817F8E7F8093F10281E08093000335 +:105EF00008950E948B232FEF83ED90E32150804083 +:105F00009040E1F700C000000E944F2A3AC09091F3 +:105F1000F102892F8095817080FB90F919F09660CD +:105F2000986025C0997F977F22C09091F10291FBE4 +:105F3000882780F921E0822780FB91F913C0909196 +:105F4000F10292FB882780F921E0822780FB92F9F9 +:105F500009C09091F10293FB882780F921E0822704 +:105F600080FB93F99093F102882359F0916090930C +:105F7000F10207C0895303C08D5101C080E00E9427 +:105F80001D2F81E0089580E0089580E00895CF936B +:105F9000C82F80910003813071F020F0823009F029 +:105FA00089C037C0A0918B01B0918C018C91823255 +:105FB00009F082C007C0A0918B01B0918C018C9137 +:105FC000823249F48C2F0E94C32F81111EC08C2F66 +:105FD0000E942E2F1CC08C2F0E94C52F811115C02E +:105FE000C43169F030F4CB3081F0C03109F068C0C1 +:105FF00009C0C93221F0C83309F062C006C010924E +:1060000000035EC082E08093000381E090E0817035 +:106010005AC0C932C9F060F4C431B1F020F4C730BD +:1060200009F04CC034C0CE51C63008F047C017C08C +:10603000CE3439F120F4CB3409F040C01CC0C13556 +:10604000C1F0C235D9F513C080910103882319F03E +:106050001092010333C081E08093000334C0EC2F21 +:10606000F0E0E25EFD4F80818093010327C061E094 +:1060700003C061E007C06AE0809101030E94542ED2 +:106080001DC06AE0809101030E94CB2E17C08EE1F3 +:106090008093920182E3809391018AE08093900142 +:1060A00084E180938F0188E080938E0188E2809361 +:1060B0008D0104C01092000380E005C081E003C0A0 +:1060C00080E090E0A4CFCF9108950E94FD2B811134 +:1060D00002C00E94DE2B0E94232C8093040480FFC8 +:1060E00002C0869501C080E00C949B03809104045B +:1060F000982F9695292F30E0233031054CF49F5F7F +:10610000990F8170892B8160809304040E94272C51 +:106110008091040486950C949B0380910404982F2D +:10612000969591F09158990F8170892B8093040472 +:106130008E7F91E009F490E08091040490FB80F957 +:10614000809304040E94272C8091040486950C946B +:106150009B0380910404982F909590FB80F9809385 +:1061600004040E94272C8091040480FF02C08695BD +:1061700001C080E00C949B0330910404232F2695EA +:106180002F5F2F77822F90E0317004972CF4220F2D +:10619000232B2093040402C0309304048091040450 +:1061A000282F2E7F91E009F490E090FB80F98093F6 +:1061B00004040E94272C8091040486950C949B0370 +:1061C00020910404922F96959827990F822F817021 +:1061D000892B809304048E7F91E009F490E08091F4 +:1061E000040490FB80F9809304040E94272C809182 +:1061F000040486950C949B035058BB27AA270ED005 +:1062000075C166D130F06BD120F031F49F3F11F4AD +:106210001EF45BC10EF4E095E7FB51C1E92F77D185 +:1062200080F3BA17620773078407950718F071F4B3 +:106230009EF58FC10EF4E0950B2EBA2FA02D0B0109 +:10624000B90190010C01CA01A0011124FF27591BBB +:1062500099F0593F50F4503E68F11A16F040A22FC1 +:10626000232F342F4427585FF3CF46953795279532 +:10627000A795F0405395C9F77EF41F16BA0B620B31 +:10628000730B840BBAF09150A1F0FF0FBB1F661F78 +:10629000771F881FC2F70EC0BA0F621F731F841FBB +:1062A00048F4879577956795B795F7959E3F08F0E1 +:1062B000B3CF9395880F08F09927EE0F97958795A0 +:1062C0000895D9D008F481E008950CD00FC107D10A +:1062D00040F0FED030F021F45F3F19F0F0C05111D2 +:1062E00039C1F3C014D198F39923C9F35523B1F3FD +:1062F000951B550BBB27AA2762177307840738F035 +:106300009F5F5F4F220F331F441FAA1FA9F333D093 +:106310000E2E3AF0E0E830D091505040E695001C47 +:10632000CAF729D0FE2F27D0660F771F881FBB1F03 +:10633000261737074807AB07B0E809F0BB0B802DDD +:10634000BF01FF2793585F4F2AF09E3F510568F029 +:10635000B6C000C15F3FECF3983EDCF386957795BD +:106360006795B795F7959F5FC9F7880F911D96952B +:10637000879597F90895E1E0660F771F881FBB1F87 +:10638000621773078407BA0720F0621B730B840B34 +:10639000BA0BEE1F88F7E095089504D06894B11108 +:1063A000D9C00895BCD088F09F5790F0B92F992795 +:1063B000B751A0F0D1F0660F771F881F991F1AF010 +:1063C000BA95C9F712C0B13081F0C3D0B1E00895D9 +:1063D000C0C0672F782F8827B85F39F0B93FCCF35A +:1063E000869577956795B395D9F73EF49095809506 +:1063F000709561957F4F8F4F9F4F0895E89409C026 +:1064000097FB3EF490958095709561957F4F8F4FE7 +:106410009F4F9923A9F0F92F96E9BB279395F695FD +:10642000879577956795B795F111F8CFFAF4BB0F7B +:1064300011F460FF1BC06F5F7F4F8F4F9F4F16C0DF +:10644000882311F096E911C0772321F09EE8872F69 +:10645000762F05C0662371F096E8862F70E060E025 +:106460002AF09A95660F771F881FDAF7880F96959E +:10647000879597F90895990F0008550FAA0BE0E842 +:10648000FEEF16161706E807F907C0F012161306F6 +:10649000E407F50798F0621B730B840B950B39F436 +:1064A0000A2661F0232B242B252B21F408950A269C +:1064B00009F4A140A6958FEF811D811D089597F9DC +:1064C0009F6780E870E060E008959FEF80EC08959A +:1064D00000240A94161617061806090608950024C3 +:1064E0000A9412161306140605060895092E03943D +:1064F000000C11F4882352F0BB0F40F4BF2B11F4B1 +:1065000060FF04C06F5F7F4F8F4F9F4F089557FD0F +:106510009058440F551F59F05F3F71F04795880F11 +:1065200097FB991F61F09F3F79F0879508951216A8 +:1065300013061406551FF2CF4695F1DF08C0161654 +:1065400017061806991FF1CF869571056105089405 +:106550000895E894BB2766277727CB0197F908951C +:106560008ADF08F48FEF08950BD0C0CFB1DF28F099 +:10657000B6DF18F0952309F0A2CFA7CF1124EACFF8 +:10658000C6DFA0F3959FD1F3950F50E0551F629F92 +:10659000F001729FBB27F00DB11D639FAA27F00D7C +:1065A000B11DAA1F649F6627B00DA11D661F829FA3 +:1065B0002227B00DA11D621F739FB00DA11D621F88 +:1065C000839FA00D611D221F749F3327A00D611DA5 +:1065D000231F849F600D211D822F762F6A2F112487 +:1065E0009F5750408AF0E1F088234AF0EE0FFF1FDA +:1065F000BB1F661F771F881F91505040A9F79E3F11 +:10660000510570F05CCFA6CF5F3FECF3983EDCF312 +:10661000869577956795B795F795E7959F5FC1F74D +:10662000FE2B880F911D9695879597F90895FA018D +:10663000EE0FFF1F30962105310599F161157105A7 +:1066400061F48038BFE39B0749F168949038810575 +:1066500061F08038BFEF9B0741F0992342F5FF3F7F +:10666000E1053105210511F1E8940894E795D90178 +:10667000AA2329F4AB2FBE2FF85FD0F310C0FF5F21 +:1066800070F4A695E0F7F73950F019F0FF3A38F4B6 +:106690009F779F930CD00F9007FC905808953EF081 +:1066A00014CF60E070E080E89FE308954FE79F77A4 +:1066B0005F934F933F932F939ED02F913F914F9194 +:1066C0005F9152DF05C019F40EF0F9CE42CFFDCE36 +:1066D00026DFC8F39638C0F707F80F92E8942BE34B +:1066E0003AEA48EB5FE74EDF0F920F920F924DB7F9 +:1066F0005EB70F92C0D0ECEAF0E016D04F915F91F8 +:10670000EF91FF91E595EE1FFF1F49F0FE57E068FE +:106710004427EE0F441FFA95E1F74195550B32D00F +:106720000F9007FE26C00895DF93CF931F930F931A +:10673000FF92EF92DF927B018C01689405C0DA2E04 +:10674000EF011EDFFE01E894A59125913591459159 +:106750005591AEF3EF0162DDFE019701A801DA94D5 +:1067600079F7DF90EF90FF900F911F91CF91DF911C +:1067700008959B01AC0160E070E080E89FE3A5CD47 +:106780009ECEACC0CCDEE8F39923D9F3940F511D13 +:10679000BBF39150504094F059F0882332F0660FCB +:1067A000771F881F91505040C1F79E3F510544F715 +:1067B000880F911D9695879597F908955F3FACF0E6 +:1067C000983E9CF0BB27869577956795B79508F41A +:1067D000B1609395C1F7BB0F58F711F460FFE8CF94 +:1067E0006F5F7F4F8F4F9F4FE3CFB4CE0EF076C0D9 +:1067F0006CCE689464CE93DEC8F39923D1F3C6F3CC +:10680000DF93CF931F930F93FF92C92FDD27882328 +:106810002AF02197660F771F881FDAF720E030E013 +:1068200040E85FEB9FE3883920F0803E30F021960E +:106830008F77E3DCE4EDF0E003C0DFDCE1E0F1E0E2 +:1068400073DF8B01BE01EC01FB2E6F57710975954B +:10685000771F880B990BD4DD28E132E741E35FE332 +:106860008FDEAF2D9801AE01FF900F911F91CF9158 +:10687000DF91D4DC3BCEFA01DC01AA0FBB1F9B01E8 +:10688000AC01BF5728F422273327442750781FC074 +:10689000B75188F4AB2F0024469537952795011CF6 +:1068A000A395D2F3002069F0220F331F441FB39544 +:1068B000DAF30DD0A1CC61307105A0E88A07B946A2 +:1068C00030F49B01AC0166277727882790783096B3 +:1068D00021F0208331834283538308959F3F31F019 +:1068E000915020F4879577956795B795880F911DFE +:1068F0009695879597F90895991B79E004C0991F9B +:10690000961708F0961B881F7A95C9F78095089509 +:10691000AA1BBB1B51E107C0AA1FBB1FA617B707C5 +:1069200010F0A61BB70B881F991F5A95A9F78095E1 +:106930009095BC01CD01089597FB072E16F40094A5 +:1069400007D077FD09D00E94883407FC05D03EF4BB +:10695000909581959F4F0895709561957F4F08950B +:10696000F999FECF92BD81BDF89A992780B5089517 +:10697000A8E1B0E042E050E00C94D334262FF9991E +:10698000FECF1FBA92BD81BD20BD0FB6F894FA9A12 +:10699000F99A0FBE019608950E94BE34272F0C94D9 +:1069A000BF34DC01CB01FC01F999FECF06C0F2BD7A +:1069B000E1BDF89A319600B40D9241505040B8F7BD +:0669C0000895F894FFCFDA +:1069C60055D0A446000016440000000000004842CE +:1069D60061978A460000C843000000000000484254 +:1069E60055D024460000C84300000000000048427D +:1069F60000005C460000C84300000000000048425A +:106A060061978A4600007A4455D0A4460000C843E0 +:106A1600000000000000484200005C460000C84339 +:106A2600000000000000484255D0244600001644ED +:106A36000507000C05854000000106400000010026 +:106A4600B91049112511F010BC1001E902280814EB +:106A56000A321E4200450025002600430061006000 +:106A660000200037006400650066006700440046A9 +:106A7600002400470000000200040005000700098A +:106A8600000B000C000E001000110013001500177B +:106A96000018001A001C001D001F002100230024FE +:106AA600002600280029002B002D002F0030003280 +:106AB6000034003500370039003B006E048704A01F +:106AC60004B904E10594055E053E053F4D362002F6 +:106AD60003020000010001010101010001010102A0 +:086AE60003040506070809007E +:00000001FF diff --git a/quantum/keymap_extras/keymap_german_osx.h b/quantum/keymap_extras/keymap_german_osx.h index da91b4bf4..d0b77fb80 100644 --- a/quantum/keymap_extras/keymap_german_osx.h +++ b/quantum/keymap_extras/keymap_german_osx.h @@ -9,92 +9,92 @@ // Alt gr // normal characters -#define DE_Z KC_Y -#define DE_Y KC_Z +#define DE_OSX_Z KC_Y +#define DE_OSX_Y KC_Z -#define DE_A KC_A -#define DE_B KC_B -#define DE_C KC_C -#define DE_D KC_D -#define DE_E KC_E -#define DE_F KC_F -#define DE_G KC_G -#define DE_H KC_H -#define DE_I KC_I -#define DE_J KC_J -#define DE_K KC_K -#define DE_L KC_L -#define DE_M KC_M -#define DE_N KC_N -#define DE_O KC_O -#define DE_P KC_P -#define DE_Q KC_Q -#define DE_R KC_R -#define DE_S KC_S -#define DE_T KC_T -#define DE_U KC_U -#define DE_V KC_V -#define DE_W KC_W -#define DE_X KC_X +#define DE_OSX_A KC_A +#define DE_OSX_B KC_B +#define DE_OSX_C KC_C +#define DE_OSX_D KC_D +#define DE_OSX_E KC_E +#define DE_OSX_F KC_F +#define DE_OSX_G KC_G +#define DE_OSX_H KC_H +#define DE_OSX_I KC_I +#define DE_OSX_J KC_J +#define DE_OSX_K KC_K +#define DE_OSX_L KC_L +#define DE_OSX_M KC_M +#define DE_OSX_N KC_N +#define DE_OSX_O KC_O +#define DE_OSX_P KC_P +#define DE_OSX_Q KC_Q +#define DE_OSX_R KC_R +#define DE_OSX_S KC_S +#define DE_OSX_T KC_T +#define DE_OSX_U KC_U +#define DE_OSX_V KC_V +#define DE_OSX_W KC_W +#define DE_OSX_X KC_X -#define DE_0 KC_0 -#define DE_1 KC_1 -#define DE_2 KC_2 -#define DE_3 KC_3 -#define DE_4 KC_4 -#define DE_5 KC_5 -#define DE_6 KC_6 -#define DE_7 KC_7 -#define DE_8 KC_8 -#define DE_9 KC_9 +#define DE_OSX_0 KC_0 +#define DE_OSX_1 KC_1 +#define DE_OSX_2 KC_2 +#define DE_OSX_3 KC_3 +#define DE_OSX_4 KC_4 +#define DE_OSX_5 KC_5 +#define DE_OSX_6 KC_6 +#define DE_OSX_7 KC_7 +#define DE_OSX_8 KC_8 +#define DE_OSX_9 KC_9 -#define DE_DOT KC_DOT -#define DE_COMM KC_COMM +#define DE_OSX_DOT KC_DOT +#define DE_OSX_COMM KC_COMM -#define DE_SS KC_MINS -#define DE_AE KC_QUOT -#define DE_UE KC_LBRC -#define DE_OE KC_SCLN +#define DE_OSX_SS KC_MINS +#define DE_OSX_AE KC_QUOT +#define DE_OSX_UE KC_LBRC +#define DE_OSX_OE KC_SCLN -#define DE_CIRC KC_NUBS // accent circumflex ^ and ring ° -#define DE_ACUT KC_EQL // accent acute ´ and grave ` -#define DE_PLUS KC_RBRC // + and * and ~ -#define DE_HASH KC_BSLS // # and ' -#define DE_LESS KC_GRV // < and > and | -#define DE_MINS KC_SLSH // - and _ +#define DE_OSX_CIRC KC_NUBS // accent circumflex ^ and ring ° +#define DE_OSX_ACUT KC_EQL // accent acute ´ and grave ` +#define DE_OSX_PLUS KC_RBRC // + and * and ~ +#define DE_OSX_HASH KC_BSLS // # and ' +#define DE_OSX_LESS KC_GRV // < and > and | +#define DE_OSX_MINS KC_SLSH // - and _ // shifted characters -#define DE_RING LSFT(DE_CIRC) // ° -#define DE_EXLM LSFT(KC_1) // ! -#define DE_DQOT LSFT(KC_2) // " -#define DE_PARA LSFT(KC_3) // § -#define DE_DLR LSFT(KC_4) // $ -#define DE_PERC LSFT(KC_5) // % -#define DE_AMPR LSFT(KC_6) // & -#define DE_SLSH LSFT(KC_7) // / -#define DE_LPRN LSFT(KC_8) // ( -#define DE_RPRN LSFT(KC_9) // ) -#define DE_EQL LSFT(KC_0) // = -#define DE_QST LSFT(DE_SS) // ? -#define DE_GRV LSFT(DE_ACUT) // ` -#define DE_ASTR LSFT(DE_PLUS) // * -#define DE_QUOT LSFT(DE_HASH) // ' -#define DE_MORE LSFT(DE_LESS) // > -#define DE_COLN LSFT(KC_DOT) // : -#define DE_SCLN LSFT(KC_COMM) // ; -#define DE_UNDS LSFT(DE_MINS) // _ +#define DE_OSX_RING LSFT(DE_OSX_CIRC) // ° +#define DE_OSX_EXLM LSFT(KC_1) // ! +#define DE_OSX_DQOT LSFT(KC_2) // " +#define DE_OSX_PARA LSFT(KC_3) // § +#define DE_OSX_DLR LSFT(KC_4) // $ +#define DE_OSX_PERC LSFT(KC_5) // % +#define DE_OSX_AMPR LSFT(KC_6) // & +#define DE_OSX_SLSH LSFT(KC_7) // / +#define DE_OSX_LPRN LSFT(KC_8) // ( +#define DE_OSX_RPRN LSFT(KC_9) // ) +#define DE_OSX_EQL LSFT(KC_0) // = +#define DE_OSX_QST LSFT(DE_OSX_SS) // ? +#define DE_OSX_GRV LSFT(DE_OSX_ACUT) // ` +#define DE_OSX_ASTR LSFT(DE_OSX_PLUS) // * +#define DE_OSX_QUOT LSFT(DE_OSX_HASH) // ' +#define DE_OSX_MORE LSFT(DE_OSX_LESS) // > +#define DE_OSX_COLN LSFT(KC_DOT) // : +#define DE_OSX_SCLN LSFT(KC_COMM) // ; +#define DE_OSX_UNDS LSFT(DE_OSX_MINS) // _ // Alt-ed characters -#define DE_SQ2 LALT(KC_2) // ² -#define DE_SQ3 LALT(KC_3) // ³ -#define DE_LCBR LALT(KC_8) // { -#define DE_LBRC LALT(KC_5) // [ -#define DE_RBRC LALT(KC_6) // ] -#define DE_RCBR LALT(KC_9) // } -#define DE_BSLS LALT(LSFT(KC_7)) // backslash -#define DE_AT LALT(DE_L) // @ -#define DE_EURO LALT(KC_E) // € -#define DE_TILD LALT(DE_N) // ~ -#define DE_PIPE LALT(DE_7) // | +#define DE_OSX_SQ2 LALT(KC_2) // ² +#define DE_OSX_SQ3 LALT(KC_3) // ³ +#define DE_OSX_LCBR LALT(KC_8) // { +#define DE_OSX_LBRC LALT(KC_5) // [ +#define DE_OSX_RBRC LALT(KC_6) // ] +#define DE_OSX_RCBR LALT(KC_9) // } +#define DE_OSX_BSLS LALT(LSFT(KC_7)) // backslash +#define DE_OSX_AT LALT(DE_OSX_L) // @ +#define DE_OSX_EURO LALT(KC_E) // € +#define DE_OSX_TILD LALT(DE_OSX_N) // ~ +#define DE_OSX_PIPE LALT(DE_OSX_7) // | #endif