diff options
43 files changed, 9320 insertions, 1630 deletions
diff --git a/.gitignore b/.gitignore index 49eb2d558..1e19ce9a8 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ tags build/ *.bak .vagrant/ +.DS_STORE
\ No newline at end of file diff --git a/keyboard/atreus/Makefile b/keyboard/atreus/Makefile index e1ebee47b..2e542d62e 100644 --- a/keyboard/atreus/Makefile +++ b/keyboard/atreus/Makefile @@ -58,6 +58,15 @@ else SRC := keymaps/keymap_default.c $(SRC) endif +ifdef TEENSY2 + OPT_DEFS += -DATREUS_TEENSY2 + ATRUES_UPLOAD_COMMAND = teensy_loader_cli -w -mmcu=$(MCU) $(TARGET).hex +else + OPT_DEFS += -DATREUS_ASTAR + ATRUES_UPLOAD_COMMAND = while [ ! -r $(USB) ]; do sleep 1; done; \ + avrdude -p $(MCU) -c avr109 -U flash:w:$(TARGET).hex -P $(USB) +endif + CONFIG_H = config.h # MCU name @@ -114,8 +123,8 @@ OPT_DEFS += -DBOOTLOADER_SIZE=4096 # comment out to disable the options. # #BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000) -#MOUSEKEY_ENABLE = yes # Mouse keys(+4700) -#EXTRAKEY_ENABLE = yes # Audio control and System control(+450) +MOUSEKEY_ENABLE = yes # Mouse keys(+4700) +EXTRAKEY_ENABLE = yes # Audio control and System control(+450) CONSOLE_ENABLE = yes # Console for debug(+400) COMMAND_ENABLE = yes # Commands for debug and configuration # Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE @@ -137,3 +146,7 @@ VPATH += $(TMK_DIR) include $(TOP_DIR)/quantum/quantum.mk +USB ?= /dev/cu.usbmodem1411 + +upload: build + $(ATRUES_UPLOAD_COMMAND) diff --git a/keyboard/atreus/README.md b/keyboard/atreus/README.md index 75f198fd1..4db7ac120 100644 --- a/keyboard/atreus/README.md +++ b/keyboard/atreus/README.md @@ -1,10 +1,6 @@ atreus keyboard firmware ====================== -## Note - -This is for the Teensy2 hand wired boards only. - ## Quantum MK Firmware You have access to a bunch of goodies! Check out the Makefile to enable/disable some of the features. Uncomment the `#` to enable them. Setting them to `no` does nothing and will only confuse future you. @@ -14,6 +10,12 @@ You have access to a bunch of goodies! Check out the Makefile to enable/disable # UNICODE_ENABLE = yes # Unicode support - this is commented out, just as an example. You have to use #, not // BLUETOOTH_ENABLE = yes # Enable Bluetooth with the Adafruit EZ-Key HID +## Atreus specific information + +These configuration files are specifically for the Atreus keyboards created by Phil Hagelberg (@technomancy). This keyboard is available in two variants: one powered by a Teensy 2, one powered by an A-Star. This repository currently assumes that you have an A-Star powered Atreus. If you are using a Teensy2, specify that by adding `TEENSY2=yes` to your `make` commands. + +If you are coming from the [atreus-firmware](https://github.com/technomancy/atreus-firmware), we've also brought forward the `make upload` command for you to use. + ## Quick aliases to common actions Your keymap can include shortcuts to common operations (called "function actions" in tmk). diff --git a/keyboard/atreus/atreus.h b/keyboard/atreus/atreus.h index 29d1d18ba..9dd77859f 100644 --- a/keyboard/atreus/atreus.h +++ b/keyboard/atreus/atreus.h @@ -7,21 +7,20 @@ #include <stddef.h> // This a shortcut to help you visually see your layout. -// The following is an example using the Planck MIT layout // The first section contains all of the arguements // The second converts the arguments into a two-dimensional array #define KEYMAP( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ - k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a \ ) \ { \ - { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ - { k30, k31, k32, k33, k34, k35, k35, k37, k38, k39, k3a, k3b } \ -} + { k00, k01, k02, k03, k04, KC_NO, k05, k06, k07, k08, k09 }, \ + { k10, k11, k12, k13, k14, KC_NO, k15, k16, k17, k18, k19 }, \ + { k20, k21, k22, k23, k24, k35, k25, k26, k27, k28, k29 }, \ + { k2a, k30, k31, k32, k33, k34, k36, k37, k38, k39, k3a } \ +} void * matrix_init_user(void); void * matrix_scan_user(void); diff --git a/keyboard/atreus/config.h b/keyboard/atreus/config.h index 733f579d4..ca0cd7e47 100644 --- a/keyboard/atreus/config.h +++ b/keyboard/atreus/config.h @@ -33,11 +33,15 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #define MATRIX_ROWS 4 #define MATRIX_COLS 11 -// Planck PCB default pin-out // Change this to how you wired your keyboard // COLS: Left to right, ROWS: Top to bottom -#define COLS (int []){ F6, F5, F4, B7, B6, B5, B4, B3, B2, B1, B0} -#define ROWS (int []){ D0, D1, D2, D3 } +#if defined(ATREUS_ASTAR) + #define COLS (int []){ B7, D6, F7, F6, B6, D4, E6, B4, B5, C6, D7 } + #define ROWS (int []){ D0, D1, D3, D2 } +#elif defined(ATREUS_TEENSY2) + #define COLS (int []){ F6, F5, F4, B7, B6, B5, B4, B3, B2, B1, B0} + #define ROWS (int []){ D0, D1, D2, D3 } +#endif /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboard/atreus/keymaps/keymap_gerb.c b/keyboard/atreus/keymaps/keymap_gerb.c new file mode 100644 index 000000000..1ba3942e3 --- /dev/null +++ b/keyboard/atreus/keymaps/keymap_gerb.c @@ -0,0 +1,66 @@ +// This is the personal keymap of Chris Gerber (@gerbercj). I haven't worked out the kinks +// with the Colemak and Dvorak support yet, but everything else works nicely. + +#include "atreus.h" + +// 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 _DV 2 +#define _L1 3 +#define _L2 4 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QW] = { /* Qwerty */ + {KC_Q, KC_W, KC_E, KC_R, KC_T, KC_NO, KC_Y, KC_U, KC_I, KC_O, KC_P }, + {KC_A, KC_S, KC_D, KC_F, KC_G, KC_NO, KC_H, KC_J, KC_K, KC_L, KC_SCLN}, + {KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LALT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH}, + {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_RCTL, KC_SPC, MO(_L1), KC_MINS, KC_QUOT, KC_ENT } + }, + [_CM] = { /* Colemak */ + {KC_Q, KC_W, KC_F, KC_P, KC_G, KC_NO, KC_J, KC_L, KC_U, KC_Y, KC_SCLN}, + {KC_A, KC_R, KC_S, KC_T, KC_D, KC_NO, KC_H, KC_N, KC_E, KC_I, KC_O }, + {KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LALT, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH}, + {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_RCTL, KC_SPC, MO(_L1), KC_MINS, KC_QUOT, KC_ENT } + }, + [_DV] = { /* Dvorak */ + {KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_NO, KC_F, KC_G, KC_C, KC_R, KC_L }, + {KC_A, KC_O, KC_E, KC_U, KC_I, KC_NO, KC_D, KC_H, KC_T, KC_N, KC_S }, + {KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_LALT, KC_B, KC_M, KC_W, KC_V, KC_Z }, + {KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_RCTL, KC_SPC, MO(_L1), KC_MINS, KC_SLSH, KC_ENT } + }, + [_L1] = { /* LAYER 1 */ + {KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_NO, KC_VOLU, KC_7, KC_8, KC_9, KC_LBRC}, + {KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_NO, KC_VOLD, KC_4, KC_5, KC_6, KC_RBRC}, + {KC_GRV, KC_MPRV, KC_MPLY, KC_MNXT, KC_MINS, KC_LALT, KC_MUTE, KC_1, KC_2, KC_3, KC_BSLS}, + {TG(_L2), KC_APP, KC_LGUI, KC_LSFT, KC_BSPC, KC_RCTL, KC_SPC, KC_TRNS, KC_DOT, KC_0, KC_EQL } + }, + [_L2] = { /* LAYER 2 */ + {KC_TRNS, KC_WH_L, KC_MS_U, KC_WH_R, KC_WH_U, KC_NO, DF(_QW), KC_F7, KC_F8, KC_F9, KC_F10 }, + {KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, KC_NO, DF(_CM), KC_F6, KC_F5, KC_F6, KC_F11 }, + {KC_BTN4, KC_BTN1, KC_BTN2, KC_BTN3, KC_BTN4, KC_LALT, DF(_DV), KC_F1, KC_F2, KC_F3, KC_F12 }, + {KC_TRNS, KC_TRNS, KC_LGUI, KC_LSFT, KC_BSPC, KC_RCTL, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS, RESET } + } +}; + +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); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; diff --git a/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/colemak_osx_pc_no.hex b/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/colemak_osx_pc_no.hex new file mode 100644 index 000000000..ecf97c9f1 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/colemak_osx_pc_no.hex @@ -0,0 +1,1142 @@ +:100000000C944C030C9490030C9490030C94900368
+:100010000C9490030C9490030C9490030C94900314
+:100020000C9490030C9490030C94BD0C0C948F0DC5
+:100030000C9490030C9490030C9490030C949003F4
+:100040000C9490030C94C4210C9490030C94900392
+:100050000C9490030C94551B0C9490030C949003F7
+:100060000C9490030C9490030C9490030C949003C4
+:100070000C9490030C9490030C9490030C949003B4
+:100080000C9490030C9490030C9490030C949003A4
+:100090000C9490030C9490030C9490030C94900394
+:1000A0000C9490030C9490030C9490039E03A30370
+:1000B000A803AD03B203B703BC03C103C603FC0D21
+:1000C0001E0E0C0F1E0E0C0F630E860E0C0FDB0E99
+:1000D000EE0ED011D011FF11FF11421280129914AF
+:1000E0009914991299149A139A136D1499149914D6
+:1000F0008414012E022E012C022C0001E101350294
+:100100003502E100013502350001E1012E022E0128
+:100110002C022C02E10001E6012E022E02E6012C47
+:10012000022C0001E10130023002E1012C022C001E
+:1001300001E10164026402E100016402640001E67D
+:100140000130023002E6012C022C000000002200E7
+:10015000C001C002C003C004C005C006C007C0087B
+:10016000C02E002D0237021E020452000025141476
+:100170000004001D00F400387426141A0015001B3A
+:1001800000F500377124140900160006002B00C189
+:1001900000271413001700190036782D0031020AC9
+:1001A00000070005000000230201541F0200003672
+:1001B0000200003500C5003200000027020000499F
+:1001C0000021140D000B000E000000240225020F78
+:1001D000001100100050004C002602180008004FCB
+:1001E0000029002C00C3001C000C005100C700288F
+:1001F00000C4002F001200520020022A001F1434F5
+:1002000000330038020252000024160100010001F0
+:1002100000010000000100010001000100010001D7
+:1002200000010001000100010001003778251601DE
+:10023000000100010001000100261601000100017B
+:100240000036710100010001000100010000000101
+:1002500000010001000000010000002414010064FE
+:100260000000000100000001002102010001000166
+:100270000000000100010001000100010001000177
+:1002800000010001000100010001000100C800019F
+:1002900000010001002E140100C90001000100014D
+:1002A00000010001003100010001000100035200C3
+:1002B0000001000100010001000100000001000137
+:1002C000002000010001000100010001001F0001E9
+:1002D0000001000100010001001E000100010001F9
+:1002E000000100220227002100010001000100019D
+:1002F00000010001000000010001000100000001F8
+:1003000000000001000100010000000100000001E8
+:10031000000100010001004A00000001000100C2CC
+:1003200000220026004A0001000100C60023004D03
+:1003300000010001000100010024004E0001000145
+:10034000000100010025004B000100010001000137
+:100350000001000100010000000100010001000196
+:100360000001000000010001002000010001000167
+:1003700000010001001F0001000100010001000157
+:10038000001E0001000100010001002202270021DF
+:100390000001000100010001000100010000000156
+:1003A0000001000100000001000000010001000147
+:1003B0000000000100000001000100010001004AEE
+:1003C00000000001000100C200220026004A0001D6
+:1003D000000100CA0023004D0001000100010001DE
+:1003E0000024004E00010001000100010025004B27
+:1003F00000010001000100010001000100010000F6
+:1004000000220001000100010001000000010001C4
+:10041000003C00010001000100010001003B00015F
+:100420000001000100010001003A0001000100018B
+:10043000000100010001003D000100010001000178
+:1004400000010001000000010001000100000001A6
+:100450000000000100010001000000010000000197
+:100460000001000100010030140000010001000142
+:10047000003E00420001000100010001003F004376
+:1004800000010001000100010040004400010001E2
+:1004900000010001004100450001000100010001D0
+:1004A0000001000100010000001603450072006712
+:1004B000006F0044006F007800200045005A0000E3
+:1004C0000016034500720067006F0044006F00785B
+:1004D00000200045005A0000000403090409026DD1
+:1004E00000040100A0FA0904000001030101000951
+:1004F0002111010001223F000705810308000A09BC
+:100500000401000103010200092111010001224D33
+:10051000000705820308000A090402000103000025
+:10052000000921110100012236000705830308009C
+:100530000A09040300010300000009211101000160
+:100540002239000705840310000112011001000088
+:100550000008EDFE07130100010200010501090674
+:10056000A101050719E029E7150025019508750186
+:10057000810205081901290595057501910295016A
+:100580007503910105071900297715002501957854
+:1005900075018102C005010980A1018502160100D3
+:1005A00026B7001A01002AB700751095018100C016
+:1005B000050C0901A1018503160100269C021A0100
+:1005C000002A9C02751095018100C005010902A155
+:1005D000010901A100050919012905150025019549
+:1005E0000575018102950175038101050109300935
+:1005F000311581257F9502750881060938158125F9
+:100600007F950175088106050C0A38021581257F42
+:10061000950175088106C0C005010906A1010507FD
+:1006200019E029E71500250195087501810295015A
+:1006300075088101050819012905950575019102C3
+:100640009501750391010507190029FF150025FF84
+:10065000950675088100C000000000000000000041
+:100660000000010204060A0F17202C3A4A5D718728
+:100670009DB3C7DAE9F5FCFFFCF5E9DAC7B39D875E
+:10068000715D4A3A2C20170F0A060402010000008F
+:10069000000000000000000011241FBECFEFDAE0D0
+:1006A000DEBFCDBF04B603FE24C08091EE01909161
+:1006B000EF01A091F001B091F1018730904BA7407C
+:1006C000B04BB9F41092EE011092EF011092F001CC
+:1006D0001092F10114BE84B7877F84BF88E10FB602
+:1006E000F89480936000109260000FBEE0E0FFE39A
+:1006F000099511E0A0E0B1E0ECE0F7E402C005905C
+:100700000D92A433B107D9F711E0A4E3B1E001C021
+:100710001D92AE3EB107E1F70E94010A0C948423BA
+:100720000C940000FC018281462F50E049305105B5
+:1007300090F5FA01EA5AFF4F0C943923882359F1B6
+:100740008EE391E00895882331F189E391E00895E3
+:10075000882309F180E391E008958823E1F083E2A2
+:1007600091E008958823B9F086E191E00895882307
+:1007700091F089E091E00895882369F084E091E0A8
+:100780000895882341F08BEF90E00895882319F0B5
+:1007900082EF90E0089580E090E0089580E090E09E
+:1007A000089580E090E0089581ED93E0892B11F0A9
+:1007B0000E94D10380E090E0089556985E982598B5
+:1007C0002D9826982E9827982F988FEF90E0909349
+:1007D00089008093880090938B0080938A00909387
+:1007E0008D0080938C00259A2D9A2FEF80E792E060
+:1007F000215080409040E1F700C00000269A2E9AD8
+:100800002FEF80E792E0215080409040E1F700C058
+:100810000000279A2F9A2FEF80E792E02150804026
+:100820009040E1F700C0000025982D982FEF80E759
+:1008300092E0215080409040E1F700C000002698EF
+:100840002E982FEF80E792E0215080409040E1F712
+:1008500000C0000027982F9856985E9825982D98EC
+:1008600026982E9827982F98089589EA80938000DB
+:1008700089E08093810024982C983F988AB18F74E6
+:100880008AB96E98479A8BB1806B8BB9769A0E9421
+:10089000DD038EEC93E0892B11F00E94CE0380E003
+:1008A00090E0089580E280930001809134018111ED
+:1008B0000EC00E94A10481E0809334012FEF83EDEC
+:1008C00090E3215080409040E1F700C0000080E4B8
+:1008D0000E94A7048093000181112EC00E94D104C0
+:1008E00080930001811128C00E94D10480930001EF
+:1008F000811122C08FE30E94D104809300018111F5
+:100900001BC00E94C90480E40E94A70480930001D8
+:10091000811112C08CE00E94D104809300018111EA
+:100920000BC00E94D10480930001811105C08FE3A8
+:100930000E94D104809300010E94C90480910001AB
+:1009400008951092B9008AE08093B800089594EA5F
+:100950009093BC009091BC0097FFFCCF9091B900A0
+:10096000987F983021F0903111F081E008958093C4
+:10097000BB0084E88093BC008091BC0087FFFCCF63
+:100980008091B900887F883111F0803471F780E060
+:10099000089584E98093BC008091BC0084FDFCCF65
+:1009A00008958093BB0084E88093BC008091BC00D4
+:1009B00087FFFCCF9091B900987F81E0983209F4CD
+:1009C00080E0089584E88093BC008091BC0087FF9C
+:1009D000FCCF8091BB00089580910001811115C06A
+:1009E00080E40E94A7048093000181110CC082E181
+:1009F0000E94D10480930001811105C08FEF0E94F5
+:100A0000D104809300010E94C90484B1807F84B91D
+:100A100085B1807F85B98AB1837F8AB98BB1837FA5
+:100A20008BB93E98469808950E9452048093000125
+:100A30000E94EC0480B38C7080BB81B3836F81BB58
+:100A4000A6E3B1E0E4E4F1E08EE08E0F11921D9296
+:100A50008E13FCCF85E394E0892B11F00C943504C0
+:100A60000895BF92CF92DF92EF92FF920F931F9360
+:100A7000CF93DF9380910001882379F08091350135
+:100A80008F5F80933501811108C00E9452048093CA
+:100A90000001811102C00E94DD0306E311E0C0E005
+:100AA000D0E0DD24D39482E0C82EEE24E394F12C30
+:100AB000C730D10500F580910001811164C080E448
+:100AC0000E94A70480930001811112C082E10E945C
+:100AD000D1048093000181110BC0C7010C2E01C00D
+:100AE000880F0A94EAF780950E94D1048093000150
+:100AF0000E94C90448C0CA30A1F028F4C83059F097
+:100B0000C93061F005C0CC3089F070F0CD3089F08B
+:100B1000209A289810C0219A29980DC0229A2A98C4
+:100B20000AC0239A2B9807C0529A01C0539A5B9827
+:100B300002C03E9A469890EA9A95F1F79FB179994A
+:100B400002C082E001C080E091709D25982B7C99C5
+:100B500002C084E001C080E0892B7D9902C038E0AA
+:100B600001C030E0832B7E9902C020E101C020E06B
+:100B7000822B9FB19095991F9927991F9295990F54
+:100B8000907E892B0FC08091000181114FC080E4BD
+:100B90000E94A704809300018823A9F1B12C0E9430
+:100BA000C9048B2DF8019081981719F08083C092A9
+:100BB00001010E94EC0421960F5F1F4FCE30D1053A
+:100BC00009F076CF809101018823B1F081508093A4
+:100BD0000101882339F08FE99FE00197F1F700C008
+:100BE00000000AC0A4E4B1E0E6E3F1E0CF01825FD7
+:100BF00091919D938E13FCCF84ED93E0892BC1F0EE
+:100C00000E94D40315C083E10E94D10480930001A7
+:100C10008111C4CF81E40E94A70480930001811157
+:100C2000BDCF0E94E204B82EB094B9CF80E0BACF15
+:100C300081E0DF91CF911F910F91FF90EF90DF90B6
+:100C4000CF90BF900895E82FF0E0EC5BFE4F8081DD
+:100C5000089508958B3B910578F4883A910540F505
+:100C6000853A9105D0F48430910508F0B1C0813007
+:100C7000910509F4ADC06BC0803E910508F467C0D2
+:100C8000883E910508F4A4C09C01205F3109203101
+:100C9000310508F05CC090650895853A910509F426
+:100CA00059C0863A910509F058C082E890E4089549
+:100CB000883A910509F454C0893A910509F453C062
+:100CC0008A3A910509F452C08B3A910509F451C052
+:100CD0008C3A910509F450C08D3A910509F44FC042
+:100CE000803B910509F44EC08E3A910509F44DC040
+:100CF0008F3A910509F44CC0813B910509F44BC032
+:100D0000823B910509F44AC0833B910509F449C02F
+:100D1000843B910509F448C0853B910509F447C01F
+:100D2000863B910509F446C0873B910509F445C00F
+:100D3000883B910509F444C0893B910509F443C0FF
+:100D40008A3B910509F442C080E094E4089580E074
+:100D500090E0089581E890E4089583E890E4089590
+:100D600082EE94E4089589EE94E408958AEE94E482
+:100D7000089585EB94E4089586EB94E4089587EB59
+:100D800094E408958CEC94E408958DEC94E4089533
+:100D900083E895E408958AE895E4089582E995E466
+:100DA000089584E995E4089581E296E4089583E244
+:100DB00096E4089584E296E4089585E296E4089521
+:100DC00086E296E4089587E296E408958AE296E43E
+:100DD0000895089596E0799FF001112494E5899F84
+:100DE000E00DF11D1124E60FF11DEE0FFF1FEF596D
+:100DF000FE4F859194910895880F991FFC01E5534A
+:100E0000F040859194910895880F991FFC01E55B4E
+:100E1000FE4F85919491089526E0729FF001112470
+:100E200044E5849FE00DF11D1124E60FF11DEE0F46
+:100E3000FF1FEF59FE4F859194919C013A95211522
+:100E40004FE1340708F41AC13F512115304120F415
+:100E50009F700E94040708959C0130532115304172
+:100E600018F49927906C0895811520E5920769F48C
+:100E70000E94BB144FEF84E39CE0415080409040BF
+:100E8000E1F700C000000C947A1B813020E5920746
+:100E900031F48091CC0181608093CC0108959C0154
+:100EA00030552115304108F051C0292F33272F70BC
+:100EB000332721303105D9F4AC014370552702C0E6
+:100EC000220F331F4A95E2F73C68AC0164E0440FFF
+:100ED000551F6A95E1F744275370242B352B73E097
+:100EE000880F991F7A95E1F7807699271DC02230E7
+:100EF000310529F4982F8827816F906A089523304F
+:100F00003105A9F4AC014370552721E030E002C05F
+:100F1000220F331F4A95E2F73C6843E0880F991F80
+:100F20004A95E1F7807E9770822B932B08952430A9
+:100F30003105E1F4AC014370552721E030E002C0F7
+:100F4000220F331F4A95E2F73A68E7CF9C013057EA
+:100F50002115304118F49F70906208959C0130581B
+:100F60002115304118F49F70906A0895803E9105D4
+:100F7000E0F4803C910558F58133910509F46FC088
+:100F800048F48932910509F463C08A32910509F465
+:100F90006DC072C089339105E9F082389105D1F0B6
+:100FA0008533910509F44DC067C0833E910581F1F9
+:100FB00038F4803E9105B9F0823E9105D9F05CC0CD
+:100FC000863E910561F1873E9105A1F155C00E94D1
+:100FD000FC0608952091DF0120FD02C021FF4CC0D6
+:100FE00080EE90E049C08091DF0180FFF9CF89E376
+:100FF00090E042C08091DF0182FF0EC08091DF014E
+:1010000084FF03C080E090E037C083EE90E034C0FE
+:101010008091DF0182FFF2CF82EE90E02DC08091BF
+:10102000DF0183FF0BC08091DF0184FDEBCF87EEF2
+:1010300090E022C08091DF0183FFF5CF86EE90E043
+:101040001BC08091DF0185FF07C089E290E014C0DA
+:101050008091DF0185FFF9CF85E390E00DC080919D
+:10106000DF0186FF07C08AE290E006C08091DF01C1
+:1010700086FFF9CF81E390E00E942A060895089543
+:10108000809162010895CF93DF9300D01F92CDB776
+:10109000DEB79C018091E501843019F593E09983D6
+:1010A0003B832A839093E9008FEF9091E800815071
+:1010B00095FD06C095ED9A95F1F700008111F5CFE9
+:1010C0008091E80085FF0DC040E050E063E070E0F3
+:1010D000CE0101960E94AD0A8091E8008E77809340
+:1010E000E8000F900F900F90DF91CF910895CF936C
+:1010F000DF9300D01F92CDB7DEB72091E5012430F9
+:1011000021F522E029839B838A8383E08093E90091
+:101110008FEF9091E800815095FD06C095ED9A956E
+:10112000F1F700008111F5CF8091E80085FF0DC037
+:1011300040E050E063E070E0CE0101960E94AD0A0D
+:101140008091E8008E778093E8000F900F900F90C9
+:10115000DF91CF9108952091E5012430F1F422E050
+:101160002093E9002FEF3091E800215035FD06C0B3
+:1011700035ED3A95F1F700002111F5CF2091E80007
+:1011800025FF0BC040E050E065E070E00E94AD0A32
+:101190008091E8008E778093E8000895CF93DF93E5
+:1011A000EC019091E501943009F046C080910C016A
+:1011B0008823D9F080910D018823B9F09093E9003C
+:1011C0008FEF9091E800815095FD06C095E19A95CA
+:1011D000F1F700008111F5CF8091E80085FF2CC068
+:1011E00040E050E060E170E017C081E08093E900EA
+:1011F0008FEF9091E800815095FD06C095ED9A958E
+:10120000F1F700008111F5CF8091E80085FF14C04F
+:1012100040E050E068E070E0CE010E94AD0A8091AD
+:10122000E8008E778093E80080E1FE01A2E5B1E05E
+:1012300001900D928A95E1F7DF91CF910895809109
+:10124000E401811109C00E94420C0E949F0C809110
+:10125000E20084608093E20008951092E401089512
+:1012600008950C94B1210E94101B0E94B7210E9486
+:10127000450F0C943F0842E061EC81E00E94BC0BFA
+:1012800042E061EC82E00E94BC0B42E061EC83E052
+:101290000E94BC0B42E161EC84E00C94BC0B809199
+:1012A000E701833009F455C030F4813071F08230A9
+:1012B00009F48EC008958A3009F47AC08B3009F49D
+:1012C00060C0893009F09CC020C08091E601813A5D
+:1012D00009F096C08091E800877F8093E8008091B4
+:1012E000EA019091EB01892B21F460E182E591E024
+:1012F00003C060E080E090E070E00E94F80A809116
+:10130000E8008B778093E80008958091E6018132B0
+:1013100009F076C08091EA019091EB01009719F0F5
+:10132000039709F06DC08091E800877F8093E80003
+:101330008091E80082FD05C08091E5018111F8CF20
+:101340005FC08091F100809362018091E8008B770B
+:1013500053C08091E601813A09F052C08091EA01C0
+:101360009091EB01892B09F04BC08091E800877FB9
+:101370008093E8008091E80080FFFCCF80910C0111
+:1013800036C08091E6018132D9F58091EA019091D1
+:10139000EB01892BA9F58091E800877F8093E80015
+:1013A0000E94F10B8091E80180930C010C94BB1416
+:1013B0008091E601813221F58091E800877F80935A
+:1013C000E8000E94F10B8091E90180936301089588
+:1013D0008091E601813AA1F48091E800877F8093B3
+:1013E000E8008091E80080FFFCCF8091630180934A
+:1013F000F1008091E8008E778093E8000C94F10B67
+:10140000089584B7877F84BF88E10FB6F8948093EE
+:101410006000109260000FBE90E080E80FB6F89474
+:1014200080936100909361000FBE0E94940F0E9410
+:10143000420C0E949F0C8091E20084608093E20045
+:1014400078940E94250F0E94960F82E091E00E94FE
+:10145000400F0E949F218091E501853069F40E9430
+:10146000D41A8091E3018823B1F30E94FC1A8823E7
+:1014700091F30E94970AEFCF0E949C0FECCF292F87
+:10148000332723303105C9F064F42130310581F070
+:101490002230310509F043C08DE690E02DED34E0B7
+:1014A00042C021323105F1F02232310541F137C01D
+:1014B00082E190E02AE435E036C099278130910539
+:1014C00041F08230910541F0892B49F5E9EDF4E0D6
+:1014D00005C0E1ECF4E002C0E9EAF4E0849190E0B8
+:1014E0009F0121C06430D8F4E62FF0E0EE0FFF1F1B
+:1014F000EE5DFE4F2081318189E090E014C06430C0
+:1015000070F470E0FB01EE0FFF1FE65EFE4F2081DE
+:101510003181FB01EA5EFE4F808190E004C080E0F3
+:1015200090E020E030E0FA0131832083089580E1EB
+:1015300089BD82E189BD09B400FEFDCF8091D8004C
+:101540008F7D8093D8008091E00082608093E000DE
+:101550008091E00081FDFCCF0895CF92DF92EF9261
+:10156000FF920F931F93CF93DF93EC018B016A01DE
+:101570000E94100C811133C0C114D10439F0F6015E
+:1015800080819181081B190BC80FD91FE12CF12C08
+:101590000115110519F18091E80085FD16C08091B3
+:1015A000E8008E778093E800C114D10449F0F60179
+:1015B00080819181E80EF91EF182E08285E00FC002
+:1015C0000E94100C882321F30AC089918093F100B6
+:1015D00001501109FFEFEF1AFF0ADACF80E0DF9127
+:1015E000CF911F910F91FF90EF90DF90CF900895D2
+:1015F0002091EC013091ED012617370748F0611575
+:10160000710539F42091E8002E772093E80001C09D
+:10161000B90140E061157105A9F12091E50122238E
+:1016200009F443C0253009F442C02091E80023FDAD
+:1016300040C02091E80022FD32C02091E80020FF48
+:10164000E9CF4091F3002091F20030E0342BFC010F
+:10165000CF016115710559F02830310540F48191B1
+:101660008093F100615071092F5F3F4FF1CF41E04E
+:101670002830310509F040E02091E8002E772093D2
+:10168000E800C8CF4111C9CF0AC08091E501882385
+:1016900061F0853061F08091E80083FD0AC080919F
+:1016A000E80082FFF2CF80E0089582E0089583E0B1
+:1016B000089581E008952091EC013091ED01261705
+:1016C000370748F06115710539F42091E8002E774D
+:1016D0002093E80001C0B901FC0120E0611571050B
+:1016E00091F18091E501882309F440C0853009F427
+:1016F0003FC08091E80083FD3DC08091E80082FDFD
+:101700002FC08091E80080FFE9CF2091F300809105
+:10171000F20090E0922B6115710559F08830910527
+:1017200040F424912093F1003196615071090196A3
+:10173000F2CF21E0089709F020E08091E8008E7751
+:101740008093E800CBCF2111CCCF0AC08091E50176
+:10175000882361F0853061F08091E80083FD0AC044
+:101760008091E80082FFF2CF80E0089582E0089542
+:1017700083E0089581E00895982F973058F590936D
+:10178000E900981739F07091EC002091ED0050912C
+:10179000F00003C0242F762F50E021FF19C03091B4
+:1017A000EB003E7F3093EB003091ED003D7F3093B6
+:1017B000ED003091EB0031603093EB007093EC0062
+:1017C0002093ED005093F0002091EE0027FF07C01A
+:1017D0009F5FD3CF8F708093E90081E0089580E010
+:1017E00008958091E60187FF11C08091E80082FD95
+:1017F00005C08091E5018111F8CF11C08091E8000A
+:101800008B770BC08091E501882349F08091E80037
+:1018100080FFF8CF8091E8008E778093E8000895EC
+:101820002091E4003091E50095E64091EC00842F92
+:10183000817040FF22C08091E80080FD1CC0809133
+:10184000E501882391F0853091F08091EB0085FDD2
+:1018500010C04091E4005091E5004217530729F36E
+:101860009A01915011F784E0089582E0089583E091
+:10187000089581E0089580E008954091E80042FFD6
+:10188000DECF08950E94B00C0E94B80CE0EEF0E0AC
+:10189000808181608083E8EDF0E080818F778083B4
+:1018A00019BCA7EDB0E08C918E7F8C9380818F7EE8
+:1018B00080831092E40108950F931F93CF93DF93D9
+:1018C0000E94B00C0E94B80CC8EDD0E088818F77E0
+:1018D000888388818068888388818F7D888319BC0C
+:1018E0001092E5011092E1011092E3011092E201E1
+:1018F00000EE10E0F80180818B7F80838881816019
+:10190000888342E060E080E00E94BC0BE1EEF0E002
+:1019100080818E7F8083E2EEF0E080818160808331
+:10192000808188608083F80180818E7F80838881B8
+:1019300080618883DF91CF911F910F910895E8ED29
+:10194000F0E080818F7E8083E7EDF0E08081816030
+:10195000808384E082BF81E08093E4010C945C0C7E
+:10196000E8EDF0E080818E7F80831092E2000895A0
+:101970001092DA001092E10008951F920F920FB6B4
+:101980000F9211242F933F934F935F936F937F9305
+:101990008F939F93AF93BF93EF93FF938091E10059
+:1019A00082FF0BC08091E20082FF07C08091E100BE
+:1019B0008B7F8093E1000E94240F8091DA0080FFEA
+:1019C0001FC08091D80080FF1BC08091DA008E7FFD
+:1019D0008093DA008091D90080FF0DC080E189BD3D
+:1019E00082E189BD09B400FEFDCF81E08093E5016D
+:1019F0000E941F0905C019BC1092E5010E942D0923
+:101A00008091E10080FF19C08091E20080FF15C045
+:101A10008091E2008E7F8093E2008091E2008061FD
+:101A20008093E2008091D80080628093D80019BC36
+:101A300085E08093E5010E9431098091E10084FFF7
+:101A400030C08091E20084FF2CC080E189BD82E13A
+:101A500089BD09B400FEFDCF8091D8008F7D8093B1
+:101A6000D8008091E1008F7E8093E1008091E200B8
+:101A70008F7E8093E2008091E20081608093E2009B
+:101A80008091E101882311F084E007C08091E30098
+:101A900087FD02C081E001C083E08093E5010E94E0
+:101AA00033098091E10083FF29C08091E20083FF28
+:101AB00025C08091E100877F8093E10082E08093E0
+:101AC000E5011092E1018091E1008E7F8093E100B9
+:101AD0008091E2008E7F8093E2008091E20080613D
+:101AE0008093E20042E060E080E00E94BC0B8091C5
+:101AF000F00088608093F0000E943009FF91EF9120
+:101B0000BF91AF919F918F917F916F915F914F9115
+:101B10003F912F910F900FBE0F901F9018951F921D
+:101B20000F920FB60F9211242F933F934F935F9311
+:101B30006F937F938F939F93AF93BF93CF93DF93D5
+:101B4000EF93FF93C091E900CF708091EC00D82F04
+:101B5000D17080FDD0E81092E9008091F000877F7D
+:101B60008093F00078940E94D30D1092E900809148
+:101B7000F00088608093F000CD2BCF70C093E90017
+:101B8000FF91EF91DF91CF91BF91AF919F918F9195
+:101B90007F916F915F914F913F912F910F900FBE69
+:101BA0000F901F9018951F93CF93DF93CDB7DEB79B
+:101BB000AA970FB6F894DEBF0FBECDBFE6EEF1E0F8
+:101BC00088E08E0F9091F10091938E13FBCF0E94CD
+:101BD0004F098091E80083FF1FC18091E601909139
+:101BE000E701492F50E04A30510508F015C1FA01CC
+:101BF000E15AFF4F0C943923803881F0823809F084
+:101C00000BC18091EA018F708093E9008091EB0015
+:101C100085FB882780F91092E90006C08091E201D7
+:101C20009091E301911182609091E800977F9093E9
+:101C3000E8008093F1001092F100C8C0282F2D7F9A
+:101C400009F0EAC0882319F0823061F0E5C0809184
+:101C5000E801813009F0E0C0933009F080E0809322
+:101C6000E3012BC08091E801811127C08091EA0136
+:101C70008F7009F4D1C08093E9002091EB0020FF20
+:101C80001CC0933021F48091EB00806214C09091CD
+:101C9000EB0090619093EB0021E030E0A90102C0DD
+:101CA000440F551F8A95E2F74093EA001092EA002C
+:101CB0008091EB0088608093EB001092E9008091A6
+:101CC000E800877F86C08111A7C01091E8011F77C7
+:101CD0008091E3008078812B8093E3008091E8007D
+:101CE000877F8093E8000E94F10B8091E80080FFDD
+:101CF000FCCF8091E30080688093E300111102C063
+:101D000082E001C083E08093E50186C08058823084
+:101D100008F082C08091E8019091E9018C3D53E088
+:101D2000950779F583E08A838AE289834FB7F8942F
+:101D3000DE01139620E03EE051E2E32FF0E0509305
+:101D40005700E49120FF03C0E295EF703F5FEF7012
+:101D50008E2F90E0EA3010F0C79601C0C0968D93A8
+:101D60009D932F5F243149F74FBF8091E800877F13
+:101D70008093E8006AE270E0CE0101960E94F80AC2
+:101D800014C0AE014F5F5F4F6091EA010E943F0AAD
+:101D9000BC01892B09F440C09091E800977F909393
+:101DA000E80089819A810E945B0B8091E8008B7723
+:101DB0008093E80031C0803879F58091E800877F12
+:101DC0008093E8008091E1018093F1008091E80028
+:101DD0008E778093E8000E94F10B1EC081111CC019
+:101DE0009091E8019230C0F48091E800877F809361
+:101DF000E8009093E1010E94F10B8091E1018111D3
+:101E000006C08091E30087FD02C081E001C084E04C
+:101E10008093E5010E943B098091E80083FF0AC09E
+:101E20008091E800877F8093E8008091EB008062DA
+:101E30008093EB00AA960FB6F894DEBF0FBECDBF1D
+:101E4000DF91CF911F9108950895CF938091E5017F
+:101E50008823A1F0C091E900CF709091EC00892F08
+:101E6000817090FD80E8C82B1092E9008091E80015
+:101E700083FD0E94D30DCF70C093E900CF910895E8
+:101E800090936901809368010895E0916801F09151
+:101E90006901309721F00190F081E02D099480E0F4
+:101EA0000895E0916801F0916901309721F0028076
+:101EB000F381E02D09940895E0916801F0916901A2
+:101EC000309721F00480F581E02D09940895209148
+:101ED0006601309167018217930771F09093670153
+:101EE00080936601E0916801F0916901309721F0DB
+:101EF0000680F781E02D09940895209164013091C6
+:101F000065018217930771F09093650180936401D6
+:101F1000E0916801F0916901309721F00084F1852A
+:101F2000E02D0994089508950C94930F0E94161BB8
+:101F30000E9414050C94DC1BCF92DF92EF92FF926B
+:101F40000F931F93CF93DF93CDB7DEB72B970FB6C9
+:101F5000F894DEBF0FBECDBF0E9431058BE6C82EC0
+:101F600081E0D82E00E010E0E02E802F0E942306B2
+:101F7000F60141916F01F42EF826B1F40F5F1F4F67
+:101F80000E30110589F78FEF89838A831B820E94A7
+:101F90001F1B8160782F9D838C8349815A816B81BF
+:101FA0008D810E943F1040C09091CC0191FF04C0F0
+:101FB0008B870E9429068B8520E030E04F2D50E072
+:101FC000922FBA01022E02C0759567950A94E2F726
+:101FD00060FF24C02E83EF8221E030E0690102C05F
+:101FE000CC0CDD1C9A95E2F790E08C219D21892B89
+:101FF00009F420E028870E941F1B8160782F9A87B0
+:1020000089874E815F8168858A850E943F10F8012B
+:10201000E559FE4F8081C826C08206C02F5F3F4F22
+:102020002630310569F6AACF0E94C31E10916A01BD
+:102030000E94450F1817A1F00E94450F80936A0176
+:102040002B960FB6F894DEBF0FBECDBFDF91CF91B8
+:102050001F910F91FF90EF90DF90CF900C943F086D
+:102060002B960FB6F894DEBF0FBECDBFDF91CF9198
+:102070001F910F91FF90EF90DF90CF900895CF9335
+:10208000DF93CDB7DEB72B970FB6F894DEBF0FBE48
+:10209000CDBF4F83588769877A878B87DE0111967A
+:1020A00086E0FD0111928A95E9F785E0FE013796F9
+:1020B00001900D928A95E1F749815A816B817C816B
+:1020C0008D819E810E9455172B960FB6F894DEBF26
+:1020D0000FBECDBFDF91CF910895CF93882309F430
+:1020E000C2C0C82F823859F40E94450F81FDBBC081
+:1020F00089E30E94F1190E94AE1A89E30CC083386B
+:1021000079F40E94450F80FDAEC083E50E94F1196D
+:102110000E94AE1A83E50E94331ACF910C94AE1A36
+:10212000843859F40E94450F82FD9DC087E40E94C7
+:10213000F1190E94AE1A87E4EECF8CEF8C0F813A32
+:1021400048F48C2F0E94042181118DC08C2F0E9495
+:10215000F119E3CF80E28C0F883048F4C77081E03A
+:1021600001C0880FCA95EAF70E94771AD6CF8BE58F
+:102170008C0F833078F4C53A29F0C63A31F083E801
+:1021800090E005C081E890E002C082E890E0CF9145
+:102190000C94670F88E58C0F833108F064C0C83A4F
+:1021A00039F1C93A41F1CA3A49F1CB3A51F1CC3A45
+:1021B00059F1CD3A61F1C03B69F1CE3A71F1CF3AB4
+:1021C00079F1C13B81F1C23B89F1C33B91F1C43B41
+:1021D00099F1C53BA1F1C63BA9F1C73BB1F1C83BA1
+:1021E000B9F1C93BC1F1CA3BC9F180E090E038C008
+:1021F00082EE90E035C089EE90E032C08AEE90E049
+:102200002FC085EB90E02CC086EB90E029C087EBD7
+:1022100090E026C08CEC90E023C08DEC90E020C0D4
+:1022200083E891E01DC08AE891E01AC082E991E05C
+:1022300017C084E991E014C081E292E011C083E20A
+:1022400092E00EC084E292E00BC085E292E008C00A
+:1022500086E292E005C087E292E002C08AE292E064
+:10226000CF910C947D0FCF910895882309F44BC032
+:10227000823859F40E94450F81FF45C089E30E94CE
+:10228000F1190E94AE1A89E30CC0833871F40E94E0
+:10229000450F80FF38C083E50E94F1190E94AE1AF5
+:1022A00083E50E94331A0C94AE1A843859F40E94C4
+:1022B000450F82FF28C087E40E94F1190E94AE1AE0
+:1022C00087E4EFCF9CEF980F913A58F390E2980F84
+:1022D000983050F4877091E001C0990F8A95EAF721
+:1022E000892F0E947D1ADFCF9BE5980F933020F451
+:1022F00080E090E00C94670F885A833120F480E0EE
+:1023000090E00C947D0F0895882321F00E94771AA5
+:102310000C94AE1A0895882321F00E947D1A0C9423
+:10232000AE1A0895BF92CF92DF92EF92FF920F9371
+:102330001F93CF93DF9300D000D000D0CDB7DEB78E
+:1023400025E0FC01DE01119601900D922A95E1F73E
+:10235000FC01408131810281258122952F706381AA
+:102360007481672B09F4E5C23F3F19F44F3F09F42C
+:10237000E0C27C0149833A8389819A812E830E943D
+:10238000B019182FB92E0E94AF190E947618EB2DA4
+:10239000E295EF70F0E0E759FF4F2E810C9439235E
+:1023A0008B2D807F9B2D9F70F92E882319F0F2943E
+:1023B00080EFF822002349F0FF2009F467C28F2D37
+:1023C0000E94871A0E94AE1A61C2812F0E943511A5
+:1023D000FF2009F4AEC28F2D0E948D1A26960FB6EB
+:1023E000F894DEBF0FBECDBFDF91CF911F910F914B
+:1023F000FF90EF90DF90CF90BF900C94AE1A3B2DE2
+:10240000307F8B2D8F70303211F08295807F1123B9
+:1024100019F0113021F12CC00023B9F0222309F466
+:10242000A0C1213009F09DC126960FB6F894DEBFF9
+:102430000FBECDBFDF91CF911F910F91FF90EF9015
+:10244000DF90CF90BF900C94971A222319F021307F
+:1024500009F46FC28E830E949A1A8E8196C100235E
+:1024600021F0223008F065C27CC1211162C28DC109
+:10247000002321F0222309F474C108C2222309F4A5
+:1024800084C119C22B2D26952695237030E0211585
+:10249000310521F021303105D1F04BC2002321F06C
+:1024A000812F9B2D937002C080E090E026960FB69E
+:1024B000F894DEBF0FBECDBFDF91CF911F910F917A
+:1024C000FF90EF90DF90CF90BF900C94670F0023A8
+:1024D00021F0812F9B2D937002C080E090E0269622
+:1024E0000FB6F894DEBF0FBECDBFDF91CF911F9125
+:1024F0000F91FF90EF90DF90CF90BF900C947D0FE5
+:10250000812F002319F00E94CB1D02C00E94331EB0
+:1025100026960FB6F894DEBF0FBECDBFDF91CF91E8
+:102520001F910F91FF90EF90DF90CF90BF900C9490
+:10253000B81E8B2D837009F07BC00111FAC1812F69
+:10254000829586958770880F880F912F9F70C92E6E
+:10255000D12CE12CF12C082E04C0CC0CDD1CEE1C7F
+:10256000FF1C0A94D2F714FF12C04FE050E060E065
+:1025700070E004C0440F551F661F771F8A95D2F77D
+:10258000CB01BA01609570958095909503C060E08D
+:1025900070E0CB012B2D269526952370422F50E01D
+:1025A00042305105D9F04330510569F16C297D293C
+:1025B0008E299F294130510551F126960FB6F89486
+:1025C000DEBF0FBECDBFDF91CF911F910F91FF9066
+:1025D000EF90DF90CF90BF900C949D186C297D29CF
+:1025E0008E299F2926960FB6F894DEBF0FBECDBF69
+:1025F000DF91CF911F910F91FF90EF90DF90CF90DF
+:10260000BF900C94B9180E949D18C701B601269678
+:102610000FB6F894DEBF0FBECDBFDF91CF911F91F3
+:102620000F91FF90EF90DF90CF90BF900C948118A6
+:10263000002319F08B2D817001C08695882309F441
+:1026400078C1812F829586958770880F880F912F8A
+:102650009F70C92ED12CE12CF12C082E04C0CC0C7B
+:10266000DD1CEE1CFF1C0A94D2F714FF12C04FE0D1
+:1026700050E060E070E004C0440F551F661F771FF4
+:102680008A95D2F7CB01BA016095709580959095A7
+:1026900003C060E070E0CB012B2D269526952370BA
+:1026A000422F50E042305105D9F04330510569F1D5
+:1026B0006C297D298E299F294130510551F126969B
+:1026C0000FB6F894DEBF0FBECDBFDF91CF911F9143
+:1026D0000F91FF90EF90DF90CF90BF900C947719FF
+:1026E0006C297D298E299F2926960FB6F894DEBF86
+:1026F0000FBECDBFDF91CF911F910F91FF90EF9053
+:10270000DF90CF90BF900C9493190E947719C70166
+:10271000B60126960FB6F894DEBF0FBECDBFDF918F
+:10272000CF911F910F91FF90EF90DF90CF90BF90CE
+:102730000C945B19103FD1F118F4103E50F4A1C075
+:10274000123F09F463C008F44CC0133F09F473C08E
+:1027500098C01F708B2D8F710023A1F00E94F41878
+:10276000812F26960FB6F894DEBF0FBECDBFDF9146
+:10277000CF911F910F91FF90EF90DF90CF90BF907E
+:102780000C9484110E941519812F26960FB6F89487
+:10279000DEBF0FBECDBFDF91CF911F910F91FF9094
+:1027A000EF90DF90CF90BF900C948B110023A9F095
+:1027B0002111BFC08B2D8F7126960FB6F894DEBF06
+:1027C0000FBECDBFDF91CF911F910F91FF90EF9082
+:1027D000DF90CF90BF900C943A19223008F0A9C036
+:1027E000E9CF0023A9F08B2D8F7126960FB6F894B0
+:1027F000DEBF0FBECDBFDF91CF911F910F91FF9034
+:10280000EF90DF90CF90BF900C94F418002359F311
+:102810008B2D8F7126960FB6F894DEBF0FBECDBFFD
+:10282000DF91CF911F910F91FF90EF90DF90CF90AC
+:10283000BF900C941519002399F08B2D8F7126965B
+:102840000FB6F894DEBF0FBECDBFDF91CF911F91C1
+:102850000F91FF90EF90DF90CF90BF900C94DF1816
+:1028600026960FB6F894DEBF0FBECDBFDF91CF9195
+:102870001F910F91FF90EF90DF90CF90BF900C943D
+:10288000D5180023A9F0222309F4ADCF812F269675
+:102890000FB6F894DEBF0FBECDBFDF91CF911F9171
+:1028A0000F91FF90EF90DF90CF90BF900C946D1040
+:1028B000222309F4ADCF812F26960FB6F894DEBF00
+:1028C0000FBECDBFDF91CF911F910F91FF90EF9081
+:1028D000DF90CF90BF900C9435114B2D4F70612F2E
+:1028E000C7010E94920326960FB6F894DEBF0FBE72
+:1028F000CDBFDF91CF911F910F91FF90EF90DF90AF
+:10290000CF90BF900C94F9174B2D4F70612FC701DA
+:1029100026960FB6F894DEBF0FBECDBFDF91CF91E4
+:102920001F910F91FF90EF90DF90CF90BF900C948C
+:10293000E90626960FB6F894DEBF0FBECDBFDF9135
+:10294000CF911F910F91FF90EF90DF90CF90BF90AC
+:1029500008950E94941A0E94691A0E94AE1A0E9459
+:10296000691F0E94B81E80E090E00E94670F80E01F
+:1029700090E00C947D0F0E94841A0C94A9140E947C
+:10298000B019292F22952F7030E02C3031054CF4EE
+:102990002A3031056CF4225031092230310588F497
+:1029A00007C02C30310549F02F30310531F009C016
+:1029B000803E48F0803F29F406C093FB882780F9C9
+:1029C000089580E0089581E00895CF93DF9300D0CB
+:1029D00000D01F92CDB7DEB70F900F900F900F90E1
+:1029E0000F90DF91CF910895CF93DF9300D000D067
+:1029F00000D0CDB7DEB726960FB6F894DEBF0FBE77
+:102A0000CDBFDF91CF9108951F93CF93DF93C091F6
+:102A1000790116E080917A01C81799F0D0E01C9FE7
+:102A2000F0011D9FF00D1124E558FE4F40815181AA
+:102A300062817381848195810E94F4142196C7700C
+:102A4000E9CFDF91CF911F9108954091AB01509153
+:102A5000AC016091AD017091AE018091AF01909198
+:102A6000B0010C94F4148091B00182958F7009F03C
+:102A700054C08091AD01882309F44FC08091790141
+:102A8000A0917A016091AB017091AC014091AE01CF
+:102A90005091AF01B6E08A1709F43FC090E04115AC
+:102AA0005105C1F17F3F11F46F3FA1F1B89FF001D3
+:102AB000B99FF00D1124E558FE4F218172132AC0F1
+:102AC0002081621327C02281211124C023813481F7
+:102AD0002417350710F421503109241B350B283CED
+:102AE0003105C0F42091B0012F7020612093B00116
+:102AF00026E0289FF001299FF00D1124E058FE4F99
+:102B000080818F70806180838BEA91E00E949211B6
+:102B10000C94041501968770BECF0895CF92DF9272
+:102B2000EF92FF920F931F93CF93DF93CDB7DEB752
+:102B300062970FB6F894DEBF0FBECDBF8C0185E063
+:102B4000F801DE011D9601900D928A95E1F7D801FA
+:102B50004C9111965C91119712966C911297139665
+:102B6000CD90DC9014973091AB017091AC018091C5
+:102B7000AE019091AF01009709F46BC17F3F19F44A
+:102B80003F3F09F466C1E090AD01EE2009F4C0C0FA
+:102B90002091B001C816D90628F0F601E81BF90B00
+:102BA000CF0104C0809590958C0D9D1DFF24F3945A
+:102BB000883C910578F0F12C207F09F0C6C07C2D6F
+:102BC000D98AC88A89890E94E5148BEA91E00E941B
+:102BD0009211B1C0822F807F09F046C0751314C0D6
+:102BE000341312C0611110C02F7020612093B00106
+:102BF0000E9425158BEA91E00E9492118091B0010C
+:102C0000D80115968C932EC0CD2819F15F3F11F491
+:102C10004F3FF9F0F62E61111CC08091790120918F
+:102C20007A0136E0821709F45AC090E0389FF0012B
+:102C3000399FF00D1124E558FE4F7181571306C0DE
+:102C40007081471303C07281711103C001968770B0
+:102C5000E9CFF62E662309F418C18091B001816096
+:102C60008093B001F12C11C1751308C0341306C054
+:102C7000611104C08091B001D801C3C04D875E8747
+:102C80008D859E856A8B0E94BF146A898823E1F135
+:102C90006623D1F12091B001822F82958F7090E050
+:102CA000029774F08091AB019091AC0198878F836B
+:102CB0001986DB86CA862C87CE0107960E94921160
+:102CC00086E0F801ABEAB1E001900D928A95E1F758
+:102CD0000E9433150E942515FF24F394D6C04D871A
+:102CE0005E878D859E850E94B019292F22952F70B1
+:102CF00030E0223031050CF0BCC09F7009F0B6C046
+:102D0000805E883008F4C1C0C8010E949211E4CFEF
+:102D1000C816D90608F453C0F601E81BF90BCF0119
+:102D2000883C910508F450C0F12C7C2DD98AC88AC2
+:102D300089890E94E514EBEAF1E086E0DF011D924B
+:102D40008A95E9F70E942515A0C0751314C03413A5
+:102D500012C0611110C08091B001F8018583C801D3
+:102D60000E94921186E0EBEAF1E0DF011D928A9564
+:102D7000E9F7FE2C8AC04D875E878D859E856A8B1C
+:102D80000E94BF146A89882309F4BECF662309F420
+:102D9000BBCF2091B001822F82958F7090E0029777
+:102DA0000CF48ECF8091AB019091AC019A83898312
+:102DB0001B82DD82CC822E83CE0101967FCF80954F
+:102DC00090958C0D9D1DACCFF62E662309F49CCFFB
+:102DD00075132EC034132CC02091B00120FD1FC0EC
+:102DE000822F82958F70D9F0D80115962C93159764
+:102DF0008F3049F08F5F982F9295907F822F8F7040
+:102E0000892B15968C93C8010E94921186E0F801D7
+:102E1000ABEAB1E001900D928A95E1F793CF86E09D
+:102E2000F801ABEAB1E001900D928A95E1F72DC06F
+:102E30004D875E878D859E850E94BF14811140CF8E
+:102E40008091B00181608093B001C8010E9492110D
+:102E50001CC0662309F458CF4D875E878D859E85FB
+:102E60000E94BF14882309F44FCF2ACF811148CF85
+:102E70000CC0243031050CF047CF9F7009F440CFCF
+:102E8000F8019581907F09F03BCF8F2D62960FB6A8
+:102E9000F894DEBF0FBECDBFDF91CF911F910F9190
+:102EA000FF90EF90DF90CF9008951F93CF93DF9323
+:102EB000CDB7DEB72C970FB6F894DEBF0FBECDBFEF
+:102EC0004F83588769877A878B879C87CE010796BF
+:102ED0000E948E15882369F08F8198852A853B850D
+:102EE000232BF1F19F3F09F063C08F3F09F060C0D1
+:102EF00037C086E0FE013796DE01119601900D92F3
+:102F00008A95E1F76F817885EA85FB85309741F1F5
+:102F10007F3F11F46F3F21F120917A0130E0C90128
+:102F20000196877099274091790150E084179507A1
+:102F300009F447C069837A83FD83EC8396E0929F0E
+:102F4000D001939FB00D1124A558BE4FFE013196BC
+:102F500001900D929A95E1F780937A010E940415F1
+:102F600016E08091790190917A018917C1F1189F3B
+:102F7000C001112485589E4F0E948E15882379F137
+:102F8000E09179011E9FF0011124E558FE4F408128
+:102F9000518162817381848195810E94F4148091B2
+:102FA000790190E001968770992780937901D9CFB4
+:102FB0004F81588569857A858B859C850E94F4149C
+:102FC000CFCF0E94BB1410927A0110927901EBEAE4
+:102FD000F1E086E0DF011D928A95E9F7C1CF2C96DA
+:102FE0000FB6F894DEBF0FBECDBFDF91CF911F911A
+:102FF0000895EF92FF920F931F93CF93DF938C016D
+:10300000892B09F46CC0F12CEE24E394E80121969D
+:10301000F8018491843740F4843008F051C0813045
+:1030200081F0823019F15BC0853709F444C0A8F102
+:103030009CE7980F903708F052C08F770E943511A7
+:1030400041C00E5F1F4FFE01C49180E28C0F88309B
+:1030500048F4C7708E2D01C0880FCA95EAF70E9408
+:10306000871A14C08C2F0E946D102DC00E5F1F4F49
+:10307000FE01C49180E28C0F883058F4C7708E2D09
+:1030800001C0880FCA95EAF70E948D1A0E94AE1AF5
+:103090001AC08C2F0E94351116C00E5F1F4FFE0103
+:1030A000C491CC2381F08FE99FE00197F1F700C034
+:1030B0000000C150F6CF0E5F1F4FFE01F49003C019
+:1030C0000E946D108E018F2D882309F49FCFEFE9A8
+:1030D000FFE03197F1F700C000008150F5CFDF919C
+:1030E000CF911F910F91FF90EF90089508956093F5
+:1030F000B5017093B6018093B7019093B8010C9419
+:10310000A9140F931F930091B5011091B60120915E
+:10311000B7013091B801DC01CB01802B912BA22BA0
+:10312000B32B8093B5019093B601A093B701B093F0
+:10313000B8011F910F910C94A9140F931F93009144
+:10314000B5011091B6012091B7013091B801DC01B1
+:10315000CB0180239123A223B3238093B5019093C5
+:10316000B601A093B701B093B8011F910F910C94D1
+:10317000A9140F931F930091B5011091B6012091EE
+:10318000B7013091B801DC01CB0180279127A2273C
+:10319000B3278093B5019093B601A093B701B09384
+:1031A000B8011F910F910C94A9141092B1011092C3
+:1031B000B2011092B3011092B4010C94A91441E031
+:1031C00050E060E070E004C0440F551F661F771F99
+:1031D0008A95D2F74093B1015093B2016093B30145
+:1031E0007093B4010C94A91441E050E060E070E0E9
+:1031F00004C0440F551F661F771F8A95D2F7809130
+:10320000B1019091B201A091B301B091B401482BEA
+:10321000592B6A2B7B2B4093B1015093B2016093E1
+:10322000B3017093B4010C94A91441E050E060E044
+:1032300070E004C0440F551F661F771F8A95D2F7B0
+:1032400040955095609570958091B1019091B20133
+:10325000A091B301B091B401482359236A237B2381
+:103260004093B1015093B2016093B3017093B401E4
+:103270000C94A91441E050E060E070E004C0440FF9
+:10328000551F661F771F8A95D2F78091B1019091E3
+:10329000B201A091B301B091B401482759276A2720
+:1032A0007B274093B1015093B2016093B3017093B7
+:1032B000B4010C94A9140F931F930091B1011091C4
+:1032C000B2012091B3013091B401DC01CB01802B1C
+:1032D000912BA22BB32B8093B1019093B201A093B9
+:1032E000B301B093B4011F910F910C94A9140F93E3
+:1032F0001F930091B1011091B2012091B30130915F
+:10330000B401DC01CB0180239123A223B32380935A
+:10331000B1019093B201A093B301B093B4011F9196
+:103320000F910C94A9140F931F930091B101109168
+:10333000B2012091B3013091B401DC01CB018027AF
+:103340009127A227B3278093B1019093B201A09354
+:10335000B301B093B4011F910F910C94A914089577
+:10336000CF92DF92EF92FF920F931F93CF93DF9351
+:103370008C01C090B501D090B601E090B701F090FB
+:10338000B8014091B1015091B2016091B3017091C7
+:10339000B401C42AD52AE62AF72ACFE1D0E0D70122
+:1033A000C6010C2E04C0B695A795979587950A94EB
+:1033B000D2F780FF07C0B8018C2F0E940C07813024
+:1033C000910531F4219758F7B80180E00E940C076D
+:1033D000DF91CF911F910F91FF90EF90DF90CF90F1
+:1033E000089590910C01992321F090910D01911174
+:1033F00009C020910E0130910F01F90132969FEF23
+:1034000040E01FC0982F9695969596959F3050F561
+:10341000E0910E01F0910F01E90FF11D877021E09D
+:1034200030E0A90102C0440F551F8A95E2F7CA0196
+:103430009181892B818308959F3F39F04F5F4E30F2
+:1034400041F051915813F8CF0DC05111F7CF942F7F
+:10345000F5CF9F3F39F0F901E90FF11D97FDFA957E
+:1034600082830895089590910C01992321F0909101
+:103470000D01911109C020910E0130910F01F90148
+:103480003296205F3F4F1FC0982F96959695969540
+:103490009F30F0F4E0910E01F0910F01E90FF11D62
+:1034A000877021E030E0A90102C0440F551F8A95C2
+:1034B000E2F7CA018095918189238183089531962D
+:1034C000E217F30729F090819813F9CF1082F7CF14
+:1034D000089581E090E0E0910E01F0910F01E80F76
+:1034E000F91F1082019680319105A9F708959091F6
+:1034F000CB01892B8093CB01089580959091CB01CE
+:1035000089238093CB0108951092CB010895909167
+:10351000CA01892B8093CA01089580959091CA01B0
+:1035200089238093CA0108951092CA010895809357
+:10353000B90108951092B901089580910E019091FA
+:103540000F01FC0131969C01205F3F4F80E091917B
+:1035500091118F5FE217F307D1F70895E0910E0103
+:10356000F0910F018091CB018083E0910E01F091E9
+:103570000F0190818091CA01892B80838091B901CC
+:10358000882361F0E0910E01F0910F019081892B69
+:1035900080830E949D1A81111092B90180910E01C1
+:1035A00090910F010C94510F8091E501843009F145
+:1035B0001092CD0120E488E190E00FB6F894A89530
+:1035C000809360000FBE2093600083B7817F84608A
+:1035D00083BF83B7816083BF7894889583B78E7FDC
+:1035E00083BF88E10FB6F89480936000109260006A
+:1035F0000FBE089508950895CF930E94FA1A0E946D
+:1036000031050E94FB1AC0E08C2F0E942306811115
+:1036100004C0CF5FCE30C1F701C081E0CF910895E3
+:103620000E94BB140E94450F0C943F0882E084BDA9
+:1036300093E095BD9AEF97BD80936E0008952FB7E4
+:10364000F8948091CE019091CF01A091D001B091DA
+:10365000D1012FBF0895CF92DF92EF92FF920F9387
+:103660001F932FB7F8944091CE015091CF016091F4
+:10367000D0017091D1012FBF6A017B01EE24FF249C
+:103680008C0120E030E0C016D106E206F30610F40B
+:10369000415051099A01281B390BC9011F910F9103
+:1036A000FF90EF90DF90CF9008951F920F920FB68A
+:1036B0000F9211248F939F93AF93BF938091CE016C
+:1036C0009091CF01A091D001B091D1010196A11D9F
+:1036D000B11D8093CE019093CF01A093D001B09300
+:1036E000D101BF91AF919F918F910F900FBE0F901D
+:1036F0001F9018950E94420CF8942FEF87EA91E6EC
+:10370000215080409040E1F700C0000087E090EB3E
+:10371000DC018093EE019093EF01A093F001B09350
+:10372000F1019CE088E10FB6F894A89580936000C1
+:103730000FBE90936000FFCFEF92FF920F931F9305
+:10374000CF93DF93D82FC0E08C2F0E94230600E098
+:1037500010E0E82EF12CC701002E02C09595879548
+:103760000A94E2F780FD06C00F5F1F4F0630110577
+:1037700091F709C0602F7C2F80E00E94EA06D813E1
+:10378000F3CF81E004C0CF5FCE30F1F680E0DF916F
+:10379000CF911F910F91FF90EF900895CF93C82F75
+:1037A0008CE20E949C1B882321F08C2FCF910C94DB
+:1037B0009C1B80E0CF910895CF930E94231D81111F
+:1037C00002C00E94091DC5E6C15049F00E943105A2
+:1037D0008FE39CE90197F1F700C00000F5CF89E283
+:1037E0000E94CE1B811113C18AE20E94CE1B81115F
+:1037F0000E94091D85E00E94CE1B81110E947A1B48
+:103800000E942E1D8093CC0187E00E94CE1B88234E
+:10381000A9F18BE10E94CE1B882351F08091CC014D
+:1038200081FB222720F991E0922790FB81F90EC0BD
+:103830008EE00E94CE1B882361F08091CC0182FB38
+:10384000222720F991E0922790FB82F98093CC0106
+:1038500015C080E10E94CE1B9091CC01882341F0DD
+:1038600093FB222720F981E0822780FB93F904C093
+:10387000892F809580FB90F99093CC018091CC01A9
+:103880000E94321D0E94401D8093DF0180EE0E9445
+:10389000CE1B882341F08091DF01982F909590FBFB
+:1038A00080F98093DF0189E30E94CE1B882359F0C1
+:1038B0008091DF0181FB222720F991E0922790FB84
+:1038C00081F98093DF0182EE0E94CE1B882359F09C
+:1038D0008091DF0182FB222720F991E0922790FB63
+:1038E00082F98093DF0186EE0E94CE1B882359F077
+:1038F0008091DF0183FB222720F991E0922790FB42
+:1039000083F98093DF0183EE0E94CE1B882359F058
+:103910008091DF0184FB222720F991E0922790FB20
+:1039200084F98093DF0185E30E94CE1B882359F040
+:103930008091DF0185FB222720F991E0922790FBFF
+:1039400085F98093DF0181E30E94CE1B882359F023
+:103950008091DF0186FB222720F991E0922790FBDE
+:1039600086F98093DF0181E10E94CE1B882359F004
+:103970008091DF0187FB222720F991E0922790FBBD
+:1039800087F98093DF018091DF010E94441D8091BF
+:10399000DF0187FB882780F980930D0187E20E9471
+:1039A000CE1BC82F8EE10E94CE1B8111C2608FE119
+:1039B0000E94CE1B8111C46080E20E94CE1B811147
+:1039C000C86081E20E94CE1B8111C06182E20E9428
+:1039D000CE1B8111C06283E20E94CE1B8111C064A4
+:1039E00084E20E94CE1B882311F0C06802C0CC2361
+:1039F00029F08C2F0E943B1D6C2F03C00E94371DA5
+:103A0000682F70E080E090E0CF910C947718CF9110
+:103A100008956DEE7EEF80E090E00E946F2360E0FD
+:103A200082E090E00E94612360E083E090E00E94E9
+:103A3000612360E084E090E00E94612360E085E023
+:103A400090E00C94612380E090E00E945B2321E0F1
+:103A50008D3E9E4F09F020E0822F089582E090E095
+:103A60000C945323682F82E090E00C94612383E050
+:103A700090E00C945323682F83E090E00C94612332
+:103A800084E090E00C945323682F84E090E00C9441
+:103A900061238091D40180FF0BC06091130185E008
+:103AA000689FB001112475956795759567952BC032
+:103AB00081FF09C06091130185E0689FB001112466
+:103AC0007595679520C082FF07C06091130185E05E
+:103AD000689FB001112417C09091D5019923D1F0AE
+:103AE00060911201961788F72091130185E0289FB5
+:103AF00090011124929FA001939F500D112470E01A
+:103B0000CA010E9425236038710540F461157105D2
+:103B100039F002C065E070E0862F08958FE70895C0
+:103B200081E008958091D40180FF08C06091110167
+:103B300070E0759567957595679521C081FF06C002
+:103B40006091110170E07595679519C082FF04C0FE
+:103B50006091110170E010C09091D5019923C1F0DE
+:103B6000609110019617A0F780911101899FC00103
+:103B7000112470E00E9425236038710528F4611536
+:103B8000710521F0862F08958FE7089581E008954B
+:103B900061E070E0F4CF803F21F40E94491D8195DF
+:103BA00004C0813F29F40E94491D8093D8010895E3
+:103BB000823F21F40E94491D819504C0833F29F46E
+:103BC0000E94491D8093D7010895893F19F40E94EE
+:103BD000921D05C08A3F31F40E94921D8195809309
+:103BE000D90108958B3F21F40E94921D819504C054
+:103BF0008C3F29F40E94921D8093DA010895843F3E
+:103C000021F48091D601816017C0853F21F4809115
+:103C1000D601826011C0863F21F48091D601846074
+:103C20000BC0873F21F48091D601886005C0883F92
+:103C300031F48091D60180618093D60108958D3F43
+:103C400021F48091D40181600BC08E3F21F48091DA
+:103C5000D401826005C08F3F29F48091D401846033
+:103C60008093D4010895803F39F48091D80187FF73
+:103C70006CC01092D80169C0813F29F48091D801AD
+:103C80001816BCF362C09091D701823F29F497FFC8
+:103C90005CC01092D70159C0833F19F41916CCF3B8
+:103CA00054C0893F41F48091D90118160CF04DC0E1
+:103CB0001092D9014AC08A3F29F48091D90187FF27
+:103CC00044C0F6CF8B3F39F48091DA0187FF3DC0C5
+:103CD0001092DA013AC08C3F29F48091DA0118166B
+:103CE000BCF333C0843F21F48091D6018E7F17C08E
+:103CF000853F21F48091D6018D7F11C0863F21F44C
+:103D00008091D6018B7F0BC0873F21F48091D60133
+:103D1000877F05C0883F31F48091D6018F7E8093E4
+:103D2000D60113C08D3F21F48091D4018E7F0BC04A
+:103D30008E3F21F48091D4018D7F05C08F3F29F4FF
+:103D40008091D4018B7F8093D4018091D701811120
+:103D50000EC08091D80181110AC08091D9018111D2
+:103D600006C08091DA01811102C01092D501089538
+:103D700086ED91E00E945C0F0E941F1B9093D3017F
+:103D80008093D20108951F93CF93DF938091D20146
+:103D90009091D3010E942B1BAC019091D5019923E6
+:103DA00021F02091140130E006C0209115018AE035
+:103DB000289F900111244217530708F486C0809170
+:103DC000D701C091D801D091D9011091DA018111A8
+:103DD00007C0C11176C0D11174C0111172C075C075
+:103DE0009F3F19F09F5F9093D501181624F40E940D
+:103DF000491D8093D7018091D70187FF05C00E949C
+:103E0000491D81958093D7011C1624F40E94491DF9
+:103E10008093D8018091D80187FF05C00E94491D79
+:103E200081958093D8016091D701662339F1C091C3
+:103E3000D801CC2319F1772767FD7095872F972F2D
+:103E40000E94362223E333E343E35FE30E949A2296
+:103E50000E9403226093D7016C2F772767FD70952E
+:103E6000872F972F0E94362223E333E343E35FE358
+:103E70000E949A220E9403226093D8011D1624F406
+:103E80000E94921D8093D9018091D90187FF05C0BE
+:103E90000E94921D81958093D901111624F40E94ED
+:103EA000921D8093DA018091DA0187FF05C00E949C
+:103EB000921D81958093DA01DF91CF911F910C942F
+:103EC000B81E9F3F09F08ECF96CFDF91CF911F9103
+:103ED0000895E6EDF1E085E0DF011D928A95E9F7AE
+:103EE0001092D5011092D4010895833081F128F405
+:103EF000813059F08230D1F00895853009F449C0FD
+:103F0000B8F1863009F456C0089580911501262F26
+:103F100030E0280F311D2F3F310524F4680F6093E6
+:103F2000150108958FEF8093150108958091140174
+:103F3000262F30E0280F311D2F3F310524F4680F64
+:103F40006093140108958FEF809314010895809178
+:103F50001301262F30E0280F311D2F3F310524F4A7
+:103F6000680F6093130108958FEF809313010895F4
+:103F700080911201262F30E0280F311D2F3F31058F
+:103F800024F4680F6093120108958FEF809312015B
+:103F9000089580911101262F30E0280F311D2F3F09
+:103FA000310524F4680F6093110108958FEF809319
+:103FB0001101089580911001262F30E0280F311D46
+:103FC0002F3F310524F4680F6093100108958FEF9F
+:103FD000809310010895833011F128F4813049F065
+:103FE000823091F00895853081F120F18630C1F161
+:103FF000089580911501681720F4861B80931501A0
+:10400000089510921501089580911401681720F405
+:10401000861B8093140108951092140108958091D5
+:104020001301681720F4861B8093130108951092E2
+:104030001301089580911201681720F4861B809364
+:1040400012010895109212010895809111016817CC
+:1040500020F4861B80931101089510921101089598
+:1040600080911001681720F4861B80931001089539
+:104070001092100108950F931F938D3109F46BC0B6
+:1040800008F03FC08E3009F47DC0C0F4873009F4D9
+:104090006EC068F4863009F0AFC08091CC01817F9A
+:1040A0008E7F8093CC0181E08093DC01A6C08830B4
+:1040B00009F458C08B3009F49BC09EC0863109F4C6
+:1040C00097C078F4803109F470C0813109F094C050
+:1040D0000E94BB1490910D0181E0892780930D010E
+:1040E00087C0893109F484C08B3109F085C0809183
+:1040F000CC0181FB222720F991E0922790FB81F9E6
+:104100004AC0853309F45BC048F4873209F457C0CC
+:1041100008F45AC0893209F452C06EC0833438F4AE
+:104120008A3308F067C0883309F462C065C08334FD
+:1041300009F445C0883409F05FC00E94BB140FEF3A
+:1041400013ED20E3015010402040E1F700C00000D3
+:104150000E947A1B4DC00E94BD210E94450F0E9403
+:104160003F0846C00E942E1D0E94401D41C09091F4
+:10417000CC01892F817090FF12C0917F9E7F909318
+:10418000CC013BC08091CC0182FB222720F991E039
+:10419000922790FB82F98093CC01992349F1809179
+:1041A000CC0181608093CC0123C08091CC0183FB42
+:1041B000222720F991E0922790FB83F9ECCF61E070
+:1041C00070E080E090E010C08D5141E050E060E090
+:1041D00070E08A019B0104C0000F111F221F331FD2
+:1041E0008A95D2F7C901B8010E9477180E94BB14C2
+:1041F00081E003C08953E9CF80E01F910F910895BA
+:1042000080E0089580E00895CF93C82F8091DC016D
+:10421000813079F018F08230E9F187C0E0910E0129
+:10422000F0910F018081813169F0823209F07FC005
+:1042300009C0E0910E01F0910F018081813111F0F0
+:10424000823261F48C2F0E940021811104C08C2FD6
+:104250000E943B201DC081E090E01AC08C2F0E947C
+:104260000221811114C0C43179F048F4CB3079F0C7
+:10427000C03109F060C082E08093DC0108C0C9321F
+:1042800019F0C83321F057C01092DC0154C081E00E
+:10429000817053C0C93289F118F5C43171F1A8F4A5
+:1042A000C73009F046C08AE08093150194E19093ED
+:1042B000140193E0909313018093120188E080939E
+:1042C000110188E28093100134C0CE51C63088F5C8
+:1042D000EC2FF0E0E65DFE4F80818093DB0129C08A
+:1042E000CE34E9F020F4CB3421F56AE013C0C135B7
+:1042F00079F0C235F1F461E00DC08091DB018823D3
+:1043000019F01092DB0115C081E08093DC0115C02B
+:1043100061E006C08091DB010E94751F0AC06AE05F
+:104320008091DB010E94EB1F04C01092DC0180E051
+:1043300004C081E002C080E0ABCFCF910895E1E8F6
+:10434000F0E08081886080838081816080838FB786
+:10435000F89493E09093890090ED909388008FBF3C
+:104360000895EFE6F0E08081826080830895EFE6B3
+:10437000F0E080818D7F80830895EFE6F0E090810A
+:1043800082E08927808308951F920F920FB60F92C3
+:1043900011242F933F934F935F936F937F938F934A
+:1043A0009F93AF93BF93EF93FF938091DD01909123
+:1043B000DE0101969093DE018093DD01811103C03F
+:1043C00082E00E943F08E091DE01E695E695F0E08C
+:1043D000E95AF94FE4918091DD018E1303C080E02A
+:1043E0000E943F08FF91EF91BF91AF919F918F91F4
+:1043F0007F916F915F914F913F912F910F900FBEE1
+:104400000F901F90189504D06894B1118DC0089535
+:1044100070D088F09F5790F0B92F9927B751A0F02E
+:10442000D1F0660F771F881F991F1AF0BA95C9F748
+:1044300012C0B13081F077D0B1E0089574C0672F19
+:10444000782F8827B85F39F0B93FCCF386957795F8
+:104450006795B395D9F73EF49095809570956195E1
+:104460007F4F8F4F9F4F0895E89409C097FB3EF40C
+:1044700090958095709561957F4F8F4F9F4F9923B1
+:10448000A9F0F92F96E9BB279395F695879577952F
+:104490006795B795F111F8CFFAF4BB0F11F460FFEF
+:1044A0001BC06F5F7F4F8F4F9F4F16C0882311F047
+:1044B00096E911C0772321F09EE8872F762F05C05B
+:1044C000662371F096E8862F70E060E02AF09A95F6
+:1044D000660F771F881FDAF7880F9695879597F9EB
+:1044E000089557FD9058440F551F59F05F3F71F0E4
+:1044F0004795880F97FB991F61F09F3F79F087954B
+:104500000895121613061406551FF2CF4695F1DFD3
+:1045100008C0161617061806991FF1CF8695710563
+:10452000610508940895E894BB2766277727CB0197
+:1045300097F908950BD078C069D028F06ED018F0A4
+:10454000952309F05AC05FC01124EECFCADFA0F353
+:10455000959FD1F3950F50E0551F629FF001729F18
+:10456000BB27F00DB11D639FAA27F00DB11DAA1F37
+:10457000649F6627B00DA11D661F829F2227B00D84
+:10458000A11D621F739FB00DA11D621F839FA00D0F
+:10459000611D221F749F3327A00D611D231F849F5F
+:1045A000600D211D822F762F6A2F11249F575040B6
+:1045B0008AF0E1F088234AF0EE0FFF1FBB1F661F51
+:1045C000771F881F91505040A9F79E3F510570F00A
+:1045D00014C0AACF5F3FECF3983EDCF38695779545
+:1045E0006795B795F795E7959F5FC1F7FE2B880F05
+:1045F000911D9695879597F9089597F99F6780E89B
+:1046000070E060E008959FEF80EC089500240A9424
+:104610001616170618060906089500240A9412169D
+:104620001306140605060895092E0394000C11F4D0
+:10463000882352F0BB0F40F4BF2B11F460FF04C07D
+:104640006F5F7F4F8F4F9F4F089597FB072E16F494
+:10465000009407D077FD09D00E943F2307FC05D0C6
+:104660003EF4909581959F4F0895709561957F4F89
+:104670000895EE0FFF1F0590F491E02D0994AA1BF9
+:10468000BB1B51E107C0AA1FBB1FA617B70710F03D
+:10469000A61BB70B881F991F5A95A9F7809590956F
+:1046A000BC01CD010895F999FECF92BD81BDF89A64
+:1046B000992780B50895A8E1B0E042E050E00C945D
+:1046C0007623262FF999FECF1FBA92BD81BD20BD5A
+:1046D0000FB6F894FA9AF99A0FBE019608950E94BF
+:1046E0006123272F0C946223DC01CB01FC01F99993
+:1046F000FECF06C0F2BDE1BDF89A319600B40D922E
+:0C47000041505040B8F70895F894FFCFE6
+:10470C0020024008CE08AB08770843080101BA0123
+:10471C0028080A03140A3F4D36391806CB059505AF
+:10472C005C05EF04080521053A05010203040506A2
+:04473C000708090061
+:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/keyboard-layout.png b/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/keyboard-layout.png Binary files differnew file mode 100644 index 000000000..57df5a1f9 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/keyboard-layout.png diff --git a/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/keymap.c b/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/keymap.c new file mode 100644 index 000000000..da540c7a3 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/keymap.c @@ -0,0 +1,264 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "../../../../quantum/keymap_extras/keymap_norwegian.c" + +#define BASE 0 // default layer +#define BASE_MAC 1 // default layer mac +#define NUMB_SYMB 2 // numbers and symbols +#define NUMB_SYMB_MAC 3 // numbers and symbols mac +#define FUNCTION 4 // function keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Keymap 0: Basic layer PC + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | \ | [ | ] | { | } | * |Mac/PC| | ^ | $ | ( | ) | < | > | @ | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | ? | Q | W | F | P | G | " | | ' | J | L | U | Y | Å | Æ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | : | A | R | S | T | D |------| |------| H | N | E | I | O | Ø | + * |--------+------+------+------+------+------| ; | | = |------+------+------+------+------+--------| + * | ! | Z | X | C | V | B | | | | K | M | RIGHT| DOWN | UP | _ | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | Func | Lclk | Rclk | TAB |,/CTRL| | LEFT | Esc | ` | # | Num | + * `----------------------------------' `----------------------------------' + * ,-------------. ,--------------. + * | & | | | |Insert| / | + * ,------|------|------| |------+-------+------. + * | | | + | | Del | | | + * | Shift| ./Spc|------| |------| Enter |Space| + * | | |-/Alt | | Bspc | | | + * `--------------------' `---------------------' + */ +[BASE] = KEYMAP( + // left hand + NO_BSLS, NO_LBRC, NO_RBRC, NO_LCBR, NO_RCBR, NO_ASTR, TG(1), + NO_QUES, KC_Q, KC_W, KC_F, KC_P, KC_G, NO_QUO2, + NO_COLN, KC_A, KC_R, KC_S, KC_T, KC_D, + KC_EXLM, KC_Z, KC_X, KC_C, KC_V, KC_B, NO_SCLN, + MO(4), KC_BTN1, KC_BTN2, KC_TAB,GUI_T(KC_COMMA), + NO_AMP, NO_PIPE, + NO_PLUS, + KC_FN1,CTL_T(KC_DOT),ALT_T(NO_MINS), + // right hand + KC_FN5, NO_DLR, NO_LPRN, NO_RPRN ,KC_FN3, KC_FN4,NO_AT, + NO_APOS, KC_J, KC_L, KC_U, KC_Y, NO_AA, NO_AE , + KC_H, KC_N, KC_E, KC_I, KC_O, NO_OSLH, + NO_EQL, KC_K, KC_M, KC_RIGHT, KC_DOWN, KC_UP, NO_UNDS, + KC_LEFT, KC_ESC, KC_FN7, KC_HASH, MO(2), + KC_INSERT, NO_SLSH, + KC_DELT, + KC_BSPC,KC_ENT,KC_SPC + ), +/* Keymap 1: Basic layer MACS (Same as pc, except for cmd/ctrl, which are swapped) + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | \ | | | { | } | | | | | $ | | | < | > | @ | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | ' |------+------+------+------+------+--------| + * | | | | | | |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | Func | | | |,/Ctrl| | | | ` | | Num | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | |./Cmd |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[BASE_MAC] = KEYMAP( + NO_BSLS_MAC, KC_TRNS,KC_TRNS, NO_LCBR_MAC,NO_RCBR_MAC, 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, CTL_T(KC_COMMA), + KC_TRNS, NO_PIPE_MAC, + KC_TRNS, + KC_TRNS,GUI_T(KC_DOT) , KC_TRNS, + // right hand + KC_TRNS, NO_DLR_MAC, KC_TRNS,KC_TRNS,KC_FN8, KC_FN9,NO_AT_MAC, + NO_APOS_MAC, 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, NO_GRV_MAC, KC_TRNS, MO(3), + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + +/* Keymap 2: Number ++ layer pc + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | % | | | | | | ~ | ´ | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | 3 | 2 | 1 | 0 | |------| |------| | 5 | 6 | 7 | 8 | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | 4 | | | | | | 9 | END | PGDWN| PGUP | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | HOME | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[NUMB_SYMB] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_PERC, KC_TRNS , KC_TRNS, + KC_TRNS, KC_3 , KC_2 , KC_1 , KC_0 , KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_4, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_FN2, KC_FN6 , KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_5, KC_6, KC_7, KC_8, KC_TRNS, + KC_TRNS, KC_HOME, KC_9, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, + KC_HOME, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + +/* Keymap 3: Number ++ layer mac. Some keys have to be repeated from the pc symbol layer, since transient keys inherit from the layer we jump from, not the layer above. + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | % | | | | | | ~ | ´ | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | 3 | 2 | 1 | 0 | |------| |------| | 5 | 6 | 7 | 8 | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | 4 | | | | | | 9 | END | PGDWN| PGUP | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | HOME | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[NUMB_SYMB_MAC] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_PERC, KC_TRNS , KC_TRNS, + KC_TRNS, KC_3 , KC_2 , KC_1 , KC_0 , KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_4, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS , KC_TRNS, KC_TRNS , KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_FN2, KC_FN10, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_5, KC_6, KC_7, KC_8, KC_TRNS, + KC_TRNS, KC_HOME, KC_9, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, + KC_HOME, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + +/* Keymap 4: Function layer mac + pc + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | F3 | F2 | F1 | | |------| |------| | F5 | F6 | F7 | F8 | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | F4 | | | | | | F9 | F10 | F11 | F12 | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +[FUNCTION] = KEYMAP( + KC_5, 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_F3 , KC_F2 , KC_F1 , KC_TRNS , KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F4, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_F5, KC_F6, KC_F7, KC_F8, KC_TRNS, + KC_TRNS, NO_TILD, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +) +}; + +enum macro_id { + TILDE_NO, LESS_NO, GRTR_NO, CIRC_NO, ACUT_NO, GRV_NO, LESS_NO_MAC, GRTR_NO_MAC, ACUT_NO_MAC +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_MODS_ONESHOT(MOD_LSFT), // Sticky shift light. Tap for the next keypress to be shifted. Hold for regular shift. + [2] = ACTION_MACRO(TILDE_NO), // Completed ~ character(pc and mac), no space needed. + [3] = ACTION_MACRO(LESS_NO), // < completed on keypress down, to avoid shifting the next character if it is not released first. + [4] = ACTION_MACRO(GRTR_NO), // > completed on keypress down, to avoid shifting the next character if it is not released first. + [5] = ACTION_MACRO(CIRC_NO), // Completed ^ character, no space needed. + [6] = ACTION_MACRO(ACUT_NO), // Completed ´ character, no space needed. + [7] = ACTION_MACRO(GRV_NO), // Completed ` character, no space needed. + [8] = ACTION_MACRO(LESS_NO_MAC), // < completed on keypress down, to avoid same button problem when typing <> quickly + [9] = ACTION_MACRO(GRTR_NO_MAC), // > completed on keypress down, to avoid same button problem when typing <> quickly + [10] = ACTION_MACRO(ACUT_NO_MAC), // Completed ´ character, no space needed +}; + + + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + keyevent_t event = record->event; + + switch (id) { + case TILDE_NO: + return (event.pressed ? MACRO( D(RALT), T(RBRC), U(RALT), T(SPC), END ) : MACRO_NONE); + case LESS_NO: + return (event.pressed ? MACRO( T(NUBS), END ) : MACRO_NONE); + case GRTR_NO: + return (event.pressed ? MACRO( D(LSFT), T(NUBS), U(LSFT), END ) : MACRO_NONE); + case CIRC_NO: + return (event.pressed ? MACRO( D(LSFT), T(RBRC), U(LSFT), T(SPC), END ) : MACRO_NONE); + case ACUT_NO: + return (event.pressed ? MACRO( D(RALT), T(EQL), U(RALT), T(SPC), END ) : MACRO_NONE); + case GRV_NO: + return (event.pressed ? MACRO( D(LSFT), T(EQL), T(SPC), U(LSFT), END ) : MACRO_NONE); + case LESS_NO_MAC: + return (event.pressed ? MACRO( T(GRV), END ) : MACRO_NONE); + case GRTR_NO_MAC: + return (event.pressed ? MACRO( D(LSFT), T(GRV), U(LSFT), END ) : MACRO_NONE); + case ACUT_NO_MAC: + return (event.pressed ? MACRO( T(EQL), T(SPC), END ) : MACRO_NONE); + } + return MACRO_NONE; +}; diff --git a/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/readme.md b/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/readme.md new file mode 100644 index 000000000..48f095cae --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/colemak_osx_pc_no/readme.md @@ -0,0 +1,23 @@ +# Norwegian Colemak setup with osx/pc toggle + +## Motivation +I wanted a Norwegian Colemak setup that worked in a similar way on both my Mac and PC. I also wanted it to translate from a standard Norwegian keyboard OS setup. + +## Overview +The setup is created to be programmer friendly. +- Most of the symbols used in code can be activated without using layers or shift key. +- You can reach the IDE/OS shortcut activators(Ctrl, Win/Cmd, Alt, Shift) with the thumb. +- Navigation is prioritized, arrows are right below the home row. + +## PC/Mac toggle +The default setup is for Norwegian keyboard setting(not colemak variants) on a PC(Windows or Linux). Use the Mac/PC toggle button to switch between OSX and PC setup. The settings will be reverted to PC setup each time you restart/connect the keyboard. + +## Layers +Numbers and function buttons are on their own layers. The easiest way to switch layers(at least with my hands) in this setup, is to push your hand right below the little finger, on the layer switches. You will then have all your fingers free to type numbers or press function buttons. + +## Shift-key +Tap for the next character to be shifted, hold down for regular shift functionality + +## Layout + +![keyboard-layout](keyboard-layout.png) diff --git a/keyboard/ergodox_ez/keymaps/csharp_dev/csharp_dev.hex b/keyboard/ergodox_ez/keymaps/csharp_dev/csharp_dev.hex new file mode 100644 index 000000000..e29c17860 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/csharp_dev/csharp_dev.hex @@ -0,0 +1,1161 @@ +:100000000C94E9020C942D030C942D030C942D03F5 +:100010000C942D030C942D030C942D030C942D03A0 +:100020000C942D030C942D030C94720D0C94360D2E +:100030000C94911B0C942D030C942D030C942D0304 +:100040000C942D030C942D030C942D030C942D0370 +:100050000C942D030C94171C0C942D030C942D035D +:100060000C942D030C942D030C942D030C942D0350 +:100070000C942D030C942D030C942D030C942D0340 +:100080000C942D030C942D030C942D030C942D0330 +:100090000C942D030C942D030C942D030C942D0320 +:1000A0000C942D030C942D030C942D03260227028F +:1000B0002F0230022B7100001E00140004001D747A +:1000C000360219011F001A0016001B0037022C7897 +:1000D00020000800070006003102287221001500E8 +:1000E0000900190024020601220017000A00050079 +:1000F0000000378134022A000000380000003682F8 +:1001000016014C000000330000004A8223001C004E +:100110000B00110000004D81240018000D0010009C +:100120002E00520025000C000E0034002E02287212 +:10013000260012000F001E022D002C78270013004D +:100140002D023802250251002F0030001C011D0134 +:100150000154000035002B002900E100E000000000 +:100160001E00140004001D00E30001001F001A001F +:1001700016001B00E2000100200008000700060036 +:10018000E600010021001500090019002900010006 +:10019000220017000A000500000001002D000100E8 +:1001A00000002B0000001B012E00010000002900B0 +:1001B0000000010023001C000B00110000000100E2 +:1001C000240018000D0010004B00010025000C0059 +:1001D0000E0001004E004F00260012000F003700F5 +:1001E000490050002700130033003800460001008A +:1001F0000100010034006400010000000100010062 +:1002000001000100010000003A000A300B3001003B +:10021000E20001003B000C300D3001000100010044 +:100220003C0010300F300E30010001003D00113055 +:1002300012301330010001003E001430153016302A +:1002400000000100010001000000010000000100A9 +:10025000B200010000000100000001003F00173063 +:1002600018301930000001004000010001000100B9 +:100270000100010041000100010001000100010036 +:1002800042000100010001000100010043000100E3 +:1002900001000100010001004400450001000100CF +:1002A000010000000000F0A201E101260226012762 +:1002B000022702E101330233000111021101080299 +:1002C00008011A021A012C022C00013802380138E8 +:1002D000023801E101170217011202120107020799 +:1002E0000112021202E1012C022C0001050205019B +:1002F0001502150108020801040204010E020E0194 +:10030000330233000111021101180218010F020F0C +:10031000010F020F00011502150108020801170262 +:100320001701180218011502150111021100010927 +:100330000209010F020F0112021201040204011747 +:100340000217012C022C00010C020C0111021101F8 +:10035000170217012C022C000105020501120212DE +:1003600001120212010F020F012C022C00011602D1 +:10037000160117021701150215010C020C011102DA +:1003800011010A020A012C022C00011902190104B0 +:10039000020401150215012C022C00011902190199 +:1003A000120212010C020C01070207012C022C00A0 +:1003B00001060206011202120111021101160216B3 +:1003C00001170217012C022C000116021601170258 +:1003D000170104020401170217010C020C010602A6 +:1003E00006012C022C000113021301150215010C49 +:1003F000020C011902190104020401170217010875 +:100400000208012C022C000113021301180218012A +:10041000050205010F020F010C020C010602060184 +:100420002C022C0005010906A101050719E029E7A6 +:100430001500250195087501810295017508810156 +:1004400005081901290595057501910295017503A6 +:1004500091010507190029FF150025FF950675086C +:100460008100C005010902A1010901A100050919C6 +:100470000129051500250195057501810295017574 +:100480000381010501093009311581257F95027528 +:1004900008810609381581257F95017508810605B3 +:1004A0000C0A38021581257F950175088106C0C0A8 +:1004B00005010980A101850216010026B7001A0175 +:1004C000002AB700751095018100C0050C0901A133 +:1004D000018503160100269C021A01002A9C027560 +:1004E0001095018100C005010906A101050719E069 +:1004F00029E71500250195087501810205081901F4 +:10050000290595057501910295017503910105076E +:100510001900297715002501957875018102C0120F +:1005200001100100000008EDFE07130100010200A8 +:100530000109026D00040100A0FA09040000010392 +:10054000010100092111010001223F00070581037B +:1005500008000A0904010001030102000921110138 +:100560000001224D000705820308000A0904020069 +:1005700001030000000921110100012236000705D6 +:10058000830308000A090403000103000000092195 +:100590001101000122390007058403100001040342 +:1005A000090416034500720067006F0044006F00E5 +:1005B0007800200045005A00000016034500720034 +:1005C00067006F0044006F007800200045005A006B +:1005D000000011241FBECFEFDAE0DEBFCDBF04B6AE +:1005E00003FE24C08091CE019091CF01A091D00153 +:1005F000B091D1018750904BA740B04BB9F4109205 +:10060000CE011092CF011092D0011092D10114BEF0 +:1006100084B7877F84BF88E10FB6F8948093600029 +:10062000109260000FBEE0E0FFE3099511E0A0E04A +:10063000B1E0E2E5F8E402C005900D92A631B10701 +:10064000D9F711E0A6E1B1E001C01D92AE3CB107BF +:10065000E1F70E945F090C9427240C940000FC0130 +:10066000613109F464C06231A8F46D3009F441C00D +:100670006E3040F46B3079F16C30A0F56A3009F0DF +:1006800084C022C06F3009F441C08281603108F01B +:1006900043C036C0653109F45AC0663140F4633155 +:1006A00009F43FC08281643108F04CC046C0673114 +:1006B00009F459C0673108F450C0683109F459C0D1 +:1006C000693109F062C05BC08281882309F45DC092 +:1006D00027E034E05CC08281882309F456C026EE0E +:1006E00033E055C08281882309F44FC029EC33E000 +:1006F0004EC08281882309F448C020EB33E047C014 +:10070000882309F442C02BE933E041C08281882369 +:10071000E1F12AE833E03BC08823B9F12DE633E06C +:1007200036C08281882389F128E533E030C0828198 +:10073000882359F127E433E02AC0882331F12EE2DF +:1007400033E025C0882309F125E133E020C0828110 +:10075000882319F024E033E01AC082818823A9F0AD +:100760002BEE32E014C08281882379F02AEC32E04B +:100770000EC08281882349F029EB32E008C08281D3 +:10078000882319F028EA32E002C020E030E0C901F5 +:100790000895089560919701709198018091990151 +:1007A00090919A010E94201B56985E9825982D984A +:1007B00026982E9827982F98813019F0823031F49E +:1007C00003C0259A2D9A0895269A2E9A08958AECA8 +:1007D00093E0009711F0FC01099580E090E0089506 +:1007E00056985E9825982D9826982E9827982F9899 +:1007F0008FEF90E0909389008093880090938B0016 +:1008000080938A0090938D0080938C00259A2D9A76 +:1008100084EF91E020E931E0F9013197F1F7019798 +:10082000D9F7269A2E9A84EF91E020E931E0F90178 +:100830003197F1F70197D9F7279A2F9A84EF91E032 +:1008400020E931E0F9013197F1F70197D9F72598BF +:100850002D9884EF91E020E931E0F9013197F1F72B +:100860000197D9F726982E9884EF91E020E931E09E +:10087000F9013197F1F70197D9F727982F985698F2 +:100880005E9825982D9826982E9827982F98089549 +:1008900089EA8093800089E08093810024982C98D5 +:1008A0003F988AB18F748AB96E98479A8BB1806BE2 +:1008B0008BB9769A0E94F00389EC93E0009711F0CF +:1008C000FC01099580E090E0089580E280930001AA +:1008D00080911601882371F40E94B40481E0809312 +:1008E000160180E197E220E931E0F9013197F1F753 +:1008F0000197D9F780E40E94BA048093000188230D +:1009000071F50E94E80480930001882341F50E945C +:10091000E80480930001882311F58FE30E94E80426 +:10092000809300018823D9F40E94E00480E40E94AF +:10093000BA0480930001882391F48CE00E94E804BB +:1009400080930001882359F40E94E80480930001F9 +:10095000882329F48FE30E94E804809300010E9419 +:10096000E0048091000108951092B9008AE080931C +:10097000B8000895982F84EA8093BC008091BC0051 +:1009800087FFFCCF8091B900887F883021F08031CB +:1009900011F081E008959093BB0084E88093BC003F +:1009A0008091BC0087FFFCCF9091B900987F98316F +:1009B00011F480E0089580E0903409F081E008951A +:1009C00084E98093BC008091BC0084FDFCCF089535 +:1009D0008093BB0084E88093BC008091BC0087FFBB +:1009E000FCCF8091B90090E0887F883209F091E0D7 +:1009F000892F089584E88093BC008091BC0087FF14 +:100A0000FCCF8091BB000895E7E1F1E0E80FF11D14 +:100A1000808108950895809100018823A9F480E4DD +:100A20000E94BA0480930001882361F482E10E944D +:100A3000E80480930001882329F48FEF0E94E804E2 +:100A4000809300010E94E00484B1807F84B985B165 +:100A5000807F85B98AB1837F8AB98BB1837F8BB957 +:100A60003E98469808950E946504809300010E9474 +:100A70000B0580B38C7080BB81B3836F81BB80E03A +:100A800090E0FC01E95EFE4F1082FC01EB5DFE4F41 +:100A9000108201968E309105A1F788E494E00097CA +:100AA00011F0FC0109950895BF92CF92DF92EF9269 +:100AB000FF920F931F93CF93DF93809100018823C0 +:100AC00079F0809133018F5F80933301882341F463 +:100AD0000E94650480930001882311F40E94F003B2 +:100AE00025E2E22E21E0F22EC0E0D0E090EAB92E1D +:100AF00081E0C82ED12C02E0C73010F580910001B2 +:100B0000882309F045C080E40E94BA048093000164 +:100B1000882399F482E10E94E804809300018823ED +:100B200061F4C6010C2E02C0880F991F0A94E2F7E7 +:100B300080950E94E804809300010E94E00428C090 +:100B4000CA30D9F0CB3040F4C83089F0C93090F4C5 +:100B5000C73009F0A0C008C0CC30A1F0CC3080F084 +:100B6000CD3009F098C011C0209A289894C0219ADD +:100B7000299891C0229A2A988EC0239A2B988BC0CC +:100B8000529A01C0539A5B9886C03E9A469883C099 +:100B900080910001882311F010E03EC080E40E94A3 +:100BA000BA0480930001882399F483E10E94E80449 +:100BB00080930001882361F481E40E94BA04809349 +:100BC0000001882329F40E94FA04182F109501C00F +:100BD00010E00E94E00420C042E07C9902C034E0B2 +:100BE00001C030E07D9902C028E001C020E07E997C +:100BF00002C090E101C090E08FB18095881F8827E6 +:100C0000881F8295880F807E152F1C251170142B4C +:100C1000132B122B192B182BF7018081811719F038 +:100C20001083009301010E940B0521960894E11C9A +:100C3000F11CCE30D10509F05FCF809101018823EE +:100C4000C9F0815080930101882329F080EA9FE058 +:100C50000197F1F70FC020E030E0F901E95EFE4FA7 +:100C6000D901AB5DBE4F8C9180832F5F3F4F2E30FB +:100C7000310599F787EE93E0009711F0FC01099593 +:100C800081E0DF91CF911F910F91FF90EF90DF9066 +:100C9000CF90BF9008958B2D8A95F1F75FB1799B26 +:100CA0009BCF40E09ACF08959C018B3B910578F44F +:100CB000883A910548F5853A9105B8F48430910554 +:100CC00008F09FC08130910509F099C095C0803E21 +:100CD000910508F494C0883E910508F492C0805FA5 +:100CE0009040409708F08BC085C0853A910519F473 +:100CF00081E890E47DC0863A910519F083E890E49C +:100D000077C082E890E474C0883A910519F482EEC5 +:100D100094E46EC0893A910519F489EE94E468C0B0 +:100D20008A3A910519F48AEE94E462C08B3A9105EF +:100D300019F485EB94E45CC08C3A910519F486EBC8 +:100D400094E456C08D3A910519F487EB94E450C0B1 +:100D5000803B910519F48CEC94E44AC08E3A9105DD +:100D600019F48DEC94E444C08F3A910519F483E8AA +:100D700095E43EC0813B910519F48AE895E438C0BA +:100D8000823B910519F482E995E432C0833B9105D9 +:100D900019F484E995E42CC0843B910519F481E2AF +:100DA00096E426C0853B910519F483E296E420C0C1 +:100DB000863B910519F484E296E41AC0873B9105BD +:100DC00019F485E296E414C0883B910519F486E293 +:100DD00096E40EC0893B910519F487E296E408C0B9 +:100DE0008A3B910519F080E094E402C08AE296E41F +:100DF0009C0107C0306505C021E030E002C020E062 +:100E000030E0C9010895E62FF0E0EE0FFF1F9CE0EF +:100E1000799F90011124E20FF31F98EA899FC00186 +:100E20001124E80FF91FE455FF4F25913491C901B2 +:100E30000895FC01EE0FFF1FEC5DFE4F25913491EC +:100E4000C9010895FC01EE0FFF1FEC55FD4F2591E0 +:100E50003491C90108950E940307AC01805091406C +:100E600080509F4118F4CA019F710895CA018050B3 +:100E700090428050904128F4CA019F700E9422073E +:100E80000895CA01805090438050904120F4CA01D7 +:100E90009070906C089580E54030580771F40E947E +:100EA000261184EC99E020E931E0F9013197F1F75E +:100EB0000197D9F70E943C1C0EC120E54130520732 +:100EC00031F48091AE0181608093AE0104C1CA010A +:100ED000805090458050904108F056C0652F77278C +:100EE0006F70707061307105F9F49A01A4E0220FFF +:100EF000331FAA95E1F720703370CA01F3E0880F21 +:100F0000991FFA95E1F780769070282B392B3C6871 +:100F10004370507002C0660F771F4A95E2F76F71F9 +:100F20007070262B372B2EC06230710529F4942F58 +:100F30008827816F906A08956330710551F49A0192 +:100F400073E0220F331F7A95E1F7207E37703C68FB +:100F50000CC06430710561F59A0163E0220F331F04 +:100F60006A95E1F7207E37703A684370507081E0EF +:100F700090E002C0880F991F4A95E2F78F71907038 +:100F8000282B392BC9010895CA0180509047805001 +:100F9000904120F4CA019F7090620895CA01805068 +:100FA00090488050904120F4CA019F70906A089543 +:100FB000403E5105F0F4403C510588F54133510560 +:100FC00009F476C04233510548F44932510509F419 +:100FD00065C04A32510509F07AC06FC049335105E6 +:100FE00011F142385105F9F04533510509F06FC050 +:100FF00050C0433E510569F1443E510540F4403E26 +:101000005105C1F0423E510509F061C01DC0463E88 +:10101000510559F1473E510509F059C02BC0CA018D +:101020000E94190708958091BF0180FD0AC081FDCB +:1010300008C04DC08091BF0180FF03C089E390E0EC +:1010400047C080EE90E044C08091BF0182FD08C09F +:1010500004C08091BF0182FF03C082EE90E038C0DF +:1010600084FD11C083EE90E033C08091BF0183FD09 +:1010700008C004C08091BF0183FF03C086EE90E0EA +:1010800027C084FF03C080E090E022C087EE90E09C +:101090001FC08091BF0185FF05C007C08091BF01BF +:1010A00085FF03C085E390E013C089E290E010C0A3 +:1010B0008091BF0186FF05C007C08091BF0186FFF8 +:1010C00003C081E390E004C08AE290E001C0CA015D +:1010D0000E9454060895089508951092C401089539 +:1010E00008950895809135010895DF93CF9300D03E +:1010F0000F92CDB7DEB7AC018091C501843029F5E0 +:1011000083E08093E9002FEF95ED05C0892F8A9544 +:10111000F1F7222329F08091E800215085FFF6CFD6 +:101120008091E80085FF11C05B834A8383E0898357 +:10113000CE01019663E070E040E050E00E94D80BE1 +:101140008091E8008E778093E8000F900F900F90C9 +:10115000CF91DF910895DF93CF9300D00F92CDB759 +:10116000DEB7AC018091C501843029F583E080931E +:10117000E9002FEF95ED05C0892F8A95F1F722231D +:1011800029F08091E800215085FFF6CF8091E8009A +:1011900085FF11C05B834A8382E08983CE0101967B +:1011A00063E070E040E050E00E94D80B8091E800DE +:1011B0008E778093E8000F900F900F90CF91DF9182 +:1011C0000895AC018091C501843001F582E08093DF +:1011D000E9002FEF95ED05C0892F8A95F1F72223BD +:1011E00029F08091E800215085FFF6CF8091E8003A +:1011F00085FF0CC0CA0165E070E040E050E00E944D +:10120000D80B8091E8008E778093E80008950F93C3 +:101210001F93182F092F9091C501943009F04CC0ED +:10122000809102018823E1F080910D018823C1F0B3 +:101230009093E9009FEF25E105C0822F8A95F1F791 +:10124000992329F08091E800915085FFF6CF809195 +:10125000E80085FF31C0812F902F60E170E018C059 +:1012600081E08093E9009FEF25ED05C0822F8A95EC +:10127000F1F7992329F08091E800915085FFF6CF8E +:101280008091E80085FF18C0812F902F68E070E002 +:1012900040E050E00E94D80B8091E8008E77809368 +:1012A000E800A6E3B1E0212F302FC901FC0180E165 +:1012B00001900D928150E1F71F910F91089584B72D +:1012C000877F84BF88E10FB6F89480936000109206 +:1012D00060000FBE80E090E020E80FB6F894209305 +:1012E0006100809361000FBE0E9424100E94B60C22 +:1012F0000E94170D8091E20084608093E200789450 +:101300000E94B50F0E94C01083E091E00E94CB0FB5 +:101310000CC00E94691B8091C301882331F00E9498 +:10132000C11B882311F00E94ED0A8091C501853010 +:1013300081F30E942A10F9CF8091C401882349F4D7 +:101340000E94B60C0E94170D8091E2008460809389 +:10135000E20008958091C701833009F457C08430BA +:1013600030F4813071F0823009F0B1C098C08A3019 +:1013700009F485C08B3009F46AC0893009F0A7C030 +:1013800020C08091C601813A09F0A1C08091E80097 +:10139000877F8093E8008091CA019091CB01892BCF +:1013A00021F486E391E060E103C080E090E060E03A +:1013B00070E00E94030B8091E8008B778093E80037 +:1013C00008958091C601813209F081C08091CA01DF +:1013D0009091CB01009719F0039709F078C08091A4 +:1013E000E800877F8093E80005C08091C5018823CD +:1013F00009F46DC08091E80082FFF7CF8091F10081 +:10140000809335018091E8008B771CC08091C601E4 +:10141000813A09F05CC08091CA019091CB01892B7F +:1014200009F055C08091E800877F8093E8008091A3 +:10143000E80080FFFCCF809102018093F100809151 +:10144000E8008E778093E8000E94630C08958091F5 +:10145000C6018132E1F58091CA019091CB01892BBF +:10146000B1F58091E800877F8093E8000E94630CCB +:101470008091C801809302010E94261108958091F5 +:10148000C601813221F58091E800877F8093E800D2 +:101490000E94630C8091C90180933401089580916A +:1014A000C601813AA1F48091E800877F8093E8002B +:1014B0008091E80080FFFCCF809134018093F1009F +:1014C0008091E8008E778093E8000E94630C089575 +:1014D00081E061EC42E00E942B0C82E061EC42E092 +:1014E0000E942B0C83E061EC42E00E942B0C84E014 +:1014F00061EC42E10E942B0C08950E94BA1B0895F2 +:10150000DA019330C1F0943030F4913051F09230E0 +:1015100009F05BC00BC0913221F1923209F055C045 +:1015200037C0EFE1F5E022E130E053C0E1E3F5E060 +:101530002DE630E04EC0813051F0813020F0823015 +:1015400009F043C008C0EEE9F5E0849107C0E2EA83 +:10155000F5E0849103C0EAEBF5E08491282F30E0B8 +:1015600038C0613051F0613028F0623059F063309A +:1015700061F50BC0E3E4F5E002C0ECE5F5E029E03D +:1015800030E027C0E5E7F5E0FACFEEE8F5E0F7CF89 +:10159000613061F0613028F0623069F06330A9F4A5 +:1015A0000FC0E4E2F4E02FE330E013C0E3E6F4E040 +:1015B0002DE430E00EC0E0EBF4E026E330E009C0BB +:1015C000E6EEF4E029E330E004C0E0E0F0E020E003 +:1015D00030E0ED93FC93C901089580E189BD82E17B +:1015E00089BD09B400FEFDCF8091D8008F7D809326 +:1015F000D8008091E00082608093E0008091E0005C +:1016000081FDFCCF08959C014091CC015091CD010A +:101610004617570718F4F90190E043C061157105AA +:1016200011F0AB01F8CF8091E8008E778093E8004D +:1016300040E050E0F0CF8091C501882309F447C015 +:10164000853009F446C08091E80083FD44C0809154 +:10165000E80082FD36C08091E80080FF22C08091C2 +:10166000F3009091F200782F60E0292F30E0262BD4 +:10167000372B07C081918093F100415050402F5F7C +:101680003F4F4115510519F02830310598F390E08E +:101690002830310509F491E08091E8008E7780933D +:1016A000E8004115510539F6992329F60AC08091C1 +:1016B000C501882361F0853061F08091E80083FDE9 +:1016C0000AC08091E80082FFF2CF80E0089582E0B6 +:1016D000089583E0089581E008959C014091CC0134 +:1016E0005091CD014617570718F4F90190E044C016 +:1016F0006115710511F0AB01F8CF8091E8008E778C +:101700008093E80040E050E0F0CF8091C50188234D +:1017100009F448C0853009F447C08091E80083FD92 +:1017200045C08091E80082FD37C08091E80080FFCD +:1017300023C08091F3009091F200782F60E0292F70 +:1017400030E0262B372B08C084918093F10031962E +:10175000415050402F5F3F4F4115510519F028303F +:10176000310590F390E02830310509F491E0809143 +:10177000E8008E778093E8004115510531F69923F2 +:1017800021F60AC08091C501882361F0853061F09F +:101790008091E80083FD0AC08091E80082FFF2CFCB +:1017A00080E0089582E0089583E0089581E008953F +:1017B000BF92CF92DF92EF92FF920F931F93CF933E +:1017C000DF93182F092F7B016A010E94840CB82E29 +:1017D0008823B1F5812F902F9C01E901C114D10418 +:1017E00039F0F60180819181E81AF90AC80FD91FF2 +:1017F00000E010E022C08091E80085FD16C08091D5 +:10180000E8008E778093E800C114D10449F0F60116 +:1018100080819181800F911F9183808385E011C029 +:101820000E94840C882349F00CC089918093F100B8 +:101830000894E108F1080F5F1F4FE114F104D9F695 +:101840008B2DDF91CF911F910F91FF90EF90DF9043 +:10185000CF90BF900895382F282F2EC0822F8F70E1 +:101860008093E900231721F4762F942F50E006C0CF +:101870007091EC009091ED005091F00091FF1BC031 +:101880008091EB008E7F8093EB008091ED008D7F47 +:101890008093ED008091EB0081608093EB0070936A +:1018A000EC009093ED005093F0008091EE0087FDE6 +:1018B00002C080E008952F5F273080F23F703093A0 +:1018C000E90081E008958091C60188239CF404C05A +:1018D0008091C5018823B9F08091E80082FFF8CF9C +:1018E0008091E8008B778093E80008958091C5018E +:1018F000882349F08091E80080FFF8CF8091E800CC +:101900008E778093E80008954091E4005091E500BF +:1019100024E68091EC0080FF24C08091E80080FDE7 +:101920001EC08091C501882311F482E0089585309E +:1019300011F483E008958091EB0085FF02C081E0FF +:1019400008958091E4009091E5008417950709F3CC +:10195000222311F484E008952150AC01DACF80E015 +:1019600008958091E80082FFDCCFF9CF0E94290D15 +:101970000E94310DE0EEF0E0808181608083A8ED6F +:10198000B0E08C918F778C9319BCE7EDF0E080810B +:101990008E7F80838C918F7E8C931092C4010895EA +:1019A000EF92FF920F931F930E94290D0E94310D19 +:1019B00008ED10E0F80180818F7780838081806856 +:1019C000808380818F7D808319BC1092C501109225 +:1019D000C1011092C3011092C20180EEE82EF12CD9 +:1019E000F70180818B7F8083F80180818160808313 +:1019F00080E060E042E00E942B0CE1EEF0E08081AC +:101A00008E7F8083E2EEF0E0808181608083808140 +:101A100088608083F70180818E7F8083F8018081D8 +:101A2000806180831F910F91FF90EF900895E8ED02 +:101A3000F0E080818F7E8083E7EDF0E0808181603F +:101A4000808384E082BF81E08093C4010E94D00C37 +:101A50000895E8EDF0E080818E7F80831092E200AF +:101A600008951092DA001092E10008951F920F92EB +:101A70000FB60F9211241F932F933F934F935F93B1 +:101A80006F937F938F939F93AF93BF93EF93FF9346 +:101A90001091E9008091EC001092E9008091F00033 +:101AA000877F8093F00078940E94440E1092E900A2 +:101AB0008091F00088608093F0001F701093E9001F +:101AC000FF91EF91BF91AF919F918F917F916F9116 +:101AD0005F914F913F912F911F910F900FBE0F90EB +:101AE0001F9018951F920F920FB60F9211242F93EB +:101AF0003F934F935F936F937F938F939F93AF9396 +:101B0000BF93EF93FF938091E10082FF0BC0809120 +:101B1000E20082FF07C08091E1008B7F8093E100AB +:101B20000E94B40F8091DA0080FF1FC08091D8001E +:101B300080FF1BC08091DA008E7F8093DA00809155 +:101B4000D90080FF0DC080E189BD82E189BD09B463 +:101B500000FEFDCF81E08093C5010E949C0905C075 +:101B600019BC1092C5010E946D088091E10080FFB0 +:101B700019C08091E20080FF15C08091E2008E7F45 +:101B80008093E2008091E20080618093E200809186 +:101B9000D80080628093D80019BC85E08093C5018D +:101BA0000E9471088091E10084FF30C08091E200C2 +:101BB00084FF2CC080E189BD82E189BD09B400FEAB +:101BC000FDCF8091D8008F7D8093D8008091E10077 +:101BD0008F7E8093E1008091E2008F7E8093E2000F +:101BE0008091E20081608093E2008091C1018823AE +:101BF00011F084E007C08091E30087FD02C081E01E +:101C000001C083E08093C5010E947D0A8091E100BC +:101C100083FF29C08091E20083FF25C08091E1000D +:101C2000877F8093E10082E08093C5011092C1011B +:101C30008091E1008E7F8093E1008091E2008E7FB1 +:101C40008093E2008091E20080618093E20080E076 +:101C500060E042E00E942B0C8091F000886080934D +:101C6000F0000E947008FF91EF91BF91AF919F919A +:101C70008F917F916F915F914F913F912F910F9035 +:101C80000FBE0F901F9018951F93DF93CF93CDB782 +:101C9000DEB7AC970FB6F894DEBF0FBECDBFE6EC53 +:101CA000F1E08091F100819321E0EE3CF207C9F769 +:101CB0000E94AA098091E80083FF3EC18091C6017D +:101CC0003091C701353009F487C0363040F43130E7 +:101CD000C9F1313070F0333009F02EC133C03830E3 +:101CE00009F4F9C0393009F409C1363009F024C1CA +:101CF00097C0803821F0823809F01EC108C0909149 +:101D0000C2018091C301882399F0926011C0809133 +:101D1000CA018F708093E9008091EB0090E025E08C +:101D2000969587952A95E1F7982F91701092E90082 +:101D30008091E800877F8093E8009093F1001092F3 +:101D4000F100D4C0882319F0823009F0F5C090E08A +:101D50008F719070009721F0029709F0EDC00CC0D0 +:101D60008091C801813009F0E7C01092C30133307F +:101D700069F58093C3012AC08091C801882331F599 +:101D80002091CA012F7009F4D7C02093E9008091F7 +:101D9000EB0080FF1BC0333021F48091EB008062A8 +:101DA00013C08091EB0080618093EB0081E090E0B4 +:101DB00002C0880F991F2A95E2F78093EA001092DB +:101DC000EA008091EB0088608093EB001092E900BC +:101DD0008091E800877F8DC0882309F0ADC0109105 +:101DE000C8011F778091E3008078812B8093E30006 +:101DF0008091E800877F8093E8000E94630C8091C7 +:101E0000E80080FFFCCF8091E30080688093E300CE +:101E1000112311F482E001C083E08093C5018CC0DE +:101E20008058823008F088C08091C8019091C90123 +:101E300023E08C3D920709F034C083E08C838AE272 +:101E40008B837FB7F894DE0115966EE040E050E09A +:101E500011E2E62FF0E010935700849140FF03C099 +:101E600082958F706F5F8F70282F30E08A3018F066 +:101E7000C901C79602C0C901C0968D939D934F5F5B +:101E80005F4F4431510529F77FBF8091E800877F7C +:101E90008093E800CE0103966AE270E00E94030B93 +:101EA00014C06091CA01AE014F5F5F4F0E94800A6B +:101EB000BC01009709F440C08091E800877F8093BF +:101EC000E80089819A810E946D0B8091E8008B77F0 +:101ED0008093E80031C0803879F58091E800877FF1 +:101EE0008093E8008091C1018093F1008091E80027 +:101EF0008E778093E8000E94630C1EC08823E1F473 +:101F00009091C8019230C0F48091E800877F80935F +:101F1000E8009093C1010E94630C8091C101882365 +:101F200031F48091E30087FD02C081E001C084E0CC +:101F30008093C5010E94680A8091E80083FF0AC06F +:101F40008091E800877F8093E8008091EB008062B9 +:101F50008093EB00AC960FB6F894DEBF0FBECDBFFA +:101F6000CF91DF911F91089508951F938091C5012E +:101F7000882379F01091E9008091EC001092E9003B +:101F80008091E80083FF02C00E94440E1F701093EE +:101F9000E9001F91089590934B0180934A010895A1 +:101FA000E0914A01F0914B01309711F480E00895DF +:101FB0000190F081E02D09950895E0914A01F0919A +:101FC0004B01309721F00280F381E02D09950895AF +:101FD000E0914A01F0914B01309721F00480F581A6 +:101FE000E02D099508959C01809148019091490147 +:101FF0002817390779F03093490120934801E0917F +:102000004A01F0914B01309729F00680F781E02DCD +:10201000C901099508959C0180914601909147015D +:102020002817390779F03093470120934601E09152 +:102030004A01F0914B01309729F00084F185E02DA1 +:10204000C9010995089508950E94231008950E94DA +:102050006C080895BF92CF92DF92EF92FF920F9398 +:102060001F93DF93CF93CDB7DEB72A970FB6F894BF +:10207000DEBF0FBECDBF0E945405EE24FF24BE2C50 +:102080008E2D0E940405C82EF701E35BFE4FD08021 +:10209000D82609F43FC08091AE0181FF02C00E94A2 +:1020A0000A0500E010E0ED2DF0E0CF01002E02C0A7 +:1020B000959587950A94E2F780FF27C00E94DF1B61 +:1020C0000983BA826C2D70E0002E02C07595679569 +:1020D0000A94E2F7617070706B8381609D838C83DA +:1020E000402F5B2D782F8D810E949514F701E35BC3 +:1020F000FE4F81E090E0002E02C0880F991F0A94E5 +:10210000E2F72081282720831DC00F5F1F4F063074 +:10211000110559F60894E11CF11C8EE0E816F10453 +:1021200009F0ADCF0E94DF1B2FEF2E832F8318867F +:102130008160782F9A8789874FEF5FEF60E08A850B +:102140000E9495140E94B41F10914C010E94D00F60 +:10215000181731F00E94D00F80934C010E94271075 +:102160002A960FB6F894DEBF0FBECDBFCF91DF9198 +:102170001F910F91FF90EF90DF90CF90BF90089547 +:102180000E94D61B0E9433050E949C1C0895DF9379 +:10219000CF9300D000D00F92CDB7DEB70F900F9045 +:1021A0000F900F900F90CF91DF910895DF93CF9311 +:1021B00000D000D000D0CDB7DEB726960FB6F89489 +:1021C000DEBF0FBECDBFCF91DF9108950E940C19E5 +:1021D000482F892F82958F70282F30E02C303105C1 +:1021E0004CF42A3031056CF4225030402230310555 +:1021F000C0F407C02C30310551F02F30310589F47F +:1022000006C0403E10F0403F61F481E008959F70A9 +:10221000892F90E023E0969587952A95E1F78170C4 +:10222000089580E008950E94E01A0E94B51A0E9465 +:10223000F81A0E949D1F0E94A91F80E090E00E9452 +:10224000F30F80E090E00E940B1008950E94D01AD6 +:102250000E9413110895882321F00E94C91A0E9438 +:10226000F81A0895882321F00E94C31A0E94F81AD0 +:102270000895282F882309F44EC0823859F40E940B +:10228000D00F81FF48C089E30E94431A0E94F81AC8 +:1022900089E30CC0833869F40E94D00F80FF3BC0F3 +:1022A00083E50E94431A0E94F81A83E50E94811A6E +:1022B0001FC0843859F40E94D00F82FF2CC087E4DD +:1022C0000E94431A0E94F81A87E4F0CF8450813AA2 +:1022D00010F4822FEBCF822F805E883060F427705D +:1022E00081E090E001C0880F2A95EAF70E94C91AA0 +:1022F0000E94F81A0895822F855A833028F480E0CE +:1023000090E00E94F30F0895285A233120F480E0D2 +:1023100090E00E940B1008951F93182F882309F452 +:10232000D0C0823859F40E94D00F81FDCAC089E321 +:102330000E94431A0E94F81A89E30CC0833879F48A +:102340000E94D00F80FDBDC083E50E94431A0E9409 +:10235000F81A83E50E94811A0E94F81AB2C08438E4 +:1023600059F40E94D00F82FDACC087E40E94431A4A +:102370000E94F81A87E4EECF8450813A50F4812FFE +:102380000E94DE21882309F09CC0812F0E94431AFD +:10239000E3CF812F805E883050F4177081E090E0A9 +:1023A00001C0880F1A95EAF70E94C31AD5CF812F72 +:1023B000855A8330A0F4153A19F481E890E00CC0F6 +:1023C000163A19F482E890E007C0173A19F080E055 +:1023D00090E002C083E890E00E94F30F72C0812F6A +:1023E000885A833108F06DC0183A19F482EE90E0F3 +:1023F00066C0193A19F489EE90E061C01A3A19F4EE +:102400008AEE90E05CC01B3A19F485EB90E057C06F +:102410001C3A19F486EB90E052C01B3B19F483EB95 +:1024200090E04DC01C3B19F484EB90E048C01D3A8D +:1024300019F487EB90E043C0103B19F48CEC90E06A +:102440003EC01E3A19F48DEC90E039C01F3A19F4E1 +:1024500083E891E034C0113B19F48AE891E02FC081 +:10246000123B19F482E991E02AC0133B19F484E984 +:1024700091E025C0143B19F481E292E020C0153BA5 +:1024800019F483E292E01BC0163B19F484E292E057 +:1024900016C0173B19F485E292E011C0183B19F4FD +:1024A00086E292E00CC0193B19F487E292E007C083 +:1024B0001A3B19F080E090E002C08AE292E00E94AC +:1024C0000B101F910895AF92BF92CF92DF92EF92BF +:1024D000FF920F931F93DF93CF93CDB7DEB72A9769 +:1024E0000FB6F894DEBF0FBECDBF5C01DE011196C2 +:1024F000FC0185E001900D928150E1F70B81F5011F +:10250000F580F2944FE0F422DE011696FE0131963A +:1025100085E001900D928150E1F73E812F81898500 +:102520009A85892B09F4F0C12F3F09F0C0C13F3FC4 +:1025300009F0BDC1E9C18D2D8F70222311F4182F30 +:1025400003C0182F1295107F002349F0112309F4BE +:1025500088C1812F0E94D31A0E94F81A82C18C2D43 +:102560000E943911112309F4CFC1812F0E94D91A79 +:102570000E94F81AC9C18D2D8F70203211F4182FC6 +:1025800003C0182F1295107FCC2021F0F1E0CF1658 +:1025900011F516C0002359F0FF2009F431C121E0E4 +:1025A000F21609F02DC1812F0E94E31AADC1FF2060 +:1025B00021F081E0F81609F4A7C10E94E61A26C1AD +:1025C000002329F0E1E0EF1508F49EC119C1FF20B6 +:1025D00009F09AC11BC1002321F0FF2009F410C1AA +:1025E00040C1FF2009F412C147C18D2D8695869503 +:1025F000837090E0009721F0019709F085C10AC02F +:10260000002319F0C601937002C080E090E00E94A0 +:10261000F30F7AC1002319F0C601937002C080E065 +:1026200090E00E940B1070C1002321F08C2D0E94BD +:10263000AB1E03C08C2D0E94151F0E94A91F64C1F0 +:102640008D2D837009F05EC0002309F05DC12C2D33 +:10265000229526952770220F220F8C2D8F70E82E41 +:10266000FF2400E010E0022E04C0EE0CFF1C001F4F +:10267000111F0A94D2F7C4FC05C060E070E080E04E +:1026800090E00FC06FE070E080E090E004C0660F63 +:10269000771F881F991F2A95D2F7609570958095AE +:1026A0009095D694D694F3E0DF224D2D50E0413042 +:1026B0005105A9F0423051051CF4452B49F024C1C5 +:1026C0004230510589F04330510509F01DC113C056 +:1026D0006E297F29802B912B0E941E1A15C16E290D +:1026E0007F29802B912B0BC06E297F29802B912B6A +:1026F0000E940D1A09C10E941E1AC801B7010E944A +:102700002F1A02C190E0002311F4969587958170ED +:1027100009F4FAC02C2D229526952770220F220F3E +:102720008C2D8F70E82EFF2400E010E0022E04C0F4 +:10273000EE0CFF1C001F111F0A94D2F7C4FC05C049 +:1027400060E070E080E090E00FC06FE070E080E05B +:1027500090E004C0660F771F881F991F2A95D2F753 +:102760006095709580959095D694D69423E0D2226A +:102770004D2D50E041305105A9F0423051051CF477 +:10278000452B49F0C1C04230510589F04330510515 +:1027900009F0BAC013C06E297F29802B912B0E94AB +:1027A0007119B2C06E297F29802B912B0BC06E2925 +:1027B0007F29802B912B0E946019A6C00E9471195D +:1027C000C801B7010E9482199FC080EFC81611F19D +:1027D0008C1528F0E0EECE1608F43FC009C0F2EFE9 +:1027E000CF1661F1CF1628F123EFC216B1F52BC039 +:1027F0001C2D1F708D2D8F71002331F00E94CF1979 +:10280000812F0E94321180C00E94AF19812F0E9437 +:102810002B117AC0002321F0FF2009F075C004C0FD +:1028200081E08F1508F470C08D2D8F710E9493196F +:102830006BC08D2D8F71002329F119C08D2D8F71E3 +:102840000023A9F01FC0002329F08D2D8F710E9455 +:10285000EB195AC00E94FB1957C0002359F0FF2002 +:1028600021F08C2D0E948C114FC08D2D8F710E94F4 +:10287000CF194AC0FF2021F08C2D0E94391144C08D +:102880008D2D8F710E94AF193FC0EFE0DE22C50190 +:102890006C2D4D2D0E942F030E94911835C0FFE032 +:1028A000DF22C5016C2D4D2D0E9453062DC089815C +:1028B0009A810E940C196C010E940B190E940A193E +:1028C0008D2D82958F7090E08530910509F4ACCE06 +:1028D0008630910554F4843091050CF086CE2D2D70 +:1028E000207F02970CF047CE26CE8C3091053CF429 +:1028F0008A3091050CF069CF089731F4A1CE8C3065 +:10290000910519F20F9759F22A960FB6F894DEBF87 +:102910000FBECDBFCF91DF911F910F91FF90EF9030 +:10292000DF90CF90BF90AF900895DF93CF93CDB756 +:10293000DEB72B970FB6F894DEBF0FBECDBF342F96 +:102940004F83252F588769877A878B87472F582F82 +:10295000FE01319686E0DF011D928A95E9F76B83CF +:1029600039832A834C835D83432F522F8D819E812F +:102970000E94D2172B960FB6F894DEBF0FBECDBFC4 +:10298000CF91DF9108950F931F930091620115C0BD +:1029900010E0F801EE0FFF1FE00FF11FEE0FFF1F19 +:1029A000ED59FE4F4081518162817381848195810F +:1029B0000E94D6100F5F1F4F0770809161010817AA +:1029C00039F71F910F91089540915B0150915C017F +:1029D00060915D0170915E0180915F019091600155 +:1029E0000E94D61008950F931F93CF93DF93809189 +:1029F000600182958F7009F06DC080915D01882320 +:102A000009F468C0609162010091610140915E012A +:102A100050915F0110915C0170915B01EA01C095DA +:102A2000D09555C04115510509F44FC01F3F49F4D9 +:102A300080E090E07F3F11F481E090E0882309F08E +:102A400044C0262F30E0F901EE0FFF1FE20FF31F05 +:102A5000DF01AA0FBB1FAD59BE4F11968C91119784 +:102A6000181799F58C91781781F5EE0FFF1FEB5928 +:102A7000FE4F8081882349F513968D919C91149780 +:102A80008417950718F0841B950B02C08C0F9D1FAF +:102A9000883C9105D0F4809160018F7080618093B3 +:102AA0006001F901EE0FFF1FE20FF31FEE0FFF1F92 +:102AB000E859FE4F80818F70806180838BE591E0C3 +:102AC0000E9463120E94C31405C06F5F6770601795 +:102AD00009F0A8CFDF91CF911F910F910895DF9258 +:102AE000EF92FF920F931F93DF93CF93CDB7DEB793 +:102AF0006B970FB6F894DEBF0FBECDBF8C01DC0123 +:102B00001296DC9012974C9111965C911197139646 +:102B1000ED90FC90149720915E0130915F016091DF +:102B20005C0170915B012115310509F4DBC16F3F38 +:102B300009F003C27F3F09F000C2D4C1E216F306D8 +:102B400040F0C701821B930B883C910508F0EEC052 +:102B500008C0209530952E0D3F1D283C310508F00A +:102B6000E5C080916001807F09F095C06F3F09F05A +:102B7000EAC17F3F09F0E7C115C0741799F4DD2061 +:102B800089F4809160018F708061809360010E9460 +:102B9000E4148BE591E00E94631280916001F801DA +:102BA0008583BCC1FD82EC825A834983DB82DE01CE +:102BB0001696FE01319685E001900D928150E1F765 +:102BC0006885DE011B96FE01369685E001900D9228 +:102BD0008150E1F72C853B858E859F85892B09F4F3 +:102BE00051C02F3F09F0B3C13F3F09F0B0C14AC007 +:102BF000FD82EC825A834983DB82DE011B96FE0153 +:102C0000319685E001900D928150E1F7FC847B853F +:102C10006D8580916201909161011FC0282F30E085 +:102C2000F901EE0FFF1FE20FF31FDF01AA0FBB1F19 +:102C3000AD59BE4F11968C911197F81651F48C91A5 +:102C4000781739F4EE0FFF1FEB59FE4F808168179C +:102C5000C9F42F5F3F4F822F87708917F9F68DC116 +:102C60009F7059F0442349F459C19F7031F0D80145 +:102C700015968C91807F09F451C1405E483008F46C +:102C80004DC148C1DD2009F449C1809160018160D6 +:102C90008093600143C16F3F09F05DC17F3F09F040 +:102CA0005AC114C0741791F4DD2081F48091600141 +:102CB000F8018583C8010E946312ABE5B1E0F80119 +:102CC00086E001900D928150E1F720C15A8349833B +:102CD00089819A810E94E610882309F41BC1DD20B6 +:102CE00009F418C130916001832F82958F7090E0B4 +:102CF00002979CF090915C0120915B01FE0170961F +:102D000086E0DF011D928A95E9F7998B288BFC8A72 +:102D1000EB8A3D8BCF010E946312ABE5B1E0F80175 +:102D200086E001900D928150E1F7EEC08091600144 +:102D3000807FA9F47E2DFD82EC825A834983DB8259 +:102D40006D2D8D810E94C7100BE511E0C8010E9416 +:102D5000631286E0F80111928A95E9F7C0C06F3FCF +:102D600009F0FDC07F3F09F0FAC014C0741791F458 +:102D7000DD2081F480916001D80115968C93C80103 +:102D80000E946312EBE5F1E086E0DF011D928A9577 +:102D9000E9F7BEC05A83498389819A810E94E6106F +:102DA000882309F4B7C0DD2009F4B4C03091600174 +:102DB000832F82958F7090E002979CF090915C0138 +:102DC00020915B01FE01769686E0DF011D928A95D7 +:102DD000E9F79F8B2E8BFA8EE98E3B8FCF010E94F5 +:102DE0006312ABE5B1E0F80186E001900D928150ED +:102DF000E1F78AC06F3F09F0B6C07F3F09F0B3C06A +:102E000071C0E216F30640F0C701821B930B883CA9 +:102E1000910508F053C008C0209530952E0D3F1D38 +:102E2000283C310508F04AC0DD2009F473C06F3F2B +:102E300009F09FC07F3F09F09CC029C0741739F585 +:102E40009091600190FD1AC0892F82958F70B1F02A +:102E5000F80195838F3031F08F5F8295807F9F706E +:102E6000982B9583C8010E946312ABE5B1E0F8018D +:102E700086E001900D928150E1F748C0ABE5B1E0EA +:102E8000F80186E001900D928150E1F741C05A832C +:102E9000498389819A810E94E610882349F0ABE535 +:102EA000B1E0F80186E001900D928150E1F72CC06D +:102EB000809160018160809360012CC07E2DFD8235 +:102EC000EC825A834983DB826D2D8D810E94C7106D +:102ED000EBE5F1E086E0DF011D928A95E9F70E94BB +:102EE000E4141CC0DD20B1F05A83498389819A81A2 +:102EF0000E94E610882371F0ABE5B1E0F80186E0AE +:102F000001900D928150E1F70E94F3140E94E414A5 +:102F100081E005C0C8010E946312FACF80E06B9681 +:102F20000FB6F894DEBF0FBECDBFCF91DF911F91DA +:102F30000F91FF90EF90DF90089580915D018823BD +:102F400009F458CFFBCD651709F02CCE16CE6130B1 +:102F500009F498CE4DCE651709F0B8CEA3CE65170B +:102F600009F018CF03CF80915D01882309F0BACF13 +:102F700048CF651709F08BCF61CF5A834983898188 +:102F80009A810E940C19482F892F82958F70282FC3 +:102F900030E0223031050CF463CE243031050CF0E2 +:102FA000B9CF63CE0F931F93DF93CF93CDB7DEB727 +:102FB0002C970FB6F894DEBF0FBECDBF4F83588756 +:102FC00069877A878B879C878E01095F1F4FC801AD +:102FD0000E946F158823D9F028853F818A859B85BB +:102FE000892B09F46BC02F3F49F480E090E03F3F0C +:102FF00011F481E090E0882309F060C04F8158858A +:1030000069857A858B859C850E94D61057C0DE0124 +:103010001196F80186E001900D928150E1F7F98157 +:10302000EA814C815D814115510509F447C0EF3FAC +:1030300009F04CC0FF3F09F049C040C0F983EA8362 +:103040005D834C83F901EE0FFF1FE20FF31FEE0FBC +:10305000FF1FED59FE4FDE01119686E00D900192A3 +:103060008150E1F7609361010E94C31427C0919FD2 +:10307000C00111248D599E4F0E946F15882309F4B9 +:1030800045C08091620190E0FC01EE0FFF1FE80F48 +:10309000F91FEE0FFF1FED59FE4F408151816281F4 +:1030A0007381848195810E94D6108091620190E0A5 +:1030B0000196877090708093620101C016E0909134 +:1030C000620180916101981791F620C080916101A1 +:1030D000282F30E02F5F3F4FB9016770707021508B +:1030E00030408091620190E06817790709F0A6CF1F +:1030F0000E9426111092610110926201EBE5F1E04D +:1031000086E0DF011D928A95E9F7D8CF2C960FB69D +:10311000F894DEBF0FBECDBFCF91DF911F910F910D +:103120000895CF92DF92EF92FF921F93CF93DF9398 +:10313000EC01009709F466C010E090EAC92E9FE008 +:10314000D92E81E0E82EF12CFE012196949194373E +:1031500048F4943008F044C0913079F0923009F08E +:1031600051C01BC0953709F437C0953750F1892FEE +:103170008458803708F046C037C0FE0121969491EC +:10318000892F805E883060F597708E2D01C0880F82 +:103190009A95EAF70E94D31A0FC0FE0121969491E6 +:1031A000892F805E883058F497708E2D01C0880F6B +:1031B0009A95EAF70E94D91A0E94F81A19C0892F25 +:1031C00015C0FE01249104C0C6010197F1F72150FA +:1031D0002223D1F721960CC0FE012196149108C03C +:1031E000892F0E948C1104C0892F8F770E9439117A +:1031F000212F04C0C6010197F1F72150222309F4C1 +:10320000A3CFF8CFDF91CF911F91FF90EF90DF9088 +:10321000CF90089508950895CF92DF92EF92FF9294 +:103220000F931F93CF93DF936C01E0909301F09085 +:1032300094010091950110919601809197019091D0 +:103240009801A0919901B0919A01E82AF92A0A2BD4 +:103250001B2BCFE1D0E0D801C7010C2E04C0B695DE +:10326000A795979587950A94D2F781709070892BCE +:1032700041F08C2FB6010E942B079C0181309105F3 +:1032800051F421978FEFCF3FD80729F780E0B6019F +:103290000E942B079C01822FDF91CF911F910F91EC +:1032A000FF90EF90DF90CF90089560939701709317 +:1032B00098018093990190939A010E9413110895A7 +:1032C0009B01AC01609197017091980180919901E7 +:1032D00090919A0162277327842795270E94551998 +:1032E00008959B01AC0160919701709198018091C4 +:1032F000990190919A0162237323842395230E945C +:10330000551908959B01AC01609197017091980146 +:103310008091990190919A01622B732B842B952BAC +:103320000E945519089521E030E040E050E004C0CB +:10333000220F331F441F551F8A95D2F780919701A2 +:1033400090919801A0919901B0919A01282739276D +:103350004A275B27CA01B9010E945519089521E047 +:1033600030E040E050E004C0220F331F441F551FDF +:103370008A95D2F720953095409550958091970188 +:1033800090919801A0919901B0919A012823392335 +:103390004A235B23CA01B9010E945519089521E00F +:1033A00030E040E050E004C0220F331F441F551F9F +:1033B0008A95D2F78091970190919801A0919901F7 +:1033C000B0919A01282B392B4A2B5B2BCA01B901EA +:1033D0000E945519089521E030E040E050E004C01B +:1033E000220F331F441F551F8A95D2F7CA01B90116 +:1033F0000E945519089560E070E080E090E00E941E +:1034000055190895609393017093940180939501E9 +:10341000909396010E94131108959B01AC01609155 +:10342000930170919401809195019091960162278A +:103430007327842795270E94021A08959B01AC01E7 +:103440006091930170919401809195019091960102 +:1034500062237323842395230E94021A08959B01FB +:10346000AC016091930170919401809195019091CC +:103470009601622B732B842B952B0E94021A0895C0 +:103480000E94021A0895382F809102018823E1F0EA +:1034900080910D018823C1F0832F869586958695AE +:1034A0008F3070F5E0910E01F0910F01E80FF11DE2 +:1034B000377081E090E002C0880F991F3A95E2F7DB +:1034C0002181282B21830895A0910E01B0910F0135 +:1034D000FD0120E08FEF9281931791F08F3F19F457 +:1034E000992309F4822F2F5F31962E30A1F78F3F59 +:1034F00039F0992787FD9095A80FB91F12963C9334 +:103500000895482F809102018823E9F080910D01F0 +:103510008823C9F0842F8695869586958F3020F56F +:10352000E0910E01F0910F01E80FF11D477081E06D +:1035300090E002C0880F991F4A95E2F7809521819B +:1035400082238183089520E030E0E0910E01F09124 +:103550000F01E20FF31F8281841709F412822F5F9B +:103560003F4F2E30310589F7089581E090E0E091DA +:103570000E01F0910F01E80FF91F108201968031C2 +:103580009105A9F708959091AB01982B9093AB0109 +:10359000089580959091AB0198239093AB01089585 +:1035A0001092AB0108959091AD01982B9093AD01CD +:1035B000089580959091AD0198239093AD01089561 +:1035C0001092AD0108958093AC0108951092AC0162 +:1035D0000895E0910E01F0910F0120E091E08181CA +:1035E00081112F5F9F5F31969031C9F7822F089527 +:1035F000E0910E01F0910F018091AB018083E09189 +:103600000E01F0910F0180819091AD01892B808393 +:103610009091AC01992369F0E0910E01F0910F01B6 +:103620008081892B80830E94E91A882311F00E94EF +:10363000E61A80910E0190910F010E94DD0F08950E +:103640009B01AC01AA27BB270097A105B10521F476 +:10365000DA01C90160E001C060E1292F3A2F4B2F48 +:103660005527211531054105510519F49C01AD017E +:1036700001C0685FDA01C90174E0B695A795979516 +:1036800087957A95D1F70097A105B10519F4DA016C +:10369000C90101C06C5F9C01AD01F2E056954795F0 +:1036A00037952795FA95D1F7211531054105510533 +:1036B00019F49C01AD0101C06E5F56954795379591 +:1036C0002795211531054105510509F06F5F862FBA +:1036D00008958091C501843009F11092AF0120E472 +:1036E00088E190E00FB6F894A895809360000FBE33 +:1036F0002093600083B7817F846083BF83B781603C +:1037000083BF7894889583B78E7F83BF88E10FB697 +:10371000F89480936000109260000FBE08950895A1 +:1037200008951F920F920FB60F9211248F939F93BB +:10373000AF93BF938091AF01882399F48091B0013A +:103740009091B101A091B201B091B3014196A11D38 +:10375000B11D8093B0019093B101A093B201B093D9 +:10376000B301BF91AF919F918F910F900FBE0F90BA +:103770001F9018950E9426110E94D00F0E946C087D +:1037800008951F930E948F1B0E9454050E94901B56 +:1037900010E0812F0E940405882311F081E004C00D +:1037A0001F5F1E30B1F780E01F91089582E084BD55 +:1037B00093E095BD9AEF97BD80936E0008958FB703 +:1037C000F8942091B0013091B1014091B201509133 +:1037D000B3018FBFC9010895EF92FF920F931F931A +:1037E000BC018FB7F894E090B001F090B101009166 +:1037F000B2011091B3018FBFA801970140705070C2 +:10380000CB01A0E0B0E0281739074A075B0720F09A +:103810009701261B370B05C09B01209530952E0D77 +:103820003F1DC9011F910F91FF90EF9008951F92C6 +:103830000F920FB60F9211248F939F93AF93BF9364 +:103840008091B0019091B101A091B201B091B3010A +:103850000196A11DB11D8093B0019093B101A09379 +:10386000B201B093B301BF91AF919F918F910F902F +:103870000FBE0F901F9018950E94B60CF89480E22E +:103880009EE420E931E0F9013197F1F70197D9F78A +:1038900087E090EBA7E0B0EB8093CE019093CF014F +:1038A000A093D001B093D1012CE088E190E00FB655 +:1038B000F894A895809360000FBE20936000FFCF1E +:1038C000EF92FF920F931F93CF93DF93082F10E097 +:1038D000812F0E940405C0E0D0E0E82EFF24C7013C +:1038E0000C2E02C0959587950A94E2F780FF09C0D7 +:1038F00080E06C2F712F0E940307081711F481E0FC +:1039000008C02196C630D10551F71F5F1E3001F760 +:1039100080E0DF91CF911F910F91FF90EF9008957C +:103920001F93182F8CE20E94601C882319F0812FAE +:103930000E94601C1F9108951F93CF93DF930E94F4 +:103940000A1E882311F40E94151E14E6C0E4DCE967 +:1039500005C00E945405CE010197F1F71150C8F738 +:1039600089E20E94901C882309F02FC18AE20E94FC +:10397000901C882311F00E94151E85E00E94901C67 +:10398000882311F00E943C1C0E94051E8093AE010A +:1039900087E00E94901C8823B9F18BE10E94901C63 +:1039A000882349F09091AE01892F8695809581708A +:1039B000880F9D7F26C08EE00E94901C882359F0BE +:1039C0009091AE01892F8695869580958170880F9C +:1039D000880F9B7F16C080E10E94901C9091AE01E1 +:1039E000882359F0892F86958695869580958170D4 +:1039F000880F880F880F977F04C0892F809581706A +:103A00009E7F982B9093AE018091AE010E94F51D90 +:103A10000E94FB1D8093BF0180EE0E94901C8823B2 +:103A200049F08091BF01982F909591708E7F892BDE +:103A30008093BF0189E30E94901C882359F09091E4 +:103A4000BF01892F869580958170880F9D7F982B67 +:103A50009093BF0182EE0E94901C882369F09091A0 +:103A6000BF01892F8695869580958170880F880F74 +:103A70009B7F982B9093BF0186EE0E94901C882319 +:103A800079F09091BF01892F8695869586958095CE +:103A90008170880F880F880F977F982B9093BF01B4 +:103AA00083EE0E94901C882369F09091BF01892FBA +:103AB00082958F70809581708295807F9F7E982BF4 +:103AC0009093BF0185E30E94901C882379F0909128 +:103AD000BF01892F82958695877080958170829528 +:103AE000880F807E9F7D982B9093BF0181E30E9479 +:103AF000901C882389F09091BF01892F829586952B +:103B000086958370809581708295880F880F807C60 +:103B10009F7B982B9093BF0181E10E94901C88238A +:103B200079F08091BF01982F991F9927991F21E063 +:103B300092279795992797958F77892B8093BF0127 +:103B40008091BF010E94E91D8091BF01881F8827D5 +:103B5000881F80930D0187E20E94901C182F8EE130 +:103B60000E94901C811112608FE10E94901C8111B3 +:103B7000146080E20E94901C8111186081E20E9412 +:103B8000901C8111106182E20E94901C81111062D0 +:103B900083E20E94901C8111106484E20E94901CB8 +:103BA00081111068112341F0812F0E94EF1D612FB8 +:103BB00070E080E090E007C00E94001E90E0A0E06E +:103BC000B0E0BC01CD010E94401ADF91CF911F915E +:103BD0000895682F84E090E00E9404240895682FDF +:103BE00083E090E00E9404240895682F82E090E032 +:103BF0000E940424089584E090E00E94F623089532 +:103C000083E090E00E94F623089582E090E00E9415 +:103C1000F623089580E090E00E94FE2320E08D5E70 +:103C20009E4F09F421E0822F089580E090E06DEE30 +:103C30007EEF0E94122482E090E060E00E94042463 +:103C400083E090E060E00E94042484E090E060E083 +:103C50000E94042485E090E060E00E94042408951E +:103C60008091BA0180FF0BC09091120185E0989F6E +:103C7000C0011124959587959595879530C081FF52 +:103C800009C09091120185E0989FC001112495957B +:103C9000879525C082FF03C0909112010DC08091CD +:103CA000B901882319F485E090E00895609113012B +:103CB00090911201861728F085E0989FC001112489 +:103CC0000EC0899F90011124C901880F991F880F88 +:103CD000991F820F931F70E00E94CF23CB01803881 +:103CE000910510F08FE70895009709F481E0089599 +:103CF0008091BA0180FF05C0809114018695869558 +:103D000018C081FF04C080911401869512C082FF03 +:103D100003C0809114010DC02091B901222319F430 +:103D200081E090E0089560911501809114012617BB +:103D300010F090E007C0289FC001112470E00E949D +:103D4000CF23CB018038910510F08FE708950097BD +:103D500009F481E00895803F21F40E94301E81958E +:103D600004C0813F29F40E94301E8093B60108955B +:103D7000823F21F40E94301E819504C0833F29F4C4 +:103D80000E94301E8093B5010895893F19F40E9466 +:103D9000781E05C08A3F31F40E94781E8195809379 +:103DA000B70108958B3F21F40E94781E819504C0CD +:103DB0008C3F29F40E94781E8093B8010895843FB7 +:103DC00021F48091B401816017C0853F21F4809176 +:103DD000B401826011C0863F21F48091B4018460F7 +:103DE0000BC0873F21F48091B401886005C0883FF3 +:103DF00031F48091B40180618093B40108958D3FC6 +:103E000021F48091BA01816005C08E3F31F4809128 +:103E1000BA0182608093BA0108958F3F29F480919E +:103E2000BA0184608093BA010895803F29F480919B +:103E3000B60187FF6FC007C0813F41F48091B60192 +:103E400018160CF067C01092B60164C0823F29F4C6 +:103E50008091B50187FF5EC007C0833F41F4809128 +:103E6000B50118160CF056C01092B50153C0893F29 +:103E700029F48091B70118163CF04CC08A3F39F400 +:103E80008091B70187FF46C01092B70143C08B3FB6 +:103E900029F48091B80187FF3DC006C08C3F39F4FA +:103EA0008091B8011816B4F51092B80133C0843F60 +:103EB00021F48091B4018E7F05C0853F31F480915B +:103EC000B4018D7F8093B40125C0863F21F4809199 +:103ED000B4018B7FF7CF873F21F48091B401877FB6 +:103EE000F1CF883F21F48091B4018F7EEBCF8D3FDD +:103EF00021F48091BA018E7F0BC08E3F21F4809116 +:103F0000BA018D7F05C08F3F29F48091BA018B7F64 +:103F10008093BA018091B501882371F48091B60134 +:103F2000882351F48091B701882331F48091B8013E +:103F3000882311F41092B9010895E4EBF1E085E0D3 +:103F4000DF011D928A95E9F71092B9011092BA012A +:103F5000089584EB91E00E94E80F0E94DF1B90938C +:103F6000BC018093BB0108951F938091BB01909188 +:103F7000BC010E94EC1BAC012091B901222321F06D +:103F80008091110190E006C0909110018AE0989F05 +:103F9000C00111244817590708F485C09091B50154 +:103FA000992369F48091B601882349F48091B7017F +:103FB000882329F48091B801882309F474C02F3F25 +:103FC00019F02F5F2093B901191624F40E94301EB6 +:103FD0008093B5018091B50187FF05C00E94301E16 +:103FE00081958093B5018091B601181624F40E9442 +:103FF000301E8093B6018091B60187FF05C00E94F4 +:10400000301E81958093B6016091B501662339F128 +:104010001091B601112319F1772767FD7095872F4D +:10402000972F0E94E02223E333E343E35FE30E9400 +:1040300044230E94AD226093B501612F772767FD6D +:104040007095872F972F0E94E02223E333E343E309 +:104050005FE30E9444230E94AD226093B6018091E9 +:10406000B701181624F40E94781E8093B70180913E +:10407000B70187FF05C00E94781E81958093B70124 +:104080008091B801181624F40E94781E8093B8011C +:104090008091B80187FF05C00E94781E81958093AA +:1040A000B8010E94A91F1F91089580E0089580E043 +:1040B0000895833099F1843030F4813069F0823092 +:1040C00009F06FC01AC0853009F44AC08530B8F1D4 +:1040D000863009F066C055C020911001822F90E013 +:1040E000860F911D8F3F910520F4260F209310011C +:1040F00008958FEF80931001089520911101822F70 +:1041000090E0860F911D8F3F910520F4260F20939C +:10411000110108958FEF80931101089520911201EC +:10412000822F90E0860F911D8F3F910520F4260F7E +:104130002093120108958FEF80931201089520912A +:104140001301822F90E0860F911D8F3F910520F47F +:10415000260F2093130108958FEF80931301089584 +:1041600020911401822F90E0860F911D8F3F9105C1 +:1041700020F4260F2093140108958FEF80931401EB +:10418000089520911501822F90E0860F911D8F3F99 +:10419000910520F4260F2093150108958FEF809349 +:1041A00015010895833031F1843030F4813061F0AD +:1041B000823009F04AC013C0853091F1853028F172 +:1041C000863009F042C037C080911001681720F492 +:1041D000861B80931001089510921001089580911C +:1041E0001101681720F4861B809311010895109225 +:1041F0001101089580911201681720F4861B8093A5 +:104200001201089510921201089580911301681708 +:1042100020F4861B809313010895109213010895D2 +:1042200080911401681720F4861B8093140108956F +:1042300010921401089580911501681720F4861BCF +:1042400080931501089510921501089521E030E042 +:1042500040E050E004C0220F331F441F551F8A95D1 +:10426000D2F7CA01B9010E94401A0E94261108958E +:104270008B3109F463C08C3100F58E3009F468C0CD +:104280008F3068F4873009F453C0883018F48630D2 +:1042900089F537C0883081F18B3061F58DC081316F +:1042A00009F478C0823118F4803121F55DC086317F +:1042B00009F482C08931F1F47FC0853309F473C0F9 +:1042C000863358F4873209F46EC0883218F48E3180 +:1042D00088F06BC0893271F466C0833430F48A335D +:1042E00008F065C0883331F467C0833409F45BC0DB +:1042F000883481F080E008950E94051E0E94FB1D15 +:1043000059C08091AE01807F8093AE0181E080939F +:10431000BD0108950E94261180E197E220E931E075 +:10432000F9013197F1F70197D9F70E943C1C42C07F +:104330008091AE0180FF2AC0807F29C08091AE01AC +:10434000982F969590959170292F220F8D7F19C0E7 +:104350008091AE01982F9695969590959170292F02 +:10436000220F220F8B7F0DC08091AE01982F969562 +:104370009695969590959170292F220F220F220FD6 +:10438000877F822B8093AE019923B1F08160809367 +:10439000AE0110C00E94261180910D0191E0892785 +:1043A00080930D0107C080E003C08D5101C0895387 +:1043B0000E94262181E0089581E008951F93182F1F +:1043C0008091BD01813089F0813020F0823009F088 +:1043D000BFC03BC0E0910E01F0910F01E081E131DF +:1043E00069F0E23209F0B6C009C0E0910E01F09127 +:1043F0000F01E081E13111F0E23249F4812F0E9496 +:1044000055208823F9F4812F0E943821A4C0812FE0 +:104410000E9457208823B1F4143161F0153128F43B +:104420001B3081F0103141F40AC0193219F01833F1 +:1044300019F408C01092BD0180E090E08CC082E0C9 +:104440008093BD0181E090E086C0193201F11A32FB +:1044500070F41431E1F0153120F4173009F064C024 +:1044600065C0812F8E51863008F05EC01BC01E349F +:1044700009F455C01F3420F41B3409F055C049C05D +:10448000113509F442C0123509F04EC03AC080918E +:10449000BE01882319F01092BE0146C081E08093CE +:1044A000BD0159C01232F9F0133260F41F3199F096 +:1044B000103218F41E3109F510C0103281F011329B +:1044C000E1F40FC0143299F0143278F0153289F00B +:1044D000163299F410C082E011C081E00FC083E071 +:1044E0000DC084E00BC085E009C086E007C087E00E +:1044F00005C088E003C089E001C080E08093BE0170 +:1045000013C08091BE0161E007C08091BE0161E0EF +:1045100009C08091BE016AE00E94592005C08091C7 +:10452000BE016AE00E94D22081E015C09AE090931B +:10453000100184E18093110183E080931201909334 +:10454000130188E08093140188E280931501ECCF79 +:104550001092BD0180E01F91089504D06894B111BC +:104560008DC0089570D088F09F5790F0B92F99278B +:10457000B751A0F0D1F0660F771F881F991F1AF06E +:10458000BA95C9F712C0B13081F077D0B1E0089583 +:1045900074C0672F782F8827B85F39F0B93FCCF304 +:1045A000869577956795B395D9F73EF49095809564 +:1045B000709561957F4F8F4F9F4F0895E89409C084 +:1045C00097FB3EF490958095709561957F4F8F4F46 +:1045D0009F4F9923A9F0F92F96E9BB279395F6955C +:1045E000879577956795B795F111F8CFFAF4BB0FDA +:1045F00011F460FF1BC06F5F7F4F8F4F9F4F16C03E +:10460000882311F096E911C0772321F09EE8872FC7 +:10461000762F05C0662371F096E8862F70E060E083 +:104620002AF09A95660F771F881FDAF7880F9695FC +:10463000879597F9089557FD9058440F551F59F0E5 +:104640005F3F71F04795880F97FB991F61F09F3F7F +:1046500079F087950895121613061406551FF2CFA8 +:104660004695F1DF08C0161617061806991FF1CFF8 +:1046700086957105610508940895E894BB2766271F +:104680007727CB0197F908950BD078C069D028F02F +:104690006ED018F0952309F05AC05FC01124EECFF8 +:1046A000CADFA0F3959FD1F3950F50E0551F629F8D +:1046B000F001729FBB27F00DB11D639FAA27F00D7B +:1046C000B11DAA1F649F6627B00DA11D661F829FA2 +:1046D0002227B00DA11D621F739FB00DA11D621F87 +:1046E000839FA00D611D221F749F3327A00D611DA4 +:1046F000231F849F600D211D822F762F6A2F112486 +:104700009F5750408AF0E1F088234AF0EE0FFF1FD8 +:10471000BB1F661F771F881F91505040A9F79E3F0F +:10472000510570F014C0AACF5F3FECF3983EDCF364 +:10473000869577956795B795F795E7959F5FC1F74C +:10474000FE2B880F911D9695879597F9089597F9F7 +:104750009F6780E870E060E008959FEF80EC089527 +:1047600000240A9416161706180609060895002450 +:104770000A9412161306140605060895092E0394CA +:10478000000C11F4882352F0BB0F40F4BF2B11F43E +:1047900060FF04C06F5F7F4F8F4F9F4F089597FB5F +:1047A000092E07260AD077FD04D00CD006D00020B1 +:1047B0001AF4709561957F4F0895F6F7909581955D +:1047C0009F4F0895AA1BBB1B51E107C0AA1FBB1F27 +:1047D000A617B70710F0A61BB70B881F991F5A958D +:1047E000A9F780959095BC01CD010895F999FECF68 +:1047F00092BD81BDF89A992780B50895A8E1B0E0EF +:1048000042E050E00C941924262FF999FECF1FBAEC +:1048100092BD81BD20BD0FB6F894FA9AF99A0FBEE9 +:10482000019608950E940424272F0C940524DC018E +:10483000CB01FC01F999FECF06C0F2BDE1BDF89AAB +:10484000319600B40D9241505040B8F70895F89455 +:02485000FFCF98 +:1048520020020172080709E108AB087508019B01F3 +:064862000A14030A0828F5 +:00000001FF diff --git a/keyboard/ergodox_ez/keymaps/csharp_dev/csharp_dev.png b/keyboard/ergodox_ez/keymaps/csharp_dev/csharp_dev.png Binary files differnew file mode 100644 index 000000000..5c4c7c7c1 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/csharp_dev/csharp_dev.png diff --git a/keyboard/ergodox_ez/keymaps/csharp_dev/csharp_dev_legend.png b/keyboard/ergodox_ez/keymaps/csharp_dev/csharp_dev_legend.png Binary files differnew file mode 100644 index 000000000..dbc51b79b --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/csharp_dev/csharp_dev_legend.png diff --git a/keyboard/ergodox_ez/keymaps/csharp_dev/keymap.c b/keyboard/ergodox_ez/keymaps/csharp_dev/keymap.c new file mode 100644 index 000000000..537b15eea --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/csharp_dev/keymap.c @@ -0,0 +1,282 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define QWERTY 1 // qwerty keys +#define FKEYS 2 // F keys + macros + +#define MACRO_PUBLIC 10 +#define MACRO_PRIVATE 11 + +#define MACRO_STATIC 12 +#define MACRO_CONST 13 + +#define MACRO_VOID 14 +#define MACRO_VAR 15 +#define MACRO_STRING 16 + +#define MACRO_INT 17 +#define MACRO_FLOAT 18 +#define MACRO_BOOL 19 + +#define MACRO_RETURN 20 +#define MACRO_NULL 21 +#define MACRO_BREAK 22 + +#define MACRO_TODO 23 +#define MACRO_NEW 24 +#define MACRO_PARENTHESE 25 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ( | 1 | 2 | 3 | 4 | 5 | " | | Save | 6 | 7 | 8 | 9 | 0 | [ | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | ) | Q | W | E | R | T |Bkspa | | Del | Y | U | I | O | P | ] | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | { | A | S | D | F | G |------| |------| H | J | K | L | _ | Redo | + * |--------+------+------+------+------+------| / | | ; |------+------+------+------+------+--------| + * | } |Z~Alt | X | C | V | B | | | | N | M | ' | ! | ? | Undo | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Tab~CL| < | > | | | & | | = | + | - | * | L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * |. ~L1 | , ~L2| |Home~L1| End~L2| + * ,------|------|------| |------+--------+------. + * | | | Copy | | UP | | | + * | Enter| Space|------| |------| Space |Enter | + * | ~LSFT| ~WIN | Past | | DOWN | ~WIN | ~LSFT| + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_LPRN, KC_1, KC_2, KC_3, KC_4, KC_5, LSFT(KC_QUOTE), + KC_RPRN, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_BSPACE, + KC_LCBR, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_RCBR, ALT_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_SLASH, + CTL_T(KC_TAB), LSFT(KC_COMMA),LSFT(KC_DOT),KC_PIPE,KC_AMPR, + LT(1,KC_DOT), LT(2,KC_COMM), + LCTL(KC_C), + SFT_T(KC_ENTER),GUI_T(KC_SPACE),LCTL(KC_V), + // right hand + LCTL(KC_S) , KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRACKET, + KC_DELETE, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RBRACKET, + KC_H, KC_J, KC_K, KC_L, KC_UNDS,LCTL(KC_Y), + KC_SCOLON,KC_N, KC_M, KC_QUOTE ,KC_EXLM , LSFT(KC_SLASH), LCTL(KC_Z), + KC_EQUAL,KC_PLUS , KC_MINUS,KC_ASTR , TG(1), + LT(2,KC_HOME), LT(1,KC_END), + KC_UP, + KC_DOWN,GUI_T(KC_SPACE), SFT_T(KC_ENTER) + ), +/* Keymap 1: QWERTY layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | - | | = | 6 | 7 | 8 | 9 | 0 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | | | | Y | U | I | O | P | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Esc | A | S | D | F | G |------| |------| H | J | K | L | ; | ' | + * |--------+------+------+------+------+------| Tab | | Esc |------+------+------+------+------+--------| + * | LSHFT | Z | X | C | V | B | | | | N | M | , | . | / | \ | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | CTRL | WIN | ALT |ALT GR| Esc | | PgUp | PgDw | Ins | PtSc | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | Cut | | | | + * ,------|------|------| |------+--------+------. + * | | | | | | | | + * | | |------| |------| Left | Right| + * | | | | | | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[QWERTY] = KEYMAP( // layer 2 : QWERTY + // left hand + KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINUS, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TRNS, + KC_ESCAPE, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_TAB, + KC_LCTRL, KC_LGUI,KC_LALT, KC_RALT, KC_ESCAPE, + KC_TRNS, LCTL(KC_X), + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_EQUAL , KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_TRNS, + KC_H, KC_J, KC_K, KC_L, KC_SCOLON, KC_QUOTE, + KC_ESCAPE,KC_N, KC_M, KC_TRNS,KC_DOT , KC_SLASH, KC_NONUS_BSLASH, + KC_PGUP , KC_PGDOWN,KC_INSERT ,KC_PSCREEN, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS,KC_LEFT, KC_RIGHT + ), +/* Keymap 2: F keys + macros + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | Calc | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | |Public|Static|string|int |return| | | |//TODO| | | | | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | |Privat|Const |var |float |null |------| |------|new | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | |void |bool |break;| | | |(); | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | Alt | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | Cut | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// FKEYS + MACROS +[FKEYS] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,M(MACRO_PUBLIC),M(MACRO_STATIC), M(MACRO_STRING),M(MACRO_INT),M(MACRO_RETURN),KC_TRNS, + KC_TRNS,M(MACRO_PRIVATE),M(MACRO_CONST), M(MACRO_VAR),M(MACRO_FLOAT),M(MACRO_NULL), + KC_TRNS,KC_TRNS,KC_TRNS,M(MACRO_VOID),M(MACRO_BOOL),M(MACRO_BREAK),KC_TRNS, + KC_TRNS,KC_LALT,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_CALCULATOR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, M(MACRO_TODO), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F12, + M(MACRO_NEW), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, M(MACRO_PARENTHESE), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), + + +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(QWERTY) // FN1 - Momentary Layer 1 +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case MACRO_PUBLIC: + if (record->event.pressed) { + return MACRO( T(P), T(U), T(B), T(L), T(I), T(C), T(SPACE),END); + } + break; + case MACRO_PRIVATE: + if (record->event.pressed) { + return MACRO( T(P), T(R), T(I), T(V), T(A), T(T), T(E), T(SPACE),END); + } + break; + case MACRO_STATIC: + if (record->event.pressed) { + return MACRO( T(S), T(T), T(A), T(T), T(I), T(C), T(SPACE), END); + } + break; + case MACRO_CONST: + if (record->event.pressed) { + return MACRO( T(C), T(O), T(N), T(S), T(T), T(SPACE), END); + } + break; + case MACRO_VOID: + if (record->event.pressed) { + return MACRO( T(V), T(O), T(I), T(D), T(SPACE), END); + } + break; + case MACRO_VAR: + if (record->event.pressed) { + return MACRO( T(V), T(A), T(R), T(SPACE), END); + } + break; + case MACRO_STRING: + if (record->event.pressed) { + return MACRO( T(S), T(T), T(R), T(I), T(N), T(G), T(SPACE), END); + } + break; + case MACRO_BOOL: + if (record->event.pressed) { + return MACRO( T(B), T(O), T(O), T(L), T(SPACE), END); + } + break; + case MACRO_INT: + if (record->event.pressed) { + return MACRO( T(I), T(N), T(T), T(SPACE), END); + } + break; + case MACRO_FLOAT: + if (record->event.pressed) { + return MACRO( T(F), T(L), T(O), T(A),T(T),T(SPACE), END); + } + break; + case MACRO_RETURN: + if (record->event.pressed) { + return MACRO( T(R), T(E), T(T), T(U),T(R),T(N), END); + } + break; + case MACRO_NULL: + if (record->event.pressed) { + return MACRO( T(N), T(U), T(L), T(L), END); + } + case MACRO_BREAK: + if (record->event.pressed) { + return MACRO( T(B), T(R), T(E), T(A), T(K), T(SCOLON), END); + } + break; + case MACRO_TODO: + if (record->event.pressed) { + return MACRO( T(SLASH), T(SLASH), D(LSHIFT) ,T(T), T(O), T(D), T(O),U(LSHIFT), T(SPACE),END); + } + break; + case MACRO_NEW: + if (record->event.pressed) { + return MACRO( T(N), T(E), T(W), T(SPACE), END); + } + break; + case MACRO_PARENTHESE: + if (record->event.pressed) { + return MACRO( D(LSHIFT),T(LPRN), T(RPRN),U(LSHIFT), T(SCOLON), END); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void * matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void * matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboard/ergodox_ez/keymaps/csharp_dev/readme.md b/keyboard/ergodox_ez/keymaps/csharp_dev/readme.md new file mode 100644 index 000000000..3ceb77eca --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/csharp_dev/readme.md @@ -0,0 +1,46 @@ +# ErgoDox EZ C# Developer configuration + +## Changelog + +* Feb 12, 2016 (V1): + * First version commit + +## About +This layout was conceived in an attempt to optimise keyboard layout for developers (C# more specifically, but it can work with most of other languages), and limit the keys required to perform the most frequent actions. + +I came to the realization that my main tool as a developer, the qwerty keyboard was something that did not evolved at its core in almost 150 years. +There are a lot of reasons to this, and it would be a massive entreprise to change a standard so strongly anchored, but I wanted to give it a try and see how would look an input device dedicated to developers, more specifically a C# developer in my case. +The biggest flaw in standard QWERTY keyboards was that I always needed to perform key combination to access commonly used characters or actions. Think about it a minute, how many times a day do you press a modifier key such as Ctrl or Shift, it's insane and could be so easily optimized to require only one key press. + +Then I came across the ErgoDox EZ project, that allowed a full customization of its firmware, and a unique 2 parts design. + +![CSharpDev](csharp_dev_legend.png) + +## Layout design principles +* No key combination required for the most common input characters ( (),[],{},<> ... ) +* No key combination required for the most common actions (copy/paste/undo/save) +* Regroup characters by usage ( + - * = ...) +* Easy access to the most commonly used characters: ; / " . , +* Preregistered macro for the most common C# langage instructions: public / private / string / int / float ... + +## Why is it specific to C Sharp +I defined the characters priority based on their usage in C# language, most of this characters are also used in other coding languages but it may require some tweaking. +For example there is no direct access to ~ or $ keys which can be very common in some languages. +Note it is also specific to Windows environement as the shortcut used in action keys would not work on Mac Os + +## In usage +It was relatively easy to get used to the layout, but it's hard for me to define how easy it was as I was getting used to a blank Ergodox keyboard at the same time. +Still it's extremely satisfying to Save your file with just one easily accessible key or to have one big key to end your code line ( ; ) + +## Improvements +This layout was shared after a bunch of iterations and only once I was happy with it. +Still there are many way to improve or iterate on this: +* Make it language agnostic +* Check and compile language's keyboard's heatmaps to statistically define keys priority (e.g. https://dzone.com/articles/most-pressed-keys-various ) +* QWERTY is still not the most efficient typing layout, I would like to create a Dvorak based similar layout in a near futur +* Layout 1 is mainly here for safety, most of its unique keys could be transfered to Layout 2 and it could then be removed + +## Issues +One of the issues encountered while creating this layout was that I did not find a way to have a key to send a modifier on hold, and a key combination while pressed (e.g. I can't set a Key to do Save (Ctrl + S) when pressed and Shift modifier when hold ) + + diff --git a/keyboard/ergodox_ez/keymaps/default/default.hex b/keyboard/ergodox_ez/keymaps/default/default.hex index 81fc2ee70..14f5b7c79 100644 --- a/keyboard/ergodox_ez/keymaps/default/default.hex +++ b/keyboard/ergodox_ez/keymaps/default/default.hex @@ -1,17 +1,17 @@ -:100000000C9400070C9444070C9444070C94440788
-:100010000C9444070C9444070C9444070C94440734
-:100020000C9444070C9444070C945B120C942D130D
-:100030000C9444070C9444070C9444070C94440714
-:100040000C9444070C94072C0C9444070C9444071C
-:100050000C9444070C940E220C9444070C9444070F
-:100060000C9444070C9444070C9444070C944407E4
-:100070000C9444070C9444070C9444070C944407D4
-:100080000C9444070C9444070C9444070C944407C4
-:100090000C9444070C9444070C9444070C944407B4
-:1000A0000C9444070C9444070C9444079213B41323
-:1000B0009F14B4139F14F61319149F146E14811413
-:1000C000CF17CF17FD17FD173F187B187B1A7B1A28
-:1000D00093187B1A8A198A19551A7B1A7B1A691A7E
+:100000000C9465020C94A9020C94A9020C94A90208
+:100010000C94A9020C94A9020C94A9020C94A902B4
+:100020000C94A9020C94A9020C94C50B0C94970C87
+:100030000C94A9020C94A9020C94A9020C94A90294
+:100040000C94A9020C9422210C94A9020C94A902EC
+:100050000C94A9020C94C41A0C94A9020C94A90241
+:100060000C94A9020C94A9020C94A9020C94A90264
+:100070000C94A9020C94A9020C94A9020C94A90254
+:100080000C94A9020C94A9020C94A9020C94A90244
+:100090000C94A9020C94A9020C94A9020C94A90234
+:1000A0000C94A9020C94A9020C94A902FC0C1E0D3C
+:1000B000090E1E0D090E600D830D090ED80DEB0DF6
+:1000C000D810D81006110611481184118413841316
+:1000D0009C118413931293125E138413841372136E
:1000E0000000F0A12E004C002A00E1003581000044
:1000F0001E00140004001D7134004D001F001A0082
:1001000016001B00E1042A0020000800070006007A
@@ -22,7 +22,7 @@ :10015000240018000D00100052004B0025000C0078
:100160000E00360051002800260012000F00370054
:100170002F002B00270013003382387130004E000F
-:100180002D0031003400E500C10000000100010035
+:100180002D0031003478E500C100000001000100BD
:1001900001000100010000003A001E0220022202BC
:1001A000010001003B001F022102230201000100A7
:1001B0003C002F0226022F00010001003D0030020A
@@ -43,1430 +43,1080 @@ :1002A0000100010001000100A9000100010001009E
:1002B0000100AC00AA00B600010001000100AB0083
:1002C000A80001000100010001000100010001007F
-:1002D00001000100AE000100010000000A0025300D
-:1002E000313662003A200025303258000A722F63FE
-:1002F0002030313233343536373839414243444582
-:10030000460A000A002530325800626F756E636538
-:10031000213A20006C6566742073696465206174FD
-:100320007461636865640A006C656674207369644F
-:1003300065206E6F7420726573706F6E64696E678E
-:100340000A00747279696E6720746F207265736534
-:1003500074206D637032333031380A000A444542EC
-:1003600055473A20656E61626C65642E0A005B73C6
-:100370005D004B6579626F617264207374617274A1
-:100380002E0A005B575D005B535D005B525D005BB6
-:10039000445D005B435D0016034500720067006F1B
-:1003A0000044006F007800200045005A000000164D
-:1003B000034500720067006F0044006F0078002062
-:1003C0000045005A0000000403090409028D0005DD
-:1003D0000100A0FA09040000010301010009211134
-:1003E000010001223F000705810308000A090401FA
-:1003F000000103010200092111010001224D000743
-:1004000005820308000A0904020001030000000934
-:1004100021110100012236000705830308000A09A3
-:100420000403000203000000092111010001222041
-:1004300000070584032000010705040320000109CB
-:100440000404000103000000092111010001223908
-:1004500000070585031000011201100100000008CB
-:10046000EDFE071301000102000105010906A101CB
-:10047000050719E029E71500250195087501810296
-:100480000508190129059505750191029501750366
-:100490009101050719002977150025019578750147
-:1004A0008102C00631FF0974A1010975150025FFFD
-:1004B0009520750881020976150025FF952075089D
-:1004C0009102C005010980A101850216010026B72D
-:1004D000001A01002AB700751095018100C0050CB3
-:1004E0000901A1018503160100269C021A01002AB8
-:1004F0009C02751095018100C005010902A1010946
-:1005000001A10005091901290515002501950575A9
-:100510000181029501750381010501093009311539
-:1005200081257F95027508810609381581257F95FB
-:100530000175088106050C0A38021581257F950191
-:1005400075088106C0C005010906A101050719E06B
-:1005500029E71500250195087501810295017508A7
-:10056000810105081901290595057501910295017B
-:10057000750391010507190029FF150025FF950650
-:1005800075088100C00A002530325820006B65795B
-:10059000626F6172645F7265706F72743A20000AF4
-:1005A0000025303258006B6579626F6172645F7349
-:1005B00065745F6C65643A200064656C5F6B657997
-:1005C0005F6269743A2063616E27742064656C3AD7
-:1005D00020253032580A006164645F6B65795F6280
-:1005E00069743A2063616E2774206164643A20253F
-:1005F0003032580A00646F6E652E0A00626F6F67B2
-:100600006D61676963207363616E3A202E2E2E2020
-:1006100000290A002575002F002575005D2800259A
-:10062000640020002564002000256400200025646B
-:10063000007C0025303258006D6F7573656B6579ED
-:10064000205B62746E7C782079207620685D287249
-:1006500065702F61636C293A205B006D6B5F776872
-:1006600065656C5F74696D655F746F5F6D6178203F
-:100670003D2025640A006D6B5F776865656C5F6D72
-:1006800061785F7370656564203D2025640A006DA4
-:100690006B5F74696D655F746F5F6D6178203D207D
-:1006A00025640A006D6B5F6D61785F7370656564CA
-:1006B000203D2025640A006D6B5F696E746572765B
-:1006C000616C203D2025640A006D6B5F64656C6180
-:1006D00079203D2025640A006D6B5F776865656C45
-:1006E0005F74696D655F746F5F6D6178203D202573
-:1006F000640A006D6B5F776865656C5F6D61785F3C
-:100700007370656564203D2025640A006D6B5F741D
-:10071000696D655F746F5F6D6178203D2025640AA7
-:10072000006D6B5F6D61785F7370656564203D205F
-:1007300025640A006D6B5F696E74657276616C206A
-:100740003D2025640A006D6B5F64656C6179203D16
-:100750002025640A000A00257500363A207768656E
-:10076000656C5F74696D655F746F5F6D61783A2069
-:10077000000A00257500353A20776865656C5F6D65
-:1007800061785F73706565643A20000A0025750022
-:10079000343A2074696D655F746F5F6D61783A20DB
-:1007A000000A00257500333A206D61785F7370652B
-:1007B00065643A20000A00257500323A20696E749B
-:1007C000657276616C286D73293A20000A002575E0
-:1007D00000313A2064656C6179282A31306D7329C3
-:1007E0003A20000A092D2056616C756573202D0A88
-:1007F000004D3E004D25643E20003F00736574208F
-:1008000064656661756C740A00433E200077686514
-:1008100072652064656C74613A20637572736F72DF
-:100820003D25642C20776865656C3D25640A536519
-:100830006520687474703A2F2F656E2E77696B6926
-:1008400070656469612E6F72672F77696B692F4DD0
-:100850006F7573655F6B6579730A000A092D204D0A
-:100860006F7573656B6579202D0A4553432F713A77
-:1008700009717569740A313A0964656C6179282ACD
-:1008800031306D73290A323A09696E746572766186
-:100890006C286D73290A333A096D61785F7370654E
-:1008A00065640A343A0974696D655F746F5F6D61E0
-:1008B000780A353A09776865656C5F6D61785F73B2
-:1008C000706565640A363A09776865656C5F7469B6
-:1008D0006D655F746F5F6D61780A0A703A097072B6
-:1008E000696E742076616C7565730A643A09736584
-:1008F000742064656661756C74730A75703A092BAF
-:10090000310A646F776E3A092D310A706775703A53
-:10091000092B31300A7067646F776E3A092D3130D8
-:100920000A0A7370656564203D2064656C746120FB
-:100930002A206D61785F7370656564202A202872B3
-:100940006570656174202F2074696D655F746F5FD9
-:100950006D6178290A003F004D3E2000433E200093
-:100960004C25640A000A092D20436F6E736F6C6575
-:10097000202D0A4553432F713A09717569740A6D28
-:100980003A096D6F7573656B65790A000A092D2048
-:100990004D61676963202D0A643A09646562756771
-:1009A0000A783A096465627567206D6174726978C6
-:1009B0000A6B3A096465627567206B6579626F61DD
-:1009C00072640A6D3A096465627567206D6F7573AC
-:1009D000650A763A0976657273696F6E0A733A0929
-:1009E0007374617475730A633A09636F6E736F6C25
-:1009F00065206D6F64650A302D343A096C61796544
-:100A000072302D34284631302D4634290A50617514
-:100A1000733A09626F6F746C6F616465720A653A4C
-:100A200009656570726F6D0A6E3A094E4B524F0A36
-:100A30007A3A09736C656570204C4544207465737F
-:100A4000740A000A002575002E6E6B726F3A200042
-:100A50000A002575002E737761705F6261636B73A6
-:100A60006C6173685F6261636B73706163653A2088
-:100A7000000A002575002E737761705F67726176DA
-:100A8000655F6573633A20000A002575002E6E6F5E
-:100A90005F6775693A20000A002575002E7377613B
-:100AA000705F72616C745F726775693A20000A004A
-:100AB0002575002E737761705F6C616C745F6C6775
-:100AC00075693A20000A002575002E636170736C09
-:100AD0006F636B5F746F5F636F6E74726F6C3A20DD
-:100AE000000A002575002E737761705F636F6E7466
-:100AF000726F6C5F636170736C6F636B3A20000A96
-:100B00000025303258006B65796D61705F636F6EE0
-:100B10006669672E7261773A20000A002575002EFB
-:100B20006D6F7573653A20000A002575002E6B65A0
-:100B300079626F6172643A20000A002575002E6D9B
-:100B400061747269783A20000A002575002E656E7E
-:100B500061626C653A20000A0025303258006465F5
-:100B60006275675F636F6E6669672E7261773A20A0
-:100B7000000A0025750064656661756C745F6C61C0
-:100B80007965723A20003F004E4B524F3A206F6613
-:100B9000660A004E4B524F3A206F6E0A0074696D20
-:100BA00065725F636F756E743A202530346C580A35
-:100BB000006B6579626F6172645F6E6B726F3A2071
-:100BC00025580A006B6579626F6172645F69646CB5
-:100BD000653A2025580A006B6579626F6172645F1F
-:100BE00070726F746F636F6C3A2025580A00686FDB
-:100BF00073745F6B6579626F6172645F6C65647357
-:100C000028293A2025580A000A092D2053746174B6
-:100C10007573202D0A004743433A20342E382E3274
-:100C2000204156522D4C4942433A20312E382E3025
-:100C3000204156525F415243483A20617672350A4C
-:100C4000004F5054494F4E533A204C554641204294
-:100C50004F4F544D41474943204D4F5553454B4508
-:100C6000592045585452414B455920434F4E534FFC
-:100C70004C4520434F4D4D414E44204E4B524F204A
-:100C80003531320A004255494C443A2031656530CD
-:100C9000383037202831353A33363A3539204665F1
-:100CA000622020312032303136290A005649443A38
-:100CB00020307846454544284572676F446F782058
-:100CC000455A29205049443A20307831333037286A
-:100CD0004572676F446F7820455A29205645523A2D
-:100CE000203078303030310A00444553433A207484
-:100CF0002E6D2E6B2E206B6579626F61726420669B
-:100D000069726D7761726520666F72204572676FD8
-:100D1000646F780A000A092D2056657273696F6E38
-:100D2000202D0A000A6D6F7573653A206F66660A9A
-:100D3000000A6D6F7573653A206F6E0A000A6B6565
-:100D400079626F6172643A206F66660A000A6B65A9
-:100D500079626F6172643A206F6E0A000A6D617485
-:100D60007269783A206F66660A000A6D617472696A
-:100D7000783A206F6E0A000A64656275673A206FE0
-:100D80006E0A000A64656275673A206F66660A003B
-:100D90000A0A626F6F746C6F616465722E2E2E206A
-:100DA00000433E20006565636F6E6669673A0A001E
-:100DB000536C656570204C454420746573740A005B
-:100DC0000000000000000000000000010204060A0C
-:100DD0000F17202C3A4A5D71879DB3C7DAE9F5FCFD
-:100DE000FFFCF5E9DAC7B39D87715D4A3A2C2017FD
-:100DF0000F0A0604020100000000000000000000CD
-:100E000011241FBECFEFDAE0DEBFCDBF04B603FE74
-:100E100024C08091F9019091FA01A091FB01B09159
-:100E2000FC018730904BA740B04BB9F41092F90108
-:100E30001092FA011092FB011092FC0114BE84B7CB
-:100E4000877F84BF88E10FB6F8948093600010928A
-:100E500060000FBEE0E0FFE3099511E0A0E0B1E023
-:100E6000EAEAFBE502C005900D92AA33B107D9F773
-:100E700011E0AAE3B1E001C01D92A93FB107E1F77B
-:100E80000E94950F0C94D32D0C940000FF93EF93C8
-:100E9000E0913A01F0913B01309709F00995EF910B
-:100EA000FF910895FC018591803011F0EFDFFBCFB9
-:100EB0000895FF27E0E230E247FF0CC0419597FF1D
-:100EC00009C0EDE26095709580959095611D711D4A
-:100ED000811D911D27FF02C0219530E350E2AA2712
-:100EE000660F771F881F991FAA1FA41710F0A41B55
-:100EF00063955A95A9F7AA3008F0A95FA05DAF9352
-:100F0000F395611571058105910541F7ED3211F4F5
-:100F1000EF93F395F21718F43F93F395FBCF8F916E
-:100F2000B5DFFA95E1F70895E991F991859180305F
-:100F300021F0853219F0AADFF9CF089520E0E89476
-:100F400055915532C1F3503311F4689455915A3389
-:100F500048F4505390F3220F022E220F220F200D3F
-:100F6000250FF4CF0EF4219589919991533619F3F9
-:100F7000533729F1533559F1BC0188279927E89453
-:100F80005C3621F48991999168945591543639F4DD
-:100F900046EF7EF077FF0DC08FEF9FEF0AC0553709
-:100FA0004AE039F0583540E121F0523642E009F08C
-:100FB0000895FF93EF937DDFEF91FF91B7CFFF93FC
-:100FC000EF93FC0181918030B9F360DFFBCFFF9399
-:100FD000EF9368DFF1CFDF93CF93CDB7DEB72596E0
-:100FE000A3DFCF91DF91089561110BC0FC018281D5
-:100FF000882321F085EE0E94631603C085EE0E94CF
-:101000002B1780E090E0089508956091BC017091E5
-:10101000BD018091BE019091BF010E940E215698A2
-:101020005E9825982D9826982E9827982F9881308D
-:1010300019F0823021F00895259A2D9A0895269A64
-:101040002E9A089585E098E0892B11F00E940508FA
-:1010500080E090E0089556985E9825982D982698FF
-:101060002E9827982F988FEF90E090938900809387
-:10107000880090938B0080938A0090938D008093DA
-:101080008C00259A2D9A2FEF80E792E02150804026
-:101090009040E1F700C00000269A2E9A2FEF80E7DB
-:1010A00092E0215080409040E1F700C00000279A74
-:1010B0002F9A2FEF80E792E0215080409040E1F797
-:1010C00000C0000025982D982FEF80E792E0215076
-:1010D00080409040E1F700C0000026982E982FEF46
-:1010E00080E792E0215080409040E1F700C000008E
-:1010F00027982F9856985E9825982D9826982E9880
-:1011000027982F98089589EA8093800089E080933A
-:10111000810024982C983F988AB18F748AB96E9870
-:10112000479A8BB1806B8BB9769A0E942B0884E02A
-:1011300098E0892B11F00E94040880E090E0089567
-:1011400080E28093000180913C0181110EC00E94D9
-:10115000EF0881E080933C012FEF83ED90E3215075
-:1011600080409040E1F700C0000080E40E94F50854
-:101170008093000181112EC00E941F0980930001FD
-:10118000811128C00E941F0980930001811122C093
-:101190008FE30E941F098093000181111BC00E94F0
-:1011A000170980E40E94F50880930001811112C0A4
-:1011B0008CE00E941F098093000181110BC00E94E6
-:1011C0001F0980930001811105C08FE30E941F0950
-:1011D000809300010E9417098091000108951092E8
-:1011E000B9008AE08093B800089594EA9093BC0017
-:1011F0009091BC0097FFFCCF9091B900987F9830F8
-:1012000021F0903111F081E008958093BB0084E8D3
-:101210008093BC008091BC0087FFFCCF8091B90017
-:10122000887F883111F0803471F780E0089584E977
-:101230008093BC008091BC0084FDFCCF0895809316
-:10124000BB0084E88093BC008091BC0087FFFCCF8A
-:101250009091B900987F81E0983209F480E0089578
-:1012600084E88093BC008091BC0087FFFCCF809114
-:10127000BB00089580910001811115C080E40E9497
-:10128000F5088093000181110CC082E10E941F09C2
-:1012900080930001811105C08FEF0E941F09809388
-:1012A00000010E94170984B1807F84B985B1807FD5
-:1012B00085B98AB1837F8AB98BB1837F8BB93E9818
-:1012C000469808950E94A008809300010E943A0960
-:1012D00080B38C7080BB81B3836F81BBECE4F1E0A1
-:1012E000AEE3B1E011921D9281E0EA35F807D1F743
-:1012F00083E898E0892B11F00C94830808959F925D
-:10130000AF92BF92CF92DF92EF92FF920F931F9313
-:10131000CF93DF93809100018823E1F080913D011C
-:101320008F5F80933D01811115C082E493E00E949C
-:1013300052070E94A00880930001882329F088E2C8
-:1013400093E00E94520706C084E193E00E94520796
-:101350000E942B080EE311E0C0E0D0E0BB24B39460
-:1013600082E0A82ECC24C394D12C25E0E22E23E0E9
-:10137000F22EC73000F580910001811162C080E437
-:101380000E94F50880930001811112C082E10E9441
-:101390001F098093000181110BC0C6010C2E01C0F2
-:1013A000880F0A94EAF780950E941F098093000134
-:1013B0000E94170946C0CA30A1F028F4C83059F07D
-:1013C000C93061F005C0CC3089F070F0CD3089F0C3
-:1013D000209A289810C0219A29980DC0229A2A98FC
-:1013E0000AC0239A2B9807C0529A01C0539A5B985F
-:1013F00002C03E9A4698E0EAEA95F1F78FB17999F2
-:1014000085C092E081708B25892B7C9B02C090E087
-:1014100001C094E0892B7D9B02C090E001C098E060
-:10142000892B7E9B02C090E001C090E1892B9FB187
-:101430009095991F9927991F9295990F907E892BC6
-:1014400010C080910001811176C080E40E94F508EF
-:1014500080930001882309F45BC0912C0E94170936
-:10146000892DF8019081981739F1808380910101CD
-:10147000882301F18091D70180FF04C08AE093E0C6
-:101480000E9452078091D70180FF0CC0809101011A
-:101490001F928F93FF92EF920E94EB070F900F9095
-:1014A0000F900F908091D70180FF04C083E093E0FC
-:1014B0000E945207A09201010E943A0921960F5FF3
-:1014C0001F4FCE30D10509F054CF80910101882300
-:1014D000B1F0815080930101882339F08FE99FE0BA
-:1014E0000197F1F700C000000AC0ACE4B1E0EEE300
-:1014F000F1E081918D9391E0EC34F907D1F782E22C
-:1015000098E0892BD1F00E94220817C090E07ACF92
-:1015100083E10E941F098093000181119ECF81E425
-:101520000E94F50880930001811197CF0E94300935
-:10153000982E909493CF80E094CF81E0DF91CF916B
-:101540001F910F91FF90EF90DF90CF90BF90AF90E1
-:101550009F900895E82FF0E0E45BFE4F80810895AE
-:10156000CF92DF92EF92FF920F931F93CF93DF936F
-:101570008CEE92E00E9452073CE4E32E31E0F32E21
-:10158000C0E0D0E047EEC42E42E0D42E0EED12E0D3
-:10159000DF93CF93DF92CF920E94EB0784EE92E02D
-:1015A0000E945207F70181917F0190E00E94732110
-:1015B0009F938F931F930F930E94EB078CED92E004
-:1015C0000E94520721968DB79EB708960FB6F894E1
-:1015D0009EBF0FBE8DBFCE30D105D1F6DF91CF912A
-:1015E0001F910F91FF90EF90DF90CF9008958B3B6C
-:1015F000910578F4883A910540F5853A9105D0F443
-:101600008430910508F0B1C08130910509F4ADC076
-:101610006BC0803E910508F467C0883E910508F4D0
-:10162000A4C09C01205F31092031310508F05CC065
-:1016300090650895853A910509F459C0863A910557
-:1016400009F458C083E890E40895883A910509F4B4
-:1016500054C0893A910509F453C08A3A910509F4B6
-:1016600052C08B3A910509F451C08C3A910509F4A6
-:1016700050C08D3A910509F44FC0803B910509F4A3
-:101680004EC08E3A910509F44DC08F3A910509F488
-:101690004CC0813B910509F44BC0823B910509F494
-:1016A0004AC0833B910509F449C0843B910509F484
-:1016B00048C0853B910509F447C0863B910509F474
-:1016C00046C0873B910509F445C0883B910509F464
-:1016D00044C0893B910509F443C08A3B910509F058
-:1016E00042C08AE296E4089580E090E0089581E89F
-:1016F00090E4089582E890E4089582EE94E40895D9
-:1017000089EE94E408958AEE94E4089585EB94E4D8
-:10171000089586EB94E4089587EB94E408958CECA7
-:1017200094E408958DEC94E4089583E895E4089595
-:101730008AE895E4089582E995E4089584E995E4BA
-:10174000089581E296E4089583E296E4089584E2A0
-:1017500096E4089585E296E4089586E296E4089575
-:1017600087E296E4089580E094E40895089596E071
-:10177000799FF001112494E5899FE00DF11D11245A
-:10178000E60FF11DEE0FFF1FEC51FF4F8591949175
-:101790000895880F991F805A9040FC01859194917B
-:1017A0000895880F991F80529F4FFC018591949155
-:1017B000089526E0729FF001112444E5849FE00D16
-:1017C000F11D1124E60FF11DEE0FFF1FEC51FF4F2D
-:1017D00025913491C9019A9581159F4110F4C90151
-:1017E0000895C90190528115904128F4C9019F7054
-:1017F0000E94D10B0895C90190538115904120F4A6
-:10180000C9019927906C0895211580E5380769F47E
-:101810000E949C1A9FEF24E34CE0915020404040EE
-:10182000E1F700C000000C943322213080E5380736
-:1018300051F48CE593E00E9452078091D7018160BA
-:101840008093D7010895C90190558115904108F002
-:1018500050C0832F99278F70992781309105D9F433
-:10186000A9014370552702C0880F991F4A95E2F7D6
-:101870009C68A90164E0440F551F6A95E1F744276D
-:101880005370842B952B73E0220F331F7A95E1F769
-:10189000207633271DC08230910529F4922F8827A6
-:1018A000816F906A089583309105A9F4A90143706E
-:1018B000552781E090E002C0880F991F4A95E2F712
-:1018C0009C6843E0220F331F4A95E1F7207E377072
-:1018D000822B932B08950497F1F4A90143705527A7
-:1018E00081E090E002C0880F991F4A95E2F79A685C
-:1018F000E8CFC90190578115904120F4C9019F702C
-:1019000090620895C90190588115904120F4C90151
-:101910009F70906A0895203E3105E0F4203C310527
-:1019200058F52133310509F470C048F429323105E6
-:1019300009F464C02A32310509F46EC074C0293339
-:101940003105F1F022383105D9F02533310509F49C
-:101950004EC069C0233E310589F138F4203E31057F
-:10196000C1F0223E3105E1F05EC0263E310569F14D
-:10197000273E3105A9F157C0C9010E94C90B08953E
-:101980008091EA0180FD02C081FF4DC080EE90E0B1
-:101990004BC08091EA0180FFF9CF89E390E044C019
-:1019A0008091EA0182FF0EC08091EA0184FF03C0AA
-:1019B00080E090E039C083EE90E036C08091EA018B
-:1019C00082FFF2CF82EE90E02FC08091EA0183FF88
-:1019D0000BC08091EA0184FDEBCF87EE90E024C03C
-:1019E0008091EA0183FFF5CF86EE90E01DC08091E3
-:1019F000EA0185FF07C089E290E016C08091EA0104
-:101A000085FFF9CF85E390E00FC08091EA0186FF62
-:101A100007C08AE290E008C08091EA0186FFF9CF12
-:101A200081E390E001C0C9010E94F70A089508957A
-:101A300080916D0108959FB7F89410925C019FBF4B
-:101A40009091F001943009F058C09091E9009F7096
-:101A50002091EC0020FF02C020E801C020E0292BEB
-:101A600094E09093E9009091EB0090FF43C0909137
-:101A7000EE0097FF3FC090915A01992321F0909179
-:101A8000E80095FF37C010925A0196E03091E800C7
-:101A900035FD15C03091F001343061F53091EB0027
-:101AA00035FD28C0915021F481E080935A0122C075
-:101AB000EFE9FFE03197F1F700C00000E7CF809336
-:101AC000F1008091E80085FD0AC08091E80080FF68
-:101AD000FCCF8091E8008E778093E80006C08FB736
-:101AE000F89491E090935C018FBF2F702093E900F0
-:101AF00080E008952F702093E9008FEF0895CF9331
-:101B0000DF9300D01F92CDB7DEB72091F0012430D3
-:101B100019F523E029839B838A832093E9008FEFC3
-:101B20009091E800815095FD06C095ED9A95F1F7EA
-:101B300000008111F5CF8091E80085FF0DC040E0E5
-:101B400050E063E070E0CE0101960E944E1080915B
-:101B5000E8008E778093E8000F900F900F90DF9150
-:101B6000CF910895CF93DF9300D01F92CDB7DEB70A
-:101B70002091F001243021F522E029839B838A8380
-:101B800083E08093E9008FEF9091E800815095FD0C
-:101B900006C095ED9A95F1F700008111F5CF80917F
-:101BA000E80085FF0DC040E050E063E070E0CE014A
-:101BB00001960E944E108091E8008E778093E80095
-:101BC0000F900F900F90DF91CF9108952091F00129
-:101BD0002430F1F422E02093E9002FEF3091E80067
-:101BE000215035FD06C035ED3A95F1F70000211181
-:101BF000F5CF2091E80025FF0BC040E050E065E004
-:101C000070E00E944E108091E8008E778093E8008B
-:101C10000895CF93DF93EC018091F001843009F0B7
-:101C200047C080910C018823E1F080910D01882349
-:101C3000C1F085E08093E9008FEF9091E80081503A
-:101C400095FD06C095E19A95F1F700008111F5CF59
-:101C50008091E80085FF2CC040E050E060E170E03A
-:101C600017C081E08093E9008FEF9091E8008150E8
-:101C700095FD06C095ED9A95F1F700008111F5CF1D
-:101C80008091E80085FF14C040E050E068E070E01B
-:101C9000CE010E944E108091E8008E778093E8007C
-:101CA00080E1FE01ADE5B1E001900D928A95E1F78A
-:101CB000DF91CF91089583E993E00E9452078091CC
-:101CC000EF01811109C00E94E0110E943D12809134
-:101CD000E20084608093E20008958FE893E00E9420
-:101CE00052071092EF0108958BE893E00C9452078D
-:101CF00087E893E00E9452070C94F42B83E893E06A
-:101D00000E9452070E94CA210E94FA2B0E94D914F5
-:101D10000C94170D80915B018F5F80935B0162E3F0
-:101D20000E94682D911135C010925B0180915C0179
-:101D3000882379F18091F001843049F58091E900A0
-:101D40008F709091EC0090FF02C090E801C090E08D
-:101D5000982B84E08093E9008091EB0080FF14C011
-:101D60008091EE0087FF10C08091E80085FF03C0DE
-:101D70001092F100F9CF8091E80080FF05C08091BA
-:101D8000E8008E778093E8009F709093E9001092AE
-:101D90005C01089542E061EC81E00E945A1142E04A
-:101DA00061EC82E00E945A1142E061EC83E00E9403
-:101DB0005A1142E261EC84E00E945A1142E161EC66
-:101DC00085E00C945A118091F201833009F455C0DA
-:101DD00030F4813071F0823009F48EC008958A3079
-:101DE00009F47AC08B3009F460C0893009F09CC0D6
-:101DF00020C08091F101813A09F096C08091E800FD
-:101E0000877F8093E8008091F5019091F601892BFE
-:101E100021F060E080E090E003C060E18DE591E0BA
-:101E200070E00E9497108091E8008B778093E80023
-:101E300008958091F101813209F076C08091F50119
-:101E40009091F601009719F0049709F06DC0809108
-:101E5000E800877F8093E8008091E80082FD05C05C
-:101E60008091F0018111F8CF5FC08091F1008093E3
-:101E70006D018091E8008B7753C08091F101813A28
-:101E800009F052C08091F5019091F601892B09F07B
-:101E90004BC08091E800877F8093E8008091E80044
-:101EA00080FFFCCF80910C0136C08091F10181321E
-:101EB000D9F58091F5019091F601892BA9F58091D2
-:101EC000E800877F8093E8000E948F118091F301E2
-:101ED00080930C010C949C1A8091F101813221F5C0
-:101EE0008091E800877F8093E8000E948F118091A5
-:101EF000F40180936E0108958091F101813AA1F47B
-:101F00008091E800877F8093E8008091E80080FF5F
-:101F1000FCCF80916E018093F1008091E8008E7774
-:101F20008093E8000C948F11089584B7877F84BF55
-:101F300088E10FB6F89480936000109260000FBEA5
-:101F400090E080E80FB6F894809361009093610070
-:101F50000FBE0E9462150E94E0110E943D12809106
-:101F6000E20084608093E2008BE19DE00E94092101
-:101F700078940E94B7140E94641582E091E00E9458
-:101F8000D4140E94E22B82E793E00E9452078091D2
-:101F9000F001853089F48EE693E00E9452070E949A
-:101FA0008D218091EE01882391F30E94B521882331
-:101FB00071F30E943810EBCF0E949215E8CF292FC1
-:101FC000332723303105A9F06CF42130310509F4B1
-:101FD00042C02230310509F043C08DE890E02BEC7F
-:101FE00033E042C021323105C9F02232310519F106
-:101FF00037C099278130910541F08230910541F039
-:10200000892B71F5E7ECF3E005C0EFEAF3E002C0DD
-:10201000E7E9F3E0849190E09F0126C0653000F588
-:10202000E62FF0E0EE0FFF1FEB5DFE4F20813181C8
-:1020300089E090E019C0653098F4E62FF0E0DF0108
-:10204000AA0FBB1FA55EBE4F2D913C91EA5EFE4FCD
-:10205000808190E009C082E190E028E534E004C08E
-:1020600080E090E020E030E0FA01318320830895A1
-:1020700080E189BD82E189BD09B400FEFDCF809178
-:10208000D8008F7D8093D8008091E000826080939B
-:10209000E0008091E00081FDFCCF0895CF92DF92B7
-:1020A000EF92FF920F931F93CF93DF937C018B01ED
-:1020B000EA010E94B011811131C0209731F088816E
-:1020C0009981081B190BE80EF91EC12CD12C0115A2
-:1020D000110519F18091E80085FD14C08091E80098
-:1020E0008E778093E800209741F0888199818C0D4C
-:1020F0009D1D9983888385E011C00E94B0118823BB
-:1021000031F30CC0F70181917F018093F100015000
-:102110001109FFEFCF1ADF0ADACF80E0DF91CF910C
-:102120001F910F91FF90EF90DF90CF900895209135
-:10213000F7013091F8012617370748F0611571054E
-:1021400039F42091E8002E772093E80001C0B9010E
-:10215000FC0120E061157105B9F18091F00188233F
-:1021600009F440C0853009F43FC08091E80083FD48
-:102170003DC08091E80082FF06C08091E80082FFA8
-:1021800026C080E008958091E80080FFE3CF209191
-:10219000F3008091F20090E0922B6115710551F0EF
-:1021A0008830910538F421912093F1006150710934
-:1021B0000196F3CF21E0089709F020E08091E80034
-:1021C0008E778093E800C6CF2111C7CFD6CF8091FC
-:1021D000F001882339F0853039F08091E80083FFE1
-:1021E000CCCF04C082E0089583E0089581E0089593
-:1021F0002091F7013091F8012617370748F0611553
-:10220000710539F42091E8002E772093E80001C091
-:10221000B901FC0120E061157105C1F18091F00167
-:10222000882309F441C0853009F440C08091E8005A
-:1022300083FD3EC08091E80082FF06C08091E800E7
-:1022400082FF27C080E008958091E80080FFE3CFFF
-:102250002091F3008091F20090E0922B61157105BE
-:1022600059F08830910540F424912093F100319683
-:10227000615071090196F2CF21E0089709F020E042
-:102280008091E8008E778093E800C5CF2111C6CFFA
-:10229000D5CF8091F001882339F0853039F08091D5
-:1022A000E80083FFCBCF04C082E0089583E0089567
-:1022B00081E00895982F973058F59093E90098178A
-:1022C00039F07091EC002091ED005091F00003C0C6
-:1022D000242F762F50E021FF19C03091EB003E7F74
-:1022E0003093EB003091ED003D7F3093ED00309165
-:1022F000EB0031603093EB007093EC002093ED0025
-:102300005093F0002091EE0027FF07C09F5FD3CFCE
-:102310008F708093E90081E0089580E008958091B6
-:10232000F10187FD05C08091E80080FF0EC012C05A
-:102330008091E80082FD05C08091F0018111F8CF05
-:1023400008958091E8008B7708C08091F001811199
-:10235000EACF08958091E8008E778093E800089591
-:102360008091E4009091E50045E62091EC0020FF8B
-:1023700021C02091E80020FD21C02091F0012223FE
-:1023800089F0253089F02091EB0025FD0FC02091C8
-:10239000E4003091E5002817390739F3415041F046
-:1023A000C901E3CF82E0089583E0089581E00895B4
-:1023B00084E008952091E80022FFDFCF80E00895B7
-:1023C0000E944E120E945612E0EEF0E08081816081
-:1023D0008083E8EDF0E080818F77808319BCA7EDE2
-:1023E000B0E08C918E7F8C9380818F7E8083109261
-:1023F000EF0108950F931F93CF93DF930E944E1226
-:102400000E945612C8EDD0E088818F77888388813A
-:102410008068888388818F7D888319BC1092F00141
-:102420001092EC011092EE011092ED0100EE10E01E
-:10243000F80180818B7F808388818160888342E07E
-:1024400060E080E00E945A11E1EEF0E080818E7F32
-:102450008083E2EEF0E0808181608083808188600B
-:102460008083F80180818E7F80838881806188836A
-:10247000DF91CF911F910F910895E8EDF0E08081F9
-:102480008F7E8083E7EDF0E080818160808384E04F
-:1024900082BF81E08093EF010C94FA11E8EDF0E047
-:1024A00080818E7F80831092E20008951092DA007E
-:1024B0001092E10008951F920F920FB60F9211240F
-:1024C0002F933F934F935F936F937F938F939F933C
-:1024D000AF93BF93EF93FF938091E10082FF0BC016
-:1024E0008091E20082FF07C08091E1008B7F8093A2
-:1024F000E1000E948A0E8091DA0080FF1FC0809167
-:10250000D80080FF1BC08091DA008E7F8093DA00B4
-:102510008091D90080FF0DC080E189BD82E189BD35
-:1025200009B400FEFDCF81E08093F0010E945B0EB4
-:1025300005C019BC1092F0010E946D0E8091E1005F
-:1025400080FF19C08091E20080FF15C08091E200F9
-:102550008E7F8093E2008091E20080618093E200B0
-:102560008091D80080628093D80019BC85E0809368
-:10257000F0010E94780E8091E10084FF30C08091CC
-:10258000E20084FF2CC080E189BD82E189BD09B4ED
-:1025900000FEFDCF8091D8008F7D8093D800809180
-:1025A000E1008F7E8093E1008091E2008F7E809336
-:1025B000E2008091E20081608093E2008091EC0172
-:1025C000882311F084E007C08091E30087FF02C0F8
-:1025D00083E001C081E08093F0010E947E0E809133
-:1025E000E10083FF29C08091E20083FF25C0809134
-:1025F000E100877F8093E10082E08093F0011092F8
-:10260000EC018091E1008E7F8093E1008091E200F7
-:102610008E7F8093E2008091E20080618093E200EF
-:1026200042E060E080E00E945A118091F0008860F2
-:102630008093F0000E94740EFF91EF91BF91AF91D3
-:102640009F918F917F916F915F914F913F912F91CA
-:102650000F900FBE0F901F9018951F920F920FB6FC
-:102660000F9211242F933F934F935F936F937F9318
-:102670008F939F93AF93BF93CF93EF93FF93C091AB
-:10268000E900CF708091EC001092E9008091F00099
-:10269000877F8093F00078940E9469131092E9007C
-:1026A0008091F00088608093F000C093E900FF9172
-:1026B000EF91CF91BF91AF919F918F917F916F914A
-:1026C0005F914F913F912F910F900FBE0F901F90F0
-:1026D00018951F93CF93DF93CDB7DEB7AA970FB6A8
-:1026E000F894DEBF0FBECDBFE1EFF1E08091F100C5
-:1026F000819321E0E93FF207C9F70E94E30E809140
-:10270000E80083FF1CC12091F1013091F201832F79
-:1027100090E08A30910508F012C1FC01EA5AFF4F9F
-:102720000C94882D203881F0223809F008C180915E
-:10273000F5018F708093E9008091EB0085FB88277D
-:1027400080F91092E90006C08091ED019091EE01B0
-:10275000911182609091E800977F9093E8008093B8
-:10276000F1001092F100C5C0822F8D7F09F0E7C003
-:10277000222319F0223061F0E2C08091F301813010
-:1027800009F0DDC0333009F080E08093EE0128C00D
-:102790008091F301811124C02091F5012F7009F47B
-:1027A000CEC02093E9008091EB0080FF19C080919A
-:1027B000EB00333011F4806211C080618093EB0034
-:1027C00081E090E0022E01C0880F0A94EAF780931E
-:1027D000EA001092EA008091EB0088608093EB00A1
-:1027E0001092E9008091E800877F86C02111A7C080
-:1027F0001091F3011F778091E3008078812B809303
-:10280000E3008091E800877F8093E8000E948F11A9
-:102810008091E80080FFFCCF8091E3008068809386
-:10282000E300112311F083E001C082E08093F00106
-:1028300086C02058223008F082C08091F301909128
-:10284000F4018C3D23E0920779F583E08A838AE2E4
-:1028500089834FB7F894DE01139620E03EE051E201
-:10286000E32FF0E050935700E49120FF03C0E2957E
-:10287000EF703F5FEF708E2F90E0EA3010F0C79658
-:1028800001C0C0968D939D932F5F243149F74FBFB0
-:102890008091E800877F8093E8006AE270E0CE01D3
-:1028A00001960E94971014C0AE014F5F5F4F609178
-:1028B000F5010E94DF0F009709F441C02091E80064
-:1028C000277F2093E800BC0189819A810E94F8103B
-:1028D0008091E8008B778093E80031C0203879F54B
-:1028E0008091E800877F8093E8008091EC018093DD
-:1028F000F1008091E8008E778093E8000E948F11AC
-:102900001EC021111CC09091F3019230C0F480913F
-:10291000E800877F8093E8009093EC010E948F117C
-:102920008091EC01811104C08091E30087FF02C017
-:1029300084E001C081E08093F0010E94CA0E809182
-:10294000E80083FF0AC08091E800877F8093E80059
-:102950008091EB0080628093EB00AA960FB6F8940A
-:10296000DEBF0FBECDBFDF91CF911F910895CF93F2
-:102970008091F0018823B1F08091E9008F709091EF
-:10298000EC0090FF02C090E801C090E0C92FC82B76
-:102990001092E9008091E80083FD0E946913CF70D6
-:1029A000C093E900CF9108959093740180937301CF
-:1029B0000895E0917301F0917401309721F0019036
-:1029C000F081E02D099480E00895FF920F931F930A
-:1029D000CF93DF938C01E0917301F09174013097F4
-:1029E00099F10280F381E02D09958091D70182FF52
-:1029F0002BC080FF04C08DE895E00E945207E801DB
-:102A000080E1F82E07E815E08091D70180FF0BC028
-:102A100088811F928F931F930F930E94EB070F9053
-:102A20000F900F900F90FA942196F110EDCF8091B6
-:102A3000D70180FF09C085E895E0DF91CF911F9114
-:102A40000F91FF900C945207DF91CF911F910F913E
-:102A5000FF900895E0917301F0917401309721F097
-:102A60000480F581E02D0994089520917101309141
-:102A700072018217930771F0909372018093710134
-:102A8000E0917301F0917401309721F00680F78195
-:102A9000E02D0994089520916F0130917001821703
-:102AA000930771F09093700180936F01E09173012F
-:102AB000F0917401309721F00084F185E02D0994A4
-:102AC000089508950C9461150E94D0210E94620916
-:102AD0000C949622CF93C82F8091D70182FF1EC0FD
-:102AE00080FF04C086EA95E00E9452078091D701DA
-:102AF00080FF0CC01F92CF9321EA35E03F932F93C4
-:102B00000E94EB070F900F900F900F908091D701CC
-:102B100080FF04C08FE995E00E9452078C2FCF916F
-:102B20000C94170DCF92DF92EF92FF920F931F93A9
-:102B3000CF93DF93CDB7DEB72B970FB6F894DEBFF8
-:102B40000FBECDBF0E947F0936E7E32E31E0F32EA2
-:102B500000E010E0C02E802F0E94AA0AF701D19059
-:102B60007F01D826B1F40F5F1F4F0E30110591F78A
-:102B70008FEF89838A831B820E94D9218160782FFD
-:102B80009D838C8349815A816B818D810E9435168A
-:102B900041C09091D70191FF04C08B870E94B00A79
-:102BA0008B8520E030E04D2D50E0922FBA01022EAF
-:102BB00002C0759567950A94E2F760FF25C02E83E1
-:102BC000CF82EE24E394F12C02C0EE0CFF1C9A9508
-:102BD000E2F790E08E219F2121E0892B09F420E08B
-:102BE00028870E94D9218160782F9A8789874E8112
-:102BF0005F8168858A850E943516F801EA58FE4F84
-:102C000080818E25808306C02F5F3F4F263031059F
-:102C100061F6A9CF0E940426109175010E94D91473
-:102C20001817A1F00E94D914809375012B960FB646
-:102C3000F894DEBF0FBECDBFDF91CF911F910F91F2
-:102C4000FF90EF90DF90CF900C946A152B960FB603
-:102C5000F894DEBF0FBECDBFDF91CF911F910F91D2
-:102C6000FF90EF90DF90CF900895CF93DF93CDB793
-:102C7000DEB72B970FB6F894DEBF0FBECDBF4F83E4
-:102C8000588769877A878B87DE01119686E0FD0178
-:102C900011928A95E9F785E0FE01379601900D9231
-:102CA0008A95E1F749815A816B817C818D819E8172
-:102CB0000E94681D2B960FB6F894DEBF0FBECDBFE5
-:102CC000DF91CF910895CF93C82F882309F4C1C015
-:102CD000823859F40E94D91481FDBBC089E30E9457
-:102CE00007200E94E32089E30CC0833879F40E9416
-:102CF000D91480FDAEC083E50E9407200E94E32026
-:102D000083E50E945820CF910C94E320843859F435
-:102D10000E94D91482FD9DC087E40E9407200E9472
-:102D2000E32087E4EECF8CEF8C0F813A48F48C2FB0
-:102D30000E948D2A81118DC08C2F0E940720E3CF25
-:102D400080E28C0F883048F4C77081E001C0880FA2
-:102D5000CA95EAF70E94AA20D6CF8BE58C0F833064
-:102D600078F4C53A29F0C63A31F482E890E005C01B
-:102D700081E890E002C083E890E0CF910C94351593
-:102D800088E58C0F833108F064C0C83A39F1C93A3C
-:102D900041F1CA3A49F1CB3A51F1CC3A59F1CD3A25
-:102DA00061F1C03B69F1CE3A71F1CF3A79F1C13BA3
-:102DB00081F1C23B89F1C33B91F1C43B99F1C53B21
-:102DC000A1F1C63BA9F1C73BB1F1C83BB9F1C93B81
-:102DD000C1F1CA3BC9F58AE292E038C082EE90E0C8
-:102DE00035C089EE90E032C08AEE90E02FC085EBCE
-:102DF00090E02CC086EB90E029C087EB90E026C0E5
-:102E00008CEC90E023C08DEC90E020C083E891E052
-:102E10001DC08AE891E01AC082E991E017C084E9F8
-:102E200091E014C081E292E011C083E292E00EC012
-:102E300084E292E00BC085E292E008C086E292E074
-:102E400005C087E292E002C080E090E0CF910C9450
-:102E50004B15CF910895882309F44BC0823859F45B
-:102E60000E94D91481FF45C089E30E9407200E9477
-:102E7000E32089E30CC0833871F40E94D91480FFE9
-:102E800038C083E50E9407200E94E32083E50E946A
-:102E900058200C94E320843859F40E94D91482FFFE
-:102EA00028C087E40E9407200E94E32087E4EFCF38
-:102EB0009CEF980F913A58F390E2980F983050F4A5
-:102EC000877091E001C0990F8A95EAF7892F0E94D7
-:102ED000B020DFCF9BE5980F933020F480E090E0A6
-:102EE0000C943515885A833120F480E090E00C94DE
-:102EF0004B150895882321F00E94AA200C94E3200A
-:102F00000895882321F00E94B0200C94E3200895B6
-:102F1000CF92DF92EF92FF920F931F93CF93DF93A5
-:102F2000CDB7DEB728970FB6F894DEBF0FBECDBF82
-:102F30008C0185E0F801DE01119601900D928A95D1
-:102F4000E1F7F80140813181F280258122952F70CF
-:102F500083819481892B31F03F3F31F481E04F3FF1
-:102F600019F403C081E001C080E080FDC4C2498340
-:102F70003A8389819A812F830E94C51F9E83888707
-:102F80000E94C41F0E94971E4E81E42FE295EF70AD
-:102F9000F0E0E05AFF4F2F8168850C94882D842F34
-:102FA000807F142F1F70882311F01295107FFF204F
-:102FB00059F0112309F454C2812F68870E94BA2066
-:102FC0000E94E32068854CC2862F0E942B17112394
-:102FD00009F491C2812F0E94C02028960FB6F89460
-:102FE000DEBF0FBECDBFDF91CF911F910F91FF903C
-:102FF000EF90DF90CF900C94E320342F307F842F1C
-:103000008F70303211F08295807F662319F0613025
-:1030100019F12BC0FF20B1F0222309F493C1213014
-:1030200009F090C128960FB6F894DEBF0FBECDBF51
-:10303000DF91CF911F910F91FF90EF90DF90CF9094
-:103040000C94CA20222319F0213009F454C28E8333
-:103050000E94CD208E8189C1FF2021F0223008F00E
-:103060004AC270C1211147C280C1FF2021F0222332
-:1030700009F468C1F5C1222309F477C105C2242FE0
-:1030800026952695237030E02115310521F0213059
-:103090003105C9F030C2FF2021F0862F942F9370A4
-:1030A00002C080E090E028960FB6F894DEBF0FBE15
-:1030B000CDBFDF91CF911F910F91FF90EF90DF90E7
-:1030C000CF900C943515FF2021F0862F942F93700C
-:1030D00002C080E090E028960FB6F894DEBF0FBEE5
-:1030E000CDBFDF91CF911F910F91FF90EF90DF90B7
-:1030F000CF900C944B15862FFF2019F00E948A2444
-:1031000002C00E94F22428960FB6F894DEBF0FBECC
-:10311000CDBFDF91CF911F910F91FF90EF90DF9086
-:10312000CF900C947725842F837009F076C0F1102E
-:10313000E2C1262F229526952770220F220F862F77
-:103140008F70C82ED12CE12CF12C022E04C0CC0C97
-:10315000DD1CEE1CFF1C0A94D2F764FF10C06FE068
-:1031600070E080E090E004C0660F771F881F991F11
-:103170002A95D2F7609570958095909503C060E090
-:1031800070E0CB01242F269526952370422F50E026
-:1031900042305105D1F04330510559F16C297D2958
-:1031A0008E299F294130510541F128960FB6F89498
-:1031B000DEBF0FBECDBFDF91CF911F910F91FF906A
-:1031C000EF90DF90CF900C94BC1E6C297D298E2946
-:1031D0009F2928960FB6F894DEBF0FBECDBFDF91B2
-:1031E000CF911F910F91FF90EF90DF90CF900C94B3
-:1031F000D61E0E94BC1EC701B60128960FB6F894D1
-:10320000DEBF0FBECDBFDF91CF911F910F91FF9019
-:10321000EF90DF90CF900C94A21EFF2019F0842F26
-:10322000817001C08695882309F465C1262F2295F7
-:1032300026952770220F220F862F8F70C82ED12C33
-:10324000E12CF12C022E04C0CC0CDD1CEE1CFF1C6A
-:103250000A94D2F764FF10C06FE070E080E090E065
-:1032600004C0660F771F881F991F2A95D2F76095B3
-:1032700070958095909503C060E070E0CB01242F9D
-:10328000269526952370422F50E042305105D1F00B
-:103290004330510559F16C297D298E299F294130F0
-:1032A000510541F128960FB6F894DEBF0FBECDBF91
-:1032B000DF91CF911F910F91FF90EF90DF90CF9012
-:1032C0000C94901F6C297D298E299F2928960FB672
-:1032D000F894DEBF0FBECDBFDF91CF911F910F914C
-:1032E000FF90EF90DF90CF900C94AA1F0E94901F48
-:1032F000C701B60128960FB6F894DEBF0FBECDBF4A
-:10330000DF91CF911F910F91FF90EF90DF90CF90C1
-:103310000C94761F603FC9F118F4603E50F49BC0D6
-:10332000623F09F460C008F44AC0633F09F46FC00B
-:1033300092C0162F1F70842F8F71FF2099F00E946A
-:103340000F1F812F28960FB6F894DEBF0FBECDBF9A
-:10335000DF91CF911F910F91FF90EF90DF90CF9071
-:103360000C947A170E94301F812F28960FB6F8947C
-:10337000DEBF0FBECDBFDF91CF911F910F91FF90A8
-:10338000EF90DF90CF900C948117FF20A1F02111D6
-:10339000B2C0842F8F7128960FB6F894DEBF0FBE8F
-:1033A000CDBFDF91CF911F910F91FF90EF90DF90F4
-:1033B000CF900C94551F223008F09DC0EACFFF201B
-:1033C000A1F0842F8F7128960FB6F894DEBF0FBE40
-:1033D000CDBFDF91CF911F910F91FF90EF90DF90C4
-:1033E000CF900C940F1FFF2061F3842F8F712896CC
-:1033F0000FB6F894DEBF0FBECDBFDF91CF911F9106
-:103400000F91FF90EF90DF90CF900C94301FFF2032
-:1034100091F0842F8F7128960FB6F894DEBF0FBEFF
-:10342000CDBFDF91CF911F910F91FF90EF90DF9073
-:10343000CF900C94FA1E28960FB6F894DEBF0FBEFC
-:10344000CDBFDF91CF911F910F91FF90EF90DF9053
-:10345000CF900C94F01EFF20A1F0222309F4B1CFED
-:10346000862F28960FB6F894DEBF0FBECDBFDF9132
-:10347000CF911F910F91FF90EF90DF90CF900C9420
-:103480006316222309F4B1CF862F28960FB6F8943D
-:10349000DEBF0FBECDBFDF91CF911F910F91FF9087
-:1034A000EF90DF90CF900C942B174F70C8010E94C3
-:1034B000F40728960FB6F894DEBF0FBECDBFDF919C
-:1034C000CF911F910F91FF90EF90DF90CF900C94D0
-:1034D000151E4F70C80128960FB6F894DEBF0FBEB8
-:1034E000CDBFDF91CF911F910F91FF90EF90DF90B3
-:1034F000CF900C94B60B28960FB6F894DEBF0FBE93
-:10350000CDBFDF91CF911F910F91FF90EF90DF9092
-:10351000CF9008950E94C7200E949C200E94E32023
-:103520000E94A5260E94772580E090E00E94351534
-:1035300080E090E00C944B150E94B7200C948A1AFE
-:103540000E94C51F292F22952F7030E02C303105A5
-:103550004CF42A3031056CF4225031092230310507
-:1035600090F407C02C30310551F02F30310539F07F
-:103570000AC0803E10F0803F31F481E0089593FB53
-:10358000882780F9089580E00895CF93DF9300D0D5
-:1035900000D01F92CDB7DEB70F900F900F900F9015
-:1035A0000F90DF91CF910895CF93DF9300D000D09B
-:1035B00000D0CDB7DEB726960FB6F894DEBF0FBEAB
-:1035C000CDBFDF91CF9108951F93CF93DF93C0912B
-:1035D000840116E080918501C81799F0D0E01C9F06
-:1035E000F0011D9FF00D1124EA57FE4F40815181DB
-:1035F00062817381848195810E94D41A2196C7705B
-:10360000E9CFDF91CF911F9108954091B60150917C
-:10361000B7016091B8017091B9018091BA019091A0
-:10362000BB010C94D41ACF938091BB0182958F700B
-:1036300009F05FC08091B801882309F45AC0209135
-:103640008401A09185016091B6017091B7018091CC
-:10365000B9019091BA0131E06F3F09F030E0B32F2A
-:10366000C6E02A1709F445C0009721F07F3F21F4F6
-:103670004B2F03C041E001C040E030E040FD35C0C9
-:10368000C29FF001C39FF00D1124EA57FE4F418104
-:1036900074132BC04081641328C04281411125C09E
-:1036A000438154814817590710F441505109481B70
-:1036B000590B483C5105C8F48091BB018F70806163
-:1036C0008093BB0186E0829FF001839FF00D11245F
-:1036D000E557FE4F80818F708061808386EB91E09B
-:1036E0000E948817CF910C94E41A2F5F3F4F2770E8
-:1036F000B8CFCF910895CF92DF92EF92FF920F93C0
-:103700001F93CF93DF93CDB7DEB762970FB6F894D0
-:10371000DEBF0FBECDBF8C0185E0F801DE011D9636
-:1037200001900D928A95E1F7D8014C9111965C9128
-:10373000119712966C9112971396ED90FC90149736
-:103740007091B601E091B7012091B9013091BA01B1
-:103750002115310531F0EF3F31F481E07F3F19F45D
-:1037600003C081E001C080E0B82FB170CB2E80FD96
-:103770006CC1D090B801DD2009F4F5C0F091BB0117
-:10378000E216F30638F0C701821B930B883C9105C3
-:1037900048F09BC0209530952E0D3F1D283C3105EB
-:1037A00008F093C08F2F807F09F052C0E51314C03A
-:1037B000741312C0D62E61110FC0FF70F061F09328
-:1037C000BB010E94051B86EB91E00E948817809147
-:1037D000BB01F80185836CC1EF2831F05F3F31F404
-:1037E00081E04F3F19F403C081E001C080E080FD1B
-:1037F00003C081E0862701C080E0F82FF170FF2E22
-:1038000080FF1CC0809184012091850136E08217E1
-:1038100009F428C190E0389FF001399FF00D112480
-:10382000EA57FE4F7181571306C07081471303C0DA
-:103830007281671303C001968770E9CFD62E662385
-:1038400009F436C18091BB0181608093BB0153C0F4
-:10385000E51308C0741306C0611104C0D8011596A1
-:10386000FC93AEC04D875E878D859E856A8B0E94D6
-:10387000A01A6A89882329F1D62E662311F1209196
-:10388000BB01822F82958F7090E002970CF460C08C
-:103890008091B6019091B70198878F831986FB8636
-:1038A000EA862C87CE01079651C0E51731F14D8786
-:1038B0005E878D859E856A8B0E94A01A6A89811118
-:1038C0002EC0C8010E948817A4C08F2F807F69F77F
-:1038D0007E2DF98AE88A89890E94C51A86EB91E0D3
-:1038E0000E948817E6EBF1E086E0DF011D928A95E1
-:1038F000E9F70E94051BD12CDBC07413D8CF6111EE
-:10390000D6CFD8011596FC93C8010E948817E6EB24
-:10391000F1E086E0DF011D928A95E9F7C9C0D62E55
-:10392000662379F22091BB01822F82958F7090E0FF
-:10393000029774F08091B6019091B7019A838983C0
-:103940001B82FD82EC822E83CE0101960E94881795
-:1039500086E0F801A6EBB1E001900D928A95E1F7BF
-:103960000E94131B6FC0E216F30628F0C701821BEA
-:10397000930B9C0104C0209530952E0D3F1D283CD3
-:10398000310508F052C0D62E662309F49ACFE5130C
-:103990002CC074132AC08091BB0180FD1DC0982FDC
-:1039A00092959F70C9F0D80115968C9315979F300A
-:1039B00039F09F5F9295907F8F70892B15968C932D
-:1039C000C8010E94881786E0F801A6EBB1E00190DB
-:1039D0000D928A95E1F736C086E0F801A6EBB1E0DA
-:1039E00001900D928A95E1F763C04D875E878D85C2
-:1039F0009E850E94A01A882379F086E0F801A6EB44
-:103A0000B1E001900D928A95E1F70E94131B0E948C
-:103A1000051BDD24D3944CC08091BB018160809351
-:103A2000BB01C8010E94881743C07E2DF98AE88A2D
-:103A300089890E94C51AE6EBF1E086E0DF011D925C
-:103A40008A95E9F70E94051B33C0662309F439CF34
-:103A50004D875E878D859E850E94A01A882309F474
-:103A600030CFCBCF4D875E878D859E850E94C51F49
-:103A7000292F22952F7030E0223031052CF49F70D1
-:103A800041F0811106C00CC0243031052CF49F7028
-:103A900049F4805E883020F0C8010E948817CF2C3E
-:103AA000DC2C06C0D80115969C91907F91F7F8CF39
-:103AB0008D2D62960FB6F894DEBF0FBECDBFDF919D
-:103AC000CF911F910F91FF90EF90DF90CF900895CD
-:103AD0001F93CF93DF93CDB7DEB72C970FB6F89433
-:103AE000DEBF0FBECDBF4F83588769877A878B872C
-:103AF0009C87CE0107960E947B1B8823C1F02F81F3
-:103B000038858A859B85892B31F03F3F11F080E015
-:103B100003C02F3FE1F781E0811147C04F815885F5
-:103B200069857A858B859C850E94D41A3EC086E083
-:103B3000FE013796DE01119601900D928A95E1F70C
-:103B4000FF81E8854A855B854115510531F0EF3FDE
-:103B500031F481E0FF3F19F403C081E001C080E04F
-:103B600080FD23C02091850130E0C9010196877056
-:103B700099276091840170E086179707F1F1F98326
-:103B8000EA835D834C8396E0929FD001939FB00DB2
-:103B90001124AA57BE4FFE01319601900D929A95BD
-:103BA000E1F7809385010E94E41A16E08091840178
-:103BB00090918501891779F1189FC00111248A57C6
-:103BC0009E4F0E947B1B882331F1E09184011E9F50
-:103BD000F0011124EA57FE4F4081518162817381C7
-:103BE000848195810E94D41A8091840190E001968D
-:103BF0008770992780938401D9CF0E949C1A1092D4
-:103C0000850110928401E6EBF1E086E0DF011D9270
-:103C10008A95E9F7CACF2C960FB6F894DEBF0FBE8F
-:103C2000CDBFDF91CF911F910895EF92FF920F9337
-:103C30001F93CF93DF939C01009709F471C0F12C7F
-:103C4000EE24E394E9012196F9018491843740F44C
-:103C5000843008F056C0813081F0823021F160C09C
-:103C6000853709F449C0C0F19CE7980F903708F0F8
-:103C700057C08F770E942B1746C089010E5F1F4FD8
-:103C8000FE01849190E2980F983050F48770FE2DD9
-:103C900001C0FF0F8A95EAF78F2F0E94BA2015C046
-:103CA0000E94631614C089010E5F1F4FFE018491AC
-:103CB00090E2980F983068F48770FE2D01C0FF0FD6
-:103CC0008A95EAF78F2F0E94C0200E94E320E80126
-:103CD0001AC00E942B17FBCF2E5F3F4FFE01C491ED
-:103CE000CC2341F08FE99FE00197F1F700C000007D
-:103CF000C150F6CFE90107C0FE01F490E901229618
-:103D000002C00E9463168F2D882341F0EFE9FFE087
-:103D10003197F1F700C000008150F6CF9E0192CF9D
-:103D2000DF91CF911F910F91FF90EF90089508952B
-:103D30006093C0017093C1018093C2019093C3014D
-:103D40000C948A1A0F931F930091C0011091C10126
-:103D50002091C2013091C301062B172B282B392B40
-:103D60000093C0011093C1012093C2013093C3019D
-:103D70001F910F910C948A1A0F931F930091C00109
-:103D80001091C1012091C2013091C3010623172374
-:103D9000282339230093C0011093C1012093C2014D
-:103DA0003093C3011F910F910C948A1A0F931F93A4
-:103DB0000091C0011091C1012091C2013091C30155
-:103DC00006271727282739270093C0011093C10120
-:103DD0002093C2013093C3011F910F910C948A1A52
-:103DE0001092BC011092BD011092BE011092BF0151
-:103DF0000C948A1A41E050E060E070E004C0440F87
-:103E0000551F661F771F8A95D2F74093BC015093C8
-:103E1000BD016093BE017093BF010C948A1A41E00A
-:103E200050E060E070E004C0440F551F661F771F2C
-:103E30008A95D2F78091BC019091BD01A091BE01FD
-:103E4000B091BF01842B952BA62BB72B8093BC017F
-:103E50009093BD01A093BE01B093BF010C948A1A48
-:103E600041E050E060E070E004C0440F551F661F61
-:103E7000771F8A95D2F740955095609570958091FF
-:103E8000BC019091BD01A091BE01B091BF018423FE
-:103E90009523A623B7238093BC019093BD01A093E3
-:103EA000BE01B093BF010C948A1A41E050E060E07B
-:103EB00070E004C0440F551F661F771F8A95D2F724
-:103EC0008091BC019091BD01A091BE01B091BF0154
-:103ED00084279527A627B7278093BC019093BD011F
-:103EE000A093BE01B093BF010C948A1A0F931F9345
-:103EF0000091BC011091BD012091BE013091BF0124
-:103F0000062B172B282B392B0093BC011093BD01D6
-:103F10002093BE013093BF011F910F910C948A1A18
-:103F20000F931F930091BC011091BD012091BE0120
-:103F30003091BF0106231723282339230093BC01A6
-:103F40001093BD012093BE013093BF011F910F91CB
-:103F50000C948A1A0F931F930091BC011091BD011C
-:103F60002091BE013091BF01062717272827392746
-:103F70000093BC011093BD012093BE013093BF019B
-:103F80001F910F910C948A1A0895CF92DF92EF92AD
-:103F9000FF920F931F93CF93DF93EC01C090C0016A
-:103FA000D090C101E090C201F090C3018091BC01AA
-:103FB0009091BD01A091BE01B091BF01C82AD92A3C
-:103FC000EA2AFB2A0FE110E0B701A601002E04C087
-:103FD00076956795579547950A94D2F740FF07C0A5
-:103FE000BE01802F0E94D90B8130910539F4015018
-:103FF000110950F7BE0180E00E94D90BDF91CF91EB
-:104000001F910F91FF90EF90DF90CF9008959091C6
-:104010000C01992361F190910D01992341F1982FA1
-:104020009695969596959F3088F4E0910E01F091C3
-:104030000F01E90FF11D877021E030E001C0220F70
-:104040008A95EAF78181822B818308959091D70127
-:1040500090FF2DC01F928F9387ED95E09F938F93D4
-:104060000E94EB070F900F900F900F9008954091D2
-:104070000E0150910F0120E030E09FEFFA01E20FB6
-:10408000F31F6281681799F09F3F19F4611101C015
-:10409000922F2F5F3F4F2E30310581F79F3F39F030
-:1040A000FA01E90FF11D97FDFA95828308950895AD
-:1040B00090910C01992369F190910D01992349F197
-:1040C000982F9695969596959F3090F4E0910E01D5
-:1040D000F0910F01E90FF11D877021E030E001C080
-:1040E000220F8A95EAF7209581812823218308955C
-:1040F0009091D70190FF1FC01F928F9389EB95E09D
-:104100009F938F930E94EB070F900F900F900F904B
-:10411000089540910E0150910F0120E030E0FA0126
-:10412000E20FF31F9281981301C012822F5F3F4F5D
-:104130002E303105A1F7089581E090E0E0910E0165
-:10414000F0910F01E80FF91F10820196803191055F
-:10415000A9F708959091D601982B9093D6010895D0
-:1041600080959091D60198239093D601089510924E
-:10417000D60108959091D501982B9093D50108957B
-:1041800080959091D50198239093D5010895109230
-:10419000D50108958093C40108951092C401089533
-:1041A00040910E0150910F0120E030E080E0FA01D3
-:1041B000E20FF31F918191118F5F2F5F3F4F2F30DF
-:1041C0003105A9F70895E0910E01F0910F0180915A
-:1041D000D6018083E0910E01F0910F0180819091D2
-:1041E000D501892B80839091C401992361F0E091DE
-:1041F0000E01F0910F018081892B80830E94D020D5
-:1042000081111092C40180910E0190910F010C94C4
-:10421000E51490933B0180933A010895CF92DF9289
-:10422000EF92FF920F931F936C01EE24FF24C114B1
-:10423000D104E104F10421F46B017C0180E001C0B0
-:1042400080E133272F2D1E2D0D2D01151105210580
-:10425000310519F0885F6801790197018601A4E0B2
-:104260003695279517950795AA95D1F7011511054C
-:104270002105310519F08C5F6801790197018601EC
-:10428000F2E03695279517950795FA95D1F7011520
-:1042900011052105310519F08E5F68017901B7011B
-:1042A000A6017695679557954795452B462B472B45
-:1042B00009F08F5F1F910F91FF90EF90DF90CF90EB
-:1042C00008958295982F9C7C96959695837344E0EB
-:1042D000849F90011124922B892F8A7A8695957557
-:1042E000990F892B08951F93CF93DF931F92CDB71A
-:1042F000DEB799830E946121182F9981892F0E942E
-:104300006121212F30E0322F2227A901482BCA0139
-:104310000F90DF91CF911F9108958091F00184302B
-:1043200009F11092D80120E488E190E00FB6F894EA
-:10433000A895809360000FBE2093600083B7817FB3
-:10434000846083BF83B7816083BF7894889583B787
-:104350008E7F83BF88E10FB6F8948093600010923F
-:1043600060000FBE089508950895CF930E94B32171
-:104370000E947F090E94B421C0E08C2F0E94AA0AEB
-:10438000811105C0CF5FCE30C1F780E001C081E070
-:10439000CF9108950E949C1A0E94D9140C94170D75
-:1043A00082E084BD93E095BD9AEF97BD80936E0047
-:1043B00008952FB7F8948091D9019091DA01A091D6
-:1043C000DB01B091DC012FBF0895CF92DF92EF9215
-:1043D000FF920F931F932FB7F8944091D9015091FA
-:1043E000DA016091DB017091DC012FBF6A017B0172
-:1043F000EE24FF248C0120E030E0C016D106E20656
-:10440000F30610F441505109481B590BCA011F9182
-:104410000F91FF90EF90DF90CF9008951F920F9231
-:104420000FB60F9211248F939F93AF93BF938091F8
-:10443000D9019091DA01A091DB01B091DC010196E4
-:10444000A11DB11D8093D9019093DA01A093DB01E6
-:10445000B093DC01BF91AF919F918F910F900FBEF0
-:104460000F901F9018950E94E011F8942FEF87EAA3
-:1044700091E6215080409040E1F700C0000087E0C5
-:1044800090EBDC018093F9019093FA01A093FB017A
-:10449000B093FC012CE088E190E00FB6F894A89569
-:1044A000809360000FBE20936000FFCFEF92FF92D9
-:1044B0000F931F93CF93DF93E82EF12C8F2D0E9443
-:1044C000AA0AC0E0D0E0082F10E098010C2E02C02C
-:1044D000359527950A94E2F720FD05C02196C63050
-:1044E000D10599F709C06C2F7F2D80E00E94B70B92
-:1044F000E812F4CF81E005C0F3948EE0F812DECF2D
-:1045000080E0DF91CF911F910F91FF90EF90089580
-:10451000CF93C82F8CE20E945622882321F08C2F43
-:10452000CF910C94562280E0CF910895CF930E94B2
-:10453000E323811102C00E94C9238CEF95E00E9401
-:104540005207C5E6C15049F00E947F098FE39CE9FC
-:104550000197F1F700C00000F5CF85EF95E00E94CC
-:10456000520789E20E948822811111C18AE20E94C9
-:10457000882281110E94C92385E00E94882281112E
-:104580000E9433220E94EE238093D70187E00E948D
-:104590008822882399F18BE10E948822882351F098
-:1045A0009091D70191FB882780F921E0822780FB39
-:1045B00091F922C08EE00E948822882351F09091C8
-:1045C000D70192FB882780F921E0822780FB92F9AE
-:1045D00013C080E10E9488229091D701882341F086
-:1045E00093FB882780F921E0822780FB93F904C0A0
-:1045F000892F809580FB90F99093D7018091D70106
-:104600000E94F2230E9400248093EA0180EE0E941F
-:104610008822882341F08091EA01982F909590FBA1
-:1046200080F98093EA0189E30E948822882359F067
-:104630009091EA0191FB882780F921E0822780FB95
-:1046400091F99093EA0182EE0E948822882359F022
-:104650009091EA0192FB882780F921E0822780FB74
-:1046600092F99093EA0186EE0E948822882359F0FD
-:104670009091EA0193FB882780F921E0822780FB53
-:1046800093F99093EA0183EE0E948822882359F0DF
-:104690009091EA0194FB882780F921E0822780FB32
-:1046A00094F99093EA0185E30E948822882359F0C7
-:1046B0009091EA0195FB882780F921E0822780FB11
-:1046C00095F99093EA0181E30E948822882359F0AA
-:1046D0009091EA0196FB882780F921E0822780FBF0
-:1046E00096F99093EA0181E10E948822882359F08B
-:1046F0009091EA0197FB882780F921E0822780FBCF
-:1047000097F99093EA018091EA010E940424809134
-:10471000EA0187FB882780F980930D0187E20E94D8
-:104720008822C82F8EE10E9488228111C2608FE109
-:104730000E9488228111C46080E20E948822811137
-:10474000C86081E20E9488228111C06182E20E94D9
-:1047500088228111C06283E20E9488228111C06494
-:1047600084E20E948822882311F0C06802C0CC2312
-:1047700029F08C2F0E94FB236C2F03C00E94F7238B
-:10478000682F70E080E090E0CF910C94981ECF915C
-:1047900008956DEE7EEF80E090E00E94BE2D60E017
-:1047A00082E090E00E94B02D60E083E090E00E9403
-:1047B000B02D60E084E090E00E94B02D60E085E0E4
-:1047C00090E00C94B02D80E090E00E94AA2D21E0B2
-:1047D0008D3E9E4F09F020E0822F089582E090E008
-:1047E0000C94A22D682F82E090E00C94B02D83E011
-:1047F00090E00C94A22D682F83E090E00C94B02DF3
-:1048000084E090E00C94A22D682F84E090E00C945A
-:10481000B02D8091DF0180FF0BC06091130185E016
-:10482000689FB001112475956795759567952AC0A5
-:1048300081FF09C06091130185E0689FB0011124D8
-:10484000759567951FC082FF07C06091130185E0D1
-:10485000689FB001112416C04091E0014423C9F0C3
-:1048600060911201461788F72091130185E0289F77
-:1048700090011124429FC001439F900D112470E0CC
-:104880000E94742D6038710540F46115710539F08E
-:1048900002C065E070E0862F08958FE7089581E0FB
-:1048A00008958091DF0180FF08C06091110170E0E0
-:1048B000759567957595679521C081FF06C06091D4
-:1048C000110170E07595679519C082FF04C0609171
-:1048D000110170E010C08091E0018823C1F0609167
-:1048E00010018617A0F790911101989FC001112423
-:1048F00070E00E94742D6038710528F4611571050F
-:1049000021F0862F08958FE7089581E0089561E0F2
-:1049100070E0F4CF803F21F40E940924819504C007
-:10492000813F29F40E9409248093E3010895823F86
-:1049300021F40E940924819504C0833F29F40E9438
-:1049400009248093E2010895893F19F40E945124BB
-:1049500005C08A3F31F40E94512481958093E4017F
-:1049600008958B3F21F40E945124819504C08C3F0F
-:1049700029F40E9451248093E5010895843F21F495
-:104980008091E101816017C0853F21F48091E101B0
-:10499000826011C0863F21F48091E10184600BC0E8
-:1049A000873F21F48091E101886005C0883F31F4A0
-:1049B0008091E10180618093E10108958D3F21F4B0
-:1049C0008091DF0181600BC08E3F21F48091DF0177
-:1049D000826005C08F3F29F48091DF01846080935D
-:1049E000DF010895803F39F48091E30187FF6CC0B7
-:1049F0001092E30169C0813F29F48091E301181608
-:104A0000BCF362C09091E201823F29F497FF5CC041
-:104A10001092E20159C0833F19F41916CCF354C027
-:104A2000893F41F48091E40118160CF04DC01092BA
-:104A3000E4014AC08A3F29F48091E40187FF44C021
-:104A4000F6CF8B3F39F48091E50187FF3DC010928E
-:104A5000E5013AC08C3F29F48091E5011816BCF3BA
-:104A600033C0843F21F48091E1018E7F17C0853FE0
-:104A700021F48091E1018D7F11C0863F21F4809166
-:104A8000E1018B7F0BC0873F21F48091E101877F9B
-:104A900005C0883F31F48091E1018F7E8093E10170
-:104AA00013C08D3F21F48091DF018E7F0BC08E3FBC
-:104AB00021F48091DF018D7F05C08F3F29F4809123
-:104AC000DF018B7F8093DF018091E20181110EC0B5
-:104AD0008091E30181110AC08091E401811106C037
-:104AE0008091E501811102C01092E001089580914A
-:104AF000D70183FF7EC088E396E00E945207809131
-:104B0000E1011F928F9383E396E09F938F930E941E
-:104B1000EB0781E396E00E9452072091E201822F89
-:104B2000992787FD90959F932F938EE296E09F9310
-:104B30008F930E94EB078CE296E00E94520720912F
-:104B4000E301822F992787FD90959F932F9389E208
-:104B500096E09F938F930E94EB0787E296E00E9476
-:104B600052072091E401822F992787FD90959F930A
-:104B70002F9384E296E09F938F930E94EB0782E24B
-:104B800096E00E9452072091E501822F992787FD28
-:104B900090959F932F938FE196E09F938F930E9420
-:104BA000EB078CE196E00E9452078091E0011F9292
-:104BB0008F9389E196E09F938F930E94EB0787E1A3
-:104BC00096E00E9452078091DF011F928F9384E14B
-:104BD00096E09F938F930E94EB0781E196E00E94FD
-:104BE00052078DB79EB74C960FB6F8949EBF0FBE76
-:104BF0008DBF81EE91E00E942A150E94D9219093E9
-:104C0000DE018093DD0108951F93CF93DF938091A0
-:104C1000DD019091DE010E94E5214091E0014423F5
-:104C200021F02091140130E006C0209115015AE0D6
-:104C3000259F900111248217930708F482C0809168
-:104C4000E2011091E301D091E401C091E5018111ED
-:104C500007C0111105C0D11103C0CC2309F471C0E4
-:104C60004F3F19F04F5F4093E001181624F40E9463
-:104C700009248093E2018091E20187FF05C00E9430
-:104C8000092481958093E201111624F40E940924DD
-:104C90008093E3018091E30187FF05C00E9409240E
-:104CA00081958093E3016091E201662339F11091CF
-:104CB000E301112319F1772767FD7095872F972F4F
-:104CC0000E94792C23E333E343E35FE30E94DD2C6E
-:104CD0000E94462C6093E201612F772767FD709553
-:104CE000872F972F0E94792C23E333E343E35FE37D
-:104CF0000E94DD2C0E94462C6093E3011D1624F4D3
-:104D00000E9451248093E4018091E40187FF05C053
-:104D10000E94512481958093E4011C1624F40E9482
-:104D200051248093E5018091E50187FF05C00E9431
-:104D3000512481958093E501DF91CF911F910C94CF
-:104D40007725DF91CF911F910895E1EEF1E085E0A5
-:104D5000DF011D928A95E9F71092E0011092DF01C0
-:104D600008958BE598E00E9452071F9281E08F938F
-:104D70001F9285E08F938DE098E09F938F930E9420
-:104D8000EB070F900F900F900F900F900F900895DA
-:104D90008330E9F128F4813061F0823009F108951F
-:104DA000853009F462C008F449C0863009F474C043
-:104DB000089520911501862F90E0820F911D8F3F5D
-:104DC000910520F4620F6093150103C08FEF80936B
-:104DD0001501809115011F928F9386E497E072C0B0
-:104DE00020911401862F90E0820F911D8F3F910535
-:104DF00020F4620F6093140103C08FEF80931401BD
-:104E0000809114011F928F9384E397E05BC02091FF
-:104E10001301862F90E0820F911D8F3F910520F4A2
-:104E2000620F6093130103C08FEF80931301809191
-:104E300013011F928F9381E297E044C020911201E9
-:104E4000862F90E0820F911D8F3F910520F4620F15
-:104E50006093120103C08FEF8093120180911201C1
-:104E60001F928F938CE097E02DC020911101862F27
-:104E700090E0820F911D8F3F910520F4620F6093A7
-:104E8000110103C08FEF80931101809111011F92D6
-:104E90008F9383EF96E016C020911001862F90E04B
-:104EA000820F911D8F3F910520F4620F60931001D6
-:104EB00003C08FEF80931001809110011F928F9398
-:104EC00088ED96E09F938F930E94EB070F900F90D1
-:104ED0000F900F900895833081F128F4813059F0BC
-:104EE0008230D1F00895853009F449C0B8F1863098
-:104EF00009F456C0089580911501681720F4861BA7
-:104F00008093150102C010921501809115011F9226
-:104F10008F9389EC96E054C080911401681720F4B7
-:104F2000861B8093140102C0109214018091140119
-:104F30001F928F9387EB96E043C08091130168170F
-:104F400020F4861B8093130102C0109213018091FC
-:104F500013011F928F9384EA96E032C08091120170
-:104F6000681720F4861B8093120102C01092120170
-:104F7000809112011F928F938FE896E021C080915B
-:104F80001101681720F4861B8093110102C0109252
-:104F90001101809111011F928F9386E796E010C056
-:104FA00080911001681720F4861B8093100102C0C5
-:104FB00010921001809110011F928F938BE596E063
-:104FC0009F938F930E94EB070F900F900F900F907D
-:104FD0000895CF93C82F1F928F9320E639E03F9317
-:104FE0002F930E94EB0761E070E080E090E004C046
-:104FF000660F771F881F991FCA95D2F70E94981EC7
-:105000000F900F900F900F90CF910C949C1ACF930C
-:105010008D3109F465C0B0F58E3009F4CBC100F5CF
-:10502000873009F49BC1A8F4863009F06AC28091E8
-:10503000D701817F8E7F8093D70185E699E00E941A
-:10504000520781EA9DE00E94520781E08093E701C8
-:1050500080C1883009F44FC08B3009F47CC151C243
-:10506000863109F4EDC138F4803109F4B6C18131DB
-:1050700009F42DC246C2893109F4CBC18B3109F440
-:1050800086C13FC2853309F434C248F4873209F43B
-:1050900030C208F430C2893209F42BC232C28334E0
-:1050A00038F48A3308F029C2883309F454C129C27C
-:1050B000833409F41EC2883409F023C20E949C1A6A
-:1050C00080E99DE00E9452079FEF23ED80E391501D
-:1050D00020408040E1F700C000000E94332239C127
-:1050E00080EB9DE00E9452070E94002C0E94D91480
-:1050F0000E94170D2EC185EA9DE00E94520786E7A7
-:105100009BE00E9452070E94F7231F928F9383E730
-:105110009BE09F938F930E94EB0781E79BE00E94A7
-:1051200052070E94EE23C82F8EE59BE00E94520793
-:105130001F92CF9329E53BE03F932F930E94EB070B
-:1051400087E59BE00E9452078DE49BE00E94520796
-:105150008C2F81701F928F932AE43BE03F932F9313
-:105160000E94EB0788E49BE00E9452078EE39BE0DD
-:105170000E945207C1FB882780F91F928F932BE36F
-:105180003BE03F932F930E94EB0789E39BE00E9453
-:1051900052078DE29BE00E945207C2FB882780F9EC
-:1051A0001F928F932AE23BE03F932F930E94EB07DD
-:1051B00088E29BE00E9452078FE19BE00E94520729
-:1051C000C3FBCC27C0F91F92CF938CE19BE09F9348
-:1051D0008F930E94EB078AE19BE00E9452070E9496
-:1051E0000024C82F86E09BE00E9452071F92CF93B5
-:1051F00021E03BE03F932F930E94EB078FEF9AE073
-:105200000E94520786EE9AE00E9452078C2F81700E
-:105210001F928F9323EE3AE03F932F930E94EB0768
-:105220008DB79EB780960FB6F8949EBF0FBE8DBF08
-:1052300081EE9AE00E9452078AEC9AE00E9452079F
-:10524000C1FB882780F91F928F9327EC3AE03F93A8
-:105250002F930E94EB0785EC9AE00E94520783EBA4
-:105260009AE00E945207C2FB882780F91F928F9311
-:1052700020EB3AE03F932F930E94EB078EEA9AE0EF
-:105280000E9452078CE99AE00E945207C3FB8827CC
-:1052900080F91F928F9329E93AE03F932F930E9460
-:1052A000EB0787E99AE00E9452078DE89AE00E9496
-:1052B0005207C4FB882780F91F928F932AE83AE0AF
-:1052C0003F932F930E94EB0788E89AE00E945207D1
-:1052D00086E79AE00E945207C5FB882780F91F9253
-:1052E0008F9323E73AE03F932F930E94EB0781E7E8
-:1052F0009AE00E94520785E59AE00E945207C6FB99
-:10530000882780F91F928F9322E53AE03F932F93ED
-:105310000E94EB0780E59AE00E94520788E49AE039
-:105320000E945207C7FBCC27C0F91F92CF9385E498
-:105330009AE09F938F930E94EB0783E49AE00E9488
-:1053400052078DB79EB74C960FB6F8949EBF0FBE0E
-:105350008DBFC1E0DBC08CE899E058C08091D701D7
-:10536000C82FC17080FF09C083E89DE00E945207EA
-:105370008091D701817F8E7F44C087E79DE00E94A6
-:1053800052078091D70181608093D701E2CF80914D
-:10539000D70181FBCC27C0F991E0C927C0FB81F977
-:1053A0008093D701CC2319F08AE69DE025C08CE5D7
-:1053B0009DE02CC08091D70182FBCC27C0F991E001
-:1053C000C927C0FB82F98093D701CC2319F08DE463
-:1053D0009DE012C08DE39DE019C08091D70183FB51
-:1053E000CC27C0F991E0C927C0FB83F98093D7018E
-:1053F000CC2351F081E39DE00E9452078091D701B8
-:1054000081608093D70182C084E29DE00E945207B0
-:10541000A0CF85E19DE00E94520789EE9CE00E94AA
-:1054200052078CEA9CE00E94520785E89CE00E94AB
-:10543000520781E49CE00E94520786E19CE0E6CF9F
-:1054400088E09CE00E9452070E94D9141F928F931B
-:105450008EEE9BE09F938F930E94EB0780910C014F
-:105460001F928F9387ED9BE09F938F930E94EB0792
-:1054700080916E011F928F9384EC9BE09F938F939A
-:105480000E94EB0780910D011F928F9381EB9BE0AF
-:105490009F938F930E94EB078091D9019091DA013D
-:1054A000A091DB01B091DC01BF93AF939F938F93E9
-:1054B0008DE99BE09F938F930E94EB078DB79EB77A
-:1054C00046960FB6F8949EBF0FBE8DBF42CF0E9486
-:1054D0009C1AC0910D0181E0C827C0930D01CC2317
-:1054E00029F083E99BE00E94520710C088E89BE006
-:1054F0008DCF80E003C08D5101C089530E94E92700
-:1055000028CF86E89BE00E945207C0E08C2FCF9105
-:10551000089580E0089580E00895CF93C82F80918A
-:10552000E701813081F020F0823009F44CC042C1A3
-:10553000A0910E01B0910F018C91813169F08232FE
-:1055400009F03AC109C0A0910E01B0910F018C91F0
-:10555000813111F0823249F48C2F0E94892A811105
-:105560002FC08C2F0E9407282CC08C2F0E948B2AC2
-:10557000811126C0C431E1F070F4CB3081F0C0312C
-:10558000D1F40E94B12688E599E00E94520782E09A
-:105590008093E70115C0C93259F0C83361F485E63C
-:1055A00099E00E9452078CE599E00E94520708C0DA
-:1055B0001092E70103C186E599E00E945207FEC000
-:1055C00081E08170FDC0C43220F5CE3108F0C0C04A
-:1055D000CB3099F1C8F4C73009F0D2C08AE080938B
-:1055E000150194E19093140193E09093130180933B
-:1055F000120188E08093110188E2809310018CEF02
-:1056000097E00E945207BFC0C33149F1C431C1F0D5
-:10561000B7C0CB3409F4A9C028F4C93289F0C83323
-:1056200061F0AEC0C13509F49EC0C23509F499C01D
-:10563000CE3409F0A5C06AE09EC00E94B126A3C086
-:105640008091E601882319F01092E6019CC089E060
-:1056500098E00E94520781E08093E701B1C083EE99
-:1056600097E00E94520781ED97E00E9452078091D7
-:1056700015011F928F938EEC97E09F938F930E945A
-:10568000EB078CEC97E00E9452078AEB97E00E94B0
-:105690005207809114011F928F9387EB97E09F939D
-:1056A0008F930E94EB0785EB97E00E94520786EAF2
-:1056B00097E00E945207809113011F928F9383EA13
-:1056C00097E09F938F930E94EB0781EA97E00E94F7
-:1056D000520780E997E00E945207809112011F92C1
-:1056E0008F938DE897E09F938F930E94EB078BE851
-:1056F00097E00E94520786E797E00E945207809148
-:1057000011011F928F9383E797E09F938F930E94DD
-:10571000EB0781E797E00E9452078AE597E00E9435
-:105720005207809110011F928F9387E597E09F9316
-:105730008F930E94EB0785E597E00E9452078DB793
-:105740009EB748960FB6F8949EBF0FBE8DBF1BC084
-:10575000CE51EC2FF0E0E15DFE4F80818093E601B9
-:1057600012C061E003C061E006C06AE08091E6011A
-:105770000E94C82608C08091E6010E946B2703C0E2
-:105780008AEF97E013C08091E601882369F01F92A9
-:105790008F9384EF97E09F938F930E94EB070F9076
-:1057A0000F900F900F9004C081EF97E00E94520776
-:1057B00081E006C01092E70180E002C080E001CFE6
-:1057C000CF910895E1E8F0E0808188608083808156
-:1057D000816080838FB7F89493E09093890090ED77
-:1057E000909388008FBF0895EFE6F0E0808182609B
-:1057F00080830895EFE6F0E080818D7F80830895B7
-:10580000EFE6F0E0808192E08927808308951F927F
-:105810000F920FB60F9211242F933F934F935F93E4
-:105820006F937F938F939F93AF93BF93EF93FF9368
-:105830008091E8019091E90101969093E9018093AC
-:10584000E801811103C082E00E94170DE091E90197
-:10585000E695E695F0E0E054F24FE4918091E8019E
-:105860008E1303C080E00E94170DFF91EF91BF914E
-:10587000AF919F918F917F916F915F914F913F91E8
-:105880002F910F900FBE0F901F90189504D0689421
-:10589000B1118DC0089570D088F09F5790F0B92F46
-:1058A0009927B751A0F0D1F0660F771F881F991F75
-:1058B0001AF0BA95C9F712C0B13081F077D0B1E0D3
-:1058C000089574C0672F782F8827B85F39F0B93FE3
-:1058D000CCF3869577956795B395D9F73EF4909577
-:1058E0008095709561957F4F8F4F9F4F0895E894F5
-:1058F00009C097FB3EF490958095709561957F4F18
-:105900008F4F9F4F9923A9F0F92F96E9BB279395C5
-:10591000F695879577956795B795F111F8CFFAF4D5
-:10592000BB0F11F460FF1BC06F5F7F4F8F4F9F4F06
-:1059300016C0882311F096E911C0772321F09EE864
-:10594000872F762F05C0662371F096E8862F70E0CA
-:1059500060E02AF09A95660F771F881FDAF7880FA4
-:105960009695879597F9089557FD9058440F551FC0
-:1059700059F05F3F71F04795880F97FB991F61F0D1
-:105980009F3F79F087950895121613061406551F48
-:10599000F2CF4695F1DF08C0161617061806991FB4
-:1059A000F1CF86957105610508940895E894BB27A9
-:1059B00066277727CB0197F908950BD078C069D077
-:1059C00028F06ED018F0952309F05AC05FC011245A
-:1059D000EECFCADFA0F3959FD1F3950F50E0551F8E
-:1059E000629FF001729FBB27F00DB11D639FAA2734
-:1059F000F00DB11DAA1F649F6627B00DA11D661F83
-:105A0000829F2227B00DA11D621F739FB00DA11DA3
-:105A1000621F839FA00D611D221F749F3327A00D5D
-:105A2000611D231F849F600D211D822F762F6A2FF9
-:105A300011249F5750408AF0E1F088234AF0EE0F7E
-:105A4000FF1FBB1F661F771F881F91505040A9F78B
-:105A50009E3F510570F014C0AACF5F3FECF3983E13
-:105A6000DCF3869577956795B795F795E7959F5FF2
-:105A7000C1F7FE2B880F911D9695879597F908958C
-:105A800097F99F6780E870E060E008959FEF80ECF1
-:105A9000089500240A941616170618060906089594
-:105AA00000240A9412161306140605060895092EFA
-:105AB0000394000C11F4882352F0BB0F40F4BF2B69
-:105AC00011F460FF04C06F5F7F4F8F4F9F4F0895A9
-:105AD000991B79E004C0991F961708F0961B881F40
-:105AE0007A95C9F78095089597FB072E16F40094D0
-:105AF00007D077FD09D00E948E2D07FC05D03EF41B
-:105B0000909581959F4F0895709561957F4F089569
-:105B1000EE0FFF1F0590F491E02D0994AA1BBB1B0B
-:105B200051E107C0AA1FBB1FA617B70710F0A61B9D
-:105B3000B70B881F991F5A95A9F780959095BC01BE
-:105B4000CD010895F999FECF92BD81BDF89A9927AC
-:105B500080B50895A8E1B0E042E050E00C94C52D76
-:105B6000262FF999FECF1FBA92BD81BD20BD0FB679
-:105B7000F894FA9AF99A0FBE019608950E94B02DF2
-:105B8000272F0C94B12DDC01CB01FC01F999FECF3C
-:105B900006C0F2BDE1BDF89A319600B40D924150B5
-:0A5BA0005040B8F70895F894FFCFC5
-:105BAA002002180D090EE60DB20D7F0D0101C50187
-:105BBA0028080A03140A3F4D3620394605F904C35A
-:105BCA0004A3046A04DD03F6030F0428044804014D
-:0A5BDA000203040506070809000095
+:1002D00001000100AE00010001000000160345000E
+:1002E000720067006F0044006F0078002000450036
+:1002F0005A00000016034500720067006F004400BA
+:100300006F007800200045005A0000000403090433
+:1003100009026D00040100A0FA09040000010301B4
+:100320000100092111010001223F00070581030896
+:10033000000A090401000103010200092111010062
+:1003400001224D000705820308000A09040200018A
+:100350000300000009211101000122360007058376
+:100360000308000A09040300010300000009211129
+:100370000100012239000705840310000112011059
+:100380000100000008EDFE07130100010200010555
+:10039000010906A101050719E029E71500250195C6
+:1003A0000875018102050819012905950575019156
+:1003B000029501750391010507190029771500259C
+:1003C00001957875018102C005010980A1018502AE
+:1003D00016010026B7001A01002AB7007510950112
+:1003E0008100C0050C0901A1018503160100269CAE
+:1003F000021A01002A9C02751095018100C00501B6
+:100400000902A1010901A100050919012905150029
+:10041000250195057501810295017503810105018D
+:10042000093009311581257F950275088106093843
+:100430001581257F950175088106050C0A3802157E
+:1004400081257F950175088106C0C005010906A1B7
+:1004500001050719E029E7150025019508750181B7
+:100460000295017508810105081901290595057591
+:100470000191029501750391010507190029FF15E6
+:100480000025FF950675088100C0000000000000EF
+:100490000000000000010204060A0F17202C3A4A4F
+:1004A0005D71879DB3C7DAE9F5FCFFFCF5E9DAC7B2
+:1004B000B39D87715D4A3A2C20170F0A060402018A
+:1004C0000000000000000000000011241FBECFEF5C
+:1004D000DAE0DEBFCDBF04B603FE24C08091EE019A
+:1004E0009091EF01A091F001B091F1018730904B14
+:1004F000A740B04BB9F41092EE011092EF011092A8
+:10050000F0011092F10114BE84B7877F84BF88E1A7
+:100510000FB6F89480936000109260000FBEE0E088
+:10052000FFE3099511E0A0E0B1E0E8ECF5E402C0DA
+:1005300005900D92A433B107D9F711E0A4E3B1E01F
+:1005400001C01D92AE3EB107E1F70E940B090C9469
+:10055000E2220C94000061110BC0FC01828188230F
+:1005600021F085EE0E946C0F03C085EE0E943410CE
+:1005700080E090E0089508956091B1017091B2011A
+:100580008091B3019091B4010E94F01956985E9841
+:1005900025982D9826982E9827982F98813019F015
+:1005A000823021F00895259A2D9A0895269A2E9A40
+:1005B00008958CEB92E0892B11F00E94BC0280E040
+:1005C00090E0089556985E9825982D9826982E9834
+:1005D00027982F988FEF90E0909389008093880060
+:1005E00090938B0080938A0090938D0080938C0071
+:1005F000259A2D9A2FEF80E792E02150804090407D
+:10060000E1F700C00000269A2E9A2FEF80E792E0D3
+:10061000215080409040E1F700C00000279A2F9AB7
+:100620002FEF80E792E0215080409040E1F700C03A
+:10063000000025982D982FEF80E792E02150804010
+:100640009040E1F700C0000026982E982FEF80E739
+:1006500092E0215080409040E1F700C000002798D0
+:100660002F9856985E9825982D9826982E9827981A
+:100670002F98089589EA8093800089E08093810013
+:1006800024982C983F988AB18F748AB96E98479AAB
+:100690008BB1806B8BB9769A0E94E2028BEB92E071
+:1006A000892B11F00E94BB0280E090E0089580E267
+:1006B000809300018091340181110EC00E94A60335
+:1006C00081E0809334012FEF83ED90E3215080404F
+:1006D0009040E1F700C0000080E40E94AC038093EA
+:1006E000000181112EC00E94D60380930001811168
+:1006F00028C00E94D60380930001811122C08FE39D
+:100700000E94D6038093000181111BC00E94CE037A
+:1007100080E40E94AC0380930001811112C08CE040
+:100720000E94D6038093000181110BC00E94D60362
+:1007300080930001811105C08FE30E94D60380934E
+:1007400000010E94CE038091000108951092B9002B
+:100750008AE08093B800089594EA9093BC00909149
+:10076000BC0097FFFCCF9091B900987F983021F0A2
+:10077000903111F081E008958093BB0084E880936C
+:10078000BC008091BC0087FFFCCF8091B900887FBE
+:10079000883111F0803471F780E0089584E9809306
+:1007A000BC008091BC0084FDFCCF08958093BB0009
+:1007B00084E88093BC008091BC0087FFFCCF9091BF
+:1007C000B900987F81E0983209F480E0089584E8C8
+:1007D0008093BC008091BC0087FFFCCF8091BB0060
+:1007E000089580910001811115C080E40E94AC033E
+:1007F0008093000181110CC082E10E94D603809396
+:100800000001811105C08FEF0E94D6038093000183
+:100810000E94CE0384B1807F84B985B1807F85B981
+:100820008AB1837F8AB98BB1837F8BB93E98469812
+:1008300008950E945703809300010E94F10380B342
+:100840008C7080BB81B3836F81BBE4E4F1E0A6E3ED
+:10085000B1E011921D9281E0E235F807D1F78AE309
+:1008600093E0892B11F00C943A030895BF92CF9234
+:10087000DF92EF92FF920F931F93CF93DF938091BC
+:100880000001882379F0809135018F5F80933501D5
+:10089000811108C00E94570380930001811102C09A
+:1008A0000E94E20206E311E0C0E0D0E0DD24D39430
+:1008B00082E0C82EEE24E394F12CC73000F580913D
+:1008C0000001811162C080E40E94AC0380930001AA
+:1008D000811112C082E10E94D60380930001811130
+:1008E0000BC0C7010C2E01C0880F0A94EAF780954F
+:1008F0000E94D603809300010E94CE0346C0CA30F6
+:10090000A1F028F4C83059F0C93061F005C0CC30EE
+:1009100089F070F0CD3089F0209A289810C0219A83
+:1009200029980DC0229A2A980AC0239A2B9807C0AA
+:10093000529A01C0539A5B9802C03E9A4698E0EAE8
+:10094000EA95F1F78FB1799960C092E081708D25B9
+:10095000892B7C9B02C090E001C094E0892B7D9B99
+:1009600002C090E001C098E0892B7E9B02C090E01D
+:1009700001C090E1892B9FB19095991F9927991FEC
+:100980009295990F907E892B0FC080910001811163
+:1009900051C080E40E94AC03809300018823B9F128
+:1009A000B12C0E94CE038B2DF8019081981719F07D
+:1009B0008083C09201010E94F10321960F5F1F4FB7
+:1009C000CE30D10509F079CF809101018823B1F0B3
+:1009D000815080930101882339F08FE99FE00197CE
+:1009E000F1F700C000000AC0A4E4B1E0E6E3F1E0E2
+:1009F00081918D9391E0E434F907D1F789ED92E08C
+:100A0000892BD1F00E94D90217C090E09FCF83E1DB
+:100A10000E94D603809300018111C2CF81E40E941D
+:100A2000AC03809300018111BBCF0E94E703B82E75
+:100A3000B094B7CF80E0B8CF81E0DF91CF911F9124
+:100A40000F91FF90EF90DF90CF90BF900895E82F27
+:100A5000F0E0EC5BFE4F8081089508958B3B91059B
+:100A600078F4883A910540F5853A9105D0F48430C0
+:100A7000910508F0B1C08130910509F4ADC06BC09B
+:100A8000803E910508F467C0883E910508F4A4C033
+:100A90009C01205F31092031310508F05CC0906570
+:100AA0000895853A910509F459C0863A910509F4EB
+:100AB00058C083E890E40895883A910509F454C039
+:100AC000893A910509F453C08A3A910509F452C054
+:100AD0008B3A910509F451C08C3A910509F450C044
+:100AE0008D3A910509F44FC0803B910509F44EC041
+:100AF0008E3A910509F44DC08F3A910509F44CC026
+:100B0000813B910509F44BC0823B910509F44AC031
+:100B1000833B910509F449C0843B910509F448C021
+:100B2000853B910509F447C0863B910509F446C011
+:100B3000873B910509F445C0883B910509F444C001
+:100B4000893B910509F443C08A3B910509F042C0F5
+:100B50008AE296E4089580E090E0089581E890E4C8
+:100B6000089582E890E4089582EE94E4089589EE71
+:100B700094E408958AEE94E4089585EB94E408954E
+:100B800086EB94E4089587EB94E408958CEC94E468
+:100B900008958DEC94E4089583E895E408958AE837
+:100BA00095E4089582E995E4089584E995E408952B
+:100BB00081E296E4089583E296E4089584E296E45F
+:100BC000089585E296E4089586E296E4089587E222
+:100BD00096E4089580E094E40895089596E0799F5E
+:100BE000F001112494E5899FE00DF11D1124E60F19
+:100BF000F11DEE0FFF1FEC51FF4F85919491089569
+:100C0000880F991F805A9040FC0185919491089516
+:100C1000880F991F80529F4FFC01859194910895F0
+:100C200026E0729FF001112444E5849FE00DF11D40
+:100C30001124E60FF11DEE0FFF1FEC51FF4F259120
+:100C40003491C9019A9581159F4110F4C901089505
+:100C5000C90190528115904128F4C9019F700E94EA
+:100C600008060895C90190538115904120F4C901E7
+:100C70009927906C0895211580E5380769F40E9442
+:100C8000A5139FEF24E34CE0915020404040E1F752
+:100C900000C000000C94E91A213080E5380731F4D7
+:100CA0008091CC0181608093CC010895C901905559
+:100CB0008115904108F050C0832F99278F70992794
+:100CC00081309105D9F4A9014370552702C0880FDE
+:100CD000991F4A95E2F79C68A90164E0440F551FEB
+:100CE0006A95E1F744275370842B952B73E0220F0C
+:100CF000331F7A95E1F7207633271DC082309105A6
+:100D000029F4922F8827816F906A08958330910586
+:100D1000A9F4A9014370552781E090E002C0880F33
+:100D2000991F4A95E2F79C6843E0220F331F4A95CA
+:100D3000E1F7207E3770822B932B08950497F1F40E
+:100D4000A9014370552781E090E002C0880F991FE8
+:100D50004A95E2F79A68E8CFC9019057811590410A
+:100D600020F4C9019F7090620895C90190588115BF
+:100D7000904120F4C9019F70906A0895203E31058A
+:100D8000E0F4203C310558F52133310509F470C0F9
+:100D900048F42932310509F464C02A32310509F4D6
+:100DA0006EC074C029333105F1F022383105D9F015
+:100DB0002533310509F44EC069C0233E310589F160
+:100DC00038F4203E3105C1F0223E3105E1F05EC02D
+:100DD000263E310569F1273E3105A9F157C0C90109
+:100DE0000E94000608958091DF0180FD02C081FF0E
+:100DF0004DC080EE90E04BC08091DF0180FFF9CFC5
+:100E000089E390E044C08091DF0182FF0EC08091B1
+:100E1000DF0184FF03C080E090E039C083EE90E002
+:100E200036C08091DF0182FFF2CF82EE90E02FC0CA
+:100E30008091DF0183FF0BC08091DF0184FDEBCF48
+:100E400087EE90E024C08091DF0183FFF5CF86EE2E
+:100E500090E01DC08091DF0185FF07C089E290E02E
+:100E600016C08091DF0185FFF9CF85E390E00FC0C8
+:100E70008091DF0186FF07C08AE290E008C0809180
+:100E8000DF0186FFF9CF81E390E001C0C9010E9434
+:100E90002E0508950895809162010895CF93DF9300
+:100EA00000D01F92CDB7DEB72091E501243019F5AF
+:100EB00023E029839B838A832093E9008FEF90911D
+:100EC000E800815095FD06C095ED9A95F1F7000078
+:100ED0008111F5CF8091E80085FF0DC040E050E022
+:100EE00063E070E0CE0101960E94B8098091E800AD
+:100EF0008E778093E8000F900F900F90DF91CF9145
+:100F00000895CF93DF9300D01F92CDB7DEB7209125
+:100F1000E501243021F522E029839B838A8383E045
+:100F20008093E9008FEF9091E800815095FD06C015
+:100F300095ED9A95F1F700008111F5CF8091E800C9
+:100F400085FF0DC040E050E063E070E0CE01019607
+:100F50000E94B8098091E8008E778093E8000F9096
+:100F60000F900F90DF91CF9108952091E5012430EB
+:100F7000F1F422E02093E9002FEF3091E8002150B6
+:100F800035FD06C035ED3A95F1F700002111F5CF9A
+:100F90002091E80025FF0BC040E050E065E070E0E4
+:100FA0000E94B8098091E8008E778093E800089548
+:100FB000CF93DF93EC018091E501843009F046C0C6
+:100FC00090910C019923D9F090910D019923B9F0DA
+:100FD0008093E9008FEF9091E800815095FD06C065
+:100FE00095E19A95F1F700008111F5CF8091E80025
+:100FF00085FF2CC040E050E060E170E017C081E068
+:101000008093E9008FEF9091E800815095FD06C034
+:1010100095ED9A95F1F700008111F5CF8091E800E8
+:1010200085FF14C040E050E068E070E0CE010E940F
+:10103000B8098091E8008E778093E80080E1FE0196
+:10104000A2E5B1E001900D928A95E1F7DF91CF9191
+:1010500008958091E401811109C00E944A0B0E9409
+:10106000A70B8091E20084608093E20008951092C3
+:10107000E401089508950C940F210E94801A0E94A3
+:1010800015210E94440E0C944A0742E061EC81E075
+:101090000E94C40A42E061EC82E00E94C40A42E07D
+:1010A00061EC83E00E94C40A42E161EC84E00C94AC
+:1010B000C40A8091E701833009F455C030F48130CF
+:1010C00071F0823009F48EC008958A3009F47AC034
+:1010D0008B3009F460C0893009F09CC020C0809139
+:1010E000E601813A09F096C08091E800877F8093FD
+:1010F000E8008091EA019091EB01892B21F060E0FA
+:1011000080E090E003C060E182E591E070E00E9441
+:10111000010A8091E8008B778093E8000895809120
+:10112000E601813209F076C08091EA019091EB01ED
+:10113000009719F0039709F06DC08091E800877F50
+:101140008093E8008091E80082FD05C08091E50170
+:101150008111F8CF5FC08091F1008093620180918E
+:10116000E8008B7753C08091E601813A09F052C0C4
+:101170008091EA019091EB01892B09F04BC080919D
+:10118000E800877F8093E8008091E80080FFFCCF33
+:1011900080910C0136C08091E6018132D9F58091B1
+:1011A000EA019091EB01892BA9F58091E800877FF6
+:1011B0008093E8000E94F90A8091E80180930C0175
+:1011C0000C94A5138091E601813221F58091E8000D
+:1011D000877F8093E8000E94F90A8091E90180935B
+:1011E000630108958091E601813AA1F48091E800BD
+:1011F000877F8093E8008091E80080FFFCCF80919A
+:1012000063018093F1008091E8008E778093E8007D
+:101210000C94F90A089584B7877F84BF88E10FB6DC
+:10122000F89480936000109260000FBE90E080E818
+:101230000FB6F89480936100909361000FBE0E94F6
+:10124000930E0E944A0B0E94A70B8091E2008460DB
+:101250008093E20078940E94220E0E94950E82E014
+:1012600091E00E943F0E0E94FD208091E5018530B3
+:1012700069F40E94431A8091E3018823B1F30E942C
+:101280006B1A882391F30E94A209EFCF0E949B0E54
+:10129000ECCF292F332723303105A9F06CF421300E
+:1012A000310509F442C02230310509F043C08DE612
+:1012B00090E020E133E042C021323105C9F0223212
+:1012C000310519F137C099278130910541F08230FD
+:1012D000910541F0892B71F5ECE0F3E005C0E4EFF6
+:1012E000F2E002C0ECEDF2E0849190E09F0126C0B4
+:1012F000643000F5E62FF0E0EE0FFF1FEE5DFE4FCD
+:101300002081318189E090E019C0643098F4E62FA3
+:10131000F0E0DF01AA0FBB1FA65EBE4F2D913C91EE
+:10132000EA5EFE4F808190E009C082E190E02DE707
+:1013300033E004C080E090E020E030E0FA01318347
+:101340002083089580E189BD82E189BD09B400FE52
+:10135000FDCF8091D8008F7D8093D8008091E000F0
+:1013600082608093E0008091E00081FDFCCF0895D1
+:10137000CF92DF92EF92FF920F931F93CF93DF9361
+:101380007C018B01EA010E941A0B811131C0209768
+:1013900031F088819981081B190BE80EF91EC12CC8
+:1013A000D12C0115110519F18091E80085FD14C0BB
+:1013B0008091E8008E778093E800209741F0888143
+:1013C00099818C0D9D1D9983888385E011C00E94B1
+:1013D0001A0B882331F30CC0F70181917F018093B0
+:1013E000F10001501109FFEFCF1ADF0ADACF80E0D8
+:1013F000DF91CF911F910F91FF90EF90DF90CF90F1
+:1014000008952091EC013091ED012617370748F03F
+:101410006115710539F42091E8002E772093E800DA
+:1014200001C0B901FC0120E061157105B9F180919D
+:10143000E501882309F440C0853009F43FC080915C
+:10144000E80083FD3DC08091E80082FF06C08091E6
+:10145000E80082FF26C080E008958091E80080FFC8
+:10146000E3CF2091F3008091F20090E0922B611580
+:10147000710551F08830910538F421912093F100E5
+:10148000615071090196F3CF21E0089709F020E03F
+:101490008091E8008E778093E800C6CF2111C7CFF6
+:1014A000D6CF8091E501882339F0853039F08091DD
+:1014B000E80083FFCCCF04C082E0089583E0089564
+:1014C00081E008952091EC013091ED012617370756
+:1014D00048F06115710539F42091E8002E772093CA
+:1014E000E80001C0B901FC0120E061157105C1F1FE
+:1014F0008091E501882309F441C0853009F440C09A
+:101500008091E80083FD3EC08091E80082FF06C024
+:101510008091E80082FF27C080E008958091E80074
+:1015200080FFE3CF2091F3008091F20090E0922BB6
+:101530006115710559F08830910540F4249120938C
+:10154000F1003196615071090196F2CF21E00897C0
+:1015500009F020E08091E8008E778093E800C5CF05
+:101560002111C6CFD5CF8091E501882339F0853090
+:1015700039F08091E80083FFCBCF04C082E008956A
+:1015800083E0089581E00895982F973058F590935F
+:10159000E900981739F07091EC002091ED0050911E
+:1015A000F00003C0242F762F50E021FF19C03091A6
+:1015B000EB003E7F3093EB003091ED003D7F3093A8
+:1015C000ED003091EB0031603093EB007093EC0054
+:1015D0002093ED005093F0002091EE0027FF07C00C
+:1015E0009F5FD3CF8F708093E90081E0089580E002
+:1015F00008958091E60187FD05C08091E80080FF95
+:101600000EC012C08091E80082FD05C08091E50106
+:101610008111F8CF08958091E8008B7708C0809100
+:10162000E5018111EACF08958091E8008E778093DB
+:10163000E80008958091E4009091E50045E620914E
+:10164000EC0020FF21C02091E80020FD21C0209166
+:10165000E501222389F0253089F02091EB0025FD5A
+:101660000FC02091E4003091E5002817390739F3C5
+:10167000415041F0C901E3CF82E0089583E008952D
+:1016800081E0089584E008952091E80022FFDFCFF3
+:1016900080E008950E94B80B0E94C00BE0EEF0E0DD
+:1016A000808181608083E8EDF0E080818F778083A6
+:1016B00019BCA7EDB0E08C918E7F8C9380818F7EDA
+:1016C00080831092E40108950F931F93CF93DF93CB
+:1016D0000E94B80B0E94C00BC8EDD0E088818F77C4
+:1016E000888388818068888388818F7D888319BCFE
+:1016F0001092E5011092E1011092E3011092E201D3
+:1017000000EE10E0F80180818B7F8083888181600A
+:10171000888342E060E080E00E94C40AE1EEF0E0ED
+:1017200080818E7F8083E2EEF0E080818160808323
+:10173000808188608083F80180818E7F80838881AA
+:1017400080618883DF91CF911F910F910895E8ED1B
+:10175000F0E080818F7E8083E7EDF0E08081816022
+:10176000808384E082BF81E08093E4010C94640B69
+:10177000E8EDF0E080818E7F80831092E200089592
+:101780001092DA001092E10008951F920F920FB6A6
+:101790000F9211242F933F934F935F936F937F93F7
+:1017A0008F939F93AF93BF93EF93FF938091E1004B
+:1017B00082FF0BC08091E20082FF07C08091E100B0
+:1017C0008B7F8093E1000E94210E8091DA0080FFE0
+:1017D0001FC08091D80080FF1BC08091DA008E7FEF
+:1017E0008093DA008091D90080FF0DC080E189BD2F
+:1017F00082E189BD09B400FEFDCF81E08093E5015F
+:101800000E94290805C019BC1092E5010E94370802
+:101810008091E10080FF19C08091E20080FF15C037
+:101820008091E2008E7F8093E2008091E2008061EF
+:101830008093E2008091D80080628093D80019BC28
+:1018400085E08093E5010E943B088091E10084FFE0
+:1018500030C08091E20084FF2CC080E189BD82E12C
+:1018600089BD09B400FEFDCF8091D8008F7D8093A3
+:10187000D8008091E1008F7E8093E1008091E200AA
+:101880008F7E8093E2008091E20081608093E2008D
+:101890008091E101882311F084E007C08091E3008A
+:1018A00087FF02C083E001C081E08093E5010E94D0
+:1018B0003D088091E10083FF29C08091E20083FF11
+:1018C00025C08091E100877F8093E10082E08093D2
+:1018D000E5011092E1018091E1008E7F8093E100AB
+:1018E0008091E2008E7F8093E2008091E20080612F
+:1018F0008093E20042E060E080E00E94C40A8091B0
+:10190000F00088608093F0000E943A08FF91EF9108
+:10191000BF91AF919F918F917F916F915F914F9107
+:101920003F912F910F900FBE0F901F9018951F920F
+:101930000F920FB60F9211242F933F934F935F9303
+:101940006F937F938F939F93AF93BF93CF93EF93B7
+:10195000FF93C091E900CF708091EC001092E900F4
+:101960008091F000877F8093F00078940E94D30CE0
+:101970001092E9008091F00088608093F000C0939D
+:10198000E900FF91EF91CF91BF91AF919F918F911E
+:101990007F916F915F914F913F912F910F900FBE6B
+:1019A0000F901F9018951F93CF93DF93CDB7DEB79D
+:1019B000AA970FB6F894DEBF0FBECDBFE6EEF1E0FA
+:1019C0008091F100819321E0EE3EF207C9F70E9479
+:1019D00059088091E80083FF1CC12091E6013091F5
+:1019E000E701832F90E08A30910508F012C1FC01D5
+:1019F000EA5AFF4F0C949722203881F0223809F0E0
+:101A000008C18091EA018F708093E9008091EB001A
+:101A100085FB882780F91092E90006C08091E201D9
+:101A20009091E301911182609091E800977F9093EB
+:101A3000E8008093F1001092F100C5C0822F8D7FE5
+:101A400009F0E7C0222319F0223061F0E2C0809152
+:101A5000E801813009F0DDC0333009F080E0809387
+:101A6000E30128C08091E801811124C02091EA019E
+:101A70002F7009F4CEC02093E9008091EB0080FF25
+:101A800019C08091EB00333011F4806211C0806185
+:101A90008093EB0081E090E0022E01C0880F0A9451
+:101AA000EAF78093EA001092EA008091EB008860E8
+:101AB0008093EB001092E9008091E800877F86C058
+:101AC0002111A7C01091E8011F778091E300807871
+:101AD000812B8093E3008091E800877F8093E8006A
+:101AE0000E94F90A8091E80080FFFCCF8091E3001A
+:101AF00080688093E300112311F083E001C082E04D
+:101B00008093E50186C02058223008F082C0809181
+:101B1000E8019091E9018C3D23E0920779F583E09B
+:101B20008A838AE289834FB7F894DE01139620E016
+:101B30003EE051E2E32FF0E050935700E49120FFA4
+:101B400003C0E295EF703F5FEF708E2F90E0EA30B8
+:101B500010F0C79601C0C0968D939D932F5F2431DE
+:101B600049F74FBF8091E800877F8093E8006AE2E1
+:101B700070E0CE0101960E94010A14C0AE014F5FD1
+:101B80005F4F6091EA010E944909009709F441C042
+:101B90002091E800277F2093E800BC0189819A8189
+:101BA0000E94620A8091E8008B778093E80031C040
+:101BB000203879F58091E800877F8093E800809154
+:101BC000E1018093F1008091E8008E778093E80036
+:101BD0000E94F90A1EC021111CC09091E8019230A8
+:101BE000C0F48091E800877F8093E8009093E10142
+:101BF0000E94F90A8091E101811104C08091E30003
+:101C000087FF02C084E001C081E08093E5010E946B
+:101C100045088091E80083FF0AC08091E800877F33
+:101C20008093E8008091EB0080628093EB00AA969D
+:101C30000FB6F894DEBF0FBECDBFDF91CF911F91DD
+:101C400008950895CF938091E5018823B1F08091A4
+:101C5000E9008F709091EC0090FF02C090E801C005
+:101C600090E0C92FC82B1092E9008091E80083FD15
+:101C70000E94D30CCF70C093E900CF910895909348
+:101C80006901809368010895E0916801F09169010C
+:101C9000309721F00190F081E02D099480E00895C3
+:101CA000E0916801F0916901309721F00280F381A1
+:101CB000E02D09940895E0916801F0916901309751
+:101CC00021F00480F581E02D0994089520916601AA
+:101CD000309167018217930771F0909367018093A9
+:101CE0006601E0916801F0916901309721F006806A
+:101CF000F781E02D099408952091640130916501E8
+:101D00008217930771F09093650180936401E091CD
+:101D10006801F0916901309721F00084F185E02D90
+:101D20000994089508950C94920E0E94861A0E94B8
+:101D300019040C944C1BCF92DF92EF92FF920F93F9
+:101D40001F93CF93DF93CDB7DEB72B970FB6F894E1
+:101D5000DEBF0FBECDBF0E9436043BE6E32E31E06E
+:101D6000F32E00E010E0C02E802F0E942705F7011F
+:101D7000D1907F01D826B1F40F5F1F4F0E301105AF
+:101D800091F78FEF89838A831B820E948F1A81606B
+:101D9000782F9D838C8349815A816B818D810E942C
+:101DA0003E0F41C09091CC0191FF04C08B870E94EF
+:101DB0002D058B8520E030E04D2D50E0922FBA01AB
+:101DC000022E02C0759567950A94E2F760FF25C060
+:101DD0002E83CF82EE24E394F12C02C0EE0CFF1C84
+:101DE0009A95E2F790E08E219F2121E0892B09F45A
+:101DF00020E028870E948F1A8160782F9A87898730
+:101E00004E815F8168858A850E943E0FF801E55901
+:101E1000FE4F80818E25808306C02F5F3F4F263086
+:101E2000310561F6A9CF0E94301E10916A010E940F
+:101E3000440E1817A1F00E94440E80936A012B965D
+:101E40000FB6F894DEBF0FBECDBFDF91CF911F91CB
+:101E50000F91FF90EF90DF90CF900C944A072B9654
+:101E60000FB6F894DEBF0FBECDBFDF91CF911F91AB
+:101E70000F91FF90EF90DF90CF900895CF93DF9375
+:101E8000CDB7DEB72B970FB6F894DEBF0FBECDBF30
+:101E90004F83588769877A878B87DE01119686E0A2
+:101EA000FD0111928A95E9F785E0FE0137960190D0
+:101EB0000D928A95E1F749815A816B817C818D81F0
+:101EC0009E810E9471162B960FB6F894DEBF0FBE4E
+:101ED000CDBFDF91CF910895CF93C82F882309F408
+:101EE000C1C0823859F40E94440E81FDBBC089E311
+:101EF0000E9410190E94CA1989E30CC0833879F432
+:101F00000E94440E80FDAEC083E50E9410190E941D
+:101F1000CA1983E50E945019CF910C94CA198438CC
+:101F200059F40E94440E82FD9DC087E40E9410195E
+:101F30000E94CA1987E4EECF8CEF8C0F813A48F4E7
+:101F40008C2F0E94652081118DC08C2F0E9410194A
+:101F5000E3CF80E28C0F883048F4C77081E001C085
+:101F6000880FCA95EAF70E949119D6CF8BE58C0F9E
+:101F7000833078F4C53A29F0C63A31F482E890E02B
+:101F800005C081E890E002C083E890E0CF910C9416
+:101F9000660E88E58C0F833108F064C0C83A39F1C9
+:101FA000C93A41F1CA3A49F1CB3A51F1CC3A59F127
+:101FB000CD3A61F1C03B69F1CE3A71F1CF3A79F196
+:101FC000C13B81F1C23B89F1C33B91F1C43B99F123
+:101FD000C53BA1F1C63BA9F1C73BB1F1C83BB9F183
+:101FE000C93BC1F1CA3BC9F58AE292E038C082EE32
+:101FF00090E035C089EE90E032C08AEE90E02FC0CC
+:1020000085EB90E02CC086EB90E029C087EB90E058
+:1020100026C08CEC90E023C08DEC90E020C083E8DB
+:1020200091E01DC08AE891E01AC082E991E017C0F2
+:1020300084E991E014C081E292E011C083E292E071
+:102040000EC084E292E00BC085E292E008C086E216
+:1020500092E005C087E292E002C080E090E0CF917C
+:102060000C947C0ECF910895882309F44BC08238DC
+:1020700059F40E94440E81FF45C089E30E94101963
+:102080000E94CA1989E30CC0833871F40E94440E7F
+:1020900080FF38C083E50E9410190E94CA1983E5A9
+:1020A0000E9450190C94CA19843859F40E94440EA5
+:1020B00082FF28C087E40E9410190E94CA1987E491
+:1020C000EFCF9CEF980F913A58F390E2980F983029
+:1020D00050F4877091E001C0990F8A95EAF7892F33
+:1020E0000E949719DFCF9BE5980F933020F480E092
+:1020F00090E00C94660E885A833120F480E090E0E2
+:102100000C947C0E0895882321F00E9491190C9460
+:10211000CA190895882321F00E9497190C94CA19AE
+:102120000895CF92DF92EF92FF920F931F93CF9378
+:10213000DF93CDB7DEB728970FB6F894DEBF0FBE9A
+:10214000CDBF8C0185E0F801DE01119601900D9262
+:102150008A95E1F7F80140813181F280258122954D
+:102160002F7083819481892B31F03F3F31F481E0DE
+:102170004F3F19F403C081E001C080E080FDC4C27C
+:1021800049833A8389819A812F830E94CE189E8346
+:1021900088870E94CD180E94A0174E81E42FE295F7
+:1021A000EF70F0E0E05AFF4F2F8168850C94972282
+:1021B000842F807F142F1F70882311F01295107FB9
+:1021C000FF2059F0112309F454C2812F68870E941F
+:1021D000A1190E94CA1968854CC2862F0E9434102A
+:1021E000112309F491C2812F0E94A71928960FB6D6
+:1021F000F894DEBF0FBECDBFDF91CF911F910F913D
+:10220000FF90EF90DF90CF900C94CA19342F307F5D
+:10221000842F8F70303211F08295807F662319F001
+:10222000613019F12BC0FF20B1F0222309F493C1D2
+:10223000213009F090C128960FB6F894DEBF0FBE8A
+:10224000CDBFDF91CF911F910F91FF90EF90DF9065
+:10225000CF900C94B119222319F0213009F454C203
+:102260008E830E94B4198E8189C1FF2021F0223013
+:1022700008F04AC270C1211147C280C1FF2021F07D
+:10228000222309F468C1F5C1222309F477C105C2EC
+:10229000242F26952695237030E02115310521F055
+:1022A00021303105C9F030C2FF2021F0862F942F54
+:1022B000937002C080E090E028960FB6F894DEBFDD
+:1022C0000FBECDBFDF91CF911F910F91FF90EF9087
+:1022D000DF90CF900C94660EFF2021F0862F942F74
+:1022E000937002C080E090E028960FB6F894DEBFAD
+:1022F0000FBECDBFDF91CF911F910F91FF90EF9057
+:10230000DF90CF900C947C0E862FFF2019F00E9456
+:10231000381D02C00E94A01D28960FB6F894DEBF9B
+:102320000FBECDBFDF91CF911F910F91FF90EF9026
+:10233000DF90CF900C94251E842F837009F076C017
+:10234000F110E2C1262F229526952770220F220F29
+:10235000862F8F70C82ED12CE12CF12C022E04C0B8
+:10236000CC0CDD1CEE1CFF1C0A94D2F764FF10C0DD
+:102370006FE070E080E090E004C0660F771F881F78
+:10238000991F2A95D2F7609570958095909503C016
+:1023900060E070E0CB01242F269526952370422F14
+:1023A00050E042305105D1F04330510559F16C29CC
+:1023B0007D298E299F294130510541F128960FB67C
+:1023C000F894DEBF0FBECDBFDF91CF911F910F916B
+:1023D000FF90EF90DF90CF900C94C5176C297D296A
+:1023E0008E299F2928960FB6F894DEBF0FBECDBF69
+:1023F000DF91CF911F910F91FF90EF90DF90CF90E1
+:102400000C94DF170E94C517C701B60128960FB6B6
+:10241000F894DEBF0FBECDBFDF91CF911F910F911A
+:10242000FF90EF90DF90CF900C94AB17FF2019F046
+:10243000842F817001C08695882309F465C1262FF9
+:10244000229526952770220F220F862F8F70C82E77
+:10245000D12CE12CF12C022E04C0CC0CDD1CEE1C86
+:10246000FF1C0A94D2F764FF10C06FE070E080E0B8
+:1024700090E004C0660F771F881F991F2A95D2F736
+:10248000609570958095909503C060E070E0CB01F9
+:10249000242F269526952370422F50E04230510577
+:1024A000D1F04330510559F16C297D298E299F299E
+:1024B0004130510541F128960FB6F894DEBF0FBEAA
+:1024C000CDBFDF91CF911F910F91FF90EF90DF90E3
+:1024D000CF900C9499186C297D298E299F292896D4
+:1024E0000FB6F894DEBF0FBECDBFDF91CF911F9125
+:1024F0000F91FF90EF90DF90CF900C94B3180E9453
+:102500009918C701B60128960FB6F894DEBF0FBE22
+:10251000CDBFDF91CF911F910F91FF90EF90DF9092
+:10252000CF900C947F18603FC9F118F4603E50F4CE
+:102530009BC0623F09F460C008F44AC0633F09F4DD
+:102540006FC092C0162F1F70842F8F71FF2099F0DB
+:102550000E941818812F28960FB6F894DEBF0FBE80
+:10256000CDBFDF91CF911F910F91FF90EF90DF9042
+:10257000CF900C9483100E943918812F28960FB6A3
+:10258000F894DEBF0FBECDBFDF91CF911F910F91A9
+:10259000FF90EF90DF90CF900C948A10FF20A1F075
+:1025A0002111B2C0842F8F7128960FB6F894DEBF28
+:1025B0000FBECDBFDF91CF911F910F91FF90EF9094
+:1025C000DF90CF900C945E18223008F09DC0EACFC7
+:1025D000FF20A1F0842F8F7128960FB6F894DEBFEC
+:1025E0000FBECDBFDF91CF911F910F91FF90EF9064
+:1025F000DF90CF900C941818FF2061F3842F8F7117
+:1026000028960FB6F894DEBF0FBECDBFDF91CF91F5
+:102610001F910F91FF90EF90DF90CF900C9439189D
+:10262000FF2091F0842F8F7128960FB6F894DEBFAB
+:102630000FBECDBFDF91CF911F910F91FF90EF9013
+:10264000DF90CF900C94031828960FB6F894DEBF55
+:102650000FBECDBFDF91CF911F910F91FF90EF90F3
+:10266000DF90CF900C94F917FF20A1F0222309F4FA
+:10267000B1CF862F28960FB6F894DEBF0FBECDBF20
+:10268000DF91CF911F910F91FF90EF90DF90CF904E
+:102690000C946C0F222309F4B1CF862F28960FB625
+:1026A000F894DEBF0FBECDBFDF91CF911F910F9188
+:1026B000FF90EF90DF90CF900C9434104F70C801D2
+:1026C0000E94AB0228960FB6F894DEBF0FBECDBFB6
+:1026D000DF91CF911F910F91FF90EF90DF90CF90FE
+:1026E0000C941E174F70C80128960FB6F894DEBFE1
+:1026F0000FBECDBFDF91CF911F910F91FF90EF9053
+:10270000DF90CF900C94ED0528960FB6F894DEBFBD
+:102710000FBECDBFDF91CF911F910F91FF90EF9032
+:10272000DF90CF9008950E94AE190E9483190E94F5
+:10273000CA190E94D11E0E94251E80E090E00E94CE
+:10274000660E80E090E00C947C0E0E949E190C9422
+:1027500093130E94CE18292F22952F7030E02C3031
+:1027600031054CF42A3031056CF422503109223005
+:10277000310590F407C02C30310551F02F30310570
+:1027800039F00AC0803E10F0803F31F481E00895B6
+:1027900093FB882780F9089580E00895CF93DF9315
+:1027A00000D000D01F92CDB7DEB70F900F900F90E2
+:1027B0000F900F90DF91CF910895CF93DF9300D0CA
+:1027C00000D000D0CDB7DEB726960FB6F894DEBFA6
+:1027D0000FBECDBFDF91CF9108951F93CF93DF93AD
+:1027E000C091790116E080917A01C81799F0D0E084
+:1027F0001C9FF0011D9FF00D1124E558FE4F4081F4
+:10280000518162817381848195810E94DD132196BB
+:10281000C770E9CFDF91CF911F9108954091AB012F
+:102820005091AC016091AD017091AE018091AF010A
+:102830009091B0010C94DD13CF938091B0018295FB
+:102840008F7009F05FC08091AD01882309F45AC0F0
+:1028500020917901A0917A016091AB017091AC0156
+:102860008091AE019091AF0131E06F3F09F030E00F
+:10287000B32FC6E02A1709F445C0009721F07F3F27
+:1028800021F44B2F03C041E001C040E030E040FDA7
+:1028900035C0C29FF001C39FF00D1124E558FE4FD3
+:1028A000418174132BC04081641328C042814111BF
+:1028B00025C0438154814817590710F441505109EC
+:1028C000481B590B483C5105C8F48091B0018F70EA
+:1028D00080618093B00186E0829FF001839FF00DBC
+:1028E0001124E058FE4F80818F70806180838BEAD5
+:1028F00091E00E949110CF910C94ED132F5F3F4F08
+:102900002770B8CFCF910895CF92DF92EF92FF92C8
+:102910000F931F93CF93DF93CDB7DEB762970FB6B8
+:10292000F894DEBF0FBECDBF8C0185E0F801DE015B
+:102930001D9601900D928A95E1F7D8014C91119660
+:102940005C91119712966C9112971396ED90FC90F2
+:1029500014977091AB01E091AC012091AE013091E0
+:10296000AF012115310531F0EF3F31F481E07F3FB8
+:1029700019F403C081E001C080E0B82FB170CB2E04
+:1029800080FD6CC1D090AD01DD2009F4F5C0F0915F
+:10299000B001E216F30638F0C701821B930B883CA6
+:1029A000910548F09BC0209530952E0D3F1D283C89
+:1029B000310508F093C08F2F807F09F052C0E513D6
+:1029C00014C0741312C0D62E61110FC0FF70F061D5
+:1029D000F093B0010E940E148BEA91E00E949110D6
+:1029E0008091B001F80185836CC1EF2831F05F3F21
+:1029F00031F481E04F3F19F403C081E001C080E071
+:102A000080FD03C081E0862701C080E0F82FF170CF
+:102A1000FF2E80FF1CC08091790120917A0136E061
+:102A2000821709F428C190E0389FF001399FF00D1A
+:102A30001124E558FE4F7181571306C0708147136A
+:102A400003C07281671303C001968770E9CFD62E49
+:102A5000662309F436C18091B00181608093B00192
+:102A600053C0E51308C0741306C0611104C0D80137
+:102A70001596FC93AEC04D875E878D859E856A8BCB
+:102A80000E94A9136A89882329F1D62E662311F1A1
+:102A90002091B001822F82958F7090E002970CF404
+:102AA00060C08091AB019091AC0198878F831986AB
+:102AB000FB86EA862C87CE01079651C0E51731F1D7
+:102AC0004D875E878D859E856A8B0E94A9136A89D2
+:102AD00081112EC0C8010E949110A4C08F2F807F49
+:102AE00069F77E2DF98AE88A89890E94CE138BEADC
+:102AF00091E00E949110EBEAF1E086E0DF011D9287
+:102B00008A95E9F70E940E14D12CDBC07413D8CF3C
+:102B10006111D6CFD8011596FC93C8010E9491107F
+:102B2000EBEAF1E086E0DF011D928A95E9F7C9C082
+:102B3000D62E662379F22091B001822F82958F7074
+:102B400090E0029774F08091AB019091AC019A8370
+:102B500089831B82FD82EC822E83CE0101960E9426
+:102B6000911086E0F801ABEAB1E001900D928A95F0
+:102B7000E1F70E941C146FC0E216F30628F0C701AB
+:102B8000821B930B9C0104C0209530952E0D3F1D98
+:102B9000283C310508F052C0D62E662309F49ACF9E
+:102BA000E5132CC074132AC08091B00180FD1DC0B4
+:102BB000982F92959F70C9F0D80115968C93159710
+:102BC0009F3039F09F5F9295907F8F70892B15967B
+:102BD0008C93C8010E94911086E0F801ABEAB1E045
+:102BE00001900D928A95E1F736C086E0F801ABEAD4
+:102BF000B1E001900D928A95E1F763C04D875E8741
+:102C00008D859E850E94A913882379F086E0F801BE
+:102C1000ABEAB1E001900D928A95E1F70E941C1495
+:102C20000E940E14DD24D3944CC08091B0018160C9
+:102C30008093B001C8010E94911043C07E2DF98A93
+:102C4000E88A89890E94CE13EBEAF1E086E0DF0191
+:102C50001D928A95E9F70E940E1433C0662309F489
+:102C600039CF4D875E878D859E850E94A913882365
+:102C700009F430CFCBCF4D875E878D859E850E942E
+:102C8000CE18292F22952F7030E0223031052CF4F8
+:102C90009F7041F0811106C00CC0243031052CF426
+:102CA0009F7049F4805E883020F0C8010E94911026
+:102CB000CF2CDC2C06C0D80115969C91907F91F703
+:102CC000F8CF8D2D62960FB6F894DEBF0FBECDBF44
+:102CD000DF91CF911F910F91FF90EF90DF90CF90F8
+:102CE00008951F93CF93DF93CDB7DEB72C970FB620
+:102CF000F894DEBF0FBECDBF4F83588769877A87B0
+:102D00008B879C87CE0107960E9484148823C1F08C
+:102D10002F8138858A859B85892B31F03F3F11F0C3
+:102D200080E003C02F3FE1F781E0811147C04F8170
+:102D3000588569857A858B859C850E94DD133EC008
+:102D400086E0FE013796DE01119601900D928A957C
+:102D5000E1F7FF81E8854A855B854115510531F032
+:102D6000EF3F31F481E0FF3F19F403C081E001C07F
+:102D700080E080FD23C020917A0130E0C9010196F6
+:102D8000877099276091790170E086179707F1F1B4
+:102D9000F983EA835D834C8396E0929FD001939FF1
+:102DA000B00D1124A558BE4FFE01319601900D9231
+:102DB0009A95E1F780937A010E94ED1316E08091D5
+:102DC000790190917A01891779F1189FC001112436
+:102DD00085589E4F0E948414882331F1E091790137
+:102DE0001E9FF0011124E558FE4F40815181628100
+:102DF0007381848195810E94DD138091790190E037
+:102E000001968770992780937901D9CF0E94A513E5
+:102E100010927A0110927901EBEAF1E086E0DF018D
+:102E20001D928A95E9F7CACF2C960FB6F894DEBFAB
+:102E30000FBECDBFDF91CF911F910895EF92FF920A
+:102E40000F931F93CF93DF939C01009709F471C0F8
+:102E5000F12CEE24E394E9012196F9018491843761
+:102E600040F4843008F056C0813081F0823021F186
+:102E700060C0853709F449C0C0F19CE7980F9037CE
+:102E800008F057C08F770E94341046C089010E5F4A
+:102E90001F4FFE01849190E2980F983050F4877094
+:102EA000FE2D01C0FF0F8A95EAF78F2F0E94A1190E
+:102EB00015C00E946C0F14C089010E5F1F4FFE01E8
+:102EC000849190E2980F983068F48770FE2D01C0CD
+:102ED000FF0F8A95EAF78F2F0E94A7190E94CA193F
+:102EE000E8011AC00E943410FBCF2E5F3F4FFE0155
+:102EF000C491CC2341F08FE99FE00197F1F700C026
+:102F00000000C150F6CFE90107C0FE01F490E901CD
+:102F1000229602C00E946C0F8F2D882341F0EFE9AA
+:102F2000FFE03197F1F700C000008150F6CF9E011D
+:102F300092CFDF91CF911F910F91FF90EF90089565
+:102F400008956093B5017093B6018093B701909393
+:102F5000B8010C9493130F931F930091B501109136
+:102F6000B6012091B7013091B801062B172B282B01
+:102F7000392B0093B5011093B6012093B70130931C
+:102F8000B8011F910F910C9493130F931F9300910D
+:102F9000B5011091B6012091B7013091B801062317
+:102FA0001723282339230093B5011093B6012093EA
+:102FB000B7013093B8011F910F910C9493130F93A5
+:102FC0001F930091B5011091B6012091B701309186
+:102FD000B80106271727282739270093B501109332
+:102FE000B6012093B7013093B8011F910F910C9453
+:102FF00093131092B1011092B2011092B30110928A
+:10300000B4010C94931341E050E060E070E004C020
+:10301000440F551F661F771F8A95D2F74093B10161
+:103020005093B2016093B3017093B4010C94931365
+:1030300041E050E060E070E004C0440F551F661F9F
+:10304000771F8A95D2F78091B1019091B201A0913A
+:10305000B301B091B401842B952BA62BB72B809391
+:10306000B1019093B201A093B301B093B4010C9459
+:10307000931341E050E060E070E004C0440F551F3E
+:10308000661F771F8A95D2F7409550956095709589
+:103090008091B1019091B201A091B301B091B401BE
+:1030A00084239523A623B7238093B1019093B20183
+:1030B000A093B301B093B4010C94931341E050E09A
+:1030C00060E070E004C0440F551F661F771F8A95AB
+:1030D000D2F78091B1019091B201A091B301B0916A
+:1030E000B40184279527A627B7278093B101909331
+:1030F000B201A093B301B093B4010C9493130F9356
+:103100001F930091B1011091B2012091B301309150
+:10311000B401062B172B282B392B0093B1011093E8
+:10312000B2012093B3013093B4011F910F910C941D
+:1031300093130F931F930091B1011091B20120914D
+:10314000B3013091B40106231723282339230093B8
+:10315000B1011093B2012093B3013093B4011F91D8
+:103160000F910C9493130F931F930091B101109141
+:10317000B2012091B3013091B40106271727282707
+:1031800039270093B1011093B2012093B30130931A
+:10319000B4011F910F910C9493130895CF92DF9275
+:1031A000EF92FF920F931F93CF93DF93EC01C090A8
+:1031B000B501D090B601E090B701F090B8018091D0
+:1031C000B1019091B201A091B301B091B401C82AAC
+:1031D000D92AEA2AFB2A0FE110E0B701A601002E46
+:1031E00004C076956795579547950A94D2F740FFA6
+:1031F00007C0BE01802F0E9410068130910539F46E
+:103200000150110950F7BE0180E00E941006DF91C5
+:10321000CF911F910F91FF90EF90DF90CF90089585
+:1032200090910C019923D9F090910D019923B9F057
+:10323000982F9695969596959F3088F5E0910E017A
+:10324000F0910F01E90FF11D877021E030E001C01E
+:10325000220F8A95EAF78181822B8183089540911C
+:103260000E0150910F0120E030E09FEFFA01E20FD4
+:10327000F31F6281681799F09F3F19F4611101C033
+:10328000922F2F5F3F4F2E30310581F79F3F39F04E
+:10329000FA01E90FF11D97FDFA95828308950895CB
+:1032A00090910C019923E1F090910D019923C1F0C7
+:1032B000982F9695969596959F3020F5E0910E0162
+:1032C000F0910F01E90FF11D877021E030E001C09E
+:1032D000220F8A95EAF7209581812823218308957A
+:1032E00040910E0150910F0120E030E0FA01E20F11
+:1032F000F31F9281981301C012822F5F3F4F2E302F
+:103300003105A1F7089581E090E0E0910E01F09180
+:103310000F01E80FF91F1082019680319105A9F77E
+:1033200008959091CB01982B9093CB0108958095AF
+:103330009091CB0198239093CB0108951092CB01EB
+:1033400008959091CA01982B9093CA010895809591
+:103350009091CA0198239093CA0108951092CA01CE
+:1033600008958093B90108951092B901089540918C
+:103370000E0150910F0120E030E080E0FA01E20FF1
+:10338000F31F918191118F5F2F5F3F4F2F303105D8
+:10339000A9F70895E0910E01F0910F018091CB0102
+:1033A0008083E0910E01F0910F0180819091CA011C
+:1033B000892B80839091B901992361F0E0910E01EE
+:1033C000F0910F018081892B80830E94B7198111B0
+:1033D0001092B90180910E0190910F010C94500E42
+:1033E000CF92DF92EF92FF920F931F936C01EE2426
+:1033F000FF24C114D104E104F10421F46B017C0128
+:1034000080E001C080E133272F2D1E2D0D2D0115E9
+:1034100011052105310519F0885F680179019701CF
+:103420008601A4E03695279517950795AA95D1F7BB
+:10343000011511052105310519F08C5F680179012D
+:1034400097018601F2E03695279517950795FA952D
+:10345000D1F7011511052105310519F08E5F6801BD
+:103460007901B701A6017695679557954795452B44
+:10347000462B472B09F08F5F1F910F91FF90EF9024
+:10348000DF90CF9008958091E501843009F110928A
+:10349000CD0120E488E190E00FB6F894A8958093E0
+:1034A00060000FBE2093600083B7817F846083BF7C
+:1034B00083B7816083BF7894889583B78E7F83BFFD
+:1034C00088E10FB6F89480936000109260000FBE00
+:1034D000089508950895CF930E94691A0E943604B2
+:1034E0000E946A1AC0E08C2F0E942705811105C036
+:1034F000CF5FCE30C1F780E001C081E0CF91089569
+:103500000E94A5130E94440E0C944A0782E084BDD9
+:1035100093E095BD9AEF97BD80936E0008952FB705
+:10352000F8948091CE019091CF01A091D001B091FB
+:10353000D1012FBF0895CF92DF92EF92FF920F93A8
+:103540001F932FB7F8944091CE015091CF01609115
+:10355000D0017091D1012FBF6A017B01EE24FF24BD
+:103560008C0120E030E0C016D106E206F30610F42C
+:1035700041505109481B590BCA011F910F91FF90EF
+:10358000EF90DF90CF9008951F920F920FB60F9299
+:1035900011248F939F93AF93BF938091CE0190910D
+:1035A000CF01A091D001B091D1010196A11DB11D13
+:1035B0008093CE019093CF01A093D001B093D1011D
+:1035C000BF91AF919F918F910F900FBE0F901F9061
+:1035D00018950E944A0BF8942FEF87EA91E6215044
+:1035E00080409040E1F700C0000087E090EBDC01F4
+:1035F0008093EE019093EF01A093F001B093F1015D
+:103600002CE088E190E00FB6F894A89580936000D4
+:103610000FBE20936000FFCFEF92FF920F931F9396
+:10362000CF93DF93E82EF12C8F2D0E942705C0E069
+:10363000D0E0082F10E098010C2E02C03595279598
+:103640000A94E2F720FD05C02196C630D10599F70E
+:1036500009C06C2F7F2D80E00E94EE05E812F4CFA8
+:1036600081E005C0F3948EE0F812DECF80E0DF91B8
+:10367000CF911F910F91FF90EF900895CF93C82F96
+:103680008CE20E940C1B882321F08C2FCF910C948C
+:103690000C1B80E0CF910895CF930E94911C811163
+:1036A00002C00E94771CC5E6C15049F00E94360452
+:1036B0008FE39CE90197F1F700C00000F5CF89E2A4
+:1036C0000E943E1B811111C18AE20E943E1B8111A2
+:1036D0000E94771C85E00E943E1B81110E94E91A1E
+:1036E0000E949C1C8093CC0187E00E943E1B882393
+:1036F00099F18BE10E943E1B882351F09091CC01FF
+:1037000091FB882780F921E0822780FB91F922C074
+:103710008EE00E943E1B882351F09091CC0192FBD9
+:10372000882780F921E0822780FB92F913C080E18D
+:103730000E943E1B9091CC01882341F093FB882787
+:1037400080F921E0822780FB93F904C0892F8095BE
+:1037500080FB90F99093CC018091CC010E94A01C39
+:103760000E94AE1C8093DF0180EE0E943E1B8823E6
+:1037700041F08091DF01982F909590FB80F9809324
+:10378000DF0189E30E943E1B882359F09091DF01FD
+:1037900091FB882780F921E0822780FB91F99093A3
+:1037A000DF0182EE0E943E1B882359F09091DF01D9
+:1037B00092FB882780F921E0822780FB92F9909381
+:1037C000DF0186EE0E943E1B882359F09091DF01B5
+:1037D00093FB882780F921E0822780FB93F990935F
+:1037E000DF0183EE0E943E1B882359F09091DF0198
+:1037F00094FB882780F921E0822780FB94F990933D
+:10380000DF0185E30E943E1B882359F09091DF0180
+:1038100095FB882780F921E0822780FB95F990931A
+:10382000DF0181E30E943E1B882359F09091DF0164
+:1038300096FB882780F921E0822780FB96F99093F8
+:10384000DF0181E10E943E1B882359F09091DF0146
+:1038500097FB882780F921E0822780FB97F99093D6
+:10386000DF018091DF010E94B21C8091DF0187FBA4
+:10387000882780F980930D0187E20E943E1BC82FA4
+:103880008EE10E943E1B8111C2608FE10E943E1BAF
+:103890008111C46080E20E943E1B8111C86081E2F8
+:1038A0000E943E1B8111C06182E20E943E1B811179
+:1038B000C06283E20E943E1B8111C06484E20E94C8
+:1038C0003E1B882311F0C06802C0CC2329F08C2F46
+:1038D0000E94A91C6C2F03C00E94A51C682F70E0D9
+:1038E00080E090E0CF910C94A117CF9108956DEEF8
+:1038F0007EEF80E090E00E94CD2260E082E090E0E8
+:103900000E94BF2260E083E090E00E94BF2260E05E
+:1039100084E090E00E94BF2260E085E090E00C949B
+:10392000BF2280E090E00E94B92221E08D3E9E4FB0
+:1039300009F020E0822F089582E090E00C94B122FB
+:10394000682F82E090E00C94BF2283E090E00C941A
+:10395000B122682F83E090E00C94BF2284E090E0D5
+:103960000C94B122682F84E090E00C94BF228091E7
+:10397000D40180FF0BC06091130185E0689FB00106
+:10398000112475956795759567952AC081FF09C0C3
+:103990006091130185E0689FB001112475956795CA
+:1039A0001FC082FF07C06091130185E0689FB001CE
+:1039B000112416C04091D5014423C9F06091120131
+:1039C000461788F72091130185E0289F9001112464
+:1039D000429FC001439F900D112470E00E948322FA
+:1039E0006038710540F46115710539F002C065E079
+:1039F00070E0862F08958FE7089581E00895809103
+:103A0000D40180FF08C06091110170E07595679541
+:103A10007595679521C081FF06C06091110170E026
+:103A20007595679519C082FF04C06091110170E01F
+:103A300010C08091D5018823C1F0609110018617D4
+:103A4000A0F790911101989FC001112470E00E948D
+:103A500083226038710528F46115710521F0862FE5
+:103A600008958FE7089581E0089561E070E0F4CF54
+:103A7000803F21F40E94B71C819504C0813F29F446
+:103A80000E94B71C8093D8010895823F21F40E94C0
+:103A9000B71C819504C0833F29F40E94B71C809312
+:103AA000D7010895893F19F40E94FF1C05C08A3F81
+:103AB00031F40E94FF1C81958093D90108958B3FBA
+:103AC00021F40E94FF1C819504C08C3F29F40E94C0
+:103AD000FF1C8093DA010895843F21F48091D60180
+:103AE000816017C0853F21F48091D601826011C0AA
+:103AF000863F21F48091D60184600BC0873F21F47A
+:103B00008091D601886005C0883F31F48091D6014C
+:103B100080618093D60108958D3F21F48091D40176
+:103B200081600BC08E3F21F48091D401826005C07A
+:103B30008F3F29F48091D40184608093D40108954B
+:103B4000803F39F48091D80187FF6CC01092D80172
+:103B500069C0813F29F48091D8011816BCF362C076
+:103B60009091D701823F29F497FF5CC01092D70152
+:103B700059C0833F19F41916CCF354C0893F41F45E
+:103B80008091D90118160CF04DC01092D9014AC08D
+:103B90008A3F29F48091D90187FF44C0F6CF8B3F3B
+:103BA00039F48091DA0187FF3DC01092DA013AC002
+:103BB0008C3F29F48091DA011816BCF333C0843F9E
+:103BC00021F48091D6018E7F17C0853F21F480912A
+:103BD000D6018D7F11C0863F21F48091D6018B7F65
+:103BE0000BC0873F21F48091D601877F05C0883FB5
+:103BF00031F48091D6018F7E8093D60113C08D3F22
+:103C000021F48091D4018E7F0BC08E3F21F48091EE
+:103C1000D4018D7F05C08F3F29F48091D4018B7F23
+:103C20008093D4018091D70181110EC08091D80179
+:103C300081110AC08091D901811106C08091DA01F9
+:103C4000811102C01092D501089586ED91E00E9485
+:103C50005B0E0E948F1A9093D3018093D201089536
+:103C60001F93CF93DF938091D2019091D3010E9453
+:103C70009B1A4091D501442321F02091140130E09A
+:103C800006C0209115015AE0259F9001112482174A
+:103C9000930708F482C08091D7011091D801D09188
+:103CA000D901C091DA01811107C0111105C0D111EC
+:103CB00003C0CC2309F471C04F3F19F04F5F40930C
+:103CC000D501181624F40E94B71C8093D701809167
+:103CD000D70187FF05C00E94B71C81958093D7014B
+:103CE000111624F40E94B71C8093D8018091D8014A
+:103CF00087FF05C00E94B71C81958093D801609111
+:103D0000D701662339F11091D801112319F17727D2
+:103D100067FD7095872F972F0E94942123E333E34B
+:103D200043E35FE30E94F8210E9461216093D70181
+:103D3000612F772767FD7095872F972F0E94942119
+:103D400023E333E343E35FE30E94F8210E94612110
+:103D50006093D8011D1624F40E94FF1C8093D901A2
+:103D60008091D90187FF05C00E94FF1C8195809337
+:103D7000D9011C1624F40E94FF1C8093DA01809163
+:103D8000DA0187FF05C00E94FF1C81958093DA014C
+:103D9000DF91CF911F910C94251EDF91CF911F9140
+:103DA0000895E6EDF1E085E0DF011D928A95E9F7DF
+:103DB0001092D5011092D4010895833081F128F436
+:103DC000813059F08230D1F00895853009F449C02E
+:103DD000B8F1863009F456C0089520911501862F58
+:103DE00090E0820F911D8F3F910520F4620F609348
+:103DF000150108958FEF8093150108952091140106
+:103E0000862F90E0820F911D8F3F910520F4620F65
+:103E10006093140108958FEF809314010895209109
+:103E20001301862F90E0820F911D8F3F910520F4A2
+:103E3000620F6093130108958FEF8093130108952B
+:103E400020911201862F90E0820F911D8F3F9105E6
+:103E500020F4620F6093120108958FEF8093120196
+:103E6000089520911101862F90E0820F911D8F3FC0
+:103E7000910520F4620F6093110108958FEF8093F4
+:103E80001101089520911001862F90E0820F911D5D
+:103E90008F3F910520F4620F6093100108958FEF1A
+:103EA000809310010895833011F128F4813049F096
+:103EB000823091F00895853081F120F18630C1F192
+:103EC000089580911501681720F4861B80931501D1
+:103ED000089510921501089580911401681720F437
+:103EE000861B809314010895109214010895809107
+:103EF0001301681720F4861B809313010895109214
+:103F00001301089580911201681720F4861B809395
+:103F100012010895109212010895809111016817FD
+:103F200020F4861B809311010895109211010895C9
+:103F300080911001681720F4861B8093100108956A
+:103F40001092100108958D3109F442C020F58E3091
+:103F500009F479C070F4873009F45EC020F486302B
+:103F600009F442C033C08830D1F18B3009F4A7C0C6
+:103F70002DC0863109F4A3C038F4803109F46DC036
+:103F8000813109F47BC022C0893109F498C08B319A
+:103F900009F44FC01BC0853309F479C048F4873257
+:103FA00009F475C008F478C0893209F470C00EC0F5
+:103FB000833438F48A3308F071C0883309F47FC041
+:103FC00005C0833409F463C08834C1F080E00895EB
+:103FD0000E941B210E94440E0E944A0770C00E944A
+:103FE0009C1C0E94AE1C6BC08091CC01817F8E7F97
+:103FF0008093CC0181E08093DC0108950E94A51399
+:104000002FEF83ED90E3215080409040E1F700C016
+:1040100000000E94E91A53C09091CC01892F817051
+:1040200090FF03C0917F9E7F26C091609093CC014A
+:1040300046C09091CC0191FB882780F921E082272E
+:1040400080FB91F913C09091CC0192FB882780F9F5
+:1040500021E0822780FB92F909C09091CC0193FB6B
+:10406000882780F921E0822780FB93F99093CC0187
+:10407000882329F191609093CC0108950E94A513A3
+:1040800080910D0191E0892780930D0118C061E0B6
+:1040900070E080E090E00FC023EE01C027EC280F15
+:1040A00061E070E080E090E004C0660F771F881F39
+:1040B000991F2A95D2F70E94A1170E94A51381E0AB
+:1040C000089580E0089580E00895CF93C82F8091EF
+:1040D000DC01813079F018F08230D1F184C0A091F8
+:1040E0000E01B0910F018C91813169F0823209F09B
+:1040F0007CC009C0A0910E01B0910F018C9181315B
+:1041000011F0823249F48C2F0E94612081111DC070
+:104110008C2F0E94A31F1AC08C2F0E946320811134
+:1041200014C0C43179F048F4CB3079F0C03109F0D3
+:1041300060C082E08093DC0108C0C93219F0C83346
+:1041400021F057C01092DC0154C081E0817053C04F
+:10415000C93289F118F5C43171F1A8F4C73009F0FA
+:1041600046C08AE08093150194E19093140193E096
+:10417000909313018093120188E08093110188E2EB
+:104180008093100134C0CE51C63088F5EC2FF0E09A
+:10419000E65DFE4F80818093DB0129C0CE34E9F0DB
+:1041A00020F4CB3421F56AE013C0C13579F0C23573
+:1041B000F1F461E00DC08091DB01882319F01092C9
+:1041C000DB0115C081E08093DC0115C061E006C011
+:1041D0008091DB010E94DD1E0AC06AE08091DB0154
+:1041E0000E94531F04C01092DC0180E004C081E0F3
+:1041F00002C080E0ABCFCF910895E1E8F0E080818C
+:10420000886080838081816080838FB7F89493E099
+:104210009093890090ED909388008FBF0895EFE60A
+:10422000F0E08081826080830895EFE6F0E0808195
+:104230008D7F80830895EFE6F0E0808192E089270A
+:10424000808308951F920F920FB60F9211242F931F
+:104250003F934F935F936F937F938F939F93AF930E
+:10426000BF93EF93FF938091DD019091DE01019662
+:104270009093DE018093DD01811103C082E00E94F2
+:104280004A07E091DE01E695E695F0E0E657FB4F40
+:10429000E4918091DD018E1303C080E00E944A0703
+:1042A000FF91EF91BF91AF919F918F917F916F910E
+:1042B0005F914F913F912F910F900FBE0F901F90E4
+:1042C000189504D06894B1118DC0089570D088F00D
+:1042D0009F5790F0B92F9927B751A0F0D1F0660FF2
+:1042E000771F881F991F1AF0BA95C9F712C0B1300D
+:1042F00081F077D0B1E0089574C0672F782F8827B8
+:10430000B85F39F0B93FCCF3869577956795B3954B
+:10431000D9F73EF490958095709561957F4F8F4FBA
+:104320009F4F0895E89409C097FB3EF490958095BF
+:10433000709561957F4F8F4F9F4F9923A9F0F92F6B
+:1043400096E9BB279395F695879577956795B795E9
+:10435000F111F8CFFAF4BB0F11F460FF1BC06F5FCF
+:104360007F4F8F4F9F4F16C0882311F096E911C0E1
+:10437000772321F09EE8872F762F05C0662371F002
+:1043800096E8862F70E060E02AF09A95660F771F16
+:10439000881FDAF7880F9695879597F9089557FD46
+:1043A0009058440F551F59F05F3F71F04795880FA3
+:1043B00097FB991F61F09F3F79F08795089512163A
+:1043C00013061406551FF2CF4695F1DF08C01616E6
+:1043D00017061806991FF1CF869571056105089497
+:1043E0000895E894BB2766277727CB0197F90895AE
+:1043F0000BD078C069D028F06ED018F0952309F062
+:104400005AC05FC01124EECFCADFA0F3959FD1F34D
+:10441000950F50E0551F629FF001729FBB27F00D72
+:10442000B11D639FAA27F00DB11DAA1F649F6627C7
+:10443000B00DA11D661F829F2227B00DA11D621F16
+:10444000739FB00DA11D621F839FA00D611D221FD0
+:10445000749F3327A00D611D231F849F600D211DB4
+:10446000822F762F6A2F11249F5750408AF0E1F057
+:1044700088234AF0EE0FFF1FBB1F661F771F881FA0
+:1044800091505040A9F79E3F510570F014C0AACF3B
+:104490005F3FECF3983EDCF3869577956795B7958B
+:1044A000F795E7959F5FC1F7FE2B880F911D9695B5
+:1044B000879597F9089597F99F6780E870E060E025
+:1044C00008959FEF80EC089500240A9416161706AD
+:1044D00018060906089500240A94121613061406F5
+:1044E00005060895092E0394000C11F4882352F058
+:1044F000BB0F40F4BF2B11F460FF04C06F5F7F4F10
+:104500008F4F9F4F089597FB072E16F4009407D006
+:1045100077FD09D00E949D2207FC05D03EF49095BE
+:1045200081959F4F0895709561957F4F0895EE0F87
+:10453000FF1F0590F491E02D0994AA1BBB1B51E1CC
+:1045400007C0AA1FBB1FA617B70710F0A61BB70B03
+:10455000881F991F5A95A9F780959095BC01CD01A8
+:104560000895F999FECF92BD81BDF89A992780B53B
+:104570000895A8E1B0E042E050E00C94D422262F48
+:10458000F999FECF1FBA92BD81BD20BD0FB6F89438
+:10459000FA9AF99A0FBE019608950E94BF22272F1A
+:1045A0000C94C022DC01CB01FC01F999FECF06C0BE
+:1045B000F2BDE1BDF89A319600B40D9241505040E1
+:0845C000B8F70895F894FFCF4D
+:1045C80020024B07D807B50781074E070101BA013A
+:1045D80028080A03140A3F4D36394B04FE03C80362
+:1045E8008F0322033B0354036D03010203040506F2
+:0445F80007080900A7
:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/default/default.png b/keyboard/ergodox_ez/keymaps/default/default.png Binary files differindex f0c584015..6575f7b5e 100644 --- a/keyboard/ergodox_ez/keymaps/default/default.png +++ b/keyboard/ergodox_ez/keymaps/default/default.png diff --git a/keyboard/ergodox_ez/keymaps/default/default_highres.png b/keyboard/ergodox_ez/keymaps/default/default_highres.png Binary files differindex 169d31367..7d9f045f4 100644 --- a/keyboard/ergodox_ez/keymaps/default/default_highres.png +++ b/keyboard/ergodox_ez/keymaps/default/default_highres.png diff --git a/keyboard/ergodox_ez/keymaps/default/keymap.c b/keyboard/ergodox_ez/keymaps/default/keymap.c index b2f0a051d..f252bf71d 100644 --- a/keyboard/ergodox_ez/keymaps/default/keymap.c +++ b/keyboard/ergodox_ez/keymaps/default/keymap.c @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | BkSp | A | S | D | F | G |------| |------| H | J | K | L |; / L2| ' | + * | BkSp | A | S | D | F | G |------| |------| H | J | K | L |; / L2|' / Cmd | * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // right hand KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, - KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),KC_QUOT, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN),GUI_T(KC_QUOT), MEH_T(KC_NO),KC_N, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, KC_FN1, KC_LALT, CTL_T(KC_ESC), diff --git a/keyboard/ergodox_ez/keymaps/default/readme.md b/keyboard/ergodox_ez/keymaps/default/readme.md index a1a8ad44f..8f6dba45e 100644 --- a/keyboard/ergodox_ez/keymaps/default/readme.md +++ b/keyboard/ergodox_ez/keymaps/default/readme.md @@ -1,5 +1,10 @@ # ErgoDox EZ Default Configuration +## Changelog + +* Feb 2, 2016 (V1.1): + * Made the right-hand quote key double as Cmd/Win on hold. So you get ' when you tap it, " when you tap it with Shift, and Cmd or Win when you hold it. You can then use it as a modifier, or just press and hold it for a moment (and then let go) to send a single Cmd or Win keystroke (handy for opening the Start menu on Windows). + This is what we ship with out of the factory. :) The image says it all: ![Default](default_highres.png) diff --git a/keyboard/ergodox_ez/keymaps/emacs_osx_dk/default_highres.png b/keyboard/ergodox_ez/keymaps/emacs_osx_dk/default_highres.png Binary files differnew file mode 100644 index 000000000..1d2583740 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/emacs_osx_dk/default_highres.png diff --git a/keyboard/ergodox_ez/keymaps/emacs_osx_dk/emacs_osx_dk.hex b/keyboard/ergodox_ez/keymaps/emacs_osx_dk/emacs_osx_dk.hex new file mode 100644 index 000000000..542a4662b --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/emacs_osx_dk/emacs_osx_dk.hex @@ -0,0 +1,1472 @@ +:100000000C9403070C9447070C9447070C9447077C
+:100010000C9447070C9447070C9447070C94470728
+:100020000C9447070C9447070C945B120C942D1307
+:100030000C9447070C9447070C9447070C94470708
+:100040000C9447070C94072C0C9447070C94470713
+:100050000C9447070C94FF210C9447070C94470716
+:100060000C9447070C9447070C9447070C944707D8
+:100070000C9447070C9447070C9447070C944707C8
+:100080000C9447070C9447070C9447070C944707B8
+:100090000C9447070C9447070C9447070C944707A8
+:1000A0000C9447070C9447070C9447079A13BC130A
+:1000B000AA14BC13AA1401142414AA1479148C14BD
+:1000C000D317D31702180218451883189C1A9C1AC4
+:1000D0009C189C1A9D199D19701A9C1A9C1A871AB3
+:1000E0000000F0A135002B003171E1000152000049
+:1000F0001E00140004001D00E0004D001F001A0047
+:1001000016001B0050002A0020000800070006000F
+:100110004F002C002100150009001900E2004A00E0
+:10012000220017000A00050000004C0001542F00B7
+:100130000000E60000004900025430000000E60024
+:100140000000290023001C000B00110000006500C6
+:10015000240018000D001000E2004B0025000C00E8
+:100160000E00360052002800260012000F00370053
+:100170005100E3002700130033003800E4004E0074
+:100180002E002D003471E500025200000100010034
+:1001900001000100010000003A001E0220022202BC
+:1001A000010001003B001F022102230201000100A7
+:1001B0003C002F0226022F00010001003D0030020A
+:1001C00027023000010001003E00310235003502F7
+:1001D000000001000100010000000100000001001A
+:1001E0000100010000000100000001003F0052007A
+:1001F00051002402000001004000240021001E00E4
+:10020000270001004100250022001F0027000100F7
+:100210004200260023002000370001004300250291
+:100220002E0231002E0001004400450001000100B3
+:1002300001000000010001000100010001000000B8
+:1002400001000100010001000100010001000100A6
+:10025000F2000100010001000100F000F1000100C6
+:10026000F400010001000100F3000100F5000100AD
+:100270000100010001000100000001000100010077
+:100280000000010000000100010001000000010069
+:100290000000010001000100010001000000010058
+:1002A0000100010001000100A9000100010001009E
+:1002B0000100AC00AA00B600010001000100AB0083
+:1002C000A80001000100010001000100010001007F
+:1002D00001000100AE000100010000000A0025300D
+:1002E000313662003A200025303258000A722F63FE
+:1002F0002030313233343536373839414243444582
+:10030000460A000A002530325800626F756E636538
+:10031000213A20006C6566742073696465206174FD
+:100320007461636865640A006C656674207369644F
+:1003300065206E6F7420726573706F6E64696E678E
+:100340000A00747279696E6720746F207265736534
+:1003500074206D637032333031380A000A444542EC
+:1003600055473A20656E61626C65642E0A005B73C6
+:100370005D004B6579626F617264207374617274A1
+:100380002E0A005B575D005B535D005B525D005BB6
+:10039000445D005B435D0016034500720067006F1B
+:1003A0000044006F007800200045005A000000164D
+:1003B000034500720067006F0044006F0078002062
+:1003C0000045005A0000000403090409028D0005DD
+:1003D0000100A0FA09040000010301010009211134
+:1003E000010001223F000705810308000A090401FA
+:1003F000000103010200092111010001224D000743
+:1004000005820308000A0904020001030000000934
+:1004100021110100012236000705830308000A09A3
+:100420000403000203000000092111010001222041
+:1004300000070584032000010705040320000109CB
+:100440000404000103000000092111010001223908
+:1004500000070585031000011201100100000008CB
+:10046000EDFE071301000102000105010906A101CB
+:10047000050719E029E71500250195087501810296
+:100480000508190129059505750191029501750366
+:100490009101050719002977150025019578750147
+:1004A0008102C00631FF0974A1010975150025FFFD
+:1004B0009520750881020976150025FF952075089D
+:1004C0009102C005010980A101850216010026B72D
+:1004D000001A01002AB700751095018100C0050CB3
+:1004E0000901A1018503160100269C021A01002AB8
+:1004F0009C02751095018100C005010902A1010946
+:1005000001A10005091901290515002501950575A9
+:100510000181029501750381010501093009311539
+:1005200081257F95027508810609381581257F95FB
+:100530000175088106050C0A38021581257F950191
+:1005400075088106C0C005010906A101050719E06B
+:1005500029E71500250195087501810295017508A7
+:10056000810105081901290595057501910295017B
+:10057000750391010507190029FF150025FF950650
+:1005800075088100C00A002530325820006B65795B
+:10059000626F6172645F7265706F72743A20000AF4
+:1005A0000025303258006B6579626F6172645F7349
+:1005B00065745F6C65643A200064656C5F6B657997
+:1005C0005F6269743A2063616E27742064656C3AD7
+:1005D00020253032580A006164645F6B65795F6280
+:1005E00069743A2063616E2774206164643A20253F
+:1005F0003032580A00646F6E652E0A00626F6F67B2
+:100600006D61676963207363616E3A202E2E2E2020
+:1006100000290A002575002F002575005D2800259A
+:10062000640020002564002000256400200025646B
+:10063000007C0025303258006D6F7573656B6579ED
+:10064000205B62746E7C782079207620685D287249
+:1006500065702F61636C293A205B006D6B5F776872
+:1006600065656C5F74696D655F746F5F6D6178203F
+:100670003D2025640A006D6B5F776865656C5F6D72
+:1006800061785F7370656564203D2025640A006DA4
+:100690006B5F74696D655F746F5F6D6178203D207D
+:1006A00025640A006D6B5F6D61785F7370656564CA
+:1006B000203D2025640A006D6B5F696E746572765B
+:1006C000616C203D2025640A006D6B5F64656C6180
+:1006D00079203D2025640A006D6B5F776865656C45
+:1006E0005F74696D655F746F5F6D6178203D202573
+:1006F000640A006D6B5F776865656C5F6D61785F3C
+:100700007370656564203D2025640A006D6B5F741D
+:10071000696D655F746F5F6D6178203D2025640AA7
+:10072000006D6B5F6D61785F7370656564203D205F
+:1007300025640A006D6B5F696E74657276616C206A
+:100740003D2025640A006D6B5F64656C6179203D16
+:100750002025640A000A00257500363A207768656E
+:10076000656C5F74696D655F746F5F6D61783A2069
+:10077000000A00257500353A20776865656C5F6D65
+:1007800061785F73706565643A20000A0025750022
+:10079000343A2074696D655F746F5F6D61783A20DB
+:1007A000000A00257500333A206D61785F7370652B
+:1007B00065643A20000A00257500323A20696E749B
+:1007C000657276616C286D73293A20000A002575E0
+:1007D00000313A2064656C6179282A31306D7329C3
+:1007E0003A20000A092D2056616C756573202D0A88
+:1007F000004D3E004D25643E20003F00736574208F
+:1008000064656661756C740A00433E200077686514
+:1008100072652064656C74613A20637572736F72DF
+:100820003D25642C20776865656C3D25640A536519
+:100830006520687474703A2F2F656E2E77696B6926
+:1008400070656469612E6F72672F77696B692F4DD0
+:100850006F7573655F6B6579730A000A092D204D0A
+:100860006F7573656B6579202D0A4553432F713A77
+:1008700009717569740A313A0964656C6179282ACD
+:1008800031306D73290A323A09696E746572766186
+:100890006C286D73290A333A096D61785F7370654E
+:1008A00065640A343A0974696D655F746F5F6D61E0
+:1008B000780A353A09776865656C5F6D61785F73B2
+:1008C000706565640A363A09776865656C5F7469B6
+:1008D0006D655F746F5F6D61780A0A703A097072B6
+:1008E000696E742076616C7565730A643A09736584
+:1008F000742064656661756C74730A75703A092BAF
+:10090000310A646F776E3A092D310A706775703A53
+:10091000092B31300A7067646F776E3A092D3130D8
+:100920000A0A7370656564203D2064656C746120FB
+:100930002A206D61785F7370656564202A202872B3
+:100940006570656174202F2074696D655F746F5FD9
+:100950006D6178290A003F004D3E2000433E200093
+:100960004C25640A000A092D20436F6E736F6C6575
+:10097000202D0A4553432F713A09717569740A6D28
+:100980003A096D6F7573656B65790A000A092D2048
+:100990004D61676963202D0A643A09646562756771
+:1009A0000A783A096465627567206D6174726978C6
+:1009B0000A6B3A096465627567206B6579626F61DD
+:1009C00072640A6D3A096465627567206D6F7573AC
+:1009D000650A763A0976657273696F6E0A733A0929
+:1009E0007374617475730A633A09636F6E736F6C25
+:1009F00065206D6F64650A302D343A096C61796544
+:100A000072302D34284631302D4634290A50617514
+:100A1000733A09626F6F746C6F616465720A653A4C
+:100A200009656570726F6D0A6E3A094E4B524F0A36
+:100A30007A3A09736C656570204C4544207465737F
+:100A4000740A000A002575002E6E6B726F3A200042
+:100A50000A002575002E737761705F6261636B73A6
+:100A60006C6173685F6261636B73706163653A2088
+:100A7000000A002575002E737761705F67726176DA
+:100A8000655F6573633A20000A002575002E6E6F5E
+:100A90005F6775693A20000A002575002E7377613B
+:100AA000705F72616C745F726775693A20000A004A
+:100AB0002575002E737761705F6C616C745F6C6775
+:100AC00075693A20000A002575002E636170736C09
+:100AD0006F636B5F746F5F636F6E74726F6C3A20DD
+:100AE000000A002575002E737761705F636F6E7466
+:100AF000726F6C5F636170736C6F636B3A20000A96
+:100B00000025303258006B65796D61705F636F6EE0
+:100B10006669672E7261773A20000A002575002EFB
+:100B20006D6F7573653A20000A002575002E6B65A0
+:100B300079626F6172643A20000A002575002E6D9B
+:100B400061747269783A20000A002575002E656E7E
+:100B500061626C653A20000A0025303258006465F5
+:100B60006275675F636F6E6669672E7261773A20A0
+:100B7000000A0025750064656661756C745F6C61C0
+:100B80007965723A20003F004E4B524F3A206F6613
+:100B9000660A004E4B524F3A206F6E0A0074696D20
+:100BA00065725F636F756E743A202530346C580A35
+:100BB000006B6579626F6172645F6E6B726F3A2071
+:100BC00025580A006B6579626F6172645F69646CB5
+:100BD000653A2025580A006B6579626F6172645F1F
+:100BE00070726F746F636F6C3A2025580A00686FDB
+:100BF00073745F6B6579626F6172645F6C65647357
+:100C000028293A2025580A000A092D2053746174B6
+:100C10007573202D0A004743433A20342E392E3372
+:100C2000204156522D4C4942433A20312E382E3124
+:100C3000204156525F415243483A20617672350A4C
+:100C4000004F5054494F4E533A204C554641204294
+:100C50004F4F544D41474943204D4F5553454B4508
+:100C6000592045585452414B455920434F4E534FFC
+:100C70004C4520434F4D4D414E44204E4B524F204A
+:100C80003531320A004255494C443A203230303630
+:100C90003038342D6469727479202830313A313615
+:100CA0003A3235204A616E203331203230313629D4
+:100CB0000A005649443A2030784645454428457252
+:100CC000676F446F7820455A29205049443A2030B4
+:100CD0007831333037284572676F446F7820455A32
+:100CE00029205645523A203078303030310A0044BD
+:100CF0004553433A20742E6D2E6B2E206B6579621E
+:100D00006F617264206669726D7761726520666FCB
+:100D100072204572676F646F780A000A092D2056A9
+:100D2000657273696F6E202D0A000A6D6F757365A9
+:100D30003A206F66660A000A6D6F7573653A206F18
+:100D40006E0A000A6B6579626F6172643A206F66A1
+:100D5000660A000A6B6579626F6172643A206F6E91
+:100D60000A000A6D61747269783A206F66660A003B
+:100D70000A6D61747269783A206F6E0A000A6465C0
+:100D80006275673A206F6E0A000A64656275673A99
+:100D9000206F66660A000A0A626F6F746C6F616486
+:100DA00065722E2E2E2000433E20006565636F6E17
+:100DB0006669673A0A00536C656570204C454420AB
+:100DC000746573740A000000000000000000000059
+:100DD00000010204060A0F17202C3A4A5D71879D14
+:100DE000B3C7DAE9F5FCFFFCF5E9DAC7B39D877113
+:100DF0005D4A3A2C20170F0A060402010000000089
+:100E000000000000000011241FBECFEFDAE0DEBFBB
+:100E1000CDBF04B603FE24C08091F9019091FA0180
+:100E2000A091FB01B091FC018730904BA740B04BE3
+:100E3000B9F41092F9011092FA011092FB0110928C
+:100E4000FC0114BE84B7877F84BF88E10FB6F89495
+:100E500080936000109260000FBEE0E0FFE3099510
+:100E600011E0A0E0B1E0EAEAFBE502C005900D92D6
+:100E7000AA33B107D9F711E0AAE3B1E001C01D928E
+:100E8000A93FB107E1F70E94930F0C94D32D0C9466
+:100E90000000FF93EF93E0913A01F0913B0130970E
+:100EA00009F00995EF91FF910895FC01859180303B
+:100EB00011F0EFDFFBCF0895FF27E0E230E247FFBC
+:100EC0000CC0419597FF09C0EDE260957095809543
+:100ED0009095611D711D811D911D27FF02C02195F7
+:100EE00030E350E2AA27660F771F881F991FAA1FB9
+:100EF000A41710F0A41B63955A95A9F7AA3008F01F
+:100F0000A95FA05DAF93F39561157105810591050A
+:100F100041F7ED3211F4EF93F395F21718F43F9384
+:100F2000F395FBCF8F91B5DFFA95E1F70895E9913D
+:100F3000F9918591803021F0853219F0AADFF9CF3F
+:100F4000089520E0E89455915532C1F3503311F4DF
+:100F5000689455915A3348F4505390F3220F022E5F
+:100F6000220F220F200D250FF4CF0EF42195899129
+:100F70009991533619F3533729F1533559F1BC017F
+:100F800088279927E8945C3621F48991999168948F
+:100F90005591543639F446EF7EF077FF0DC08FEF50
+:100FA0009FEF0AC055374AE039F0583540E121F04B
+:100FB000523642E009F00895FF93EF937DDFEF9101
+:100FC000FF91B7CFFF93EF93FC0181918030B9F38C
+:100FD00060DFFBCFFF93EF9368DFF1CFDF93CF9319
+:100FE000CDB7DEB72596A3DFCF91DF9108956111CC
+:100FF0000BC0FC018281882321F085EE0E947016CF
+:1010000003C085EE0E94381780E090E008950895AF
+:101010006091BC017091BD018091BE019091BF01B2
+:101020000E94FE2056985E9825982D9826982E9816
+:1010300027982F98813019F0823021F00895259A51
+:101040002D9A0895269A2E9A089588E098E0892B83
+:1010500011F00E94080880E090E0089556985E988C
+:1010600025982D9826982E9827982F988FEF90E006
+:10107000909389008093880090938B0080938A00DE
+:1010800090938D0080938C00259A2D9A2FEF80E706
+:1010900092E0215080409040E1F700C00000269A85
+:1010A0002E9A2FEF80E792E0215080409040E1F7A8
+:1010B00000C00000279A2F9A2FEF80E792E021507E
+:1010C00080409040E1F700C0000025982D982FEF58
+:1010D00080E792E0215080409040E1F700C000009E
+:1010E00026982E982FEF80E792E021508040904084
+:1010F000E1F700C0000027982F9856985E98259831
+:101100002D9826982E9827982F98089589EA8093ED
+:10111000800089E08093810024982C983F988AB1C0
+:101120008F748AB96E98479A8BB1806B8BB9769A17
+:101130000E942E0887E098E0892B11F00E94070892
+:1011400080E090E0089580E28093000180913C016E
+:1011500081110EC00E94F20881E080933C012FEFC4
+:1011600083ED90E3215080409040E1F700C0000003
+:1011700080E40E94F8088093000181112EC00E9433
+:10118000220980930001811128C00E9422098093C6
+:101190000001811122C08FE30E9422098093000187
+:1011A00081111BC00E941A0980E40E94F8088093F4
+:1011B0000001811112C08CE00E942209809300017D
+:1011C00081110BC00E94220980930001811105C08A
+:1011D0008FE30E942209809300010E941A098091E6
+:1011E000000108951092B9008AE08093B800089534
+:1011F00094EA9093BC009091BC0097FFFCCF909133
+:10120000B900987F983021F0903111F081E0089575
+:101210008093BB0084E88093BC008091BC0087FF72
+:10122000FCCF8091B900887F883111F0803471F74C
+:1012300080E0089584E98093BC008091BC0084FD27
+:10124000FCCF08958093BB0084E88093BC0080911C
+:10125000BC0087FFFCCF9091B900987F81E0983265
+:1012600009F480E0089584E88093BC008091BC007C
+:1012700087FFFCCF8091BB00089580910001811110
+:1012800015C080E40E94F8088093000181110CC011
+:1012900082E10E94220980930001811105C08FEF35
+:1012A0000E942209809300010E941A0984B1807F64
+:1012B00084B985B1807F85B98AB1837F8AB98BB1C2
+:1012C000837F8BB93E98469808950E94A308809327
+:1012D00000010E943D0980B38C7080BB81B3836F95
+:1012E00081BBAEE3B1E0ECE4F1E08EE08E0F119251
+:1012F0001D928E13FCCF86E898E0892B11F00C9498
+:10130000860808959F92AF92BF92CF92DF92EF929C
+:10131000FF920F931F93CF93DF9380910001882357
+:10132000E1F080913D018F5F80933D01811115C0F7
+:1013300082E493E00E9455070E94A3088093000175
+:10134000882329F088E293E00E94550706C084E1D3
+:1013500093E00E9455070E942E080EE311E0C0E0C2
+:10136000D0E0BB24B39482E0A82ECC24C394D12C2B
+:1013700025E0E22E23E0F22EC730D10500F5809162
+:101380000001811164C080E40E94F808809300018C
+:10139000811112C082E10E94220980930001811113
+:1013A0000BC0C6010C2E01C0880F0A94EAF7809585
+:1013B0000E942209809300010E941A0948C0CA3085
+:1013C000A1F028F4C83059F0C93061F005C0CC3024
+:1013D00089F070F0CD3089F0209A289810C0219AB9
+:1013E00029980DC0229A2A980AC0239A2B9807C0E0
+:1013F000529A01C0539A5B9802C03E9A469890EA6E
+:101400009A95F1F79FB1799902C082E001C080E01E
+:1014100091709B25982B7C9902C084E001C080E0EC
+:10142000892B7D9902C038E001C030E0832B7E9982
+:1014300002C020E101C020E0822B9FB19095991F4E
+:101440009927991F9295990F907E892B10C08091B2
+:101450000001811174C080E40E94F80880930001AB
+:10146000882309F459C0912C0E941A09892DF8018A
+:101470009081981739F1808380910101882301F1CF
+:101480008091D70180FF04C08AE093E00E94550755
+:101490008091D70180FF0CC0809101011F928F9332
+:1014A000FF92EF920E94EE070F900F900F900F9017
+:1014B0008091D70180FF04C083E093E00E9455072C
+:1014C000A09201010E943D0921960F5F1F4FCE306F
+:1014D000D10509F051CF809101018823B1F08150ED
+:1014E00080930101882339F08FE99FE00197F1F79C
+:1014F00000C000000AC0ACE4B1E0EEE3F1E0CF01CF
+:10150000825F91919D938E13FCCF85E298E0892BA9
+:10151000C1F00E94250815C083E10E942209809332
+:1015200000018111A0CF81E40E94F808809300019E
+:10153000811199CF0E943309982E909495CF80E025
+:1015400096CF81E0DF91CF911F910F91FF90EF90A7
+:10155000DF90CF90BF90AF909F900895E82FF0E07C
+:10156000E45BFE4F80810895CF92DF92EF92FF926D
+:101570000F931F93CF93DF938CEE92E00E94550759
+:101580008CE4E82E81E0F82EC0E0D0E097EEC92E82
+:1015900092E0D92E0EED12E0DF93CF93DF92CF923F
+:1015A0000E94EE0784EE92E00E945507F7018191B8
+:1015B0007F0190E00E9464219F938F931F930F936C
+:1015C0000E94EE078CED92E00E94550721968DB7A0
+:1015D0009EB708960FB6F8949EBF0FBE8DBFCE3053
+:1015E000D105D1F6DF91CF911F910F91FF90EF9030
+:1015F000DF90CF9008958B3B910578F4883A910560
+:1016000040F5853A9105D0F48430910508F0B1C0D9
+:101610008130910509F4ADC06BC0803E910508F49E
+:1016200067C0883E910508F4A4C09C01205F310981
+:101630002031310508F05CC090650895853A910528
+:1016400009F459C0863A910509F058C082E890E43F
+:101650000895883A910509F454C0893A910509F42E
+:1016600053C08A3A910509F452C08B3A910509F4A6
+:1016700051C08C3A910509F450C08D3A910509F496
+:101680004FC0803B910509F44EC08E3A910509F494
+:101690004DC08F3A910509F44CC0813B910509F486
+:1016A0004BC0823B910509F44AC0833B910509F484
+:1016B00049C0843B910509F448C0853B910509F474
+:1016C00047C0863B910509F446C0873B910509F464
+:1016D00045C0883B910509F444C0893B910509F454
+:1016E00043C08A3B910509F442C080E094E4089528
+:1016F00080E090E0089581E890E4089583E890E424
+:10170000089582EE94E4089589EE94E408958AEEB3
+:1017100094E4089585EB94E4089586EB94E40895A9
+:1017200087EB94E408958CEC94E408958DEC94E4B4
+:10173000089583E895E408958AE895E4089582E998
+:1017400095E4089584E995E4089581E296E4089586
+:1017500083E296E4089584E296E4089585E296E4AF
+:10176000089586E296E4089587E296E408958AE271
+:1017700096E40895089596E0799FF001112494E588
+:10178000899FE00DF11D1124E60FF11DEE0FFF1FE3
+:10179000EC51FF4F859194910895880F991FFC019A
+:1017A000E05AF040859194910895880F991FFC01AB
+:1017B000E052FF4F85919491089526E0729FF001C9
+:1017C000112444E5849FE00DF11D1124E60FF11D65
+:1017D000EE0FFF1FEC51FF4F859194919C013A95BC
+:1017E00021154FE1340708F41EC13F512115304146
+:1017F00020F49F700E94D50B08959C013053211551
+:10180000304118F49927906C0895811520E59207CE
+:1018100069F40E94BE1A4FEF84E39CE0415080407F
+:101820009040E1F700C000000C942422813020E5B4
+:10183000920751F48CE593E00E9455078091D701FF
+:1018400081608093D70108959C0130552115304166
+:1018500008F051C0292F33272F703327213031054D
+:10186000D9F4AC014370552702C0220F331F4A95AB
+:10187000E2F73C68AC0164E0440F551F6A95E1F75C
+:1018800044275370242B352B73E0880F991F7A95CA
+:10189000E1F7807699271DC02230310529F4982F71
+:1018A0008827816F906A089523303105A9F4AC012F
+:1018B0004370552721E030E002C0220F331F4A95C4
+:1018C000E2F73C6843E0880F991F4A95E1F7807E74
+:1018D0009770822B932B089524303105E1F4AC01ED
+:1018E0004370552721E030E002C0220F331F4A9594
+:1018F000E2F73A68E7CF9C0130572115304118F4E0
+:101900009F70906208959C0130582115304118F461
+:101910009F70906A0895803E9105E0F4803C9105A7
+:1019200058F58133910509F46FC048F48932910567
+:1019300009F463C08A32910509F46DC072C089331D
+:101940009105E9F082389105D1F08533910509F4CC
+:101950004DC067C0833E910581F138F4803E91050A
+:10196000B9F0823E9105D9F05CC0863E910561F1E7
+:10197000873E9105A1F155C00E94CD0B089520919D
+:10198000EA0120FD02C021FF4CC080EE90E049C07A
+:101990008091EA0180FFF9CF89E390E042C0809115
+:1019A000EA0182FF0EC08091EA0184FF03C080E05B
+:1019B00090E037C083EE90E034C08091EA0182FF6E
+:1019C000F2CF82EE90E02DC08091EA0183FF0BC040
+:1019D0008091EA0184FDEBCF87EE90E022C08091F8
+:1019E000EA0183FFF5CF86EE90E01BC08091EA010B
+:1019F00085FF07C089E290E014C08091EA0185FF6D
+:101A0000F9CF85E390E00DC08091EA0186FF07C021
+:101A10008AE290E006C08091EA0186FFF9CF81E377
+:101A200090E00E94FB0A0895089580916D01089549
+:101A30009FB7F89410925C019FBF9091F001943091
+:101A400009F057C09091E9009F703091EC00232F6E
+:101A5000217030FD20E8922B24E02093E9002091B2
+:101A6000EB0020FF43C02091EE0027FF3FC02091F4
+:101A70005A01222321F02091E80025FF37C010925F
+:101A80005A0126E03091E80035FD15C03091F00193
+:101A9000343061F53091EB0035FD28C0215021F440
+:101AA00081E080935A0122C0EFE9FFE03197F1F71E
+:101AB00000C00000E7CF8093F1008091E80085FD31
+:101AC0000AC08091E80080FFFCCF8091E8008E770B
+:101AD0008093E80006C08FB7F89421E020935C0162
+:101AE0008FBF9F709093E90080E008959F7090935E
+:101AF000E9008FEF0895CF93DF9300D01F92CDB709
+:101B0000DEB79C018091F001843019F593E0998350
+:101B10003B832A839093E9008FEF9091E8008150F6
+:101B200095FD06C095ED9A95F1F700008111F5CF6E
+:101B30008091E80085FF0DC040E050E063E070E078
+:101B4000CE0101960E944B108091E8008E77809321
+:101B5000E8000F900F900F90DF91CF910895CF93F1
+:101B6000DF9300D01F92CDB7DEB72091F001243073
+:101B700021F522E029839B838A8383E08093E90017
+:101B80008FEF9091E800815095FD06C095ED9A95F4
+:101B9000F1F700008111F5CF8091E80085FF0DC0BD
+:101BA00040E050E063E070E0CE0101960E944B10EF
+:101BB0008091E8008E778093E8000F900F900F904F
+:101BC000DF91CF9108952091F0012430F1F422E0CB
+:101BD0002093E9002FEF3091E800215035FD06C039
+:101BE00035ED3A95F1F700002111F5CF2091E8008D
+:101BF00025FF0BC040E050E065E070E00E944B1014
+:101C00008091E8008E778093E8000895CF93DF936A
+:101C10002091F001243009F048C0EC0180910C01C2
+:101C20008823E1F080910D018823C1F085E0809345
+:101C3000E9008FEF9091E800815095FD06C095E195
+:101C40009A95F1F700008111F5CF8091E80085FFAA
+:101C50002CC040E050E060E170E017C081E080936C
+:101C6000E9008FEF9091E800815095FD06C095ED59
+:101C70009A95F1F700008111F5CF8091E80085FF7A
+:101C800014C040E050E068E070E0CE010E944B10CC
+:101C90008091E8008E778093E80080E1FE01ADE559
+:101CA000B1E001900D928A95E1F7DF91CF9108950F
+:101CB00083E993E00E9455078091EF01811109C0EB
+:101CC0000E94E0110E943D128091E20084608093A6
+:101CD000E20008958FE893E00E9455071092EF010B
+:101CE00008958BE893E00C94550787E893E00E94F1
+:101CF00055070C94F42B83E893E00E9455070E944B
+:101D0000BA210E94FA2B0E94E2140C94140D209127
+:101D10005B012F5F822F62E30E94682D992319F0E7
+:101D200020935B01089510925B0180915C018823F0
+:101D300071F18091F001843041F58091E9008F705C
+:101D40002091EC00922F917020FD90E8892B94E077
+:101D50009093E9009091EB0090FF14C09091EE00F9
+:101D600097FF10C09091E80095FF03C01092F1001A
+:101D7000F9CF9091E80090FF05C09091E8009E7720
+:101D80009093E8008F708093E90010925C010895B1
+:101D900042E061EC81E00E945A1142E061EC82E095
+:101DA0000E945A1142E061EC83E00E945A1142E223
+:101DB00061EC84E00E945A1142E161EC85E00C94F0
+:101DC0005A118091F201833009F455C030F481300A
+:101DD00071F0823009F48EC008958A3009F47AC017
+:101DE0008B3009F460C0893009F09CC020C080911C
+:101DF000F101813A09F096C08091E800877F8093D5
+:101E0000E8008091F5019091F601892B21F460E1C1
+:101E10008DE591E003C060E080E090E070E00E941A
+:101E200096108091E8008B778093E8000895809168
+:101E3000F101813209F076C08091F5019091F601AF
+:101E4000009719F0049709F06DC08091E800877F32
+:101E50008093E8008091E80082FD05C08091F00148
+:101E60008111F8CF5FC08091F10080936D01809166
+:101E7000E8008B7753C08091F101813A09F052C09C
+:101E80008091F5019091F601892B09F04BC080916A
+:101E9000E800877F8093E8008091E80080FFFCCF16
+:101EA00080910C0136C08091F1018132D9F5809189
+:101EB000F5019091F601892BA9F58091E800877FC3
+:101EC0008093E8000E948F118091F30180930C01B0
+:101ED0000C94BE1A8091F101813221F58091E800C5
+:101EE000877F8093E8000E948F118091F401809396
+:101EF0006E0108958091F101813AA1F48091E8008A
+:101F0000877F8093E8008091E80080FFFCCF80917C
+:101F10006E018093F1008091E8008E778093E80055
+:101F20000C948F11089584B7877F84BF88E10FB622
+:101F3000F89480936000109260000FBE90E080E8FB
+:101F40000FB6F89480936100909361000FBE0E94D9
+:101F50006F150E94E0110E943D128091E2008460A2
+:101F60008093E20088E19DE00E94F92078940E942D
+:101F7000C2140E94711582E091E00E94DD140E945B
+:101F8000E22B82E793E00E9455078091F0018530B3
+:101F900089F48EE693E00E9455070E947E2180918D
+:101FA000EE01882391F30E94A621882371F30E94F9
+:101FB0003510EBCF0E949F15E8CF292F3327233010
+:101FC0003105C9F064F42130310581F0223031054A
+:101FD00009F043C08DE890E02BEC33E042C02132A1
+:101FE0003105F1F02232310541F137C082E190E054
+:101FF00028E534E036C099278130910541F08230E0
+:10200000910541F0892B49F5E7ECF3E005C0EFEAD3
+:10201000F3E002C0E7E9F3E0849190E09F0121C082
+:102020006530D8F4E62FF0E0EE0FFF1FEB5DFE4FBA
+:102030002081318189E090E014C0653070F470E057
+:10204000FB01EE0FFF1FE55EFE4F20813181FB019A
+:10205000EA5EFE4F808190E004C080E090E020E0E6
+:1020600030E0FA0131832083089580E189BD82E167
+:1020700089BD09B400FEFDCF8091D8008F7D80938B
+:10208000D8008091E00082608093E0008091E000C1
+:1020900081FDFCCF0895CF92DF92EF92FF920F93D4
+:1020A0001F93CF93DF93EC018B016A010E94AE1165
+:1020B000811133C0C114D10439F0F60180819181BE
+:1020C000081B190BC80FD91FE12CF12C01151105A4
+:1020D00019F18091E80085FD16C08091E8008E77A7
+:1020E0008093E800C114D10449F0F6018081918108
+:1020F000E80EF91EF182E08285E00FC00E94AE1169
+:10210000882321F30AC089918093F10001501109BD
+:10211000FFEFEF1AFF0ADACF80E0DF91CF911F9136
+:102120000F91FF90EF90DF90CF9008952091F701ED
+:102130003091F8012617370748F06115710539F419
+:102140002091E8002E772093E80001C0B90140E01B
+:1021500061157105A9F12091F001222309F443C012
+:10216000253009F442C02091E80023FD40C02091B1
+:10217000E80022FD32C02091E80020FFE9CF409125
+:10218000F3002091F20030E0342BFC01CF01611507
+:10219000710559F02830310540F481918093F100A8
+:1021A000615071092F5F3F4FF1CF41E02830310579
+:1021B00009F040E02091E8002E772093E800C8CF96
+:1021C0004111C9CF0AC08091F001882361F08530A8
+:1021D00061F08091E80083FD0AC08091E80082FFF1
+:1021E000F2CF80E0089582E0089583E0089581E0D1
+:1021F00008952091F7013091F8012617370748F02C
+:102200006115710539F42091E8002E772093E800DC
+:1022100001C0B901FC0120E06115710591F18091C7
+:10222000F001882309F440C0853009F43FC0809153
+:10223000E80083FD3DC08091E80082FD2FC08091C1
+:10224000E80080FFE9CF2091F3008091F20090E058
+:10225000922B6115710559F08830910540F4249155
+:102260002093F1003196615071090196F2CF21E07F
+:10227000089709F020E08091E8008E778093E800CD
+:10228000CBCF2111CCCF0AC08091F001882361F01F
+:10229000853061F08091E80083FD0AC08091E800FC
+:1022A00082FFF2CF80E0089582E0089583E00895F0
+:1022B00081E00895982F973058F59093E90098178A
+:1022C00039F07091EC002091ED005091F00003C0C6
+:1022D000242F762F50E021FF19C03091EB003E7F74
+:1022E0003093EB003091ED003D7F3093ED00309165
+:1022F000EB0031603093EB007093EC002093ED0025
+:102300005093F0002091EE0027FF07C09F5FD3CFCE
+:102310008F708093E90081E0089580E008958091B6
+:10232000F10187FF11C08091E80082FD05C0809116
+:10233000F0018111F8CF11C08091E8008B770BC0BC
+:102340008091F001882349F08091E80080FFF8CF68
+:102350008091E8008E778093E80008952091E40052
+:102360003091E50095E64091EC00842F817040FFAC
+:1023700022C08091E80080FD1CC08091F00188237C
+:1023800091F0853091F08091EB0085FD10C0409177
+:10239000E4005091E5004217530729F39A01915048
+:1023A00011F784E0089582E0089583E0089581E0C4
+:1023B000089580E008954091E80042FFDECF08953F
+:1023C0000E944E120E945612E0EEF0E08081816081
+:1023D0008083E8EDF0E080818F77808319BCA7EDE2
+:1023E000B0E08C918E7F8C9380818F7E8083109261
+:1023F000EF0108950F931F93CF93DF930E944E1226
+:102400000E945612C8EDD0E088818F77888388813A
+:102410008068888388818F7D888319BC1092F00141
+:102420001092EC011092EE011092ED0100EE10E01E
+:10243000F80180818B7F808388818160888342E07E
+:1024400060E080E00E945A11E1EEF0E080818E7F32
+:102450008083E2EEF0E0808181608083808188600B
+:102460008083F80180818E7F80838881806188836A
+:10247000DF91CF911F910F910895E8EDF0E08081F9
+:102480008F7E8083E7EDF0E080818160808384E04F
+:1024900082BF81E08093EF010C94FA11E8EDF0E047
+:1024A00080818E7F80831092E20008951092DA007E
+:1024B0001092E10008951F920F920FB60F9211240F
+:1024C0002F933F934F935F936F937F938F939F933C
+:1024D000AF93BF93EF93FF938091E10082FF0BC016
+:1024E0008091E20082FF07C08091E1008B7F8093A2
+:1024F000E1000E94870E8091DA0080FF1FC080916A
+:10250000D80080FF1BC08091DA008E7F8093DA00B4
+:102510008091D90080FF0DC080E189BD82E189BD35
+:1025200009B400FEFDCF81E08093F0010E94580EB7
+:1025300005C019BC1092F0010E946A0E8091E10062
+:1025400080FF19C08091E20080FF15C08091E200F9
+:102550008E7F8093E2008091E20080618093E200B0
+:102560008091D80080628093D80019BC85E0809368
+:10257000F0010E94750E8091E10084FF30C08091CF
+:10258000E20084FF2CC080E189BD82E189BD09B4ED
+:1025900000FEFDCF8091D8008F7D8093D800809180
+:1025A000E1008F7E8093E1008091E2008F7E809336
+:1025B000E2008091E20081608093E2008091EC0172
+:1025C000882311F084E007C08091E30087FD02C0FA
+:1025D00081E001C083E08093F0010E947B0E809136
+:1025E000E10083FF29C08091E20083FF25C0809134
+:1025F000E100877F8093E10082E08093F0011092F8
+:10260000EC018091E1008E7F8093E1008091E200F7
+:102610008E7F8093E2008091E20080618093E200EF
+:1026200042E060E080E00E945A118091F0008860F2
+:102630008093F0000E94710EFF91EF91BF91AF91D6
+:102640009F918F917F916F915F914F913F912F91CA
+:102650000F900FBE0F901F9018951F920F920FB6FC
+:102660000F9211242F933F934F935F936F937F9318
+:102670008F939F93AF93BF93CF93DF93EF93FF938A
+:10268000C091E900CF708091EC00D82FD17080FD0F
+:10269000D0E81092E9008091F000877F8093F000ED
+:1026A00078940E9471131092E9008091F000886084
+:1026B0008093F000CD2BCF70C093E900FF91EF9194
+:1026C000DF91CF91BF91AF919F918F917F916F914A
+:1026D0005F914F913F912F910F900FBE0F901F90E0
+:1026E00018951F93CF93DF93CDB7DEB7AA970FB698
+:1026F000F894DEBF0FBECDBFE1EFF1E088E08E0FB2
+:102700009091F10091938E13FBCF0E94E10E809186
+:10271000E80083FF1FC18091F1019091F201492FE0
+:1027200050E04A30510508F015C1FA01EA5AFF4F4E
+:102730000C94882D803881F0823809F00BC180918B
+:10274000F5018F708093E9008091EB0085FB88276D
+:1027500080F91092E90006C08091ED019091EE01A0
+:10276000911182609091E800977F9093E8008093A8
+:10277000F1001092F100C8C0282F2D7F09F0EAC0A7
+:10278000882319F0823061F0E5C08091F301813037
+:1027900009F0E0C0933009F080E08093EE012BC097
+:1027A0008091F301811127C08091F5018F7009F4A8
+:1027B000D1C08093E9002091EB0020FF1CC0933032
+:1027C00021F48091EB00806214C09091EB00906145
+:1027D0009093EB0021E030E0A90102C0440F551FA7
+:1027E0008A95E2F74093EA001092EA008091EB00AC
+:1027F00088608093EB001092E9008091E800877F69
+:1028000086C08111A7C01091F3011F778091E3006A
+:102810008078812B8093E3008091E800877F80930C
+:10282000E8000E948F118091E80080FFFCCF80912A
+:10283000E30080688093E300111102C082E001C0D0
+:1028400083E08093F00186C08058823008F082C017
+:102850008091F3019091F4018C3D53E0950779F557
+:1028600083E08A838AE289834FB7F894DE01139666
+:1028700020E03EE051E2E32FF0E050935700E49176
+:1028800020FF03C0E295EF703F5FEF708E2F90E066
+:10289000EA3010F0C79601C0C0968D939D932F5FCC
+:1028A000243149F74FBF8091E800877F8093E8008B
+:1028B0006AE270E0CE0101960E94961014C0AE014B
+:1028C0004F5F5F4F6091F5010E94DD0FBC01892BC6
+:1028D00009F440C09091E800977F9093E8008981C7
+:1028E0009A810E94F9108091E8008B778093E8002C
+:1028F00031C0803879F58091E800877F8093E800C7
+:102900008091EC018093F1008091E8008E778093B4
+:10291000E8000E948F111EC081111CC09091F3012C
+:102920009230C0F48091E800877F8093E800909314
+:10293000EC010E948F118091EC01811106C0809101
+:10294000E30087FD02C081E001C084E08093F001D4
+:102950000E94C80E8091E80083FF0AC08091E800C1
+:10296000877F8093E8008091EB0080628093EB008A
+:10297000AA960FB6F894DEBF0FBECDBFDF91CF9100
+:102980001F910895CF938091F0018823A1F0C09109
+:10299000E900CF709091EC00892F817090FD80E864
+:1029A000C82B1092E9008091E80083FD0E9471130A
+:1029B000CF70C093E900CF910895909374018093F4
+:1029C00073010895E0917301F0917401309721F043
+:1029D0000190F081E02D099480E00895EF92FF923C
+:1029E0000F931F93CF93DF93E0917301F0917401E4
+:1029F0003097B1F18C010280F381E02D099580912F
+:102A0000D70182FF2DC080FF04C08DE895E00E94B1
+:102A10005507E80110E187E8E82E85E0F82E80915F
+:102A2000D70180FF0BC088811F928F93FF92EF9296
+:102A30000E94EE070F900F900F900F90115021966B
+:102A40001111EDCF8091D70180FF0AC085E895E094
+:102A5000DF91CF911F910F91FF90EF900C9455074C
+:102A6000DF91CF911F910F91FF90EF900895E0912A
+:102A70007301F0917401309721F00480F581E02D0D
+:102A80000994089520917101309172018217930782
+:102A900071F09093720180937101E0917301F09154
+:102AA0007401309721F00680F781E02D0994089594
+:102AB00020916F01309170018217930771F090930C
+:102AC000700180936F01E0917301F0917401309770
+:102AD00021F00084F185E02D0994089508950C9467
+:102AE0006E150E94C0210E9465090C948622CF9326
+:102AF000C82F8091D70182FF1EC080FF04C086EAE4
+:102B000095E00E9455078091D70180FF0CC01F926D
+:102B1000CF9381EA95E09F938F930E94EE070F90E9
+:102B20000F900F900F908091D70180FF04C08FE924
+:102B300095E00E9455078C2FCF910C94140DCF92E5
+:102B4000DF92EF92FF920F931F93CF93DF93CDB756
+:102B5000DEB72B970FB6F894DEBF0FBECDBF0E9435
+:102B6000820986E7C82E81E0D82E00E010E0E02E32
+:102B7000802F0E94AE0AF60141916F01F42EF826D3
+:102B8000B1F40F5F1F4F0E30110589F78FEF898366
+:102B90008A831B820E94C9218160782F9D838C8348
+:102BA00049815A816B818D810E94421640C090916B
+:102BB000D70191FF04C08B870E94B40A8B8520E067
+:102BC00030E04F2D50E0922FBA01022E02C07595D1
+:102BD00067950A94E2F760FF24C02E83EF8221E01C
+:102BE00030E0690102C0CC0CDD1C9A95E2F790E060
+:102BF0008C219D21892B09F420E028870E94C9217E
+:102C00008160782F9A8789874E815F8168858A8560
+:102C10000E944216F801EA58FE4F8081C826C08201
+:102C200006C02F5F3F4F2630310569F6AACF0E94BC
+:102C3000F725109175010E94E2141817A1F00E9467
+:102C4000E214809375012B960FB6F894DEBF0FBE89
+:102C5000CDBFDF91CF911F910F91FF90EF90DF904B
+:102C6000CF900C9477152B960FB6F894DEBF0FBE5D
+:102C7000CDBFDF91CF911F910F91FF90EF90DF902B
+:102C8000CF900895CF93DF93CDB7DEB72B970FB6D4
+:102C9000F894DEBF0FBECDBF4F83588769877A8710
+:102CA0008B87DE01119686E0FD0111928A95E9F786
+:102CB00085E0FE01379601900D928A95E1F74981F2
+:102CC0005A816B817C818D819E810E94581D2B963B
+:102CD0000FB6F894DEBF0FBECDBFDF91CF91089540
+:102CE000CF93882309F4C2C0C82F823859F40E94B8
+:102CF000E21481FDBBC089E30E94F41F0E94D3202F
+:102D000089E30CC0833879F40E94E21480FDAEC0E0
+:102D100083E50E94F41F0E94D32083E50E94472090
+:102D2000CF910C94D320843859F40E94E21482FD90
+:102D30009DC087E40E94F41F0E94D32087E4EECF59
+:102D40008CEF8C0F813A48F48C2F0E948A2A8111D3
+:102D50008DC08C2F0E94F41FE3CF80E28C0F88304F
+:102D600048F4C77081E001C0880FCA95EAF70E9455
+:102D70009C20D6CF8BE58C0F833078F4C53A29F0B0
+:102D8000C63A31F083E890E005C081E890E002C0E7
+:102D900082E890E0CF910C94421588E58C0F833146
+:102DA00008F064C0C83A39F1C93A41F1CA3A49F168
+:102DB000CB3A51F1CC3A59F1CD3A61F1C03B69F1CE
+:102DC000CE3A71F1CF3A79F1C13B81F1C23B89F141
+:102DD000C33B91F1C43B99F1C53BA1F1C63BA9F1BD
+:102DE000C73BB1F1C83BB9F1C93BC1F1CA3BC9F11D
+:102DF00080E090E038C082EE90E035C089EE90E04F
+:102E000032C08AEE90E02FC085EB90E02CC086EBBC
+:102E100090E029C087EB90E026C08CEC90E023C0C6
+:102E20008DEC90E020C083E891E01DC08AE891E03D
+:102E30001AC082E991E017C084E991E014C081E2F0
+:102E400092E011C083E292E00EC084E292E00BC0F7
+:102E500085E292E008C086E292E005C087E292E057
+:102E600002C08AE292E0CF910C945815CF91089558
+:102E7000882309F44BC0823859F40E94E21481FF80
+:102E800045C089E30E94F41F0E94D32089E30CC04F
+:102E9000833871F40E94E21480FF38C083E50E94F9
+:102EA000F41F0E94D32083E50E9447200C94D32076
+:102EB000843859F40E94E21482FF28C087E40E94FB
+:102EC000F41F0E94D32087E4EFCF9CEF980F913A34
+:102ED00058F390E2980F983050F4877091E001C059
+:102EE000990F8A95EAF7892F0E94A220DFCF9BE5F0
+:102EF000980F933020F480E090E00C944215885AAB
+:102F0000833120F480E090E00C94581508958823D4
+:102F100021F00E949C200C94D3200895882321F056
+:102F20000E94A2200C94D3200895BF92CF92DF92EA
+:102F3000EF92FF920F931F93CF93DF9300D000D0B7
+:102F400000D0CDB7DEB725E0FC01DE01119601907F
+:102F50000D922A95E1F7FC014081318102812581A2
+:102F600022952F7063817481672B09F4E5C23F3F7E
+:102F700019F44F3F09F4E0C27C0149833A83898107
+:102F80009A812E830E94B31F182FB92E0E94B21F60
+:102F90000E94791EEB2DE295EF70F0E0E05AFF4FB2
+:102FA0002E810C94882D8B2D807F9B2D9F70F92E68
+:102FB000882319F0F29480EFF822002349F0FF20D3
+:102FC00009F467C28F2D0E94AC200E94D32061C2F9
+:102FD000812F0E943817FF2009F4AEC28F2D0E9466
+:102FE000B22026960FB6F894DEBF0FBECDBFDF919C
+:102FF000CF911F910F91FF90EF90DF90CF90BF90F6
+:103000000C94D3203B2D307F8B2D8F70303211F0FC
+:103010008295807F112319F0113021F12CC00023FB
+:10302000B9F0222309F4A0C1213009F09DC12696F0
+:103030000FB6F894DEBF0FBECDBFDF91CF911F91C9
+:103040000F91FF90EF90DF90CF90BF900C94BC2039
+:10305000222319F0213009F46FC28E830E94BF2011
+:103060008E8196C1002321F0223008F065C27CC118
+:10307000211162C28DC1002321F0222309F474C101
+:1030800008C2222309F484C119C22B2D2695269546
+:10309000237030E02115310521F021303105D1F0C8
+:1030A0004BC2002321F0812F9B2D937002C080E042
+:1030B00090E026960FB6F894DEBF0FBECDBFDF912D
+:1030C000CF911F910F91FF90EF90DF90CF90BF9025
+:1030D0000C944215002321F0812F9B2D937002C088
+:1030E00080E090E026960FB6F894DEBF0FBECDBF0D
+:1030F000DF91CF911F910F91FF90EF90DF90CF90D4
+:10310000BF900C945815812F002319F00E947D2444
+:1031100002C00E94E52426960FB6F894DEBF0FBECB
+:10312000CDBFDF91CF911F910F91FF90EF90DF9076
+:10313000CF90BF900C946A258B2D837009F07BC0D3
+:103140000111FAC1812F829586958770880F880FAB
+:10315000912F9F70C92ED12CE12CF12C082E04C088
+:10316000CC0CDD1CEE1CFF1C0A94D2F714FF12C01D
+:103170004FE050E060E070E004C0440F551F661F50
+:10318000771F8A95D2F7CB01BA016095709580952B
+:10319000909503C060E070E0CB012B2D269526951D
+:1031A0002370422F50E042305105D9F04330510591
+:1031B00069F16C297D298E299F294130510551F1F2
+:1031C00026960FB6F894DEBF0FBECDBFDF91CF912C
+:1031D0001F910F91FF90EF90DF90CF90BF900C94D4
+:1031E000A01E6C297D298E299F2926960FB6F8945A
+:1031F000DEBF0FBECDBFDF91CF911F910F91FF902A
+:10320000EF90DF90CF90BF900C94BC1E0E94A01E48
+:10321000C701B60126960FB6F894DEBF0FBECDBF2C
+:10322000DF91CF911F910F91FF90EF90DF90CF90A2
+:10323000BF900C94841E002319F08B2D817001C067
+:103240008695882309F478C1812F829586958770A9
+:10325000880F880F912F9F70C92ED12CE12CF12C53
+:10326000082E04C0CC0CDD1CEE1CFF1C0A94D2F707
+:1032700014FF12C04FE050E060E070E004C0440F63
+:10328000551F661F771F8A95D2F7CB01BA0160954B
+:1032900070958095909503C060E070E0CB012B2D78
+:1032A000269526952370422F50E042305105D9F0E3
+:1032B0004330510569F16C297D298E299F294130C0
+:1032C000510551F126960FB6F894DEBF0FBECDBF63
+:1032D000DF91CF911F910F91FF90EF90DF90CF90F2
+:1032E000BF900C947A1F6C297D298E299F292696E0
+:1032F0000FB6F894DEBF0FBECDBFDF91CF911F9107
+:103300000F91FF90EF90DF90CF90BF900C94961F9D
+:103310000E947A1FC701B60126960FB6F894DEBF49
+:103320000FBECDBFDF91CF911F910F91FF90EF9016
+:10333000DF90CF90BF900C945E1F103FD1F118F436
+:10334000103E50F4A1C0123F09F463C008F44CC011
+:10335000133F09F473C098C01F708B2D8F71002329
+:10336000A1F00E94F71E812F26960FB6F894DEBFBB
+:103370000FBECDBFDF91CF911F910F91FF90EF90C6
+:10338000DF90CF90BF900C9487170E94181F812F59
+:1033900026960FB6F894DEBF0FBECDBFDF91CF915A
+:1033A0001F910F91FF90EF90DF90CF90BF900C9402
+:1033B0008E170023A9F02111BFC08B2D8F71269687
+:1033C0000FB6F894DEBF0FBECDBFDF91CF911F9136
+:1033D0000F91FF90EF90DF90CF90BF900C943D1F26
+:1033E000223008F0A9C0E9CF0023A9F08B2D8F71FE
+:1033F00026960FB6F894DEBF0FBECDBFDF91CF91FA
+:103400001F910F91FF90EF90DF90CF90BF900C94A1
+:10341000F71E002359F38B2D8F7126960FB6F89463
+:10342000DEBF0FBECDBFDF91CF911F910F91FF90F7
+:10343000EF90DF90CF90BF900C94181F002399F06D
+:103440008B2D8F7126960FB6F894DEBF0FBECDBFC1
+:10345000DF91CF911F910F91FF90EF90DF90CF9070
+:10346000BF900C94E21E26960FB6F894DEBF0FBEF6
+:10347000CDBFDF91CF911F910F91FF90EF90DF9023
+:10348000CF90BF900C94D81E0023A9F0222309F4FA
+:10349000ADCF812F26960FB6F894DEBF0FBECDBFFD
+:1034A000DF91CF911F910F91FF90EF90DF90CF9020
+:1034B000BF900C947016222309F4ADCF812F26966D
+:1034C0000FB6F894DEBF0FBECDBFDF91CF911F9135
+:1034D0000F91FF90EF90DF90CF90BF900C94381732
+:1034E0004B2D4F70612FC7010E94F70726960FB62C
+:1034F000F894DEBF0FBECDBFDF91CF911F910F912A
+:10350000FF90EF90DF90CF90BF900C94FC1D4B2D5F
+:103510004F70612FC70126960FB6F894DEBF0FBE1D
+:10352000CDBFDF91CF911F910F91FF90EF90DF9072
+:10353000CF90BF900C94BA0B26960FB6F894DEBFCE
+:103540000FBECDBFDF91CF911F910F91FF90EF90F4
+:10355000DF90CF90BF9008950E94B9200E948E20E6
+:103560000E94D3200E949D260E946A2580E090E060
+:103570000E94421580E090E00C9458150E94A9200A
+:103580000C94AC1A0E94B31F292F22952F7030E0A3
+:103590002C3031054CF42A3031056CF422503109BD
+:1035A0002230310588F407C02C30310549F02F3026
+:1035B000310531F009C0803E48F0803F29F406C053
+:1035C00093FB882780F9089580E0089581E00895AD
+:1035D000CF93DF9300D000D01F92CDB7DEB70F900E
+:1035E0000F900F900F900F90DF91CF910895CF9390
+:1035F000DF9300D000D000D0CDB7DEB726960FB64F
+:10360000F894DEBF0FBECDBFDF91CF9108951F9319
+:10361000CF93DF93C091840116E080918501C81794
+:1036200099F0D0E01C9FF0011D9FF00D1124EA5786
+:10363000FE4F4081518162817381848195810E9416
+:10364000F71A2196C770E9CFDF91CF911F910895A6
+:103650004091B6015091B7016091B8017091B901E4
+:103660008091BA019091BB010C94F71A8091BB0133
+:1036700082958F7009F054C08091B801882309F4B5
+:103680004FC080918401A09185016091B601709135
+:10369000B7014091B9015091BA01B6E08A1709F417
+:1036A0003FC090E041155105C1F17F3F11F46F3FDC
+:1036B000A1F1B89FF001B99FF00D1124EA57FE4F18
+:1036C000218172132AC02081621327C02281211117
+:1036D00024C0238134812417350710F42150310987
+:1036E000241B350B283C3105C0F42091BB012F7001
+:1036F00020612093BB0126E0289FF001299FF00D57
+:103700001124E557FE4F80818F708061808386EBA6
+:1037100091E00E9495170C94071B01968770BECF0D
+:103720000895CF92DF92EF92FF920F931F93CF9362
+:10373000DF93CDB7DEB762970FB6F894DEBF0FBE4A
+:10374000CDBF8C0185E0F801DE011D9601900D9240
+:103750008A95E1F7D8014C9111965C9111971296D8
+:103760006C9112971396CD90DC9014973091B6011E
+:103770007091B7018091B9019091BA01009709F455
+:103780006BC17F3F19F43F3F09F466C1E090B80177
+:10379000EE2009F4C0C02091BB01C816D90628F05C
+:1037A000F601E81BF90BCF0104C0809590958C0DB4
+:1037B0009D1DFF24F394883C910578F0F12C207F27
+:1037C00009F0C6C07C2DD98AC88A89890E94E81A66
+:1037D00086EB91E00E949517B1C0822F807F09F09F
+:1037E00046C0751314C0341312C0611110C02F707D
+:1037F00020612093BB010E94281B86EB91E00E9470
+:1038000095178091BB01D80115968C932EC0CD28B9
+:1038100019F15F3F11F44F3FF9F0F62E61111CC012
+:10382000809184012091850136E0821709F45AC005
+:1038300090E0389FF001399FF00D1124EA57FE4FB8
+:103840007181571306C07081471303C072817111D3
+:1038500003C001968770E9CFF62E662309F418C1DC
+:103860008091BB0181608093BB01F12C11C1751364
+:1038700008C0341306C0611104C08091BB01D80197
+:10388000C3C04D875E878D859E856A8B0E94C21A54
+:103890006A898823E1F16623D1F12091BB01822F4F
+:1038A00082958F7090E0029774F08091B6019091AC
+:1038B000B70198878F831986DB86CA862C87CE014D
+:1038C00007960E94951786E0F801A6EBB1E00190FB
+:1038D0000D928A95E1F70E94361B0E94281BFF2457
+:1038E000F394D6C04D875E878D859E850E94B31F59
+:1038F000292F22952F7030E0223031050CF0BCC00A
+:103900009F7009F0B6C0805E883008F4C1C0C8015D
+:103910000E949517E4CFC816D90608F453C0F601E3
+:10392000E81BF90BCF01883C910508F450C0F12C3D
+:103930007C2DD98AC88A89890E94E81AE6EBF1E0D1
+:1039400086E0DF011D928A95E9F70E94281BA0C03E
+:10395000751314C0341312C0611110C08091BB01E3
+:10396000F8018583C8010E94951786E0E6EBF1E037
+:10397000DF011D928A95E9F7FE2C8AC04D875E878C
+:103980008D859E856A8B0E94C21A6A89882309F4F4
+:10399000BECF662309F4BBCF2091BB01822F829555
+:1039A0008F7090E002970CF48ECF8091B6019091C9
+:1039B000B7019A8389831B82DD82CC822E83CE015C
+:1039C00001967FCF809590958C0D9D1DACCFF62EE6
+:1039D000662309F49CCF75132EC034132CC020919C
+:1039E000BB0120FD1FC0822F82958F70D9F0D801B6
+:1039F00015962C9315978F3049F08F5F982F9295DD
+:103A0000907F822F8F70892B15968C93C8010E940E
+:103A1000951786E0F801A6EBB1E001900D928A952A
+:103A2000E1F793CF86E0F801A6EBB1E001900D92AB
+:103A30008A95E1F72DC04D875E878D859E850E9412
+:103A4000C21A811140CF8091BB0181608093BB017C
+:103A5000C8010E9495171CC0662309F458CF4D87F2
+:103A60005E878D859E850E94C21A882309F44FCFF8
+:103A70002ACF811148CF0CC0243031050CF047CF3C
+:103A80009F7009F440CFF8019581907F09F03BCFFA
+:103A90008F2D62960FB6F894DEBF0FBECDBFDF91BB
+:103AA000CF911F910F91FF90EF90DF90CF900895ED
+:103AB0001F93CF93DF93CDB7DEB72C970FB6F89453
+:103AC000DEBF0FBECDBF4F83588769877A878B874C
+:103AD0009C87CE0107960E94911B882369F08F81F5
+:103AE00098852A853B85232BF1F19F3F09F063C020
+:103AF0008F3F09F060C037C086E0FE013796DE01D7
+:103B0000119601900D928A95E1F76F817885EA858B
+:103B1000FB85309741F17F3F11F46F3F21F12091F8
+:103B2000850130E0C9010196877099274091840191
+:103B300050E08417950709F447C069837A83FD83B1
+:103B4000EC8396E0929FD001939FB00D1124AA5769
+:103B5000BE4FFE01319601900D929A95E1F7809348
+:103B600085010E94071B16E08091840190918501D8
+:103B70008917C1F1189FC00111248A579E4F0E94D6
+:103B8000911B882379F1E09184011E9FF00111249B
+:103B9000EA57FE4F40815181628173818481958112
+:103BA0000E94F71A8091840190E00196877099270E
+:103BB00080938401D9CF4F81588569857A858B851B
+:103BC0009C850E94F71ACFCF0E94BE1A10928501E1
+:103BD00010928401E6EBF1E086E0DF011D928A9508
+:103BE000E9F7C1CF2C960FB6F894DEBF0FBECDBF5C
+:103BF000DF91CF911F910895EF92FF920F931F9342
+:103C0000CF93DF938C01892B09F46CC0F12CEE2447
+:103C1000E394E8012196F8018491843740F48430DC
+:103C200008F051C0813081F0823019F15BC08537D6
+:103C300009F444C0A8F19CE7980F903708F052C0EF
+:103C40008F770E94381741C00E5F1F4FFE01C4914D
+:103C500080E28C0F883048F4C7708E2D01C0880F29
+:103C6000CA95EAF70E94AC2014C08C2F0E947016EF
+:103C70002DC00E5F1F4FFE01C49180E28C0F883073
+:103C800058F4C7708E2D01C0880FCA95EAF70E94BC
+:103C9000B2200E94D3201AC08C2F0E94381716C061
+:103CA0000E5F1F4FFE01C491CC2381F08FE99FE08E
+:103CB0000197F1F700C00000C150F6CF0E5F1F4F13
+:103CC000FE01F49003C00E9470168E018F2D882390
+:103CD00009F49FCFEFE9FFE03197F1F700C0000052
+:103CE0008150F5CFDF91CF911F910F91FF90EF9011
+:103CF000089508956093C0017093C1018093C2013B
+:103D00009093C3010C94AC1A0F931F930091C001C0
+:103D10001091C1012091C2013091C301DC01CB019E
+:103D2000802B912BA22BB32B8093C0019093C101C8
+:103D3000A093C201B093C3011F910F910C94AC1AD0
+:103D40000F931F930091C0011091C1012091C201F6
+:103D50003091C301DC01CB0180239123A223B32343
+:103D60008093C0019093C101A093C201B093C3019D
+:103D70001F910F910C94AC1A0F931F930091C001E7
+:103D80001091C1012091C2013091C301DC01CB012E
+:103D900080279127A227B3278093C0019093C10168
+:103DA000A093C201B093C3011F910F910C94AC1A60
+:103DB0001092BC011092BD011092BE011092BF0181
+:103DC0000C94AC1A41E050E060E070E004C0440F95
+:103DD000551F661F771F8A95D2F74093BC015093F9
+:103DE000BD016093BE017093BF010C94AC1A41E019
+:103DF00050E060E070E004C0440F551F661F771F5D
+:103E00008A95D2F78091BC019091BD01A091BE012D
+:103E1000B091BF01482B592B6A2B7B2B4093BC01DF
+:103E20005093BD016093BE017093BF010C94AC1A16
+:103E300041E050E060E070E004C0440F551F661F91
+:103E4000771F8A95D2F7409550956095709580912F
+:103E5000BC019091BD01A091BE01B091BF0148236A
+:103E600059236A237B234093BC015093BD01609387
+:103E7000BE017093BF010C94AC1A41E050E060E0C9
+:103E800070E004C0440F551F661F771F8A95D2F754
+:103E90008091BC019091BD01A091BE01B091BF0184
+:103EA000482759276A277B274093BC015093BD01BF
+:103EB0006093BE017093BF010C94AC1A0F931F93D3
+:103EC0000091BC011091BD012091BE013091BF0154
+:103ED000DC01CB01802B912BA22BB32B8093BC0157
+:103EE0009093BD01A093BE01B093BF011F910F91AC
+:103EF0000C94AC1A0F931F930091BC011091BD015B
+:103F00002091BE013091BF01DC01CB0180239123C0
+:103F1000A223B3238093BC019093BD01A093BE0163
+:103F2000B093BF011F910F910C94AC1A0F931F9384
+:103F30000091BC011091BD012091BE013091BF01E3
+:103F4000DC01CB0180279127A227B3278093BC01F6
+:103F50009093BD01A093BE01B093BF011F910F913B
+:103F60000C94AC1A0895CF92DF92EF92FF920F93C8
+:103F70001F93CF93DF938C01C090C001D090C101FB
+:103F8000E090C201F090C3014091BC015091BD018D
+:103F90006091BE017091BF01C42AD52AE62AF72A92
+:103FA000CFE1D0E0D701C6010C2E04C0B695A7958D
+:103FB000979587950A94D2F780FF07C0B8018C2F98
+:103FC0000E94DD0B8130910531F4219758F7B8013B
+:103FD00080E00E94DD0BDF91CF911F910F91FF9048
+:103FE000EF90DF90CF90089590910C01992321F0EC
+:103FF00090910D01911109C020910E0130910F0196
+:10400000F90132969FEF40E030C0982F9695969533
+:1040100096959F30A0F4E0910E01F0910F01E90F09
+:10402000F11D877021E030E0A90102C0440F551F47
+:104030008A95E2F7CA019181892B81830895909135
+:10404000D70190FF23C01F928F9387ED95E09F9338
+:104050008F930E94EE070F900F900F900F9008958E
+:104060009F3F39F04F5F4E3041F051915813F8CFD8
+:104070000DC05111F7CF942FF5CF9F3F39F0F901C3
+:10408000E90FF11D97FDFA958283089508959091A7
+:104090000C01992321F090910D01911109C02091FB
+:1040A0000E0130910F01F9013296205F3F4F30C071
+:1040B000982F9695969596959F30A8F4E0910E01CD
+:1040C000F0910F01E90FF11D877021E030E0A901A7
+:1040D00002C0440F551F8A95E2F7CA01809591816D
+:1040E0008923818308959091D70190FF16C01F9274
+:1040F0008F9389EB95E09F938F930E94EE070F902B
+:104100000F900F900F9008953196E217F30729F062
+:1041100090819813F9CF1082F7CF089581E090E055
+:10412000E0910E01F0910F01E80FF91F1082019646
+:1041300080319105A9F708959091D601892B80933C
+:10414000D601089580959091D60189238093D60158
+:1041500008951092D60108959091D501892B8093EE
+:10416000D501089580959091D50189238093D5013B
+:1041700008951092D50108958093C4010895109276
+:10418000C401089580910E0190910F01FC013196B8
+:104190009C01205F3F4F80E0919191118F5FE2176A
+:1041A000F307D1F70895E0910E01F0910F0180918E
+:1041B000D6018083E0910E01F0910F0190818091F2
+:1041C000D501892B80838091C401882361F0E0911F
+:1041D0000E01F0910F019081892B80830E94C220F3
+:1041E00081111092C40180910E0190910F010C94E5
+:1041F000EE1490933B0180933A010895CF92DF92A1
+:10420000EF92FF926C01EE24FF24C114D104E1046B
+:10421000F10421F0C701B60120E101C020E0C72E62
+:10422000D82EE92EFF24C114D104E104F10419F0C1
+:10423000285FC701B6016B017C0154E0F694E79456
+:10424000D794C7945A95D1F7C114D104E104F1046D
+:1042500019F02C5FC701B6016B017C0142E0F694B6
+:10426000E794D794C7944A95D1F7C114D104E104D7
+:10427000F10419F02E5FC701B601DC01CB01B69540
+:10428000A79597958795892B8A2B8B2B09F02F5F04
+:10429000822FFF90EF90DF90CF9008958295982F16
+:1042A0009C7C392F36953695282F237344E0249F24
+:1042B000C0011124932F982B292F2A7A2695892F14
+:1042C0008575880F822B08951F93CF93DF931F92DC
+:1042D000CDB7DEB799830E944E21182F9981892F7F
+:1042E0000E944E21212F30E0322F2227A901482B96
+:1042F000CA010F90DF91CF911F9108958091F00135
+:10430000843009F11092D80120E488E190E00FB6E2
+:10431000F894A895809360000FBE2093600083B747
+:10432000817F846083BF83B7816083BF78948895E1
+:1043300083B78E7F83BF88E10FB6F89480936000C7
+:10434000109260000FBE089508950895CF930E94C3
+:10435000A4210E9482090E94A521C0E08C2F0E9406
+:10436000AE0A811104C0CF5FCE30C1F701C081E039
+:10437000CF9108950E94BE1A0E94E2140C94140D6D
+:1043800082E084BD93E095BD9AEF97BD80936E0067
+:1043900008952FB7F8948091D9019091DA01A091F6
+:1043A000DB01B091DC012FBF0895CF92DF92EF9235
+:1043B000FF920F931F932FB7F8944091D90150911A
+:1043C000DA016091DB017091DC012FBF6A017B0192
+:1043D000EE24FF248C0120E030E0C016D106E20676
+:1043E000F30610F4415051099A01281B390BC901F9
+:1043F0001F910F91FF90EF90DF90CF9008951F9243
+:104400000F920FB60F9211248F939F93AF93BF9388
+:104410008091D9019091DA01A091DB01B091DC018A
+:104420000196A11DB11D8093D9019093DA01A0934B
+:10443000DB01B093DC01BF91AF919F918F910F9001
+:104440000FBE0F901F9018950E94E011F8942FEF67
+:1044500087EA91E6215080409040E1F700C00000DB
+:1044600087E090EBDC018093F9019093FA01A0932F
+:10447000FB01B093FC019CE088E10FB6F894A8958D
+:10448000809360000FBE90936000FFCFEF92FF9289
+:104490000F931F93CF93DF93D82FC0E08C2F0E94F0
+:1044A000AE0A00E010E0E82EF12CC701002E02C099
+:1044B000959587950A94E2F780FD06C00F5F1F4F20
+:1044C0000630110591F709C0602F7C2F80E00E9413
+:1044D000BB0BD813F3CF81E004C0CF5FCE30F1F631
+:1044E00080E0DF91CF911F910F91FF90EF900895A1
+:1044F000CF93C82F8CE20E944622882321F08C2F74
+:10450000CF910C94462280E0CF910895CF930E94E2
+:10451000D523811102C00E94BB238CEF95E00E943D
+:104520005507C5E6C15049F00E9482098FE39CE916
+:104530000197F1F700C00000F5CF85EF95E00E94EC
+:10454000550789E20E947822811113C18AE20E94F4
+:10455000782281110E94BB2385E00E94782281117C
+:104560000E9424220E94E0238093D70187E00E94CA
+:1045700078228823A9F18BE10E947822882351F0C8
+:104580008091D70181FB222720F991E0922790FBAF
+:1045900081F90EC08EE00E947822882361F080911C
+:1045A000D70182FB222720F991E0922790FB82F924
+:1045B0008093D70115C080E10E9478229091D701A5
+:1045C000882341F093FB222720F981E0822780FB9A
+:1045D00093F904C0892F809580FB90F99093D701BF
+:1045E0008091D7010E94E4230E94F2238093EA0184
+:1045F00080EE0E947822882341F08091EA01982F72
+:10460000909590FB80F98093EA0189E30E947822DB
+:10461000882359F08091EA0181FB222720F991E05B
+:10462000922790FB81F98093EA0182EE0E94782222
+:10463000882359F08091EA0182FB222720F991E03A
+:10464000922790FB82F98093EA0186EE0E947822FD
+:10465000882359F08091EA0183FB222720F991E019
+:10466000922790FB83F98093EA0183EE0E947822DF
+:10467000882359F08091EA0184FB222720F991E0F8
+:10468000922790FB84F98093EA0185E30E947822C7
+:10469000882359F08091EA0185FB222720F991E0D7
+:1046A000922790FB85F98093EA0181E30E947822AA
+:1046B000882359F08091EA0186FB222720F991E0B6
+:1046C000922790FB86F98093EA0181E10E9478228B
+:1046D000882359F08091EA0187FB222720F991E095
+:1046E000922790FB87F98093EA018091EA010E946A
+:1046F000F6238091EA0187FB882780F980930D01DA
+:1047000087E20E947822C82F8EE10E9478228111D0
+:10471000C2608FE10E9478228111C46080E20E9411
+:1047200078228111C86081E20E9478228111C061E3
+:1047300082E20E9478228111C06283E20E94782284
+:104740008111C06484E20E947822882311F0C0683D
+:1047500002C0CC2329F08C2F0E94ED236C2F03C0C4
+:104760000E94E923682F70E080E090E0CF910C94E4
+:104770007A1ECF9108956DEE7EEF80E090E00E946A
+:10478000BE2D60E082E090E00E94B02D60E083E00A
+:1047900090E00E94B02D60E084E090E00E94B02D97
+:1047A00060E085E090E00C94B02D80E090E00E9405
+:1047B000AA2D21E08D3E9E4F09F020E0822F089522
+:1047C00082E090E00C94A22D682F82E090E00C949F
+:1047D000B02D83E090E00C94A22D682F83E090E050
+:1047E0000C94B02D84E090E00C94A22D682F84E00E
+:1047F00090E00C94B02D8091DF0180FF0BC06091A0
+:10480000130185E0689FB001112475956795759532
+:1048100067952BC081FF09C06091130185E0689FF7
+:10482000B00111247595679520C082FF07C0609183
+:10483000130185E0689FB001112417C09091E00139
+:104840009923D1F060911201961788F720911301F6
+:1048500085E0289F90011124929FA001939F500D05
+:10486000112470E0CA010E94742D6038710540F473
+:104870006115710539F002C065E070E0862F08957A
+:104880008FE7089581E008958091DF0180FF08C0DF
+:104890006091110170E0759567957595679521C0D8
+:1048A00081FF06C06091110170E07595679519C090
+:1048B00082FF04C06091110170E010C09091E0018E
+:1048C0009923C1F0609110019617A0F78091110112
+:1048D000899FC001112470E00E94742D6038710519
+:1048E00028F46115710521F0862F08958FE708954A
+:1048F00081E0089561E070E0F4CF803F21F40E94F0
+:10490000FB23819504C0813F29F40E94FB238093FF
+:10491000E3010895823F21F40E94FB23819504C0A6
+:10492000833F29F40E94FB238093E2010895893F8D
+:1049300019F40E94442405C08A3F31F40E944424A3
+:1049400081958093E40108958B3F21F40E944424D3
+:10495000819504C08C3F29F40E9444248093E50192
+:104960000895843F21F48091E101816017C0853F63
+:1049700021F48091E101826011C0863F21F4809191
+:10498000E10184600BC0873F21F48091E1018860E0
+:1049900005C0883F31F48091E10180618093E1019D
+:1049A00008958D3F21F48091DF0181600BC08E3F1F
+:1049B00021F48091DF01826005C08F3F29F480914E
+:1049C000DF0184608093DF010895803F39F4809196
+:1049D000E30187FF6CC01092E30169C0813F29F4B5
+:1049E0008091E3011816BCF362C09091E201823F0E
+:1049F00029F497FF5CC01092E20159C0833F19F47B
+:104A00001916CCF354C0893F41F48091E401181683
+:104A10000CF04DC01092E4014AC08A3F29F4809105
+:104A2000E40187FF44C0F6CF8B3F39F48091E50164
+:104A300087FF3DC01092E5013AC08C3F29F4809178
+:104A4000E5011816BCF333C0843F21F48091E101E5
+:104A50008E7F17C0853F21F48091E1018D7F11C0C9
+:104A6000863F21F48091E1018B7F0BC0873F21F4C9
+:104A70008091E101877F05C0883F31F48091E10199
+:104A80008F7E8093E10113C08D3F21F48091DF017F
+:104A90008E7F0BC08E3F21F48091DF018D7F05C09A
+:104AA0008F3F29F48091DF018B7F8093DF0180911C
+:104AB000E20181110EC08091E30181110AC0809151
+:104AC000E401811106C08091E501811102C01092BC
+:104AD000E00108958091D70183FF7EC088E396E0CE
+:104AE0000E9455078091E1011F928F9383E396E026
+:104AF0009F938F930E94EE0781E396E00E945507F3
+:104B00008091E201282F332727FD30953F938F9323
+:104B10008EE296E09F938F930E94EE078CE296E0E0
+:104B20000E9455078091E301282F332727FD3095F8
+:104B30003F938F9389E296E09F938F930E94EE07B5
+:104B400087E296E00E9455078091E401282F3327E1
+:104B500027FD30953F938F9384E296E09F938F9348
+:104B60000E94EE0782E296E00E9455078091E501DF
+:104B7000282F332727FD30953F938F938FE196E0C1
+:104B80009F938F930E94EE078CE196E00E94550759
+:104B90008091E0011F928F9389E196E09F938F931C
+:104BA0000E94EE0787E196E00E9455078091DF01A1
+:104BB0001F928F9384E196E09F938F930E94EE075C
+:104BC00081E196E00E9455078DB79EB74C960FB6CF
+:104BD000F8949EBF0FBE8DBF81EE91E00E94371505
+:104BE0000E94C9219093DE018093DD0108951F93F7
+:104BF000CF93DF938091DD019091DE010E94D5215A
+:104C0000AC019091E001992321F02091140130E052
+:104C100006C0209115018AE0289F900111244217B7
+:104C2000530708F486C08091E201C091E301D0915E
+:104C3000E4011091E501811107C0C11176C0D111C5
+:104C400074C0111172C075C09F3F19F09F5F90939F
+:104C5000E001181624F40E94FB238093E201809166
+:104C6000E20187FF05C00E94FB2381958093E2014A
+:104C70001C1624F40E94FB238093E3018091E3013E
+:104C800087FF05C00E94FB2381958093E30160911B
+:104C9000E201662339F1C091E301CC2319F17727B2
+:104CA00067FD7095872F972F0E94792C23E333E3BC
+:104CB00043E35FE30E94DD2C0E94462C6093E201F7
+:104CC0006C2F772767FD7095872F972F0E94792C7F
+:104CD00023E333E343E35FE30E94DD2C0E94462C91
+:104CE0006093E3011D1624F40E9444248093E401A0
+:104CF0008091E40187FF05C00E9444248195809340
+:104D0000E401111624F40E9444248093E50180916B
+:104D1000E50187FF05C00E94442481958093E50149
+:104D2000DF91CF911F910C946A259F3F09F08ECFA0
+:104D300096CFDF91CF911F910895E1EEF1E085E0EC
+:104D4000DF011D928A95E9F71092E0011092DF01D0
+:104D500008958BE598E00E9455071F9281E08F939C
+:104D60001F9285E08F938DE098E09F938F930E9430
+:104D7000EE070F900F900F900F900F900F900895E7
+:104D80008330E9F128F4813061F0823009F108952F
+:104D9000853009F462C008F449C0863009F474C053
+:104DA000089580911501262F30E0280F311D2F3FE7
+:104DB000310524F4680F6093150103C08FEF8093D1
+:104DC0001501809115011F928F9386E497E072C0C0
+:104DD00080911401262F30E0280F311D2F3F31051F
+:104DE00024F4680F6093140103C08FEF80931401C3
+:104DF000809114011F928F9384E397E05BC08091B0
+:104E00001301262F30E0280F311D2F3F310524F4E8
+:104E1000680F6093130103C08FEF8093130180919B
+:104E200013011F928F9381E297E044C08091120199
+:104E3000262F30E0280F311D2F3F310524F4680F55
+:104E40006093120103C08FEF8093120180911201D1
+:104E50001F928F938CE097E02DC080911101262F37
+:104E600030E0280F311D2F3F310524F4680F609387
+:104E7000110103C08FEF80931101809111011F92E6
+:104E80008F9383EF96E016C080911001262F30E0BB
+:104E9000280F311D2F3F310524F4680F6093100156
+:104EA00003C08FEF80931001809110011F928F93A8
+:104EB00088ED96E09F938F930E94EE070F900F90DE
+:104EC0000F900F900895833081F128F4813059F0CC
+:104ED0008230D1F00895853009F449C0B8F18630A8
+:104EE00009F456C0089580911501681720F4861BB7
+:104EF0008093150102C010921501809115011F9237
+:104F00008F9389EC96E054C080911401681720F4C7
+:104F1000861B8093140102C0109214018091140129
+:104F20001F928F9387EB96E043C08091130168171F
+:104F300020F4861B8093130102C01092130180910C
+:104F400013011F928F9384EA96E032C08091120180
+:104F5000681720F4861B8093120102C01092120180
+:104F6000809112011F928F938FE896E021C080916B
+:104F70001101681720F4861B8093110102C0109262
+:104F80001101809111011F928F9386E796E010C066
+:104F900080911001681720F4861B8093100102C0D5
+:104FA00010921001809110011F928F938BE596E073
+:104FB0009F938F930E94EE070F900F900F900F908A
+:104FC0000895CF93C82F1F928F9380E699E09F9307
+:104FD0008F930E94EE0781E090E0A0E0B0E0BC017A
+:104FE000CD0104C0660F771F881F991FCA95D2F79D
+:104FF0000E947A1E0F900F900F900F90CF910C94FB
+:10500000BE1ACF938D3109F465C0B0F58E3009F426
+:10501000CCC100F5873009F49BC1A8F4863009F0B3
+:105020006DC28091D701817F8E7F8093D70185E605
+:1050300099E00E94550787EA9DE00E94550781E0AC
+:105040008093E70180C1883009F44FC08B3009F4A8
+:105050007CC154C2863109F4F0C138F4803109F4BE
+:10506000B8C1813109F430C249C2893109F4CEC1D5
+:105070008B3109F486C142C2853309F437C248F442
+:10508000873209F433C208F433C2893209F42EC2DC
+:1050900035C2833438F48A3308F02CC2883309F4DB
+:1050A00054C12CC2833409F421C2883409F026C2C9
+:1050B0000E94BE1A86E99DE00E9455079FEF23EDEE
+:1050C00080E3915020408040E1F700C000000E9442
+:1050D000242239C186EB9DE00E9455070E94002CD6
+:1050E0000E94E2140E94140D2EC18BEA9DE00E94E2
+:1050F000550786E79BE00E9455070E94E9231F920F
+:105100008F9383E79BE09F938F930E94EE0781E745
+:105110009BE00E9455070E94E023C82F8EE59BE08C
+:105120000E9455071F92CF9389E59BE09F938F9331
+:105130000E94EE0787E59BE00E9455078DE49BE007
+:105140000E9455078C2F81701F928F938AE49BE0F9
+:105150009F938F930E94EE0788E49BE00E9455077F
+:105160008EE39BE00E945507C1FB882780F91F92C0
+:105170008F938BE39BE09F938F930E94EE0789E3CD
+:105180009BE00E9455078DE29BE00E945507C2FB01
+:10519000882780F91F928F938AE29BE09F938F93D9
+:1051A0000E94EE0788E29BE00E9455078FE19BE09A
+:1051B0000E945507C3FBCC27C0F91F92CF938CE107
+:1051C0009BE09F938F930E94EE078AE19BE00E94F1
+:1051D00055070E94F223C82F86E09BE00E945507E6
+:1051E0001F92CF9381E09BE09F938F930E94EE07E5
+:1051F0008FEF9AE00E94550786EE9AE00E945507CD
+:105200008C2F81701F928F9383EE9AE09F938F93E0
+:105210000E94EE078DB79EB780960FB6F8949EBF9A
+:105220000FBE8DBF81EE9AE00E9455078AEC9AE08E
+:105230000E945507C1FB882780F91F928F9387EC46
+:105240009AE09F938F930E94EE0785EC9AE00E946C
+:10525000550783EB9AE00E945507C2FB882780F927
+:105260001F928F9380EB9AE09F938F930E94EE079B
+:105270008EEA9AE00E9455078CE99AE00E94550751
+:10528000C3FB882780F91F928F9389E99AE09F9347
+:105290008F930E94EE0787E99AE00E9455078DE8F8
+:1052A0009AE00E945507C4FB882780F91F928F93CC
+:1052B0008AE89AE09F938F930E94EE0788E89AE02D
+:1052C0000E94550786E79AE00E945507C5FB88278C
+:1052D00080F91F928F9383E79AE09F938F930E94A8
+:1052E000EE0781E79AE00E94550785E59AE00E9463
+:1052F0005507C6FB882780F91F928F9382E59AE0B5
+:105300009F938F930E94EE0780E59AE00E945507D5
+:1053100088E49AE00E945507C7FBCC27C0F91F928A
+:10532000CF9385E49AE09F938F930E94EE0783E4E6
+:105330009AE00E9455078DB79EB74C960FB6F89429
+:105340009EBF0FBE8DBFC1E0DEC08CE899E05BC0A0
+:105350008091D701C82FC17080FF09C089E89DE006
+:105360000E9455078091D701817F8E7F47C08DE7CE
+:105370009DE00E9455078091D70181608093D701FD
+:10538000E2CF9091D70191FBCC27C0F981E0C827EB
+:10539000892FC0FB81F98093D701CC2319F080E7D6
+:1053A0009DE027C082E69DE02EC09091D70192FB40
+:1053B000CC27C0F981E0C827892FC0FB82F98093F0
+:1053C000D701CC2319F083E59DE013C083E49DE071
+:1053D0001AC09091D70193FBCC27C0F981E0C82770
+:1053E000892FC0FB83F98093D701CC2351F087E349
+:1053F0009DE00E9455078091D70181608093D7017D
+:1054000082C08AE29DE00E9455079DCF8BE19DE01E
+:105410000E9455078FEE9CE00E94550782EB9CE0AE
+:105420000E94550785E89CE00E94550781E49CE0B6
+:105430000E94550786E19CE0E6CF88E09CE00E9450
+:1054400055070E94E2141F928F938EEE9BE09F936C
+:105450008F930E94EE0780910C011F928F9387ED2E
+:105460009BE09F938F930E94EE0780916E011F92A5
+:105470008F9384EC9BE09F938F930E94EE07809123
+:105480000D011F928F9381EB9BE09F938F930E945E
+:10549000EE078091D9019091DA01A091DB01B091E2
+:1054A000DC01BF93AF939F938F938DE99BE09F9314
+:1054B0008F930E94EE078DB79EB746960FB6F8946D
+:1054C0009EBF0FBE8DBF3FCF0E94BE1AC0910D017F
+:1054D00081E0C827C0930D01CC2329F083E99BE02C
+:1054E0000E94550710C088E89BE08DCF80E003C084
+:1054F0008D5101C089530E94E12725CF86E89BE0AA
+:105500000E945507C0E08C2FCF91089580E0089548
+:1055100080E00895CF93C82F8091E701813081F01A
+:1055200020F0823009F44FC045C1E0910E01F091A6
+:105530000F018081813169F0823209F03DC109C0DB
+:10554000E0910E01F0910F018081813111F08232E2
+:1055500061F48C2F0E94862A811104C08C2F0E9436
+:1055600001282FC081E090E02CC08C2F0E94882A57
+:10557000811126C0C431E1F070F4CB3081F0C0312C
+:10558000D1F40E94A92688E599E00E94550782E09F
+:105590008093E70115C0C93259F0C83361F485E63C
+:1055A00099E00E9455078CE599E00E94550708C0D4
+:1055B0001092E70103C186E599E00E945507FEC0FD
+:1055C00081E08170FDC0C43220F5CE3108F0C0C04A
+:1055D000CB3099F1C8F4C73009F0D2C08AE080938B
+:1055E000150194E19093140193E09093130180933B
+:1055F000120188E08093110188E2809310018CEF02
+:1056000097E00E945507BFC0C33149F1C431C1F0D2
+:10561000B7C0CB3409F4A9C028F4C93289F0C83323
+:1056200061F0AEC0C13509F49EC0C23509F499C01D
+:10563000CE3409F0A5C06AE09EC00E94A926A3C08E
+:105640008091E601882319F01092E6019CC089E060
+:1056500098E00E94550781E08093E701B1C083EE96
+:1056600097E00E94550781ED97E00E9455078091D1
+:1056700015011F928F938EEC97E09F938F930E945A
+:10568000EE078CEC97E00E9455078AEB97E00E94AA
+:105690005507809114011F928F9387EB97E09F939A
+:1056A0008F930E94EE0785EB97E00E94550786EAEC
+:1056B00097E00E945507809113011F928F9383EA10
+:1056C00097E09F938F930E94EE0781EA97E00E94F4
+:1056D000550780E997E00E945507809112011F92BB
+:1056E0008F938DE897E09F938F930E94EE078BE84E
+:1056F00097E00E94550786E797E00E945507809142
+:1057000011011F928F9383E797E09F938F930E94DD
+:10571000EE0781E797E00E9455078AE597E00E942F
+:105720005507809110011F928F9387E597E09F9313
+:105730008F930E94EE0785E597E00E9455078DB78D
+:105740009EB748960FB6F8949EBF0FBE8DBF1BC084
+:10575000CE51EC2FF0E0E15DFE4F80818093E601B9
+:1057600012C061E003C061E006C06AE08091E6011A
+:105770000E94C02608C08091E6010E94632703C0F2
+:105780008AEF97E013C08091E601882369F01F92A9
+:105790008F9384EF97E09F938F930E94EE070F9073
+:1057A0000F900F900F9004C081EF97E00E94550773
+:1057B00081E006C01092E70180E002C080E001CFE6
+:1057C000CF910895E1E8F0E0808188608083808156
+:1057D000816080838FB7F89493E09093890090ED77
+:1057E000909388008FBF0895EFE6F0E0808182609B
+:1057F00080830895EFE6F0E080818D7F80830895B7
+:10580000EFE6F0E0908182E08927808308951F927F
+:105810000F920FB60F9211242F933F934F935F93E4
+:105820006F937F938F939F93AF93BF93EF93FF9368
+:105830008091E8019091E90101969093E9018093AC
+:10584000E801811103C082E00E94140DE091E9019A
+:10585000E695E695F0E0EA53F24FE4918091E80195
+:105860008E1303C080E00E94140DFF91EF91BF9151
+:10587000AF919F918F917F916F915F914F913F91E8
+:105880002F910F900FBE0F901F90189504D0689421
+:10589000B1118DC0089570D088F09F5790F0B92F46
+:1058A0009927B751A0F0D1F0660F771F881F991F75
+:1058B0001AF0BA95C9F712C0B13081F077D0B1E0D3
+:1058C000089574C0672F782F8827B85F39F0B93FE3
+:1058D000CCF3869577956795B395D9F73EF4909577
+:1058E0008095709561957F4F8F4F9F4F0895E894F5
+:1058F00009C097FB3EF490958095709561957F4F18
+:105900008F4F9F4F9923A9F0F92F96E9BB279395C5
+:10591000F695879577956795B795F111F8CFFAF4D5
+:10592000BB0F11F460FF1BC06F5F7F4F8F4F9F4F06
+:1059300016C0882311F096E911C0772321F09EE864
+:10594000872F762F05C0662371F096E8862F70E0CA
+:1059500060E02AF09A95660F771F881FDAF7880FA4
+:105960009695879597F9089557FD9058440F551FC0
+:1059700059F05F3F71F04795880F97FB991F61F0D1
+:105980009F3F79F087950895121613061406551F48
+:10599000F2CF4695F1DF08C0161617061806991FB4
+:1059A000F1CF86957105610508940895E894BB27A9
+:1059B00066277727CB0197F908950BD078C069D077
+:1059C00028F06ED018F0952309F05AC05FC011245A
+:1059D000EECFCADFA0F3959FD1F3950F50E0551F8E
+:1059E000629FF001729FBB27F00DB11D639FAA2734
+:1059F000F00DB11DAA1F649F6627B00DA11D661F83
+:105A0000829F2227B00DA11D621F739FB00DA11DA3
+:105A1000621F839FA00D611D221F749F3327A00D5D
+:105A2000611D231F849F600D211D822F762F6A2FF9
+:105A300011249F5750408AF0E1F088234AF0EE0F7E
+:105A4000FF1FBB1F661F771F881F91505040A9F78B
+:105A50009E3F510570F014C0AACF5F3FECF3983E13
+:105A6000DCF3869577956795B795F795E7959F5FF2
+:105A7000C1F7FE2B880F911D9695879597F908958C
+:105A800097F99F6780E870E060E008959FEF80ECF1
+:105A9000089500240A941616170618060906089594
+:105AA00000240A9412161306140605060895092EFA
+:105AB0000394000C11F4882352F0BB0F40F4BF2B69
+:105AC00011F460FF04C06F5F7F4F8F4F9F4F0895A9
+:105AD000991B79E004C0991F961708F0961B881F40
+:105AE0007A95C9F78095089597FB072E16F40094D0
+:105AF00007D077FD09D00E948E2D07FC05D03EF41B
+:105B0000909581959F4F0895709561957F4F089569
+:105B1000EE0FFF1F0590F491E02D0994AA1BBB1B0B
+:105B200051E107C0AA1FBB1FA617B70710F0A61B9D
+:105B3000B70B881F991F5A95A9F780959095BC01BE
+:105B4000CD010895F999FECF92BD81BDF89A9927AC
+:105B500080B50895A8E1B0E042E050E00C94C52D76
+:105B6000262FF999FECF1FBA92BD81BD20BD0FB679
+:105B7000F894FA9AF99A0FBE019608950E94B02DF2
+:105B8000272F0C94B12DDC01CB01FC01F999FECF3C
+:105B900006C0F2BDE1BDF89A319600B40D924150B5
+:0A5BA0005040B8F70895F894FFCFC5
+:105BAA002002150D060EE30DAF0D7B0D0101C50197
+:105BBA0028080A03140A3F4D3620394605F904C35A
+:105BCA0004A3046A04DD03F6030F0428044804014D
+:0A5BDA000203040506070809000095
+:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/emacs_osx_dk/keymap.c b/keyboard/ergodox_ez/keymaps/emacs_osx_dk/keymap.c new file mode 100644 index 000000000..bdac229e5 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/emacs_osx_dk/keymap.c @@ -0,0 +1,184 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define BASE 0 // default layer +#define SYMB 1 // symbols +#define MDIA 2 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | Grv | 1 | 2 | 3 | 4 | 5 | L1 | | L2 | 6 | 7 | 8 | 9 | 0 | = | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | - | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | \/LCtrl| A | S | D | F | G |------| |------| H | J | K | L | ; |'/RCtrl | + * |--------+------+------+------+------+------| RAlt | | RAlt |------+------+------+------+------+--------| + * | LShift | Z | X | C | V | B | | | | N | M | , | . | / | RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | ~L1 | LCtrl| Left| Right| LAlt | | LAlt | Up | Down | RCtrl| ~L2 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | Del | Ins | | Esc | App | + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space|Backsp|------| |------| LGui |Enter | + * | |ace | End | | PgDn | | | + * `--------------------' `----------------------' + */ +// If it accepts an argument (i.e, is a function), it doesn't need KC_. +// Otherwise, it needs KC_* +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, TG(SYMB), + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, + CTL_T(KC_BSLS), KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_RALT, + MO(SYMB), KC_LCTRL, KC_LEFT,KC_RGHT,KC_LALT, + KC_DELT,KC_INS, + KC_HOME, + KC_SPC,KC_BSPC,KC_END, + // right hand + TG(MDIA), KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, + KC_H, KC_J, KC_K, KC_L, KC_SCLN, CTL_T(KC_QUOT), + KC_RALT, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_RSFT, + KC_LALT,KC_UP, KC_DOWN,KC_RCTRL, MO(MDIA), + KC_ESC, KC_APP, + KC_PGUP, + KC_PGDN, KC_LGUI, KC_ENT + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | 0 | 0 | . | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_0, KC_0, KC_DOT, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MEDIA AND MOUSE +[MDIA] = KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void * matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void * matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboard/ergodox_ez/keymaps/emacs_osx_dk/readme.md b/keyboard/ergodox_ez/keymaps/emacs_osx_dk/readme.md new file mode 100644 index 000000000..4839988d9 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/emacs_osx_dk/readme.md @@ -0,0 +1,10 @@ +# ErgoDox EZ Emacs-OSX-DeadKeys Configuration + +Since I'm an Emacs user, ctrl keys are very important and gets a placement where the usual caps_lock is. There +are an extra pair of ctrls, just in case there where problems with the holding one's, but not as comfortable. + +Gui button takes a predominant place on the thumb cluster, as I'm using a mac os x and it relies heavily on it. + +Finally there is also two Right Alts to easily access to accented letters of the spanish alphabet. + +![Default](default_highres.png) diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex b/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex index a9f1942a6..928c0ecc3 100644 --- a/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex +++ b/keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex @@ -14,7 +14,7 @@ :1000D0009C118413931293125E138413841372136E
:1000E0000000F0A12E004C002A00E1003581000044
:1000F0001E00140004001D7134004D001F001A0082
-:1001000016001B00E104015420000800070006004F
+:1001000016001B00E104C1002000080007000600E3
:1001100050002C0021001500090019004F004A0072
:10012000220017000A000500000065745000015409
:100130000000007F0000E3004F0001540000007742
@@ -29,9 +29,9 @@ :1001C000250030004E0101003E00010026002700FE
:1001D000000001000100010000000100000001001A
:1001E0000100010000000100000001003F000100CB
-:1001F0002402310200000100400001002D0026020F
-:100200000100010041002E002D0227020100010023
-:100210004200010013002000010001004300010022
+:1001F0002402310200000100400022022D022602EA
+:100200000100010041002E002D0027020100010025
+:1002100042001F0213002000010001004300010002
:100220002E02010001000100440045000100010010
:1002300001000000010001000100010001000000B8
:1002400001000100010001000100010001000100A6
diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c b/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c index 3dbefe949..20c95f1ee 100644 --- a/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c +++ b/keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c @@ -7,12 +7,6 @@ #define SYMB 1 // symbols #define MDIA 2 // media keys -/* About this file: This is just an experimental keymap for my own use, with some ideas I'm testing out. -* Changlog: -* Jan 19: * Made J into dual-action key (Alt when held down), to make Alt-tab more ergonomic. -* * Made ' into dual-action key (Win/Cmd when held down). -*/ - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * @@ -30,9 +24,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-------------. ,-------------. * | App | LGui | | Alt |Ctrl/Esc| * ,------|------|------| |------+--------+------. - * | | | Home | | PgUp | | | - * | Space|Backsp|------| |------| Tab |Enter | - * | |ace | End | | PgDn | | | + * | | L1 | Home | | PgUp | | | + * | Space| Tap/ |------| |------| Tab/L1 |Enter | + * | |Toggle| End | | PgDn | | | * `--------------------' `----------------------' */ // If it accepts an argument (i.e, is a function), it doesn't need KC_. @@ -46,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT, KC_RGHT, ALT_T(KC_APP), KC_LGUI, KC_HOME, - KC_SPC,TG(SYMB),KC_END, + KC_SPC,KC_FN1,KC_END, // right hand KC_RGHT, KC_6,KC_7, KC_8, KC_9, KC_0, KC_MINS, TG(SYMB), KC_Y,KC_U, KC_I, KC_O, KC_P, KC_BSLS, @@ -62,9 +56,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,--------------------------------------------------. ,--------------------------------------------------. * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| - * | | 1 | 2 | 3 | 4 | | | | | | | = | | | F12 | + * | | 1 | 2 | 3 | 4 | | | | | | % | = | @ | | F12 | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| - * | | 5 | 6 | 7 | 8 | 9 |------| |------| & | - | _ | ; | + | | + * | | 5 | 6 | 7 | 8 | 9 |------| |------| & | _ | - | ; | + | | * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| * | | ( | ) | [ | ] | 0 | | | | | | ( | ) | | | | * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' @@ -91,8 +85,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS,KC_TRNS,KC_TRNS, // right hand KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_TRNS, KC_TRNS,KC_EQL, KC_TRNS, KC_TRNS, KC_F12, - KC_AMPR, KC_MINS,KC_UNDS, CM_SCLN, KC_PLUS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_PERC,KC_EQL, KC_AT, KC_TRNS, KC_F12, + KC_AMPR, KC_UNDS,KC_MINS, CM_SCLN, KC_PLUS, KC_TRNS, KC_TRNS, KC_PIPE, KC_LPRN,KC_RPRN, KC_3, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboard/ergodox_ez/keymaps/erez_experimental/readme.md b/keyboard/ergodox_ez/keymaps/erez_experimental/readme.md index d7332a97b..82e1c5e4a 100644 --- a/keyboard/ergodox_ez/keymaps/erez_experimental/readme.md +++ b/keyboard/ergodox_ez/keymaps/erez_experimental/readme.md @@ -4,6 +4,13 @@ This is my personal layout which I use to test out ideas which may or may not ma Changelog: +## Feb 11, 2016: + +* Updated ASCII legend for thumb clusters +* Made it so outer left-hand thumb key is L1 momentary toggle +* Added % and @ to L1 +* Swapped positions for _ and - on L1 + ## Feb 5, 2016: * A whole new design for the symbol layer. Specifically: diff --git a/keyboard/ergodox_ez/keymaps/jacobono/README.md b/keyboard/ergodox_ez/keymaps/jacobono/README.md new file mode 100644 index 000000000..48de0509f --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/jacobono/README.md @@ -0,0 +1,34 @@ +# Default Layer # + +I'm using the colemak layer -- customized a bit to work a bit better when using spacemacs as my editor. + +![default-layer](img/colemak-default-layer.png) + +## Special Keys ## + +`SC1` => `LGUI + TAB` + +`SC2` => `LGUI + SPACE + TAB` + +`L1` => Switch to QWERTY Layout + +`T(L2)` => Toggle Symbol Layer + +`T(L3)` => Toggle Number and D-Pad Layer + +# QWERTY # + +Nothing special here -- just need this layer tucked away for the `WASD`. Which is literally the only reason I use it. +Just have the same button to toggle back to colemak. + +# Symbol Layer # + +![symbol-layer](img/symbol-layer.png) + +This is just putting matching closing symbols next to each other -- useful when editing lisp. + +# Number and D-Pad Layer # + +Just a basic number layer with a D-PAD on the other side. + +![number-dpad-layer](img/number-dpad-layer.png) diff --git a/keyboard/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png b/keyboard/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png Binary files differnew file mode 100644 index 000000000..06f63c496 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/jacobono/img/colemak-default-layer.png diff --git a/keyboard/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png b/keyboard/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png Binary files differnew file mode 100644 index 000000000..4dd718278 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/jacobono/img/number-dpad-layer.png diff --git a/keyboard/ergodox_ez/keymaps/jacobono/img/symbol-layer.png b/keyboard/ergodox_ez/keymaps/jacobono/img/symbol-layer.png Binary files differnew file mode 100644 index 000000000..ee224cf0c --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/jacobono/img/symbol-layer.png diff --git a/keyboard/ergodox_ez/keymaps/jacobono/jacobono.hex b/keyboard/ergodox_ez/keymaps/jacobono/jacobono.hex new file mode 100644 index 000000000..cf68f854f --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/jacobono/jacobono.hex @@ -0,0 +1,1142 @@ +:100000000C940D030C9451030C9451030C94510364
+:100010000C9451030C9451030C9451030C94510310
+:100020000C9451030C9451030C946A0C0C943C0DE9
+:100030000C9451030C9451030C9451030C945103F0
+:100040000C9451030C94C1210C9451030C94510352
+:100050000C9451030C94521B0C9451030C945103B7
+:100060000C9451030C9451030C9451030C945103C0
+:100070000C9451030C9451030C9451030C945103B0
+:100080000C9451030C9451030C9451030C945103A0
+:100090000C9451030C9451030C9451030C94510390
+:1000A0000C9451030C9451030C945103A90DCB0DE6
+:1000B000B90ECB0DB90E100E330EB90E880E9B0E75
+:1000C0007D117D11AC11AC11EF112D1246144614A7
+:1000D00046124614471347131A1446144614311493
+:1000E0000000F0A201002B002A00E10001540000F2
+:1000F0001E00140004001D71010003521F001A00AD
+:1001000015001B0001002800200009001600060051
+:1001100052002C00210013001700190002522C0A73
+:1001200022000A00070005000000E3005000010063
+:1001300000000100000065004F00010000002B08D6
+:100140000000297123000D000B000E000000E200EA
+:1001500024000F001100100002522C0A2500180084
+:100160000800360051002C0026001C000C0037004F
+:10017000010028002700330012003871E600035206
+:100180004C002B004C00E500E70000002A002B008B
+:10019000E000E100010000001E00140004001D71D9
+:1001A00034004D001F001A0016001B00E104E3009C
+:1001B000200008000700060050002C002100150058
+:1001C0000900190002524A00220017000A00050027
+:1001D00000002B00500001000000E20000004C0075
+:1001E0004F0001000000E6000000E20023001C00B8
+:1001F0000B00110000002971240018000D001000F0
+:1002000002524B0025000C000E0036005100280061
+:10021000260012000F0037002F00E7002700130010
+:100220003384387130004E004C003100E400E500AA
+:10023000C1000000010001000100010001000000F8
+:100240003A00010031020100010001003B001F02E1
+:100250001E022202010001003C0025022E022302A0
+:10026000010001003D002E002D00210201000100CF
+:100270003E002D02340224020000010001000100B2
+:100280000000010000000100010001000000010069
+:10029000000001003F00350234023300000001007D
+:1002A00040002F0226022F00010001004100300211
+:1002B000270230000100010042002002340031001A
+:1002C0000100010043003302350038000100010045
+:1002D0004400450001000100010000000100010090
+:1002E0000100010001000000010001000100010007
+:1002F00001000100010001005000010001000100A7
+:100300000100520051000100010001000100010044
+:100310004F00010001000100010001000100010087
+:1003200000000100010001000000010000000100C8
+:100330000100010000000100000001000100210295
+:100340002E002402000001000100240021001E00F4
+:10035000360001000100250022001F0027000100D7
+:1003600001002600230020003700010001002E02BA
+:100370002D002502380001000100010001000100EC
+:100380000100000001000100010001000100000067
+:100390000100010001000100010001000100010055
+:1003A000F2000100010001000100F000F100010075
+:1003B000F400010001000100F3000100F50001005C
+:1003C0000100010001000100000001000100010026
+:1003D0000000010000000100010001000000010018
+:1003E0000000010001000100010001000000010007
+:1003F0000100010001000100A9000100010001004D
+:100400000100AC00AA00B600010001000100AB0031
+:10041000A80001000100010001000100010001002D
+:1004200001000100AE0001000100000016034500BC
+:10043000720067006F0044006F00780020004500E4
+:100440005A00000016034500720067006F00440068
+:100450006F007800200045005A00000004030904E2
+:1004600009026D00040100A0FA0904000001030163
+:100470000100092111010001223F00070581030845
+:10048000000A090401000103010200092111010011
+:1004900001224D000705820308000A090402000139
+:1004A0000300000009211101000122360007058325
+:1004B0000308000A090403000103000000092111D8
+:1004C0000100012239000705840310000112011008
+:1004D0000100000008EDFE07130100010200010504
+:1004E000010906A101050719E029E7150025019575
+:1004F0000875018102050819012905950575019105
+:10050000029501750391010507190029771500254A
+:1005100001957875018102C005010980A10185025C
+:1005200016010026B7001A01002AB70075109501C0
+:100530008100C0050C0901A1018503160100269C5C
+:10054000021A01002A9C02751095018100C0050164
+:100550000902A1010901A1000509190129051500D8
+:10056000250195057501810295017503810105013C
+:10057000093009311581257F9502750881060938F2
+:100580001581257F950175088106050C0A3802152D
+:1005900081257F950175088106C0C005010906A166
+:1005A00001050719E029E715002501950875018166
+:1005B0000295017508810105081901290595057540
+:1005C0000191029501750391010507190029FF1595
+:1005D0000025FF950675088100C00000000000009E
+:1005E0000000000000010204060A0F17202C3A4AFE
+:1005F0005D71879DB3C7DAE9F5FCFFFCF5E9DAC761
+:10060000B39D87715D4A3A2C20170F0A0604020138
+:100610000000000000000000000011241FBECFEF0A
+:10062000DAE0DEBFCDBF04B603FE24C08091EE0148
+:100630009091EF01A091F001B091F1018730904BC2
+:10064000A740B04BB9F41092EE011092EF01109256
+:10065000F0011092F10114BE84B7877F84BF88E156
+:100660000FB6F89480936000109260000FBEE0E037
+:10067000FFE3099511E0A0E0B1E0E6E0F7E402C095
+:1006800005900D92A433B107D9F711E0A4E3B1E0CE
+:1006900001C01D92AE3EB107E1F70E94AE090C9475
+:1006A00081230C94000061110BC0FC01828188231E
+:1006B00021F085EE0E941A1003C085EE0E94E21020
+:1006C00080E090E0089508956091B1017091B201C9
+:1006D0008091B3019091B4010E94811A56985E985E
+:1006E00025982D9826982E9827982F98813019F0C4
+:1006F000823021F00895259A2D9A0895269A2E9AEF
+:10070000089584E693E0892B11F00E94640380E051
+:1007100090E0089556985E9825982D9826982E98E2
+:1007200027982F988FEF90E090938900809388000E
+:1007300090938B0080938A0090938D0080938C001F
+:10074000259A2D9A2FEF80E792E02150804090402B
+:10075000E1F700C00000269A2E9A2FEF80E792E082
+:10076000215080409040E1F700C00000279A2F9A66
+:100770002FEF80E792E0215080409040E1F700C0E9
+:10078000000025982D982FEF80E792E021508040BF
+:100790009040E1F700C0000026982E982FEF80E7E8
+:1007A00092E0215080409040E1F700C0000027987F
+:1007B0002F9856985E9825982D9826982E982798C9
+:1007C0002F98089589EA8093800089E080938100C2
+:1007D00024982C983F988AB18F748AB96E98479A5A
+:1007E0008BB1806B8BB9769A0E948A0383E693E083
+:1007F000892B11F00E94630380E090E0089580E26D
+:10080000809300018091340181110EC00E944E043A
+:1008100081E0809334012FEF83ED90E321508040FD
+:100820009040E1F700C0000080E40E9454048093EF
+:10083000000181112EC00E947E048093000181116D
+:1008400028C00E947E0480930001811122C08FE3A2
+:100850000E947E048093000181111BC00E947604D7
+:1008600080E40E94540480930001811112C08CE046
+:100870000E947E048093000181110BC00E947E04BF
+:1008800080930001811105C08FE30E947E04809354
+:1008900000010E9476048091000108951092B90031
+:1008A0008AE08093B800089594EA9093BC009091F8
+:1008B000BC0097FFFCCF9091B900987F983021F051
+:1008C000903111F081E008958093BB0084E880931B
+:1008D000BC008091BC0087FFFCCF8091B900887F6D
+:1008E000883111F0803471F780E0089584E98093B5
+:1008F000BC008091BC0084FDFCCF08958093BB00B8
+:1009000084E88093BC008091BC0087FFFCCF90916D
+:10091000B900987F81E0983209F480E0089584E876
+:100920008093BC008091BC0087FFFCCF8091BB000E
+:10093000089580910001811115C080E40E94540443
+:100940008093000181110CC082E10E947E0480939B
+:100950000001811105C08FEF0E947E048093000189
+:100960000E94760484B1807F84B985B1807F85B987
+:100970008AB1837F8AB98BB1837F8BB93E984698C1
+:1009800008950E94FF03809300010E94990480B3A0
+:100990008C7080BB81B3836F81BBA6E3B1E0E4E4DC
+:1009A000F1E08EE08E0F11921D928E13FCCF82EE3D
+:1009B00093E0892B11F00C94E2030895BF92CF923B
+:1009C000DF92EF92FF920F931F93CF93DF9380916B
+:1009D0000001882379F0809135018F5F8093350184
+:1009E000811108C00E94FF0380930001811102C0A1
+:1009F0000E948A0306E311E0C0E0D0E0DD24D39436
+:100A000082E0C82EEE24E394F12CC730D10500F526
+:100A100080910001811164C080E40E94540480939D
+:100A20000001811112C082E10E947E0480930001C6
+:100A300081110BC0C7010C2E01C0880F0A94EAF780
+:100A400080950E947E04809300010E94760448C035
+:100A5000CA30A1F028F4C83059F0C93061F005C09F
+:100A6000CC3089F070F0CD3089F0209A289810C0F1
+:100A7000219A29980DC0229A2A980AC0239A2B9865
+:100A800007C0529A01C0539A5B9802C03E9A46989A
+:100A900090EA9A95F1F79FB1799902C082E001C07E
+:100AA00080E091709D25982B7C9902C084E001C064
+:100AB00080E0892B7D9902C038E001C030E0832BB3
+:100AC0007E9902C020E101C020E0822B9FB1909569
+:100AD000991F9927991F9295990F907E892B0FC086
+:100AE0008091000181114FC080E40E9454048093E2
+:100AF00000018823A9F1B12C0E9476048B2DF80106
+:100B00009081981719F08083C09201010E94990486
+:100B100021960F5F1F4FCE30D10509F076CF80911F
+:100B200001018823B1F0815080930101882339F0BD
+:100B30008FE99FE00197F1F700C000000AC0A4E42C
+:100B4000B1E0E6E3F1E0CF01825F91919D938E13D6
+:100B5000FCCF81E893E0892BC1F00E94810315C08E
+:100B600083E10E947E04809300018111C4CF81E45F
+:100B70000E945404809300018111BDCF0E948F0414
+:100B8000B82EB094B9CF80E0BACF81E0DF91CF9199
+:100B90001F910F91FF90EF90DF90CF90BF9008953D
+:100BA000E82FF0E0EC5BFE4F8081089508958B3BC9
+:100BB000910578F4883A910540F5853A9105D0F48D
+:100BC0008430910508F0B1C08130910509F4ADC0C1
+:100BD0006BC0803E910508F467C0883E910508F41B
+:100BE000A4C09C01205F31092031310508F05CC0B0
+:100BF00090650895853A910509F459C0863A9105A2
+:100C000009F058C082E890E40895883A910509F403
+:100C100054C0893A910509F453C08A3A910509F400
+:100C200052C08B3A910509F451C08C3A910509F4F0
+:100C300050C08D3A910509F44FC0803B910509F4ED
+:100C40004EC08E3A910509F44DC08F3A910509F4D2
+:100C50004CC0813B910509F44BC0823B910509F4DE
+:100C60004AC0833B910509F449C0843B910509F4CE
+:100C700048C0853B910509F447C0863B910509F4BE
+:100C800046C0873B910509F445C0883B910509F4AE
+:100C900044C0893B910509F443C08A3B910509F49E
+:100CA00042C080E094E4089580E090E0089581E8F7
+:100CB00090E4089583E890E4089582EE94E4089522
+:100CC00089EE94E408958AEE94E4089585EB94E423
+:100CD000089586EB94E4089587EB94E408958CECF2
+:100CE00094E408958DEC94E4089583E895E40895E0
+:100CF0008AE895E4089582E995E4089584E995E405
+:100D0000089581E296E4089583E296E4089584E2EA
+:100D100096E4089585E296E4089586E296E40895BF
+:100D200087E296E408958AE296E40895089596E0AD
+:100D3000799FF001112494E5899FE00DF11D1124A4
+:100D4000E60FF11DEE0FFF1FEC51FF4F85919491BF
+:100D50000895880F991FFC01E05AF0408591949105
+:100D60000895880F991FFC01E052FF4F85919491DF
+:100D7000089526E0729FF001112444E5849FE00D60
+:100D8000F11D1124E60FF11DEE0FFF1FEC51FF4F77
+:100D9000859194919C013A9521154FE1340708F40F
+:100DA0001AC13F512115304120F49F700E94B106B5
+:100DB00008959C0130532115304118F49927906C07
+:100DC0000895811520E5920769F40E9468144FEF99
+:100DD00084E39CE0415080409040E1F700C0000077
+:100DE0000C94771B813020E5920731F48091CC017F
+:100DF00081608093CC0108959C01305521153041CC
+:100E000008F051C0292F33272F70332721303105A7
+:100E1000D9F4AC014370552702C0220F331F4A9505
+:100E2000E2F73C68AC0164E0440F551F6A95E1F7B6
+:100E300044275370242B352B73E0880F991F7A9524
+:100E4000E1F7807699271DC02230310529F4982FCB
+:100E50008827816F906A089523303105A9F4AC0189
+:100E60004370552721E030E002C0220F331F4A951E
+:100E7000E2F73C6843E0880F991F4A95E1F7807ECE
+:100E80009770822B932B089524303105E1F4AC0147
+:100E90004370552721E030E002C0220F331F4A95EE
+:100EA000E2F73A68E7CF9C0130572115304118F43A
+:100EB0009F70906208959C0130582115304118F4BC
+:100EC0009F70906A0895803E9105E0F4803C910502
+:100ED00058F58133910509F46FC048F489329105C2
+:100EE00009F463C08A32910509F46DC072C0893378
+:100EF0009105E9F082389105D1F08533910509F427
+:100F00004DC067C0833E910581F138F4803E910564
+:100F1000B9F0823E9105D9F05CC0863E910561F141
+:100F2000873E9105A1F155C00E94A9060895209120
+:100F3000DF0120FD02C021FF4CC080EE90E049C0DF
+:100F40008091DF0180FFF9CF89E390E042C080917A
+:100F5000DF0182FF0EC08091DF0184FF03C080E0CB
+:100F600090E037C083EE90E034C08091DF0182FFD3
+:100F7000F2CF82EE90E02DC08091DF0183FF0BC0A5
+:100F80008091DF0184FDEBCF87EE90E022C080915D
+:100F9000DF0183FFF5CF86EE90E01BC08091DF017B
+:100FA00085FF07C089E290E014C08091DF0185FFD2
+:100FB000F9CF85E390E00DC08091DF0186FF07C087
+:100FC0008AE290E006C08091DF0186FFF9CF81E3DD
+:100FD00090E00E94D70508950895809162010895D8
+:100FE000CF93DF9300D01F92CDB7DEB79C018091E5
+:100FF000E501843019F593E099833B832A8390932C
+:10100000E9008FEF9091E800815095FD06C095EDC5
+:101010009A95F1F700008111F5CF8091E80085FFE6
+:101020000DC040E050E063E070E0CE0101960E9408
+:101030005A0A8091E8008E778093E8000F900F9015
+:101040000F90DF91CF910895CF93DF9300D01F923F
+:10105000CDB7DEB72091E501243021F522E02983C8
+:101060009B838A8383E08093E9008FEF9091E8006F
+:10107000815095FD06C095ED9A95F1F7000081111C
+:10108000F5CF8091E80085FF0DC040E050E063E0BF
+:1010900070E0CE0101960E945A0A8091E8008E7796
+:1010A0008093E8000F900F900F90DF91CF910895FB
+:1010B0002091E5012430F1F422E02093E9002FEFA4
+:1010C0003091E800215035FD06C035ED3A95F1F735
+:1010D00000002111F5CF2091E80025FF0BC040E072
+:1010E00050E065E070E00E945A0A8091E8008E7737
+:1010F0008093E8000895CF93DF93EC019091E50190
+:10110000943009F046C080910C018823D9F0809179
+:101110000D018823B9F09093E9008FEF9091E800DA
+:10112000815095FD06C095E19A95F1F70000811177
+:10113000F5CF8091E80085FF2CC040E050E060E1F1
+:1011400070E017C081E08093E9008FEF9091E80094
+:10115000815095FD06C095ED9A95F1F7000081113B
+:10116000F5CF8091E80085FF14C040E050E068E0D2
+:1011700070E0CE010E945A0A8091E8008E77809339
+:10118000E80080E1FE01A2E5B1E001900D928A95B0
+:10119000E1F7DF91CF9108958091E401811109C0B9
+:1011A0000E94EF0B0E944C0C8091E20084608093BF
+:1011B000E20008951092E401089508950C94AE2180
+:1011C0000E940D1B0E94B4210E94F20E0C94EC07A9
+:1011D00042E061EC81E00E94690B42E061EC82E058
+:1011E0000E94690B42E061EC83E00E94690B42E1DE
+:1011F00061EC84E00C94690B8091E701833009F481
+:1012000055C030F4813071F0823009F48EC00895F9
+:101210008A3009F47AC08B3009F460C0893009F053
+:101220009CC020C08091E601813A09F096C080916F
+:10123000E800877F8093E8008091EA019091EB01BC
+:10124000892B21F460E182E591E003C060E080E059
+:1012500090E070E00E94A50A8091E8008B7780936F
+:10126000E80008958091E601813209F076C080910E
+:10127000EA019091EB01009719F0039709F06DC016
+:101280008091E800877F8093E8008091E80082FDEC
+:1012900005C08091E5018111F8CF5FC08091F10018
+:1012A000809362018091E8008B7753C08091E601C2
+:1012B000813A09F052C08091EA019091EB01892BAB
+:1012C00009F04BC08091E800877F8093E80080910F
+:1012D000E80080FFFCCF80910C0136C08091E601D0
+:1012E0008132D9F58091EA019091EB01892BA9F522
+:1012F0008091E800877F8093E8000E949E0B809198
+:10130000E80180930C010C9468148091E60181320D
+:1013100021F58091E800877F8093E8000E949E0B72
+:101320008091E9018093630108958091E601813AFB
+:10133000A1F48091E800877F8093E8008091E80025
+:1013400080FFFCCF809163018093F1008091E800E1
+:101350008E778093E8000C949E0B089584B7877F66
+:1013600084BF88E10FB6F89480936000109260000B
+:101370000FBE90E080E80FB6F894809361009093E0
+:1013800061000FBE0E94410F0E94EF0B0E944C0CA7
+:101390008091E20084608093E20078940E94D20EF3
+:1013A0000E94430F82E091E00E94ED0E0E949C217A
+:1013B0008091E501853069F40E94D11A8091E301A2
+:1013C0008823B1F30E94F91A882391F30E94440AFA
+:1013D000EFCF0E94490FECCF292F3327233031055F
+:1013E000C9F064F42130310581F02230310509F073
+:1013F00043C08DE690E020E634E042C02132310562
+:10140000F1F02232310541F137C082E190E02DEC5C
+:1014100034E036C099278130910541F08230910542
+:1014200041F0892B49F5ECE5F4E005C0E4E4F4E093
+:1014300002C0ECE2F4E0849190E09F0121C06430AE
+:10144000D8F4E62FF0E0EE0FFF1FEE5DFE4F208197
+:10145000318189E090E014C0643070F470E0FB01E9
+:10146000EE0FFF1FE65EFE4F20813181FB01EA5E39
+:10147000FE4F808190E004C080E090E020E030E00A
+:10148000FA0131832083089580E189BD82E189BD1D
+:1014900009B400FEFDCF8091D8008F7D8093D800E5
+:1014A0008091E00082608093E0008091E00081FD07
+:1014B000FCCF0895CF92DF92EF92FF920F931F938C
+:1014C000CF93DF93EC018B016A010E94BD0B811168
+:1014D00033C0C114D10439F0F60180819181081B19
+:1014E000190BC80FD91FE12CF12C0115110519F1A9
+:1014F0008091E80085FD16C08091E8008E7780938A
+:10150000E800C114D10449F0F60180819181E80E10
+:10151000F91EF182E08285E00FC00E94BD0B882396
+:1015200021F30AC089918093F10001501109FFEF66
+:10153000EF1AFF0ADACF80E0DF91CF911F910F9170
+:10154000FF90EF90DF90CF9008952091EC013091C3
+:10155000ED012617370748F06115710539F4209120
+:10156000E8002E772093E80001C0B90140E0611542
+:101570007105A9F12091E501222309F443C025302A
+:1015800009F442C02091E80023FD40C02091E8000A
+:1015900022FD32C02091E80020FFE9CF4091F30006
+:1015A0002091F20030E0342BFC01CF016115710570
+:1015B00059F02830310540F481918093F100615059
+:1015C00071092F5F3F4FF1CF41E02830310509F01D
+:1015D00040E02091E8002E772093E800C8CF411129
+:1015E000C9CF0AC08091E501882361F0853061F0A0
+:1015F0008091E80083FD0AC08091E80082FFF2CF6D
+:1016000080E0089582E0089583E0089581E00895E0
+:101610002091EC013091ED012617370748F0611554
+:10162000710539F42091E8002E772093E80001C07D
+:10163000B901FC0120E06115710591F18091E5018E
+:10164000882309F440C0853009F43FC08091E80048
+:1016500083FD3DC08091E80082FD2FC08091E800AD
+:1016600080FFE9CF2091F3008091F20090E0922B6F
+:101670006115710559F08830910540F4249120934B
+:10168000F1003196615071090196F2CF21E008977F
+:1016900009F020E08091E8008E778093E800CBCFBE
+:1016A0002111CCCF0AC08091E501882361F08530FB
+:1016B00061F08091E80083FD0AC08091E80082FF1C
+:1016C000F2CF80E0089582E0089583E0089581E0FC
+:1016D0000895982F973058F59093E900981739F0AE
+:1016E0007091EC002091ED005091F00003C0242F88
+:1016F000762F50E021FF19C03091EB003E7F3093F0
+:10170000EB003091ED003D7F3093ED003091EB0028
+:1017100031603093EB007093EC002093ED00509318
+:10172000F0002091EE0027FF07C09F5FD3CF8F709E
+:101730008093E90081E0089580E008958091E601BA
+:1017400087FF11C08091E80082FD05C08091E5010E
+:101750008111F8CF11C08091E8008B770BC0809188
+:10176000E501882349F08091E80080FFF8CF80915F
+:10177000E8008E778093E80008952091E40030918E
+:10178000E50095E64091EC00842F817040FF22C077
+:101790008091E80080FD1CC08091E501882391F0D4
+:1017A000853091F08091EB0085FD10C04091E40000
+:1017B0005091E5004217530729F39A01915011F710
+:1017C00084E0089582E0089583E0089581E008951B
+:1017D00080E008954091E80042FFDECF08950E9426
+:1017E0005D0C0E94650CE0EEF0E0808181608083FA
+:1017F000E8EDF0E080818F77808319BCA7EDB0E041
+:101800008C918E7F8C9380818F7E80831092E401F7
+:1018100008950F931F93CF93DF930E945D0C0E9456
+:10182000650CC8EDD0E088818F77888388818068D7
+:10183000888388818F7D888319BC1092E50110927E
+:10184000E1011092E3011092E20100EE10E0F801D4
+:1018500080818B7F808388818160888342E060E023
+:1018600080E00E94690BE1EEF0E080818E7F808352
+:10187000E2EEF0E0808181608083808188608083F7
+:10188000F80180818E7F8083888180618883DF91E9
+:10189000CF911F910F910895E8EDF0E080818F7E48
+:1018A0008083E7EDF0E080818160808384E082BF07
+:1018B00081E08093E4010C94090CE8EDF0E0808174
+:1018C0008E7F80831092E20008951092DA001092C9
+:1018D000E10008951F920F920FB60F9211242F93DB
+:1018E0003F934F935F936F937F938F939F93AF93A8
+:1018F000BF93EF93FF938091E10082FF0BC0809133
+:10190000E20082FF07C08091E1008B7F8093E100BD
+:101910000E94D10E8091DA0080FF1FC08091D80014
+:1019200080FF1BC08091DA008E7F8093DA00809167
+:10193000D90080FF0DC080E189BD82E189BD09B475
+:1019400000FEFDCF81E08093E5010E94CC0805C038
+:1019500019BC1092E5010E94DA088091E10080FF35
+:1019600019C08091E20080FF15C08091E2008E7F57
+:101970008093E2008091E20080618093E200809198
+:10198000D80080628093D80019BC85E08093E5017F
+:101990000E94DE088091E10084FF30C08091E20067
+:1019A00084FF2CC080E189BD82E189BD09B400FEBD
+:1019B000FDCF8091D8008F7D8093D8008091E10089
+:1019C0008F7E8093E1008091E2008F7E8093E20021
+:1019D0008091E20081608093E2008091E1018823A0
+:1019E00011F084E007C08091E30087FD02C081E030
+:1019F00001C083E08093E5010E94E0088091E1004E
+:101A000083FF29C08091E20083FF25C08091E1001F
+:101A1000877F8093E10082E08093E5011092E101ED
+:101A20008091E1008E7F8093E1008091E2008E7FC3
+:101A30008093E2008091E20080618093E20042E0C6
+:101A400060E080E00E94690B8091F00088608093E4
+:101A5000F0000E94DD08FF91EF91BF91AF919F913F
+:101A60008F917F916F915F914F913F912F910F9047
+:101A70000FBE0F901F9018951F920F920FB60F92E6
+:101A800011242F933F934F935F936F937F938F9383
+:101A90009F93AF93BF93CF93DF93EF93FF93C09147
+:101AA000E900CF708091EC00D82FD17080FDD0E894
+:101AB0001092E9008091F000877F8093F000789485
+:101AC0000E94800D1092E9008091F0008860809360
+:101AD000F000CD2BCF70C093E900FF91EF91DF9123
+:101AE000CF91BF91AF919F918F917F916F915F91B6
+:101AF0004F913F912F910F900FBE0F901F9018950F
+:101B00001F93CF93DF93CDB7DEB7AA970FB6F894A4
+:101B1000DEBF0FBECDBFE6EEF1E088E08E0F909104
+:101B2000F10091938E13FBCF0E94FC088091E80096
+:101B300083FF1FC18091E6019091E701492F50E09A
+:101B40004A30510508F015C1FA01EA5AFF4F0C94CA
+:101B50003623803881F0823809F00BC18091EA0188
+:101B60008F708093E9008091EB0085FB882780F9D6
+:101B70001092E90006C08091E2019091E301911179
+:101B800082609091E800977F9093E8008093F10045
+:101B90001092F100C8C0282F2D7F09F0EAC08823D9
+:101BA00019F0823061F0E5C08091E801813009F0E0
+:101BB000E0C0933009F080E08093E3012BC0809176
+:101BC000E801811127C08091EA018F7009F4D1C02A
+:101BD0008093E9002091EB0020FF1CC0933021F49A
+:101BE0008091EB00806214C09091EB009061909323
+:101BF000EB0021E030E0A90102C0440F551F8A9597
+:101C0000E2F74093EA001092EA008091EB008860CE
+:101C10008093EB001092E9008091E800877F86C0F6
+:101C20008111A7C01091E8011F778091E3008078AF
+:101C3000812B8093E3008091E800877F8093E80008
+:101C40000E949E0B8091E80080FFFCCF8091E30012
+:101C500080688093E300111102C082E001C083E03C
+:101C60008093E50186C08058823008F082C0809160
+:101C7000E8019091E9018C3D53E0950779F583E007
+:101C80008A838AE289834FB7F894DE01139620E0B5
+:101C90003EE051E2E32FF0E050935700E49120FF43
+:101CA00003C0E295EF703F5FEF708E2F90E0EA3057
+:101CB00010F0C79601C0C0968D939D932F5F24317D
+:101CC00049F74FBF8091E800877F8093E8006AE280
+:101CD00070E0CE0101960E94A50A14C0AE014F5FCC
+:101CE0005F4F6091EA010E94EC09BC01892B09F465
+:101CF00040C09091E800977F9093E80089819A8195
+:101D00000E94080B8091E8008B778093E80031C037
+:101D1000803879F58091E800877F8093E800809192
+:101D2000E1018093F1008091E8008E778093E800D4
+:101D30000E949E0B1EC081111CC09091E801923040
+:101D4000C0F48091E800877F8093E8009093E101E0
+:101D50000E949E0B8091E101811106C08091E300F9
+:101D600087FD02C081E001C084E08093E5010E940C
+:101D7000E8088091E80083FF0AC08091E800877F2F
+:101D80008093E8008091EB0080628093EB00AA963C
+:101D90000FB6F894DEBF0FBECDBFDF91CF911F917C
+:101DA00008950895CF938091E5018823A1F0C09113
+:101DB000E900CF709091EC00892F817090FD80E850
+:101DC000C82B1092E9008091E80083FD0E94800DED
+:101DD000CF70C093E900CF910895909369018093EB
+:101DE00068010895E0916801F0916901309721F050
+:101DF0000190F081E02D099480E00895E091680160
+:101E0000F0916901309721F00280F381E02D09946F
+:101E10000895E0916801F0916901309721F0048004
+:101E2000F581E02D099408952091660130916701B4
+:101E30008217930771F09093670180936601E09198
+:101E40006801F0916901309721F00680F781E02D5B
+:101E500009940895209164013091650182179307D8
+:101E600071F09093650180936401E0916801F091B5
+:101E70006901309721F00084F185E02D09940895DF
+:101E800008950C94400F0E94131B0E94C1040C94EF
+:101E9000D91BCF92DF92EF92FF920F931F93CF93B4
+:101EA000DF93CDB7DEB72B970FB6F894DEBF0FBE2A
+:101EB000CDBF0E94DE048BE6C82E81E0D82E00E064
+:101EC00010E0E02E802F0E94D005F60141916F01B5
+:101ED000F42EF826B1F40F5F1F4F0E30110589F76D
+:101EE0008FEF89838A831B820E941C1B8160782F5D
+:101EF0009D838C8349815A816B818D810E94EC0F77
+:101F000040C09091CC0191FF04C08B870E94D60500
+:101F10008B8520E030E04F2D50E0922FBA01022E49
+:101F200002C0759567950A94E2F760FF24C02E837E
+:101F3000EF8221E030E0690102C0CC0CDD1C9A95F3
+:101F4000E2F790E08C219D21892B09F420E028877D
+:101F50000E941C1B8160782F9A8789874E815F8140
+:101F600068858A850E94EC0FF801E559FE4F808153
+:101F7000C826C08206C02F5F3F4F2630310569F664
+:101F8000AACF0E94C01E10916A010E94F20E18177B
+:101F9000A1F00E94F20E80936A012B960FB6F8947E
+:101FA000DEBF0FBECDBFDF91CF911F910F91FF908C
+:101FB000EF90DF90CF900C94EC072B960FB6F8942F
+:101FC000DEBF0FBECDBFDF91CF911F910F91FF906C
+:101FD000EF90DF90CF900895CF93DF93CDB7DEB72A
+:101FE0002B970FB6F894DEBF0FBECDBF4F83588737
+:101FF00069877A878B87DE01119686E0FD01119251
+:102000008A95E9F785E0FE01379601900D928A9551
+:10201000E1F749815A816B817C818D819E810E948B
+:1020200002172B960FB6F894DEBF0FBECDBFDF911F
+:10203000CF910895CF93882309F4C2C0C82F823866
+:1020400059F40E94F20E81FDBBC089E30E949E19E3
+:102050000E945B1A89E30CC0833879F40E94F20E67
+:1020600080FDAEC083E50E949E190E945B1A83E545
+:102070000E94E019CF910C945B1A843859F40E94A5
+:10208000F20E82FD9DC087E40E949E190E945B1A99
+:1020900087E4EECF8CEF8C0F813A48F48C2F0E94AE
+:1020A000012181118DC08C2F0E949E19E3CF80E207
+:1020B0008C0F883048F4C77081E001C0880FCA9542
+:1020C000EAF70E94241AD6CF8BE58C0F833078F480
+:1020D000C53A29F0C63A31F083E890E005C081E8BE
+:1020E00090E002C082E890E0CF910C94140F88E554
+:1020F0008C0F833108F064C0C83A39F1C93A41F114
+:10210000CA3A49F1CB3A51F1CC3A59F1CD3A61F1A1
+:10211000C03B69F1CE3A71F1CF3A79F1C13B81F11F
+:10212000C23B89F1C33B91F1C43B99F1C53BA1F19D
+:10213000C63BA9F1C73BB1F1C83BB9F1C93BC1F1FD
+:10214000CA3BC9F180E090E038C082EE90E035C033
+:1021500089EE90E032C08AEE90E02FC085EB90E0EF
+:102160002CC086EB90E029C087EB90E026C08CEC79
+:1021700090E023C08DEC90E020C083E891E01DC08A
+:102180008AE891E01AC082E991E017C084E991E001
+:1021900014C081E292E011C083E292E00EC084E2BA
+:1021A00092E00BC085E292E008C086E292E005C0B2
+:1021B00087E292E002C08AE292E0CF910C942A0F6B
+:1021C000CF910895882309F44BC0823859F40E94B6
+:1021D000F20E81FF45C089E30E949E190E945B1A9E
+:1021E00089E30CC0833871F40E94F20E80FF38C07E
+:1021F00083E50E949E190E945B1A83E50E94E01904
+:102200000C945B1A843859F40E94F20E82FF28C0A5
+:1022100087E40E949E190E945B1A87E4EFCF9CEF2F
+:10222000980F913A58F390E2980F983050F48770D5
+:1022300091E001C0990F8A95EAF7892F0E942A1A26
+:10224000DFCF9BE5980F933020F480E090E00C9472
+:10225000140F885A833120F480E090E00C942A0F08
+:102260000895882321F00E94241A0C945B1A089583
+:10227000882321F00E942A1A0C945B1A0895BF92B9
+:10228000CF92DF92EF92FF920F931F93CF93DF9342
+:1022900000D000D000D0CDB7DEB725E0FC01DE01D4
+:1022A000119601900D922A95E1F7FC014081318150
+:1022B0000281258122952F7063817481672B09F437
+:1022C000E5C23F3F19F44F3F09F4E0C27C01498366
+:1022D0003A8389819A812E830E945D19182FB92E25
+:1022E0000E945C190E942318EB2DE295EF70F0E03C
+:1022F000E05AFF4F2E810C9436238B2D807F9B2D2F
+:102300009F70F92E882319F0F29480EFF8220023B1
+:1023100049F0FF2009F467C28F2D0E94341A0E94F1
+:102320005B1A61C2812F0E94E210FF2009F4AEC245
+:102330008F2D0E943A1A26960FB6F894DEBF0FBE74
+:10234000CDBFDF91CF911F910F91FF90EF90DF9064
+:10235000CF90BF900C945B1A3B2D307F8B2D8F70EC
+:10236000303211F08295807F112319F0113021F164
+:102370002CC00023B9F0222309F4A0C1213009F0B8
+:102380009DC126960FB6F894DEBF0FBECDBFDF917C
+:10239000CF911F910F91FF90EF90DF90CF90BF9062
+:1023A0000C94441A222319F0213009F46FC28E8351
+:1023B0000E94471A8E8196C1002321F0223008F036
+:1023C00065C27CC1211162C28DC1002321F022238C
+:1023D00009F474C108C2222309F484C119C22B2D47
+:1023E00026952695237030E02115310521F0213006
+:1023F0003105D1F04BC2002321F0812F9B2D93702A
+:1024000002C080E090E026960FB6F894DEBF0FBEC3
+:10241000CDBFDF91CF911F910F91FF90EF90DF9093
+:10242000CF90BF900C94140F002321F0812F9B2D8F
+:10243000937002C080E090E026960FB6F894DEBF5D
+:102440000FBECDBFDF91CF911F910F91FF90EF9005
+:10245000DF90CF90BF900C942A0F812F002319F0AA
+:102460000E94C81D02C00E94301E26960FB6F89426
+:10247000DEBF0FBECDBFDF91CF911F910F91FF90B7
+:10248000EF90DF90CF90BF900C94B51E8B2D837092
+:1024900009F07BC00111FAC1812F82958695877062
+:1024A000880F880F912F9F70C92ED12CE12CF12C11
+:1024B000082E04C0CC0CDD1CEE1CFF1C0A94D2F7C5
+:1024C00014FF12C04FE050E060E070E004C0440F21
+:1024D000551F661F771F8A95D2F7CB01BA01609509
+:1024E00070958095909503C060E070E0CB012B2D36
+:1024F000269526952370422F50E042305105D9F0A1
+:102500004330510569F16C297D298E299F2941307D
+:10251000510551F126960FB6F894DEBF0FBECDBF20
+:10252000DF91CF911F910F91FF90EF90DF90CF90AF
+:10253000BF900C944A186C297D298E299F292696D4
+:102540000FB6F894DEBF0FBECDBFDF91CF911F91C4
+:102550000F91FF90EF90DF90CF90BF900C94661892
+:102560000E944A18C701B60126960FB6F894DEBF3E
+:102570000FBECDBFDF91CF911F910F91FF90EF90D4
+:10258000DF90CF90BF900C942E18002319F08B2D64
+:10259000817001C08695882309F478C1812F8295C6
+:1025A00086958770880F880F912F9F70C92ED12C28
+:1025B000E12CF12C082E04C0CC0CDD1CEE1CFF1C01
+:1025C0000A94D2F714FF12C04FE050E060E070E0D0
+:1025D00004C0440F551F661F771F8A95D2F7CB01A1
+:1025E000BA01609570958095909503C060E070E0A9
+:1025F000CB012B2D269526952370422F50E042309B
+:102600005105D9F04330510569F16C297D298E2996
+:102610009F294130510551F126960FB6F894DEBF3F
+:102620000FBECDBFDF91CF911F910F91FF90EF9023
+:10263000DF90CF90BF900C9424196C297D298E29AE
+:102640009F2926960FB6F894DEBF0FBECDBFDF914F
+:10265000CF911F910F91FF90EF90DF90CF90BF909F
+:102660000C9440190E942419C701B60126960FB692
+:10267000F894DEBF0FBECDBFDF91CF911F910F91B8
+:10268000FF90EF90DF90CF90BF900C940819103F0F
+:10269000D1F118F4103E50F4A1C0123F09F463C008
+:1026A00008F44CC0133F09F473C098C01F708B2D01
+:1026B0008F710023A1F00E94A118812F26960FB6DA
+:1026C000F894DEBF0FBECDBFDF91CF911F910F9168
+:1026D000FF90EF90DF90CF90BF900C9431110E944B
+:1026E000C218812F26960FB6F894DEBF0FBECDBF5D
+:1026F000DF91CF911F910F91FF90EF90DF90CF90DE
+:10270000BF900C9438110023A9F02111BFC08B2D6C
+:102710008F7126960FB6F894DEBF0FBECDBFDF9146
+:10272000CF911F910F91FF90EF90DF90CF90BF90CE
+:102730000C94E718223008F0A9C0E9CF0023A9F0D3
+:102740008B2D8F7126960FB6F894DEBF0FBECDBFCE
+:10275000DF91CF911F910F91FF90EF90DF90CF907D
+:10276000BF900C94A118002359F38B2D8F712696DE
+:102770000FB6F894DEBF0FBECDBFDF91CF911F9192
+:102780000F91FF90EF90DF90CF90BF900C94C21804
+:10279000002399F08B2D8F7126960FB6F894DEBF2B
+:1027A0000FBECDBFDF91CF911F910F91FF90EF90A2
+:1027B000DF90CF90BF900C948C1826960FB6F894AB
+:1027C000DEBF0FBECDBFDF91CF911F910F91FF9064
+:1027D000EF90DF90CF90BF900C9482180023A9F067
+:1027E000222309F4ADCF812F26960FB6F894DEBFD1
+:1027F0000FBECDBFDF91CF911F910F91FF90EF9052
+:10280000DF90CF90BF900C941A10222309F4ADCF23
+:10281000812F26960FB6F894DEBF0FBECDBFDF9195
+:10282000CF911F910F91FF90EF90DF90CF90BF90CD
+:102830000C94E2104B2D4F70612FC7010E9453037F
+:1028400026960FB6F894DEBF0FBECDBFDF91CF91B5
+:102850001F910F91FF90EF90DF90CF90BF900C945D
+:10286000A6174B2D4F70612FC70126960FB6F8940F
+:10287000DEBF0FBECDBFDF91CF911F910F91FF90B3
+:10288000EF90DF90CF90BF900C94960626960FB6EF
+:10289000F894DEBF0FBECDBFDF91CF911F910F9196
+:1028A000FF90EF90DF90CF90BF9008950E94411A63
+:1028B0000E94161A0E945B1A0E94661F0E94B51E93
+:1028C00080E090E00E94140F80E090E00C942A0FCA
+:1028D0000E94311A0C9456140E945D19292F2295DA
+:1028E0002F7030E02C3031054CF42A3031056CF477
+:1028F000225031092230310588F407C02C303105CF
+:1029000049F02F30310531F009C0803E48F0803F5A
+:1029100029F406C093FB882780F9089580E0089584
+:1029200081E00895CF93DF9300D000D01F92CDB700
+:10293000DEB70F900F900F900F900F90DF91CF9117
+:102940000895CF93DF9300D000D000D0CDB7DEB78D
+:1029500026960FB6F894DEBF0FBECDBFDF91CF91A4
+:1029600008951F93CF93DF93C091790116E0809172
+:102970007A01C81799F0D0E01C9FF0011D9FF00D5F
+:102980001124E558FE4F4081518162817381848119
+:1029900095810E94A1142196C770E9CFDF91CF9154
+:1029A0001F9108954091AB015091AC016091AD0130
+:1029B0007091AE018091AF019091B0010C94A1147F
+:1029C0008091B00182958F7009F054C08091AD0163
+:1029D000882309F44FC080917901A0917A01609118
+:1029E000AB017091AC014091AE015091AF01B6E0E6
+:1029F0008A1709F43FC090E041155105C1F17F3FAE
+:102A000011F46F3FA1F1B89FF001B99FF00D1124AF
+:102A1000E558FE4F218172132AC02081621327C01E
+:102A20002281211124C0238134812417350710F419
+:102A300021503109241B350B283C3105C0F420916D
+:102A4000B0012F7020612093B00126E0289FF00193
+:102A5000299FF00D1124E058FE4F80818F70806116
+:102A600080838BEA91E00E943F110C94B11401968F
+:102A70008770BECF0895CF92DF92EF92FF920F93AF
+:102A80001F93CF93DF93CDB7DEB762970FB6F8945D
+:102A9000DEBF0FBECDBF8C0185E0F801DE011D96C3
+:102AA00001900D928A95E1F7D8014C9111965C91B5
+:102AB000119712966C9112971396CD90DC90149703
+:102AC0003091AB017091AC018091AE019091AF015A
+:102AD000009709F46BC17F3F19F43F3F09F466C1C9
+:102AE000E090AD01EE2009F4C0C02091B001C816FD
+:102AF000D90628F0F601E81BF90BCF0104C0809538
+:102B000090958C0D9D1DFF24F394883C910578F0E1
+:102B1000F12C207F09F0C6C07C2DD98AC88A89890A
+:102B20000E9492148BEA91E00E943F11B1C0822F63
+:102B3000807F09F046C0751314C0341312C06111B0
+:102B400010C02F7020612093B0010E94D2148BEA34
+:102B500091E00E943F118091B001D80115968C93AD
+:102B60002EC0CD2819F15F3F11F44F3FF9F0F62E3A
+:102B700061111CC08091790120917A0136E08217A1
+:102B800009F45AC090E0389FF001399FF00D1124EC
+:102B9000E558FE4F7181571306C07081471303C07B
+:102BA0007281711103C001968770E9CFF62E6623FA
+:102BB00009F418C18091B00181608093B001F12CBB
+:102BC00011C1751308C0341306C0611104C080918F
+:102BD000B001D801C3C04D875E878D859E856A8B05
+:102BE0000E946C146A898823E1F16623D1F1209157
+:102BF000B001822F82958F7090E0029774F08091DF
+:102C0000AB019091AC0198878F831986DB86CA86C9
+:102C10002C87CE0107960E943F1186E0F801ABEAAF
+:102C2000B1E001900D928A95E1F70E94E0140E94B4
+:102C3000D214FF24F394D6C04D875E878D859E8580
+:102C40000E945D19292F22952F7030E02230310526
+:102C50000CF0BCC09F7009F0B6C0805E883008F4EC
+:102C6000C1C0C8010E943F11E4CFC816D90608F4BC
+:102C700053C0F601E81BF90BCF01883C910508F41D
+:102C800050C0F12C7C2DD98AC88A89890E9492145F
+:102C9000EBEAF1E086E0DF011D928A95E9F70E94F8
+:102CA000D214A0C0751314C0341312C0611110C027
+:102CB0008091B001F8018583C8010E943F1186E030
+:102CC000EBEAF1E0DF011D928A95E9F7FE2C8AC05C
+:102CD0004D875E878D859E856A8B0E946C146A89FC
+:102CE000882309F4BECF662309F4BBCF2091B0013D
+:102CF000822F82958F7090E002970CF48ECF809196
+:102D0000AB019091AC019A8389831B82DD82CC82D6
+:102D10002E83CE0101967FCF809590958C0D9D1DC1
+:102D2000ACCFF62E662309F49CCF75132EC0341356
+:102D30002CC02091B00120FD1FC0822F82958F7082
+:102D4000D9F0D80115962C9315978F3049F08F5FE5
+:102D5000982F9295907F822F8F70892B15968C9348
+:102D6000C8010E943F1186E0F801ABEAB1E0019092
+:102D70000D928A95E1F793CF86E0F801ABEAB1E0D6
+:102D800001900D928A95E1F72DC04D875E878D8564
+:102D90009E850E946C14811140CF8091B0018160AA
+:102DA0008093B001C8010E943F111CC0662309F442
+:102DB00058CF4D875E878D859E850E946C14882331
+:102DC00009F44FCF2ACF811148CF0CC024303105F0
+:102DD0000CF047CF9F7009F440CFF8019581907FA8
+:102DE00009F03BCF8F2D62960FB6F894DEBF0FBE71
+:102DF000CDBFDF91CF911F910F91FF90EF90DF90AA
+:102E0000CF9008951F93CF93DF93CDB7DEB72C9764
+:102E10000FB6F894DEBF0FBECDBF4F8358876987CA
+:102E20007A878B879C87CE0107960E943B15882363
+:102E300069F08F8198852A853B85232BF1F19F3F8F
+:102E400009F063C08F3F09F060C037C086E0FE0123
+:102E50003796DE01119601900D928A95E1F76F8108
+:102E60007885EA85FB85309741F17F3F11F46F3F0C
+:102E700021F120917A0130E0C901019687709927EC
+:102E80004091790150E08417950709F447C06983A0
+:102E90007A83FD83EC8396E0929FD001939FB00DDF
+:102EA0001124A558BE4FFE01319601900D929A95BE
+:102EB000E1F780937A010E94B11416E080917901C4
+:102EC00090917A018917C1F1189FC001112485588A
+:102ED0009E4F0E943B15882379F1E09179011E9F56
+:102EE000F0011124E558FE4F4081518162817381C8
+:102EF000848195810E94A1148091790190E00196CE
+:102F00008770992780937901D9CF4F81588569853A
+:102F10007A858B859C850E94A114CFCF0E9468146E
+:102F200010927A0110927901EBEAF1E086E0DF017C
+:102F30001D928A95E9F7C1CF2C960FB6F894DEBFA3
+:102F40000FBECDBFDF91CF911F910895EF92FF92F9
+:102F50000F931F93CF93DF938C01892B09F46CC0DF
+:102F6000F12CEE24E394E8012196F8018491843752
+:102F700040F4843008F051C0813081F0823019F182
+:102F80005BC0853709F444C0A8F19CE7980F9037DF
+:102F900008F052C08F770E94E21041C00E5F1F4FB1
+:102FA000FE01C49180E28C0F883048F4C7708E2DEA
+:102FB00001C0880FCA95EAF70E94341A14C08C2FFA
+:102FC0000E941A102DC00E5F1F4FFE01C49180E2B7
+:102FD0008C0F883058F4C7708E2D01C0880FCA95A9
+:102FE000EAF70E943A1A0E945B1A1AC08C2F0E94BC
+:102FF000E21016C00E5F1F4FFE01C491CC2381F07A
+:103000008FE99FE00197F1F700C00000C150F6CFB3
+:103010000E5F1F4FFE01F49003C00E941A108E0134
+:103020008F2D882309F49FCFEFE9FFE03197F1F767
+:1030300000C000008150F5CFDF91CF911F910F911B
+:10304000FF90EF90089508956093B5017093B601D5
+:103050008093B7019093B8010C9456140F931F936B
+:103060000091B5011091B6012091B7013091B801DE
+:10307000DC01CB01802B912BA22BB32B8093B501CC
+:103080009093B601A093B701B093B8011F910F912F
+:103090000C9456140F931F930091B5011091B60133
+:1030A0002091B7013091B801DC01CB01802391233D
+:1030B000A223B3238093B5019093B601A093B701E7
+:1030C000B093B8011F910F910C9456140F931F9356
+:1030D0000091B5011091B6012091B7013091B8016E
+:1030E000DC01CB0180279127A227B3278093B5016C
+:1030F0009093B601A093B701B093B8011F910F91BF
+:103100000C9456141092B1011092B2011092B301B6
+:103110001092B4010C94561441E050E060E070E06D
+:1031200004C0440F551F661F771F8A95D2F740933E
+:10313000B1015093B2016093B3017093B4010C9448
+:10314000561441E050E060E070E004C0440F551FA9
+:10315000661F771F8A95D2F78091B1019091B201D5
+:10316000A091B301B091B401482B592B6A2B7B2B52
+:103170004093B1015093B2016093B3017093B401D5
+:103180000C94561441E050E060E070E004C0440F3D
+:10319000551F661F771F8A95D2F740955095609509
+:1031A00070958091B1019091B201A091B301B0915D
+:1031B000B401482359236A237B234093B1015093E0
+:1031C000B2016093B3017093B4010C94561441E0C2
+:1031D00050E060E070E004C0440F551F661F771F89
+:1031E0008A95D2F78091B1019091B201A091B3017B
+:1031F000B091B401482759276A277B274093B10132
+:103200005093B2016093B3017093B4010C945614BF
+:103210000F931F930091B1011091B2012091B3015E
+:103220003091B401DC01CB01802B912BA22BB32B6D
+:103230008093B1019093B201A093B301B093B40114
+:103240001F910F910C9456140F931F930091B1018D
+:103250001091B2012091B3013091B401DC01CB0196
+:1032600080239123A223B3238093B1019093B201D1
+:10327000A093B301B093B4011F910F910C94561415
+:103280000F931F930091B1011091B2012091B301EE
+:103290003091B401DC01CB0180279127A227B3270D
+:1032A0008093B1019093B201A093B301B093B401A4
+:1032B0001F910F910C9456140895CF92DF92EF92C4
+:1032C000FF920F931F93CF93DF938C01C090B501B2
+:1032D000D090B601E090B701F090B8014091B101F3
+:1032E0005091B2016091B3017091B401C42AD52A02
+:1032F000E62AF72ACFE1D0E0D701C6010C2E04C0A0
+:10330000B695A795979587950A94D2F780FF07C041
+:10331000B8018C2F0E94B9068130910531F42197B4
+:1033200058F7B80180E00E94B906DF91CF911F9154
+:103330000F91FF90EF90DF90CF90089590910C0146
+:10334000992321F090910D01911109C020910E0156
+:1033500030910F01F90132969FEF40E01FC0982F86
+:103360009695969596959F3050F5E0910E01F091C7
+:103370000F01E90FF11D877021E030E0A90102C0C3
+:10338000440F551F8A95E2F7CA019181892B8183E9
+:1033900008959F3F39F04F5F4E3041F051915813DF
+:1033A000F8CF0DC05111F7CF942FF5CF9F3F39F0D3
+:1033B000F901E90FF11D97FDFA95828308950895AB
+:1033C00090910C01992321F090910D01911109C068
+:1033D00020910E0130910F01F9013296205F3F4F8D
+:1033E0001FC0982F9695969596959F30F0F4E09192
+:1033F0000E01F0910F01E90FF11D877021E030E01F
+:10340000A90102C0440F551F8A95E2F7CA018095B1
+:1034100091818923818308953196E217F30729F07A
+:1034200090819813F9CF1082F7CF089581E090E052
+:10343000E0910E01F0910F01E80FF91F1082019643
+:1034400080319105A9F708959091CB01892B809344
+:10345000CB01089580959091CB0189238093CB0176
+:1034600008951092CB0108959091CA01892B809301
+:10347000CA01089580959091CA0189238093CA0159
+:1034800008951092CA0108958093B9010895109289
+:10349000B901089580910E0190910F01FC013196C0
+:1034A0009C01205F3F4F80E0919191118F5FE21767
+:1034B000F307D1F70895E0910E01F0910F0180918B
+:1034C000CB018083E0910E01F0910F0190818091FA
+:1034D000CA01892B80838091B901882361F0E09132
+:1034E0000E01F0910F019081892B80830E944A1A6E
+:1034F00081111092B90180910E0190910F010C94ED
+:10350000FE0ECF92DF92EF92FF926C01EE24FF2429
+:10351000C114D104E104F10421F0C701B60120E196
+:1035200001C020E0C72ED82EE92EFF24C114D104FB
+:10353000E104F10419F0285FC701B6016B017C01B9
+:1035400054E0F694E794D794C7945A95D1F7C114F0
+:10355000D104E104F10419F02C5FC701B6016B013D
+:103560007C0142E0F694E794D794C7944A95D1F74A
+:10357000C114D104E104F10419F02E5FC701B601B2
+:10358000DC01CB01B695A79597958795892B8A2B5A
+:103590008B2B09F02F5F822FFF90EF90DF90CF9061
+:1035A00008958091E501843009F11092CD0120E465
+:1035B00088E190E00FB6F894A895809360000FBE64
+:1035C0002093600083B7817F846083BF83B781606D
+:1035D00083BF7894889583B78E7F83BF88E10FB6C9
+:1035E000F89480936000109260000FBE08950895D3
+:1035F0000895CF930E94F71A0E94DE040E94F81AE1
+:10360000C0E08C2F0E94D005811104C0CF5FCE3066
+:10361000C1F701C081E0CF9108950E9468140E9413
+:10362000F20E0C94EC0782E084BD93E095BD9AEF16
+:1036300097BD80936E0008952FB7F8948091CE01C6
+:103640009091CF01A091D001B091D1012FBF0895E9
+:10365000CF92DF92EF92FF920F931F932FB7F894C0
+:103660004091CE015091CF016091D0017091D10174
+:103670002FBF6A017B01EE24FF248C0120E030E0A3
+:10368000C016D106E206F30610F4415051099A0122
+:10369000281B390BC9011F910F91FF90EF90DF900C
+:1036A000CF9008951F920F920FB60F9211248F930F
+:1036B0009F93AF93BF938091CE019091CF01A09142
+:1036C000D001B091D1010196A11DB11D8093CE0111
+:1036D0009093CF01A093D001B093D101BF91AF914E
+:1036E0009F918F910F900FBE0F901F9018950E9481
+:1036F000EF0BF8942FEF87EA91E62150804090403D
+:10370000E1F700C0000087E090EBDC018093EE0160
+:103710009093EF01A093F001B093F1019CE088E158
+:103720000FB6F894A895809360000FBE9093600048
+:10373000FFCFEF92FF920F931F93CF93DF93D82F7A
+:10374000C0E08C2F0E94D00500E010E0E82EF12CA4
+:10375000C701002E02C0959587950A94E2F780FD77
+:1037600006C00F5F1F4F0630110591F709C0602F8B
+:103770007C2F80E00E949706D813F3CF81E004C02D
+:10378000CF5FCE30F1F680E0DF91CF911F910F91A6
+:10379000FF90EF900895CF93C82F8CE20E94991B61
+:1037A000882321F08C2FCF910C94991B80E0CF912E
+:1037B0000895CF930E94201D811102C00E94061D12
+:1037C000C5E6C15049F00E94DE048FE39CE90197F1
+:1037D000F1F700C00000F5CF89E20E94CB1B8111F8
+:1037E00013C18AE20E94CB1B81110E94061D85E055
+:1037F0000E94CB1B81110E94771B0E942B1D80937E
+:10380000CC0187E00E94CB1B8823A9F18BE10E94A9
+:10381000CB1B882351F08091CC0181FB222720F91A
+:1038200091E0922790FB81F90EC08EE00E94CB1BA5
+:10383000882361F08091CC0182FB222720F991E05E
+:10384000922790FB82F98093CC0115C080E10E9401
+:10385000CB1B9091CC01882341F093FB222720F9C8
+:1038600081E0822780FB93F904C0892F809580FB3B
+:1038700090F99093CC018091CC010E942F1D0E9461
+:103880003D1D8093DF0180EE0E94CB1B882341F019
+:103890008091DF01982F909590FB80F98093DF0154
+:1038A00089E30E94CB1B882359F08091DF0181FBC3
+:1038B000222720F991E0922790FB81F98093DF0184
+:1038C00082EE0E94CB1B882359F08091DF0182FB9E
+:1038D000222720F991E0922790FB82F98093DF0163
+:1038E00086EE0E94CB1B882359F08091DF0183FB79
+:1038F000222720F991E0922790FB83F98093DF0142
+:1039000083EE0E94CB1B882359F08091DF0184FB5A
+:10391000222720F991E0922790FB84F98093DF0120
+:1039200085E30E94CB1B882359F08091DF0185FB42
+:10393000222720F991E0922790FB85F98093DF01FF
+:1039400081E30E94CB1B882359F08091DF0186FB25
+:10395000222720F991E0922790FB86F98093DF01DE
+:1039600081E10E94CB1B882359F08091DF0187FB06
+:10397000222720F991E0922790FB87F98093DF01BD
+:103980008091DF010E94411D8091DF0187FB882724
+:1039900080F980930D0187E20E94CB1BC82F8EE136
+:1039A0000E94CB1B8111C2608FE10E94CB1B811151
+:1039B000C46080E20E94CB1B8111C86081E20E943A
+:1039C000CB1B8111C06182E20E94CB1B8111C062BE
+:1039D00083E20E94CB1B8111C06484E20E94CB1B56
+:1039E000882311F0C06802C0CC2329F08C2F0E94DC
+:1039F000381D6C2F03C00E94341D682F70E080E0DA
+:103A000090E0CF910C942418CF9108956DEE7EEF45
+:103A100080E090E00E946C2360E082E090E00E94F1
+:103A20005E2360E083E090E00E945E2360E084E03B
+:103A300090E00E945E2360E085E090E00C945E23BD
+:103A400080E090E00E94582321E08D3E9E4F09F0D7
+:103A500020E0822F089582E090E00C945023682F9C
+:103A600082E090E00C945E2383E090E00C9450237D
+:103A7000682F83E090E00C945E2384E090E00C9447
+:103A80005023682F84E090E00C945E238091D40151
+:103A900080FF0BC06091130185E0689FB001112485
+:103AA00075956795759567952BC081FF09C06091E5
+:103AB000130185E0689FB00111247595679520C0BA
+:103AC00082FF07C06091130185E0689FB001112457
+:103AD00017C09091D5019923D1F0609112019617EA
+:103AE00088F72091130185E0289F90011124929F6F
+:103AF000A001939F500D112470E0CA010E9422235F
+:103B00006038710540F46115710539F002C065E057
+:103B100070E0862F08958FE7089581E008958091E1
+:103B2000D40180FF08C06091110170E07595679520
+:103B30007595679521C081FF06C06091110170E005
+:103B40007595679519C082FF04C06091110170E0FE
+:103B500010C09091D5019923C1F060911001961782
+:103B6000A0F780911101899FC001112470E00E948B
+:103B700022236038710528F46115710521F0862F24
+:103B800008958FE7089581E0089561E070E0F4CF33
+:103B9000803F21F40E94461D819504C0813F29F495
+:103BA0000E94461D8093D8010895823F21F40E940F
+:103BB000461D819504C0833F29F40E94461D8093D1
+:103BC000D7010895893F19F40E948F1D05C08A3FCF
+:103BD00031F40E948F1D81958093D90108958B3F08
+:103BE00021F40E948F1D819504C08C3F29F40E940E
+:103BF0008F1D8093DA010895843F21F48091D601CE
+:103C0000816017C0853F21F48091D601826011C088
+:103C1000863F21F48091D60184600BC0873F21F458
+:103C20008091D601886005C0883F31F48091D6012B
+:103C300080618093D60108958D3F21F48091D40155
+:103C400081600BC08E3F21F48091D401826005C059
+:103C50008F3F29F48091D40184608093D40108952A
+:103C6000803F39F48091D80187FF6CC01092D80151
+:103C700069C0813F29F48091D8011816BCF362C055
+:103C80009091D701823F29F497FF5CC01092D70131
+:103C900059C0833F19F41916CCF354C0893F41F43D
+:103CA0008091D90118160CF04DC01092D9014AC06C
+:103CB0008A3F29F48091D90187FF44C0F6CF8B3F1A
+:103CC00039F48091DA0187FF3DC01092DA013AC0E1
+:103CD0008C3F29F48091DA011816BCF333C0843F7D
+:103CE00021F48091D6018E7F17C0853F21F4809109
+:103CF000D6018D7F11C0863F21F48091D6018B7F44
+:103D00000BC0873F21F48091D601877F05C0883F93
+:103D100031F48091D6018F7E8093D60113C08D3F00
+:103D200021F48091D4018E7F0BC08E3F21F48091CD
+:103D3000D4018D7F05C08F3F29F48091D4018B7F02
+:103D40008093D4018091D70181110EC08091D80158
+:103D500081110AC08091D901811106C08091DA01D8
+:103D6000811102C01092D501089586ED91E00E9464
+:103D7000090F0E941C1B9093D3018093D2010895D8
+:103D80001F93CF93DF938091D2019091D3010E9432
+:103D9000281BAC019091D501992321F020911401A9
+:103DA00030E006C0209115018AE0289F900111247F
+:103DB0004217530708F486C08091D701C091D801FB
+:103DC000D091D9011091DA01811107C0C11176C0DB
+:103DD000D11174C0111172C075C09F3F19F09F5F5F
+:103DE0009093D501181624F40E94461D8093D701A4
+:103DF0008091D70187FF05C00E94461D8195809361
+:103E0000D7011C1624F40E94461D8093D80180918E
+:103E1000D80187FF05C00E94461D81958093D80177
+:103E20006091D701662339F1C091D801CC2319F1F3
+:103E3000772767FD7095872F972F0E94332223E302
+:103E400033E343E35FE30E9497220E9400226093E2
+:103E5000D7016C2F772767FD7095872F972F0E94CA
+:103E6000332223E333E343E35FE30E9497220E947C
+:103E700000226093D8011D1624F40E948F1D8093A8
+:103E8000D9018091D90187FF05C00E948F1D8195BE
+:103E90008093D901111624F40E948F1D8093DA01BA
+:103EA0008091DA0187FF05C00E948F1D8195809364
+:103EB000DA01DF91CF911F910C94B51E9F3F09F05D
+:103EC0008ECF96CFDF91CF911F910895E6EDF1E06F
+:103ED00085E0DF011D928A95E9F71092D5011092D5
+:103EE000D4010895833081F128F4813059F0823073
+:103EF000D1F00895853009F449C0B8F1863009F44D
+:103F000056C0089580911501262F30E0280F311DED
+:103F10002F3F310524F4680F6093150108958FEF4A
+:103F200080931501089580911401262F30E0280F09
+:103F3000311D2F3F310524F4680F6093140108955B
+:103F40008FEF80931401089580911301262F30E0A4
+:103F5000280F311D2F3F310524F4680F60931301A2
+:103F600008958FEF80931301089580911201262FF9
+:103F700030E0280F311D2F3F310524F4680F609386
+:103F8000120108958FEF809312010895809111011D
+:103F9000262F30E0280F311D2F3F310524F4680F04
+:103FA0006093110108958FEF80931101089580911E
+:103FB0001001262F30E0280F311D2F3F310524F44A
+:103FC000680F6093100108958FEF8093100108959A
+:103FD000833011F128F4813049F0823091F0089556
+:103FE000853081F120F18630C1F10895809115016D
+:103FF000681720F4861B809315010895109215010F
+:10400000089580911401681720F4861B8093140191
+:10401000089510921401089580911301681720F4F7
+:10402000861B8093130108951092130108958091C7
+:104030001201681720F4861B8093120108951092D4
+:104040001201089580911101681720F4861B809356
+:1040500011010895109211010895809110016817BF
+:1040600020F4861B8093100108951092100108958A
+:104070000F931F938D3109F46BC008F03FC08E3051
+:1040800009F47DC0C0F4873009F46EC068F486304E
+:1040900009F0AFC08091CC01817F8E7F8093CC01ED
+:1040A00081E08093DC01A6C0883009F458C08B30D1
+:1040B00009F49BC09EC0863109F497C078F4803122
+:1040C00009F470C0813109F094C00E946814909185
+:1040D0000D0181E0892780930D0187C0893109F4A2
+:1040E00084C08B3109F085C08091CC0181FB2227EF
+:1040F00020F991E0922790FB81F94AC0853309F4B9
+:104100005BC048F4873209F457C008F45AC08932BA
+:1041100009F452C06EC0833438F48A3308F067C0A3
+:10412000883309F462C065C0833409F445C088341B
+:1041300009F05FC00E9468140FEF13ED20E30150F7
+:1041400010402040E1F700C000000E94771B4DC0E6
+:104150000E94BA210E94F20E0E94EC0746C00E9403
+:104160002B1D0E943D1D41C09091CC01892F817073
+:1041700090FF12C0917F9E7F9093CC013BC08091B5
+:10418000CC0182FB222720F991E0922790FB82F953
+:104190008093CC01992349F18091CC018160809377
+:1041A000CC0123C08091CC0183FB222720F991E030
+:1041B000922790FB83F9ECCF61E070E080E090E023
+:1041C00010C08D5141E050E060E070E08A019B0139
+:1041D00004C0000F111F221F331F8A95D2F7C90197
+:1041E000B8010E9424180E94681481E003C089531A
+:1041F000E9CF80E01F910F91089580E0089580E05D
+:104200000895CF93C82F8091DC01813079F018F0A8
+:104210008230E9F187C0E0910E01F0910F018081B9
+:10422000813169F0823209F07FC009C0E0910E014E
+:10423000F0910F018081813111F0823261F48C2F75
+:104240000E94FD20811104C08C2F0E9438201DC0C7
+:1042500081E090E01AC08C2F0E94FF20811114C0D1
+:10426000C43179F048F4CB3079F0C03109F060C046
+:1042700082E08093DC0108C0C93219F0C83321F014
+:1042800057C01092DC0154C081E0817053C0C93224
+:1042900089F118F5C43171F1A8F4C73009F046C0AE
+:1042A0008AE08093150194E19093140193E0909338
+:1042B00013018093120188E08093110188E28093BA
+:1042C000100134C0CE51C63088F5EC2FF0E0E65D29
+:1042D000FE4F80818093DB0129C0CE34E9F020F4C9
+:1042E000CB3421F56AE013C0C13579F0C235F1F461
+:1042F00061E00DC08091DB01882319F01092DB0191
+:1043000015C081E08093DC0115C061E006C080919A
+:10431000DB010E94721F0AC06AE08091DB010E94EB
+:10432000E81F04C01092DC0180E004C081E002C0FC
+:1043300080E0ABCFCF910895E1E8F0E08081886024
+:1043400080838081816080838FB7F89493E090931D
+:10435000890090ED909388008FBF0895EFE6F0E01C
+:104360008081826080830895EFE6F0E080818D7F18
+:1043700080830895EFE6F0E0908182E089278083D2
+:1043800008951F920F920FB60F9211242F933F930F
+:104390004F935F936F937F938F939F93AF93BF934D
+:1043A000EF93FF938091DD019091DE010196909350
+:1043B000DE018093DD01811103C082E00E94EC07E1
+:1043C000E091DE01E695E695F0E0E652FA4FE491E1
+:1043D0008091DD018E1303C080E00E94EC07FF9105
+:1043E000EF91BF91AF919F918F917F916F915F916D
+:1043F0004F913F912F910F900FBE0F901F901895E6
+:1044000004D06894B1118DC0089570D088F09F5782
+:1044100090F0B92F9927B751A0F0D1F0660F771F10
+:10442000881F991F1AF0BA95C9F712C0B13081F0F0
+:1044300077D0B1E0089574C0672F782F8827B85FD0
+:1044400039F0B93FCCF3869577956795B395D9F751
+:104450003EF490958095709561957F4F8F4F9F4F5B
+:104460000895E89409C097FB3EF490958095709567
+:1044700061957F4F8F4F9F4F9923A9F0F92F96E9B0
+:10448000BB279395F695879577956795B795F11125
+:10449000F8CFFAF4BB0F11F460FF1BC06F5F7F4FC2
+:1044A0008F4F9F4F16C0882311F096E911C07723D4
+:1044B00021F09EE8872F762F05C0662371F096E8DD
+:1044C000862F70E060E02AF09A95660F771F881FAC
+:1044D000DAF7880F9695879597F9089557FD9058C4
+:1044E000440F551F59F05F3F71F04795880F97FBB8
+:1044F000991F61F09F3F79F0879508951216130672
+:104500001406551FF2CF4695F1DF08C016161706A0
+:104510001806991FF1CF86957105610508940895D5
+:10452000E894BB2766277727CB0197F908950BD02E
+:1045300078C069D028F06ED018F0952309F05AC0E1
+:104540005FC01124EECFCADFA0F3959FD1F3950F82
+:1045500050E0551F629FF001729FBB27F00DB11D07
+:10456000639FAA27F00DB11DAA1F649F6627B00D97
+:10457000A11D661F829F2227B00DA11D621F739F80
+:10458000B00DA11D621F839FA00D611D221F749F8E
+:104590003327A00D611D231F849F600D211D822FD5
+:1045A000762F6A2F11249F5750408AF0E1F088231C
+:1045B0004AF0EE0FFF1FBB1F661F771F881F915029
+:1045C0005040A9F79E3F510570F014C0AACF5F3F3D
+:1045D000ECF3983EDCF3869577956795B795F7955C
+:1045E000E7959F5FC1F7FE2B880F911D96958795E4
+:1045F00097F9089597F99F6780E870E060E0089563
+:104600009FEF80EC089500240A94161617061806EA
+:104610000906089500240A941216130614060506C6
+:104620000895092E0394000C11F4882352F0BB0F57
+:1046300040F4BF2B11F460FF04C06F5F7F4F8F4FBA
+:104640009F4F089597FB072E16F4009407D077FD2F
+:1046500009D00E943C2307FC05D03EF4909581953B
+:104660009F4F0895709561957F4F0895EE0FFF1F3E
+:104670000590F491E02D0994AA1BBB1B51E107C0E2
+:10468000AA1FBB1FA617B70710F0A61BB70B881FE2
+:10469000991F5A95A9F780959095BC01CD01089571
+:1046A000F999FECF92BD81BDF89A992780B50895FA
+:1046B000A8E1B0E042E050E00C947323262FF99972
+:1046C000FECF1FBA92BD81BD20BD0FB6F894FA9AF5
+:1046D000F99A0FBE019608950E945E23272F0C942D
+:1046E0005F23DC01CB01FC01F999FECF06C0F2BDCE
+:1046F000E1BDF89A319600B40D9241505040B8F7A0
+:064700000895F894FFCFBC
+:104706002002ED077B0858082408F0070101BA01CA
+:1047160028080A03140A3F4D36399B054E0518052D
+:10472600DF0472048B04A404BD040102030405061D
+:044736000708090067
+:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/jacobono/keymap.c b/keyboard/ergodox_ez/keymaps/jacobono/keymap.c new file mode 100644 index 000000000..ed8dfc731 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/jacobono/keymap.c @@ -0,0 +1,273 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" + +#define COLEMAK 0 // new colemak layout +#define QWERTY 1 // default layer +#define SYMB 2 // symbols +#define NUMPAD 3 // number pad +#define MDIA 4 // media keys + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap 0: Basic COLEMAK layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | F | P | G | | | | J | L | U | Y | ; | TAB | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | BkSp | A | R | S | T | D |------| |------| H | N | E | I | O | DEL | + * |--------+------+------+------+------+------| | LGUI(TAB)------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | K | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | L1 | | | UP |MO(L2)| |MO(L2)| Down | | ALT | RGUI | + * `----------------------------------' `------------------------------------' + * ,-------------. ,---------------. + * | LGUI | App | |Ctrl/Esc| Alt | + * ,------|------|------| |--------+--------+------. + * | | |QUKSL | | QUKSL | | | + * |Space |ENTER |------| |--------| ENTER |Space | + * | | |MO(L3)| | MO(L3) | | | + * `--------------------' `------------------------' + */ + + // If it accepts an argument (i.e, is a function), it doesn't need KC_. + // Otherwise, it needs KC_* + [COLEMAK] = KEYMAP( // layer 0 : Colemak layout default layer + // left hand + KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_TRNS, + KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_TRNS, + TG(QWERTY), KC_TRNS, KC_TRNS,KC_UP, MO(SYMB), + KC_LGUI, KC_APP, + LGUI(S(KC_SPC)), + KC_SPC,KC_ENT,MO(NUMPAD), + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DELT, + KC_TRNS, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_TAB, + KC_H, KC_N, KC_E, KC_I, KC_O, KC_DEL, + LGUI(KC_TAB), KC_K, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + MO(SYMB), KC_DOWN, KC_TRNS, KC_RALT, KC_RGUI, + CTL_T(KC_ESC), KC_LALT, + LGUI(S(KC_SPC)), + MO(NUMPAD), KC_ENT, KC_SPC), + + /* Keymap 1: Basic QWERTY layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | BkSp | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | DEL | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Tab | Q | W | E | R | T | L0 | | L0 | Y | U | I | O | P | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Ctrl | A | S | D | F | G |------| |------| H | J | K | L |; / L4| CTRL | + * |--------+------+------+------+------+------| Alt | | Alt |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | N | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L3| '" |AltShf| Left |MO(L2)| |MO(L2)| Down | [ | ] | ~L3 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,---------------. + * | Tab | BkSp | | Alt |Ctrl/Esc| + * ,------|------|------| |------+--------+------. + * | | | Home | | PgUp | | | + * | Space| LGUI |------| |------| RGUI |Enter | + * | | | End | | PgDn | | | + * `--------------------' `----------------------' + */ + // If it accepts an argument (i.e, is a function), it doesn't need KC_. + // Otherwise, it needs KC_* + [QWERTY] = KEYMAP( // layer 1 + // left hand + KC_BSPC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TRNS, + KC_LCTRL, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_LALT, + KC_TRNS, KC_QUOT, LALT(KC_LSFT), KC_LEFT, MO(SYMB), + KC_TAB, KC_DELT, + KC_HOME, + KC_SPC, KC_LGUI, KC_END, + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DELT, + KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), KC_RCTRL, + KC_RALT, KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + MO(SYMB), KC_DOWN, KC_LBRC, KC_RBRC, KC_FN1, + KC_LALT, CTL_T(KC_ESC), + KC_PGUP, + KC_PGDN, KC_RGUI, KC_ENT), + + + /* Keymap 2: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | @ | * | = | _ | | | | ~ | { | } | # | : | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | ! | + | - | " |------| |------| " | ( | ) | ' | ` | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | % | ^ | $ | & | | | | ; | [ | ] | \ | / | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ + // SYMBOL + [SYMB] = KEYMAP( + // left hand + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS, KC_TRNS, KC_AT, KC_ASTR, KC_EQL, KC_UNDS, KC_TRNS, + KC_TRNS, KC_PIPE, KC_EXLM, KC_PLUS, KC_MINS, S(KC_QUOTE), + KC_TRNS, KC_TRNS, KC_PERC, KC_CIRC, KC_DLR, KC_AMPR, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_TILD, KC_LCBR, KC_RCBR, KC_HASH, S(KC_SCLN), KC_F12, + S(KC_QUOTE),KC_LPRN, KC_RPRN, KC_QUOTE, KC_GRV, KC_TRNS, + KC_TRNS, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_SLSH, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS), + + /* Keymap 3: Numpad Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | UP | | | | | | $ | 7 | 8 | 9 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | LEFT | DOWN | RIGHT| |------| |------| = | 4 | 5 | 6 | - | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | 1 | 2 | 3 | * | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | , | 0 | . | / | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ + // Numpad + [NUMPAD] = KEYMAP( + // left hand + 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_RIGHT,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_DLR, KC_7, KC_8, KC_9, KC_PLUS, KC_TRNS, + KC_EQL, KC_4, KC_5, KC_6, KC_MINS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_ASTR, KC_TRNS, + KC_COMMA,KC_0, KC_DOT, KC_SLSH, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS), + + /* Keymap 4: Media and mouse keys + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | | | MsUp | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | |MsLeft|MsDown|MsRght| |------| |------| | | | | | Play | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | Prev | Next | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | Lclk | Rclk | |VolUp |VolDn | Mute | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | |Brwser| + * | | |------| |------| |Back | + * | | | | | | | | + * `--------------------' `--------------------' + */ + // MEDIA AND MOUSE + KEYMAP( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, + // right hand + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_WBAK), +}; + +const uint16_t PROGMEM fn_actions[] = { + [1] = ACTION_LAYER_TAP_TOGGLE(SYMB) // FN1 - Momentary Layer 1 (Symbols) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + // MACRODOWN only works in this function + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + } + return MACRO_NONE; +}; + +// Runs just one time when the keyboard initializes. +void * matrix_init_user(void) { + +}; + +// Runs constantly in the background, in a loop. +void * matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case 1: + ergodox_right_led_1_on(); + break; + case 2: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } + +}; diff --git a/keyboard/ergodox_ez/keymaps/mpiechotka/keymap.c b/keyboard/ergodox_ez/keymaps/mpiechotka/keymap.c new file mode 100644 index 000000000..178c29066 --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/mpiechotka/keymap.c @@ -0,0 +1,271 @@ +#include "ergodox_ez.h" +#include "debug.h" +#include "action_layer.h" +#include "keymap_extras/keymap_colemak.h" + +enum { + BASE = 0, + BASE_CM, + SYMB, + MACR +}; + +enum { + LWIN = 1, + PC1, + PC2, + PC3, + PC4, + DL_BASE, + DL_BASE_CM, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap 0a: Basic layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | F | P | G | L1 | | L1 | J | L | U | Y | ; | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Esc | A | R | S | T | D |------| |------| H | N | E | I | O | ' | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | K | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LAlt | LGui | | LAlt | RAlt | + * ,------|------|------| |------+--------+------. + * | |Backsp| Home | | PgUp | | | + * | Space|ace/ |------| |------| Tab/ |Enter/| + * | /Shft|Ctrl | 1) | | 2) | Ctrl |Shift | + * `--------------------' `----------------------' + * + * 1) End/L1 + * 2) PgDown/L2 + */ +[BASE] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, KC_Q, KC_W, KC_F, KC_P, KC_G, TG(SYMB), + KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT, KC_RGHT, + KC_LALT, F(LWIN), + KC_HOME, + SFT_T(KC_SPC),CTL_T(KC_BSPC),LT(SYMB, KC_END), + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS, + KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + MEH_T(KC_NO),KC_K, KC_M, KC_COMM,KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, LT(SYMB,KC_NO), + KC_LALT, KC_RALT, + KC_PGUP, + LT(MACR,KC_PGDN),CTL_T(KC_TAB), SFT_T(KC_ENT) + ), +/* Keymap 0b: Basic layer (Colemak keycodes or QWERTY) + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | = | 1 | 2 | 3 | 4 | 5 | LEFT | | RIGHT| 6 | 7 | 8 | 9 | 0 | - | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | Del | Q | W | F | P | G | L1 | | L1 | J | L | U | Y | ; | \ | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | Esc | A | R | S | T | D |------| |------| H | N | E | I | O | ' | + * |--------+------+------+------+------+------| Hyper| | Meh |------+------+------+------+------+--------| + * | LShift |Z/Ctrl| X | C | V | B | | | | K | M | , | . |//Ctrl| RShift | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * |Grv/L1| '" |AltShf| Left | Right| | Up | Down | [ | ] | ~L1 | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | LAlt | LGui | | LAlt | RAlt | + * ,------|------|------| |------+--------+------. + * | |Backsp| Home | | PgUp | | | + * | Space|ace/ |------| |------| Tab/ |Enter/| + * | /Shft|Ctrl | 1) | | 2) | Ctrl |Shift | + * `--------------------' `----------------------' + * + * 1) End/L1 + * 2) PgDown/L2 + */ +[BASE_CM] = KEYMAP( // layer 0 : default + // left hand + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, + KC_DELT, CM_Q, CM_W, CM_F, CM_P, CM_G, TG(SYMB), + KC_ESC, CM_A, CM_R, CM_S, CM_T, CM_D, + KC_LSFT, CM_Z, CM_X, CM_C, CM_V, CM_B, ALL_T(KC_NO), + LT(SYMB,KC_GRV),KC_QUOT, LALT(KC_LSFT), KC_LEFT, KC_RGHT, + KC_LALT, F(LWIN), + KC_HOME, + SFT_T(KC_SPC),CTL_T(KC_BSPC),LT(SYMB, KC_END), + // right hand + KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + TG(SYMB), CM_J, CM_L, CM_U, CM_Y, KC_P, /*CM_SCLN*/ KC_BSLS, + CM_H, CM_N, CM_E, CM_I, CM_O, KC_QUOT, + MEH_T(KC_NO),CM_K, CM_M, CM_COMM,CM_DOT, CTL_T(CM_SLSH), KC_RSFT, + KC_UP, KC_DOWN,KC_LBRC,KC_RBRC, LT(SYMB,KC_NO), + KC_LALT, KC_RALT, + KC_PGUP, + LT(MACR,KC_PGDN),CTL_T(KC_TAB), SFT_T(KC_ENT) + ), +/* Keymap 1: Symbol Layer + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | ! | @ | { | } | | | | | | Up | 7 | 8 | 9 | * | F12 | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | # | $ | ( | ) | ` |------| |------| Down | 4 | 5 | 6 | + | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | % | ^ | [ | ] | ~ | | | | & | 1 | 2 | 3 | \ | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | . | 0 | = | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// SYMBOLS +[SYMB] = KEYMAP( + // left hand + KC_TRNS,KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, + KC_TRNS,KC_EXLM,KC_AT, KC_LCBR,KC_RCBR,KC_PIPE,KC_TRNS, + KC_TRNS,KC_HASH,KC_DLR, KC_LPRN,KC_RPRN,KC_GRV, + KC_TRNS,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD,KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, + KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, + KC_TRNS, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, + KC_TRNS,KC_DOT, KC_0, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +/* Keymap 2: Macros + * + * ,--------------------------------------------------. ,--------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |--------+------+------+------+------+-------------| |------+------+------+------+------+------+--------| + * | | DLa | DLb | | | | | | | | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | PC1 | PC2 | PC3 | PC4 | |------| |------| | | | | | | + * |--------+------+------+------+------+------| | | |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | + * `--------+------+------+------+------+-------------' `-------------+------+------+------+------+--------' + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + * ,-------------. ,-------------. + * | | | | | | + * ,------|------|------| |------+------+------. + * | | | | | | | | + * | | |------| |------| | | + * | | | | | | | | + * `--------------------' `--------------------' + */ +// MACROS +[MACR] = KEYMAP( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, F(DL_BASE),F(DL_BASE_CM),KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, F(PC1), F(PC2), F(PC3), F(PC4), KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS +), +}; + +const uint16_t PROGMEM fn_actions[] = { + [LWIN] = ACTION_MACRO(LWIN), + [PC1] = ACTION_MACRO(PC1), + [PC2] = ACTION_MACRO(PC2), + [PC3] = ACTION_MACRO(PC3), + [PC4] = ACTION_MACRO(PC4), + [DL_BASE] = ACTION_DEFAULT_LAYER_SET(BASE), + [DL_BASE_CM] = ACTION_DEFAULT_LAYER_SET(BASE_CM) +}; + +const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) +{ + switch(id) { + case 0: + if (record->event.pressed) { + register_code(KC_RSFT); + } else { + unregister_code(KC_RSFT); + } + break; + case LWIN: + if (record->event.pressed) { + register_code(KC_RSFT); + unregister_code(KC_RSFT); + register_code(KC_LGUI); + } else { + unregister_code(KC_LGUI); + } + case PC1: + if (!record->event.pressed) { + return MACRO(T(SLCK), T(SLCK), T(1), T(ENT), END); + } + case PC2: + if (!record->event.pressed) { + return MACRO(T(SLCK), T(SLCK), T(2), T(ENT), END); + } + case PC3: + if (!record->event.pressed) { + return MACRO(T(SLCK), T(SLCK), T(3), T(ENT), END); + } + case PC4: + if (!record->event.pressed) { + return MACRO(T(SLCK), T(SLCK), T(4), T(ENT), END); + } + } + return MACRO_NONE; +} + +// Runs just one time when the keyboard initializes. +void * matrix_init_user(void) { + return NULL; +}; + +// Runs constantly in the background, in a loop. +void * matrix_scan_user(void) { + + uint8_t layer = biton32(layer_state); + + ergodox_board_led_off(); + ergodox_right_led_1_off(); + ergodox_right_led_2_off(); + ergodox_right_led_3_off(); + switch (layer) { + // TODO: Make this relevant to the ErgoDox EZ. + case SYMB: + ergodox_right_led_1_on(); + break; + case MACR: + ergodox_right_led_2_on(); + break; + default: + // none + break; + } +}; diff --git a/keyboard/ergodox_ez/keymaps/mpiechotka/mpiechotka.hex b/keyboard/ergodox_ez/keymaps/mpiechotka/mpiechotka.hex new file mode 100644 index 000000000..4bb17147f --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/mpiechotka/mpiechotka.hex @@ -0,0 +1,1493 @@ +:100000000C9476070C94BA070C94BA070C94BA07B0
+:100010000C94BA070C94BA070C94BA070C94BA075C
+:100020000C94BA070C94BA070C9405130C94D713CC
+:100030000C94BA070C94BA070C94BA070C94BA073C
+:100040000C94BA070C94B12C0C94BA070C94BA0710
+:100050000C94BA070C94A9220C94BA070C94BA0712
+:100060000C94BA070C94BA070C94BA070C94BA070C
+:100070000C94BA070C94BA070C94BA070C94BA07FC
+:100080000C94BA070C94BA070C94BA070C94BA07EC
+:100090000C94BA070C94BA070C94BA070C94BA07DC
+:1000A0000C94BA070C94BA070C94BA07441466145B
+:1000B000541566145415AB14CE1454152315361567
+:1000C0007D187D18AC18AC18EF182D19461B461B6F
+:1000D0004619461B471A471A1A1B461B461B311B5B
+:1000E0000147024701470247012102210128022856
+:1000F0000001470247014702470120022001280270
+:1001000028000147024701470247011F021F01283B
+:100110000228000147024701470247011E021E0153
+:1001200028022800000001C002C003C004C005C0AE
+:10013000018C028C2E004C002900E1003582000069
+:100140001E00140004001D0034004D821F001A0020
+:1001500015001B00E1042A712000090016000600AA
+:1001600050002C7221001300170019004F004A00A4
+:1001700022000A00070005000000E20050000254BF
+:100180000000007F000001204F00025400000077B3
+:100190000000E20023000D000B000E000000E6004E
+:1001A00024000F001100100052004B002500180021
+:1001B000080036005100287226001C000C00370091
+:1001C0002F002B71270033001200387130004E834E
+:1001D0002D0031003400E500008200002E004C00AC
+:1001E0002900E100358200001E00140004001D00FB
+:1001F00034004D821F001A0016001B00E1042A7112
+:10020000200008000700060050002C722100150095
+:10021000090019004F004A00220017000A000500DB
+:100220000000E200500002540000007F00000120A6
+:100230004F000254000000770000E20023001C0081
+:100240000B0011000000E600240018000D00100053
+:1002500052004B0025000C000E00360051002872A1
+:10026000260012000F0037002F002B71270013000B
+:100270003300387130004E832D0031003400E5002A
+:1002800000820000010001000100010001000000E7
+:100290003A001E0220022202010001003B001F0260
+:1002A00021022302010001003C002F0226022F0040
+:1002B000010001003D003002270230000100010072
+:1002C0003E0031023500350200000100010001004E
+:1002D0000000010000000100010001000000010019
+:1002E000000001003F005200510024020000010004
+:1002F0004000240021001E000100010041002500F3
+:1003000022001F00370001004200260023002000C9
+:1003100027000100430025022E0231002E000100BB
+:100320004400450001000100010000000000000041
+:100330000000000000000000000006200220000075
+:100340000000010000000720032000000000010061
+:100350000000000004200000000001000000000078
+:100360000520000000000100000000000000000067
+:10037000000001000000000000000000000001007B
+:10038000000000000000000000000100000000006C
+:10039000000000000000010000000000000000005C
+:1003A000000001000000000000000000000001004B
+:1003B000000000000000000000000100000000003C
+:1003C000000000000000010000000000000000002C
+:1003D000000000000A002530313662003A20002576
+:1003E000303258000A722F632030313233343536C0
+:1003F0003738394142434445460A000A0025303225
+:100400005800626F756E6365213A20006C656674F2
+:1004100020736964652061747461636865640A00AF
+:100420006C6566742073696465206E6F74207265F4
+:1004300073706F6E64696E670A00747279696E67B3
+:1004400020746F207265736574206D637032333071
+:1004500031380A005B735D004B6579626F617264CD
+:100460002073746172742E0A005B575D005B535DEC
+:10047000005B525D005B445D005B435D001603451D
+:1004800000720067006F0044006F00780020004594
+:10049000005A00000016034500720067006F004418
+:1004A000006F007800200045005A00000004030996
+:1004B0000409028D00050100A0FA090400000103EF
+:1004C000010100092111010001223F0007058103FC
+:1004D00008000A09040100010301020009211101B9
+:1004E0000001224D000705820308000A09040200EA
+:1004F0000103000000092111010001223600070557
+:10050000830308000A090403000203000000092114
+:1005100011010001222000070584032000010705C6
+:100520000403200001090404000103000000092164
+:100530001101000122390007058503100001120195
+:10054000100100000008EDFE071301000102000188
+:1005500005010906A101050719E029E71500250194
+:100560009508750181020508190129059505750190
+:10057000910295017503910105071900297715006E
+:100580002501957875018102C00631FF0974A1012A
+:100590000975150025FF952075088102097615005B
+:1005A00025FF952075089102C005010980A10185EC
+:1005B0000216010026B7001A01002AB7007510952F
+:1005C000018100C0050C0901A10185031601002667
+:1005D0009C021A01002A9C02751095018100C00539
+:1005E000010902A1010901A1000509190129051547
+:1005F00000250195057501810295017503810105AD
+:1006000001093009311581257F9502750881060998
+:10061000381581257F950175088106050C0A380279
+:100620001581257F950175088106C0C00501090661
+:10063000A101050719E029E71500250195087501B5
+:1006400081029501750881010508190129059505A3
+:10065000750191029501750391010507190029FFA4
+:10066000150025FF950675088100C00A0025303267
+:100670005820006B6579626F6172645F7265706F9C
+:1006800072743A20000A0025303258006B65796296
+:100690006F6172645F7365745F6C65643A200064B7
+:1006A000656C5F6B65795F6269743A2063616E2780
+:1006B000742064656C3A20253032580A0061646405
+:1006C0005F6B65795F6269743A2063616E2774209D
+:1006D0006164643A20253032580A00646F6E652EDA
+:1006E0000A00626F6F676D61676963207363616E93
+:1006F0003A202E2E2E2000290A002575002F0025D5
+:1007000075005D2800256400200025640020002578
+:10071000640020002564007C0025303258006D6F95
+:100720007573656B6579205B62746E7C78207920C7
+:100730007620685D287265702F61636C293A205BB2
+:10074000006D6B5F776865656C5F74696D655F747C
+:100750006F5F6D6178203D2025640A006D6B5F77C7
+:100760006865656C5F6D61785F7370656564203D79
+:100770002025640A006D6B5F74696D655F746F5F3F
+:100780006D6178203D2025640A006D6B5F6D617896
+:100790005F7370656564203D2025640A006D6B5FA2
+:1007A000696E74657276616C203D2025640A006D67
+:1007B0006B5F64656C6179203D2025640A006D6B78
+:1007C0005F776865656C5F74696D655F746F5F6D99
+:1007D0006178203D2025640A006D6B5F7768656550
+:1007E0006C5F6D61785F7370656564203D20256482
+:1007F0000A006D6B5F74696D655F746F5F6D617822
+:10080000203D2025640A006D6B5F6D61785F737019
+:10081000656564203D2025640A006D6B5F696E7418
+:10082000657276616C203D2025640A006D6B5F6403
+:10083000656C6179203D2025640A000A0025750059
+:10084000363A20776865656C5F74696D655F746FB3
+:100850005F6D61783A20000A00257500353A2077EF
+:100860006865656C5F6D61785F73706565643A207B
+:10087000000A00257500343A2074696D655F746F55
+:100880005F6D61783A20000A00257500333A206DCB
+:1008900061785F73706565643A20000A0025750011
+:1008A000323A20696E74657276616C286D73293AEC
+:1008B00020000A00257500313A2064656C617928B2
+:1008C0002A31306D73293A20000A092D2056616CB7
+:1008D000756573202D0A004D3E004D25643E2000B5
+:1008E0003F007365742064656661756C740A00432B
+:1008F0003E200077686572652064656C74613A20FB
+:10090000637572736F723D25642C20776865656C22
+:100910003D25640A53656520687474703A2F2F650D
+:100920006E2E77696B6970656469612E6F72672FCF
+:1009300077696B692F4D6F7573655F6B6579730AA6
+:10094000000A092D204D6F7573656B6579202D0A9E
+:100950004553432F713A09717569740A313A096434
+:10096000656C6179282A31306D73290A323A096938
+:100970006E74657276616C286D73290A333A096D5D
+:1009800061785F73706565640A343A0974696D65EE
+:100990005F746F5F6D61780A353A09776865656CD9
+:1009A0005F6D61785F73706565640A363A097768D0
+:1009B00065656C5F74696D655F746F5F6D61780A02
+:1009C0000A703A097072696E742076616C7565738D
+:1009D0000A643A097365742064656661756C7473A2
+:1009E0000A75703A092B310A646F776E3A092D3116
+:1009F0000A706775703A092B31300A7067646F7737
+:100A00006E3A092D31300A0A7370656564203D2005
+:100A100064656C7461202A206D61785F7370656510
+:100A200064202A2028726570656174202F20746903
+:100A30006D655F746F5F6D6178290A003F004D3E00
+:100A40002000433E20004C25640A000A092D204363
+:100A50006F6E736F6C65202D0A4553432F713A09F1
+:100A6000717569740A6D3A096D6F7573656B657997
+:100A70000A000A092D204D61676963202D0A643A36
+:100A80000964656275670A783A096465627567206A
+:100A90006D61747269780A6B3A09646562756720E2
+:100AA0006B6579626F6172640A6D3A09646562759B
+:100AB00067206D6F7573650A763A0976657273699A
+:100AC0006F6E0A733A097374617475730A633A0935
+:100AD000636F6E736F6C65206D6F64650A302D34C3
+:100AE0003A096C61796572302D34284631302D46D3
+:100AF00034290A506175733A09626F6F746C6F61C3
+:100B00006465720A653A09656570726F6D0A6E3ABE
+:100B1000094E4B524F0A7A3A09736C656570204C46
+:100B2000454420746573740A000A002575002E6E12
+:100B30006B726F3A20000A002575002E7377617082
+:100B40005F6261636B736C6173685F6261636B7337
+:100B5000706163653A20000A002575002E73776185
+:100B6000705F67726176655F6573633A20000A00A3
+:100B70002575002E6E6F5F6775693A20000A0025A3
+:100B800075002E737761705F72616C745F72677548
+:100B9000693A20000A002575002E737761705F6C3A
+:100BA000616C745F6C6775693A20000A00257500F6
+:100BB0002E636170736C6F636B5F746F5F636F6ED6
+:100BC00074726F6C3A20000A002575002E737761ED
+:100BD000705F636F6E74726F6C5F636170736C6F64
+:100BE000636B3A20000A0025303258006B65796D3E
+:100BF00061705F636F6E6669672E7261773A20007D
+:100C00000A002575002E6D6F7573653A20000A0085
+:100C10002575002E6B6579626F6172643A20000A57
+:100C2000002575002E6D61747269783A20000A0003
+:100C30002575002E656E61626C653A20000A0025FC
+:100C40003032580064656275675F636F6E6669670E
+:100C50002E7261773A20000A00257500646566618E
+:100C6000756C745F6C617965723A20003F004E4B81
+:100C7000524F3A206F66660A004E4B524F3A206F31
+:100C80006E0A0074696D65725F636F756E743A20E9
+:100C90002530346C580A006B6579626F6172645F4D
+:100CA0006E6B726F3A2025580A006B6579626F612E
+:100CB00072645F69646C653A2025580A006B657937
+:100CC000626F6172645F70726F746F636F6C3A20F1
+:100CD00025580A00686F73745F6B6579626F617283
+:100CE000645F6C65647328293A2025580A000A0954
+:100CF0002D20537461747573202D0A004743433AC5
+:100D000020342E392E33204156522D4C4942433A3D
+:100D100020312E382E31204156525F415243483AFD
+:100D200020617672350A004F5054494F4E533A2095
+:100D30004C55464120424F4F544D41474943204D69
+:100D40004F5553454B45592045585452414B4559F1
+:100D500020434F4E534F4C4520434F4D4D414E4441
+:100D6000204E4B524F203531320A004255494C44F7
+:100D70003A20333064623330302D646972747920E4
+:100D80002830373A35373A3335204A616E203237CA
+:100D90002032303136290A005649443A203078460C
+:100DA000454544284572676F446F7820455A29208D
+:100DB0005049443A20307831333037284572676FD4
+:100DC000446F7820455A29205645523A20307830D1
+:100DD0003030310A00444553433A20742E6D2E6B57
+:100DE0002E206B6579626F617264206669726D771F
+:100DF00061726520666F72204572676F646F780A52
+:100E0000000A092D2056657273696F6E202D0A0045
+:100E10000A6D6F7573653A206F66660A000A6D6F1A
+:100E20007573653A206F6E0A000A6B6579626F61AF
+:100E300072643A206F66660A000A6B6579626F61B8
+:100E400072643A206F6E0A000A6D61747269783AB2
+:100E5000206F66660A000A6D61747269783A206FC5
+:100E60006E0A000A64656275673A206F6E0A000AAE
+:100E700064656275673A206F66660A000A0A626FE7
+:100E80006F746C6F616465722E2E2E2000433E20BD
+:100E9000006565636F6E6669673A0A00536C656545
+:100EA00070204C454420746573740A0000000000F3
+:100EB00000000000000000010204060A0F17202CA9
+:100EC0003A4A5D71879DB3C7DAE9F5FCFFFCF5E9A5
+:100ED000DAC7B39D87715D4A3A2C20170F0A0604C2
+:100EE00002010000000000000000000011241FBEED
+:100EF000CFEFDAE0DEBFCDBF04B603FE24C08091A1
+:100F0000F9019091FA01A091FB01B091FC018730A9
+:100F1000904BA740B04BB9F41092F9011092FA012E
+:100F20001092FB011092FC0114BE84B7877F84BF2E
+:100F300088E10FB6F89480936000109260000FBEB5
+:100F4000E0E0FFE3099511E0A0E0B1E0EEEFFCE5A1
+:100F500002C005900D92AA33B107D9F711E0AAE3B8
+:100F6000B1E001C01D92A93FB107E1F70E943D1019
+:100F70000C947D2E0C940000FF93EF93E0913A01C6
+:100F8000F0913B01309709F00995EF91FF91089599
+:100F9000FC018591803011F0EFDFFBCF0895FF2732
+:100FA000E0E230E247FF0CC0419597FF09C0EDE257
+:100FB0006095709580959095611D711D811D911DA5
+:100FC00027FF02C0219530E350E2AA27660F771F62
+:100FD000881F991FAA1FA41710F0A41B63955A9588
+:100FE000A9F7AA3008F0A95FA05DAF93F39561154A
+:100FF00071058105910541F7ED3211F4EF93F395F9
+:10100000F21718F43F93F395FBCF8F91B5DFFA9564
+:10101000E1F70895E991F9918591803021F08532C9
+:1010200019F0AADFF9CF089520E0E89455915532E0
+:10103000C1F3503311F4689455915A3348F4505326
+:1010400090F3220F022E220F220F200D250FF4CF36
+:101050000EF4219589919991533619F3533729F15B
+:10106000533559F1BC0188279927E8945C3621F45F
+:101070008991999168945591543639F446EF7EF0F0
+:1010800077FF0DC08FEF9FEF0AC055374AE039F068
+:10109000583540E121F0523642E009F00895FF93BF
+:1010A000EF937DDFEF91FF91B7CFFF93EF93FC01BB
+:1010B00081918030B9F360DFFBCFFF93EF9368DF5E
+:1010C000F1CFDF93CF93CDB7DEB72596A3DFCF91D6
+:1010D000DF910895CF93DF93EC01623039F128F46A
+:1010E000662349F0613091F02DC0643029F108F198
+:1010F000653029F127C08A81882321F085EE0E947E
+:101100001A1720C085EE0E94E2171CC08A8188232E
+:1011100051F085EE0E941A1785EE0E94E21783EEC9
+:101120000E941A1703C083EE0E94E2178A81882367
+:1011300061F08A81882361F08A81882361F08A8145
+:10114000882361F080E090E00BC083E191E008C06B
+:1011500082E091E005C081EF90E002C080EE90E077
+:10116000DF91CF91089580E090E008956091BC01F7
+:101170007091BD018091BE019091BF010E94A82194
+:1011800056985E9825982D9826982E9827982F98EF
+:10119000823019F0833021F00895259A2D9A089510
+:1011A000269A2E9A089586EB98E0892B11F00E94DA
+:1011B000B60880E090E0089556985E9825982D989E
+:1011C00026982E9827982F988FEF90E0909389007B
+:1011D0008093880090938B0080938A0090938D0079
+:1011E00080938C00259A2D9A2FEF80E792E0215072
+:1011F00080409040E1F700C00000269A2E9A2FEF21
+:1012000080E792E0215080409040E1F700C000006C
+:10121000279A2F9A2FEF80E792E02150804090404C
+:10122000E1F700C0000025982D982FEF80E792E0AD
+:10123000215080409040E1F700C0000026982E9891
+:101240002FEF80E792E0215080409040E1F700C00E
+:10125000000027982F9856985E9825982D982698E4
+:101260002E9827982F98089589EA8093800089E026
+:101270008093810024982C983F988AB18F748AB902
+:101280006E98479A8BB1806B8BB9769A0E94DC0876
+:1012900083EB98E0892B11F00E94B30880E090E086
+:1012A000089580E28093000180913C0181110EC07D
+:1012B0000E94A00981E080933C012FEF83ED90E331
+:1012C000215080409040E1F700C0000080E40E947F
+:1012D000A6098093000181112EC00E94D00980933D
+:1012E0000001811128C00E94D00980930001811162
+:1012F00022C08FE30E94D0098093000181111BC09E
+:101300000E94C80980E40E94A6098093000181110F
+:1013100012C08CE00E94D0098093000181110BC0A3
+:101320000E94D00980930001811105C08FE30E94C3
+:10133000D009809300010E94C8098091000108959E
+:101340001092B9008AE08093B800089594EA9093CF
+:10135000BC009091BC0097FFFCCF9091B900987FA2
+:10136000983021F0903111F081E008958093BB0016
+:1013700084E88093BC008091BC0087FFFCCF809103
+:10138000B900887F883111F0803471F780E00895CA
+:1013900084E98093BC008091BC0084FDFCCF08955B
+:1013A0008093BB0084E88093BC008091BC0087FFE1
+:1013B000FCCF9091B900987F81E0983209F480E0E9
+:1013C000089584E88093BC008091BC0087FFFCCF27
+:1013D0008091BB00089580910001811115C080E4C7
+:1013E0000E94A6098093000181110CC082E10E9435
+:1013F000D00980930001811105C08FEF0E94D009B0
+:10140000809300010E94C80984B1807F84B985B1AE
+:10141000807F85B98AB1837F8AB98BB1837F8BB98D
+:101420003E98469808950E945109809300010E94B9
+:10143000EB0980B38C7080BB81B3836F81BBAEE35B
+:10144000B1E0ECE4F1E08EE08E0F11921D928E136C
+:10145000FCCF84E399E0892B11F00C9434090895B2
+:101460009F92AF92BF92CF92DF92EF92FF920F9333
+:101470001F93CF93DF93809100018823E1F0809147
+:101480003D018F5F80933D01811115C08AE394E097
+:101490000E94C8070E94510980930001882329F007
+:1014A00080E294E00E94C80706C08CE094E00E94AD
+:1014B000C8070E94DC080EE311E0C0E0D0E0BB24C6
+:1014C000B39482E0A82ECC24C394D12C2DEFE22E2D
+:1014D00023E0F22EC730D10500F580910001811183
+:1014E00064C080E40E94A60980930001811112C0AB
+:1014F00082E10E94D0098093000181110BC0C601D6
+:101500000C2E01C0880F0A94EAF780950E94D0093A
+:10151000809300010E94C80948C0CA30A1F028F495
+:10152000C83059F0C93061F005C0CC3089F070F096
+:10153000CD3089F0209A289810C0219A29980DC0A2
+:10154000229A2A980AC0239A2B9807C0529A01C05F
+:10155000539A5B9802C03E9A469890EA9A95F1F7A2
+:101560009FB1799902C082E001C080E091709B2513
+:10157000982B7C9902C084E001C080E0892B7D9982
+:1015800002C038E001C030E0832B7E9902C020E128
+:1015900001C020E0822B9FB19095991F9927991F38
+:1015A0009295990F907E892B10C080910001811136
+:1015B00074C080E40E94A60980930001882309F486
+:1015C00059C0912C0E94C809892DF8019081981763
+:1015D00039F1808380910101882301F18091D70145
+:1015E00080FF04C082E094E00E94C8078091D70188
+:1015F00080FF0CC0809101011F928F93FF92EF92A8
+:101600000E9461080F900F900F900F908091D7016A
+:1016100080FF04C08BEF93E00E94C807A0920101F5
+:101620000E94EB0921960F5F1F4FCE30D10509F0C4
+:1016300051CF809101018823B1F081508093010145
+:10164000882339F08FE99FE00197F1F700C000008F
+:101650000AC0ACE4B1E0EEE3F1E0CF01825F91912A
+:101660009D938E13FCCF83ED98E0892BC1F00E94EF
+:10167000D30815C083E10E94D00980930001811135
+:10168000A0CF81E40E94A60980930001811199CF27
+:101690000E94E109982E909495CF80E096CF81E04A
+:1016A000DF91CF911F910F91FF90EF90DF90CF903E
+:1016B000BF90AF909F900895E82FF0E0E45BFE4F5D
+:1016C00080810895CF92DF92EF92FF920F931F9344
+:1016D000CF93DF9384EE93E00E94C8078CE4E82E5A
+:1016E00081E0F82EC0E0D0E09FEDC92E93E0D92E26
+:1016F00006ED13E0DF93CF93DF92CF920E94610853
+:101700008CED93E00E94C807F70181917F0190E082
+:101710000E940E229F938F931F930F930E94610844
+:1017200084ED93E00E94C80721968DB79EB7089676
+:101730000FB6F8949EBF0FBE8DBFCE30D105D1F647
+:10174000DF91CF911F910F91FF90EF90DF90CF909D
+:1017500008958B3B910578F4883A910540F5853AD8
+:101760009105D0F48430910508F0B1C08130910525
+:1017700009F4ADC06BC0803E910508F467C0883E97
+:10178000910508F4A4C09C01205F31092031310586
+:1017900008F05CC090650895853A910509F459C038
+:1017A000863A910509F058C082E890E40895883A95
+:1017B000910509F454C0893A910509F453C08A3A55
+:1017C000910509F452C08B3A910509F451C08C3A45
+:1017D000910509F450C08D3A910509F44FC0803B42
+:1017E000910509F44EC08E3A910509F44DC08F3A27
+:1017F000910509F44CC0813B910509F44BC0823B33
+:10180000910509F44AC0833B910509F449C0843B22
+:10181000910509F448C0853B910509F447C0863B12
+:10182000910509F446C0873B910509F445C0883B02
+:10183000910509F444C0893B910509F443C08A3BF2
+:10184000910509F442C080E094E4089580E090E0BE
+:10185000089581E890E4089583E890E4089582EE85
+:1018600094E4089589EE94E408958AEE94E408954A
+:1018700085EB94E4089586EB94E4089587EB94E473
+:1018800008958CEC94E408958DEC94E4089583E835
+:1018900095E408958AE895E4089582E995E4089529
+:1018A00084E995E4089581E296E4089583E296E45C
+:1018B000089584E296E4089585E296E4089586E228
+:1018C00096E4089587E296E408958AE296E40895FE
+:1018D000089596E0799FF001112494E5899FE00D29
+:1018E000F11D1124E60FF11DEE0FFF1FEC5CFE4F02
+:1018F000859194910895880F991FFC01EC55F04053
+:10190000859194910895880F991FFC01EC5DFE4F1D
+:1019100085919491089526E0729FF001112444E589
+:10192000849FE00DF11D1124E60FF11DEE0FFF1F46
+:10193000EC5CFE4F859194919C013A9521154FE105
+:10194000340708F41AC13F512115304120F49F702B
+:101950000E94830C08959C0130532115304118F4E6
+:101960009927906C0895811520E5920769F40E94EB
+:10197000681B4FEF84E39CE0415080409040E1F7CA
+:1019800000C000000C94CE22813020E5920731F493
+:101990008091D70181608093D70108959C013055D3
+:1019A0002115304108F051C0292F33272F703327DC
+:1019B00021303105D9F4AC014370552702C0220F04
+:1019C000331F4A95E2F73C68AC0164E0440F551FB1
+:1019D0006A95E1F744275370242B352B73E0880F69
+:1019E000991F7A95E1F7807699271DC0223031053D
+:1019F00029F4982F8827816F906A08952330310544
+:101A0000A9F4AC014370552721E030E002C0220F59
+:101A1000331F4A95E2F73C6843E0880F991F4A95C7
+:101A2000E1F7807E9770822B932B08952430310547
+:101A3000E1F4AC014370552721E030E002C0220FF1
+:101A4000331F4A95E2F73A68E7CF9C0130572115DA
+:101A5000304118F49F70906208959C013058211510
+:101A6000304118F49F70906A0895803E9105E0F42B
+:101A7000803C910558F58133910509F46FC048F415
+:101A80008932910509F463C08A32910509F46DC069
+:101A900072C089339105E9F082389105D1F0853320
+:101AA000910509F44DC067C0833E910581F138F47A
+:101AB000803E9105B9F0823E9105D9F05CC0863E2A
+:101AC000910561F1873E9105A1F155C00E947B0C03
+:101AD00008952091EA0120FD02C021FF4CC080EE54
+:101AE00090E049C08091EA0180FFF9CF89E390E05E
+:101AF00042C08091EA0182FF0EC08091EA0184FF1A
+:101B000003C080E090E037C083EE90E034C0809165
+:101B1000EA0182FFF2CF82EE90E02DC08091EA01CF
+:101B200083FF0BC08091EA0184FDEBCF87EE90E04C
+:101B300022C08091EA0183FFF5CF86EE90E01BC0C2
+:101B40008091EA0185FF07C089E290E014C080918E
+:101B5000EA0185FFF9CF85E390E00DC08091EA01AD
+:101B600086FF07C08AE290E006C08091EA0186FF06
+:101B7000F9CF81E390E00E94A90B08950895809128
+:101B80006D0108959FB7F89410925C019FBF9091EA
+:101B9000F001943009F057C09091E9009F703091A6
+:101BA000EC00232F217030FD20E8922B24E02093BD
+:101BB000E9002091EB0020FF43C02091EE0027FFB9
+:101BC0003FC020915A01222321F02091E80025FFF7
+:101BD00037C010925A0126E03091E80035FD15C05B
+:101BE0003091F001343061F53091EB0035FD28C0C3
+:101BF000215021F481E080935A0122C0EFE9FFE0F7
+:101C00003197F1F700C00000E7CF8093F100809199
+:101C1000E80085FD0AC08091E80080FFFCCF80913C
+:101C2000E8008E778093E80006C08FB7F89421E033
+:101C300020935C018FBF9F709093E90080E008952E
+:101C40009F709093E9008FEF0895CF93DF9300D0BA
+:101C50001F92CDB7DEB79C018091F001843019F559
+:101C600093E099833B832A839093E9008FEF9091CF
+:101C7000E800815095FD06C095ED9A95F1F70000BA
+:101C80008111F5CF8091E80085FF0DC040E050E064
+:101C900063E070E0CE0101960E94F5108091E800AB
+:101CA0008E778093E8000F900F900F90DF91CF9187
+:101CB0000895CF93DF9300D01F92CDB7DEB7209168
+:101CC000F001243021F522E029839B838A8383E07D
+:101CD0008093E9008FEF9091E800815095FD06C058
+:101CE00095ED9A95F1F700008111F5CF8091E8000C
+:101CF00085FF0DC040E050E063E070E0CE0101964A
+:101D00000E94F5108091E8008E778093E8000F9094
+:101D10000F900F90DF91CF9108952091F001243022
+:101D2000F1F422E02093E9002FEF3091E8002150F8
+:101D300035FD06C035ED3A95F1F700002111F5CFDC
+:101D40002091E80025FF0BC040E050E065E070E026
+:101D50000E94F5108091E8008E778093E800089546
+:101D6000CF93DF932091F001243009F048C0EC01BB
+:101D700080910C018823E1F080910D018823C1F04E
+:101D800085E08093E9008FEF9091E800815095FD08
+:101D900006C095E19A95F1F700008111F5CF809189
+:101DA000E80085FF2CC040E050E060E170E017C023
+:101DB00081E08093E9008FEF9091E800815095FDDC
+:101DC00006C095ED9A95F1F700008111F5CF80914D
+:101DD000E80085FF14C040E050E068E070E0CE010C
+:101DE0000E94F5108091E8008E778093E80080E1F2
+:101DF000FE01ADE5B1E001900D928A95E1F7DF912A
+:101E0000CF91089589E794E00E94C8078091EF017F
+:101E1000811109C00E948A120E94E7128091E2009B
+:101E200084608093E200089585E794E00E94C807EB
+:101E30001092EF01089581E794E00C94C8078DE6B5
+:101E400094E00E94C8070C949E2C89E694E00E94BE
+:101E5000C8070E9464220E94A42C0E948C150C9436
+:101E6000BE0D20915B012F5F822F62E30E94122E34
+:101E7000992319F020935B01089510925B018091E2
+:101E80005C01882371F18091F001843041F58091EB
+:101E9000E9008F702091EC00922F917020FD90E866
+:101EA000892B94E09093E9009091EB0090FF14C08F
+:101EB0009091EE0097FF10C09091E80095FF03C04D
+:101EC0001092F100F9CF9091E80090FF05C0909139
+:101ED000E8009E779093E8008F708093E90010925D
+:101EE0005C01089542E061EC81E00E94041242E04E
+:101EF00061EC82E00E94041242E061EC83E00E9407
+:101F0000041242E261EC84E00E94041242E161ECBE
+:101F100085E00C9404128091F201833009F455C0DD
+:101F200030F4813071F0823009F48EC008958A3027
+:101F300009F47AC08B3009F460C0893009F09CC084
+:101F400020C08091F101813A09F096C08091E800AB
+:101F5000877F8093E8008091F5019091F601892BAD
+:101F600021F460E18DE591E003C060E080E090E065
+:101F700070E00E9440118091E8008B778093E80028
+:101F800008958091F101813209F076C08091F501C8
+:101F90009091F601009719F0049709F06DC08091B7
+:101FA000E800877F8093E8008091E80082FD05C00B
+:101FB0008091F0018111F8CF5FC08091F100809392
+:101FC0006D018091E8008B7753C08091F101813AD7
+:101FD00009F052C08091F5019091F601892B09F02A
+:101FE0004BC08091E800877F8093E8008091E800F3
+:101FF00080FFFCCF80910C0136C08091F1018132CD
+:10200000D9F58091F5019091F601892BA9F5809180
+:10201000E800877F8093E8000E9439128091F301E5
+:1020200080930C010C94681B8091F101813221F5A1
+:102030008091E800877F8093E8000E9439128091A8
+:10204000F40180936E0108958091F101813AA1F429
+:102050008091E800877F8093E8008091E80080FF0E
+:10206000FCCF80916E018093F1008091E8008E7723
+:102070008093E8000C943912089584B7877F84BF59
+:1020800088E10FB6F89480936000109260000FBE54
+:1020900090E080E80FB6F89480936100909361001F
+:1020A0000FBE0E9419160E948A120E94E7128091A8
+:1020B000E20084608093E20082EC9DE00E94A32114
+:1020C00078940E946C150E941B1682E091E00E9499
+:1020D00087150E948C2C88E594E00E94C8078091A7
+:1020E000F001853089F484E594E00E94C8070E94DD
+:1020F00028228091EE01882391F30E9450228823A8
+:1021000071F30E94DF10EBCF0E944916E8CF292F10
+:10211000332723303105C9F064F42130310581F0D3
+:102120002230310509F043C08DE890E021EB34E026
+:1021300042C021323105F1F02232310541F137C080
+:1021400082E190E02EE335E036C099278130910599
+:1021500041F08230910541F0892B49F5EDEAF4E038
+:1021600005C0E5E9F4E002C0EDE7F4E0849190E019
+:102170009F0121C06530D8F4E62FF0E0EE0FFF1F7D
+:10218000EB5DFE4F2081318189E090E014C0653025
+:1021900070F470E0FB01EE0FFF1FE55EFE4F208143
+:1021A0003181FB01EA5EFE4F808190E004C080E057
+:1021B00090E020E030E0FA0131832083089580E14F
+:1021C00089BD82E189BD09B400FEFDCF8091D800B0
+:1021D0008F7D8093D8008091E00082608093E00042
+:1021E0008091E00081FDFCCF0895CF92DF92EF92C5
+:1021F000FF920F931F93CF93DF93EC018B016A0142
+:102200000E945812811133C0C114D10439F0F60173
+:1022100080819181081B190BC80FD91FE12CF12C6B
+:102220000115110519F18091E80085FD16C0809116
+:10223000E8008E778093E800C114D10449F0F601DC
+:1022400080819181E80EF91EF182E08285E00FC065
+:102250000E945812882321F30AC089918093F100CB
+:1022600001501109FFEFEF1AFF0ADACF80E0DF918A
+:10227000CF911F910F91FF90EF90DF90CF90089535
+:102280002091F7013091F8012617370748F06115C2
+:10229000710539F42091E8002E772093E80001C001
+:1022A000B90140E061157105A9F12091F0012223E7
+:1022B00009F443C0253009F442C02091E80023FD11
+:1022C00040C02091E80022FD32C02091E80020FFAC
+:1022D000E9CF4091F3002091F20030E0342BFC0173
+:1022E000CF016115710559F02830310540F4819115
+:1022F0008093F100615071092F5F3F4FF1CF41E0B2
+:102300002830310509F040E02091E8002E77209335
+:10231000E800C8CF4111C9CF0AC08091F0018823DD
+:1023200061F0853061F08091E80083FD0AC0809102
+:10233000E80082FFF2CF80E0089582E0089583E014
+:10234000089581E008952091F7013091F801261752
+:10235000370748F06115710539F42091E8002E77B0
+:102360002093E80001C0B901FC0120E0611571056E
+:1023700091F18091F001882309F440C0853009F47F
+:102380003FC08091E80083FD3DC08091E80082FD60
+:102390002FC08091E80080FFE9CF2091F300809169
+:1023A000F20090E0922B6115710559F0883091058B
+:1023B00040F424912093F100319661507109019607
+:1023C000F2CF21E0089709F020E08091E8008E77B5
+:1023D0008093E800CBCF2111CCCF0AC08091F001CF
+:1023E000882361F0853061F08091E80083FD0AC0A8
+:1023F0008091E80082FFF2CF80E0089582E00895A6
+:1024000083E0089581E00895982F973058F59093D0
+:10241000E900981739F07091EC002091ED0050918F
+:10242000F00003C0242F762F50E021FF19C0309117
+:10243000EB003E7F3093EB003091ED003D7F309319
+:10244000ED003091EB0031603093EB007093EC00C5
+:102450002093ED005093F0002091EE0027FF07C07D
+:102460009F5FD3CF8F708093E90081E0089580E073
+:1024700008958091F10187FF11C08091E80082FDED
+:1024800005C08091F0018111F8CF11C08091E80062
+:102490008B770BC08091F001882349F08091E80090
+:1024A00080FFF8CF8091E8008E778093E800089550
+:1024B0002091E4003091E50095E64091EC00842FF6
+:1024C000817040FF22C08091E80080FD1CC0809197
+:1024D000F001882391F0853091F08091EB0085FD2B
+:1024E00010C04091E4005091E5004217530729F3D2
+:1024F0009A01915011F784E0089582E0089583E0F5
+:10250000089581E0089580E008954091E80042FF39
+:10251000DECF08950E94F8120E940013E0EEF0E072
+:10252000808181608083E8EDF0E080818F77808317
+:1025300019BCA7EDB0E08C918E7F8C9380818F7E4B
+:1025400080831092EF0108950F931F93CF93DF9331
+:102550000E94F8120E940013C8EDD0E088818F77A6
+:10256000888388818068888388818F7D888319BC6F
+:102570001092F0011092EC011092EE011092ED0118
+:1025800000EE10E0F80180818B7F8083888181607C
+:10259000888342E060E080E00E940412E1EEF0E017
+:1025A00080818E7F8083E2EEF0E080818160808395
+:1025B000808188608083F80180818E7F808388811C
+:1025C00080618883DF91CF911F910F910895E8ED8D
+:1025D000F0E080818F7E8083E7EDF0E08081816094
+:1025E000808384E082BF81E08093EF010C94A41289
+:1025F000E8EDF0E080818E7F80831092E200089504
+:102600001092DA001092E10008951F920F920FB617
+:102610000F9211242F933F934F935F936F937F9368
+:102620008F939F93AF93BF93EF93FF938091E100BC
+:1026300082FF0BC08091E20082FF07C08091E10021
+:102640008B7F8093E1000E94310F8091DA0080FF40
+:102650001FC08091D80080FF1BC08091DA008E7F60
+:102660008093DA008091D90080FF0DC080E189BDA0
+:1026700082E189BD09B400FEFDCF81E08093F001C5
+:102680000E94020F05C019BC1092F0010E94140FA5
+:102690008091E10080FF19C08091E20080FF15C0A9
+:1026A0008091E2008E7F8093E2008091E200806161
+:1026B0008093E2008091D80080628093D80019BC9A
+:1026C00085E08093F0010E941F0F8091E10084FF5C
+:1026D00030C08091E20084FF2CC080E189BD82E19E
+:1026E00089BD09B400FEFDCF8091D8008F7D809315
+:1026F000D8008091E1008F7E8093E1008091E2001C
+:102700008F7E8093E2008091E20081608093E200FE
+:102710008091EC01882311F084E007C08091E300F0
+:1027200087FD02C081E001C083E08093F0010E9438
+:10273000250F8091E10083FF29C08091E20083FF93
+:1027400025C08091E100877F8093E10082E0809343
+:10275000F0011092EC018091E1008E7F8093E10006
+:102760008091E2008E7F8093E2008091E2008061A0
+:102770008093E20042E060E080E00E9404128091D9
+:10278000F00088608093F0000E941B0FFF91EF9192
+:10279000BF91AF919F918F917F916F915F914F9179
+:1027A0003F912F910F900FBE0F901F9018951F9281
+:1027B0000F920FB60F9211242F933F934F935F9375
+:1027C0006F937F938F939F93AF93BF93CF93DF9339
+:1027D000EF93FF93C091E900CF708091EC00D82F68
+:1027E000D17080FDD0E81092E9008091F000877FE1
+:1027F0008093F00078940E941B141092E90080915D
+:10280000F00088608093F000CD2BCF70C093E9007A
+:10281000FF91EF91DF91CF91BF91AF919F918F91F8
+:102820007F916F915F914F913F912F910F900FBECC
+:102830000F901F9018951F93CF93DF93CDB7DEB7FE
+:10284000AA970FB6F894DEBF0FBECDBFE1EFF1E05F
+:1028500088E08E0F9091F10091938E13FBCF0E9430
+:102860008B0F8091E80083FF1FC18091F10190914F
+:10287000F201492F50E04A30510508F015C1FA0124
+:10288000EA5AFF4F0C94322E803881F0823809F0DA
+:102890000BC18091F5018F708093E9008091EB006E
+:1028A00085FB882780F91092E90006C08091ED0130
+:1028B0009091EE01911182609091E800977F909342
+:1028C000E8008093F1001092F100C8C0282F2D7FFE
+:1028D00009F0EAC0882319F0823061F0E5C08091E8
+:1028E000F301813009F0E0C0933009F080E080937B
+:1028F000EE012BC08091F301811127C08091F50179
+:102900008F7009F4D1C08093E9002091EB0020FF83
+:102910001CC0933021F48091EB00806214C0909130
+:10292000EB0090619093EB0021E030E0A90102C040
+:10293000440F551F8A95E2F74093EA001092EA008F
+:102940008091EB0088608093EB001092E900809109
+:10295000E800877F86C08111A7C01091F3011F771F
+:102960008091E3008078812B8093E3008091E800E0
+:10297000877F8093E8000E9439128091E80080FFF1
+:10298000FCCF8091E30080688093E300111102C0C6
+:1029900082E001C083E08093F00186C080588230DD
+:1029A00008F082C08091F3019091F4018C3D53E0D6
+:1029B000950779F583E08A838AE289834FB7F89493
+:1029C000DE01139620E03EE051E2E32FF0E0509369
+:1029D0005700E49120FF03C0E295EF703F5FEF7076
+:1029E0008E2F90E0EA3010F0C79601C0C0968D930C
+:1029F0009D932F5F243149F74FBF8091E800877F77
+:102A00008093E8006AE270E0CE0101960E944011D6
+:102A100014C0AE014F5F5F4F6091F5010E948710B7
+:102A2000BC01892B09F440C09091E800977F9093F6
+:102A3000E80089819A810E94A3118091E8008B7738
+:102A40008093E80031C0803879F58091E800877F75
+:102A50008093E8008091EC018093F1008091E80080
+:102A60008E778093E8000E9439121EC081111CC02D
+:102A70009091F3019230C0F48091E800877F8093B9
+:102A8000E8009093EC010E9439128091EC018111D1
+:102A900006C08091E30087FD02C081E001C084E0B0
+:102AA0008093F0010E94720F8091E80083FF0AC0BA
+:102AB0008091E800877F8093E8008091EB0080623E
+:102AC0008093EB00AA960FB6F894DEBF0FBECDBF81
+:102AD000DF91CF911F910895CF938091F0018823CA
+:102AE000A1F0C091E900CF709091EC00892F817026
+:102AF00090FD80E8C82B1092E9008091E80083FDEA
+:102B00000E941B14CF70C093E900CF910895909359
+:102B10007401809373010895E0917301F091740141
+:102B2000309721F00190F081E02D099480E0089524
+:102B3000EF92FF920F931F93CF93DF93E091730176
+:102B4000F09174013097B1F18C010280F381E02D96
+:102B500009958091D70182FF2DC080FF04C083E7D3
+:102B600096E00E94C807E80110E18DE6E82E86E0B5
+:102B7000F82E8091D70180FF0BC088811F928F9320
+:102B8000FF92EF920E9461080F900F900F900F90AC
+:102B9000115021961111EDCF8091D70180FF0AC00D
+:102BA0008BE696E0DF91CF911F910F91FF90EF9010
+:102BB0000C94C807DF91CF911F910F91FF90EF9078
+:102BC0000895E0917301F0917401309721F0048031
+:102BD000F581E02D099408952091710130917201E1
+:102BE0008217930771F09093720180937101E091C5
+:102BF0007301F0917401309721F00680F781E02D88
+:102C00000994089520916F01309170018217930704
+:102C100071F09093700180936F01E0917301F091D6
+:102C20007401309721F00084F185E02D0994089516
+:102C300008950C9418160E946A220E94130A0C949C
+:102C40003023CF93C82F8091D70182FF1EC080FF11
+:102C500004C08CE896E00E94C8078091D70180FFED
+:102C60000CC01F92CF9387E896E09F938F930E94AA
+:102C700061080F900F900F900F908091D70180FF07
+:102C800004C085E896E00E94C8078C2FCF910C9471
+:102C9000BE0DCF92DF92EF92FF920F931F93CF93CF
+:102CA000DF93CDB7DEB72B970FB6F894DEBF0FBE1C
+:102CB000CDBF0E94300A86E7C82E81E0D82E00E002
+:102CC00010E0E02E802F0E945C0BF60141916F0115
+:102CD000F42EF826B1F40F5F1F4F0E30110589F75F
+:102CE0008FEF89838A831B820E9473228160782FF1
+:102CF0009D838C8349815A816B818D810E94EC1662
+:102D000040C09091D70191FF04C08B870E94620B55
+:102D10008B8520E030E04F2D50E0922FBA01022E3B
+:102D200002C0759567950A94E2F760FF24C02E8370
+:102D3000EF8221E030E0690102C0CC0CDD1C9A95E5
+:102D4000E2F790E08C219D21892B09F420E028876F
+:102D50000E9473228160782F9A8789874E815F81D4
+:102D600068858A850E94EC16F801EA58FE4F80813A
+:102D7000C826C08206C02F5F3F4F2630310569F656
+:102D8000AACF0E94A126109175010E948C151817D8
+:102D9000A1F00E948C15809375012B960FB6F894C4
+:102DA000DEBF0FBECDBFDF91CF911F910F91FF907E
+:102DB000EF90DF90CF900C9421162B960FB6F894DD
+:102DC000DEBF0FBECDBFDF91CF911F910F91FF905E
+:102DD000EF90DF90CF900895CF93DF93CDB7DEB71C
+:102DE0002B970FB6F894DEBF0FBECDBF4F83588729
+:102DF00069877A878B87DE01119686E0FD01119243
+:102E00008A95E9F785E0FE01379601900D928A9543
+:102E1000E1F749815A816B817C818D819E810E947D
+:102E2000021E2B960FB6F894DEBF0FBECDBFDF910A
+:102E3000CF910895CF93882309F4C2C0C82F823858
+:102E400059F40E948C1581FDBBC089E30E949E202D
+:102E50000E947D2189E30CC0833879F40E948C158F
+:102E600080FDAEC083E50E949E200E947D2183E507
+:102E70000E94F120CF910C947D21843859F40E9456
+:102E80008C1582FD9DC087E40E949E200E947D21BA
+:102E900087E4EECF8CEF8C0F813A48F48C2F0E94A0
+:102EA000342B81118DC08C2F0E949E20E3CF80E2B5
+:102EB0008C0F883048F4C77081E001C0880FCA9534
+:102EC000EAF70E944621D6CF8BE58C0F833078F449
+:102ED000C53A29F0C63A31F083E890E005C081E8B0
+:102EE00090E002C082E890E0CF910C94EC1588E568
+:102EF0008C0F833108F064C0C83A39F1C93A41F106
+:102F0000CA3A49F1CB3A51F1CC3A59F1CD3A61F193
+:102F1000C03B69F1CE3A71F1CF3A79F1C13B81F111
+:102F2000C23B89F1C33B91F1C43B99F1C53BA1F18F
+:102F3000C63BA9F1C73BB1F1C83BB9F1C93BC1F1EF
+:102F4000CA3BC9F180E090E038C082EE90E035C025
+:102F500089EE90E032C08AEE90E02FC085EB90E0E1
+:102F60002CC086EB90E029C087EB90E026C08CEC6B
+:102F700090E023C08DEC90E020C083E891E01DC07C
+:102F80008AE891E01AC082E991E017C084E991E0F3
+:102F900014C081E292E011C083E292E00EC084E2AC
+:102FA00092E00BC085E292E008C086E292E005C0A4
+:102FB00087E292E002C08AE292E0CF910C9402167E
+:102FC000CF910895882309F44BC0823859F40E94A8
+:102FD0008C1581FF45C089E30E949E200E947D21BF
+:102FE00089E30CC0833871F40E948C1580FF38C0CF
+:102FF00083E50E949E200E947D2183E50E94F120AE
+:103000000C947D21843859F40E948C1582FF28C0CD
+:1030100087E40E949E200E947D2187E4EFCF9CEFF1
+:10302000980F913A58F390E2980F983050F48770C7
+:1030300091E001C0990F8A95EAF7892F0E944C21EF
+:10304000DFCF9BE5980F933020F480E090E00C9464
+:10305000EC15885A833120F480E090E00C9402163D
+:103060000895882321F00E9446210C947D21089523
+:10307000882321F00E944C210C947D210895BF9259
+:10308000CF92DF92EF92FF920F931F93CF93DF9334
+:1030900000D000D000D0CDB7DEB725E0FC01DE01C6
+:1030A000119601900D922A95E1F7FC014081318142
+:1030B0000281258122952F7063817481672B09F429
+:1030C000E5C23F3F19F44F3F09F4E0C27C01498358
+:1030D0003A8389819A812E830E945D20182FB92E10
+:1030E0000E945C200E94231FEB2DE295EF70F0E020
+:1030F000E05AFF4F2E810C94322E8B2D807F9B2D1A
+:103100009F70F92E882319F0F29480EFF8220023A3
+:1031100049F0FF2009F467C28F2D0E9456210E94BA
+:103120007D2161C2812F0E94E217FF2009F4AEC207
+:103130008F2D0E945C2126960FB6F894DEBF0FBE3D
+:10314000CDBFDF91CF911F910F91FF90EF90DF9056
+:10315000CF90BF900C947D213B2D307F8B2D8F70B5
+:10316000303211F08295807F112319F0113021F156
+:103170002CC00023B9F0222309F4A0C1213009F0AA
+:103180009DC126960FB6F894DEBF0FBECDBFDF916E
+:10319000CF911F910F91FF90EF90DF90CF90BF9054
+:1031A0000C946621222319F0213009F46FC28E831A
+:1031B0000E9469218E8196C1002321F0223008F0FF
+:1031C00065C27CC1211162C28DC1002321F022237E
+:1031D00009F474C108C2222309F484C119C22B2D39
+:1031E00026952695237030E02115310521F02130F8
+:1031F0003105D1F04BC2002321F0812F9B2D93701C
+:1032000002C080E090E026960FB6F894DEBF0FBEB5
+:10321000CDBFDF91CF911F910F91FF90EF90DF9085
+:10322000CF90BF900C94EC15002321F0812F9B2DA3
+:10323000937002C080E090E026960FB6F894DEBF4F
+:103240000FBECDBFDF91CF911F910F91FF90EF90F7
+:10325000DF90CF90BF900C940216812F002319F0BD
+:103260000E94272502C00E948F2526960FB6F8944B
+:10327000DEBF0FBECDBFDF91CF911F910F91FF90A9
+:10328000EF90DF90CF90BF900C9414268B2D83701D
+:1032900009F07BC00111FAC1812F82958695877054
+:1032A000880F880F912F9F70C92ED12CE12CF12C03
+:1032B000082E04C0CC0CDD1CEE1CFF1C0A94D2F7B7
+:1032C00014FF12C04FE050E060E070E004C0440F13
+:1032D000551F661F771F8A95D2F7CB01BA016095FB
+:1032E00070958095909503C060E070E0CB012B2D28
+:1032F000269526952370422F50E042305105D9F093
+:103300004330510569F16C297D298E299F2941306F
+:10331000510551F126960FB6F894DEBF0FBECDBF12
+:10332000DF91CF911F910F91FF90EF90DF90CF90A1
+:10333000BF900C944A1F6C297D298E299F292696BF
+:103340000FB6F894DEBF0FBECDBFDF91CF911F91B6
+:103350000F91FF90EF90DF90CF90BF900C94661F7D
+:103360000E944A1FC701B60126960FB6F894DEBF29
+:103370000FBECDBFDF91CF911F910F91FF90EF90C6
+:10338000DF90CF90BF900C942E1F002319F08B2D4F
+:10339000817001C08695882309F478C1812F8295B8
+:1033A00086958770880F880F912F9F70C92ED12C1A
+:1033B000E12CF12C082E04C0CC0CDD1CEE1CFF1CF3
+:1033C0000A94D2F714FF12C04FE050E060E070E0C2
+:1033D00004C0440F551F661F771F8A95D2F7CB0193
+:1033E000BA01609570958095909503C060E070E09B
+:1033F000CB012B2D269526952370422F50E042308D
+:103400005105D9F04330510569F16C297D298E2988
+:103410009F294130510551F126960FB6F894DEBF31
+:103420000FBECDBFDF91CF911F910F91FF90EF9015
+:10343000DF90CF90BF900C9424206C297D298E2999
+:103440009F2926960FB6F894DEBF0FBECDBFDF9141
+:10345000CF911F910F91FF90EF90DF90CF90BF9091
+:103460000C9440200E942420C701B60126960FB676
+:10347000F894DEBF0FBECDBFDF91CF911F910F91AA
+:10348000FF90EF90DF90CF90BF900C940820103FFA
+:10349000D1F118F4103E50F4A1C0123F09F463C0FA
+:1034A00008F44CC0133F09F473C098C01F708B2DF3
+:1034B0008F710023A1F00E94A11F812F26960FB6C5
+:1034C000F894DEBF0FBECDBFDF91CF911F910F915A
+:1034D000FF90EF90DF90CF90BF900C9431180E9436
+:1034E000C21F812F26960FB6F894DEBF0FBECDBF48
+:1034F000DF91CF911F910F91FF90EF90DF90CF90D0
+:10350000BF900C9438180023A9F02111BFC08B2D57
+:103510008F7126960FB6F894DEBF0FBECDBFDF9138
+:10352000CF911F910F91FF90EF90DF90CF90BF90C0
+:103530000C94E71F223008F0A9C0E9CF0023A9F0BE
+:103540008B2D8F7126960FB6F894DEBF0FBECDBFC0
+:10355000DF91CF911F910F91FF90EF90DF90CF906F
+:10356000BF900C94A11F002359F38B2D8F712696C9
+:103570000FB6F894DEBF0FBECDBFDF91CF911F9184
+:103580000F91FF90EF90DF90CF90BF900C94C21FEF
+:10359000002399F08B2D8F7126960FB6F894DEBF1D
+:1035A0000FBECDBFDF91CF911F910F91FF90EF9094
+:1035B000DF90CF90BF900C948C1F26960FB6F89496
+:1035C000DEBF0FBECDBFDF91CF911F910F91FF9056
+:1035D000EF90DF90CF90BF900C94821F0023A9F052
+:1035E000222309F4ADCF812F26960FB6F894DEBFC3
+:1035F0000FBECDBFDF91CF911F910F91FF90EF9044
+:10360000DF90CF90BF900C941A17222309F4ADCF0E
+:10361000812F26960FB6F894DEBF0FBECDBFDF9187
+:10362000CF911F910F91FF90EF90DF90CF90BF90BF
+:103630000C94E2174B2D4F70612FC7010E946A084E
+:1036400026960FB6F894DEBF0FBECDBFDF91CF91A7
+:103650001F910F91FF90EF90DF90CF90BF900C944F
+:10366000A61E4B2D4F70612FC70126960FB6F894FA
+:10367000DEBF0FBECDBFDF91CF911F910F91FF90A5
+:10368000EF90DF90CF90BF900C94680C26960FB609
+:10369000F894DEBF0FBECDBFDF91CF911F910F9188
+:1036A000FF90EF90DF90CF90BF9008950E9463212C
+:1036B0000E9438210E947D210E9447270E941426E3
+:1036C00080E090E00E94EC1580E090E00C940216FF
+:1036D0000E9453210C94561B0E945D20292F229595
+:1036E0002F7030E02C3031054CF42A3031056CF469
+:1036F000225031092230310588F407C02C303105C1
+:1037000049F02F30310531F009C0803E48F0803F4C
+:1037100029F406C093FB882780F9089580E0089576
+:1037200081E00895CF93DF9300D000D01F92CDB7F2
+:10373000DEB70F900F900F900F900F90DF91CF9109
+:103740000895CF93DF9300D000D000D0CDB7DEB77F
+:1037500026960FB6F894DEBF0FBECDBFDF91CF9196
+:1037600008951F93CF93DF93C091840116E0809159
+:103770008501C81799F0D0E01C9FF0011D9FF00D46
+:103780001124EA57FE4F4081518162817381848107
+:1037900095810E94A11B2196C770E9CFDF91CF913F
+:1037A0001F9108954091B6015091B7016091B80101
+:1037B0007091B9018091BA019091BB010C94A11B49
+:1037C0008091BB0182958F7009F054C08091B8013F
+:1037D000882309F44FC080918401A09185016091F4
+:1037E000B6017091B7014091B9015091BA01B6E0AC
+:1037F0008A1709F43FC090E041155105C1F17F3FA0
+:1038000011F46F3FA1F1B89FF001B99FF00D1124A1
+:10381000EA57FE4F218172132AC02081621327C00C
+:103820002281211124C0238134812417350710F40B
+:1038300021503109241B350B283C3105C0F420915F
+:10384000BB012F7020612093BB0126E0289FF0016F
+:10385000299FF00D1124E557FE4F80818F70806104
+:10386000808386EB91E00E943F180C94B11B019677
+:103870008770BECF0895CF92DF92EF92FF920F93A1
+:103880001F93CF93DF93CDB7DEB762970FB6F8944F
+:10389000DEBF0FBECDBF8C0185E0F801DE011D96B5
+:1038A00001900D928A95E1F7D8014C9111965C91A7
+:1038B000119712966C9112971396CD90DC901497F5
+:1038C0003091B6017091B7018091B9019091BA0120
+:1038D000009709F46BC17F3F19F43F3F09F466C1BB
+:1038E000E090B801EE2009F4C0C02091BB01C816D9
+:1038F000D90628F0F601E81BF90BCF0104C080952A
+:1039000090958C0D9D1DFF24F394883C910578F0D3
+:10391000F12C207F09F0C6C07C2DD98AC88A8989FC
+:103920000E94921B86EB91E00E943F18B1C0822F4B
+:10393000807F09F046C0751314C0341312C06111A2
+:1039400010C02F7020612093BB010E94D21B86EB18
+:1039500091E00E943F188091BB01D80115968C938D
+:103960002EC0CD2819F15F3F11F44F3FF9F0F62E2C
+:1039700061111CC0809184012091850136E082177D
+:1039800009F45AC090E0389FF001399FF00D1124DE
+:10399000EA57FE4F7181571306C07081471303C069
+:1039A0007281711103C001968770E9CFF62E6623EC
+:1039B00009F418C18091BB0181608093BB01F12C97
+:1039C00011C1751308C0341306C0611104C0809181
+:1039D000BB01D801C3C04D875E878D859E856A8BEC
+:1039E0000E946C1B6A898823E1F16623D1F1209142
+:1039F000BB01822F82958F7090E0029774F08091C6
+:103A0000B6019091B70198878F831986DB86CA86A5
+:103A10002C87CE0107960E943F1886E0F801A6EB9E
+:103A2000B1E001900D928A95E1F70E94E01B0E949F
+:103A3000D21BFF24F394D6C04D875E878D859E856B
+:103A40000E945D20292F22952F7030E02230310511
+:103A50000CF0BCC09F7009F0B6C0805E883008F4DE
+:103A6000C1C0C8010E943F18E4CFC816D90608F4A7
+:103A700053C0F601E81BF90BCF01883C910508F40F
+:103A800050C0F12C7C2DD98AC88A89890E94921B4A
+:103A9000E6EBF1E086E0DF011D928A95E9F70E94EE
+:103AA000D21BA0C0751314C0341312C0611110C012
+:103AB0008091BB01F8018583C8010E943F1886E010
+:103AC000E6EBF1E0DF011D928A95E9F7FE2C8AC052
+:103AD0004D875E878D859E856A8B0E946C1B6A89E7
+:103AE000882309F4BECF662309F4BBCF2091BB0124
+:103AF000822F82958F7090E002970CF48ECF809188
+:103B0000B6019091B7019A8389831B82DD82CC82B2
+:103B10002E83CE0101967FCF809590958C0D9D1DB3
+:103B2000ACCFF62E662309F49CCF75132EC0341348
+:103B30002CC02091BB0120FD1FC0822F82958F7069
+:103B4000D9F0D80115962C9315978F3049F08F5FD7
+:103B5000982F9295907F822F8F70892B15968C933A
+:103B6000C8010E943F1886E0F801A6EBB1E0019081
+:103B70000D928A95E1F793CF86E0F801A6EBB1E0CC
+:103B800001900D928A95E1F72DC04D875E878D8556
+:103B90009E850E946C1B811140CF8091BB0181608A
+:103BA0008093BB01C8010E943F181CC0662309F422
+:103BB00058CF4D875E878D859E850E946C1B88231C
+:103BC00009F44FCF2ACF811148CF0CC024303105E2
+:103BD0000CF047CF9F7009F440CFF8019581907F9A
+:103BE00009F03BCF8F2D62960FB6F894DEBF0FBE63
+:103BF000CDBFDF91CF911F910F91FF90EF90DF909C
+:103C0000CF9008951F93CF93DF93CDB7DEB72C9756
+:103C10000FB6F894DEBF0FBECDBF4F8358876987BC
+:103C20007A878B879C87CE0107960E943B1C88234E
+:103C300069F08F8198852A853B85232BF1F19F3F81
+:103C400009F063C08F3F09F060C037C086E0FE0115
+:103C50003796DE01119601900D928A95E1F76F81FA
+:103C60007885EA85FB85309741F17F3F11F46F3FFE
+:103C700021F12091850130E0C901019687709927D3
+:103C80004091840150E08417950709F447C0698387
+:103C90007A83FD83EC8396E0929FD001939FB00DD1
+:103CA0001124AA57BE4FFE01319601900D929A95AC
+:103CB000E1F7809385010E94B11B16E08091840199
+:103CC000909185018917C1F1189FC00111248A576D
+:103CD0009E4F0E943B1C882379F1E09184011E9F36
+:103CE000F0011124EA57FE4F4081518162817381B6
+:103CF000848195810E94A11B8091840190E00196AE
+:103D00008770992780938401D9CF4F815885698521
+:103D10007A858B859C850E94A11BCFCF0E94681B52
+:103D20001092850110928401E6EBF1E086E0DF015C
+:103D30001D928A95E9F7C1CF2C960FB6F894DEBF95
+:103D40000FBECDBFDF91CF911F910895EF92FF92EB
+:103D50000F931F93CF93DF938C01892B09F46CC0D1
+:103D6000F12CEE24E394E8012196F8018491843744
+:103D700040F4843008F051C0813081F0823019F174
+:103D80005BC0853709F444C0A8F19CE7980F9037D1
+:103D900008F052C08F770E94E21741C00E5F1F4F9C
+:103DA000FE01C49180E28C0F883048F4C7708E2DDC
+:103DB00001C0880FCA95EAF70E94562114C08C2FC3
+:103DC0000E941A172DC00E5F1F4FFE01C49180E2A2
+:103DD0008C0F883058F4C7708E2D01C0880FCA959B
+:103DE000EAF70E945C210E947D211AC08C2F0E945C
+:103DF000E21716C00E5F1F4FFE01C491CC2381F065
+:103E00008FE99FE00197F1F700C00000C150F6CFA5
+:103E10000E5F1F4FFE01F49003C00E941A178E011F
+:103E20008F2D882309F49FCFEFE9FFE03197F1F759
+:103E300000C000008150F5CFDF91CF911F910F910D
+:103E4000FF90EF90089508956093C0017093C101B1
+:103E50008093C2019093C3010C94561B0F931F9340
+:103E60000091C0011091C1012091C2013091C301A4
+:103E7000DC01CB01802B912BA22BB32B8093C001B3
+:103E80009093C101A093C201B093C3011F910F9100
+:103E90000C94561B0F931F930091C0011091C10108
+:103EA0002091C2013091C301DC01CB018023912319
+:103EB000A223B3238093C0019093C101A093C201B8
+:103EC000B093C3011F910F910C94561B0F931F9336
+:103ED0000091C0011091C1012091C2013091C30134
+:103EE000DC01CB0180279127A227B3278093C00153
+:103EF0009093C101A093C201B093C3011F910F9190
+:103F00000C94561B1092BC011092BD011092BE0180
+:103F10001092BF010C94561B41E050E060E070E04D
+:103F200004C0440F551F661F771F8A95D2F7409330
+:103F3000BC015093BD016093BE017093BF010C940E
+:103F4000561B41E050E060E070E004C0440F551F94
+:103F5000661F771F8A95D2F78091BC019091BD01B1
+:103F6000A091BE01B091BF01482B592B6A2B7B2B2E
+:103F70004093BC015093BD016093BE017093BF019B
+:103F80000C94561B41E050E060E070E004C0440F28
+:103F9000551F661F771F8A95D2F7409550956095FB
+:103FA00070958091BC019091BD01A091BE01B0912E
+:103FB000BF01482359236A237B234093BC015093BC
+:103FC000BD016093BE017093BF010C94561B41E08C
+:103FD00050E060E070E004C0440F551F661F771F7B
+:103FE0008A95D2F78091BC019091BD01A091BE014C
+:103FF000B091BF01482759276A277B274093BC010E
+:104000005093BD016093BE017093BF010C94561B89
+:104010000F931F930091BC011091BD012091BE012F
+:104020003091BF01DC01CB01802B912BA22BB32B54
+:104030008093BC019093BD01A093BE01B093BF01DA
+:104040001F910F910C94561B0F931F930091BC016D
+:104050001091BD012091BE013091BF01DC01CB0167
+:1040600080239123A223B3238093BC019093BD01AD
+:10407000A093BE01B093BF011F910F910C94561BEA
+:104080000F931F930091BC011091BD012091BE01BF
+:104090003091BF01DC01CB0180279127A227B327F4
+:1040A0008093BC019093BD01A093BE01B093BF016A
+:1040B0001F910F910C94561B0895CF92DF92EF92AF
+:1040C000FF920F931F93CF93DF938C01C090C00199
+:1040D000D090C101E090C201F090C3014091BC01B9
+:1040E0005091BD016091BE017091BF01C42AD52AD3
+:1040F000E62AF72ACFE1D0E0D701C6010C2E04C092
+:10410000B695A795979587950A94D2F780FF07C033
+:10411000B8018C2F0E948B0C8130910531F42197CE
+:1041200058F7B80180E00E948B0CDF91CF911F916E
+:104130000F91FF90EF90DF90CF90089590910C0138
+:10414000992321F090910D01911109C020910E0148
+:1041500030910F01F90132969FEF40E030C0982F67
+:104160009695969596959F30A0F4E0910E01F0916A
+:104170000F01E90FF11D877021E030E0A90102C0B5
+:10418000440F551F8A95E2F7CA019181892B8183DB
+:1041900008959091D70190FF23C01F928F938DEBCC
+:1041A00096E09F938F930E9461080F900F900F905D
+:1041B0000F9008959F3F39F04F5F4E3041F051917D
+:1041C0005813F8CF0DC05111F7CF942FF5CF9F3F63
+:1041D00039F0F901E90FF11D97FDFA9582830895F1
+:1041E000089590910C01992321F090910D01911166
+:1041F00009C020910E0130910F01F9013296205F24
+:104200003F4F30C0982F9695969596959F30A8F47D
+:10421000E0910E01F0910F01E90FF11D877021E08F
+:1042200030E0A90102C0440F551F8A95E2F7CA0188
+:10423000809591818923818308959091D70190FF82
+:1042400016C01F928F938FE996E09F938F930E94E1
+:1042500061080F900F900F900F9008953196E2171C
+:10426000F30729F090819813F9CF1082F7CF0895C2
+:1042700081E090E0E0910E01F0910F01E80FF91F4D
+:104280001082019680319105A9F708959091D60189
+:10429000892B8093D601089580959091D60189232A
+:1042A0008093D60108951092D60108959091D5017A
+:1042B000892B8093D501089580959091D50189230C
+:1042C0008093D50108951092D50108958093C4017B
+:1042D00008951092C401089580910E0190910F01EC
+:1042E000FC0131969C01205F3F4F80E0919191113C
+:1042F0008F5FE217F307D1F70895E0910E01F09177
+:104300000F018091D6018083E0910E01F0910F01A1
+:1043100090818091D501892B80838091C40188236D
+:1043200061F0E0910E01F0910F019081892B808363
+:104330000E946C2181111092C40180910E01909114
+:104340000F010C94981590933B0180933A010895C6
+:10435000CF92DF92EF92FF926C01EE24FF24C11402
+:10436000D104E104F10421F0C701B60120E101C04C
+:1043700020E0C72ED82EE92EFF24C114D104E10479
+:10438000F10419F0285FC701B6016B017C0154E00C
+:10439000F694E794D794C7945A95D1F7C114D104F1
+:1043A000E104F10419F02C5FC701B6016B017C0137
+:1043B00042E0F694E794D794C7944A95D1F7C11494
+:1043C000D104E104F10419F02E5FC701B601DC014C
+:1043D000CB01B695A79597958795892B8A2B8B2B23
+:1043E00009F02F5F822FFF90EF90DF90CF9008951C
+:1043F0008295982F9C7C392F36953695282F2373DC
+:1044000044E0249FC0011124932F982B292F2A7A4E
+:104410002695892F8575880F822B08951F93CF933A
+:10442000DF931F92CDB7DEB799830E94F821182F32
+:104430009981892F0E94F821212F30E0322F2227E5
+:10444000A901482BCA010F90DF91CF911F910895C8
+:104450008091F001843009F11092D80120E488E1C4
+:1044600090E00FB6F894A895809360000FBE20935B
+:10447000600083B7817F846083BF83B7816083BF1F
+:104480007894889583B78E7F83BF88E10FB6F894C0
+:1044900080936000109260000FBE08950895089503
+:1044A000CF930E944E220E94300A0E944F22C0E009
+:1044B0008C2F0E945C0B811104C0CF5FCE30C1F7FE
+:1044C00001C081E0CF9108950E94681B0E948C1565
+:1044D0000C94BE0D82E084BD93E095BD9AEF97BD2C
+:1044E00080936E0008952FB7F8948091D901909130
+:1044F000DA01A091DB01B091DC012FBF0895CF92CA
+:10450000DF92EF92FF920F931F932FB7F894409191
+:10451000D9015091DA016091DB017091DC012FBF6C
+:104520006A017B01EE24FF248C0120E030E0C016FC
+:10453000D106E206F30610F4415051099A01281BF6
+:10454000390BC9011F910F91FF90EF90DF90CF9031
+:1045500008951F920F920FB60F9211248F939F937D
+:10456000AF93BF938091D9019091DA01A091DB01C3
+:10457000B091DC010196A11DB11D8093D9019093EA
+:10458000DA01A093DB01B093DC01BF91AF919F9161
+:104590008F910F900FBE0F901F9018950E948A1256
+:1045A000F8942FEF87EA91E6215080409040E1F7A0
+:1045B00000C0000087E090EBDC018093F90190934C
+:1045C000FA01A093FB01B093FC019CE088E10FB6D7
+:1045D000F894A895809360000FBE90936000FFCF81
+:1045E000EF92FF920F931F93CF93DF93D82FC0E0EA
+:1045F0008C2F0E945C0B00E010E0E82EF12CC7012C
+:10460000002E02C0959587950A94E2F780FD06C0BA
+:104610000F5F1F4F0630110591F709C0602F7C2FE7
+:1046200080E00E94690CD813F3CF81E004C0CF5F13
+:10463000CE30F1F680E0DF91CF911F910F91FF9086
+:10464000EF900895CF93C82F8CE20E94F022882328
+:1046500021F08C2FCF910C94F02280E0CF9108951F
+:10466000CF930E947F24811102C00E94652482EEB4
+:1046700096E00E94C807C5E6C15049F00E94300A82
+:104680008FE39CE90197F1F700C00000F5CF8BEDB7
+:1046900096E00E94C80789E20E942223811113C17B
+:1046A0008AE20E94222381110E94652485E00E94F3
+:1046B000222381110E94CE220E948A248093D70156
+:1046C00087E00E9422238823A9F18BE10E94222304
+:1046D000882351F08091D70181FB222720F991E0B6
+:1046E000922790FB81F90EC08EE00E94222388233E
+:1046F00061F08091D70182FB222720F991E0922777
+:1047000090FB82F98093D70115C080E10E9422239B
+:104710009091D701882341F093FB222720F981E073
+:10472000822780FB93F904C0892F809580FB90F944
+:104730009093D7018091D7010E948E240E949C24DF
+:104740008093EA0180EE0E942223882341F0809129
+:10475000EA01982F909590FB80F98093EA0189E314
+:104760000E942223882359F08091EA0181FB2227AD
+:1047700020F991E0922790FB81F98093EA0182EE83
+:104780000E942223882359F08091EA0182FB22278C
+:1047900020F991E0922790FB82F98093EA0186EE5E
+:1047A0000E942223882359F08091EA0183FB22276B
+:1047B00020F991E0922790FB83F98093EA0183EE40
+:1047C0000E942223882359F08091EA0184FB22274A
+:1047D00020F991E0922790FB84F98093EA0185E328
+:1047E0000E942223882359F08091EA0185FB222729
+:1047F00020F991E0922790FB85F98093EA0181E30B
+:104800000E942223882359F08091EA0186FB222707
+:1048100020F991E0922790FB86F98093EA0181E1EB
+:104820000E942223882359F08091EA0187FB2227E6
+:1048300020F991E0922790FB87F98093EA0180911B
+:10484000EA010E94A0248091EA0187FB882780F971
+:1048500080930D0187E20E942223C82F8EE10E94DF
+:1048600022238111C2608FE10E9422238111C46042
+:1048700080E20E9422238111C86081E20E942223EB
+:104880008111C06182E20E9422238111C06283E211
+:104890000E9422238111C06484E20E942223882383
+:1048A00011F0C06802C0CC2329F08C2F0E949724FD
+:1048B0006C2F03C00E949324682F70E080E090E08A
+:1048C000CF910C94241FCF9108956DEE7EEF80E080
+:1048D00090E00E94682E60E082E090E00E945A2EF4
+:1048E00060E083E090E00E945A2E60E084E090E077
+:1048F0000E945A2E60E085E090E00C945A2E80E0F1
+:1049000090E00E94542E21E08D3E9E4F09F020E061
+:10491000822F089582E090E00C944C2E682F82E064
+:1049200090E00C945A2E83E090E00C944C2E682F6B
+:1049300083E090E00C945A2E84E090E00C944C2E8E
+:10494000682F84E090E00C945A2E8091DF0180FF64
+:104950000BC06091130185E0689FB001112475952B
+:104960006795759567952BC081FF09C0609113010C
+:1049700085E0689FB00111247595679520C082FF7E
+:1049800007C06091130185E0689FB001112417C032
+:104990009091E0019923D1F060911201961788F768
+:1049A0002091130185E0289F90011124929FA0017E
+:1049B000939F500D112470E0CA010E941E2E603892
+:1049C000710540F46115710539F002C065E070E0D1
+:1049D000862F08958FE7089581E008958091DF0183
+:1049E00080FF08C06091110170E07595679575951D
+:1049F000679521C081FF06C06091110170E0759537
+:104A0000679519C082FF04C06091110170E010C069
+:104A10009091E0019923C1F0609110019617A0F7E1
+:104A200080911101899FC001112470E00E941E2E07
+:104A30006038710528F46115710521F0862F0895FD
+:104A40008FE7089581E0089561E070E0F4CF803F42
+:104A500021F40E94A524819504C0813F29F40E947D
+:104A6000A5248093E3010895823F21F40E94A524A8
+:104A7000819504C0833F29F40E94A5248093E2011C
+:104A80000895893F19F40E94EE2405C08A3F31F44D
+:104A90000E94EE2481958093E40108958B3F21F4D8
+:104AA0000E94EE24819504C08C3F29F40E94EE24DC
+:104AB0008093E5010895843F21F48091E1018160B4
+:104AC00017C0853F21F48091E101826011C0863FCB
+:104AD00021F48091E10184600BC0873F21F4809133
+:104AE000E101886005C0883F31F48091E101806177
+:104AF0008093E10108958D3F21F48091DF01816071
+:104B00000BC08E3F21F48091DF01826005C08F3F92
+:104B100029F48091DF0184608093DF010895803F54
+:104B200039F48091E30187FF6CC01092E30169C002
+:104B3000813F29F48091E3011816BCF362C0909183
+:104B4000E201823F29F497FF5CC01092E20159C054
+:104B5000833F19F41916CCF354C0893F41F4809176
+:104B6000E40118160CF04DC01092E4014AC08A3FCF
+:104B700029F48091E40187FF44C0F6CF8B3F39F4DC
+:104B80008091E50187FF3DC01092E5013AC08C3F5E
+:104B900029F48091E5011816BCF333C0843F21F459
+:104BA0008091E1018E7F17C0853F21F48091E10162
+:104BB0008D7F11C0863F21F48091E1018B7F0BC076
+:104BC000873F21F48091E101877F05C0883F31F460
+:104BD0008091E1018F7E8093E10113C08D3F21F42C
+:104BE0008091DF018E7F0BC08E3F21F48091DF0129
+:104BF0008D7F05C08F3F29F48091DF018B7F8093EB
+:104C0000DF018091E20181110EC08091E3018111E9
+:104C10000AC08091E401811106C08091E5018111F3
+:104C200002C01092E00108958091D70183FF7EC0F9
+:104C30008EE197E00E94C8078091E1011F928F9357
+:104C400089E197E09F938F930E94610887E197E045
+:104C50000E94C8078091E201282F332727FD309555
+:104C60003F938F9384E197E09F938F930E94610815
+:104C700082E197E00E94C8078091E301282F332743
+:104C800027FD30953F938F938FE097E09F938F930D
+:104C90000E9461088DE097E00E94C8078091E401BE
+:104CA000282F332727FD30953F938F938AE097E095
+:104CB0009F938F930E94610888E097E00E94C80745
+:104CC0008091E501282F332727FD30953F938F935F
+:104CD00085E097E09F938F930E94610882E097E0C0
+:104CE0000E94C8078091E0011F928F938FEF96E09A
+:104CF0009F938F930E9461088DEF96E00E94C807F2
+:104D00008091DF011F928F938AEF96E09F938F939C
+:104D10000E94610887EF96E00E94C8078DB79EB792
+:104D20004C960FB6F8949EBF0FBE8DBF81EE91E0FA
+:104D30000E94E1150E9473229093DE018093DD01B1
+:104D400008951F93CF93DF938091DD019091DE0151
+:104D50000E947F22AC019091E001992321F02091E3
+:104D6000140130E006C0209115018AE0289F9001CF
+:104D700011244217530708F486C08091E201C091C4
+:104D8000E301D091E4011091E501811107C0C11147
+:104D900076C0D11174C0111172C075C09F3F19F057
+:104DA0009F5F9093E001181624F40E94A52480933D
+:104DB000E2018091E20187FF05C00E94A524819550
+:104DC0008093E2011C1624F40E94A5248093E30141
+:104DD0008091E30187FF05C00E94A52481958093FF
+:104DE000E3016091E201662339F1C091E301CC2334
+:104DF00019F1772767FD7095872F972F0E94232D34
+:104E000023E333E343E35FE30E94872D0E94F02C0A
+:104E10006093E2016C2F772767FD7095872F972F9E
+:104E20000E94232D23E333E343E35FE30E94872DB6
+:104E30000E94F02C6093E3011D1624F40E94EE24DE
+:104E40008093E4018091E40187FF05C00E94EE2475
+:104E500081958093E401111624F40E94EE2480933E
+:104E6000E5018091E50187FF05C00E94EE24819550
+:104E70008093E501DF91CF911F910C9414269F3F01
+:104E800009F08ECF96CFDF91CF911F910895E1EE7B
+:104E9000F1E085E0DF011D928A95E9F71092E001CB
+:104EA0001092DF01089581E499E00E94C8071F92E3
+:104EB00081E08F931F9285E08F9383EF98E09F931B
+:104EC0008F930E9461080F900F900F900F900F909A
+:104ED0000F9008958330E9F128F4813061F0823039
+:104EE00009F10895853009F462C008F449C086309C
+:104EF00009F474C0089580911501262F30E0280F21
+:104F0000311D2F3F310524F4680F6093150103C054
+:104F10008FEF80931501809115011F928F938CE282
+:104F200098E072C080911401262F30E0280F311DC7
+:104F30002F3F310524F4680F6093140103C08FEFF5
+:104F400080931401809114011F928F938AE198E05D
+:104F50005BC080911301262F30E0280F311D2F3FB9
+:104F6000310524F4680F6093130103C08FEF809321
+:104F70001301809113011F928F9387E098E044C042
+:104F800080911201262F30E0280F311D2F3F31056F
+:104F900024F4680F6093120103C08FEF8093120115
+:104FA000809112011F928F9382EF97E02DC0809124
+:104FB0001101262F30E0280F311D2F3F310524F439
+:104FC000680F6093110103C08FEF809311018091EE
+:104FD00011011F928F9389ED97E016C08091100107
+:104FE000262F30E0280F311D2F3F310524F4680FA4
+:104FF0006093100103C08FEF809310018091100126
+:105000001F928F938EEB97E09F938F930E9461087E
+:105010000F900F900F900F900895833081F128F436
+:10502000813059F08230D1F00895853009F449C0BB
+:10503000B8F1863009F456C00895809115016817BB
+:1050400020F4861B8093150102C0109215018091F7
+:1050500015011F928F938FEA97E054C0809114013D
+:10506000681720F4861B8093140102C0109214016B
+:10507000809114011F928F938DE997E043C0809136
+:105080001301681720F4861B8093130102C010924D
+:105090001301809113011F928F938AE897E032C029
+:1050A00080911201681720F4861B8093120102C0C0
+:1050B00010921201809112011F928F9385E797E061
+:1050C00021C080911101681720F4861B8093110183
+:1050D00002C010921101809111011F928F938CE5F3
+:1050E00097E010C080911001681720F4861B809310
+:1050F000100102C010921001809110011F928F9335
+:1051000081E497E09F938F930E9461080F900F9026
+:105110000F900F900895CF93C82F1F928F9386E41E
+:105120009AE09F938F930E94610881E090E0A0E055
+:10513000B0E0BC01CD0104C0660F771F881F991F26
+:10514000CA95D2F70E94241F0F900F900F900F90D6
+:10515000CF910C94681BCF938D3109F465C0B0F5E5
+:105160008E3009F4CCC100F5873009F49BC1A8F456
+:10517000863009F06DC28091D701817F8E7F809348
+:10518000D7018BE49AE00E94C8078DE89EE00E9458
+:10519000C80781E08093E70180C1883009F44FC0DF
+:1051A0008B3009F47CC154C2863109F4F0C138F463
+:1051B000803109F4B8C1813109F430C249C2893162
+:1051C00009F4CEC18B3109F486C142C2853309F49A
+:1051D00037C248F4873209F433C208F433C2893243
+:1051E00009F42EC235C2833438F48A3308F02CC255
+:1051F000883309F454C12CC2833409F421C28834A1
+:1052000009F026C20E94681B8CE79EE00E94C80736
+:105210009FEF23ED80E3915020408040E1F700C0F4
+:1052200000000E94CE2239C18CE99EE00E94C8078E
+:105230000E94AA2C0E948C150E94BE0D2EC181E9ED
+:105240009EE00E94C8078CE59CE00E94C8070E946F
+:1052500093241F928F9389E59CE09F938F930E94E4
+:10526000610887E59CE00E94C8070E948A24C82F35
+:1052700084E49CE00E94C8071F92CF938FE39CE0D8
+:105280009F938F930E9461088DE39CE00E94C80762
+:1052900083E39CE00E94C8078C2F81701F928F933C
+:1052A00080E39CE09F938F930E9461088EE29CE0D4
+:1052B0000E94C80784E29CE00E94C807C1FB8827BF
+:1052C00080F91F928F9381E29CE09F938F930E94BD
+:1052D00061088FE19CE00E94C80783E19CE00E9486
+:1052E000C807C2FB882780F91F928F9380E19CE05A
+:1052F0009F938F930E9461088EE09CE00E94C807F4
+:1053000085E09CE00E94C807C3FBCC27C0F91F9230
+:10531000CF9382E09CE09F938F930E94610880E08E
+:105320009CE00E94C8070E949C24C82F8CEE9BE042
+:105330000E94C8071F92CF9387EE9BE09F938F93A5
+:105340000E94610885EE9BE00E94C8078CEC9BE000
+:105350000E94C8078C2F81701F928F9389EC9BE06D
+:105360009F938F930E9461088DB79EB780960FB66A
+:10537000F8949EBF0FBE8DBF87EC9BE00E94C807CC
+:1053800080EB9BE00E94C807C1FB882780F91F9231
+:105390008F938DEA9BE09F938F930E9461088BEA25
+:1053A0009BE00E94C80789E99BE00E94C807C2FBF6
+:1053B000882780F91F928F9386E99BE09F938F93B4
+:1053C0000E94610884E99BE00E94C80782E89BE094
+:1053D0000E94C807C3FB882780F91F928F938FE72D
+:1053E0009BE09F938F930E9461088DE79BE00E9452
+:1053F000C80783E79BE00E94C807C4FB882780F9A1
+:105400001F928F9380E79BE09F938F930E94610888
+:105410008EE69BE00E94C8078CE59BE00E94C807CF
+:10542000C5FB882780F91F928F9389E59BE09F93A6
+:105430008F930E94610887E59BE00E94C8078BE379
+:105440009BE00E94C807C6FB882780F91F928F93B4
+:1054500088E39BE09F938F930E94610886E39BE023
+:105460000E94C8078EE29BE00E94C807C7FBCC27BA
+:10547000C0F91F92CF938BE29BE09F938F930E9482
+:10548000610889E29BE00E94C8078DB79EB74C96E1
+:105490000FB6F8949EBF0FBE8DBFC1E0DEC082E79D
+:1054A0009AE05BC08091D701C82FC17080FF09C00E
+:1054B0008FE69EE00E94C8078091D701817F8E7F92
+:1054C00047C083E69EE00E94C8078091D7018160B3
+:1054D0008093D701E2CF9091D70191FBCC27C0F9FF
+:1054E00081E0C827892FC0FB81F98093D701CC23A5
+:1054F00019F086E59EE027C088E49EE02EC09091DA
+:10550000D70192FBCC27C0F981E0C827892FC0FBC7
+:1055100082F98093D701CC2319F089E39EE013C070
+:1055200089E29EE01AC09091D70193FBCC27C0F985
+:1055300081E0C827892FC0FB83F98093D701CC2352
+:1055400051F08DE19EE00E94C8078091D7018160F3
+:105550008093D70182C080E19EE00E94C8079DCF62
+:1055600081E09EE00E94C80785ED9DE00E94C8078B
+:1055700088E99DE00E94C8078BE69DE00E94C8076D
+:1055800087E29DE00E94C8078CEF9CE0E6CF8EEE9C
+:105590009CE00E94C8070E948C151F928F9384ED97
+:1055A0009CE09F938F930E94610880910C011F9251
+:1055B0008F938DEB9CE09F938F930E946108809165
+:1055C0006E011F928F938AEA9CE09F938F930E94B3
+:1055D000610880910D011F928F9387E99CE09F9352
+:1055E0008F930E9461088091D9019091DA01A09176
+:1055F000DB01B091DC01BF93AF939F938F9383E85E
+:105600009CE09F938F930E9461088DB79EB746964A
+:105610000FB6F8949EBF0FBE8DBF3FCF0E94681B90
+:10562000C0910D0181E0C827C0930D01CC2329F062
+:1056300089E79CE00E94C80710C08EE69CE08DCFF1
+:1056400080E003C08D5101C089530E948B2825CF73
+:105650008CE69CE00E94C807C0E08C2FCF91089593
+:1056600080E0089580E00895CF93C82F8091E701EE
+:10567000813081F020F0823009F44FC045C1E091C3
+:105680000E01F0910F018081813169F0823209F0C1
+:105690003DC109C0E0910E01F0910F01808181317F
+:1056A00011F0823261F48C2F0E94302B811104C0E2
+:1056B0008C2F0E94AB282FC081E090E02CC08C2F53
+:1056C0000E94322B811126C0C431E1F070F4CB303E
+:1056D00081F0C031D1F40E9453278EE39AE00E94FA
+:1056E000C80782E08093E70115C0C93259F0C8337A
+:1056F00061F48BE49AE00E94C80782E49AE00E9479
+:10570000C80708C01092E70103C18CE39AE00E9429
+:10571000C807FEC081E08170FDC0C43220F5CE31E3
+:1057200008F0C0C0CB3099F1C8F4C73009F0D2C03E
+:105730008AE08093150194E19093140193E0909393
+:1057400013018093120188E08093110188E2809315
+:10575000100182EE98E00E94C807BFC0C33149F132
+:10576000C431C1F0B7C0CB3409F4A9C028F4C932A0
+:1057700089F0C83361F0AEC0C13509F49EC0C235AE
+:1057800009F499C0CE3409F0A5C06AE09EC00E9419
+:105790005327A3C08091E601882319F01092E601F7
+:1057A0009CC08FEE98E00E94C80781E08093E701DB
+:1057B000B1C089EC98E00E94C80787EB98E00E948E
+:1057C000C807809115011F928F9384EB98E09F93F7
+:1057D0008F930E94610882EB98E00E94C80780EADC
+:1057E00098E00E94C807809114011F928F938DE961
+:1057F00098E09F938F930E9461088BE998E00E9444
+:10580000C8078CE898E00E94C807809113011F9296
+:105810008F9389E898E09F938F930E94610887E8AF
+:1058200098E00E94C80786E798E00E94C807809128
+:1058300012011F928F9383E798E09F938F930E94AA
+:10584000610881E798E00E94C8078CE598E00E9413
+:10585000C807809111011F928F9389E598E09F936B
+:105860008F930E94610887E598E00E94C80780E452
+:1058700098E00E94C807809110011F928F938DE3DA
+:1058800098E09F938F930E9461088BE398E00E94B9
+:10589000C8078DB79EB748960FB6F8949EBF0FBE47
+:1058A0008DBF1BC0CE51EC2FF0E0E15DFE4F80813B
+:1058B0008093E60112C061E003C061E006C06AE0C7
+:1058C0008091E6010E946A2708C08091E6010E944B
+:1058D0000D2803C080EE98E013C08091E601882374
+:1058E00069F01F928F938AED98E09F938F930E94A7
+:1058F00061080F900F900F900F9004C087ED98E013
+:105900000E94C80781E006C01092E70180E002C053
+:1059100080E001CFCF910895E1E8F0E080818860D8
+:1059200080838081816080838FB7F89493E0909327
+:10593000890090ED909388008FBF0895EFE6F0E026
+:105940008081826080830895EFE6F0E080818D7F22
+:1059500080830895EFE6F0E0908182E089278083DC
+:1059600008951F920F920FB60F9211242F933F9319
+:105970004F935F936F937F938F939F93AF93BF9357
+:10598000EF93FF938091E8019091E9010196909344
+:10599000E9018093E801811103C082E00E94BE0DFD
+:1059A000E091E901E695E695F0E0E455F14FE491E8
+:1059B0008091E8018E1303C080E00E94BE0DFF912C
+:1059C000EF91BF91AF919F918F917F916F915F9177
+:1059D0004F913F912F910F900FBE0F901F901895F0
+:1059E00004D06894B1118DC0089570D088F09F578D
+:1059F00090F0B92F9927B751A0F0D1F0660F771F1B
+:105A0000881F991F1AF0BA95C9F712C0B13081F0FA
+:105A100077D0B1E0089574C0672F782F8827B85FDA
+:105A200039F0B93FCCF3869577956795B395D9F75B
+:105A30003EF490958095709561957F4F8F4F9F4F65
+:105A40000895E89409C097FB3EF490958095709571
+:105A500061957F4F8F4F9F4F9923A9F0F92F96E9BA
+:105A6000BB279395F695879577956795B795F1112F
+:105A7000F8CFFAF4BB0F11F460FF1BC06F5F7F4FCC
+:105A80008F4F9F4F16C0882311F096E911C07723DE
+:105A900021F09EE8872F762F05C0662371F096E8E7
+:105AA000862F70E060E02AF09A95660F771F881FB6
+:105AB000DAF7880F9695879597F9089557FD9058CE
+:105AC000440F551F59F05F3F71F04795880F97FBC2
+:105AD000991F61F09F3F79F087950895121613067C
+:105AE0001406551FF2CF4695F1DF08C016161706AB
+:105AF0001806991FF1CF86957105610508940895E0
+:105B0000E894BB2766277727CB0197F908950BD038
+:105B100078C069D028F06ED018F0952309F05AC0EB
+:105B20005FC01124EECFCADFA0F3959FD1F3950F8C
+:105B300050E0551F629FF001729FBB27F00DB11D11
+:105B4000639FAA27F00DB11DAA1F649F6627B00DA1
+:105B5000A11D661F829F2227B00DA11D621F739F8A
+:105B6000B00DA11D621F839FA00D611D221F749F98
+:105B70003327A00D611D231F849F600D211D822FDF
+:105B8000762F6A2F11249F5750408AF0E1F0882326
+:105B90004AF0EE0FFF1FBB1F661F771F881F915033
+:105BA0005040A9F79E3F510570F014C0AACF5F3F47
+:105BB000ECF3983EDCF3869577956795B795F79566
+:105BC000E7959F5FC1F7FE2B880F911D96958795EE
+:105BD00097F9089597F99F6780E870E060E008956D
+:105BE0009FEF80EC089500240A94161617061806F5
+:105BF0000906089500240A941216130614060506D1
+:105C00000895092E0394000C11F4882352F0BB0F61
+:105C100040F4BF2B11F460FF04C06F5F7F4F8F4FC4
+:105C20009F4F0895991B79E004C0991F961708F0BB
+:105C3000961B881F7A95C9F78095089597FB072EC4
+:105C400016F4009407D077FD09D00E94382E07FC87
+:105C500005D03EF4909581959F4F0895709561957C
+:105C60007F4F0895EE0FFF1F0590F491E02D0994EA
+:105C7000AA1BBB1B51E107C0AA1FBB1FA617B70772
+:105C800010F0A61BB70B881F991F5A95A9F780958E
+:105C90009095BC01CD010895F999FECF92BD81BDCB
+:105CA000F89A992780B50895A8E1B0E042E050E065
+:105CB0000C946F2E262FF999FECF1FBA92BD81BD8D
+:105CC00020BD0FB6F894FA9AF99A0FBE019608957E
+:105CD0000E945A2E272F0C945B2EDC01CB01FC0175
+:105CE000F999FECF06C0F2BDE1BDF89A319600B435
+:0E5CF0000D9241505040B8F70895F894FFCF40
+:105CFE002002BF0DB00E8D0E590E250E0101C501ED
+:105D0E0028080A03140A3F4D3620392C06DF05A950
+:105D1E000589055005C304DC04F5040E052E0501A6
+:0A5D2E00020304050607080900003F
+:00000001FF
diff --git a/keyboard/ergodox_ez/keymaps/mpiechotka/readme.md b/keyboard/ergodox_ez/keymaps/mpiechotka/readme.md new file mode 100644 index 000000000..785400d1d --- /dev/null +++ b/keyboard/ergodox_ez/keymaps/mpiechotka/readme.md @@ -0,0 +1,6 @@ +# ErgoDox EZ mpiechotka Configuration + +Modification of ErgoDox EZ Colemak layout with additional QWERTY/software Colemak layer and change of the special keys. + + + diff --git a/keyboard/ergodox_ez/readme.md b/keyboard/ergodox_ez/readme.md index a41a29e1a..c1d0bd5dc 100644 --- a/keyboard/ergodox_ez/readme.md +++ b/keyboard/ergodox_ez/readme.md @@ -40,6 +40,6 @@ The ErgoDox EZ firmware is open-source, so it would be wonderful to have your co Let's say you want a certain key in your layout to send a colon; to figure out what keycode to use to make it do that, you're going to need `quantum/keymap_common.h`. -That file contains a big list of all of the special, fancy keys (like, being able to shend % on its own and whatnot). +That file contains a big list of all of the special, fancy keys (like, being able to send % on its own and whatnot). If you want to send a plain vanilla key, you can look up its code under `doc/keycode.txt`. That's where all the boring keys hang out. diff --git a/keyboard/planck/keymaps/brandon.c b/keyboard/planck/keymaps/brandon.c new file mode 100644 index 000000000..2b89f86db --- /dev/null +++ b/keyboard/planck/keymaps/brandon.c @@ -0,0 +1,134 @@ +// 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. + +#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] = { +[_QW] = { /* Qwerty */ +/* MIT Layout (QWERTY layer) + * + * ,-----------------------------------------------------------------------. + * | esc | q | w | e | r | t | y | u | i | o | p | bspc| + * |-----------------------------------------------------------------------| + * | tab | a | s | d | f | g | h | j | k | l | ; | ' | + * |-----------------------------------------------------------------------| + * |shift| z | x | c | v | b | n | m | , | . | / |enter| + * |-----------------------------------------------------------------------| + * | ctl | alt | win | TK |lower| spc |raise|left |down | up |right| + * `-----------------------------------------------------------------------' + */ + {KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC}, + {KC_TAB, 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, MT(MOD_LSFT, KC_ENT) }, + {KC_LCTL, KC_LALT, KC_LGUI, TG(_TK), MO(_LW), KC_SPC, KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, +[_CM] = { /* Colemak */ +/* MIT Layout (Colemak layer) + * + * ,-----------------------------------------------------------------------. + * | esc | q | w | f | p | g | j | l | u | y | ; | bspc| + * |-----------------------------------------------------------------------| + * | tab | a | r | s | t | d | h | n | e | i | o | ' | + * |-----------------------------------------------------------------------| + * |shift| z | x | c | v | b | k | m | , | . | / |enter| + * |-----------------------------------------------------------------------| + * | ctl | alt | win | TK |lower| spc |raise|left |down | up |right| + * `-----------------------------------------------------------------------' + */ + {KC_ESC, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC}, + {KC_TAB, 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, MT(MOD_LSFT, KC_ENT)}, + {KC_LCTL, KC_LALT, KC_LGUI, TG(_TK), MO(_LW), KC_SPC, KC_SPC, MO(_RS), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +}, +[_RS] = { /* RAISE */ +/* MIT Layout (RAISE layer) + * + * ,-----------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | bspc| + * |-----------------------------------------------------------------------| + * | tab | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |-----------------------------------------------------------------------| + * |shift| F7 | F8 | F9 | F10 | F11 | F12 | QW | CM | BL | RST |enter| + * |-----------------------------------------------------------------------| + * | ctl | alt | win | del |lower| spc |raise|next |vold |volu |PLAY | + * `-----------------------------------------------------------------------' + */ + + {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} +}, +[_LW] = { /* LOWER */ +/* MIT Layout (Colemak layer) + * + * ,-----------------------------------------------------------------------. + * | esc | q | w | f | p | g | j | l | u | y | ; | bspc| + * |-----------------------------------------------------------------------| + * | tab | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |-----------------------------------------------------------------------| + * |shift| F7 | F8 | F9 | F10 | F11 | F12 | QW | CM | BL | RST |enter| + * |-----------------------------------------------------------------------| + * | ctl | alt | win | TK |lower| spc |raise|next |vold |volu |PLAY | + * `-----------------------------------------------------------------------' + */ + {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} +}, +[_TK] = { /* Ten Key*/ +/* MIT Layout (Ten Key layer) + * + * ,-----------------------------------------------------------------------. + * | esc | F9 | F10 | F11 | F12 | PGUP| % | / | 7 | 8 | 9 | bspc| + * |-----------------------------------------------------------------------| + * | tab | F5 | F6 | F7 | F8 | PGDN| HOME| * | 4 | 5 | 6 | \ | + * |-----------------------------------------------------------------------| + * |shift| F1 | F2 | F3 | F4 | DEL | END | 0 | 1 | 2 | 3 |enter| + * |-----------------------------------------------------------------------| + * | ctl | alt | win | TK |lower| spc |raise|left |down | up |right| + * `-----------------------------------------------------------------------' + */ + {KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12, KC_PGUP, KC_PERC, KC_SLSH, KC_7, KC_8, KC_9, KC_BSPC}, + {KC_TRNS, KC_F5, KC_F6, KC_F7, KC_F8, KC_PGDN, KC_HOME, KC_ASTR, KC_4, KC_5, KC_6, KC_PIPE}, + {KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_DEL, KC_END, KC_0, KC_1, KC_2, KC_3, KC_TRNS}, + {KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT} +} + +}; + +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/planck/keymaps/cbbrowne/keymap.c b/keyboard/planck/keymaps/cbbrowne/keymap.c index 45a297cda..250d412ce 100644 --- a/keyboard/planck/keymaps/cbbrowne/keymap.c +++ b/keyboard/planck/keymaps/cbbrowne/keymap.c @@ -118,6 +118,9 @@ static uint16_t random_value = 157; const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) { + uint8_t clockbyte=0; + clockbyte = TCNT1 % 256; + uint8_t rval; // MACRODOWN only works in this function switch(id) { case M_LED: @@ -141,160 +144,27 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt) /* Generate, based on random number generator, a keystroke for a numeric digit chosen at random */ random_value = ((random_value + randadd) * randmul) % randmod; - if (record->event.pressed) - switch(random_value % 10) { - case 0: - register_code (KC_0); - unregister_code (KC_0); - break; - case 1: - register_code (KC_1); - unregister_code (KC_1); - break; - case 2: - register_code (KC_2); - unregister_code (KC_2); - break; - case 3: - register_code (KC_3); - unregister_code (KC_3); - break; - case 4: - register_code (KC_4); - unregister_code (KC_4); - break; - case 5: - register_code (KC_5); - unregister_code (KC_5); - break; - case 6: - register_code (KC_6); - unregister_code (KC_6); - break; - case 7: - register_code (KC_7); - unregister_code (KC_7); - break; - case 8: - register_code (KC_8); - unregister_code (KC_8); - break; - case 9: - register_code (KC_9); - unregister_code (KC_9); - break; + if (record->event.pressed) { + /* Here, we mix the LCRNG with low bits from one of the system + clocks via XOR in the theory that this may be more random + than either separately */ + rval = (random_value ^ clockbyte) % 10; + /* Note that KC_1 thru KC_0 are a contiguous range */ + register_code (KC_1 + rval); + unregister_code (KC_1 + rval); } break; case M_RANDLETTER: /* Generate, based on random number generator, a keystroke for a letter chosen at random */ + /* Here, we mix the LCRNG with low bits from one of the system + clocks via XOR in the theory that this may be more random + than either separately */ random_value = ((random_value + randadd) * randmul) % randmod; - if (record->event.pressed) - switch(random_value % 26) { - case 0: - register_code(KC_A); - unregister_code(KC_A); - break; - case 1: - register_code(KC_B); - unregister_code(KC_B); - break; - case 2: - register_code(KC_C); - unregister_code(KC_C); - break; - case 3: - register_code(KC_D); - unregister_code(KC_D); - break; - case 4: - register_code(KC_E); - unregister_code(KC_E); - break; - case 5: - register_code(KC_F); - unregister_code(KC_F); - break; - case 6: - register_code(KC_G); - unregister_code(KC_G); - break; - case 7: - register_code(KC_H); - unregister_code(KC_H); - break; - case 8: - register_code(KC_I); - unregister_code(KC_I); - break; - case 9: - register_code(KC_J); - unregister_code(KC_J); - break; - case 10: - register_code(KC_K); - unregister_code(KC_K); - break; - case 11: - register_code(KC_L); - unregister_code(KC_L); - break; - case 12: - register_code(KC_M); - unregister_code(KC_M); - break; - case 13: - register_code(KC_N); - unregister_code(KC_N); - break; - case 14: - register_code(KC_O); - unregister_code(KC_O); - break; - case 15: - register_code(KC_P); - unregister_code(KC_P); - break; - case 16: - register_code(KC_Q); - unregister_code(KC_Q); - break; - case 17: - register_code(KC_R); - unregister_code(KC_R); - break; - case 18: - register_code(KC_S); - unregister_code(KC_S); - break; - case 19: - register_code(KC_T); - unregister_code(KC_T); - break; - case 20: - register_code(KC_U); - unregister_code(KC_U); - break; - case 21: - register_code(KC_V); - unregister_code(KC_V); - break; - case 22: - register_code(KC_W); - unregister_code(KC_W); - break; - case 23: - register_code(KC_X); - unregister_code(KC_X); - break; - case 24: - register_code(KC_Y); - unregister_code(KC_Y); - break; - case 25: - register_code(KC_Z); - unregister_code(KC_Z); - break; + if (record->event.pressed) { + rval = (random_value ^ clockbyte) % 26; + register_code (KC_A + rval); + unregister_code (KC_A + rval); } break; } diff --git a/quantum/keymap_common.c b/quantum/keymap_common.c index ae109da16..7068ca4f3 100644 --- a/quantum/keymap_common.c +++ b/quantum/keymap_common.c @@ -91,6 +91,9 @@ action_t action_for_key(uint8_t layer, keypos_t key) play_notes(&goodbye, 5, false); #endif _delay_ms(250); + #ifdef ATREUS_ASTAR + *(uint16_t *)0x0800 = 0x7777; // these two are a-star-specific + #endif bootloader_jump(); return; } else if (keycode == DEBUG) { // DEBUG is 0x5001 diff --git a/quantum/keymap_extras/keymap_fr_ch.h b/quantum/keymap_extras/keymap_fr_ch.h new file mode 100644 index 000000000..d3884c19a --- /dev/null +++ b/quantum/keymap_extras/keymap_fr_ch.h @@ -0,0 +1,98 @@ +#ifndef KEYMAP_FR_CH +#define KEYMAP_FR_CH + +#include "keymap_common.h" + +// Alt gr +#define ALGR(kc) kc | 0x1400 +#define FR_CH_ALGR KC_RALT + +// normal characters +#define FR_CH_Z KC_Y +#define FR_CH_Y KC_Z + +#define FR_CH_A KC_A +#define FR_CH_B KC_B +#define FR_CH_C KC_C +#define FR_CH_D KC_D +#define FR_CH_E KC_E +#define FR_CH_F KC_F +#define FR_CH_G KC_G +#define FR_CH_H KC_H +#define FR_CH_I KC_I +#define FR_CH_J KC_J +#define FR_CH_K KC_K +#define FR_CH_L KC_L +#define FR_CH_M KC_M +#define FR_CH_N KC_N +#define FR_CH_O KC_O +#define FR_CH_P KC_P +#define FR_CH_Q KC_Q +#define FR_CH_R KC_R +#define FR_CH_S KC_S +#define FR_CH_T KC_T +#define FR_CH_U KC_U +#define FR_CH_V KC_V +#define FR_CH_W KC_W +#define FR_CH_X KC_X + +#define FR_CH_0 KC_0 +#define FR_CH_1 KC_1 +#define FR_CH_2 KC_2 +#define FR_CH_3 KC_3 +#define FR_CH_4 KC_4 +#define FR_CH_5 KC_5 +#define FR_CH_6 KC_6 +#define FR_CH_7 KC_7 +#define FR_CH_8 KC_8 +#define FR_CH_9 KC_9 + +#define FR_CH_DOT KC_DOT +#define FR_CH_COMM KC_COMM + +#define FR_CH_QUOT KC_MINS +#define FR_CH_AE KC_QUOT +#define FR_CH_UE KC_LBRC +#define FR_CH_OE KC_SCLN + +#define FR_CH_CIRC KC_EQL // accent circumflex ^ and grave ` and ~ +#define FR_CH_LESS KC_NUBS // < and > and backslash +#define FR_CH_MINS KC_SLSH // - and _ +#define FR_CH_DLR KC_BSLS // $, £ and } +#define FR_CH_PARA KC_GRV // § and ring ° +#define FR_CH_DIAE KC_RBRC // accent ¨ + +// shifted characters +#define FR_CH_RING LSFT(KC_GRV) // ° +#define FR_CH_EXLM LSFT(KC_RBRC) // ! +#define FR_CH_PLUS LSFT(KC_1) // + +#define FR_CH_DQOT LSFT(KC_2) // " +#define FR_CH_ASTR LSFT(KC_3) // * +#define FR_CH_PERC LSFT(KC_5) // % +#define FR_CH_AMPR LSFT(KC_6) // & +#define FR_CH_SLSH LSFT(KC_7) // / +#define FR_CH_LPRN LSFT(KC_8) // ( +#define FR_CH_RPRN LSFT(KC_9) // ) +#define FR_CH_EQL LSFT(KC_0) // = +#define FR_CH_QST LSFT(FR_CH_QUOT) // ? +#define FR_CH_MORE LSFT(FR_CH_LESS) // > +#define FR_CH_COLN LSFT(KC_DOT) // : +#define FR_CH_SCLN LSFT(KC_COMM) // ; +#define FR_CH_UNDS LSFT(FR_CH_MINS) // _ +#define FR_CH_CCED LSFT(KC_4) // ç +#define FR_CH_GRV LSFT(FR_CH_CIRC) // accent grave ` + +// Alt Gr-ed characters +#define FR_CH_LCBR ALGR(KC_QUOT) // { +#define FR_CH_LBRC ALGR(KC_LBRC) // [ +#define FR_CH_RBRC ALGR(KC_9) // ] +#define FR_CH_RCBR ALGR(KC_0) // } +#define FR_CH_BSLS ALGR(FR_CH_LESS) // backslash +#define FR_CH_AT ALGR(KC_2) // @ +#define FR_CH_EURO ALGR(KC_E) // € +#define FR_CH_TILD ALGR(FR_CH_CIRC) // ~ +#define FR_CH_PIPE ALGR(KC_1) // | +#define FR_CH_HASH ALGR(KC_3) // # +#define FR_CH_ACUT ALGR(FR_CH_QUOT) // accent acute ´ + +#endif diff --git a/quantum/keymap_extras/keymap_norwegian.c b/quantum/keymap_extras/keymap_norwegian.c new file mode 100644 index 000000000..018bfeae5 --- /dev/null +++ b/quantum/keymap_extras/keymap_norwegian.c @@ -0,0 +1,41 @@ +#ifndef KEYMAP_NORWEGIAN_H +#define KEYMAP_NORWEGIAN_H + +#include "keymap_nordic.h" + +// There are slight differrences in the keyboards in the nordic contries + +// Norwegian redifinitions from the nordic keyset +#undef NO_ACUT +#define NO_ACUT ALGR(NO_BSLS) // ´ +#undef NO_AE +#define NO_AE KC_QUOT // æ +#undef NO_BSLS +#define NO_BSLS KC_EQL // '\' +#undef NO_CIRC +#define NO_CIRC LSFT(C_RBRC) // ^ +#undef NO_GRV +#define NO_GRV LSFT(NO_BSLS) // +#undef NO_OSLH +#define NO_OSLH KC_SCLN // ø +#undef NO_PIPE +#define NO_PIPE KC_GRV // | + +// Additional norwegian keys not defined in the nordic keyset +#define NO_AA KC_LBRC // å +#define NO_ASTR LSFT(KC_BSLS) // * + +// Norwegian unique MAC characters +#define NO_ACUT_MAC KC_EQL // = +#define NO_APOS_MAC KC_NUBS // ' +#define NO_AT_MAC KC_BSLS // @ +#define NO_BSLS_MAC ALGR(LSFT(KC_7)) // '\' +#define NO_DLR_MAC LSFT(KC_4) // $ +#define NO_GRV_MAC ALGR(NO_BSLS) // ` +#define NO_GRTR_MAC LSFT(KC_GRV) // > +#define NO_LCBR_MAC ALGR(LSFT(KC_8)) // } +#define NO_LESS_MAC KC_GRV // > +#define NO_PIPE_MAC ALGR(KC_7) // | +#define NO_RCBR_MAC ALGR(LSFT(KC_9)) // } + +#endif diff --git a/tmk_core/doc/build.md b/tmk_core/doc/build.md index dffc699a3..2846f1d0f 100644 --- a/tmk_core/doc/build.md +++ b/tmk_core/doc/build.md @@ -6,7 +6,7 @@ Download and Install -------------------- ### 1. Install Tools -1. **Toolchain** On Windows install [MHV AVR Tools][mhv] for AVR GCC compiler and [Cygwin][cygwin](or [MinGW][mingw]) for shell terminal. On Mac you can use [CrossPack][crosspack]. On Linux you can install AVR GCC (and avr-libc) with your favorite package manager. +1. **Toolchain** On Windows install [MHV AVR Tools][mhv] for AVR GCC compiler and [Cygwin][cygwin](or [MinGW][mingw]) for shell terminal. On Mac you can use [CrossPack][crosspack]. On Linux you can install AVR GCC (and avr-libc) with your favorite package manager or run the avr_setup.sh script in the root of this repository. 2. **Programmer** On Windows install [Atmel FLIP][flip]. On Mac and Linux install [dfu-programmer][dfu-prog]. |